changeset 1141:a473d91b0856

merge
author Markus Kottlaender <markus@intevation.de>
date Mon, 12 Nov 2018 14:48:18 +0100
parents 2e06bc53b002 (current diff) 443fc80a315f (diff)
children 846e336d8ee5
files
diffstat 10 files changed, 283 insertions(+), 146 deletions(-) [+]
line wrap: on
line diff
--- a/pkg/controllers/proxy.go	Mon Nov 12 14:45:07 2018 +0100
+++ b/pkg/controllers/proxy.go	Mon Nov 12 14:48:18 2018 +0100
@@ -33,6 +33,7 @@
 	"golang.org/x/net/html/charset"
 
 	"gemma.intevation.de/gemma/pkg/config"
+	"gemma.intevation.de/gemma/pkg/middleware"
 )
 
 // proxyBlackList is a set of URLs that should not be rewritten by the proxy.
@@ -66,7 +67,8 @@
 
 		if entry, found := vars["entry"]; found {
 			if s, found = lookup(entry); !found {
-				abort("warn: cannot find entry '%s'\n", entry)
+				log.Printf("warn: cannot find eintry '%s'\n", entry)
+				panic(middleware.ErrNotFound)
 			}
 		} else {
 			expectedMAC, err := base64.URLEncoding.DecodeString(vars["hash"])
--- a/pkg/controllers/routes.go	Mon Nov 12 14:45:07 2018 +0100
+++ b/pkg/controllers/routes.go	Mon Nov 12 14:48:18 2018 +0100
@@ -92,10 +92,10 @@
 	}).Methods(http.MethodGet)
 
 	// External proxies.
-	external := &httputil.ReverseProxy{
+	external := middleware.NotFound(&httputil.ReverseProxy{
 		Director:       proxyDirector(models.ExternalServices.Find),
 		ModifyResponse: proxyModifyResponse("/api/external/"),
-	}
+	})
 
 	externalAuth := any(external)
 
@@ -110,10 +110,10 @@
 			http.MethodPut, http.MethodDelete)
 
 	// Internal proxies.
-	internal := &httputil.ReverseProxy{
+	internal := middleware.NotFound(&httputil.ReverseProxy{
 		Director:       proxyDirector(models.InternalServices.Find),
 		ModifyResponse: proxyModifyResponse("/api/internal/"),
-	}
+	})
 
 	internalAuth := any(
 		middleware.ModifyQuery(internal, middleware.InjectUser))
--- a/pkg/imports/queue.go	Mon Nov 12 14:45:07 2018 +0100
+++ b/pkg/imports/queue.go	Mon Nov 12 14:48:18 2018 +0100
@@ -22,6 +22,8 @@
 	"sync"
 	"time"
 
+	"github.com/jackc/pgx/pgtype"
+
 	"gemma.intevation.de/gemma/pkg/auth"
 	"gemma.intevation.de/gemma/pkg/config"
 )
@@ -40,7 +42,10 @@
 
 	JobKind string
 
-	JobCreator func(kind JobKind, data string) (Job, error)
+	JobCreator interface {
+		Create(kind JobKind, data string) (Job, error)
+		Depends() []string
+	}
 
 	idJob struct {
 		id   int64
@@ -52,12 +57,18 @@
 
 const pollDuration = time.Second * 10
 
-var (
-	signalChan = make(chan struct{})
+type importQueue struct {
+	signalChan chan struct{}
+	creatorsMu sync.Mutex
+	creators   map[JobKind]JobCreator
+	usedDeps   map[string]struct{}
+}
 
-	creatorsMu sync.Mutex
-	creators   = map[JobKind]JobCreator{}
-)
+var iqueue = importQueue{
+	signalChan: make(chan struct{}),
+	creators:   map[JobKind]JobCreator{},
+	usedDeps:   map[string]struct{}{},
+}
 
 const (
 	queueUser = "sys_admin"
@@ -88,7 +99,8 @@
 WHERE state = 'queued'::waterway.import_state AND enqueued IN (
   SELECT min(enqueued)
   FROM waterway.imports 
-  WHERE state = 'queued'::waterway.import_state
+  WHERE state = 'queued'::waterway.import_state AND
+  kind = ANY($1)
 )
 LIMIT 1
 `
@@ -109,23 +121,27 @@
 )
 
 func init() {
-	go importLoop()
+	go iqueue.importLoop()
+}
+
+func (q *importQueue) registerJobCreator(kind JobKind, jc JobCreator) {
+	q.creatorsMu.Lock()
+	defer q.creatorsMu.Unlock()
+	q.creators[kind] = jc
 }
 
 func RegisterJobCreator(kind JobKind, jc JobCreator) {
 	log.Printf("info: register import job creator for kind '%s'\n", kind)
-	creatorsMu.Lock()
-	defer creatorsMu.Unlock()
-	creators[kind] = jc
+	iqueue.registerJobCreator(kind, jc)
 }
 
-func jobCreator(kind JobKind) JobCreator {
-	creatorsMu.Lock()
-	defer creatorsMu.Unlock()
-	return creators[kind]
+func (q *importQueue) jobCreator(kind JobKind) JobCreator {
+	q.creatorsMu.Lock()
+	defer q.creatorsMu.Unlock()
+	return q.creators[kind]
 }
 
-func AddJob(kind JobKind, user, data string) (int64, error) {
+func (q *importQueue) addJob(kind JobKind, user, data string) (int64, error) {
 	ctx := context.Background()
 	var id int64
 	err := auth.RunAs(queueUser, ctx, func(conn *sql.Conn) error {
@@ -133,13 +149,17 @@
 	})
 	if err == nil {
 		select {
-		case signalChan <- struct{}{}:
+		case q.signalChan <- struct{}{}:
 		default:
 		}
 	}
 	return id, err
 }
 
+func AddJob(kind JobKind, user, data string) (int64, error) {
+	return iqueue.addJob(kind, user, data)
+}
+
 type logFeedback int64
 
 func (lf logFeedback) log(kind, format string, args ...interface{}) {
@@ -167,18 +187,13 @@
 }
 
 func survive(fn func() error) func() error {
-	return func() error {
-		errCh := make(chan error)
-		go func() {
-			defer func() {
-				if err := recover(); err != nil {
-					errCh <- fmt.Errorf("%v: %s",
-						err, string(debug.Stack()))
-				}
-			}()
-			errCh <- fn()
+	return func() (err error) {
+		defer func() {
+			if p := recover(); p != nil {
+				err = fmt.Errorf("%v: %s", p, string(debug.Stack()))
+			}
 		}()
-		return <-errCh
+		return fn()
 	}
 }
 
@@ -190,7 +205,31 @@
 	})
 }
 
-func fetchJob() (*idJob, error) {
+func (q *importQueue) fetchJob() (*idJob, error) {
+
+	var which []string
+
+	q.creatorsMu.Lock()
+nextCreator:
+	for kind, jc := range q.creators {
+		for _, d := range jc.Depends() {
+			if _, found := q.usedDeps[d]; found {
+				continue nextCreator
+			}
+		}
+		which = append(which, string(kind))
+	}
+	q.creatorsMu.Unlock()
+
+	if len(which) == 0 {
+		return nil, sql.ErrNoRows
+	}
+
+	var kinds pgtype.TextArray
+	if err := kinds.Set(which); err != nil {
+		return nil, err
+	}
+
 	var ji idJob
 	ctx := context.Background()
 	err := auth.RunAs(queueUser, ctx, func(conn *sql.Conn) error {
@@ -199,7 +238,7 @@
 			return err
 		}
 		defer tx.Rollback()
-		if err = tx.QueryRowContext(ctx, selectJobSQL).Scan(
+		if err = tx.QueryRowContext(ctx, selectJobSQL, &kinds).Scan(
 			&ji.id, &ji.kind, &ji.user, &ji.data); err != nil {
 			return err
 		}
@@ -249,7 +288,7 @@
 	return err
 }
 
-func importLoop() {
+func (q *importQueue) importLoop() {
 	config.WaitReady()
 	// re-enqueue the jobs that are in state running.
 	// They where in progess when the server went down.
@@ -262,58 +301,81 @@
 		var err error
 
 		for {
-			if idj, err = fetchJob(); err != nil {
+			if idj, err = q.fetchJob(); err != nil && err != sql.ErrNoRows {
 				log.Printf("db error: %v\n", err)
 			}
 			if idj != nil {
 				break
 			}
 			select {
-			case <-signalChan:
+			case <-q.signalChan:
 			case <-time.After(pollDuration):
 			}
 		}
 
 		log.Printf("starting import #%d\n", idj.id)
 
-		jc := jobCreator(idj.kind)
+		jc := q.jobCreator(idj.kind)
 		if jc == nil {
 			errorAndFail(idj.id, "no creator for kind '%s' found", idj.kind)
 			continue
 		}
 
-		job, err := jc(idj.kind, idj.data)
-		if err != nil {
-			errorAndFail(idj.id, "failed to create job for import #%d: %v",
-				idj.id, err)
-			continue
+		// Lock dependencies.
+		q.creatorsMu.Lock()
+		for _, d := range jc.Depends() {
+			q.usedDeps[d] = struct{}{}
 		}
+		q.creatorsMu.Unlock()
 
-		feedback := logFeedback(idj.id)
+		go func(jc JobCreator, idj *idJob) {
 
-		feedback.Info("import #%d started\n", idj.id)
+			// Unlock the dependencies.
+			defer func() {
+				q.creatorsMu.Lock()
+				for _, d := range jc.Depends() {
+					delete(q.usedDeps, d)
+				}
+				q.creatorsMu.Unlock()
+				select {
+				case q.signalChan <- struct{}{}:
+				default:
+				}
+			}()
 
-		errDo := survive(func() error {
-			return auth.RunAs(idj.user, context.Background(),
-				func(conn *sql.Conn) error { return job.Do(conn, feedback) })
-		})()
-		if errDo != nil {
-			feedback.Error("error do: %v\n", errDo)
-		}
-		errCleanup := survive(job.CleanUp)()
-		if errCleanup != nil {
-			feedback.Error("error cleanup: %v\n", errCleanup)
-		}
+			job, err := jc.Create(idj.kind, idj.data)
+			if err != nil {
+				errorAndFail(idj.id, "failed to create job for import #%d: %v",
+					idj.id, err)
+				return
+			}
+
+			feedback := logFeedback(idj.id)
+
+			feedback.Info("import #%d started", idj.id)
 
-		var state string
-		if errDo != nil || errCleanup != nil {
-			state = "failed"
-		} else {
-			state = "successful"
-		}
-		if err := updateState(idj.id, state); err != nil {
-			log.Printf("setting state of job %d failed: %v\n", idj.id, err)
-		}
-		log.Printf("import #%d finished: %s\n", idj.id, state)
+			errDo := survive(func() error {
+				return auth.RunAs(idj.user, context.Background(),
+					func(conn *sql.Conn) error { return job.Do(conn, feedback) })
+			})()
+			if errDo != nil {
+				feedback.Error("error do: %v", errDo)
+			}
+			errCleanup := survive(job.CleanUp)()
+			if errCleanup != nil {
+				feedback.Error("error cleanup: %v", errCleanup)
+			}
+
+			var state string
+			if errDo != nil || errCleanup != nil {
+				state = "failed"
+			} else {
+				state = "successful"
+			}
+			if err := updateState(idj.id, state); err != nil {
+				log.Printf("setting state of job %d failed: %v\n", idj.id, err)
+			}
+			log.Printf("import #%d finished: %s\n", idj.id, state)
+		}(jc, idj)
 	}
 }
--- a/pkg/imports/sr.go	Mon Nov 12 14:45:07 2018 +0100
+++ b/pkg/imports/sr.go	Mon Nov 12 14:48:18 2018 +0100
@@ -24,7 +24,6 @@
 	"errors"
 	"fmt"
 	"io"
-	"log"
 	"os"
 	"path"
 	"path/filepath"
@@ -55,16 +54,28 @@
 const wgs84 = 4326
 
 const (
-	contourStepWidth = 0.5
+	contourStepWidth = 0.1
 	contourTolerance = 0.1
 )
 
 const SRJobKind JobKind = "sr"
 
+type srJobCreator struct{}
+
+func (srJobCreator) Create(_ JobKind, data string) (Job, error) {
+	return SoundingResult(data), nil
+}
+
+func (srJobCreator) Depends() []string {
+	return []string{
+		"waterway.sounding_results",
+		"waterway.sounding_results_contour_lines",
+		"waterway.bottlenecks",
+	}
+}
+
 func init() {
-	RegisterJobCreator(SRJobKind, func(_ JobKind, data string) (Job, error) {
-		return SoundingResult(data), nil
-	})
+	RegisterJobCreator(SRJobKind, srJobCreator{})
 }
 
 const (
@@ -103,15 +114,9 @@
   END + floor((ST_X(ST_Centroid(point_cloud::geometry))+180)/6)::int + 1`
 
 	insertOctreeSQL = `
-INSERT INTO waterway.octrees (
-  sounding_result_id,
-  checksum,
-  octree_index
-) VALUES (
-  $1,
-  $2,
-  $3
-)`
+UPDATE waterway.sounding_results SET
+  octree_checksum = $2, octree_index = $3
+WHERE id = $1`
 
 	insertContourSQL = `
 INSERT INTO waterway.sounding_results_contour_lines (
@@ -125,12 +130,9 @@
   ST_Transform(
     ST_Multi(
       ST_CollectionExtract(
-        ST_Intersection(
-          ST_Transform(sr.area::geometry, $3::integer),
-          ST_SimplifyPreserveTopology(
-            ST_GeomFromWKB($4, $3::integer),
-            $5
-          )
+        ST_SimplifyPreserveTopology(
+          ST_GeomFromWKB($4, $3::integer),
+          $5
         ),
         2
       )
@@ -150,7 +152,7 @@
 	}
 	defer z.Close()
 
-	feedback.Info("Looking for 'meta.json'\n")
+	feedback.Info("Looking for 'meta.json'")
 	mf := find("meta.json", z.File)
 	if mf == nil {
 		return errors.New("Cannot find 'meta.json'")
@@ -165,7 +167,7 @@
 		return err
 	}
 
-	feedback.Info("Looking for '*.xyz'\n")
+	feedback.Info("Looking for '*.xyz'")
 	xyzf := find(".xyz", z.File)
 	if xyzf == nil {
 		return errors.New("Cannot find any *.xyz file")
@@ -207,17 +209,17 @@
 		m.EPSG,
 	).Scan(&id, &epsg)
 	xyz, polygon = nil, nil // not need from now on.
-	feedback.Info("storing points took %s\n", time.Since(start))
+	feedback.Info("storing points took %s", time.Since(start))
 	if err != nil {
 		return err
 	}
 
-	feedback.Info("Best suited UTM EPSG: %d\n", epsg)
+	feedback.Info("Best suited UTM EPSG: %d", epsg)
 
-	feedback.Info("Triangulate...\n")
+	feedback.Info("Triangulate...")
 	start = time.Now()
 	tin, err := octree.GenerateTinByID(conn, ctx, id, epsg)
-	feedback.Info("triangulation took %s\n", time.Since(start))
+	feedback.Info("triangulation took %s", time.Since(start))
 	if err != nil {
 		return err
 	}
@@ -226,24 +228,24 @@
 		return errors.New("cannot load TIN from database")
 	}
 
-	feedback.Info("Building octree...\n")
+	feedback.Info("Building octree...")
 	builder := octree.NewBuilder(tin)
 	start = time.Now()
 	builder.Build()
 	octreeIndex, err := builder.Bytes()
 	tin = nil // not needed from now on
-	feedback.Info("building octree took %s\n", time.Since(start))
+	feedback.Info("building octree took %s", time.Since(start))
 	if err != nil {
 		return err
 	}
 
-	feedback.Info("Store octree...\n")
+	feedback.Info("Store octree...")
 	start = time.Now()
 	h := sha1.New()
 	h.Write(octreeIndex)
 	checksum := hex.EncodeToString(h.Sum(nil))
 	_, err = tx.Exec(insertOctreeSQL, id, checksum, octreeIndex)
-	feedback.Info("storing octree index took %s\n", time.Since(start))
+	feedback.Info("storing octree index took %s", time.Since(start))
 	if err != nil {
 		return err
 	}
@@ -251,16 +253,18 @@
 	tree := builder.Tree()
 	builder = nil // not needed from now on
 
-	feedback.Info("Generate contour lines...\n")
+	feedback.Info("Generate contour lines...")
 	start = time.Now()
 	err = generateContours(tree, tx, id)
-	feedback.Info("generating and storing contour lines took %s\n", time.Since(start))
+	feedback.Info("generating and storing contour lines took %s", time.Since(start))
 	if err != nil {
 		return err
 	}
 
-	feedback.Info("Storing sounding result was successful.\n")
-	return tx.Commit()
+	if err = tx.Commit(); err == nil {
+		feedback.Info("Storing sounding result was successful.")
+	}
+	return err
 }
 
 func (srd *SoundingResultDate) UnmarshalJSON(data []byte) error {
@@ -345,26 +349,26 @@
 		// fmt.Sscanf(text, "%f,%f,%f") is 4 times slower.
 		idx := strings.IndexByte(text, ',')
 		if idx == -1 {
-			log.Printf("format error in line %d\n", line)
+			feedback.Warn("format error in line %d", line)
 			continue
 		}
 		var err error
 		if p.X, err = strconv.ParseFloat(text[:idx], 64); err != nil {
-			feedback.Warn("format error in line %d: %v\n", line, err)
+			feedback.Warn("format error in line %d: %v", line, err)
 			continue
 		}
 		text = text[idx+1:]
 		if idx = strings.IndexByte(text, ','); idx == -1 {
-			feedback.Warn("format error in line %d\n", line)
+			feedback.Warn("format error in line %d", line)
 			continue
 		}
 		if p.Y, err = strconv.ParseFloat(text[:idx], 64); err != nil {
-			feedback.Warn("format error in line %d: %v\n", line, err)
+			feedback.Warn("format error in line %d: %v", line, err)
 			continue
 		}
 		text = text[idx+1:]
 		if p.Z, err = strconv.ParseFloat(text, 64); err != nil {
-			feedback.Warn("format error in line %d: %v\n", line, err)
+			feedback.Warn("format error in line %d: %v", line, err)
 			continue
 		}
 		mpz = append(mpz, p)
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/pkg/middleware/notfound.go	Mon Nov 12 14:48:18 2018 +0100
@@ -0,0 +1,36 @@
+// This is Free Software under GNU Affero General Public License v >= 3.0
+// without warranty, see README.md and license for details.
+//
+// SPDX-License-Identifier: AGPL-3.0-or-later
+// License-Filename: LICENSES/AGPL-3.0.txt
+//
+// Copyright (C) 2018 by via donau
+//   – Österreichische Wasserstraßen-Gesellschaft mbH
+// Software engineering by Intevation GmbH
+//
+// Author(s):
+//  * Sascha L. Teichmann <sascha.teichmann@intevation.de>
+
+package middleware
+
+import (
+	"errors"
+	"net/http"
+)
+
+var ErrNotFound = errors.New("Not found")
+
+func NotFound(next http.Handler) http.Handler {
+	return http.HandlerFunc(func(rw http.ResponseWriter, req *http.Request) {
+		defer func() {
+			if p := recover(); p != nil {
+				if p == ErrNotFound {
+					http.NotFound(rw, req)
+				} else {
+					panic(p)
+				}
+			}
+		}()
+		next.ServeHTTP(rw, req)
+	})
+}
--- a/pkg/octree/cache.go	Mon Nov 12 14:45:07 2018 +0100
+++ b/pkg/octree/cache.go	Mon Nov 12 14:48:18 2018 +0100
@@ -45,19 +45,19 @@
 
 const (
 	fetchOctreeSQL = `
-SELECT checksum, octree_index
-FROM waterway.octrees ot
-JOIN waterway.sounding_results sr ON ot.sounding_result_id = sr.id
-WHERE sr.bottleneck_id = $1 AND sr.date_info = $2::date
+SELECT octree_checksum, octree_index
+FROM waterway.sounding_results
+WHERE bottleneck_id = $1 AND date_info = $2::date
+  AND octree_checksum IS NOT NULL AND octree_index IS NOT NULL
 `
 	checkOctreeSQL = `
 SELECT CASE
-  WHEN checksum = $3 THEN NULL
-  ELSE ot.octree_index
+  WHEN octree_checksum = $3 THEN NULL
+  ELSE octree_index
   END
-FROM waterway.octrees ot
-JOIN waterway.sounding_results sr ON ot.sounding_result_id = sr.id
-WHERE sr.bottleneck_id = $1 AND sr.date_info = $2::date
+FROM waterway.sounding_results
+WHERE bottleneck_id = $1 AND date_info = $2::date
+  AND octree_checksum IS NOT NULL AND octree_index IS NOT NULL
 `
 )
 
--- a/pkg/octree/contours.go	Mon Nov 12 14:45:07 2018 +0100
+++ b/pkg/octree/contours.go	Mon Nov 12 14:48:18 2018 +0100
@@ -21,54 +21,88 @@
 type ContourResult struct {
 	Height float64
 	Lines  MultiLineStringZ
+
+	done bool
+	mu   sync.Mutex
+	cond *sync.Cond
+}
+
+func NewContorResult(height float64) *ContourResult {
+	cr := ContourResult{Height: height}
+	cr.cond = sync.NewCond(&cr.mu)
+	return &cr
+}
+
+func (cr *ContourResult) wait() {
+	cr.cond.L.Lock()
+	for !cr.done {
+		cr.cond.Wait()
+	}
+	cr.cond.L.Unlock()
+}
+
+func (cr *ContourResult) get() float64 {
+	cr.cond.L.Lock()
+	defer cr.cond.L.Unlock()
+	return cr.Height
+}
+
+func (cr *ContourResult) set(lines MultiLineStringZ) {
+	cr.cond.L.Lock()
+	defer cr.cond.L.Unlock()
+	cr.Lines = lines
+	cr.done = true
+	cr.cond.Signal()
 }
 
 func DoContours(tree *Tree, step float64, store func(*ContourResult)) {
 
-	results := make(chan *ContourResult)
-	done := make(chan struct{})
-	jobs := make(chan float64)
+	var contours []*ContourResult
+	for h := tree.Min.Z; h <= tree.Max.Z; h += step {
+		contours = append(contours, NewContorResult(h))
+	}
 
-	go func() {
-		for {
-			select {
-			case r := <-results:
-				store(r)
-			case <-done:
-				return
-			}
-		}
-	}()
+	jobs := make(chan *ContourResult)
 
 	var wg sync.WaitGroup
 	for i, n := 0, runtime.NumCPU(); i < n; i++ {
 		wg.Add(1)
-		go processLevels(tree, jobs, results, &wg)
+		go processLevels(tree, jobs, &wg)
 	}
-	for h := tree.Min.Z; h <= tree.Max.Z; h += step {
-		jobs <- h
+
+	done := make(chan struct{})
+	go func() {
+		defer close(done)
+		for _, cr := range contours {
+			cr.wait()
+			store(cr)
+		}
+	}()
+
+	for _, cr := range contours {
+		jobs <- cr
 	}
 	close(jobs)
+
 	wg.Wait()
-	done <- struct{}{}
+	<-done
 }
 
 func processLevels(
 	tree *Tree,
-	jobs <-chan float64,
-	results chan<- *ContourResult,
+	jobs <-chan *ContourResult,
 	wg *sync.WaitGroup,
 ) {
 	defer wg.Done()
-	for h := range jobs {
+	for cr := range jobs {
 		var lines MultiLineStringZ
+		h := cr.get()
 		tree.Horizontal(h, func(t *Triangle) {
 			line := t.IntersectHorizontal(h)
 			if len(line) > 1 {
 				lines = append(lines, line)
 			}
 		})
-		lines = lines.Merge()
-		results <- &ContourResult{h, lines}
+		cr.set(lines.Merge())
 	}
 }
--- a/schema/auth.sql	Mon Nov 12 14:45:07 2018 +0100
+++ b/schema/auth.sql	Mon Nov 12 14:48:18 2018 +0100
@@ -37,7 +37,6 @@
 GRANT UPDATE ON systemconf.feature_colours TO sys_admin;
 GRANT UPDATE ON sys_admin.published_services TO sys_admin;
 GRANT INSERT, DELETE ON sys_admin.password_reset_requests TO sys_admin;
-GRANT INSERT, DELETE, UPDATE ON waterway.sounding_results_contour_lines TO sys_admin;
 
 --
 -- Privileges assigned directly to metamorph
--- a/schema/demo-data/responsibility_areas.sql	Mon Nov 12 14:45:07 2018 +0100
+++ b/schema/demo-data/responsibility_areas.sql	Mon Nov 12 14:48:18 2018 +0100
@@ -16,3 +16,6 @@
 HR	0106000020E6100000190000000103000000010000004B05000020027ACDEA8330404641CC0C384047406838FE1B668530401E79F6E8CF3F474040F9D65C7590304062115C4F6E3D4740D858681FDF933040FAB14F5B3E3C47406087D5BF6E953040FAB14F5B3E3C47407077B53A8B9630400E12E874623D474058671CA121983040EA6F7837D23D4740D8881267249A3040F6AF96BCB33D474058F8C3AE719C304082919859313D4740A0AAE86D3EA33040926CD1A9BB3C4740D830570EC6A83040521BA5B06A3B474040FBA4296EAD3040866FA4B06E394740008F7CCD8EB130408E4D9BD9FD3647409095A08C5FB6304076A4CA6FD2344740687EC2AE2DBE304012C2B7DE2633474090DB9CEF4CC13040160EC335E13047407007DAF90BC33040160EC335E1304740786FEDA7F3C430405EA92CB9B332474020DF1704C7C63040025ED7E349324740889623DBAECD304012A4E1BAC0314740E847FD1BD2CE304056870EB49431474040F9D65CF5CF3040464DDC80483147402028BD110BD13040BEEEBF98E4304740B063A18C27D23040A2D6C09865304740180DEB0AD9D330408AD7C5D2DF2F4740E07F372689D430407E03180B4D30474068C3AB6317D530404A9142E7E230474068334FD470D63040160EC335E1304740A0CCFFB8B8D93040E668257FC02F474088E8B15602DC30406A0E1D63B02E474078A924DB8EDD3040926FB224F82D47407009A8C604E03040A6674CBEE22B4740F80E81072CDF3040CA7DD1A9E129474030B34A951AE13040126976A5F127474020DCFEB8A4E330400AD056956525474018083CC363E5304046D4178BA4244740103960E53DE730403EDCA74D16244740100FB9D7D1F03040F66A16EE3020474060005DE51DF73040CA723610171C4740C0EAEA0A8DF930407EC15CCFF31A4740285C324F2D0731408E4F3F4A1A17474050370B2D4B0931406218B6C124164740F0AEC54B900A3140B2899BD9C21447403891C3AE8D0D3140A2F039ADA4134740803F4CD4E8193140C256FDA268104740401C71F6BE1D31404E3AA3B0C20F4740807983078432314092FFE457820F4740C0569A52663531400EC3FBA2EB0E474058DE459AA33F3140C27B2D39450A4740F0D0DC960A4131404667630911094740E071A4293E443140DA94852BF704474068EC07F3D9443140E20453F8AC03474090D93EC39F4631406E7AF9058A014740F0A635899E4A314016A100400401474030BD00B9CC4E314026C33373D100474018E1AD001A513140D64FD446B3FF464030799A52324F314046AFF56891FF4640F0E4D085054C314092B6F9050FFF4640906D8F7B464A3140EED7A013E8FE4640906D8F7B464A3140FE41828E08FE46408806C74B084E3140D222F80592FD4640605B1A347E4E31409E1DDBD26DFD464020AABE740C5131401A30E8F4A4FC4640008A0556BF53314092B623626BFC4640F8A03BC37F563140FE41828E08FE464040D7BF11FB573140BE5A3710D8FB4640581B267895573140A2835BCFB4FA46408054537167583140822B3E4A54FA4640E0112AB2825D31404EA61A2876FA4640705102569F6331401282CA6F46FB4640D07C4D3752663140E242B124DFFA4640E8649DEFFC673140023B4BBEC9F8464038963A265D693140E6B86A432AF94640800B3EC3576A3140124F02DD8FF94640983F84A40E6B31404ECC953CFCF94640C0E8540E3A6D31404EA61A2876FA4640F8FE570E0E833140468C77B71AFA46403801671FE78D3140CE71C13551F94640A84FE56D52973140028741E7D5F746402015B39D70A33140561741E75EF34640E0BBCC8551A5314036227A5427F2464030BE83079CA53140BAF2077A1DF14640E06C2DB2EEA63140F264F2CB35EF4640C823E03339A7314016356DE0BDED46407051836998A73140E2C9A00D12ED4640401E07F311A83140322577B736EC46409883EA0A29AA3140BEED741ABBEB464060FF1167F4AF3140EE72983C99EB4640302DA42926CF314056F377B73EE84640581B267895D6314036465F6C5AE64640B8A10D2DA3DB31401207707D4FE34640E86207F3A9DB314056D0F905C8E24640983DEEA7BBDE3140D249BE9801E34640A8B2783030E03140E60453F8ECE34640485C3BC367E13140A2154E5BEEE4464010C4D55CC9E331400A0FD6E364E54640204417FAFEE731400A0FD6E364E5464098D2C1AEB1F931400A0FD6E364E54640F8E4A1299A14324056D0F905C8E246401806A6C69017324056D0F905C8E24640C029DAF9571A324006CB99D926E346407074641FC31E32407EC178B746E44640586122DB0221324042FC361087E446406875E76D1236324042FC361087E4464000451CA1D53A32407AC5C098FFE3464050B0314FB1423240E2D5D246EFE14640E0A14E7183483240663ADB80E8E14640F037DD96EE4C32400ECF0B173CE04640D00C72F65251324006F09F13A7DF46406057FC1BBE553240260D862B41E0464058ACCD85E55932404E46B32413E14640D07EAB63FF5D32400285B95E0CE14640388D5FE541623240A216A74D21DF464000D14C37566232400A36AAEA1DDF4640687A96B5076432407E9C5695F3DE464060A6D3BFC665324082BCE557E4DE464040D210CA856732407E9C5695F3DE464078C42EB266693240A216A74D21DF4640A04D46FD446E3240BACB4F5B77E0464040654ED4287732409E3D6DE050E44640787B1904577B32401636F02E4DE5464040C051D41481324082DF63095BE4464040AC95B5BF8732407E75828E3AE54640206D6EF6CE92324002D02C3989E84640309359ABE0953240CEC3DB80D8E94640B811B19D7C9B3240CE9302DDA7ED4640F86BE233459F32402A08014028EF4640A8668207A49F3240DA2678B730EF464070D9CE2254A0324052412E39FAEF46402090089018A132401A0C1FC584F14640A08F16670CA232408E2879B72AF24640800B3EC3D7A73240B2ECF1CB2BF44640409C6CBCA1AC32407E2C973C87F44640280EA6294EB932409A1CA11300F34640001B759369C332406A117FF125F1464028784FD488C632403690A3B000F14640C0969CEF34C932404E8F9E7686F146401848763058CA3240566337106BF24640104554717BCB3240623388C896F34640985EBA740CCE32408626ABEAF1F446409804691F5BD13240E273B95EE6F3464038D092208CD23240D6C39A1BEAF3464080E4AF000ED43240929230D6EEF3464018F84A9A6BD8324076C8A113FCF44640B8761BA18DDD324032FF178B83F5464048DE3C2669E03240FE1C8AC811F646402082AD63F3E23240A291014018F74640E090DAF9BBE63240B2ED66A631F74640F005658230E83240F24166A635F54640907CD422CCE33240968EE8F435F4464010C4D55CC9E132409AD6963C89F34640C0DE2E4F75DF324006800A1797F24640606FE433B9E43240C630828E22F14640C00327156CE73240167E900217F04640F005658230E832403A28900219EF4640E0D4406056E63240EEB0E8F441EE4640C0727F071CE332409AD3A74D03EE46406850B7D7F5DA324016356DE0BDED4640085B773038DA32403EDDF2CB3FEA4640482401B9B0D932409E64337380E946407831F1A7C3D832403A4DC098F5E8464000F3638250D83240A6B2CD0C69E8464008A76D5944D932402298178B9FE74640087C7BCD2EDD3240F66D05DD36E64640D0EBA52902DF3240BE3820C51DE54640708E237871E63240663ADB80E8E14640D00DF544A2E73240EE8D4E5BF8DF4640607BE133B1E832404EFDB95E16DC46404063B8D7D5EA32407E2DE2BA70DA4640607C2CB25AEE32403EB8DE1D76D94640F88FC74BB8F23240DAC442E794D84640A867055673F632401A0D6A436ED74640805285A4EEF73240F23FC23599D54640B89EF4E180F632404AAD5F6C7ED44640706C0C2D77EF3240121653F812D1464000D3E233A9EC324086DB0DB458D04640A0EBFDB890E93240F68625FF42CF4640207E11CA81E83240AE83939FDACC4640F005658230E83240DADD7EF173CA4640304A44FD50E73240A2A899D95AC9464058F314677CE932403A733BADBBC84640C8B0EBA797EE32402632A84DD4C546401069715914F13240A637818EFBC44640D82BA8C6D0F53240B21E7D5402C54640588652711FF93240C6309002ECC5464078EBBC74B0FB3240A25F76B701C7464088B83A2629003340FE1B2362D5C74640F82205565B023340D29013EE61C84640B085B8D7A1043340266E5495A0C84640E06A5FE5F5063340E6BB751A03C84640B05AC64B8C083340B2A47B54FEC64640A8D2F97E5709334066CD26FF54C64640E883D3BF7A0A3340F6CEB75EC3C5464008E93DC30B0D3340A637818EFBC44640287AE5D05B1133400261B85E46C44640A0902915101533408E07838EFDC34640C029DAF957183340A68DABEA55C346404891FB7E331B33409A05097A7DC1464020A37930C4133340EAFD1B28EEBE4640D81BD7CE96043340D6A72126B8BF464088DCE76D76023340662F3273D4BF4640C089547113FF32400218E9F4A5BC4640A0E799EFC40033401214CB6F49BA46400863DF50230333400E0E936967B94640381C392619083340BEEF0A178EB746408052BD749409334026A10EB40DB6464010B103B954073340EE8D5CCFC1B4464068BA9852D6F932400AC614EE8DB24640409F4D371EFD3240CE7E1C288BB04640306F7493ED0033404290CD0CDDAE4640107BF87E5F053340E6DEF3CBB9AD4640B8C2D9F9730A334052425DCF50AD4640080E36890215334052425DCF50AD4640E0B1A6C68C1733406EC6E1BACCAC4640A06DC74B6C1833400AF71C2895AB4640402C917BA2183340FA81929F20AA4640C0DDE3D04B19334056D14484F1A84640105432ECEF1F33402E50939F28A64640E06891187D29334012BFC1357CA44640D032B53AF35C3340DA97828EC69F464008C4D55CC9603340AAD26A43639D464090CFE033B5653340DE9F3CAD949C464090AF271568683340225AD546009A464040BFCE85C56733402297DA80FF964640F0EEA18ED8643340260079C8F7954640302697B5036433407AE830D6AC9546400859E133E54D334066CE8D655195464098A220DBA64C334026E9BCFBA0954640A0FE3689964A33406A5C1C28BF964640B0CA69BC654933401659606CFA96464040E5499A8B4733406E7CABEAAF964640403140C3974633403201BCFB1F964640102F0256D345334012CBD1A98C954640F0024C378E443340F6A9A3B039954640F82F1504D7393340EA91A4B0BA944640D0779EEF5C343340D651862BD9944640306C9318712F33402E29DB8082954640D00959ABB02C3340167FDB8080964640480335ECDF273340B281E1BAF4984640609E43FDD4243340063B4BBE89994640B05EF244321F33400261C6D20F994640D84B2915F820334016372D392D97464058A6D3BF46243340662D9C76C194464090AEDC963E2333405689B224B1924640F07372F6B61D3340F66F9BD94992464058CEE4D05F0F33409A68973CCC92464080BAD0227C0B33409EB8D5469191464000F47630D40B334082E1F9056E90464050226BBCDD0D33409A8BF905708F464020C6DBF9671033406234E1BA898E4640282EEFA74F1233405640B95EB48D4640A818F6E14414334002F3D4461C8C4640A090291510153340D6BF939FDF8A4640884433EC0316334002622D39CC874640386B10CA21183340F28A7B5405844640A06DC74B6C18334072785595AD824640F829530EDE173340AA898D65798146405880907BA61633406A7398D9EE7F464068D16DBCCD153340A66A2D395F7E4640C0BCDF33551633403AD4FBA2117D464080E013671C1933408E1F66A6297C46403864CB85591E3340FE1B31D6DE7C4640F0947693AD2033402AE41B28F57B4640384169BCB52133400E57929F017A464090D13E60E21F33405664828E1479464028BD3889F21C3340D225F568A178464000D3AA63831A3340D66BFF3F187846405044BAD77D163340F687707DAC754640D09D190423143340623388C896744640B8772E4F111133400A5C3373ED734640F09FF044560D3340561B89C817744640006026782D0833402E0504DD1876464078C9A529B6043340EA3D1EC57C76464008129A52CEFD3240BA0C818E1C7546408007DAF98BFE3240324A99D98972464058CC4ED40C0433400615DE1DCD6E4640B0A81AA145013340EADAABEA806E46406B34DF1694F93240C8F1C7D36E6E464090AEDC96BEE332405A3C717D3B6E4640280CD85CD5DB32407A3580F12B6F4640F86A1ECC95D732404E6F2B9C287046409804691F5BD13240FEF90B179B714640C099459A8BC83240D2532A9CF574464048370B2DCBC5324006A9741AA378464038682F4FA5C732402297B024E3794640286493B533CD32407E0BAF87637B46405066D122F8CD324036DAE7F4A67C464058AA378992CD32403ABBF768187D4640707183A446CC3240224ED346B97D4640E8C41767B8CB32406EEBF568167E4640403D3DC38FCB3240466915EE767E4640403D3DC38FCB324076A4E657257F464080C260E56DCB3240461D1FC56A7F464098811C3EB0CA32408AB4559532804640684DD65CF9C932408A6E4BBEBB80464020A1E333F1C832402E2B717D15814640F8B3AC632BC732404E8532735281464038C8E19606C032406288751A91814640A024EA6D02BD324022DF7A540982464088FEFEB8F0B93240F2D2299C58834640B8E99F8C63B032406AC8AF87458A464080BDE96D1EAF3240BE81198BDA8A4640F0C56B599CAD32408ADAC2352F8B4640109A2E4FDDAB32406677D2461E8B4640182A8BDE83AA32400E85D5469F8A464000F644FDCCA93240BAE613EEDF89464028BFCE8545A93240AAD25CCF19894640C8FB96527AA83240E6D479547C884640501E07F311A632407EDBF1CB05884640D8B823DBFAA33240AE3A9AD95D884640B0CBEC0A35A23240620FBF9836894640B8566282C0A032402E07B6C13E8A4640C02A2578019F32408672852BEB8B464080794B37DE9D3240CA2BEF2E808C464030503EC3EF9B32408A461EC5CF8C4640485BF0443E9A3240FA8C3BADB48C4640280B8DDEAB9632401E53828EEE8B464078A0499AF3943240FEF8C098B18B4640E8B05B48E39232408694B85EB88B4640381D84A4C28E3240C631DB80158C464028799A52B28C32401A314F5B218C464030E06282F08832401239DF1D938B4640B0C97FD4E888324062B23E13518B4640586586A4CE883240B68705DD6F8A4640C01B47FD0C8A32406233963CE088464000D0C9E8868A3240BAAA67A613874640F80DFEB85C8432404E6BD54626874640809FC64BA47D324022BCEE2E09884640F07E403A517B3240481FFDE09088464060A12478517732408E507C547A89464068B2051FAB73324066A49BEDDF8A4640F052A629E66D3240DE0A5B32158D4640C0BC17047B693240EED8077A648E4640707206F395643240162B39AD2F8F4640A8403FC3835232404668AE87BA8F4640B8701867B44E32403E0215EE5290464000ABD122104332404E23198B4993464010E905F3E53C32400A36B85E2794464040AC5DE5993632407AB9B024AF934640B81234ECCB333240CE28F2CB70924640E00DC6E8363332404A0110B4D8904640205CFA7E073332402E50AF873B8F46402830BD7448313240AE3D89C8E38D4640D0A145FDC82C3240C6E788C8E58C4640585FC4AE55273240F270F4CB7C8C4640C04C0E65C9243240AE250B6F818C4640B8566282C021324016EDE8F4868C46402014681FC71C3240AEA90EB4E08C4640A0C718A11D1732407EDA98D9D28D4640E06A5FE5F5083240E24F0C1759924640B8597BCDE204324032E742E720934640E8408007E40032408E0646841D93464090AF5FE50DFD3140DE2F7D546892464058600F2D7FED31408274299CC78B4640A0C7507143E93140BEA7949F608A4640C8A88A4111E73140822A0140F489464048EC97520EE031405ACDFCA278894640E0CE3D267DD83140CA7F9F765A88464070DFC8E8F2D53140C67AB85E3F884640809FFE1BCAD03140B2127B54FB8846404896AAC628CC31407EE4F6687D8A4640802F23DBCABD31402A9AD7E30E914640603911CAE9B63140FE3FEC9175934640E04DBF114BAF3140D64FE2BAFC94464020F250D4CCA63140FAC932732A954640006CE23345A13140267BBDFB23944640B810661FD39731409E1DD0A996904640680ABB748892314012F00140698F4640F870917BBA8F3140824F2362478F464078F239891E8A3140F28A6DE07B8F4640B8372CB2427D3140929389C8E18E4640B0CF18045B7B3140B213C6D2A48E4640687EC2AEAD7C31400ED0727D788F4640E0246382087F31408A6B40E72292464068E58ADEEB783140FE36E7F4FD904640C00AA429DA75314032DC99D9CC90464020F4E6D09F723140BA3AB6C13091464090D906F3797431408A6DE457FF91464070513A2645753140FA69AF87B4924640184F83A4FA743140B67EF2CB6E934640406403567F7331409AD6963C4994464040F708907C7131408272A113BE944640988435895270314042D722623D94464000D3E233A96F31405A5FEF2E72934640A85068BC216F3140AE84DE1D04934640B83300B99C66314012F0D7E30C924640C0E6BE11E7613140E275872BDF914640680C51715B5E31406AC9D0A992924640E865B09D005C31404E23198B4993464070022BB2965331409E8AA0133D95464030BD00B9CC4E31409A29EE91F095464068EC07F3D9443140A68B15EE42984640E0E0FC1BEE3F3140BE50E7F47694464000B21667D83E3140AA1AFDA2E393464060F45FE5A5323140EAFFCD0C94934640E8912578E52F3140AE84DE1D0493464018E323A6E71F3140266E3CAFA3954640680B06F33119314036D99C76BD96464068C50990440E3140EEFA2C39A899464050370B2D4B0931406E0FCD0C809D4640A8089E8CBB073140AAF641E70C9D4640C8B8B33AAF0331406661AF87219C4640408A469A1F023140FA6727FFAA9B46408804314F35033140C258939FBB9C4640A845EE0A7903314006F0C96F839D4640303E5071130331400AC6067A449E4640408A469A1F0231408EBE89C8409F4640182AC3AEA9FF304056CFAE879E9D4640B8FE77CDF6FC30403E49862B469E464090A19D8CD7F93040D69926FFA29F4640C89270F60EF630404AD1289C1EA0464060005DE51DF73040F21B077A429F4640C8BEAD00CEF730401ECBED915F9E46401004075683F23040EE69A1132B9E4640B8CD820708F130409E406A43E09E4640C00959AB30F130400AF9CE0CFB9F4640100FB9D7D1F03040FA8C4921FEA04640801FCB85C1EE3040860F1351AFA346407044F2A7A3EC304072A7D5466BA44640F087FFB8A0E53040E2BE727D52A2464048D1C54BDCE430409A5C87C8BBA14640006CE233C5E23040DE6B1B28ABA04640504D951819E0304096D82C399C9F4640B85DA7C608DE304062622462279F464078F51A049BDC3040E688919FB99D464050C79F8C17DA3040A6D6B2241C9D464060AB82073CD73040C6782262AC9C464040461804ABD430408A210A17C69B464030D18D7B36D33040763716EE3E9A4640201A62E565D330409621347322994640A012C44B00D33040AEABA4B03398464018BD00B9CCCF3040EE9AA94D32974640C0C18E7B4AC930409EDDF768E4964640D081FC7E479630405A5F0B17459C464080A5F8E1688730404EFF5DCF729C4640E82318045F7B3040063B4BBE89994640B8818CDEFB723040B2A46DE0F4924640E02912CA7D6F3040623DE6570191464068C7D75CBD6C304082E39D764A904640500D9CEF04663040EE6ADE1D8B8F464010F10556A3633040662EF568F48E46402089F2A7BB613040B67DA74DC58D464018C0E133C96130406EC6E1BA0C8D4640F0F657AB5062304056D2B95E378C464018C0E133C9613040FA5DBBFBB68A4640408C1467986030407E2E4921AD894640B8C9560E625B3040D652C33539864640106C14BA94583040009125B08F82464080B38BDE33573040D22F4584C280464040F9D65CF55030407638616C2880464080E95E4883473040E26B1B28EB804640A0CA31ECBF3D3040AE3D973C6D824640A0E67DCD8636304062E8F8050784464078E013671C1F30400ED1A1134F8C4640501396B5A31A304092B904DD678E4640F0D014673015304036E3FA0568934640F0FB06F3451130402E07A84DB595464080A64360120E30401E9DC6D29496464090DCE76D76083040561A5A3201974640D8B023783D0630401A3141E7979746406838FE1B66063040966D2A9C2E98464068EC07F359073040F24037101F9946402867E4D07B073040763716EE3E9A4640D8C52A153C053040C6E8EF2E629B4640A89F3F602A02304032006309ED9B4640700C2CCEB8FE2F404A25D9E3F89B4640308D0272F9F22F401EE6BF98919B46408023623BF9C12F403E40818ECE9B4640405A48534CA62F40EE6AD0A9019B464040CFCB42EA9A2F40C21C2F0A26994640A09D0BACAE952F405AAA8C654B98464060C9E189DC8F2F40BECB5DCF80954640C060639E628F2F4046D3DA8084944640C0C8764C4A912F40DE2503DDEA8C4640A051AE56118F2F405E42872BED8A4640A073D43E0E832F40A219963C678546408069060FD8822F4072547EF103834640409CE0ECED882F40D2C3E9F4217F4640E0B1D9B2F8862F40FE1B31D6DE7C46401033A27F457A2F40526626FFF0784640605DF705DD772F402A8ECCBB9B774640806DC26732762F40B641ED91AF764640D0E40372F1772F40E2E52A9C787346401017EC26FB7E2F404E2343E7E5704640C0249FE22E872F4096D9939F986E4640F076C7A1FF8B2F401215087A296C4640708C397C90892F40426D4F5BE6694640608946199F802F4012520DB42869464060FFE34F17762F408EBEA5B093684640F0B85F3BA16E2F40D62EEC91CF6646406040C1CA436F2F40EE4615EEAA6446404078FBD4FA742F403E1B51F871624640006AF837E4812F400AC8AAEAA05E464080D119BDBF842F40224ED346F95D4640E0C8EF60D0902F40626353F87D5C4640209EFDD4BA942F402610838E505B46405005A64510982F40EEFCD0A9045A464090C52531829C2F407A02AAEA2B59464080F794D105A42F40AE63F66860594640A0B79BA8F1A82F405640ABEAAA594640105C653B19B22F40B25D0A17CB594640C030FA9A7DB62F401279C5D20E5A4640D00021F74CBA2F4046B2F2CBE05A464060635B640DBD2F40BEC1D5E3F95B46401029B490A6C02F40CEBC88C8C65C4640006B43B60DC72F403AFC1A28B45C4640F0C2BDCA8BCA2F40BEC1D5E3F95B4640F02AD17873CC2F4066308B65C75A4640C0A772AFD3CD2F404224640973594640001FB4B992CF2F40620E828E56584640005DB92D7DD32F401A57BCFB9D57464080AF5A01D4D72F404AB8087AD2574640B0931DBD0FDC2F40EA92198B4058464020E637A5ECDF2F40C62F299C2F58464010ABAC7F6DE52F40E61D8F02CC5646407066BE674AE92F405A83C6D29B534640A025E1EC1DF02F408AB5929FD25146407072A97F4DF52F401680347333514640501D30A5B4FB2F40320215EED2504640F8C84CD4180430404A6466A68150464058E720DB3E073040DA4CF3CBF64F464070541BA1410930405E38299CC24E464010CCD5BF860A3040A68DC7D2284D4640E0BEE5D0730B304042FD818E704B4640E8024C370E0B30400E63A213524B464040DC6E59F00830408604862BEE4A464060DF9018CD07304096B8B95E3E494640C0DDDA5C91033040AAAEAF874C4746401025DC968E013040BA9FBE983F454640286A8D7BD2063040CA77C96F39434640787038261D0C3040AA1D087AFC4246406005D45C6D153040760888C877444640F0D15FE5D91A3040DE325ECF2444464010F36382D01D3040C69D4484BF424640709CAD00821F30409AD688C87F404640700C5171DB20304036779102FE3D46404049F97E2727304036B76943B0374640D0B33CC3DF283040D6755DCF423546406836304FED283040AEAA59324A33464010C9BC7464273040DA72448460324640F01FEC0A392530401E7A4821DE3146408876A28C872330402AC052F854314640B0FBC5AE65233040D20CD54655304640B0AFCF85592430403226EC91BC304640B8CBEC0A3527304012AAF768B230464038963A26DD2B3040A2A9E457443046403812DB962E3130402A9CA5B0072F4640B0741504EF3330402601A0130D2E46404805CD0FA53430404E8DB330DE2C4640E0765371B3343040CA516A43C62C464078B8025603343040EE69939FA12A46400887EC0A1D33304002F6A74D8F294640A060884185303040BACE3E4A7D274640406B489AC72F3040A63925FF17264640A89F0790043030407E551D2826244640F08995B5733230403EDFA4B025204640B81AC4AE3D3730404A1A30D6A41A464070E58ADE6B3B3040E6AF65A672184640C82857AB884630400EA23D4A24144640303F9BEF3C4A3040A639178BCE1146407801E033ED4F304052D8A5B0CC0C4640709A1704AF533040F28D6A438B0A464010A622DB9A583040921DB4C1C3084640488339267D5B3040C6EA852BF5074640F065B09D005E3040DE6E0A177107464050C8EA0AC1603040C212A5B057074640D0FF32EC6B673040E68CF56885074640F0649DEFFC693040020FD6E32407464070BF479A4B6D3040424AD1A92F05464018321BA1756E3040522038104D034640E0E202B98C703040864EBCFBCA014640E0DFB19DC47B30409E1E371053004640386E2915448030404AAD7B5411FF4540387A26153C8430405A61AF8761FD454060EBC2BE068730405EBB35CFE2FB4540205006F3498E30406A5C1C28FFF7454040476382D49A304072BD0D3456F3454070B2FF1B2AA330400ECD440428EF4540A8FD5BABB8AD3040F243188B9BEB454078DB641FA7AF3040C606B8DEBEE94540B019793094B03040C212A5B097E74540D8C2499ABFB2304006CFE1BADFE44540081894186DB63040E2D34304C1E245401059E133E5D23040BA9FCC0C89DA4540685A156760FB3040D2EBFA057BCB4540F8978FDECF073140124F099734C64540282494D0F30F31401E5E40378DC3454000319852A6153140D60597BCB1C1454098CE95B58B2431406E37EC91A2BE4540A844A38C4F3D31409EF3136E3CBD454060A8A18C3F453140760F0C974ABB454088B985A452493140328F5FECFBB7454080675DE58144314036B777B739AD45407836A0EF384A31402A50A8CDD6A6454000469FEF245431406659F56853A1454090161FA1915E31401EC48C65C49D454030CCDE33C1633140225245848E9C4540B0F72915746631403A4C6E60A79B454078EC7793256831405EAA8C654B9A454070D44E374A6A314072E830D6AC974540F0A94ED4406D3140368EEA1136954540107F5C482B713140628723E282934540A0FB530D6F73314092FBABA1F6924540A89BDB965E963140EABB751A838A4540A8ACFC3218993140E2F742DD548945408064449ADFA03140FAAA0A17F6854540105A6482B4A83140EAB9DF1D307F4540701B5E48BBA8314072E51E452F7F4540A0DC570EC2A83140EAD2E357297F454068524DD4C8A831407A7566A6277F4540100E6E59A8A93140DAC0FA059C7B45400893B13A6FA2314056D6F3CBA679454060DA6107A694314030B6D03596784540007D0EB280943140985ECF359E784540B0766307B68C3140F035248B477A4540D0636207D688314028D5CE35AE794540007D0EB20084314068557BE0BC7A4540206A0DB2A07F31400017268B6F7C4540007D0EB2007D3140E019CF35C67D4540007D0EB280793140C02CD03526804540805DB75C8B78314060BF248BB78145402096BA5CAB7A3140985ECF35DE824540007D0EB28080314060BF248BF78345406070B85CEB7C314088F7CE357A84454040570CB2C0783140C02CD035E6834540501910B210743140F880CF35EA824540007D0EB2006F314088F7CE353A82454090F30DB2D070314008E8CF358E82454090F30DB2D075314060BF248BF783454090F30DB25073314068557BE0FC83454090F30DB2D0703140D0B2CE35228445402096BA5CAB6E3140D0B2CE35A284454090896407166D314050A3CF35B6854540007D0EB2006F314040D2258B978645406070B85C6B6D3140D893D035CA87454090896407166D314040D2258B57884540501910B29067314040D2258B97864540B0E00CB2F05E314040877AE074894540F0506107F6503140D893D0354A904540206A0DB2202C3140E019CF3546974540D063620756233140C02CD035E6994540501910B2101F314088F7CE35BA9A45402096BA5C2B1D3140D893D0354A9B454090896407961B314088F7CE35FA9C45402096BA5CAB193140D048258BA79D45409089640716173140680AD0351A9E4540007D0EB280143140E019CF35469E454090F30DB2D012314030B6D035969E4540501910B21011314040D2258B579F45406070B85C6B0E3140B0107BE0E4A04540B0E00CB2F00D31400017268B6FA1454090896407160D3140680AD0351AA345402096BA5CAB0C314030B6D03596A34540805DB75C8B0B31401804258BCFA345404083B95C4B083140B0107BE024A44540B076630736073140D0B2CE3562A445409089640716EF3040403CCF35D2AF4540B0E00CB2F0E73040403CCF3592B1454090F30DB250E53040B0C5CF3582B24540F050610776E33040680AD0355AB34540B0E00CB270E1304050A3CF35F6B34540206A0DB2A0C03040204FD035B2B54540206A0DB2A0B13040680AD0351AB84540B076630736A0304088F7CE357AB945406070B85CEB883040D0B2CE35A2BF4540501910B29088304050A3CF35F6BF4540D06362075688304008E8CF358EC0454070060FB2B0873040A87A248B1FC1454090F30DB250863040D0B2CE3562C1454040570CB2C08430407871D0353EC14540B0E00CB270823040C02CD035A6C04540206A0DB220813040B0C5CF3582C04540B0E00CB270773040D0B2CE3562C14540B076630736643040D0B2CE3562C14540B076630736643040B0C5CF3542C2454090F30DB250693040F035248B47C245402096BA5C2B6F3040F8CB7AE0CCC24540B0766307B674304040877AE0B4C3454070060FB230793040D0B2CE35E2C44540B0E00CB2F0743040A87A248BDFC54540501910B2106F3040985ECF355EC64540B076630736563040F8CB7AE08CC6454070060FB23053304050A3CF3536C645406070B85C6B4E304088427AE01CC54540206A0DB2A04C3040D0B2CE35E2C44540F0506107F647304088427AE09CC44540D0636207563D3040C02CD03566C34540206A0DB2201E3040D0B2CE3522C34540206A0DB2201E3040B0C5CF3542C24540908964079626304040877AE074C14540B0766307362A3040E019CF3586C04540206A0DB2202C304028D5CE35AEBE4540E08F0FB2601C304028D5CE35AEBE4540F0506107F61C3040F8CB7AE04CBD4540B076630736193040204FD03572BD4540B0E00CB2F010304028D5CE35AEBE4540206A0DB2200A3040403CCF35D2BE454040570CB240073040680AD0355ABF45409089640796033040B0C5CF3582C04540007D0EB200023040B0C5CF3582C04540007D0EB200023040D0B2CE35A2BF4540C0E070B9D6FD2F4028D5CE356EC0454060EDC60E6CF22F40C02CD03566C04540C01F1F64C1EE2F40D0B2CE3562C14540402C75B956EE2F40F880CF352AC14540E00C1E6461EE2F40D893D035CAC04540C01F1F64C1ED2F40888D258B7FC0454040D41A6441EB2F40B0C5CF3582C045402013C90E2CEC2F4018B979E0ECC1454060C11964E1EE2F40F880CF352AC2454060C11964E1F22F40B0107BE024C2454020E71B64A1F72F40204FD035B2C24540402C75B956F92F407871D0357EC34540E0A1C20EECF72F40680AD0351AC44540E0A1C20EECF62F40E019CF35C6C4454080AE186481F92F40888D258BBFC54540A032206421F12F40403CCF3592C54540A032206421EE2F40985ECF355EC5454040D41A6441EB2F40D0B2CE35E2C44540800673B996E92F40D0B2CE3522C6454060EDC60E6CE52F40D0FD79E0C4C64540C01F1F64C1D92F40888D258B7FC7454040D41A6441E22F4028D5CE35AEC7454060EDC60E6CE32F40D893D0358AC84540E0A1C20EECDE2F4030B6D03556C9454000FA1C6401D62F40607479E054C9454000FA1C6401D62F40A87A248B1FCA4540E00C1E6461D82F40D0B2CE3562CA4540E0A1C20EECDA2F40D893D035CACA454040D41A6441DD2F40607479E014CB4540A032206421D82F40E019CF35C6CB454000FA1C6401D62F40204FD035F2CB4540C01F1F64C1D92F407871D035BECC454000FA1C6401D62F40985ECF359ECD4540C01F1F64C1D92F40403CCF3592CE454080AE186481D62F4088F7CE357AD04540E0A1C20EECDB2F4028D5CE352ED14540C01F1F64C1EE2F40985ECF351ED14540C01F1F64C1EE2F40403CCF3512D24540C01F1F64C1D72F4050A3CF35F6D2454040D41A6441CF2F40204FD035F2D24540E00C1E6461D52F40F880CF35AAD3454060EDC60E6CDA2F4030B6D03596D3454020E71B64A1DE2F4028D5CE352ED3454080AE186481E22F40204FD035F2D24540E0A1C20EECE72F401804258B4FD34540A032206421E72F40C02CD03526D4454020E71B64A1E22F40F035248B07D5454040D41A6441DD2F401804258B8FD54540402C75B956E42F4008E8CF350ED6454020E71B64A1E72F40B0C5CF3502D7454020E71B64A1E62F40D0B2CE3522D84540C01F1F64C1E02F40B0107BE024D94540A032206421E12F4068557BE0BCD64540C01F1F64C1DC2F4040D2258B97D6454040D41A6441D02F40B0C5CF3582D845402013C90E2CC92F40F880CF35AAD9454020E71B64A1C52F40B0107BE0A4D94540E0A1C20EECC02F401804258BCFD94540C0E070B9D6BD2F40B0C5CF3502DA454020E71B64A1BA2F40B0107BE0A4DA4540800673B996B32F40F880CF35AADC4540A032206421B02F4028D5CE356EDD4540E00C1E64619B2F40D893D0358ADF4540800673B996952F40403CCF3592E04540C01F1F64C18A2F40E019CF3546E1454020E71B64A1692F4060BF248BB7E1454020E71B64A1622F40C02CD03526E3454040D41A64415D2F40D893D0350AE64540A032206421512F40F8CB7AE00CE7454000BB6EB916442F4068557BE0BCE74540A0322064213C2F40F880CF35AAE9454060EDC60E6C4B2F4028D5CE356EE8454080AE186481532F401804258B0FE84540800673B9965B2F40F880CF35EAE74540800673B9965B2F40985ECF35DEE84540800673B996582F40985ECF351EE9454080AE186481562F4030B6D03516E94540E00C1E6461552F4040877AE0F4E8454060C11964E1542F40985ECF35DEE8454000BB6EB916472F40E019CF3506EB4540E0A1C20EEC252F40D0FD79E004EE454000FA1C6401182F40306B258B33F04540A032206421172F4030B6D03556F04540C01F1F64C10C2F40B0C5CF3542F3454040D41A6441062F40985ECF359EF44540C0E070B9D6FE2E400017268B2FF5454000FA1C6401F72E40B0107BE064F5454080AE186481F22E40C02CD035A6F5454020E71B64A1EE2E4088F7CE35FAF5454000FA1C6401E92E40D893D035CAF6454040D41A6441E62E40680AD0359AF745402013C90E2CE42E407871D0357EF8454020E71B64A1E02E4008E8CF358EF9454020E71B64A1C42E40F880CF35AAFF4540402C75B956B72E40D893D0354A03464060C11964E1AD2E40D893D0350A054640800673B996A32E40D893D035CA054640A0322064218E2E40D893D0358A0A464080AE1864818E2E4040877AE0F40A464060EDC60E6C772E4088F7CE357A0F4640A0C7C40EAC712E40607479E01410464000FA1C64016D2E40E019CF35C6104640E0A1C20EEC6A2E400017268BAF114640E0A1C20EEC6C2E4088F7CE35FA124640C0E070B9D6642E40F035248B0714464000FA1C64014A2E40D0FD79E004194640A032206421522E40D893D0354A1B4640E0A1C20EEC4D2E40985ECF351E1E4640402C75B956432E4040D2258B9720464080AE186481382E4030B6D035D6214640800673B9963E2E4018B979E02C23464000FA1C6401482E40D048258B27244640A0C7C40EAC502E40D0B2CE35E223464080AE186481542E400017268B6F21464060EDC60E6C5A2E407871D035FE1F4640402C75B956652E400017268BEF204640E00C1E64616A2E40F880CF35EA224640E0A1C20EEC5E2E40F035248B87244640C0E070B9D6622E4060BF248BB724464060EDC60E6C632E40204FD035F224464020E71B64A1632E4060BF248BF7244640E0A1C20EEC652E40F035248B87244640C01F1F64C1692E40F035248B8724464000FA1C6401672E40607479E01426464060EDC60E6C652E4088427AE09C264640C01F1F64C17E2E40607479E09423464060EDC60E6C892E40607479E014214640A0322064218F2E4088F7CE353A2046402013C90E2C972E4030B6D0351620464040D41A6441902E40F035248B87244640C01F1F64C1942E40D893D035CA24464000FA1C6401972E40C02CD0352625464080AE186481982E40D0B2CE35A225464000FA1C64019B2E40D893D0354A264640A032206421942E4028D5CE35AE26464060EDC60E6C8E2E40D048258BA7274640A0C7C40EAC892E40D0FD79E004294640C01F1F64C1852E40403CCF35922A464020E71B64A18F2E4018B979E0EC29464000FA1C64019E2E4030B6D0359627464080AE186481AC2E4088427AE09C2646402013C90E2CD12E40680AD035DA224640402C75B956D92E40F8CB7AE04C224640C0E070B9D6012F4028D5CE352E214640E0A1C20EEC0C2F40985ECF355E214640A0C7C40EAC0E2F40D893D035CA224640800673B996072F40C02CD035A623464000FA1C6401E62E40F035248B8724464060EDC60E6CE32E4018B979E0EC24464000FA1C6401D42E40D0FD79E08428464060C11964E1CF2E40D893D0350A294640A0C7C40EAC9D2E4088427AE05C2D464060EDC60E6C962E40204FD035B22E4640E00C1E64614F2E4068557BE0BC3B4640402C75B956372E40E019CF35C641464000FA1C6401292E40985ECF359E44464020E71B64A11A2E40403CCF35D245464080AE186481182E40204FD03572464640C0E070B9D6072E4040D2258BD7484640C01F1F64C1032E4018B979E0EC484640A0C7C40EAC002E40F8CB7AE00C4A464080AE186481CD2D4040D2258B5758464080AE186481C42D40A87A248B9F5C4640402C75B956CA2D4088F7CE353A5E4640A0C7C40EACC92D40A87A248B1F604640E00C1E6461C62D40680AD0355A62464080AE186481C42D4050A3CF35F664464040D41A6441C32D40D893D0350A6C464080AE186481C42D40D0FD79E0446E464080AE186481CF2D40680AD0355A76464060EDC60E6CD42D401804258B4F78464060C11964E1D72D4088F7CE35BA7A4640A032206421D42D40A87A248B9F7D464080AE186481B62D40D893D035CA89464020E71B64A1B42D4068557BE0FC8B4640E00C1E6461AF2D40B0C5CF35828D464020E71B64A1A72D4030B6D035968E46402013C90E2C882D40607479E094914640C0E070B9D6502D40F880CF352A99464020E71B64A1362D40F035248B479F464080AE1864812F2D4088F7CE35FA9F4640E0A1C20EEC262D40403CCF3592A14640A032206421232D40403CCF3552A3464000BB6EB9162A2D40E019CF3586A4464040D41A6441242D4030B6D03596A54640800673B996112D40E019CF3506A84640C01F1F64C11A2D40680AD0351AA64640E00C1E64611C2D40A87A248BDFA54640800673B9961A2D40A87A248BDFA446402013C90E2C162D40607479E054A44640E0A1C20EEC102D4030B6D03556A4464080AE1864810C2D4050A3CF35F6A44640E00C1E6461052D40985ECF355EA6464000FA1C6401CE2C4040D2258B57AB46402013C90E2CBA2C4088427AE01CAC464000BB6EB916B12C40B0C5CF3502AD4640C0E070B9D6A82C401804258B4FAD464080AE1864819F2C40F035248B07AC464060C11964E1942C40E019CF3506A9464040D41A64418B2C40D0B2CE3522A54640402C75B956842C4068557BE0BCA04640C0E070B9D67E2C40985ECF35DE9746402013C90E2C782C40C8777BE0C8934640C0E070B9D6772C4040D2258B9793464000BB6EB916772C40985ECF351E934640A0322064216B2C4018B979E02C904640C0E070B9D65B2C4060BF248B3791464000FA1C6401642C400017268B6F8F464060C11964E1622C40D0FD79E0848D4640E00C1E64615C2C4040877AE0B48B46402013C90E2C542C4088F7CE353A8A464000FA1C6401512C4028D5CE352E8B464000FA1C64014F2C40680AD0351A8A464060C11964E14E2C4050A3CF353689464000FA1C6401512C401804258BCF86464000FA1C64014F2C40D893D0350A87464080AE1864814B2C40607479E054874640A0C7C40EAC492C40680AD0359A874640A0C7C40EAC492C401804258BCF86464020E71B64A1512C40F880CF352A85464000BB6EB916552C4018B979E06C824640C0E070B9D6532C4040877AE0747F464080AE1864814D2C40985ECF351E7D464020E71B64A1472C40607479E0547C464080AE186481432C4018B979E06C7C4640800673B9963F2C40680AD035DA7C464000FA1C64013A2C40985ECF351E7D464060C11964E1332C4040877AE0B47C4640E0A1C20EEC2D2C4050A3CF35B67B46402013C90E2C292C40F035248B877A4640C01F1F64C1262C40D893D0358A79464040D41A6441232C40D893D0358A794640A0C7C40EAC242C40D893D0350A7C4640C01F1F64C1282C4018B979E02C7D4640E0A1C20EEC2A2C40B0C5CF35427E4640C01F1F64C1262C40985ECF359E804640E0A1C20EEC1B2C4088427AE05C824640E00C1E64611A2C40607479E0548346402013C90E2C1B2C407871D0353E844640800673B9961A2C40985ECF35DE84464020E71B64A1142C4068557BE0FC844640800673B996162C4088F7CE357A83464060EDC60E6C142C4040877AE034814640A0C7C40EAC162C4028D5CE352E80464000FA1C64011C2C4008E8CF358E7F4640C0E070B9D6202C4040877AE0747F464020E71B64A1242C40C02CD035267F4640C01F1F64C1262C40F880CF35EA7D46402013C90E2C212C40204FD035F27C464000FA1C64011A2C4028D5CE356E7A4640C01F1F64C1162C40F035248BC779464020E71B64A1142C40F880CF356A7A4640C01F1F64C1112C40F880CF356A7A4640C0E070B9D6132C40E019CF3586794640800673B996142C4040877AE07478464000FA1C6401142C40E019CF3546774640C01F1F64C1112C4008E8CF350E76464020E71B64A10D2C40F035248B4776464080AE1864810B2C4040877AE034764640800673B9960B2C4030B6D035D675464040D41A64410E2C4018B979E02C75464040D41A64410E2C4008E8CF354E74464020E71B64A10B2C40B0C5CF354274464000FA1C64010B2C40B0107BE024744640A0322064210B2C40680AD035DA73464080AE1864810A2C4040D2258B5773464060EDC60E6C052C40A87A248BDF73464000BB6EB916FA2B40F8CB7AE04C73464000FA1C6401F22B4040D2258B57734640A032206421F62B40B0C5CF35C2724640C01F1F64C1F82B400017268B2F72464060EDC60E6CFC2B4008E8CF35CE704640E0A1C20EECF82B4008E8CF35CE704640E0A1C20EECF82B40B0C5CF350270464060EDC60E6CFC2B40B0C5CF350270464060EDC60E6CFC2B4008E8CF350E6F4640C01F1F64C1F82B4088427AE09C6E464060EDC60E6CF62B4008E8CF350E6E464000FA1C6401F22B400017268B6F6C464000FA1C6401F32B4088F7CE357A6B464060C11964E1F32B40204FD035326B4640C0E070B9D6F32B40985ECF35DE6A464000FA1C6401F22B401804258BCF69464060EDC60E6CF72B4088427AE0DC694640800673B996FA2B4088427AE09C694640E0A1C20EECFC2B40E019CF350669464000FA1C6401002C40403CCF351268464080AE186481ED2B40F880CF35EA67464080AE186481E42B40F880CF352A68464000FA1C6401DD2B40E019CF350669464000FA1C6401DC2B407871D0357E684640E0A1C20EECDB2B40680AD0355A68464080AE186481D92B40403CCF3512684640E00C1E6461D62B40985ECF351E6A4640C01F1F64C1D12B4088427AE05C6A4640800673B996CC2B40985ECF351E6A4640C01F1F64C1C72B400017268BAF6A46402013C90E2CC42B401804258BCF694640A0C7C40EACC92B40B0107BE06469464000FA1C6401CF2B4088427AE09C684640800673B996D12B40F8CB7AE08C67464000BB6EB916CF2B407871D0353E664640A0C7C40EACD32B40C02CD0352664464000FA1C6401D62B40985ECF359E63464060EDC60E6CCE2B40985ECF35DE62464080AE186481CC2B4040D2258B17644640A0C7C40EACCC2B4028D5CE352E66464040D41A6441CB2B40403CCF351268464080AE186481C72B4030B6D03596684640402C75B956B82B400017268BAF694640C01F1F64C1B22B401804258BCF694640C0E070B9D6B32B407871D0353E6A46402013C90E2CB52B40B0107BE0246B464040D41A6441B62B4008E8CF358E6B464020E71B64A1B42B40985ECF359E6B4640E0A1C20EECB02B40D893D0358A6B464040D41A6441AF2B4008E8CF358E6B4640C01F1F64C1B22B400017268B6F6C464040D41A6441AF2B40B0107BE0646D4640A0C7C40EACA92B40C02CD035266D464020E71B64A1A12B40B0107BE0A46D464040D41A6441992B40F880CF35AA6E464000FA1C6401932B40B0C5CF3502704640C0E070B9D6962B4008E8CF35CE70464000BB6EB9169C2B400017268B6F6F464020E71B64A1A32B401804258B0F6F464060C11964E1AA2B40D893D035CA6F464040D41A6441AF2B4028D5CE35AE71464060EDC60E6CA12B4040D2258B1771464000BB6EB9169C2B40607479E054714640C0E070B9D6962B4008E8CF358E724640C0E070B9D6962B4040D2258B57734640E0A1C20EEC982B4040877AE0B4734640E00C1E64619B2B401804258B8F744640C01F1F64C19D2B4018B979E02C754640E0A1C20EEC972B40D0B2CE3562764640402C75B9568C2B40985ECF355E7B46402013C90E2C772B40680AD0355A7F4640C0E070B9D65C2B400017268BEF854640C01F1F64C1582B40D893D0358A864640402C75B956522B4030B6D035D687464020E71B64A1492B40E019CF350689464000BB6EB9163F2B40680AD0355A894640E00C1E6461412B40F880CF352A8A4640A032206421442B40204FD035728B464000BB6EB916462B4088F7CE35FA8B464020E71B64A1392B4030B6D035168F4640E0A1C20EEC462B40B0107BE0A4904640C0E070B9D6732B4060BF248B37914640C0E070B9D6692B401804258B0F92464000FA1C64015E2B40680AD0355A92464000BB6EB916462B4028D5CE352E924640402C75B956392B40B0C5CF358291464080AE186481332B40403CCF3592914640A032206421312B4088427AE09C924640A032206421322B4050A3CF35F693464080AE186481332B40403CCF351295464060C11964E1322B4018B979E0EC95464020E71B64A12D2B4050A3CF357696464000FA1C6401302B40607479E054974640402C75B956302B4088F7CE35FA974640E00C1E64612E2B40F8CB7AE08C984640A0322064212A2B40F880CF352A994640A0322064212A2B4050A3CF35F6994640402C75B9562E2B4028D5CE356E9A4640E00C1E6461302B4060BF248B379B464040D41A6441302B40B0C5CF35429C464020E71B64A12D2B40F035248B879D464000FA1C6401312B40D893D035CA9E4640C01F1F64C1302B40680AD0351AA046402013C90E2C2D2B4088F7CE353AA1464020E71B64A1262B40D048258BE7A14640402C75B956282B400017268BAFA24640A0322064212B2B4030B6D03556A34640A0322064212F2B4088F7CE35BAA34640800673B996342B4088F7CE35BAA34640800673B996342B40E019CF3586A44640E00C1E64612F2B4060BF248BF7A44640402C75B9562B2B40F035248B87A5464060EDC60E6C282B40E019CF3546A6464020E71B64A1262B4088F7CE353AA7464060C11964E12B2B40C02CD03566A74640E00C1E6461302B40403CCF35D2A7464000BB6EB916382B4088F7CE35FAA84640A032206421322B40D0FD79E084A94640E00C1E6461242B40680AD0359AA9464020E71B64A11F2B40E019CF35C6A94640E0A1C20EEC192B40D893D035CAAA4640A032206421152B4008E8CF354EAC4640C01F1F64C1142B40F880CF35AAAD4640A0322064211C2B4060BF248B37AE4640A0322064211C2B40D0FD79E004AF464000BB6EB916162B40C02CD03526B04640C0E070B9D6062B4030B6D035D6B7464060C11964E1072B40607479E014B8464080AE186481092B4088427AE05CB8464020E71B64A10A2B4040877AE0B4B846402013C90E2C082B40E019CF3546B9464000FA1C6401082B4088427AE05CB94640A032206421092B40403CCF3592B9464020E71B64A10A2B40F035248B87BA4640402C75B956022B400017268BEFBD4640C01F1F64C1002B40403CCF35D2BF464020E71B64A1032B40E019CF3586C14640C0E070B9D6062B40E019CF3586C14640C0E070B9D60B2B40F8CB7AE0CCC04640A032206421232B40403CCF35D2BE4640C0E070B9D62D2B40403CCF3592BE4640E0FE5B9E0E422B407A0D53F8BFBA464000918A8FE7512B408E36B88EE0BA464000372C31C2842B406AC7482149BB464020A8CB04F19C2B40EE447FF197B8464040D0E589C4A32B408E75BA5E60B7464070EDC6A1CFAB2B4016372D39EDB64640603E34422BC72B40CABDE1BA39B64640C080B5909ECC2B40BA172A9CF0B64640A05A31081ED12B40262569432DB84640F072A41C94D82B40EADA9D7677B9464020717EC08CF02B402E064F5B42BB4640A03AE8891CF72B40CE723610D7BC464070A1D07843EC2B40B65869431FBF464070A1D07843EC2B40F289067A7FC04640809B050F10EE2B4056649E7667C14640E07573AF9BF12B405A5EB224D2C14640203DBC8496F92B40EACA2B3A86C14640C089BF2D25072C404A63FF3F05C14640F033542A800E2C40DA4D30D656C046408070832346152C40B65869431FBF4640E0DF8CFA21222C40AAAE939F79BD464000BDFBD4922F2C40E6D2E357A9BC46409040CF43C63B2C40F219C2318BBC4640105EDA75113C2C40AE56F3778ABC4640B0262C6B473D2C401658077A87BC4640B090D515824A2C40C232188BF5BC464090894F8DD9622C409E1C939FF6BE464070851A20F96F2C405EFAE657A3BF46407082C904317B2C40B63F650926BF4640C023427C908F2C40FA8D78B794BD4640C08045F052A72C4006164584C9BC464080018C34DFBE2C40F69364092ABD4640F02FB8908ED22C40EADBE8F420BF4640804C2E6B07DC2C407E0A5695B0C0464080DEF19A15F02C40AAAD3AAD46C34640101B2194DBF62C402A760EB46EC54640109270758EF92C4086DF39AD3EC7464090F5B220A6FB2C401A302C1222CA4640E067E9260BFC2C40227D4584ADCA464020CAAA7F45FF2C404E6C20C54FCC46408099DFB208042D40C6795F6C8CCD464060F4D315F2102D405E43D2A916D0464030B461D857162D408E746FE076D14640108DF9FDBE1C2D402A75D1A90ED44640A04DF2FDB6202D4016060917D3D44640103FC66A60232D404213653206D54640D074283172292D40FA7FE0BA7AD54640C0A77B230E2F2D401ECD751AE9D44640D02E649E2A302D405A5FEF2EF2D24640002AF69A952F2D400E3CCE0C99D04640D0297D860F302D403A4E0B17DFCE4640D0DFB52DC5342D401A9DAAEA41CD4640D02B1383623B2D40BACDE5570ACC464020E85D01F44C2D40EA47606C94C94640E0ADB62D8D502D408E2CA5B050C94640C0036E31CD532D4096EE76E3FBC84640401A46B6FD532D40E66F7FF1F6C84640C0EF4553F4562D40AAF6337343C8464040EF532AE8572D40C2A0337345C7464060F51E941B562D40B21E7D5402C54640F07CF93744562D40962126FF58C44640500CBC2D6D602D40B21130D6D1C2464060F4D315F28F2D40B63F650926BF4640F076C7A1FF8F2D40B63F650926BF464060F9BA2D0D902D40EADBE8F420BF4640F07BAEB91A902D40B65869431FBF464020998FD125982D406685862B8BBB4640F039162079AD2D407A0D53F8BFBA464080B1F97161C32D401E9C6DE021BC4640C0C80F2039CD2D40B65869431FBF46403045384213CF2D40A61FACEAD8C1464000DAD37863D82D40125D9AD9E9C14640105416BD07E42D40BACDF3CB93C0464070803308DEEC2D40B65869431FBF46408012270466F42D406E5E40F5F0BE46406063F437FCF82D400E7CB4C1D4BE464040323742B3FE2D403E25AF875CBE4640F07918BDC7032E403E6F01408CBD46404063EBC3C11C2E4052AF1FC56DBD4640D0BE548FDB212E40E66038DCA9BC4640A00809494D472E40FEF60EB40BB746402007D515525E2E405E1EA2137AB64640E0560380A2732E4062E46295DDB74640806B9C0B2B902E401673D980B9B946405028D9B2C8A02E40E6B86A43AAB94640606013BD7FA62E40F6F29C76F6B94640B04EA4A8F1AA2E407E2DE2BAB0BA4640E0C45C3B19B42E40DE771D28F2BC4640001C6C1205B92E40E64D5A32B3BD464000526ED83F9F2E40DE474484C1C046409010D1DBE4972E40AAD11151F0C2464070C8FD37C4932E40BE144921B4C54640C0560E83B2902E40BA0AEB9109C94640E0A40AB679902E4016D8C2B726C94640A0FE1A5AAE8D2E406A7E5DCF95CA4640501FC6A1078A2E40A6AFFA05F6CB4640109D4B2A80892E40CABF694303CD46400076E34FE78F2E40AA1B569596CD4640C036556465932E409AD54BBE1FCE4640C09E68124D952E409A69C6D222CF4640400B71AF43982E405E43D2A916D04640606F4FF04AA72E409EBA79B7EDD04640A097E289A4AD2E408A54E01D86D14640E0CEB156C9B42E40E6666CE0F5D1464080DB07AC5EBF2E4002AC717DF2D1464060F6D9B290BC2E40F6FFCD0C14D3464010614C5334B42E407AC4593283D54640D01D96B737B32E4092FF4514B6D54640B04EA4A8F1AA2E4052B078B760D74640C0C734425BA92E40A68DB95E9FD74640E05F219473A72E40B2ED66A671D74640F027609E42A12E401611B22427D74640E042B990EE9E2E40E2B10917CFD64640E0CF6C753E9E2E40BE5B90024BD64640F0F49397209C2E40C69D52F808D64640502643B675952E40A6FBE2BA78D64640E060DCB2E8902E40368F4ABE0DD74640208195D1358E2E40926D2A9CAED746404039B45621892E4042D86DE066D946405079AD7F35842E402630125141DA4640D09471AF73802E40822B3E4A94DA4640C012704C727F2E407EE533731DDB4640C0336598F47F2E40B626CF8F5BDB4640D06F4A8D91822E40725333739ADC464010C2EB60E8862E40CAEF505B7DDD464010F025948B9B2E408694C6D281DF464060E0ACEE7CA92E404692567251E0464000957A23AEDB2E403E6C04DD3CE3464050CC36C808DC2E40329CB2DA49E34640204A488DD1E12E406285A2131EE4464030691D5A06E12E400E2F65A655E5464030FC229403DF2E401EE40DB4ABE6464070E6B0B972E12E4072755832DEE74640601904AC0EE72E4002F25F6C56E8464000D43142D3EC2E400E327EF137E8464010A85B64A5F22E401A565595E1E746408067701285F82E40F6DB04DDB3E746406018498D99FD2E40DE79B32405E8464050B7B2F31F072F400EAB505B65E94640700EC2CA0B0C2F402AE3DE1DD5E9464030B0889478192F409A06D8C36EE94640301AD615B22C2F401EF15A32DCE8464010D0DC158A402F40B6E8B75EFCE84640D0D7C4678A4A2F40028436107DE9464080DF33A504552F40623E3F4A74EA464090A908AC265A2F40324BF2CBBCEB464070315C64D5592F40E6BA1C2890ED464040EA6C12CD532F406A7D04DD22F04640808CA0A8A1512F40A26CDF1DC5F14640B0F99A6EA4532F40EAD952F84DF34640A056FC9A3D572F402A094CBED1F44640D0B34FF0E2592F40A2D9AF876BF64640F0947A23AE5A2F4022BB87C88CF84640A0D25C83CB592F408604256F7AFC4640404103D532592F40F6F3E7F41FFF4640A02CEE6040592F40CE57640925FF4640A001FCD42A5D2F40FAFA4821BB01474040C6F79A25632F40C2AC35734C03474090A6B7905E652F404E16DA80A204474090D8B525C1622F409EE8475154054740C083FD372C5E2F4086016DE08B06474070C948B6ED572F40A2FC1FC55807474050D8B69096492F40DE51949F62084740001E020F58432F409248EC9108094740E0AC2122493F2F408EE9FAF9C709474070B44A8D29352F400AADCA6FA50B4740401484C0042E2F40468AE1BA870E4740D096774C122E2F404E692362C011474030410C496D352F40F63B7A5460154740C0C67923E63E2F40C6604DBE89184740F04D7BF4CD402F40AAC20DA2FC184740506BBCCA93472F40FEA0BAFB941A474000F5A57F95522F400E3CC0988F1B4740D045D5931F5B2F40CEE92981731B474000FDFD71E17F2F40BA825695FA1A4740A0912094AB892F40329239AD131C4740202BB1B90A942F40D673ABEA1C1F47404076467F5B992F40CE86575AD21F4740606280862F9B2F40DA27B5C11020474000F39FE2F6A22F401AC18F02B5204740601568121DAB2F40665EB224122147405061AEAA36C22F40BEA8F30131214740C040EF9F04C32F403EDC2315322147403090E3EC75C42F40F6FE900234214740F0DCA97E7AD62F40E2733000EC224740208C50C7BEE52F40DAB85CCF60244740305D29CEC8F62F406615D546E8244740A0BF6315C2FC2F40864325D132254740200CB3B932FF2F40428C69435125474020027ACDEA0430402E02F9054026474088886182F8093040EAD7BCFB7A27474090BFDAB6C70C3040DA7786C28A284740E05DE80A690D3040DA992DB9C7284740D08E0C2D430F3040B2F7A84D892A4740205006F3490F304012313A2D332C474050E2A0EFB40E3040F2ACA013092E4740A81179CDD60E30400E1653F85230474010A06C0CB2163040EA4DD944C12F474010F21804271830404E38FF3FA62F474060D41667241B3040220A9082D62F47402073A08C931D30408A8F178B8C304740B85DA7C6881F304066A79D768531474098457E6AAD213040D64A10D14F324740F0635271D32430402E2FDC00863247404885CF2250273040AA60077A1A3247401086A18C732D3040028A537813304740F019F2441A31304026C052F8542F4740F0AA99526A353040F660AAEAFC2E474030546ABC9537304072A52362052F474040373A89B64030403E689959CC2F4740803555718F4630408E4922E2C32F4740F01D1E3EC047304052823CCA2730474048DACEEAA94730404A06BBF977304740F06184A45A47304056870EB494314740182EB7D729463040E601727D303247400866203ECC4130403EB5EF2E303347408037B39D3C4030406E8008FAD6334740187962828C3F3040EE1F3373E8344740582DE56D064030400A3B60ECF7364740687B1904D73F30408EE115EE00384740A0162815CC3C30401658077A873B4740D8EC2878D13B3040BA32035D473D474010FEBCB8F33B3040C699BAF3103E47400865D5BF223C30404ACDE0BA253F4740504A2861CC4230400A86AEDCBC4147403053570E92433040865379B709424740F8BB3C269D4B30408E05DF1D2143474000914A9A874F304052A8C552F743474050124B377A5430407A55F3CB89444740B8BE2E5B1C573040164FA1209C45474000E5A1291A583040D6E2F5680346474088C350D0EB593040BA09DE2D1C454740C059B39D085A30409EAB6CE00D454740A8491A049F5B3040D6E2F56803464740401F1AA1955E304062CFCA6F31454740B042D5BFD6613040BAF0717D0A454740981A8CDE1765304066EF59322245474020B99CEF006830409EAB6CE00D454740D81B5071476A30401236F02E8D444740F0ACF77E976E3040B2A3067AF8424740D094CE22BC703040B6E910516F42474070C09218F57230403E6EA84D5942474058BCF67E837830408E4BE9F497424740C0E74160367B3040B6E910516F42474068CAB8D7B97D3040AAD11151F041474020027ACDEA8330404641CC0C384047400103000000010000009C00000000F78F7BF66F32404A1E6A4394474540D82A5D48277132404A4842678145454098C2D085B96F324096B46AC36041454068749CEFE86F3240B6AEA8CD273F454028E4C64BBC71324092B166A62C3D4540588507F375743240F6B6DB007C3B4540901EB8D7BD7732405E161251083A454060CAB8D7B9793240767A077A9339454038D63CC32B7E3240B2A0FBA29F3845407002F3E1707F32403AB5EF2E3037454090896407167F3240D893D0354A354540F0506107767932407871D0357E384540007D0EB20076324030B6D03556394540F0506107766D3240E019CF35463A454040570CB2C0693240985ECF351E3B4540B0E00CB27069324028D5CE35EE3C45402096BA5C2B3D32401804258B8F474540F050610776383240D0B2CE35224A4540805DB75C8B38324008E8CF354E4B4540206A0DB220393240403CCF35124D4540B07663073639324028D5CE35AE4E454070060FB2B0373240A87A248B5F4F4540007D0EB2802A3240888D258B3F504540F0506107F61F3240B0C5CF358252454090F30DB2D01B3240985ECF35DE524540F05061077617324088F7CE35FA524540F050610776133240985ECF355E534540E08F0FB26010324018B979E02C54454070060FB2B00E32407871D0357E5545404083B95CCB1332407871D0357E55454090F30DB2500E324018B979E06C57454040570CB2400C3240C02CD03566584540501910B2100B324088427AE0DC59454040570CB24007324068557BE07C584540D0636207D60032400017268BAF594540501910B210F6314088427AE05C5D454090F30DB2D0E631407871D0353E604540F050610776E13140C02CD03566624540501910B290E4314088F7CE353A654540F050610776DD314088427AE01C65454040570CB2C0D53140403CCF3552674540007D0EB280CE314018B979E0EC67454090F30DB2D0CC314008E8CF35CE674540D0636207D6CA31407871D0357E674540206A0DB220C931401804258B0F674540B0766307B6C73140B0C5CF35026645409089640716C6314060BF248B37664540805DB75C8BC43140204FD035B2664540B0E00CB2F0C3314060BF248BF766454040570CB240C23140A87A248B5F67454070060FB230BC314050A3CF3536694540501910B290B83140B0C5CF35C2694540D063620756BD3140403CCF35126845402096BA5CABBF314030B6D035D6664540805DB75C0BC3314018B979E0AC634540805DB75C0BC3314088427AE01C63454090F30DB250C1314028D5CE35AE6245402096BA5CABBF3140403CCF35D26245402096BA5CABBF3140680AD0359A634540501910B210C03140403CCF3592644540B0766307B6BF314088F7CE353A654540501910B290BA3140888D258B7F664540B0766307B6AD314088F7CE357A6845402096BA5C2BA2314030B6D03556694540007D0EB28094314028D5CE35AE6B4540F050610776863140A87A248B9F6C454040570CB2C0703140D893D035CA6F4540D063620756713140E019CF350673454090F30DB2D06A3140D0B2CE35A2744540D0636207D659314068557BE0FC754540F0506107764531401804258B4F7B45404083B95CCB3C314030B6D035567C4540B0766307B6383140F880CF356A7D454040570CB2C0363140E019CF35C67D454070060FB2B03331407871D035FE7D45406070B85C6B183140B0C5CF35027E4540007D0EB20010314088F7CE35BA7E454090F30DB2D00B3140985ECF355E7F4540805DB75C0B07314040877AE0748045409089640796043140D0FD79E0C4814540B07663073607314040D2258B17834540B07663073607314060BF248BF783454090F30DB2D004314088427AE05C84454090F30DB250033140D0FD79E004854540501910B210023140F8CB7AE0CC8545406070B85C6B00314040D2258B978645406070B85CEB05314088F7CE353A86454040570CB2400E314040877AE0B483454040570CB2C012314040D2258B17834540206A0DB2A028314060BF248BF7834540007D0EB2803D3140F880CF35EA824540F0506107F6633140C02CD035267D4540007D0EB2006D31407871D035FE7A454040570CB24074314088427AE09C7845402096BA5CAB743140985ECF351E784540B0766307B6743140F880CF356A774540B0E00CB2F0743140D048258BA776454090F30DB2D075314068557BE0FC754540007D0EB200773140680AD035DA754540007D0EB2007A3140403CCF351276454040570CB2407B314068557BE0FC75454090F30DB2D07F314060BF248BB7744540F0506107F681314088427AE05C744540D0636207D68431407871D0353E7445404083B95CCB853140B0C5CF35827445402096BA5CAB85314050A3CF35B675454070060FB2B086314068557BE0FC754540B07663073688314030B6D035D6754540206A0DB2A08A314028D5CE352E7545406070B85CEB8B3140F035248B0775454090896407168F314040D2258BD7744540B0E00CB27091314088427AE05C744540B0E00CB270953140D893D0354A734540F0506107769F314030B6D0351672454040570CB240A4314050A3CF35367145409089640716A73140D893D035CA6F454070060FB2B0A83140D893D035CA6F4540F050610776AC3140B0C5CF35027045404083B95C4BB7314008E8CF350E6C454090F30DB2D0BD314018B979E06C6B4540007D0EB200B63140C02CD035A66D454070060FB2B0B33140F880CF352A6F454070060FB2B0B631407871D035BE7045409089640716B53140D893D0358A71454040570CB2C0AD31401804258B8F70454040570CB240A73140D893D0350A72454050479B527AAA314072E38848DC734540E0DD1BA1F1AD3140B6A46DE034754540E0DE661F9BB331401285F12EB2754540901EB8D73DB931404E65DB8047754540F0A5EA0AF5C33140A668AC6ABA734540D033705968C931400AAC86AB60734540B01660E571CB3140DE221BA8C9734540004554717BCD31409A90B6C16E744540B0DEF67ECFCF31409E006F6076744540C8FFFA1BC6D231403AFC289CFD72454028F53AC383D331409A6B6A43BF714540C8898C4139D331409E01C852A96E45401875FEB8C0D33140262FC018336D4540781CEA0AC5DB3140EAAE289C926845408801180493DE31409ED7D346E9674540085D0D2D8BE731405E10035DFB664540E062C6AEC9ED3140CE03C9EF3865454010A1AB63CBF83140424B2A9CA260454088DB9CEFCCFE314092E28AC8C65E4540980BAE63A30C32402AC65A327D5B4540E8CF9118613932402E124AA164504540B0F410CAD14132406EA07BD4B44E454030DE0456C34F3240D6C57FF1F44C4540680B06F3B15632401685D5461F4D454060F033EC7F593240725EE33A534C4540180C7F11AA5E324092A845B4854945404079D222D85E32400ACC0EB46C4945400088FFB8A0623240E242B8DE83484540482CC94BC86B32403248180B2548454000F78F7BF66F32404A1E6A43944745400103000000010000001600000070060FB2B0DB3040680AD0355A6445404083B95CCBEB304088F7CE357A6345409089640716EF304028D5CE35AE624540B0766307B6EF304040877AE0B4604540B0766307B6EC3040C02CD035E65E45404083B95CCBE73040F880CF35AA5D4540805DB75C8BE2304088427AE05C5D4540D0636207D6E13040B0C5CF35425E454040570CB2C0DF3040F880CF356A5E454070060FB2B0DB3040680AD0351A5F4540007D0EB200D93040C02CD035E65D45409089640796D530401804258B8F5D4540206A0DB220D2304060BF248B375E454090F30DB250CF304088F7CE35FA5F4540007D0EB280D23040D048258BA7604540F0506107F6D23040F8CB7AE0CC614540206A0DB2A0D1304088F7CE357A62454090F30DB250CF304088F7CE35BA614540501910B290CD304088F7CE35BA6145406070B85C6BCF30407871D0353E634540007D0EB200D4304050A3CF35F663454070060FB2B0DB3040680AD0355A6445400103000000010000001E00000070060FB2B0A83140680AD0351A5F45406070B85CEBAD314018B979E06C5D4540007D0EB200BB3140403CCF35525B4540B0766307B6BF3140D048258BE75845404083B95CCB62314028D5CE35AE62454070060FB2B05F3140F035248B47614540501910B2905A3140D0B2CE3522624540206A0DB2A0553140D0B2CE35E2634540E08F0FB2E052314088F7CE353A654540B0E00CB27057314008E8CF358E65454070060FB2B05F314068557BE0BC664540B0E00CB270643140985ECF359E6645402096BA5C2B63314028D5CE356E6645404083B95CCB613140A87A248B1F664540206A0DB2205F314088F7CE353A654540F0506107F6613140607479E05465454070060FB2B0643140D0FD79E0446545404083B95C4B67314050A3CF35F66445409089640796693140680AD0355A644540007D0EB2806B314088F7CE353A654540D0636207D66F314018B979E02C6445406070B85C6B7C3140985ECF351E644540501910B210863140C02CD035E6614540501910B21093314050A3CF35F6604540F0506107F698314088F7CE35FA5F45402096BA5C2B98314050A3CF35B65F4540B0E00CB2F0973140B0107BE0A45F4540B076630736973140680AD0351A5F4540B0E00CB2F0A53140F035248B875E454070060FB2B0A83140680AD0351A5F45400103000000010000002400000040570CB2C0213140680AD0351A7C4540501910B21026314028D5CE35EE794540501910B2102A3140B0C5CF358278454040570CB24033314068557BE0FC754540007D0EB280313140F035248B07754540206A0DB2A02C3140D0FD79E00476454070060FB230273140D048258BE7754540007D0EB2801B3140F035248B077545406070B85CEB03314088427AE0DC764540501910B210F93040985ECF359E764540501910B210E63040204FD035F2734540F0506107F6D93040D893D0354A734540E08F0FB260BD3040C02CD03566754540007D0EB200B130401804258BCF76454040570CB240AC3040A87A248B9F76454070060FB230AC304068557BE0FC7545404083B95CCBA730401804258B8F764540B0E00CB270A33040C02CD035A6774540B0E00CB2F0B43040C02CD035267B4540B0E00CB2F0B43040680AD0351A7C4540501910B210B03040F880CF35AA7C4540F0506107F6A53040D048258B277D4540B0766307B6A13040E019CF35C67D45409089640716A73040E019CF35067F454040570CB2C0AC304040D2258B177F4540501910B290B230407871D035BE7E4540B0E00CB270B8304088F7CE35BA7E45404083B95CCBBD3040D0FD79E0847D454040570CB2C0C43040204FD035727C4540F0506107F6D23040C02CD035267B4540B0E00CB2F0E03040C02CD035267B4540007D0EB280E430401804258B8F7B4540E08F0FB260EA304068557BE0BC7C4540B076630736083140E019CF35C67D4540B0E00CB2701C314028D5CE356E7B454040570CB2C0213140680AD0351A7C45400103000000010000002000000040570CB2C03D304050A3CF3536894540D0636207D63E3040E019CF35C6894540F0506107F63F3040F880CF352A8A4540E08F0FB2E040304060BF248BF789454040570CB240413040E019CF35C6884540805DB75C8B40304068557BE0FC874540D0636207D63E3040B0107BE064874540D0636207D63B304040D2258B9786454090F30DB2D0383040D048258B27854540D0636207D6353040B0C5CF3542844540501910B2101F304050A3CF35B681454090F30DB25016304060BF248B778145402096BA5C2B10304088F7CE353A824540206A0DB2A0153040403CCF35528345404083B95C4B163040F8CB7AE04C85454040570CB240143040403CCF35D286454040570CB2C011304040D2258B978645402096BA5C2B10304040D2258B97864540007D0EB2800C304040D2258B57884540501910B2900D30407871D035BE8845402096BA5CAB0E304068557BE0FC884540B0E00CB2F00F3040A87A248B1F89454040570CB2C011304050A3CF353689454070060FB2B017304040D2258B978A4540D063620756213040403CCF35528B4540501910B2902B304088F7CE353A8B4540206A0DB220333040F880CF352A8A4540D0636207D6313040E019CF3586894540E08F0FB26031304050A3CF353689454040570CB240373040D0B2CE35228A45406070B85C6B3A3040403CCF35128A454040570CB2C03D304050A3CF353689454001030000000100000038000000B0E00CB270B13040D893D0354A904540501910B290AB30401804258B0F90454090F30DB2508F3040F8CB7AE04C92454070060FB2B07930401804258B4F954540F0506107F671304088427AE0DC954540E08F0FB2606D3040E019CF3506974540007D0EB2806A3040E019CF3546974540206A0DB2205F3040E019CF3506994540B07663073660304040D2258B97994540E08F0FB260613040680AD035DA994540B076630736643040C02CD035E69945406070B85C6B67304068557BE03C99454090F30DB2506A3040D048258B679945409089640796703040680AD035DA9A454070060FB230723040C02CD035E6994540F0506107F672304028D5CE356E9A4540D0636207D6753040B0107BE0A49B4540D0636207D6753040680AD035DA9A454090896407167F3040F880CF35EA9B45406070B85CEB863040C02CD035269A4540501910B2108E304008E8CF350E98454090F30DB250953040C02CD0352698454090F30DB2508E3040680AD035DA9A4540007D0EB280873040985ECF355E9C454040570CB2408530401804258B4F9D4540F0506107F6883040C02CD035269D4540501910B2109030401804258B4F9D454090F30DB250953040B0107BE0A49B45404083B95C4B96304028D5CE35AE9B454090F30DB2D0983040D0B2CE35629C4540501910B2909A3040680AD0359A9C45404083B95CCB9D304088427AE09C9C4540E08F0FB260A53040C02CD035269C4540D0636207D6A83040B0107BE0A49B4540501910B290AA304068557BE0FC9A45402096BA5C2BAC304068557BE0FC99454040570CB240AE304028D5CE35EE984540B0E00CB270B13040C02CD03526984540501910B290B1304008E8CF358E974540B076630736B13040C02CD03566974540007D0EB280B03040C02CD0356697454070060FB2B0AF3040E019CF354697454070060FB2B0B4304088427AE0DC9545404083B95C4BBA3040403CCF351295454090F30DB250C0304088F7CE35BA944540206A0DB220D93040F035248BC79445404083B95C4BDD304088427AE09C954540E08F0FB2E0E03040607479E054944540501910B290E530401804258BCF934540B0E00CB270F53040B0C5CF358293454040570CB2C0043140F035248B07924540206A0DB2201C3140D048258B6792454040570CB2C027314050A3CF35F6914540007D0EB280313140D893D0354A904540D8AE0DB278F13040D893D0354A904540B0E00CB270B13040D893D0354A9045400103000000010000002900000070060FB230803040D0B2CE3562A44540007D0EB2006C3040C02CD035A6A84540E08F0FB2E067304030B6D03596AA4540B0E00CB2F069304040D2258B17AA4540E08F0FB2606B3040A87A248B9FA94540206A0DB2206D3040A87A248B9FA9454040570CB2406D304028D5CE356EAA4540007D0EB2006E304008E8CF358EAA454070060FB2306F304050A3CF3576AA4540908964079670304030B6D03596AA45402096BA5C2B6F3040B0C5CF3582AB4540D0636207566F304040D2258B57AC4540501910B21071304040877AE0F4AC4540908964071674304040877AE034AD4540501910B29070304088F7CE357AAF4540206A0DB2206D3040204FD03572B24540B0E00CB270723040D893D0358AB245409089640716743040204FD03572B24540B0E00CB2707E30400017268BEFB04540805DB75C0BB03040B0C5CF3542B0454090F30DB250CF304040877AE034AD454090F30DB250CF304030B6D03556AC454090F30DB2D0CB304030B6D03556AC4540805DB75C8BCE304030B6D035D6AB4540F0506107F6D03040F8CB7AE08CAB4540007D0EB200D33040C02CD035A6AB4540501910B290D4304030B6D03556AC4540E08F0FB2E0D63040D0B2CE35A2AB454070060FB2B0DB3040A87A248B9FA94540F050610776DE3040D893D0354AA9454070060FB2B0E03040C02CD03566A945409089640796E2304050A3CF3536A94540B0E00CB270E4304050A3CF35F6A745402096BA5C2BE13040A87A248B9FA5454090F30DB250DF304088427AE0DCA445404083B95C4BDD304030B6D03556A54540206A0DB2A0D830407871D035FEA245402096BA5C2BD03040E019CF3546A24540D0636207D6A03040B0C5CF35C2A14540E08F0FB260903040403CCF3592A2454070060FB230803040D0B2CE3562A4454001030000000100000015000000B07663073664304030B6D03556AC454040570CB24060304028D5CE35AEAA454040570CB240593040680AD0355AAB4540206A0DB220483040F035248B47AF4540F0506107763B304050A3CF3536B14540007D0EB200353040403CCF3592B14540D0636207D6343040C02CD03526B2454070060FB230353040403CCF3552B24540D0636207D6353040607479E054B245409089640796363040204FD03572B24540501910B210343040204FD03532B3454090F30DB250333040680AD0351AB44540206A0DB2A0343040680AD035DAB44540D063620756383040C02CD03526B545406070B85CEB46304088F7CE35BAB44540D0636207564C3040F880CF35AAB34540007D0EB2804D3040403CCF3592B14540B0E00CB270543040D0B2CE35E2B1454040570CB24059304018B979E06CB04540E08F0FB2E05D304088F7CE353AAE4540B07663073664304030B6D03556AC45400103000000010000000E000000800673B9965B2F40204FD035F2D2454000BB6EB9167B2F40403CCF3552D04540C0E070B9D65C2F4050A3CF35F6D1454000BB6EB916582F4040D2258B97D1454080AE186481532F40C02CD035A6D2454040D41A64413D2F40A87A248B9FD54540A032206421352F4088427AE05CD6454000FA1C6401392F401804258B4FD74540A0322064213B2F40D048258BA7D6454040D41A64413D2F4040877AE074D6454060C11964E14C2F40C02CD03526D64540C01F1F64C1522F4028D5CE352ED5454060C11964E1562F400017268BEFD34540800673B9965B2F40204FD035F2D2454001030000000100000010000000C01F1F64C1852E4068557BE0FCEE4540E00C1E6461882E40204FD035B2ED4540402C75B956AF2E40F880CF35EAE7454060EDC60E6CB52E40204FD03572E6454000BB6EB916BC2E40D0B2CE3522E54540800673B996CA2E40985ECF35DEE24540A032206421C62E400017268B6FE34540E0A1C20EECA72E4028D5CE35EEE545402013C90E2C9E2E40985ECF351EE74540A0C7C40EAC932E40F880CF35AAE94540C01F1F64C1852E407871D0357EEB4540E0A1C20EEC7E2E4018B979E0ACEC454080AE186481772E4088427AE05CEE454020E71B64A1742E4028D5CE35EEEF454040D41A64417B2E4068557BE0BCF04540C01F1F64C1852E4068557BE0FCEE45400103000000010000002400000000FA1C64019B2E40204FD035B2FB4540A032206421982E40204FD03532FD4540402C75B9568A2E40D893D0350A004640C01F1F64C1852E40F880CF356A01464080AE1864818F2E40D0B2CE3562014640C01F1F64C1972E4060BF248BB70046402013C90E2CB32E4060BF248BF7FC4540C0E070B9D6C12E40A87A248B5FFC454020E71B64A1C42E4028D5CE352EFC4540E0A1C20EECC52E40204FD03572FB4540E00C1E6461C72E40F8CB7AE04CF9454080AE186481C82E40680AD0359AF84540800673B996CB2E4050A3CF35F6F7454080AE186481D22E40F880CF356AF7454060EDC60E6CD62E4028D5CE35EEF6454080AE186481DA2E40E019CF3506F64540E0A1C20EECDE2E40B0107BE0A4F44540A0C7C40EACE22E40607479E014F34540E00C1E6461E42E40680AD0359AF1454020E71B64A1E02E40B0C5CF3502F2454060C11964E1DC2E40E019CF3546F24540E0A1C20EECD82E4028D5CE356EF2454080AE186481D42E4068557BE07CF2454060EDC60E6CD02E4040877AE0B4F2454020E71B64A1CE2E4088F7CE353AF34540800673B996CD2E401804258BCFF3454020E71B64A1CB2E4068557BE03CF4454080AE186481BE2E4088F7CE35FAF4454020E71B64A1B72E4028D5CE35AEF545402013C90E2CB32E4028D5CE35EEF6454060EDC60E6CB52E4088F7CE353AF74540A0C7C40EACB62E4088F7CE35BAF7454060C11964E1AF2E40E019CF3546F8454020E71B64A1A62E40C02CD03566F9454080AE1864819E2E4028D5CE35AEFA454000FA1C64019B2E40204FD035B2FB45400103000000010000001900000040D41A6441822E40D893D0354A024640C0E070B9D67B2E4008E8CF358E034640E0A1C20EEC762E4008E8CF354E054640402C75B956722E400017268B6F064640E0A1C20EEC6C2E40D893D035CA054640C01F1F64C1692E40D893D035CA054640A032206421692E40985ECF355E064640A032206421682E4060BF248BB7064640A032206421672E40D893D0350A074640E0A1C20EEC652E40F035248B87074640C0E070B9D6602E40985ECF351E06464060C11964E1562E40B0C5CF35820746402013C90E2C4C2E40E019CF35C6094640E00C1E64613E2E4008E8CF35CE0B4640800673B9962C2E4030B6D035D60F46402013C90E2C232E40C02CD0352611464040D41A6441242E40985ECF359E11464060EDC60E6C242E4088F7CE35BA11464060C11964E1242E40D0FD79E0C4114640A0C7C40EAC262E40E019CF3506124640800673B996242E4068557BE0BC12464000FA1C6401202E4088F7CE35BA144640800673B996732E4088F7CE357A08464080AE1864817E2E4088F7CE35FA05464040D41A6441822E40D893D0354A0246400103000000010000000C00000080AE186481AF2D4088F7CE35FA12464060EDC60E6CB32D4068557BE07C134640E0A1C20EECB62D4050A3CF357613464040D41A6441BA2D4050A3CF35F612464000FA1C6401BD2D4068557BE0FC114640402C75B956B62D40D0FD79E08411464020E71B64A1AB2D40D0B2CE3522124640C01F1F64C1A32D4030B6D0359613464000BB6EB916A52D4040D2258B9715464020E71B64A1A72D4050A3CF3536144640C01F1F64C1AB2D40607479E05413464080AE186481AF2D4088F7CE35FA1246400103000000010000003900000000FA1C64014A2E4008E8CF358EF9454000FA1C64016F2E4030B6D035D6F44540C01F1F64C1702E40680AD0355AF3454000BB6EB916642E4030B6D03596F2454080AE1864814A2E40B0C5CF3542F6454040D41A6441442E40F880CF35EAF5454080AE186481462E4068557BE07CF54540C0E070B9D6472E40985ECF35DEF4454000FA1C64014A2E4068557BE03CF4454060C11964E1562E4008E8CF358EF2454060C11964E1592E40D893D0350AF24540E0A1C20EEC5D2E40F035248B87F14540C0E070B9D6612E40680AD0359AF14540C01F1F64C1642E4040877AE074F14540E0A1C20EEC652E4030B6D03556F04540800673B996632E40204FD035B2EF454080AE1864815E2E40D0FD79E044F04540A0C7C40EAC592E400017268B2FF1454040D41A6441582E40680AD0359AF1454060C11964E1452E4030B6D03596F34540A0322064213E2E401804258BCFF44540800673B996362E4040877AE074F6454040D41A6441222E40680AD0351AFC4540E0A1C20EEC152E40E019CF35C6FE4540800673B996012E40204FD035B2064640402C75B956F72D4068557BE07C08464000FA1C6401E92D4018B979E0AC09464080AE186481BD2D40E019CF3506124640402C75B956BC2D4050A3CF3576134640C0E070B9D6B92D4088427AE09C14464000FA1C6401B32D4088F7CE357A16464060C11964E1B52D4040D2258B97164640A032206421B82D40F035248B8716464000FA1C6401BA2D4088F7CE357A16464000FA1C6401C42D40A87A248B5F144640C0E070B9D6E02D40E019CF354610464060EDC60E6CE32D40B0107BE0640F4640C01F1F64C1E52D4088F7CE353A0E4640A0C7C40EACE82D4050A3CF35360D464060C11964E1EC2D40F035248BC70C464060C11964E1F32D40A87A248B5F0C4640E00C1E6461F82D40B0107BE0A40B4640C0E070B9D6FC2D407871D0353E0B4640C01F1F64C1032E40D048258BE70B464060EDC60E6C012E40B0107BE0A40A464040D41A6441002E40F880CF352A0A4640E00C1E6461072E4088F7CE35FA09464020E71B64A10B2E407871D0353E094640A0C7C40EAC0D2E4088F7CE35FA07464040D41A64410E2E4088F7CE353A064640402C75B956102E40D048258BA70446402013C90E2C152E40D0B2CE35620346402013C90E2C2D2E4018B979E0ACFE4540C01F1F64C1322E4040D2258B17FE454040D41A64413A2E4018B979E0ECFD454060C11964E13B2E40D893D0354AFD454000FA1C64014A2E4008E8CF358EF945400103000000010000005F00000000FA1C6401C12D40C02CD035A6474640402C75B956BB2D407871D0357E48464060C11964E1852D4008E8CF354E544640C01F1F64C17C2D40680AD0351A57464020E71B64A1772D40B0C5CF35025A4640E0A1C20EEC792D40888D258BFF59464080AE1864817B2D4008E8CF35CE594640402C75B9568F2D40204FD035B2554640C01F1F64C1B02D40985ECF35DE4C464080AE186481C42D40204FD035324A464020E71B64A1C22D4088F7CE35FA4D464060C11964E1CE2D40607479E0144E4640E00C1E6461E02D40F8CB7AE00C4C4640C01F1F64C1EE2D40C02CD0356649464060EDC60E6CFA2D4060BF248BF745464000FA1C6401022E40985ECF359E44464000BB6EB916152E40D0FD79E08443464080AE1864811A2E40403CCF3512424640800673B9961F2E4040D2258B17404640A0C7C40EAC262E4050A3CF35F63D464020E71B64A11C2E4068557BE03C3E464060EDC60E6C0E2E40D048258B67404640C01F1F64C1032E40607479E09440464000FA1C6401062E40D048258BE741464040D41A6441072E40C02CD03566424640A032206421F22D40A87A248B9F44464060C11964E1E72D401804258B4F454640402C75B956E22D40403CCF351246464060EDC60E6CDB2D40204FD035B246464080AE186481D22D40204FD035B246464080AE186481D22D40403CCF35D2454640800673B996EE2D4008E8CF350E434640800673B996182E40888D258B3F38464080AE186481312E40B0107BE024354640E00C1E6461292E4040D2258B5736464040D41A6441212E4008E8CF350E384640A0322064211A2E40E019CF35463A464040D41A6441152E40B0C5CF35023D464020E71B64A12A2E40985ECF351E3B464060EDC60E6C5A2E4030B6D03516324640E0A1C20EEC652E40E019CF35C63046402013C90E2C6D2E40B0C5CF35422F4640800673B9967B2E400017268BEF2C464040D41A6441822E40E019CF35862B4640E00C1E6461782E40D893D0350A2B464060EDC60E6C6C2E4008E8CF354E2C4640E0A1C20EEC5F2E4008E8CF350E2E464080AE186481542E40E019CF35062F464080AE186481542E40C02CD035262E464020E71B64A15D2E4008E8CF35CE2D464020E71B64A1662E4068557BE0BC2C464080AE1864816E2E40F035248B472B464040D41A6441742E40E019CF35C6294640C01F1F64C1692E40E019CF35C629464020E71B64A16A2E4008E8CF350E29464000FA1C64016C2E40985ECF359E28464000BB6EB9166E2E401804258B4F284640C01F1F64C1702E40F035248B07284640C0E070B9D6652E40607479E094284640A0322064214F2E40985ECF355E2A464000FA1C6401432E40403CCF35922A464000FA1C6401432E40E019CF35C629464040D41A6441582E40607479E01427464040D41A6441582E40D893D0354A26464060EDC60E6C4C2E4008E8CF35CE264640E0A1C20EEC412E400017268BEF274640E0A1C20EEC382E40F8CB7AE08C29464080AE186481312E40E019CF35862B464080AE186481312E40403CCF35522C464080AE186481382E40403CCF35522C464080AE186481382E40E019CF35462D4640E00C1E6461342E4060BF248BB72D4640C01F1F64C1312E40888D258B3F2E4640A0C7C40EAC2D2E40C02CD035E62F464000BB6EB916332E40403CCF35D22F4640C01F1F64C1362E40E019CF350630464060EDC60E6C392E4030B6D0359630464000FA1C64013C2E401804258B8F314640E0A1C20EEC2E2E40985ECF351E33464080AE1864812A2E40B0107BE064334640A0C7C40EAC252E40B0C5CF3542334640800673B9961D2E4040877AE07432464000BB6EB916192E40D0FD79E08432464020E71B64A1132E40985ECF359E33464020E71B64A10A2E40D893D0350A374640E0A1C20EECEA2D4068557BE0BC3B464040D41A6441E62D40F880CF35EA3B464080AE186481CB2D4030B6D035D63E464080AE186481CB2D40A87A248B9F3F464060EDC60E6CCE2D4008E8CF35CE3F4640E00C1E6461D32D40680AD0355A404640402C75B956D62D40607479E09440464000FA1C6401D02D4018B979E0AC424640402C75B956C12D40403CCF359246464000FA1C6401C12D40C02CD035A647464001030000000100000025000000A032206421E42C40204FD0357248464020E71B64A10D2D4088F7CE357A404640800673B996112D4050A3CF35F63D4640A032206421062D4088F7CE35BA3D4640402C75B956F82C40607479E014404640E00C1E6461E72C40607479E014444640402C75B956E02C40204FD035F2444640402C75B956E02C40403CCF35D2454640A032206421EB2C40D0FD79E04445464020E71B64A1EE2C40204FD035F244464040D41A6441E02C40E019CF3546484640E00C1E6461D82C4040877AE07449464060C11964E1CE2C40204FD035324A464040D41A6441CB2C40680AD035DA484640E0A1C20EECC52C40C02CD03566484640C0E070B9D6BF2C40C02CD035A648464060C11964E1B92C40C02CD0356649464060C11964E1B92C40204FD035324A4640E00C1E6461BD2C40204FD035324A4640E00C1E6461BD2C4060BF248B374A4640C01F1F64C1BC2C40888D258B7F4A4640C01F1F64C1BA2C40F880CF352A4B464060C11964E1C32C4060BF248B374D464080AE186481C02C40888D258BBF4F464060C11964E1B22C40D0B2CE35E253464060EDC60E6CB02C40403CCF3592554640800673B996AC2C4008E8CF358E594640E0A1C20EECAB2C40888D258BBF5B4640A032206421B62C40B0C5CF35825A4640A032206421C32C4018B979E06C59464080AE186481CB2C40B0C5CF35C257464060C11964E1C72C40B0C5CF35C2544640402C75B956CA2C40D0B2CE35A2534640800673B996CC2C40680AD0359A51464060C11964E1CE2C40A87A248B1F4E4640E0A1C20EECD12C4018B979E0EC4C4640A032206421E42C40204FD035724846400103000000010000002D000000A0322064217B2D40985ECF359E634640A0322064217B2D40A87A248B9F624640E00C1E64617C2D40D0FD79E00462464000BB6EB916822D407871D035FE604640402C75B9567B2D4040D2258BD76146402013C90E2C732D40B0C5CF354262464080AE1864816B2D40D893D0354A624640A032206421662D40204FD035F2614640C0E070B9D6502D407871D0353E66464040D41A6441572D4030B6D0355666464020E71B64A15D2D407871D0353E664640C01F1F64C1632D40204FD035F2654640402C75B956692D40204FD03572654640402C75B956692D407871D0353E664640800673B996672D4018B979E0AC664640A032206421672D4040877AE0F466464000BB6EB916672D4030B6D03556674640A032206421662D40403CCF351268464080AE1864816E2D4008E8CF35CE66464020E71B64A1702D407871D0353E664640A032206421742D407871D0353E66464020E71B64A16D2D40B0C5CF35C2684640E00C1E6461692D4030B6D035D6694640402C75B956622D400017268BAF6A46402013C90E2C612D40680AD0351A6B4640A0322064215F2D400017268B6F6C464060C11964E1692D40D048258B276C4640A032206421742D4008E8CF358E6B4640C01F1F64C1722D4030B6D035166C464020E71B64A1702D40B0107BE0646D4640E00C1E64617A2D4068557BE03C6D4640A0C7C40EAC812D40D0FD79E0446C4640A032206421832D4060BF248BF76A4640A0322064217B2D401804258BCF694640A0322064217B2D40E019CF350669464000FA1C64017F2D40F8CB7AE08C684640A032206421932D40E019CF350665464080AE1864819F2D4068557BE0BC63464000BB6EB916A52D407871D035BE624640C0E070B9D6B32D40A87A248B5F5E4640C0E070B9D6B72D40403CCF35D25B464000FA1C6401B32D40B0C5CF35025A4640800673B996A42D407871D0353E5C4640C01F1F64C18B2D40403CCF3552614640A0322064217B2D40985ECF359E63464001030000000100000059000000A032206421072D40B0C5CF35C2544640A032206421042D40A87A248B9F534640E00C1E6461042D40680AD0359A524640A0C7C40EAC072D40204FD0353252464000BB6EB9160E2D4028D5CE35EE524640800673B996112D400017268B2F51464000FA1C64010E2D40E019CF354650464060EDC60E6C0A2D4008E8CF358E4F4640C0E070B9D6062D4050A3CF35364F46402013C90E2C012D40B0107BE0644F46402013C90E2CF22C40B0107BE0644F464000BB6EB916DB2C40D893D0350A54464000FA1C6401CA2C40403CCF35925A4640E00C1E6461CB2C4040877AE03460464000BB6EB916C92C40403CCF355260464020E71B64A1C72C40D0FD79E084604640402C75B956C62C407871D035BE604640E00C1E6461C42C407871D035FE604640C01F1F64C1BF2C407871D0357E60464080AE186481BC2C40F880CF356A61464080AE186481BA2C40A87A248B1F63464060C11964E1B92C4068557BE03C674640A032206421B92C40204FD03572684640800673B996B62C4028D5CE35EE6846402013C90E2CB12C40E019CF350669464060C11964E1A82C407871D035BE6A4640C0E070B9D6A02C40D048258B6772464020E71B64A1962C4008E8CF354E744640A032206421972C40A87A248BDF744640A0C7C40EAC972C4068557BE03C754640E00C1E64619A2C4008E8CF350E764640C01F1F64C1952C4088427AE05C784640E00C1E64619A2C40B0C5CF35C278464080AE186481A62C40A87A248BDF774640A032206421AA2C40403CCF3552774640402C75B956B32C40680AD035DA744640A032206421B82C4008E8CF354E74464000BB6EB916C12C407871D0353E744640402C75B956C62C40680AD0355A744640402C75B956C92C4040D2258B17754640E00C1E6461CB2C4018B979E0EC76464080AE186481C92C40C02CD035A67746402013C90E2CC72C40B0107BE0A4794640C0E070B9D6C72C4028D5CE35EE7A464060C11964E1CE2C40D893D0358A79464020E71B64A1D22C40F880CF356A7A464060EDC60E6CC82C4030B6D035167C464060C11964E1C02C40403CCF35527E464080AE186481B12C4030B6D0351686464080AE186481AE2C40985ECF351E8746402013C90E2C932C400017268BEF8C4640800673B9968E2C40B0C5CF35828E46402013C90E2C8E2C40D0B2CE3562904640C01F1F64C1932C40F8CB7AE00C934640E00C1E6461992C40F035248BC7944640800673B996A02C40403CCF3512964640E0A1C20EECA92C40B0C5CF3582964640E00C1E6461B62C40F880CF35AA95464060EDC60E6CBA2C4018B979E02C944640800673B996B82C4008E8CF350E8F464060C11964E1B92C4088F7CE35FA8B464040D41A6441BD2C40F880CF35AA89464080AE186481C62C40888D258BFF84464000BB6EB916D32C4060BF248B77804640C0E070B9D6D52C407871D035BE7F4640800673B996DC2C40B0C5CF35C27E4640E00C1E6461E82C4050A3CF35767E464020E71B64A1EE2C40F880CF35EA7D464060EDC60E6CF22C4040D2258B577C46402013C90E2CF12C40680AD0351A7A4640C0E070B9D6EC2C4008E8CF35CE774640E00C1E6461E72C4008E8CF350E764640A032206421EB2C4018B979E02C754640E00C1E6461E62C40204FD035F272464020E71B64A1E52C40985ECF351E714640E00C1E6461E72C40F880CF35EA6C464000FA1C6401EE2C40B0107BE02469464060C11964E1EE2C40D0FD79E004674640E00C1E6461E72C407871D0353E66464000FA1C6401EA2C40607479E0D464464040D41A6441F02C4040877AE0F4624640A032206421F22C40204FD035F261464020E71B64A1F22C40607479E09460464060EDC60E6CEF2C407871D035FE5E464020E71B64A1EE2C40F880CF356A5D4640C01F1F64C1F12C40985ECF359E5A464020E71B64A1F82C4030B6D03596584640A0C7C40EAC002D4008E8CF35CE564640A032206421072D40B0C5CF35C25446400103000000010000004A000000E00C1E6461722D40888D258BBF784640A0C7C40EAC692D4028D5CE352E794640C0E070B9D6502D40F880CF352A7C464000FA1C6401422D4040877AE0347D4640C01F1F64C13F2D40B0107BE0247E4640E00C1E64613F2D4028D5CE352E804640A0C7C40EAC402D40D0FD79E0C484464060C11964E13D2D4030B6D035D685464060C11964E1342D4068557BE0FC84464060C11964E1342D40985ECF351E84464060C11964E13B2D40D048258B2783464060EDC60E6C2E2D4088F7CE35FA824640E00C1E6461052D40985ECF351E84464080AE186481F82C40985ECF35DE844640800673B996EB2C4040877AE0B486464020E71B64A1E02C40E019CF350689464020E71B64A1D92C4028D5CE352E8B4640C01F1F64C1DD2C40D0FD79E0448C464000BB6EB916E22C40E019CF35C68C464000FA1C6401E72C4028D5CE35EE8C464060C11964E1EC2C4028D5CE35EE8C4640C0E070B9D6EE2C4088F7CE357A8D464080AE186481EE2C4028D5CE35AE8E4640A032206421EF2C40D0B2CE35E28F464060C11964E1F32C4028D5CE356E9046402013C90E2C072D40D0FD79E08490464060EDC60E6C0F2D40B0C5CF354291464060C11964E10A2D40F8CB7AE00C93464080AE186481112D40B0C5CF35C294464040D41A6441142D401804258BCF954640E00C1E6461152D40C02CD035E69646402013C90E2C142D40F880CF35EA974640E00C1E6461122D40680AD035DA98464060C11964E1122D40403CCF35D2994640800673B996182D40F880CF35EA9A464080AE186481192D4040D2258B579C464000FA1C6401192D4050A3CF35769D464060EDC60E6C162D4018B979E02C9E4640800673B996112D40D048258B679E464000FA1C6401192D4030B6D035D69F464060EDC60E6C202D4060BF248BF79F464000BB6EB916312D40D048258B679E4640C01F1F64C12B2D40204FD035729E464000BB6EB9162A2D40D048258B679E464000FA1C64012B2D4050A3CF35769D464020E71B64A12C2D4060BF248BB79C4640C01F1F64C12E2D40B0107BE0249C464000BB6EB916312D4050A3CF35B69B4640A0C7C40EAC382D40680AD0355A994640E00C1E64613F2D4050A3CF357696464060C11964E1312D4008E8CF354E95464020E71B64A1392D40D0B2CE3562944640800673B996492D40403CCF351294464020E71B64A1542D4050A3CF35B694464080AE186481572D4088427AE05C924640E00C1E6461512D40985ECF35DE8D464020E71B64A1542D4028D5CE352E8B46402013C90E2C5B2D40F880CF35EA894640402C75B956642D40C02CD03566894640A0322064217B2D40680AD0355A89464060C11964E17A2D4018B979E0AC85464080AE186481992D40F880CF35AA80464040D41A6441A12D40985ECF351E7D464000BB6EB9169E2D40985ECF351E7D46402013C90E2C982D40607479E0547C4640C01F1F64C1912D40403CCF35127C4640E00C1E64618B2D40607479E0547C4640800673B996852D40985ECF351E7D4640800673B9967E2D40F880CF352A7C4640800673B9967E2D40985ECF355E7B464080AE186481852D40B0C5CF35427A464080AE186481832D400017268B6F794640E0A1C20EEC7B2D4018B979E0EC784640E00C1E6461722D40888D258BBF78464001030000000100000015000000B0E00CB2704F30407871D035FEC04540805DB75C8B553040204FD03532C04540501910B2106030407871D035BEBE45406070B85CEB5E30407871D035FEBD4540D063620756553040985ECF359EBD454070060FB23048304040877AE074BE4540B0E00CB270443040403CCF3552BE454040570CB240423040B0107BE0E4BD454090896407163F3040A87A248B9FBD4540805DB75C0B3B3040680AD035DABD4540E08F0FB2E0373040888D258B3FBE4540206A0DB22036304088F7CE35BABE4540B07663073636304028D5CE356EBF4540805DB75C0B38304050A3CF35B6BF45402096BA5C2B393040F880CF35AABF4540E08F0FB2E03A3040B0C5CF3582BF4540D0636207563E3040680AD0355ABF4540501910B2904030407871D035FEBF4540007D0EB2803F30401804258B0FC1454070060FB2B0433040C02CD035A6C14540B0E00CB2704F30407871D035FEC045400103000000010000000E00000000FA1C6401852D40D0B2CE356225464000FA1C64018C2D40888D258B7F244640402C75B956952D40D0B2CE35E2224640402C75B956942D40F880CF352A22464000FA1C64018D2D40A87A248B1F2246402013C90E2C882D4018B979E0EC21464000BB6EB916852D40B0C5CF354221464040D41A64417F2D407871D0357E214640E0A1C20EEC792D40607479E0D4224640A0C7C40EAC7A2D4088427AE0DC234640C0E070B9D67F2D40985ECF35DE23464020E71B64A1812D40D893D0354A24464020E71B64A1812D40888D258B3F25464000FA1C6401852D40D0B2CE35622546400103000000010000000800000000BB6EB9163A2D40A87A248B9F2B464080AE186481492D40204FD035B229464020E71B64A1522D40B0C5CF3582274640800673B996502D40403CCF351227464000BB6EB916482D40F880CF35EA27464020E71B64A1322D40C02CD035662B4640A0C7C40EAC302D4028D5CE356E2C464000BB6EB9163A2D40A87A248B9F2B46400103000000010000001300000080AE186481982D4040D2258B5730464080AE1864819C2D40607479E0142F4640402C75B9569F2D4008E8CF35CE2C4640A0322064219A2D40F880CF35EA2B464000FA1C6401922D40C02CD035662C4640E00C1E64618C2D40985ECF351E2D46402013C90E2C832D4040D2258B972E464000FA1C6401842D40C02CD035A62F4640402C75B956892D4028D5CE352E31464060C11964E1862D40F880CF352A354640C01F1F64C1882D40607479E05435464000BB6EB9168B2D4068557BE07C354640C0E070B9D6902D40A87A248B9F354640E0A1C20EEC962D4008E8CF350E35464040D41A64419B2D40D048258BE73346402013C90E2C9C2D40D048258BA732464060EDC60E6C992D40985ECF359E314640E0A1C20EEC972D4008E8CF35CE30464080AE186481982D4040D2258B573046400103000000010000001600000000FA1C64017D2C40F880CF35AA54464000BB6EB916882C4088F7CE35FA564640800673B9968F2C4088F7CE35BA564640E00C1E64618F2C4088F7CE357A554640E00C1E64618C2C40204FD035B2544640800673B996852C40F880CF356A544640C0E070B9D6842C40888D258B3F544640C01F1F64C1832C401804258B0F54464080AE186481832C4040D2258B97534640402C75B956842C4018B979E0EC52464040D41A6441832C4088F7CE353A52464060EDC60E6C832C40D893D0358A51464020E71B64A1842C40F880CF352A51464000BB6EB916882C40F8CB7AE00C504640C0E070B9D68A2C40D048258B674E46402013C90E2C872C40F035248B474E4640A032206421812C4040877AE0F44E4640C01F1F64C17A2C4040D2258B574F464000BB6EB916772C40D0B2CE3522504640800673B996772C40B0C5CF354251464020E71B64A1782C4040877AE03452464000FA1C64017D2C40F880CF35AA544640
 BG	0106000020E6100000010000000103000000010000006F030000486E45FD56553A408EFCD2C644DB444008572F4F7F4B3A4062146EE0EBDA444070589B5220463A40627C96BC81DB4440F0FDF0A7D1423A40D2548A488DDC44403000C8E8043C3A4012A2593277DF444088D9EA0AE7393A40720B9A59F5DF44405884A08C39363A400A3CC0980FE04440E805499A9D303A40D2C289480ADE4440F0236CBC97223A40860334F3DFDD444098A34F71BD1B3A408EDB299C2BDD4440F8F84160DC143A400AF3C6D212DB4440F0902EB2F4123A40BA3515EEC4DA44409019EDA735113A409242DD9DBBDA444068FAAD637D0F3A40568A12D188DA444000836C59BE0D3A40326FD029CBD9444038CFDB96500C3A409AD0AAEA33D84440309305F3270C3A406AC588C859D64440C81250D4DE0C3A404E365BCF89D4444068BC1267160E3A402EBC1F450AD3444028079EB53A0F3A409289F64667D244404821045621113A405E3E15EE57D1444030B5540EC8143A4056F67BD4B2D044402012B63A61183A402AB5BE186FD04440F071C011511B3A40262D077AE8CF4440C0908641831D3A40E6B703DDEDCE444020C70A90FE1E3A4086E69AD9D9CD4440A06DAB6359213A402608E55795CA4440D86A7BCD88213A407E73DE1D9EC94440F8AEE13323213A40C2CE68A699C74440F0A16A5996213A40B6F34484BDC64440B855FB1B04233A40623837104CC64440D02FF0A709273A405E3C7FF104C6444090E3806A77283A40321F99D96AC54440F8D0304FC3293A4042D3CC0CBBC34440780AD75C1B2A3A408E26C7D244C24440804E3DC3B5293A40F2B73BADD3C04440B05B2DB2C8283A406EA95DCF34BF444060792F4FCB253A403A94077A0CBE44406886A62958253A40E2DEE55730BD4440D0E3F97EFD273A408294AAEAEEBA4440305EE43313293A402EDB40E759BA444008ED4DD49E2C3A40760C087A16B94440E06481076A2D3A40A6D24E5B50B844408026F4E1F62C3A40DADA573248B74440003944FDAA2B3A40BEA025FFFBB6444068D3E7D00D2A3A40AA84DE1DC4B6444000184060B4283A40D64A25FFFDB54440F8FB22DBD8253A404EB05CCFCDB2444088651BA1E7213A40BA3523628EAF444088441704F11E3A403629E9F4CBAD444038A0B49D5A1D3A40AAAA3D4A77AD4440F8AD96B5791B3A408E4A9002A5AD4440A860A42998053A40625FFDA2BBAB44402806FA7E49023A402A049D761CAB4440A092DBF975FB3940E2B85CCF60A9444040CBAF9DAAF539408E256EE051A8444080708CDED5F23940C2AA910230A84440409B055665EF39407AE54F5B70A84440A0FF9DEFD2EB39405EA04ABE73A8444070CA0C9072E539404AB20EB433A7444008EBB7D7CBE139401633D7E3EAA64440B869B73AD9DC3940F26C9002B1A74440B037489A55D539402608E557D5AA444030B409909ECF39404E411251A7AB444098CCAB0000CD39404640731A45AB4440C0B74CD472C3394076A1E9F4D5A8444020A044FD8EBA3940FA40299C95A84440D0C22DB2ACB739400AC3091735A8444058A459AB86B439401A2DEB9155A74440B0342F4FB3B2394082949C76A5A644404054F644F4B03940BE7B115132A64440802BDBF911AE3940B23F3BAD09A6444038414DD4A2AB3940DED776B74BA64440F003B39D4AA63940C20B44847CA7444048213C26C7A339404E8AEF2ED1A74440E89F03B92E8D394016A1D6E367A84440D8BD7E6AB7893940C2E5C86FF6A7444008127E6ABB8739409699838EC0A64440F0292EB21086394076C6EF2E56A54440003D70F6D083394092907EF148A44440605AF97E4D813940E295DE1DEAA3444090AEF87E517F3940EAB3C96FFEA344409041FEB84E7D3940CA338D653BA444404829B000A67A3940B60C731A53A4444040AB4A37167439400A326209E5A34440D849931825493940AACDAD87A49E4440780FA28C234339401E345A327A9E444058CD9952363D39402A4EFDA2D59E4440C08A9FEF3C38394012A25932F79F4440F0059D52562D39406EC2A74D9DA5444068FA917B6A2839403674949F2EA7444030D9D08B622739401EDEA04E5DA7444048A23726D51D39408ABD30D60DA9444048B73EC3D31C39409AF5BE987DA94440800B3EC3D71A3940466D79B7C2AA4440D0540456131A394012C6226217AB444068675471C71839408623A01319AB4440E08F8F7B92143940466D79B7C2AA4440901EB8D7BDEA38404E40B95E74B14440F0BFA0EFE8E23840428AE1BA47B34440289F156778DF38401EECB95E70B3444050FBA429EEDC38402E0EED913DB34440687206F395D738403EB4A4B086B24440B8A10D2DA3CD38401E73E7F442B24440C029DAF9D7CC384016E9A0138EB04440A09C261588CD3840F25F5F6C53AE4440D07D60E555CB38404EF7BF9877AC444020367F6A41C638408A982A9C8DAC4440E878213EACC03840463F44846EAE444050D4DE96FEB73840A6D103DDA6B24440F084E66DFEB23840CAA04F5B58B4444038F99E8C4FAE38404AF2F4682FB544401034B19D48A938400E14AF8776B54440B8FEA62962A338400E14AF8776B54440402D14CAF1A438406AC3E457BDB64440C0080E2D079C3840E240F1CBAFB6444000B1931889983840FE611FC502B74440B01A8CDE979438403A93BCFB62B84440381DBC7468943840CA0FC435DBB84440285919040B9538402ABD559545BA4440B8566282C094384006F9B224E8BA444068E15EE5C5933840A2D3C33556BB444028F7D0BF56913840F68C2D39EBBB44407004C1AE69903840DA0A4DBE4BBC4440C01E2878098F38403A008D6509BD444010707ECDB68D38407A9B0B178ABD4440F8B68DDEA78C38407235727D22BE444098C14D37EA8B38409245E1BA2FBF44407088203E188B3840EA1F4F5BBBC24440B0A85271EB873840CE796DE015C64440B02CB2009A823840AA851B28E4C7444080751F3E387B38404AB4B224D0C644408074D4BF8E75384046DA2D3956C644409066126758703840EAD5FCA28BC344408896EB0A896C3840C65D505B3AC34440A8D65D4823673840021477B790C344405840560E326338401E5B20C569C3444088DF00B9985A384072C6198B72C24440D07C4D375258384012A22FD65AC2444078FC30EC77513840565FE1BAA8C24440401C71F63E4F3840FA41828E88C244402834213E944D3840AEA45F6C2BC24440F846EA6DCE4B3840A688188BF3C1444030DF4FD46C493840F645CA6F41C24440B8A0C2AEF9483840A61C939FF6C24440105A2CB28E4938402A717B540CC4444020DA68BC514938407AE4DA802AC5444038D6749351443840FAF8A4B05EC6444090429DEF3040384056825F6C1FC8444068751F3EB83B3840B2C3953CE9C74440B0AD01B9E0363840A2AFDE1D23C74440304CAC549C323840967FD0611BC64440F858A9633F3238405E3C7FF104C64440800B76937D2E384026093E4AC8C44440805285A46E2D384026539002F8C344407062A529522C384016E6953CF5C14440F86C6582942B3840160C11517BC1444070B94DD4AC29384012EC818E8AC1444060C96D5990283840A686741A17C24440081894186D273840167CB4C1D4C24440386C93187125384002161B286DC34440B8804160D21D3840B2EA3FE745C44440E06E8BDE9B13384072EC6A439CC44440A0491A041F0C3840329B3E4A4BC3444070857793C10C38409245E1BA2FBF444058F8C3AE710D3840A2673E4A59BC4440787DE7D04F0D38400E13569543BB4440F04E7A30C00B3840727E4F5B4CBA444068E758ABE4083840EA21D7E3C4B94440A08267BCD905384026C19D76FEB9444020CD203E30003840826E2FD668BB4440D08E0C2D43FF3740665C1C287FBA4440C099459A0BFE3740229F6A4331BA4440B0F2B29DA4FC37402ADF88C812BA4440E83E22DB36FB3740AE6768A6B5B9444080306E59F4F63740369704DD1BB8444040D63CC32BF3374056159D7602B8444028A060E521E737403276468454BB444078B0729311E53740C22F299C6FBB4440608371F622DE374056A9178B05B94440B8EF995202DA374042D3DA8044B8444068E9EEA7B7D43740DAB4DC1DC2B744404068671F4BCF37402EB898D986B74440B018F6E1C4CA37405A5903DD9CB744405887D5BFEEC637405E633710EBB6444018C0A96323C13740B6E75E6C49B34440206BD8F9FBBC3740E270CA6FE0B244403053570E92B43740AA850DB49AB34440F0ABE4D013AC37405EC413EE93B34440A02AE43321A73740FAAE4484E5B24440F8725F48B3A03740922FBEFB72B044400050B9F4F59F37402AE6719C44B0444070524DD4C89C37405AF834737DAF4440E8B2F14436943740B615949F9DAF444000B5F7E154833740928F41E7E8B24440E04B61E51D6A3740A28BF90530B34440D8C2499A3F653740AAF1929F97B24440B04F1D3E785D3740028D3BAD74B0444010C9BC74E4583740E6932C3984AF4440004835EC7753374086B6EB9145AF4440C8DDE3D0CB5037402E4BF2CB3CB0444050005471634E37404AFEF668B6B1444008F21804A74937408E6FB224F8B2444018E1AD001A453740A2AFD0A9D9B244400068B63A1F3F3740FA1ACA6FE2B1444070E4773068393740F26CACEA83B0444008CE33ECB3353740E6B703DD2DAF444050121367D43437409642004033AE4440505679CD6E34374032DAD980DDAB4440F031DA5C1533374082491B289FAA4440A08322DBCE303740AEF80140BCA94440C09EF4E1002E374092DB1B2822A94440B098C24B3C283740424241E77DA84440709B9A527E1D3740B2C539AD05A84440B005BD11BFEA36405E89C098FAAA4440404595B5DBF036400612EF2EC7AC44407883A9C6C8F13640CE7989C828AF4440904AF5E17CF036401679D346D8B14440B8137F6AF5EF36407A9D939F93B44440E04CAC63C7F036402E9247215DB544407822AC00BEF33640DE206209BFB64440485E099060F43640FE3D482159B7444030E65C480FF436401E598AC816B8444058FBDCF993F2364006A4B75E64B94440F0C136EC3BF23640FE241A8B03BA4440E03CE9B98FF1364012139241F8C24440B08809F369F13640CEE7963CEFC44440A0F3C54BA8F236409E91F3CB0EC7444040B28F7BDEF236406EE4B024CEC74440F0F8257849F23640EE1C52F8ABC84440285A9C52DAEF3640B2D0E2BA19CA444000216F5908EF36407AE525FFD3CA4440B8A3DBF99BEE3640FE432DB989CC4440A8239FEFD8EE3640421D115161CE44400050CE22A4EF3640C25B894826D04440404595B5DBF036409E8B0E349ED14440E0BC4FD420F2364036985DCF0ED24440784B406026F6364012F6ED917ED24440F03DD75C8DF7364026A0D863D2D24440E8B50A9058F83640EE64F2CB75D3444080E95E4803FA36409ECD919F51D54440101CEE6F45FC3640B29E856AAED644405029B000A6FF36408E4C26FFB7D84440C0C2D9F973023740424E27FFB1DB444068C50990440237404AA61A28B6DE444048C19C52BEFD364042FDA43068E1444080D457AB04FB3640FE85E8F4E2E14440A0177393F5F43640F645CA6F01E24440A832459A27F23640C29CCFA979E24440408EE23391F036409A449DF66AE34440303F631F17EB3640961F828E3CE8444080E926785DE83640BA9CD6639EEC44404838C64BC0E63640FACBCF2922EE44407004F97E8FE53640DE474B3EA6EE4440A86DFF1B92E236403E3F2F5640EF4440D828068AD0E1364052DC083091EF444060F314677CE136407A2C7B54B4EF444030F6BD11D3E0364092954267ACF04440C0AFA029EEE03640466E9AD98FF24440603F0B9088E0364076C5B22476F34440E8DCD022C8DD36409E44C09862F64440E074BD74E0DB3640E201482154F944406836304F6DDB3640FEB0EFAE66FC4440E0BBCC85D1DA36402EE28CE5C6FD4440C84ED2BFCED836404ECE247F2AFF44406856E96DBAD836401A32A1932FFF4440E0971F3E84D836403E01ED11E100454010B6D6A07AD836407EE588BCF20045400861A9C6FCD736405AF370FDD9014540906E12CA95D636409A8C4B3E7E0245405891FB7EB3D33640369552F835034540401C71F63ED23640A26288483F0345404047638254CE3640EE698CE5BC024540C89832EC87CC3640D62B12D1B702454030773C2685CA3640E2933AAD4D03454090BB1BA1A5C93640AAA6D9802B044540F040B8D709C93640EA1D818E02054540908FDE96E6C7364092BFFEA286054540F8A7800748C536401679E1BAA1054540906C44FD9CB93640926FD5C66F05454030C3FA7EEBB73640125952F8B0054540D811213EC8B636405664894839064540D05D1767D4B53640D630BA5EC8064540C09F3F60AAB43640FA88D7E328074540D8F2F3E104AD36409ED1FC22C207454050FD60A68EA036403271F6D1200A45408816F044269E364066A36309960A454020515171F38736402AC668A686104540B813B73A9B823640BA5EA29388124540E09C48B9C681364086F3890C1013454038BCB53AA37E3640B2D0D44610154540F01D1E3E407B36405EFADF9DBE184540408EE233917136400689E557721B4540F063527153583640F6FA1EC51E28454060AE6382385D3640928F25FF1529454028B3A229E26736402650939F28294540A87DF0448A6C3640FA6D05DDB6294540089434893E70364086B12ED6862B4540D0F01CA15174364066F233F339304540A03B20DB4278364092DDC65223324540A8102E4F2D7C3640568251F8D532454098B1F5E1607F3640FAEE4DDB1833454058DA102D43823640AAAC12D1D4334540807B51D4FC8436406AC140E7E035454060D3CBE87A883640167FC652923A45409843E86D5A8936408E91D7E33B3D4540D04BF14452883640B6AEA8CD273F4540D04BF14452883640BEEC22E22C3F45404861EA0A5D8636409AF8D029FB404540488933EC1B833640B6ABD5C674424540F01D1E3E407B3640FACBB3418F444540A0F27ACDFE6D3640D24CD7E32349454090029B52E26C36402A4AA74D534945400034B19DC86D3640EE1F5615E04B4540F0BB153BFA7036405EC0639602514540A8C2A129CE713640C2CA12515752454080F66EF6FE72364056F522E27F554540D886449A2B7136406E2D9C7641574540E009917BD67736405E3C6309F25B4540F01D1E3E407B3640A6CDAD87245D45404020D5BF8A7B3640B2CE4CBE865D4540A018BE119F7B3640EA64E457EC5D45404020D5BF8A7B364076C30040505E4540F01D1E3E407B3640CA9E9D76B25E4540E04DF7E17077364056633ECACF5F4540A078705900743640E2DD8C65BD61454058FA917BEA6D3640169D8E022F674540687D7730046D3640CA9C15EEA8674540503911CA696D36403ED4178B24684540B80470B8316E364096A13EF7956845406062A529D26F36405EF97837826945408042651F0B72364056CFB541436A4540F03DD75C8D783640FACF2C39896B4540F01D1E3E407B3640AAA451F8616C4540C03619043F7F36407E4C0A17A56E4540C05AC64B8C813640BE350E34606F4540E0733A2611853640B6A5C6D2676F4540B884A5299E893640CAE788C8256F45406026D8F9638B36404646A5B0896F4540E822560A778B364022769913946F4540606473F6CA8C364076281E454D704540B070E90A499036400E9F392D30714540006CE2334597364052CCA3B085714540D09270F68EAA36406E3252789B6F4540F8059D5256B23640AAAB9DF64E704540A02DC5AE1DBA364052CCA3B085714540A085B8D721BD3640D2DEC96FDD724540A021390655BD3640627993C30D73454048F0FB1BDABE36401A9C66267D744540F03F6D5960C33640229521E2B47A4540C02FD4BFF6C43640FAF440E7527C454038DE0456C3C63640D29A6AC3677D45402075FEB8C0C936402E72BF18117E4540C829DAF9D7D03640324AA093AE7E454098457E6A2DD43640EAD2E357297F4540E006783034D43640EAD2E357297F454010C871F63AD43640125663092B7F454010C871F63AD43640EAB9DF1D307F4540F01A05F39DD73640568114EEF5804540806331EC5BE236400E5952F8B084454080D3D45CB5E336403E00941FAE8545407004F97E8FE536405649B74107884540307CB39DD4E63640C27ACD8CED8845405025840700E93640725196BCA2894540A07725DB56ED36408E9E16EE628A4540789104F36DEF3640B2A2C2B5F38A4540689FC64BA4F4364042B816EEDB8D454068EC07F359F93640AEA154951292454060CC4ED40CFC3640CE39872B5A964540300012769FFB3640B2079808FA974540A8DE25DB3AFB36406EC2A09378994540A0846D59F8F636403ADE6E602A9A4540000B1D3E60EA36404E40ABEA2A9B454010FAB13AD3E536400EC15EEC339C4540F0A94ED440E236406689CE0C849D4540E0B823DB7ADB36403A2167A6E3A04540288162E549D53640D277DE9D27A345405891FB7EB3D33640D6DBBE9804A445406019C84BE8D23640D26F39AD07A54540005690181DD236403AD85F6C5DA745403063800730D13640AAC9573262A84540904CC3AEF5CD364042DD1C281CAA4540E09A3889A6BB36404E20156ED5B04540C8052F8D6EB93640AA771A6B6AB1454080F7B97428B83640DA06E9F4BFB14540906BF97EF3B33640729F371070B24540384A7CCD76B13640C67E1C288BB2454030C1648298AC36401A80347373B24540E8D6D65C29AA3640A6FEDF1DC8B24540D0F3EF60AFA83640E689BBA25DB345409071F34412A836404E958AC89BB34540000AD2BF36A53640BA56D346CCB54540502CC94B48A3364016654D3E93B6454000792AB2E6A03640EE6DCD0CD1B64540603EC0115F9B364022BA271CB5B64540309D7F6AA59836401E7FF0AEEEB64540E8B2F144369636405E1140679BB7454080A194189D923640EA94BDFB5CB9454040B45D48D7903640FE1AD12907BA45409858EF0A598836409EF914EE7FBB4540F0F37630D48436401E0EDF1DB4BC4540B009E90A65823640CADEA6CD25BF454070C4BE119B7D3640C68287AB3BC54540C8B2E8D07B7A36405A80A6CD94C74540A0A81AA1457A3640720D458436C84540C0E9D75C897A3640B6A61FC5DAC84540F01D1E3E407B3640160EBC7B7CC9454088E1CE85917B3640A28C6726D1C94540189BB19DAC7B36406EE510D125CA454088E1CE85917B36409ED4004076CA4540F01D1E3E407B36409A4071FDC4CA45407823F77E677A3640324DC09835CB454040E239C3237A364032274584AFCB45407823F77E677A36409E20CD0C26CC4540F01D1E3E407B3640BA3F57959CCC4540B8610B90547B3640769C4821AACC454030E4FE1B627B3640E2D93610BBCC4540B8610B90547B3640123D27FFCBCC4540F01D1E3E407B36408AB88F02E2CC4540503317044B793640EA4A79B776CE454000FF570E0E793640BEAA838E66D14540180A0A905C773640AEF64F5B16D34540B8ACB63AB7743640A66CDF1D05D4454078B94DD42C6D36405EC7170B88D5454008648A41F9693640366D41E79CD64540D87EE333A56736407A2E267FF5D745407050EFA79B653640CA0B52F885D94540A82999B5F76336401EEE648931DB4540C82CBB74D4623640FA84731ADDDC4540B8F5CBE8C6623640769BE1BAEDDD4540D0A9D5BFBA633640EA253BAD10E0454098681804776336408A2AFA850FE1454048F2C9E8D25C36404EDCD1A9F2E3454050152CB276593640DA7252F869E745404885CF22D05A364072C8C4B533EA4540006A8407185E36402AE3C9EF26ED4540C8080E2D87603640FEA4105117F14540507E8ADE076136400A5C3373EDF445408080C84BCC61364082788D6593F545405824398956643640CE53156E47F74540F0D58BDEFF6436402ADB40E7D9F74540408FF5E1946536409E673E4AD9F94540000AD2BFB66536404E0102408FFD454058C33BC34B6636405ECB66A625FF4540802016046B693640DA9926FFE20046409026489A2F6F364012F13E4AC90146401081964144773640CE75008241024640F01D1E3E407B36408E4488C87C024640A02B6782F08036408A24F9058C02464058BD79CDD283364072562262E0034640F8A78007C88536403E04C7D2B805464010C984A4BE8836408251ABEA50074640509840C3FB8D36407609FDA2FD07464050DDF1A73F933640E6681EC5DB07464040EE5CABCC973640028A4CBE2E084640B8FA4BD4D09A36409AB2CD0C290A46401085560ECA9A36405E83AAEA480B4640705102561F99364072E6707DFD0D4640B85B499ADB98364046FAAE873D0F464048D1C54B5C993640F2683AADAE104640B02E19A1019C36409A20E9F478144640003479CDA29B36400E7E66A67A14464070BEFC1B229B36403ABD7FF1E114464020BC459AD79A36409ED24E5B901546400841F0A72F9B3640E269852B5816464090BB5371CB9B36403229DB808216464000C520DBF29F3640469A1D283E18464058243989D6A33640FA3A4BBE891A4640C0C5F24416A63640EA92EF2E641B4640F0A0EE570FB136401224CD573D1D464050717A300CE83640EEB430D6BA0F4640A08322DB4EF1364076E2289C440E4640D0FD641FF3FC3640CA09BCFBB20D4640287E736320023740FA6A956DDB0C464050C6540EEE073740BA618AC8E90B464098ABFB1B420A3740DE280040FA07464008986082E40537402673F5680C044640D0FD641FF3FC364016CBC33543024640B04007F35DF73640822C89C8FD01464010F04A372EED3640BA3DC198C9004640C0E99F8CE3E73640F61B077A82004640C8E0C44BC8E2364006AABF984CFF4540C0C4A7C6ECDF3640322A26FF6BFC4540008DE6D0BBD936401AE4146ED0F24540E007C3AEDDD936403A2601C0EAEF454068E7907B0ADD3640E26DB1247EED4540A82109F385E33640C639807175EB4540C802146768EB36404AAD6DE0C7EA454060CA15FF730D374046F86285E1EB4540F0A94ED4C0213740260BE97489EC4540D08D89DE73293740364BF2CBBCED454050E97E076C323740FE66C0986EEE454008CCD5BF063C37401EA420454BF04540F03510143D53374002E419DB7BF1454028C445FD147C374096FBB1A4B7F0454078176A1FBB973740EE4904DD30EB4540B0D38A41F09E3740D6F15ED6C0EA4540D05A36ECD7A23740EE91B22484EA454080E95E4883B83740926CAE0744EC4540F89EA5C62CBE3740DE015695DDEB4540B085F0A7C7CC3740CEE2F568C3E8454040BB5B914C2638400A4CCDA99AE045405049314FCD283840A2406A4360E04540608D015332563840A22A62222FE14540301BE533B55B38404EF5FF3F48E14540A8656F592060384062844267C6E1454078C70F2D636E38404A66188BA7E54540C098FA1B62773840E64A48A1B5E64540107C43FD088038407EA1E9F455E64540A0C68C5069A938408A1CF95BB9E0454040F74060A2B43840DAC15AB233DF4540E878213EACC038400A86FD2291DE4540605CAB63B3F63840AE14180BF3DF454010083CC3E3143940BA0DCC0C06DC45406057C44B183639408A2DF7E81EDB4540A06B314F994039400215E5D731DA454060BF8E491049394016AF1BBE5ED845408800CD85E9493940727CABEA2FD84540B05EF244B2523940EA476726B9D5454010768107105C394006CEA4B0BFD34540B87A479A33673940A6B631D634D34540583A5C48136D3940EA889F13C3D34540E046B29DA87739406EE7A6CD78D54540904772D8817B394052E48836B9D54540B88F324F1F7D39403A274C3ED4D54540C0048E7BA88839405AA7884897D54540508DB39D7A8E3940B6141151CED545401050EA0A37933940E26B299CB4D6454020A212CA07983940623AFE2220D7454080693E26D39D39404EC9911F08D84540A021B53A4DA33940EE92198B40D94540F0EEAB004CA739400E7FB124A4DA454010C110CADFAB394006814067D2DB45401016DB79A2BB39408E9D230401DC4540D0C3783056BD3940BA0DCC0C06DC45406807BE11F9C73940CA9E9D76B2DD4540D00AC011EDCD3940A61403DD44E14540900A47FD66CE394022C348A1BFE1454008A5BB74DED639405ACE5595EBE44540201301B98ADE3940A21B3AAD83E64540780AD75C9BEA39403A6FDE9D14EC454010FAC4AEABEC3940760A4821E7ED4540D0984ED41AEF394056AA85AB66EF4540900A47FDE60D3A403E1D03DD97F7454050B160E5C70F3A40D645842B92F9454070B5CD224E143A40DA4E89C809FC4540B0104A37C01D3A400EA22FD6DAFF4540D83C678296263A4056ED6F7D96014640F094927B403B3A405A3C7FF184034640F06F2A157E4F3A402E9841E7BB064640D8356FF013553A40DACC2ED3070746406084EE41716A3A406A0A303B2A0846407010D1223A9D3A401606178BDC0A464040712678D3A53A40DEDD7EF1F30B4640E8EFF67EF5AA3A40F2F9C5D22B0C464030DA84A464AD3A406E5A862B6C0C4640C0DC60827CB23A40966FDC80940D464010886F596CB53A40CE07188BD60D46404842D022F2C03A40CE07188BD60D4640089B95B519CA3A405A3E15EED70E4640F08E281556E23A40BAC2583209144640B8BFDC9664003B40B61D404A2215464088812FB208073B40DA073473A916464050AB661FA9193B4002F867A67E12464048403A269F343B40E26ADE1D8B10464060C1C1AE0B3A3B40EAB878B7730F4640B07B76304A403B408E7742E7A90F4640A009A27CAE403B40A2A821EE8D0F4640D04DDBF9DD443B4062A20A17630E4640105F13CAA9433B4082E4F6687D0B46401064A6290C493B40063CB22446094640E8011DA177573B402A78B224CB064640481B0A90825A3B40D2C43473CB05464020E80E2D755F3B40DE03DE1DA70246409081382643623B40864C188BEE01464090A204F313933B40222B717D15024640A03DD2BF28A23B4006193473CF034640E03BEDA701A83B40FE42F7680E03464010CFD22216AD3B409E8C606C2CFF454058F32C4DB9AE3B4062DDA9675EFE4540F0BE0A2DC1B83B400ACBA74D70F945401810203E8EC93B403EBC26FFEEFA45404047479A41DB3B4002D4828E8BFE4540B0E7EDA77DE93B405ECB66A625FF4540B0E7EDA77DE93B40BAEA694322FF4540F065CC8593EF3B40E2B4226271FB4540C8E7257823FB3B400AAB3B2DB7EC4540907F6A59CA033C405AF377B73EEA454010812A15A4383C40D655C09888E14540F01D1E3E406F3C409A1532731BDE4540501910B210943C40D2B2CE35E2DE4540007D0EB280933C40A87A248B1FDD4540B0766307B6923C4030B6D03596CD4540D063620756933C40204FD035F2CB4540B0E00CB2F0953C4040877AE0B4C94540805DB75C8B983C40D048258B27C845404083B95C4B9A3C40888D258BBFC64540007D0EB2809A3C40D0B2CE35E2C44540B076630736983C40680AD0359AC145409089640716943C40D893D0358ABD4540B0E00CB2708F3C4040D2258B17BA4540501910B2908B3C40B0107BE0A4B84540F0506107F6883C40B0107BE024B8454090896407167D3C40E019CF3506B4454070060FB2B07A3C40D893D035CAB2454090F30DB250793C400017268B2FB14540206A0DB220793C4040877AE0F4AE4540206A0DB2A0753C4088F7CE35BAB04540206A0DB2206A3C4008E8CF350EB345402096BA5CAB673C40F8CB7AE0CCB3454090F30DB2D0643C40F035248B07B54540E08F0FB2605E3C4068557BE0FCB54540D063620756523C40403CCF35D2B6454090896407964C3C40D048258B67B64540F0506107F6423C40680AD0359AB4454030570CB2403E3C40204FD03532B44540501910B2902D3C4088F7CE357AB4454030570CB240283C40204FD03532B445406070B85C6B1E3C40985ECF351EB24540B0E00CB270173C4030B6D03596AE45400013650746163C4078DB79E078AD4540F0506107F6073C40985ECF35DE9F4540007D0EB280043C40D893D035CA9D4540805DB75C0B003C40403CCF35929C45409089640796EE3B40680AD035DA9A45402096BA5CABEB3B40985ECF351E9A4540B0E00CB2F0E93B40C02CD035E69945406070B85C6BE73B40C02CD035E69945406070B85C6BE73B40E019CF350699454090F30DB250F03B4040D2258B97964540501910B210F23B4088427AE09C95454030570CB2C0F13B4088427AE01C944540D0636207D6EC3B40D893D0358A8E454090F30DB250E93B4040D2258B57884540007D0EB280E73B40C02CD0352687454030570CB240E53B4008E8CF354E86454030570CB240E33B40B0107BE06485454070060FB230E23B4060BF248BF78345402096BA5CABE23B40680AD0351A814540007D0EB280E63B40888D258B3F7B45406070B85C6BE73B4088427AE09C784540007D0EB200E63B4040877AE0F46F45406070B85C6BE73B40D893D0350A6E45404083B95C4BE23B4040D2258B976C454070060FB230E23B4068557BE07C6A454030570CB240E43B4088F7CE35BA6745402096BA5CABE53B40680AD0355A6445402096BA5CABE53B4068557BE03C5E4540805DB75C0BE53B4030B6D035D65B45406070B85C6BE43B40204FD035F25A454090F30DB250D73B40F880CF35AA5A4540501910B290C93B40D893D0358A5B454030570CB240BE3B40D048258BA75B4540501910B290BB3B4040877AE0745B454030570CB2C0B93B400017268BAF5A4540501910B210B83B40D048258BE758454030570CB240B73B40D0FD79E084574540805DB75C8BB73B4030B6D03556564540E08F0FB260B93B40A87A248B5F55454090F30DB250BD3B40985ECF359E544540F050610776B63B4028D5CE352E54454090F30DB250AB3B40B0107BE064524540501910B290A53B407871D035FE514540E08F0FB2E0A03B40B0C5CF3582504540E08F0FB260A13B40C02CD035264D4540B076630736A43B40403CCF3592494540B0E00CB270A63B4028D5CE356E47454090F30DB250A23B40D048258B27484540F0506107768A3B40D0B2CE3562484540B0E00CB2F0823B40D893D035CA464540206A0DB2A07F3B40D048258B2744454090F30DB2D07D3B407871D035FE4045406070B85CEB7A3B401804258BCF3D4540D063620756763B40F880CF35AA3E4540B0E00CB2F0733B4040877AE0743D4540501910B210743B40F8CB7AE08C3B4540B076630736773B40403CCF35523A45404083B95C4B763B400017268B6F394540805DB75C0B763B40E019CF35C6384540B076630736773B40403CCF35D23645406070B85CEB773B40F035248BC73745404083B95C4B783B40204FD035F23745402096BA5C2B783B4050A3CF35F6374540B076630736773B407871D0357E384540007D0EB200793B40985ECF351E3B4540007D0EB200813B4088F7CE35FA374540206A0DB2A0833B40204FD035B237454030570CB2C0863B40D893D035CA38454090F30DB2D0883B40E019CF35463A4540E08F0FB2608B3B40D0B2CE35E23A4540E08F0FB2E08F3B40985ECF355E39454070060FB230923B400017268BAF3A4540E08F0FB260943B40E019CF35863A4540F050610776963B40D893D035CA394540F050610776983B40985ECF355E394540501910B2109C3B40888D258BBF39454090896407969E3B40680AD0355A3A4540206A0DB220A13B4040877AE0B43A454070060FB2B0A43B40403CCF35523A4540501910B290A43B40F880CF35AA3945404083B95C4BA43B40D893D0358A3945404083B95CCBA33B40403CCF3592394540B0E00CB2F0A23B40985ECF355E394540F050610776A43B40D048258B27374540F0506107F6A63B40403CCF3592354540B0E00CB2F0AA3B40B0C5CF3542354540501910B210B13B40403CCF35D2364540805DB75C8BB13B40985ECF359E354540F0506107F6B23B4088F7CE35FA344540B076630736B53B40607479E0D4344540501910B210B83B40607479E014354540501910B210B83B40A87A248B1F3445409089640796B63B4050A3CF35F633454070060FB2B0B23B40888D258B3F3345409089640796B43B40888D258BFF3145402096BA5CABB53B4028D5CE35AE314540501910B210B83B40888D258B7F314540206A0DB2A0B53B4088F7CE353A304540D063620756B53B4088F7CE357A2E4540E08F0FB2E0B63B40204FD035B22C454090F30DB2D0B93B40D0B2CE35622B4540805DB75C8BBD3B40D893D035CA2A4540805DB75C8BC03B4028D5CE35EE2A4540B0766307B6C33B4008E8CF354E2B45404083B95CCBC73B40D0B2CE35622B45404083B95CCBC73B4030B6D035962A45404083B95C4BC63B40D0B2CE35E229454030570CB240C63B4028D5CE352E294540F050610776C73B4068557BE07C28454070060FB2B0C93B4008E8CF35CE27454090F30DB250C33B4030B6D035D62545404083B95C4BC03B4050A3CF3576234540007D0EB280C13B4030B6D035162145404083B95CCBC73B40C02CD035261F45402096BA5CABC63B4008E8CF35CE1E4540501910B290C63B4018B979E0AC1E4540501910B210C63B40204FD035321E45404083B95C4BCF3B4040877AE0F41B4540B0766307B6D03B40D0B2CE35221B45406070B85CEBD13B40204FD035321A4540D0636207D6D43B4050A3CF35F61845404083B95C4BD83B40403CCF35D217454070060FB230DB3B4040877AE0341745402096BA5CABDA3B40E019CF35C6164540F0506107F6D93B40E019CF35C6154540B0E00CB270D93B40D0B2CE3562154540805DB75C0BE13B407871D035BE134540007D0EB200E33B4088427AE0DC1245406070B85C6BE73B4030B6D035560F454070060FB230F53B40403CCF35120C4540E08F0FB2E0F63B40607479E0D40A4540007D0EB200F93B40C02CD035A6094540501910B290FC3B4088F7CE353A094540007D0EB280FB3B40403CCF35D207454030570CB2C0FC3B40A87A248B9F064540B076630736FF3B40D0B2CE35A20545404083B95CCB013C40680AD035DA044540B0E00CB2F0013C4050A3CF3536044540501910B290013C40D893D0350A044540E08F0FB2E0003C40F035248B07044540805DB75C0B003C40C02CD035E6034540F0506107F6023C4068557BE0BC024540E08F0FB2E0043C40607479E014014540B076630736053C4008E8CF354EFF4440805DB75C8B033C40F035248BC7FD44404083B95C4B043C4068557BE07CFC4440C8E7257823FB3B401E5AD54640FD444040950B9046F73B4086535DCFB6FD4440685FA8C6C2EA3B405616E8F42BFD444090072EB244E73B40B62FFF3F93FD4440F8CAFEB87EE03B40B28842E7CFFE4440681861E52BDA3B40C62EE5D76AFF4440E871C011D1D73B40AAD0DB0075FF4440E0E8A8C6F2D23B404ECE247F2AFF4440A8EAB23AE7D13B4062813E4A52FF4440B044BF74E2D03B40A6B2F0AE60FF44406001C44BDACF3B4062813E4A52FF44406816CBE8D8CE3B404ECE247F2AFF44405859921811CE3B4002EDB024E1FD4440F05293B50DCE3B40BEA1707D25FC444080A627787FCD3B40B281F6E8E2FA4440E8B823DB7AD13B406AEC6389F7F9444020BDE4D0B9D03B40D603EC9130F94440B067213E86CD3B40D22967A6B6F84440004C7DCD30CA3B40D27B34F3A9F8444010F402B9B2C63B409A62818E1AF94440C8C3783056B93B405A16FD22DAFB44409868FC1BE4AF3B406EE21A28FBFB4440380C102DFB9B3B40720A4FDB0BFA4440308BAD005C9B3B405235170BC5F84440C05997B5759A3B403251FA0525F84440C8E9F3441C993B407AA23B2D24F8444090C0E6D02D973B400E3D2EB9B0F84440A80FFFB816953B4076C8B641AAF74440582EA08C7B923B40BA5A1B2805F74440E86F2A15FE8C3B4066A355954CF6444050A9D022568D3B4016E6A3B0FEF5444080DD16040D8E3B408A655495CDF54440909A4FD4D48E3B4086A0C118A4F54440C0139B52888F3B40A2006F6076F5444098DA6D59B68E3B40DADEB4412FF54440A8EA06F31F8D3B40D2724484E0F444402870A329848C3B405E190FB497F44440804A11CA0F903B40EE1AA01306F444405834469AE18B3B40FA624E5B59F3444090E1B29D7E883B40DA2AAB6A3BF44440301ECF226C823B40AE866D6072F74440C010BAD78B7E3B40DAB9AE07AFF84440209EAE00BC6B3B40565CF2CBA2FC4440589DDC9698653B40CAE8EF2EA2FE4440A85D8BDEF55F3B40A6ACEF2E1D014540705B7CCD1C553B40860927FF5907454080217D6A274E3B407E298C65EE0945407889BF74FA453B409AB8B95EBE0B45403021CC85FB3C3B400A5C2CB9880C454010646E5966373B40A6D0B85E3D0C4540B801AD002C343B407A992FD6470B4540883F68BC7B2E3B409E894EDB6E084540F08D1567D22D3B4032E2939FEB07454050CF4B379C2D3B40AEA3067A7807454040DF6BBC7F2C3B402E0AB3244E0745409855A7634B263B40C28416EEE907454038176EF690203B402632BD7B0208454030FB5071B51D3B40C28416EEE9074540E0644937C4193B402AE422E2190945409012A8636D153B40CE08717D090A454010485A48C5103B4066A36309960A45407079AA5F430C3B4056536E1C9D0A454070C54160EA0B3B406A131CA89D0A454018CB6E59CA053B4036FEC55275094540D0082A151A003B407A9A88C87A054540F83B257827FB3A40CA9911D134044540C0A6BC7498F73A4016F3E2BAA5034540A83D0A904EF53A40CE2A739A55024540C08C227837F33A404AB1C335CA004540B87005F35BF03A40A6B04C3E84FF4440989045FD22EE3A40DE6E035D4CFF4440F0441CA155E93A407A4BB8DE96FF444028E1C9E8ACE63A404ECE247F2AFF4440B07E8F7BECE33A400622325622FE444030D8EEA791E13A40DEDC2CB925FE4440B8FA5E4829DF3A40220A973C7BFE444040CA2C4F5BDC3A402A9ADE9D73FE444048B3F6E19AD93A4026524584CEFD444098BD8B8F80D63A4042E71FFED3FC4440C82FB8D7E3D33A4002F5551501FC44402009DBF9C5D13A408E64FBA29AFB44404869B29DF4CE3A4086093573E3FB4440005B773038CA3A40FA82E4D76EFD44407038E233D3C73A4002EDB024E1FD4440C05DFB7EC1C43A400E88CBEF89FD4440A0D78CDE39BF3A406A5A638974FB4440803B334F9BBC3A40BE839A59BFFA4440C8EA22DBB2B73A401AC5D02989FA444070396582A29F3A407239CF8C09FC4440486700B90E9B3A408A29C435D4FB444058122F4FE7963A4032E8A293B8FA444030F2A48C858F3A4042D3DA80C4F7444070B482A4A48D3A403E4B23E23DF744402010203E0E8C3A40CADCFBA2A4F6444008572F4FFF8A3A40063A156ECEF544408095BC74728B3A40C69E96BC4DF5444060319DEF8A8E3A403E64517893F4444020E8D65C4F8F3A402E2CC3B523F4444080290D2D198F3A409223BCFB6BF34440A0FA2678038E3A40DA52DF1D4CF24440D04374F6B88D3A4096494C3EA0F1444008C35F848A8D3A4056CE3FB0D9F04440503CD65C538D3A40B6CB41E7EDEF4440780DF0A73D8C3A403E9559B29AED4440C8E612CA1F8A3A405ACFB54143EB444008C68741AF863A40D2C27BD480E944409892DBF9757A3A404AD0E4D719E844407039658222603A403EFC361087E84440D02C0F2D8D553A40E23FB4C10FE54440B00EB43AED513A40B684D0A9FAE14440B05AAA63F9503A40F2609C7633DF4440F047E133BF523A40E672759AA1DC4440486E45FD56553A408EFCD2C644DB4440
 \.
+
+UPDATE users.responsibility_areas
+    SET area = ST_Multi(CAST(ST_Buffer(area, 5000) AS geometry));
--- a/schema/gemma.sql	Mon Nov 12 14:45:07 2018 +0100
+++ b/schema/gemma.sql	Mon Nov 12 14:48:18 2018 +0100
@@ -416,20 +416,17 @@
         coverage varchar REFERENCES coverage_types,
         depth_reference char(3) NOT NULL REFERENCES depth_references,
         point_cloud geography(MULTIPOINTZ, 4326) NOT NULL,
+        octree_checksum varchar,
+        octree_index bytea,
         staging_done boolean NOT NULL DEFAULT false
     )
 
-    CREATE TABLE octrees (
-        sounding_result_id int NOT NULL UNIQUE REFERENCES sounding_results,
-        checksum varchar NOT NULL,
-        octree_index bytea NOT NULL
-    )
-
     CREATE TABLE sounding_results_contour_lines (
-        sounding_result_id int NOT NULL REFERENCES sounding_results,
+        sounding_result_id int NOT NULL REFERENCES sounding_results
+            ON DELETE CASCADE,
         height numeric NOT NULL,
         lines geography(multilinestring, 4326) NOT NULL,
-        UNIQUE (sounding_result_id, height)
+        PRIMARY KEY (sounding_result_id, height)
     )
     -- A view to help geoserver serve contour lines.
     -- At least geoserver-2.13.2 does not serve type geography correctly