From cc2bb92a3ea2620fc44b41bb202239055400df5a Mon Sep 17 00:00:00 2001 From: Shulhan Date: Thu, 28 Sep 2023 18:39:21 +0700 Subject: _www: fix execute request that still use "begin_at" and "end_at" While at it, reformat the TypeScript files using prettier v3.0.3. --- _www/awwan.ts | 905 ++++++++++++++++++++++++------------------------- _www/main.js | 917 +++++++++++++++++++++----------------------------- _www/main.ts | 6 +- internal/memfs_www.go | 10 +- 4 files changed, 835 insertions(+), 1003 deletions(-) diff --git a/_www/awwan.ts b/_www/awwan.ts index 5fe512a..c916559 100644 --- a/_www/awwan.ts +++ b/_www/awwan.ts @@ -1,45 +1,44 @@ // SPDX-FileCopyrightText: 2021 M. Shulhan // SPDX-License-Identifier: GPL-3.0-or-later -import { WuiEditor, WuiEditorOptions } from "./wui/editor/editor.js" -import { WuiNotif } from "./wui/notif/notif.js" -import { WuiResponseInterface } from "./wui/response.js" -import { WuiVfs, WuiVfsOptions, WuiVfsNodeInterface } from "./wui/vfs/vfs.js" - -const CLASS_EDITOR_ACTION = "editor_action" -const ID_BTN_CLEAR_SELECTION = "com_btn_clear_selection" -const ID_BTN_EXEC_LOCAL = "com_btn_local" -const ID_BTN_EXEC_REMOTE = "com_btn_remote" -const ID_BTN_NEW_DIR = "com_btn_new_dir" -const ID_BTN_NEW_FILE = "com_btn_new_file" -const ID_BTN_REMOVE = "com_btn_remove" -const ID_BTN_SAVE = "com_btn_save" -const ID_EDITOR = "com_editor" -const ID_INP_VFS_NEW = "com_inp_vfs_new" -const ID_VFS = "com_vfs" -const ID_VFS_PATH = "vfs_path" -const ID_STDOUT = "stdout" -const ID_STDERR = "stderr" -const MAX_FILE_SIZE = 3000000 +import { WuiEditor, WuiEditorOptions } from "./wui/editor/editor.js"; +import { WuiNotif } from "./wui/notif/notif.js"; +import { WuiResponseInterface } from "./wui/response.js"; +import { WuiVfs, WuiVfsOptions, WuiVfsNodeInterface } from "./wui/vfs/vfs.js"; + +const CLASS_EDITOR_ACTION = "editor_action"; +const ID_BTN_CLEAR_SELECTION = "com_btn_clear_selection"; +const ID_BTN_EXEC_LOCAL = "com_btn_local"; +const ID_BTN_EXEC_REMOTE = "com_btn_remote"; +const ID_BTN_NEW_DIR = "com_btn_new_dir"; +const ID_BTN_NEW_FILE = "com_btn_new_file"; +const ID_BTN_REMOVE = "com_btn_remove"; +const ID_BTN_SAVE = "com_btn_save"; +const ID_EDITOR = "com_editor"; +const ID_INP_VFS_NEW = "com_inp_vfs_new"; +const ID_VFS = "com_vfs"; +const ID_VFS_PATH = "vfs_path"; +const ID_STDOUT = "stdout"; +const ID_STDERR = "stderr"; +const MAX_FILE_SIZE = 3000000; interface RequestInterface { - mode: string - script: string - content: string - begin_at: number - end_at: number + mode: string; + script: string; + content: string; + line_range: string; } interface fsRequest { - path: string - content: string - is_dir: boolean + path: string; + content: string; + is_dir: boolean; } export function renderHtml() { - let el = document.createElement("div") - el.classList.add("awwan") - el.innerHTML = ` + let el = document.createElement("div"); + el.classList.add("awwan"); + el.innerHTML = `
@@ -81,440 +80,418 @@ export function renderHtml() {
Standard error:
- ` - document.body.appendChild(el) + `; + document.body.appendChild(el); } export class Awwan { - private com_btn_clear!: HTMLButtonElement - private com_btn_local!: HTMLButtonElement - private com_btn_new_dir!: HTMLButtonElement - private com_btn_new_file!: HTMLButtonElement - private com_btn_remote!: HTMLButtonElement - private com_btn_remove!: HTMLButtonElement - private com_btn_save!: HTMLButtonElement - private com_file_path!: HTMLElement - private com_inp_vfs_new!: HTMLInputElement - private com_stdout!: HTMLElement - private com_stderr!: HTMLElement - private current_node: WuiVfsNodeInterface | null = null - private request: RequestInterface = { - mode: "local", - script: "", - content: "", - begin_at: 0, - end_at: 0, - } - private wui_editor: WuiEditor - private wui_notif: WuiNotif - private wui_vfs: WuiVfs - - constructor() { - let el = document.getElementById(ID_BTN_CLEAR_SELECTION) - if (el) { - this.com_btn_clear = el as HTMLButtonElement - this.com_btn_clear.onclick = () => { - this.wui_editor.ClearSelection() - } - } - - el = document.getElementById(ID_BTN_EXEC_LOCAL) - if (el) { - this.com_btn_local = el as HTMLButtonElement - this.com_btn_local.onclick = () => { - this.execLocal() - } - } - el = document.getElementById(ID_BTN_EXEC_REMOTE) - if (el) { - this.com_btn_remote = el as HTMLButtonElement - this.com_btn_remote.onclick = () => { - this.execRemote() - } - } - - el = document.getElementById(ID_BTN_NEW_DIR) - if (el) { - this.com_btn_new_dir = el as HTMLButtonElement - this.com_btn_new_dir.onclick = () => { - this.newNode(true) - } - } - el = document.getElementById(ID_BTN_NEW_FILE) - if (el) { - this.com_btn_new_file = el as HTMLButtonElement - this.com_btn_new_file.onclick = () => { - this.newNode(false) - } - } - el = document.getElementById(ID_BTN_REMOVE) - if (el) { - this.com_btn_remove = el as HTMLButtonElement - this.com_btn_remove.onclick = () => { - this.onClickRemove() - } - } - - el = document.getElementById(ID_BTN_SAVE) - if (el) { - this.com_btn_save = el as HTMLButtonElement - this.com_btn_save.onclick = () => { - this.onClickSave() - } - } - - el = document.getElementById(ID_INP_VFS_NEW) - if (el) { - this.com_inp_vfs_new = el as HTMLInputElement - } - - el = document.getElementById(ID_VFS_PATH) - if (el) { - this.com_file_path = el - } - el = document.getElementById(ID_STDOUT) - if (el) { - this.com_stdout = el - } - el = document.getElementById(ID_STDERR) - if (el) { - this.com_stderr = el - } - - let editor_opts: WuiEditorOptions = { - id: ID_EDITOR, - is_editable: true, - OnSelection: (begin_at: number, end_at: number) => { - this.editorOnSelection(begin_at, end_at) - }, - OnSave: this.editorOnSave, - } - this.wui_editor = new WuiEditor(editor_opts) - - this.wui_notif = new WuiNotif() - - let wui_vfs_opts: WuiVfsOptions = { - id: ID_VFS, - Open: ( - path: string, - is_dir: boolean, - ): Promise => { - return this.Open(path, is_dir) - }, - OpenNode: ( - node: WuiVfsNodeInterface, - ): Promise => { - return this.OpenNode(node) - }, - } - this.wui_vfs = new WuiVfs(wui_vfs_opts) - - window.onhashchange = (ev: Event): any => { - ev.preventDefault() - let hashchange = ev as HashChangeEvent - let url = new URL(hashchange.newURL) - this.onHashChange(url.hash) - } - - // Open path based on hash. - this.onHashChange(window.location.hash) - } - - onHashChange(hash: string) { - if (hash === "") { - hash = "#/" - } - - hash = hash.substring(1) - this.wui_vfs.OpenDir(hash) - } - - // Open fetch the node content from remote server. - async Open( - path: string, - is_dir: boolean, - ): Promise { - let http_res = await fetch("/awwan/api/fs?path=" + path) - let res = await http_res.json() - if (res.code != 200) { - this.wui_notif.Error( - `Failed to open ${path}: ${res.message}`, - ) - return res - } - - let node = res.data as WuiVfsNodeInterface - this.com_inp_vfs_new.value = node.name - - if (is_dir) { - this.current_node = node - window.location.hash = "#" + path - return res - } - - let resAllow = this.isEditAllowed(node) - if (resAllow.code != 200) { - this.wui_notif.Error(resAllow.message) - return resAllow - } - - this.com_file_path.innerText = path - this.request.script = path - - this.wui_editor.Open(node) - this.com_btn_local.disabled = false - this.com_btn_remote.disabled = false - this.com_btn_save.disabled = false - - return res - } - - // OpenNode is an handler that will called when user click on of the - // item in the list. - async OpenNode( - node: WuiVfsNodeInterface, - ): Promise { - let resAllow = this.isEditAllowed(node) - if (resAllow.code != 200) { - this.wui_notif.Error(resAllow.message) - return resAllow - } - - let res = await this.Open(node.path, node.is_dir) - return res - } - - isEditAllowed(node: WuiVfsNodeInterface): WuiResponseInterface { - let res: WuiResponseInterface = { - code: 412, - message: "", - } - - let is_type_allowed = false - if ( - node.content_type && - (node.content_type.indexOf("json") >= 0 || - node.content_type.indexOf("message") >= 0 || - node.content_type.indexOf("script") >= 0 || - node.content_type.indexOf("text") >= 0 || - node.content_type.indexOf("xml") >= 0) - ) { - is_type_allowed = true - } - if (!is_type_allowed) { - res.message = `The file "${node.name}" with content type "${node.content_type}" is not allowed to be opened` - return res - } - if (node.size && node.size > MAX_FILE_SIZE) { - res.message = `The file "${node.name}" with size ${ - node.size / 1000000 - }MB is greater than maximum ${ - MAX_FILE_SIZE / 1000000 - }MB.` - return res - } - res.code = 200 - return res - } - - onClickSave() { - if (this.request.script == "") { - return - } - let content = this.wui_editor.GetContent() - let l = content.length - if (l > 0 && content[l - 1] != "\n") { - content += "\n" - } - this.request.content = content - this.doSaveFile(this.request.script, this.request.content) - } - - editorOnSave(content: string) { - this.doSaveFile(this.request.script, content) - } - - async doSaveFile(path: string, content: string) { - let req = { - path: path, - content: btoa(content), - } - let http_res = await fetch("/awwan/api/fs", { - method: "PUT", - headers: { - Accept: "application/json", - "Content-Type": "application/json", - }, - body: JSON.stringify(req), - }) - let res = await http_res.json() - if (res.code != 200) { - this.wui_notif.Error( - `Failed to save file ${path}: ${res.message}`, - ) - return null - } - - this.wui_notif.Info(`File ${path} has been saved.`) - return res - } - - editorOnSelection(begin: number, end: number) { - let stmts = this.wui_editor.lines.slice(begin, end + 1) - for (const stmt of stmts) { - console.log("stmt:", stmt.x, stmt.text) - } - } - - // execLocal request to execute the selected script on local system. - execLocal() { - if (this.request.script == "") { - this.wui_notif.Error( - `Execute on local: no file selected`, - ) - return - } - this.httpApiExecute("local") - } - - // execRemote request to execute the selected script on remote system. - execRemote() { - if (this.request.script == "") { - this.wui_notif.Error( - `Execute on remote: no file selected`, - ) - return - } - this.httpApiExecute("remote") - } - - async httpApiExecute(mode: string) { - let selection_range = this.wui_editor.GetSelectionRange() - if (selection_range.begin_at < 0) { - this.request.begin_at = 0 - } else { - this.request.begin_at = selection_range.begin_at + 1 - } - if (selection_range.end_at < 0) { - this.request.end_at = 0 - } else { - this.request.end_at = selection_range.end_at + 1 - } - - this.com_stdout.innerText = "" - this.com_stderr.innerText = "" - - this.request.mode = mode - this.request.content = btoa(this.wui_editor.GetContent()) - - let http_res = await fetch("/awwan/api/execute", { - method: "POST", - headers: { - Accept: "application/json", - "Content-Type": "application/json", - }, - body: JSON.stringify(this.request), - }) - - let res = await http_res.json() - if (res.code != 200) { - this.wui_notif.Error(`Execute failed: ${res.message}`) - return - } - - this.com_stdout.innerText = atob(res.data.stdout) - if (res.data.stderr) { - this.com_stderr.innerText = atob(res.data.stderr) - } - - this.wui_notif.Info( - `Successfully execute ${this.request.script} on ${mode}.`, - ) - } - - private async newNode(is_dir: boolean) { - if (!this.current_node) { - this.wui_notif.Error( - "No active directory loaded or selected.", - ) - return - } - - let name = this.com_inp_vfs_new.value - if (name === "") { - this.wui_notif.Error("Empty file name") - return - } - let req: WuiVfsNodeInterface = { - path: this.current_node.path + "/" + name, - name: name, - is_dir: is_dir, - content_type: "", - mod_time: 0, - size: 0, - mode: "", - childs: [], - content: "", - } - - let http_res = await fetch("/awwan/api/fs", { - method: "POST", - headers: { - Accept: "application/json", - "Content-Type": "application/json", - }, - body: JSON.stringify(req), - }) - - let res = await http_res.json() - if (res.code != 200) { - this.wui_notif.Error(`newNode: ${res.message}`) - return - } - - let node = res.data as WuiVfsNodeInterface - if (!this.current_node.childs) { - this.current_node.childs = [] - } - this.current_node.childs.push(node) - this.wui_vfs.Set(this.current_node) - } - - private async onClickRemove() { - console.log("onClickRemove: ", this.current_node) - if (!this.current_node) { - this.wui_notif.Error( - "No file selected.", - ) - return - } - - let name = this.com_inp_vfs_new.value - if (name === "") { - this.wui_notif.Error("Empty file name") - return - } - let req: fsRequest = { - path: this.current_node.path + "/" + name, - is_dir: false, - content: "", - } - - let http_res = await fetch("/awwan/api/fs", { - method: "DELETE", - headers: { - Accept: "application/json", - "Content-Type": "application/json", - }, - body: JSON.stringify(req), - }) - - let res = await http_res.json() - if (res.code != 200) { - this.wui_notif.Error(`remove: ${res.message}`) - return - } - - - } + private com_btn_clear!: HTMLButtonElement; + private com_btn_local!: HTMLButtonElement; + private com_btn_new_dir!: HTMLButtonElement; + private com_btn_new_file!: HTMLButtonElement; + private com_btn_remote!: HTMLButtonElement; + private com_btn_remove!: HTMLButtonElement; + private com_btn_save!: HTMLButtonElement; + private com_file_path!: HTMLElement; + private com_inp_vfs_new!: HTMLInputElement; + private com_stdout!: HTMLElement; + private com_stderr!: HTMLElement; + private current_node: WuiVfsNodeInterface | null = null; + private request: RequestInterface = { + mode: "local", + script: "", + content: "", + line_range: 0, + }; + private wui_editor: WuiEditor; + private wui_notif: WuiNotif; + private wui_vfs: WuiVfs; + + constructor() { + let el = document.getElementById(ID_BTN_CLEAR_SELECTION); + if (el) { + this.com_btn_clear = el as HTMLButtonElement; + this.com_btn_clear.onclick = () => { + this.wui_editor.ClearSelection(); + }; + } + + el = document.getElementById(ID_BTN_EXEC_LOCAL); + if (el) { + this.com_btn_local = el as HTMLButtonElement; + this.com_btn_local.onclick = () => { + this.execLocal(); + }; + } + el = document.getElementById(ID_BTN_EXEC_REMOTE); + if (el) { + this.com_btn_remote = el as HTMLButtonElement; + this.com_btn_remote.onclick = () => { + this.execRemote(); + }; + } + + el = document.getElementById(ID_BTN_NEW_DIR); + if (el) { + this.com_btn_new_dir = el as HTMLButtonElement; + this.com_btn_new_dir.onclick = () => { + this.newNode(true); + }; + } + el = document.getElementById(ID_BTN_NEW_FILE); + if (el) { + this.com_btn_new_file = el as HTMLButtonElement; + this.com_btn_new_file.onclick = () => { + this.newNode(false); + }; + } + el = document.getElementById(ID_BTN_REMOVE); + if (el) { + this.com_btn_remove = el as HTMLButtonElement; + this.com_btn_remove.onclick = () => { + this.onClickRemove(); + }; + } + + el = document.getElementById(ID_BTN_SAVE); + if (el) { + this.com_btn_save = el as HTMLButtonElement; + this.com_btn_save.onclick = () => { + this.onClickSave(); + }; + } + + el = document.getElementById(ID_INP_VFS_NEW); + if (el) { + this.com_inp_vfs_new = el as HTMLInputElement; + } + + el = document.getElementById(ID_VFS_PATH); + if (el) { + this.com_file_path = el; + } + el = document.getElementById(ID_STDOUT); + if (el) { + this.com_stdout = el; + } + el = document.getElementById(ID_STDERR); + if (el) { + this.com_stderr = el; + } + + let editor_opts: WuiEditorOptions = { + id: ID_EDITOR, + is_editable: true, + OnSelection: (begin_at: number, end_at: number) => { + this.editorOnSelection(begin_at, end_at); + }, + OnSave: this.editorOnSave, + }; + this.wui_editor = new WuiEditor(editor_opts); + + this.wui_notif = new WuiNotif(); + + let wui_vfs_opts: WuiVfsOptions = { + id: ID_VFS, + Open: (path: string, is_dir: boolean): Promise => { + return this.Open(path, is_dir); + }, + OpenNode: (node: WuiVfsNodeInterface): Promise => { + return this.OpenNode(node); + }, + }; + this.wui_vfs = new WuiVfs(wui_vfs_opts); + + window.onhashchange = (ev: Event): any => { + ev.preventDefault(); + let hashchange = ev as HashChangeEvent; + let url = new URL(hashchange.newURL); + this.onHashChange(url.hash); + }; + + // Open path based on hash. + this.onHashChange(window.location.hash); + } + + onHashChange(hash: string) { + if (hash === "") { + hash = "#/"; + } + + hash = hash.substring(1); + this.wui_vfs.OpenDir(hash); + } + + // Open fetch the node content from remote server. + async Open(path: string, is_dir: boolean): Promise { + let http_res = await fetch("/awwan/api/fs?path=" + path); + let res = await http_res.json(); + if (res.code != 200) { + this.wui_notif.Error(`Failed to open ${path}: ${res.message}`); + return res; + } + + let node = res.data as WuiVfsNodeInterface; + this.com_inp_vfs_new.value = node.name; + + if (is_dir) { + this.current_node = node; + window.location.hash = "#" + path; + return res; + } + + let resAllow = this.isEditAllowed(node); + if (resAllow.code != 200) { + this.wui_notif.Error(resAllow.message); + return resAllow; + } + + this.com_file_path.innerText = path; + this.request.script = path; + + this.wui_editor.Open(node); + this.com_btn_local.disabled = false; + this.com_btn_remote.disabled = false; + this.com_btn_save.disabled = false; + + return res; + } + + // OpenNode is an handler that will called when user click on of the + // item in the list. + async OpenNode(node: WuiVfsNodeInterface): Promise { + let resAllow = this.isEditAllowed(node); + if (resAllow.code != 200) { + this.wui_notif.Error(resAllow.message); + return resAllow; + } + + let res = await this.Open(node.path, node.is_dir); + return res; + } + + isEditAllowed(node: WuiVfsNodeInterface): WuiResponseInterface { + let res: WuiResponseInterface = { + code: 412, + message: "", + }; + + let is_type_allowed = false; + if ( + node.content_type && + (node.content_type.indexOf("json") >= 0 || + node.content_type.indexOf("message") >= 0 || + node.content_type.indexOf("script") >= 0 || + node.content_type.indexOf("text") >= 0 || + node.content_type.indexOf("xml") >= 0) + ) { + is_type_allowed = true; + } + if (!is_type_allowed) { + res.message = `The file "${node.name}" with content type "${node.content_type}" is not allowed to be opened`; + return res; + } + if (node.size && node.size > MAX_FILE_SIZE) { + res.message = `The file "${node.name}" with size ${ + node.size / 1000000 + }MB is greater than maximum ${MAX_FILE_SIZE / 1000000}MB.`; + return res; + } + res.code = 200; + return res; + } + + onClickSave() { + if (this.request.script == "") { + return; + } + let content = this.wui_editor.GetContent(); + let l = content.length; + if (l > 0 && content[l - 1] != "\n") { + content += "\n"; + } + this.request.content = content; + this.doSaveFile(this.request.script, this.request.content); + } + + editorOnSave(content: string) { + this.doSaveFile(this.request.script, content); + } + + async doSaveFile(path: string, content: string) { + let req = { + path: path, + content: btoa(content), + }; + let http_res = await fetch("/awwan/api/fs", { + method: "PUT", + headers: { + Accept: "application/json", + "Content-Type": "application/json", + }, + body: JSON.stringify(req), + }); + let res = await http_res.json(); + if (res.code != 200) { + this.wui_notif.Error(`Failed to save file ${path}: ${res.message}`); + return null; + } + + this.wui_notif.Info(`File ${path} has been saved.`); + return res; + } + + editorOnSelection(begin: number, end: number) { + let stmts = this.wui_editor.lines.slice(begin, end + 1); + for (const stmt of stmts) { + console.log("stmt:", stmt.x, stmt.text); + } + } + + // execLocal request to execute the selected script on local system. + execLocal() { + if (this.request.script == "") { + this.wui_notif.Error(`Execute on local: no file selected`); + return; + } + this.httpApiExecute("local"); + } + + // execRemote request to execute the selected script on remote system. + execRemote() { + if (this.request.script == "") { + this.wui_notif.Error(`Execute on remote: no file selected`); + return; + } + this.httpApiExecute("remote"); + } + + async httpApiExecute(mode: string) { + let beginAt = 0; + let endAt = 0; + let selection_range = this.wui_editor.GetSelectionRange(); + if (selection_range.begin_at > 0) { + beginAt = selection_range.begin_at + 1; + } + if (selection_range.end_at > 0) { + endAt = selection_range.end_at + 1; + } + + this.com_stdout.innerText = ""; + this.com_stderr.innerText = ""; + + this.request.mode = mode; + this.request.content = btoa(this.wui_editor.GetContent()); + if (beginAt === endAt) { + this.request.line_range = `${beginAt}`; + } else { + this.request.line_range = `${beginAt}-${endAt}`; + } + + let http_res = await fetch("/awwan/api/execute", { + method: "POST", + headers: { + Accept: "application/json", + "Content-Type": "application/json", + }, + body: JSON.stringify(this.request), + }); + + let res = await http_res.json(); + if (res.code != 200) { + this.wui_notif.Error(`Execute failed: ${res.message}`); + return; + } + + if (res.data.stdout) { + this.com_stdout.innerText = atob(res.data.stdout); + } + if (res.data.stderr) { + this.com_stderr.innerText = atob(res.data.stderr); + } + + this.wui_notif.Info( + `Successfully execute ${this.request.script} on ${mode}.`, + ); + } + + private async newNode(is_dir: boolean) { + if (!this.current_node) { + this.wui_notif.Error("No active directory loaded or selected."); + return; + } + + let name = this.com_inp_vfs_new.value; + if (name === "") { + this.wui_notif.Error("Empty file name"); + return; + } + let req: WuiVfsNodeInterface = { + path: this.current_node.path + "/" + name, + name: name, + is_dir: is_dir, + content_type: "", + mod_time: 0, + size: 0, + mode: "", + childs: [], + content: "", + }; + + let http_res = await fetch("/awwan/api/fs", { + method: "POST", + headers: { + Accept: "application/json", + "Content-Type": "application/json", + }, + body: JSON.stringify(req), + }); + + let res = await http_res.json(); + if (res.code != 200) { + this.wui_notif.Error(`newNode: ${res.message}`); + return; + } + + let node = res.data as WuiVfsNodeInterface; + if (!this.current_node.childs) { + this.current_node.childs = []; + } + this.current_node.childs.push(node); + this.wui_vfs.Set(this.current_node); + } + + private async onClickRemove() { + console.log("onClickRemove: ", this.current_node); + if (!this.current_node) { + this.wui_notif.Error("No file selected."); + return; + } + + let name = this.com_inp_vfs_new.value; + if (name === "") { + this.wui_notif.Error("Empty file name"); + return; + } + let req: fsRequest = { + path: this.current_node.path + "/" + name, + is_dir: false, + content: "", + }; + + let http_res = await fetch("/awwan/api/fs", { + method: "DELETE", + headers: { + Accept: "application/json", + "Content-Type": "application/json", + }, + body: JSON.stringify(req), + }); + + let res = await http_res.json(); + if (res.code != 200) { + this.wui_notif.Error(`remove: ${res.message}`); + return; + } + } } diff --git a/_www/main.js b/_www/main.js index 4389b7d..c66bd60 100644 --- a/_www/main.js +++ b/_www/main.js @@ -1,4 +1,4 @@ -var app = (() => { +var awwan = (() => { // _www/wui/editor/editor.js var WUI_EDITOR_CLASS = "wui_editor"; var WUI_EDITOR_CLASS_LINE = "wui_editor_line"; @@ -874,110 +874,7 @@ var app = (() => { }() ); - // _www/awwan.js - var __awaiter2 = function(thisArg, _arguments, P, generator) { - function adopt(value) { - return value instanceof P ? value : new P(function(resolve) { - resolve(value); - }); - } - return new (P || (P = Promise))(function(resolve, reject) { - function fulfilled(value) { - try { - step(generator.next(value)); - } catch (e) { - reject(e); - } - } - function rejected(value) { - try { - step(generator["throw"](value)); - } catch (e) { - reject(e); - } - } - function step(result) { - result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); - } - step((generator = generator.apply(thisArg, _arguments || [])).next()); - }); - }; - var __generator2 = function(thisArg, body) { - var _ = { label: 0, sent: function() { - if (t[0] & 1) - throw t[1]; - return t[1]; - }, trys: [], ops: [] }, f, y, t, g; - return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { - return this; - }), g; - function verb(n) { - return function(v) { - return step([n, v]); - }; - } - function step(op) { - if (f) - throw new TypeError("Generator is already executing."); - while (_) - try { - if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) - return t; - if (y = 0, t) - op = [op[0] & 2, t.value]; - switch (op[0]) { - case 0: - case 1: - t = op; - break; - case 4: - _.label++; - return { value: op[1], done: false }; - case 5: - _.label++; - y = op[1]; - op = [0]; - continue; - case 7: - op = _.ops.pop(); - _.trys.pop(); - continue; - default: - if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { - _ = 0; - continue; - } - if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) { - _.label = op[1]; - break; - } - if (op[0] === 6 && _.label < t[1]) { - _.label = t[1]; - t = op; - break; - } - if (t && _.label < t[2]) { - _.label = t[2]; - _.ops.push(op); - break; - } - if (t[2]) - _.ops.pop(); - _.trys.pop(); - continue; - } - op = body.call(thisArg, _); - } catch (e) { - op = [6, e]; - y = 0; - } finally { - f = t = 0; - } - if (op[0] & 5) - throw op[1]; - return { value: op[0] ? op[1] : void 0, done: true }; - } - }; + // _www/awwan.ts var CLASS_EDITOR_ACTION = "editor_action"; var ID_BTN_CLEAR_SELECTION = "com_btn_clear_selection"; var ID_BTN_EXEC_LOCAL = "com_btn_local"; @@ -994,449 +891,407 @@ var app = (() => { var ID_STDERR = "stderr"; var MAX_FILE_SIZE = 3e6; function renderHtml() { - var el = document.createElement("div"); + let el = document.createElement("div"); el.classList.add("awwan"); - el.innerHTML = '\n
\n
\n\n
\n
\n \n
\n \n \n \n
\n
\n
\n File: -\n \n
\n
\n
\n
\n \n
\n
\n Execute script on\n \n or\n \n
\n
\n

Hints:

\n
    \n
  • \n Click and drag on the line numbers to select the specific line to be\n executed.\n
  • \n
  • Press ESC to clear selection.
  • \n
\n
Standard output:
\n
\n
Standard error:
\n
\n
\n '; + el.innerHTML = ` +
+
+ +
+
+ +
+ + + +
+
+
+ File: - + +
+
+
+
+ +
+
+ Execute script on + + or + +
+
+

Hints:

+
    +
  • + Click and drag on the line numbers to select the specific line to be + executed. +
  • +
  • Press ESC to clear selection.
  • +
+
Standard output:
+
+
Standard error:
+
+
+ `; document.body.appendChild(el); } - var Awwan = ( - /** @class */ - function() { - function Awwan2() { - var _this = this; - this.current_node = null; - this.request = { - mode: "local", - script: "", - content: "", - begin_at: 0, - end_at: 0 + var Awwan = class { + com_btn_clear; + com_btn_local; + com_btn_new_dir; + com_btn_new_file; + com_btn_remote; + com_btn_remove; + com_btn_save; + com_file_path; + com_inp_vfs_new; + com_stdout; + com_stderr; + current_node = null; + request = { + mode: "local", + script: "", + content: "", + line_range: 0 + }; + wui_editor; + wui_notif; + wui_vfs; + constructor() { + let el = document.getElementById(ID_BTN_CLEAR_SELECTION); + if (el) { + this.com_btn_clear = el; + this.com_btn_clear.onclick = () => { + this.wui_editor.ClearSelection(); }; - var el = document.getElementById(ID_BTN_CLEAR_SELECTION); - if (el) { - this.com_btn_clear = el; - this.com_btn_clear.onclick = function() { - _this.wui_editor.ClearSelection(); - }; - } - el = document.getElementById(ID_BTN_EXEC_LOCAL); - if (el) { - this.com_btn_local = el; - this.com_btn_local.onclick = function() { - _this.execLocal(); - }; - } - el = document.getElementById(ID_BTN_EXEC_REMOTE); - if (el) { - this.com_btn_remote = el; - this.com_btn_remote.onclick = function() { - _this.execRemote(); - }; - } - el = document.getElementById(ID_BTN_NEW_DIR); - if (el) { - this.com_btn_new_dir = el; - this.com_btn_new_dir.onclick = function() { - _this.newNode(true); - }; - } - el = document.getElementById(ID_BTN_NEW_FILE); - if (el) { - this.com_btn_new_file = el; - this.com_btn_new_file.onclick = function() { - _this.newNode(false); - }; - } - el = document.getElementById(ID_BTN_REMOVE); - if (el) { - this.com_btn_remove = el; - this.com_btn_remove.onclick = function() { - _this.onClickRemove(); - }; - } - el = document.getElementById(ID_BTN_SAVE); - if (el) { - this.com_btn_save = el; - this.com_btn_save.onclick = function() { - _this.onClickSave(); - }; - } - el = document.getElementById(ID_INP_VFS_NEW); - if (el) { - this.com_inp_vfs_new = el; - } - el = document.getElementById(ID_VFS_PATH); - if (el) { - this.com_file_path = el; - } - el = document.getElementById(ID_STDOUT); - if (el) { - this.com_stdout = el; - } - el = document.getElementById(ID_STDERR); - if (el) { - this.com_stderr = el; - } - var editor_opts = { - id: ID_EDITOR, - is_editable: true, - OnSelection: function(begin_at, end_at) { - _this.editorOnSelection(begin_at, end_at); - }, - OnSave: this.editorOnSave + } + el = document.getElementById(ID_BTN_EXEC_LOCAL); + if (el) { + this.com_btn_local = el; + this.com_btn_local.onclick = () => { + this.execLocal(); }; - this.wui_editor = new WuiEditor(editor_opts); - this.wui_notif = new WuiNotif(); - var wui_vfs_opts = { - id: ID_VFS, - Open: function(path, is_dir) { - return _this.Open(path, is_dir); - }, - OpenNode: function(node) { - return _this.OpenNode(node); - } + } + el = document.getElementById(ID_BTN_EXEC_REMOTE); + if (el) { + this.com_btn_remote = el; + this.com_btn_remote.onclick = () => { + this.execRemote(); }; - this.wui_vfs = new WuiVfs(wui_vfs_opts); - window.onhashchange = function(ev) { - ev.preventDefault(); - var hashchange = ev; - var url = new URL(hashchange.newURL); - _this.onHashChange(url.hash); + } + el = document.getElementById(ID_BTN_NEW_DIR); + if (el) { + this.com_btn_new_dir = el; + this.com_btn_new_dir.onclick = () => { + this.newNode(true); }; - this.onHashChange(window.location.hash); } - Awwan2.prototype.onHashChange = function(hash) { - if (hash === "") { - hash = "#/"; - } - hash = hash.substring(1); - this.wui_vfs.OpenDir(hash); - }; - Awwan2.prototype.Open = function(path, is_dir) { - return __awaiter2(this, void 0, void 0, function() { - var http_res, res, node, resAllow; - return __generator2(this, function(_a) { - switch (_a.label) { - case 0: - return [4, fetch("/awwan/api/fs?path=" + path)]; - case 1: - http_res = _a.sent(); - return [4, http_res.json()]; - case 2: - res = _a.sent(); - if (res.code != 200) { - this.wui_notif.Error("Failed to open " + path + ": " + res.message); - return [2, res]; - } - node = res.data; - this.com_inp_vfs_new.value = node.name; - if (is_dir) { - this.current_node = node; - window.location.hash = "#" + path; - return [2, res]; - } - resAllow = this.isEditAllowed(node); - if (resAllow.code != 200) { - this.wui_notif.Error(resAllow.message); - return [2, resAllow]; - } - this.com_file_path.innerText = path; - this.request.script = path; - this.wui_editor.Open(node); - this.com_btn_local.disabled = false; - this.com_btn_remote.disabled = false; - this.com_btn_save.disabled = false; - return [2, res]; - } - }); - }); - }; - Awwan2.prototype.OpenNode = function(node) { - return __awaiter2(this, void 0, void 0, function() { - var resAllow, res; - return __generator2(this, function(_a) { - switch (_a.label) { - case 0: - resAllow = this.isEditAllowed(node); - if (resAllow.code != 200) { - this.wui_notif.Error(resAllow.message); - return [2, resAllow]; - } - return [4, this.Open(node.path, node.is_dir)]; - case 1: - res = _a.sent(); - return [2, res]; - } - }); - }); - }; - Awwan2.prototype.isEditAllowed = function(node) { - var res = { - code: 412, - message: "" + el = document.getElementById(ID_BTN_NEW_FILE); + if (el) { + this.com_btn_new_file = el; + this.com_btn_new_file.onclick = () => { + this.newNode(false); }; - var is_type_allowed = false; - if (node.content_type && (node.content_type.indexOf("json") >= 0 || node.content_type.indexOf("message") >= 0 || node.content_type.indexOf("script") >= 0 || node.content_type.indexOf("text") >= 0 || node.content_type.indexOf("xml") >= 0)) { - is_type_allowed = true; - } - if (!is_type_allowed) { - res.message = 'The file "' + node.name + '" with content type "' + node.content_type + '" is not allowed to be opened'; - return res; - } - if (node.size && node.size > MAX_FILE_SIZE) { - res.message = 'The file "' + node.name + '" with size ' + node.size / 1e6 + "MB is greater than maximum " + MAX_FILE_SIZE / 1e6 + "MB."; - return res; - } - res.code = 200; - return res; - }; - Awwan2.prototype.onClickSave = function() { - if (this.request.script == "") { - return; - } - var content = this.wui_editor.GetContent(); - var l = content.length; - if (l > 0 && content[l - 1] != "\n") { - content += "\n"; - } - this.request.content = content; - this.doSaveFile(this.request.script, this.request.content); - }; - Awwan2.prototype.editorOnSave = function(content) { - this.doSaveFile(this.request.script, content); - }; - Awwan2.prototype.doSaveFile = function(path, content) { - return __awaiter2(this, void 0, void 0, function() { - var req, http_res, res; - return __generator2(this, function(_a) { - switch (_a.label) { - case 0: - req = { - path, - content: btoa(content) - }; - return [4, fetch("/awwan/api/fs", { - method: "PUT", - headers: { - Accept: "application/json", - "Content-Type": "application/json" - }, - body: JSON.stringify(req) - })]; - case 1: - http_res = _a.sent(); - return [4, http_res.json()]; - case 2: - res = _a.sent(); - if (res.code != 200) { - this.wui_notif.Error("Failed to save file " + path + ": " + res.message); - return [2, null]; - } - this.wui_notif.Info("File " + path + " has been saved."); - return [2, res]; - } - }); - }); + } + el = document.getElementById(ID_BTN_REMOVE); + if (el) { + this.com_btn_remove = el; + this.com_btn_remove.onclick = () => { + this.onClickRemove(); + }; + } + el = document.getElementById(ID_BTN_SAVE); + if (el) { + this.com_btn_save = el; + this.com_btn_save.onclick = () => { + this.onClickSave(); + }; + } + el = document.getElementById(ID_INP_VFS_NEW); + if (el) { + this.com_inp_vfs_new = el; + } + el = document.getElementById(ID_VFS_PATH); + if (el) { + this.com_file_path = el; + } + el = document.getElementById(ID_STDOUT); + if (el) { + this.com_stdout = el; + } + el = document.getElementById(ID_STDERR); + if (el) { + this.com_stderr = el; + } + let editor_opts = { + id: ID_EDITOR, + is_editable: true, + OnSelection: (begin_at, end_at) => { + this.editorOnSelection(begin_at, end_at); + }, + OnSave: this.editorOnSave }; - Awwan2.prototype.editorOnSelection = function(begin, end) { - var stmts = this.wui_editor.lines.slice(begin, end + 1); - for (var _i = 0, stmts_1 = stmts; _i < stmts_1.length; _i++) { - var stmt = stmts_1[_i]; - console.log("stmt:", stmt.x, stmt.text); + this.wui_editor = new WuiEditor(editor_opts); + this.wui_notif = new WuiNotif(); + let wui_vfs_opts = { + id: ID_VFS, + Open: (path, is_dir) => { + return this.Open(path, is_dir); + }, + OpenNode: (node) => { + return this.OpenNode(node); } }; - Awwan2.prototype.execLocal = function() { - if (this.request.script == "") { - this.wui_notif.Error("Execute on local: no file selected"); - return; - } - this.httpApiExecute("local"); + this.wui_vfs = new WuiVfs(wui_vfs_opts); + window.onhashchange = (ev) => { + ev.preventDefault(); + let hashchange = ev; + let url = new URL(hashchange.newURL); + this.onHashChange(url.hash); }; - Awwan2.prototype.execRemote = function() { - if (this.request.script == "") { - this.wui_notif.Error("Execute on remote: no file selected"); - return; - } - this.httpApiExecute("remote"); + this.onHashChange(window.location.hash); + } + onHashChange(hash) { + if (hash === "") { + hash = "#/"; + } + hash = hash.substring(1); + this.wui_vfs.OpenDir(hash); + } + // Open fetch the node content from remote server. + async Open(path, is_dir) { + let http_res = await fetch("/awwan/api/fs?path=" + path); + let res = await http_res.json(); + if (res.code != 200) { + this.wui_notif.Error(`Failed to open ${path}: ${res.message}`); + return res; + } + let node = res.data; + this.com_inp_vfs_new.value = node.name; + if (is_dir) { + this.current_node = node; + window.location.hash = "#" + path; + return res; + } + let resAllow = this.isEditAllowed(node); + if (resAllow.code != 200) { + this.wui_notif.Error(resAllow.message); + return resAllow; + } + this.com_file_path.innerText = path; + this.request.script = path; + this.wui_editor.Open(node); + this.com_btn_local.disabled = false; + this.com_btn_remote.disabled = false; + this.com_btn_save.disabled = false; + return res; + } + // OpenNode is an handler that will called when user click on of the + // item in the list. + async OpenNode(node) { + let resAllow = this.isEditAllowed(node); + if (resAllow.code != 200) { + this.wui_notif.Error(resAllow.message); + return resAllow; + } + let res = await this.Open(node.path, node.is_dir); + return res; + } + isEditAllowed(node) { + let res = { + code: 412, + message: "" }; - Awwan2.prototype.httpApiExecute = function(mode) { - return __awaiter2(this, void 0, void 0, function() { - var selection_range, http_res, res; - return __generator2(this, function(_a) { - switch (_a.label) { - case 0: - selection_range = this.wui_editor.GetSelectionRange(); - if (selection_range.begin_at < 0) { - this.request.begin_at = 0; - } else { - this.request.begin_at = selection_range.begin_at + 1; - } - if (selection_range.end_at < 0) { - this.request.end_at = 0; - } else { - this.request.end_at = selection_range.end_at + 1; - } - this.com_stdout.innerText = ""; - this.com_stderr.innerText = ""; - this.request.mode = mode; - this.request.content = btoa(this.wui_editor.GetContent()); - return [4, fetch("/awwan/api/execute", { - method: "POST", - headers: { - Accept: "application/json", - "Content-Type": "application/json" - }, - body: JSON.stringify(this.request) - })]; - case 1: - http_res = _a.sent(); - return [4, http_res.json()]; - case 2: - res = _a.sent(); - if (res.code != 200) { - this.wui_notif.Error("Execute failed: " + res.message); - return [ - 2 - /*return*/ - ]; - } - this.com_stdout.innerText = atob(res.data.stdout); - if (res.data.stderr) { - this.com_stderr.innerText = atob(res.data.stderr); - } - this.wui_notif.Info("Successfully execute " + this.request.script + " on " + mode + "."); - return [ - 2 - /*return*/ - ]; - } - }); - }); + let is_type_allowed = false; + if (node.content_type && (node.content_type.indexOf("json") >= 0 || node.content_type.indexOf("message") >= 0 || node.content_type.indexOf("script") >= 0 || node.content_type.indexOf("text") >= 0 || node.content_type.indexOf("xml") >= 0)) { + is_type_allowed = true; + } + if (!is_type_allowed) { + res.message = `The file "${node.name}" with content type "${node.content_type}" is not allowed to be opened`; + return res; + } + if (node.size && node.size > MAX_FILE_SIZE) { + res.message = `The file "${node.name}" with size ${node.size / 1e6}MB is greater than maximum ${MAX_FILE_SIZE / 1e6}MB.`; + return res; + } + res.code = 200; + return res; + } + onClickSave() { + if (this.request.script == "") { + return; + } + let content = this.wui_editor.GetContent(); + let l = content.length; + if (l > 0 && content[l - 1] != "\n") { + content += "\n"; + } + this.request.content = content; + this.doSaveFile(this.request.script, this.request.content); + } + editorOnSave(content) { + this.doSaveFile(this.request.script, content); + } + async doSaveFile(path, content) { + let req = { + path, + content: btoa(content) }; - Awwan2.prototype.newNode = function(is_dir) { - return __awaiter2(this, void 0, void 0, function() { - var name, req, http_res, res, node; - return __generator2(this, function(_a) { - switch (_a.label) { - case 0: - if (!this.current_node) { - this.wui_notif.Error("No active directory loaded or selected."); - return [ - 2 - /*return*/ - ]; - } - name = this.com_inp_vfs_new.value; - if (name === "") { - this.wui_notif.Error("Empty file name"); - return [ - 2 - /*return*/ - ]; - } - req = { - path: this.current_node.path + "/" + name, - name, - is_dir, - content_type: "", - mod_time: 0, - size: 0, - mode: "", - childs: [], - content: "" - }; - return [4, fetch("/awwan/api/fs", { - method: "POST", - headers: { - Accept: "application/json", - "Content-Type": "application/json" - }, - body: JSON.stringify(req) - })]; - case 1: - http_res = _a.sent(); - return [4, http_res.json()]; - case 2: - res = _a.sent(); - if (res.code != 200) { - this.wui_notif.Error("newNode: " + res.message); - return [ - 2 - /*return*/ - ]; - } - node = res.data; - if (!this.current_node.childs) { - this.current_node.childs = []; - } - this.current_node.childs.push(node); - this.wui_vfs.Set(this.current_node); - return [ - 2 - /*return*/ - ]; - } - }); - }); + let http_res = await fetch("/awwan/api/fs", { + method: "PUT", + headers: { + Accept: "application/json", + "Content-Type": "application/json" + }, + body: JSON.stringify(req) + }); + let res = await http_res.json(); + if (res.code != 200) { + this.wui_notif.Error(`Failed to save file ${path}: ${res.message}`); + return null; + } + this.wui_notif.Info(`File ${path} has been saved.`); + return res; + } + editorOnSelection(begin, end) { + let stmts = this.wui_editor.lines.slice(begin, end + 1); + for (const stmt of stmts) { + console.log("stmt:", stmt.x, stmt.text); + } + } + // execLocal request to execute the selected script on local system. + execLocal() { + if (this.request.script == "") { + this.wui_notif.Error(`Execute on local: no file selected`); + return; + } + this.httpApiExecute("local"); + } + // execRemote request to execute the selected script on remote system. + execRemote() { + if (this.request.script == "") { + this.wui_notif.Error(`Execute on remote: no file selected`); + return; + } + this.httpApiExecute("remote"); + } + async httpApiExecute(mode) { + let beginAt = 0; + let endAt = 0; + let selection_range = this.wui_editor.GetSelectionRange(); + if (selection_range.begin_at > 0) { + beginAt = selection_range.begin_at + 1; + } + if (selection_range.end_at > 0) { + endAt = selection_range.end_at + 1; + } + this.com_stdout.innerText = ""; + this.com_stderr.innerText = ""; + this.request.mode = mode; + this.request.content = btoa(this.wui_editor.GetContent()); + if (beginAt === endAt) { + this.request.line_range = `${beginAt}`; + } else { + this.request.line_range = `${beginAt}-${endAt}`; + } + let http_res = await fetch("/awwan/api/execute", { + method: "POST", + headers: { + Accept: "application/json", + "Content-Type": "application/json" + }, + body: JSON.stringify(this.request) + }); + let res = await http_res.json(); + if (res.code != 200) { + this.wui_notif.Error(`Execute failed: ${res.message}`); + return; + } + if (res.data.stdout) { + this.com_stdout.innerText = atob(res.data.stdout); + } + if (res.data.stderr) { + this.com_stderr.innerText = atob(res.data.stderr); + } + this.wui_notif.Info( + `Successfully execute ${this.request.script} on ${mode}.` + ); + } + async newNode(is_dir) { + if (!this.current_node) { + this.wui_notif.Error("No active directory loaded or selected."); + return; + } + let name = this.com_inp_vfs_new.value; + if (name === "") { + this.wui_notif.Error("Empty file name"); + return; + } + let req = { + path: this.current_node.path + "/" + name, + name, + is_dir, + content_type: "", + mod_time: 0, + size: 0, + mode: "", + childs: [], + content: "" }; - Awwan2.prototype.onClickRemove = function() { - return __awaiter2(this, void 0, void 0, function() { - var name, req, http_res, res; - return __generator2(this, function(_a) { - switch (_a.label) { - case 0: - console.log("onClickRemove: ", this.current_node); - if (!this.current_node) { - this.wui_notif.Error("No file selected."); - return [ - 2 - /*return*/ - ]; - } - name = this.com_inp_vfs_new.value; - if (name === "") { - this.wui_notif.Error("Empty file name"); - return [ - 2 - /*return*/ - ]; - } - req = { - path: this.current_node.path + "/" + name, - is_dir: false, - content: "" - }; - return [4, fetch("/awwan/api/fs", { - method: "DELETE", - headers: { - Accept: "application/json", - "Content-Type": "application/json" - }, - body: JSON.stringify(req) - })]; - case 1: - http_res = _a.sent(); - return [4, http_res.json()]; - case 2: - res = _a.sent(); - if (res.code != 200) { - this.wui_notif.Error("remove: " + res.message); - return [ - 2 - /*return*/ - ]; - } - return [ - 2 - /*return*/ - ]; - } - }); - }); + let http_res = await fetch("/awwan/api/fs", { + method: "POST", + headers: { + Accept: "application/json", + "Content-Type": "application/json" + }, + body: JSON.stringify(req) + }); + let res = await http_res.json(); + if (res.code != 200) { + this.wui_notif.Error(`newNode: ${res.message}`); + return; + } + let node = res.data; + if (!this.current_node.childs) { + this.current_node.childs = []; + } + this.current_node.childs.push(node); + this.wui_vfs.Set(this.current_node); + } + async onClickRemove() { + console.log("onClickRemove: ", this.current_node); + if (!this.current_node) { + this.wui_notif.Error("No file selected."); + return; + } + let name = this.com_inp_vfs_new.value; + if (name === "") { + this.wui_notif.Error("Empty file name"); + return; + } + let req = { + path: this.current_node.path + "/" + name, + is_dir: false, + content: "" }; - return Awwan2; - }() - ); + let http_res = await fetch("/awwan/api/fs", { + method: "DELETE", + headers: { + Accept: "application/json", + "Content-Type": "application/json" + }, + body: JSON.stringify(req) + }); + let res = await http_res.json(); + if (res.code != 200) { + this.wui_notif.Error(`remove: ${res.message}`); + return; + } + } + }; // _www/main.ts renderHtml(); diff --git a/_www/main.ts b/_www/main.ts index 1bdd599..8bc80b2 100644 --- a/_www/main.ts +++ b/_www/main.ts @@ -1,7 +1,7 @@ // SPDX-FileCopyrightText: 2021 M. Shulhan // SPDX-License-Identifier: GPL-3.0-or-later -import { renderHtml, Awwan } from "./awwan.js" +import { renderHtml, Awwan } from "./awwan.ts"; -renderHtml() -let awwan = new Awwan() +renderHtml(); +let awwan = new Awwan(); diff --git a/internal/memfs_www.go b/internal/memfs_www.go index 7b680db..6f892dc 100644 --- a/internal/memfs_www.go +++ b/internal/memfs_www.go @@ -83,7 +83,7 @@ func generate__www_doc_README_html() *memfs.Node { Content: []byte("\x3C\x21\x44\x4F\x43\x54\x59\x50\x45\x20\x68\x74\x6D\x6C\x3E\x0A\x3C\x68\x74\x6D\x6C\x3E\x0A\x09\x3C\x68\x65\x61\x64\x3E\x0A\x09\x09\x3C\x6D\x65\x74\x61\x20\x68\x74\x74\x70\x2D\x65\x71\x75\x69\x76\x3D\x22\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x54\x79\x70\x65\x22\x20\x63\x6F\x6E\x74\x65\x6E\x74\x3D\x22\x74\x65\x78\x74\x2F\x68\x74\x6D\x6C\x3B\x20\x63\x68\x61\x72\x73\x65\x74\x3D\x75\x74\x66\x2D\x38\x22\x3E\x0A\x09\x09\x3C\x6D\x65\x74\x61\x20\x6E\x61\x6D\x65\x3D\x22\x76\x69\x65\x77\x70\x6F\x72\x74\x22\x20\x63\x6F\x6E\x74\x65\x6E\x74\x3D\x22\x77\x69\x64\x74\x68\x3D\x64\x65\x76\x69\x63\x65\x2D\x77\x69\x64\x74\x68\x2C\x20\x69\x6E\x69\x74\x69\x61\x6C\x2D\x73\x63\x61\x6C\x65\x3D\x31\x22\x3E\x0A\x09\x09\x3C\x6D\x65\x74\x61\x20\x6E\x61\x6D\x65\x3D\x22\x74\x68\x65\x6D\x65\x2D\x63\x6F\x6C\x6F\x72\x22\x20\x63\x6F\x6E\x74\x65\x6E\x74\x3D\x22\x23\x33\x37\x35\x45\x41\x42\x22\x3E\x0A\x09\x09\x3C\x74\x69\x74\x6C\x65\x3E\x3C\x2F\x74\x69\x74\x6C\x65\x3E\x0A\x09\x09\x3C\x73\x74\x79\x6C\x65\x3E\x0A\x09\x09\x0A\x62\x6F\x64\x79\x20\x7B\x0A\x09\x6D\x61\x72\x67\x69\x6E\x3A\x20\x30\x3B\x0A\x09\x66\x6F\x6E\x74\x2D\x66\x61\x6D\x69\x6C\x79\x3A\x20\x41\x72\x69\x61\x6C\x2C\x20\x73\x61\x6E\x73\x2D\x73\x65\x72\x69\x66\x3B\x0A\x09\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x2D\x63\x6F\x6C\x6F\x72\x3A\x20\x23\x66\x66\x66\x3B\x0A\x09\x6C\x69\x6E\x65\x2D\x68\x65\x69\x67\x68\x74\x3A\x20\x31\x2E\x33\x3B\x0A\x09\x74\x65\x78\x74\x2D\x61\x6C\x69\x67\x6E\x3A\x20\x63\x65\x6E\x74\x65\x72\x3B\x0A\x09\x63\x6F\x6C\x6F\x72\x3A\x20\x23\x32\x32\x32\x3B\x0A\x7D\x0A\x70\x72\x65\x2C\x0A\x63\x6F\x64\x65\x20\x7B\x0A\x09\x66\x6F\x6E\x74\x2D\x66\x61\x6D\x69\x6C\x79\x3A\x20\x4D\x65\x6E\x6C\x6F\x2C\x20\x6D\x6F\x6E\x6F\x73\x70\x61\x63\x65\x3B\x0A\x09\x66\x6F\x6E\x74\x2D\x73\x69\x7A\x65\x3A\x20\x30\x2E\x38\x37\x35\x72\x65\x6D\x3B\x0A\x7D\x0A\x70\x72\x65\x20\x7B\x0A\x09\x6C\x69\x6E\x65\x2D\x68\x65\x69\x67\x68\x74\x3A\x20\x31\x2E\x34\x3B\x0A\x09\x6F\x76\x65\x72\x66\x6C\x6F\x77\x2D\x78\x3A\x20\x61\x75\x74\x6F\x3B\x0A\x09\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x3A\x20\x23\x65\x66\x65\x66\x65\x66\x3B\x0A\x09\x70\x61\x64\x64\x69\x6E\x67\x3A\x20\x30\x2E\x36\x32\x35\x72\x65\x6D\x3B\x0A\x09\x62\x6F\x72\x64\x65\x72\x2D\x72\x61\x64\x69\x75\x73\x3A\x20\x30\x2E\x33\x31\x32\x35\x72\x65\x6D\x3B\x0A\x7D\x0A\x61\x20\x7B\x0A\x09\x63\x6F\x6C\x6F\x72\x3A\x20\x23\x30\x30\x37\x64\x39\x63\x3B\x0A\x09\x74\x65\x78\x74\x2D\x64\x65\x63\x6F\x72\x61\x74\x69\x6F\x6E\x3A\x20\x6E\x6F\x6E\x65\x3B\x0A\x7D\x0A\x61\x3A\x68\x6F\x76\x65\x72\x20\x7B\x0A\x09\x74\x65\x78\x74\x2D\x64\x65\x63\x6F\x72\x61\x74\x69\x6F\x6E\x3A\x20\x75\x6E\x64\x65\x72\x6C\x69\x6E\x65\x3B\x0A\x7D\x0A\x0A\x70\x2C\x0A\x6C\x69\x20\x7B\x0A\x09\x6D\x61\x78\x2D\x77\x69\x64\x74\x68\x3A\x20\x35\x30\x72\x65\x6D\x3B\x0A\x09\x77\x6F\x72\x64\x2D\x77\x72\x61\x70\x3A\x20\x62\x72\x65\x61\x6B\x2D\x77\x6F\x72\x64\x3B\x0A\x7D\x0A\x6C\x69\x20\x70\x20\x7B\x0A\x09\x6D\x61\x72\x67\x69\x6E\x3A\x20\x32\x70\x78\x3B\x0A\x7D\x0A\x70\x2C\x0A\x70\x72\x65\x2C\x0A\x75\x6C\x2C\x0A\x6F\x6C\x20\x7B\x0A\x09\x6D\x61\x72\x67\x69\x6E\x3A\x20\x31\x2E\x32\x35\x72\x65\x6D\x3B\x0A\x7D\x0A\x0A\x68\x31\x2C\x0A\x68\x32\x2C\x0A\x68\x33\x2C\x0A\x68\x34\x20\x7B\x0A\x09\x6D\x61\x72\x67\x69\x6E\x3A\x20\x31\x2E\x32\x35\x72\x65\x6D\x20\x30\x20\x31\x2E\x32\x35\x72\x65\x6D\x3B\x0A\x09\x70\x61\x64\x64\x69\x6E\x67\x3A\x20\x30\x3B\x0A\x09\x63\x6F\x6C\x6F\x72\x3A\x20\x23\x30\x30\x37\x64\x39\x63\x3B\x0A\x09\x66\x6F\x6E\x74\x2D\x77\x65\x69\x67\x68\x74\x3A\x20\x62\x6F\x6C\x64\x3B\x0A\x7D\x0A\x68\x31\x20\x7B\x0A\x09\x66\x6F\x6E\x74\x2D\x73\x69\x7A\x65\x3A\x20\x31\x2E\x37\x35\x72\x65\x6D\x3B\x0A\x09\x6C\x69\x6E\x65\x2D\x68\x65\x69\x67\x68\x74\x3A\x20\x31\x3B\x0A\x7D\x0A\x68\x31\x20\x2E\x74\x65\x78\x74\x2D\x6D\x75\x74\x65\x64\x20\x7B\x0A\x09\x63\x6F\x6C\x6F\x72\x3A\x20\x23\x37\x37\x37\x3B\x0A\x7D\x0A\x68\x32\x20\x7B\x0A\x09\x63\x6C\x65\x61\x72\x3A\x20\x72\x69\x67\x68\x74\x3B\x0A\x09\x66\x6F\x6E\x74\x2D\x73\x69\x7A\x65\x3A\x20\x31\x2E\x32\x35\x72\x65\x6D\x3B\x0A\x09\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x3A\x20\x23\x65\x30\x65\x62\x66\x35\x3B\x0A\x09\x70\x61\x64\x64\x69\x6E\x67\x3A\x20\x30\x2E\x35\x72\x65\x6D\x3B\x0A\x09\x6C\x69\x6E\x65\x2D\x68\x65\x69\x67\x68\x74\x3A\x20\x31\x2E\x32\x35\x3B\x0A\x09\x66\x6F\x6E\x74\x2D\x77\x65\x69\x67\x68\x74\x3A\x20\x6E\x6F\x72\x6D\x61\x6C\x3B\x0A\x09\x6F\x76\x65\x72\x66\x6C\x6F\x77\x3A\x20\x61\x75\x74\x6F\x3B\x0A\x09\x6F\x76\x65\x72\x66\x6C\x6F\x77\x2D\x77\x72\x61\x70\x3A\x20\x62\x72\x65\x61\x6B\x2D\x77\x6F\x72\x64\x3B\x0A\x7D\x0A\x68\x32\x20\x61\x20\x7B\x0A\x09\x66\x6F\x6E\x74\x2D\x77\x65\x69\x67\x68\x74\x3A\x20\x62\x6F\x6C\x64\x3B\x0A\x7D\x0A\x68\x33\x20\x7B\x0A\x09\x66\x6F\x6E\x74\x2D\x73\x69\x7A\x65\x3A\x20\x31\x2E\x32\x35\x72\x65\x6D\x3B\x0A\x09\x6C\x69\x6E\x65\x2D\x68\x65\x69\x67\x68\x74\x3A\x20\x31\x2E\x32\x35\x3B\x0A\x09\x6F\x76\x65\x72\x66\x6C\x6F\x77\x3A\x20\x61\x75\x74\x6F\x3B\x0A\x09\x6F\x76\x65\x72\x66\x6C\x6F\x77\x2D\x77\x72\x61\x70\x3A\x20\x62\x72\x65\x61\x6B\x2D\x77\x6F\x72\x64\x3B\x0A\x7D\x0A\x68\x33\x2C\x0A\x68\x34\x20\x7B\x0A\x09\x6D\x61\x72\x67\x69\x6E\x3A\x20\x31\x2E\x32\x35\x72\x65\x6D\x20\x30\x2E\x33\x31\x32\x35\x72\x65\x6D\x3B\x0A\x7D\x0A\x68\x34\x20\x7B\x0A\x09\x66\x6F\x6E\x74\x2D\x73\x69\x7A\x65\x3A\x20\x31\x72\x65\x6D\x3B\x0A\x7D\x0A\x0A\x68\x32\x20\x3E\x20\x73\x70\x61\x6E\x2C\x0A\x68\x33\x20\x3E\x20\x73\x70\x61\x6E\x20\x7B\x0A\x09\x66\x6C\x6F\x61\x74\x3A\x20\x72\x69\x67\x68\x74\x3B\x0A\x09\x6D\x61\x72\x67\x69\x6E\x3A\x20\x30\x20\x32\x35\x70\x78\x20\x30\x20\x30\x3B\x0A\x09\x66\x6F\x6E\x74\x2D\x77\x65\x69\x67\x68\x74\x3A\x20\x6E\x6F\x72\x6D\x61\x6C\x3B\x0A\x09\x63\x6F\x6C\x6F\x72\x3A\x20\x23\x35\x32\x37\x39\x63\x37\x3B\x0A\x7D\x0A\x0A\x64\x6C\x20\x7B\x0A\x09\x6D\x61\x72\x67\x69\x6E\x3A\x20\x31\x2E\x32\x35\x72\x65\x6D\x3B\x0A\x7D\x0A\x64\x74\x20\x7B\x0A\x09\x66\x6F\x6E\x74\x2D\x77\x65\x69\x67\x68\x74\x3A\x20\x62\x6F\x6C\x64\x0A\x7D\x0A\x64\x64\x20\x7B\x0A\x09\x6D\x61\x72\x67\x69\x6E\x3A\x20\x30\x20\x30\x20\x30\x20\x31\x2E\x32\x35\x72\x65\x6D\x3B\x0A\x7D\x0A\x0A\x2F\x2A\x2A\x0A\x20\x2A\x20\x43\x75\x73\x74\x6F\x6D\x20\x63\x6C\x61\x73\x73\x65\x73\x20\x66\x6F\x72\x20\x70\x61\x67\x65\x73\x0A\x20\x2A\x2F\x0A\x0A\x2E\x61\x64\x6D\x6F\x6E\x69\x74\x69\x6F\x6E\x62\x6C\x6F\x63\x6B\x20\x3E\x20\x74\x61\x62\x6C\x65\x20\x7B\x0A\x09\x62\x6F\x72\x64\x65\x72\x2D\x63\x6F\x6C\x6C\x61\x70\x73\x65\x3A\x20\x73\x65\x70\x61\x72\x61\x74\x65\x3B\x0A\x09\x62\x6F\x72\x64\x65\x72\x3A\x20\x30\x3B\x0A\x09\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x3A\x20\x6E\x6F\x6E\x65\x3B\x0A\x09\x77\x69\x64\x74\x68\x3A\x20\x31\x30\x30\x25\x3B\x0A\x7D\x0A\x2E\x61\x64\x6D\x6F\x6E\x69\x74\x69\x6F\x6E\x62\x6C\x6F\x63\x6B\x20\x3E\x20\x74\x61\x62\x6C\x65\x20\x74\x64\x2E\x69\x63\x6F\x6E\x20\x7B\x0A\x09\x74\x65\x78\x74\x2D\x61\x6C\x69\x67\x6E\x3A\x20\x63\x65\x6E\x74\x65\x72\x3B\x0A\x09\x77\x69\x64\x74\x68\x3A\x20\x31\x32\x30\x70\x78\x3B\x0A\x7D\x0A\x2E\x61\x64\x6D\x6F\x6E\x69\x74\x69\x6F\x6E\x62\x6C\x6F\x63\x6B\x20\x3E\x20\x74\x61\x62\x6C\x65\x20\x74\x64\x2E\x69\x63\x6F\x6E\x20\x69\x6D\x67\x20\x7B\x0A\x09\x6D\x61\x78\x2D\x77\x69\x64\x74\x68\x3A\x20\x6E\x6F\x6E\x65\x3B\x0A\x7D\x0A\x2E\x61\x64\x6D\x6F\x6E\x69\x74\x69\x6F\x6E\x62\x6C\x6F\x63\x6B\x20\x3E\x20\x74\x61\x62\x6C\x65\x20\x74\x64\x2E\x69\x63\x6F\x6E\x20\x2E\x74\x69\x74\x6C\x65\x20\x7B\x0A\x09\x66\x6F\x6E\x74\x2D\x77\x65\x69\x67\x68\x74\x3A\x20\x62\x6F\x6C\x64\x3B\x0A\x09\x66\x6F\x6E\x74\x2D\x66\x61\x6D\x69\x6C\x79\x3A\x20\x22\x4F\x70\x65\x6E\x20\x53\x61\x6E\x73\x22\x2C\x22\x44\x65\x6A\x61\x56\x75\x20\x53\x61\x6E\x73\x22\x2C\x73\x61\x6E\x73\x2D\x73\x65\x72\x69\x66\x3B\x0A\x09\x74\x65\x78\x74\x2D\x74\x72\x61\x6E\x73\x66\x6F\x72\x6D\x3A\x20\x75\x70\x70\x65\x72\x63\x61\x73\x65\x3B\x0A\x7D\x0A\x2E\x61\x64\x6D\x6F\x6E\x69\x74\x69\x6F\x6E\x62\x6C\x6F\x63\x6B\x20\x3E\x20\x74\x61\x62\x6C\x65\x20\x74\x64\x2E\x63\x6F\x6E\x74\x65\x6E\x74\x20\x7B\x0A\x09\x70\x61\x64\x64\x69\x6E\x67\x2D\x6C\x65\x66\x74\x3A\x20\x31\x2E\x31\x32\x35\x65\x6D\x3B\x0A\x09\x70\x61\x64\x64\x69\x6E\x67\x2D\x72\x69\x67\x68\x74\x3A\x20\x31\x2E\x32\x35\x65\x6D\x3B\x0A\x09\x62\x6F\x72\x64\x65\x72\x2D\x6C\x65\x66\x74\x3A\x20\x31\x70\x78\x20\x73\x6F\x6C\x69\x64\x20\x23\x64\x64\x64\x64\x64\x66\x3B\x0A\x09\x77\x6F\x72\x64\x2D\x77\x72\x61\x70\x3A\x20\x61\x6E\x79\x77\x68\x65\x72\x65\x3B\x0A\x7D\x0A\x2E\x61\x64\x6D\x6F\x6E\x69\x74\x69\x6F\x6E\x62\x6C\x6F\x63\x6B\x20\x3E\x20\x74\x61\x62\x6C\x65\x20\x74\x64\x2E\x63\x6F\x6E\x74\x65\x6E\x74\x3E\x3A\x6C\x61\x73\x74\x2D\x63\x68\x69\x6C\x64\x3E\x3A\x6C\x61\x73\x74\x2D\x63\x68\x69\x6C\x64\x20\x7B\x0A\x09\x6D\x61\x72\x67\x69\x6E\x2D\x62\x6F\x74\x74\x6F\x6D\x3A\x20\x30\x3B\x0A\x7D\x0A\x2E\x61\x64\x6D\x6F\x6E\x69\x74\x69\x6F\x6E\x62\x6C\x6F\x63\x6B\x2E\x6E\x6F\x74\x65\x20\x74\x64\x2E\x69\x63\x6F\x6E\x20\x7B\x0A\x09\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x2D\x63\x6F\x6C\x6F\x72\x3A\x20\x77\x68\x69\x74\x65\x73\x6D\x6F\x6B\x65\x3B\x0A\x7D\x0A\x2E\x61\x64\x6D\x6F\x6E\x69\x74\x69\x6F\x6E\x62\x6C\x6F\x63\x6B\x2E\x74\x69\x70\x20\x74\x64\x2E\x69\x63\x6F\x6E\x20\x7B\x0A\x09\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x2D\x63\x6F\x6C\x6F\x72\x3A\x20\x61\x7A\x75\x72\x65\x3B\x0A\x7D\x0A\x2E\x61\x64\x6D\x6F\x6E\x69\x74\x69\x6F\x6E\x62\x6C\x6F\x63\x6B\x2E\x69\x6D\x70\x6F\x72\x74\x61\x6E\x74\x20\x74\x64\x2E\x69\x63\x6F\x6E\x20\x7B\x0A\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\x7D\x0A\x2E\x61\x64\x6D\x6F\x6E\x69\x74\x69\x6F\x6E\x62\x6C\x6F\x63\x6B\x2E\x63\x61\x75\x74\x69\x6F\x6E\x20\x74\x64\x2E\x69\x63\x6F\x6E\x20\x7B\x0A\x09\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x2D\x63\x6F\x6C\x6F\x72\x3A\x20\x6C\x61\x76\x65\x6E\x64\x65\x72\x62\x75\x73\x68\x3B\x0A\x7D\x0A\x2E\x61\x64\x6D\x6F\x6E\x69\x74\x69\x6F\x6E\x62\x6C\x6F\x63\x6B\x2E\x77\x61\x72\x6E\x69\x6E\x67\x20\x74\x64\x2E\x69\x63\x6F\x6E\x20\x7B\x0A\x09\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x2D\x63\x6F\x6C\x6F\x72\x3A\x20\x6D\x69\x73\x74\x79\x72\x6F\x73\x65\x3B\x0A\x7D\x0A\x0A\x2E\x74\x6F\x70\x62\x61\x72\x20\x7B\x0A\x09\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x3A\x20\x23\x65\x30\x65\x62\x66\x35\x3B\x0A\x09\x68\x65\x69\x67\x68\x74\x3A\x20\x34\x72\x65\x6D\x3B\x0A\x09\x6F\x76\x65\x72\x66\x6C\x6F\x77\x3A\x20\x68\x69\x64\x64\x65\x6E\x3B\x0A\x7D\x0A\x0A\x2E\x74\x6F\x70\x62\x61\x72\x20\x2E\x74\x6F\x70\x2D\x68\x65\x61\x64\x69\x6E\x67\x2C\x0A\x2E\x74\x6F\x70\x62\x61\x72\x20\x2E\x6D\x65\x6E\x75\x20\x7B\x0A\x09\x70\x61\x64\x64\x69\x6E\x67\x3A\x20\x31\x2E\x33\x31\x33\x72\x65\x6D\x20\x30\x3B\x0A\x09\x66\x6F\x6E\x74\x2D\x73\x69\x7A\x65\x3A\x20\x31\x2E\x32\x35\x72\x65\x6D\x3B\x0A\x09\x66\x6F\x6E\x74\x2D\x77\x65\x69\x67\x68\x74\x3A\x20\x6E\x6F\x72\x6D\x61\x6C\x3B\x0A\x7D\x0A\x2E\x74\x6F\x70\x62\x61\x72\x20\x2E\x74\x6F\x70\x2D\x68\x65\x61\x64\x69\x6E\x67\x20\x7B\x0A\x09\x66\x6C\x6F\x61\x74\x3A\x20\x6C\x65\x66\x74\x3B\x0A\x7D\x0A\x2E\x74\x6F\x70\x62\x61\x72\x20\x2E\x74\x6F\x70\x2D\x68\x65\x61\x64\x69\x6E\x67\x20\x61\x20\x7B\x0A\x09\x63\x6F\x6C\x6F\x72\x3A\x20\x23\x32\x32\x32\x3B\x0A\x09\x74\x65\x78\x74\x2D\x64\x65\x63\x6F\x72\x61\x74\x69\x6F\x6E\x3A\x20\x6E\x6F\x6E\x65\x3B\x0A\x7D\x0A\x0A\x2E\x74\x6F\x70\x2D\x68\x65\x61\x64\x69\x6E\x67\x20\x2E\x68\x65\x61\x64\x65\x72\x2D\x6C\x6F\x67\x6F\x20\x7B\x0A\x09\x68\x65\x69\x67\x68\x74\x3A\x20\x32\x72\x65\x6D\x3B\x0A\x09\x77\x69\x64\x74\x68\x3A\x20\x35\x2E\x31\x32\x35\x72\x65\x6D\x3B\x0A\x7D\x0A\x0A\x2E\x74\x6F\x70\x62\x61\x72\x20\x2E\x6D\x65\x6E\x75\x20\x7B\x0A\x09\x66\x6C\x6F\x61\x74\x3A\x20\x72\x69\x67\x68\x74\x3B\x0A\x7D\x0A\x2E\x74\x6F\x70\x62\x61\x72\x20\x2E\x6D\x65\x6E\x75\x20\x61\x20\x7B\x0A\x09\x6D\x61\x72\x67\x69\x6E\x3A\x20\x30\x2E\x36\x32\x35\x72\x65\x6D\x20\x30\x2E\x31\x32\x35\x72\x65\x6D\x3B\x0A\x09\x70\x61\x64\x64\x69\x6E\x67\x3A\x20\x30\x2E\x36\x32\x35\x72\x65\x6D\x3B\x0A\x09\x63\x6F\x6C\x6F\x72\x3A\x20\x77\x68\x69\x74\x65\x3B\x0A\x09\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x3A\x20\x23\x30\x30\x37\x64\x39\x63\x3B\x0A\x09\x62\x6F\x72\x64\x65\x72\x3A\x20\x30\x2E\x30\x36\x32\x35\x72\x65\x6D\x20\x73\x6F\x6C\x69\x64\x20\x23\x30\x30\x37\x64\x39\x63\x3B\x0A\x09\x62\x6F\x72\x64\x65\x72\x2D\x72\x61\x64\x69\x75\x73\x3A\x20\x35\x70\x78\x3B\x0A\x7D\x0A\x2E\x74\x6F\x70\x62\x61\x72\x20\x2E\x6D\x65\x6E\x75\x20\x66\x6F\x72\x6D\x20\x7B\x0A\x09\x64\x69\x73\x70\x6C\x61\x79\x3A\x20\x69\x6E\x6C\x69\x6E\x65\x2D\x62\x6C\x6F\x63\x6B\x3B\x0A\x7D\x0A\x0A\x2E\x70\x61\x67\x65\x20\x7B\x0A\x09\x77\x69\x64\x74\x68\x3A\x20\x31\x30\x30\x25\x3B\x0A\x7D\x0A\x0A\x2E\x70\x61\x67\x65\x20\x3E\x20\x2E\x63\x6F\x6E\x74\x61\x69\x6E\x65\x72\x2C\x0A\x2E\x74\x6F\x70\x62\x61\x72\x20\x3E\x20\x2E\x63\x6F\x6E\x74\x61\x69\x6E\x65\x72\x2C\x0A\x2E\x66\x6F\x6F\x74\x65\x72\x20\x3E\x20\x2E\x63\x6F\x6E\x74\x61\x69\x6E\x65\x72\x20\x7B\x0A\x09\x6D\x61\x72\x67\x69\x6E\x2D\x6C\x65\x66\x74\x3A\x20\x61\x75\x74\x6F\x3B\x0A\x09\x6D\x61\x72\x67\x69\x6E\x2D\x72\x69\x67\x68\x74\x3A\x20\x61\x75\x74\x6F\x3B\x0A\x09\x70\x61\x64\x64\x69\x6E\x67\x3A\x20\x30\x20\x31\x2E\x32\x35\x72\x65\x6D\x3B\x0A\x09\x6D\x61\x78\x2D\x77\x69\x64\x74\x68\x3A\x20\x35\x39\x2E\x33\x38\x72\x65\x6D\x3B\x0A\x7D\x0A\x0A\x2E\x70\x61\x67\x65\x20\x3E\x20\x2E\x63\x6F\x6E\x74\x61\x69\x6E\x65\x72\x20\x7B\x0A\x09\x74\x65\x78\x74\x2D\x61\x6C\x69\x67\x6E\x3A\x20\x6C\x65\x66\x74\x3B\x0A\x7D\x0A\x0A\x2E\x63\x6F\x6E\x74\x61\x69\x6E\x65\x72\x20\x2E\x6D\x65\x74\x61\x20\x7B\x0A\x09\x66\x6F\x6E\x74\x2D\x73\x74\x79\x6C\x65\x3A\x20\x69\x74\x61\x6C\x69\x63\x3B\x0A\x09\x6D\x61\x72\x67\x69\x6E\x3A\x20\x31\x2E\x32\x35\x72\x65\x6D\x3B\x0A\x7D\x0A\x0A\x2E\x66\x6F\x6F\x74\x65\x72\x20\x7B\x0A\x09\x74\x65\x78\x74\x2D\x61\x6C\x69\x67\x6E\x3A\x20\x63\x65\x6E\x74\x65\x72\x3B\x0A\x09\x63\x6F\x6C\x6F\x72\x3A\x20\x23\x36\x36\x36\x3B\x0A\x09\x66\x6F\x6E\x74\x2D\x73\x69\x7A\x65\x3A\x20\x30\x2E\x38\x37\x35\x72\x65\x6D\x3B\x0A\x09\x6D\x61\x72\x67\x69\x6E\x3A\x20\x32\x2E\x35\x72\x65\x6D\x20\x30\x3B\x0A\x7D\x0A\x0A\x2E\x75\x6C\x69\x73\x74\x20\x6C\x69\x20\x2E\x70\x61\x72\x61\x67\x72\x61\x70\x68\x20\x7B\x0A\x09\x6D\x61\x72\x67\x69\x6E\x2D\x62\x6F\x74\x74\x6F\x6D\x3A\x20\x31\x65\x6D\x3B\x0A\x7D\x0A\x0A\x2E\x75\x6C\x69\x73\x74\x20\x6C\x69\x20\x2E\x70\x61\x72\x61\x67\x72\x61\x70\x68\x20\x7B\x0A\x09\x6D\x61\x72\x67\x69\x6E\x2D\x62\x6F\x74\x74\x6F\x6D\x3A\x20\x31\x65\x6D\x3B\x0A\x7D\x0A\x0A\x2F\x2A\x2A\x20\x43\x75\x73\x74\x6F\x6D\x20\x63\x6C\x61\x73\x73\x65\x73\x20\x2A\x2F\x0A\x23\x74\x6F\x63\x74\x69\x74\x6C\x65\x20\x7B\x0A\x09\x64\x69\x73\x70\x6C\x61\x79\x3A\x20\x6E\x6F\x6E\x65\x3B\x0A\x7D\x0A\x23\x74\x6F\x63\x20\x6C\x69\x20\x7B\x0A\x09\x6C\x69\x73\x74\x2D\x73\x74\x79\x6C\x65\x3A\x20\x6E\x6F\x6E\x65\x3B\x0A\x7D\x0A\x23\x74\x6F\x63\x20\x75\x6C\x20\x2E\x73\x65\x63\x74\x6C\x65\x76\x65\x6C\x31\x20\x7B\x0A\x09\x70\x61\x64\x64\x69\x6E\x67\x3A\x20\x30\x70\x78\x3B\x0A\x09\x6D\x61\x72\x67\x69\x6E\x3A\x20\x34\x70\x78\x3B\x0A\x7D\x0A\x23\x74\x6F\x63\x20\x75\x6C\x20\x2E\x73\x65\x63\x74\x6C\x65\x76\x65\x6C\x32\x20\x7B\x0A\x09\x6D\x61\x72\x67\x69\x6E\x3A\x20\x34\x70\x78\x3B\x0A\x7D\x0A\x0A\x40\x6D\x65\x64\x69\x61\x20\x73\x63\x72\x65\x65\x6E\x20\x61\x6E\x64\x20\x28\x6D\x61\x78\x2D\x77\x69\x64\x74\x68\x3A\x20\x39\x39\x32\x70\x78\x29\x20\x7B\x0A\x09\x23\x74\x6F\x63\x20\x7B\x0A\x09\x09\x61\x6C\x6C\x3A\x20\x75\x6E\x73\x65\x74\x3B\x0A\x09\x7D\x0A\x7D\x0A\x0A\x09\x09\x3C\x2F\x73\x74\x79\x6C\x65\x3E\x0A\x09\x3C\x2F\x68\x65\x61\x64\x3E\x0A\x09\x3C\x62\x6F\x64\x79\x3E\x0A\x09\x09\x3C\x64\x69\x76\x20\x63\x6C\x61\x73\x73\x3D\x22\x74\x6F\x70\x62\x61\x72\x22\x3E\x0A\x09\x09\x09\x3C\x64\x69\x76\x20\x63\x6C\x61\x73\x73\x3D\x22\x63\x6F\x6E\x74\x61\x69\x6E\x65\x72\x22\x3E\x0A\x09\x09\x09\x09\x3C\x64\x69\x76\x20\x63\x6C\x61\x73\x73\x3D\x22\x74\x6F\x70\x2D\x68\x65\x61\x64\x69\x6E\x67\x22\x3E\x0A\x09\x09\x09\x09\x09\x3C\x61\x20\x68\x72\x65\x66\x3D\x22\x2F\x22\x3E\x3C\x2F\x61\x3E\x0A\x09\x09\x09\x09\x3C\x2F\x64\x69\x76\x3E\x0A\x09\x09\x09\x09\x3C\x64\x69\x76\x20\x63\x6C\x61\x73\x73\x3D\x22\x6D\x65\x6E\x75\x22\x3E\x0A\x09\x09\x09\x09\x09\x3C\x66\x6F\x72\x6D\x20\x63\x6C\x61\x73\x73\x3D\x22\x69\x74\x65\x6D\x22\x20\x61\x63\x74\x69\x6F\x6E\x3D\x22\x2F\x5F\x69\x6E\x74\x65\x72\x6E\x61\x6C\x2F\x73\x65\x61\x72\x63\x68\x22\x3E\x0A\x09\x09\x09\x09\x09\x09\x3C\x69\x6E\x70\x75\x74\x20\x74\x79\x70\x65\x3D\x22\x74\x65\x78\x74\x22\x20\x6E\x61\x6D\x65\x3D\x22\x71\x22\x20\x70\x6C\x61\x63\x65\x68\x6F\x6C\x64\x65\x72\x3D\x22\x53\x65\x61\x72\x63\x68\x22\x20\x2F\x3E\x0A\x09\x09\x09\x09\x09\x3C\x2F\x66\x6F\x72\x6D\x3E\x0A\x09\x09\x09\x09\x3C\x2F\x64\x69\x76\x3E\x0A\x09\x09\x09\x3C\x2F\x64\x69\x76\x3E\x0A\x09\x09\x3C\x2F\x64\x69\x76\x3E\x0A\x09\x09\x3C\x64\x69\x76\x20\x63\x6C\x61\x73\x73\x3D\x22\x70\x61\x67\x65\x22\x3E\x0A\x09\x09\x09\x3C\x64\x69\x76\x20\x63\x6C\x61\x73\x73\x3D\x22\x63\x6F\x6E\x74\x61\x69\x6E\x65\x72\x22\x3E\x0A\x3C\x68\x31\x3E\x61\x77\x77\x61\x6E\x3C\x2F\x68\x31\x3E\x0A\x3C\x70\x3E\x3C\x61\x20\x68\x72\x65\x66\x3D\x22\x68\x74\x74\x70\x73\x3A\x2F\x2F\x70\x6B\x67\x2E\x67\x6F\x2E\x64\x65\x76\x2F\x67\x69\x74\x2E\x73\x72\x2E\x68\x74\x2F\x7E\x73\x68\x75\x6C\x68\x61\x6E\x2F\x61\x77\x77\x61\x6E\x22\x3E\x47\x6F\x44\x6F\x63\x3C\x2F\x61\x3E\x3C\x2F\x70\x3E\x0A\x3C\x68\x32\x3E\x4E\x41\x4D\x45\x3C\x2F\x68\x32\x3E\x0A\x3C\x70\x3E\x61\x77\x77\x61\x6E\x20\x2D\x20\x43\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x20\x6D\x61\x6E\x61\x67\x65\x6D\x65\x6E\x74\x20\x73\x6F\x66\x74\x77\x61\x72\x65\x2C\x20\x69\x6E\x66\x72\x61\x73\x74\x72\x75\x63\x74\x75\x72\x65\x20\x61\x73\x20\x66\x69\x6C\x65\x20\x61\x6E\x64\x0A\x64\x69\x72\x65\x63\x74\x6F\x72\x79\x20\x6C\x61\x79\x6F\x75\x74\x2E\x3C\x2F\x70\x3E\x0A\x3C\x68\x32\x3E\x53\x59\x4E\x4F\x50\x53\x49\x53\x3C\x2F\x68\x32\x3E\x0A\x3C\x70\x72\x65\x3E\x3C\x63\x6F\x64\x65\x3E\x61\x77\x77\x61\x6E\x20\x26\x6C\x74\x3B\x63\x6F\x6D\x6D\x61\x6E\x64\x26\x67\x74\x3B\x20\x26\x6C\x74\x3B\x61\x72\x67\x75\x6D\x65\x6E\x74\x73\x26\x67\x74\x3B\x0A\x0A\x63\x6F\x6D\x6D\x61\x6E\x64\x20\x3D\x20\x26\x71\x75\x6F\x74\x3B\x65\x6E\x63\x72\x79\x70\x74\x26\x71\x75\x6F\x74\x3B\x20\x2F\x20\x26\x71\x75\x6F\x74\x3B\x68\x65\x6C\x70\x26\x71\x75\x6F\x74\x3B\x20\x2F\x20\x26\x71\x75\x6F\x74\x3B\x6C\x6F\x63\x61\x6C\x26\x71\x75\x6F\x74\x3B\x20\x2F\x20\x26\x71\x75\x6F\x74\x3B\x70\x6C\x61\x79\x26\x71\x75\x6F\x74\x3B\x20\x2F\x20\x26\x71\x75\x6F\x74\x3B\x73\x65\x72\x76\x65\x26\x71\x75\x6F\x74\x3B\x20\x2F\x20\x26\x71\x75\x6F\x74\x3B\x76\x65\x72\x73\x69\x6F\x6E\x26\x71\x75\x6F\x74\x3B\x0A\x09\x64\x65\x63\x72\x79\x70\x74\x20\x26\x6C\x74\x3B\x66\x69\x6C\x65\x2E\x76\x61\x75\x6C\x74\x26\x67\x74\x3B\x0A\x0A\x09\x09\x44\x65\x63\x72\x79\x70\x74\x20\x74\x68\x65\x20\x66\x69\x6C\x65\x20\x75\x73\x69\x6E\x67\x20\x52\x53\x41\x20\x70\x72\x69\x76\x61\x74\x65\x20\x6B\x65\x79\x20\x61\x74\x0A\x09\x09\x26\x71\x75\x6F\x74\x3B\x7B\x7B\x2E\x42\x61\x73\x65\x44\x69\x72\x7D\x7D\x2F\x2E\x73\x73\x68\x2F\x61\x77\x77\x61\x6E\x2E\x6B\x65\x79\x26\x71\x75\x6F\x74\x3B\x2E\x0A\x09\x09\x54\x68\x65\x20\x65\x6E\x63\x72\x79\x70\x74\x65\x64\x20\x66\x69\x6C\x65\x20\x6D\x75\x73\x74\x20\x68\x61\x76\x65\x20\x65\x78\x74\x65\x6E\x73\x69\x6F\x6E\x20\x26\x71\x75\x6F\x74\x3B\x2E\x76\x61\x75\x6C\x74\x26\x71\x75\x6F\x74\x3B\x2C\x20\x6F\x74\x68\x65\x72\x77\x69\x73\x65\x0A\x09\x09\x69\x74\x20\x77\x69\x6C\x6C\x20\x72\x65\x74\x75\x72\x6E\x20\x61\x6E\x20\x65\x72\x72\x6F\x72\x2E\x0A\x09\x09\x54\x68\x65\x20\x64\x65\x63\x72\x79\x70\x74\x65\x64\x20\x66\x69\x6C\x65\x20\x6F\x75\x74\x70\x75\x74\x20\x77\x69\x6C\x6C\x20\x62\x65\x20\x77\x72\x69\x74\x74\x65\x6E\x20\x69\x6E\x20\x74\x68\x65\x20\x73\x61\x6D\x65\x0A\x09\x09\x64\x69\x72\x65\x63\x74\x6F\x72\x79\x20\x77\x69\x74\x68\x6F\x75\x74\x20\x74\x68\x65\x20\x26\x71\x75\x6F\x74\x3B\x2E\x76\x61\x75\x6C\x74\x26\x71\x75\x6F\x74\x3B\x20\x65\x78\x74\x65\x6E\x73\x69\x6F\x6E\x2E\x0A\x0A\x09\x65\x6E\x63\x72\x79\x70\x74\x20\x26\x6C\x74\x3B\x66\x69\x6C\x65\x26\x67\x74\x3B\x0A\x09\x09\x45\x6E\x63\x72\x79\x70\x74\x20\x74\x68\x65\x20\x66\x69\x6C\x65\x20\x75\x73\x69\x6E\x67\x20\x52\x53\x41\x20\x70\x72\x69\x76\x61\x74\x65\x20\x6B\x65\x79\x20\x61\x74\x0A\x09\x09\x26\x71\x75\x6F\x74\x3B\x7B\x7B\x2E\x42\x61\x73\x65\x44\x69\x72\x7D\x7D\x2F\x2E\x73\x73\x68\x2F\x61\x77\x77\x61\x6E\x2E\x6B\x65\x79\x26\x71\x75\x6F\x74\x3B\x2E\x0A\x09\x09\x54\x68\x65\x20\x65\x6E\x63\x72\x79\x70\x74\x65\x64\x20\x66\x69\x6C\x65\x20\x77\x69\x6C\x6C\x20\x68\x61\x76\x65\x20\x26\x71\x75\x6F\x74\x3B\x2E\x76\x61\x75\x6C\x74\x26\x71\x75\x6F\x74\x3B\x20\x65\x78\x74\x65\x6E\x73\x69\x6F\x6E\x2E\x0A\x0A\x09\x09\x52\x45\x4D\x49\x4E\x44\x45\x52\x3A\x20\x74\x68\x65\x20\x70\x72\x69\x76\x61\x74\x65\x20\x6B\x65\x79\x20\x73\x68\x6F\x75\x6C\x64\x20\x6E\x6F\x74\x20\x62\x65\x20\x63\x6F\x6D\x6D\x69\x74\x74\x65\x64\x20\x69\x6E\x74\x6F\x0A\x09\x09\x56\x43\x53\x20\x69\x66\x20\x69\x74\x73\x20\x6E\x6F\x74\x20\x70\x72\x6F\x74\x65\x63\x74\x65\x64\x20\x77\x69\x74\x68\x20\x70\x61\x73\x73\x70\x68\x72\x61\x73\x65\x2E\x0A\x0A\x09\x68\x65\x6C\x70\x0A\x09\x09\x44\x69\x73\x70\x6C\x61\x79\x20\x74\x68\x65\x20\x63\x6F\x6D\x6D\x61\x6E\x64\x20\x75\x73\x61\x67\x65\x20\x61\x6E\x64\x20\x69\x74\x73\x20\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E\x2E\x0A\x0A\x09\x6C\x6F\x63\x61\x6C\x20\x26\x6C\x74\x3B\x73\x63\x72\x69\x70\x74\x26\x67\x74\x3B\x20\x26\x6C\x74\x3B\x6C\x69\x6E\x65\x2D\x72\x61\x6E\x67\x65\x26\x67\x74\x3B\x0A\x09\x09\x45\x78\x65\x63\x75\x74\x65\x20\x74\x68\x65\x20\x73\x63\x72\x69\x70\x74\x20\x69\x6E\x20\x63\x75\x72\x72\x65\x6E\x74\x20\x73\x79\x73\x74\x65\x6D\x20\x66\x72\x6F\x6D\x20\x6C\x69\x6E\x65\x20\x26\x6C\x74\x3B\x73\x74\x61\x72\x74\x26\x67\x74\x3B\x20\x75\x6E\x74\x69\x6C\x0A\x09\x09\x6C\x69\x6E\x65\x20\x26\x6C\x74\x3B\x65\x6E\x64\x26\x67\x74\x3B\x2E\x0A\x0A\x09\x70\x6C\x61\x79\x20\x26\x6C\x74\x3B\x73\x63\x72\x69\x70\x74\x26\x67\x74\x3B\x20\x26\x6C\x74\x3B\x6C\x69\x6E\x65\x2D\x72\x61\x6E\x67\x65\x26\x67\x74\x3B\x0A\x09\x09\x45\x78\x65\x63\x75\x74\x65\x20\x74\x68\x65\x20\x73\x63\x72\x69\x70\x74\x20\x69\x6E\x20\x74\x68\x65\x20\x72\x65\x6D\x6F\x74\x65\x20\x73\x65\x72\x76\x65\x72\x20\x66\x72\x6F\x6D\x20\x6C\x69\x6E\x65\x20\x26\x6C\x74\x3B\x73\x74\x61\x72\x74\x26\x67\x74\x3B\x0A\x09\x09\x75\x6E\x74\x69\x6C\x20\x6C\x69\x6E\x65\x20\x26\x6C\x74\x3B\x65\x6E\x64\x26\x67\x74\x3B\x2E\x0A\x0A\x09\x73\x65\x72\x76\x65\x20\x26\x6C\x74\x3B\x77\x6F\x72\x6B\x73\x70\x61\x63\x65\x26\x67\x74\x3B\x0A\x09\x09\x52\x75\x6E\x20\x74\x68\x65\x20\x77\x65\x62\x2D\x75\x73\x65\x72\x20\x69\x6E\x74\x65\x72\x66\x61\x63\x65\x20\x75\x73\x69\x6E\x67\x20\x26\x6C\x74\x3B\x77\x6F\x72\x6B\x73\x70\x61\x63\x65\x26\x67\x74\x3B\x20\x64\x69\x72\x65\x63\x74\x6F\x72\x79\x20\x61\x73\x20\x62\x61\x73\x65\x0A\x09\x09\x64\x69\x72\x65\x63\x74\x6F\x72\x79\x2E\x0A\x0A\x09\x76\x65\x72\x73\x69\x6F\x6E\x0A\x09\x09\x50\x72\x69\x6E\x74\x20\x74\x68\x65\x20\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x20\x76\x65\x72\x73\x69\x6F\x6E\x20\x74\x6F\x20\x73\x74\x61\x6E\x64\x61\x72\x64\x20\x6F\x75\x74\x70\x75\x74\x2E\x0A\x0A\x61\x72\x67\x75\x6D\x65\x6E\x74\x73\x20\x3D\x20\x26\x6C\x74\x3B\x73\x63\x72\x69\x70\x74\x26\x67\x74\x3B\x20\x26\x6C\x74\x3B\x6C\x69\x6E\x65\x2D\x72\x61\x6E\x67\x65\x26\x67\x74\x3B\x20\x2F\x20\x26\x6C\x74\x3B\x77\x6F\x72\x6B\x73\x70\x61\x63\x65\x26\x67\x74\x3B\x0A\x0A\x09\x73\x63\x72\x69\x70\x74\x20\x3D\x20\x53\x54\x52\x49\x4E\x47\x0A\x09\x09\x41\x20\x70\x61\x74\x68\x20\x74\x6F\x20\x73\x63\x72\x69\x70\x74\x20\x74\x6F\x20\x62\x65\x20\x65\x78\x65\x63\x75\x74\x65\x64\x2E\x0A\x0A\x09\x77\x6F\x72\x6B\x73\x70\x61\x63\x65\x20\x3D\x20\x53\x54\x52\x49\x4E\x47\x0A\x09\x09\x54\x68\x65\x20\x72\x6F\x6F\x74\x20\x64\x69\x72\x65\x63\x74\x6F\x72\x79\x20\x6F\x66\x20\x61\x77\x77\x61\x6E\x20\x77\x6F\x72\x6B\x73\x70\x61\x63\x65\x2C\x20\x74\x68\x65\x20\x6F\x6E\x65\x20\x74\x68\x61\x74\x20\x63\x6F\x6E\x74\x61\x69\x6E\x73\x0A\x09\x09\x74\x68\x65\x20\x2E\x73\x73\x68\x20\x64\x69\x72\x65\x63\x74\x6F\x72\x79\x2E\x0A\x0A\x6C\x69\x6E\x65\x2D\x72\x61\x6E\x67\x65\x20\x3D\x20\x73\x74\x61\x72\x74\x20\x5B\x20\x26\x71\x75\x6F\x74\x3B\x2D\x26\x71\x75\x6F\x74\x3B\x20\x5B\x65\x6E\x64\x5D\x20\x5D\x20\x2A\x28\x26\x71\x75\x6F\x74\x3B\x2C\x26\x71\x75\x6F\x74\x3B\x20\x6C\x69\x6E\x65\x2D\x72\x61\x6E\x67\x65\x29\x0A\x0A\x09\x73\x74\x61\x72\x74\x20\x3D\x20\x31\x2A\x44\x49\x47\x49\x54\x53\x0A\x09\x09\x54\x68\x65\x20\x73\x74\x61\x72\x74\x69\x6E\x67\x20\x6C\x69\x6E\x65\x20\x6E\x75\x6D\x62\x65\x72\x20\x69\x6E\x20\x74\x68\x65\x20\x73\x63\x72\x69\x70\x74\x2E\x0A\x0A\x09\x65\x6E\x64\x20\x3D\x20\x31\x2A\x44\x49\x47\x49\x54\x53\x0A\x09\x09\x54\x68\x65\x20\x65\x6E\x64\x20\x6F\x66\x20\x6C\x69\x6E\x65\x20\x6E\x75\x6D\x62\x65\x72\x2E\x0A\x09\x09\x49\x74\x73\x20\x76\x61\x6C\x75\x65\x20\x65\x69\x74\x68\x65\x72\x20\x65\x6D\x70\x74\x79\x2C\x20\x65\x71\x75\x61\x6C\x2C\x20\x6F\x72\x20\x67\x72\x65\x61\x74\x65\x72\x20\x74\x68\x61\x6E\x20\x73\x74\x61\x72\x74\x2E\x0A\x3C\x2F\x63\x6F\x64\x65\x3E\x3C\x2F\x70\x72\x65\x3E\x0A\x3C\x68\x32\x3E\x44\x45\x53\x43\x52\x49\x50\x54\x49\x4F\x4E\x3C\x2F\x68\x32\x3E\x0A\x3C\x70\x3E\x3C\x63\x6F\x64\x65\x3E\x61\x77\x77\x61\x6E\x3C\x2F\x63\x6F\x64\x65\x3E\x20\x69\x73\x20\x63\x6F\x6D\x6D\x61\x6E\x64\x2D\x6C\x69\x6E\x65\x20\x69\x6E\x74\x65\x72\x66\x61\x63\x65\x20\x74\x6F\x20\x65\x78\x65\x63\x75\x74\x65\x20\x6D\x75\x6C\x74\x69\x70\x6C\x65\x20\x6C\x69\x6E\x65\x73\x20\x6F\x66\x20\x63\x6F\x6D\x6D\x61\x6E\x64\x20\x69\x6E\x0A\x74\x68\x65\x20\x6C\x6F\x63\x61\x6C\x20\x6F\x72\x20\x72\x65\x6D\x6F\x74\x65\x20\x73\x65\x72\x76\x65\x72\x20\x75\x73\x69\x6E\x67\x20\x73\x68\x65\x6C\x6C\x20\x6F\x72\x20\x53\x53\x48\x2E\x3C\x2F\x70\x3E\x0A\x3C\x68\x32\x3E\x42\x41\x43\x4B\x47\x52\x4F\x55\x4E\x44\x3C\x2F\x68\x32\x3E\x0A\x3C\x70\x3E\x44\x6F\x20\x79\x6F\x75\x20\x68\x61\x76\x65\x20\x61\x20\x63\x6F\x6C\x6C\x65\x63\x74\x69\x6F\x6E\x20\x6F\x66\x20\x73\x68\x65\x6C\x6C\x20\x73\x63\x72\x69\x70\x74\x73\x20\x74\x6F\x20\x6D\x61\x6E\x61\x67\x65\x20\x6F\x6E\x65\x20\x6D\x6F\x72\x65\x20\x73\x69\x6D\x69\x6C\x61\x72\x20\x73\x65\x72\x76\x65\x72\x3F\x0A\x44\x6F\x20\x79\x6F\x75\x20\x65\x76\x65\x72\x20\x77\x61\x6E\x74\x20\x74\x6F\x20\x65\x78\x65\x63\x75\x74\x65\x20\x6F\x6E\x6C\x79\x20\x70\x61\x72\x74\x20\x6F\x66\x20\x79\x6F\x75\x72\x20\x73\x63\x72\x69\x70\x74\x3F\x0A\x41\x72\x65\x20\x79\x6F\x75\x20\x67\x65\x74\x20\x74\x69\x72\x65\x64\x20\x77\x69\x74\x68\x20\x6C\x65\x61\x72\x6E\x69\x6E\x67\x20\x6F\x74\x68\x65\x72\x73\x20\x73\x79\x6E\x74\x61\x78\x20\x61\x6E\x64\x20\x74\x6F\x6F\x6C\x73\x20\x66\x6F\x72\x20\x70\x72\x6F\x76\x69\x73\x69\x6F\x6E\x69\x6E\x67\x0A\x79\x6F\x75\x72\x20\x6F\x77\x6E\x20\x73\x65\x72\x76\x65\x72\x2C\x20\x77\x68\x69\x6C\x65\x20\x79\x6F\x75\x20\x6E\x65\x65\x64\x20\x69\x73\x20\x61\x20\x68\x61\x6E\x64\x66\x75\x6C\x20\x6F\x66\x20\x73\x68\x65\x6C\x6C\x20\x73\x63\x72\x69\x70\x74\x3F\x3C\x2F\x70\x3E\x0A\x3C\x70\x3E\x49\x66\x20\x79\x65\x73\x2C\x20\x61\x77\x77\x61\x6E\x20\x69\x73\x20\x74\x68\x65\x20\x72\x69\x67\x68\x74\x20\x74\x6F\x6F\x6C\x73\x20\x66\x6F\x72\x20\x79\x6F\x75\x2E\x3C\x2F\x70\x3E\x0A\x3C\x68\x32\x3E\x54\x48\x45\x20\x43\x4F\x4D\x4D\x41\x4E\x44\x3C\x2F\x68\x32\x3E\x0A\x3C\x70\x3E\x54\x68\x65\x20\x61\x77\x77\x61\x6E\x20\x74\x6F\x6F\x6C\x20\x68\x61\x76\x65\x20\x74\x68\x72\x65\x65\x20\x63\x6F\x6D\x6D\x61\x6E\x64\x73\x3A\x20\x6C\x6F\x63\x61\x6C\x2C\x20\x70\x6C\x61\x79\x2C\x20\x6F\x72\x20\x73\x65\x72\x76\x65\x2E\x3C\x2F\x70\x3E\x0A\x3C\x70\x3E\x54\x68\x65\x20\x26\x71\x75\x6F\x74\x3B\x6C\x6F\x63\x61\x6C\x26\x71\x75\x6F\x74\x3B\x20\x63\x6F\x6D\x6D\x61\x6E\x64\x20\x65\x78\x65\x63\x75\x74\x65\x20\x74\x68\x65\x20\x73\x63\x72\x69\x70\x74\x20\x69\x6E\x20\x6C\x6F\x63\x61\x6C\x20\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74\x2C\x20\x79\x6F\x75\x72\x20\x68\x6F\x73\x74\x0A\x6D\x61\x63\x68\x69\x6E\x65\x2C\x20\x75\x73\x69\x6E\x67\x20\x73\x68\x65\x6C\x6C\x2E\x0A\x54\x68\x65\x20\x26\x71\x75\x6F\x74\x3B\x70\x6C\x61\x79\x26\x71\x75\x6F\x74\x3B\x20\x63\x6F\x6D\x6D\x61\x6E\x64\x20\x65\x78\x65\x63\x75\x74\x65\x20\x74\x68\x65\x20\x73\x63\x72\x69\x70\x74\x20\x69\x6E\x20\x72\x65\x6D\x6F\x74\x65\x20\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74\x20\x75\x73\x69\x6E\x67\x20\x53\x53\x48\x2E\x0A\x54\x68\x65\x20\x26\x71\x75\x6F\x74\x3B\x73\x65\x72\x76\x65\x26\x71\x75\x6F\x74\x3B\x20\x63\x6F\x6D\x6D\x61\x6E\x64\x20\x72\x75\x6E\x20\x74\x68\x65\x20\x77\x65\x62\x2D\x75\x73\x65\x72\x20\x69\x6E\x74\x65\x72\x66\x61\x63\x65\x20\x75\x73\x69\x6E\x67\x20\x3C\x21\x2D\x2D\x20\x72\x61\x77\x20\x48\x54\x4D\x4C\x20\x6F\x6D\x69\x74\x74\x65\x64\x20\x2D\x2D\x3E\x20\x64\x69\x72\x65\x63\x74\x6F\x72\x79\x20\x61\x73\x0A\x62\x61\x73\x65\x20\x64\x69\x72\x65\x63\x74\x6F\x72\x79\x2E\x3C\x2F\x70\x3E\x0A\x3C\x70\x3E\x54\x68\x65\x20\x26\x71\x75\x6F\x74\x3B\x6C\x6F\x63\x61\x6C\x26\x71\x75\x6F\x74\x3B\x20\x61\x6E\x64\x20\x26\x71\x75\x6F\x74\x3B\x70\x6C\x61\x79\x26\x71\x75\x6F\x74\x3B\x20\x63\x6F\x6D\x6D\x61\x6E\x64\x20\x68\x61\x73\x20\x74\x68\x65\x20\x73\x61\x6D\x65\x20\x61\x72\x67\x75\x6D\x65\x6E\x74\x73\x2C\x3C\x2F\x70\x3E\x0A\x3C\x70\x72\x65\x3E\x3C\x63\x6F\x64\x65\x3E\x26\x6C\x74\x3B\x73\x63\x72\x69\x70\x74\x26\x67\x74\x3B\x20\x26\x6C\x74\x3B\x73\x74\x61\x72\x74\x26\x67\x74\x3B\x20\x5B\x26\x71\x75\x6F\x74\x3B\x2D\x26\x71\x75\x6F\x74\x3B\x20\x26\x6C\x74\x3B\x65\x6E\x64\x26\x67\x74\x3B\x5D\x20\x2A\x28\x73\x74\x61\x72\x74\x20\x5B\x26\x71\x75\x6F\x74\x3B\x2D\x26\x71\x75\x6F\x74\x3B\x20\x26\x6C\x74\x3B\x65\x6E\x64\x26\x67\x74\x3B\x5D\x29\x0A\x3C\x2F\x63\x6F\x64\x65\x3E\x3C\x2F\x70\x72\x65\x3E\x0A\x3C\x70\x3E\x54\x68\x65\x20\x3C\x21\x2D\x2D\x20\x72\x61\x77\x20\x48\x54\x4D\x4C\x20\x6F\x6D\x69\x74\x74\x65\x64\x20\x2D\x2D\x3E\x20\x61\x72\x67\x75\x6D\x65\x6E\x74\x20\x69\x73\x20\x74\x68\x65\x20\x70\x61\x74\x68\x20\x74\x6F\x20\x74\x68\x65\x20\x61\x77\x77\x61\x6E\x20\x73\x63\x72\x69\x70\x74\x20\x66\x69\x6C\x65\x2E\x3C\x2F\x70\x3E\x0A\x3C\x70\x3E\x54\x68\x65\x20\x3C\x21\x2D\x2D\x20\x72\x61\x77\x20\x48\x54\x4D\x4C\x20\x6F\x6D\x69\x74\x74\x65\x64\x20\x2D\x2D\x3E\x20\x61\x72\x67\x75\x6D\x65\x6E\x74\x20\x69\x73\x20\x6C\x69\x6E\x65\x20\x73\x74\x61\x72\x74\x20\x6E\x75\x6D\x62\x65\x72\x2E\x0A\x49\x74\x73\x20\x64\x65\x66\x69\x6E\x65\x20\x74\x68\x65\x20\x6C\x69\x6E\x65\x20\x6E\x75\x6D\x62\x65\x72\x20\x69\x6E\x20\x74\x68\x65\x20\x73\x63\x72\x69\x70\x74\x20\x77\x68\x65\x72\x65\x20\x61\x77\x77\x61\x6E\x20\x73\x74\x61\x72\x74\x20\x65\x78\x65\x63\x75\x74\x69\x6F\x6E\x2E\x3C\x2F\x70\x3E\x0A\x3C\x70\x3E\x54\x68\x65\x20\x3C\x21\x2D\x2D\x20\x72\x61\x77\x20\x48\x54\x4D\x4C\x20\x6F\x6D\x69\x74\x74\x65\x64\x20\x2D\x2D\x3E\x20\x61\x72\x67\x75\x6D\x65\x6E\x74\x20\x64\x65\x66\x69\x6E\x65\x20\x74\x68\x65\x20\x6C\x69\x6E\x65\x20\x6E\x75\x6D\x62\x65\x72\x20\x69\x6E\x20\x74\x68\x65\x20\x73\x63\x72\x69\x70\x74\x20\x77\x68\x65\x72\x65\x20\x61\x77\x77\x61\x6E\x0A\x73\x74\x6F\x70\x20\x65\x78\x65\x63\x75\x74\x69\x6E\x67\x20\x74\x68\x65\x20\x73\x63\x72\x69\x70\x74\x2C\x20\x6F\x72\x20\x26\x71\x75\x6F\x74\x3B\x2D\x26\x71\x75\x6F\x74\x3B\x20\x65\x6D\x70\x74\x79\x20\x74\x6F\x20\x73\x65\x74\x20\x74\x6F\x20\x74\x68\x65\x20\x6C\x61\x73\x74\x20\x6C\x69\x6E\x65\x2E\x0A\x49\x66\x20\x6E\x6F\x74\x20\x64\x65\x66\x69\x6E\x65\x64\x20\x74\x68\x65\x6E\x20\x69\x74\x73\x20\x65\x71\x75\x61\x6C\x20\x74\x6F\x20\x74\x68\x65\x20\x6C\x69\x6E\x65\x20\x73\x74\x61\x72\x74\x2C\x20\x77\x68\x69\x63\x68\x20\x6D\x65\x61\x6E\x73\x20\x61\x77\x77\x61\x6E\x20\x65\x78\x65\x63\x75\x74\x65\x0A\x6F\x6E\x6C\x79\x20\x73\x69\x6E\x67\x6C\x65\x20\x6C\x69\x6E\x65\x2E\x3C\x2F\x70\x3E\x0A\x3C\x70\x3E\x54\x68\x65\x20\x26\x71\x75\x6F\x74\x3B\x73\x65\x72\x76\x65\x26\x71\x75\x6F\x74\x3B\x20\x63\x6F\x6D\x6D\x61\x6E\x64\x20\x68\x61\x76\x65\x20\x6F\x6E\x6C\x79\x20\x73\x69\x6E\x67\x6C\x65\x20\x61\x72\x67\x75\x6D\x65\x6E\x74\x2C\x3C\x2F\x70\x3E\x0A\x3C\x70\x72\x65\x3E\x3C\x63\x6F\x64\x65\x3E\x26\x6C\x74\x3B\x77\x6F\x72\x6B\x73\x70\x61\x63\x65\x26\x67\x74\x3B\x0A\x3C\x2F\x63\x6F\x64\x65\x3E\x3C\x2F\x70\x72\x65\x3E\x0A\x3C\x70\x3E\x54\x68\x65\x20\x3C\x21\x2D\x2D\x20\x72\x61\x77\x20\x48\x54\x4D\x4C\x20\x6F\x6D\x69\x74\x74\x65\x64\x20\x2D\x2D\x3E\x20\x61\x72\x67\x75\x6D\x65\x6E\x74\x20\x69\x73\x20\x74\x68\x65\x20\x61\x77\x77\x61\x6E\x20\x77\x6F\x72\x6B\x73\x70\x61\x63\x65\x20\x64\x69\x72\x65\x63\x74\x6F\x72\x79\x20\x74\x68\x61\x74\x20\x63\x6F\x6E\x74\x61\x69\x6E\x73\x20\x74\x68\x65\x0A\x2E\x73\x73\x68\x20\x64\x69\x72\x65\x63\x74\x6F\x72\x79\x2E\x3C\x2F\x70\x3E\x0A\x3C\x70\x3E\x48\x65\x72\x65\x20\x69\x73\x20\x73\x6F\x6D\x65\x20\x65\x78\x61\x6D\x70\x6C\x65\x73\x20\x6F\x66\x20\x68\x6F\x77\x20\x74\x6F\x20\x65\x78\x65\x63\x75\x74\x65\x20\x73\x63\x72\x69\x70\x74\x2C\x3C\x2F\x70\x3E\x0A\x3C\x75\x6C\x3E\x0A\x3C\x6C\x69\x3E\x45\x78\x65\x63\x75\x74\x65\x20\x6C\x69\x6E\x65\x20\x35\x2C\x20\x37\x2C\x20\x61\x6E\x64\x20\x31\x30\x20\x75\x6E\x74\x69\x6C\x20\x31\x35\x20\x6F\x66\x20\x26\x71\x75\x6F\x74\x3B\x73\x63\x72\x69\x70\x74\x2E\x61\x77\x77\x26\x71\x75\x6F\x74\x3B\x20\x69\x6E\x20\x6C\x6F\x63\x61\x6C\x20\x73\x79\x73\x74\x65\x6D\x2C\x3C\x2F\x6C\x69\x3E\x0A\x3C\x2F\x75\x6C\x3E\x0A\x3C\x70\x72\x65\x3E\x3C\x63\x6F\x64\x65\x3E\x24\x20\x61\x77\x77\x61\x6E\x20\x6C\x6F\x63\x61\x6C\x20\x6D\x79\x73\x65\x72\x76\x65\x72\x2F\x73\x63\x72\x69\x70\x74\x2E\x61\x77\x77\x20\x35\x2C\x37\x2C\x31\x30\x2D\x31\x35\x0A\x3C\x2F\x63\x6F\x64\x65\x3E\x3C\x2F\x70\x72\x65\x3E\x0A\x3C\x75\x6C\x3E\x0A\x3C\x6C\x69\x3E\x45\x78\x65\x63\x75\x74\x65\x20\x6C\x69\x6E\x65\x20\x36\x20\x61\x6E\x64\x20\x6C\x69\x6E\x65\x20\x31\x32\x20\x75\x6E\x74\x69\x6C\x20\x74\x68\x65\x20\x65\x6E\x64\x20\x6F\x66\x20\x6C\x69\x6E\x65\x20\x6F\x66\x20\x26\x71\x75\x6F\x74\x3B\x73\x63\x72\x69\x70\x74\x2E\x61\x77\x77\x26\x71\x75\x6F\x74\x3B\x20\x69\x6E\x20\x72\x65\x6D\x6F\x74\x65\x0A\x73\x65\x72\x76\x65\x72\x20\x6B\x6E\x6F\x77\x6E\x20\x61\x73\x20\x26\x71\x75\x6F\x74\x3B\x6D\x79\x73\x65\x72\x76\x65\x72\x26\x71\x75\x6F\x74\x3B\x2C\x3C\x2F\x6C\x69\x3E\x0A\x3C\x2F\x75\x6C\x3E\x0A\x3C\x70\x72\x65\x3E\x3C\x63\x6F\x64\x65\x3E\x24\x20\x61\x77\x77\x61\x6E\x20\x70\x6C\x61\x79\x20\x6D\x79\x73\x65\x72\x76\x65\x72\x2F\x73\x63\x72\x69\x70\x74\x2E\x61\x77\x77\x20\x36\x2C\x31\x32\x2D\x0A\x3C\x2F\x63\x6F\x64\x65\x3E\x3C\x2F\x70\x72\x65\x3E\x0A\x3C\x75\x6C\x3E\x0A\x3C\x6C\x69\x3E\x52\x75\x6E\x20\x74\x68\x65\x20\x77\x65\x62\x2D\x75\x73\x65\x72\x20\x69\x6E\x74\x65\x72\x66\x61\x63\x65\x20\x75\x73\x69\x6E\x67\x20\x74\x68\x65\x20\x63\x75\x72\x72\x65\x6E\x74\x20\x64\x69\x72\x65\x63\x74\x6F\x72\x79\x20\x61\x73\x20\x77\x6F\x72\x6B\x73\x70\x61\x63\x65\x2C\x3C\x2F\x6C\x69\x3E\x0A\x3C\x2F\x75\x6C\x3E\x0A\x3C\x70\x72\x65\x3E\x3C\x63\x6F\x64\x65\x3E\x24\x20\x61\x77\x77\x61\x6E\x20\x73\x65\x72\x76\x65\x20\x2E\x0A\x2D\x2D\x2D\x20\x42\x61\x73\x65\x44\x69\x72\x3A\x20\x2E\x0A\x2D\x2D\x2D\x20\x53\x74\x61\x72\x74\x69\x6E\x67\x20\x48\x54\x54\x50\x20\x73\x65\x72\x76\x65\x72\x20\x61\x74\x20\x31\x32\x37\x2E\x30\x2E\x30\x2E\x31\x3A\x31\x37\x36\x30\x30\x0A\x3C\x2F\x63\x6F\x64\x65\x3E\x3C\x2F\x70\x72\x65\x3E\x0A\x3C\x68\x32\x3E\x54\x48\x45\x20\x53\x43\x52\x49\x50\x54\x3C\x2F\x68\x32\x3E\x0A\x3C\x70\x3E\x54\x68\x65\x20\x61\x77\x77\x61\x6E\x20\x73\x63\x72\x69\x70\x74\x20\x69\x73\x20\x73\x69\x6D\x69\x6C\x61\x72\x20\x74\x6F\x20\x73\x68\x65\x6C\x6C\x20\x73\x63\x72\x69\x70\x74\x2E\x0A\x45\x61\x63\x68\x20\x6C\x69\x6E\x65\x20\x73\x74\x61\x72\x74\x65\x64\x20\x77\x69\x74\x68\x20\x27\x23\x27\x20\x69\x73\x20\x61\x20\x63\x6F\x6D\x6D\x65\x6E\x74\x2C\x20\x65\x78\x63\x65\x70\x74\x20\x66\x6F\x72\x20\x73\x70\x65\x63\x69\x61\x6C\x2C\x20\x6D\x61\x67\x69\x63\x20\x77\x6F\x72\x64\x73\x2E\x0A\x45\x61\x63\x68\x20\x73\x74\x61\x74\x65\x6D\x65\x6E\x74\x2C\x20\x65\x69\x74\x68\x65\x72\x20\x69\x6E\x20\x6C\x6F\x63\x61\x6C\x20\x6F\x72\x20\x72\x65\x6D\x6F\x74\x65\x2C\x20\x69\x73\x20\x65\x78\x65\x63\x75\x74\x65\x64\x20\x75\x73\x69\x6E\x67\x20\x26\x71\x75\x6F\x74\x3B\x73\x68\x20\x2D\x63\x26\x71\x75\x6F\x74\x3B\x2E\x3C\x2F\x70\x3E\x0A\x3C\x70\x3E\x54\x68\x65\x72\x65\x20\x61\x72\x65\x20\x66\x69\x76\x65\x20\x6D\x61\x67\x69\x63\x20\x77\x6F\x72\x64\x73\x20\x69\x6E\x20\x74\x68\x65\x20\x73\x63\x72\x69\x70\x74\x3A\x20\x3C\x63\x6F\x64\x65\x3E\x23\x72\x65\x71\x75\x69\x72\x65\x3A\x3C\x2F\x63\x6F\x64\x65\x3E\x2C\x20\x3C\x63\x6F\x64\x65\x3E\x23\x67\x65\x74\x3A\x3C\x2F\x63\x6F\x64\x65\x3E\x2C\x20\x3C\x63\x6F\x64\x65\x3E\x23\x67\x65\x74\x21\x3C\x2F\x63\x6F\x64\x65\x3E\x2C\x0A\x3C\x63\x6F\x64\x65\x3E\x23\x70\x75\x74\x3A\x3C\x2F\x63\x6F\x64\x65\x3E\x2C\x20\x61\x6E\x64\x20\x3C\x63\x6F\x64\x65\x3E\x23\x70\x75\x74\x21\x3C\x2F\x63\x6F\x64\x65\x3E\x2E\x3C\x2F\x70\x3E\x0A\x3C\x70\x3E\x4D\x61\x67\x69\x63\x20\x77\x6F\x72\x64\x20\x3C\x63\x6F\x64\x65\x3E\x23\x72\x65\x71\x75\x69\x72\x65\x3A\x3C\x2F\x63\x6F\x64\x65\x3E\x20\x65\x6E\x73\x75\x72\x65\x20\x74\x68\x61\x74\x20\x74\x68\x65\x20\x73\x74\x61\x74\x65\x6D\x65\x6E\x74\x20\x61\x66\x74\x65\x72\x20\x69\x74\x20\x61\x6C\x77\x61\x79\x73\x20\x65\x78\x65\x63\x75\x74\x65\x64\x20\x65\x76\x65\x6E\x0A\x69\x66\x20\x69\x74\x73\x20\x73\x6B\x69\x70\x70\x65\x64\x20\x62\x79\x20\x6C\x69\x6E\x65\x2D\x73\x74\x61\x72\x74\x20\x6E\x75\x6D\x62\x65\x72\x20\x61\x72\x67\x75\x6D\x65\x6E\x74\x2E\x0A\x46\x6F\x72\x20\x65\x78\x61\x6D\x70\x6C\x65\x2C\x20\x67\x69\x76\x65\x6E\x20\x66\x6F\x6C\x6C\x6F\x77\x69\x6E\x67\x20\x73\x63\x72\x69\x70\x74\x20\x77\x69\x74\x68\x20\x6C\x69\x6E\x65\x20\x6E\x75\x6D\x62\x65\x72\x3C\x2F\x70\x3E\x0A\x3C\x70\x72\x65\x3E\x3C\x63\x6F\x64\x65\x3E\x31\x3A\x20\x23\x72\x65\x71\x75\x69\x72\x65\x3A\x20\x65\x63\x68\x6F\x20\x61\x0A\x32\x3A\x20\x65\x63\x68\x6F\x20\x62\x0A\x33\x3A\x20\x23\x72\x65\x71\x75\x69\x72\x65\x3A\x20\x65\x63\x68\x6F\x20\x63\x0A\x34\x3A\x20\x65\x63\x68\x6F\x20\x64\x0A\x3C\x2F\x63\x6F\x64\x65\x3E\x3C\x2F\x70\x72\x65\x3E\x0A\x3C\x70\x3E\x45\x78\x65\x63\x75\x74\x69\x6E\x67\x20\x26\x71\x75\x6F\x74\x3B\x61\x77\x77\x61\x6E\x20\x6C\x6F\x63\x61\x6C\x20\x73\x63\x72\x69\x70\x74\x2E\x61\x77\x77\x20\x32\x26\x71\x75\x6F\x74\x3B\x2C\x20\x61\x6C\x77\x61\x79\x73\x20\x65\x78\x65\x63\x75\x74\x65\x20\x26\x71\x75\x6F\x74\x3B\x72\x65\x71\x75\x69\x72\x65\x3A\x26\x71\x75\x6F\x74\x3B\x20\x61\x74\x20\x6C\x69\x6E\x65\x20\x6E\x75\x6D\x62\x65\x72\x0A\x31\x20\x3C\x63\x6F\x64\x65\x3E\x65\x63\x68\x6F\x20\x61\x3C\x2F\x63\x6F\x64\x65\x3E\x2C\x20\x73\x6F\x20\x74\x68\x65\x20\x6F\x75\x74\x70\x75\x74\x20\x77\x6F\x75\x6C\x64\x20\x62\x65\x3C\x2F\x70\x3E\x0A\x3C\x70\x72\x65\x3E\x3C\x63\x6F\x64\x65\x3E\x61\x0A\x62\x0A\x3C\x2F\x63\x6F\x64\x65\x3E\x3C\x2F\x70\x72\x65\x3E\x0A\x3C\x70\x3E\x45\x78\x65\x63\x75\x74\x69\x6E\x67\x20\x26\x71\x75\x6F\x74\x3B\x61\x77\x77\x61\x6E\x20\x6C\x6F\x63\x61\x6C\x20\x73\x63\x72\x69\x70\x74\x2E\x61\x77\x77\x20\x34\x26\x71\x75\x6F\x74\x3B\x2C\x20\x61\x6C\x77\x61\x79\x73\x20\x65\x78\x65\x63\x75\x74\x65\x20\x26\x71\x75\x6F\x74\x3B\x72\x65\x71\x75\x69\x72\x65\x3A\x26\x71\x75\x6F\x74\x3B\x20\x6C\x69\x6E\x65\x20\x6E\x75\x6D\x62\x65\x72\x20\x31\x0A\x61\x6E\x64\x20\x33\x2C\x20\x73\x6F\x20\x74\x68\x65\x20\x6F\x75\x74\x70\x75\x74\x20\x77\x6F\x75\x6C\x64\x20\x62\x65\x3C\x2F\x70\x3E\x0A\x3C\x70\x72\x65\x3E\x3C\x63\x6F\x64\x65\x3E\x61\x0A\x63\x0A\x64\x0A\x3C\x2F\x63\x6F\x64\x65\x3E\x3C\x2F\x70\x72\x65\x3E\x0A\x3C\x70\x3E\x4D\x61\x67\x69\x63\x20\x77\x6F\x72\x64\x20\x3C\x63\x6F\x64\x65\x3E\x23\x67\x65\x74\x3A\x3C\x2F\x63\x6F\x64\x65\x3E\x20\x63\x6F\x70\x79\x20\x66\x69\x6C\x65\x20\x66\x72\x6F\x6D\x20\x72\x65\x6D\x6F\x74\x65\x20\x73\x65\x72\x76\x65\x72\x20\x74\x6F\x20\x79\x6F\x75\x72\x20\x6C\x6F\x63\x61\x6C\x20\x66\x69\x6C\x65\x20\x73\x79\x73\x74\x65\x6D\x2E\x0A\x46\x6F\x72\x20\x65\x78\x61\x6D\x70\x6C\x65\x2C\x3C\x2F\x70\x3E\x0A\x3C\x70\x72\x65\x3E\x3C\x63\x6F\x64\x65\x3E\x23\x67\x65\x74\x3A\x20\x2F\x65\x74\x63\x2F\x6F\x73\x2D\x72\x65\x6C\x65\x61\x73\x65\x20\x6F\x73\x2D\x72\x65\x6C\x65\x61\x73\x65\x0A\x3C\x2F\x63\x6F\x64\x65\x3E\x3C\x2F\x70\x72\x65\x3E\x0A\x3C\x70\x3E\x4D\x61\x67\x69\x63\x20\x77\x6F\x72\x64\x20\x3C\x63\x6F\x64\x65\x3E\x23\x67\x65\x74\x21\x3C\x2F\x63\x6F\x64\x65\x3E\x20\x63\x6F\x70\x79\x20\x66\x69\x6C\x65\x20\x66\x72\x6F\x6D\x20\x72\x65\x6D\x6F\x74\x65\x20\x73\x65\x72\x76\x65\x72\x2C\x20\x74\x68\x61\x74\x20\x63\x61\x6E\x20\x62\x65\x20\x61\x63\x63\x65\x73\x73\x65\x64\x20\x6F\x6E\x6C\x79\x20\x62\x79\x0A\x75\x73\x69\x6E\x67\x20\x73\x75\x64\x6F\x2C\x20\x74\x6F\x20\x79\x6F\x75\x72\x20\x6C\x6F\x63\x61\x6C\x20\x66\x69\x6C\x65\x2E\x0A\x46\x6F\x72\x20\x65\x78\x61\x6D\x70\x6C\x65\x2C\x3C\x2F\x70\x3E\x0A\x3C\x70\x72\x65\x3E\x3C\x63\x6F\x64\x65\x3E\x23\x67\x65\x74\x21\x20\x2F\x65\x74\x63\x2F\x6E\x67\x69\x6E\x78\x2F\x73\x73\x6C\x2F\x6D\x79\x2E\x63\x72\x74\x20\x73\x65\x72\x76\x65\x72\x2E\x63\x72\x74\x0A\x3C\x2F\x63\x6F\x64\x65\x3E\x3C\x2F\x70\x72\x65\x3E\x0A\x3C\x70\x3E\x4D\x61\x67\x69\x63\x20\x77\x6F\x72\x64\x20\x3C\x63\x6F\x64\x65\x3E\x23\x70\x75\x74\x3A\x3C\x2F\x63\x6F\x64\x65\x3E\x20\x63\x6F\x70\x79\x20\x66\x69\x6C\x65\x20\x66\x72\x6F\x6D\x20\x79\x6F\x75\x72\x20\x6C\x6F\x63\x61\x6C\x20\x74\x6F\x20\x72\x65\x6D\x6F\x74\x65\x20\x73\x65\x72\x76\x65\x72\x2E\x0A\x46\x6F\x72\x20\x65\x78\x61\x6D\x70\x6C\x65\x2C\x3C\x2F\x70\x3E\x0A\x3C\x70\x72\x65\x3E\x3C\x63\x6F\x64\x65\x3E\x23\x70\x75\x74\x3A\x20\x2F\x65\x74\x63\x2F\x6C\x6F\x63\x61\x6C\x65\x2E\x63\x6F\x6E\x66\x20\x2F\x74\x6D\x70\x2F\x6C\x6F\x63\x61\x6C\x65\x2E\x63\x6F\x6E\x66\x0A\x3C\x2F\x63\x6F\x64\x65\x3E\x3C\x2F\x70\x72\x65\x3E\x0A\x3C\x70\x3E\x4D\x61\x67\x69\x63\x20\x77\x6F\x72\x64\x20\x3C\x63\x6F\x64\x65\x3E\x23\x70\x75\x74\x21\x3C\x2F\x63\x6F\x64\x65\x3E\x20\x63\x6F\x70\x79\x20\x66\x69\x6C\x65\x20\x66\x72\x6F\x6D\x20\x79\x6F\x75\x72\x20\x6C\x6F\x63\x61\x6C\x20\x73\x79\x73\x74\x65\x6D\x20\x74\x6F\x20\x72\x65\x6D\x6F\x74\x65\x20\x73\x65\x72\x76\x65\x72\x20\x75\x73\x69\x6E\x67\x0A\x73\x75\x64\x6F\x2E\x0A\x46\x6F\x72\x20\x65\x78\x61\x6D\x70\x6C\x65\x2C\x3C\x2F\x70\x3E\x0A\x3C\x70\x72\x65\x3E\x3C\x63\x6F\x64\x65\x3E\x23\x70\x75\x74\x21\x20\x2F\x65\x74\x63\x2F\x6C\x6F\x63\x61\x6C\x65\x2E\x63\x6F\x6E\x66\x20\x2F\x65\x74\x63\x2F\x6C\x6F\x63\x61\x6C\x65\x2E\x63\x6F\x6E\x66\x0A\x3C\x2F\x63\x6F\x64\x65\x3E\x3C\x2F\x70\x72\x65\x3E\x0A\x3C\x70\x3E\x48\x65\x72\x65\x20\x69\x73\x20\x61\x6E\x20\x65\x78\x61\x6D\x70\x6C\x65\x20\x6F\x66\x20\x73\x63\x72\x69\x70\x74\x20\x74\x68\x61\x74\x20\x69\x6E\x73\x74\x61\x6C\x6C\x20\x4E\x67\x69\x6E\x78\x20\x6F\x6E\x20\x72\x65\x6D\x6F\x74\x65\x20\x41\x72\x63\x68\x20\x4C\x69\x6E\x75\x78\x20\x73\x65\x72\x76\x65\x72\x0A\x75\x73\x69\x6E\x67\x20\x63\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x20\x66\x72\x6F\x6D\x20\x79\x6F\x75\x72\x20\x6C\x6F\x63\x61\x6C\x20\x63\x6F\x6D\x70\x75\x74\x65\x72\x2C\x3C\x2F\x70\x3E\x0A\x3C\x70\x72\x65\x3E\x3C\x63\x6F\x64\x65\x3E\x73\x75\x64\x6F\x20\x70\x61\x63\x6D\x61\x6E\x20\x2D\x53\x79\x20\x2D\x2D\x6E\x6F\x63\x6F\x6E\x66\x69\x72\x6D\x20\x6E\x67\x69\x6E\x78\x0A\x73\x75\x64\x6F\x20\x73\x79\x73\x74\x65\x6D\x63\x74\x6C\x20\x65\x6E\x61\x62\x6C\x65\x20\x6E\x67\x69\x6E\x78\x0A\x0A\x23\x70\x75\x74\x21\x20\x7B\x7B\x2E\x53\x63\x72\x69\x70\x74\x44\x69\x72\x7D\x7D\x2F\x65\x74\x63\x2F\x6E\x67\x69\x6E\x78\x2F\x6E\x67\x69\x6E\x78\x2E\x63\x6F\x6E\x66\x20\x2F\x65\x74\x63\x2F\x6E\x67\x69\x6E\x78\x2F\x0A\x0A\x73\x75\x64\x6F\x20\x73\x79\x73\x74\x65\x6D\x63\x74\x6C\x20\x72\x65\x73\x74\x61\x72\x74\x20\x6E\x67\x69\x6E\x78\x0A\x73\x75\x64\x6F\x20\x73\x79\x73\x74\x65\x6D\x63\x74\x6C\x20\x73\x74\x61\x74\x75\x73\x20\x6E\x67\x69\x6E\x78\x0A\x3C\x2F\x63\x6F\x64\x65\x3E\x3C\x2F\x70\x72\x65\x3E\x0A\x3C\x68\x32\x3E\x45\x4E\x56\x49\x52\x4F\x4E\x4D\x45\x4E\x54\x20\x46\x49\x4C\x45\x3C\x2F\x68\x32\x3E\x0A\x3C\x70\x3E\x54\x68\x65\x20\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74\x20\x66\x69\x6C\x65\x20\x69\x73\x20\x61\x20\x66\x69\x6C\x65\x20\x6E\x61\x6D\x65\x64\x20\x3C\x63\x6F\x64\x65\x3E\x61\x77\x77\x61\x6E\x2E\x65\x6E\x76\x3C\x2F\x63\x6F\x64\x65\x3E\x20\x74\x68\x61\x74\x20\x63\x6F\x6E\x74\x61\x69\x6E\x73\x20\x76\x61\x72\x69\x61\x62\x6C\x65\x73\x20\x75\x73\x69\x6E\x67\x0A\x74\x68\x65\x20\x66\x6F\x72\x6D\x20\x26\x71\x75\x6F\x74\x3B\x6B\x65\x79\x3D\x76\x61\x6C\x75\x65\x26\x71\x75\x6F\x74\x3B\x20\x74\x68\x61\x74\x20\x63\x61\x6E\x20\x62\x65\x20\x75\x73\x65\x64\x20\x66\x6F\x72\x20\x74\x65\x6D\x70\x6C\x61\x74\x69\x6E\x67\x2E\x3C\x2F\x70\x3E\x0A\x3C\x70\x3E\x57\x68\x65\x6E\x20\x65\x78\x65\x63\x75\x74\x69\x6E\x67\x20\x74\x68\x65\x20\x73\x63\x72\x69\x70\x74\x2C\x20\x3C\x63\x6F\x64\x65\x3E\x61\x77\x77\x61\x6E\x3C\x2F\x63\x6F\x64\x65\x3E\x20\x72\x65\x61\x64\x20\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74\x20\x66\x69\x6C\x65\x73\x20\x69\x6E\x20\x74\x68\x65\x20\x63\x75\x72\x72\x65\x6E\x74\x0A\x64\x69\x72\x65\x63\x74\x6F\x72\x79\x2C\x20\x61\x6E\x64\x20\x69\x6E\x20\x65\x61\x63\x68\x20\x73\x75\x62\x2D\x64\x69\x72\x65\x63\x74\x6F\x72\x79\x2C\x20\x75\x6E\x74\x69\x6C\x20\x74\x68\x65\x20\x73\x63\x72\x69\x70\x74\x20\x64\x69\x72\x65\x63\x74\x6F\x72\x79\x2E\x3C\x2F\x70\x3E\x0A\x3C\x70\x3E\x54\x68\x65\x20\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74\x20\x66\x69\x6C\x65\x20\x75\x73\x65\x20\x74\x68\x65\x20\x69\x6E\x69\x20\x66\x69\x6C\x65\x20\x66\x6F\x72\x6D\x61\x74\x2C\x3C\x2F\x70\x3E\x0A\x3C\x70\x72\x65\x3E\x3C\x63\x6F\x64\x65\x3E\x5B\x73\x65\x63\x74\x69\x6F\x6E\x20\x26\x71\x75\x6F\x74\x3B\x73\x75\x62\x73\x65\x63\x74\x69\x6F\x6E\x26\x71\x75\x6F\x74\x3B\x5D\x0A\x6B\x65\x79\x20\x3D\x20\x76\x61\x6C\x75\x65\x0A\x3C\x2F\x63\x6F\x64\x65\x3E\x3C\x2F\x70\x72\x65\x3E\x0A\x3C\x70\x3E\x57\x65\x20\x77\x69\x6C\x6C\x20\x65\x78\x70\x6C\x61\x69\x6E\x20\x68\x6F\x77\x20\x74\x6F\x20\x75\x73\x65\x20\x61\x6E\x64\x20\x67\x65\x74\x20\x74\x68\x65\x20\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74\x20\x76\x61\x72\x69\x61\x62\x6C\x65\x73\x20\x62\x65\x6C\x6F\x77\x2E\x3C\x2F\x70\x3E\x0A\x3C\x68\x32\x3E\x54\x45\x4D\x50\x4C\x41\x54\x49\x4E\x47\x3C\x2F\x68\x32\x3E\x0A\x3C\x70\x3E\x54\x65\x6D\x70\x6C\x61\x74\x65\x20\x66\x69\x6C\x65\x20\x69\x73\x20\x61\x6E\x79\x20\x74\x65\x78\x74\x20\x6F\x72\x20\x73\x63\x72\x69\x70\x74\x20\x66\x69\x6C\x65\x73\x20\x74\x68\x61\x74\x20\x64\x79\x6E\x61\x6D\x69\x63\x61\x6C\x6C\x79\x20\x67\x65\x6E\x65\x72\x61\x74\x65\x64\x20\x75\x73\x69\x6E\x67\x0A\x76\x61\x6C\x75\x65\x73\x20\x66\x72\x6F\x6D\x20\x76\x61\x72\x69\x61\x62\x6C\x65\x73\x20\x64\x65\x66\x69\x6E\x65\x64\x20\x69\x6E\x20\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74\x20\x66\x69\x6C\x65\x73\x2E\x3C\x2F\x70\x3E\x0A\x3C\x70\x3E\x54\x68\x65\x72\x65\x20\x61\x72\x65\x20\x73\x69\x78\x20\x67\x6C\x6F\x62\x61\x6C\x20\x76\x61\x72\x69\x61\x62\x6C\x65\x73\x20\x74\x68\x61\x74\x20\x73\x68\x61\x72\x65\x64\x20\x74\x6F\x20\x61\x6C\x6C\x20\x74\x65\x6D\x70\x6C\x61\x74\x65\x20\x6F\x72\x20\x73\x63\x72\x69\x70\x74\x20\x66\x69\x6C\x65\x73\x2C\x3C\x2F\x70\x3E\x0A\x3C\x75\x6C\x3E\x0A\x3C\x6C\x69\x3E\x3C\x63\x6F\x64\x65\x3E\x2E\x42\x61\x73\x65\x44\x69\x72\x3C\x2F\x63\x6F\x64\x65\x3E\x20\x63\x6F\x6E\x74\x61\x69\x6E\x73\x20\x74\x68\x65\x20\x61\x62\x73\x6F\x6C\x75\x74\x65\x20\x70\x61\x74\x68\x20\x6F\x66\x20\x63\x75\x72\x72\x65\x6E\x74\x20\x64\x69\x72\x65\x63\x74\x6F\x72\x79\x3C\x2F\x6C\x69\x3E\x0A\x3C\x6C\x69\x3E\x3C\x63\x6F\x64\x65\x3E\x2E\x53\x63\x72\x69\x70\x74\x44\x69\x72\x3C\x2F\x63\x6F\x64\x65\x3E\x20\x63\x6F\x6E\x74\x61\x69\x6E\x73\x20\x74\x68\x65\x20\x72\x65\x6C\x61\x74\x69\x76\x65\x20\x70\x61\x74\x68\x20\x74\x6F\x20\x73\x63\x72\x69\x70\x74\x20\x64\x69\x72\x65\x63\x74\x6F\x72\x79\x3C\x2F\x6C\x69\x3E\x0A\x3C\x6C\x69\x3E\x3C\x63\x6F\x64\x65\x3E\x2E\x53\x53\x48\x4B\x65\x79\x3C\x2F\x63\x6F\x64\x65\x3E\x20\x63\x6F\x6E\x74\x61\x69\x6E\x73\x20\x74\x68\x65\x20\x76\x61\x6C\x75\x65\x20\x6F\x66\x20\x26\x71\x75\x6F\x74\x3B\x49\x64\x65\x6E\x74\x69\x74\x79\x46\x69\x6C\x65\x26\x71\x75\x6F\x74\x3B\x20\x69\x6E\x20\x53\x53\x48\x20\x63\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x3C\x2F\x6C\x69\x3E\x0A\x3C\x6C\x69\x3E\x3C\x63\x6F\x64\x65\x3E\x2E\x53\x53\x48\x55\x73\x65\x72\x3C\x2F\x63\x6F\x64\x65\x3E\x20\x63\x6F\x6E\x74\x61\x69\x6E\x73\x20\x74\x68\x65\x20\x76\x61\x6C\x75\x65\x20\x6F\x66\x20\x26\x71\x75\x6F\x74\x3B\x55\x73\x65\x72\x26\x71\x75\x6F\x74\x3B\x20\x69\x6E\x20\x53\x53\x48\x20\x63\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x3C\x2F\x6C\x69\x3E\x0A\x3C\x6C\x69\x3E\x3C\x63\x6F\x64\x65\x3E\x2E\x53\x53\x48\x48\x6F\x73\x74\x3C\x2F\x63\x6F\x64\x65\x3E\x20\x63\x6F\x6E\x74\x61\x69\x6E\x73\x20\x74\x68\x65\x20\x76\x61\x6C\x75\x65\x20\x6F\x66\x20\x26\x71\x75\x6F\x74\x3B\x48\x6F\x73\x74\x26\x71\x75\x6F\x74\x3B\x20\x69\x6E\x20\x53\x53\x48\x20\x63\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x3C\x2F\x6C\x69\x3E\x0A\x3C\x6C\x69\x3E\x3C\x63\x6F\x64\x65\x3E\x2E\x53\x53\x48\x50\x6F\x72\x74\x3C\x2F\x63\x6F\x64\x65\x3E\x20\x63\x6F\x6E\x74\x61\x69\x6E\x73\x20\x74\x68\x65\x20\x76\x61\x6C\x75\x65\x20\x6F\x66\x20\x26\x71\x75\x6F\x74\x3B\x50\x6F\x72\x74\x26\x71\x75\x6F\x74\x3B\x20\x69\x6E\x20\x53\x53\x48\x20\x63\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x3C\x2F\x6C\x69\x3E\x0A\x3C\x2F\x75\x6C\x3E\x0A\x3C\x70\x3E\x54\x6F\x20\x67\x65\x74\x20\x74\x68\x65\x20\x76\x61\x6C\x75\x65\x20\x77\x72\x61\x70\x20\x74\x68\x65\x20\x76\x61\x72\x69\x61\x62\x6C\x65\x20\x75\x73\x69\x6E\x67\x20\x27\x7B\x7B\x7D\x7D\x27\x20\x66\x6F\x72\x20\x65\x78\x61\x6D\x70\x6C\x65\x2C\x3C\x2F\x70\x3E\x0A\x3C\x70\x72\x65\x3E\x3C\x63\x6F\x64\x65\x3E\x23\x70\x75\x74\x21\x20\x7B\x7B\x2E\x42\x61\x73\x65\x44\x69\x72\x7D\x7D\x2F\x74\x65\x6D\x70\x6C\x61\x74\x65\x73\x2F\x65\x74\x63\x2F\x68\x6F\x73\x74\x73\x20\x2F\x65\x74\x63\x2F\x0A\x23\x70\x75\x74\x21\x20\x7B\x7B\x2E\x53\x63\x72\x69\x70\x74\x44\x69\x72\x7D\x7D\x2F\x65\x74\x63\x2F\x68\x6F\x73\x74\x73\x20\x2F\x65\x74\x63\x2F\x0A\x0A\x73\x63\x70\x20\x2D\x69\x20\x7B\x7B\x2E\x53\x53\x48\x4B\x65\x79\x7D\x7D\x20\x73\x72\x63\x20\x7B\x7B\x2E\x53\x53\x48\x55\x73\x65\x72\x7D\x7D\x40\x7B\x7B\x2E\x53\x53\x48\x48\x6F\x73\x74\x7D\x7D\x3A\x7B\x7B\x2E\x53\x53\x48\x50\x6F\x72\x74\x7D\x7D\x2F\x64\x73\x74\x0A\x3C\x2F\x63\x6F\x64\x65\x3E\x3C\x2F\x70\x72\x65\x3E\x0A\x3C\x70\x3E\x54\x6F\x20\x67\x65\x74\x20\x74\x68\x65\x20\x76\x61\x6C\x75\x65\x20\x6F\x66\x20\x76\x61\x72\x69\x61\x62\x6C\x65\x20\x69\x6E\x20\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74\x20\x66\x69\x6C\x65\x20\x79\x6F\x75\x20\x70\x75\x74\x20\x74\x68\x65\x20\x73\x74\x72\x69\x6E\x67\x20\x26\x71\x75\x6F\x74\x3B\x2E\x56\x61\x6C\x26\x71\x75\x6F\x74\x3B\x0A\x66\x6F\x6C\x6C\x6F\x77\x65\x64\x20\x62\x79\x20\x73\x65\x63\x74\x69\x6F\x6E\x2C\x20\x73\x75\x62\x73\x65\x63\x74\x69\x6F\x6E\x20\x61\x6E\x64\x20\x6B\x65\x79\x20\x6E\x61\x6D\x65\x73\x2C\x20\x65\x61\x63\x68\x20\x73\x65\x70\x61\x72\x61\x74\x65\x64\x20\x62\x79\x20\x63\x6F\x6C\x6F\x6E\x20\x26\x71\x75\x6F\x74\x3B\x3A\x26\x71\x75\x6F\x74\x3B\x2E\x0A\x49\x66\x20\x6E\x6F\x20\x73\x75\x62\x73\x65\x63\x74\x69\x6F\x6E\x20\x65\x78\x69\x73\x74\x20\x79\x6F\x75\x20\x63\x61\x6E\x20\x6C\x65\x61\x76\x65\x20\x69\x74\x20\x65\x6D\x70\x74\x79\x2E\x3C\x2F\x70\x3E\x0A\x3C\x70\x3E\x59\x6F\x75\x20\x63\x61\x6E\x20\x70\x75\x74\x20\x74\x68\x65\x20\x76\x61\x72\x69\x61\x62\x6C\x65\x20\x69\x6E\x73\x69\x64\x65\x20\x74\x68\x65\x20\x73\x63\x72\x69\x70\x74\x20\x6F\x72\x20\x69\x6E\x20\x74\x68\x65\x20\x66\x69\x6C\x65\x20\x74\x68\x61\x74\x20\x79\x6F\x75\x20\x77\x61\x6E\x74\x20\x74\x6F\x0A\x63\x6F\x70\x79\x2E\x3C\x2F\x70\x3E\x0A\x3C\x70\x3E\x46\x6F\x72\x20\x65\x78\x61\x6D\x70\x6C\x65\x2C\x20\x67\x69\x76\x65\x6E\x20\x74\x68\x65\x20\x66\x6F\x6C\x6C\x6F\x77\x69\x6E\x67\x20\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74\x20\x66\x69\x6C\x65\x2C\x3C\x2F\x70\x3E\x0A\x3C\x70\x72\x65\x3E\x3C\x63\x6F\x64\x65\x3E\x5B\x61\x6C\x6C\x5D\x0A\x75\x73\x65\x72\x20\x3D\x20\x61\x72\x63\x68\x0A\x0A\x5B\x77\x68\x69\x74\x65\x6C\x69\x73\x74\x20\x26\x71\x75\x6F\x74\x3B\x69\x70\x26\x71\x75\x6F\x74\x3B\x5D\x0A\x61\x6C\x70\x68\x61\x20\x3D\x20\x31\x2E\x32\x2E\x33\x2E\x34\x2F\x33\x32\x0A\x62\x65\x74\x61\x20\x20\x3D\x20\x32\x2E\x33\x2E\x34\x2E\x35\x2F\x33\x32\x0A\x3C\x2F\x63\x6F\x64\x65\x3E\x3C\x2F\x70\x72\x65\x3E\x0A\x3C\x75\x6C\x3E\x0A\x3C\x6C\x69\x3E\x3C\x63\x6F\x64\x65\x3E\x7B\x7B\x2E\x56\x61\x6C\x20\x26\x71\x75\x6F\x74\x3B\x61\x6C\x6C\x3A\x3A\x75\x73\x65\x72\x26\x71\x75\x6F\x74\x3B\x7D\x7D\x3C\x2F\x63\x6F\x64\x65\x3E\x20\x72\x65\x73\x75\x6C\x74\x20\x74\x6F\x20\x26\x71\x75\x6F\x74\x3B\x61\x72\x63\x68\x26\x71\x75\x6F\x74\x3B\x20\x28\x77\x69\x74\x68\x6F\x75\x74\x20\x64\x6F\x75\x62\x6C\x65\x20\x71\x75\x6F\x74\x65\x29\x2C\x20\x61\x6E\x64\x3C\x2F\x6C\x69\x3E\x0A\x3C\x6C\x69\x3E\x3C\x63\x6F\x64\x65\x3E\x7B\x7B\x2E\x56\x61\x6C\x20\x26\x71\x75\x6F\x74\x3B\x77\x68\x69\x74\x65\x6C\x69\x73\x74\x3A\x69\x70\x3A\x61\x6C\x70\x68\x61\x26\x71\x75\x6F\x74\x3B\x7D\x7D\x3C\x2F\x63\x6F\x64\x65\x3E\x20\x72\x65\x73\x75\x6C\x74\x20\x74\x6F\x20\x26\x71\x75\x6F\x74\x3B\x31\x2E\x32\x2E\x33\x2E\x34\x2F\x33\x32\x26\x71\x75\x6F\x74\x3B\x0A\x28\x77\x69\x74\x68\x6F\x75\x74\x20\x64\x6F\x75\x62\x6C\x65\x20\x71\x75\x6F\x74\x65\x29\x3C\x2F\x6C\x69\x3E\x0A\x3C\x2F\x75\x6C\x3E\x0A\x3C\x68\x32\x3E\x54\x48\x45\x20\x53\x53\x48\x20\x43\x4F\x4E\x46\x49\x47\x3C\x2F\x68\x32\x3E\x0A\x3C\x70\x3E\x41\x66\x74\x65\x72\x20\x77\x65\x20\x6C\x65\x61\x72\x6E\x20\x61\x62\x6F\x75\x74\x20\x74\x68\x65\x20\x63\x6F\x6D\x6D\x61\x6E\x64\x2C\x20\x73\x63\x72\x69\x70\x74\x2C\x20\x76\x61\x72\x69\x61\x62\x6C\x65\x73\x2C\x20\x61\x6E\x64\x20\x74\x65\x6D\x70\x6C\x61\x74\x69\x6E\x67\x3B\x20\x77\x65\x20\x6E\x65\x65\x64\x0A\x74\x6F\x20\x65\x78\x70\x6C\x61\x69\x6E\x20\x73\x6F\x6D\x65\x20\x66\x69\x6C\x65\x20\x61\x6E\x64\x20\x64\x69\x72\x65\x63\x74\x6F\x72\x79\x20\x73\x74\x72\x75\x63\x74\x75\x72\x65\x20\x74\x68\x61\x74\x20\x72\x65\x71\x75\x69\x72\x65\x64\x20\x62\x79\x20\x3C\x63\x6F\x64\x65\x3E\x61\x77\x77\x61\x6E\x3C\x2F\x63\x6F\x64\x65\x3E\x20\x73\x6F\x20\x69\x74\x0A\x63\x61\x6E\x20\x63\x6F\x6E\x6E\x65\x63\x74\x20\x74\x6F\x20\x74\x68\x65\x20\x53\x53\x48\x20\x73\x65\x72\x76\x65\x72\x2E\x3C\x2F\x70\x3E\x0A\x3C\x70\x3E\x54\x6F\x20\x62\x65\x20\x61\x62\x6C\x65\x20\x74\x6F\x20\x63\x6F\x6E\x6E\x65\x63\x74\x20\x74\x6F\x20\x74\x68\x65\x20\x72\x65\x6D\x6F\x74\x65\x20\x53\x53\x48\x20\x73\x65\x72\x76\x65\x72\x2C\x20\x3C\x63\x6F\x64\x65\x3E\x61\x77\x77\x61\x6E\x3C\x2F\x63\x6F\x64\x65\x3E\x20\x6E\x65\x65\x64\x20\x74\x6F\x20\x6B\x6E\x6F\x77\x20\x74\x68\x65\x0A\x72\x65\x6D\x6F\x74\x65\x20\x68\x6F\x73\x74\x20\x6E\x61\x6D\x65\x2C\x20\x72\x65\x6D\x6F\x74\x65\x20\x75\x73\x65\x72\x2C\x20\x61\x6E\x64\x20\x6C\x6F\x63\x61\x74\x69\x6F\x6E\x20\x6F\x66\x20\x70\x72\x69\x76\x61\x74\x65\x20\x6B\x65\x79\x20\x66\x69\x6C\x65\x2E\x0A\x41\x6C\x6C\x20\x6F\x66\x20\x74\x68\x69\x73\x20\x61\x72\x65\x20\x64\x65\x72\x69\x76\x65\x64\x20\x66\x72\x6F\x6D\x20\x73\x73\x68\x5F\x63\x6F\x6E\x66\x69\x67\x28\x35\x29\x20\x66\x69\x6C\x65\x20\x69\x6E\x20\x74\x68\x65\x20\x63\x75\x72\x72\x65\x6E\x74\x20\x64\x69\x72\x65\x63\x74\x6F\x72\x79\x20\x61\x6E\x64\x0A\x69\x6E\x20\x74\x68\x65\x20\x75\x73\x65\x72\x27\x73\x20\x68\x6F\x6D\x65\x20\x64\x69\x72\x65\x63\x74\x6F\x72\x79\x2E\x3C\x2F\x70\x3E\x0A\x3C\x70\x3E\x54\x68\x65\x20\x72\x65\x6D\x6F\x74\x65\x20\x68\x6F\x73\x74\x20\x6E\x61\x6D\x65\x20\x69\x73\x20\x64\x65\x72\x69\x76\x65\x64\x20\x66\x72\x6F\x6D\x20\x64\x69\x72\x65\x63\x74\x6F\x72\x79\x20\x6E\x61\x6D\x65\x20\x6F\x66\x20\x74\x68\x65\x20\x73\x63\x72\x69\x70\x74\x20\x66\x69\x6C\x65\x2E\x0A\x49\x74\x20\x69\x73\x20\x6D\x61\x74\x63\x68\x65\x64\x20\x77\x69\x74\x68\x20\x3C\x63\x6F\x64\x65\x3E\x48\x6F\x73\x74\x3C\x2F\x63\x6F\x64\x65\x3E\x20\x6F\x72\x20\x3C\x63\x6F\x64\x65\x3E\x4D\x61\x74\x63\x68\x3C\x2F\x63\x6F\x64\x65\x3E\x20\x73\x65\x63\x74\x69\x6F\x6E\x20\x69\x6E\x20\x74\x68\x65\x20\x73\x73\x68\x5F\x63\x6F\x6E\x66\x69\x67\x28\x35\x29\x20\x66\x69\x6C\x65\x2E\x3C\x2F\x70\x3E\x0A\x3C\x70\x3E\x46\x6F\x72\x20\x65\x78\x61\x6D\x70\x6C\x65\x2C\x20\x67\x69\x76\x65\x6E\x20\x74\x68\x65\x20\x66\x6F\x6C\x6C\x6F\x77\x69\x6E\x67\x20\x64\x69\x72\x65\x63\x74\x6F\x72\x79\x20\x73\x74\x72\x75\x63\x74\x75\x72\x65\x2C\x3C\x2F\x70\x3E\x0A\x3C\x70\x72\x65\x3E\x3C\x63\x6F\x64\x65\x3E\x2E\x0A\x7C\x0A\x2B\x2D\x2D\x20\x2E\x73\x73\x68\x2F\x0A\x7C\x20\x20\x20\x7C\x0A\x7C\x20\x20\x20\x2D\x2D\x2D\x20\x63\x6F\x6E\x66\x69\x67\x0A\x2B\x2D\x2D\x20\x64\x65\x76\x65\x6C\x6F\x70\x6D\x65\x6E\x74\x0A\xC2\xA0\xC2\xA0\x20\x20\x7C\x0A\x20\x20\x20\x20\x2D\x2D\x2D\x20\x73\x63\x72\x69\x70\x74\x2E\x61\x77\x77\x0A\x3C\x2F\x63\x6F\x64\x65\x3E\x3C\x2F\x70\x72\x65\x3E\x0A\x3C\x70\x3E\x49\x66\x20\x77\x65\x20\x65\x78\x65\x63\x75\x74\x65\x20\x74\x68\x65\x20\x26\x71\x75\x6F\x74\x3B\x64\x65\x76\x65\x6C\x6F\x70\x6D\x65\x6E\x74\x2F\x73\x63\x72\x69\x70\x74\x2E\x61\x77\x77\x26\x71\x75\x6F\x74\x3B\x2C\x20\x61\x77\x77\x61\x6E\x20\x73\x65\x61\x72\x63\x68\x20\x66\x6F\x72\x20\x74\x68\x65\x20\x48\x6F\x73\x74\x20\x74\x68\x61\x74\x0A\x6D\x61\x74\x63\x68\x20\x77\x69\x74\x68\x20\x26\x71\x75\x6F\x74\x3B\x64\x65\x76\x65\x6C\x6F\x70\x6D\x65\x6E\x74\x26\x71\x75\x6F\x74\x3B\x20\x69\x6E\x20\x63\x75\x72\x72\x65\x6E\x74\x20\x26\x71\x75\x6F\x74\x3B\x2E\x73\x73\x68\x2F\x63\x6F\x6E\x66\x69\x67\x26\x71\x75\x6F\x74\x3B\x20\x6F\x72\x20\x69\x6E\x20\x26\x71\x75\x6F\x74\x3B\x7E\x2F\x2E\x73\x73\x68\x2F\x63\x6F\x6E\x66\x69\x67\x26\x71\x75\x6F\x74\x3B\x2E\x3C\x2F\x70\x3E\x0A\x3C\x68\x32\x3E\x45\x58\x41\x4D\x50\x4C\x45\x3C\x2F\x68\x32\x3E\x0A\x3C\x70\x3E\x54\x6F\x20\x67\x69\x76\x65\x20\x79\x6F\x75\x20\x74\x68\x65\x20\x74\x61\x73\x74\x65\x20\x6F\x66\x20\x74\x68\x65\x20\x69\x64\x65\x61\x2C\x20\x77\x65\x20\x77\x69\x6C\x6C\x20\x73\x68\x6F\x77\x20\x79\x6F\x75\x20\x61\x6E\x20\x65\x78\x61\x6D\x70\x6C\x65\x20\x75\x73\x69\x6E\x67\x20\x74\x68\x65\x0A\x77\x6F\x72\x6B\x69\x6E\x67\x20\x64\x69\x72\x65\x63\x74\x6F\x72\x79\x20\x24\x57\x4F\x52\x4B\x44\x49\x52\x20\x61\x73\x20\x6F\x75\x72\x20\x62\x61\x73\x65\x20\x64\x69\x72\x65\x63\x74\x6F\x72\x79\x2E\x3C\x2F\x70\x3E\x0A\x3C\x70\x3E\x4C\x65\x74\x20\x73\x61\x79\x20\x74\x68\x61\x74\x20\x77\x65\x20\x68\x61\x76\x65\x20\x74\x68\x65\x20\x77\x6F\x72\x6B\x69\x6E\x67\x20\x72\x65\x6D\x6F\x74\x65\x20\x73\x65\x72\x76\x65\x72\x20\x6E\x61\x6D\x65\x64\x20\x26\x71\x75\x6F\x74\x3B\x6D\x79\x73\x65\x72\x76\x65\x72\x26\x71\x75\x6F\x74\x3B\x20\x61\x74\x20\x49\x50\x20\x61\x64\x64\x72\x65\x73\x73\x0A\x26\x71\x75\x6F\x74\x3B\x31\x2E\x32\x2E\x33\x2E\x34\x26\x71\x75\x6F\x74\x3B\x20\x75\x73\x69\x6E\x67\x20\x75\x73\x65\x72\x6E\x61\x6D\x65\x20\x26\x71\x75\x6F\x74\x3B\x61\x72\x63\x68\x26\x71\x75\x6F\x74\x3B\x20\x6F\x6E\x20\x70\x6F\x72\x74\x20\x26\x71\x75\x6F\x74\x3B\x32\x32\x32\x32\x26\x71\x75\x6F\x74\x3B\x2E\x3C\x2F\x70\x3E\x0A\x3C\x70\x3E\x49\x6E\x20\x74\x68\x65\x20\x24\x57\x4F\x52\x4B\x44\x49\x52\x2C\x20\x63\x72\x65\x61\x74\x65\x20\x64\x69\x72\x65\x63\x74\x6F\x72\x79\x20\x26\x71\x75\x6F\x74\x3B\x2E\x73\x73\x68\x26\x71\x75\x6F\x74\x3B\x20\x61\x6E\x64\x20\x26\x71\x75\x6F\x74\x3B\x63\x6F\x6E\x66\x69\x67\x26\x71\x75\x6F\x74\x3B\x20\x66\x69\x6C\x65\x2C\x3C\x2F\x70\x3E\x0A\x3C\x70\x72\x65\x3E\x3C\x63\x6F\x64\x65\x3E\x24\x20\x6D\x6B\x64\x69\x72\x20\x2D\x70\x20\x2E\x73\x73\x68\x0A\x24\x20\x63\x61\x74\x20\x26\x67\x74\x3B\x20\x2E\x73\x73\x68\x2F\x63\x6F\x6E\x66\x69\x67\x20\x26\x6C\x74\x3B\x26\x6C\x74\x3B\x45\x4F\x46\x0A\x48\x6F\x73\x74\x20\x6D\x79\x73\x65\x72\x76\x65\x72\x0A\x09\x48\x6F\x73\x74\x6E\x61\x6D\x65\x20\x31\x2E\x32\x2E\x33\x2E\x34\x0A\x09\x55\x73\x65\x72\x20\x61\x72\x63\x68\x0A\x09\x50\x6F\x72\x74\x20\x32\x32\x32\x32\x0A\x09\x49\x64\x65\x6E\x74\x69\x74\x79\x46\x69\x6C\x65\x20\x2E\x73\x73\x68\x2F\x6D\x79\x73\x65\x72\x76\x65\x72\x0A\x45\x4F\x46\x0A\x3C\x2F\x63\x6F\x64\x65\x3E\x3C\x2F\x70\x72\x65\x3E\x0A\x3C\x70\x3E\x53\x74\x69\x6C\x6C\x20\x69\x6E\x20\x74\x68\x65\x20\x24\x57\x4F\x52\x4B\x44\x49\x52\x2C\x20\x63\x72\x65\x61\x74\x65\x20\x20\x74\x68\x65\x20\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74\x20\x66\x69\x6C\x65\x20\x26\x71\x75\x6F\x74\x3B\x61\x77\x77\x61\x6E\x2E\x65\x6E\x76\x26\x71\x75\x6F\x74\x3B\x3C\x2F\x70\x3E\x0A\x3C\x70\x72\x65\x3E\x3C\x63\x6F\x64\x65\x3E\x24\x20\x63\x61\x74\x20\x26\x67\x74\x3B\x20\x61\x77\x77\x61\x6E\x2E\x65\x6E\x76\x20\x26\x6C\x74\x3B\x26\x6C\x74\x3B\x45\x4F\x46\x0A\x5B\x61\x6C\x6C\x5D\x0A\x75\x73\x65\x72\x20\x3D\x20\x61\x72\x63\x68\x0A\x68\x6F\x73\x74\x20\x3D\x20\x6D\x79\x73\x65\x72\x76\x65\x72\x0A\x0A\x5B\x77\x68\x69\x74\x65\x6C\x69\x73\x74\x20\x26\x71\x75\x6F\x74\x3B\x69\x70\x26\x71\x75\x6F\x74\x3B\x5D\x0A\x61\x6C\x70\x68\x61\x20\x3D\x20\x31\x2E\x32\x2E\x33\x2E\x34\x2F\x33\x32\x0A\x62\x65\x74\x61\x20\x20\x3D\x20\x32\x2E\x33\x2E\x34\x2E\x35\x2F\x33\x32\x0A\x45\x4F\x46\x0A\x3C\x2F\x63\x6F\x64\x65\x3E\x3C\x2F\x70\x72\x65\x3E\x0A\x3C\x70\x3E\x49\x6E\x73\x69\x64\x65\x20\x74\x68\x65\x20\x24\x57\x4F\x52\x4B\x44\x49\x52\x20\x77\x65\x20\x63\x72\x65\x61\x74\x65\x20\x74\x68\x65\x20\x64\x69\x72\x65\x63\x74\x6F\x72\x79\x20\x74\x68\x61\x74\x20\x6D\x61\x74\x63\x68\x20\x77\x69\x74\x68\x20\x6F\x75\x72\x20\x73\x65\x72\x76\x65\x72\x20\x6E\x61\x6D\x65\x0A\x61\x6E\x64\x20\x61\x20\x73\x63\x72\x69\x70\x74\x20\x66\x69\x6C\x65\x20\x26\x71\x75\x6F\x74\x3B\x74\x65\x73\x74\x2E\x61\x77\x77\x26\x71\x75\x6F\x74\x3B\x2C\x3C\x2F\x70\x3E\x0A\x3C\x70\x72\x65\x3E\x3C\x63\x6F\x64\x65\x3E\x24\x20\x6D\x6B\x64\x69\x72\x20\x2D\x70\x20\x6D\x79\x73\x65\x72\x76\x65\x72\x0A\x24\x20\x63\x61\x74\x20\x26\x67\x74\x3B\x20\x6D\x79\x73\x65\x72\x76\x65\x72\x2F\x74\x65\x73\x74\x2E\x61\x77\x77\x20\x26\x6C\x74\x3B\x26\x6C\x74\x3B\x45\x4F\x46\x0A\x65\x63\x68\x6F\x20\x7B\x7B\x2E\x56\x61\x6C\x20\x26\x71\x75\x6F\x74\x3B\x61\x6C\x6C\x3A\x3A\x68\x6F\x73\x74\x26\x71\x75\x6F\x74\x3B\x7D\x7D\x60\x0A\x23\x70\x75\x74\x3A\x20\x7B\x7B\x2E\x53\x63\x72\x69\x70\x74\x44\x69\x72\x7D\x7D\x2F\x74\x65\x73\x74\x20\x2F\x74\x6D\x70\x2F\x0A\x63\x61\x74\x20\x2F\x74\x6D\x70\x2F\x74\x65\x73\x74\x0A\x45\x4F\x46\x0A\x3C\x2F\x63\x6F\x64\x65\x3E\x3C\x2F\x70\x72\x65\x3E\x0A\x3C\x70\x3E\x61\x6E\x64\x20\x61\x20\x74\x65\x6D\x70\x6C\x61\x74\x65\x20\x66\x69\x6C\x65\x20\x26\x71\x75\x6F\x74\x3B\x74\x65\x73\x74\x26\x71\x75\x6F\x74\x3B\x2C\x3C\x2F\x70\x3E\x0A\x3C\x70\x72\x65\x3E\x3C\x63\x6F\x64\x65\x3E\x24\x20\x63\x61\x74\x20\x26\x67\x74\x3B\x20\x6D\x79\x73\x65\x72\x76\x65\x72\x2F\x74\x65\x73\x74\x20\x26\x6C\x74\x3B\x26\x6C\x74\x3B\x45\x4F\x46\x0A\x48\x69\x20\x7B\x7B\x2E\x56\x61\x6C\x20\x26\x71\x75\x6F\x74\x3B\x61\x6C\x6C\x3A\x3A\x75\x73\x65\x72\x26\x71\x75\x6F\x74\x3B\x7D\x7D\x21\x0A\x45\x4F\x46\x0A\x3C\x2F\x63\x6F\x64\x65\x3E\x3C\x2F\x70\x72\x65\x3E\x0A\x3C\x70\x3E\x57\x68\x65\x6E\x20\x65\x78\x65\x63\x75\x74\x65\x64\x20\x66\x72\x6F\x6D\x20\x73\x74\x61\x72\x74\x20\x74\x6F\x20\x65\x6E\x64\x20\x6C\x69\x6B\x65\x20\x74\x68\x65\x73\x65\x2C\x3C\x2F\x70\x3E\x0A\x3C\x70\x72\x65\x3E\x3C\x63\x6F\x64\x65\x3E\x24\x20\x61\x77\x77\x61\x6E\x20\x70\x6C\x61\x79\x20\x6D\x79\x73\x65\x72\x76\x65\x72\x2F\x74\x65\x73\x74\x2E\x61\x77\x77\x20\x31\x2D\x0A\x3C\x2F\x63\x6F\x64\x65\x3E\x3C\x2F\x70\x72\x65\x3E\x0A\x3C\x70\x3E\x69\x74\x20\x70\x72\x69\x6E\x74\x73\x20\x74\x68\x65\x20\x66\x6F\x6C\x6C\x6F\x77\x69\x6E\x67\x20\x6F\x75\x74\x70\x75\x74\x20\x74\x6F\x20\x74\x65\x72\x6D\x69\x6E\x61\x6C\x2C\x3C\x2F\x70\x3E\x0A\x3C\x70\x72\x65\x3E\x3C\x63\x6F\x64\x65\x3E\x26\x67\x74\x3B\x26\x67\x74\x3B\x26\x67\x74\x3B\x20\x61\x72\x63\x68\x40\x31\x2E\x32\x2E\x33\x2E\x34\x3A\x32\x32\x32\x32\x3A\x20\x31\x3A\x20\x65\x63\x68\x6F\x20\x6D\x79\x73\x65\x72\x76\x65\x72\x0A\x0A\x6D\x79\x73\x65\x72\x76\x65\x72\x0A\x74\x65\x73\x74\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\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x31\x30\x30\x25\x20\x20\x20\x20\x39\x20\x20\x20\x20\x20\x30\x2E\x34\x4B\x42\x2F\x73\x20\x20\x20\x30\x30\x3A\x30\x30\x0A\x26\x67\x74\x3B\x26\x67\x74\x3B\x26\x67\x74\x3B\x20\x61\x72\x63\x68\x40\x31\x2E\x32\x2E\x33\x2E\x34\x3A\x32\x32\x32\x32\x3A\x20\x33\x3A\x20\x63\x61\x74\x20\x2F\x74\x6D\x70\x2F\x74\x65\x73\x74\x0A\x0A\x48\x69\x20\x61\x72\x63\x68\x21\x0A\x3C\x2F\x63\x6F\x64\x65\x3E\x3C\x2F\x70\x72\x65\x3E\x0A\x3C\x70\x3E\x54\x68\x61\x74\x27\x73\x20\x69\x74\x2E\x3C\x2F\x70\x3E\x0A\x3C\x68\x32\x3E\x46\x41\x51\x3C\x2F\x68\x32\x3E\x0A\x3C\x68\x33\x3E\x57\x6F\x72\x6B\x73\x70\x61\x63\x65\x20\x73\x74\x72\x75\x63\x74\x75\x72\x65\x3C\x2F\x68\x33\x3E\x0A\x3C\x70\x3E\x42\x65\x73\x69\x64\x65\x20\x26\x71\x75\x6F\x74\x3B\x2E\x73\x73\x68\x26\x71\x75\x6F\x74\x3B\x20\x64\x69\x72\x65\x63\x74\x6F\x72\x79\x20\x61\x6E\x64\x20\x64\x69\x72\x65\x63\x74\x6F\x72\x79\x20\x61\x73\x20\x68\x6F\x73\x74\x20\x6E\x61\x6D\x65\x2C\x20\x3C\x63\x6F\x64\x65\x3E\x61\x77\x77\x61\x6E\x3C\x2F\x63\x6F\x64\x65\x3E\x20\x64\x69\x64\x20\x6E\x6F\x74\x20\x72\x65\x71\x75\x69\x72\x65\x0A\x61\x6E\x79\x20\x6F\x74\x68\x65\x72\x20\x73\x70\x65\x63\x69\x61\x6C\x20\x64\x69\x72\x65\x63\x74\x6F\x72\x79\x20\x62\x75\x74\x20\x77\x65\x20\x72\x65\x61\x6C\x6C\x79\x20\x72\x65\x63\x6F\x6D\x6D\x65\x6E\x64\x20\x74\x68\x61\x74\x20\x79\x6F\x75\x20\x75\x73\x65\x20\x73\x75\x62\x20\x64\x69\x72\x65\x63\x74\x6F\x72\x79\x0A\x74\x6F\x20\x67\x72\x6F\x75\x70\x20\x73\x65\x76\x65\x72\x61\x6C\x20\x6E\x6F\x64\x65\x73\x20\x6F\x6E\x20\x73\x65\x76\x65\x72\x61\x6C\x20\x63\x6C\x6F\x75\x64\x20\x73\x65\x72\x76\x69\x63\x65\x73\x2E\x0A\x46\x6F\x72\x20\x65\x78\x61\x6D\x70\x6C\x65\x2C\x20\x69\x66\x20\x79\x6F\x75\x20\x75\x73\x65\x20\x63\x6C\x6F\x75\x64\x20\x73\x65\x72\x76\x69\x63\x65\x73\x20\x77\x69\x74\x68\x20\x73\x65\x76\x65\x72\x61\x6C\x20\x6E\x6F\x64\x65\x73\x20\x69\x6E\x73\x69\x64\x65\x20\x69\x74\x2C\x20\x77\x65\x0A\x72\x65\x63\x6F\x6D\x6D\x65\x6E\x64\x20\x74\x68\x65\x20\x66\x6F\x6C\x6C\x6F\x77\x69\x6E\x67\x20\x64\x69\x72\x65\x63\x74\x6F\x72\x79\x20\x73\x74\x72\x75\x63\x74\x75\x72\x65\x73\x2C\x3C\x2F\x70\x3E\x0A\x3C\x70\x72\x65\x3E\x3C\x63\x6F\x64\x65\x3E\x26\x6C\x74\x3B\x63\x6C\x6F\x75\x64\x2D\x73\x65\x72\x76\x69\x63\x65\x26\x67\x74\x3B\x2F\x26\x6C\x74\x3B\x70\x72\x6F\x6A\x65\x63\x74\x2D\x6E\x61\x6D\x65\x26\x67\x74\x3B\x2F\x26\x6C\x74\x3B\x73\x65\x72\x76\x69\x63\x65\x2D\x6E\x61\x6D\x65\x26\x67\x74\x3B\x2F\x26\x6C\x74\x3B\x6E\x6F\x64\x65\x2D\x6E\x61\x6D\x65\x26\x67\x74\x3B\x0A\x3C\x2F\x63\x6F\x64\x65\x3E\x3C\x2F\x70\x72\x65\x3E\x0A\x3C\x70\x3E\x54\x68\x65\x20\x3C\x63\x6F\x64\x65\x3E\x26\x6C\x74\x3B\x63\x6C\x6F\x75\x64\x2D\x73\x65\x72\x76\x69\x63\x65\x26\x67\x74\x3B\x3C\x2F\x63\x6F\x64\x65\x3E\x20\x69\x73\x20\x74\x68\x65\x20\x6E\x61\x6D\x65\x20\x6F\x66\x20\x79\x6F\x75\x72\x20\x72\x65\x6D\x6F\x74\x65\x20\x73\x65\x72\x76\x65\x72\x2C\x20\x69\x74\x20\x63\x6F\x75\x6C\x64\x20\x62\x65\x20\x26\x71\x75\x6F\x74\x3B\x41\x57\x53\x26\x71\x75\x6F\x74\x3B\x2C\x0A\x26\x71\x75\x6F\x74\x3B\x47\x43\x50\x26\x71\x75\x6F\x74\x3B\x2C\x20\x26\x71\x75\x6F\x74\x3B\x44\x4F\x26\x71\x75\x6F\x74\x3B\x2C\x20\x61\x6E\x64\x20\x6F\x74\x68\x65\x72\x73\x2E\x0A\x54\x68\x65\x20\x3C\x63\x6F\x64\x65\x3E\x26\x6C\x74\x3B\x70\x72\x6F\x6A\x65\x63\x74\x2D\x6E\x61\x6D\x65\x26\x67\x74\x3B\x3C\x2F\x63\x6F\x64\x65\x3E\x20\x69\x73\x20\x79\x6F\x75\x72\x20\x61\x63\x63\x6F\x75\x6E\x74\x20\x49\x44\x20\x69\x6E\x20\x79\x6F\x75\x72\x20\x63\x6C\x6F\x75\x64\x20\x73\x65\x72\x76\x69\x63\x65\x20\x6F\x72\x20\x79\x6F\x75\x72\x20\x70\x72\x6F\x6A\x65\x63\x74\x0A\x6E\x61\x6D\x65\x2E\x0A\x54\x68\x65\x20\x3C\x63\x6F\x64\x65\x3E\x26\x6C\x74\x3B\x73\x65\x72\x76\x69\x63\x65\x2D\x6E\x61\x6D\x65\x26\x67\x74\x3B\x3C\x2F\x63\x6F\x64\x65\x3E\x20\x69\x73\x20\x61\x20\x67\x72\x6F\x75\x70\x20\x6F\x66\x20\x73\x65\x76\x65\x72\x61\x6C\x20\x6E\x6F\x64\x65\x73\x2C\x20\x66\x6F\x72\x20\x65\x78\x61\x6D\x70\x6C\x65\x20\x26\x71\x75\x6F\x74\x3B\x64\x65\x76\x65\x6C\x6F\x70\x6D\x65\x6E\x74\x26\x71\x75\x6F\x74\x3B\x2C\x0A\x26\x71\x75\x6F\x74\x3B\x73\x74\x61\x67\x69\x6E\x67\x26\x71\x75\x6F\x74\x3B\x2C\x20\x26\x71\x75\x6F\x74\x3B\x70\x72\x6F\x64\x75\x63\x74\x69\x6F\x6E\x26\x71\x75\x6F\x74\x3B\x2E\x0A\x54\x68\x65\x20\x3C\x63\x6F\x64\x65\x3E\x26\x6C\x74\x3B\x6E\x6F\x64\x65\x2D\x6E\x61\x6D\x65\x26\x67\x74\x3B\x3C\x2F\x63\x6F\x64\x65\x3E\x20\x69\x73\x20\x6E\x61\x6D\x65\x20\x6F\x66\x20\x79\x6F\x75\x72\x20\x6E\x6F\x64\x65\x2C\x20\x65\x61\x63\x68\x20\x6E\x6F\x64\x65\x20\x73\x68\x6F\x75\x6C\x64\x20\x68\x61\x76\x65\x20\x6F\x6E\x65\x20\x73\x69\x6E\x67\x6C\x65\x0A\x64\x69\x72\x65\x63\x74\x6F\x72\x79\x2E\x3C\x2F\x70\x3E\x0A\x3C\x70\x3E\x48\x65\x72\x65\x20\x69\x73\x20\x61\x6E\x20\x65\x78\x61\x6D\x70\x6C\x65\x20\x6F\x66\x20\x64\x69\x72\x65\x63\x74\x6F\x72\x79\x20\x73\x74\x72\x75\x63\x74\x75\x72\x65\x73\x2C\x3C\x2F\x70\x3E\x0A\x3C\x70\x72\x65\x3E\x3C\x63\x6F\x64\x65\x3E\x2E\x0A\xE2\x94\x9C\xE2\x94\x80\xE2\x94\x80\x20\x63\x6F\x6D\x6D\x6F\x6E\x73\x0A\xE2\x94\x9C\xE2\x94\x80\xE2\x94\x80\x20\x67\x63\x70\x0A\xE2\x94\x82\xC2\xA0\xC2\xA0\x20\xE2\x94\x9C\xE2\x94\x80\xE2\x94\x80\x20\x64\x65\x76\x65\x6C\x6F\x70\x6D\x65\x6E\x74\x0A\xE2\x94\x82\xC2\xA0\xC2\xA0\x20\xE2\x94\x82\xC2\xA0\xC2\xA0\x20\xE2\x94\x94\xE2\x94\x80\xE2\x94\x80\x20\x76\x6D\x0A\xE2\x94\x82\xC2\xA0\xC2\xA0\x20\xE2\x94\x82\xC2\xA0\xC2\xA0\x20\x20\x20\x20\x20\xE2\x94\x9C\xE2\x94\x80\xE2\x94\x80\x20\x77\x77\x77\x0A\xE2\x94\x82\xC2\xA0\xC2\xA0\x20\xE2\x94\x82\xC2\xA0\xC2\xA0\x20\x20\x20\x20\x20\xE2\x94\x82\xC2\xA0\xC2\xA0\x20\xE2\x94\x94\xE2\x94\x80\xE2\x94\x80\x20\x65\x74\x63\x0A\xE2\x94\x82\xC2\xA0\xC2\xA0\x20\xE2\x94\x82\xC2\xA0\xC2\xA0\x20\x20\x20\x20\x20\xE2\x94\x82\xC2\xA0\xC2\xA0\x20\x20\x20\x20\x20\xE2\x94\x9C\xE2\x94\x80\xE2\x94\x80\x20\x6D\x79\x2E\x63\x6E\x66\x2E\x64\x0A\xE2\x94\x82\xC2\xA0\xC2\xA0\x20\xE2\x94\x82\xC2\xA0\xC2\xA0\x20\x20\x20\x20\x20\xE2\x94\x82\xC2\xA0\xC2\xA0\x20\x20\x20\x20\x20\xE2\x94\x9C\xE2\x94\x80\xE2\x94\x80\x20\x6E\x67\x69\x6E\x78\x0A\xE2\x94\x82\xC2\xA0\xC2\xA0\x20\xE2\x94\x82\xC2\xA0\xC2\xA0\x20\x20\x20\x20\x20\xE2\x94\x82\xC2\xA0\xC2\xA0\x20\x20\x20\x20\x20\xE2\x94\x9C\xE2\x94\x80\xE2\x94\x80\x20\x70\x68\x70\x0A\xE2\x94\x82\xC2\xA0\xC2\xA0\x20\xE2\x94\x82\xC2\xA0\xC2\xA0\x20\x20\x20\x20\x20\xE2\x94\x82\xC2\xA0\xC2\xA0\x20\x20\x20\x20\x20\xE2\x94\x82\xC2\xA0\xC2\xA0\x20\xE2\x94\x94\xE2\x94\x80\xE2\x94\x80\x20\x70\x68\x70\x2D\x66\x70\x6D\x2E\x64\x0A\xE2\x94\x82\xC2\xA0\xC2\xA0\x20\xE2\x94\x82\xC2\xA0\xC2\xA0\x20\x20\x20\x20\x20\xE2\x94\x82\xC2\xA0\xC2\xA0\x20\x20\x20\x20\x20\xE2\x94\x94\xE2\x94\x80\xE2\x94\x80\x20\x73\x79\x73\x74\x65\x6D\x64\x0A\xE2\x94\x82\xC2\xA0\xC2\xA0\x20\xE2\x94\x82\xC2\xA0\xC2\xA0\x20\x20\x20\x20\x20\xE2\x94\x82\xC2\xA0\xC2\xA0\x20\x20\x20\x20\x20\x20\x20\x20\x20\xE2\x94\x94\xE2\x94\x80\xE2\x94\x80\x20\x73\x79\x73\x74\x65\x6D\x0A\xE2\x94\x82\xC2\xA0\xC2\xA0\x20\xE2\x94\x82\xC2\xA0\xC2\xA0\x20\x20\x20\x20\x20\xE2\x94\x82\xC2\xA0\xC2\xA0\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\xE2\x94\x94\xE2\x94\x80\xE2\x94\x80\x20\x6D\x61\x72\x69\x61\x64\x62\x2E\x73\x65\x72\x76\x69\x63\x65\x2E\x64\x0A\xE2\x94\x82\xC2\xA0\xC2\xA0\x20\xE2\x94\x82\xC2\xA0\xC2\xA0\x20\x20\x20\x20\x20\xE2\x94\x94\xE2\x94\x80\xE2\x94\x80\x20\x63\x69\x0A\xE2\x94\x82\xC2\xA0\xC2\xA0\x20\xE2\x94\x94\xE2\x94\x80\xE2\x94\x80\x20\x70\x72\x6F\x64\x75\x63\x74\x69\x6F\x6E\x0A\xE2\x94\x82\xC2\xA0\xC2\xA0\x20\x20\x20\x20\x20\xE2\x94\x94\xE2\x94\x80\xE2\x94\x80\x20\x76\x6D\x0A\xE2\x94\x82\xC2\xA0\xC2\xA0\x20\x20\x20\x20\x20\x20\x20\x20\x20\xE2\x94\x94\xE2\x94\x80\xE2\x94\x80\x20\x77\x77\x77\x0A\xE2\x94\x82\xC2\xA0\xC2\xA0\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\xE2\x94\x94\xE2\x94\x80\xE2\x94\x80\x20\x65\x74\x63\x20\x2D\x26\x67\x74\x3B\x20\x2E\x2E\x2F\x2E\x2E\x2F\x2E\x2E\x2F\x64\x65\x76\x65\x6C\x6F\x70\x6D\x65\x6E\x74\x2F\x76\x6D\x2F\x77\x77\x77\x2F\x2F\x65\x74\x63\x0A\xE2\x94\x94\xE2\x94\x80\xE2\x94\x80\x20\x74\x65\x6D\x70\x6C\x61\x74\x65\x73\x0A\x20\x20\x20\x20\xE2\x94\x9C\xE2\x94\x80\xE2\x94\x80\x20\x65\x74\x63\x0A\x20\x20\x20\x20\xE2\x94\x82\xC2\xA0\xC2\xA0\x20\xE2\x94\x9C\xE2\x94\x80\xE2\x94\x80\x20\x70\x61\x63\x6D\x61\x6E\x2E\x64\x0A\x20\x20\x20\x20\xE2\x94\x82\xC2\xA0\xC2\xA0\x20\xE2\x94\x94\xE2\x94\x80\xE2\x94\x80\x20\x73\x73\x68\x0A\x20\x20\x20\x20\xE2\x94\x94\xE2\x94\x80\xE2\x94\x80\x20\x68\x6F\x6D\x65\x0A\x3C\x2F\x63\x6F\x64\x65\x3E\x3C\x2F\x70\x72\x65\x3E\x0A\x3C\x70\x3E\x54\x68\x65\x20\x3C\x63\x6F\x64\x65\x3E\x63\x6F\x6D\x6D\x6F\x6E\x73\x3C\x2F\x63\x6F\x64\x65\x3E\x20\x64\x69\x72\x65\x63\x74\x6F\x72\x79\x20\x63\x6F\x6E\x74\x61\x69\x6E\x73\x20\x63\x6F\x6D\x6D\x6F\x6E\x20\x73\x63\x72\x69\x70\x74\x20\x74\x68\x61\x74\x20\x63\x61\x6E\x20\x62\x65\x20\x65\x78\x65\x63\x75\x74\x65\x64\x20\x69\x6E\x20\x61\x6E\x79\x0A\x73\x65\x72\x76\x65\x72\x2E\x3C\x2F\x70\x3E\x0A\x3C\x70\x3E\x54\x68\x65\x20\x3C\x63\x6F\x64\x65\x3E\x74\x65\x6D\x70\x6C\x61\x74\x65\x73\x3C\x2F\x63\x6F\x64\x65\x3E\x20\x64\x69\x72\x65\x63\x74\x6F\x72\x79\x20\x63\x6F\x6E\x74\x61\x69\x6E\x73\x20\x63\x6F\x6D\x6D\x6F\x6E\x20\x74\x65\x6D\x70\x6C\x61\x74\x65\x73\x20\x74\x68\x61\x74\x20\x63\x61\x6E\x20\x62\x65\x20\x75\x73\x65\x64\x20\x62\x79\x20\x61\x6E\x79\x0A\x73\x63\x72\x69\x70\x74\x73\x2E\x3C\x2F\x70\x3E\x0A\x3C\x70\x3E\x54\x68\x65\x20\x3C\x63\x6F\x64\x65\x3E\x67\x63\x70\x3C\x2F\x63\x6F\x64\x65\x3E\x20\x64\x69\x72\x65\x63\x74\x6F\x72\x79\x20\x69\x73\x20\x63\x6C\x6F\x75\x64\x20\x73\x65\x72\x76\x69\x63\x65\x20\x77\x69\x74\x68\x20\x74\x77\x6F\x20\x61\x63\x63\x6F\x75\x6E\x74\x73\x20\x26\x71\x75\x6F\x74\x3B\x64\x65\x76\x65\x6C\x6F\x70\x6D\x65\x6E\x74\x26\x71\x75\x6F\x74\x3B\x20\x61\x6E\x64\x0A\x26\x71\x75\x6F\x74\x3B\x70\x72\x6F\x64\x75\x63\x74\x69\x6F\x6E\x26\x71\x75\x6F\x74\x3B\x2C\x20\x61\x6E\x64\x20\x74\x68\x65\x20\x72\x65\x73\x74\x20\x61\x72\x65\x20\x6E\x6F\x64\x65\x20\x6E\x61\x6D\x65\x73\x20\x61\x6E\x64\x20\x74\x65\x6D\x70\x6C\x61\x74\x65\x73\x20\x75\x73\x65\x64\x20\x69\x6E\x20\x74\x68\x61\x74\x20\x6E\x6F\x64\x65\x2E\x3C\x2F\x70\x3E\x0A\x3C\x68\x33\x3E\x57\x68\x61\x74\x20\x68\x61\x70\x70\x65\x6E\x65\x64\x20\x69\x66\x20\x74\x77\x6F\x20\x76\x61\x72\x69\x61\x62\x6C\x65\x73\x20\x64\x65\x63\x6C\x61\x72\x65\x64\x20\x69\x6E\x73\x69\x64\x65\x20\x74\x77\x6F\x20\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74\x20\x66\x69\x6C\x65\x73\x3F\x3C\x2F\x68\x33\x3E\x0A\x3C\x70\x3E\x57\x68\x65\x6E\x20\x65\x78\x65\x63\x75\x74\x69\x6E\x67\x20\x74\x68\x65\x20\x73\x63\x72\x69\x70\x74\x20\x3C\x63\x6F\x64\x65\x3E\x61\x77\x77\x61\x6E\x3C\x2F\x63\x6F\x64\x65\x3E\x20\x6D\x65\x72\x67\x65\x20\x74\x68\x65\x20\x76\x61\x72\x69\x61\x62\x6C\x65\x73\x20\x66\x72\x6F\x6D\x20\x63\x75\x72\x72\x65\x6E\x74\x20\x64\x69\x72\x65\x63\x74\x6F\x72\x79\x0A\x77\x69\x74\x68\x20\x76\x61\x72\x69\x61\x62\x6C\x65\x73\x20\x66\x72\x6F\x6D\x20\x73\x63\x72\x69\x70\x74\x20\x64\x69\x72\x65\x63\x74\x6F\x72\x79\x2E\x0A\x41\x6E\x79\x20\x6B\x65\x79\x73\x20\x74\x68\x61\x74\x20\x61\x72\x65\x20\x64\x75\x70\x6C\x69\x63\x61\x74\x65\x20\x77\x69\x6C\x6C\x20\x62\x65\x20\x6D\x65\x72\x67\x65\x64\x20\x61\x6E\x64\x20\x74\x68\x65\x20\x6C\x61\x73\x74\x20\x6F\x6E\x65\x20\x6F\x76\x65\x72\x77\x72\x69\x74\x65\x20\x74\x68\x65\x0A\x70\x72\x65\x76\x69\x6F\x75\x73\x20\x6F\x6E\x65\x2E\x3C\x2F\x70\x3E\x0A\x3C\x68\x33\x3E\x55\x73\x65\x20\x63\x61\x73\x65\x20\x6F\x66\x20\x6D\x61\x67\x69\x63\x20\x63\x6F\x6D\x6D\x61\x6E\x64\x20\x3C\x63\x6F\x64\x65\x3E\x23\x72\x65\x71\x75\x69\x72\x65\x3A\x3C\x2F\x63\x6F\x64\x65\x3E\x3C\x2F\x68\x33\x3E\x0A\x3C\x70\x3E\x54\x68\x65\x20\x6D\x61\x67\x69\x63\x20\x63\x6F\x6D\x6D\x61\x6E\x64\x20\x3C\x63\x6F\x64\x65\x3E\x23\x72\x65\x71\x75\x69\x72\x65\x3A\x3C\x2F\x63\x6F\x64\x65\x3E\x20\x69\x73\x20\x61\x64\x64\x65\x64\x20\x74\x6F\x20\x70\x72\x65\x76\x65\x6E\x74\x20\x72\x75\x6E\x6E\x69\x6E\x67\x20\x6C\x6F\x63\x61\x6C\x20\x63\x6F\x6D\x6D\x61\x6E\x64\x20\x75\x73\x69\x6E\x67\x0A\x64\x69\x66\x66\x65\x72\x65\x6E\x74\x20\x70\x72\x6F\x6A\x65\x63\x74\x20\x6F\x72\x20\x63\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x2E\x3C\x2F\x70\x3E\x0A\x3C\x70\x3E\x54\x68\x65\x20\x75\x73\x65\x20\x63\x61\x73\x65\x20\x77\x61\x73\x20\x64\x65\x72\x69\x76\x65\x64\x20\x66\x72\x6F\x6D\x20\x65\x78\x70\x65\x72\x69\x65\x6E\x63\x65\x20\x77\x69\x74\x68\x20\x3C\x63\x6F\x64\x65\x3E\x67\x63\x6C\x6F\x75\x64\x3C\x2F\x63\x6F\x64\x65\x3E\x20\x61\x6E\x64\x20\x3C\x63\x6F\x64\x65\x3E\x6B\x75\x62\x65\x63\x74\x6C\x3C\x2F\x63\x6F\x64\x65\x3E\x20\x63\x6F\x6D\x6D\x61\x6E\x64\x73\x2E\x0A\x57\x68\x65\x6E\x20\x79\x6F\x75\x20\x68\x61\x76\x65\x20\x6D\x6F\x72\x65\x20\x74\x68\x61\x6E\x20\x6F\x6E\x65\x20\x70\x72\x6F\x6A\x65\x63\x74\x73\x20\x69\x6E\x20\x47\x43\x50\x2C\x20\x79\x6F\x75\x20\x6E\x65\x65\x64\x20\x74\x6F\x20\x6D\x61\x6B\x65\x20\x73\x75\x72\x65\x20\x74\x68\x61\x74\x20\x74\x68\x65\x0A\x63\x6F\x6D\x6D\x61\x6E\x64\x20\x74\x68\x61\x74\x20\x79\x6F\x75\x20\x72\x75\x6E\x20\x69\x73\x20\x75\x73\x69\x6E\x67\x20\x63\x6F\x72\x72\x65\x63\x74\x20\x63\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x2E\x3C\x2F\x70\x3E\x0A\x3C\x70\x3E\x48\x65\x72\x65\x20\x69\x73\x20\x74\x68\x65\x20\x65\x78\x61\x6D\x70\x6C\x65\x20\x6F\x66\x20\x64\x65\x70\x6C\x6F\x79\x69\x6E\x67\x20\x43\x6C\x6F\x75\x64\x20\x46\x75\x6E\x63\x74\x69\x6F\x6E\x73\x20\x75\x73\x69\x6E\x67\x20\x6C\x6F\x63\x61\x6C\x20\x61\x77\x77\x61\x6E\x20\x73\x63\x72\x69\x70\x74\x2C\x3C\x2F\x70\x3E\x0A\x3C\x70\x72\x65\x3E\x3C\x63\x6F\x64\x65\x3E\x31\x3A\x20\x23\x72\x65\x71\x75\x69\x72\x65\x3A\x20\x67\x63\x6C\x6F\x75\x64\x20\x63\x6F\x6E\x66\x69\x67\x20\x63\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x73\x20\x61\x63\x74\x69\x76\x61\x74\x65\x20\x7B\x7B\x2E\x56\x61\x6C\x20\x26\x71\x75\x6F\x74\x3B\x67\x63\x6C\x6F\x75\x64\x3A\x3A\x63\x6F\x6E\x66\x69\x67\x26\x71\x75\x6F\x74\x3B\x7D\x7D\x0A\x33\x3A\x0A\x34\x3A\x20\x23\x23\x20\x43\x72\x65\x61\x74\x65\x20\x50\x75\x62\x53\x75\x62\x20\x74\x6F\x70\x69\x63\x2E\x0A\x35\x3A\x0A\x36\x3A\x20\x67\x63\x6C\x6F\x75\x64\x20\x70\x75\x62\x73\x75\x62\x20\x74\x6F\x70\x69\x63\x73\x20\x63\x72\x65\x61\x74\x65\x20\x7B\x7B\x2E\x56\x61\x6C\x20\x26\x71\x75\x6F\x74\x3B\x43\x6C\x6F\x75\x64\x46\x75\x6E\x63\x74\x69\x6F\x6E\x73\x3A\x6C\x6F\x67\x32\x73\x6C\x61\x63\x6B\x3A\x70\x75\x62\x73\x75\x62\x5F\x74\x6F\x70\x69\x63\x26\x71\x75\x6F\x74\x3B\x7D\x7D\x0A\x37\x3A\x0A\x38\x3A\x20\x23\x23\x20\x43\x72\x65\x61\x74\x65\x20\x4C\x6F\x67\x67\x65\x72\x20\x53\x69\x6E\x6B\x20\x74\x6F\x20\x52\x6F\x75\x74\x65\x20\x74\x68\x65\x20\x6C\x6F\x67\x20\x74\x6F\x20\x50\x75\x62\x53\x75\x62\x20\x74\x6F\x70\x69\x63\x2E\x0A\x39\x3A\x0A\x31\x30\x3A\x20\x67\x63\x6C\x6F\x75\x64\x20\x6C\x6F\x67\x67\x69\x6E\x67\x20\x73\x69\x6E\x6B\x73\x20\x63\x72\x65\x61\x74\x65\x20\x7B\x7B\x2E\x56\x61\x6C\x20\x26\x71\x75\x6F\x74\x3B\x43\x6C\x6F\x75\x64\x46\x75\x6E\x63\x74\x69\x6F\x6E\x73\x3A\x6C\x6F\x67\x32\x73\x6C\x61\x63\x6B\x3A\x70\x75\x62\x73\x75\x62\x5F\x74\x6F\x70\x69\x63\x26\x71\x75\x6F\x74\x3B\x7D\x7D\x20\x5C\x0A\x31\x31\x3A\x09\x70\x75\x62\x73\x75\x62\x2E\x67\x6F\x6F\x67\x6C\x65\x61\x70\x69\x73\x2E\x63\x6F\x6D\x2F\x70\x72\x6F\x6A\x65\x63\x74\x73\x2F\x7B\x7B\x2E\x56\x61\x6C\x20\x26\x71\x75\x6F\x74\x3B\x67\x63\x6C\x6F\x75\x64\x3A\x3A\x70\x72\x6F\x6A\x65\x63\x74\x26\x71\x75\x6F\x74\x3B\x7D\x7D\x2F\x74\x6F\x70\x69\x63\x73\x2F\x7B\x7B\x2E\x56\x61\x6C\x20\x26\x71\x75\x6F\x74\x3B\x43\x6C\x6F\x75\x64\x46\x75\x6E\x63\x74\x69\x6F\x6E\x73\x3A\x6C\x6F\x67\x32\x73\x6C\x61\x63\x6B\x3A\x70\x75\x62\x73\x75\x62\x5F\x74\x6F\x70\x69\x63\x26\x71\x75\x6F\x74\x3B\x7D\x7D\x20\x5C\x0A\x31\x32\x3A\x09\x2D\x2D\x6C\x6F\x67\x2D\x66\x69\x6C\x74\x65\x72\x3D\x73\x65\x76\x65\x72\x69\x74\x79\x26\x67\x74\x3B\x3D\x57\x41\x52\x4E\x49\x4E\x47\x0A\x31\x33\x3A\x0A\x31\x34\x3A\x20\x23\x23\x20\x43\x72\x65\x61\x74\x65\x20\x43\x6C\x6F\x75\x64\x20\x46\x75\x6E\x63\x74\x69\x6F\x6E\x73\x20\x74\x6F\x20\x66\x6F\x72\x77\x61\x72\x64\x20\x6C\x6F\x67\x20\x74\x6F\x20\x53\x6C\x61\x63\x6B\x2E\x0A\x31\x35\x3A\x0A\x31\x36\x3A\x20\x67\x63\x6C\x6F\x75\x64\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x73\x20\x64\x65\x70\x6C\x6F\x79\x20\x4C\x6F\x67\x32\x53\x6C\x61\x63\x6B\x20\x5C\x0A\x31\x37\x3A\x09\x2D\x2D\x73\x6F\x75\x72\x63\x65\x20\x7B\x7B\x2E\x53\x63\x72\x69\x70\x74\x44\x69\x72\x7D\x7D\x20\x5C\x0A\x31\x38\x3A\x09\x2D\x2D\x65\x6E\x74\x72\x79\x2D\x70\x6F\x69\x6E\x74\x20\x4C\x6F\x67\x32\x53\x6C\x61\x63\x6B\x20\x5C\x0A\x31\x39\x3A\x09\x2D\x2D\x72\x75\x6E\x74\x69\x6D\x65\x20\x67\x6F\x31\x31\x33\x20\x5C\x0A\x32\x30\x3A\x09\x2D\x2D\x74\x72\x69\x67\x67\x65\x72\x2D\x74\x6F\x70\x69\x63\x20\x7B\x7B\x2E\x56\x61\x6C\x20\x26\x71\x75\x6F\x74\x3B\x43\x6C\x6F\x75\x64\x46\x75\x6E\x63\x74\x69\x6F\x6E\x73\x3A\x6C\x6F\x67\x32\x73\x6C\x61\x63\x6B\x3A\x70\x75\x62\x73\x75\x62\x5F\x74\x6F\x70\x69\x63\x26\x71\x75\x6F\x74\x3B\x7D\x7D\x20\x5C\x0A\x32\x31\x3A\x09\x2D\x2D\x73\x65\x74\x2D\x65\x6E\x76\x2D\x76\x61\x72\x73\x20\x53\x4C\x41\x43\x4B\x5F\x57\x45\x42\x48\x4F\x4F\x4B\x5F\x55\x52\x4C\x3D\x7B\x7B\x2E\x56\x61\x6C\x20\x26\x71\x75\x6F\x74\x3B\x73\x6C\x61\x63\x6B\x3A\x3A\x73\x6C\x61\x63\x6B\x5F\x77\x65\x62\x68\x6F\x6F\x6B\x5F\x75\x72\x6C\x26\x71\x75\x6F\x74\x3B\x7D\x7D\x20\x5C\x0A\x32\x32\x3A\x09\x2D\x2D\x69\x6E\x67\x72\x65\x73\x73\x2D\x73\x65\x74\x74\x69\x6E\x67\x73\x20\x69\x6E\x74\x65\x72\x6E\x61\x6C\x2D\x6F\x6E\x6C\x79\x20\x5C\x0A\x32\x33\x3A\x09\x2D\x2D\x6D\x61\x78\x2D\x69\x6E\x73\x74\x61\x6E\x63\x65\x73\x3D\x35\x0A\x32\x34\x3A\x0A\x32\x35\x3A\x20\x23\x23\x20\x54\x65\x73\x74\x20\x74\x68\x65\x20\x63\x68\x61\x69\x6E\x73\x20\x62\x79\x20\x70\x75\x62\x6C\x69\x73\x68\x69\x6E\x67\x20\x61\x20\x6D\x65\x73\x73\x61\x67\x65\x20\x74\x6F\x20\x54\x6F\x70\x69\x63\x2E\x2E\x2E\x0A\x32\x36\x3A\x0A\x32\x37\x3A\x20\x67\x63\x6C\x6F\x75\x64\x20\x70\x75\x62\x73\x75\x62\x20\x74\x6F\x70\x69\x63\x73\x20\x5C\x0A\x32\x38\x3A\x09\x70\x75\x62\x6C\x69\x73\x68\x20\x7B\x7B\x2E\x56\x61\x6C\x20\x26\x71\x75\x6F\x74\x3B\x43\x6C\x6F\x75\x64\x46\x75\x6E\x63\x74\x69\x6F\x6E\x73\x3A\x6C\x6F\x67\x32\x73\x6C\x61\x63\x6B\x3A\x70\x75\x62\x73\x75\x62\x5F\x74\x6F\x70\x69\x63\x26\x71\x75\x6F\x74\x3B\x7D\x7D\x20\x5C\x0A\x32\x39\x3A\x09\x2D\x2D\x6D\x65\x73\x73\x61\x67\x65\x3D\x27\x48\x65\x6C\x6C\x6F\x20\x57\x6F\x72\x6C\x64\x21\x27\x0A\x3C\x2F\x63\x6F\x64\x65\x3E\x3C\x2F\x70\x72\x65\x3E\x0A\x3C\x70\x3E\x57\x68\x65\x6E\x20\x65\x78\x65\x63\x75\x74\x69\x6E\x67\x20\x73\x74\x61\x74\x65\x6D\x65\x6E\x74\x20\x61\x74\x20\x6C\x69\x6E\x65\x20\x6E\x75\x6D\x62\x65\x72\x20\x36\x2C\x20\x31\x30\x2C\x20\x31\x36\x20\x6F\x72\x20\x32\x37\x20\x77\x65\x20\x6E\x65\x65\x64\x20\x74\x6F\x20\x6D\x61\x6B\x65\x20\x73\x75\x72\x65\x0A\x74\x68\x61\x74\x20\x69\x74\x20\x61\x6C\x77\x61\x79\x73\x20\x75\x73\x69\x6E\x67\x20\x74\x68\x65\x20\x63\x6F\x72\x72\x65\x63\x74\x20\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74\x20\x26\x71\x75\x6F\x74\x3B\x67\x63\x6C\x6F\x75\x64\x3A\x3A\x63\x6F\x6E\x66\x69\x67\x26\x71\x75\x6F\x74\x3B\x2C\x3C\x2F\x70\x3E\x0A\x3C\x70\x72\x65\x3E\x3C\x63\x6F\x64\x65\x3E\x24\x20\x61\x77\x77\x61\x6E\x20\x6C\x6F\x63\x61\x6C\x20\x61\x77\x77\x61\x6E\x2F\x70\x6C\x61\x79\x67\x72\x6F\x75\x6E\x64\x2F\x43\x6C\x6F\x75\x64\x46\x75\x6E\x63\x74\x69\x6F\x6E\x73\x2F\x6C\x6F\x67\x32\x73\x6C\x61\x63\x6B\x2F\x6C\x6F\x63\x61\x6C\x2E\x64\x65\x70\x6C\x6F\x79\x2E\x61\x77\x77\x20\x32\x37\x0A\x32\x30\x32\x30\x2F\x30\x36\x2F\x30\x34\x20\x30\x31\x3A\x34\x38\x3A\x33\x38\x20\x26\x67\x74\x3B\x26\x67\x74\x3B\x26\x67\x74\x3B\x20\x6C\x6F\x61\x64\x69\x6E\x67\x20\x26\x71\x75\x6F\x74\x3B\x2F\x78\x78\x78\x2F\x61\x77\x77\x61\x6E\x2E\x65\x6E\x76\x26\x71\x75\x6F\x74\x3B\x20\x2E\x2E\x2E\x0A\x32\x30\x32\x30\x2F\x30\x36\x2F\x30\x34\x20\x30\x31\x3A\x34\x38\x3A\x33\x38\x20\x26\x67\x74\x3B\x26\x67\x74\x3B\x26\x67\x74\x3B\x20\x6C\x6F\x61\x64\x69\x6E\x67\x20\x26\x71\x75\x6F\x74\x3B\x2F\x78\x78\x78\x2F\x61\x77\x77\x61\x6E\x2F\x64\x65\x76\x2F\x61\x77\x77\x61\x6E\x2E\x65\x6E\x76\x26\x71\x75\x6F\x74\x3B\x20\x2E\x2E\x2E\x0A\x32\x30\x32\x30\x2F\x30\x36\x2F\x30\x34\x20\x30\x31\x3A\x34\x38\x3A\x33\x38\x20\x2D\x2D\x2D\x20\x72\x65\x71\x75\x69\x72\x65\x20\x32\x3A\x20\x67\x63\x6C\x6F\x75\x64\x20\x63\x6F\x6E\x66\x69\x67\x20\x63\x6F\x6E\x66\x69\x67\x75\x72\x61\x74\x69\x6F\x6E\x73\x20\x61\x63\x74\x69\x76\x61\x74\x65\x20\x64\x65\x76\x0A\x0A\x41\x63\x74\x69\x76\x61\x74\x65\x64\x20\x5B\x64\x65\x76\x5D\x2E\x0A\x32\x30\x32\x30\x2F\x30\x36\x2F\x30\x34\x20\x30\x31\x3A\x34\x38\x3A\x33\x38\x20\x26\x67\x74\x3B\x26\x67\x74\x3B\x26\x67\x74\x3B\x20\x6C\x6F\x63\x61\x6C\x20\x32\x39\x3A\x20\x67\x63\x6C\x6F\x75\x64\x20\x70\x75\x62\x73\x75\x62\x20\x74\x6F\x70\x69\x63\x73\x20\x70\x75\x62\x6C\x69\x73\x68\x20\x6C\x6F\x67\x73\x0A\x2D\x2D\x6D\x65\x73\x73\x61\x67\x65\x3D\x27\x48\x65\x6C\x6C\x6F\x20\x57\x6F\x72\x6C\x64\x21\x27\x0A\x3C\x2F\x63\x6F\x64\x65\x3E\x3C\x2F\x70\x72\x65\x3E\x0A\x3C\x68\x32\x3E\x42\x55\x47\x53\x3C\x2F\x68\x32\x3E\x0A\x3C\x70\x3E\x4B\x6E\x6F\x77\x6E\x20\x62\x75\x67\x73\x2C\x3C\x2F\x70\x3E\x0A\x3C\x75\x6C\x3E\x0A\x3C\x6C\x69\x3E\x45\x78\x65\x63\x75\x74\x69\x6E\x67\x20\x73\x63\x72\x69\x70\x74\x20\x73\x74\x61\x72\x74\x20\x77\x69\x74\x68\x20\x6C\x69\x6E\x65\x20\x6E\x75\x6D\x62\x65\x72\x20\x63\x6F\x6E\x74\x61\x69\x6E\x73\x20\x26\x71\x75\x6F\x74\x3B\x23\x72\x65\x71\x75\x69\x72\x65\x3A\x26\x71\x75\x6F\x74\x3B\x20\x69\x73\x20\x6E\x6F\x74\x0A\x65\x78\x65\x63\x75\x74\x69\x6E\x67\x20\x74\x68\x65\x20\x72\x65\x71\x75\x69\x72\x65\x64\x20\x73\x74\x61\x74\x65\x6D\x65\x6E\x74\x2E\x3C\x2F\x6C\x69\x3E\x0A\x3C\x2F\x75\x6C\x3E\x0A\x3C\x68\x32\x3E\x4C\x49\x4E\x4B\x53\x3C\x2F\x68\x32\x3E\x0A\x3C\x70\x3E\x54\x68\x65\x20\x73\x6F\x75\x72\x63\x65\x20\x63\x6F\x64\x65\x73\x20\x66\x6F\x72\x20\x74\x68\x69\x73\x20\x73\x6F\x66\x74\x77\x61\x72\x65\x20\x70\x72\x6F\x6A\x65\x63\x74\x20\x63\x61\x6E\x20\x62\x65\x20\x76\x69\x65\x77\x65\x64\x20\x61\x74\x0A\x68\x74\x74\x70\x73\x3A\x2F\x2F\x73\x72\x2E\x68\x74\x2F\x7E\x73\x68\x75\x6C\x68\x61\x6E\x2F\x61\x77\x77\x61\x6E\x2F\x20\x2E\x3C\x2F\x70\x3E\x0A\x3C\x70\x3E\x46\x6F\x72\x20\x72\x65\x71\x75\x65\x73\x74\x20\x6F\x66\x20\x66\x65\x61\x74\x75\x72\x65\x73\x20\x61\x6E\x64\x2F\x6F\x72\x20\x62\x75\x67\x73\x20\x72\x65\x70\x6F\x72\x74\x20\x70\x6C\x65\x61\x73\x65\x20\x73\x75\x62\x6D\x69\x74\x74\x65\x64\x20\x74\x68\x72\x6F\x75\x67\x68\x20\x77\x65\x62\x20\x61\x74\x0A\x68\x74\x74\x70\x73\x3A\x2F\x2F\x74\x6F\x64\x6F\x2E\x73\x72\x2E\x68\x74\x2F\x7E\x73\x68\x75\x6C\x68\x61\x6E\x2F\x61\x77\x77\x61\x6E\x20\x2E\x3C\x2F\x70\x3E\x0A\x3C\x68\x32\x3E\x44\x45\x56\x45\x4C\x4F\x50\x4D\x45\x4E\x54\x3C\x2F\x68\x32\x3E\x0A\x3C\x70\x3E\x54\x68\x69\x73\x20\x70\x72\x6F\x6A\x65\x63\x74\x20\x72\x65\x71\x75\x69\x72\x65\x20\x67\x69\x74\x2C\x20\x47\x4E\x55\x20\x6D\x61\x6B\x65\x2C\x20\x47\x6F\x20\x63\x6F\x6D\x70\x69\x6C\x65\x72\x2C\x20\x61\x6E\x64\x20\x54\x79\x70\x65\x53\x63\x72\x69\x70\x74\x20\x63\x6F\x6D\x70\x69\x6C\x65\x72\x2E\x3C\x2F\x70\x3E\x0A\x3C\x70\x3E\x53\x74\x65\x70\x73\x20\x74\x6F\x20\x62\x75\x69\x6C\x64\x20\x66\x72\x6F\x6D\x20\x73\x6F\x75\x72\x63\x65\x2C\x3C\x2F\x70\x3E\x0A\x3C\x70\x72\x65\x3E\x3C\x63\x6F\x64\x65\x3E\x24\x20\x67\x69\x74\x20\x63\x6C\x6F\x6E\x65\x20\x2D\x2D\x72\x65\x63\x75\x72\x73\x65\x2D\x73\x75\x62\x6D\x6F\x64\x75\x6C\x65\x73\x20\x68\x74\x74\x70\x73\x3A\x2F\x2F\x67\x69\x74\x2E\x73\x72\x2E\x68\x74\x2F\x7E\x73\x68\x75\x6C\x68\x61\x6E\x2F\x61\x77\x77\x61\x6E\x0A\x24\x20\x6D\x61\x6B\x65\x0A\x3C\x2F\x63\x6F\x64\x65\x3E\x3C\x2F\x70\x72\x65\x3E\x0A\x3C\x70\x3E\x54\x6F\x20\x72\x75\x6E\x20\x64\x65\x76\x65\x6C\x6F\x70\x6D\x65\x6E\x74\x20\x73\x65\x72\x76\x65\x72\x20\x74\x68\x61\x74\x20\x77\x61\x74\x63\x68\x20\x63\x68\x61\x6E\x67\x65\x73\x20\x6F\x6E\x20\x5F\x77\x77\x77\x2C\x20\x72\x75\x6E\x3C\x2F\x70\x3E\x0A\x3C\x70\x72\x65\x3E\x3C\x63\x6F\x64\x65\x3E\x24\x20\x6D\x61\x6B\x65\x20\x73\x65\x72\x76\x65\x2D\x64\x65\x76\x0A\x3C\x2F\x63\x6F\x64\x65\x3E\x3C\x2F\x70\x72\x65\x3E\x0A\x3C\x68\x32\x3E\x4C\x49\x43\x45\x4E\x53\x45\x3C\x2F\x68\x32\x3E\x0A\x3C\x70\x3E\x43\x6F\x70\x79\x72\x69\x67\x68\x74\x20\x28\x43\x29\x20\x32\x30\x31\x39\x2D\x32\x30\x32\x33\x20\x4D\x2E\x20\x53\x68\x75\x6C\x68\x61\x6E\x20\x3C\x61\x20\x68\x72\x65\x66\x3D\x22\x6D\x61\x69\x6C\x74\x6F\x3A\x6D\x73\x40\x6B\x69\x6C\x61\x62\x69\x74\x2E\x69\x6E\x66\x6F\x22\x3E\x6D\x73\x40\x6B\x69\x6C\x61\x62\x69\x74\x2E\x69\x6E\x66\x6F\x3C\x2F\x61\x3E\x3C\x2F\x70\x3E\x0A\x3C\x70\x3E\x54\x68\x69\x73\x20\x70\x72\x6F\x67\x72\x61\x6D\x20\x69\x73\x20\x66\x72\x65\x65\x20\x73\x6F\x66\x74\x77\x61\x72\x65\x3A\x20\x79\x6F\x75\x20\x63\x61\x6E\x20\x72\x65\x64\x69\x73\x74\x72\x69\x62\x75\x74\x65\x20\x69\x74\x20\x61\x6E\x64\x2F\x6F\x72\x20\x6D\x6F\x64\x69\x66\x79\x20\x69\x74\x0A\x75\x6E\x64\x65\x72\x20\x74\x68\x65\x20\x74\x65\x72\x6D\x73\x20\x6F\x66\x20\x74\x68\x65\x20\x47\x4E\x55\x20\x47\x65\x6E\x65\x72\x61\x6C\x20\x50\x75\x62\x6C\x69\x63\x20\x4C\x69\x63\x65\x6E\x73\x65\x20\x61\x73\x20\x70\x75\x62\x6C\x69\x73\x68\x65\x64\x20\x62\x79\x20\x74\x68\x65\x20\x46\x72\x65\x65\x0A\x53\x6F\x66\x74\x77\x61\x72\x65\x20\x46\x6F\x75\x6E\x64\x61\x74\x69\x6F\x6E\x2C\x20\x65\x69\x74\x68\x65\x72\x20\x76\x65\x72\x73\x69\x6F\x6E\x20\x33\x20\x6F\x66\x20\x74\x68\x65\x20\x4C\x69\x63\x65\x6E\x73\x65\x2C\x20\x6F\x72\x20\x61\x6E\x79\x20\x6C\x61\x74\x65\x72\x20\x76\x65\x72\x73\x69\x6F\x6E\x2E\x3C\x2F\x70\x3E\x0A\x3C\x70\x3E\x54\x68\x69\x73\x20\x70\x72\x6F\x67\x72\x61\x6D\x20\x69\x73\x20\x64\x69\x73\x74\x72\x69\x62\x75\x74\x65\x64\x20\x69\x6E\x20\x74\x68\x65\x20\x68\x6F\x70\x65\x20\x74\x68\x61\x74\x20\x69\x74\x20\x77\x69\x6C\x6C\x20\x62\x65\x20\x75\x73\x65\x66\x75\x6C\x2C\x20\x62\x75\x74\x0A\x57\x49\x54\x48\x4F\x55\x54\x20\x41\x4E\x59\x20\x57\x41\x52\x52\x41\x4E\x54\x59\x3B\x20\x77\x69\x74\x68\x6F\x75\x74\x20\x65\x76\x65\x6E\x20\x74\x68\x65\x20\x69\x6D\x70\x6C\x69\x65\x64\x20\x77\x61\x72\x72\x61\x6E\x74\x79\x20\x6F\x66\x20\x4D\x45\x52\x43\x48\x41\x4E\x54\x41\x42\x49\x4C\x49\x54\x59\x0A\x6F\x72\x20\x46\x49\x54\x4E\x45\x53\x53\x20\x46\x4F\x52\x20\x41\x20\x50\x41\x52\x54\x49\x43\x55\x4C\x41\x52\x20\x50\x55\x52\x50\x4F\x53\x45\x2E\x0A\x53\x65\x65\x20\x74\x68\x65\x20\x47\x4E\x55\x20\x47\x65\x6E\x65\x72\x61\x6C\x20\x50\x75\x62\x6C\x69\x63\x20\x4C\x69\x63\x65\x6E\x73\x65\x20\x66\x6F\x72\x20\x6D\x6F\x72\x65\x20\x64\x65\x74\x61\x69\x6C\x73\x2E\x3C\x2F\x70\x3E\x0A\x3C\x70\x3E\x59\x6F\x75\x20\x73\x68\x6F\x75\x6C\x64\x20\x68\x61\x76\x65\x20\x72\x65\x63\x65\x69\x76\x65\x64\x20\x61\x20\x63\x6F\x70\x79\x20\x6F\x66\x20\x74\x68\x65\x20\x47\x4E\x55\x20\x47\x65\x6E\x65\x72\x61\x6C\x20\x50\x75\x62\x6C\x69\x63\x20\x4C\x69\x63\x65\x6E\x73\x65\x20\x61\x6C\x6F\x6E\x67\x20\x77\x69\x74\x68\x0A\x74\x68\x69\x73\x20\x70\x72\x6F\x67\x72\x61\x6D\x2E\x0A\x49\x66\x20\x6E\x6F\x74\x2C\x20\x73\x65\x65\x20\x3C\x61\x20\x68\x72\x65\x66\x3D\x22\x68\x74\x74\x70\x3A\x2F\x2F\x77\x77\x77\x2E\x67\x6E\x75\x2E\x6F\x72\x67\x2F\x6C\x69\x63\x65\x6E\x73\x65\x73\x2F\x22\x3E\x68\x74\x74\x70\x3A\x2F\x2F\x77\x77\x77\x2E\x67\x6E\x75\x2E\x6F\x72\x67\x2F\x6C\x69\x63\x65\x6E\x73\x65\x73\x2F\x3C\x2F\x61\x3E\x2E\x3C\x2F\x70\x3E\x0A\x3C\x21\x2D\x2D\x20\x72\x61\x77\x20\x48\x54\x4D\x4C\x20\x6F\x6D\x69\x74\x74\x65\x64\x20\x2D\x2D\x3E\x0A\x3C\x21\x2D\x2D\x20\x72\x61\x77\x20\x48\x54\x4D\x4C\x20\x6F\x6D\x69\x74\x74\x65\x64\x20\x2D\x2D\x3E\x0A\x3C\x21\x2D\x2D\x20\x72\x61\x77\x20\x48\x54\x4D\x4C\x20\x6F\x6D\x69\x74\x74\x65\x64\x20\x2D\x2D\x3E\x0A\x3C\x21\x2D\x2D\x20\x72\x61\x77\x20\x48\x54\x4D\x4C\x20\x6F\x6D\x69\x74\x74\x65\x64\x20\x2D\x2D\x3E\x0A\x0A\x09\x09\x09\x3C\x2F\x64\x69\x76\x3E\x0A\x09\x09\x3C\x2F\x64\x69\x76\x3E\x0A\x09\x09\x3C\x64\x69\x76\x20\x63\x6C\x61\x73\x73\x3D\x22\x66\x6F\x6F\x74\x65\x72\x22\x3E\x0A\x09\x09\x09\x50\x6F\x77\x65\x72\x65\x64\x20\x62\x79\x20\x3C\x61\x0A\x09\x09\x09\x09\x68\x72\x65\x66\x3D\x22\x68\x74\x74\x70\x73\x3A\x2F\x2F\x67\x69\x74\x2E\x73\x72\x2E\x68\x74\x2F\x7E\x73\x68\x75\x6C\x68\x61\x6E\x2F\x63\x69\x69\x67\x6F\x22\x0A\x09\x09\x09\x3E\x0A\x09\x09\x09\x09\x63\x69\x69\x67\x6F\x0A\x09\x09\x09\x3C\x2F\x61\x3E\x0A\x09\x09\x3C\x2F\x64\x69\x76\x3E\x0A\x09\x3C\x2F\x62\x6F\x64\x79\x3E\x0A\x3C\x2F\x68\x74\x6D\x6C\x3E"), } node.SetMode(420) - node.SetModTimeUnix(1695740202, 116984002) + node.SetModTimeUnix(1695889071, 383005189) node.SetName("README.html") node.SetSize(22171) return node @@ -128,7 +128,7 @@ func generate__www_index_html() *memfs.Node { Content: []byte("\x3C\x21\x44\x4F\x43\x54\x59\x50\x45\x20\x68\x74\x6D\x6C\x3E\x0A\x3C\x68\x74\x6D\x6C\x3E\x0A\x09\x3C\x68\x65\x61\x64\x3E\x0A\x09\x09\x3C\x6D\x65\x74\x61\x20\x63\x68\x61\x72\x73\x65\x74\x3D\x22\x55\x54\x46\x2D\x38\x22\x20\x2F\x3E\x0A\x09\x09\x3C\x74\x69\x74\x6C\x65\x3E\x61\x77\x77\x61\x6E\x3C\x2F\x74\x69\x74\x6C\x65\x3E\x0A\x09\x09\x3C\x73\x74\x79\x6C\x65\x3E\x0A\x09\x09\x09\x2E\x68\x65\x61\x64\x65\x72\x20\x7B\x0A\x09\x09\x09\x09\x68\x65\x69\x67\x68\x74\x3A\x20\x32\x34\x70\x78\x3B\x0A\x09\x09\x09\x09\x6D\x61\x72\x67\x69\x6E\x3A\x20\x30\x70\x78\x20\x30\x70\x78\x20\x31\x65\x6D\x20\x31\x65\x6D\x3B\x0A\x09\x09\x09\x7D\x0A\x09\x09\x09\x2E\x68\x65\x61\x64\x65\x72\x20\x3E\x20\x2E\x6C\x6F\x67\x6F\x20\x7B\x0A\x09\x09\x09\x09\x77\x69\x64\x74\x68\x3A\x20\x32\x30\x70\x78\x3B\x0A\x09\x09\x09\x09\x6D\x61\x72\x67\x69\x6E\x3A\x20\x30\x70\x78\x3B\x0A\x09\x09\x09\x7D\x0A\x09\x09\x09\x2E\x68\x65\x61\x64\x65\x72\x20\x3E\x20\x2E\x6D\x65\x6E\x75\x20\x7B\x0A\x09\x09\x09\x09\x62\x6F\x72\x64\x65\x72\x2D\x6C\x65\x66\x74\x3A\x20\x31\x70\x78\x20\x73\x6F\x6C\x69\x64\x20\x63\x6F\x72\x6E\x66\x6C\x6F\x77\x65\x72\x62\x6C\x75\x65\x3B\x0A\x09\x09\x09\x09\x70\x61\x64\x64\x69\x6E\x67\x2D\x6C\x65\x66\x74\x3A\x20\x31\x65\x6D\x3B\x0A\x09\x09\x09\x7D\x0A\x0A\x09\x09\x09\x2E\x61\x77\x77\x61\x6E\x5F\x6E\x61\x76\x5F\x6C\x65\x66\x74\x20\x7B\x0A\x09\x09\x09\x09\x66\x6F\x6E\x74\x2D\x66\x61\x6D\x69\x6C\x79\x3A\x20\x6D\x6F\x6E\x6F\x73\x70\x61\x63\x65\x3B\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\x68\x65\x69\x67\x68\x74\x3A\x20\x63\x61\x6C\x63\x28\x31\x30\x30\x25\x20\x2D\x20\x35\x34\x70\x78\x29\x3B\x0A\x09\x09\x09\x09\x77\x69\x64\x74\x68\x3A\x20\x33\x30\x30\x70\x78\x3B\x0A\x09\x09\x09\x7D\x0A\x09\x09\x09\x23\x63\x6F\x6D\x5F\x76\x66\x73\x20\x7B\x0A\x09\x09\x09\x09\x68\x65\x69\x67\x68\x74\x3A\x20\x63\x61\x6C\x63\x28\x31\x30\x30\x25\x20\x2D\x20\x39\x34\x70\x78\x29\x3B\x0A\x09\x09\x09\x7D\x0A\x09\x09\x09\x2E\x77\x75\x69\x5F\x76\x66\x73\x5F\x6C\x69\x73\x74\x20\x7B\x0A\x09\x09\x09\x09\x68\x65\x69\x67\x68\x74\x3A\x20\x63\x61\x6C\x63\x28\x31\x30\x30\x25\x20\x2D\x20\x33\x32\x70\x78\x29\x3B\x0A\x09\x09\x09\x09\x6F\x76\x65\x72\x66\x6C\x6F\x77\x3A\x20\x61\x75\x74\x6F\x3B\x0A\x09\x09\x09\x7D\x0A\x09\x09\x09\x23\x63\x6F\x6D\x5F\x69\x6E\x70\x5F\x76\x66\x73\x5F\x6E\x65\x77\x20\x7B\x0A\x09\x09\x09\x09\x77\x69\x64\x74\x68\x3A\x20\x63\x61\x6C\x63\x28\x31\x30\x30\x25\x20\x2D\x20\x31\x30\x70\x78\x29\x3B\x0A\x09\x09\x09\x09\x6D\x61\x72\x67\x69\x6E\x3A\x20\x31\x30\x70\x78\x20\x30\x3B\x0A\x09\x09\x09\x7D\x0A\x0A\x09\x09\x09\x2E\x61\x77\x77\x61\x6E\x5F\x63\x6F\x6E\x74\x65\x6E\x74\x20\x7B\x0A\x09\x09\x09\x09\x68\x65\x69\x67\x68\x74\x3A\x20\x63\x61\x6C\x63\x28\x31\x30\x30\x25\x20\x2D\x20\x36\x34\x70\x78\x29\x3B\x0A\x09\x09\x09\x09\x6C\x65\x66\x74\x3A\x20\x33\x31\x30\x70\x78\x3B\x0A\x09\x09\x09\x09\x6D\x61\x72\x67\x69\x6E\x3A\x20\x30\x20\x31\x30\x70\x78\x3B\x0A\x09\x09\x09\x09\x6F\x76\x65\x72\x66\x6C\x6F\x77\x2D\x79\x3A\x20\x73\x63\x72\x6F\x6C\x6C\x3B\x0A\x09\x09\x09\x09\x70\x61\x64\x64\x69\x6E\x67\x3A\x20\x30\x20\x31\x30\x70\x78\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\x77\x69\x64\x74\x68\x3A\x20\x63\x61\x6C\x63\x28\x31\x30\x30\x25\x20\x2D\x20\x33\x34\x30\x70\x78\x29\x3B\x0A\x09\x09\x09\x7D\x0A\x09\x09\x09\x23\x76\x66\x73\x5F\x70\x61\x74\x68\x20\x7B\x0A\x09\x09\x09\x09\x6D\x61\x72\x67\x69\x6E\x2D\x72\x69\x67\x68\x74\x3A\x20\x31\x30\x70\x78\x3B\x0A\x09\x09\x09\x7D\x0A\x09\x09\x09\x23\x65\x64\x69\x74\x6F\x72\x20\x7B\x0A\x09\x09\x09\x09\x77\x69\x64\x74\x68\x3A\x20\x31\x30\x30\x25\x3B\x0A\x09\x09\x09\x09\x68\x65\x69\x67\x68\x74\x3A\x20\x36\x30\x30\x70\x78\x3B\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\x7D\x0A\x09\x09\x09\x2E\x65\x64\x69\x74\x6F\x72\x5F\x66\x69\x6C\x65\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\x70\x61\x64\x64\x69\x6E\x67\x3A\x20\x31\x30\x70\x78\x3B\x0A\x09\x09\x09\x7D\x0A\x09\x09\x09\x2E\x65\x64\x69\x74\x6F\x72\x5F\x61\x63\x74\x69\x6F\x6E\x20\x7B\x0A\x09\x09\x09\x09\x6D\x61\x72\x67\x69\x6E\x3A\x20\x31\x30\x70\x78\x20\x30\x3B\x0A\x09\x09\x09\x7D\x0A\x09\x09\x09\x2E\x62\x6F\x78\x68\x65\x61\x64\x65\x72\x20\x7B\x0A\x09\x09\x09\x09\x70\x61\x64\x64\x69\x6E\x67\x3A\x20\x31\x30\x70\x78\x3B\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\x7D\x0A\x09\x09\x09\x23\x73\x74\x64\x6F\x75\x74\x2C\x0A\x09\x09\x09\x23\x73\x74\x64\x65\x72\x72\x20\x7B\x0A\x09\x09\x09\x09\x66\x6F\x6E\x74\x2D\x66\x61\x6D\x69\x6C\x79\x3A\x20\x6D\x6F\x6E\x6F\x73\x70\x61\x63\x65\x3B\x0A\x09\x09\x09\x09\x6D\x69\x6E\x2D\x68\x65\x69\x67\x68\x74\x3A\x20\x32\x30\x30\x70\x78\x3B\x0A\x09\x09\x09\x09\x6F\x76\x65\x72\x66\x6C\x6F\x77\x3A\x20\x61\x75\x74\x6F\x3B\x0A\x09\x09\x09\x09\x70\x61\x64\x64\x69\x6E\x67\x3A\x20\x31\x30\x70\x78\x3B\x0A\x09\x09\x09\x09\x77\x68\x69\x74\x65\x2D\x73\x70\x61\x63\x65\x3A\x20\x70\x72\x65\x3B\x0A\x09\x09\x09\x7D\x0A\x09\x09\x09\x23\x73\x74\x64\x6F\x75\x74\x20\x7B\x0A\x09\x09\x09\x09\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x2D\x63\x6F\x6C\x6F\x72\x3A\x20\x6C\x61\x76\x65\x6E\x64\x65\x72\x3B\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\x7D\x0A\x09\x09\x09\x23\x73\x74\x64\x65\x72\x72\x20\x7B\x0A\x09\x09\x09\x09\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x2D\x63\x6F\x6C\x6F\x72\x3A\x20\x6C\x61\x76\x65\x6E\x64\x65\x72\x62\x6C\x75\x73\x68\x3B\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\x7D\x0A\x09\x09\x09\x40\x6D\x65\x64\x69\x61\x20\x28\x6D\x61\x78\x2D\x77\x69\x64\x74\x68\x3A\x20\x37\x30\x30\x70\x78\x29\x20\x7B\x0A\x09\x09\x09\x09\x2E\x61\x77\x77\x61\x6E\x5F\x6E\x61\x76\x5F\x6C\x65\x66\x74\x20\x7B\x0A\x09\x09\x09\x09\x09\x70\x6F\x73\x69\x74\x69\x6F\x6E\x3A\x20\x75\x6E\x73\x65\x74\x3B\x0A\x09\x09\x09\x09\x09\x77\x69\x64\x74\x68\x3A\x20\x63\x61\x6C\x63\x28\x31\x30\x30\x25\x20\x2D\x20\x31\x30\x70\x78\x29\x3B\x0A\x09\x09\x09\x09\x7D\x0A\x09\x09\x09\x09\x2E\x61\x77\x77\x61\x6E\x5F\x6E\x61\x76\x5F\x6C\x65\x66\x74\x20\x2E\x77\x75\x69\x5F\x76\x66\x73\x5F\x6C\x69\x73\x74\x20\x7B\x0A\x09\x09\x09\x09\x09\x68\x65\x69\x67\x68\x74\x3A\x20\x31\x30\x30\x25\x3B\x0A\x09\x09\x09\x09\x7D\x0A\x09\x09\x09\x09\x2E\x61\x77\x77\x61\x6E\x5F\x63\x6F\x6E\x74\x65\x6E\x74\x20\x7B\x0A\x09\x09\x09\x09\x09\x6D\x61\x72\x67\x69\x6E\x3A\x20\x32\x30\x70\x78\x20\x30\x20\x30\x20\x30\x3B\x0A\x09\x09\x09\x09\x09\x6F\x76\x65\x72\x66\x6C\x6F\x77\x3A\x20\x75\x6E\x73\x65\x74\x3B\x0A\x09\x09\x09\x09\x09\x70\x61\x64\x64\x69\x6E\x67\x3A\x20\x30\x3B\x0A\x09\x09\x09\x09\x09\x70\x6F\x73\x69\x74\x69\x6F\x6E\x3A\x20\x75\x6E\x73\x65\x74\x3B\x0A\x09\x09\x09\x09\x09\x77\x69\x64\x74\x68\x3A\x20\x63\x61\x6C\x63\x28\x31\x30\x30\x25\x20\x2D\x20\x31\x30\x70\x78\x29\x3B\x0A\x09\x09\x09\x09\x7D\x0A\x09\x09\x09\x09\x2E\x65\x64\x69\x74\x6F\x72\x5F\x66\x69\x6C\x65\x20\x7B\x0A\x09\x09\x09\x09\x09\x6D\x61\x72\x67\x69\x6E\x3A\x20\x31\x30\x70\x78\x20\x30\x3B\x0A\x09\x09\x09\x09\x7D\x0A\x09\x09\x09\x09\x23\x65\x64\x69\x74\x6F\x72\x20\x7B\x0A\x09\x09\x09\x09\x09\x68\x65\x69\x67\x68\x74\x3A\x20\x34\x30\x30\x70\x78\x3B\x0A\x09\x09\x09\x09\x7D\x0A\x09\x09\x09\x7D\x0A\x09\x09\x3C\x2F\x73\x74\x79\x6C\x65\x3E\x0A\x09\x09\x3C\x73\x63\x72\x69\x70\x74\x20\x74\x79\x70\x65\x3D\x22\x6D\x6F\x64\x75\x6C\x65\x22\x20\x73\x72\x63\x3D\x22\x2F\x6D\x61\x69\x6E\x2E\x6A\x73\x22\x3E\x3C\x2F\x73\x63\x72\x69\x70\x74\x3E\x0A\x09\x3C\x2F\x68\x65\x61\x64\x3E\x0A\x09\x3C\x62\x6F\x64\x79\x3E\x0A\x09\x09\x3C\x64\x69\x76\x20\x63\x6C\x61\x73\x73\x3D\x22\x68\x65\x61\x64\x65\x72\x22\x3E\x0A\x09\x09\x09\x41\x0A\x09\x09\x09\x3C\x69\x6D\x61\x67\x65\x20\x63\x6C\x61\x73\x73\x3D\x22\x6C\x6F\x67\x6F\x22\x20\x73\x72\x63\x3D\x22\x2F\x66\x61\x76\x69\x63\x6F\x6E\x2E\x69\x63\x6F\x22\x3E\x3C\x2F\x69\x6D\x61\x67\x65\x3E\x0A\x09\x09\x09\x3C\x69\x6D\x61\x67\x65\x20\x63\x6C\x61\x73\x73\x3D\x22\x6C\x6F\x67\x6F\x22\x20\x73\x72\x63\x3D\x22\x2F\x66\x61\x76\x69\x63\x6F\x6E\x2E\x69\x63\x6F\x22\x3E\x3C\x2F\x69\x6D\x61\x67\x65\x3E\x0A\x09\x09\x09\x61\x6E\x20\x26\x6E\x62\x73\x70\x3B\x0A\x09\x09\x09\x3C\x73\x70\x61\x6E\x20\x63\x6C\x61\x73\x73\x3D\x22\x6D\x65\x6E\x75\x22\x3E\x0A\x09\x09\x09\x09\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\x0A\x09\x09\x09\x09\x09\x3E\x44\x6F\x63\x75\x6D\x65\x6E\x74\x61\x74\x69\x6F\x6E\x3C\x2F\x61\x0A\x09\x09\x09\x09\x3E\x0A\x09\x09\x09\x3C\x2F\x73\x70\x61\x6E\x3E\x0A\x09\x09\x3C\x2F\x64\x69\x76\x3E\x0A\x09\x3C\x2F\x62\x6F\x64\x79\x3E\x0A\x3C\x2F\x68\x74\x6D\x6C\x3E\x0A"), } node.SetMode(420) - node.SetModTimeUnix(1649096690, 22929758) + node.SetModTimeUnix(1695897634, 360414192) node.SetName("index.html") node.SetSize(2201) return node @@ -140,12 +140,12 @@ func generate__www_main_js() *memfs.Node { Path: "/main.js", ContentType: "text/javascript; charset=utf-8", GenFuncName: "generate__www_main_js", - Content: []byte("\x76\x61\x72\x20\x61\x70\x70\x20\x3D\x20\x28\x28\x29\x20\x3D\x3E\x20\x7B\x0A\x20\x20\x2F\x2F\x20\x5F\x77\x77\x77\x2F\x77\x75\x69\x2F\x65\x64\x69\x74\x6F\x72\x2F\x65\x64\x69\x74\x6F\x72\x2E\x6A\x73\x0A\x20\x20\x76\x61\x72\x20\x57\x55\x49\x5F\x45\x44\x49\x54\x4F\x52\x5F\x43\x4C\x41\x53\x53\x20\x3D\x20\x22\x77\x75\x69\x5F\x65\x64\x69\x74\x6F\x72\x22\x3B\x0A\x20\x20\x76\x61\x72\x20\x57\x55\x49\x5F\x45\x44\x49\x54\x4F\x52\x5F\x43\x4C\x41\x53\x53\x5F\x4C\x49\x4E\x45\x20\x3D\x20\x22\x77\x75\x69\x5F\x65\x64\x69\x74\x6F\x72\x5F\x6C\x69\x6E\x65\x22\x3B\x0A\x20\x20\x76\x61\x72\x20\x57\x55\x49\x5F\x45\x44\x49\x54\x4F\x52\x5F\x43\x4C\x41\x53\x53\x5F\x4C\x49\x4E\x45\x5F\x4E\x55\x4D\x42\x45\x52\x20\x3D\x20\x22\x77\x75\x69\x5F\x65\x64\x69\x74\x6F\x72\x5F\x6C\x69\x6E\x65\x5F\x6E\x75\x6D\x62\x65\x72\x22\x3B\x0A\x20\x20\x76\x61\x72\x20\x57\x55\x49\x5F\x45\x44\x49\x54\x4F\x52\x5F\x43\x4C\x41\x53\x53\x5F\x4C\x49\x4E\x45\x5F\x54\x45\x58\x54\x20\x3D\x20\x22\x77\x75\x69\x5F\x65\x64\x69\x74\x6F\x72\x5F\x6C\x69\x6E\x65\x5F\x74\x65\x78\x74\x22\x3B\x0A\x20\x20\x76\x61\x72\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x20\x3D\x20\x28\x0A\x20\x20\x20\x20\x2F\x2A\x2A\x20\x40\x63\x6C\x61\x73\x73\x20\x2A\x2F\x0A\x20\x20\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x32\x28\x6F\x70\x74\x73\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x5F\x74\x68\x69\x73\x20\x3D\x20\x74\x68\x69\x73\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x20\x3D\x20\x6F\x70\x74\x73\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x20\x3D\x20\x5B\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x61\x63\x74\x69\x76\x65\x5F\x66\x69\x6C\x65\x20\x3D\x20\x6E\x75\x6C\x6C\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x61\x63\x74\x69\x76\x65\x5F\x74\x65\x78\x74\x20\x3D\x20\x6E\x75\x6C\x6C\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x61\x6E\x67\x65\x5F\x62\x65\x67\x69\x6E\x20\x3D\x20\x2D\x31\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x61\x6E\x67\x65\x5F\x65\x6E\x64\x20\x3D\x20\x2D\x31\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x61\x77\x5F\x6C\x69\x6E\x65\x73\x20\x3D\x20\x5B\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x69\x73\x5F\x6B\x65\x79\x5F\x63\x6F\x6E\x74\x72\x6F\x6C\x20\x3D\x20\x66\x61\x6C\x73\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x75\x6E\x72\x65\x20\x3D\x20\x6E\x65\x77\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x55\x6E\x64\x6F\x52\x65\x64\x6F\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x69\x64\x20\x3D\x20\x6F\x70\x74\x73\x2E\x69\x64\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x69\x73\x5F\x65\x64\x69\x74\x61\x62\x6C\x65\x20\x3D\x20\x6F\x70\x74\x73\x2E\x69\x73\x5F\x65\x64\x69\x74\x61\x62\x6C\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x65\x6C\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x67\x65\x74\x45\x6C\x65\x6D\x65\x6E\x74\x42\x79\x49\x64\x28\x6F\x70\x74\x73\x2E\x69\x64\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x21\x65\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x6F\x6C\x65\x2E\x65\x72\x72\x6F\x72\x28\x22\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x3A\x20\x65\x6C\x65\x6D\x65\x6E\x74\x20\x49\x44\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64\x3A\x22\x2C\x20\x6F\x70\x74\x73\x2E\x69\x64\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x20\x3D\x20\x65\x6C\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x69\x6E\x69\x74\x53\x74\x79\x6C\x65\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x57\x55\x49\x5F\x45\x44\x49\x54\x4F\x52\x5F\x43\x4C\x41\x53\x53\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x73\x65\x6C\x20\x3D\x20\x77\x69\x6E\x64\x6F\x77\x2E\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x21\x73\x65\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x6F\x6C\x65\x2E\x65\x72\x72\x6F\x72\x28\x22\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x3A\x20\x63\x61\x6E\x6E\x6F\x74\x20\x67\x65\x74\x20\x77\x69\x6E\x64\x6F\x77\x20\x73\x65\x6C\x65\x63\x74\x69\x6F\x6E\x22\x2C\x20\x6F\x70\x74\x73\x2E\x69\x64\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x73\x65\x6C\x20\x3D\x20\x73\x65\x6C\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x61\x6E\x67\x65\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x63\x72\x65\x61\x74\x65\x52\x61\x6E\x67\x65\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x6F\x6E\x6B\x65\x79\x75\x70\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x65\x76\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x74\x68\x69\x73\x2E\x6F\x6E\x4B\x65\x79\x75\x70\x44\x6F\x63\x75\x6D\x65\x6E\x74\x28\x5F\x74\x68\x69\x73\x2C\x20\x65\x76\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x47\x65\x74\x43\x6F\x6E\x74\x65\x6E\x74\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x63\x6F\x6E\x74\x65\x6E\x74\x20\x3D\x20\x22\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x66\x6F\x72\x20\x28\x76\x61\x72\x20\x78\x20\x3D\x20\x30\x3B\x20\x78\x20\x3C\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x2E\x6C\x65\x6E\x67\x74\x68\x3B\x20\x78\x2B\x2B\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x78\x20\x3E\x20\x30\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x74\x65\x6E\x74\x20\x2B\x3D\x20\x22\x5C\x6E\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x74\x65\x6E\x74\x20\x2B\x3D\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x5B\x78\x5D\x2E\x65\x6C\x5F\x74\x65\x78\x74\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x63\x6F\x6E\x74\x65\x6E\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x47\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x52\x61\x6E\x67\x65\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x65\x67\x69\x6E\x5F\x61\x74\x3A\x20\x74\x68\x69\x73\x2E\x72\x61\x6E\x67\x65\x5F\x62\x65\x67\x69\x6E\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6E\x64\x5F\x61\x74\x3A\x20\x74\x68\x69\x73\x2E\x72\x61\x6E\x67\x65\x5F\x65\x6E\x64\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x4F\x6E\x43\x6C\x69\x63\x6B\x54\x65\x78\x74\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x74\x65\x78\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x73\x65\x6C\x20\x3D\x20\x77\x69\x6E\x64\x6F\x77\x2E\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x73\x65\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x73\x65\x6C\x20\x3D\x20\x73\x65\x6C\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x4F\x6E\x4B\x65\x79\x75\x70\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x78\x2C\x20\x74\x65\x78\x74\x2C\x20\x65\x76\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x74\x65\x78\x74\x5F\x62\x65\x66\x6F\x72\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x74\x65\x78\x74\x5F\x61\x66\x74\x65\x72\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x6F\x66\x66\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x73\x77\x69\x74\x63\x68\x20\x28\x65\x76\x2E\x6B\x65\x79\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x41\x6C\x74\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x41\x72\x72\x6F\x77\x44\x6F\x77\x6E\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x41\x72\x72\x6F\x77\x4C\x65\x66\x74\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x41\x72\x72\x6F\x77\x52\x69\x67\x68\x74\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x41\x72\x72\x6F\x77\x55\x70\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x43\x61\x70\x73\x4C\x6F\x63\x6B\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x43\x6F\x6E\x74\x65\x78\x74\x4D\x65\x6E\x75\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x45\x6E\x64\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x48\x6F\x6D\x65\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x49\x6E\x73\x65\x72\x74\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x4F\x53\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x50\x61\x67\x65\x44\x6F\x77\x6E\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x50\x61\x67\x65\x55\x70\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x50\x61\x75\x73\x65\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x50\x72\x69\x6E\x74\x53\x63\x72\x65\x65\x6E\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x53\x63\x72\x6F\x6C\x6C\x4C\x6F\x63\x6B\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x53\x68\x69\x66\x74\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x42\x61\x63\x6B\x73\x70\x61\x63\x65\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x76\x2E\x70\x72\x65\x76\x65\x6E\x74\x44\x65\x66\x61\x75\x6C\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x65\x78\x74\x5F\x62\x65\x66\x6F\x72\x65\x20\x3D\x20\x74\x68\x69\x73\x2E\x72\x61\x77\x5F\x6C\x69\x6E\x65\x73\x5B\x78\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x65\x6C\x5F\x74\x65\x78\x74\x5F\x63\x75\x72\x72\x20\x3D\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x5B\x78\x5D\x2E\x65\x6C\x5F\x74\x65\x78\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x65\x78\x74\x5F\x61\x66\x74\x65\x72\x20\x3D\x20\x65\x6C\x5F\x74\x65\x78\x74\x5F\x63\x75\x72\x72\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6F\x66\x66\x20\x3D\x20\x74\x68\x69\x73\x2E\x73\x65\x6C\x2E\x66\x6F\x63\x75\x73\x4F\x66\x66\x73\x65\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x6F\x66\x66\x20\x3E\x20\x30\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x75\x6E\x72\x65\x2E\x44\x6F\x55\x70\x64\x61\x74\x65\x28\x78\x2C\x20\x74\x65\x78\x74\x5F\x62\x65\x66\x6F\x72\x65\x2C\x20\x74\x65\x78\x74\x5F\x61\x66\x74\x65\x72\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x61\x77\x5F\x6C\x69\x6E\x65\x73\x5B\x78\x5D\x20\x3D\x20\x74\x65\x78\x74\x5F\x61\x66\x74\x65\x72\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x73\x65\x74\x43\x61\x72\x65\x74\x28\x65\x6C\x5F\x74\x65\x78\x74\x5F\x63\x75\x72\x72\x2C\x20\x6F\x66\x66\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x66\x61\x6C\x73\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x65\x6C\x5F\x74\x65\x78\x74\x5F\x70\x72\x65\x76\x20\x3D\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x5B\x78\x20\x2D\x20\x31\x5D\x2E\x65\x6C\x5F\x74\x65\x78\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x75\x6E\x72\x65\x2E\x44\x6F\x4A\x6F\x69\x6E\x28\x78\x20\x2D\x20\x31\x2C\x20\x65\x6C\x5F\x74\x65\x78\x74\x5F\x70\x72\x65\x76\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x2C\x20\x65\x6C\x5F\x74\x65\x78\x74\x5F\x63\x75\x72\x72\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6F\x66\x66\x20\x3D\x20\x65\x6C\x5F\x74\x65\x78\x74\x5F\x70\x72\x65\x76\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x2E\x6C\x65\x6E\x67\x74\x68\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x5F\x74\x65\x78\x74\x5F\x70\x72\x65\x76\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x65\x6C\x5F\x74\x65\x78\x74\x5F\x70\x72\x65\x76\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x2B\x20\x65\x6C\x5F\x74\x65\x78\x74\x5F\x63\x75\x72\x72\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x61\x77\x5F\x6C\x69\x6E\x65\x73\x5B\x78\x20\x2D\x20\x31\x5D\x20\x3D\x20\x65\x6C\x5F\x74\x65\x78\x74\x5F\x70\x72\x65\x76\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x64\x65\x6C\x65\x74\x65\x4C\x69\x6E\x65\x28\x78\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x73\x65\x74\x43\x61\x72\x65\x74\x28\x65\x6C\x5F\x74\x65\x78\x74\x5F\x70\x72\x65\x76\x2C\x20\x6F\x66\x66\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x66\x61\x6C\x73\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x43\x6F\x6E\x74\x72\x6F\x6C\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x69\x73\x5F\x6B\x65\x79\x5F\x63\x6F\x6E\x74\x72\x6F\x6C\x20\x3D\x20\x66\x61\x6C\x73\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x45\x6E\x74\x65\x72\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x76\x2E\x70\x72\x65\x76\x65\x6E\x74\x44\x65\x66\x61\x75\x6C\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x72\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x69\x73\x5F\x6B\x65\x79\x5F\x63\x6F\x6E\x74\x72\x6F\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x76\x2E\x70\x72\x65\x76\x65\x6E\x74\x44\x65\x66\x61\x75\x6C\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x7A\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x69\x73\x5F\x6B\x65\x79\x5F\x63\x6F\x6E\x74\x72\x6F\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x76\x2E\x70\x72\x65\x76\x65\x6E\x74\x44\x65\x66\x61\x75\x6C\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x64\x65\x66\x61\x75\x6C\x74\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x69\x73\x5F\x6B\x65\x79\x5F\x63\x6F\x6E\x74\x72\x6F\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x75\x6E\x72\x65\x2E\x44\x6F\x55\x70\x64\x61\x74\x65\x28\x78\x2C\x20\x74\x68\x69\x73\x2E\x72\x61\x77\x5F\x6C\x69\x6E\x65\x73\x5B\x78\x5D\x2C\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x5B\x78\x5D\x2E\x65\x6C\x5F\x74\x65\x78\x74\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x61\x77\x5F\x6C\x69\x6E\x65\x73\x5B\x78\x5D\x20\x3D\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x5B\x78\x5D\x2E\x65\x6C\x5F\x74\x65\x78\x74\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x74\x72\x75\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x4F\x6E\x4B\x65\x79\x64\x6F\x77\x6E\x4F\x6E\x4C\x69\x6E\x65\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x78\x2C\x20\x65\x6C\x5F\x74\x65\x78\x74\x2C\x20\x65\x76\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x74\x65\x78\x74\x5F\x62\x65\x66\x6F\x72\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x74\x65\x78\x74\x5F\x61\x66\x74\x65\x72\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x6F\x66\x66\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x73\x77\x69\x74\x63\x68\x20\x28\x65\x76\x2E\x6B\x65\x79\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x41\x72\x72\x6F\x77\x55\x70\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x78\x20\x3D\x3D\x20\x30\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x66\x61\x6C\x73\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x76\x2E\x70\x72\x65\x76\x65\x6E\x74\x44\x65\x66\x61\x75\x6C\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x65\x6C\x5F\x74\x65\x78\x74\x5F\x31\x20\x3D\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x5B\x78\x20\x2D\x20\x31\x5D\x2E\x65\x6C\x5F\x74\x65\x78\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x6F\x66\x66\x5F\x31\x20\x3D\x20\x74\x68\x69\x73\x2E\x73\x65\x6C\x2E\x66\x6F\x63\x75\x73\x4F\x66\x66\x73\x65\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x6F\x66\x66\x5F\x31\x20\x3E\x20\x65\x6C\x5F\x74\x65\x78\x74\x5F\x31\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x2E\x6C\x65\x6E\x67\x74\x68\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6F\x66\x66\x5F\x31\x20\x3D\x20\x65\x6C\x5F\x74\x65\x78\x74\x5F\x31\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x2E\x6C\x65\x6E\x67\x74\x68\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x73\x65\x74\x43\x61\x72\x65\x74\x28\x65\x6C\x5F\x74\x65\x78\x74\x5F\x31\x2C\x20\x6F\x66\x66\x5F\x31\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x78\x20\x3D\x3D\x20\x31\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x73\x63\x72\x6F\x6C\x6C\x54\x6F\x70\x20\x3D\x20\x30\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x20\x65\x6C\x73\x65\x20\x69\x66\x20\x28\x78\x20\x2A\x20\x32\x33\x20\x3C\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x73\x63\x72\x6F\x6C\x6C\x54\x6F\x70\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x73\x63\x72\x6F\x6C\x6C\x54\x6F\x70\x20\x2D\x3D\x20\x32\x35\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x66\x61\x6C\x73\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x41\x72\x72\x6F\x77\x44\x6F\x77\x6E\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x78\x20\x3D\x3D\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x2E\x6C\x65\x6E\x67\x74\x68\x20\x2D\x20\x31\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x66\x61\x6C\x73\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x76\x2E\x70\x72\x65\x76\x65\x6E\x74\x44\x65\x66\x61\x75\x6C\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x5F\x74\x65\x78\x74\x5F\x31\x20\x3D\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x5B\x78\x20\x2B\x20\x31\x5D\x2E\x65\x6C\x5F\x74\x65\x78\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6F\x66\x66\x5F\x31\x20\x3D\x20\x74\x68\x69\x73\x2E\x73\x65\x6C\x2E\x66\x6F\x63\x75\x73\x4F\x66\x66\x73\x65\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x6F\x66\x66\x5F\x31\x20\x3E\x20\x65\x6C\x5F\x74\x65\x78\x74\x5F\x31\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x2E\x6C\x65\x6E\x67\x74\x68\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6F\x66\x66\x5F\x31\x20\x3D\x20\x65\x6C\x5F\x74\x65\x78\x74\x5F\x31\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x2E\x6C\x65\x6E\x67\x74\x68\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x73\x65\x74\x43\x61\x72\x65\x74\x28\x65\x6C\x5F\x74\x65\x78\x74\x5F\x31\x2C\x20\x6F\x66\x66\x5F\x31\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x78\x20\x2B\x3D\x20\x32\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x78\x20\x2A\x20\x32\x35\x20\x3E\x3D\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x63\x6C\x69\x65\x6E\x74\x48\x65\x69\x67\x68\x74\x20\x2B\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x73\x63\x72\x6F\x6C\x6C\x54\x6F\x70\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x73\x63\x72\x6F\x6C\x6C\x54\x6F\x70\x20\x2B\x3D\x20\x32\x35\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x66\x61\x6C\x73\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x43\x6F\x6E\x74\x72\x6F\x6C\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x69\x73\x5F\x6B\x65\x79\x5F\x63\x6F\x6E\x74\x72\x6F\x6C\x20\x3D\x20\x74\x72\x75\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x44\x65\x6C\x65\x74\x65\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x76\x2E\x70\x72\x65\x76\x65\x6E\x74\x44\x65\x66\x61\x75\x6C\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x69\x73\x5F\x6A\x6F\x69\x6E\x5F\x6C\x69\x6E\x65\x5F\x61\x66\x74\x65\x72\x20\x3D\x20\x66\x61\x6C\x73\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x65\x6C\x5F\x74\x65\x78\x74\x5F\x63\x75\x72\x72\x65\x6E\x74\x20\x3D\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x5B\x78\x5D\x2E\x65\x6C\x5F\x74\x65\x78\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6F\x66\x66\x5F\x31\x20\x3D\x20\x74\x68\x69\x73\x2E\x73\x65\x6C\x2E\x66\x6F\x63\x75\x73\x4F\x66\x66\x73\x65\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x65\x78\x74\x5F\x62\x65\x66\x6F\x72\x65\x20\x3D\x20\x65\x6C\x5F\x74\x65\x78\x74\x5F\x63\x75\x72\x72\x65\x6E\x74\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x65\x78\x74\x5F\x61\x66\x74\x65\x72\x20\x3D\x20\x22\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x65\x78\x74\x5F\x62\x65\x66\x6F\x72\x65\x2E\x6C\x65\x6E\x67\x74\x68\x20\x3D\x3D\x3D\x20\x30\x20\x7C\x7C\x20\x6F\x66\x66\x5F\x31\x20\x3D\x3D\x3D\x20\x74\x65\x78\x74\x5F\x62\x65\x66\x6F\x72\x65\x2E\x6C\x65\x6E\x67\x74\x68\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x73\x5F\x6A\x6F\x69\x6E\x5F\x6C\x69\x6E\x65\x5F\x61\x66\x74\x65\x72\x20\x3D\x20\x74\x72\x75\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x69\x73\x5F\x6A\x6F\x69\x6E\x5F\x6C\x69\x6E\x65\x5F\x61\x66\x74\x65\x72\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x78\x20\x2B\x20\x31\x20\x3C\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x2E\x6C\x65\x6E\x67\x74\x68\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x65\x6C\x5F\x74\x65\x78\x74\x5F\x61\x66\x74\x65\x72\x20\x3D\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x5B\x78\x20\x2B\x20\x31\x5D\x2E\x65\x6C\x5F\x74\x65\x78\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x65\x78\x74\x5F\x61\x66\x74\x65\x72\x20\x3D\x20\x65\x6C\x5F\x74\x65\x78\x74\x5F\x61\x66\x74\x65\x72\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x5F\x74\x65\x78\x74\x5F\x61\x66\x74\x65\x72\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x22\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x75\x6E\x72\x65\x2E\x44\x6F\x4A\x6F\x69\x6E\x28\x78\x2C\x20\x74\x65\x78\x74\x5F\x62\x65\x66\x6F\x72\x65\x2C\x20\x74\x65\x78\x74\x5F\x61\x66\x74\x65\x72\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x64\x65\x6C\x65\x74\x65\x4C\x69\x6E\x65\x28\x78\x20\x2B\x20\x31\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x65\x78\x74\x5F\x61\x66\x74\x65\x72\x20\x3D\x20\x74\x65\x78\x74\x5F\x62\x65\x66\x6F\x72\x65\x20\x2B\x20\x74\x65\x78\x74\x5F\x61\x66\x74\x65\x72\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x20\x65\x6C\x73\x65\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x65\x78\x74\x5F\x61\x66\x74\x65\x72\x20\x3D\x20\x74\x65\x78\x74\x5F\x62\x65\x66\x6F\x72\x65\x2E\x73\x6C\x69\x63\x65\x28\x30\x2C\x20\x6F\x66\x66\x5F\x31\x29\x20\x2B\x20\x74\x65\x78\x74\x5F\x62\x65\x66\x6F\x72\x65\x2E\x73\x6C\x69\x63\x65\x28\x6F\x66\x66\x5F\x31\x20\x2B\x20\x31\x2C\x20\x74\x65\x78\x74\x5F\x62\x65\x66\x6F\x72\x65\x2E\x6C\x65\x6E\x67\x74\x68\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x75\x6E\x72\x65\x2E\x44\x6F\x55\x70\x64\x61\x74\x65\x28\x78\x2C\x20\x74\x65\x78\x74\x5F\x62\x65\x66\x6F\x72\x65\x2C\x20\x74\x65\x78\x74\x5F\x61\x66\x74\x65\x72\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x5B\x78\x5D\x2E\x65\x6C\x5F\x74\x65\x78\x74\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x74\x65\x78\x74\x5F\x61\x66\x74\x65\x72\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x61\x77\x5F\x6C\x69\x6E\x65\x73\x5B\x78\x5D\x20\x3D\x20\x74\x65\x78\x74\x5F\x61\x66\x74\x65\x72\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x73\x65\x74\x43\x61\x72\x65\x74\x28\x65\x6C\x5F\x74\x65\x78\x74\x5F\x63\x75\x72\x72\x65\x6E\x74\x2C\x20\x6F\x66\x66\x5F\x31\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x45\x6E\x74\x65\x72\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x76\x2E\x70\x72\x65\x76\x65\x6E\x74\x44\x65\x66\x61\x75\x6C\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6F\x66\x66\x5F\x31\x20\x3D\x20\x74\x68\x69\x73\x2E\x73\x65\x6C\x2E\x66\x6F\x63\x75\x73\x4F\x66\x66\x73\x65\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x74\x65\x78\x74\x20\x3D\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x5B\x78\x5D\x2E\x65\x6C\x5F\x74\x65\x78\x74\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x65\x78\x74\x5F\x62\x65\x66\x6F\x72\x65\x20\x3D\x20\x74\x65\x78\x74\x2E\x73\x6C\x69\x63\x65\x28\x30\x2C\x20\x6F\x66\x66\x5F\x31\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x65\x78\x74\x5F\x61\x66\x74\x65\x72\x20\x3D\x20\x74\x65\x78\x74\x2E\x73\x6C\x69\x63\x65\x28\x6F\x66\x66\x5F\x31\x2C\x20\x74\x65\x78\x74\x2E\x6C\x65\x6E\x67\x74\x68\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x75\x6E\x72\x65\x2E\x44\x6F\x53\x70\x6C\x69\x74\x28\x78\x2C\x20\x74\x65\x78\x74\x5F\x62\x65\x66\x6F\x72\x65\x2C\x20\x74\x65\x78\x74\x5F\x61\x66\x74\x65\x72\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x5B\x78\x5D\x2E\x65\x6C\x5F\x74\x65\x78\x74\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x74\x65\x78\x74\x5F\x62\x65\x66\x6F\x72\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x61\x77\x5F\x6C\x69\x6E\x65\x73\x5B\x78\x5D\x20\x3D\x20\x74\x65\x78\x74\x5F\x62\x65\x66\x6F\x72\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x69\x6E\x73\x65\x72\x74\x4E\x65\x77\x6C\x69\x6E\x65\x28\x78\x20\x2B\x20\x31\x2C\x20\x74\x65\x78\x74\x5F\x61\x66\x74\x65\x72\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x78\x20\x2B\x20\x33\x20\x3E\x3D\x20\x74\x68\x69\x73\x2E\x72\x61\x77\x5F\x6C\x69\x6E\x65\x73\x2E\x6C\x65\x6E\x67\x74\x68\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x73\x63\x72\x6F\x6C\x6C\x54\x6F\x70\x20\x3D\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x73\x63\x72\x6F\x6C\x6C\x48\x65\x69\x67\x68\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x54\x61\x62\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x76\x2E\x70\x72\x65\x76\x65\x6E\x74\x44\x65\x66\x61\x75\x6C\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x5F\x74\x65\x78\x74\x5F\x31\x20\x3D\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x5B\x78\x5D\x2E\x65\x6C\x5F\x74\x65\x78\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6F\x66\x66\x5F\x31\x20\x3D\x20\x74\x68\x69\x73\x2E\x73\x65\x6C\x2E\x66\x6F\x63\x75\x73\x4F\x66\x66\x73\x65\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x65\x78\x74\x5F\x62\x65\x66\x6F\x72\x65\x20\x3D\x20\x65\x6C\x5F\x74\x65\x78\x74\x5F\x31\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x65\x78\x74\x5F\x61\x66\x74\x65\x72\x20\x3D\x20\x74\x65\x78\x74\x5F\x62\x65\x66\x6F\x72\x65\x2E\x73\x6C\x69\x63\x65\x28\x30\x2C\x20\x6F\x66\x66\x5F\x31\x29\x20\x2B\x20\x22\x09\x22\x20\x2B\x20\x74\x65\x78\x74\x5F\x62\x65\x66\x6F\x72\x65\x2E\x73\x6C\x69\x63\x65\x28\x6F\x66\x66\x5F\x31\x2C\x20\x74\x65\x78\x74\x5F\x62\x65\x66\x6F\x72\x65\x2E\x6C\x65\x6E\x67\x74\x68\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x75\x6E\x72\x65\x2E\x44\x6F\x55\x70\x64\x61\x74\x65\x28\x78\x2C\x20\x74\x65\x78\x74\x5F\x62\x65\x66\x6F\x72\x65\x2C\x20\x74\x65\x78\x74\x5F\x61\x66\x74\x65\x72\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x5F\x74\x65\x78\x74\x5F\x31\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x74\x65\x78\x74\x5F\x61\x66\x74\x65\x72\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x61\x77\x5F\x6C\x69\x6E\x65\x73\x5B\x78\x5D\x20\x3D\x20\x74\x65\x78\x74\x5F\x61\x66\x74\x65\x72\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x73\x65\x74\x43\x61\x72\x65\x74\x28\x65\x6C\x5F\x74\x65\x78\x74\x5F\x31\x2C\x20\x6F\x66\x66\x5F\x31\x20\x2B\x20\x31\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x72\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x69\x73\x5F\x6B\x65\x79\x5F\x63\x6F\x6E\x74\x72\x6F\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x76\x2E\x70\x72\x65\x76\x65\x6E\x74\x44\x65\x66\x61\x75\x6C\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x64\x6F\x52\x65\x64\x6F\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x73\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x69\x73\x5F\x6B\x65\x79\x5F\x63\x6F\x6E\x74\x72\x6F\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x76\x2E\x70\x72\x65\x76\x65\x6E\x74\x44\x65\x66\x61\x75\x6C\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x76\x2E\x73\x74\x6F\x70\x50\x72\x6F\x70\x61\x67\x61\x74\x69\x6F\x6E\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x4F\x6E\x53\x61\x76\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x4F\x6E\x53\x61\x76\x65\x28\x74\x68\x69\x73\x2E\x47\x65\x74\x43\x6F\x6E\x74\x65\x6E\x74\x28\x29\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x66\x61\x6C\x73\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x7A\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x69\x73\x5F\x6B\x65\x79\x5F\x63\x6F\x6E\x74\x72\x6F\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x76\x2E\x70\x72\x65\x76\x65\x6E\x74\x44\x65\x66\x61\x75\x6C\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x64\x6F\x55\x6E\x64\x6F\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x4F\x6E\x4D\x6F\x75\x73\x65\x44\x6F\x77\x6E\x41\x74\x4C\x69\x6E\x65\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x78\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x61\x6E\x67\x65\x5F\x62\x65\x67\x69\x6E\x20\x3D\x20\x78\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x4F\x6E\x4D\x6F\x75\x73\x65\x55\x70\x41\x74\x4C\x69\x6E\x65\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x78\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x61\x6E\x67\x65\x5F\x65\x6E\x64\x20\x3D\x20\x78\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x72\x61\x6E\x67\x65\x5F\x65\x6E\x64\x20\x3C\x20\x74\x68\x69\x73\x2E\x72\x61\x6E\x67\x65\x5F\x62\x65\x67\x69\x6E\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x79\x20\x3D\x20\x30\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x66\x6F\x72\x20\x28\x3B\x20\x79\x20\x3C\x20\x74\x68\x69\x73\x2E\x72\x61\x6E\x67\x65\x5F\x62\x65\x67\x69\x6E\x3B\x20\x79\x2B\x2B\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x63\x68\x69\x6C\x64\x72\x65\x6E\x5B\x79\x5D\x2E\x73\x65\x74\x41\x74\x74\x72\x69\x62\x75\x74\x65\x28\x22\x73\x74\x79\x6C\x65\x22\x2C\x20\x22\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x66\x6F\x72\x20\x28\x3B\x20\x79\x20\x3C\x3D\x20\x74\x68\x69\x73\x2E\x72\x61\x6E\x67\x65\x5F\x65\x6E\x64\x3B\x20\x79\x2B\x2B\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x63\x68\x69\x6C\x64\x72\x65\x6E\x5B\x79\x5D\x2E\x73\x65\x74\x41\x74\x74\x72\x69\x62\x75\x74\x65\x28\x22\x73\x74\x79\x6C\x65\x22\x2C\x20\x22\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x2D\x63\x6F\x6C\x6F\x72\x3A\x6C\x69\x67\x68\x74\x73\x61\x6C\x6D\x6F\x6E\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x66\x6F\x72\x20\x28\x3B\x20\x79\x20\x3C\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x63\x68\x69\x6C\x64\x72\x65\x6E\x2E\x6C\x65\x6E\x67\x74\x68\x3B\x20\x79\x2B\x2B\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x63\x68\x69\x6C\x64\x72\x65\x6E\x5B\x79\x5D\x2E\x73\x65\x74\x41\x74\x74\x72\x69\x62\x75\x74\x65\x28\x22\x73\x74\x79\x6C\x65\x22\x2C\x20\x22\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x4F\x6E\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x4F\x6E\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x28\x74\x68\x69\x73\x2E\x72\x61\x6E\x67\x65\x5F\x62\x65\x67\x69\x6E\x2C\x20\x74\x68\x69\x73\x2E\x72\x61\x6E\x67\x65\x5F\x65\x6E\x64\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x53\x65\x74\x45\x64\x69\x74\x4F\x66\x66\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x66\x6F\x72\x20\x28\x76\x61\x72\x20\x78\x20\x3D\x20\x30\x3B\x20\x78\x20\x3C\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x2E\x6C\x65\x6E\x67\x74\x68\x3B\x20\x78\x2B\x2B\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x5B\x78\x5D\x2E\x53\x65\x74\x45\x64\x69\x74\x4F\x66\x66\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x53\x65\x74\x45\x64\x69\x74\x4F\x6E\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x66\x6F\x72\x20\x28\x76\x61\x72\x20\x78\x20\x3D\x20\x30\x3B\x20\x78\x20\x3C\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x2E\x6C\x65\x6E\x67\x74\x68\x3B\x20\x78\x2B\x2B\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x5B\x78\x5D\x2E\x53\x65\x74\x45\x64\x69\x74\x4F\x6E\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x4F\x70\x65\x6E\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x6E\x6F\x64\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x61\x63\x74\x69\x76\x65\x5F\x66\x69\x6C\x65\x20\x3D\x20\x6E\x6F\x64\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x63\x6F\x6E\x74\x65\x6E\x74\x20\x3D\x20\x61\x74\x6F\x62\x28\x6E\x6F\x64\x65\x2E\x63\x6F\x6E\x74\x65\x6E\x74\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x74\x65\x6E\x74\x20\x3D\x20\x63\x6F\x6E\x74\x65\x6E\x74\x2E\x72\x65\x70\x6C\x61\x63\x65\x28\x22\x5C\x72\x5C\x6E\x22\x2C\x20\x22\x5C\x6E\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x61\x77\x5F\x6C\x69\x6E\x65\x73\x20\x3D\x20\x63\x6F\x6E\x74\x65\x6E\x74\x2E\x73\x70\x6C\x69\x74\x28\x22\x5C\x6E\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x20\x3D\x20\x5B\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x66\x6F\x72\x20\x28\x76\x61\x72\x20\x78\x20\x3D\x20\x30\x3B\x20\x78\x20\x3C\x20\x74\x68\x69\x73\x2E\x72\x61\x77\x5F\x6C\x69\x6E\x65\x73\x2E\x6C\x65\x6E\x67\x74\x68\x3B\x20\x78\x2B\x2B\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x6C\x69\x6E\x65\x20\x3D\x20\x6E\x65\x77\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x4C\x69\x6E\x65\x28\x78\x2C\x20\x74\x68\x69\x73\x2E\x72\x61\x77\x5F\x6C\x69\x6E\x65\x73\x5B\x78\x5D\x2C\x20\x74\x68\x69\x73\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x2E\x70\x75\x73\x68\x28\x6C\x69\x6E\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x65\x6E\x64\x65\x72\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x43\x6C\x65\x61\x72\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x72\x61\x6E\x67\x65\x5F\x62\x65\x67\x69\x6E\x20\x3C\x20\x30\x20\x7C\x7C\x20\x74\x68\x69\x73\x2E\x72\x61\x6E\x67\x65\x5F\x65\x6E\x64\x20\x3D\x3D\x20\x30\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x66\x6F\x72\x20\x28\x76\x61\x72\x20\x78\x20\x3D\x20\x74\x68\x69\x73\x2E\x72\x61\x6E\x67\x65\x5F\x62\x65\x67\x69\x6E\x3B\x20\x78\x20\x3C\x3D\x20\x74\x68\x69\x73\x2E\x72\x61\x6E\x67\x65\x5F\x65\x6E\x64\x3B\x20\x78\x2B\x2B\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x63\x68\x69\x6C\x64\x72\x65\x6E\x5B\x78\x5D\x2E\x73\x65\x74\x41\x74\x74\x72\x69\x62\x75\x74\x65\x28\x22\x73\x74\x79\x6C\x65\x22\x2C\x20\x22\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x61\x6E\x67\x65\x5F\x62\x65\x67\x69\x6E\x20\x3D\x20\x2D\x31\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x61\x6E\x67\x65\x5F\x65\x6E\x64\x20\x3D\x20\x2D\x31\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x69\x6E\x69\x74\x53\x74\x79\x6C\x65\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x73\x74\x79\x6C\x65\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x63\x72\x65\x61\x74\x65\x45\x6C\x65\x6D\x65\x6E\x74\x28\x22\x73\x74\x79\x6C\x65\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x73\x74\x79\x6C\x65\x2E\x74\x79\x70\x65\x20\x3D\x20\x22\x74\x65\x78\x74\x2F\x63\x73\x73\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x73\x74\x79\x6C\x65\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x22\x5C\x6E\x09\x09\x09\x5B\x63\x6F\x6E\x74\x65\x6E\x74\x65\x64\x69\x74\x61\x62\x6C\x65\x5D\x20\x7B\x5C\x6E\x09\x09\x09\x09\x6F\x75\x74\x6C\x69\x6E\x65\x3A\x20\x30\x70\x78\x20\x73\x6F\x6C\x69\x64\x20\x74\x72\x61\x6E\x73\x70\x61\x72\x65\x6E\x74\x3B\x5C\x6E\x09\x09\x09\x7D\x5C\x6E\x09\x09\x09\x2E\x22\x20\x2B\x20\x57\x55\x49\x5F\x45\x44\x49\x54\x4F\x52\x5F\x43\x4C\x41\x53\x53\x20\x2B\x20\x22\x20\x7B\x5C\x6E\x09\x09\x09\x09\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x2D\x63\x6F\x6C\x6F\x72\x3A\x20\x63\x6F\x72\x6E\x73\x69\x6C\x6B\x3B\x5C\x6E\x09\x09\x09\x09\x66\x6F\x6E\x74\x2D\x66\x61\x6D\x69\x6C\x79\x3A\x20\x6D\x6F\x6E\x6F\x73\x70\x61\x63\x65\x3B\x5C\x6E\x09\x09\x09\x09\x6F\x76\x65\x72\x66\x6C\x6F\x77\x2D\x79\x3A\x20\x61\x75\x74\x6F\x3B\x5C\x6E\x09\x09\x09\x09\x77\x69\x64\x74\x68\x3A\x20\x31\x30\x30\x25\x3B\x5C\x6E\x09\x09\x09\x7D\x5C\x6E\x09\x09\x09\x2E\x22\x20\x2B\x20\x57\x55\x49\x5F\x45\x44\x49\x54\x4F\x52\x5F\x43\x4C\x41\x53\x53\x5F\x4C\x49\x4E\x45\x20\x2B\x20\x22\x20\x7B\x5C\x6E\x09\x09\x09\x09\x64\x69\x73\x70\x6C\x61\x79\x3A\x20\x62\x6C\x6F\x63\x6B\x3B\x5C\x6E\x09\x09\x09\x09\x77\x69\x64\x74\x68\x3A\x20\x31\x30\x30\x25\x3B\x5C\x6E\x09\x09\x09\x7D\x5C\x6E\x09\x09\x09\x2E\x22\x20\x2B\x20\x57\x55\x49\x5F\x45\x44\x49\x54\x4F\x52\x5F\x43\x4C\x41\x53\x53\x5F\x4C\x49\x4E\x45\x5F\x4E\x55\x4D\x42\x45\x52\x20\x2B\x20\x22\x20\x7B\x5C\x6E\x09\x09\x09\x09\x63\x6F\x6C\x6F\x72\x3A\x20\x64\x69\x6D\x67\x72\x65\x79\x3B\x5C\x6E\x09\x09\x09\x09\x63\x75\x72\x73\x6F\x72\x3A\x20\x70\x6F\x69\x6E\x74\x65\x72\x3B\x5C\x6E\x09\x09\x09\x09\x64\x69\x73\x70\x6C\x61\x79\x3A\x20\x69\x6E\x6C\x69\x6E\x65\x2D\x62\x6C\x6F\x63\x6B\x3B\x5C\x6E\x09\x09\x09\x09\x70\x61\x64\x64\x69\x6E\x67\x3A\x20\x34\x70\x78\x20\x31\x30\x70\x78\x20\x34\x70\x78\x20\x34\x70\x78\x3B\x5C\x6E\x09\x09\x09\x09\x74\x65\x78\x74\x2D\x61\x6C\x69\x67\x6E\x3A\x20\x72\x69\x67\x68\x74\x3B\x5C\x6E\x09\x09\x09\x09\x75\x73\x65\x72\x2D\x73\x65\x6C\x65\x63\x74\x3A\x20\x6E\x6F\x6E\x65\x3B\x5C\x6E\x09\x09\x09\x09\x76\x65\x72\x74\x69\x63\x61\x6C\x2D\x61\x6C\x69\x67\x6E\x3A\x20\x74\x6F\x70\x3B\x5C\x6E\x09\x09\x09\x09\x77\x69\x64\x74\x68\x3A\x20\x33\x30\x70\x78\x3B\x5C\x6E\x09\x09\x09\x7D\x5C\x6E\x09\x09\x09\x2E\x22\x20\x2B\x20\x57\x55\x49\x5F\x45\x44\x49\x54\x4F\x52\x5F\x43\x4C\x41\x53\x53\x5F\x4C\x49\x4E\x45\x5F\x4E\x55\x4D\x42\x45\x52\x20\x2B\x20\x22\x3A\x68\x6F\x76\x65\x72\x20\x7B\x5C\x6E\x09\x09\x09\x09\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x2D\x63\x6F\x6C\x6F\x72\x3A\x20\x6C\x69\x67\x68\x74\x73\x61\x6C\x6D\x6F\x6E\x3B\x5C\x6E\x09\x09\x09\x7D\x5C\x6E\x09\x09\x09\x2E\x22\x20\x2B\x20\x57\x55\x49\x5F\x45\x44\x49\x54\x4F\x52\x5F\x43\x4C\x41\x53\x53\x5F\x4C\x49\x4E\x45\x5F\x54\x45\x58\x54\x20\x2B\x20\x22\x20\x7B\x5C\x6E\x09\x09\x09\x09\x64\x69\x73\x70\x6C\x61\x79\x3A\x20\x69\x6E\x6C\x69\x6E\x65\x2D\x62\x6C\x6F\x63\x6B\x3B\x5C\x6E\x09\x09\x09\x09\x70\x61\x64\x64\x69\x6E\x67\x3A\x20\x34\x70\x78\x3B\x5C\x6E\x09\x09\x09\x09\x62\x6F\x72\x64\x65\x72\x2D\x63\x6F\x6C\x6F\x72\x3A\x20\x6C\x69\x67\x68\x74\x62\x6C\x75\x65\x3B\x5C\x6E\x09\x09\x09\x09\x62\x6F\x72\x64\x65\x72\x2D\x77\x69\x64\x74\x68\x3A\x20\x30\x70\x78\x3B\x5C\x6E\x09\x09\x09\x09\x62\x6F\x72\x64\x65\x72\x2D\x73\x74\x79\x6C\x65\x3A\x20\x73\x6F\x6C\x69\x64\x3B\x5C\x6E\x09\x09\x09\x09\x77\x68\x69\x74\x65\x2D\x73\x70\x61\x63\x65\x3A\x20\x70\x72\x65\x2D\x77\x72\x61\x70\x3B\x5C\x6E\x09\x09\x09\x09\x77\x69\x64\x74\x68\x3A\x20\x63\x61\x6C\x63\x28\x31\x30\x30\x25\x20\x2D\x20\x36\x30\x70\x78\x29\x3B\x5C\x6E\x09\x09\x09\x7D\x5C\x6E\x09\x09\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x68\x65\x61\x64\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x73\x74\x79\x6C\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x64\x6F\x4A\x6F\x69\x6E\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x63\x68\x61\x6E\x67\x65\x73\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x5B\x63\x68\x61\x6E\x67\x65\x73\x2E\x63\x75\x72\x72\x5F\x6C\x69\x6E\x65\x5D\x2E\x65\x6C\x5F\x74\x65\x78\x74\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x63\x68\x61\x6E\x67\x65\x73\x2E\x63\x75\x72\x72\x5F\x74\x65\x78\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x64\x65\x6C\x65\x74\x65\x4C\x69\x6E\x65\x28\x63\x68\x61\x6E\x67\x65\x73\x2E\x6E\x65\x78\x74\x5F\x6C\x69\x6E\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x73\x65\x74\x43\x61\x72\x65\x74\x28\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x5B\x63\x68\x61\x6E\x67\x65\x73\x2E\x63\x75\x72\x72\x5F\x6C\x69\x6E\x65\x5D\x2E\x65\x6C\x5F\x74\x65\x78\x74\x2C\x20\x30\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x64\x6F\x53\x70\x6C\x69\x74\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x63\x68\x61\x6E\x67\x65\x73\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x5B\x63\x68\x61\x6E\x67\x65\x73\x2E\x63\x75\x72\x72\x5F\x6C\x69\x6E\x65\x5D\x2E\x65\x6C\x5F\x74\x65\x78\x74\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x63\x68\x61\x6E\x67\x65\x73\x2E\x63\x75\x72\x72\x5F\x74\x65\x78\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x69\x6E\x73\x65\x72\x74\x4E\x65\x77\x6C\x69\x6E\x65\x28\x63\x68\x61\x6E\x67\x65\x73\x2E\x6E\x65\x78\x74\x5F\x6C\x69\x6E\x65\x2C\x20\x63\x68\x61\x6E\x67\x65\x73\x2E\x6E\x65\x78\x74\x5F\x74\x65\x78\x74\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x64\x6F\x55\x70\x64\x61\x74\x65\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x63\x68\x61\x6E\x67\x65\x73\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x5B\x63\x68\x61\x6E\x67\x65\x73\x2E\x63\x75\x72\x72\x5F\x6C\x69\x6E\x65\x5D\x2E\x65\x6C\x5F\x74\x65\x78\x74\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x63\x68\x61\x6E\x67\x65\x73\x2E\x63\x75\x72\x72\x5F\x74\x65\x78\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x73\x65\x74\x43\x61\x72\x65\x74\x28\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x5B\x63\x68\x61\x6E\x67\x65\x73\x2E\x63\x75\x72\x72\x5F\x6C\x69\x6E\x65\x5D\x2E\x65\x6C\x5F\x74\x65\x78\x74\x2C\x20\x30\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x64\x6F\x52\x65\x64\x6F\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x61\x63\x74\x20\x3D\x20\x74\x68\x69\x73\x2E\x75\x6E\x72\x65\x2E\x52\x65\x64\x6F\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x21\x61\x63\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x73\x77\x69\x74\x63\x68\x20\x28\x61\x63\x74\x2E\x6B\x69\x6E\x64\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x6A\x6F\x69\x6E\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x64\x6F\x4A\x6F\x69\x6E\x28\x61\x63\x74\x2E\x61\x66\x74\x65\x72\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x73\x70\x6C\x69\x74\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x64\x6F\x53\x70\x6C\x69\x74\x28\x61\x63\x74\x2E\x61\x66\x74\x65\x72\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x75\x70\x64\x61\x74\x65\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x64\x6F\x55\x70\x64\x61\x74\x65\x28\x61\x63\x74\x2E\x61\x66\x74\x65\x72\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x64\x6F\x55\x6E\x64\x6F\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x61\x63\x74\x20\x3D\x20\x74\x68\x69\x73\x2E\x75\x6E\x72\x65\x2E\x55\x6E\x64\x6F\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x21\x61\x63\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x73\x77\x69\x74\x63\x68\x20\x28\x61\x63\x74\x2E\x6B\x69\x6E\x64\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x6A\x6F\x69\x6E\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x64\x6F\x53\x70\x6C\x69\x74\x28\x61\x63\x74\x2E\x62\x65\x66\x6F\x72\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x73\x70\x6C\x69\x74\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x64\x6F\x4A\x6F\x69\x6E\x28\x61\x63\x74\x2E\x62\x65\x66\x6F\x72\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x75\x70\x64\x61\x74\x65\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x64\x6F\x55\x70\x64\x61\x74\x65\x28\x61\x63\x74\x2E\x62\x65\x66\x6F\x72\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x64\x65\x6C\x65\x74\x65\x4C\x69\x6E\x65\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x78\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x2E\x73\x70\x6C\x69\x63\x65\x28\x78\x2C\x20\x31\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x61\x77\x5F\x6C\x69\x6E\x65\x73\x2E\x73\x70\x6C\x69\x63\x65\x28\x78\x2C\x20\x31\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x66\x6F\x72\x20\x28\x3B\x20\x78\x20\x3C\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x2E\x6C\x65\x6E\x67\x74\x68\x3B\x20\x78\x2B\x2B\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x5B\x78\x5D\x2E\x53\x65\x74\x4E\x75\x6D\x62\x65\x72\x28\x78\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x65\x6E\x64\x65\x72\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x69\x6E\x73\x65\x72\x74\x4E\x65\x77\x6C\x69\x6E\x65\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x78\x2C\x20\x74\x65\x78\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x6E\x65\x77\x6C\x69\x6E\x65\x20\x3D\x20\x6E\x65\x77\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x4C\x69\x6E\x65\x28\x78\x2C\x20\x74\x65\x78\x74\x2C\x20\x74\x68\x69\x73\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x66\x6F\x72\x20\x28\x76\x61\x72\x20\x79\x20\x3D\x20\x78\x3B\x20\x79\x20\x3C\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x2E\x6C\x65\x6E\x67\x74\x68\x3B\x20\x79\x2B\x2B\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x5B\x79\x5D\x2E\x53\x65\x74\x4E\x75\x6D\x62\x65\x72\x28\x79\x20\x2B\x20\x31\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x2E\x73\x70\x6C\x69\x63\x65\x28\x78\x2C\x20\x30\x2C\x20\x6E\x65\x77\x6C\x69\x6E\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x61\x77\x5F\x6C\x69\x6E\x65\x73\x2E\x73\x70\x6C\x69\x63\x65\x28\x78\x2C\x20\x30\x2C\x20\x74\x65\x78\x74\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x65\x6E\x64\x65\x72\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x73\x65\x74\x43\x61\x72\x65\x74\x28\x6E\x65\x77\x6C\x69\x6E\x65\x2E\x65\x6C\x5F\x74\x65\x78\x74\x2C\x20\x30\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x6F\x6E\x4B\x65\x79\x75\x70\x44\x6F\x63\x75\x6D\x65\x6E\x74\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x65\x64\x2C\x20\x65\x76\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x73\x77\x69\x74\x63\x68\x20\x28\x65\x76\x2E\x6B\x65\x79\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x45\x73\x63\x61\x70\x65\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x76\x2E\x70\x72\x65\x76\x65\x6E\x74\x44\x65\x66\x61\x75\x6C\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x64\x2E\x43\x6C\x65\x61\x72\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x74\x72\x75\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x72\x65\x6E\x64\x65\x72\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x69\x6E\x6E\x65\x72\x48\x54\x4D\x4C\x20\x3D\x20\x22\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x66\x6F\x72\x20\x28\x76\x61\x72\x20\x5F\x69\x20\x3D\x20\x30\x2C\x20\x5F\x61\x20\x3D\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x3B\x20\x5F\x69\x20\x3C\x20\x5F\x61\x2E\x6C\x65\x6E\x67\x74\x68\x3B\x20\x5F\x69\x2B\x2B\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x6C\x69\x6E\x65\x20\x3D\x20\x5F\x61\x5B\x5F\x69\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x6C\x69\x6E\x65\x2E\x65\x6C\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x73\x65\x74\x43\x61\x72\x65\x74\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x65\x6C\x5F\x74\x65\x78\x74\x2C\x20\x6F\x66\x66\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x65\x6C\x5F\x74\x65\x78\x74\x2E\x66\x69\x72\x73\x74\x43\x68\x69\x6C\x64\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x61\x6E\x67\x65\x2E\x73\x65\x74\x53\x74\x61\x72\x74\x28\x65\x6C\x5F\x74\x65\x78\x74\x2E\x66\x69\x72\x73\x74\x43\x68\x69\x6C\x64\x2C\x20\x6F\x66\x66\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x20\x65\x6C\x73\x65\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x61\x6E\x67\x65\x2E\x73\x65\x74\x53\x74\x61\x72\x74\x28\x65\x6C\x5F\x74\x65\x78\x74\x2C\x20\x6F\x66\x66\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x61\x6E\x67\x65\x2E\x63\x6F\x6C\x6C\x61\x70\x73\x65\x28\x74\x72\x75\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x73\x65\x6C\x2E\x72\x65\x6D\x6F\x76\x65\x41\x6C\x6C\x52\x61\x6E\x67\x65\x73\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x73\x65\x6C\x2E\x61\x64\x64\x52\x61\x6E\x67\x65\x28\x74\x68\x69\x73\x2E\x72\x61\x6E\x67\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x32\x3B\x0A\x20\x20\x20\x20\x7D\x28\x29\x0A\x20\x20\x29\x3B\x0A\x20\x20\x76\x61\x72\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x4C\x69\x6E\x65\x20\x3D\x20\x28\x0A\x20\x20\x20\x20\x2F\x2A\x2A\x20\x40\x63\x6C\x61\x73\x73\x20\x2A\x2F\x0A\x20\x20\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x4C\x69\x6E\x65\x32\x28\x78\x2C\x20\x74\x65\x78\x74\x2C\x20\x65\x64\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x5F\x74\x68\x69\x73\x20\x3D\x20\x74\x68\x69\x73\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x78\x20\x3D\x20\x78\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x74\x65\x78\x74\x20\x3D\x20\x74\x65\x78\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x5F\x6E\x75\x6D\x20\x3D\x20\x30\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x5F\x6E\x75\x6D\x20\x3D\x20\x78\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x63\x72\x65\x61\x74\x65\x45\x6C\x65\x6D\x65\x6E\x74\x28\x22\x64\x69\x76\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x57\x55\x49\x5F\x45\x44\x49\x54\x4F\x52\x5F\x43\x4C\x41\x53\x53\x5F\x4C\x49\x4E\x45\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x6E\x75\x6D\x62\x65\x72\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x63\x72\x65\x61\x74\x65\x45\x6C\x65\x6D\x65\x6E\x74\x28\x22\x73\x70\x61\x6E\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x6E\x75\x6D\x62\x65\x72\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x57\x55\x49\x5F\x45\x44\x49\x54\x4F\x52\x5F\x43\x4C\x41\x53\x53\x5F\x4C\x49\x4E\x45\x5F\x4E\x55\x4D\x42\x45\x52\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x6E\x75\x6D\x62\x65\x72\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x5F\x6E\x75\x6D\x20\x2B\x20\x31\x20\x2B\x20\x22\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x6E\x75\x6D\x62\x65\x72\x2E\x6F\x6E\x6D\x6F\x75\x73\x65\x64\x6F\x77\x6E\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x65\x76\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x64\x2E\x4F\x6E\x4D\x6F\x75\x73\x65\x44\x6F\x77\x6E\x41\x74\x4C\x69\x6E\x65\x28\x5F\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x5F\x6E\x75\x6D\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x6E\x75\x6D\x62\x65\x72\x2E\x6F\x6E\x6D\x6F\x75\x73\x65\x75\x70\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x65\x76\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x64\x2E\x4F\x6E\x4D\x6F\x75\x73\x65\x55\x70\x41\x74\x4C\x69\x6E\x65\x28\x5F\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x5F\x6E\x75\x6D\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x74\x65\x78\x74\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x63\x72\x65\x61\x74\x65\x45\x6C\x65\x6D\x65\x6E\x74\x28\x22\x73\x70\x61\x6E\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x74\x65\x78\x74\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x57\x55\x49\x5F\x45\x44\x49\x54\x4F\x52\x5F\x43\x4C\x41\x53\x53\x5F\x4C\x49\x4E\x45\x5F\x54\x45\x58\x54\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x74\x65\x78\x74\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x74\x65\x78\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x74\x65\x78\x74\x2E\x63\x6F\x6E\x74\x65\x6E\x74\x45\x64\x69\x74\x61\x62\x6C\x65\x20\x3D\x20\x22\x74\x72\x75\x65\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x74\x65\x78\x74\x2E\x6F\x6E\x63\x6C\x69\x63\x6B\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x65\x76\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x64\x2E\x4F\x6E\x43\x6C\x69\x63\x6B\x54\x65\x78\x74\x28\x5F\x74\x68\x69\x73\x2E\x65\x6C\x5F\x74\x65\x78\x74\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x74\x65\x78\x74\x2E\x6F\x6E\x6B\x65\x79\x64\x6F\x77\x6E\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x65\x76\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x65\x64\x2E\x4F\x6E\x4B\x65\x79\x64\x6F\x77\x6E\x4F\x6E\x4C\x69\x6E\x65\x28\x5F\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x5F\x6E\x75\x6D\x2C\x20\x5F\x74\x68\x69\x73\x2E\x65\x6C\x5F\x74\x65\x78\x74\x2C\x20\x65\x76\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x74\x65\x78\x74\x2E\x6F\x6E\x6B\x65\x79\x75\x70\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x65\x76\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x65\x64\x2E\x4F\x6E\x4B\x65\x79\x75\x70\x28\x5F\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x5F\x6E\x75\x6D\x2C\x20\x5F\x74\x68\x69\x73\x2E\x65\x6C\x5F\x74\x65\x78\x74\x2C\x20\x65\x76\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x74\x65\x78\x74\x2E\x61\x64\x64\x45\x76\x65\x6E\x74\x4C\x69\x73\x74\x65\x6E\x65\x72\x28\x22\x70\x61\x73\x74\x65\x22\x2C\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x65\x76\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x21\x65\x76\x2E\x63\x6C\x69\x70\x62\x6F\x61\x72\x64\x44\x61\x74\x61\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x76\x2E\x70\x72\x65\x76\x65\x6E\x74\x44\x65\x66\x61\x75\x6C\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x74\x65\x78\x74\x32\x20\x3D\x20\x65\x76\x2E\x63\x6C\x69\x70\x62\x6F\x61\x72\x64\x44\x61\x74\x61\x2E\x67\x65\x74\x44\x61\x74\x61\x28\x22\x74\x65\x78\x74\x2F\x70\x6C\x61\x69\x6E\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x65\x78\x65\x63\x43\x6F\x6D\x6D\x61\x6E\x64\x28\x22\x69\x6E\x73\x65\x72\x74\x48\x54\x4D\x4C\x22\x2C\x20\x66\x61\x6C\x73\x65\x2C\x20\x74\x65\x78\x74\x32\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x74\x68\x69\x73\x2E\x65\x6C\x5F\x6E\x75\x6D\x62\x65\x72\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x74\x68\x69\x73\x2E\x65\x6C\x5F\x74\x65\x78\x74\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x4C\x69\x6E\x65\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x53\x65\x74\x4E\x75\x6D\x62\x65\x72\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x78\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x5F\x6E\x75\x6D\x20\x3D\x20\x78\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x6E\x75\x6D\x62\x65\x72\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x78\x20\x2B\x20\x31\x20\x2B\x20\x22\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x4C\x69\x6E\x65\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x53\x65\x74\x45\x64\x69\x74\x4F\x6E\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x74\x65\x78\x74\x2E\x63\x6F\x6E\x74\x65\x6E\x74\x45\x64\x69\x74\x61\x62\x6C\x65\x20\x3D\x20\x22\x74\x72\x75\x65\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x4C\x69\x6E\x65\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x53\x65\x74\x45\x64\x69\x74\x4F\x66\x66\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x74\x65\x78\x74\x2E\x63\x6F\x6E\x74\x65\x6E\x74\x45\x64\x69\x74\x61\x62\x6C\x65\x20\x3D\x20\x22\x66\x61\x6C\x73\x65\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x4C\x69\x6E\x65\x32\x3B\x0A\x20\x20\x20\x20\x7D\x28\x29\x0A\x20\x20\x29\x3B\x0A\x20\x20\x76\x61\x72\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x55\x6E\x64\x6F\x52\x65\x64\x6F\x20\x3D\x20\x28\x0A\x20\x20\x20\x20\x2F\x2A\x2A\x20\x40\x63\x6C\x61\x73\x73\x20\x2A\x2F\x0A\x20\x20\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x55\x6E\x64\x6F\x52\x65\x64\x6F\x32\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x69\x64\x78\x20\x3D\x20\x30\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x61\x63\x74\x69\x6F\x6E\x73\x20\x3D\x20\x5B\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x55\x6E\x64\x6F\x52\x65\x64\x6F\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x44\x6F\x4A\x6F\x69\x6E\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x70\x72\x65\x76\x4C\x69\x6E\x65\x2C\x20\x70\x72\x65\x76\x54\x65\x78\x74\x2C\x20\x63\x75\x72\x72\x5F\x74\x65\x78\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x63\x75\x72\x72\x5F\x6C\x69\x6E\x65\x20\x3D\x20\x70\x72\x65\x76\x4C\x69\x6E\x65\x20\x2B\x20\x31\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x61\x63\x74\x69\x6F\x6E\x20\x3D\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6B\x69\x6E\x64\x3A\x20\x22\x6A\x6F\x69\x6E\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x65\x66\x6F\x72\x65\x3A\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x75\x72\x72\x5F\x6C\x69\x6E\x65\x3A\x20\x70\x72\x65\x76\x4C\x69\x6E\x65\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x75\x72\x72\x5F\x74\x65\x78\x74\x3A\x20\x70\x72\x65\x76\x54\x65\x78\x74\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6E\x65\x78\x74\x5F\x6C\x69\x6E\x65\x3A\x20\x70\x72\x65\x76\x4C\x69\x6E\x65\x20\x2B\x20\x31\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6E\x65\x78\x74\x5F\x74\x65\x78\x74\x3A\x20\x63\x75\x72\x72\x5F\x74\x65\x78\x74\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x61\x66\x74\x65\x72\x3A\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x75\x72\x72\x5F\x6C\x69\x6E\x65\x3A\x20\x70\x72\x65\x76\x4C\x69\x6E\x65\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x75\x72\x72\x5F\x74\x65\x78\x74\x3A\x20\x70\x72\x65\x76\x54\x65\x78\x74\x20\x2B\x20\x63\x75\x72\x72\x5F\x74\x65\x78\x74\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6E\x65\x78\x74\x5F\x6C\x69\x6E\x65\x3A\x20\x70\x72\x65\x76\x4C\x69\x6E\x65\x20\x2B\x20\x31\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6E\x65\x78\x74\x5F\x74\x65\x78\x74\x3A\x20\x22\x22\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x61\x63\x74\x69\x6F\x6E\x73\x2E\x6C\x65\x6E\x67\x74\x68\x20\x3E\x20\x30\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x61\x63\x74\x69\x6F\x6E\x73\x20\x3D\x20\x74\x68\x69\x73\x2E\x61\x63\x74\x69\x6F\x6E\x73\x2E\x73\x6C\x69\x63\x65\x28\x30\x2C\x20\x74\x68\x69\x73\x2E\x69\x64\x78\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x61\x63\x74\x69\x6F\x6E\x73\x2E\x70\x75\x73\x68\x28\x61\x63\x74\x69\x6F\x6E\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x69\x64\x78\x2B\x2B\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x55\x6E\x64\x6F\x52\x65\x64\x6F\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x44\x6F\x53\x70\x6C\x69\x74\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x63\x75\x72\x72\x5F\x6C\x69\x6E\x65\x2C\x20\x63\x75\x72\x72\x5F\x74\x65\x78\x74\x2C\x20\x6E\x65\x78\x74\x5F\x74\x65\x78\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x61\x63\x74\x69\x6F\x6E\x20\x3D\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6B\x69\x6E\x64\x3A\x20\x22\x73\x70\x6C\x69\x74\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x65\x66\x6F\x72\x65\x3A\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x75\x72\x72\x5F\x6C\x69\x6E\x65\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x75\x72\x72\x5F\x74\x65\x78\x74\x3A\x20\x63\x75\x72\x72\x5F\x74\x65\x78\x74\x20\x2B\x20\x6E\x65\x78\x74\x5F\x74\x65\x78\x74\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6E\x65\x78\x74\x5F\x6C\x69\x6E\x65\x3A\x20\x63\x75\x72\x72\x5F\x6C\x69\x6E\x65\x20\x2B\x20\x31\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6E\x65\x78\x74\x5F\x74\x65\x78\x74\x3A\x20\x22\x22\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x61\x66\x74\x65\x72\x3A\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x75\x72\x72\x5F\x6C\x69\x6E\x65\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x75\x72\x72\x5F\x74\x65\x78\x74\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6E\x65\x78\x74\x5F\x6C\x69\x6E\x65\x3A\x20\x63\x75\x72\x72\x5F\x6C\x69\x6E\x65\x20\x2B\x20\x31\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6E\x65\x78\x74\x5F\x74\x65\x78\x74\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x61\x63\x74\x69\x6F\x6E\x73\x2E\x6C\x65\x6E\x67\x74\x68\x20\x3E\x20\x30\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x61\x63\x74\x69\x6F\x6E\x73\x20\x3D\x20\x74\x68\x69\x73\x2E\x61\x63\x74\x69\x6F\x6E\x73\x2E\x73\x6C\x69\x63\x65\x28\x30\x2C\x20\x74\x68\x69\x73\x2E\x69\x64\x78\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x61\x63\x74\x69\x6F\x6E\x73\x2E\x70\x75\x73\x68\x28\x61\x63\x74\x69\x6F\x6E\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x69\x64\x78\x2B\x2B\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x55\x6E\x64\x6F\x52\x65\x64\x6F\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x44\x6F\x55\x70\x64\x61\x74\x65\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x6C\x69\x6E\x65\x5F\x6E\x75\x6D\x2C\x20\x74\x65\x78\x74\x5F\x62\x65\x66\x6F\x72\x65\x2C\x20\x74\x65\x78\x74\x5F\x61\x66\x74\x65\x72\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x61\x63\x74\x69\x6F\x6E\x20\x3D\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6B\x69\x6E\x64\x3A\x20\x22\x75\x70\x64\x61\x74\x65\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x65\x66\x6F\x72\x65\x3A\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x75\x72\x72\x5F\x6C\x69\x6E\x65\x3A\x20\x6C\x69\x6E\x65\x5F\x6E\x75\x6D\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x75\x72\x72\x5F\x74\x65\x78\x74\x3A\x20\x74\x65\x78\x74\x5F\x62\x65\x66\x6F\x72\x65\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6E\x65\x78\x74\x5F\x6C\x69\x6E\x65\x3A\x20\x30\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6E\x65\x78\x74\x5F\x74\x65\x78\x74\x3A\x20\x22\x22\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x61\x66\x74\x65\x72\x3A\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x75\x72\x72\x5F\x6C\x69\x6E\x65\x3A\x20\x6C\x69\x6E\x65\x5F\x6E\x75\x6D\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x75\x72\x72\x5F\x74\x65\x78\x74\x3A\x20\x74\x65\x78\x74\x5F\x61\x66\x74\x65\x72\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6E\x65\x78\x74\x5F\x6C\x69\x6E\x65\x3A\x20\x30\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6E\x65\x78\x74\x5F\x74\x65\x78\x74\x3A\x20\x22\x22\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x61\x63\x74\x69\x6F\x6E\x73\x2E\x6C\x65\x6E\x67\x74\x68\x20\x3E\x20\x30\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x61\x63\x74\x69\x6F\x6E\x73\x20\x3D\x20\x74\x68\x69\x73\x2E\x61\x63\x74\x69\x6F\x6E\x73\x2E\x73\x6C\x69\x63\x65\x28\x30\x2C\x20\x74\x68\x69\x73\x2E\x69\x64\x78\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x61\x63\x74\x69\x6F\x6E\x73\x2E\x70\x75\x73\x68\x28\x61\x63\x74\x69\x6F\x6E\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x69\x64\x78\x2B\x2B\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x55\x6E\x64\x6F\x52\x65\x64\x6F\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x55\x6E\x64\x6F\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x69\x64\x78\x20\x3D\x3D\x20\x30\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x6E\x75\x6C\x6C\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x69\x64\x78\x2D\x2D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x74\x68\x69\x73\x2E\x61\x63\x74\x69\x6F\x6E\x73\x5B\x74\x68\x69\x73\x2E\x69\x64\x78\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x55\x6E\x64\x6F\x52\x65\x64\x6F\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x52\x65\x64\x6F\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x69\x64\x78\x20\x3D\x3D\x20\x74\x68\x69\x73\x2E\x61\x63\x74\x69\x6F\x6E\x73\x2E\x6C\x65\x6E\x67\x74\x68\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x6E\x75\x6C\x6C\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x61\x63\x74\x69\x6F\x6E\x20\x3D\x20\x74\x68\x69\x73\x2E\x61\x63\x74\x69\x6F\x6E\x73\x5B\x74\x68\x69\x73\x2E\x69\x64\x78\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x69\x64\x78\x2B\x2B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x61\x63\x74\x69\x6F\x6E\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x55\x6E\x64\x6F\x52\x65\x64\x6F\x32\x3B\x0A\x20\x20\x20\x20\x7D\x28\x29\x0A\x20\x20\x29\x3B\x0A\x0A\x20\x20\x2F\x2F\x20\x5F\x77\x77\x77\x2F\x77\x75\x69\x2F\x6E\x6F\x74\x69\x66\x2F\x6E\x6F\x74\x69\x66\x2E\x6A\x73\x0A\x20\x20\x76\x61\x72\x20\x57\x55\x49\x5F\x4E\x4F\x54\x49\x46\x5F\x49\x44\x20\x3D\x20\x22\x77\x75\x69\x5F\x6E\x6F\x74\x69\x66\x22\x3B\x0A\x20\x20\x76\x61\x72\x20\x57\x55\x49\x5F\x4E\x4F\x54\x49\x46\x5F\x43\x4C\x41\x53\x53\x5F\x49\x4E\x46\x4F\x20\x3D\x20\x22\x77\x75\x69\x5F\x6E\x6F\x74\x69\x66\x5F\x69\x6E\x66\x6F\x22\x3B\x0A\x20\x20\x76\x61\x72\x20\x57\x55\x49\x5F\x4E\x4F\x54\x49\x46\x5F\x43\x4C\x41\x53\x53\x5F\x45\x52\x52\x4F\x52\x20\x3D\x20\x22\x77\x75\x69\x5F\x6E\x6F\x74\x69\x66\x5F\x65\x72\x72\x6F\x72\x22\x3B\x0A\x20\x20\x76\x61\x72\x20\x57\x75\x69\x4E\x6F\x74\x69\x66\x20\x3D\x20\x28\x0A\x20\x20\x20\x20\x2F\x2A\x2A\x20\x40\x63\x6C\x61\x73\x73\x20\x2A\x2F\x0A\x20\x20\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x57\x75\x69\x4E\x6F\x74\x69\x66\x32\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x74\x69\x6D\x65\x6F\x75\x74\x20\x3D\x20\x35\x65\x33\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x63\x72\x65\x61\x74\x65\x45\x6C\x65\x6D\x65\x6E\x74\x28\x22\x64\x69\x76\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x69\x64\x20\x3D\x20\x57\x55\x49\x5F\x4E\x4F\x54\x49\x46\x5F\x49\x44\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x62\x6F\x64\x79\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x74\x68\x69\x73\x2E\x65\x6C\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x69\x6E\x69\x74\x53\x74\x79\x6C\x65\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x4E\x6F\x74\x69\x66\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x49\x6E\x66\x6F\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x6D\x73\x67\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x5F\x74\x68\x69\x73\x20\x3D\x20\x74\x68\x69\x73\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x69\x74\x65\x6D\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x63\x72\x65\x61\x74\x65\x45\x6C\x65\x6D\x65\x6E\x74\x28\x22\x64\x69\x76\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x74\x65\x6D\x2E\x69\x6E\x6E\x65\x72\x48\x54\x4D\x4C\x20\x3D\x20\x6D\x73\x67\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x74\x65\x6D\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x57\x55\x49\x5F\x4E\x4F\x54\x49\x46\x5F\x43\x4C\x41\x53\x53\x5F\x49\x4E\x46\x4F\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x69\x74\x65\x6D\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x73\x65\x74\x54\x69\x6D\x65\x6F\x75\x74\x28\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x74\x68\x69\x73\x2E\x65\x6C\x2E\x72\x65\x6D\x6F\x76\x65\x43\x68\x69\x6C\x64\x28\x69\x74\x65\x6D\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x2C\x20\x74\x68\x69\x73\x2E\x74\x69\x6D\x65\x6F\x75\x74\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x4E\x6F\x74\x69\x66\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x45\x72\x72\x6F\x72\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x6D\x73\x67\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x5F\x74\x68\x69\x73\x20\x3D\x20\x74\x68\x69\x73\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x69\x74\x65\x6D\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x63\x72\x65\x61\x74\x65\x45\x6C\x65\x6D\x65\x6E\x74\x28\x22\x64\x69\x76\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x74\x65\x6D\x2E\x69\x6E\x6E\x65\x72\x48\x54\x4D\x4C\x20\x3D\x20\x6D\x73\x67\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x74\x65\x6D\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x57\x55\x49\x5F\x4E\x4F\x54\x49\x46\x5F\x43\x4C\x41\x53\x53\x5F\x45\x52\x52\x4F\x52\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x69\x74\x65\x6D\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x73\x65\x74\x54\x69\x6D\x65\x6F\x75\x74\x28\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x74\x68\x69\x73\x2E\x65\x6C\x2E\x72\x65\x6D\x6F\x76\x65\x43\x68\x69\x6C\x64\x28\x69\x74\x65\x6D\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x2C\x20\x74\x68\x69\x73\x2E\x74\x69\x6D\x65\x6F\x75\x74\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x4E\x6F\x74\x69\x66\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x69\x6E\x69\x74\x53\x74\x79\x6C\x65\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x73\x74\x79\x6C\x65\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x63\x72\x65\x61\x74\x65\x45\x6C\x65\x6D\x65\x6E\x74\x28\x22\x73\x74\x79\x6C\x65\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x73\x74\x79\x6C\x65\x2E\x74\x79\x70\x65\x20\x3D\x20\x22\x74\x65\x78\x74\x2F\x63\x73\x73\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x73\x74\x79\x6C\x65\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x22\x5C\x6E\x09\x09\x09\x23\x22\x20\x2B\x20\x57\x55\x49\x5F\x4E\x4F\x54\x49\x46\x5F\x49\x44\x20\x2B\x20\x22\x20\x7B\x5C\x6E\x09\x09\x09\x09\x6C\x65\x66\x74\x3A\x20\x31\x30\x25\x3B\x5C\x6E\x09\x09\x09\x09\x70\x6F\x73\x69\x74\x69\x6F\x6E\x3A\x20\x66\x69\x78\x65\x64\x3B\x5C\x6E\x09\x09\x09\x09\x74\x6F\x70\x3A\x20\x31\x65\x6D\x3B\x5C\x6E\x09\x09\x09\x09\x77\x69\x64\x74\x68\x3A\x20\x38\x30\x25\x3B\x5C\x6E\x09\x09\x09\x09\x7A\x2D\x69\x6E\x64\x65\x78\x3A\x20\x31\x30\x30\x30\x30\x3B\x5C\x6E\x09\x09\x09\x7D\x5C\x6E\x09\x09\x09\x2E\x22\x20\x2B\x20\x57\x55\x49\x5F\x4E\x4F\x54\x49\x46\x5F\x43\x4C\x41\x53\x53\x5F\x49\x4E\x46\x4F\x20\x2B\x20\x22\x20\x7B\x5C\x6E\x09\x09\x09\x09\x62\x6F\x72\x64\x65\x72\x3A\x20\x31\x70\x78\x20\x73\x6F\x6C\x69\x64\x20\x73\x69\x6C\x76\x65\x72\x3B\x5C\x6E\x09\x09\x09\x09\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x2D\x63\x6F\x6C\x6F\x72\x3A\x20\x68\x6F\x6E\x65\x79\x64\x65\x77\x3B\x5C\x6E\x09\x09\x09\x09\x6D\x61\x72\x67\x69\x6E\x2D\x62\x6F\x74\x74\x6F\x6D\x3A\x20\x31\x65\x6D\x3B\x5C\x6E\x09\x09\x09\x09\x70\x61\x64\x64\x69\x6E\x67\x3A\x20\x31\x65\x6D\x3B\x5C\x6E\x09\x09\x09\x7D\x5C\x6E\x09\x09\x09\x2E\x22\x20\x2B\x20\x57\x55\x49\x5F\x4E\x4F\x54\x49\x46\x5F\x43\x4C\x41\x53\x53\x5F\x45\x52\x52\x4F\x52\x20\x2B\x20\x22\x20\x7B\x5C\x6E\x09\x09\x09\x09\x62\x6F\x72\x64\x65\x72\x3A\x20\x31\x70\x78\x20\x73\x6F\x6C\x69\x64\x20\x73\x61\x6C\x6D\x6F\x6E\x3B\x5C\x6E\x09\x09\x09\x09\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x2D\x63\x6F\x6C\x6F\x72\x3A\x20\x6C\x69\x67\x68\x74\x73\x61\x6C\x6D\x6F\x6E\x3B\x5C\x6E\x09\x09\x09\x09\x6D\x61\x72\x67\x69\x6E\x2D\x62\x6F\x74\x74\x6F\x6D\x3A\x20\x31\x65\x6D\x3B\x5C\x6E\x09\x09\x09\x09\x70\x61\x64\x64\x69\x6E\x67\x3A\x20\x31\x65\x6D\x3B\x5C\x6E\x09\x09\x09\x7D\x5C\x6E\x09\x09\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x68\x65\x61\x64\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x73\x74\x79\x6C\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x57\x75\x69\x4E\x6F\x74\x69\x66\x32\x3B\x0A\x20\x20\x20\x20\x7D\x28\x29\x0A\x20\x20\x29\x3B\x0A\x0A\x20\x20\x2F\x2F\x20\x5F\x77\x77\x77\x2F\x77\x75\x69\x2F\x76\x66\x73\x2F\x76\x66\x73\x2E\x6A\x73\x0A\x20\x20\x76\x61\x72\x20\x5F\x5F\x61\x77\x61\x69\x74\x65\x72\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x74\x68\x69\x73\x41\x72\x67\x2C\x20\x5F\x61\x72\x67\x75\x6D\x65\x6E\x74\x73\x2C\x20\x50\x2C\x20\x67\x65\x6E\x65\x72\x61\x74\x6F\x72\x29\x20\x7B\x0A\x20\x20\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x61\x64\x6F\x70\x74\x28\x76\x61\x6C\x75\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x76\x61\x6C\x75\x65\x20\x69\x6E\x73\x74\x61\x6E\x63\x65\x6F\x66\x20\x50\x20\x3F\x20\x76\x61\x6C\x75\x65\x20\x3A\x20\x6E\x65\x77\x20\x50\x28\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x72\x65\x73\x6F\x6C\x76\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x73\x6F\x6C\x76\x65\x28\x76\x61\x6C\x75\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x29\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x6E\x65\x77\x20\x28\x50\x20\x7C\x7C\x20\x28\x50\x20\x3D\x20\x50\x72\x6F\x6D\x69\x73\x65\x29\x29\x28\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x72\x65\x73\x6F\x6C\x76\x65\x2C\x20\x72\x65\x6A\x65\x63\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x66\x75\x6C\x66\x69\x6C\x6C\x65\x64\x28\x76\x61\x6C\x75\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x72\x79\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x73\x74\x65\x70\x28\x67\x65\x6E\x65\x72\x61\x74\x6F\x72\x2E\x6E\x65\x78\x74\x28\x76\x61\x6C\x75\x65\x29\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x20\x63\x61\x74\x63\x68\x20\x28\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x6A\x65\x63\x74\x28\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x72\x65\x6A\x65\x63\x74\x65\x64\x28\x76\x61\x6C\x75\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x72\x79\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x73\x74\x65\x70\x28\x67\x65\x6E\x65\x72\x61\x74\x6F\x72\x5B\x22\x74\x68\x72\x6F\x77\x22\x5D\x28\x76\x61\x6C\x75\x65\x29\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x20\x63\x61\x74\x63\x68\x20\x28\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x6A\x65\x63\x74\x28\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x73\x74\x65\x70\x28\x72\x65\x73\x75\x6C\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x73\x75\x6C\x74\x2E\x64\x6F\x6E\x65\x20\x3F\x20\x72\x65\x73\x6F\x6C\x76\x65\x28\x72\x65\x73\x75\x6C\x74\x2E\x76\x61\x6C\x75\x65\x29\x20\x3A\x20\x61\x64\x6F\x70\x74\x28\x72\x65\x73\x75\x6C\x74\x2E\x76\x61\x6C\x75\x65\x29\x2E\x74\x68\x65\x6E\x28\x66\x75\x6C\x66\x69\x6C\x6C\x65\x64\x2C\x20\x72\x65\x6A\x65\x63\x74\x65\x64\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x73\x74\x65\x70\x28\x28\x67\x65\x6E\x65\x72\x61\x74\x6F\x72\x20\x3D\x20\x67\x65\x6E\x65\x72\x61\x74\x6F\x72\x2E\x61\x70\x70\x6C\x79\x28\x74\x68\x69\x73\x41\x72\x67\x2C\x20\x5F\x61\x72\x67\x75\x6D\x65\x6E\x74\x73\x20\x7C\x7C\x20\x5B\x5D\x29\x29\x2E\x6E\x65\x78\x74\x28\x29\x29\x3B\x0A\x20\x20\x20\x20\x7D\x29\x3B\x0A\x20\x20\x7D\x3B\x0A\x20\x20\x76\x61\x72\x20\x5F\x5F\x67\x65\x6E\x65\x72\x61\x74\x6F\x72\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x74\x68\x69\x73\x41\x72\x67\x2C\x20\x62\x6F\x64\x79\x29\x20\x7B\x0A\x20\x20\x20\x20\x76\x61\x72\x20\x5F\x20\x3D\x20\x7B\x20\x6C\x61\x62\x65\x6C\x3A\x20\x30\x2C\x20\x73\x65\x6E\x74\x3A\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x5B\x30\x5D\x20\x26\x20\x31\x29\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x72\x6F\x77\x20\x74\x5B\x31\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x74\x5B\x31\x5D\x3B\x0A\x20\x20\x20\x20\x7D\x2C\x20\x74\x72\x79\x73\x3A\x20\x5B\x5D\x2C\x20\x6F\x70\x73\x3A\x20\x5B\x5D\x20\x7D\x2C\x20\x66\x2C\x20\x79\x2C\x20\x74\x2C\x20\x67\x3B\x0A\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x67\x20\x3D\x20\x7B\x20\x6E\x65\x78\x74\x3A\x20\x76\x65\x72\x62\x28\x30\x29\x2C\x20\x22\x74\x68\x72\x6F\x77\x22\x3A\x20\x76\x65\x72\x62\x28\x31\x29\x2C\x20\x22\x72\x65\x74\x75\x72\x6E\x22\x3A\x20\x76\x65\x72\x62\x28\x32\x29\x20\x7D\x2C\x20\x74\x79\x70\x65\x6F\x66\x20\x53\x79\x6D\x62\x6F\x6C\x20\x3D\x3D\x3D\x20\x22\x66\x75\x6E\x63\x74\x69\x6F\x6E\x22\x20\x26\x26\x20\x28\x67\x5B\x53\x79\x6D\x62\x6F\x6C\x2E\x69\x74\x65\x72\x61\x74\x6F\x72\x5D\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x74\x68\x69\x73\x3B\x0A\x20\x20\x20\x20\x7D\x29\x2C\x20\x67\x3B\x0A\x20\x20\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x76\x65\x72\x62\x28\x6E\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x76\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x73\x74\x65\x70\x28\x5B\x6E\x2C\x20\x76\x5D\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x73\x74\x65\x70\x28\x6F\x70\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x66\x29\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x72\x6F\x77\x20\x6E\x65\x77\x20\x54\x79\x70\x65\x45\x72\x72\x6F\x72\x28\x22\x47\x65\x6E\x65\x72\x61\x74\x6F\x72\x20\x69\x73\x20\x61\x6C\x72\x65\x61\x64\x79\x20\x65\x78\x65\x63\x75\x74\x69\x6E\x67\x2E\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x77\x68\x69\x6C\x65\x20\x28\x5F\x29\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x72\x79\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x66\x20\x3D\x20\x31\x2C\x20\x79\x20\x26\x26\x20\x28\x74\x20\x3D\x20\x6F\x70\x5B\x30\x5D\x20\x26\x20\x32\x20\x3F\x20\x79\x5B\x22\x72\x65\x74\x75\x72\x6E\x22\x5D\x20\x3A\x20\x6F\x70\x5B\x30\x5D\x20\x3F\x20\x79\x5B\x22\x74\x68\x72\x6F\x77\x22\x5D\x20\x7C\x7C\x20\x28\x28\x74\x20\x3D\x20\x79\x5B\x22\x72\x65\x74\x75\x72\x6E\x22\x5D\x29\x20\x26\x26\x20\x74\x2E\x63\x61\x6C\x6C\x28\x79\x29\x2C\x20\x30\x29\x20\x3A\x20\x79\x2E\x6E\x65\x78\x74\x29\x20\x26\x26\x20\x21\x28\x74\x20\x3D\x20\x74\x2E\x63\x61\x6C\x6C\x28\x79\x2C\x20\x6F\x70\x5B\x31\x5D\x29\x29\x2E\x64\x6F\x6E\x65\x29\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x79\x20\x3D\x20\x30\x2C\x20\x74\x29\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6F\x70\x20\x3D\x20\x5B\x6F\x70\x5B\x30\x5D\x20\x26\x20\x32\x2C\x20\x74\x2E\x76\x61\x6C\x75\x65\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x73\x77\x69\x74\x63\x68\x20\x28\x6F\x70\x5B\x30\x5D\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x30\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x31\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x20\x3D\x20\x6F\x70\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x34\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x2E\x6C\x61\x62\x65\x6C\x2B\x2B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x7B\x20\x76\x61\x6C\x75\x65\x3A\x20\x6F\x70\x5B\x31\x5D\x2C\x20\x64\x6F\x6E\x65\x3A\x20\x66\x61\x6C\x73\x65\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x35\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x2E\x6C\x61\x62\x65\x6C\x2B\x2B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x79\x20\x3D\x20\x6F\x70\x5B\x31\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6F\x70\x20\x3D\x20\x5B\x30\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x74\x69\x6E\x75\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x37\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6F\x70\x20\x3D\x20\x5F\x2E\x6F\x70\x73\x2E\x70\x6F\x70\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x2E\x74\x72\x79\x73\x2E\x70\x6F\x70\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x74\x69\x6E\x75\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x64\x65\x66\x61\x75\x6C\x74\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x21\x28\x74\x20\x3D\x20\x5F\x2E\x74\x72\x79\x73\x2C\x20\x74\x20\x3D\x20\x74\x2E\x6C\x65\x6E\x67\x74\x68\x20\x3E\x20\x30\x20\x26\x26\x20\x74\x5B\x74\x2E\x6C\x65\x6E\x67\x74\x68\x20\x2D\x20\x31\x5D\x29\x20\x26\x26\x20\x28\x6F\x70\x5B\x30\x5D\x20\x3D\x3D\x3D\x20\x36\x20\x7C\x7C\x20\x6F\x70\x5B\x30\x5D\x20\x3D\x3D\x3D\x20\x32\x29\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x20\x3D\x20\x30\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x74\x69\x6E\x75\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x6F\x70\x5B\x30\x5D\x20\x3D\x3D\x3D\x20\x33\x20\x26\x26\x20\x28\x21\x74\x20\x7C\x7C\x20\x6F\x70\x5B\x31\x5D\x20\x3E\x20\x74\x5B\x30\x5D\x20\x26\x26\x20\x6F\x70\x5B\x31\x5D\x20\x3C\x20\x74\x5B\x33\x5D\x29\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x2E\x6C\x61\x62\x65\x6C\x20\x3D\x20\x6F\x70\x5B\x31\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x6F\x70\x5B\x30\x5D\x20\x3D\x3D\x3D\x20\x36\x20\x26\x26\x20\x5F\x2E\x6C\x61\x62\x65\x6C\x20\x3C\x20\x74\x5B\x31\x5D\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x2E\x6C\x61\x62\x65\x6C\x20\x3D\x20\x74\x5B\x31\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x20\x3D\x20\x6F\x70\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x20\x26\x26\x20\x5F\x2E\x6C\x61\x62\x65\x6C\x20\x3C\x20\x74\x5B\x32\x5D\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x2E\x6C\x61\x62\x65\x6C\x20\x3D\x20\x74\x5B\x32\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x2E\x6F\x70\x73\x2E\x70\x75\x73\x68\x28\x6F\x70\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x5B\x32\x5D\x29\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x2E\x6F\x70\x73\x2E\x70\x6F\x70\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x2E\x74\x72\x79\x73\x2E\x70\x6F\x70\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x74\x69\x6E\x75\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6F\x70\x20\x3D\x20\x62\x6F\x64\x79\x2E\x63\x61\x6C\x6C\x28\x74\x68\x69\x73\x41\x72\x67\x2C\x20\x5F\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x20\x63\x61\x74\x63\x68\x20\x28\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6F\x70\x20\x3D\x20\x5B\x36\x2C\x20\x65\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x79\x20\x3D\x20\x30\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x20\x66\x69\x6E\x61\x6C\x6C\x79\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x66\x20\x3D\x20\x74\x20\x3D\x20\x30\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x6F\x70\x5B\x30\x5D\x20\x26\x20\x35\x29\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x72\x6F\x77\x20\x6F\x70\x5B\x31\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x7B\x20\x76\x61\x6C\x75\x65\x3A\x20\x6F\x70\x5B\x30\x5D\x20\x3F\x20\x6F\x70\x5B\x31\x5D\x20\x3A\x20\x76\x6F\x69\x64\x20\x30\x2C\x20\x64\x6F\x6E\x65\x3A\x20\x74\x72\x75\x65\x20\x7D\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x7D\x3B\x0A\x20\x20\x76\x61\x72\x20\x43\x4C\x41\x53\x53\x5F\x56\x46\x53\x5F\x50\x41\x54\x48\x20\x3D\x20\x22\x77\x75\x69\x5F\x76\x66\x73\x5F\x70\x61\x74\x68\x22\x3B\x0A\x20\x20\x76\x61\x72\x20\x43\x4C\x41\x53\x53\x5F\x56\x46\x53\x5F\x4C\x49\x53\x54\x20\x3D\x20\x22\x77\x75\x69\x5F\x76\x66\x73\x5F\x6C\x69\x73\x74\x22\x3B\x0A\x20\x20\x76\x61\x72\x20\x57\x75\x69\x56\x66\x73\x20\x3D\x20\x28\x0A\x20\x20\x20\x20\x2F\x2A\x2A\x20\x40\x63\x6C\x61\x73\x73\x20\x2A\x2F\x0A\x20\x20\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x57\x75\x69\x56\x66\x73\x32\x28\x6F\x70\x74\x73\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x5F\x74\x68\x69\x73\x20\x3D\x20\x74\x68\x69\x73\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x20\x3D\x20\x6F\x70\x74\x73\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x20\x3D\x20\x6F\x70\x74\x73\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x65\x6C\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x67\x65\x74\x45\x6C\x65\x6D\x65\x6E\x74\x42\x79\x49\x64\x28\x6F\x70\x74\x73\x2E\x69\x64\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x21\x65\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x6F\x6C\x65\x2E\x65\x72\x72\x6F\x72\x28\x22\x57\x75\x69\x56\x66\x73\x3A\x20\x65\x6C\x65\x6D\x65\x6E\x74\x20\x69\x64\x22\x2C\x20\x6F\x70\x74\x73\x2E\x69\x64\x2C\x20\x22\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x20\x3D\x20\x65\x6C\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x70\x61\x74\x68\x20\x3D\x20\x6E\x65\x77\x20\x57\x75\x69\x56\x66\x73\x50\x61\x74\x68\x28\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x70\x61\x74\x68\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x74\x68\x69\x73\x2E\x4F\x70\x65\x6E\x44\x69\x72\x28\x70\x61\x74\x68\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x70\x61\x74\x68\x2E\x65\x6C\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x6C\x69\x73\x74\x20\x3D\x20\x6E\x65\x77\x20\x57\x75\x69\x56\x66\x73\x4C\x69\x73\x74\x28\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x6E\x6F\x64\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x74\x68\x69\x73\x2E\x4F\x70\x65\x6E\x4E\x6F\x64\x65\x28\x6E\x6F\x64\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x6C\x69\x73\x74\x2E\x65\x6C\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x56\x66\x73\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x4F\x70\x65\x6E\x4E\x6F\x64\x65\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x6E\x6F\x64\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x6E\x6F\x64\x65\x2E\x69\x73\x5F\x64\x69\x72\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x4F\x70\x65\x6E\x44\x69\x72\x28\x6E\x6F\x64\x65\x2E\x70\x61\x74\x68\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x20\x65\x6C\x73\x65\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x4F\x70\x65\x6E\x4E\x6F\x64\x65\x28\x6E\x6F\x64\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x56\x66\x73\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x4F\x70\x65\x6E\x44\x69\x72\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x70\x61\x74\x68\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5F\x5F\x61\x77\x61\x69\x74\x65\x72\x28\x74\x68\x69\x73\x2C\x20\x76\x6F\x69\x64\x20\x30\x2C\x20\x76\x6F\x69\x64\x20\x30\x2C\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x72\x65\x73\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5F\x5F\x67\x65\x6E\x65\x72\x61\x74\x6F\x72\x28\x74\x68\x69\x73\x2C\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x5F\x61\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x73\x77\x69\x74\x63\x68\x20\x28\x5F\x61\x2E\x6C\x61\x62\x65\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x30\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5B\x34\x2C\x20\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x4F\x70\x65\x6E\x28\x70\x61\x74\x68\x2C\x20\x74\x72\x75\x65\x29\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x31\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x73\x20\x3D\x20\x5F\x61\x2E\x73\x65\x6E\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x72\x65\x73\x2E\x63\x6F\x64\x65\x20\x21\x3D\x20\x32\x30\x30\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x32\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x2F\x2A\x72\x65\x74\x75\x72\x6E\x2A\x2F\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x53\x65\x74\x28\x72\x65\x73\x2E\x64\x61\x74\x61\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x32\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x2F\x2A\x72\x65\x74\x75\x72\x6E\x2A\x2F\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x56\x66\x73\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x53\x65\x74\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x6E\x6F\x64\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x6E\x6F\x64\x65\x2E\x69\x73\x5F\x64\x69\x72\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x70\x61\x74\x68\x2E\x4F\x70\x65\x6E\x28\x6E\x6F\x64\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x6C\x69\x73\x74\x2E\x4F\x70\x65\x6E\x28\x6E\x6F\x64\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x57\x75\x69\x56\x66\x73\x32\x3B\x0A\x20\x20\x20\x20\x7D\x28\x29\x0A\x20\x20\x29\x3B\x0A\x20\x20\x76\x61\x72\x20\x57\x75\x69\x56\x66\x73\x4C\x69\x73\x74\x20\x3D\x20\x28\x0A\x20\x20\x20\x20\x2F\x2A\x2A\x20\x40\x63\x6C\x61\x73\x73\x20\x2A\x2F\x0A\x20\x20\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x57\x75\x69\x56\x66\x73\x4C\x69\x73\x74\x32\x28\x6F\x6E\x43\x6C\x69\x63\x6B\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6F\x6E\x43\x6C\x69\x63\x6B\x20\x3D\x20\x6F\x6E\x43\x6C\x69\x63\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6E\x6F\x64\x65\x20\x3D\x20\x6E\x75\x6C\x6C\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x63\x72\x65\x61\x74\x65\x45\x6C\x65\x6D\x65\x6E\x74\x28\x22\x64\x69\x76\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x43\x4C\x41\x53\x53\x5F\x56\x46\x53\x5F\x4C\x49\x53\x54\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x73\x74\x79\x6C\x65\x2E\x62\x6F\x72\x64\x65\x72\x57\x69\x64\x74\x68\x20\x3D\x20\x22\x31\x70\x78\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x73\x74\x79\x6C\x65\x2E\x62\x6F\x72\x64\x65\x72\x53\x74\x79\x6C\x65\x20\x3D\x20\x22\x73\x6F\x6C\x69\x64\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x73\x74\x79\x6C\x65\x2E\x62\x6F\x72\x64\x65\x72\x43\x6F\x6C\x6F\x72\x20\x3D\x20\x22\x73\x69\x6C\x76\x65\x72\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x56\x66\x73\x4C\x69\x73\x74\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x4F\x70\x65\x6E\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x6E\x6F\x64\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x5F\x74\x68\x69\x73\x20\x3D\x20\x74\x68\x69\x73\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6E\x6F\x64\x65\x20\x3D\x20\x6E\x6F\x64\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x69\x6E\x6E\x65\x72\x48\x54\x4D\x4C\x20\x3D\x20\x22\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x21\x74\x68\x69\x73\x2E\x6E\x6F\x64\x65\x2E\x63\x68\x69\x6C\x64\x73\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x5F\x6C\x6F\x6F\x70\x5F\x31\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x63\x32\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x65\x6C\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x63\x72\x65\x61\x74\x65\x45\x6C\x65\x6D\x65\x6E\x74\x28\x22\x64\x69\x76\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x2E\x73\x74\x79\x6C\x65\x2E\x70\x61\x64\x64\x69\x6E\x67\x20\x3D\x20\x22\x31\x65\x6D\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x2E\x73\x74\x79\x6C\x65\x2E\x63\x75\x72\x73\x6F\x72\x20\x3D\x20\x22\x70\x6F\x69\x6E\x74\x65\x72\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x2E\x69\x6E\x6E\x65\x72\x48\x54\x4D\x4C\x20\x3D\x20\x63\x32\x2E\x6E\x61\x6D\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x63\x32\x2E\x69\x73\x5F\x64\x69\x72\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x2E\x73\x74\x79\x6C\x65\x2E\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x43\x6F\x6C\x6F\x72\x20\x3D\x20\x22\x63\x6F\x72\x6E\x73\x69\x6C\x6B\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x2E\x6F\x6E\x63\x6C\x69\x63\x6B\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x65\x76\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x74\x68\x69\x73\x2E\x6F\x6E\x43\x6C\x69\x63\x6B\x28\x63\x32\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x2E\x6F\x6E\x6D\x6F\x75\x73\x65\x6F\x75\x74\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x65\x76\x65\x6E\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x63\x32\x2E\x69\x73\x5F\x64\x69\x72\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x2E\x73\x74\x79\x6C\x65\x2E\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x43\x6F\x6C\x6F\x72\x20\x3D\x20\x22\x63\x6F\x72\x6E\x73\x69\x6C\x6B\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x20\x65\x6C\x73\x65\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x2E\x73\x74\x79\x6C\x65\x2E\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x43\x6F\x6C\x6F\x72\x20\x3D\x20\x22\x77\x68\x69\x74\x65\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x2E\x6F\x6E\x6D\x6F\x75\x73\x65\x6F\x76\x65\x72\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x65\x76\x65\x6E\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x2E\x73\x74\x79\x6C\x65\x2E\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x43\x6F\x6C\x6F\x72\x20\x3D\x20\x22\x61\x6C\x69\x63\x65\x62\x6C\x75\x65\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x5F\x31\x2E\x65\x6C\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x65\x6C\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x74\x68\x69\x73\x5F\x31\x20\x3D\x20\x74\x68\x69\x73\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x66\x6F\x72\x20\x28\x76\x61\x72\x20\x5F\x69\x20\x3D\x20\x30\x2C\x20\x5F\x61\x20\x3D\x20\x74\x68\x69\x73\x2E\x6E\x6F\x64\x65\x2E\x63\x68\x69\x6C\x64\x73\x3B\x20\x5F\x69\x20\x3C\x20\x5F\x61\x2E\x6C\x65\x6E\x67\x74\x68\x3B\x20\x5F\x69\x2B\x2B\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x63\x20\x3D\x20\x5F\x61\x5B\x5F\x69\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x6C\x6F\x6F\x70\x5F\x31\x28\x63\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x57\x75\x69\x56\x66\x73\x4C\x69\x73\x74\x32\x3B\x0A\x20\x20\x20\x20\x7D\x28\x29\x0A\x20\x20\x29\x3B\x0A\x20\x20\x76\x61\x72\x20\x57\x75\x69\x56\x66\x73\x50\x61\x74\x68\x20\x3D\x20\x28\x0A\x20\x20\x20\x20\x2F\x2A\x2A\x20\x40\x63\x6C\x61\x73\x73\x20\x2A\x2F\x0A\x20\x20\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x57\x75\x69\x56\x66\x73\x50\x61\x74\x68\x32\x28\x6F\x6E\x43\x6C\x69\x63\x6B\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x63\x72\x65\x61\x74\x65\x45\x6C\x65\x6D\x65\x6E\x74\x28\x22\x64\x69\x76\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x43\x4C\x41\x53\x53\x5F\x56\x46\x53\x5F\x50\x41\x54\x48\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x73\x74\x79\x6C\x65\x2E\x62\x6F\x72\x64\x65\x72\x57\x69\x64\x74\x68\x20\x3D\x20\x22\x31\x70\x78\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x73\x74\x79\x6C\x65\x2E\x62\x6F\x72\x64\x65\x72\x53\x74\x79\x6C\x65\x20\x3D\x20\x22\x73\x6F\x6C\x69\x64\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x73\x74\x79\x6C\x65\x2E\x62\x6F\x72\x64\x65\x72\x43\x6F\x6C\x6F\x72\x20\x3D\x20\x22\x73\x69\x6C\x76\x65\x72\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x72\x75\x6D\x62\x73\x20\x3D\x20\x5B\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6F\x6E\x43\x6C\x69\x63\x6B\x20\x3D\x20\x6F\x6E\x43\x6C\x69\x63\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x56\x66\x73\x50\x61\x74\x68\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x4F\x70\x65\x6E\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x6E\x6F\x64\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x5F\x74\x68\x69\x73\x20\x3D\x20\x74\x68\x69\x73\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x69\x6E\x6E\x65\x72\x48\x54\x4D\x4C\x20\x3D\x20\x22\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x72\x75\x6D\x62\x73\x20\x3D\x20\x5B\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x70\x61\x74\x68\x73\x20\x3D\x20\x5B\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x6E\x6F\x64\x65\x2E\x70\x61\x74\x68\x20\x3D\x3D\x20\x22\x2F\x22\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x70\x61\x74\x68\x73\x2E\x70\x75\x73\x68\x28\x6E\x6F\x64\x65\x2E\x70\x61\x74\x68\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x20\x65\x6C\x73\x65\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x70\x61\x74\x68\x73\x20\x3D\x20\x6E\x6F\x64\x65\x2E\x70\x61\x74\x68\x2E\x73\x70\x6C\x69\x74\x28\x22\x2F\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x5F\x6C\x6F\x6F\x70\x5F\x32\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x78\x32\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x66\x75\x6C\x6C\x5F\x70\x61\x74\x68\x20\x3D\x20\x22\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x70\x20\x3D\x20\x22\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x78\x32\x20\x3D\x3D\x20\x30\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x70\x20\x3D\x20\x22\x2F\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x66\x75\x6C\x6C\x5F\x70\x61\x74\x68\x20\x3D\x20\x22\x2F\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x20\x65\x6C\x73\x65\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x70\x20\x3D\x20\x70\x61\x74\x68\x73\x5B\x78\x32\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x66\x75\x6C\x6C\x5F\x70\x61\x74\x68\x20\x3D\x20\x70\x61\x74\x68\x73\x2E\x73\x6C\x69\x63\x65\x28\x30\x2C\x20\x78\x32\x20\x2B\x20\x31\x29\x2E\x6A\x6F\x69\x6E\x28\x22\x2F\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x63\x72\x75\x6D\x62\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x63\x72\x65\x61\x74\x65\x45\x6C\x65\x6D\x65\x6E\x74\x28\x22\x73\x70\x61\x6E\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x72\x75\x6D\x62\x2E\x73\x74\x79\x6C\x65\x2E\x64\x69\x73\x70\x6C\x61\x79\x20\x3D\x20\x22\x69\x6E\x6C\x69\x6E\x65\x2D\x62\x6C\x6F\x63\x6B\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x72\x75\x6D\x62\x2E\x73\x74\x79\x6C\x65\x2E\x70\x61\x64\x64\x69\x6E\x67\x20\x3D\x20\x22\x31\x65\x6D\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x72\x75\x6D\x62\x2E\x73\x74\x79\x6C\x65\x2E\x63\x75\x72\x73\x6F\x72\x20\x3D\x20\x22\x70\x6F\x69\x6E\x74\x65\x72\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x72\x75\x6D\x62\x2E\x69\x6E\x6E\x65\x72\x48\x54\x4D\x4C\x20\x3D\x20\x70\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x72\x75\x6D\x62\x2E\x6F\x6E\x63\x6C\x69\x63\x6B\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x65\x76\x65\x6E\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x74\x68\x69\x73\x2E\x6F\x6E\x43\x6C\x69\x63\x6B\x28\x66\x75\x6C\x6C\x5F\x70\x61\x74\x68\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x72\x75\x6D\x62\x2E\x6F\x6E\x6D\x6F\x75\x73\x65\x6F\x75\x74\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x65\x76\x65\x6E\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x72\x75\x6D\x62\x2E\x73\x74\x79\x6C\x65\x2E\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x43\x6F\x6C\x6F\x72\x20\x3D\x20\x22\x77\x68\x69\x74\x65\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x72\x75\x6D\x62\x2E\x6F\x6E\x6D\x6F\x75\x73\x65\x6F\x76\x65\x72\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x65\x76\x65\x6E\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x72\x75\x6D\x62\x2E\x73\x74\x79\x6C\x65\x2E\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x43\x6F\x6C\x6F\x72\x20\x3D\x20\x22\x61\x6C\x69\x63\x65\x62\x6C\x75\x65\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x5F\x32\x2E\x65\x6C\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x63\x72\x75\x6D\x62\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x74\x68\x69\x73\x5F\x32\x20\x3D\x20\x74\x68\x69\x73\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x66\x6F\x72\x20\x28\x76\x61\x72\x20\x78\x20\x3D\x20\x30\x3B\x20\x78\x20\x3C\x20\x70\x61\x74\x68\x73\x2E\x6C\x65\x6E\x67\x74\x68\x3B\x20\x78\x2B\x2B\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x6C\x6F\x6F\x70\x5F\x32\x28\x78\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x57\x75\x69\x56\x66\x73\x50\x61\x74\x68\x32\x3B\x0A\x20\x20\x20\x20\x7D\x28\x29\x0A\x20\x20\x29\x3B\x0A\x0A\x20\x20\x2F\x2F\x20\x5F\x77\x77\x77\x2F\x61\x77\x77\x61\x6E\x2E\x6A\x73\x0A\x20\x20\x76\x61\x72\x20\x5F\x5F\x61\x77\x61\x69\x74\x65\x72\x32\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x74\x68\x69\x73\x41\x72\x67\x2C\x20\x5F\x61\x72\x67\x75\x6D\x65\x6E\x74\x73\x2C\x20\x50\x2C\x20\x67\x65\x6E\x65\x72\x61\x74\x6F\x72\x29\x20\x7B\x0A\x20\x20\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x61\x64\x6F\x70\x74\x28\x76\x61\x6C\x75\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x76\x61\x6C\x75\x65\x20\x69\x6E\x73\x74\x61\x6E\x63\x65\x6F\x66\x20\x50\x20\x3F\x20\x76\x61\x6C\x75\x65\x20\x3A\x20\x6E\x65\x77\x20\x50\x28\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x72\x65\x73\x6F\x6C\x76\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x73\x6F\x6C\x76\x65\x28\x76\x61\x6C\x75\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x29\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x6E\x65\x77\x20\x28\x50\x20\x7C\x7C\x20\x28\x50\x20\x3D\x20\x50\x72\x6F\x6D\x69\x73\x65\x29\x29\x28\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x72\x65\x73\x6F\x6C\x76\x65\x2C\x20\x72\x65\x6A\x65\x63\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x66\x75\x6C\x66\x69\x6C\x6C\x65\x64\x28\x76\x61\x6C\x75\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x72\x79\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x73\x74\x65\x70\x28\x67\x65\x6E\x65\x72\x61\x74\x6F\x72\x2E\x6E\x65\x78\x74\x28\x76\x61\x6C\x75\x65\x29\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x20\x63\x61\x74\x63\x68\x20\x28\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x6A\x65\x63\x74\x28\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x72\x65\x6A\x65\x63\x74\x65\x64\x28\x76\x61\x6C\x75\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x72\x79\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x73\x74\x65\x70\x28\x67\x65\x6E\x65\x72\x61\x74\x6F\x72\x5B\x22\x74\x68\x72\x6F\x77\x22\x5D\x28\x76\x61\x6C\x75\x65\x29\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x20\x63\x61\x74\x63\x68\x20\x28\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x6A\x65\x63\x74\x28\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x73\x74\x65\x70\x28\x72\x65\x73\x75\x6C\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x73\x75\x6C\x74\x2E\x64\x6F\x6E\x65\x20\x3F\x20\x72\x65\x73\x6F\x6C\x76\x65\x28\x72\x65\x73\x75\x6C\x74\x2E\x76\x61\x6C\x75\x65\x29\x20\x3A\x20\x61\x64\x6F\x70\x74\x28\x72\x65\x73\x75\x6C\x74\x2E\x76\x61\x6C\x75\x65\x29\x2E\x74\x68\x65\x6E\x28\x66\x75\x6C\x66\x69\x6C\x6C\x65\x64\x2C\x20\x72\x65\x6A\x65\x63\x74\x65\x64\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x73\x74\x65\x70\x28\x28\x67\x65\x6E\x65\x72\x61\x74\x6F\x72\x20\x3D\x20\x67\x65\x6E\x65\x72\x61\x74\x6F\x72\x2E\x61\x70\x70\x6C\x79\x28\x74\x68\x69\x73\x41\x72\x67\x2C\x20\x5F\x61\x72\x67\x75\x6D\x65\x6E\x74\x73\x20\x7C\x7C\x20\x5B\x5D\x29\x29\x2E\x6E\x65\x78\x74\x28\x29\x29\x3B\x0A\x20\x20\x20\x20\x7D\x29\x3B\x0A\x20\x20\x7D\x3B\x0A\x20\x20\x76\x61\x72\x20\x5F\x5F\x67\x65\x6E\x65\x72\x61\x74\x6F\x72\x32\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x74\x68\x69\x73\x41\x72\x67\x2C\x20\x62\x6F\x64\x79\x29\x20\x7B\x0A\x20\x20\x20\x20\x76\x61\x72\x20\x5F\x20\x3D\x20\x7B\x20\x6C\x61\x62\x65\x6C\x3A\x20\x30\x2C\x20\x73\x65\x6E\x74\x3A\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x5B\x30\x5D\x20\x26\x20\x31\x29\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x72\x6F\x77\x20\x74\x5B\x31\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x74\x5B\x31\x5D\x3B\x0A\x20\x20\x20\x20\x7D\x2C\x20\x74\x72\x79\x73\x3A\x20\x5B\x5D\x2C\x20\x6F\x70\x73\x3A\x20\x5B\x5D\x20\x7D\x2C\x20\x66\x2C\x20\x79\x2C\x20\x74\x2C\x20\x67\x3B\x0A\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x67\x20\x3D\x20\x7B\x20\x6E\x65\x78\x74\x3A\x20\x76\x65\x72\x62\x28\x30\x29\x2C\x20\x22\x74\x68\x72\x6F\x77\x22\x3A\x20\x76\x65\x72\x62\x28\x31\x29\x2C\x20\x22\x72\x65\x74\x75\x72\x6E\x22\x3A\x20\x76\x65\x72\x62\x28\x32\x29\x20\x7D\x2C\x20\x74\x79\x70\x65\x6F\x66\x20\x53\x79\x6D\x62\x6F\x6C\x20\x3D\x3D\x3D\x20\x22\x66\x75\x6E\x63\x74\x69\x6F\x6E\x22\x20\x26\x26\x20\x28\x67\x5B\x53\x79\x6D\x62\x6F\x6C\x2E\x69\x74\x65\x72\x61\x74\x6F\x72\x5D\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x74\x68\x69\x73\x3B\x0A\x20\x20\x20\x20\x7D\x29\x2C\x20\x67\x3B\x0A\x20\x20\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x76\x65\x72\x62\x28\x6E\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x76\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x73\x74\x65\x70\x28\x5B\x6E\x2C\x20\x76\x5D\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x73\x74\x65\x70\x28\x6F\x70\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x66\x29\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x72\x6F\x77\x20\x6E\x65\x77\x20\x54\x79\x70\x65\x45\x72\x72\x6F\x72\x28\x22\x47\x65\x6E\x65\x72\x61\x74\x6F\x72\x20\x69\x73\x20\x61\x6C\x72\x65\x61\x64\x79\x20\x65\x78\x65\x63\x75\x74\x69\x6E\x67\x2E\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x77\x68\x69\x6C\x65\x20\x28\x5F\x29\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x72\x79\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x66\x20\x3D\x20\x31\x2C\x20\x79\x20\x26\x26\x20\x28\x74\x20\x3D\x20\x6F\x70\x5B\x30\x5D\x20\x26\x20\x32\x20\x3F\x20\x79\x5B\x22\x72\x65\x74\x75\x72\x6E\x22\x5D\x20\x3A\x20\x6F\x70\x5B\x30\x5D\x20\x3F\x20\x79\x5B\x22\x74\x68\x72\x6F\x77\x22\x5D\x20\x7C\x7C\x20\x28\x28\x74\x20\x3D\x20\x79\x5B\x22\x72\x65\x74\x75\x72\x6E\x22\x5D\x29\x20\x26\x26\x20\x74\x2E\x63\x61\x6C\x6C\x28\x79\x29\x2C\x20\x30\x29\x20\x3A\x20\x79\x2E\x6E\x65\x78\x74\x29\x20\x26\x26\x20\x21\x28\x74\x20\x3D\x20\x74\x2E\x63\x61\x6C\x6C\x28\x79\x2C\x20\x6F\x70\x5B\x31\x5D\x29\x29\x2E\x64\x6F\x6E\x65\x29\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x79\x20\x3D\x20\x30\x2C\x20\x74\x29\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6F\x70\x20\x3D\x20\x5B\x6F\x70\x5B\x30\x5D\x20\x26\x20\x32\x2C\x20\x74\x2E\x76\x61\x6C\x75\x65\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x73\x77\x69\x74\x63\x68\x20\x28\x6F\x70\x5B\x30\x5D\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x30\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x31\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x20\x3D\x20\x6F\x70\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x34\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x2E\x6C\x61\x62\x65\x6C\x2B\x2B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x7B\x20\x76\x61\x6C\x75\x65\x3A\x20\x6F\x70\x5B\x31\x5D\x2C\x20\x64\x6F\x6E\x65\x3A\x20\x66\x61\x6C\x73\x65\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x35\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x2E\x6C\x61\x62\x65\x6C\x2B\x2B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x79\x20\x3D\x20\x6F\x70\x5B\x31\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6F\x70\x20\x3D\x20\x5B\x30\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x74\x69\x6E\x75\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x37\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6F\x70\x20\x3D\x20\x5F\x2E\x6F\x70\x73\x2E\x70\x6F\x70\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x2E\x74\x72\x79\x73\x2E\x70\x6F\x70\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x74\x69\x6E\x75\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x64\x65\x66\x61\x75\x6C\x74\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x21\x28\x74\x20\x3D\x20\x5F\x2E\x74\x72\x79\x73\x2C\x20\x74\x20\x3D\x20\x74\x2E\x6C\x65\x6E\x67\x74\x68\x20\x3E\x20\x30\x20\x26\x26\x20\x74\x5B\x74\x2E\x6C\x65\x6E\x67\x74\x68\x20\x2D\x20\x31\x5D\x29\x20\x26\x26\x20\x28\x6F\x70\x5B\x30\x5D\x20\x3D\x3D\x3D\x20\x36\x20\x7C\x7C\x20\x6F\x70\x5B\x30\x5D\x20\x3D\x3D\x3D\x20\x32\x29\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x20\x3D\x20\x30\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x74\x69\x6E\x75\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x6F\x70\x5B\x30\x5D\x20\x3D\x3D\x3D\x20\x33\x20\x26\x26\x20\x28\x21\x74\x20\x7C\x7C\x20\x6F\x70\x5B\x31\x5D\x20\x3E\x20\x74\x5B\x30\x5D\x20\x26\x26\x20\x6F\x70\x5B\x31\x5D\x20\x3C\x20\x74\x5B\x33\x5D\x29\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x2E\x6C\x61\x62\x65\x6C\x20\x3D\x20\x6F\x70\x5B\x31\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x6F\x70\x5B\x30\x5D\x20\x3D\x3D\x3D\x20\x36\x20\x26\x26\x20\x5F\x2E\x6C\x61\x62\x65\x6C\x20\x3C\x20\x74\x5B\x31\x5D\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x2E\x6C\x61\x62\x65\x6C\x20\x3D\x20\x74\x5B\x31\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x20\x3D\x20\x6F\x70\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x20\x26\x26\x20\x5F\x2E\x6C\x61\x62\x65\x6C\x20\x3C\x20\x74\x5B\x32\x5D\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x2E\x6C\x61\x62\x65\x6C\x20\x3D\x20\x74\x5B\x32\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x2E\x6F\x70\x73\x2E\x70\x75\x73\x68\x28\x6F\x70\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x5B\x32\x5D\x29\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x2E\x6F\x70\x73\x2E\x70\x6F\x70\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x2E\x74\x72\x79\x73\x2E\x70\x6F\x70\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x74\x69\x6E\x75\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6F\x70\x20\x3D\x20\x62\x6F\x64\x79\x2E\x63\x61\x6C\x6C\x28\x74\x68\x69\x73\x41\x72\x67\x2C\x20\x5F\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x20\x63\x61\x74\x63\x68\x20\x28\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6F\x70\x20\x3D\x20\x5B\x36\x2C\x20\x65\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x79\x20\x3D\x20\x30\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x20\x66\x69\x6E\x61\x6C\x6C\x79\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x66\x20\x3D\x20\x74\x20\x3D\x20\x30\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x6F\x70\x5B\x30\x5D\x20\x26\x20\x35\x29\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x72\x6F\x77\x20\x6F\x70\x5B\x31\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x7B\x20\x76\x61\x6C\x75\x65\x3A\x20\x6F\x70\x5B\x30\x5D\x20\x3F\x20\x6F\x70\x5B\x31\x5D\x20\x3A\x20\x76\x6F\x69\x64\x20\x30\x2C\x20\x64\x6F\x6E\x65\x3A\x20\x74\x72\x75\x65\x20\x7D\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x7D\x3B\x0A\x20\x20\x76\x61\x72\x20\x43\x4C\x41\x53\x53\x5F\x45\x44\x49\x54\x4F\x52\x5F\x41\x43\x54\x49\x4F\x4E\x20\x3D\x20\x22\x65\x64\x69\x74\x6F\x72\x5F\x61\x63\x74\x69\x6F\x6E\x22\x3B\x0A\x20\x20\x76\x61\x72\x20\x49\x44\x5F\x42\x54\x4E\x5F\x43\x4C\x45\x41\x52\x5F\x53\x45\x4C\x45\x43\x54\x49\x4F\x4E\x20\x3D\x20\x22\x63\x6F\x6D\x5F\x62\x74\x6E\x5F\x63\x6C\x65\x61\x72\x5F\x73\x65\x6C\x65\x63\x74\x69\x6F\x6E\x22\x3B\x0A\x20\x20\x76\x61\x72\x20\x49\x44\x5F\x42\x54\x4E\x5F\x45\x58\x45\x43\x5F\x4C\x4F\x43\x41\x4C\x20\x3D\x20\x22\x63\x6F\x6D\x5F\x62\x74\x6E\x5F\x6C\x6F\x63\x61\x6C\x22\x3B\x0A\x20\x20\x76\x61\x72\x20\x49\x44\x5F\x42\x54\x4E\x5F\x45\x58\x45\x43\x5F\x52\x45\x4D\x4F\x54\x45\x20\x3D\x20\x22\x63\x6F\x6D\x5F\x62\x74\x6E\x5F\x72\x65\x6D\x6F\x74\x65\x22\x3B\x0A\x20\x20\x76\x61\x72\x20\x49\x44\x5F\x42\x54\x4E\x5F\x4E\x45\x57\x5F\x44\x49\x52\x20\x3D\x20\x22\x63\x6F\x6D\x5F\x62\x74\x6E\x5F\x6E\x65\x77\x5F\x64\x69\x72\x22\x3B\x0A\x20\x20\x76\x61\x72\x20\x49\x44\x5F\x42\x54\x4E\x5F\x4E\x45\x57\x5F\x46\x49\x4C\x45\x20\x3D\x20\x22\x63\x6F\x6D\x5F\x62\x74\x6E\x5F\x6E\x65\x77\x5F\x66\x69\x6C\x65\x22\x3B\x0A\x20\x20\x76\x61\x72\x20\x49\x44\x5F\x42\x54\x4E\x5F\x52\x45\x4D\x4F\x56\x45\x20\x3D\x20\x22\x63\x6F\x6D\x5F\x62\x74\x6E\x5F\x72\x65\x6D\x6F\x76\x65\x22\x3B\x0A\x20\x20\x76\x61\x72\x20\x49\x44\x5F\x42\x54\x4E\x5F\x53\x41\x56\x45\x20\x3D\x20\x22\x63\x6F\x6D\x5F\x62\x74\x6E\x5F\x73\x61\x76\x65\x22\x3B\x0A\x20\x20\x76\x61\x72\x20\x49\x44\x5F\x45\x44\x49\x54\x4F\x52\x20\x3D\x20\x22\x63\x6F\x6D\x5F\x65\x64\x69\x74\x6F\x72\x22\x3B\x0A\x20\x20\x76\x61\x72\x20\x49\x44\x5F\x49\x4E\x50\x5F\x56\x46\x53\x5F\x4E\x45\x57\x20\x3D\x20\x22\x63\x6F\x6D\x5F\x69\x6E\x70\x5F\x76\x66\x73\x5F\x6E\x65\x77\x22\x3B\x0A\x20\x20\x76\x61\x72\x20\x49\x44\x5F\x56\x46\x53\x20\x3D\x20\x22\x63\x6F\x6D\x5F\x76\x66\x73\x22\x3B\x0A\x20\x20\x76\x61\x72\x20\x49\x44\x5F\x56\x46\x53\x5F\x50\x41\x54\x48\x20\x3D\x20\x22\x76\x66\x73\x5F\x70\x61\x74\x68\x22\x3B\x0A\x20\x20\x76\x61\x72\x20\x49\x44\x5F\x53\x54\x44\x4F\x55\x54\x20\x3D\x20\x22\x73\x74\x64\x6F\x75\x74\x22\x3B\x0A\x20\x20\x76\x61\x72\x20\x49\x44\x5F\x53\x54\x44\x45\x52\x52\x20\x3D\x20\x22\x73\x74\x64\x65\x72\x72\x22\x3B\x0A\x20\x20\x76\x61\x72\x20\x4D\x41\x58\x5F\x46\x49\x4C\x45\x5F\x53\x49\x5A\x45\x20\x3D\x20\x33\x65\x36\x3B\x0A\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x72\x65\x6E\x64\x65\x72\x48\x74\x6D\x6C\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x76\x61\x72\x20\x65\x6C\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x63\x72\x65\x61\x74\x65\x45\x6C\x65\x6D\x65\x6E\x74\x28\x22\x64\x69\x76\x22\x29\x3B\x0A\x20\x20\x20\x20\x65\x6C\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x22\x61\x77\x77\x61\x6E\x22\x29\x3B\x0A\x20\x20\x20\x20\x65\x6C\x2E\x69\x6E\x6E\x65\x72\x48\x54\x4D\x4C\x20\x3D\x20\x27\x5C\x6E\x09\x09\x09\x3C\x64\x69\x76\x20\x63\x6C\x61\x73\x73\x3D\x22\x61\x77\x77\x61\x6E\x5F\x6E\x61\x76\x5F\x6C\x65\x66\x74\x22\x3E\x5C\x6E\x09\x09\x09\x09\x3C\x64\x69\x76\x20\x69\x64\x3D\x22\x27\x20\x2B\x20\x49\x44\x5F\x56\x46\x53\x20\x2B\x20\x27\x22\x3E\x3C\x2F\x64\x69\x76\x3E\x5C\x6E\x5C\x6E\x09\x09\x09\x09\x3C\x62\x72\x2F\x3E\x5C\x6E\x09\x09\x09\x09\x3C\x64\x69\x76\x20\x63\x6C\x61\x73\x73\x3D\x22\x27\x20\x2B\x20\x49\x44\x5F\x49\x4E\x50\x5F\x56\x46\x53\x5F\x4E\x45\x57\x20\x2B\x20\x27\x22\x3E\x5C\x6E\x09\x09\x09\x09\x09\x3C\x69\x6E\x70\x75\x74\x20\x69\x64\x3D\x22\x27\x20\x2B\x20\x49\x44\x5F\x49\x4E\x50\x5F\x56\x46\x53\x5F\x4E\x45\x57\x20\x2B\x20\x27\x22\x20\x2F\x3E\x5C\x6E\x09\x09\x09\x09\x3C\x2F\x64\x69\x76\x3E\x5C\x6E\x09\x09\x09\x09\x3C\x62\x75\x74\x74\x6F\x6E\x20\x69\x64\x3D\x22\x27\x20\x2B\x20\x49\x44\x5F\x42\x54\x4E\x5F\x4E\x45\x57\x5F\x44\x49\x52\x20\x2B\x20\x27\x22\x3E\x4E\x65\x77\x20\x64\x69\x72\x65\x63\x74\x6F\x72\x79\x3C\x2F\x62\x75\x74\x74\x6F\x6E\x3E\x5C\x6E\x09\x09\x09\x09\x3C\x62\x75\x74\x74\x6F\x6E\x20\x69\x64\x3D\x22\x27\x20\x2B\x20\x49\x44\x5F\x42\x54\x4E\x5F\x4E\x45\x57\x5F\x46\x49\x4C\x45\x20\x2B\x20\x27\x22\x3E\x4E\x65\x77\x20\x66\x69\x6C\x65\x3C\x2F\x62\x75\x74\x74\x6F\x6E\x3E\x5C\x6E\x09\x09\x09\x09\x3C\x62\x75\x74\x74\x6F\x6E\x20\x69\x64\x3D\x22\x27\x20\x2B\x20\x49\x44\x5F\x42\x54\x4E\x5F\x52\x45\x4D\x4F\x56\x45\x20\x2B\x20\x27\x22\x3E\x52\x65\x6D\x6F\x76\x65\x3C\x2F\x62\x75\x74\x74\x6F\x6E\x3E\x5C\x6E\x09\x09\x09\x3C\x2F\x64\x69\x76\x3E\x5C\x6E\x09\x09\x09\x3C\x64\x69\x76\x20\x63\x6C\x61\x73\x73\x3D\x22\x61\x77\x77\x61\x6E\x5F\x63\x6F\x6E\x74\x65\x6E\x74\x22\x3E\x5C\x6E\x09\x09\x09\x09\x3C\x64\x69\x76\x20\x63\x6C\x61\x73\x73\x3D\x22\x65\x64\x69\x74\x6F\x72\x5F\x66\x69\x6C\x65\x22\x3E\x5C\x6E\x09\x09\x09\x09\x09\x46\x69\x6C\x65\x3A\x20\x3C\x73\x70\x61\x6E\x20\x69\x64\x3D\x22\x27\x20\x2B\x20\x49\x44\x5F\x56\x46\x53\x5F\x50\x41\x54\x48\x20\x2B\x20\x27\x22\x3E\x2D\x3C\x2F\x73\x70\x61\x6E\x3E\x5C\x6E\x09\x09\x09\x09\x09\x3C\x62\x75\x74\x74\x6F\x6E\x20\x69\x64\x3D\x22\x27\x20\x2B\x20\x49\x44\x5F\x42\x54\x4E\x5F\x53\x41\x56\x45\x20\x2B\x20\x27\x22\x20\x64\x69\x73\x61\x62\x6C\x65\x64\x3D\x22\x74\x72\x75\x65\x22\x3E\x53\x61\x76\x65\x3C\x2F\x62\x75\x74\x74\x6F\x6E\x3E\x5C\x6E\x09\x09\x09\x09\x3C\x2F\x64\x69\x76\x3E\x5C\x6E\x09\x09\x09\x09\x3C\x64\x69\x76\x20\x69\x64\x3D\x22\x27\x20\x2B\x20\x49\x44\x5F\x45\x44\x49\x54\x4F\x52\x20\x2B\x20\x27\x22\x3E\x3C\x2F\x64\x69\x76\x3E\x5C\x6E\x09\x09\x09\x09\x3C\x64\x69\x76\x3E\x5C\x6E\x09\x09\x09\x09\x09\x3C\x64\x69\x76\x20\x63\x6C\x61\x73\x73\x3D\x22\x27\x20\x2B\x20\x43\x4C\x41\x53\x53\x5F\x45\x44\x49\x54\x4F\x52\x5F\x41\x43\x54\x49\x4F\x4E\x20\x2B\x20\x27\x22\x3E\x5C\x6E\x09\x09\x09\x09\x09\x09\x3C\x62\x75\x74\x74\x6F\x6E\x20\x69\x64\x3D\x22\x27\x20\x2B\x20\x49\x44\x5F\x42\x54\x4E\x5F\x43\x4C\x45\x41\x52\x5F\x53\x45\x4C\x45\x43\x54\x49\x4F\x4E\x20\x2B\x20\x27\x22\x3E\x43\x6C\x65\x61\x72\x20\x73\x65\x6C\x65\x63\x74\x69\x6F\x6E\x3C\x2F\x62\x75\x74\x74\x6F\x6E\x3E\x5C\x6E\x09\x09\x09\x09\x09\x3C\x2F\x64\x69\x76\x3E\x5C\x6E\x09\x09\x09\x09\x09\x3C\x64\x69\x76\x20\x63\x6C\x61\x73\x73\x3D\x22\x27\x20\x2B\x20\x43\x4C\x41\x53\x53\x5F\x45\x44\x49\x54\x4F\x52\x5F\x41\x43\x54\x49\x4F\x4E\x20\x2B\x20\x27\x22\x3E\x5C\x6E\x09\x09\x09\x09\x09\x09\x45\x78\x65\x63\x75\x74\x65\x20\x73\x63\x72\x69\x70\x74\x20\x6F\x6E\x5C\x6E\x09\x09\x09\x09\x09\x09\x3C\x62\x75\x74\x74\x6F\x6E\x20\x69\x64\x3D\x22\x27\x20\x2B\x20\x49\x44\x5F\x42\x54\x4E\x5F\x45\x58\x45\x43\x5F\x4C\x4F\x43\x41\x4C\x20\x2B\x20\x27\x22\x20\x64\x69\x73\x61\x62\x6C\x65\x64\x3D\x22\x74\x72\x75\x65\x22\x3E\x4C\x6F\x63\x61\x6C\x3C\x2F\x62\x75\x74\x74\x6F\x6E\x3E\x5C\x6E\x09\x09\x09\x09\x09\x09\x6F\x72\x5C\x6E\x09\x09\x09\x09\x09\x09\x3C\x62\x75\x74\x74\x6F\x6E\x20\x69\x64\x3D\x22\x27\x20\x2B\x20\x49\x44\x5F\x42\x54\x4E\x5F\x45\x58\x45\x43\x5F\x52\x45\x4D\x4F\x54\x45\x20\x2B\x20\x27\x22\x20\x64\x69\x73\x61\x62\x6C\x65\x64\x3D\x22\x74\x72\x75\x65\x22\x3E\x52\x65\x6D\x6F\x74\x65\x3C\x2F\x62\x75\x74\x74\x6F\x6E\x3E\x5C\x6E\x09\x09\x09\x09\x09\x3C\x2F\x64\x69\x76\x3E\x5C\x6E\x09\x09\x09\x09\x3C\x2F\x64\x69\x76\x3E\x5C\x6E\x09\x09\x09\x09\x3C\x70\x3E\x48\x69\x6E\x74\x73\x3A\x3C\x2F\x70\x3E\x5C\x6E\x09\x09\x09\x09\x3C\x75\x6C\x3E\x5C\x6E\x09\x09\x09\x09\x09\x3C\x6C\x69\x3E\x5C\x6E\x09\x09\x09\x09\x09\x09\x43\x6C\x69\x63\x6B\x20\x61\x6E\x64\x20\x64\x72\x61\x67\x20\x6F\x6E\x20\x74\x68\x65\x20\x6C\x69\x6E\x65\x20\x6E\x75\x6D\x62\x65\x72\x73\x20\x74\x6F\x20\x73\x65\x6C\x65\x63\x74\x20\x74\x68\x65\x20\x73\x70\x65\x63\x69\x66\x69\x63\x20\x6C\x69\x6E\x65\x20\x74\x6F\x20\x62\x65\x5C\x6E\x09\x09\x09\x09\x09\x09\x65\x78\x65\x63\x75\x74\x65\x64\x2E\x5C\x6E\x09\x09\x09\x09\x09\x3C\x2F\x6C\x69\x3E\x5C\x6E\x09\x09\x09\x09\x09\x3C\x6C\x69\x3E\x50\x72\x65\x73\x73\x20\x45\x53\x43\x20\x74\x6F\x20\x63\x6C\x65\x61\x72\x20\x73\x65\x6C\x65\x63\x74\x69\x6F\x6E\x2E\x3C\x2F\x6C\x69\x3E\x5C\x6E\x09\x09\x09\x09\x3C\x2F\x75\x6C\x3E\x5C\x6E\x09\x09\x09\x09\x3C\x64\x69\x76\x20\x63\x6C\x61\x73\x73\x3D\x22\x62\x6F\x78\x68\x65\x61\x64\x65\x72\x22\x3E\x53\x74\x61\x6E\x64\x61\x72\x64\x20\x6F\x75\x74\x70\x75\x74\x3A\x3C\x2F\x64\x69\x76\x3E\x5C\x6E\x09\x09\x09\x09\x3C\x64\x69\x76\x20\x69\x64\x3D\x22\x27\x20\x2B\x20\x49\x44\x5F\x53\x54\x44\x4F\x55\x54\x20\x2B\x20\x27\x22\x3E\x3C\x2F\x64\x69\x76\x3E\x5C\x6E\x09\x09\x09\x09\x3C\x64\x69\x76\x20\x63\x6C\x61\x73\x73\x3D\x22\x62\x6F\x78\x68\x65\x61\x64\x65\x72\x22\x3E\x53\x74\x61\x6E\x64\x61\x72\x64\x20\x65\x72\x72\x6F\x72\x3A\x3C\x2F\x64\x69\x76\x3E\x5C\x6E\x09\x09\x09\x09\x3C\x64\x69\x76\x20\x69\x64\x3D\x22\x27\x20\x2B\x20\x49\x44\x5F\x53\x54\x44\x45\x52\x52\x20\x2B\x20\x27\x22\x3E\x3C\x2F\x64\x69\x76\x3E\x5C\x6E\x09\x09\x09\x3C\x2F\x64\x69\x76\x3E\x5C\x6E\x09\x09\x27\x3B\x0A\x20\x20\x20\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x62\x6F\x64\x79\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x65\x6C\x29\x3B\x0A\x20\x20\x7D\x0A\x20\x20\x76\x61\x72\x20\x41\x77\x77\x61\x6E\x20\x3D\x20\x28\x0A\x20\x20\x20\x20\x2F\x2A\x2A\x20\x40\x63\x6C\x61\x73\x73\x20\x2A\x2F\x0A\x20\x20\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x41\x77\x77\x61\x6E\x32\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x5F\x74\x68\x69\x73\x20\x3D\x20\x74\x68\x69\x73\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x75\x72\x72\x65\x6E\x74\x5F\x6E\x6F\x64\x65\x20\x3D\x20\x6E\x75\x6C\x6C\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x65\x71\x75\x65\x73\x74\x20\x3D\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6D\x6F\x64\x65\x3A\x20\x22\x6C\x6F\x63\x61\x6C\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x73\x63\x72\x69\x70\x74\x3A\x20\x22\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x74\x65\x6E\x74\x3A\x20\x22\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x65\x67\x69\x6E\x5F\x61\x74\x3A\x20\x30\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6E\x64\x5F\x61\x74\x3A\x20\x30\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x65\x6C\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x67\x65\x74\x45\x6C\x65\x6D\x65\x6E\x74\x42\x79\x49\x64\x28\x49\x44\x5F\x42\x54\x4E\x5F\x43\x4C\x45\x41\x52\x5F\x53\x45\x4C\x45\x43\x54\x49\x4F\x4E\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x65\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x62\x74\x6E\x5F\x63\x6C\x65\x61\x72\x20\x3D\x20\x65\x6C\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x62\x74\x6E\x5F\x63\x6C\x65\x61\x72\x2E\x6F\x6E\x63\x6C\x69\x63\x6B\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x74\x68\x69\x73\x2E\x77\x75\x69\x5F\x65\x64\x69\x74\x6F\x72\x2E\x43\x6C\x65\x61\x72\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x67\x65\x74\x45\x6C\x65\x6D\x65\x6E\x74\x42\x79\x49\x64\x28\x49\x44\x5F\x42\x54\x4E\x5F\x45\x58\x45\x43\x5F\x4C\x4F\x43\x41\x4C\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x65\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x62\x74\x6E\x5F\x6C\x6F\x63\x61\x6C\x20\x3D\x20\x65\x6C\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x62\x74\x6E\x5F\x6C\x6F\x63\x61\x6C\x2E\x6F\x6E\x63\x6C\x69\x63\x6B\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x74\x68\x69\x73\x2E\x65\x78\x65\x63\x4C\x6F\x63\x61\x6C\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x67\x65\x74\x45\x6C\x65\x6D\x65\x6E\x74\x42\x79\x49\x64\x28\x49\x44\x5F\x42\x54\x4E\x5F\x45\x58\x45\x43\x5F\x52\x45\x4D\x4F\x54\x45\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x65\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x62\x74\x6E\x5F\x72\x65\x6D\x6F\x74\x65\x20\x3D\x20\x65\x6C\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x62\x74\x6E\x5F\x72\x65\x6D\x6F\x74\x65\x2E\x6F\x6E\x63\x6C\x69\x63\x6B\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x74\x68\x69\x73\x2E\x65\x78\x65\x63\x52\x65\x6D\x6F\x74\x65\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x67\x65\x74\x45\x6C\x65\x6D\x65\x6E\x74\x42\x79\x49\x64\x28\x49\x44\x5F\x42\x54\x4E\x5F\x4E\x45\x57\x5F\x44\x49\x52\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x65\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x62\x74\x6E\x5F\x6E\x65\x77\x5F\x64\x69\x72\x20\x3D\x20\x65\x6C\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x62\x74\x6E\x5F\x6E\x65\x77\x5F\x64\x69\x72\x2E\x6F\x6E\x63\x6C\x69\x63\x6B\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x74\x68\x69\x73\x2E\x6E\x65\x77\x4E\x6F\x64\x65\x28\x74\x72\x75\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x67\x65\x74\x45\x6C\x65\x6D\x65\x6E\x74\x42\x79\x49\x64\x28\x49\x44\x5F\x42\x54\x4E\x5F\x4E\x45\x57\x5F\x46\x49\x4C\x45\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x65\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x62\x74\x6E\x5F\x6E\x65\x77\x5F\x66\x69\x6C\x65\x20\x3D\x20\x65\x6C\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x62\x74\x6E\x5F\x6E\x65\x77\x5F\x66\x69\x6C\x65\x2E\x6F\x6E\x63\x6C\x69\x63\x6B\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x74\x68\x69\x73\x2E\x6E\x65\x77\x4E\x6F\x64\x65\x28\x66\x61\x6C\x73\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x67\x65\x74\x45\x6C\x65\x6D\x65\x6E\x74\x42\x79\x49\x64\x28\x49\x44\x5F\x42\x54\x4E\x5F\x52\x45\x4D\x4F\x56\x45\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x65\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x62\x74\x6E\x5F\x72\x65\x6D\x6F\x76\x65\x20\x3D\x20\x65\x6C\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x62\x74\x6E\x5F\x72\x65\x6D\x6F\x76\x65\x2E\x6F\x6E\x63\x6C\x69\x63\x6B\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x74\x68\x69\x73\x2E\x6F\x6E\x43\x6C\x69\x63\x6B\x52\x65\x6D\x6F\x76\x65\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x67\x65\x74\x45\x6C\x65\x6D\x65\x6E\x74\x42\x79\x49\x64\x28\x49\x44\x5F\x42\x54\x4E\x5F\x53\x41\x56\x45\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x65\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x62\x74\x6E\x5F\x73\x61\x76\x65\x20\x3D\x20\x65\x6C\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x62\x74\x6E\x5F\x73\x61\x76\x65\x2E\x6F\x6E\x63\x6C\x69\x63\x6B\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x74\x68\x69\x73\x2E\x6F\x6E\x43\x6C\x69\x63\x6B\x53\x61\x76\x65\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x67\x65\x74\x45\x6C\x65\x6D\x65\x6E\x74\x42\x79\x49\x64\x28\x49\x44\x5F\x49\x4E\x50\x5F\x56\x46\x53\x5F\x4E\x45\x57\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x65\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x69\x6E\x70\x5F\x76\x66\x73\x5F\x6E\x65\x77\x20\x3D\x20\x65\x6C\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x67\x65\x74\x45\x6C\x65\x6D\x65\x6E\x74\x42\x79\x49\x64\x28\x49\x44\x5F\x56\x46\x53\x5F\x50\x41\x54\x48\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x65\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x66\x69\x6C\x65\x5F\x70\x61\x74\x68\x20\x3D\x20\x65\x6C\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x67\x65\x74\x45\x6C\x65\x6D\x65\x6E\x74\x42\x79\x49\x64\x28\x49\x44\x5F\x53\x54\x44\x4F\x55\x54\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x65\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x73\x74\x64\x6F\x75\x74\x20\x3D\x20\x65\x6C\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x67\x65\x74\x45\x6C\x65\x6D\x65\x6E\x74\x42\x79\x49\x64\x28\x49\x44\x5F\x53\x54\x44\x45\x52\x52\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x65\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x73\x74\x64\x65\x72\x72\x20\x3D\x20\x65\x6C\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x65\x64\x69\x74\x6F\x72\x5F\x6F\x70\x74\x73\x20\x3D\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x64\x3A\x20\x49\x44\x5F\x45\x44\x49\x54\x4F\x52\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x73\x5F\x65\x64\x69\x74\x61\x62\x6C\x65\x3A\x20\x74\x72\x75\x65\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x4F\x6E\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x3A\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x62\x65\x67\x69\x6E\x5F\x61\x74\x2C\x20\x65\x6E\x64\x5F\x61\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x74\x68\x69\x73\x2E\x65\x64\x69\x74\x6F\x72\x4F\x6E\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x28\x62\x65\x67\x69\x6E\x5F\x61\x74\x2C\x20\x65\x6E\x64\x5F\x61\x74\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x4F\x6E\x53\x61\x76\x65\x3A\x20\x74\x68\x69\x73\x2E\x65\x64\x69\x74\x6F\x72\x4F\x6E\x53\x61\x76\x65\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x77\x75\x69\x5F\x65\x64\x69\x74\x6F\x72\x20\x3D\x20\x6E\x65\x77\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x28\x65\x64\x69\x74\x6F\x72\x5F\x6F\x70\x74\x73\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x77\x75\x69\x5F\x6E\x6F\x74\x69\x66\x20\x3D\x20\x6E\x65\x77\x20\x57\x75\x69\x4E\x6F\x74\x69\x66\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x77\x75\x69\x5F\x76\x66\x73\x5F\x6F\x70\x74\x73\x20\x3D\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x64\x3A\x20\x49\x44\x5F\x56\x46\x53\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x4F\x70\x65\x6E\x3A\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x70\x61\x74\x68\x2C\x20\x69\x73\x5F\x64\x69\x72\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5F\x74\x68\x69\x73\x2E\x4F\x70\x65\x6E\x28\x70\x61\x74\x68\x2C\x20\x69\x73\x5F\x64\x69\x72\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x4F\x70\x65\x6E\x4E\x6F\x64\x65\x3A\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x6E\x6F\x64\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5F\x74\x68\x69\x73\x2E\x4F\x70\x65\x6E\x4E\x6F\x64\x65\x28\x6E\x6F\x64\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x77\x75\x69\x5F\x76\x66\x73\x20\x3D\x20\x6E\x65\x77\x20\x57\x75\x69\x56\x66\x73\x28\x77\x75\x69\x5F\x76\x66\x73\x5F\x6F\x70\x74\x73\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x77\x69\x6E\x64\x6F\x77\x2E\x6F\x6E\x68\x61\x73\x68\x63\x68\x61\x6E\x67\x65\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x65\x76\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x76\x2E\x70\x72\x65\x76\x65\x6E\x74\x44\x65\x66\x61\x75\x6C\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x68\x61\x73\x68\x63\x68\x61\x6E\x67\x65\x20\x3D\x20\x65\x76\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x75\x72\x6C\x20\x3D\x20\x6E\x65\x77\x20\x55\x52\x4C\x28\x68\x61\x73\x68\x63\x68\x61\x6E\x67\x65\x2E\x6E\x65\x77\x55\x52\x4C\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x74\x68\x69\x73\x2E\x6F\x6E\x48\x61\x73\x68\x43\x68\x61\x6E\x67\x65\x28\x75\x72\x6C\x2E\x68\x61\x73\x68\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6F\x6E\x48\x61\x73\x68\x43\x68\x61\x6E\x67\x65\x28\x77\x69\x6E\x64\x6F\x77\x2E\x6C\x6F\x63\x61\x74\x69\x6F\x6E\x2E\x68\x61\x73\x68\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x41\x77\x77\x61\x6E\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x6F\x6E\x48\x61\x73\x68\x43\x68\x61\x6E\x67\x65\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x68\x61\x73\x68\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x68\x61\x73\x68\x20\x3D\x3D\x3D\x20\x22\x22\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x68\x61\x73\x68\x20\x3D\x20\x22\x23\x2F\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x68\x61\x73\x68\x20\x3D\x20\x68\x61\x73\x68\x2E\x73\x75\x62\x73\x74\x72\x69\x6E\x67\x28\x31\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x77\x75\x69\x5F\x76\x66\x73\x2E\x4F\x70\x65\x6E\x44\x69\x72\x28\x68\x61\x73\x68\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x41\x77\x77\x61\x6E\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x4F\x70\x65\x6E\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x70\x61\x74\x68\x2C\x20\x69\x73\x5F\x64\x69\x72\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5F\x5F\x61\x77\x61\x69\x74\x65\x72\x32\x28\x74\x68\x69\x73\x2C\x20\x76\x6F\x69\x64\x20\x30\x2C\x20\x76\x6F\x69\x64\x20\x30\x2C\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x68\x74\x74\x70\x5F\x72\x65\x73\x2C\x20\x72\x65\x73\x2C\x20\x6E\x6F\x64\x65\x2C\x20\x72\x65\x73\x41\x6C\x6C\x6F\x77\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5F\x5F\x67\x65\x6E\x65\x72\x61\x74\x6F\x72\x32\x28\x74\x68\x69\x73\x2C\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x5F\x61\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x73\x77\x69\x74\x63\x68\x20\x28\x5F\x61\x2E\x6C\x61\x62\x65\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x30\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5B\x34\x2C\x20\x66\x65\x74\x63\x68\x28\x22\x2F\x61\x77\x77\x61\x6E\x2F\x61\x70\x69\x2F\x66\x73\x3F\x70\x61\x74\x68\x3D\x22\x20\x2B\x20\x70\x61\x74\x68\x29\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x31\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x68\x74\x74\x70\x5F\x72\x65\x73\x20\x3D\x20\x5F\x61\x2E\x73\x65\x6E\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5B\x34\x2C\x20\x68\x74\x74\x70\x5F\x72\x65\x73\x2E\x6A\x73\x6F\x6E\x28\x29\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x32\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x73\x20\x3D\x20\x5F\x61\x2E\x73\x65\x6E\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x72\x65\x73\x2E\x63\x6F\x64\x65\x20\x21\x3D\x20\x32\x30\x30\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x77\x75\x69\x5F\x6E\x6F\x74\x69\x66\x2E\x45\x72\x72\x6F\x72\x28\x22\x46\x61\x69\x6C\x65\x64\x20\x74\x6F\x20\x6F\x70\x65\x6E\x20\x22\x20\x2B\x20\x70\x61\x74\x68\x20\x2B\x20\x22\x3A\x20\x22\x20\x2B\x20\x72\x65\x73\x2E\x6D\x65\x73\x73\x61\x67\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5B\x32\x2C\x20\x72\x65\x73\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6E\x6F\x64\x65\x20\x3D\x20\x72\x65\x73\x2E\x64\x61\x74\x61\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x69\x6E\x70\x5F\x76\x66\x73\x5F\x6E\x65\x77\x2E\x76\x61\x6C\x75\x65\x20\x3D\x20\x6E\x6F\x64\x65\x2E\x6E\x61\x6D\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x69\x73\x5F\x64\x69\x72\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x75\x72\x72\x65\x6E\x74\x5F\x6E\x6F\x64\x65\x20\x3D\x20\x6E\x6F\x64\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x77\x69\x6E\x64\x6F\x77\x2E\x6C\x6F\x63\x61\x74\x69\x6F\x6E\x2E\x68\x61\x73\x68\x20\x3D\x20\x22\x23\x22\x20\x2B\x20\x70\x61\x74\x68\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5B\x32\x2C\x20\x72\x65\x73\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x73\x41\x6C\x6C\x6F\x77\x20\x3D\x20\x74\x68\x69\x73\x2E\x69\x73\x45\x64\x69\x74\x41\x6C\x6C\x6F\x77\x65\x64\x28\x6E\x6F\x64\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x72\x65\x73\x41\x6C\x6C\x6F\x77\x2E\x63\x6F\x64\x65\x20\x21\x3D\x20\x32\x30\x30\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x77\x75\x69\x5F\x6E\x6F\x74\x69\x66\x2E\x45\x72\x72\x6F\x72\x28\x72\x65\x73\x41\x6C\x6C\x6F\x77\x2E\x6D\x65\x73\x73\x61\x67\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5B\x32\x2C\x20\x72\x65\x73\x41\x6C\x6C\x6F\x77\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x66\x69\x6C\x65\x5F\x70\x61\x74\x68\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x70\x61\x74\x68\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x65\x71\x75\x65\x73\x74\x2E\x73\x63\x72\x69\x70\x74\x20\x3D\x20\x70\x61\x74\x68\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x77\x75\x69\x5F\x65\x64\x69\x74\x6F\x72\x2E\x4F\x70\x65\x6E\x28\x6E\x6F\x64\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x62\x74\x6E\x5F\x6C\x6F\x63\x61\x6C\x2E\x64\x69\x73\x61\x62\x6C\x65\x64\x20\x3D\x20\x66\x61\x6C\x73\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x62\x74\x6E\x5F\x72\x65\x6D\x6F\x74\x65\x2E\x64\x69\x73\x61\x62\x6C\x65\x64\x20\x3D\x20\x66\x61\x6C\x73\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x62\x74\x6E\x5F\x73\x61\x76\x65\x2E\x64\x69\x73\x61\x62\x6C\x65\x64\x20\x3D\x20\x66\x61\x6C\x73\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5B\x32\x2C\x20\x72\x65\x73\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x41\x77\x77\x61\x6E\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x4F\x70\x65\x6E\x4E\x6F\x64\x65\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x6E\x6F\x64\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5F\x5F\x61\x77\x61\x69\x74\x65\x72\x32\x28\x74\x68\x69\x73\x2C\x20\x76\x6F\x69\x64\x20\x30\x2C\x20\x76\x6F\x69\x64\x20\x30\x2C\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x72\x65\x73\x41\x6C\x6C\x6F\x77\x2C\x20\x72\x65\x73\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5F\x5F\x67\x65\x6E\x65\x72\x61\x74\x6F\x72\x32\x28\x74\x68\x69\x73\x2C\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x5F\x61\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x73\x77\x69\x74\x63\x68\x20\x28\x5F\x61\x2E\x6C\x61\x62\x65\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x30\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x73\x41\x6C\x6C\x6F\x77\x20\x3D\x20\x74\x68\x69\x73\x2E\x69\x73\x45\x64\x69\x74\x41\x6C\x6C\x6F\x77\x65\x64\x28\x6E\x6F\x64\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x72\x65\x73\x41\x6C\x6C\x6F\x77\x2E\x63\x6F\x64\x65\x20\x21\x3D\x20\x32\x30\x30\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x77\x75\x69\x5F\x6E\x6F\x74\x69\x66\x2E\x45\x72\x72\x6F\x72\x28\x72\x65\x73\x41\x6C\x6C\x6F\x77\x2E\x6D\x65\x73\x73\x61\x67\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5B\x32\x2C\x20\x72\x65\x73\x41\x6C\x6C\x6F\x77\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5B\x34\x2C\x20\x74\x68\x69\x73\x2E\x4F\x70\x65\x6E\x28\x6E\x6F\x64\x65\x2E\x70\x61\x74\x68\x2C\x20\x6E\x6F\x64\x65\x2E\x69\x73\x5F\x64\x69\x72\x29\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x31\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x73\x20\x3D\x20\x5F\x61\x2E\x73\x65\x6E\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5B\x32\x2C\x20\x72\x65\x73\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x41\x77\x77\x61\x6E\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x69\x73\x45\x64\x69\x74\x41\x6C\x6C\x6F\x77\x65\x64\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x6E\x6F\x64\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x72\x65\x73\x20\x3D\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x64\x65\x3A\x20\x34\x31\x32\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6D\x65\x73\x73\x61\x67\x65\x3A\x20\x22\x22\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x69\x73\x5F\x74\x79\x70\x65\x5F\x61\x6C\x6C\x6F\x77\x65\x64\x20\x3D\x20\x66\x61\x6C\x73\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x6E\x6F\x64\x65\x2E\x63\x6F\x6E\x74\x65\x6E\x74\x5F\x74\x79\x70\x65\x20\x26\x26\x20\x28\x6E\x6F\x64\x65\x2E\x63\x6F\x6E\x74\x65\x6E\x74\x5F\x74\x79\x70\x65\x2E\x69\x6E\x64\x65\x78\x4F\x66\x28\x22\x6A\x73\x6F\x6E\x22\x29\x20\x3E\x3D\x20\x30\x20\x7C\x7C\x20\x6E\x6F\x64\x65\x2E\x63\x6F\x6E\x74\x65\x6E\x74\x5F\x74\x79\x70\x65\x2E\x69\x6E\x64\x65\x78\x4F\x66\x28\x22\x6D\x65\x73\x73\x61\x67\x65\x22\x29\x20\x3E\x3D\x20\x30\x20\x7C\x7C\x20\x6E\x6F\x64\x65\x2E\x63\x6F\x6E\x74\x65\x6E\x74\x5F\x74\x79\x70\x65\x2E\x69\x6E\x64\x65\x78\x4F\x66\x28\x22\x73\x63\x72\x69\x70\x74\x22\x29\x20\x3E\x3D\x20\x30\x20\x7C\x7C\x20\x6E\x6F\x64\x65\x2E\x63\x6F\x6E\x74\x65\x6E\x74\x5F\x74\x79\x70\x65\x2E\x69\x6E\x64\x65\x78\x4F\x66\x28\x22\x74\x65\x78\x74\x22\x29\x20\x3E\x3D\x20\x30\x20\x7C\x7C\x20\x6E\x6F\x64\x65\x2E\x63\x6F\x6E\x74\x65\x6E\x74\x5F\x74\x79\x70\x65\x2E\x69\x6E\x64\x65\x78\x4F\x66\x28\x22\x78\x6D\x6C\x22\x29\x20\x3E\x3D\x20\x30\x29\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x73\x5F\x74\x79\x70\x65\x5F\x61\x6C\x6C\x6F\x77\x65\x64\x20\x3D\x20\x74\x72\x75\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x21\x69\x73\x5F\x74\x79\x70\x65\x5F\x61\x6C\x6C\x6F\x77\x65\x64\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x73\x2E\x6D\x65\x73\x73\x61\x67\x65\x20\x3D\x20\x27\x54\x68\x65\x20\x66\x69\x6C\x65\x20\x22\x27\x20\x2B\x20\x6E\x6F\x64\x65\x2E\x6E\x61\x6D\x65\x20\x2B\x20\x27\x22\x20\x77\x69\x74\x68\x20\x63\x6F\x6E\x74\x65\x6E\x74\x20\x74\x79\x70\x65\x20\x22\x27\x20\x2B\x20\x6E\x6F\x64\x65\x2E\x63\x6F\x6E\x74\x65\x6E\x74\x5F\x74\x79\x70\x65\x20\x2B\x20\x27\x22\x20\x69\x73\x20\x6E\x6F\x74\x20\x61\x6C\x6C\x6F\x77\x65\x64\x20\x74\x6F\x20\x62\x65\x20\x6F\x70\x65\x6E\x65\x64\x27\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x72\x65\x73\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x6E\x6F\x64\x65\x2E\x73\x69\x7A\x65\x20\x26\x26\x20\x6E\x6F\x64\x65\x2E\x73\x69\x7A\x65\x20\x3E\x20\x4D\x41\x58\x5F\x46\x49\x4C\x45\x5F\x53\x49\x5A\x45\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x73\x2E\x6D\x65\x73\x73\x61\x67\x65\x20\x3D\x20\x27\x54\x68\x65\x20\x66\x69\x6C\x65\x20\x22\x27\x20\x2B\x20\x6E\x6F\x64\x65\x2E\x6E\x61\x6D\x65\x20\x2B\x20\x27\x22\x20\x77\x69\x74\x68\x20\x73\x69\x7A\x65\x20\x27\x20\x2B\x20\x6E\x6F\x64\x65\x2E\x73\x69\x7A\x65\x20\x2F\x20\x31\x65\x36\x20\x2B\x20\x22\x4D\x42\x20\x69\x73\x20\x67\x72\x65\x61\x74\x65\x72\x20\x74\x68\x61\x6E\x20\x6D\x61\x78\x69\x6D\x75\x6D\x20\x22\x20\x2B\x20\x4D\x41\x58\x5F\x46\x49\x4C\x45\x5F\x53\x49\x5A\x45\x20\x2F\x20\x31\x65\x36\x20\x2B\x20\x22\x4D\x42\x2E\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x72\x65\x73\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x73\x2E\x63\x6F\x64\x65\x20\x3D\x20\x32\x30\x30\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x72\x65\x73\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x41\x77\x77\x61\x6E\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x6F\x6E\x43\x6C\x69\x63\x6B\x53\x61\x76\x65\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x72\x65\x71\x75\x65\x73\x74\x2E\x73\x63\x72\x69\x70\x74\x20\x3D\x3D\x20\x22\x22\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x63\x6F\x6E\x74\x65\x6E\x74\x20\x3D\x20\x74\x68\x69\x73\x2E\x77\x75\x69\x5F\x65\x64\x69\x74\x6F\x72\x2E\x47\x65\x74\x43\x6F\x6E\x74\x65\x6E\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x6C\x20\x3D\x20\x63\x6F\x6E\x74\x65\x6E\x74\x2E\x6C\x65\x6E\x67\x74\x68\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x6C\x20\x3E\x20\x30\x20\x26\x26\x20\x63\x6F\x6E\x74\x65\x6E\x74\x5B\x6C\x20\x2D\x20\x31\x5D\x20\x21\x3D\x20\x22\x5C\x6E\x22\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x74\x65\x6E\x74\x20\x2B\x3D\x20\x22\x5C\x6E\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x65\x71\x75\x65\x73\x74\x2E\x63\x6F\x6E\x74\x65\x6E\x74\x20\x3D\x20\x63\x6F\x6E\x74\x65\x6E\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x64\x6F\x53\x61\x76\x65\x46\x69\x6C\x65\x28\x74\x68\x69\x73\x2E\x72\x65\x71\x75\x65\x73\x74\x2E\x73\x63\x72\x69\x70\x74\x2C\x20\x74\x68\x69\x73\x2E\x72\x65\x71\x75\x65\x73\x74\x2E\x63\x6F\x6E\x74\x65\x6E\x74\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x41\x77\x77\x61\x6E\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x65\x64\x69\x74\x6F\x72\x4F\x6E\x53\x61\x76\x65\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x63\x6F\x6E\x74\x65\x6E\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x64\x6F\x53\x61\x76\x65\x46\x69\x6C\x65\x28\x74\x68\x69\x73\x2E\x72\x65\x71\x75\x65\x73\x74\x2E\x73\x63\x72\x69\x70\x74\x2C\x20\x63\x6F\x6E\x74\x65\x6E\x74\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x41\x77\x77\x61\x6E\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x64\x6F\x53\x61\x76\x65\x46\x69\x6C\x65\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x70\x61\x74\x68\x2C\x20\x63\x6F\x6E\x74\x65\x6E\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5F\x5F\x61\x77\x61\x69\x74\x65\x72\x32\x28\x74\x68\x69\x73\x2C\x20\x76\x6F\x69\x64\x20\x30\x2C\x20\x76\x6F\x69\x64\x20\x30\x2C\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x72\x65\x71\x2C\x20\x68\x74\x74\x70\x5F\x72\x65\x73\x2C\x20\x72\x65\x73\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5F\x5F\x67\x65\x6E\x65\x72\x61\x74\x6F\x72\x32\x28\x74\x68\x69\x73\x2C\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x5F\x61\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x73\x77\x69\x74\x63\x68\x20\x28\x5F\x61\x2E\x6C\x61\x62\x65\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x30\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x71\x20\x3D\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x70\x61\x74\x68\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x74\x65\x6E\x74\x3A\x20\x62\x74\x6F\x61\x28\x63\x6F\x6E\x74\x65\x6E\x74\x29\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5B\x34\x2C\x20\x66\x65\x74\x63\x68\x28\x22\x2F\x61\x77\x77\x61\x6E\x2F\x61\x70\x69\x2F\x66\x73\x22\x2C\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6D\x65\x74\x68\x6F\x64\x3A\x20\x22\x50\x55\x54\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x68\x65\x61\x64\x65\x72\x73\x3A\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x41\x63\x63\x65\x70\x74\x3A\x20\x22\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2F\x6A\x73\x6F\x6E\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x54\x79\x70\x65\x22\x3A\x20\x22\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2F\x6A\x73\x6F\x6E\x22\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x6F\x64\x79\x3A\x20\x4A\x53\x4F\x4E\x2E\x73\x74\x72\x69\x6E\x67\x69\x66\x79\x28\x72\x65\x71\x29\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x29\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x31\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x68\x74\x74\x70\x5F\x72\x65\x73\x20\x3D\x20\x5F\x61\x2E\x73\x65\x6E\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5B\x34\x2C\x20\x68\x74\x74\x70\x5F\x72\x65\x73\x2E\x6A\x73\x6F\x6E\x28\x29\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x32\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x73\x20\x3D\x20\x5F\x61\x2E\x73\x65\x6E\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x72\x65\x73\x2E\x63\x6F\x64\x65\x20\x21\x3D\x20\x32\x30\x30\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x77\x75\x69\x5F\x6E\x6F\x74\x69\x66\x2E\x45\x72\x72\x6F\x72\x28\x22\x46\x61\x69\x6C\x65\x64\x20\x74\x6F\x20\x73\x61\x76\x65\x20\x66\x69\x6C\x65\x20\x22\x20\x2B\x20\x70\x61\x74\x68\x20\x2B\x20\x22\x3A\x20\x22\x20\x2B\x20\x72\x65\x73\x2E\x6D\x65\x73\x73\x61\x67\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5B\x32\x2C\x20\x6E\x75\x6C\x6C\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x77\x75\x69\x5F\x6E\x6F\x74\x69\x66\x2E\x49\x6E\x66\x6F\x28\x22\x46\x69\x6C\x65\x20\x22\x20\x2B\x20\x70\x61\x74\x68\x20\x2B\x20\x22\x20\x68\x61\x73\x20\x62\x65\x65\x6E\x20\x73\x61\x76\x65\x64\x2E\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5B\x32\x2C\x20\x72\x65\x73\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x41\x77\x77\x61\x6E\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x65\x64\x69\x74\x6F\x72\x4F\x6E\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x62\x65\x67\x69\x6E\x2C\x20\x65\x6E\x64\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x73\x74\x6D\x74\x73\x20\x3D\x20\x74\x68\x69\x73\x2E\x77\x75\x69\x5F\x65\x64\x69\x74\x6F\x72\x2E\x6C\x69\x6E\x65\x73\x2E\x73\x6C\x69\x63\x65\x28\x62\x65\x67\x69\x6E\x2C\x20\x65\x6E\x64\x20\x2B\x20\x31\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x66\x6F\x72\x20\x28\x76\x61\x72\x20\x5F\x69\x20\x3D\x20\x30\x2C\x20\x73\x74\x6D\x74\x73\x5F\x31\x20\x3D\x20\x73\x74\x6D\x74\x73\x3B\x20\x5F\x69\x20\x3C\x20\x73\x74\x6D\x74\x73\x5F\x31\x2E\x6C\x65\x6E\x67\x74\x68\x3B\x20\x5F\x69\x2B\x2B\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x73\x74\x6D\x74\x20\x3D\x20\x73\x74\x6D\x74\x73\x5F\x31\x5B\x5F\x69\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x6F\x6C\x65\x2E\x6C\x6F\x67\x28\x22\x73\x74\x6D\x74\x3A\x22\x2C\x20\x73\x74\x6D\x74\x2E\x78\x2C\x20\x73\x74\x6D\x74\x2E\x74\x65\x78\x74\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x41\x77\x77\x61\x6E\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x65\x78\x65\x63\x4C\x6F\x63\x61\x6C\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x72\x65\x71\x75\x65\x73\x74\x2E\x73\x63\x72\x69\x70\x74\x20\x3D\x3D\x20\x22\x22\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x77\x75\x69\x5F\x6E\x6F\x74\x69\x66\x2E\x45\x72\x72\x6F\x72\x28\x22\x45\x78\x65\x63\x75\x74\x65\x20\x6F\x6E\x20\x6C\x6F\x63\x61\x6C\x3A\x20\x6E\x6F\x20\x66\x69\x6C\x65\x20\x73\x65\x6C\x65\x63\x74\x65\x64\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x68\x74\x74\x70\x41\x70\x69\x45\x78\x65\x63\x75\x74\x65\x28\x22\x6C\x6F\x63\x61\x6C\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x41\x77\x77\x61\x6E\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x65\x78\x65\x63\x52\x65\x6D\x6F\x74\x65\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x72\x65\x71\x75\x65\x73\x74\x2E\x73\x63\x72\x69\x70\x74\x20\x3D\x3D\x20\x22\x22\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x77\x75\x69\x5F\x6E\x6F\x74\x69\x66\x2E\x45\x72\x72\x6F\x72\x28\x22\x45\x78\x65\x63\x75\x74\x65\x20\x6F\x6E\x20\x72\x65\x6D\x6F\x74\x65\x3A\x20\x6E\x6F\x20\x66\x69\x6C\x65\x20\x73\x65\x6C\x65\x63\x74\x65\x64\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x68\x74\x74\x70\x41\x70\x69\x45\x78\x65\x63\x75\x74\x65\x28\x22\x72\x65\x6D\x6F\x74\x65\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x41\x77\x77\x61\x6E\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x68\x74\x74\x70\x41\x70\x69\x45\x78\x65\x63\x75\x74\x65\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x6D\x6F\x64\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5F\x5F\x61\x77\x61\x69\x74\x65\x72\x32\x28\x74\x68\x69\x73\x2C\x20\x76\x6F\x69\x64\x20\x30\x2C\x20\x76\x6F\x69\x64\x20\x30\x2C\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x73\x65\x6C\x65\x63\x74\x69\x6F\x6E\x5F\x72\x61\x6E\x67\x65\x2C\x20\x68\x74\x74\x70\x5F\x72\x65\x73\x2C\x20\x72\x65\x73\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5F\x5F\x67\x65\x6E\x65\x72\x61\x74\x6F\x72\x32\x28\x74\x68\x69\x73\x2C\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x5F\x61\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x73\x77\x69\x74\x63\x68\x20\x28\x5F\x61\x2E\x6C\x61\x62\x65\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x30\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x73\x65\x6C\x65\x63\x74\x69\x6F\x6E\x5F\x72\x61\x6E\x67\x65\x20\x3D\x20\x74\x68\x69\x73\x2E\x77\x75\x69\x5F\x65\x64\x69\x74\x6F\x72\x2E\x47\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x52\x61\x6E\x67\x65\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x73\x65\x6C\x65\x63\x74\x69\x6F\x6E\x5F\x72\x61\x6E\x67\x65\x2E\x62\x65\x67\x69\x6E\x5F\x61\x74\x20\x3C\x20\x30\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x65\x71\x75\x65\x73\x74\x2E\x62\x65\x67\x69\x6E\x5F\x61\x74\x20\x3D\x20\x30\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x20\x65\x6C\x73\x65\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x65\x71\x75\x65\x73\x74\x2E\x62\x65\x67\x69\x6E\x5F\x61\x74\x20\x3D\x20\x73\x65\x6C\x65\x63\x74\x69\x6F\x6E\x5F\x72\x61\x6E\x67\x65\x2E\x62\x65\x67\x69\x6E\x5F\x61\x74\x20\x2B\x20\x31\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x73\x65\x6C\x65\x63\x74\x69\x6F\x6E\x5F\x72\x61\x6E\x67\x65\x2E\x65\x6E\x64\x5F\x61\x74\x20\x3C\x20\x30\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x65\x71\x75\x65\x73\x74\x2E\x65\x6E\x64\x5F\x61\x74\x20\x3D\x20\x30\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x20\x65\x6C\x73\x65\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x65\x71\x75\x65\x73\x74\x2E\x65\x6E\x64\x5F\x61\x74\x20\x3D\x20\x73\x65\x6C\x65\x63\x74\x69\x6F\x6E\x5F\x72\x61\x6E\x67\x65\x2E\x65\x6E\x64\x5F\x61\x74\x20\x2B\x20\x31\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x73\x74\x64\x6F\x75\x74\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x22\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x73\x74\x64\x65\x72\x72\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x22\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x65\x71\x75\x65\x73\x74\x2E\x6D\x6F\x64\x65\x20\x3D\x20\x6D\x6F\x64\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x65\x71\x75\x65\x73\x74\x2E\x63\x6F\x6E\x74\x65\x6E\x74\x20\x3D\x20\x62\x74\x6F\x61\x28\x74\x68\x69\x73\x2E\x77\x75\x69\x5F\x65\x64\x69\x74\x6F\x72\x2E\x47\x65\x74\x43\x6F\x6E\x74\x65\x6E\x74\x28\x29\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5B\x34\x2C\x20\x66\x65\x74\x63\x68\x28\x22\x2F\x61\x77\x77\x61\x6E\x2F\x61\x70\x69\x2F\x65\x78\x65\x63\x75\x74\x65\x22\x2C\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6D\x65\x74\x68\x6F\x64\x3A\x20\x22\x50\x4F\x53\x54\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x68\x65\x61\x64\x65\x72\x73\x3A\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x41\x63\x63\x65\x70\x74\x3A\x20\x22\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2F\x6A\x73\x6F\x6E\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x54\x79\x70\x65\x22\x3A\x20\x22\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2F\x6A\x73\x6F\x6E\x22\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x6F\x64\x79\x3A\x20\x4A\x53\x4F\x4E\x2E\x73\x74\x72\x69\x6E\x67\x69\x66\x79\x28\x74\x68\x69\x73\x2E\x72\x65\x71\x75\x65\x73\x74\x29\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x29\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x31\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x68\x74\x74\x70\x5F\x72\x65\x73\x20\x3D\x20\x5F\x61\x2E\x73\x65\x6E\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5B\x34\x2C\x20\x68\x74\x74\x70\x5F\x72\x65\x73\x2E\x6A\x73\x6F\x6E\x28\x29\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x32\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x73\x20\x3D\x20\x5F\x61\x2E\x73\x65\x6E\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x72\x65\x73\x2E\x63\x6F\x64\x65\x20\x21\x3D\x20\x32\x30\x30\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x77\x75\x69\x5F\x6E\x6F\x74\x69\x66\x2E\x45\x72\x72\x6F\x72\x28\x22\x45\x78\x65\x63\x75\x74\x65\x20\x66\x61\x69\x6C\x65\x64\x3A\x20\x22\x20\x2B\x20\x72\x65\x73\x2E\x6D\x65\x73\x73\x61\x67\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x32\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x2F\x2A\x72\x65\x74\x75\x72\x6E\x2A\x2F\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x73\x74\x64\x6F\x75\x74\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x61\x74\x6F\x62\x28\x72\x65\x73\x2E\x64\x61\x74\x61\x2E\x73\x74\x64\x6F\x75\x74\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x72\x65\x73\x2E\x64\x61\x74\x61\x2E\x73\x74\x64\x65\x72\x72\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x73\x74\x64\x65\x72\x72\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x61\x74\x6F\x62\x28\x72\x65\x73\x2E\x64\x61\x74\x61\x2E\x73\x74\x64\x65\x72\x72\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x77\x75\x69\x5F\x6E\x6F\x74\x69\x66\x2E\x49\x6E\x66\x6F\x28\x22\x53\x75\x63\x63\x65\x73\x73\x66\x75\x6C\x6C\x79\x20\x65\x78\x65\x63\x75\x74\x65\x20\x22\x20\x2B\x20\x74\x68\x69\x73\x2E\x72\x65\x71\x75\x65\x73\x74\x2E\x73\x63\x72\x69\x70\x74\x20\x2B\x20\x22\x20\x6F\x6E\x20\x22\x20\x2B\x20\x6D\x6F\x64\x65\x20\x2B\x20\x22\x2E\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x32\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x2F\x2A\x72\x65\x74\x75\x72\x6E\x2A\x2F\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x41\x77\x77\x61\x6E\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x6E\x65\x77\x4E\x6F\x64\x65\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x69\x73\x5F\x64\x69\x72\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5F\x5F\x61\x77\x61\x69\x74\x65\x72\x32\x28\x74\x68\x69\x73\x2C\x20\x76\x6F\x69\x64\x20\x30\x2C\x20\x76\x6F\x69\x64\x20\x30\x2C\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x6E\x61\x6D\x65\x2C\x20\x72\x65\x71\x2C\x20\x68\x74\x74\x70\x5F\x72\x65\x73\x2C\x20\x72\x65\x73\x2C\x20\x6E\x6F\x64\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5F\x5F\x67\x65\x6E\x65\x72\x61\x74\x6F\x72\x32\x28\x74\x68\x69\x73\x2C\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x5F\x61\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x73\x77\x69\x74\x63\x68\x20\x28\x5F\x61\x2E\x6C\x61\x62\x65\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x30\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x21\x74\x68\x69\x73\x2E\x63\x75\x72\x72\x65\x6E\x74\x5F\x6E\x6F\x64\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x77\x75\x69\x5F\x6E\x6F\x74\x69\x66\x2E\x45\x72\x72\x6F\x72\x28\x22\x4E\x6F\x20\x61\x63\x74\x69\x76\x65\x20\x64\x69\x72\x65\x63\x74\x6F\x72\x79\x20\x6C\x6F\x61\x64\x65\x64\x20\x6F\x72\x20\x73\x65\x6C\x65\x63\x74\x65\x64\x2E\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x32\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x2F\x2A\x72\x65\x74\x75\x72\x6E\x2A\x2F\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6E\x61\x6D\x65\x20\x3D\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x69\x6E\x70\x5F\x76\x66\x73\x5F\x6E\x65\x77\x2E\x76\x61\x6C\x75\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x6E\x61\x6D\x65\x20\x3D\x3D\x3D\x20\x22\x22\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x77\x75\x69\x5F\x6E\x6F\x74\x69\x66\x2E\x45\x72\x72\x6F\x72\x28\x22\x45\x6D\x70\x74\x79\x20\x66\x69\x6C\x65\x20\x6E\x61\x6D\x65\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x32\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x2F\x2A\x72\x65\x74\x75\x72\x6E\x2A\x2F\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x71\x20\x3D\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x70\x61\x74\x68\x3A\x20\x74\x68\x69\x73\x2E\x63\x75\x72\x72\x65\x6E\x74\x5F\x6E\x6F\x64\x65\x2E\x70\x61\x74\x68\x20\x2B\x20\x22\x2F\x22\x20\x2B\x20\x6E\x61\x6D\x65\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6E\x61\x6D\x65\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x73\x5F\x64\x69\x72\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x74\x65\x6E\x74\x5F\x74\x79\x70\x65\x3A\x20\x22\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6D\x6F\x64\x5F\x74\x69\x6D\x65\x3A\x20\x30\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x73\x69\x7A\x65\x3A\x20\x30\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6D\x6F\x64\x65\x3A\x20\x22\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x68\x69\x6C\x64\x73\x3A\x20\x5B\x5D\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x74\x65\x6E\x74\x3A\x20\x22\x22\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5B\x34\x2C\x20\x66\x65\x74\x63\x68\x28\x22\x2F\x61\x77\x77\x61\x6E\x2F\x61\x70\x69\x2F\x66\x73\x22\x2C\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6D\x65\x74\x68\x6F\x64\x3A\x20\x22\x50\x4F\x53\x54\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x68\x65\x61\x64\x65\x72\x73\x3A\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x41\x63\x63\x65\x70\x74\x3A\x20\x22\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2F\x6A\x73\x6F\x6E\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x54\x79\x70\x65\x22\x3A\x20\x22\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2F\x6A\x73\x6F\x6E\x22\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x6F\x64\x79\x3A\x20\x4A\x53\x4F\x4E\x2E\x73\x74\x72\x69\x6E\x67\x69\x66\x79\x28\x72\x65\x71\x29\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x29\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x31\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x68\x74\x74\x70\x5F\x72\x65\x73\x20\x3D\x20\x5F\x61\x2E\x73\x65\x6E\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5B\x34\x2C\x20\x68\x74\x74\x70\x5F\x72\x65\x73\x2E\x6A\x73\x6F\x6E\x28\x29\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x32\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x73\x20\x3D\x20\x5F\x61\x2E\x73\x65\x6E\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x72\x65\x73\x2E\x63\x6F\x64\x65\x20\x21\x3D\x20\x32\x30\x30\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x77\x75\x69\x5F\x6E\x6F\x74\x69\x66\x2E\x45\x72\x72\x6F\x72\x28\x22\x6E\x65\x77\x4E\x6F\x64\x65\x3A\x20\x22\x20\x2B\x20\x72\x65\x73\x2E\x6D\x65\x73\x73\x61\x67\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x32\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x2F\x2A\x72\x65\x74\x75\x72\x6E\x2A\x2F\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6E\x6F\x64\x65\x20\x3D\x20\x72\x65\x73\x2E\x64\x61\x74\x61\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x21\x74\x68\x69\x73\x2E\x63\x75\x72\x72\x65\x6E\x74\x5F\x6E\x6F\x64\x65\x2E\x63\x68\x69\x6C\x64\x73\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x75\x72\x72\x65\x6E\x74\x5F\x6E\x6F\x64\x65\x2E\x63\x68\x69\x6C\x64\x73\x20\x3D\x20\x5B\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x75\x72\x72\x65\x6E\x74\x5F\x6E\x6F\x64\x65\x2E\x63\x68\x69\x6C\x64\x73\x2E\x70\x75\x73\x68\x28\x6E\x6F\x64\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x77\x75\x69\x5F\x76\x66\x73\x2E\x53\x65\x74\x28\x74\x68\x69\x73\x2E\x63\x75\x72\x72\x65\x6E\x74\x5F\x6E\x6F\x64\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x32\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x2F\x2A\x72\x65\x74\x75\x72\x6E\x2A\x2F\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x41\x77\x77\x61\x6E\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x6F\x6E\x43\x6C\x69\x63\x6B\x52\x65\x6D\x6F\x76\x65\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5F\x5F\x61\x77\x61\x69\x74\x65\x72\x32\x28\x74\x68\x69\x73\x2C\x20\x76\x6F\x69\x64\x20\x30\x2C\x20\x76\x6F\x69\x64\x20\x30\x2C\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x6E\x61\x6D\x65\x2C\x20\x72\x65\x71\x2C\x20\x68\x74\x74\x70\x5F\x72\x65\x73\x2C\x20\x72\x65\x73\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5F\x5F\x67\x65\x6E\x65\x72\x61\x74\x6F\x72\x32\x28\x74\x68\x69\x73\x2C\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x5F\x61\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x73\x77\x69\x74\x63\x68\x20\x28\x5F\x61\x2E\x6C\x61\x62\x65\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x30\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x6F\x6C\x65\x2E\x6C\x6F\x67\x28\x22\x6F\x6E\x43\x6C\x69\x63\x6B\x52\x65\x6D\x6F\x76\x65\x3A\x20\x22\x2C\x20\x74\x68\x69\x73\x2E\x63\x75\x72\x72\x65\x6E\x74\x5F\x6E\x6F\x64\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x21\x74\x68\x69\x73\x2E\x63\x75\x72\x72\x65\x6E\x74\x5F\x6E\x6F\x64\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x77\x75\x69\x5F\x6E\x6F\x74\x69\x66\x2E\x45\x72\x72\x6F\x72\x28\x22\x4E\x6F\x20\x66\x69\x6C\x65\x20\x73\x65\x6C\x65\x63\x74\x65\x64\x2E\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x32\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x2F\x2A\x72\x65\x74\x75\x72\x6E\x2A\x2F\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6E\x61\x6D\x65\x20\x3D\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x69\x6E\x70\x5F\x76\x66\x73\x5F\x6E\x65\x77\x2E\x76\x61\x6C\x75\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x6E\x61\x6D\x65\x20\x3D\x3D\x3D\x20\x22\x22\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x77\x75\x69\x5F\x6E\x6F\x74\x69\x66\x2E\x45\x72\x72\x6F\x72\x28\x22\x45\x6D\x70\x74\x79\x20\x66\x69\x6C\x65\x20\x6E\x61\x6D\x65\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x32\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x2F\x2A\x72\x65\x74\x75\x72\x6E\x2A\x2F\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x71\x20\x3D\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x70\x61\x74\x68\x3A\x20\x74\x68\x69\x73\x2E\x63\x75\x72\x72\x65\x6E\x74\x5F\x6E\x6F\x64\x65\x2E\x70\x61\x74\x68\x20\x2B\x20\x22\x2F\x22\x20\x2B\x20\x6E\x61\x6D\x65\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x73\x5F\x64\x69\x72\x3A\x20\x66\x61\x6C\x73\x65\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x74\x65\x6E\x74\x3A\x20\x22\x22\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5B\x34\x2C\x20\x66\x65\x74\x63\x68\x28\x22\x2F\x61\x77\x77\x61\x6E\x2F\x61\x70\x69\x2F\x66\x73\x22\x2C\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6D\x65\x74\x68\x6F\x64\x3A\x20\x22\x44\x45\x4C\x45\x54\x45\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x68\x65\x61\x64\x65\x72\x73\x3A\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x41\x63\x63\x65\x70\x74\x3A\x20\x22\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2F\x6A\x73\x6F\x6E\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x54\x79\x70\x65\x22\x3A\x20\x22\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2F\x6A\x73\x6F\x6E\x22\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x6F\x64\x79\x3A\x20\x4A\x53\x4F\x4E\x2E\x73\x74\x72\x69\x6E\x67\x69\x66\x79\x28\x72\x65\x71\x29\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x29\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x31\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x68\x74\x74\x70\x5F\x72\x65\x73\x20\x3D\x20\x5F\x61\x2E\x73\x65\x6E\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5B\x34\x2C\x20\x68\x74\x74\x70\x5F\x72\x65\x73\x2E\x6A\x73\x6F\x6E\x28\x29\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x32\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x73\x20\x3D\x20\x5F\x61\x2E\x73\x65\x6E\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x72\x65\x73\x2E\x63\x6F\x64\x65\x20\x21\x3D\x20\x32\x30\x30\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x77\x75\x69\x5F\x6E\x6F\x74\x69\x66\x2E\x45\x72\x72\x6F\x72\x28\x22\x72\x65\x6D\x6F\x76\x65\x3A\x20\x22\x20\x2B\x20\x72\x65\x73\x2E\x6D\x65\x73\x73\x61\x67\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x32\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x2F\x2A\x72\x65\x74\x75\x72\x6E\x2A\x2F\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x32\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x2F\x2A\x72\x65\x74\x75\x72\x6E\x2A\x2F\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x41\x77\x77\x61\x6E\x32\x3B\x0A\x20\x20\x20\x20\x7D\x28\x29\x0A\x20\x20\x29\x3B\x0A\x0A\x20\x20\x2F\x2F\x20\x5F\x77\x77\x77\x2F\x6D\x61\x69\x6E\x2E\x74\x73\x0A\x20\x20\x72\x65\x6E\x64\x65\x72\x48\x74\x6D\x6C\x28\x29\x3B\x0A\x20\x20\x76\x61\x72\x20\x61\x77\x77\x61\x6E\x20\x3D\x20\x6E\x65\x77\x20\x41\x77\x77\x61\x6E\x28\x29\x3B\x0A\x7D\x29\x28\x29\x3B\x0A"), + Content: []byte("\x76\x61\x72\x20\x61\x77\x77\x61\x6E\x20\x3D\x20\x28\x28\x29\x20\x3D\x3E\x20\x7B\x0A\x20\x20\x2F\x2F\x20\x5F\x77\x77\x77\x2F\x77\x75\x69\x2F\x65\x64\x69\x74\x6F\x72\x2F\x65\x64\x69\x74\x6F\x72\x2E\x6A\x73\x0A\x20\x20\x76\x61\x72\x20\x57\x55\x49\x5F\x45\x44\x49\x54\x4F\x52\x5F\x43\x4C\x41\x53\x53\x20\x3D\x20\x22\x77\x75\x69\x5F\x65\x64\x69\x74\x6F\x72\x22\x3B\x0A\x20\x20\x76\x61\x72\x20\x57\x55\x49\x5F\x45\x44\x49\x54\x4F\x52\x5F\x43\x4C\x41\x53\x53\x5F\x4C\x49\x4E\x45\x20\x3D\x20\x22\x77\x75\x69\x5F\x65\x64\x69\x74\x6F\x72\x5F\x6C\x69\x6E\x65\x22\x3B\x0A\x20\x20\x76\x61\x72\x20\x57\x55\x49\x5F\x45\x44\x49\x54\x4F\x52\x5F\x43\x4C\x41\x53\x53\x5F\x4C\x49\x4E\x45\x5F\x4E\x55\x4D\x42\x45\x52\x20\x3D\x20\x22\x77\x75\x69\x5F\x65\x64\x69\x74\x6F\x72\x5F\x6C\x69\x6E\x65\x5F\x6E\x75\x6D\x62\x65\x72\x22\x3B\x0A\x20\x20\x76\x61\x72\x20\x57\x55\x49\x5F\x45\x44\x49\x54\x4F\x52\x5F\x43\x4C\x41\x53\x53\x5F\x4C\x49\x4E\x45\x5F\x54\x45\x58\x54\x20\x3D\x20\x22\x77\x75\x69\x5F\x65\x64\x69\x74\x6F\x72\x5F\x6C\x69\x6E\x65\x5F\x74\x65\x78\x74\x22\x3B\x0A\x20\x20\x76\x61\x72\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x20\x3D\x20\x28\x0A\x20\x20\x20\x20\x2F\x2A\x2A\x20\x40\x63\x6C\x61\x73\x73\x20\x2A\x2F\x0A\x20\x20\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x32\x28\x6F\x70\x74\x73\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x5F\x74\x68\x69\x73\x20\x3D\x20\x74\x68\x69\x73\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x20\x3D\x20\x6F\x70\x74\x73\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x20\x3D\x20\x5B\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x61\x63\x74\x69\x76\x65\x5F\x66\x69\x6C\x65\x20\x3D\x20\x6E\x75\x6C\x6C\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x61\x63\x74\x69\x76\x65\x5F\x74\x65\x78\x74\x20\x3D\x20\x6E\x75\x6C\x6C\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x61\x6E\x67\x65\x5F\x62\x65\x67\x69\x6E\x20\x3D\x20\x2D\x31\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x61\x6E\x67\x65\x5F\x65\x6E\x64\x20\x3D\x20\x2D\x31\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x61\x77\x5F\x6C\x69\x6E\x65\x73\x20\x3D\x20\x5B\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x69\x73\x5F\x6B\x65\x79\x5F\x63\x6F\x6E\x74\x72\x6F\x6C\x20\x3D\x20\x66\x61\x6C\x73\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x75\x6E\x72\x65\x20\x3D\x20\x6E\x65\x77\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x55\x6E\x64\x6F\x52\x65\x64\x6F\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x69\x64\x20\x3D\x20\x6F\x70\x74\x73\x2E\x69\x64\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x69\x73\x5F\x65\x64\x69\x74\x61\x62\x6C\x65\x20\x3D\x20\x6F\x70\x74\x73\x2E\x69\x73\x5F\x65\x64\x69\x74\x61\x62\x6C\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x65\x6C\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x67\x65\x74\x45\x6C\x65\x6D\x65\x6E\x74\x42\x79\x49\x64\x28\x6F\x70\x74\x73\x2E\x69\x64\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x21\x65\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x6F\x6C\x65\x2E\x65\x72\x72\x6F\x72\x28\x22\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x3A\x20\x65\x6C\x65\x6D\x65\x6E\x74\x20\x49\x44\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64\x3A\x22\x2C\x20\x6F\x70\x74\x73\x2E\x69\x64\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x20\x3D\x20\x65\x6C\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x69\x6E\x69\x74\x53\x74\x79\x6C\x65\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x57\x55\x49\x5F\x45\x44\x49\x54\x4F\x52\x5F\x43\x4C\x41\x53\x53\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x73\x65\x6C\x20\x3D\x20\x77\x69\x6E\x64\x6F\x77\x2E\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x21\x73\x65\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x6F\x6C\x65\x2E\x65\x72\x72\x6F\x72\x28\x22\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x3A\x20\x63\x61\x6E\x6E\x6F\x74\x20\x67\x65\x74\x20\x77\x69\x6E\x64\x6F\x77\x20\x73\x65\x6C\x65\x63\x74\x69\x6F\x6E\x22\x2C\x20\x6F\x70\x74\x73\x2E\x69\x64\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x73\x65\x6C\x20\x3D\x20\x73\x65\x6C\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x61\x6E\x67\x65\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x63\x72\x65\x61\x74\x65\x52\x61\x6E\x67\x65\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x6F\x6E\x6B\x65\x79\x75\x70\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x65\x76\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x74\x68\x69\x73\x2E\x6F\x6E\x4B\x65\x79\x75\x70\x44\x6F\x63\x75\x6D\x65\x6E\x74\x28\x5F\x74\x68\x69\x73\x2C\x20\x65\x76\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x47\x65\x74\x43\x6F\x6E\x74\x65\x6E\x74\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x63\x6F\x6E\x74\x65\x6E\x74\x20\x3D\x20\x22\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x66\x6F\x72\x20\x28\x76\x61\x72\x20\x78\x20\x3D\x20\x30\x3B\x20\x78\x20\x3C\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x2E\x6C\x65\x6E\x67\x74\x68\x3B\x20\x78\x2B\x2B\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x78\x20\x3E\x20\x30\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x74\x65\x6E\x74\x20\x2B\x3D\x20\x22\x5C\x6E\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x74\x65\x6E\x74\x20\x2B\x3D\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x5B\x78\x5D\x2E\x65\x6C\x5F\x74\x65\x78\x74\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x63\x6F\x6E\x74\x65\x6E\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x47\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x52\x61\x6E\x67\x65\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x65\x67\x69\x6E\x5F\x61\x74\x3A\x20\x74\x68\x69\x73\x2E\x72\x61\x6E\x67\x65\x5F\x62\x65\x67\x69\x6E\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6E\x64\x5F\x61\x74\x3A\x20\x74\x68\x69\x73\x2E\x72\x61\x6E\x67\x65\x5F\x65\x6E\x64\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x4F\x6E\x43\x6C\x69\x63\x6B\x54\x65\x78\x74\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x74\x65\x78\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x73\x65\x6C\x20\x3D\x20\x77\x69\x6E\x64\x6F\x77\x2E\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x73\x65\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x73\x65\x6C\x20\x3D\x20\x73\x65\x6C\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x4F\x6E\x4B\x65\x79\x75\x70\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x78\x2C\x20\x74\x65\x78\x74\x2C\x20\x65\x76\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x74\x65\x78\x74\x5F\x62\x65\x66\x6F\x72\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x74\x65\x78\x74\x5F\x61\x66\x74\x65\x72\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x6F\x66\x66\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x73\x77\x69\x74\x63\x68\x20\x28\x65\x76\x2E\x6B\x65\x79\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x41\x6C\x74\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x41\x72\x72\x6F\x77\x44\x6F\x77\x6E\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x41\x72\x72\x6F\x77\x4C\x65\x66\x74\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x41\x72\x72\x6F\x77\x52\x69\x67\x68\x74\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x41\x72\x72\x6F\x77\x55\x70\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x43\x61\x70\x73\x4C\x6F\x63\x6B\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x43\x6F\x6E\x74\x65\x78\x74\x4D\x65\x6E\x75\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x45\x6E\x64\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x48\x6F\x6D\x65\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x49\x6E\x73\x65\x72\x74\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x4F\x53\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x50\x61\x67\x65\x44\x6F\x77\x6E\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x50\x61\x67\x65\x55\x70\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x50\x61\x75\x73\x65\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x50\x72\x69\x6E\x74\x53\x63\x72\x65\x65\x6E\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x53\x63\x72\x6F\x6C\x6C\x4C\x6F\x63\x6B\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x53\x68\x69\x66\x74\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x42\x61\x63\x6B\x73\x70\x61\x63\x65\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x76\x2E\x70\x72\x65\x76\x65\x6E\x74\x44\x65\x66\x61\x75\x6C\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x65\x78\x74\x5F\x62\x65\x66\x6F\x72\x65\x20\x3D\x20\x74\x68\x69\x73\x2E\x72\x61\x77\x5F\x6C\x69\x6E\x65\x73\x5B\x78\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x65\x6C\x5F\x74\x65\x78\x74\x5F\x63\x75\x72\x72\x20\x3D\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x5B\x78\x5D\x2E\x65\x6C\x5F\x74\x65\x78\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x65\x78\x74\x5F\x61\x66\x74\x65\x72\x20\x3D\x20\x65\x6C\x5F\x74\x65\x78\x74\x5F\x63\x75\x72\x72\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6F\x66\x66\x20\x3D\x20\x74\x68\x69\x73\x2E\x73\x65\x6C\x2E\x66\x6F\x63\x75\x73\x4F\x66\x66\x73\x65\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x6F\x66\x66\x20\x3E\x20\x30\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x75\x6E\x72\x65\x2E\x44\x6F\x55\x70\x64\x61\x74\x65\x28\x78\x2C\x20\x74\x65\x78\x74\x5F\x62\x65\x66\x6F\x72\x65\x2C\x20\x74\x65\x78\x74\x5F\x61\x66\x74\x65\x72\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x61\x77\x5F\x6C\x69\x6E\x65\x73\x5B\x78\x5D\x20\x3D\x20\x74\x65\x78\x74\x5F\x61\x66\x74\x65\x72\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x73\x65\x74\x43\x61\x72\x65\x74\x28\x65\x6C\x5F\x74\x65\x78\x74\x5F\x63\x75\x72\x72\x2C\x20\x6F\x66\x66\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x66\x61\x6C\x73\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x65\x6C\x5F\x74\x65\x78\x74\x5F\x70\x72\x65\x76\x20\x3D\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x5B\x78\x20\x2D\x20\x31\x5D\x2E\x65\x6C\x5F\x74\x65\x78\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x75\x6E\x72\x65\x2E\x44\x6F\x4A\x6F\x69\x6E\x28\x78\x20\x2D\x20\x31\x2C\x20\x65\x6C\x5F\x74\x65\x78\x74\x5F\x70\x72\x65\x76\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x2C\x20\x65\x6C\x5F\x74\x65\x78\x74\x5F\x63\x75\x72\x72\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6F\x66\x66\x20\x3D\x20\x65\x6C\x5F\x74\x65\x78\x74\x5F\x70\x72\x65\x76\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x2E\x6C\x65\x6E\x67\x74\x68\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x5F\x74\x65\x78\x74\x5F\x70\x72\x65\x76\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x65\x6C\x5F\x74\x65\x78\x74\x5F\x70\x72\x65\x76\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x2B\x20\x65\x6C\x5F\x74\x65\x78\x74\x5F\x63\x75\x72\x72\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x61\x77\x5F\x6C\x69\x6E\x65\x73\x5B\x78\x20\x2D\x20\x31\x5D\x20\x3D\x20\x65\x6C\x5F\x74\x65\x78\x74\x5F\x70\x72\x65\x76\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x64\x65\x6C\x65\x74\x65\x4C\x69\x6E\x65\x28\x78\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x73\x65\x74\x43\x61\x72\x65\x74\x28\x65\x6C\x5F\x74\x65\x78\x74\x5F\x70\x72\x65\x76\x2C\x20\x6F\x66\x66\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x66\x61\x6C\x73\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x43\x6F\x6E\x74\x72\x6F\x6C\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x69\x73\x5F\x6B\x65\x79\x5F\x63\x6F\x6E\x74\x72\x6F\x6C\x20\x3D\x20\x66\x61\x6C\x73\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x45\x6E\x74\x65\x72\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x76\x2E\x70\x72\x65\x76\x65\x6E\x74\x44\x65\x66\x61\x75\x6C\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x72\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x69\x73\x5F\x6B\x65\x79\x5F\x63\x6F\x6E\x74\x72\x6F\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x76\x2E\x70\x72\x65\x76\x65\x6E\x74\x44\x65\x66\x61\x75\x6C\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x7A\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x69\x73\x5F\x6B\x65\x79\x5F\x63\x6F\x6E\x74\x72\x6F\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x76\x2E\x70\x72\x65\x76\x65\x6E\x74\x44\x65\x66\x61\x75\x6C\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x64\x65\x66\x61\x75\x6C\x74\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x69\x73\x5F\x6B\x65\x79\x5F\x63\x6F\x6E\x74\x72\x6F\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x75\x6E\x72\x65\x2E\x44\x6F\x55\x70\x64\x61\x74\x65\x28\x78\x2C\x20\x74\x68\x69\x73\x2E\x72\x61\x77\x5F\x6C\x69\x6E\x65\x73\x5B\x78\x5D\x2C\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x5B\x78\x5D\x2E\x65\x6C\x5F\x74\x65\x78\x74\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x61\x77\x5F\x6C\x69\x6E\x65\x73\x5B\x78\x5D\x20\x3D\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x5B\x78\x5D\x2E\x65\x6C\x5F\x74\x65\x78\x74\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x74\x72\x75\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x4F\x6E\x4B\x65\x79\x64\x6F\x77\x6E\x4F\x6E\x4C\x69\x6E\x65\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x78\x2C\x20\x65\x6C\x5F\x74\x65\x78\x74\x2C\x20\x65\x76\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x74\x65\x78\x74\x5F\x62\x65\x66\x6F\x72\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x74\x65\x78\x74\x5F\x61\x66\x74\x65\x72\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x6F\x66\x66\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x73\x77\x69\x74\x63\x68\x20\x28\x65\x76\x2E\x6B\x65\x79\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x41\x72\x72\x6F\x77\x55\x70\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x78\x20\x3D\x3D\x20\x30\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x66\x61\x6C\x73\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x76\x2E\x70\x72\x65\x76\x65\x6E\x74\x44\x65\x66\x61\x75\x6C\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x65\x6C\x5F\x74\x65\x78\x74\x5F\x31\x20\x3D\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x5B\x78\x20\x2D\x20\x31\x5D\x2E\x65\x6C\x5F\x74\x65\x78\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x6F\x66\x66\x5F\x31\x20\x3D\x20\x74\x68\x69\x73\x2E\x73\x65\x6C\x2E\x66\x6F\x63\x75\x73\x4F\x66\x66\x73\x65\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x6F\x66\x66\x5F\x31\x20\x3E\x20\x65\x6C\x5F\x74\x65\x78\x74\x5F\x31\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x2E\x6C\x65\x6E\x67\x74\x68\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6F\x66\x66\x5F\x31\x20\x3D\x20\x65\x6C\x5F\x74\x65\x78\x74\x5F\x31\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x2E\x6C\x65\x6E\x67\x74\x68\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x73\x65\x74\x43\x61\x72\x65\x74\x28\x65\x6C\x5F\x74\x65\x78\x74\x5F\x31\x2C\x20\x6F\x66\x66\x5F\x31\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x78\x20\x3D\x3D\x20\x31\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x73\x63\x72\x6F\x6C\x6C\x54\x6F\x70\x20\x3D\x20\x30\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x20\x65\x6C\x73\x65\x20\x69\x66\x20\x28\x78\x20\x2A\x20\x32\x33\x20\x3C\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x73\x63\x72\x6F\x6C\x6C\x54\x6F\x70\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x73\x63\x72\x6F\x6C\x6C\x54\x6F\x70\x20\x2D\x3D\x20\x32\x35\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x66\x61\x6C\x73\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x41\x72\x72\x6F\x77\x44\x6F\x77\x6E\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x78\x20\x3D\x3D\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x2E\x6C\x65\x6E\x67\x74\x68\x20\x2D\x20\x31\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x66\x61\x6C\x73\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x76\x2E\x70\x72\x65\x76\x65\x6E\x74\x44\x65\x66\x61\x75\x6C\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x5F\x74\x65\x78\x74\x5F\x31\x20\x3D\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x5B\x78\x20\x2B\x20\x31\x5D\x2E\x65\x6C\x5F\x74\x65\x78\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6F\x66\x66\x5F\x31\x20\x3D\x20\x74\x68\x69\x73\x2E\x73\x65\x6C\x2E\x66\x6F\x63\x75\x73\x4F\x66\x66\x73\x65\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x6F\x66\x66\x5F\x31\x20\x3E\x20\x65\x6C\x5F\x74\x65\x78\x74\x5F\x31\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x2E\x6C\x65\x6E\x67\x74\x68\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6F\x66\x66\x5F\x31\x20\x3D\x20\x65\x6C\x5F\x74\x65\x78\x74\x5F\x31\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x2E\x6C\x65\x6E\x67\x74\x68\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x73\x65\x74\x43\x61\x72\x65\x74\x28\x65\x6C\x5F\x74\x65\x78\x74\x5F\x31\x2C\x20\x6F\x66\x66\x5F\x31\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x78\x20\x2B\x3D\x20\x32\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x78\x20\x2A\x20\x32\x35\x20\x3E\x3D\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x63\x6C\x69\x65\x6E\x74\x48\x65\x69\x67\x68\x74\x20\x2B\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x73\x63\x72\x6F\x6C\x6C\x54\x6F\x70\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x73\x63\x72\x6F\x6C\x6C\x54\x6F\x70\x20\x2B\x3D\x20\x32\x35\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x66\x61\x6C\x73\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x43\x6F\x6E\x74\x72\x6F\x6C\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x69\x73\x5F\x6B\x65\x79\x5F\x63\x6F\x6E\x74\x72\x6F\x6C\x20\x3D\x20\x74\x72\x75\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x44\x65\x6C\x65\x74\x65\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x76\x2E\x70\x72\x65\x76\x65\x6E\x74\x44\x65\x66\x61\x75\x6C\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x69\x73\x5F\x6A\x6F\x69\x6E\x5F\x6C\x69\x6E\x65\x5F\x61\x66\x74\x65\x72\x20\x3D\x20\x66\x61\x6C\x73\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x65\x6C\x5F\x74\x65\x78\x74\x5F\x63\x75\x72\x72\x65\x6E\x74\x20\x3D\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x5B\x78\x5D\x2E\x65\x6C\x5F\x74\x65\x78\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6F\x66\x66\x5F\x31\x20\x3D\x20\x74\x68\x69\x73\x2E\x73\x65\x6C\x2E\x66\x6F\x63\x75\x73\x4F\x66\x66\x73\x65\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x65\x78\x74\x5F\x62\x65\x66\x6F\x72\x65\x20\x3D\x20\x65\x6C\x5F\x74\x65\x78\x74\x5F\x63\x75\x72\x72\x65\x6E\x74\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x65\x78\x74\x5F\x61\x66\x74\x65\x72\x20\x3D\x20\x22\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x65\x78\x74\x5F\x62\x65\x66\x6F\x72\x65\x2E\x6C\x65\x6E\x67\x74\x68\x20\x3D\x3D\x3D\x20\x30\x20\x7C\x7C\x20\x6F\x66\x66\x5F\x31\x20\x3D\x3D\x3D\x20\x74\x65\x78\x74\x5F\x62\x65\x66\x6F\x72\x65\x2E\x6C\x65\x6E\x67\x74\x68\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x73\x5F\x6A\x6F\x69\x6E\x5F\x6C\x69\x6E\x65\x5F\x61\x66\x74\x65\x72\x20\x3D\x20\x74\x72\x75\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x69\x73\x5F\x6A\x6F\x69\x6E\x5F\x6C\x69\x6E\x65\x5F\x61\x66\x74\x65\x72\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x78\x20\x2B\x20\x31\x20\x3C\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x2E\x6C\x65\x6E\x67\x74\x68\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x65\x6C\x5F\x74\x65\x78\x74\x5F\x61\x66\x74\x65\x72\x20\x3D\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x5B\x78\x20\x2B\x20\x31\x5D\x2E\x65\x6C\x5F\x74\x65\x78\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x65\x78\x74\x5F\x61\x66\x74\x65\x72\x20\x3D\x20\x65\x6C\x5F\x74\x65\x78\x74\x5F\x61\x66\x74\x65\x72\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x5F\x74\x65\x78\x74\x5F\x61\x66\x74\x65\x72\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x22\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x75\x6E\x72\x65\x2E\x44\x6F\x4A\x6F\x69\x6E\x28\x78\x2C\x20\x74\x65\x78\x74\x5F\x62\x65\x66\x6F\x72\x65\x2C\x20\x74\x65\x78\x74\x5F\x61\x66\x74\x65\x72\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x64\x65\x6C\x65\x74\x65\x4C\x69\x6E\x65\x28\x78\x20\x2B\x20\x31\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x65\x78\x74\x5F\x61\x66\x74\x65\x72\x20\x3D\x20\x74\x65\x78\x74\x5F\x62\x65\x66\x6F\x72\x65\x20\x2B\x20\x74\x65\x78\x74\x5F\x61\x66\x74\x65\x72\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x20\x65\x6C\x73\x65\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x65\x78\x74\x5F\x61\x66\x74\x65\x72\x20\x3D\x20\x74\x65\x78\x74\x5F\x62\x65\x66\x6F\x72\x65\x2E\x73\x6C\x69\x63\x65\x28\x30\x2C\x20\x6F\x66\x66\x5F\x31\x29\x20\x2B\x20\x74\x65\x78\x74\x5F\x62\x65\x66\x6F\x72\x65\x2E\x73\x6C\x69\x63\x65\x28\x6F\x66\x66\x5F\x31\x20\x2B\x20\x31\x2C\x20\x74\x65\x78\x74\x5F\x62\x65\x66\x6F\x72\x65\x2E\x6C\x65\x6E\x67\x74\x68\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x75\x6E\x72\x65\x2E\x44\x6F\x55\x70\x64\x61\x74\x65\x28\x78\x2C\x20\x74\x65\x78\x74\x5F\x62\x65\x66\x6F\x72\x65\x2C\x20\x74\x65\x78\x74\x5F\x61\x66\x74\x65\x72\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x5B\x78\x5D\x2E\x65\x6C\x5F\x74\x65\x78\x74\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x74\x65\x78\x74\x5F\x61\x66\x74\x65\x72\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x61\x77\x5F\x6C\x69\x6E\x65\x73\x5B\x78\x5D\x20\x3D\x20\x74\x65\x78\x74\x5F\x61\x66\x74\x65\x72\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x73\x65\x74\x43\x61\x72\x65\x74\x28\x65\x6C\x5F\x74\x65\x78\x74\x5F\x63\x75\x72\x72\x65\x6E\x74\x2C\x20\x6F\x66\x66\x5F\x31\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x45\x6E\x74\x65\x72\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x76\x2E\x70\x72\x65\x76\x65\x6E\x74\x44\x65\x66\x61\x75\x6C\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6F\x66\x66\x5F\x31\x20\x3D\x20\x74\x68\x69\x73\x2E\x73\x65\x6C\x2E\x66\x6F\x63\x75\x73\x4F\x66\x66\x73\x65\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x74\x65\x78\x74\x20\x3D\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x5B\x78\x5D\x2E\x65\x6C\x5F\x74\x65\x78\x74\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x65\x78\x74\x5F\x62\x65\x66\x6F\x72\x65\x20\x3D\x20\x74\x65\x78\x74\x2E\x73\x6C\x69\x63\x65\x28\x30\x2C\x20\x6F\x66\x66\x5F\x31\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x65\x78\x74\x5F\x61\x66\x74\x65\x72\x20\x3D\x20\x74\x65\x78\x74\x2E\x73\x6C\x69\x63\x65\x28\x6F\x66\x66\x5F\x31\x2C\x20\x74\x65\x78\x74\x2E\x6C\x65\x6E\x67\x74\x68\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x75\x6E\x72\x65\x2E\x44\x6F\x53\x70\x6C\x69\x74\x28\x78\x2C\x20\x74\x65\x78\x74\x5F\x62\x65\x66\x6F\x72\x65\x2C\x20\x74\x65\x78\x74\x5F\x61\x66\x74\x65\x72\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x5B\x78\x5D\x2E\x65\x6C\x5F\x74\x65\x78\x74\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x74\x65\x78\x74\x5F\x62\x65\x66\x6F\x72\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x61\x77\x5F\x6C\x69\x6E\x65\x73\x5B\x78\x5D\x20\x3D\x20\x74\x65\x78\x74\x5F\x62\x65\x66\x6F\x72\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x69\x6E\x73\x65\x72\x74\x4E\x65\x77\x6C\x69\x6E\x65\x28\x78\x20\x2B\x20\x31\x2C\x20\x74\x65\x78\x74\x5F\x61\x66\x74\x65\x72\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x78\x20\x2B\x20\x33\x20\x3E\x3D\x20\x74\x68\x69\x73\x2E\x72\x61\x77\x5F\x6C\x69\x6E\x65\x73\x2E\x6C\x65\x6E\x67\x74\x68\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x73\x63\x72\x6F\x6C\x6C\x54\x6F\x70\x20\x3D\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x73\x63\x72\x6F\x6C\x6C\x48\x65\x69\x67\x68\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x54\x61\x62\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x76\x2E\x70\x72\x65\x76\x65\x6E\x74\x44\x65\x66\x61\x75\x6C\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x5F\x74\x65\x78\x74\x5F\x31\x20\x3D\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x5B\x78\x5D\x2E\x65\x6C\x5F\x74\x65\x78\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6F\x66\x66\x5F\x31\x20\x3D\x20\x74\x68\x69\x73\x2E\x73\x65\x6C\x2E\x66\x6F\x63\x75\x73\x4F\x66\x66\x73\x65\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x65\x78\x74\x5F\x62\x65\x66\x6F\x72\x65\x20\x3D\x20\x65\x6C\x5F\x74\x65\x78\x74\x5F\x31\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x65\x78\x74\x5F\x61\x66\x74\x65\x72\x20\x3D\x20\x74\x65\x78\x74\x5F\x62\x65\x66\x6F\x72\x65\x2E\x73\x6C\x69\x63\x65\x28\x30\x2C\x20\x6F\x66\x66\x5F\x31\x29\x20\x2B\x20\x22\x09\x22\x20\x2B\x20\x74\x65\x78\x74\x5F\x62\x65\x66\x6F\x72\x65\x2E\x73\x6C\x69\x63\x65\x28\x6F\x66\x66\x5F\x31\x2C\x20\x74\x65\x78\x74\x5F\x62\x65\x66\x6F\x72\x65\x2E\x6C\x65\x6E\x67\x74\x68\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x75\x6E\x72\x65\x2E\x44\x6F\x55\x70\x64\x61\x74\x65\x28\x78\x2C\x20\x74\x65\x78\x74\x5F\x62\x65\x66\x6F\x72\x65\x2C\x20\x74\x65\x78\x74\x5F\x61\x66\x74\x65\x72\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x5F\x74\x65\x78\x74\x5F\x31\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x74\x65\x78\x74\x5F\x61\x66\x74\x65\x72\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x61\x77\x5F\x6C\x69\x6E\x65\x73\x5B\x78\x5D\x20\x3D\x20\x74\x65\x78\x74\x5F\x61\x66\x74\x65\x72\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x73\x65\x74\x43\x61\x72\x65\x74\x28\x65\x6C\x5F\x74\x65\x78\x74\x5F\x31\x2C\x20\x6F\x66\x66\x5F\x31\x20\x2B\x20\x31\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x72\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x69\x73\x5F\x6B\x65\x79\x5F\x63\x6F\x6E\x74\x72\x6F\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x76\x2E\x70\x72\x65\x76\x65\x6E\x74\x44\x65\x66\x61\x75\x6C\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x64\x6F\x52\x65\x64\x6F\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x73\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x69\x73\x5F\x6B\x65\x79\x5F\x63\x6F\x6E\x74\x72\x6F\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x76\x2E\x70\x72\x65\x76\x65\x6E\x74\x44\x65\x66\x61\x75\x6C\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x76\x2E\x73\x74\x6F\x70\x50\x72\x6F\x70\x61\x67\x61\x74\x69\x6F\x6E\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x4F\x6E\x53\x61\x76\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x4F\x6E\x53\x61\x76\x65\x28\x74\x68\x69\x73\x2E\x47\x65\x74\x43\x6F\x6E\x74\x65\x6E\x74\x28\x29\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x66\x61\x6C\x73\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x7A\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x69\x73\x5F\x6B\x65\x79\x5F\x63\x6F\x6E\x74\x72\x6F\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x76\x2E\x70\x72\x65\x76\x65\x6E\x74\x44\x65\x66\x61\x75\x6C\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x64\x6F\x55\x6E\x64\x6F\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x4F\x6E\x4D\x6F\x75\x73\x65\x44\x6F\x77\x6E\x41\x74\x4C\x69\x6E\x65\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x78\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x61\x6E\x67\x65\x5F\x62\x65\x67\x69\x6E\x20\x3D\x20\x78\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x4F\x6E\x4D\x6F\x75\x73\x65\x55\x70\x41\x74\x4C\x69\x6E\x65\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x78\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x61\x6E\x67\x65\x5F\x65\x6E\x64\x20\x3D\x20\x78\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x72\x61\x6E\x67\x65\x5F\x65\x6E\x64\x20\x3C\x20\x74\x68\x69\x73\x2E\x72\x61\x6E\x67\x65\x5F\x62\x65\x67\x69\x6E\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x79\x20\x3D\x20\x30\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x66\x6F\x72\x20\x28\x3B\x20\x79\x20\x3C\x20\x74\x68\x69\x73\x2E\x72\x61\x6E\x67\x65\x5F\x62\x65\x67\x69\x6E\x3B\x20\x79\x2B\x2B\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x63\x68\x69\x6C\x64\x72\x65\x6E\x5B\x79\x5D\x2E\x73\x65\x74\x41\x74\x74\x72\x69\x62\x75\x74\x65\x28\x22\x73\x74\x79\x6C\x65\x22\x2C\x20\x22\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x66\x6F\x72\x20\x28\x3B\x20\x79\x20\x3C\x3D\x20\x74\x68\x69\x73\x2E\x72\x61\x6E\x67\x65\x5F\x65\x6E\x64\x3B\x20\x79\x2B\x2B\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x63\x68\x69\x6C\x64\x72\x65\x6E\x5B\x79\x5D\x2E\x73\x65\x74\x41\x74\x74\x72\x69\x62\x75\x74\x65\x28\x22\x73\x74\x79\x6C\x65\x22\x2C\x20\x22\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x2D\x63\x6F\x6C\x6F\x72\x3A\x6C\x69\x67\x68\x74\x73\x61\x6C\x6D\x6F\x6E\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x66\x6F\x72\x20\x28\x3B\x20\x79\x20\x3C\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x63\x68\x69\x6C\x64\x72\x65\x6E\x2E\x6C\x65\x6E\x67\x74\x68\x3B\x20\x79\x2B\x2B\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x63\x68\x69\x6C\x64\x72\x65\x6E\x5B\x79\x5D\x2E\x73\x65\x74\x41\x74\x74\x72\x69\x62\x75\x74\x65\x28\x22\x73\x74\x79\x6C\x65\x22\x2C\x20\x22\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x4F\x6E\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x4F\x6E\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x28\x74\x68\x69\x73\x2E\x72\x61\x6E\x67\x65\x5F\x62\x65\x67\x69\x6E\x2C\x20\x74\x68\x69\x73\x2E\x72\x61\x6E\x67\x65\x5F\x65\x6E\x64\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x53\x65\x74\x45\x64\x69\x74\x4F\x66\x66\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x66\x6F\x72\x20\x28\x76\x61\x72\x20\x78\x20\x3D\x20\x30\x3B\x20\x78\x20\x3C\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x2E\x6C\x65\x6E\x67\x74\x68\x3B\x20\x78\x2B\x2B\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x5B\x78\x5D\x2E\x53\x65\x74\x45\x64\x69\x74\x4F\x66\x66\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x53\x65\x74\x45\x64\x69\x74\x4F\x6E\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x66\x6F\x72\x20\x28\x76\x61\x72\x20\x78\x20\x3D\x20\x30\x3B\x20\x78\x20\x3C\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x2E\x6C\x65\x6E\x67\x74\x68\x3B\x20\x78\x2B\x2B\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x5B\x78\x5D\x2E\x53\x65\x74\x45\x64\x69\x74\x4F\x6E\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x4F\x70\x65\x6E\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x6E\x6F\x64\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x61\x63\x74\x69\x76\x65\x5F\x66\x69\x6C\x65\x20\x3D\x20\x6E\x6F\x64\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x63\x6F\x6E\x74\x65\x6E\x74\x20\x3D\x20\x61\x74\x6F\x62\x28\x6E\x6F\x64\x65\x2E\x63\x6F\x6E\x74\x65\x6E\x74\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x74\x65\x6E\x74\x20\x3D\x20\x63\x6F\x6E\x74\x65\x6E\x74\x2E\x72\x65\x70\x6C\x61\x63\x65\x28\x22\x5C\x72\x5C\x6E\x22\x2C\x20\x22\x5C\x6E\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x61\x77\x5F\x6C\x69\x6E\x65\x73\x20\x3D\x20\x63\x6F\x6E\x74\x65\x6E\x74\x2E\x73\x70\x6C\x69\x74\x28\x22\x5C\x6E\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x20\x3D\x20\x5B\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x66\x6F\x72\x20\x28\x76\x61\x72\x20\x78\x20\x3D\x20\x30\x3B\x20\x78\x20\x3C\x20\x74\x68\x69\x73\x2E\x72\x61\x77\x5F\x6C\x69\x6E\x65\x73\x2E\x6C\x65\x6E\x67\x74\x68\x3B\x20\x78\x2B\x2B\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x6C\x69\x6E\x65\x20\x3D\x20\x6E\x65\x77\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x4C\x69\x6E\x65\x28\x78\x2C\x20\x74\x68\x69\x73\x2E\x72\x61\x77\x5F\x6C\x69\x6E\x65\x73\x5B\x78\x5D\x2C\x20\x74\x68\x69\x73\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x2E\x70\x75\x73\x68\x28\x6C\x69\x6E\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x65\x6E\x64\x65\x72\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x43\x6C\x65\x61\x72\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x72\x61\x6E\x67\x65\x5F\x62\x65\x67\x69\x6E\x20\x3C\x20\x30\x20\x7C\x7C\x20\x74\x68\x69\x73\x2E\x72\x61\x6E\x67\x65\x5F\x65\x6E\x64\x20\x3D\x3D\x20\x30\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x66\x6F\x72\x20\x28\x76\x61\x72\x20\x78\x20\x3D\x20\x74\x68\x69\x73\x2E\x72\x61\x6E\x67\x65\x5F\x62\x65\x67\x69\x6E\x3B\x20\x78\x20\x3C\x3D\x20\x74\x68\x69\x73\x2E\x72\x61\x6E\x67\x65\x5F\x65\x6E\x64\x3B\x20\x78\x2B\x2B\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x63\x68\x69\x6C\x64\x72\x65\x6E\x5B\x78\x5D\x2E\x73\x65\x74\x41\x74\x74\x72\x69\x62\x75\x74\x65\x28\x22\x73\x74\x79\x6C\x65\x22\x2C\x20\x22\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x61\x6E\x67\x65\x5F\x62\x65\x67\x69\x6E\x20\x3D\x20\x2D\x31\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x61\x6E\x67\x65\x5F\x65\x6E\x64\x20\x3D\x20\x2D\x31\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x69\x6E\x69\x74\x53\x74\x79\x6C\x65\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x73\x74\x79\x6C\x65\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x63\x72\x65\x61\x74\x65\x45\x6C\x65\x6D\x65\x6E\x74\x28\x22\x73\x74\x79\x6C\x65\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x73\x74\x79\x6C\x65\x2E\x74\x79\x70\x65\x20\x3D\x20\x22\x74\x65\x78\x74\x2F\x63\x73\x73\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x73\x74\x79\x6C\x65\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x22\x5C\x6E\x09\x09\x09\x5B\x63\x6F\x6E\x74\x65\x6E\x74\x65\x64\x69\x74\x61\x62\x6C\x65\x5D\x20\x7B\x5C\x6E\x09\x09\x09\x09\x6F\x75\x74\x6C\x69\x6E\x65\x3A\x20\x30\x70\x78\x20\x73\x6F\x6C\x69\x64\x20\x74\x72\x61\x6E\x73\x70\x61\x72\x65\x6E\x74\x3B\x5C\x6E\x09\x09\x09\x7D\x5C\x6E\x09\x09\x09\x2E\x22\x20\x2B\x20\x57\x55\x49\x5F\x45\x44\x49\x54\x4F\x52\x5F\x43\x4C\x41\x53\x53\x20\x2B\x20\x22\x20\x7B\x5C\x6E\x09\x09\x09\x09\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x2D\x63\x6F\x6C\x6F\x72\x3A\x20\x63\x6F\x72\x6E\x73\x69\x6C\x6B\x3B\x5C\x6E\x09\x09\x09\x09\x66\x6F\x6E\x74\x2D\x66\x61\x6D\x69\x6C\x79\x3A\x20\x6D\x6F\x6E\x6F\x73\x70\x61\x63\x65\x3B\x5C\x6E\x09\x09\x09\x09\x6F\x76\x65\x72\x66\x6C\x6F\x77\x2D\x79\x3A\x20\x61\x75\x74\x6F\x3B\x5C\x6E\x09\x09\x09\x09\x77\x69\x64\x74\x68\x3A\x20\x31\x30\x30\x25\x3B\x5C\x6E\x09\x09\x09\x7D\x5C\x6E\x09\x09\x09\x2E\x22\x20\x2B\x20\x57\x55\x49\x5F\x45\x44\x49\x54\x4F\x52\x5F\x43\x4C\x41\x53\x53\x5F\x4C\x49\x4E\x45\x20\x2B\x20\x22\x20\x7B\x5C\x6E\x09\x09\x09\x09\x64\x69\x73\x70\x6C\x61\x79\x3A\x20\x62\x6C\x6F\x63\x6B\x3B\x5C\x6E\x09\x09\x09\x09\x77\x69\x64\x74\x68\x3A\x20\x31\x30\x30\x25\x3B\x5C\x6E\x09\x09\x09\x7D\x5C\x6E\x09\x09\x09\x2E\x22\x20\x2B\x20\x57\x55\x49\x5F\x45\x44\x49\x54\x4F\x52\x5F\x43\x4C\x41\x53\x53\x5F\x4C\x49\x4E\x45\x5F\x4E\x55\x4D\x42\x45\x52\x20\x2B\x20\x22\x20\x7B\x5C\x6E\x09\x09\x09\x09\x63\x6F\x6C\x6F\x72\x3A\x20\x64\x69\x6D\x67\x72\x65\x79\x3B\x5C\x6E\x09\x09\x09\x09\x63\x75\x72\x73\x6F\x72\x3A\x20\x70\x6F\x69\x6E\x74\x65\x72\x3B\x5C\x6E\x09\x09\x09\x09\x64\x69\x73\x70\x6C\x61\x79\x3A\x20\x69\x6E\x6C\x69\x6E\x65\x2D\x62\x6C\x6F\x63\x6B\x3B\x5C\x6E\x09\x09\x09\x09\x70\x61\x64\x64\x69\x6E\x67\x3A\x20\x34\x70\x78\x20\x31\x30\x70\x78\x20\x34\x70\x78\x20\x34\x70\x78\x3B\x5C\x6E\x09\x09\x09\x09\x74\x65\x78\x74\x2D\x61\x6C\x69\x67\x6E\x3A\x20\x72\x69\x67\x68\x74\x3B\x5C\x6E\x09\x09\x09\x09\x75\x73\x65\x72\x2D\x73\x65\x6C\x65\x63\x74\x3A\x20\x6E\x6F\x6E\x65\x3B\x5C\x6E\x09\x09\x09\x09\x76\x65\x72\x74\x69\x63\x61\x6C\x2D\x61\x6C\x69\x67\x6E\x3A\x20\x74\x6F\x70\x3B\x5C\x6E\x09\x09\x09\x09\x77\x69\x64\x74\x68\x3A\x20\x33\x30\x70\x78\x3B\x5C\x6E\x09\x09\x09\x7D\x5C\x6E\x09\x09\x09\x2E\x22\x20\x2B\x20\x57\x55\x49\x5F\x45\x44\x49\x54\x4F\x52\x5F\x43\x4C\x41\x53\x53\x5F\x4C\x49\x4E\x45\x5F\x4E\x55\x4D\x42\x45\x52\x20\x2B\x20\x22\x3A\x68\x6F\x76\x65\x72\x20\x7B\x5C\x6E\x09\x09\x09\x09\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x2D\x63\x6F\x6C\x6F\x72\x3A\x20\x6C\x69\x67\x68\x74\x73\x61\x6C\x6D\x6F\x6E\x3B\x5C\x6E\x09\x09\x09\x7D\x5C\x6E\x09\x09\x09\x2E\x22\x20\x2B\x20\x57\x55\x49\x5F\x45\x44\x49\x54\x4F\x52\x5F\x43\x4C\x41\x53\x53\x5F\x4C\x49\x4E\x45\x5F\x54\x45\x58\x54\x20\x2B\x20\x22\x20\x7B\x5C\x6E\x09\x09\x09\x09\x64\x69\x73\x70\x6C\x61\x79\x3A\x20\x69\x6E\x6C\x69\x6E\x65\x2D\x62\x6C\x6F\x63\x6B\x3B\x5C\x6E\x09\x09\x09\x09\x70\x61\x64\x64\x69\x6E\x67\x3A\x20\x34\x70\x78\x3B\x5C\x6E\x09\x09\x09\x09\x62\x6F\x72\x64\x65\x72\x2D\x63\x6F\x6C\x6F\x72\x3A\x20\x6C\x69\x67\x68\x74\x62\x6C\x75\x65\x3B\x5C\x6E\x09\x09\x09\x09\x62\x6F\x72\x64\x65\x72\x2D\x77\x69\x64\x74\x68\x3A\x20\x30\x70\x78\x3B\x5C\x6E\x09\x09\x09\x09\x62\x6F\x72\x64\x65\x72\x2D\x73\x74\x79\x6C\x65\x3A\x20\x73\x6F\x6C\x69\x64\x3B\x5C\x6E\x09\x09\x09\x09\x77\x68\x69\x74\x65\x2D\x73\x70\x61\x63\x65\x3A\x20\x70\x72\x65\x2D\x77\x72\x61\x70\x3B\x5C\x6E\x09\x09\x09\x09\x77\x69\x64\x74\x68\x3A\x20\x63\x61\x6C\x63\x28\x31\x30\x30\x25\x20\x2D\x20\x36\x30\x70\x78\x29\x3B\x5C\x6E\x09\x09\x09\x7D\x5C\x6E\x09\x09\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x68\x65\x61\x64\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x73\x74\x79\x6C\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x64\x6F\x4A\x6F\x69\x6E\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x63\x68\x61\x6E\x67\x65\x73\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x5B\x63\x68\x61\x6E\x67\x65\x73\x2E\x63\x75\x72\x72\x5F\x6C\x69\x6E\x65\x5D\x2E\x65\x6C\x5F\x74\x65\x78\x74\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x63\x68\x61\x6E\x67\x65\x73\x2E\x63\x75\x72\x72\x5F\x74\x65\x78\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x64\x65\x6C\x65\x74\x65\x4C\x69\x6E\x65\x28\x63\x68\x61\x6E\x67\x65\x73\x2E\x6E\x65\x78\x74\x5F\x6C\x69\x6E\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x73\x65\x74\x43\x61\x72\x65\x74\x28\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x5B\x63\x68\x61\x6E\x67\x65\x73\x2E\x63\x75\x72\x72\x5F\x6C\x69\x6E\x65\x5D\x2E\x65\x6C\x5F\x74\x65\x78\x74\x2C\x20\x30\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x64\x6F\x53\x70\x6C\x69\x74\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x63\x68\x61\x6E\x67\x65\x73\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x5B\x63\x68\x61\x6E\x67\x65\x73\x2E\x63\x75\x72\x72\x5F\x6C\x69\x6E\x65\x5D\x2E\x65\x6C\x5F\x74\x65\x78\x74\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x63\x68\x61\x6E\x67\x65\x73\x2E\x63\x75\x72\x72\x5F\x74\x65\x78\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x69\x6E\x73\x65\x72\x74\x4E\x65\x77\x6C\x69\x6E\x65\x28\x63\x68\x61\x6E\x67\x65\x73\x2E\x6E\x65\x78\x74\x5F\x6C\x69\x6E\x65\x2C\x20\x63\x68\x61\x6E\x67\x65\x73\x2E\x6E\x65\x78\x74\x5F\x74\x65\x78\x74\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x64\x6F\x55\x70\x64\x61\x74\x65\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x63\x68\x61\x6E\x67\x65\x73\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x5B\x63\x68\x61\x6E\x67\x65\x73\x2E\x63\x75\x72\x72\x5F\x6C\x69\x6E\x65\x5D\x2E\x65\x6C\x5F\x74\x65\x78\x74\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x63\x68\x61\x6E\x67\x65\x73\x2E\x63\x75\x72\x72\x5F\x74\x65\x78\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x73\x65\x74\x43\x61\x72\x65\x74\x28\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x5B\x63\x68\x61\x6E\x67\x65\x73\x2E\x63\x75\x72\x72\x5F\x6C\x69\x6E\x65\x5D\x2E\x65\x6C\x5F\x74\x65\x78\x74\x2C\x20\x30\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x64\x6F\x52\x65\x64\x6F\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x61\x63\x74\x20\x3D\x20\x74\x68\x69\x73\x2E\x75\x6E\x72\x65\x2E\x52\x65\x64\x6F\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x21\x61\x63\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x73\x77\x69\x74\x63\x68\x20\x28\x61\x63\x74\x2E\x6B\x69\x6E\x64\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x6A\x6F\x69\x6E\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x64\x6F\x4A\x6F\x69\x6E\x28\x61\x63\x74\x2E\x61\x66\x74\x65\x72\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x73\x70\x6C\x69\x74\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x64\x6F\x53\x70\x6C\x69\x74\x28\x61\x63\x74\x2E\x61\x66\x74\x65\x72\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x75\x70\x64\x61\x74\x65\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x64\x6F\x55\x70\x64\x61\x74\x65\x28\x61\x63\x74\x2E\x61\x66\x74\x65\x72\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x64\x6F\x55\x6E\x64\x6F\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x61\x63\x74\x20\x3D\x20\x74\x68\x69\x73\x2E\x75\x6E\x72\x65\x2E\x55\x6E\x64\x6F\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x21\x61\x63\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x73\x77\x69\x74\x63\x68\x20\x28\x61\x63\x74\x2E\x6B\x69\x6E\x64\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x6A\x6F\x69\x6E\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x64\x6F\x53\x70\x6C\x69\x74\x28\x61\x63\x74\x2E\x62\x65\x66\x6F\x72\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x73\x70\x6C\x69\x74\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x64\x6F\x4A\x6F\x69\x6E\x28\x61\x63\x74\x2E\x62\x65\x66\x6F\x72\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x75\x70\x64\x61\x74\x65\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x64\x6F\x55\x70\x64\x61\x74\x65\x28\x61\x63\x74\x2E\x62\x65\x66\x6F\x72\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x64\x65\x6C\x65\x74\x65\x4C\x69\x6E\x65\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x78\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x2E\x73\x70\x6C\x69\x63\x65\x28\x78\x2C\x20\x31\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x61\x77\x5F\x6C\x69\x6E\x65\x73\x2E\x73\x70\x6C\x69\x63\x65\x28\x78\x2C\x20\x31\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x66\x6F\x72\x20\x28\x3B\x20\x78\x20\x3C\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x2E\x6C\x65\x6E\x67\x74\x68\x3B\x20\x78\x2B\x2B\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x5B\x78\x5D\x2E\x53\x65\x74\x4E\x75\x6D\x62\x65\x72\x28\x78\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x65\x6E\x64\x65\x72\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x69\x6E\x73\x65\x72\x74\x4E\x65\x77\x6C\x69\x6E\x65\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x78\x2C\x20\x74\x65\x78\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x6E\x65\x77\x6C\x69\x6E\x65\x20\x3D\x20\x6E\x65\x77\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x4C\x69\x6E\x65\x28\x78\x2C\x20\x74\x65\x78\x74\x2C\x20\x74\x68\x69\x73\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x66\x6F\x72\x20\x28\x76\x61\x72\x20\x79\x20\x3D\x20\x78\x3B\x20\x79\x20\x3C\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x2E\x6C\x65\x6E\x67\x74\x68\x3B\x20\x79\x2B\x2B\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x5B\x79\x5D\x2E\x53\x65\x74\x4E\x75\x6D\x62\x65\x72\x28\x79\x20\x2B\x20\x31\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x2E\x73\x70\x6C\x69\x63\x65\x28\x78\x2C\x20\x30\x2C\x20\x6E\x65\x77\x6C\x69\x6E\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x61\x77\x5F\x6C\x69\x6E\x65\x73\x2E\x73\x70\x6C\x69\x63\x65\x28\x78\x2C\x20\x30\x2C\x20\x74\x65\x78\x74\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x65\x6E\x64\x65\x72\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x73\x65\x74\x43\x61\x72\x65\x74\x28\x6E\x65\x77\x6C\x69\x6E\x65\x2E\x65\x6C\x5F\x74\x65\x78\x74\x2C\x20\x30\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x6F\x6E\x4B\x65\x79\x75\x70\x44\x6F\x63\x75\x6D\x65\x6E\x74\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x65\x64\x2C\x20\x65\x76\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x73\x77\x69\x74\x63\x68\x20\x28\x65\x76\x2E\x6B\x65\x79\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x22\x45\x73\x63\x61\x70\x65\x22\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x76\x2E\x70\x72\x65\x76\x65\x6E\x74\x44\x65\x66\x61\x75\x6C\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x64\x2E\x43\x6C\x65\x61\x72\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x74\x72\x75\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x72\x65\x6E\x64\x65\x72\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x69\x6E\x6E\x65\x72\x48\x54\x4D\x4C\x20\x3D\x20\x22\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x66\x6F\x72\x20\x28\x76\x61\x72\x20\x5F\x69\x20\x3D\x20\x30\x2C\x20\x5F\x61\x20\x3D\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x73\x3B\x20\x5F\x69\x20\x3C\x20\x5F\x61\x2E\x6C\x65\x6E\x67\x74\x68\x3B\x20\x5F\x69\x2B\x2B\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x6C\x69\x6E\x65\x20\x3D\x20\x5F\x61\x5B\x5F\x69\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x6C\x69\x6E\x65\x2E\x65\x6C\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x73\x65\x74\x43\x61\x72\x65\x74\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x65\x6C\x5F\x74\x65\x78\x74\x2C\x20\x6F\x66\x66\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x65\x6C\x5F\x74\x65\x78\x74\x2E\x66\x69\x72\x73\x74\x43\x68\x69\x6C\x64\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x61\x6E\x67\x65\x2E\x73\x65\x74\x53\x74\x61\x72\x74\x28\x65\x6C\x5F\x74\x65\x78\x74\x2E\x66\x69\x72\x73\x74\x43\x68\x69\x6C\x64\x2C\x20\x6F\x66\x66\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x20\x65\x6C\x73\x65\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x61\x6E\x67\x65\x2E\x73\x65\x74\x53\x74\x61\x72\x74\x28\x65\x6C\x5F\x74\x65\x78\x74\x2C\x20\x6F\x66\x66\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x61\x6E\x67\x65\x2E\x63\x6F\x6C\x6C\x61\x70\x73\x65\x28\x74\x72\x75\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x73\x65\x6C\x2E\x72\x65\x6D\x6F\x76\x65\x41\x6C\x6C\x52\x61\x6E\x67\x65\x73\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x73\x65\x6C\x2E\x61\x64\x64\x52\x61\x6E\x67\x65\x28\x74\x68\x69\x73\x2E\x72\x61\x6E\x67\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x32\x3B\x0A\x20\x20\x20\x20\x7D\x28\x29\x0A\x20\x20\x29\x3B\x0A\x20\x20\x76\x61\x72\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x4C\x69\x6E\x65\x20\x3D\x20\x28\x0A\x20\x20\x20\x20\x2F\x2A\x2A\x20\x40\x63\x6C\x61\x73\x73\x20\x2A\x2F\x0A\x20\x20\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x4C\x69\x6E\x65\x32\x28\x78\x2C\x20\x74\x65\x78\x74\x2C\x20\x65\x64\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x5F\x74\x68\x69\x73\x20\x3D\x20\x74\x68\x69\x73\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x78\x20\x3D\x20\x78\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x74\x65\x78\x74\x20\x3D\x20\x74\x65\x78\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x5F\x6E\x75\x6D\x20\x3D\x20\x30\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x5F\x6E\x75\x6D\x20\x3D\x20\x78\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x63\x72\x65\x61\x74\x65\x45\x6C\x65\x6D\x65\x6E\x74\x28\x22\x64\x69\x76\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x57\x55\x49\x5F\x45\x44\x49\x54\x4F\x52\x5F\x43\x4C\x41\x53\x53\x5F\x4C\x49\x4E\x45\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x6E\x75\x6D\x62\x65\x72\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x63\x72\x65\x61\x74\x65\x45\x6C\x65\x6D\x65\x6E\x74\x28\x22\x73\x70\x61\x6E\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x6E\x75\x6D\x62\x65\x72\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x57\x55\x49\x5F\x45\x44\x49\x54\x4F\x52\x5F\x43\x4C\x41\x53\x53\x5F\x4C\x49\x4E\x45\x5F\x4E\x55\x4D\x42\x45\x52\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x6E\x75\x6D\x62\x65\x72\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x5F\x6E\x75\x6D\x20\x2B\x20\x31\x20\x2B\x20\x22\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x6E\x75\x6D\x62\x65\x72\x2E\x6F\x6E\x6D\x6F\x75\x73\x65\x64\x6F\x77\x6E\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x65\x76\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x64\x2E\x4F\x6E\x4D\x6F\x75\x73\x65\x44\x6F\x77\x6E\x41\x74\x4C\x69\x6E\x65\x28\x5F\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x5F\x6E\x75\x6D\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x6E\x75\x6D\x62\x65\x72\x2E\x6F\x6E\x6D\x6F\x75\x73\x65\x75\x70\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x65\x76\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x64\x2E\x4F\x6E\x4D\x6F\x75\x73\x65\x55\x70\x41\x74\x4C\x69\x6E\x65\x28\x5F\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x5F\x6E\x75\x6D\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x74\x65\x78\x74\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x63\x72\x65\x61\x74\x65\x45\x6C\x65\x6D\x65\x6E\x74\x28\x22\x73\x70\x61\x6E\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x74\x65\x78\x74\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x57\x55\x49\x5F\x45\x44\x49\x54\x4F\x52\x5F\x43\x4C\x41\x53\x53\x5F\x4C\x49\x4E\x45\x5F\x54\x45\x58\x54\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x74\x65\x78\x74\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x74\x65\x78\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x74\x65\x78\x74\x2E\x63\x6F\x6E\x74\x65\x6E\x74\x45\x64\x69\x74\x61\x62\x6C\x65\x20\x3D\x20\x22\x74\x72\x75\x65\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x74\x65\x78\x74\x2E\x6F\x6E\x63\x6C\x69\x63\x6B\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x65\x76\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x64\x2E\x4F\x6E\x43\x6C\x69\x63\x6B\x54\x65\x78\x74\x28\x5F\x74\x68\x69\x73\x2E\x65\x6C\x5F\x74\x65\x78\x74\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x74\x65\x78\x74\x2E\x6F\x6E\x6B\x65\x79\x64\x6F\x77\x6E\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x65\x76\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x65\x64\x2E\x4F\x6E\x4B\x65\x79\x64\x6F\x77\x6E\x4F\x6E\x4C\x69\x6E\x65\x28\x5F\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x5F\x6E\x75\x6D\x2C\x20\x5F\x74\x68\x69\x73\x2E\x65\x6C\x5F\x74\x65\x78\x74\x2C\x20\x65\x76\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x74\x65\x78\x74\x2E\x6F\x6E\x6B\x65\x79\x75\x70\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x65\x76\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x65\x64\x2E\x4F\x6E\x4B\x65\x79\x75\x70\x28\x5F\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x5F\x6E\x75\x6D\x2C\x20\x5F\x74\x68\x69\x73\x2E\x65\x6C\x5F\x74\x65\x78\x74\x2C\x20\x65\x76\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x74\x65\x78\x74\x2E\x61\x64\x64\x45\x76\x65\x6E\x74\x4C\x69\x73\x74\x65\x6E\x65\x72\x28\x22\x70\x61\x73\x74\x65\x22\x2C\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x65\x76\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x21\x65\x76\x2E\x63\x6C\x69\x70\x62\x6F\x61\x72\x64\x44\x61\x74\x61\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x76\x2E\x70\x72\x65\x76\x65\x6E\x74\x44\x65\x66\x61\x75\x6C\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x74\x65\x78\x74\x32\x20\x3D\x20\x65\x76\x2E\x63\x6C\x69\x70\x62\x6F\x61\x72\x64\x44\x61\x74\x61\x2E\x67\x65\x74\x44\x61\x74\x61\x28\x22\x74\x65\x78\x74\x2F\x70\x6C\x61\x69\x6E\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x65\x78\x65\x63\x43\x6F\x6D\x6D\x61\x6E\x64\x28\x22\x69\x6E\x73\x65\x72\x74\x48\x54\x4D\x4C\x22\x2C\x20\x66\x61\x6C\x73\x65\x2C\x20\x74\x65\x78\x74\x32\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x74\x68\x69\x73\x2E\x65\x6C\x5F\x6E\x75\x6D\x62\x65\x72\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x74\x68\x69\x73\x2E\x65\x6C\x5F\x74\x65\x78\x74\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x4C\x69\x6E\x65\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x53\x65\x74\x4E\x75\x6D\x62\x65\x72\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x78\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6C\x69\x6E\x65\x5F\x6E\x75\x6D\x20\x3D\x20\x78\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x6E\x75\x6D\x62\x65\x72\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x78\x20\x2B\x20\x31\x20\x2B\x20\x22\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x4C\x69\x6E\x65\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x53\x65\x74\x45\x64\x69\x74\x4F\x6E\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x74\x65\x78\x74\x2E\x63\x6F\x6E\x74\x65\x6E\x74\x45\x64\x69\x74\x61\x62\x6C\x65\x20\x3D\x20\x22\x74\x72\x75\x65\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x4C\x69\x6E\x65\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x53\x65\x74\x45\x64\x69\x74\x4F\x66\x66\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x5F\x74\x65\x78\x74\x2E\x63\x6F\x6E\x74\x65\x6E\x74\x45\x64\x69\x74\x61\x62\x6C\x65\x20\x3D\x20\x22\x66\x61\x6C\x73\x65\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x4C\x69\x6E\x65\x32\x3B\x0A\x20\x20\x20\x20\x7D\x28\x29\x0A\x20\x20\x29\x3B\x0A\x20\x20\x76\x61\x72\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x55\x6E\x64\x6F\x52\x65\x64\x6F\x20\x3D\x20\x28\x0A\x20\x20\x20\x20\x2F\x2A\x2A\x20\x40\x63\x6C\x61\x73\x73\x20\x2A\x2F\x0A\x20\x20\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x55\x6E\x64\x6F\x52\x65\x64\x6F\x32\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x69\x64\x78\x20\x3D\x20\x30\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x61\x63\x74\x69\x6F\x6E\x73\x20\x3D\x20\x5B\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x55\x6E\x64\x6F\x52\x65\x64\x6F\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x44\x6F\x4A\x6F\x69\x6E\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x70\x72\x65\x76\x4C\x69\x6E\x65\x2C\x20\x70\x72\x65\x76\x54\x65\x78\x74\x2C\x20\x63\x75\x72\x72\x5F\x74\x65\x78\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x63\x75\x72\x72\x5F\x6C\x69\x6E\x65\x20\x3D\x20\x70\x72\x65\x76\x4C\x69\x6E\x65\x20\x2B\x20\x31\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x61\x63\x74\x69\x6F\x6E\x20\x3D\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6B\x69\x6E\x64\x3A\x20\x22\x6A\x6F\x69\x6E\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x65\x66\x6F\x72\x65\x3A\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x75\x72\x72\x5F\x6C\x69\x6E\x65\x3A\x20\x70\x72\x65\x76\x4C\x69\x6E\x65\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x75\x72\x72\x5F\x74\x65\x78\x74\x3A\x20\x70\x72\x65\x76\x54\x65\x78\x74\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6E\x65\x78\x74\x5F\x6C\x69\x6E\x65\x3A\x20\x70\x72\x65\x76\x4C\x69\x6E\x65\x20\x2B\x20\x31\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6E\x65\x78\x74\x5F\x74\x65\x78\x74\x3A\x20\x63\x75\x72\x72\x5F\x74\x65\x78\x74\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x61\x66\x74\x65\x72\x3A\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x75\x72\x72\x5F\x6C\x69\x6E\x65\x3A\x20\x70\x72\x65\x76\x4C\x69\x6E\x65\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x75\x72\x72\x5F\x74\x65\x78\x74\x3A\x20\x70\x72\x65\x76\x54\x65\x78\x74\x20\x2B\x20\x63\x75\x72\x72\x5F\x74\x65\x78\x74\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6E\x65\x78\x74\x5F\x6C\x69\x6E\x65\x3A\x20\x70\x72\x65\x76\x4C\x69\x6E\x65\x20\x2B\x20\x31\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6E\x65\x78\x74\x5F\x74\x65\x78\x74\x3A\x20\x22\x22\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x61\x63\x74\x69\x6F\x6E\x73\x2E\x6C\x65\x6E\x67\x74\x68\x20\x3E\x20\x30\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x61\x63\x74\x69\x6F\x6E\x73\x20\x3D\x20\x74\x68\x69\x73\x2E\x61\x63\x74\x69\x6F\x6E\x73\x2E\x73\x6C\x69\x63\x65\x28\x30\x2C\x20\x74\x68\x69\x73\x2E\x69\x64\x78\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x61\x63\x74\x69\x6F\x6E\x73\x2E\x70\x75\x73\x68\x28\x61\x63\x74\x69\x6F\x6E\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x69\x64\x78\x2B\x2B\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x55\x6E\x64\x6F\x52\x65\x64\x6F\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x44\x6F\x53\x70\x6C\x69\x74\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x63\x75\x72\x72\x5F\x6C\x69\x6E\x65\x2C\x20\x63\x75\x72\x72\x5F\x74\x65\x78\x74\x2C\x20\x6E\x65\x78\x74\x5F\x74\x65\x78\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x61\x63\x74\x69\x6F\x6E\x20\x3D\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6B\x69\x6E\x64\x3A\x20\x22\x73\x70\x6C\x69\x74\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x65\x66\x6F\x72\x65\x3A\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x75\x72\x72\x5F\x6C\x69\x6E\x65\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x75\x72\x72\x5F\x74\x65\x78\x74\x3A\x20\x63\x75\x72\x72\x5F\x74\x65\x78\x74\x20\x2B\x20\x6E\x65\x78\x74\x5F\x74\x65\x78\x74\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6E\x65\x78\x74\x5F\x6C\x69\x6E\x65\x3A\x20\x63\x75\x72\x72\x5F\x6C\x69\x6E\x65\x20\x2B\x20\x31\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6E\x65\x78\x74\x5F\x74\x65\x78\x74\x3A\x20\x22\x22\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x61\x66\x74\x65\x72\x3A\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x75\x72\x72\x5F\x6C\x69\x6E\x65\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x75\x72\x72\x5F\x74\x65\x78\x74\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6E\x65\x78\x74\x5F\x6C\x69\x6E\x65\x3A\x20\x63\x75\x72\x72\x5F\x6C\x69\x6E\x65\x20\x2B\x20\x31\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6E\x65\x78\x74\x5F\x74\x65\x78\x74\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x61\x63\x74\x69\x6F\x6E\x73\x2E\x6C\x65\x6E\x67\x74\x68\x20\x3E\x20\x30\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x61\x63\x74\x69\x6F\x6E\x73\x20\x3D\x20\x74\x68\x69\x73\x2E\x61\x63\x74\x69\x6F\x6E\x73\x2E\x73\x6C\x69\x63\x65\x28\x30\x2C\x20\x74\x68\x69\x73\x2E\x69\x64\x78\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x61\x63\x74\x69\x6F\x6E\x73\x2E\x70\x75\x73\x68\x28\x61\x63\x74\x69\x6F\x6E\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x69\x64\x78\x2B\x2B\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x55\x6E\x64\x6F\x52\x65\x64\x6F\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x44\x6F\x55\x70\x64\x61\x74\x65\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x6C\x69\x6E\x65\x5F\x6E\x75\x6D\x2C\x20\x74\x65\x78\x74\x5F\x62\x65\x66\x6F\x72\x65\x2C\x20\x74\x65\x78\x74\x5F\x61\x66\x74\x65\x72\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x61\x63\x74\x69\x6F\x6E\x20\x3D\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6B\x69\x6E\x64\x3A\x20\x22\x75\x70\x64\x61\x74\x65\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x65\x66\x6F\x72\x65\x3A\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x75\x72\x72\x5F\x6C\x69\x6E\x65\x3A\x20\x6C\x69\x6E\x65\x5F\x6E\x75\x6D\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x75\x72\x72\x5F\x74\x65\x78\x74\x3A\x20\x74\x65\x78\x74\x5F\x62\x65\x66\x6F\x72\x65\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6E\x65\x78\x74\x5F\x6C\x69\x6E\x65\x3A\x20\x30\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6E\x65\x78\x74\x5F\x74\x65\x78\x74\x3A\x20\x22\x22\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x61\x66\x74\x65\x72\x3A\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x75\x72\x72\x5F\x6C\x69\x6E\x65\x3A\x20\x6C\x69\x6E\x65\x5F\x6E\x75\x6D\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x75\x72\x72\x5F\x74\x65\x78\x74\x3A\x20\x74\x65\x78\x74\x5F\x61\x66\x74\x65\x72\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6E\x65\x78\x74\x5F\x6C\x69\x6E\x65\x3A\x20\x30\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6E\x65\x78\x74\x5F\x74\x65\x78\x74\x3A\x20\x22\x22\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x61\x63\x74\x69\x6F\x6E\x73\x2E\x6C\x65\x6E\x67\x74\x68\x20\x3E\x20\x30\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x61\x63\x74\x69\x6F\x6E\x73\x20\x3D\x20\x74\x68\x69\x73\x2E\x61\x63\x74\x69\x6F\x6E\x73\x2E\x73\x6C\x69\x63\x65\x28\x30\x2C\x20\x74\x68\x69\x73\x2E\x69\x64\x78\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x61\x63\x74\x69\x6F\x6E\x73\x2E\x70\x75\x73\x68\x28\x61\x63\x74\x69\x6F\x6E\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x69\x64\x78\x2B\x2B\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x55\x6E\x64\x6F\x52\x65\x64\x6F\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x55\x6E\x64\x6F\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x69\x64\x78\x20\x3D\x3D\x20\x30\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x6E\x75\x6C\x6C\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x69\x64\x78\x2D\x2D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x74\x68\x69\x73\x2E\x61\x63\x74\x69\x6F\x6E\x73\x5B\x74\x68\x69\x73\x2E\x69\x64\x78\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x55\x6E\x64\x6F\x52\x65\x64\x6F\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x52\x65\x64\x6F\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x69\x64\x78\x20\x3D\x3D\x20\x74\x68\x69\x73\x2E\x61\x63\x74\x69\x6F\x6E\x73\x2E\x6C\x65\x6E\x67\x74\x68\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x6E\x75\x6C\x6C\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x61\x63\x74\x69\x6F\x6E\x20\x3D\x20\x74\x68\x69\x73\x2E\x61\x63\x74\x69\x6F\x6E\x73\x5B\x74\x68\x69\x73\x2E\x69\x64\x78\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x69\x64\x78\x2B\x2B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x61\x63\x74\x69\x6F\x6E\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x55\x6E\x64\x6F\x52\x65\x64\x6F\x32\x3B\x0A\x20\x20\x20\x20\x7D\x28\x29\x0A\x20\x20\x29\x3B\x0A\x0A\x20\x20\x2F\x2F\x20\x5F\x77\x77\x77\x2F\x77\x75\x69\x2F\x6E\x6F\x74\x69\x66\x2F\x6E\x6F\x74\x69\x66\x2E\x6A\x73\x0A\x20\x20\x76\x61\x72\x20\x57\x55\x49\x5F\x4E\x4F\x54\x49\x46\x5F\x49\x44\x20\x3D\x20\x22\x77\x75\x69\x5F\x6E\x6F\x74\x69\x66\x22\x3B\x0A\x20\x20\x76\x61\x72\x20\x57\x55\x49\x5F\x4E\x4F\x54\x49\x46\x5F\x43\x4C\x41\x53\x53\x5F\x49\x4E\x46\x4F\x20\x3D\x20\x22\x77\x75\x69\x5F\x6E\x6F\x74\x69\x66\x5F\x69\x6E\x66\x6F\x22\x3B\x0A\x20\x20\x76\x61\x72\x20\x57\x55\x49\x5F\x4E\x4F\x54\x49\x46\x5F\x43\x4C\x41\x53\x53\x5F\x45\x52\x52\x4F\x52\x20\x3D\x20\x22\x77\x75\x69\x5F\x6E\x6F\x74\x69\x66\x5F\x65\x72\x72\x6F\x72\x22\x3B\x0A\x20\x20\x76\x61\x72\x20\x57\x75\x69\x4E\x6F\x74\x69\x66\x20\x3D\x20\x28\x0A\x20\x20\x20\x20\x2F\x2A\x2A\x20\x40\x63\x6C\x61\x73\x73\x20\x2A\x2F\x0A\x20\x20\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x57\x75\x69\x4E\x6F\x74\x69\x66\x32\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x74\x69\x6D\x65\x6F\x75\x74\x20\x3D\x20\x35\x65\x33\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x63\x72\x65\x61\x74\x65\x45\x6C\x65\x6D\x65\x6E\x74\x28\x22\x64\x69\x76\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x69\x64\x20\x3D\x20\x57\x55\x49\x5F\x4E\x4F\x54\x49\x46\x5F\x49\x44\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x62\x6F\x64\x79\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x74\x68\x69\x73\x2E\x65\x6C\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x69\x6E\x69\x74\x53\x74\x79\x6C\x65\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x4E\x6F\x74\x69\x66\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x49\x6E\x66\x6F\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x6D\x73\x67\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x5F\x74\x68\x69\x73\x20\x3D\x20\x74\x68\x69\x73\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x69\x74\x65\x6D\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x63\x72\x65\x61\x74\x65\x45\x6C\x65\x6D\x65\x6E\x74\x28\x22\x64\x69\x76\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x74\x65\x6D\x2E\x69\x6E\x6E\x65\x72\x48\x54\x4D\x4C\x20\x3D\x20\x6D\x73\x67\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x74\x65\x6D\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x57\x55\x49\x5F\x4E\x4F\x54\x49\x46\x5F\x43\x4C\x41\x53\x53\x5F\x49\x4E\x46\x4F\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x69\x74\x65\x6D\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x73\x65\x74\x54\x69\x6D\x65\x6F\x75\x74\x28\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x74\x68\x69\x73\x2E\x65\x6C\x2E\x72\x65\x6D\x6F\x76\x65\x43\x68\x69\x6C\x64\x28\x69\x74\x65\x6D\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x2C\x20\x74\x68\x69\x73\x2E\x74\x69\x6D\x65\x6F\x75\x74\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x4E\x6F\x74\x69\x66\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x45\x72\x72\x6F\x72\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x6D\x73\x67\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x5F\x74\x68\x69\x73\x20\x3D\x20\x74\x68\x69\x73\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x69\x74\x65\x6D\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x63\x72\x65\x61\x74\x65\x45\x6C\x65\x6D\x65\x6E\x74\x28\x22\x64\x69\x76\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x74\x65\x6D\x2E\x69\x6E\x6E\x65\x72\x48\x54\x4D\x4C\x20\x3D\x20\x6D\x73\x67\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x74\x65\x6D\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x57\x55\x49\x5F\x4E\x4F\x54\x49\x46\x5F\x43\x4C\x41\x53\x53\x5F\x45\x52\x52\x4F\x52\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x69\x74\x65\x6D\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x73\x65\x74\x54\x69\x6D\x65\x6F\x75\x74\x28\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x74\x68\x69\x73\x2E\x65\x6C\x2E\x72\x65\x6D\x6F\x76\x65\x43\x68\x69\x6C\x64\x28\x69\x74\x65\x6D\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x2C\x20\x74\x68\x69\x73\x2E\x74\x69\x6D\x65\x6F\x75\x74\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x4E\x6F\x74\x69\x66\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x69\x6E\x69\x74\x53\x74\x79\x6C\x65\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x73\x74\x79\x6C\x65\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x63\x72\x65\x61\x74\x65\x45\x6C\x65\x6D\x65\x6E\x74\x28\x22\x73\x74\x79\x6C\x65\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x73\x74\x79\x6C\x65\x2E\x74\x79\x70\x65\x20\x3D\x20\x22\x74\x65\x78\x74\x2F\x63\x73\x73\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x73\x74\x79\x6C\x65\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x22\x5C\x6E\x09\x09\x09\x23\x22\x20\x2B\x20\x57\x55\x49\x5F\x4E\x4F\x54\x49\x46\x5F\x49\x44\x20\x2B\x20\x22\x20\x7B\x5C\x6E\x09\x09\x09\x09\x6C\x65\x66\x74\x3A\x20\x31\x30\x25\x3B\x5C\x6E\x09\x09\x09\x09\x70\x6F\x73\x69\x74\x69\x6F\x6E\x3A\x20\x66\x69\x78\x65\x64\x3B\x5C\x6E\x09\x09\x09\x09\x74\x6F\x70\x3A\x20\x31\x65\x6D\x3B\x5C\x6E\x09\x09\x09\x09\x77\x69\x64\x74\x68\x3A\x20\x38\x30\x25\x3B\x5C\x6E\x09\x09\x09\x09\x7A\x2D\x69\x6E\x64\x65\x78\x3A\x20\x31\x30\x30\x30\x30\x3B\x5C\x6E\x09\x09\x09\x7D\x5C\x6E\x09\x09\x09\x2E\x22\x20\x2B\x20\x57\x55\x49\x5F\x4E\x4F\x54\x49\x46\x5F\x43\x4C\x41\x53\x53\x5F\x49\x4E\x46\x4F\x20\x2B\x20\x22\x20\x7B\x5C\x6E\x09\x09\x09\x09\x62\x6F\x72\x64\x65\x72\x3A\x20\x31\x70\x78\x20\x73\x6F\x6C\x69\x64\x20\x73\x69\x6C\x76\x65\x72\x3B\x5C\x6E\x09\x09\x09\x09\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x2D\x63\x6F\x6C\x6F\x72\x3A\x20\x68\x6F\x6E\x65\x79\x64\x65\x77\x3B\x5C\x6E\x09\x09\x09\x09\x6D\x61\x72\x67\x69\x6E\x2D\x62\x6F\x74\x74\x6F\x6D\x3A\x20\x31\x65\x6D\x3B\x5C\x6E\x09\x09\x09\x09\x70\x61\x64\x64\x69\x6E\x67\x3A\x20\x31\x65\x6D\x3B\x5C\x6E\x09\x09\x09\x7D\x5C\x6E\x09\x09\x09\x2E\x22\x20\x2B\x20\x57\x55\x49\x5F\x4E\x4F\x54\x49\x46\x5F\x43\x4C\x41\x53\x53\x5F\x45\x52\x52\x4F\x52\x20\x2B\x20\x22\x20\x7B\x5C\x6E\x09\x09\x09\x09\x62\x6F\x72\x64\x65\x72\x3A\x20\x31\x70\x78\x20\x73\x6F\x6C\x69\x64\x20\x73\x61\x6C\x6D\x6F\x6E\x3B\x5C\x6E\x09\x09\x09\x09\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x2D\x63\x6F\x6C\x6F\x72\x3A\x20\x6C\x69\x67\x68\x74\x73\x61\x6C\x6D\x6F\x6E\x3B\x5C\x6E\x09\x09\x09\x09\x6D\x61\x72\x67\x69\x6E\x2D\x62\x6F\x74\x74\x6F\x6D\x3A\x20\x31\x65\x6D\x3B\x5C\x6E\x09\x09\x09\x09\x70\x61\x64\x64\x69\x6E\x67\x3A\x20\x31\x65\x6D\x3B\x5C\x6E\x09\x09\x09\x7D\x5C\x6E\x09\x09\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x68\x65\x61\x64\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x73\x74\x79\x6C\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x57\x75\x69\x4E\x6F\x74\x69\x66\x32\x3B\x0A\x20\x20\x20\x20\x7D\x28\x29\x0A\x20\x20\x29\x3B\x0A\x0A\x20\x20\x2F\x2F\x20\x5F\x77\x77\x77\x2F\x77\x75\x69\x2F\x76\x66\x73\x2F\x76\x66\x73\x2E\x6A\x73\x0A\x20\x20\x76\x61\x72\x20\x5F\x5F\x61\x77\x61\x69\x74\x65\x72\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x74\x68\x69\x73\x41\x72\x67\x2C\x20\x5F\x61\x72\x67\x75\x6D\x65\x6E\x74\x73\x2C\x20\x50\x2C\x20\x67\x65\x6E\x65\x72\x61\x74\x6F\x72\x29\x20\x7B\x0A\x20\x20\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x61\x64\x6F\x70\x74\x28\x76\x61\x6C\x75\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x76\x61\x6C\x75\x65\x20\x69\x6E\x73\x74\x61\x6E\x63\x65\x6F\x66\x20\x50\x20\x3F\x20\x76\x61\x6C\x75\x65\x20\x3A\x20\x6E\x65\x77\x20\x50\x28\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x72\x65\x73\x6F\x6C\x76\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x73\x6F\x6C\x76\x65\x28\x76\x61\x6C\x75\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x29\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x6E\x65\x77\x20\x28\x50\x20\x7C\x7C\x20\x28\x50\x20\x3D\x20\x50\x72\x6F\x6D\x69\x73\x65\x29\x29\x28\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x72\x65\x73\x6F\x6C\x76\x65\x2C\x20\x72\x65\x6A\x65\x63\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x66\x75\x6C\x66\x69\x6C\x6C\x65\x64\x28\x76\x61\x6C\x75\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x72\x79\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x73\x74\x65\x70\x28\x67\x65\x6E\x65\x72\x61\x74\x6F\x72\x2E\x6E\x65\x78\x74\x28\x76\x61\x6C\x75\x65\x29\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x20\x63\x61\x74\x63\x68\x20\x28\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x6A\x65\x63\x74\x28\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x72\x65\x6A\x65\x63\x74\x65\x64\x28\x76\x61\x6C\x75\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x72\x79\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x73\x74\x65\x70\x28\x67\x65\x6E\x65\x72\x61\x74\x6F\x72\x5B\x22\x74\x68\x72\x6F\x77\x22\x5D\x28\x76\x61\x6C\x75\x65\x29\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x20\x63\x61\x74\x63\x68\x20\x28\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x6A\x65\x63\x74\x28\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x73\x74\x65\x70\x28\x72\x65\x73\x75\x6C\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x73\x75\x6C\x74\x2E\x64\x6F\x6E\x65\x20\x3F\x20\x72\x65\x73\x6F\x6C\x76\x65\x28\x72\x65\x73\x75\x6C\x74\x2E\x76\x61\x6C\x75\x65\x29\x20\x3A\x20\x61\x64\x6F\x70\x74\x28\x72\x65\x73\x75\x6C\x74\x2E\x76\x61\x6C\x75\x65\x29\x2E\x74\x68\x65\x6E\x28\x66\x75\x6C\x66\x69\x6C\x6C\x65\x64\x2C\x20\x72\x65\x6A\x65\x63\x74\x65\x64\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x73\x74\x65\x70\x28\x28\x67\x65\x6E\x65\x72\x61\x74\x6F\x72\x20\x3D\x20\x67\x65\x6E\x65\x72\x61\x74\x6F\x72\x2E\x61\x70\x70\x6C\x79\x28\x74\x68\x69\x73\x41\x72\x67\x2C\x20\x5F\x61\x72\x67\x75\x6D\x65\x6E\x74\x73\x20\x7C\x7C\x20\x5B\x5D\x29\x29\x2E\x6E\x65\x78\x74\x28\x29\x29\x3B\x0A\x20\x20\x20\x20\x7D\x29\x3B\x0A\x20\x20\x7D\x3B\x0A\x20\x20\x76\x61\x72\x20\x5F\x5F\x67\x65\x6E\x65\x72\x61\x74\x6F\x72\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x74\x68\x69\x73\x41\x72\x67\x2C\x20\x62\x6F\x64\x79\x29\x20\x7B\x0A\x20\x20\x20\x20\x76\x61\x72\x20\x5F\x20\x3D\x20\x7B\x20\x6C\x61\x62\x65\x6C\x3A\x20\x30\x2C\x20\x73\x65\x6E\x74\x3A\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x5B\x30\x5D\x20\x26\x20\x31\x29\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x72\x6F\x77\x20\x74\x5B\x31\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x74\x5B\x31\x5D\x3B\x0A\x20\x20\x20\x20\x7D\x2C\x20\x74\x72\x79\x73\x3A\x20\x5B\x5D\x2C\x20\x6F\x70\x73\x3A\x20\x5B\x5D\x20\x7D\x2C\x20\x66\x2C\x20\x79\x2C\x20\x74\x2C\x20\x67\x3B\x0A\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x67\x20\x3D\x20\x7B\x20\x6E\x65\x78\x74\x3A\x20\x76\x65\x72\x62\x28\x30\x29\x2C\x20\x22\x74\x68\x72\x6F\x77\x22\x3A\x20\x76\x65\x72\x62\x28\x31\x29\x2C\x20\x22\x72\x65\x74\x75\x72\x6E\x22\x3A\x20\x76\x65\x72\x62\x28\x32\x29\x20\x7D\x2C\x20\x74\x79\x70\x65\x6F\x66\x20\x53\x79\x6D\x62\x6F\x6C\x20\x3D\x3D\x3D\x20\x22\x66\x75\x6E\x63\x74\x69\x6F\x6E\x22\x20\x26\x26\x20\x28\x67\x5B\x53\x79\x6D\x62\x6F\x6C\x2E\x69\x74\x65\x72\x61\x74\x6F\x72\x5D\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x74\x68\x69\x73\x3B\x0A\x20\x20\x20\x20\x7D\x29\x2C\x20\x67\x3B\x0A\x20\x20\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x76\x65\x72\x62\x28\x6E\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x76\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x73\x74\x65\x70\x28\x5B\x6E\x2C\x20\x76\x5D\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x73\x74\x65\x70\x28\x6F\x70\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x66\x29\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x72\x6F\x77\x20\x6E\x65\x77\x20\x54\x79\x70\x65\x45\x72\x72\x6F\x72\x28\x22\x47\x65\x6E\x65\x72\x61\x74\x6F\x72\x20\x69\x73\x20\x61\x6C\x72\x65\x61\x64\x79\x20\x65\x78\x65\x63\x75\x74\x69\x6E\x67\x2E\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x77\x68\x69\x6C\x65\x20\x28\x5F\x29\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x72\x79\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x66\x20\x3D\x20\x31\x2C\x20\x79\x20\x26\x26\x20\x28\x74\x20\x3D\x20\x6F\x70\x5B\x30\x5D\x20\x26\x20\x32\x20\x3F\x20\x79\x5B\x22\x72\x65\x74\x75\x72\x6E\x22\x5D\x20\x3A\x20\x6F\x70\x5B\x30\x5D\x20\x3F\x20\x79\x5B\x22\x74\x68\x72\x6F\x77\x22\x5D\x20\x7C\x7C\x20\x28\x28\x74\x20\x3D\x20\x79\x5B\x22\x72\x65\x74\x75\x72\x6E\x22\x5D\x29\x20\x26\x26\x20\x74\x2E\x63\x61\x6C\x6C\x28\x79\x29\x2C\x20\x30\x29\x20\x3A\x20\x79\x2E\x6E\x65\x78\x74\x29\x20\x26\x26\x20\x21\x28\x74\x20\x3D\x20\x74\x2E\x63\x61\x6C\x6C\x28\x79\x2C\x20\x6F\x70\x5B\x31\x5D\x29\x29\x2E\x64\x6F\x6E\x65\x29\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x79\x20\x3D\x20\x30\x2C\x20\x74\x29\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6F\x70\x20\x3D\x20\x5B\x6F\x70\x5B\x30\x5D\x20\x26\x20\x32\x2C\x20\x74\x2E\x76\x61\x6C\x75\x65\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x73\x77\x69\x74\x63\x68\x20\x28\x6F\x70\x5B\x30\x5D\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x30\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x31\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x20\x3D\x20\x6F\x70\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x34\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x2E\x6C\x61\x62\x65\x6C\x2B\x2B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x7B\x20\x76\x61\x6C\x75\x65\x3A\x20\x6F\x70\x5B\x31\x5D\x2C\x20\x64\x6F\x6E\x65\x3A\x20\x66\x61\x6C\x73\x65\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x35\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x2E\x6C\x61\x62\x65\x6C\x2B\x2B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x79\x20\x3D\x20\x6F\x70\x5B\x31\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6F\x70\x20\x3D\x20\x5B\x30\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x74\x69\x6E\x75\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x37\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6F\x70\x20\x3D\x20\x5F\x2E\x6F\x70\x73\x2E\x70\x6F\x70\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x2E\x74\x72\x79\x73\x2E\x70\x6F\x70\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x74\x69\x6E\x75\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x64\x65\x66\x61\x75\x6C\x74\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x21\x28\x74\x20\x3D\x20\x5F\x2E\x74\x72\x79\x73\x2C\x20\x74\x20\x3D\x20\x74\x2E\x6C\x65\x6E\x67\x74\x68\x20\x3E\x20\x30\x20\x26\x26\x20\x74\x5B\x74\x2E\x6C\x65\x6E\x67\x74\x68\x20\x2D\x20\x31\x5D\x29\x20\x26\x26\x20\x28\x6F\x70\x5B\x30\x5D\x20\x3D\x3D\x3D\x20\x36\x20\x7C\x7C\x20\x6F\x70\x5B\x30\x5D\x20\x3D\x3D\x3D\x20\x32\x29\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x20\x3D\x20\x30\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x74\x69\x6E\x75\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x6F\x70\x5B\x30\x5D\x20\x3D\x3D\x3D\x20\x33\x20\x26\x26\x20\x28\x21\x74\x20\x7C\x7C\x20\x6F\x70\x5B\x31\x5D\x20\x3E\x20\x74\x5B\x30\x5D\x20\x26\x26\x20\x6F\x70\x5B\x31\x5D\x20\x3C\x20\x74\x5B\x33\x5D\x29\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x2E\x6C\x61\x62\x65\x6C\x20\x3D\x20\x6F\x70\x5B\x31\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x6F\x70\x5B\x30\x5D\x20\x3D\x3D\x3D\x20\x36\x20\x26\x26\x20\x5F\x2E\x6C\x61\x62\x65\x6C\x20\x3C\x20\x74\x5B\x31\x5D\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x2E\x6C\x61\x62\x65\x6C\x20\x3D\x20\x74\x5B\x31\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x20\x3D\x20\x6F\x70\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x20\x26\x26\x20\x5F\x2E\x6C\x61\x62\x65\x6C\x20\x3C\x20\x74\x5B\x32\x5D\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x2E\x6C\x61\x62\x65\x6C\x20\x3D\x20\x74\x5B\x32\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x2E\x6F\x70\x73\x2E\x70\x75\x73\x68\x28\x6F\x70\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x72\x65\x61\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x5B\x32\x5D\x29\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x2E\x6F\x70\x73\x2E\x70\x6F\x70\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x2E\x74\x72\x79\x73\x2E\x70\x6F\x70\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x74\x69\x6E\x75\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6F\x70\x20\x3D\x20\x62\x6F\x64\x79\x2E\x63\x61\x6C\x6C\x28\x74\x68\x69\x73\x41\x72\x67\x2C\x20\x5F\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x20\x63\x61\x74\x63\x68\x20\x28\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x6F\x70\x20\x3D\x20\x5B\x36\x2C\x20\x65\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x79\x20\x3D\x20\x30\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x20\x66\x69\x6E\x61\x6C\x6C\x79\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x66\x20\x3D\x20\x74\x20\x3D\x20\x30\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x6F\x70\x5B\x30\x5D\x20\x26\x20\x35\x29\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x72\x6F\x77\x20\x6F\x70\x5B\x31\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x7B\x20\x76\x61\x6C\x75\x65\x3A\x20\x6F\x70\x5B\x30\x5D\x20\x3F\x20\x6F\x70\x5B\x31\x5D\x20\x3A\x20\x76\x6F\x69\x64\x20\x30\x2C\x20\x64\x6F\x6E\x65\x3A\x20\x74\x72\x75\x65\x20\x7D\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x7D\x3B\x0A\x20\x20\x76\x61\x72\x20\x43\x4C\x41\x53\x53\x5F\x56\x46\x53\x5F\x50\x41\x54\x48\x20\x3D\x20\x22\x77\x75\x69\x5F\x76\x66\x73\x5F\x70\x61\x74\x68\x22\x3B\x0A\x20\x20\x76\x61\x72\x20\x43\x4C\x41\x53\x53\x5F\x56\x46\x53\x5F\x4C\x49\x53\x54\x20\x3D\x20\x22\x77\x75\x69\x5F\x76\x66\x73\x5F\x6C\x69\x73\x74\x22\x3B\x0A\x20\x20\x76\x61\x72\x20\x57\x75\x69\x56\x66\x73\x20\x3D\x20\x28\x0A\x20\x20\x20\x20\x2F\x2A\x2A\x20\x40\x63\x6C\x61\x73\x73\x20\x2A\x2F\x0A\x20\x20\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x57\x75\x69\x56\x66\x73\x32\x28\x6F\x70\x74\x73\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x5F\x74\x68\x69\x73\x20\x3D\x20\x74\x68\x69\x73\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x20\x3D\x20\x6F\x70\x74\x73\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x20\x3D\x20\x6F\x70\x74\x73\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x65\x6C\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x67\x65\x74\x45\x6C\x65\x6D\x65\x6E\x74\x42\x79\x49\x64\x28\x6F\x70\x74\x73\x2E\x69\x64\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x21\x65\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x6F\x6C\x65\x2E\x65\x72\x72\x6F\x72\x28\x22\x57\x75\x69\x56\x66\x73\x3A\x20\x65\x6C\x65\x6D\x65\x6E\x74\x20\x69\x64\x22\x2C\x20\x6F\x70\x74\x73\x2E\x69\x64\x2C\x20\x22\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x20\x3D\x20\x65\x6C\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x70\x61\x74\x68\x20\x3D\x20\x6E\x65\x77\x20\x57\x75\x69\x56\x66\x73\x50\x61\x74\x68\x28\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x70\x61\x74\x68\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x74\x68\x69\x73\x2E\x4F\x70\x65\x6E\x44\x69\x72\x28\x70\x61\x74\x68\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x70\x61\x74\x68\x2E\x65\x6C\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x6C\x69\x73\x74\x20\x3D\x20\x6E\x65\x77\x20\x57\x75\x69\x56\x66\x73\x4C\x69\x73\x74\x28\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x6E\x6F\x64\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x74\x68\x69\x73\x2E\x4F\x70\x65\x6E\x4E\x6F\x64\x65\x28\x6E\x6F\x64\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x6C\x69\x73\x74\x2E\x65\x6C\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x56\x66\x73\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x4F\x70\x65\x6E\x4E\x6F\x64\x65\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x6E\x6F\x64\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x6E\x6F\x64\x65\x2E\x69\x73\x5F\x64\x69\x72\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x4F\x70\x65\x6E\x44\x69\x72\x28\x6E\x6F\x64\x65\x2E\x70\x61\x74\x68\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x20\x65\x6C\x73\x65\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x4F\x70\x65\x6E\x4E\x6F\x64\x65\x28\x6E\x6F\x64\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x56\x66\x73\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x4F\x70\x65\x6E\x44\x69\x72\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x70\x61\x74\x68\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5F\x5F\x61\x77\x61\x69\x74\x65\x72\x28\x74\x68\x69\x73\x2C\x20\x76\x6F\x69\x64\x20\x30\x2C\x20\x76\x6F\x69\x64\x20\x30\x2C\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x72\x65\x73\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5F\x5F\x67\x65\x6E\x65\x72\x61\x74\x6F\x72\x28\x74\x68\x69\x73\x2C\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x5F\x61\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x73\x77\x69\x74\x63\x68\x20\x28\x5F\x61\x2E\x6C\x61\x62\x65\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x30\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5B\x34\x2C\x20\x74\x68\x69\x73\x2E\x6F\x70\x74\x73\x2E\x4F\x70\x65\x6E\x28\x70\x61\x74\x68\x2C\x20\x74\x72\x75\x65\x29\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x61\x73\x65\x20\x31\x3A\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x73\x20\x3D\x20\x5F\x61\x2E\x73\x65\x6E\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x72\x65\x73\x2E\x63\x6F\x64\x65\x20\x21\x3D\x20\x32\x30\x30\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x32\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x2F\x2A\x72\x65\x74\x75\x72\x6E\x2A\x2F\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x53\x65\x74\x28\x72\x65\x73\x2E\x64\x61\x74\x61\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x5B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x32\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x2F\x2A\x72\x65\x74\x75\x72\x6E\x2A\x2F\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x56\x66\x73\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x53\x65\x74\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x6E\x6F\x64\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x6E\x6F\x64\x65\x2E\x69\x73\x5F\x64\x69\x72\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x70\x61\x74\x68\x2E\x4F\x70\x65\x6E\x28\x6E\x6F\x64\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x6C\x69\x73\x74\x2E\x4F\x70\x65\x6E\x28\x6E\x6F\x64\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x57\x75\x69\x56\x66\x73\x32\x3B\x0A\x20\x20\x20\x20\x7D\x28\x29\x0A\x20\x20\x29\x3B\x0A\x20\x20\x76\x61\x72\x20\x57\x75\x69\x56\x66\x73\x4C\x69\x73\x74\x20\x3D\x20\x28\x0A\x20\x20\x20\x20\x2F\x2A\x2A\x20\x40\x63\x6C\x61\x73\x73\x20\x2A\x2F\x0A\x20\x20\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x57\x75\x69\x56\x66\x73\x4C\x69\x73\x74\x32\x28\x6F\x6E\x43\x6C\x69\x63\x6B\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6F\x6E\x43\x6C\x69\x63\x6B\x20\x3D\x20\x6F\x6E\x43\x6C\x69\x63\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6E\x6F\x64\x65\x20\x3D\x20\x6E\x75\x6C\x6C\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x63\x72\x65\x61\x74\x65\x45\x6C\x65\x6D\x65\x6E\x74\x28\x22\x64\x69\x76\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x43\x4C\x41\x53\x53\x5F\x56\x46\x53\x5F\x4C\x49\x53\x54\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x73\x74\x79\x6C\x65\x2E\x62\x6F\x72\x64\x65\x72\x57\x69\x64\x74\x68\x20\x3D\x20\x22\x31\x70\x78\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x73\x74\x79\x6C\x65\x2E\x62\x6F\x72\x64\x65\x72\x53\x74\x79\x6C\x65\x20\x3D\x20\x22\x73\x6F\x6C\x69\x64\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x73\x74\x79\x6C\x65\x2E\x62\x6F\x72\x64\x65\x72\x43\x6F\x6C\x6F\x72\x20\x3D\x20\x22\x73\x69\x6C\x76\x65\x72\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x56\x66\x73\x4C\x69\x73\x74\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x4F\x70\x65\x6E\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x6E\x6F\x64\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x5F\x74\x68\x69\x73\x20\x3D\x20\x74\x68\x69\x73\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6E\x6F\x64\x65\x20\x3D\x20\x6E\x6F\x64\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x69\x6E\x6E\x65\x72\x48\x54\x4D\x4C\x20\x3D\x20\x22\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x21\x74\x68\x69\x73\x2E\x6E\x6F\x64\x65\x2E\x63\x68\x69\x6C\x64\x73\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x5F\x6C\x6F\x6F\x70\x5F\x31\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x63\x32\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x65\x6C\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x63\x72\x65\x61\x74\x65\x45\x6C\x65\x6D\x65\x6E\x74\x28\x22\x64\x69\x76\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x2E\x73\x74\x79\x6C\x65\x2E\x70\x61\x64\x64\x69\x6E\x67\x20\x3D\x20\x22\x31\x65\x6D\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x2E\x73\x74\x79\x6C\x65\x2E\x63\x75\x72\x73\x6F\x72\x20\x3D\x20\x22\x70\x6F\x69\x6E\x74\x65\x72\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x2E\x69\x6E\x6E\x65\x72\x48\x54\x4D\x4C\x20\x3D\x20\x63\x32\x2E\x6E\x61\x6D\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x63\x32\x2E\x69\x73\x5F\x64\x69\x72\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x2E\x73\x74\x79\x6C\x65\x2E\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x43\x6F\x6C\x6F\x72\x20\x3D\x20\x22\x63\x6F\x72\x6E\x73\x69\x6C\x6B\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x2E\x6F\x6E\x63\x6C\x69\x63\x6B\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x65\x76\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x74\x68\x69\x73\x2E\x6F\x6E\x43\x6C\x69\x63\x6B\x28\x63\x32\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x2E\x6F\x6E\x6D\x6F\x75\x73\x65\x6F\x75\x74\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x65\x76\x65\x6E\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x63\x32\x2E\x69\x73\x5F\x64\x69\x72\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x2E\x73\x74\x79\x6C\x65\x2E\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x43\x6F\x6C\x6F\x72\x20\x3D\x20\x22\x63\x6F\x72\x6E\x73\x69\x6C\x6B\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x20\x65\x6C\x73\x65\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x2E\x73\x74\x79\x6C\x65\x2E\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x43\x6F\x6C\x6F\x72\x20\x3D\x20\x22\x77\x68\x69\x74\x65\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x2E\x6F\x6E\x6D\x6F\x75\x73\x65\x6F\x76\x65\x72\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x65\x76\x65\x6E\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6C\x2E\x73\x74\x79\x6C\x65\x2E\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x43\x6F\x6C\x6F\x72\x20\x3D\x20\x22\x61\x6C\x69\x63\x65\x62\x6C\x75\x65\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x5F\x31\x2E\x65\x6C\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x65\x6C\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x74\x68\x69\x73\x5F\x31\x20\x3D\x20\x74\x68\x69\x73\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x66\x6F\x72\x20\x28\x76\x61\x72\x20\x5F\x69\x20\x3D\x20\x30\x2C\x20\x5F\x61\x20\x3D\x20\x74\x68\x69\x73\x2E\x6E\x6F\x64\x65\x2E\x63\x68\x69\x6C\x64\x73\x3B\x20\x5F\x69\x20\x3C\x20\x5F\x61\x2E\x6C\x65\x6E\x67\x74\x68\x3B\x20\x5F\x69\x2B\x2B\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x63\x20\x3D\x20\x5F\x61\x5B\x5F\x69\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x6C\x6F\x6F\x70\x5F\x31\x28\x63\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x57\x75\x69\x56\x66\x73\x4C\x69\x73\x74\x32\x3B\x0A\x20\x20\x20\x20\x7D\x28\x29\x0A\x20\x20\x29\x3B\x0A\x20\x20\x76\x61\x72\x20\x57\x75\x69\x56\x66\x73\x50\x61\x74\x68\x20\x3D\x20\x28\x0A\x20\x20\x20\x20\x2F\x2A\x2A\x20\x40\x63\x6C\x61\x73\x73\x20\x2A\x2F\x0A\x20\x20\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x57\x75\x69\x56\x66\x73\x50\x61\x74\x68\x32\x28\x6F\x6E\x43\x6C\x69\x63\x6B\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x63\x72\x65\x61\x74\x65\x45\x6C\x65\x6D\x65\x6E\x74\x28\x22\x64\x69\x76\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x43\x4C\x41\x53\x53\x5F\x56\x46\x53\x5F\x50\x41\x54\x48\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x73\x74\x79\x6C\x65\x2E\x62\x6F\x72\x64\x65\x72\x57\x69\x64\x74\x68\x20\x3D\x20\x22\x31\x70\x78\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x73\x74\x79\x6C\x65\x2E\x62\x6F\x72\x64\x65\x72\x53\x74\x79\x6C\x65\x20\x3D\x20\x22\x73\x6F\x6C\x69\x64\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x73\x74\x79\x6C\x65\x2E\x62\x6F\x72\x64\x65\x72\x43\x6F\x6C\x6F\x72\x20\x3D\x20\x22\x73\x69\x6C\x76\x65\x72\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x72\x75\x6D\x62\x73\x20\x3D\x20\x5B\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6F\x6E\x43\x6C\x69\x63\x6B\x20\x3D\x20\x6F\x6E\x43\x6C\x69\x63\x6B\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x57\x75\x69\x56\x66\x73\x50\x61\x74\x68\x32\x2E\x70\x72\x6F\x74\x6F\x74\x79\x70\x65\x2E\x4F\x70\x65\x6E\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x6E\x6F\x64\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x5F\x74\x68\x69\x73\x20\x3D\x20\x74\x68\x69\x73\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x6C\x2E\x69\x6E\x6E\x65\x72\x48\x54\x4D\x4C\x20\x3D\x20\x22\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x72\x75\x6D\x62\x73\x20\x3D\x20\x5B\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x70\x61\x74\x68\x73\x20\x3D\x20\x5B\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x6E\x6F\x64\x65\x2E\x70\x61\x74\x68\x20\x3D\x3D\x20\x22\x2F\x22\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x70\x61\x74\x68\x73\x2E\x70\x75\x73\x68\x28\x6E\x6F\x64\x65\x2E\x70\x61\x74\x68\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x20\x65\x6C\x73\x65\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x70\x61\x74\x68\x73\x20\x3D\x20\x6E\x6F\x64\x65\x2E\x70\x61\x74\x68\x2E\x73\x70\x6C\x69\x74\x28\x22\x2F\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x5F\x6C\x6F\x6F\x70\x5F\x32\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x78\x32\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x66\x75\x6C\x6C\x5F\x70\x61\x74\x68\x20\x3D\x20\x22\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x70\x20\x3D\x20\x22\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x78\x32\x20\x3D\x3D\x20\x30\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x70\x20\x3D\x20\x22\x2F\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x66\x75\x6C\x6C\x5F\x70\x61\x74\x68\x20\x3D\x20\x22\x2F\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x20\x65\x6C\x73\x65\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x70\x20\x3D\x20\x70\x61\x74\x68\x73\x5B\x78\x32\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x66\x75\x6C\x6C\x5F\x70\x61\x74\x68\x20\x3D\x20\x70\x61\x74\x68\x73\x2E\x73\x6C\x69\x63\x65\x28\x30\x2C\x20\x78\x32\x20\x2B\x20\x31\x29\x2E\x6A\x6F\x69\x6E\x28\x22\x2F\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x63\x72\x75\x6D\x62\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x63\x72\x65\x61\x74\x65\x45\x6C\x65\x6D\x65\x6E\x74\x28\x22\x73\x70\x61\x6E\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x72\x75\x6D\x62\x2E\x73\x74\x79\x6C\x65\x2E\x64\x69\x73\x70\x6C\x61\x79\x20\x3D\x20\x22\x69\x6E\x6C\x69\x6E\x65\x2D\x62\x6C\x6F\x63\x6B\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x72\x75\x6D\x62\x2E\x73\x74\x79\x6C\x65\x2E\x70\x61\x64\x64\x69\x6E\x67\x20\x3D\x20\x22\x31\x65\x6D\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x72\x75\x6D\x62\x2E\x73\x74\x79\x6C\x65\x2E\x63\x75\x72\x73\x6F\x72\x20\x3D\x20\x22\x70\x6F\x69\x6E\x74\x65\x72\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x72\x75\x6D\x62\x2E\x69\x6E\x6E\x65\x72\x48\x54\x4D\x4C\x20\x3D\x20\x70\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x72\x75\x6D\x62\x2E\x6F\x6E\x63\x6C\x69\x63\x6B\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x65\x76\x65\x6E\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x74\x68\x69\x73\x2E\x6F\x6E\x43\x6C\x69\x63\x6B\x28\x66\x75\x6C\x6C\x5F\x70\x61\x74\x68\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x72\x75\x6D\x62\x2E\x6F\x6E\x6D\x6F\x75\x73\x65\x6F\x75\x74\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x65\x76\x65\x6E\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x72\x75\x6D\x62\x2E\x73\x74\x79\x6C\x65\x2E\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x43\x6F\x6C\x6F\x72\x20\x3D\x20\x22\x77\x68\x69\x74\x65\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x72\x75\x6D\x62\x2E\x6F\x6E\x6D\x6F\x75\x73\x65\x6F\x76\x65\x72\x20\x3D\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x28\x65\x76\x65\x6E\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x63\x72\x75\x6D\x62\x2E\x73\x74\x79\x6C\x65\x2E\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x43\x6F\x6C\x6F\x72\x20\x3D\x20\x22\x61\x6C\x69\x63\x65\x62\x6C\x75\x65\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x5F\x32\x2E\x65\x6C\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x63\x72\x75\x6D\x62\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x76\x61\x72\x20\x74\x68\x69\x73\x5F\x32\x20\x3D\x20\x74\x68\x69\x73\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x66\x6F\x72\x20\x28\x76\x61\x72\x20\x78\x20\x3D\x20\x30\x3B\x20\x78\x20\x3C\x20\x70\x61\x74\x68\x73\x2E\x6C\x65\x6E\x67\x74\x68\x3B\x20\x78\x2B\x2B\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x5F\x6C\x6F\x6F\x70\x5F\x32\x28\x78\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x57\x75\x69\x56\x66\x73\x50\x61\x74\x68\x32\x3B\x0A\x20\x20\x20\x20\x7D\x28\x29\x0A\x20\x20\x29\x3B\x0A\x0A\x20\x20\x2F\x2F\x20\x5F\x77\x77\x77\x2F\x61\x77\x77\x61\x6E\x2E\x74\x73\x0A\x20\x20\x76\x61\x72\x20\x43\x4C\x41\x53\x53\x5F\x45\x44\x49\x54\x4F\x52\x5F\x41\x43\x54\x49\x4F\x4E\x20\x3D\x20\x22\x65\x64\x69\x74\x6F\x72\x5F\x61\x63\x74\x69\x6F\x6E\x22\x3B\x0A\x20\x20\x76\x61\x72\x20\x49\x44\x5F\x42\x54\x4E\x5F\x43\x4C\x45\x41\x52\x5F\x53\x45\x4C\x45\x43\x54\x49\x4F\x4E\x20\x3D\x20\x22\x63\x6F\x6D\x5F\x62\x74\x6E\x5F\x63\x6C\x65\x61\x72\x5F\x73\x65\x6C\x65\x63\x74\x69\x6F\x6E\x22\x3B\x0A\x20\x20\x76\x61\x72\x20\x49\x44\x5F\x42\x54\x4E\x5F\x45\x58\x45\x43\x5F\x4C\x4F\x43\x41\x4C\x20\x3D\x20\x22\x63\x6F\x6D\x5F\x62\x74\x6E\x5F\x6C\x6F\x63\x61\x6C\x22\x3B\x0A\x20\x20\x76\x61\x72\x20\x49\x44\x5F\x42\x54\x4E\x5F\x45\x58\x45\x43\x5F\x52\x45\x4D\x4F\x54\x45\x20\x3D\x20\x22\x63\x6F\x6D\x5F\x62\x74\x6E\x5F\x72\x65\x6D\x6F\x74\x65\x22\x3B\x0A\x20\x20\x76\x61\x72\x20\x49\x44\x5F\x42\x54\x4E\x5F\x4E\x45\x57\x5F\x44\x49\x52\x20\x3D\x20\x22\x63\x6F\x6D\x5F\x62\x74\x6E\x5F\x6E\x65\x77\x5F\x64\x69\x72\x22\x3B\x0A\x20\x20\x76\x61\x72\x20\x49\x44\x5F\x42\x54\x4E\x5F\x4E\x45\x57\x5F\x46\x49\x4C\x45\x20\x3D\x20\x22\x63\x6F\x6D\x5F\x62\x74\x6E\x5F\x6E\x65\x77\x5F\x66\x69\x6C\x65\x22\x3B\x0A\x20\x20\x76\x61\x72\x20\x49\x44\x5F\x42\x54\x4E\x5F\x52\x45\x4D\x4F\x56\x45\x20\x3D\x20\x22\x63\x6F\x6D\x5F\x62\x74\x6E\x5F\x72\x65\x6D\x6F\x76\x65\x22\x3B\x0A\x20\x20\x76\x61\x72\x20\x49\x44\x5F\x42\x54\x4E\x5F\x53\x41\x56\x45\x20\x3D\x20\x22\x63\x6F\x6D\x5F\x62\x74\x6E\x5F\x73\x61\x76\x65\x22\x3B\x0A\x20\x20\x76\x61\x72\x20\x49\x44\x5F\x45\x44\x49\x54\x4F\x52\x20\x3D\x20\x22\x63\x6F\x6D\x5F\x65\x64\x69\x74\x6F\x72\x22\x3B\x0A\x20\x20\x76\x61\x72\x20\x49\x44\x5F\x49\x4E\x50\x5F\x56\x46\x53\x5F\x4E\x45\x57\x20\x3D\x20\x22\x63\x6F\x6D\x5F\x69\x6E\x70\x5F\x76\x66\x73\x5F\x6E\x65\x77\x22\x3B\x0A\x20\x20\x76\x61\x72\x20\x49\x44\x5F\x56\x46\x53\x20\x3D\x20\x22\x63\x6F\x6D\x5F\x76\x66\x73\x22\x3B\x0A\x20\x20\x76\x61\x72\x20\x49\x44\x5F\x56\x46\x53\x5F\x50\x41\x54\x48\x20\x3D\x20\x22\x76\x66\x73\x5F\x70\x61\x74\x68\x22\x3B\x0A\x20\x20\x76\x61\x72\x20\x49\x44\x5F\x53\x54\x44\x4F\x55\x54\x20\x3D\x20\x22\x73\x74\x64\x6F\x75\x74\x22\x3B\x0A\x20\x20\x76\x61\x72\x20\x49\x44\x5F\x53\x54\x44\x45\x52\x52\x20\x3D\x20\x22\x73\x74\x64\x65\x72\x72\x22\x3B\x0A\x20\x20\x76\x61\x72\x20\x4D\x41\x58\x5F\x46\x49\x4C\x45\x5F\x53\x49\x5A\x45\x20\x3D\x20\x33\x65\x36\x3B\x0A\x20\x20\x66\x75\x6E\x63\x74\x69\x6F\x6E\x20\x72\x65\x6E\x64\x65\x72\x48\x74\x6D\x6C\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x6C\x65\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\x65\x6C\x2E\x63\x6C\x61\x73\x73\x4C\x69\x73\x74\x2E\x61\x64\x64\x28\x22\x61\x77\x77\x61\x6E\x22\x29\x3B\x0A\x20\x20\x20\x20\x65\x6C\x2E\x69\x6E\x6E\x65\x72\x48\x54\x4D\x4C\x20\x3D\x20\x60\x0A\x09\x09\x09\x3C\x64\x69\x76\x20\x63\x6C\x61\x73\x73\x3D\x22\x61\x77\x77\x61\x6E\x5F\x6E\x61\x76\x5F\x6C\x65\x66\x74\x22\x3E\x0A\x09\x09\x09\x09\x3C\x64\x69\x76\x20\x69\x64\x3D\x22\x24\x7B\x49\x44\x5F\x56\x46\x53\x7D\x22\x3E\x3C\x2F\x64\x69\x76\x3E\x0A\x0A\x09\x09\x09\x09\x3C\x62\x72\x2F\x3E\x0A\x09\x09\x09\x09\x3C\x64\x69\x76\x20\x63\x6C\x61\x73\x73\x3D\x22\x24\x7B\x49\x44\x5F\x49\x4E\x50\x5F\x56\x46\x53\x5F\x4E\x45\x57\x7D\x22\x3E\x0A\x09\x09\x09\x09\x09\x3C\x69\x6E\x70\x75\x74\x20\x69\x64\x3D\x22\x24\x7B\x49\x44\x5F\x49\x4E\x50\x5F\x56\x46\x53\x5F\x4E\x45\x57\x7D\x22\x20\x2F\x3E\x0A\x09\x09\x09\x09\x3C\x2F\x64\x69\x76\x3E\x0A\x09\x09\x09\x09\x3C\x62\x75\x74\x74\x6F\x6E\x20\x69\x64\x3D\x22\x24\x7B\x49\x44\x5F\x42\x54\x4E\x5F\x4E\x45\x57\x5F\x44\x49\x52\x7D\x22\x3E\x4E\x65\x77\x20\x64\x69\x72\x65\x63\x74\x6F\x72\x79\x3C\x2F\x62\x75\x74\x74\x6F\x6E\x3E\x0A\x09\x09\x09\x09\x3C\x62\x75\x74\x74\x6F\x6E\x20\x69\x64\x3D\x22\x24\x7B\x49\x44\x5F\x42\x54\x4E\x5F\x4E\x45\x57\x5F\x46\x49\x4C\x45\x7D\x22\x3E\x4E\x65\x77\x20\x66\x69\x6C\x65\x3C\x2F\x62\x75\x74\x74\x6F\x6E\x3E\x0A\x09\x09\x09\x09\x3C\x62\x75\x74\x74\x6F\x6E\x20\x69\x64\x3D\x22\x24\x7B\x49\x44\x5F\x42\x54\x4E\x5F\x52\x45\x4D\x4F\x56\x45\x7D\x22\x3E\x52\x65\x6D\x6F\x76\x65\x3C\x2F\x62\x75\x74\x74\x6F\x6E\x3E\x0A\x09\x09\x09\x3C\x2F\x64\x69\x76\x3E\x0A\x09\x09\x09\x3C\x64\x69\x76\x20\x63\x6C\x61\x73\x73\x3D\x22\x61\x77\x77\x61\x6E\x5F\x63\x6F\x6E\x74\x65\x6E\x74\x22\x3E\x0A\x09\x09\x09\x09\x3C\x64\x69\x76\x20\x63\x6C\x61\x73\x73\x3D\x22\x65\x64\x69\x74\x6F\x72\x5F\x66\x69\x6C\x65\x22\x3E\x0A\x09\x09\x09\x09\x09\x46\x69\x6C\x65\x3A\x20\x3C\x73\x70\x61\x6E\x20\x69\x64\x3D\x22\x24\x7B\x49\x44\x5F\x56\x46\x53\x5F\x50\x41\x54\x48\x7D\x22\x3E\x2D\x3C\x2F\x73\x70\x61\x6E\x3E\x0A\x09\x09\x09\x09\x09\x3C\x62\x75\x74\x74\x6F\x6E\x20\x69\x64\x3D\x22\x24\x7B\x49\x44\x5F\x42\x54\x4E\x5F\x53\x41\x56\x45\x7D\x22\x20\x64\x69\x73\x61\x62\x6C\x65\x64\x3D\x22\x74\x72\x75\x65\x22\x3E\x53\x61\x76\x65\x3C\x2F\x62\x75\x74\x74\x6F\x6E\x3E\x0A\x09\x09\x09\x09\x3C\x2F\x64\x69\x76\x3E\x0A\x09\x09\x09\x09\x3C\x64\x69\x76\x20\x69\x64\x3D\x22\x24\x7B\x49\x44\x5F\x45\x44\x49\x54\x4F\x52\x7D\x22\x3E\x3C\x2F\x64\x69\x76\x3E\x0A\x09\x09\x09\x09\x3C\x64\x69\x76\x3E\x0A\x09\x09\x09\x09\x09\x3C\x64\x69\x76\x20\x63\x6C\x61\x73\x73\x3D\x22\x24\x7B\x43\x4C\x41\x53\x53\x5F\x45\x44\x49\x54\x4F\x52\x5F\x41\x43\x54\x49\x4F\x4E\x7D\x22\x3E\x0A\x09\x09\x09\x09\x09\x09\x3C\x62\x75\x74\x74\x6F\x6E\x20\x69\x64\x3D\x22\x24\x7B\x49\x44\x5F\x42\x54\x4E\x5F\x43\x4C\x45\x41\x52\x5F\x53\x45\x4C\x45\x43\x54\x49\x4F\x4E\x7D\x22\x3E\x43\x6C\x65\x61\x72\x20\x73\x65\x6C\x65\x63\x74\x69\x6F\x6E\x3C\x2F\x62\x75\x74\x74\x6F\x6E\x3E\x0A\x09\x09\x09\x09\x09\x3C\x2F\x64\x69\x76\x3E\x0A\x09\x09\x09\x09\x09\x3C\x64\x69\x76\x20\x63\x6C\x61\x73\x73\x3D\x22\x24\x7B\x43\x4C\x41\x53\x53\x5F\x45\x44\x49\x54\x4F\x52\x5F\x41\x43\x54\x49\x4F\x4E\x7D\x22\x3E\x0A\x09\x09\x09\x09\x09\x09\x45\x78\x65\x63\x75\x74\x65\x20\x73\x63\x72\x69\x70\x74\x20\x6F\x6E\x0A\x09\x09\x09\x09\x09\x09\x3C\x62\x75\x74\x74\x6F\x6E\x20\x69\x64\x3D\x22\x24\x7B\x49\x44\x5F\x42\x54\x4E\x5F\x45\x58\x45\x43\x5F\x4C\x4F\x43\x41\x4C\x7D\x22\x20\x64\x69\x73\x61\x62\x6C\x65\x64\x3D\x22\x74\x72\x75\x65\x22\x3E\x4C\x6F\x63\x61\x6C\x3C\x2F\x62\x75\x74\x74\x6F\x6E\x3E\x0A\x09\x09\x09\x09\x09\x09\x6F\x72\x0A\x09\x09\x09\x09\x09\x09\x3C\x62\x75\x74\x74\x6F\x6E\x20\x69\x64\x3D\x22\x24\x7B\x49\x44\x5F\x42\x54\x4E\x5F\x45\x58\x45\x43\x5F\x52\x45\x4D\x4F\x54\x45\x7D\x22\x20\x64\x69\x73\x61\x62\x6C\x65\x64\x3D\x22\x74\x72\x75\x65\x22\x3E\x52\x65\x6D\x6F\x74\x65\x3C\x2F\x62\x75\x74\x74\x6F\x6E\x3E\x0A\x09\x09\x09\x09\x09\x3C\x2F\x64\x69\x76\x3E\x0A\x09\x09\x09\x09\x3C\x2F\x64\x69\x76\x3E\x0A\x09\x09\x09\x09\x3C\x70\x3E\x48\x69\x6E\x74\x73\x3A\x3C\x2F\x70\x3E\x0A\x09\x09\x09\x09\x3C\x75\x6C\x3E\x0A\x09\x09\x09\x09\x09\x3C\x6C\x69\x3E\x0A\x09\x09\x09\x09\x09\x09\x43\x6C\x69\x63\x6B\x20\x61\x6E\x64\x20\x64\x72\x61\x67\x20\x6F\x6E\x20\x74\x68\x65\x20\x6C\x69\x6E\x65\x20\x6E\x75\x6D\x62\x65\x72\x73\x20\x74\x6F\x20\x73\x65\x6C\x65\x63\x74\x20\x74\x68\x65\x20\x73\x70\x65\x63\x69\x66\x69\x63\x20\x6C\x69\x6E\x65\x20\x74\x6F\x20\x62\x65\x0A\x09\x09\x09\x09\x09\x09\x65\x78\x65\x63\x75\x74\x65\x64\x2E\x0A\x09\x09\x09\x09\x09\x3C\x2F\x6C\x69\x3E\x0A\x09\x09\x09\x09\x09\x3C\x6C\x69\x3E\x50\x72\x65\x73\x73\x20\x45\x53\x43\x20\x74\x6F\x20\x63\x6C\x65\x61\x72\x20\x73\x65\x6C\x65\x63\x74\x69\x6F\x6E\x2E\x3C\x2F\x6C\x69\x3E\x0A\x09\x09\x09\x09\x3C\x2F\x75\x6C\x3E\x0A\x09\x09\x09\x09\x3C\x64\x69\x76\x20\x63\x6C\x61\x73\x73\x3D\x22\x62\x6F\x78\x68\x65\x61\x64\x65\x72\x22\x3E\x53\x74\x61\x6E\x64\x61\x72\x64\x20\x6F\x75\x74\x70\x75\x74\x3A\x3C\x2F\x64\x69\x76\x3E\x0A\x09\x09\x09\x09\x3C\x64\x69\x76\x20\x69\x64\x3D\x22\x24\x7B\x49\x44\x5F\x53\x54\x44\x4F\x55\x54\x7D\x22\x3E\x3C\x2F\x64\x69\x76\x3E\x0A\x09\x09\x09\x09\x3C\x64\x69\x76\x20\x63\x6C\x61\x73\x73\x3D\x22\x62\x6F\x78\x68\x65\x61\x64\x65\x72\x22\x3E\x53\x74\x61\x6E\x64\x61\x72\x64\x20\x65\x72\x72\x6F\x72\x3A\x3C\x2F\x64\x69\x76\x3E\x0A\x09\x09\x09\x09\x3C\x64\x69\x76\x20\x69\x64\x3D\x22\x24\x7B\x49\x44\x5F\x53\x54\x44\x45\x52\x52\x7D\x22\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\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x62\x6F\x64\x79\x2E\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64\x28\x65\x6C\x29\x3B\x0A\x20\x20\x7D\x0A\x20\x20\x76\x61\x72\x20\x41\x77\x77\x61\x6E\x20\x3D\x20\x63\x6C\x61\x73\x73\x20\x7B\x0A\x20\x20\x20\x20\x63\x6F\x6D\x5F\x62\x74\x6E\x5F\x63\x6C\x65\x61\x72\x3B\x0A\x20\x20\x20\x20\x63\x6F\x6D\x5F\x62\x74\x6E\x5F\x6C\x6F\x63\x61\x6C\x3B\x0A\x20\x20\x20\x20\x63\x6F\x6D\x5F\x62\x74\x6E\x5F\x6E\x65\x77\x5F\x64\x69\x72\x3B\x0A\x20\x20\x20\x20\x63\x6F\x6D\x5F\x62\x74\x6E\x5F\x6E\x65\x77\x5F\x66\x69\x6C\x65\x3B\x0A\x20\x20\x20\x20\x63\x6F\x6D\x5F\x62\x74\x6E\x5F\x72\x65\x6D\x6F\x74\x65\x3B\x0A\x20\x20\x20\x20\x63\x6F\x6D\x5F\x62\x74\x6E\x5F\x72\x65\x6D\x6F\x76\x65\x3B\x0A\x20\x20\x20\x20\x63\x6F\x6D\x5F\x62\x74\x6E\x5F\x73\x61\x76\x65\x3B\x0A\x20\x20\x20\x20\x63\x6F\x6D\x5F\x66\x69\x6C\x65\x5F\x70\x61\x74\x68\x3B\x0A\x20\x20\x20\x20\x63\x6F\x6D\x5F\x69\x6E\x70\x5F\x76\x66\x73\x5F\x6E\x65\x77\x3B\x0A\x20\x20\x20\x20\x63\x6F\x6D\x5F\x73\x74\x64\x6F\x75\x74\x3B\x0A\x20\x20\x20\x20\x63\x6F\x6D\x5F\x73\x74\x64\x65\x72\x72\x3B\x0A\x20\x20\x20\x20\x63\x75\x72\x72\x65\x6E\x74\x5F\x6E\x6F\x64\x65\x20\x3D\x20\x6E\x75\x6C\x6C\x3B\x0A\x20\x20\x20\x20\x72\x65\x71\x75\x65\x73\x74\x20\x3D\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x6D\x6F\x64\x65\x3A\x20\x22\x6C\x6F\x63\x61\x6C\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x73\x63\x72\x69\x70\x74\x3A\x20\x22\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x74\x65\x6E\x74\x3A\x20\x22\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x6C\x69\x6E\x65\x5F\x72\x61\x6E\x67\x65\x3A\x20\x30\x0A\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x77\x75\x69\x5F\x65\x64\x69\x74\x6F\x72\x3B\x0A\x20\x20\x20\x20\x77\x75\x69\x5F\x6E\x6F\x74\x69\x66\x3B\x0A\x20\x20\x20\x20\x77\x75\x69\x5F\x76\x66\x73\x3B\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\x6C\x65\x74\x20\x65\x6C\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x67\x65\x74\x45\x6C\x65\x6D\x65\x6E\x74\x42\x79\x49\x64\x28\x49\x44\x5F\x42\x54\x4E\x5F\x43\x4C\x45\x41\x52\x5F\x53\x45\x4C\x45\x43\x54\x49\x4F\x4E\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x65\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x62\x74\x6E\x5F\x63\x6C\x65\x61\x72\x20\x3D\x20\x65\x6C\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x62\x74\x6E\x5F\x63\x6C\x65\x61\x72\x2E\x6F\x6E\x63\x6C\x69\x63\x6B\x20\x3D\x20\x28\x29\x20\x3D\x3E\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x77\x75\x69\x5F\x65\x64\x69\x74\x6F\x72\x2E\x43\x6C\x65\x61\x72\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x65\x6C\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x67\x65\x74\x45\x6C\x65\x6D\x65\x6E\x74\x42\x79\x49\x64\x28\x49\x44\x5F\x42\x54\x4E\x5F\x45\x58\x45\x43\x5F\x4C\x4F\x43\x41\x4C\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x65\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x62\x74\x6E\x5F\x6C\x6F\x63\x61\x6C\x20\x3D\x20\x65\x6C\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x62\x74\x6E\x5F\x6C\x6F\x63\x61\x6C\x2E\x6F\x6E\x63\x6C\x69\x63\x6B\x20\x3D\x20\x28\x29\x20\x3D\x3E\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x78\x65\x63\x4C\x6F\x63\x61\x6C\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x65\x6C\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x67\x65\x74\x45\x6C\x65\x6D\x65\x6E\x74\x42\x79\x49\x64\x28\x49\x44\x5F\x42\x54\x4E\x5F\x45\x58\x45\x43\x5F\x52\x45\x4D\x4F\x54\x45\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x65\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x62\x74\x6E\x5F\x72\x65\x6D\x6F\x74\x65\x20\x3D\x20\x65\x6C\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x62\x74\x6E\x5F\x72\x65\x6D\x6F\x74\x65\x2E\x6F\x6E\x63\x6C\x69\x63\x6B\x20\x3D\x20\x28\x29\x20\x3D\x3E\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x78\x65\x63\x52\x65\x6D\x6F\x74\x65\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x65\x6C\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x67\x65\x74\x45\x6C\x65\x6D\x65\x6E\x74\x42\x79\x49\x64\x28\x49\x44\x5F\x42\x54\x4E\x5F\x4E\x45\x57\x5F\x44\x49\x52\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x65\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x62\x74\x6E\x5F\x6E\x65\x77\x5F\x64\x69\x72\x20\x3D\x20\x65\x6C\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x62\x74\x6E\x5F\x6E\x65\x77\x5F\x64\x69\x72\x2E\x6F\x6E\x63\x6C\x69\x63\x6B\x20\x3D\x20\x28\x29\x20\x3D\x3E\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6E\x65\x77\x4E\x6F\x64\x65\x28\x74\x72\x75\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x65\x6C\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x67\x65\x74\x45\x6C\x65\x6D\x65\x6E\x74\x42\x79\x49\x64\x28\x49\x44\x5F\x42\x54\x4E\x5F\x4E\x45\x57\x5F\x46\x49\x4C\x45\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x65\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x62\x74\x6E\x5F\x6E\x65\x77\x5F\x66\x69\x6C\x65\x20\x3D\x20\x65\x6C\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x62\x74\x6E\x5F\x6E\x65\x77\x5F\x66\x69\x6C\x65\x2E\x6F\x6E\x63\x6C\x69\x63\x6B\x20\x3D\x20\x28\x29\x20\x3D\x3E\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6E\x65\x77\x4E\x6F\x64\x65\x28\x66\x61\x6C\x73\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x65\x6C\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x67\x65\x74\x45\x6C\x65\x6D\x65\x6E\x74\x42\x79\x49\x64\x28\x49\x44\x5F\x42\x54\x4E\x5F\x52\x45\x4D\x4F\x56\x45\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x65\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x62\x74\x6E\x5F\x72\x65\x6D\x6F\x76\x65\x20\x3D\x20\x65\x6C\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x62\x74\x6E\x5F\x72\x65\x6D\x6F\x76\x65\x2E\x6F\x6E\x63\x6C\x69\x63\x6B\x20\x3D\x20\x28\x29\x20\x3D\x3E\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6F\x6E\x43\x6C\x69\x63\x6B\x52\x65\x6D\x6F\x76\x65\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x65\x6C\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x67\x65\x74\x45\x6C\x65\x6D\x65\x6E\x74\x42\x79\x49\x64\x28\x49\x44\x5F\x42\x54\x4E\x5F\x53\x41\x56\x45\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x65\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x62\x74\x6E\x5F\x73\x61\x76\x65\x20\x3D\x20\x65\x6C\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x62\x74\x6E\x5F\x73\x61\x76\x65\x2E\x6F\x6E\x63\x6C\x69\x63\x6B\x20\x3D\x20\x28\x29\x20\x3D\x3E\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6F\x6E\x43\x6C\x69\x63\x6B\x53\x61\x76\x65\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x65\x6C\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x67\x65\x74\x45\x6C\x65\x6D\x65\x6E\x74\x42\x79\x49\x64\x28\x49\x44\x5F\x49\x4E\x50\x5F\x56\x46\x53\x5F\x4E\x45\x57\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x65\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x69\x6E\x70\x5F\x76\x66\x73\x5F\x6E\x65\x77\x20\x3D\x20\x65\x6C\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x65\x6C\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x67\x65\x74\x45\x6C\x65\x6D\x65\x6E\x74\x42\x79\x49\x64\x28\x49\x44\x5F\x56\x46\x53\x5F\x50\x41\x54\x48\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x65\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x66\x69\x6C\x65\x5F\x70\x61\x74\x68\x20\x3D\x20\x65\x6C\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x65\x6C\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x67\x65\x74\x45\x6C\x65\x6D\x65\x6E\x74\x42\x79\x49\x64\x28\x49\x44\x5F\x53\x54\x44\x4F\x55\x54\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x65\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x73\x74\x64\x6F\x75\x74\x20\x3D\x20\x65\x6C\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x65\x6C\x20\x3D\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x2E\x67\x65\x74\x45\x6C\x65\x6D\x65\x6E\x74\x42\x79\x49\x64\x28\x49\x44\x5F\x53\x54\x44\x45\x52\x52\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x65\x6C\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x73\x74\x64\x65\x72\x72\x20\x3D\x20\x65\x6C\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x6C\x65\x74\x20\x65\x64\x69\x74\x6F\x72\x5F\x6F\x70\x74\x73\x20\x3D\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x64\x3A\x20\x49\x44\x5F\x45\x44\x49\x54\x4F\x52\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x73\x5F\x65\x64\x69\x74\x61\x62\x6C\x65\x3A\x20\x74\x72\x75\x65\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x4F\x6E\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x3A\x20\x28\x62\x65\x67\x69\x6E\x5F\x61\x74\x2C\x20\x65\x6E\x64\x5F\x61\x74\x29\x20\x3D\x3E\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x65\x64\x69\x74\x6F\x72\x4F\x6E\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x28\x62\x65\x67\x69\x6E\x5F\x61\x74\x2C\x20\x65\x6E\x64\x5F\x61\x74\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x4F\x6E\x53\x61\x76\x65\x3A\x20\x74\x68\x69\x73\x2E\x65\x64\x69\x74\x6F\x72\x4F\x6E\x53\x61\x76\x65\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x77\x75\x69\x5F\x65\x64\x69\x74\x6F\x72\x20\x3D\x20\x6E\x65\x77\x20\x57\x75\x69\x45\x64\x69\x74\x6F\x72\x28\x65\x64\x69\x74\x6F\x72\x5F\x6F\x70\x74\x73\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x77\x75\x69\x5F\x6E\x6F\x74\x69\x66\x20\x3D\x20\x6E\x65\x77\x20\x57\x75\x69\x4E\x6F\x74\x69\x66\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x6C\x65\x74\x20\x77\x75\x69\x5F\x76\x66\x73\x5F\x6F\x70\x74\x73\x20\x3D\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x64\x3A\x20\x49\x44\x5F\x56\x46\x53\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x4F\x70\x65\x6E\x3A\x20\x28\x70\x61\x74\x68\x2C\x20\x69\x73\x5F\x64\x69\x72\x29\x20\x3D\x3E\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x74\x68\x69\x73\x2E\x4F\x70\x65\x6E\x28\x70\x61\x74\x68\x2C\x20\x69\x73\x5F\x64\x69\x72\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x4F\x70\x65\x6E\x4E\x6F\x64\x65\x3A\x20\x28\x6E\x6F\x64\x65\x29\x20\x3D\x3E\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x74\x68\x69\x73\x2E\x4F\x70\x65\x6E\x4E\x6F\x64\x65\x28\x6E\x6F\x64\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x77\x75\x69\x5F\x76\x66\x73\x20\x3D\x20\x6E\x65\x77\x20\x57\x75\x69\x56\x66\x73\x28\x77\x75\x69\x5F\x76\x66\x73\x5F\x6F\x70\x74\x73\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x77\x69\x6E\x64\x6F\x77\x2E\x6F\x6E\x68\x61\x73\x68\x63\x68\x61\x6E\x67\x65\x20\x3D\x20\x28\x65\x76\x29\x20\x3D\x3E\x20\x7B\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\x6C\x65\x74\x20\x68\x61\x73\x68\x63\x68\x61\x6E\x67\x65\x20\x3D\x20\x65\x76\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x6C\x65\x74\x20\x75\x72\x6C\x20\x3D\x20\x6E\x65\x77\x20\x55\x52\x4C\x28\x68\x61\x73\x68\x63\x68\x61\x6E\x67\x65\x2E\x6E\x65\x77\x55\x52\x4C\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6F\x6E\x48\x61\x73\x68\x43\x68\x61\x6E\x67\x65\x28\x75\x72\x6C\x2E\x68\x61\x73\x68\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x6F\x6E\x48\x61\x73\x68\x43\x68\x61\x6E\x67\x65\x28\x77\x69\x6E\x64\x6F\x77\x2E\x6C\x6F\x63\x61\x74\x69\x6F\x6E\x2E\x68\x61\x73\x68\x29\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x6F\x6E\x48\x61\x73\x68\x43\x68\x61\x6E\x67\x65\x28\x68\x61\x73\x68\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x68\x61\x73\x68\x20\x3D\x3D\x3D\x20\x22\x22\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x68\x61\x73\x68\x20\x3D\x20\x22\x23\x2F\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x68\x61\x73\x68\x20\x3D\x20\x68\x61\x73\x68\x2E\x73\x75\x62\x73\x74\x72\x69\x6E\x67\x28\x31\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x77\x75\x69\x5F\x76\x66\x73\x2E\x4F\x70\x65\x6E\x44\x69\x72\x28\x68\x61\x73\x68\x29\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x2F\x2F\x20\x4F\x70\x65\x6E\x20\x66\x65\x74\x63\x68\x20\x74\x68\x65\x20\x6E\x6F\x64\x65\x20\x63\x6F\x6E\x74\x65\x6E\x74\x20\x66\x72\x6F\x6D\x20\x72\x65\x6D\x6F\x74\x65\x20\x73\x65\x72\x76\x65\x72\x2E\x0A\x20\x20\x20\x20\x61\x73\x79\x6E\x63\x20\x4F\x70\x65\x6E\x28\x70\x61\x74\x68\x2C\x20\x69\x73\x5F\x64\x69\x72\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x6C\x65\x74\x20\x68\x74\x74\x70\x5F\x72\x65\x73\x20\x3D\x20\x61\x77\x61\x69\x74\x20\x66\x65\x74\x63\x68\x28\x22\x2F\x61\x77\x77\x61\x6E\x2F\x61\x70\x69\x2F\x66\x73\x3F\x70\x61\x74\x68\x3D\x22\x20\x2B\x20\x70\x61\x74\x68\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x6C\x65\x74\x20\x72\x65\x73\x20\x3D\x20\x61\x77\x61\x69\x74\x20\x68\x74\x74\x70\x5F\x72\x65\x73\x2E\x6A\x73\x6F\x6E\x28\x29\x3B\x0A\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\x74\x68\x69\x73\x2E\x77\x75\x69\x5F\x6E\x6F\x74\x69\x66\x2E\x45\x72\x72\x6F\x72\x28\x60\x46\x61\x69\x6C\x65\x64\x20\x74\x6F\x20\x6F\x70\x65\x6E\x20\x24\x7B\x70\x61\x74\x68\x7D\x3A\x20\x24\x7B\x72\x65\x73\x2E\x6D\x65\x73\x73\x61\x67\x65\x7D\x60\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x72\x65\x73\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x6C\x65\x74\x20\x6E\x6F\x64\x65\x20\x3D\x20\x72\x65\x73\x2E\x64\x61\x74\x61\x3B\x0A\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x69\x6E\x70\x5F\x76\x66\x73\x5F\x6E\x65\x77\x2E\x76\x61\x6C\x75\x65\x20\x3D\x20\x6E\x6F\x64\x65\x2E\x6E\x61\x6D\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x69\x73\x5F\x64\x69\x72\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x75\x72\x72\x65\x6E\x74\x5F\x6E\x6F\x64\x65\x20\x3D\x20\x6E\x6F\x64\x65\x3B\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\x22\x20\x2B\x20\x70\x61\x74\x68\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x72\x65\x73\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x6C\x65\x74\x20\x72\x65\x73\x41\x6C\x6C\x6F\x77\x20\x3D\x20\x74\x68\x69\x73\x2E\x69\x73\x45\x64\x69\x74\x41\x6C\x6C\x6F\x77\x65\x64\x28\x6E\x6F\x64\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x72\x65\x73\x41\x6C\x6C\x6F\x77\x2E\x63\x6F\x64\x65\x20\x21\x3D\x20\x32\x30\x30\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x77\x75\x69\x5F\x6E\x6F\x74\x69\x66\x2E\x45\x72\x72\x6F\x72\x28\x72\x65\x73\x41\x6C\x6C\x6F\x77\x2E\x6D\x65\x73\x73\x61\x67\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x72\x65\x73\x41\x6C\x6C\x6F\x77\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x66\x69\x6C\x65\x5F\x70\x61\x74\x68\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x70\x61\x74\x68\x3B\x0A\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x65\x71\x75\x65\x73\x74\x2E\x73\x63\x72\x69\x70\x74\x20\x3D\x20\x70\x61\x74\x68\x3B\x0A\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x77\x75\x69\x5F\x65\x64\x69\x74\x6F\x72\x2E\x4F\x70\x65\x6E\x28\x6E\x6F\x64\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x62\x74\x6E\x5F\x6C\x6F\x63\x61\x6C\x2E\x64\x69\x73\x61\x62\x6C\x65\x64\x20\x3D\x20\x66\x61\x6C\x73\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x62\x74\x6E\x5F\x72\x65\x6D\x6F\x74\x65\x2E\x64\x69\x73\x61\x62\x6C\x65\x64\x20\x3D\x20\x66\x61\x6C\x73\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x62\x74\x6E\x5F\x73\x61\x76\x65\x2E\x64\x69\x73\x61\x62\x6C\x65\x64\x20\x3D\x20\x66\x61\x6C\x73\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x72\x65\x73\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x2F\x2F\x20\x4F\x70\x65\x6E\x4E\x6F\x64\x65\x20\x69\x73\x20\x61\x6E\x20\x68\x61\x6E\x64\x6C\x65\x72\x20\x74\x68\x61\x74\x20\x77\x69\x6C\x6C\x20\x63\x61\x6C\x6C\x65\x64\x20\x77\x68\x65\x6E\x20\x75\x73\x65\x72\x20\x63\x6C\x69\x63\x6B\x20\x6F\x6E\x20\x6F\x66\x20\x74\x68\x65\x0A\x20\x20\x20\x20\x2F\x2F\x20\x69\x74\x65\x6D\x20\x69\x6E\x20\x74\x68\x65\x20\x6C\x69\x73\x74\x2E\x0A\x20\x20\x20\x20\x61\x73\x79\x6E\x63\x20\x4F\x70\x65\x6E\x4E\x6F\x64\x65\x28\x6E\x6F\x64\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x6C\x65\x74\x20\x72\x65\x73\x41\x6C\x6C\x6F\x77\x20\x3D\x20\x74\x68\x69\x73\x2E\x69\x73\x45\x64\x69\x74\x41\x6C\x6C\x6F\x77\x65\x64\x28\x6E\x6F\x64\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x72\x65\x73\x41\x6C\x6C\x6F\x77\x2E\x63\x6F\x64\x65\x20\x21\x3D\x20\x32\x30\x30\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x77\x75\x69\x5F\x6E\x6F\x74\x69\x66\x2E\x45\x72\x72\x6F\x72\x28\x72\x65\x73\x41\x6C\x6C\x6F\x77\x2E\x6D\x65\x73\x73\x61\x67\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x72\x65\x73\x41\x6C\x6C\x6F\x77\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x6C\x65\x74\x20\x72\x65\x73\x20\x3D\x20\x61\x77\x61\x69\x74\x20\x74\x68\x69\x73\x2E\x4F\x70\x65\x6E\x28\x6E\x6F\x64\x65\x2E\x70\x61\x74\x68\x2C\x20\x6E\x6F\x64\x65\x2E\x69\x73\x5F\x64\x69\x72\x29\x3B\x0A\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\x69\x73\x45\x64\x69\x74\x41\x6C\x6C\x6F\x77\x65\x64\x28\x6E\x6F\x64\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x6C\x65\x74\x20\x72\x65\x73\x20\x3D\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x64\x65\x3A\x20\x34\x31\x32\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x6D\x65\x73\x73\x61\x67\x65\x3A\x20\x22\x22\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x6C\x65\x74\x20\x69\x73\x5F\x74\x79\x70\x65\x5F\x61\x6C\x6C\x6F\x77\x65\x64\x20\x3D\x20\x66\x61\x6C\x73\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x6E\x6F\x64\x65\x2E\x63\x6F\x6E\x74\x65\x6E\x74\x5F\x74\x79\x70\x65\x20\x26\x26\x20\x28\x6E\x6F\x64\x65\x2E\x63\x6F\x6E\x74\x65\x6E\x74\x5F\x74\x79\x70\x65\x2E\x69\x6E\x64\x65\x78\x4F\x66\x28\x22\x6A\x73\x6F\x6E\x22\x29\x20\x3E\x3D\x20\x30\x20\x7C\x7C\x20\x6E\x6F\x64\x65\x2E\x63\x6F\x6E\x74\x65\x6E\x74\x5F\x74\x79\x70\x65\x2E\x69\x6E\x64\x65\x78\x4F\x66\x28\x22\x6D\x65\x73\x73\x61\x67\x65\x22\x29\x20\x3E\x3D\x20\x30\x20\x7C\x7C\x20\x6E\x6F\x64\x65\x2E\x63\x6F\x6E\x74\x65\x6E\x74\x5F\x74\x79\x70\x65\x2E\x69\x6E\x64\x65\x78\x4F\x66\x28\x22\x73\x63\x72\x69\x70\x74\x22\x29\x20\x3E\x3D\x20\x30\x20\x7C\x7C\x20\x6E\x6F\x64\x65\x2E\x63\x6F\x6E\x74\x65\x6E\x74\x5F\x74\x79\x70\x65\x2E\x69\x6E\x64\x65\x78\x4F\x66\x28\x22\x74\x65\x78\x74\x22\x29\x20\x3E\x3D\x20\x30\x20\x7C\x7C\x20\x6E\x6F\x64\x65\x2E\x63\x6F\x6E\x74\x65\x6E\x74\x5F\x74\x79\x70\x65\x2E\x69\x6E\x64\x65\x78\x4F\x66\x28\x22\x78\x6D\x6C\x22\x29\x20\x3E\x3D\x20\x30\x29\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x73\x5F\x74\x79\x70\x65\x5F\x61\x6C\x6C\x6F\x77\x65\x64\x20\x3D\x20\x74\x72\x75\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x21\x69\x73\x5F\x74\x79\x70\x65\x5F\x61\x6C\x6C\x6F\x77\x65\x64\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x73\x2E\x6D\x65\x73\x73\x61\x67\x65\x20\x3D\x20\x60\x54\x68\x65\x20\x66\x69\x6C\x65\x20\x22\x24\x7B\x6E\x6F\x64\x65\x2E\x6E\x61\x6D\x65\x7D\x22\x20\x77\x69\x74\x68\x20\x63\x6F\x6E\x74\x65\x6E\x74\x20\x74\x79\x70\x65\x20\x22\x24\x7B\x6E\x6F\x64\x65\x2E\x63\x6F\x6E\x74\x65\x6E\x74\x5F\x74\x79\x70\x65\x7D\x22\x20\x69\x73\x20\x6E\x6F\x74\x20\x61\x6C\x6C\x6F\x77\x65\x64\x20\x74\x6F\x20\x62\x65\x20\x6F\x70\x65\x6E\x65\x64\x60\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x72\x65\x73\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x6E\x6F\x64\x65\x2E\x73\x69\x7A\x65\x20\x26\x26\x20\x6E\x6F\x64\x65\x2E\x73\x69\x7A\x65\x20\x3E\x20\x4D\x41\x58\x5F\x46\x49\x4C\x45\x5F\x53\x49\x5A\x45\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x73\x2E\x6D\x65\x73\x73\x61\x67\x65\x20\x3D\x20\x60\x54\x68\x65\x20\x66\x69\x6C\x65\x20\x22\x24\x7B\x6E\x6F\x64\x65\x2E\x6E\x61\x6D\x65\x7D\x22\x20\x77\x69\x74\x68\x20\x73\x69\x7A\x65\x20\x24\x7B\x6E\x6F\x64\x65\x2E\x73\x69\x7A\x65\x20\x2F\x20\x31\x65\x36\x7D\x4D\x42\x20\x69\x73\x20\x67\x72\x65\x61\x74\x65\x72\x20\x74\x68\x61\x6E\x20\x6D\x61\x78\x69\x6D\x75\x6D\x20\x24\x7B\x4D\x41\x58\x5F\x46\x49\x4C\x45\x5F\x53\x49\x5A\x45\x20\x2F\x20\x31\x65\x36\x7D\x4D\x42\x2E\x60\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x72\x65\x73\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x72\x65\x73\x2E\x63\x6F\x64\x65\x20\x3D\x20\x32\x30\x30\x3B\x0A\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x20\x72\x65\x73\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x6F\x6E\x43\x6C\x69\x63\x6B\x53\x61\x76\x65\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x72\x65\x71\x75\x65\x73\x74\x2E\x73\x63\x72\x69\x70\x74\x20\x3D\x3D\x20\x22\x22\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x6C\x65\x74\x20\x63\x6F\x6E\x74\x65\x6E\x74\x20\x3D\x20\x74\x68\x69\x73\x2E\x77\x75\x69\x5F\x65\x64\x69\x74\x6F\x72\x2E\x47\x65\x74\x43\x6F\x6E\x74\x65\x6E\x74\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x6C\x65\x74\x20\x6C\x20\x3D\x20\x63\x6F\x6E\x74\x65\x6E\x74\x2E\x6C\x65\x6E\x67\x74\x68\x3B\x0A\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x6C\x20\x3E\x20\x30\x20\x26\x26\x20\x63\x6F\x6E\x74\x65\x6E\x74\x5B\x6C\x20\x2D\x20\x31\x5D\x20\x21\x3D\x20\x22\x5C\x6E\x22\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x74\x65\x6E\x74\x20\x2B\x3D\x20\x22\x5C\x6E\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x65\x71\x75\x65\x73\x74\x2E\x63\x6F\x6E\x74\x65\x6E\x74\x20\x3D\x20\x63\x6F\x6E\x74\x65\x6E\x74\x3B\x0A\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x64\x6F\x53\x61\x76\x65\x46\x69\x6C\x65\x28\x74\x68\x69\x73\x2E\x72\x65\x71\x75\x65\x73\x74\x2E\x73\x63\x72\x69\x70\x74\x2C\x20\x74\x68\x69\x73\x2E\x72\x65\x71\x75\x65\x73\x74\x2E\x63\x6F\x6E\x74\x65\x6E\x74\x29\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x65\x64\x69\x74\x6F\x72\x4F\x6E\x53\x61\x76\x65\x28\x63\x6F\x6E\x74\x65\x6E\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x64\x6F\x53\x61\x76\x65\x46\x69\x6C\x65\x28\x74\x68\x69\x73\x2E\x72\x65\x71\x75\x65\x73\x74\x2E\x73\x63\x72\x69\x70\x74\x2C\x20\x63\x6F\x6E\x74\x65\x6E\x74\x29\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x61\x73\x79\x6E\x63\x20\x64\x6F\x53\x61\x76\x65\x46\x69\x6C\x65\x28\x70\x61\x74\x68\x2C\x20\x63\x6F\x6E\x74\x65\x6E\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x6C\x65\x74\x20\x72\x65\x71\x20\x3D\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x70\x61\x74\x68\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x74\x65\x6E\x74\x3A\x20\x62\x74\x6F\x61\x28\x63\x6F\x6E\x74\x65\x6E\x74\x29\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x6C\x65\x74\x20\x68\x74\x74\x70\x5F\x72\x65\x73\x20\x3D\x20\x61\x77\x61\x69\x74\x20\x66\x65\x74\x63\x68\x28\x22\x2F\x61\x77\x77\x61\x6E\x2F\x61\x70\x69\x2F\x66\x73\x22\x2C\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x6D\x65\x74\x68\x6F\x64\x3A\x20\x22\x50\x55\x54\x22\x2C\x0A\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\x41\x63\x63\x65\x70\x74\x3A\x20\x22\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2F\x6A\x73\x6F\x6E\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x54\x79\x70\x65\x22\x3A\x20\x22\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2F\x6A\x73\x6F\x6E\x22\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x62\x6F\x64\x79\x3A\x20\x4A\x53\x4F\x4E\x2E\x73\x74\x72\x69\x6E\x67\x69\x66\x79\x28\x72\x65\x71\x29\x0A\x20\x20\x20\x20\x20\x20\x7D\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x6C\x65\x74\x20\x72\x65\x73\x20\x3D\x20\x61\x77\x61\x69\x74\x20\x68\x74\x74\x70\x5F\x72\x65\x73\x2E\x6A\x73\x6F\x6E\x28\x29\x3B\x0A\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\x74\x68\x69\x73\x2E\x77\x75\x69\x5F\x6E\x6F\x74\x69\x66\x2E\x45\x72\x72\x6F\x72\x28\x60\x46\x61\x69\x6C\x65\x64\x20\x74\x6F\x20\x73\x61\x76\x65\x20\x66\x69\x6C\x65\x20\x24\x7B\x70\x61\x74\x68\x7D\x3A\x20\x24\x7B\x72\x65\x73\x2E\x6D\x65\x73\x73\x61\x67\x65\x7D\x60\x29\x3B\x0A\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\x7D\x0A\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x77\x75\x69\x5F\x6E\x6F\x74\x69\x66\x2E\x49\x6E\x66\x6F\x28\x60\x46\x69\x6C\x65\x20\x24\x7B\x70\x61\x74\x68\x7D\x20\x68\x61\x73\x20\x62\x65\x65\x6E\x20\x73\x61\x76\x65\x64\x2E\x60\x29\x3B\x0A\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\x65\x64\x69\x74\x6F\x72\x4F\x6E\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x28\x62\x65\x67\x69\x6E\x2C\x20\x65\x6E\x64\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x6C\x65\x74\x20\x73\x74\x6D\x74\x73\x20\x3D\x20\x74\x68\x69\x73\x2E\x77\x75\x69\x5F\x65\x64\x69\x74\x6F\x72\x2E\x6C\x69\x6E\x65\x73\x2E\x73\x6C\x69\x63\x65\x28\x62\x65\x67\x69\x6E\x2C\x20\x65\x6E\x64\x20\x2B\x20\x31\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x66\x6F\x72\x20\x28\x63\x6F\x6E\x73\x74\x20\x73\x74\x6D\x74\x20\x6F\x66\x20\x73\x74\x6D\x74\x73\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x6F\x6C\x65\x2E\x6C\x6F\x67\x28\x22\x73\x74\x6D\x74\x3A\x22\x2C\x20\x73\x74\x6D\x74\x2E\x78\x2C\x20\x73\x74\x6D\x74\x2E\x74\x65\x78\x74\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x2F\x2F\x20\x65\x78\x65\x63\x4C\x6F\x63\x61\x6C\x20\x72\x65\x71\x75\x65\x73\x74\x20\x74\x6F\x20\x65\x78\x65\x63\x75\x74\x65\x20\x74\x68\x65\x20\x73\x65\x6C\x65\x63\x74\x65\x64\x20\x73\x63\x72\x69\x70\x74\x20\x6F\x6E\x20\x6C\x6F\x63\x61\x6C\x20\x73\x79\x73\x74\x65\x6D\x2E\x0A\x20\x20\x20\x20\x65\x78\x65\x63\x4C\x6F\x63\x61\x6C\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x72\x65\x71\x75\x65\x73\x74\x2E\x73\x63\x72\x69\x70\x74\x20\x3D\x3D\x20\x22\x22\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x77\x75\x69\x5F\x6E\x6F\x74\x69\x66\x2E\x45\x72\x72\x6F\x72\x28\x60\x45\x78\x65\x63\x75\x74\x65\x20\x6F\x6E\x20\x6C\x6F\x63\x61\x6C\x3A\x20\x6E\x6F\x20\x66\x69\x6C\x65\x20\x73\x65\x6C\x65\x63\x74\x65\x64\x60\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x68\x74\x74\x70\x41\x70\x69\x45\x78\x65\x63\x75\x74\x65\x28\x22\x6C\x6F\x63\x61\x6C\x22\x29\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x2F\x2F\x20\x65\x78\x65\x63\x52\x65\x6D\x6F\x74\x65\x20\x72\x65\x71\x75\x65\x73\x74\x20\x74\x6F\x20\x65\x78\x65\x63\x75\x74\x65\x20\x74\x68\x65\x20\x73\x65\x6C\x65\x63\x74\x65\x64\x20\x73\x63\x72\x69\x70\x74\x20\x6F\x6E\x20\x72\x65\x6D\x6F\x74\x65\x20\x73\x79\x73\x74\x65\x6D\x2E\x0A\x20\x20\x20\x20\x65\x78\x65\x63\x52\x65\x6D\x6F\x74\x65\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x68\x69\x73\x2E\x72\x65\x71\x75\x65\x73\x74\x2E\x73\x63\x72\x69\x70\x74\x20\x3D\x3D\x20\x22\x22\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x77\x75\x69\x5F\x6E\x6F\x74\x69\x66\x2E\x45\x72\x72\x6F\x72\x28\x60\x45\x78\x65\x63\x75\x74\x65\x20\x6F\x6E\x20\x72\x65\x6D\x6F\x74\x65\x3A\x20\x6E\x6F\x20\x66\x69\x6C\x65\x20\x73\x65\x6C\x65\x63\x74\x65\x64\x60\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x68\x74\x74\x70\x41\x70\x69\x45\x78\x65\x63\x75\x74\x65\x28\x22\x72\x65\x6D\x6F\x74\x65\x22\x29\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x61\x73\x79\x6E\x63\x20\x68\x74\x74\x70\x41\x70\x69\x45\x78\x65\x63\x75\x74\x65\x28\x6D\x6F\x64\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x6C\x65\x74\x20\x62\x65\x67\x69\x6E\x41\x74\x20\x3D\x20\x30\x3B\x0A\x20\x20\x20\x20\x20\x20\x6C\x65\x74\x20\x65\x6E\x64\x41\x74\x20\x3D\x20\x30\x3B\x0A\x20\x20\x20\x20\x20\x20\x6C\x65\x74\x20\x73\x65\x6C\x65\x63\x74\x69\x6F\x6E\x5F\x72\x61\x6E\x67\x65\x20\x3D\x20\x74\x68\x69\x73\x2E\x77\x75\x69\x5F\x65\x64\x69\x74\x6F\x72\x2E\x47\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x52\x61\x6E\x67\x65\x28\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x73\x65\x6C\x65\x63\x74\x69\x6F\x6E\x5F\x72\x61\x6E\x67\x65\x2E\x62\x65\x67\x69\x6E\x5F\x61\x74\x20\x3E\x20\x30\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x62\x65\x67\x69\x6E\x41\x74\x20\x3D\x20\x73\x65\x6C\x65\x63\x74\x69\x6F\x6E\x5F\x72\x61\x6E\x67\x65\x2E\x62\x65\x67\x69\x6E\x5F\x61\x74\x20\x2B\x20\x31\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x73\x65\x6C\x65\x63\x74\x69\x6F\x6E\x5F\x72\x61\x6E\x67\x65\x2E\x65\x6E\x64\x5F\x61\x74\x20\x3E\x20\x30\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x65\x6E\x64\x41\x74\x20\x3D\x20\x73\x65\x6C\x65\x63\x74\x69\x6F\x6E\x5F\x72\x61\x6E\x67\x65\x2E\x65\x6E\x64\x5F\x61\x74\x20\x2B\x20\x31\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x73\x74\x64\x6F\x75\x74\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x22\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x73\x74\x64\x65\x72\x72\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x22\x22\x3B\x0A\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x65\x71\x75\x65\x73\x74\x2E\x6D\x6F\x64\x65\x20\x3D\x20\x6D\x6F\x64\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x65\x71\x75\x65\x73\x74\x2E\x63\x6F\x6E\x74\x65\x6E\x74\x20\x3D\x20\x62\x74\x6F\x61\x28\x74\x68\x69\x73\x2E\x77\x75\x69\x5F\x65\x64\x69\x74\x6F\x72\x2E\x47\x65\x74\x43\x6F\x6E\x74\x65\x6E\x74\x28\x29\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x62\x65\x67\x69\x6E\x41\x74\x20\x3D\x3D\x3D\x20\x65\x6E\x64\x41\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x65\x71\x75\x65\x73\x74\x2E\x6C\x69\x6E\x65\x5F\x72\x61\x6E\x67\x65\x20\x3D\x20\x60\x24\x7B\x62\x65\x67\x69\x6E\x41\x74\x7D\x60\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x20\x65\x6C\x73\x65\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x72\x65\x71\x75\x65\x73\x74\x2E\x6C\x69\x6E\x65\x5F\x72\x61\x6E\x67\x65\x20\x3D\x20\x60\x24\x7B\x62\x65\x67\x69\x6E\x41\x74\x7D\x2D\x24\x7B\x65\x6E\x64\x41\x74\x7D\x60\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x6C\x65\x74\x20\x68\x74\x74\x70\x5F\x72\x65\x73\x20\x3D\x20\x61\x77\x61\x69\x74\x20\x66\x65\x74\x63\x68\x28\x22\x2F\x61\x77\x77\x61\x6E\x2F\x61\x70\x69\x2F\x65\x78\x65\x63\x75\x74\x65\x22\x2C\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x6D\x65\x74\x68\x6F\x64\x3A\x20\x22\x50\x4F\x53\x54\x22\x2C\x0A\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\x41\x63\x63\x65\x70\x74\x3A\x20\x22\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2F\x6A\x73\x6F\x6E\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x54\x79\x70\x65\x22\x3A\x20\x22\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2F\x6A\x73\x6F\x6E\x22\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x62\x6F\x64\x79\x3A\x20\x4A\x53\x4F\x4E\x2E\x73\x74\x72\x69\x6E\x67\x69\x66\x79\x28\x74\x68\x69\x73\x2E\x72\x65\x71\x75\x65\x73\x74\x29\x0A\x20\x20\x20\x20\x20\x20\x7D\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x6C\x65\x74\x20\x72\x65\x73\x20\x3D\x20\x61\x77\x61\x69\x74\x20\x68\x74\x74\x70\x5F\x72\x65\x73\x2E\x6A\x73\x6F\x6E\x28\x29\x3B\x0A\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\x74\x68\x69\x73\x2E\x77\x75\x69\x5F\x6E\x6F\x74\x69\x66\x2E\x45\x72\x72\x6F\x72\x28\x60\x45\x78\x65\x63\x75\x74\x65\x20\x66\x61\x69\x6C\x65\x64\x3A\x20\x24\x7B\x72\x65\x73\x2E\x6D\x65\x73\x73\x61\x67\x65\x7D\x60\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x72\x65\x73\x2E\x64\x61\x74\x61\x2E\x73\x74\x64\x6F\x75\x74\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x73\x74\x64\x6F\x75\x74\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x61\x74\x6F\x62\x28\x72\x65\x73\x2E\x64\x61\x74\x61\x2E\x73\x74\x64\x6F\x75\x74\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x72\x65\x73\x2E\x64\x61\x74\x61\x2E\x73\x74\x64\x65\x72\x72\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x73\x74\x64\x65\x72\x72\x2E\x69\x6E\x6E\x65\x72\x54\x65\x78\x74\x20\x3D\x20\x61\x74\x6F\x62\x28\x72\x65\x73\x2E\x64\x61\x74\x61\x2E\x73\x74\x64\x65\x72\x72\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x77\x75\x69\x5F\x6E\x6F\x74\x69\x66\x2E\x49\x6E\x66\x6F\x28\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x60\x53\x75\x63\x63\x65\x73\x73\x66\x75\x6C\x6C\x79\x20\x65\x78\x65\x63\x75\x74\x65\x20\x24\x7B\x74\x68\x69\x73\x2E\x72\x65\x71\x75\x65\x73\x74\x2E\x73\x63\x72\x69\x70\x74\x7D\x20\x6F\x6E\x20\x24\x7B\x6D\x6F\x64\x65\x7D\x2E\x60\x0A\x20\x20\x20\x20\x20\x20\x29\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x61\x73\x79\x6E\x63\x20\x6E\x65\x77\x4E\x6F\x64\x65\x28\x69\x73\x5F\x64\x69\x72\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x21\x74\x68\x69\x73\x2E\x63\x75\x72\x72\x65\x6E\x74\x5F\x6E\x6F\x64\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x77\x75\x69\x5F\x6E\x6F\x74\x69\x66\x2E\x45\x72\x72\x6F\x72\x28\x22\x4E\x6F\x20\x61\x63\x74\x69\x76\x65\x20\x64\x69\x72\x65\x63\x74\x6F\x72\x79\x20\x6C\x6F\x61\x64\x65\x64\x20\x6F\x72\x20\x73\x65\x6C\x65\x63\x74\x65\x64\x2E\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x6C\x65\x74\x20\x6E\x61\x6D\x65\x20\x3D\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x69\x6E\x70\x5F\x76\x66\x73\x5F\x6E\x65\x77\x2E\x76\x61\x6C\x75\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x6E\x61\x6D\x65\x20\x3D\x3D\x3D\x20\x22\x22\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x77\x75\x69\x5F\x6E\x6F\x74\x69\x66\x2E\x45\x72\x72\x6F\x72\x28\x22\x45\x6D\x70\x74\x79\x20\x66\x69\x6C\x65\x20\x6E\x61\x6D\x65\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x6C\x65\x74\x20\x72\x65\x71\x20\x3D\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x70\x61\x74\x68\x3A\x20\x74\x68\x69\x73\x2E\x63\x75\x72\x72\x65\x6E\x74\x5F\x6E\x6F\x64\x65\x2E\x70\x61\x74\x68\x20\x2B\x20\x22\x2F\x22\x20\x2B\x20\x6E\x61\x6D\x65\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x6E\x61\x6D\x65\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x73\x5F\x64\x69\x72\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x74\x65\x6E\x74\x5F\x74\x79\x70\x65\x3A\x20\x22\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x6D\x6F\x64\x5F\x74\x69\x6D\x65\x3A\x20\x30\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x73\x69\x7A\x65\x3A\x20\x30\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x6D\x6F\x64\x65\x3A\x20\x22\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x68\x69\x6C\x64\x73\x3A\x20\x5B\x5D\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x74\x65\x6E\x74\x3A\x20\x22\x22\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x6C\x65\x74\x20\x68\x74\x74\x70\x5F\x72\x65\x73\x20\x3D\x20\x61\x77\x61\x69\x74\x20\x66\x65\x74\x63\x68\x28\x22\x2F\x61\x77\x77\x61\x6E\x2F\x61\x70\x69\x2F\x66\x73\x22\x2C\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x6D\x65\x74\x68\x6F\x64\x3A\x20\x22\x50\x4F\x53\x54\x22\x2C\x0A\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\x41\x63\x63\x65\x70\x74\x3A\x20\x22\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2F\x6A\x73\x6F\x6E\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x54\x79\x70\x65\x22\x3A\x20\x22\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2F\x6A\x73\x6F\x6E\x22\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x62\x6F\x64\x79\x3A\x20\x4A\x53\x4F\x4E\x2E\x73\x74\x72\x69\x6E\x67\x69\x66\x79\x28\x72\x65\x71\x29\x0A\x20\x20\x20\x20\x20\x20\x7D\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x6C\x65\x74\x20\x72\x65\x73\x20\x3D\x20\x61\x77\x61\x69\x74\x20\x68\x74\x74\x70\x5F\x72\x65\x73\x2E\x6A\x73\x6F\x6E\x28\x29\x3B\x0A\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\x74\x68\x69\x73\x2E\x77\x75\x69\x5F\x6E\x6F\x74\x69\x66\x2E\x45\x72\x72\x6F\x72\x28\x60\x6E\x65\x77\x4E\x6F\x64\x65\x3A\x20\x24\x7B\x72\x65\x73\x2E\x6D\x65\x73\x73\x61\x67\x65\x7D\x60\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x6C\x65\x74\x20\x6E\x6F\x64\x65\x20\x3D\x20\x72\x65\x73\x2E\x64\x61\x74\x61\x3B\x0A\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x21\x74\x68\x69\x73\x2E\x63\x75\x72\x72\x65\x6E\x74\x5F\x6E\x6F\x64\x65\x2E\x63\x68\x69\x6C\x64\x73\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x75\x72\x72\x65\x6E\x74\x5F\x6E\x6F\x64\x65\x2E\x63\x68\x69\x6C\x64\x73\x20\x3D\x20\x5B\x5D\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x63\x75\x72\x72\x65\x6E\x74\x5F\x6E\x6F\x64\x65\x2E\x63\x68\x69\x6C\x64\x73\x2E\x70\x75\x73\x68\x28\x6E\x6F\x64\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x77\x75\x69\x5F\x76\x66\x73\x2E\x53\x65\x74\x28\x74\x68\x69\x73\x2E\x63\x75\x72\x72\x65\x6E\x74\x5F\x6E\x6F\x64\x65\x29\x3B\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x61\x73\x79\x6E\x63\x20\x6F\x6E\x43\x6C\x69\x63\x6B\x52\x65\x6D\x6F\x76\x65\x28\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x73\x6F\x6C\x65\x2E\x6C\x6F\x67\x28\x22\x6F\x6E\x43\x6C\x69\x63\x6B\x52\x65\x6D\x6F\x76\x65\x3A\x20\x22\x2C\x20\x74\x68\x69\x73\x2E\x63\x75\x72\x72\x65\x6E\x74\x5F\x6E\x6F\x64\x65\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x21\x74\x68\x69\x73\x2E\x63\x75\x72\x72\x65\x6E\x74\x5F\x6E\x6F\x64\x65\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x77\x75\x69\x5F\x6E\x6F\x74\x69\x66\x2E\x45\x72\x72\x6F\x72\x28\x22\x4E\x6F\x20\x66\x69\x6C\x65\x20\x73\x65\x6C\x65\x63\x74\x65\x64\x2E\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x6C\x65\x74\x20\x6E\x61\x6D\x65\x20\x3D\x20\x74\x68\x69\x73\x2E\x63\x6F\x6D\x5F\x69\x6E\x70\x5F\x76\x66\x73\x5F\x6E\x65\x77\x2E\x76\x61\x6C\x75\x65\x3B\x0A\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x6E\x61\x6D\x65\x20\x3D\x3D\x3D\x20\x22\x22\x29\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x74\x68\x69\x73\x2E\x77\x75\x69\x5F\x6E\x6F\x74\x69\x66\x2E\x45\x72\x72\x6F\x72\x28\x22\x45\x6D\x70\x74\x79\x20\x66\x69\x6C\x65\x20\x6E\x61\x6D\x65\x22\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x20\x20\x6C\x65\x74\x20\x72\x65\x71\x20\x3D\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x70\x61\x74\x68\x3A\x20\x74\x68\x69\x73\x2E\x63\x75\x72\x72\x65\x6E\x74\x5F\x6E\x6F\x64\x65\x2E\x70\x61\x74\x68\x20\x2B\x20\x22\x2F\x22\x20\x2B\x20\x6E\x61\x6D\x65\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x69\x73\x5F\x64\x69\x72\x3A\x20\x66\x61\x6C\x73\x65\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x63\x6F\x6E\x74\x65\x6E\x74\x3A\x20\x22\x22\x0A\x20\x20\x20\x20\x20\x20\x7D\x3B\x0A\x20\x20\x20\x20\x20\x20\x6C\x65\x74\x20\x68\x74\x74\x70\x5F\x72\x65\x73\x20\x3D\x20\x61\x77\x61\x69\x74\x20\x66\x65\x74\x63\x68\x28\x22\x2F\x61\x77\x77\x61\x6E\x2F\x61\x70\x69\x2F\x66\x73\x22\x2C\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\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\x68\x65\x61\x64\x65\x72\x73\x3A\x20\x7B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x41\x63\x63\x65\x70\x74\x3A\x20\x22\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2F\x6A\x73\x6F\x6E\x22\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x54\x79\x70\x65\x22\x3A\x20\x22\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2F\x6A\x73\x6F\x6E\x22\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x7D\x2C\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x62\x6F\x64\x79\x3A\x20\x4A\x53\x4F\x4E\x2E\x73\x74\x72\x69\x6E\x67\x69\x66\x79\x28\x72\x65\x71\x29\x0A\x20\x20\x20\x20\x20\x20\x7D\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x6C\x65\x74\x20\x72\x65\x73\x20\x3D\x20\x61\x77\x61\x69\x74\x20\x68\x74\x74\x70\x5F\x72\x65\x73\x2E\x6A\x73\x6F\x6E\x28\x29\x3B\x0A\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\x74\x68\x69\x73\x2E\x77\x75\x69\x5F\x6E\x6F\x74\x69\x66\x2E\x45\x72\x72\x6F\x72\x28\x60\x72\x65\x6D\x6F\x76\x65\x3A\x20\x24\x7B\x72\x65\x73\x2E\x6D\x65\x73\x73\x61\x67\x65\x7D\x60\x29\x3B\x0A\x20\x20\x20\x20\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6E\x3B\x0A\x20\x20\x20\x20\x20\x20\x7D\x0A\x20\x20\x20\x20\x7D\x0A\x20\x20\x7D\x3B\x0A\x0A\x20\x20\x2F\x2F\x20\x5F\x77\x77\x77\x2F\x6D\x61\x69\x6E\x2E\x74\x73\x0A\x20\x20\x72\x65\x6E\x64\x65\x72\x48\x74\x6D\x6C\x28\x29\x3B\x0A\x20\x20\x76\x61\x72\x20\x61\x77\x77\x61\x6E\x20\x3D\x20\x6E\x65\x77\x20\x41\x77\x77\x61\x6E\x28\x29\x3B\x0A\x7D\x29\x28\x29\x3B\x0A"), } node.SetMode(420) - node.SetModTimeUnix(1695305487, 307329349) + node.SetModTimeUnix(1695901248, 655489195) node.SetName("main.js") - node.SetSize(49651) + node.SetSize(41816) return node } -- cgit v1.3