From 5dd74175d4c80fbe3a3dfda31bdc3ac745266baa Mon Sep 17 00:00:00 2001 From: Andrew Gerrand Date: Mon, 16 Sep 2013 15:47:13 +1000 Subject: [PATCH] doc: re-organize golang.org site content Remove "References" section. Remove most articles and redirect to blog.golang.org. Move /ref/spec and /ref/mem to /doc/spec and /doc/mem. Remove duplicate links from the remaining "Documents", "The Project", and "Help" pages. Defer to the wiki for more links and community content. Update command reference and mention cover tool. Add "Pop-out" text to the front page. Pick one of four videos at random to feature on the front page. Fixes #2547. Fixes #5561. Fixes #6321. R=r, dominik.honnef CC=golang-dev https://golang.org/cl/13724043 --- doc/articles/c_go_cgo.html | 179 ----- doc/articles/concurrency_patterns.html | 79 --- doc/articles/defer_panic_recover.html | 197 ------ doc/articles/error_handling.html | 316 --------- doc/articles/gobs_of_data.html | 315 --------- doc/articles/godoc_documenting_go_code.html | 147 ---- doc/articles/gos_declaration_syntax.html | 348 ---------- doc/articles/image-20.png | Bin 95383 -> 0 bytes doc/articles/image-2a.png | Bin 3625 -> 0 bytes doc/articles/image-2b.png | Bin 95423 -> 0 bytes doc/articles/image-2c.png | Bin 60552 -> 0 bytes doc/articles/image-2d.png | Bin 68314 -> 0 bytes doc/articles/image-2e.png | Bin 96721 -> 0 bytes doc/articles/image-2f.png | Bin 62662 -> 0 bytes doc/articles/image-package-01.png | Bin 1393 -> 0 bytes doc/articles/image-package-02.png | Bin 1494 -> 0 bytes doc/articles/image-package-03.png | Bin 1477 -> 0 bytes doc/articles/image-package-04.png | Bin 1631 -> 0 bytes doc/articles/image-package-05.png | Bin 1613 -> 0 bytes doc/articles/image_draw.html | 222 ------ doc/articles/image_package.html | 312 --------- doc/articles/index.html | 3 +- doc/articles/json_and_go.html | 357 ---------- doc/articles/json_rpc_tale_of_interfaces.html | 78 --- doc/articles/laws_of_reflection.html | 649 ------------------ doc/articles/race_detector.html | 388 ----------- doc/articles/slice-1.png | Bin 6334 -> 0 bytes doc/articles/slice-2.png | Bin 7220 -> 0 bytes doc/articles/slice-3.png | Bin 7303 -> 0 bytes doc/articles/slice-array.png | Bin 1237 -> 0 bytes doc/articles/slice-struct.png | Bin 3650 -> 0 bytes doc/articles/slices_usage_and_internals.html | 438 ------------ doc/cmd.html | 26 +- doc/contrib.html | 59 +- doc/docs.html | 142 ++-- doc/go1.html | 1 + doc/go1compat.html | 3 +- doc/go_faq.html | 2 +- doc/go_mem.html | 2 +- doc/go_spec.html | 2 +- doc/help.html | 16 +- doc/reference.html | 64 -- doc/root.html | 14 +- 43 files changed, 132 insertions(+), 4227 deletions(-) delete mode 100644 doc/articles/c_go_cgo.html delete mode 100644 doc/articles/concurrency_patterns.html delete mode 100644 doc/articles/defer_panic_recover.html delete mode 100644 doc/articles/error_handling.html delete mode 100644 doc/articles/gobs_of_data.html delete mode 100644 doc/articles/godoc_documenting_go_code.html delete mode 100644 doc/articles/gos_declaration_syntax.html delete mode 100644 doc/articles/image-20.png delete mode 100644 doc/articles/image-2a.png delete mode 100644 doc/articles/image-2b.png delete mode 100644 doc/articles/image-2c.png delete mode 100644 doc/articles/image-2d.png delete mode 100644 doc/articles/image-2e.png delete mode 100644 doc/articles/image-2f.png delete mode 100644 doc/articles/image-package-01.png delete mode 100644 doc/articles/image-package-02.png delete mode 100644 doc/articles/image-package-03.png delete mode 100644 doc/articles/image-package-04.png delete mode 100644 doc/articles/image-package-05.png delete mode 100644 doc/articles/image_draw.html delete mode 100644 doc/articles/image_package.html delete mode 100644 doc/articles/json_and_go.html delete mode 100644 doc/articles/json_rpc_tale_of_interfaces.html delete mode 100644 doc/articles/laws_of_reflection.html delete mode 100644 doc/articles/race_detector.html delete mode 100644 doc/articles/slice-1.png delete mode 100644 doc/articles/slice-2.png delete mode 100644 doc/articles/slice-3.png delete mode 100644 doc/articles/slice-array.png delete mode 100644 doc/articles/slice-struct.png delete mode 100644 doc/articles/slices_usage_and_internals.html delete mode 100644 doc/reference.html diff --git a/doc/articles/c_go_cgo.html b/doc/articles/c_go_cgo.html deleted file mode 100644 index 4b04bb49e8..0000000000 --- a/doc/articles/c_go_cgo.html +++ /dev/null @@ -1,179 +0,0 @@ - - -

-Cgo lets Go packages call C code. Given a Go source file written with some -special features, cgo outputs Go and C files that can be combined into a -single Go package. -

- -

-To lead with an example, here's a Go package that provides two functions - -Random and Seed - that wrap C's rand -and srand functions. -

- -{{code "/doc/progs/cgo1.go" `/package rand/` `/END/`}} - -

-Let's look at what's happening here, starting with the import statement. -

- -

-The rand package imports "C", but you'll find there's -no such package in the standard Go library. That's because C is a -"pseudo-package", a special name interpreted by cgo as a reference to C's -name space. -

- -

-The rand package contains four references to the C -package: the calls to C.rand and C.srand, the -conversion C.uint(i), and the import statement. -

- -

-The Random function calls the standard C library's random -function and returns the result. In C, rand returns a value of the -C type int, which cgo represents as the type C.int. -It must be converted to a Go type before it can be used by Go code outside this -package, using an ordinary Go type conversion: -

- -{{code "/doc/progs/cgo1.go" `/func Random/` `/STOP/`}} - -

-Here's an equivalent function that uses a temporary variable to illustrate -the type conversion more explicitly: -

- -{{code "/doc/progs/cgo2.go" `/func Random/` `/STOP/`}} - -

-The Seed function does the reverse, in a way. It takes a -regular Go int, converts it to the C unsigned int -type, and passes it to the C function srand. -

- -{{code "/doc/progs/cgo1.go" `/func Seed/` `/END/`}} - -

-Note that cgo knows the unsigned int type as C.uint; -see the cgo documentation for a complete list of -these numeric type names. -

- -

-The one detail of this example we haven't examined yet is the comment -above the import statement. -

- -{{code "/doc/progs/cgo1.go" `/\/\*/` `/STOP/`}} - -

-Cgo recognizes this comment. Any lines starting -with #cgo -followed -by a space character are removed; these become directives for cgo. -The remaining lines are used as a header when compiling the C parts of -the package. In this case those lines are just a -single #include -statement, but they can be almost any C code. The #cgo -directives are -used to provide flags for the compiler and linker when building the C -parts of the package. -

- -

-There is a limitation: if your program uses any //export -directives, then the C code in the comment may only include declarations -(extern int f();), not definitions (int f() { -return 1; }). You can use //export directives to -make Go functions accessible to C code. -

- -

-The #cgo and //export directives are -documented in -the cgo documentation. -

- -

-Strings and things -

- -

-Unlike Go, C doesn't have an explicit string type. Strings in C are -represented by a zero-terminated array of chars. -

- -

-Conversion between Go and C strings is done with the -C.CString, C.GoString, and -C.GoStringN functions. These conversions make a copy of the -string data. -

- -

-This next example implements a Print function that writes a -string to standard output using C's fputs function from the -stdio library: -

- -{{code "/doc/progs/cgo3.go" `/package print/` `/END/`}} - -

-Memory allocations made by C code are not known to Go's memory manager. -When you create a C string with C.CString (or any C memory -allocation) you must remember to free the memory when you're done with it -by calling C.free. -

- -

-The call to C.CString returns a pointer to the start of the -char array, so before the function exits we convert it to an -unsafe.Pointer and release -the memory allocation with C.free. A common idiom in cgo programs -is to defer -the free immediately after allocating (especially when the code that follows -is more complex than a single function call), as in this rewrite of -Print: -

- -{{code "/doc/progs/cgo4.go" `/func Print/` `/END/`}} - -

-Building cgo packages -

- -

-To build cgo packages, just use " -go build" or -"go install -" as usual. The go tool recognizes the special "C" import and automatically -uses cgo for those files. -

- -

-More cgo resources -

- -

-The cgo command documentation has more detail about -the C pseudo-package and the build process. The cgo examples -in the Go tree demonstrate more advanced concepts. -

- -

-For a simple, idiomatic example of a cgo-based package, see Russ Cox's gosqlite. -Also, the Go Community Wiki -lists many packages, some of which use cgo. -

- -

-Finally, if you're curious as to how all this works internally, take a look -at the introductory comment of the runtime package's cgocall.c. -

diff --git a/doc/articles/concurrency_patterns.html b/doc/articles/concurrency_patterns.html deleted file mode 100644 index 62168b840b..0000000000 --- a/doc/articles/concurrency_patterns.html +++ /dev/null @@ -1,79 +0,0 @@ - - -

-Concurrent programming has its own idioms. A good example is timeouts. Although -Go's channels do not support them directly, they are easy to implement. Say we -want to receive from the channel ch, but want to wait at most one -second for the value to arrive. We would start by creating a signalling channel -and launching a goroutine that sleeps before sending on the channel: -

- -{{code "/doc/progs/timeout1.go" `/timeout :=/` `/STOP/`}} - -

-We can then use a select statement to receive from either -ch or timeout. If nothing arrives on ch -after one second, the timeout case is selected and the attempt to read from -ch is abandoned. -

- -{{code "/doc/progs/timeout1.go" `/select {/` `/STOP/`}} - -

-The timeout channel is buffered with space for 1 value, allowing -the timeout goroutine to send to the channel and then exit. The goroutine -doesn't know (or care) whether the value is received. This means the goroutine -won't hang around forever if the ch receive happens before the -timeout is reached. The timeout channel will eventually be -deallocated by the garbage collector. -

- -

-(In this example we used time.Sleep to demonstrate the mechanics -of goroutines and channels. In real programs you should use -time.After, a function that returns -a channel and sends on that channel after the specified duration.) -

- -

-Let's look at another variation of this pattern. In this example we have a -program that reads from multiple replicated databases simultaneously. The -program needs only one of the answers, and it should accept the answer that -arrives first. -

- -

-The function Query takes a slice of database connections and a -query string. It queries each of the databases in parallel and -returns the first response it receives: -

- -{{code "/doc/progs/timeout2.go" `/func Query/` `/STOP/`}} - -

-In this example, the closure does a non-blocking send, which it achieves by -using the send operation in select statement with a -default case. If the send cannot go through immediately the -default case will be selected. Making the send non-blocking guarantees that -none of the goroutines launched in the loop will hang around. However, if the -result arrives before the main function has made it to the receive, the send -could fail since no one is ready. -

- -

-This problem is a textbook example of what is known as a -race condition, but -the fix is trivial. We just make sure to buffer the channel ch (by -adding the buffer length as the second argument to make), -guaranteeing that the first send has a place to put the value. This ensures the -send will always succeed, and the first value to arrive will be retrieved -regardless of the order of execution. -

- -

-These two examples demonstrate the simplicity with which Go can express complex -interactions between goroutines. -

diff --git a/doc/articles/defer_panic_recover.html b/doc/articles/defer_panic_recover.html deleted file mode 100644 index c964cd368c..0000000000 --- a/doc/articles/defer_panic_recover.html +++ /dev/null @@ -1,197 +0,0 @@ - - -

-Go has the usual mechanisms for control flow: if, for, switch, goto. It also -has the go statement to run code in a separate goroutine. Here I'd like to -discuss some of the less common ones: defer, panic, and recover. -

- -

-A defer statement pushes a function call onto a list. The list of saved -calls is executed after the surrounding function returns. Defer is commonly -used to simplify functions that perform various clean-up actions. -

- -

-For example, let's look at a function that opens two files and copies the -contents of one file to the other: -

- -{{code "/doc/progs/defer.go" `/func CopyFile/` `/STOP/`}} - -

-This works, but there is a bug. If the call to os.Create fails, the -function will return without closing the source file. This can be easily -remedied by putting a call to src.Close before the second return statement, -but if the function were more complex the problem might not be so easily -noticed and resolved. By introducing defer statements we can ensure that the -files are always closed: -

- -{{code "/doc/progs/defer2.go" `/func CopyFile/` `/STOP/`}} - -

-Defer statements allow us to think about closing each file right after opening -it, guaranteeing that, regardless of the number of return statements in the -function, the files will be closed. -

- -

-The behavior of defer statements is straightforward and predictable. There are -three simple rules: -

- -

-1. A deferred function's arguments are evaluated when the defer statement is -evaluated. -

- -

-In this example, the expression "i" is evaluated when the Println call is -deferred. The deferred call will print "0" after the function returns. -

- -{{code "/doc/progs/defer.go" `/func a/` `/STOP/`}} - -

-2. Deferred function calls are executed in Last In First Out order -after the surrounding function returns. -

- -

-This function prints "3210": -

- -{{code "/doc/progs/defer.go" `/func b/` `/STOP/`}} - -

-3. Deferred functions may read and assign to the returning function's named -return values. -

- -

-In this example, a deferred function increments the return value i after -the surrounding function returns. Thus, this function returns 2: -

- -{{code "/doc/progs/defer.go" `/func c/` `/STOP/`}} - -

-This is convenient for modifying the error return value of a function; we will -see an example of this shortly. -

- -

-Panic is a built-in function that stops the ordinary flow of control and -begins panicking. When the function F calls panic, execution of F stops, -any deferred functions in F are executed normally, and then F returns to its -caller. To the caller, F then behaves like a call to panic. The process -continues up the stack until all functions in the current goroutine have -returned, at which point the program crashes. Panics can be initiated by -invoking panic directly. They can also be caused by runtime errors, such as -out-of-bounds array accesses. -

- -

-Recover is a built-in function that regains control of a panicking -goroutine. Recover is only useful inside deferred functions. During normal -execution, a call to recover will return nil and have no other effect. If the -current goroutine is panicking, a call to recover will capture the value given -to panic and resume normal execution. -

- -

-Here's an example program that demonstrates the mechanics of panic and defer: -

- -{{code "/doc/progs/defer2.go" `/package main/` `/STOP/`}} - -

-The function g takes the int i, and panics if i is greater than 3, or else it -calls itself with the argument i+1. The function f defers a function that calls -recover and prints the recovered value (if it is non-nil). Try to picture what -the output of this program might be before reading on. -

- -

-The program will output: -

- -
Calling g.
-Printing in g 0
-Printing in g 1
-Printing in g 2
-Printing in g 3
-Panicking!
-Defer in g 3
-Defer in g 2
-Defer in g 1
-Defer in g 0
-Recovered in f 4
-Returned normally from f.
- -

-If we remove the deferred function from f the panic is not recovered and -reaches the top of the goroutine's call stack, terminating the program. This -modified program will output: -

- -
Calling g.
-Printing in g 0
-Printing in g 1
-Printing in g 2
-Printing in g 3
-Panicking!
-Defer in g 3
-Defer in g 2
-Defer in g 1
-Defer in g 0
-panic: 4
- 
-panic PC=0x2a9cd8
-[stack trace omitted]
- -

-For a real-world example of panic and recover, see the -json package from the Go standard library. -It decodes JSON-encoded data with a set of recursive functions. -When malformed JSON is encountered, the parser calls panic to unwind the -stack to the top-level function call, which recovers from the panic and returns -an appropriate error value (see the 'error' and 'unmarshal' methods of -the decodeState type in -decode.go). -

- -

-The convention in the Go libraries is that even when a package uses panic -internally, its external API still presents explicit error return values. -

- -

-Other uses of defer (beyond the file.Close example given earlier) -include releasing a mutex: -

- -
mu.Lock()
-defer mu.Unlock()
- -

-printing a footer: -

- -
printHeader()
-defer printFooter()
- -

-and more. -

- -

-In summary, the defer statement (with or without panic and recover) provides an -unusual and powerful mechanism for control flow. It can be used to model a -number of features implemented by special-purpose structures in other -programming languages. Try it out. -

diff --git a/doc/articles/error_handling.html b/doc/articles/error_handling.html deleted file mode 100644 index 6ba05ac1da..0000000000 --- a/doc/articles/error_handling.html +++ /dev/null @@ -1,316 +0,0 @@ - - -

-If you have written any Go code you have probably encountered the built-in -error type. Go code uses error values to -indicate an abnormal state. For example, the os.Open function -returns a non-nil error value when it fails to open a file. -

- -{{code "/doc/progs/error.go" `/func Open/`}} - -

-The following code uses os.Open to open a file. If an error -occurs it calls log.Fatal to print the error message and stop. -

- -{{code "/doc/progs/error.go" `/func openFile/` `/STOP/`}} - -

-You can get a lot done in Go knowing just this about the error -type, but in this article we'll take a closer look at error and -discuss some good practices for error handling in Go. -

- -

-The error type -

- -

-The error type is an interface type. An error -variable represents any value that can describe itself as a string. Here is the -interface's declaration: -

- -
type error interface {
-    Error() string
-}
- -

-The error type, as with all built in types, is -predeclared in the -universe block. -

- -

-The most commonly-used error implementation is the -errors package's unexported errorString type. -

- -{{code "/doc/progs/error.go" `/errorString/` `/STOP/`}} - -

-You can construct one of these values with the errors.New -function. It takes a string that it converts to an errors.errorString -and returns as an error value. -

- -{{code "/doc/progs/error.go" `/New/` `/STOP/`}} - -

-Here's how you might use errors.New: -

- -{{code "/doc/progs/error.go" `/func Sqrt/` `/STOP/`}} - -

-A caller passing a negative argument to Sqrt receives a non-nil -error value (whose concrete representation is an -errors.errorString value). The caller can access the error string -("math: square root of...") by calling the error's -Error method, or by just printing it: -

- -{{code "/doc/progs/error.go" `/func printErr/` `/STOP/`}} - -

-The fmt package formats an error value -by calling its Error() string method. -

- -

-It is the error implementation's responsibility to summarize the context. -The error returned by os.Open formats as "open /etc/passwd: -permission denied," not just "permission denied." The error returned by our -Sqrt is missing information about the invalid argument. -

- -

-To add that information, a useful function is the fmt package's -Errorf. It formats a string according to Printf's -rules and returns it as an error created by -errors.New. -

- -{{code "/doc/progs/error.go" `/fmtError/` `/STOP/`}} - -

-In many cases fmt.Errorf is good enough, but since -error is an interface, you can use arbitrary data structures as -error values, to allow callers to inspect the details of the error. -

- -

-For instance, our hypothetical callers might want to recover the invalid -argument passed to Sqrt. We can enable that by defining a new -error implementation instead of using errors.errorString: -

- -{{code "/doc/progs/error.go" `/type NegativeSqrtError/` `/STOP/`}} - -

-A sophisticated caller can then use a -type assertion to check for a -NegativeSqrtError and handle it specially, while callers that just -pass the error to fmt.Println or log.Fatal will see -no change in behavior. -

- -

-As another example, the json package specifies a -SyntaxError type that the json.Decode function -returns when it encounters a syntax error parsing a JSON blob. -

- -{{code "/doc/progs/error.go" `/type SyntaxError/` `/STOP/`}} - -

-The Offset field isn't even shown in the default formatting of the -error, but callers can use it to add file and line information to their error -messages: -

- -{{code "/doc/progs/error.go" `/func decodeError/` `/STOP/`}} - -

-(This is a slightly simplified version of some -actual code -from the Camlistore project.) -

- -

-The error interface requires only a Error method; -specific error implementations might have additional methods. For instance, the -net package returns errors of type -error, following the usual convention, but some of the error -implementations have additional methods defined by the net.Error -interface: -

- -
package net
-
-type Error interface {
-    error
-    Timeout() bool   // Is the error a timeout?
-    Temporary() bool // Is the error temporary?
-}
- -

-Client code can test for a net.Error with a type assertion and -then distinguish transient network errors from permanent ones. For instance, a -web crawler might sleep and retry when it encounters a temporary error and give -up otherwise. -

- -{{code "/doc/progs/error.go" `/func netError/` `/STOP/`}} - -

-Simplifying repetitive error handling -

- -

-In Go, error handling is important. The language's design and conventions -encourage you to explicitly check for errors where they occur (as distinct from -the convention in other languages of throwing exceptions and sometimes catching -them). In some cases this makes Go code verbose, but fortunately there are some -techniques you can use to minimize repetitive error handling. -

- -

-Consider an App Engine -application with an HTTP handler that retrieves a record from the datastore and -formats it with a template. -

- -{{code "/doc/progs/error2.go" `/func init/` `/STOP/`}} - -

-This function handles errors returned by the datastore.Get -function and viewTemplate's Execute method. In both -cases, it presents a simple error message to the user with the HTTP status code -500 ("Internal Server Error"). This looks like a manageable amount of code, but -add some more HTTP handlers and you quickly end up with many copies of -identical error handling code. -

- -

-To reduce the repetition we can define our own HTTP appHandler -type that includes an error return value: -

- -{{code "/doc/progs/error3.go" `/type appHandler/`}} - -

-Then we can change our viewRecord function to return errors: -

- -{{code "/doc/progs/error3.go" `/func viewRecord/` `/STOP/`}} - -

-This is simpler than the original version, but the http package doesn't understand functions that return -error. -To fix this we can implement the http.Handler interface's -ServeHTTP method on appHandler: -

- -{{code "/doc/progs/error3.go" `/ServeHTTP/` `/STOP/`}} - -

-The ServeHTTP method calls the appHandler function -and displays the returned error (if any) to the user. Notice that the method's -receiver, fn, is a function. (Go can do that!) The method invokes -the function by calling the receiver in the expression fn(w, r). -

- -

-Now when registering viewRecord with the http package we use the -Handle function (instead of HandleFunc) as -appHandler is an http.Handler (not an -http.HandlerFunc). -

- -{{code "/doc/progs/error3.go" `/func init/` `/STOP/`}} - -

-With this basic error handling infrastructure in place, we can make it more -user friendly. Rather than just displaying the error string, it would be better -to give the user a simple error message with an appropriate HTTP status code, -while logging the full error to the App Engine developer console for debugging -purposes. -

- -

-To do this we create an appError struct containing an -error and some other fields: -

- -{{code "/doc/progs/error4.go" `/type appError/` `/STOP/`}} - -

-Next we modify the appHandler type to return *appError values: -

- -{{code "/doc/progs/error4.go" `/type appHandler/`}} - -

-(It's usually a mistake to pass back the concrete type of an error rather than -error, -for reasons discussed in the Go FAQ, -but it's the right thing to do here because ServeHTTP is the only -place that sees the value and uses its contents.) -

- -

-And make appHandler's ServeHTTP method display the -appError's Message to the user with the correct HTTP -status Code and log the full Error to the developer -console: -

- -{{code "/doc/progs/error4.go" `/ServeHTTP/` `/STOP/`}} - -

-Finally, we update viewRecord to the new function signature and -have it return more context when it encounters an error: -

- -{{code "/doc/progs/error4.go" `/func viewRecord/` `/STOP/`}} - -

-This version of viewRecord is the same length as the original, but -now each of those lines has specific meaning and we are providing a friendlier -user experience. -

- -

-It doesn't end there; we can further improve the error handling in our -application. Some ideas: -

- - - -

-Conclusion -

- -

-Proper error handling is an essential requirement of good software. By -employing the techniques described in this post you should be able to write -more reliable and succinct Go code. -

diff --git a/doc/articles/gobs_of_data.html b/doc/articles/gobs_of_data.html deleted file mode 100644 index 6b836b2c36..0000000000 --- a/doc/articles/gobs_of_data.html +++ /dev/null @@ -1,315 +0,0 @@ - - -

-To transmit a data structure across a network or to store it in a file, it must -be encoded and then decoded again. There are many encodings available, of -course: JSON, -XML, Google's -protocol buffers, and more. -And now there's another, provided by Go's gob -package. -

- -

-Why define a new encoding? It's a lot of work and redundant at that. Why not -just use one of the existing formats? Well, for one thing, we do! Go has -packages supporting all the encodings just mentioned (the -protocol buffer package is in -a separate repository but it's one of the most frequently downloaded). And for -many purposes, including communicating with tools and systems written in other -languages, they're the right choice. -

- -

-But for a Go-specific environment, such as communicating between two servers -written in Go, there's an opportunity to build something much easier to use and -possibly more efficient. -

- -

-Gobs work with the language in a way that an externally-defined, -language-independent encoding cannot. At the same time, there are lessons to be -learned from the existing systems. -

- -

-Goals -

- -

-The gob package was designed with a number of goals in mind. -

- -

-First, and most obvious, it had to be very easy to use. First, because Go has -reflection, there is no need for a separate interface definition language or -"protocol compiler". The data structure itself is all the package should need -to figure out how to encode and decode it. On the other hand, this approach -means that gobs will never work as well with other languages, but that's OK: -gobs are unashamedly Go-centric. -

- -

-Efficiency is also important. Textual representations, exemplified by XML and -JSON, are too slow to put at the center of an efficient communications network. -A binary encoding is necessary. -

- -

-Gob streams must be self-describing. Each gob stream, read from the beginning, -contains sufficient information that the entire stream can be parsed by an -agent that knows nothing a priori about its contents. This property means that -you will always be able to decode a gob stream stored in a file, even long -after you've forgotten what data it represents. -

- -

-There were also some things to learn from our experiences with Google protocol -buffers. -

- -

-Protocol buffer misfeatures -

- -

-Protocol buffers had a major effect on the design of gobs, but have three -features that were deliberately avoided. (Leaving aside the property that -protocol buffers aren't self-describing: if you don't know the data definition -used to encode a protocol buffer, you might not be able to parse it.) -

- -

-First, protocol buffers only work on the data type we call a struct in Go. You -can't encode an integer or array at the top level, only a struct with fields -inside it. That seems a pointless restriction, at least in Go. If all you want -to send is an array of integers, why should you have to put it into a -struct first? -

- -

-Next, a protocol buffer definition may specify that fields T.x and -T.y are required to be present whenever a value of type -T is encoded or decoded. Although such required fields may seem -like a good idea, they are costly to implement because the codec must maintain a -separate data structure while encoding and decoding, to be able to report when -required fields are missing. They're also a maintenance problem. Over time, one -may want to modify the data definition to remove a required field, but that may -cause existing clients of the data to crash. It's better not to have them in the -encoding at all. (Protocol buffers also have optional fields. But if we don't -have required fields, all fields are optional and that's that. There will be -more to say about optional fields a little later.) -

- -

-The third protocol buffer misfeature is default values. If a protocol buffer -omits the value for a "defaulted" field, then the decoded structure behaves as -if the field were set to that value. This idea works nicely when you have -getter and setter methods to control access to the field, but is harder to -handle cleanly when the container is just a plain idiomatic struct. Required -fields are also tricky to implement: where does one define the default values, -what types do they have (is text UTF-8? uninterpreted bytes? how many bits in a -float?) and despite the apparent simplicity, there were a number of -complications in their design and implementation for protocol buffers. We -decided to leave them out of gobs and fall back to Go's trivial but effective -defaulting rule: unless you set something otherwise, it has the "zero value" -for that type - and it doesn't need to be transmitted. -

- -

-So gobs end up looking like a sort of generalized, simplified protocol buffer. -How do they work? -

- -

-Values -

- -

-The encoded gob data isn't about int8s and uint16s. -Instead, somewhat analogous to constants in Go, its integer values are abstract, -sizeless numbers, either signed or unsigned. When you encode an -int8, its value is transmitted as an unsized, variable-length -integer. When you encode an int64, its value is also transmitted as -an unsized, variable-length integer. (Signed and unsigned are treated -distinctly, but the same unsized-ness applies to unsigned values too.) If both -have the value 7, the bits sent on the wire will be identical. When the receiver -decodes that value, it puts it into the receiver's variable, which may be of -arbitrary integer type. Thus an encoder may send a 7 that came from an -int8, but the receiver may store it in an int64. This -is fine: the value is an integer and as a long as it fits, everything works. (If -it doesn't fit, an error results.) This decoupling from the size of the variable -gives some flexibility to the encoding: we can expand the type of the integer -variable as the software evolves, but still be able to decode old data. -

- -

-This flexibility also applies to pointers. Before transmission, all pointers are -flattened. Values of type int8, *int8, -**int8, ****int8, etc. are all transmitted as an -integer value, which may then be stored in int of any size, or -*int, or ******int, etc. Again, this allows for -flexibility. -

- -

-Flexibility also happens because, when decoding a struct, only those fields -that are sent by the encoder are stored in the destination. Given the value -

- -{{code "/doc/progs/gobs1.go" `/type T/` `/STOP/`}} - -

-the encoding of t sends only the 7 and 8. Because it's zero, the -value of Y isn't even sent; there's no need to send a zero value. -

- -

-The receiver could instead decode the value into this structure: -

- -{{code "/doc/progs/gobs1.go" `/type U/` `/STOP/`}} - -

-and acquire a value of u with only X set (to the -address of an int8 variable set to 7); the Z field is -ignored - where would you put it? When decoding structs, fields are matched by -name and compatible type, and only fields that exist in both are affected. This -simple approach finesses the "optional field" problem: as the type -T evolves by adding fields, out of date receivers will still -function with the part of the type they recognize. Thus gobs provide the -important result of optional fields - extensibility - without any additional -mechanism or notation. -

- -

-From integers we can build all the other types: bytes, strings, arrays, slices, -maps, even floats. Floating-point values are represented by their IEEE 754 -floating-point bit pattern, stored as an integer, which works fine as long as -you know their type, which we always do. By the way, that integer is sent in -byte-reversed order because common values of floating-point numbers, such as -small integers, have a lot of zeros at the low end that we can avoid -transmitting. -

- -

-One nice feature of gobs that Go makes possible is that they allow you to define -your own encoding by having your type satisfy the -GobEncoder and -GobDecoder interfaces, in a manner -analogous to the JSON package's -Marshaler and -Unmarshaler and also to the -Stringer interface from -package fmt. This facility makes it possible to -represent special features, enforce constraints, or hide secrets when you -transmit data. See the documentation for -details. -

- -

-Types on the wire -

- -

-The first time you send a given type, the gob package includes in the data -stream a description of that type. In fact, what happens is that the encoder is -used to encode, in the standard gob encoding format, an internal struct that -describes the type and gives it a unique number. (Basic types, plus the layout -of the type description structure, are predefined by the software for -bootstrapping.) After the type is described, it can be referenced by its type -number. -

- -

-Thus when we send our first type T, the gob encoder sends a -description of T and tags it with a type number, say 127. All -values, including the first, are then prefixed by that number, so a stream of -T values looks like: -

- -
-("define type id" 127, definition of type T)(127, T value)(127, T value), ...
-
- -

-These type numbers make it possible to describe recursive types and send values -of those types. Thus gobs can encode types such as trees: -

- -{{code "/doc/progs/gobs1.go" `/type Node/` `/STOP/`}} - -

-(It's an exercise for the reader to discover how the zero-defaulting rule makes -this work, even though gobs don't represent pointers.) -

- -

-With the type information, a gob stream is fully self-describing except for the -set of bootstrap types, which is a well-defined starting point. -

- -

-Compiling a machine -

- -

-The first time you encode a value of a given type, the gob package builds a -little interpreted machine specific to that data type. It uses reflection on -the type to construct that machine, but once the machine is built it does not -depend on reflection. The machine uses package unsafe and some trickery to -convert the data into the encoded bytes at high speed. It could use reflection -and avoid unsafe, but would be significantly slower. (A similar high-speed -approach is taken by the protocol buffer support for Go, whose design was -influenced by the implementation of gobs.) Subsequent values of the same type -use the already-compiled machine, so they can be encoded right away. -

- -

-Decoding is similar but harder. When you decode a value, the gob package holds -a byte slice representing a value of a given encoder-defined type to decode, -plus a Go value into which to decode it. The gob package builds a machine for -that pair: the gob type sent on the wire crossed with the Go type provided for -decoding. Once that decoding machine is built, though, it's again a -reflectionless engine that uses unsafe methods to get maximum speed. -

- -

-Use -

- -

-There's a lot going on under the hood, but the result is an efficient, -easy-to-use encoding system for transmitting data. Here's a complete example -showing differing encoded and decoded types. Note how easy it is to send and -receive values; all you need to do is present values and variables to the -gob package and it does all the work. -

- -{{code "/doc/progs/gobs2.go" `/package main/` `$`}} - -

-You can compile and run this example code in the -Go Playground. -

- -

-The rpc package builds on gobs to turn this -encode/decode automation into transport for method calls across the network. -That's a subject for another article. -

- -

-Details -

- -

-The gob package documentation, especially the -file doc.go, expands on many of the -details described here and includes a full worked example showing how the -encoding represents data. If you are interested in the innards of the gob -implementation, that's a good place to start. -

diff --git a/doc/articles/godoc_documenting_go_code.html b/doc/articles/godoc_documenting_go_code.html deleted file mode 100644 index 3f4e3228c7..0000000000 --- a/doc/articles/godoc_documenting_go_code.html +++ /dev/null @@ -1,147 +0,0 @@ - - -

-The Go project takes documentation seriously. Documentation is a huge part of -making software accessible and maintainable. Of course it must be well-written -and accurate, but it also must be easy to write and to maintain. Ideally, it -should be coupled to the code itself so the documentation evolves along with the -code. The easier it is for programmers to produce good documentation, the better -for everyone. -

- -

-To that end, we have developed the godoc documentation -tool. This article describes godoc's approach to documentation, and explains how -you can use our conventions and tools to write good documentation for your own -projects. -

- -

-Godoc parses Go source code - including comments - and produces documentation as -HTML or plain text. The end result is documentation tightly coupled with the -code it documents. For example, through godoc's web interface you can navigate -from a function's documentation to its -implementation with one click. -

- -

-Godoc is conceptually related to Python's -Docstring and Java's -Javadoc, -but its design is simpler. The comments read by godoc are not language -constructs (as with Docstring) nor must they have their own machine-readable -syntax (as with Javadoc). Godoc comments are just good comments, the sort you -would want to read even if godoc didn't exist. -

- -

-The convention is simple: to document a type, variable, constant, function, or -even a package, write a regular comment directly preceding its declaration, with -no intervening blank line. Godoc will then present that comment as text -alongside the item it documents. For example, this is the documentation for the -fmt package's Fprint -function: -

- -{{code "/src/pkg/fmt/print.go" `/Fprint formats using the default/` `/func Fprint/`}} - -

-Notice this comment is a complete sentence that begins with the name of the -element it describes. This important convention allows us to generate -documentation in a variety of formats, from plain text to HTML to UNIX man -pages, and makes it read better when tools truncate it for brevity, such as when -they extract the first line or sentence. -

- -

-Comments on package declarations should provide general package documentation. -These comments can be short, like the sort -package's brief description: -

- -{{code "/src/pkg/sort/sort.go" `/Package sort provides/` `/package sort/`}} - -

-They can also be detailed like the gob -package's overview. That package uses another convention for packages -that need large amounts of introductory documentation: the package comment is -placed in its own file, doc.go, which -contains only those comments and a package clause. -

- -

-When writing package comments of any size, keep in mind that their first -sentence will appear in godoc's package list. -

- -

-Comments that are not adjacent to a top-level declaration are omitted from -godoc's output, with one notable exception. Top-level comments that begin with -the word "BUG(who)" are recognized as known bugs, and included in -the "Bugs" section of the package documentation. The "who" part should be the -user name of someone who could provide more information. For example, this is a -known issue from the sync/atomic package: -

- -
-// BUG(rsc): On x86-32, the 64-bit functions use instructions
-// unavailable before the Pentium MMX. On both ARM and x86-32, it is the
-// caller's responsibility to arrange for 64-bit alignment of 64-bit
-// words accessed atomically.
-
- -

-Godoc treats executable commands in the same way. It looks for a comment on -package main, which is sometimes put in a separate file called doc.go. -For example, see the -godoc documentation and its corresponding -doc.go file. -

- -

-There are a few formatting rules that Godoc uses when converting comments to -HTML: -

- - - -

-Note that none of these rules requires you to do anything out of the ordinary. -

- -

-In fact, the best thing about godoc's minimal approach is how easy it is to use. -As a result, a lot of Go code, including all of the standard library, already -follows the conventions. -

- -

-Your own code can present good documentation just by having comments as -described above. Any Go packages installed inside $GOROOT/src/pkg -and any GOPATH work spaces will already be accessible via godoc's -command-line and HTTP interfaces, and you can specify additional paths for -indexing via the -path flag or just by running "godoc ." -in the source directory. See the godoc documentation -for more details. -

- -

-Godoc recognizes example functions written according to the -testing package's naming -conventions and presents them appropriately. -

diff --git a/doc/articles/gos_declaration_syntax.html b/doc/articles/gos_declaration_syntax.html deleted file mode 100644 index 455cced1d5..0000000000 --- a/doc/articles/gos_declaration_syntax.html +++ /dev/null @@ -1,348 +0,0 @@ - - -

-Newcomers to Go wonder why the declaration syntax is different from the -tradition established in the C family. In this post we'll compare the -two approaches and explain why Go's declarations look as they do. -

- -

-C syntax -

- -

-First, let's talk about C syntax. C took an unusual and clever approach -to declaration syntax. Instead of describing the types with special -syntax, one writes an expression involving the item being declared, and -states what type that expression will have. Thus -

- -
-int x;
-
- -

-declares x to be an int: the expression 'x' will have type int. In -general, to figure out how to write the type of a new variable, write an -expression involving that variable that evaluates to a basic type, then -put the basic type on the left and the expression on the right. -

- -

-Thus, the declarations -

- -
-int *p;
-int a[3];
-
- -

-state that p is a pointer to int because '*p' has type int, and that a -is an array of ints because a[3] (ignoring the particular index value, -which is punned to be the size of the array) has type int. -

- -

-What about functions? Originally, C's function declarations wrote the -types of the arguments outside the parens, like this: -

- -
-int main(argc, argv)
-    int argc;
-    char *argv[];
-{ /* ... */ }
-
- -

-Again, we see that main is a function because the expression main(argc, -argv) returns an int. In modern notation we'd write -

- -
-int main(int argc, char *argv[]) { /* ... */ }
-
- -

-but the basic structure is the same. -

- -

-This is a clever syntactic idea that works well for simple types but can -get confusing fast. The famous example is declaring a function pointer. -Follow the rules and you get this: -

- -
-int (*fp)(int a, int b);
-
- -

-Here, fp is a pointer to a function because if you write the expression -(*fp)(a, b) you'll call a function that returns int. What if one of fp's -arguments is itself a function? -

- -
-int (*fp)(int (*ff)(int x, int y), int b)
-
- -

-That's starting to get hard to read. -

- -

-Of course, we can leave out the name of the parameters when we declare a -function, so main can be declared -

- -
-int main(int, char *[])
-
- -

-Recall that argv is declared like this, -

- -
-char *argv[]
-
- -

-so you drop the name from the middle of its declaration to construct -its type. It's not obvious, though, that you declare something of type -char *[] by putting its name in the middle. -

- -

-And look what happens to fp's declaration if you don't name the -parameters: -

- -
-int (*fp)(int (*)(int, int), int)
-
- -

-Not only is it not obvious where to put the name inside -

- -
-int (*)(int, int)
-
- -

-it's not exactly clear that it's a function pointer declaration at all. -And what if the return type is a function pointer? -

- -
-int (*(*fp)(int (*)(int, int), int))(int, int)
-
- -

-It's hard even to see that this declaration is about fp. -

- -

-You can construct more elaborate examples but these should illustrate -some of the difficulties that C's declaration syntax can introduce. -

- -

-There's one more point that needs to be made, though. Because type and -declaration syntax are the same, it can be difficult to parse -expressions with types in the middle. This is why, for instance, C casts -always parenthesize the type, as in -

- -
-(int)M_PI
-
- -

-Go syntax -

- -

-Languages outside the C family usually use a distinct type syntax in -declarations. Although it's a separate point, the name usually comes -first, often followed by a colon. Thus our examples above become -something like (in a fictional but illustrative language) -

- -
-x: int
-p: pointer to int
-a: array[3] of int
-
- -

-These declarations are clear, if verbose - you just read them left to -right. Go takes its cue from here, but in the interests of brevity it -drops the colon and removes some of the keywords: -

- -
-x int
-p *int
-a [3]int
-
- -

-There is no direct correspondence between the look of [3]int and how to -use a in an expression. (We'll come back to pointers in the next -section.) You gain clarity at the cost of a separate syntax. -

- -

-Now consider functions. Let's transcribe the declaration for main, even -though the main function in Go takes no arguments: -

- -
-func main(argc int, argv *[]byte) int
-
- -

-Superficially that's not much different from C, but it reads well from -left to right: -

- -

-function main takes an int and a pointer to a slice of bytes and returns an int. -

- -

-Drop the parameter names and it's just as clear - they're always first -so there's no confusion. -

- -
-func main(int, *[]byte) int
-
- -

-One value of this left-to-right style is how well it works as the types -become more complex. Here's a declaration of a function variable -(analogous to a function pointer in C): -

- -
-f func(func(int,int) int, int) int
-
- -

-Or if f returns a function: -

- -
-f func(func(int,int) int, int) func(int, int) int
-
- -

-It still reads clearly, from left to right, and it's always obvious -which name is being declared - the name comes first. -

- -

-The distinction between type and expression syntax makes it easy to -write and invoke closures in Go: -

- -
-sum := func(a, b int) int { return a+b } (3, 4)
-
- -

-Pointers -

- -

-Pointers are the exception that proves the rule. Notice that in arrays -and slices, for instance, Go's type syntax puts the brackets on the left -of the type but the expression syntax puts them on the right of the -expression: -

- -
-var a []int
-x = a[1]
-
- -

-For familiarity, Go's pointers use the * notation from C, but we could -not bring ourselves to make a similar reversal for pointer types. Thus -pointers work like this -

- -
-var p *int
-x = *p
-
- -

-We couldn't say -

- -
-var p *int
-x = p*
-
- -

-because that postfix * would conflate with multiplication. We could have -used the Pascal ^, for example: -

- -
-var p ^int
-x = p^
-
- -

-and perhaps we should have (and chosen another operator for xor), -because the prefix asterisk on both types and expressions complicates -things in a number of ways. For instance, although one can write -

- -
-[]int("hi")
-
- -

-as a conversion, one must parenthesize the type if it starts with a *: -

- -
-(*int)(nil)
-
- -

-Had we been willing to give up * as pointer syntax, those parentheses -would be unnecessary. -

- -

-So Go's pointer syntax is tied to the familiar C form, but those ties -mean that we cannot break completely from using parentheses to -disambiguate types and expressions in the grammar. -

- -

-Overall, though, we believe Go's type syntax is easier to understand -than C's, especially when things get complicated. -

- -

-Notes -

- -

-Go's declarations read left to right. It's been pointed out that C's -read in a spiral! See -The "Clockwise/Spiral Rule" by David Anderson. -

diff --git a/doc/articles/image-20.png b/doc/articles/image-20.png deleted file mode 100644 index 063e430645d68f32ea9c468cb50f37e545671ba8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 95383 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%0A_A^5YD)WSRub0bjJ8;N@9 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 J)QOpd{(s3lVPOCO diff --git a/doc/articles/image-2a.png b/doc/articles/image-2a.png deleted file mode 100644 index 3f1c0afff8e7638143eb287568c098105e7d3d68..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3625 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 diff --git a/doc/articles/image-2b.png b/doc/articles/image-2b.png deleted file mode 100644 index 32b247011487762218e9aba9a7184f84f75af68b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 95423 zcmb4KQ+FmzvyE*}oJ?%nwx8IxZR-u6*c02fZQGjI)|vJFgLBb0RkiA-x>xPmyE;lq zK@t%T7Y+mj1W{T_Oa%l4G~wT&g8}z^{r0%Zb`654~3DH2O;!pHpmUrh6cGbwFUVO1&yZ_2PU&2e(!T2w!UDANKQt{)Vj2Sx!Px?{DGvfrftztfSKVLxc= z>+cM2Jueu@@Oa+t8MveN@Lt7M27oWv$5w7b&=vhWO_3;*Zcxw$lgfJK9%m$+K8BD* zi=<+C9CReW0O=wdh~bCbw9rfe69+N&7V&$+e8YlLW=7PUsgx|^EW-2DHp&x_S{S!8 z2g<@jf}ZY@NS`5^sX^G_+_%tVA$rsX)9`YNZ}a}XtuF9c;5|< zAFxDElSvvIMS4i9jMhko?Zyo2oGhsVDURBhEO6-l2>BJ_pD(9us4m_`RluS;nb!S) zj%|N^?zqLYMgE^ zO*5iJQ)*3mVw5{#1vJZ`lPRgfZOD|h6*Bco9*QIKlFp?qv0f|rYowGP6o$c{cwRv< zse%C!GS4NAHdsfdHR7<*K(T8pqO26-~-`dx#TDvga?_q(XwZJjGVz;D6j6@Wk7j z^5l&P;KVY=LMHHgy`zlF^Af7%c))*J78AxS03p|4^ZV;vSdT{`UAlSo2rV7Do+S-5 z#p$p*@5o=VPBCxPTE)~`y(4WxBOF2`(x>UTWXyH{RcEPE&z%Yu1Mwazh^aU7`iDDS zc!&ad8ms(O&k!z2-pK`bpW-=VA5{_mH?T+u4hicO>nmN=<3Yy2gRV4%H_ucqQpu;#r8RD10RkzDZm- zA~J7+jnc@G$Ss!eH#M^X-nd0Ji|F%*XJJsLd`(FVKc`xXWc;tr2Tq2L^jj5NP{OGa zzuonT_80SyxVAPD5OdYSIU0)S%s+dX$MCl|<7SYJ*g40;S{Ra<(O$9Nrh|;~ zhd8}OWazOpx#)|0ia?z7u&9VP;O#KRs#OqLkRQ#78HJb?8dSYG?JIl&=&KSNyT}~gKAUk)GvI4i%0fd97n<=%sF+jy`SRySm znz~fe7h)O2Tse-4FjgLerL=%1+E@yW1wqU2b&Qy})Mt=Qu?Qp9h@O!9yYI~-;;Vmt zc=+&ihP`CtD#NSGnW;SigAn)J=@beaIC<9(IyjW0MkXrtQ7V za`Dt*r$eKiwNWwjS5LkZL38+zg^~!tLcyIF{L-aHE+B?ObvCQ5A6$Q-jt7 zEOss3MX<;w$D7b1-s<`h#Jpj9zQM0wMvg)k#$zO9beN*#?{WlFJ2OAWt6I#j7k`~b z(BX*_UFuq!d>J=lm_&eJrGKnnQ+q(Q^Di}lk%-bj1YKdHNS1ncskwe`eS);I2;V@b z7?t^p+hv8a0mMsA@Ly1cpI@HrhPWn}yTL~LJU04Ux*&dDI>MOqNPEszNBFg}JJRea zza}1>d>O&979dI~U<0h9lTR|aJ^px|P#f(B8Pyay6@jHks}o0xWEnG{GmN$UN=n1k zSwxtl+l!1aV}cx=0LTgc%7*PioJ2g~Lj-%Iz|Bx&dqfkuSdq6Q_m${6Y^CNhQJ`)`qt z^ghgE-WeJ=rO8qw8C;SN3nDm_D2$uPP1`B~BF=?0HRzF?NQD~?ibNDnf=d;*-YwcGo68ULM*GV;LMSYZbqwoMifW{j9>1R@E(3UBPhg)bq^gUdU( z&jo@ie=8%t3|l#G_$N2DX1M}$lf~=+l{6FKIKPE~DO0gsPwHQ#$%=?oQ=&qT7pBiJ zi=A6;$tp=t(B9+Bu|v@0NX~_)jtDU6ju^L)-$za@jb|D- z=)BMk!$=f@et+r+Xv}wAin|tjaw1Z`_f1F`IJtu09||fs;!Hy`IB`jk{Gu?|-1=2v zJb!pRH8-4rkEILz8i9|Zb&52Va>XwHHRsYYe3wILx~3h-+ZQ*_kl{={52uKk+-Qkt z&89&3^Qoc{h|TOC?)N#tOM?1b*Pu?u8VTOa4dC^jN$0+X<1hzOQ&BTTRQnG3aA%qN z*`;%&iy$S2oAaG8Qsl(^0J)|zmPR1xFw+C4n7y6kjcAeSdBx6!H60UI^n6FSjA`O- z%uztt4~|RR7^flwW-K z7vTkR!LsP#cnXN=9ig3;lZh$}X@gs-#1LasMwKYfX9OmeNF!X58Wz042!ZMq>I%KX z)ZLn51$UJfgm(Px@Y-|ag(Ied7Y1W10wt*s5^VsXSuJ0kGHP^>jJkd2^D*BD=!PB2Q0!La=FD$YdXoB8Q0k>m<4; z$AINWd(_`M!6u>$9VsdeBqWx}_rE$91|I_x_36gF;)LZNz}%u2MVzUbf>NlEN$!<1 z=8y25G$HH5T|)Pt=-~!U_1TcqE-4(xy~yc5=$y*ABZ$Xy56rU025i;mRHKERJtd6k z>vHSk3ABf!RxSyVuLXa7C2=QE7!#|PBJuP1otM{dD;!R#U@(JCF?9&Lnf+k#2=k$z zH~cxX#;5d84kLS;KY&_~)I_L<5&|L7%B4sjY$%GR8Tpkfu95H!Ef3KIZe*r6S+*i( zr(DweQf~2MjLCohbh*T;5-&g17kLd=H5$ zf@_TABE{x_sp15zkj21IV1CsdAU*=a`2D*Gq`+!wh}w9`kSP=eog1TEiO}f_Bc$bq z6t_!l$c$?jv?!TsWLYjd4D+?`nB5%`7BFV2qKIM!O{y9z)C;4c1*%k1kknQsO-o0s z-VdQQsJh**IeK%Xm@LEjuGy1&ksj?nxDb^|3Y{shdp5IdfkP?>MqjK!s(WeFvt^Ww z89NBE1NQ5t#}*rU;Dy`|+YmCtl1M<6`^%Nhj|~lzI}Y}f*-Gj<7(=nQ{UkEJh3~E( zUg||^B!^CZfvG<|8q`>BUP>K~Lhh`dsN-65F|z>yBP3b0_BZYjOALv)@d?P;T}gnjX(l6Jm7MVV{+1hG%Fg zjRs2RD`;8>EEihG2?UXSr>pw@qvRx_N;4k91tuAi3{8hrFcrWJiXI*d(RQ;}|x{a0uB*fCcK zNbrM2f#-Dnj9Gpp9fYVzf@CyK8l`l zq{bzOlu0uAkkccA26ysQaE&5DS}|c}hBFQ>3xb)9leTVSf)jd)?A`(9w&I=|&G0Yc z0+1q1QkqCmg$u?;Rwarl2{BxNet!X67qwcdBrHCDW1G5-G3;^2!?*?tv(zobAMjEo z1ucqhIKxglJPBBR4$xC7sSKKvSuMiI`1*QXrp|2w=+2xTjRs;QoAZww!8Agy_QV2A z7I}n2vej6cGY`#!MT+0spz<1!V%q)7U6(lmj5x09pzLo6v;_>0%!VghMuM z3fM-QR&|1LLa$66K<-jxaJr;by9rkqO;wFmD@9Z-2+Xw6WKQTBW=cvjo)S{5!6kBb>u(WxX+)hVrjY$t(@Rf0sP!OS-8|#1E#-s?O-XtP^0ubxL_;m?EHGtxIPSbWg?oYo@ z1=$hZX3C;*Rn?=MQKGHvkCls}w1J~y))=TUvD!Mb_nNB+^zx#EErV1S_V!(VZxdM# zJC5PHYfm-sf5^7H*8O~1qLkB{cf2;J z24G!at=XbC&(^t)W!EXds_LL2FI%p`&W+e0roX-M7_78-MJz*r4Gg1+QYRkacr6yJ zdDD-TrYsG!FB@7Vke6T7RBo0)#Kx4br<+erDqpFpsel`DG;bwINhM3X1FV=LXfiL7 zCCEr^b(T1lw%!=)Cxw#7(w4#ln6a(@2H0z!(sl)|11$f@Hu6{);ozkEXTumWfF3K! z4KrMNc<__78K>|H-MyrqyCC^O!X+~x74OGf5T$EXs~y~;Ir$z%A;iV7?L*C(*La^& zjWmCvP{9!)g*W0;QEIbFG>b`(W2Tg!dz#DvC$NqPbc1AItWX(=JKdea{7tqkazxco z9piru*6FW=u^Ef7vGOM5f;bY4NvEfW^KHpweH714f7UD6fUB?~)Q-^)DKH4T+`x%A z?bsiEsCWI%m2YZ6Csn-}4yIv0xmpi7$zVO0noNaGt*NdF1Cbq}y8TV|tZQ=o7K$82z#Q?SN*HY2P(bZx1qQOkzh{jJ>f z{?0P+*`Hq3CqR~T!icKhE!%8QiS<4phWpUTp^Bv6eug4Mfg`x~g4%ID-)awmRt!1A z&$iYoiP{I`zve*DrxDED_k|cg?RCHplr`y zAq4G$gd!G_0_sZZ8ZorRJ5#Pwv~v@UXxhNZXA5n35^@|5NC@LNnVfK4_x+0hOTg#}qj8XAu6s17FDQ z@434-EuPfxESWP&C*1H%tAZEk zNzUMT_2znm$)xG0%B9QxmTb6)Ogq^zb;&Yo(~Cc5n1d=d%{0FN@bsAIcv=O>TcC9Up%ct%;Yaaby87oU9fjdA}>kVDv=*h^)WH1kR?4v z*D_PeNn02)&HVD_3=JunEQW~wx9&AXrIP7B{0j;`R%buQyi*KX@3rXt zL2H_5%t%CXTJEb{Lf+Q|6!SpE`)^VC>-*{PO3I-G-YUli>6>G7B?Sa!rv=O-X|h*o z2GO;uRa!C*liawk9?o-^t3h`{N(IU)d8?9wHc@2!RNM4~S4|z^8Zp`hybKTqW@xn% z?l=FK;BEN~8MrXIFiZU$)RPo_pfCDm!`q4?^8+| zR7g;PrM!+GSNzAIQ>`GECYY^N31~rcd&fp^i|^;{r)%-LUVDeLNd_*zl>BsRqkVx)A)Tv8H4S5W z3;C~TW4u4*_`tSVn!=_qNdxKHbjtyc&`Xu~9uO=^2>S@qL(OtS(k$lHSEl6{<7+0k zv;tDnFfelAX|v2XM;LclqV5mvduzh2LQ;rylo{2=tJVrK_b0tyUqxc#IRn3@y5 zZ+2g!D_|ET%_Z?RGg1Lr&npd^`cyLFW~K`5YFgnHU29~xKnQ=0aW`a&DVTdP#UZto zqY+(!=B35b#koX4w|Q_{Laq+8SQGcgY)XcdO4~Q{kCV07fcYLY8k4M=kRQoal8Je4 zaH#dGY@#>_T4tzj8|HdKGgV7?+%5q^WokLKd#*Th?pQhl?L-K%7$}GlC{!77poA7y zD7$KE3YU!EZW@L(rx-86R(rGW(=`0#D#QC%Tru30b+NHkz|}f*Ek4U`+v~}+PNhCm zs@i4^r`vYwLysNK5m>6MQ@Se;!I(oz#}jM7#VLk(yYun+u&jo}Z|LAv^-_}z&6a}6 zRt}yoeGH25r`TEkpJiww-`BfQqMug(OTSsZuf5ZsqxRYF@dvl=l?n}xR*ie6akRy! zk>7HaXK(60P#{-4-_;kK=ZTGMoR}SjlNz;=Q+X8O*=6R5tZ~1`@#6TIv-D(eFkY5Mz za+5ve#)HF>S|}0-8PnL6+?!;xCAiC(Wh$|_G3u=38tWgu8Tsfb0~vxh(%2&M$yOQ6 zP@3I0$YtHpArSx>ps{ige8?<~$@!CO}ip`Vm%$izX^fla@}IrhFzPn`|&Exz<>G4ce8?s+x_5E^#cnFi-toh zOevg9x<cf5S<~9xKsqvHCbX#_qji>8 z;8-8OL#A%9)Bwdz31`%ZXW}}9|KP83J-weF>WtvcVeQbgOr{i&SK}`kJh{hhyg2<; zZ7@KLM#By{#CvDVF5RCu9!h@PE;o`ra8{pO4inf`iuoHpOo#7OY3t0nbkTP`GkMyS zk?p6K>RbebctlmE}iXW}RN z&-FhHXW;iey!+wplWK~7q+}z~4^Q`a}#n=&Y)b6P_fjLnX z74JPB#~a00s|GzzS64G5CB@Vqr>F4*Jf4nD0gdW9?e7ICO+1Hp2Z^Gxm75CAc#v{Q zj)j~v81QX>Adr;v=PiE@>WMs0##3}E9eUnMPQ7lt56TxU2>)?cLE44oV?t9fQoqC@ zGLg4_h^daM|Gg}qtLA{WQG>Sju5VSrx2U|gBg&r-gP(|5!Jp+X=(u&2vdKjB(ciU` zF=fEKU^$tFs!YT}R$M!T--TY9)o6x@zZYF1oXXt1zgy5Zs^O@*Xvl$Oi!?OOoV5kz z|6N57RgIa&KF~eOx66BQF4+5Yr1gMJ?S~+uw1~1$TC}4v%EVI&1T$3&`PVZ^cimpxGtz7S5$&mXY2Rw1BIlvYZ%V_dOVxA#Mn)KpSo=V(qV$K5$gUz5N?v z#Oj8$tIaiEo3?Cp!Urs(K+0~I2u!#0IeEbz!&^)$!ze*&20=&FN`#9KU`W}18rW3^ z9zZ>3{Tt!(7c4a_PM8@Nc{khgcXA)X{Hn2_y7nKzW-r97y0tRwn@bAH1PPysd_Q4J z54)e=G+qcArZcafMQeJqx*~g%J+P{Sr}!hAkGf^+@9FZpvkTy65F$abRRF$Ve8ojE ztC)XWD5N!?=iT0m3fn_fR(?@IfRR~gXGWpgb(-8WlbzFH0O%DL$)Yfo8%RvxsBt9m z@u-n^dVy@oIQ61 z9(Pavy}QKez>%e>*qg7 zGm+rk@a*Tj!{_18m&4De;@6tw&&2&Q9%rqd{4-IR&hP1}nH9Nqb-dwV^bz(=eHNRz z-hB|`!Av7I`S(>DtAj_iPQ-iwJgc($GSze2kdV5FvF4CYyT`|i z1KDNEVVS4K)wEjX(Y`z>gIJeZ$gvc`!Q?5v9|97su_ zkz;4Jbe}=tuEV8dra~clVLWX{8J%b+@Ps7x@8 zM;t`Pc zA92_@8_O(k#qiBZ&$?IxK5m0dob69DR2-(eZlD9&xH%a!OR$Gos4Rd|NA-!?Ed&st zb_oCdZq!Bv95Z(>tTbWkzfK5#J@&p1_kO`63p`BW<$Vi^mo{G6T2+utgfneTELTu1 zzhCs2b82|^P@(IOcnKo-EtQ?d4)R5ZZ^tV93}r+p@V{P{`;7|Ik9P^dnceCyD5@e5 znv0_|FPcfE;|{k=D+vtL&LKkfZ&fGW`bDnv*;(l7n@n(O2h<740QD0=F+)xMqD%j6 zKEBe&hw3JJSM-1HFWq7HFqKvkbIBE+uZtIN+NjDZtzwNA=()R#|M_Pl2u~qZH&4f}Zah+zU+jP{es!VpSY)70AP4>4Z z{=~utCPxi?(qu$O=-mAkhO$7%_>;YUY8=9LCB-0zD2HW!Ge!jhV)fdF1iaZj*#u+| zG}hrIPx$yctL1Z|Aa&n-Gfg5j(Fopi`tNLU5>zn;?6))Sw0*)^`j%K!W?e*4c=%fU z?4y^B9?RBtMkStZe9ni>gaP^u-}|G|yF?K=6Vte%$q*f=CALGNKCTNPV`Y{rmLcW; zTT@WePFuq<>9McU8E?)Z+`ssQXi0D9FXlgg#NM^eD_{Bz6kjwKa#Z3HsKm;EvsAw?LqNSxhLawctNp~)6CDRI6t5&0Vjp3tq5oeZv==r$r z{C-a99}9}qu3TnXla2^Q8>V893T?}~c{QRJk`MG3blmIvdf5$lcu#5F@xHhl&HKDh z>v??M)Hp4%5SK^d@8vu<15#_0uq-Qd=rmjFsJjT>6CdBYNGwG-hRIb ze2#H5$vRGXHwxe*DepDd{b!}`OnV(6&QsOdS?ErE)v{w;5VsGC29rIO4FZ=moKXSq zB$er0Ez;!#n5~pN{W<(OU&U6y#}pc5m!ErFx+`)*kqlC=mlu5kJ{h$w^EBVC27KLo zpAGyxPw##V`nkahsns5HJA((XiYKy`k6#~0U0>EbcdMzT5a#MW3BbsrP?lvdufC5_3M}_NJraEq{S;=`h(*;oTO3a%5qUl> zuZ~!?Io>YmXw=5Fbd=*YVbP3tm}q;x=+(mOGkx%lsDS(5A1P zj|Au)>h+hv!CUrwN4d4jb?l&3w4sj={Ys-fAWv)wTA&f{`Jf+quXpk6wWl^HaGgWlP*5l} z9p!pug=6Qn=fy8@Yot$W0A<*6DbqpM`w-8-r=Il^pWpj&-69Wi3RL0_#^{%9W(gs; zx8>aCzwIZ1fNy3YGHp|z!v9(oTk(Kwnm0%}3RIiyjT;zYB{jfJ%Bba%aNKhHab1p4>gAFWE+9f7rhCF!PhkUegRv!Qdz99F=4P( z)XrG2%y!>@w&^-h$jRPbT=sjvh`yywc3m-IK{V`ZY0YJd7yhiE6&G!eldiI00At8^ zGc&%|dS7JoS=$~Z4KnN^+eOi5-JEUIV|*Z4Noo51RW%_XZD8Pq28E$PhQ3K>Ap1|nFUM^AxOKk0 zsBjd@VW_;?vRHl!LR?4)VICqBtGC*mo(7iVe=ZpV&%ErB%W4pOqj^n7{ zdYUSEsoc4lQ`)m9qO~00Qz6?{Ric+f4C;S85r%R&9&->X9kGq|-HZGoCQmP8&LZ9J z3xF!(FyiELkdfxfQXi?}^rcr_ORhz*hIGit39m3fNG*gT_!#qsVNTGJ@#t89dmX0m zy>_?Rg-k8_iM7AuSziXL#mT8fArpRl#LilK*Y?|1p0Cl{b2OlQSZgOc)4gl?%AV+L zEIN+a3_#PD#sw?+wPWMZ^}RkD@NFURR_<~-^Az>ern{(g|y>zUgM zp_~l79MbV{BD-WUly}F#hUd_kqIS)o!3hUx$L>oh7wMHnf(|&m`E&-bLr=DbB%3;j zHqtz+HE@jCgi{nnm%%Axxvz|Cbs3w^NCBVy{!$9KT@}|#Ytx@Sr%25qlEgU6G9L0X zsToJJev-!D4`d{@3)BHIqb+)9v!EDVbWW?H9h#{ne9u;dkdzw4nBCexAU*z5bpfSC z!M>1*6+qT~I>it+MKnwbZ8s|}YN6@f2P1Ylk!mmWvKq)*)6Bx`H`tWQu0Mg-Y;PoH zG39q1RUwpZ!L*q9P4qbiPV`!aPRR<5WWCrJjPGIaHuGoKz>=}4N#=9_P)t*;|8xN# z#-5xOpd!)(nq+g4{0VTIlJuyX<3CEB zX<YzUoiJ^HGV4R!Kna`gwf_D!Vru>Ab8?A-i<{lsP{k^k3+=g zr^b+77vZ{c(Rc%^lO*F|q2s>RhaK_+fBudqjWR>Ev~XpwS}2ya%8VVIarLpfj1hjQ0N~lqsF|(G z-mg7`Z(98=q1#blNSaoL*$%hrz6lXjvuO??OzzsphhZ8lt9j)Kj;To#po$;s5xy`xR{2Nd_;v%8oJ-$V9t zrlzLO`G#i~v!jqsS1m)XH<=cbmKPX>SydIyEUD=LjtfWQ9CUlCbO!3un&T(x2Se1c zt{gRzhBrbFx}46Qb^u1o_zF_m1@`dn(-sr@cuNt?bR{D+d>Cig|AECK^V-3PM`AX} zs)hov#)Ez1sADWsRnsfghMWgHsHsHErJ_hrbLNs%;UZItj8PzDC?G_LvoO1+*${q- zfT$Y-OW?QV(M)+vSGn#x@N{fe?PUEQqa-t*+8=JbjxGn05B)+waTH$;bg)}ETURtz z`2>Nc>@bJ1)$}0hwSsEw;L8x$5mcCx375&*-9aR-lwEEQD>=JwSG#eGN8gRefUAk; zXLF2KWIoRkm(c{%*?(8F4;MmIiKFBEC&ZoFtE8uF#iHNS*0Dj1xF@;cT`*TpZ+ySWEiJe`QR91sMX zmYffP{=TvPckwMNJ`}60Fo_-p>5VNx0_grXWdGN&p9|z*F10!SM8gg7IbN0rX3hP4 z4T{ZwJnv7<)Uc>zidv)tJ;TCK)<5jYrzyR@3$v=2E>FqzSLXO zwv0KKLQqO{&Xk-1M--~}YHKBg`ZWZ+FfN$ko|{v*woO7-2+DuURxIwZ5{Y<`&L!$u zUa6jk_IBEjIoV zaxO&^;pAEzWQ=G?tjzC(#k_8aIit$9J`yxyBF`D(3L|pGepi~J)F>=rMdiCShJ^DbUTR9{4KYxm36^sLC^`W}DgV}tv{5WTPG{T$T(EdGuty)R2*RVB_}o=HIFg&?YF$nb1h#5kttx=(Cy6nd>CDUaf4dG7afj5PP)F5t2ny~P{AnMG?)la+^_>W;0UI$kc=MQUrdQRq`n)3_8@WF($ z)-uN6lp0$xLj7UQLXHz%oH{Sj+cmysj0q5mI$I0%lDV)LeD)9?YljzlHTul*KQ;h> ze<~QCw#4YbYW5+C?e;v^t|1+fdfbUm8=MjsV?ZeRdaL~^7J7T;qNRMf1D5bt$WixYf>NUztkwG+c{RdLc z98cg4UI(6ZCMDwuxLyCwWsDN?`#;`#&jv}YUAedOquxs5&#{e~I56Q?)l}(qdOt1b zXz=9hSh9%}o51N($uj>XX%>fzmcB@(FazbH?HOGjBFHDZHuT{|Xys@*R1M^4K@K@E z5*C>_pi0KrFb~|Mc#KZV3)sUecy$u)pqD5P4dz zWCg!{cjei(oj@rBYqykSl)^VDT-b=Wlav%gjXVUmQT*1W0$5VNtc28FK$8s{CAt-_wklu zg=_i0-yacvWnwFigS_6?`S1P1%g2+=+Wa>!3;}12JMSg-Eo_}F^(+7Q4#uf#-q$6{ zTqNJq*`CkOka)iL*Nl?MEn2qFndWFhAxa3v&V;QZU*crSY zs+=8@(hH?w>#7qO5zdt>&*0*0q|+1PY091p#V&3br&>6!yx?Og=n{`6Dk%yzik`v= zdpz^9##+SWmJwoDtmQdm?6SMgpWmMH<0)iOTWW1`KzI-E}>(yNC5DJ}Z5n8XH#DJ2r% zZSHMi@*ga?oJoJo2f`ZoDzg5+sly`f(tyjGXF`P%#wNDqbmULcUWF}gqTv|QnhD7* zKzhQ|8BR(y?_gk*x#ak|cw3{x^p%WD z$BrC-Z|5>IwVG|!CSZd*Tg+80P>%VpZ|e>B&ij4XQ_6BguIEk8#pKyPq-12>!LNA% zXKs~vs-!}SD!7hP7e#t0=-<^-M-^&xx)T29JVhHG=FBH-AzHGU z8bh`5K%*dK#3>h~BO4YQmKr^US3X$o z*S>vD6>F%|Xz@_u@OZ6V2>|V6%;5+8lA`=r5Gx=RnmANJcjVEGEa8nQznqCy&26>` z4xgjAM5EQ$_QokIWE%o!s=X{BlRD*3FNWJoM;D=(gorI*JQ zMf&Q-)8;B;7y0r1=l5Y{8bh;%SXyoJF|r>6IHBWNJl~)8i2zBetWH!tie6de`m(Vh z?53gqC{bI~jb!)~Gd8@L#<5x%Geu@CASFeIl5l#hlCX;kp-ON8V~RGJHIsLpr5yF$ z=hmG>u)Vt4dPTM++vS6zVB<}nN&!_c^}hy>dipp2t27S3>&Dd0NPY{qxuP}FxtKjvwh_QZGK|%~A*8IzxR`pBMj9$Vs(R~^cr1NiFQ{kh+UORU5@tdRq z$ho&@z9W<@iYBHVz|d}rD%nU^8-zw1QoRGoy0~=k8{NXcUfqLFDMbEHyKVd^i!Z?G zj<_C}K1?jNLRpgA!|`u3#%m>~CUDA%o+!IflXvRsY4_fj*m)QnN@NA4y>>4>1>rPq z;I~RK=h~1-`lHN>oF@Q2SI%yM(3t|Cd3ah_Um0gpKq~M&)}FOm<9m_CDBvC7b8cFx zUOP1-4{qO8-}p~I?WqSHYWK4s=nc{(=5p0UTC5G~4?-J}^Sb%ix4cZSfl|T*-oz=z z(w#GFA@{Vl-)61K!sOKcoDo4feJX3|ad{g^Ra1gjkQlMD8TZ8SIfMJ4tSKt%XHdf0 zA+0YDJHGI5OS=u5lkLJF1`~Lb5FiU>6+^IeB-f{`@cCeHeQ8iEz1zvFDXr7_(z=tLni6 z+u>9#Y%anCYcC{!ITSxpuj&Y6IJ`gVIvYB5&8x!F3u#)f_gNZ7)jx~?NnNat=2+65 zGGnxzI^q6LSm|5|_QVH^<*HsGL=pmg?W3HMO$Fhwdtr~8Pdhhfgbuq-V}oD=q&VoHGrGS3Ex@s$&v<(HDr9O&z3V+! z{x`tDWw8IfBvYn>Uc1HG5*9*qMKe^r2+mY4-3tQKHbrHeL^h)RfKzXOfb33xy~$Qf zIY^6bIZ&&QuOz6{q@QKuG)0n_Mx>%FFtESRies!b>50n@`<*P9)` zx>SqnFOscPS_QuN_sH|}xweKHW{7S^5!1xd8vn=K*-Ovq*(eb&FDrZOj*6+PXU&9l z0EVts&%@_x@3OTz(fh09(3;5mG{Cx_jh=8hcX#@P*9)3?5?UIosTUZgn(z5m6x1F8`kyLPQNe(%>zo>p>XsQX zHGM|x7HofH(}CalvCT?LHKn4pA@fn9S=awI-{pCsi<)M@lQ^`0VJevuzp8et;qpC^ z6}e`&9hH2b*`_wn=XsFmYuF%@zu_lL@LPV8O>8zlEoI{ZtTdgGS5P*Xp~4n=3W*oz zR5fgJ?db0znj}T;E(9}q5X}z*=zlc2xfeY3A}nLH{GqQoQ)E&#)x_Y*?AWQ}K2FY` z>=t2L*`xpP&0IXlpPq}kc@^mb3C&*CU7`|j4-E10f>D3diA+HpHSCjaeaTwO0^obx zVpWSyJmC*^@AFH&(7A+>#GViRf6h)95RBeN={=>QWG~R&Is*iZ*3&EIG^uu4!2EgX z+^|XG{GtOD*v?yi9y$uBh7h3%i2b;E6seI4t8+0Gx~RCFL41Wn-NXet!~&*Swdh*R z(kSdvnM|pBCM;?hCP)%haVDA?V3Eh%8|?=&L67Mg-lXUG$RS$>;aS$uppKr){}{HsHbG`{?G= z{d@hi$MtrvpVfjeJu_2VOV7ivciozOV{ual4}>@}sK_3h3?=|Y+X{~93OZ*>q$+O= zd+&FQi1>VaT(;exBL0+`ixH;^CRSz-`E;t8I}#jdc2&HvC{Ds+BcV8LFZF75E#Jrk zE*pQ}-A7X?R2voWvo?AeagmblK-m1AR<0Dk zp?}``4@*}abornAzGlCS!0t)`EEM*C7~Q$Rao5^=k4)L3Qinm4#Tkw<$_+UYQtHs; zJke2+1d!g|wRW_q#@5<{wsMS(lj#D{9E>Ql7To>Z|E3DU;S6=S8;2ifqi@APzhEK2*yda#=4~DCTzcc6O6^_5kc)oe1CJ zimi1#?0rHiYXgp1TgIPpQr;fEHpQ=Gep55@1w8R*6*Th}DE_BYX*b(a(L$kB#BWGH z95RG;z{%^D7`Mp~80~Oudc;AA8o%N@=5+KG?j??1WZqq3-GJ`dBiWM% zA}+!zLZ&rjVuTTBQEp9W7JhB?eTcfjpaJE-n7kDq9G&Ul-eFUzlah*RR=&@paLf7Nq)c)zU+(nHk4}Fq#!?%jdW&Qdm=6 z?I7iSJnH{xqCNbN{HyglVa?Oxb1YLS7diTiyiN6MNFW2!5t->1d!HE=gSx zh0M&$*o$97HwH2I`&w=C_@T`98JFA_|~9(5bWYCi+G|i`=%{Q~W73=)V742?BTSu7DcU zG>&WTnhS%66f|)vxTpQkb+%-q&8H4cYEj)~rVOt^{FHoBdFG%HlY+hl?)LB{-2>c? z`xLs5b?#t+qwupSe9p>NEL;npN(T`-uAd6+i1aiXr4*wj{H-@a zIy3yukjYvRpvGeuM+$XsCs4xRsltJjy=ilCy*7zKQp9TAfD!_+mR4MIvvhv4Xra)1 zF+Q4>`s_i#nPRrVnFW`lze*6RgE^U*`+opXK(D{{Gup;1WbtrqWvWuI9X)#a?d2qu z{>n!`HZwEx#pk|!g35CKyZ_xk`pN&|KU_Gr zl#iVx@~?dJjn`j)Ii_=-?6Z%(tJ!Y0EBo0wEi^ts`Zum^op^Ls^4wtLn1&E==C~uu zbD?@K9U6-I-@~aTq_dVO?wgXPZPkkphpSectfaVP;e|cMdc#naAS$Yc>gFa!w3x+)tc`mkvo^J`@8EM^d2za3IdkTWU8#Nft6#tH=B3VH zm}I%C8gzJ~MCY4QrI@cMqnw~l5-rvItgT#(<0K406I09p+{x_~46sP)&aX@wd?H8V z_b`ZZMXBgUt=?e9#?Z2jie<2I#fDX(^kN5#7e*^~wlP0-;a;{9Vy;qDY^G_ZImy;= zMa>miP_cALazfi7Bgv0WP6=Q6{oj7{SN~x=4pd8?`@tV_o$lzyo3%sx)6qcE)f{V} z-O7_B7d1J~@*oP_HM2fHckE~+sIjgoEx~RX;fS50#CG9OPqAIT^hXqnU>3~Vlkb%y z?I5>~F%Q8)B~^N>6WRGLC07|i7? z+xD#e<3Ib;if9SCy?X7cJKUPh+K>u?tEydFUA`UngyyW9drm|IU`CQQx$gzpCD}1N zL(SB0W4;7a0UbY5N_D>*r7Cn5-X?vnFNKa7%EtD#ja+BCB)Ah3INJji!Es!^wX@V zsZ-Crw6U;HuT>A8eb{K!XRlwqu)VdCC4rkr5YZ^s1f4TYAqkmYP4wwp&O{+aK%(Lw zS@D7d<2j8Dv(+?gNS}J(JEPvZAb}zXiev$hF>aa2OwBH7W)dY;)kaGkIB;w$lw0OZ zAO>SL^Ty@dH?JMO|Ev(D_y54VW#Ez!5(&3#63_5kRndCn9!{GmM6)sF1;ORZ zH*%$N;K*UX+@KeL!k0lA3e7PK$ydfT-f_YW1t#Sdq|zg4vcZsR(7De+k<;DXJlq6T z`bkY}bEqLHt~E$M*@Tnl1}5a2h|PWZ&U#N?Ea3dXs&ZM0{8r2z)yl zq*I6FaX+o?S1x|%Yfr7*Y|J<24lZe?F}SmO?c&RehfXYfED%~wr;*B%h3QAflAwS1e&)cB(l9n{1AsLg z4zpaURBBGv@Arr3UE8jXJm2x-Ts5%{ViJOCU?2pZgYM?)nF&q9do>Bjm3Fr~X+*n@ zv7};g00iiUmL?*Q^}xaXbF)*v=VDPib^O>jU%fK$9PqekJg%Ag($bP?TQQ~x0ZB%<)sC1I8H&2JI6t>< zHb`jKM(#%#=*Zs-oG|w#-AuyRbvwSIZj9Y+*HsnK)Kno?!n_r0b{wq7iHO>;gIlwZ z91lq&BZmp!DTg7+oIo|RQk|NaR+B2WY_s`z_;Sbkm=kiz=bnEEpGijb+ zLb|R~N1Llk62zjcL|y==q&K z*MwXY&X2a=a=Hh$ML{gs8w)KPZ!6|@tBZo;3R83P=yqDE8*8_2rqR3mn_Er0Hr1RK zG(%9d*vITud|&9h!Ek-$@X3ePw|mQ1(uH@`lisjd6Cw}Oh~AEtr>JgB+rv%|*wH~d z;P~E5dTTC;JSFH=m8@ZkCK0RLBACZd3>r?tAXhG9AVjVqDOmJtx*8aQX9!M^gkf}J z*cW6yRV%SzU4?)aGm0NE%QNpTSNmDt=qbDCe zGvBaBqmgY_7Ut%gSZT=m7As<^+jN?A9!G#~{5UGMbJMDy99WXio!)R=PJ{|NQbOY#e^DJ-2Y`;m2gF zI(A|OJe2&iFx=?uBDN)f(mfrmp@1e%WXkiqSa6my+7ypM#l)q#>6uqAZ(Y88;r#x6 zk(BH1(43tS0v{4R^F9XoM+(res5&(#1@i>ya4frKE-oB6cJlJKH;wYh0kZuu^%)g{ zpHx`t#qaKXW^l>eOnW3O)>$y=_ty{4-2eQfYC>nxmlOgW&B`G8L1Y`Mq+8CwPa`1_4UAvA-8y;ZVOcSH-GM9_ie#v= zc=+HF$THrjXu4q%ie{$Snq4s?A1Ev)N}8#H-D)ek zKI&xAcnIEr8nNIx!ihr*?N+Tnb})p`99x{5^868G$jvXW-nsSiWlc=)JO5q-vSkp` zI=dsz3>TTp5H!1!cHgamqZKpSFt-LaGx=#c#8%kR4_sUlBBx##Ze724{sSM>O(P9Q zpr~=^8;yoqt;n?+?cs99{cdNox9tvxO0@yntEp-nxPE^ow#Go;|q?rx9I)#O9{^(+sh6f&e=okON|Mc14`1^U->ug7sEk#$eIHGJrazd4-~4DuN1v!{UOl(0c%IQ==6= zi<1m9mSTqz8VSO_daD+tsu<=&Z!``f#e{5VTUAJd_pvZ7C`k zS*{wIDhepJ9|W?2t4f|mL)0tuP$LSYBP%QGz0NSSr|psNIO}U@?gKStNfhRfp8VW5 zUc2_@O9zght}dSFjU3C+qu8fYB1>U}2W#HNk??(R9OanB>|b<74yN(MLyB=9@&{(e zVWnda45GVs8<%L)5g9PRDRFBesY>R1aS#l8-Szd=?XC4Rj-8DaT{npFVI#OEzz!UzV|GZDB04U-`TnYf*5Z~4O4 zrVmWH5h#{}m4nB6dLCfPtTbSX$wY0jT zRqL`|Sy(;B8_VHnCyG^86f{-X>^aAmI;v4gEt`dI;I!UsI^XHQ3y&r<3Caz0K2Np= z+gZd~GjBNBQ7bwp>l<6Mix+P&=7EG2D1Szfc$tIm3*rchi8(f$|4y^DQXC$ z8D|JQC#M0}o5(4Un<_XPa4HGWoG7BKDMeD^D9FQH;I)wPfq@d*SF0zU#MotUg1f%s zzjSHi!2IcYrHac2GqocZ@ZAVE@10lIdpnn&KYN$i0m(|T1ixA=KHCjoQMd2umg4^( z>`PcqkQK^{s?Zga`lW8#9T=tHg7{Wh;CV<3YuL#3#DeE2sv76C19%2eNQ9D?RIRhL zALtLFFzRi+@c37(-VKpq8ZE)I6HeLPy_FgcAbQ!u7BbTlU2OHq3ps2DGHwGSF z1fId-@^qGjvB2;xRY|Iv6}ki0hGYZQd7cN{!5H)L0YO49ZESAOHM@W<=rz2NMKt!% zM;M40hd6*%8RS-$f$^YoaoUujB6sy>Q&iL_<219;mRfN1ZxsEeMSpZz% z;YD#xVD-3cDdq*>G7K2kk2fTa6_cD|NW3V)xVV(h{3MG)8DJxdex~zK(@8Ag8R*;0 zOZ~*u>jC8=P%kQ)#sk-=gdb6ep~IekaqTT9R~vc)CCqT@FaR}c%R6f)_T6)Flz#QO z@20htL-#&7ojP%nY7&3Di|`kHxQCXo$ACo!L&K5&;r>Qoo6zta^`Z`p378B5$7DE( z_5IALG1DH?h(v~0GnrxGUhE_b*;shN z6GGUK!q@?w5jReNApqS;y%QwR`Wv(XMpTYQGzmCW0243>9{_a%lPV9u2j0Rf_!x~_ ze608+4v0|vAJ|73r1&*Fg`L3sVJZdm;J_y-PKPIeFnlV>I0=H6PEBWlsWCztivlaL zUZyHssAX=aKSBPrAK@Sr@u@WR<={?-5b|4(bRQS$)Db%s0rd%JHM_HN|tx zk~kK@ya=)gO^VwZXWQQh&)jZ2fc{i?*dZm6(X7)Q{0vaGsE zIv!rHH9C+vy`dd@uA&>9D0{vmuu&X3{jE))1MZn0hK7l|h_R$|xz8KCvTteQ>Qxi= zoU+4A9&)yji`CXb&yoJ(OBe51t-tMc$Er2+;;T0fEHC$N_P_X7pJmdp`}zkwH%J9= zxy%~&20J@YgDG!r4Vf3OTD9&f49G$=K-J&}Sva)}lu+h{D2O;AXJKi6P;0iSe_(WM zs*8D&xN#D(oDc%jIRGF}@io~PPo|>CYZ7Qf#H)GCW|Q2ua<-Xel;3Z51T|xBGH+Or zA2@VU*Db@y``0)5#SSZI;CO~4PwlDFS`6ag{^jcW<#X5n_S0J6X$Mbpm3@ML4OlBH z2CckEf-EO>xmU*?0~R2l9PughdkNhVr)U)P?wN=UaD6y?*(9_NFjRmD@s|=E3VyN6hVbFSLzi@^q&xs70-}OU;gyWT2q~W80me=N zQ@glT0NHJxLKlw5bZR(1SW679!$GBp47`^F1&X)82LozJ$+JKRBAyEwKE(Lrm?4zl z(8~>F;wG@cuYdjN5B-y$V8DsOS3DbiiXPKH73 zQc46D#2_yQOc6vQ2;)KOUA_@;xmVTs9cy~|g$sil8!tTb-2*F&H#fKKz>4x{u0B7p zL(5M=uX?l5&Hk9xbfs2}I8M_vvsy{>1S1RHII>|G(5$f^CyIdUmN`)%KFCr>!EDhv z#N~+`X4EHS+xSKRrVi2_g+89f0at;CoLTJT@L(b6wka zg6nJ788$U5s$pnNvl@6Q#KW+E^}w>a+E}`D^{MH`%`rK;C_hi$|Q+G0r96{>EfBRomTKquE?oUOIYTf9FQ3OQ}}jxRCWnkrmONyTz97)GYuM$}vre z@&JG^2=N!psDKaLE+7#e5XRm5OI!)IUA#*ORp465txD(-1ezrTK$PeMy}5f)K(t+c z^*yL6|D}cJ#f#v=379)+Vj475@3UzfA;dJhaV0B^Bg;|ZJTRU8_nwc3P?N}_xUe>?VtYtezAM- zZW!Zi<|}g6X>bf{!n-^x(Cx!b2gQaU41&Tm}?aBl!T+EJU{mR$<@KL&p+q8V>Yn}S^av$@AXbF2C!=mw9sH*Y+3dk}O2NvF{b`&V^iDN^`hoMw2+1?z^>GcMF^>sw#5a&f8L@|g-$I0 zk$H**>Xl)WTUU)gz$wB$v;^m+KLl8u$WfsqN#?)>3!zH5hVv>yn%4Xzn)&f8$z~~Q z<)W1^L7MIi#%8@0Qf*~^5Y9G6{eS(x|L$*m!aVu9due&aGFQKw&K%h8cb`4~XaD6h zfBgS^YX9nim@^u+T2sjTy^S!6jB0Ji&HJ-}k&QUlGu}ufZtBk*pKVl^>ac6O$1#17 zz*M<&gIE}x8J`0$h%n%q1wPMNs9W3_iXufs2PjO(vb-n;5v{xdLg7Dxt7I3~ST3i@ zGdNP{r6MkcJ0r1KOXhC$wld32IgLW;F>aLLyB@^3<+v=T>J^hHUXtR=EESj$!LxA7 z^i~_MLy7`VsgW79mlUMz%3UW8Yz?+H2Pp$LB*(VP$OH>y8H$OvPNoj-Z$2Hy#B(Dl zV_v*`<<;$-u{F~w)!~){aAY-ws)zH2+G)s@E+eauitvOKX!G6KbecejL;?DQ<&&IF z4Z4>BNEt4dMF~(D+75v`Kn*AiBbLQHOTxgT4UK8)09}W!NuUi2AP!Bz2%xzIR!EpR zm1bZKCRyLUHtf4#m(Fa8Q8w3VfP;pf8_l9Xop5|?=w?mUICpZ-f?=}k-+%Rqb6;(o ze&DoTuM1iYoy_udy1hE~8n7UsC^UHsw#oxwE>lnm1UX=sKxXt-Rc~|?Vc%2dp5=c3 z4}bF4K3<<&@rOHVrJ0XC79A>S@%B|6-ff|qOQI}jOq4!(_W3J=)b99j5lPVJ^vc1N zlZ<|Yb!{f|pxbe?N>xYUn1m)wK)XsPxlNjgRY89h;6;E^XtCY6RRKvfA`0bLB3426 zZ-G>SWxzrF#WO%;8MH3nDi1mZ6{RRb`z*zY@Ebg|DUmN&PXK>M0Xvx*;Dth%86K-o zf_ONM#$oF5iYJ;L!~1DoSu`wf!pLm1Sqp=-J9p|cfB#os`{uX)`iq}mJ+Oacef`p< z3+o%3U;oxq-+Jae&d^;wqSdMxPK|o|!VBkC_AO%gLLnbIu#b&7nN<{3_8n(xxj_(1 z5*I90b4`r|)?}?D2qO8;1+2hvWeg#fkHCS_6fgleQe=1x>U~<3LZXi-6(A+bQv4;C zaT~1)RT4!pa1Py{LssHvk~qiXIA7FNi)Yry{k+nZMa~I8h=jeaks#!^KO3xEgjocVSuVhNq8mClZhIehJF3OaD5Yp@D@?0e|0G)l)~3j~w{H^?*Bb!Sf8PlwHBb8c>K7ApyJf{^Gbajn7_XnPj0_u&DZs=5*^A&5HLM6o?IKG7Of+{D_dhAOLa;5mL2JBfGj*y?QNJobY> z(rr|4T)B*saf+EiY|MA+jrM9w^j)V_ulKjNHCY=BM)QmFnWXSSKAHBG=I7uHov{616(mY zMjbw!(WD^#2Yv+*DKQHlz`HRXL?9DU5|T6wW17qoBeA0^H^)=k8u4lqCy1jE2$kkM zFNjH;0nF*<=cK&wUC=1l0e(}$%_3*WrbO4lelit~me7%FcNR45n&*U>lrk`BSqj52 zDhMAQq(Nlpdc;*@zQU;Zxa7r=BsG;~>|R+ea$V#dgd zsK~Xz^CQOwfG2SXumgJH!Z=Y7z@$nLFH&21lFz^~^a=&w09as1U}s=k5)VO3sV=x= zE=woYh)bp!n@OUUwy2EnPJd*L?44}~Uz}Pty4nh1%(;_fx$Qc0gEuDq*pYPM^C}6b^}sn z_z6$TB!d#u3XCItSIi#nUSRRba-y*O@m;7Yg<&BHDcF@0zoS%AfihX>Ct((FU&Vwe z7*~`rV<+C6v9_RYCNNGel`FX-in1X}2B}RR8U$lQ&QlCXuF=}}^4evysj2nqg4&s% z>*SdqXHjQi(M{M%l-3)XYi+Yp%9v^%1fl0IAKXvsn`N$!HukmJjF^w6gW+hP)f$|v z?2KoLkWFPU1ySOvywr$;TL^vU9k0IdvOBhX+ffWtRuxf}p~WrNG7JNlWmyhBBTH&P z3?51jw35Rg3be;Gxei4Gq!3j(2I~N~ifF}Kh8JTH-h}fbjpJ0F-I$Cs+#+6q*y33s zA`YdZ^C{B`YBEg&fKK4y$BAT7;+_OAM7cDDe}Y;BVFAg)c{L3`Nwd^>910@sl44m_ zio4HqfIJzuS+691+iWL!fa@4Vt{aIa%U3cE&=v?>hPwf>466Y>2Tc>nQ@b6#E=Dg#Dz8ZMt7mv^?wM~rH4KH-`|jQx zjKx+YaY}c7<=*>*%a>kw*W2FlGr#ytKmL5URs$GG>+$z+{hV&%LSPNV!J}GctAK+ zK#U;LtYrctr0HKGS-3|8Nw;POi}?I5W1?(^TS2Sxt=-fInx)zO@lplvCQ=nC6XgQ} zN0?h7NMIRw$cv05QW}9BGW|(1bhxys_gqVnbXC>iI0aVVSV7=u!dc*Jp6hd*hVOfJ zRx{^VUh+~G9yE%qxt7UE;>>qAQK_3+5ZMZwm=!H_9W*EoDOJ@lYlGQDZt{a*H1ft3 zwN{_+L@7HBTxb)~%@Tkc2!d+xLPHQ}wBMOW?1xt`zuN2dRNc@jrmAZoJ`$~stAIg( zOM-xCno(#a){TjI!G(cz2!*pKX34T3i4p)*5OXQM#2ccjur&UoJPg95s_SuoHj9U~ z)(R01d^*Q(R#M{Hl!phT3j!Z-qsVk~h@Hc9%7e06n9z54HdC6lGNmh|eN!CQo{?fx zMGz|;j#bkf#uked!JOA5z0Qa{FN#Jz<5dIh+z)bvC&rk-S&0(O4ZxehZGxI*8JHSZ zRGLp?3PIsAabh{Ag3W+fTnj`X)u8ZvNJvwmsR{Hz5faI1`Y0viQqV7w0H2yhA@vwd zAC;0Jg~pz%R0Ce#91QTnmG$k}jsDp4!k7Yk;DQs^9Xk%43-%pr2U=}ENhkIusGr0r zhSbu91}rLntT91ED}e>5o&dB(5EqVBnk$^S^35ln z`^s}0Z+PE3Z+Zi!k;@4nC7`9Amv4;_8^#!cNkrKY0jig7wI zTh%NcCsHh?bdESGYFe>EVkf4|_)v=+BNt+j@a0xoLoOB9a7*!(U<988q@y&w0?`0- zg-MrpIyMc)lp2u_3HXW95*-yuL`qSA!~HYpQW922L3AKB&Fz!h(5Fe|w>+zTpZ?dz;}(7vA4#s zheyqnEjJF_z;)ev;!3%!NGz|M>J6=P=gz+H{CThja3@8P&OH2J|JCcbff&P89Q9hK z(=lr#aDXl}_g@8+>G&i?6*FR7wo%>3T^ISU`?I|rY=M?h;tU?3dkfX3MFj>k)rFC?^4Y`fMo(9Ut$@B-tdgo~v_273ihh3@7J*pSXLceOjSzxvYO0T+JzcmDnRe((dI|F55wMW)rM z2Z|C#p(wx~fy@@UH#}djHxBF@M^UIs>Tu9otk-*^sZf!66Sv!3Wb$E}O%n*Z0&cRD zs+SSjDKerdx^#O^vzY9I8I|Z$5~wolMNn0ybQXE@r1i@D(&A}3y?~?Ci6ym6qM51_ ziNm34`4mst^=!=w z*{fHt#-ZQow2mG*eE7&gMUk^OIdl93zEaHJr6CnO5G9#5_|kQg7i2+EB}Em{cd&vY zfTO4Yopi3LzwyDNODnE2%uQD%pk`DD91ACtcc*jeZ`cY!wI^sgG>pOTdG#7hR6$)cSa?O zXdN<%IQ$fhm}3=5D`ImPf(e=t1}T0(;1wvuq?l|P+K@L=mCJ)D(lo}0A%fUSq8IqN zCxpB>45v5`9k>)xOw}C1G!8RK5c4EQQ?FdVHn!~d?42d-bqq_QVUN)!7>pq|q}rj{ z+@a@RdbQb>r*^o$Gh}#N8g35hXXr89_~PCdl?go?j~&~p+_f+A+?}n_*Uo=O+Fz?x z8*pL)>_dGyr{y z$x2dc#XoBBEh+cCODIL(tr!+z9Dd=J$R%k>DsMMjRp!K%$VHN~U|y8@>QFYOA~8`& zfjCOb4_!f!INBRbgJ3rSo3?uYCjHr5}IvtD(cg6!U1azbXnxc@3Q*{6qFUb@eBL79v9J+_VYKlyy z3pKS-X{>be)w;XcV7`7mpT&L-X~r^PfWDs!iA0rK7}9sV4059ugB2=bR~r_=GAKq7 zHwdrmrZJgK3#)*tBQ7P-|9IF7pYa)|$Qnxl$H0dU5k#3{-!!32Lmj_{OQ5*|NW$WX zVwxePo0rmdUSMQ+AahC%B%-ucypUjg2)t0lvmiGB%Ob`KHLOUirQggmyl&e8m>?%n zFb+t!y8~*Z^@fMv@Z@(MU%PS%G@)%&%IO|_rA%(d z1BvQ+=A0;)W^J&&WmJ|dCS;__#m$je50~5Xtgy|M%dPPjc9j)z^jk6VGE!Ay5G9)4 zo-4SOsc<`GVRz9{Ap>u}OT?F~@7B}eU9|%4lJn4#38_(zmB2V92!p~cCn*Q)b|S$O zV6;-2@l$I`_6^pq89B$q8IyuXN>C3>e>|<$nz-wS_U#|<^lO!drWk`>Z*}#+@gqm) z+g+Ny4t(G9s+Ag~PGR4)_kf`o@CQkp=&FgHHdG^{;v!O#%u;YbHmA*1KoHO@kqZ(} z;c~r5&$%-XP8R!)y>EH-YfnA(<;S1A)*HP3;fH_Woo|Zb0Mbtpg~+pk%c3q1cec?d zl=Xz+ibLXIRHBSQ$nsPt7`&2_UNHFKR`Midp=V^32h7I-2${xZ2V0fpy6LU9jvZmo zT^+5B;*ra44s15epo3Dy0VDyiM2%uWMFM@w!zGn7(m54wz=?2nz!{hgkT#Dp*ry)= zJ1K((AAtA+w*%dQ3l>=pcMc#@fE~UkClIQ|&(feM5??9So>7@C{KfDgB%;6rxeEY2Q-GUlSJzp#V`#6l z2pR{yBnUn)27LaZpZJ)N$Cu7O=g;h?zxBj)=xBllwT(~Wu*MGYbxK`je9y{572+L^ zIf#pegyrJfJv#Onu)x#-JR8#_ zX~9Y}@MB)l4LGZK$V2?QtTi_`fBn)L?zfQgRlSbeU*12+8CW8mRuM{+1nO=|%*h2c z%mq*g80o}IZl(@=FU!wT7nGY)-T`rxqX3+IO>)-v(if!N46N^EhZY=)_N;zQCKsj4 z-ww2w(}J&=F~q+RUfE!9fvm@*ERMrG z5EvSu3f!>Ver!0EB#*Y>b3RF^^K`Lqt$O=a^{hT z{V0}1a0eo}lC0RSH`1Q&!g-iShQw>{Zq~nE3`D36H_4H-WtOm z9*vs0nezYf^WVI3{l?YJ{)gWGj(5G|&CzfmaG(;g8$$0S5d4%Bnlkl9Yd77Ym{|j( zDfu{11LOlwOYKWp=sB%G4oI?_S)io||x!)dJue$w6 zU2N4lxkq-W!&Opvs6eS(ZjG`xi(D}1G6?voKk?)?2;pEfW4S%c!^e z+haFoOjTnzG>XLCZoIrCL}liBk&j+PwhEpF8@`pf{=Hn&+ll+d*Wo4!vu<;=Tg2-2 zqC!Dp{D5gznn^rzY{qun3MVPxo`T6`T4)V@FXCa)ysF7@U1Gi5g)M1tag=pIJ0=9+ zMscJ^Y`fO9teGq;SJtl8YBeYtvs(Z0k9_!^lP4?n+7fL7+<*G%C!c)!se6y#^ZZK} zw)_2hy`D0;S*>C4Xl8XZo5=#L|C!Dvs%#`IQ!}gN{qiKT!RvTa7K1pIXium+HxH{f z9Q@g5zI0=IwzRbL>%aPI$Cpia{S`M67Ut$`+Xi8%Rq9|pahNn4ZBPs-M2H+(@rRLA zuo6KMDU+9~IuKy&W|PuHNe)g6Rts*+^9pRsajnpgz|5-FaJk*>%x4D|g?+WIH?3Ug z=eZ*SZOUL!nR#C(-_ub%05^f|Ry4Izsoc1}ftK(xsX5w@Fs3yb6utuM$s}5+&&0Bv zb=s<~sWNSX3vEI*bIRW=TMie61C~!oWJMSYuLH11ya^PaA|gq!3^%RB88J0kH%NO* z6hy=CBw?6GImgBL9U!SS9b`}h&YBv@ehT^VVv_mj+%jxw zm?p;xK>#u@h7sFnbkL#KZd{jC10t9LT{8=J1-F5vG;+#=BMo0r=5kukb$z{pJH%&! zALX9bT(mj4H<>oX6p{=dqVp6cTCU(Bj4JcpaTKxhGI#XWikw|s1Eu}PF|OV0hu0=L z5JxL>N{dK*$1!b56|?oVAc6I|DM?5&UaarAS)^b5;N`#S9!?5-%VK&buEkNy~73ugBhpZn~8 z`tv{2n^iwgGLf5wA*a#|yf>W!^3phG4PKWjnr@)msf0Pps+yreXs0$909@kU8p9qQ zfAFb48;sr8pLzXbZ+R0R%^2S?C{)f5Mk9=FQBg;esU#}x_8cxv6yel$5cV{S2^5Nj zpd2eQ8M=U`;-CU)9SwL6g{w0Sd@AE{HUU#2n%#pR0z?*TynR|5NLvLIM-CrHC5>oN zAWKqTf*K9M(s`nGMa3?vgi};pgjGaq{T$@Aa+?#1aC&Y}qL z=Cn`=x`~I?Mc{KF6j_vnduR!J9du_I3^^~ALyouNS=OKO!sfn(&h=L>MuCG4Q8iW5 zRR{VoNp)2Y10wUqWCz6&iY1!D)E#=BTW__4G`V(TeLQuS_suKSO6+-}K*F1*X36;w z(V`T-gjUPIAcn)i()`@c&6x(xp9H+pm`#UaP1FP?M5l>GzExRprpWdz)5J=&qI|Ie zu*x*6vOEJ0nkD?lvuEX8VF^t1^j0ycGS`6~cF?Xd&GQXelzrcoL^6c{qR;Mr4vhCSnX@aD!i!ImER35I$=*(QB2IXJ>xI3ZklN zqNqXvtVNPnKb(GDdNWjFZpS2zwbCu@Ln0cCT=AO z_(7U7p+XTHVOc=gb}(+1=SbXP_$ZPnz%De;pWxcdKv)^-DpnNjs@K9_7gGVel*FNH z&w!7rz{Vh}zDoh$h~fi=A|G7Y*Iin1qwK_~hkop*fA-)1_HVZKE!L}ZfBogJ{QL(` zyzT9e-go-USHAM(xo2O5ePVRu`$93r;6^@98ltTf_t~>!j{(cY@9EWX;-$K&wQFmy zTnxjRtRJt=HD9>!(j#yCenZt8oG; z=CA$QuYBrLfB3+?_dR>=+>I;SQ1LP?{0qBt#(_gioWNSMS+hPjrF33d6}64a7jq_Q zw3n}K+&I!&4Ql+A$?$IVuphjlW&w*^pfVVgRJ5_knZmy^wH@w>XxA-}DoS_k&H$Ec zmtULiK#Z#_-cXdsV)@-wK5@u|0lg_2ax&uVE&qr9>A&Dwht}49zX}WSwfU%arFZ4( zn*Sre@b0Ide&zi6HJi)-<>&tV;nS}pyo`M>_0|X57hiheYoGbc&9i42m)~~M@BitK zoqX`bmG$-IeFyL}x~M(=rca^8-u!^Mnn& z5LQSCr3j%%>o(lbXGC7t^e}>M@-$hA6F^?FSgkQxm^g7D%9_#GTVvS67dS9?cnKB2UY7QbCcUG{i+zRK>TP zlo!XNsb=V->7?GEniFB-Yr32Sf~LT?vZ*%}W9!h$q9zM*7>ILb#BlwY^NJOYXCAG~ zK(C~Nsl|SnhytIv4#)$pC~(KGKXb1pfXuo{;;-I)^u(FBKlQ}pzy2fd;%;8ptqqI- z0Du5VL_t*egQq7y{m#Sty8ip$e{#pYdG^9)J=QBM@1fs$UMn&%NOCAtENriiJzq;` zh)Rw1l$;S{S*ulXOZ2VYHkv(gtGUn@RS9=B6N z=`np`H-R3HMVSDL%A6MSz%p$ZEJywD%B#$M?|gLmf%`XKesS};v$UFWu{KD(QQ-Wu z-~NqLZ~wr%cdQS;?}zQ3;dj396?uECWNF8&)Vqx%b?xYT-uJ$@zhgWeCxh^r=e~RK z%JmnXed6SO5Ah0{cs{6ntzkU=_%|MXIT!Osnk1J~ONydGOh7yAtugH3aq{HJ`S~taIBT>Y7iQZo zC}2Q9>EvQ;XH8*glg8 z8OO_288R83EP|YbL_~Mf*FnEniSqvH0Dw0i&$p&qqtK5<6I@2jy{xb#a5ucm=b6l< zx{$@BGn0fCNo#_XCthf~16gKI9XhnKf5EJ3wFV_y&;n&pz@kDM6}@5Ez=dn&TCG;S z(gA<$&y9Ar2hfO)9Rhjf1foxg(g-IKctKQBfg{lei~#k5mQ3@0R9my>sgL{m*^nE4}s2M;?0U{1ey4!_mr;E=u_$k37_n zLyGiCMQyUZJN7zpl&$!w24IAy!q`+;@>#`Y&#cMB<9tP zn=hK1ANiS2oI3N?@#f%}=P${fjxrd%@YTl;&esmzb)`S==+SyV~=H$YA zPaS#}NJS8(-XQVDvT6tte`s|+4K4U^hSAUt5I~NT+%Vy5Qo^QGpDqn0s+pT&3_CMR zGc{T_M#?A^cnlJ%>xRxEgW7KbNLHZ! zZ)NB47%L?AA}Tmb>=*ZgQiJmZToP~vzt7ROkU|7~7zG*0bITeJy$xq!ajDjALnP-B zxG2>jhyD^$F{3bjQU9+9LCCV&Zi?@{KN(Ddr_skoEn`K|A7^q=@(C^lt;iysVN9yy znyY-qBoV7LvpkUGysj$?ZS&||tL=6(p~`zy--c>hCA6FZmjR=cM3H4F&kKepX`-S^ zhM~?aHhtH-xjC3j?R@HItg3UkS%5DpRiv5%t{nsoU&a`LigaxUpXUXL+q_{)Z+zXU z@4N4ALju=?dW;1w6SJt^5jxuHa!t^LZLCNv^exVpgK%h~5W z2COg>rhaaDxVK8Js_2!;tLvM_LbYd)(~MT0LIwhLg@7CM`x-A+6%#xQa%5|32X5~N zf9S(+|ABYhxY=7=Tr6rBu~8f;szz!tP0yV>f9BycUSJ6#?4vQ8rIp&e7u~ciyHx4m zYvb{-m{;a-*I0o~1a=m&cFc=no6C17>%B|?Edr(`!MZ)Ww_A7cR`|R;c55YNwv_4Lll=~LwQ7=TjFdx2jdb-?jdEEBw`(Wv@1rL-FoM2_J3A!w{=)QVgX z5wH!~po(Hz6wf7ChEt{szjJ2^^EjGXQ#MW%S&XQXX8>#h3QLMC$tuSA?Tx-DlFlY{ zr&8M4giRCRbWy8-;be{l5{dXU?z6;;yqH9sAx|#75>00d?*7icWj50QAFQr%a7I*y zrf^tAUI1h!I!R#i6RV3KdL-?RD}y?pMGaVV^2k@j@bq0{pvf3c#OA!`$8) zYCW*19MS=xRwz~>&Qe0F;(+6)`9Y5I9^yRoBfs749$Iedyf^FJ3|(85#SxV_3ZRS| zwd%>cmiztVJA>)Y1fA*zzKsi1B%D)VXhk_ZvCOCvEJR?TCWOx1ysYcn=HR*>ep?aiu@yAH@|T-3oR^HFIH)ZQI?3|Nq1ekO+*5BI05e52lIcIU6& zTyNEz<6u0T%y3JlmNV@4;m_y0-Pvp=Ng^<~yR>qBeeI9`(;u%KTD|Y|!*CVAfy-~G-r7fv2M*qYa48{W2{{dq3SMM#pSR8rsf z5}s8nEhpv&ZlcvqT?unrumnE|z`h}T6wLsqC@i3GKNQTy;{^AKvQLN_LvKOQaX_a4 z_nxXKQqcomk*KDFp)s1m53Ot0uDyKj`SD=f-oLN5w7|-lJDIT}rT*{6r;Ey+RQ3<@ zvQj&_ubQjTbK>BpPz&>VX&f*Lh{3uLw*;mkun{X5nj$N_6eP8#dGui8*x|0JbMQG( z38Kh*5kxCBbhnCengMsfO>_kkEQ&K)jzc#MAWX^Z#Cd>Ox?Y`4qV=1-gz7v4TFu#{ zPx)mWM@t_3Vgivew^T+D!s)bK(-byz#+Hx;IiHANDSZ z;#q&X6-N#r9^{fO7M67@>ReT`oWXP7eF`Xl|(Pv7UikqF@of| zla=N9$UDv@$!L23IyRk7F}f`mWMVHZVUGbT=D37YLm>}lvpjGTmaVsI?q(0RQ>|1h znqfN@_$v_HG|chTX}3C_@5OPrv9;lPE+F|6zxh9Y{%^hsOn`YTuk6>&%Gqb11IvBn zkvDwshkvM6BiVA#>0>#=C#f(R&p=|8T%hUGVlX;RT&o3;MHrg_&vcBM&q_nrX_`=$ z2FFiu!L*R!cG~AZ&TcPO-G5IE7Ef-KwJM7=locI{`p8rz5L~|8%d1RWp%D_tm#%J| zzf^nh`|>F1+;!p;fAQapXGB?V~S-onNw)6gL1 zdBbF|BX{S}mcX)9)kt|BMx(2=_2z8m3cLV~B#R6y3ZNNDk<~+-i>0-11z*|A1i!sK zFmO3piv55F0LxU&no%)XQ37gVh=csV3qclvaM1rLD0DlOleU(@#Ssf5fkH{fJgv0j z(IK*+aE;;bnd`@-cX6F2?TqT`Umifk~~hhG~Y}-C3ekZ z)OBBR8FMJKz;WnQk*~>7N6F{aw9038mP4l{9K48q&(T9C?pn~)ER9{rHkMVP@{`a9 zQ%B=yx{}JM@l+#_VKr6BigGTr4G=t43Ol0wWjHBW;#EP>HMlch5YxeAR&1Ln(`02a z8CNb9qOw_B%H@nA@Qa<6sYrQXK|P~i+>mn4z!fc<(x%#7u~pFycB-!`%q+L(JE}xM zSt41?8uRd7E4^2qf8z41&!2rtk(lAerDOM=UR~<&F4G&#Dsp50%8DN|ndL*fG@A_p ze8Q}Uj)m^Un7w)P=FZLz2;m-D!d^?lH1c6Fzz}xgc+-&Kr(v|zUg!;ahHl8Bygr(? zs`X~24%pJG4LA$`wMaSJ7S(5{+t8$U;2Imi>>UO$p&Q)twh$C56!DRu7`}fbk z{Vfka@$DB6-K_?GDpL0H?n<3v`j67;h*9TMQ7cGAD`lo$P!~B#rg{?P@jY&JD=qYP zk-y!Ph1;ukim&X}SuPIBBjXre7UIH`0CThnE9FQtvx(iidesTNFiPY`i_)#9JJ#Bz zN^5Se)BfVuz9Y=fB^>+om%n=K_@PJN`iB4EpZ(PT{M(-%3k%YMwSw!QC>B3&zbUjdmAAr>hN*J0YwGpI1@8LI zovWMu-lVrZ-oHIQdh$fnj&)rJzEOI5hHlCzcAs$p7%V5M)#{wpn~t9Ms;7OOCRl|$ zGWe{ij1Rg4!zD8U6jLP`09MgV)^U9h zCWTdS&A5gbiayVAr6OKQaLKWur7QcZ-G$oaYdcr3Zv%K}hpsp=H43()b%Ey>WgR$- zuGkAGoX7Dw0A5#c24?Kg1bq|%vZO2*Vc4VfQ*+8255BF_XsWVes#>ShVLr1RQ{tQveTB46T#*-VMN7zp>MtrxgLE z-T}bLQjwWOJSUcbZLo6s$2+j~ieSLA7EB07sR4I0+RN%)x9YwFt*8upnP!FmUYlce zE2M=7Kr32DU4DorR>(y{Y_$$7Exq+IMr-6_J6L;leDP9{h5G&Xy?W`zFMQ!M|ME}2 zII?D1&hD!>8QZ(>?Ycv#DRyPb-_nkaT==&~D(`baSH2)=vWxa&bs}z~u0+0pXqex)j z!YrZ1UqymDI5?;ZWdnG4IpSq-4f-k}PGx-h|!7{Gf8c9oVwWiy(F>Mf#!kas>`iQKFD` zv4fN1xwuwUB&A*~L}Oll=_N|sB+vM8n^Vu6MBM3bI9=<8fflVTBrF9|KjVlsu5 z6`d0YwgqYew3<0C)lIg&My+kTPAqe5QI3t`Xq4iA2N&?;g?&oG*|rrxyufXz!h)i{ zy!Jfq5P=96#e5ubu>=xTQ4)8Y_(LIe?P*`H>Z%^(Ts(Eh_B0k&s1S_6N@*IwO7Iun z$Kxds9)VFo^G`qcK#=_9T=gL91*$M$Xuc#iO@+n(f~ipvhZ7r+DKHf`6C|U%9gYk; zsdes(!pkg|(CYe_fj)v&yFMc*R2WCSHGv2KNN?>zK_k0ZV~B&ct|*dD%YuKpOp{Sm zrX;0B&XkCl=Yh+dy>|VP?rL`NsdJzETW>n7F3k<1>AHROYtOuL?9AILhWV{0zVip4 z`s92~y0N~NH>$nN^UTU$pF8)!gZEaVsuajO8&;PU_PzVf%)x#B_At-YaOAPMDoUJZ z&%Cj3Th7&&E-oEfZQXsChsk(CcW(YS|F@4n_P#U!_y6_pzVL<1D{XDgIL=PPL2o>s zcjS%|O0gXUrdb!DC^$ZrB*pXK75CUm4Z`~#KE8CQOVtNB1Ng?pp};3ip1Tp*{aG$Je!PBF zYaVxU8s2r?KHLr#(#+a)_?mjD=ZweG)poEnf0*KmaW1MLO)SJ76#z`GrCH7Hve$<*pseQbkfV(5RN08HelBfi@Y&w3|dG zq;_KU$BH5*&U6O5){INN!BcBj-ucG+Q)i-wp55Q^f|2W4{mq^`wIa)H8v4r8sx@;n z;GY0MQ)aUXWb*-r8SIP!5lLt}iI91DkkFQpoS2XDWK88m^3-xj%|y7m7}qrEPbicI zVCBTf4Y`cA%XTQ$YtN3o4!Rd^P=o>&c{YPH5@Lq)y_xH|Wy%j6JjgHbYioORb~Ahub22Ap$+LB0V!nY=Kvo+v2k6yEoUCmRq{Y z2XW+EHft))Zg=92BR{M+8(`eB1TB@sbapGW?X=cVB)%xRM&YNTwUm|4Nkxr>sEAJ$ zZu@r48A+whUvDpUrWFvyyL7*3XP@1ict9BK^9esKr7O8{^&8(5(mdjrC%*EvV-MaB z4k9`%Z-vtFTFVLOb;AC&Wd3aIJqpm z?%~&+{DVLJhi`uSGk@`4zxa3GMf;B|FMwcxnlyPGMlCZ^GWA87(RH}`D0F8!UriH; zE0)5vcj^I2%PXo`QBBhnB?($7N+4;AbzN{5RIx|^bm5b<_>LE6y-_rCWZf_q=2Sz+ zV?IiIqrTjzsf;i$$InnnT2Vly6?D5(d?+%&bOE^Suk`?*9M zIV!600a;GmeQa&*`gmZaQ3AP&VWudGW>Rq?K4Yh|-nXAT-%zEaD|2d9cKsku`R)E> zGIc`RPaJQ)Rz;7E$0H__BPMoTe=?cyMddcn@u@r^#$W_X&wOYKCgVksjVaZ>pn%0L zVsV_rG`fqGNJ0*n%>#^TmgPbHpm6ul685}AvV_Y69fzAs9m@uo+pexud@q8NA=6?d zQBbDS>5YvWI-8oNZhH<$7cZJ|?s1YhU)?vFZrjdCl2lou8klLq%x2LG&%cyA{RbXC zTB*UCP7bYbAN%N;C%^vW3m3k%+-lA3U&(zg_XF6j&jYBmt?|rkHfS?IbZq1^Vj6_5 zpUApu3UDRGrBf0qm0u&$1PEirTXjT><$>icVMUu?lap0kWZ~3lGeDM-c6OKJ6dsXQ z(f9qy{qO(4=<1cmzV_j!A+bvTl~-SQ>RGqj?Ql)Uhl(as{?Vm4b_G0v;b`*^JnZ z6s1XbdGUcqAG~~hGGO$BhIObA_) z3(B>P(Ra>X_8tGO{qwLMxPcA96ii3KT*$F2ppm}IJm z7x5rSBAk^n)M)w=f`UgI3e3uIIYoPM!~ze<%2G&MHnUyV^6p^3N*FK@vLW0gzgVxJ zX(pQms-h*SMO;ai;TZ~`m? z)#fXgu2lYC=H5KalB>ECys@uu&3&uPs;qs{zJL%CU?Z@>fWg>q#&%D4dtZ8BK6g(W z8@o-9KfApz?HR*|rfs}|+ik#rY|LhaB(zkaQk6=zS7v49@?O6E#U61ZVtyxHRw0AC z=bxPKQz(`7^1X<75pmD`o!{@=bI&co&g7*DB~6^ba{|9JIX(SzANY~rz5nLgm6hN8 zppVb!@0jhuhnaAGxosT^9rbps@yDDU|rr*7Pd2wnYb%L(5 zX13ea{rf~PF(7>8;5%OT`ukpe-?5+m>9sHaw=bW1`YRVtU9Z&HcYgN|>^pEsk`z48 z7GzS)S8p`G_S|zIl!?>aU1QkA4QOSTONypKkrx~KJoo(s3`JHz=Fw=>M(Dk0iKJi_ z6QbM={L3rXN>h_%!-mwV&P-E2Pb3Z%#c>2xLevg~ z7HE%Gbe-5CB`gIDQ^Vj4maZgVVuXECcj!4o(#yNG?K)s-5gsMWWmPhv*cD0Pk{@u( zvi%?sMF~HH;jr0k>9%fFDw`WyXzQw7hFbxQ%VE}7S$p4){D=GQyZ5V4d^HL4=>t>4 ze(#}&ADo(+vh;}MoiJ?4TAZXkQ7x4wO1D+^|DV74pWpxEKbpY5L`k`J|90EkZH6sbaPV1Tc;$)#K%vy{ysQT3u^zbyUUr(m(veS3mbT z4u5xfr98cV?fk{R{o_CFoPGLrdlznWwi}770JXiLR;xy_pF_q}Du49oN0tvREg#)` z?!u+XiRt(KyZ?=dUzR-f<;M;m-s5pA3EhwU=|>lS{uhPqu9d~Lvf;MdK@`+yXSA6K zIR>3{gv8erb$NMy`Iq1KLyhliH5-BF&CM=A?-2GvzGxNTF{@2>o1MS<*q?vw(cj)( zW7x&bDpjcPtVpVg9Ji20Jc29)Qb{u9JW$I3w5aiNWzS6S`c}18JzyEnym0!(OBZfC za@?*~R7;gqHGyzSDFcGT@-jhDC9oG!P#n*L<3U}iXF z*zX^kA77jpSITBE2!;S~PLq3F-?J=>?#T1;juR4ShDB)<0wkF(o`foT1b)*M5^NPx zgSOD8`A{*V;A&&LHRyMD(GqqUuu?%L5f7RT$wZBjxK0cnLw=AP2#eyV)9d6>zIbp^ zR!!WPX_{a)Vh~Z)H8D#=_we3*=T1HUz+Jb^ElmB(A9(kN9{te1rE(l~ad_Zt>xQCh zH5N-8{X1*`9v6@7|6hLe-~8Ec|7K$)j+1z;dFkFGb8(|38560HD{&yCB2AE&>RW^G z-sM;Q;P?Na+w0*1RR;G4KSp*CC9wfYg;#(h;#~M8u#dCv`HA14*^juPVk3hAoZ)Yn zJ12uHZj&~8kJwt?*jNu6{mhL`rgz%c&wuUsekg|T*QRR9d z7@?Rw`rrQM7yplc7qmB75Lt>Ix4TgoR~&f#NxfpTm}POq6d`d}MOB*HzmP|PplFHH z8}xcS38yEPnP&SNUVU=z``-Po$NuCucGnnoaWhTJux&q%(j-RvptlBruYwK}6QPZS zQnA66gi=cA#!fRbaA5cjZg0Q3< zew22GIu%Kpa0*-i8*tqtMnkblyf6&~)|;nMxneEsnQAl#vV=}zY89UxpK)A!R%v6m4MT$oxw}jH|4phu;*`gsXP`G50Ib9l;d(^a~t>-8$`PZtzg|d z3WHn(xWGtx6#A9CJ9H?$54}nQwF0R( z0W^}kgW&)_vL(+<&$wZjF-ZpkF=lI$4so4^W0Un?{iUD!t^e|SIditwH$VBe|J5#O zPVbUN@pA*Bix0pgd`+?y#bP{?A+QDho$q+Z{MgiIKK+Si?tT5-ss8zmDUq#pU#gYl zTsLAxN;FNbmKrxY%Li^d`QlUUtt~0dRk$u%EmIm%T3x6V$U_30u9oHRVekCR=f9*B zehgPX!YTZh!kFOrpy)@hbGXAy7zMZlHW=Kv|GtOnrTXc!XZ$G6CJlL_^nu^`O(Ezv zo8FC$tDpFrzvSyH{(*fLPoI+(=N87~?JU&|od=E>M-u15PJ4Q3zU)ze&vW|IdndZB z7Wm-I_;|P9j>6W&;==0C`|Rnn-T(B#-~HeREtU?~*B}`nL;Qi42YG!~WMxZKqzrx# zv;&6D#Wc#rD3DTVygo?`%W-kZvTQM`6FCIHy<#_!l0QXo6!csC2`>c-FJ)*M`oX8r zV&nq9FHT4oYGyE!rfym<|Xm3%Icml$sBv~Y+ ze12~Fq1W8wvUV{)k_dNMY^4570hj|^&~=h{IZt3qIJ^i3acV4B6aa!o z1xWhhW=Dt&r;0yGMbaPiSnwGRF%>nvb}$K`oP^w*RMZ)+ifRi=NA=NQRdlZCTPsP zyxD5qP(-m@9#<+QzuCQh?S-k?nto_P;n9En!(Tgi`@Qe~jSn@~R?85Vo2`|#H7^d< z);4lQDUDBddfgBH;;)}Sd-mw^d^+Ho3Lj+Tl)EefF~PHXxsYVg8IT*~07s3`^+HCj zq9Ef%gN(ono1RN(lqALuMO%tFJSYyCHpVMv#dUqTYHeTHICZ))*KKgu<+&5FaAEn_ zTi*5dFa5P*%jXjfSMlmRZ(JwYl2yeE-1y zg9E1pwp!KgcC*7}T^Ki>I(_9|{`kN8@NfLy(!N8yyF%3+qs(pgV>hv;#?6^2$<}bi zNf<#?h?yo*XBWt;#3?mC4^_JwI(_Jcr6pPm>y^2I_@Jv77f#WfQFGklRwLSi|3@9U zW|fBPt;urD*ZR*qd+N&7mBz}AjWZYTFdmtnoU7Sms$^(*tf2f9XGujNg=7;mRh4D< z9YvE4EH6ItZ4Wn`RawY1f#+cy_l35xb zpV~7_+d-B%fv>2#!m_QtuZ63VhM}@>6vYRVjryb>{E*6fP_h_>L`2a1(WAykU~IVP z(KT~=_T<8GnVFFIevI$!MG*sA!3FGUw#+UA*4!ks1MYA=9ov5+Yezg=-Pow86&{4} z1;NmlBCclH?fdp=aWdgR7sp=nYRmQG3E`gmU-QOa{@J_kd)4@2Rne3*0sjXjkR_Vx ztTk8HGAWu_K1_O0P?)Zn<;oGuzW(g9m2f?UmUISh`R=zd9!yP@Sri##v$ew|N(Vl_!$TX}m~j^Ey3rTntrTzfu>!d@IM&Cb8?7k=*Nf9V6m*cS~o@&Yd&)+fqN z(2CPQ)zpC)LhXq{#=WpKqhH(zfAq)x?eG7=hi~6|Ad?zWlY@kq% zW!LH1)rvwqOF`!WVug{UR_sh-^ZTdHo)vFgTJ87Kjg9`shd=eu>mR!F?mHwq<}8*h zTOj$8FbA%Ni$=-;6uIE>R8#W(CuYBo|Im|9eQwy^HibkLwj)is!D?-9UX>@5ay89p zB|FL_u+qdJu92ioT2l)~kABZ<&9U(XOCEf;2T*F=X@d zrB#*#Jnh)^6$z*$M)13e5Gu@An9TFJc&llp)Du~v#tOSC2$$p7&heZJhKfO$RueIt^yF8!W7XjDEKRyrl|(QZV+2$#S@g6XR2{? zq+~a?T?VY-_8?bF(a=e7M)V zed{~k^58?Sotc|uicEqy^S$kkfjfujlNE4*jkSy8^$D$1BFoJ*Z{T&C+x^yd+Ud17 zKqsuveDbd+j@(zCURpVK8SOYRG0xJ|(kZ2-*X^g7sH#b+Ja*S3?^G1+#kE$WIW!Ez zM!P_@!qdW)G1lwTs10B$D^{2RC&ZhfR+URsgJs9p;a{5jg?^DM>BP=$ll$69+yamp zvSKYBI`T$KJ9IntA1ha-B<;y&q>4u$esE^r(y!cqH|J@^vag-H0NL`hAN5-QCAz?`2GLkXMf{Yf8p5v z<*>WGwRUZ0a@u#@bI+gLbKr2P6q!m6c%lV{BptqxJOKv_g&LBd-^0~-HF?ePE3uXO%2NogBVnSg2WLmPl_i_BSTUSvf@ls}|MB0hJA z4#YAJ;eZ$mHk>-H3tm~7oHxw6+uj~-H-orGOjBYs!-fig0ZrixiTL5nK@7$qSavOR zioA+kRDpc~2bB=vGF?yC@b&nvM&qBe8wU<>N>8O-xPw*#G{MhYsyOa&TF)G#0pF?54zq zL@SA{@)XHSF0&-NeBoTRYNFB6&0^0t3|Tfxs-V{NvNp?>4&Es#rS}{?v1i|sWU8v` zC@N4d!!w85QcIPo@xuGXsZy=J??3&zq^P-6uyo4mr9}kb8Ag_&6r;tXnBva;e3bp_ zhd;`wJ_dHU`TN$VxpIrK|C239nI=7ik0^Fj1o6@Ozy+DlNVJNoUIu4`)$)C>eicjj z?ceoX#o5sGDfZ1}>G7{U(H?fuNvKD_sVS5mR>WUvn5H6XTaKFv4vqm4x5vk|a=yCW z{IQ>T@9+P?@9!C_Mv6HIK&Mm)fX%CytCe!an>5Dj_+geM>L!I$^_00Dz)Q)p{?^*o z#q*2vbGvH{ySSk7saO!&jdr`$ZlAdA*uH&xCZ{G+&tZT(cm+@kD(WERG_RgwiI!#V z*}IfSQERP(k7}k~<#NS^|Hv4j1M#~ei4SmhGsJ_}G@J|Ih+tiSDp*+tb_B5&Luf^# z`GW;XO2fbdOM>geP7lvw7cF6z0c-jAZEyO{H}2Up?e;rzk~h}2o`3RdH~g+;*$aF3&CTzboSB)O zpRLvF%rt2>JdR1iwA;jk)m5mr%^{jL$7Y3wSDv zU~8~!Aw@rcnAMD!p=mjfxUN9+=`_L!%cVI0WHC|3dyZ>Q&SZlD84&1PQFE4ZaA5uL z(o7n+jYwiRJV@dj?Pf*OmC4fOhV#Au`rrQUul)QY58S_T{w(tcll5A4Y%&})vL@^* zNHcC$s-j`SOVf0dk_aNfO6KZQ=kXk1*t=^CySRZr(Gq&HK(JM>C6klgM$_{>2NDSn zhL$nY@dOh}Yr>sLz8f)GB`38F{q}qBT)VpRg~y)cqM(}=_{hoUUKsR-Zojv@Z((X` zBFSS(RwbGyC@Ubh60n>^{?K*n<73jH0}@x;+btzeYKmHs5=zY^3dRL^qnuK!c4E#V znz*n%@T#2IwrwyI429SbnwUHzq01;C3mbtB?Ks*BzDD0m(IWc0IOix{I$~RfPVk4X zql5-nJ6UCx#NpKV1n0DfPKrO02s_PAPn1k+^ZZrtQB^U;EDby-PN}XQP8`Eoq3hYz zvH3+_uQ;turw?f;k zqUC5^kg39b(YOcSIc3QFkCqazAfowPo=2qBPm{Q;t z*A(*@C@4yBKJ;CRqVkkh@lHrAD5j~!VVsIN8k+{K;{*suQ5dLJ%LwyS&hm(&7LJRGlQ?8U1FwQhHWEI~A1RVHoUJ^ku{{07jrTLRT{HE8w#!J)2z%^9atklS* z$2=VP@Y9B%fdG>F1{CTlh~=5HPuSzkje5Il47<2dqGKGX;JTt0Y6 z%;Zcp(3b>F&NNLYCQ9B1FvQ#}sE*ZN|HvDLgWeaPdPx@LYPseNhAUTAL)U3HwjO-# z{fe!dCWtI#GvrhfaWFL+?*@96%i}e>oDNc_(?%DaG^CmskpLqR3TKqS3h`~D0pgoN zu}D=?WSle`X5jK6r{FZ+qa-qkmO-UWRddS2r1&YmmN1EC>=bufB#w>-=0;?H1Ysch zGzFV6Ls!e(1QOr?pkCJt;G_YA05J$#Ff1@HMb0f%hICZm0*OA+56zg9)G&thqf({1 zW$OwH{h<^L@dyLJ5AK4ZvXn4ER{}D~nBQ(JFID!=&tygUdlD96?giaJXyWo**Y9?_ zVMqg0X$tBmSelfTGB`wC7A!@KXiRI@wp|9SJRN}2059Co1^JaG$60p}$M9G=3q8t( z67h`^rCNeiwtF(3N9cDqw;I>iRZ*Xr-LrrB#MSM_v(KIR$VWbUrPYB;xae1)dVAzZC2p+RL8dJ5vJKpOy)fF5qpmB1cI zt5fWNrZ`aa9ek|tayPR|Mo>h=yBI7Vy$58Y^ge7foua@e%8MBd_Z0k#k7f=N3!`MB80s*u|~Lt1eO&M^Qp5gC+MiI!VYTWK$_AaP!4P zkr4mKu?+D@`Z|RWPh(w#vU}UR-rjf9uYdjGpxw32G61}_-3OXL6WxB-iHR{$vZR~} zlE;D^;|YPy(h3nWoGZCCh&^4(CJcGX%r<>ud|+xxMBhY2gqGZ7NtzZzXf)ktL@FH5 zbv#|5QKN$M7X=JParB-0BI}`jDGgH;>0DG;g7$%k9Ayu{xMUc95s;T*iRePm^?2X$ z96tcd6jIT&4D#U=I}id7P>gR5;KwzZicA%g4aHY zj{-bF8tmgRK#JxSmq+SVk)j9gIsCRa-=SwvJt~hSE=Ij!qa92P27_mxeO4BtiNi~V zZZ(_Dt*tH3jeI+_%|tVG-7*6A6`bj=GB1TN=eb7fC0Q&C;Mc`mL7xP9fTCf5nINLM zFz`^Dt#)&(xw!^do|;?SbMR;o@uyBb|5u;*)ZEHEg)5YGod_3vy&w@0gcTLx z4~J(kNz>GA!%`$3`H9O1DtZ@gZM^2RhoUNd`tfIYPMP}h%GdlDW#LPqNZ{rWHD?z4pmqfxw;)rMEUAP6tuvd zl#-Ze(71>{7HL++G}WE-3t~(~x*x@QW{Kl~~qmZ&0sPg*g z>%h_Q`{2I)P>YV+gGJ$#gE$PmfV_E@`c99h&@izifJ~{l6iW5Ncgd7T3L+8Z=#{!v z7PHV0c?cdBhJFN=RT#Mlz)G`0=w||#^FbQ~H zT0cO71r?Lb6?nxYmqyBt{wv%NJYGUEu!39BhC3{X7GW8Vq@a62!$#;f%8#9}qvSS~hMH7Z0<=O%{{R z=iZMzIu8SF`gW|Jt29COO|i9>}cZ0Kt6M8npg*%@?t z{oyczdn#!_6+zKbRlCt@fBp+!`1Gef*%@Ts9;pL;GHeRt^}N$vy}tdbSH0Hru9`2b zmKXM4ZLC*9&PpXY3`MAJI9*0ziv)e&G~*(0jz-XlnVYaBQC4{oeFwWK+}vocJ{pNQ z655#>JfV4?6wA69y~0*l3{WBgy}_Raf)Vx**(%@(bZxXBeMd`ohf!NOjb9Z zZnc9u?mD<<&m{Jdm>hxF=%oN{9J;2ZfNwamx_o5uU%cbBpZ?4jFRu1Ay_$uYmZ+JU zJ%8qME|l-OYeGj0rMXFY4S}4owF@gzyVu`b=Sj4VU7 z!&)|)eL@C97L#XGu1gSm-9F72)DcO|fQHGd_&-c%lX=d>q2o==&fi#D-9<~- zWgFdYH>PLyc^$u0n@!q%MJ|WFD~C=JM2Q=;Z)~+T8$>o~xJ2%ET&--`dTDii>+k>J zb6@__lX%$Hn9@x+575=6-0KU9^u;fH;rrkHPDsozfBuUn?uQXhGR=sBK#~=Rq%4Ya z@ba5UE2H1H=KYOczx>Tx`;4}iANca4zG=77p0{?}nVnELQgEf6Pm37VH&P;YCQlSY zMg?kp1iD@cWVa8;c3TD&rJ020dx(Xpl zbvW}LO*9F}VZ&v>iP8dva2iTUdTF(PW%a3(C%^Wtcf9M}@BCg}lRGSRuDy8m%$KK2 zG;Wk8Oi^CBF|644(E*BSoRCiNF6#8mVtww)`Sqq7Ig(lR!|2(QXNS()%Eqw53n7+BLLv|+}$swiIUry)xfF@ba}ECh`R=~pV1M)U1Q#O)i!7z&dc4McM2h9b^5 zns11s;P&vR=XsQ=U--*gvwVuN#oW|2K^Q6urHInt6H{O(zBeGjC`t87)yUN}^hAM~ zvSfRmFzJZ?03yXMi_BwhxP5DcbrHYc`i+qP{_Ysb1@3CV&VwG!;;pWSxD)P(u4HQNCm;Aw0aO zyLthXH`MP)txR*;Zei5d`?%Qkd$KVIpia%wT=d}v*UKn4kT%IX$_{=W33xxqS}NB% z4S2dY(094(GWb`tn3HlO&PnRz5$$c7IcZAur_efvk^@6k;ZTV~V{_gTmzW-8| z6!ng*^X`jB>a)HhkjLFMn82QcXGI=!?c47;YU(F}6viH;mVUB`FdziunL~UPKoD6G zL(Xlu2Z+LeP$^6v6F{J#x*hSP zWKo&3arF?amsCx(=OFjQq2rJJO@1ZqhRF<(Ee(tT2@ne~6+Joc09iEWr)G$J(dt&Q zE^`D$WKxYb9E?9TGj(`4SoIpq$7n9T%mwfH9rE(>WiZr+Rp5YJP^QSmbfFDNGpSWp z=Kk0q&0v~@6c;M;*@E~-vhvQy-@ydoshD%fU}Vy52cme z>p6TN@o8N(etniM39ct32;M-QR&Ytk1bSL&^@<|u$Mb%r&ib0XNwfH$yWctcm+Tt^CTBP?A9VnwZ@h9+6l9lrz6rO~rlBvhIu`Gctv z+rm!hoH1iS9kd@t*o5{->QrW>5VG5%uFTWPhc1wz8m?oD%435>PWNsboh(;tQW+kg zl>xQ--A`rAqqNON0E-$q^q~8ksJHrVde}k0X+MOgmuok1)E?9^W!cm8tlqWmITSPN z)bT~TBF7r|ewfS2zw2#IL5l+=$XViXORIWAt{U@&UXU!7gNPurLMpT(lY{9o~riv$=4BOasf-`b5HIULC4#-a}5Tqt52th5z5YWTT$dW?un3~B9J8= zIB_5r%B5---MBZckL@iW0Qs6ydCxWtNpaM@L=gPiQ=~D|@i4e#@YdDm_lUQH-WpQC ze!-ce!H{cX>*2!XJyoWP!i6hNz-1rccV9i1=l}XUCUEy}RFq^PA5W=%P}kOX4&_Yq z!g`yko^tAtjLez_gRJ~_E8gQn$J83G+;(V=Sud7VQE+?@tJ_EZDD~~ZpFV@n&)RK? ze1G(n&PN~D<=VAh1!s8Iu`C1?VtV( z@Ca@MKWu4~A$E9YPrz;vAKWjUA;ijn!Xc_^csizv%~0*#|1l6tS9sa-E3kinhraU! z^CBfWIwG>^7=tc<&E2f!D>ss8?2*_0*lRS^c*#wZ?w)pX+3;*k0 z_hv1%RFXUzzy4=P20rWC@=%Z4q~~e$OoB?DdP5Vfo=#(VpS<$9lc#&zTh2eR%veNqEf@OYuGPwd*%K%r%NUf{{E7MF< z+@yZ<;{mUwnplyISX0#sJ8D45Dnp4GCpUi`eWtCD$9{NNco@PApc3(kixeS5Y>3H5 zSw|7;33%pTgX9xI0HX_{b$gXW;9qlrlG<}&tcvuVY$58skMGE`+P(hQ&BO`3NkEQ} z--Xr7cGi>4`X`cY@KcniGSkP(n9~$i( zI=sDBvU>b}^&T(uclsw7*7;g0;_`NRviV3w0<8M1|>tSw~wT1%A#gR0nWa zx}87%vhLA&dv89t%`rB@K@?Rf@TZ!(GWQo%FPYp$3nnX56G9u%F^Vew3GWDj8D~wm zn_H_{f`0`2TwDXtAc+bl9Y4(y2T+|TOI!gEY*h#2SbAbqhuJ`VN?*BT(GZqeY~cYl z7CN8S=X?7hl|Zf_BIJ}~2@@};>!YLhKkN$HR<#E0-4^L}_jfDr&;kv-<_+gt62*ON z{M02`cy4!G;AqHD`iGN$E-#U~y}fKja`IMeFi^K;r&I1OHfD}j`@Q0PeL)?NvewRT zh&y{1+M60%4@%>v39HhC8cCCAT|X+xAe z*6H__tsf8G?P%N8w6Gt2&M${nCD+*6Pmb#Ak^}N9ikz^q=F7-2EdJ5ydmZ0}Va*Ed zN%{PP3zyEiNqt13{t@%3?381S7k3+%jBUAN$qe2oDZ4A>KBgwLrJSxM4fzFxqKG8H z(3L+-j9!UVB}c*$?`=?+SXJBZeaqvmuWNylmo;L+HIkDRh4)+g>lVZ;A_1qQ*5r4X zR(YnG=SbvBJ<%N+9;?CGSu(^rH-fdl$wrzdIu}964&X-;8=W_l!`ufz+w|X&Jg>sI@lry>t zVZKbyj3J$pGJlO8uFsJ6(SL30a9HeJnx_mGoG8&)g=?5rSz+hCi2%1vBb6_}1whNekwSYY2EZpMk@#OZu1X%?xrE;y(TdP-eE78RWbZ|pE zJ=9G6!;Bi{Wc_7NDBdQm;%84NESh*^PT{(M(4BLKBesZFtZkKu(F7qA#uCgJrb3xR z$s=D2`=t?^3g20lHr-T&>+IF7T3Ms3MZLAE>Q!^ibJOyel?8vo=-A2;aNv3PilICD z5TtQ+bn_IWu8d>r;8D-PK_*o*JG)x;Z~Ree5_6{Drn_}rcNb>FQO0od z(#QPIe!m^twz|iR6vvwr8Tv0bvPGGw5)tUZj@UGWEOC*uDrE?=s#vR)s55PgEjCxi z_>jyTnw3<2gO2@$Gd0^@4rVo?YA7`1+#T<(#x}F1RK|2EFOjCi#Xl9w1^rJ1d@b(B z6U&Gkbv1ji3iJ$$*fADGVAKj)+FaHE;RvZAg#lzGb1UXCGgWSA-dMvJjwofGzv4>c znfP7jhlzv>IfkjfAoJLzo%+l912n7T33PYXAm^TN*;2T{dsIMEuMDxF31yr}$|@|; zknMtafiBROaAT`qynIXdq&Nrq^6lR zs&WFBD5d6VmCfwUp$NV;ZMZ!4+ikf6#QR=o;@lR(du6Ad>K!L9t+!I+MV>iLV30Ic z5;&Shdkd!j7A&`a-4r_<=#t&wUOL)*IUE=>em&@SC+bKuo*h0d5htBR zQdEkqem11~C`^ptTsfM3imUIH8jfxTh%}COGA46W;M1IP>QeEjC5dSHsumD*GthC3 zn+2xYX$h0C@$F(^SQ`}9w07&;bss#uHjz?lxtraOMs3-5F-H5;hA-_{a*9OfM*ZJD z-mNQy>Lyz=r`7AmNMxR#N4z+^zYU%3eJsCrmuQ8fc~d}k6lLb@yk`|nML(A(;B~O- zRu_jOlM6Vz?PEK#_AAW`vXjW~b2El*i%MqYvAqtaMCf2)Qv>z&G=Fmjm{qf?=O6ed zz6ih%0%1%pT>XA3PdoJ0t265G_j>z$MTn{o9JA<`7~4pf@{EwvXUiKAVa%%FUNXgmJV!P_4VeUE)CaZ zatrezj81t(b92scc|-gI_DWa06U{%!@k^vY#A5iuH2r${3m|9>RVArG41EBujNM%H z_*jb&8(_gwD3_aUQ-N-N#UU=)MX4b2$%@)t(<<(K**p!dmT!0591mB$U;h2ETI{cl zIo{ec4dU_&4HY95T>iw_=@K1jxM|jEHKe*j55{U_uDU5_QqG>leE3T9W@)P>p{$~Z z!SGajMadGBWK|DslB~Ye8DT84l?BY15%x`V@y%irDr(J|_?<_YE?Uz7O>GqCC3)Yu zetS!nB794qCUbOMZE5lJFcGPMJKd+sas%0jw9H>^Jz~vRExjY!R0{Z6Z)?|jo4qBy z|2zn*)sYa^$nxzpjj0jRU*Edwx5_`qyAdlBt6$ z?p;absorA?k(EIc#*f=Q_&|);8i_5WYD|MEX}qPyDG{`-!=|!@nNjBzB+>O;tWXnG z)5+CPh@m?_daE1gU`>Ukp=MuSVy1lJ^A2X9t3EGx-4i(Yaz+4=US{@2*)_j4Ig6NV zJ$P&FQ7DsZe8#TTsYacFKV{j}APIVRk$%~GUJAoU0M-3iQ*gnvYosR5F>*T4Fy@w* zBUhnZYK9G(?%${;Wjd=Udvwiu0Iq!{P*;swkEORQDKGFYD%~e`wGI?GYid)H%{wcr zUiWtd|M+~_dW(L0N^b^~u=>d|vfN4M25X*{N{@OS*of3k)0wl5d3k!z^=|AC>-M$y zpRPNJFKv%UHEBk>pf~BU_D@iNfOyLif_f__r9;T8tW*D05>k)_cl_IrEV~5I-2D6C zl^d%zN=F|`&PtafMp_PYV#ov{vDYG0!M8LR>hW{tg{>m%*U6!-EUa*Fyaccv{C&WI1CSHH@;>4;yD}R_8`#VkBktRl(lA1rkgE}Y= zZn570O6scII8~T^LUC1^e6!Uq1N7X0-&x2w8>)HSh&roAK0N9Dw@Sto zg^Rm6Lj_f9qqj&0PW*{anWYUIh_IXW4?aw537pzHrYdZm8XHwHCkgTBXtw zTIDq2Oa*Y2V)!%lp_Qh5_wC5&qxK|eD^#E{7CV=Z(vzEa4}-qbnB`aiA06|0-F`SW zJh>xyX%@gY%5ycUhZw7AHmG0z z`{HWzlx3q1yiL9YJEJV@VT-t2xfJNhd$8$y=998(@U$wk2DuM z{qD)>O$I&hGGNzG#Rx_zC(X~|x^GgW}tq#|g$n zIV=_L6y~%Xpsdo9jFM+VmO&M71saBzi>bnOyRcaqmTcQsacbMkDBpUKd}f`GC=wF$~SKW=c`*)+OD&8EGRb53# z-on#jbQ}1Vt!muXdhmC0ddJj$_5PKxGZ;IMOW9`*4~hRa3rpdrp5I&qZXwazOOuB0+DT*BlFwE%AsYP&Vz zDsgYWg8P)_ifxXzbn#Ar4PdI#sL7M9@m-sFPMDXFW*4{=tpXh&F`Pr^I z50~)KAcw@6i}W96l}04FeQ!!!xQ=vMs}5#+(kAy=zOJHX(g z>$)4RnNnR8KEza;t(;1(;psC{Z6gDmJ&Nz;-C5hUy6QX`yCJ~f9%`tuY0}0;O|I08 z#0H~Fn_0$8muA^aDinv?>*z0WLom~+hen;Afx&JdX|NJi)o)~$j5{#*rT?U5v8Qx0 zLv(kRot<1G!jMpt@9+52R8gYE+C<*H*ATr})alv`YK0JFxTpPvdp-E7p!nu&**?|X zqw;W!D^%muXxX*_t~tulQSqoDlAc#Jj|FcU zqt4#OD!j*Xg}iTV1oE@fjwKsO?^<5RXEwAxWG4Q@hs@e+iPhsuJ$E*k3l499TUW_Q z27@gjzjpP8nv|RyDjR(ihzYHM#VR)XSz^VIzk=k9BiE5X#c$lc6X9Dohq{mNP3K!> z^Vo3IhJxRI{pW?K!{^f+;@xiy&A6-d$>jNEI63oEm_W-trtS-k-sfj%!Dphc+gnD) z={Oe$;1RW~Dpdbse~M7bEj6q_xfmgJf>D|kVW||#gUOX-Ftur?Aa6O3Wgw#(7-1Ao>dTZ>NL77ru=|U8!xro)aQL1H>*V+Hiuap zaAy4BB8mH;{VUTb3T98x-XK<)#M;^Zlp$MlU)_~u=MAL7vJYTj=E>DcS}Qku!eghk zDr?kT1Dz=7VR58S9;G-CT-V}j0Nlpiu4}70VS|Q=7FqoJS)?O8GV=>h@vBr(r-g#9 zD}f?;E*SedvYkQKM%bnP7HaJWn2A9M7x?Z*sDpyjG{mBnE{i469jK3tWOBq=N(OY(*&V=3jrRQhbil#TtQ~|a^O-(rxiBJXD`JffC=9lQ_D_^kGE0k*Q&G zi!?PZ>~d_;Y$`yQH9~6L_t2&i6O6Ec4n0lCK#t{Gb4|7Tw7qLEeL&vBU3GF>$|&gc z?euj!v5Brgng8+Nr8bv95TW{$E5PUxJ>dRgxTWn|3a;nDcN2u{`~0+(Fv%iS(z-Gb zf*emx%OtvyEMrV32FJ_A&~x7!QC-&6OZ_fr@cYS4JsCpW%v?OIQYQMVjQ7djPCCCM z^%!}!+}izY`4c|FroLw>qX{F4{+k*v*r=>9&-G=-FFr;1P@z)z{5C&-JxmDj+Wie7 zzCsqCQ@)wyxW$%J2iy=^N3foa%ECIWlN14z3ukJ>O^<1~62PI>q|gW{R)wOJpw6Qr zd+i|<7sgoF=ulWfWAM6PnBkFL2`@lLMTPB z6gmAeJ|*8vD#-X|{TXw)DPUFLeafIN+h{6Fvz+(5gDe#7JMAqEV^rhd4P`|KVZ8;? z_y_5gY4{*rq?+Lr;abQcYFUNTmYmataTb-&vXS_}qxZ$arI|6KpRBd%&I_`Um_p#9 zCLXO@ufI>VIURrTVSCSy@vkE*u-w>Xs*2sWKx)^O6A|VT!}y=}`p~O6GYE*D(h31e ziXqQM-^b8*A03&6XmUy92Npanun|;3s4C~y6~{OIF{zjqwp&8C_1S;4-YpjwGHKsz z2XckJo$4B#L;JZnf$koQE1hJsAXcv}M;7T8MsXi)|betCq6ptuHr*TWp zl^eFS;EzXo8PT#71Cg5*KiQ1(qHlsQRXXU^YnSVEcQm!Dl-)F?I^FHyJ)ajlZ0b9& zLB-Ag{dU{U_j`ahIeZ-$LVup@y6${q6ntID)TPSC17JqRONewewAuq@Z2oYSkPSwDM?F2Y>~Q-I0LL zRJ-esCk+J$LB=w>=NOHvWeb!=G%`czkrKB*F&Jg@joU%F-t6qz%xO*1m2sdLGVs>E ziA>BRqT$LRvB#D8qRkCaSuLbhDe47L;Irg}HcAi$Ae9N0#=Dm0L>Rfol_euM3X}JL znLG|9mTtkhtH&|g!D>y(Xd|u(dXEl%r}iQYFzHR-5pLrTR8DD^|hu z6!wIk43fAdKtyp0RQlzL6K0Z>-yyXN?T~Lf$Y1RKU;8%yK=T6q{AF>fQQgbIu4_*I zv?z8$Yyw|(FDN|KjX`W?3QV01g3AF}rZ=g|o$fYUX0$V@%9N)xL9&xBh_dM9)lP@u zELw#5xz?}xyDkH+(9d%@D_~x z51l4Wxj(rYQ6z@&Y&bEG$5aRjdH6oY$vkxVcApOgKQH>8dw&HUep{6s9L3efeJ2y8 zV`1$}nC3AxIO|+F9uDRAv4uk&mr7=bn_P4vr~`C%rOvWG$z^yI)8%~YV9d;_fp76^k& z5@kinWrUe(-pu1^fAB&-=`cUslvUYO13T@8&W^qvM{l{r@b(^dLS%8li<=*?OtaPv zRFTzDVw02<)d-{W+17i@7@Zl*_igj@8(Nh%I{u~UV(qPr0a3nm{s7&R2X0xVFvFr0 z&s|=1d!zQv-=RFu8`1Qthu2fxhfjxbu*vB%ArR^}ZT#JP9Y`QS6ShhQ&dzHEk6+d^ z$|+oN^9kzIXO(Rbv>$rsa^q>Jcg3@U^wWAK!Zzs5lizr<2@-|!$-{mh>eSkD6hlbh zM8M)0WyhFm#JZW>2%Lo&| zw}6}dH9=p_tJ8A-1O9Kfi+d4GEnV5_6=f9Rri?0hXoY&(THV+J?lC}mt8*c%R(6%C zD6Mjj-HD08r2m=R!gn5E;qGgWO3vlc!mbzBX`S!E?Y`d_5{OQJO%tE07zRO@@YBSg zNy5kWJRaeuOT*euav1QWQH#~A&J+jZBA9(Nc8rAwJvSil4W}QHBQ63o80!bMCd7rN zva=MpE<9hf8~qYJqC-&5adzfXV7MiY`KXsk7skkKQV8@+Lz>%Aw5K>sW*V#Hrp84X zxLRi2P@d|ZTB=C6=|F4}9vUm8!XY@f2fMYqE4dnmEk4+1HZ?V2#JDKE411neH1Zq- z7it*p99tr-6t3w;B6H3>+)rcz>;n+PjGIEdvg2UYXwANv!`{RZd+dUJXBevndKrco z^Iyy@?Tpa$S!K>m-#dWMuilh%PJ{Q6uK6i0iG=&jz=+-dZ zv}D~tc42A+?!D*-?h;ZS{b6S!F*-AjPRidU{R`L)e0S+xzb;t}D-Exd(K_|gv>l^y zMupO~(R2v&5y8|>+|v=p%B!?ToWZQ3ptB-(bSGR=%}^eNKyyti1V&Hs+~^=cF~`QB@MpzE&&*m z8(X{1$S}D@(TS?zl-(~|gi!CdY$0JuPOQ^|G{ZOh5p z${rehRh?Cxg#Y{;dh_4DsIKW-k6_0j0LgHF%9S5`UbwtiXy?A&U-G|l-yJw;1}lI{JL_fIt(1#cV%^44fm% zJR%!0b(|kHl-=MWSHo>pAWu@og&3*=n-nvFp*_+WCgFSkp8_>_**Fnxxl)#qZP%2?NTPCZ@KKu<4^m(!}U>*eDBUJ9N^04SipxyITFEvY-KPuo;>pm+m2J1R_a>z5_wj8;HEH0V<%|Pf(4-AqgHOvIZa;+dBSzl6FJ=l| zkr3X$HJ0OX^ZhIvqAKc_0b^oGN0y^1ovJ?H^|^X5;Cmfhsn&=&faLq|CyIx}N7Rr_ zb|p%QTjco7yG9b73KEY(Nhyh?m9#ccO1OI zX~BrpA-8GwjNRx(4xl%6U`tm*Sj50HYaXZWLK|@vc0y0) zXG5HJUP3yDHip>8 zNMg3%LLw)U2-j3xJKKaZhs?nK#3x80{4@?t;Ld~ez)j=B^|oS? zH1j}tj>ejq6i1rXk+!1@!WZp3O!VJF%8LIH5&^+n^~X=IvZZss_E#J2<=lyx9Ai?mNRp4kg!_ zWKmJ_e3fD>3j)Bn0kICa4)PpSh6FEU-T#DLip2p0q1hVYHNu(#>z4vW3={$}0?A-c zEfHySy;wDADr!+*gAZ?X=p4m{mSJh3^Nj4*gOmle2y-P{=DI=uEvp3s@Z;M_YNTV% znkP2F*`pz^ya;F%Ye3?&gw)xWZj_QR5($H~4$(pQlsrfui9xWr9Xu4VyyQCA7kuk~ z)6u~zK>jx;zjijR2=aW7A+;hWl`3vMt}n6mr)!YlZ&m;2W_N`Xo59?X&O2miTP zah)noCHujT&zn`YN=Ns>`6x5UG4;IlbHOsMFW8ctX?xY zdDY^1Fiz+)ZH`R3Bzan8)dK$lO0K_}oa70TA;Nt^!ZK*N*ziMc{qlRzr6{vJkozEc zc*Viw@&!F-ESwnpZneaPt=4+%G4gvqyIfK8#>S8carHx>9XAu8p(L?U5V~l#J+L~L z``1coVbes@!}-E?l_paG?PD%N;p<4VrpbX1qo#DWHzKZN%%Hkh%T?%YYr^WPG-jR> z(R@KDCP>N$TSLTu44)s?+-h0XDxnZXQod7<+T#BTQ5Y=$ zqyM3Teq)#sE?ku@a6eH{no(%1$lw0KsvR_!V}JVlOMr_(z^@TcVm=7QM5`Y^bvzss z+{A<5*@*k))5`6#=}Z%jidbMEDUvt;2es3Ort%)LeA8VLs8Z;`lqIYrnHHHUH6A2) zb7fe5Ye`AOt`m=E5mx-`i6A2HgZ2g`+x@6oWY8lF&V; zVNr7h-uaAa{)X6LI(VIxxHCK{8DOLg*^_i zPxE<8<~HbLP?Jg0`Minhq`}E}u4q#d{d;5q|HPdBD_HBHqCIG$xIy`Y#)fL7!&-cF zvgdu#W+}cYX21)0#)Mqu=wT}K4K$1p(aR4kgam9rd0a#vTkohy5m&)9yzR`|)0{Cm z68s{R_QFzHI7+CfFS~7jR#`|>vgx8rw!!;ie!hWs88bKdFCN(Wu9sO9LN(nJiL{|@ z0A$oj7;JHN;lKx;XVC1eX`mF&Ko_|z`JO2Qs!yVr6GR4hjvbohY@#(K75;-*v33l1 zPgD1Sj8yR|$V=hhSEgFdh~%>S%0*Q=2h_t_JU0hfxG+d$3OEhYq*83(25Bb|-es8^ zlz;m;fp(ceW~5PcF*{gN<*_i8>_G~`J0L!0*-&(#+)yRNgxaBj?fuj@d{-(f=Gd7K z1C=AzM^SWg&%A@INhbS_D?yaxdiyjNgwIJOfi3G0;)7}<(FUO>5Gv^E!#WsT@Y>F} z6jn1d9ICM7aDA(~{g&H`P1a6920vuO~0}8_T zjsvx%-!P#unLygWJq45!nGC1M8w_m+rTNi@QQb*RxLA}91H--rw^xYvAt>K6>JZG7 zqC&;8d4L@;8=LAW*bRn%j#6e|qv_s$OXSqgM9A0(l5jmJuhhnHb|wfonRyDvX?Z~3khzMd0yFQUJ{$stnL@W}uZyf^jj9-E^V zgU`L=?%9Qox!#%Jdqjqgjvig~+kML};I%xU%8E;F1xZ~)L-2V3S)B%BeQ!7lJ>Uj9 z00iEl@8hYpwN>z2aXSGuGqlNB`O3Ys_?)oA2hwgKz&LNoR#qlq62i&BA#fX|Fg-gv z*~G`ndViY`@IF)htb^rXBeQPHaozLpTVfONs1fiuUnrWvXz=+^E;#dIQ#Ud9c`=vA z?Q;Ap;O!R`6;;0XS>@%WohHoP*(jdF`%Q%4d)AyURIho+w#$(x!Dlh2LU_IJA6f;z zTL`A*hX*#_FrC}wN|lg-y$t`q-@17&$J+z(+^)BlBle7*!`B$b^2WYL@jv?E4{_D= zv%X=Y_ScU0zip4c|2qo$>fPPlcYKh+FBFKEM+3pPjk)Zymws^M?teYkAK#gL|Daa? z-x!!!SoL3UzYYdM95$#QcSSsP&@uO*UBnEq5Dw0CyCc2acKeNEQCPi{0@B;a%3 z;q~3(IjCMbznk<29L%tCa{deXWgJg5yp`SX->>Pp8HAq`{5m^7T3ubOOW^8vaX4}5 z(HHc(Gp%2n>cxZ$tF5i&tf}ID!vF8SA>;NV-xAL!#L7*=(Jh`@&^%9r_XDimx1E23 ztd2%T`)4cF0nZTuFikdAR@7U2i={F|Z|h?M-*o)++}zM0W5CPQb->qKvl=qrP5%(G z;JZ)XKc5DZ>Xp~!a)HO=pFiS%k^b*S-?Avdk5WdzzXQ-j??+UEupWD_udiX>4$e1W zjNM5XJ9wTcKGeImfkZ?Jg>C;op}v`!KB$kQ$Fcxgswpyl6OeG_i{{SasB2G1M2yT1XCWNa6! z%gx|p2xV0eR|eRFfp;T_ztgmQ)0d~23fu%8g|%RlOJO6iiWUTsB9-FXL`zSJRFoi> zz{a7sNM*{RGz!j%(KGz9PWvV_76&4OZYDw^CDI-(F2hD4OX@g%>qkEz*l_JeVMHFj}Oig+WiZ=#oOD+H}Fq!Bi28hcf zC4<+5H-(PV!VUufX+fidzgW^ybD}VcJ}kmwUu=dg+X30k3}TyTTNVaRW49dhdt?>< zewO8r2FTGw?H$YZ(F8(mUl(a%SP zABqx!L@QZa5cXidXpsqJe|g=wwa6L20P}ZjXK&hge@Z%l`Z>$5)cIa(d$Gbd=jl_HKF;1 z0!5(&B;ixy>`g=aS0YsLk)fppI|sK;h4iF96wkECDxqwg5F0R-^+;K&NThLY;8dX~ zQreMFA%jCiBTQC9oC6O-O9qDqs?ICnI8gc^Ctz@A;*leuvY`qgY=n&loSnRk4pA2p zIPs*!+mQ2!mxj(Bgm!~ z&<73ouToS%WTU_lSWe)S!^FO0*&^T3+vH^7K-f7Ggk3(1Sx$?1Ni_;uH)}q}+k-xQf0 z+_vJHiRla7InIQ6PC@*&C;2WDd_b}?Cvi2)8bGkwaB^yt0ww5vEI}mvo34)q7X?xP z_V*w>h~*;vaMA`rbk-z=Blj{AP07rM?^vxv<_zc2=)8tivi_j9WZH4ic&WyripIrL zoMmti%Yul!NKypjC~d|945~1IY@QEVdmu}xQQ*dG^s%?Yii+mB#MY^=hA$1X^Qo+( zs8le~bS9Y>zCY4X^RO5cjxXF#S(efoWWuM}%MHm#^tHC#yP5O@lqlEcBd9EGg3iP8 zIvJ|k(b=ccFaAT&MrdLipsymth-IooQrS;nlcfXcRZbLRA_+FhtR+(5Wjgp;WI>ad zCna-J8w5fk4v<8G2_$qzbDi2UL=m%XM8gkg2;iGMPzm1Dr($c;E=-?zKvJB{9BE=w zDI1h{Pkdo-ga9c|WV%p}+}90Ex{Vd`Cn=4F6Z$EE+CFVV>8M_$O-2F4Wy|w1KX0OM z<{uU2eCHDI#Wcay;}q8w1%lFK!7kQ_5~ph(3yoc2KxVAtoRdj81?xs&poDu2$JP_t zVmX9|j!BYsylF3AHMu@eq$Ws(|VyZC#*wmFp^M$gr7Z zQ=mDW^cj*bjJY@#E{Id&N!k|59wA0n87>rR3@zR6$B*t!C+>LBVi$~BtV|?pVDJH& zd;g0_P9)*4Y5n~tN%_Nqc4Dy#5Q#8FI50*-=*m-zevt;lib^0U{8z%kKSevORA$Qf z*yg5+Re1$VOx|5B4D(TR7y?hYvk7e7Z(_?wms6S=-!>u_oDtLLdF_F(fDnDrq2$8- zP5!$w9n%kttp&zN#Ch+AW(STY9ED9YTa!0%v?xk3i?8D|IW0sElH!1~`Hm$~7m!4< z%6b`z*=haS93K&SVOdDRU~{S^n~xV5?dre7wG36jLSqI?7FyrwGc@v z9!X^ehlUm5d;lOjH#T5s2BH|bD><*8F3c~Go2lNSMM%LaxXtGXAD|ldzlbs4Mv)u4 zV@IHYK?5*VSZ$;hQ6ByRXQ7{%!$%HTA&rBJ`;m1iv_?W+89e!Q%_16$l3?ons<4O8 z(0X#mS#a85-;qRx{Tzp#G#y=?4pe6kjA5h11VMJy;wQfU?~YJh~PBjxu&c}AOfF5*e;Bsz8>1(?>3*|s_V{W`GZs-K(Hcrzp_kih& z3%!tHALYlZF}}gnGc&k57u*5_-Z1Jjb&@u*CSAL2-KSxNe+yVNOC z)eJoZVnLeVv$elCH6-ogTp*g8vh{I1&^I+sIu)?<{4o3jkFpd_#Ih}??jY#nfpz?t zFG+QcpYFOpi+g{ziz-)vmr{OfEcly#W`)c)(I$>GpNDri6oX%q{%?WJzfK$AW!IIM zb}HrUa;B6N620gqZ41E#6UUptO$wv^3<2s_3>v3l0Y=#o**KAa! zV_f21yp=Qx2S$|u8+A*r2iPHMR`}(;*FzD(S~RIs-Un9MaC@mEQl}g8D4z4_)N6xG zp`sDRqDAV#-Xa)*?FC@{7>b0;llP*#Zu=ob;h6&ma)M&nGCTKD; zDFmOw;^}0$JN-d?2SE@?X zB`B97mPy^Y44ay29ZGzJ>=Fu1*h+HY-%%q7!Zfi;^i82isZwuwv!i`zrMUZ;{lMt>y<^_U~3{7Oy!BRq{(#bf3 z{cOOLu-n?U+--&`GoA+pR5HF@UEI62w+U%omcp^+j)3-V@SGK8%${;hCZ2x+D~ zMs0LtITyl&hP|6%CZXWa&^{AMA7|!>;WMtPUcDLN7Tn$GVtK-~U;|ME;X*PsgRVUn zq znugR@#pZ^6U>6YuTH&kodb%D?blISzmnxIoyauh5(y<_@W_+y?`H8BJ9~D*(n6oM+ z8?XG#c;5j|>uGXz>;R%6P@=mJOE`+F?V44BbEVb5SnQ<;w zg7UDsaYnVR$Plyj^O?H!6=&}uZnGt-lBXC-5m8xW^U!qu`5jYPh&@$AFe}m;T&Z8o zAvjnaoBoI#kCrPW7k$$slwQoegFV4EB{ro?ewu&F^+Q$DkZ=S>y2|ih*?B0yQl_*- zNYCojHD`-<4$8gB)Ae9{--Ce5`Dm8tZT#!bA>e${1uyQeH^L{c>m)jPgJX@EM6i}U z4QAd7Yjfve{Or$%I=%mPKTjY+cNNy4c~7Z#HHd*<;A#65*lUPkr-}`N`Qk~}T$KZ6 zOg=k~H!~K5U$ZF+-4E}7jRH`hf&iUqOh=^AT3mo`s|b{$P6r^`&rYUSB&4hAOv_H^k3VIUx` z_EKWPs^Q6zfByuTb;K*+oL0dM15~kfN!GeoE+0FZc=YI-`gfT9u!C_Ee0OkmIpB5@ zwzuVbxg=={4TQKxcqfdx5b#r{E%9XO2p9pNpBHygY<}eN(@=08HCSe~+5`w&Lo=Gx z$r8m+lP?yuj}uYa+m_SvXHsrOJGKUA?u>Kz(gDYP@5_e)A1md(&$X|qU>dN}z|~3z zGaSVFMH>zd7<|&aFiE0;3cVef%)`rYCb+<0t`rK#@O~|9f`lO^!q+Av>$18ea!JyR z&>#t8anj4`3__pJtfe{sw|Cld^xb2pn!wp4&rAvNx&aP8P&B0>k-|T2P<1O??K}&a z>w;Z<+O_G`tv>dGs+DT=Q_*kL&=x19Sz!Bjc0VizAL8$^82X+Uv!*n9`rV4>Nt&qt zj<}2E9ye&xZQ2%V(pY7Kwz`HeJ^6{R1=)B{W%LZVH?owMEUb<$wv4Aw(xsiwic+GSs9Evn2= z?K-!RYU72TM2cnym}YOdE?70>pwa%X2#zg{4xV$DNNOHL`Hh#EQetkc3itlmu%>&> zSucL2c$i!_VemDG#i++;vB7`P_2`V6-FRYroLq>;{p4CXtc>QVAI$Hi+$YH8Snyda z_?j0I6VdgtGdjBZ_ayJ?(L0w`O{JF~vFpRAe2drdW`08DA0ao_SKZr{=NT^}-`nq) z%ifbv;l6DWd+xp0bfQj5`i!bFD-mAkO=Z^$+27g**ZR5w-j3!?igxw%wR-w_0B)6_ z$kt*58KyLvi92nlqOjOZM>Pq}OleGXJ<2*tCETXO&|EY*jwmc9`XabL404f!=<5Q5 zUT(whXdA#Q+3U!{s3dt&s&=xAcwnApa|wr$(CZEIrN zwv&^0f2V&!U)5dpRIPO{6ugEFi=%XB9^1IF-W0CMtkuDk5>y$TJM&kur1(HrRI*#Kfb}qDo(K-drT;A_ctB$0 zgMJuGn?wZjpSRH+C@qjNUshHD=sO*ZUv|f>n~g>av;pYw2c$@wZeH@2@Or8R|RC1ppaYUo`b$ zi4r3ur^*3G0|T|YW|jdmkNq5p+pd4H^*OBDugl!1uN6v?;^e7&&Px9v>XH1XiX z4I^VHYr>8M!9}iiV6(PM{=e_@oN!-X%D%6U7+gRegHWjVHq}O})xqrLy>)Yu6UI|H zxqsQol5TS3Y0GmiH?Xwupi#8@WuvjkibhFsGERmzF%1CrkV>t%uDb#-Mf&|L8zFIV zQr!J^USDiA%o=%{OUk}}SLIn>Uk`y+KdVIquGR4U>FWACM%#LQWzTv&;`Q2s`h1an zA9&l`xU%fHy?yy?WDb?ZO$-&A%^$dWv`i*T-=M;IS1u*3q%fm$)82@`vuU<9d@`EcxrdghoYl<0+hPLOEe^x!zGZ98cB|dPeeiTtB z(~;p1RZ6*0>}n*dY_4h&{nqCc)cwa>NQUWLWA=M$w4>_fSNZg(EI=EMq^_yWX}61r z%k%X`?|hmL-`mK{tY#z1s+#Rj2peF-$3Tad%sxXpNqV1wli1jK-vGwG<08k5#@JwJ zI|)^nRy|2;iNpKG@-EPXUZ-Pbb)5tif;*-}Zm+KO=SVcS?bhnp>vt01K5&Zb(sN0g(z^ZR`B$MtA~S?0 z8G{kBk2`7ex`ze+FfA?Z_m=cs=hHh{Q+@OKdHQ35-s3+1YtQ?Om;3XX{Rk1Cv9!9b z2e#jL4)X@@bO;|D&Y(_vR>Qy7n0KZO>R`7Q5H)ph1MC7AWQF6D44@f*i);55q zW??k5Eoy+NDXCJXH4U8wQ@156_OJc7&y)3cere`D;@k`fJy0cNh$;$NG^2@5nv&ah z2ZPIF1Rd|=uaEq%Yw!0no!4jCuleAlWICPJ7W7F1Dm*Y@dYMEA6&eHq{TIDamZvlF z@r?!_{g1dJ<*Et_c4!*C2>ss`&<**^pog)Fc@b6{Q!{yI3Ok}b1&XoB^#AJg;r~P~ z8A8VFXb#yWnf|`)TTA87)gZoXoE*WWp_?V+xB-nU?cymg6O$&Ds%YPQi*J5kmQ~lA z2iD|B$)I31Wxshxb+{&aD46Zz*z35|0g zjxJB^?f*rz6dml@_UUX-Oo#<}DaX~-_p zWReU3toVh9L(eUq{py$ht%^#+4qEvbi*oPR)}}p=xQ?{FIA8=&Dedj;p)eoAcQ{I` z%(|`w=a}FPtgI03c8peVIm^oYQo{1SeOSYGpm4cT*KQzMOEw)hLn|vQ5~b#+BBe?a z;u(?e5XN9WexpT`{*m$rFeVTYw%a|v={8*}cNwbMt_Sm_Z^kA^?Ci~P*kIdTd)5`z zTJ3G?R$6CGi;LA+%~orU8@UTt51hK(!|`jnuzjWict6F3Jlt4>!LuGrZSSa7$vHQe zwnGGfT!tKS>F{rR3@A!+3sk(Hjq#;dQpHefwn;ue?laf`^hq=+hkS;mz)?6fGP2$t zI4HJI(^Fxm`pRAKiP>Myo3$-9E|0A?ykC>mLO&TPj&-2}IHpkW%FAZu?g0PjcQ0Eo z%Udl*F#gxcxuW2!q9Jy>2_litpG>NpzC83dDs36k*b(B^*I zZO-;6Td*Pc?eYA5ngO80^0Cyw{Y~}B8wp0Ff8<;nA0K~Ow`Z3lYnVJV#*6x`UM;t} zX8Kf_G(8cgUEznMXoMT;6J16d%45B`0ze_5_eh9ujGsx6*5J*mL3cn)4xRYM$z;5u zLh+AsIAV+HBY)VLVP;`5b9c9KdEv{>CJuH(VeUXMnYz1W$|zWocoP$^y@DmfTKXx?x=-w<`EFSGso8d~gq!2Z=9{5k!l+stY1TcpL<{{AhX zKjh_vMR5DKjx41<}Qe z|CpKUSheyxwnV7j)n<$?p%TY0I1UJnD{*3KltA?>N&Mj%BIK z^NsJULBopX#?6Z90SCH{A;Kb&MztZ*$wasL0+~!Z(f&R_Jf*0PF-^cml+Oqa%{ai% z2E*MkiC?M@_sHWlAs}oRX82}vLPDQMnvD9kv>x5jc4g~(;#}w zZD~~Ts`V>M@hWA_`F-Hufyw9l9fYnHgQwc%u@#1kNKUH{y9pE* z-5EnD7%ZADeBSH{@Fe_^9zxql>ZMazo7bXwKc77e4n;RVdS>j|($nF4p~j1N*#R%hP|N8XKJ)tq%Gc6BGNJH#IX-xt*T4I)EyT z*}#v;YU_J8Qklaj!e7%ng~up|C}i@EMPXkByQ=y)v8bs*T*9)8EdLy~nlO(MPu&msR@izeTN$owZ(*c3@+M z(@5;i&Av698(kHqx>VGOd1Q!o#H{p*w0wf)pJR!M3)5dK*@1QrcLdEClLGav-wdB$ z%~`hRdNFa|aN47!Ki08i)O&!MfV3hFCx9DOSEJhzTt+2hbw$+|Q z*LpCn%J(tCG&ATHSFrttKV16@3mC4zcm~(xeduD13|?fWK)tcvv1s0CUiN~O{nf{{ zs6zBS`&3}20KoXXi}t$ze3P+qy4V|zCgOHMZosg`R1;XPUArg}M<-6Q-RurJ zm5<|uDyQ0|1$ki$;X}vOlEr$^%aifm$CK@b#>02~T=6C#GIEm$$yoyY@IuM{R@w9o zor5h1`hiIJDc5iacS5=68~P*d2{2vuTtGY-1@1w@#7frT1{fE1csjOn@{lKoJ95SY zdvtjW+|pcBa&@aRTk&woh;6trJb?HA^IB0ZmTp~=PlV(RaL%4CB6b4L`j;A z5qW2AIiBAgg~e32yaL};s0P8Zn##k=OJ?ptAQ#-w;o)>ay!&Q^G+I+b{kO;d%1b$$f zLY<5P>rl=?`(V*kRDPpoQzeDG2f^3OID_^1*i}$TgDej^zS&I^g7Z%-%pf=v zwRCFRISrjO%=?ktEH_q|*J^XQ-b-e`Xbpvw>6ue4LROg#N#khssT(R!dzmaO^ZYkV z^M&OT|9#C2_j)p~&G7}#Gyl1cPsdK5!R3rdh6)tea`x5qapMC=Ky@|G%Mc+%hJ3DL zP(~Y-qg6}{gdl(D+*}oL|CkjeYCS0;g$u8j-?g%Kn69ocUz2EO20q=kmJSWPU}<;l z1mT&-BjhlbfFSe3t+MT99r+e$Xm@tB);2aS;H$}W+cf?GTLP2N#g*SfE{Me)^sOj~ zy^>+0_#SI;D1PdqiRkm2^B>|scrwwT+(LPqIK-P_=5{d627toCiu48&_>GveVXl`|FhqSxQ9Zja)N?sVtnX(iNhppY zXm8zECyTN`x3GNyU1Bmc!Xw1)EX3-%i77QOC5kKo;YMTvOL6^|*|H$!eF5I!1oq#r z6WU-DiDVqI4H~zRQ*sw8`=hFT-Tm{N`NK;`d4WvEYUxMe+zDqHjjYl`4}qH#J&b1z zMVncYIa=cDJTZI`?n9D|^mHl{!gS}~#*K#F8`jg_v9Yn&MrApZK)>47TD#A8S1Knb zCqgRzIhH`X7-Ql^{Bg)U*gcT4T~Ryig6}qy=6_g9!#PD9OU6f}UNX+|aB^bCP`S3m z<}?KX8_>su+gI(ErLC1-O418)+%L2Z(|@sBPUb%k+M9CF>(4Pj#feYX3&KrOAAF70 zJH(Ys$M1xSPICS;(kCZxu@Fv{_jCCZ&pL&N1vHSs@nyIf319ah@BBfqtW(2mThY!1#RrXb8K&XFV;SSWLL&}?c}`N>^{-N% zFWebgd`%rU8-5@SCm*QIFfKRvVH1F&7p741>VE;er6K>=mZtP^kXQ&ZUgZ0uX3dGc zdRs$gcXHW&+41-0oq5akbbs<8)SywJm4TH9#$gY>^5Nkja#C71qr4pN8ZRYW5wc2d z2cHcD0!x^m%I~S_3@Hdx1`(_xEnw-5h!|*VwcW}vt9Y%{gs+U^ue_|qzWV;k7kz9e z*b6QMnMI2Uo`54Ff$h}KDBeLTI)hOK+7##0Aw;0dTIK&miXyqXQvq;^&Wr$tXxw8L zcz?QoeI9*Idh@s&dczhYw;Xlf?ZVM>$AU z+p?!mK3G_ZA8O=Mjm{&Xax`4EToifVUcSk0c#0b6$Js|RvqCGTj&Armd$~T`*zhQp zW7@oJ%Sz;a%*RJ>{k>J0V>voH;^%2xyAUYNOCS8SogsqP`UWZzUL!)2OZPG^_h@Dv z^`H{d0WsOcB@Dy5;5F4Ls`IEIVIb2%dexK2(;SS!Vq5BBT%r4*Ry{D$p(s!}pmbqc z0jR^wlvE-FpvpgpAaq&L1PYhg#d46f__c2x;|o#G;RYf{FEd8qb!?bVUD1_7IHd&s ziFO8cCRw%Q7RZ2T$FJbc|D`?PLunW9KH^cw|Da-&i7(~R*xB* zdA^u0|6HKP6EX%#l*Uc4HfqIMriZzQO$7fN4n4xCnU$)}eYDZ>-|YwsBq=DabbkVk;QK^t^X>9}g z!xv$|mMd5H(}P!t@CRHHatDD#5QnVR7hnzppPtc8_NH@M{&|V zAAU<7vaH_22f+i5JC8&8(!t#=>4H2A!-R|unmofGn4E#tO>M{38RfsfH#wJ6NNs+Z zW{nGrv$eo9OtRdKla)AbTS3#GL3%zhH}Chyv0zW%d9iSgXG=(2Kn0l+f*r!y+zEka`%P_rO`-$XW57A_~UuFc6CW+Jl=waJWZJt~qZn@zb zem_sC#N&*FRZ8$-Gh7Wej6A+9KGxXOm&cLN}J^QCq-Egz> zS*FB%tbCD&B?nDv@l8Txwtb!xb5r7K@#KUe7-}HO5WJWmee(v&>FSWN-G%@Npre7* z56egf;^aTX_(D4z4p-bwwtkgPShMYL8)G4*HI^A5WON--e9pgHo<3%th}ap27j0c$9d zw2ERLS(8?|(&81b-5l2?SEKir=31S>PzS@c{=d_Pi{2U)hKNyd_So7$O1-buRiRu> zPLJpHzyqqHZ_gJJ3vOgJ@9XjlT(UoKF#@&0ay-x=Xy&>15-XK#NRdM^*=0$N^8Nlo+TR9bm!JjD$0~SRG3Q zx|ldyw3{bUl*J3pLaPcaC6ZpY6lTd$cqB~1_4Ur~u>dNm4xQV#v(03t#~ zL7dYLL53EnaGN@{oE^I~|KG-W>0}5JMzeh7Of1I)FpQyi#$i`+=C<#vBYDN;xJ3Wi z=glZj{rhHlOQP{(auf^O)PI5$e$%G+9SMkx+WM0zvl;M#;I1dUbURbZ13O**B zK|hEls^G_=Ilq~oXdTOwRHhNct^hLsH6w8$3Cx9BeCQEau|$|Y3w!e^`vR2zHyBDJ z_k7s)vkWVM_GpTTlY5%-G%z%1g?Qt^D>F8Z9}xXKL?wX{t^}9>9iL*5Y{b%G>TL=C z?+wbQnpC_WHrHk>QdK>Ssan`j0zoKgI4!9!{@ZJBci8*TAF3GM<&w*eb9r5bLz0L7 z5nxl#%Arm#(YA$@VrFmcVvSzR$bLL?HYBbbOG)VIX77}(K|{B0*RDb>tEIs?x2`Qo zG96`#3PlFOk*L7nir)U@gQkhY3CT{{^@Js<1B})$AzU=YI!{=R%6s>mLUY|2bUVIH^tGQN(QL?ITaES06{kD z(--gyjK(uDx6X2ffDL_aNjIA4kPk%JRcJ}6Z`>k1UBN1kt^IoaPIg>L!|jD*+KEQ- z4Wly;^E=Gb>uF-=h3pY&-EFP=)!F;`n&`v&)LCP)hk+c(sHCiZ?`u%*s*)k(c6cNvD=G>8c z6zjR8|4vOo`Pq544%7V=c)-Q_99$m!D69O)x#)Z z^OZ)xUM z!NR)2SSVKkG9m_C4$1O}&lX3}i26jGZ84-`$Tf@0tS~2$$sBA3eK^yc(d7_Nr?Jz@q@}ad z?(_5M1;O`+2jP=Y8;iSyqNHr3NfU4HGN~v?)RXpBG!7oZm_h zUwYn<^2`w{_P>V|Y@ayEhA}Oyrz!Nzmdx>a)%e^q)dskMNXNxU_CQD6|h zGm;_BV*=VI6O|}oKVa{ z@-r(oXd_r)&M3F}TWi;`(SxeMBt=Xe#7tHaS_X_FrCopUM{k6pRxO{o4mbW8rJex! zwBe;+q>l&*HV2rHnN}))fUd~I`b(`Mz1_-!0H!Wep~o9K$z{#+ITLtPDwPj(va(@t z5Yi>|S4~JXpex2FlTJ~f55=E2+(%Vruuc$zH_@Ge(_~*z7%h=)VQeIbrrm~4q>3b^ zTM944krH>#+#$Awvc`rM_Ct@TrOx5Ox#OO#Hu6vEHHsR7hs_#`$U9Dn$Pb_i0MCbi z2FCi*?I8nIVl#x6N^HoS#2S1|ZGUZlA#af5N)gjTgaXj58$`j_l{l?yu`sm5-lWUN z4N*D4Kp|7iM58hj%iCuxX^PHOuhK ztZImFTx#ZPAHZB_E9a|`4-AI~-%W^;!TY^3L~^3*o)Nu9ZUv~jjyV1x9zh`M(b(Nqk5fQB z;vfhNC@H1|^P@yiHOc+J;>_7!hg;B#`Kfv7eGZYj+$kZGZKvY_Y@=Fl9 zpQn1?*mqOalEql2p%yBz;pr_UZ<9$dAIPyyu1<{oD@5`<_Ae|oxB3ft3NnWI{uqy? z!|8Nqgtq6$@t!*)8^ zV4lEqy9^fNB8kRUp?}=P1VLE?juVp5pq<2LL7e!AxtW;AZA8z4TMrpET&6|%4RMP$ z?Xq5Hg?_MEae9=xp!2>c`GC zEUEDXA(9^>G%_UkT2ytdIei)S2tZEoT*x7uRt)a^5nqXGp4qVUF&QbS?Q8?qhBdJWp8(}PqnA?BRFNIbXAUklZrxAVDp zy&n&6RYeq$tLPbfFWNwqc!}D5Wn*$`wQx^XnBqgE+Dcjpe4409?pP-zM7yW|n_22h z$N^b@xOEfC%hXq!T{18ZKOT*dPva&KGOKOW*(X`=1*i$($%PS0YZtC2S#TNUS2wyq zr=)YmakVV0ePXchGgaIb=~IfO5XC%4MZsE5?uAH=Mgo%=##S%`6P9}aamLR;s<|-hDpG<$i;d```VJ2 zaYxZwqu+1T5RreV;TGHylW61HuyGBZf+JHVs?A+hH#L7e!?904EG{}%`UP>b-lt!^c8XNtHrN0t-!fxPh1A;>&9PG3a?;`OyxdLHP8o^Q zkme^N(@yZw8E2ZYn?e_d!AZ_t=p`iS)Xa^;FVs7J<3r7HHl09amjKmK{!ahd7%(hN z6ZsizL%j7Wb1ouWf9lGIE{89M>Hnj;kRUdYlY$xrao8?|MDNF9H0Z^Wuy>6}T}q~i zl=Z=0SxPMWijqY9a`-NTd}x6_VB)4V8y$c2+)b|>%i(=lFO3w7pl==cYZ4PuCb>kR zQ~RdV#r(C2-t(dQ^D)%slUK*x^k%#7+l6#A)%n-a@uSw}_s8VbZzRza4Q_L#v4qja z(|ua{-_E*U6$3qf|N5bxB!4QCOV24U)wzMK-3bWiZfbI{-up-jn<2Yu=Ntwk?pb{U z!_&SMd<`G=<;nC|{B(l~wDNx(Mig7QYi-6Ax~|zxY_uyrmpg~Y6L(kOXrYddnire8 zA638DLqAI2F8^B6A0`Bk<}@y>uY#&L9rUGMUA;^ zLnIU{Na-(?&r^nuj7StLCnz$g>7k3Em;4|VPhgCwE)A4v4!*)sv~^M_D$Y%CnA;&v zJQYXfK%r)9$r8JVjX^<;7gHIjAX@GR)c@EzU_Y#zeb&2C9=Zw5cP$n=1t}`fe=tR- z)W${`C03%;E^vM|L*gcuc5_<2QJ~EUEfd$^-wlf}DA-WoheA8&NWu$H*~jPXTE6;& zLg2>KWhV*ifz?$cKS7Q!X39h!2AP{6@+fyJSW2UbXIf~NHE;TwY-ju7s7MgO zBsR$Hrz^#nh@OHGPa^!6|2?2Io4C2~QbY_v`zCK0qvTBHzK zO-=e?j(RkS(fjUH7UY2LtdHqEY zPRjyXxpQ56gO^c!|6A?Vv?`sikYCocaw5uoQaS+F8F?bNmQ1^oXc#2W%I^$iIy*I0ePg+8aaBL< zuUYBbWzz=3dE2Mk@P&&~rSz}1}KOV!aTUlg#0Lz7{QN(3dB>VC;3IjI*3#vZoBZ~$FXedMKpr~MBx+m$afNBw z7_3|&Zv%rCn%J*fJ2{qy2eMlp%2?$Js~FHfgW}+u$grV;-6L>>g(x#3LPd_G>B+E` z8^@DcBs{RkV39k|m1z0SA`#3CzFDkBf3evSGO2z{O&<;QAWEEqIg_i1&7-Q#ye8^- z3zt_*T!1OjNE3ky!Eic9>5w-JcwdTam)ApCvFXt#=yLL@$mORZE zm-WRlV6!32ovV9VDd33^CX!3WbK|}>fxS<8Sk2TWKOgJ`+kl?1nm)h_!{uign@gPb z30oAF4Hv3AsM9LwkC9g;`j;{j}#OyLglRr@+SqQUh zG5UIYuv3%%>@=>v5MG$_cg4=dQuhgGPm`MF0Cqv*r{3dC*%-|s(epQuB2J99=S3KU z(AD=_FB9JnuJc*E3xcuWsKtu`gS<=rNB^{qWe}@*Sc)X;$nfO^h&Uqc0TW5G1j=G< zHu0~a0;?AZ^ct9|f?Dse>q3C6zI$fcqRSRsjGYtwvplCdJp~bV2Ek)gjrX1s&gj~O zxLOyE{W^o#E^Z!XlmQ+AYzlkAK`dS=(J=Baqke3g_=v-#9bhSP$EVC39j=fVp027= znFhl=f5XbkO4+>eWGKOCtx+H6oi^r4cjn5G^K=$ZYmF&3@aNl^!0Zz;gCSUg%(=2`f~|@_E}M{oEj$C-bp-`fqVz?o z#X^^2&N+xl3_(n%mBFTx&?=vY5&H&mIrfL<#W08Bz?@@30l^~5wy6dKN_4a5!;V^f zStA6Nr=aQ-l`)i16FH#B6N`Wi4DddJc3I&2wL%g&Q)4kcz#INd-&KX2SxVr5jD$kk zzy^Q1NT-kl`br4p7%C%an?wj#S2ry za7)^{=NJ!JE(MZO08amak@UwysyY3C6)OzkoEi$E0?-&)vwAmS9T%^VvO=fZs3g#tYhynY62W= z4B5P~-VC1K&<`;8%DF^}YHyrV7x--%ZVPVlMVTmPx`l*0;BPv;+4w8w%y8Y}W^Ck~_ zWi;iZ9u!C9H{owIJQa=-QB+*s-w^mu%kQzIuaLJut4C!lea*eqbgoB4kWS}c!$d2b z;gA5|+p4=nz>Homk>fe`H#d!;bDJXUtPr;!r;-F#LAT(Jp&YMy8DH)8z0Y_LIAj(ckWOtR4{|lkwt$_n8>2=yg5SzR2Ld`f!3SHwIn?Y- zy-WZQ@6e|7n9{asIV5U}16=@+gBUrC96My%bmiK4;0e0kYp4Ddg4N3?zmAiM=nG2!>&ZCKjK#+h2C*7A*BRKZ9=$bVFF~Sh>?Zv(u8^Q0`uf<;y7(v zRky><`{Ux`0j=s%b=6~#XU=|4^rh<&H9Ithde9t*O>xQUj8ogkS9a%@PyIekweXD= zN7hWSz3kI|0n9%t(p;gKAj_B$=oW8yY_LO{4-dvC{qe`d3zNN&9|m!jd_%Usz>ts) z`1%@m&!KT;E47-dF8tBSOyyU_ChXp_K#nvwb2!WxQ&x0e(AfHXRIMZ(j_Ub1 z$y>Ez&783FBr2w(O0!lGQvcg8hPwYl5iJpYqB+D_KwOPH38W1Ndqm1rTb^7{vE_;m zFrmk}57EL8!qtG2;BTcgQ}W#rM>q+Z5pW9CNOh@frL%%CB%`=+0u6K*chzPcq0!XD zHtO1ZO?HE+#<;PVQ1HRo6yZt5?db~@ibW75mtZuZ2L6?pZzz=^M(2bIDD(Fk;v|!v z(t#JQs1&Z5>6urJ%HhpO*s9dAU#*yzn?sitKs)lM4ELfDVI+X-1zs^&45$w#Y?{cb zq2yu|P?Q6p)x8_DDdDR6@t4ZO%B&gWt3pz79FM?wlK|rh@QRYJO1;CiN1@aVXcJUn zrF{9#KM^X`uq&RN+XQ0I(~LXcu(|z*=<@9PQmHxTQ?6d~ z$Rx`$4ivC^J3?k8h)LCBZy-=f#5r67p(T*FpT#g?Kr={{@Sa2N)nqWCf1z0#t78r% z0L1-Fl`NV_M%A(u%^W5$9JOR?O96p@=9Fu|N6T3tMEOvQmVE#xwjtcoxu+n2Yj2PS zWrlfi12t1R55Eqo4v51%!C`P#+Y~vIi&hop@Zf^q>fZ@&eQ1=h`YR;A3XIJXVLDim zP^*pQbi76&aQws+$dnmVF&cPC<9Vh#PlZ(>#J?x!E)#u^ml@rS8o(+o{4cbs&c|Ol zzcQARyI&sYy-u<#KQ&_Rq)@oz$#8Lt-Y(dv=%xSmCIK4FHQ4T}iG*5wg3Qv{9?uKR z0E(@t!h-*+M93NJI`|8r+?EJpHH`KJv;3F510SKBLc>={f$$_IYBa}5bgEfK_-_tZ zp8R?GL0yc0Vh!sEwH!*9fg`aD)gA0P*e584KtWdJI=GJYa_5v?2E0@<9cM;H~HANU^%j7h}bcPAh?y^@b1phDe}si>s3c&uB$qwzEgmD(6k{K{Id8S)$$FR0MrwOjQF9pkoRSz|xKSC%`7!&A3e?Mfq z$@id-GF3uru--~b%L1vQ>B|??G40r4FeV%D!d)m60+jX5K!RWg_*cjJ>^H2PH->un zaOEX9Px1f|wEX@)gx7`BWlqPQuvun4+ye~I#B%Ujk7y7~Fi|MuK7=ek*;%?adyq2T*@PO(k3MBXH&;v-{=4YE9=Z?Bp`t>%wvB{+)-*dZ8%IEeTP% z%(Fl8!SirP^>ek_%3HjCW#4|*pVz~5$#-SF^s|`F7^zgH<}tuEtMl4~JRP{Ct%`k0zfgCOi!>220t(>CR|=la(ZHD+haou6+*^dY9kns8Z~JN}k!u zOpab^5Jj;sUhM$bmL7~{S#fdBJP6A#=o)QoxH*0`!%f35S$>|`7#?xI3Na=H^E9LQ zCnf5Tpo?p&u{}+6G)pL{RjVl&zp$b+M=qXj7~!IH@qZ^_Ov6Qk5#w@l#6^l5-a^^~ z;JgZd^V_*L`~ zir!Ig(vvkm#g?jYrSq+~ow1qi@R5D;O59MAPie6DZjcLOB^qfJ#L+iomMT(OSdi0* ztb<@4Lt>#>*##-@XR#2A^-kTe-1R~Kh7%33 z>eml49kA=k=QApmD{wFp2Jal!q%=5n$ht2rq4ZYRZ3l@>6h<)$(|+}R((za**I(Lt z+xCo$aUU)|NQu0=$FOu?FoW5y*Jm!cJjEn*q{K&-5xrjM5q1wm zP7oQEK8usMISZ~Xc?oI=ao(>H;?Q**kDuTuMb&D**?>xc9c4?iuP-Bf*#i-a8TDtT z7H)2CPEL!CT3b)GkY*sJw8}$}wX7k)Q$z6NK$fv&;aK9?c8JhH2jy60E#{9Lh|g1q zKDS)D_X6xcJC}Sy&jnQ=;s@gU90b?-Kj+T!_j=G~w|8rno`%DI_ZFKlY`d$}U^~uX zz|zX}q#~#m;3wr*#GNgv(X(MX+MPd)syLUtwR&pkKX_F9s3LH+Ex3x`aOavhyo z48$sL}JN|Rt@jJkEX1*kt?aE6QP(aOB10G#Rr0*RH-Dh44F!ctk^`@ z&1JbzTI`7lhXQL2m4Qy>)w9T^$I`kQxJX8dSiKCTTPksvs~F=_(lU8+IHdzp85b?? zZSwVd{*F|VtckS7s6v{tg%kF@V8SX?A1J+=ff1(%EHfs#l|ap0DF8*hFM!)1i>w_f z%f-<7<6ZJD1<7jpc8C6}oToO+G0xy=v-7Pq|GVFGOR+g^I(}W3%`SDHMA~={LlJs; ze3|gRwW@Z!9>5>6ejoE|UNG~E#O+}c{6Sa!dNc>P za>*)CB|#XBbD*fFSr{Al0l5~HoQ2;5~$zIYnnFPt!A-&goU}P<6gP^diQLGdZ8CU^U z2N@tr@7sMb3NP~O+)|U(ZS&A^jjj5s{$b<^og)Y*d; zZvsaDvRz_|#0%ZNl96~k zbtdcba!ZQ<8wUsXed_5dR#dcwiu<~Ajm=8ieI-2Wt9Q$F`0F*@J0m@N&HGGib0cx}Oz~ZOGML*Q0}tyF>%CFw7CZ1{O`}uyvU$1oA6bi~e@ixRPQ>dVKs36e2>T z3=2H-p{vk>qM|1F^aU`A8OXq=)j)WRi=b`&X%sQ+x0!vA`%PI*`pu@c(xSJpt;-v%xWkwLv#KnhAuKnWcRizu&Yxq) z9m8_GMgaw+VA|eP1>x6?YDcP`J z=~hIz^F7ZhIm9G=zQ(tIf{V& ztM{n8e&!;jwWgywo8yzi#F|T#rTb-xXsuJfVbf-^F$%~}d+CJN_{rY&N$_V%YcwfR zWRg0@U>h7Y5dwW7#kqas^qb&ABE7JEFNE3sPOeJGyZpXH|1r0TcJXixq^;hvS>dbHa?*?*Q|}Wm&u{pK1Way zK+fzzF6maJ)9ElMbY*37&i>*=1(|;pB5LBV*5Gd=TwH`FsA3iHntv5y=E2Abqu3g_ zB}pOhezc*~kBFDhJdfA8qmn_YM(vkhz3klw%|{k{r1o}iA@2-@AYMN(g=+w`5Sut+Mi)qHLTr(X`r{;og1r##)Dm0#TMs0ZsC1sayEh=$&6lPKMdI^BtOgU7QP;wC8&AY6}(NUiX z+&W~qI;-7Ty3(K3PpWKHW|kW4nzaKXcX=^mhc9*_FL3iG+65U!I4+{{=#p5j=#)4J z!@0V(F$W0~go0o`^?>q4vq90Q?+_*?^_mHZVpduVGK^t6Y;=N z*tPR9^%O}>c?|WEvY<<+KVH~)DxPPD(ic7(u2)kzo+P1KKM%?PaN>IRIp%%wzD~Ge z%X8}2{-~0=o2ah>uad@LbfG|eR;}1ID4T9UnL9PZr_I+7>7(p)n1Q9>^t)gr-iIcn zFC7ydkI_4wo4j0B+VcL7=t=yCzl&L^cW19 zXLb&yB*#+w>h^+>zMov>_>ldiVA>PTyf@D!YucTz%=f1FZLJhK_Z{I=@ApSvcTw#& zpSNG1Q_Vzu-6OA|jFDBfi}dO(S-6U>TyiYN>J%n+`;LIpq+2pnh&Ije;Qws^euUWR zn%~4^MdO-DkKz9%V!|2>+qK+iaT*U|oE!N!;BSQnP8y*|2yv~Zi(7(*J1bBWw#!nK zYeJ2&D5N;8Ha7cAtwu&$R#6)F^GpuLm2gCYbLrFpUv-vMB1Cp%zGn|aiA_>!Fyo}I z!O}D*uiSNcL7EkfiC%(9gy2PM_({{-Rt={l%_7MB&0%pgbM~hoc@jx%Vmpy*;KEnv ziakYlXP#^Sw`r|zx3g^seoVfMg*QCrD%ENv*~UMmMjO{RvhWq^UmxE}(@53s6ZS3l z4c6*b=J7HyE;0ysB~fR1>dps7$~os|Dq*ja_OxovH`#frN-6nA$i?rs5!7A*ye zI~0fDu0?_e*Wzx)-QC??zpS9%4emC6D9tUs1iX-4vTA#mR~>s9jd{*ZW`jx-@DOg7A03J3Us^ zH7w{}iRQJhT!@U^sUxoRMcxa(xvguJM*aH9JUVCo3d`z#*xTzq_E}-x3V?P}NCl&7 zH)}J1O7`|lWPc-i_;yb6C(?f5BAoTj>6>YA?}D4%;w3P}z-95Sbj!Pe<%{^yeuY7; zsXLoXK%rA_W_D$zL6k<2({5a#&)3TUB$j65>*sa9ox2Rk@Z&p)mn&%n_rkED)9H~5 z5fvdn^|%9T*yGM*+B2zVn6#+?XM_hW(^i9g;sd`J7N@}w3VZ0IJah~uy$7mIz3Z;( zYO?!*1WYmFNLZ#s_k!!j=p_>l-x8U5f+|R&lv>-al&Cl>ZgUc;AQSq+2bVaWd?bl}OXF^;B_=MIkz-E$z<+Sv6McxkrObpIh#{udjKT zg?!&}N@=25MwDq;4mfU_^^AmpuU~6V^iDN+eeFh{l5BX&Jst1Ya=YS=MIPQ+#m)al zFT4F%X0;B7W z3a{lGqCJa3=y81>9uokKLuDa*c|R!e7KPgq_wAO^=xHd*ul9fG+b1T=Rb#$ni`DH4 zOjT#(5k&sUu@?_jS8_h@3y`H>g~1(2lG;a&1L^p$(k4Q7)pE-Lmn! zW_3`f3_Z`AjFUQ}Mj6X(ZxG58@PY;AGG`XzKzkI%kRcT|=xez{FkRCi$Q;)@u+z6spE}i~E167TdC<_Kciz}zC>5!xC!XuRJC}Q8>lc$mc2$5SVOJRChSeX>B&=vx{i%cC zee~zl8D0&*4X(!su%V@B43%VA^ejvf*KTPS5<%wPeUo) z4fZ8Y4arsOgQ>9MLZtzEpiA%EIQoBQfR|E+9{jatD?t*{W-@Lq?JZ6H0^>LF`HVs5l3$f7<8USmm&~}1ewxF z{_GCyn)j%@m@>gIgjN01baXGp=-TG}lGP}Y*=0Bw z?}=OR@S>VKuqWe>5-XRbfKmt65YT<+p)P+oS$9^^#RAiF!sw5y&p;Yhqx$^mV;U^W zF=VFj{PXkrTh{x!<=fS{cEws}MktI`JDro|QgsHP2YTVF<^6@@8;q?dPjM6RIN1#KV*}txKQV59t17lWaIvJNC92tgb#Q9mbs@nE zHAD_QaV62x%Gjjf`U$cBC!i?`wo%bLEXA#W6dZxi4b;y%MU2sO0*Ff*D0f@Aq|s)OIDH92qEQ$l@-#R}&1d}bVzuMaKgQ>U)3RJI zMQ&Ps2LPN%|9vLFxh>9+(E!#-lup{s9FEmvKal@uA|=9^C^^MuFyFV0wpugEfb@{$ z9-V8Wqo>iLCl?>upYV)&vc%0_WnuQCF6J7y5g~}0kqb8{3{D#LJ9Pn@s+tdlIQ9cHVoi7NJ!w7R(mx>`BQ0?0h+zqd8d43Gkn`J+h9ylFebiG0JUe z6~hh33^i+@!p#zEO?4#{DN#Hm^tk?v3@HOJ@?<&`6xi}14d3e=tH(E(ajN$zr5JHE zd+uf%y0h$CkJg}xG%csuzugnPeZYpt?Jt=Ng`2ZoAt%tQkmt7wN7PoMfF;K1HDF~I zMyiGMyL#3WeS;$VQ9M2R(DT0C@xGh=`nFeZ)4g{x6Bn2#@wxq2xeF zJFzK)wxnkU(gdf^464|74?At}OeLPGFx=4|7R+z(u-cR0Up7QEoG6|GFd)6~G7~(i zdMoO`g9BRyq*js$-#DBq)~lsSMpGGgHv6mUtWjz`>sd&!5Mk#3*__8qlHb9ql73GJ zNUgO6Vr!c4IJ!XaSp2zgWtpK#%7`q1VJbQI_EP))6}yE2P8jRkZ^EQ$iHc0KYD;q2 zG#Y~tU2MT2G3lE#&x?Q&8EVf6uwl8Wp!JZB(Tz~@MXllEkf}}1DhMitY1LzW^?J3i zz=i2DU2;^2|rTOw`{Uj$Sn^bMCdf56bIj6`k{Qq_w8VuFM9_vJPo zd=&;nz5zeQ4Kdu{X|v;Sk3z(vL+JCQT1XdEIgyz$HCn(RA5Sql#CUBo;vvWJO_O8t z4Q_D0LyrYav z6h0F)%zv-9B?k{rr-cd-@A&lPWIY%V5vLWUM6oZ zN#yAk1!gB|mQGcDzUr<~lzUMmtcsE~1qjP-$&B@Ua-83X79qo|~ zRD?uQNxA5NRMXQ;CUdpa7>V*=2QxX20|dha!(wP<35m#WWjQ*wsm1ujv{POmCU-^= z%?7UQ1jx+7C0M`D<0LE9`!Ht`b08-Lx6!qe$*5%%u?M?25-PgKS9yw;x>2e|OEFkq zwzxYeUy1{T6k$Dy{IdFl#yDBzzq8lT>0l=nr7n4MCjfIQ3i95ZAOXk49*nmkC-M+QXUnJ|JjFgE7=Z5b^oaa9K zcM93(1&7W9+?tDJx04CvdnN-ZFr(;P@L%9q;Bbx@G`mK6RK96)E9NQ}Nu6pBPmn%X<@HLeNJqr)_DOYPZDf(nC+CRz4TuT1T&pV zE3PngVE7MCId#r4J^))6%n9GRyiedR7)6|B`!#^7V{BgGhlLi=@%{y z#Me!nUC;&P@uz{3vZ#>8uLq;Lbp3}wd`ehSnC$DP0$i!=AYRO+WPe!Vc`cj*9xl67 z6gS@nK|!ouWf04^R5;ShortzCTEQFq+?}!Q*vYE1 z$P7M1oLcJCYGeE*th#WYOai%X;KxvjRN~QTW1RZ>!o?XB=-6ge6Ms3rI=sY}9aA-8 zGTbOiCmE6`#4&|h<{qaO+7TsFUJj~!T~k9zJ=P>UaN27DG58#heIoNb$SpN`KN`*8 z9T6B68EpX5q_W*@X`+}TUT~`M=w^!Cyq*IHI5oa*IbJwHsybm+6KmG^2w|V&wLE2z z+8)r3irt^-PYmr}j49%$*e-J7i}%P};=;c|abs6Az)=M9NU^&e;V>O}11~tiUrRKr ze&I!02jjVXRpT8qnfWseX*eOJ#J#_R3*XN?~eSpL$Ns zfs-^R814>w7Lsd}R-=;Fr<>~BA}*4!Po=SSsi||Mr~@wLiDNjk!VzG4b}eH5zHswX%u3uN(QZr&v;#Dx46+m6|Mo$1eQ;$ z8Ji6CqdS&Ps#4*4`sdmd7LNZBus(`FHL@(6C@tLxIf5mHWZ|!37x$I+nl9^R3 z;Z%c7dG^QAjQmc0eW3_{{&4vpc98aZj@1>hJJ$M z4_(LBc#)-K;^N@|u$N=Cpa%I@G8Cp3`0w}9w?&{6MWZv>errt$?L8U#k_@U(f4o(cpbdxYu=&8&K z2envb-K95P|;p+yUkS1rLlrB*bfiys+ z!TBOG_i!7FE14Xggc!)8KylA5SULPq3^=FR5Eh)Ay$*v`9(DDgpK0eobXr;5u)iX-+5?m9wIeK9@1|J|8h}|GUd(7d~pRr zRix0TVouK}s&X`bgYYB~YOozS3hq-0fEMW%Yu&pWADsy`f5W87vC{3xgEjMuXqKO8 z&wU;?pDR3Wxhq?qZgXB?lLbCy^Ia^Qe#Y54=Yq&V^jFCX4aDYKnM(pT0u7zqgyt`u z#Y(mWmnbc0q~LG~_3d#!GLzb7>#-6R!NWpvLv06`8&ihkO_;&fO^L^Ko{8mr$|49=} zNY11dOHDJX({EsgNUBIpAd-IzOHMJ*A>vY2S2WHIfGLKK)Bbhk z`!CR(7##fA|5J^qqfV0ifbijkDV1)X3uWn$N+0KD21z+r?rsq-bY|1+oAH^f34DI5 zS(JLV=V_}9dfRLXTFpa6Ja;~Rt867G=XabaWsPx2u5L*5F4rtP)?;rqz3yx&t_#Oe zb2LQ#YCO#3!?2kqGJFjHyV|JEPnVrZDJlV-DL^6sswdftYF03EE$+oizDs|HSOuX- z{2m@wA@e4@O{%K1WH#Ji*+JXnP1Y6DEqkXqi+1EHOyCo2yl^Vr^dhE~f3w`Xe`A&0 zmNW2R(=oq??ZQHxlC;FVZZn<^2L>D@X3^A!IhbW}E&Goif2+?xCd7$9# z3|2%l+t}Zq6L+Sc@;?a<%r8!#PZM|23a#SF8`2>Z!f@R0HQmhHC(7rXt>g9bYoJwpek#S_^CiJ9L8TW$E(QrVgf===g-656u~=#=3-?Fz;ice zEjj8*$UJ@;M8M5z9BlhZmrZ!Ps+b%L9X!q9K^11*Nku#I`|fM-V=}`Z;R?-AL8z~v zLw`)VaNi2hsvIWfANkxBe=_2T4@|`L6j+*_HsG5gWxS0vRR=GT4vyj&4DAok7K`MzTH>nYKC zv-#77FLD21^S@UdLZG3D7>Gq29T!{M$-?C6V5Z+33j}`JlF&gCcAga0C z0rC*ZSiN7#nUYzQNXF1@U@@8SCc3_+eOL3?Zzt)TUVoIC^qV}K^DSa-=CeraJVRQK z!t)YFk^(;>x(d#cENE!**HT{Ig4t6cNrJv>i;TgYM# zRUk^W!z9vrHDV<#6Hay=P_HI?csJi@H=TdG0-dRnrfU6&CN^};0EKIktWfgH*d6CM z-+dW#AUC74elw+jnqhgd?$&TX+NET7u4S(35SVmYKgy_GdhWS8mvsA8HkdC-JOsKB6;U_Z zBNaa#)(4k1jWSF?g?7sseNJ25iQiJF#=}DWBxX<;cZVrFNpV6_N`)Y@_9NVQV;Mms zJUhS;L(9Mk>uaZGGL;s3j$y`WLunNg!k0_A0saP?@$}sc*Q>OM<2PMa0hMEstiHSd zo>EZcU3r6CV<7>@AoJNDEgbwFW-otN^R|b@z&GsrEbrr6qkZnQp4>{q8@~nkt&31p5VWItNC*&QNOnUP=?VDH* zFf7o`2>KlYEy8p6J(Xz@yw9Y#v<-*G9{OdJvBS4Wq=(Bs4mBb~a=_%>f=B!R+X~!CF^@c88gSsiaL9HI9 z>l?R5H`!JvYpss%8#NTv*W@TDup+A1T}7FObZE3FpNniH3+ZF__boz0;5>E6Rjj|5 z4_Ui^esj9ip(&&v&`!;tK>F>XkYA>O&Y^oir9v;N5WhjendPyPqC^xC3=9ZGKxSew zsGSAV$;?G6Mh^Vw8w@fXA38}%tIEpi)&})bevDSpq;AAx*@39DgQJ;^s^9&6TF88m z;Z*eM<=Hfcf{M!A0Q_w!AJ=Og+eF$8F`;P!k|r=CdT$aM;4=%bk)_T#gWfPD0b{X< zEJY5oecwG7?c4^?Jrs`|QR&y*&Gb=L|ots)-QSplD30k2+xpB~*n# z3o9{n{18}k7@)^aXw2F}(>U^-mT9Hb57^v9@zem2qkkez!p1t)lc4f6dc2BSq`XvM z9-NyTp#?2QsFD^8;Q_YAS6-K+Qmy*UE{fFsOiT16Uv%PyXTbYat|sP;;!w}$2nECl zIY2@vjZVearZ6IJ9yN}0R;-`Y`Ei+ zQaIE@Q{8%P@B)o+Qy&|mITXZv7^tA4FnXbcmndZur{s)a7|c$d+qa(p1-ngF*KMuL z2W5sp=)Hy)y8@9`-_awB47avJ^5`q%D`i-<=HGV2?o56DsUVP?P+eD@-F#7(tHHX{ z-V(_wn=46bxz**`DlH_AJgz;CPd@??OUl6z3f@3l+;Zmn2c9MUWx2Q6oayvP z3DarKKfkYdzvCrcXF`qk*>3QA-B;<@>03YDX=1DrX;zKA5;D%@P7@R9J})Gc=F$^_R}ZFta3W$A{-oHeF%Tx1h4YXjz`)`mXT&Z&jqoxu-W{k+p7&$%?T=JMXdCpq+xis`V{grG7HG4=HMA zRv6tylB|TZN*JE#wUh{InQ$iG>6I~``SAE8i?zTX#7Z#5W2KE{GOY&=r44xZOKi1% zOlxvyd>XKf&i)BqnX4+$M+u@T%l^eN^fnxXSVWFX^()>X>mfasF^{okl3B>x?D42t zn^vgdej#L3A6v=oGwqNm{g~476jz|w13br)db~_d7B-Z4{4`g@b}?QXu*6h*=@NRH zi-H3ecS%V3$>uc~7xa-RS&1f2!@|61`lFLct#Pr?baxQ%Z>;U%;}Z07MQ)|M%GsMO z@~Cgs7KE=MOw{ceURji)6UeMqZpZQ`EW~K~zb%ICS@=HPXEz>6F|xE@2sWYza<%@6H8Q0D?A+5>P+Yaj1T_zx?vs`Jr1)G@V+^Aw{ z784XR5V9KNb3RmfP2+Xk9Cp0VV6~9x@-{H-vcz~JJ;i5|70cy#>M%aHf;o}kO9cd`g5D}&)Mnxb*c`fb#G*T-YtQ z3+-5yjTb*^od9c2Z?Y~wk3w6JTE79BR?N24MS+0pp%B$ZT)&uHNl7Mh&)&;1^r z8ft&`_kx8`w&{M|&u)m8I7=q~`W7VAwF}Fw=J4%fDYmul4l^}z;s-e-MiT#A$4M1& z$Sl)$nk*>cfMav@g$8p5y_VUlzz-pw(>ZN-ndbF#ng*#R%4$u%m;Z)xzaV^UY!+)X z&kdK}$oes>0FjW_&Il4T={BOk}h1SBJ zN3#iseS27>T^KmK*n``WY8xJQkY$%)1r&_f4<+f;b)ya4+>sC{@kEJp>Hgj|B{Wy7 z2q%UbZup_3k(qP+5RLpuiD-wu^2gqB&dr7)y@{}jO`+}nbuYty)u9w}BPx?UzLiJ! zsMah|Df8P&g0}ntXHT{NTbG&q%?AP`VKNrMQ@+3 zbz+;bEHknXanj{13x5v&rOTf;#QWb4GC)W?5~kG3HCHZ%J+hwV>644hN&BKj>7;$> zMwt+HU$Y&crVKR-*^zKqL5fc*xC|NREve+hh!q}|;zQ-9n|LBk97Gv<#0YgclCmx$ zHy@7q*o?Rm#!cq2F2{tu|EG12(2NO(#6Ex!<+ixCA9mD zf!`&=4F*@YF|_v27b{wRd>*eYGVlA($9kD$S)*%rxh2hI2)T(tit|_#+F9{JF#E*( z0)FGKG3gfE@&=*@$a8eN5`XEhr)yvg5{b#`Sb^y$mW$${%Y^VT{dP9!1_8b1#Z{R{ zda}99JC2xPCch#!Yq+==ZL{=DKUdP_OFAw^*8MTMb zsHPW?zm?*h|F@c$*iHIZQN3inTy_!Fo$6pV?rkYA<}@*AGkmw__oIiFI%D2!=PlHD z&WiKugz?!I7OHG3I{A1<*de;{3)p6QFz9fDvkITb zte7yWW{g8)+Ef<}G~tk^8N3@ubnCf{u+(l3&$KNz51A}NiidS&y$Z}Mz=)d0jprI( z-h2`ZBu=FgkV6_Ju}q1`G|weCt^_cXdETH(3BCiazZg!ZmGGYiqpkZM5C8d|)-{J} zOY-eK>*4P$S*s1xxb|&~XjO-GOmu|-kH;ndz7`jp4Bau!Oxn4c=1H>sd8&{jmp?pa zRJ*4XZz`F9|8OXgBXOZzA_F+F*W(Y#elweZYRoF?3yD=m1ww($#?TGJ4R*c$=EstL zl`^xYpEy27AnPJeQ#{yzyEhi@ z7kab{Xi8n{Csk3fI4CcKA9xr~Z~nGAom6#Uwiv3cbRO4z3Xw_I(6HO+iJAQr@<}Ge zIvIr;2ga~MgHp?0lbpI;qgqrvU1JLhHYS3CFWH~*Sh?hk^cC+_1eGxj9e zVn>?G%(a_OXqGmM?+>?5l}+DQ5Ig;$<8wpVBNv_~Ryk%W@8rtZ6MfIm$A@a0nQYln z_L{46%mR*v<_bfk^HPlcrWH2{1Vv_FhVUQ*YWi=~j;me%B3X?;o%|E&3-jU2_{X(S zlu>3R>rqfN;L|2fU4O8rP)i3_1G~9OK8Vs$Y1ZiGE348gbnRHv>^J2OCV$`YC$con zt2C-*@FhMIsS-uZiz=Pxqje|V`(0<#J^YDDZ|1G^U#F(H?wO}`dQHj2udi13eU`@= zC+3-POt;0cv-LXb(>@y6pL+S!N2eba?q;$$FqXOX6K8dLsKq7hLj98bdn==K($n9l zm9(g&;Pm~$po1No#zCTV3)WohEh`I?k9&xef%4qFRdEh*J@}G#&kI9wxw}LI1B5<> z);xk|zep{|E?*Or1`cRK9b&qvK*8iz7AdIU$clxgAt z>CaDQ!g?K3$Z7O70JBUJIIYCuO~jz;BAKTvbHcnbj{chpLj)9;Vmh&Hwue7}WM}9h zc~!u2_VduF(NgWbe{R=gVi6O~Iqst}&29}vh7X4(Lky?)ym!6+jZ~QV7 zC?1UhnGBpGUq_0cIfqH#{JM5_c1&%-y|uwc-81V~?N2zJrmH%T7=v0qk?zu|4`h*> zOs59w9mj%LIh~s6-+%H`)bdOOkof_SWH@yoWPcLrs?Ag}=O`u6gCM*M;qg1Q#D^qt z4~^f_|NIOSJ6Faigy$`^EOU91GvdsuW*QC=-nN79xzNadnyK|6ABU0;)&ljaixUqR zy&magpXRyGT@X_;iJ^dh4G{1U*(+1SzQ?_Ba5z|k>S1146+}zF0%{9sO`^t{DCzs-3Otd!J){G!g-4 z&!lYU@fY_nL{aw3j+OI82+RFsp<2c7X&UgMbIw;}|6T#OpG^IdAo_@fj*jhu4&!$t z<9BnU)8Xmtd^5s1{xV`Iat*=Rd!KwGgD@-pfvtNX`Rxm?f2@4HBzt%8^LrP*U%3uf z@umcV#(mD5+M4V=hV@DPUM@vndPIqdiCdq~S}ZLs{k+|bo|oo-4!1wAp1(zOJVY3+ z$R$5WnG8geKtzKFTGnnW;^Ht~dQUIAA@K*OSQ|p zp+tv;uip^|OCj~#Z4`TVXglMVL@Kc8C9(Kh=11iQ?NS$k-)kxpScR=O1+2ntoqc#l zk%H&6<-W68I{r<{??ES?%gbwbMrXTi=RU0M-rGd$2h0iPv_?TXTRI32p&_omTj8|I zDvyIQB2a&!7kxbu`H+T4(8|}wvmM7@`t4u(r;9fBr{k58J1JO2>ZFggW=Rp_`{J)jME%C-1e;Wf>Aa4jnYAR6F z`Vq3YLeTC@%vaTKLmP{C`5k;4X4z*i_8qUTivE$J!n=q5&{phxy?oIs;}G*+e=;(x zczpDbeVv?~oc8h<5M1+TMSnN$LG#{#7L9SDzbxA(_=8pDa;(kQn{B>oxxxveYrp<| z?)?O%W8gA7ZQo#day;Pny3*w|jQMr~!Co=yR0uIg*hcW{yMwn^Kyfwg$3?uV+wYbe)5Ioz}@L`$8EX2&w&KlQiJVs+-Di`?ScM&<J_v4PYW6R$zb5FO&e$|$$TX<2& z6)mVL^)?kvd;gd~YcA8UhK2?NA-9ocne`YK45^s%ma9+wyGZ!Nmt&gyLQBe08daotq7wUy3(e@*fFH~=}eeheow8(zwf zVRmr1_lr8C$;JP&>(ov*-(17T$L~xyZ&n;AjUw)_k@ZtSEmJbewvTo7v1LPwor7T$?ZXED`IzVc$ diff --git a/doc/articles/image-2c.png b/doc/articles/image-2c.png deleted file mode 100644 index f9abce5b52824de1a9e53743e536a8ecff5022a3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 60552 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

Soo9R@%0j%@PQ_t+e)(tk|}cn!PzN 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

y#Au>g(#0f{ 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 I3FDyu12Xtk2LJ#7 diff --git a/doc/articles/image-2d.png b/doc/articles/image-2d.png deleted file mode 100644 index ed0a9f92c4d899de4e12b1846d7b073c4f365361..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 68314 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

-Package image/draw defines -only one operation: drawing a source image onto a destination -image, through an optional mask image. This one operation is -surprisingly versatile and can perform a number of common image -manipulation tasks elegantly and efficiently. -

- -

-Composition is performed pixel by pixel in the style of the Plan 9 -graphics library and the X Render extension. The model is based on -the classic "Compositing Digital Images" paper by Porter and Duff, -with an additional mask parameter: dst = (src IN mask) OP dst. -For a fully opaque mask, this reduces to the original Porter-Duff -formula: dst = src OP dst. In Go, a nil mask image is equivalent -to an infinitely sized, fully opaque mask image. -

- -

-The Porter-Duff paper presented -12 different composition operators, -but with an explicit mask, only 2 of these are needed in practice: -source-over-destination and source. In Go, these operators are -represented by the Over and Src constants. The Over operator -performs the natural layering of a source image over a destination -image: the change to the destination image is smaller where the -source (after masking) is more transparent (that is, has lower -alpha). The Src operator merely copies the source (after masking) -with no regard for the destination image's original content. For -fully opaque source and mask images, the two operators produce the -same output, but the Src operator is usually faster. -

- -

Geometric Alignment

- -

-Composition requires associating destination pixels with source and -mask pixels. Obviously, this requires destination, source and mask -images, and a composition operator, but it also requires specifying -what rectangle of each image to use. Not every drawing should write -to the entire destination: when updating an animating image, it is -more efficient to only draw the parts of the image that have -changed. Not every drawing should read from the entire source: when -using a sprite that combines many small images into one large one, -only a part of the image is needed. Not every drawing should read -from the entire mask: a mask image that collects a font's glyphs is -similar to a sprite. Thus, drawing also needs to know three -rectangles, one for each image. Since each rectangle has the same -width and height, it suffices to pass a destination rectangle `r` -and two points sp and mp: the source rectangle is equal to r -translated so that r.Min in the destination image aligns with -sp in the source image, and similarly for mp. The effective -rectangle is also clipped to each image's bounds in their -respective co-ordinate space. -

- -

- -

- -

-The DrawMask -function takes seven arguments, but an explicit mask and mask-point -are usually unnecessary, so the -Draw function takes five: -

- -
-// Draw calls DrawMask with a nil mask.
-func Draw(dst Image, r image.Rectangle, src image.Image, sp image.Point, op Op)
-func DrawMask(dst Image, r image.Rectangle, src image.Image, sp image.Point,
-	mask image.Image, mp image.Point, op Op)
-
- -

-The destination image must be mutable, so the image/draw package -defines a draw.Image -interface which has a Set method. -

- -{{code "../src/pkg/image/draw/draw.go" `/type Image/` `/}/`}} - -

Filling a Rectangle

- -

-To fill a rectangle with a solid color, use an image.Uniform -source. The Uniform type re-interprets a Color as a -practically infinite-sized Image of that color. For those -familiar with the design of Plan 9's draw library, there is no need -for an explicit "repeat bit" in Go's slice-based image types; the -concept is subsumed by Uniform. -

- -{{code "/doc/progs/image_draw.go" `/ZERO/` `/STOP/`}} - -

-To initialize a new image to all-blue: -

- -{{code "/doc/progs/image_draw.go" `/BLUE/` `/STOP/`}} - -

-To reset an image to transparent (or black, if the destination -image's color model cannot represent transparency), use -image.Transparent, which is an image.Uniform: -

- -{{code "/doc/progs/image_draw.go" `/RESET/` `/STOP/`}} - -

- -

- - -

Copying an Image

- -

-To copy from a rectangle sr in the source image to a rectangle -starting at a point dp in the destination, convert the source -rectangle into the destination image's co-ordinate space: -

- -{{code "/doc/progs/image_draw.go" `/RECT/` `/STOP/`}} - -

-Alternatively: -

- -{{code "/doc/progs/image_draw.go" `/RECT2/` `/STOP/`}} - -

-To copy the entire source image, use sr = src.Bounds(). -

- -

- -

- -

Scrolling an Image

- -

-Scrolling an image is just copying an image to itself, with -different destination and source rectangles. Overlapping -destination and source images are perfectly valid, just as Go's -built-in copy function can handle overlapping destination and -source slices. To scroll an image m by 20 pixels: -

- -{{code "/doc/progs/image_draw.go" `/SCROLL/` `/STOP/`}} - -

- -

Converting an Image to RGBA

- -

-The result of decoding an image format might not be an -image.RGBA: decoding a GIF results in an image.Paletted, -decoding a JPEG results in a ycbcr.YCbCr, and the result of -decoding a PNG depends on the image data. To convert any image to -an image.RGBA: -

- -{{code "/doc/progs/image_draw.go" `/CONV/` `/STOP/`}} - -

- -

- -

Drawing Through a Mask

- -

-To draw an image through a circular mask with center p and radius -r: -

- -{{code "/doc/progs/image_draw.go" `/CIRCLESTRUCT/` `/STOP/`}} -{{code "/doc/progs/image_draw.go" `/CIRCLE2/` `/STOP/`}} - -

- -

- -

Drawing Font Glyphs

- -

-To draw a font glyph in blue starting from a point p, draw with -an image.Uniform source and an image.Alpha mask. For -simplicity, we aren't performing any sub-pixel positioning or -rendering, or correcting for a font's height above a baseline. -

- -{{code "/doc/progs/image_draw.go" `/GLYPH/` `/STOP/`}} - -

- -

- -

Performance

- -

-The image/draw package implementation demonstrates how to provide -an image manipulation function that is both general purpose, yet -efficient for common cases. The DrawMask function takes arguments -of interface types, but immediately makes type assertions that its -arguments are of specific struct types, corresponding to common -operations like drawing one image.RGBA image onto another, or -drawing an image.Alpha mask (such as a font glyph) onto an -image.RGBA image. If a type assertion succeeds, that type -information is used to run a specialized implementation of the -general algorithm. If the assertions fail, the fallback code path -uses the generic At and Set methods. The fast-paths are purely -a performance optimization; the resultant destination image is the -same either way. In practice, only a small number of special cases -are necessary to support typical applications. -

- - diff --git a/doc/articles/image_package.html b/doc/articles/image_package.html deleted file mode 100644 index 39a93ccdae..0000000000 --- a/doc/articles/image_package.html +++ /dev/null @@ -1,312 +0,0 @@ - - -

-The image and -image/color packages define a number of types: -color.Color and color.Model describe colors, -image.Point and image.Rectangle describe basic 2-D -geometry, and image.Image brings the two concepts together to -represent a rectangular grid of colors. A -separate article covers image -composition with the image/draw package. -

- -

-Colors and Color Models -

- -

-Color is an interface that defines the minimal -method set of any type that can be considered a color: one that can be converted -to red, green, blue and alpha values. The conversion may be lossy, such as -converting from CMYK or YCbCr color spaces. -

- -{{code "/src/pkg/image/color/color.go" `/type Color interface/` `/^}/`}} - -

-There are three important subtleties about the return values. First, the red, -green and blue are alpha-premultiplied: a fully saturated red that is also 25% -transparent is represented by RGBA returning a 75% r. Second, the channels have -a 16-bit effective range: 100% red is represented by RGBA returning an r of -65535, not 255, so that converting from CMYK or YCbCr is not as lossy. Third, -the type returned is uint32, even though the maximum value is 65535, to -guarantee that multiplying two values together won't overflow. Such -multiplications occur when blending two colors according to an alpha mask from a -third color, in the style of -Porter and Duff's -classic algebra: -

- -
-dstr, dstg, dstb, dsta := dst.RGBA()
-srcr, srcg, srcb, srca := src.RGBA()
-_, _, _, m := mask.RGBA()
-const M = 1<<16 - 1
-// The resultant red value is a blend of dstr and srcr, and ranges in [0, M].
-// The calculation for green, blue and alpha is similar.
-dstr = (dstr*(M-m) + srcr*m) / M
-
- -

-The last line of that code snippet would have been more complicated if we worked -with non-alpha-premultiplied colors, which is why Color uses -alpha-premultiplied values. -

- -

-The image/color package also defines a number of concrete types that implement -the Color interface. For example, -RGBA is a struct that represents -the classic "8 bits per channel" color. -

- -{{code "/src/pkg/image/color/color.go" `/type RGBA struct/` `/^}/`}} - -

-Note that the R field of an RGBA is an 8-bit -alpha-premultiplied color in the range [0, 255]. RGBA satisfies the -Color interface by multiplying that value by 0x101 to generate a -16-bit alpha-premultiplied color in the range [0, 65535]. Similarly, the -NRGBA struct type represents -an 8-bit non-alpha-premultiplied color, as used by the PNG image format. When -manipulating an NRGBA's fields directly, the values are -non-alpha-premultiplied, but when calling the RGBA method, the -return values are alpha-premultiplied. -

- -

-A Model is simply -something that can convert Colors to other Colors, possibly lossily. For -example, the GrayModel can convert any Color to a -desaturated Gray. A -Palette can convert any Color to one from a -limited palette. -

- -{{code "/src/pkg/image/color/color.go" `/type Model interface/` `/^}/`}} - -{{code "/src/pkg/image/color/color.go" `/type Palette \[\]Color/`}} - -

-Points and Rectangles -

- -

-A Point is an (x, y) co-ordinate -on the integer grid, with axes increasing right and down. It is neither a pixel -nor a grid square. A Point has no intrinsic width, height or -color, but the visualizations below use a small colored square. -

- -{{code "/src/pkg/image/geom.go" `/type Point struct/` `/^}/`}} - -

- -

- -{{code "/doc/progs/image_package1.go" `/p := image.Point/`}} - -

-A Rectangle is an axis-aligned -rectangle on the integer grid, defined by its top-left and bottom-right -Point. A Rectangle also has no intrinsic color, but -the visualizations below outline rectangles with a thin colored line, and call -out their Min and Max Points. -

- -{{code "/src/pkg/image/geom.go" `/type Rectangle struct/` `/^}/`}} - -

-For convenience, image.Rect(x0, y0, x1, y1) is equivalent to -image.Rectangle{image.Point{x0, y0}, image.Point{x1, y1}}, but is -much easier to type. -

- -

-A Rectangle is inclusive at the top-left and exclusive at the -bottom-right. For a Point p and a Rectangle r, -p.In(r) if and only if -r.Min.X <= p.X && p.X < r.Max.X, and similarly for Y. This is analogous to how -a slice s[i0:i1] is inclusive at the low end and exclusive at the -high end. (Unlike arrays and slices, a Rectangle often has a -non-zero origin.) -

- -

- -

- -{{code "/doc/progs/image_package2.go" `/r := image.Rect/` `/fmt.Println/`}} - -

-Adding a Point to a Rectangle translates the -Rectangle. Points and Rectangles are not restricted to be in the -bottom-right quadrant. -

- -

- -

- -{{code "/doc/progs/image_package3.go" `/r := image.Rect/` `/fmt.Println/`}} - -

-Intersecting two Rectangles yields another Rectangle, which may be empty. -

- -

- -

- -{{code "/doc/progs/image_package4.go" `/r := image.Rect/` `/fmt.Printf/`}} - -

-Points and Rectangles are passed and returned by value. A function that takes a -Rectangle argument will be as efficient as a function that takes -two Point arguments, or four int arguments. -

- -

-Images -

- -

-An Image maps every grid square in a -Rectangle to a Color from a Model. -"The pixel at (x, y)" refers to the color of the grid square defined by the -points (x, y), (x+1, y), (x+1, y+1) and (x, y+1). -

- -{{code "/src/pkg/image/image.go" `/type Image interface/` `/^}/`}} - -

-A common mistake is assuming that an Image's bounds start at (0, -0). For example, an animated GIF contains a sequence of Images, and each -Image after the first typically only holds pixel data for the area -that changed, and that area doesn't necessarily start at (0, 0). The correct -way to iterate over an Image m's pixels looks like: -

- -
-b := m.Bounds()
-for y := b.Min.Y; y < b.Max.Y; y++ {
-	for x := b.Min.X; x < b.Max.X; x++ {
-		doStuffWith(m.At(x, y))
-	}
-}
-
- -

-Image implementations do not have to be based on an in-memory -slice of pixel data. For example, a -Uniform is an -Image of enormous bounds and uniform color, whose in-memory -representation is simply that color. -

- -{{code "/src/pkg/image/names.go" `/type Uniform struct/` `/^}/`}} - -

-Typically, though, programs will want an image based on a slice. Struct types -like RGBA and -Gray (which other packages refer -to as image.RGBA and image.Gray) hold slices of pixel -data and implement the Image interface. -

- -{{code "/src/pkg/image/image.go" `/type RGBA struct/` `/^}/`}} - -

-These types also provide a Set(x, y int, c color.Color) method -that allows modifying the image one pixel at a time. -

- -{{code "/doc/progs/image_package5.go" `/m := image.New/` `/m.Set/`}} - -

-If you're reading or writing a lot of pixel data, it can be more efficient, but -more complicated, to access these struct type's Pix field directly. -

- -

-The slice-based Image implementations also provide a -SubImage method, which returns an Image backed by the -same array. Modifying the pixels of a sub-image will affect the pixels of the -original image, analogous to how modifying the contents of a sub-slice -s[i0:i1] will affect the contents of the original slice -s. -

- - - -{{code "/doc/progs/image_package6.go" `/m0 := image.New/` `/fmt.Println\(m0.Stride/`}} - -

-For low-level code that works on an image's Pix field, be aware -that ranging over Pix can affect pixels outside an image's bounds. -In the example above, the pixels covered by m1.Pix are shaded in -blue. Higher-level code, such as the At and Set -methods or the image/draw package, will clip -their operations to the image's bounds. -

- -

-Image Formats -

- -

-The standard package library supports a number of common image formats, such as -GIF, JPEG and PNG. If you know the format of a source image file, you can -decode from an io.Reader directly. -

- -
-import (
-	"image/jpeg"
-	"image/png"
-	"io"
-)
-
-// convertJPEGToPNG converts from JPEG to PNG.
-func convertJPEGToPNG(w io.Writer, r io.Reader) error {
-	img, err := jpeg.Decode(r)
-	if err != nil {
-		return err
-	}
-	return png.Encode(w, img)
-}
-
- -

-If you have image data of unknown format, the -image.Decode function can detect -the format. The set of recognized formats is constructed at run time and is not -limited to those in the standard package library. An image format package -typically registers its format in an init function, and the main package will -"underscore import" such a package solely for the side effect of format -registration. -

- -
-import (
-	"image"
-	"image/png"
-	"io"
-
-	_ "code.google.com/p/vp8-go/webp"
-	_ "image/jpeg"
-)
-
-// convertToPNG converts from any recognized format to PNG.
-func convertToPNG(w io.Writer, r io.Reader) error {
-	img, _, err := image.Decode(r)
-	if err != nil {
-		return err
-	}
-	return png.Encode(w, img)
-}
-
diff --git a/doc/articles/index.html b/doc/articles/index.html index 5f70734ecd..9ddd669731 100644 --- a/doc/articles/index.html +++ b/doc/articles/index.html @@ -3,5 +3,6 @@ }-->

-See the Documents page for a complete list of Go articles. +See the Documents page and the +Blog index for a complete list of Go articles.

diff --git a/doc/articles/json_and_go.html b/doc/articles/json_and_go.html deleted file mode 100644 index 8c4ef33a41..0000000000 --- a/doc/articles/json_and_go.html +++ /dev/null @@ -1,357 +0,0 @@ - - -

-JSON (JavaScript Object Notation) is a simple data interchange format. -Syntactically it resembles the objects and lists of JavaScript. It is most -commonly used for communication between web back-ends and JavaScript programs -running in the browser, but it is used in many other places, too. Its home page, -json.org, provides a wonderfully clear and concise -definition of the standard. -

- -

-With the json package it's a snap to read and -write JSON data from your Go programs. -

- -

-Encoding -

- -

-To encode JSON data we use the -Marshal function. -

- -
-func Marshal(v interface{}) ([]byte, error)
-
- -

-Given the Go data structure, Message, -

- -{{code "/doc/progs/json1.go" `/type Message/` `/STOP/`}} - -

-and an instance of Message -

- -{{code "/doc/progs/json1.go" `/m :=/`}} - -

-we can marshal a JSON-encoded version of m using json.Marshal: -

- -{{code "/doc/progs/json1.go" `/b, err :=/`}} - -

-If all is well, err will be nil and b -will be a []byte containing this JSON data: -

- -
-b == []byte(`{"Name":"Alice","Body":"Hello","Time":1294706395881547000}`)
-
- -

-Only data structures that can be represented as valid JSON will be encoded: -

- -
    -
  • -JSON objects only support strings as keys; to encode a Go map type it must be -of the form map[string]T (where T is any Go type -supported by the json package). -
  • -
  • -Channel, complex, and function types cannot be encoded. -
  • -
  • -Cyclic data structures are not supported; they will cause Marshal -to go into an infinite loop. -
  • -
  • -Pointers will be encoded as the values they point to (or 'null' if the pointer -is nil). -
  • -
- -

-The json package only accesses the exported fields of struct types (those that -begin with an uppercase letter). Therefore only the exported fields of a struct -will be present in the JSON output. -

- -

-Decoding -

- -

-To decode JSON data we use the -Unmarshal function. -

- -
-func Unmarshal(data []byte, v interface{}) error
-
- -

-We must first create a place where the decoded data will be stored -

- -{{code "/doc/progs/json1.go" `/var m Message/`}} - -

-and call json.Unmarshal, passing it a []byte of JSON -data and a pointer to m -

- -{{code "/doc/progs/json1.go" `/err := json.Unmarshal/`}} - -

-If b contains valid JSON that fits in m, after the -call err will be nil and the data from b -will have been stored in the struct m, as if by an assignment -like: -

- -{{code "/doc/progs/json1.go" `/m = Message/` `/STOP/`}} - -

-How does Unmarshal identify the fields in which to store the -decoded data? For a given JSON key "Foo", Unmarshal -will look through the destination struct's fields to find (in order of -preference): -

- -
    -
  • -An exported field with a tag of `json:"Foo"` (see the -Go spec for more on struct tags), -
  • -
  • -An exported field named "Foo", or -
  • -
  • -An exported field named "FOO" or "FoO" or some other -case-insensitive match of "Foo". -
  • -
- -

-What happens when the structure of the JSON data doesn't exactly match the Go -type? -

- -{{code "/doc/progs/json1.go" `/"Food":"Pickle"/` `/STOP/`}} - -

-Unmarshal will decode only the fields that it can find in the -destination type. In this case, only the Name field of m will be -populated, and the Food field will be ignored. This behavior is -particularly useful when you wish to pick only a few specific fields out of a -large JSON blob. It also means that any unexported fields in the destination -struct will be unaffected by Unmarshal. -

- -

-But what if you don't know the structure of your JSON data beforehand? -

- -

-Generic JSON with interface{} -

- -

-The interface{} (empty interface) type describes an interface with -zero methods. Every Go type implements at least zero methods and therefore -satisfies the empty interface. -

- -

-The empty interface serves as a general container type: -

- -{{code "/doc/progs/json2.go" `/var i interface{}/` `/STOP/`}} - -

-A type assertion accesses the underlying concrete type: -

- -{{code "/doc/progs/json2.go" `/r := i/` `/STOP/`}} - -

-Or, if the underlying type is unknown, a type switch determines the type: -

- -{{code "/doc/progs/json2.go" `/switch v/` `/STOP/`}} - -

-The json package uses map[string]interface{} and -[]interface{} values to store arbitrary JSON objects and arrays; -it will happily unmarshal any valid JSON blob into a plain -interface{} value. The default concrete Go types are: -

- -
    -
  • -bool for JSON booleans, -
  • -
  • -float64 for JSON numbers, -
  • -
  • -string for JSON strings, and -
  • -
  • -nil for JSON null. -
  • -
- -

-Decoding arbitrary data -

- -

-Consider this JSON data, stored in the variable b: -

- -{{code "/doc/progs/json3.go" `/b :=/`}} - -

-Without knowing this data's structure, we can decode it into an -interface{} value with Unmarshal: -

- -{{code "/doc/progs/json3.go" `/var f interface/` `/STOP/`}} - -

-At this point the Go value in f would be a map whose keys are -strings and whose values are themselves stored as empty interface values: -

- -{{code "/doc/progs/json3.go" `/f = map/` `/STOP/`}} - -

-To access this data we can use a type assertion to access f's -underlying map[string]interface{}: -

- -{{code "/doc/progs/json3.go" `/m := f/`}} - -

-We can then iterate through the map with a range statement and use a type switch -to access its values as their concrete types: -

- -{{code "/doc/progs/json3.go" `/for k, v/` `/STOP/`}} - -

-In this way you can work with unknown JSON data while still enjoying the -benefits of type safety. -

- -

-Reference Types -

- -

-Let's define a Go type to contain the data from the previous example: -

- -{{code "/doc/progs/json4.go" `/type FamilyMember/` `/STOP/`}} - -{{code "/doc/progs/json4.go" `/var m FamilyMember/` `/STOP/`}} - -

-Unmarshaling that data into a FamilyMember value works as -expected, but if we look closely we can see a remarkable thing has happened. -With the var statement we allocated a FamilyMember struct, and -then provided a pointer to that value to Unmarshal, but at that -time the Parents field was a nil slice value. To -populate the Parents field, Unmarshal allocated a new -slice behind the scenes. This is typical of how Unmarshal works -with the supported reference types (pointers, slices, and maps). -

- -

-Consider unmarshaling into this data structure: -

- -
-type Foo struct {
-    Bar *Bar
-}
-
- -

-If there were a Bar field in the JSON object, -Unmarshal would allocate a new Bar and populate it. -If not, Bar would be left as a nil pointer. -

- -

-From this a useful pattern arises: if you have an application that receives a -few distinct message types, you might define "receiver" structure like -

- -
-type IncomingMessage struct {
-    Cmd *Command
-    Msg *Message
-}
-
- -

-and the sending party can populate the Cmd field and/or the -Msg field of the top-level JSON object, depending on the type of -message they want to communicate. Unmarshal, when decoding the -JSON into an IncomingMessage struct, will only allocate the data -structures present in the JSON data. To know which messages to process, the -programmer need simply test that either Cmd or Msg is -not nil. -

- -

-Streaming Encoders and Decoders -

- -

-The json package provides Decoder and Encoder types -to support the common operation of reading and writing streams of JSON data. -The NewDecoder and NewEncoder functions wrap the -io.Reader and -io.Writer interface types. -

- -
-func NewDecoder(r io.Reader) *Decoder
-func NewEncoder(w io.Writer) *Encoder
-
- -

-Here's an example program that reads a series of JSON objects from standard -input, removes all but the Name field from each object, and then -writes the objects to standard output: -

- -{{code "/doc/progs/json5.go" `/package main/` `$`}} - -

-Due to the ubiquity of Readers and Writers, these Encoder and -Decoder types can be used in a broad range of scenarios, such as -reading and writing to HTTP connections, WebSockets, or files. -

- -

-References -

- -

-For more information see the json package documentation. For an example usage of -json see the source files of the jsonrpc package. -

diff --git a/doc/articles/json_rpc_tale_of_interfaces.html b/doc/articles/json_rpc_tale_of_interfaces.html deleted file mode 100644 index 0db366f33a..0000000000 --- a/doc/articles/json_rpc_tale_of_interfaces.html +++ /dev/null @@ -1,78 +0,0 @@ - - -

-Here we present an example where Go's -interfaces made it -easy to refactor some existing code to make it more flexible and extensible. -Originally, the standard library's RPC package used -a custom wire format called gob. For a -particular application, we wanted to use JSON -as an alternate wire format. -

- -

-We first defined a pair of interfaces to describe the functionality of the -existing wire format, one for the client, and one for the server (depicted -below). -

- -
-type ServerCodec interface {
-	ReadRequestHeader(*Request) error
-	ReadRequestBody(interface{}) error
-	WriteResponse(*Response, interface{}) error
-	Close() error
-}
-
- -

-On the server side, we then changed two internal function signatures to accept -the ServerCodec interface instead of our existing -gob.Encoder. Here's one of them: -

- -
-func sendResponse(sending *sync.Mutex, req *Request,
-	reply interface{}, enc *gob.Encoder, errmsg string)
-
- -

-became -

- -
-func sendResponse(sending *sync.Mutex, req *Request,
-		reply interface{}, enc ServerCodec, errmsg string)
-
- -

-We then wrote a trivial gobServerCodec wrapper to reproduce the -original functionality. From there it is simple to build a -jsonServerCodec. -

- -

-After some similar changes to the client side, this was the full extent of the -work we needed to do on the RPC package. This whole exercise took about 20 -minutes! After tidying up and testing the new code, the -final changeset -was submitted. -

- -

-In an inheritance-oriented language like Java or C++, the obvious path would be -to generalize the RPC class, and create JsonRPC and GobRPC subclasses. However, -this approach becomes tricky if you want to make a further generalization -orthogonal to that hierarchy. (For example, if you were to implement an -alternate RPC standard). In our Go package, we took a route that is both -conceptually simpler and requires less code be written or changed. -

- -

-A vital quality for any codebase is maintainability. As needs change, it is -essential to adapt your code easily and cleanly, lest it become unwieldy to work -with. We believe Go's lightweight, composition-oriented type system provides a -means of structuring code that scales. -

diff --git a/doc/articles/laws_of_reflection.html b/doc/articles/laws_of_reflection.html deleted file mode 100644 index 57a769692a..0000000000 --- a/doc/articles/laws_of_reflection.html +++ /dev/null @@ -1,649 +0,0 @@ - - -

-Reflection in computing is the -ability of a program to examine its own structure, particularly -through types; it's a form of metaprogramming. It's also a great -source of confusion. -

- -

-In this article we attempt to clarify things by explaining how -reflection works in Go. Each language's reflection model is -different (and many languages don't support it at all), but -this article is about Go, so for the rest of this article the word -"reflection" should be taken to mean "reflection in Go". -

- -

Types and interfaces

- -

-Because reflection builds on the type system, let's start with a -refresher about types in Go. -

- -

-Go is statically typed. Every variable has a static type, that is, -exactly one type known and fixed at compile time: int, -float32, *MyType, []byte, -and so on. If we declare -

- -{{code "/doc/progs/interface.go" `/type MyInt/` `/STOP/`}} - -

-then i has type int and j -has type MyInt. The variables i and -j have distinct static types and, although they have -the same underlying type, they cannot be assigned to one another -without a conversion. -

- -

-One important category of type is interface types, which represent -fixed sets of methods. An interface variable can store any concrete -(non-interface) value as long as that value implements the -interface's methods. A well-known pair of examples is -io.Reader and io.Writer, the types -Reader and Writer from the -io package: -

- -{{code "/doc/progs/interface.go" `/// Reader/` `/STOP/`}} - -

-Any type that implements a Read (or -Write) method with this signature is said to implement -io.Reader (or io.Writer). For the -purposes of this discussion, that means that a variable of type -io.Reader can hold any value whose type has a -Read method: -

- -{{code "/doc/progs/interface.go" `/func readers/` `/STOP/`}} - -

-It's important to be clear that whatever concrete value -r may hold, r's type is always -io.Reader: Go is statically typed and the static type -of r is io.Reader.

- -

-An extremely important example of an interface type is the empty -interface: -

- -
-interface{}
-
- -

-It represents the empty set of methods and is satisfied by any -value at all, since any value has zero or more methods. -

- -

-Some people say that Go's interfaces are dynamically typed, but -that is misleading. They are statically typed: a variable of -interface type always has the same static type, and even though at -run time the value stored in the interface variable may change -type, that value will always satisfy the interface. -

- -

-We need to be precise about all this because reflection and -interfaces are closely related. -

- -

The representation of an interface

- -

-Russ Cox has written a -detailed blog post -about the representation of interface values in Go. It's not necessary to -repeat the full story here, but a simplified summary is in order. -

- -

-A variable of interface type stores a pair: the concrete value -assigned to the variable, and that value's type descriptor. -To be more precise, the value is the underlying concrete data item -that implements the interface and the type describes the full type -of that item. For instance, after -

- -{{code "/doc/progs/interface.go" `/func typeAssertions/` `/STOP/`}} - -

-r contains, schematically, the (value, type) pair, -(tty, *os.File). Notice that the type -*os.File implements methods other than -Read; even though the interface value provides access -only to the Read method, the value inside carries all -the type information about that value. That's why we can do things -like this: -

- -{{code "/doc/progs/interface.go" `/var w io.Writer/` `/STOP/`}} - -

-The expression in this assignment is a type assertion; what it -asserts is that the item inside r also implements -io.Writer, and so we can assign it to w. -After the assignment, w will contain the pair -(tty, *os.File). That's the same pair as -was held in r. The static type of the interface -determines what methods may be invoked with an interface variable, -even though the concrete value inside may have a larger set of -methods. -

- -

-Continuing, we can do this: -

- -{{code "/doc/progs/interface.go" `/var empty interface{}/` `/STOP/`}} - -

-and our empty interface value, empty, will again contain -that same pair, (tty, *os.File). That's -handy: an empty interface can hold any value and contains all the -information we could ever need about that value. -

- -

-(We don't need a type assertion here because it's known statically -that w satisfies the empty interface. In the example -where we moved a value from a Reader to a -Writer, we needed to be explicit and use a type -assertion because Writer's methods are not a -subset of Reader's.) -

- -

-One important detail is that the pair inside an interface always -has the form (value, concrete type) and cannot have the form -(value, interface type). Interfaces do not hold interface -values. -

- -

-Now we're ready to reflect. -

- -

The first law of reflection

- -

1. Reflection goes from interface value to reflection object.

- -

-At the basic level, reflection is just a mechanism to examine the -type and value pair stored inside an interface variable. To get -started, there are two types we need to know about in -package reflect: -Type and -Value. Those two types -give access to the contents of an interface variable, and two -simple functions, called reflect.TypeOf and -reflect.ValueOf, retrieve reflect.Type -and reflect.Value pieces out of an interface value. -(Also, from the reflect.Value it's easy to get -to the reflect.Type, but let's keep the -Value and Type concepts separate for -now.) -

- -

-Let's start with TypeOf: -

- -{{code "/doc/progs/interface2.go" `/package main/` `/STOP main/`}} - -

-This program prints -

- -
-type: float64
-
- -

-You might be wondering where the interface is here, since the program looks -like it's passing the float64 variable x, not an -interface value, to reflect.TypeOf. But it's there; as -godoc reports, the signature of -reflect.TypeOf includes an empty interface: -

- -
-// TypeOf returns the reflection Type of the value in the interface{}.
-func TypeOf(i interface{}) Type
-
- -

-When we call reflect.TypeOf(x), x is -first stored in an empty interface, which is then passed as the -argument; reflect.TypeOf unpacks that empty interface -to recover the type information. -

- -

-The reflect.ValueOf function, of course, recovers the -value (from here on we'll elide the boilerplate and focus just on -the executable code): -

- -{{code "/doc/progs/interface2.go" `/START f9/` `/STOP/`}} - -

-prints -

- -
-value: <float64 Value>
-
- -

-Both reflect.Type and reflect.Value have -lots of methods to let us examine and manipulate them. One -important example is that Value has a -Type method that returns the Type of a -reflect.Value. Another is that both Type -and Value have a Kind method that returns -a constant indicating what sort of item is stored: -Uint, Float64, Slice, and so -on. Also methods on Value with names like -Int and Float let us grab values (as -int64 and float64) stored inside: -

- -{{code "/doc/progs/interface2.go" `/START f1/` `/STOP/`}} - -

-prints -

- -
-type: float64
-kind is float64: true
-value: 3.4
-
- -

-There are also methods like SetInt and -SetFloat but to use them we need to understand -settability, the subject of the third law of reflection, discussed -below. -

- -

-The reflection library has a couple of properties worth singling -out. First, to keep the API simple, the "getter" and "setter" -methods of Value operate on the largest type that can -hold the value: int64 for all the signed integers, for -instance. That is, the Int method of -Value returns an int64 and the -SetInt value takes an int64; it may be -necessary to convert to the actual type involved: -

- -{{code "/doc/progs/interface2.go" `/START f2/` `/STOP/`}} - -

-The second property is that the Kind of a reflection -object describes the underlying type, not the static type. If a -reflection object contains a value of a user-defined integer type, -as in -

- -{{code "/doc/progs/interface2.go" `/START f3/` `/STOP/`}} - -

-the Kind of v is still -reflect.Int, even though the static type of -x is MyInt, not int. In -other words, the Kind cannot discriminate an int from -a MyInt even though the Type can. -

- -

The second law of reflection

- -

2. Reflection goes from reflection object to interface -value.

- -

-Like physical reflection, reflection in Go generates its own -inverse. -

- -

-Given a reflect.Value we can recover an interface -value using the Interface method; in effect the method -packs the type and value information back into an interface -representation and returns the result: -

- -
-// Interface returns v's value as an interface{}.
-func (v Value) Interface() interface{}
-
- -

-As a consequence we can say -

- -{{code "/doc/progs/interface2.go" `/START f3b/` `/STOP/`}} - -

-to print the float64 value represented by the -reflection object v. -

- -

-We can do even better, though. The arguments to -fmt.Println, fmt.Printf and so on are all -passed as empty interface values, which are then unpacked by the -fmt package internally just as we have been doing in -the previous examples. Therefore all it takes to print the contents -of a reflect.Value correctly is to pass the result of -the Interface method to the formatted print -routine: -

- -{{code "/doc/progs/interface2.go" `/START f3c/` `/STOP/`}} - -

-(Why not fmt.Println(v)? Because v is a -reflect.Value; we want the concrete value it holds.) -Since our value is a float64, we can even use a -floating-point format if we want: -

- -{{code "/doc/progs/interface2.go" `/START f3d/` `/STOP/`}} - -

-and get in this case -

- -
-3.4e+00
-
- -

-Again, there's no need to type-assert the result of -v.Interface() to float64; the empty -interface value has the concrete value's type information inside -and Printf will recover it. -

- -

-In short, the Interface method is the inverse of the -ValueOf function, except that its result is always of -static type interface{}. -

- -

-Reiterating: Reflection goes from interface values to reflection -objects and back again. -

- -

The third law of reflection

- -

3. To modify a reflection object, the value must be settable.

- -

-The third law is the most subtle and confusing, but it's easy -enough to understand if we start from first principles. -

- -

-Here is some code that does not work, but is worth studying. -

- -{{code "/doc/progs/interface2.go" `/START f4/` `/STOP/`}} - -

-If you run this code, it will panic with the cryptic message -

- -
-panic: reflect.Value.SetFloat using unaddressable value
-
- -

-The problem is not that the value 7.1 is not -addressable; it's that v is not settable. Settability -is a property of a reflection Value, and not all -reflection Values have it. -

- -

-The CanSet method of Value reports the -settability of a Value; in our case, -

- -{{code "/doc/progs/interface2.go" `/START f5/` `/STOP/`}} - -

-prints -

- -
-settability of v: false
-
- -

-It is an error to call a Set method on an non-settable -Value. But what is settability? -

- -

-Settability is a bit like addressability, but stricter. It's the -property that a reflection object can modify the actual storage -that was used to create the reflection object. Settability is -determined by whether the reflection object holds the original -item. When we say -

- -{{code "/doc/progs/interface2.go" `/START f6/` `/STOP/`}} - -

-we pass a copy of x to -reflect.ValueOf, so the interface value created as the -argument to reflect.ValueOf is a copy of -x, not x itself. Thus, if the -statement -

- -{{code "/doc/progs/interface2.go" `/START f6b/` `/STOP/`}} - -

-were allowed to succeed, it would not update x, even -though v looks like it was created from -x. Instead, it would update the copy of x -stored inside the reflection value and x itself would -be unaffected. That would be confusing and useless, so it is -illegal, and settability is the property used to avoid this -issue. -

- -

-If this seems bizarre, it's not. It's actually a familiar situation -in unusual garb. Think of passing x to a -function: -

- -
-f(x)
-
- -

-We would not expect f to be able to modify -x because we passed a copy of x's value, -not x itself. If we want f to modify -x directly we must pass our function the address of -x (that is, a pointer to x):

- -

-f(&x) -

- -

-This is straightforward and familiar, and reflection works the same -way. If we want to modify x by reflection, we must -give the reflection library a pointer to the value we want to -modify. -

- -

-Let's do that. First we initialize x as usual -and then create a reflection value that points to it, called -p. -

- -{{code "/doc/progs/interface2.go" `/START f7/` `/STOP/`}} - -

-The output so far is -

- -
-type of p: *float64
-settability of p: false
-
- -

-The reflection object p isn't settable, but it's not -p we want to set, it's (in effect) *p. To -get to what p points to, we call the Elem -method of Value, which indirects through the pointer, -and save the result in a reflection Value called -v: -

- -{{code "/doc/progs/interface2.go" `/START f7b/` `/STOP/`}} - -

-Now v is a settable reflection object, as the output -demonstrates, -

- -
-settability of v: true
-
- -

-and since it represents x, we are finally able to use -v.SetFloat to modify the value of -x: -

- -{{code "/doc/progs/interface2.go" `/START f7c/` `/STOP/`}} - -

-The output, as expected, is -

- -
-7.1
-7.1
-
- -

-Reflection can be hard to understand but it's doing exactly what -the language does, albeit through reflection Types and -Values that can disguise what's going on. Just keep in -mind that reflection Values need the address of something in order -to modify what they represent. -

- -

Structs

- -

-In our previous example v wasn't a pointer itself, it -was just derived from one. A common way for this situation to arise -is when using reflection to modify the fields of a structure. As -long as we have the address of the structure, we can modify its -fields. -

- -

-Here's a simple example that analyzes a struct value, t. We create -the reflection object with the address of the struct because we'll want to -modify it later. Then we set typeOfT to its type and iterate over -the fields using straightforward method calls -(see package reflect for details). -Note that we extract the names of the fields from the struct type, but the -fields themselves are regular reflect.Value objects. -

- -{{code "/doc/progs/interface2.go" `/START f8/` `/STOP/`}} - -

-The output of this program is -

- -
-0: A int = 23
-1: B string = skidoo
-
- -

-There's one more point about settability introduced in -passing here: the field names of T are upper case -(exported) because only exported fields of a struct are -settable. -

- -

-Because s contains a settable reflection object, we -can modify the fields of the structure. -

- -{{code "/doc/progs/interface2.go" `/START f8b/` `/STOP/`}} - -

-And here's the result: -

- -
-t is now {77 Sunset Strip}
-
- -

-If we modified the program so that s was created from -t, not &t, the calls to -SetInt and SetString would fail as the -fields of t would not be settable. -

- -

Conclusion

- -

-Here again are the laws of reflection: -

- -
    -
  1. Reflection goes from interface value to reflection -object.
  2. -
  3. Reflection goes from reflection object to interface -value.
  4. -
  5. To modify a reflection object, the value must be settable.
  6. -
- -

-Once you understand these laws reflection in Go becomes much easier -to use, although it remains subtle. It's a powerful tool that -should be used with care and avoided unless strictly -necessary. -

- -

-There's plenty more to reflection that we haven't covered — -sending and receiving on channels, allocating memory, using slices -and maps, calling methods and functions — but this post is -long enough. We'll cover some of those topics in a later -article. -

diff --git a/doc/articles/race_detector.html b/doc/articles/race_detector.html deleted file mode 100644 index 282db8ba40..0000000000 --- a/doc/articles/race_detector.html +++ /dev/null @@ -1,388 +0,0 @@ - - -

Introduction

- -

-Data races are among the most common and hardest to debug types of bugs in concurrent systems. -A data race occurs when two goroutines access the same variable concurrently and at least one of the accesses is a write. -See the The Go Memory Model for details. -

- -

-Here is an example of a data race that can lead to crashes and memory corruption: -

- -
-func main() {
-	c := make(chan bool)
-	m := make(map[string]string)
-	go func() {
-		m["1"] = "a" // First conflicting access.
-		c <- true
-	}()
-	m["2"] = "b" // Second conflicting access.
-	<-c
-	for k, v := range m {
-		fmt.Println(k, v)
-	}
-}
-
- -

Usage

- -

-To help diagnose such bugs, Go includes a built-in data race detector. -To use it, add the -race flag to the go command: -

- -
-$ go test -race mypkg    // to test the package
-$ go run -race mysrc.go  // to run the source file
-$ go build -race mycmd   // to build the command
-$ go install -race mypkg // to install the package
-
- -

Report Format

- -

-When the race detector finds a data race in the program, it prints a report. -The report contains stack traces for conflicting accesses, as well as stacks where the involved goroutines were created. -Here is an example: -

- -
-WARNING: DATA RACE
-Read by goroutine 185:
-  net.(*pollServer).AddFD()
-      src/pkg/net/fd_unix.go:89 +0x398
-  net.(*pollServer).WaitWrite()
-      src/pkg/net/fd_unix.go:247 +0x45
-  net.(*netFD).Write()
-      src/pkg/net/fd_unix.go:540 +0x4d4
-  net.(*conn).Write()
-      src/pkg/net/net.go:129 +0x101
-  net.func·060()
-      src/pkg/net/timeout_test.go:603 +0xaf
-
-Previous write by goroutine 184:
-  net.setWriteDeadline()
-      src/pkg/net/sockopt_posix.go:135 +0xdf
-  net.setDeadline()
-      src/pkg/net/sockopt_posix.go:144 +0x9c
-  net.(*conn).SetDeadline()
-      src/pkg/net/net.go:161 +0xe3
-  net.func·061()
-      src/pkg/net/timeout_test.go:616 +0x3ed
-
-Goroutine 185 (running) created at:
-  net.func·061()
-      src/pkg/net/timeout_test.go:609 +0x288
-
-Goroutine 184 (running) created at:
-  net.TestProlongTimeout()
-      src/pkg/net/timeout_test.go:618 +0x298
-  testing.tRunner()
-      src/pkg/testing/testing.go:301 +0xe8
-
- -

Options

- -

-The GORACE environment variable sets race detector options. -The format is: -

- -
-GORACE="option1=val1 option2=val2"
-
- -

-The options are: -

- -
    -
  • -log_path (default stderr): The race detector writes -its report to a file named log_path.pid. -The special names stdout -and stderr cause reports to be written to standard output and -standard error, respectively. -
  • - -
  • -exitcode (default 66): The exit status to use when -exiting after a detected race. -
  • - -
  • -strip_path_prefix (default ""): Strip this prefix -from all reported file paths, to make reports more concise. -
  • - -
  • -history_size (default 1): The per-goroutine memory -access history is 32K * 2**history_size elements. -Increasing this value can avoid a "failed to restore the stack" error in reports, at the -cost of increased memory usage. -
  • - -
  • -halt_on_error (default 0): Controls whether the program -exits after reporting first data race. -
  • -
- -

-Example: -

- -
-$ GORACE="log_path=/tmp/race/report strip_path_prefix=/my/go/sources/" go test -race
-
- -

Excluding Tests

- -

-When you build with -race flag, the go command defines additional -build tag race. -You can use the tag to exclude some code and tests when running the race detector. -Some examples: -

- -
-// +build !race
-
-package foo
-
-// The test contains a data race. See issue 123.
-func TestFoo(t *testing.T) {
-	// ...
-}
-
-// The test fails under the race detector due to timeouts.
-func TestBar(t *testing.T) {
-	// ...
-}
-
-// The test takes too long under the race detector.
-func TestBaz(t *testing.T) {
-	// ...
-}
-
- -

How To Use

- -

-To start, run your tests using the race detector (go test -race). -The race detector only finds races that happen at runtime, so it can't find -races in code paths that are not executed. -If your tests have incomplete coverage, -you may find more races by running a binary built with -race under a realistic -workload. -

- -

Typical Data Races

- -

-Here are some typical data races. All of them can be detected with the race detector. -

- -

Race on loop counter

- -
-func main() {
-	var wg sync.WaitGroup
-	wg.Add(5)
-	for i := 0; i < 5; i++ {
-		go func() {
-			fmt.Println(i) // Not the 'i' you are looking for.
-			wg.Done()
-		}()
-	}
-	wg.Wait()
-}
-
- -

-The variable i in the function literal is the same variable used by the loop, so -the read in the goroutine races with the loop increment. -(This program typically prints 55555, not 01234.) -The program can be fixed by making a copy of the variable: -

- -
-func main() {
-	var wg sync.WaitGroup
-	wg.Add(5)
-	for i := 0; i < 5; i++ {
-		go func(j int) {
-			fmt.Println(j) // Good. Read local copy of the loop counter.
-			wg.Done()
-		}(i)
-	}
-	wg.Wait()
-}
-
- -

Accidentally shared variable

- -
-// ParallelWrite writes data to file1 and file2, returns the errors.
-func ParallelWrite(data []byte) chan error {
-	res := make(chan error, 2)
-	f1, err := os.Create("file1")
-	if err != nil {
-		res <- err
-	} else {
-		go func() {
-			// This err is shared with the main goroutine,
-			// so the write races with the write below.
-			_, err = f1.Write(data)
-			res <- err
-			f1.Close()
-		}()
-	}
-	f2, err := os.Create("file2") // The second conflicting write to err.
-	if err != nil {
-		res <- err
-	} else {
-		go func() {
-			_, err = f2.Write(data)
-			res <- err
-			f2.Close()
-		}()
-	}
-	return res
-}
-
- -

-The fix is to introduce new variables in the goroutines (note the use of :=): -

- -
-			...
-			_, err := f1.Write(data)
-			...
-			_, err := f2.Write(data)
-			...
-
- -

Unprotected global variable

- -

-If the following code is called from several goroutines, it leads to races on the service map. -Concurrent reads and writes of the same map are not safe: -

- -
-var service map[string]net.Addr
-
-func RegisterService(name string, addr net.Addr) {
-	service[name] = addr
-}
-
-func LookupService(name string) net.Addr {
-	return service[name]
-}
-
- -

-To make the code safe, protect the accesses with a mutex: -

- -
-var (
-	service   map[string]net.Addr
-	serviceMu sync.Mutex
-)
-
-func RegisterService(name string, addr net.Addr) {
-	serviceMu.Lock()
-	defer serviceMu.Unlock()
-	service[name] = addr
-}
-
-func LookupService(name string) net.Addr {
-	serviceMu.Lock()
-	defer serviceMu.Unlock()
-	return service[name]
-}
-
- -

Primitive unprotected variable

- -

-Data races can happen on variables of primitive types as well (bool, int, int64, etc.), -as in this example: -

- -
-type Watchdog struct{ last int64 }
-
-func (w *Watchdog) KeepAlive() {
-	w.last = time.Now().UnixNano() // First conflicting access.
-}
-
-func (w *Watchdog) Start() {
-	go func() {
-		for {
-			time.Sleep(time.Second)
-			// Second conflicting access.
-			if w.last < time.Now().Add(-10*time.Second).UnixNano() {
-				fmt.Println("No keepalives for 10 seconds. Dying.")
-				os.Exit(1)
-			}
-		}
-	}()
-}
-
- -

-Even such "innocent" data races can lead to hard-to-debug problems caused by -non-atomicity of the memory accesses, -interference with compiler optimizations, -or reordering issues accessing processor memory . -

- -

-A typical fix for this race is to use a channel or a mutex. -To preserve the lock-free behavior, one can also use the -sync/atomic package. -

- -
-type Watchdog struct{ last int64 }
-
-func (w *Watchdog) KeepAlive() {
-	atomic.StoreInt64(&w.last, time.Now().UnixNano())
-}
-
-func (w *Watchdog) Start() {
-	go func() {
-		for {
-			time.Sleep(time.Second)
-			if atomic.LoadInt64(&w.last) < time.Now().Add(-10*time.Second).UnixNano() {
-				fmt.Println("No keepalives for 10 seconds. Dying.")
-				os.Exit(1)
-			}
-		}
-	}()
-}
-
- -

Supported Systems

- -

-The race detector runs on darwin/amd64, linux/amd64, and windows/amd64. -

- -

Runtime Overhead

- -

-The cost of race detection varies by program, but for a typical program, memory -usage may increase by 5-10x and execution time by 2-20x. -

diff --git a/doc/articles/slice-1.png b/doc/articles/slice-1.png deleted file mode 100644 index ba465cf71849e590ecc4e614f423f7cc97d0d1b0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6334 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 diff --git a/doc/articles/slice-2.png b/doc/articles/slice-2.png deleted file mode 100644 index a57581e8cfcf706f8206d1d1069d976b7166816d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7220 zcmch6hdZ2K)a~eu&V)gfFa%L11R=VR86`wd^yr=FL>mdBccM!KL6oS`hv=P%8Z~+w zz4N{D{qA%Bf&1KN+B@f*nZ5Tq>+G}MeLko?e?|(X2ZKN$QY7N3ItYY~2VA!h;sfsq z929K82bPQaGg(l{z}+$O-Y%1q33dzI|bVQq!S8BY`VY zMV?@agcP5YO|Nvc7HFb#mDhEZbF{ZNcW?#Cy)id&H8*4Nuy(a#d4^O`(+MP_1%Vi% zkxykbJ*T$+czJ4#HHPdZQ^|r~aDCPf{e+TxLChN}O@Rv|>{3Hx6?@(xC?Nd(fjd|b@Xoas1F0^^fnQYmM3|EbP&>w5QFUTR)R-@Nk?hN>e;yk-LV)JrpH5*V~ zmw7veJKKd=J!bG%U7dThLY{1dm@2k@TVq;J%8o3AFWRB@DUE~z$qed7bCf))mzT?} zc1Tt(UBJDDMzY>hb|a$}8sEI#29!lZ9DE1zwWi55qYj)9ab%f_0E&zOhcw@&_x>jQ z0v}{e)tX3HSLBsD4Ui-?SGk@X(+k-SS6Ld>rMvL;>s4P5@6I)(S5$ za4pEr$u1Zx(vB0hrFXd&{iv1oZKAQ!@CyHMOC;dA<;mi^ynK4_ZBV-8c=Epc==$9L zRE3R0u6BzD=|hK_Vji0+HIl0bQl!xW5JVgaUO5vu?A7&ebqf{Wq{GTdyU9xDlj9X$ zz4(y|ey-JYrO4DO61+H=oJ?^DN*3?ztl_wab;K}L(R+#qh#gB!lrM@Vzvi=LGnVVx zNRZ7~5d&ad>SNoV2W36Z&Xt=fvh`71cD=o(dzX_u${FYf;VXLz3Sy3CxzqrPf*RgK zK)_R#yJnw}aa&xW?U^Xw$?w)|z?7K`9Cq{Q)tQ|fw~NJd6(f$wbtN7d?R*Xu)NnwW0}r zKPD~aM5i{r5(jj?Hj*qOti4-+bBLdZJx#<{u1tv2>S_#%F^)&ZIrB@ayac=ILguO3Sd5*axaWXb91LuT zDF3k{5NvD=jxz252~MjM>LJkw6J1>d9DhM(-Zf1LAXZqg9f~WepD6Ef)V-9kAvg)K z643^HMn*09zi=q~jIFRM&F17&OWIgfZmpT|nC`Nw=n>L9tz!;gJfODs@eyQ8 zNx(_c39H@mff-1njp?1+b&AqR;D<9Ay%0wC$N5!u)E{wP2{qXy49rDf+PpEn7#fefB;1)7*mE>fPG@Jm!tp$0g^;{X(g-5 zL2IWsMX^s=QZ_<^KON1|t;QlRduyMo5iuG8XA%D(p9-vw+^#MxCcG(1{nt<=oFhjV z4e4aZHKpiKZ*aO@S-H?8(itS&Cr1<>oc;T$+`Kp72r#LDpR63zPPo}ghv`Uwz}0d8QY$<2@QnOQUX)Me zFplK_Ame&dO`YJdLw(Ew`E3yT8K6Y7>Hl^JRF~x=Mjzt3(I!#qE7raPev`h)c^lDF zAfhB(H>iSo17eiw7-B6p`5%bk#$iiMVUHT0!Ta|(0Q_%9D-5%$Sl*750HAbb|1S>H zhwb5yR9>sb=5?0e0xQ#A>Hde_fytNG($%4ZKTRat?ZW8IcBBsGtdNJ{nUoe_6Ig9u z?pRL+02n4}a86WZ>2ZBMzI?evjI>R;cf zxH%JO7F!wLkNJr??5K2ijW;&x0)JFrsZH|K^^Y6pb=gai|*8s$^7GNqYvX5)U$)4ajFLe+0+yYlRUs_%m!zw4K(H+(?^x`RJUl)FYkKo9<*K%6V-`fNy0c;;^pC_wzBfp zzZ_j^1U%Q;d2X7`#hrFN#WE(x1h?I$y+t2fzn!=RbT9jVLJE8@YdOz{Dm6$#d^-L<~J}>f+8dY z&eE?=l~ymv?wah%SwH{E$(wOB2`*{e12?^@NZs@InkvUFUlKscqdpaa(E&d>NfqrV z&`bLKsEfPpOEXxW3C11jKi;F_h@p4fuU2U%t22$CA30@f#TtFDI60WTsPA)rDsQ#? z%S-TVslc{Cr&N+(@=5ekl>K7X$V4p2sXM?0Iw3_rIe$f70rhUvjVjg&f1*HUVRD{! zxtUlq5mVuH;zG}y_VnVfQT)hPAvc>FR*vI(mq9cHvSqe^+WS>!6@$3DY5S~MdWE3q z$KM8F67f>EM+3Xj&9B$Gy6?U$r5U{0F6p{tt;dX{y{z$DlDxT2Hs`cLs^xyMq6%!R zpYOm93e1t#F}@#Dmvv%@mkxS_-Bb`tdbM-W`@`?2F}<*OSockeT))w;{Xr`d8&^$V zvC0b-*s%~FUkYb}S`~K?{;|bS%Ph!@r~mKzs)eBG@$2u}B^^UCbuD?=BsFguxbF zuhWqD`6&)$i)TKZUn>7LQ?-6QI<7;Ov;1%q%zWz!vz1aY?KmKJ8b14jC^n3Y`0`O- z=#p;WVDW64(Bl4GO~;0h3zNB4SNoww%B4Ho>tl@)KfI<>L|4r@R5Jz} z-j{ASvBQ3j*63KCAMZR>%>NC8{hW4Ee=3Vk#9bmhr-*p&hXp0NtWQ{V;N5rYJ|YUH zaYqI3140%Uq`;}1b)}o=lyEFgy=JQlbqmF1Gs#WGp7DxZN)5RZuc7Q1i%3`>(=n|@$tk)0F0)@OpJ@t~y_hLRR{9Iyi?(9Op zO%=^xx2A?l=1M*LT_pdzXKcp(#K?N2n4EXos84Pw>;6SisXd$vTLNzq*OWw^C`n}C zgaR=fKT}6XK6^l*?Vr%on#{BmhqW4`+eqJ=p2VEVT8Q6(8hu<@?%m6LzwRiow(+E3 z4)$L1s?@Tl^2~1TIwO)Jadj|Ph2<+N0ujnD-0s{{iKm>I)Un9!c)K(#`V5s{AKBc_ zh!Xx`w(q{9JAWDM>!lAEww`@U$X>pkcGSn{^7GG{9e;cnyT7Hyrqx6uHPqKyw}4bWT-~wU&bL1(IC})ag&C(h^ zyW-%|mvkiwr)dW8IEEm?P=JEWyL6F^&&y2$d>Ah=5Kh_Ripk}?rR+Fqqg9rCDj4jJ zjTw3;Z}#mCeh`2Ngh(FHr3Qx{!Q_(~SH3gvV6LJSdH;;2Ot|&ykM%w3wN8QMS-Xkg`{E z?{NFtma0(OWFamZ>Ut#zjF-vk?GRl4Vs1CLmxbfqoUZcY@9J))iB^v2keZZyH|5Ls zV}iDzx$*H=>pq6{ML$o>b41H#+P*Mz=h)ow{&E>+$kog$;z%&6K4&sgDWcnONNv&A zYu3@AOjV@w#bew;|8QE{RZ;RoZS9DZ?Vqz`P04{*o#Cqb$k#`O!X;Z=YG#iLrEiky zTAnabU1@$8D-tL(vZYaG8kkx(rSrJ(f@S?qnQ35DPCdpqAh>*g-tTCP3AOC@6fBys zJvi_X@LJL9Q@ROA`m?jRRO}{P0I2tuiHdK(^ONAYgo|r`{dvHh=|^M z*i|Nzp(}8OFX?+k)-m%dJYMyZ`Hk@M{;8BpK@@lU}5-mv`KCsZsv(OG$qiTgi@M+j%pK&$dN}c!J^q zpXr)MJ9WEZh52Uly7L~J_#=~8(gHC1N+;xP(}tkJte=4y*;*2B+G}#zok zAM10#b_;C_{yc7Wc9(4wfh3kTcIS(?GqT;~;14Z`dGTzlG8#{sTDD7(T;}4Jqp(yV zmBk&Y<9kc}JegOk3=NMj7=;~XeX3>s(9eUT{Q~>Qzk9ve+C3Jfkr99-M7Dv1?Q{pj zM>*s-vV%XLa_a=Bl~H?AK4zG}%Ee*};3uD#$RzNFoZ(0kt`T0+dqQjR)(DjO_ETM2 zFJ4}F?c%a9TD>rv1|(jKwY1`?f3jcY-%W%8te(%?so$fCCv&kA(Ov0B_rSUhoR!JblE=APJVB>G@w%y>{w zt5jZN(_kl9N7L^rBe8PJop$s-Szdc-RQ0eKCnvuOJ!7xYwW}jwxyZ5c1r$t{*Q(~^ z10|`(ItmzWxzm!-vU_~M^uIC@tWU%PI;YTAfRfKp9Lx5xr{GW0On@62vQ8xV8=5Ij z#V^n0=BZFhOtf@hO`10c?r{FA7JP_B>7TxjS4{JJKKStYns0XEbYO^}O~QA3QuNXJ z1H!u1llzTkvqZZLAt&S@9UOlWIrQYhSvvlfqtHi=g{vN4alfz-HS>G6W8)+nS<2g~ z9|#UF-xX?g@lPNfX353{VsfM(mX_7^Q4(Nge0d!bm}g7xukA3CRlXiP4Vomt%w8}I zyS)ohG|vHu!NlYeNSY%T+-9J~^gG1=S2TCIgtb)GP`J&@#S5~9t9<$DNOow;W5}8! z{4x9pH0z_~ITt!I{sPXU1l+5d=Q%X4%ZHd8bj_@(sfi|d$jWF^PPn^hy7_4yqkCH(EsaKs&m)ft# zpX2iLCG))Cyee)GN%NC{liE1rZ>VkDWHu%;AChZ>MK3+2^&CzcD0(^UZMM_j-y$X~ zP+I)=Z;h#CGTx1rd&a?hz_|j6q$HP=r4Q;drEhRN{iZS3)Y+9kjN-YPl4NrFTdEdr zt0zPEw%{ndSO?PP<~fd7U>hN88qp>d9~!^ZmFH(L!&dcz!q)Shl>^DNCUKXD|LyUm zRySzHkebsMrFu1fpP%Uf#etCYxPyxuz0&u_{XsU;CvcXZ5gN~><^+|1KB~WVGq2eY zw>1HdgFkm3NouQH<@%)(M2l2Jer|l8YE6mQerJG%QdL;>Hh0in6!2tC!vA&w` zfxFb}L$(M;!HAhErM2;V!J5nUhYVVPD`JpHCTBb%qP_IV61<94^R3xTK;T!b@)60R zFLgvOimSggU4QwNEV};AG!&2^fSmN=Ix=U_Qvczs_(?PBI^WM8w767MW_=)1U*lmn z7dL0%_kcmfx9$5fv$MkV%9kcTxdDs9Uv^a&7d?sndqA0C>@M(h8AT_J?_CeqD?%%-vt@B>Q^z&%tW`METN_ zm77gB?~^sPt#Up_)z!UbmFdk9ndKg-X$j79z2xe*r+bR~2gE6-eacg=O}`WpfyxM( zJmYjtu5-m~L>4@;Ug4%`!jvmR?;z{uuZw%KaC^0fDw1P8cLy}%zv@)NEE;8VG_^l; zy6UyR5G!1m`^GdYSMxd8lHzb}s^nK^w2db$|B-#)F!CteK1IV-*F4IVbMVH%6o zG4u^#2qCY02-AWZN^-I>2(Jv8&U+P4V~%$0mFE1yzc@CxfA*MFZDwk;hixa-NVX{e zmSl>(G2NZIH4C<4)e=D-v`q@Xi+brKt>7RJseMZZ1VHG}FwyW4Q0;D#l(Shz-Q7%2 zsDCXh)V}GAfp`WH$1TavoDh4Xhp{QYWm&7y^))VN)qT?%=e88~!u5=F9PZ-B4QkY= za~TgE77l}bZ9UkR5k=Sx#VkcjMA=B)hzhRe?|0TavNdP71jho^Jqn>3vgTO5kh!iJ zuOIsEf5t9Nryv_+CB2by!IO_eYWq&KF^4V{Y~`g7zBl2rh&bw*9n%?)4;X-ym3%{{ zgs9od2REC@!raXL%2M-<^ywoHe3s7i^ZeuYetpkR>QOhb3a z<4P4=dYliG)4S9Gj*1t{lx-WJs(@&=%E7&s?v{%d56Y=sBW#9Ny@ZCQ(kyE^89M8! zJy&77K9hAN;>SB{rtXe6Fk3tj>840oESdd}7PT}Pbsm>&6S{Txm6xEIBMi=8yD0>E z09*2ApI9NXkvgDB!g~@CmkaLCL+m!R4qdz-4rxCYl?b9bBhBGri)0}Lpeg!UmZ zuq%qh*Pe5W0j}95xY4#8L!F~~{~d<`K^;jUR^Af){BrzNt+sQ&@+ C@0>UQ diff --git a/doc/articles/slice-3.png b/doc/articles/slice-3.png deleted file mode 100644 index 64ece5e877dff6d486a7c97333909c403f34a7d4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7303 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 diff --git a/doc/articles/slice-struct.png b/doc/articles/slice-struct.png deleted file mode 100644 index f9141fc5920ab001dbdfd66bd338e8829d411917..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3650 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 - -

-Go's slice type provides a convenient and efficient means of working with -sequences of typed data. Slices are analogous to arrays in other languages, but -have some unusual properties. This article will look at what slices are and how -they are used. -

- -

-Arrays -

- -

-The slice type is an abstraction built on top of Go's array type, and so to -understand slices we must first understand arrays. -

- -

-An array type definition specifies a length and an element type. For example, -the type [4]int represents an array of four integers. An array's -size is fixed; its length is part of its type ([4]int and -[5]int are distinct, incompatible types). Arrays can be indexed in -the usual way, so the expression s[n] accesses the nth -element, starting from zero. -

- -
-var a [4]int
-a[0] = 1
-i := a[0]
-// i == 1
-
- -

-Arrays do not need to be initialized explicitly; the zero value of an array is -a ready-to-use array whose elements are themselves zeroed: -

- -
-// a[2] == 0, the zero value of the int type
-
- -

-The in-memory representation of [4]int is just four integer values laid out sequentially: -

- -

- -

- -

-Go's arrays are values. An array variable denotes the entire array; it is not a -pointer to the first array element (as would be the case in C). This means -that when you assign or pass around an array value you will make a copy of its -contents. (To avoid the copy you could pass a pointer to the array, but -then that's a pointer to an array, not an array.) One way to think about arrays -is as a sort of struct but with indexed rather than named fields: a fixed-size -composite value. -

- -

-An array literal can be specified like so: -

- -
-b := [2]string{"Penn", "Teller"}
-
- -

-Or, you can have the compiler count the array elements for you: -

- -
-b := [...]string{"Penn", "Teller"}
-
- -

-In both cases, the type of b is [2]string. -

- -

-Slices -

- -

-Arrays have their place, but they're a bit inflexible, so you don't see them -too often in Go code. Slices, though, are everywhere. They build on arrays to -provide great power and convenience. -

- -

-The type specification for a slice is []T, where T is -the type of the elements of the slice. Unlike an array type, a slice type has -no specified length. -

- -

-A slice literal is declared just like an array literal, except you leave out -the element count: -

- -
-letters := []string{"a", "b", "c", "d"}
-
- -

-A slice can be created with the built-in function called make, -which has the signature, -

- -
-func make([]T, len, cap) []T
-
- -

-where T stands for the element type of the slice to be created. The -make function takes a type, a length, and an optional capacity. -When called, make allocates an array and returns a slice that -refers to that array. -

- -
-var s []byte
-s = make([]byte, 5, 5)
-// s == []byte{0, 0, 0, 0, 0}
-
- -

-When the capacity argument is omitted, it defaults to the specified length. -Here's a more succinct version of the same code: -

- -
-s := make([]byte, 5)
-
- -

-The length and capacity of a slice can be inspected using the built-in -len and cap functions. -

- -
-len(s) == 5
-cap(s) == 5
-
- -

-The next two sections discuss the relationship between length and capacity. -

- -

-The zero value of a slice is nil. The len and -cap functions will both return 0 for a nil slice. -

- -

-A slice can also be formed by "slicing" an existing slice or array. Slicing is -done by specifying a half-open range with two indices separated by a colon. For -example, the expression b[1:4] creates a slice including elements -1 through 3 of b (the indices of the resulting slice will be 0 -through 2). -

- -
-b := []byte{'g', 'o', 'l', 'a', 'n', 'g'}
-// b[1:4] == []byte{'o', 'l', 'a'}, sharing the same storage as b
-
- -

-The start and end indices of a slice expression are optional; they default to zero and the slice's length respectively: -

- -
-// b[:2] == []byte{'g', 'o'}
-// b[2:] == []byte{'l', 'a', 'n', 'g'}
-// b[:] == b
-
- -

-This is also the syntax to create a slice given an array: -

- -
-x := [3]string{"Лайка", "Белка", "Стрелка"}
-s := x[:] // a slice referencing the storage of x
-
- -

-Slice internals -

- -

-A slice is a descriptor of an array segment. It consists of a pointer to the -array, the length of the segment, and its capacity (the maximum length of the -segment). -

- -

- -

- -

-Our variable s, created earlier by make([]byte, 5), -is structured like this: -

- -

- -

- -

-The length is the number of elements referred to by the slice. The capacity is -the number of elements in the underlying array (beginning at the element -referred to by the slice pointer). The distinction between length and capacity -will be made clear as we walk through the next few examples. -

- -

-As we slice s, observe the changes in the slice data structure and -their relation to the underlying array: -

- -
-s = s[2:4]
-
- -

- -

- -

-Slicing does not copy the slice's data. It creates a new slice value that -points to the original array. This makes slice operations as efficient as -manipulating array indices. Therefore, modifying the elements (not the -slice itself) of a re-slice modifies the elements of the original slice: -

- -
-d := []byte{'r', 'o', 'a', 'd'}
-e := d[2:] 
-// e == []byte{'a', 'd'}
-e[1] = 'm'
-// e == []byte{'a', 'm'}
-// d == []byte{'r', 'o', 'a', 'm'}
-
- -

-Earlier we sliced s to a length shorter than its capacity. We can -grow s to its capacity by slicing it again: -

- -
-s = s[:cap(s)]
-
- -

- -

- -

-A slice cannot be grown beyond its capacity. Attempting to do so will cause a -runtime panic, just as when indexing outside the bounds of a slice or array. -Similarly, slices cannot be re-sliced below zero to access earlier elements in -the array. -

- -

-Growing slices (the copy and append functions) -

- -

-To increase the capacity of a slice one must create a new, larger slice and -copy the contents of the original slice into it. This technique is how dynamic -array implementations from other languages work behind the scenes. The next -example doubles the capacity of s by making a new slice, -t, copying the contents of s into t, and -then assigning the slice value t to s: -

- -
-t := make([]byte, len(s), (cap(s)+1)*2) // +1 in case cap(s) == 0
-for i := range s {
-        t[i] = s[i]
-}
-s = t
-
- -

-The looping piece of this common operation is made easier by the built-in copy -function. As the name suggests, copy copies data from a source slice to a -destination slice. It returns the number of elements copied. -

- -
-func copy(dst, src []T) int
-
- -

-The copy function supports copying between slices of different -lengths (it will copy only up to the smaller number of elements). In addition, -copy can handle source and destination slices that share the same -underlying array, handling overlapping slices correctly. -

- -

-Using copy, we can simplify the code snippet above: -

- -
-t := make([]byte, len(s), (cap(s)+1)*2)
-copy(t, s)
-s = t
-
- -

-A common operation is to append data to the end of a slice. This function -appends byte elements to a slice of bytes, growing the slice if necessary, and -returns the updated slice value: -

- -{{code "/doc/progs/slices.go" `/AppendByte/` `/STOP/`}} - -

-One could use AppendByte like this: -

- -
-p := []byte{2, 3, 5}
-p = AppendByte(p, 7, 11, 13)
-// p == []byte{2, 3, 5, 7, 11, 13}
-
- -

-Functions like AppendByte are useful because they offer complete -control over the way the slice is grown. Depending on the characteristics of -the program, it may be desirable to allocate in smaller or larger chunks, or to -put a ceiling on the size of a reallocation. -

- -

-But most programs don't need complete control, so Go provides a built-in -append function that's good for most purposes; it has the -signature -

- -
-func append(s []T, x ...T) []T 
-
- -

-The append function appends the elements x to the end -of the slice s, and grows the slice if a greater capacity is -needed. -

- -
-a := make([]int, 1)
-// a == []int{0}
-a = append(a, 1, 2, 3)
-// a == []int{0, 1, 2, 3}
-
- -

-To append one slice to another, use ... to expand the second -argument to a list of arguments. -

- -
-a := []string{"John", "Paul"}
-b := []string{"George", "Ringo", "Pete"}
-a = append(a, b...) // equivalent to "append(a, b[0], b[1], b[2])"
-// a == []string{"John", "Paul", "George", "Ringo", "Pete"}
-
- -

-Since the zero value of a slice (nil) acts like a zero-length -slice, you can declare a slice variable and then append to it in a loop: -

- -{{code "/doc/progs/slices.go" `/Filter/` `/STOP/`}} - -

-A possible "gotcha" -

- -

-As mentioned earlier, re-slicing a slice doesn't make a copy of the underlying -array. The full array will be kept in memory until it is no longer referenced. -Occasionally this can cause the program to hold all the data in memory when -only a small piece of it is needed. -

- -

-For example, this FindDigits function loads a file into memory and -searches it for the first group of consecutive numeric digits, returning them -as a new slice. -

- -{{code "/doc/progs/slices.go" `/digit/` `/STOP/`}} - -

-This code behaves as advertised, but the returned []byte points -into an array containing the entire file. Since the slice references the -original array, as long as the slice is kept around the garbage collector can't -release the array; the few useful bytes of the file keep the entire contents in -memory. -

- -

-To fix this problem one can copy the interesting data to a new slice before -returning it: -

- -{{code "/doc/progs/slices.go" `/CopyDigits/` `/STOP/`}} - -

-A more concise version of this function could be constructed by using -append. This is left as an exercise for the reader. -

- -

-Further Reading -

- -

-Effective Go contains an -in-depth treatment of slices -and arrays, -and the Go language specification -defines slices and their -associated -helper -functions. -

diff --git a/doc/cmd.html b/doc/cmd.html index ac54923d43..b8bdcdadec 100644 --- a/doc/cmd.html +++ b/doc/cmd.html @@ -27,9 +27,9 @@ the go tool subcommand.

-Finally, two of the commands, fmt and doc, are also -installed as regular binaries called gofmt and godoc -because they are so often referenced. +Finally the fmt and godoc commands are installed +as regular binaries called gofmt and godoc because +they are so often referenced.

@@ -62,17 +62,17 @@ details. -fix +cover      -Fix finds Go programs that use old features of the language and libraries -and rewrites them to use newer ones. +Cover is a program for creating and analyzing the coverage profiles +generated by "go test -coverprofile". -doc +fix      -Doc extracts and generates documentation for Go packages, it is also available as -an independent godoc command with more general options. +Fix finds Go programs that use old features of the language and libraries +and rewrites them to use newer ones. @@ -83,7 +83,13 @@ gofmt command with more general options. -vet +godoc +     +Godoc extracts and generates documentation for Go packages. + + + +vet      Vet examines Go source code and reports suspicious constructs, such as Printf calls whose arguments do not align with the format string. diff --git a/doc/contrib.html b/doc/contrib.html index a9f12f93f0..5d4d409893 100644 --- a/doc/contrib.html +++ b/doc/contrib.html @@ -26,14 +26,41 @@ We encourage all Go users to subscribe to golang-announce.

-

Developer Resources

-

Source Code

-

Check out the Go source code.

+

Version history

Release History

A summary of the changes between Go releases.

+

Go 1 Release Notes

+

+A guide for updating your code to work with Go 1. +

+ +

Go 1.1 Release Notes

+

+A list of significant changes in Go 1.1, with instructions for updating your +code where necessary. +

+ +

Go 1.2 Release Notes

+

+A list of significant changes in Go 1.2, with instructions for updating your +code where necessary. +

+ +

Go 1 and the Future of Go Programs

+

+What Go 1 defines and the backwards-compatibility guarantees one can expect as +Go 1 matures. +

+ + +

Developer Resources

+ +

Source Code

+

Check out the Go source code.

+

Developer Mailing List

The golang-dev mailing list is for discussing and reviewing code for the Go project.

@@ -80,29 +107,3 @@ open issues that interest you. Those labeled HelpWanted are particularly in need of outside help.

- - -

The Go Community

- -

Go Nuts Mailing List

-

The golang-nuts -mailing list is for general Go discussion.

- -

Go Wiki Projects Page

-

A list of external Go projects including programs and libraries.

- -

Go IRC Channel

-

#go-nuts on irc.freenode.net is the official Go IRC channel.

- -

The Go+ community

-

The Google+ community for Go enthusiasts.

- -

The Go Programming Language at Google+

-

The Go project's Google+ page.

- -

@go_nuts at Twitter

-

The Go project's official Twitter account.

- -

The Go Blog

-

The official blog of the Go project, featuring news and in-depth articles by -the Go team and guests.

diff --git a/doc/docs.html b/doc/docs.html index 32ce1d63bc..7aad8dadf4 100644 --- a/doc/docs.html +++ b/doc/docs.html @@ -58,49 +58,47 @@ A must read for any new Go programmer. It augments the tour and the language specification, both of which should be read first.

-

Go References

-

Language specification, memory model, and detailed documentation for the commands and packages.

- -

Getting Started with Go on App Engine

+

Frequently Asked Questions (FAQ)

-How to develop and deploy a simple Go project with -Google App Engine. +Answers to common questions about Go.

-

Frequently Asked Questions (FAQ)

+

The Go Wiki

+

A wiki maintained by the Go community.

+ +

More

-Answers to common questions about Go. +See the Learn page at the Wiki +for more Go learning resources.

-

Go Language Community Wiki

-

A wiki maintained by the Go community.

-

Go version 1

+

References

-

Go 1 Release Notes

+

Package Documentation

-A guide for updating your code to work with Go 1. +The documentation for the Go standard library.

-

Go 1.1 Release Notes

+

Command Documentation

-A list of significant changes in Go 1.1, with instructions for updating your -code where necessary. +The documentation for the Go tools.

-

Go 1.2 Release Notes

+

Language Specification

-A list of significant changes in Go 1.2, with instructions for updating your -code where necessary. +The official Go Language specification.

-

Go 1 and the Future of Go Programs

+

The Go Memory Model

-What Go 1 defines and the backwards-compatibility guarantees one can expect as -Go 1 matures. +A document that specifies the conditions under which reads of a variable in +one goroutine can be guaranteed to observe values produced by writes to the +same variable in a different goroutine.

-

Go Articles

+ +

Articles

The Go Blog

The official blog of the Go project, featuring news and in-depth articles by @@ -119,44 +117,46 @@ Guided tours of Go programs.

Language

Packages

Tools

+

More

+

+See the Articles page at the +Wiki for more Go articles. +

+ +

Talks

-

-The talks marked with a red asterisk (*) were written -before Go 1 and contain some examples that are no longer correct, but they are -still of value. -

-

A Video Tour of Go

Three things that make Go fast, fun, and productive: @@ -164,63 +164,31 @@ interfaces, reflection, and concurrency. Builds a toy web crawler to demonstrate these.

-

Go Concurrency Patterns

+

Code that grows with grace

-Concurrency is the key to designing high performance network services. Go's concurrency primitives (goroutines and channels) provide a simple and efficient means of expressing concurrent execution. In this talk we see how tricky concurrency problems can be solved gracefully with simple Go code. -

- -

Meet the Go team

-

-A panel discussion with David Symonds, Robert Griesemer, Rob Pike, Ken Thompson, Andrew Gerrand, and Brad Fitzpatrick. +One of Go's key design goals is code adaptability; that it should be easy to take a simple design and build upon it in a clean and natural way. In this talk Andrew Gerrand describes a simple "chat roulette" server that matches pairs of incoming TCP connections, and then use Go's concurrency mechanisms, interfaces, and standard library to extend it with a web interface and other features. While the function of the program changes dramatically, Go's flexibility preserves the original design as it grows.

-

Writing Web Apps in Go*

+

Go Concurrency Patterns

-A talk by Rob Pike and Andrew Gerrand presented at Google I/O 2011. -It walks through the construction and deployment of a simple web application -and unveils the Go runtime for App Engine. -See the presentation slides. +Concurrency is the key to designing high performance network services. Go's concurrency primitives (goroutines and channels) provide a simple and efficient means of expressing concurrent execution. In this talk we see how tricky concurrency problems can be solved gracefully with simple Go code.

-

Go Programming*

+

Advanced Go Concurrency Patterns

-A presentation delivered by Rob Pike and Russ Cox at Google I/O 2010. It -illustrates how programming in Go differs from other languages through a set of -examples demonstrating features particular to Go. These include concurrency, -embedded types, methods on any type, and program construction using interfaces. +This talk expands on the Go Concurrency Patterns talk to dive deeper into Go's concurrency primitives.

More

-See the GoTalks -page at the Go Wiki for -more Go talks. +See the Go Talks site and wiki page for more Go talks.

+

Non-English Documentation

-See the NonEnglish page -at the Go Wiki for localized +See the NonEnglish page +at the Wiki for localized documentation.

- -

The Go Community

- - - -

Go Nuts Mailing List

-

The golang-nuts -mailing list is for general Go discussion.

- -

Go Wiki Projects Page

-

A list of external Go projects including programs and libraries.

- -

Go IRC Channel

-

#go-nuts on irc.freenode.net is the official Go IRC channel.

- -

The Go Programming Language at Google+

-

The Go project's Google+ page.

- -

@go_nuts at Twitter

-

The Go project's official Twitter account.

diff --git a/doc/go1.html b/doc/go1.html index 2687827c0e..3bbe5d3168 100644 --- a/doc/go1.html +++ b/doc/go1.html @@ -1,5 +1,6 @@ diff --git a/doc/go1compat.html b/doc/go1compat.html index 1dfd382c23..7ca3d355d6 100644 --- a/doc/go1compat.html +++ b/doc/go1compat.html @@ -1,5 +1,6 @@

Introduction

diff --git a/doc/go_faq.html b/doc/go_faq.html index 38a0aa0702..4f0832aa88 100644 --- a/doc/go_faq.html +++ b/doc/go_faq.html @@ -1,5 +1,5 @@ diff --git a/doc/go_mem.html b/doc/go_mem.html index 3e769daeca..d2cbd3eacc 100644 --- a/doc/go_mem.html +++ b/doc/go_mem.html @@ -1,7 +1,7 @@

!lEX|ri?{t> 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 diff --git a/doc/articles/image-2e.png b/doc/articles/image-2e.png deleted file mode 100644 index 483b208e3a558ce5f1f59b64a6de802f1f63e620..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 96721 zcmV)gK%~EkP)IbsmPFdA##|W51#20o{$U0W<&-5ID*bC5oiwpNc!2KzgYtnX2Y_`@4$49K zz?1{PIw%L_pnPD;0bm`JgK|(lFy#QS4$46}C?A+|09Xg*pd6GBOgR9ogK|&~$_J(> z`*Rxc2md@+Pkm7Kr5yCDgYtvrfMFe!gK|(lFlC<@)(@2*nivnt2dLc7EasqJeQ?V@ z^{XEVVEsl_lodgdr998_OvrQkha!qXmKLAEaUl^TSrBDG7K-DtB*?0i#Tk8^eFa~{ zxA+UGtSp_4of9X?GC|Sl)S{FNvMAu1W#fqWh41b;1Aifwb>P*&8Tc0@gB>X^%_~gb z^4aAis-!5D|L_(&8y&nXx?m85O zBo{PUP!k~r&BfW+N$7Iy`Zzy7EmaJcQ|Md8y+uV+q%l!syd_FvmgJ%?CP9w+NUESH zVwTctd>qe$eo2BvCq;$XE#g8E)tOqpd^-QYxu4-m_{!%W!cRPE{--SF2|Ab{#JCT; zSwDBN{rHbd^QVKHo_v-|i6Fq|@zo`hz6G=*=WaG7Q}`b=^>FwMw(utm}%d>$nhF317qqe(lGO z?pGi9(J-uBNC8FyjW!H9MVHY(Xw0J%vB5*5MJj$4n8LIvKAcAQ5PQw=h!>6#Nm3vM z2MfH5=Z?Y5Cf*$VI73Ipe;j4l$JiTe{PUBP_*Ebp9mO!Fg9Kab^ZZYC6UApR;1g6o zVKv8TaYY@M78OOJJ3^h)3?P`M47^f;%~Z?*B80_?D65lJ0f5tm2&UO-sU|orjR{s0 z>g=rY?B412Sqo52@I`(Sv?tDhd&hTKL*a!)mqYs$*%)!QjA1_AGT|M^X&N)d?eq3Q z1u&r4gD9TG{asLhJZ1h9f4Ug(QW^ms%%=UoW0eaZ%?=%R@qqxCO^rgcm?&z3f@4x9 z1sPgNQ6(jp6^vdyEHBQYIMP&%YdlZZ{n9j!@k2^7(Wv5kVw&ek5(Bd^@GxEyKAGY; zO;94RPsO;*geXnIAl7UJe*rQ8ABv_%s2zYX!=u3npa)o>E&2^wT&4a;l|+^Bot!>{ zYdcXSYjP%|o^p`H39g3Qk)_y)RY|oK8;{gfOgY8mBd7*2i_VDZQQt%*bE>MMD262A zgdw{h-ZKcu>9b*)CsK;Wu$GRWdg$VZ!~WpJ($c957aCLT_RKu4J94}%OEejCK`zNU zATJBz;n?Z+`d$!?oN*k+l0suo*R@K;GA+Gone}?zwk;K{O>I?T^uCsT0<2u8MuPV5M^TRkl+F5xO7~i9?k=dW0Z<6hqv}Z6+XazGLT^~ z%CC=01E$ee@h%t^j)hYO%DKUPphv;(*tt2xK(l6TUb$_(XsKfWIUtL#@_`nmJ$ z_YY`740TPB(p)p=4mZy~D=a)T%#}2bQ~*=)MS>`_DaJD4f{YJi@KR%IngN;x9Puy> zrr=n)is2`NGl92Zy1|&IPJpM0hNjsTy*C4$5Ha>~Qd}Fy@C&dPGsX&b#-1B6LNImB zv?@3o$gCvFAt(=6UXlPtBvKvJ8SoVeC`r>KIxhXgX#spVTSVjw*P`hTB$=^f9FGJ| z15^Wkh$DkE;^eH}8UYmHI4}?I(TPOSFbr_`FbvTkVHBivb=OE*G;qBj7Kg)Ol%%7vGaQZs+-ibLDymLcjRpht zv~;ajt=N_+)A$$BWT+3d^&UpNFJ+$@7Ks#`R3!jH2jEjTr&mz#>wLkPIU!%5o2fA z$B%pv3SkecYeh1HI8d8YwG$VNnNzM{V4buiw$RTNH#AEzo z(8>5OiNlAL#}lPJ*Tj z1J8%l#aZG!m1O8d%r#JxVgy~BB$`H5X96QllNi`Vz(nH_fC9QkX94LWz`{4P5adl2 zCDd5g&BMpqQ2?PV1PRcPI)tbK3Bf(HAdEf74~3-DABJHJLF$Jwo83W3fC|QAwbbbzPcnyI@^Gu0TT=FnjWTY3pG|$ngX=)fr9B5r^F% z=5UTM{C`s}k~yPd|Fr6^(qm|=8-?v?#6Y=ZbssLO(;t8tw8 zQ5KT&qsa~0h*%7<20#EIS)L{s!?L7`D*73|i$_8BA2bor4uq9GT1K_NQwWSQa2X&M zU<)h=XoUyqLn6}X6{1YUFTzNYc7P;4Pf!=ZGht+zj9sJ$nZ*DnRAfz6bVXFa`xNwM zNv_&vKr%D~<^a?@-@!>Lb`4OKWdUy=1(=1pN6@=~6-O zP*Kb^;{WVQB7`t zjc)X^ygaut743$p6L*R;&}iaDcWypI7hwvtRIfz1*q8ZqhhA1R4imfuGVWe%A3MU2 zr2G(I1(|3cJ6}2XTr_T4qc9D5IbQE6^W4pq(c*?fFd$b1%L_m0=f$ZiKrCNXZe&$^})@RaFQ6#$i;|OyB^nq6>0WOb6qU z>$-#fXlrW=AD*6`ZZsORb8WyDP{}qe%Z3&-6fi?s_I=R#T+>0d6b{}Huw>7|6`+pe z1j7ch(TiQO!X+7`UJ!*o)GP2eN^rx#<~Ru5z;!&I_dPVOPTmJdOHHZ@t#+ecuLBn? zO$EtQ$POz*eDeOrNbEiv8ul5m(1^@NP%t1q>|>AFmHF7?u*Hyw*g>iI3M66h1YJo@ z!$)K3i6djPR(zgIOJ@8+2O^shheGNh{6g$wP-ApT$Z$^@mcZo|eV)LnG>S7oLfDW8OJ!P5fDuC^>Zs;Yr*aV!TAZ4bQAMiZT%+9D^ z!R+?8AMAJeixV|*SW{no@Ird{%w~#K$TSiBCfAKB*>_ms!zLr!0S#9L$OF*`q7D=i zWayU&oefVV7a(UaQG!m86HUApphF z1WJk9i8SsVlT|s21M0l!W<=BIDF6;of8rs)RFa&eQR^dMXj$E6fon@y*M;8j!^T$f^SAd*)7~pk_w@K=gD1!7z5M}u^{VQS_*j#ep=Z1ARkj4F7Fh;#2jDLN~%s5 z4Si@mddrPd%@EK_&}^C|IDNsaXR0cUy8;(EX6@5zr4)h&H%+nbrQZ9|Kb5Yv{3ff*%9=w~?~ zFI7@g6tp<-4PB38hisH;B}xH!ny4{jl_&=xl%SPI5e|W@5UEi_Fg9v!J_NcjdsIym!>vUS5pr^S5pN|PQok-mH4Kksc9N3s@ACCSty!fS)wf`Q>|H0K?O3L z`EAIgB}wFbh2%ts6*EoBXg1wzkp6#N_P>+za3pS=E=N zHADA`+(LG81+CU?U9#C|>!cL-4KOwYCAUJ}I+81x*r$)S5 z2JCrWZYe6nUN9bg>w7PL_uDVM`_`M|;V6zGG4>mEJGZh?PaH&Hf4dU}v8CJIzym_z zfqNc6Qa^j)!jU8Az;uqxwjGb6!+;bks~ao#)&|{mcdU1ORn$z$vU1&&4CBzDnWe>f zNl0X~K5`u23ni%NI3Y3x!k8qA5!~BeTdeDI&8i%^x++%p$;F5xA*f^$H zmToZ0l9mum=|kH+-R(*m33* z<9H+m#5HJkWDx^+(5itMiJ~GIO=BW!5B6c)?kZ)PN=qWfRcGmCqXW#dR(RPsDreG#9Uez?j462D)5;`mQhgu^n$U~rHmvll5!9&B=7dkMLHP^D;FDKhHHq0{E+C%xI(u_O;1 z$4TTwjAL-0I5aWN3N1pxDCG9T&{CKISP;oB%;*5UE95$OD;Y`!SB#^WTy!kL0j;e_ zqGD*F-8!DC8j75d>ddWsxo;DU9c4T8X44M5R5dUC@=Cef@+Ybj7N2iL)Eek z+cbnM$`W6QBST0rD|heS{Ki|~d-L`0Tzl_L5JM$Rp;9eT0q#~61D{bcfQTMfDxIJ= z@}0rP-Km+W<%MMm&TO_WK6<>-YU1wG;k{!EOX7S5PyLZo^Kt&zwfAqm^X{cvcZ10H zlh_kfTQsZPMDTXT)oRt1H>$OoVOXf8AH``HYNm;&KUldHjJB(dMJ-RZHm;kxF*7?a zr^3-@+Y++15pFfIb1- zLz#H@(D}d=c>EEwYVoh*pUzMq=F*9sitJ+K-luV21W|ElJ3@=5;u zFg|wq=Hy{ch#@^+?q}d`!Lp&ae~_Y%^Bj%lC%FuBb9w$yG ztW9aAqPRm39F}~TP<$+?6}nPk7BeouB^H3nEGPTh3w{(OQ^}x^rI6;;8Dai`;L!Os zHvy6I6N>9lRG^tgyfIT8C@)5Zn0*MEFApi)CdT)ne8@Ho9z_TS)<%8QQe{K6eKeg< z9y19_TT%f};1OQvx{fDP_yc$y9xYUTPRlq%If~M;6EFihDMg?dW+;#jA{sco2=;=* z5lC3eHY70$hvUJ{+Hhw*@yCWDnuhwdfBpM6Z(McU0pxwVUPbQ=e6k=|x}c_kDb{41 zIlv{z3OgK*4j*oR{No=xcJxGlIM~?Odh?A}2ZMp4XiZyvG>`kkaj!o(eC+rWPd$C| z*wVAlJofT;-+uj#ce=yCi=$z;C;0V9F}K3lx21ZmY1?+IH3itxOanw~Yi+H6W98Jb z`RPityLx@~*2?1ip{zb*YPOtp6IB{zp%ZFVdBLK_$C$^AH_lv zkaFQrBFQ|ImdQRAb;bStJnV?ogI$Q+E5QE3dQI+H9#0lirpFh z)K$VPGQTiCfNUrf@}(pXJn>{}YN}SNM8Pm}`jVVrXrcUHzx7R36Q+;Pjy88PEvq)| z?G?AZP}GX*$oMbaEJIaZZIXthz;}&Y_hG?^ph)yYOl3`O%;i(dJ$*V29a+_DCU^nj5QL}zAS{SLu<~lnuq=o*Qv~uIJ-|twe(5_Z0miE^^`S7))<~x_)y?tlR3&xUa+x4cd+j8Ew4TD0!aw!gz zPNxI?R;gRR{A+(hQIu=fu3x@#Z8UNqytX?X%fz%5UA?o}>Gz^AF|6-=`NeNN{P3es zJ@wT8?`J>u{BsX~2KZD4xXrl>N71@!?0MT(VbCs@+eN79Spq#N4I87c$;4BMT-@TADz1yj<2m+0ibb z+c}vrO0O0L6tH1Tqp^&7FCr}`fG&dCmo$f=B)2YQkXn2Fk|n!|0*0#0fkxVsg{sn3 zN?J5IGqDv4_1Ysv*?sZC#VRxP^PmcDzUNUvlhsE2gajVDDiZvsY&5zfOt)+WrKAzY z`d$oqBI}Y+k$iFN^>?=KydJsP(Nj|=Pdt100X~sE9@w2lVMMVsz!yRALO+iJMWf&V0FW1E zBPT%bFilfK2V-GV9>kWHMo9+TLI3ul41t3bM$TdjGZ_jKfTC+klte3+Ub%hq=E}9J zgRM0o4s}zFQ`d79abA7y$#ch#%wAtvec@ZLt?szCCKX0PK_3PKy*4AEl>6Nd2^W~rU zsb@a>Ge7;)KlzbiZ{xko*M{qtvQU_5OeLC`WMO~c`a-q|MVTv^q`PD1!IM?JlB}%W z?z+yYlgDav^SG@LvqENe#?Hp}P9O(M@mNzOS&=hR+vF$5FEV7&ssc1Bbzg2CVQ|JL z_WRiA&h^nGx`zjyGrCw!dFj;ubr;pY5n zh4H?u$wWocf(#Z(4LLFi79+6&CR2Q-AOP$jGw_$qLOx7Z8E(_Ub+Y$dJEc)WD{=Tsrw<&p)$z zXYJj0-}OB2Lr*_@?))R?&OTIYG!+?$838Gy2=lP;(1Q29BQ4OzvF~eKX_^>o66w4KfSy9Lu=UMEXiHzEZvfq*J zWvl=T_+TA`t&q%VMMH@fWyBNjK^RsbznB;!Pw+=V5DQsb$czd|mG2L|AWxJSwWQ^r zGX+=_G-VPRJ_%uG5LrM~iDF#oOz>+`INX#DJbGc+%$&oQ7EVx)#m*G3Sv2e=XIjA-mFZwT2oQf9}oKvKlQZJ@!tB%n}?3tW=(hdArG>hT!>$k zKP;LBS$Gg@$@`aLDT#>k800lO#<0cy#*YL34#t-ZM}L z1W3}fG!r9QcE|KF6m=Ggs+Ol|lEjKA+0d9m3dRw~MoNsXVuoa2hu{+H2FRMG8N-nm z_#viH5|n9*UI0m6t5-Bl%P0mj0og+}w>P)H^PQKy%WwDl{Z^y-%u^SidE(;Y!aRlp z;m~+_+YMiR=bgu&cv^-27t%NwQ!WWrUEA)bQOD49QA(@T>caf2uF6|$_Y5h2{E-Jg z{gZ!bap{<0SaAdlm!mkNV6(_KRBftGu~!vcU7DL&JazhOU;N|W`e*;!-}%*F{Mpa^ z<(2EVZr`|`EFP{~Bh9SN)=arp8^wYX#x>hsHfxT*=>THGnqf3<-^;@5>y{-A`<)<@ zqS!^-E=^Ch+Yqf1UN)!Xa6up&%7H2?TVpFe)~fg`6MXiiNfQPkVo+P=B^_Se33 z<&R#-21!M)R)B0{*Y^c!hC&~ruF$lUSf*uMJhuTSN2CA*0gsdFG_h}&NQ60wXI8*S zX1*gaiLw-@qlM`OBcn;UWK5X3D2@zzjh2!L8INlvlL`kWdW!=Vg_5O$sS3V8nhobNElC>Mr?B!swDB9FTM`n8?MpMOG9 zqfzH>ZDwi4s$6>UOHp4q{m{JR*mEqcM`stFdf?4>-WI_Ey+8|bxyyClgG}OTTtET38x;2x^l^_lQCgOPg>Q{b0{Qmb7!9TUM`0TUK zKK1lPO;MpWq5C#=)*ra={L3%D>_+B$*Vpf@_u?cEBDZN%5L1%IVdQ~MdY)6O+Q$x` zlyf`JlzMCCV}I$Vnsf7_X?jsCgK{Q`L=hXQW!pgz(891dGOHC)Ri4x9&ha175x5_)ZUrx%Ao?*iVO{1Z=Ye(rOB@Y}zA`75s-UDhpIQY%@fBS=-DHl;+vM71&HQW!bm z1+DgC=5wG7$nwM@&N&4SVkn(;%#X=NEHgRtoKwXbV2RkQQuFBHp6n=x!c#l_(D)a`z(T_bCX4&CZ z<){DVubPLZgN>E1zVNkMSKk1Q&-834_{cI_o|Bt~0c25C*|MzF z)m4gzS5;?BXQQhmS%28AR4RCliqgpy#Wc+a9(ds9`_~2|2NJbbtD&=#4GA@hQEQTf z_&n7O%#$TcV2vgmK79DW2OqqB^V)mwz4z2p&wS(SUw{Ao>vPkyq9%u)-y8KZ$&@Qo znQAB9?OL@htGOR}P&qi2DM;fnB;jDx-D%Cv|JcVr`sm{qz%0Qr>&^ObI7EfZwk?Kv z$*p)C7TK_NS4Ztr*>AhW#2mu|tO%UQod61x#hI!LaY&YOtwOwUP0y<*=Kqub@;4Vw zpAbO9HBHd;)bXTo5J!Plu}wqul8s@w-8#GQ*MIXL{@KF+`rY6EqeFEGKvb`Rg$ptG zn<BJB72B{*_*9HI3%5HE?e43uUmiUsA?)EEi?vmG-erlJ&KzSBTiL*M}gcLNb}ovl2}@fw5B zaU48#=ANWX338shX<9KvmEwhCx4XUa{*}-f=YANf(Hn2RKGkj=`s94O-5z1A5Bq?U z@4xoy_3Q7?%*>oRd8V_|b6vmF>G-~{fq>aIW?( z-~12%bK}r-6pa8^Zm%n5N~O}E))J+p+sPu=G89tAl5fpSfA&B4yP-3<^2gttZHT!; z1J8AGYgUYV1v4Tl!B+*5$sThEOF+XTumC{pFXCJPJjOeU7$rKo$8pK~Hn-xlpNd+p z6a7sl$$`F2n<2 z{@B^oTeq%Xy8gLe`P*Q6p4$VeE5lyXvVP&0|K4|A{Mxs_`lTQf`u*TDU-!p!X( zH(&Y2pVeoqK-d|+cfDo_M$JszfG@h_4una#EE)KV6;YIYX~mozb2*h2v)&dg z3vjQcl&OW@V*l|Rh6g?HS zoR;%a(~%{Bu{?Z%3=27!6^IW_HgYdhUO>Le>V`jl0v0AJ!H9QAu| zz4P{$zVek{{=zR@xNxCA9(%4kH9g(wZ2!R@{M$EQf4w{GRjbuTqw(Bx&(UqNyjK7| z%QAcY4&e3Bp+mAPbvj*1RNAfSJOo38a!gx|rlJ`e-QLLUx-lqT6I>CbGK)dgEN3|K zoM9Y#pZwIPKmL=SGVAsAovvA_0+JoyYu2kN8jBU)$b3;GkA>zDJXr>0C*Hb`Jz>8C zNBOKaSx?I*b4p#N3Wgy-_X4;wRp@sq;NWlmy}w^o&B4muASLZ>Xja9ZO4bK?&CrBY z5mh0|!p;T-i&u=y8A;NipZu%8aO2f)OIj`I_LWG`4IzwjOE2?1FjQiOGyI^4@*2=LGl!38)3bscci;H_px<9;FSN8u=hAhhDy?1j>kEZ9l-GY!L%sl$TkBZ- z+5KF|T24zPD|R5sagyqS!V>4vL*S-B!Ysa0b#J8Np2xvb_fS|mTgpuOjMES$p*(vM z1|p3H_QU|=7|_f?ga?%*d5}c3P$7d1fS~hep)Uqxk^&BJQK|rlv}Q(rpqp0U^_18F zY@IoAQaF6_&o94r@!}I_&YVIY*xufBN8@g9=cSik>UR5}dpB?14uce=X>)VSbv>v* z-*Zt9yl79gHC5hJ<(=*Bi!Z*oG&BEWA9;QpcpE$0sO3&)>)Mq|z3$e~^~U4z_VzZ& z4C>>$ZV^Kx0C-Z@9ph}OqF=dkB~7#O*qLrGkDW1SUbSk2&6%p~dPyF8-f$-k-IV3q z$z=+X5JInES|9uIpQyFkL6RG`m87X|sJ2z{eNV~?`#PmvVa%$)EGehi0P{(j(UK;f zKXRYSe%r9P-HOMQm+AUg)(%Q>2WXH%5DYaF;-z!vpLp!T%6pd=jvh<=$hK>^|G4jH zssYl8*3*a)K}4##>xe-rC~{v|Z_dp=`V&9%;&1)osgu)**TbaifVi<->^vkLC`V(D zi8xxvH(^W@H{2vFff=M2sV&=rM|G79b~m#fi#OppojHTzd44$EEfx<>ViCB(o~aUs z1?Z(@QDdeMgHFVPS6MPrzUrGIISK+;Mu+igx2n=$<%T)4Ao+sd8%xW}Xg)*E(i#Yn zX4dM0Y+ABXkyO#J!ZcP=XKJdgs`81Gr#7!%)h%Jz%i1U8*x^Yli+0$xWU)4(Ja1gR z-oGX+%EJkzCF-_d*L-H|wLyIt!(wKvB0`aVuq@DcvDb&dU-MMBw8)8toKc!%W?-Z= zSE-2Ugs)Oigv^kLEpvI=B^7vzqK8ouN24Fnh%kN#<+1lP%Tlb*1WHkum&FyUfRcpDJ8v*YdbZ^%+6rkS#{gEj+C0;B+EozV?S z(4eZKs>PLtB7r^1jb)(*OB~K^%gFgRhx(k@Sw-d<<52>Xped7w*O1)m%JvR7r*S z(&C~_qDdztkz1)STG-;gJxnU+IiM#}k;g{x+vKYqSsgI%k~m~IPKlL@mCVduHpvmX z8{1U^D-VK&kcI#Zye^JcYYhr>5Mr@9P0p^-C~^Z)&eUo%&k}Fkt zwJUFY=g#+Eg$A!rNuzP9vHLB;>&u7`x+qWkHwla7%b@Pd!YoIsY*>{;xXVb)SwDzNQ+_=1%z)B zEne}%IQPP~Q6o@eW~|Wj`DmoPdAM{cfwT0tH#S#pUVh`xXJ%WoOY`7KONVE`$Tl|C z*6!ZB{{GdKTeq2Y9B{FQt3vmAp65C~FpE;?;VN`TvKRPKgo)gi#C&sez0>Kmbo*cZ z-oO6P>b>Vb{xRG@wO0A}zVLPq83WVw`z(b@j%L z8{JM{k%d&J)k!%8&?X81QkHSwVZie9gcNt1dD$o!8>)#ZVk`>V+nw3@rHmycG*t~l z!FL>8kyEp`W>JECcWnxolOO-CCG`@+R%qcFMh?mOL1uQMF!^~UK(E}Z$uNz-m>ity%3ul|Ss*>8OD zU;Hz-)6*+b-e=k6d1Xsy2m^E`i`lL@%p`aJQY>yPmsL$M%uGd7%8(tqMt8=sI9l!f z$`7A` zAtfEhvo)}wh@4Uwh|;}#cfIkT+u1sM?#XJs0{)*R!R^~OcXoE}-MMq`-aYn39Jy^- zRo|!0Y&ttVX1Xp0BhBn-iqC7Bvb3~lm}aF?0~p=Cdv`jV`RZ4{dh^c8iIc~V9zA;g z$tO;oIJVJqAPKwOF83z_{)hvb=6LK4hJ&@$^&8i(UwQ9Zr_&paMl7RgnB=k)gC0^_ zq@b8IZ)s8%fV1L#98KI&s8ZzFP8e=)?!;#SZEPI|<->wP%Hk-L6k2A03Qy=2uRnjm z7ew*xg7&c|>@#5TG*5hZaNj(oI|S!e1Sc0vzz*bjDpcA+cYHTqt2bum1;dIoWgG`p zSxSd41WH1wg-i;481!VdMvGA-mb-7Xr8IP5bL+83FT8R@-;O&PEjlbRlqx!{rY2#< zbHkUr;1FW6RWB^sndVC#{V*X}gh4Fko~KNskr}Fa3H|dtya(by{ljUlDDy?n=Q?*ZLaq(f9uH;IRL~bfv?(ICV*w#(GX-VTP*U+nBq-D7xrlFW7QQ{4IH^TniYQ+ErlJrWv zIbPX$|LWDNph!@JVdw)~06ic`nz#wCPu4kg9H)b10j%axp3|2R~YcIU; z)pO@g9yz*@WWnY}|Jt2<#U=|DJ+!qpxpK|@+ z&6mD({`lg;iE~kwIzd=#v^_Tlodj29!-#|-+hC8Sz*i+HlPM@5O?}D>AIBJ$`&ahg z=#G&ub8j8@mx+RE>4^ZMM0RV!lpGjObBL~}&T!DKG^gv$)bqRB9TPKO66s`StJ@On%N+jZYIuw34mIjf> zmrt_h7CMnTWmUH0R(Tgi;g)#*f(J>JkpYu0?&eLUKZ^76f^W=vDvVi{d zo8SD(#$Yp1gvC>*>I+Lk7;EVl0cxqR^qU|qC?6g*i&HNm#Cbkux4T>f<{=CU6 zEy{}Gc@8tu&_aMTNfe1P1JPPU3g@MWck&*lu`E~U%%T$0<`IeG0xqJNR$I=}cV2(Z zUm3i0<$FA8DNA$L_rP>|eNWfbsiqnEwcafqv$wq0vYHQKYIIGUYlcS2`w(N?AS z>U(#)J1!L8Ogp-B=g!*tJ+QM%#oFB1xOVLtPP?$ML_RCS&}7QCPGrz=0aS4sp(FN9@rdOMb}KqAi>N}+|*^;=G@#IMCWnr@g1(E*XJaKav6DJ7C3ci!&sWKNuS=fmjs~0e?shh}(em#4Z7{F(n|E(sdQZyb`NdOfSFW^Y zM3>K$4ad&6OlV@TM>ja_wI6BY5v$1mKzaqWBGeffz8+f!#+wR&ZCZW?gojh(f%wT;b9AkN); z8~6$20>Popa+rM$3=Wi#b|Is@5#ea;P-q5bK`7rnsTx_cGT2BU4Lt!&CVzG=oa|8PdOIpu%NMoCxQG)6HEBhbmPNpk1BKbmS5bV$k zX?p-#EG3ZBh3tN5;CVLfXcWfdQLLD%YOKHe?!ApwW2)(FY#&};5|ZH3%P%B>+icD0 zMkPYy%ktUBF24L{UwimNA5l&F^2=WqRG~Y}%{sq!adl2r2z@wa0X`U7O~?`X#Y#@W zF=cn3E1pD0bz41t`T^(4o8f39&B8%DEKJBwOF$VDhW2q zP{`?3lBA$u_y~`KE%bC@lVXj>e$Lgk&Ee?vuYI}Fp8dIBTrf?GXSL^_X5*crgP7-o zlm)G?Wa(5WUp`r2?qk5>lmUg`Dql8CLrJ2<$JAM3+7rPGgj?^w_xOoZre#f4s^02a z(i_!s`Qb+{*vs>#s0ibM5C+RLQ{Hf}v3kd{>&MSOym9YVln6I&ynW%5pZd(N|J~W+ zi!c4jZ(F7zdJbKzv|blD#bVj{UJ`UrWh-Fz_`x`zD!hS{t&d9_;pjFA3N74@>?(Xi z4NjCMk^Q?~NCtUjgb@EEa|u#tE64zynu}$MUYu-y%~>IL=kXItLg+^TP~UZEPm?53 zBh25K?+?>~JBp%I(PKX{Wz8Q9stfa8ucKEqQAvHrX;#~*s&(ck?g3@bx1{j+{UL(A3n_>e`0u z`^{FX(VpJf-UI+a29mj5kRbjbT4@L{>jx#^CDu>mi?$<+LPgQJjhy=mfG@7=#&N1J zH!%-Qn8YaHXD|+GrZx%_Z#+uFfC9DhtXi$I{1ANcGey&qIhWQF5T(i~N{(eA11XuL zOxlmK|A57X5>=8l8PB*xX=?=v9F=q0_)}4Z&0ALogI?9P-~84$`fpu+^wgtsr%sIp zNzwIub#>I+mb270HS6@rsl`LlaF~n-py_LO?tbAv`Ugi&o!hu|{p3RrzVJs0YhTgY#=>mqHpT>uqd%E`!WP7;si zeCRlee#5w8`!*-tz60#i4YgUXshaErp6^lYB|wqTj1Wl{@wG4tz_U~}k1|8|F#hos zS}s>6e$$lPkAjMtZ*{usYulBU5oNL48@Qr6@?%Az#e*O+L71O9dHCt4pMK`UPfSg> zc82|%cUOQ@^X<02AXu7?dl-(l1lf4#frUn0Ti@7}^vciv+-J3l{nAU{{^A$ExODhv zrBa3D=nvf}8N@!h1!Lk-qR7lFlA17Y5VZn9Gv$!XW42#@*AtZ0k!}Sy4_6_puF&kV0mw zg}KL#r_iLWN@#Ebrxd_?t~4s*_HcA)emPH*haY;(e)<#ZfA}Y>@4mbI`M;8zx)}SK zkeL;O_}JR5jn!4az|5iL<=NTgZB+y%P;Mix z@A$jLKBFu$y096Q=)j*0O)wJ$QJ~%r*yi_&aW0{Xq@Cs7`eaSvh^ex0Q?`*cQyv6< z6dTRrx#;{w)fh@nOkE7@DCr=RhY|)$oOEu!|LTk1SU!Dv;rIe>qup!@wPx$o*&+aP zK#jivt5sXDZMq)*3=+t0H1O~I(|>gB#qGm~<$6^OhOxu~Yk8%M5DLD>;>6@vR_VSi zwQ=`IC6K1A=A2PCWQ+DomZO~IN8>In9&g3B-(%4YwB(#`0M9^+t8GU4X%3;?*oX|X zJW#e84hH?<81Pi9RfwlaQWSzwBshzlD?*%7+8P%B9wuoT=7YhgJylU@gE`6=NRi>P zZ0dq1W#hoPyT0L$y-X28+M^~5(Mf=PS?c;ut!_Sd{@jP2d1`rivFo_0EYrH#ROs}& z?r7YqSl0BkpV2aAA&ZCWt5cPF?Zk%;z*_)uTZxb)7H$)6j7x- z5klJIFdsQ{?U|2%{HK2Bzy8hHWx>E)F|pAQsiC#SjOoY}c2j1FA*|t!JgKl@v7?3V zD_*i_?;^&kG|AH=o0uv08hXl&sR_s^M4f9S;=#Qkz*P{z?tKoEYF4My$on5?*Be6Eg_w?O!3f^G;OP1 zEcr>QXnfB#Vh1#C$oR{1yGl9R7Ld6DDWH=DjIubcVzDl#65L&gQmNH7Lmv)$qtP&k zgJ#{<(Q1-79`p^UI7&6bGL(`TlJe0Ai3;)6%q;G9WFb^EIs0BewFHpdok33|H>T&a z)Ouc;vT+W*mOt~<aHHVjGJWPAj&zF-zifUwa8LRw*ksvozC~WOKNp=87z+n7Sl6q2-W~_O5{z*IzR7;-wOF!W{-O;UgYeyH;(LmDG9CM)E%9A7)H95}mAPU@dvpzp}@@HiS^MXH<(CxE5_Eg*#&vhN zJ)5Y*()EcJmBn`q8^aaD7W+z&=lLf?NX;U>Z#&}gI`vQ(6UPk-n<*|}e zkai-1pyw_H&-BA6skItf#iB(sn?qYy>b50}<5-bh!3#2Zn56+oU8?#0o~&Xf)PWJ2 zU8mg&Wi^c*MHaiNI;%Fk&bpoWp_w|0F6LDu3gk=;f-Du)vkx5o#m|54*enr5FU?1r z+qxp>L68Pcu-TcOZdXM!97eM3DvA{Vlra}u(m3d+SyNM|UU+qL;gDXd9(n9hqfwu| zdHvGP_G*>{ZX!XVQLc%UoO778nO#lvXRiPBE zVF*<@j#5$90iywK3LH=slQ8q{=f%$)r&ypX(?{GfSK4~n;-bPG2Ih6|ovU|m-#GT* zV?vZZ_+uZIflES2B;2w|p5dpeqV*^|oEA}tW@E|=f~!|=FOxD9 zmSdKZugq(_XNMa~Ov*h-Wkk|sfg!h`^O%F;OuMUjxC^R`lbYmQW^1SUCy7C_t^Fn& z@lW;&!W^t>x-7)NY5XH2`<`%9Iu*;MS1j>kXX85w;oZ?7ojNLy`)O@ax%~ZaKf8Ln zG2fUwvaFfL;NIGe%damTJ-u+|oM6gn6M^hVhj=JDBmZ!CZ@jQM!7r=lJ~D%df~gb z=jUc-XPTBN30k|ccqY;7zT+sN3*r<7VMdwdQ@}TMd@)yPQx%C8?nY@G5s|=CHuQ=y zccxOUs)mjxF>S9}X@$;UXX75D=ouPPmBcKf^kCeG5XOUtPagl!2}`*B&F=7aW&XHS ztA}z0P-*CDuhXqo3|%+8FtAM1^TQa^M=1mM24w9^+3z?ku98Z|!ToEvalXO9u1lFs z^|m5hx%9@di%$!gCpIh`y87DpBO$zS_OU$l#278@2QJ01NGbT1lF5o}sfUi9ic?85 zE!DDA$>?#@nP6c&mY2=7!v9+CCpO#xA-ls)ccra9~@u)B5p`Q7a>0i?pT4aJz)r?j> zk=cX@HpxJfHbV^~(Tj4=&&K}PbMq+9f~vtnsq|b_gDmpN92LtFd0;8Oryq)vVw$$D zS)-)Cz0+^l^&kXUit|*CVj&7?GcQzTH0+zEo`c-sqzvtI+G!MIjwZ|gP6wx>#Xl;M zJ-}mIU zNjH-)cHNGzsGDPV$8}XjG&NPol`wC`njHrlaU$Yw*v73{Nd1;9GIE&km2&8kwDtyr zrc#}nnO2&IX@fUf-AcPJHm0Vfc9`bIsCO?3$u+@xUk)@DfbNoPtHS^PryhUik%i0e z|M}(XFL&B!YRl(aGfVAuyV+<5&`i1Lp#j54*JU(Hnigp=09$C=33%;G*>4*bxBhT} zQ##ZN^1!f+i$wZhF4T14J74}+AO6&*>a%lstP8qz;@tT(PcR@|*Quk;RV4{xQC1=^ z0E+lxZd4l0>1j%-rbsH~w01~m(SCGn2WD=1;^7E9rObr!6%i&yh!(E^H_vmG#P}E6 z^s9^%<=8q9hjV ziiMSpw-pP!)kVQ^g{e7tbT_TkjrBXX)9Azft?i~=n`%xAnjt7!>|^vQzAyCMV7Re* z?93w@JH3@_>B5KVNpIM!36Tf=L03o1Q&u--?P0qI?0G zjxjBIk)&wAqtVDwWl6Itot-Ub94e}ggE6=mrcaP#woRKm9;H*QGy#wSkk~eEnTU^J zX02H^K#KDDsd}bsp698W;)ft+WXi2Ko2X&cuB54)=)mEOHw5OfbRyQvBzUJB?*+Mo|4%Gb7P!KL6&%A zRaGc2In;B8@q?Q+D+;ioX?~iKfaQ4wBWve=NVg)>u;^ zApa-<8Wy)s%}L2TK{_1Eu9-^TAIGonm3o+FxvB?I zeCO)5<0qDssdi;*#-0)SYs0pT@q@7{gls!ivhlG{ES}+pO0jz*dpSuQcwd$*7}$b0 zt^2kn*qUSlcGFRmQydmp1-SytH9BZ>2qTI%kYY43<_z5y6pM{+*&Ky=#~XX8CukK- zgV4((=u31Pd^{H*`5c#WU16#*t=i632Y3+zI3yJ+lA#k36-*MeIU((nn$TYKj6#rQ zKaN-(BtM93LzQ&P8Te@=B%*=-Yqwix&Oa(EMz1@NB}0)6RThsOSq53g6%|c4OanMa z5uvuh7e`8x62!sI&Q6#Ix~|85Uze(yq(HGzu3ZxHlCG$!)KC-%j)akDR0j7?`Q|d> zhR`>erkZB8A*gyP%OeHTyDOTRW@~oEjC`Q5m?&wc3U;fl==!LWMdKlO11$?=9rE1R36WE;3wLf_zW9kB*G(f0N1&*2=o^iOTCK>n8m-}S z#{F(*tGDA0hf1{p+N-H*9JqdeBXG9GMDQH}^W`KMlIp->!Pr)IWe6yz5tDQ-lgtV{ z#+?%}7IiTRIxlu1qjM4=VjCBfaipBAv5-7|YAzVjMR+#%G-TVgQWRt1JjPFYYzn0z z;ZKuqIl=40SLsjCkem6a0ss*}RUnv#E-3ZY%}ud2)mk|6##^tdl6d{{8z2Ua*=5aa z=+!Aqbn_>cvNSyW@FTze-~CTt`mKMQhrP~DWZ7Z_7Fy;Pq{_4W^c0)MZk!r`#i`xT z`x2VrPRodE24oB-EldNrr!=qN!K0;B5FC~lgr(jCfSVf4@EPqM4+23CiaA6N)mybF zRmCtLdZTd=DJHa`ZB?NL@%GpY21AEpItL@1ZMxmE>}cdT!?B|p6;(51Xq`O4piMEe zv8dC8R3c^iLj`16$)yB`tZF67L|Zi*Q%ikc$;Sgtu`zOI=4WfI#Y{8;uN%jKsF)O& z5JhH1H7$KS9^;f1DrOjkueE*!92t%DWXEnv&AV(~=<`Cd+UEwO3R_ z)yPpudEpIJgc_AZ*Qa#Jffrc1Wmanuru;belh~9~+qM)Hj4W3TO%(-H+YbWSz)>Yn zqap4q^!PNO$ja(QuQLqoX?x^5&c-^L`*2NJ7KQl}XTJQMw{E=q>fux8s!OMPBgZoI zDE4WW$Wn~(WX=276Mh7Nqa3rC|BLp>!7!dgNHOk1n`N=>u+p&y2GL!=i$k>Nh#VN; zl=x^OsY>R1aS#l8-Hna4o$ZY@j-Aa_T{npFV)DdB@d)@Ksv!&J-2ctoe@EGMU1x&$&H26@Dxy$G z1OX5Pm?cqEvM9B(EL*l@{p6f&x&7;z=~-&K*Mzltx@WpQ)3&GOB-!01SP3Jouc;V4xCPBGL90=pqU^|OgYvv6{J8DJe zWPM|6cJbm3#ypU)0_D#L5-)S`eL);Saj`N~p@7Z=r7V(xl%j?}nsJ7}b8;Ghy@{Lx zxv7G)0jH7>w-ZH_HKj;O90hrp3%nLGJ}^+i{nhG;CnbTOLMyP`^&S7EOB)B~PuD9| zJT{oA9l3z-M!0$Jyt>}ox%9%ByUY$qR+1$+Yq9ujH-JUWzNcG?|9`MAVL3roC@-o) zS4`@cx@mV{l!6Q5TV;XgAuX(7Bi9oPo};L0oYM~A8AKrwN?ua6&eDFMKZwGpw{`xB zuUfquBEvLVf@de3vb%dLNy1{bo`g@i3r<g zi}laNVoZi>N}d#1fh}j;<#qd)Klz~)DuPv7tNY*G`SFYAo_zV4?;Jh;$ccx3z!|!X z7RzlTW(9c5uYBdpfAh^J_IDYj)xcd!>lZnE54Qy|kwE+;OiWLt(DWhQB;7nNjf>u? zM@1F6ECQTldL?0{Bn~7omol$-fCx>7CdJ65r^3Mocq%BWEJeq_!;8Q(SX`dYk}wt+ zzNIQjRkK2O;M$OEz&g+KfIAptK0Y8wXr+zK?YU+bum!z_H?oMv9@+>45#taC&?G%h}vGOiy6^=4C4)F|ULv(c7Xfv8$DcrD&>2A8kieDH9G6T$xSg^{0)7L1n|Z09n0h^+Tm))G zMbmgua3LKX2W>KR*mEyldF#p5hMqtPGn_gMK+W3n&Xp7U?zuQhzxMq1(%QS-$W>~lvJIO*emf$rxPBKkSWI`qqqgm!VUjEGI{@cx$FU&17kOIJj5H_SRc0gA| z#|bb5pgXB|f&^NBgL_DCjYixOaH;?%NujTR1AafBk%&tD_9`m;1cIEBlr<*49kebIJ}gdC1v9E>>F$ zJxBWUFJHW8wf^?k9jn&Ni?7}|u)N&6+5ggCeU3@P?&}}$+#nUe^r4W_)g zHDq2~vufQ{7?6eA09At@WZ~2@P(qm(q9EdgoQ0+NL9N-Q_JPr{sV?S8;>Jk?I1Pd6 z8~~7~_?m2tCsR@6H3_sK;?+E6vq^4SIor%K%I`Njf|{A>@Ki;9;Lu53w+tiiU*F^x zJFK9A;~A1XwWmsJF^Gfvm#gcS&tCuA&uD?C9X!od_6hzqV6ChewDKYevK)S8&yGC? zEI>dx<_RG1q96|N=opg$74T!Vx(Y7s1-V|6CN8ux(^}pSgXA?luMJiSizLbo6?k{G~*Pf?w>iA$+*-&?Q}>JI5D+dH|w=OyPCLVT2UF;swS|0aLrURRGy-oCS2R-=PNv7FY~)T}G2?^F&vTjb)Iq)CSQ3ak;N->S;=jZ{KO6|KLx$&%||c4`gC|cMJT@L(b6wkag6mhVGi+*B zRKw7kW;O6qh=*Z+?ZC3S+E}`@_Vje)=EHCOU?f(+NVAys#E1MWrmXht*kiz=qvRbJ z17Ib^7+@o&QmrJR>rK;C_hi$|Q+G0r96 z{>EfBRomTKquE?oUOIYTf9FQ3OQ}}jxRCWnkrnaimtsqIY8C(r<(Q^Kc>q8dg!l<& zRKN$i3rIu&^qQZ(szfo2H-5GDFRZ|*)65N(%VeIKgIe`(=) z@kems1k9Z@F%23j`JpHx55vxIZ#1V<+$7*J&VpM^6_9w`+!wy`^?&;R|HbaXyJ3v8nXkxM zr_mKe;gxCJN|~Bj32KXw6gSgQ&f@O!LB4lQN@K}$`JhOZ9T?guF`H&Fy65iN-USfNsZ9nw$-*@v!#=1xH2MCsv2 z-x`EaZhQnV19Oc+o|14>pxW5?Cu@V}UU=Sj$82H|viboNg!A+B8{56DVUJg&tCz>4 z$;gl6i63r`{c*s_jV@QI$(g81qHbzl;0L~oI{{Ea_<`&bD};(uR9ev!C-91BEI59` z>m*5I3a-GC(R_jDB^;HFhpus~0B^%81s<@QD;evCev0vuXJ($gfmnxTMXRoY3_g8;(? zkQv)%e7Mh8PU3F6UD?0lVqjNmN~8VaH@@7t`v@a=wZ_%hiCzk(+qlpFT zm0^=xPmLeIDf%Mr1lOe>1X!HNQK2JA=D-CDp-Q-h>ncK;*8C)z`SC2tW+`jsqLnZ~ zn(hq7X1x_sZDoEC&NfE)?jOMkTP&Xa%{VdOt3(fp_sVW$<#sr=F?$JJU5au=Ecib zU)|mrTQjXv9d0=QM^;m)dN^;WorYZLGO`M(2v10XHs761rwN2e6rfF5KFKp&8gwrM zkTP5@ixQwRv>gI>fErL3Ml6eYmV|*v8yeHp0h$g?lRz65KpdKa5kPYbtdKBss&=H+ zFqmY0``WPYf?YbZDMr~`s{sxgdTum}0(HXiv7wtaS>xQvJqw1(vVZ@zC(nMZar%MN zdc7`aH8e8I)8+Q+*lWOoMx)T=E!Zj#fVoUTB@pC*VFGCVR#k6w6Jg)eXP@JK?+_N?uEvNURm$MSxOhvE8^;0ZB9>3gt-8KqsXy?t)Z- zWxzrF#BYGeGH6}CRUUK+DoRm=_F0M(!8UkkQzBomo&f%i0(LUpfENm3W_YYV3F6^2 z8i%RJE1qb24DY9TWzn#_2_v)3W-ScT?%b)*{{3Hl{afGu>o0v_^}zm(_4P}aF05~C ze&gFufBV^UxI%aJh*qm&I5q0+3+K|4a}g+e}bU>_TEGOH-6>^siXa)Th2BraI0 z=9(G_tjStQ5Jd8w3s`~U%Blv^9)Sa;DPRI{q{#3X)cUk4g+w1wDnLqtGB84hwi60}%JjZKIw$frk zCEL8dX4{i2bcf!CYF1KQ(({B=BR2-oE16QY#wnGU;a%IQi!$XOgfu$|Tf!3+a{>Z1 ztR#q%BI0RMHkWClSf(|~kQ%sQ(itG0IY~o|kSqnM4+5_Ye9*1?SqN?!#ex#CK-fG* zD^*of7Ffrc#J-2-N~3fNvruc;k8AjC^Ys`cm19xFo=J-n8JLBD_miLfxu0w=tVCM_UNd<(H`bvUp+QrkKI4tx?5I!HglqIhw=Iu%gC_dm;y{3ki7^_(Tx>zaJ$G-029q!lpLp+tp5sTclXwS@tR&SWYaZ825T?ks59HO~n%DP>^NvJ{44R1iMA zNQ21G^@yv+e1%c*amkA#Nop#!CId>w%A%@y5U&Ey@>)ha_&~&_tSr$g#f*^^QITtb z=SPkW08io&U;0kFW3z|O$7B*<7Q3r3l@T$WC( z5tmFeHj_jxZB?g1DEHAM_RhA0FHS8RO>KoR=G;lL+;$@+^9GZIHQZ3uRaUb>GvjJa zd;CZ}j)&WuSGcCE@-;EKgM;q7%BYxfy?w+2)0+Z5*zW!Z{Y=`KdMu}VfNe!i7-|3E z2R`$uKfZAO`QP}Be{uB0z2Vf$Oe5&^SWRaHNl+E3)7f6X`KO=$OsL92rRoTRllY8T zzp~W}o;rKq$g3$Aq5AG-R%`$7FjeV^)Bj%&&U^p6RwFW0EJL6d* zWK$VTL6o>EFE!$z0NFe8c=i0t?%48eM=?xURYX~a7Pnl>FbrUpWjXkaEU5u8cqlp0 zN)A6L&>qv|Ius3%LR94#tOMLCq7`o${uqPsCY&E>9H;W^#$=qKi+BZMi)V$1IFyRU zr%WrT$utcBI)R6i6Um~)Jqccja%qaVJJce83nUBI)ij)vW~uWy6hzu3#j>mvz0Y%i zJQ>}rR}#N%wv#--bBrR_jYN~>D;Wo93j{7hZ-6YrYCz9H(?l{k7FVPR9H`%%fd~cJ z0}A6^LsbM>0wm+p0GHSg9BY=xaTEu1lSK%l$iM)g1G`hQLk{7&8$?3HHSMI!*5L9_DQ@gzl2QdxD=c+#IKz&S}A^g>F{ zwP#{F(n3~kAC!524=rKugYGn^b~}1qj9!dXUXkWkALg~WXTSaQFcenryL)pm7F&_T zDc$*%d+!r2UpoKpx4-jee({%n{3m~Yq0<&4@DMhf_Vwk%R+4_^5C6ltbC>2$-P3ob zYQhoGKtj5NXyj zff3U5FF_LesD!6oV50c^ZWx|`=~mFHd~5fQG)uF4@=^uwCQ=nC6Xgp6N0?h7NMIRw z$%~96QW}9BGW|(1bhxys_gqVnbXC>iI0aVVSV7=u!dc*Jp6hd*hVOfJRx{^VUh+~G z9yE%qxt7UE;>>qAQK_3+5ZMZwm=!H_9o$eHQmU$9)&{eQ+~fzrXylD6YOOxsiBfhN zxX>n|n&C>q;KD#Ugu+=Avt(J2L3M8g1`sdC^B^pv2&PCc>vCGHuN2y&6H-XOz8?~-xSBSXQbFv5yVP|W7RZ= zvBe@qFy}Q%uQMXgi=t7_c-4SA_k&#Fi7_T{R-#061Mp^$1E6ME2ByXpmFCl!LQr^2 z7@eF`!Dc`#o&_S1YEXDSB&4a()C5|f2#Mr0eUy@MDQFi-fKN@MkXnqUk4njqLSxTW zssS%=4hHAff=pLtH~M4G3u6lGfeTJtckDQHE!cOg9cZ=vB%Rospnejg7*b0Yt4uV~ zWF@!zLc%c*XqGTZ+`Pz?|st;u3UQMfBgAh z-nn+8+HP17g{A3FN-jhni8N=-%472|YbwyIe?PNY~& z=^AlV)U;xS#7<0^@u3zuMlQr4;mfVGhFmJ1;g;f~zmy3OMK)fEXn?uGCly?*WNojB z#FrToiqy8#fu=H2M4>c41v*H1NK*n%%*Yik;+xm(*$t(+!H!lqwla4(%M(e{<2Z0U zUleh(A*@Ve<&eU>zDUJagDPQbs&Om^P8jk&sJ-pNf_YGXd!Xt1)R`%5#ZCfFWF3VK zxHNPg4oJUDG=#&8u!z1Hb;%o^=e0(7Cd z|08>*RP%*b)n z4ElZw8YSv;Kqz2Mo(85aL^FtU7UT-ZBq|CeZ3K~`>z40Q%|L)<0%1%XhbH?}HBNIk zrBbJA4oL?WW&>jz71>JpN_P(E1otb@Y-S=9x!8a-LpQD21b@wCK?1|3e91s?hpr(_ zDk_`uB3nDRHtlPE+b}4GAf<^Pdb2^`i%~B6Od?nLW+hI%am*+g@kk6Y(AMcJa;Kc2 zBoyY21}}-;HGj6kFdyA3OW0$;qQxizqwtIyGPcX`s#NdZHRd$i&$nk=mo8oQG7Mf| zyp(XUl*nMO;Hl8vya5~1S>~>GXZBZL{yX5pZ~gYafBz4D@C*OtbF#>^I`u$N!YC94 z_#=?nBKL;p>-ENged8z!RY@HVdW-dXZ!{GuQg7mRn~O|7OtWbML07;{mQwXHB0EJ! zG)0$g&uJEueK4aEeM$mVhP`l5e6!?A0IwqBl#s6YwVYm{&lEbbq?SoEQ*|P7I8==s z@hlG8Mim+l^a`Kwp(~=y%W^NKB5|4~dS09|F_+~sD}s~Lg&59 zG%8UXUAcL)R;zJnUXB~~dbLJluG4i~w_#Sv&{^KHX4COlK61D3I=ZQJTXTtj!}EgS zXqb3$5c-lV^E}9$;QF2@Np)RUcwqaTD+xQxtBYJ-H}#2Q)w`WZ7{v_x#m|3kZEYTi)9F@dXU*nPnTLgL1r`(}i-r6wlU#7Q zOr{x3*Kwc^!GNaIDVu=KN@+@~W^fb&jYKQX0d@>F<~bh63%n$Ng$GchJY*(;ksu0q z5l3O1CcqT}D3&cV$ngTou}nHEB6x6LG3DoQg0AZzQv&6ds+FoC@&e_ZQHdg2hfE?4 zr-Bi4tRiVeYz{*(!EJ;=iW3OD0)?2QsUIgp+e=cZ%H=^6X&U3h5J7Au(F^?C6GC1b zhErUJ4m^q|rfLph8i$!Ah%!G316+J5-xH^ukN8 zHrw*l4%c^v439@c=a7De9z(|$eP2{2^lZF#Y^!qDzQ}WTwnkq+_g!g!tyXQoi3P9^ zL81sE%>WVcz~x|y-MJ+|ziyael21I>jyXM6qby~53S~*!+W`ve_ zbX&@O{}D>j_u8~9oZ;4Ml9r_McEeR=PF#sxBsmM_MVYS-Wn(H56NMCrqqO|c6$FW+ ztztP)Y&T&XmiIW-OBf@H^C;#8N#bQnc!*)65e7o6!W(OWZP&~Sl!&V69+gOrPaQuQ z1i_WHs}Dc;kgO;$$0!JA<8i0fO#E2nSTW}mj+c4C8Cx~Ylm)S3*305eUI^Qxs1CZo z^?h71#H4|9=#sf|iwrIWAL z-OUE`jqCX=_H#%xmI(v2{ZvRKs@%emzT;((8?_j$P!W6?vn_&UP>dov2!Gd2V=|i- zRsmHGo5c%g`AL2dw+MT`}?u_CdS&Y5TUyKM(xf}BLbI3V5b3ZzWN z{fSV!ET6!wGHeV0X0w{19XfiPN$mc{Ccd5}UJaZ>qP@tHG{P5+s(~A|16PLKR;v-E z7*d59TybZoPt_3j?%3;DLY2m?4}OSV)w`K7H%g_R2gDX#2%?m2wCj}8k|j(Ab}E*B zNf1Sn9Gv|v^D-hUds^@c~@@YHvoxN`LpXhPell+!)j$HWMfBy-3fw zGY?J{`;NVDdG+g0KmC;_p1Rf>y#A3#e&Jnjj^Y5)PZ5R4vw_Q^E)RFM(I%AjgyD)q z;$c*xj6ulqR3{j`l9FC9_~BOaBxIpyWR(ZZ#{meL#$^XvmF2qWt+tLGVb89Ou8iW5 z%We*AHq4-dQpEuz0kA}kVnIa$eagcnl{3%! z-|o?|$AAT<4j4}*Mrqw8HV^q+ZEQi;H0&^U{b-tItF<~>FM}@tPv+T}CP@ocnt>nl zif+JJ#X}zA-({`2x%umtuAsk#l&|V_bbr}@kTbAEIISX-C<)Zu6!pvnHOvK22pH+a zOKzqPd@sw-QWun)Qr-b^l%oKgd`)sznZAHSly)<)ZpWl(9W~mhh_c_#+ky6S zTJSY9hWHo4D;o?Rko6d~&FD-kVkXWkh(gM)@%?x_VZ59LaLBwu8Cx=!#c`Mi0wZNC z?b1TuWpggd6;5<4x1rZ3!zmQawY3`<1}|NCrQhqVU0dH=-$aCbP-<&2==F!b#R-Y-hIPd6Yc_i`GoAf66&xg_b6BVhZHjTVvS6qfs+A zQ~p1G;agX)-&ou1fA|CMeD^!w5)B6e2PzS}A@oiH!B0t{DN}E>cGDe-nKdw)l8*y5 zKtAwmseLI6J*O4u0Yssy2&$GrsfQ8cyIJhYBNl z3h?0IcW}SB5ib^js!)tY9f({8Fls8TN!B%TtMD*+F>%RrlB!V7D4`oI!^Ry!FXCDf zAQ-|eN+2MGV#v^LHdKj_WN8{Fkf^3^a5N0j7*R$mqhn2?S!xoOfbv3wh6$gr{K|>r zUwi6|#3t@^xWChS=Lg?)`TWHz7q5)_8=7XSvV?Jo3($K1IPwxdWvE9Wy@ND{9YP-N zp(X6~;^z!QkrAqkzSN;&K%&Sh6^60L<0(x{fDjoF>LkV?*=b5OC$~?tEIg$qCrJp4 znya-{NEG}sbB7z-jYe~MZbg^%nKLOFazVpMq=8M)a_~a#?eqrKdaJj+MZ$k(8TEF5 zd+f%HscH;|o1(z^ZoIrCL}liBk&j;Hh!W3&4d2RKza7l_e&T-d7r05ntlMwhB38E- z6$%pL2TZflOyZGaGq&SaI7tEb6ihDDLTl)I5f6jrRZWiT66@tIY)ONQqpSZxa*zW4Y&FT8YN zyWg+Z>nW3))fxtmW>!bDnM{Huo6aVxY$PmGGppqN@+7js>v&TZgE*CFPpCUL534sE z{OM=Ed}DjIw6yf=zxr#(mrZy56*mzU=H_hM24SdG>R>%_m^2%0Pz)$Uh#Xq+hmlmU z5)41e3@S74%jA1nqf^8dz)hgL6-}*FDmSig;7)j%)EwBrY z3ZmgWNf_o)&T%o$10=P^1C}MUb*)*cH{rh&EskdvCnPvEmn8x%!=w~8QBzlr9q+d1 zKKI`~n}*}-y&LmY^9^r!+2Qt5T6Bp zlzUop(dOjdWZDo@NHTngu2Yz3xq^oc?Pfo`Hqn7N zTA5Q?MB+=1#xjy`Gi;5S4kqI)>hN_zsIgg`#5Tr*pc5C8va|x&oeUxWD&UyD7bFye zPZ+OGy3XTod)$wspZld>SYF!KY1d$PMS%rE?T>xz#{gR}yFdT@=l;{5 z{i)up`gxLx+$;<^m1f|*=@gKc#yM;7x>V701Ibl6EG#B***9nKxDDT+o!dGR1mZ{a`-qZX+(71TW3pAcU(gmP3L!hyg}PrZ)MbKgSe`l}bCz(IqknyTrl z1AUmJx+;eOk@;e>gW?Fq5=~+14n5DUx7tCPT)VM8p1RBX=9OwC_B>G_;Z0Ms1io=;eS$NE9rO8rc*ys=Yqicg)Wb569`rJGmazm-iJp14L?(d#BeVUT^ z4b`?iknAL&jW;Akc6~QO>w&#T@yUDc?TvoNtW-ovV)@K+?Kn@HW)*M-eFFDeghE)1 zw3twvS4Gth;y{ZGh>V=`{Jl)@+uLL0gztI$ZI3;0pDse9@P6QXaTro8M|9l)G{UUZ z2&bThbR&qUKt}|slcwb109qK4Ne-EaF^s_tepTiW)9OR`tl31bRZ^av`4KCKs;Y^i z3I(t(g-pU%C4+NkVv;_1a7EQRQTWW?T_-ckE6c3xTWEJGpjWjT#q#G`b)Hct1N-8}WM^lm-|ssP6uehPuL%<+ z0Vkv>6DkzJ5tap%Z3p9Kd5**#hL0kN0_;Nb{0W}D41|@Tu3|+|QMjQ9x8Y}z>n9~~ z=-M;jqbjg5$g1yBz?Z7}1)zrqSN3(6R@^8%aq6KT`{|$k_rLXfB#{<*Psc zp%ZU^$7A=Me)y|jed_FUFTy@Cy77IXm|}1v9~TXAuN3#$vty3|%fNxRI-PGE( zE3aG(!0)_XbBm6X|AE;6-qIptB!F?YX&EUb*zO zuYK#+e(hI2{pmk=;NJV5JA3xV)orMFnP^Ygoih#`TH*xOn$4Q^xhbXd%BrYsT)vny zNu#}dZR5s~)@o4WuTF+{tB3vI6*UXkfMHYygOZ9i7CBS+SEjbZJrV7?RgkYJ-BGNt zC?*qk3lQE?h{U+c;tfT4ESBG0bqxd~H6e zUF}_6yW;=IFTCfOXI?pX?uyOj|MK&H_Q>hi5njf=mwM}i?Tas+|N3YDa`Vg?#^tx2 z^apqUq$O&c5&@9}K4l_WF33|^44+YH zr!|}fnuiHlnt0EB$G62?q5b#-hDs2Nl(d<~sw6aGigvL;hDyZ;>4>6*VDzDfjJ2KZ zXNGJz<(-Xzs&0a7OaK6Y07*naR7i12Wj<*3oz?u+!L1}_~!Z>m>K0RLvJ+!a2M!yDHB^699_QOOJ_{?=c9%M-f-0|xlzE=}KX5A$5 zSMNT0;^B8Z{p1tB{v+?^ZeIBPXC^=WuEYDf{s%sAa>u=S=E7z@)+;RUq1}02D>5)h zawrP3cZm&qzLwAsl^W|QIU~rjR;!{*^sU}DZhPWdqw$Dsaa3|P3Ju)|!&ui1;^#&E z5FB9`tzEgiIhr+F?T>%_qlXV4{`9B+{WgGBXlnJn?%qa*s!^pH@upITntFJQmz3Z{%2kzf|`NhrW&(Lbh z#o8eCMuGFse(N_*z2k%L*|9$I{vWn?hTr|-SLN-olBFH9Qtvj7)U~7UegFI4@y_vh zoD9Nepa0&)tJlvz_vFd@9^w@?@qAGETElqaiElpkrpHuGI(7P#2CI#u!PvTd{n~@g zs?1XXLsp>mj9DDxu0R`K{@c2AW|uQnwulaP5Db{u?sc`2e5`#1QMyB>c(jjQz7LdS0IBLiW15Q zpIWR&#rBy*$T(iE%8<$MWD(>fBqExdz7G1uN|g6k2LQa~c)m5=8ijr=n&2{G?qxjZ zvUNU9@h+cdGMDN?7L(3Q5?Um!2~wVTq3sT2nLTyr(8~S=v#Qk^lx#r@ltBTD3T;&M zhGhd6u9a)GTJ=f?{INeb+SwjJBRX~nsDygq|x35yaroa$maq>WdeyynNy6=486iod+qip?o|C z!=zYhovmUL0dAAR)E{_MM> z?Op=z$Vv(HLl{z|PbzAY?cK50iKA@APc<;>Jm*c-9EtkQV6s?QuqG2x)g{xMx^5jB zTQjCE?Y&`pL7NY%73iHvIX-~RT0V0ampaq84*MO6bIACQk7KNbbCB+KxJVUWyq z_xMJRoD!C<*Y=hok;5<^VsU1bKmATpxDrAg*F;ZC1<`zLn_JvDwr=tu;=fC#E!TH*uyN*;(ta2SQ zihU_}Ks#Hi$(&qx->F0I2B`?5)Egw;SXK=|;t#FPr=bNO&M>eluvM74GW7wHlnyJycF;YgUz+;e5T{koqDfA+mThz174a3}9W7xyv!2T71<6VEo zWw{^=5vd<0P9s@?`oEQ($78IJ+>6R08(E6}pw!?z0ha_^!S8dlEu;`ZA4Wk&^4zk< zLvO=bSX`=g+Yrfl1TIQ-$f3W4RD{eUUj|q&LJ+d7wwvPn?oS4j;2E^BQOj6S^v9W8 znevq;L+J&47U>LQQXSV^okM258dviVNu$jN)DOuMLHK%vQxAHKI;>kfL`Cr++_FRZVxA8j25&K^B>Z1LPRYdGS# zJPwMS2~9!A;pqZ@FK3_k7_h=jnEJWpp>LI1RnaSxSJyX@lW1)<7RJhaj~dj#71$Xs2ZuoG(CIv+{2GN>;;w} zRv4x+o28Z7ycgZHExT0d;A`XYu$Wio&}*!~CIUN)SUcuLvCZW>l=WVwfEEGMl3?AQ z-P^4@cq@Ef{)v2FNvXiyZIrvrqAC z?r!b~5wnz}@AeM zdS=?;%cQ)Q8XrVz#SPrbX`yHteieYevbht<-8a81yTnbPsK99n;MO( zZ&OOUAwlE_o*#n7nntb21rY(;pbe@hrbY2wa({5j^x${yEMXo;Q)|k`i6V;;Rq_mg zO+aBuktJEhI4`IPbpu7x*@SuudURsqAw91A28@oDt4#EZO`M4TZ{F1->> zXAAEB&c01vczc z1uI@i1W|y0*G&QVQ)!snTSKh}7L`Lf0MrV_D#TezXjL3={4_tvQQkwGhkoR@yWK;} zO`Z2!-I<_K-N3i;fQp1`3Lb5?08cD4sssxW zSf~l1GdC~m`u4adXm=f6p1*nNj29l%G@TWsxo&&2YUHj1vKkk4Fv@&XS_8Fr#~uR~ zWSF1HVaCJ#=_=o-H=5n~wVUg$dUG6%hm#q)WNJCXejomPzT2J6W|AZVgS$&B*VnK7 z(SQ1*l|!rdoqhza0yuE_^5rvU&VKZxA2kdE1NG&XUp#vB2*}qzeC>PRefGl1qX%2_ zdThhn7PLRlWw{7R(v(W-`(DDcYNh4G{J>4Lx~VH+?oB9__%*d+ZqwCrf_wM4_3o}t zytQVK-nsRfK3uNFDHv81Q`k#X7_-)R!w-FI`pUHmryMzQYD-kCzy18Q;E4V!WB=4DO0 zqF!*C<`j;lL`2{7Fz_|-e>fYOn7Bg^@SZ$L!9g&LVF`W`fPF*wD4GFIQCL9XekhoY z*9rQGvQLN_LvKOQaX_a4eNR;ssptW(NL16o&=^hOht{=g*IqvR!gw%l@84HjT43eO zoy=H~QvY}3(?#V@D*Fd{S*e}eSIyPvd2w)4sD*hQ24S*33$@Cnbs=sEOhaHJRxmV0 zR(L5$YEAR#!N#$}T~p`abD$DLk@q5qR=UyMD#mFB+yOVy6-cm%>T5}0TU6!?Bsk+} zDgl_K>($vLTEE##sLnH>)tpWGlwZbiwB*4rCJ-reOJxKhoKD*{O<_Z4YzbMA^NA>l z0$Y((#jz${5UG0Yp5w=+KJ)D-pYx|%apVBvK`z;t$uKG_>ReT`oWb+odm1Qz|(Pv7UikqF@of|la=N9$UDv@$!L23IyRk7F}f`mWMVHZVUGbT=D37Y zLm>}lvpjGTmaVsI?q(0RQ>|1hnqfN@_$v_HG|chTX}3C_@5OPrv9;lPE+F}nzxh9W z;cvbLOn`YTuk6>&%9-b$2g`l*(KmePhkvM6BiVA#>0>#=C#f(R&p=|8T%hUGVlX;R zT&o3;MHrg_&vcBM&q_nrX_`=$2FFkEz?3g@JMHryXSdT{61NjU>DBJPa^YdA3U})| z6x@oqe7Tnw9Bp}qJdQ7|ZJoPRd+?2UlyvSo@yS2`ug3BbW)|Ok@;jFima4@}ocgQ=d5V;*~%A!#{e@2j0z4Mw-uPDl?ogUKI7$p$9TI%F0>2YL&M1 z2*Zk`fUSZbB~if2u2^Ysl9YMFWUwQ5=Ws89WvQx>@;r=2S840b*~}Gq0UAjb8CDcP zGm;{!hd38YYu^gKvX=>ddwXEua_WD&tO}K%guu8QH%HTzR7Q=b8i5R}sY+IqbD?d3;HgsB5iT#lNy!qg z3W~15o%w>84koi=+eDcrD~rjva;XrN&EhDarU?9Er)4Tq9#~M%Xcsr6oHKAm%ciuc zc2{gww1b`Ms|qvA?fH%>QBamhmZB>s?po=+^1_psUwz@s(~86lH!dB!_w?#ghj*FY zU{;YE`&U+cK%3=5yEK~(0er%&hmM8j#hAT$^XAUZ4hSLhtv$1Zy_SS&1Rc)M`a$t2;F0$R={9#nx zPM6KOYOM-!B+DweEFf|J{`q&j^^qsP^Wveq)xb|h%3j`GsZ&hYOTS1*vGI z%+w3&A}7gIPog}&&#i8yh2Admx0|wXd(}?ymEAha#X)&w9K*{(T$mDIjy7SX9BF1Y zv3qN4PUwYEA~#x;Zav+xu3W0L=H@!>FMa*H!u(vqvCn+vYsZcsdhBg)`0xMOPyNro z^_jtNaOJB{xHmRjdl)mZ7X=6JIvVBU*3we7+lJPq%(IzI1CNy$ux_gA1q#Jt1c&Za zt5&&ath@Q->b1`NazoWHxI)^sDb+O1b!O1i?N+Ny9l`)90<g zEGMef>YUY^j$ZJpr+pok9Dr0AeAZO*8XpUx7e^Wuv&qEOdcJQ?tLlR1PQwr~Tnb{w z2i<|;k{JPtsgeu;tGG?paeWXbg;ns(c!n5?KF{%_BL0%#kz+$kSN2!C3$@GFcGj+M z19)hMt~fC@3by0!0?#kXI&c_Wu@_J{kK=OyysqF1%-Ep``X~ZqNm(w!ut)2s=9D)b ze0!(SRAt3fwN9s_nug=KJ1?Ixo#f4jmNkuYz5dQi-`i(sy0OGKcCPw!oo*Nh1zX5s z7xu|{VIZrZiK1*Mc;qezE8jUx%H+5Zg18+1NS4@4Yw>20HV2-9)g^TyTdxQPJZr&(aFiNwceP--$oW>? zcc2y3l_?W5alAIi>Q*IXyZ~C!I%+x>{gYL4kq}$014~P9dz{f4`PdGwygI&kDabeK1+K{Yhk5jcW5p zKm1cC?%&TW&WGb|fTM5w@O|KOQj}PhRcW^vIh5h9Va-hR?svX@b8Y-z|Ll)1Z%vy^ zbF8Qd8U>_#!+{$|Xn%;4a_t+K6-}qXlj|A{MV8eK1J->f&l38+%hNO(AuP>*iDFqV zq4X+6rndlOf%hm97`TwKv`H93Re^(ps!%q7hd)QW433-u+<*>(NCo|cg*iWfyb>a) z?=-$Vc;))WmOZssA3f1(wIoHO@8(6#JC3FG#Bddrrq4shG4pC8}kan?ylj6C!R#haWUMxgoUViB%O57yTz(N&H#^WdmtJSJ3E8fh$ z2KV{E;Z{|m9sE^QkW`MD_;H|%!ql|})>ukn*&V+3k>j-bgcq_XrXphSgzgwD&>r-4 zuBJ(`h{2bHmSZuQ!pe%yi38gLH33@99GB`Q+g_vAwp}NdIkqUrMsYMs@xOx$`0>I% zCE;w_3LswKwo_q2QD46D0(yu*go|Q6j<{F?iK-}xJ5Kzekh=D?uUBpadBPdiDN4+(H2mnZL72>0aRk6kp z2W?$ZB%PK8|8$uqqo_|?BdgBKmWJhbXZ-Q8${D}d+qDb zzH;p0w^t1F+fRP?_dorq`I>ZN{Yu`b_A<{iD}R0V>;n(pTZyVtAn$BgT~^rlp0_Xu z_xanyJXgb!$L6Xiah^T%#=dPiYcE|~I<(rl`!Ela@r3T&{BQnmpLqQJ5C7l)*T4JX z7cZ~0wK?NBI}HcD@p#^mJ4z_Ub`+RqU4WwC_!yku^WYeGQHs+XF9HnLJN1Zs8#IFz z;j|4#(J?&1)_D%&1mKGvg36~rW*i1l;0MmsU?tA=B~51}-itj&Q4`nK#=a~HjH2d} z?(!Kg{>G}^#)I0x%#d*-Jd!WJ@oAUju(tv&+2dX z+^H2=Zqv|LmR7Bqn*sj>0GcwJO(2^gw`a2%AR-BEClN9)4-(oEk`wb$o{XuSNS;~_ zshJ2*7vq^G{RxHA0IZxCxgnR)cG(W4dhOY<*FpEf4T?~}BF|=UMncSRzBh9{w@mqg zg9rHqer;`UZd|;&u(*Ur^3$ZDm`)gttm(|pM$?U)J5rpDcDOCV7a~ZER-|Vpi7oKz za$8(BefQ>-rRA2c@*#P5~C1|N6rmI__ZKt({BJoAhH3~l! zcS~96oK)0Eh>G}B;kL_~GqeZ@tcErc-lbQx0-|`A`ipk<+0BUugwZ~q@Y7Pdk{fH^ z{FadB5yw3F)vq6W@P2ssz;kYlhc|9q`1mLP)#=wi`iA$st#fdHrQ1B;+kkVP_6BoD z7QHxa8ujh#HxEDXz^DH6AGZ$7fA4GGym{@$xHkcD5SeWA#@api-XjElcdq3|$)%TG zoOh-Njvr^mFbbSp7GC$r>rVdupZvqOzVq2X|1V$qyYJxz=RAURbMghuVGai^I zsRzj1G_|HKZC2*{xkMZ}Dys1TSx(%2?8=qv zLzRxM%&Aq`^@BL&xBHXH)Cp}ralH9j6)iR%kC;r3nAmmw$z;MyVp_>O$EWgy7=sZk zJ@cU{n2Z-iHl|ejf&v!1h{bUd)95Z%A_+NQHV-hWS(XR&gTmcIOW5-g$r2t9bR2Fj zbu1fTZo9ft@x2I6hD?iKK`+XpZdmA=P!JFxz(E6zmof0?gy}4p9fHB zTjQD8Y|v(aXxPYS#54$9Kaq9S6yQpVN2erGD!*3jj+4=DH@kI2i{*j4yM)m_za|5| zc*w%3(`JAyCGG4k$0HCiyxTpP)pZOqXwPvH|xV2h$dpb#V{eStL-)$W{^7XHL&OZD4x4z|zfAgPTdiLozJ^WBplfCJnzjn3Ss4Lwr1IZDFx>C9QV`yPf<($F=PxxF@q zJv(?fepLrr!R==$Xo!o^BFhwvqt$s(`WY2tC@ND)K^Q^m`F?oq=JtL;IMkV&1yjee z?8p_^8dVA|vI%&6m}N6!I})@{cX{!F#~!?VedE&Q9Sp=Y<3_n9Z*Q0yDC-LnX@srt`4_%9G(?Tqe7+a9FMK0Fej~{Pu#$ZeE0wv?lDQ=A#lww!ng=& znCB1;sl?(g3cG=s!Y$)Lik~TwMf{!OSr8g215Az~*z*(+Kp(*8fN%H=2oZj3cNEWc z;X?;IBj0!6O%+WAaHLEKU6KpRwT;nt&s_E$|E~S>uu+!N8M!W*{Qt|`e@9tzUFV^A zT2uf})s25CBPFh8PSmm^|In)8TgaO?4|*ojUctU3V~qDZc;u57aaox9_d0TUBSD zZ-3uD`|K0?EH6Slu`D1Iry*_s7;)FSue z(2t|;NLP*}7J zs3o+jXcvV`U<{09eJ}u19Xoo^Ee{=i^IL?p{M4WP#rl(9sn@4fO|f;yP>eUd>AM#e z=1Z2^hK{r508Ckod1*K5>o;!v(PNKA|99}Q$3HcH3W~_3<5VeA5H3ec;5u`8R7{`X669 z^R+KuI&-7m629jLe(b=ZBeJaGdG10cWo-54_E(>M7KAeQxA)c<_HYAQIW zH`d#JV`}NZK^O`|Q7=hWx3+UlT$-PcgKW?n80Nfcn;=S(lH!5my3w&IAPYBI&B`FC zg62?F%Oti1@WRJHVeBc(C2kFf03R4thndwPJ?LEuR9Ol5s`dml4}xaBhBu=i+}+I- zT>=3cc)qTfz#vo6<5D?ue*N_6Z%j1A=`nYH7812c!r{*9YD*De1iel_9Qpw+9ZxUM zf$f?`!^gOCTwy2?hf1?7g(@Lx2SN+9$1A!{>`)Mv0*0w!a0c5@b1*T&KDjpx{o!yA zEn&|AOHc7Ag;LRE3yNKpRVGI?^ z?Ul9n{=|QL;DP(U^5j?Yq?|r9H5~LGdBej~Q&YB)3S~D*b`?F#i@v0}?u2_s{ow!g zTfhDbKmC(A{7ahGYU=dz;fv=k&rMF~*0>*VXa!4ga!v9%JGU~7%4W?w&hy-mbw!lm z9ng6p5Aq^cOpjbPnTv=fCohK%fZih5U{<(tbO=b)QLn&{V-t$eO;xi!Ab@d%+sc+_ z_6zOa*6LbktE;K@7yscOzVg}6GWfeIE4Ar^YZos4-Jkqf_l2*$asR^2?oK-oRG@Y^ z)SHboi%Q6tdi{?d`|$GNrRC%M&tJSeIWhg-fB*03N_hVGmmWWQbYIBqJPAJhXCGPk z#a|M4dN$9RH8bdR;xul}&ge4}N(MUVi+QB0+Vb-J@~^!2pS6Ezce@>j;oR&3^bTP! z#^bjV6`gW$-R}jz@vpB`amQZYYv$wZ^RBus-xcoFsw40eXV4 zgpRgcJg%*qYZorx(4<)6Uk5Y8DU-qA#QgZ;#JF0sVlN&7z!^>M38K)pZ7$KWVA%YG zKr^XIqYxk|bnzrq(IfDiu8?4>k{Yxn5zU9n1PZRUcXqu&Zx1bDj{&O?6%z5F*^o@s z7T z|FOBOy(^m&g;=UtEEW~{-aeWnq+k!UVqZ4J3=P# zEEQBS4^|~jo;$curm?8%x!?EteU>NF6U&0`L>pmia_)!T{jSIV^f&j`81`_pEZcOP zC`*exL;Ik&#&M*94igihjf7IQ!IdO3Z_ZAoJAH_kqbH8<^!l5dn@1K8#A=2 zkQ7-2@kR%L#ik*6F6Ua5#+GB>fB)UXZu$?OenL(&A;EVknX2}}e09B}7lq&TvUawe z$XmdNH@@cmDL{Z4EZ?o+ z&n%{T48SbBHgxm>jZ`5BOTpkrX=kWYiKGdmzy+`Y*F9o16r02g%T!^#xPV&SUf4I) z-u4t3oy5}Xdac2A6W=1+B!GpTHFb04vL%7pXR;;(r&qh)OE)%^xv8Wd?ewTT78DPV zUjQlS``Abonnb$@tzg}^6b88naDkEXsProZOQ1vPedtvhs1?CoI-ckEygjspJq9dL zK??oA95^Mv&~yb&^nz|RfJSoH8+!OrY-MJ8CP)%4$OaHd5FA}LAg+sKY_j!V|MSoO z_J8~RQt-FdH~;qU{=4Jqe*dyg@pBWRi+NxYkuE!`Y6~n?Ah1RDJ@0tO{Mgi|KKb$O zGW^E*GlL5oQP|tu47IHMlNXEmIy*T0^W? z$U_30u2vYC1=TAi&qh9ka0>ql7!w>H6#eLR33tfFQGiPnJn!a%4?NOxTW4Q57o{1W zG?fYW{lEKLVm#R14sUK;`}p7d6u|ipXlxGf)CD&kM{Ymf|(A(0oB zaoL)cgqkg>GKU`o?SP>(sYpvHjpaffZ%q=z@&jD5qSyk}i5vppUbUM<$)6H93i>Vn zgqH$^mpNL7e())DIa~?-z-y*iLw6YO`<c#$(3PmgKZv`}(mr zzbUaNOP?y}4`JkL(`_zttK8ff@Wta(PC(W*=!s*l1b10&r2Z@sm;+oe43c;y%VA5n zsVW%6sIg#C008FNXcj$U}o(NzmJ#H}HqJ&Qc>- z#QPL69Qo`Duu=-ILB&?6`m!EGD~X!KM9F6q#fp<8+*7;SYe@(MQe{R`qPR-6Q zs<0v+Iu;joA-J-+yL(fWq*`rUt-H~7@5c4#r)HbRkqMQh|NW1C?eLxV|H5y6aC>dF z264H$yRx##)TJNIKDhzcud#egUph0mn9%3cvim@a}J#W zxj_zaWI)&iaupRBuNq_oUf7IMMx*3e0+6brza=~<9>TOaUbpH&5Gf6N=jz6pv+cQF zn*{+Y{ZvR6mQQ@|yT1R6fB6x`)=ob7U{rTp9Xfc}^LN2k8-~-_?lQ#?$IYkDUj64k{VzWBo4>zw;0WujP<6+Y2it=z z$nB|dYi3GzbX;+sq!1Mn*Cp!gB6*dppvGs3<}?z20KKrZR2Q!AtvT%32I7ORUR^jv zb4JZ^n_G=&3;r8*2_jLK4=pb~`WTq`b&-`x7MJCAu5NI%uS<2kUO0HL zH6z8sxZnms*BUd*#7+yn)D3ap_`ahHTNf@5&t0vh2I)bKW&#t3G7Q^MMM(j98PStb zUk4VC!cw4Gx+2q?Rd}7)ezigRrg28Gc1DsCd%`kt%So2nvI2O5*2Fs*x{ClBn&AMW z=Hy^-z&P9?#V};c9Uq_CH!M0a&;2-3HA5Bn)*#Z8)k)LTgk%)O2a`<)EJ`TEhR06H zViXdQK=VhB8rK8HhKn9uGoxouE*zK1#XO2Kd~ZKZ1+W!dz@BEy>@i@?O$tuTd}b75 z2XFFD%J}NWMqR73IDs#Shmo8zjq^JX9MH3T!iO%-!tHCjL6l91_dWQ!xBSY_-}At0 z#upo^t`<4?KPZ7B(^O}Ddv%S=>CEy`(u1NZ7`j!fAG4hs&pcC4)(dD!-}~Mlc)P&j zsi~Tfrsmje^QcP+2=u&EK>{5U9)Ik2y~~%JrP)5+mhb&KHA4ru0Xp=Zj zlNjw!47@C(=+;vL^Ch8(b5giLEJCkh!t`roe6&v$&Dx$HJn`kvefi7J<6RR!p7_$| zp1S{g-gWxLzfU6LqaS{3^~&X?gLkiKmFo= ze*Z9wBvVVnILwBviJBkpW<{*&nkOYtdy>dmn7A{>rH$k#f9l`l5Kd+2Y^i-lr2n&GOgnt%oX)#n*{y$ZleBf(U2S;zZ^A#FVSsiXE@j^^y`##MnP zbLXVc#4yqZ!Bi=DD&<)A{JztutHiTZbRHm9lFC}$;j%D)aO#B@q??yl2ZLf`W3cg| zPdxIbNAAA&F4@VLkjb_ql6=VpAFhT;X2Adyr5Lh8SIdK^W`BtNv!|Z^?69+AiMb~3 zq`G=jXm-MRO_@+@je^rkc9cnA7r9xK8C2mmt*Hg0N55yy?T)V+Lu+i7qUt5_BSpoT z(a8alOt&>%rxFONMJb(dd@v$%g*1Glvy39!Syg)vpp4xh15{n<4hQ5aS&!em*_Wn0^JK|N8(wM-SR ziQ<(kb4p+?1#hJ=rJ-`MN{`U=dKnGE0GGviph5;R?wAgcN!C+b1@ z^XNNORey19x4k_yP18ZUK()ftR>AfDfLsa~6|Yv9A*x%2t`wJQu-x)>_&?44Lcb{0 zV&c|qll!U?w@AE*rlQ)5M~=P4){oqY{l{tzIWPK(m1@%QH#|IZVCh#Mycb|tx1HjjR#WiF#U*fgh25wPGrYkjT3Wl8 z{lb6z`QQAn?>ljDIqB_etzDm)oQ{Iv{Bx)G9Xjf|sil^HCt6@gHsA}%6ELt)s38Tc zQpmFIjZ1ZFd~c0m4>u@5)zsx&Vo4kg{obG-cKh|^1G3uC6^$Y<=sQd>0OyKcCg?>L zz^K&u@`ghCakH4q<>88#Y|{K>%J^pPVQGe?db zJa%|lwsj#6k}N2Q4M}#M*|jN>mrN0Ie&yo%M#Dm*qnl-6WSWX%x|*mpjha3yEFHdE zR^1;xern%=CE3!nz*jY(9>+6>+tS?n)Ho^aJS)^jo-2aZi+SUnO9@{QLH&rFxsO|8HAd2)g_TKBCxB6~ssD0~ZuFBhxCXMh%=1 zR?7~&_BBGz?)<**tImd|FR*W^$WMIr$(YhA`MJF{hCSTS88l5(HJPi5oMb~)4T2!=woTVG9GA;L7_^)W&x8&u zL#ithOdF7}c>M6a5AR&QaxLgbYTbs=Zg)DnozAH{P8>L}Z*pp)2z>#N2d@BXK}8+p zlIGP@EYY^DefyWnG~He6;-jWzG?-Ek;6Et532-2IqLDnn9exCWiij69oD1McVO@YK zSQ!U9f>_HSw9?W1!HOgmNgRSD!S&(tfd$}q0?0Y3T29W3W{yz=3vvv9O0ozrc3l@c zgh^Uq1ehExFj9>;h>qpZpdl9(NzJAi#h?64lmUN2mS#*<(0Kr1x*^-fm~B9&XfZ(< zFgnRu1Z}}|9SVYcc$EeQON70#EE!YxrIMfL0j^S3R9sxjsms(gH7@{HIWAsRH1r%` z=rBlJL$EE~bQ-2M>~{Nj7S!|iXxn4JT0VKlTfgTm`}R!-gRYX7?X|7vp8D#|sAt>G z!u|tu^ZO=eW@hJSo2`~$Su`6S$K*-T+s1=6G^jQn4#2&FfxjMRVkW3BzVyQS#!K)0 z`S%3gw%Ks7A0{KkkFttPEXN)RpL?11=XBF zpQJ$nPRpAtTQ59#W&nk?gUlhu; z<&b22X`6b?3Pl22gJp{a`T@kOZe{|Sma&u>Dm0%#BaE$;&%x>wr%5B|%4`+L9oi;q6^;Kqd)gvgt0 zH5+4-iPz@au&cP>%&Ipe(}I_#=_alOA|bfe>eCnS9AMacYYcn1fj`j_dWuM})oSLG zlfCwK7==D05*`dKV`kt9=9Jb%z!3$hK&#{wj%nO^|J`fXRzCmuQ%n*K%LX4g{p|Bz ze;5q<%Lf*wrY7<-lNC*-X@ZIhaw`MNN#qZMpfx@wA2}p5t+TVMmU&av>T*u0nMA>u z2yawUY8CNdIAl#JSY>$SOl+XZcC#&RnmQ0OLFh+~$6!;@gvD57IglpNG7p{SiYN{piA`bnm zpt^cEaRz6FuIDty<`-G3?(c5;14v7$Ah3cN&VlddAoLbEMXl{1$ zfj2)axF+>uRj=~L2^{dq*&x&{i^UNdSw_E13ck6~?+*Gqy~gZJXLs<87q9;1Uw!P_ z)vLe%*zbTBBwK+|w<+SvID}1=maeCG#;_Gl0(8W~$g!*f1_W1OK=yM@RT99zh?|s3 z%}R;FlzEZsC0Z9`s&Zd6E&{_N`XY}8Yeqq-S8StFyd%IGwIsGG0H3{#Y}H}pl4!rA zpujDzDPtK>P?F(%=(|)^V+F0^os(ElElbamtdL4HHVs;5IS`PdFi@?wnUsaX%ao!R zbkZEo7v~_yD|GsPtzJ{XI16qn8omt(=tV*4N}w43;r+k5{WJgnx4!;$VNtZbz|<70 z-XxcvvBZnur%h1@0VMSeC^R$>%X2S0>5L0O+TUAa*u#wy9kWye*Of$5(=5k9-+-%P zVV0^1SGZ=PFNwOsb=@E)O5O)BBm_KejJ4kM=$nUL{|isQq)1Am*7UvM%GK2*@H_3T zhhP7o>KK*}xhU?f7}jB;2ZzK#48 zRNXD1Sfwhd3Qo$099%wO6r9F;ltd=eGN`m^T1k1B6hFn+5+>1%o$79@#L>~f+=%Rt zAPhvGreF(#X=pWO0SRybP_GxpaMFN5fEa`=7#5h9s+6{-Ksu^$fkdC^hi1&lT9QHf zQK?eHb_`WWqM;lQ@d#tU4-A>2vXn3Z>!7qBL5Mo-<)!-m`59i7zb9cKm0{fT5(}3X z1W~WoOA;EGDhg0P(bi?|ayUdo5p7jUX-sR+wmk-{vhYA@fEPg$fc(mn<3i8NGI*>~ zNJ7emlJJc(rCNeicKQmQM-ufmx7s(>HOZKn-FI;L)U}=VGtZv;@P|Kgb+-$baLF+*YAs1bA3tXN8PY@i>Fgfyu*GX_9MBMNVKGRSt`s5vD^!Xq-Vrqu<~Sd~s1` z30W=05d^zcOX!v;mo$n}Ns~<5$vA+z45K_NgeU-BJ-c8DK(xIzhCSS>yy_}taTFz_GFVD~qnjtfgkq_# z3O8R(6iM)3mMIXAq^}DI@gg%MD7&}6>-z^m@r`d>@;W`ossX@vcLqQcXrepsIW;jR z$+lclLGnygGCU!$Sy~}NfpaCd2C-+ze8N-Bc1$v6^c$89^GHl1 zCd;Z>E7KTHkOuo043MIE6q&2|ohqjf-FNiu-*uP4p?Wly$xKT7!*(a0@I3FCXP!~S zbmHieY1rG_+gn>(VUR{n;#j$E8HR1f!K*maT@%6r!km>lt(RmANesU(l`8rq$O9CO z0GNqWnhOIDwYl5b-rC+=11wL?E$%yfJWkouXP*1(kALEcr=GazXZx0BudHq|q14^h z^{+iKv9tikkcF|*f^p)BGjJ#YPE+DwypHM6s4Bc(M*0i7K;o$+0yZiwHcD~>x{2Vo zl&M;Ut0dx904#xq3l*vpS1~3~ncI;pQKXULks72x1tpPI?*pnT!t?S3LwZq3LQOX* zHo&+hYp|}85&KdUU=Rg#Dei#_AlprFRlF=fuhN8;LlFhdRMoheP6}737zPn8_IANJ3~p6Kl#Kn&p!L?JAd#UCr%vM@q10( zv1=BPFblInOF&d8cVDrDta$bde{XZaf;$J4zgjo)ZOr%H?7(r@Ke2E z&FyFPRs))`NGWTv16SrPkLh~A_yIg9dsznfmUa;3d_ zt<`88JTPn9POAx!=iBQ&0A@~;rj>1~7P6Ol4SPNLIq1kn1GJY|m6RuOXjoM_qhvr_oz5)YU z-`bd;ZX7y%QcyHWkn=dHo+gMBgSVly6d^TKxU3=>21d;#k%(3=3Uo)>KhF%^h6w-% z2;AUvz$D;(Y5f2h7F10#SK$@&QXVNg`d7IjdPOi%aVy$zhZWHxEW?o$bgw2Ej?itC zAx~}z9G`L;MTuoJs~WTq>|NHBG)Zvh)c5HCs=*h$5<1I;33QFVjZP`?q2muBL+M~*}%CY6e^ex}f-HmSE?530(4ozew zS@_J?zfooabTZVUs%!9t5|mO!slk!^{XTdE_4ABsO}jucU5`teWLM4byOofhgZofT zP?g5+Dx;{7sKm~&uUlwU!P6)>1+#5BCWtrMnq~?^F;D=Dn3tkc2;$cC)mw94s+`i7 zUuz@{DF!dmQWW%Mqd7X1Lu2YTTo=AqGm~7|T;EbOqh=Gp8-{^1?{v1MB!*ToT@!>X zlO&o*2WSDm(6tPd6+Rr~l!IB^O5x$Mn!{~Vv>46+@+I@a{#Ix6(n|pVtJ!Scckdne zcHi$$wraM%d~o4-ci4+@Dp?A$Brk`;-px|oW5D9DCk>iSrYLg8DBmYbR6!MnfeueJ z-1WA*UbjCO4pX=%R|l$ys$OXN&E3xDKL7boe&TPt9uN1)UFehHwm9A@yS>#LJFj`o z>%;Jx_55mW;o!CQdOcx+>nceiL3P9F3KX`;(f2JYs{-d}1cR8l1zVC7jaAWiu$#)w zjppj3k%%LqovFcdn)gYutXD*@UY>RU7^AkkgZOom;-ugZ#O80z$dE7yfVWWe9$Y&Z6OmS|ki zQ$A3oB1x%)fo%Y1Ox>7Ypc*D|;^R^bMNU|RkIROF{_tW{yztjgA75(RcW~?NZ+_H~ zrHz&Lvf><^n&OuB$-j7Pp(WUqf&^~7=cPOLY^$D@n#3g~`r;YMq39%%7<4-wt~&iB zU)}iHZYRF$p2Pe0O=2HeP*M;Z!;R6#NnqJ3_=c}&%f}Xf4H zuDRu~$vsb-ftDgN1ehy1mFp6ves4fChV?{O&;>HUl3Qnek zs^)Q{9m!NFf1jqZ;gpm`Qw5!9!la~|x?mb6=aC4P%S(`D*HNR$!<84Z6h#pnT7X6(UY7gy=FUxySl#h z_y6$OFMaVTJZyVR?d6Qc=<0GA4n$S{!skE#!|#44B<7bs_k~jr!U!h?-AvRp6~m{$X-*JvJIbC1O|V2u7IY1)kPC`J1+!`R9gnCe zGz~(M>Ts5QnrIS}!-mU%6QudRImO44UezcBQ@2kt+0 zWO0d#yhD<}Q_+~eE@VnxWIcbkuFCaVYkFqk#&$l;Ae5M)@D!An<=3uVF*WtX$>R;D z6%K;Dol|rtO|-5ni0J??i0bAqDqws4#}XmnyvkDE<@72`}!-bpAya#FDltL6oe z7QJ_CCG@0wf6iHRxUKoI9sJEJuuSCRp@OOWrg*&-Q~$k?#L zjAr4Kv+S9-5k>nicW3BfDHVI~Qd>=5l?)?`jZX^Lm6RoZ7x$C%2WJcAiw4N2Xg-F7 zpUVh{qtFPu4A>;N7LNsr*;^!BMzxY@Ox@OhE=(zo!dEi3WmNxbAt>KR{vl_B(gAga zFc^VWCnOrhL96F5gr|y+>}TmiTDf`tkFcTF(~&bqcv98;?kzIJA0&D zE-B)wNFDy3%D84}6mGKJ$@+02_w_-w_g0|*D#7wW64*&QB*Jl2fTK?66z2OS*wJ(b zTKwU3#@l>~?%I1_^O(6XO!3AROT0Wq#*OqOs^);TVdv4h%KZ@j8)eQW_xR~)BJpE^ zO`NhP>%iyyyKv|^LU1l!blXu=dtSb^q0Of7T#ELEzm;ju-4kMfJU?@ZZ_6?d6rIxQW)mzluLs=@OQp#nrDO*{0xgu0-_Qt5$gb0B zS%M@a-?}YX@7vk!@(H1Kx4IgnZM#UKBP(#Ou`(4^W+t>`mQZ9)6bfxfI;98fT0$rQ zgodGF+qvG;?(AekXw0D8HLnz5ozPekhZ9YNoEz|6%;Lv4a7*5gc$lQ<<`ZOGn1*gc zJVQYwqF7i7ES_N@b>0rtb<#JtVSB-P*J)?&W(4tqQCtYTXaId(l3yWbj9XX|C^|A1$pAVAcr7uB9Fa9bS&l^- zkCcI)I^i*l&261WqE;I}u~2yn8JQFvD$9uN$Jr)wiF z>aS35+&7rgh#fwj(PeM@?)%6J7Dav6`D<=o>&9+%I=otBi~s3IQ}-x$}Q{;LOAn;VV(V!UJR@s1{JdemBW$^GRb%|4yZ3P%dbg z1Bd(t;sh#hhe%Ukq8UswOgM?;g({>=Cc340&F*rYO-_F1g7g4~YDdw?Z_6f~p3emF z02)kWDDIeZh%}UcBo_s43ZF<4bwfFuE0vA#EuIYpw}-v~#fk>1iqQc%7>oDQ3%s0u?MqWC_5FQDy6MnBJ(%^-Z+n>R~{nOc^U< zy|jDvM2jnQZ`I^#H5I4)crrg9ogA5%7#*_4?)f$G_|&4`KLstHc9swk<868N_KjCM z6sh{Bl!sK@8m2hxX(n6-O>X0Bm|Ws`ZYPju z3r`ypgDw1Mn_N@QOi0&Xf66qQLls|D1TB*^?(b@Lg_xZ{WRoPWwnm8p0*1I)V8f}H zAz#VzNpS%W@dN6;v|mj;kr^5!VaN)EgikhaXyn?6gGBGNYN#g|B9j)F*Z42J>dXbI z$X3RgpWrakl_LrhZ(|*fsjdPtW2_ck&e42Yl+nbbrRu@G)^h9|UMkOiV#%DzFV-#N zYVGa4Vu=u$Js-xbx?-$~9>dXGCT(rAQ#5KTrgiVtelauLYh0Fyto;7Hf+P8`=37$TF{ooVEQ%hWw4ZBrk>g zX335N;_s(Eo7R>>Vr-7{7zlI&#Q;?YR?~DsO!+Ht_W6$8Kwl$uHR-Tx_p0;Aq@>Vn z79nwdQ7X?R3;xqT7mWF^BZCp2jJdZXh=)pufnYTK_qfC$(0hqHi)I+wi(FGuvUi#u zMhS}CX5-Ijviu%z_1*v5-g)Kjc>;bcliTC->X0y`L+Cl!Pe0>PkB@{;F&n|gCCHp% zcw*Qb5*jL(@_ux59-V^l2m7@}A5Vu92nzeD(=OEUJ$5_*!$_-qMY4>@3mH6$?}fB4 zrAV3o)>gE($9nec>D;&C(dPQzdU(HeXn-9~P%$ru-qI=LjICDTu$SYnT6SRoNkHoa zk|>wz4ipX6lA4cui$Su3+|f>Kgobu7O?X9Fo~ep_R>FAJ1|`O7SrE3dhiZA4F#MB7 za%!CLLW9*P1o%0ZOH+sE%gL?)(kJ^w$m^4cr@Q_4!NEszvz*SFcCVZ9HjVaivgP6X z(+KpF&$<~xN(uRJ0Hk^AU-r1w`+=t=YA!Bqx5t00K|I`+%;yQ>q| z4-Y`LaG>>jC-)vkMBdLvmL=4h+L;#5>McrTa~>|9F-Vc*`6BwsZ0nN`JEQVN?Oj| zX?uINQmf_lg#(t;<=bm!k@QPe{W{K}>4XlowY+5xW1Aw}|0r6839)kML38}74cbg| zf|0sx2Y)zEh%!H5QaDAfJ|jM2h_G-B{mC9zkSWXay7T?tM9r}&3R&UrJ43%A)q0YT8&O`*SB1Cv!yQ~(@0HU=x+-g%%~iE+O!(y% z&vY`A5Lmv_dKP(l%@(Dws{@jU_aO7d4Gk30&1_t+#fnyF34X*#<^^Wts)o3SDH~Bg zfmUtxm9a{wEJn<}C-Z`B+BmHE<8}0V34sUN{wiB)j9&0fo9m|uLs2>#;AM)1B=%)% z3zhONd74NbcX#-`6ZORFYNT-8=?#xpiU#G3v-`W>%wXa+DkA8IJDW)}1gNcOxA|VK z1?MNC9Ip!O#tr5L`->SjzDr{5W+xq%OG;Bp7W+2cJr2&rN2`j>_53@73oRxle{|Z$ znvOoo6ECqe4o(@vaUxC||7AfXM2+N2 zRK$??mikehFL!XImtR8e5g^Spl^dT}kaWpcn~*GGd^mKzK+g`IC){$Qvx$E!_#FXl%;Z zXROEy#1*L%&Xl6eekhaX^!_C%J#S3FEig{I3sxinmV2O_LpjAHvJ?(VMq$ikpj4| zzRpeW>rBP9iel=@IBoltuTi=2-Rf~90?`((U8#0OngOHFJT3*) z5UArYaJ8%npPsgStWi?Ci;oP$!n` z{$S}XvyZVXi9V{#NEoqIgZ6?6dPdPk17%nC3?+-)CpTGx@L!xWAG74Ld4-=Eyhk8S z!J0QacJ>N=+e&!o=LWur`;R=Gcc|Ty;7qOtl#T|gx@{*Aa2o-DC@9XCsOs7HsgJJTEzq3q^6UB86{=rZwb&t67p=hWYF7OJ=x1jAvyL-1jMh@)CsVs%iwBoHaH%3 z(ZgPQ-|+WEEzv`&%LREXIFX3R)>RCby~)$4x5%_7b0%9TUs7oiV=PsOoV1}WB^urE zxv?jhQD9Yz|1uSE=2zx`L{D~R#1t=VCC%8CY^O=mmjI9M2f#}1sE;@{(=czMHINXD zYEdDn>YLjS(2&OpAa_1`29y=EsO}q0p|v$>iGj!pt+<^5zK2$HXhI&NF0X>xuV_v{ zHCMU4&sKk+mNWCy#+Tf^?{0-YW^Fkl10l5S;$6(_tDgJ7m*iXC7UlejJ&gh~U=&;u zQ6a_kBy7&usac0wsHB0YFzO7y?SZ}Hpxuh#2fO!y5j&@af{)WDgtZl-10tl-niioI zoe~X*@^a(ILhxpZ2!e?wGbjY$A0PtxP~GsT3$i@F-hw43-(zz1*AZ9>xO(?_yk9_O zaCWbsmvNq~BqO{Ik2=!H#7kE;FNekdP>Z446ME;3I zJ1SA*-O$*c;9z22r*ZrKcLjbvq5a&w>*k`|{o3SpqvrY+1gs*jVdF1aS&&+hRS%dS zR>)RAU?Nv{aM|`>>q)KB)!}v6E2_ZeKPv?!HqHlFtw`HBU;_E!DVF%<2o#X|M}oLW zc%aNC&H-ud3fCK}7sxqvf~FiAJ~C*^5{yf&6UL8G44k^-(SwwN3nXhnN}j!D-oInj zwOv-{7_+{2(?>?qB%Y;km{2+3fg58~Ossg0g9hpgP6b?v%s+d4nt8`9=*j+OBAjRh ziTZ^B#;#0~JZZse#4V9m8o+#$YOf;_oa9hO20oE70Y0W=iT~APp#9&t{frbv7!Rl! zq>)gAR&5$5QO@yxlbC8YF+JK-*}}0rOv>C1l{XWQkpV?iDs>q$%r{w_qe3W*s9)+3 zQAROUDk_se_DR3!!YL`aWz2xkI1Dqz0TW7At}skQ9r$OWDKAlWvWfd0qezab9lpSq z2#ct%bHqH15UV^VIWkXlz#&$Xky@`0!;kd2i~oH%^Vx|X&ZthOB#({~2#p2R(8D3+ zb4=I!HZJLNwPm}$pJI98vfyEQOuNvW9J4{aF)3i@(ps*4();Ou%C$XJ2b!eLYzp2Kq}6le8MNbr!WnTLDWVPl$DQMOQp8Fwwaz)lp(Erk__EG$9R~W z0ei!%Cem+*#;;<|Z#tMlajsMd1))Tk99H<6OpiM4Hb#_2?;=_D1EN#|-0SpSS6EIi zz}%MH!fXL;X~Rc{#XC^oNL2FA}OsPAwqv%oVt$;*^M!zB?f#e&%v@PVd- z33rMd$wk8^ycLQn+EJbqW>-r)sSghNiAQxkiG>FO>{kv+V{y*vEdeG@294&o@7k7_u7co`PHDHK{LzS zTF+jC_X8^PIm&tv4zG9H%_^==aFnDKhq6>cS*_6;#ZtBV>s18=v)6KGrb2cJgjC}a z6h||7-;Ri7ea?oN=&HU>AlJo{KDIn#dJk*7b=whLAu_Mu7#iIHFDt!(E!@21+o=LizM?ctH2dFd4Vi@_HA811mM7fQ*)|T8J)4-Wq~*2SWjv|okDRCM5*~z?Msc-T{jOw%_zodEb5(@YYogo zj4?}!pHW&}Spon!jTg5a9?w4eTc86~my+(*N(ngFQ$c>CjT>(-R!B7nYAa5ea4UqA z*~h{smM-k5(;ZkM~8U^@LOCA*|Q2r>A>W4>cINa2%4F^k_8f+#TD~>O) zBkx67n#Xn6Y*urvGD#4x(qYtt@aj%ova%raoGg1qRpk7oV9jkzlCYP@h%{(6#|qV# zJ3s_$>Z6M8Q?l$nNyZCW4?UevT4(kz#;iLhIy5hrgaw&Q;0swt366d zMfK7KM3SBaC@wonSE@gi-(Zx8qiyO+Tk?S9<1Yz`!@$ji`b8wnG8(Mrz|o`x(bW>6k!{Kl%=KnqFkY=A!`VF4O*g zM$M9i3Ehq0VhjJ-NVgTr(3<$EzjD?3C>oIV7kX6DaPeZSQlPG{dP9BB7 z(hpc!O(a}Fqh^BDo*KZg-XxI$O=KRTsOT(CzrLCivr2hiV=bwkwmZ+ zcijOO^1@Z=iLFLN%1K%fS>W$}Xo@~cpNV<00y9z>rf@bTWq=8MV%_V}iUKVdfKQl^ z%D*SWad*vBw)Yd#r!8Yx+{006WZka~vi^K8O8RIj8;Z-r4B) zQF^%f=g!@&=at9F=k@n&wkw`0imCCirsgA_kDHXXKPFYnoD%wu0U0Bx8k&j>y(N~kjw%t`Zp-iGl8^F9;ny3l{97hdc%80!ug}f+zp5nq`4dY1 zvVTaTneK+|q7rzcrn7iHHG7}1WdXOvppM8W%CeX?IToe^)(ci06-J=?Ol2IzCOY|@ zRFUQ?L*n|C^toazKZK4tnF=8OawG$-B0f=o(F}gcAkfTmy|x)794GbG>eedkUS084 zh4IVTh7dP?_0Ni>;8x%-|7_%{&E4Oh0_YM6|MEwJqDEwfl60~O9coM-~8E@8&d69y1)*YND zgM6bW>=28J%Y-lWuO0$UGcp+<(J2NU{n7;C%$cuL;IfBkP^14nsC~XVni|<#=x-;j zoSHQpO)u^dL!p{4R}8TZjSL^KUUl9UrxY!?zTLy zJ}YCric!4cYp- z2=coEfqFA{CKW?}yvI<>)(fRowX!Oc!G4_nGUaO9C`%_pRg!g*4{TSCd{Oybso+=p z(HQ$N4EcQ$tJ~%FG<%`d50WCnx{02IkD8n3p;3pLK|~Ifk;b^H9?k;}0A2O3EAM-# zlQqV7NX=@Nm@E(nyJ*-jW6!H$7f+E?6w)mO`YxaxUHi_i&E9gCq2jzjuiYx2Atw}LFKc7&gmdZDT%uxuErp>Nj%n&J$WP z!|c+anw4%mgr7UMFKZs(S~OLeOP4_|8+Po)B!=>}-K2xv&)K91U9qBZzWTAFWTl^5 zS_0Suuq}RW|NiX{SDaAANg1g|O+NLgn4{3BmJ6Jc+XG=SU;!U(v0h;2PXT67UZTPr zK%b_$`J^dzuAUoelVFi$DQ}`N)!(?hwyAzw*OPRY8_@?!fS{BRly{eaVZkyM87o>X z@o{^-(H4yr;<`ki)^Tu#cLRA6#x$-fSSHvn9=V4MD`|#14-bYo-6zH1qL~-*hG$nnuC@G#lY(U?-uS@MkOuH7YWie z>yPiTDcJk9j?ZO3nqO{CD-ltf>oZ+HGD2>W>$`hLYzxSz_*g6tCc)j(>TIXy)u}re zn>!W7@BS$+c*^}4FZDeL?NMb7uC89f2i&C0c%6k$qPM1?qwk8Kq`>GM#>^WZh4Q$% z!@~XDP|680yez$Om&RLe?keW|bW~;Ce%jegaTRQL`gXE5IB$=9_S)IncK`S{NUotp zZ`KtYp75svqz~DTG>60S$h-IE%YU1@rLMPVFN47&8vgSaFvSfH262ksGLTdaqHZ6d zTd&7nKvZNv1}Z8P6ah*Uxh##g0_|qNG$t?(9*Rd1s7B>kpbu|^A>#Tz@^ruF(b;Ep zNE_{o-GHa%PttPf(j#R)0g4hay#LD>=*10GIgZ- z2RTvVXgD~x86?^{@U-|)L>A%Gx{d4h*@IwaAw311kia0KyuVvXr8G}?lRwDpRSlvm zdjyvbV{NA1riTIOI&f)?Jcr~B5d$k8Ux+Gf95Sa@)6K})aCP!&S!$xGJOV|G40enQsNAo);h~Wjd z33)d;Oh!$mO&B!TjBJxH(xd>28v%<5m!si^iT4v3|9y44dpFuudPYi0cKTA6bH40n zx^;g$ik@OV-2VP_HBSHWN!IQ0a2Jk$y!Kw#uAssJuzwCIcH)1oqWipzZr_x!ZA?bq zn0`OT`dr=4go}II*PAhKum>BtV#9>a)KqpBCkZ&ll!I*34qp{;rSZ6@kb8zqt#RCl2Q^E6#Y%`j&gfD%F6^BD*A+b z<=TS6K&x)TLK|HE!)^YfW=K{i#cvvLPd6C`s-?H!hC$$_uHh%#7h~L<P5F@ucO{_A>u5F0#Z_v#o79VjI-!we zX*67$&Z3WouJqCZbV>LN38!RMV5O5$+IxrL#2{EU+UGAl~ZU{_Oewdgd|15>wVU0_tS|?>fk|mlm~f`tZ-1eZ2y~MKoq-o^e$fixg>*%nsTc z-YNJCr;3QV%a7y_6azo>EOUNl61x|M+8CPU_6QCz~rVsO*0n#D3l!o6HP6QJzOqDeTxn8EgPJX8>5Aq9v zc9WDSz%bvz|21$K_7bg_Q5Hkl09b?~!~^{3HH7$ZaOE@W*h4O9rRNM$BpB)LsnZ4s zxU`H>jY=?a>*H;O&v=I@gy;Aif#-FEZR@M@`z)2`+f~>7!}BL{I*0)yXYc;cJ@G+c zIKNy0g>pDhNDs^6ZM0Cz3V(LQA(v{Dcw9!bu&OqEHY>lLz9X)_T%);sUB6tvh7Ux) zm4#svVa{(izg>z!yc-eNz-j3~{z-t*bHu!AX_@&P$CFDpqCl-bdKel@ttuk@{b-^Q zPd)7eucw^Ea@=oQ+6RZTjTcu6{E{ii@`oPOA`X9(Q&l?{?}41yB$ES<)c!-mt028e zh4Qc4rgs6CcIBuhry`je!RtKJHm%Fq;~m~)207YlD?>OFA@=l!L6U*Jkq{w5FewHXdS(%xF0pn3T5Th&GO>cynF37I)5$-ER|@46gScX>fVzFq{}s} zOw_9uz;4fJ+#)u4f;f5L!fBJ@%w<-`tVw&+>mq(M_&g>$s_T1Yi>=2Jz0d-6XjL!k z%mpmB!jH;Es08H<2}NGk3x({*K?B|htOw!cyyyMO^TYNkK0N?fPMA8$GI%0PDE&N? zZ;R*#6i@iZw2^?Mz7Yq1lh<+T3KZuH!ukV{B5Kx)MPOjrVxScNg@PW5*1R1FI3f@H zjVK`KME)y_Q!E<2l01<>JJ3s*@6sxS_g%>oNInzliBm;#o3<}Kb5G}Q|S^LXqCEMUo}*OCv<(45IA!W5q_gm$ zNb$CsOuJq=$9V!~B?7Gm5Dc92#1ejdh$TqYmsuV5(b;CW0USJJ3fBuV2B(PMJkSb(EeBc)kqyRBd1#GW-c+|o$Ff4* zyyj2+r=@$$lG3VPt0m$PL=kmL7i^Q4g~MTKm$nFpOZf6*gY@3jY^Z#QTx4#?FHD$m|&X1Frp+gLK*Cl!an=0L%0n>K*UZC zSc2o>J!f0Z%E$5Zz3&KGE*ydUK1ghNy<21^Fwtl?HL5hOr2q;=Jx@FWJc;=6^2DjI zn6YB;Ne$Ti*9^KTuDFASn3*z#2qgqG!zzROG1%AebeJ{==;raWIj5@Rw`?7eP=B6PQ0(l98~#Y%yP4W=a#tBm zyu?)s7AIb?^0aE2AjaOnNwXL(n%!>B)LQa;^Uv5R3D%e3iGTal;fJ6Vx6`MA zT><9u?@A?VI|mB_b+d_rM*1!2$%0~1F0!|#PZO(TnW5|?_&v17G>dDqKzb8S)AZ9ByG60bq zVM9XZckHj>T)3=IuU4frF)Lc)4)S{hr-8-w;+V&H~xti zA7g$L0=JW9zr=`z$s4H38d#yqH!905a55z2(KBEqz+j#Fe-2Bu%LoX77q*Db|IlmY zKHUoK03otgV$hIiF%FU~RZfvr37LuTi)%q+;RV%5?aEj@-il@QMzCO?*H(XBFhSiruDW=$CDpyPfFhs?7%V!y zv2#B+bh81EX5Lmv6`a53I>E1iI;c$O8z=HuZ|R>tDM}h_&g6Urd6_Y`U?1L+^k~Bk zezB*E51o!`*}37YTJ6g@KsMMg4DiV=RuTt{A0N|!DQMxB2Y$@L8OAMQfr_)Ox|w@9 zR`!<^@}yAFoFo~!A=MN8y6Mk|g87%P6CeZd;{jTy2cHx&5Ed8JB@rwkN!BP_g=yei zrJiKehZ$oa2yR*+0viJV1GHqD;yLW`=IFjN_FXAb|2ymsodsvepB#f}G_YC(!Rp5!dTKDa(E# zLBWBHXTZUz%`*iT-+ov%s^>)z-pz%z@Ip9CjI)}mx8en8)%@}Mo?8z6?aXv z9GDfio*!qul;Y4a=&C|d(W%v8aC4`uN>!$vx!n#(zI9O#I`$hfpoF)W^{^3}>;Uoch75d&F z{+C^fR4%b-Oe(g+z?*2nrp-@6>9+Wfa14$r+FetKFUi-S?+ZfDweQD1zHd290`Vwn zke2?ZA!5ib_w&ZRLMoAH3^lwer@nu+=e6fH7bj;$#hLSp_A|QgEqX`Hq>}c)&(*p0 zSR+vk!iB?b_hW%@gP^~^I~ar=l$yJeeX0hG(_Njn0zqux%W_;&A8! z`qn!fzbU5kKJACZ2MftaOY>`$Lyg7b{&)S%`;d=dz1{QqH=U_X=jWBf#o(GXd_c1O z$bK14=951K3;9f5UxxlyS67|aUvq}~_+^@OB9x9+>K|znpg&G%vb^5rleVABw*4cb zKcF~an$46URO?^Y-OpQ=HSI?&>o%QD#?M!qwH`~AIlVK=s@jjkbUwd12hqEoI9dQc zQitwSmO7x$*YldIm$UhTY@1FCk!l^Z;nW#*N5{uME#Cv83C422pAvIFihj=CHta_; zw;oDsX|62Tm>62b)UH>FFtcbp(eGiYl{y_hYrK_uV*o?hmL?QWFgw zJs02J&*ysnT%+1$Kbp;@b5OVfCV1fAzsc9kdWWu|7l!0x(Rk(IQGDMIVak7KBdFQS zK-^oVyzgs2*0IvFkXNhq`+LKYz7L|lU=8Ps<%(B9II*u_&yYu9iC4ZGd-R`=Qn4#%I}Q6;=GJ>Cpt$K8S8 z=bq>8I`U!^A3^fB0(5s6J;h!Y^8X?^qpiU3znInd|6}$CFJ*;!5S08Avb2F&bq)t( z^~Q0?DnCDf7FdV>E#UvJ8tY{`Vx5L=AL){1|MW8##3A^9`YWxVM%M=erW!*Vl$y(# zlbh>X9vQb!KKwK8SPucbr~?T)>QTugbiE=U2>b~?^P@Rku%}eRxp=FT<7SW)#8DIC zNaPG&e_lZS-eZRCWLIU_<0<1Q@{QWECxWOPaE9AFJ)m&XxM|%8ZJ9v;njSLj;yB19 z#WPAWP{~kQj)8wkUm#<=w=f&f=S46Z4Eit|K#jOJ8|+W3`s@~$bh%39v}H(ygCm9Y zX_~oi+h3O@YIT_x$8Y1`#Kcv9Y|{y2Jp+Aa9KE+)wb{Z+VdR5&p7JQ9NdBMB<0wL65>_X7gWFx--|r9K$gS((!V9HmOkA$` zJRXx12U`36Xyj`9(qX1hh&OGBm*+q=Jc)A7bq^ zUp&Vt&Zj|M&DtbSdN*sp=L1H2>p|Ip4r;-KjnGvv4iKSN%~EyZt`nZ3d9u|hVX*Eh$@;=lH$>Q zXt%+RKAD(H!D!e3E$goy1S%hr(42qcO;rOdSAY4=m*LA4#)2`X42IC}ET+m4vF0{g z0;E4M;wDFbYr0pqJ}UASHo2J^pWn`@3!62(k!sdkH`$M!=P^LPC%5$ z`?P|DHz{`1Ie^a3i&uK0;Z^Y;ebUo!D>T;dx)6M&n(CiyiO)M{-;h9o{0`*O>7eh0tnz8GSof=s&-ERT~4JdddWPAc^I^@Q`Gn728 z8xINjA3BS(9i?ktltgTC14{5}M@Rz&oKJCr)mW6tJdB0 z&|wV5#TyOt*AX6HP9R2Ub6}z0VpJ3uHz;lt4}sAQcgY_;ir4P+6qpL{UI>rGK6D%0LJ+N{Um3-qW`VB@&~OZsq|& z#7KFfH}NO<{zkj$K&1f?D0VGHYd^GG>zB!u?e|jKk8^~*d)ZvVg}KmCJA_&HJP910 zxF-73#Bsd&l9r;M3Bd}Of)g4ag@4wq(N4hxcA>@JD~XdI7Q!$yTwa+{Fawl8mcJ9y z#qaIUZ-_GjOBpx73&o;JIy(q>DitFD77X@{#ws$^o5GLEJiXyXNy3^A5lg*%2cHJD zPRlNRI1d(QCe4p1pt2Y?fEJe$#>bBzsbDOlz>FxOkbtHFqKr7tBzm@hq$99rpM6ut z*V-D+1rHm$Qi*CGnI(@_k93k=8m236It_MU;vQs&P8qa(_$EOdNk0tMOeek^b`Qn| z!Kx6OBX7>nRRHf*f9IDQCL|$wJ<2`F9q6d5)yia!^&5p^cldL-pC%9G6tjmdyx zo8!|18v=*^C+O<@9n~PUlo9_v3ZF7IG!!H-DN_5Y0As=U1Nz93qGo6`X=I@-?2Iu3 z)~urlP3n5wbs9l)=4HMEr{#A^ zNl8AnfYHEypfc0PzwHE25$hIF@&r}&|4tSkjN0YE1_ZtuBGe%H1Oq&UxKrsL9EKi) zYw8KY5)g-TuHE|-*+VE6{6zB!Trk>rAWfl==wSP62Nd-f5jzo|d(QW5Uu*HFuUH<0 zu|mG{;~|xz%-_eAR!da-v+8uhRDm>&-GuE^0w8E3Mc_oY{fIH3iAZXh53*R0UM!6Y z6Mpo69U#b~p(rD$QOxzxaR5br=ijbzbpvt#;=ca0W3cxIG$jWYglwcn(^IXzaLcJo zM~!NCg=Nz8x-2Z4(6x93IqU-2SmHl z%n62{J<%#wUk=U*F^q|^G?64--*=<`qrOI*g^dxD6>Oy`l~gj+HofI+ir-=08f9fQ8;VC_07NG9YlHgSovwt6=|sw zzqNbFPh0M{zQJvun^W=_IFC;X*y6Fur0Sulck6O&i0ns`6VVcrc5QSF=&qdeGlIM) zUEj|b+!a6I4F;V??cQ~KAn_Txn!j{3&YF|ce3l*&MOY2yWEq6#Z!Ol3>8Il9b{0wR zEtl>7Qa?gGlpixd)iEbueQ)!QDru!iW+&!gH0P<ODh)APMGTfpr}{b;Y}-I}5O4n3jLEC*5~l8zDQ z#h?MfZ(1sp44=;Hwaw(n!pFI_@->TQjhdJZFE>@=B8&Bw6WYJhQ(}qW14-vkG9u&g ziKR2#j}Nzw=%2Iq?Chq)2~h@-$gK<%Xp!*RlqnJ&HUYSg17cwQ78rJPo3D;OzTIl+ zD#$%84imEvZ!aXMMn5o@1h;a05qmRpf=OuV@AbjQ?_0AB_6Q=BQEUo;yca#j7`plL zA1|>})5KV$qqaRDF#qls2uR})Y9`A;jEUko?l^h7smk4ojDb`~86S$7( zVjaVDPta`fkeZF>^qCxP#{riPk{gTO`C}g-Aa_4;A%3MpqO9TPJiGkz-@-2;N(H}u zdGp3FXe^&Uw%XQq@50sQuD5qCoYz!U;lB41Z`!0XG+R)HCYCK=H*sxVI(FIsJSKD6 z(^a=U4)Q~Dy*?min>~84gS%BS-45e0E%^`B9om(eX)KM5P|PG*oDelEB_*?&?mdsm zMxmFM_sWMI?-vr+_Z&9mXt7$`e#j$z@QXy*j5LbN4CWw)0ey=%g8rg$t&E_521^6; zyK^P3bCH*gy9N$^7AYZP6K%wuu~s9hUsHZxxj^azqMa?1f)&_*7^rwU(G8$#5lC zFeA`7pxqkRz`j)|GVx!QeETuD-0v2dX0k7yFG*6CGo=?O=qUmA`ps+Rp};Fs*FLBI zwz!;5FDG+_-w($+zN43+Js-*M*Pj!h#?{OUf2vr}68%Ou>^AuEZG5d9id0h5uU5B$ z8;>XQxw#my*gug=Wdar#s|>(+J4xtf z%7A<-!H7hn-(>8|%?uU6jwt!jl&7;>BFmm+<$o4>Pz+-zy2e8K6(RPo)U&>#H-+Lcd4F>C#)K{t!2vwM{!mf|K8Pbt8RXrS^oe%z$Jru#$g1eU&|Fs zQ&Li{d~dj(z3=}Y0O&v$zoECk?bdg`{bzpWt*`C1SDt<5WN-O+9FTftl&c1hgHG4+ zNW2P;GGVc-IRpFPo}yOZ^NZ(Oj=gu!Txnu52%{jdX>2qH_R4z0r~XVdP!*XnigRyL zADumfOvw&2|5GbH%uNG_m|Mc1240c!D#I&4WTnXjm$Q4aq;vR%DNR{Ab+%tRdYC0E zz#%B3(n0n(!uh)0kQ7QxqKvzd!Ugy;9Kw>5gz}A`@#XYWB%mzQDisUEwD?RzWixx8 zpERExw-M{7$#7vZFW2dnKt%uL_~=G!QR`u*vdJ+Har*2N1;Pe1*%>$YfF_X zqbj&aP+nmOd`Yf7ct{9w;lhO{o_OMKzVNm4^DFQF#b5Zq-FN>VzxVqOJn*gQ?RzXa z&}e8!QQvK)xfil07}aG;6{Dgz`~B5ks8{Ed;#|kKVjj3oFACIV+iTc?HBwMiqR3p9 zG$O0gU!NEMY-c7yhmSwY?9B#7()1COpZO?Zjw=lqKT1RIX(CbT%UC+ikBdtg)!E!V ze2eA|od}q!IF3V?czxnWB(9NIFMz1>yq@bPoJCOkaawVGsMIog%BIm|PID*|Qi>c> z)dq`YPUjMTT|zciIGm#+lka}_A@`XlJDtu*rF!epn{U1G=INoomX4kHI7)y&vvtp=u5 z4PuEZN*KA>qra30GF+V^&Ai3bFQoc3;bZfV6BgnXEUz+bb&&k_u*5HqR=Q7B!%6i6>6&b;Dg`%lTUr_*M9w14&8CbQ=j?^$!<36bxcg4I_a$^ zN>P$aofS{Ds*7z;qR5v~(g^}jQR5M!21yw9TC2^@RR^xyf9O@C+xFV7M`@yB;4cw> zc`AJ0-fUbIbFvt+7552`(hWmdx|xkDC#)P>09mZ$QighJ4>1LSa3RaGR-ix?$Yapf zWzw$EMmq}p_FF#k&kw!&wuxP{gh|F^N=3a6V@k1FHujqbZaljBu6Nz@XMgt0mmk|X ztC^Op6yj!+$VE~bWnqsimJEb2Og)85ad?p?se=jI@Iga+m?bd)X>KU2bQzZ9#52#t zVMJ&=Jw3gB$1G03krG4KfmsxVnx?t9xG2jYRup^SYMKTwIFCEMR-sUU*KlU=dH};P zuD<%}v!_pX`?h76rBVqBMS(VW97mjUw1luf&iGLjd@`vBgc5GwzWw0AgXhnleD>LA zj~>1C8(;tW>C>ks#>OR;2Cmocw`19$h0$2Ccx$~>tWhQLLKoC1oXQ~bU;vh|+ix{S z#wTC%hSwdw;rhPoON^GQ>k-tyb$pTkmy%O1}TtBd1QCuGi~(_v~vn+K%Hj zn@!L2R1jd61x)Gr4la-7I_v8V;GoyP{*B;-fv0fM7?D&;)u*0&>bu{5sM%}o-o5+I zJMRRVb6pn>K`u+7s>-h2JG<@m`T6;qZ@vjA5{lbcZNb&YY86@TuC#h~GoV( z)fAayW|gEFs%5HD?1i%8$MNBtZl1epUl8LE1*lyw40KbI(gnsY1r~=dvV|Nr9?<0( zg`0$&uwMCoFvC`Ng#Zj-U0N6m?1su{9Fhnpe}rHdH4@?y1EQ0V|NTFGys~X94EsP= zPP-+=tWc<6E0kp3YQ~{s>I|nm%br;ud*}b~8-d+@?(e@jUXc?g-}irkuU7M(`vQa%^*>d9kbgH95^sJIUWYV zV9;|1_K8OGOJDig{KZAHP>SNDIyz>%ON~|sPDPmp9@H!pfL|gW^gHb*o_g}$FMs(1 zcfarY>#y$&2Cn0bj*T^&>-XIAH^&}-ywz(Li^WQ%a{KMK!{OPwS3rEGX|y{{5MSH2 zZKG6fHe0g9Y9nJwKtYd2kr=5|nX0d}+I^?xL?H31jG-rtBamvQ-Rrw{FACf{@A}y{ zy!9@lTwZRpj6zXTB-?YV<)R31yw?1y^Ug2eda#$$WpR?ya7Gj^>h=63eSUJ}gq33p z;PRp+8>4TjN8_?Wbe*UQrWC{q>9jE6;KRT5Z;Fc1oxkV{jOpmAS+GX=ayKdIDiKUl zNEipr6`XHa&||wV%iG@ip7))3%%`0h$$9k`&;Ts!&P z@pfyi=eUExV10cZR2a~c<2aeTN(c~-aGU|0O<~$|&pjtZJQ&zxwb_9^0GU@TTA=0( zg*q-zBG>ITMBoUC3Q0~VCP|RMtr+I(-}IK!NX_SoZkb#NO;;?l;CZebXRA$Q6QV8; zK4cRxF`+b#{cY~|+~kCnV+#P?R+c-OB^IPxM1t9yG)+*XD&~d8B$~PAz>P<)pMUn5 zshxA&3oWYz?JDZns-lCLfmW%aA_5bsB#tflf-u@4%hieT!*6-}1AqMay?e&E+a^@l zAl%Zm*oUhCD#Nv|F!ZimUTWsjfFQokiVCmOV3uXl8*jOxTAsN1wKp6&d>D4^c0uv9 zo_Y3oV{Lt9Y1sw8MHN4YR@c{ou-cuTqUw^&WLe^|h(d67tW>T54J`y0&R2H2*A=Zoqp=qH-nEAgxXvI<$jvw3eC@T@X3;C)EL^x<*E{WX%(JH$Ba5Qw*bklr ziflC8M&}HbV@brU(LmoS2v3M+n0EgRF3_MTlA=b13X>H@rj=?rP9)d$eUUJx@gRt~ zpbAb!$0fHeFE#PJNLKnxaQ(nE4F7@^{(eH_gq33p03*2Y4}KR!N*o(=j{)fl0mEcb zYLNrC-QjRoGW5mO^__dJ5FmtX&z}dia$)b%JPrWam=9@lu3PjWPD~4bkfZB zI(W2|m8GSN3#U$>m_K(ujgA9dEX8pGzRz`C$M%4;a0$HtzbZnKsOx)S2!w0NQnI?b z+-x>SH0!TF{h8Yq7w&k&>ysodmI}Xg_uaSOdUUnp?BBnCZf*{=Rk}jF3%p?WVNwp-!()7$v{KTR=FBEU9gXmVF?~Vb5>Lh z2qx@zWX&Aiv*)cJ{Lp>B_b0pNMw76aq(gzoR?lDZ;d#a<3)x)CXvZd+t{QylOD?8o zCX3|)=(L#o=g*&QG#U#RE-Wl80EGkrY&mb5MbE=8vuQTk=^CWN#)u3o1njS>Y-VO! zH;h7|1Y~sa;>EF`{O*ih{J-5=f!4kGwt!z9I=npsqUJM3q zx7S@-Tt0K^)N{|CY&P5dem`B&G~fx9Bc2VtiiD>8qRO!^gOwu@u4du%10@W&)Chw0 z)kd@*sEuWmjBA{dI0^%q8JWV$W}XjI&ydhlTbzDtPC79&A0^y8TpkHeiyS7-8wL-Kym~WguapD9>Byfa5-~qV+^?(TK$IAF&DHy1GuOoGDpcG7L#8fO9&Yf9%0~5A2$r+I>wJ3)>G$m742Bk^ol;7sOGA;%Co! zch4bH^YlSsGVjm{Vur_Xh+=bar4v?;ErCq7&}_6WZJ9t8im7n|LJ3o)kW&)S4ya8u zrr5o1txz2+SB2}f)|&=ND33I&h~GiOLxIt8g+!6(bX?nAnLoa=xOCkuuUj}fFM5G$ zkkPSPcezE3jS=~cMNKay8D;Jd$qOYIG+SKgJ+nm_XVph)G!{=i{+Ku4ed4)Cv#h09 zB#!5T(rI^GO;bjzM(7QEryEBBC166W(#U9~Hr|iI@p`Qp*b~#1B1b2lz1V6vb8~a` zT6p2Yg{9>MP-lgLxw^7)^5jW4?bOr^Fs82SDrIo{&@H*P14I>x5ST0AA_^17aY4;N z=`_^{g~-BBG!1oGmN79g0j70*c?HU!0Zw@7_2c({Syz;|{QP^ay6z^ht0?_IvnmX_ zKj7_bpX{#Tvw>e6hb4x9Pi=FN6IPBb0I2s_8vr?zfF}g!g{=eHNsQs&kSGjeOdz8a z2LCClqE1vt>Q;dyvMp>XOR+>F*HgeiGEH_Jr{7&&xY%4>hZgNDp9kf&eD>nm zo)`27HV5NOfZ(HH5mNxcNs`Pt&lu_wPyNu_!2Zrx|K5+HcTi<&_tgPVolH3#2nG_L z5Ih6i4PL=xfg|97Ad{t3l|Hb|L{3;awg8}sVdx6l0d(siveM{M;06(JhXT!xD9}_e zo-BOVwM4>25DoefGZaN%e){Q!l|_BDYOkzspPeDxKmO4D+;^%Y6PjKKp;1%1|H#b` zef7RWx4l*|tY;qj5>ZI2ml);j+QX}-jS{12nVNv>g3yD;iA0vN6}VK~C2god-xYDt zZFMb9F@hF)tBuCea!XQ}j;Ty?5XMU69J%hA*S+@kqcGpdDAqEMyN_fO6* zJn)@IN2aly5aHDsd53j7HLW-6~Z7a+l47a%y>wo`V(9f7BY^O&j$iwY@m8L8C98tbb-Kwtwg+)iXLe*rK#yh>dv&=Zu7Dk#3d3I<`on3hr!jwgab0u$*t zP81224(DM!E{%0wdf^ZJlA-nk?hg7Q@G(&FYR|O?@BcgA8`vWo ziV0d==5e55QU)}DDi1bMC_`E{WK1B?bcu7=2mZRexLz31!#HxDX?2Os?Q7r*$$ne96Zg(679PR|K>H}Y^;FhU(ANvR!{6%G#!3y*vxz!<`dh;vX< zLvBg8r*9>i4jM2f!`tj{NI=gUp9y0E{e@Pp9z1xkT&{XNh7*RqhkOV3Dkbn)WR5*m zz?b7zs699On9V{?SUI);kSQqPIN*+S08$`H=Haj~$K07;i_Qa_tzxnmY zzWwz|wLk+>ETdEsVi=bJ;H8m_Bns^`jcR3oMIn=V#_S6+veNbkZp=u4-%%3>(4KXb z$HMXKQrWouz%{qsdUSSnx@9|pQk>r?NVDB?`h$^zX^xF~F-~J9anxI094(YfyLX>B zJ0D*L1&oq*CnO8RcI^--cnU0VRt9;eI1BPL6KV(D(>n-a#jy8a%M2DFj znLdY0A;00-HnS#ds$9#Fn$OB^-}RX3eJ84Lzv^>G#SPqX>d zSH5)WyN{3{@O+;{AqA=ekp{n2RDqc3&3q)V3X`&n~X4 ztQD+a%=%WGvGi>X#)Uy5NRLIl!Q^D6ksFeERK07d*QxO^38kx^2Xo&{b=ATCY^Zm zTO7O9KlgNL=d|c|Wlc$dIINL`^F&f<6eoV@JIh9Sa$?W!kSLL+vJqm9=t19)70@K9 zjsuk<668vF6Gjp=Rm`nOLupymIU5}VOE}b6gc`zTnv@jv(5JED`>~Le{a5dN|1Z32 zZrl_ESS;zUu4{}YzAt>+Uu}+!)ryi4^g?PmjG4a2MIx9f5B!dZtEw`3|0AnY+q6<~ z$C1N&r96K2)bYmpV$6Mq%V5z+2y!Zs!Q{yl^b+`255GT=<9FT1T!DWmbA1jJFCyI- zsp=NEPtEu2etU(;K;?wVX2K&`5^(|^k^s*ol<|-k6>AVh+qdso59o+d_a&c-UP;)( zoCutLZKOa%&_jmA2NH95WcEgnXpQo4mL~hr%=KyCnF18$ z|M2qXRVdw{O7=gJ91jhnOiNc|jvJ!)`6j6wT4`tM~ zf`&8VD9EyNbE`#6E>ZA?E4`JuHSzo30w*6P2~9w=0?c^^cIUL zqo%TL=iW%js$nXosmNXe4L!gm0@JgieAtLAr-A=0E|a}adX8L@P!}GL;99JB&q|G#`2Ng{g zH_CpeT$Y(c+%X{~jePe@fBmYv?kbN@B#}lmbN4j|M8cg0Gj8)U> zySGcn7hC6^{PKK1sLUOzO-$`Sd=oW`IN%6R0Cev2KcJ0Aw28RV2`fuBd8teBBH{TX zL0bz$YRZI6+A1*Yow7!jRe%HWsVf8nGBH*^c4Ga+iQ_jd! zJSFfu@S(v*L4eH^v>Rrc+NM=9W~R39*>~cxHC-Fl3LN`O!)I8CbQ}=KCsTZvl8mx( zu`KT?8z%eh-NFAlFzv1h| zC#)P>0?4%49FX)krZqrw%|`LkTurcPG+j*~jf>mmGP!W}nVaAECe6@A&!@M%m&@ zyV(n@F{|&{_R6x7#M?`3Rw9$T_kHQRPn>!Bk*iYYiCJ=4Zd$59(F~?}YME`{EaZfh zV+&xI42ALaG;bSP2t)0&kp_v{2h;>k7m%2H!}MMROkx~OS7;i1!RHWrQxUzA6QY7pB?^C!|!`Y;xg@+0O9Y)ru!CT9(U zTlgz`4efT@&i%A76SP*t$dD9f8fKVOL`&xnM(LEPbP#Zcvq3qP#g#5i3c;YetQivMga9YjNTK5@sZ-GnBT53QXfc>VT&#eq zhFPE90jh!~QfqDbsc+xcU%Q|XGBV2C0hjeOr3i!P$VAW}p($c^JFsM$g!Q}#){wJ+ zF^7S*^sQMO8B<4n#pw5B!l-RGPMux6aZg=Vz|bW#2W5frlLc+Va?aprtCiWNz#g60WhpU0fySSefvRAnrw5oL-L6F34>@rf!+ z3Qr<1yi`%4__Cm}$Kx>2fNT`Si!GXH36B`O1Nqi-g~y9l)%ShOewT=Dnp9y9SV!9i zs&CrT6UWcI?%JIr78fzllF{@*nvH3zXAaCBe6A(p^Qy$-MCK$yJ*68%Wty46oUn3S zaX?#}~y=U>6XD4Pz!9-;gggnv7z)wR|j4&V=5GxoJ!f-myzkxD{ zjn)W7N|%~}QmOh-1Bx^sq6pU&QZv??@_;2ud34*Ft$yaK&mG)Zed8_r%a!7Dr!UOS z%&aZ0f93OkOGGe!>kY2s3nsHD?l;#OtE=D!1uZT&$?Sg?=crM1t#jex)`BmKcf|OTtnT&Yg&dlFS0kZ~y|No*!CTq21}?_l&7P?;$mk zNQyhjpr1&!IOZ-V#X2+MqG(=M(r(y&t!4EKg=BqxiB8oeW`f2ms9JZ>)kmlN$iIH3 ze4jN_WwG43sBxhY5~Q}BQ^FN|N}IZVUrtz8Ox%6zM%)27!FZT-p8B#>PeG3kUAm78 z_(^8f2t3#I6RVIbY=&5Kx&%4JJ1bF=Aj4!jOYvo!U@390K0%8DiomgwktbE zSqUUa8|`CAFoO!zTuMM7Re&y;CdoKz1|Bnw`a`>ct7k=m@})vAOLxHBZWa0Kmhb(~ zf4k>*{0PKL0S>|C6N0EA+*22PIdRJtUF~;IJ@stk!opLJeQ$32)Z)_0!0(4iI8mMK z41&HVKwho&T8ry#$+YxJIh1A7G>heuNI3e_M1%u}hY<)HFXB4W0N{BekV#U4%L%4w z?rB&JL^tf%{|q;eOIWu{F!^d(eJbii9Jy)6?Ngd1IE+!e*#RVz~__A+Sw%J zgq359Aj`DMV(n=gkU~-_mw4c~T_G%2D;5*sbh@Dp5@E9XGw=NXF$)oQ&1#i&eM~e6 zJQ4&7VU6{LPOoc>jaNo$wQV!g`;M%yUJ#Zl%#thzlGh6RA%*s?rOQ7*I@>Fa)J-&+D9PJpSY{&uL4%kIN=_KJkOe z$;pM4wdLj-)z!17+O1B@i=vJfEVaG1FKZ*?a;c)lilHi2(R6*!_Z$)7lI>vpWJaPe z)WF5*Mk2*g#3dORNdkh#u5rpJ;Kcp^1KD$HcEbF3asj)2(&mFpV>v% z&Z{C)U5EPVvOnMuHxD^s<=6s1nUF<8He@1@f~Jwk@57(Ubv=yzjy(V?ml$MZY|fn6 zJF;gVG1S0rnz~NFs4$HT2E>a<6lpvf9~&#}*zN%Dlq>qk*zs?CwSM(psv00KW@@|S zkO(K*KPC!*H8aPBlTEH(* z)QjLLJ6+osBI!0G)FYu9ljEn(o?cmP_j_ik++4Q9D3VMaS9zudqduaQ#))QtRV29N zm+(BN*X?o;jG?b6ibQ!5_g(UAh-7gx?V*PSSe>|Ph1#>D7I2q$r!uowD9 zN2XENBT-_-w7^xl>-B6;8Yxd#fiDMZGFitj(bqRq+UJCYc*VQIE$s&ZI3}2mHw|ek z1Be6-gGzzy`-J!!u|~_*$T(-SkNn_q`Q!iPmw)}&suSD2=BiPuC2d!NhN_y;$~nt0 z>9+AiRWxRT3VQhaPo8avLEQuC!TojFD(%{SEwL_0&Va-&E_lGPo#5ysPR_%DxNMQl z%gGJdB7a~8Q}W6Z?t$8VY58M+T>kAuRur_9IK_`B8kMP8lS-o`(Bq}~bAv%A4xFaD zU=&M2W{T@FVM;m^lrgoamMgMeiU@TEc2&_Z{~&O~FoX&V*TwZkRmS~LWs0gR5r{x3 z(NxVcG|%&bbOI!f*fldFAgL$icAkB646A^BqW)rNZ`0v&w%zSJz8|To>`#{y(+HVVl=|HF zLoFw)99J092q9^z2qSn1ny%w|u4u)1Qyf!+Q9_^}`0BK9_qlYtZJai_aBJvmXZ zigw%f2N5%>)v@taza<-%M=P;8Zpathcr$}oIbjX)3Km&gU0wk)IRmxz`L_}=vepIq zkj8i1=*8-4*Og?;1v#K=oTxkY-0+G2{K;pZI`;4X{crC(a46`yak1d9tx2Xun92-Y zt=CsBE`IvYKM@!jE0t}=Z0?a_^~~~`|L_lvTzj}~REnl<7^>@dv2A4b_E@=NO<`_t0zzzy{KeSu$YC`Uo4DO$lQac`_R#uLBq^jo3h zgi2AOrC0`P^O+p`z|K?wGNE8|RZYQE2}xDKJ|_4*J(w&i#|#W*1b;0UI@8pIhp;!0 zOXT@>zn4T&82NBWwlsaZS{C@x7=#v>I}m!90ZNGU0n|a_k*BRt2#pXB7)=LoPYlG^6cmsQIb}-(QGx$%80D#tL+|VaaSXLq^NS4 zsv{BH$>t#^tQ=bdm>jw>gD=a1;vi&nb#mv;)SP(iTaPpYw)4ovq>D70+E< z-9ESTx;v)6|IiPjGYcd*clDm>?GwzDsmzl?LJD%iGz^Gc`UahBrVbVl83acyag{+# zD;Q?C0+IE)17;{7tSlfv)3nJzNmIEJYN}S1DEQUPg=$QV0?@AKCpyLTY`6?kNsYl_ za(IdPRzVztQj?_wEFpdqPK&5Ng`tGr>-T$52-u~8za>9~A zjFh5kT4TNGdmik1?)1rav-1l-^VXfacHeQw>kb_{boRu_k9_DutLHD2N2>jubtzqV zGw?BnZ54`*#@Z9dFCM;WU%S0}(}C*@;V8~(QFLZU%aYeN)kqN>t`UW(@`%LvfEP95 ziD80kHgq^#-Vc7OF%Knw%|3Gm*_dk_M=EWa-y3E%)u@+BdBgaFCI#7=;)7)StvZ6GYh#v8W0YO!{W zW;Dy4J9qEBtE#_KeWk%M&hj1;Y}xnd>Z)&db@igIfB*ldPMsfJs%=B#};ZxrZEYsKO!?0HFusj>UoR zb`>N{Q}1w`cXEJEz^Vv{KLOfNb{7Jq$=ce@Y)t^LC_6OcF!83mfEUZd3da~&p4S?) z$dIFlwI+ZL3*vzRD-39y(f~1W{@IW0eXz6Sjg1U!-LNfm{mxR$(u{;9mTfqL6_uza zi5(m}rt{k${N&{1I8?x&8YO`T|i6 zxP!*jL}NOrBG5mS5bW57VJm3!P^JCV@7xCT=OZ8ct6zA{t8e|%*K~>oE2YpdqBx=i zcn*l9Y%&>)OQrInXMf(=lJGABgBmbyOUT0u?2IJT_pDiWY|)DHtgqr-zE zEI97_;Zl8x`AHZB@RGoo0EzPgpK4mkwhau}zLJu#pCb8R*mJ<$^JII@T#lm2W-kLc z9psFZ3lnD-CwI&=cq7plyYckG62c1L4Z%dm6e%*bd6Fd1W(60%--VxUx0Bzz##uMe z)Y11Jy+@lY7PqeB!-cSH>be1~3llk?VegK?!tlr{nsQ($5lfrC*Gbe?VlGCs8j>*8 zSr3xvNj)e#D|@l5r!oRB_Z#;92j1iSy^MCsQWZ;NlwVk=hHe#zZpl=AaymtW5;zl6 z3cZuai2;fLp?XXzPGsa2sJJY4K>RbdS4fHUCAe*JollITBsSoKICw1fZbH2(6E8-5DimBEm}ZoD8P*naLOPUqu#7G z^5nC*ZKSVVh@MXDJ_fisI8shZz|LrX#P4++fNYL*7_^x|d!fZ1K zcN*lLkV$Ja#@ZaXBph0!l4ofKp=!u{Lrv{0>}$oIgcYpoxna*8R`OiA5U@BwZj53L z=|h|K%7$1k&UX@Qmb+2v262mvLa_v`GMfNK4zxSzN`;0fKzAulE;l+pK46r1C-fSf zyzWfxKb*#ba9prUa;niNfkrBX0&Ndy2efM796E?hMNY_`5;ICkJ5s#VsQc{1lFM*T z(XDJoQW^3t=@py;-&%GkWxdJDU1n5Sk)~PK5|g8ZKVJ&8U;E8j0rYrrXgcSCA!Hea{%l>YI1=z z-L�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 DTEC}q diff --git a/doc/articles/image-2f.png b/doc/articles/image-2f.png deleted file mode 100644 index 3dce02d5f4729ec26c2056034b64ed182703b409..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 62662 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%0A%jdN*~S*JgTA~5%@NNg2U3Ln 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 WlCMXYiR}h*7(8A5T-G@yGywoK>N=VL diff --git a/doc/articles/image-package-03.png b/doc/articles/image-package-03.png deleted file mode 100644 index 5bc0bf732d6ca2262480664394e50fa849a49004..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1477 zcmeAS@N?(olHy`uVBq!ia0y~yV4MKNIvh+uk)*3dQyCaodpunnLn`LHxsls-+e5_R zqDF<{r*m5-zgwD-zG`m89F}LyhZa8{pnRO!~XJ_ z&nu7LkVwA&VD|f6)=!^rI=!y=%_kKW(u^h2c64Purwkp11wJ1M`wxCwzbU?Zea=_Dhn~xBzulId_iJ1Jhr;BZ%6a`aOZ86_3R=FDy_I_Xb6KSj z6J6W}^|sILZEq!JufM)A`@`9_uXpL3Hr#!#s{Mn_^vZePec#E|T#v;dC z)ZW%aeA zU;p>(=i8;WCDISf?<6uxu7Cgjz5DwQBKPWl{(Ic^df~Cf>^1$7@ALDm`JNB7Tx=3Zua4S zQ9GT&`LfM9fJLH6GI_i0hrOF=Q;W4Nzs=Hv9eK9^4~Ia{a>Zr`H?@ zJCrW*zusN{K(nv?{+{3U^RGQNYqWpH$9-bPvr4Yis1=w{RXf{B!Z|o3-~u-c+bF^*;vMLwwG`kyh{;@c8Qs)`ZC~=j&fP zESBj1ZbL&)=Dg>N%PW)~7g<)dvRnR?Jz=EZFITv;=jX@ZAMcly-u)C9H!Zd2{p<1L<;V2$L)j8@o=y}1x_#C=bL-c~CqFpOy^oXB zl7Jll0QJCpu>JPis=ac1k6zy$bIeBHJ^$h}DZA$DhR50tPfNX7_F(e)UBz+rC(<9E zpZitn-%p+X7CICoz~uU|>I>6{H_Kki>tFkNAargC zuVeKdzYsl_Ja78q@E`l)j!Q`MMNdn;-RN)k`rVZ0rT-o;s9hbFnGH9xvXV2B6+ diff --git a/doc/articles/image-package-05.png b/doc/articles/image-package-05.png deleted file mode 100644 index 54c47b67bf41a294adef10cbb9931fe5595406b6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1613 zcmeAS@N?(olHy`uVBq!ia0y~yV4MKNIvh+uk)*3dQyCc8L_A#_Ln`LHxpA@Zv74Af zV4_!}iE(7=A|I1;E;B7e6ol7l+`2da=3T7=Dg_UVPffFsUvWK0Oz+~a!r0V#&r8MS zYOWnWe*ALU+*1CtMz0Gu*X?0&;Sigk7~#;Cz$n?onnEPU=d;cGy=}}t|NN<`ufJa{ zdSLzDKEtq>Z91oSar4`~KCO9wdSu$%dW^(@Xy=;pK=g*)2{{8#j zaK=BkUP~k&O+CG7&F&8mHt(DBsdi@SHOn+hAtn<1ip3%#1MAr9d)yX1nZJI0{QUa= z{kq+MKUdu?H9eqTafr!iS$}{3-s=S%_V4+_4k-VztNIKKc2|Hi-nX05yay6g0`RLSHV$(l2f`j@|K%5n~~cr7<8^;-SbpZ|(f zSZMDmpoe>|?-l>xZ{qv?{^NhItM2BiUU_&RipMI1s+S%jY|3L6r z<;`l&+}rQh0|VJ%6C{w6&+VFfO|IVQ_h*kE?f2{JzZ{run78}K2gCd4tX{u;D>?tl z-N^4B;`5{5ua~dC9>gGbR{m~z!T-LQ%bwRJAGQQVBF%#y!PQQCBch*x6 z4q~%3`N#f(RzTQ_}zc*rcCon@HLc8+TnwLk-OD}zW zy*PPxYHr!G*Q?Sur$!!=czopr E0A;jtxBvhE diff --git a/doc/articles/image_draw.html b/doc/articles/image_draw.html deleted file mode 100644 index 71658cf920..0000000000 --- a/doc/articles/image_draw.html +++ /dev/null @@ -1,222 +0,0 @@ - - -