summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--_www/awwan.ts809
-rw-r--r--_www/main.js917
-rw-r--r--_www/main.ts6
-rw-r--r--internal/memfs_www.go10
4 files changed, 787 insertions, 955 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 <ms@kilabit.info>
// 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"
+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
+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 = `
<div class="awwan_nav_left">
<div id="${ID_VFS}"></div>
@@ -81,440 +80,418 @@ export function renderHtml() {
<div class="boxheader">Standard error:</div>
<div id="${ID_STDERR}"></div>
</div>
- `
- 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
+ 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()
- }
- }
+ 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_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_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_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_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
- }
+ 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)
+ 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()
+ this.wui_notif = new WuiNotif();
- let wui_vfs_opts: WuiVfsOptions = {
- id: ID_VFS,
- Open: (
- path: string,
- is_dir: boolean,
- ): Promise<WuiResponseInterface> => {
- return this.Open(path, is_dir)
- },
- OpenNode: (
- node: WuiVfsNodeInterface,
- ): Promise<WuiResponseInterface> => {
- return this.OpenNode(node)
- },
- }
- this.wui_vfs = new WuiVfs(wui_vfs_opts)
+ let wui_vfs_opts: WuiVfsOptions = {
+ id: ID_VFS,
+ Open: (path: string, is_dir: boolean): Promise<WuiResponseInterface> => {
+ return this.Open(path, is_dir);
+ },
+ OpenNode: (node: WuiVfsNodeInterface): Promise<WuiResponseInterface> => {
+ 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)
- }
+ 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)
- }
+ // Open path based on hash.
+ this.onHashChange(window.location.hash);
+ }
- onHashChange(hash: string) {
- if (hash === "") {
- hash = "#/"
- }
+ onHashChange(hash: string) {
+ if (hash === "") {
+ hash = "#/";
+ }
- hash = hash.substring(1)
- this.wui_vfs.OpenDir(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<WuiResponseInterface> {
- 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
- }
+ // Open fetch the node content from remote server.
+ async Open(path: string, is_dir: boolean): Promise<WuiResponseInterface> {
+ 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
+ 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
- }
+ 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
- }
+ 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.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
+ 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
- }
+ return res;
+ }
- // OpenNode is an handler that will called when user click on of the
- // item in the list.
- async OpenNode(
- node: WuiVfsNodeInterface,
- ): Promise<WuiResponseInterface> {
- let resAllow = this.isEditAllowed(node)
- if (resAllow.code != 200) {
- this.wui_notif.Error(resAllow.message)
- return resAllow
- }
+ // OpenNode is an handler that will called when user click on of the
+ // item in the list.
+ async OpenNode(node: WuiVfsNodeInterface): Promise<WuiResponseInterface> {
+ 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
- }
+ let res = await this.Open(node.path, node.is_dir);
+ return res;
+ }
- isEditAllowed(node: WuiVfsNodeInterface): WuiResponseInterface {
- let res: WuiResponseInterface = {
- code: 412,
- message: "",
- }
+ 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
- }
+ 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)
- }
+ 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)
- }
+ 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
- }
+ 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
- }
+ 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)
- }
- }
+ 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")
- }
+ // 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")
- }
+ // 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
- }
+ 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.com_stdout.innerText = "";
+ this.com_stderr.innerText = "";
- this.request.mode = mode
- this.request.content = btoa(this.wui_editor.GetContent())
+ 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 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
- }
+ 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)
- }
+ 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}.`,
- )
- }
+ 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
- }
+ 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 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 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 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)
- }
+ 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
- }
+ 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 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 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
- }
-
-
- }
+ 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 <div class="awwan_nav_left">\n <div id="' + ID_VFS + '"></div>\n\n <br/>\n <div class="' + ID_INP_VFS_NEW + '">\n <input id="' + ID_INP_VFS_NEW + '" />\n </div>\n <button id="' + ID_BTN_NEW_DIR + '">New directory</button>\n <button id="' + ID_BTN_NEW_FILE + '">New file</button>\n <button id="' + ID_BTN_REMOVE + '">Remove</button>\n </div>\n <div class="awwan_content">\n <div class="editor_file">\n File: <span id="' + ID_VFS_PATH + '">-</span>\n <button id="' + ID_BTN_SAVE + '" disabled="true">Save</button>\n </div>\n <div id="' + ID_EDITOR + '"></div>\n <div>\n <div class="' + CLASS_EDITOR_ACTION + '">\n <button id="' + ID_BTN_CLEAR_SELECTION + '">Clear selection</button>\n </div>\n <div class="' + CLASS_EDITOR_ACTION + '">\n Execute script on\n <button id="' + ID_BTN_EXEC_LOCAL + '" disabled="true">Local</button>\n or\n <button id="' + ID_BTN_EXEC_REMOTE + '" disabled="true">Remote</button>\n </div>\n </div>\n <p>Hints:</p>\n <ul>\n <li>\n Click and drag on the line numbers to select the specific line to be\n executed.\n </li>\n <li>Press ESC to clear selection.</li>\n </ul>\n <div class="boxheader">Standard output:</div>\n <div id="' + ID_STDOUT + '"></div>\n <div class="boxheader">Standard error:</div>\n <div id="' + ID_STDERR + '"></div>\n </div>\n ';
+ el.innerHTML = `
+ <div class="awwan_nav_left">
+ <div id="${ID_VFS}"></div>
+
+ <br/>
+ <div class="${ID_INP_VFS_NEW}">
+ <input id="${ID_INP_VFS_NEW}" />
+ </div>
+ <button id="${ID_BTN_NEW_DIR}">New directory</button>
+ <button id="${ID_BTN_NEW_FILE}">New file</button>
+ <button id="${ID_BTN_REMOVE}">Remove</button>
+ </div>
+ <div class="awwan_content">
+ <div class="editor_file">
+ File: <span id="${ID_VFS_PATH}">-</span>
+ <button id="${ID_BTN_SAVE}" disabled="true">Save</button>
+ </div>
+ <div id="${ID_EDITOR}"></div>
+ <div>
+ <div class="${CLASS_EDITOR_ACTION}">
+ <button id="${ID_BTN_CLEAR_SELECTION}">Clear selection</button>
+ </div>
+ <div class="${CLASS_EDITOR_ACTION}">
+ Execute script on
+ <button id="${ID_BTN_EXEC_LOCAL}" disabled="true">Local</button>
+ or
+ <button id="${ID_BTN_EXEC_REMOTE}" disabled="true">Remote</button>
+ </div>
+ </div>
+ <p>Hints:</p>
+ <ul>
+ <li>
+ Click and drag on the line numbers to select the specific line to be
+ executed.
+ </li>
+ <li>Press ESC to clear selection.</li>
+ </ul>
+ <div class="boxheader">Standard output:</div>
+ <div id="${ID_STDOUT}"></div>
+ <div class="boxheader">Standard error:</div>
+ <div id="${ID_STDERR}"></div>
+ </div>
+ `;
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 <ms@kilabit.info>
// 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
}