diff options
| author | Jonathan Amsterdam <jba@google.com> | 2021-02-07 08:03:25 -0500 |
|---|---|---|
| committer | Jonathan Amsterdam <jba@google.com> | 2021-02-08 17:26:42 +0000 |
| commit | 2d07e2ec6a75f9e142c54bbfdcb7da9986f10056 (patch) | |
| tree | 87453b971a4c06b1b4618bdc02897438ab8245f8 /internal | |
| parent | 43fc831477b60f807efb2b7dcd36863fb80d82f0 (diff) | |
| download | go-x-pkgsite-2d07e2ec6a75f9e142c54bbfdcb7da9986f10056.tar.xz | |
internal/godoc: remove gob code
Now that all documentation is encoded with the "fast"
encoder, we can remove all code for gob.
Change-Id: I0ae0167a6296770a6fb5f17a2c24d8686b5cf8d6
Reviewed-on: https://go-review.googlesource.com/c/pkgsite/+/290369
Trust: Jonathan Amsterdam <jba@google.com>
Run-TryBot: Jonathan Amsterdam <jba@google.com>
Reviewed-by: Julie Qiu <julie@golang.org>
Diffstat (limited to 'internal')
| -rw-r--r-- | internal/godoc/encode.go | 271 | ||||
| -rw-r--r-- | internal/godoc/encode_test.go | 85 | ||||
| -rw-r--r-- | internal/godoc/godoc.go | 9 | ||||
| -rw-r--r-- | internal/testing/sample/documentation.gen.go | 2 |
4 files changed, 2 insertions, 365 deletions
diff --git a/internal/godoc/encode.go b/internal/godoc/encode.go index ae717cc3..b91871aa 100644 --- a/internal/godoc/encode.go +++ b/internal/godoc/encode.go @@ -9,10 +9,8 @@ import ( "context" "encoding/gob" "fmt" - "go/ast" "go/token" "io" - "sort" "golang.org/x/pkgsite/internal/derrors" "golang.org/x/pkgsite/internal/godoc/codec" @@ -22,76 +20,12 @@ import ( // when reading from the DB. const ( encodingTypeLen = 4 // all encoding types must be this many bytes - gobEncodingType = "AST1" fastEncodingType = "AST2" ) // ErrInvalidEncodingType is returned when the data to DecodePackage has an // invalid encoding type. -var ErrInvalidEncodingType = fmt.Errorf("want initial bytes to be %q or %q but they aren't", gobEncodingType, fastEncodingType) - -// Register ast types for gob, so it can decode concrete types that are stored -// in interface variables. -func init() { - for _, n := range []interface{}{ - &ast.ArrayType{}, - &ast.AssignStmt{}, - &ast.BadDecl{}, - &ast.BadExpr{}, - &ast.BadStmt{}, - &ast.BasicLit{}, - &ast.BinaryExpr{}, - &ast.BlockStmt{}, - &ast.BranchStmt{}, - &ast.CallExpr{}, - &ast.CaseClause{}, - &ast.ChanType{}, - &ast.CommClause{}, - &ast.CommentGroup{}, - &ast.Comment{}, - &ast.CompositeLit{}, - &ast.DeclStmt{}, - &ast.DeferStmt{}, - &ast.Ellipsis{}, - &ast.EmptyStmt{}, - &ast.ExprStmt{}, - &ast.FieldList{}, - &ast.Field{}, - &ast.ForStmt{}, - &ast.FuncDecl{}, - &ast.FuncLit{}, - &ast.FuncType{}, - &ast.GenDecl{}, - &ast.GoStmt{}, - &ast.Ident{}, - &ast.IfStmt{}, - &ast.ImportSpec{}, - &ast.IncDecStmt{}, - &ast.IndexExpr{}, - &ast.InterfaceType{}, - &ast.KeyValueExpr{}, - &ast.LabeledStmt{}, - &ast.MapType{}, - &ast.ParenExpr{}, - &ast.RangeStmt{}, - &ast.ReturnStmt{}, - &ast.Scope{}, - &ast.SelectStmt{}, - &ast.SelectorExpr{}, - &ast.SendStmt{}, - &ast.SliceExpr{}, - &ast.StarExpr{}, - &ast.StructType{}, - &ast.SwitchStmt{}, - &ast.TypeAssertExpr{}, - &ast.TypeSpec{}, - &ast.TypeSwitchStmt{}, - &ast.UnaryExpr{}, - &ast.ValueSpec{}, - } { - gob.Register(n) - } -} +var ErrInvalidEncodingType = fmt.Errorf("want initial bytes to be %q but they aren't", fastEncodingType) // Encode encodes a Package into a byte slice. // During its operation, Encode modifies the AST, @@ -110,8 +44,6 @@ func DecodePackage(data []byte) (_ *Package, err error) { return nil, ErrInvalidEncodingType } switch string(data[:encodingTypeLen]) { - case gobEncodingType: - return gobDecodePackage(data[encodingTypeLen:]) case fastEncodingType: return fastDecodePackage(data[encodingTypeLen:]) default: @@ -119,207 +51,6 @@ func DecodePackage(data []byte) (_ *Package, err error) { } } -func gobDecodePackage(data []byte) (_ *Package, err error) { - dec := gob.NewDecoder(bytes.NewReader(data)) - p := &Package{Fset: token.NewFileSet()} - if err := p.Fset.Read(dec.Decode); err != nil { - return nil, err - } - if err := dec.Decode(&p.encPackage); err != nil { - return nil, err - } - for _, f := range p.Files { - fixupObjects(f) - } - return p, nil -} - -// removeCycles removes cycles from f. There are two sources of cycles -// in an ast.File: Scopes and Objects. Also, some Idents are shared. -// -// removeCycles removes all Scopes, since doc generation doesn't use them. Doc -// generation does use Objects, and it needs object identity to be preserved -// (see internal/doc/example.go). It also needs the Object.Decl field, to create -// anchor links (see dochtml/internal/render/idents.go). The Object.Decl field -// is responsible for cycles. Doc generation It doesn't need the Data or Type -// fields of Object. -// -// We need to break the cycles, and preserve Object identity when decoding. For -// an example of the latter, if ast.Idents A and B both pointed to the same -// Object, gob would write them as two separate objects, and decoding would -// preserve that. (See TestObjectIdentity for a small example of this sort of -// sharing.) -// -// We solve both problems by assigning numbers to Decls and Objects. We first -// walk through the AST to assign the numbers, then walk it again to put the -// numbers into Ident.Objs. We take advantage of the fact that the Data and Decl -// fields are of type interface{}, storing the object number into Data and the -// Decl number into Decl. -// -// The AST includes a list of unresolved Idents, which are shared with Idents -// in the tree itself. We assign these numbers as well, and store the numbers -// in a separate field of File. -func removeCycles(f *File) { - // First pass: assign every Decl, Spec and Ident a number. - // Since these aren't shared and Inspect is deterministic, - // this walk will produce the same sequence of Decls after encoding/decoding. - // Also assign a unique number to each Object we find in an Ident. - // Objects may be shared; traversing the decoded AST would not - // produce the same sequence. So we store their numbers separately. - declNums := map[interface{}]int{} - objNums := map[*ast.Object]int{} - ast.Inspect(f.AST, func(n ast.Node) bool { - if isRelevantDecl(n) { - if _, ok := declNums[n]; ok { - panic(fmt.Sprintf("duplicate decl %+v", n)) - } - declNums[n] = len(declNums) - } else if id, ok := n.(*ast.Ident); ok { - declNums[id] = len(declNums) // remember Idents for Unresolved list. - if id.Obj != nil { - if _, ok := objNums[id.Obj]; !ok { - objNums[id.Obj] = len(objNums) - } - } - } - return true - }) - - // Second pass: put the numbers into Ident.Objs. - // The Decl field gets a number from the declNums map, or nil - // if it's not a relevant Decl. - // The Data field gets a number from the objNums map. (This destroys - // whatever might be in the Data field, but doc generation doesn't care.) - ast.Inspect(f.AST, func(n ast.Node) bool { - id, ok := n.(*ast.Ident) - if !ok || id.Obj == nil { - return true - } - if _, ok := id.Obj.Decl.(int); ok { // seen this object already - return true - } - id.Obj.Type = nil // Not needed for doc gen. - id.Obj.Data, ok = objNums[id.Obj] - if !ok { - panic(fmt.Sprintf("no number for Object %v", id.Obj)) - } - if d, ok := declNums[id.Obj.Decl]; ok { - id.Obj.Decl = d - } else { - // We may not have seen this Ident's Decl because the definition was - // removed from the AST, even though references remain. For example, - // an exported var initialized to a call of an unexported function. - // Ignore those by setting the Decl field to -1. - id.Obj.Decl = -1 - } - return true - }) - - // Replace the unresolved identifiers with their numbers. - f.UnresolvedNums = nil - for _, id := range f.AST.Unresolved { - // If we can't find an identifier, assume it was in a part of the AST - // deleted by removeUnusedASTNodes, and ignore it. - if num, ok := declNums[id]; ok { - f.UnresolvedNums = append(f.UnresolvedNums, num) - } - } - f.AST.Unresolved = nil - - // Remember only those scope items that have been assigned a number; the others - // are not relevant to doc (unexported functions, for instance). - f.ScopeItems = nil - for name, obj := range f.AST.Scope.Objects { - if num, ok := obj.Data.(int); ok { - f.ScopeItems = append(f.ScopeItems, scopeItem{name, num}) - } - } - // Sort for deterministic encoding. - sort.Slice(f.ScopeItems, func(i, j int) bool { - return f.ScopeItems[i].Name < f.ScopeItems[j].Name - }) - f.AST.Scope.Objects = nil - -} - -// fixupObjects re-establishes the original Object and Decl relationships of the -// File. -// -// f is the result of Encode, which uses removeCycles (see above) to modify -// ast.Objects so that they are uniquely identified by their Data field, and -// refer to their Decl via a number in the Decl field. fixupObjects uses those -// values to reconstruct the same set of relationships. -func fixupObjects(f *File) { - // First pass: reconstruct the numbers of every Decl and Ident. - var decls []ast.Node - ast.Inspect(f.AST, func(n ast.Node) bool { - if _, ok := n.(*ast.Ident); ok || isRelevantDecl(n) { - decls = append(decls, n) - } - return true - }) - - // Second pass: replace the numbers in Ident.Objs with the right Nodes. - var objs []*ast.Object - ast.Inspect(f.AST, func(n ast.Node) bool { - id, ok := n.(*ast.Ident) - if !ok || id.Obj == nil { - return true - } - obj := id.Obj - if obj.Data == nil { - // We've seen this object already. - // Possible if fixing up without serializing/deserializing, because - // Objects are still shared in that case. - // Do nothing. - return true - } - num := obj.Data.(int) - switch { - case num < len(objs): - // We've seen this Object before. - id.Obj = objs[num] - case num == len(objs): - // A new object; fix it up and remember it. - if obj.Decl != nil { - num := obj.Decl.(int) - if num >= 0 { - obj.Decl = decls[num] - } - } - objs = append(objs, obj) - case num > len(objs): - panic("n > len(objs); shouldn't happen") - } - return true - }) - - // Fix up unresolved identifiers. - f.AST.Unresolved = make([]*ast.Ident, len(f.UnresolvedNums)) - for i, num := range f.UnresolvedNums { - f.AST.Unresolved[i] = decls[num].(*ast.Ident) - } - f.UnresolvedNums = nil - - // Fix up file scope objects. - f.AST.Scope.Objects = map[string]*ast.Object{} - for _, item := range f.ScopeItems { - f.AST.Scope.Objects[item.Name] = objs[item.Num] - } - f.ScopeItems = nil -} - -// isRelevantDecl reports whether n is a Node for a declaration relevant to -// documentation. -func isRelevantDecl(n interface{}) bool { - switch n.(type) { - case *ast.FuncDecl, *ast.GenDecl, *ast.ValueSpec, *ast.TypeSpec, *ast.ImportSpec: - return true - default: - return false - } -} - func (p *Package) fastEncode() (_ []byte, err error) { defer derrors.Wrap(&err, "godoc.Package.FastEncode()") diff --git a/internal/godoc/encode_test.go b/internal/godoc/encode_test.go index 6f6cc839..77d0c049 100644 --- a/internal/godoc/encode_test.go +++ b/internal/godoc/encode_test.go @@ -7,8 +7,6 @@ package godoc import ( "bytes" "context" - "encoding/gob" - "errors" "fmt" "go/ast" "go/parser" @@ -252,64 +250,6 @@ func printNode(w io.Writer, root ast.Node) error { return err } -// Compare the time it takes to encode with gob vs. internal/codec. -func BenchmarkEncoding(b *testing.B) { - p, err := packageForDir(packageToTest, true) - if err != nil { - b.Fatal(err) - } - b.Run("gob", func(b *testing.B) { - for i := 0; i < b.N; i++ { - _, err := p.gobEncode() - if err != nil { - b.Fatal(err) - } - } - }) - b.Run("fast", func(b *testing.B) { - for i := 0; i < b.N; i++ { - _, err := p.fastEncode() - if err != nil { - b.Fatal(err) - } - } - }) -} - -// Compare the time it takes to decode with gob vs. internal/codec. -func BenchmarkDecoding(b *testing.B) { - p, err := packageForDir(packageToTest, true) - if err != nil { - b.Fatal(err) - } - b.Run("gob", func(b *testing.B) { - data, err := p.gobEncode() - if err != nil { - b.Fatal(err) - } - b.ResetTimer() - for i := 0; i < b.N; i++ { - _, err := gobDecodePackage(data[encodingTypeLen:]) - if err != nil { - b.Fatal(err) - } - } - }) - b.Run("fast", func(b *testing.B) { - data, err := p.fastEncode() - if err != nil { - b.Fatal(err) - } - b.ResetTimer() - for i := 0; i < b.N; i++ { - _, err := fastDecodePackage(data[encodingTypeLen:]) - if err != nil { - b.Fatal(err) - } - } - }) -} - func printFileSet(w io.Writer, fset *token.FileSet) error { var err error fset.Iterate(func(f *token.File) bool { @@ -318,28 +258,3 @@ func printFileSet(w io.Writer, fset *token.FileSet) error { }) return err } - -func (p *Package) gobEncode() (_ []byte, err error) { - if p.renderCalled { - return nil, errors.New("can't Encode after Render") - } - - for _, f := range p.Files { - removeCycles(f) - } - - var buf bytes.Buffer - io.WriteString(&buf, gobEncodingType) - enc := gob.NewEncoder(&buf) - // Encode the fset using the Write method it provides. - if err := p.Fset.Write(enc.Encode); err != nil { - return nil, fmt.Errorf("p.Fset.Write: %v", err) - } - if err := enc.Encode(p.encPackage); err != nil { - return nil, fmt.Errorf("enc.Encode: %v", err) - } - for _, f := range p.Files { - fixupObjects(f) - } - return buf.Bytes(), nil -} diff --git a/internal/godoc/godoc.go b/internal/godoc/godoc.go index 31a841c8..0925d11b 100644 --- a/internal/godoc/godoc.go +++ b/internal/godoc/godoc.go @@ -45,15 +45,6 @@ type encPackage struct { // fields that can be directly encoded type File struct { Name string // full file pathname relative to zip content directory AST *ast.File - // The following fields are only for encoding and decoding. They are public - // only because gob requires them to be. Clients should ignore them. - UnresolvedNums []int `codec:"-"` // used to handle sharing of unresolved identifiers - ScopeItems []scopeItem `codec:"-"` // sorted by name for deterministic encoding -} - -type scopeItem struct { - Name string - Num int } // NewPackage returns a new Package with the given fset and set of module package paths. diff --git a/internal/testing/sample/documentation.gen.go b/internal/testing/sample/documentation.gen.go index ee8adf22..b6dff1ef 100644 --- a/internal/testing/sample/documentation.gen.go +++ b/internal/testing/sample/documentation.gen.go @@ -408,7 +408,7 @@ BUG(uid): this verifies that notes are rendered </div></section></div> `) - DocumentationSource = []byte{0x41, 0x53, 0x54, 0x32, 0xf6, 0x14, 0xf7, 0x7, 0x5b, 0x5d, 0x75, 0x69, 0x6e, 0x74, 0x38, 0xf7, 0x11, 0x2a, 0x67, 0x6f, 0x64, 0x6f, 0x63, 0x2e, 0x65, 0x6e, 0x63, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0xf7, 0xc, 0x2a, 0x61, 0x73, 0x74, 0x2e, 0x47, 0x65, 0x6e, 0x44, 0x65, 0x63, 0x6c, 0xf7, 0xf, 0x2a, 0x61, 0x73, 0x74, 0x2e, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x53, 0x70, 0x65, 0x63, 0xf7, 0xe, 0x2a, 0x61, 0x73, 0x74, 0x2e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x53, 0x70, 0x65, 0x63, 0xf7, 0x3, 0x69, 0x6e, 0x74, 0xf7, 0xd, 0x2a, 0x61, 0x73, 0x74, 0x2e, 0x42, 0x61, 0x73, 0x69, 0x63, 0x4c, 0x69, 0x74, 0xf7, 0xd, 0x2a, 0x61, 0x73, 0x74, 0x2e, 0x43, 0x61, 0x6c, 0x6c, 0x45, 0x78, 0x70, 0x72, 0xf7, 0xa, 0x2a, 0x61, 0x73, 0x74, 0x2e, 0x49, 0x64, 0x65, 0x6e, 0x74, 0xf7, 0xd, 0x2a, 0x61, 0x73, 0x74, 0x2e, 0x46, 0x75, 0x6e, 0x63, 0x44, 0x65, 0x63, 0x6c, 0xf7, 0xa, 0x2a, 0x61, 0x73, 0x74, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0xf7, 0x11, 0x2a, 0x61, 0x73, 0x74, 0x2e, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x45, 0x78, 0x70, 0x72, 0xf7, 0xd, 0x2a, 0x61, 0x73, 0x74, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x53, 0x70, 0x65, 0x63, 0xf7, 0xf, 0x2a, 0x61, 0x73, 0x74, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x54, 0x79, 0x70, 0x65, 0xf7, 0x12, 0x2a, 0x61, 0x73, 0x74, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0xf7, 0xd, 0x2a, 0x61, 0x73, 0x74, 0x2e, 0x46, 0x75, 0x6e, 0x63, 0x54, 0x79, 0x70, 0x65, 0xf7, 0xf, 0x2a, 0x61, 0x73, 0x74, 0x2e, 0x41, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0xf7, 0x11, 0x2a, 0x61, 0x73, 0x74, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x65, 0x4c, 0x69, 0x74, 0xf7, 0xe, 0x2a, 0x61, 0x73, 0x74, 0x2e, 0x41, 0x72, 0x72, 0x61, 0x79, 0x54, 0x79, 0x70, 0x65, 0xf7, 0xd, 0x2a, 0x61, 0x73, 0x74, 0x2e, 0x45, 0x78, 0x70, 0x72, 0x53, 0x74, 0x6d, 0x74, 0xf6, 0x2, 0x0, 0xf7, 0xf7, 0x4, 0x97, 0x2, 0x0, 0x0, 0x33, 0xff, 0x81, 0x3, 0x1, 0x1, 0x11, 0x73, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x1, 0xff, 0x82, 0x0, 0x1, 0x2, 0x1, 0x4, 0x42, 0x61, 0x73, 0x65, 0x1, 0x4, 0x0, 0x1, 0x5, 0x46, 0x69, 0x6c, 0x65, 0x73, 0x1, 0xff, 0x8c, 0x0, 0x0, 0x0, 0x25, 0xff, 0x8b, 0x2, 0x1, 0x1, 0x16, 0x5b, 0x5d, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x2e, 0x73, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x1, 0xff, 0x8c, 0x0, 0x1, 0xff, 0x84, 0x0, 0x0, 0x4d, 0xff, 0x83, 0x3, 0x1, 0x1, 0xe, 0x73, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x1, 0xff, 0x84, 0x0, 0x1, 0x5, 0x1, 0x4, 0x4e, 0x61, 0x6d, 0x65, 0x1, 0xc, 0x0, 0x1, 0x4, 0x42, 0x61, 0x73, 0x65, 0x1, 0x4, 0x0, 0x1, 0x4, 0x53, 0x69, 0x7a, 0x65, 0x1, 0x4, 0x0, 0x1, 0x5, 0x4c, 0x69, 0x6e, 0x65, 0x73, 0x1, 0xff, 0x86, 0x0, 0x1, 0x5, 0x49, 0x6e, 0x66, 0x6f, 0x73, 0x1, 0xff, 0x8a, 0x0, 0x0, 0x0, 0x13, 0xff, 0x85, 0x2, 0x1, 0x1, 0x5, 0x5b, 0x5d, 0x69, 0x6e, 0x74, 0x1, 0xff, 0x86, 0x0, 0x1, 0x4, 0x0, 0x0, 0x1f, 0xff, 0x89, 0x2, 0x1, 0x1, 0x10, 0x5b, 0x5d, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x2e, 0x6c, 0x69, 0x6e, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x1, 0xff, 0x8a, 0x0, 0x1, 0xff, 0x88, 0x0, 0x0, 0x42, 0xff, 0x87, 0x3, 0x1, 0x1, 0x8, 0x6c, 0x69, 0x6e, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x1, 0xff, 0x88, 0x0, 0x1, 0x4, 0x1, 0x6, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x1, 0x4, 0x0, 0x1, 0x8, 0x46, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x1, 0xc, 0x0, 0x1, 0x4, 0x4c, 0x69, 0x6e, 0x65, 0x1, 0x4, 0x0, 0x1, 0x6, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x1, 0x4, 0x0, 0x0, 0x0, 0xfe, 0x1, 0x75, 0xff, 0x82, 0x1, 0xfe, 0xa, 0xf8, 0x1, 0x2, 0x1, 0x26, 0x2e, 0x2e, 0x2f, 0x2e, 0x2e, 0x2f, 0x67, 0x6f, 0x64, 0x6f, 0x63, 0x2f, 0x74, 0x65, 0x73, 0x74, 0x64, 0x61, 0x74, 0x61, 0x2f, 0x70, 0x2f, 0x65, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x5f, 0x74, 0x65, 0x73, 0x74, 0x2e, 0x67, 0x6f, 0x1, 0x2, 0x1, 0xfe, 0x3, 0x8e, 0x1, 0x17, 0x0, 0x6e, 0xff, 0xda, 0xfe, 0x1, 0x3e, 0xfe, 0x1, 0x40, 0xfe, 0x1, 0x5e, 0xfe, 0x1, 0x60, 0xfe, 0x1, 0xd0, 0xfe, 0x1, 0xd2, 0xfe, 0x2, 0x6, 0xfe, 0x2, 0x2c, 0xfe, 0x2, 0x54, 0xfe, 0x2, 0x70, 0xfe, 0x2, 0x98, 0xfe, 0x2, 0xd8, 0xfe, 0x2, 0xdc, 0xfe, 0x2, 0xde, 0xfe, 0x3, 0xa, 0xfe, 0x3, 0x2e, 0xfe, 0x3, 0x56, 0xfe, 0x3, 0x64, 0xfe, 0x3, 0x7c, 0xfe, 0x3, 0x8a, 0x0, 0x1, 0x1b, 0x2e, 0x2e, 0x2f, 0x2e, 0x2e, 0x2f, 0x67, 0x6f, 0x64, 0x6f, 0x63, 0x2f, 0x74, 0x65, 0x73, 0x74, 0x64, 0x61, 0x74, 0x61, 0x2f, 0x70, 0x2f, 0x70, 0x2e, 0x67, 0x6f, 0x1, 0xfe, 0x3, 0x92, 0x1, 0xfe, 0x7, 0x64, 0x1, 0x48, 0x0, 0x6e, 0xff, 0xda, 0xfe, 0x1, 0x3e, 0xfe, 0x1, 0x40, 0xfe, 0x1, 0xb4, 0xfe, 0x2, 0x20, 0xfe, 0x2, 0x26, 0xfe, 0x2, 0x2c, 0xfe, 0x2, 0x3e, 0xfe, 0x2, 0x44, 0xfe, 0x2, 0x8c, 0xfe, 0x2, 0xa0, 0xfe, 0x2, 0xa2, 0xfe, 0x2, 0xb4, 0xfe, 0x2, 0xc2, 0xfe, 0x2, 0xd2, 0xfe, 0x2, 0xd6, 0xfe, 0x2, 0xd8, 0xfe, 0x2, 0xea, 0xfe, 0x3, 0x2, 0xfe, 0x3, 0x4, 0xfe, 0x3, 0x12, 0xfe, 0x3, 0x32, 0xfe, 0x3, 0x34, 0xfe, 0x3, 0x56, 0xfe, 0x3, 0x82, 0xfe, 0x3, 0xa2, 0xfe, 0x3, 0xa6, 0xfe, 0x3, 0xa8, 0xfe, 0x3, 0xce, 0xfe, 0x3, 0xec, 0xfe, 0x3, 0xf0, 0xfe, 0x3, 0xf2, 0xfe, 0x4, 0x2, 0xfe, 0x4, 0x18, 0xfe, 0x4, 0x1a, 0xfe, 0x4, 0x3a, 0xfe, 0x4, 0x58, 0xfe, 0x4, 0x5a, 0xfe, 0x4, 0x7a, 0xfe, 0x4, 0x8c, 0xfe, 0x4, 0x8e, 0xfe, 0x4, 0xa6, 0xfe, 0x4, 0xc2, 0xfe, 0x4, 0xdc, 0xfe, 0x4, 0xe0, 0xfe, 0x4, 0xe2, 0xfe, 0x4, 0xf6, 0xfe, 0x5, 0x5c, 0xfe, 0x5, 0x7c, 0xfe, 0x5, 0x7e, 0xfe, 0x5, 0xa8, 0xfe, 0x5, 0xc8, 0xfe, 0x5, 0xca, 0xfe, 0x5, 0xec, 0xfe, 0x6, 0xc, 0xfe, 0x6, 0x10, 0xfe, 0x6, 0x12, 0xfe, 0x6, 0x34, 0xfe, 0x6, 0x44, 0xfe, 0x6, 0x52, 0xfe, 0x6, 0x56, 0xfe, 0x6, 0x78, 0xfe, 0x6, 0xa6, 0xfe, 0x6, 0xec, 0xfe, 0x6, 0xfc, 0xfe, 0x7, 0x0, 0xfe, 0x7, 0x2, 0xfe, 0x7, 0x2e, 0xfe, 0x7, 0x54, 0xfe, 0x7, 0x60, 0x0, 0x0, 0xf6, 0x2, 0x1, 0xf4, 0x2, 0xf6, 0x2, 0xf4, 0x0, 0xf7, 0x1b, 0x2e, 0x2e, 0x2f, 0x2e, 0x2e, 0x2f, 0x67, 0x6f, 0x64, 0x6f, 0x63, 0x2f, 0x74, 0x65, 0x73, 0x74, 0x64, 0x61, 0x74, 0x61, 0x2f, 0x70, 0x2f, 0x70, 0x2e, 0x67, 0x6f, 0x1, 0xf4, 0x0, 0xf4, 0x0, 0xf6, 0x7, 0xf4, 0x0, 0xf7, 0x4, 0xd2, 0x4, 0x0, 0x0, 0x1, 0xf7, 0x39, 0x2f, 0x2f, 0x20, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x20, 0x70, 0x20, 0x69, 0x73, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x74, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x67, 0x6f, 0x64, 0x6f, 0x63, 0x2e, 0x52, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x2e, 0x20, 0x54, 0x68, 0x65, 0x72, 0x65, 0x20, 0x61, 0x72, 0x65, 0x20, 0x61, 0x20, 0x6c, 0x6f, 0x74, 0xf3, 0xf4, 0x0, 0xf7, 0x4, 0x46, 0x5, 0x0, 0x0, 0x1, 0xf7, 0x35, 0x2f, 0x2f, 0x20, 0x6f, 0x66, 0x20, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x20, 0x74, 0x68, 0x69, 0x6e, 0x67, 0x73, 0x20, 0x74, 0x6f, 0x20, 0x73, 0x61, 0x79, 0x2c, 0x20, 0x62, 0x75, 0x74, 0x20, 0x74, 0x68, 0x61, 0x74, 0x27, 0x73, 0x20, 0x74, 0x68, 0x65, 0x20, 0x67, 0x69, 0x73, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x69, 0x74, 0x2e, 0xf3, 0xf4, 0x0, 0xf7, 0x4, 0xb2, 0x5, 0x0, 0x0, 0x1, 0xf7, 0x2, 0x2f, 0x2f, 0xf3, 0xf4, 0x0, 0xf7, 0x4, 0xb8, 0x5, 0x0, 0x0, 0x1, 0xf7, 0x2, 0x2f, 0x2f, 0xf3, 0xf4, 0x0, 0xf7, 0x4, 0xbe, 0x5, 0x0, 0x0, 0x1, 0xf7, 0x8, 0x2f, 0x2f, 0x20, 0x4c, 0x69, 0x6e, 0x6b, 0x73, 0xf3, 0xf4, 0x0, 0xf7, 0x4, 0xd0, 0x5, 0x0, 0x0, 0x1, 0xf7, 0x2, 0x2f, 0x2f, 0xf3, 0xf4, 0x0, 0xf7, 0x4, 0xd6, 0x5, 0x0, 0x0, 0x1, 0xf7, 0x23, 0x2f, 0x2f, 0x20, 0x2d, 0x20, 0x70, 0x6b, 0x67, 0x2e, 0x67, 0x6f, 0x2e, 0x64, 0x65, 0x76, 0x2c, 0x20, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x70, 0x6b, 0x67, 0x2e, 0x67, 0x6f, 0x2e, 0x64, 0x65, 0x76, 0xf3, 0xf3, 0x1, 0xf7, 0x4, 0x1e, 0x6, 0x0, 0x0, 0x2, 0xf4, 0x0, 0xf7, 0x4, 0x2e, 0x6, 0x0, 0x0, 0x1, 0xf7, 0x1, 0x70, 0xf3, 0x3, 0xf6, 0xd, 0xf6, 0x2, 0x2, 0xf4, 0x1, 0xf7, 0x4, 0x34, 0x6, 0x0, 0x0, 0x2, 0x96, 0x3, 0xf7, 0x4, 0x42, 0x6, 0x0, 0x0, 0x4, 0xf6, 0x2, 0xf6, 0x2, 0x3, 0xf4, 0x2, 0xf4, 0x0, 0xf7, 0x4, 0x48, 0x6, 0x0, 0x0, 0x1, 0x12, 0x2, 0xf7, 0x5, 0x22, 0x66, 0x6d, 0x74, 0x22, 0xf3, 0xf3, 0xf6, 0x2, 0x3, 0xf4, 0x2, 0xf4, 0x0, 0xf7, 0x4, 0x56, 0x6, 0x0, 0x0, 0x1, 0x12, 0x2, 0xf7, 0x6, 0x22, 0x74, 0x69, 0x6d, 0x65, 0x22, 0xf3, 0xf3, 0x5, 0xf7, 0x4, 0x64, 0x6, 0x0, 0x0, 0xf3, 0xf6, 0x2, 0x2, 0xf4, 0x0, 0xf4, 0x0, 0xf6, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0x6a, 0x6, 0x0, 0x0, 0x1, 0xf7, 0x8, 0x2f, 0x2f, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0xf3, 0xf3, 0x1, 0xf7, 0x4, 0x7c, 0x6, 0x0, 0x0, 0x2, 0x80, 0x4, 0xf6, 0x1, 0xf6, 0x2, 0x4, 0xf4, 0x1, 0xf6, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0x88, 0x6, 0x0, 0x0, 0x1, 0xf7, 0x1, 0x43, 0x2, 0xf4, 0x0, 0x4, 0x1, 0xf7, 0x1, 0x43, 0x2, 0xf6, 0x2, 0x4, 0xf5, 0x14, 0x3, 0xf6, 0x2, 0x5, 0x0, 0xf3, 0xf3, 0x3, 0xf6, 0x1, 0xf6, 0x2, 0x6, 0xf4, 0x0, 0xf7, 0x4, 0x90, 0x6, 0x0, 0x0, 0x1, 0xa, 0x2, 0xf7, 0x1, 0x31, 0xf3, 0xf3, 0xf3, 0xf6, 0x2, 0x2, 0xf4, 0x0, 0xf4, 0x0, 0xf6, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0x96, 0x6, 0x0, 0x0, 0x1, 0xf7, 0x6, 0x2f, 0x2f, 0x20, 0x76, 0x61, 0x72, 0xf3, 0xf3, 0x1, 0xf7, 0x4, 0xa4, 0x6, 0x0, 0x0, 0x2, 0xaa, 0x4, 0xf6, 0x1, 0xf6, 0x2, 0x4, 0xf4, 0x1, 0xf6, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0xac, 0x6, 0x0, 0x0, 0x1, 0xf7, 0x1, 0x56, 0x2, 0xf4, 0x0, 0x8, 0x1, 0xf7, 0x1, 0x56, 0x2, 0xf6, 0x2, 0x4, 0xf5, 0x1b, 0x3, 0xf6, 0x2, 0x5, 0x0, 0xf3, 0xf3, 0x3, 0xf6, 0x1, 0xf6, 0x2, 0x7, 0xf4, 0x0, 0xf6, 0x2, 0x8, 0xf4, 0x0, 0xf7, 0x4, 0xb4, 0x6, 0x0, 0x0, 0x1, 0xf7, 0x5, 0x75, 0x6e, 0x65, 0x78, 0x70, 0x2, 0xf4, 0x0, 0xa, 0x1, 0xf7, 0x5, 0x75, 0x6e, 0x65, 0x78, 0x70, 0x2, 0xf6, 0x2, 0x9, 0xf4, 0x0, 0xf4, 0x0, 0xf6, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0x3a, 0x7, 0x0, 0x0, 0x1, 0xf7, 0x12, 0x2f, 0x2f, 0x20, 0x75, 0x6e, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x20, 0x66, 0x75, 0x6e, 0x63, 0xf3, 0xf3, 0x2, 0xf4, 0x0, 0xf7, 0x4, 0x6a, 0x7, 0x0, 0x0, 0x1, 0xf7, 0x5, 0x75, 0x6e, 0x65, 0x78, 0x70, 0x2, 0xf5, 0x20, 0xf3, 0x3, 0xf4, 0x0, 0xf7, 0x4, 0x60, 0x7, 0x0, 0x0, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0x74, 0x7, 0x0, 0x0, 0x2, 0xf7, 0x4, 0x76, 0x7, 0x0, 0x0, 0xf3, 0xf3, 0x4, 0xf4, 0x0, 0xf7, 0x4, 0x7a, 0x7, 0x0, 0x0, 0x2, 0xf7, 0x4, 0x7e, 0x7, 0x0, 0x0, 0xf3, 0xf3, 0xf3, 0xf3, 0x1, 0xf7, 0x4, 0xbe, 0x6, 0x0, 0x0, 0x4, 0xf7, 0x4, 0xc0, 0x6, 0x0, 0x0, 0xf3, 0xf3, 0xf3, 0xf6, 0x2, 0x9, 0xf4, 0x0, 0xf4, 0x0, 0xf6, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0xc6, 0x6, 0x0, 0x0, 0x1, 0xf7, 0x10, 0x2f, 0x2f, 0x20, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x20, 0x66, 0x75, 0x6e, 0x63, 0xf3, 0xf3, 0x2, 0xf4, 0x0, 0xf7, 0x4, 0xf2, 0x6, 0x0, 0x0, 0x1, 0xf7, 0x1, 0x46, 0x2, 0xf4, 0x0, 0xa, 0x1, 0xf7, 0x1, 0x46, 0x2, 0xf6, 0x2, 0x9, 0xf5, 0x28, 0xf3, 0xf3, 0x3, 0xf4, 0x0, 0xf7, 0x4, 0xe8, 0x6, 0x0, 0x0, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0xf4, 0x6, 0x0, 0x0, 0x1, 0xf6, 0x1, 0xf4, 0x1, 0xf6, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0xf6, 0x6, 0x0, 0x0, 0x1, 0xf7, 0x1, 0x74, 0x2, 0xf4, 0x0, 0x8, 0x1, 0xf7, 0x1, 0x74, 0x2, 0xf6, 0x2, 0xa, 0xf5, 0x2f, 0xf3, 0xf3, 0x2, 0xf6, 0x2, 0xb, 0xf4, 0x0, 0xf6, 0x2, 0x8, 0xf4, 0x0, 0xf7, 0x4, 0xfa, 0x6, 0x0, 0x0, 0x1, 0xf7, 0x4, 0x74, 0x69, 0x6d, 0x65, 0xf3, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0x4, 0x7, 0x0, 0x0, 0x1, 0xf7, 0x4, 0x54, 0x69, 0x6d, 0x65, 0xf3, 0xf3, 0xf3, 0x2, 0xf7, 0x4, 0xc, 0x7, 0x0, 0x0, 0xf3, 0xf3, 0xf3, 0xf6, 0x2, 0x2, 0xf4, 0x0, 0xf4, 0x0, 0xf6, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0x84, 0x7, 0x0, 0x0, 0x1, 0xf7, 0x7, 0x2f, 0x2f, 0x20, 0x74, 0x79, 0x70, 0x65, 0xf3, 0xf3, 0x1, 0xf7, 0x4, 0x94, 0x7, 0x0, 0x0, 0x2, 0xa8, 0x4, 0xf6, 0x1, 0xf6, 0x2, 0xc, 0xf4, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0x9e, 0x7, 0x0, 0x0, 0x1, 0xf7, 0x1, 0x54, 0x2, 0xf4, 0x0, 0x6, 0x1, 0xf7, 0x1, 0x54, 0x2, 0xf6, 0x2, 0xc, 0xf5, 0x38, 0xf3, 0xf3, 0x3, 0xf6, 0x2, 0x8, 0xf4, 0x0, 0xf7, 0x4, 0xa2, 0x7, 0x0, 0x0, 0x1, 0xf7, 0x3, 0x69, 0x6e, 0x74, 0xf3, 0xf3, 0xf3, 0xf6, 0x2, 0x2, 0xf4, 0x0, 0xf4, 0x0, 0xf6, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0xac, 0x7, 0x0, 0x0, 0x1, 0xf7, 0xf, 0x2f, 0x2f, 0x20, 0x74, 0x79, 0x70, 0x65, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x74, 0xf3, 0xf3, 0x1, 0xf7, 0x4, 0xcc, 0x7, 0x0, 0x0, 0x2, 0x80, 0x4, 0xf6, 0x1, 0xf6, 0x2, 0x4, 0xf4, 0x1, 0xf6, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0xd8, 0x7, 0x0, 0x0, 0x1, 0xf7, 0x2, 0x43, 0x54, 0x2, 0xf4, 0x0, 0x4, 0x1, 0xf7, 0x2, 0x43, 0x54, 0x2, 0xf6, 0x2, 0x4, 0xf5, 0x3f, 0x3, 0xf6, 0x2, 0x5, 0x0, 0xf3, 0xf3, 0x2, 0xf6, 0x2, 0x8, 0xf4, 0x0, 0xf7, 0x4, 0xde, 0x7, 0x0, 0x0, 0x1, 0xf7, 0x1, 0x54, 0x2, 0xf5, 0x3a, 0xf3, 0x3, 0xf6, 0x1, 0xf6, 0x2, 0x6, 0xf4, 0x0, 0xf7, 0x4, 0xe6, 0x7, 0x0, 0x0, 0x1, 0xa, 0x2, 0xf7, 0x1, 0x33, 0xf3, 0xf3, 0xf3, 0xf6, 0x2, 0x2, 0xf4, 0x0, 0xf4, 0x0, 0xf6, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0xec, 0x7, 0x0, 0x0, 0x1, 0xf7, 0xf, 0x2f, 0x2f, 0x20, 0x74, 0x79, 0x70, 0x65, 0x56, 0x61, 0x72, 0x69, 0x61, 0x62, 0x6c, 0x65, 0xf3, 0xf3, 0x1, 0xf7, 0x4, 0xc, 0x8, 0x0, 0x0, 0x2, 0xaa, 0x4, 0xf6, 0x1, 0xf6, 0x2, 0x4, 0xf4, 0x1, 0xf6, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0x14, 0x8, 0x0, 0x0, 0x1, 0xf7, 0x2, 0x56, 0x54, 0x2, 0xf4, 0x0, 0x8, 0x1, 0xf7, 0x2, 0x56, 0x54, 0x2, 0xf6, 0x2, 0x4, 0xf5, 0x47, 0x3, 0xf6, 0x2, 0x5, 0x0, 0xf3, 0xf3, 0x2, 0xf6, 0x2, 0x8, 0xf4, 0x0, 0xf7, 0x4, 0x1a, 0x8, 0x0, 0x0, 0x1, 0xf7, 0x1, 0x54, 0x2, 0xf5, 0x3a, 0xf3, 0xf3, 0xf3, 0xf6, 0x2, 0x9, 0xf4, 0x0, 0xf4, 0x0, 0xf6, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0x20, 0x8, 0x0, 0x0, 0x1, 0xf7, 0xb, 0x2f, 0x2f, 0x20, 0x74, 0x79, 0x70, 0x65, 0x46, 0x75, 0x6e, 0x63, 0xf3, 0xf3, 0x2, 0xf4, 0x0, 0xf7, 0x4, 0x42, 0x8, 0x0, 0x0, 0x1, 0xf7, 0x2, 0x54, 0x46, 0x2, 0xf4, 0x0, 0xa, 0x1, 0xf7, 0x2, 0x54, 0x46, 0x2, 0xf6, 0x2, 0x9, 0xf5, 0x4b, 0xf3, 0xf3, 0x3, 0xf4, 0x0, 0xf7, 0x4, 0x38, 0x8, 0x0, 0x0, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0x46, 0x8, 0x0, 0x0, 0x2, 0xf7, 0x4, 0x48, 0x8, 0x0, 0x0, 0xf3, 0x2, 0xf4, 0x1, 0xf6, 0x1, 0xf4, 0x2, 0xf6, 0x2, 0x8, 0xf4, 0x0, 0xf7, 0x4, 0x4c, 0x8, 0x0, 0x0, 0x1, 0xf7, 0x1, 0x54, 0x2, 0xf5, 0x3a, 0xf3, 0xf3, 0xf3, 0xf3, 0xf3, 0xf6, 0x2, 0x9, 0xf4, 0x0, 0xf4, 0x0, 0xf6, 0x2, 0xf4, 0x0, 0xf7, 0x4, 0x74, 0x8, 0x0, 0x0, 0x1, 0xf7, 0x9, 0x2f, 0x2f, 0x20, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0xf3, 0xf4, 0x0, 0xf7, 0x4, 0x88, 0x8, 0x0, 0x0, 0x1, 0xf7, 0x32, 0x2f, 0x2f, 0x20, 0x42, 0x55, 0x47, 0x28, 0x75, 0x69, 0x64, 0x29, 0x3a, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x76, 0x65, 0x72, 0x69, 0x66, 0x69, 0x65, 0x73, 0x20, 0x74, 0x68, 0x61, 0x74, 0x20, 0x6e, 0x6f, 0x74, 0x65, 0x73, 0x20, 0x61, 0x72, 0x65, 0x20, 0x72, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x65, 0x64, 0xf3, 0xf3, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0xf8, 0x8, 0x0, 0x0, 0x1, 0xf6, 0x1, 0xf4, 0x2, 0xf6, 0x2, 0x8, 0xf4, 0x0, 0xf7, 0x4, 0xfa, 0x8, 0x0, 0x0, 0x1, 0xf7, 0x1, 0x54, 0x2, 0xf5, 0x3a, 0xf3, 0xf3, 0x2, 0xf7, 0x4, 0xfc, 0x8, 0x0, 0x0, 0xf3, 0x2, 0xf4, 0x0, 0xf7, 0x4, 0x0, 0x9, 0x0, 0x0, 0x1, 0xf7, 0x1, 0x4d, 0xf3, 0x3, 0xf4, 0x0, 0xf7, 0x4, 0xee, 0x8, 0x0, 0x0, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0x2, 0x9, 0x0, 0x0, 0x2, 0xf7, 0x4, 0x4, 0x9, 0x0, 0x0, 0xf3, 0xf3, 0xf3, 0xf6, 0x2, 0x2, 0xf4, 0x1, 0xf7, 0x4, 0x5c, 0x9, 0x0, 0x0, 0x2, 0xa8, 0x4, 0xf6, 0x1, 0xf6, 0x2, 0xc, 0xf4, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0x66, 0x9, 0x0, 0x0, 0x1, 0xf7, 0x2, 0x53, 0x31, 0x2, 0xf4, 0x0, 0x6, 0x1, 0xf7, 0x2, 0x53, 0x31, 0x2, 0xf6, 0x2, 0xc, 0xf5, 0x60, 0xf3, 0xf3, 0x3, 0xf6, 0x2, 0xd, 0xf4, 0x0, 0xf7, 0x4, 0x6c, 0x9, 0x0, 0x0, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0x7a, 0x9, 0x0, 0x0, 0x1, 0xf6, 0x1, 0xf4, 0x1, 0xf6, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0x80, 0x9, 0x0, 0x0, 0x1, 0xf7, 0x1, 0x46, 0x2, 0xf4, 0x0, 0x8, 0x1, 0xf7, 0x1, 0x46, 0x2, 0xf6, 0x2, 0xa, 0xf5, 0x65, 0xf3, 0xf3, 0x2, 0xf6, 0x2, 0x8, 0xf4, 0x0, 0xf7, 0x4, 0x84, 0x9, 0x0, 0x0, 0x1, 0xf7, 0x3, 0x69, 0x6e, 0x74, 0xf3, 0x4, 0xf4, 0x0, 0xf6, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0x8c, 0x9, 0x0, 0x0, 0x1, 0xf7, 0x8, 0x2f, 0x2f, 0x20, 0x66, 0x69, 0x65, 0x6c, 0x64, 0xf3, 0xf3, 0xf3, 0x2, 0xf7, 0x4, 0x9e, 0x9, 0x0, 0x0, 0xf3, 0xf3, 0xf3, 0xf3, 0xf6, 0x2, 0x2, 0xf4, 0x1, 0xf7, 0x4, 0xa4, 0x9, 0x0, 0x0, 0x2, 0xa8, 0x4, 0xf6, 0x1, 0xf6, 0x2, 0xc, 0xf4, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0xae, 0x9, 0x0, 0x0, 0x1, 0xf7, 0x2, 0x75, 0x73, 0x2, 0xf4, 0x0, 0x6, 0x1, 0xf7, 0x2, 0x75, 0x73, 0x2, 0xf6, 0x2, 0xc, 0xf5, 0x6c, 0xf3, 0xf3, 0x3, 0xf6, 0x2, 0xd, 0xf4, 0x0, 0xf7, 0x4, 0xb4, 0x9, 0x0, 0x0, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0xc2, 0x9, 0x0, 0x0, 0x1, 0xf6, 0x2, 0xf4, 0x1, 0xf6, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0xc8, 0x9, 0x0, 0x0, 0x1, 0xf7, 0x1, 0x47, 0x2, 0xf4, 0x0, 0x8, 0x1, 0xf7, 0x1, 0x47, 0x2, 0xf6, 0x2, 0xa, 0xf5, 0x71, 0xf3, 0xf3, 0x2, 0xf6, 0x2, 0x8, 0xf4, 0x0, 0xf7, 0x4, 0xcc, 0x9, 0x0, 0x0, 0x1, 0xf7, 0x4, 0x62, 0x6f, 0x6f, 0x6c, 0xf3, 0xf3, 0xf4, 0x1, 0xf6, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0xd8, 0x9, 0x0, 0x0, 0x1, 0xf7, 0x1, 0x75, 0x2, 0xf4, 0x0, 0x8, 0x1, 0xf7, 0x1, 0x75, 0x2, 0xf6, 0x2, 0xa, 0xf5, 0x75, 0xf3, 0xf3, 0x2, 0xf6, 0x2, 0x8, 0xf4, 0x0, 0xf7, 0x4, 0xdc, 0x9, 0x0, 0x0, 0x1, 0xf7, 0x3, 0x69, 0x6e, 0x74, 0xf3, 0xf3, 0x2, 0xf7, 0x4, 0xe4, 0x9, 0x0, 0x0, 0xf3, 0xf3, 0xf3, 0xf3, 0xf6, 0x2, 0x2, 0xf4, 0x1, 0xf7, 0x4, 0xe8, 0x9, 0x0, 0x0, 0x2, 0xa8, 0x4, 0xf6, 0x1, 0xf6, 0x2, 0xc, 0xf4, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0xf2, 0x9, 0x0, 0x0, 0x1, 0xf7, 0x2, 0x53, 0x32, 0x2, 0xf4, 0x0, 0x6, 0x1, 0xf7, 0x2, 0x53, 0x32, 0x2, 0xf6, 0x2, 0xc, 0xf5, 0x7a, 0xf3, 0xf3, 0x3, 0xf6, 0x2, 0xd, 0xf4, 0x0, 0xf7, 0x4, 0xf8, 0x9, 0x0, 0x0, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0x6, 0xa, 0x0, 0x0, 0x1, 0xf6, 0x3, 0xf4, 0x2, 0xf6, 0x2, 0x8, 0xf4, 0x0, 0xf7, 0x4, 0xc, 0xa, 0x0, 0x0, 0x1, 0xf7, 0x2, 0x53, 0x31, 0x2, 0xf5, 0x62, 0xf3, 0x4, 0xf4, 0x0, 0xf6, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0x12, 0xa, 0x0, 0x0, 0x1, 0xf7, 0x12, 0x2f, 0x2f, 0x20, 0x65, 0x6d, 0x62, 0x65, 0x64, 0x64, 0x65, 0x64, 0x20, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0xf3, 0xf3, 0xf3, 0xf4, 0x2, 0xf6, 0x2, 0x8, 0xf4, 0x0, 0xf7, 0x4, 0x3a, 0xa, 0x0, 0x0, 0x1, 0xf7, 0x2, 0x75, 0x73, 0x2, 0xf5, 0x6e, 0xf3, 0x4, 0xf4, 0x0, 0xf6, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0x40, 0xa, 0x0, 0x0, 0x1, 0xf7, 0x1e, 0x2f, 0x2f, 0x20, 0x65, 0x6d, 0x62, 0x65, 0x64, 0x64, 0x65, 0x64, 0x2c, 0x20, 0x75, 0x6e, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x20, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0xf3, 0xf3, 0xf3, 0xf4, 0x1, 0xf6, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0x80, 0xa, 0x0, 0x0, 0x1, 0xf7, 0x1, 0x48, 0x2, 0xf4, 0x0, 0x8, 0x1, 0xf7, 0x1, 0x48, 0x2, 0xf6, 0x2, 0xa, 0xf5, 0x87, 0xf3, 0xf3, 0x2, 0xf6, 0x2, 0x8, 0xf4, 0x0, 0xf7, 0x4, 0x86, 0xa, 0x0, 0x0, 0x1, 0xf7, 0x3, 0x69, 0x6e, 0x74, 0xf3, 0xf3, 0x2, 0xf7, 0x4, 0x8e, 0xa, 0x0, 0x0, 0xf3, 0xf3, 0xf3, 0xf3, 0xf6, 0x2, 0x2, 0xf4, 0x0, 0xf4, 0x0, 0xf6, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0x94, 0xa, 0x0, 0x0, 0x1, 0xf7, 0x15, 0x2f, 0x2f, 0x20, 0x49, 0x20, 0x69, 0x73, 0x20, 0x61, 0x6e, 0x20, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x2e, 0xf3, 0xf3, 0x1, 0xf7, 0x4, 0xc0, 0xa, 0x0, 0x0, 0x2, 0xa8, 0x4, 0xf6, 0x1, 0xf6, 0x2, 0xc, 0xf4, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0xca, 0xa, 0x0, 0x0, 0x1, 0xf7, 0x1, 0x49, 0x2, 0xf4, 0x0, 0x6, 0x1, 0xf7, 0x1, 0x49, 0x2, 0xf6, 0x2, 0xc, 0xf5, 0x8e, 0xf3, 0xf3, 0x3, 0xf6, 0x2, 0xe, 0xf4, 0x0, 0xf7, 0x4, 0xce, 0xa, 0x0, 0x0, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0xe2, 0xa, 0x0, 0x0, 0x1, 0xf6, 0x1, 0xf4, 0x1, 0xf6, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0xe8, 0xa, 0x0, 0x0, 0x1, 0xf7, 0x2, 0x4d, 0x31, 0x2, 0xf4, 0x0, 0xa, 0x1, 0xf7, 0x2, 0x4d, 0x31, 0x2, 0xf6, 0x2, 0xa, 0xf5, 0x93, 0xf3, 0xf3, 0x2, 0xf6, 0x2, 0xf, 0xf4, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0xec, 0xa, 0x0, 0x0, 0x2, 0xf7, 0x4, 0xee, 0xa, 0x0, 0x0, 0xf3, 0xf3, 0xf3, 0x2, 0xf7, 0x4, 0xf2, 0xa, 0x0, 0x0, 0xf3, 0xf3, 0xf3, 0xf3, 0x4, 0xf4, 0x1, 0xf6, 0x18, 0xf7, 0x1, 0x43, 0xf5, 0x16, 0xf7, 0x2, 0x43, 0x54, 0xf5, 0x41, 0xf7, 0x2, 0x75, 0x73, 0xf5, 0x6e, 0xf7, 0x2, 0x53, 0x31, 0xf5, 0x62, 0xf7, 0x2, 0x53, 0x32, 0xf5, 0x7c, 0xf7, 0x1, 0x56, 0xf5, 0x1d, 0xf7, 0x1, 0x46, 0xf5, 0x2c, 0xf7, 0x5, 0x75, 0x6e, 0x65, 0x78, 0x70, 0xf5, 0x20, 0xf7, 0x1, 0x54, 0xf5, 0x3a, 0xf7, 0x2, 0x56, 0x54, 0xf5, 0x49, 0xf7, 0x2, 0x54, 0x46, 0xf5, 0x4f, 0xf7, 0x1, 0x49, 0xf5, 0x90, 0xf3, 0x5, 0xf6, 0x2, 0xf5, 0xd, 0xf5, 0xf, 0x6, 0xf6, 0x7, 0xf5, 0x33, 0xf4, 0x0, 0xf7, 0x4, 0x16, 0x7, 0x0, 0x0, 0x1, 0xf7, 0x3, 0x66, 0x6d, 0x74, 0xf3, 0xf5, 0x3b, 0xf5, 0x68, 0xf5, 0x74, 0xf5, 0x78, 0xf5, 0x8a, 0x7, 0xf6, 0x10, 0xf4, 0x0, 0xf6, 0x3, 0xf4, 0x0, 0xf7, 0x4, 0x92, 0x3, 0x0, 0x0, 0x1, 0xf7, 0x36, 0x2f, 0x2f, 0x20, 0x43, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, 0x32, 0x30, 0x32, 0x30, 0x20, 0x54, 0x68, 0x65, 0x20, 0x47, 0x6f, 0x20, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x73, 0x2e, 0x20, 0x41, 0x6c, 0x6c, 0x20, 0x72, 0x69, 0x67, 0x68, 0x74, 0x73, 0x20, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x2e, 0xf3, 0xf4, 0x0, 0xf7, 0x4, 0x0, 0x4, 0x0, 0x0, 0x1, 0xf7, 0x35, 0x2f, 0x2f, 0x20, 0x55, 0x73, 0x65, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x20, 0x63, 0x6f, 0x64, 0x65, 0x20, 0x69, 0x73, 0x20, 0x67, 0x6f, 0x76, 0x65, 0x72, 0x6e, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x61, 0x20, 0x42, 0x53, 0x44, 0x2d, 0x73, 0x74, 0x79, 0x6c, 0x65, 0xf3, 0xf4, 0x0, 0xf7, 0x4, 0x6c, 0x4, 0x0, 0x0, 0x1, 0xf7, 0x31, 0x2f, 0x2f, 0x20, 0x6c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x20, 0x74, 0x68, 0x61, 0x74, 0x20, 0x63, 0x61, 0x6e, 0x20, 0x62, 0x65, 0x20, 0x66, 0x6f, 0x75, 0x6e, 0x64, 0x20, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x4c, 0x49, 0x43, 0x45, 0x4e, 0x53, 0x45, 0x20, 0x66, 0x69, 0x6c, 0x65, 0x2e, 0xf3, 0xf3, 0xf5, 0x3, 0xf5, 0x12, 0xf5, 0x19, 0xf5, 0x29, 0xf5, 0x22, 0xf5, 0x36, 0xf5, 0x3d, 0xf5, 0x45, 0xf5, 0x4c, 0xf5, 0x56, 0xf4, 0x0, 0xf6, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0x10, 0x9, 0x0, 0x0, 0x1, 0xf7, 0x14, 0x2f, 0x2f, 0x20, 0x75, 0x6e, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x20, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0xf3, 0xf3, 0xf5, 0x69, 0xf5, 0x81, 0xf5, 0x85, 0xf5, 0x8c, 0xf3, 0xf3, 0xf4, 0x0, 0xf7, 0x26, 0x2e, 0x2e, 0x2f, 0x2e, 0x2e, 0x2f, 0x67, 0x6f, 0x64, 0x6f, 0x63, 0x2f, 0x74, 0x65, 0x73, 0x74, 0x64, 0x61, 0x74, 0x61, 0x2f, 0x70, 0x2f, 0x65, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x5f, 0x74, 0x65, 0x73, 0x74, 0x2e, 0x67, 0x6f, 0x1, 0xf4, 0x1, 0xf7, 0x4, 0x42, 0x1, 0x0, 0x0, 0x2, 0xf4, 0x0, 0xf7, 0x4, 0x52, 0x1, 0x0, 0x0, 0x1, 0xf7, 0x6, 0x70, 0x5f, 0x74, 0x65, 0x73, 0x74, 0xf3, 0x3, 0xf6, 0x3, 0xf6, 0x2, 0x2, 0xf4, 0x1, 0xf7, 0x4, 0x62, 0x1, 0x0, 0x0, 0x2, 0x96, 0x4, 0xf6, 0x1, 0xf6, 0x2, 0x3, 0xf4, 0x2, 0xf4, 0x0, 0xf7, 0x4, 0x70, 0x1, 0x0, 0x0, 0x1, 0x12, 0x2, 0xf7, 0x30, 0x22, 0x67, 0x6f, 0x6c, 0x61, 0x6e, 0x67, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x78, 0x2f, 0x70, 0x6b, 0x67, 0x73, 0x69, 0x74, 0x65, 0x2f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2f, 0x67, 0x6f, 0x64, 0x6f, 0x63, 0x2f, 0x74, 0x65, 0x73, 0x74, 0x64, 0x61, 0x74, 0x61, 0x2f, 0x70, 0x22, 0xf3, 0xf3, 0xf3, 0xf6, 0x2, 0x9, 0xf4, 0x0, 0xf4, 0x0, 0xf6, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0xd4, 0x1, 0x0, 0x0, 0x1, 0xf7, 0x19, 0x2f, 0x2f, 0x20, 0x6e, 0x6f, 0x6e, 0x2d, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x20, 0x65, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0xf3, 0xf3, 0x2, 0xf4, 0x0, 0xf7, 0x4, 0x12, 0x2, 0x0, 0x0, 0x1, 0xf7, 0x9, 0x45, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x46, 0x2, 0xf4, 0x0, 0xa, 0x1, 0xf7, 0x9, 0x45, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x46, 0x2, 0xf6, 0x2, 0x9, 0xf5, 0xa6, 0xf3, 0xf3, 0x3, 0xf4, 0x0, 0xf7, 0x4, 0x8, 0x2, 0x0, 0x0, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0x24, 0x2, 0x0, 0x0, 0x2, 0xf7, 0x4, 0x26, 0x2, 0x0, 0x0, 0xf3, 0xf3, 0x4, 0xf4, 0x0, 0xf7, 0x4, 0x2a, 0x2, 0x0, 0x0, 0x1, 0xf6, 0x3, 0xf6, 0x2, 0x10, 0xf4, 0x0, 0xf6, 0x1, 0xf6, 0x2, 0x8, 0xf4, 0x0, 0xf7, 0x4, 0x58, 0x2, 0x0, 0x0, 0x1, 0xf7, 0x3, 0x61, 0x70, 0x70, 0x2, 0xf4, 0x0, 0x8, 0x1, 0xf7, 0x3, 0x61, 0x70, 0x70, 0x2, 0xf6, 0x2, 0x10, 0xf5, 0xae, 0xf3, 0xf3, 0x1, 0xf7, 0x4, 0x60, 0x2, 0x0, 0x0, 0x2, 0x5e, 0x3, 0xf6, 0x1, 0xf6, 0x2, 0x11, 0xf4, 0x0, 0xf6, 0x2, 0x8, 0xf4, 0x0, 0xf7, 0x4, 0x66, 0x2, 0x0, 0x0, 0x1, 0xf7, 0x3, 0x41, 0x70, 0x70, 0xf3, 0x1, 0xf7, 0x4, 0x6c, 0x2, 0x0, 0x0, 0x3, 0xf7, 0x4, 0x6e, 0x2, 0x0, 0x0, 0xf3, 0xf3, 0xf6, 0x2, 0x10, 0xf4, 0x0, 0xf6, 0x1, 0xf6, 0x2, 0xb, 0xf4, 0x0, 0xf6, 0x2, 0x8, 0xf4, 0x0, 0xf7, 0x4, 0x74, 0x2, 0x0, 0x0, 0x1, 0xf7, 0x3, 0x61, 0x70, 0x70, 0x2, 0xf5, 0xb0, 0xf3, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0x7c, 0x2, 0x0, 0x0, 0x1, 0xf7, 0x4, 0x4e, 0x61, 0x6d, 0x65, 0xf3, 0xf3, 0x1, 0xf7, 0x4, 0x86, 0x2, 0x0, 0x0, 0x2, 0x54, 0x3, 0xf6, 0x1, 0xf6, 0x2, 0x6, 0xf4, 0x0, 0xf7, 0x4, 0x8a, 0x2, 0x0, 0x0, 0x1, 0x12, 0x2, 0xf7, 0x7, 0x22, 0x67, 0x72, 0x65, 0x65, 0x74, 0x22, 0xf3, 0xf3, 0xf6, 0x2, 0x10, 0xf4, 0x0, 0xf6, 0x1, 0xf6, 0x2, 0x8, 0xf4, 0x0, 0xf7, 0x4, 0x9c, 0x2, 0x0, 0x0, 0x1, 0xf7, 0x1, 0x5f, 0xf3, 0x1, 0xf7, 0x4, 0xa0, 0x2, 0x0, 0x0, 0x2, 0x54, 0x3, 0xf6, 0x1, 0xf6, 0x2, 0x7, 0xf4, 0x0, 0xf6, 0x2, 0xb, 0xf4, 0x0, 0xf6, 0x2, 0x8, 0xf4, 0x0, 0xf7, 0x4, 0xa4, 0x2, 0x0, 0x0, 0x1, 0xf7, 0x3, 0x61, 0x70, 0x70, 0x2, 0xf5, 0xb0, 0xf3, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0xac, 0x2, 0x0, 0x0, 0x1, 0xf7, 0x3, 0x52, 0x75, 0x6e, 0xf3, 0xf3, 0x1, 0xf7, 0x4, 0xb2, 0x2, 0x0, 0x0, 0x2, 0xf6, 0x1, 0xf6, 0x2, 0x11, 0xf4, 0x0, 0xf6, 0x2, 0x12, 0xf4, 0x0, 0xf7, 0x4, 0xb4, 0x2, 0x0, 0x0, 0x2, 0xf6, 0x2, 0x8, 0xf4, 0x0, 0xf7, 0x4, 0xb8, 0x2, 0x0, 0x0, 0x1, 0xf7, 0x6, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0xf3, 0xf3, 0x1, 0xf7, 0x4, 0xc4, 0x2, 0x0, 0x0, 0x2, 0xf6, 0x1, 0xf6, 0x2, 0x6, 0xf4, 0x0, 0xf7, 0x4, 0xc6, 0x2, 0x0, 0x0, 0x1, 0x12, 0x2, 0xf7, 0x7, 0x22, 0x67, 0x72, 0x65, 0x65, 0x74, 0x22, 0xf3, 0x3, 0xf7, 0x4, 0xd4, 0x2, 0x0, 0x0, 0xf3, 0x4, 0xf7, 0x4, 0xd6, 0x2, 0x0, 0x0, 0xf3, 0xf3, 0x2, 0xf7, 0x4, 0xda, 0x2, 0x0, 0x0, 0xf3, 0xf3, 0xf6, 0x2, 0x9, 0xf4, 0x0, 0xf4, 0x0, 0xf6, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0xe0, 0x2, 0x0, 0x0, 0x1, 0xf7, 0x15, 0x2f, 0x2f, 0x20, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x20, 0x65, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0xf3, 0xf3, 0x2, 0xf4, 0x0, 0xf7, 0x4, 0x16, 0x3, 0x0, 0x0, 0x1, 0xf7, 0x8, 0x45, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x46, 0x2, 0xf4, 0x0, 0xa, 0x1, 0xf7, 0x8, 0x45, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x46, 0x2, 0xf6, 0x2, 0x9, 0xf5, 0xc2, 0xf3, 0xf3, 0x3, 0xf4, 0x0, 0xf7, 0x4, 0xc, 0x3, 0x0, 0x0, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0x26, 0x3, 0x0, 0x0, 0x2, 0xf7, 0x4, 0x28, 0x3, 0x0, 0x0, 0xf3, 0xf3, 0x4, 0xf4, 0x0, 0xf7, 0x4, 0x2c, 0x3, 0x0, 0x0, 0x1, 0xf6, 0x1, 0xf6, 0x2, 0x13, 0xf4, 0x0, 0xf6, 0x2, 0x7, 0xf4, 0x0, 0xf6, 0x2, 0xb, 0xf4, 0x0, 0xf6, 0x2, 0x8, 0xf4, 0x0, 0xf7, 0x4, 0x5a, 0x3, 0x0, 0x0, 0x1, 0xf7, 0x1, 0x70, 0xf3, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0x5e, 0x3, 0x0, 0x0, 0x1, 0xf7, 0x1, 0x46, 0xf3, 0xf3, 0x1, 0xf7, 0x4, 0x60, 0x3, 0x0, 0x0, 0x4, 0xf7, 0x4, 0x62, 0x3, 0x0, 0x0, 0xf3, 0xf3, 0x2, 0xf7, 0x4, 0x8c, 0x3, 0x0, 0x0, 0xf3, 0xf3, 0x4, 0xf4, 0x1, 0xf6, 0x4, 0xf7, 0x9, 0x45, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x46, 0xf5, 0xaa, 0xf7, 0x8, 0x45, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x46, 0xf5, 0xc6, 0xf3, 0x5, 0xf6, 0x1, 0xf5, 0xa4, 0x6, 0xf6, 0x3, 0xf5, 0xb2, 0xf5, 0xc0, 0xf5, 0xcd, 0x7, 0xf6, 0x6, 0xf4, 0x0, 0xf6, 0x3, 0xf4, 0x0, 0x2, 0x1, 0xf7, 0x36, 0x2f, 0x2f, 0x20, 0x43, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, 0x32, 0x30, 0x32, 0x30, 0x20, 0x54, 0x68, 0x65, 0x20, 0x47, 0x6f, 0x20, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x73, 0x2e, 0x20, 0x41, 0x6c, 0x6c, 0x20, 0x72, 0x69, 0x67, 0x68, 0x74, 0x73, 0x20, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x2e, 0xf3, 0xf4, 0x0, 0x70, 0x1, 0xf7, 0x35, 0x2f, 0x2f, 0x20, 0x55, 0x73, 0x65, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x20, 0x63, 0x6f, 0x64, 0x65, 0x20, 0x69, 0x73, 0x20, 0x67, 0x6f, 0x76, 0x65, 0x72, 0x6e, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x61, 0x20, 0x42, 0x53, 0x44, 0x2d, 0x73, 0x74, 0x79, 0x6c, 0x65, 0xf3, 0xf4, 0x0, 0xdc, 0x1, 0xf7, 0x31, 0x2f, 0x2f, 0x20, 0x6c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x20, 0x74, 0x68, 0x61, 0x74, 0x20, 0x63, 0x61, 0x6e, 0x20, 0x62, 0x65, 0x20, 0x66, 0x6f, 0x75, 0x6e, 0x64, 0x20, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x4c, 0x49, 0x43, 0x45, 0x4e, 0x53, 0x45, 0x20, 0x66, 0x69, 0x6c, 0x65, 0x2e, 0xf3, 0xf3, 0xf5, 0xa7, 0xf4, 0x0, 0xf6, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0x30, 0x2, 0x0, 0x0, 0x1, 0xf7, 0x12, 0x2f, 0x2f, 0x20, 0x65, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x20, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0xf3, 0xf3, 0xf5, 0xc3, 0xf4, 0x0, 0xf6, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0x32, 0x3, 0x0, 0x0, 0x1, 0xf7, 0x12, 0x2f, 0x2f, 0x20, 0x65, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x20, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0xf3, 0xf3, 0xf4, 0x0, 0xf6, 0x2, 0xf4, 0x0, 0xf7, 0x4, 0x68, 0x3, 0x0, 0x0, 0x1, 0xf7, 0xa, 0x2f, 0x2f, 0x20, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x3a, 0xf3, 0xf4, 0x0, 0xf7, 0x4, 0x80, 0x3, 0x0, 0x0, 0x1, 0xf7, 0x5, 0x2f, 0x2f, 0x20, 0x6f, 0x6b, 0xf3, 0xf3, 0xf3, 0xf3, 0xf3} + DocumentationSource = []byte{0x41, 0x53, 0x54, 0x32, 0xf6, 0x14, 0xf7, 0x7, 0x5b, 0x5d, 0x75, 0x69, 0x6e, 0x74, 0x38, 0xf7, 0x11, 0x2a, 0x67, 0x6f, 0x64, 0x6f, 0x63, 0x2e, 0x65, 0x6e, 0x63, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0xf7, 0xc, 0x2a, 0x61, 0x73, 0x74, 0x2e, 0x47, 0x65, 0x6e, 0x44, 0x65, 0x63, 0x6c, 0xf7, 0xf, 0x2a, 0x61, 0x73, 0x74, 0x2e, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x53, 0x70, 0x65, 0x63, 0xf7, 0xd, 0x2a, 0x61, 0x73, 0x74, 0x2e, 0x46, 0x75, 0x6e, 0x63, 0x44, 0x65, 0x63, 0x6c, 0xf7, 0xf, 0x2a, 0x61, 0x73, 0x74, 0x2e, 0x41, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x53, 0x74, 0x6d, 0x74, 0xf7, 0xa, 0x2a, 0x61, 0x73, 0x74, 0x2e, 0x49, 0x64, 0x65, 0x6e, 0x74, 0xf7, 0x11, 0x2a, 0x61, 0x73, 0x74, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x65, 0x4c, 0x69, 0x74, 0xf7, 0x11, 0x2a, 0x61, 0x73, 0x74, 0x2e, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x45, 0x78, 0x70, 0x72, 0xf7, 0xd, 0x2a, 0x61, 0x73, 0x74, 0x2e, 0x42, 0x61, 0x73, 0x69, 0x63, 0x4c, 0x69, 0x74, 0xf7, 0xd, 0x2a, 0x61, 0x73, 0x74, 0x2e, 0x43, 0x61, 0x6c, 0x6c, 0x45, 0x78, 0x70, 0x72, 0xf7, 0xe, 0x2a, 0x61, 0x73, 0x74, 0x2e, 0x41, 0x72, 0x72, 0x61, 0x79, 0x54, 0x79, 0x70, 0x65, 0xf7, 0xd, 0x2a, 0x61, 0x73, 0x74, 0x2e, 0x45, 0x78, 0x70, 0x72, 0x53, 0x74, 0x6d, 0x74, 0xf7, 0xe, 0x2a, 0x61, 0x73, 0x74, 0x2e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x53, 0x70, 0x65, 0x63, 0xf7, 0x3, 0x69, 0x6e, 0x74, 0xf7, 0xa, 0x2a, 0x61, 0x73, 0x74, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0xf7, 0xd, 0x2a, 0x61, 0x73, 0x74, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x53, 0x70, 0x65, 0x63, 0xf7, 0xf, 0x2a, 0x61, 0x73, 0x74, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x54, 0x79, 0x70, 0x65, 0xf7, 0x12, 0x2a, 0x61, 0x73, 0x74, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0xf7, 0xd, 0x2a, 0x61, 0x73, 0x74, 0x2e, 0x46, 0x75, 0x6e, 0x63, 0x54, 0x79, 0x70, 0x65, 0xf6, 0x2, 0x0, 0xf7, 0xf7, 0x4, 0x97, 0x2, 0x0, 0x0, 0x33, 0xff, 0x81, 0x3, 0x1, 0x1, 0x11, 0x73, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x1, 0xff, 0x82, 0x0, 0x1, 0x2, 0x1, 0x4, 0x42, 0x61, 0x73, 0x65, 0x1, 0x4, 0x0, 0x1, 0x5, 0x46, 0x69, 0x6c, 0x65, 0x73, 0x1, 0xff, 0x8c, 0x0, 0x0, 0x0, 0x25, 0xff, 0x8b, 0x2, 0x1, 0x1, 0x16, 0x5b, 0x5d, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x2e, 0x73, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x1, 0xff, 0x8c, 0x0, 0x1, 0xff, 0x84, 0x0, 0x0, 0x4d, 0xff, 0x83, 0x3, 0x1, 0x1, 0xe, 0x73, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x1, 0xff, 0x84, 0x0, 0x1, 0x5, 0x1, 0x4, 0x4e, 0x61, 0x6d, 0x65, 0x1, 0xc, 0x0, 0x1, 0x4, 0x42, 0x61, 0x73, 0x65, 0x1, 0x4, 0x0, 0x1, 0x4, 0x53, 0x69, 0x7a, 0x65, 0x1, 0x4, 0x0, 0x1, 0x5, 0x4c, 0x69, 0x6e, 0x65, 0x73, 0x1, 0xff, 0x86, 0x0, 0x1, 0x5, 0x49, 0x6e, 0x66, 0x6f, 0x73, 0x1, 0xff, 0x8a, 0x0, 0x0, 0x0, 0x13, 0xff, 0x85, 0x2, 0x1, 0x1, 0x5, 0x5b, 0x5d, 0x69, 0x6e, 0x74, 0x1, 0xff, 0x86, 0x0, 0x1, 0x4, 0x0, 0x0, 0x1f, 0xff, 0x89, 0x2, 0x1, 0x1, 0x10, 0x5b, 0x5d, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x2e, 0x6c, 0x69, 0x6e, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x1, 0xff, 0x8a, 0x0, 0x1, 0xff, 0x88, 0x0, 0x0, 0x42, 0xff, 0x87, 0x3, 0x1, 0x1, 0x8, 0x6c, 0x69, 0x6e, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x1, 0xff, 0x88, 0x0, 0x1, 0x4, 0x1, 0x6, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x1, 0x4, 0x0, 0x1, 0x8, 0x46, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x1, 0xc, 0x0, 0x1, 0x4, 0x4c, 0x69, 0x6e, 0x65, 0x1, 0x4, 0x0, 0x1, 0x6, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x1, 0x4, 0x0, 0x0, 0x0, 0xfe, 0x1, 0x75, 0xff, 0x82, 0x1, 0xfe, 0xa, 0xf8, 0x1, 0x2, 0x1, 0x26, 0x2e, 0x2e, 0x2f, 0x2e, 0x2e, 0x2f, 0x67, 0x6f, 0x64, 0x6f, 0x63, 0x2f, 0x74, 0x65, 0x73, 0x74, 0x64, 0x61, 0x74, 0x61, 0x2f, 0x70, 0x2f, 0x65, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x5f, 0x74, 0x65, 0x73, 0x74, 0x2e, 0x67, 0x6f, 0x1, 0x2, 0x1, 0xfe, 0x3, 0x8e, 0x1, 0x17, 0x0, 0x6e, 0xff, 0xda, 0xfe, 0x1, 0x3e, 0xfe, 0x1, 0x40, 0xfe, 0x1, 0x5e, 0xfe, 0x1, 0x60, 0xfe, 0x1, 0xd0, 0xfe, 0x1, 0xd2, 0xfe, 0x2, 0x6, 0xfe, 0x2, 0x2c, 0xfe, 0x2, 0x54, 0xfe, 0x2, 0x70, 0xfe, 0x2, 0x98, 0xfe, 0x2, 0xd8, 0xfe, 0x2, 0xdc, 0xfe, 0x2, 0xde, 0xfe, 0x3, 0xa, 0xfe, 0x3, 0x2e, 0xfe, 0x3, 0x56, 0xfe, 0x3, 0x64, 0xfe, 0x3, 0x7c, 0xfe, 0x3, 0x8a, 0x0, 0x1, 0x1b, 0x2e, 0x2e, 0x2f, 0x2e, 0x2e, 0x2f, 0x67, 0x6f, 0x64, 0x6f, 0x63, 0x2f, 0x74, 0x65, 0x73, 0x74, 0x64, 0x61, 0x74, 0x61, 0x2f, 0x70, 0x2f, 0x70, 0x2e, 0x67, 0x6f, 0x1, 0xfe, 0x3, 0x92, 0x1, 0xfe, 0x7, 0x64, 0x1, 0x48, 0x0, 0x6e, 0xff, 0xda, 0xfe, 0x1, 0x3e, 0xfe, 0x1, 0x40, 0xfe, 0x1, 0xb4, 0xfe, 0x2, 0x20, 0xfe, 0x2, 0x26, 0xfe, 0x2, 0x2c, 0xfe, 0x2, 0x3e, 0xfe, 0x2, 0x44, 0xfe, 0x2, 0x8c, 0xfe, 0x2, 0xa0, 0xfe, 0x2, 0xa2, 0xfe, 0x2, 0xb4, 0xfe, 0x2, 0xc2, 0xfe, 0x2, 0xd2, 0xfe, 0x2, 0xd6, 0xfe, 0x2, 0xd8, 0xfe, 0x2, 0xea, 0xfe, 0x3, 0x2, 0xfe, 0x3, 0x4, 0xfe, 0x3, 0x12, 0xfe, 0x3, 0x32, 0xfe, 0x3, 0x34, 0xfe, 0x3, 0x56, 0xfe, 0x3, 0x82, 0xfe, 0x3, 0xa2, 0xfe, 0x3, 0xa6, 0xfe, 0x3, 0xa8, 0xfe, 0x3, 0xce, 0xfe, 0x3, 0xec, 0xfe, 0x3, 0xf0, 0xfe, 0x3, 0xf2, 0xfe, 0x4, 0x2, 0xfe, 0x4, 0x18, 0xfe, 0x4, 0x1a, 0xfe, 0x4, 0x3a, 0xfe, 0x4, 0x58, 0xfe, 0x4, 0x5a, 0xfe, 0x4, 0x7a, 0xfe, 0x4, 0x8c, 0xfe, 0x4, 0x8e, 0xfe, 0x4, 0xa6, 0xfe, 0x4, 0xc2, 0xfe, 0x4, 0xdc, 0xfe, 0x4, 0xe0, 0xfe, 0x4, 0xe2, 0xfe, 0x4, 0xf6, 0xfe, 0x5, 0x5c, 0xfe, 0x5, 0x7c, 0xfe, 0x5, 0x7e, 0xfe, 0x5, 0xa8, 0xfe, 0x5, 0xc8, 0xfe, 0x5, 0xca, 0xfe, 0x5, 0xec, 0xfe, 0x6, 0xc, 0xfe, 0x6, 0x10, 0xfe, 0x6, 0x12, 0xfe, 0x6, 0x34, 0xfe, 0x6, 0x44, 0xfe, 0x6, 0x52, 0xfe, 0x6, 0x56, 0xfe, 0x6, 0x78, 0xfe, 0x6, 0xa6, 0xfe, 0x6, 0xec, 0xfe, 0x6, 0xfc, 0xfe, 0x7, 0x0, 0xfe, 0x7, 0x2, 0xfe, 0x7, 0x2e, 0xfe, 0x7, 0x54, 0xfe, 0x7, 0x60, 0x0, 0x0, 0xf6, 0x2, 0x1, 0xf4, 0x2, 0xf6, 0x2, 0xf4, 0x0, 0xf7, 0x26, 0x2e, 0x2e, 0x2f, 0x2e, 0x2e, 0x2f, 0x67, 0x6f, 0x64, 0x6f, 0x63, 0x2f, 0x74, 0x65, 0x73, 0x74, 0x64, 0x61, 0x74, 0x61, 0x2f, 0x70, 0x2f, 0x65, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x5f, 0x74, 0x65, 0x73, 0x74, 0x2e, 0x67, 0x6f, 0x1, 0xf4, 0x1, 0xf7, 0x4, 0x42, 0x1, 0x0, 0x0, 0x2, 0xf4, 0x0, 0xf7, 0x4, 0x52, 0x1, 0x0, 0x0, 0x1, 0xf7, 0x6, 0x70, 0x5f, 0x74, 0x65, 0x73, 0x74, 0xf3, 0x3, 0xf6, 0x3, 0xf6, 0x2, 0x2, 0xf4, 0x1, 0xf7, 0x4, 0x62, 0x1, 0x0, 0x0, 0x2, 0x96, 0x4, 0xf6, 0x1, 0xf6, 0x2, 0x3, 0xf4, 0x2, 0xf4, 0x0, 0xf7, 0x4, 0x70, 0x1, 0x0, 0x0, 0x1, 0x12, 0x2, 0xf7, 0x30, 0x22, 0x67, 0x6f, 0x6c, 0x61, 0x6e, 0x67, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x78, 0x2f, 0x70, 0x6b, 0x67, 0x73, 0x69, 0x74, 0x65, 0x2f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2f, 0x67, 0x6f, 0x64, 0x6f, 0x63, 0x2f, 0x74, 0x65, 0x73, 0x74, 0x64, 0x61, 0x74, 0x61, 0x2f, 0x70, 0x22, 0xf3, 0xf3, 0xf3, 0xf6, 0x2, 0x4, 0xf4, 0x0, 0xf4, 0x0, 0xf6, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0xd4, 0x1, 0x0, 0x0, 0x1, 0xf7, 0x19, 0x2f, 0x2f, 0x20, 0x6e, 0x6f, 0x6e, 0x2d, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x20, 0x65, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0xf3, 0xf3, 0x2, 0xf4, 0x0, 0xf7, 0x4, 0x12, 0x2, 0x0, 0x0, 0x1, 0xf7, 0x9, 0x45, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x46, 0x2, 0xf4, 0x0, 0xa, 0x1, 0xf7, 0x9, 0x45, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x46, 0x2, 0xf6, 0x2, 0x4, 0xf5, 0x7, 0xf3, 0xf3, 0x3, 0xf4, 0x0, 0xf7, 0x4, 0x8, 0x2, 0x0, 0x0, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0x24, 0x2, 0x0, 0x0, 0x2, 0xf7, 0x4, 0x26, 0x2, 0x0, 0x0, 0xf3, 0xf3, 0x4, 0xf4, 0x0, 0xf7, 0x4, 0x2a, 0x2, 0x0, 0x0, 0x1, 0xf6, 0x3, 0xf6, 0x2, 0x5, 0xf4, 0x0, 0xf6, 0x1, 0xf6, 0x2, 0x6, 0xf4, 0x0, 0xf7, 0x4, 0x58, 0x2, 0x0, 0x0, 0x1, 0xf7, 0x3, 0x61, 0x70, 0x70, 0x2, 0xf4, 0x0, 0x8, 0x1, 0xf7, 0x3, 0x61, 0x70, 0x70, 0x2, 0xf6, 0x2, 0x5, 0xf5, 0xf, 0xf3, 0xf3, 0x1, 0xf7, 0x4, 0x60, 0x2, 0x0, 0x0, 0x2, 0x5e, 0x3, 0xf6, 0x1, 0xf6, 0x2, 0x7, 0xf4, 0x0, 0xf6, 0x2, 0x6, 0xf4, 0x0, 0xf7, 0x4, 0x66, 0x2, 0x0, 0x0, 0x1, 0xf7, 0x3, 0x41, 0x70, 0x70, 0xf3, 0x1, 0xf7, 0x4, 0x6c, 0x2, 0x0, 0x0, 0x3, 0xf7, 0x4, 0x6e, 0x2, 0x0, 0x0, 0xf3, 0xf3, 0xf6, 0x2, 0x5, 0xf4, 0x0, 0xf6, 0x1, 0xf6, 0x2, 0x8, 0xf4, 0x0, 0xf6, 0x2, 0x6, 0xf4, 0x0, 0xf7, 0x4, 0x74, 0x2, 0x0, 0x0, 0x1, 0xf7, 0x3, 0x61, 0x70, 0x70, 0x2, 0xf5, 0x11, 0xf3, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0x7c, 0x2, 0x0, 0x0, 0x1, 0xf7, 0x4, 0x4e, 0x61, 0x6d, 0x65, 0xf3, 0xf3, 0x1, 0xf7, 0x4, 0x86, 0x2, 0x0, 0x0, 0x2, 0x54, 0x3, 0xf6, 0x1, 0xf6, 0x2, 0x9, 0xf4, 0x0, 0xf7, 0x4, 0x8a, 0x2, 0x0, 0x0, 0x1, 0x12, 0x2, 0xf7, 0x7, 0x22, 0x67, 0x72, 0x65, 0x65, 0x74, 0x22, 0xf3, 0xf3, 0xf6, 0x2, 0x5, 0xf4, 0x0, 0xf6, 0x1, 0xf6, 0x2, 0x6, 0xf4, 0x0, 0xf7, 0x4, 0x9c, 0x2, 0x0, 0x0, 0x1, 0xf7, 0x1, 0x5f, 0xf3, 0x1, 0xf7, 0x4, 0xa0, 0x2, 0x0, 0x0, 0x2, 0x54, 0x3, 0xf6, 0x1, 0xf6, 0x2, 0xa, 0xf4, 0x0, 0xf6, 0x2, 0x8, 0xf4, 0x0, 0xf6, 0x2, 0x6, 0xf4, 0x0, 0xf7, 0x4, 0xa4, 0x2, 0x0, 0x0, 0x1, 0xf7, 0x3, 0x61, 0x70, 0x70, 0x2, 0xf5, 0x11, 0xf3, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0xac, 0x2, 0x0, 0x0, 0x1, 0xf7, 0x3, 0x52, 0x75, 0x6e, 0xf3, 0xf3, 0x1, 0xf7, 0x4, 0xb2, 0x2, 0x0, 0x0, 0x2, 0xf6, 0x1, 0xf6, 0x2, 0x7, 0xf4, 0x0, 0xf6, 0x2, 0xb, 0xf4, 0x0, 0xf7, 0x4, 0xb4, 0x2, 0x0, 0x0, 0x2, 0xf6, 0x2, 0x6, 0xf4, 0x0, 0xf7, 0x4, 0xb8, 0x2, 0x0, 0x0, 0x1, 0xf7, 0x6, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0xf3, 0xf3, 0x1, 0xf7, 0x4, 0xc4, 0x2, 0x0, 0x0, 0x2, 0xf6, 0x1, 0xf6, 0x2, 0x9, 0xf4, 0x0, 0xf7, 0x4, 0xc6, 0x2, 0x0, 0x0, 0x1, 0x12, 0x2, 0xf7, 0x7, 0x22, 0x67, 0x72, 0x65, 0x65, 0x74, 0x22, 0xf3, 0x3, 0xf7, 0x4, 0xd4, 0x2, 0x0, 0x0, 0xf3, 0x4, 0xf7, 0x4, 0xd6, 0x2, 0x0, 0x0, 0xf3, 0xf3, 0x2, 0xf7, 0x4, 0xda, 0x2, 0x0, 0x0, 0xf3, 0xf3, 0xf6, 0x2, 0x4, 0xf4, 0x0, 0xf4, 0x0, 0xf6, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0xe0, 0x2, 0x0, 0x0, 0x1, 0xf7, 0x15, 0x2f, 0x2f, 0x20, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x20, 0x65, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0xf3, 0xf3, 0x2, 0xf4, 0x0, 0xf7, 0x4, 0x16, 0x3, 0x0, 0x0, 0x1, 0xf7, 0x8, 0x45, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x46, 0x2, 0xf4, 0x0, 0xa, 0x1, 0xf7, 0x8, 0x45, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x46, 0x2, 0xf6, 0x2, 0x4, 0xf5, 0x23, 0xf3, 0xf3, 0x3, 0xf4, 0x0, 0xf7, 0x4, 0xc, 0x3, 0x0, 0x0, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0x26, 0x3, 0x0, 0x0, 0x2, 0xf7, 0x4, 0x28, 0x3, 0x0, 0x0, 0xf3, 0xf3, 0x4, 0xf4, 0x0, 0xf7, 0x4, 0x2c, 0x3, 0x0, 0x0, 0x1, 0xf6, 0x1, 0xf6, 0x2, 0xc, 0xf4, 0x0, 0xf6, 0x2, 0xa, 0xf4, 0x0, 0xf6, 0x2, 0x8, 0xf4, 0x0, 0xf6, 0x2, 0x6, 0xf4, 0x0, 0xf7, 0x4, 0x5a, 0x3, 0x0, 0x0, 0x1, 0xf7, 0x1, 0x70, 0xf3, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0x5e, 0x3, 0x0, 0x0, 0x1, 0xf7, 0x1, 0x46, 0xf3, 0xf3, 0x1, 0xf7, 0x4, 0x60, 0x3, 0x0, 0x0, 0x4, 0xf7, 0x4, 0x62, 0x3, 0x0, 0x0, 0xf3, 0xf3, 0x2, 0xf7, 0x4, 0x8c, 0x3, 0x0, 0x0, 0xf3, 0xf3, 0x4, 0xf4, 0x1, 0xf6, 0x4, 0xf7, 0x9, 0x45, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x54, 0x46, 0xf5, 0xb, 0xf7, 0x8, 0x45, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x46, 0xf5, 0x27, 0xf3, 0x5, 0xf6, 0x1, 0xf5, 0x5, 0x6, 0xf6, 0x3, 0xf5, 0x13, 0xf5, 0x21, 0xf5, 0x2e, 0x7, 0xf6, 0x6, 0xf4, 0x0, 0xf6, 0x3, 0xf4, 0x0, 0x2, 0x1, 0xf7, 0x36, 0x2f, 0x2f, 0x20, 0x43, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, 0x32, 0x30, 0x32, 0x30, 0x20, 0x54, 0x68, 0x65, 0x20, 0x47, 0x6f, 0x20, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x73, 0x2e, 0x20, 0x41, 0x6c, 0x6c, 0x20, 0x72, 0x69, 0x67, 0x68, 0x74, 0x73, 0x20, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x2e, 0xf3, 0xf4, 0x0, 0x70, 0x1, 0xf7, 0x35, 0x2f, 0x2f, 0x20, 0x55, 0x73, 0x65, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x20, 0x63, 0x6f, 0x64, 0x65, 0x20, 0x69, 0x73, 0x20, 0x67, 0x6f, 0x76, 0x65, 0x72, 0x6e, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x61, 0x20, 0x42, 0x53, 0x44, 0x2d, 0x73, 0x74, 0x79, 0x6c, 0x65, 0xf3, 0xf4, 0x0, 0xdc, 0x1, 0xf7, 0x31, 0x2f, 0x2f, 0x20, 0x6c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x20, 0x74, 0x68, 0x61, 0x74, 0x20, 0x63, 0x61, 0x6e, 0x20, 0x62, 0x65, 0x20, 0x66, 0x6f, 0x75, 0x6e, 0x64, 0x20, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x4c, 0x49, 0x43, 0x45, 0x4e, 0x53, 0x45, 0x20, 0x66, 0x69, 0x6c, 0x65, 0x2e, 0xf3, 0xf3, 0xf5, 0x8, 0xf4, 0x0, 0xf6, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0x30, 0x2, 0x0, 0x0, 0x1, 0xf7, 0x12, 0x2f, 0x2f, 0x20, 0x65, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x20, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0xf3, 0xf3, 0xf5, 0x24, 0xf4, 0x0, 0xf6, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0x32, 0x3, 0x0, 0x0, 0x1, 0xf7, 0x12, 0x2f, 0x2f, 0x20, 0x65, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x20, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0xf3, 0xf3, 0xf4, 0x0, 0xf6, 0x2, 0xf4, 0x0, 0xf7, 0x4, 0x68, 0x3, 0x0, 0x0, 0x1, 0xf7, 0xa, 0x2f, 0x2f, 0x20, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x3a, 0xf3, 0xf4, 0x0, 0xf7, 0x4, 0x80, 0x3, 0x0, 0x0, 0x1, 0xf7, 0x5, 0x2f, 0x2f, 0x20, 0x6f, 0x6b, 0xf3, 0xf3, 0xf3, 0xf3, 0xf4, 0x0, 0xf7, 0x1b, 0x2e, 0x2e, 0x2f, 0x2e, 0x2e, 0x2f, 0x67, 0x6f, 0x64, 0x6f, 0x63, 0x2f, 0x74, 0x65, 0x73, 0x74, 0x64, 0x61, 0x74, 0x61, 0x2f, 0x70, 0x2f, 0x70, 0x2e, 0x67, 0x6f, 0x1, 0xf4, 0x0, 0xf4, 0x0, 0xf6, 0x7, 0xf4, 0x0, 0xf7, 0x4, 0xd2, 0x4, 0x0, 0x0, 0x1, 0xf7, 0x39, 0x2f, 0x2f, 0x20, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x20, 0x70, 0x20, 0x69, 0x73, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x74, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x67, 0x6f, 0x64, 0x6f, 0x63, 0x2e, 0x52, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x2e, 0x20, 0x54, 0x68, 0x65, 0x72, 0x65, 0x20, 0x61, 0x72, 0x65, 0x20, 0x61, 0x20, 0x6c, 0x6f, 0x74, 0xf3, 0xf4, 0x0, 0xf7, 0x4, 0x46, 0x5, 0x0, 0x0, 0x1, 0xf7, 0x35, 0x2f, 0x2f, 0x20, 0x6f, 0x66, 0x20, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x20, 0x74, 0x68, 0x69, 0x6e, 0x67, 0x73, 0x20, 0x74, 0x6f, 0x20, 0x73, 0x61, 0x79, 0x2c, 0x20, 0x62, 0x75, 0x74, 0x20, 0x74, 0x68, 0x61, 0x74, 0x27, 0x73, 0x20, 0x74, 0x68, 0x65, 0x20, 0x67, 0x69, 0x73, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x69, 0x74, 0x2e, 0xf3, 0xf4, 0x0, 0xf7, 0x4, 0xb2, 0x5, 0x0, 0x0, 0x1, 0xf7, 0x2, 0x2f, 0x2f, 0xf3, 0xf4, 0x0, 0xf7, 0x4, 0xb8, 0x5, 0x0, 0x0, 0x1, 0xf7, 0x2, 0x2f, 0x2f, 0xf3, 0xf4, 0x0, 0xf7, 0x4, 0xbe, 0x5, 0x0, 0x0, 0x1, 0xf7, 0x8, 0x2f, 0x2f, 0x20, 0x4c, 0x69, 0x6e, 0x6b, 0x73, 0xf3, 0xf4, 0x0, 0xf7, 0x4, 0xd0, 0x5, 0x0, 0x0, 0x1, 0xf7, 0x2, 0x2f, 0x2f, 0xf3, 0xf4, 0x0, 0xf7, 0x4, 0xd6, 0x5, 0x0, 0x0, 0x1, 0xf7, 0x23, 0x2f, 0x2f, 0x20, 0x2d, 0x20, 0x70, 0x6b, 0x67, 0x2e, 0x67, 0x6f, 0x2e, 0x64, 0x65, 0x76, 0x2c, 0x20, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x70, 0x6b, 0x67, 0x2e, 0x67, 0x6f, 0x2e, 0x64, 0x65, 0x76, 0xf3, 0xf3, 0x1, 0xf7, 0x4, 0x1e, 0x6, 0x0, 0x0, 0x2, 0xf4, 0x0, 0xf7, 0x4, 0x2e, 0x6, 0x0, 0x0, 0x1, 0xf7, 0x1, 0x70, 0xf3, 0x3, 0xf6, 0xd, 0xf6, 0x2, 0x2, 0xf4, 0x1, 0xf7, 0x4, 0x34, 0x6, 0x0, 0x0, 0x2, 0x96, 0x3, 0xf7, 0x4, 0x42, 0x6, 0x0, 0x0, 0x4, 0xf6, 0x2, 0xf6, 0x2, 0x3, 0xf4, 0x2, 0xf4, 0x0, 0xf7, 0x4, 0x48, 0x6, 0x0, 0x0, 0x1, 0x12, 0x2, 0xf7, 0x5, 0x22, 0x66, 0x6d, 0x74, 0x22, 0xf3, 0xf3, 0xf6, 0x2, 0x3, 0xf4, 0x2, 0xf4, 0x0, 0xf7, 0x4, 0x56, 0x6, 0x0, 0x0, 0x1, 0x12, 0x2, 0xf7, 0x6, 0x22, 0x74, 0x69, 0x6d, 0x65, 0x22, 0xf3, 0xf3, 0x5, 0xf7, 0x4, 0x64, 0x6, 0x0, 0x0, 0xf3, 0xf6, 0x2, 0x2, 0xf4, 0x0, 0xf4, 0x0, 0xf6, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0x6a, 0x6, 0x0, 0x0, 0x1, 0xf7, 0x8, 0x2f, 0x2f, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0xf3, 0xf3, 0x1, 0xf7, 0x4, 0x7c, 0x6, 0x0, 0x0, 0x2, 0x80, 0x4, 0xf6, 0x1, 0xf6, 0x2, 0xd, 0xf4, 0x1, 0xf6, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0x88, 0x6, 0x0, 0x0, 0x1, 0xf7, 0x1, 0x43, 0x2, 0xf4, 0x0, 0x4, 0x1, 0xf7, 0x1, 0x43, 0x2, 0xf6, 0x2, 0xd, 0xf5, 0x4f, 0x3, 0xf6, 0x2, 0xe, 0x0, 0xf3, 0xf3, 0x3, 0xf6, 0x1, 0xf6, 0x2, 0x9, 0xf4, 0x0, 0xf7, 0x4, 0x90, 0x6, 0x0, 0x0, 0x1, 0xa, 0x2, 0xf7, 0x1, 0x31, 0xf3, 0xf3, 0xf3, 0xf6, 0x2, 0x2, 0xf4, 0x0, 0xf4, 0x0, 0xf6, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0x96, 0x6, 0x0, 0x0, 0x1, 0xf7, 0x6, 0x2f, 0x2f, 0x20, 0x76, 0x61, 0x72, 0xf3, 0xf3, 0x1, 0xf7, 0x4, 0xa4, 0x6, 0x0, 0x0, 0x2, 0xaa, 0x4, 0xf6, 0x1, 0xf6, 0x2, 0xd, 0xf4, 0x1, 0xf6, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0xac, 0x6, 0x0, 0x0, 0x1, 0xf7, 0x1, 0x56, 0x2, 0xf4, 0x0, 0x8, 0x1, 0xf7, 0x1, 0x56, 0x2, 0xf6, 0x2, 0xd, 0xf5, 0x56, 0x3, 0xf6, 0x2, 0xe, 0x0, 0xf3, 0xf3, 0x3, 0xf6, 0x1, 0xf6, 0x2, 0xa, 0xf4, 0x0, 0xf6, 0x2, 0x6, 0xf4, 0x0, 0xf7, 0x4, 0xb4, 0x6, 0x0, 0x0, 0x1, 0xf7, 0x5, 0x75, 0x6e, 0x65, 0x78, 0x70, 0x2, 0xf4, 0x0, 0xa, 0x1, 0xf7, 0x5, 0x75, 0x6e, 0x65, 0x78, 0x70, 0x2, 0xf6, 0x2, 0x4, 0xf4, 0x0, 0xf4, 0x0, 0xf6, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0x3a, 0x7, 0x0, 0x0, 0x1, 0xf7, 0x12, 0x2f, 0x2f, 0x20, 0x75, 0x6e, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x20, 0x66, 0x75, 0x6e, 0x63, 0xf3, 0xf3, 0x2, 0xf4, 0x0, 0xf7, 0x4, 0x6a, 0x7, 0x0, 0x0, 0x1, 0xf7, 0x5, 0x75, 0x6e, 0x65, 0x78, 0x70, 0x2, 0xf5, 0x5b, 0xf3, 0x3, 0xf4, 0x0, 0xf7, 0x4, 0x60, 0x7, 0x0, 0x0, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0x74, 0x7, 0x0, 0x0, 0x2, 0xf7, 0x4, 0x76, 0x7, 0x0, 0x0, 0xf3, 0xf3, 0x4, 0xf4, 0x0, 0xf7, 0x4, 0x7a, 0x7, 0x0, 0x0, 0x2, 0xf7, 0x4, 0x7e, 0x7, 0x0, 0x0, 0xf3, 0xf3, 0xf3, 0xf3, 0x1, 0xf7, 0x4, 0xbe, 0x6, 0x0, 0x0, 0x4, 0xf7, 0x4, 0xc0, 0x6, 0x0, 0x0, 0xf3, 0xf3, 0xf3, 0xf6, 0x2, 0x4, 0xf4, 0x0, 0xf4, 0x0, 0xf6, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0xc6, 0x6, 0x0, 0x0, 0x1, 0xf7, 0x10, 0x2f, 0x2f, 0x20, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x20, 0x66, 0x75, 0x6e, 0x63, 0xf3, 0xf3, 0x2, 0xf4, 0x0, 0xf7, 0x4, 0xf2, 0x6, 0x0, 0x0, 0x1, 0xf7, 0x1, 0x46, 0x2, 0xf4, 0x0, 0xa, 0x1, 0xf7, 0x1, 0x46, 0x2, 0xf6, 0x2, 0x4, 0xf5, 0x63, 0xf3, 0xf3, 0x3, 0xf4, 0x0, 0xf7, 0x4, 0xe8, 0x6, 0x0, 0x0, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0xf4, 0x6, 0x0, 0x0, 0x1, 0xf6, 0x1, 0xf4, 0x1, 0xf6, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0xf6, 0x6, 0x0, 0x0, 0x1, 0xf7, 0x1, 0x74, 0x2, 0xf4, 0x0, 0x8, 0x1, 0xf7, 0x1, 0x74, 0x2, 0xf6, 0x2, 0xf, 0xf5, 0x6a, 0xf3, 0xf3, 0x2, 0xf6, 0x2, 0x8, 0xf4, 0x0, 0xf6, 0x2, 0x6, 0xf4, 0x0, 0xf7, 0x4, 0xfa, 0x6, 0x0, 0x0, 0x1, 0xf7, 0x4, 0x74, 0x69, 0x6d, 0x65, 0xf3, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0x4, 0x7, 0x0, 0x0, 0x1, 0xf7, 0x4, 0x54, 0x69, 0x6d, 0x65, 0xf3, 0xf3, 0xf3, 0x2, 0xf7, 0x4, 0xc, 0x7, 0x0, 0x0, 0xf3, 0xf3, 0xf3, 0xf6, 0x2, 0x2, 0xf4, 0x0, 0xf4, 0x0, 0xf6, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0x84, 0x7, 0x0, 0x0, 0x1, 0xf7, 0x7, 0x2f, 0x2f, 0x20, 0x74, 0x79, 0x70, 0x65, 0xf3, 0xf3, 0x1, 0xf7, 0x4, 0x94, 0x7, 0x0, 0x0, 0x2, 0xa8, 0x4, 0xf6, 0x1, 0xf6, 0x2, 0x10, 0xf4, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0x9e, 0x7, 0x0, 0x0, 0x1, 0xf7, 0x1, 0x54, 0x2, 0xf4, 0x0, 0x6, 0x1, 0xf7, 0x1, 0x54, 0x2, 0xf6, 0x2, 0x10, 0xf5, 0x73, 0xf3, 0xf3, 0x3, 0xf6, 0x2, 0x6, 0xf4, 0x0, 0xf7, 0x4, 0xa2, 0x7, 0x0, 0x0, 0x1, 0xf7, 0x3, 0x69, 0x6e, 0x74, 0xf3, 0xf3, 0xf3, 0xf6, 0x2, 0x2, 0xf4, 0x0, 0xf4, 0x0, 0xf6, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0xac, 0x7, 0x0, 0x0, 0x1, 0xf7, 0xf, 0x2f, 0x2f, 0x20, 0x74, 0x79, 0x70, 0x65, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x74, 0xf3, 0xf3, 0x1, 0xf7, 0x4, 0xcc, 0x7, 0x0, 0x0, 0x2, 0x80, 0x4, 0xf6, 0x1, 0xf6, 0x2, 0xd, 0xf4, 0x1, 0xf6, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0xd8, 0x7, 0x0, 0x0, 0x1, 0xf7, 0x2, 0x43, 0x54, 0x2, 0xf4, 0x0, 0x4, 0x1, 0xf7, 0x2, 0x43, 0x54, 0x2, 0xf6, 0x2, 0xd, 0xf5, 0x7a, 0x3, 0xf6, 0x2, 0xe, 0x0, 0xf3, 0xf3, 0x2, 0xf6, 0x2, 0x6, 0xf4, 0x0, 0xf7, 0x4, 0xde, 0x7, 0x0, 0x0, 0x1, 0xf7, 0x1, 0x54, 0x2, 0xf5, 0x75, 0xf3, 0x3, 0xf6, 0x1, 0xf6, 0x2, 0x9, 0xf4, 0x0, 0xf7, 0x4, 0xe6, 0x7, 0x0, 0x0, 0x1, 0xa, 0x2, 0xf7, 0x1, 0x33, 0xf3, 0xf3, 0xf3, 0xf6, 0x2, 0x2, 0xf4, 0x0, 0xf4, 0x0, 0xf6, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0xec, 0x7, 0x0, 0x0, 0x1, 0xf7, 0xf, 0x2f, 0x2f, 0x20, 0x74, 0x79, 0x70, 0x65, 0x56, 0x61, 0x72, 0x69, 0x61, 0x62, 0x6c, 0x65, 0xf3, 0xf3, 0x1, 0xf7, 0x4, 0xc, 0x8, 0x0, 0x0, 0x2, 0xaa, 0x4, 0xf6, 0x1, 0xf6, 0x2, 0xd, 0xf4, 0x1, 0xf6, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0x14, 0x8, 0x0, 0x0, 0x1, 0xf7, 0x2, 0x56, 0x54, 0x2, 0xf4, 0x0, 0x8, 0x1, 0xf7, 0x2, 0x56, 0x54, 0x2, 0xf6, 0x2, 0xd, 0xf5, 0x82, 0x3, 0xf6, 0x2, 0xe, 0x0, 0xf3, 0xf3, 0x2, 0xf6, 0x2, 0x6, 0xf4, 0x0, 0xf7, 0x4, 0x1a, 0x8, 0x0, 0x0, 0x1, 0xf7, 0x1, 0x54, 0x2, 0xf5, 0x75, 0xf3, 0xf3, 0xf3, 0xf6, 0x2, 0x4, 0xf4, 0x0, 0xf4, 0x0, 0xf6, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0x20, 0x8, 0x0, 0x0, 0x1, 0xf7, 0xb, 0x2f, 0x2f, 0x20, 0x74, 0x79, 0x70, 0x65, 0x46, 0x75, 0x6e, 0x63, 0xf3, 0xf3, 0x2, 0xf4, 0x0, 0xf7, 0x4, 0x42, 0x8, 0x0, 0x0, 0x1, 0xf7, 0x2, 0x54, 0x46, 0x2, 0xf4, 0x0, 0xa, 0x1, 0xf7, 0x2, 0x54, 0x46, 0x2, 0xf6, 0x2, 0x4, 0xf5, 0x86, 0xf3, 0xf3, 0x3, 0xf4, 0x0, 0xf7, 0x4, 0x38, 0x8, 0x0, 0x0, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0x46, 0x8, 0x0, 0x0, 0x2, 0xf7, 0x4, 0x48, 0x8, 0x0, 0x0, 0xf3, 0x2, 0xf4, 0x1, 0xf6, 0x1, 0xf4, 0x2, 0xf6, 0x2, 0x6, 0xf4, 0x0, 0xf7, 0x4, 0x4c, 0x8, 0x0, 0x0, 0x1, 0xf7, 0x1, 0x54, 0x2, 0xf5, 0x75, 0xf3, 0xf3, 0xf3, 0xf3, 0xf3, 0xf6, 0x2, 0x4, 0xf4, 0x0, 0xf4, 0x0, 0xf6, 0x2, 0xf4, 0x0, 0xf7, 0x4, 0x74, 0x8, 0x0, 0x0, 0x1, 0xf7, 0x9, 0x2f, 0x2f, 0x20, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0xf3, 0xf4, 0x0, 0xf7, 0x4, 0x88, 0x8, 0x0, 0x0, 0x1, 0xf7, 0x32, 0x2f, 0x2f, 0x20, 0x42, 0x55, 0x47, 0x28, 0x75, 0x69, 0x64, 0x29, 0x3a, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x76, 0x65, 0x72, 0x69, 0x66, 0x69, 0x65, 0x73, 0x20, 0x74, 0x68, 0x61, 0x74, 0x20, 0x6e, 0x6f, 0x74, 0x65, 0x73, 0x20, 0x61, 0x72, 0x65, 0x20, 0x72, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x65, 0x64, 0xf3, 0xf3, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0xf8, 0x8, 0x0, 0x0, 0x1, 0xf6, 0x1, 0xf4, 0x2, 0xf6, 0x2, 0x6, 0xf4, 0x0, 0xf7, 0x4, 0xfa, 0x8, 0x0, 0x0, 0x1, 0xf7, 0x1, 0x54, 0x2, 0xf5, 0x75, 0xf3, 0xf3, 0x2, 0xf7, 0x4, 0xfc, 0x8, 0x0, 0x0, 0xf3, 0x2, 0xf4, 0x0, 0xf7, 0x4, 0x0, 0x9, 0x0, 0x0, 0x1, 0xf7, 0x1, 0x4d, 0xf3, 0x3, 0xf4, 0x0, 0xf7, 0x4, 0xee, 0x8, 0x0, 0x0, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0x2, 0x9, 0x0, 0x0, 0x2, 0xf7, 0x4, 0x4, 0x9, 0x0, 0x0, 0xf3, 0xf3, 0xf3, 0xf6, 0x2, 0x2, 0xf4, 0x1, 0xf7, 0x4, 0x5c, 0x9, 0x0, 0x0, 0x2, 0xa8, 0x4, 0xf6, 0x1, 0xf6, 0x2, 0x10, 0xf4, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0x66, 0x9, 0x0, 0x0, 0x1, 0xf7, 0x2, 0x53, 0x31, 0x2, 0xf4, 0x0, 0x6, 0x1, 0xf7, 0x2, 0x53, 0x31, 0x2, 0xf6, 0x2, 0x10, 0xf5, 0x9b, 0xf3, 0xf3, 0x3, 0xf6, 0x2, 0x11, 0xf4, 0x0, 0xf7, 0x4, 0x6c, 0x9, 0x0, 0x0, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0x7a, 0x9, 0x0, 0x0, 0x1, 0xf6, 0x1, 0xf4, 0x1, 0xf6, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0x80, 0x9, 0x0, 0x0, 0x1, 0xf7, 0x1, 0x46, 0x2, 0xf4, 0x0, 0x8, 0x1, 0xf7, 0x1, 0x46, 0x2, 0xf6, 0x2, 0xf, 0xf5, 0xa0, 0xf3, 0xf3, 0x2, 0xf6, 0x2, 0x6, 0xf4, 0x0, 0xf7, 0x4, 0x84, 0x9, 0x0, 0x0, 0x1, 0xf7, 0x3, 0x69, 0x6e, 0x74, 0xf3, 0x4, 0xf4, 0x0, 0xf6, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0x8c, 0x9, 0x0, 0x0, 0x1, 0xf7, 0x8, 0x2f, 0x2f, 0x20, 0x66, 0x69, 0x65, 0x6c, 0x64, 0xf3, 0xf3, 0xf3, 0x2, 0xf7, 0x4, 0x9e, 0x9, 0x0, 0x0, 0xf3, 0xf3, 0xf3, 0xf3, 0xf6, 0x2, 0x2, 0xf4, 0x1, 0xf7, 0x4, 0xa4, 0x9, 0x0, 0x0, 0x2, 0xa8, 0x4, 0xf6, 0x1, 0xf6, 0x2, 0x10, 0xf4, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0xae, 0x9, 0x0, 0x0, 0x1, 0xf7, 0x2, 0x75, 0x73, 0x2, 0xf4, 0x0, 0x6, 0x1, 0xf7, 0x2, 0x75, 0x73, 0x2, 0xf6, 0x2, 0x10, 0xf5, 0xa7, 0xf3, 0xf3, 0x3, 0xf6, 0x2, 0x11, 0xf4, 0x0, 0xf7, 0x4, 0xb4, 0x9, 0x0, 0x0, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0xc2, 0x9, 0x0, 0x0, 0x1, 0xf6, 0x2, 0xf4, 0x1, 0xf6, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0xc8, 0x9, 0x0, 0x0, 0x1, 0xf7, 0x1, 0x47, 0x2, 0xf4, 0x0, 0x8, 0x1, 0xf7, 0x1, 0x47, 0x2, 0xf6, 0x2, 0xf, 0xf5, 0xac, 0xf3, 0xf3, 0x2, 0xf6, 0x2, 0x6, 0xf4, 0x0, 0xf7, 0x4, 0xcc, 0x9, 0x0, 0x0, 0x1, 0xf7, 0x4, 0x62, 0x6f, 0x6f, 0x6c, 0xf3, 0xf3, 0xf4, 0x1, 0xf6, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0xd8, 0x9, 0x0, 0x0, 0x1, 0xf7, 0x1, 0x75, 0x2, 0xf4, 0x0, 0x8, 0x1, 0xf7, 0x1, 0x75, 0x2, 0xf6, 0x2, 0xf, 0xf5, 0xb0, 0xf3, 0xf3, 0x2, 0xf6, 0x2, 0x6, 0xf4, 0x0, 0xf7, 0x4, 0xdc, 0x9, 0x0, 0x0, 0x1, 0xf7, 0x3, 0x69, 0x6e, 0x74, 0xf3, 0xf3, 0x2, 0xf7, 0x4, 0xe4, 0x9, 0x0, 0x0, 0xf3, 0xf3, 0xf3, 0xf3, 0xf6, 0x2, 0x2, 0xf4, 0x1, 0xf7, 0x4, 0xe8, 0x9, 0x0, 0x0, 0x2, 0xa8, 0x4, 0xf6, 0x1, 0xf6, 0x2, 0x10, 0xf4, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0xf2, 0x9, 0x0, 0x0, 0x1, 0xf7, 0x2, 0x53, 0x32, 0x2, 0xf4, 0x0, 0x6, 0x1, 0xf7, 0x2, 0x53, 0x32, 0x2, 0xf6, 0x2, 0x10, 0xf5, 0xb5, 0xf3, 0xf3, 0x3, 0xf6, 0x2, 0x11, 0xf4, 0x0, 0xf7, 0x4, 0xf8, 0x9, 0x0, 0x0, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0x6, 0xa, 0x0, 0x0, 0x1, 0xf6, 0x3, 0xf4, 0x2, 0xf6, 0x2, 0x6, 0xf4, 0x0, 0xf7, 0x4, 0xc, 0xa, 0x0, 0x0, 0x1, 0xf7, 0x2, 0x53, 0x31, 0x2, 0xf5, 0x9d, 0xf3, 0x4, 0xf4, 0x0, 0xf6, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0x12, 0xa, 0x0, 0x0, 0x1, 0xf7, 0x12, 0x2f, 0x2f, 0x20, 0x65, 0x6d, 0x62, 0x65, 0x64, 0x64, 0x65, 0x64, 0x20, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0xf3, 0xf3, 0xf3, 0xf4, 0x2, 0xf6, 0x2, 0x6, 0xf4, 0x0, 0xf7, 0x4, 0x3a, 0xa, 0x0, 0x0, 0x1, 0xf7, 0x2, 0x75, 0x73, 0x2, 0xf5, 0xa9, 0xf3, 0x4, 0xf4, 0x0, 0xf6, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0x40, 0xa, 0x0, 0x0, 0x1, 0xf7, 0x1e, 0x2f, 0x2f, 0x20, 0x65, 0x6d, 0x62, 0x65, 0x64, 0x64, 0x65, 0x64, 0x2c, 0x20, 0x75, 0x6e, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x20, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0xf3, 0xf3, 0xf3, 0xf4, 0x1, 0xf6, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0x80, 0xa, 0x0, 0x0, 0x1, 0xf7, 0x1, 0x48, 0x2, 0xf4, 0x0, 0x8, 0x1, 0xf7, 0x1, 0x48, 0x2, 0xf6, 0x2, 0xf, 0xf5, 0xc2, 0xf3, 0xf3, 0x2, 0xf6, 0x2, 0x6, 0xf4, 0x0, 0xf7, 0x4, 0x86, 0xa, 0x0, 0x0, 0x1, 0xf7, 0x3, 0x69, 0x6e, 0x74, 0xf3, 0xf3, 0x2, 0xf7, 0x4, 0x8e, 0xa, 0x0, 0x0, 0xf3, 0xf3, 0xf3, 0xf3, 0xf6, 0x2, 0x2, 0xf4, 0x0, 0xf4, 0x0, 0xf6, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0x94, 0xa, 0x0, 0x0, 0x1, 0xf7, 0x15, 0x2f, 0x2f, 0x20, 0x49, 0x20, 0x69, 0x73, 0x20, 0x61, 0x6e, 0x20, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x2e, 0xf3, 0xf3, 0x1, 0xf7, 0x4, 0xc0, 0xa, 0x0, 0x0, 0x2, 0xa8, 0x4, 0xf6, 0x1, 0xf6, 0x2, 0x10, 0xf4, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0xca, 0xa, 0x0, 0x0, 0x1, 0xf7, 0x1, 0x49, 0x2, 0xf4, 0x0, 0x6, 0x1, 0xf7, 0x1, 0x49, 0x2, 0xf6, 0x2, 0x10, 0xf5, 0xc9, 0xf3, 0xf3, 0x3, 0xf6, 0x2, 0x12, 0xf4, 0x0, 0xf7, 0x4, 0xce, 0xa, 0x0, 0x0, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0xe2, 0xa, 0x0, 0x0, 0x1, 0xf6, 0x1, 0xf4, 0x1, 0xf6, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0xe8, 0xa, 0x0, 0x0, 0x1, 0xf7, 0x2, 0x4d, 0x31, 0x2, 0xf4, 0x0, 0xa, 0x1, 0xf7, 0x2, 0x4d, 0x31, 0x2, 0xf6, 0x2, 0xf, 0xf5, 0xce, 0xf3, 0xf3, 0x2, 0xf6, 0x2, 0x13, 0xf4, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0xec, 0xa, 0x0, 0x0, 0x2, 0xf7, 0x4, 0xee, 0xa, 0x0, 0x0, 0xf3, 0xf3, 0xf3, 0x2, 0xf7, 0x4, 0xf2, 0xa, 0x0, 0x0, 0xf3, 0xf3, 0xf3, 0xf3, 0x4, 0xf4, 0x1, 0xf6, 0x18, 0xf7, 0x1, 0x43, 0xf5, 0x51, 0xf7, 0x1, 0x46, 0xf5, 0x67, 0xf7, 0x1, 0x54, 0xf5, 0x75, 0xf7, 0x2, 0x75, 0x73, 0xf5, 0xa9, 0xf7, 0x2, 0x53, 0x32, 0xf5, 0xb7, 0xf7, 0x1, 0x49, 0xf5, 0xcb, 0xf7, 0x1, 0x56, 0xf5, 0x58, 0xf7, 0x5, 0x75, 0x6e, 0x65, 0x78, 0x70, 0xf5, 0x5b, 0xf7, 0x2, 0x43, 0x54, 0xf5, 0x7c, 0xf7, 0x2, 0x56, 0x54, 0xf5, 0x84, 0xf7, 0x2, 0x54, 0x46, 0xf5, 0x8a, 0xf7, 0x2, 0x53, 0x31, 0xf5, 0x9d, 0xf3, 0x5, 0xf6, 0x2, 0xf5, 0x48, 0xf5, 0x4a, 0x6, 0xf6, 0x7, 0xf5, 0x6e, 0xf4, 0x0, 0xf7, 0x4, 0x16, 0x7, 0x0, 0x0, 0x1, 0xf7, 0x3, 0x66, 0x6d, 0x74, 0xf3, 0xf5, 0x76, 0xf5, 0xa3, 0xf5, 0xaf, 0xf5, 0xb3, 0xf5, 0xc5, 0x7, 0xf6, 0x10, 0xf4, 0x0, 0xf6, 0x3, 0xf4, 0x0, 0xf7, 0x4, 0x92, 0x3, 0x0, 0x0, 0x1, 0xf7, 0x36, 0x2f, 0x2f, 0x20, 0x43, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, 0x32, 0x30, 0x32, 0x30, 0x20, 0x54, 0x68, 0x65, 0x20, 0x47, 0x6f, 0x20, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x73, 0x2e, 0x20, 0x41, 0x6c, 0x6c, 0x20, 0x72, 0x69, 0x67, 0x68, 0x74, 0x73, 0x20, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x2e, 0xf3, 0xf4, 0x0, 0xf7, 0x4, 0x0, 0x4, 0x0, 0x0, 0x1, 0xf7, 0x35, 0x2f, 0x2f, 0x20, 0x55, 0x73, 0x65, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x20, 0x63, 0x6f, 0x64, 0x65, 0x20, 0x69, 0x73, 0x20, 0x67, 0x6f, 0x76, 0x65, 0x72, 0x6e, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x61, 0x20, 0x42, 0x53, 0x44, 0x2d, 0x73, 0x74, 0x79, 0x6c, 0x65, 0xf3, 0xf4, 0x0, 0xf7, 0x4, 0x6c, 0x4, 0x0, 0x0, 0x1, 0xf7, 0x31, 0x2f, 0x2f, 0x20, 0x6c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x20, 0x74, 0x68, 0x61, 0x74, 0x20, 0x63, 0x61, 0x6e, 0x20, 0x62, 0x65, 0x20, 0x66, 0x6f, 0x75, 0x6e, 0x64, 0x20, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x4c, 0x49, 0x43, 0x45, 0x4e, 0x53, 0x45, 0x20, 0x66, 0x69, 0x6c, 0x65, 0x2e, 0xf3, 0xf3, 0xf5, 0x3e, 0xf5, 0x4d, 0xf5, 0x54, 0xf5, 0x64, 0xf5, 0x5d, 0xf5, 0x71, 0xf5, 0x78, 0xf5, 0x80, 0xf5, 0x87, 0xf5, 0x91, 0xf4, 0x0, 0xf6, 0x1, 0xf4, 0x0, 0xf7, 0x4, 0x10, 0x9, 0x0, 0x0, 0x1, 0xf7, 0x14, 0x2f, 0x2f, 0x20, 0x75, 0x6e, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x20, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0xf3, 0xf3, 0xf5, 0xa4, 0xf5, 0xbc, 0xf5, 0xc0, 0xf5, 0xc7, 0xf3, 0xf3, 0xf3} Documentation = &internal.Documentation{ Synopsis: Synopsis, GOOS: GOOS, |
