diff options
| author | Shulhan <ms@kilabit.info> | 2023-05-14 18:51:31 +0700 |
|---|---|---|
| committer | Shulhan <ms@kilabit.info> | 2023-05-14 19:02:53 +0700 |
| commit | 37be5f25b644b63a6c6a21596ac376fe6b2cbd69 (patch) | |
| tree | a88d3303023d0238f6fb8115293521077b259658 | |
| parent | 0d7c4b315cdb8a7a5b90fc9e4ae4b99b2cd42082 (diff) | |
| download | awwan-37be5f25b644b63a6c6a21596ac376fe6b2cbd69.tar.xz | |
all: update module share and ciigo to latest version
This changes replace share package lib/io with lib/os, since the former
has been deprecated.
| -rw-r--r-- | README.md (renamed from README) | 0 | ||||
| -rw-r--r-- | go.mod | 7 | ||||
| -rw-r--r-- | go.sum | 16 | ||||
| -rw-r--r-- | internal/internal.go | 32 | ||||
| -rw-r--r-- | internal/memfs_www.go | 2 | ||||
| -rw-r--r-- | session.go | 4 | ||||
| -rw-r--r-- | template.go | 4 |
7 files changed, 41 insertions, 24 deletions
@@ -6,17 +6,20 @@ module git.sr.ht/~shulhan/awwan go 1.19 require ( - git.sr.ht/~shulhan/ciigo v0.9.3 + git.sr.ht/~shulhan/ciigo v0.10.0 github.com/evanw/esbuild v0.17.10 - github.com/shuLhan/share v0.44.0 + github.com/shuLhan/share v0.46.0 ) require ( git.sr.ht/~shulhan/asciidoctor-go v0.4.1 // indirect + github.com/yuin/goldmark v1.5.4 // indirect + github.com/yuin/goldmark-meta v1.1.0 // indirect golang.org/x/crypto v0.6.0 // indirect golang.org/x/net v0.7.0 // indirect golang.org/x/sys v0.5.0 // indirect golang.org/x/term v0.5.0 // indirect + gopkg.in/yaml.v2 v2.3.0 // indirect ) //replace github.com/shuLhan/share => ../share @@ -1,11 +1,15 @@ git.sr.ht/~shulhan/asciidoctor-go v0.4.1 h1:Zev0L5HyMjH43sPaoJal8E/Hmbel/akoGOxNykhN4Dw= git.sr.ht/~shulhan/asciidoctor-go v0.4.1/go.mod h1:vRHDUl3o3UzDkvVR9dEFYQ0JDqOh0TKpOZWvOh/CGZU= -git.sr.ht/~shulhan/ciigo v0.9.3 h1:q6EqGVvIU8ymkPqBS4HEyHIhbfVhJn6urwvGDg83TAY= -git.sr.ht/~shulhan/ciigo v0.9.3/go.mod h1:SsRnbqnBo+9jWDDZD/uc9IkdgGpBfp39vV0JPXNro9c= +git.sr.ht/~shulhan/ciigo v0.10.0 h1:s1SJ3/NzBcbOLmEZ4z1Cx9Vf7ZdDIvm45b7KMCZKzEY= +git.sr.ht/~shulhan/ciigo v0.10.0/go.mod h1:cG6av+ywJZZp96F43kmLB2QWjm2hYiahbsbeTX/vlgk= github.com/evanw/esbuild v0.17.10 h1:RMwM8ehohA6RSgWVirjnsZ+u9ttNt0gWfRLYCxUbAoc= github.com/evanw/esbuild v0.17.10/go.mod h1:iINY06rn799hi48UqEnaQvVfZWe6W9bET78LbvN8VWk= -github.com/shuLhan/share v0.44.0 h1:Afom8pQrzNYtUZM53y+eqlZw5lkFm7bgl3QjZ3ARsgg= -github.com/shuLhan/share v0.44.0/go.mod h1:BnjohSsgDFMeYQ0/ws7kzb1oABZdVbEwDNGbUhOLee4= +github.com/shuLhan/share v0.46.0 h1:cF0Ngj7wVA6TIcdSmfrqxOwMB3hZ+4df5cJf4GGCun4= +github.com/shuLhan/share v0.46.0/go.mod h1:BhnIWJxq84BTOs3Z2gLFAN8ih9mBfhZbRIjqGupGJag= +github.com/yuin/goldmark v1.5.4 h1:2uY/xC0roWy8IBEGLgB1ywIoEJFGmRrX21YQcvGZzjU= +github.com/yuin/goldmark v1.5.4/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY= +github.com/yuin/goldmark-meta v1.1.0 h1:pWw+JLHGZe8Rk0EGsMVssiNb/AaPMHfSRszZeUeiOUc= +github.com/yuin/goldmark-meta v1.1.0/go.mod h1:U4spWENafuA7Zyg+Lj5RqK/MF+ovMYtBvXi1lBb2VP0= golang.org/x/crypto v0.6.0 h1:qfktjS5LUO+fFKeJXZ+ikTRijMmljikvG68fpMMruSc= golang.org/x/crypto v0.6.0/go.mod h1:OFC/31mSvZgRz0V1QTNCzfAI1aIRzbiufJtkMIlEp58= golang.org/x/net v0.7.0 h1:rJrUqqhjsgNp7KqAIc25s9pZnjU7TUcSY7HcVZjdn1g= @@ -15,3 +19,7 @@ golang.org/x/sys v0.5.0 h1:MUK/U/4lj1t1oPg0HfuXDN/Z1wv31ZJ/YcPiGccS4DU= golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/term v0.5.0 h1:n2a8QNdAb0sZNpU9R1ALUXBbY+w51fCQDN+7EdxNBsY= golang.org/x/term v0.5.0/go.mod h1:jMB1sMXY+tzblOD4FWmEbocvup2/aLOaQEp7JmGp78k= +gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405 h1:yhCVgyC4o1eVCa2tZl7eS0r+SDo693bJlVdllGtEeKM= +gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= +gopkg.in/yaml.v2 v2.3.0 h1:clyUAQHOM3G0M3f5vQj7LuJrETvjVot3Z5el9nffUtU= +gopkg.in/yaml.v2 v2.3.0/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= diff --git a/internal/internal.go b/internal/internal.go index f25ad9c..f14029d 100644 --- a/internal/internal.go +++ b/internal/internal.go @@ -32,7 +32,7 @@ func Build() (err error) { return fmt.Errorf(`%s: %w`, logp, err) } - err = convertAdoc() + err = convertMarkup() if err != nil { return fmt.Errorf(`%s: %w`, logp, err) } @@ -62,7 +62,7 @@ func Watch() { err error ) - err = convertAdoc() + err = convertMarkup() if err != nil { log.Fatalf(`%s: %s`, logp, err) } @@ -81,7 +81,7 @@ func Watch() { var watchOpts = memfs.WatchOptions{ Watches: []string{ - `.*\.(adoc|ts)$`, + `.*\.(adoc|md|ts)$`, }, } @@ -113,18 +113,24 @@ func Watch() { fmt.Printf("%s: update on %s\n", logp, ns.Node.SysPath) switch { - case strings.HasSuffix(ns.Node.SysPath, `.adoc`): - var ( - pathAdocBase = strings.TrimSuffix(ns.Node.SysPath, `.adoc`) - pathHtml = pathAdocBase + `.html` - ) - err = ciigoConv.ToHtmlFile(ns.Node.SysPath, pathHtml) + case strings.HasSuffix(ns.Node.SysPath, `.adoc`), + strings.HasSuffix(ns.Node.SysPath, `.md`): + var fmarkup *ciigo.FileMarkup + + fmarkup, err = ciigo.NewFileMarkup(ns.Node.SysPath, nil) if err != nil { mlog.Errf(`%s: %s: %s`, logp, ns.Node.SysPath, err) - } else { - embedCount++ + continue } + err = ciigoConv.ToHtmlFile(fmarkup) + if err != nil { + mlog.Errf(`%s: %s: %s`, logp, ns.Node.SysPath, err) + continue + } + + embedCount++ + case strings.HasSuffix(ns.Node.SysPath, `.ts`) || strings.HasSuffix(ns.Node.SysPath, `tsconfig.json`): mlog.Outf(`%s: update %s`, logp, ns.Node.SysPath) tsCount++ @@ -184,8 +190,8 @@ func buildTypeScript(esBuildOptions *api.BuildOptions) (err error) { return fmt.Errorf(`%s: %v`, logp, buildResult.Errors[0]) } -// convertAdoc convert all .adoc files inside _www/doc directory to HTML. -func convertAdoc() (err error) { +// convertMarkup convert all markup files inside _www/doc directory to HTML. +func convertMarkup() (err error) { var opts = &ciigo.ConvertOptions{ Root: `_www/doc`, } diff --git a/internal/memfs_www.go b/internal/memfs_www.go index b9fb529..55db38f 100644 --- a/internal/memfs_www.go +++ b/internal/memfs_www.go @@ -143,7 +143,7 @@ func generate__www_main_js() *memfs.Node { Content: []byte("\x76\x61\x72\x20\x61\x70\x70\x20\x3D\x20\x28\x28\x29\x20\x3D\x3E\x20\x7B\x0A\x20\x20\x2F\x2F\x20\x5F\x77\x77\x77\x2F\x77\x75\x69\x2F\x65\x64\x69\x74\x6F\x72\x2F\x65\x64\x69\x74\x6F\x72\x2E\x6A\x73\x0A\x20\x20\x76\x61\x72\x20\x57\x55\x49\x5F\x45\x44\x49\x54\x4F\x52\x5F\x43\x4C\x41\x53\x53\x20\x3D\x20\x22\x77\x75\x69\x5F\x65\x64\x69\x74\x6F\x72\x22\x3B\x0A\x20\x20\x76\x61\x72\x20\x57\x55\x49\x5F\x45\x44\x49\x54\x4F\x52\x5F\x43\x4C\x41\x53\x53\x5F\x4C\x49\x4E\x45\x20\x3D\x20\x22\x77\x75\x69\x5F\x65\x64\x69\x74\x6F\x72\x5F\x6C\x69\x6E\x65\x22\x3B\x0A\x20\x20\x76\x61\x72\x20\x57\x55\x49\x5F\x45\x44\x49\x54\x4F\x52\x5F\x43\x4C\x41\x53\x53\x5F\x4C\x49\x4E\x45\x5F\x4E\x55\x4D\x42\x45\x52\x20\x3D\x20\x22\x77\x75\x69\x5F\x65\x64\x69\x74\x6F\x72\x5F\x6C\x69\x6E\x65\x5F\x6E\x75\x6D\x62\x65\x72\x22\x3B\x0A\x20\x20\x76\x61\x72\x20\x57\x55\x49\x5F\x45\x44\x49\x54\x4F\x52\x5F\x43\x4C\x41\x53\x53\x5F\x4C\x49\x4E\x45\x5F\x54\x45\x58\x54\x20\x3D\x20\x22\x77\x75\x69\x5F\x65\x64\x69\x74\x6F\x72\x5F\x6C\x69\x6E\x65\x5F\x74\x65\x78\x74\x22\x3B\x0A\x20\x20\x76\x61\x72\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x20\x3D\x20\x28\x0A\x20\x20\x20\x20\x2F\x2A\x2A\x20\x40\x63\x6C\x61\x73\x73\x20\x2A\x2F\x0A\x20\x20\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x32\x28\x6F\x70\x74\x73\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x5F\x74\x68\x69\x73\x20\x3D\x20\x74\x68\x69\x73\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x20\x3D\x20\x6F\x70\x74\x73\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x20\x3D\x20\x5B\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x61\x63\x74\x69\x76\x65\x5F\x66\x69\x6C\x65\x20\x3D\x20\x6E\x75\x6C\x6C\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x61\x63\x74\x69\x76\x65\x5F\x74\x65\x78\x74\x20\x3D\x20\x6E\x75\x6C\x6C\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x61\x6E\x67\x65\x5F\x62\x65\x67\x69\x6E\x20\x3D\x20\x2D\x31\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x61\x6E\x67\x65\x5F\x65\x6E\x64\x20\x3D\x20\x2D\x31\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x61\x77\x5F\x6C\x69\x6E\x65\x73\x20\x3D\x20\x5B\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x69\x73\x5F\x6B\x65\x79\x5F\x63\x6F\x6E\x74\x72\x6F\x6C\x20\x3D\x20\x66\x61\x6C\x73\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x75\x6E\x72\x65\x20\x3D\x20\x6E\x65\x77\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x55\x6E\x64\x6F\x52\x65\x64\x6F\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x69\x64\x20\x3D\x20\x6F\x70\x74\x73\x2E\x69\x64\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x69\x73\x5F\x65\x64\x69\x74\x61\x62\x6C\x65\x20\x3D\x20\x6F\x70\x74\x73\x2E\x69\x73\x5F\x65\x64\x69\x74\x61\x62\x6C\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x65\x6C\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x67\x65\x74\x45\x6C\x65\x6D\x65\x6E\x74\x42\x79\x49\x64\x28\x6F\x70\x74\x73\x2E\x69\x64\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x21\x65\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x6F\x6C\x65\x2E\x65\x72\x72\x6F\x72\x28\x22\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x3A\x20\x65\x6C\x65\x6D\x65\x6E\x74\x20\x49\x44\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64\x3A\x22\x2C\x20\x6F\x70\x74\x73\x2E\x69\x64\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x20\x3D\x20\x65\x6C\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x69\x6E\x69\x74\x53\x74\x79\x6C\x65\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x57\x55\x49\x5F\x45\x44\x49\x54\x4F\x52\x5F\x43\x4C\x41\x53\x53\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x73\x65\x6C\x20\x3D\x20\x77\x69\x6E\x64\x6F\x77\x2E\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x21\x73\x65\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x6F\x6C\x65\x2E\x65\x72\x72\x6F\x72\x28\x22\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x3A\x20\x63\x61\x6E\x6E\x6F\x74\x20\x67\x65\x74\x20\x77\x69\x6E\x64\x6F\x77\x20\x73\x65\x6C\x65\x63\x74\x69\x6F\x6E\x22\x2C\x20\x6F\x70\x74\x73\x2E\x69\x64\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x73\x65\x6C\x20\x3D\x20\x73\x65\x6C\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x61\x6E\x67\x65\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x63\x72\x65\x61\x74\x65\x52\x61\x6E\x67\x65\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x6F\x6E\x6B\x65\x79\x75\x70\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x65\x76\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x74\x68\x69\x73\x2E\x6F\x6E\x4B\x65\x79\x75\x70\x44\x6F\x63\x75\x6D\x65\x6E\x74\x28\x5F\x74\x68\x69\x73\x2C\x20\x65\x76\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x47\x65\x74\x43\x6F\x6E\x74\x65\x6E\x74\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x63\x6F\x6E\x74\x65\x6E\x74\x20\x3D\x20\x22\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x66\x6F\x72\x20\x28\x76\x61\x72\x20\x78\x20\x3D\x20\x30\x3B\x20\x78\x20\x3C\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x2E\x6C\x65\x6E\x67\x74\x68\x3B\x20\x78\x2B\x2B\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x78\x20\x3E\x20\x30\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x74\x65\x6E\x74\x20\x2B\x3D\x20\x22\x5C\x6E\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x74\x65\x6E\x74\x20\x2B\x3D\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x5B\x78\x5D\x2E\x65\x6C\x5F\x74\x65\x78\x74\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x63\x6F\x6E\x74\x65\x6E\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x47\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x52\x61\x6E\x67\x65\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x65\x67\x69\x6E\x5F\x61\x74\x3A\x20\x74\x68\x69\x73\x2E\x72\x61\x6E\x67\x65\x5F\x62\x65\x67\x69\x6E\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6E\x64\x5F\x61\x74\x3A\x20\x74\x68\x69\x73\x2E\x72\x61\x6E\x67\x65\x5F\x65\x6E\x64\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x4F\x6E\x43\x6C\x69\x63\x6B\x54\x65\x78\x74\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x74\x65\x78\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x73\x65\x6C\x20\x3D\x20\x77\x69\x6E\x64\x6F\x77\x2E\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x73\x65\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x73\x65\x6C\x20\x3D\x20\x73\x65\x6C\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x4F\x6E\x4B\x65\x79\x75\x70\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x78\x2C\x20\x74\x65\x78\x74\x2C\x20\x65\x76\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x74\x65\x78\x74\x5F\x62\x65\x66\x6F\x72\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x74\x65\x78\x74\x5F\x61\x66\x74\x65\x72\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x6F\x66\x66\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x73\x77\x69\x74\x63\x68\x20\x28\x65\x76\x2E\x6B\x65\x79\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x41\x6C\x74\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x41\x72\x72\x6F\x77\x44\x6F\x77\x6E\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x41\x72\x72\x6F\x77\x4C\x65\x66\x74\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x41\x72\x72\x6F\x77\x52\x69\x67\x68\x74\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x41\x72\x72\x6F\x77\x55\x70\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x43\x61\x70\x73\x4C\x6F\x63\x6B\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x43\x6F\x6E\x74\x65\x78\x74\x4D\x65\x6E\x75\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x45\x6E\x64\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x48\x6F\x6D\x65\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x49\x6E\x73\x65\x72\x74\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x4F\x53\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x50\x61\x67\x65\x44\x6F\x77\x6E\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x50\x61\x67\x65\x55\x70\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x50\x61\x75\x73\x65\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x50\x72\x69\x6E\x74\x53\x63\x72\x65\x65\x6E\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x53\x63\x72\x6F\x6C\x6C\x4C\x6F\x63\x6B\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x53\x68\x69\x66\x74\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x42\x61\x63\x6B\x73\x70\x61\x63\x65\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x76\x2E\x70\x72\x65\x76\x65\x6E\x74\x44\x65\x66\x61\x75\x6C\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x65\x78\x74\x5F\x62\x65\x66\x6F\x72\x65\x20\x3D\x20\x74\x68\x69\x73\x2E\x72\x61\x77\x5F\x6C\x69\x6E\x65\x73\x5B\x78\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x65\x6C\x5F\x74\x65\x78\x74\x5F\x63\x75\x72\x72\x20\x3D\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x5B\x78\x5D\x2E\x65\x6C\x5F\x74\x65\x78\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x65\x78\x74\x5F\x61\x66\x74\x65\x72\x20\x3D\x20\x65\x6C\x5F\x74\x65\x78\x74\x5F\x63\x75\x72\x72\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6F\x66\x66\x20\x3D\x20\x74\x68\x69\x73\x2E\x73\x65\x6C\x2E\x66\x6F\x63\x75\x73\x4F\x66\x66\x73\x65\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x6F\x66\x66\x20\x3E\x20\x30\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x75\x6E\x72\x65\x2E\x44\x6F\x55\x70\x64\x61\x74\x65\x28\x78\x2C\x20\x74\x65\x78\x74\x5F\x62\x65\x66\x6F\x72\x65\x2C\x20\x74\x65\x78\x74\x5F\x61\x66\x74\x65\x72\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x61\x77\x5F\x6C\x69\x6E\x65\x73\x5B\x78\x5D\x20\x3D\x20\x74\x65\x78\x74\x5F\x61\x66\x74\x65\x72\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x73\x65\x74\x43\x61\x72\x65\x74\x28\x65\x6C\x5F\x74\x65\x78\x74\x5F\x63\x75\x72\x72\x2C\x20\x6F\x66\x66\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x66\x61\x6C\x73\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x65\x6C\x5F\x74\x65\x78\x74\x5F\x70\x72\x65\x76\x20\x3D\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x5B\x78\x20\x2D\x20\x31\x5D\x2E\x65\x6C\x5F\x74\x65\x78\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x75\x6E\x72\x65\x2E\x44\x6F\x4A\x6F\x69\x6E\x28\x78\x20\x2D\x20\x31\x2C\x20\x65\x6C\x5F\x74\x65\x78\x74\x5F\x70\x72\x65\x76\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x2C\x20\x65\x6C\x5F\x74\x65\x78\x74\x5F\x63\x75\x72\x72\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6F\x66\x66\x20\x3D\x20\x65\x6C\x5F\x74\x65\x78\x74\x5F\x70\x72\x65\x76\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x2E\x6C\x65\x6E\x67\x74\x68\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x5F\x74\x65\x78\x74\x5F\x70\x72\x65\x76\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x65\x6C\x5F\x74\x65\x78\x74\x5F\x70\x72\x65\x76\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x2B\x20\x65\x6C\x5F\x74\x65\x78\x74\x5F\x63\x75\x72\x72\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x61\x77\x5F\x6C\x69\x6E\x65\x73\x5B\x78\x20\x2D\x20\x31\x5D\x20\x3D\x20\x65\x6C\x5F\x74\x65\x78\x74\x5F\x70\x72\x65\x76\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x64\x65\x6C\x65\x74\x65\x4C\x69\x6E\x65\x28\x78\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x73\x65\x74\x43\x61\x72\x65\x74\x28\x65\x6C\x5F\x74\x65\x78\x74\x5F\x70\x72\x65\x76\x2C\x20\x6F\x66\x66\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x66\x61\x6C\x73\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x43\x6F\x6E\x74\x72\x6F\x6C\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x69\x73\x5F\x6B\x65\x79\x5F\x63\x6F\x6E\x74\x72\x6F\x6C\x20\x3D\x20\x66\x61\x6C\x73\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x45\x6E\x74\x65\x72\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x76\x2E\x70\x72\x65\x76\x65\x6E\x74\x44\x65\x66\x61\x75\x6C\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x72\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x69\x73\x5F\x6B\x65\x79\x5F\x63\x6F\x6E\x74\x72\x6F\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x76\x2E\x70\x72\x65\x76\x65\x6E\x74\x44\x65\x66\x61\x75\x6C\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x7A\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x69\x73\x5F\x6B\x65\x79\x5F\x63\x6F\x6E\x74\x72\x6F\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x76\x2E\x70\x72\x65\x76\x65\x6E\x74\x44\x65\x66\x61\x75\x6C\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x64\x65\x66\x61\x75\x6C\x74\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x69\x73\x5F\x6B\x65\x79\x5F\x63\x6F\x6E\x74\x72\x6F\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x75\x6E\x72\x65\x2E\x44\x6F\x55\x70\x64\x61\x74\x65\x28\x78\x2C\x20\x74\x68\x69\x73\x2E\x72\x61\x77\x5F\x6C\x69\x6E\x65\x73\x5B\x78\x5D\x2C\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x5B\x78\x5D\x2E\x65\x6C\x5F\x74\x65\x78\x74\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x61\x77\x5F\x6C\x69\x6E\x65\x73\x5B\x78\x5D\x20\x3D\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x5B\x78\x5D\x2E\x65\x6C\x5F\x74\x65\x78\x74\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x74\x72\x75\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x4F\x6E\x4B\x65\x79\x64\x6F\x77\x6E\x4F\x6E\x4C\x69\x6E\x65\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x78\x2C\x20\x65\x6C\x5F\x74\x65\x78\x74\x2C\x20\x65\x76\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x74\x65\x78\x74\x5F\x62\x65\x66\x6F\x72\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x74\x65\x78\x74\x5F\x61\x66\x74\x65\x72\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x6F\x66\x66\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x73\x77\x69\x74\x63\x68\x20\x28\x65\x76\x2E\x6B\x65\x79\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x41\x72\x72\x6F\x77\x55\x70\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x78\x20\x3D\x3D\x20\x30\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x66\x61\x6C\x73\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x76\x2E\x70\x72\x65\x76\x65\x6E\x74\x44\x65\x66\x61\x75\x6C\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x65\x6C\x5F\x74\x65\x78\x74\x5F\x31\x20\x3D\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x5B\x78\x20\x2D\x20\x31\x5D\x2E\x65\x6C\x5F\x74\x65\x78\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x6F\x66\x66\x5F\x31\x20\x3D\x20\x74\x68\x69\x73\x2E\x73\x65\x6C\x2E\x66\x6F\x63\x75\x73\x4F\x66\x66\x73\x65\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x6F\x66\x66\x5F\x31\x20\x3E\x20\x65\x6C\x5F\x74\x65\x78\x74\x5F\x31\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x2E\x6C\x65\x6E\x67\x74\x68\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6F\x66\x66\x5F\x31\x20\x3D\x20\x65\x6C\x5F\x74\x65\x78\x74\x5F\x31\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x2E\x6C\x65\x6E\x67\x74\x68\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x73\x65\x74\x43\x61\x72\x65\x74\x28\x65\x6C\x5F\x74\x65\x78\x74\x5F\x31\x2C\x20\x6F\x66\x66\x5F\x31\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x78\x20\x3D\x3D\x20\x31\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x73\x63\x72\x6F\x6C\x6C\x54\x6F\x70\x20\x3D\x20\x30\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x20\x65\x6C\x73\x65\x20\x69\x66\x20\x28\x78\x20\x2A\x20\x32\x33\x20\x3C\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x73\x63\x72\x6F\x6C\x6C\x54\x6F\x70\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x73\x63\x72\x6F\x6C\x6C\x54\x6F\x70\x20\x2D\x3D\x20\x32\x35\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x66\x61\x6C\x73\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x41\x72\x72\x6F\x77\x44\x6F\x77\x6E\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x78\x20\x3D\x3D\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x2E\x6C\x65\x6E\x67\x74\x68\x20\x2D\x20\x31\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x66\x61\x6C\x73\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x76\x2E\x70\x72\x65\x76\x65\x6E\x74\x44\x65\x66\x61\x75\x6C\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x5F\x74\x65\x78\x74\x5F\x31\x20\x3D\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x5B\x78\x20\x2B\x20\x31\x5D\x2E\x65\x6C\x5F\x74\x65\x78\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6F\x66\x66\x5F\x31\x20\x3D\x20\x74\x68\x69\x73\x2E\x73\x65\x6C\x2E\x66\x6F\x63\x75\x73\x4F\x66\x66\x73\x65\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x6F\x66\x66\x5F\x31\x20\x3E\x20\x65\x6C\x5F\x74\x65\x78\x74\x5F\x31\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x2E\x6C\x65\x6E\x67\x74\x68\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6F\x66\x66\x5F\x31\x20\x3D\x20\x65\x6C\x5F\x74\x65\x78\x74\x5F\x31\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x2E\x6C\x65\x6E\x67\x74\x68\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x73\x65\x74\x43\x61\x72\x65\x74\x28\x65\x6C\x5F\x74\x65\x78\x74\x5F\x31\x2C\x20\x6F\x66\x66\x5F\x31\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x78\x20\x2B\x3D\x20\x32\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x78\x20\x2A\x20\x32\x35\x20\x3E\x3D\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x63\x6C\x69\x65\x6E\x74\x48\x65\x69\x67\x68\x74\x20\x2B\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x73\x63\x72\x6F\x6C\x6C\x54\x6F\x70\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x73\x63\x72\x6F\x6C\x6C\x54\x6F\x70\x20\x2B\x3D\x20\x32\x35\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x66\x61\x6C\x73\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x43\x6F\x6E\x74\x72\x6F\x6C\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x69\x73\x5F\x6B\x65\x79\x5F\x63\x6F\x6E\x74\x72\x6F\x6C\x20\x3D\x20\x74\x72\x75\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x44\x65\x6C\x65\x74\x65\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x76\x2E\x70\x72\x65\x76\x65\x6E\x74\x44\x65\x66\x61\x75\x6C\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x69\x73\x5F\x6A\x6F\x69\x6E\x5F\x6C\x69\x6E\x65\x5F\x61\x66\x74\x65\x72\x20\x3D\x20\x66\x61\x6C\x73\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x65\x6C\x5F\x74\x65\x78\x74\x5F\x63\x75\x72\x72\x65\x6E\x74\x20\x3D\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x5B\x78\x5D\x2E\x65\x6C\x5F\x74\x65\x78\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6F\x66\x66\x5F\x31\x20\x3D\x20\x74\x68\x69\x73\x2E\x73\x65\x6C\x2E\x66\x6F\x63\x75\x73\x4F\x66\x66\x73\x65\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x65\x78\x74\x5F\x62\x65\x66\x6F\x72\x65\x20\x3D\x20\x65\x6C\x5F\x74\x65\x78\x74\x5F\x63\x75\x72\x72\x65\x6E\x74\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x65\x78\x74\x5F\x61\x66\x74\x65\x72\x20\x3D\x20\x22\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x65\x78\x74\x5F\x62\x65\x66\x6F\x72\x65\x2E\x6C\x65\x6E\x67\x74\x68\x20\x3D\x3D\x3D\x20\x30\x20\x7C\x7C\x20\x6F\x66\x66\x5F\x31\x20\x3D\x3D\x3D\x20\x74\x65\x78\x74\x5F\x62\x65\x66\x6F\x72\x65\x2E\x6C\x65\x6E\x67\x74\x68\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x73\x5F\x6A\x6F\x69\x6E\x5F\x6C\x69\x6E\x65\x5F\x61\x66\x74\x65\x72\x20\x3D\x20\x74\x72\x75\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x69\x73\x5F\x6A\x6F\x69\x6E\x5F\x6C\x69\x6E\x65\x5F\x61\x66\x74\x65\x72\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x78\x20\x2B\x20\x31\x20\x3C\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x2E\x6C\x65\x6E\x67\x74\x68\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x65\x6C\x5F\x74\x65\x78\x74\x5F\x61\x66\x74\x65\x72\x20\x3D\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x5B\x78\x20\x2B\x20\x31\x5D\x2E\x65\x6C\x5F\x74\x65\x78\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x65\x78\x74\x5F\x61\x66\x74\x65\x72\x20\x3D\x20\x65\x6C\x5F\x74\x65\x78\x74\x5F\x61\x66\x74\x65\x72\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x5F\x74\x65\x78\x74\x5F\x61\x66\x74\x65\x72\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x22\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x75\x6E\x72\x65\x2E\x44\x6F\x4A\x6F\x69\x6E\x28\x78\x2C\x20\x74\x65\x78\x74\x5F\x62\x65\x66\x6F\x72\x65\x2C\x20\x74\x65\x78\x74\x5F\x61\x66\x74\x65\x72\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x64\x65\x6C\x65\x74\x65\x4C\x69\x6E\x65\x28\x78\x20\x2B\x20\x31\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x65\x78\x74\x5F\x61\x66\x74\x65\x72\x20\x3D\x20\x74\x65\x78\x74\x5F\x62\x65\x66\x6F\x72\x65\x20\x2B\x20\x74\x65\x78\x74\x5F\x61\x66\x74\x65\x72\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x20\x65\x6C\x73\x65\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x65\x78\x74\x5F\x61\x66\x74\x65\x72\x20\x3D\x20\x74\x65\x78\x74\x5F\x62\x65\x66\x6F\x72\x65\x2E\x73\x6C\x69\x63\x65\x28\x30\x2C\x20\x6F\x66\x66\x5F\x31\x29\x20\x2B\x20\x74\x65\x78\x74\x5F\x62\x65\x66\x6F\x72\x65\x2E\x73\x6C\x69\x63\x65\x28\x6F\x66\x66\x5F\x31\x20\x2B\x20\x31\x2C\x20\x74\x65\x78\x74\x5F\x62\x65\x66\x6F\x72\x65\x2E\x6C\x65\x6E\x67\x74\x68\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x75\x6E\x72\x65\x2E\x44\x6F\x55\x70\x64\x61\x74\x65\x28\x78\x2C\x20\x74\x65\x78\x74\x5F\x62\x65\x66\x6F\x72\x65\x2C\x20\x74\x65\x78\x74\x5F\x61\x66\x74\x65\x72\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x5B\x78\x5D\x2E\x65\x6C\x5F\x74\x65\x78\x74\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x74\x65\x78\x74\x5F\x61\x66\x74\x65\x72\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x61\x77\x5F\x6C\x69\x6E\x65\x73\x5B\x78\x5D\x20\x3D\x20\x74\x65\x78\x74\x5F\x61\x66\x74\x65\x72\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x73\x65\x74\x43\x61\x72\x65\x74\x28\x65\x6C\x5F\x74\x65\x78\x74\x5F\x63\x75\x72\x72\x65\x6E\x74\x2C\x20\x6F\x66\x66\x5F\x31\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x45\x6E\x74\x65\x72\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x76\x2E\x70\x72\x65\x76\x65\x6E\x74\x44\x65\x66\x61\x75\x6C\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6F\x66\x66\x5F\x31\x20\x3D\x20\x74\x68\x69\x73\x2E\x73\x65\x6C\x2E\x66\x6F\x63\x75\x73\x4F\x66\x66\x73\x65\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x74\x65\x78\x74\x20\x3D\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x5B\x78\x5D\x2E\x65\x6C\x5F\x74\x65\x78\x74\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x65\x78\x74\x5F\x62\x65\x66\x6F\x72\x65\x20\x3D\x20\x74\x65\x78\x74\x2E\x73\x6C\x69\x63\x65\x28\x30\x2C\x20\x6F\x66\x66\x5F\x31\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x65\x78\x74\x5F\x61\x66\x74\x65\x72\x20\x3D\x20\x74\x65\x78\x74\x2E\x73\x6C\x69\x63\x65\x28\x6F\x66\x66\x5F\x31\x2C\x20\x74\x65\x78\x74\x2E\x6C\x65\x6E\x67\x74\x68\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x75\x6E\x72\x65\x2E\x44\x6F\x53\x70\x6C\x69\x74\x28\x78\x2C\x20\x74\x65\x78\x74\x5F\x62\x65\x66\x6F\x72\x65\x2C\x20\x74\x65\x78\x74\x5F\x61\x66\x74\x65\x72\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x5B\x78\x5D\x2E\x65\x6C\x5F\x74\x65\x78\x74\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x74\x65\x78\x74\x5F\x62\x65\x66\x6F\x72\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x61\x77\x5F\x6C\x69\x6E\x65\x73\x5B\x78\x5D\x20\x3D\x20\x74\x65\x78\x74\x5F\x62\x65\x66\x6F\x72\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x69\x6E\x73\x65\x72\x74\x4E\x65\x77\x6C\x69\x6E\x65\x28\x78\x20\x2B\x20\x31\x2C\x20\x74\x65\x78\x74\x5F\x61\x66\x74\x65\x72\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x78\x20\x2B\x20\x33\x20\x3E\x3D\x20\x74\x68\x69\x73\x2E\x72\x61\x77\x5F\x6C\x69\x6E\x65\x73\x2E\x6C\x65\x6E\x67\x74\x68\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x73\x63\x72\x6F\x6C\x6C\x54\x6F\x70\x20\x3D\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x73\x63\x72\x6F\x6C\x6C\x48\x65\x69\x67\x68\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x54\x61\x62\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x76\x2E\x70\x72\x65\x76\x65\x6E\x74\x44\x65\x66\x61\x75\x6C\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x5F\x74\x65\x78\x74\x5F\x31\x20\x3D\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x5B\x78\x5D\x2E\x65\x6C\x5F\x74\x65\x78\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6F\x66\x66\x5F\x31\x20\x3D\x20\x74\x68\x69\x73\x2E\x73\x65\x6C\x2E\x66\x6F\x63\x75\x73\x4F\x66\x66\x73\x65\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x65\x78\x74\x5F\x62\x65\x66\x6F\x72\x65\x20\x3D\x20\x65\x6C\x5F\x74\x65\x78\x74\x5F\x31\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x65\x78\x74\x5F\x61\x66\x74\x65\x72\x20\x3D\x20\x74\x65\x78\x74\x5F\x62\x65\x66\x6F\x72\x65\x2E\x73\x6C\x69\x63\x65\x28\x30\x2C\x20\x6F\x66\x66\x5F\x31\x29\x20\x2B\x20\x22\x09\x22\x20\x2B\x20\x74\x65\x78\x74\x5F\x62\x65\x66\x6F\x72\x65\x2E\x73\x6C\x69\x63\x65\x28\x6F\x66\x66\x5F\x31\x2C\x20\x74\x65\x78\x74\x5F\x62\x65\x66\x6F\x72\x65\x2E\x6C\x65\x6E\x67\x74\x68\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x75\x6E\x72\x65\x2E\x44\x6F\x55\x70\x64\x61\x74\x65\x28\x78\x2C\x20\x74\x65\x78\x74\x5F\x62\x65\x66\x6F\x72\x65\x2C\x20\x74\x65\x78\x74\x5F\x61\x66\x74\x65\x72\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x5F\x74\x65\x78\x74\x5F\x31\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x74\x65\x78\x74\x5F\x61\x66\x74\x65\x72\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x61\x77\x5F\x6C\x69\x6E\x65\x73\x5B\x78\x5D\x20\x3D\x20\x74\x65\x78\x74\x5F\x61\x66\x74\x65\x72\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x73\x65\x74\x43\x61\x72\x65\x74\x28\x65\x6C\x5F\x74\x65\x78\x74\x5F\x31\x2C\x20\x6F\x66\x66\x5F\x31\x20\x2B\x20\x31\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x72\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x69\x73\x5F\x6B\x65\x79\x5F\x63\x6F\x6E\x74\x72\x6F\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x76\x2E\x70\x72\x65\x76\x65\x6E\x74\x44\x65\x66\x61\x75\x6C\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x64\x6F\x52\x65\x64\x6F\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x73\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x69\x73\x5F\x6B\x65\x79\x5F\x63\x6F\x6E\x74\x72\x6F\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x76\x2E\x70\x72\x65\x76\x65\x6E\x74\x44\x65\x66\x61\x75\x6C\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x76\x2E\x73\x74\x6F\x70\x50\x72\x6F\x70\x61\x67\x61\x74\x69\x6F\x6E\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x4F\x6E\x53\x61\x76\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x4F\x6E\x53\x61\x76\x65\x28\x74\x68\x69\x73\x2E\x47\x65\x74\x43\x6F\x6E\x74\x65\x6E\x74\x28\x29\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x66\x61\x6C\x73\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x7A\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x69\x73\x5F\x6B\x65\x79\x5F\x63\x6F\x6E\x74\x72\x6F\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x76\x2E\x70\x72\x65\x76\x65\x6E\x74\x44\x65\x66\x61\x75\x6C\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x64\x6F\x55\x6E\x64\x6F\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x4F\x6E\x4D\x6F\x75\x73\x65\x44\x6F\x77\x6E\x41\x74\x4C\x69\x6E\x65\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x78\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x61\x6E\x67\x65\x5F\x62\x65\x67\x69\x6E\x20\x3D\x20\x78\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x4F\x6E\x4D\x6F\x75\x73\x65\x55\x70\x41\x74\x4C\x69\x6E\x65\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x78\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x61\x6E\x67\x65\x5F\x65\x6E\x64\x20\x3D\x20\x78\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x72\x61\x6E\x67\x65\x5F\x65\x6E\x64\x20\x3C\x20\x74\x68\x69\x73\x2E\x72\x61\x6E\x67\x65\x5F\x62\x65\x67\x69\x6E\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x79\x20\x3D\x20\x30\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x66\x6F\x72\x20\x28\x3B\x20\x79\x20\x3C\x20\x74\x68\x69\x73\x2E\x72\x61\x6E\x67\x65\x5F\x62\x65\x67\x69\x6E\x3B\x20\x79\x2B\x2B\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x63\x68\x69\x6C\x64\x72\x65\x6E\x5B\x79\x5D\x2E\x73\x65\x74\x41\x74\x74\x72\x69\x62\x75\x74\x65\x28\x22\x73\x74\x79\x6C\x65\x22\x2C\x20\x22\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x66\x6F\x72\x20\x28\x3B\x20\x79\x20\x3C\x3D\x20\x74\x68\x69\x73\x2E\x72\x61\x6E\x67\x65\x5F\x65\x6E\x64\x3B\x20\x79\x2B\x2B\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x63\x68\x69\x6C\x64\x72\x65\x6E\x5B\x79\x5D\x2E\x73\x65\x74\x41\x74\x74\x72\x69\x62\x75\x74\x65\x28\x22\x73\x74\x79\x6C\x65\x22\x2C\x20\x22\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x2D\x63\x6F\x6C\x6F\x72\x3A\x6C\x69\x67\x68\x74\x73\x61\x6C\x6D\x6F\x6E\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x66\x6F\x72\x20\x28\x3B\x20\x79\x20\x3C\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x63\x68\x69\x6C\x64\x72\x65\x6E\x2E\x6C\x65\x6E\x67\x74\x68\x3B\x20\x79\x2B\x2B\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x63\x68\x69\x6C\x64\x72\x65\x6E\x5B\x79\x5D\x2E\x73\x65\x74\x41\x74\x74\x72\x69\x62\x75\x74\x65\x28\x22\x73\x74\x79\x6C\x65\x22\x2C\x20\x22\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x4F\x6E\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x4F\x6E\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x28\x74\x68\x69\x73\x2E\x72\x61\x6E\x67\x65\x5F\x62\x65\x67\x69\x6E\x2C\x20\x74\x68\x69\x73\x2E\x72\x61\x6E\x67\x65\x5F\x65\x6E\x64\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x53\x65\x74\x45\x64\x69\x74\x4F\x66\x66\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x66\x6F\x72\x20\x28\x76\x61\x72\x20\x78\x20\x3D\x20\x30\x3B\x20\x78\x20\x3C\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x2E\x6C\x65\x6E\x67\x74\x68\x3B\x20\x78\x2B\x2B\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x5B\x78\x5D\x2E\x53\x65\x74\x45\x64\x69\x74\x4F\x66\x66\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x53\x65\x74\x45\x64\x69\x74\x4F\x6E\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x66\x6F\x72\x20\x28\x76\x61\x72\x20\x78\x20\x3D\x20\x30\x3B\x20\x78\x20\x3C\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x2E\x6C\x65\x6E\x67\x74\x68\x3B\x20\x78\x2B\x2B\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x5B\x78\x5D\x2E\x53\x65\x74\x45\x64\x69\x74\x4F\x6E\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x4F\x70\x65\x6E\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x6E\x6F\x64\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x61\x63\x74\x69\x76\x65\x5F\x66\x69\x6C\x65\x20\x3D\x20\x6E\x6F\x64\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x63\x6F\x6E\x74\x65\x6E\x74\x20\x3D\x20\x61\x74\x6F\x62\x28\x6E\x6F\x64\x65\x2E\x63\x6F\x6E\x74\x65\x6E\x74\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x74\x65\x6E\x74\x20\x3D\x20\x63\x6F\x6E\x74\x65\x6E\x74\x2E\x72\x65\x70\x6C\x61\x63\x65\x28\x22\x5C\x72\x5C\x6E\x22\x2C\x20\x22\x5C\x6E\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x61\x77\x5F\x6C\x69\x6E\x65\x73\x20\x3D\x20\x63\x6F\x6E\x74\x65\x6E\x74\x2E\x73\x70\x6C\x69\x74\x28\x22\x5C\x6E\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x20\x3D\x20\x5B\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x66\x6F\x72\x20\x28\x76\x61\x72\x20\x78\x20\x3D\x20\x30\x3B\x20\x78\x20\x3C\x20\x74\x68\x69\x73\x2E\x72\x61\x77\x5F\x6C\x69\x6E\x65\x73\x2E\x6C\x65\x6E\x67\x74\x68\x3B\x20\x78\x2B\x2B\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x6C\x69\x6E\x65\x20\x3D\x20\x6E\x65\x77\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x4C\x69\x6E\x65\x28\x78\x2C\x20\x74\x68\x69\x73\x2E\x72\x61\x77\x5F\x6C\x69\x6E\x65\x73\x5B\x78\x5D\x2C\x20\x74\x68\x69\x73\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x2E\x70\x75\x73\x68\x28\x6C\x69\x6E\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x65\x6E\x64\x65\x72\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x43\x6C\x65\x61\x72\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x72\x61\x6E\x67\x65\x5F\x62\x65\x67\x69\x6E\x20\x3C\x20\x30\x20\x7C\x7C\x20\x74\x68\x69\x73\x2E\x72\x61\x6E\x67\x65\x5F\x65\x6E\x64\x20\x3D\x3D\x20\x30\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x66\x6F\x72\x20\x28\x76\x61\x72\x20\x78\x20\x3D\x20\x74\x68\x69\x73\x2E\x72\x61\x6E\x67\x65\x5F\x62\x65\x67\x69\x6E\x3B\x20\x78\x20\x3C\x3D\x20\x74\x68\x69\x73\x2E\x72\x61\x6E\x67\x65\x5F\x65\x6E\x64\x3B\x20\x78\x2B\x2B\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x63\x68\x69\x6C\x64\x72\x65\x6E\x5B\x78\x5D\x2E\x73\x65\x74\x41\x74\x74\x72\x69\x62\x75\x74\x65\x28\x22\x73\x74\x79\x6C\x65\x22\x2C\x20\x22\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x61\x6E\x67\x65\x5F\x62\x65\x67\x69\x6E\x20\x3D\x20\x2D\x31\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x61\x6E\x67\x65\x5F\x65\x6E\x64\x20\x3D\x20\x2D\x31\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x69\x6E\x69\x74\x53\x74\x79\x6C\x65\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x73\x74\x79\x6C\x65\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x63\x72\x65\x61\x74\x65\x45\x6C\x65\x6D\x65\x6E\x74\x28\x22\x73\x74\x79\x6C\x65\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x73\x74\x79\x6C\x65\x2E\x74\x79\x70\x65\x20\x3D\x20\x22\x74\x65\x78\x74\x2F\x63\x73\x73\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x73\x74\x79\x6C\x65\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x22\x5C\x6E\x09\x09\x09\x5B\x63\x6F\x6E\x74\x65\x6E\x74\x65\x64\x69\x74\x61\x62\x6C\x65\x5D\x20\x7B\x5C\x6E\x09\x09\x09\x09\x6F\x75\x74\x6C\x69\x6E\x65\x3A\x20\x30\x70\x78\x20\x73\x6F\x6C\x69\x64\x20\x74\x72\x61\x6E\x73\x70\x61\x72\x65\x6E\x74\x3B\x5C\x6E\x09\x09\x09\x7D\x5C\x6E\x09\x09\x09\x2E\x22\x20\x2B\x20\x57\x55\x49\x5F\x45\x44\x49\x54\x4F\x52\x5F\x43\x4C\x41\x53\x53\x20\x2B\x20\x22\x20\x7B\x5C\x6E\x09\x09\x09\x09\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x2D\x63\x6F\x6C\x6F\x72\x3A\x20\x63\x6F\x72\x6E\x73\x69\x6C\x6B\x3B\x5C\x6E\x09\x09\x09\x09\x66\x6F\x6E\x74\x2D\x66\x61\x6D\x69\x6C\x79\x3A\x20\x6D\x6F\x6E\x6F\x73\x70\x61\x63\x65\x3B\x5C\x6E\x09\x09\x09\x09\x6F\x76\x65\x72\x66\x6C\x6F\x77\x2D\x79\x3A\x20\x61\x75\x74\x6F\x3B\x5C\x6E\x09\x09\x09\x09\x77\x69\x64\x74\x68\x3A\x20\x31\x30\x30\x25\x3B\x5C\x6E\x09\x09\x09\x7D\x5C\x6E\x09\x09\x09\x2E\x22\x20\x2B\x20\x57\x55\x49\x5F\x45\x44\x49\x54\x4F\x52\x5F\x43\x4C\x41\x53\x53\x5F\x4C\x49\x4E\x45\x20\x2B\x20\x22\x20\x7B\x5C\x6E\x09\x09\x09\x09\x64\x69\x73\x70\x6C\x61\x79\x3A\x20\x62\x6C\x6F\x63\x6B\x3B\x5C\x6E\x09\x09\x09\x09\x77\x69\x64\x74\x68\x3A\x20\x31\x30\x30\x25\x3B\x5C\x6E\x09\x09\x09\x7D\x5C\x6E\x09\x09\x09\x2E\x22\x20\x2B\x20\x57\x55\x49\x5F\x45\x44\x49\x54\x4F\x52\x5F\x43\x4C\x41\x53\x53\x5F\x4C\x49\x4E\x45\x5F\x4E\x55\x4D\x42\x45\x52\x20\x2B\x20\x22\x20\x7B\x5C\x6E\x09\x09\x09\x09\x63\x6F\x6C\x6F\x72\x3A\x20\x64\x69\x6D\x67\x72\x65\x79\x3B\x5C\x6E\x09\x09\x09\x09\x63\x75\x72\x73\x6F\x72\x3A\x20\x70\x6F\x69\x6E\x74\x65\x72\x3B\x5C\x6E\x09\x09\x09\x09\x64\x69\x73\x70\x6C\x61\x79\x3A\x20\x69\x6E\x6C\x69\x6E\x65\x2D\x62\x6C\x6F\x63\x6B\x3B\x5C\x6E\x09\x09\x09\x09\x70\x61\x64\x64\x69\x6E\x67\x3A\x20\x34\x70\x78\x20\x31\x30\x70\x78\x20\x34\x70\x78\x20\x34\x70\x78\x3B\x5C\x6E\x09\x09\x09\x09\x74\x65\x78\x74\x2D\x61\x6C\x69\x67\x6E\x3A\x20\x72\x69\x67\x68\x74\x3B\x5C\x6E\x09\x09\x09\x09\x75\x73\x65\x72\x2D\x73\x65\x6C\x65\x63\x74\x3A\x20\x6E\x6F\x6E\x65\x3B\x5C\x6E\x09\x09\x09\x09\x76\x65\x72\x74\x69\x63\x61\x6C\x2D\x61\x6C\x69\x67\x6E\x3A\x20\x74\x6F\x70\x3B\x5C\x6E\x09\x09\x09\x09\x77\x69\x64\x74\x68\x3A\x20\x33\x30\x70\x78\x3B\x5C\x6E\x09\x09\x09\x7D\x5C\x6E\x09\x09\x09\x2E\x22\x20\x2B\x20\x57\x55\x49\x5F\x45\x44\x49\x54\x4F\x52\x5F\x43\x4C\x41\x53\x53\x5F\x4C\x49\x4E\x45\x5F\x4E\x55\x4D\x42\x45\x52\x20\x2B\x20\x22\x3A\x68\x6F\x76\x65\x72\x20\x7B\x5C\x6E\x09\x09\x09\x09\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x2D\x63\x6F\x6C\x6F\x72\x3A\x20\x6C\x69\x67\x68\x74\x73\x61\x6C\x6D\x6F\x6E\x3B\x5C\x6E\x09\x09\x09\x7D\x5C\x6E\x09\x09\x09\x2E\x22\x20\x2B\x20\x57\x55\x49\x5F\x45\x44\x49\x54\x4F\x52\x5F\x43\x4C\x41\x53\x53\x5F\x4C\x49\x4E\x45\x5F\x54\x45\x58\x54\x20\x2B\x20\x22\x20\x7B\x5C\x6E\x09\x09\x09\x09\x64\x69\x73\x70\x6C\x61\x79\x3A\x20\x69\x6E\x6C\x69\x6E\x65\x2D\x62\x6C\x6F\x63\x6B\x3B\x5C\x6E\x09\x09\x09\x09\x70\x61\x64\x64\x69\x6E\x67\x3A\x20\x34\x70\x78\x3B\x5C\x6E\x09\x09\x09\x09\x62\x6F\x72\x64\x65\x72\x2D\x63\x6F\x6C\x6F\x72\x3A\x20\x6C\x69\x67\x68\x74\x62\x6C\x75\x65\x3B\x5C\x6E\x09\x09\x09\x09\x62\x6F\x72\x64\x65\x72\x2D\x77\x69\x64\x74\x68\x3A\x20\x30\x70\x78\x3B\x5C\x6E\x09\x09\x09\x09\x62\x6F\x72\x64\x65\x72\x2D\x73\x74\x79\x6C\x65\x3A\x20\x73\x6F\x6C\x69\x64\x3B\x5C\x6E\x09\x09\x09\x09\x77\x68\x69\x74\x65\x2D\x73\x70\x61\x63\x65\x3A\x20\x70\x72\x65\x2D\x77\x72\x61\x70\x3B\x5C\x6E\x09\x09\x09\x09\x77\x69\x64\x74\x68\x3A\x20\x63\x61\x6C\x63\x28\x31\x30\x30\x25\x20\x2D\x20\x36\x30\x70\x78\x29\x3B\x5C\x6E\x09\x09\x09\x7D\x5C\x6E\x09\x09\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x68\x65\x61\x64\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x73\x74\x79\x6C\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x64\x6F\x4A\x6F\x69\x6E\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x63\x68\x61\x6E\x67\x65\x73\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x5B\x63\x68\x61\x6E\x67\x65\x73\x2E\x63\x75\x72\x72\x5F\x6C\x69\x6E\x65\x5D\x2E\x65\x6C\x5F\x74\x65\x78\x74\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x63\x68\x61\x6E\x67\x65\x73\x2E\x63\x75\x72\x72\x5F\x74\x65\x78\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x64\x65\x6C\x65\x74\x65\x4C\x69\x6E\x65\x28\x63\x68\x61\x6E\x67\x65\x73\x2E\x6E\x65\x78\x74\x5F\x6C\x69\x6E\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x73\x65\x74\x43\x61\x72\x65\x74\x28\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x5B\x63\x68\x61\x6E\x67\x65\x73\x2E\x63\x75\x72\x72\x5F\x6C\x69\x6E\x65\x5D\x2E\x65\x6C\x5F\x74\x65\x78\x74\x2C\x20\x30\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x64\x6F\x53\x70\x6C\x69\x74\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x63\x68\x61\x6E\x67\x65\x73\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x5B\x63\x68\x61\x6E\x67\x65\x73\x2E\x63\x75\x72\x72\x5F\x6C\x69\x6E\x65\x5D\x2E\x65\x6C\x5F\x74\x65\x78\x74\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x63\x68\x61\x6E\x67\x65\x73\x2E\x63\x75\x72\x72\x5F\x74\x65\x78\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x69\x6E\x73\x65\x72\x74\x4E\x65\x77\x6C\x69\x6E\x65\x28\x63\x68\x61\x6E\x67\x65\x73\x2E\x6E\x65\x78\x74\x5F\x6C\x69\x6E\x65\x2C\x20\x63\x68\x61\x6E\x67\x65\x73\x2E\x6E\x65\x78\x74\x5F\x74\x65\x78\x74\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x64\x6F\x55\x70\x64\x61\x74\x65\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x63\x68\x61\x6E\x67\x65\x73\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x5B\x63\x68\x61\x6E\x67\x65\x73\x2E\x63\x75\x72\x72\x5F\x6C\x69\x6E\x65\x5D\x2E\x65\x6C\x5F\x74\x65\x78\x74\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x63\x68\x61\x6E\x67\x65\x73\x2E\x63\x75\x72\x72\x5F\x74\x65\x78\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x73\x65\x74\x43\x61\x72\x65\x74\x28\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x5B\x63\x68\x61\x6E\x67\x65\x73\x2E\x63\x75\x72\x72\x5F\x6C\x69\x6E\x65\x5D\x2E\x65\x6C\x5F\x74\x65\x78\x74\x2C\x20\x30\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x64\x6F\x52\x65\x64\x6F\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x61\x63\x74\x20\x3D\x20\x74\x68\x69\x73\x2E\x75\x6E\x72\x65\x2E\x52\x65\x64\x6F\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x21\x61\x63\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x73\x77\x69\x74\x63\x68\x20\x28\x61\x63\x74\x2E\x6B\x69\x6E\x64\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x6A\x6F\x69\x6E\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x64\x6F\x4A\x6F\x69\x6E\x28\x61\x63\x74\x2E\x61\x66\x74\x65\x72\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x73\x70\x6C\x69\x74\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x64\x6F\x53\x70\x6C\x69\x74\x28\x61\x63\x74\x2E\x61\x66\x74\x65\x72\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x75\x70\x64\x61\x74\x65\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x64\x6F\x55\x70\x64\x61\x74\x65\x28\x61\x63\x74\x2E\x61\x66\x74\x65\x72\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x64\x6F\x55\x6E\x64\x6F\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x61\x63\x74\x20\x3D\x20\x74\x68\x69\x73\x2E\x75\x6E\x72\x65\x2E\x55\x6E\x64\x6F\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x21\x61\x63\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x73\x77\x69\x74\x63\x68\x20\x28\x61\x63\x74\x2E\x6B\x69\x6E\x64\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x6A\x6F\x69\x6E\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x64\x6F\x53\x70\x6C\x69\x74\x28\x61\x63\x74\x2E\x62\x65\x66\x6F\x72\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x73\x70\x6C\x69\x74\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x64\x6F\x4A\x6F\x69\x6E\x28\x61\x63\x74\x2E\x62\x65\x66\x6F\x72\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x75\x70\x64\x61\x74\x65\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x64\x6F\x55\x70\x64\x61\x74\x65\x28\x61\x63\x74\x2E\x62\x65\x66\x6F\x72\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x64\x65\x6C\x65\x74\x65\x4C\x69\x6E\x65\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x78\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x2E\x73\x70\x6C\x69\x63\x65\x28\x78\x2C\x20\x31\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x61\x77\x5F\x6C\x69\x6E\x65\x73\x2E\x73\x70\x6C\x69\x63\x65\x28\x78\x2C\x20\x31\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x66\x6F\x72\x20\x28\x3B\x20\x78\x20\x3C\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x2E\x6C\x65\x6E\x67\x74\x68\x3B\x20\x78\x2B\x2B\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x5B\x78\x5D\x2E\x53\x65\x74\x4E\x75\x6D\x62\x65\x72\x28\x78\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x65\x6E\x64\x65\x72\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x69\x6E\x73\x65\x72\x74\x4E\x65\x77\x6C\x69\x6E\x65\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x78\x2C\x20\x74\x65\x78\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x6E\x65\x77\x6C\x69\x6E\x65\x20\x3D\x20\x6E\x65\x77\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x4C\x69\x6E\x65\x28\x78\x2C\x20\x74\x65\x78\x74\x2C\x20\x74\x68\x69\x73\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x66\x6F\x72\x20\x28\x76\x61\x72\x20\x79\x20\x3D\x20\x78\x3B\x20\x79\x20\x3C\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x2E\x6C\x65\x6E\x67\x74\x68\x3B\x20\x79\x2B\x2B\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x5B\x79\x5D\x2E\x53\x65\x74\x4E\x75\x6D\x62\x65\x72\x28\x79\x20\x2B\x20\x31\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x2E\x73\x70\x6C\x69\x63\x65\x28\x78\x2C\x20\x30\x2C\x20\x6E\x65\x77\x6C\x69\x6E\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x61\x77\x5F\x6C\x69\x6E\x65\x73\x2E\x73\x70\x6C\x69\x63\x65\x28\x78\x2C\x20\x30\x2C\x20\x74\x65\x78\x74\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x65\x6E\x64\x65\x72\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x73\x65\x74\x43\x61\x72\x65\x74\x28\x6E\x65\x77\x6C\x69\x6E\x65\x2E\x65\x6C\x5F\x74\x65\x78\x74\x2C\x20\x30\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x6F\x6E\x4B\x65\x79\x75\x70\x44\x6F\x63\x75\x6D\x65\x6E\x74\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x65\x64\x2C\x20\x65\x76\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x73\x77\x69\x74\x63\x68\x20\x28\x65\x76\x2E\x6B\x65\x79\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x45\x73\x63\x61\x70\x65\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x76\x2E\x70\x72\x65\x76\x65\x6E\x74\x44\x65\x66\x61\x75\x6C\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x64\x2E\x43\x6C\x65\x61\x72\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x74\x72\x75\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x72\x65\x6E\x64\x65\x72\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x69\x6E\x6E\x65\x72\x48\x54\x4D\x4C\x20\x3D\x20\x22\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x66\x6F\x72\x20\x28\x76\x61\x72\x20\x5F\x69\x20\x3D\x20\x30\x2C\x20\x5F\x61\x20\x3D\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x3B\x20\x5F\x69\x20\x3C\x20\x5F\x61\x2E\x6C\x65\x6E\x67\x74\x68\x3B\x20\x5F\x69\x2B\x2B\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x6C\x69\x6E\x65\x20\x3D\x20\x5F\x61\x5B\x5F\x69\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x6C\x69\x6E\x65\x2E\x65\x6C\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x73\x65\x74\x43\x61\x72\x65\x74\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x65\x6C\x5F\x74\x65\x78\x74\x2C\x20\x6F\x66\x66\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x65\x6C\x5F\x74\x65\x78\x74\x2E\x66\x69\x72\x73\x74\x43\x68\x69\x6C\x64\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x61\x6E\x67\x65\x2E\x73\x65\x74\x53\x74\x61\x72\x74\x28\x65\x6C\x5F\x74\x65\x78\x74\x2E\x66\x69\x72\x73\x74\x43\x68\x69\x6C\x64\x2C\x20\x6F\x66\x66\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x20\x65\x6C\x73\x65\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x61\x6E\x67\x65\x2E\x73\x65\x74\x53\x74\x61\x72\x74\x28\x65\x6C\x5F\x74\x65\x78\x74\x2C\x20\x6F\x66\x66\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x61\x6E\x67\x65\x2E\x63\x6F\x6C\x6C\x61\x70\x73\x65\x28\x74\x72\x75\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x73\x65\x6C\x2E\x72\x65\x6D\x6F\x76\x65\x41\x6C\x6C\x52\x61\x6E\x67\x65\x73\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x73\x65\x6C\x2E\x61\x64\x64\x52\x61\x6E\x67\x65\x28\x74\x68\x69\x73\x2E\x72\x61\x6E\x67\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x32\x3B\x0A\x20\x20\x20\x20\x7D\x28\x29\x0A\x20\x20\x29\x3B\x0A\x20\x20\x76\x61\x72\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x4C\x69\x6E\x65\x20\x3D\x20\x28\x0A\x20\x20\x20\x20\x2F\x2A\x2A\x20\x40\x63\x6C\x61\x73\x73\x20\x2A\x2F\x0A\x20\x20\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x4C\x69\x6E\x65\x32\x28\x78\x2C\x20\x74\x65\x78\x74\x2C\x20\x65\x64\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x5F\x74\x68\x69\x73\x20\x3D\x20\x74\x68\x69\x73\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x78\x20\x3D\x20\x78\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x74\x65\x78\x74\x20\x3D\x20\x74\x65\x78\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x5F\x6E\x75\x6D\x20\x3D\x20\x30\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x5F\x6E\x75\x6D\x20\x3D\x20\x78\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x63\x72\x65\x61\x74\x65\x45\x6C\x65\x6D\x65\x6E\x74\x28\x22\x64\x69\x76\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x57\x55\x49\x5F\x45\x44\x49\x54\x4F\x52\x5F\x43\x4C\x41\x53\x53\x5F\x4C\x49\x4E\x45\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x6E\x75\x6D\x62\x65\x72\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x63\x72\x65\x61\x74\x65\x45\x6C\x65\x6D\x65\x6E\x74\x28\x22\x73\x70\x61\x6E\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x6E\x75\x6D\x62\x65\x72\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x57\x55\x49\x5F\x45\x44\x49\x54\x4F\x52\x5F\x43\x4C\x41\x53\x53\x5F\x4C\x49\x4E\x45\x5F\x4E\x55\x4D\x42\x45\x52\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x6E\x75\x6D\x62\x65\x72\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x5F\x6E\x75\x6D\x20\x2B\x20\x31\x20\x2B\x20\x22\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x6E\x75\x6D\x62\x65\x72\x2E\x6F\x6E\x6D\x6F\x75\x73\x65\x64\x6F\x77\x6E\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x65\x76\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x64\x2E\x4F\x6E\x4D\x6F\x75\x73\x65\x44\x6F\x77\x6E\x41\x74\x4C\x69\x6E\x65\x28\x5F\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x5F\x6E\x75\x6D\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x6E\x75\x6D\x62\x65\x72\x2E\x6F\x6E\x6D\x6F\x75\x73\x65\x75\x70\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x65\x76\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x64\x2E\x4F\x6E\x4D\x6F\x75\x73\x65\x55\x70\x41\x74\x4C\x69\x6E\x65\x28\x5F\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x5F\x6E\x75\x6D\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x74\x65\x78\x74\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x63\x72\x65\x61\x74\x65\x45\x6C\x65\x6D\x65\x6E\x74\x28\x22\x73\x70\x61\x6E\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x74\x65\x78\x74\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x57\x55\x49\x5F\x45\x44\x49\x54\x4F\x52\x5F\x43\x4C\x41\x53\x53\x5F\x4C\x49\x4E\x45\x5F\x54\x45\x58\x54\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x74\x65\x78\x74\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x74\x65\x78\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x74\x65\x78\x74\x2E\x63\x6F\x6E\x74\x65\x6E\x74\x45\x64\x69\x74\x61\x62\x6C\x65\x20\x3D\x20\x22\x74\x72\x75\x65\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x74\x65\x78\x74\x2E\x6F\x6E\x63\x6C\x69\x63\x6B\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x65\x76\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x64\x2E\x4F\x6E\x43\x6C\x69\x63\x6B\x54\x65\x78\x74\x28\x5F\x74\x68\x69\x73\x2E\x65\x6C\x5F\x74\x65\x78\x74\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x74\x65\x78\x74\x2E\x6F\x6E\x6B\x65\x79\x64\x6F\x77\x6E\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x65\x76\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x65\x64\x2E\x4F\x6E\x4B\x65\x79\x64\x6F\x77\x6E\x4F\x6E\x4C\x69\x6E\x65\x28\x5F\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x5F\x6E\x75\x6D\x2C\x20\x5F\x74\x68\x69\x73\x2E\x65\x6C\x5F\x74\x65\x78\x74\x2C\x20\x65\x76\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x74\x65\x78\x74\x2E\x6F\x6E\x6B\x65\x79\x75\x70\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x65\x76\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x65\x64\x2E\x4F\x6E\x4B\x65\x79\x75\x70\x28\x5F\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x5F\x6E\x75\x6D\x2C\x20\x5F\x74\x68\x69\x73\x2E\x65\x6C\x5F\x74\x65\x78\x74\x2C\x20\x65\x76\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x74\x65\x78\x74\x2E\x61\x64\x64\x45\x76\x65\x6E\x74\x4C\x69\x73\x74\x65\x6E\x65\x72\x28\x22\x70\x61\x73\x74\x65\x22\x2C\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x65\x76\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x21\x65\x76\x2E\x63\x6C\x69\x70\x62\x6F\x61\x72\x64\x44\x61\x74\x61\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x76\x2E\x70\x72\x65\x76\x65\x6E\x74\x44\x65\x66\x61\x75\x6C\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x74\x65\x78\x74\x32\x20\x3D\x20\x65\x76\x2E\x63\x6C\x69\x70\x62\x6F\x61\x72\x64\x44\x61\x74\x61\x2E\x67\x65\x74\x44\x61\x74\x61\x28\x22\x74\x65\x78\x74\x2F\x70\x6C\x61\x69\x6E\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x65\x78\x65\x63\x43\x6F\x6D\x6D\x61\x6E\x64\x28\x22\x69\x6E\x73\x65\x72\x74\x48\x54\x4D\x4C\x22\x2C\x20\x66\x61\x6C\x73\x65\x2C\x20\x74\x65\x78\x74\x32\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x74\x68\x69\x73\x2E\x65\x6C\x5F\x6E\x75\x6D\x62\x65\x72\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x74\x68\x69\x73\x2E\x65\x6C\x5F\x74\x65\x78\x74\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x4C\x69\x6E\x65\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x53\x65\x74\x4E\x75\x6D\x62\x65\x72\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x78\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x5F\x6E\x75\x6D\x20\x3D\x20\x78\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x6E\x75\x6D\x62\x65\x72\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x78\x20\x2B\x20\x31\x20\x2B\x20\x22\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x4C\x69\x6E\x65\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x53\x65\x74\x45\x64\x69\x74\x4F\x6E\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x74\x65\x78\x74\x2E\x63\x6F\x6E\x74\x65\x6E\x74\x45\x64\x69\x74\x61\x62\x6C\x65\x20\x3D\x20\x22\x74\x72\x75\x65\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x4C\x69\x6E\x65\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x53\x65\x74\x45\x64\x69\x74\x4F\x66\x66\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x74\x65\x78\x74\x2E\x63\x6F\x6E\x74\x65\x6E\x74\x45\x64\x69\x74\x61\x62\x6C\x65\x20\x3D\x20\x22\x66\x61\x6C\x73\x65\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x4C\x69\x6E\x65\x32\x3B\x0A\x20\x20\x20\x20\x7D\x28\x29\x0A\x20\x20\x29\x3B\x0A\x20\x20\x76\x61\x72\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x55\x6E\x64\x6F\x52\x65\x64\x6F\x20\x3D\x20\x28\x0A\x20\x20\x20\x20\x2F\x2A\x2A\x20\x40\x63\x6C\x61\x73\x73\x20\x2A\x2F\x0A\x20\x20\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x55\x6E\x64\x6F\x52\x65\x64\x6F\x32\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x69\x64\x78\x20\x3D\x20\x30\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x61\x63\x74\x69\x6F\x6E\x73\x20\x3D\x20\x5B\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x55\x6E\x64\x6F\x52\x65\x64\x6F\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x44\x6F\x4A\x6F\x69\x6E\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x70\x72\x65\x76\x4C\x69\x6E\x65\x2C\x20\x70\x72\x65\x76\x54\x65\x78\x74\x2C\x20\x63\x75\x72\x72\x5F\x74\x65\x78\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x63\x75\x72\x72\x5F\x6C\x69\x6E\x65\x20\x3D\x20\x70\x72\x65\x76\x4C\x69\x6E\x65\x20\x2B\x20\x31\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x61\x63\x74\x69\x6F\x6E\x20\x3D\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6B\x69\x6E\x64\x3A\x20\x22\x6A\x6F\x69\x6E\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x65\x66\x6F\x72\x65\x3A\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x75\x72\x72\x5F\x6C\x69\x6E\x65\x3A\x20\x70\x72\x65\x76\x4C\x69\x6E\x65\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x75\x72\x72\x5F\x74\x65\x78\x74\x3A\x20\x70\x72\x65\x76\x54\x65\x78\x74\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6E\x65\x78\x74\x5F\x6C\x69\x6E\x65\x3A\x20\x70\x72\x65\x76\x4C\x69\x6E\x65\x20\x2B\x20\x31\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6E\x65\x78\x74\x5F\x74\x65\x78\x74\x3A\x20\x63\x75\x72\x72\x5F\x74\x65\x78\x74\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x61\x66\x74\x65\x72\x3A\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x75\x72\x72\x5F\x6C\x69\x6E\x65\x3A\x20\x70\x72\x65\x76\x4C\x69\x6E\x65\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x75\x72\x72\x5F\x74\x65\x78\x74\x3A\x20\x70\x72\x65\x76\x54\x65\x78\x74\x20\x2B\x20\x63\x75\x72\x72\x5F\x74\x65\x78\x74\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6E\x65\x78\x74\x5F\x6C\x69\x6E\x65\x3A\x20\x70\x72\x65\x76\x4C\x69\x6E\x65\x20\x2B\x20\x31\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6E\x65\x78\x74\x5F\x74\x65\x78\x74\x3A\x20\x22\x22\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x61\x63\x74\x69\x6F\x6E\x73\x2E\x6C\x65\x6E\x67\x74\x68\x20\x3E\x20\x30\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x61\x63\x74\x69\x6F\x6E\x73\x20\x3D\x20\x74\x68\x69\x73\x2E\x61\x63\x74\x69\x6F\x6E\x73\x2E\x73\x6C\x69\x63\x65\x28\x30\x2C\x20\x74\x68\x69\x73\x2E\x69\x64\x78\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x61\x63\x74\x69\x6F\x6E\x73\x2E\x70\x75\x73\x68\x28\x61\x63\x74\x69\x6F\x6E\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x69\x64\x78\x2B\x2B\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x55\x6E\x64\x6F\x52\x65\x64\x6F\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x44\x6F\x53\x70\x6C\x69\x74\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x63\x75\x72\x72\x5F\x6C\x69\x6E\x65\x2C\x20\x63\x75\x72\x72\x5F\x74\x65\x78\x74\x2C\x20\x6E\x65\x78\x74\x5F\x74\x65\x78\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x61\x63\x74\x69\x6F\x6E\x20\x3D\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6B\x69\x6E\x64\x3A\x20\x22\x73\x70\x6C\x69\x74\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x65\x66\x6F\x72\x65\x3A\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x75\x72\x72\x5F\x6C\x69\x6E\x65\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x75\x72\x72\x5F\x74\x65\x78\x74\x3A\x20\x63\x75\x72\x72\x5F\x74\x65\x78\x74\x20\x2B\x20\x6E\x65\x78\x74\x5F\x74\x65\x78\x74\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6E\x65\x78\x74\x5F\x6C\x69\x6E\x65\x3A\x20\x63\x75\x72\x72\x5F\x6C\x69\x6E\x65\x20\x2B\x20\x31\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6E\x65\x78\x74\x5F\x74\x65\x78\x74\x3A\x20\x22\x22\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x61\x66\x74\x65\x72\x3A\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x75\x72\x72\x5F\x6C\x69\x6E\x65\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x75\x72\x72\x5F\x74\x65\x78\x74\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6E\x65\x78\x74\x5F\x6C\x69\x6E\x65\x3A\x20\x63\x75\x72\x72\x5F\x6C\x69\x6E\x65\x20\x2B\x20\x31\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6E\x65\x78\x74\x5F\x74\x65\x78\x74\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x61\x63\x74\x69\x6F\x6E\x73\x2E\x6C\x65\x6E\x67\x74\x68\x20\x3E\x20\x30\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x61\x63\x74\x69\x6F\x6E\x73\x20\x3D\x20\x74\x68\x69\x73\x2E\x61\x63\x74\x69\x6F\x6E\x73\x2E\x73\x6C\x69\x63\x65\x28\x30\x2C\x20\x74\x68\x69\x73\x2E\x69\x64\x78\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x61\x63\x74\x69\x6F\x6E\x73\x2E\x70\x75\x73\x68\x28\x61\x63\x74\x69\x6F\x6E\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x69\x64\x78\x2B\x2B\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x55\x6E\x64\x6F\x52\x65\x64\x6F\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x44\x6F\x55\x70\x64\x61\x74\x65\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x6C\x69\x6E\x65\x5F\x6E\x75\x6D\x2C\x20\x74\x65\x78\x74\x5F\x62\x65\x66\x6F\x72\x65\x2C\x20\x74\x65\x78\x74\x5F\x61\x66\x74\x65\x72\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x61\x63\x74\x69\x6F\x6E\x20\x3D\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6B\x69\x6E\x64\x3A\x20\x22\x75\x70\x64\x61\x74\x65\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x65\x66\x6F\x72\x65\x3A\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x75\x72\x72\x5F\x6C\x69\x6E\x65\x3A\x20\x6C\x69\x6E\x65\x5F\x6E\x75\x6D\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x75\x72\x72\x5F\x74\x65\x78\x74\x3A\x20\x74\x65\x78\x74\x5F\x62\x65\x66\x6F\x72\x65\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6E\x65\x78\x74\x5F\x6C\x69\x6E\x65\x3A\x20\x30\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6E\x65\x78\x74\x5F\x74\x65\x78\x74\x3A\x20\x22\x22\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x61\x66\x74\x65\x72\x3A\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x75\x72\x72\x5F\x6C\x69\x6E\x65\x3A\x20\x6C\x69\x6E\x65\x5F\x6E\x75\x6D\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x75\x72\x72\x5F\x74\x65\x78\x74\x3A\x20\x74\x65\x78\x74\x5F\x61\x66\x74\x65\x72\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6E\x65\x78\x74\x5F\x6C\x69\x6E\x65\x3A\x20\x30\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6E\x65\x78\x74\x5F\x74\x65\x78\x74\x3A\x20\x22\x22\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x61\x63\x74\x69\x6F\x6E\x73\x2E\x6C\x65\x6E\x67\x74\x68\x20\x3E\x20\x30\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x61\x63\x74\x69\x6F\x6E\x73\x20\x3D\x20\x74\x68\x69\x73\x2E\x61\x63\x74\x69\x6F\x6E\x73\x2E\x73\x6C\x69\x63\x65\x28\x30\x2C\x20\x74\x68\x69\x73\x2E\x69\x64\x78\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x61\x63\x74\x69\x6F\x6E\x73\x2E\x70\x75\x73\x68\x28\x61\x63\x74\x69\x6F\x6E\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x69\x64\x78\x2B\x2B\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x55\x6E\x64\x6F\x52\x65\x64\x6F\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x55\x6E\x64\x6F\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x69\x64\x78\x20\x3D\x3D\x20\x30\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x6E\x75\x6C\x6C\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x69\x64\x78\x2D\x2D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x74\x68\x69\x73\x2E\x61\x63\x74\x69\x6F\x6E\x73\x5B\x74\x68\x69\x73\x2E\x69\x64\x78\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x55\x6E\x64\x6F\x52\x65\x64\x6F\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x52\x65\x64\x6F\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x69\x64\x78\x20\x3D\x3D\x20\x74\x68\x69\x73\x2E\x61\x63\x74\x69\x6F\x6E\x73\x2E\x6C\x65\x6E\x67\x74\x68\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x6E\x75\x6C\x6C\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x61\x63\x74\x69\x6F\x6E\x20\x3D\x20\x74\x68\x69\x73\x2E\x61\x63\x74\x69\x6F\x6E\x73\x5B\x74\x68\x69\x73\x2E\x69\x64\x78\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x69\x64\x78\x2B\x2B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x61\x63\x74\x69\x6F\x6E\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x55\x6E\x64\x6F\x52\x65\x64\x6F\x32\x3B\x0A\x20\x20\x20\x20\x7D\x28\x29\x0A\x20\x20\x29\x3B\x0A\x0A\x20\x20\x2F\x2F\x20\x5F\x77\x77\x77\x2F\x77\x75\x69\x2F\x6E\x6F\x74\x69\x66\x2F\x6E\x6F\x74\x69\x66\x2E\x6A\x73\x0A\x20\x20\x76\x61\x72\x20\x57\x55\x49\x5F\x4E\x4F\x54\x49\x46\x5F\x49\x44\x20\x3D\x20\x22\x77\x75\x69\x5F\x6E\x6F\x74\x69\x66\x22\x3B\x0A\x20\x20\x76\x61\x72\x20\x57\x55\x49\x5F\x4E\x4F\x54\x49\x46\x5F\x43\x4C\x41\x53\x53\x5F\x49\x4E\x46\x4F\x20\x3D\x20\x22\x77\x75\x69\x5F\x6E\x6F\x74\x69\x66\x5F\x69\x6E\x66\x6F\x22\x3B\x0A\x20\x20\x76\x61\x72\x20\x57\x55\x49\x5F\x4E\x4F\x54\x49\x46\x5F\x43\x4C\x41\x53\x53\x5F\x45\x52\x52\x4F\x52\x20\x3D\x20\x22\x77\x75\x69\x5F\x6E\x6F\x74\x69\x66\x5F\x65\x72\x72\x6F\x72\x22\x3B\x0A\x20\x20\x76\x61\x72\x20\x57\x75\x69\x4E\x6F\x74\x69\x66\x20\x3D\x20\x28\x0A\x20\x20\x20\x20\x2F\x2A\x2A\x20\x40\x63\x6C\x61\x73\x73\x20\x2A\x2F\x0A\x20\x20\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x57\x75\x69\x4E\x6F\x74\x69\x66\x32\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x74\x69\x6D\x65\x6F\x75\x74\x20\x3D\x20\x35\x65\x33\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x63\x72\x65\x61\x74\x65\x45\x6C\x65\x6D\x65\x6E\x74\x28\x22\x64\x69\x76\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x69\x64\x20\x3D\x20\x57\x55\x49\x5F\x4E\x4F\x54\x49\x46\x5F\x49\x44\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x62\x6F\x64\x79\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x74\x68\x69\x73\x2E\x65\x6C\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x69\x6E\x69\x74\x53\x74\x79\x6C\x65\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x4E\x6F\x74\x69\x66\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x49\x6E\x66\x6F\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x6D\x73\x67\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x5F\x74\x68\x69\x73\x20\x3D\x20\x74\x68\x69\x73\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x69\x74\x65\x6D\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x63\x72\x65\x61\x74\x65\x45\x6C\x65\x6D\x65\x6E\x74\x28\x22\x64\x69\x76\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x74\x65\x6D\x2E\x69\x6E\x6E\x65\x72\x48\x54\x4D\x4C\x20\x3D\x20\x6D\x73\x67\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x74\x65\x6D\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x57\x55\x49\x5F\x4E\x4F\x54\x49\x46\x5F\x43\x4C\x41\x53\x53\x5F\x49\x4E\x46\x4F\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x69\x74\x65\x6D\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x73\x65\x74\x54\x69\x6D\x65\x6F\x75\x74\x28\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x74\x68\x69\x73\x2E\x65\x6C\x2E\x72\x65\x6D\x6F\x76\x65\x43\x68\x69\x6C\x64\x28\x69\x74\x65\x6D\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x2C\x20\x74\x68\x69\x73\x2E\x74\x69\x6D\x65\x6F\x75\x74\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x4E\x6F\x74\x69\x66\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x45\x72\x72\x6F\x72\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x6D\x73\x67\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x5F\x74\x68\x69\x73\x20\x3D\x20\x74\x68\x69\x73\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x69\x74\x65\x6D\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x63\x72\x65\x61\x74\x65\x45\x6C\x65\x6D\x65\x6E\x74\x28\x22\x64\x69\x76\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x74\x65\x6D\x2E\x69\x6E\x6E\x65\x72\x48\x54\x4D\x4C\x20\x3D\x20\x6D\x73\x67\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x74\x65\x6D\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x57\x55\x49\x5F\x4E\x4F\x54\x49\x46\x5F\x43\x4C\x41\x53\x53\x5F\x45\x52\x52\x4F\x52\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x69\x74\x65\x6D\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x73\x65\x74\x54\x69\x6D\x65\x6F\x75\x74\x28\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x74\x68\x69\x73\x2E\x65\x6C\x2E\x72\x65\x6D\x6F\x76\x65\x43\x68\x69\x6C\x64\x28\x69\x74\x65\x6D\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x2C\x20\x74\x68\x69\x73\x2E\x74\x69\x6D\x65\x6F\x75\x74\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x4E\x6F\x74\x69\x66\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x69\x6E\x69\x74\x53\x74\x79\x6C\x65\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x73\x74\x79\x6C\x65\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x63\x72\x65\x61\x74\x65\x45\x6C\x65\x6D\x65\x6E\x74\x28\x22\x73\x74\x79\x6C\x65\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x73\x74\x79\x6C\x65\x2E\x74\x79\x70\x65\x20\x3D\x20\x22\x74\x65\x78\x74\x2F\x63\x73\x73\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x73\x74\x79\x6C\x65\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x22\x5C\x6E\x09\x09\x09\x23\x22\x20\x2B\x20\x57\x55\x49\x5F\x4E\x4F\x54\x49\x46\x5F\x49\x44\x20\x2B\x20\x22\x20\x7B\x5C\x6E\x09\x09\x09\x09\x6C\x65\x66\x74\x3A\x20\x31\x30\x25\x3B\x5C\x6E\x09\x09\x09\x09\x70\x6F\x73\x69\x74\x69\x6F\x6E\x3A\x20\x66\x69\x78\x65\x64\x3B\x5C\x6E\x09\x09\x09\x09\x74\x6F\x70\x3A\x20\x31\x65\x6D\x3B\x5C\x6E\x09\x09\x09\x09\x77\x69\x64\x74\x68\x3A\x20\x38\x30\x25\x3B\x5C\x6E\x09\x09\x09\x09\x7A\x2D\x69\x6E\x64\x65\x78\x3A\x20\x31\x30\x30\x30\x30\x3B\x5C\x6E\x09\x09\x09\x7D\x5C\x6E\x09\x09\x09\x2E\x22\x20\x2B\x20\x57\x55\x49\x5F\x4E\x4F\x54\x49\x46\x5F\x43\x4C\x41\x53\x53\x5F\x49\x4E\x46\x4F\x20\x2B\x20\x22\x20\x7B\x5C\x6E\x09\x09\x09\x09\x62\x6F\x72\x64\x65\x72\x3A\x20\x31\x70\x78\x20\x73\x6F\x6C\x69\x64\x20\x73\x69\x6C\x76\x65\x72\x3B\x5C\x6E\x09\x09\x09\x09\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x2D\x63\x6F\x6C\x6F\x72\x3A\x20\x68\x6F\x6E\x65\x79\x64\x65\x77\x3B\x5C\x6E\x09\x09\x09\x09\x6D\x61\x72\x67\x69\x6E\x2D\x62\x6F\x74\x74\x6F\x6D\x3A\x20\x31\x65\x6D\x3B\x5C\x6E\x09\x09\x09\x09\x70\x61\x64\x64\x69\x6E\x67\x3A\x20\x31\x65\x6D\x3B\x5C\x6E\x09\x09\x09\x7D\x5C\x6E\x09\x09\x09\x2E\x22\x20\x2B\x20\x57\x55\x49\x5F\x4E\x4F\x54\x49\x46\x5F\x43\x4C\x41\x53\x53\x5F\x45\x52\x52\x4F\x52\x20\x2B\x20\x22\x20\x7B\x5C\x6E\x09\x09\x09\x09\x62\x6F\x72\x64\x65\x72\x3A\x20\x31\x70\x78\x20\x73\x6F\x6C\x69\x64\x20\x73\x61\x6C\x6D\x6F\x6E\x3B\x5C\x6E\x09\x09\x09\x09\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x2D\x63\x6F\x6C\x6F\x72\x3A\x20\x6C\x69\x67\x68\x74\x73\x61\x6C\x6D\x6F\x6E\x3B\x5C\x6E\x09\x09\x09\x09\x6D\x61\x72\x67\x69\x6E\x2D\x62\x6F\x74\x74\x6F\x6D\x3A\x20\x31\x65\x6D\x3B\x5C\x6E\x09\x09\x09\x09\x70\x61\x64\x64\x69\x6E\x67\x3A\x20\x31\x65\x6D\x3B\x5C\x6E\x09\x09\x09\x7D\x5C\x6E\x09\x09\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x68\x65\x61\x64\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x73\x74\x79\x6C\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x57\x75\x69\x4E\x6F\x74\x69\x66\x32\x3B\x0A\x20\x20\x20\x20\x7D\x28\x29\x0A\x20\x20\x29\x3B\x0A\x0A\x20\x20\x2F\x2F\x20\x5F\x77\x77\x77\x2F\x77\x75\x69\x2F\x76\x66\x73\x2F\x76\x66\x73\x2E\x6A\x73\x0A\x20\x20\x76\x61\x72\x20\x5F\x5F\x61\x77\x61\x69\x74\x65\x72\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x74\x68\x69\x73\x41\x72\x67\x2C\x20\x5F\x61\x72\x67\x75\x6D\x65\x6E\x74\x73\x2C\x20\x50\x2C\x20\x67\x65\x6E\x65\x72\x61\x74\x6F\x72\x29\x20\x7B\x0A\x20\x20\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x61\x64\x6F\x70\x74\x28\x76\x61\x6C\x75\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x76\x61\x6C\x75\x65\x20\x69\x6E\x73\x74\x61\x6E\x63\x65\x6F\x66\x20\x50\x20\x3F\x20\x76\x61\x6C\x75\x65\x20\x3A\x20\x6E\x65\x77\x20\x50\x28\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x72\x65\x73\x6F\x6C\x76\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x73\x6F\x6C\x76\x65\x28\x76\x61\x6C\x75\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x29\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x6E\x65\x77\x20\x28\x50\x20\x7C\x7C\x20\x28\x50\x20\x3D\x20\x50\x72\x6F\x6D\x69\x73\x65\x29\x29\x28\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x72\x65\x73\x6F\x6C\x76\x65\x2C\x20\x72\x65\x6A\x65\x63\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x66\x75\x6C\x66\x69\x6C\x6C\x65\x64\x28\x76\x61\x6C\x75\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x72\x79\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x73\x74\x65\x70\x28\x67\x65\x6E\x65\x72\x61\x74\x6F\x72\x2E\x6E\x65\x78\x74\x28\x76\x61\x6C\x75\x65\x29\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x20\x63\x61\x74\x63\x68\x20\x28\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x6A\x65\x63\x74\x28\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x72\x65\x6A\x65\x63\x74\x65\x64\x28\x76\x61\x6C\x75\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x72\x79\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x73\x74\x65\x70\x28\x67\x65\x6E\x65\x72\x61\x74\x6F\x72\x5B\x22\x74\x68\x72\x6F\x77\x22\x5D\x28\x76\x61\x6C\x75\x65\x29\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x20\x63\x61\x74\x63\x68\x20\x28\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x6A\x65\x63\x74\x28\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x73\x74\x65\x70\x28\x72\x65\x73\x75\x6C\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x73\x75\x6C\x74\x2E\x64\x6F\x6E\x65\x20\x3F\x20\x72\x65\x73\x6F\x6C\x76\x65\x28\x72\x65\x73\x75\x6C\x74\x2E\x76\x61\x6C\x75\x65\x29\x20\x3A\x20\x61\x64\x6F\x70\x74\x28\x72\x65\x73\x75\x6C\x74\x2E\x76\x61\x6C\x75\x65\x29\x2E\x74\x68\x65\x6E\x28\x66\x75\x6C\x66\x69\x6C\x6C\x65\x64\x2C\x20\x72\x65\x6A\x65\x63\x74\x65\x64\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x73\x74\x65\x70\x28\x28\x67\x65\x6E\x65\x72\x61\x74\x6F\x72\x20\x3D\x20\x67\x65\x6E\x65\x72\x61\x74\x6F\x72\x2E\x61\x70\x70\x6C\x79\x28\x74\x68\x69\x73\x41\x72\x67\x2C\x20\x5F\x61\x72\x67\x75\x6D\x65\x6E\x74\x73\x20\x7C\x7C\x20\x5B\x5D\x29\x29\x2E\x6E\x65\x78\x74\x28\x29\x29\x3B\x0A\x20\x20\x20\x20\x7D\x29\x3B\x0A\x20\x20\x7D\x3B\x0A\x20\x20\x76\x61\x72\x20\x5F\x5F\x67\x65\x6E\x65\x72\x61\x74\x6F\x72\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x74\x68\x69\x73\x41\x72\x67\x2C\x20\x62\x6F\x64\x79\x29\x20\x7B\x0A\x20\x20\x20\x20\x76\x61\x72\x20\x5F\x20\x3D\x20\x7B\x20\x6C\x61\x62\x65\x6C\x3A\x20\x30\x2C\x20\x73\x65\x6E\x74\x3A\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x5B\x30\x5D\x20\x26\x20\x31\x29\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x72\x6F\x77\x20\x74\x5B\x31\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x74\x5B\x31\x5D\x3B\x0A\x20\x20\x20\x20\x7D\x2C\x20\x74\x72\x79\x73\x3A\x20\x5B\x5D\x2C\x20\x6F\x70\x73\x3A\x20\x5B\x5D\x20\x7D\x2C\x20\x66\x2C\x20\x79\x2C\x20\x74\x2C\x20\x67\x3B\x0A\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x67\x20\x3D\x20\x7B\x20\x6E\x65\x78\x74\x3A\x20\x76\x65\x72\x62\x28\x30\x29\x2C\x20\x22\x74\x68\x72\x6F\x77\x22\x3A\x20\x76\x65\x72\x62\x28\x31\x29\x2C\x20\x22\x72\x65\x74\x75\x72\x6E\x22\x3A\x20\x76\x65\x72\x62\x28\x32\x29\x20\x7D\x2C\x20\x74\x79\x70\x65\x6F\x66\x20\x53\x79\x6D\x62\x6F\x6C\x20\x3D\x3D\x3D\x20\x22\x66\x75\x6E\x63\x74\x69\x6F\x6E\x22\x20\x26\x26\x20\x28\x67\x5B\x53\x79\x6D\x62\x6F\x6C\x2E\x69\x74\x65\x72\x61\x74\x6F\x72\x5D\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x74\x68\x69\x73\x3B\x0A\x20\x20\x20\x20\x7D\x29\x2C\x20\x67\x3B\x0A\x20\x20\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x76\x65\x72\x62\x28\x6E\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x76\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x73\x74\x65\x70\x28\x5B\x6E\x2C\x20\x76\x5D\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x73\x74\x65\x70\x28\x6F\x70\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x66\x29\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x72\x6F\x77\x20\x6E\x65\x77\x20\x54\x79\x70\x65\x45\x72\x72\x6F\x72\x28\x22\x47\x65\x6E\x65\x72\x61\x74\x6F\x72\x20\x69\x73\x20\x61\x6C\x72\x65\x61\x64\x79\x20\x65\x78\x65\x63\x75\x74\x69\x6E\x67\x2E\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x77\x68\x69\x6C\x65\x20\x28\x5F\x29\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x72\x79\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x66\x20\x3D\x20\x31\x2C\x20\x79\x20\x26\x26\x20\x28\x74\x20\x3D\x20\x6F\x70\x5B\x30\x5D\x20\x26\x20\x32\x20\x3F\x20\x79\x5B\x22\x72\x65\x74\x75\x72\x6E\x22\x5D\x20\x3A\x20\x6F\x70\x5B\x30\x5D\x20\x3F\x20\x79\x5B\x22\x74\x68\x72\x6F\x77\x22\x5D\x20\x7C\x7C\x20\x28\x28\x74\x20\x3D\x20\x79\x5B\x22\x72\x65\x74\x75\x72\x6E\x22\x5D\x29\x20\x26\x26\x20\x74\x2E\x63\x61\x6C\x6C\x28\x79\x29\x2C\x20\x30\x29\x20\x3A\x20\x79\x2E\x6E\x65\x78\x74\x29\x20\x26\x26\x20\x21\x28\x74\x20\x3D\x20\x74\x2E\x63\x61\x6C\x6C\x28\x79\x2C\x20\x6F\x70\x5B\x31\x5D\x29\x29\x2E\x64\x6F\x6E\x65\x29\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x79\x20\x3D\x20\x30\x2C\x20\x74\x29\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6F\x70\x20\x3D\x20\x5B\x6F\x70\x5B\x30\x5D\x20\x26\x20\x32\x2C\x20\x74\x2E\x76\x61\x6C\x75\x65\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x73\x77\x69\x74\x63\x68\x20\x28\x6F\x70\x5B\x30\x5D\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x30\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x31\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x20\x3D\x20\x6F\x70\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x34\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x2E\x6C\x61\x62\x65\x6C\x2B\x2B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x7B\x20\x76\x61\x6C\x75\x65\x3A\x20\x6F\x70\x5B\x31\x5D\x2C\x20\x64\x6F\x6E\x65\x3A\x20\x66\x61\x6C\x73\x65\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x35\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x2E\x6C\x61\x62\x65\x6C\x2B\x2B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x79\x20\x3D\x20\x6F\x70\x5B\x31\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6F\x70\x20\x3D\x20\x5B\x30\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x74\x69\x6E\x75\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x37\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6F\x70\x20\x3D\x20\x5F\x2E\x6F\x70\x73\x2E\x70\x6F\x70\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x2E\x74\x72\x79\x73\x2E\x70\x6F\x70\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x74\x69\x6E\x75\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x64\x65\x66\x61\x75\x6C\x74\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x21\x28\x74\x20\x3D\x20\x5F\x2E\x74\x72\x79\x73\x2C\x20\x74\x20\x3D\x20\x74\x2E\x6C\x65\x6E\x67\x74\x68\x20\x3E\x20\x30\x20\x26\x26\x20\x74\x5B\x74\x2E\x6C\x65\x6E\x67\x74\x68\x20\x2D\x20\x31\x5D\x29\x20\x26\x26\x20\x28\x6F\x70\x5B\x30\x5D\x20\x3D\x3D\x3D\x20\x36\x20\x7C\x7C\x20\x6F\x70\x5B\x30\x5D\x20\x3D\x3D\x3D\x20\x32\x29\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x20\x3D\x20\x30\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x74\x69\x6E\x75\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x6F\x70\x5B\x30\x5D\x20\x3D\x3D\x3D\x20\x33\x20\x26\x26\x20\x28\x21\x74\x20\x7C\x7C\x20\x6F\x70\x5B\x31\x5D\x20\x3E\x20\x74\x5B\x30\x5D\x20\x26\x26\x20\x6F\x70\x5B\x31\x5D\x20\x3C\x20\x74\x5B\x33\x5D\x29\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x2E\x6C\x61\x62\x65\x6C\x20\x3D\x20\x6F\x70\x5B\x31\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x6F\x70\x5B\x30\x5D\x20\x3D\x3D\x3D\x20\x36\x20\x26\x26\x20\x5F\x2E\x6C\x61\x62\x65\x6C\x20\x3C\x20\x74\x5B\x31\x5D\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x2E\x6C\x61\x62\x65\x6C\x20\x3D\x20\x74\x5B\x31\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x20\x3D\x20\x6F\x70\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x20\x26\x26\x20\x5F\x2E\x6C\x61\x62\x65\x6C\x20\x3C\x20\x74\x5B\x32\x5D\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x2E\x6C\x61\x62\x65\x6C\x20\x3D\x20\x74\x5B\x32\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x2E\x6F\x70\x73\x2E\x70\x75\x73\x68\x28\x6F\x70\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x5B\x32\x5D\x29\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x2E\x6F\x70\x73\x2E\x70\x6F\x70\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x2E\x74\x72\x79\x73\x2E\x70\x6F\x70\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x74\x69\x6E\x75\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6F\x70\x20\x3D\x20\x62\x6F\x64\x79\x2E\x63\x61\x6C\x6C\x28\x74\x68\x69\x73\x41\x72\x67\x2C\x20\x5F\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x20\x63\x61\x74\x63\x68\x20\x28\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6F\x70\x20\x3D\x20\x5B\x36\x2C\x20\x65\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x79\x20\x3D\x20\x30\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x20\x66\x69\x6E\x61\x6C\x6C\x79\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x66\x20\x3D\x20\x74\x20\x3D\x20\x30\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x6F\x70\x5B\x30\x5D\x20\x26\x20\x35\x29\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x72\x6F\x77\x20\x6F\x70\x5B\x31\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x7B\x20\x76\x61\x6C\x75\x65\x3A\x20\x6F\x70\x5B\x30\x5D\x20\x3F\x20\x6F\x70\x5B\x31\x5D\x20\x3A\x20\x76\x6F\x69\x64\x20\x30\x2C\x20\x64\x6F\x6E\x65\x3A\x20\x74\x72\x75\x65\x20\x7D\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x7D\x3B\x0A\x20\x20\x76\x61\x72\x20\x43\x4C\x41\x53\x53\x5F\x56\x46\x53\x5F\x50\x41\x54\x48\x20\x3D\x20\x22\x77\x75\x69\x5F\x76\x66\x73\x5F\x70\x61\x74\x68\x22\x3B\x0A\x20\x20\x76\x61\x72\x20\x43\x4C\x41\x53\x53\x5F\x56\x46\x53\x5F\x4C\x49\x53\x54\x20\x3D\x20\x22\x77\x75\x69\x5F\x76\x66\x73\x5F\x6C\x69\x73\x74\x22\x3B\x0A\x20\x20\x76\x61\x72\x20\x57\x75\x69\x56\x66\x73\x20\x3D\x20\x28\x0A\x20\x20\x20\x20\x2F\x2A\x2A\x20\x40\x63\x6C\x61\x73\x73\x20\x2A\x2F\x0A\x20\x20\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x57\x75\x69\x56\x66\x73\x32\x28\x6F\x70\x74\x73\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x5F\x74\x68\x69\x73\x20\x3D\x20\x74\x68\x69\x73\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x20\x3D\x20\x6F\x70\x74\x73\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x20\x3D\x20\x6F\x70\x74\x73\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x65\x6C\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x67\x65\x74\x45\x6C\x65\x6D\x65\x6E\x74\x42\x79\x49\x64\x28\x6F\x70\x74\x73\x2E\x69\x64\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x21\x65\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x6F\x6C\x65\x2E\x65\x72\x72\x6F\x72\x28\x22\x57\x75\x69\x56\x66\x73\x3A\x20\x65\x6C\x65\x6D\x65\x6E\x74\x20\x69\x64\x22\x2C\x20\x6F\x70\x74\x73\x2E\x69\x64\x2C\x20\x22\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x20\x3D\x20\x65\x6C\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x70\x61\x74\x68\x20\x3D\x20\x6E\x65\x77\x20\x57\x75\x69\x56\x66\x73\x50\x61\x74\x68\x28\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x70\x61\x74\x68\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x74\x68\x69\x73\x2E\x4F\x70\x65\x6E\x44\x69\x72\x28\x70\x61\x74\x68\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x70\x61\x74\x68\x2E\x65\x6C\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x6C\x69\x73\x74\x20\x3D\x20\x6E\x65\x77\x20\x57\x75\x69\x56\x66\x73\x4C\x69\x73\x74\x28\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x6E\x6F\x64\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x74\x68\x69\x73\x2E\x4F\x70\x65\x6E\x4E\x6F\x64\x65\x28\x6E\x6F\x64\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x6C\x69\x73\x74\x2E\x65\x6C\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x56\x66\x73\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x4F\x70\x65\x6E\x4E\x6F\x64\x65\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x6E\x6F\x64\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x6E\x6F\x64\x65\x2E\x69\x73\x5F\x64\x69\x72\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x4F\x70\x65\x6E\x44\x69\x72\x28\x6E\x6F\x64\x65\x2E\x70\x61\x74\x68\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x20\x65\x6C\x73\x65\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x4F\x70\x65\x6E\x4E\x6F\x64\x65\x28\x6E\x6F\x64\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x56\x66\x73\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x4F\x70\x65\x6E\x44\x69\x72\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x70\x61\x74\x68\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5F\x5F\x61\x77\x61\x69\x74\x65\x72\x28\x74\x68\x69\x73\x2C\x20\x76\x6F\x69\x64\x20\x30\x2C\x20\x76\x6F\x69\x64\x20\x30\x2C\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x72\x65\x73\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5F\x5F\x67\x65\x6E\x65\x72\x61\x74\x6F\x72\x28\x74\x68\x69\x73\x2C\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x5F\x61\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x73\x77\x69\x74\x63\x68\x20\x28\x5F\x61\x2E\x6C\x61\x62\x65\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x30\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5B\x34\x2C\x20\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x4F\x70\x65\x6E\x28\x70\x61\x74\x68\x2C\x20\x74\x72\x75\x65\x29\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x31\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x73\x20\x3D\x20\x5F\x61\x2E\x73\x65\x6E\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x72\x65\x73\x2E\x63\x6F\x64\x65\x20\x21\x3D\x20\x32\x30\x30\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x32\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x2F\x2A\x72\x65\x74\x75\x72\x6E\x2A\x2F\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x53\x65\x74\x28\x72\x65\x73\x2E\x64\x61\x74\x61\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x32\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x2F\x2A\x72\x65\x74\x75\x72\x6E\x2A\x2F\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x56\x66\x73\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x53\x65\x74\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x6E\x6F\x64\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x6E\x6F\x64\x65\x2E\x69\x73\x5F\x64\x69\x72\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x70\x61\x74\x68\x2E\x4F\x70\x65\x6E\x28\x6E\x6F\x64\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x6C\x69\x73\x74\x2E\x4F\x70\x65\x6E\x28\x6E\x6F\x64\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x57\x75\x69\x56\x66\x73\x32\x3B\x0A\x20\x20\x20\x20\x7D\x28\x29\x0A\x20\x20\x29\x3B\x0A\x20\x20\x76\x61\x72\x20\x57\x75\x69\x56\x66\x73\x4C\x69\x73\x74\x20\x3D\x20\x28\x0A\x20\x20\x20\x20\x2F\x2A\x2A\x20\x40\x63\x6C\x61\x73\x73\x20\x2A\x2F\x0A\x20\x20\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x57\x75\x69\x56\x66\x73\x4C\x69\x73\x74\x32\x28\x6F\x6E\x43\x6C\x69\x63\x6B\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6F\x6E\x43\x6C\x69\x63\x6B\x20\x3D\x20\x6F\x6E\x43\x6C\x69\x63\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6E\x6F\x64\x65\x20\x3D\x20\x6E\x75\x6C\x6C\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x63\x72\x65\x61\x74\x65\x45\x6C\x65\x6D\x65\x6E\x74\x28\x22\x64\x69\x76\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x43\x4C\x41\x53\x53\x5F\x56\x46\x53\x5F\x4C\x49\x53\x54\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x73\x74\x79\x6C\x65\x2E\x62\x6F\x72\x64\x65\x72\x57\x69\x64\x74\x68\x20\x3D\x20\x22\x31\x70\x78\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x73\x74\x79\x6C\x65\x2E\x62\x6F\x72\x64\x65\x72\x53\x74\x79\x6C\x65\x20\x3D\x20\x22\x73\x6F\x6C\x69\x64\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x73\x74\x79\x6C\x65\x2E\x62\x6F\x72\x64\x65\x72\x43\x6F\x6C\x6F\x72\x20\x3D\x20\x22\x73\x69\x6C\x76\x65\x72\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x56\x66\x73\x4C\x69\x73\x74\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x4F\x70\x65\x6E\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x6E\x6F\x64\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x5F\x74\x68\x69\x73\x20\x3D\x20\x74\x68\x69\x73\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6E\x6F\x64\x65\x20\x3D\x20\x6E\x6F\x64\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x69\x6E\x6E\x65\x72\x48\x54\x4D\x4C\x20\x3D\x20\x22\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x21\x74\x68\x69\x73\x2E\x6E\x6F\x64\x65\x2E\x63\x68\x69\x6C\x64\x73\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x5F\x6C\x6F\x6F\x70\x5F\x31\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x63\x32\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x65\x6C\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x63\x72\x65\x61\x74\x65\x45\x6C\x65\x6D\x65\x6E\x74\x28\x22\x64\x69\x76\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x2E\x73\x74\x79\x6C\x65\x2E\x70\x61\x64\x64\x69\x6E\x67\x20\x3D\x20\x22\x31\x65\x6D\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x2E\x73\x74\x79\x6C\x65\x2E\x63\x75\x72\x73\x6F\x72\x20\x3D\x20\x22\x70\x6F\x69\x6E\x74\x65\x72\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x2E\x69\x6E\x6E\x65\x72\x48\x54\x4D\x4C\x20\x3D\x20\x63\x32\x2E\x6E\x61\x6D\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x63\x32\x2E\x69\x73\x5F\x64\x69\x72\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x2E\x73\x74\x79\x6C\x65\x2E\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x43\x6F\x6C\x6F\x72\x20\x3D\x20\x22\x63\x6F\x72\x6E\x73\x69\x6C\x6B\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x2E\x6F\x6E\x63\x6C\x69\x63\x6B\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x65\x76\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x74\x68\x69\x73\x2E\x6F\x6E\x43\x6C\x69\x63\x6B\x28\x63\x32\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x2E\x6F\x6E\x6D\x6F\x75\x73\x65\x6F\x75\x74\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x65\x76\x65\x6E\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x63\x32\x2E\x69\x73\x5F\x64\x69\x72\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x2E\x73\x74\x79\x6C\x65\x2E\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x43\x6F\x6C\x6F\x72\x20\x3D\x20\x22\x63\x6F\x72\x6E\x73\x69\x6C\x6B\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x20\x65\x6C\x73\x65\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x2E\x73\x74\x79\x6C\x65\x2E\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x43\x6F\x6C\x6F\x72\x20\x3D\x20\x22\x77\x68\x69\x74\x65\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x2E\x6F\x6E\x6D\x6F\x75\x73\x65\x6F\x76\x65\x72\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x65\x76\x65\x6E\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x2E\x73\x74\x79\x6C\x65\x2E\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x43\x6F\x6C\x6F\x72\x20\x3D\x20\x22\x61\x6C\x69\x63\x65\x62\x6C\x75\x65\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x5F\x31\x2E\x65\x6C\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x65\x6C\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x74\x68\x69\x73\x5F\x31\x20\x3D\x20\x74\x68\x69\x73\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x66\x6F\x72\x20\x28\x76\x61\x72\x20\x5F\x69\x20\x3D\x20\x30\x2C\x20\x5F\x61\x20\x3D\x20\x74\x68\x69\x73\x2E\x6E\x6F\x64\x65\x2E\x63\x68\x69\x6C\x64\x73\x3B\x20\x5F\x69\x20\x3C\x20\x5F\x61\x2E\x6C\x65\x6E\x67\x74\x68\x3B\x20\x5F\x69\x2B\x2B\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x63\x20\x3D\x20\x5F\x61\x5B\x5F\x69\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x6C\x6F\x6F\x70\x5F\x31\x28\x63\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x57\x75\x69\x56\x66\x73\x4C\x69\x73\x74\x32\x3B\x0A\x20\x20\x20\x20\x7D\x28\x29\x0A\x20\x20\x29\x3B\x0A\x20\x20\x76\x61\x72\x20\x57\x75\x69\x56\x66\x73\x50\x61\x74\x68\x20\x3D\x20\x28\x0A\x20\x20\x20\x20\x2F\x2A\x2A\x20\x40\x63\x6C\x61\x73\x73\x20\x2A\x2F\x0A\x20\x20\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x57\x75\x69\x56\x66\x73\x50\x61\x74\x68\x32\x28\x6F\x6E\x43\x6C\x69\x63\x6B\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x63\x72\x65\x61\x74\x65\x45\x6C\x65\x6D\x65\x6E\x74\x28\x22\x64\x69\x76\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x43\x4C\x41\x53\x53\x5F\x56\x46\x53\x5F\x50\x41\x54\x48\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x73\x74\x79\x6C\x65\x2E\x62\x6F\x72\x64\x65\x72\x57\x69\x64\x74\x68\x20\x3D\x20\x22\x31\x70\x78\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x73\x74\x79\x6C\x65\x2E\x62\x6F\x72\x64\x65\x72\x53\x74\x79\x6C\x65\x20\x3D\x20\x22\x73\x6F\x6C\x69\x64\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x73\x74\x79\x6C\x65\x2E\x62\x6F\x72\x64\x65\x72\x43\x6F\x6C\x6F\x72\x20\x3D\x20\x22\x73\x69\x6C\x76\x65\x72\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x72\x75\x6D\x62\x73\x20\x3D\x20\x5B\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6F\x6E\x43\x6C\x69\x63\x6B\x20\x3D\x20\x6F\x6E\x43\x6C\x69\x63\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x56\x66\x73\x50\x61\x74\x68\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x4F\x70\x65\x6E\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x6E\x6F\x64\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x5F\x74\x68\x69\x73\x20\x3D\x20\x74\x68\x69\x73\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x69\x6E\x6E\x65\x72\x48\x54\x4D\x4C\x20\x3D\x20\x22\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x72\x75\x6D\x62\x73\x20\x3D\x20\x5B\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x70\x61\x74\x68\x73\x20\x3D\x20\x5B\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x6E\x6F\x64\x65\x2E\x70\x61\x74\x68\x20\x3D\x3D\x20\x22\x2F\x22\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x70\x61\x74\x68\x73\x2E\x70\x75\x73\x68\x28\x6E\x6F\x64\x65\x2E\x70\x61\x74\x68\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x20\x65\x6C\x73\x65\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x70\x61\x74\x68\x73\x20\x3D\x20\x6E\x6F\x64\x65\x2E\x70\x61\x74\x68\x2E\x73\x70\x6C\x69\x74\x28\x22\x2F\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x5F\x6C\x6F\x6F\x70\x5F\x32\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x78\x32\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x66\x75\x6C\x6C\x5F\x70\x61\x74\x68\x20\x3D\x20\x22\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x70\x20\x3D\x20\x22\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x78\x32\x20\x3D\x3D\x20\x30\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x70\x20\x3D\x20\x22\x2F\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x66\x75\x6C\x6C\x5F\x70\x61\x74\x68\x20\x3D\x20\x22\x2F\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x20\x65\x6C\x73\x65\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x70\x20\x3D\x20\x70\x61\x74\x68\x73\x5B\x78\x32\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x66\x75\x6C\x6C\x5F\x70\x61\x74\x68\x20\x3D\x20\x70\x61\x74\x68\x73\x2E\x73\x6C\x69\x63\x65\x28\x30\x2C\x20\x78\x32\x20\x2B\x20\x31\x29\x2E\x6A\x6F\x69\x6E\x28\x22\x2F\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x63\x72\x75\x6D\x62\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x63\x72\x65\x61\x74\x65\x45\x6C\x65\x6D\x65\x6E\x74\x28\x22\x73\x70\x61\x6E\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x72\x75\x6D\x62\x2E\x73\x74\x79\x6C\x65\x2E\x64\x69\x73\x70\x6C\x61\x79\x20\x3D\x20\x22\x69\x6E\x6C\x69\x6E\x65\x2D\x62\x6C\x6F\x63\x6B\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x72\x75\x6D\x62\x2E\x73\x74\x79\x6C\x65\x2E\x70\x61\x64\x64\x69\x6E\x67\x20\x3D\x20\x22\x31\x65\x6D\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x72\x75\x6D\x62\x2E\x73\x74\x79\x6C\x65\x2E\x63\x75\x72\x73\x6F\x72\x20\x3D\x20\x22\x70\x6F\x69\x6E\x74\x65\x72\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x72\x75\x6D\x62\x2E\x69\x6E\x6E\x65\x72\x48\x54\x4D\x4C\x20\x3D\x20\x70\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x72\x75\x6D\x62\x2E\x6F\x6E\x63\x6C\x69\x63\x6B\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x65\x76\x65\x6E\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x74\x68\x69\x73\x2E\x6F\x6E\x43\x6C\x69\x63\x6B\x28\x66\x75\x6C\x6C\x5F\x70\x61\x74\x68\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x72\x75\x6D\x62\x2E\x6F\x6E\x6D\x6F\x75\x73\x65\x6F\x75\x74\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x65\x76\x65\x6E\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x72\x75\x6D\x62\x2E\x73\x74\x79\x6C\x65\x2E\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x43\x6F\x6C\x6F\x72\x20\x3D\x20\x22\x77\x68\x69\x74\x65\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x72\x75\x6D\x62\x2E\x6F\x6E\x6D\x6F\x75\x73\x65\x6F\x76\x65\x72\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x65\x76\x65\x6E\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x72\x75\x6D\x62\x2E\x73\x74\x79\x6C\x65\x2E\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x43\x6F\x6C\x6F\x72\x20\x3D\x20\x22\x61\x6C\x69\x63\x65\x62\x6C\x75\x65\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x5F\x32\x2E\x65\x6C\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x63\x72\x75\x6D\x62\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x74\x68\x69\x73\x5F\x32\x20\x3D\x20\x74\x68\x69\x73\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x66\x6F\x72\x20\x28\x76\x61\x72\x20\x78\x20\x3D\x20\x30\x3B\x20\x78\x20\x3C\x20\x70\x61\x74\x68\x73\x2E\x6C\x65\x6E\x67\x74\x68\x3B\x20\x78\x2B\x2B\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x6C\x6F\x6F\x70\x5F\x32\x28\x78\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x57\x75\x69\x56\x66\x73\x50\x61\x74\x68\x32\x3B\x0A\x20\x20\x20\x20\x7D\x28\x29\x0A\x20\x20\x29\x3B\x0A\x0A\x20\x20\x2F\x2F\x20\x5F\x77\x77\x77\x2F\x61\x77\x77\x61\x6E\x2E\x6A\x73\x0A\x20\x20\x76\x61\x72\x20\x5F\x5F\x61\x77\x61\x69\x74\x65\x72\x32\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x74\x68\x69\x73\x41\x72\x67\x2C\x20\x5F\x61\x72\x67\x75\x6D\x65\x6E\x74\x73\x2C\x20\x50\x2C\x20\x67\x65\x6E\x65\x72\x61\x74\x6F\x72\x29\x20\x7B\x0A\x20\x20\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x61\x64\x6F\x70\x74\x28\x76\x61\x6C\x75\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x76\x61\x6C\x75\x65\x20\x69\x6E\x73\x74\x61\x6E\x63\x65\x6F\x66\x20\x50\x20\x3F\x20\x76\x61\x6C\x75\x65\x20\x3A\x20\x6E\x65\x77\x20\x50\x28\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x72\x65\x73\x6F\x6C\x76\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x73\x6F\x6C\x76\x65\x28\x76\x61\x6C\x75\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x29\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x6E\x65\x77\x20\x28\x50\x20\x7C\x7C\x20\x28\x50\x20\x3D\x20\x50\x72\x6F\x6D\x69\x73\x65\x29\x29\x28\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x72\x65\x73\x6F\x6C\x76\x65\x2C\x20\x72\x65\x6A\x65\x63\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x66\x75\x6C\x66\x69\x6C\x6C\x65\x64\x28\x76\x61\x6C\x75\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x72\x79\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x73\x74\x65\x70\x28\x67\x65\x6E\x65\x72\x61\x74\x6F\x72\x2E\x6E\x65\x78\x74\x28\x76\x61\x6C\x75\x65\x29\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x20\x63\x61\x74\x63\x68\x20\x28\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x6A\x65\x63\x74\x28\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x72\x65\x6A\x65\x63\x74\x65\x64\x28\x76\x61\x6C\x75\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x72\x79\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x73\x74\x65\x70\x28\x67\x65\x6E\x65\x72\x61\x74\x6F\x72\x5B\x22\x74\x68\x72\x6F\x77\x22\x5D\x28\x76\x61\x6C\x75\x65\x29\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x20\x63\x61\x74\x63\x68\x20\x28\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x6A\x65\x63\x74\x28\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x73\x74\x65\x70\x28\x72\x65\x73\x75\x6C\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x73\x75\x6C\x74\x2E\x64\x6F\x6E\x65\x20\x3F\x20\x72\x65\x73\x6F\x6C\x76\x65\x28\x72\x65\x73\x75\x6C\x74\x2E\x76\x61\x6C\x75\x65\x29\x20\x3A\x20\x61\x64\x6F\x70\x74\x28\x72\x65\x73\x75\x6C\x74\x2E\x76\x61\x6C\x75\x65\x29\x2E\x74\x68\x65\x6E\x28\x66\x75\x6C\x66\x69\x6C\x6C\x65\x64\x2C\x20\x72\x65\x6A\x65\x63\x74\x65\x64\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x73\x74\x65\x70\x28\x28\x67\x65\x6E\x65\x72\x61\x74\x6F\x72\x20\x3D\x20\x67\x65\x6E\x65\x72\x61\x74\x6F\x72\x2E\x61\x70\x70\x6C\x79\x28\x74\x68\x69\x73\x41\x72\x67\x2C\x20\x5F\x61\x72\x67\x75\x6D\x65\x6E\x74\x73\x20\x7C\x7C\x20\x5B\x5D\x29\x29\x2E\x6E\x65\x78\x74\x28\x29\x29\x3B\x0A\x20\x20\x20\x20\x7D\x29\x3B\x0A\x20\x20\x7D\x3B\x0A\x20\x20\x76\x61\x72\x20\x5F\x5F\x67\x65\x6E\x65\x72\x61\x74\x6F\x72\x32\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x74\x68\x69\x73\x41\x72\x67\x2C\x20\x62\x6F\x64\x79\x29\x20\x7B\x0A\x20\x20\x20\x20\x76\x61\x72\x20\x5F\x20\x3D\x20\x7B\x20\x6C\x61\x62\x65\x6C\x3A\x20\x30\x2C\x20\x73\x65\x6E\x74\x3A\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x5B\x30\x5D\x20\x26\x20\x31\x29\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x72\x6F\x77\x20\x74\x5B\x31\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x74\x5B\x31\x5D\x3B\x0A\x20\x20\x20\x20\x7D\x2C\x20\x74\x72\x79\x73\x3A\x20\x5B\x5D\x2C\x20\x6F\x70\x73\x3A\x20\x5B\x5D\x20\x7D\x2C\x20\x66\x2C\x20\x79\x2C\x20\x74\x2C\x20\x67\x3B\x0A\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x67\x20\x3D\x20\x7B\x20\x6E\x65\x78\x74\x3A\x20\x76\x65\x72\x62\x28\x30\x29\x2C\x20\x22\x74\x68\x72\x6F\x77\x22\x3A\x20\x76\x65\x72\x62\x28\x31\x29\x2C\x20\x22\x72\x65\x74\x75\x72\x6E\x22\x3A\x20\x76\x65\x72\x62\x28\x32\x29\x20\x7D\x2C\x20\x74\x79\x70\x65\x6F\x66\x20\x53\x79\x6D\x62\x6F\x6C\x20\x3D\x3D\x3D\x20\x22\x66\x75\x6E\x63\x74\x69\x6F\x6E\x22\x20\x26\x26\x20\x28\x67\x5B\x53\x79\x6D\x62\x6F\x6C\x2E\x69\x74\x65\x72\x61\x74\x6F\x72\x5D\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x74\x68\x69\x73\x3B\x0A\x20\x20\x20\x20\x7D\x29\x2C\x20\x67\x3B\x0A\x20\x20\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x76\x65\x72\x62\x28\x6E\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x76\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x73\x74\x65\x70\x28\x5B\x6E\x2C\x20\x76\x5D\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x73\x74\x65\x70\x28\x6F\x70\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x66\x29\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x72\x6F\x77\x20\x6E\x65\x77\x20\x54\x79\x70\x65\x45\x72\x72\x6F\x72\x28\x22\x47\x65\x6E\x65\x72\x61\x74\x6F\x72\x20\x69\x73\x20\x61\x6C\x72\x65\x61\x64\x79\x20\x65\x78\x65\x63\x75\x74\x69\x6E\x67\x2E\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x77\x68\x69\x6C\x65\x20\x28\x5F\x29\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x72\x79\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x66\x20\x3D\x20\x31\x2C\x20\x79\x20\x26\x26\x20\x28\x74\x20\x3D\x20\x6F\x70\x5B\x30\x5D\x20\x26\x20\x32\x20\x3F\x20\x79\x5B\x22\x72\x65\x74\x75\x72\x6E\x22\x5D\x20\x3A\x20\x6F\x70\x5B\x30\x5D\x20\x3F\x20\x79\x5B\x22\x74\x68\x72\x6F\x77\x22\x5D\x20\x7C\x7C\x20\x28\x28\x74\x20\x3D\x20\x79\x5B\x22\x72\x65\x74\x75\x72\x6E\x22\x5D\x29\x20\x26\x26\x20\x74\x2E\x63\x61\x6C\x6C\x28\x79\x29\x2C\x20\x30\x29\x20\x3A\x20\x79\x2E\x6E\x65\x78\x74\x29\x20\x26\x26\x20\x21\x28\x74\x20\x3D\x20\x74\x2E\x63\x61\x6C\x6C\x28\x79\x2C\x20\x6F\x70\x5B\x31\x5D\x29\x29\x2E\x64\x6F\x6E\x65\x29\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x79\x20\x3D\x20\x30\x2C\x20\x74\x29\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6F\x70\x20\x3D\x20\x5B\x6F\x70\x5B\x30\x5D\x20\x26\x20\x32\x2C\x20\x74\x2E\x76\x61\x6C\x75\x65\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x73\x77\x69\x74\x63\x68\x20\x28\x6F\x70\x5B\x30\x5D\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x30\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x31\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x20\x3D\x20\x6F\x70\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x34\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x2E\x6C\x61\x62\x65\x6C\x2B\x2B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x7B\x20\x76\x61\x6C\x75\x65\x3A\x20\x6F\x70\x5B\x31\x5D\x2C\x20\x64\x6F\x6E\x65\x3A\x20\x66\x61\x6C\x73\x65\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x35\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x2E\x6C\x61\x62\x65\x6C\x2B\x2B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x79\x20\x3D\x20\x6F\x70\x5B\x31\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6F\x70\x20\x3D\x20\x5B\x30\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x74\x69\x6E\x75\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x37\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6F\x70\x20\x3D\x20\x5F\x2E\x6F\x70\x73\x2E\x70\x6F\x70\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x2E\x74\x72\x79\x73\x2E\x70\x6F\x70\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x74\x69\x6E\x75\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x64\x65\x66\x61\x75\x6C\x74\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x21\x28\x74\x20\x3D\x20\x5F\x2E\x74\x72\x79\x73\x2C\x20\x74\x20\x3D\x20\x74\x2E\x6C\x65\x6E\x67\x74\x68\x20\x3E\x20\x30\x20\x26\x26\x20\x74\x5B\x74\x2E\x6C\x65\x6E\x67\x74\x68\x20\x2D\x20\x31\x5D\x29\x20\x26\x26\x20\x28\x6F\x70\x5B\x30\x5D\x20\x3D\x3D\x3D\x20\x36\x20\x7C\x7C\x20\x6F\x70\x5B\x30\x5D\x20\x3D\x3D\x3D\x20\x32\x29\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x20\x3D\x20\x30\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x74\x69\x6E\x75\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x6F\x70\x5B\x30\x5D\x20\x3D\x3D\x3D\x20\x33\x20\x26\x26\x20\x28\x21\x74\x20\x7C\x7C\x20\x6F\x70\x5B\x31\x5D\x20\x3E\x20\x74\x5B\x30\x5D\x20\x26\x26\x20\x6F\x70\x5B\x31\x5D\x20\x3C\x20\x74\x5B\x33\x5D\x29\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x2E\x6C\x61\x62\x65\x6C\x20\x3D\x20\x6F\x70\x5B\x31\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x6F\x70\x5B\x30\x5D\x20\x3D\x3D\x3D\x20\x36\x20\x26\x26\x20\x5F\x2E\x6C\x61\x62\x65\x6C\x20\x3C\x20\x74\x5B\x31\x5D\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x2E\x6C\x61\x62\x65\x6C\x20\x3D\x20\x74\x5B\x31\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x20\x3D\x20\x6F\x70\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x20\x26\x26\x20\x5F\x2E\x6C\x61\x62\x65\x6C\x20\x3C\x20\x74\x5B\x32\x5D\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x2E\x6C\x61\x62\x65\x6C\x20\x3D\x20\x74\x5B\x32\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x2E\x6F\x70\x73\x2E\x70\x75\x73\x68\x28\x6F\x70\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x5B\x32\x5D\x29\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x2E\x6F\x70\x73\x2E\x70\x6F\x70\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x2E\x74\x72\x79\x73\x2E\x70\x6F\x70\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x74\x69\x6E\x75\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6F\x70\x20\x3D\x20\x62\x6F\x64\x79\x2E\x63\x61\x6C\x6C\x28\x74\x68\x69\x73\x41\x72\x67\x2C\x20\x5F\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x20\x63\x61\x74\x63\x68\x20\x28\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6F\x70\x20\x3D\x20\x5B\x36\x2C\x20\x65\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x79\x20\x3D\x20\x30\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x20\x66\x69\x6E\x61\x6C\x6C\x79\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x66\x20\x3D\x20\x74\x20\x3D\x20\x30\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x6F\x70\x5B\x30\x5D\x20\x26\x20\x35\x29\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x72\x6F\x77\x20\x6F\x70\x5B\x31\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x7B\x20\x76\x61\x6C\x75\x65\x3A\x20\x6F\x70\x5B\x30\x5D\x20\x3F\x20\x6F\x70\x5B\x31\x5D\x20\x3A\x20\x76\x6F\x69\x64\x20\x30\x2C\x20\x64\x6F\x6E\x65\x3A\x20\x74\x72\x75\x65\x20\x7D\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x7D\x3B\x0A\x20\x20\x76\x61\x72\x20\x43\x4C\x41\x53\x53\x5F\x45\x44\x49\x54\x4F\x52\x5F\x41\x43\x54\x49\x4F\x4E\x20\x3D\x20\x22\x65\x64\x69\x74\x6F\x72\x5F\x61\x63\x74\x69\x6F\x6E\x22\x3B\x0A\x20\x20\x76\x61\x72\x20\x49\x44\x5F\x42\x54\x4E\x5F\x43\x4C\x45\x41\x52\x5F\x53\x45\x4C\x45\x43\x54\x49\x4F\x4E\x20\x3D\x20\x22\x63\x6F\x6D\x5F\x62\x74\x6E\x5F\x63\x6C\x65\x61\x72\x5F\x73\x65\x6C\x65\x63\x74\x69\x6F\x6E\x22\x3B\x0A\x20\x20\x76\x61\x72\x20\x49\x44\x5F\x42\x54\x4E\x5F\x45\x58\x45\x43\x5F\x4C\x4F\x43\x41\x4C\x20\x3D\x20\x22\x63\x6F\x6D\x5F\x62\x74\x6E\x5F\x6C\x6F\x63\x61\x6C\x22\x3B\x0A\x20\x20\x76\x61\x72\x20\x49\x44\x5F\x42\x54\x4E\x5F\x45\x58\x45\x43\x5F\x52\x45\x4D\x4F\x54\x45\x20\x3D\x20\x22\x63\x6F\x6D\x5F\x62\x74\x6E\x5F\x72\x65\x6D\x6F\x74\x65\x22\x3B\x0A\x20\x20\x76\x61\x72\x20\x49\x44\x5F\x42\x54\x4E\x5F\x4E\x45\x57\x5F\x44\x49\x52\x20\x3D\x20\x22\x63\x6F\x6D\x5F\x62\x74\x6E\x5F\x6E\x65\x77\x5F\x64\x69\x72\x22\x3B\x0A\x20\x20\x76\x61\x72\x20\x49\x44\x5F\x42\x54\x4E\x5F\x4E\x45\x57\x5F\x46\x49\x4C\x45\x20\x3D\x20\x22\x63\x6F\x6D\x5F\x62\x74\x6E\x5F\x6E\x65\x77\x5F\x66\x69\x6C\x65\x22\x3B\x0A\x20\x20\x76\x61\x72\x20\x49\x44\x5F\x42\x54\x4E\x5F\x52\x45\x4D\x4F\x56\x45\x20\x3D\x20\x22\x63\x6F\x6D\x5F\x62\x74\x6E\x5F\x72\x65\x6D\x6F\x76\x65\x22\x3B\x0A\x20\x20\x76\x61\x72\x20\x49\x44\x5F\x42\x54\x4E\x5F\x53\x41\x56\x45\x20\x3D\x20\x22\x63\x6F\x6D\x5F\x62\x74\x6E\x5F\x73\x61\x76\x65\x22\x3B\x0A\x20\x20\x76\x61\x72\x20\x49\x44\x5F\x45\x44\x49\x54\x4F\x52\x20\x3D\x20\x22\x63\x6F\x6D\x5F\x65\x64\x69\x74\x6F\x72\x22\x3B\x0A\x20\x20\x76\x61\x72\x20\x49\x44\x5F\x49\x4E\x50\x5F\x56\x46\x53\x5F\x4E\x45\x57\x20\x3D\x20\x22\x63\x6F\x6D\x5F\x69\x6E\x70\x5F\x76\x66\x73\x5F\x6E\x65\x77\x22\x3B\x0A\x20\x20\x76\x61\x72\x20\x49\x44\x5F\x56\x46\x53\x20\x3D\x20\x22\x63\x6F\x6D\x5F\x76\x66\x73\x22\x3B\x0A\x20\x20\x76\x61\x72\x20\x49\x44\x5F\x56\x46\x53\x5F\x50\x41\x54\x48\x20\x3D\x20\x22\x76\x66\x73\x5F\x70\x61\x74\x68\x22\x3B\x0A\x20\x20\x76\x61\x72\x20\x49\x44\x5F\x53\x54\x44\x4F\x55\x54\x20\x3D\x20\x22\x73\x74\x64\x6F\x75\x74\x22\x3B\x0A\x20\x20\x76\x61\x72\x20\x49\x44\x5F\x53\x54\x44\x45\x52\x52\x20\x3D\x20\x22\x73\x74\x64\x65\x72\x72\x22\x3B\x0A\x20\x20\x76\x61\x72\x20\x4D\x41\x58\x5F\x46\x49\x4C\x45\x5F\x53\x49\x5A\x45\x20\x3D\x20\x33\x65\x36\x3B\x0A\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x72\x65\x6E\x64\x65\x72\x48\x74\x6D\x6C\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x76\x61\x72\x20\x65\x6C\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x63\x72\x65\x61\x74\x65\x45\x6C\x65\x6D\x65\x6E\x74\x28\x22\x64\x69\x76\x22\x29\x3B\x0A\x20\x20\x20\x20\x65\x6C\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x22\x61\x77\x77\x61\x6E\x22\x29\x3B\x0A\x20\x20\x20\x20\x65\x6C\x2E\x69\x6E\x6E\x65\x72\x48\x54\x4D\x4C\x20\x3D\x20\x27\x5C\x6E\x09\x09\x09\x3C\x64\x69\x76\x20\x63\x6C\x61\x73\x73\x3D\x22\x61\x77\x77\x61\x6E\x5F\x6E\x61\x76\x5F\x6C\x65\x66\x74\x22\x3E\x5C\x6E\x09\x09\x09\x09\x3C\x64\x69\x76\x20\x69\x64\x3D\x22\x27\x20\x2B\x20\x49\x44\x5F\x56\x46\x53\x20\x2B\x20\x27\x22\x3E\x3C\x2F\x64\x69\x76\x3E\x5C\x6E\x5C\x6E\x09\x09\x09\x09\x3C\x62\x72\x2F\x3E\x5C\x6E\x09\x09\x09\x09\x3C\x64\x69\x76\x20\x63\x6C\x61\x73\x73\x3D\x22\x27\x20\x2B\x20\x49\x44\x5F\x49\x4E\x50\x5F\x56\x46\x53\x5F\x4E\x45\x57\x20\x2B\x20\x27\x22\x3E\x5C\x6E\x09\x09\x09\x09\x09\x3C\x69\x6E\x70\x75\x74\x20\x69\x64\x3D\x22\x27\x20\x2B\x20\x49\x44\x5F\x49\x4E\x50\x5F\x56\x46\x53\x5F\x4E\x45\x57\x20\x2B\x20\x27\x22\x20\x2F\x3E\x5C\x6E\x09\x09\x09\x09\x3C\x2F\x64\x69\x76\x3E\x5C\x6E\x09\x09\x09\x09\x3C\x62\x75\x74\x74\x6F\x6E\x20\x69\x64\x3D\x22\x27\x20\x2B\x20\x49\x44\x5F\x42\x54\x4E\x5F\x4E\x45\x57\x5F\x44\x49\x52\x20\x2B\x20\x27\x22\x3E\x4E\x65\x77\x20\x64\x69\x72\x65\x63\x74\x6F\x72\x79\x3C\x2F\x62\x75\x74\x74\x6F\x6E\x3E\x5C\x6E\x09\x09\x09\x09\x3C\x62\x75\x74\x74\x6F\x6E\x20\x69\x64\x3D\x22\x27\x20\x2B\x20\x49\x44\x5F\x42\x54\x4E\x5F\x4E\x45\x57\x5F\x46\x49\x4C\x45\x20\x2B\x20\x27\x22\x3E\x4E\x65\x77\x20\x66\x69\x6C\x65\x3C\x2F\x62\x75\x74\x74\x6F\x6E\x3E\x5C\x6E\x09\x09\x09\x09\x3C\x62\x75\x74\x74\x6F\x6E\x20\x69\x64\x3D\x22\x27\x20\x2B\x20\x49\x44\x5F\x42\x54\x4E\x5F\x52\x45\x4D\x4F\x56\x45\x20\x2B\x20\x27\x22\x3E\x52\x65\x6D\x6F\x76\x65\x3C\x2F\x62\x75\x74\x74\x6F\x6E\x3E\x5C\x6E\x09\x09\x09\x3C\x2F\x64\x69\x76\x3E\x5C\x6E\x09\x09\x09\x3C\x64\x69\x76\x20\x63\x6C\x61\x73\x73\x3D\x22\x61\x77\x77\x61\x6E\x5F\x63\x6F\x6E\x74\x65\x6E\x74\x22\x3E\x5C\x6E\x09\x09\x09\x09\x3C\x64\x69\x76\x20\x63\x6C\x61\x73\x73\x3D\x22\x65\x64\x69\x74\x6F\x72\x5F\x66\x69\x6C\x65\x22\x3E\x5C\x6E\x09\x09\x09\x09\x09\x46\x69\x6C\x65\x3A\x20\x3C\x73\x70\x61\x6E\x20\x69\x64\x3D\x22\x27\x20\x2B\x20\x49\x44\x5F\x56\x46\x53\x5F\x50\x41\x54\x48\x20\x2B\x20\x27\x22\x3E\x2D\x3C\x2F\x73\x70\x61\x6E\x3E\x5C\x6E\x09\x09\x09\x09\x09\x3C\x62\x75\x74\x74\x6F\x6E\x20\x69\x64\x3D\x22\x27\x20\x2B\x20\x49\x44\x5F\x42\x54\x4E\x5F\x53\x41\x56\x45\x20\x2B\x20\x27\x22\x20\x64\x69\x73\x61\x62\x6C\x65\x64\x3D\x22\x74\x72\x75\x65\x22\x3E\x53\x61\x76\x65\x3C\x2F\x62\x75\x74\x74\x6F\x6E\x3E\x5C\x6E\x09\x09\x09\x09\x3C\x2F\x64\x69\x76\x3E\x5C\x6E\x09\x09\x09\x09\x3C\x64\x69\x76\x20\x69\x64\x3D\x22\x27\x20\x2B\x20\x49\x44\x5F\x45\x44\x49\x54\x4F\x52\x20\x2B\x20\x27\x22\x3E\x3C\x2F\x64\x69\x76\x3E\x5C\x6E\x09\x09\x09\x09\x3C\x64\x69\x76\x3E\x5C\x6E\x09\x09\x09\x09\x09\x3C\x64\x69\x76\x20\x63\x6C\x61\x73\x73\x3D\x22\x27\x20\x2B\x20\x43\x4C\x41\x53\x53\x5F\x45\x44\x49\x54\x4F\x52\x5F\x41\x43\x54\x49\x4F\x4E\x20\x2B\x20\x27\x22\x3E\x5C\x6E\x09\x09\x09\x09\x09\x09\x3C\x62\x75\x74\x74\x6F\x6E\x20\x69\x64\x3D\x22\x27\x20\x2B\x20\x49\x44\x5F\x42\x54\x4E\x5F\x43\x4C\x45\x41\x52\x5F\x53\x45\x4C\x45\x43\x54\x49\x4F\x4E\x20\x2B\x20\x27\x22\x3E\x43\x6C\x65\x61\x72\x20\x73\x65\x6C\x65\x63\x74\x69\x6F\x6E\x3C\x2F\x62\x75\x74\x74\x6F\x6E\x3E\x5C\x6E\x09\x09\x09\x09\x09\x3C\x2F\x64\x69\x76\x3E\x5C\x6E\x09\x09\x09\x09\x09\x3C\x64\x69\x76\x20\x63\x6C\x61\x73\x73\x3D\x22\x27\x20\x2B\x20\x43\x4C\x41\x53\x53\x5F\x45\x44\x49\x54\x4F\x52\x5F\x41\x43\x54\x49\x4F\x4E\x20\x2B\x20\x27\x22\x3E\x5C\x6E\x09\x09\x09\x09\x09\x09\x45\x78\x65\x63\x75\x74\x65\x20\x73\x63\x72\x69\x70\x74\x20\x6F\x6E\x5C\x6E\x09\x09\x09\x09\x09\x09\x3C\x62\x75\x74\x74\x6F\x6E\x20\x69\x64\x3D\x22\x27\x20\x2B\x20\x49\x44\x5F\x42\x54\x4E\x5F\x45\x58\x45\x43\x5F\x4C\x4F\x43\x41\x4C\x20\x2B\x20\x27\x22\x20\x64\x69\x73\x61\x62\x6C\x65\x64\x3D\x22\x74\x72\x75\x65\x22\x3E\x4C\x6F\x63\x61\x6C\x3C\x2F\x62\x75\x74\x74\x6F\x6E\x3E\x5C\x6E\x09\x09\x09\x09\x09\x09\x6F\x72\x5C\x6E\x09\x09\x09\x09\x09\x09\x3C\x62\x75\x74\x74\x6F\x6E\x20\x69\x64\x3D\x22\x27\x20\x2B\x20\x49\x44\x5F\x42\x54\x4E\x5F\x45\x58\x45\x43\x5F\x52\x45\x4D\x4F\x54\x45\x20\x2B\x20\x27\x22\x20\x64\x69\x73\x61\x62\x6C\x65\x64\x3D\x22\x74\x72\x75\x65\x22\x3E\x52\x65\x6D\x6F\x74\x65\x3C\x2F\x62\x75\x74\x74\x6F\x6E\x3E\x5C\x6E\x09\x09\x09\x09\x09\x3C\x2F\x64\x69\x76\x3E\x5C\x6E\x09\x09\x09\x09\x3C\x2F\x64\x69\x76\x3E\x5C\x6E\x09\x09\x09\x09\x3C\x70\x3E\x48\x69\x6E\x74\x73\x3A\x3C\x2F\x70\x3E\x5C\x6E\x09\x09\x09\x09\x3C\x75\x6C\x3E\x5C\x6E\x09\x09\x09\x09\x09\x3C\x6C\x69\x3E\x5C\x6E\x09\x09\x09\x09\x09\x09\x43\x6C\x69\x63\x6B\x20\x61\x6E\x64\x20\x64\x72\x61\x67\x20\x6F\x6E\x20\x74\x68\x65\x20\x6C\x69\x6E\x65\x20\x6E\x75\x6D\x62\x65\x72\x73\x20\x74\x6F\x20\x73\x65\x6C\x65\x63\x74\x20\x74\x68\x65\x20\x73\x70\x65\x63\x69\x66\x69\x63\x20\x6C\x69\x6E\x65\x20\x74\x6F\x20\x62\x65\x5C\x6E\x09\x09\x09\x09\x09\x09\x65\x78\x65\x63\x75\x74\x65\x64\x2E\x5C\x6E\x09\x09\x09\x09\x09\x3C\x2F\x6C\x69\x3E\x5C\x6E\x09\x09\x09\x09\x09\x3C\x6C\x69\x3E\x50\x72\x65\x73\x73\x20\x45\x53\x43\x20\x74\x6F\x20\x63\x6C\x65\x61\x72\x20\x73\x65\x6C\x65\x63\x74\x69\x6F\x6E\x2E\x3C\x2F\x6C\x69\x3E\x5C\x6E\x09\x09\x09\x09\x3C\x2F\x75\x6C\x3E\x5C\x6E\x09\x09\x09\x09\x3C\x64\x69\x76\x20\x63\x6C\x61\x73\x73\x3D\x22\x62\x6F\x78\x68\x65\x61\x64\x65\x72\x22\x3E\x53\x74\x61\x6E\x64\x61\x72\x64\x20\x6F\x75\x74\x70\x75\x74\x3A\x3C\x2F\x64\x69\x76\x3E\x5C\x6E\x09\x09\x09\x09\x3C\x64\x69\x76\x20\x69\x64\x3D\x22\x27\x20\x2B\x20\x49\x44\x5F\x53\x54\x44\x4F\x55\x54\x20\x2B\x20\x27\x22\x3E\x3C\x2F\x64\x69\x76\x3E\x5C\x6E\x09\x09\x09\x09\x3C\x64\x69\x76\x20\x63\x6C\x61\x73\x73\x3D\x22\x62\x6F\x78\x68\x65\x61\x64\x65\x72\x22\x3E\x53\x74\x61\x6E\x64\x61\x72\x64\x20\x65\x72\x72\x6F\x72\x3A\x3C\x2F\x64\x69\x76\x3E\x5C\x6E\x09\x09\x09\x09\x3C\x64\x69\x76\x20\x69\x64\x3D\x22\x27\x20\x2B\x20\x49\x44\x5F\x53\x54\x44\x45\x52\x52\x20\x2B\x20\x27\x22\x3E\x3C\x2F\x64\x69\x76\x3E\x5C\x6E\x09\x09\x09\x3C\x2F\x64\x69\x76\x3E\x5C\x6E\x09\x09\x27\x3B\x0A\x20\x20\x20\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x62\x6F\x64\x79\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x65\x6C\x29\x3B\x0A\x20\x20\x7D\x0A\x20\x20\x76\x61\x72\x20\x41\x77\x77\x61\x6E\x20\x3D\x20\x28\x0A\x20\x20\x20\x20\x2F\x2A\x2A\x20\x40\x63\x6C\x61\x73\x73\x20\x2A\x2F\x0A\x20\x20\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x41\x77\x77\x61\x6E\x32\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x5F\x74\x68\x69\x73\x20\x3D\x20\x74\x68\x69\x73\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x75\x72\x72\x65\x6E\x74\x5F\x6E\x6F\x64\x65\x20\x3D\x20\x6E\x75\x6C\x6C\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x65\x71\x75\x65\x73\x74\x20\x3D\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6D\x6F\x64\x65\x3A\x20\x22\x6C\x6F\x63\x61\x6C\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x73\x63\x72\x69\x70\x74\x3A\x20\x22\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x74\x65\x6E\x74\x3A\x20\x22\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x65\x67\x69\x6E\x5F\x61\x74\x3A\x20\x30\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6E\x64\x5F\x61\x74\x3A\x20\x30\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x65\x6C\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x67\x65\x74\x45\x6C\x65\x6D\x65\x6E\x74\x42\x79\x49\x64\x28\x49\x44\x5F\x42\x54\x4E\x5F\x43\x4C\x45\x41\x52\x5F\x53\x45\x4C\x45\x43\x54\x49\x4F\x4E\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x65\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x62\x74\x6E\x5F\x63\x6C\x65\x61\x72\x20\x3D\x20\x65\x6C\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x62\x74\x6E\x5F\x63\x6C\x65\x61\x72\x2E\x6F\x6E\x63\x6C\x69\x63\x6B\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x74\x68\x69\x73\x2E\x77\x75\x69\x5F\x65\x64\x69\x74\x6F\x72\x2E\x43\x6C\x65\x61\x72\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x67\x65\x74\x45\x6C\x65\x6D\x65\x6E\x74\x42\x79\x49\x64\x28\x49\x44\x5F\x42\x54\x4E\x5F\x45\x58\x45\x43\x5F\x4C\x4F\x43\x41\x4C\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x65\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x62\x74\x6E\x5F\x6C\x6F\x63\x61\x6C\x20\x3D\x20\x65\x6C\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x62\x74\x6E\x5F\x6C\x6F\x63\x61\x6C\x2E\x6F\x6E\x63\x6C\x69\x63\x6B\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x74\x68\x69\x73\x2E\x65\x78\x65\x63\x4C\x6F\x63\x61\x6C\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x67\x65\x74\x45\x6C\x65\x6D\x65\x6E\x74\x42\x79\x49\x64\x28\x49\x44\x5F\x42\x54\x4E\x5F\x45\x58\x45\x43\x5F\x52\x45\x4D\x4F\x54\x45\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x65\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x62\x74\x6E\x5F\x72\x65\x6D\x6F\x74\x65\x20\x3D\x20\x65\x6C\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x62\x74\x6E\x5F\x72\x65\x6D\x6F\x74\x65\x2E\x6F\x6E\x63\x6C\x69\x63\x6B\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x74\x68\x69\x73\x2E\x65\x78\x65\x63\x52\x65\x6D\x6F\x74\x65\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x67\x65\x74\x45\x6C\x65\x6D\x65\x6E\x74\x42\x79\x49\x64\x28\x49\x44\x5F\x42\x54\x4E\x5F\x4E\x45\x57\x5F\x44\x49\x52\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x65\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x62\x74\x6E\x5F\x6E\x65\x77\x5F\x64\x69\x72\x20\x3D\x20\x65\x6C\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x62\x74\x6E\x5F\x6E\x65\x77\x5F\x64\x69\x72\x2E\x6F\x6E\x63\x6C\x69\x63\x6B\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x74\x68\x69\x73\x2E\x6E\x65\x77\x4E\x6F\x64\x65\x28\x74\x72\x75\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x67\x65\x74\x45\x6C\x65\x6D\x65\x6E\x74\x42\x79\x49\x64\x28\x49\x44\x5F\x42\x54\x4E\x5F\x4E\x45\x57\x5F\x46\x49\x4C\x45\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x65\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x62\x74\x6E\x5F\x6E\x65\x77\x5F\x66\x69\x6C\x65\x20\x3D\x20\x65\x6C\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x62\x74\x6E\x5F\x6E\x65\x77\x5F\x66\x69\x6C\x65\x2E\x6F\x6E\x63\x6C\x69\x63\x6B\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x74\x68\x69\x73\x2E\x6E\x65\x77\x4E\x6F\x64\x65\x28\x66\x61\x6C\x73\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x67\x65\x74\x45\x6C\x65\x6D\x65\x6E\x74\x42\x79\x49\x64\x28\x49\x44\x5F\x42\x54\x4E\x5F\x52\x45\x4D\x4F\x56\x45\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x65\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x62\x74\x6E\x5F\x72\x65\x6D\x6F\x76\x65\x20\x3D\x20\x65\x6C\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x62\x74\x6E\x5F\x72\x65\x6D\x6F\x76\x65\x2E\x6F\x6E\x63\x6C\x69\x63\x6B\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x74\x68\x69\x73\x2E\x6F\x6E\x43\x6C\x69\x63\x6B\x52\x65\x6D\x6F\x76\x65\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x67\x65\x74\x45\x6C\x65\x6D\x65\x6E\x74\x42\x79\x49\x64\x28\x49\x44\x5F\x42\x54\x4E\x5F\x53\x41\x56\x45\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x65\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x62\x74\x6E\x5F\x73\x61\x76\x65\x20\x3D\x20\x65\x6C\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x62\x74\x6E\x5F\x73\x61\x76\x65\x2E\x6F\x6E\x63\x6C\x69\x63\x6B\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x74\x68\x69\x73\x2E\x6F\x6E\x43\x6C\x69\x63\x6B\x53\x61\x76\x65\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x67\x65\x74\x45\x6C\x65\x6D\x65\x6E\x74\x42\x79\x49\x64\x28\x49\x44\x5F\x49\x4E\x50\x5F\x56\x46\x53\x5F\x4E\x45\x57\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x65\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x69\x6E\x70\x5F\x76\x66\x73\x5F\x6E\x65\x77\x20\x3D\x20\x65\x6C\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x67\x65\x74\x45\x6C\x65\x6D\x65\x6E\x74\x42\x79\x49\x64\x28\x49\x44\x5F\x56\x46\x53\x5F\x50\x41\x54\x48\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x65\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x66\x69\x6C\x65\x5F\x70\x61\x74\x68\x20\x3D\x20\x65\x6C\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x67\x65\x74\x45\x6C\x65\x6D\x65\x6E\x74\x42\x79\x49\x64\x28\x49\x44\x5F\x53\x54\x44\x4F\x55\x54\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x65\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x73\x74\x64\x6F\x75\x74\x20\x3D\x20\x65\x6C\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x67\x65\x74\x45\x6C\x65\x6D\x65\x6E\x74\x42\x79\x49\x64\x28\x49\x44\x5F\x53\x54\x44\x45\x52\x52\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x65\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x73\x74\x64\x65\x72\x72\x20\x3D\x20\x65\x6C\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x65\x64\x69\x74\x6F\x72\x5F\x6F\x70\x74\x73\x20\x3D\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x64\x3A\x20\x49\x44\x5F\x45\x44\x49\x54\x4F\x52\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x73\x5F\x65\x64\x69\x74\x61\x62\x6C\x65\x3A\x20\x74\x72\x75\x65\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x4F\x6E\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x3A\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x62\x65\x67\x69\x6E\x5F\x61\x74\x2C\x20\x65\x6E\x64\x5F\x61\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x74\x68\x69\x73\x2E\x65\x64\x69\x74\x6F\x72\x4F\x6E\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x28\x62\x65\x67\x69\x6E\x5F\x61\x74\x2C\x20\x65\x6E\x64\x5F\x61\x74\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x4F\x6E\x53\x61\x76\x65\x3A\x20\x74\x68\x69\x73\x2E\x65\x64\x69\x74\x6F\x72\x4F\x6E\x53\x61\x76\x65\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x77\x75\x69\x5F\x65\x64\x69\x74\x6F\x72\x20\x3D\x20\x6E\x65\x77\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x28\x65\x64\x69\x74\x6F\x72\x5F\x6F\x70\x74\x73\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x77\x75\x69\x5F\x6E\x6F\x74\x69\x66\x20\x3D\x20\x6E\x65\x77\x20\x57\x75\x69\x4E\x6F\x74\x69\x66\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x77\x75\x69\x5F\x76\x66\x73\x5F\x6F\x70\x74\x73\x20\x3D\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x64\x3A\x20\x49\x44\x5F\x56\x46\x53\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x4F\x70\x65\x6E\x3A\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x70\x61\x74\x68\x2C\x20\x69\x73\x5F\x64\x69\x72\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5F\x74\x68\x69\x73\x2E\x4F\x70\x65\x6E\x28\x70\x61\x74\x68\x2C\x20\x69\x73\x5F\x64\x69\x72\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x4F\x70\x65\x6E\x4E\x6F\x64\x65\x3A\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x6E\x6F\x64\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5F\x74\x68\x69\x73\x2E\x4F\x70\x65\x6E\x4E\x6F\x64\x65\x28\x6E\x6F\x64\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x77\x75\x69\x5F\x76\x66\x73\x20\x3D\x20\x6E\x65\x77\x20\x57\x75\x69\x56\x66\x73\x28\x77\x75\x69\x5F\x76\x66\x73\x5F\x6F\x70\x74\x73\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x77\x69\x6E\x64\x6F\x77\x2E\x6F\x6E\x68\x61\x73\x68\x63\x68\x61\x6E\x67\x65\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x65\x76\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x76\x2E\x70\x72\x65\x76\x65\x6E\x74\x44\x65\x66\x61\x75\x6C\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x68\x61\x73\x68\x63\x68\x61\x6E\x67\x65\x20\x3D\x20\x65\x76\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x75\x72\x6C\x20\x3D\x20\x6E\x65\x77\x20\x55\x52\x4C\x28\x68\x61\x73\x68\x63\x68\x61\x6E\x67\x65\x2E\x6E\x65\x77\x55\x52\x4C\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x74\x68\x69\x73\x2E\x6F\x6E\x48\x61\x73\x68\x43\x68\x61\x6E\x67\x65\x28\x75\x72\x6C\x2E\x68\x61\x73\x68\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6F\x6E\x48\x61\x73\x68\x43\x68\x61\x6E\x67\x65\x28\x77\x69\x6E\x64\x6F\x77\x2E\x6C\x6F\x63\x61\x74\x69\x6F\x6E\x2E\x68\x61\x73\x68\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x41\x77\x77\x61\x6E\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x6F\x6E\x48\x61\x73\x68\x43\x68\x61\x6E\x67\x65\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x68\x61\x73\x68\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x68\x61\x73\x68\x20\x3D\x3D\x3D\x20\x22\x22\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x68\x61\x73\x68\x20\x3D\x20\x22\x23\x2F\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x68\x61\x73\x68\x20\x3D\x20\x68\x61\x73\x68\x2E\x73\x75\x62\x73\x74\x72\x69\x6E\x67\x28\x31\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x77\x75\x69\x5F\x76\x66\x73\x2E\x4F\x70\x65\x6E\x44\x69\x72\x28\x68\x61\x73\x68\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x41\x77\x77\x61\x6E\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x4F\x70\x65\x6E\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x70\x61\x74\x68\x2C\x20\x69\x73\x5F\x64\x69\x72\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5F\x5F\x61\x77\x61\x69\x74\x65\x72\x32\x28\x74\x68\x69\x73\x2C\x20\x76\x6F\x69\x64\x20\x30\x2C\x20\x76\x6F\x69\x64\x20\x30\x2C\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x68\x74\x74\x70\x5F\x72\x65\x73\x2C\x20\x72\x65\x73\x2C\x20\x6E\x6F\x64\x65\x2C\x20\x72\x65\x73\x41\x6C\x6C\x6F\x77\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5F\x5F\x67\x65\x6E\x65\x72\x61\x74\x6F\x72\x32\x28\x74\x68\x69\x73\x2C\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x5F\x61\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x73\x77\x69\x74\x63\x68\x20\x28\x5F\x61\x2E\x6C\x61\x62\x65\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x30\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5B\x34\x2C\x20\x66\x65\x74\x63\x68\x28\x22\x2F\x61\x77\x77\x61\x6E\x2F\x61\x70\x69\x2F\x66\x73\x3F\x70\x61\x74\x68\x3D\x22\x20\x2B\x20\x70\x61\x74\x68\x29\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x31\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x68\x74\x74\x70\x5F\x72\x65\x73\x20\x3D\x20\x5F\x61\x2E\x73\x65\x6E\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5B\x34\x2C\x20\x68\x74\x74\x70\x5F\x72\x65\x73\x2E\x6A\x73\x6F\x6E\x28\x29\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x32\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x73\x20\x3D\x20\x5F\x61\x2E\x73\x65\x6E\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x72\x65\x73\x2E\x63\x6F\x64\x65\x20\x21\x3D\x20\x32\x30\x30\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x77\x75\x69\x5F\x6E\x6F\x74\x69\x66\x2E\x45\x72\x72\x6F\x72\x28\x22\x46\x61\x69\x6C\x65\x64\x20\x74\x6F\x20\x6F\x70\x65\x6E\x20\x22\x20\x2B\x20\x70\x61\x74\x68\x20\x2B\x20\x22\x3A\x20\x22\x20\x2B\x20\x72\x65\x73\x2E\x6D\x65\x73\x73\x61\x67\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5B\x32\x2C\x20\x72\x65\x73\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6E\x6F\x64\x65\x20\x3D\x20\x72\x65\x73\x2E\x64\x61\x74\x61\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x69\x6E\x70\x5F\x76\x66\x73\x5F\x6E\x65\x77\x2E\x76\x61\x6C\x75\x65\x20\x3D\x20\x6E\x6F\x64\x65\x2E\x6E\x61\x6D\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x69\x73\x5F\x64\x69\x72\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x75\x72\x72\x65\x6E\x74\x5F\x6E\x6F\x64\x65\x20\x3D\x20\x6E\x6F\x64\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x77\x69\x6E\x64\x6F\x77\x2E\x6C\x6F\x63\x61\x74\x69\x6F\x6E\x2E\x68\x61\x73\x68\x20\x3D\x20\x22\x23\x22\x20\x2B\x20\x70\x61\x74\x68\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5B\x32\x2C\x20\x72\x65\x73\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x73\x41\x6C\x6C\x6F\x77\x20\x3D\x20\x74\x68\x69\x73\x2E\x69\x73\x45\x64\x69\x74\x41\x6C\x6C\x6F\x77\x65\x64\x28\x6E\x6F\x64\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x72\x65\x73\x41\x6C\x6C\x6F\x77\x2E\x63\x6F\x64\x65\x20\x21\x3D\x20\x32\x30\x30\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x77\x75\x69\x5F\x6E\x6F\x74\x69\x66\x2E\x45\x72\x72\x6F\x72\x28\x72\x65\x73\x41\x6C\x6C\x6F\x77\x2E\x6D\x65\x73\x73\x61\x67\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5B\x32\x2C\x20\x72\x65\x73\x41\x6C\x6C\x6F\x77\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x66\x69\x6C\x65\x5F\x70\x61\x74\x68\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x70\x61\x74\x68\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x65\x71\x75\x65\x73\x74\x2E\x73\x63\x72\x69\x70\x74\x20\x3D\x20\x70\x61\x74\x68\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x77\x75\x69\x5F\x65\x64\x69\x74\x6F\x72\x2E\x4F\x70\x65\x6E\x28\x6E\x6F\x64\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x62\x74\x6E\x5F\x6C\x6F\x63\x61\x6C\x2E\x64\x69\x73\x61\x62\x6C\x65\x64\x20\x3D\x20\x66\x61\x6C\x73\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x62\x74\x6E\x5F\x72\x65\x6D\x6F\x74\x65\x2E\x64\x69\x73\x61\x62\x6C\x65\x64\x20\x3D\x20\x66\x61\x6C\x73\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x62\x74\x6E\x5F\x73\x61\x76\x65\x2E\x64\x69\x73\x61\x62\x6C\x65\x64\x20\x3D\x20\x66\x61\x6C\x73\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5B\x32\x2C\x20\x72\x65\x73\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x41\x77\x77\x61\x6E\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x4F\x70\x65\x6E\x4E\x6F\x64\x65\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x6E\x6F\x64\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5F\x5F\x61\x77\x61\x69\x74\x65\x72\x32\x28\x74\x68\x69\x73\x2C\x20\x76\x6F\x69\x64\x20\x30\x2C\x20\x76\x6F\x69\x64\x20\x30\x2C\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x72\x65\x73\x41\x6C\x6C\x6F\x77\x2C\x20\x72\x65\x73\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5F\x5F\x67\x65\x6E\x65\x72\x61\x74\x6F\x72\x32\x28\x74\x68\x69\x73\x2C\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x5F\x61\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x73\x77\x69\x74\x63\x68\x20\x28\x5F\x61\x2E\x6C\x61\x62\x65\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x30\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x73\x41\x6C\x6C\x6F\x77\x20\x3D\x20\x74\x68\x69\x73\x2E\x69\x73\x45\x64\x69\x74\x41\x6C\x6C\x6F\x77\x65\x64\x28\x6E\x6F\x64\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x72\x65\x73\x41\x6C\x6C\x6F\x77\x2E\x63\x6F\x64\x65\x20\x21\x3D\x20\x32\x30\x30\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x77\x75\x69\x5F\x6E\x6F\x74\x69\x66\x2E\x45\x72\x72\x6F\x72\x28\x72\x65\x73\x41\x6C\x6C\x6F\x77\x2E\x6D\x65\x73\x73\x61\x67\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5B\x32\x2C\x20\x72\x65\x73\x41\x6C\x6C\x6F\x77\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5B\x34\x2C\x20\x74\x68\x69\x73\x2E\x4F\x70\x65\x6E\x28\x6E\x6F\x64\x65\x2E\x70\x61\x74\x68\x2C\x20\x6E\x6F\x64\x65\x2E\x69\x73\x5F\x64\x69\x72\x29\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x31\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x73\x20\x3D\x20\x5F\x61\x2E\x73\x65\x6E\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5B\x32\x2C\x20\x72\x65\x73\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x41\x77\x77\x61\x6E\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x69\x73\x45\x64\x69\x74\x41\x6C\x6C\x6F\x77\x65\x64\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x6E\x6F\x64\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x72\x65\x73\x20\x3D\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x64\x65\x3A\x20\x34\x31\x32\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6D\x65\x73\x73\x61\x67\x65\x3A\x20\x22\x22\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x69\x73\x5F\x74\x79\x70\x65\x5F\x61\x6C\x6C\x6F\x77\x65\x64\x20\x3D\x20\x66\x61\x6C\x73\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x6E\x6F\x64\x65\x2E\x63\x6F\x6E\x74\x65\x6E\x74\x5F\x74\x79\x70\x65\x20\x26\x26\x20\x28\x6E\x6F\x64\x65\x2E\x63\x6F\x6E\x74\x65\x6E\x74\x5F\x74\x79\x70\x65\x2E\x69\x6E\x64\x65\x78\x4F\x66\x28\x22\x6A\x73\x6F\x6E\x22\x29\x20\x3E\x3D\x20\x30\x20\x7C\x7C\x20\x6E\x6F\x64\x65\x2E\x63\x6F\x6E\x74\x65\x6E\x74\x5F\x74\x79\x70\x65\x2E\x69\x6E\x64\x65\x78\x4F\x66\x28\x22\x6D\x65\x73\x73\x61\x67\x65\x22\x29\x20\x3E\x3D\x20\x30\x20\x7C\x7C\x20\x6E\x6F\x64\x65\x2E\x63\x6F\x6E\x74\x65\x6E\x74\x5F\x74\x79\x70\x65\x2E\x69\x6E\x64\x65\x78\x4F\x66\x28\x22\x73\x63\x72\x69\x70\x74\x22\x29\x20\x3E\x3D\x20\x30\x20\x7C\x7C\x20\x6E\x6F\x64\x65\x2E\x63\x6F\x6E\x74\x65\x6E\x74\x5F\x74\x79\x70\x65\x2E\x69\x6E\x64\x65\x78\x4F\x66\x28\x22\x74\x65\x78\x74\x22\x29\x20\x3E\x3D\x20\x30\x20\x7C\x7C\x20\x6E\x6F\x64\x65\x2E\x63\x6F\x6E\x74\x65\x6E\x74\x5F\x74\x79\x70\x65\x2E\x69\x6E\x64\x65\x78\x4F\x66\x28\x22\x78\x6D\x6C\x22\x29\x20\x3E\x3D\x20\x30\x29\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x73\x5F\x74\x79\x70\x65\x5F\x61\x6C\x6C\x6F\x77\x65\x64\x20\x3D\x20\x74\x72\x75\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x21\x69\x73\x5F\x74\x79\x70\x65\x5F\x61\x6C\x6C\x6F\x77\x65\x64\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x73\x2E\x6D\x65\x73\x73\x61\x67\x65\x20\x3D\x20\x27\x54\x68\x65\x20\x66\x69\x6C\x65\x20\x22\x27\x20\x2B\x20\x6E\x6F\x64\x65\x2E\x6E\x61\x6D\x65\x20\x2B\x20\x27\x22\x20\x77\x69\x74\x68\x20\x63\x6F\x6E\x74\x65\x6E\x74\x20\x74\x79\x70\x65\x20\x22\x27\x20\x2B\x20\x6E\x6F\x64\x65\x2E\x63\x6F\x6E\x74\x65\x6E\x74\x5F\x74\x79\x70\x65\x20\x2B\x20\x27\x22\x20\x69\x73\x20\x6E\x6F\x74\x20\x61\x6C\x6C\x6F\x77\x65\x64\x20\x74\x6F\x20\x62\x65\x20\x6F\x70\x65\x6E\x65\x64\x27\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x72\x65\x73\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x6E\x6F\x64\x65\x2E\x73\x69\x7A\x65\x20\x26\x26\x20\x6E\x6F\x64\x65\x2E\x73\x69\x7A\x65\x20\x3E\x20\x4D\x41\x58\x5F\x46\x49\x4C\x45\x5F\x53\x49\x5A\x45\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x73\x2E\x6D\x65\x73\x73\x61\x67\x65\x20\x3D\x20\x27\x54\x68\x65\x20\x66\x69\x6C\x65\x20\x22\x27\x20\x2B\x20\x6E\x6F\x64\x65\x2E\x6E\x61\x6D\x65\x20\x2B\x20\x27\x22\x20\x77\x69\x74\x68\x20\x73\x69\x7A\x65\x20\x27\x20\x2B\x20\x6E\x6F\x64\x65\x2E\x73\x69\x7A\x65\x20\x2F\x20\x31\x65\x36\x20\x2B\x20\x22\x4D\x42\x20\x69\x73\x20\x67\x72\x65\x61\x74\x65\x72\x20\x74\x68\x61\x6E\x20\x6D\x61\x78\x69\x6D\x75\x6D\x20\x22\x20\x2B\x20\x4D\x41\x58\x5F\x46\x49\x4C\x45\x5F\x53\x49\x5A\x45\x20\x2F\x20\x31\x65\x36\x20\x2B\x20\x22\x4D\x42\x2E\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x72\x65\x73\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x73\x2E\x63\x6F\x64\x65\x20\x3D\x20\x32\x30\x30\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x72\x65\x73\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x41\x77\x77\x61\x6E\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x6F\x6E\x43\x6C\x69\x63\x6B\x53\x61\x76\x65\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x72\x65\x71\x75\x65\x73\x74\x2E\x73\x63\x72\x69\x70\x74\x20\x3D\x3D\x20\x22\x22\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x63\x6F\x6E\x74\x65\x6E\x74\x20\x3D\x20\x74\x68\x69\x73\x2E\x77\x75\x69\x5F\x65\x64\x69\x74\x6F\x72\x2E\x47\x65\x74\x43\x6F\x6E\x74\x65\x6E\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x6C\x20\x3D\x20\x63\x6F\x6E\x74\x65\x6E\x74\x2E\x6C\x65\x6E\x67\x74\x68\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x6C\x20\x3E\x20\x30\x20\x26\x26\x20\x63\x6F\x6E\x74\x65\x6E\x74\x5B\x6C\x20\x2D\x20\x31\x5D\x20\x21\x3D\x20\x22\x5C\x6E\x22\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x74\x65\x6E\x74\x20\x2B\x3D\x20\x22\x5C\x6E\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x65\x71\x75\x65\x73\x74\x2E\x63\x6F\x6E\x74\x65\x6E\x74\x20\x3D\x20\x63\x6F\x6E\x74\x65\x6E\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x64\x6F\x53\x61\x76\x65\x46\x69\x6C\x65\x28\x74\x68\x69\x73\x2E\x72\x65\x71\x75\x65\x73\x74\x2E\x73\x63\x72\x69\x70\x74\x2C\x20\x74\x68\x69\x73\x2E\x72\x65\x71\x75\x65\x73\x74\x2E\x63\x6F\x6E\x74\x65\x6E\x74\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x41\x77\x77\x61\x6E\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x65\x64\x69\x74\x6F\x72\x4F\x6E\x53\x61\x76\x65\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x63\x6F\x6E\x74\x65\x6E\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x64\x6F\x53\x61\x76\x65\x46\x69\x6C\x65\x28\x74\x68\x69\x73\x2E\x72\x65\x71\x75\x65\x73\x74\x2E\x73\x63\x72\x69\x70\x74\x2C\x20\x63\x6F\x6E\x74\x65\x6E\x74\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x41\x77\x77\x61\x6E\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x64\x6F\x53\x61\x76\x65\x46\x69\x6C\x65\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x70\x61\x74\x68\x2C\x20\x63\x6F\x6E\x74\x65\x6E\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5F\x5F\x61\x77\x61\x69\x74\x65\x72\x32\x28\x74\x68\x69\x73\x2C\x20\x76\x6F\x69\x64\x20\x30\x2C\x20\x76\x6F\x69\x64\x20\x30\x2C\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x72\x65\x71\x2C\x20\x68\x74\x74\x70\x5F\x72\x65\x73\x2C\x20\x72\x65\x73\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5F\x5F\x67\x65\x6E\x65\x72\x61\x74\x6F\x72\x32\x28\x74\x68\x69\x73\x2C\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x5F\x61\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x73\x77\x69\x74\x63\x68\x20\x28\x5F\x61\x2E\x6C\x61\x62\x65\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x30\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x71\x20\x3D\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x70\x61\x74\x68\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x74\x65\x6E\x74\x3A\x20\x62\x74\x6F\x61\x28\x63\x6F\x6E\x74\x65\x6E\x74\x29\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5B\x34\x2C\x20\x66\x65\x74\x63\x68\x28\x22\x2F\x61\x77\x77\x61\x6E\x2F\x61\x70\x69\x2F\x66\x73\x22\x2C\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6D\x65\x74\x68\x6F\x64\x3A\x20\x22\x50\x55\x54\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x68\x65\x61\x64\x65\x72\x73\x3A\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x41\x63\x63\x65\x70\x74\x3A\x20\x22\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2F\x6A\x73\x6F\x6E\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x54\x79\x70\x65\x22\x3A\x20\x22\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2F\x6A\x73\x6F\x6E\x22\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x6F\x64\x79\x3A\x20\x4A\x53\x4F\x4E\x2E\x73\x74\x72\x69\x6E\x67\x69\x66\x79\x28\x72\x65\x71\x29\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x29\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x31\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x68\x74\x74\x70\x5F\x72\x65\x73\x20\x3D\x20\x5F\x61\x2E\x73\x65\x6E\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5B\x34\x2C\x20\x68\x74\x74\x70\x5F\x72\x65\x73\x2E\x6A\x73\x6F\x6E\x28\x29\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x32\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x73\x20\x3D\x20\x5F\x61\x2E\x73\x65\x6E\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x72\x65\x73\x2E\x63\x6F\x64\x65\x20\x21\x3D\x20\x32\x30\x30\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x77\x75\x69\x5F\x6E\x6F\x74\x69\x66\x2E\x45\x72\x72\x6F\x72\x28\x22\x46\x61\x69\x6C\x65\x64\x20\x74\x6F\x20\x73\x61\x76\x65\x20\x66\x69\x6C\x65\x20\x22\x20\x2B\x20\x70\x61\x74\x68\x20\x2B\x20\x22\x3A\x20\x22\x20\x2B\x20\x72\x65\x73\x2E\x6D\x65\x73\x73\x61\x67\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5B\x32\x2C\x20\x6E\x75\x6C\x6C\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x77\x75\x69\x5F\x6E\x6F\x74\x69\x66\x2E\x49\x6E\x66\x6F\x28\x22\x46\x69\x6C\x65\x20\x22\x20\x2B\x20\x70\x61\x74\x68\x20\x2B\x20\x22\x20\x68\x61\x73\x20\x62\x65\x65\x6E\x20\x73\x61\x76\x65\x64\x2E\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5B\x32\x2C\x20\x72\x65\x73\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x41\x77\x77\x61\x6E\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x65\x64\x69\x74\x6F\x72\x4F\x6E\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x62\x65\x67\x69\x6E\x2C\x20\x65\x6E\x64\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x73\x74\x6D\x74\x73\x20\x3D\x20\x74\x68\x69\x73\x2E\x77\x75\x69\x5F\x65\x64\x69\x74\x6F\x72\x2E\x6C\x69\x6E\x65\x73\x2E\x73\x6C\x69\x63\x65\x28\x62\x65\x67\x69\x6E\x2C\x20\x65\x6E\x64\x20\x2B\x20\x31\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x66\x6F\x72\x20\x28\x76\x61\x72\x20\x5F\x69\x20\x3D\x20\x30\x2C\x20\x73\x74\x6D\x74\x73\x5F\x31\x20\x3D\x20\x73\x74\x6D\x74\x73\x3B\x20\x5F\x69\x20\x3C\x20\x73\x74\x6D\x74\x73\x5F\x31\x2E\x6C\x65\x6E\x67\x74\x68\x3B\x20\x5F\x69\x2B\x2B\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x73\x74\x6D\x74\x20\x3D\x20\x73\x74\x6D\x74\x73\x5F\x31\x5B\x5F\x69\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x6F\x6C\x65\x2E\x6C\x6F\x67\x28\x22\x73\x74\x6D\x74\x3A\x22\x2C\x20\x73\x74\x6D\x74\x2E\x78\x2C\x20\x73\x74\x6D\x74\x2E\x74\x65\x78\x74\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x41\x77\x77\x61\x6E\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x65\x78\x65\x63\x4C\x6F\x63\x61\x6C\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x72\x65\x71\x75\x65\x73\x74\x2E\x73\x63\x72\x69\x70\x74\x20\x3D\x3D\x20\x22\x22\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x77\x75\x69\x5F\x6E\x6F\x74\x69\x66\x2E\x45\x72\x72\x6F\x72\x28\x22\x45\x78\x65\x63\x75\x74\x65\x20\x6F\x6E\x20\x6C\x6F\x63\x61\x6C\x3A\x20\x6E\x6F\x20\x66\x69\x6C\x65\x20\x73\x65\x6C\x65\x63\x74\x65\x64\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x68\x74\x74\x70\x41\x70\x69\x45\x78\x65\x63\x75\x74\x65\x28\x22\x6C\x6F\x63\x61\x6C\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x41\x77\x77\x61\x6E\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x65\x78\x65\x63\x52\x65\x6D\x6F\x74\x65\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x72\x65\x71\x75\x65\x73\x74\x2E\x73\x63\x72\x69\x70\x74\x20\x3D\x3D\x20\x22\x22\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x77\x75\x69\x5F\x6E\x6F\x74\x69\x66\x2E\x45\x72\x72\x6F\x72\x28\x22\x45\x78\x65\x63\x75\x74\x65\x20\x6F\x6E\x20\x72\x65\x6D\x6F\x74\x65\x3A\x20\x6E\x6F\x20\x66\x69\x6C\x65\x20\x73\x65\x6C\x65\x63\x74\x65\x64\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x68\x74\x74\x70\x41\x70\x69\x45\x78\x65\x63\x75\x74\x65\x28\x22\x72\x65\x6D\x6F\x74\x65\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x41\x77\x77\x61\x6E\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x68\x74\x74\x70\x41\x70\x69\x45\x78\x65\x63\x75\x74\x65\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x6D\x6F\x64\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5F\x5F\x61\x77\x61\x69\x74\x65\x72\x32\x28\x74\x68\x69\x73\x2C\x20\x76\x6F\x69\x64\x20\x30\x2C\x20\x76\x6F\x69\x64\x20\x30\x2C\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x73\x65\x6C\x65\x63\x74\x69\x6F\x6E\x5F\x72\x61\x6E\x67\x65\x2C\x20\x68\x74\x74\x70\x5F\x72\x65\x73\x2C\x20\x72\x65\x73\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5F\x5F\x67\x65\x6E\x65\x72\x61\x74\x6F\x72\x32\x28\x74\x68\x69\x73\x2C\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x5F\x61\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x73\x77\x69\x74\x63\x68\x20\x28\x5F\x61\x2E\x6C\x61\x62\x65\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x30\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x73\x65\x6C\x65\x63\x74\x69\x6F\x6E\x5F\x72\x61\x6E\x67\x65\x20\x3D\x20\x74\x68\x69\x73\x2E\x77\x75\x69\x5F\x65\x64\x69\x74\x6F\x72\x2E\x47\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x52\x61\x6E\x67\x65\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x73\x65\x6C\x65\x63\x74\x69\x6F\x6E\x5F\x72\x61\x6E\x67\x65\x2E\x62\x65\x67\x69\x6E\x5F\x61\x74\x20\x3C\x20\x30\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x65\x71\x75\x65\x73\x74\x2E\x62\x65\x67\x69\x6E\x5F\x61\x74\x20\x3D\x20\x30\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x20\x65\x6C\x73\x65\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x65\x71\x75\x65\x73\x74\x2E\x62\x65\x67\x69\x6E\x5F\x61\x74\x20\x3D\x20\x73\x65\x6C\x65\x63\x74\x69\x6F\x6E\x5F\x72\x61\x6E\x67\x65\x2E\x62\x65\x67\x69\x6E\x5F\x61\x74\x20\x2B\x20\x31\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x73\x65\x6C\x65\x63\x74\x69\x6F\x6E\x5F\x72\x61\x6E\x67\x65\x2E\x65\x6E\x64\x5F\x61\x74\x20\x3C\x20\x30\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x65\x71\x75\x65\x73\x74\x2E\x65\x6E\x64\x5F\x61\x74\x20\x3D\x20\x30\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x20\x65\x6C\x73\x65\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x65\x71\x75\x65\x73\x74\x2E\x65\x6E\x64\x5F\x61\x74\x20\x3D\x20\x73\x65\x6C\x65\x63\x74\x69\x6F\x6E\x5F\x72\x61\x6E\x67\x65\x2E\x65\x6E\x64\x5F\x61\x74\x20\x2B\x20\x31\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x73\x74\x64\x6F\x75\x74\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x22\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x73\x74\x64\x65\x72\x72\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x22\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x65\x71\x75\x65\x73\x74\x2E\x6D\x6F\x64\x65\x20\x3D\x20\x6D\x6F\x64\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x65\x71\x75\x65\x73\x74\x2E\x63\x6F\x6E\x74\x65\x6E\x74\x20\x3D\x20\x62\x74\x6F\x61\x28\x74\x68\x69\x73\x2E\x77\x75\x69\x5F\x65\x64\x69\x74\x6F\x72\x2E\x47\x65\x74\x43\x6F\x6E\x74\x65\x6E\x74\x28\x29\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5B\x34\x2C\x20\x66\x65\x74\x63\x68\x28\x22\x2F\x61\x77\x77\x61\x6E\x2F\x61\x70\x69\x2F\x65\x78\x65\x63\x75\x74\x65\x22\x2C\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6D\x65\x74\x68\x6F\x64\x3A\x20\x22\x50\x4F\x53\x54\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x68\x65\x61\x64\x65\x72\x73\x3A\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x41\x63\x63\x65\x70\x74\x3A\x20\x22\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2F\x6A\x73\x6F\x6E\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x54\x79\x70\x65\x22\x3A\x20\x22\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2F\x6A\x73\x6F\x6E\x22\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x6F\x64\x79\x3A\x20\x4A\x53\x4F\x4E\x2E\x73\x74\x72\x69\x6E\x67\x69\x66\x79\x28\x74\x68\x69\x73\x2E\x72\x65\x71\x75\x65\x73\x74\x29\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x29\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x31\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x68\x74\x74\x70\x5F\x72\x65\x73\x20\x3D\x20\x5F\x61\x2E\x73\x65\x6E\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5B\x34\x2C\x20\x68\x74\x74\x70\x5F\x72\x65\x73\x2E\x6A\x73\x6F\x6E\x28\x29\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x32\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x73\x20\x3D\x20\x5F\x61\x2E\x73\x65\x6E\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x72\x65\x73\x2E\x63\x6F\x64\x65\x20\x21\x3D\x20\x32\x30\x30\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x77\x75\x69\x5F\x6E\x6F\x74\x69\x66\x2E\x45\x72\x72\x6F\x72\x28\x22\x45\x78\x65\x63\x75\x74\x65\x20\x66\x61\x69\x6C\x65\x64\x3A\x20\x22\x20\x2B\x20\x72\x65\x73\x2E\x6D\x65\x73\x73\x61\x67\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x32\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x2F\x2A\x72\x65\x74\x75\x72\x6E\x2A\x2F\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x73\x74\x64\x6F\x75\x74\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x61\x74\x6F\x62\x28\x72\x65\x73\x2E\x64\x61\x74\x61\x2E\x73\x74\x64\x6F\x75\x74\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x72\x65\x73\x2E\x64\x61\x74\x61\x2E\x73\x74\x64\x65\x72\x72\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x73\x74\x64\x65\x72\x72\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x61\x74\x6F\x62\x28\x72\x65\x73\x2E\x64\x61\x74\x61\x2E\x73\x74\x64\x65\x72\x72\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x77\x75\x69\x5F\x6E\x6F\x74\x69\x66\x2E\x49\x6E\x66\x6F\x28\x22\x53\x75\x63\x63\x65\x73\x73\x66\x75\x6C\x6C\x79\x20\x65\x78\x65\x63\x75\x74\x65\x20\x22\x20\x2B\x20\x74\x68\x69\x73\x2E\x72\x65\x71\x75\x65\x73\x74\x2E\x73\x63\x72\x69\x70\x74\x20\x2B\x20\x22\x20\x6F\x6E\x20\x22\x20\x2B\x20\x6D\x6F\x64\x65\x20\x2B\x20\x22\x2E\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x32\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x2F\x2A\x72\x65\x74\x75\x72\x6E\x2A\x2F\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x41\x77\x77\x61\x6E\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x6E\x65\x77\x4E\x6F\x64\x65\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x69\x73\x5F\x64\x69\x72\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5F\x5F\x61\x77\x61\x69\x74\x65\x72\x32\x28\x74\x68\x69\x73\x2C\x20\x76\x6F\x69\x64\x20\x30\x2C\x20\x76\x6F\x69\x64\x20\x30\x2C\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x6E\x61\x6D\x65\x2C\x20\x72\x65\x71\x2C\x20\x68\x74\x74\x70\x5F\x72\x65\x73\x2C\x20\x72\x65\x73\x2C\x20\x6E\x6F\x64\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5F\x5F\x67\x65\x6E\x65\x72\x61\x74\x6F\x72\x32\x28\x74\x68\x69\x73\x2C\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x5F\x61\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x73\x77\x69\x74\x63\x68\x20\x28\x5F\x61\x2E\x6C\x61\x62\x65\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x30\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x21\x74\x68\x69\x73\x2E\x63\x75\x72\x72\x65\x6E\x74\x5F\x6E\x6F\x64\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x77\x75\x69\x5F\x6E\x6F\x74\x69\x66\x2E\x45\x72\x72\x6F\x72\x28\x22\x4E\x6F\x20\x61\x63\x74\x69\x76\x65\x20\x64\x69\x72\x65\x63\x74\x6F\x72\x79\x20\x6C\x6F\x61\x64\x65\x64\x20\x6F\x72\x20\x73\x65\x6C\x65\x63\x74\x65\x64\x2E\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x32\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x2F\x2A\x72\x65\x74\x75\x72\x6E\x2A\x2F\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6E\x61\x6D\x65\x20\x3D\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x69\x6E\x70\x5F\x76\x66\x73\x5F\x6E\x65\x77\x2E\x76\x61\x6C\x75\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x6E\x61\x6D\x65\x20\x3D\x3D\x3D\x20\x22\x22\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x77\x75\x69\x5F\x6E\x6F\x74\x69\x66\x2E\x45\x72\x72\x6F\x72\x28\x22\x45\x6D\x70\x74\x79\x20\x66\x69\x6C\x65\x20\x6E\x61\x6D\x65\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x32\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x2F\x2A\x72\x65\x74\x75\x72\x6E\x2A\x2F\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x71\x20\x3D\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x70\x61\x74\x68\x3A\x20\x74\x68\x69\x73\x2E\x63\x75\x72\x72\x65\x6E\x74\x5F\x6E\x6F\x64\x65\x2E\x70\x61\x74\x68\x20\x2B\x20\x22\x2F\x22\x20\x2B\x20\x6E\x61\x6D\x65\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6E\x61\x6D\x65\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x73\x5F\x64\x69\x72\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x74\x65\x6E\x74\x5F\x74\x79\x70\x65\x3A\x20\x22\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6D\x6F\x64\x5F\x74\x69\x6D\x65\x3A\x20\x30\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x73\x69\x7A\x65\x3A\x20\x30\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6D\x6F\x64\x65\x3A\x20\x22\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x68\x69\x6C\x64\x73\x3A\x20\x5B\x5D\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x74\x65\x6E\x74\x3A\x20\x22\x22\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5B\x34\x2C\x20\x66\x65\x74\x63\x68\x28\x22\x2F\x61\x77\x77\x61\x6E\x2F\x61\x70\x69\x2F\x66\x73\x22\x2C\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6D\x65\x74\x68\x6F\x64\x3A\x20\x22\x50\x4F\x53\x54\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x68\x65\x61\x64\x65\x72\x73\x3A\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x41\x63\x63\x65\x70\x74\x3A\x20\x22\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2F\x6A\x73\x6F\x6E\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x54\x79\x70\x65\x22\x3A\x20\x22\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2F\x6A\x73\x6F\x6E\x22\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x6F\x64\x79\x3A\x20\x4A\x53\x4F\x4E\x2E\x73\x74\x72\x69\x6E\x67\x69\x66\x79\x28\x72\x65\x71\x29\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x29\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x31\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x68\x74\x74\x70\x5F\x72\x65\x73\x20\x3D\x20\x5F\x61\x2E\x73\x65\x6E\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5B\x34\x2C\x20\x68\x74\x74\x70\x5F\x72\x65\x73\x2E\x6A\x73\x6F\x6E\x28\x29\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x32\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x73\x20\x3D\x20\x5F\x61\x2E\x73\x65\x6E\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x72\x65\x73\x2E\x63\x6F\x64\x65\x20\x21\x3D\x20\x32\x30\x30\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x77\x75\x69\x5F\x6E\x6F\x74\x69\x66\x2E\x45\x72\x72\x6F\x72\x28\x22\x6E\x65\x77\x4E\x6F\x64\x65\x3A\x20\x22\x20\x2B\x20\x72\x65\x73\x2E\x6D\x65\x73\x73\x61\x67\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x32\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x2F\x2A\x72\x65\x74\x75\x72\x6E\x2A\x2F\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6E\x6F\x64\x65\x20\x3D\x20\x72\x65\x73\x2E\x64\x61\x74\x61\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x21\x74\x68\x69\x73\x2E\x63\x75\x72\x72\x65\x6E\x74\x5F\x6E\x6F\x64\x65\x2E\x63\x68\x69\x6C\x64\x73\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x75\x72\x72\x65\x6E\x74\x5F\x6E\x6F\x64\x65\x2E\x63\x68\x69\x6C\x64\x73\x20\x3D\x20\x5B\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x75\x72\x72\x65\x6E\x74\x5F\x6E\x6F\x64\x65\x2E\x63\x68\x69\x6C\x64\x73\x2E\x70\x75\x73\x68\x28\x6E\x6F\x64\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x77\x75\x69\x5F\x76\x66\x73\x2E\x53\x65\x74\x28\x74\x68\x69\x73\x2E\x63\x75\x72\x72\x65\x6E\x74\x5F\x6E\x6F\x64\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x32\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x2F\x2A\x72\x65\x74\x75\x72\x6E\x2A\x2F\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x41\x77\x77\x61\x6E\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x6F\x6E\x43\x6C\x69\x63\x6B\x52\x65\x6D\x6F\x76\x65\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5F\x5F\x61\x77\x61\x69\x74\x65\x72\x32\x28\x74\x68\x69\x73\x2C\x20\x76\x6F\x69\x64\x20\x30\x2C\x20\x76\x6F\x69\x64\x20\x30\x2C\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x6E\x61\x6D\x65\x2C\x20\x72\x65\x71\x2C\x20\x68\x74\x74\x70\x5F\x72\x65\x73\x2C\x20\x72\x65\x73\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5F\x5F\x67\x65\x6E\x65\x72\x61\x74\x6F\x72\x32\x28\x74\x68\x69\x73\x2C\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x5F\x61\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x73\x77\x69\x74\x63\x68\x20\x28\x5F\x61\x2E\x6C\x61\x62\x65\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x30\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x6F\x6C\x65\x2E\x6C\x6F\x67\x28\x22\x6F\x6E\x43\x6C\x69\x63\x6B\x52\x65\x6D\x6F\x76\x65\x3A\x20\x22\x2C\x20\x74\x68\x69\x73\x2E\x63\x75\x72\x72\x65\x6E\x74\x5F\x6E\x6F\x64\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x21\x74\x68\x69\x73\x2E\x63\x75\x72\x72\x65\x6E\x74\x5F\x6E\x6F\x64\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x77\x75\x69\x5F\x6E\x6F\x74\x69\x66\x2E\x45\x72\x72\x6F\x72\x28\x22\x4E\x6F\x20\x66\x69\x6C\x65\x20\x73\x65\x6C\x65\x63\x74\x65\x64\x2E\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x32\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x2F\x2A\x72\x65\x74\x75\x72\x6E\x2A\x2F\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6E\x61\x6D\x65\x20\x3D\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x69\x6E\x70\x5F\x76\x66\x73\x5F\x6E\x65\x77\x2E\x76\x61\x6C\x75\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x6E\x61\x6D\x65\x20\x3D\x3D\x3D\x20\x22\x22\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x77\x75\x69\x5F\x6E\x6F\x74\x69\x66\x2E\x45\x72\x72\x6F\x72\x28\x22\x45\x6D\x70\x74\x79\x20\x66\x69\x6C\x65\x20\x6E\x61\x6D\x65\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x32\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x2F\x2A\x72\x65\x74\x75\x72\x6E\x2A\x2F\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x71\x20\x3D\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x70\x61\x74\x68\x3A\x20\x74\x68\x69\x73\x2E\x63\x75\x72\x72\x65\x6E\x74\x5F\x6E\x6F\x64\x65\x2E\x70\x61\x74\x68\x20\x2B\x20\x22\x2F\x22\x20\x2B\x20\x6E\x61\x6D\x65\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x73\x5F\x64\x69\x72\x3A\x20\x66\x61\x6C\x73\x65\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x74\x65\x6E\x74\x3A\x20\x22\x22\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5B\x34\x2C\x20\x66\x65\x74\x63\x68\x28\x22\x2F\x61\x77\x77\x61\x6E\x2F\x61\x70\x69\x2F\x66\x73\x22\x2C\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6D\x65\x74\x68\x6F\x64\x3A\x20\x22\x44\x45\x4C\x45\x54\x45\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x68\x65\x61\x64\x65\x72\x73\x3A\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x41\x63\x63\x65\x70\x74\x3A\x20\x22\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2F\x6A\x73\x6F\x6E\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x54\x79\x70\x65\x22\x3A\x20\x22\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2F\x6A\x73\x6F\x6E\x22\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x6F\x64\x79\x3A\x20\x4A\x53\x4F\x4E\x2E\x73\x74\x72\x69\x6E\x67\x69\x66\x79\x28\x72\x65\x71\x29\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x29\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x31\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x68\x74\x74\x70\x5F\x72\x65\x73\x20\x3D\x20\x5F\x61\x2E\x73\x65\x6E\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5B\x34\x2C\x20\x68\x74\x74\x70\x5F\x72\x65\x73\x2E\x6A\x73\x6F\x6E\x28\x29\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x32\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x73\x20\x3D\x20\x5F\x61\x2E\x73\x65\x6E\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x72\x65\x73\x2E\x63\x6F\x64\x65\x20\x21\x3D\x20\x32\x30\x30\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x77\x75\x69\x5F\x6E\x6F\x74\x69\x66\x2E\x45\x72\x72\x6F\x72\x28\x22\x72\x65\x6D\x6F\x76\x65\x3A\x20\x22\x20\x2B\x20\x72\x65\x73\x2E\x6D\x65\x73\x73\x61\x67\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x32\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x2F\x2A\x72\x65\x74\x75\x72\x6E\x2A\x2F\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x32\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x2F\x2A\x72\x65\x74\x75\x72\x6E\x2A\x2F\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x41\x77\x77\x61\x6E\x32\x3B\x0A\x20\x20\x20\x20\x7D\x28\x29\x0A\x20\x20\x29\x3B\x0A\x0A\x20\x20\x2F\x2F\x20\x5F\x77\x77\x77\x2F\x6D\x61\x69\x6E\x2E\x74\x73\x0A\x20\x20\x72\x65\x6E\x64\x65\x72\x48\x74\x6D\x6C\x28\x29\x3B\x0A\x20\x20\x76\x61\x72\x20\x61\x77\x77\x61\x6E\x20\x3D\x20\x6E\x65\x77\x20\x41\x77\x77\x61\x6E\x28\x29\x3B\x0A\x7D\x29\x28\x29\x3B\x0A"), } node.SetMode(420) - node.SetModTimeUnix(1679828624, 661470944) + node.SetModTimeUnix(1684064945, 804256595) node.SetName("main.js") node.SetSize(49651) return node @@ -14,7 +14,7 @@ import ( "github.com/shuLhan/share/lib/ascii" "github.com/shuLhan/share/lib/ini" - libio "github.com/shuLhan/share/lib/io" + libos "github.com/shuLhan/share/lib/os" "github.com/shuLhan/share/lib/ssh" "github.com/shuLhan/share/lib/ssh/config" "github.com/shuLhan/share/lib/ssh/sftp" @@ -113,7 +113,7 @@ func (ses *Session) Copy(stmt *Statement) (err error) { dest = stmt.args[0] - err = libio.Copy(dest, src) + err = libos.Copy(dest, src) if err != nil { return fmt.Errorf("%s: %w", logp, err) } diff --git a/template.go b/template.go index 04c327e..30d3afe 100644 --- a/template.go +++ b/template.go @@ -9,7 +9,7 @@ import ( "path/filepath" "text/template" - libio "github.com/shuLhan/share/lib/io" + libos "github.com/shuLhan/share/lib/os" ) // parseTemplate read the file input "in" and apply the session variables, @@ -24,7 +24,7 @@ func parseTemplate(ses *Session, in string) (out string, err error) { base string ) - if libio.IsBinary(in) { + if libos.IsBinary(in) { return in, nil } |
