diff options
| author | Shulhan <ms@kilabit.info> | 2024-02-05 03:21:53 +0700 |
|---|---|---|
| committer | Shulhan <ms@kilabit.info> | 2024-02-05 03:23:00 +0700 |
| commit | f2cfe0de0eeec8bc7abf9d754b9e89681743ecff (patch) | |
| tree | 802e8a32102a6786b4461e35b916d05b040558d0 | |
| parent | f02e4647bae78222196dc06406b5024c1b435bd7 (diff) | |
| download | gorankusu-f2cfe0de0eeec8bc7abf9d754b9e89681743ecff.tar.xz | |
all: implement form input file
The FormInput now can be set to FormInputKindFile that will rendered
as "<input type='file' ...>" on the web user interface.
Once submitted, the file name, type, size, and lastModification will
be stored under FormInput Filename, Filetype, Filesize, and Filemodms.
Implements: https://todo.sr.ht/~shulhan/trunks/1
| -rw-r--r-- | _www/functions.js | 27 | ||||
| -rw-r--r-- | _www/functions.ts | 28 | ||||
| -rw-r--r-- | _www/interface.js | 1 | ||||
| -rw-r--r-- | _www/interface.ts | 5 | ||||
| -rw-r--r-- | example/example.go | 49 | ||||
| -rw-r--r-- | form_input.go | 65 | ||||
| -rw-r--r-- | http_server_test.go | 105 | ||||
| -rw-r--r-- | http_target.go | 32 | ||||
| -rw-r--r-- | httpd_dummy_test.go | 95 | ||||
| -rw-r--r-- | key_form_input.go | 36 | ||||
| -rw-r--r-- | memfs_www_embed.go | 68 | ||||
| -rw-r--r-- | run_request.go | 3 | ||||
| -rw-r--r-- | testdata/target_http_run_formkindfile_test.txt | 49 | ||||
| -rw-r--r-- | trunks.go | 5 | ||||
| -rw-r--r-- | trunks_test.go | 87 |
15 files changed, 614 insertions, 41 deletions
diff --git a/_www/functions.js b/_www/functions.js index 220228e..4b677d4 100644 --- a/_www/functions.js +++ b/_www/functions.js @@ -1,8 +1,9 @@ // SPDX-FileCopyrightText: 2021 M. Shulhan <ms@kilabit.info> // SPDX-License-Identifier: GPL-3.0-or-later +import { WuiInputFile } from "./wui/input/file.js"; import { WuiInputNumber } from "./wui/input/number.js"; import { WuiInputString } from "./wui/input/string.js"; -import { CLASS_INPUT, CLASS_INPUT_LABEL, FormInputKindNumber, } from "./interface.js"; +import { CLASS_INPUT, CLASS_INPUT_LABEL, FormInputKindFile, FormInputKindNumber, } from "./interface.js"; export function getDocumentHeight() { const D = document; return Math.max(Math.max(D.body.scrollHeight, D.documentElement.scrollHeight), Math.max(D.body.offsetHeight, D.documentElement.offsetHeight), Math.max(D.body.clientHeight, D.documentElement.clientHeight)); @@ -12,7 +13,31 @@ export function generateFormInput(parent, fi) { let wuiInputStringOpts; let wuiInputNumber; let wuiInputString; + let wuiInputFile; + let reader; switch (fi.kind) { + case FormInputKindFile: + wuiInputFile = new WuiInputFile(); + wuiInputFile.label = fi.label; + wuiInputFile.hint = fi.hint; + wuiInputFile.classInput = CLASS_INPUT; + wuiInputFile.classLabel = CLASS_INPUT_LABEL; + wuiInputFile.onChange = (file) => { + fi.filename = file.name; + fi.filetype = file.type; + fi.filesize = file.size; + fi.filemodms = file.lastModified; + fi.value = ""; + reader = new FileReader(); + reader.onload = (e) => { + if (e) { + fi.value = btoa(reader.result); + } + }; + reader.readAsText(file); + }; + parent.appendChild(wuiInputFile.element()); + break; case FormInputKindNumber: wuiInputNumberOpts = { label: fi.label, diff --git a/_www/functions.ts b/_www/functions.ts index f927f80..48d916c 100644 --- a/_www/functions.ts +++ b/_www/functions.ts @@ -1,6 +1,7 @@ // SPDX-FileCopyrightText: 2021 M. Shulhan <ms@kilabit.info> // SPDX-License-Identifier: GPL-3.0-or-later +import { WuiInputFile } from "./wui/input/file.js"; import { WuiInputNumber, WuiInputNumberOpts } from "./wui/input/number.js"; import { WuiInputString, WuiInputStringOpts } from "./wui/input/string.js"; @@ -8,6 +9,7 @@ import { CLASS_INPUT, CLASS_INPUT_LABEL, FormInput, + FormInputKindFile, FormInputKindNumber, HTTPTargetInterface, TargetInterface, @@ -28,8 +30,34 @@ export function generateFormInput(parent: HTMLElement, fi: FormInput) { let wuiInputStringOpts: WuiInputStringOpts; let wuiInputNumber: WuiInputNumber; let wuiInputString: WuiInputString; + let wuiInputFile: WuiInputFile; + let reader: FileReader; switch (fi.kind) { + case FormInputKindFile: + wuiInputFile = new WuiInputFile(); + wuiInputFile.label = fi.label; + wuiInputFile.hint = fi.hint; + wuiInputFile.classInput = CLASS_INPUT; + wuiInputFile.classLabel = CLASS_INPUT_LABEL; + wuiInputFile.onChange = (file: File) => { + fi.filename = file.name; + fi.filetype = file.type; + fi.filesize = file.size; + fi.filemodms = file.lastModified; + fi.value = ""; + + reader = new FileReader(); + reader.onload = (e) => { + if (e) { + fi.value = btoa(reader.result as string); + } + }; + reader.readAsText(file); + }; + parent.appendChild(wuiInputFile.element()); + break; + case FormInputKindNumber: wuiInputNumberOpts = { label: fi.label, diff --git a/_www/interface.js b/_www/interface.js index d01baf1..bea7010 100644 --- a/_www/interface.js +++ b/_www/interface.js @@ -6,5 +6,6 @@ export const CLASS_NAV_LINK = "nav_link"; export const CLASS_NAV_TARGET = "nav_target"; export const HASH_ENVIRONMENT = "environment"; export const HASH_LINKS = "links"; +export const FormInputKindFile = "file"; export const FormInputKindNumber = "number"; export const FormInputKindString = "string"; diff --git a/_www/interface.ts b/_www/interface.ts index 2b756b9..dc74fb5 100644 --- a/_www/interface.ts +++ b/_www/interface.ts @@ -9,6 +9,7 @@ export const CLASS_NAV_TARGET = "nav_target"; export const HASH_ENVIRONMENT = "environment"; export const HASH_LINKS = "links"; +export const FormInputKindFile = "file"; export const FormInputKindNumber = "number"; export const FormInputKindString = "string"; @@ -40,6 +41,10 @@ export interface FormInput { hint: string; kind: string; value: string; + filename: string; + filetype: string; + filesize: number; + filemodms: number; max?: number; min?: number; } diff --git a/example/example.go b/example/example.go index 17e24eb..27b5209 100644 --- a/example/example.go +++ b/example/example.go @@ -34,6 +34,7 @@ const ( pathExample = `/example` pathExampleError = `/example/error` pathExampleNamePage = `/example/:name/page` + pathExampleUpload = `/example/upload` ) const ( @@ -168,6 +169,14 @@ func (ex *Example) registerEndpoints() (err error) { Call: ex.pathExamplePost, }) + err = ex.trunks.Httpd.RegisterEndpoint(&libhttp.Endpoint{ + Method: libhttp.RequestMethodPost, + Path: pathExampleUpload, + RequestType: libhttp.RequestTypeMultipartForm, + ResponseType: libhttp.ResponseTypeJSON, + Call: ex.pathExampleUpload, + }) + return err } @@ -322,6 +331,30 @@ func (ex *Example) registerTargetHTTP() (err error) { Value: `123`, }, }, + }, { + Name: `HTTP upload`, + Hint: `Test uploading file`, + Method: libhttp.RequestMethodPost, + Path: pathExampleUpload, + RequestType: libhttp.RequestTypeMultipartForm, + Params: trunks.KeyFormInput{ + `file`: trunks.FormInput{ + Label: `File`, + Hint: `File to be uploaded.`, + Kind: trunks.FormInputKindFile, + FormDataName: func(key string) string { + if key == trunks.FormDataFilename { + return `name` + } + return key + }, + }, + `agree`: trunks.FormInput{ + Label: `Agree`, + Hint: `Additional parameter along file.`, + Kind: trunks.FormInputKindBoolean, + }, + }, }}, } @@ -431,6 +464,22 @@ func (ex *Example) pathExamplePost(epr *libhttp.EndpointRequest) (resb []byte, e return json.Marshal(&res) } +func (ex *Example) pathExampleUpload(epr *libhttp.EndpointRequest) (resb []byte, err error) { + var logp = `pathExampleUpload` + + var res = libhttp.EndpointResponse{} + + res.Code = http.StatusOK + res.Data = epr.HttpRequest.MultipartForm.Value + + resb, err = json.Marshal(res) + if err != nil { + return nil, fmt.Errorf(`%s: %w`, logp, err) + } + + return resb, nil +} + func (ex *Example) runExampleGet(req *trunks.RunRequest) (res *trunks.RunResponse, err error) { if req.Target.HTTPClient == nil { var httpcOpts = &libhttp.ClientOptions{ diff --git a/form_input.go b/form_input.go index 9576c98..41fe311 100644 --- a/form_input.go +++ b/form_input.go @@ -6,30 +6,77 @@ package trunks // FormInputKind define type for form input. type FormInputKind string -// List of valid value for field FormInput.Kind. +// List of valid value for field [FormInput] Kind. const ( // FormInputKindBoolean only used for convertion, for example // ToJSONObject. // In the WUI, it will be rendered as string. FormInputKindBoolean = `boolean` - FormInputKindNumber = `number` - FormInputKindString = `string` + + // FormInputKindFile define the input for uploading file. + // This form will rendered as "<input type='file' ...>" on the web + // user interface. + // Once submitted, the file name, type, size, and lastModification + // will be stored under [FormInput] Filename, Filetype, Filesize, + // and Filemodms. + FormInputKindFile = `file` + + FormInputKindNumber = `number` + FormInputKindString = `string` ) // FormInput provide the information to create an input component. // -// The Label field define the input text, the Hint field provide a -// description about the input, the Kind field describe the type of input -// (number, string, and so on), and the Value field contains default value for -// input. +// The Label field define the input text. +// The Hint field provide a description about the input. +// The Kind field describe the type of input (number, string, and so on). +// The Value field contains default value for input. // // The Max and Min fields is optional, it only affect if the Kind is // FormInputKindNumber. +// +// If the Kind is FormInputKindFile, the Filename, Filetype, Filesize, and +// Filemodms will be filled by request based on the file name, type, size, +// and modification time. type FormInput struct { + // FormDataName define function to map FormInputKindFile name + // into different name. + // For example, instead of, + // + // Content-Disposition: form-data; name="filesize" + // + // One can change the "filesize" to "size" using this function, so + // generated request body would be, + // + // Content-Disposition: form-data; name="size" + FormDataName func(string) string `json:"-"` + Label string `json:"label"` Hint string `json:"hint"` Kind FormInputKind `json:"kind"` Value string `json:"value"` - Max float64 `json:"max,omitempty"` - Min float64 `json:"min,omitempty"` + + // The name of file for FormInputKindFile. + Filename string `json:"filename"` + + Filetype string `json:"filetype"` + + // The file size for FormInputKindFile. + Filesize int64 `json:"filesize"` + + // The file modification in millisecond. + Filemodms int64 `json:"filemodms"` + + Max float64 `json:"max,omitempty"` + Min float64 `json:"min,omitempty"` +} + +func (fi *FormInput) init() { + if fi.FormDataName == nil { + fi.FormDataName = defaultFormDataName + } +} + +func defaultFormDataName(in string) string { + return in } diff --git a/http_server_test.go b/http_server_test.go new file mode 100644 index 0000000..a1e75b5 --- /dev/null +++ b/http_server_test.go @@ -0,0 +1,105 @@ +// SPDX-FileCopyrightText: 2024 M. Shulhan <ms@kilabit.info> +// SPDX-License-Identifier: GPL-3.0-or-later + +package trunks + +import ( + "bytes" + "encoding/json" + "io" + "net/http/httptest" + "testing" + + libhttp "github.com/shuLhan/share/lib/http" + "github.com/shuLhan/share/lib/test" +) + +type httpRequestParams struct { + method string + path string + body []byte +} + +func TestTrunksAPITargetRunHTTP_formInputFile(t *testing.T) { + type testCase struct { + tag string + } + + var ( + tdata *test.Data + err error + ) + tdata, err = test.LoadData(`testdata/target_http_run_formkindfile_test.txt`) + if err != nil { + t.Fatal(err) + } + + var listCase = []testCase{{ + tag: `valid`, + }} + + var ( + c testCase + runResp RunResponse + tag string + exp string + ) + + for _, c = range listCase { + var reqparams = httpRequestParams{ + method: apiTargetRunHTTP.Method.String(), + path: apiTargetRunHTTP.Path, + body: tdata.Input[c.tag+`:http_request_body`], + } + + _, runResp = dummyTrunksServe(t, reqparams) + + tag = c.tag + `:RunResponse.DumpResponse` + exp = string(tdata.Output[tag]) + test.Assert(t, tag, exp, string(runResp.DumpResponse)) + } +} + +func dummyTrunksServe(t *testing.T, reqparams httpRequestParams) (rawResp []byte, runResp RunResponse) { + var body bytes.Buffer + var recorder = httptest.NewRecorder() + + body.Write(reqparams.body) + + var httpreq = httptest.NewRequest( + reqparams.method, + reqparams.path, + &body) + + dummyTrunks.Httpd.ServeHTTP(recorder, httpreq) + + var ( + httpres = recorder.Result() + got []byte + err error + ) + + got, err = io.ReadAll(httpres.Body) + if err != nil { + t.Fatal(err) + } + + body.Reset() + err = json.Indent(&body, got, ``, ` `) + if err != nil { + t.Fatal(err) + } + + rawResp = body.Bytes() + + var epres = libhttp.EndpointResponse{ + Data: &runResp, + } + + err = json.Unmarshal(rawResp, &epres) + if err != nil { + t.Fatal(err) + } + + return rawResp, runResp +} diff --git a/http_target.go b/http_target.go index be5919a..db55201 100644 --- a/http_target.go +++ b/http_target.go @@ -113,6 +113,15 @@ func (ht *HTTPTarget) init() (err error) { } if ht.Params == nil { ht.Params = KeyFormInput{} + } else { + var ( + key string + formInput FormInput + ) + for key, formInput = range ht.Params { + formInput.init() + ht.Params[key] = formInput + } } if len(ht.Path) == 0 { ht.Path = "/" @@ -206,6 +215,29 @@ func (ht *HTTPTarget) paramsToPath() { ht.Path = rute.String() } +// refCopy copy methods and handlers from orig to ht. +func (ht *HTTPTarget) refCopy(orig *HTTPTarget) { + ht.ConvertParams = orig.ConvertParams + ht.RequestDumper = orig.RequestDumper + ht.ResponseDumper = orig.ResponseDumper + + var ( + key string + fin FormInput + orgfin FormInput + ok bool + ) + for key, fin = range ht.Params { + if fin.Kind == FormInputKindFile { + orgfin, ok = orig.Params[key] + if ok { + fin.FormDataName = orgfin.FormDataName + ht.Params[key] = fin + } + } + } +} + func (ht *HTTPTarget) sortResults() { sort.Slice(ht.Results, func(x, y int) bool { return ht.Results[x].Name > ht.Results[y].Name diff --git a/httpd_dummy_test.go b/httpd_dummy_test.go new file mode 100644 index 0000000..2902e3e --- /dev/null +++ b/httpd_dummy_test.go @@ -0,0 +1,95 @@ +// SPDX-FileCopyrightText: 2024 M. Shulhan <ms@kilabit.info> +// SPDX-License-Identifier: GPL-3.0-or-later + +package trunks + +import ( + "encoding/json" + "fmt" + "log" + "net/http" + "time" + + libhttp "github.com/shuLhan/share/lib/http" + libnet "github.com/shuLhan/share/lib/net" +) + +const ( + pathUpload = `/upload` +) + +var dummyEndpointUpload = libhttp.Endpoint{ + Method: libhttp.RequestMethodPost, + Path: pathUpload, + RequestType: libhttp.RequestTypeMultipartForm, + ResponseType: libhttp.ResponseTypeJSON, +} + +// httpdDummy dummy HTTP server as target for testing. +type httpdDummy struct { + *libhttp.Server +} + +// newHttpdDummy create and run dummy HTTP server. +func newHttpdDummy() (dum *httpdDummy, err error) { + var logp = `newHttpdDummy` + + var serverOpts = libhttp.ServerOptions{ + Address: `127.0.0.1:22796`, + } + + dum = &httpdDummy{} + + dum.Server, err = libhttp.NewServer(&serverOpts) + if err != nil { + return nil, fmt.Errorf(`%s: %w`, logp, err) + } + + err = dum.registerEndpoints() + if err != nil { + return nil, fmt.Errorf(`%s: %w`, logp, err) + } + + go func() { + var errStart = dum.Server.Start() + if errStart != nil { + log.Fatalf(`%s: %s`, logp, errStart) + } + }() + + err = libnet.WaitAlive(`tcp`, serverOpts.Address, time.Second) + if err != nil { + return nil, fmt.Errorf(`%s: %w`, logp, err) + } + + return dum, nil +} + +func (dum *httpdDummy) registerEndpoints() (err error) { + var logp = `registerEndpoints` + + dummyEndpointUpload.Call = dum.upload + + err = dum.Server.RegisterEndpoint(&dummyEndpointUpload) + if err != nil { + return fmt.Errorf(`%s %s: %w`, logp, dummyEndpointUpload.Path, err) + } + + return nil +} + +// upload handle HTTP POST with request type "multipart/form-data". +// It will response by echoing back the [HttpRequest.MultipartForm] as JSON. +func (dum *httpdDummy) upload(epr *libhttp.EndpointRequest) (resbody []byte, err error) { + var res = libhttp.EndpointResponse{} + + res.Code = http.StatusOK + res.Data = epr.HttpRequest.MultipartForm.Value + + resbody, err = json.MarshalIndent(res, ``, ` `) + if err != nil { + return nil, err + } + + return resbody, nil +} diff --git a/key_form_input.go b/key_form_input.go index afcbce7..8cceba8 100644 --- a/key_form_input.go +++ b/key_form_input.go @@ -6,11 +6,24 @@ package trunks import ( "net/http" "net/url" + "strconv" "strings" "github.com/shuLhan/share/lib/math/big" ) +// List of additional parameters to be generated and send if the [FormInput] +// Kind is [FormInputKindFile]. +// +// Caller can changes the name by using [FormInput] FormDataName. +const ( + FormDataFilecontent = `filecontent` + FormDataFilemodms = `filemodms` + FormDataFilename = `filename` + FormDataFilesize = `filesize` + FormDataFiletype = `filetype` +) + // KeyFormInput is the simplified type for getting and setting HTTP headers // and request parameters (either in query or in the parameter body). type KeyFormInput map[string]FormInput @@ -64,7 +77,28 @@ func (kfi KeyFormInput) ToMultipartFormData() (data map[string][]byte) { return data } for k, fi := range kfi { - data[k] = []byte(fi.Value) + if fi.Kind == FormInputKindFile { + var name string + + if len(fi.Filename) != 0 { + name = fi.FormDataName(FormDataFilename) + data[name] = []byte(fi.Filename) + } + if len(fi.Filetype) != 0 { + name = fi.FormDataName(FormDataFiletype) + data[name] = []byte(fi.Filetype) + } + name = fi.FormDataName(FormDataFilesize) + data[name] = []byte(strconv.FormatInt(fi.Filesize, 10)) + + name = fi.FormDataName(FormDataFilemodms) + data[name] = []byte(strconv.FormatInt(fi.Filemodms, 10)) + + name = fi.FormDataName(FormDataFilecontent) + data[name] = []byte(fi.Value) + } else { + data[k] = []byte(fi.Value) + } } return data } diff --git a/memfs_www_embed.go b/memfs_www_embed.go index 5394da1..633d70a 100644 --- a/memfs_www_embed.go +++ b/memfs_www_embed.go @@ -16,7 +16,7 @@ func generate__www() *memfs.Node { GenFuncName: "generate__www", } node.SetMode(2147484141) - node.SetModTimeUnix(1699643880, 752156276) + node.SetModTimeUnix(1707078130, 29184269) node.SetName("/") node.SetSize(0) node.AddChild(_memfsWWW_getNode(memfsWWW, "/doc", generate__www_doc)) @@ -124,7 +124,7 @@ func generate__www_environment_js() *memfs.Node { Content: []byte("\x2F\x2F\x20\x53\x50\x44\x58\x2D\x46\x69\x6C\x65\x43\x6F\x70\x79\x72\x69\x67\x68\x74\x54\x65\x78\x74\x3A\x20\x32\x30\x32\x31\x20\x4D\x2E\x20\x53\x68\x75\x6C\x68\x61\x6E\x20\x3C\x6D\x73\x40\x6B\x69\x6C\x61\x62\x69\x74\x2E\x69\x6E\x66\x6F\x3E\x0A\x2F\x2F\x20\x53\x50\x44\x58\x2D\x4C\x69\x63\x65\x6E\x73\x65\x2D\x49\x64\x65\x6E\x74\x69\x66\x69\x65\x72\x3A\x20\x47\x50\x4C\x2D\x33\x2E\x30\x2D\x6F\x72\x2D\x6C\x61\x74\x65\x72\x0A\x69\x6D\x70\x6F\x72\x74\x20\x7B\x20\x57\x75\x69\x49\x6E\x70\x75\x74\x53\x74\x72\x69\x6E\x67\x20\x7D\x20\x66\x72\x6F\x6D\x20\x22\x2E\x2F\x77\x75\x69\x2F\x69\x6E\x70\x75\x74\x2F\x73\x74\x72\x69\x6E\x67\x2E\x6A\x73\x22\x3B\x0A\x69\x6D\x70\x6F\x72\x74\x20\x7B\x20\x57\x75\x69\x49\x6E\x70\x75\x74\x4E\x75\x6D\x62\x65\x72\x20\x7D\x20\x66\x72\x6F\x6D\x20\x22\x2E\x2F\x77\x75\x69\x2F\x69\x6E\x70\x75\x74\x2F\x6E\x75\x6D\x62\x65\x72\x2E\x6A\x73\x22\x3B\x0A\x69\x6D\x70\x6F\x72\x74\x20\x7B\x20\x43\x4C\x41\x53\x53\x5F\x49\x4E\x50\x55\x54\x2C\x20\x43\x4C\x41\x53\x53\x5F\x49\x4E\x50\x55\x54\x5F\x4C\x41\x42\x45\x4C\x2C\x20\x43\x4C\x41\x53\x53\x5F\x4E\x41\x56\x5F\x54\x41\x52\x47\x45\x54\x2C\x20\x48\x41\x53\x48\x5F\x45\x4E\x56\x49\x52\x4F\x4E\x4D\x45\x4E\x54\x2C\x20\x7D\x20\x66\x72\x6F\x6D\x20\x22\x2E\x2F\x69\x6E\x74\x65\x72\x66\x61\x63\x65\x2E\x6A\x73\x22\x3B\x0A\x65\x78\x70\x6F\x72\x74\x20\x63\x6C\x61\x73\x73\x20\x45\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74\x20\x7B\x0A\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x72\x75\x63\x74\x6F\x72\x28\x74\x72\x75\x6E\x6B\x73\x2C\x20\x6F\x70\x74\x73\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x74\x72\x75\x6E\x6B\x73\x20\x3D\x20\x74\x72\x75\x6E\x6B\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\x65\x6C\x4E\x61\x76\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\x68\x33\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x43\x6F\x6E\x74\x65\x6E\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\x64\x69\x76\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x4E\x61\x76\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x43\x4C\x41\x53\x53\x5F\x4E\x41\x56\x5F\x54\x41\x52\x47\x45\x54\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x4E\x61\x76\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x22\x45\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x4E\x61\x76\x2E\x6F\x6E\x63\x6C\x69\x63\x6B\x20\x3D\x20\x28\x29\x20\x3D\x3E\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x72\x75\x6E\x6B\x73\x2E\x73\x65\x74\x43\x6F\x6E\x74\x65\x6E\x74\x28\x48\x41\x53\x48\x5F\x45\x4E\x56\x49\x52\x4F\x4E\x4D\x45\x4E\x54\x2C\x20\x74\x68\x69\x73\x2E\x65\x6C\x43\x6F\x6E\x74\x65\x6E\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\x67\x65\x6E\x65\x72\x61\x74\x65\x43\x6F\x6E\x74\x65\x6E\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x43\x6F\x6E\x74\x65\x6E\x74\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x65\x6C\x54\x69\x74\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\x68\x32\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x54\x69\x74\x6C\x65\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x22\x45\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x6F\x70\x74\x73\x4C\x69\x73\x74\x65\x6E\x41\x64\x64\x72\x65\x73\x73\x20\x3D\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6C\x61\x62\x65\x6C\x3A\x20\x22\x4C\x69\x73\x74\x65\x6E\x20\x61\x64\x64\x72\x65\x73\x73\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x68\x69\x6E\x74\x3A\x20\x22\x54\x68\x65\x20\x61\x64\x64\x72\x65\x73\x73\x20\x61\x6E\x64\x20\x70\x6F\x72\x74\x20\x77\x68\x65\x72\x65\x20\x54\x72\x75\x6E\x6B\x73\x20\x69\x73\x20\x72\x75\x6E\x6E\x69\x6E\x67\x2E\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x6C\x75\x65\x3A\x20\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x4C\x69\x73\x74\x65\x6E\x41\x64\x64\x72\x65\x73\x73\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x73\x5F\x64\x69\x73\x61\x62\x6C\x65\x64\x3A\x20\x74\x72\x75\x65\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6C\x61\x73\x73\x5F\x69\x6E\x70\x75\x74\x3A\x20\x43\x4C\x41\x53\x53\x5F\x49\x4E\x50\x55\x54\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6C\x61\x73\x73\x5F\x6C\x61\x62\x65\x6C\x3A\x20\x43\x4C\x41\x53\x53\x5F\x49\x4E\x50\x55\x54\x5F\x4C\x41\x42\x45\x4C\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x73\x5F\x68\x69\x6E\x74\x5F\x74\x6F\x67\x67\x6C\x65\x64\x3A\x20\x74\x72\x75\x65\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6F\x6E\x43\x68\x61\x6E\x67\x65\x48\x61\x6E\x64\x6C\x65\x72\x3A\x20\x28\x76\x29\x20\x3D\x3E\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\x4C\x69\x73\x74\x65\x6E\x41\x64\x64\x72\x65\x73\x73\x20\x3D\x20\x76\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x2C\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\x63\x6F\x6D\x4C\x69\x73\x74\x65\x6E\x41\x64\x64\x72\x65\x73\x73\x20\x3D\x20\x6E\x65\x77\x20\x57\x75\x69\x49\x6E\x70\x75\x74\x53\x74\x72\x69\x6E\x67\x28\x6F\x70\x74\x73\x4C\x69\x73\x74\x65\x6E\x41\x64\x64\x72\x65\x73\x73\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x6F\x70\x74\x73\x4D\x61\x78\x41\x74\x74\x61\x63\x6B\x44\x75\x72\x20\x3D\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6C\x61\x62\x65\x6C\x3A\x20\x22\x4D\x61\x78\x2E\x20\x61\x74\x74\x61\x63\x6B\x20\x64\x75\x72\x61\x74\x69\x6F\x6E\x20\x28\x73\x65\x63\x6F\x6E\x64\x73\x29\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x68\x69\x6E\x74\x3A\x20\x22\x4D\x61\x78\x69\x6D\x75\x6D\x20\x61\x74\x74\x61\x63\x6B\x20\x64\x75\x72\x61\x74\x69\x6F\x6E\x20\x66\x6F\x72\x20\x61\x6C\x6C\x20\x74\x61\x72\x67\x65\x74\x73\x2C\x20\x69\x6E\x20\x73\x65\x63\x6F\x6E\x64\x73\x2E\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x6C\x75\x65\x3A\x20\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x4D\x61\x78\x41\x74\x74\x61\x63\x6B\x44\x75\x72\x61\x74\x69\x6F\x6E\x20\x2F\x20\x31\x65\x39\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6D\x69\x6E\x3A\x20\x31\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x73\x5F\x64\x69\x73\x61\x62\x6C\x65\x64\x3A\x20\x74\x72\x75\x65\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6C\x61\x73\x73\x5F\x69\x6E\x70\x75\x74\x3A\x20\x43\x4C\x41\x53\x53\x5F\x49\x4E\x50\x55\x54\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6C\x61\x73\x73\x5F\x6C\x61\x62\x65\x6C\x3A\x20\x43\x4C\x41\x53\x53\x5F\x49\x4E\x50\x55\x54\x5F\x4C\x41\x42\x45\x4C\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x73\x5F\x68\x69\x6E\x74\x5F\x74\x6F\x67\x67\x6C\x65\x64\x3A\x20\x74\x72\x75\x65\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6F\x6E\x43\x68\x61\x6E\x67\x65\x48\x61\x6E\x64\x6C\x65\x72\x3A\x20\x28\x76\x29\x20\x3D\x3E\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\x4D\x61\x78\x41\x74\x74\x61\x63\x6B\x44\x75\x72\x61\x74\x69\x6F\x6E\x20\x3D\x20\x76\x20\x2A\x20\x31\x65\x39\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x2C\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\x63\x6F\x6D\x4D\x61\x78\x41\x74\x74\x61\x63\x6B\x44\x75\x72\x20\x3D\x20\x6E\x65\x77\x20\x57\x75\x69\x49\x6E\x70\x75\x74\x4E\x75\x6D\x62\x65\x72\x28\x6F\x70\x74\x73\x4D\x61\x78\x41\x74\x74\x61\x63\x6B\x44\x75\x72\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x6F\x70\x74\x73\x4D\x61\x78\x41\x74\x74\x61\x63\x6B\x52\x61\x74\x65\x20\x3D\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6C\x61\x62\x65\x6C\x3A\x20\x22\x4D\x61\x78\x2E\x20\x61\x74\x74\x61\x63\x6B\x20\x72\x61\x74\x65\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x68\x69\x6E\x74\x3A\x20\x22\x4D\x61\x78\x69\x6D\x75\x6D\x20\x61\x74\x74\x61\x63\x6B\x20\x72\x61\x74\x65\x20\x66\x6F\x72\x20\x61\x6C\x6C\x20\x74\x61\x72\x67\x65\x74\x73\x2E\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x6C\x75\x65\x3A\x20\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x4D\x61\x78\x41\x74\x74\x61\x63\x6B\x52\x61\x74\x65\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6D\x69\x6E\x3A\x20\x31\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x73\x5F\x64\x69\x73\x61\x62\x6C\x65\x64\x3A\x20\x74\x72\x75\x65\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6C\x61\x73\x73\x5F\x69\x6E\x70\x75\x74\x3A\x20\x43\x4C\x41\x53\x53\x5F\x49\x4E\x50\x55\x54\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6C\x61\x73\x73\x5F\x6C\x61\x62\x65\x6C\x3A\x20\x43\x4C\x41\x53\x53\x5F\x49\x4E\x50\x55\x54\x5F\x4C\x41\x42\x45\x4C\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x73\x5F\x68\x69\x6E\x74\x5F\x74\x6F\x67\x67\x6C\x65\x64\x3A\x20\x74\x72\x75\x65\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6F\x6E\x43\x68\x61\x6E\x67\x65\x48\x61\x6E\x64\x6C\x65\x72\x3A\x20\x28\x76\x29\x20\x3D\x3E\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\x4D\x61\x78\x41\x74\x74\x61\x63\x6B\x52\x61\x74\x65\x20\x3D\x20\x76\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x2C\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\x63\x6F\x6D\x4D\x61\x78\x41\x74\x74\x61\x63\x6B\x52\x61\x74\x65\x20\x3D\x20\x6E\x65\x77\x20\x57\x75\x69\x49\x6E\x70\x75\x74\x4E\x75\x6D\x62\x65\x72\x28\x6F\x70\x74\x73\x4D\x61\x78\x41\x74\x74\x61\x63\x6B\x52\x61\x74\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x6F\x70\x74\x73\x52\x65\x73\x75\x6C\x74\x73\x44\x69\x72\x20\x3D\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6C\x61\x62\x65\x6C\x3A\x20\x22\x52\x65\x73\x75\x6C\x74\x73\x20\x64\x69\x72\x65\x63\x74\x6F\x72\x79\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x68\x69\x6E\x74\x3A\x20\x22\x54\x68\x65\x20\x64\x69\x72\x65\x63\x74\x6F\x72\x79\x20\x77\x68\x65\x72\x65\x20\x74\x68\x65\x20\x61\x74\x74\x61\x63\x6B\x20\x72\x65\x73\x75\x6C\x74\x20\x77\x69\x6C\x6C\x20\x62\x65\x20\x73\x61\x76\x65\x64\x2E\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x6C\x75\x65\x3A\x20\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x52\x65\x73\x75\x6C\x74\x73\x44\x69\x72\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x73\x5F\x64\x69\x73\x61\x62\x6C\x65\x64\x3A\x20\x74\x72\x75\x65\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6C\x61\x73\x73\x5F\x69\x6E\x70\x75\x74\x3A\x20\x43\x4C\x41\x53\x53\x5F\x49\x4E\x50\x55\x54\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6C\x61\x73\x73\x5F\x6C\x61\x62\x65\x6C\x3A\x20\x43\x4C\x41\x53\x53\x5F\x49\x4E\x50\x55\x54\x5F\x4C\x41\x42\x45\x4C\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x73\x5F\x68\x69\x6E\x74\x5F\x74\x6F\x67\x67\x6C\x65\x64\x3A\x20\x74\x72\x75\x65\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6F\x6E\x43\x68\x61\x6E\x67\x65\x48\x61\x6E\x64\x6C\x65\x72\x3A\x20\x28\x76\x29\x20\x3D\x3E\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\x52\x65\x73\x75\x6C\x74\x73\x44\x69\x72\x20\x3D\x20\x76\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x2C\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\x63\x6F\x6D\x52\x65\x73\x75\x6C\x74\x73\x44\x69\x72\x20\x3D\x20\x6E\x65\x77\x20\x57\x75\x69\x49\x6E\x70\x75\x74\x53\x74\x72\x69\x6E\x67\x28\x6F\x70\x74\x73\x52\x65\x73\x75\x6C\x74\x73\x44\x69\x72\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x6F\x70\x74\x73\x52\x65\x73\x75\x6C\x74\x73\x53\x75\x66\x66\x69\x78\x20\x3D\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6C\x61\x62\x65\x6C\x3A\x20\x22\x52\x65\x73\x75\x6C\x74\x73\x20\x73\x75\x66\x66\x69\x78\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x68\x69\x6E\x74\x3A\x20\x22\x4F\x70\x74\x69\x6F\x6E\x61\x6C\x20\x73\x75\x66\x66\x69\x78\x20\x66\x6F\x72\x20\x74\x68\x65\x20\x66\x69\x6C\x65\x20\x6E\x61\x6D\x65\x20\x6F\x66\x20\x61\x74\x74\x61\x63\x6B\x20\x72\x65\x73\x75\x6C\x74\x2E\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x6C\x75\x65\x3A\x20\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x52\x65\x73\x75\x6C\x74\x73\x53\x75\x66\x66\x69\x78\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x73\x5F\x64\x69\x73\x61\x62\x6C\x65\x64\x3A\x20\x74\x72\x75\x65\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6C\x61\x73\x73\x5F\x69\x6E\x70\x75\x74\x3A\x20\x43\x4C\x41\x53\x53\x5F\x49\x4E\x50\x55\x54\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6C\x61\x73\x73\x5F\x6C\x61\x62\x65\x6C\x3A\x20\x43\x4C\x41\x53\x53\x5F\x49\x4E\x50\x55\x54\x5F\x4C\x41\x42\x45\x4C\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x73\x5F\x68\x69\x6E\x74\x5F\x74\x6F\x67\x67\x6C\x65\x64\x3A\x20\x74\x72\x75\x65\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6F\x6E\x43\x68\x61\x6E\x67\x65\x48\x61\x6E\x64\x6C\x65\x72\x3A\x20\x28\x76\x29\x20\x3D\x3E\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\x52\x65\x73\x75\x6C\x74\x73\x53\x75\x66\x66\x69\x78\x20\x3D\x20\x76\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x2C\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\x63\x6F\x6D\x52\x65\x73\x75\x6C\x74\x73\x53\x75\x66\x66\x69\x78\x20\x3D\x20\x6E\x65\x77\x20\x57\x75\x69\x49\x6E\x70\x75\x74\x53\x74\x72\x69\x6E\x67\x28\x6F\x70\x74\x73\x52\x65\x73\x75\x6C\x74\x73\x53\x75\x66\x66\x69\x78\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x43\x6F\x6E\x74\x65\x6E\x74\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x65\x6C\x54\x69\x74\x6C\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x43\x6F\x6E\x74\x65\x6E\x74\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x74\x68\x69\x73\x2E\x63\x6F\x6D\x4C\x69\x73\x74\x65\x6E\x41\x64\x64\x72\x65\x73\x73\x2E\x65\x6C\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x43\x6F\x6E\x74\x65\x6E\x74\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x74\x68\x69\x73\x2E\x63\x6F\x6D\x4D\x61\x78\x41\x74\x74\x61\x63\x6B\x44\x75\x72\x2E\x65\x6C\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x43\x6F\x6E\x74\x65\x6E\x74\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x74\x68\x69\x73\x2E\x63\x6F\x6D\x4D\x61\x78\x41\x74\x74\x61\x63\x6B\x52\x61\x74\x65\x2E\x65\x6C\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x43\x6F\x6E\x74\x65\x6E\x74\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x74\x68\x69\x73\x2E\x63\x6F\x6D\x52\x65\x73\x75\x6C\x74\x73\x44\x69\x72\x2E\x65\x6C\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x43\x6F\x6E\x74\x65\x6E\x74\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x74\x68\x69\x73\x2E\x63\x6F\x6D\x52\x65\x73\x75\x6C\x74\x73\x53\x75\x66\x66\x69\x78\x2E\x65\x6C\x29\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x73\x65\x74\x28\x6F\x70\x74\x73\x29\x20\x7B\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\x63\x6F\x6D\x4C\x69\x73\x74\x65\x6E\x41\x64\x64\x72\x65\x73\x73\x2E\x73\x65\x74\x28\x6F\x70\x74\x73\x2E\x4C\x69\x73\x74\x65\x6E\x41\x64\x64\x72\x65\x73\x73\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x4D\x61\x78\x41\x74\x74\x61\x63\x6B\x44\x75\x72\x2E\x73\x65\x74\x28\x6F\x70\x74\x73\x2E\x4D\x61\x78\x41\x74\x74\x61\x63\x6B\x44\x75\x72\x61\x74\x69\x6F\x6E\x20\x2F\x20\x31\x65\x39\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x4D\x61\x78\x41\x74\x74\x61\x63\x6B\x52\x61\x74\x65\x2E\x73\x65\x74\x28\x6F\x70\x74\x73\x2E\x4D\x61\x78\x41\x74\x74\x61\x63\x6B\x52\x61\x74\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x52\x65\x73\x75\x6C\x74\x73\x44\x69\x72\x2E\x73\x65\x74\x28\x6F\x70\x74\x73\x2E\x52\x65\x73\x75\x6C\x74\x73\x44\x69\x72\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x52\x65\x73\x75\x6C\x74\x73\x53\x75\x66\x66\x69\x78\x2E\x73\x65\x74\x28\x6F\x70\x74\x73\x2E\x52\x65\x73\x75\x6C\x74\x73\x53\x75\x66\x66\x69\x78\x29\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x7D\x0A"), } node.SetMode(420) - node.SetModTimeUnix(1707037266, 85128308) + node.SetModTimeUnix(1707078138, 282526240) node.SetName("environment.js") node.SetSize(4231) return node @@ -166,12 +166,12 @@ func generate__www_functions_js() *memfs.Node { Path: "/functions.js", ContentType: "text/javascript; charset=utf-8", GenFuncName: "generate__www_functions_js", - Content: []byte("\x2F\x2F\x20\x53\x50\x44\x58\x2D\x46\x69\x6C\x65\x43\x6F\x70\x79\x72\x69\x67\x68\x74\x54\x65\x78\x74\x3A\x20\x32\x30\x32\x31\x20\x4D\x2E\x20\x53\x68\x75\x6C\x68\x61\x6E\x20\x3C\x6D\x73\x40\x6B\x69\x6C\x61\x62\x69\x74\x2E\x69\x6E\x66\x6F\x3E\x0A\x2F\x2F\x20\x53\x50\x44\x58\x2D\x4C\x69\x63\x65\x6E\x73\x65\x2D\x49\x64\x65\x6E\x74\x69\x66\x69\x65\x72\x3A\x20\x47\x50\x4C\x2D\x33\x2E\x30\x2D\x6F\x72\x2D\x6C\x61\x74\x65\x72\x0A\x69\x6D\x70\x6F\x72\x74\x20\x7B\x20\x57\x75\x69\x49\x6E\x70\x75\x74\x4E\x75\x6D\x62\x65\x72\x20\x7D\x20\x66\x72\x6F\x6D\x20\x22\x2E\x2F\x77\x75\x69\x2F\x69\x6E\x70\x75\x74\x2F\x6E\x75\x6D\x62\x65\x72\x2E\x6A\x73\x22\x3B\x0A\x69\x6D\x70\x6F\x72\x74\x20\x7B\x20\x57\x75\x69\x49\x6E\x70\x75\x74\x53\x74\x72\x69\x6E\x67\x20\x7D\x20\x66\x72\x6F\x6D\x20\x22\x2E\x2F\x77\x75\x69\x2F\x69\x6E\x70\x75\x74\x2F\x73\x74\x72\x69\x6E\x67\x2E\x6A\x73\x22\x3B\x0A\x69\x6D\x70\x6F\x72\x74\x20\x7B\x20\x43\x4C\x41\x53\x53\x5F\x49\x4E\x50\x55\x54\x2C\x20\x43\x4C\x41\x53\x53\x5F\x49\x4E\x50\x55\x54\x5F\x4C\x41\x42\x45\x4C\x2C\x20\x46\x6F\x72\x6D\x49\x6E\x70\x75\x74\x4B\x69\x6E\x64\x4E\x75\x6D\x62\x65\x72\x2C\x20\x7D\x20\x66\x72\x6F\x6D\x20\x22\x2E\x2F\x69\x6E\x74\x65\x72\x66\x61\x63\x65\x2E\x6A\x73\x22\x3B\x0A\x65\x78\x70\x6F\x72\x74\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x67\x65\x74\x44\x6F\x63\x75\x6D\x65\x6E\x74\x48\x65\x69\x67\x68\x74\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x44\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x3B\x0A\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x4D\x61\x74\x68\x2E\x6D\x61\x78\x28\x4D\x61\x74\x68\x2E\x6D\x61\x78\x28\x44\x2E\x62\x6F\x64\x79\x2E\x73\x63\x72\x6F\x6C\x6C\x48\x65\x69\x67\x68\x74\x2C\x20\x44\x2E\x64\x6F\x63\x75\x6D\x65\x6E\x74\x45\x6C\x65\x6D\x65\x6E\x74\x2E\x73\x63\x72\x6F\x6C\x6C\x48\x65\x69\x67\x68\x74\x29\x2C\x20\x4D\x61\x74\x68\x2E\x6D\x61\x78\x28\x44\x2E\x62\x6F\x64\x79\x2E\x6F\x66\x66\x73\x65\x74\x48\x65\x69\x67\x68\x74\x2C\x20\x44\x2E\x64\x6F\x63\x75\x6D\x65\x6E\x74\x45\x6C\x65\x6D\x65\x6E\x74\x2E\x6F\x66\x66\x73\x65\x74\x48\x65\x69\x67\x68\x74\x29\x2C\x20\x4D\x61\x74\x68\x2E\x6D\x61\x78\x28\x44\x2E\x62\x6F\x64\x79\x2E\x63\x6C\x69\x65\x6E\x74\x48\x65\x69\x67\x68\x74\x2C\x20\x44\x2E\x64\x6F\x63\x75\x6D\x65\x6E\x74\x45\x6C\x65\x6D\x65\x6E\x74\x2E\x63\x6C\x69\x65\x6E\x74\x48\x65\x69\x67\x68\x74\x29\x29\x3B\x0A\x7D\x0A\x65\x78\x70\x6F\x72\x74\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x46\x6F\x72\x6D\x49\x6E\x70\x75\x74\x28\x70\x61\x72\x65\x6E\x74\x2C\x20\x66\x69\x29\x20\x7B\x0A\x20\x20\x20\x20\x6C\x65\x74\x20\x77\x75\x69\x49\x6E\x70\x75\x74\x4E\x75\x6D\x62\x65\x72\x4F\x70\x74\x73\x3B\x0A\x20\x20\x20\x20\x6C\x65\x74\x20\x77\x75\x69\x49\x6E\x70\x75\x74\x53\x74\x72\x69\x6E\x67\x4F\x70\x74\x73\x3B\x0A\x20\x20\x20\x20\x6C\x65\x74\x20\x77\x75\x69\x49\x6E\x70\x75\x74\x4E\x75\x6D\x62\x65\x72\x3B\x0A\x20\x20\x20\x20\x6C\x65\x74\x20\x77\x75\x69\x49\x6E\x70\x75\x74\x53\x74\x72\x69\x6E\x67\x3B\x0A\x20\x20\x20\x20\x73\x77\x69\x74\x63\x68\x20\x28\x66\x69\x2E\x6B\x69\x6E\x64\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x46\x6F\x72\x6D\x49\x6E\x70\x75\x74\x4B\x69\x6E\x64\x4E\x75\x6D\x62\x65\x72\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x77\x75\x69\x49\x6E\x70\x75\x74\x4E\x75\x6D\x62\x65\x72\x4F\x70\x74\x73\x20\x3D\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6C\x61\x62\x65\x6C\x3A\x20\x66\x69\x2E\x6C\x61\x62\x65\x6C\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x68\x69\x6E\x74\x3A\x20\x66\x69\x2E\x68\x69\x6E\x74\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x6C\x75\x65\x3A\x20\x2B\x66\x69\x2E\x76\x61\x6C\x75\x65\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6C\x61\x73\x73\x5F\x69\x6E\x70\x75\x74\x3A\x20\x43\x4C\x41\x53\x53\x5F\x49\x4E\x50\x55\x54\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6C\x61\x73\x73\x5F\x6C\x61\x62\x65\x6C\x3A\x20\x43\x4C\x41\x53\x53\x5F\x49\x4E\x50\x55\x54\x5F\x4C\x41\x42\x45\x4C\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x73\x5F\x68\x69\x6E\x74\x5F\x74\x6F\x67\x67\x6C\x65\x64\x3A\x20\x74\x72\x75\x65\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6F\x6E\x43\x68\x61\x6E\x67\x65\x48\x61\x6E\x64\x6C\x65\x72\x3A\x20\x28\x6E\x65\x77\x56\x61\x6C\x75\x65\x29\x20\x3D\x3E\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x66\x69\x2E\x76\x61\x6C\x75\x65\x20\x3D\x20\x22\x22\x20\x2B\x20\x6E\x65\x77\x56\x61\x6C\x75\x65\x3B\x0A\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\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x66\x69\x2E\x6D\x61\x78\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x77\x75\x69\x49\x6E\x70\x75\x74\x4E\x75\x6D\x62\x65\x72\x4F\x70\x74\x73\x2E\x6D\x61\x78\x20\x3D\x20\x66\x69\x2E\x6D\x61\x78\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\x66\x69\x2E\x6D\x69\x6E\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x77\x75\x69\x49\x6E\x70\x75\x74\x4E\x75\x6D\x62\x65\x72\x4F\x70\x74\x73\x2E\x6D\x69\x6E\x20\x3D\x20\x66\x69\x2E\x6D\x69\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\x77\x75\x69\x49\x6E\x70\x75\x74\x4E\x75\x6D\x62\x65\x72\x20\x3D\x20\x6E\x65\x77\x20\x57\x75\x69\x49\x6E\x70\x75\x74\x4E\x75\x6D\x62\x65\x72\x28\x77\x75\x69\x49\x6E\x70\x75\x74\x4E\x75\x6D\x62\x65\x72\x4F\x70\x74\x73\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x70\x61\x72\x65\x6E\x74\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x77\x75\x69\x49\x6E\x70\x75\x74\x4E\x75\x6D\x62\x65\x72\x2E\x65\x6C\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\x64\x65\x66\x61\x75\x6C\x74\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x77\x75\x69\x49\x6E\x70\x75\x74\x53\x74\x72\x69\x6E\x67\x4F\x70\x74\x73\x20\x3D\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6C\x61\x62\x65\x6C\x3A\x20\x66\x69\x2E\x6C\x61\x62\x65\x6C\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x68\x69\x6E\x74\x3A\x20\x66\x69\x2E\x68\x69\x6E\x74\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x6C\x75\x65\x3A\x20\x66\x69\x2E\x76\x61\x6C\x75\x65\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6C\x61\x73\x73\x5F\x69\x6E\x70\x75\x74\x3A\x20\x43\x4C\x41\x53\x53\x5F\x49\x4E\x50\x55\x54\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6C\x61\x73\x73\x5F\x6C\x61\x62\x65\x6C\x3A\x20\x43\x4C\x41\x53\x53\x5F\x49\x4E\x50\x55\x54\x5F\x4C\x41\x42\x45\x4C\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x73\x5F\x68\x69\x6E\x74\x5F\x74\x6F\x67\x67\x6C\x65\x64\x3A\x20\x74\x72\x75\x65\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6F\x6E\x43\x68\x61\x6E\x67\x65\x48\x61\x6E\x64\x6C\x65\x72\x3A\x20\x28\x6E\x65\x77\x56\x61\x6C\x75\x65\x29\x20\x3D\x3E\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x66\x69\x2E\x76\x61\x6C\x75\x65\x20\x3D\x20\x6E\x65\x77\x56\x61\x6C\x75\x65\x3B\x0A\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\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x77\x75\x69\x49\x6E\x70\x75\x74\x53\x74\x72\x69\x6E\x67\x20\x3D\x20\x6E\x65\x77\x20\x57\x75\x69\x49\x6E\x70\x75\x74\x53\x74\x72\x69\x6E\x67\x28\x77\x75\x69\x49\x6E\x70\x75\x74\x53\x74\x72\x69\x6E\x67\x4F\x70\x74\x73\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x70\x61\x72\x65\x6E\x74\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x77\x75\x69\x49\x6E\x70\x75\x74\x53\x74\x72\x69\x6E\x67\x2E\x65\x6C\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\x7D\x0A\x7D\x0A\x65\x78\x70\x6F\x72\x74\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x48\x54\x54\x50\x4D\x65\x74\x68\x6F\x64\x54\x6F\x53\x74\x72\x69\x6E\x67\x28\x6D\x29\x20\x7B\x0A\x20\x20\x20\x20\x73\x77\x69\x74\x63\x68\x20\x28\x6D\x29\x20\x7B\x0A\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\x72\x65\x74\x75\x72\x6E\x20\x22\x47\x45\x54\x22\x3B\x0A\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\x72\x65\x74\x75\x72\x6E\x20\x22\x43\x4F\x4E\x4E\x45\x43\x54\x22\x3B\x0A\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\x72\x65\x74\x75\x72\x6E\x20\x22\x44\x45\x4C\x45\x54\x45\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x33\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x22\x48\x45\x41\x44\x22\x3B\x0A\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\x72\x65\x74\x75\x72\x6E\x20\x22\x4F\x50\x54\x49\x4F\x4E\x53\x22\x3B\x0A\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\x72\x65\x74\x75\x72\x6E\x20\x22\x50\x41\x54\x43\x48\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x36\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x22\x50\x4F\x53\x54\x22\x3B\x0A\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\x72\x65\x74\x75\x72\x6E\x20\x22\x50\x55\x54\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x38\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x22\x54\x52\x41\x43\x45\x22\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x22\x3F\x3F\x3F\x22\x3B\x0A\x7D\x0A\x2F\x2F\x0A\x2F\x2F\x20\x6C\x6F\x61\x64\x48\x54\x54\x50\x54\x61\x72\x67\x65\x74\x48\x65\x61\x64\x65\x72\x20\x67\x65\x74\x20\x48\x54\x54\x50\x54\x61\x72\x67\x65\x74\x20\x68\x65\x61\x64\x65\x72\x20\x66\x72\x6F\x6D\x20\x6C\x6F\x63\x61\x6C\x20\x73\x74\x6F\x72\x61\x67\x65\x20\x62\x79\x20\x6B\x65\x79\x2E\x0A\x2F\x2F\x20\x49\x66\x20\x6E\x6F\x20\x68\x65\x61\x64\x65\x72\x20\x65\x78\x69\x73\x74\x20\x69\x6E\x20\x73\x74\x6F\x72\x61\x67\x65\x20\x72\x65\x74\x75\x72\x6E\x20\x74\x68\x65\x20\x6F\x6E\x65\x20\x66\x72\x6F\x6D\x20\x48\x54\x54\x50\x54\x61\x72\x67\x65\x74\x20\x69\x74\x73\x65\x6C\x66\x2E\x0A\x2F\x2F\x0A\x65\x78\x70\x6F\x72\x74\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x6C\x6F\x61\x64\x48\x54\x54\x50\x54\x61\x72\x67\x65\x74\x48\x65\x61\x64\x65\x72\x28\x74\x61\x72\x67\x65\x74\x2C\x20\x68\x74\x74\x70\x54\x61\x72\x67\x65\x74\x2C\x20\x6B\x65\x79\x29\x20\x7B\x0A\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x73\x74\x6F\x72\x61\x67\x65\x4B\x65\x79\x20\x3D\x20\x60\x24\x7B\x74\x61\x72\x67\x65\x74\x2E\x49\x44\x7D\x2E\x68\x74\x74\x70\x2E\x24\x7B\x68\x74\x74\x70\x54\x61\x72\x67\x65\x74\x2E\x49\x44\x7D\x2E\x68\x65\x61\x64\x65\x72\x2E\x24\x7B\x6B\x65\x79\x7D\x60\x3B\x0A\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x76\x61\x6C\x20\x3D\x20\x77\x69\x6E\x64\x6F\x77\x2E\x6C\x6F\x63\x61\x6C\x53\x74\x6F\x72\x61\x67\x65\x2E\x67\x65\x74\x49\x74\x65\x6D\x28\x73\x74\x6F\x72\x61\x67\x65\x4B\x65\x79\x29\x3B\x0A\x20\x20\x20\x20\x69\x66\x20\x28\x76\x61\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x76\x61\x6C\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x68\x65\x61\x64\x65\x72\x20\x3D\x20\x68\x74\x74\x70\x54\x61\x72\x67\x65\x74\x2E\x48\x65\x61\x64\x65\x72\x73\x5B\x6B\x65\x79\x5D\x3B\x0A\x20\x20\x20\x20\x69\x66\x20\x28\x68\x65\x61\x64\x65\x72\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x68\x65\x61\x64\x65\x72\x2E\x76\x61\x6C\x75\x65\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x22\x22\x3B\x0A\x7D\x0A\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x73\x61\x76\x65\x48\x54\x54\x50\x54\x61\x72\x67\x65\x74\x48\x65\x61\x64\x65\x72\x28\x74\x61\x72\x67\x65\x74\x2C\x20\x68\x74\x74\x70\x54\x61\x72\x67\x65\x74\x2C\x20\x6B\x65\x79\x2C\x20\x76\x61\x6C\x75\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x73\x74\x6F\x72\x61\x67\x65\x4B\x65\x79\x20\x3D\x20\x60\x24\x7B\x74\x61\x72\x67\x65\x74\x2E\x49\x44\x7D\x2E\x68\x74\x74\x70\x2E\x24\x7B\x68\x74\x74\x70\x54\x61\x72\x67\x65\x74\x2E\x49\x44\x7D\x2E\x68\x65\x61\x64\x65\x72\x2E\x24\x7B\x6B\x65\x79\x7D\x60\x3B\x0A\x20\x20\x20\x20\x77\x69\x6E\x64\x6F\x77\x2E\x6C\x6F\x63\x61\x6C\x53\x74\x6F\x72\x61\x67\x65\x2E\x73\x65\x74\x49\x74\x65\x6D\x28\x73\x74\x6F\x72\x61\x67\x65\x4B\x65\x79\x2C\x20\x76\x61\x6C\x75\x65\x29\x3B\x0A\x7D\x0A\x2F\x2F\x0A\x2F\x2F\x20\x6C\x6F\x61\x64\x48\x54\x54\x50\x54\x61\x72\x67\x65\x74\x50\x61\x72\x61\x6D\x20\x67\x65\x74\x20\x48\x54\x54\x50\x54\x61\x72\x67\x65\x74\x20\x70\x61\x72\x61\x6D\x65\x74\x65\x72\x20\x66\x72\x6F\x6D\x20\x6C\x6F\x63\x61\x6C\x20\x73\x74\x6F\x72\x61\x67\x65\x20\x62\x79\x20\x6B\x65\x79\x2E\x0A\x2F\x2F\x20\x49\x66\x20\x6E\x6F\x20\x70\x61\x72\x61\x6D\x65\x74\x65\x72\x20\x65\x78\x69\x73\x74\x20\x69\x6E\x20\x73\x74\x6F\x72\x61\x67\x65\x20\x72\x65\x74\x75\x72\x6E\x20\x74\x68\x65\x20\x6F\x6E\x65\x20\x66\x72\x6F\x6D\x20\x48\x54\x54\x50\x54\x61\x72\x67\x65\x74\x20\x69\x74\x73\x65\x6C\x66\x2E\x0A\x2F\x2F\x0A\x65\x78\x70\x6F\x72\x74\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x6C\x6F\x61\x64\x48\x54\x54\x50\x54\x61\x72\x67\x65\x74\x50\x61\x72\x61\x6D\x28\x74\x61\x72\x67\x65\x74\x2C\x20\x68\x74\x74\x70\x54\x61\x72\x67\x65\x74\x2C\x20\x6B\x65\x79\x29\x20\x7B\x0A\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x73\x74\x6F\x72\x61\x67\x65\x4B\x65\x79\x20\x3D\x20\x60\x24\x7B\x74\x61\x72\x67\x65\x74\x2E\x49\x44\x7D\x2E\x68\x74\x74\x70\x2E\x24\x7B\x68\x74\x74\x70\x54\x61\x72\x67\x65\x74\x2E\x49\x44\x7D\x2E\x70\x61\x72\x61\x6D\x2E\x24\x7B\x6B\x65\x79\x7D\x60\x3B\x0A\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x76\x61\x6C\x20\x3D\x20\x77\x69\x6E\x64\x6F\x77\x2E\x6C\x6F\x63\x61\x6C\x53\x74\x6F\x72\x61\x67\x65\x2E\x67\x65\x74\x49\x74\x65\x6D\x28\x73\x74\x6F\x72\x61\x67\x65\x4B\x65\x79\x29\x3B\x0A\x20\x20\x20\x20\x69\x66\x20\x28\x76\x61\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x76\x61\x6C\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x70\x61\x72\x61\x6D\x20\x3D\x20\x68\x74\x74\x70\x54\x61\x72\x67\x65\x74\x2E\x50\x61\x72\x61\x6D\x73\x5B\x6B\x65\x79\x5D\x3B\x0A\x20\x20\x20\x20\x69\x66\x20\x28\x70\x61\x72\x61\x6D\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x70\x61\x72\x61\x6D\x2E\x76\x61\x6C\x75\x65\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x22\x22\x3B\x0A\x7D\x0A\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x73\x61\x76\x65\x48\x54\x54\x50\x54\x61\x72\x67\x65\x74\x50\x61\x72\x61\x6D\x28\x74\x61\x72\x67\x65\x74\x2C\x20\x68\x74\x74\x70\x54\x61\x72\x67\x65\x74\x2C\x20\x6B\x65\x79\x2C\x20\x76\x61\x6C\x75\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x73\x74\x6F\x72\x61\x67\x65\x4B\x65\x79\x20\x3D\x20\x60\x24\x7B\x74\x61\x72\x67\x65\x74\x2E\x49\x44\x7D\x2E\x68\x74\x74\x70\x2E\x24\x7B\x68\x74\x74\x70\x54\x61\x72\x67\x65\x74\x2E\x49\x44\x7D\x2E\x70\x61\x72\x61\x6D\x2E\x24\x7B\x6B\x65\x79\x7D\x60\x3B\x0A\x20\x20\x20\x20\x77\x69\x6E\x64\x6F\x77\x2E\x6C\x6F\x63\x61\x6C\x53\x74\x6F\x72\x61\x67\x65\x2E\x73\x65\x74\x49\x74\x65\x6D\x28\x73\x74\x6F\x72\x61\x67\x65\x4B\x65\x79\x2C\x20\x76\x61\x6C\x75\x65\x29\x3B\x0A\x7D\x0A\x65\x78\x70\x6F\x72\x74\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x6C\x6F\x61\x64\x54\x61\x72\x67\x65\x74\x4F\x70\x74\x44\x75\x72\x61\x74\x69\x6F\x6E\x28\x74\x61\x72\x67\x65\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x73\x74\x6F\x72\x61\x67\x65\x4B\x65\x79\x20\x3D\x20\x60\x24\x7B\x74\x61\x72\x67\x65\x74\x2E\x49\x44\x7D\x2E\x6F\x70\x74\x2E\x44\x75\x72\x61\x74\x69\x6F\x6E\x60\x3B\x0A\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x76\x61\x6C\x20\x3D\x20\x77\x69\x6E\x64\x6F\x77\x2E\x6C\x6F\x63\x61\x6C\x53\x74\x6F\x72\x61\x67\x65\x2E\x67\x65\x74\x49\x74\x65\x6D\x28\x73\x74\x6F\x72\x61\x67\x65\x4B\x65\x79\x29\x3B\x0A\x20\x20\x20\x20\x69\x66\x20\x28\x76\x61\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x2B\x76\x61\x6C\x20\x2F\x20\x31\x65\x39\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x74\x61\x72\x67\x65\x74\x2E\x4F\x70\x74\x73\x2E\x44\x75\x72\x61\x74\x69\x6F\x6E\x20\x2F\x20\x31\x65\x39\x3B\x0A\x7D\x0A\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x73\x61\x76\x65\x54\x61\x72\x67\x65\x74\x4F\x70\x74\x44\x75\x72\x61\x74\x69\x6F\x6E\x28\x74\x61\x72\x67\x65\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x73\x74\x6F\x72\x61\x67\x65\x4B\x65\x79\x20\x3D\x20\x60\x24\x7B\x74\x61\x72\x67\x65\x74\x2E\x49\x44\x7D\x2E\x6F\x70\x74\x2E\x44\x75\x72\x61\x74\x69\x6F\x6E\x60\x3B\x0A\x20\x20\x20\x20\x77\x69\x6E\x64\x6F\x77\x2E\x6C\x6F\x63\x61\x6C\x53\x74\x6F\x72\x61\x67\x65\x2E\x73\x65\x74\x49\x74\x65\x6D\x28\x73\x74\x6F\x72\x61\x67\x65\x4B\x65\x79\x2C\x20\x22\x22\x20\x2B\x20\x74\x61\x72\x67\x65\x74\x2E\x4F\x70\x74\x73\x2E\x44\x75\x72\x61\x74\x69\x6F\x6E\x29\x3B\x0A\x7D\x0A\x65\x78\x70\x6F\x72\x74\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x6C\x6F\x61\x64\x54\x61\x72\x67\x65\x74\x4F\x70\x74\x52\x61\x74\x65\x50\x65\x72\x53\x65\x63\x6F\x6E\x64\x28\x74\x61\x72\x67\x65\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x73\x74\x6F\x72\x61\x67\x65\x4B\x65\x79\x20\x3D\x20\x60\x24\x7B\x74\x61\x72\x67\x65\x74\x2E\x49\x44\x7D\x2E\x6F\x70\x74\x2E\x52\x61\x74\x65\x50\x65\x72\x53\x65\x63\x6F\x6E\x64\x60\x3B\x0A\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x76\x61\x6C\x20\x3D\x20\x77\x69\x6E\x64\x6F\x77\x2E\x6C\x6F\x63\x61\x6C\x53\x74\x6F\x72\x61\x67\x65\x2E\x67\x65\x74\x49\x74\x65\x6D\x28\x73\x74\x6F\x72\x61\x67\x65\x4B\x65\x79\x29\x3B\x0A\x20\x20\x20\x20\x69\x66\x20\x28\x76\x61\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x2B\x76\x61\x6C\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x74\x61\x72\x67\x65\x74\x2E\x4F\x70\x74\x73\x2E\x52\x61\x74\x65\x50\x65\x72\x53\x65\x63\x6F\x6E\x64\x3B\x0A\x7D\x0A\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x73\x61\x76\x65\x54\x61\x72\x67\x65\x74\x4F\x70\x74\x52\x61\x74\x65\x50\x65\x72\x53\x65\x63\x6F\x6E\x64\x28\x74\x61\x72\x67\x65\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x73\x74\x6F\x72\x61\x67\x65\x4B\x65\x79\x20\x3D\x20\x60\x24\x7B\x74\x61\x72\x67\x65\x74\x2E\x49\x44\x7D\x2E\x6F\x70\x74\x2E\x52\x61\x74\x65\x50\x65\x72\x53\x65\x63\x6F\x6E\x64\x60\x3B\x0A\x20\x20\x20\x20\x77\x69\x6E\x64\x6F\x77\x2E\x6C\x6F\x63\x61\x6C\x53\x74\x6F\x72\x61\x67\x65\x2E\x73\x65\x74\x49\x74\x65\x6D\x28\x73\x74\x6F\x72\x61\x67\x65\x4B\x65\x79\x2C\x20\x22\x22\x20\x2B\x20\x74\x61\x72\x67\x65\x74\x2E\x4F\x70\x74\x73\x2E\x52\x61\x74\x65\x50\x65\x72\x53\x65\x63\x6F\x6E\x64\x29\x3B\x0A\x7D\x0A\x65\x78\x70\x6F\x72\x74\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x6C\x6F\x61\x64\x54\x61\x72\x67\x65\x74\x4F\x70\x74\x54\x69\x6D\x65\x6F\x75\x74\x28\x74\x61\x72\x67\x65\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x73\x74\x6F\x72\x61\x67\x65\x4B\x65\x79\x20\x3D\x20\x60\x24\x7B\x74\x61\x72\x67\x65\x74\x2E\x49\x44\x7D\x2E\x6F\x70\x74\x2E\x54\x69\x6D\x65\x6F\x75\x74\x60\x3B\x0A\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x76\x61\x6C\x20\x3D\x20\x77\x69\x6E\x64\x6F\x77\x2E\x6C\x6F\x63\x61\x6C\x53\x74\x6F\x72\x61\x67\x65\x2E\x67\x65\x74\x49\x74\x65\x6D\x28\x73\x74\x6F\x72\x61\x67\x65\x4B\x65\x79\x29\x3B\x0A\x20\x20\x20\x20\x69\x66\x20\x28\x76\x61\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x2B\x76\x61\x6C\x20\x2F\x20\x31\x65\x39\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x74\x61\x72\x67\x65\x74\x2E\x4F\x70\x74\x73\x2E\x54\x69\x6D\x65\x6F\x75\x74\x20\x2F\x20\x31\x65\x39\x3B\x0A\x7D\x0A\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x73\x61\x76\x65\x54\x61\x72\x67\x65\x74\x4F\x70\x74\x54\x69\x6D\x65\x6F\x75\x74\x28\x74\x61\x72\x67\x65\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x73\x74\x6F\x72\x61\x67\x65\x4B\x65\x79\x20\x3D\x20\x60\x24\x7B\x74\x61\x72\x67\x65\x74\x2E\x49\x44\x7D\x2E\x6F\x70\x74\x2E\x54\x69\x6D\x65\x6F\x75\x74\x60\x3B\x0A\x20\x20\x20\x20\x77\x69\x6E\x64\x6F\x77\x2E\x6C\x6F\x63\x61\x6C\x53\x74\x6F\x72\x61\x67\x65\x2E\x73\x65\x74\x49\x74\x65\x6D\x28\x73\x74\x6F\x72\x61\x67\x65\x4B\x65\x79\x2C\x20\x22\x22\x20\x2B\x20\x74\x61\x72\x67\x65\x74\x2E\x4F\x70\x74\x73\x2E\x54\x69\x6D\x65\x6F\x75\x74\x29\x3B\x0A\x7D\x0A\x2F\x2F\x0A\x2F\x2F\x20\x6C\x6F\x61\x64\x54\x61\x72\x67\x65\x74\x56\x61\x72\x20\x67\x65\x74\x20\x74\x61\x72\x67\x65\x74\x20\x76\x61\x72\x69\x61\x62\x6C\x65\x20\x66\x72\x6F\x6D\x20\x6C\x6F\x63\x61\x6C\x20\x73\x74\x6F\x72\x61\x67\x65\x20\x6F\x72\x20\x72\x65\x74\x75\x72\x6E\x20\x74\x68\x65\x20\x6F\x72\x69\x67\x69\x6E\x61\x6C\x0A\x2F\x2F\x20\x76\x61\x6C\x75\x65\x2E\x0A\x2F\x2F\x0A\x65\x78\x70\x6F\x72\x74\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x6C\x6F\x61\x64\x54\x61\x72\x67\x65\x74\x56\x61\x72\x28\x74\x61\x72\x67\x65\x74\x2C\x20\x6B\x65\x79\x29\x20\x7B\x0A\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x73\x74\x6F\x72\x61\x67\x65\x4B\x65\x79\x20\x3D\x20\x60\x24\x7B\x74\x61\x72\x67\x65\x74\x2E\x49\x44\x7D\x2E\x76\x61\x72\x2E\x24\x7B\x6B\x65\x79\x7D\x60\x3B\x0A\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x76\x61\x6C\x20\x3D\x20\x77\x69\x6E\x64\x6F\x77\x2E\x6C\x6F\x63\x61\x6C\x53\x74\x6F\x72\x61\x67\x65\x2E\x67\x65\x74\x49\x74\x65\x6D\x28\x73\x74\x6F\x72\x61\x67\x65\x4B\x65\x79\x29\x3B\x0A\x20\x20\x20\x20\x69\x66\x20\x28\x76\x61\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x76\x61\x6C\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x74\x76\x61\x72\x20\x3D\x20\x74\x61\x72\x67\x65\x74\x2E\x56\x61\x72\x73\x5B\x6B\x65\x79\x5D\x3B\x0A\x20\x20\x20\x20\x69\x66\x20\x28\x74\x76\x61\x72\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x74\x76\x61\x72\x2E\x76\x61\x6C\x75\x65\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x22\x22\x3B\x0A\x7D\x0A\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x73\x61\x76\x65\x54\x61\x72\x67\x65\x74\x56\x61\x72\x28\x74\x61\x72\x67\x65\x74\x2C\x20\x6B\x65\x79\x2C\x20\x76\x61\x6C\x75\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x73\x74\x6F\x72\x61\x67\x65\x4B\x65\x79\x20\x3D\x20\x60\x24\x7B\x74\x61\x72\x67\x65\x74\x2E\x49\x44\x7D\x2E\x76\x61\x72\x2E\x24\x7B\x6B\x65\x79\x7D\x60\x3B\x0A\x20\x20\x20\x20\x77\x69\x6E\x64\x6F\x77\x2E\x6C\x6F\x63\x61\x6C\x53\x74\x6F\x72\x61\x67\x65\x2E\x73\x65\x74\x49\x74\x65\x6D\x28\x73\x74\x6F\x72\x61\x67\x65\x4B\x65\x79\x2C\x20\x76\x61\x6C\x75\x65\x29\x3B\x0A\x7D\x0A\x2F\x2F\x0A\x2F\x2F\x20\x6C\x6F\x61\x64\x57\x73\x54\x61\x72\x67\x65\x74\x48\x65\x61\x64\x65\x72\x20\x67\x65\x74\x20\x74\x68\x65\x20\x57\x65\x62\x53\x6F\x63\x6B\x65\x74\x54\x61\x72\x67\x65\x74\x20\x66\x72\x6F\x6D\x20\x6C\x6F\x63\x61\x6C\x20\x73\x74\x6F\x72\x61\x67\x65\x20\x62\x79\x20\x6B\x65\x79\x2E\x0A\x2F\x2F\x0A\x65\x78\x70\x6F\x72\x74\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x6C\x6F\x61\x64\x57\x73\x54\x61\x72\x67\x65\x74\x48\x65\x61\x64\x65\x72\x28\x74\x61\x72\x67\x65\x74\x2C\x20\x77\x73\x54\x61\x72\x67\x65\x74\x2C\x20\x6B\x65\x79\x29\x20\x7B\x0A\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x73\x74\x6F\x72\x61\x67\x65\x4B\x65\x79\x20\x3D\x20\x60\x24\x7B\x74\x61\x72\x67\x65\x74\x2E\x49\x44\x7D\x2E\x77\x73\x2E\x24\x7B\x77\x73\x54\x61\x72\x67\x65\x74\x2E\x49\x44\x7D\x2E\x68\x65\x61\x64\x65\x72\x2E\x24\x7B\x6B\x65\x79\x7D\x60\x3B\x0A\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x76\x61\x6C\x20\x3D\x20\x77\x69\x6E\x64\x6F\x77\x2E\x6C\x6F\x63\x61\x6C\x53\x74\x6F\x72\x61\x67\x65\x2E\x67\x65\x74\x49\x74\x65\x6D\x28\x73\x74\x6F\x72\x61\x67\x65\x4B\x65\x79\x29\x3B\x0A\x20\x20\x20\x20\x69\x66\x20\x28\x76\x61\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x76\x61\x6C\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x68\x65\x61\x64\x65\x72\x20\x3D\x20\x77\x73\x54\x61\x72\x67\x65\x74\x2E\x48\x65\x61\x64\x65\x72\x73\x5B\x6B\x65\x79\x5D\x3B\x0A\x20\x20\x20\x20\x69\x66\x20\x28\x68\x65\x61\x64\x65\x72\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x68\x65\x61\x64\x65\x72\x2E\x76\x61\x6C\x75\x65\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x22\x22\x3B\x0A\x7D\x0A\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x73\x61\x76\x65\x57\x73\x54\x61\x72\x67\x65\x74\x48\x65\x61\x64\x65\x72\x28\x74\x61\x72\x67\x65\x74\x2C\x20\x77\x73\x54\x61\x72\x67\x65\x74\x2C\x20\x6B\x65\x79\x2C\x20\x76\x61\x6C\x75\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x73\x74\x6F\x72\x61\x67\x65\x4B\x65\x79\x20\x3D\x20\x60\x24\x7B\x74\x61\x72\x67\x65\x74\x2E\x49\x44\x7D\x2E\x77\x73\x2E\x24\x7B\x77\x73\x54\x61\x72\x67\x65\x74\x2E\x49\x44\x7D\x2E\x68\x65\x61\x64\x65\x72\x2E\x24\x7B\x6B\x65\x79\x7D\x60\x3B\x0A\x20\x20\x20\x20\x77\x69\x6E\x64\x6F\x77\x2E\x6C\x6F\x63\x61\x6C\x53\x74\x6F\x72\x61\x67\x65\x2E\x73\x65\x74\x49\x74\x65\x6D\x28\x73\x74\x6F\x72\x61\x67\x65\x4B\x65\x79\x2C\x20\x76\x61\x6C\x75\x65\x29\x3B\x0A\x7D\x0A\x2F\x2F\x0A\x2F\x2F\x20\x6C\x6F\x61\x64\x57\x73\x54\x61\x72\x67\x65\x74\x50\x61\x72\x61\x6D\x20\x67\x65\x74\x20\x74\x68\x65\x20\x57\x65\x62\x53\x6F\x63\x6B\x65\x74\x54\x61\x72\x67\x65\x74\x20\x70\x61\x72\x61\x6D\x65\x74\x65\x72\x20\x66\x72\x6F\x6D\x20\x6C\x6F\x63\x61\x6C\x20\x73\x74\x6F\x72\x61\x67\x65\x20\x6F\x72\x0A\x2F\x2F\x20\x72\x65\x74\x75\x72\x6E\x20\x74\x68\x65\x20\x6F\x6E\x65\x20\x66\x72\x6F\x6D\x20\x77\x73\x54\x61\x72\x67\x65\x74\x20\x69\x66\x20\x69\x74\x73\x20\x6E\x6F\x74\x20\x65\x78\x69\x73\x74\x2E\x0A\x2F\x2F\x0A\x65\x78\x70\x6F\x72\x74\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x6C\x6F\x61\x64\x57\x73\x54\x61\x72\x67\x65\x74\x50\x61\x72\x61\x6D\x28\x74\x61\x72\x67\x65\x74\x2C\x20\x77\x73\x54\x61\x72\x67\x65\x74\x2C\x20\x6B\x65\x79\x29\x20\x7B\x0A\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x73\x74\x6F\x72\x61\x67\x65\x4B\x65\x79\x20\x3D\x20\x60\x24\x7B\x74\x61\x72\x67\x65\x74\x2E\x49\x44\x7D\x2E\x77\x73\x2E\x24\x7B\x77\x73\x54\x61\x72\x67\x65\x74\x2E\x49\x44\x7D\x2E\x70\x61\x72\x61\x6D\x2E\x24\x7B\x6B\x65\x79\x7D\x60\x3B\x0A\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x76\x61\x6C\x20\x3D\x20\x77\x69\x6E\x64\x6F\x77\x2E\x6C\x6F\x63\x61\x6C\x53\x74\x6F\x72\x61\x67\x65\x2E\x67\x65\x74\x49\x74\x65\x6D\x28\x73\x74\x6F\x72\x61\x67\x65\x4B\x65\x79\x29\x3B\x0A\x20\x20\x20\x20\x69\x66\x20\x28\x76\x61\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x76\x61\x6C\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x70\x61\x72\x61\x6D\x20\x3D\x20\x77\x73\x54\x61\x72\x67\x65\x74\x2E\x50\x61\x72\x61\x6D\x73\x5B\x6B\x65\x79\x5D\x3B\x0A\x20\x20\x20\x20\x69\x66\x20\x28\x70\x61\x72\x61\x6D\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x70\x61\x72\x61\x6D\x2E\x76\x61\x6C\x75\x65\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x22\x22\x3B\x0A\x7D\x0A\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x73\x61\x76\x65\x57\x73\x54\x61\x72\x67\x65\x74\x50\x61\x72\x61\x6D\x28\x74\x61\x72\x67\x65\x74\x2C\x20\x77\x73\x54\x61\x72\x67\x65\x74\x2C\x20\x6B\x65\x79\x2C\x20\x76\x61\x6C\x75\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x73\x74\x6F\x72\x61\x67\x65\x4B\x65\x79\x20\x3D\x20\x60\x24\x7B\x74\x61\x72\x67\x65\x74\x2E\x49\x44\x7D\x2E\x77\x73\x2E\x24\x7B\x77\x73\x54\x61\x72\x67\x65\x74\x2E\x49\x44\x7D\x2E\x70\x61\x72\x61\x6D\x2E\x24\x7B\x6B\x65\x79\x7D\x60\x3B\x0A\x20\x20\x20\x20\x77\x69\x6E\x64\x6F\x77\x2E\x6C\x6F\x63\x61\x6C\x53\x74\x6F\x72\x61\x67\x65\x2E\x73\x65\x74\x49\x74\x65\x6D\x28\x73\x74\x6F\x72\x61\x67\x65\x4B\x65\x79\x2C\x20\x76\x61\x6C\x75\x65\x29\x3B\x0A\x7D\x0A\x2F\x2F\x0A\x2F\x2F\x20\x73\x61\x76\x65\x20\x74\x68\x65\x20\x76\x61\x72\x69\x61\x62\x6C\x65\x73\x20\x6F\x6E\x20\x74\x68\x65\x20\x54\x61\x72\x67\x65\x74\x2C\x20\x50\x61\x72\x61\x6D\x73\x20\x61\x6E\x64\x20\x48\x65\x61\x64\x65\x72\x73\x20\x6F\x6E\x20\x48\x54\x54\x50\x54\x61\x72\x67\x65\x74\x20\x6F\x72\x0A\x2F\x2F\x20\x57\x65\x62\x53\x6F\x63\x6B\x65\x74\x20\x74\x6F\x20\x6C\x6F\x63\x61\x6C\x20\x73\x74\x6F\x72\x61\x67\x65\x2E\x0A\x2F\x2F\x0A\x65\x78\x70\x6F\x72\x74\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x73\x61\x76\x65\x28\x74\x61\x72\x67\x65\x74\x2C\x20\x68\x74\x74\x70\x54\x61\x72\x67\x65\x74\x2C\x20\x77\x73\x54\x61\x72\x67\x65\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x73\x61\x76\x65\x54\x61\x72\x67\x65\x74\x4F\x70\x74\x44\x75\x72\x61\x74\x69\x6F\x6E\x28\x74\x61\x72\x67\x65\x74\x29\x3B\x0A\x20\x20\x20\x20\x73\x61\x76\x65\x54\x61\x72\x67\x65\x74\x4F\x70\x74\x52\x61\x74\x65\x50\x65\x72\x53\x65\x63\x6F\x6E\x64\x28\x74\x61\x72\x67\x65\x74\x29\x3B\x0A\x20\x20\x20\x20\x73\x61\x76\x65\x54\x61\x72\x67\x65\x74\x4F\x70\x74\x54\x69\x6D\x65\x6F\x75\x74\x28\x74\x61\x72\x67\x65\x74\x29\x3B\x0A\x20\x20\x20\x20\x66\x6F\x72\x20\x28\x63\x6F\x6E\x73\x74\x20\x5B\x6B\x2C\x20\x66\x69\x5D\x20\x6F\x66\x20\x4F\x62\x6A\x65\x63\x74\x2E\x65\x6E\x74\x72\x69\x65\x73\x28\x74\x61\x72\x67\x65\x74\x2E\x56\x61\x72\x73\x29\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x73\x61\x76\x65\x54\x61\x72\x67\x65\x74\x56\x61\x72\x28\x74\x61\x72\x67\x65\x74\x2C\x20\x6B\x2C\x20\x66\x69\x2E\x76\x61\x6C\x75\x65\x29\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x69\x66\x20\x28\x68\x74\x74\x70\x54\x61\x72\x67\x65\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x66\x6F\x72\x20\x28\x63\x6F\x6E\x73\x74\x20\x5B\x6B\x2C\x20\x66\x69\x5D\x20\x6F\x66\x20\x4F\x62\x6A\x65\x63\x74\x2E\x65\x6E\x74\x72\x69\x65\x73\x28\x68\x74\x74\x70\x54\x61\x72\x67\x65\x74\x2E\x48\x65\x61\x64\x65\x72\x73\x29\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x73\x61\x76\x65\x48\x54\x54\x50\x54\x61\x72\x67\x65\x74\x48\x65\x61\x64\x65\x72\x28\x74\x61\x72\x67\x65\x74\x2C\x20\x68\x74\x74\x70\x54\x61\x72\x67\x65\x74\x2C\x20\x6B\x2C\x20\x66\x69\x2E\x76\x61\x6C\x75\x65\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\x63\x6F\x6E\x73\x74\x20\x5B\x6B\x2C\x20\x66\x69\x5D\x20\x6F\x66\x20\x4F\x62\x6A\x65\x63\x74\x2E\x65\x6E\x74\x72\x69\x65\x73\x28\x68\x74\x74\x70\x54\x61\x72\x67\x65\x74\x2E\x50\x61\x72\x61\x6D\x73\x29\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x73\x61\x76\x65\x48\x54\x54\x50\x54\x61\x72\x67\x65\x74\x50\x61\x72\x61\x6D\x28\x74\x61\x72\x67\x65\x74\x2C\x20\x68\x74\x74\x70\x54\x61\x72\x67\x65\x74\x2C\x20\x6B\x2C\x20\x66\x69\x2E\x76\x61\x6C\x75\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x69\x66\x20\x28\x77\x73\x54\x61\x72\x67\x65\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x66\x6F\x72\x20\x28\x63\x6F\x6E\x73\x74\x20\x5B\x6B\x2C\x20\x66\x69\x5D\x20\x6F\x66\x20\x4F\x62\x6A\x65\x63\x74\x2E\x65\x6E\x74\x72\x69\x65\x73\x28\x77\x73\x54\x61\x72\x67\x65\x74\x2E\x48\x65\x61\x64\x65\x72\x73\x29\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x73\x61\x76\x65\x57\x73\x54\x61\x72\x67\x65\x74\x48\x65\x61\x64\x65\x72\x28\x74\x61\x72\x67\x65\x74\x2C\x20\x77\x73\x54\x61\x72\x67\x65\x74\x2C\x20\x6B\x2C\x20\x66\x69\x2E\x76\x61\x6C\x75\x65\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\x63\x6F\x6E\x73\x74\x20\x5B\x6B\x2C\x20\x66\x69\x5D\x20\x6F\x66\x20\x4F\x62\x6A\x65\x63\x74\x2E\x65\x6E\x74\x72\x69\x65\x73\x28\x77\x73\x54\x61\x72\x67\x65\x74\x2E\x50\x61\x72\x61\x6D\x73\x29\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x73\x61\x76\x65\x57\x73\x54\x61\x72\x67\x65\x74\x50\x61\x72\x61\x6D\x28\x74\x61\x72\x67\x65\x74\x2C\x20\x77\x73\x54\x61\x72\x67\x65\x74\x2C\x20\x6B\x2C\x20\x66\x69\x2E\x76\x61\x6C\x75\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x7D\x0A\x7D\x0A"), + Content: []byte("\x2F\x2F\x20\x53\x50\x44\x58\x2D\x46\x69\x6C\x65\x43\x6F\x70\x79\x72\x69\x67\x68\x74\x54\x65\x78\x74\x3A\x20\x32\x30\x32\x31\x20\x4D\x2E\x20\x53\x68\x75\x6C\x68\x61\x6E\x20\x3C\x6D\x73\x40\x6B\x69\x6C\x61\x62\x69\x74\x2E\x69\x6E\x66\x6F\x3E\x0A\x2F\x2F\x20\x53\x50\x44\x58\x2D\x4C\x69\x63\x65\x6E\x73\x65\x2D\x49\x64\x65\x6E\x74\x69\x66\x69\x65\x72\x3A\x20\x47\x50\x4C\x2D\x33\x2E\x30\x2D\x6F\x72\x2D\x6C\x61\x74\x65\x72\x0A\x69\x6D\x70\x6F\x72\x74\x20\x7B\x20\x57\x75\x69\x49\x6E\x70\x75\x74\x46\x69\x6C\x65\x20\x7D\x20\x66\x72\x6F\x6D\x20\x22\x2E\x2F\x77\x75\x69\x2F\x69\x6E\x70\x75\x74\x2F\x66\x69\x6C\x65\x2E\x6A\x73\x22\x3B\x0A\x69\x6D\x70\x6F\x72\x74\x20\x7B\x20\x57\x75\x69\x49\x6E\x70\x75\x74\x4E\x75\x6D\x62\x65\x72\x20\x7D\x20\x66\x72\x6F\x6D\x20\x22\x2E\x2F\x77\x75\x69\x2F\x69\x6E\x70\x75\x74\x2F\x6E\x75\x6D\x62\x65\x72\x2E\x6A\x73\x22\x3B\x0A\x69\x6D\x70\x6F\x72\x74\x20\x7B\x20\x57\x75\x69\x49\x6E\x70\x75\x74\x53\x74\x72\x69\x6E\x67\x20\x7D\x20\x66\x72\x6F\x6D\x20\x22\x2E\x2F\x77\x75\x69\x2F\x69\x6E\x70\x75\x74\x2F\x73\x74\x72\x69\x6E\x67\x2E\x6A\x73\x22\x3B\x0A\x69\x6D\x70\x6F\x72\x74\x20\x7B\x20\x43\x4C\x41\x53\x53\x5F\x49\x4E\x50\x55\x54\x2C\x20\x43\x4C\x41\x53\x53\x5F\x49\x4E\x50\x55\x54\x5F\x4C\x41\x42\x45\x4C\x2C\x20\x46\x6F\x72\x6D\x49\x6E\x70\x75\x74\x4B\x69\x6E\x64\x46\x69\x6C\x65\x2C\x20\x46\x6F\x72\x6D\x49\x6E\x70\x75\x74\x4B\x69\x6E\x64\x4E\x75\x6D\x62\x65\x72\x2C\x20\x7D\x20\x66\x72\x6F\x6D\x20\x22\x2E\x2F\x69\x6E\x74\x65\x72\x66\x61\x63\x65\x2E\x6A\x73\x22\x3B\x0A\x65\x78\x70\x6F\x72\x74\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x67\x65\x74\x44\x6F\x63\x75\x6D\x65\x6E\x74\x48\x65\x69\x67\x68\x74\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x44\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x3B\x0A\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x4D\x61\x74\x68\x2E\x6D\x61\x78\x28\x4D\x61\x74\x68\x2E\x6D\x61\x78\x28\x44\x2E\x62\x6F\x64\x79\x2E\x73\x63\x72\x6F\x6C\x6C\x48\x65\x69\x67\x68\x74\x2C\x20\x44\x2E\x64\x6F\x63\x75\x6D\x65\x6E\x74\x45\x6C\x65\x6D\x65\x6E\x74\x2E\x73\x63\x72\x6F\x6C\x6C\x48\x65\x69\x67\x68\x74\x29\x2C\x20\x4D\x61\x74\x68\x2E\x6D\x61\x78\x28\x44\x2E\x62\x6F\x64\x79\x2E\x6F\x66\x66\x73\x65\x74\x48\x65\x69\x67\x68\x74\x2C\x20\x44\x2E\x64\x6F\x63\x75\x6D\x65\x6E\x74\x45\x6C\x65\x6D\x65\x6E\x74\x2E\x6F\x66\x66\x73\x65\x74\x48\x65\x69\x67\x68\x74\x29\x2C\x20\x4D\x61\x74\x68\x2E\x6D\x61\x78\x28\x44\x2E\x62\x6F\x64\x79\x2E\x63\x6C\x69\x65\x6E\x74\x48\x65\x69\x67\x68\x74\x2C\x20\x44\x2E\x64\x6F\x63\x75\x6D\x65\x6E\x74\x45\x6C\x65\x6D\x65\x6E\x74\x2E\x63\x6C\x69\x65\x6E\x74\x48\x65\x69\x67\x68\x74\x29\x29\x3B\x0A\x7D\x0A\x65\x78\x70\x6F\x72\x74\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x46\x6F\x72\x6D\x49\x6E\x70\x75\x74\x28\x70\x61\x72\x65\x6E\x74\x2C\x20\x66\x69\x29\x20\x7B\x0A\x20\x20\x20\x20\x6C\x65\x74\x20\x77\x75\x69\x49\x6E\x70\x75\x74\x4E\x75\x6D\x62\x65\x72\x4F\x70\x74\x73\x3B\x0A\x20\x20\x20\x20\x6C\x65\x74\x20\x77\x75\x69\x49\x6E\x70\x75\x74\x53\x74\x72\x69\x6E\x67\x4F\x70\x74\x73\x3B\x0A\x20\x20\x20\x20\x6C\x65\x74\x20\x77\x75\x69\x49\x6E\x70\x75\x74\x4E\x75\x6D\x62\x65\x72\x3B\x0A\x20\x20\x20\x20\x6C\x65\x74\x20\x77\x75\x69\x49\x6E\x70\x75\x74\x53\x74\x72\x69\x6E\x67\x3B\x0A\x20\x20\x20\x20\x6C\x65\x74\x20\x77\x75\x69\x49\x6E\x70\x75\x74\x46\x69\x6C\x65\x3B\x0A\x20\x20\x20\x20\x6C\x65\x74\x20\x72\x65\x61\x64\x65\x72\x3B\x0A\x20\x20\x20\x20\x73\x77\x69\x74\x63\x68\x20\x28\x66\x69\x2E\x6B\x69\x6E\x64\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x46\x6F\x72\x6D\x49\x6E\x70\x75\x74\x4B\x69\x6E\x64\x46\x69\x6C\x65\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x77\x75\x69\x49\x6E\x70\x75\x74\x46\x69\x6C\x65\x20\x3D\x20\x6E\x65\x77\x20\x57\x75\x69\x49\x6E\x70\x75\x74\x46\x69\x6C\x65\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x77\x75\x69\x49\x6E\x70\x75\x74\x46\x69\x6C\x65\x2E\x6C\x61\x62\x65\x6C\x20\x3D\x20\x66\x69\x2E\x6C\x61\x62\x65\x6C\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x77\x75\x69\x49\x6E\x70\x75\x74\x46\x69\x6C\x65\x2E\x68\x69\x6E\x74\x20\x3D\x20\x66\x69\x2E\x68\x69\x6E\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x77\x75\x69\x49\x6E\x70\x75\x74\x46\x69\x6C\x65\x2E\x63\x6C\x61\x73\x73\x49\x6E\x70\x75\x74\x20\x3D\x20\x43\x4C\x41\x53\x53\x5F\x49\x4E\x50\x55\x54\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x77\x75\x69\x49\x6E\x70\x75\x74\x46\x69\x6C\x65\x2E\x63\x6C\x61\x73\x73\x4C\x61\x62\x65\x6C\x20\x3D\x20\x43\x4C\x41\x53\x53\x5F\x49\x4E\x50\x55\x54\x5F\x4C\x41\x42\x45\x4C\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x77\x75\x69\x49\x6E\x70\x75\x74\x46\x69\x6C\x65\x2E\x6F\x6E\x43\x68\x61\x6E\x67\x65\x20\x3D\x20\x28\x66\x69\x6C\x65\x29\x20\x3D\x3E\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x66\x69\x2E\x66\x69\x6C\x65\x6E\x61\x6D\x65\x20\x3D\x20\x66\x69\x6C\x65\x2E\x6E\x61\x6D\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x66\x69\x2E\x66\x69\x6C\x65\x74\x79\x70\x65\x20\x3D\x20\x66\x69\x6C\x65\x2E\x74\x79\x70\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x66\x69\x2E\x66\x69\x6C\x65\x73\x69\x7A\x65\x20\x3D\x20\x66\x69\x6C\x65\x2E\x73\x69\x7A\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x66\x69\x2E\x66\x69\x6C\x65\x6D\x6F\x64\x6D\x73\x20\x3D\x20\x66\x69\x6C\x65\x2E\x6C\x61\x73\x74\x4D\x6F\x64\x69\x66\x69\x65\x64\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x66\x69\x2E\x76\x61\x6C\x75\x65\x20\x3D\x20\x22\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x61\x64\x65\x72\x20\x3D\x20\x6E\x65\x77\x20\x46\x69\x6C\x65\x52\x65\x61\x64\x65\x72\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x61\x64\x65\x72\x2E\x6F\x6E\x6C\x6F\x61\x64\x20\x3D\x20\x28\x65\x29\x20\x3D\x3E\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x66\x69\x2E\x76\x61\x6C\x75\x65\x20\x3D\x20\x62\x74\x6F\x61\x28\x72\x65\x61\x64\x65\x72\x2E\x72\x65\x73\x75\x6C\x74\x29\x3B\x0A\x20\x20\x20\x20\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\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x61\x64\x65\x72\x2E\x72\x65\x61\x64\x41\x73\x54\x65\x78\x74\x28\x66\x69\x6C\x65\x29\x3B\x0A\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\x70\x61\x72\x65\x6E\x74\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x77\x75\x69\x49\x6E\x70\x75\x74\x46\x69\x6C\x65\x2E\x65\x6C\x65\x6D\x65\x6E\x74\x28\x29\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\x63\x61\x73\x65\x20\x46\x6F\x72\x6D\x49\x6E\x70\x75\x74\x4B\x69\x6E\x64\x4E\x75\x6D\x62\x65\x72\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x77\x75\x69\x49\x6E\x70\x75\x74\x4E\x75\x6D\x62\x65\x72\x4F\x70\x74\x73\x20\x3D\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6C\x61\x62\x65\x6C\x3A\x20\x66\x69\x2E\x6C\x61\x62\x65\x6C\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x68\x69\x6E\x74\x3A\x20\x66\x69\x2E\x68\x69\x6E\x74\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x6C\x75\x65\x3A\x20\x2B\x66\x69\x2E\x76\x61\x6C\x75\x65\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6C\x61\x73\x73\x5F\x69\x6E\x70\x75\x74\x3A\x20\x43\x4C\x41\x53\x53\x5F\x49\x4E\x50\x55\x54\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6C\x61\x73\x73\x5F\x6C\x61\x62\x65\x6C\x3A\x20\x43\x4C\x41\x53\x53\x5F\x49\x4E\x50\x55\x54\x5F\x4C\x41\x42\x45\x4C\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x73\x5F\x68\x69\x6E\x74\x5F\x74\x6F\x67\x67\x6C\x65\x64\x3A\x20\x74\x72\x75\x65\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6F\x6E\x43\x68\x61\x6E\x67\x65\x48\x61\x6E\x64\x6C\x65\x72\x3A\x20\x28\x6E\x65\x77\x56\x61\x6C\x75\x65\x29\x20\x3D\x3E\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x66\x69\x2E\x76\x61\x6C\x75\x65\x20\x3D\x20\x22\x22\x20\x2B\x20\x6E\x65\x77\x56\x61\x6C\x75\x65\x3B\x0A\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\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x66\x69\x2E\x6D\x61\x78\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x77\x75\x69\x49\x6E\x70\x75\x74\x4E\x75\x6D\x62\x65\x72\x4F\x70\x74\x73\x2E\x6D\x61\x78\x20\x3D\x20\x66\x69\x2E\x6D\x61\x78\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\x66\x69\x2E\x6D\x69\x6E\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x77\x75\x69\x49\x6E\x70\x75\x74\x4E\x75\x6D\x62\x65\x72\x4F\x70\x74\x73\x2E\x6D\x69\x6E\x20\x3D\x20\x66\x69\x2E\x6D\x69\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\x77\x75\x69\x49\x6E\x70\x75\x74\x4E\x75\x6D\x62\x65\x72\x20\x3D\x20\x6E\x65\x77\x20\x57\x75\x69\x49\x6E\x70\x75\x74\x4E\x75\x6D\x62\x65\x72\x28\x77\x75\x69\x49\x6E\x70\x75\x74\x4E\x75\x6D\x62\x65\x72\x4F\x70\x74\x73\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x70\x61\x72\x65\x6E\x74\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x77\x75\x69\x49\x6E\x70\x75\x74\x4E\x75\x6D\x62\x65\x72\x2E\x65\x6C\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\x64\x65\x66\x61\x75\x6C\x74\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x77\x75\x69\x49\x6E\x70\x75\x74\x53\x74\x72\x69\x6E\x67\x4F\x70\x74\x73\x20\x3D\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6C\x61\x62\x65\x6C\x3A\x20\x66\x69\x2E\x6C\x61\x62\x65\x6C\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x68\x69\x6E\x74\x3A\x20\x66\x69\x2E\x68\x69\x6E\x74\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x6C\x75\x65\x3A\x20\x66\x69\x2E\x76\x61\x6C\x75\x65\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6C\x61\x73\x73\x5F\x69\x6E\x70\x75\x74\x3A\x20\x43\x4C\x41\x53\x53\x5F\x49\x4E\x50\x55\x54\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6C\x61\x73\x73\x5F\x6C\x61\x62\x65\x6C\x3A\x20\x43\x4C\x41\x53\x53\x5F\x49\x4E\x50\x55\x54\x5F\x4C\x41\x42\x45\x4C\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x73\x5F\x68\x69\x6E\x74\x5F\x74\x6F\x67\x67\x6C\x65\x64\x3A\x20\x74\x72\x75\x65\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6F\x6E\x43\x68\x61\x6E\x67\x65\x48\x61\x6E\x64\x6C\x65\x72\x3A\x20\x28\x6E\x65\x77\x56\x61\x6C\x75\x65\x29\x20\x3D\x3E\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x66\x69\x2E\x76\x61\x6C\x75\x65\x20\x3D\x20\x6E\x65\x77\x56\x61\x6C\x75\x65\x3B\x0A\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\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x77\x75\x69\x49\x6E\x70\x75\x74\x53\x74\x72\x69\x6E\x67\x20\x3D\x20\x6E\x65\x77\x20\x57\x75\x69\x49\x6E\x70\x75\x74\x53\x74\x72\x69\x6E\x67\x28\x77\x75\x69\x49\x6E\x70\x75\x74\x53\x74\x72\x69\x6E\x67\x4F\x70\x74\x73\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x70\x61\x72\x65\x6E\x74\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x77\x75\x69\x49\x6E\x70\x75\x74\x53\x74\x72\x69\x6E\x67\x2E\x65\x6C\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\x7D\x0A\x7D\x0A\x65\x78\x70\x6F\x72\x74\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x48\x54\x54\x50\x4D\x65\x74\x68\x6F\x64\x54\x6F\x53\x74\x72\x69\x6E\x67\x28\x6D\x29\x20\x7B\x0A\x20\x20\x20\x20\x73\x77\x69\x74\x63\x68\x20\x28\x6D\x29\x20\x7B\x0A\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\x72\x65\x74\x75\x72\x6E\x20\x22\x47\x45\x54\x22\x3B\x0A\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\x72\x65\x74\x75\x72\x6E\x20\x22\x43\x4F\x4E\x4E\x45\x43\x54\x22\x3B\x0A\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\x72\x65\x74\x75\x72\x6E\x20\x22\x44\x45\x4C\x45\x54\x45\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x33\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x22\x48\x45\x41\x44\x22\x3B\x0A\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\x72\x65\x74\x75\x72\x6E\x20\x22\x4F\x50\x54\x49\x4F\x4E\x53\x22\x3B\x0A\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\x72\x65\x74\x75\x72\x6E\x20\x22\x50\x41\x54\x43\x48\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x36\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x22\x50\x4F\x53\x54\x22\x3B\x0A\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\x72\x65\x74\x75\x72\x6E\x20\x22\x50\x55\x54\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x38\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x22\x54\x52\x41\x43\x45\x22\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x22\x3F\x3F\x3F\x22\x3B\x0A\x7D\x0A\x2F\x2F\x0A\x2F\x2F\x20\x6C\x6F\x61\x64\x48\x54\x54\x50\x54\x61\x72\x67\x65\x74\x48\x65\x61\x64\x65\x72\x20\x67\x65\x74\x20\x48\x54\x54\x50\x54\x61\x72\x67\x65\x74\x20\x68\x65\x61\x64\x65\x72\x20\x66\x72\x6F\x6D\x20\x6C\x6F\x63\x61\x6C\x20\x73\x74\x6F\x72\x61\x67\x65\x20\x62\x79\x20\x6B\x65\x79\x2E\x0A\x2F\x2F\x20\x49\x66\x20\x6E\x6F\x20\x68\x65\x61\x64\x65\x72\x20\x65\x78\x69\x73\x74\x20\x69\x6E\x20\x73\x74\x6F\x72\x61\x67\x65\x20\x72\x65\x74\x75\x72\x6E\x20\x74\x68\x65\x20\x6F\x6E\x65\x20\x66\x72\x6F\x6D\x20\x48\x54\x54\x50\x54\x61\x72\x67\x65\x74\x20\x69\x74\x73\x65\x6C\x66\x2E\x0A\x2F\x2F\x0A\x65\x78\x70\x6F\x72\x74\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x6C\x6F\x61\x64\x48\x54\x54\x50\x54\x61\x72\x67\x65\x74\x48\x65\x61\x64\x65\x72\x28\x74\x61\x72\x67\x65\x74\x2C\x20\x68\x74\x74\x70\x54\x61\x72\x67\x65\x74\x2C\x20\x6B\x65\x79\x29\x20\x7B\x0A\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x73\x74\x6F\x72\x61\x67\x65\x4B\x65\x79\x20\x3D\x20\x60\x24\x7B\x74\x61\x72\x67\x65\x74\x2E\x49\x44\x7D\x2E\x68\x74\x74\x70\x2E\x24\x7B\x68\x74\x74\x70\x54\x61\x72\x67\x65\x74\x2E\x49\x44\x7D\x2E\x68\x65\x61\x64\x65\x72\x2E\x24\x7B\x6B\x65\x79\x7D\x60\x3B\x0A\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x76\x61\x6C\x20\x3D\x20\x77\x69\x6E\x64\x6F\x77\x2E\x6C\x6F\x63\x61\x6C\x53\x74\x6F\x72\x61\x67\x65\x2E\x67\x65\x74\x49\x74\x65\x6D\x28\x73\x74\x6F\x72\x61\x67\x65\x4B\x65\x79\x29\x3B\x0A\x20\x20\x20\x20\x69\x66\x20\x28\x76\x61\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x76\x61\x6C\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x68\x65\x61\x64\x65\x72\x20\x3D\x20\x68\x74\x74\x70\x54\x61\x72\x67\x65\x74\x2E\x48\x65\x61\x64\x65\x72\x73\x5B\x6B\x65\x79\x5D\x3B\x0A\x20\x20\x20\x20\x69\x66\x20\x28\x68\x65\x61\x64\x65\x72\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x68\x65\x61\x64\x65\x72\x2E\x76\x61\x6C\x75\x65\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x22\x22\x3B\x0A\x7D\x0A\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x73\x61\x76\x65\x48\x54\x54\x50\x54\x61\x72\x67\x65\x74\x48\x65\x61\x64\x65\x72\x28\x74\x61\x72\x67\x65\x74\x2C\x20\x68\x74\x74\x70\x54\x61\x72\x67\x65\x74\x2C\x20\x6B\x65\x79\x2C\x20\x76\x61\x6C\x75\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x73\x74\x6F\x72\x61\x67\x65\x4B\x65\x79\x20\x3D\x20\x60\x24\x7B\x74\x61\x72\x67\x65\x74\x2E\x49\x44\x7D\x2E\x68\x74\x74\x70\x2E\x24\x7B\x68\x74\x74\x70\x54\x61\x72\x67\x65\x74\x2E\x49\x44\x7D\x2E\x68\x65\x61\x64\x65\x72\x2E\x24\x7B\x6B\x65\x79\x7D\x60\x3B\x0A\x20\x20\x20\x20\x77\x69\x6E\x64\x6F\x77\x2E\x6C\x6F\x63\x61\x6C\x53\x74\x6F\x72\x61\x67\x65\x2E\x73\x65\x74\x49\x74\x65\x6D\x28\x73\x74\x6F\x72\x61\x67\x65\x4B\x65\x79\x2C\x20\x76\x61\x6C\x75\x65\x29\x3B\x0A\x7D\x0A\x2F\x2F\x0A\x2F\x2F\x20\x6C\x6F\x61\x64\x48\x54\x54\x50\x54\x61\x72\x67\x65\x74\x50\x61\x72\x61\x6D\x20\x67\x65\x74\x20\x48\x54\x54\x50\x54\x61\x72\x67\x65\x74\x20\x70\x61\x72\x61\x6D\x65\x74\x65\x72\x20\x66\x72\x6F\x6D\x20\x6C\x6F\x63\x61\x6C\x20\x73\x74\x6F\x72\x61\x67\x65\x20\x62\x79\x20\x6B\x65\x79\x2E\x0A\x2F\x2F\x20\x49\x66\x20\x6E\x6F\x20\x70\x61\x72\x61\x6D\x65\x74\x65\x72\x20\x65\x78\x69\x73\x74\x20\x69\x6E\x20\x73\x74\x6F\x72\x61\x67\x65\x20\x72\x65\x74\x75\x72\x6E\x20\x74\x68\x65\x20\x6F\x6E\x65\x20\x66\x72\x6F\x6D\x20\x48\x54\x54\x50\x54\x61\x72\x67\x65\x74\x20\x69\x74\x73\x65\x6C\x66\x2E\x0A\x2F\x2F\x0A\x65\x78\x70\x6F\x72\x74\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x6C\x6F\x61\x64\x48\x54\x54\x50\x54\x61\x72\x67\x65\x74\x50\x61\x72\x61\x6D\x28\x74\x61\x72\x67\x65\x74\x2C\x20\x68\x74\x74\x70\x54\x61\x72\x67\x65\x74\x2C\x20\x6B\x65\x79\x29\x20\x7B\x0A\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x73\x74\x6F\x72\x61\x67\x65\x4B\x65\x79\x20\x3D\x20\x60\x24\x7B\x74\x61\x72\x67\x65\x74\x2E\x49\x44\x7D\x2E\x68\x74\x74\x70\x2E\x24\x7B\x68\x74\x74\x70\x54\x61\x72\x67\x65\x74\x2E\x49\x44\x7D\x2E\x70\x61\x72\x61\x6D\x2E\x24\x7B\x6B\x65\x79\x7D\x60\x3B\x0A\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x76\x61\x6C\x20\x3D\x20\x77\x69\x6E\x64\x6F\x77\x2E\x6C\x6F\x63\x61\x6C\x53\x74\x6F\x72\x61\x67\x65\x2E\x67\x65\x74\x49\x74\x65\x6D\x28\x73\x74\x6F\x72\x61\x67\x65\x4B\x65\x79\x29\x3B\x0A\x20\x20\x20\x20\x69\x66\x20\x28\x76\x61\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x76\x61\x6C\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x70\x61\x72\x61\x6D\x20\x3D\x20\x68\x74\x74\x70\x54\x61\x72\x67\x65\x74\x2E\x50\x61\x72\x61\x6D\x73\x5B\x6B\x65\x79\x5D\x3B\x0A\x20\x20\x20\x20\x69\x66\x20\x28\x70\x61\x72\x61\x6D\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x70\x61\x72\x61\x6D\x2E\x76\x61\x6C\x75\x65\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x22\x22\x3B\x0A\x7D\x0A\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x73\x61\x76\x65\x48\x54\x54\x50\x54\x61\x72\x67\x65\x74\x50\x61\x72\x61\x6D\x28\x74\x61\x72\x67\x65\x74\x2C\x20\x68\x74\x74\x70\x54\x61\x72\x67\x65\x74\x2C\x20\x6B\x65\x79\x2C\x20\x76\x61\x6C\x75\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x73\x74\x6F\x72\x61\x67\x65\x4B\x65\x79\x20\x3D\x20\x60\x24\x7B\x74\x61\x72\x67\x65\x74\x2E\x49\x44\x7D\x2E\x68\x74\x74\x70\x2E\x24\x7B\x68\x74\x74\x70\x54\x61\x72\x67\x65\x74\x2E\x49\x44\x7D\x2E\x70\x61\x72\x61\x6D\x2E\x24\x7B\x6B\x65\x79\x7D\x60\x3B\x0A\x20\x20\x20\x20\x77\x69\x6E\x64\x6F\x77\x2E\x6C\x6F\x63\x61\x6C\x53\x74\x6F\x72\x61\x67\x65\x2E\x73\x65\x74\x49\x74\x65\x6D\x28\x73\x74\x6F\x72\x61\x67\x65\x4B\x65\x79\x2C\x20\x76\x61\x6C\x75\x65\x29\x3B\x0A\x7D\x0A\x65\x78\x70\x6F\x72\x74\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x6C\x6F\x61\x64\x54\x61\x72\x67\x65\x74\x4F\x70\x74\x44\x75\x72\x61\x74\x69\x6F\x6E\x28\x74\x61\x72\x67\x65\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x73\x74\x6F\x72\x61\x67\x65\x4B\x65\x79\x20\x3D\x20\x60\x24\x7B\x74\x61\x72\x67\x65\x74\x2E\x49\x44\x7D\x2E\x6F\x70\x74\x2E\x44\x75\x72\x61\x74\x69\x6F\x6E\x60\x3B\x0A\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x76\x61\x6C\x20\x3D\x20\x77\x69\x6E\x64\x6F\x77\x2E\x6C\x6F\x63\x61\x6C\x53\x74\x6F\x72\x61\x67\x65\x2E\x67\x65\x74\x49\x74\x65\x6D\x28\x73\x74\x6F\x72\x61\x67\x65\x4B\x65\x79\x29\x3B\x0A\x20\x20\x20\x20\x69\x66\x20\x28\x76\x61\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x2B\x76\x61\x6C\x20\x2F\x20\x31\x65\x39\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x74\x61\x72\x67\x65\x74\x2E\x4F\x70\x74\x73\x2E\x44\x75\x72\x61\x74\x69\x6F\x6E\x20\x2F\x20\x31\x65\x39\x3B\x0A\x7D\x0A\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x73\x61\x76\x65\x54\x61\x72\x67\x65\x74\x4F\x70\x74\x44\x75\x72\x61\x74\x69\x6F\x6E\x28\x74\x61\x72\x67\x65\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x73\x74\x6F\x72\x61\x67\x65\x4B\x65\x79\x20\x3D\x20\x60\x24\x7B\x74\x61\x72\x67\x65\x74\x2E\x49\x44\x7D\x2E\x6F\x70\x74\x2E\x44\x75\x72\x61\x74\x69\x6F\x6E\x60\x3B\x0A\x20\x20\x20\x20\x77\x69\x6E\x64\x6F\x77\x2E\x6C\x6F\x63\x61\x6C\x53\x74\x6F\x72\x61\x67\x65\x2E\x73\x65\x74\x49\x74\x65\x6D\x28\x73\x74\x6F\x72\x61\x67\x65\x4B\x65\x79\x2C\x20\x22\x22\x20\x2B\x20\x74\x61\x72\x67\x65\x74\x2E\x4F\x70\x74\x73\x2E\x44\x75\x72\x61\x74\x69\x6F\x6E\x29\x3B\x0A\x7D\x0A\x65\x78\x70\x6F\x72\x74\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x6C\x6F\x61\x64\x54\x61\x72\x67\x65\x74\x4F\x70\x74\x52\x61\x74\x65\x50\x65\x72\x53\x65\x63\x6F\x6E\x64\x28\x74\x61\x72\x67\x65\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x73\x74\x6F\x72\x61\x67\x65\x4B\x65\x79\x20\x3D\x20\x60\x24\x7B\x74\x61\x72\x67\x65\x74\x2E\x49\x44\x7D\x2E\x6F\x70\x74\x2E\x52\x61\x74\x65\x50\x65\x72\x53\x65\x63\x6F\x6E\x64\x60\x3B\x0A\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x76\x61\x6C\x20\x3D\x20\x77\x69\x6E\x64\x6F\x77\x2E\x6C\x6F\x63\x61\x6C\x53\x74\x6F\x72\x61\x67\x65\x2E\x67\x65\x74\x49\x74\x65\x6D\x28\x73\x74\x6F\x72\x61\x67\x65\x4B\x65\x79\x29\x3B\x0A\x20\x20\x20\x20\x69\x66\x20\x28\x76\x61\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x2B\x76\x61\x6C\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x74\x61\x72\x67\x65\x74\x2E\x4F\x70\x74\x73\x2E\x52\x61\x74\x65\x50\x65\x72\x53\x65\x63\x6F\x6E\x64\x3B\x0A\x7D\x0A\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x73\x61\x76\x65\x54\x61\x72\x67\x65\x74\x4F\x70\x74\x52\x61\x74\x65\x50\x65\x72\x53\x65\x63\x6F\x6E\x64\x28\x74\x61\x72\x67\x65\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x73\x74\x6F\x72\x61\x67\x65\x4B\x65\x79\x20\x3D\x20\x60\x24\x7B\x74\x61\x72\x67\x65\x74\x2E\x49\x44\x7D\x2E\x6F\x70\x74\x2E\x52\x61\x74\x65\x50\x65\x72\x53\x65\x63\x6F\x6E\x64\x60\x3B\x0A\x20\x20\x20\x20\x77\x69\x6E\x64\x6F\x77\x2E\x6C\x6F\x63\x61\x6C\x53\x74\x6F\x72\x61\x67\x65\x2E\x73\x65\x74\x49\x74\x65\x6D\x28\x73\x74\x6F\x72\x61\x67\x65\x4B\x65\x79\x2C\x20\x22\x22\x20\x2B\x20\x74\x61\x72\x67\x65\x74\x2E\x4F\x70\x74\x73\x2E\x52\x61\x74\x65\x50\x65\x72\x53\x65\x63\x6F\x6E\x64\x29\x3B\x0A\x7D\x0A\x65\x78\x70\x6F\x72\x74\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x6C\x6F\x61\x64\x54\x61\x72\x67\x65\x74\x4F\x70\x74\x54\x69\x6D\x65\x6F\x75\x74\x28\x74\x61\x72\x67\x65\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x73\x74\x6F\x72\x61\x67\x65\x4B\x65\x79\x20\x3D\x20\x60\x24\x7B\x74\x61\x72\x67\x65\x74\x2E\x49\x44\x7D\x2E\x6F\x70\x74\x2E\x54\x69\x6D\x65\x6F\x75\x74\x60\x3B\x0A\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x76\x61\x6C\x20\x3D\x20\x77\x69\x6E\x64\x6F\x77\x2E\x6C\x6F\x63\x61\x6C\x53\x74\x6F\x72\x61\x67\x65\x2E\x67\x65\x74\x49\x74\x65\x6D\x28\x73\x74\x6F\x72\x61\x67\x65\x4B\x65\x79\x29\x3B\x0A\x20\x20\x20\x20\x69\x66\x20\x28\x76\x61\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x2B\x76\x61\x6C\x20\x2F\x20\x31\x65\x39\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x74\x61\x72\x67\x65\x74\x2E\x4F\x70\x74\x73\x2E\x54\x69\x6D\x65\x6F\x75\x74\x20\x2F\x20\x31\x65\x39\x3B\x0A\x7D\x0A\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x73\x61\x76\x65\x54\x61\x72\x67\x65\x74\x4F\x70\x74\x54\x69\x6D\x65\x6F\x75\x74\x28\x74\x61\x72\x67\x65\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x73\x74\x6F\x72\x61\x67\x65\x4B\x65\x79\x20\x3D\x20\x60\x24\x7B\x74\x61\x72\x67\x65\x74\x2E\x49\x44\x7D\x2E\x6F\x70\x74\x2E\x54\x69\x6D\x65\x6F\x75\x74\x60\x3B\x0A\x20\x20\x20\x20\x77\x69\x6E\x64\x6F\x77\x2E\x6C\x6F\x63\x61\x6C\x53\x74\x6F\x72\x61\x67\x65\x2E\x73\x65\x74\x49\x74\x65\x6D\x28\x73\x74\x6F\x72\x61\x67\x65\x4B\x65\x79\x2C\x20\x22\x22\x20\x2B\x20\x74\x61\x72\x67\x65\x74\x2E\x4F\x70\x74\x73\x2E\x54\x69\x6D\x65\x6F\x75\x74\x29\x3B\x0A\x7D\x0A\x2F\x2F\x0A\x2F\x2F\x20\x6C\x6F\x61\x64\x54\x61\x72\x67\x65\x74\x56\x61\x72\x20\x67\x65\x74\x20\x74\x61\x72\x67\x65\x74\x20\x76\x61\x72\x69\x61\x62\x6C\x65\x20\x66\x72\x6F\x6D\x20\x6C\x6F\x63\x61\x6C\x20\x73\x74\x6F\x72\x61\x67\x65\x20\x6F\x72\x20\x72\x65\x74\x75\x72\x6E\x20\x74\x68\x65\x20\x6F\x72\x69\x67\x69\x6E\x61\x6C\x0A\x2F\x2F\x20\x76\x61\x6C\x75\x65\x2E\x0A\x2F\x2F\x0A\x65\x78\x70\x6F\x72\x74\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x6C\x6F\x61\x64\x54\x61\x72\x67\x65\x74\x56\x61\x72\x28\x74\x61\x72\x67\x65\x74\x2C\x20\x6B\x65\x79\x29\x20\x7B\x0A\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x73\x74\x6F\x72\x61\x67\x65\x4B\x65\x79\x20\x3D\x20\x60\x24\x7B\x74\x61\x72\x67\x65\x74\x2E\x49\x44\x7D\x2E\x76\x61\x72\x2E\x24\x7B\x6B\x65\x79\x7D\x60\x3B\x0A\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x76\x61\x6C\x20\x3D\x20\x77\x69\x6E\x64\x6F\x77\x2E\x6C\x6F\x63\x61\x6C\x53\x74\x6F\x72\x61\x67\x65\x2E\x67\x65\x74\x49\x74\x65\x6D\x28\x73\x74\x6F\x72\x61\x67\x65\x4B\x65\x79\x29\x3B\x0A\x20\x20\x20\x20\x69\x66\x20\x28\x76\x61\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x76\x61\x6C\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x74\x76\x61\x72\x20\x3D\x20\x74\x61\x72\x67\x65\x74\x2E\x56\x61\x72\x73\x5B\x6B\x65\x79\x5D\x3B\x0A\x20\x20\x20\x20\x69\x66\x20\x28\x74\x76\x61\x72\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x74\x76\x61\x72\x2E\x76\x61\x6C\x75\x65\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x22\x22\x3B\x0A\x7D\x0A\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x73\x61\x76\x65\x54\x61\x72\x67\x65\x74\x56\x61\x72\x28\x74\x61\x72\x67\x65\x74\x2C\x20\x6B\x65\x79\x2C\x20\x76\x61\x6C\x75\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x73\x74\x6F\x72\x61\x67\x65\x4B\x65\x79\x20\x3D\x20\x60\x24\x7B\x74\x61\x72\x67\x65\x74\x2E\x49\x44\x7D\x2E\x76\x61\x72\x2E\x24\x7B\x6B\x65\x79\x7D\x60\x3B\x0A\x20\x20\x20\x20\x77\x69\x6E\x64\x6F\x77\x2E\x6C\x6F\x63\x61\x6C\x53\x74\x6F\x72\x61\x67\x65\x2E\x73\x65\x74\x49\x74\x65\x6D\x28\x73\x74\x6F\x72\x61\x67\x65\x4B\x65\x79\x2C\x20\x76\x61\x6C\x75\x65\x29\x3B\x0A\x7D\x0A\x2F\x2F\x0A\x2F\x2F\x20\x6C\x6F\x61\x64\x57\x73\x54\x61\x72\x67\x65\x74\x48\x65\x61\x64\x65\x72\x20\x67\x65\x74\x20\x74\x68\x65\x20\x57\x65\x62\x53\x6F\x63\x6B\x65\x74\x54\x61\x72\x67\x65\x74\x20\x66\x72\x6F\x6D\x20\x6C\x6F\x63\x61\x6C\x20\x73\x74\x6F\x72\x61\x67\x65\x20\x62\x79\x20\x6B\x65\x79\x2E\x0A\x2F\x2F\x0A\x65\x78\x70\x6F\x72\x74\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x6C\x6F\x61\x64\x57\x73\x54\x61\x72\x67\x65\x74\x48\x65\x61\x64\x65\x72\x28\x74\x61\x72\x67\x65\x74\x2C\x20\x77\x73\x54\x61\x72\x67\x65\x74\x2C\x20\x6B\x65\x79\x29\x20\x7B\x0A\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x73\x74\x6F\x72\x61\x67\x65\x4B\x65\x79\x20\x3D\x20\x60\x24\x7B\x74\x61\x72\x67\x65\x74\x2E\x49\x44\x7D\x2E\x77\x73\x2E\x24\x7B\x77\x73\x54\x61\x72\x67\x65\x74\x2E\x49\x44\x7D\x2E\x68\x65\x61\x64\x65\x72\x2E\x24\x7B\x6B\x65\x79\x7D\x60\x3B\x0A\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x76\x61\x6C\x20\x3D\x20\x77\x69\x6E\x64\x6F\x77\x2E\x6C\x6F\x63\x61\x6C\x53\x74\x6F\x72\x61\x67\x65\x2E\x67\x65\x74\x49\x74\x65\x6D\x28\x73\x74\x6F\x72\x61\x67\x65\x4B\x65\x79\x29\x3B\x0A\x20\x20\x20\x20\x69\x66\x20\x28\x76\x61\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x76\x61\x6C\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x68\x65\x61\x64\x65\x72\x20\x3D\x20\x77\x73\x54\x61\x72\x67\x65\x74\x2E\x48\x65\x61\x64\x65\x72\x73\x5B\x6B\x65\x79\x5D\x3B\x0A\x20\x20\x20\x20\x69\x66\x20\x28\x68\x65\x61\x64\x65\x72\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x68\x65\x61\x64\x65\x72\x2E\x76\x61\x6C\x75\x65\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x22\x22\x3B\x0A\x7D\x0A\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x73\x61\x76\x65\x57\x73\x54\x61\x72\x67\x65\x74\x48\x65\x61\x64\x65\x72\x28\x74\x61\x72\x67\x65\x74\x2C\x20\x77\x73\x54\x61\x72\x67\x65\x74\x2C\x20\x6B\x65\x79\x2C\x20\x76\x61\x6C\x75\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x73\x74\x6F\x72\x61\x67\x65\x4B\x65\x79\x20\x3D\x20\x60\x24\x7B\x74\x61\x72\x67\x65\x74\x2E\x49\x44\x7D\x2E\x77\x73\x2E\x24\x7B\x77\x73\x54\x61\x72\x67\x65\x74\x2E\x49\x44\x7D\x2E\x68\x65\x61\x64\x65\x72\x2E\x24\x7B\x6B\x65\x79\x7D\x60\x3B\x0A\x20\x20\x20\x20\x77\x69\x6E\x64\x6F\x77\x2E\x6C\x6F\x63\x61\x6C\x53\x74\x6F\x72\x61\x67\x65\x2E\x73\x65\x74\x49\x74\x65\x6D\x28\x73\x74\x6F\x72\x61\x67\x65\x4B\x65\x79\x2C\x20\x76\x61\x6C\x75\x65\x29\x3B\x0A\x7D\x0A\x2F\x2F\x0A\x2F\x2F\x20\x6C\x6F\x61\x64\x57\x73\x54\x61\x72\x67\x65\x74\x50\x61\x72\x61\x6D\x20\x67\x65\x74\x20\x74\x68\x65\x20\x57\x65\x62\x53\x6F\x63\x6B\x65\x74\x54\x61\x72\x67\x65\x74\x20\x70\x61\x72\x61\x6D\x65\x74\x65\x72\x20\x66\x72\x6F\x6D\x20\x6C\x6F\x63\x61\x6C\x20\x73\x74\x6F\x72\x61\x67\x65\x20\x6F\x72\x0A\x2F\x2F\x20\x72\x65\x74\x75\x72\x6E\x20\x74\x68\x65\x20\x6F\x6E\x65\x20\x66\x72\x6F\x6D\x20\x77\x73\x54\x61\x72\x67\x65\x74\x20\x69\x66\x20\x69\x74\x73\x20\x6E\x6F\x74\x20\x65\x78\x69\x73\x74\x2E\x0A\x2F\x2F\x0A\x65\x78\x70\x6F\x72\x74\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x6C\x6F\x61\x64\x57\x73\x54\x61\x72\x67\x65\x74\x50\x61\x72\x61\x6D\x28\x74\x61\x72\x67\x65\x74\x2C\x20\x77\x73\x54\x61\x72\x67\x65\x74\x2C\x20\x6B\x65\x79\x29\x20\x7B\x0A\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x73\x74\x6F\x72\x61\x67\x65\x4B\x65\x79\x20\x3D\x20\x60\x24\x7B\x74\x61\x72\x67\x65\x74\x2E\x49\x44\x7D\x2E\x77\x73\x2E\x24\x7B\x77\x73\x54\x61\x72\x67\x65\x74\x2E\x49\x44\x7D\x2E\x70\x61\x72\x61\x6D\x2E\x24\x7B\x6B\x65\x79\x7D\x60\x3B\x0A\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x76\x61\x6C\x20\x3D\x20\x77\x69\x6E\x64\x6F\x77\x2E\x6C\x6F\x63\x61\x6C\x53\x74\x6F\x72\x61\x67\x65\x2E\x67\x65\x74\x49\x74\x65\x6D\x28\x73\x74\x6F\x72\x61\x67\x65\x4B\x65\x79\x29\x3B\x0A\x20\x20\x20\x20\x69\x66\x20\x28\x76\x61\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x76\x61\x6C\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x70\x61\x72\x61\x6D\x20\x3D\x20\x77\x73\x54\x61\x72\x67\x65\x74\x2E\x50\x61\x72\x61\x6D\x73\x5B\x6B\x65\x79\x5D\x3B\x0A\x20\x20\x20\x20\x69\x66\x20\x28\x70\x61\x72\x61\x6D\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x70\x61\x72\x61\x6D\x2E\x76\x61\x6C\x75\x65\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x22\x22\x3B\x0A\x7D\x0A\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x73\x61\x76\x65\x57\x73\x54\x61\x72\x67\x65\x74\x50\x61\x72\x61\x6D\x28\x74\x61\x72\x67\x65\x74\x2C\x20\x77\x73\x54\x61\x72\x67\x65\x74\x2C\x20\x6B\x65\x79\x2C\x20\x76\x61\x6C\x75\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x73\x74\x6F\x72\x61\x67\x65\x4B\x65\x79\x20\x3D\x20\x60\x24\x7B\x74\x61\x72\x67\x65\x74\x2E\x49\x44\x7D\x2E\x77\x73\x2E\x24\x7B\x77\x73\x54\x61\x72\x67\x65\x74\x2E\x49\x44\x7D\x2E\x70\x61\x72\x61\x6D\x2E\x24\x7B\x6B\x65\x79\x7D\x60\x3B\x0A\x20\x20\x20\x20\x77\x69\x6E\x64\x6F\x77\x2E\x6C\x6F\x63\x61\x6C\x53\x74\x6F\x72\x61\x67\x65\x2E\x73\x65\x74\x49\x74\x65\x6D\x28\x73\x74\x6F\x72\x61\x67\x65\x4B\x65\x79\x2C\x20\x76\x61\x6C\x75\x65\x29\x3B\x0A\x7D\x0A\x2F\x2F\x0A\x2F\x2F\x20\x73\x61\x76\x65\x20\x74\x68\x65\x20\x76\x61\x72\x69\x61\x62\x6C\x65\x73\x20\x6F\x6E\x20\x74\x68\x65\x20\x54\x61\x72\x67\x65\x74\x2C\x20\x50\x61\x72\x61\x6D\x73\x20\x61\x6E\x64\x20\x48\x65\x61\x64\x65\x72\x73\x20\x6F\x6E\x20\x48\x54\x54\x50\x54\x61\x72\x67\x65\x74\x20\x6F\x72\x0A\x2F\x2F\x20\x57\x65\x62\x53\x6F\x63\x6B\x65\x74\x20\x74\x6F\x20\x6C\x6F\x63\x61\x6C\x20\x73\x74\x6F\x72\x61\x67\x65\x2E\x0A\x2F\x2F\x0A\x65\x78\x70\x6F\x72\x74\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x73\x61\x76\x65\x28\x74\x61\x72\x67\x65\x74\x2C\x20\x68\x74\x74\x70\x54\x61\x72\x67\x65\x74\x2C\x20\x77\x73\x54\x61\x72\x67\x65\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x73\x61\x76\x65\x54\x61\x72\x67\x65\x74\x4F\x70\x74\x44\x75\x72\x61\x74\x69\x6F\x6E\x28\x74\x61\x72\x67\x65\x74\x29\x3B\x0A\x20\x20\x20\x20\x73\x61\x76\x65\x54\x61\x72\x67\x65\x74\x4F\x70\x74\x52\x61\x74\x65\x50\x65\x72\x53\x65\x63\x6F\x6E\x64\x28\x74\x61\x72\x67\x65\x74\x29\x3B\x0A\x20\x20\x20\x20\x73\x61\x76\x65\x54\x61\x72\x67\x65\x74\x4F\x70\x74\x54\x69\x6D\x65\x6F\x75\x74\x28\x74\x61\x72\x67\x65\x74\x29\x3B\x0A\x20\x20\x20\x20\x66\x6F\x72\x20\x28\x63\x6F\x6E\x73\x74\x20\x5B\x6B\x2C\x20\x66\x69\x5D\x20\x6F\x66\x20\x4F\x62\x6A\x65\x63\x74\x2E\x65\x6E\x74\x72\x69\x65\x73\x28\x74\x61\x72\x67\x65\x74\x2E\x56\x61\x72\x73\x29\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x73\x61\x76\x65\x54\x61\x72\x67\x65\x74\x56\x61\x72\x28\x74\x61\x72\x67\x65\x74\x2C\x20\x6B\x2C\x20\x66\x69\x2E\x76\x61\x6C\x75\x65\x29\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x69\x66\x20\x28\x68\x74\x74\x70\x54\x61\x72\x67\x65\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x66\x6F\x72\x20\x28\x63\x6F\x6E\x73\x74\x20\x5B\x6B\x2C\x20\x66\x69\x5D\x20\x6F\x66\x20\x4F\x62\x6A\x65\x63\x74\x2E\x65\x6E\x74\x72\x69\x65\x73\x28\x68\x74\x74\x70\x54\x61\x72\x67\x65\x74\x2E\x48\x65\x61\x64\x65\x72\x73\x29\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x73\x61\x76\x65\x48\x54\x54\x50\x54\x61\x72\x67\x65\x74\x48\x65\x61\x64\x65\x72\x28\x74\x61\x72\x67\x65\x74\x2C\x20\x68\x74\x74\x70\x54\x61\x72\x67\x65\x74\x2C\x20\x6B\x2C\x20\x66\x69\x2E\x76\x61\x6C\x75\x65\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\x63\x6F\x6E\x73\x74\x20\x5B\x6B\x2C\x20\x66\x69\x5D\x20\x6F\x66\x20\x4F\x62\x6A\x65\x63\x74\x2E\x65\x6E\x74\x72\x69\x65\x73\x28\x68\x74\x74\x70\x54\x61\x72\x67\x65\x74\x2E\x50\x61\x72\x61\x6D\x73\x29\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x73\x61\x76\x65\x48\x54\x54\x50\x54\x61\x72\x67\x65\x74\x50\x61\x72\x61\x6D\x28\x74\x61\x72\x67\x65\x74\x2C\x20\x68\x74\x74\x70\x54\x61\x72\x67\x65\x74\x2C\x20\x6B\x2C\x20\x66\x69\x2E\x76\x61\x6C\x75\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x69\x66\x20\x28\x77\x73\x54\x61\x72\x67\x65\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x66\x6F\x72\x20\x28\x63\x6F\x6E\x73\x74\x20\x5B\x6B\x2C\x20\x66\x69\x5D\x20\x6F\x66\x20\x4F\x62\x6A\x65\x63\x74\x2E\x65\x6E\x74\x72\x69\x65\x73\x28\x77\x73\x54\x61\x72\x67\x65\x74\x2E\x48\x65\x61\x64\x65\x72\x73\x29\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x73\x61\x76\x65\x57\x73\x54\x61\x72\x67\x65\x74\x48\x65\x61\x64\x65\x72\x28\x74\x61\x72\x67\x65\x74\x2C\x20\x77\x73\x54\x61\x72\x67\x65\x74\x2C\x20\x6B\x2C\x20\x66\x69\x2E\x76\x61\x6C\x75\x65\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\x63\x6F\x6E\x73\x74\x20\x5B\x6B\x2C\x20\x66\x69\x5D\x20\x6F\x66\x20\x4F\x62\x6A\x65\x63\x74\x2E\x65\x6E\x74\x72\x69\x65\x73\x28\x77\x73\x54\x61\x72\x67\x65\x74\x2E\x50\x61\x72\x61\x6D\x73\x29\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x73\x61\x76\x65\x57\x73\x54\x61\x72\x67\x65\x74\x50\x61\x72\x61\x6D\x28\x74\x61\x72\x67\x65\x74\x2C\x20\x77\x73\x54\x61\x72\x67\x65\x74\x2C\x20\x6B\x2C\x20\x66\x69\x2E\x76\x61\x6C\x75\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x7D\x0A\x7D\x0A"), } node.SetMode(420) - node.SetModTimeUnix(1707037266, 95128359) + node.SetModTimeUnix(1707078138, 299192925) node.SetName("functions.js") - node.SetSize(7954) + node.SetSize(8927) return node } @@ -184,7 +184,7 @@ func generate__www_http_target_js() *memfs.Node { Content: []byte("\x2F\x2F\x20\x53\x50\x44\x58\x2D\x46\x69\x6C\x65\x43\x6F\x70\x79\x72\x69\x67\x68\x74\x54\x65\x78\x74\x3A\x20\x32\x30\x32\x31\x20\x4D\x2E\x20\x53\x68\x75\x6C\x68\x61\x6E\x20\x3C\x6D\x73\x40\x6B\x69\x6C\x61\x62\x69\x74\x2E\x69\x6E\x66\x6F\x3E\x0A\x2F\x2F\x20\x53\x50\x44\x58\x2D\x4C\x69\x63\x65\x6E\x73\x65\x2D\x49\x64\x65\x6E\x74\x69\x66\x69\x65\x72\x3A\x20\x47\x50\x4C\x2D\x33\x2E\x30\x2D\x6F\x72\x2D\x6C\x61\x74\x65\x72\x0A\x69\x6D\x70\x6F\x72\x74\x20\x7B\x20\x57\x75\x69\x49\x6E\x70\x75\x74\x53\x65\x6C\x65\x63\x74\x20\x7D\x20\x66\x72\x6F\x6D\x20\x22\x2E\x2F\x77\x75\x69\x2F\x69\x6E\x70\x75\x74\x2F\x73\x65\x6C\x65\x63\x74\x2E\x6A\x73\x22\x3B\x0A\x69\x6D\x70\x6F\x72\x74\x20\x7B\x20\x57\x75\x69\x49\x6E\x70\x75\x74\x53\x74\x72\x69\x6E\x67\x20\x7D\x20\x66\x72\x6F\x6D\x20\x22\x2E\x2F\x77\x75\x69\x2F\x69\x6E\x70\x75\x74\x2F\x73\x74\x72\x69\x6E\x67\x2E\x6A\x73\x22\x3B\x0A\x69\x6D\x70\x6F\x72\x74\x20\x7B\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x46\x6F\x72\x6D\x49\x6E\x70\x75\x74\x2C\x20\x6C\x6F\x61\x64\x48\x54\x54\x50\x54\x61\x72\x67\x65\x74\x48\x65\x61\x64\x65\x72\x2C\x20\x6C\x6F\x61\x64\x48\x54\x54\x50\x54\x61\x72\x67\x65\x74\x50\x61\x72\x61\x6D\x2C\x20\x7D\x20\x66\x72\x6F\x6D\x20\x22\x2E\x2F\x66\x75\x6E\x63\x74\x69\x6F\x6E\x73\x2E\x6A\x73\x22\x3B\x0A\x69\x6D\x70\x6F\x72\x74\x20\x7B\x20\x43\x4C\x41\x53\x53\x5F\x49\x4E\x50\x55\x54\x2C\x20\x43\x4C\x41\x53\x53\x5F\x49\x4E\x50\x55\x54\x5F\x4C\x41\x42\x45\x4C\x2C\x20\x7D\x20\x66\x72\x6F\x6D\x20\x22\x2E\x2F\x69\x6E\x74\x65\x72\x66\x61\x63\x65\x2E\x6A\x73\x22\x3B\x0A\x63\x6F\x6E\x73\x74\x20\x43\x4C\x41\x53\x53\x5F\x48\x54\x54\x50\x5F\x54\x41\x52\x47\x45\x54\x20\x3D\x20\x22\x68\x74\x74\x70\x5F\x74\x61\x72\x67\x65\x74\x22\x3B\x0A\x63\x6F\x6E\x73\x74\x20\x43\x4C\x41\x53\x53\x5F\x48\x54\x54\x50\x5F\x54\x41\x52\x47\x45\x54\x5F\x41\x43\x54\x49\x4F\x4E\x53\x20\x3D\x20\x22\x68\x74\x74\x70\x5F\x74\x61\x72\x67\x65\x74\x5F\x61\x63\x74\x69\x6F\x6E\x73\x22\x3B\x0A\x63\x6F\x6E\x73\x74\x20\x43\x4C\x41\x53\x53\x5F\x48\x54\x54\x50\x5F\x54\x41\x52\x47\x45\x54\x5F\x41\x54\x54\x41\x43\x4B\x5F\x52\x45\x53\x55\x4C\x54\x20\x3D\x20\x22\x68\x74\x74\x70\x5F\x74\x61\x72\x67\x65\x74\x5F\x61\x74\x74\x61\x63\x6B\x5F\x72\x65\x73\x75\x6C\x74\x22\x3B\x0A\x63\x6F\x6E\x73\x74\x20\x43\x4C\x41\x53\x53\x5F\x48\x54\x54\x50\x5F\x54\x41\x52\x47\x45\x54\x5F\x41\x54\x54\x41\x43\x4B\x5F\x52\x45\x53\x55\x4C\x54\x5F\x41\x43\x54\x49\x4F\x4E\x53\x20\x3D\x20\x22\x68\x74\x74\x70\x5F\x74\x61\x72\x67\x65\x74\x5F\x61\x74\x74\x61\x63\x6B\x5F\x72\x65\x73\x75\x6C\x74\x5F\x61\x63\x74\x69\x6F\x6E\x73\x22\x3B\x0A\x63\x6F\x6E\x73\x74\x20\x43\x4C\x41\x53\x53\x5F\x48\x54\x54\x50\x5F\x54\x41\x52\x47\x45\x54\x5F\x49\x4E\x50\x55\x54\x20\x3D\x20\x22\x68\x74\x74\x70\x5F\x74\x61\x72\x67\x65\x74\x5F\x69\x6E\x70\x75\x74\x22\x3B\x0A\x63\x6F\x6E\x73\x74\x20\x43\x4C\x41\x53\x53\x5F\x48\x54\x54\x50\x5F\x54\x41\x52\x47\x45\x54\x5F\x49\x4E\x50\x55\x54\x5F\x48\x45\x41\x44\x45\x52\x20\x3D\x20\x22\x68\x74\x74\x70\x5F\x74\x61\x72\x67\x65\x74\x5F\x69\x6E\x70\x75\x74\x5F\x68\x65\x61\x64\x65\x72\x22\x3B\x0A\x63\x6F\x6E\x73\x74\x20\x43\x4C\x41\x53\x53\x5F\x48\x54\x54\x50\x5F\x54\x41\x52\x47\x45\x54\x5F\x49\x4E\x50\x55\x54\x5F\x50\x41\x52\x41\x4D\x53\x20\x3D\x20\x22\x68\x74\x74\x70\x5F\x74\x61\x72\x67\x65\x74\x5F\x69\x6E\x70\x75\x74\x5F\x70\x61\x72\x61\x6D\x73\x22\x3B\x0A\x63\x6F\x6E\x73\x74\x20\x43\x4C\x41\x53\x53\x5F\x48\x54\x54\x50\x5F\x54\x41\x52\x47\x45\x54\x5F\x4F\x55\x54\x5F\x41\x54\x54\x41\x43\x4B\x20\x3D\x20\x22\x68\x74\x74\x70\x5F\x74\x61\x72\x67\x65\x74\x5F\x6F\x75\x74\x5F\x61\x74\x74\x61\x63\x6B\x22\x3B\x0A\x63\x6F\x6E\x73\x74\x20\x43\x4C\x41\x53\x53\x5F\x48\x54\x54\x50\x5F\x54\x41\x52\x47\x45\x54\x5F\x4F\x55\x54\x5F\x4D\x4F\x4E\x4F\x20\x3D\x20\x22\x68\x74\x74\x70\x5F\x74\x61\x72\x67\x65\x74\x5F\x6F\x75\x74\x5F\x6D\x6F\x6E\x6F\x22\x3B\x0A\x63\x6F\x6E\x73\x74\x20\x43\x4C\x41\x53\x53\x5F\x48\x54\x54\x50\x5F\x54\x41\x52\x47\x45\x54\x5F\x4F\x55\x54\x5F\x52\x55\x4E\x20\x3D\x20\x22\x68\x74\x74\x70\x5F\x74\x61\x72\x67\x65\x74\x5F\x6F\x75\x74\x5F\x72\x75\x6E\x22\x3B\x0A\x63\x6F\x6E\x73\x74\x20\x43\x4F\x4E\x54\x45\x4E\x54\x5F\x54\x59\x50\x45\x5F\x4A\x53\x4F\x4E\x20\x3D\x20\x22\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2F\x6A\x73\x6F\x6E\x22\x3B\x0A\x65\x78\x70\x6F\x72\x74\x20\x63\x6C\x61\x73\x73\x20\x48\x54\x54\x50\x54\x61\x72\x67\x65\x74\x20\x7B\x0A\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x72\x75\x63\x74\x6F\x72\x28\x74\x72\x75\x6E\x6B\x73\x2C\x20\x74\x61\x72\x67\x65\x74\x2C\x20\x6F\x70\x74\x73\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x74\x72\x75\x6E\x6B\x73\x20\x3D\x20\x74\x72\x75\x6E\x6B\x73\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x74\x61\x72\x67\x65\x74\x20\x3D\x20\x74\x61\x72\x67\x65\x74\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\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\x42\x75\x74\x74\x6F\x6E\x52\x75\x6E\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\x62\x75\x74\x74\x6F\x6E\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x42\x75\x74\x74\x6F\x6E\x41\x74\x74\x61\x63\x6B\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\x62\x75\x74\x74\x6F\x6E\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x52\x65\x71\x75\x65\x73\x74\x49\x6E\x70\x75\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\x64\x69\x76\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x4F\x75\x74\x52\x65\x71\x75\x65\x73\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\x64\x69\x76\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x4F\x75\x74\x52\x65\x73\x70\x6F\x6E\x73\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\x64\x69\x76\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x4F\x75\x74\x52\x65\x73\x70\x6F\x6E\x73\x65\x42\x6F\x64\x79\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\x4F\x75\x74\x41\x74\x74\x61\x63\x6B\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\x66\x69\x65\x6C\x64\x73\x65\x74\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x4F\x75\x74\x41\x74\x74\x61\x63\x6B\x52\x65\x73\x75\x6C\x74\x73\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\x6F\x70\x74\x73\x2E\x49\x44\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\x48\x54\x54\x50\x5F\x54\x41\x52\x47\x45\x54\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x65\x6C\x54\x69\x74\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\x68\x33\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x54\x69\x74\x6C\x65\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x6F\x70\x74\x73\x2E\x4E\x61\x6D\x65\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\x65\x6C\x54\x69\x74\x6C\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x67\x65\x6E\x65\x72\x61\x74\x65\x41\x63\x74\x69\x6F\x6E\x73\x28\x65\x6C\x54\x69\x74\x6C\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x67\x65\x6E\x65\x72\x61\x74\x65\x48\x69\x6E\x74\x28\x74\x68\x69\x73\x2E\x65\x6C\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x67\x65\x6E\x65\x72\x61\x74\x65\x49\x6E\x70\x75\x74\x28\x74\x68\x69\x73\x2E\x65\x6C\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x67\x65\x6E\x65\x72\x61\x74\x65\x4F\x75\x74\x70\x75\x74\x28\x74\x68\x69\x73\x2E\x65\x6C\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x67\x65\x6E\x65\x72\x61\x74\x65\x4F\x75\x74\x70\x75\x74\x41\x74\x74\x61\x63\x6B\x28\x74\x68\x69\x73\x2E\x65\x6C\x29\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x41\x63\x74\x69\x6F\x6E\x73\x28\x70\x61\x72\x65\x6E\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x65\x6C\x41\x63\x74\x69\x6F\x6E\x73\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\x65\x6C\x41\x63\x74\x69\x6F\x6E\x73\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x43\x4C\x41\x53\x53\x5F\x48\x54\x54\x50\x5F\x54\x41\x52\x47\x45\x54\x5F\x41\x43\x54\x49\x4F\x4E\x53\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x42\x75\x74\x74\x6F\x6E\x52\x75\x6E\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x22\x52\x75\x6E\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x42\x75\x74\x74\x6F\x6E\x52\x75\x6E\x2E\x6F\x6E\x63\x6C\x69\x63\x6B\x20\x3D\x20\x28\x29\x20\x3D\x3E\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6F\x6E\x43\x6C\x69\x63\x6B\x52\x75\x6E\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x41\x63\x74\x69\x6F\x6E\x73\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x74\x68\x69\x73\x2E\x65\x6C\x42\x75\x74\x74\x6F\x6E\x52\x75\x6E\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x41\x6C\x6C\x6F\x77\x41\x74\x74\x61\x63\x6B\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x42\x75\x74\x74\x6F\x6E\x41\x74\x74\x61\x63\x6B\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x22\x41\x74\x74\x61\x63\x6B\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x42\x75\x74\x74\x6F\x6E\x41\x74\x74\x61\x63\x6B\x2E\x6F\x6E\x63\x6C\x69\x63\x6B\x20\x3D\x20\x28\x29\x20\x3D\x3E\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\x6E\x43\x6C\x69\x63\x6B\x41\x74\x74\x61\x63\x6B\x28\x29\x3B\x0A\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\x65\x6C\x41\x63\x74\x69\x6F\x6E\x73\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x74\x68\x69\x73\x2E\x65\x6C\x42\x75\x74\x74\x6F\x6E\x41\x74\x74\x61\x63\x6B\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x70\x61\x72\x65\x6E\x74\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x65\x6C\x41\x63\x74\x69\x6F\x6E\x73\x29\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x48\x69\x6E\x74\x28\x70\x61\x72\x65\x6E\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x21\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x48\x69\x6E\x74\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\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x65\x6C\x48\x69\x6E\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\x70\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x48\x69\x6E\x74\x2E\x69\x6E\x6E\x65\x72\x48\x54\x4D\x4C\x20\x3D\x20\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x48\x69\x6E\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x70\x61\x72\x65\x6E\x74\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x65\x6C\x48\x69\x6E\x74\x29\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x49\x6E\x70\x75\x74\x28\x70\x61\x72\x65\x6E\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x52\x65\x71\x75\x65\x73\x74\x49\x6E\x70\x75\x74\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x43\x4C\x41\x53\x53\x5F\x48\x54\x54\x50\x5F\x54\x41\x52\x47\x45\x54\x5F\x49\x4E\x50\x55\x54\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x67\x65\x6E\x65\x72\x61\x74\x65\x52\x65\x71\x75\x65\x73\x74\x4D\x65\x74\x68\x6F\x64\x28\x74\x68\x69\x73\x2E\x65\x6C\x52\x65\x71\x75\x65\x73\x74\x49\x6E\x70\x75\x74\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x67\x65\x6E\x65\x72\x61\x74\x65\x52\x65\x71\x75\x65\x73\x74\x43\x6F\x6E\x74\x65\x6E\x74\x54\x79\x70\x65\x28\x74\x68\x69\x73\x2E\x65\x6C\x52\x65\x71\x75\x65\x73\x74\x49\x6E\x70\x75\x74\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x67\x65\x6E\x65\x72\x61\x74\x65\x52\x65\x71\x75\x65\x73\x74\x48\x65\x61\x64\x65\x72\x73\x28\x74\x68\x69\x73\x2E\x65\x6C\x52\x65\x71\x75\x65\x73\x74\x49\x6E\x70\x75\x74\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x67\x65\x6E\x65\x72\x61\x74\x65\x52\x65\x71\x75\x65\x73\x74\x50\x61\x72\x61\x6D\x65\x74\x65\x72\x73\x28\x74\x68\x69\x73\x2E\x65\x6C\x52\x65\x71\x75\x65\x73\x74\x49\x6E\x70\x75\x74\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x70\x61\x72\x65\x6E\x74\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x74\x68\x69\x73\x2E\x65\x6C\x52\x65\x71\x75\x65\x73\x74\x49\x6E\x70\x75\x74\x29\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x52\x65\x71\x75\x65\x73\x74\x4D\x65\x74\x68\x6F\x64\x28\x70\x61\x72\x65\x6E\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x6D\x20\x3D\x20\x22\x22\x20\x2B\x20\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x4D\x65\x74\x68\x6F\x64\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x73\x65\x6C\x65\x63\x74\x4F\x70\x74\x73\x20\x3D\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6C\x61\x62\x65\x6C\x3A\x20\x22\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6E\x61\x6D\x65\x3A\x20\x22\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6F\x70\x74\x69\x6F\x6E\x73\x3A\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x47\x45\x54\x3A\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x6C\x75\x65\x3A\x20\x22\x30\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x73\x65\x6C\x65\x63\x74\x65\x64\x3A\x20\x6D\x20\x3D\x3D\x3D\x20\x22\x30\x22\x2C\x0A\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\x43\x4F\x4E\x4E\x45\x43\x54\x3A\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x6C\x75\x65\x3A\x20\x22\x31\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x73\x65\x6C\x65\x63\x74\x65\x64\x3A\x20\x6D\x20\x3D\x3D\x3D\x20\x22\x31\x22\x2C\x0A\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\x44\x45\x4C\x45\x54\x45\x3A\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x6C\x75\x65\x3A\x20\x22\x32\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x73\x65\x6C\x65\x63\x74\x65\x64\x3A\x20\x6D\x20\x3D\x3D\x3D\x20\x22\x32\x22\x2C\x0A\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\x48\x45\x41\x44\x3A\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x6C\x75\x65\x3A\x20\x22\x33\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x73\x65\x6C\x65\x63\x74\x65\x64\x3A\x20\x6D\x20\x3D\x3D\x3D\x20\x22\x33\x22\x2C\x0A\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\x4F\x50\x54\x49\x4F\x4E\x53\x3A\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x6C\x75\x65\x3A\x20\x22\x34\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x73\x65\x6C\x65\x63\x74\x65\x64\x3A\x20\x6D\x20\x3D\x3D\x3D\x20\x22\x34\x22\x2C\x0A\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\x50\x41\x54\x43\x48\x3A\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x6C\x75\x65\x3A\x20\x22\x35\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x73\x65\x6C\x65\x63\x74\x65\x64\x3A\x20\x6D\x20\x3D\x3D\x3D\x20\x22\x35\x22\x2C\x0A\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\x50\x4F\x53\x54\x3A\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x6C\x75\x65\x3A\x20\x22\x36\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x73\x65\x6C\x65\x63\x74\x65\x64\x3A\x20\x6D\x20\x3D\x3D\x3D\x20\x22\x36\x22\x2C\x0A\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\x50\x55\x54\x3A\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x6C\x75\x65\x3A\x20\x22\x37\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x73\x65\x6C\x65\x63\x74\x65\x64\x3A\x20\x6D\x20\x3D\x3D\x3D\x20\x22\x37\x22\x2C\x0A\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\x54\x52\x41\x43\x45\x3A\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x6C\x75\x65\x3A\x20\x22\x38\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x73\x65\x6C\x65\x63\x74\x65\x64\x3A\x20\x6D\x20\x3D\x3D\x3D\x20\x22\x38\x22\x2C\x0A\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\x7D\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x73\x5F\x64\x69\x73\x61\x62\x6C\x65\x64\x3A\x20\x21\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x49\x73\x43\x75\x73\x74\x6F\x6D\x69\x7A\x61\x62\x6C\x65\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6F\x6E\x43\x68\x61\x6E\x67\x65\x48\x61\x6E\x64\x6C\x65\x72\x3A\x20\x28\x5F\x2C\x20\x76\x61\x6C\x75\x65\x29\x20\x3D\x3E\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\x4D\x65\x74\x68\x6F\x64\x20\x3D\x20\x70\x61\x72\x73\x65\x49\x6E\x74\x28\x76\x61\x6C\x75\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x77\x75\x69\x52\x65\x71\x75\x65\x73\x74\x4D\x65\x74\x68\x6F\x64\x20\x3D\x20\x6E\x65\x77\x20\x57\x75\x69\x49\x6E\x70\x75\x74\x53\x65\x6C\x65\x63\x74\x28\x73\x65\x6C\x65\x63\x74\x4F\x70\x74\x73\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x70\x61\x74\x68\x4F\x70\x74\x73\x20\x3D\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6C\x61\x62\x65\x6C\x3A\x20\x77\x75\x69\x52\x65\x71\x75\x65\x73\x74\x4D\x65\x74\x68\x6F\x64\x2E\x65\x6C\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x6C\x75\x65\x3A\x20\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x50\x61\x74\x68\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6C\x61\x73\x73\x5F\x69\x6E\x70\x75\x74\x3A\x20\x43\x4C\x41\x53\x53\x5F\x49\x4E\x50\x55\x54\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6C\x61\x73\x73\x5F\x6C\x61\x62\x65\x6C\x3A\x20\x43\x4C\x41\x53\x53\x5F\x49\x4E\x50\x55\x54\x5F\x4C\x41\x42\x45\x4C\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x73\x5F\x64\x69\x73\x61\x62\x6C\x65\x64\x3A\x20\x21\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x49\x73\x43\x75\x73\x74\x6F\x6D\x69\x7A\x61\x62\x6C\x65\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6F\x6E\x43\x68\x61\x6E\x67\x65\x48\x61\x6E\x64\x6C\x65\x72\x3A\x20\x28\x70\x61\x74\x68\x29\x20\x3D\x3E\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\x50\x61\x74\x68\x20\x3D\x20\x70\x61\x74\x68\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x77\x75\x69\x52\x65\x71\x75\x65\x73\x74\x50\x61\x74\x68\x20\x3D\x20\x6E\x65\x77\x20\x57\x75\x69\x49\x6E\x70\x75\x74\x53\x74\x72\x69\x6E\x67\x28\x70\x61\x74\x68\x4F\x70\x74\x73\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x70\x61\x72\x65\x6E\x74\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x77\x75\x69\x52\x65\x71\x75\x65\x73\x74\x50\x61\x74\x68\x2E\x65\x6C\x29\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x52\x65\x71\x75\x65\x73\x74\x43\x6F\x6E\x74\x65\x6E\x74\x54\x79\x70\x65\x28\x70\x61\x72\x65\x6E\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x63\x74\x20\x3D\x20\x22\x22\x20\x2B\x20\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x52\x65\x71\x75\x65\x73\x74\x54\x79\x70\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x73\x65\x6C\x65\x63\x74\x4F\x70\x74\x73\x20\x3D\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6C\x61\x62\x65\x6C\x3A\x20\x22\x43\x6F\x6E\x74\x65\x6E\x74\x20\x74\x79\x70\x65\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6E\x61\x6D\x65\x3A\x20\x22\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6F\x70\x74\x69\x6F\x6E\x73\x3A\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22\x28\x6E\x6F\x6E\x65\x29\x22\x3A\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x6C\x75\x65\x3A\x20\x22\x30\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x73\x65\x6C\x65\x63\x74\x65\x64\x3A\x20\x63\x74\x20\x3D\x3D\x3D\x20\x22\x30\x22\x2C\x0A\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\x22\x28\x71\x75\x65\x72\x79\x29\x22\x3A\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x6C\x75\x65\x3A\x20\x22\x31\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x73\x65\x6C\x65\x63\x74\x65\x64\x3A\x20\x63\x74\x20\x3D\x3D\x3D\x20\x22\x31\x22\x2C\x0A\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\x22\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2F\x78\x2D\x77\x77\x77\x2D\x66\x6F\x72\x6D\x2D\x75\x72\x6C\x65\x6E\x63\x6F\x64\x65\x64\x22\x3A\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x6C\x75\x65\x3A\x20\x22\x32\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x73\x65\x6C\x65\x63\x74\x65\x64\x3A\x20\x63\x74\x20\x3D\x3D\x3D\x20\x22\x32\x22\x2C\x0A\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\x22\x6D\x75\x6C\x74\x69\x70\x61\x72\x74\x2F\x66\x6F\x72\x6D\x2D\x64\x61\x74\x61\x22\x3A\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x6C\x75\x65\x3A\x20\x22\x33\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x73\x65\x6C\x65\x63\x74\x65\x64\x3A\x20\x63\x74\x20\x3D\x3D\x3D\x20\x22\x33\x22\x2C\x0A\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\x22\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2F\x6A\x73\x6F\x6E\x22\x3A\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x6C\x75\x65\x3A\x20\x22\x34\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x73\x65\x6C\x65\x63\x74\x65\x64\x3A\x20\x63\x74\x20\x3D\x3D\x3D\x20\x22\x34\x22\x2C\x0A\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\x7D\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6C\x61\x73\x73\x5F\x69\x6E\x70\x75\x74\x3A\x20\x43\x4C\x41\x53\x53\x5F\x49\x4E\x50\x55\x54\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6C\x61\x73\x73\x5F\x6C\x61\x62\x65\x6C\x3A\x20\x43\x4C\x41\x53\x53\x5F\x49\x4E\x50\x55\x54\x5F\x4C\x41\x42\x45\x4C\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x73\x5F\x64\x69\x73\x61\x62\x6C\x65\x64\x3A\x20\x21\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x49\x73\x43\x75\x73\x74\x6F\x6D\x69\x7A\x61\x62\x6C\x65\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6F\x6E\x43\x68\x61\x6E\x67\x65\x48\x61\x6E\x64\x6C\x65\x72\x3A\x20\x28\x5F\x2C\x20\x76\x61\x6C\x75\x65\x29\x20\x3D\x3E\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\x52\x65\x71\x75\x65\x73\x74\x54\x79\x70\x65\x20\x3D\x20\x70\x61\x72\x73\x65\x49\x6E\x74\x28\x76\x61\x6C\x75\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x77\x75\x69\x52\x65\x71\x75\x65\x73\x74\x54\x79\x70\x65\x20\x3D\x20\x6E\x65\x77\x20\x57\x75\x69\x49\x6E\x70\x75\x74\x53\x65\x6C\x65\x63\x74\x28\x73\x65\x6C\x65\x63\x74\x4F\x70\x74\x73\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x70\x61\x72\x65\x6E\x74\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x77\x75\x69\x52\x65\x71\x75\x65\x73\x74\x54\x79\x70\x65\x2E\x65\x6C\x29\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x52\x65\x71\x75\x65\x73\x74\x48\x65\x61\x64\x65\x72\x73\x28\x70\x61\x72\x65\x6E\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x21\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x48\x65\x61\x64\x65\x72\x73\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\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x4F\x62\x6A\x65\x63\x74\x2E\x6B\x65\x79\x73\x28\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x48\x65\x61\x64\x65\x72\x73\x29\x2E\x6C\x65\x6E\x67\x74\x68\x20\x3D\x3D\x3D\x20\x30\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\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x77\x72\x61\x70\x70\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\x66\x69\x65\x6C\x64\x73\x65\x74\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x77\x72\x61\x70\x70\x65\x72\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x43\x4C\x41\x53\x53\x5F\x48\x54\x54\x50\x5F\x54\x41\x52\x47\x45\x54\x5F\x49\x4E\x50\x55\x54\x5F\x48\x45\x41\x44\x45\x52\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x6C\x65\x67\x65\x6E\x64\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\x6C\x65\x67\x65\x6E\x64\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x6C\x65\x67\x65\x6E\x64\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x22\x48\x65\x61\x64\x65\x72\x73\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x77\x72\x61\x70\x70\x65\x72\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x6C\x65\x67\x65\x6E\x64\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x66\x6F\x72\x20\x28\x63\x6F\x6E\x73\x74\x20\x5B\x6B\x65\x79\x2C\x20\x66\x69\x5D\x20\x6F\x66\x20\x4F\x62\x6A\x65\x63\x74\x2E\x65\x6E\x74\x72\x69\x65\x73\x28\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x48\x65\x61\x64\x65\x72\x73\x29\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x66\x69\x2E\x76\x61\x6C\x75\x65\x20\x3D\x20\x6C\x6F\x61\x64\x48\x54\x54\x50\x54\x61\x72\x67\x65\x74\x48\x65\x61\x64\x65\x72\x28\x74\x68\x69\x73\x2E\x74\x61\x72\x67\x65\x74\x2C\x20\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2C\x20\x6B\x65\x79\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x46\x6F\x72\x6D\x49\x6E\x70\x75\x74\x28\x77\x72\x61\x70\x70\x65\x72\x2C\x20\x66\x69\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x70\x61\x72\x65\x6E\x74\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x77\x72\x61\x70\x70\x65\x72\x29\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x52\x65\x71\x75\x65\x73\x74\x50\x61\x72\x61\x6D\x65\x74\x65\x72\x73\x28\x70\x61\x72\x65\x6E\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x21\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x50\x61\x72\x61\x6D\x73\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\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x4F\x62\x6A\x65\x63\x74\x2E\x6B\x65\x79\x73\x28\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x50\x61\x72\x61\x6D\x73\x29\x2E\x6C\x65\x6E\x67\x74\x68\x20\x3D\x3D\x3D\x20\x30\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\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x77\x72\x61\x70\x70\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\x66\x69\x65\x6C\x64\x73\x65\x74\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x77\x72\x61\x70\x70\x65\x72\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x43\x4C\x41\x53\x53\x5F\x48\x54\x54\x50\x5F\x54\x41\x52\x47\x45\x54\x5F\x49\x4E\x50\x55\x54\x5F\x50\x41\x52\x41\x4D\x53\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x74\x69\x74\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\x6C\x65\x67\x65\x6E\x64\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x69\x74\x6C\x65\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x22\x50\x61\x72\x61\x6D\x65\x74\x65\x72\x73\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x77\x72\x61\x70\x70\x65\x72\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x74\x69\x74\x6C\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x66\x6F\x72\x20\x28\x63\x6F\x6E\x73\x74\x20\x5B\x6B\x65\x79\x2C\x20\x66\x69\x5D\x20\x6F\x66\x20\x4F\x62\x6A\x65\x63\x74\x2E\x65\x6E\x74\x72\x69\x65\x73\x28\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x50\x61\x72\x61\x6D\x73\x29\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x66\x69\x2E\x76\x61\x6C\x75\x65\x20\x3D\x20\x6C\x6F\x61\x64\x48\x54\x54\x50\x54\x61\x72\x67\x65\x74\x50\x61\x72\x61\x6D\x28\x74\x68\x69\x73\x2E\x74\x61\x72\x67\x65\x74\x2C\x20\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2C\x20\x6B\x65\x79\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x46\x6F\x72\x6D\x49\x6E\x70\x75\x74\x28\x77\x72\x61\x70\x70\x65\x72\x2C\x20\x66\x69\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x70\x61\x72\x65\x6E\x74\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x77\x72\x61\x70\x70\x65\x72\x29\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x4F\x75\x74\x70\x75\x74\x28\x70\x61\x72\x65\x6E\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x77\x72\x61\x70\x70\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\x66\x69\x65\x6C\x64\x73\x65\x74\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x77\x72\x61\x70\x70\x65\x72\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x43\x4C\x41\x53\x53\x5F\x48\x54\x54\x50\x5F\x54\x41\x52\x47\x45\x54\x5F\x4F\x55\x54\x5F\x52\x55\x4E\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x74\x69\x74\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\x6C\x65\x67\x65\x6E\x64\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x69\x74\x6C\x65\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x22\x52\x75\x6E\x20\x6F\x75\x74\x70\x75\x74\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x62\x74\x6E\x43\x6C\x65\x61\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\x62\x75\x74\x74\x6F\x6E\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x62\x74\x6E\x43\x6C\x65\x61\x72\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x22\x43\x6C\x65\x61\x72\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x62\x74\x6E\x43\x6C\x65\x61\x72\x2E\x6F\x6E\x63\x6C\x69\x63\x6B\x20\x3D\x20\x28\x29\x20\x3D\x3E\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6F\x6E\x43\x6C\x69\x63\x6B\x43\x6C\x65\x61\x72\x4F\x75\x74\x70\x75\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x69\x74\x6C\x65\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x62\x74\x6E\x43\x6C\x65\x61\x72\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x4F\x75\x74\x52\x65\x71\x75\x65\x73\x74\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x43\x4C\x41\x53\x53\x5F\x48\x54\x54\x50\x5F\x54\x41\x52\x47\x45\x54\x5F\x4F\x55\x54\x5F\x4D\x4F\x4E\x4F\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x4F\x75\x74\x52\x65\x73\x70\x6F\x6E\x73\x65\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x43\x4C\x41\x53\x53\x5F\x48\x54\x54\x50\x5F\x54\x41\x52\x47\x45\x54\x5F\x4F\x55\x54\x5F\x4D\x4F\x4E\x4F\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x4F\x75\x74\x52\x65\x73\x70\x6F\x6E\x73\x65\x42\x6F\x64\x79\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x43\x4C\x41\x53\x53\x5F\x48\x54\x54\x50\x5F\x54\x41\x52\x47\x45\x54\x5F\x4F\x55\x54\x5F\x4D\x4F\x4E\x4F\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x77\x72\x61\x70\x70\x65\x72\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x74\x69\x74\x6C\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x77\x72\x61\x70\x70\x65\x72\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x74\x68\x69\x73\x2E\x65\x6C\x4F\x75\x74\x52\x65\x71\x75\x65\x73\x74\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x77\x72\x61\x70\x70\x65\x72\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x74\x68\x69\x73\x2E\x65\x6C\x4F\x75\x74\x52\x65\x73\x70\x6F\x6E\x73\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x77\x72\x61\x70\x70\x65\x72\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x74\x68\x69\x73\x2E\x65\x6C\x4F\x75\x74\x52\x65\x73\x70\x6F\x6E\x73\x65\x42\x6F\x64\x79\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x70\x61\x72\x65\x6E\x74\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x77\x72\x61\x70\x70\x65\x72\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6F\x6E\x43\x6C\x69\x63\x6B\x43\x6C\x65\x61\x72\x4F\x75\x74\x70\x75\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x4F\x75\x74\x70\x75\x74\x41\x74\x74\x61\x63\x6B\x28\x70\x61\x72\x65\x6E\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x21\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x41\x6C\x6C\x6F\x77\x41\x74\x74\x61\x63\x6B\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\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x4F\x75\x74\x41\x74\x74\x61\x63\x6B\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x43\x4C\x41\x53\x53\x5F\x48\x54\x54\x50\x5F\x54\x41\x52\x47\x45\x54\x5F\x4F\x55\x54\x5F\x41\x54\x54\x41\x43\x4B\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x74\x69\x74\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\x6C\x65\x67\x65\x6E\x64\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x69\x74\x6C\x65\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x22\x41\x74\x74\x61\x63\x6B\x20\x72\x65\x73\x75\x6C\x74\x73\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x67\x65\x6E\x65\x72\x61\x74\x65\x41\x74\x74\x61\x63\x6B\x52\x65\x73\x75\x6C\x74\x73\x28\x74\x68\x69\x73\x2E\x65\x6C\x4F\x75\x74\x41\x74\x74\x61\x63\x6B\x52\x65\x73\x75\x6C\x74\x73\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x4F\x75\x74\x41\x74\x74\x61\x63\x6B\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x74\x69\x74\x6C\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x4F\x75\x74\x41\x74\x74\x61\x63\x6B\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x74\x68\x69\x73\x2E\x65\x6C\x4F\x75\x74\x41\x74\x74\x61\x63\x6B\x52\x65\x73\x75\x6C\x74\x73\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x70\x61\x72\x65\x6E\x74\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x74\x68\x69\x73\x2E\x65\x6C\x4F\x75\x74\x41\x74\x74\x61\x63\x6B\x29\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x41\x74\x74\x61\x63\x6B\x52\x65\x73\x75\x6C\x74\x73\x28\x70\x61\x72\x65\x6E\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x70\x61\x72\x65\x6E\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\x69\x66\x20\x28\x21\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x52\x65\x73\x75\x6C\x74\x73\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\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x66\x6F\x72\x20\x28\x63\x6F\x6E\x73\x74\x20\x72\x65\x73\x75\x6C\x74\x20\x6F\x66\x20\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x52\x65\x73\x75\x6C\x74\x73\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x77\x72\x61\x70\x70\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\x64\x69\x76\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x77\x72\x61\x70\x70\x65\x72\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x43\x4C\x41\x53\x53\x5F\x48\x54\x54\x50\x5F\x54\x41\x52\x47\x45\x54\x5F\x41\x54\x54\x41\x43\x4B\x5F\x52\x45\x53\x55\x4C\x54\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x65\x6C\x52\x65\x70\x6F\x72\x74\x54\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\x64\x69\x76\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x52\x65\x70\x6F\x72\x74\x54\x65\x78\x74\x2E\x73\x74\x79\x6C\x65\x2E\x64\x69\x73\x70\x6C\x61\x79\x20\x3D\x20\x22\x6E\x6F\x6E\x65\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x52\x65\x70\x6F\x72\x74\x54\x65\x78\x74\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x43\x4C\x41\x53\x53\x5F\x48\x54\x54\x50\x5F\x54\x41\x52\x47\x45\x54\x5F\x4F\x55\x54\x5F\x4D\x4F\x4E\x4F\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x65\x6C\x52\x65\x70\x6F\x72\x74\x48\x69\x73\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\x64\x69\x76\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x52\x65\x70\x6F\x72\x74\x48\x69\x73\x74\x2E\x73\x74\x79\x6C\x65\x2E\x64\x69\x73\x70\x6C\x61\x79\x20\x3D\x20\x22\x6E\x6F\x6E\x65\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x52\x65\x70\x6F\x72\x74\x48\x69\x73\x74\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x43\x4C\x41\x53\x53\x5F\x48\x54\x54\x50\x5F\x54\x41\x52\x47\x45\x54\x5F\x4F\x55\x54\x5F\x4D\x4F\x4E\x4F\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\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\x20\x20\x65\x6C\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x72\x65\x73\x75\x6C\x74\x2E\x4E\x61\x6D\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x61\x63\x74\x69\x6F\x6E\x73\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\x20\x20\x61\x63\x74\x69\x6F\x6E\x73\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x43\x4C\x41\x53\x53\x5F\x48\x54\x54\x50\x5F\x54\x41\x52\x47\x45\x54\x5F\x41\x54\x54\x41\x43\x4B\x5F\x52\x45\x53\x55\x4C\x54\x5F\x41\x43\x54\x49\x4F\x4E\x53\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x62\x74\x6E\x41\x74\x74\x61\x63\x6B\x53\x68\x6F\x77\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\x62\x75\x74\x74\x6F\x6E\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x74\x6E\x41\x74\x74\x61\x63\x6B\x53\x68\x6F\x77\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x22\x53\x68\x6F\x77\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x74\x6E\x41\x74\x74\x61\x63\x6B\x53\x68\x6F\x77\x2E\x6F\x6E\x63\x6C\x69\x63\x6B\x20\x3D\x20\x28\x29\x20\x3D\x3E\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\x6E\x43\x6C\x69\x63\x6B\x41\x74\x74\x61\x63\x6B\x53\x68\x6F\x77\x28\x72\x65\x73\x75\x6C\x74\x2E\x4E\x61\x6D\x65\x2C\x20\x62\x74\x6E\x41\x74\x74\x61\x63\x6B\x53\x68\x6F\x77\x2C\x20\x65\x6C\x52\x65\x70\x6F\x72\x74\x54\x65\x78\x74\x2C\x20\x65\x6C\x52\x65\x70\x6F\x72\x74\x48\x69\x73\x74\x29\x3B\x0A\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\x63\x6F\x6E\x73\x74\x20\x62\x74\x6E\x41\x74\x74\x61\x63\x6B\x44\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\x62\x75\x74\x74\x6F\x6E\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x74\x6E\x41\x74\x74\x61\x63\x6B\x44\x65\x6C\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x22\x44\x65\x6C\x65\x74\x65\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x74\x6E\x41\x74\x74\x61\x63\x6B\x44\x65\x6C\x2E\x6F\x6E\x63\x6C\x69\x63\x6B\x20\x3D\x20\x28\x29\x20\x3D\x3E\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\x6E\x43\x6C\x69\x63\x6B\x41\x74\x74\x61\x63\x6B\x44\x65\x6C\x65\x74\x65\x28\x72\x65\x73\x75\x6C\x74\x29\x3B\x0A\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\x61\x63\x74\x69\x6F\x6E\x73\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x62\x74\x6E\x41\x74\x74\x61\x63\x6B\x53\x68\x6F\x77\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x61\x63\x74\x69\x6F\x6E\x73\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x62\x74\x6E\x41\x74\x74\x61\x63\x6B\x44\x65\x6C\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x61\x63\x74\x69\x6F\x6E\x73\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x77\x72\x61\x70\x70\x65\x72\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\x20\x20\x20\x20\x77\x72\x61\x70\x70\x65\x72\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x65\x6C\x52\x65\x70\x6F\x72\x74\x54\x65\x78\x74\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x77\x72\x61\x70\x70\x65\x72\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x65\x6C\x52\x65\x70\x6F\x72\x74\x48\x69\x73\x74\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x70\x61\x72\x65\x6E\x74\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x77\x72\x61\x70\x70\x65\x72\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x61\x73\x79\x6E\x63\x20\x6F\x6E\x43\x6C\x69\x63\x6B\x41\x74\x74\x61\x63\x6B\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x61\x77\x61\x69\x74\x20\x74\x68\x69\x73\x2E\x74\x72\x75\x6E\x6B\x73\x2E\x61\x74\x74\x61\x63\x6B\x48\x54\x54\x50\x28\x74\x68\x69\x73\x2E\x74\x61\x72\x67\x65\x74\x2C\x20\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x29\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x61\x73\x79\x6E\x63\x20\x6F\x6E\x43\x6C\x69\x63\x6B\x41\x74\x74\x61\x63\x6B\x44\x65\x6C\x65\x74\x65\x28\x72\x65\x73\x75\x6C\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x72\x65\x73\x20\x3D\x20\x61\x77\x61\x69\x74\x20\x74\x68\x69\x73\x2E\x74\x72\x75\x6E\x6B\x73\x2E\x61\x74\x74\x61\x63\x6B\x48\x54\x54\x50\x44\x65\x6C\x65\x74\x65\x28\x72\x65\x73\x75\x6C\x74\x2E\x4E\x61\x6D\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x21\x72\x65\x73\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\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x52\x65\x73\x75\x6C\x74\x73\x2E\x66\x6F\x72\x45\x61\x63\x68\x28\x28\x72\x2C\x20\x78\x29\x20\x3D\x3E\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x72\x2E\x4E\x61\x6D\x65\x20\x3D\x3D\x20\x72\x65\x73\x75\x6C\x74\x2E\x4E\x61\x6D\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\x52\x65\x73\x75\x6C\x74\x73\x2E\x73\x70\x6C\x69\x63\x65\x28\x78\x2C\x20\x31\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x67\x65\x6E\x65\x72\x61\x74\x65\x41\x74\x74\x61\x63\x6B\x52\x65\x73\x75\x6C\x74\x73\x28\x74\x68\x69\x73\x2E\x65\x6C\x4F\x75\x74\x41\x74\x74\x61\x63\x6B\x52\x65\x73\x75\x6C\x74\x73\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\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x29\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x61\x73\x79\x6E\x63\x20\x6F\x6E\x43\x6C\x69\x63\x6B\x41\x74\x74\x61\x63\x6B\x53\x68\x6F\x77\x28\x72\x65\x73\x75\x6C\x74\x4E\x61\x6D\x65\x2C\x20\x62\x74\x6E\x2C\x20\x65\x6C\x52\x65\x70\x6F\x72\x74\x54\x65\x78\x74\x2C\x20\x65\x6C\x52\x65\x70\x6F\x72\x74\x48\x69\x73\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x62\x74\x6E\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x3D\x3D\x20\x22\x48\x69\x64\x65\x22\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x74\x6E\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x22\x53\x68\x6F\x77\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x52\x65\x70\x6F\x72\x74\x54\x65\x78\x74\x2E\x73\x74\x79\x6C\x65\x2E\x64\x69\x73\x70\x6C\x61\x79\x20\x3D\x20\x22\x6E\x6F\x6E\x65\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x52\x65\x70\x6F\x72\x74\x48\x69\x73\x74\x2E\x73\x74\x79\x6C\x65\x2E\x64\x69\x73\x70\x6C\x61\x79\x20\x3D\x20\x22\x6E\x6F\x6E\x65\x22\x3B\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\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x72\x65\x73\x4A\x53\x4F\x4E\x20\x3D\x20\x61\x77\x61\x69\x74\x20\x74\x68\x69\x73\x2E\x74\x72\x75\x6E\x6B\x73\x2E\x61\x74\x74\x61\x63\x6B\x48\x54\x54\x50\x47\x65\x74\x28\x72\x65\x73\x75\x6C\x74\x4E\x61\x6D\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x72\x65\x73\x4A\x53\x4F\x4E\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\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\x63\x6F\x6E\x73\x74\x20\x72\x65\x73\x20\x3D\x20\x72\x65\x73\x4A\x53\x4F\x4E\x2E\x64\x61\x74\x61\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x52\x65\x70\x6F\x72\x74\x54\x65\x78\x74\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x61\x74\x6F\x62\x28\x72\x65\x73\x2E\x54\x65\x78\x74\x52\x65\x70\x6F\x72\x74\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x52\x65\x70\x6F\x72\x74\x54\x65\x78\x74\x2E\x73\x74\x79\x6C\x65\x2E\x64\x69\x73\x70\x6C\x61\x79\x20\x3D\x20\x22\x62\x6C\x6F\x63\x6B\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x52\x65\x70\x6F\x72\x74\x48\x69\x73\x74\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x61\x74\x6F\x62\x28\x72\x65\x73\x2E\x48\x69\x73\x74\x52\x65\x70\x6F\x72\x74\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x52\x65\x70\x6F\x72\x74\x48\x69\x73\x74\x2E\x73\x74\x79\x6C\x65\x2E\x64\x69\x73\x70\x6C\x61\x79\x20\x3D\x20\x22\x62\x6C\x6F\x63\x6B\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x62\x74\x6E\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x22\x48\x69\x64\x65\x22\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x61\x73\x79\x6E\x63\x20\x6F\x6E\x43\x6C\x69\x63\x6B\x43\x6C\x65\x61\x72\x4F\x75\x74\x70\x75\x74\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x4F\x75\x74\x52\x65\x71\x75\x65\x73\x74\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x22\x52\x61\x77\x20\x72\x65\x71\x75\x65\x73\x74\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x4F\x75\x74\x52\x65\x73\x70\x6F\x6E\x73\x65\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x22\x52\x61\x77\x20\x72\x65\x73\x70\x6F\x6E\x73\x65\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x4F\x75\x74\x52\x65\x73\x70\x6F\x6E\x73\x65\x42\x6F\x64\x79\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x22\x4A\x53\x4F\x4E\x20\x66\x6F\x72\x6D\x61\x74\x74\x65\x64\x20\x72\x65\x73\x70\x6F\x6E\x73\x65\x20\x62\x6F\x64\x79\x22\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x61\x73\x79\x6E\x63\x20\x6F\x6E\x43\x6C\x69\x63\x6B\x52\x75\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x72\x65\x73\x20\x3D\x20\x61\x77\x61\x69\x74\x20\x74\x68\x69\x73\x2E\x74\x72\x75\x6E\x6B\x73\x2E\x72\x75\x6E\x48\x54\x54\x50\x28\x74\x68\x69\x73\x2E\x74\x61\x72\x67\x65\x74\x2C\x20\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x21\x72\x65\x73\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\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x4F\x75\x74\x52\x65\x71\x75\x65\x73\x74\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x61\x74\x6F\x62\x28\x72\x65\x73\x2E\x44\x75\x6D\x70\x52\x65\x71\x75\x65\x73\x74\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x4F\x75\x74\x52\x65\x73\x70\x6F\x6E\x73\x65\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x61\x74\x6F\x62\x28\x72\x65\x73\x2E\x44\x75\x6D\x70\x52\x65\x73\x70\x6F\x6E\x73\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x62\x6F\x64\x79\x20\x3D\x20\x61\x74\x6F\x62\x28\x72\x65\x73\x2E\x52\x65\x73\x70\x6F\x6E\x73\x65\x42\x6F\x64\x79\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x72\x65\x73\x2E\x52\x65\x73\x70\x6F\x6E\x73\x65\x54\x79\x70\x65\x20\x3D\x3D\x3D\x20\x43\x4F\x4E\x54\x45\x4E\x54\x5F\x54\x59\x50\x45\x5F\x4A\x53\x4F\x4E\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x4F\x75\x74\x52\x65\x73\x70\x6F\x6E\x73\x65\x42\x6F\x64\x79\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x4A\x53\x4F\x4E\x2E\x73\x74\x72\x69\x6E\x67\x69\x66\x79\x28\x4A\x53\x4F\x4E\x2E\x70\x61\x72\x73\x65\x28\x62\x6F\x64\x79\x29\x2C\x20\x6E\x75\x6C\x6C\x2C\x20\x32\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x73\x65\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x4F\x75\x74\x52\x65\x73\x70\x6F\x6E\x73\x65\x42\x6F\x64\x79\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x62\x6F\x64\x79\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x41\x64\x64\x41\x74\x74\x61\x63\x6B\x52\x65\x73\x75\x6C\x74\x28\x72\x65\x73\x75\x6C\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x52\x65\x73\x75\x6C\x74\x73\x2E\x70\x75\x73\x68\x28\x72\x65\x73\x75\x6C\x74\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x67\x65\x6E\x65\x72\x61\x74\x65\x41\x74\x74\x61\x63\x6B\x52\x65\x73\x75\x6C\x74\x73\x28\x74\x68\x69\x73\x2E\x65\x6C\x4F\x75\x74\x41\x74\x74\x61\x63\x6B\x52\x65\x73\x75\x6C\x74\x73\x29\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x7D\x0A"), } node.SetMode(420) - node.SetModTimeUnix(1707037266, 115128463) + node.SetModTimeUnix(1707078138, 315859609) node.SetName("http_target.js") node.SetSize(13210) return node @@ -214,7 +214,7 @@ func generate__www_index_js() *memfs.Node { Content: []byte("\x2F\x2F\x20\x53\x50\x44\x58\x2D\x46\x69\x6C\x65\x43\x6F\x70\x79\x72\x69\x67\x68\x74\x54\x65\x78\x74\x3A\x20\x32\x30\x32\x31\x20\x4D\x2E\x20\x53\x68\x75\x6C\x68\x61\x6E\x20\x3C\x6D\x73\x40\x6B\x69\x6C\x61\x62\x69\x74\x2E\x69\x6E\x66\x6F\x3E\x0A\x2F\x2F\x20\x53\x50\x44\x58\x2D\x4C\x69\x63\x65\x6E\x73\x65\x2D\x49\x64\x65\x6E\x74\x69\x66\x69\x65\x72\x3A\x20\x47\x50\x4C\x2D\x33\x2E\x30\x2D\x6F\x72\x2D\x6C\x61\x74\x65\x72\x0A\x69\x6D\x70\x6F\x72\x74\x20\x7B\x20\x54\x72\x75\x6E\x6B\x73\x20\x7D\x20\x66\x72\x6F\x6D\x20\x22\x2E\x2F\x74\x72\x75\x6E\x6B\x73\x2E\x6A\x73\x22\x3B\x0A\x61\x73\x79\x6E\x63\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x6D\x61\x69\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x74\x72\x75\x6E\x6B\x73\x20\x3D\x20\x6E\x65\x77\x20\x54\x72\x75\x6E\x6B\x73\x28\x29\x3B\x0A\x20\x20\x20\x20\x61\x77\x61\x69\x74\x20\x74\x72\x75\x6E\x6B\x73\x2E\x69\x6E\x69\x74\x28\x29\x3B\x0A\x7D\x0A\x6D\x61\x69\x6E\x28\x29\x3B\x0A"), } node.SetMode(420) - node.SetModTimeUnix(1707037266, 135128566) + node.SetModTimeUnix(1707078138, 392526359) node.SetName("index.js") node.SetSize(236) return node @@ -226,12 +226,12 @@ func generate__www_interface_js() *memfs.Node { Path: "/interface.js", ContentType: "text/javascript; charset=utf-8", GenFuncName: "generate__www_interface_js", - Content: []byte("\x2F\x2F\x20\x53\x50\x44\x58\x2D\x46\x69\x6C\x65\x43\x6F\x70\x79\x72\x69\x67\x68\x74\x54\x65\x78\x74\x3A\x20\x32\x30\x32\x31\x20\x4D\x2E\x20\x53\x68\x75\x6C\x68\x61\x6E\x20\x3C\x6D\x73\x40\x6B\x69\x6C\x61\x62\x69\x74\x2E\x69\x6E\x66\x6F\x3E\x0A\x2F\x2F\x20\x53\x50\x44\x58\x2D\x4C\x69\x63\x65\x6E\x73\x65\x2D\x49\x64\x65\x6E\x74\x69\x66\x69\x65\x72\x3A\x20\x47\x50\x4C\x2D\x33\x2E\x30\x2D\x6F\x72\x2D\x6C\x61\x74\x65\x72\x0A\x65\x78\x70\x6F\x72\x74\x20\x63\x6F\x6E\x73\x74\x20\x43\x4C\x41\x53\x53\x5F\x49\x4E\x50\x55\x54\x5F\x4C\x41\x42\x45\x4C\x20\x3D\x20\x22\x74\x72\x75\x6E\x6B\x73\x5F\x69\x6E\x70\x75\x74\x5F\x6C\x61\x62\x65\x6C\x22\x3B\x0A\x65\x78\x70\x6F\x72\x74\x20\x63\x6F\x6E\x73\x74\x20\x43\x4C\x41\x53\x53\x5F\x49\x4E\x50\x55\x54\x20\x3D\x20\x22\x74\x72\x75\x6E\x6B\x73\x5F\x69\x6E\x70\x75\x74\x22\x3B\x0A\x65\x78\x70\x6F\x72\x74\x20\x63\x6F\x6E\x73\x74\x20\x43\x4C\x41\x53\x53\x5F\x4E\x41\x56\x5F\x4C\x49\x4E\x4B\x20\x3D\x20\x22\x6E\x61\x76\x5F\x6C\x69\x6E\x6B\x22\x3B\x0A\x65\x78\x70\x6F\x72\x74\x20\x63\x6F\x6E\x73\x74\x20\x43\x4C\x41\x53\x53\x5F\x4E\x41\x56\x5F\x54\x41\x52\x47\x45\x54\x20\x3D\x20\x22\x6E\x61\x76\x5F\x74\x61\x72\x67\x65\x74\x22\x3B\x0A\x65\x78\x70\x6F\x72\x74\x20\x63\x6F\x6E\x73\x74\x20\x48\x41\x53\x48\x5F\x45\x4E\x56\x49\x52\x4F\x4E\x4D\x45\x4E\x54\x20\x3D\x20\x22\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74\x22\x3B\x0A\x65\x78\x70\x6F\x72\x74\x20\x63\x6F\x6E\x73\x74\x20\x48\x41\x53\x48\x5F\x4C\x49\x4E\x4B\x53\x20\x3D\x20\x22\x6C\x69\x6E\x6B\x73\x22\x3B\x0A\x65\x78\x70\x6F\x72\x74\x20\x63\x6F\x6E\x73\x74\x20\x46\x6F\x72\x6D\x49\x6E\x70\x75\x74\x4B\x69\x6E\x64\x4E\x75\x6D\x62\x65\x72\x20\x3D\x20\x22\x6E\x75\x6D\x62\x65\x72\x22\x3B\x0A\x65\x78\x70\x6F\x72\x74\x20\x63\x6F\x6E\x73\x74\x20\x46\x6F\x72\x6D\x49\x6E\x70\x75\x74\x4B\x69\x6E\x64\x53\x74\x72\x69\x6E\x67\x20\x3D\x20\x22\x73\x74\x72\x69\x6E\x67\x22\x3B\x0A"), + Content: []byte("\x2F\x2F\x20\x53\x50\x44\x58\x2D\x46\x69\x6C\x65\x43\x6F\x70\x79\x72\x69\x67\x68\x74\x54\x65\x78\x74\x3A\x20\x32\x30\x32\x31\x20\x4D\x2E\x20\x53\x68\x75\x6C\x68\x61\x6E\x20\x3C\x6D\x73\x40\x6B\x69\x6C\x61\x62\x69\x74\x2E\x69\x6E\x66\x6F\x3E\x0A\x2F\x2F\x20\x53\x50\x44\x58\x2D\x4C\x69\x63\x65\x6E\x73\x65\x2D\x49\x64\x65\x6E\x74\x69\x66\x69\x65\x72\x3A\x20\x47\x50\x4C\x2D\x33\x2E\x30\x2D\x6F\x72\x2D\x6C\x61\x74\x65\x72\x0A\x65\x78\x70\x6F\x72\x74\x20\x63\x6F\x6E\x73\x74\x20\x43\x4C\x41\x53\x53\x5F\x49\x4E\x50\x55\x54\x5F\x4C\x41\x42\x45\x4C\x20\x3D\x20\x22\x74\x72\x75\x6E\x6B\x73\x5F\x69\x6E\x70\x75\x74\x5F\x6C\x61\x62\x65\x6C\x22\x3B\x0A\x65\x78\x70\x6F\x72\x74\x20\x63\x6F\x6E\x73\x74\x20\x43\x4C\x41\x53\x53\x5F\x49\x4E\x50\x55\x54\x20\x3D\x20\x22\x74\x72\x75\x6E\x6B\x73\x5F\x69\x6E\x70\x75\x74\x22\x3B\x0A\x65\x78\x70\x6F\x72\x74\x20\x63\x6F\x6E\x73\x74\x20\x43\x4C\x41\x53\x53\x5F\x4E\x41\x56\x5F\x4C\x49\x4E\x4B\x20\x3D\x20\x22\x6E\x61\x76\x5F\x6C\x69\x6E\x6B\x22\x3B\x0A\x65\x78\x70\x6F\x72\x74\x20\x63\x6F\x6E\x73\x74\x20\x43\x4C\x41\x53\x53\x5F\x4E\x41\x56\x5F\x54\x41\x52\x47\x45\x54\x20\x3D\x20\x22\x6E\x61\x76\x5F\x74\x61\x72\x67\x65\x74\x22\x3B\x0A\x65\x78\x70\x6F\x72\x74\x20\x63\x6F\x6E\x73\x74\x20\x48\x41\x53\x48\x5F\x45\x4E\x56\x49\x52\x4F\x4E\x4D\x45\x4E\x54\x20\x3D\x20\x22\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74\x22\x3B\x0A\x65\x78\x70\x6F\x72\x74\x20\x63\x6F\x6E\x73\x74\x20\x48\x41\x53\x48\x5F\x4C\x49\x4E\x4B\x53\x20\x3D\x20\x22\x6C\x69\x6E\x6B\x73\x22\x3B\x0A\x65\x78\x70\x6F\x72\x74\x20\x63\x6F\x6E\x73\x74\x20\x46\x6F\x72\x6D\x49\x6E\x70\x75\x74\x4B\x69\x6E\x64\x46\x69\x6C\x65\x20\x3D\x20\x22\x66\x69\x6C\x65\x22\x3B\x0A\x65\x78\x70\x6F\x72\x74\x20\x63\x6F\x6E\x73\x74\x20\x46\x6F\x72\x6D\x49\x6E\x70\x75\x74\x4B\x69\x6E\x64\x4E\x75\x6D\x62\x65\x72\x20\x3D\x20\x22\x6E\x75\x6D\x62\x65\x72\x22\x3B\x0A\x65\x78\x70\x6F\x72\x74\x20\x63\x6F\x6E\x73\x74\x20\x46\x6F\x72\x6D\x49\x6E\x70\x75\x74\x4B\x69\x6E\x64\x53\x74\x72\x69\x6E\x67\x20\x3D\x20\x22\x73\x74\x72\x69\x6E\x67\x22\x3B\x0A"), } node.SetMode(420) - node.SetModTimeUnix(1707037266, 78461606) + node.SetModTimeUnix(1707078138, 279192903) node.SetName("interface.js") - node.SetSize(464) + node.SetSize(505) return node } @@ -244,7 +244,7 @@ func generate__www_nav_links_js() *memfs.Node { Content: []byte("\x2F\x2F\x20\x53\x50\x44\x58\x2D\x46\x69\x6C\x65\x43\x6F\x70\x79\x72\x69\x67\x68\x74\x54\x65\x78\x74\x3A\x20\x32\x30\x32\x31\x20\x4D\x2E\x20\x53\x68\x75\x6C\x68\x61\x6E\x20\x3C\x6D\x73\x40\x6B\x69\x6C\x61\x62\x69\x74\x2E\x69\x6E\x66\x6F\x3E\x0A\x2F\x2F\x20\x53\x50\x44\x58\x2D\x4C\x69\x63\x65\x6E\x73\x65\x2D\x49\x64\x65\x6E\x74\x69\x66\x69\x65\x72\x3A\x20\x47\x50\x4C\x2D\x33\x2E\x30\x2D\x6F\x72\x2D\x6C\x61\x74\x65\x72\x0A\x69\x6D\x70\x6F\x72\x74\x20\x7B\x20\x48\x41\x53\x48\x5F\x4C\x49\x4E\x4B\x53\x2C\x20\x43\x4C\x41\x53\x53\x5F\x4E\x41\x56\x5F\x4C\x49\x4E\x4B\x2C\x20\x43\x4C\x41\x53\x53\x5F\x4E\x41\x56\x5F\x54\x41\x52\x47\x45\x54\x2C\x20\x7D\x20\x66\x72\x6F\x6D\x20\x22\x2E\x2F\x69\x6E\x74\x65\x72\x66\x61\x63\x65\x2E\x6A\x73\x22\x3B\x0A\x69\x6D\x70\x6F\x72\x74\x20\x7B\x20\x67\x65\x74\x44\x6F\x63\x75\x6D\x65\x6E\x74\x48\x65\x69\x67\x68\x74\x20\x7D\x20\x66\x72\x6F\x6D\x20\x22\x2E\x2F\x66\x75\x6E\x63\x74\x69\x6F\x6E\x73\x2E\x6A\x73\x22\x3B\x0A\x65\x78\x70\x6F\x72\x74\x20\x63\x6C\x61\x73\x73\x20\x4E\x61\x76\x4C\x69\x6E\x6B\x73\x20\x7B\x0A\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x72\x75\x63\x74\x6F\x72\x28\x74\x72\x75\x6E\x6B\x73\x2C\x20\x6E\x61\x76\x73\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x74\x72\x75\x6E\x6B\x73\x20\x3D\x20\x74\x72\x75\x6E\x6B\x73\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6E\x61\x76\x73\x20\x3D\x20\x6E\x61\x76\x73\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x4E\x61\x76\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\x53\x72\x63\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\x43\x6F\x6E\x74\x65\x6E\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\x64\x69\x76\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x49\x66\x72\x61\x6D\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\x69\x66\x72\x61\x6D\x65\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x68\x64\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\x68\x33\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x68\x64\x72\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x22\x4C\x69\x6E\x6B\x73\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x68\x64\x72\x2E\x6F\x6E\x63\x6C\x69\x63\x6B\x20\x3D\x20\x28\x29\x20\x3D\x3E\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x72\x75\x6E\x6B\x73\x2E\x73\x65\x74\x43\x6F\x6E\x74\x65\x6E\x74\x28\x48\x41\x53\x48\x5F\x4C\x49\x4E\x4B\x53\x2C\x20\x6E\x75\x6C\x6C\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\x4E\x61\x76\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x43\x4C\x41\x53\x53\x5F\x4E\x41\x56\x5F\x54\x41\x52\x47\x45\x54\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x4E\x61\x76\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x68\x64\x72\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x67\x65\x6E\x65\x72\x61\x74\x65\x4E\x61\x76\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x67\x65\x6E\x65\x72\x61\x74\x65\x43\x6F\x6E\x74\x65\x6E\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x4E\x61\x76\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6E\x61\x76\x73\x2E\x66\x6F\x72\x45\x61\x63\x68\x28\x28\x6E\x61\x76\x29\x20\x3D\x3E\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\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\x20\x20\x65\x6C\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x43\x4C\x41\x53\x53\x5F\x4E\x41\x56\x5F\x4C\x49\x4E\x4B\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x2E\x74\x65\x78\x74\x43\x6F\x6E\x74\x65\x6E\x74\x20\x3D\x20\x6E\x61\x76\x2E\x54\x65\x78\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x2E\x6F\x6E\x63\x6C\x69\x63\x6B\x20\x3D\x20\x28\x29\x20\x3D\x3E\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\x65\x6E\x28\x6E\x61\x76\x29\x3B\x0A\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\x74\x68\x69\x73\x2E\x65\x6C\x4E\x61\x76\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\x29\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x43\x6F\x6E\x74\x65\x6E\x74\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x49\x66\x72\x61\x6D\x65\x2E\x77\x69\x64\x74\x68\x20\x3D\x20\x22\x31\x30\x30\x25\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x49\x66\x72\x61\x6D\x65\x2E\x68\x65\x69\x67\x68\x74\x20\x3D\x20\x67\x65\x74\x44\x6F\x63\x75\x6D\x65\x6E\x74\x48\x65\x69\x67\x68\x74\x28\x29\x20\x2D\x20\x36\x30\x20\x2B\x20\x22\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x43\x6F\x6E\x74\x65\x6E\x74\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x74\x68\x69\x73\x2E\x65\x6C\x53\x72\x63\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x43\x6F\x6E\x74\x65\x6E\x74\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x74\x68\x69\x73\x2E\x65\x6C\x49\x66\x72\x61\x6D\x65\x29\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x6F\x70\x65\x6E\x28\x6E\x61\x76\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x6E\x61\x76\x2E\x4F\x70\x65\x6E\x49\x6E\x49\x46\x72\x61\x6D\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x53\x72\x63\x2E\x74\x65\x78\x74\x43\x6F\x6E\x74\x65\x6E\x74\x20\x3D\x20\x22\x53\x6F\x75\x72\x63\x65\x3A\x20\x22\x20\x2B\x20\x6E\x61\x76\x2E\x48\x72\x65\x66\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x49\x66\x72\x61\x6D\x65\x2E\x73\x72\x63\x20\x3D\x20\x6E\x61\x76\x2E\x48\x72\x65\x66\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x74\x61\x72\x67\x65\x74\x20\x3D\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x49\x44\x3A\x20\x22\x6E\x61\x76\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x4E\x61\x6D\x65\x3A\x20\x22\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x42\x61\x73\x65\x55\x52\x4C\x3A\x20\x22\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x4F\x70\x74\x73\x3A\x20\x7B\x7D\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x56\x61\x72\x73\x3A\x20\x7B\x7D\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x48\x54\x54\x50\x54\x61\x72\x67\x65\x74\x73\x3A\x20\x5B\x5D\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x57\x65\x62\x53\x6F\x63\x6B\x65\x74\x54\x61\x72\x67\x65\x74\x73\x3A\x20\x5B\x5D\x2C\x0A\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\x74\x68\x69\x73\x2E\x74\x72\x75\x6E\x6B\x73\x2E\x63\x6F\x6E\x74\x65\x6E\x74\x52\x65\x6E\x64\x65\x72\x65\x72\x28\x74\x61\x72\x67\x65\x74\x2C\x20\x6E\x75\x6C\x6C\x2C\x20\x6E\x75\x6C\x6C\x2C\x20\x6E\x61\x76\x2C\x20\x74\x68\x69\x73\x2E\x65\x6C\x43\x6F\x6E\x74\x65\x6E\x74\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x73\x65\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x77\x69\x6E\x64\x6F\x77\x2E\x6F\x70\x65\x6E\x28\x6E\x61\x76\x2E\x48\x72\x65\x66\x2C\x20\x22\x5F\x62\x6C\x61\x6E\x6B\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x7D\x0A\x7D\x0A"), } node.SetMode(420) - node.SetModTimeUnix(1707037266, 98461710) + node.SetModTimeUnix(1707078138, 302526262) node.SetName("nav_links.js") node.SetSize(2028) return node @@ -259,7 +259,7 @@ func generate__www_target_js() *memfs.Node { Content: []byte("\x2F\x2F\x20\x53\x50\x44\x58\x2D\x46\x69\x6C\x65\x43\x6F\x70\x79\x72\x69\x67\x68\x74\x54\x65\x78\x74\x3A\x20\x32\x30\x32\x31\x20\x4D\x2E\x20\x53\x68\x75\x6C\x68\x61\x6E\x20\x3C\x6D\x73\x40\x6B\x69\x6C\x61\x62\x69\x74\x2E\x69\x6E\x66\x6F\x3E\x0A\x2F\x2F\x20\x53\x50\x44\x58\x2D\x4C\x69\x63\x65\x6E\x73\x65\x2D\x49\x64\x65\x6E\x74\x69\x66\x69\x65\x72\x3A\x20\x47\x50\x4C\x2D\x33\x2E\x30\x2D\x6F\x72\x2D\x6C\x61\x74\x65\x72\x0A\x69\x6D\x70\x6F\x72\x74\x20\x7B\x20\x57\x75\x69\x49\x6E\x70\x75\x74\x4E\x75\x6D\x62\x65\x72\x20\x7D\x20\x66\x72\x6F\x6D\x20\x22\x2E\x2F\x77\x75\x69\x2F\x69\x6E\x70\x75\x74\x2F\x6E\x75\x6D\x62\x65\x72\x2E\x6A\x73\x22\x3B\x0A\x69\x6D\x70\x6F\x72\x74\x20\x7B\x20\x57\x75\x69\x49\x6E\x70\x75\x74\x53\x74\x72\x69\x6E\x67\x20\x7D\x20\x66\x72\x6F\x6D\x20\x22\x2E\x2F\x77\x75\x69\x2F\x69\x6E\x70\x75\x74\x2F\x73\x74\x72\x69\x6E\x67\x2E\x6A\x73\x22\x3B\x0A\x69\x6D\x70\x6F\x72\x74\x20\x7B\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x46\x6F\x72\x6D\x49\x6E\x70\x75\x74\x2C\x20\x6C\x6F\x61\x64\x54\x61\x72\x67\x65\x74\x4F\x70\x74\x44\x75\x72\x61\x74\x69\x6F\x6E\x2C\x20\x6C\x6F\x61\x64\x54\x61\x72\x67\x65\x74\x4F\x70\x74\x52\x61\x74\x65\x50\x65\x72\x53\x65\x63\x6F\x6E\x64\x2C\x20\x6C\x6F\x61\x64\x54\x61\x72\x67\x65\x74\x4F\x70\x74\x54\x69\x6D\x65\x6F\x75\x74\x2C\x20\x6C\x6F\x61\x64\x54\x61\x72\x67\x65\x74\x56\x61\x72\x2C\x20\x7D\x20\x66\x72\x6F\x6D\x20\x22\x2E\x2F\x66\x75\x6E\x63\x74\x69\x6F\x6E\x73\x2E\x6A\x73\x22\x3B\x0A\x69\x6D\x70\x6F\x72\x74\x20\x7B\x20\x43\x4C\x41\x53\x53\x5F\x49\x4E\x50\x55\x54\x2C\x20\x43\x4C\x41\x53\x53\x5F\x49\x4E\x50\x55\x54\x5F\x4C\x41\x42\x45\x4C\x2C\x20\x43\x4C\x41\x53\x53\x5F\x4E\x41\x56\x5F\x54\x41\x52\x47\x45\x54\x2C\x20\x7D\x20\x66\x72\x6F\x6D\x20\x22\x2E\x2F\x69\x6E\x74\x65\x72\x66\x61\x63\x65\x2E\x6A\x73\x22\x3B\x0A\x69\x6D\x70\x6F\x72\x74\x20\x7B\x20\x48\x54\x54\x50\x54\x61\x72\x67\x65\x74\x20\x7D\x20\x66\x72\x6F\x6D\x20\x22\x2E\x2F\x68\x74\x74\x70\x5F\x74\x61\x72\x67\x65\x74\x2E\x6A\x73\x22\x3B\x0A\x69\x6D\x70\x6F\x72\x74\x20\x7B\x20\x57\x65\x62\x53\x6F\x63\x6B\x65\x74\x54\x61\x72\x67\x65\x74\x20\x7D\x20\x66\x72\x6F\x6D\x20\x22\x2E\x2F\x77\x73\x5F\x74\x61\x72\x67\x65\x74\x2E\x6A\x73\x22\x3B\x0A\x63\x6F\x6E\x73\x74\x20\x43\x4C\x41\x53\x53\x5F\x4E\x41\x56\x5F\x54\x41\x52\x47\x45\x54\x5F\x48\x54\x54\x50\x20\x3D\x20\x22\x6E\x61\x76\x5F\x68\x74\x74\x70\x5F\x74\x61\x72\x67\x65\x74\x22\x3B\x0A\x63\x6F\x6E\x73\x74\x20\x43\x4C\x41\x53\x53\x5F\x4E\x41\x56\x5F\x54\x41\x52\x47\x45\x54\x5F\x57\x53\x20\x3D\x20\x22\x6E\x61\x76\x5F\x77\x73\x5F\x74\x61\x72\x67\x65\x74\x22\x3B\x0A\x65\x78\x70\x6F\x72\x74\x20\x63\x6C\x61\x73\x73\x20\x54\x61\x72\x67\x65\x74\x20\x7B\x0A\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x72\x75\x63\x74\x6F\x72\x28\x74\x72\x75\x6E\x6B\x73\x2C\x20\x6F\x70\x74\x73\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x74\x72\x75\x6E\x6B\x73\x20\x3D\x20\x74\x72\x75\x6E\x6B\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\x65\x6C\x4E\x61\x76\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\x43\x6F\x6E\x74\x65\x6E\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\x64\x69\x76\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x68\x74\x74\x70\x5F\x74\x61\x72\x67\x65\x74\x73\x20\x3D\x20\x7B\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x77\x73\x5F\x74\x61\x72\x67\x65\x74\x73\x20\x3D\x20\x7B\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x67\x65\x6E\x65\x72\x61\x74\x65\x4E\x61\x76\x28\x74\x72\x75\x6E\x6B\x73\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x67\x65\x6E\x65\x72\x61\x74\x65\x43\x6F\x6E\x74\x65\x6E\x74\x28\x74\x72\x75\x6E\x6B\x73\x29\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x4E\x61\x76\x28\x74\x72\x75\x6E\x6B\x73\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x4E\x61\x76\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x43\x4C\x41\x53\x53\x5F\x4E\x41\x56\x5F\x54\x41\x52\x47\x45\x54\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x65\x6C\x54\x61\x72\x67\x65\x74\x4D\x65\x6E\x75\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\x68\x33\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x54\x61\x72\x67\x65\x74\x4D\x65\x6E\x75\x2E\x69\x6E\x6E\x65\x72\x48\x54\x4D\x4C\x20\x3D\x20\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x4E\x61\x6D\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x54\x61\x72\x67\x65\x74\x4D\x65\x6E\x75\x2E\x6F\x6E\x63\x6C\x69\x63\x6B\x20\x3D\x20\x28\x29\x20\x3D\x3E\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x72\x75\x6E\x6B\x73\x2E\x63\x6F\x6E\x74\x65\x6E\x74\x52\x65\x6E\x64\x65\x72\x65\x72\x28\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2C\x20\x6E\x75\x6C\x6C\x2C\x20\x6E\x75\x6C\x6C\x2C\x20\x6E\x75\x6C\x6C\x2C\x20\x74\x68\x69\x73\x2E\x65\x6C\x43\x6F\x6E\x74\x65\x6E\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\x4E\x61\x76\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x65\x6C\x54\x61\x72\x67\x65\x74\x4D\x65\x6E\x75\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x48\x54\x54\x50\x54\x61\x72\x67\x65\x74\x73\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x66\x6F\x72\x20\x28\x63\x6F\x6E\x73\x74\x20\x68\x74\x20\x6F\x66\x20\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x48\x54\x54\x50\x54\x61\x72\x67\x65\x74\x73\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x65\x6C\x54\x61\x72\x67\x65\x74\x48\x54\x54\x50\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\x20\x20\x20\x20\x20\x20\x65\x6C\x54\x61\x72\x67\x65\x74\x48\x54\x54\x50\x2E\x69\x6E\x6E\x65\x72\x48\x54\x4D\x4C\x20\x3D\x20\x68\x74\x2E\x4E\x61\x6D\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x54\x61\x72\x67\x65\x74\x48\x54\x54\x50\x2E\x69\x64\x20\x3D\x20\x60\x2F\x68\x74\x74\x70\x2F\x24\x7B\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x49\x44\x7D\x2F\x24\x7B\x68\x74\x2E\x49\x44\x7D\x60\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x54\x61\x72\x67\x65\x74\x48\x54\x54\x50\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x43\x4C\x41\x53\x53\x5F\x4E\x41\x56\x5F\x54\x41\x52\x47\x45\x54\x5F\x48\x54\x54\x50\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x54\x61\x72\x67\x65\x74\x48\x54\x54\x50\x2E\x6F\x6E\x63\x6C\x69\x63\x6B\x20\x3D\x20\x28\x29\x20\x3D\x3E\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x72\x75\x6E\x6B\x73\x2E\x63\x6F\x6E\x74\x65\x6E\x74\x52\x65\x6E\x64\x65\x72\x65\x72\x28\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2C\x20\x68\x74\x2C\x20\x6E\x75\x6C\x6C\x2C\x20\x6E\x75\x6C\x6C\x2C\x20\x74\x68\x69\x73\x2E\x65\x6C\x43\x6F\x6E\x74\x65\x6E\x74\x29\x3B\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\x74\x68\x69\x73\x2E\x65\x6C\x4E\x61\x76\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x65\x6C\x54\x61\x72\x67\x65\x74\x48\x54\x54\x50\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\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x57\x65\x62\x53\x6F\x63\x6B\x65\x74\x54\x61\x72\x67\x65\x74\x73\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x66\x6F\x72\x20\x28\x63\x6F\x6E\x73\x74\x20\x77\x73\x74\x20\x6F\x66\x20\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x57\x65\x62\x53\x6F\x63\x6B\x65\x74\x54\x61\x72\x67\x65\x74\x73\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x65\x6C\x54\x61\x72\x67\x65\x74\x57\x53\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\x20\x20\x20\x20\x20\x20\x65\x6C\x54\x61\x72\x67\x65\x74\x57\x53\x2E\x69\x6E\x6E\x65\x72\x48\x54\x4D\x4C\x20\x3D\x20\x77\x73\x74\x2E\x4E\x61\x6D\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x54\x61\x72\x67\x65\x74\x57\x53\x2E\x69\x64\x20\x3D\x20\x60\x2F\x77\x73\x2F\x24\x7B\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x49\x44\x7D\x2F\x24\x7B\x77\x73\x74\x2E\x49\x44\x7D\x60\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x54\x61\x72\x67\x65\x74\x57\x53\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x43\x4C\x41\x53\x53\x5F\x4E\x41\x56\x5F\x54\x41\x52\x47\x45\x54\x5F\x57\x53\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x54\x61\x72\x67\x65\x74\x57\x53\x2E\x6F\x6E\x63\x6C\x69\x63\x6B\x20\x3D\x20\x28\x29\x20\x3D\x3E\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x72\x75\x6E\x6B\x73\x2E\x63\x6F\x6E\x74\x65\x6E\x74\x52\x65\x6E\x64\x65\x72\x65\x72\x28\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2C\x20\x6E\x75\x6C\x6C\x2C\x20\x77\x73\x74\x2C\x20\x6E\x75\x6C\x6C\x2C\x20\x74\x68\x69\x73\x2E\x65\x6C\x43\x6F\x6E\x74\x65\x6E\x74\x29\x3B\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\x74\x68\x69\x73\x2E\x65\x6C\x4E\x61\x76\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x65\x6C\x54\x61\x72\x67\x65\x74\x57\x53\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\x7D\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x43\x6F\x6E\x74\x65\x6E\x74\x28\x74\x72\x75\x6E\x6B\x73\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x67\x65\x6E\x65\x72\x61\x74\x65\x43\x6F\x6E\x74\x65\x6E\x74\x42\x61\x73\x65\x55\x52\x4C\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x67\x65\x6E\x65\x72\x61\x74\x65\x43\x6F\x6E\x74\x65\x6E\x74\x41\x74\x74\x61\x63\x6B\x4F\x70\x74\x69\x6F\x6E\x73\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x67\x65\x6E\x65\x72\x61\x74\x65\x43\x6F\x6E\x74\x65\x6E\x74\x56\x61\x72\x73\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x67\x65\x6E\x65\x72\x61\x74\x65\x48\x54\x54\x50\x54\x61\x72\x67\x65\x74\x73\x28\x74\x72\x75\x6E\x6B\x73\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x67\x65\x6E\x65\x72\x61\x74\x65\x57\x65\x62\x53\x6F\x63\x6B\x65\x74\x54\x61\x72\x67\x65\x74\x73\x28\x74\x72\x75\x6E\x6B\x73\x29\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x43\x6F\x6E\x74\x65\x6E\x74\x42\x61\x73\x65\x55\x52\x4C\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x68\x64\x72\x54\x61\x72\x67\x65\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\x68\x32\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x68\x64\x72\x54\x61\x72\x67\x65\x74\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x4E\x61\x6D\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x68\x64\x72\x54\x61\x72\x67\x65\x74\x2E\x69\x64\x20\x3D\x20\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x49\x44\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x65\x6C\x48\x69\x6E\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\x70\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x48\x69\x6E\x74\x2E\x69\x6E\x6E\x65\x72\x48\x54\x4D\x4C\x20\x3D\x20\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x48\x69\x6E\x74\x20\x7C\x7C\x20\x22\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x6F\x70\x74\x73\x42\x61\x73\x65\x55\x52\x4C\x20\x3D\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6C\x61\x62\x65\x6C\x3A\x20\x22\x42\x61\x73\x65\x20\x55\x52\x4C\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x68\x69\x6E\x74\x3A\x20\x22\x54\x68\x65\x20\x62\x61\x73\x65\x20\x55\x52\x4C\x20\x77\x68\x65\x72\x65\x20\x74\x68\x65\x20\x48\x54\x54\x50\x20\x72\x65\x71\x75\x65\x73\x74\x20\x77\x69\x6C\x6C\x20\x62\x65\x20\x73\x65\x6E\x64\x20\x6F\x72\x20\x74\x68\x65\x20\x74\x61\x72\x67\x65\x74\x20\x6F\x66\x20\x61\x74\x74\x61\x63\x6B\x2E\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x6C\x75\x65\x3A\x20\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x42\x61\x73\x65\x55\x52\x4C\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6C\x61\x73\x73\x5F\x69\x6E\x70\x75\x74\x3A\x20\x43\x4C\x41\x53\x53\x5F\x49\x4E\x50\x55\x54\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6C\x61\x73\x73\x5F\x6C\x61\x62\x65\x6C\x3A\x20\x43\x4C\x41\x53\x53\x5F\x49\x4E\x50\x55\x54\x5F\x4C\x41\x42\x45\x4C\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x73\x5F\x68\x69\x6E\x74\x5F\x74\x6F\x67\x67\x6C\x65\x64\x3A\x20\x74\x72\x75\x65\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x73\x5F\x64\x69\x73\x61\x62\x6C\x65\x64\x3A\x20\x74\x72\x75\x65\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6F\x6E\x43\x68\x61\x6E\x67\x65\x48\x61\x6E\x64\x6C\x65\x72\x3A\x20\x28\x76\x29\x20\x3D\x3E\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\x42\x61\x73\x65\x55\x52\x4C\x20\x3D\x20\x76\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x63\x6F\x6D\x49\x6E\x70\x75\x74\x42\x61\x73\x65\x55\x52\x4C\x20\x3D\x20\x6E\x65\x77\x20\x57\x75\x69\x49\x6E\x70\x75\x74\x53\x74\x72\x69\x6E\x67\x28\x6F\x70\x74\x73\x42\x61\x73\x65\x55\x52\x4C\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x43\x6F\x6E\x74\x65\x6E\x74\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x68\x64\x72\x54\x61\x72\x67\x65\x74\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x48\x69\x6E\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x43\x6F\x6E\x74\x65\x6E\x74\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x65\x6C\x48\x69\x6E\x74\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\x65\x6C\x43\x6F\x6E\x74\x65\x6E\x74\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x63\x6F\x6D\x49\x6E\x70\x75\x74\x42\x61\x73\x65\x55\x52\x4C\x2E\x65\x6C\x29\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x43\x6F\x6E\x74\x65\x6E\x74\x41\x74\x74\x61\x63\x6B\x4F\x70\x74\x69\x6F\x6E\x73\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x77\x72\x61\x70\x70\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\x66\x69\x65\x6C\x64\x73\x65\x74\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x6C\x65\x67\x65\x6E\x64\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\x6C\x65\x67\x65\x6E\x64\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x6C\x65\x67\x65\x6E\x64\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x22\x41\x74\x74\x61\x63\x6B\x20\x6F\x70\x74\x69\x6F\x6E\x73\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x6F\x70\x74\x73\x44\x75\x72\x61\x74\x69\x6F\x6E\x20\x3D\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6C\x61\x62\x65\x6C\x3A\x20\x22\x44\x75\x72\x61\x74\x69\x6F\x6E\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x68\x69\x6E\x74\x3A\x20\x22\x54\x68\x65\x20\x64\x75\x72\x61\x74\x69\x6F\x6E\x20\x6F\x66\x20\x61\x74\x74\x61\x63\x6B\x2C\x20\x69\x6E\x20\x73\x65\x63\x6F\x6E\x64\x73\x2E\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x6C\x75\x65\x3A\x20\x6C\x6F\x61\x64\x54\x61\x72\x67\x65\x74\x4F\x70\x74\x44\x75\x72\x61\x74\x69\x6F\x6E\x28\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x29\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6D\x69\x6E\x3A\x20\x31\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6C\x61\x73\x73\x5F\x69\x6E\x70\x75\x74\x3A\x20\x43\x4C\x41\x53\x53\x5F\x49\x4E\x50\x55\x54\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6C\x61\x73\x73\x5F\x6C\x61\x62\x65\x6C\x3A\x20\x43\x4C\x41\x53\x53\x5F\x49\x4E\x50\x55\x54\x5F\x4C\x41\x42\x45\x4C\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x73\x5F\x68\x69\x6E\x74\x5F\x74\x6F\x67\x67\x6C\x65\x64\x3A\x20\x74\x72\x75\x65\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6F\x6E\x43\x68\x61\x6E\x67\x65\x48\x61\x6E\x64\x6C\x65\x72\x3A\x20\x28\x76\x29\x20\x3D\x3E\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\x70\x74\x73\x2E\x44\x75\x72\x61\x74\x69\x6F\x6E\x20\x3D\x20\x76\x20\x2A\x20\x31\x65\x39\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x63\x6F\x6D\x49\x6E\x70\x75\x74\x44\x75\x72\x61\x74\x69\x6F\x6E\x20\x3D\x20\x6E\x65\x77\x20\x57\x75\x69\x49\x6E\x70\x75\x74\x4E\x75\x6D\x62\x65\x72\x28\x6F\x70\x74\x73\x44\x75\x72\x61\x74\x69\x6F\x6E\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x6F\x70\x74\x73\x52\x61\x74\x65\x20\x3D\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6C\x61\x62\x65\x6C\x3A\x20\x22\x52\x61\x74\x65\x20\x70\x65\x72\x20\x73\x65\x63\x6F\x6E\x64\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x68\x69\x6E\x74\x3A\x20\x22\x54\x68\x65\x20\x6E\x75\x6D\x62\x65\x72\x20\x6F\x66\x20\x72\x65\x71\x75\x65\x73\x74\x20\x73\x65\x6E\x64\x20\x70\x65\x72\x20\x73\x65\x63\x6F\x6E\x64\x20\x77\x68\x65\x6E\x20\x61\x74\x74\x61\x63\x6B\x69\x6E\x67\x20\x74\x61\x72\x67\x65\x74\x2E\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x6C\x75\x65\x3A\x20\x6C\x6F\x61\x64\x54\x61\x72\x67\x65\x74\x4F\x70\x74\x52\x61\x74\x65\x50\x65\x72\x53\x65\x63\x6F\x6E\x64\x28\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x29\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6D\x69\x6E\x3A\x20\x31\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6C\x61\x73\x73\x5F\x69\x6E\x70\x75\x74\x3A\x20\x43\x4C\x41\x53\x53\x5F\x49\x4E\x50\x55\x54\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6C\x61\x73\x73\x5F\x6C\x61\x62\x65\x6C\x3A\x20\x43\x4C\x41\x53\x53\x5F\x49\x4E\x50\x55\x54\x5F\x4C\x41\x42\x45\x4C\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x73\x5F\x68\x69\x6E\x74\x5F\x74\x6F\x67\x67\x6C\x65\x64\x3A\x20\x74\x72\x75\x65\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6F\x6E\x43\x68\x61\x6E\x67\x65\x48\x61\x6E\x64\x6C\x65\x72\x3A\x20\x28\x76\x29\x20\x3D\x3E\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\x70\x74\x73\x2E\x52\x61\x74\x65\x50\x65\x72\x53\x65\x63\x6F\x6E\x64\x20\x3D\x20\x76\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x63\x6F\x6D\x49\x6E\x70\x75\x74\x52\x61\x74\x65\x20\x3D\x20\x6E\x65\x77\x20\x57\x75\x69\x49\x6E\x70\x75\x74\x4E\x75\x6D\x62\x65\x72\x28\x6F\x70\x74\x73\x52\x61\x74\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x6F\x70\x74\x73\x54\x69\x6D\x65\x6F\x75\x74\x20\x3D\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6C\x61\x62\x65\x6C\x3A\x20\x22\x54\x69\x6D\x65\x6F\x75\x74\x20\x28\x73\x65\x63\x6F\x6E\x64\x73\x29\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x68\x69\x6E\x74\x3A\x20\x22\x54\x69\x6D\x65\x6F\x75\x74\x20\x66\x6F\x72\x20\x65\x61\x63\x68\x20\x72\x65\x71\x75\x65\x73\x74\x2C\x20\x69\x6E\x20\x73\x65\x63\x6F\x6E\x64\x73\x2E\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x6C\x75\x65\x3A\x20\x6C\x6F\x61\x64\x54\x61\x72\x67\x65\x74\x4F\x70\x74\x54\x69\x6D\x65\x6F\x75\x74\x28\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x29\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6D\x69\x6E\x3A\x20\x35\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6C\x61\x73\x73\x5F\x69\x6E\x70\x75\x74\x3A\x20\x43\x4C\x41\x53\x53\x5F\x49\x4E\x50\x55\x54\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6C\x61\x73\x73\x5F\x6C\x61\x62\x65\x6C\x3A\x20\x43\x4C\x41\x53\x53\x5F\x49\x4E\x50\x55\x54\x5F\x4C\x41\x42\x45\x4C\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x73\x5F\x68\x69\x6E\x74\x5F\x74\x6F\x67\x67\x6C\x65\x64\x3A\x20\x74\x72\x75\x65\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6F\x6E\x43\x68\x61\x6E\x67\x65\x48\x61\x6E\x64\x6C\x65\x72\x3A\x20\x28\x76\x29\x20\x3D\x3E\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\x70\x74\x73\x2E\x54\x69\x6D\x65\x6F\x75\x74\x20\x3D\x20\x76\x20\x2A\x20\x31\x65\x39\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x63\x6F\x6D\x49\x6E\x70\x75\x74\x54\x69\x6D\x65\x6F\x75\x74\x20\x3D\x20\x6E\x65\x77\x20\x57\x75\x69\x49\x6E\x70\x75\x74\x4E\x75\x6D\x62\x65\x72\x28\x6F\x70\x74\x73\x54\x69\x6D\x65\x6F\x75\x74\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x77\x72\x61\x70\x70\x65\x72\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x6C\x65\x67\x65\x6E\x64\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x77\x72\x61\x70\x70\x65\x72\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x63\x6F\x6D\x49\x6E\x70\x75\x74\x44\x75\x72\x61\x74\x69\x6F\x6E\x2E\x65\x6C\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x77\x72\x61\x70\x70\x65\x72\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x63\x6F\x6D\x49\x6E\x70\x75\x74\x52\x61\x74\x65\x2E\x65\x6C\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x77\x72\x61\x70\x70\x65\x72\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x63\x6F\x6D\x49\x6E\x70\x75\x74\x54\x69\x6D\x65\x6F\x75\x74\x2E\x65\x6C\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x43\x6F\x6E\x74\x65\x6E\x74\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x77\x72\x61\x70\x70\x65\x72\x29\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x43\x6F\x6E\x74\x65\x6E\x74\x56\x61\x72\x73\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x21\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x56\x61\x72\x73\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\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x77\x72\x61\x70\x70\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\x66\x69\x65\x6C\x64\x73\x65\x74\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x6C\x65\x67\x65\x6E\x64\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\x6C\x65\x67\x65\x6E\x64\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x6C\x65\x67\x65\x6E\x64\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x22\x56\x61\x72\x69\x61\x62\x6C\x65\x73\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x77\x72\x61\x70\x70\x65\x72\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x6C\x65\x67\x65\x6E\x64\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x66\x6F\x72\x20\x28\x63\x6F\x6E\x73\x74\x20\x5B\x6B\x65\x79\x2C\x20\x66\x69\x5D\x20\x6F\x66\x20\x4F\x62\x6A\x65\x63\x74\x2E\x65\x6E\x74\x72\x69\x65\x73\x28\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x56\x61\x72\x73\x29\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x66\x69\x2E\x76\x61\x6C\x75\x65\x20\x3D\x20\x6C\x6F\x61\x64\x54\x61\x72\x67\x65\x74\x56\x61\x72\x28\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2C\x20\x6B\x65\x79\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x46\x6F\x72\x6D\x49\x6E\x70\x75\x74\x28\x77\x72\x61\x70\x70\x65\x72\x2C\x20\x66\x69\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\x65\x6C\x43\x6F\x6E\x74\x65\x6E\x74\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x77\x72\x61\x70\x70\x65\x72\x29\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x48\x54\x54\x50\x54\x61\x72\x67\x65\x74\x73\x28\x74\x72\x75\x6E\x6B\x73\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x21\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x48\x54\x54\x50\x54\x61\x72\x67\x65\x74\x73\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\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x48\x54\x54\x50\x54\x61\x72\x67\x65\x74\x73\x2E\x66\x6F\x72\x45\x61\x63\x68\x28\x28\x68\x74\x74\x70\x54\x61\x72\x67\x65\x74\x29\x20\x3D\x3E\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x63\x6F\x6D\x48\x54\x54\x50\x54\x61\x72\x67\x65\x74\x20\x3D\x20\x6E\x65\x77\x20\x48\x54\x54\x50\x54\x61\x72\x67\x65\x74\x28\x74\x72\x75\x6E\x6B\x73\x2C\x20\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2C\x20\x68\x74\x74\x70\x54\x61\x72\x67\x65\x74\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x68\x74\x74\x70\x5F\x74\x61\x72\x67\x65\x74\x73\x5B\x68\x74\x74\x70\x54\x61\x72\x67\x65\x74\x2E\x49\x44\x5D\x20\x3D\x20\x63\x6F\x6D\x48\x54\x54\x50\x54\x61\x72\x67\x65\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x43\x6F\x6E\x74\x65\x6E\x74\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x63\x6F\x6D\x48\x54\x54\x50\x54\x61\x72\x67\x65\x74\x2E\x65\x6C\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x29\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x57\x65\x62\x53\x6F\x63\x6B\x65\x74\x54\x61\x72\x67\x65\x74\x73\x28\x74\x72\x75\x6E\x6B\x73\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x21\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x57\x65\x62\x53\x6F\x63\x6B\x65\x74\x54\x61\x72\x67\x65\x74\x73\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\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x57\x65\x62\x53\x6F\x63\x6B\x65\x74\x54\x61\x72\x67\x65\x74\x73\x2E\x66\x6F\x72\x45\x61\x63\x68\x28\x28\x77\x73\x54\x61\x72\x67\x65\x74\x29\x20\x3D\x3E\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x63\x6F\x6D\x57\x53\x54\x61\x72\x67\x65\x74\x20\x3D\x20\x6E\x65\x77\x20\x57\x65\x62\x53\x6F\x63\x6B\x65\x74\x54\x61\x72\x67\x65\x74\x28\x74\x72\x75\x6E\x6B\x73\x2C\x20\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2C\x20\x77\x73\x54\x61\x72\x67\x65\x74\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x77\x73\x5F\x74\x61\x72\x67\x65\x74\x73\x5B\x77\x73\x54\x61\x72\x67\x65\x74\x2E\x49\x44\x5D\x20\x3D\x20\x63\x6F\x6D\x57\x53\x54\x61\x72\x67\x65\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x43\x6F\x6E\x74\x65\x6E\x74\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x63\x6F\x6D\x57\x53\x54\x61\x72\x67\x65\x74\x2E\x65\x6C\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x29\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x7D\x0A"), } node.SetMode(420) - node.SetModTimeUnix(1707037266, 125128515) + node.SetModTimeUnix(1707078138, 325859620) node.SetName("target.js") node.SetSize(6937) return node @@ -274,7 +274,7 @@ func generate__www_trunks_js() *memfs.Node { Content: []byte("\x2F\x2F\x20\x53\x50\x44\x58\x2D\x46\x69\x6C\x65\x43\x6F\x70\x79\x72\x69\x67\x68\x74\x54\x65\x78\x74\x3A\x20\x32\x30\x32\x31\x20\x4D\x2E\x20\x53\x68\x75\x6C\x68\x61\x6E\x20\x3C\x6D\x73\x40\x6B\x69\x6C\x61\x62\x69\x74\x2E\x69\x6E\x66\x6F\x3E\x0A\x2F\x2F\x20\x53\x50\x44\x58\x2D\x4C\x69\x63\x65\x6E\x73\x65\x2D\x49\x64\x65\x6E\x74\x69\x66\x69\x65\x72\x3A\x20\x47\x50\x4C\x2D\x33\x2E\x30\x2D\x6F\x72\x2D\x6C\x61\x74\x65\x72\x0A\x69\x6D\x70\x6F\x72\x74\x20\x7B\x20\x45\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74\x20\x7D\x20\x66\x72\x6F\x6D\x20\x22\x2E\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74\x2E\x6A\x73\x22\x3B\x0A\x69\x6D\x70\x6F\x72\x74\x20\x7B\x20\x73\x61\x76\x65\x20\x7D\x20\x66\x72\x6F\x6D\x20\x22\x2E\x2F\x66\x75\x6E\x63\x74\x69\x6F\x6E\x73\x2E\x6A\x73\x22\x3B\x0A\x69\x6D\x70\x6F\x72\x74\x20\x7B\x20\x48\x41\x53\x48\x5F\x45\x4E\x56\x49\x52\x4F\x4E\x4D\x45\x4E\x54\x2C\x20\x7D\x20\x66\x72\x6F\x6D\x20\x22\x2E\x2F\x69\x6E\x74\x65\x72\x66\x61\x63\x65\x2E\x6A\x73\x22\x3B\x0A\x69\x6D\x70\x6F\x72\x74\x20\x7B\x20\x4E\x61\x76\x4C\x69\x6E\x6B\x73\x20\x7D\x20\x66\x72\x6F\x6D\x20\x22\x2E\x2F\x6E\x61\x76\x5F\x6C\x69\x6E\x6B\x73\x2E\x6A\x73\x22\x3B\x0A\x69\x6D\x70\x6F\x72\x74\x20\x7B\x20\x54\x61\x72\x67\x65\x74\x20\x7D\x20\x66\x72\x6F\x6D\x20\x22\x2E\x2F\x74\x61\x72\x67\x65\x74\x2E\x6A\x73\x22\x3B\x0A\x69\x6D\x70\x6F\x72\x74\x20\x7B\x20\x77\x75\x69\x4E\x6F\x74\x69\x66\x20\x7D\x20\x66\x72\x6F\x6D\x20\x22\x2E\x2F\x76\x61\x72\x73\x2E\x6A\x73\x22\x3B\x0A\x63\x6F\x6E\x73\x74\x20\x41\x50\x49\x5F\x41\x54\x54\x41\x43\x4B\x5F\x48\x54\x54\x50\x20\x3D\x20\x22\x2F\x5F\x74\x72\x75\x6E\x6B\x73\x2F\x61\x70\x69\x2F\x61\x74\x74\x61\x63\x6B\x2F\x68\x74\x74\x70\x22\x3B\x0A\x63\x6F\x6E\x73\x74\x20\x41\x50\x49\x5F\x41\x54\x54\x41\x43\x4B\x5F\x52\x45\x53\x55\x4C\x54\x20\x3D\x20\x22\x2F\x5F\x74\x72\x75\x6E\x6B\x73\x2F\x61\x70\x69\x2F\x61\x74\x74\x61\x63\x6B\x2F\x72\x65\x73\x75\x6C\x74\x22\x3B\x0A\x63\x6F\x6E\x73\x74\x20\x41\x50\x49\x5F\x45\x4E\x56\x49\x52\x4F\x4E\x4D\x45\x4E\x54\x20\x3D\x20\x22\x2F\x5F\x74\x72\x75\x6E\x6B\x73\x2F\x61\x70\x69\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74\x22\x3B\x0A\x63\x6F\x6E\x73\x74\x20\x41\x50\x49\x5F\x4E\x41\x56\x4C\x49\x4E\x4B\x53\x20\x3D\x20\x22\x2F\x5F\x74\x72\x75\x6E\x6B\x73\x2F\x61\x70\x69\x2F\x6E\x61\x76\x6C\x69\x6E\x6B\x73\x22\x3B\x0A\x63\x6F\x6E\x73\x74\x20\x41\x50\x49\x5F\x54\x41\x52\x47\x45\x54\x53\x20\x3D\x20\x22\x2F\x5F\x74\x72\x75\x6E\x6B\x73\x2F\x61\x70\x69\x2F\x74\x61\x72\x67\x65\x74\x73\x22\x3B\x0A\x63\x6F\x6E\x73\x74\x20\x41\x50\x49\x5F\x54\x41\x52\x47\x45\x54\x5F\x52\x55\x4E\x5F\x48\x54\x54\x50\x20\x3D\x20\x22\x2F\x5F\x74\x72\x75\x6E\x6B\x73\x2F\x61\x70\x69\x2F\x74\x61\x72\x67\x65\x74\x2F\x72\x75\x6E\x2F\x68\x74\x74\x70\x22\x3B\x0A\x63\x6F\x6E\x73\x74\x20\x41\x50\x49\x5F\x54\x41\x52\x47\x45\x54\x5F\x52\x55\x4E\x5F\x57\x45\x42\x53\x4F\x43\x4B\x45\x54\x20\x3D\x20\x22\x2F\x5F\x74\x72\x75\x6E\x6B\x73\x2F\x61\x70\x69\x2F\x74\x61\x72\x67\x65\x74\x2F\x72\x75\x6E\x2F\x77\x65\x62\x73\x6F\x63\x6B\x65\x74\x22\x3B\x0A\x63\x6F\x6E\x73\x74\x20\x43\x4C\x41\x53\x53\x5F\x41\x54\x54\x41\x43\x4B\x5F\x52\x55\x4E\x4E\x49\x4E\x47\x20\x3D\x20\x22\x74\x72\x75\x6E\x6B\x73\x5F\x61\x74\x74\x61\x63\x6B\x5F\x72\x75\x6E\x6E\x69\x6E\x67\x22\x3B\x0A\x63\x6F\x6E\x73\x74\x20\x43\x4C\x41\x53\x53\x5F\x46\x4F\x4F\x54\x45\x52\x20\x3D\x20\x22\x74\x72\x75\x6E\x6B\x73\x5F\x66\x6F\x6F\x74\x65\x72\x22\x3B\x0A\x63\x6F\x6E\x73\x74\x20\x43\x4C\x41\x53\x53\x5F\x4D\x41\x49\x4E\x20\x3D\x20\x22\x74\x72\x75\x6E\x6B\x73\x5F\x6D\x61\x69\x6E\x22\x3B\x0A\x63\x6F\x6E\x73\x74\x20\x43\x4C\x41\x53\x53\x5F\x4E\x41\x56\x20\x3D\x20\x22\x74\x72\x75\x6E\x6B\x73\x5F\x6E\x61\x76\x22\x3B\x0A\x65\x78\x70\x6F\x72\x74\x20\x63\x6C\x61\x73\x73\x20\x54\x72\x75\x6E\x6B\x73\x20\x7B\x0A\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x72\x75\x63\x74\x6F\x72\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6E\x76\x20\x3D\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x4C\x69\x73\x74\x65\x6E\x41\x64\x64\x72\x65\x73\x73\x3A\x20\x22\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x4D\x61\x78\x41\x74\x74\x61\x63\x6B\x44\x75\x72\x61\x74\x69\x6F\x6E\x3A\x20\x30\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x4D\x61\x78\x41\x74\x74\x61\x63\x6B\x52\x61\x74\x65\x3A\x20\x30\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x52\x65\x73\x75\x6C\x74\x73\x44\x69\x72\x3A\x20\x22\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x52\x65\x73\x75\x6C\x74\x73\x53\x75\x66\x66\x69\x78\x3A\x20\x22\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x41\x74\x74\x61\x63\x6B\x52\x75\x6E\x6E\x69\x6E\x67\x3A\x20\x6E\x75\x6C\x6C\x2C\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\x74\x61\x72\x67\x65\x74\x73\x20\x3D\x20\x7B\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6E\x61\x76\x4C\x69\x6E\x6B\x73\x20\x3D\x20\x7B\x7D\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\x63\x6F\x6D\x45\x6E\x76\x20\x3D\x20\x6E\x65\x77\x20\x45\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74\x28\x74\x68\x69\x73\x2C\x20\x74\x68\x69\x73\x2E\x65\x6E\x76\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x67\x65\x6E\x65\x72\x61\x74\x65\x4E\x61\x76\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x67\x65\x6E\x65\x72\x61\x74\x65\x43\x6F\x6E\x74\x65\x6E\x74\x28\x29\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\x7D\x0A\x20\x20\x20\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x4E\x61\x76\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x65\x6C\x4E\x61\x76\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\x65\x6C\x4E\x61\x76\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x43\x4C\x41\x53\x53\x5F\x4E\x41\x56\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x57\x53\x43\x6F\x6E\x6E\x53\x74\x61\x74\x75\x73\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\x63\x6F\x6E\x73\x74\x20\x66\x73\x41\x74\x74\x61\x63\x6B\x52\x75\x6E\x6E\x69\x6E\x67\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\x66\x69\x65\x6C\x64\x73\x65\x74\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x6C\x65\x67\x65\x6E\x64\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\x6C\x65\x67\x65\x6E\x64\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x6C\x65\x67\x65\x6E\x64\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x22\x41\x74\x74\x61\x63\x6B\x20\x72\x75\x6E\x6E\x69\x6E\x67\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x41\x74\x74\x61\x63\x6B\x52\x75\x6E\x6E\x69\x6E\x67\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\x41\x74\x74\x61\x63\x6B\x52\x75\x6E\x6E\x69\x6E\x67\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x43\x4C\x41\x53\x53\x5F\x41\x54\x54\x41\x43\x4B\x5F\x52\x55\x4E\x4E\x49\x4E\x47\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x4E\x61\x76\x43\x6F\x6E\x74\x65\x6E\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\x64\x69\x76\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x4E\x61\x76\x4C\x69\x6E\x6B\x73\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\x63\x6F\x6E\x73\x74\x20\x65\x6C\x4E\x61\x76\x46\x6F\x6F\x74\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\x64\x69\x76\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x4E\x61\x76\x46\x6F\x6F\x74\x65\x72\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x43\x4C\x41\x53\x53\x5F\x46\x4F\x4F\x54\x45\x52\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x4E\x61\x76\x46\x6F\x6F\x74\x65\x72\x2E\x69\x6E\x6E\x65\x72\x48\x54\x4D\x4C\x20\x3D\x20\x60\x0A\x09\x09\x09\x3C\x64\x69\x76\x3E\x0A\x09\x09\x09\x09\x3C\x64\x69\x76\x3E\x50\x6F\x77\x65\x72\x65\x64\x20\x62\x79\x20\x3C\x61\x20\x68\x72\x65\x66\x3D\x22\x68\x74\x74\x70\x73\x3A\x2F\x2F\x73\x72\x2E\x68\x74\x2F\x7E\x73\x68\x75\x6C\x68\x61\x6E\x2F\x74\x72\x75\x6E\x6B\x73\x22\x20\x74\x61\x72\x67\x65\x74\x3D\x22\x5F\x62\x6C\x61\x6E\x6B\x22\x3E\x54\x72\x75\x6E\x6B\x73\x3C\x2F\x61\x3E\x3C\x2F\x64\x69\x76\x3E\x0A\x09\x09\x09\x09\x3C\x64\x69\x76\x3E\x3C\x61\x20\x68\x72\x65\x66\x3D\x22\x2F\x64\x6F\x63\x2F\x22\x20\x74\x61\x72\x67\x65\x74\x3D\x22\x5F\x62\x6C\x61\x6E\x6B\x22\x3E\x44\x6F\x63\x75\x6D\x65\x6E\x74\x61\x74\x69\x6F\x6E\x3C\x2F\x61\x3E\x3C\x2F\x64\x69\x76\x3E\x0A\x09\x09\x09\x3C\x2F\x64\x69\x76\x3E\x0A\x09\x09\x60\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x4E\x61\x76\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x74\x68\x69\x73\x2E\x65\x6C\x57\x53\x43\x6F\x6E\x6E\x53\x74\x61\x74\x75\x73\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x66\x73\x41\x74\x74\x61\x63\x6B\x52\x75\x6E\x6E\x69\x6E\x67\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x6C\x65\x67\x65\x6E\x64\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x66\x73\x41\x74\x74\x61\x63\x6B\x52\x75\x6E\x6E\x69\x6E\x67\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x74\x68\x69\x73\x2E\x65\x6C\x41\x74\x74\x61\x63\x6B\x52\x75\x6E\x6E\x69\x6E\x67\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x4E\x61\x76\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x66\x73\x41\x74\x74\x61\x63\x6B\x52\x75\x6E\x6E\x69\x6E\x67\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x4E\x61\x76\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x74\x68\x69\x73\x2E\x63\x6F\x6D\x45\x6E\x76\x2E\x65\x6C\x4E\x61\x76\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x4E\x61\x76\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x74\x68\x69\x73\x2E\x65\x6C\x4E\x61\x76\x43\x6F\x6E\x74\x65\x6E\x74\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x4E\x61\x76\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x63\x72\x65\x61\x74\x65\x45\x6C\x65\x6D\x65\x6E\x74\x28\x22\x68\x72\x22\x29\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x4E\x61\x76\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x74\x68\x69\x73\x2E\x65\x6C\x4E\x61\x76\x4C\x69\x6E\x6B\x73\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x4E\x61\x76\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x65\x6C\x4E\x61\x76\x46\x6F\x6F\x74\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\x65\x6C\x4E\x61\x76\x29\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x43\x6F\x6E\x74\x65\x6E\x74\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x77\x72\x61\x70\x70\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\x64\x69\x76\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x77\x72\x61\x70\x70\x65\x72\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x43\x4C\x41\x53\x53\x5F\x4D\x41\x49\x4E\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x41\x74\x74\x61\x63\x6B\x43\x61\x6E\x63\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\x62\x75\x74\x74\x6F\x6E\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x41\x74\x74\x61\x63\x6B\x43\x61\x6E\x63\x65\x6C\x2E\x69\x6E\x6E\x65\x72\x48\x54\x4D\x4C\x20\x3D\x20\x22\x43\x61\x6E\x63\x65\x6C\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x43\x6F\x6E\x74\x65\x6E\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\x64\x69\x76\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x77\x72\x61\x70\x70\x65\x72\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x74\x68\x69\x73\x2E\x65\x6C\x43\x6F\x6E\x74\x65\x6E\x74\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\x77\x72\x61\x70\x70\x65\x72\x29\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x61\x73\x79\x6E\x63\x20\x69\x6E\x69\x74\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x61\x77\x61\x69\x74\x20\x74\x68\x69\x73\x2E\x61\x70\x69\x45\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74\x47\x65\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x61\x77\x61\x69\x74\x20\x74\x68\x69\x73\x2E\x69\x6E\x69\x74\x54\x61\x72\x67\x65\x74\x73\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x61\x77\x61\x69\x74\x20\x74\x68\x69\x73\x2E\x69\x6E\x69\x74\x4E\x61\x76\x4C\x69\x6E\x6B\x73\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x77\x69\x6E\x64\x6F\x77\x4F\x6E\x48\x61\x73\x68\x43\x68\x61\x6E\x67\x65\x28\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\x28\x29\x20\x3D\x3E\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x77\x69\x6E\x64\x6F\x77\x4F\x6E\x48\x61\x73\x68\x43\x68\x61\x6E\x67\x65\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x61\x73\x79\x6E\x63\x20\x61\x70\x69\x45\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74\x47\x65\x74\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x68\x74\x74\x70\x52\x65\x73\x20\x3D\x20\x61\x77\x61\x69\x74\x20\x66\x65\x74\x63\x68\x28\x41\x50\x49\x5F\x45\x4E\x56\x49\x52\x4F\x4E\x4D\x45\x4E\x54\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x72\x65\x73\x20\x3D\x20\x61\x77\x61\x69\x74\x20\x68\x74\x74\x70\x52\x65\x73\x2E\x6A\x73\x6F\x6E\x28\x29\x3B\x0A\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\x77\x75\x69\x4E\x6F\x74\x69\x66\x2E\x65\x72\x72\x6F\x72\x28\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\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\x6E\x76\x20\x3D\x20\x72\x65\x73\x2E\x64\x61\x74\x61\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x73\x65\x74\x41\x74\x74\x61\x63\x6B\x52\x75\x6E\x6E\x69\x6E\x67\x28\x74\x68\x69\x73\x2E\x65\x6E\x76\x2E\x41\x74\x74\x61\x63\x6B\x52\x75\x6E\x6E\x69\x6E\x67\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x45\x6E\x76\x2E\x73\x65\x74\x28\x74\x68\x69\x73\x2E\x65\x6E\x76\x29\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x61\x73\x79\x6E\x63\x20\x69\x6E\x69\x74\x4E\x61\x76\x4C\x69\x6E\x6B\x73\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x68\x74\x74\x70\x52\x65\x73\x20\x3D\x20\x61\x77\x61\x69\x74\x20\x66\x65\x74\x63\x68\x28\x41\x50\x49\x5F\x4E\x41\x56\x4C\x49\x4E\x4B\x53\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x72\x65\x73\x20\x3D\x20\x61\x77\x61\x69\x74\x20\x68\x74\x74\x70\x52\x65\x73\x2E\x6A\x73\x6F\x6E\x28\x29\x3B\x0A\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\x77\x75\x69\x4E\x6F\x74\x69\x66\x2E\x65\x72\x72\x6F\x72\x28\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\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\x63\x6F\x6D\x4E\x61\x76\x4C\x69\x6E\x6B\x73\x20\x3D\x20\x6E\x65\x77\x20\x4E\x61\x76\x4C\x69\x6E\x6B\x73\x28\x74\x68\x69\x73\x2C\x20\x72\x65\x73\x2E\x64\x61\x74\x61\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x4E\x61\x76\x4C\x69\x6E\x6B\x73\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x74\x68\x69\x73\x2E\x63\x6F\x6D\x4E\x61\x76\x4C\x69\x6E\x6B\x73\x2E\x65\x6C\x4E\x61\x76\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x66\x6F\x72\x20\x28\x63\x6F\x6E\x73\x74\x20\x6E\x61\x76\x20\x6F\x66\x20\x72\x65\x73\x2E\x64\x61\x74\x61\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6E\x61\x76\x4C\x69\x6E\x6B\x73\x5B\x6E\x61\x76\x2E\x49\x44\x5D\x20\x3D\x20\x6E\x61\x76\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x61\x73\x79\x6E\x63\x20\x69\x6E\x69\x74\x54\x61\x72\x67\x65\x74\x73\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x68\x74\x74\x70\x52\x65\x73\x20\x3D\x20\x61\x77\x61\x69\x74\x20\x66\x65\x74\x63\x68\x28\x41\x50\x49\x5F\x54\x41\x52\x47\x45\x54\x53\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x72\x65\x73\x20\x3D\x20\x61\x77\x61\x69\x74\x20\x68\x74\x74\x70\x52\x65\x73\x2E\x6A\x73\x6F\x6E\x28\x29\x3B\x0A\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\x77\x75\x69\x4E\x6F\x74\x69\x66\x2E\x65\x72\x72\x6F\x72\x28\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\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\x63\x6F\x6E\x73\x74\x20\x74\x61\x72\x67\x65\x74\x73\x20\x3D\x20\x72\x65\x73\x2E\x64\x61\x74\x61\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x4E\x61\x76\x43\x6F\x6E\x74\x65\x6E\x74\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\x63\x6F\x6E\x73\x74\x20\x74\x61\x72\x67\x65\x74\x20\x6F\x66\x20\x74\x61\x72\x67\x65\x74\x73\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x63\x6F\x6D\x54\x61\x72\x67\x65\x74\x20\x3D\x20\x6E\x65\x77\x20\x54\x61\x72\x67\x65\x74\x28\x74\x68\x69\x73\x2C\x20\x74\x61\x72\x67\x65\x74\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x74\x61\x72\x67\x65\x74\x73\x5B\x74\x61\x72\x67\x65\x74\x2E\x49\x44\x5D\x20\x3D\x20\x63\x6F\x6D\x54\x61\x72\x67\x65\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x4E\x61\x76\x43\x6F\x6E\x74\x65\x6E\x74\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x63\x6F\x6D\x54\x61\x72\x67\x65\x74\x2E\x65\x6C\x4E\x61\x76\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x61\x73\x79\x6E\x63\x20\x6F\x6E\x43\x6C\x69\x63\x6B\x41\x74\x74\x61\x63\x6B\x43\x61\x6E\x63\x65\x6C\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x66\x72\x65\x73\x20\x3D\x20\x61\x77\x61\x69\x74\x20\x66\x65\x74\x63\x68\x28\x41\x50\x49\x5F\x41\x54\x54\x41\x43\x4B\x5F\x48\x54\x54\x50\x2C\x20\x7B\x0A\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\x7D\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x6A\x73\x6F\x6E\x52\x65\x73\x20\x3D\x20\x61\x77\x61\x69\x74\x20\x66\x72\x65\x73\x2E\x6A\x73\x6F\x6E\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x6A\x73\x6F\x6E\x52\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\x77\x75\x69\x4E\x6F\x74\x69\x66\x2E\x65\x72\x72\x6F\x72\x28\x6A\x73\x6F\x6E\x52\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\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\x77\x75\x69\x4E\x6F\x74\x69\x66\x2E\x69\x6E\x66\x6F\x28\x6A\x73\x6F\x6E\x52\x65\x73\x2E\x6D\x65\x73\x73\x61\x67\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x73\x65\x74\x41\x74\x74\x61\x63\x6B\x52\x75\x6E\x6E\x69\x6E\x67\x28\x6E\x75\x6C\x6C\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x6A\x73\x6F\x6E\x52\x65\x73\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x77\x69\x6E\x64\x6F\x77\x4F\x6E\x48\x61\x73\x68\x43\x68\x61\x6E\x67\x65\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x2F\x2F\x20\x50\x61\x72\x73\x65\x20\x74\x68\x65\x20\x6C\x6F\x63\x61\x74\x69\x6F\x6E\x20\x68\x61\x73\x68\x2E\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x70\x61\x74\x68\x20\x3D\x20\x77\x69\x6E\x64\x6F\x77\x2E\x6C\x6F\x63\x61\x74\x69\x6F\x6E\x2E\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\x63\x6F\x6E\x73\x74\x20\x70\x61\x74\x68\x73\x20\x3D\x20\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\x69\x66\x20\x28\x70\x61\x74\x68\x73\x2E\x6C\x65\x6E\x67\x74\x68\x20\x3C\x20\x32\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\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x70\x61\x74\x68\x73\x5B\x31\x5D\x20\x3D\x3D\x3D\x20\x48\x41\x53\x48\x5F\x45\x4E\x56\x49\x52\x4F\x4E\x4D\x45\x4E\x54\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x43\x6F\x6E\x74\x65\x6E\x74\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\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x43\x6F\x6E\x74\x65\x6E\x74\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x74\x68\x69\x73\x2E\x63\x6F\x6D\x45\x6E\x76\x2E\x65\x6C\x43\x6F\x6E\x74\x65\x6E\x74\x29\x3B\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\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x6F\x6C\x65\x2E\x6C\x6F\x67\x28\x22\x70\x61\x74\x68\x73\x3A\x20\x22\x2C\x20\x70\x61\x74\x68\x73\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x6C\x65\x74\x20\x65\x6C\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x21\x70\x61\x74\x68\x73\x5B\x31\x5D\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\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x74\x61\x72\x67\x65\x74\x20\x3D\x20\x74\x68\x69\x73\x2E\x74\x61\x72\x67\x65\x74\x73\x5B\x70\x61\x74\x68\x73\x5B\x31\x5D\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x21\x74\x61\x72\x67\x65\x74\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\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x73\x77\x69\x74\x63\x68\x20\x28\x70\x61\x74\x68\x73\x2E\x6C\x65\x6E\x67\x74\x68\x29\x20\x7B\x0A\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\x63\x61\x73\x65\x20\x33\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x61\x72\x67\x65\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x43\x6F\x6E\x74\x65\x6E\x74\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\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x43\x6F\x6E\x74\x65\x6E\x74\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x74\x61\x72\x67\x65\x74\x2E\x65\x6C\x43\x6F\x6E\x74\x65\x6E\x74\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\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\x70\x61\x74\x68\x73\x5B\x31\x5D\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\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\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x2E\x73\x63\x72\x6F\x6C\x6C\x49\x6E\x74\x6F\x56\x69\x65\x77\x28\x29\x3B\x0A\x20\x20\x20\x20\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\x7D\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\x63\x61\x73\x65\x20\x34\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x70\x61\x74\x68\x73\x5B\x32\x5D\x20\x3D\x3D\x3D\x20\x22\x68\x74\x74\x70\x22\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x43\x6F\x6E\x74\x65\x6E\x74\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\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x43\x6F\x6E\x74\x65\x6E\x74\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x74\x61\x72\x67\x65\x74\x2E\x65\x6C\x43\x6F\x6E\x74\x65\x6E\x74\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\x65\x6C\x73\x65\x20\x69\x66\x20\x28\x70\x61\x74\x68\x73\x5B\x32\x5D\x20\x3D\x3D\x3D\x20\x22\x77\x73\x22\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x43\x6F\x6E\x74\x65\x6E\x74\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\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x43\x6F\x6E\x74\x65\x6E\x74\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x74\x61\x72\x67\x65\x74\x2E\x65\x6C\x43\x6F\x6E\x74\x65\x6E\x74\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\x65\x6C\x73\x65\x20\x69\x66\x20\x28\x70\x61\x74\x68\x73\x5B\x32\x5D\x20\x3D\x3D\x3D\x20\x22\x6C\x69\x6E\x6B\x22\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x70\x61\x74\x68\x73\x5B\x33\x5D\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x6E\x61\x76\x20\x3D\x20\x74\x68\x69\x73\x2E\x6E\x61\x76\x4C\x69\x6E\x6B\x73\x5B\x70\x61\x74\x68\x73\x5B\x33\x5D\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x6E\x61\x76\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x43\x6F\x6E\x74\x65\x6E\x74\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\x20\x20\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\x4E\x61\x76\x4C\x69\x6E\x6B\x73\x2E\x6F\x70\x65\x6E\x28\x6E\x61\x76\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\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\x20\x20\x20\x20\x7D\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\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\x70\x61\x74\x68\x73\x5B\x33\x5D\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\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\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x2E\x73\x63\x72\x6F\x6C\x6C\x49\x6E\x74\x6F\x56\x69\x65\x77\x28\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\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x73\x65\x74\x41\x74\x74\x61\x63\x6B\x52\x75\x6E\x6E\x69\x6E\x67\x28\x72\x75\x6E\x52\x65\x71\x75\x65\x73\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x21\x72\x75\x6E\x52\x65\x71\x75\x65\x73\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x41\x74\x74\x61\x63\x6B\x52\x75\x6E\x6E\x69\x6E\x67\x2E\x69\x6E\x6E\x65\x72\x48\x54\x4D\x4C\x20\x3D\x20\x22\x2D\x22\x3B\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\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x21\x72\x75\x6E\x52\x65\x71\x75\x65\x73\x74\x2E\x54\x61\x72\x67\x65\x74\x20\x7C\x7C\x20\x21\x72\x75\x6E\x52\x65\x71\x75\x65\x73\x74\x2E\x48\x54\x54\x50\x54\x61\x72\x67\x65\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x41\x74\x74\x61\x63\x6B\x52\x75\x6E\x6E\x69\x6E\x67\x2E\x69\x6E\x6E\x65\x72\x48\x54\x4D\x4C\x20\x3D\x20\x22\x2D\x22\x3B\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\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x41\x74\x74\x61\x63\x6B\x52\x75\x6E\x6E\x69\x6E\x67\x2E\x69\x6E\x6E\x65\x72\x48\x54\x4D\x4C\x20\x3D\x20\x60\x0A\x09\x09\x09\x24\x7B\x72\x75\x6E\x52\x65\x71\x75\x65\x73\x74\x2E\x54\x61\x72\x67\x65\x74\x2E\x4E\x61\x6D\x65\x7D\x20\x3C\x62\x72\x2F\x3E\x0A\x09\x09\x09\x2F\x20\x24\x7B\x72\x75\x6E\x52\x65\x71\x75\x65\x73\x74\x2E\x48\x54\x54\x50\x54\x61\x72\x67\x65\x74\x2E\x4E\x61\x6D\x65\x7D\x20\x3C\x62\x72\x2F\x3E\x0A\x09\x09\x09\x3C\x62\x72\x2F\x3E\x0A\x09\x09\x60\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x41\x74\x74\x61\x63\x6B\x43\x61\x6E\x63\x65\x6C\x2E\x6F\x6E\x63\x6C\x69\x63\x6B\x20\x3D\x20\x28\x29\x20\x3D\x3E\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6F\x6E\x43\x6C\x69\x63\x6B\x41\x74\x74\x61\x63\x6B\x43\x61\x6E\x63\x65\x6C\x28\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\x41\x74\x74\x61\x63\x6B\x52\x75\x6E\x6E\x69\x6E\x67\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x74\x68\x69\x73\x2E\x65\x6C\x41\x74\x74\x61\x63\x6B\x43\x61\x6E\x63\x65\x6C\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x77\x75\x69\x4E\x6F\x74\x69\x66\x2E\x69\x6E\x66\x6F\x28\x60\x41\x74\x74\x61\x63\x6B\x69\x6E\x67\x20\x22\x24\x7B\x72\x75\x6E\x52\x65\x71\x75\x65\x73\x74\x2E\x54\x61\x72\x67\x65\x74\x2E\x4E\x61\x6D\x65\x7D\x2F\x24\x7B\x72\x75\x6E\x52\x65\x71\x75\x65\x73\x74\x2E\x48\x54\x54\x50\x54\x61\x72\x67\x65\x74\x2E\x4E\x61\x6D\x65\x7D\x22\x20\x2E\x2E\x2E\x60\x29\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x61\x73\x79\x6E\x63\x20\x61\x74\x74\x61\x63\x6B\x48\x54\x54\x50\x28\x74\x61\x72\x67\x65\x74\x2C\x20\x68\x74\x74\x70\x54\x61\x72\x67\x65\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x73\x61\x76\x65\x28\x74\x61\x72\x67\x65\x74\x2C\x20\x68\x74\x74\x70\x54\x61\x72\x67\x65\x74\x2C\x20\x6E\x75\x6C\x6C\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x61\x74\x74\x61\x63\x6B\x52\x65\x71\x20\x3D\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x54\x61\x72\x67\x65\x74\x3A\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x49\x44\x3A\x20\x74\x61\x72\x67\x65\x74\x2E\x49\x44\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x4F\x70\x74\x73\x3A\x20\x74\x61\x72\x67\x65\x74\x2E\x4F\x70\x74\x73\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x56\x61\x72\x73\x3A\x20\x74\x61\x72\x67\x65\x74\x2E\x56\x61\x72\x73\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x4E\x61\x6D\x65\x3A\x20\x74\x61\x72\x67\x65\x74\x2E\x4E\x61\x6D\x65\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x42\x61\x73\x65\x55\x52\x4C\x3A\x20\x74\x61\x72\x67\x65\x74\x2E\x42\x61\x73\x65\x55\x52\x4C\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x48\x54\x54\x50\x54\x61\x72\x67\x65\x74\x73\x3A\x20\x5B\x5D\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x57\x65\x62\x53\x6F\x63\x6B\x65\x74\x54\x61\x72\x67\x65\x74\x73\x3A\x20\x5B\x5D\x2C\x0A\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\x48\x54\x54\x50\x54\x61\x72\x67\x65\x74\x3A\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x49\x44\x3A\x20\x68\x74\x74\x70\x54\x61\x72\x67\x65\x74\x2E\x49\x44\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x4E\x61\x6D\x65\x3A\x20\x68\x74\x74\x70\x54\x61\x72\x67\x65\x74\x2E\x4E\x61\x6D\x65\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x4D\x65\x74\x68\x6F\x64\x3A\x20\x68\x74\x74\x70\x54\x61\x72\x67\x65\x74\x2E\x4D\x65\x74\x68\x6F\x64\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x50\x61\x74\x68\x3A\x20\x68\x74\x74\x70\x54\x61\x72\x67\x65\x74\x2E\x50\x61\x74\x68\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x52\x65\x71\x75\x65\x73\x74\x54\x79\x70\x65\x3A\x20\x68\x74\x74\x70\x54\x61\x72\x67\x65\x74\x2E\x52\x65\x71\x75\x65\x73\x74\x54\x79\x70\x65\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x48\x65\x61\x64\x65\x72\x73\x3A\x20\x68\x74\x74\x70\x54\x61\x72\x67\x65\x74\x2E\x48\x65\x61\x64\x65\x72\x73\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x50\x61\x72\x61\x6D\x73\x3A\x20\x68\x74\x74\x70\x54\x61\x72\x67\x65\x74\x2E\x50\x61\x72\x61\x6D\x73\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x52\x65\x73\x75\x6C\x74\x73\x3A\x20\x5B\x5D\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x41\x6C\x6C\x6F\x77\x41\x74\x74\x61\x63\x6B\x3A\x20\x68\x74\x74\x70\x54\x61\x72\x67\x65\x74\x2E\x41\x6C\x6C\x6F\x77\x41\x74\x74\x61\x63\x6B\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x49\x73\x43\x75\x73\x74\x6F\x6D\x69\x7A\x61\x62\x6C\x65\x3A\x20\x68\x74\x74\x70\x54\x61\x72\x67\x65\x74\x2E\x49\x73\x43\x75\x73\x74\x6F\x6D\x69\x7A\x61\x62\x6C\x65\x2C\x0A\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\x57\x65\x62\x53\x6F\x63\x6B\x65\x74\x54\x61\x72\x67\x65\x74\x3A\x20\x6E\x75\x6C\x6C\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x68\x74\x74\x70\x52\x65\x73\x20\x3D\x20\x61\x77\x61\x69\x74\x20\x66\x65\x74\x63\x68\x28\x41\x50\x49\x5F\x41\x54\x54\x41\x43\x4B\x5F\x48\x54\x54\x50\x2C\x20\x7B\x0A\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\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\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\x2C\x0A\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\x62\x6F\x64\x79\x3A\x20\x4A\x53\x4F\x4E\x2E\x73\x74\x72\x69\x6E\x67\x69\x66\x79\x28\x61\x74\x74\x61\x63\x6B\x52\x65\x71\x29\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x6A\x73\x6F\x6E\x52\x65\x73\x20\x3D\x20\x61\x77\x61\x69\x74\x20\x68\x74\x74\x70\x52\x65\x73\x2E\x6A\x73\x6F\x6E\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x6A\x73\x6F\x6E\x52\x65\x73\x2E\x63\x6F\x64\x65\x20\x3E\x3D\x20\x34\x30\x30\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x77\x75\x69\x4E\x6F\x74\x69\x66\x2E\x65\x72\x72\x6F\x72\x28\x6A\x73\x6F\x6E\x52\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\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\x73\x65\x74\x41\x74\x74\x61\x63\x6B\x52\x75\x6E\x6E\x69\x6E\x67\x28\x61\x74\x74\x61\x63\x6B\x52\x65\x71\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x6A\x73\x6F\x6E\x52\x65\x73\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x61\x73\x79\x6E\x63\x20\x61\x74\x74\x61\x63\x6B\x48\x54\x54\x50\x44\x65\x6C\x65\x74\x65\x28\x6E\x61\x6D\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x6D\x73\x67\x20\x3D\x20\x60\x41\x72\x65\x20\x79\x6F\x75\x20\x73\x75\x72\x65\x20\x79\x6F\x75\x20\x77\x61\x6E\x74\x20\x74\x6F\x20\x64\x65\x6C\x65\x74\x65\x20\x74\x68\x65\x20\x72\x65\x73\x75\x6C\x74\x3A\x20\x24\x7B\x6E\x61\x6D\x65\x7D\x3F\x60\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x79\x65\x73\x20\x3D\x20\x77\x69\x6E\x64\x6F\x77\x2E\x63\x6F\x6E\x66\x69\x72\x6D\x28\x6D\x73\x67\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x21\x79\x65\x73\x29\x20\x7B\x0A\x20\x20\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\x63\x6F\x6E\x73\x74\x20\x75\x72\x6C\x20\x3D\x20\x41\x50\x49\x5F\x41\x54\x54\x41\x43\x4B\x5F\x52\x45\x53\x55\x4C\x54\x20\x2B\x20\x22\x3F\x6E\x61\x6D\x65\x3D\x22\x20\x2B\x20\x6E\x61\x6D\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x66\x72\x65\x73\x20\x3D\x20\x61\x77\x61\x69\x74\x20\x66\x65\x74\x63\x68\x28\x75\x72\x6C\x2C\x20\x7B\x0A\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\x7D\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x6A\x73\x6F\x6E\x52\x65\x73\x20\x3D\x20\x61\x77\x61\x69\x74\x20\x66\x72\x65\x73\x2E\x6A\x73\x6F\x6E\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x6A\x73\x6F\x6E\x52\x65\x73\x2E\x63\x6F\x64\x65\x20\x3E\x3D\x20\x34\x30\x30\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x77\x75\x69\x4E\x6F\x74\x69\x66\x2E\x65\x72\x72\x6F\x72\x28\x6A\x73\x6F\x6E\x52\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\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\x72\x65\x74\x75\x72\x6E\x20\x6A\x73\x6F\x6E\x52\x65\x73\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x61\x73\x79\x6E\x63\x20\x61\x74\x74\x61\x63\x6B\x48\x54\x54\x50\x47\x65\x74\x28\x6E\x61\x6D\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x75\x72\x6C\x20\x3D\x20\x41\x50\x49\x5F\x41\x54\x54\x41\x43\x4B\x5F\x52\x45\x53\x55\x4C\x54\x20\x2B\x20\x22\x3F\x6E\x61\x6D\x65\x3D\x22\x20\x2B\x20\x6E\x61\x6D\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x66\x72\x65\x73\x20\x3D\x20\x61\x77\x61\x69\x74\x20\x66\x65\x74\x63\x68\x28\x75\x72\x6C\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x72\x65\x73\x20\x3D\x20\x61\x77\x61\x69\x74\x20\x66\x72\x65\x73\x2E\x6A\x73\x6F\x6E\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x72\x65\x73\x2E\x63\x6F\x64\x65\x20\x3E\x3D\x20\x34\x30\x30\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x77\x75\x69\x4E\x6F\x74\x69\x66\x2E\x65\x72\x72\x6F\x72\x28\x72\x65\x73\x2E\x6D\x65\x73\x73\x61\x67\x65\x29\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\x72\x65\x73\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x63\x6F\x6E\x74\x65\x6E\x74\x52\x65\x6E\x64\x65\x72\x65\x72\x28\x74\x61\x72\x67\x65\x74\x2C\x20\x68\x74\x74\x70\x54\x61\x72\x67\x65\x74\x2C\x20\x77\x73\x54\x61\x72\x67\x65\x74\x2C\x20\x6E\x61\x76\x4C\x69\x6E\x6B\x2C\x20\x65\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x6C\x65\x74\x20\x68\x61\x73\x68\x20\x3D\x20\x22\x23\x2F\x22\x20\x2B\x20\x74\x61\x72\x67\x65\x74\x2E\x49\x44\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x68\x74\x74\x70\x54\x61\x72\x67\x65\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x68\x61\x73\x68\x20\x2B\x3D\x20\x22\x2F\x68\x74\x74\x70\x2F\x22\x20\x2B\x20\x68\x74\x74\x70\x54\x61\x72\x67\x65\x74\x2E\x49\x44\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x73\x65\x20\x69\x66\x20\x28\x77\x73\x54\x61\x72\x67\x65\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x68\x61\x73\x68\x20\x2B\x3D\x20\x22\x2F\x77\x73\x2F\x22\x20\x2B\x20\x77\x73\x54\x61\x72\x67\x65\x74\x2E\x49\x44\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x73\x65\x20\x69\x66\x20\x28\x6E\x61\x76\x4C\x69\x6E\x6B\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x68\x61\x73\x68\x20\x2B\x3D\x20\x22\x2F\x6C\x69\x6E\x6B\x2F\x22\x20\x2B\x20\x6E\x61\x76\x4C\x69\x6E\x6B\x2E\x49\x44\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\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\x68\x61\x73\x68\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x43\x6F\x6E\x74\x65\x6E\x74\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\x65\x6C\x43\x6F\x6E\x74\x65\x6E\x74\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x65\x6C\x29\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x61\x73\x79\x6E\x63\x20\x72\x75\x6E\x48\x54\x54\x50\x28\x74\x61\x72\x67\x65\x74\x2C\x20\x68\x74\x74\x70\x54\x61\x72\x67\x65\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x73\x61\x76\x65\x28\x74\x61\x72\x67\x65\x74\x2C\x20\x68\x74\x74\x70\x54\x61\x72\x67\x65\x74\x2C\x20\x6E\x75\x6C\x6C\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x72\x65\x71\x20\x3D\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x54\x61\x72\x67\x65\x74\x3A\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x49\x44\x3A\x20\x74\x61\x72\x67\x65\x74\x2E\x49\x44\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x4F\x70\x74\x73\x3A\x20\x74\x61\x72\x67\x65\x74\x2E\x4F\x70\x74\x73\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x56\x61\x72\x73\x3A\x20\x74\x61\x72\x67\x65\x74\x2E\x56\x61\x72\x73\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x4E\x61\x6D\x65\x3A\x20\x22\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x42\x61\x73\x65\x55\x52\x4C\x3A\x20\x22\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x48\x54\x54\x50\x54\x61\x72\x67\x65\x74\x73\x3A\x20\x5B\x5D\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x57\x65\x62\x53\x6F\x63\x6B\x65\x74\x54\x61\x72\x67\x65\x74\x73\x3A\x20\x5B\x5D\x2C\x0A\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\x48\x54\x54\x50\x54\x61\x72\x67\x65\x74\x3A\x20\x68\x74\x74\x70\x54\x61\x72\x67\x65\x74\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x57\x65\x62\x53\x6F\x63\x6B\x65\x74\x54\x61\x72\x67\x65\x74\x3A\x20\x6E\x75\x6C\x6C\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x68\x74\x74\x70\x52\x65\x73\x20\x3D\x20\x61\x77\x61\x69\x74\x20\x66\x65\x74\x63\x68\x28\x41\x50\x49\x5F\x54\x41\x52\x47\x45\x54\x5F\x52\x55\x4E\x5F\x48\x54\x54\x50\x2C\x20\x7B\x0A\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\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\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\x2C\x0A\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\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\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x6A\x73\x6F\x6E\x52\x65\x73\x20\x3D\x20\x61\x77\x61\x69\x74\x20\x68\x74\x74\x70\x52\x65\x73\x2E\x6A\x73\x6F\x6E\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x6A\x73\x6F\x6E\x52\x65\x73\x2E\x63\x6F\x64\x65\x20\x3E\x3D\x20\x34\x30\x30\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x77\x75\x69\x4E\x6F\x74\x69\x66\x2E\x65\x72\x72\x6F\x72\x28\x6A\x73\x6F\x6E\x52\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\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\x63\x6F\x6E\x73\x74\x20\x72\x65\x73\x20\x3D\x20\x6A\x73\x6F\x6E\x52\x65\x73\x2E\x64\x61\x74\x61\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x72\x65\x73\x2E\x52\x65\x73\x70\x6F\x6E\x73\x65\x53\x74\x61\x74\x75\x73\x43\x6F\x64\x65\x20\x3E\x3D\x20\x34\x30\x30\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x77\x75\x69\x4E\x6F\x74\x69\x66\x2E\x65\x72\x72\x6F\x72\x28\x60\x24\x7B\x68\x74\x74\x70\x54\x61\x72\x67\x65\x74\x2E\x4E\x61\x6D\x65\x7D\x3A\x20\x24\x7B\x72\x65\x73\x2E\x52\x65\x73\x70\x6F\x6E\x73\x65\x53\x74\x61\x74\x75\x73\x7D\x60\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x73\x65\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x77\x75\x69\x4E\x6F\x74\x69\x66\x2E\x69\x6E\x66\x6F\x28\x60\x24\x7B\x68\x74\x74\x70\x54\x61\x72\x67\x65\x74\x2E\x4E\x61\x6D\x65\x7D\x3A\x20\x24\x7B\x72\x65\x73\x2E\x52\x65\x73\x70\x6F\x6E\x73\x65\x53\x74\x61\x74\x75\x73\x7D\x60\x29\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\x72\x65\x73\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x61\x73\x79\x6E\x63\x20\x72\x75\x6E\x57\x65\x62\x53\x6F\x63\x6B\x65\x74\x28\x74\x61\x72\x67\x65\x74\x2C\x20\x77\x73\x54\x61\x72\x67\x65\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x73\x61\x76\x65\x28\x74\x61\x72\x67\x65\x74\x2C\x20\x6E\x75\x6C\x6C\x2C\x20\x77\x73\x54\x61\x72\x67\x65\x74\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x72\x65\x71\x20\x3D\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x54\x61\x72\x67\x65\x74\x3A\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x49\x44\x3A\x20\x74\x61\x72\x67\x65\x74\x2E\x49\x44\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x4F\x70\x74\x73\x3A\x20\x74\x61\x72\x67\x65\x74\x2E\x4F\x70\x74\x73\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x56\x61\x72\x73\x3A\x20\x74\x61\x72\x67\x65\x74\x2E\x56\x61\x72\x73\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x4E\x61\x6D\x65\x3A\x20\x22\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x42\x61\x73\x65\x55\x52\x4C\x3A\x20\x22\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x48\x54\x54\x50\x54\x61\x72\x67\x65\x74\x73\x3A\x20\x5B\x5D\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x57\x65\x62\x53\x6F\x63\x6B\x65\x74\x54\x61\x72\x67\x65\x74\x73\x3A\x20\x5B\x5D\x2C\x0A\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\x48\x54\x54\x50\x54\x61\x72\x67\x65\x74\x3A\x20\x6E\x75\x6C\x6C\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x57\x65\x62\x53\x6F\x63\x6B\x65\x74\x54\x61\x72\x67\x65\x74\x3A\x20\x77\x73\x54\x61\x72\x67\x65\x74\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x66\x72\x65\x73\x20\x3D\x20\x61\x77\x61\x69\x74\x20\x66\x65\x74\x63\x68\x28\x41\x50\x49\x5F\x54\x41\x52\x47\x45\x54\x5F\x52\x55\x4E\x5F\x57\x45\x42\x53\x4F\x43\x4B\x45\x54\x2C\x20\x7B\x0A\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\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\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\x2C\x0A\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\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\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x6A\x73\x6F\x6E\x52\x65\x73\x20\x3D\x20\x61\x77\x61\x69\x74\x20\x66\x72\x65\x73\x2E\x6A\x73\x6F\x6E\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x6A\x73\x6F\x6E\x52\x65\x73\x2E\x63\x6F\x64\x65\x20\x3E\x3D\x20\x34\x30\x30\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x77\x75\x69\x4E\x6F\x74\x69\x66\x2E\x65\x72\x72\x6F\x72\x28\x6A\x73\x6F\x6E\x52\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\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\x77\x75\x69\x4E\x6F\x74\x69\x66\x2E\x69\x6E\x66\x6F\x28\x60\x24\x7B\x77\x73\x54\x61\x72\x67\x65\x74\x2E\x4E\x61\x6D\x65\x7D\x3A\x20\x73\x75\x63\x63\x65\x73\x73\x2E\x60\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x6A\x73\x6F\x6E\x52\x65\x73\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x73\x65\x74\x43\x6F\x6E\x74\x65\x6E\x74\x28\x70\x61\x74\x68\x2C\x20\x65\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x43\x6F\x6E\x74\x65\x6E\x74\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\x65\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x43\x6F\x6E\x74\x65\x6E\x74\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\x0A\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\x2F\x22\x20\x2B\x20\x70\x61\x74\x68\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x7D\x0A"), } node.SetMode(420) - node.SetModTimeUnix(1707037266, 135128566) + node.SetModTimeUnix(1707078138, 392526359) node.SetName("trunks.js") node.SetSize(12672) return node @@ -289,7 +289,7 @@ func generate__www_vars_js() *memfs.Node { Content: []byte("\x2F\x2F\x20\x53\x50\x44\x58\x2D\x46\x69\x6C\x65\x43\x6F\x70\x79\x72\x69\x67\x68\x74\x54\x65\x78\x74\x3A\x20\x32\x30\x32\x31\x20\x4D\x2E\x20\x53\x68\x75\x6C\x68\x61\x6E\x20\x3C\x6D\x73\x40\x6B\x69\x6C\x61\x62\x69\x74\x2E\x69\x6E\x66\x6F\x3E\x0A\x2F\x2F\x20\x53\x50\x44\x58\x2D\x4C\x69\x63\x65\x6E\x73\x65\x2D\x49\x64\x65\x6E\x74\x69\x66\x69\x65\x72\x3A\x20\x47\x50\x4C\x2D\x33\x2E\x30\x2D\x6F\x72\x2D\x6C\x61\x74\x65\x72\x0A\x69\x6D\x70\x6F\x72\x74\x20\x7B\x20\x57\x75\x69\x4E\x6F\x74\x69\x66\x20\x7D\x20\x66\x72\x6F\x6D\x20\x22\x2E\x2F\x77\x75\x69\x2F\x6E\x6F\x74\x69\x66\x2F\x6E\x6F\x74\x69\x66\x2E\x6A\x73\x22\x3B\x0A\x65\x78\x70\x6F\x72\x74\x20\x63\x6F\x6E\x73\x74\x20\x77\x75\x69\x4E\x6F\x74\x69\x66\x20\x3D\x20\x6E\x65\x77\x20\x57\x75\x69\x4E\x6F\x74\x69\x66\x28\x29\x3B\x0A"), } node.SetMode(420) - node.SetModTimeUnix(1707037266, 128461865) + node.SetModTimeUnix(1707078138, 325859620) node.SetName("vars.js") node.SetSize(195) return node @@ -304,7 +304,7 @@ func generate__www_ws_target_js() *memfs.Node { Content: []byte("\x2F\x2F\x20\x53\x50\x44\x58\x2D\x46\x69\x6C\x65\x43\x6F\x70\x79\x72\x69\x67\x68\x74\x54\x65\x78\x74\x3A\x20\x32\x30\x32\x31\x20\x4D\x2E\x20\x53\x68\x75\x6C\x68\x61\x6E\x20\x3C\x6D\x73\x40\x6B\x69\x6C\x61\x62\x69\x74\x2E\x69\x6E\x66\x6F\x3E\x0A\x2F\x2F\x20\x53\x50\x44\x58\x2D\x4C\x69\x63\x65\x6E\x73\x65\x2D\x49\x64\x65\x6E\x74\x69\x66\x69\x65\x72\x3A\x20\x47\x50\x4C\x2D\x33\x2E\x30\x2D\x6F\x72\x2D\x6C\x61\x74\x65\x72\x0A\x69\x6D\x70\x6F\x72\x74\x20\x7B\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x46\x6F\x72\x6D\x49\x6E\x70\x75\x74\x2C\x20\x6C\x6F\x61\x64\x57\x73\x54\x61\x72\x67\x65\x74\x48\x65\x61\x64\x65\x72\x2C\x20\x6C\x6F\x61\x64\x57\x73\x54\x61\x72\x67\x65\x74\x50\x61\x72\x61\x6D\x2C\x20\x7D\x20\x66\x72\x6F\x6D\x20\x22\x2E\x2F\x66\x75\x6E\x63\x74\x69\x6F\x6E\x73\x2E\x6A\x73\x22\x3B\x0A\x63\x6F\x6E\x73\x74\x20\x43\x4C\x41\x53\x53\x5F\x57\x53\x5F\x54\x41\x52\x47\x45\x54\x20\x3D\x20\x22\x77\x73\x5F\x74\x61\x72\x67\x65\x74\x22\x3B\x0A\x63\x6F\x6E\x73\x74\x20\x43\x4C\x41\x53\x53\x5F\x57\x53\x5F\x54\x41\x52\x47\x45\x54\x5F\x41\x43\x54\x49\x4F\x4E\x53\x20\x3D\x20\x22\x77\x73\x5F\x74\x61\x72\x67\x65\x74\x5F\x61\x63\x74\x69\x6F\x6E\x73\x22\x3B\x0A\x63\x6F\x6E\x73\x74\x20\x43\x4C\x41\x53\x53\x5F\x57\x53\x5F\x54\x41\x52\x47\x45\x54\x5F\x49\x4E\x50\x55\x54\x20\x3D\x20\x22\x77\x73\x5F\x74\x61\x72\x67\x65\x74\x5F\x69\x6E\x70\x75\x74\x22\x3B\x0A\x63\x6F\x6E\x73\x74\x20\x43\x4C\x41\x53\x53\x5F\x57\x53\x5F\x54\x41\x52\x47\x45\x54\x5F\x49\x4E\x50\x55\x54\x5F\x48\x45\x41\x44\x45\x52\x20\x3D\x20\x22\x77\x73\x5F\x74\x61\x72\x67\x65\x74\x5F\x69\x6E\x70\x75\x74\x5F\x68\x65\x61\x64\x65\x72\x22\x3B\x0A\x63\x6F\x6E\x73\x74\x20\x43\x4C\x41\x53\x53\x5F\x57\x53\x5F\x54\x41\x52\x47\x45\x54\x5F\x49\x4E\x50\x55\x54\x5F\x50\x41\x52\x41\x4D\x20\x3D\x20\x22\x77\x73\x5F\x74\x61\x72\x67\x65\x74\x5F\x69\x6E\x70\x75\x74\x5F\x70\x61\x72\x61\x6D\x22\x3B\x0A\x63\x6F\x6E\x73\x74\x20\x43\x4C\x41\x53\x53\x5F\x57\x53\x5F\x54\x41\x52\x47\x45\x54\x5F\x4F\x55\x54\x5F\x4D\x4F\x4E\x4F\x20\x3D\x20\x22\x77\x73\x5F\x74\x61\x72\x67\x65\x74\x5F\x6F\x75\x74\x5F\x6D\x6F\x6E\x6F\x22\x3B\x0A\x63\x6F\x6E\x73\x74\x20\x43\x4C\x41\x53\x53\x5F\x57\x53\x5F\x54\x41\x52\x47\x45\x54\x5F\x4F\x55\x54\x5F\x52\x55\x4E\x20\x3D\x20\x22\x77\x73\x5F\x74\x61\x72\x67\x65\x74\x5F\x6F\x75\x74\x5F\x72\x75\x6E\x22\x3B\x0A\x65\x78\x70\x6F\x72\x74\x20\x63\x6C\x61\x73\x73\x20\x57\x65\x62\x53\x6F\x63\x6B\x65\x74\x54\x61\x72\x67\x65\x74\x20\x7B\x0A\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x72\x75\x63\x74\x6F\x72\x28\x74\x72\x75\x6E\x6B\x73\x2C\x20\x74\x61\x72\x67\x65\x74\x2C\x20\x6F\x70\x74\x73\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x74\x72\x75\x6E\x6B\x73\x20\x3D\x20\x74\x72\x75\x6E\x6B\x73\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x74\x61\x72\x67\x65\x74\x20\x3D\x20\x74\x61\x72\x67\x65\x74\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\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\x5F\x62\x75\x74\x74\x6F\x6E\x5F\x72\x75\x6E\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\x62\x75\x74\x74\x6F\x6E\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x72\x65\x71\x75\x65\x73\x74\x5F\x69\x6E\x70\x75\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\x64\x69\x76\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x6F\x75\x74\x5F\x72\x65\x73\x70\x6F\x6E\x73\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\x70\x72\x65\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\x6F\x70\x74\x73\x2E\x49\x44\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\x57\x53\x5F\x54\x41\x52\x47\x45\x54\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x65\x6C\x54\x69\x74\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\x68\x33\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x54\x69\x74\x6C\x65\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x6F\x70\x74\x73\x2E\x4E\x61\x6D\x65\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\x65\x6C\x54\x69\x74\x6C\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x67\x65\x6E\x65\x72\x61\x74\x65\x41\x63\x74\x69\x6F\x6E\x73\x28\x65\x6C\x54\x69\x74\x6C\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x67\x65\x6E\x65\x72\x61\x74\x65\x48\x69\x6E\x74\x28\x74\x68\x69\x73\x2E\x65\x6C\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x67\x65\x6E\x65\x72\x61\x74\x65\x49\x6E\x70\x75\x74\x28\x74\x68\x69\x73\x2E\x65\x6C\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x67\x65\x6E\x65\x72\x61\x74\x65\x4F\x75\x74\x70\x75\x74\x28\x74\x68\x69\x73\x2E\x65\x6C\x29\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x41\x63\x74\x69\x6F\x6E\x73\x28\x70\x61\x72\x65\x6E\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x65\x6C\x41\x63\x74\x69\x6F\x6E\x73\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\x65\x6C\x41\x63\x74\x69\x6F\x6E\x73\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x43\x4C\x41\x53\x53\x5F\x57\x53\x5F\x54\x41\x52\x47\x45\x54\x5F\x41\x43\x54\x49\x4F\x4E\x53\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x62\x75\x74\x74\x6F\x6E\x5F\x72\x75\x6E\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x22\x52\x75\x6E\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x62\x75\x74\x74\x6F\x6E\x5F\x72\x75\x6E\x2E\x6F\x6E\x63\x6C\x69\x63\x6B\x20\x3D\x20\x28\x29\x20\x3D\x3E\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6F\x6E\x43\x6C\x69\x63\x6B\x52\x75\x6E\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x41\x63\x74\x69\x6F\x6E\x73\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x74\x68\x69\x73\x2E\x65\x6C\x5F\x62\x75\x74\x74\x6F\x6E\x5F\x72\x75\x6E\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x70\x61\x72\x65\x6E\x74\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x65\x6C\x41\x63\x74\x69\x6F\x6E\x73\x29\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x48\x69\x6E\x74\x28\x70\x61\x72\x65\x6E\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x21\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x48\x69\x6E\x74\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\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x65\x6C\x48\x69\x6E\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\x70\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x48\x69\x6E\x74\x2E\x69\x6E\x6E\x65\x72\x48\x54\x4D\x4C\x20\x3D\x20\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x48\x69\x6E\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x70\x61\x72\x65\x6E\x74\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x65\x6C\x48\x69\x6E\x74\x29\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x49\x6E\x70\x75\x74\x28\x70\x61\x72\x65\x6E\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x72\x65\x71\x75\x65\x73\x74\x5F\x69\x6E\x70\x75\x74\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x43\x4C\x41\x53\x53\x5F\x57\x53\x5F\x54\x41\x52\x47\x45\x54\x5F\x49\x4E\x50\x55\x54\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x67\x65\x6E\x65\x72\x61\x74\x65\x52\x65\x71\x75\x65\x73\x74\x48\x65\x61\x64\x65\x72\x73\x28\x74\x68\x69\x73\x2E\x65\x6C\x5F\x72\x65\x71\x75\x65\x73\x74\x5F\x69\x6E\x70\x75\x74\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x67\x65\x6E\x65\x72\x61\x74\x65\x52\x65\x71\x75\x65\x73\x74\x50\x61\x72\x61\x6D\x65\x74\x65\x72\x73\x28\x74\x68\x69\x73\x2E\x65\x6C\x5F\x72\x65\x71\x75\x65\x73\x74\x5F\x69\x6E\x70\x75\x74\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x70\x61\x72\x65\x6E\x74\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x74\x68\x69\x73\x2E\x65\x6C\x5F\x72\x65\x71\x75\x65\x73\x74\x5F\x69\x6E\x70\x75\x74\x29\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x52\x65\x71\x75\x65\x73\x74\x48\x65\x61\x64\x65\x72\x73\x28\x70\x61\x72\x65\x6E\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x21\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x48\x65\x61\x64\x65\x72\x73\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\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x4F\x62\x6A\x65\x63\x74\x2E\x6B\x65\x79\x73\x28\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x48\x65\x61\x64\x65\x72\x73\x29\x2E\x6C\x65\x6E\x67\x74\x68\x20\x3D\x3D\x3D\x20\x30\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\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x77\x72\x61\x70\x70\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\x64\x69\x76\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x77\x72\x61\x70\x70\x65\x72\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x43\x4C\x41\x53\x53\x5F\x57\x53\x5F\x54\x41\x52\x47\x45\x54\x5F\x49\x4E\x50\x55\x54\x5F\x48\x45\x41\x44\x45\x52\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x74\x69\x74\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\x68\x34\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x69\x74\x6C\x65\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x22\x48\x65\x61\x64\x65\x72\x73\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x77\x72\x61\x70\x70\x65\x72\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x74\x69\x74\x6C\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x66\x6F\x72\x20\x28\x63\x6F\x6E\x73\x74\x20\x5B\x6B\x65\x79\x2C\x20\x66\x69\x5D\x20\x6F\x66\x20\x4F\x62\x6A\x65\x63\x74\x2E\x65\x6E\x74\x72\x69\x65\x73\x28\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x48\x65\x61\x64\x65\x72\x73\x29\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x66\x69\x2E\x76\x61\x6C\x75\x65\x20\x3D\x20\x6C\x6F\x61\x64\x57\x73\x54\x61\x72\x67\x65\x74\x48\x65\x61\x64\x65\x72\x28\x74\x68\x69\x73\x2E\x74\x61\x72\x67\x65\x74\x2C\x20\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2C\x20\x6B\x65\x79\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x46\x6F\x72\x6D\x49\x6E\x70\x75\x74\x28\x77\x72\x61\x70\x70\x65\x72\x2C\x20\x66\x69\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x70\x61\x72\x65\x6E\x74\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x77\x72\x61\x70\x70\x65\x72\x29\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x52\x65\x71\x75\x65\x73\x74\x50\x61\x72\x61\x6D\x65\x74\x65\x72\x73\x28\x70\x61\x72\x65\x6E\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x21\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x50\x61\x72\x61\x6D\x73\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\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x4F\x62\x6A\x65\x63\x74\x2E\x6B\x65\x79\x73\x28\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x50\x61\x72\x61\x6D\x73\x29\x2E\x6C\x65\x6E\x67\x74\x68\x20\x3D\x3D\x3D\x20\x30\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\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x77\x72\x61\x70\x70\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\x66\x69\x65\x6C\x64\x73\x65\x74\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x77\x72\x61\x70\x70\x65\x72\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x43\x4C\x41\x53\x53\x5F\x57\x53\x5F\x54\x41\x52\x47\x45\x54\x5F\x49\x4E\x50\x55\x54\x5F\x50\x41\x52\x41\x4D\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x74\x69\x74\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\x6C\x65\x67\x65\x6E\x64\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x69\x74\x6C\x65\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x22\x50\x61\x72\x61\x6D\x65\x74\x65\x72\x73\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x77\x72\x61\x70\x70\x65\x72\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x74\x69\x74\x6C\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x66\x6F\x72\x20\x28\x63\x6F\x6E\x73\x74\x20\x5B\x6B\x65\x79\x2C\x20\x66\x69\x5D\x20\x6F\x66\x20\x4F\x62\x6A\x65\x63\x74\x2E\x65\x6E\x74\x72\x69\x65\x73\x28\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x50\x61\x72\x61\x6D\x73\x29\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x66\x69\x2E\x76\x61\x6C\x75\x65\x20\x3D\x20\x6C\x6F\x61\x64\x57\x73\x54\x61\x72\x67\x65\x74\x50\x61\x72\x61\x6D\x28\x74\x68\x69\x73\x2E\x74\x61\x72\x67\x65\x74\x2C\x20\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2C\x20\x6B\x65\x79\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x46\x6F\x72\x6D\x49\x6E\x70\x75\x74\x28\x77\x72\x61\x70\x70\x65\x72\x2C\x20\x66\x69\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x70\x61\x72\x65\x6E\x74\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x77\x72\x61\x70\x70\x65\x72\x29\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x4F\x75\x74\x70\x75\x74\x28\x70\x61\x72\x65\x6E\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x77\x72\x61\x70\x70\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\x66\x69\x65\x6C\x64\x73\x65\x74\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x77\x72\x61\x70\x70\x65\x72\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x43\x4C\x41\x53\x53\x5F\x57\x53\x5F\x54\x41\x52\x47\x45\x54\x5F\x4F\x55\x54\x5F\x52\x55\x4E\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x74\x69\x74\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\x6C\x65\x67\x65\x6E\x64\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x69\x74\x6C\x65\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x22\x52\x75\x6E\x20\x6F\x75\x74\x70\x75\x74\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x62\x74\x6E\x43\x6C\x65\x61\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\x62\x75\x74\x74\x6F\x6E\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x62\x74\x6E\x43\x6C\x65\x61\x72\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x22\x43\x6C\x65\x61\x72\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x62\x74\x6E\x43\x6C\x65\x61\x72\x2E\x6F\x6E\x63\x6C\x69\x63\x6B\x20\x3D\x20\x28\x29\x20\x3D\x3E\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6F\x6E\x43\x6C\x69\x63\x6B\x43\x6C\x65\x61\x72\x4F\x75\x74\x70\x75\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x69\x74\x6C\x65\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x62\x74\x6E\x43\x6C\x65\x61\x72\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x6F\x75\x74\x5F\x72\x65\x73\x70\x6F\x6E\x73\x65\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x43\x4C\x41\x53\x53\x5F\x57\x53\x5F\x54\x41\x52\x47\x45\x54\x5F\x4F\x55\x54\x5F\x4D\x4F\x4E\x4F\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x77\x72\x61\x70\x70\x65\x72\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x74\x69\x74\x6C\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x77\x72\x61\x70\x70\x65\x72\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x74\x68\x69\x73\x2E\x65\x6C\x5F\x6F\x75\x74\x5F\x72\x65\x73\x70\x6F\x6E\x73\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x70\x61\x72\x65\x6E\x74\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x77\x72\x61\x70\x70\x65\x72\x29\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x61\x73\x79\x6E\x63\x20\x6F\x6E\x43\x6C\x69\x63\x6B\x43\x6C\x65\x61\x72\x4F\x75\x74\x70\x75\x74\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x6F\x75\x74\x5F\x72\x65\x73\x70\x6F\x6E\x73\x65\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x22\x22\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x61\x73\x79\x6E\x63\x20\x6F\x6E\x43\x6C\x69\x63\x6B\x52\x75\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x72\x65\x73\x20\x3D\x20\x61\x77\x61\x69\x74\x20\x74\x68\x69\x73\x2E\x74\x72\x75\x6E\x6B\x73\x2E\x72\x75\x6E\x57\x65\x62\x53\x6F\x63\x6B\x65\x74\x28\x74\x68\x69\x73\x2E\x74\x61\x72\x67\x65\x74\x2C\x20\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x21\x72\x65\x73\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\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x6F\x75\x74\x5F\x72\x65\x73\x70\x6F\x6E\x73\x65\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x4A\x53\x4F\x4E\x2E\x73\x74\x72\x69\x6E\x67\x69\x66\x79\x28\x72\x65\x73\x2E\x64\x61\x74\x61\x2C\x20\x6E\x75\x6C\x6C\x2C\x20\x32\x29\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x7D\x0A"), } node.SetMode(420) - node.SetModTimeUnix(1707037266, 121795164) + node.SetModTimeUnix(1707078138, 319192946) node.SetName("ws_target.js") node.SetSize(4531) return node @@ -318,7 +318,7 @@ func generate__www_wui() *memfs.Node { GenFuncName: "generate__www_wui", } node.SetMode(2147484141) - node.SetModTimeUnix(1699683408, 371971654) + node.SetModTimeUnix(1707075273, 641481825) node.SetName("wui") node.SetSize(0) node.AddChild(_memfsWWW_getNode(memfsWWW, "/wui/.reuse", generate__www_wui__reuse)) @@ -340,7 +340,7 @@ func generate__www_wui__reuse() *memfs.Node { GenFuncName: "generate__www_wui__reuse", } node.SetMode(2147484141) - node.SetModTimeUnix(1650448813, 728338315) + node.SetModTimeUnix(1707075273, 641481825) node.SetName(".reuse") node.SetSize(0) return node @@ -368,7 +368,7 @@ func generate__www_wui_editor() *memfs.Node { GenFuncName: "generate__www_wui_editor", } node.SetMode(2147484141) - node.SetModTimeUnix(1699683408, 368638302) + node.SetModTimeUnix(1707075273, 641481825) node.SetName("editor") node.SetSize(0) node.AddChild(_memfsWWW_getNode(memfsWWW, "/wui/editor/editor.js", generate__www_wui_editor_editor_js)) @@ -398,10 +398,11 @@ func generate__www_wui_input() *memfs.Node { GenFuncName: "generate__www_wui_input", } node.SetMode(2147484141) - node.SetModTimeUnix(1699636953, 899489339) + node.SetModTimeUnix(1707075384, 945473396) node.SetName("input") node.SetSize(0) node.AddChild(_memfsWWW_getNode(memfsWWW, "/wui/input/checkboxes.js", generate__www_wui_input_checkboxes_js)) + node.AddChild(_memfsWWW_getNode(memfsWWW, "/wui/input/file.js", generate__www_wui_input_file_js)) node.AddChild(_memfsWWW_getNode(memfsWWW, "/wui/input/number.js", generate__www_wui_input_number_js)) node.AddChild(_memfsWWW_getNode(memfsWWW, "/wui/input/option.js", generate__www_wui_input_option_js)) node.AddChild(_memfsWWW_getNode(memfsWWW, "/wui/input/select.js", generate__www_wui_input_select_js)) @@ -424,6 +425,21 @@ func generate__www_wui_input_checkboxes_js() *memfs.Node { return node } +func generate__www_wui_input_file_js() *memfs.Node { + var node = &memfs.Node{ + SysPath: "_www/wui/input/file.js", + Path: "/wui/input/file.js", + ContentType: "text/javascript; charset=utf-8", + GenFuncName: "generate__www_wui_input_file_js", + Content: []byte("\x2F\x2F\x20\x53\x50\x44\x58\x2D\x46\x69\x6C\x65\x43\x6F\x70\x79\x72\x69\x67\x68\x74\x54\x65\x78\x74\x3A\x20\x32\x30\x32\x34\x20\x4D\x2E\x20\x53\x68\x75\x6C\x68\x61\x6E\x20\x3C\x6D\x73\x40\x6B\x69\x6C\x61\x62\x69\x74\x2E\x69\x6E\x66\x6F\x3E\x0A\x2F\x2F\x20\x53\x50\x44\x58\x2D\x4C\x69\x63\x65\x6E\x73\x65\x2D\x49\x64\x65\x6E\x74\x69\x66\x69\x65\x72\x3A\x20\x47\x50\x4C\x2D\x33\x2E\x30\x2D\x6F\x72\x2D\x6C\x61\x74\x65\x72\x0A\x65\x78\x70\x6F\x72\x74\x20\x63\x6C\x61\x73\x73\x20\x57\x75\x69\x49\x6E\x70\x75\x74\x46\x69\x6C\x65\x20\x7B\x0A\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x72\x75\x63\x74\x6F\x72\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x69\x64\x20\x3D\x20\x22\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6C\x61\x73\x73\x20\x3D\x20\x22\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x2F\x2F\x20\x46\x69\x6C\x74\x65\x72\x20\x66\x6F\x72\x20\x66\x69\x6C\x65\x73\x2E\x20\x46\x6F\x72\x20\x65\x78\x61\x6D\x70\x6C\x65\x20\x22\x69\x6D\x61\x67\x65\x2F\x2A\x22\x20\x74\x6F\x20\x61\x6C\x6C\x6F\x77\x20\x73\x65\x6C\x65\x63\x74\x69\x6E\x67\x20\x69\x6D\x61\x67\x65\x20\x66\x69\x6C\x65\x73\x2E\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x61\x63\x63\x65\x70\x74\x20\x3D\x20\x22\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6C\x61\x62\x65\x6C\x20\x3D\x20\x22\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x68\x69\x6E\x74\x20\x3D\x20\x22\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6C\x61\x73\x73\x49\x6E\x70\x75\x74\x20\x3D\x20\x22\x22\x3B\x20\x2F\x2F\x20\x43\x75\x73\x74\x6F\x6D\x20\x43\x53\x53\x20\x63\x6C\x61\x73\x73\x20\x66\x6F\x72\x20\x69\x6E\x70\x75\x74\x20\x65\x6C\x65\x6D\x65\x6E\x74\x2E\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6C\x61\x73\x73\x4C\x61\x62\x65\x6C\x20\x3D\x20\x22\x22\x3B\x20\x2F\x2F\x20\x43\x75\x73\x74\x6F\x6D\x20\x43\x53\x53\x20\x63\x6C\x61\x73\x73\x20\x66\x6F\x72\x20\x6C\x61\x62\x65\x6C\x2E\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6C\x61\x73\x73\x48\x69\x6E\x74\x20\x3D\x20\x22\x22\x3B\x20\x2F\x2F\x20\x43\x75\x73\x74\x6F\x6D\x20\x43\x53\x53\x20\x63\x6C\x61\x73\x73\x20\x66\x6F\x72\x20\x68\x69\x6E\x74\x20\x74\x65\x78\x74\x2E\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6C\x61\x73\x73\x48\x69\x6E\x74\x54\x6F\x67\x67\x6C\x65\x20\x3D\x20\x22\x22\x3B\x20\x2F\x2F\x20\x43\x75\x73\x74\x6F\x6D\x20\x43\x53\x53\x20\x63\x6C\x61\x73\x73\x20\x66\x6F\x72\x20\x68\x69\x6E\x74\x20\x74\x6F\x67\x67\x6C\x65\x72\x2E\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x69\x73\x44\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\x74\x68\x69\x73\x2E\x69\x73\x48\x69\x6E\x74\x53\x68\x6F\x77\x65\x64\x20\x3D\x20\x66\x61\x6C\x73\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x48\x69\x6E\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\x64\x69\x76\x22\x29\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x65\x6C\x65\x6D\x65\x6E\x74\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\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\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x69\x64\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x2E\x69\x64\x20\x3D\x20\x74\x68\x69\x73\x2E\x69\x64\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x22\x77\x75\x69\x5F\x69\x6E\x70\x75\x74\x5F\x66\x69\x6C\x65\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x63\x6C\x61\x73\x73\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x74\x68\x69\x73\x2E\x63\x6C\x61\x73\x73\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x77\x72\x61\x70\x70\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\x64\x69\x76\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x67\x65\x6E\x65\x72\x61\x74\x65\x4C\x61\x62\x65\x6C\x28\x77\x72\x61\x70\x70\x65\x72\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x67\x65\x6E\x65\x72\x61\x74\x65\x49\x6E\x70\x75\x74\x28\x77\x72\x61\x70\x70\x65\x72\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x67\x65\x6E\x65\x72\x61\x74\x65\x48\x69\x6E\x74\x54\x6F\x67\x67\x6C\x65\x72\x28\x77\x72\x61\x70\x70\x65\x72\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x77\x72\x61\x70\x70\x65\x72\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x67\x65\x6E\x65\x72\x61\x74\x65\x48\x69\x6E\x74\x28\x65\x6C\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x65\x6C\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x4C\x61\x62\x65\x6C\x28\x77\x72\x61\x70\x70\x65\x72\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x65\x6C\x4C\x61\x62\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\x6C\x61\x62\x65\x6C\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x4C\x61\x62\x65\x6C\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x22\x77\x75\x69\x5F\x69\x6E\x70\x75\x74\x5F\x66\x69\x6C\x65\x5F\x6C\x61\x62\x65\x6C\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x63\x6C\x61\x73\x73\x4C\x61\x62\x65\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x4C\x61\x62\x65\x6C\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x74\x68\x69\x73\x2E\x63\x6C\x61\x73\x73\x4C\x61\x62\x65\x6C\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x4C\x61\x62\x65\x6C\x2E\x69\x6E\x6E\x65\x72\x48\x54\x4D\x4C\x20\x3D\x20\x60\x24\x7B\x74\x68\x69\x73\x2E\x6C\x61\x62\x65\x6C\x7D\x20\x60\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x77\x72\x61\x70\x70\x65\x72\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x65\x6C\x4C\x61\x62\x65\x6C\x29\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x49\x6E\x70\x75\x74\x28\x77\x72\x61\x70\x70\x65\x72\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x65\x6C\x49\x6E\x70\x75\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\x69\x6E\x70\x75\x74\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x49\x6E\x70\x75\x74\x2E\x74\x79\x70\x65\x20\x3D\x20\x22\x66\x69\x6C\x65\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x49\x6E\x70\x75\x74\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x22\x77\x75\x69\x5F\x69\x6E\x70\x75\x74\x5F\x66\x69\x6C\x65\x5F\x69\x6E\x70\x75\x74\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x63\x6C\x61\x73\x73\x49\x6E\x70\x75\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x49\x6E\x70\x75\x74\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x74\x68\x69\x73\x2E\x63\x6C\x61\x73\x73\x49\x6E\x70\x75\x74\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\x61\x63\x63\x65\x70\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x49\x6E\x70\x75\x74\x2E\x61\x63\x63\x65\x70\x74\x20\x3D\x20\x74\x68\x69\x73\x2E\x61\x63\x63\x65\x70\x74\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\x69\x73\x44\x69\x73\x61\x62\x6C\x65\x64\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x49\x6E\x70\x75\x74\x2E\x64\x69\x73\x61\x62\x6C\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\x65\x6C\x49\x6E\x70\x75\x74\x2E\x6F\x6E\x63\x68\x61\x6E\x67\x65\x20\x3D\x20\x28\x65\x76\x65\x6E\x74\x29\x20\x3D\x3E\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x66\x69\x6C\x65\x20\x3D\x20\x65\x76\x65\x6E\x74\x2E\x74\x61\x72\x67\x65\x74\x2E\x66\x69\x6C\x65\x73\x5B\x30\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x66\x69\x6C\x65\x20\x26\x26\x20\x74\x68\x69\x73\x2E\x6F\x6E\x43\x68\x61\x6E\x67\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\x6E\x43\x68\x61\x6E\x67\x65\x28\x66\x69\x6C\x65\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\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x77\x72\x61\x70\x70\x65\x72\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x65\x6C\x49\x6E\x70\x75\x74\x29\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x48\x69\x6E\x74\x54\x6F\x67\x67\x6C\x65\x72\x28\x77\x72\x61\x70\x70\x65\x72\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x65\x6C\x48\x69\x6E\x74\x54\x6F\x67\x67\x6C\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\x65\x6C\x48\x69\x6E\x74\x54\x6F\x67\x67\x6C\x65\x72\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x22\x77\x75\x69\x5F\x69\x6E\x70\x75\x74\x5F\x66\x69\x6C\x65\x5F\x68\x69\x6E\x74\x5F\x74\x6F\x67\x67\x6C\x65\x72\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x63\x6C\x61\x73\x73\x48\x69\x6E\x74\x54\x6F\x67\x67\x6C\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x48\x69\x6E\x74\x54\x6F\x67\x67\x6C\x65\x72\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x74\x68\x69\x73\x2E\x63\x6C\x61\x73\x73\x48\x69\x6E\x74\x54\x6F\x67\x67\x6C\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x48\x69\x6E\x74\x54\x6F\x67\x67\x6C\x65\x72\x2E\x69\x6E\x6E\x65\x72\x48\x54\x4D\x4C\x20\x3D\x20\x22\x20\x26\x23\x78\x32\x31\x33\x39\x3B\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x48\x69\x6E\x74\x54\x6F\x67\x67\x6C\x65\x72\x2E\x6F\x6E\x6D\x6F\x75\x73\x65\x6F\x76\x65\x72\x20\x3D\x20\x28\x29\x20\x3D\x3E\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x48\x69\x6E\x74\x54\x6F\x67\x67\x6C\x65\x72\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\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x48\x69\x6E\x74\x54\x6F\x67\x67\x6C\x65\x72\x2E\x6F\x6E\x63\x6C\x69\x63\x6B\x20\x3D\x20\x28\x29\x20\x3D\x3E\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x65\x6C\x48\x69\x6E\x74\x2E\x73\x74\x79\x6C\x65\x2E\x64\x69\x73\x70\x6C\x61\x79\x20\x3D\x3D\x3D\x20\x22\x6E\x6F\x6E\x65\x22\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\x65\x6C\x48\x69\x6E\x74\x2E\x73\x74\x79\x6C\x65\x2E\x64\x69\x73\x70\x6C\x61\x79\x20\x3D\x20\x22\x62\x6C\x6F\x63\x6B\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\x20\x20\x65\x6C\x73\x65\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x48\x69\x6E\x74\x2E\x73\x74\x79\x6C\x65\x2E\x64\x69\x73\x70\x6C\x61\x79\x20\x3D\x20\x22\x6E\x6F\x6E\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\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x77\x72\x61\x70\x70\x65\x72\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x65\x6C\x48\x69\x6E\x74\x54\x6F\x67\x67\x6C\x65\x72\x29\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x48\x69\x6E\x74\x28\x70\x61\x72\x65\x6E\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x48\x69\x6E\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\x64\x69\x76\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x48\x69\x6E\x74\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x22\x77\x75\x69\x5F\x69\x6E\x70\x75\x74\x5F\x66\x69\x6C\x65\x5F\x68\x69\x6E\x74\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x63\x6C\x61\x73\x73\x48\x69\x6E\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x48\x69\x6E\x74\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x74\x68\x69\x73\x2E\x63\x6C\x61\x73\x73\x48\x69\x6E\x74\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\x65\x6C\x48\x69\x6E\x74\x2E\x69\x6E\x6E\x65\x72\x48\x54\x4D\x4C\x20\x3D\x20\x74\x68\x69\x73\x2E\x68\x69\x6E\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x48\x69\x6E\x74\x2E\x73\x74\x79\x6C\x65\x2E\x62\x6F\x72\x64\x65\x72\x52\x61\x64\x69\x75\x73\x20\x3D\x20\x22\x32\x70\x78\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x48\x69\x6E\x74\x2E\x73\x74\x79\x6C\x65\x2E\x70\x61\x64\x64\x69\x6E\x67\x20\x3D\x20\x22\x34\x70\x78\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x48\x69\x6E\x74\x2E\x73\x74\x79\x6C\x65\x2E\x6D\x61\x72\x67\x69\x6E\x54\x6F\x70\x20\x3D\x20\x22\x32\x70\x78\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x69\x73\x48\x69\x6E\x74\x53\x68\x6F\x77\x65\x64\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x48\x69\x6E\x74\x2E\x73\x74\x79\x6C\x65\x2E\x64\x69\x73\x70\x6C\x61\x79\x20\x3D\x20\x22\x62\x6C\x6F\x63\x6B\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x73\x65\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x48\x69\x6E\x74\x2E\x73\x74\x79\x6C\x65\x2E\x64\x69\x73\x70\x6C\x61\x79\x20\x3D\x20\x22\x6E\x6F\x6E\x65\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x70\x61\x72\x65\x6E\x74\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x74\x68\x69\x73\x2E\x65\x6C\x48\x69\x6E\x74\x29\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x7D\x0A"), + } + node.SetMode(420) + node.SetModTimeUnix(1707078138, 289192914) + node.SetName("file.js") + node.SetSize(3608) + return node +} + func generate__www_wui_input_number_js() *memfs.Node { var node = &memfs.Node{ SysPath: "_www/wui/input/number.js", @@ -433,7 +449,7 @@ func generate__www_wui_input_number_js() *memfs.Node { Content: []byte("\x2F\x2F\x20\x53\x50\x44\x58\x2D\x46\x69\x6C\x65\x43\x6F\x70\x79\x72\x69\x67\x68\x74\x54\x65\x78\x74\x3A\x20\x32\x30\x32\x31\x20\x4D\x2E\x20\x53\x68\x75\x6C\x68\x61\x6E\x20\x3C\x6D\x73\x40\x6B\x69\x6C\x61\x62\x69\x74\x2E\x69\x6E\x66\x6F\x3E\x0A\x2F\x2F\x20\x53\x50\x44\x58\x2D\x4C\x69\x63\x65\x6E\x73\x65\x2D\x49\x64\x65\x6E\x74\x69\x66\x69\x65\x72\x3A\x20\x47\x50\x4C\x2D\x33\x2E\x30\x2D\x6F\x72\x2D\x6C\x61\x74\x65\x72\x0A\x63\x6F\x6E\x73\x74\x20\x57\x55\x49\x5F\x49\x4E\x50\x55\x54\x5F\x4E\x55\x4D\x42\x45\x52\x5F\x43\x4C\x41\x53\x53\x20\x3D\x20\x22\x77\x75\x69\x5F\x69\x6E\x70\x75\x74\x5F\x6E\x75\x6D\x62\x65\x72\x22\x3B\x0A\x63\x6F\x6E\x73\x74\x20\x57\x55\x49\x5F\x49\x4E\x50\x55\x54\x5F\x4E\x55\x4D\x42\x45\x52\x5F\x43\x4C\x41\x53\x53\x5F\x48\x49\x4E\x54\x20\x3D\x20\x22\x77\x75\x69\x5F\x69\x6E\x70\x75\x74\x5F\x6E\x75\x6D\x62\x65\x72\x5F\x68\x69\x6E\x74\x22\x3B\x0A\x63\x6F\x6E\x73\x74\x20\x57\x55\x49\x5F\x49\x4E\x50\x55\x54\x5F\x4E\x55\x4D\x42\x45\x52\x5F\x43\x4C\x41\x53\x53\x5F\x48\x49\x4E\x54\x5F\x54\x4F\x47\x47\x4C\x45\x52\x20\x3D\x20\x22\x77\x75\x69\x5F\x69\x6E\x70\x75\x74\x5F\x6E\x75\x6D\x62\x65\x72\x5F\x68\x69\x6E\x74\x5F\x74\x6F\x67\x67\x6C\x65\x72\x22\x3B\x0A\x63\x6F\x6E\x73\x74\x20\x57\x55\x49\x5F\x49\x4E\x50\x55\x54\x5F\x4E\x55\x4D\x42\x45\x52\x5F\x43\x4C\x41\x53\x53\x5F\x49\x4E\x50\x55\x54\x20\x3D\x20\x22\x77\x75\x69\x5F\x69\x6E\x70\x75\x74\x5F\x6E\x75\x6D\x62\x65\x72\x5F\x69\x6E\x70\x75\x74\x22\x3B\x0A\x63\x6F\x6E\x73\x74\x20\x57\x55\x49\x5F\x49\x4E\x50\x55\x54\x5F\x4E\x55\x4D\x42\x45\x52\x5F\x43\x4C\x41\x53\x53\x5F\x4C\x41\x42\x45\x4C\x20\x3D\x20\x22\x77\x75\x69\x5F\x69\x6E\x70\x75\x74\x5F\x6E\x75\x6D\x62\x65\x72\x5F\x6C\x61\x62\x65\x6C\x22\x3B\x0A\x2F\x2F\x0A\x2F\x2F\x20\x57\x75\x69\x49\x6E\x70\x75\x74\x4E\x75\x6D\x62\x65\x72\x20\x63\x72\x65\x61\x74\x65\x20\x61\x6E\x20\x48\x54\x4D\x4C\x20\x69\x6E\x70\x75\x74\x20\x74\x68\x61\x74\x20\x61\x6C\x6C\x6F\x77\x20\x6E\x75\x6D\x62\x65\x72\x20\x6F\x6E\x6C\x79\x2C\x20\x77\x69\x74\x68\x20\x6F\x70\x74\x69\x6F\x6E\x61\x6C\x0A\x2F\x2F\x20\x6D\x61\x78\x20\x61\x6E\x64\x20\x6D\x69\x6E\x20\x6F\x70\x74\x69\x6F\x6E\x73\x2E\x0A\x2F\x2F\x20\x54\x68\x65\x20\x72\x65\x71\x75\x69\x72\x65\x64\x20\x6F\x70\x74\x69\x6F\x6E\x73\x20\x61\x72\x65\x20\x22\x6C\x61\x62\x65\x6C\x22\x20\x61\x6E\x64\x20\x22\x76\x61\x6C\x75\x65\x22\x2E\x0A\x2F\x2F\x0A\x2F\x2F\x20\x46\x6F\x72\x6D\x61\x74\x20\x6F\x66\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64\x20\x48\x54\x4D\x4C\x20\x6F\x75\x74\x70\x75\x74\x2C\x0A\x2F\x2F\x0A\x2F\x2F\x09\x3C\x64\x69\x76\x20\x5B\x69\x64\x3D\x24\x7B\x69\x64\x7D\x5D\x20\x63\x6C\x61\x73\x73\x3D\x22\x24\x7B\x57\x55\x49\x5F\x49\x4E\x50\x55\x54\x5F\x4E\x55\x4D\x42\x45\x52\x5F\x43\x4C\x41\x53\x53\x7D\x22\x3E\x0A\x2F\x2F\x09\x09\x3C\x64\x69\x76\x3E\x0A\x2F\x2F\x09\x09\x09\x3C\x6C\x61\x62\x65\x6C\x20\x63\x6C\x61\x73\x73\x3D\x22\x24\x7B\x57\x55\x49\x5F\x49\x4E\x50\x55\x54\x5F\x4E\x55\x4D\x42\x45\x52\x5F\x43\x4C\x41\x53\x53\x5F\x4C\x41\x42\x45\x4C\x7D\x20\x5B\x24\x7B\x63\x6C\x61\x73\x73\x5F\x6C\x61\x62\x65\x6C\x7D\x5D\x22\x3E\x0A\x2F\x2F\x09\x09\x09\x09\x24\x7B\x6C\x61\x62\x65\x6C\x7D\x20\x7C\x20\x48\x54\x4D\x4C\x45\x6C\x65\x6D\x65\x6E\x74\x0A\x2F\x2F\x09\x09\x09\x3C\x2F\x6C\x61\x62\x65\x6C\x3E\x0A\x2F\x2F\x09\x09\x09\x3C\x69\x6E\x70\x75\x74\x0A\x2F\x2F\x09\x09\x09\x09\x63\x6C\x61\x73\x73\x3D\x22\x24\x7B\x57\x55\x49\x5F\x49\x4E\x50\x55\x54\x5F\x4E\x55\x4D\x42\x45\x52\x5F\x43\x4C\x41\x53\x53\x5F\x49\x4E\x50\x55\x54\x7D\x20\x5B\x24\x7B\x63\x6C\x61\x73\x73\x5F\x69\x6E\x70\x75\x74\x7D\x5D\x22\x0A\x2F\x2F\x09\x09\x09\x09\x5B\x6D\x61\x78\x3D\x24\x7B\x6D\x61\x78\x7D\x5D\x0A\x2F\x2F\x09\x09\x09\x09\x5B\x6D\x69\x6E\x3D\x24\x7B\x6D\x69\x6E\x7D\x5D\x0A\x2F\x2F\x09\x09\x09\x09\x5B\x64\x69\x73\x61\x62\x6C\x65\x64\x3D\x24\x7B\x69\x73\x5F\x64\x69\x73\x61\x62\x6C\x65\x64\x7D\x5D\x0A\x2F\x2F\x09\x09\x09\x09\x76\x61\x6C\x75\x65\x3D\x24\x7B\x76\x61\x6C\x75\x65\x7D\x0A\x2F\x2F\x09\x09\x09\x3E\x0A\x2F\x2F\x09\x09\x09\x5B\x3C\x73\x70\x61\x6E\x20\x63\x6C\x61\x73\x73\x3D\x22\x24\x7B\x57\x55\x49\x5F\x49\x4E\x50\x55\x54\x5F\x4E\x55\x4D\x42\x45\x52\x5F\x43\x4C\x41\x53\x53\x5F\x48\x49\x4E\x54\x5F\x54\x4F\x47\x47\x4C\x45\x52\x7D\x22\x3E\x20\x69\x3C\x2F\x73\x70\x61\x6E\x3E\x5D\x0A\x2F\x2F\x09\x09\x3C\x2F\x64\x69\x76\x3E\x0A\x2F\x2F\x09\x09\x5B\x3C\x64\x69\x76\x20\x63\x6C\x61\x73\x73\x3D\x22\x24\x7B\x57\x55\x49\x5F\x49\x4E\x50\x55\x54\x5F\x4E\x55\x4D\x42\x45\x52\x5F\x43\x4C\x41\x53\x53\x5F\x48\x49\x4E\x54\x7D\x22\x3E\x24\x7B\x68\x69\x6E\x74\x7D\x3C\x2F\x64\x69\x76\x3E\x5D\x0A\x2F\x2F\x09\x3C\x2F\x64\x69\x76\x3E\x0A\x2F\x2F\x0A\x2F\x2F\x20\x55\x73\x65\x72\x20\x63\x61\x6E\x20\x73\x65\x74\x20\x6F\x6E\x43\x68\x61\x6E\x67\x65\x48\x61\x6E\x64\x6C\x65\x72\x20\x74\x6F\x20\x72\x65\x63\x65\x69\x76\x65\x20\x6E\x65\x77\x20\x76\x61\x6C\x75\x65\x20\x77\x68\x65\x6E\x20\x74\x68\x65\x20\x69\x6E\x70\x75\x74\x20\x76\x61\x6C\x75\x65\x0A\x2F\x2F\x20\x63\x68\x61\x6E\x67\x65\x73\x20\x61\x6E\x64\x20\x76\x61\x6C\x69\x64\x3B\x20\x6F\x74\x68\x65\x72\x77\x69\x73\x65\x2C\x20\x69\x66\x20\x74\x68\x65\x20\x76\x61\x6C\x75\x65\x20\x69\x73\x20\x69\x6E\x76\x61\x6C\x69\x64\x2C\x20\x74\x68\x65\x20\x69\x6E\x70\x75\x74\x0A\x2F\x2F\x20\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x20\x77\x69\x6C\x6C\x20\x63\x68\x61\x6E\x67\x65\x73\x20\x61\x63\x63\x6F\x72\x64\x69\x6E\x67\x6C\x79\x2E\x0A\x2F\x2F\x0A\x65\x78\x70\x6F\x72\x74\x20\x63\x6C\x61\x73\x73\x20\x57\x75\x69\x49\x6E\x70\x75\x74\x4E\x75\x6D\x62\x65\x72\x20\x7B\x0A\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x72\x75\x63\x74\x6F\x72\x28\x6F\x70\x74\x73\x29\x20\x7B\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\x76\x61\x6C\x75\x65\x20\x3D\x20\x30\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x76\x61\x6C\x75\x65\x20\x3D\x20\x6F\x70\x74\x73\x2E\x76\x61\x6C\x75\x65\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\x69\x66\x20\x28\x6F\x70\x74\x73\x2E\x69\x64\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x69\x64\x20\x3D\x20\x6F\x70\x74\x73\x2E\x69\x64\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\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x57\x55\x49\x5F\x49\x4E\x50\x55\x54\x5F\x4E\x55\x4D\x42\x45\x52\x5F\x43\x4C\x41\x53\x53\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\x70\x61\x64\x64\x69\x6E\x67\x20\x3D\x20\x22\x32\x70\x78\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x77\x72\x61\x70\x70\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\x64\x69\x76\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x67\x65\x6E\x65\x72\x61\x74\x65\x4C\x61\x62\x65\x6C\x28\x77\x72\x61\x70\x70\x65\x72\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x67\x65\x6E\x65\x72\x61\x74\x65\x49\x6E\x70\x75\x74\x28\x77\x72\x61\x70\x70\x65\x72\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x6F\x70\x74\x73\x2E\x68\x69\x6E\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x67\x65\x6E\x65\x72\x61\x74\x65\x48\x69\x6E\x74\x54\x6F\x67\x67\x6C\x65\x72\x28\x77\x72\x61\x70\x70\x65\x72\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\x65\x6C\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x77\x72\x61\x70\x70\x65\x72\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x6F\x70\x74\x73\x2E\x68\x69\x6E\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x67\x65\x6E\x65\x72\x61\x74\x65\x48\x69\x6E\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x4C\x61\x62\x65\x6C\x28\x77\x72\x61\x70\x70\x65\x72\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x6C\x61\x62\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\x6C\x61\x62\x65\x6C\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x6C\x61\x62\x65\x6C\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x57\x55\x49\x5F\x49\x4E\x50\x55\x54\x5F\x4E\x55\x4D\x42\x45\x52\x5F\x43\x4C\x41\x53\x53\x5F\x4C\x41\x42\x45\x4C\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x63\x6C\x61\x73\x73\x5F\x6C\x61\x62\x65\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x6C\x61\x62\x65\x6C\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x63\x6C\x61\x73\x73\x5F\x6C\x61\x62\x65\x6C\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\x79\x70\x65\x6F\x66\x20\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x6C\x61\x62\x65\x6C\x20\x3D\x3D\x3D\x20\x22\x73\x74\x72\x69\x6E\x67\x22\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x6C\x61\x62\x65\x6C\x2E\x69\x6E\x6E\x65\x72\x48\x54\x4D\x4C\x20\x3D\x20\x60\x24\x7B\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x6C\x61\x62\x65\x6C\x7D\x20\x60\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x73\x65\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x6C\x61\x62\x65\x6C\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x6C\x61\x62\x65\x6C\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x77\x72\x61\x70\x70\x65\x72\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x74\x68\x69\x73\x2E\x65\x6C\x5F\x6C\x61\x62\x65\x6C\x29\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x49\x6E\x70\x75\x74\x28\x77\x72\x61\x70\x70\x65\x72\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x69\x6E\x70\x75\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\x69\x6E\x70\x75\x74\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x69\x6E\x70\x75\x74\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x57\x55\x49\x5F\x49\x4E\x50\x55\x54\x5F\x4E\x55\x4D\x42\x45\x52\x5F\x43\x4C\x41\x53\x53\x5F\x49\x4E\x50\x55\x54\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x63\x6C\x61\x73\x73\x5F\x69\x6E\x70\x75\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x69\x6E\x70\x75\x74\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x63\x6C\x61\x73\x73\x5F\x69\x6E\x70\x75\x74\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\x65\x6C\x5F\x69\x6E\x70\x75\x74\x2E\x74\x79\x70\x65\x20\x3D\x20\x22\x6E\x75\x6D\x62\x65\x72\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x69\x6E\x70\x75\x74\x2E\x73\x74\x65\x70\x20\x3D\x20\x22\x61\x6E\x79\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x69\x6E\x70\x75\x74\x2E\x76\x61\x6C\x75\x65\x20\x3D\x20\x22\x22\x20\x2B\x20\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x76\x61\x6C\x75\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x6C\x65\x74\x20\x68\x69\x6E\x74\x20\x3D\x20\x22\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x6D\x61\x78\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x69\x6E\x70\x75\x74\x2E\x6D\x61\x78\x20\x3D\x20\x22\x22\x20\x2B\x20\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x6D\x61\x78\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x68\x69\x6E\x74\x20\x3D\x20\x22\x54\x68\x65\x20\x6D\x61\x78\x69\x6D\x75\x6D\x20\x76\x61\x6C\x75\x65\x20\x69\x73\x20\x22\x20\x2B\x20\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x6D\x61\x78\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\x6D\x69\x6E\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x69\x6E\x70\x75\x74\x2E\x6D\x69\x6E\x20\x3D\x20\x22\x22\x20\x2B\x20\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x6D\x69\x6E\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x68\x69\x6E\x74\x20\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\x68\x69\x6E\x74\x20\x3D\x20\x22\x54\x68\x65\x20\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\x20\x20\x65\x6C\x73\x65\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x68\x69\x6E\x74\x20\x2B\x3D\x20\x22\x20\x61\x6E\x64\x20\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\x20\x20\x68\x69\x6E\x74\x20\x2B\x3D\x20\x22\x6D\x69\x6E\x69\x6D\x75\x6D\x20\x76\x61\x6C\x75\x65\x20\x69\x73\x20\x22\x20\x2B\x20\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x6D\x69\x6E\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x68\x69\x6E\x74\x20\x21\x3D\x3D\x20\x22\x22\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x69\x6E\x70\x75\x74\x2E\x74\x69\x74\x6C\x65\x20\x3D\x20\x68\x69\x6E\x74\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\x69\x73\x5F\x64\x69\x73\x61\x62\x6C\x65\x64\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x69\x6E\x70\x75\x74\x2E\x64\x69\x73\x61\x62\x6C\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\x74\x68\x69\x73\x2E\x65\x6C\x5F\x69\x6E\x70\x75\x74\x2E\x6F\x6E\x6B\x65\x79\x75\x70\x20\x3D\x20\x28\x65\x76\x29\x20\x3D\x3E\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x74\x68\x69\x73\x2E\x6F\x6E\x4B\x65\x79\x55\x70\x28\x65\x76\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x77\x72\x61\x70\x70\x65\x72\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x74\x68\x69\x73\x2E\x65\x6C\x5F\x69\x6E\x70\x75\x74\x29\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x48\x69\x6E\x74\x54\x6F\x67\x67\x6C\x65\x72\x28\x77\x72\x61\x70\x70\x65\x72\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x68\x69\x6E\x74\x5F\x74\x6F\x67\x67\x6C\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\x68\x69\x6E\x74\x5F\x74\x6F\x67\x67\x6C\x65\x72\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x57\x55\x49\x5F\x49\x4E\x50\x55\x54\x5F\x4E\x55\x4D\x42\x45\x52\x5F\x43\x4C\x41\x53\x53\x5F\x48\x49\x4E\x54\x5F\x54\x4F\x47\x47\x4C\x45\x52\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x68\x69\x6E\x74\x5F\x74\x6F\x67\x67\x6C\x65\x72\x2E\x69\x6E\x6E\x65\x72\x48\x54\x4D\x4C\x20\x3D\x20\x22\x20\x26\x23\x78\x32\x31\x33\x39\x3B\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x68\x69\x6E\x74\x5F\x74\x6F\x67\x67\x6C\x65\x72\x2E\x6F\x6E\x6D\x6F\x75\x73\x65\x6F\x76\x65\x72\x20\x3D\x20\x28\x29\x20\x3D\x3E\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x68\x69\x6E\x74\x5F\x74\x6F\x67\x67\x6C\x65\x72\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\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x68\x69\x6E\x74\x5F\x74\x6F\x67\x67\x6C\x65\x72\x2E\x6F\x6E\x63\x6C\x69\x63\x6B\x20\x3D\x20\x28\x29\x20\x3D\x3E\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6F\x6E\x43\x6C\x69\x63\x6B\x48\x69\x6E\x74\x54\x6F\x67\x67\x6C\x65\x72\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x77\x72\x61\x70\x70\x65\x72\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x74\x68\x69\x73\x2E\x65\x6C\x5F\x68\x69\x6E\x74\x5F\x74\x6F\x67\x67\x6C\x65\x72\x29\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x48\x69\x6E\x74\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x68\x69\x6E\x74\x20\x3D\x20\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x68\x69\x6E\x74\x20\x7C\x7C\x20\x22\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x68\x69\x6E\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\x64\x69\x76\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x68\x69\x6E\x74\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x57\x55\x49\x5F\x49\x4E\x50\x55\x54\x5F\x4E\x55\x4D\x42\x45\x52\x5F\x43\x4C\x41\x53\x53\x5F\x48\x49\x4E\x54\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x68\x69\x6E\x74\x2E\x69\x6E\x6E\x65\x72\x48\x54\x4D\x4C\x20\x3D\x20\x68\x69\x6E\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x69\x73\x5F\x68\x69\x6E\x74\x5F\x74\x6F\x67\x67\x6C\x65\x64\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x68\x69\x6E\x74\x2E\x73\x74\x79\x6C\x65\x2E\x64\x69\x73\x70\x6C\x61\x79\x20\x3D\x20\x22\x62\x6C\x6F\x63\x6B\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x73\x65\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x68\x69\x6E\x74\x2E\x73\x74\x79\x6C\x65\x2E\x64\x69\x73\x70\x6C\x61\x79\x20\x3D\x20\x22\x6E\x6F\x6E\x65\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\x65\x6C\x5F\x68\x69\x6E\x74\x2E\x73\x74\x79\x6C\x65\x2E\x62\x6F\x72\x64\x65\x72\x52\x61\x64\x69\x75\x73\x20\x3D\x20\x22\x32\x70\x78\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x68\x69\x6E\x74\x2E\x73\x74\x79\x6C\x65\x2E\x70\x61\x64\x64\x69\x6E\x67\x20\x3D\x20\x22\x34\x70\x78\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x68\x69\x6E\x74\x2E\x73\x74\x79\x6C\x65\x2E\x6D\x61\x72\x67\x69\x6E\x54\x6F\x70\x20\x3D\x20\x22\x32\x70\x78\x22\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\x68\x69\x6E\x74\x29\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x6F\x6E\x43\x6C\x69\x63\x6B\x48\x69\x6E\x74\x54\x6F\x67\x67\x6C\x65\x72\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x65\x6C\x5F\x68\x69\x6E\x74\x2E\x73\x74\x79\x6C\x65\x2E\x64\x69\x73\x70\x6C\x61\x79\x20\x3D\x3D\x3D\x20\x22\x6E\x6F\x6E\x65\x22\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x68\x69\x6E\x74\x2E\x73\x74\x79\x6C\x65\x2E\x64\x69\x73\x70\x6C\x61\x79\x20\x3D\x20\x22\x62\x6C\x6F\x63\x6B\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x73\x65\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x68\x69\x6E\x74\x2E\x73\x74\x79\x6C\x65\x2E\x64\x69\x73\x70\x6C\x61\x79\x20\x3D\x20\x22\x6E\x6F\x6E\x65\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x6F\x6E\x4B\x65\x79\x55\x70\x28\x65\x76\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x74\x61\x72\x67\x65\x74\x20\x3D\x20\x65\x76\x2E\x74\x61\x72\x67\x65\x74\x3B\x0A\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\x63\x6F\x6E\x73\x74\x20\x6E\x65\x77\x56\x61\x6C\x75\x65\x20\x3D\x20\x2B\x74\x61\x72\x67\x65\x74\x2E\x76\x61\x6C\x75\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x6E\x65\x77\x56\x61\x6C\x75\x65\x20\x3D\x3D\x3D\x20\x6E\x75\x6C\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x69\x6E\x70\x75\x74\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\x6C\x69\x67\x68\x74\x73\x61\x6C\x6D\x6F\x6E\x22\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\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x6D\x61\x78\x20\x26\x26\x20\x6E\x65\x77\x56\x61\x6C\x75\x65\x20\x3E\x20\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x6D\x61\x78\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x69\x6E\x70\x75\x74\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\x6C\x69\x67\x68\x74\x73\x61\x6C\x6D\x6F\x6E\x22\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\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x6D\x69\x6E\x20\x26\x26\x20\x6E\x65\x77\x56\x61\x6C\x75\x65\x20\x3C\x20\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x6D\x69\x6E\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x69\x6E\x70\x75\x74\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\x6C\x69\x67\x68\x74\x73\x61\x6C\x6D\x6F\x6E\x22\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\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x69\x6E\x70\x75\x74\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\x74\x68\x69\x73\x2E\x76\x61\x6C\x75\x65\x20\x3D\x20\x6E\x65\x77\x56\x61\x6C\x75\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x6F\x6E\x43\x68\x61\x6E\x67\x65\x48\x61\x6E\x64\x6C\x65\x72\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x6F\x6E\x43\x68\x61\x6E\x67\x65\x48\x61\x6E\x64\x6C\x65\x72\x28\x74\x68\x69\x73\x2E\x76\x61\x6C\x75\x65\x29\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\x7D\x0A\x20\x20\x20\x20\x2F\x2F\x20\x73\x65\x74\x20\x74\x68\x65\x20\x69\x6E\x70\x75\x74\x20\x76\x61\x6C\x75\x65\x2E\x0A\x20\x20\x20\x20\x73\x65\x74\x28\x76\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x69\x6E\x70\x75\x74\x2E\x76\x61\x6C\x75\x65\x20\x3D\x20\x22\x22\x20\x2B\x20\x76\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x7D\x0A"), } node.SetMode(420) - node.SetModTimeUnix(1707037266, 78461606) + node.SetModTimeUnix(1707078138, 279192903) node.SetName("number.js") node.SetSize(5843) return node @@ -448,7 +464,7 @@ func generate__www_wui_input_option_js() *memfs.Node { Content: []byte("\x2F\x2F\x20\x53\x50\x44\x58\x2D\x46\x69\x6C\x65\x43\x6F\x70\x79\x72\x69\x67\x68\x74\x54\x65\x78\x74\x3A\x20\x32\x30\x32\x31\x20\x4D\x2E\x20\x53\x68\x75\x6C\x68\x61\x6E\x20\x3C\x6D\x73\x40\x6B\x69\x6C\x61\x62\x69\x74\x2E\x69\x6E\x66\x6F\x3E\x0A\x2F\x2F\x20\x53\x50\x44\x58\x2D\x4C\x69\x63\x65\x6E\x73\x65\x2D\x49\x64\x65\x6E\x74\x69\x66\x69\x65\x72\x3A\x20\x47\x50\x4C\x2D\x33\x2E\x30\x2D\x6F\x72\x2D\x6C\x61\x74\x65\x72\x0A\x65\x78\x70\x6F\x72\x74\x20\x7B\x7D\x3B\x0A"), } node.SetMode(420) - node.SetModTimeUnix(1707037266, 98461710) + node.SetModTimeUnix(1707078138, 302526262) node.SetName("option.js") node.SetSize(117) return node @@ -463,7 +479,7 @@ func generate__www_wui_input_select_js() *memfs.Node { Content: []byte("\x2F\x2F\x20\x53\x50\x44\x58\x2D\x46\x69\x6C\x65\x43\x6F\x70\x79\x72\x69\x67\x68\x74\x54\x65\x78\x74\x3A\x20\x32\x30\x32\x31\x20\x4D\x2E\x20\x53\x68\x75\x6C\x68\x61\x6E\x20\x3C\x6D\x73\x40\x6B\x69\x6C\x61\x62\x69\x74\x2E\x69\x6E\x66\x6F\x3E\x0A\x2F\x2F\x20\x53\x50\x44\x58\x2D\x4C\x69\x63\x65\x6E\x73\x65\x2D\x49\x64\x65\x6E\x74\x69\x66\x69\x65\x72\x3A\x20\x47\x50\x4C\x2D\x33\x2E\x30\x2D\x6F\x72\x2D\x6C\x61\x74\x65\x72\x0A\x63\x6F\x6E\x73\x74\x20\x57\x55\x49\x5F\x49\x4E\x50\x55\x54\x5F\x53\x45\x4C\x45\x43\x54\x5F\x43\x4C\x41\x53\x53\x20\x3D\x20\x22\x77\x75\x69\x5F\x69\x6E\x70\x75\x74\x5F\x73\x65\x6C\x65\x63\x74\x22\x3B\x0A\x63\x6F\x6E\x73\x74\x20\x57\x55\x49\x5F\x49\x4E\x50\x55\x54\x5F\x53\x45\x4C\x45\x43\x54\x5F\x43\x4C\x41\x53\x53\x5F\x48\x49\x4E\x54\x20\x3D\x20\x22\x77\x75\x69\x5F\x69\x6E\x70\x75\x74\x5F\x73\x65\x6C\x65\x63\x74\x5F\x68\x69\x6E\x74\x22\x3B\x0A\x63\x6F\x6E\x73\x74\x20\x57\x55\x49\x5F\x49\x4E\x50\x55\x54\x5F\x53\x45\x4C\x45\x43\x54\x5F\x43\x4C\x41\x53\x53\x5F\x48\x49\x4E\x54\x5F\x54\x4F\x47\x47\x4C\x45\x52\x20\x3D\x20\x22\x77\x75\x69\x5F\x69\x6E\x70\x75\x74\x5F\x73\x65\x6C\x65\x63\x74\x5F\x68\x69\x6E\x74\x5F\x74\x6F\x67\x67\x6C\x65\x72\x22\x3B\x0A\x63\x6F\x6E\x73\x74\x20\x57\x55\x49\x5F\x49\x4E\x50\x55\x54\x5F\x53\x45\x4C\x45\x43\x54\x5F\x43\x4C\x41\x53\x53\x5F\x49\x4E\x50\x55\x54\x20\x3D\x20\x22\x77\x75\x69\x5F\x69\x6E\x70\x75\x74\x5F\x73\x65\x6C\x65\x63\x74\x5F\x69\x6E\x70\x75\x74\x22\x3B\x0A\x63\x6F\x6E\x73\x74\x20\x57\x55\x49\x5F\x49\x4E\x50\x55\x54\x5F\x53\x45\x4C\x45\x43\x54\x5F\x43\x4C\x41\x53\x53\x5F\x4C\x41\x42\x45\x4C\x20\x3D\x20\x22\x77\x75\x69\x5F\x69\x6E\x70\x75\x74\x5F\x73\x65\x6C\x65\x63\x74\x5F\x6C\x61\x62\x65\x6C\x22\x3B\x0A\x2F\x2F\x20\x57\x75\x69\x49\x6E\x70\x75\x74\x53\x65\x6C\x65\x63\x74\x20\x63\x72\x65\x61\x74\x65\x20\x61\x6E\x20\x48\x54\x4D\x4C\x20\x69\x6E\x70\x75\x74\x20\x66\x6F\x72\x20\x73\x65\x6C\x65\x63\x74\x69\x6E\x67\x20\x6F\x6E\x65\x20\x6D\x6F\x72\x65\x20\x69\x74\x65\x6D\x2E\x0A\x2F\x2F\x0A\x2F\x2F\x20\x46\x6F\x72\x6D\x61\x74\x20\x6F\x66\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64\x20\x48\x54\x4D\x4C\x20\x6F\x75\x74\x70\x75\x74\x2C\x0A\x2F\x2F\x0A\x2F\x2F\x09\x3C\x64\x69\x76\x20\x5B\x69\x64\x3D\x24\x7B\x69\x64\x7D\x5D\x20\x63\x6C\x61\x73\x73\x3D\x22\x24\x7B\x57\x55\x49\x5F\x49\x4E\x50\x55\x54\x5F\x53\x45\x4C\x45\x43\x54\x5F\x43\x4C\x41\x53\x53\x7D\x22\x3E\x0A\x2F\x2F\x09\x09\x3C\x64\x69\x76\x3E\x0A\x2F\x2F\x09\x09\x09\x3C\x6C\x61\x62\x65\x6C\x20\x63\x6C\x61\x73\x73\x3D\x22\x24\x7B\x57\x55\x49\x5F\x49\x4E\x50\x55\x54\x5F\x53\x45\x4C\x45\x43\x54\x5F\x43\x4C\x41\x53\x53\x5F\x4C\x41\x42\x45\x4C\x7D\x20\x5B\x24\x7B\x63\x6C\x61\x73\x73\x5F\x6C\x61\x62\x65\x6C\x7D\x5D\x22\x3E\x0A\x2F\x2F\x09\x09\x09\x09\x24\x7B\x6C\x61\x62\x65\x6C\x7D\x20\x7C\x20\x48\x54\x4D\x4C\x45\x6C\x65\x6D\x65\x6E\x74\x0A\x2F\x2F\x09\x09\x09\x3C\x2F\x6C\x61\x62\x65\x6C\x3E\x0A\x2F\x2F\x09\x09\x09\x3C\x73\x65\x6C\x65\x63\x74\x0A\x2F\x2F\x09\x09\x09\x09\x6E\x61\x6D\x65\x3D\x24\x7B\x6E\x61\x6D\x65\x7D\x0A\x2F\x2F\x09\x09\x09\x09\x63\x6C\x61\x73\x73\x3D\x22\x24\x7B\x57\x55\x49\x5F\x49\x4E\x50\x55\x54\x5F\x53\x45\x4C\x45\x43\x54\x5F\x43\x4C\x41\x53\x53\x5F\x49\x4E\x50\x55\x54\x7D\x20\x5B\x24\x7B\x63\x6C\x61\x73\x73\x5F\x69\x6E\x70\x75\x74\x7D\x5D\x22\x0A\x2F\x2F\x09\x09\x09\x09\x5B\x64\x69\x73\x61\x62\x6C\x65\x64\x3D\x24\x7B\x69\x73\x5F\x64\x69\x73\x61\x62\x6C\x65\x64\x7D\x5D\x0A\x2F\x2F\x09\x09\x09\x3E\x0A\x2F\x2F\x09\x09\x09\x09\x3C\x6F\x70\x74\x69\x6F\x6E\x20\x76\x61\x6C\x75\x65\x3D\x22\x24\x7B\x6F\x70\x74\x69\x6F\x6E\x73\x5B\x6B\x65\x79\x5D\x2E\x76\x61\x6C\x75\x65\x7D\x22\x3E\x24\x7B\x6B\x65\x79\x20\x69\x6E\x20\x6F\x70\x74\x69\x6F\x6E\x73\x7D\x3C\x2F\x6F\x70\x74\x69\x6F\x6E\x3E\x0A\x2F\x2F\x09\x09\x09\x3C\x2F\x73\x65\x6C\x65\x63\x74\x3E\x0A\x2F\x2F\x09\x09\x09\x5B\x3C\x73\x70\x61\x6E\x20\x63\x6C\x61\x73\x73\x3D\x22\x24\x7B\x57\x55\x49\x5F\x49\x4E\x50\x55\x54\x5F\x53\x45\x4C\x45\x43\x54\x5F\x43\x4C\x41\x53\x53\x5F\x48\x49\x4E\x54\x5F\x54\x4F\x47\x47\x4C\x45\x52\x7D\x22\x3E\x69\x20\x3C\x2F\x73\x70\x61\x6E\x3E\x5D\x0A\x2F\x2F\x09\x09\x3C\x2F\x64\x69\x76\x3E\x0A\x2F\x2F\x09\x09\x5B\x3C\x64\x69\x76\x20\x63\x6C\x61\x73\x73\x3D\x22\x24\x7B\x57\x55\x49\x5F\x49\x4E\x50\x55\x54\x5F\x53\x45\x4C\x45\x43\x54\x5F\x43\x4C\x41\x53\x53\x5F\x48\x49\x4E\x54\x7D\x22\x3E\x24\x7B\x68\x69\x6E\x74\x7D\x3C\x2F\x64\x69\x76\x3E\x5D\x0A\x2F\x2F\x09\x3C\x2F\x64\x69\x76\x3E\x0A\x2F\x2F\x0A\x2F\x2F\x20\x54\x68\x65\x20\x22\x68\x69\x6E\x74\x22\x20\x6F\x70\x74\x69\x6F\x6E\x20\x69\x73\x20\x6F\x70\x74\x69\x6F\x6E\x61\x6C\x2C\x20\x69\x66\x20\x69\x74\x20\x73\x65\x74\x20\x74\x68\x65\x20\x69\x6E\x70\x75\x74\x20\x77\x69\x6C\x6C\x20\x68\x61\x76\x65\x20\x61\x20\x68\x69\x6E\x74\x20\x74\x6F\x67\x67\x6C\x65\x72\x0A\x2F\x2F\x20\x74\x6F\x20\x64\x69\x73\x70\x6C\x61\x79\x20\x6F\x72\x20\x68\x69\x64\x65\x20\x74\x68\x65\x20\x69\x6E\x70\x75\x74\x20\x69\x6E\x66\x6F\x72\x6D\x61\x74\x69\x6F\x6E\x2E\x0A\x2F\x2F\x0A\x2F\x2F\x20\x55\x73\x65\x72\x20\x63\x61\x6E\x20\x73\x65\x74\x20\x6F\x6E\x43\x68\x61\x6E\x67\x65\x48\x61\x6E\x64\x6C\x65\x72\x20\x74\x6F\x20\x72\x65\x63\x65\x69\x76\x65\x20\x6E\x65\x77\x20\x76\x61\x6C\x75\x65\x20\x77\x68\x65\x6E\x20\x74\x68\x65\x20\x69\x6E\x70\x75\x74\x20\x76\x61\x6C\x75\x65\x0A\x2F\x2F\x20\x63\x68\x61\x6E\x67\x65\x73\x2E\x0A\x65\x78\x70\x6F\x72\x74\x20\x63\x6C\x61\x73\x73\x20\x57\x75\x69\x49\x6E\x70\x75\x74\x53\x65\x6C\x65\x63\x74\x20\x7B\x0A\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x72\x75\x63\x74\x6F\x72\x28\x6F\x70\x74\x73\x29\x20\x7B\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\x76\x61\x6C\x75\x65\x5F\x6B\x65\x79\x20\x3D\x20\x7B\x7D\x3B\x20\x2F\x2F\x20\x54\x68\x65\x20\x72\x65\x76\x65\x72\x73\x65\x20\x6F\x66\x20\x6F\x70\x74\x69\x6F\x6E\x73\x2E\x6F\x70\x74\x69\x6F\x6E\x73\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x76\x61\x6C\x75\x65\x20\x3D\x20\x22\x22\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\x69\x66\x20\x28\x6F\x70\x74\x73\x2E\x69\x64\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x69\x64\x20\x3D\x20\x6F\x70\x74\x73\x2E\x69\x64\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\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x57\x55\x49\x5F\x49\x4E\x50\x55\x54\x5F\x53\x45\x4C\x45\x43\x54\x5F\x43\x4C\x41\x53\x53\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\x70\x61\x64\x64\x69\x6E\x67\x20\x3D\x20\x22\x32\x70\x78\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x77\x72\x61\x70\x70\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\x64\x69\x76\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x67\x65\x6E\x65\x72\x61\x74\x65\x4C\x61\x62\x65\x6C\x28\x77\x72\x61\x70\x70\x65\x72\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x67\x65\x6E\x65\x72\x61\x74\x65\x49\x6E\x70\x75\x74\x28\x77\x72\x61\x70\x70\x65\x72\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x6F\x70\x74\x73\x2E\x68\x69\x6E\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x67\x65\x6E\x65\x72\x61\x74\x65\x48\x69\x6E\x74\x54\x6F\x67\x67\x6C\x65\x72\x28\x77\x72\x61\x70\x70\x65\x72\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\x65\x6C\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x77\x72\x61\x70\x70\x65\x72\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x6F\x70\x74\x73\x2E\x68\x69\x6E\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x67\x65\x6E\x65\x72\x61\x74\x65\x48\x69\x6E\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x4C\x61\x62\x65\x6C\x28\x77\x72\x61\x70\x70\x65\x72\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x6C\x61\x62\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\x6C\x61\x62\x65\x6C\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x6C\x61\x62\x65\x6C\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x57\x55\x49\x5F\x49\x4E\x50\x55\x54\x5F\x53\x45\x4C\x45\x43\x54\x5F\x43\x4C\x41\x53\x53\x5F\x4C\x41\x42\x45\x4C\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x63\x6C\x61\x73\x73\x5F\x6C\x61\x62\x65\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x6C\x61\x62\x65\x6C\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x63\x6C\x61\x73\x73\x5F\x6C\x61\x62\x65\x6C\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\x79\x70\x65\x6F\x66\x20\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x6C\x61\x62\x65\x6C\x20\x3D\x3D\x3D\x20\x22\x73\x74\x72\x69\x6E\x67\x22\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x6C\x61\x62\x65\x6C\x2E\x69\x6E\x6E\x65\x72\x48\x54\x4D\x4C\x20\x3D\x20\x60\x24\x7B\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x6C\x61\x62\x65\x6C\x7D\x20\x60\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x73\x65\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x6C\x61\x62\x65\x6C\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x6C\x61\x62\x65\x6C\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x77\x72\x61\x70\x70\x65\x72\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x74\x68\x69\x73\x2E\x65\x6C\x5F\x6C\x61\x62\x65\x6C\x29\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x49\x6E\x70\x75\x74\x28\x77\x72\x61\x70\x70\x65\x72\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x69\x6E\x70\x75\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\x65\x6C\x65\x63\x74\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x69\x6E\x70\x75\x74\x2E\x6E\x61\x6D\x65\x20\x3D\x20\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x6E\x61\x6D\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x69\x6E\x70\x75\x74\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x57\x55\x49\x5F\x49\x4E\x50\x55\x54\x5F\x53\x45\x4C\x45\x43\x54\x5F\x43\x4C\x41\x53\x53\x5F\x49\x4E\x50\x55\x54\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x63\x6C\x61\x73\x73\x5F\x69\x6E\x70\x75\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x69\x6E\x70\x75\x74\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x63\x6C\x61\x73\x73\x5F\x69\x6E\x70\x75\x74\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x4F\x62\x6A\x65\x63\x74\x2E\x65\x6E\x74\x72\x69\x65\x73\x28\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x6F\x70\x74\x69\x6F\x6E\x73\x29\x2E\x66\x6F\x72\x45\x61\x63\x68\x28\x28\x5B\x6B\x65\x79\x2C\x20\x6F\x70\x74\x69\x6F\x6E\x5D\x29\x20\x3D\x3E\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x65\x6C\x4F\x70\x74\x69\x6F\x6E\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\x6F\x70\x74\x69\x6F\x6E\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x4F\x70\x74\x69\x6F\x6E\x2E\x76\x61\x6C\x75\x65\x20\x3D\x20\x6F\x70\x74\x69\x6F\x6E\x2E\x76\x61\x6C\x75\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x4F\x70\x74\x69\x6F\x6E\x2E\x69\x6E\x6E\x65\x72\x48\x54\x4D\x4C\x20\x3D\x20\x6B\x65\x79\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x6F\x70\x74\x69\x6F\x6E\x2E\x73\x65\x6C\x65\x63\x74\x65\x64\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x4F\x70\x74\x69\x6F\x6E\x2E\x73\x65\x6C\x65\x63\x74\x65\x64\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\x74\x68\x69\x73\x2E\x65\x6C\x5F\x69\x6E\x70\x75\x74\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x65\x6C\x4F\x70\x74\x69\x6F\x6E\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x76\x61\x6C\x75\x65\x5F\x6B\x65\x79\x5B\x6F\x70\x74\x69\x6F\x6E\x2E\x76\x61\x6C\x75\x65\x5D\x20\x3D\x20\x6B\x65\x79\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x69\x73\x5F\x64\x69\x73\x61\x62\x6C\x65\x64\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x69\x6E\x70\x75\x74\x2E\x64\x69\x73\x61\x62\x6C\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\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x6F\x6E\x43\x68\x61\x6E\x67\x65\x48\x61\x6E\x64\x6C\x65\x72\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x69\x6E\x70\x75\x74\x2E\x6F\x6E\x63\x6C\x69\x63\x6B\x20\x3D\x20\x28\x65\x76\x29\x20\x3D\x3E\x20\x7B\x0A\x20\x20\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\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\x20\x20\x74\x68\x69\x73\x2E\x6F\x6E\x43\x6C\x69\x63\x6B\x49\x6E\x70\x75\x74\x28\x29\x3B\x0A\x20\x20\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\x77\x72\x61\x70\x70\x65\x72\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x74\x68\x69\x73\x2E\x65\x6C\x5F\x69\x6E\x70\x75\x74\x29\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x48\x69\x6E\x74\x54\x6F\x67\x67\x6C\x65\x72\x28\x77\x72\x61\x70\x70\x65\x72\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x68\x69\x6E\x74\x5F\x74\x6F\x67\x67\x6C\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\x68\x69\x6E\x74\x5F\x74\x6F\x67\x67\x6C\x65\x72\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x57\x55\x49\x5F\x49\x4E\x50\x55\x54\x5F\x53\x45\x4C\x45\x43\x54\x5F\x43\x4C\x41\x53\x53\x5F\x48\x49\x4E\x54\x5F\x54\x4F\x47\x47\x4C\x45\x52\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x68\x69\x6E\x74\x5F\x74\x6F\x67\x67\x6C\x65\x72\x2E\x69\x6E\x6E\x65\x72\x48\x54\x4D\x4C\x20\x3D\x20\x22\x20\x26\x23\x78\x32\x31\x33\x39\x3B\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x68\x69\x6E\x74\x5F\x74\x6F\x67\x67\x6C\x65\x72\x2E\x6F\x6E\x6D\x6F\x75\x73\x65\x6F\x76\x65\x72\x20\x3D\x20\x28\x29\x20\x3D\x3E\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x68\x69\x6E\x74\x5F\x74\x6F\x67\x67\x6C\x65\x72\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\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x68\x69\x6E\x74\x5F\x74\x6F\x67\x67\x6C\x65\x72\x2E\x6F\x6E\x63\x6C\x69\x63\x6B\x20\x3D\x20\x28\x29\x20\x3D\x3E\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6F\x6E\x43\x6C\x69\x63\x6B\x48\x69\x6E\x74\x54\x6F\x67\x67\x6C\x65\x72\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x77\x72\x61\x70\x70\x65\x72\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x74\x68\x69\x73\x2E\x65\x6C\x5F\x68\x69\x6E\x74\x5F\x74\x6F\x67\x67\x6C\x65\x72\x29\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x48\x69\x6E\x74\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x68\x69\x6E\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\x64\x69\x76\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x68\x69\x6E\x74\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x57\x55\x49\x5F\x49\x4E\x50\x55\x54\x5F\x53\x45\x4C\x45\x43\x54\x5F\x43\x4C\x41\x53\x53\x5F\x48\x49\x4E\x54\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x68\x69\x6E\x74\x2E\x69\x6E\x6E\x65\x72\x48\x54\x4D\x4C\x20\x3D\x20\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x68\x69\x6E\x74\x20\x7C\x7C\x20\x22\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x69\x73\x5F\x68\x69\x6E\x74\x5F\x74\x6F\x67\x67\x6C\x65\x64\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x68\x69\x6E\x74\x2E\x73\x74\x79\x6C\x65\x2E\x64\x69\x73\x70\x6C\x61\x79\x20\x3D\x20\x22\x62\x6C\x6F\x63\x6B\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x73\x65\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x68\x69\x6E\x74\x2E\x73\x74\x79\x6C\x65\x2E\x64\x69\x73\x70\x6C\x61\x79\x20\x3D\x20\x22\x6E\x6F\x6E\x65\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\x65\x6C\x5F\x68\x69\x6E\x74\x2E\x73\x74\x79\x6C\x65\x2E\x62\x6F\x72\x64\x65\x72\x52\x61\x64\x69\x75\x73\x20\x3D\x20\x22\x32\x70\x78\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x68\x69\x6E\x74\x2E\x73\x74\x79\x6C\x65\x2E\x70\x61\x64\x64\x69\x6E\x67\x20\x3D\x20\x22\x34\x70\x78\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x68\x69\x6E\x74\x2E\x73\x74\x79\x6C\x65\x2E\x6D\x61\x72\x67\x69\x6E\x54\x6F\x70\x20\x3D\x20\x22\x32\x70\x78\x22\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\x68\x69\x6E\x74\x29\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x6F\x6E\x43\x6C\x69\x63\x6B\x48\x69\x6E\x74\x54\x6F\x67\x67\x6C\x65\x72\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x65\x6C\x5F\x68\x69\x6E\x74\x2E\x73\x74\x79\x6C\x65\x2E\x64\x69\x73\x70\x6C\x61\x79\x20\x3D\x3D\x3D\x20\x22\x6E\x6F\x6E\x65\x22\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x68\x69\x6E\x74\x2E\x73\x74\x79\x6C\x65\x2E\x64\x69\x73\x70\x6C\x61\x79\x20\x3D\x20\x22\x62\x6C\x6F\x63\x6B\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x73\x65\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x68\x69\x6E\x74\x2E\x73\x74\x79\x6C\x65\x2E\x64\x69\x73\x70\x6C\x61\x79\x20\x3D\x20\x22\x6E\x6F\x6E\x65\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x6F\x6E\x43\x6C\x69\x63\x6B\x49\x6E\x70\x75\x74\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x21\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x6F\x6E\x43\x68\x61\x6E\x67\x65\x48\x61\x6E\x64\x6C\x65\x72\x29\x20\x7B\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\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x76\x61\x6C\x75\x65\x20\x3D\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x69\x6E\x70\x75\x74\x2E\x76\x61\x6C\x75\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x76\x61\x6C\x75\x65\x20\x21\x3D\x3D\x20\x76\x61\x6C\x75\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x6B\x65\x79\x20\x3D\x20\x74\x68\x69\x73\x2E\x76\x61\x6C\x75\x65\x5F\x6B\x65\x79\x5B\x76\x61\x6C\x75\x65\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x6B\x65\x79\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\x6F\x6E\x43\x68\x61\x6E\x67\x65\x48\x61\x6E\x64\x6C\x65\x72\x28\x6B\x65\x79\x2C\x20\x76\x61\x6C\x75\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\x76\x61\x6C\x75\x65\x20\x3D\x20\x76\x61\x6C\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\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\x7D\x0A\x20\x20\x20\x20\x2F\x2F\x20\x73\x65\x74\x20\x74\x68\x65\x20\x69\x6E\x70\x75\x74\x20\x76\x61\x6C\x75\x65\x2E\x0A\x20\x20\x20\x20\x73\x65\x74\x28\x76\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x69\x6E\x70\x75\x74\x2E\x76\x61\x6C\x75\x65\x20\x3D\x20\x76\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x7D\x0A"), } node.SetMode(420) - node.SetModTimeUnix(1707037266, 105128411) + node.SetModTimeUnix(1707078138, 305859598) node.SetName("select.js") node.SetSize(5364) return node @@ -478,7 +494,7 @@ func generate__www_wui_input_string_js() *memfs.Node { Content: []byte("\x2F\x2F\x20\x53\x50\x44\x58\x2D\x46\x69\x6C\x65\x43\x6F\x70\x79\x72\x69\x67\x68\x74\x54\x65\x78\x74\x3A\x20\x32\x30\x32\x31\x20\x4D\x2E\x20\x53\x68\x75\x6C\x68\x61\x6E\x20\x3C\x6D\x73\x40\x6B\x69\x6C\x61\x62\x69\x74\x2E\x69\x6E\x66\x6F\x3E\x0A\x2F\x2F\x20\x53\x50\x44\x58\x2D\x4C\x69\x63\x65\x6E\x73\x65\x2D\x49\x64\x65\x6E\x74\x69\x66\x69\x65\x72\x3A\x20\x47\x50\x4C\x2D\x33\x2E\x30\x2D\x6F\x72\x2D\x6C\x61\x74\x65\x72\x0A\x63\x6F\x6E\x73\x74\x20\x57\x55\x49\x5F\x49\x4E\x50\x55\x54\x5F\x53\x54\x52\x49\x4E\x47\x5F\x43\x4C\x41\x53\x53\x20\x3D\x20\x22\x77\x75\x69\x5F\x69\x6E\x70\x75\x74\x5F\x73\x74\x72\x69\x6E\x67\x22\x3B\x0A\x63\x6F\x6E\x73\x74\x20\x57\x55\x49\x5F\x49\x4E\x50\x55\x54\x5F\x53\x54\x52\x49\x4E\x47\x5F\x43\x4C\x41\x53\x53\x5F\x48\x49\x4E\x54\x20\x3D\x20\x22\x77\x75\x69\x5F\x69\x6E\x70\x75\x74\x5F\x73\x74\x72\x69\x6E\x67\x5F\x68\x69\x6E\x74\x22\x3B\x0A\x63\x6F\x6E\x73\x74\x20\x57\x55\x49\x5F\x49\x4E\x50\x55\x54\x5F\x53\x54\x52\x49\x4E\x47\x5F\x43\x4C\x41\x53\x53\x5F\x48\x49\x4E\x54\x5F\x54\x4F\x47\x47\x4C\x45\x52\x20\x3D\x20\x22\x77\x75\x69\x5F\x69\x6E\x70\x75\x74\x5F\x73\x74\x72\x69\x6E\x67\x5F\x68\x69\x6E\x74\x5F\x74\x6F\x67\x67\x6C\x65\x72\x22\x3B\x0A\x63\x6F\x6E\x73\x74\x20\x57\x55\x49\x5F\x49\x4E\x50\x55\x54\x5F\x53\x54\x52\x49\x4E\x47\x5F\x43\x4C\x41\x53\x53\x5F\x49\x4E\x50\x55\x54\x20\x3D\x20\x22\x77\x75\x69\x5F\x69\x6E\x70\x75\x74\x5F\x73\x74\x72\x69\x6E\x67\x5F\x69\x6E\x70\x75\x74\x22\x3B\x0A\x63\x6F\x6E\x73\x74\x20\x57\x55\x49\x5F\x49\x4E\x50\x55\x54\x5F\x53\x54\x52\x49\x4E\x47\x5F\x43\x4C\x41\x53\x53\x5F\x4C\x41\x42\x45\x4C\x20\x3D\x20\x22\x77\x75\x69\x5F\x69\x6E\x70\x75\x74\x5F\x73\x74\x72\x69\x6E\x67\x5F\x6C\x61\x62\x65\x6C\x22\x3B\x0A\x2F\x2F\x20\x57\x75\x69\x49\x6E\x70\x75\x74\x53\x74\x72\x69\x6E\x67\x20\x63\x72\x65\x61\x74\x65\x20\x61\x6E\x20\x48\x54\x4D\x4C\x20\x69\x6E\x70\x75\x74\x20\x66\x6F\x72\x20\x73\x74\x72\x69\x6E\x67\x20\x77\x69\x74\x68\x20\x70\x72\x65\x64\x65\x66\x69\x6E\x65\x64\x20\x6F\x70\x74\x69\x6F\x6E\x73\x2E\x0A\x2F\x2F\x20\x54\x68\x65\x20\x72\x65\x71\x75\x69\x72\x65\x64\x20\x6F\x70\x74\x69\x6F\x6E\x73\x20\x61\x72\x65\x20\x22\x6C\x61\x62\x65\x6C\x22\x20\x61\x6E\x64\x20\x22\x76\x61\x6C\x75\x65\x22\x2E\x0A\x2F\x2F\x0A\x2F\x2F\x20\x46\x6F\x72\x6D\x61\x74\x20\x6F\x66\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64\x20\x48\x54\x4D\x4C\x20\x6F\x75\x74\x70\x75\x74\x2C\x0A\x2F\x2F\x0A\x2F\x2F\x09\x3C\x64\x69\x76\x20\x5B\x69\x64\x3D\x24\x7B\x69\x64\x7D\x5D\x20\x63\x6C\x61\x73\x73\x3D\x22\x24\x7B\x57\x55\x49\x5F\x49\x4E\x50\x55\x54\x5F\x53\x54\x52\x49\x4E\x47\x5F\x43\x4C\x41\x53\x53\x7D\x22\x3E\x0A\x2F\x2F\x09\x09\x3C\x64\x69\x76\x3E\x0A\x2F\x2F\x09\x09\x09\x3C\x6C\x61\x62\x65\x6C\x20\x63\x6C\x61\x73\x73\x3D\x22\x24\x7B\x57\x55\x49\x5F\x49\x4E\x50\x55\x54\x5F\x53\x54\x52\x49\x4E\x47\x5F\x43\x4C\x41\x53\x53\x5F\x4C\x41\x42\x45\x4C\x7D\x20\x5B\x24\x7B\x63\x6C\x61\x73\x73\x5F\x6C\x61\x62\x65\x6C\x7D\x5D\x22\x3E\x0A\x2F\x2F\x09\x09\x09\x09\x24\x7B\x6C\x61\x62\x65\x6C\x7D\x20\x7C\x20\x48\x54\x4D\x4C\x45\x6C\x65\x6D\x65\x6E\x74\x0A\x2F\x2F\x09\x09\x09\x3C\x2F\x6C\x61\x62\x65\x6C\x3E\x0A\x2F\x2F\x09\x09\x09\x3C\x69\x6E\x70\x75\x74\x0A\x2F\x2F\x09\x09\x09\x09\x63\x6C\x61\x73\x73\x3D\x22\x24\x7B\x57\x55\x49\x5F\x49\x4E\x50\x55\x54\x5F\x53\x54\x52\x49\x4E\x47\x5F\x43\x4C\x41\x53\x53\x5F\x49\x4E\x50\x55\x54\x7D\x20\x5B\x24\x7B\x63\x6C\x61\x73\x73\x5F\x69\x6E\x70\x75\x74\x7D\x5D\x22\x0A\x2F\x2F\x09\x09\x09\x09\x5B\x64\x69\x73\x61\x62\x6C\x65\x64\x3D\x24\x7B\x69\x73\x5F\x64\x69\x73\x61\x62\x6C\x65\x64\x7D\x5D\x0A\x2F\x2F\x09\x09\x09\x09\x76\x61\x6C\x75\x65\x3D\x24\x7B\x76\x61\x6C\x75\x65\x7D\x0A\x2F\x2F\x09\x09\x09\x3E\x0A\x2F\x2F\x09\x09\x09\x5B\x3C\x73\x70\x61\x6E\x20\x63\x6C\x61\x73\x73\x3D\x22\x24\x7B\x57\x55\x49\x5F\x49\x4E\x50\x55\x54\x5F\x53\x54\x52\x49\x4E\x47\x5F\x43\x4C\x41\x53\x53\x5F\x48\x49\x4E\x54\x5F\x54\x4F\x47\x47\x4C\x45\x52\x7D\x22\x3E\x69\x20\x3C\x2F\x73\x70\x61\x6E\x3E\x5D\x0A\x2F\x2F\x09\x09\x3C\x2F\x64\x69\x76\x3E\x0A\x2F\x2F\x09\x09\x5B\x3C\x64\x69\x76\x20\x63\x6C\x61\x73\x73\x3D\x22\x24\x7B\x57\x55\x49\x5F\x49\x4E\x50\x55\x54\x5F\x53\x54\x52\x49\x4E\x47\x5F\x43\x4C\x41\x53\x53\x5F\x48\x49\x4E\x54\x7D\x22\x3E\x24\x7B\x68\x69\x6E\x74\x7D\x3C\x2F\x64\x69\x76\x3E\x5D\x0A\x2F\x2F\x09\x3C\x2F\x64\x69\x76\x3E\x0A\x2F\x2F\x0A\x2F\x2F\x20\x54\x68\x65\x20\x22\x68\x69\x6E\x74\x22\x20\x6F\x70\x74\x69\x6F\x6E\x20\x69\x73\x20\x6F\x70\x74\x69\x6F\x6E\x61\x6C\x2C\x20\x69\x66\x20\x69\x74\x20\x73\x65\x74\x20\x74\x68\x65\x20\x69\x6E\x70\x75\x74\x20\x77\x69\x6C\x6C\x20\x68\x61\x76\x65\x20\x61\x20\x68\x69\x6E\x74\x20\x74\x6F\x67\x67\x6C\x65\x72\x0A\x2F\x2F\x20\x74\x6F\x20\x64\x69\x73\x70\x6C\x61\x79\x20\x6F\x72\x20\x68\x69\x64\x65\x20\x74\x68\x65\x20\x69\x6E\x70\x75\x74\x20\x69\x6E\x66\x6F\x72\x6D\x61\x74\x69\x6F\x6E\x2E\x0A\x2F\x2F\x0A\x2F\x2F\x20\x55\x73\x65\x72\x20\x63\x61\x6E\x20\x73\x65\x74\x20\x6F\x6E\x43\x68\x61\x6E\x67\x65\x48\x61\x6E\x64\x6C\x65\x72\x20\x74\x6F\x20\x72\x65\x63\x65\x69\x76\x65\x20\x6E\x65\x77\x20\x76\x61\x6C\x75\x65\x20\x77\x68\x65\x6E\x20\x74\x68\x65\x20\x69\x6E\x70\x75\x74\x20\x76\x61\x6C\x75\x65\x0A\x2F\x2F\x20\x63\x68\x61\x6E\x67\x65\x73\x2E\x0A\x65\x78\x70\x6F\x72\x74\x20\x63\x6C\x61\x73\x73\x20\x57\x75\x69\x49\x6E\x70\x75\x74\x53\x74\x72\x69\x6E\x67\x20\x7B\x0A\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x72\x75\x63\x74\x6F\x72\x28\x6F\x70\x74\x73\x29\x20\x7B\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\x76\x61\x6C\x75\x65\x20\x3D\x20\x22\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x76\x61\x6C\x75\x65\x20\x3D\x20\x6F\x70\x74\x73\x2E\x76\x61\x6C\x75\x65\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\x69\x66\x20\x28\x6F\x70\x74\x73\x2E\x69\x64\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x69\x64\x20\x3D\x20\x6F\x70\x74\x73\x2E\x69\x64\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\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x57\x55\x49\x5F\x49\x4E\x50\x55\x54\x5F\x53\x54\x52\x49\x4E\x47\x5F\x43\x4C\x41\x53\x53\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\x70\x61\x64\x64\x69\x6E\x67\x20\x3D\x20\x22\x32\x70\x78\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x20\x77\x72\x61\x70\x70\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\x64\x69\x76\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x67\x65\x6E\x65\x72\x61\x74\x65\x4C\x61\x62\x65\x6C\x28\x77\x72\x61\x70\x70\x65\x72\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x67\x65\x6E\x65\x72\x61\x74\x65\x49\x6E\x70\x75\x74\x28\x77\x72\x61\x70\x70\x65\x72\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x6F\x70\x74\x73\x2E\x68\x69\x6E\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x67\x65\x6E\x65\x72\x61\x74\x65\x48\x69\x6E\x74\x54\x6F\x67\x67\x6C\x65\x72\x28\x77\x72\x61\x70\x70\x65\x72\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\x65\x6C\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x77\x72\x61\x70\x70\x65\x72\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x6F\x70\x74\x73\x2E\x68\x69\x6E\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x67\x65\x6E\x65\x72\x61\x74\x65\x48\x69\x6E\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x4C\x61\x62\x65\x6C\x28\x77\x72\x61\x70\x70\x65\x72\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x6C\x61\x62\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\x6C\x61\x62\x65\x6C\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x6C\x61\x62\x65\x6C\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x57\x55\x49\x5F\x49\x4E\x50\x55\x54\x5F\x53\x54\x52\x49\x4E\x47\x5F\x43\x4C\x41\x53\x53\x5F\x4C\x41\x42\x45\x4C\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x63\x6C\x61\x73\x73\x5F\x6C\x61\x62\x65\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x6C\x61\x62\x65\x6C\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x63\x6C\x61\x73\x73\x5F\x6C\x61\x62\x65\x6C\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\x79\x70\x65\x6F\x66\x20\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x6C\x61\x62\x65\x6C\x20\x3D\x3D\x3D\x20\x22\x73\x74\x72\x69\x6E\x67\x22\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x6C\x61\x62\x65\x6C\x2E\x69\x6E\x6E\x65\x72\x48\x54\x4D\x4C\x20\x3D\x20\x60\x24\x7B\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x6C\x61\x62\x65\x6C\x7D\x20\x60\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x73\x65\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x6C\x61\x62\x65\x6C\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x6C\x61\x62\x65\x6C\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x77\x72\x61\x70\x70\x65\x72\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x74\x68\x69\x73\x2E\x65\x6C\x5F\x6C\x61\x62\x65\x6C\x29\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x49\x6E\x70\x75\x74\x28\x77\x72\x61\x70\x70\x65\x72\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x69\x6E\x70\x75\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\x69\x6E\x70\x75\x74\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x69\x6E\x70\x75\x74\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x57\x55\x49\x5F\x49\x4E\x50\x55\x54\x5F\x53\x54\x52\x49\x4E\x47\x5F\x43\x4C\x41\x53\x53\x5F\x49\x4E\x50\x55\x54\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x63\x6C\x61\x73\x73\x5F\x69\x6E\x70\x75\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x69\x6E\x70\x75\x74\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x63\x6C\x61\x73\x73\x5F\x69\x6E\x70\x75\x74\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\x65\x6C\x5F\x69\x6E\x70\x75\x74\x2E\x76\x61\x6C\x75\x65\x20\x3D\x20\x22\x22\x20\x2B\x20\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x76\x61\x6C\x75\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x69\x73\x5F\x64\x69\x73\x61\x62\x6C\x65\x64\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x69\x6E\x70\x75\x74\x2E\x64\x69\x73\x61\x62\x6C\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\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x6F\x6E\x43\x68\x61\x6E\x67\x65\x48\x61\x6E\x64\x6C\x65\x72\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x69\x6E\x70\x75\x74\x2E\x6F\x6E\x6B\x65\x79\x75\x70\x20\x3D\x20\x28\x29\x20\x3D\x3E\x20\x7B\x0A\x20\x20\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\x6F\x6E\x43\x68\x61\x6E\x67\x65\x48\x61\x6E\x64\x6C\x65\x72\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x76\x61\x6C\x75\x65\x20\x21\x3D\x3D\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x69\x6E\x70\x75\x74\x2E\x76\x61\x6C\x75\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\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\x6F\x6E\x43\x68\x61\x6E\x67\x65\x48\x61\x6E\x64\x6C\x65\x72\x28\x74\x68\x69\x73\x2E\x65\x6C\x5F\x69\x6E\x70\x75\x74\x2E\x76\x61\x6C\x75\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x76\x61\x6C\x75\x65\x20\x3D\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x69\x6E\x70\x75\x74\x2E\x76\x61\x6C\x75\x65\x3B\x0A\x20\x20\x20\x20\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\x7D\x0A\x20\x20\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\x77\x72\x61\x70\x70\x65\x72\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x74\x68\x69\x73\x2E\x65\x6C\x5F\x69\x6E\x70\x75\x74\x29\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x48\x69\x6E\x74\x54\x6F\x67\x67\x6C\x65\x72\x28\x77\x72\x61\x70\x70\x65\x72\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x68\x69\x6E\x74\x5F\x74\x6F\x67\x67\x6C\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\x68\x69\x6E\x74\x5F\x74\x6F\x67\x67\x6C\x65\x72\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x57\x55\x49\x5F\x49\x4E\x50\x55\x54\x5F\x53\x54\x52\x49\x4E\x47\x5F\x43\x4C\x41\x53\x53\x5F\x48\x49\x4E\x54\x5F\x54\x4F\x47\x47\x4C\x45\x52\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x68\x69\x6E\x74\x5F\x74\x6F\x67\x67\x6C\x65\x72\x2E\x69\x6E\x6E\x65\x72\x48\x54\x4D\x4C\x20\x3D\x20\x22\x20\x26\x23\x78\x32\x31\x33\x39\x3B\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x68\x69\x6E\x74\x5F\x74\x6F\x67\x67\x6C\x65\x72\x2E\x6F\x6E\x6D\x6F\x75\x73\x65\x6F\x76\x65\x72\x20\x3D\x20\x28\x29\x20\x3D\x3E\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x68\x69\x6E\x74\x5F\x74\x6F\x67\x67\x6C\x65\x72\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\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x68\x69\x6E\x74\x5F\x74\x6F\x67\x67\x6C\x65\x72\x2E\x6F\x6E\x63\x6C\x69\x63\x6B\x20\x3D\x20\x28\x29\x20\x3D\x3E\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6F\x6E\x43\x6C\x69\x63\x6B\x48\x69\x6E\x74\x54\x6F\x67\x67\x6C\x65\x72\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x77\x72\x61\x70\x70\x65\x72\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x74\x68\x69\x73\x2E\x65\x6C\x5F\x68\x69\x6E\x74\x5F\x74\x6F\x67\x67\x6C\x65\x72\x29\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x48\x69\x6E\x74\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x68\x69\x6E\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\x64\x69\x76\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x68\x69\x6E\x74\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x57\x55\x49\x5F\x49\x4E\x50\x55\x54\x5F\x53\x54\x52\x49\x4E\x47\x5F\x43\x4C\x41\x53\x53\x5F\x48\x49\x4E\x54\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x68\x69\x6E\x74\x2E\x69\x6E\x6E\x65\x72\x48\x54\x4D\x4C\x20\x3D\x20\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x68\x69\x6E\x74\x20\x7C\x7C\x20\x22\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x69\x73\x5F\x68\x69\x6E\x74\x5F\x74\x6F\x67\x67\x6C\x65\x64\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x68\x69\x6E\x74\x2E\x73\x74\x79\x6C\x65\x2E\x64\x69\x73\x70\x6C\x61\x79\x20\x3D\x20\x22\x62\x6C\x6F\x63\x6B\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x73\x65\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x68\x69\x6E\x74\x2E\x73\x74\x79\x6C\x65\x2E\x64\x69\x73\x70\x6C\x61\x79\x20\x3D\x20\x22\x6E\x6F\x6E\x65\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\x65\x6C\x5F\x68\x69\x6E\x74\x2E\x73\x74\x79\x6C\x65\x2E\x62\x6F\x72\x64\x65\x72\x52\x61\x64\x69\x75\x73\x20\x3D\x20\x22\x32\x70\x78\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x68\x69\x6E\x74\x2E\x73\x74\x79\x6C\x65\x2E\x70\x61\x64\x64\x69\x6E\x67\x20\x3D\x20\x22\x34\x70\x78\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x68\x69\x6E\x74\x2E\x73\x74\x79\x6C\x65\x2E\x6D\x61\x72\x67\x69\x6E\x54\x6F\x70\x20\x3D\x20\x22\x32\x70\x78\x22\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\x68\x69\x6E\x74\x29\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x6F\x6E\x43\x6C\x69\x63\x6B\x48\x69\x6E\x74\x54\x6F\x67\x67\x6C\x65\x72\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x65\x6C\x5F\x68\x69\x6E\x74\x2E\x73\x74\x79\x6C\x65\x2E\x64\x69\x73\x70\x6C\x61\x79\x20\x3D\x3D\x3D\x20\x22\x6E\x6F\x6E\x65\x22\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x68\x69\x6E\x74\x2E\x73\x74\x79\x6C\x65\x2E\x64\x69\x73\x70\x6C\x61\x79\x20\x3D\x20\x22\x62\x6C\x6F\x63\x6B\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x73\x65\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x68\x69\x6E\x74\x2E\x73\x74\x79\x6C\x65\x2E\x64\x69\x73\x70\x6C\x61\x79\x20\x3D\x20\x22\x6E\x6F\x6E\x65\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x2F\x2F\x20\x73\x65\x74\x20\x74\x68\x65\x20\x69\x6E\x70\x75\x74\x20\x76\x61\x6C\x75\x65\x2E\x0A\x20\x20\x20\x20\x73\x65\x74\x28\x76\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x69\x6E\x70\x75\x74\x2E\x76\x61\x6C\x75\x65\x20\x3D\x20\x76\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x7D\x0A"), } node.SetMode(420) - node.SetModTimeUnix(1707037266, 71794905) + node.SetModTimeUnix(1707078138, 269192892) node.SetName("string.js") node.SetSize(4673) return node @@ -508,7 +524,7 @@ func generate__www_wui_notif_notif_js() *memfs.Node { Content: []byte("\x2F\x2F\x20\x53\x50\x44\x58\x2D\x46\x69\x6C\x65\x43\x6F\x70\x79\x72\x69\x67\x68\x74\x54\x65\x78\x74\x3A\x20\x32\x30\x32\x31\x20\x4D\x2E\x20\x53\x68\x75\x6C\x68\x61\x6E\x20\x3C\x6D\x73\x40\x6B\x69\x6C\x61\x62\x69\x74\x2E\x69\x6E\x66\x6F\x3E\x0A\x2F\x2F\x20\x53\x50\x44\x58\x2D\x4C\x69\x63\x65\x6E\x73\x65\x2D\x49\x64\x65\x6E\x74\x69\x66\x69\x65\x72\x3A\x20\x47\x50\x4C\x2D\x33\x2E\x30\x2D\x6F\x72\x2D\x6C\x61\x74\x65\x72\x0A\x65\x78\x70\x6F\x72\x74\x20\x63\x6F\x6E\x73\x74\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\x65\x78\x70\x6F\x72\x74\x20\x63\x6F\x6E\x73\x74\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\x65\x78\x70\x6F\x72\x74\x20\x63\x6F\x6E\x73\x74\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\x2F\x2F\x20\x57\x75\x69\x4E\x6F\x74\x69\x66\x20\x69\x6D\x70\x6C\x65\x6D\x65\x6E\x74\x20\x74\x68\x65\x20\x48\x54\x4D\x4C\x20\x69\x6E\x74\x65\x72\x66\x61\x63\x65\x20\x74\x6F\x20\x64\x69\x73\x70\x6C\x61\x79\x20\x70\x6F\x70\x2D\x75\x70\x20\x6E\x6F\x74\x69\x66\x69\x63\x61\x74\x69\x6F\x6E\x2E\x0A\x2F\x2F\x20\x54\x68\x65\x20\x6E\x6F\x74\x69\x66\x69\x63\x61\x74\x69\x6F\x6E\x20\x63\x61\x6E\x20\x62\x65\x20\x74\x72\x69\x67\x67\x65\x72\x65\x64\x20\x62\x79\x20\x63\x61\x6C\x6C\x69\x6E\x67\x20\x6D\x65\x74\x68\x6F\x64\x20\x69\x6E\x66\x6F\x28\x29\x20\x6F\x72\x20\x65\x72\x72\x6F\x72\x28\x29\x2E\x0A\x2F\x2F\x20\x45\x61\x63\x68\x20\x70\x6F\x70\x2D\x75\x70\x20\x68\x61\x73\x20\x35\x20\x73\x65\x63\x6F\x6E\x64\x73\x20\x64\x75\x72\x61\x74\x69\x6F\x6E\x2C\x20\x61\x66\x74\x65\x72\x20\x74\x68\x61\x74\x20\x74\x68\x65\x79\x20\x77\x69\x6C\x6C\x20\x62\x65\x20\x72\x65\x6D\x6F\x76\x65\x64\x0A\x2F\x2F\x20\x61\x75\x74\x6F\x6D\x61\x74\x69\x63\x61\x6C\x6C\x79\x2E\x0A\x65\x78\x70\x6F\x72\x74\x20\x63\x6C\x61\x73\x73\x20\x57\x75\x69\x4E\x6F\x74\x69\x66\x20\x7B\x0A\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\x72\x75\x63\x74\x6F\x72\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\x30\x30\x30\x3B\x20\x2F\x2F\x20\x35\x20\x73\x65\x63\x6F\x6E\x64\x73\x20\x74\x69\x6D\x65\x6F\x75\x74\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\x7D\x0A\x20\x20\x20\x20\x2F\x2F\x20\x69\x6E\x66\x6F\x20\x73\x68\x6F\x77\x20\x74\x68\x65\x20\x6D\x73\x67\x20\x61\x73\x20\x69\x6E\x66\x6F\x72\x6D\x61\x74\x69\x6F\x6E\x2E\x0A\x20\x20\x20\x20\x69\x6E\x66\x6F\x28\x6D\x73\x67\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\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\x28\x29\x20\x3D\x3E\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\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\x7D\x0A\x20\x20\x20\x20\x2F\x2F\x20\x65\x72\x72\x6F\x72\x20\x73\x68\x6F\x77\x20\x74\x68\x65\x20\x6D\x73\x67\x20\x61\x73\x20\x61\x6E\x20\x65\x72\x72\x6F\x72\x2E\x0A\x20\x20\x20\x20\x65\x72\x72\x6F\x72\x28\x6D\x73\x67\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\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\x28\x29\x20\x3D\x3E\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\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\x7D\x0A\x20\x20\x20\x20\x69\x6E\x69\x74\x53\x74\x79\x6C\x65\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x74\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\x60\x0A\x09\x09\x09\x23\x24\x7B\x57\x55\x49\x5F\x4E\x4F\x54\x49\x46\x5F\x49\x44\x7D\x20\x7B\x0A\x09\x09\x09\x09\x6C\x65\x66\x74\x3A\x20\x31\x30\x25\x3B\x0A\x09\x09\x09\x09\x70\x6F\x73\x69\x74\x69\x6F\x6E\x3A\x20\x66\x69\x78\x65\x64\x3B\x0A\x09\x09\x09\x09\x74\x6F\x70\x3A\x20\x31\x65\x6D\x3B\x0A\x09\x09\x09\x09\x77\x69\x64\x74\x68\x3A\x20\x38\x30\x25\x3B\x0A\x09\x09\x09\x09\x7A\x2D\x69\x6E\x64\x65\x78\x3A\x20\x31\x30\x30\x30\x30\x3B\x0A\x09\x09\x09\x7D\x0A\x09\x09\x09\x2E\x24\x7B\x57\x55\x49\x5F\x4E\x4F\x54\x49\x46\x5F\x43\x4C\x41\x53\x53\x5F\x49\x4E\x46\x4F\x7D\x20\x7B\x0A\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\x0A\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\x0A\x09\x09\x09\x09\x6D\x61\x72\x67\x69\x6E\x2D\x62\x6F\x74\x74\x6F\x6D\x3A\x20\x31\x65\x6D\x3B\x0A\x09\x09\x09\x09\x70\x61\x64\x64\x69\x6E\x67\x3A\x20\x31\x65\x6D\x3B\x0A\x09\x09\x09\x7D\x0A\x09\x09\x09\x2E\x24\x7B\x57\x55\x49\x5F\x4E\x4F\x54\x49\x46\x5F\x43\x4C\x41\x53\x53\x5F\x45\x52\x52\x4F\x52\x7D\x20\x7B\x0A\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\x0A\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\x0A\x09\x09\x09\x09\x6D\x61\x72\x67\x69\x6E\x2D\x62\x6F\x74\x74\x6F\x6D\x3A\x20\x31\x65\x6D\x3B\x0A\x09\x09\x09\x09\x70\x61\x64\x64\x69\x6E\x67\x3A\x20\x31\x65\x6D\x3B\x0A\x09\x09\x09\x7D\x0A\x09\x09\x60\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\x7D\x0A\x7D\x0A"), } node.SetMode(420) - node.SetModTimeUnix(1707037266, 128461865) + node.SetModTimeUnix(1707078138, 325859620) node.SetName("notif.js") node.SetSize(1975) return node @@ -537,7 +553,7 @@ func generate__www_wui_vfs() *memfs.Node { GenFuncName: "generate__www_wui_vfs", } node.SetMode(2147484141) - node.SetModTimeUnix(1699636953, 899489339) + node.SetModTimeUnix(1707075273, 641481825) node.SetName("vfs") node.SetSize(0) node.AddChild(_memfsWWW_getNode(memfsWWW, "/wui/vfs/vfs.js", generate__www_wui_vfs_vfs_js)) @@ -667,6 +683,8 @@ func init() { _memfsWWW_getNode(memfsWWW, "/wui/input", generate__www_wui_input)) memfsWWW.PathNodes.Set("/wui/input/checkboxes.js", _memfsWWW_getNode(memfsWWW, "/wui/input/checkboxes.js", generate__www_wui_input_checkboxes_js)) + memfsWWW.PathNodes.Set("/wui/input/file.js", + _memfsWWW_getNode(memfsWWW, "/wui/input/file.js", generate__www_wui_input_file_js)) memfsWWW.PathNodes.Set("/wui/input/number.js", _memfsWWW_getNode(memfsWWW, "/wui/input/number.js", generate__www_wui_input_number_js)) memfsWWW.PathNodes.Set("/wui/input/option.js", diff --git a/run_request.go b/run_request.go index 2f18098..51b60c6 100644 --- a/run_request.go +++ b/run_request.go @@ -57,8 +57,7 @@ func generateRunRequest( outrr.HTTPTarget.Params = req.HTTPTarget.Params outrr.HTTPTarget.paramsToPath() - outrr.HTTPTarget.RequestDumper = origHTTPTarget.RequestDumper - outrr.HTTPTarget.ResponseDumper = origHTTPTarget.ResponseDumper + outrr.HTTPTarget.refCopy(origHTTPTarget) return outrr } diff --git a/testdata/target_http_run_formkindfile_test.txt b/testdata/target_http_run_formkindfile_test.txt new file mode 100644 index 0000000..4f18347 --- /dev/null +++ b/testdata/target_http_run_formkindfile_test.txt @@ -0,0 +1,49 @@ +Test data for testing running HTTP with form kind is file (uploading file). + +>>> valid:http_request_body +{ + "Target": { + "id": "target_http" + }, + "HTTPTarget": { + "id": "upload", + "Method": 6, + "RequestType": 3, + "Path": "/upload", + "Params": { + "file": { + "kind": "file", + "value": "Q29udGVudCBvZiBmaWxlIHVwbG9hZA==", + "filename": "test.txt", + "filetype": "text/plain", + "filesize": 22 + } + } + } +} + +<<< valid:RunResponse.DumpResponse +HTTP/1.1 200 OK +Content-Length: 260 +Content-Type: application/json + +{ + "data": { + "filecontent": [ + "Q29udGVudCBvZiBmaWxlIHVwbG9hZA==" + ], + "filemodms": [ + "0" + ], + "filename": [ + "test.txt" + ], + "filesize": [ + "22" + ], + "filetype": [ + "text/plain" + ] + }, + "code": 200 +} @@ -189,9 +189,8 @@ func (trunks *Trunks) RunHTTP(req *RunRequest) (res *RunResponse, err error) { if origHTTPTarget.Run == nil { req.Target.BaseURL = origTarget.BaseURL req.Target.Name = origTarget.Name - req.HTTPTarget.ConvertParams = origHTTPTarget.ConvertParams - req.HTTPTarget.RequestDumper = origHTTPTarget.RequestDumper - req.HTTPTarget.ResponseDumper = origHTTPTarget.ResponseDumper + + req.HTTPTarget.refCopy(origHTTPTarget) res, err = trunks.runHTTPTarget(req) } else { diff --git a/trunks_test.go b/trunks_test.go new file mode 100644 index 0000000..fb3b4b6 --- /dev/null +++ b/trunks_test.go @@ -0,0 +1,87 @@ +// SPDX-FileCopyrightText: 2024 M. Shulhan <ms@kilabit.info> +// SPDX-License-Identifier: GPL-3.0-or-later + +package trunks + +import ( + "crypto/rand" + "log" + "net/http" + "os" + "testing" + "time" + + libhttp "github.com/shuLhan/share/lib/http" + "github.com/shuLhan/share/lib/test/mock" +) + +// dummyHttpd dummy HTTP as target for Trunks. +var dummyHttpd *httpdDummy + +// dummyTrunks the Trunks instance that contains [Target] to be tested. +var dummyTrunks *Trunks + +func TestMain(m *testing.M) { + var err error + + // Mock crypto [rand.Reader] for predictable HTTP boundary. + rand.Reader = mock.NewRandReader([]byte(`gorankusu`)) + + dummyHttpd, err = newHttpdDummy() + if err != nil { + log.Fatal(err) + } + defer dummyHttpd.Stop(time.Second) + + var env = Environment{} + + dummyTrunks, err = New(&env) + if err != nil { + log.Fatal(err) + } + + registerTargetHTTP() + + os.Exit(m.Run()) +} + +func registerTargetHTTP() { + var logp = `registerTargetHTTP` + + var target = &Target{ + ID: `target_http`, + Name: `Target HTTP`, + BaseURL: `http://` + dummyHttpd.Server.Options.Address, + } + var targetHTTPUpload = &HTTPTarget{ + ID: `upload`, + Name: `Upload`, + Method: dummyEndpointUpload.Method, + Path: dummyEndpointUpload.Path, + RequestType: dummyEndpointUpload.RequestType, + Params: KeyFormInput{ + `file`: FormInput{ + Label: `File`, + Kind: FormInputKindFile, + }, + }, + RequestDumper: requestDumperWithoutDate, + ResponseDumper: responseDumperWithoutDate, + } + target.HTTPTargets = append(target.HTTPTargets, targetHTTPUpload) + + var err = dummyTrunks.RegisterTarget(target) + if err != nil { + log.Fatalf(`%s: %s`, logp, err) + } +} + +func requestDumperWithoutDate(req *http.Request) ([]byte, error) { + req.Header.Del(libhttp.HeaderDate) + return DumpHTTPRequest(req) +} + +func responseDumperWithoutDate(resp *http.Response) ([]byte, error) { + resp.Header.Del(libhttp.HeaderDate) + return DumpHTTPResponse(resp) +} |
