From 9155f69e4df2d933544e6b4968642ca4800e7fb0 Mon Sep 17 00:00:00 2001
From: Kaya <kaya.lange@uni-bielefeld.de>
Date: Tue, 3 Dec 2024 10:35:51 +0100
Subject: [PATCH] hp changes

---
 src/data/hptimelinedata.tsx                   |   15 +-
 ....timestamp-1733218550179-cd0d8a6f0522a.mjs | 4240 +++++++++++++++++
 2 files changed, 4251 insertions(+), 4 deletions(-)
 create mode 100644 vite.config.js.timestamp-1733218550179-cd0d8a6f0522a.mjs

diff --git a/src/data/hptimelinedata.tsx b/src/data/hptimelinedata.tsx
index 3a498bb..ccfa649 100644
--- a/src/data/hptimelinedata.tsx
+++ b/src/data/hptimelinedata.tsx
@@ -201,12 +201,20 @@ export const timelinedata: Array<TimelineDatenpunkt>  = [
     quote: "Thanks to our in-depth research phase, we were able to gather many insightful ideas. The workshop was highly productive and moved us significantly forward, allowing us to gain a clear vision of our project by the end of the day.",
     quoteVorname:"Kathleen",
     quoteNachname: "Susat, Teammember",
-    type: "meta",
     summary: [<p>From April 5th to 7th, we embarked on an enriching excursion dedicated to project work and team building. Our primary goal was to engage in meaningful brainstorming sessions focused on our iGEM project and to explore human practices thoroughly. 
       We kicked off our weekend with a series of discussions that emphasized the importance of considering the impact of our work on the world. </p>,
       <p>Throughout our time in Hamburg, we dedicated several hours to reading relevant literature and research papers, both individually and in groups. This collaborative effort allowed us to deepen our understanding of existing projects and innovations in our field. We critically analyzed previous iGEM projects and explored who had worked on similar ideas, which helped us identify gaps in the research and potential avenues for our own project.
-      Our discussions naturally flowed into brainstorming sessions where we reflected on the impacts we wanted to achieve. We explored essential questions: What effects do we aim to have on society? What activities can we plan to gather evidence about how our work will resonate with the community? How can we effectively engage with stakeholders and share our findings?
-      In addition to structured brainstorming, we exchanged ideas informally during breaks and meals, fostering a creative atmosphere. By the end of the weekend, we had not only strengthened our team bonds but also clarified our vision for the project ahead. The insights gained from our discussions and readings laid a solid foundation for our future work, allowing us to approach our project with renewed focus and purpose.</p>],
+      Our discussions naturally flowed into brainstorming sessions where we reflected on the impacts we wanted to achieve. We explored essential questions: What effects do we aim to have on society? What activities can we plan to gather evidence about how our work will resonate with the community? How can we effectively engage with stakeholders and share our findings?</p>,
+      <p>In addition to structured brainstorming, we exchanged ideas informally during breaks and meals, fostering a creative atmosphere. By the end of the weekend, we had not only strengthened our team bonds but also clarified our vision for the project ahead. The insights gained from our discussions and readings laid a solid foundation for our future work, allowing us to approach our project with renewed focus and purpose. </p>],
+    insights: [<div className="row">
+      <div className="col"><img src="https://static.igem.wiki/teams/5247/photos/hp/teambuilding-hamburg.webp"></img>
+      </div>
+      <div className="col"><p>Our first event in Hamburg was a meeting with the Hamburg iGEM team. Overlooking the Alster lake, we exchanged ideas and got to know each other. The collaboration with <OurLink path='contribution'tabId='contribution' scrollToId='bfh-european-meetup' text="BFH"/> {/*Kaya*/} was strengthened by this meeting with iGEM Hamburg. Suddenly we were surprised by the typical Hamburg weather. However, we did not let this spoil our good mood. In small groups we explored Hamburg and braved the rain. We also visited the University of Hamburg and socialised a lot.</p>
+      <br/>
+      <p>On Saturday we started the most important part of our trip. Our project! The whole team gathered on the roof terrace in the bright sunshine and extensive research began. We had already chosen a general topic in Bielefeld, but now we had to narrow it down. To do this, we diligently read various publications, made notes and exchanged ideas.  Later, the team met again on the roof terrace to continue researching and discussing. Thanks to our in-depth research phase, we were able to gather many insightful ideas. The workshop was very productive and moved us forward significantly, allowing us to have a clear vision of our project by the end of the day. We now have a strong foundation to build on as we continue to develop the concept. So it was a great success! This was followed by the evening cooking session where the whole team was treated to a very tasty 3-course meal. We are already looking forward to Paris because we want to cook together in the evening and meet other iGEMers as well as Team Hamburg! </p>
+      <br/>
+      <p>Sunday morning started again with breakfast in the hostel. After checking out we walked in the bright sunshine to the Landungsbrücken, a kind of tourist landmark of Hamburg. We ate donuts and had a fantastic view of the Elbe, Hamburg's most famous river. We wanted to use the last day to see a bit more of Hamburg as a team. The return journey was used productively to read more papers and do more research for our project. </p></div>
+    </div>],
     months: "March"
   },
   {
@@ -218,7 +226,6 @@ export const timelinedata: Array<TimelineDatenpunkt>  = [
     tag: "Patient",
     heading: "Gathering valuable insights from the patient’s perspective",
     interviewtabid: "maxfirst",
-
     language: "de",
     quoteNachname:"Beckmann, Patient",
     quoteVorname: "Max",
diff --git a/vite.config.js.timestamp-1733218550179-cd0d8a6f0522a.mjs b/vite.config.js.timestamp-1733218550179-cd0d8a6f0522a.mjs
new file mode 100644
index 0000000..93faf2e
--- /dev/null
+++ b/vite.config.js.timestamp-1733218550179-cd0d8a6f0522a.mjs
@@ -0,0 +1,4240 @@
+// vite.config.js
+import { defineConfig, loadEnv } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/vite/dist/node/index.js";
+import react from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/@vitejs/plugin-react/dist/index.mjs";
+
+// src/components/FadeIn.tsx
+import { useEffect, useRef, useState } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/index.js";
+import { Fragment, jsx, jsxs } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/components/Breathe.tsx
+import { useEffect as useEffect2, useRef as useRef2, useState as useState2 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/index.js";
+import { Fragment as Fragment2, jsx as jsx2, jsxs as jsxs2 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/components/Problems.tsx
+import { useEffect as useEffect3, useRef as useRef3, useState as useState3 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/index.js";
+import { Fragment as Fragment3, jsx as jsx3, jsxs as jsxs3 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/utils/TabNavigation.ts
+import { useEffect as useEffect4, useState as useState4 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/index.js";
+import { useLocation, useNavigate } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react-router-dom/dist/main.js";
+
+// src/components/Headings.tsx
+import { jsx as jsx4, jsxs as jsxs4 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+function H4({ text, id }) {
+  var idtext;
+  if (id) {
+    idtext = id;
+  } else {
+    idtext = stringToSlug(text);
+  }
+  return /* @__PURE__ */ jsx4("div", { children: /* @__PURE__ */ jsxs4("h3", { id: idtext, children: [
+    " ",
+    text,
+    " "
+  ] }) });
+}
+
+// src/components/precyse.tsx
+import { jsx as jsx5 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/contents/Home.tsx
+import { Fragment as Fragment4, jsx as jsx6, jsxs as jsxs5 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/components/Buttons.tsx
+import { Link } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react-router-dom/dist/main.js";
+
+// src/utils/openThem.ts
+function updateTabs(it, scrollToId) {
+  if (typeof window === "undefined") return;
+  let contenttabid = "tab-" + it;
+  let parent = "parent-" + it;
+  console.log(`Updating tabs for: ${it}`);
+  const subtabs = document.getElementsByClassName("sidesubtab");
+  const contenttabs = document.getElementsByClassName("enginneeringtab");
+  const sideitems = document.getElementsByClassName("sideitem");
+  for (let i = 0; i < subtabs.length; i++) {
+    subtabs[i].style.display = "none";
+    console.log(`Hiding subtab: ${subtabs[i].id}`);
+  }
+  for (let i = 0; i < contenttabs.length; i++) {
+    contenttabs[i].style.display = "none";
+    console.log(`Hiding content tab: ${contenttabs[i].id}`);
+  }
+  for (let i = 0; i < sideitems.length; i++) {
+    sideitems[i].classList.remove("active-sideitem");
+    console.log(`Removing active class from side item: ${sideitems[i].id}`);
+  }
+  document.getElementById(it).style.display = "block";
+  console.log(`Showing tab: ${it}`);
+  document.getElementById(parent).classList.add("active-sideitem");
+  console.log(`Activating side item: ${parent}`);
+  document.getElementById(contenttabid).style.display = "block";
+  console.log(`Showing content tab: ${contenttabid}`);
+  if (scrollToId) {
+    const collapseElement = document.getElementById(scrollToId);
+    if (collapseElement) {
+      const elementTop = collapseElement.getBoundingClientRect().top + window.pageYOffset;
+      const offset = window.innerHeight / 2 - collapseElement.offsetHeight / 2;
+      const scrollPosition = elementTop - offset;
+      window.scrollTo({
+        top: scrollPosition,
+        behavior: "smooth"
+      });
+    }
+  }
+}
+if (typeof window !== "undefined") {
+  window.addEventListener("popstate", (event) => {
+    console.log("Popstate event triggered");
+    if (event.state) {
+      const tab = event.state.tab;
+      console.log(`Restoring tab: ${tab}`);
+      updateTabs(tab);
+      console.log("Scrolling to middle on popstate...");
+      const midScrollPosition = window.innerHeight / 2;
+      window.scrollTo({ top: midScrollPosition, behavior: "smooth" });
+    } else {
+      console.log("No state found in popstate event.");
+    }
+  });
+}
+
+// src/utils/useNavigation.ts
+import { useNavigate as useNavigate2 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react-router-dom/dist/main.js";
+var useNavigation = () => {
+  const navigate = useNavigate2();
+  const goToPagesAndOpenTab = (tabId, path) => {
+    navigate(`${path}?tab=${tabId}`);
+  };
+  const goToTextsAndOpenCollapsible = (collapseId, path) => {
+    navigate(`${path}?collapseId=${collapseId}`);
+  };
+  const goToPageWithTabAndCollapsible = ({ path, tabId, collapseId }) => {
+    let url = `${path}?tab=${tabId}`;
+    if (collapseId) {
+      url += `&collapseId=${collapseId}`;
+    }
+    navigate(url);
+  };
+  const goToPageWithNestedTabs = ({ path, tabId, subTabId, collapseId }) => {
+    let url = `${path}?tab=${tabId}`;
+    if (subTabId) {
+      url += `&subTab=${subTabId}`;
+    }
+    if (collapseId) {
+      url += `&collapseId=${collapseId}`;
+    }
+    navigate(url);
+  };
+  const goToPageWithTabAndScroll = ({ path, tabId, scrollToId }) => {
+    let url = `${path}?tab=${tabId}`;
+    if (scrollToId) {
+      url += `&scrollTo=${scrollToId}`;
+    }
+    navigate(url);
+  };
+  const goToPageAndScroll = (scrollToId, path) => {
+    navigate(`${path}?scrollTo=${scrollToId}`);
+  };
+  const goToPlace = ({
+    path,
+    scrollToId,
+    tabId,
+    subTabId,
+    collapseId,
+    tabincolId
+  }) => {
+    let url = `/${path.startsWith("/") ? path.slice(1) : path}`;
+    let paramsAdded = false;
+    console.log("Found path: " + path);
+    if (tabId) {
+      console.log("Found tabID: " + tabId);
+      url += `?tab=${tabId}`;
+      paramsAdded = true;
+      if (subTabId) {
+        console.log("Found subTabId: " + subTabId);
+        url += `&subTab=${subTabId}`;
+      }
+    }
+    if (collapseId) {
+      console.log("Found collapseId: " + collapseId);
+      if (!tabId) {
+        url += url.includes("?") ? `&collapseId=${collapseId}` : `?collapseId=${collapseId}`;
+        paramsAdded = true;
+      }
+      if (tabincolId) {
+        console.log("Found tabincolId: " + tabincolId);
+        url += `&colTab=${tabincolId}`;
+      }
+    }
+    if (scrollToId) {
+      console.log("Found scrollToId: " + scrollToId);
+      paramsAdded = true;
+      const separator = paramsAdded ? "&" : "?";
+      url += `${separator}scrollTo=${scrollToId}`;
+    }
+    console.log("Final URL:", url);
+    navigate(url);
+  };
+  return { goToPlace, goToPageAndScroll, goToPagesAndOpenTab, goToPageWithTabAndScroll, goToPageWithNestedTabs, goToPageWithTabAndCollapsible, goToTextsAndOpenCollapsible };
+};
+
+// src/components/Buttons.tsx
+import { Fragment as Fragment5, jsx as jsx7, jsxs as jsxs6 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/components/sections.tsx
+import { jsx as jsx8, jsxs as jsxs7 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/contents/team.tsx
+import { Fragment as Fragment6, jsx as jsx9, jsxs as jsxs8 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/contents/attributions.tsx
+import { useEffect as useEffect5 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/index.js";
+
+// src/components/Quotes.tsx
+import { jsx as jsx10, jsxs as jsxs9 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/contents/attributions.tsx
+import { Fragment as Fragment7, jsx as jsx11, jsxs as jsxs10 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/components/Pdfs.tsx
+import { Fragment as Fragment8, jsx as jsx12, jsxs as jsxs11 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/components/VerticalTimeline.tsx
+import { jsx as jsx13, jsxs as jsxs12 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/components/Slider.tsx
+import Slider from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react-slick/lib/index.js";
+import { Fragment as Fragment9, jsx as jsx14 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/utils/goto.ts
+var goTo = (el) => {
+  const elementRect = el.getBoundingClientRect();
+  const elementTop = elementRect.top + window.pageYOffset;
+  const viewportHeight = window.innerHeight;
+  const middlePosition = elementTop - (viewportHeight / 5 - el.offsetHeight / 2);
+  window.scrollTo({
+    top: middlePosition,
+    behavior: "smooth"
+  });
+};
+
+// src/components/ScrollLink.tsx
+import { jsx as jsx15 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+var SupScrollLink = ({ label }) => {
+  let targetId = "desc-" + label;
+  const handleClick = () => {
+    const targetElement = document.getElementById(targetId);
+    if (targetElement) {
+      goTo(targetElement);
+    }
+  };
+  return /* @__PURE__ */ jsx15("sup", { children: /* @__PURE__ */ jsx15("a", { onClick: handleClick, children: label }) });
+};
+var ScrollLinkWithChild = ({ targetId, children }) => {
+  const handleClick = () => {
+    const targetElement = document.getElementById(targetId);
+    if (targetElement) {
+      goTo(targetElement);
+    }
+  };
+  return /* @__PURE__ */ jsx15("a", { onClick: handleClick, children });
+};
+
+// src/components/BFH-Timeline.tsx
+import { Fragment as Fragment10, jsx as jsx16, jsxs as jsxs13 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/components/Photo-grid.tsx
+import { jsx as jsx17 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/components/poster.tsx
+import { Fragment as Fragment11, jsx as jsx18, jsxs as jsxs14 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/contents/Contribution/BFH/bfh-about.tsx
+import { jsx as jsx19, jsxs as jsxs15 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/contents/Contribution/BFH/postergallery.tsx
+import { Fragment as Fragment12, jsx as jsx20, jsxs as jsxs16 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/contents/Contribution/BFH/bfh.tsx
+import { jsx as jsx21, jsxs as jsxs17 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/contents/Contribution/collabs.tsx
+import { jsx as jsx22, jsxs as jsxs18 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/contents/Contribution/patient-contribution.tsx
+import { Fragment as Fragment13, jsx as jsx23, jsxs as jsxs19 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/contents/Contribution/safety-contribution.tsx
+import { Fragment as Fragment14, jsx as jsx24, jsxs as jsxs20 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/contents/Contribution/Wiki/wiki-tabs.tsx
+import { TabContext, TabList, TabPanel } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/@mui/lab/node/index.js";
+import { Box, Tab } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/@mui/material/node/index.js";
+import React2 from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/index.js";
+
+// src/contents/Contribution/Wiki/wiki-start.tsx
+import { Fragment as Fragment15, jsx as jsx25, jsxs as jsxs21 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/components/Collapsible.tsx
+import { useEffect as useEffect6, useState as useState5 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/index.js";
+import { useLocation as useLocation2 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react-router-dom/dist/main.js";
+import { Fragment as Fragment16, jsx as jsx26, jsxs as jsxs22 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/contents/Contribution/Wiki/wiki-sources.tsx
+import { jsx as jsx27, jsxs as jsxs23 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/components/Filter.tsx
+import Select from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react-select/dist/react-select.cjs.mjs";
+import React from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/index.js";
+import { jsx as jsx28 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+var wikioptions = [
+  { value: "all", label: "Show all" },
+  { value: "react", label: "React" },
+  { value: "type", label: "Types" },
+  { value: "property", label: "Properties" },
+  { value: "pipeline", label: "GitLab Pipeline" },
+  { value: "html", label: "HTML" },
+  { value: "css", label: "CSS" }
+];
+function filterMultiSelection(arr) {
+  const nono = document.getElementById("nono");
+  if (nono) {
+    nono.className = "noshow";
+  }
+  const filterableElements = document.getElementsByClassName("filterable");
+  for (let i = 0; i < filterableElements.length; i++) {
+    const el = filterableElements[i];
+    w3RemoveClass(el, "show");
+  }
+  console.log("Begin");
+  for (let i = 0; i < filterableElements.length; i++) {
+    const el = filterableElements[i];
+    let shouldShow = true;
+    for (const entry of arr) {
+      console.log(`entry: ${entry.value}`);
+      if (!el.classList.contains(entry.value)) {
+        shouldShow = false;
+        break;
+      }
+    }
+    console.log(`shouldShow: ${shouldShow}`);
+    if (shouldShow) {
+      w3AddClass(el, "show");
+    }
+  }
+  const shownElements = document.getElementsByClassName("show");
+  if (shownElements.length < 1 && nono) {
+    console.log(shownElements.length);
+    nono.className = "show";
+  }
+}
+function w3AddClass(element, name) {
+  var i, arr1, arr2;
+  arr1 = element.className.split(" ");
+  arr2 = name.split(" ");
+  for (i = 0; i < arr2.length; i++) {
+    if (arr1.indexOf(arr2[i]) == -1) {
+      element.className += " " + arr2[i];
+    }
+  }
+}
+function w3RemoveClass(element, name) {
+  var i, arr1, arr2;
+  arr1 = element.className.split(" ");
+  arr2 = name.split(" ");
+  for (i = 0; i < arr2.length; i++) {
+    while (arr1.indexOf(arr2[i]) > -1) {
+      arr1.splice(arr1.indexOf(arr2[i]), 1);
+    }
+  }
+  element.className = arr1.join(" ");
+}
+var WikiAction = class extends React.Component {
+  state = {
+    selectedOption: null
+  };
+  handleChange = (selectedOption) => {
+    this.setState(
+      { selectedOption },
+      () => console.log(`Option selected:`, this.state.selectedOption)
+    );
+    filterMultiSelection(selectedOption);
+  };
+  render() {
+    const { selectedOption } = this.state;
+    return /* @__PURE__ */ jsx28(
+      Select,
+      {
+        value: selectedOption,
+        onChange: this.handleChange,
+        isMulti: true,
+        options: wikioptions,
+        defaultValue: [wikioptions[0]],
+        className: "basic-multi-select",
+        classNamePrefix: "select"
+      }
+    );
+  }
+};
+
+// src/contents/Contribution/Wiki/Filterables.tsx
+import { jsx as jsx29, jsxs as jsxs24 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/components/Code.tsx
+import { jsx as jsx30 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/contents/Contribution/Wiki/trouble-data.tsx
+import { Fragment as Fragment17, jsx as jsx31, jsxs as jsxs25 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/contents/Contribution/Wiki/troubleshooting.tsx
+import { jsx as jsx32, jsxs as jsxs26 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/contents/Contribution/Wiki/wiki-overview.tsx
+import { jsx as jsx33, jsxs as jsxs27 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/contents/Contribution/Wiki/Wiki-downloads.tsx
+import { Fragment as Fragment18, jsx as jsx34, jsxs as jsxs28 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/contents/Contribution/Wiki/wiki-tabs.tsx
+import { jsx as jsx35, jsxs as jsxs29 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/contents/Contribution/Wiki/wiki.tsx
+import { jsx as jsx36 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/contents/Contribution/contribution.tsx
+import { Fragment as Fragment19, jsx as jsx37, jsxs as jsxs30 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/components/Boxes.tsx
+import { jsx as jsx38, jsxs as jsxs31 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+function QaBox({ q, a }) {
+  return /* @__PURE__ */ jsxs31("div", { className: "qabox", children: [
+    /* @__PURE__ */ jsx38("div", { className: "question-bubble", children: /* @__PURE__ */ jsx38("div", { className: "row", children: q }) }),
+    /* @__PURE__ */ jsx38("div", { className: "question-bubble", children: /* @__PURE__ */ jsx38("div", { className: "row", children: a }) })
+  ] });
+}
+
+// src/components/Tabs.tsx
+import { Fragment as Fragment20, jsx as jsx39, jsxs as jsxs32 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/components/Graph.tsx
+import { Pie } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react-chartjs-2/dist/index.js";
+import { Bar } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react-chartjs-2/dist/index.js";
+import { Chart as ChartJS, Tooltip, Legend, ArcElement, BarElement, CategoryScale, LinearScale, Title, RadialLinearScale } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/chart.js/dist/chart.js";
+import { jsx as jsx40 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+ChartJS.register(
+  ArcElement,
+  Tooltip,
+  Legend,
+  CategoryScale,
+  RadialLinearScale,
+  LinearScale,
+  BarElement,
+  Title
+);
+
+// src/data/symptom-data.tsx
+import { Fragment as Fragment21, jsx as jsx41, jsxs as jsxs33 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+var symptomdata = [
+  {
+    name: "Pancreas",
+    picture: "https://static.igem.wiki/teams/5247/scientific-figures/pancreas.svg",
+    introduction: [/* @__PURE__ */ jsxs33(Fragment21, { children: [
+      "Located behind the stomach in the back abdominal cavity ",
+      /* @__PURE__ */ jsx41(SupScrollLink, { label: "74" })
+    ] }), /* @__PURE__ */ jsxs33(Fragment21, { children: [
+      "Responsible for neutralizing stomach acid, production of hormones (like Insulin) and digestion enzymes ",
+      /* @__PURE__ */ jsx41(SupScrollLink, { label: "74" })
+    ] }), /* @__PURE__ */ jsxs33(Fragment21, { children: [
+      "Clogging caused by CF, so that products of the pancreatic gland can not be distributed ",
+      /* @__PURE__ */ jsx41(SupScrollLink, { label: "75" })
+    ] }), /* @__PURE__ */ jsxs33(Fragment21, { children: [
+      "Pancreatic insufficiency due to CF can lead to malnutrition ",
+      /* @__PURE__ */ jsx41(SupScrollLink, { label: "76" }),
+      ", digestive problems and abdominal pain ",
+      /* @__PURE__ */ jsx41(SupScrollLink, { label: "77" }),
+      ", CF-associated diabetes ",
+      /* @__PURE__ */ jsx41(SupScrollLink, { label: "78" })
+    ] }), /* @__PURE__ */ jsxs33(Fragment21, { children: [
+      "Treatment options include nutritional therapy and supplementation of pancreatic enzymes ",
+      /* @__PURE__ */ jsx41(SupScrollLink, { label: "79" })
+    ] })]
+  },
+  {
+    name: "Intestines",
+    picture: "https://static.igem.wiki/teams/5247/scientific-figures/largeintestine.svg",
+    introduction: [/* @__PURE__ */ jsx41(Fragment21, { children: "Located in the abdominal cavity and extends from the stomach to the anus" }), /* @__PURE__ */ jsxs33(Fragment21, { children: [
+      "Responsible for nutrient absorption, water reabsorption, and waste elimination ",
+      /* @__PURE__ */ jsx41(SupScrollLink, { label: "80" })
+    ] }), /* @__PURE__ */ jsxs33(Fragment21, { children: [
+      "CF can cause blocking of the intestines, preventing the normal movement of food and absorption of nutrients ",
+      /* @__PURE__ */ jsx41(SupScrollLink, { label: "81" })
+    ] }), /* @__PURE__ */ jsxs33(Fragment21, { children: [
+      "Intestinal blockage due to CF can lead to malabsorption of nutrients, and conditions like meconium ileus in newborns or distal intestinal obstruction syndrome (DIOS) in adults ",
+      /* @__PURE__ */ jsx41(SupScrollLink, { label: "81" })
+    ] }), /* @__PURE__ */ jsxs33(Fragment21, { children: [
+      "Treatment options include the use of laxatives, enzyme supplementation, feeding tubes, and in severe cases, surgical intervention or intestinal transplantation ",
+      /* @__PURE__ */ jsx41(SupScrollLink, { label: "81" })
+    ] })]
+  },
+  {
+    name: "Liver",
+    picture: "https://static.igem.wiki/teams/5247/scientific-figures/liver.svg",
+    introduction: [/* @__PURE__ */ jsxs33(Fragment21, { children: [
+      "Located directly below the diaphragm near the pancreatic gland and stomach ",
+      /* @__PURE__ */ jsx41(SupScrollLink, { label: "82" })
+    ] }), /* @__PURE__ */ jsxs33(Fragment21, { children: [
+      "Responsible for detoxification, bile production for enhancement of digestion, protein synthesis for blood clotting and immune functions, nutrient processing and storage ",
+      /* @__PURE__ */ jsx41(SupScrollLink, { label: "82" })
+    ] }), /* @__PURE__ */ jsxs33(Fragment21, { children: [
+      "CF affects the normal secretion and function of bile- it becomes stickier ",
+      /* @__PURE__ */ jsx41(SupScrollLink, { label: "83" })
+    ] }), /* @__PURE__ */ jsxs33(Fragment21, { children: [
+      "Symptoms caused by CF include bruising, nose bleeds, Inflammation, more frequent chest infections, low body weight, liver cirrhosis, lethargy ",
+      /* @__PURE__ */ jsx41(SupScrollLink, { label: "83" })
+    ] }), /* @__PURE__ */ jsxs33(Fragment21, { children: [
+      "Treatment options include nutritional therapy, modulators, UDCA, liver transplantation ",
+      /* @__PURE__ */ jsx41(SupScrollLink, { label: "84" })
+    ] })]
+  },
+  {
+    name: "Sexual glands",
+    picture: "https://static.igem.wiki/teams/5247/scientific-figures/glands.svg",
+    introduction: [/* @__PURE__ */ jsxs33(Fragment21, { children: [
+      "Located in pelvic area ",
+      /* @__PURE__ */ jsx41(SupScrollLink, { label: "85" })
+    ] }), /* @__PURE__ */ jsxs33(Fragment21, { children: [
+      "Responsible for production of sperm (male)/ production of oocytes and as site for embryo development (female) ",
+      /* @__PURE__ */ jsx41(SupScrollLink, { label: "86" })
+    ] }), /* @__PURE__ */ jsxs33(Fragment21, { children: [
+      "CF causes thick mucus to block reproductive ducts (both), affects sperm transport (male) ",
+      /* @__PURE__ */ jsx41(SupScrollLink, { label: "87" }),
+      " and cervical mucus density (female) ",
+      /* @__PURE__ */ jsx41(SupScrollLink, { label: "88" })
+    ] }), /* @__PURE__ */ jsxs33(Fragment21, { children: [
+      "This can lead in context of CF to reduced fertility or even infertility ",
+      /* @__PURE__ */ jsx41(SupScrollLink, { label: "87" }),
+      /* @__PURE__ */ jsx41(SupScrollLink, { label: "88" })
+    ] }), /* @__PURE__ */ jsxs33(Fragment21, { children: [
+      " ",
+      /* @__PURE__ */ jsx41("i", { children: " In vitro " }),
+      " fertilization can be an option for CF patients ",
+      /* @__PURE__ */ jsx41(SupScrollLink, { label: "89" }),
+      " "
+    ] })]
+  },
+  {
+    name: "Lungs",
+    picture: "https://static.igem.wiki/teams/5247/scientific-figures/lungs.svg",
+    introduction: [/* @__PURE__ */ jsxs33(Fragment21, { children: [
+      "Located in the ribcage ",
+      /* @__PURE__ */ jsx41(SupScrollLink, { label: "90" })
+    ] }), /* @__PURE__ */ jsxs33(Fragment21, { children: [
+      "Responsible for breathing \u2013 aspiration of life-giving oxygen and deposition of carbondioxide ",
+      /* @__PURE__ */ jsx41(SupScrollLink, { label: "90" })
+    ] }), /* @__PURE__ */ jsx41(Fragment21, { children: "CF causes the thickening of mucus on top of the respiratory epithelium, serving as nutrition ground as for pathogens and impairing the movement of cilia so that the mucus can not be cart away [18]" }), /* @__PURE__ */ jsxs33(Fragment21, { children: [
+      "Symptoms caused by CF include shortness of breath, persistent cough [19], lung infections (mainly caused by ",
+      /* @__PURE__ */ jsx41("i", { children: " Pseudomonas aeruginosa " }),
+      ", ",
+      /* @__PURE__ */ jsx41("i", { children: " Staphylococcus aureus " }),
+      " and ",
+      /* @__PURE__ */ jsx41("i", { children: " Burkholderia cepacia " }),
+      ") [20], bronchiectasis [21] "
+    ] }), /* @__PURE__ */ jsx41(Fragment21, { children: "Treatment options include respiratory physiotherapy (e.g. bronchiodilators), sports, inhalation, antibiotics against pathogens, lung transplantation [22]" })]
+  },
+  {
+    name: "Skeletal System",
+    picture: "https://static.igem.wiki/teams/5247/scientific-figures/bones.svg",
+    introduction: [/* @__PURE__ */ jsx41(Fragment21, { children: "Located throughout the entire body" }), /* @__PURE__ */ jsx41(Fragment21, { children: "Responsible for structuration of the body, protection of organs, mineral storage, blood cell production [23]" }), /* @__PURE__ */ jsx41(Fragment21, { children: "CF affects the skeletal system by reducing bone mineral density [24]" }), /* @__PURE__ */ jsx41(Fragment21, { children: "This can lead in context of CF to osteoporosis, spinal fractures, kyphosis, scoliosis [24]" }), /* @__PURE__ */ jsx41(Fragment21, { children: "Treatment options include uptake of biophosphonates to increase bone density, vitamin D for maintenance of calcium levels needed for mineralization [24]" })]
+  },
+  {
+    name: "Skin",
+    picture: "https://static.igem.wiki/teams/5247/scientific-figures/skin.svg",
+    introduction: [/* @__PURE__ */ jsx41(Fragment21, { children: "Located on the surface of the entire body" }), /* @__PURE__ */ jsx41(Fragment21, { children: "Responsible for barrier function, immunological defense, regulation of homeostasis, sensory functions [25]" }), /* @__PURE__ */ jsx41(Fragment21, { children: "CF affects CFTR channels of sweat glands, which leads to salt deposits on the skin [26]" }), /* @__PURE__ */ jsx41(Fragment21, { children: "This can lead in context of CF to skin irritation (rash or dermatitis) [26]" }), /* @__PURE__ */ jsx41(Fragment21, { children: "Prevention via drinking a lot and a rather salty diet possible [27]" })]
+  },
+  {
+    name: "Nose",
+    picture: "https://static.igem.wiki/teams/5247/scientific-figures/nose.svg",
+    introduction: [/* @__PURE__ */ jsx41(Fragment21, {}), /* @__PURE__ */ jsx41(Fragment21, { children: "Responsible for smell perception, breathing, filtration and cleaning, and serving as a resonance chamber for the voice [28]" }), /* @__PURE__ */ jsx41(Fragment21, { children: "CF affects thickness of nasal secretions, which cannot drain well [26]" }), /* @__PURE__ */ jsx41(Fragment21, { children: "This can lead in context of CF to nasal congestion, pressure headaches, sinusitis, inflammation of nasal polyps [26]" }), /* @__PURE__ */ jsx41(Fragment21, { children: "Therapy ranges from nasal sprays to surgical removal of nasal polyps [26]" })]
+  },
+  {
+    name: "Brain",
+    picture: "https://static.igem.wiki/teams/5247/scientific-figures/brain.svg",
+    introduction: [/* @__PURE__ */ jsx41(Fragment21, { children: "Located inside the skull" }), /* @__PURE__ */ jsx41(Fragment21, { children: "Responsible for cognitive functions, movement coordination, and control of vital functions [29]" }), /* @__PURE__ */ jsx41(Fragment21, { children: "CF affects mental health due to psychological stress and social isolation [30]" }), /* @__PURE__ */ jsx41(Fragment21, { children: "This can lead in context of CF to physical illnesses like depression and anxiety disorders [30]" }), /* @__PURE__ */ jsx41(Fragment21, { children: "Treatment options include psychotherapy, antidepressants, support groups and sports [31]" })]
+  }
+];
+
+// src/data/drug-data.tsx
+import { Fragment as Fragment22, jsx as jsx42, jsxs as jsxs34 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+var drugdata = [
+  //    {
+  //        name: "About",
+  //        picture: "...",
+  //        introduction: "",
+  //        examples: [
+  //            {
+  //                title: "",
+  //                text: [""]
+  //            },
+  //            {
+  //                title: "",
+  //                text: ["string"]
+  //            },
+  //        ]
+  //    },
+  {
+    //gibt 4 Modulator Beispiele
+    name: "Modulators",
+    picture: "https://static.igem.wiki/teams/5247/scientific-figures/modulators.svg",
+    introduction: /* @__PURE__ */ jsxs34(Fragment22, { children: [
+      "CFTR modulators represent a significant advancement in CF treatment since they are small molecules improving the function of the defective CFTR protein in a mutation-specific way, which helps restore chloride ion transport across cell membranes. Notable pharmaceutical agents include Trikafta\xAE, Symdeko\xAE, Orkambi\xAE and Kalydeco\xAE ",
+      /* @__PURE__ */ jsx42(SupScrollLink, { label: "74" }),
+      ". These medications have been demonstrated to significantly improve lung function and reduce pulmonary exacerbations. However, they are expensive and may cause side effects such as liver enzyme elevations and cataracts in pediatric patients ",
+      /* @__PURE__ */ jsx42(SupScrollLink, { label: "75" }),
+      ". Furthermore, they are not suitable for all CF patients since only mutations which produce a CFTR channel can be supported by CFTR modulators, not those mutations which lead to a missing CFTR channel (knock out) ",
+      /* @__PURE__ */ jsx42(SupScrollLink, { label: "74" }),
+      ", e.g. stop-mutations including p.Arg553Ter or p.Gly542Ter",
+      /* @__PURE__ */ jsx42(SupScrollLink, { label: "76" }),
+      ". "
+    ] }),
+    examples: [
+      {
+        title: "Trikafta",
+        //quelle 4
+        text: [/* @__PURE__ */ jsxs34(Fragment22, { children: [
+          'Active ingredient(s): Combination of elexacaftor/tezacaftor/ivacaftor","Indications: For CF patients aged 2 years and older with at least one F508del mutation = 85 % of CF patients","Mechanism: Elexacaftor and tezacaftor act as correctors on misfolded CFTR and permit delivery to the cell surface, thereby improving the channel density at the plasma membrane, while ivacaftor as a potentiator acts on CFTR channels that have reached the cell surface and increase the gating and conductance of ions ',
+          /* @__PURE__ */ jsx42(SupScrollLink, { label: "77" }),
+          '","Administration: Oral tablets'
+        ] }), "Approval: Approved by the EMA in 2020 "]
+      },
+      {
+        title: "Symdeko",
+        //quelle 1
+        text: ["Active ingredient(s): Combination of tezacaftor and ivacaftor", "Indications: For CF patients aged 6 years and older with specific mutations in combination with F508del or with two copies of F508del mutation", /* @__PURE__ */ jsxs34(Fragment22, { children: [
+          "Mechanism: Tezacaftor acts as a corrector on misfolded CFTR and permit delivery to the cell surface, thereby improving the channel density at the plasma membrane, while ivacaftor as a potentiator acts on CFTR channels that have reached the cell surface and increase the gating and conductance of ions ",
+          /* @__PURE__ */ jsx42(SupScrollLink, { label: "77" }),
+          " "
+        ] }), "Administration: Oral tablets", "Approval: Approved by the EMA in 2018"]
+      },
+      {
+        title: "Orkambi",
+        //quelle 6
+        text: ["Active ingredient(s): Combination of lumacaftor and ivacaftor", "Indications: For CF patients aged 1 year and older with two copies of the F508del mutation", /* @__PURE__ */ jsxs34(Fragment22, { children: [
+          "Mechanism: Lumacaftor acts as a corrector on misfolded CFTR and permit delivery to the cell surface, thereby improving the channel density at the plasma membrane, while ivacaftor as a potentiator act on CFTR channels that have reached the cell surface and increase the gating and conductance of ions ",
+          /* @__PURE__ */ jsx42(SupScrollLink, { label: "77" })
+        ] }), "Administration: Oral tablets", "Approval: Approved by the EMA in 2015"]
+      },
+      {
+        title: "Kalydeco",
+        //quelle 7
+        text: ["Active ingredient(s): Ivacaftor", "Indications: For CF patients aged 4 months and older with a gating mutation in the CFTR gene (excluding F508del)", /* @__PURE__ */ jsxs34(Fragment22, { children: [
+          "Mechanism: Ivacaftor as a potentiator acts on CFTR channels that have reached the cell surface and increase the gating and conductance of ions ",
+          /* @__PURE__ */ jsx42(SupScrollLink, { label: "77" })
+        ] }), "Administration: Oral tablets", "Approval: Approved by the EMA in July 2012"]
+      }
+    ]
+  },
+  {
+    name: "Mucolytics and inhalation",
+    //gibt 2 Inhalation Beispiele
+    picture: "https://static.igem.wiki/teams/5247/scientific-figures/mucolytics.svg",
+    introduction: /* @__PURE__ */ jsxs34(Fragment22, { children: [
+      "Mucolytics help thin and loosen the mucus in the lungs, making it easier to cough up and clear the airways. These therapies are typically administered via wet or dry inhalation, providing direct delivery to the lungs. In the case of wet inhalation, the medication is inhaled as an aqueous solution and nebulized, while in the case of dry inhalation, the medication is inhaled as a powder. ",
+      /* @__PURE__ */ jsx42(SupScrollLink, { label: "74" }),
+      " Key Therapies include mannitol, Pulmozyme\xAE and hypertonic saline."
+    ] }),
+    examples: [
+      {
+        title: "Pulmozyme",
+        //quelle 8
+        text: ["Active ingredient(s): Dornase alfa as mucolytic enzyme", "Indications: For CF patients aged 5 years and older", "Mechanism: breaks up and thins mucus via DNase activity", "Administration: Inhalation via nebulizer, once or twice daily", "Approval: Approved by the FDA in 1993 [9]"]
+      },
+      {
+        title: "Hypertonic saline",
+        //quelle 10
+        text: ["Active ingredient(s): Osmotic agent sodium chloride (3%, 3.5%, 7%)", "Indications: For CF patients aged 6 years and older", "Mechanism: Draws water into the airways, hydrating the mucus and improving clearance", "Administration: Inhalation via nebulizer, used twice daily", "Approval: no official approval by EMA or FDA available, but widely used for several decades [11]", "Price: low-cost [11]"]
+      }
+    ]
+  },
+  {
+    name: "Antibiotics",
+    //gibt 2 AB Beispiele 
+    picture: "https://static.igem.wiki/teams/5247/scientific-figures/antibiotics.svg",
+    introduction: "Antibiotics are crucial for treating bacterial infections in CF patients since the mucus serves as an optimal environment for pathogens. A huge variety of antibiotics can be inhaled, oral, or intravenous, depending on the severity and kind of the infection [12]. Commercially available medications include TOBI\xAE and CAYSTON\xAE. A major problem associated with the application of antibiotics is the fact that long-term use can lead to antibiotic resistance and potential side effects like kidney damage and hearing loss [12].",
+    examples: [
+      {
+        title: "TOBI",
+        //quelle 13 + Pseudo muss kursiv
+        text: ["Active ingredient(s): Tobramycin", /* @__PURE__ */ jsxs34(Fragment22, { children: [
+          "Indications: For CF patients aged 6 years and older with ",
+          /* @__PURE__ */ jsx42("i", { children: " Pseudomonas aeruginosa " }),
+          " infections "
+        ] }), "Mechanism: Aminoglycoside antibiotic disrupts bacterial protein synthesis, leading to the death of the pathogen", "Administration: Inhalation of antibiotic via nebulizer, typically taken twice daily in 28-day cycles", "Approval: Approved by the EMA in 2011 [14]"]
+      },
+      {
+        title: "CAYSTON",
+        //quelle 15 + Pseudo muss kursiv
+        text: ["Active ingredient(s): Aztreonam", /* @__PURE__ */ jsxs34(Fragment22, { children: [
+          "Indications: For CF patients aged 6 years and older with ",
+          /* @__PURE__ */ jsx42("i", { children: " Pseudomonas aeruginosa " }),
+          " infections "
+        ] }), "Mechanism: Beta-Lactam antibiotic disrupts bacterial cell wall synthesis, leading to the death of the pathogen", "Administration: Inhalation via nebulizer, taken three times daily in 28-day cycles", "Approval: Approved by the EMA in 2009"]
+      }
+    ]
+  },
+  {
+    name: "Digestive enzymes and diet",
+    //ein beispiel
+    picture: "https://static.igem.wiki/teams/5247/scientific-figures/diet.svg",
+    introduction: /* @__PURE__ */ jsxs34(Fragment22, { children: [
+      " The digestive process is impaired in 80% of patients with  Cystic Fibrosis (CF), as a result of pancreatic insufficiency, which in turn leads to difficulties in digesting food and absorbing nutrients. Enzyme supplements like Creon\xAE are therefore essential [16]. Moreover CF patients are also advised to eat a balanced and energy-rich diet, as the increased work of breathing and increased coughing, as well as infections, fever and diarrhoea, consume more energy than a healthy person. ",
+      /* @__PURE__ */ jsx42(SupScrollLink, { label: "74" }),
+      " It is also an option for patients to use nutritional supplements. Electrolyte preparations are also used in this context to compensate for the increased need for fluids and the required salts."
+    ] }),
+    examples: [
+      {
+        title: "Creon",
+        //quelle 17
+        text: ["Active ingredient(s): pancreatic enzymes (lipase, amylase, protease) for enzyme replacement therapy", "Indications: For CF patients with exocrine pancreatic insufficiency", "Mechanism: Provides digestive enzymes (lipase, protease, amylase) to aid digestion", "Administration: Oral capsules, taken with meals", "Approval: Approved by the FDA in 2009"]
+      }
+    ]
+  }
+];
+
+// src/components/Complex-svg.tsx
+import { jsx as jsx43, jsxs as jsxs35 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/components/makeSources.tsx
+import { useState as useState6, useEffect as useEffect7 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/index.js";
+import bibtexParse from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/bibtex-parser-js/bibtexParse.js";
+import { Fragment as Fragment23, jsx as jsx44, jsxs as jsxs36 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+function formatPages(pages) {
+  if (pages && pages.length > 0) {
+    const pageRangeRegex = /--|-|–|–/;
+    if (pageRangeRegex.test(pages)) {
+      const pag = pages.split(pageRangeRegex).map((p) => p.trim());
+      const begin = pag[0];
+      const end = pag[1];
+      return /* @__PURE__ */ jsxs36(Fragment23, { children: [
+        ",\xA0",
+        /* @__PURE__ */ jsx44("span", { property: "schema:pageBegin", children: begin }),
+        "-",
+        /* @__PURE__ */ jsx44("span", { property: "schema:pageEnd", children: end })
+      ] });
+    } else if (/^\d+(-\d+)?$/.test(pages)) {
+      return /* @__PURE__ */ jsxs36(Fragment23, { children: [
+        ",\xA0",
+        /* @__PURE__ */ jsx44("span", { property: "schema:pageBegin", children: pages })
+      ] });
+    } else {
+      console.warn(`Non-numeric page information detected ('${pages}'). Treating as missing.`);
+      return null;
+    }
+  } else {
+    console.warn("Sorry, no page information.");
+    return null;
+  }
+}
+var BibtexParser = ({ bibtexSources: bibtexSources6, special, start }) => {
+  const [parsedEntries, setParsedEntries] = useState6([]);
+  useEffect7(() => {
+    try {
+      const allEntries = [];
+      bibtexSources6.forEach((bibtex) => {
+        const parsed = bibtexParse.toJSON(bibtex);
+        allEntries.push(...parsed);
+      });
+      setParsedEntries(allEntries);
+    } catch (error) {
+      console.error("Error parsing BibTeX: ", error);
+      alert("An error occurred while parsing the BibTeX entries. Please check the format." + bibtexSources6);
+    }
+  }, [bibtexSources6]);
+  const formatAuthors = (authors) => {
+    const cleanedAuthors = authors.replace(/\s*and\s*/g, "|").replace(/\{|\}/g, "").trim();
+    const authorList = cleanedAuthors.split("|").map((author) => author.trim());
+    const maxAuthors = 7;
+    const formattedAuthors = authorList.map((author, _index) => {
+      const [last, firstNames] = author.includes(",") ? author.split(",").map((part) => part.trim()) : ["", author];
+      const initials = firstNames.split(" ").map((n) => n[0] + ".").join(" ");
+      const formattedName = `${last}, ${initials}`.trim();
+      return formattedName;
+    });
+    const output = formattedAuthors.slice(0, maxAuthors).join("; ") + (formattedAuthors.length > maxAuthors ? " et al." : "");
+    return output;
+  };
+  let specialthing = "";
+  if (special) {
+    specialthing = `#${special}`;
+  }
+  const renderCitation = (entry, index) => {
+    let citationNumber = index + 1;
+    if (start) {
+      citationNumber += start - 1;
+    }
+    const entryType = entry.entryType.toLowerCase();
+    const entryTags = entry.entryTags;
+    switch (entryType) {
+      case "article":
+        return /* @__PURE__ */ jsxs36("li", { typeof: "schema:ScholarlyArticle", role: "doc-biblioentry", property: "schema:citation", id: `desc-${citationNumber}${specialthing}`, children: [
+          formatAuthors(entryTags.AUTHOR || entryTags.EDITOR || ""),
+          "\xA0",
+          /* @__PURE__ */ jsxs36("span", { property: "schema:name", children: [
+            entryTags.TITLE.replace(/[?!.]/g, "").replace(/\n/g, " ").trim(),
+            "."
+          ] }),
+          "\xA0",
+          /* @__PURE__ */ jsx44("i", { property: "schema:publisher", typeof: "schema:Organization", children: entryTags.JOURNAL }),
+          "\xA0",
+          /* @__PURE__ */ jsx44("b", { property: "issueNumber", typeof: "PublicationIssue", children: entryTags.VOLUME }),
+          formatPages(entryTags.PAGES) && /* @__PURE__ */ jsx44("span", { children: formatPages(entryTags.PAGES) }),
+          entryTags.YEAR && /* @__PURE__ */ jsxs36("span", { children: [
+            "\xA0(",
+            /* @__PURE__ */ jsx44("time", { property: "schema:datePublished", datatype: "xsd:gYear", dateTime: entryTags.YEAR, children: entryTags.YEAR }),
+            ")."
+          ] }),
+          entryTags.DOI && /* @__PURE__ */ jsxs36("span", { children: [
+            "\xA0",
+            /* @__PURE__ */ jsxs36("a", { className: "doi", href: `https://doi.org/${entryTags.DOI}`, children: [
+              "doi: ",
+              entryTags.DOI
+            ] })
+          ] })
+        ] }, index);
+      case "book":
+        return /* @__PURE__ */ jsxs36("li", { typeof: "schema:Book", role: "doc-biblioentry", property: "schema:citation", id: `desc-${citationNumber}`, children: [
+          formatAuthors(entryTags.AUTHOR || entryTags.EDITOR || ""),
+          entryTags.TITLE ? /* @__PURE__ */ jsxs36("span", { property: "schema:name", children: [
+            "\xA0",
+            entryTags.TITLE.replace(/[?!.]/g, "").replace(/\n/g, " ").trim(),
+            "."
+          ] }) : entryTags.BOOKTITLE ? /* @__PURE__ */ jsxs36("span", { property: "schema:name", children: [
+            "\xA0",
+            entryTags.BOOKTITLE.replace(/[?!.]/g, "").replace(/\n/g, " ").trim(),
+            "."
+          ] }) : console.warn(`No title or booktitle found for entry ${citationNumber}`),
+          entryTags.PUBLISHER && /* @__PURE__ */ jsxs36("i", { property: "schema:publisher", typeof: "schema:Organization", children: [
+            "\xA0",
+            entryTags.PUBLISHER
+          ] }),
+          entryTags.YEAR && /* @__PURE__ */ jsxs36("span", { children: [
+            "\xA0(",
+            /* @__PURE__ */ jsx44("time", { property: "schema:datePublished", datatype: "xsd:gYear", dateTime: entryTags.YEAR, children: entryTags.YEAR }),
+            ")."
+          ] }),
+          entryTags.ISBN && /* @__PURE__ */ jsxs36("span", { property: "isbn", children: [
+            "\xA0",
+            entryTags.ISBN
+          ] })
+        ] }, index);
+      case "misc":
+        return /* @__PURE__ */ jsxs36("li", { typeof: "schema:WebPage", role: "doc-biblioentry", property: "schema:citation", id: `desc-${citationNumber}`, children: [
+          entryTags.AUTHOR || entryTags.EDITOR || "",
+          entryTags.TITLE && /* @__PURE__ */ jsxs36("span", { property: "schema:name", children: [
+            ".\xA0",
+            entryTags.TITLE.replace(/[?!.]/g, "").replace(/\n/g, " ").trim(),
+            "."
+          ] }),
+          entryTags.HOWPUBLISHED && /* @__PURE__ */ jsxs36("i", { property: "schema:publisher", typeof: "schema:Organization", children: [
+            "\xA0",
+            entryTags.HOWPUBLISHED
+          ] }),
+          entryTags.YEAR && /* @__PURE__ */ jsxs36("span", { children: [
+            "\xA0(",
+            /* @__PURE__ */ jsx44("time", { property: "schema:datePublished", datatype: "xsd:gYear", dateTime: entryTags.YEAR, children: entryTags.YEAR }),
+            ")."
+          ] })
+        ] }, index);
+      case "inproceedings":
+        return /* @__PURE__ */ jsxs36("li", { children: [
+          /* @__PURE__ */ jsx44("span", { children: formatAuthors(entryTags.AUTHOR || "") }),
+          "\xA0",
+          /* @__PURE__ */ jsx44("span", { children: entryTags.TITLE }),
+          ". In ",
+          /* @__PURE__ */ jsx44("i", { children: entryTags.BOOKTITLE }),
+          ",\xA0",
+          /* @__PURE__ */ jsx44("b", { children: entryTags.editor }),
+          ", ",
+          entryTags.YEAR,
+          "."
+        ] }, index);
+      case "phdthesis":
+        return /* @__PURE__ */ jsxs36("li", { children: [
+          /* @__PURE__ */ jsx44("span", { children: formatAuthors(entryTags.AUTHOR || "") }),
+          "\xA0",
+          /* @__PURE__ */ jsx44("span", { children: entryTags.TITLE }),
+          ", PhD thesis, ",
+          entryTags.SCHOOL,
+          ", ",
+          entryTags.YEAR,
+          "."
+        ] }, index);
+      default:
+        console.warn(`Unknown entry type: ${entryType}`);
+        return /* @__PURE__ */ jsxs36("li", { children: [
+          "Unknown entry type: ",
+          entryType
+        ] }, index);
+    }
+  };
+  let startnumber = 1;
+  if (start) {
+    startnumber = start;
+  }
+  return /* @__PURE__ */ jsx44("div", { children: parsedEntries.length === 0 ? /* @__PURE__ */ jsx44("p", { children: "No citations available." }) : /* @__PURE__ */ jsx44("ol", { start: startnumber, children: parsedEntries.map((entry, index) => renderCitation(entry, index)) }) });
+};
+var makeSources_default = BibtexParser;
+
+// src/sources/description-sources.tsx
+import { jsx as jsx45 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/components/Figures.tsx
+import { jsx as jsx46, jsxs as jsxs37 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/contents/description.tsx
+import { jsx as jsx47, jsxs as jsxs38 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+var medibuttonrowdata = [
+  {
+    node: createDrugSteckbrief(drugdata[0]),
+    buttonname: "Modulators",
+    cssname: "Med-First",
+    main: true
+  },
+  {
+    node: createDrugSteckbrief(drugdata[1]),
+    buttonname: "Mucolytics",
+    cssname: "Mucolytics"
+  },
+  {
+    node: createDrugSteckbrief(drugdata[2]),
+    buttonname: "Antibiotics",
+    cssname: "Antibiotics"
+  },
+  {
+    node: createDrugSteckbrief(drugdata[3]),
+    buttonname: "Enzymes",
+    cssname: "Enzymes"
+  }
+];
+var symptombuttonrowdata = [
+  {
+    node: createSymptomSteckbrief(symptomdata[0]),
+    buttonname: "Pancreas",
+    cssname: "Symp-First",
+    main: true
+  },
+  {
+    node: createSymptomSteckbrief(symptomdata[1]),
+    buttonname: "Intestines",
+    cssname: "intestines"
+  },
+  {
+    node: createSymptomSteckbrief(symptomdata[2]),
+    buttonname: "Liver",
+    cssname: "liver"
+  },
+  {
+    node: createSymptomSteckbrief(symptomdata[3]),
+    buttonname: "Sexual glands",
+    cssname: "Sexual glands"
+  },
+  {
+    node: createSymptomSteckbrief(symptomdata[4]),
+    buttonname: "Lungs",
+    cssname: "lungs"
+  },
+  {
+    node: createSymptomSteckbrief(symptomdata[5]),
+    buttonname: "Skeletal System",
+    cssname: "Skeletal System"
+  },
+  {
+    node: createSymptomSteckbrief(symptomdata[6]),
+    buttonname: "Skin",
+    cssname: "skin"
+  },
+  {
+    node: createSymptomSteckbrief(symptomdata[7]),
+    buttonname: "Nasal mucosa",
+    cssname: "Nasal mucosa"
+  },
+  {
+    node: createSymptomSteckbrief(symptomdata[8]),
+    buttonname: "Brain",
+    cssname: "brain"
+  }
+];
+function createSymptomSteckbrief(data) {
+  let examplelist = [];
+  for (let index = 0; index < data.introduction.length; index++) {
+    examplelist.push(
+      /* @__PURE__ */ jsx47("li", { children: data.introduction[index] }, index)
+    );
+  }
+  return /* @__PURE__ */ jsxs38("div", { children: [
+    /* @__PURE__ */ jsx47(H4, { id: `${data.name}-btn`, text: data.name }),
+    /* @__PURE__ */ jsxs38("div", { className: "row", children: [
+      /* @__PURE__ */ jsx47("div", { className: "col-2", children: /* @__PURE__ */ jsx47("div", { className: "symptom-img-wrapper", children: /* @__PURE__ */ jsx47("img", { src: data.picture, className: "symptom-img" }) }) }),
+      /* @__PURE__ */ jsx47("div", { className: "col", children: /* @__PURE__ */ jsx47("ul", { children: examplelist }) })
+    ] })
+  ] });
+}
+function createDrugSteckbrief(data) {
+  let examplelist = [];
+  for (let index = 0; index < data.examples.length; index++) {
+    let absaetze = [];
+    for (let i = 0; i < data.examples[index].text.length; i++) {
+      absaetze.push(
+        /* @__PURE__ */ jsx47("li", { children: data.examples[index].text[i] }, i)
+      );
+    }
+    examplelist.push(
+      /* @__PURE__ */ jsxs38("div", { className: "drug", children: [
+        /* @__PURE__ */ jsx47(H4, { text: data.examples[index].title }),
+        /* @__PURE__ */ jsx47("ul", { children: absaetze }, index)
+      ] }, index + 500)
+    );
+  }
+  return /* @__PURE__ */ jsxs38("div", { children: [
+    /* @__PURE__ */ jsx47(H4, { id: `${data.name}-btn`, text: data.name }),
+    /* @__PURE__ */ jsxs38("div", { className: "row", children: [
+      /* @__PURE__ */ jsx47("div", { className: "col-2", children: /* @__PURE__ */ jsx47("div", { className: "symptom-img-wrapper", children: /* @__PURE__ */ jsx47("img", { src: data.picture, className: "symptom-img" }) }) }),
+      /* @__PURE__ */ jsx47("div", { className: "col", children: data.introduction })
+    ] }),
+    /* @__PURE__ */ jsx47("div", { className: "col", children: examplelist })
+  ] });
+}
+
+// src/utils/createSidebar.tsx
+import { useEffect as useEffect8, useState as useState7 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/index.js";
+import { Fragment as Fragment24, jsx as jsx48, jsxs as jsxs39 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/sidebars/descS.tsx
+import { jsx as jsx49 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/components/Link.tsx
+import { jsx as jsx50 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+function TabScrollLink({ tab, scrollId, num }) {
+  const { goToPageWithTabAndScroll } = useNavigation();
+  return /* @__PURE__ */ jsx50("sup", { children: /* @__PURE__ */ jsx50("a", { onClick: () => goToPageWithTabAndScroll({ path: "", tabId: tab, scrollToId: scrollId }), children: num }) });
+}
+function OurLink({ path, scrollToId, tabId, subTabId, collapseId, text, tabincolId }) {
+  const { goToPlace } = useNavigation();
+  if (tabId && subTabId && scrollToId && collapseId && !tabincolId) {
+    return /* @__PURE__ */ jsx50("a", { onClick: () => goToPlace({ path, tabId, subTabId, scrollToId, collapseId }), children: text });
+  }
+  if (tabId && subTabId && scrollToId && collapseId && tabincolId) {
+    return /* @__PURE__ */ jsx50("a", { onClick: () => goToPlace({ path, tabId, subTabId, scrollToId, collapseId, tabincolId }), children: text });
+  } else if (tabId && subTabId && scrollToId && !collapseId) {
+    return /* @__PURE__ */ jsx50("a", { onClick: () => goToPlace({ path, tabId, subTabId, scrollToId }), children: text });
+  } else if (tabId && subTabId && !scrollToId && collapseId && !tabincolId) {
+    return /* @__PURE__ */ jsx50("a", { onClick: () => goToPlace({ path, tabId, subTabId, collapseId }), children: text });
+  } else if (tabId && subTabId && !scrollToId && collapseId && tabincolId) {
+    return /* @__PURE__ */ jsx50("a", { onClick: () => goToPlace({ path, tabId, subTabId, collapseId, tabincolId }), children: text });
+  } else if (tabId && subTabId && !scrollToId && !collapseId) {
+    return /* @__PURE__ */ jsx50("a", { onClick: () => goToPlace({ path, tabId, subTabId }), children: text });
+  } else if (tabId && !subTabId && scrollToId && collapseId && !tabincolId) {
+    return /* @__PURE__ */ jsx50("a", { onClick: () => goToPlace({ path, tabId, scrollToId, collapseId }), children: text });
+  } else if (tabId && !subTabId && scrollToId && collapseId && tabincolId) {
+    return /* @__PURE__ */ jsx50("a", { onClick: () => goToPlace({ path, tabId, scrollToId, collapseId, tabincolId }), children: text });
+  } else if (tabId && !subTabId && scrollToId && !collapseId) {
+    return /* @__PURE__ */ jsx50("a", { onClick: () => goToPlace({ path, tabId, scrollToId }), children: text });
+  } else if (tabId && !subTabId && !scrollToId && collapseId && !tabincolId) {
+    return /* @__PURE__ */ jsx50("a", { onClick: () => goToPlace({ path, tabId, collapseId }), children: text });
+  } else if (tabId && !subTabId && !scrollToId && collapseId && tabincolId) {
+    return /* @__PURE__ */ jsx50("a", { onClick: () => goToPlace({ path, tabId, collapseId, tabincolId }), children: text });
+  } else if (tabId && !subTabId && !scrollToId && !collapseId) {
+    return /* @__PURE__ */ jsx50("a", { onClick: () => goToPlace({ path, tabId }), children: text });
+  } else if (!tabId && tabincolId && scrollToId && collapseId) {
+    return /* @__PURE__ */ jsx50("a", { onClick: () => goToPlace({ path, collapseId, tabincolId, scrollToId }), children: text });
+  } else if (!tabId && subTabId && !scrollToId && collapseId && !tabincolId) {
+    return /* @__PURE__ */ jsx50("a", { onClick: () => goToPlace({ path, collapseId, subTabId }), children: text });
+  } else if (!tabId && subTabId && !scrollToId && collapseId && tabincolId) {
+    return /* @__PURE__ */ jsx50("a", { onClick: () => goToPlace({ path, collapseId, subTabId, tabincolId }), children: text });
+  } else if (!tabId && !subTabId && scrollToId && collapseId) {
+    return /* @__PURE__ */ jsx50("a", { onClick: () => goToPlace({ path, scrollToId, collapseId }), children: text });
+  } else if (!tabId && !subTabId && scrollToId && !collapseId) {
+    return /* @__PURE__ */ jsx50("a", { onClick: () => goToPlace({ path, scrollToId }), children: text });
+  } else if (!tabId && !subTabId && !scrollToId && collapseId) {
+    return /* @__PURE__ */ jsx50("a", { onClick: () => goToPlace({ path, collapseId }), children: text });
+  } else {
+    return /* @__PURE__ */ jsx50("a", { onClick: () => goToPlace({ path }), children: text });
+  }
+}
+
+// src/sources/eng-trf-sources.tsx
+import { jsx as jsx51 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/sources/eng-reporter-sources.tsx
+import { jsx as jsx52 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/sources/eng-pe-sources.tsx
+import { jsx as jsx53 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/sources/eng-peg-sources.tsx
+import { jsx as jsx54 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/sources/eng-nickases-sources.tsx
+import { jsx as jsx55 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/sources/eng-delivery-sources.tsx
+import { jsx as jsx56 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/contents/engineering.tsx
+import { Fragment as Fragment25, jsx as jsx57, jsxs as jsxs40 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/contents/notebook.tsx
+import { jsx as jsx58, jsxs as jsxs41 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/components/Table.tsx
+import { jsx as jsx59, jsxs as jsxs42 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/contents/results.tsx
+import { Fragment as Fragment26, jsx as jsx60, jsxs as jsxs43 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/contents/safety.tsx
+import { Fragment as Fragment27, jsx as jsx61, jsxs as jsxs44 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/contents/Human Practices/Overwiev.tsx
+import { jsx as jsx62, jsxs as jsxs45 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/contents/Human Practices/Introduction.tsx
+import { jsx as jsx63, jsxs as jsxs46 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/sources/joshua-inv-sources.tsx
+import { jsx as jsx64 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+function JoshuaInterviewSources() {
+  return /* @__PURE__ */ jsx64("div", { children: /* @__PURE__ */ jsx64(makeSources_default, { bibtexSources }) });
+}
+var bibtexSources = [
+  ` 
+
+@article{eins, 
+
+title = {Prime editing functionally corrects  Cystic Fibrosis-causing CFTR mutations in human organoids and airway epithelial cells}, 
+
+journal = {Cell Reports Medicine}, 
+
+volume = {5}, 
+
+number = {5}, 
+
+pages = {101544}, 
+
+year = {2024}, 
+
+issn = {2666-3791}, 
+
+doi = {https://doi.org/10.1016/j.xcrm.2024.101544}, 
+
+url = {https://www.sciencedirect.com/science/article/pii/S2666379124002349}, 
+
+author = {Mattijs Bulcaen and Ph\xE9line Kortleven and Ronald B. Liu and Giulia Maule and Elise Dreano and Mairead Kelly and Marjolein M. Ensinck and Sam Thierie and Maxime Smits and Matteo Ciciani and Aurelie Hatton and Benoit Chevalier and Anabela S. Ramalho and Xavier {Casadevall i Solvas} and Zeger Debyser and Fran\xE7ois Vermeulen and Rik Gijsbers and Isabelle Sermet-Gaudelus and Anna Cereseto and Marianne S. Carlon},
+
+}`,
+  `
+@article{zewi, 
+
+author = {Teeratakulpisarn, Jamaree and Kosuwon, Pensri and Srinakarin, Jiraporn and Panthongviriyakul, Charnchai and Sutra, Sumitr}, 
+
+year = {2006}, 
+
+month = {11}, 
+
+pages = {1756-61}, 
+
+title = {Cystic  Fibrosis in three northeast Thai infants is CF really a rare disease in the Thai population?}, 
+
+volume = {89}, 
+
+journal = {Journal of the Medical Association of Thailand = Chotmaihet thangphaet} 
+
+} `,
+  `
+
+@article{drei, 
+
+author = {Ahmed, Shakil and Cheok, Gary and Goh, AnneE and Han, Aye and Hong, SJ and Indawati, Wahyuni and Kabir, AR and Kabra, Sushil and Kamalaporn, Harutai and Kim, HyungYoung and Kunling, Shen and Lochindarat, Sorasak and Moslehi, MohammadAshkan and Nathan, AnnaMarie and Ng, Daniel and Phung, NguyenNg and Singh, V and Takase, Masato and Triasih, Rina and Dai, Zen-Kong}, 
+
+year = {2020}, 
+
+month = {01}, 
+
+pages = {8}, 
+
+title = {Cystic  Fibrosis in asia}, 
+
+volume = {4}, 
+
+journal = {Pediatric Respirology and Critical Care Medicine}, 
+
+doi = {10.4103/prcm.prcm_5_20} 
+
+} `,
+  `
+
+@article{vier, 
+
+author = {Bobbo, Khadijatabubakar and Ahmad, Umar and Chau, De-Ming and Nordin, Norshariza and Abdullah, Syahril}, 
+
+year = {2023}, 
+
+month = {05}, 
+
+pages = {103685}, 
+
+title = {A comprehensive review of Cystic Fibrosis in Africa and Asia}, 
+
+volume = {30}, 
+
+journal = {Saudi Journal of Biological Sciences}, 
+
+doi = {10.1016/j.sjbs.2023.103685} 
+
+} `
+];
+
+// src/sources/mattij-inv-sources.tsx
+import { jsx as jsx65 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+function MattijsInterviewSources() {
+  return /* @__PURE__ */ jsx65("div", { children: /* @__PURE__ */ jsx65(makeSources_default, { bibtexSources: bibtexSources2 }) });
+}
+var bibtexSources2 = [
+  `
+    @article{Bulcaen_Kortleven_Liu_Maule_Dreano_Kelly_Ensinck_Thierie_Smits_Ciciani_et,
+	title        = {
+		Prime editing functionally corrects  Cystic Fibrosis-causing CFTR mutations in
+		human organoids and airway epithelial cells
+	},
+	author       = {
+		Bulcaen, Mattijs and Kortleven, Ph\xE9line and Liu, Ronald B. and Maule, Giulia
+		and Dreano, Elise and Kelly, Mairead and Ensinck, Marjolein M. and Thierie,
+		Sam and Smits, Maxime and Ciciani, Matteo and Hatton, Aurelie and Chevalier,
+		Benoit and Ramalho, Anabela S. and Casadevall i Solvas, Xavier and Debyser,
+		Zeger and Vermeulen, Fran\xE7ois and Gijsbers, Rik and Sermet-Gaudelus, Isabelle
+		and Cereseto, Anna and Carlon, Marianne S.
+	},
+	year         = 2024,
+	month        = may,
+	journal      = {Cell Reports Medicine},
+	pages        = 101544,
+	doi          = {10.1016/j.xcrm.2024.101544},
+	issn         = {2666-3791},
+	abstractnote = {
+		Prime editing is a recent, CRISPR-derived genome editing technology capable
+		of introducing precise nucleotide substitutions, insertions, and deletions.
+		Here, we present prime editing approaches to correct L227R- and N1303K-CFTR,
+		two mutations that cause  Cystic Fibrosis and are not eligible for current
+		market-approved modulator therapies. We show that, upon DNA correction of the
+		CFTR gene, the complex glycosylation, localization, and, most importantly,
+		function of the CFTR protein are restored in HEK293T and 16HBE cell lines.
+		These findings were subsequently validated in patient-derived rectal
+		organoids and human nasal epithelial cells. Through analysis of predicted and
+		experimentally identified candidate off-target sites in primary stem cells,
+		we confirm previous reports on the high prime editor (PE) specificity and its
+		potential for a curative CF gene editing therapy. To facilitate future
+		screening of genetic strategies in a translational CF model, a machine
+		learning algorithm was developed for dynamic quantification of CFTR function
+		in organoids (DETECTOR: \u201Cdetection of targeted editing of CFTR in
+		organoids\u201D).
+	}
+}
+
+    `
+];
+
+// src/sources/liu-inv-sources.tsx
+import { jsx as jsx66 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+function LiuInterviewSources() {
+  return /* @__PURE__ */ jsx66("div", { children: /* @__PURE__ */ jsx66(makeSources_default, { bibtexSources: bibtexSources3 }) });
+}
+var bibtexSources3 = [
+  ` 
+@article{eins,
+title = {Search-and-replace genome editing without double-strand breaks or donor DNA}, 
+volume = {576}, 
+rights = {2019 The Author(s), under exclusive licence to Springer Nature Limited}, 
+ISSN = {1476-4687}, 
+DOI = {10.1038/s41586-019-1711-4}, 
+abstractNote = {Most genetic variants that contribute to disease are challenging to correct efficiently and without excess byproducts. Here we describe prime editing, a versatile and precise genome editing method that directly writes new genetic information into a specified DNA site using a catalytically impaired Cas9 endonuclease fused to an engineered reverse transcriptase, programmed with a prime editing guide RNA (pegRNA) that both specifies the target site and encodes the desired edit. We performed more than 175 edits in human cells, including targeted insertions, deletions, and all 12 types of point mutation, without requiring double-strand breaks or donor DNA templates. We used prime editing in human cells to correct, efficiently and with few byproducts, the primary genetic causes of sickle cell disease and Tay\u2013Sachs disease; to install a protective transversion in PRNP; and to insert various tags and epitopes precisely into target loci. Four human cell lines and primary post-mitotic mouse cortical neurons support prime editing with varying efficiencies. Prime editing shows higher or similar efficiency and fewer byproducts than homology-directed repair, has complementary strengths and weaknesses compared to base editing, and induces much lower off-target editing than Cas9 nuclease at known Cas9 off-target sites. Prime editing substantially expands the scope and capabilities of genome editing, and in principle could correct up to 89% of known genetic variants associated with human diseases.}, 
+number = {7785}, 
+journal = {Nature}, 
+publisher = {Nature Publishing Group}, 
+author = {Anzalone, Andrew V. and Randolph, Peyton B. and Davis, Jessie R. and Sousa, Alexander A. and Koblan, Luke W. and Levy, Jonathan M. and Chen, Peter J. and Wilson, Christopher and Newby, Gregory A. and Raguram, Aditya and Liu, David R.}, 
+year = {2019}, 
+month = {dec}, 
+pages = {149\u2013157}, 
+language = {en}
+}`,
+  `
+
+@article{zwei,
+title = {Phage-assisted evolution and protein engineering yield compact, efficient prime editors}, 
+volume = {186}, 
+ISSN = {0092-8674, 1097-4172}, 
+DOI = {10.1016/j.cell.2023.07.039}, 
+number = {18}, 
+journal = {Cell}, 
+publisher = {Elsevier}, 
+author = {Doman, Jordan L. and Pandey, Smriti and Neugebauer, Monica E. and An, Meirui and Davis, Jessie R. and Randolph, Peyton B. and McElroy, Amber and Gao, Xin D. and Raguram, Aditya and Richter, Michelle F. and Everette, Kelcee A. and Banskota, Samagya and Tian, Kathryn and Tao, Y. Allen and Tolar, Jakub and Osborn, Mark J. and Liu, David R.}, 
+year = {2023}, 
+month = {aug}, 
+pages = {3983-4002.e26}, 
+language = {English}
+}`,
+  `
+
+@article{drei, 
+title = {Phage-assisted continuous and non-continuous evolution}, 
+volume = {15}, 
+rights = {2020 The Author(s), under exclusive licence to Springer Nature Limited}, 
+ISSN = {1750-2799}, 
+DOI = {10.1038/s41596-020-00410-3}, 
+abstractNote = {Directed evolution, which applies the principles of Darwinian evolution to a laboratory setting, is a powerful strategy for generating biomolecules with diverse and tailored properties. This technique can be implemented in a highly efficient manner using continuous evolution, which enables the steps of directed evolution to proceed seamlessly over many successive generations with minimal researcher intervention. Phage-assisted continuous evolution (PACE) enables continuous directed evolution in bacteria by mapping the steps of Darwinian evolution onto the bacteriophage life cycle and allows directed evolution to occur on much faster timescales compared to conventional methods. This protocol provides detailed instructions on evolving proteins using PACE and phage-assisted non-continuous evolution (PANCE) and includes information on the preparation of selection phage and host cells, the assembly of a continuous flow apparatus and the performance and analysis of evolution experiments. This protocol can be performed in as little as 2 weeks to complete more than 100 rounds of evolution (complete cycles of mutation, selection and replication) in a single PACE experiment.}, 
+number = {12}, 
+journal = {Nature Protocols}, 
+publisher = {Nature Publishing Group}, 
+author = {Miller, Shannon M. and Wang, Tina and Liu, David R.}, 
+year = {2020}, 
+month = {dec}, 
+pages = {4101\u20134127}, 
+language = {en}
+}`,
+  `
+@article{vier, 
+title = {Systematic optimization of prime editing for the efficient functional correction of CFTR F508del in human airway epithelial cells}, 
+rights = {2024 The Author(s)}, 
+ISSN = {2157-846X}, 
+DOI = {10.1038/s41551-024-01233-3}, 
+abstractNote = {Prime editing (PE) enables precise and versatile genome editing without requiring double-stranded DNA breaks. Here we describe the systematic optimization of PE systems to efficiently correct human  Cystic Fibrosis (CF) transmembrane conductance regulator (CFTR) F508del, a three-nucleotide deletion that is the predominant cause of CF. By combining six efficiency optimizations for PE\u2014engineered PE guide RNAs, the PEmax architecture, the transient expression of a dominant-negative mismatch repair protein, strategic silent edits, PE6 variants and proximal \u2018dead\u2019 single-guide RNAs\u2014we increased correction efficiencies for CFTR F508del from less than 0.5% in HEK293T cells to 58% in immortalized bronchial epithelial cells (a 140-fold improvement) and to 25% in patient-derived airway epithelial cells. The optimizations also resulted in minimal off-target editing, in edit-to-indel ratios 3.5-fold greater than those achieved by nuclease-mediated homology-directed repair, and in the functional restoration of CFTR ion channels to over 50% of wild-type levels (similar to those achieved via combination treatment with elexacaftor, tezacaftor and ivacaftor) in primary airway cells. Our findings support the feasibility of a durable one-time treatment for CF.}, 
+journal = {Nature Biomedical Engineering}, 
+publisher = {Nature Publishing Group}, 
+author = {Sousa, Alexander A. and Hemez, Colin and Lei, Lei and Traore, Soumba and Kulhankova, Katarina and Newby, Gregory A. and Doman, Jordan L. and Oye, Keyede and Pandey, Smriti and Karp, Philip H. and McCray, Paul B. and Liu, David R.}, 
+year = {2024}, 
+month = {jul}, 
+pages = {1\u201315}, 
+language = {en}
+}`
+];
+
+// src/sources/rnhale-sources.tsx
+import { jsx as jsx67 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+function RnhaleSources() {
+  return /* @__PURE__ */ jsx67("div", { children: /* @__PURE__ */ jsx67(makeSources_default, { bibtexSources: bibtexSources4 }) });
+}
+var bibtexSources4 = [
+  `
+ 
+@article{article, 
+
+author={Roth, F. C., Numberger, M., and Draguhn, A.}, 
+
+year={2023}, 
+
+month={}, 
+
+pages={1-14}, 
+
+title={Die Entwicklung der Patch-Clamp-Technik}, 
+
+volume={}, 
+
+journal={Springer eBooks}, 
+
+doi={10.1007/978-3-662-66053-9_1} 
+
+} 
+
+`,
+  ` 
+
+@article{article, 
+
+author={Mete, V.}, 
+
+year={2023}, 
+
+month={ }, 
+
+pages={ }, 
+
+title={Entwicklung und Validierung neuer nicht-invasiver Diagnosesysteme f\xFCr Mucociliary Clearance Disorders (MCCD)}, 
+
+volume={ }, 
+
+journal={Dissertation, Westf\xE4lische Wilhelms-Universit\xE4t M\xFCnster}, 
+
+doi={10.17879/98958441905} 
+
+} 
+
+`,
+  `
+
+@article{article, 
+
+author={Giaever, I. and Keese, C. }, 
+
+year={1993}, 
+
+month={ }, 
+
+pages={591-592}, 
+
+title={A morphological biosensor for mammalian cells}, 
+
+volume={366}, 
+
+journal={Nature}, 
+
+doi={10.1038/366591a0} 
+
+} 
+`
+];
+
+// src/sources/wimscheyer-sources.tsx
+import { jsx as jsx68 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+function WischmeyerSources() {
+  return /* @__PURE__ */ jsx68("div", { children: /* @__PURE__ */ jsx68(makeSources_default, { bibtexSources: bibtexSources5 }) });
+}
+var bibtexSources5 = [
+  `
+     
+@article{article, 
+
+author={Roth, F. C., Numberger, M., and Draguhn, A.}, 
+
+year={2023}, 
+
+month={}, 
+
+pages={1-14}, 
+
+title={Die Entwicklung der Patch-Clamp-Technik}, 
+
+volume={}, 
+
+journal={Springer eBooks}, 
+
+doi={10.1007/978-3-662-66053-9_1} 
+
+} 
+
+`,
+  `
+
+@article{article, 
+
+author={Mete, V.}, 
+
+year={2023}, 
+
+month={ }, 
+
+pages={ }, 
+
+title={Entwicklung und Validierung neuer nicht-invasiver Diagnosesysteme f\xFCr Mucociliary Clearance Disorders (MCCD)}, 
+
+volume={ }, 
+
+journal={Dissertation, Westf\xE4lische Wilhelms-Universit\xE4t M\xFCnster}, 
+
+doi={10.17879/98958441905} 
+
+} 
+`,
+  `
+
+@article{article, 
+
+author={Giaever, I. and Keese, C. }, 
+
+year={1993}, 
+
+month={ }, 
+
+pages={591-592}, 
+
+title={A morphological biosensor for mammalian cells}, 
+
+volume={366}, 
+
+journal={Nature}, 
+
+doi={10.1038/366591a0} 
+
+} 
+    `
+];
+
+// src/data/hptimelinedata.tsx
+import { Fragment as Fragment28, jsx as jsx69, jsxs as jsxs47 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+function HPLinktoOtherHPTab({ tab, text }) {
+  const { goToPagesAndOpenTab } = useNavigation();
+  return /* @__PURE__ */ jsxs47("a", { onClick: () => goToPagesAndOpenTab(tab, ""), children: [
+    " ",
+    text,
+    " "
+  ] });
+}
+var pics = {
+  placeholder: "https://static.igem.wiki/teams/5247/placeholders/placehilderperson.jpeg",
+  max: "https://static.igem.wiki/teams/5247/photos/hp/hp-max-portrait.jpg",
+  kristian: "https://static.igem.wiki/teams/5247/photos/hp/kristian-interview.webp",
+  olariu: "https://static.igem.wiki/teams/5247/photos/hp/olariu-cristian.jpg",
+  westhoff: "https://static.igem.wiki/teams/5247/photos/hp/hp-katrin-portrait.jpg",
+  mattijs: "https://static.igem.wiki/teams/5247/photos/hp/mattijs.jpg",
+  julia: "https://static.igem.wiki/teams/5247/photos/hp/julia.jpg",
+  kolonko: "https://static.igem.wiki/teams/5247/photos/hp/kolonko-neu.jpg",
+  svenja: "https://static.igem.wiki/teams/5247/photos/hp/svenja-vinke.webp",
+  berens: "https://static.igem.wiki/teams/5247/photos/hp/berens.jpg",
+  draeger: "https://static.igem.wiki/teams/5247/photos/hp/oliver-draeger-patch-clamp.jpeg",
+  winkeljann: "https://static.igem.wiki/teams/5247/photos/hp/rnhale-winkeljann.jpg",
+  kuehnel: "https://static.igem.wiki/teams/5247/photos/hp/hp-philippk-hnel.jpeg ",
+  wischmeyer: "https://static.igem.wiki/teams/5247/photos/hp/wischmeyer-erhard.webp",
+  nicole: "https://static.igem.wiki/teams/5247/photos/hp/hp-friedlein-nicole.jpg",
+  joshua: "https://static.igem.wiki/teams/5247/photos/hp/joshua.jpg",
+  hammer: "https://static.igem.wiki/teams/5247/photos/hp/hp-hammer.webp",
+  johannfunke: "https://static.igem.wiki/teams/5247/photos/hp/hp-michaeljohannfunke.webp",
+  k\u00FChnel: "https://static.igem.wiki/teams/5247/photos/hp/hp-philippk-hnel.jpeg ",
+  moorlach: "https://static.igem.wiki/teams/5247/delivery/moorlach.webp ",
+  corden: "https://static.igem.wiki/teams/5247/delivery/corden-hp.webp",
+  marco: " https://static.igem.wiki/teams/5247/photos/hp/marco-raukic.webp ",
+  weber: "https://static.igem.wiki/teams/5247/delivery/weber.webp",
+  zoya: "https://static.igem.wiki/teams/5247/photos/hp/zoya-ignatova.webp",
+  kaihammer: "https://static.igem.wiki/teams/5247/photos/hp/interwiev-kai.jpeg",
+  nilshefe: "https://static.igem.wiki/teams/5247/photos/hp/nilshefe-hp.webp",
+  gxpexpert: "https://static.igem.wiki/teams/5247/photos/hp/gxpexpert.webp",
+  gxpcourse: "https://static.igem.wiki/teams/5247/photos/hp/kayagxpexpert.webp",
+  link\u00F6ping: "https://static.igem.wiki/teams/5247/photos/hp/liu2024-rund.webp",
+  biobank: "https://static.igem.wiki/teams/5247/photos/hp/biobank.webp",
+  bethel: "https://static.igem.wiki/teams/5247/photos/hp/logo-evangelisches-klinikum-bethel.webp",
+  saito: "https://static.igem.wiki/teams/5247/photos/hp/hp-makoto-saito.jpg",
+  physik: " https://static.igem.wiki/teams/5247/delivery/hp-uni-logo.webp",
+  hannovermesse: "https://static.igem.wiki/teams/5247/photos/hp/hannover-messe-svg.webp",
+  frankfurtmesse: "https://static.igem.wiki/teams/5247/photos/hp/achema.webp",
+  david: "https://static.igem.wiki/teams/5247/photos/hp/liu-talk.webp",
+  teuto: "https://static.igem.wiki/teams/5247/photos/edcation-and-outreach/teutoruft-experminet.jpeg",
+  mint: "https://static.igem.wiki/teams/5247/photos/hp/mintsommerlogo.png",
+  schueler: "https://static.igem.wiki/teams/5247/photos/edcation-and-outreach/schielerakademie-lisa-gruppe.jpg",
+  mukomove: "https://static.igem.wiki/teams/5247/photos/for-wiki-texts/po-mukomove/wir-plakat-mukomove.jpeg",
+  hakan: "https://static.igem.wiki/teams/5247/photos/hp/hakan.webp",
+  stemcell: "https://static.igem.wiki/teams/5247/photos/hp/stemcellquadrat.webp",
+  mukodino: "https://static.igem.wiki/teams/5247/photos/hp/mukodino.webp",
+  building: "https://static.igem.wiki/teams/5247/photos/hp/buildingtheteam.webp",
+  ideas: "https://static.igem.wiki/teams/5247/photos/hp/pitchingideas.webp",
+  labsupply: "https://static.igem.wiki/teams/5247/photos/hp/labsupply-info.webp",
+  hamburg: "https://static.igem.wiki/teams/5247/photos/hp/gruppenbild-hamburg.webp",
+  sriram: "https://static.igem.wiki/teams/5247/photos/sriram.svg",
+  logo: "https://static.igem.wiki/teams/5247/logos-team/precyse-no-slogan.png",
+  brasch: "https://static.igem.wiki/teams/5247/photos/hp/brasch.webp"
+};
+var timelinedata = [
+  {
+    vorname: "Building the team",
+    nachnname: "",
+    pictureurl: pics["building"],
+    job: "Team iGEM",
+    affiliation: "Bielfeld CeBiTec 2024",
+    tag: "Milestone",
+    heading: "Development of a multidisciplinary team structure",
+    interviewtabid: "recruiting",
+    quoteNachname: "Zimmermann, Instructor",
+    quoteVorname: "Sinan",
+    quote: "My first challenge was selecting the iGEM team 2024. I focused on choosing candidates with strong technical skills and the ability to work well in an interdisciplinary setting, aiming to create a diverse team with complementary strengths.",
+    type: "meta",
+    summary: [
+      /* @__PURE__ */ jsxs47("p", { children: [
+        "Building a successful ",
+        /* @__PURE__ */ jsx69(OurLink, { path: "team", text: "interdisciplinary team" }),
+        ", like the one involved in this iGEM project, requires careful coordination and a shared vision for addressing complex scientific challenges. This team is an excellent example of how bringing together individuals from various academic backgrounds fosters innovation and facilitates problem-solving in the fields of synthetic biology and biotechnology."
+      ] }),
+      /* @__PURE__ */ jsx69("p", { children: /* @__PURE__ */ jsx69("b", { children: "The team members come from diverse fields of study, including Molecular Biotechnology, Bioinformatics and genome research, Biochemistry, Molecular Cell Biology, Genome-Based System Biology, Interdisciplinary Biomedicine, and even Media Production." }) }),
+      /* @__PURE__ */ jsx69("p", { children: "This variety of expertise allows them to approach problems from multiple perspectives, ensuring that the project is well-rounded and capable of addressing both experimental and computational challenges. For instance, while the biotechnologists and molecular biologists focus on designing and conducting lab experiments, the bioinformaticians contribute crucial insights for data analysis and genome sequencing. The inclusion of a media production expert adds another layer to the team\u2019s capabilities, ensuring that science communication and project documentation are handled professionally, which is particularly important for presenting their work at conferences and competitions. The multidisciplinary structure of this team evolved naturally as they identified the project\u2019s needs and recruited members who could fill specific roles. Over time, this multidisciplinary structure has continued to develop as the team\u2019s project evolved. Roles became more defined as team members took on specific responsibilities, whether it was refining prime editing systems or crafting communication strategies for iGEM. The range of experience across the team, from younger students like Malte Lenger in the early stages of their academic careers to more advanced students in later semesters, like Lisa Wiesner, allows for a blend of fresh perspectives and seasoned expertise. This balance helps ensure both the immediate success of the project and the continuity of its progress in the future. In summary, this interdisciplinary iGEM team demonstrates how a diverse group of individuals with specialized skills can come together to tackle a complex biological project. By combining their expertise the team is able to execute their project holistically, ensuring that each aspect, from experimental design to public outreach, is handled with precision and creativity." })
+    ],
+    months: "February"
+  },
+  {
+    vorname: "Pitching ideas",
+    nachnname: "",
+    pictureurl: pics["ideas"],
+    job: "Team iGEM",
+    affiliation: "Bielfeld CeBiTec 2024",
+    tag: "Milestone",
+    heading: "Getting Acquainted with Cystic Fibrosis",
+    interviewtabid: "firstpresi",
+    quoteNachname: "K\xF6hler, Teammember",
+    quoteVorname: "Vera",
+    quote: "Firstly, we discussed various project ideas, including the use of magnetic microswimmers for targeted medical applications, gene editing approaches for  Cystic Fibrosis, treatments for muscular dystrophy and combating cyanobacteria with algae.",
+    type: "meta",
+    summary: [
+      /* @__PURE__ */ jsxs47("p", { children: [
+        "During our initial discussions about project ideas, the team explored several innovative concepts before honing in on ",
+        /* @__PURE__ */ jsx69("b", { children: " Cystic Fibrosis" }),
+        ". Each project presented unique scientific challenges and potential impacts."
+      ] }),
+      /* @__PURE__ */ jsxs47("p", { children: [
+        "One idea involved the development of ",
+        /* @__PURE__ */ jsx69("b", { children: "magnetic microswimmers" }),
+        " designed for targeted cancer therapy, particularly for ovarian cancer. The proposal aimed to overcome the limitations of traditional treatments, such as radiotherapy and cisplatin, which often damage healthy cells and result in numerous side effects. The microswimmers would be biodegradable algae-based vehicles, magnetically guided to deliver drugs directly to cancerous cells while minimizing damage to surrounding tissue. This approach offered a novel, non-invasive targeting mechanism, leveraging the potential of magnetic fields to direct the swimmers precisely to the affected areas."
+      ] }),
+      /* @__PURE__ */ jsxs47("p", { children: [
+        "Another compelling project was focused on ",
+        /* @__PURE__ */ jsx69("b", { children: "duchenne muscular dystrophy (DMD)" }),
+        ". This genetic disorder leads to muscle degeneration as muscle tissue is gradually replaced by fibrotic tissue. The team proposed several treatment approaches, including exon skipping and gene therapy using viral vectors. Key strategies included enhancing Cas protein efficiency through engineering, using liposomal vectors for gene delivery, and combining CRISPR technology with integrase fusion proteins. The team also discussed previous iGEM projects that had explored similar methodologies, emphasizing the need for specificity and efficacy in delivering therapeutic genes."
+      ] }),
+      /* @__PURE__ */ jsxs47("p", { children: [
+        "We also considered a project aimed at preventing ",
+        /* @__PURE__ */ jsx69("b", { children: "cyanobacteria blooms" }),
+        " using peptides or proteins derived from algae. Cyanobacteria can produce harmful toxins that degrade water quality and threaten ecosystems. The proposed approach focused on utilizing natural algae to develop mechanisms that inhibit the growth of harmful cyanobacteria without disrupting the ecosystem. This project emphasized conservation and biodiversity while addressing a significant environmental issue linked to the climate crisis."
+      ] }),
+      /* @__PURE__ */ jsxs47("p", { children: [
+        "Throughout our discussions, we recognized that while each project had merit, the ",
+        /* @__PURE__ */ jsx69("b", { children: " Cystic Fibrosis" }),
+        " initiative offered the most promise for a targeted approach to a well-defined problem. CF, affecting a substantial number of individuals, provided a clear opportunity for meaningful impact through gene therapy. The insights gained from our examination of other projects informed our approach to CF, allowing us to integrate knowledge from diverse fields and methodologies, ultimately shaping a comprehensive and innovative project direction."
+      ] })
+    ],
+    months: "March"
+  },
+  {
+    vorname: "Ideation in Hamburg",
+    nachnname: "",
+    pictureurl: pics["hamburg"],
+    job: "Team iGEM",
+    affiliation: "Bielfeld CeBiTec 2024",
+    tag: "Milestone",
+    heading: "Brainstorming and selection of ideas and concepts at team weekend in Hamburg",
+    interviewtabid: "ideas",
+    quote: "Thanks to our in-depth research phase, we were able to gather many insightful ideas. The workshop was highly productive and moved us significantly forward, allowing us to gain a clear vision of our project by the end of the day.",
+    quoteVorname: "Kathleen",
+    quoteNachname: "Susat, Teammember",
+    summary: [
+      /* @__PURE__ */ jsx69("p", { children: "From April 5th to 7th, we embarked on an enriching excursion dedicated to project work and team building. Our primary goal was to engage in meaningful brainstorming sessions focused on our iGEM project and to explore human practices thoroughly. We kicked off our weekend with a series of discussions that emphasized the importance of considering the impact of our work on the world. " }),
+      /* @__PURE__ */ jsx69("p", { children: "Throughout our time in Hamburg, we dedicated several hours to reading relevant literature and research papers, both individually and in groups. This collaborative effort allowed us to deepen our understanding of existing projects and innovations in our field. We critically analyzed previous iGEM projects and explored who had worked on similar ideas, which helped us identify gaps in the research and potential avenues for our own project. Our discussions naturally flowed into brainstorming sessions where we reflected on the impacts we wanted to achieve. We explored essential questions: What effects do we aim to have on society? What activities can we plan to gather evidence about how our work will resonate with the community? How can we effectively engage with stakeholders and share our findings?" }),
+      /* @__PURE__ */ jsx69("p", { children: "In addition to structured brainstorming, we exchanged ideas informally during breaks and meals, fostering a creative atmosphere. By the end of the weekend, we had not only strengthened our team bonds but also clarified our vision for the project ahead. The insights gained from our discussions and readings laid a solid foundation for our future work, allowing us to approach our project with renewed focus and purpose. " })
+    ],
+    insights: [/* @__PURE__ */ jsxs47("div", { className: "row", children: [
+      /* @__PURE__ */ jsx69("div", { className: "col", children: /* @__PURE__ */ jsx69("img", { src: "https://static.igem.wiki/teams/5247/photos/hp/teambuilding-hamburg.webp" }) }),
+      /* @__PURE__ */ jsxs47("div", { className: "col", children: [
+        /* @__PURE__ */ jsxs47("p", { children: [
+          "Our first event in Hamburg was a meeting with the Hamburg iGEM team. Overlooking the Alster lake, we exchanged ideas and got to know each other. The collaboration with ",
+          /* @__PURE__ */ jsx69(OurLink, { path: "contribution", tabId: "contribution", scrollToId: "bfh-european-meetup", text: "BFH" }),
+          " ",
+          " was strengthened by this meeting with iGEM Hamburg. Suddenly we were surprised by the typical Hamburg weather. However, we did not let this spoil our good mood. In small groups we explored Hamburg and braved the rain. We also visited the University of Hamburg and socialised a lot."
+        ] }),
+        /* @__PURE__ */ jsx69("br", {}),
+        /* @__PURE__ */ jsx69("p", { children: "On Saturday we started the most important part of our trip. Our project! The whole team gathered on the roof terrace in the bright sunshine and extensive research began. We had already chosen a general topic in Bielefeld, but now we had to narrow it down. To do this, we diligently read various publications, made notes and exchanged ideas.  Later, the team met again on the roof terrace to continue researching and discussing. Thanks to our in-depth research phase, we were able to gather many insightful ideas. The workshop was very productive and moved us forward significantly, allowing us to have a clear vision of our project by the end of the day. We now have a strong foundation to build on as we continue to develop the concept. So it was a great success! This was followed by the evening cooking session where the whole team was treated to a very tasty 3-course meal. We are already looking forward to Paris because we want to cook together in the evening and meet other iGEMers as well as Team Hamburg! " }),
+        /* @__PURE__ */ jsx69("br", {}),
+        /* @__PURE__ */ jsx69("p", { children: "Sunday morning started again with breakfast in the hostel. After checking out we walked in the bright sunshine to the Landungsbr\xFCcken, a kind of tourist landmark of Hamburg. We ate donuts and had a fantastic view of the Elbe, Hamburg's most famous river. We wanted to use the last day to see a bit more of Hamburg as a team. The return journey was used productively to read more papers and do more research for our project. " })
+      ] })
+    ] })],
+    months: "March"
+  },
+  {
+    vorname: "Max",
+    nachnname: "Beckmann",
+    job: "Patient and Student",
+    affiliation: "Bielefeld University",
+    pictureurl: pics["max"],
+    tag: "Patient",
+    heading: "Gathering valuable insights from the patient\u2019s perspective",
+    interviewtabid: "maxfirst",
+    language: "de",
+    quoteNachname: "Beckmann, Patient",
+    quoteVorname: "Max",
+    quote: "A friend of mine with  Cystic Fibrosis recently got a fungal infection that he can't get rid of. His situation really struck me; it showed how quickly a seemingly minor issue can worsen a person's life, especially for someone like us. It\u2019s a strong reminder of how fragile our health is and how fast things can change without warning.",
+    aimofcontact: [/* @__PURE__ */ jsx69("p", { children: "When CF came up as a possible topic, we reached out to a teammate's friend Max in the hopes of getting insights into the needs of CF patients and current treatments to verify the need for further treatment options. Since he was much more enthusiastic and open for discussion than we dared to hope, we extended our exchanges into the realms of the reality of life for CF patients, possible progressions, organizations and doctors in our area and his personal perspectives and values. The interest in meeting him grew in the whole team and we invited him to one of our meetings.   " })],
+    insights: [/* @__PURE__ */ jsxs47(Fragment28, { children: [
+      /* @__PURE__ */ jsx69("p", { children: "His honest and open answers to us, mostly nothing more than strangers to him, were touching and let the seriousness of CF set in. Learning about the challenges he faced felt heavy, besides him being in relatively good health and having a good life quality for a CF patient." }),
+      /* @__PURE__ */ jsx69("p", { children: "Additional to the interpersonal effects of our discussion, Max gave us the reasons to continue with gene therapy approach while focusing on the lung: Modulators do not erase all symptoms. There is a keen interest for new treatments in the CF community. The the decreasing lung functionality it the most limiting. The immense impact of treatments on the life quality.  " }),
+      /* @__PURE__ */ jsx69("p", { children: "We got new insights that motivated us to develop a new treatment, to treat the severe symptomes The need for a calorie rich diet and digestive problems. The frequency of checkups needed. How vastly different the progressions can be. The increased need for hygiene to prevent infections. The high price of medicines and induvial therapeutics. " }),
+      /* @__PURE__ */ jsx69("p", { children: `Afterwards, we reflected on the discussion and asked our team members what stuck with them: \u201CHow much attention has to be paid to everything in everyday life, I hadn't even thought about problems at the hairdresser.\u201D \u201CSimply that he was there and reported everything in such detail. From minute one, I had permanent goosebumps because I was so moved by this story. I think it's great how he stands his ground in life, does what he wants to do and what defines him as a person. It didn't seem as if his life was determined by CF. I somehow expected it to be different, even if that sounds a bit silly.\u201D \u201CThe amount of medication and how expensive it is.\u201D "The statement that left the biggest impression for me was when Max was telling about a friend of his and fellow CF patient who caught a fungi infection which he now cannot get rid of anymore, showing how fast a seemingly little infection can change the life of a CF patient for the worse without any kind of warning.\u201D \u201CThe variance in the extent of the limitations of the disease in different patients, including how the disease differs in its severity, even in patients of the same age.\u201D \u201CHow positively and calmly Max deals with his illness but has also pointed out that he is lucky, and that other people are much worse off - how much you have to pay attention to little things that you wouldn't have expected as a healthy person.\u201D ` })
+    ] })],
+    implementation: [/* @__PURE__ */ jsxs47(Fragment28, { children: [
+      " ",
+      /* @__PURE__ */ jsx69("p", { children: "This most important aspect of this meeting was less an insight, but the fact Max helped us to put a face to an abstract idea. Many of our ideas to treat CF were interesting and adventurous but meeting him put a lot into perspective. " }),
+      /* @__PURE__ */ jsxs47("p", { children: [
+        "Max played a significant role in shaping our project from the outset, particularly in guiding our focus on ",
+        /* @__PURE__ */ jsx69(OurLink, { path: "judging", tabId: "judging", scrollToId: "best-integrated-human-practice", text: "Integrated Human Practices" }),
+        " ",
+        " and ",
+        /* @__PURE__ */ jsx69(OurLink, { path: "judging", tabId: "judging", scrollToId: "safety-security", text: "Safety & Security" }),
+        " ",
+        " as special prizes. Through our discussions, we recognized the importance of these aspects in developing the best possible cure. This collaborative effort led us to pivot our target from the pancreas to the lung and move away from a diagnostic approach. His contributions not only provided valuable insights but also fostered a strong personal investment in our project."
+      ] })
+    ] })],
+    pictureurl_implementation: "",
+    interview: /* @__PURE__ */ jsxs47(Fragment28, { children: [
+      /* @__PURE__ */ jsx69(QaBox, { q: "How and when were you first diagnosed? ", a: "When I was about one year old. My mother did not do any screenings or prenatal testing. I was in pain but as an infant you cannot say that, so I screamed a lot. Many doctors shrug that off in small children but after some time a sweat test was done at the children's clinic." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "What do you think about diagnosing via sweat tests?", a: "I am a clear opponent of diagnosing via sweat tests, especially if it is used to rule out CF and people have atypical CF, because of which they do not get diagnosed because of that." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "What symptoms do you have?", a: "Before taking modulators, I was underweight and did not feel hunger. I also had no sense of taste. Now, I have a healthy weight and still have respiratory symptoms such as very sticky mucus and digestive issues." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "You are taking individual meds, correct? They are individual in respect to the mutation, not the person, right?", a: "Yes, and yes, I am. " }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "What other medications are you taking? ", a: "Nasal spray, pancreatic enzymes, saline solution for inhalation and pantoprazole, used to reduce stomach acid production.  " }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Do you know how exactly they work?", a: "Yes, I wrote a report on that during school. In the children's clinic they explained it like this: The CFTR channel is like a door and people with CF don\u2019t have that many doors and some of the doors are broken. The medication makes more doors that function." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "What changed when you started taking the modulators? ", a: "Everything. Most of symptoms are minor now and I have a better lung function and quality of life. I even grew taller." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Did you formerly take other medication?", a: "I don\u2019t remember anything like that, but I also always had good medical care.  " }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Do you experience any side effects from your medications?", a: "At first yes, a lot. Stomach cramps and difficulty breathing for example." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Is diabetes a concern of yours?", a: "Yes, it is common. I have to go to a diabetes checkup once a year. That happens together with all the other checkups like sonographies." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Do you know fellow patients that took part in clinical study for gene therapy or at least thought about doing so?", a: "I know no one that took part in one but definitely people who would like to do so." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Do you know other patients that would want to use gene therapy?", a: "Yes, most definitely." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Since your sweat is different, do you have trouble with your temperature regulation?", a: "No and I do not know any patients with an issue like that. But it still is uncomfortable in the summer, because the sweat is thick, and it can smell stronger, too." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "How many hours a day are devoted to your illness?", a: "Good question, but wrong patient. I am blessed with good health while other people my age may have to be on a ventilator. I currently only have to inhale for 20 minutes every day, take my medication and be conscious about hygiene. I would say 30 minutes a day. " }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "That means you do not have many limitations due to CF, is that right?", a: "Yes. There are many things I am concerned about but often there is not a different way." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "What are some of the limitations you do have?", a: "Of course, I am still concerned about my health and using public bathrooms for example. And I still do not go swimming in lakes and things like that. But all in all, I feel like I can live a very normal life.  " }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "One concern is hygiene. Our university for example does not have toilet seats in most bathrooms. Do you think there should be?", a: "That does not concern healthy people, who are the majority. But specifically for CF-people? No, there are too few at the university. It would be more hygienic overall, though. A \u201CCF-toilet\u201D would be nice as a form of a disabled bathroom." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "How was your childhood as a sick child and how did your parents act with you?  ", a: "My mother is active in the Muko e.V. and has been for some time. My parents always lead by example about what to do and not to do and dealt with it in a good way. My mother was always very committed and involved in giving me good care. I always knew about my illness but felt it was not that bad, because I received good care and education about my illness." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "What is a typical age for a diagnosis in your experience?", a: "Somewhere between the pregnancy and one year. It is obvious if the children do not gain weight and there are genetic screenings one can do prenatally or after birth.  " }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "If a diagnosis is possible during pregnancy, do you know of any treatments during pregnancy?", a: "No, I think the youngest age for modulators is 3 years. But people can do genetic testing and counselling before pregnancy." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "What does a high-fat diet entail?", a: "For me, it was a lot of oil and butter and high-calory drinks.  " }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "What would happen if you stopped taking your medications?", a: "The first thing to happen would be heavy and dry coughing, because the mucus would not be removed properly anymore. Thus, bacteria would not be properly removed from the lungs anymore either and an infection would become more likely. And I would not be able to really process food anymore, so no nutrients, feeling weak and stomach problems.  " }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Physical therapy is a part of your treatment \u2013 what exactly do you do there?  ", a: "Breathing exercises and training my lung volume to keep it on the same level.\xA0" }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Do you have further wished for your therapy?", a: "Not really. I am very lucky and am free of heavy symptoms on most days. " }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Is that the norm or do you know people who do want new therapies?", a: "No, there is a need for new therapies.  " }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Are these people with different mutations or worse health? ", a: "I don\u2019t know, the progression is so individual, and infections can create big changes.  " }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "A therapy for which organ would benefit most people that have worse health than you do?", a: "Probably the lung. The pancreas is important too, but stomach problems are usually less pressing than difficulty in breathing." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "You mentioned that doing sport is difficult with CF, why?", a: "Hygiene. In the lockers and the showers but also with the equipment." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Do you feel restricted in your free time activities?", a: "No, I always had good alternatives. For example, going swimming at an open-air swimming pool instead of a lake.  " }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Would you have more freedom when you are better protected from Pseudomonas spcc. and other potential infections?  ", a: "Definitely. That is a big increase in the quality of life and that is a win. It also changes the picture people have of the illness. Of course being protected by prevention is good already but effective therapies for infections increase the sense of freedom even more. " }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "You said you are afraid every time you must go for a swab, why is that? ", a: "I am afraid of getting an infection. That still could be a death sentence.  " }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Are rooms with air conditioning a problem due to the possible germs in the air conditioners?  ", a: "No, there is usually enough movement. But humidifiers are bad because of the pond water.  " }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "You mentioned going to the hairdresser is problematic. Could you elaborate? ", a: "There are many possible sources of ponding water and with that, infections. That and the hygiene aspect in general. I am visited by my hairdresser, and he only uses a specific spray bottle to wet my hair that I keep and dry thoroughly between uses." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Are you the first person in your family that has CF?  ", a: "Yes. But I suspect my father has a light or atypical form because he has suspicious mucus." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "With life expectancies looking better, do many patients want to have biological children?", a: "Not all but some. I think some would be interested in a therapy that can be done on the fertilized egg to have a healthy child.  " }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Do you know the film \u201CFive feet apart\u201D? If so, what do think about it, is it accurate?  ", a: "Yes. It does not paint a wrong picture; their progression is possible." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Do you think there has to be more effort concerning diagnostics?", a: "Early diagnosis is covered by the screenings." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Since you almost had to sue for your medication, do you know if there are any lawyers specializing in cases like this?  ", a: "No, I don\u2019t.  " }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Are most of the other patients you know in good health like you?", a: "No. Another boy my age got a fungal infection and does not have long time left to live.  " })
+    ] }),
+    summary: "We reached out to Max, a friend of a teammate, to gain insights into the needs and experiences of CF patients. Our discussions revealed the challenges faced by CF patients, even those in relatively good health, and emphasized the ongoing need for new treatment options. Max's candid sharing of his experiences highlighted the limitations of current modulators, the importance of lung function, and the impact of treatments on quality of life. This meeting transformed our project perspective, urging us to prioritize safety and real-world benefits in our design. Ultimately, Max's influence led us to focus on lung-targeted gene therapy instead of a diagnostic approach, reinforcing our commitment to Integrated Human Practices.",
+    months: "April"
+    /*interview:<iframe title="Bielefeld-CeBiTec: Interview with Max Beckmann (2024) [English]" width="560" height="315" src="https://video.igem.org/videos/embed/16501867-a687-4205-949a-51ead876e109" frameborder="0" allowfullscreen="" sandbox="allow-same-origin allow-scripts allow-popups allow-forms"></iframe>,*/
+  },
+  {
+    vorname: "Visiting ",
+    nachnname: "the Hannover Messe",
+    pictureurl: pics["hannovermesse"],
+    job: "Team iGEM",
+    affiliation: "Bielfeld CeBiTec 2024",
+    tag: "Industry",
+    heading: "Two teammembers visited the fair to talk with potential stakeholder and sponsors",
+    interviewtabid: "hannovermesse",
+    quote: "Visiting Hannover Messe was inspiring! We connected with industry leaders and discovered exciting innovations in synthetic biology that could shape our future projects.",
+    quoteNachname: "Sanfilipo, Teammember",
+    quoteVorname: "Liliana",
+    summary: "Our team members had a productive visit to the Hannover Messe, focusing on synthetic biology and research advancements. They explored innovative technologies and networked with potential sponsors, gaining valuable insights to help enhance our project and drive future developments. The event was a great opportunity to connect with industry leaders and learn about cutting-edge solutions in the field.",
+    months: "April",
+    pictureurl_implementation: "https://static.igem.wiki/teams/5247/photos/hp/hannover-1.webp"
+  },
+  {
+    title: "Prof. Dr.",
+    vorname: "Kristian",
+    nachnname: "M\xFCller",
+    job: "Research Group Cellular and Molecular Biotechnology",
+    affiliation: "Technical Faculty of Bielefeld University",
+    pictureurl: pics["kristian"],
+    tag: "Academia",
+    heading: "Discussion about the delivery method- AVV vs. LNPs and prime editing and gene therapy innovations",
+    interviewtabid: "kristian",
+    language: "de",
+    quoteNachname: " M\xFCller, Reasearch Expert for Gene Therapy ",
+    quoteVorname: "Prof. Dr. Kristiann",
+    quote: "AAVs have been widely used in gene therapy, but their scalability and immunogenicity pose challenges, particularly when re-dosing is required. In contrast, LNPs offer a promising alternative, with a higher packaging capacity and lower immunogenicity. While AAVs excel in targeted delivery, LNPs could become a more scalable and cost-effective solution for delivering gene-editing tools in the future.",
+    aimofcontact: [/* @__PURE__ */ jsx69("p", { children: "The aim of our interview with Prof. Dr. Kristian M\xFCller was to gain expert insights into the potential of prime editing technology and its application in gene therapy, particularly for treating CF. We sought to understand how innovations in prime editing, combined with optimized delivery systems, could enhance therapeutic outcomes. Prof. M\xFCller\u2019s expertise in molecular biology and gene editing provided valuable perspectives on the opportunities and challenges in developing precise, efficient, and safe treatment strategies for genetic disorders." })],
+    insights: [/* @__PURE__ */ jsx69("p", { children: "During the interview, Prof. Dr. M\xFCller highlighted the growing importance of prime editing as a powerful tool for gene therapy. Unlike traditional CRISPR-Cas systems, which often result in double-strand DNA breaks, prime editing allows for precise single-strand cuts, minimizing off-target effects and enabling more specific genetic corrections. This technology opens up new possibilities for treating diseases with known mutations, such as  Cystic Fibrosis. Prof. Dr. Kristian M\xFCller emphasized the critical role of delivery systems in the success of gene therapies, particularly in the context of CF treatment. Two primary delivery mechanisms were discussed: AAVs (Adeno-associated viruses) and LNPs (Lipid nanoparticles), each with distinct advantages and limitations. AAVs are a well-established vehicle in gene therapy, having been used successfully in various approved treatments. They are highly efficient at delivering genetic material to target cells, especially in well-characterized diseases like CF. One of their key strengths is their ability to precisely target specific tissues, making them particularly valuable for lung delivery in  Cystic Fibrosis. However, AAVs come with notable challenges, primarily their limited packaging capacity (approximately 4.5 kilobases), which constrains the size of the genetic payload they can carry. Additionally, AAVs can elicit immune responses, particularly when multiple doses are required, posing a barrier to their long-term use. On the other hand, LNPs offer a scalable and re-dosable alternative. LNPs have the advantage of a larger packaging capacity, allowing them to carry more complex genetic instructions or larger gene-editing tools, such as prime editors. They are also easier and cheaper to produce on a large scale, making them an attractive option for widespread clinical applications. A significant benefit of LNPs is their lower immunogenicity, which reduces the risk of adverse immune reactions upon repeated dosing. However, LNPs currently face challenges in specific targeting compared to AAVs. AAVs have a higher precision in targeting specific tissues, while LNPs still need optimization for targeted delivery to areas like the lungs." })],
+    implementation: [/* @__PURE__ */ jsxs47("p", { children: [
+      "Prof. M\xFCller\u2019s insights directly inform the implementation of our iGEM project, where we aim to design novel prime editors that are small enough to be delivered efficiently, while also exploring LNPs ",
+      /* @__PURE__ */ jsx69(OurLink, { path: "engineering", tabId: "delivery", scrollToId: "del1head", text: "exploring LNPs" }),
+      " as a scalable and re-dosable alternative to AAVs. By tailoring our approach to address the specific challenges of CF, such as mucus penetration and lung cell targeting, we can enhance the precision and efficacy of gene therapy. These innovations have the potential to set new standards in the field and contribute to broader research on genetic disease treatment."
+    ] })],
+    summary: [/* @__PURE__ */ jsxs47("p", { children: [
+      "In our interview with Prof. Dr. Kristian M\xFCller, we explored the revolutionary potential of prime editing as a next-generation gene editing technology. Prof. M\xFCller highlighted the advantages of prime editing over traditional CRISPR-Cas systems, particularly its ability to make precise genetic modifications without double-strand breaks, thus reducing off-target effects. He emphasized the importance of optimizing delivery systems, such as ",
+      /* @__PURE__ */ jsx69(OurLink, { path: "engineering", tabId: "delivery", scrollToId: "del1head", text: "AAV and LNPs" }),
+      ", and discussed the ethical considerations and biosafety measures crucial for advancing gene therapy. The interview underscored the significance of  Cystic Fibrosis as a model disease, given its prevalence and the potential for impactful treatments through targeted genetic corrections."
+    ] })],
+    months: "April",
+    interview: /* @__PURE__ */ jsxs47(Fragment28, { children: [
+      /* @__PURE__ */ jsx69("iframe", { title: "Bielefeld-CeBiTec: Interview M\xFCller AAV vs LNP (2024) [English]", width: "560", height: "315", src: "https://video.igem.org/videos/embed/0613b6b8-7755-4373-9d86-9910fe30781f", frameBorder: "0", allowFullScreen: true, sandbox: "allow-same-origin allow-scripts allow-popups allow-forms" }),
+      /* @__PURE__ */ jsx69("p", { children: "This interview was recorded on video at a later date." })
+    ] })
+  },
+  {
+    vorname: "Looking for expertise",
+    nachnname: "",
+    pictureurl: pics["logo"],
+    job: "Team iGEM",
+    affiliation: "Bielfeld CeBiTec 2024",
+    tag: "Milestone",
+    heading: "Identifying key experts in  Cystic Fibrosis and prime editing",
+    interviewtabid: "experts",
+    quote: "Focusing on gene therapy for  Cystic Fibrosis has been a meaningful journey for our team. Collaborating with experts has enriched our understanding and helped us refine our approach, especially in exploring prime editing. We're eager to turn our plans into reality and make a real impact",
+    quoteNachname: "Kanthak, Teammember",
+    quoteVorname: "Kai",
+    type: "meta",
+    summary: [
+      /* @__PURE__ */ jsx69("p", { children: "After our team came together and thoroughly explored various project ideas, we decided to focus on gene therapy for  Cystic Fibrosis, largely due to a personal connection with a close friend affected by the condition. Up until that point, we had not yet developed a concrete concept, so we sought to engage with experts in order to broaden our understanding of the latest advancements in gene therapy. In addition to grasping the importance of a functional gene therapy, we delved into different strategies regarding the underlying mechanisms and the best delivery methods for the therapy. While the general topic of our project was clear, we now faced the challenge of working out the details. At this stage, we decided to consult further experts in the field of  Cystic Fibrosis to deepen our knowledge and refine our approach. Through connections with the University Hospital M\xFCnster and our local hospital, we aimed to gain a comprehensive overview of the clinical applications of gene therapy and the current research in  Cystic Fibrosis. These consultations with specialists allowed us to acquire valuable insights into different therapeutic options and laid the groundwork for our own exploration of potential strategies, particularly in the area of prime editing as a promising treatment avenue." }),
+      /* @__PURE__ */ jsxs47("ul", { children: [
+        /* @__PURE__ */ jsxs47("li", { children: [
+          /* @__PURE__ */ jsx69("b", { children: "Team Formation & Research:" }),
+          " Chose gene therapy for  Cystic Fibrosis and explored mechanisms and delivery strategies."
+        ] }),
+        /* @__PURE__ */ jsxs47("li", { children: [
+          /* @__PURE__ */ jsx69("b", { children: "Expert Engagement:" }),
+          " Consulted with specialists to refine approach, focusing on prime editing."
+        ] }),
+        /* @__PURE__ */ jsxs47("li", { children: [
+          /* @__PURE__ */ jsx69("b", { children: "Medical Collaboration:" }),
+          " Gained clinical insights through partnerships with hospitals."
+        ] }),
+        /* @__PURE__ */ jsxs47("li", { children: [
+          /* @__PURE__ */ jsx69("b", { children: "Project Development:" }),
+          " Developed detailed plans for gene therapy, incorporating expert feedback."
+        ] }),
+        /* @__PURE__ */ jsxs47("li", { children: [
+          /* @__PURE__ */ jsx69("b", { children: "Testing & Future Application:" }),
+          " Plan to test strategies and prepare for potential clinical trials."
+        ] })
+      ] })
+    ],
+    months: "April"
+  },
+  {
+    vorname: "Visiting ",
+    nachnname: "the Labsupply in M\xFCnster",
+    pictureurl: pics["labsupply"],
+    job: "Team iGEM",
+    affiliation: "Bielfeld CeBiTec 2024",
+    tag: "Industry",
+    heading: "Two team members connected with prospective stakeholders and sponsors.",
+    interviewtabid: "labsupply",
+    quote: "LabSupply in M\xFCnster was a fantastic opportunity to connect with passionate professionals and explore cutting-edge research tools. We're excited about the potential collaborations ahead!",
+    quoteNachname: "Sanfilippo, Teammember",
+    quoteVorname: "Liliana",
+    summary: "In April our team visited LabSupply in M\xFCnster, where we had the chance to connect with many welcoming and knowledgeable professionals in the lab equipment field. It was an excellent opportunity to explore the latest advancements in laboratory supplies and tools that can enhance our research.",
+    months: "April",
+    pictureurl_aim: "https://static.igem.wiki/teams/5247/photos/hp/labsupply.webp"
+  },
+  {
+    vorname: "Prof. Dr. Wolf-Michael Weber",
+    nachnname: "und Dr. J\xF6rg Gro\xDFe-Onnebrink",
+    job: "Professor ",
+    affiliation: "Univesity M\xFCnster",
+    pictureurl: pics["weber"],
+    tag: "Academia",
+    heading: "Feedback Session with Experts for Cystic Fibrosis Treatment",
+    interviewtabid: "weber",
+    language: "en",
+    quoteNachname: "Weber",
+    quoteVorname: "Prof. Dr. Wolf-Michael",
+    quote: "This is also an innovative step that you have developed yourselves. That's the part that's really new and significant. A clever and exciting approach with great potential.",
+    aimofcontact: [/* @__PURE__ */ jsx69("p", { children: "The aim of the interview was to gain expert insights on optimizing the delivery of CFTR-mRNA via lung-targeted lipid nanoparticles (LNPs) for  Cystic Fibrosis (CF) treatment. Specifically, the goal was to explore potential cell targets, challenges in delivery mechanisms, and technical tools for assessing the effectiveness of mRNA therapies like the Ussing chamber system. " })],
+    insights: [
+      /* @__PURE__ */ jsx69("p", { children: "The experts highlighted the potential of targeting ionocytes, given their key role in CFTR expression, but emphasized the difficulty in accessing them due to their basal position in the respiratory epithelium. While Prof. Weber found ionocytes to be an intriguing target, Dr. Gro\xDFe-Onnebrink pointed out that there is still limited understanding of their exact role in CF pathology. Both stressed the challenge of penetrating the mucus barrier in vivo, particularly when using air-liquid interface cultures, and underscored the importance of optimizing particle size to ensure effective delivery to the deeper regions of the lungs. Prof. Weber also emphasized the need to test whether the system can still transfect cells in the presence of mucus. " }),
+      /* @__PURE__ */ jsx69("p", { children: "It was suggested to use the Ussing chamber to assess the effectiveness of the delivery system and therapeutic mRNA, though they noted certain challenges with this technique. We also discussed alternatives like organoids, which offer only indirect measurements of CFTR function, and patch clamping, which, though more precise, is a more complex and expensive method. Additionally, Prof. Weber recommended exploring chitosan-based delivery systems due to their success in his previous work, suggesting they could be a safer alternative to PEG-lipid systems, which had shown issues with cytotoxicity. " })
+    ],
+    implementation: [/* @__PURE__ */ jsxs47("p", { children: [
+      "These insights helped refine our iGEM project in several key ways:",
+      /* @__PURE__ */ jsxs47("ul", { children: [
+        /* @__PURE__ */ jsx69("li", { children: "Cell Targeting: We decided to continue exploring ionocytes as a target but acknowledged the technical hurdles involved. We also expanded our focus to include multiple cell types to test different delivery systems. " }),
+        /* @__PURE__ */ jsx69("li", { children: "Delivery Systems: We began investigating chitosan-based nanoparticles as a safer alternative to PEG-lipid systems. The suggestion to optimize particle size and delivery for inhalation was also integrated into our design. " }),
+        /* @__PURE__ */ jsx69("li", { children: "Experimental Tools: Based on the discussion, we plan to use an Ussing chamber to measure overall CFTR function in different cell types but will also explore organoid-based approaches for preliminary testing. Additionally, we consulted the medical faculty on the possibility of using patch clamping for more detailed measurements of successful transfection and restored CFTR function. " })
+      ] }),
+      ","
+    ] })],
+    summary: "The interview provided key insights into targeting ionocytes for CFTR-mRNA delivery, overcoming mucus barriers, and testing delivery effectiveness using Ussing chambers, organoids, and patch clamping, while also suggesting chitosan-based nanoparticles as a safer alternative to PEG-lipid systems.",
+    months: "may"
+  },
+  {
+    title: "Dr.",
+    vorname: "Cristian-Gabriel",
+    nachnname: "Olariu",
+    job: "pediatrician",
+    affiliation: "OWL University Hospital",
+    pictureurl: pics["olariu"],
+    tag: "Medical Professional",
+    heading: "Discussion with a pediatrician and his former patient about treatment challenges and perspectives",
+    interviewtabid: "olariu",
+    language: "de",
+    quoteNachname: "Olariu, Clinical Physician and CF Expert",
+    quoteVorname: "Dr. Cristian-Gabriel",
+    quote: "For most families, it\u2019s a shock. Cystic  Fibrosis still has a strong association with being a life-threatening disease, despite the fact that we now have good treatments, and many patients can live healthy lives. The diagnosis puts a huge psychological strain on the family, especially when dealing with very young children.",
+    aimofcontact: "To gain a deeper insight into the path to diagnosis, we invited pediatrician Dr. Cristian-Gabriel Olariu from the University Department of Pediatrics and Adolescent Medicine to share his experiences with CF patients with us. We interviewed him because of his expertise in the effects of diagnosis on the patient and the family members, but also on daily life. Additionally, we want to close the gap and create a bridge between academic research and clinical applications. Therefore, Dr. Olariu gave us insights about the clinical perspectives on CF patients.",
+    insights: [/* @__PURE__ */ jsxs47("div", { className: "row", children: [
+      /* @__PURE__ */ jsxs47("div", { className: "col", children: [
+        /* @__PURE__ */ jsx69("img", { src: "https://static.igem.wiki/teams/5247/photos/hp/olario-abbildung1.svg" }),
+        /* @__PURE__ */ jsx69("br", {}),
+        /* @__PURE__ */ jsx69("br", {}),
+        /* @__PURE__ */ jsx69("br", {}),
+        /* @__PURE__ */ jsx69("br", {}),
+        /* @__PURE__ */ jsx69("img", { src: "https://static.igem.wiki/teams/5247/photos/hp/proandcon-png.svg" })
+      ] }),
+      /* @__PURE__ */ jsxs47("div", { className: "col", children: [
+        /* @__PURE__ */ jsxs47("p", { children: [
+          "We invited Max, our CF patient contact, to join Dr. Olariu in discussing the intersection of academic research, clinical application, and patient needs. Through our connection with ",
+          /* @__PURE__ */ jsx69("a", { href: "https://www.cfvww.org", children: "CF Vests Worldwide" }),
+          ", an organization dedicated to providing life-saving therapy vests to  Cystic Fibrosis patients globally, we gained insights into the challenges faced by CF patients, particularly in regions like Thailand, where access to advanced treatments and medical devices is limited. The conversation highlighted the critical role of early diagnosis and intervention, as well as the quality-of-life challenges many patients endure due to conventional treatments that may not be effective for everyone. Innovative approaches, such as our SORT LNP (lipid nanoparticle) delivery system, present promising alternatives for CF therapy. This system, which allows for RNA encapsulation and administration via dry spray inhalation, could revolutionize treatment by targeting lung cells more effectively, particularly in resource-limited settings. Dr. Olariu underscored the need for psychological support and coordinated care for CF patients, emphasizing that novel therapies like LNP-based gene treatments have the potential to improve treatment efficacy and accessibility, ultimately reducing the lifelong burden of care for patients and their families. "
+        ] }),
+        /* @__PURE__ */ jsx69("p", { children: "We have considered the extent to which an early diagnosis is always an advantage, as some parents perceive an early diagnosis as an additional burden and would prefer to experience the first years of their child's life without constant medical intervention. Especially when there are cases in which patients only show a clear clinical picture at an advanced age. The psychological burden also lies with the children, who often experience medical trauma because they are involved in such intensive medical care from birth. Additionally, the treatment of  Cystic Fibrosis is very expensive, and the costs are covered by health insurance companies to varying degrees. In some countries, such as the USA, Ukraine or Developing countries, many families cannot afford the necessary treatments. But Dr. Olariu also drew our attention to another problem in the treatment of  Cystic Fibrosis. Infections, especially with bacteria such as Pseudomonas spcc., are difficult to treat and often lead to long hospital stays. Max, our patients\u2019 representative, who knows Dr. Olariu through his treatment, shared  his experience with Pseudomonas spcc infections, illustrating the reality of an invisible danger that determines a patient's everyday life. Strict hygiene measures are required to prevent infections, such as wearing face masks in hospital and careful handling of potential sources of infection. The clinics where  Cystic Fibrosis patients are treated work closely with a multidisciplinary team of doctors, psychologists, physiotherapists and nutritionists to ensure that patients receive holistic care. " })
+      ] })
+    ] })],
+    implementation: [/* @__PURE__ */ jsxs47("p", { children: [
+      "In summary, our project greatly benefited from the conversation with Dr. Olariu. His insights into the complexities of  Cystic Fibrosis treatment, particularly the significance of early diagnosis, were invaluable and we considered early treatment methods. Max\u2019s personal experiences added a human perspective, illustrating the medical and psychological challenges he faces, including infections with ",
+      /* @__PURE__ */ jsx69("i", { children: "Pseudomonas spp." }),
+      " Dr. Olariu highlightend the importance of a multidisciplinary approach, involving not just medical professionals but also psychologists, physiotherapists, and nutritionists for holistic care. This discussion helped us appreciate the balance between timely interventions and the emotional burden on patients and their families, guiding us to develop a more empathetic understanding of living with  Cystic Fibrosis."
+    ] })],
+    interview: /* @__PURE__ */ jsxs47(Fragment28, { children: [
+      /* @__PURE__ */ jsx69(QaBox, { q: "Could you please tell us about the journey that parents go through with their CF-sick children from the first visit to diagnosis and treatment?", a: "Since 2016,  Cystic Fibrosis (CF) diagnosis has been part of newborn screening. This means that we receive many children right after birth whose screening results were abnormal. These children are then sent to us for further clarification. Not every child with an abnormal screening result is sick, so we perform a sweat test, and about one-third of the children are diagnosed with the disease. The advantage of early diagnosis is that we can intervene and start treatment early to prevent organ damage. However, there are also rare mutations where the course of the disease is difficult to predict." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "What are the pros and cons of newborn screening for  Cystic Fibrosis?", a: "From a medical point of view, it\u2019s beneficial that we can catch many of these cases early, allowing us to act swiftly. There are even medications for small babies, and early intervention can protect organs, preventing conditions that would require transplants later on. On the downside, because of the wide variety of genetic mutations, some cases we identify may not show significant symptoms until adulthood. This creates a dilemma, as we can\u2019t predict how their condition will progress, but we still start treatments early, which can be stressful for families." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Can you give us an example of how this stress impacts families?", a: "Yes, I\u2019ve been caring for a patient from birth who is now five years old and doing very well. However, from the beginning, she had to undergo physiotherapy, regular check-ups, and blood tests, even though she hasn\u2019t shown any major symptoms. Her mother once told me she wasn't sure if she would make the same decision again, as the early intervention caused a lot of stress. She wondered if she might have enjoyed the first year of her child\u2019s life more if things had been more relaxed. Now, at age five, nothing significant has changed in her condition, and they\u2019ve decided against starting modulator therapy for the time being." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "How do families typically react when a CF diagnosis is confirmed?", a: "For most families, it\u2019s a shock. Cystic  Fibrosis still has a strong association with being a life-threatening disease, despite the fact that we now have good treatments and many patients can live healthy lives. The diagnosis puts a huge psychological strain on the family, especially when dealing with very young children. The most important factor in managing this, aside from medical treatments, is the support from the medical team. It\u2019s critical to have a team that works well together, not just a single doctor calling all the shots. Families often need much more psychological and nutritional support early on than medical intervention, and this is where having a multidisciplinary team becomes essential." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "What is the process for diagnosing and treating older patients who haven\u2019t been through newborn screening?", a: "Older patients who come to us with complaints may not have undergone newborn screening, so they are diagnosed based on their symptoms. These complaints can range from mild to severe and are often non-specific, like chronic cough or failure to thrive. When the cause of these symptoms isn\u2019t immediately clear, we do a sweat test. Once diagnosed, we can start treatment, which often involves working with a psychologist to help the family process the news." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "How do you support families during the initial shock of diagnosis?", a: "When the diagnosis is particularly difficult for families to process, we sometimes have the patients stay in the hospital for up to a week. This gives us time to meet with them daily, answer questions, and provide guidance. During the first consultation, families often fall into a state of shock, and no matter how carefully the doctor explains things, it\u2019s hard for them to absorb all the information. Meeting with them again over the following days helps, and we have specialists in hygiene, physiotherapy, and social counseling on the team to offer holistic support." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "What happens if a child gets infected with Pseudomonas or another bacterial culture in the lungs?", a: "Pseudomonas is one of the most feared infections for CF patients. It\u2019s a common environmental bacterium that is difficult for CF patients to clear from their lungs. Once we detect it, we treat the patient with specific antibiotics, often through intravenous delivery over two weeks in the hospital. After the initial treatment, patients may continue with inhaled antibiotics for several months to prevent further infection. It\u2019s a very intensive process, taking a lot of time and energy, and even though we may get rid of the infection a few times, eventually the germ can become resistant and stay in the body." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Are there any preventative measures to avoid Pseudomonas infection?", a: "Yes, there are hygiene measures. For example, CF patients always wear masks in the hospital to avoid infection from other patients. But it\u2019s difficult to avoid Pseudomonas entirely since it\u2019s found in stagnant water and other places in the environment. We advise patients to be cautious with water sources like sinks or ponds. However, we need to balance strict hygiene with quality of life, especially for children, as being overly strict can lead to obsessive-compulsive behaviors without necessarily reducing the risk of infection." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Do some families resist the medical advice on preventing infections?", a: "On an emotional level, I feel that families who take calculated risks to improve their quality of life tend to cope better. Overprotection can lead to greater psychological stress. However, I don't have enough experience to say for sure whether those who don\u2019t protect themselves as strictly get infected earlier or suffer worse outcomes. It\u2019s also worth noting that new therapies are now available that help reduce infection risks, allowing for a bit more freedom, especially for children." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "How often do patients need to be tested for infections like Pseudomonas?", a: "The official guideline is every two months, but realistically we aim for every 3-4 months. Regular testing is important because Pseudomonas can be present without symptoms. If too much time passes before detection, it becomes harder to remove the infection." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "How do you manage chronically infected patients?", a: "Patients who are chronically infected with Pseudomonas don't stay in the hospital indefinitely. They usually remain at home, inhaling antibiotics daily and taking physiotherapy to help clear mucus from their lungs. Intravenous antibiotic therapy is reserved for more severe cases or during clinical deterioration." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Are chronically infected patients allowed to visit your practice?", a: "Yes, chronically infected patients are allowed to visit the practice. We try to schedule them at different times to avoid contact between infected and non-infected patients, and we often use separate rooms to minimize risk." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "How often do children and adults need to have lung function tests?", a: "You can\u2019t conduct a good lung function test until the child is around five years old. After that, it becomes part of the routine check-up because it\u2019s non-invasive and provides a good indicator of lung health. We see children every three months, and I believe the protocol is the same for adults." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "What do you think about support groups or health retreats for CF patients?", a: "Support groups are extremely important. Although we are a good medical team, advice from peers often resonates more with patients. We\u2019ve organized two parents' evenings recently, where parents can exchange experiences and support each other. Unfortunately, we can\u2019t invite the children themselves due to the risk of infection, but in rehabilitation settings, they can meet in germ-specific groups and benefit from shared experiences." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Is there a risk of antibiotic resistance with repeated treatments?", a: "Yes, resistance is a concern, especially with repeated antibiotic treatments. However, there\u2019s often a discrepancy between what we see in lab tests and the clinical outcomes. Even if a germ shows resistance on paper, many patients still respond well to treatment. We base our decisions more on clinical outcomes than lab results, changing antibiotics only if the patient\u2019s condition doesn\u2019t improve." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Are there any side effects to the medications?", a: "Yes, all medications have potential side effects, though many of them are minor, like rashes or stomachaches. One serious side effect of some antibiotics is hearing damage, which can lead to lifelong hearing loss. This is why we closely monitor patients in the hospital when starting treatments. The newer therapies, like modulators, can cause liver stress, so we regularly check liver enzymes in the blood. However, severe side effects are rare, and the drugs are generally well tolerated." })
+    ] }),
+    pictureurl_aim: "https://static.igem.wiki/teams/5247/photos/hp/interview-olariu.svg",
+    summary: "We interviewed Dr. Cristian-Gabriel Olariu to gain insights into the diagnosis and treatment of  Cystic Fibrosis (CF). He highlighted the importance of early diagnosis through newborn screening, which allows for timely intervention but can also be perceived as a burden by families, especially when symptoms may not manifest until later. Dr. Olariu emphasized the emotional and financial challenges families face, particularly regarding costly treatments and insurance variability. Patient contact Max shared his experiences with infections like Pseudomonas spp., which complicate care and necessitate a multidisciplinary approach involving medical professionals, psychologists, and nutritionists. Overall, the discussion underscored the need to balance medical interventions with the emotional well-being of patients and families, guiding us toward a more compassionate understanding of living with CF.",
+    months: "may"
+  },
+  {
+    vorname: "Exploring new ideas",
+    nachnname: "",
+    pictureurl: pics["logo"],
+    tag: "Milestone",
+    job: "Team iGEM",
+    affiliation: "Bielfeld CeBiTec 2024",
+    heading: "Further brainstorming on approaches and specifing the project",
+    interviewtabid: "exploring",
+    quote: "One of the most valuable aspects of our project is the feedback we've received. It truly motivates us to make a difference in the community.",
+    quoteNachname: "Sanfilipo, Teammember",
+    quoteVorname: "Liliana",
+    type: "meta",
+    summary: [
+      /* @__PURE__ */ jsx69("p", { children: "After receiving valuable feedback from both clinical and academic experts, we decided to focus on optimizing Prime Editing strategies for  Cystic Fibrosis treatment. Both experts not only encouraged us in our approach but also provided insightful feedback, which we will integrate into our future project design. Through these discussions, we learned that current treatment strategies are urgently needed in real life but are limited in precision and efficiency. Additionally, we gained key insights into lung-specific delivery methods, which inspired us to pursue lung-specific correction of the CFTR gene, a critical aspect of  Cystic Fibrosis therapy. At this stage, we are eager to expand our perspectives by seeking input from industry and business professionals, while also striving to increase our local impact. To evaluate this impact, we plan to develop a survey aimed at understanding the interest in gene therapy and the community\u2019s knowledge of  Cystic Fibrosis within our local area. This will help us gauge awareness and ensure our project addresses both scientific and societal needs effectively." }),
+      /* @__PURE__ */ jsxs47("ul", { children: [
+        /* @__PURE__ */ jsxs47("li", { children: [
+          /* @__PURE__ */ jsx69("b", { children: "Expert Feedback Integration:" }),
+          " Refined the project focus on optimizing Prime Editing strategies and lung-specific gene delivery based on clinical and academic insights."
+        ] }),
+        /* @__PURE__ */ jsxs47("li", { children: [
+          /* @__PURE__ */ jsx69("b", { children: "Focus on Lung-Specific Correction:" }),
+          " Shifted toward lung-specific CFTR gene correction for  Cystic Fibrosis treatment."
+        ] }),
+        /* @__PURE__ */ jsxs47("li", { children: [
+          /* @__PURE__ */ jsx69("b", { children: "Community Engagement Plan:" }),
+          " Initiated plans for a local survey to assess awareness of  Cystic Fibrosis and interest in gene therapy, aiming to increase local impact."
+        ] })
+      ] })
+    ],
+    months: "may"
+  },
+  {
+    vorname: "Katrin",
+    nachnname: "Westhoff",
+    job: "Physiotherapist",
+    affiliation: "Independent",
+    pictureurl: pics["westhoff"],
+    tag: "Medical Professional",
+    heading: "Interview with a specialized physiotherapist regarding breathing therapy for  Cystic Fibrosis patients",
+    interviewtabid: "westhoffinv",
+    language: "de",
+    quoteNachname: "Westhoff, Physiotherapist",
+    quoteVorname: "Katrin",
+    quote: "The more we know, the more opportunities we have.",
+    aimofcontact: "The objective of the contact was to gain in-depth insights into the treatment and care of children with CF. The therapist's expertise was intended to help develop a better understanding of the challenges and necessary measures in the treatment of this chronic disease. In addition, the aim was to ascertain how the therapy is implemented in everyday life and which specific approaches and methods are particularly effective.",
+    insights: "The interview yielded valuable insights into the regular implementation of the therapy, the use of aids and the adaptation of exercises to the individual needs of the patients. It was notable that the therapy has improved over the last years, considerably thanks to better medication and adapted exercises, with a concomitant increase in life expectancy for children affected by CF. Of particular interest was the emphasis on the importance of sport and exercise, which should not only be therapeutically effective, but also increase quality of life. ",
+    implementation: "The following statement by Katrin Westhoff had a particular impact on our project: \u2018The more we know, the more options we have\u2019. We learnt from the interview that the current medication is already helping many patients very well, but that there is still great potential for improvement. Successful gene therapy would significantly improve the quality of life of CF patients. We implemented the findings from this interview in our participation in MukoMove - we also actively took part in  Cystic Fibrosis awareness month and learnt even more about the importance of physiotherapy.",
+    pictureurl_interview: "https://static.igem.wiki/teams/5247/photos/hp/katrin-westhoff-zoom.webp",
+    summary: [/* @__PURE__ */ jsx69("p", { children: "The objective of our discussion with a therapist was to gain a comprehensive understanding of the treatment and care of children with  Cystic Fibrosis. The interview provided invaluable insights into the therapy's implementation, highlighting the significant advancements in medication and tailored exercises that have led to improved patient outcomes and increased life expectancy. A key takeaway was the emphasis on the role of sports and exercise, not just for therapeutic efficacy but also for enhancing overall quality of life. It let to our participation in the CF awarness month and the outreach project mukomove " })],
+    months: "May",
+    interview: /* @__PURE__ */ jsxs47(Fragment28, { children: [
+      /* @__PURE__ */ jsx69(QaBox, { q: "From what age do the patients come to you? How long do they stay? How many patients do you treat?", a: "The patients come to us at a very early age. A definite diagnosis is made after 6 weeks at the latest. Once diagnosed, the whole family is genetically tested, and children are sent for physiotherapy, often starting in the hospital. Currently, we have 8 children with CF in our practice, which is relatively small compared to other diseases. We have slightly more CF patients because we specialize in it." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "What kind of exercises do you do?", a: "We do a lot of breathing therapy and have attended special training courses for CF that introduced new techniques. The current gold standard is autogenous drainage according to Chevallier, which effectively removes mucus. We follow a general routine: 1. wet inhalation to bind mucus, 2. drainage to expel mucus, and 3. antibiotics to work optimally on clean lungs. We also use special belts for compressing 'magic points' to enhance lung ventilation." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "When does drainage start?", a: "We start drainage in newborns to prevent mucus from settling." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Are there special exercises that can also be done at home?", a: "Yes, parents are instructed on exercises that can also be performed at home." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "How often does the therapy take place?", a: "Therapy usually occurs once a week or every two weeks. Thanks to improved medication, children are now better off. The therapy has evolved significantly, making it easier to cough up mucus and improving life expectancy. Exercise should be enjoyable and a part of daily life from the age of 8 or 9." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "What would happen if no physiotherapy was performed?", a: "It\u2019s difficult to predict, but without therapy, children often become more mucousy, leading to worsened ventilation. Specific therapy is crucial, especially during infections." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "How do you measure success (in terms of lung function test, exercise, etc.)?", a: "Success is measured subjectively by listening to breathing and observing skin color. A well-ventilated lung shows a 'full barrel' appearance, while wheezing indicates poor ventilation. In clinics, lung function tests, CO2 measurements, and 'finger clip' tests are used, though results can be influenced by the child." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Do the exercises bring relief or are they preventative for further complaints?", a: "The exercises serve both to relieve acute infections and to prevent further issues. Fewer lung infections reduce the likelihood of mucus adhesions." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Are there any tools to perform therapy?", a: "Yes, devices like the 'flutter' or 'cornet' help with exhalation. They create vibrations that loosen mucus in the lungs and should be used by all children with lung diseases." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "What complaints do patients bring with them?", a: "Patients typically have lung problems, dry lung mucosa, and pancreatic issues leading to poor metabolism, requiring enzyme therapy before meals. Some children experience growth disorders and less commonly, excessive perspiration." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Are pancreatic complaints also treated by physiotherapists?", a: "Pancreatic complaints are rarely treated with physiotherapy, except in cases of inflammation, where patients may be admitted to the hospital. Techniques like massage or kinesiology tape can help with constipation." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Are there any special hygiene guidelines for you when working with CF patients?", a: "Hygiene is crucial when treating CF patients. We separate children with and without infections (e.g., Pseudomonas) and enforce strict disinfection protocols. Only children with similar infection statuses are treated on the same day." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Are the specific exercises customized? And if so, how do you know which therapy is the right one for which patient?", a: "Exercises are tailored to each patient's situation, focusing on mucus removal and lung ventilation. Each therapist may have their own preferred exercises and techniques." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Do patients always go to the same physiotherapist?", a: "Yes, if therapy is effective, patients tend to remain with the same physiotherapist." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "How many physiotherapists offer muco-therapy?", a: "The exact number is unknown, but several child therapists in the region provide CF therapy." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "How are the relatives educated?", a: "Education often begins in the maternity ward with a sweat test. In G\xFCtersloh, all children are referred to Bethel for immediate CF care. Parents often experience trauma as children can be severely ill despite appearing healthy." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "What are the limitations of individual medicine?", a: "Drug effectiveness can vary, and some are only approved from a certain age. Improved medications can significantly enhance quality of life and life expectancy." })
+    ] })
+  },
+  {
+    title: "Dr.",
+    vorname: "Michaela",
+    nachnname: "Bienert",
+    job: " Scientific Sales Representative for Cell Culture Products",
+    affiliation: "Stemcell",
+    pictureurl: pics["stemcell"],
+    tag: "Industry",
+    heading: "Longstanding Support from Stemcell Expert in Cell Culture Media and Primary Cell Cultivation",
+    interviewtabid: "michaela",
+    language: "de",
+    quoteNachname: "Bienert, Stemcell",
+    quoteVorname: "Dr. Michaela",
+    quote: "The use of primary cultures in research represents the first step toward clinical studies. Your approach is innovative, as we have never undertaken something like this before.",
+    aimofcontact: "Our primary goal in reaching out to her was to gain insights into optimizing cell culture media, explore potential sponsorship opportunities for our project, and seek expert advice on handling primary cells in the lab.",
+    insights: "Throughout our multiple discussions, she offered detailed advice on selecting and optimizing cell culture media for our specific needs, while also connecting us with opportunities for sponsorship. Later in the project, she provided technical guidance on the cultivation and handling of primary cells, ensuring that we followed best practices for cell culture.",
+    implementation: "Based on her feedback, we refined our approach to cell culture media, enhancing our experimental workflows.Her technical support, as well as the support of Julia Watson helped us to establish our experiments in cellculture. Additionally, her advice was critical during the transition to primary cell culture, helping us secure the necessary resources and expertise for our experiments.",
+    summary: "We have had the privilege of collaborating with a dedicated expert from Stemcell Technologies, who has consistently supported iGEM Bielefeld. She provided valuable guidance on cell culture media, sponsorship opportunities, and later, practical advice for cultivating primary cells. Her contributions have been instrumental in advancing our project.",
+    months: "several times",
+    pictureurl_interview: "https://static.igem.wiki/teams/5247/photos/hp/daniela.webp"
+  },
+  {
+    vorname: "Documenting progress",
+    nachnname: "",
+    pictureurl: pics["logo"],
+    tag: "Milestone",
+    job: "Team iGEM",
+    affiliation: "Bielfeld CeBiTec 2024",
+    heading: "Tracking progress in expert search and idea development",
+    interviewtabid: "progress",
+    quote: "I believe our focus on a human-centric approach is crucial. It ensures that our research not only advances science but also prioritizes the needs and safety of the patients we aim to help.",
+    quoteNachname: "Lange, Teammember",
+    quoteVorname: "Kaya",
+    type: "meta",
+    summary: [
+      /* @__PURE__ */ jsx69("p", { children: "Early in our research, we committed to a human-centric approach, recognizing the importance of working according to Good Laboratory Practice (GLP) standards. At this point, we also identified key Special Prizes to aim for, including the Biosafety and Security Award, Best New Basic Part, and Best Integrated Human Practices. To further advance our project, we partnered with Stemcell Technologies, whose technical support provided valuable insights. This collaboration allowed us to explore the cultivation of primary human nasal epithelial cells, which are crucial for testing our synthetic biology components and Prime Editing technologies. In line with this, we expanded our biosafety standards to ensure compliance with higher safety levels and enhanced our understanding of preclinical trial-like experiments. Moreover, we are committed to raising awareness within our local community while also seeking to broaden our impact internationally. This dual focus helps us ensure both the safety and societal relevance of our project as we move forward." }),
+      /* @__PURE__ */ jsxs47("ul", { children: [
+        /* @__PURE__ */ jsxs47("li", { children: [
+          /* @__PURE__ */ jsx69("b", { children: "Commitment to Human-Centric Approach:" }),
+          " Early in the project, the decision to follow a human-centric approach ensured that societal impact, ethical considerations, and the needs of patients would be central to all scientific developments."
+        ] }),
+        /* @__PURE__ */ jsxs47("li", { children: [
+          /* @__PURE__ */ jsx69("b", { children: "Selection of Special Prizes (Biosafety and Security, Best Integrated Human Practices):" }),
+          " Prioritizing biosafety, security, and human practices from the start highlighted the project\u2019s focus on safety, ethical responsibility, and community engagement, aligning with broader human-centric goals."
+        ] }),
+        /* @__PURE__ */ jsxs47("li", { children: [
+          /* @__PURE__ */ jsx69("b", { children: "Collaboration with Stemcell Technologies:" }),
+          " Partnering with industry leaders provided technical expertise that allowed the team to deepen their understanding of human cell cultivation and gene editing, ensuring that the project\u2019s technological developments were informed by real-world applications."
+        ] }),
+        /* @__PURE__ */ jsxs47("li", { children: [
+          /* @__PURE__ */ jsx69("b", { children: "Expansion of Biosafety Standards:" }),
+          " Extending biosafety protocols to mimic preclinical trial conditions reinforced the commitment to safe, ethical research practices and laid the groundwork for clinical relevance, demonstrating responsibility toward future patients."
+        ] }),
+        /* @__PURE__ */ jsxs47("li", { children: [
+          /* @__PURE__ */ jsx69("b", { children: "Local and International Community Engagement:" }),
+          " Efforts to raise awareness at both local and global levels ensured that the project was not only scientifically sound but also socially responsible, with a focus on educating and involving the public in the conversation around  Cystic Fibrosis and gene therapy."
+        ] })
+      ] })
+    ],
+    months: "may"
+  },
+  {
+    vorname: "MukoMove",
+    nachnname: "",
+    pictureurl: pics["mukomove"],
+    tag: "Outreach",
+    job: "Team iGEM",
+    affiliation: "Bielfeld CeBiTec 2024",
+    heading: "Moving together for health and hope, our participation in CF awarness month",
+    interviewtabid: "mukomovehp",
+    type: "meta",
+    quoteNachname: "Susat, Teammember",
+    quoteVorname: "Kathleen",
+    quote: "It was amazing to see how movement can bring people together. I had a great time.",
+    summary: [/* @__PURE__ */ jsxs47("p", { children: [
+      "MUKOmove",
+      " is a sports initiative by Mukoviszidose e.V., the German Cystic Fibrosis Association, to raise awareness and funds for  Cystic Fibrosis. Team iGEM Bielefeld participated from May 8th to May 12th, promoting the event at their university and city, encouraging others to join and collect sport hours. They organized a team event at their university, involving sports games to promote community engagement. Their efforts helped surpass their goal of 240 hours, with the team achieving 358 sport hours, while the entire event gathered over 36,000 sport hours. The initiative successfully raised awareness about  Cystic Fibrosis and promoted physical activity as a means of community building."
+    ] })],
+    months: "May"
+  },
+  {
+    title: "M.Sc.",
+    vorname: "Jan-Phillipp",
+    nachnname: "Gerhards",
+    job: "Intern",
+    affiliation: " Harvard/ Boston Childrens Hospital",
+    pictureurl: "https://static.igem.wiki/teams/5247/photos/hp/hp-jpgerhards-potrats.webp",
+    tag: "Academia",
+    heading: "Discussion on optimizing our pegRNA Design to improve precision in prime editing",
+    interviewtabid: "JPpegRNA",
+    language: "de",
+    quoteNachname: "Lenger, Teammember",
+    quoteVorname: "Malte",
+    quote: "The interview proved to be invaluable in gaining an initial understanding of the principles of pegRNA design and optimization, particularly in the context of silent edits.",
+    aimofcontact: "The aim of the contact was to engage in a discussion about prime editing and pegRNAs, as the Jan-Phillip Gerhards had used these technologies in his internship at the Boston Childrens Hospital. We sought to exchange ideas, gather insights, and explore potential improvements or strategies for our project, leveraging his experience with prime editing tools. His practical knowledge in this field was very valuable for refining our approach and ensuring we were aligned with the latest advancements and methodologies in prime editing. ",
+    insights: "During our discussion we gained valuable insights that had a significant impact on our project. One of the most important findings was the effectiveness of silent edits, which will enable us to make our PrimeGuide safer. Silent edits change the sequence of bases in the DNA in such a way that the resulting protein remains unchanged, because the genetic code is redundant. This means that different codons can code for the same amino acid. By making silent edits in addition to correcting the CFTR gene, we can prevent the pegRNA from rebinding.  We have also learned that the length of the primer binding site (PBS) plays a crucial role in determining optimal results and that it is recommended to keep the PBS temperature close to 37\xB0C. Specifically, PBS lengths of 17nt (38.3\xB0C) and 16nt (36.4\xB0C) were found to be ideal options. For our planned set of 12 samples, it was recommended to use three different PBS lengths (differing by +/- 1nt from that close to 37\xB0C) in combination with four reverse transcriptase template (RTTs) to achieve the best result. Another important finding was the use of non-annotated regions with overhangs for cloning, which could give better results in our experiments. However, we also encountered concerns that circRNA, a covalently closed circular RNA molecule, might be sterically hindered by Cas9, which we need to investigate further. When discussing cloning overhangs, we learned that a base-pair length close to 60\xB0C is optimal. However, the use of a 15nt PBS was not recommended as it has a lower temperature range which could affect performance. Although we still need to confirm the oligonucleotide delivery time, these findings will help us to refine our cloning strategy, optimize PBS selection and improve our overall approach to primer editing, especially in terms of the pegRNA design.",
+    implementation: "We incorporated the lessons learned from our discussions on prime editing and silent editing directly into our project by refining our approach to gene editing. Based on feedback about the optimal length of primer binding sequences (PBS) and RTTs, we adjusted the design of our pegRNAs to ensure greater precision and efficiency in our experiments. In particular, we learned that using PBS lengths close to 37\xB0C melting temperatures (e.g. 16-17 nucleotides) increased stability, which led us to fine-tune these sequences for improved editing results. The concept of silent editing became an integral part of our safety strategy, allowing us to make changes to the DNA more precise. We also revised our cloning strategies by considering the appropriate overhang length, targeting a base pair length near the melting temperature of 60\xB0C to improve cloning efficiency. We also reassessed the practicality of ordering shorter PBS sequences, concluding that lengths shorter than 15 nt were less advantageous due to reduced efficiency. By integrating these findings, we optimised our experimental workflow and made informed decisions about the tools and methods for our prime editing experiments. ",
+    summary: "We engaged in a valuable discussion with Jan-Phillip Gerhards regarding prime editing and pegRNAs, leveraging his internship experience with these technologies. Key insights included the effectiveness of silent edits, which can enhance the safety of our PrimeGuide by modifying DNA sequences without altering the resultant protein, thereby preventing pegRNA rebinding. We also learned the importance of optimizing the primer binding site (PBS) length to achieve ideal temperatures close to 37\xB0C, recommending lengths of 16-17 nucleotides. Additionally, we discovered the potential benefits of using non-annotated regions with overhangs for cloning, while also recognizing concerns about circRNA steric hindrance by Cas9. These insights directly informed our project, allowing us to refine our pegRNA design and cloning strategies, ultimately enhancing the precision and efficiency of our gene editing approach.",
+    months: "May"
+  },
+  {
+    vorname: "Mattijs",
+    nachnname: "Bulcaen",
+    job: "PhD Researcher at Laboratory for Molecular Virology & Gene Therapy",
+    affiliation: "KU Leuven",
+    pictureurl: pics["mattijs"],
+    tag: "Academia",
+    heading: "Discussion with a Prime Editing Expert on Similar Approaches for Different Mutations",
+    interviewtabid: "mattijsinv",
+    language: "en",
+    quoteNachname: "Bulcaen, CF Research Expert and Gene Therapy Specialist",
+    quoteVorname: "Mattijs",
+    quote: "[\u2026] Prime Editing system is more complex than the canonical CRISPR systems, with more variables that can influence success or failure.",
+    aimofcontact: [/* @__PURE__ */ jsxs47("p", { children: [
+      "Shortly after we decided to use prime editing as the gene editing method for our CF therapy, Mattijs Bulcaen from the Laboratory of Molecular Virology and Gene Therapy at KU Leuven and his colleagues published a paper directly related to our research ",
+      /* @__PURE__ */ jsx69(TabScrollLink, { tab: "mattijsinv", scrollId: "desc-1", num: "1" }),
+      ". In contrast to our approach, Bulcaen et al. 2024 targeted other, less common but drug-refractory CFTR-specific mutations (L227R- and N1303K).\u202F "
+    ] })],
+    insights: [/* @__PURE__ */ jsxs47("p", { children: [
+      "The insights gained from this interview proved extremely valuable in shaping our subsequent mechanistic approaches. At that point in the project we were starting to design the components of our prime editor, but we were lacking a broader overview over the state of the field. Mattijs gave us this insight, mentioning techniques like PE3b systems, dsgRNAs and a talk given by ",
+      /* @__PURE__ */ jsx69(HPLinktoOtherHPTab, { tab: "liu", text: "David Liu" }),
+      ", the principal investigator behind prime editing that helped us to consider further novel advancements in in Prime Editing and include them into our project. He discussed with us the difficulties that might await us when targeting the CFTR F508del deletion and mentioned that insertions of all the edits possible with prime editing are the hardest to make, the recognition of edits in the region might attract mismatch repair systems and the chromatin organization might negatively impact prime editing efficiency. Also, we learned a lot about how to design our pegRNAs, with important inputs being the 3\u2019 stem loop motif trevopreQ1 used by Mattijs in his publication and the suggestion to use prediction tools to evaluate sgRNA spacer cutting efficiency. We reviewed our approach of testing pegRNAs using the PEAR reporter system and Mattjis recommended to use HEK cell lines for screening because of their easy handling and naturally impaired mismatch repair system. "
+    ] })],
+    implementation: [/* @__PURE__ */ jsx69("p", { children: "The inputs given by Mattijs directly impacted our design choices for multiple parts of the project. For the pegRNA design, we decided to use the same 3\u2019 motif as Mattijs had used and also, like he suggested, checked our spacer candidates for predicted cleavage efficiency. Also we used HEK cells for screening our pegRNAs. We looked further into PE systems that influence cellular mismatch repair (such as PE4) and tried to include these into our design." })],
+    interview: /* @__PURE__ */ jsxs47(Fragment28, { children: [
+      /* @__PURE__ */ jsx69(
+        QaBox,
+        {
+          q: "We have prepared some questions for you. The first question is: You mentioned that it was quite challenging to target the F508 delta mutation. Could you provide more detailed reasons for why this is the case or explain why this mutation is particularly difficult to target compared to others?",
+          a: "Yes, that's the million-dollar question. First of all, let me clarify: our group has never directly worked on that mutation because we immediately focused on the drug-refractory mutations, such as nonsense mutations where the protein is not formed, indel mutations, or severe missense mutations that do not respond to modulator therapies. Of course, we know several groups in the field who either work on gene editing or focus on  Cystic Fibrosis (CF). We've heard from some of them who attempted to target the F508 delta mutation. For example, some collaborators really tried to design different guides but were unable to find anything above the detection limit. \r\n        F508del is probably one of the most logical mutations to try to correct, not just for CF but for the entire gene-editing field. If you look at the frequencies of mutations that cause genetic diseases, the F508 delta mutation is by far the most common deletion mutation causing a severe disease. This is because CF, along with sickle cell disease, is one of the most common deadly inherited diseases, and it's overrepresented within CF. So, it makes sense that they would have been trying to target it from the beginning. \r\n        Interestingly, if you read the Prime Editing paper by Anzalone, F508 delta is mentioned in the introduction in connection with CF. So, it's somewhat surprising that after all this time\u2014it's been almost five years now\u2014they haven't published or released anything on F508 delta. \r\n        However, last weekend, there was an online seminar where David Liu gave a talk, and he showed some unpublished data indicating that they managed to achieve quite good Prime Editing efficiency on F508 delta. It's worth noting that David Liu rarely presents unpublished data unless the publication is either accepted or very close to acceptance. So, we all kind of expect that the paper will be published soon, perhaps within the next week or at least within a month. From what I saw, it appears they leveraged many of the approaches available today to enhance Prime Editing. \r\n        Now, regarding your question about why this mutation is so difficult to target with Prime Editing, I can't provide an exact answer. However, I can list some potential difficulties associated with the mutation, and it\u2019s likely that F508 delta is challenging for several of these reasons. For instance, it could be related to the genomic region itself. Writing insertions can be more difficult; the easiest edits are single-point mutations, followed by deletions, and the most challenging are insertions. This difficulty arises because it involves writing a third strand and then relying on DNA damage repair mechanisms to fix it.  \r\n        It could also be that the region around the F508 delta mutation is challenging due to flap equilibration or that it attracts pathways such as mismatch repair that negatively impact Prime Editing. Additionally, the chromatin organization around that region could play a role. Over the past year, we\u2019ve gathered clues that chromatin organization significantly affects Prime Editing capability, while this is much less of an issue for Cas9 and base editors. \r\n        Studying this is not straightforward; you would need to conduct experiments like ATAC-seq to determine the chromatin organization around the mutation and how it might interfere. I also noticed on a slide that dsgRNAs were mentioned, though David Liu didn't discuss them in his talk. After looking them up online, I found that this technique, published a few years ago by other researchers, is specifically designed to open up chromatin. It seems they use different guides, without the three-prime extension, to open up the chromatin, which could be one way to overcome the limitations in Prime Editing efficiency. \r\n        There could be other factors as well, and it\u2019s often difficult to predict what will work and what won't. We have prediction tools for Prime Editing guides that work to some extent, but they are not as effective as the prediction tools available for regular CRISPR guide RNAs. This suggests that the Prime Editing system is more complex than the canonical CRISPR systems, with more variables that can influence success or failure. I hope this answers your question somewhat. "
+        }
+      ),
+      /* @__PURE__ */ jsx69(
+        QaBox,
+        {
+          q: "That has already been very helpful, thank you for that. We'll consider this and might look into it a bit more. \r\n        Perhaps we could quickly discuss which part of the prime editing complex you think plays the most significant role in making insertions much more challenging compared to deletions. Is it the reverse transcriptase or the RNA? ",
+          a: "I  don't think it's primarily the reverse transcriptase that's the issue. People have shown that longer insertions are definitely possible. I believe the challenge lies in the process when your cell has to repair the new DNA strand, which is generated and exists as a three-stranded intermediate. We don\u2019t directly intervene in this process; it entirely depends on the cell and the DNA damage repair pathways active in those cells. Through expression of dominant negative DNA damage repair effectors, or by nicking the non-edited strand, the outcome can be steered to some extent. \r\n        When you perform an insertion, the new strand must hybridize with the bottom strand, which remains intact. This creates a small loop that needs to be incorporated. At this point, the cell faces two options: it can either revert to the original state or incorporate the edit you\u2019re trying to introduce. In certain circumstances, perhaps due to how the new DNA strand folds or the sequence context of the region of interest, the cell might heavily favor reverting to the original state, resulting in the absence of the intended edit. \r\n        This process is extremely difficult to predict, but there are several indications pointing in this direction. For example, in the case of point mutations, it has been shown that it\u2019s easier to convert a C to a G rather than the reverse, simply due to how these mismatches are recognized by the DNA damage repair mechanisms. This area is very complex, and I don\u2019t think anyone fully understands it yet. It\u2019s also difficult to study. \r\n        I don't believe the rate of reverse transcription is the limiting factor here, although it could play a role for long or structured pegRNAs. You might have already come across this, but the PE6 generation of Prime Editors, which were released about half a year ago, involve engineered or evolved reverse transcriptases that are more processive and can more easily synthesize longer transcripts. \r\n        Another factor that could play a role is the secondary structure of the guide RNA. Each prime editing guide RNA faces a common problem: it has a spacer that binds the bottom strand and a three-prime extension that binds the top strand. Since these two parts of the RNA bind complementary strands, they are also complementary to each other, meaning every prime editing guide has some tendency to bind itself. If the Gibbs free energy is too high, the guide RNA may fold in on itself, preventing it from binding to the prime editor, which then inhibits prime editing. \r\n        Additionally, the three-prime extension itself can fold independently. I haven\u2019t specifically examined this for the F508 delta guides, but it is something that can be predicted. There are tools available that can predict the secondary structure of an RNA sequence, and if there\u2019s a significant hairpin structure, it might mean the three-prime extension remains closed, preventing the reverse transcriptase from using it as a template. The PE6 prime editors have been engineered to be more effective in such scenarios, being less affected by secondary structures and better able to read through them. "
+        }
+      ),
+      /* @__PURE__ */ jsx69(
+        QaBox,
+        {
+          q: "Yes, exactly, we noticed the same thing when predicting the secondary structure of our guide RNA. As you mentioned, the spacer and the binding site are complementary, so we end up with a really long complementary strand that binds to itself. We were also unsure whether it would open up or remain bound together.",
+          a: "I think the Liu lab mentioned in the PE6 paper a threshold for the free energy of the guide RNA structure. They suggest that every guide will behave differently, but there\u2019s often a more complex interaction at play than just a simple threshold. If the free energy is not too low, the guide RNA may still function efficiently and be incorporated into the prime editor, with everything remaining in equilibrium. However, if the free energy is too low, meaning high propensity for self-folding, it can cause problems. \r\n        I also recently came across a paper from the group of Keith Joung, another prominent CRISPR scientist from the U.S., where they demonstrated that applying a heat shock to the guide RNA can help it refold. This is particularly relevant if you\u2019re using RNP or mRNA with synthetic guide RNA. They linked this specifically to the self-binding capacity of the guide RNA, suggesting that heat shock can mitigate the issues caused by self-binding. "
+        }
+      ),
+      /* @__PURE__ */ jsx69(
+        QaBox,
+        {
+          q: "What would be the application? Would you administer the heat shock in vivo?",
+          a: "I believe they used it to engineer zebrafish embryos or something along those lines. It\u2019s quite specific, of course. If you plan to deliver your guide RNA through a viral vector or similar method for human therapy, the application would differ significantly. You obviously can't administer a heat shock to humans, so it really depends on the context of your application."
+        }
+      ),
+      /* @__PURE__ */ jsx69(
+        QaBox,
+        {
+          q: "Okay, that's interesting. Given the time constraints, let's move on to the next question. Due to our limited resources, we are targeting a PE2 system, and we'd like to ask if you see any chances of success with this system. If so, how high do you think the chances of success are? We understand that the PE3 system, as shown in your paper, is much more advanced and performs significantly better. But given our situation, do you think our PE2 system could still be effective, or would you suggest that it only makes sense to use something like PE3?",
+          a: "PE2 can work, but it really depends on your application and the methods you have to assess the editing efficiency. If you can use NGS (Next-Generation Sequencing) for everything, you'll be able to detect edits even with PE2 systems. However, I would generally expect the efficiency to be low. Whenever possible, I would always recommend trying the PE3 system. Could you share what your specific application is, or is that confidential?"
+        }
+      ),
+      /* @__PURE__ */ jsx69(
+        QaBox,
+        {
+          q: "So our goal is to eventually use it in vivo, but for now, we're focusing on trying to correct the mutation first in regular cell cultures and then later in primary cells.",
+          a: "Is your focus specifically on the F508 delta mutation? If so, we could potentially help you get you started, as we already have constructs and cells with that mutation. We would need to discuss the financial aspects, but we might be able to assist. However, are you fully committed to targeting F508, or are you also considering other diseases or mutations?"
+        }
+      ),
+      /* @__PURE__ */ jsx69(
+        QaBox,
+        {
+          q: "The timeframe of the project, combined with the fact that we\u2019re all studying on the side, limits us to a certain scope. Since this is our first time tackling a project like this, it makes sense to stick to something more manageable. So, we're somewhat committed to focusing on F508 due to these constraints.",
+          a: "That's understandable. It can be really tough to juggle a project like this along with exams and studies, especially if you're also involved in competitions. But it's definitely worth the effort, even if you don't achieve huge results right away. The experience and learning, as well as the connections you make, are incredibly valuable. I'm a big supporter of such projects. So, what resources do you currently have? Do you already have cells with the F508 delta mutation, or...? "
+        }
+      ),
+      /* @__PURE__ */ jsx69(
+        QaBox,
+        {
+          q: "We have one patient who is willing to provide us with cells, but we don't have them yet. ",
+          a: "It sounds like you're aware of the challenges, and I don't want to discourage you, but just to be realistic, working with primary cells and getting everything ready could be tricky, especially considering the competition is in October. Experiments in human cells can take time, especially if you need to do multiple iterations or clone constructs\u2014it could easily take a week or more per experiment. \r\n        Regarding the cells we have, as mentioned in our paper, we screened all our guides on HEK cells with an integrated copy of the CFTR cDNA. HEK cells are easy to work with, but they don't naturally express CFTR, even though the gene is present in their genome. So, we introduced the mutation of interest into these cells, making it easier to screen. \r\n        I'm not entirely sure if we can send over the cells due to ethical regulations, which can be complex and time-consuming to navigate. However, there's an alternative approach that might help you. Early on, we found that it's actually quite easy to screen guides using what we call a 'transient target'. In this method, you would transfect all your prime editing plasmids into HEK cells, along with a plasmid containing the CFTR cDNA with the mutation of interest. While this approach isn\u2019t as physiological as editing the chromosome directly, our side-by-side comparisons showed almost equal efficiencies between transient and chromosomal targets. It's much easier and faster than working with patient-derived cells. I can definitely send you the plasmid, which would save you a lot of time and effort. This method is much simpler and could be a practical solution for your project. "
+        }
+      ),
+      /* @__PURE__ */ jsx69(
+        QaBox,
+        {
+          q: "Our initial plan is to work with a reporter plasmid that expresses eGFP, where we've removed a splice site, until we have patient cells or cell lines with CFTR mutations. This will allow us to screen easily without needing to sequence everything. Do you maybe have any suggestions or advice on this approach? ",
+          a: "Is that the PEAR system? No, it\u2019s a different one, but we also have a similar system. The advantage of this approach is that you can very easily see if it works, and it\u2019s very sensitive\u2014much easier than extracting and sequencing DNA. The downside, however, is that\u2026 actually, I\u2019m not familiar with the 'flu PEAR system.' \r\n        Actually, we use the exact same system in our lab. It\u2019s very useful for optimizing delivery strategies because it\u2019s easy to see results. The downside, of course, is that the guides you\u2019re using for that system aren\u2019t specific to the F508 delta mutation, right? So, these are scientific trade-offs. You could, for example, design a reporter that uses your F508 delta guide and also results in fluorescence, but you would need to design the reporter first. It\u2019s challenging to prove that it works because you might not have a perfect guide for F508 delta. \r\n        It really depends on what you want to achieve. If your goal is to first check if you can successfully perform prime editing, then using the reporter is definitely a good first step."
+        }
+      ),
+      /* @__PURE__ */ jsx69(
+        QaBox,
+        {
+          q: "We will edit the plasmid, specifically the vector, so that we have almost the same pegRNA. The only difference will be downstream, behind the edit.",
+          a: "Is this approach based on a paper from the Netherlands, or is it something you came up with yourself? "
+        }
+      ),
+      /* @__PURE__ */ jsx69(
+        QaBox,
+        {
+          q: "Based on a paper. ",
+          a: "Yeah, that sounds like a very good way to start. Do you already have the reporter plasmid ready? "
+        }
+      ),
+      /* @__PURE__ */ jsx69(
+        QaBox,
+        {
+          q: "Yeah, we bought the reporter, and now we\u2019re making the necessary edits so we can use it. ",
+          a: "Okay, so do you also already have guides targeting F508 right now? "
+        }
+      ),
+      /* @__PURE__ */ jsx69(QaBox, { q: "We\u2019ve designed some guides, but we haven\u2019t tested them yet. That\u2019s one of our next steps. So, at the moment, we\u2019re just in the design phase, or we have already designed them, and...", a: "Yeah, okay, cool. Good luck with that! And I suppose you\u2019re starting off with HEK cells as well, right?" }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "We have HEK and HeLa cells, but we haven't decided yet which ones we'll use.", a: "I would start off in HEK cells because, by total accident or coincidence, they are much easier to achieve prime editing in. This is because the MLH1 gene, which negatively impacts prime editing outcomes, is naturally disabled in these cells\u2014they don't produce the MLH1 protein. Of all cell lines available, HEK cells are the easiest to achieve editing with, so I would definitely recommend starting there. In terms of transfection, HEK cells are also very easily transfected. If I can offer another piece of advice, always include GFP controls\u2014plasmids that simply express GFP without requiring editing\u2014and use them to determine your transfection efficiency. It's crucial to have a very high transfection efficiency because you'll be working with a three-component system: your reporter, your prime editor, and your guides. All three plasmids need to be present in the same cell for the editing to occur, so you should aim for at least 70% transfection efficiency, preferably 80% or higher. I don't know what transfection method you're planning to use, but we've always used Lipofectamine 3000. It\u2019s expensive, but it works very well. However, if you're looking for more cost-effective options, we recently discovered two other transfection reagents, Jet Optimus and Jet Prime, which are much cheaper and also work quite well. That said, I would advise against starting with any of the cheaper transfection reagents; you really need to aim for high transfection efficiency. Always make sure to measure and report transfection efficiency for every experiment because if it's low, the experiment might not yield useful results. If you have the funds or resources, I would also recommend designing P3 or even P3b guides, as they might offer better efficiency. When it comes to designing P3b guides, if you're primarily focused on P2 right now, there are some specific considerations to keep in mind. I'll provide you with a site that can help with this, and I'll give you the link in just a moment. So, it's very advisable to check the Doench score. Do you know what it is?" }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "No, not really.", a: "There are papers by John Doench, an American researcher, from quite a while ago that, in my opinion, are some of the best around. He developed a comprehensive scoring matrix specifically for regular Cas9 that can evaluate the quality of the spacer in your guide RNA. This is important because Cas9 tends to prefer certain sequences over others. For instance, a good spacer should have an appropriate GC content and should avoid hairpins that might cause it to fold in on itself, which would prevent it from functioning properly. You can use this matrix to give a score for the quality of a guide RNA. I\u2019m going to pull up an example here. The site from Synthego, a commercial provider of CRISPR reagents, allows you to check the quality of your guide. When you validate it, the site gives a score based on various factors, including off-target effects, although that might not be your primary concern at the moment. If you hover over a specific area, it will show you the Doench Score, which is crucial. Ideally, you want a guide with a good Doench Score. A good score starts at around 0.4, indicated by a green check mark for good efficiency. If the score is very low, it means that the guide likely has low CRISPR-Cas9 activity and may not be very efficient. When designing prime editing guides, RNA, we always check the spacer for a good Doench Score. If we are designing nicking guides for a PE3 or PE3b strategy, we also ensure that they have a good score. This is one of the easiest tools to check for that. Whenever possible, try using PE3. In some cases, PE3 performs better than PE2, though not always. PE3b might not always work either, but for many mutations, we have seen significant increases in editing efficiency by including the PE3 guide." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Okay, yeah, that was quite clear from your results; the diagram illustrated that very well. Are there more off-target effects when using PE3 since you have to make another cut?", a: "If you decide to use PE3, it's important to be aware that while it's not exactly an off-target issue, there is a risk of an undesired on-target outcome. The concern with regular PE3 is that both strands of DNA can be nicked simultaneously, which can lead to a staggered double-strand break. This can result in the formation of indels (insertions or deletions). In your case, this means that if the region around the F508 delta mutation is broken, the prime editor might not be able to repair it properly, leading to additional base pairs being removed or added, and thus, the sequence might be altered in an unintended way. The risk of on-target indels is definitely higher with PE3 compared to PE2. However, this risk is reduced when using PE3b, which employs sequential nicking. The PE3b nicking guides are designed to recognize the wild-type sequence, and they can only nick the opposite strand if the correction has already been made on the top strand. This sequential action helps to avoid the generation of indels. Introducing a second guide into the system also brings the possibility of off-target editing by that guide however, since only a Cas9 nickase is used, off-target indels should be limited." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Yes, okay, thank you. Do you have time left, or are we out of time?", a: " It's fine." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "We have more or less one last question. If it\u2019s not possible, that\u2019s completely fine. We just wanted to ask if you could possibly forward the contact details for the Ussing chamber setup in Paris that you mentioned in your email. Would that be possible?", a: "You can certainly try to contact them, but I actually know that there are quite good labs in Germany that work on similar things. \r\n        One major drawback for you might be the time it takes to differentiate cells. If you harvest stem cells or basal cells from patients, they will have the CFTR gene, but they don\u2019t express it immediately. It takes about four weeks for them to differentiate and start producing the CFTR protein. Without this differentiation, you can't measure the currents, which could slow you down significantly. I'm not sure if you have that kind of time. \r\n        If I can give you one piece of advice: it\u2019s less physiological, but it\u2019s still an accepted assay\u2014try it on organoids. We could actually perform both assays here. If you find guides that work really well, we could consider doing those tests here. Someone could come over, or we could do the experiments if they\u2019re not too expensive and have a good chance of working. I think we wouldn\u2019t mind adding the F508 delta mutation to our list of editable mutations. \r\n        There\u2019s also the possibility that if the paper from the Liu Lab is published within the next month, you could just use the guide they provide, and you\u2019d have a guide that is known to work. " }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Yeah, so I think if our guides don\u2019t work as well as we hope, this could be an opportunity. We still want to explore optimization of the prime editing system, such as trying different reverse transcriptases or other methods. For now, we\u2019d like to try it on our own, but like you said, it\u2019s good to have this opportunity in case it doesn\u2019t work out.", a: "Yeah, I think working with patient cells is one thing, but just be aware that these models and assays typically take a lot of time\u2014easily half a year, and that\u2019s considered fast to get them up and running. Unless you're in a lab that already has experience with growing organoids, it could be very challenging to start from scratch. \r\n        However, you can always try. The team in Paris that we know very well\u2014they are incredibly kind, world-class experts in what they do, but they are also under a lot of pressure. They use these technologies not only for research but also to diagnose patients. What the French team has managed to do is show that if a patient\u2019s cells respond to certain drugs, the government allows those drugs to be administered to the patient. You can imagine how important these experiments are, as they can directly impact patients' lives, which naturally takes the highest priority." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Yeah, we recognized that too. We talked with the CF team at the University Clinic in M\xFCnster and asked about using their Ussing chamber, but they are really overworked with it. That\u2019s why we reached out to you about it. But it\u2019s completely fine, as we mentioned before.", a: "I'm going to put it bluntly: Ussing chamber experiments, while they are highly regarded and provide valuable data, are a real pain to perform. They are incredibly time-consuming and have a very low throughput. A typical setup has four chambers, so you always need to do repeats. In the best-case scenario, you can test two conditions at a time. If you have a very experienced person, they might be able to run eight samples, but they would have to stay with the machine for four to five hours, maintaining constant attention. With multiple technicians, as is the case in France, you might manage to run 16 samples a day. On top of that, the cells need to be differentiated properly, and you have to know how to handle them correctly. The medium required is very expensive, and working with these cells is almost more of an art than a science. You have to know when the cells look 'happy' or not because you don't want to waste time on cells that aren't in good condition. I've run quite a few of these assays myself, and while they are great for CF work and provide results that are relevant to patient outcomes, they are technically challenging and very demanding. If you want a functional output to show that the CFTR protein is working again, I would recommend starting with one of the easier models, like organoids. We also have in our lab 16HBE cells with a YFP sensor. I don't know if you've heard or read about that. These cells express YFP, which is sensitive to halide ions, including chloride and iodide. When you add a buffer containing these ions to the cells, the YFP intensity quenches. This is something we typically use in our experiments. For wild-type cells, you see a rapid and dramatic quenching because CFTR allows these ions to enter the cells. In cells with the mutation, there\u2019s no quenching because the channel isn\u2019t working. While it\u2019s less relevant because these aren't patient cells, it\u2019s closer to reality. The 16HBE cell line is an airway epithelial line, and the expression of CFTR is endogenous, so it\u2019s not at the exaggerated levels you might see in more artificial models like HEK cells. Using the YFP assay could be a good alternative or a Plan B for getting a functional readout. This assay is medium to high throughput\u2014you can run entire 96-well plates in about half an hour. All you need for this is the cells and a plate reader that can measure fluorescence and inject the buffer. If you don\u2019t have a plate reader with an injection system, you can also manually add the buffer and quickly place the plate in the machine. " }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Yes, that sounds quite good. I think we\u2019ll definitely consider that as a method. \r\n        If you have a little more time, I wanted to ask about the pegRNA. You stabilized it with a stem loop or some kind of motif in the paper, like the trevopreQ1. Did you test other motifs as well, or...? ", a: "Yeah, there was actually one published before the one from the Liu lab, but we tried that one\u2014I can't remember the exact name, maybe CSX4 or something like that. It didn\u2019t even make it into the main papers, just the supplementary material. The principle was similar, and according to the paper, it should have worked. I tested it on two or three guides, locations, or mutations, but it didn\u2019t work. However, the trevopreQ1 one definitely works. \r\n        Also, something to note is that these motifs become more important when you move to primary cells, where you have fewer guides. In transfection experiments, where you\u2019re essentially flooding the cells with plasmids that transcribe large amounts of these guides, the protection of the three-prime end isn\u2019t as critical. But in primary cells, where there are more nucleases and you likely have less pegRNA due to your delivery method, this protection becomes more important. The paper does discuss the trevopreQ1 one and tMPK knot, but due to time constraints, we only tested one and didn\u2019t look into the other. \r\n        I think the advantage of the one we included in the paper was that they also investigated whether it was necessary to include a linker between the motif\u2014like the trevopreQ1\u2014and the pegRNA with the three-prime extension. For the motif we chose, they found that the linker wasn\u2019t really necessary, whereas it was for the other one. To keep it simple, we chose the one without the need for a linker because, for many sites, the efficiencies were comparable. \r\n        If we had infinite time and resources, it would definitely be worthwhile to test both motifs. The paper did show some examples where one motif was clearly better than the other. But no, we didn\u2019t have the time to explore that further. " }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Okay.  Thank you.  But like it's shown in the paper, it worked quite well.  Right.  Yeah. ", a: "There was definitely added value. When we moved to organoids, the effects of adding that motif were quite dramatic and very clear. " }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Yes, that was our last question. Thank you so much again for having me. We really appreciate the time you took for us, and also for your very detailed answers and your help.", a: "No problem. My pleasure." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Thank you so much. We will definitely keep you updated on how it goes. Thank you again! ", a: "It was a pleasure" })
+    ] }),
+    references: /* @__PURE__ */ jsx69(MattijsInterviewSources, {}),
+    summary: "Our discussion with Mattijs Bulcaen from KU Leuven provided critical insights into the complexities of using prime editing for CF therapy. As we began designing our prime editor, Mattijs highlighted challenges specific to targeting the CFTR F508del deletion, including the influence of mismatch repair systems and chromatin organization on editing efficiency. He introduced us to advanced techniques, such as PE3b systems and dsgRNAs, and recommended using the 3\u2019 stem loop motif from his research to enhance our pegRNA design. Additionally, he advised utilizing HEK cell lines for screening due to their ease of handling and reduced mismatch repair activity. These insights directly influenced our design choices and helped refine our approach to developing an effective prime editing strategy.",
+    months: "june"
+  },
+  {
+    vorname: "Integrate Insights",
+    nachnname: "",
+    pictureurl: pics["logo"],
+    job: "Team iGEM",
+    affiliation: "Bielfeld CeBiTec 2024",
+    tag: "Milestone",
+    heading: "From Insights to Impact: Enhancing Awareness and Prime Editing for Cystic Fibrosis",
+    interviewtabid: "inisghts",
+    quoteNachname: "Baack, Teammember",
+    quoteVorname: "Anna",
+    quote: "I\u2019m excited about our partnership with Mukoviszidose e.V. Deutschland to raise awareness in our community. Educating people about  Cystic Fibrosis and gene therapy is essential, and I believe our scientific advancements will have a broader impact beyond just this condition.",
+    type: "meta",
+    summary: [
+      /* @__PURE__ */ jsx69("p", { children: "During the early stages of our project, we discovered through our survey that while many participants were open to trying gene therapies, they lacked adequate knowledge about them. Additionally, most respondents were unfamiliar with  Cystic Fibrosis, highlighting the need for greater awareness. Driven by a desire to educate the people of Bielefeld, we collaborated with Mukoviszidose e.V. Deutschland to support the Muko Move campaign, a successful initiative aimed at raising awareness about  Cystic Fibrosis. On the scientific front, we elevated our project to a new level. With valuable feedback from Mattijs Bulcaen at the University of Leuven, we incorporated a novel RNA structural element into our Prime Editing complex, significantly improving its efficiency. After successfully optimizing the pegRNA, we moved forward with enhancing the Prime Editing protein complex. Our goal is to make Prime Editing not only safer but also easier to apply, so that our research can benefit more than just  Cystic Fibrosis patients, ultimately broadening the impact of our work." }),
+      /* @__PURE__ */ jsxs47("ul", { children: [
+        /* @__PURE__ */ jsxs47("li", { children: [
+          /* @__PURE__ */ jsx69("b", { children: "Survey Insights:" }),
+          " Many participants were motivated to try gene therapies but lacked knowledge about them and  Cystic Fibrosis, highlighting the need for better public education."
+        ] }),
+        /* @__PURE__ */ jsxs47("li", { children: [
+          /* @__PURE__ */ jsx69("b", { children: "Awareness Campaign:" }),
+          " Partnered with Mukoviszidose e.V. Deutschland to support the Muko Move campaign, raising awareness about  Cystic Fibrosis in the local community."
+        ] }),
+        /* @__PURE__ */ jsxs47("li", { children: [
+          /* @__PURE__ */ jsx69("b", { children: "Scientific Advancements:" }),
+          " Improved the efficiency of Prime Editing by incorporating a novel RNA structural element, with further efforts to optimize the Prime Editing protein complex for broader applicability beyond  Cystic Fibrosis."
+        ] })
+      ] })
+    ],
+    months: "june"
+  },
+  {
+    vorname: "'Der Teuto ruft'",
+    nachnname: "",
+    pictureurl: pics["teuto"],
+    job: "Team iGEM",
+    affiliation: "Bielfeld CeBiTec 2024",
+    tag: "Education",
+    heading: "Educational city tour for young and old",
+    interviewtabid: "teuto",
+    type: "meta",
+    quoteNachname: "Sahami Moghaddam, Teammember",
+    quoteVorname: "Asal",
+    quote: "I had a great time educating the kids about gene therapy and CF in a playful way, and there were some very interesting conversations with the parents.",
+    summary: [/* @__PURE__ */ jsxs47("p", { children: [
+      " ",
+      /* @__PURE__ */ jsx69(OurLink, { tabId: "teutoruft", scrollToId: "teuroruft-heading", path: "human-practices", text: "Der Teuto ruft!" }),
+      "  is a community event in Bielefeld where iGEM Bielefeld participated to raise awareness about  Cystic Fibrosis (CF) and gene therapy. They engaged children through interactive experiments, such as creating lung models and simulating mucus to help them understand the challenges faced by CF patients. Adults were informed about their gene therapy project and had meaningful discussions about the implications of CF treatment. Collaborating with other institutions like the life science student initiative btS, the team expanded their outreach. Despite changeable weather, the event was a success in educating the public and improving science communication."
+    ] })],
+    months: "June"
+  },
+  {
+    vorname: "Julia",
+    nachnname: "",
+    job: "parent",
+    affiliation: "independent",
+    pictureurl: pics["julia"],
+    tag: "Patient",
+    heading: "Interview with a CF Parent about their experience and treatment needs",
+    interviewtabid: "julia",
+    language: "de",
+    quoteNachname: ", Mother of a CF patient",
+    quoteVorname: "Julia",
+    quote: "At first, our world fell apart. I still remember the conversation with the doctor. ",
+    aimofcontact: [/* @__PURE__ */ jsxs47("p", { children: [
+      "We learned from our discussion with ",
+      /* @__PURE__ */ jsx69(HPLinktoOtherHPTab, { tab: "maxfirst", text: "Max" }),
+      " that CF has a profound impact on the whole family \u2013 not just the patient. In order to gain further insight into this subject, we sought to engage with the next of kin of CF patients. We were able to make contact with Julia through the self-help group of ",
+      /* @__PURE__ */ jsx69("a", { href: "https://www.muko.info/ ", children: "Mukviszidose e.V. " }),
+      " of which Max is a member. She subsequently reached out to us following Max's request for potential candidates for an interview with a patient group. She and her husband have a six-year-old daughter carrying the F508del mutation in the CFTR gene and a toddler without CF.  "
+    ] })],
+    insights: [/* @__PURE__ */ jsx69("p", { children: " The interview with Julia shifted our focus to a new group of stakeholders: The patient\u2019s support systems. Most people do not get genetically tested before having children and due to that, many people could get in the position of having a loved one with CF. We considered the societal impacts, such as the rising health care costs, which Nicole Friedlein emphasized during our interview. She explained how the long-term nature of treatment, frequent hospital visits, and the need for specialized medications place a significant financial burden on both patients and the health care system. This insight shaped our understanding of the broader economic challenges faced by families and institutions involved in managing chronic illnesses. Meanwhile, Julia brought attention to the psychological impact, stressing the emotional strain that accompanies not only the illness itself but also the financial pressures. She also showed us more perspectives on parenting of children with CF, than we heard before, and told us about the way from the first diagnosis to growing accustomed to and living with a child with CF. Julia also confirmed that most children will have no issue using an inhalative therapy like we envision our gene therapy to be and shone light onto the comparatively very good situation for CF patients in Germany. " })],
+    implementation: [/* @__PURE__ */ jsxs47("p", { children: [
+      " This interview helped us confirm the delivery method we planned to use as we were previously concerned how and if children would be able to use the inhalative therapy. Besides that, Julia gave us further insights into the emotional side of dealing with CF and we were able to discuss the situation for patients in Germany in comparison to other countries better in later  ",
+      /* @__PURE__ */ jsx69(HPLinktoOtherHPTab, { tab: "joshua", text: "interviews" }),
+      ". "
+    ] })],
+    interview: /* @__PURE__ */ jsxs47(Fragment28, { children: [
+      /* @__PURE__ */ jsx69(QaBox, { q: "Can you tell us a bit about your family? How old are your children and yourselves?", a: "I\u2019m 37, my husband is 44, and our daughter is six, turning seven soon. We also have a son who\u2019s about a year and a half." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Does your son also have  Cystic Fibrosis?", a: "No, he doesn\u2019t." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "When was your daughter diagnosed with  Cystic Fibrosis?", a: "Right after birth. She was transferred to a bigger hospital due to an intestinal blockage and had surgery. After about two to three weeks in intensive care, the  Cystic Fibrosis diagnosis came through newborn screening. At that time, the results took longer to process than they do now." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "That intestinal issue can happen for many reasons, right?", a: "Yes, it was all new to us. The beginning was difficult, but things have gotten better since then, and we\u2019re very grateful." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "How did you feel when you first heard the diagnosis?", a: "It felt like our world was falling apart. I still remember the moment\u2014it was like being in a movie. We were told in a separate room, and it felt overwhelming. One doctor even suggested we go home to think about it in peace, but all I could think about was returning to my child. It was a lot to take in, especially thinking about how we\u2019d tell our family." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "That sounds incredibly hard. How did you handle it as time passed?", a: "It was tough, but we were fortunate to have a doctor who really understood what we were going through, as he had a disabled child himself. He never scared us unnecessarily and guided us step by step, which made a big difference. We know many families who live in constant fear, but since those first months, we\u2019ve learned to manage the situation without being overwhelmed by fear." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Did any particular support help your family adjust to the diagnosis?", a: "Yes, the rehab program we attended was a huge help. It was a family-oriented program, so my husband could be there too, which was important since I manage most things day-to-day. It really helped our daughter realize she\u2019s not alone\u2014she met other kids with similar conditions, which was a huge comfort." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "How did you explain the illness to your daughter?", a: "We try to give it as little attention as possible in daily life. She\u2019s been inhaling medication since she was eight weeks old, and it\u2019s just part of her routine now. Thankfully, she doesn\u2019t fight it or question it much, and her school and kindergarten haven\u2019t made a big deal of it either, which is what we wanted." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Does she ever ask about her illness compared to her younger brother, who doesn\u2019t have  Cystic Fibrosis?", a: "She does sometimes ask why she\u2019s sick and he\u2019s not, but she\u2019s not upset by it. We\u2019ve made sure not to give her any special treatment because of her illness, which can be hard at times, but we want her to understand that her illness doesn\u2019t define her." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "That sounds like a good balance. What about medications\u2014did she start on any special treatments?", a: "Yes, she started on Orkambi at around three years old but had to stop briefly due to high liver values. Now she\u2019s on Kaftrio, which she started shortly before her sixth birthday, and it\u2019s been going well." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Did you face any issues with the health insurance for covering these medications?", a: "Fortunately, no. We have statutory health insurance, and they\u2019ve covered everything without any issues. We\u2019ve heard it can be more complicated for those with private insurance." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Have you ever had difficulties with access to medication?", a: "Yes, there have been times when we\u2019ve had to wait a few days for certain medications, like Kreon or antibiotics, especially in the winter. But we always plan ahead and keep a buffer, so we\u2019ve never been without what we need." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "What would you say has been the most affected area for your daughter?", a: "Her intestines are the most affected. Before she started Kaftrio, she had fatty stools and frequent bowel movements, even with the right Kreon dosage. Since starting Kaftrio, this has improved significantly." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "What kind of support would you have liked to receive earlier?", a: "We wish we had been given more information about available services early on. We found out about Mukoviszidose e.V. from another family, not from our doctor. It would have been helpful to know about these resources right from the start." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "How about psychosocial support?", a: "Initially, we didn\u2019t have any psychological support\u2014our doctor took care of everything. Now, where we live, there are more resources, and we think it\u2019s a good thing. The rehab helped a lot in coming to terms with everything. We wish we had known about such services sooner." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Does your daughter do physiotherapy?", a: "Yes, once a week for about an hour. She\u2019s been going since she was discharged from the hospital, and she has a close bond with her physiotherapist. They\u2019ve been working together since she was a baby, and she goes by herself now." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Are there any restrictions for her in terms of physical activities?", a: "No, not really. She does dancing once a week, physiotherapy, and she\u2019s even done a swimming course without any problems." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "How do you handle communicating about her illness?", a: "We try not to make a big deal of it. When I looked for information, I found what we needed. There\u2019s nothing we\u2019ve really felt was missing." })
+    ] }),
+    summary: "Julia's insights shifted our focus to the support systems surrounding CF patients. She highlighted the societal implications of CF, including rising healthcare costs due to the long-term nature of treatment and the financial burdens faced by families. Additionally, Julia emphasized the emotional strain that accompanies the illness, alongside the complexities of parenting a child with CF. Importantly, she affirmed that most children adapt well to inhalative therapies, reinforcing our planned delivery method for gene therapy. This interview enriched our understanding of the challenges faced by families and enabled us to better compare the experiences of CF patients in Germany to those in other countries.",
+    months: "june"
+  },
+  {
+    title: "Prof. Dr.",
+    vorname: "David",
+    nachnname: "Liu",
+    job: " Richard Merkin Professor and director of the Merkin Institute of Transformative Technologies in Healthcare",
+    affiliation: "vice chair of the faculty at the Broad Institute of MIT and Harvard",
+    pictureurl: pics["david"],
+    tag: "Academia",
+    language: "en",
+    heading: "Influence of research by David Liu on our design decisions ",
+    interviewtabid: "liu",
+    quote: "X",
+    aimofcontact: [/* @__PURE__ */ jsx69("p", { children: "David Liu is the principal investigator responsible for the development of the prime editing systems and his laboratory is actively working on improving prime editors, also for application in CFTR mutation F508del. " })],
+    insights: [
+      /* @__PURE__ */ jsx69("p", { children: "The talk and papers from David Liu not only introduced advances for prime editors, but also included valuable data for us to decide on which method might work best for our project. Because of this we decided to use an advanced system based on the PE6c and PE4 systems, both of which were published by the laboratory of David Liu. " }),
+      /* @__PURE__ */ jsxs47("p", { children: [
+        "As the principal investigator responsible for the development of the prime editing systems. The initial prime editing system was developed in his laboratory",
+        /* @__PURE__ */ jsx69(TabScrollLink, { tab: "liu", scrollId: "desc-1", num: "1" }),
+        "and since then a number of papers on this topic have been published under his supervision. The research conducted by David Liu and his laboratory was the inspiration for our gene editing approach and thus absolutely crucial in the development of PreCyse. Unfortunately, we were not able to talk to David Liu himself or one of his coworkers, but the impact of their publications can be seen in a big part of the mechanism engineering timeline. When speaking to",
+        /* @__PURE__ */ jsx69(HPLinktoOtherHPTab, { tab: "mattijsinv\r\n      ", text: "Mattijs Bulcaen" }),
+        "in June, he mentioned that David Liu had recently given a talk on recent advances in the prime editing field at the online conference  ",
+        /* @__PURE__ */ jsx69("a", { href: "https://www.genengnews.com/multimedia/the-state-of-crispr-and-gene-editing-2024/", children: "'The State of CRISPR and Gene Editing 2024'" }),
+        " hosted by Genetic Engineering & Biotechnology News. In his talk, David Liu presented both published as well as unpublished work. One of the most significant takeaways for us were the use of evolved improved and smaller reverse transcriptases in PE6 prime editing systems",
+        /* @__PURE__ */ jsx69(TabScrollLink, { tab: "liu", scrollId: "desc-2", num: "2" }),
+        ". We were also very interested in the protein evolution strategies used to create these new enzymes called PACE and PANCE (phage assisted (non-)continuous evolution ",
+        /* @__PURE__ */ jsx69(TabScrollLink, { tab: "liu", scrollId: "desc-3", num: "3" }),
+        " and the idea of using this system to optimize our planned new endonuclease domains for the prime editors. We eventually discarded this idea because of time constraints. Apart from that, David Liu presented results from his at this point unpublished paper about CFTR F508del correction using prime editing, which was especially interesting for us considering the goal of our project. When the paper was published on the 10th of July 2024 ",
+        /* @__PURE__ */ jsx69(TabScrollLink, { tab: "liu", scrollId: "desc-4", num: "4" }),
+        ", it actually supported some of our already made pegRNA design decisions, such as the choice of the targeted protospacer, the introduction of silent edits and the use of the trevopreQ1 stem loop. Additionally, it offered novel insights into prime editing systems suited for F508del correction, such as PE6, and optimized primer binding site as well as reverse transcriptase template lengths. "
+      ] })
+    ],
+    implementation: "x",
+    summary: " David Liu, the principal investigator behind prime editing systems, has significantly contributed to the development of advanced gene editing techniques, including applications for the CFTR mutation F508del. His research provided valuable insights for our project, leading us to adopt a system based on the PE6c and PE4 prime editors. Although we couldn't directly engage with Liu or his team, the impact of his work is evident in our gene editing approach for PreCyse. Notably, Liu's recent talk at the 'State of CRISPR and Gene Editing 2024' conference highlighted advancements such as improved reverse transcriptases and their applications in prime editing. The publication of his findings on CFTR F508del correction in July 2024 further validated our design choices for pegRNA and offered new strategies for optimizing our approach.",
+    months: "June",
+    references: /* @__PURE__ */ jsx69(LiuInterviewSources, {})
+  },
+  {
+    vorname: "Nicole",
+    nachnname: "Friedlein",
+    job: "Research group on fundamental rights",
+    affiliation: "University Potsdam",
+    pictureurl: pics["nicole"],
+    tag: "Academia",
+    heading: "Discussion on how health insurance companies manage  Cystic Fibrosis patients and gene therapy treatments",
+    interviewtabid: "nicole",
+    language: "de",
+    quote: "Public health insurance operates under an economic efficiency principle, meaning the most cost-effective treatments are preferred. But if gene therapies become the only treatment option for certain conditions, they will likely have to be included in the coverage, which could be a challenge for the system.",
+    aimofcontact: "The main objective of the contact was to learn from the discussion on issues related to  Cystic Fibrosis (CF), gene therapy, health insurance processes and regulatory pathways. In particular, we wanted to understand the real-world challenges and technical aspects of gene editing, especially prime editing, as well as the complexities of approval and reimbursement of gene therapies for CF patients.",
+    insights: "The regulatory approval process, particularly by the European Medicines Agency (EMA) for advanced medical devices, has highlighted the bureaucratic hurdles that gene therapies must overcome. We learned that such therapies for  Cystic Fibrosis have to navigate complex European and German regulatory systems. The discussion on the AMNOG process was crucial. We learnt that the additional benefit of a therapy is assessed for reimbursement by the statutory health insurance funds. We implemented this insight in our project by considering the long-term regulatory and economic effects as important milestones for therapy development. We also gained insight into how public and private health insurers may differ in their reimbursement of such therapies. Public insurers have stricter guidelines, while private insurers can be more flexible, but both require strict justification, especially for rare diseases such as  Cystic Fibrosis. Information on newborn screening and genetic counselling covered by public health insurance was crucial to understanding how preventive measures for CF are managed. This underlines the importance of early intervention and diagnosis in our project. Atypical forms of CF, where health insurance companies do not cover treatment due to non-standardised test results, were identified as a key problem. This helped us to recognise the need for more adaptable insurance policies and clearer pathways for the treatment of atypical cases in our project plans. The debate about whether healthcare systems can afford the high costs of gene therapies highlighted an important issue in the current medical landscape. We have incorporated this insight into our project by discussing possible cost-effective alternatives and the need for thorough cost-benefit analysis in the development of treatments.",
+    implementation: [/* @__PURE__ */ jsxs47("p", { children: [
+      "After the interview, we further tailored our project to focus on a simple delivery method to reduce the therapeutic effort. To gain an overview of the regulatory requirements and to better deliver the project, one of our team members attended a ",
+      /* @__PURE__ */ jsx69(HPLinktoOtherHPTab, { tab: "gxpcourse", text: "GxP course" }),
+      " to ensure we met all the necessary standards. To deepen our knowledge of entrepreneurship, we conducted further interviews with start-ups and ",
+      /* @__PURE__ */ jsx69(OurLink, { tabId: "Further Engagement3H", path: "human-practices", text: "industrial companies" }),
+      ", which gave us important insights into practical implementation. These steps ensure that our project is not only based on scientific research, but also takes into account the practical, regulatory and social aspects that are crucial to bringing new CF therapies to the market. We are currently developing strategies to successfully implement our ideas and the project in the future."
+    ] })],
+    interview: /* @__PURE__ */ jsxs47(Fragment28, { children: [
+      /* @__PURE__ */ jsx69(
+        QaBox,
+        {
+          q: "To start with this interview. Do you have any questions about this project?",
+          a: "Are you writing a paper on this, or are you conducting actual laboratory research? Or is it primarily literature review? How does your work look?"
+        }
+      ),
+      /* @__PURE__ */ jsx69(
+        QaBox,
+        {
+          q: "It\u2019s not just literature review, though we do start with that. We have a lot of lab work ahead of us. Ideally, we would have a finished construct to present at the end, maybe even a functional gene therapy, though that\u2019s quite ambitious and probably not possible in the short time frame. We\u2019re working on various gene-editing approaches and testing plasmids in HEK cells. We are also exploring Prime Editing and trying to improve its efficiency using different reverse transcriptase enzymes. So, it\u2019s a mix of lab work, literature research, and preparing for a presentation at a competition.",
+          a: "Are you writing a formal paper?"
+        }
+      ),
+      /* @__PURE__ */ jsx69(
+        QaBox,
+        {
+          q: "We\u2019re not writing a formal text-based paper, but everything will be available on a website. We will document most of our work on the website, with sub-pages detailing lab work, interviews, and research.",
+          a: "What exactly is Prime Editing, and how does it differ from altering the germline? Where in the genome does this therapy act?"
+        }
+      ),
+      /* @__PURE__ */ jsx69(
+        QaBox,
+        {
+          q: "Our current plan is to deliver the therapy via a lipid nanoparticle system, which will be inhaled and go into the lungs. While  Cystic Fibrosis (CF) affects all mucus membranes, the lungs are the most critical area, so we\u2019re focusing on that. The therapy will only target surface cells in the lungs, not the basal cells responsible for producing new lung cells.",
+          a: "Thank you for giving me insights into your project."
+        }
+      ),
+      /* @__PURE__ */ jsx69(
+        QaBox,
+        {
+          q: "Do you know how  Cystic Fibrosis (CF) approval works in terms of health insurance and regulatory processes?",
+          a: "The approval process for gene therapies is primarily done through the EMA (European Medicines Agency) under specific EU regulations for Advanced Medical Products, including gene therapies. There is also a national approval process in Germany for individualized treatments, but large-scale therapies must go through the EU process."
+        }
+      ),
+      /* @__PURE__ */ jsx69(
+        QaBox,
+        {
+          q: "Can you share more about the approval and reimbursement processes for CF treatment?",
+          a: "The approval process is separate from reimbursement by public health insurance. CF is considered a rare disease if it affects fewer than five out of 10,000 people, and treatments for rare diseases often face special reimbursement challenges. If more than five out of 10,000 people are affected, the disease is relatively common, and approval and reimbursement go through a different procedure known as the AMNOG process. For more common diseases, an additional benefit (Zusatznutzen) must be demonstrated during the approval process."
+        }
+      ),
+      /* @__PURE__ */ jsx69(
+        QaBox,
+        {
+          q: "Have you heard about issues with reimbursement from private insurance companies?",
+          a: "We\u2019ve heard that private insurance companies can make it difficult to get treatments reimbursed, especially experimental ones. One of our colleagues almost had to go to court to get his treatment reimbursed by his private insurer, which was quite expensive. Eventually, he switched to public insurance, but the situation was difficult."
+        }
+      ),
+      /* @__PURE__ */ jsx69(
+        QaBox,
+        {
+          q: "Why did your colleague have issues with private insurance?",
+          a: "He was privately insured, but the treatment was very expensive, around \u20AC16,000 per month, and the insurance company was reluctant to cover it."
+        }
+      ),
+      /* @__PURE__ */ jsx69(
+        QaBox,
+        {
+          q: "Do you need legal information for your project?",
+          a: "Both. We want to be well-informed to identify potential obstacles early on, such as legal restrictions or bans on altering certain chromosomes. Although we won\u2019t be running clinical trials, understanding the regulatory landscape is crucial for our future planning."
+        }
+      ),
+      /* @__PURE__ */ jsx69(
+        QaBox,
+        {
+          q: "How does genetic counseling and testing work for CF?",
+          a: "Genetic counseling and testing are usually covered by health insurance if there\u2019s a medical reason, such as a family history or suspicion that the parents might be carriers. However, if both parents are healthy and there\u2019s no family history of CF, insurance might not cover the tests."
+        }
+      ),
+      /* @__PURE__ */ jsx69(
+        QaBox,
+        {
+          q: "Are there differences between public and private insurers for genetic tests?",
+          a: "Public insurance has different regulations than private insurance, but I\u2019m not entirely sure if that leads to different decisions regarding genetic testing. I can look into the public insurance regulations if that would be helpful."
+        }
+      ),
+      /* @__PURE__ */ jsx69(
+        QaBox,
+        {
+          q: "Is newborn screening for CF covered by health insurance?",
+          a: "Yes, newborn screening is part of a set of health examinations for children and adolescents, regulated under \xA726 SGB V (Social Security Code). Since it\u2019s part of the regular screening process, it\u2019s covered by health insurance without additional requirements."
+        }
+      ),
+      /* @__PURE__ */ jsx69(
+        QaBox,
+        {
+          q: "How does public insurance handle CF treatment when a test comes back negative?",
+          a: "Public health insurance works with standardized guidelines, and if a test comes back negative, it may no longer meet the criteria for coverage. However, if a doctor reconfirms the diagnosis, the treatment should continue to be covered."
+        }
+      ),
+      /* @__PURE__ */ jsx69(
+        QaBox,
+        {
+          q: "Is there no rule that says genetic diseases, once diagnosed, should remain covered since genetics don\u2019t change?",
+          a: "In theory, yes. But the guidelines are usually based on medical evidence at the time, and re-testing can sometimes lead to complications in terms of coverage if the result differs. However, with proper medical documentation, it should be possible to maintain coverage."
+        }
+      ),
+      /* @__PURE__ */ jsx69(
+        QaBox,
+        {
+          q: "Have recent changes in gene therapy costs impacted public health insurance?",
+          a: "Not much has changed. It\u2019s a political and societal question\u2014how willing are we to finance these expensive therapies? Right now, public health insurance operates under an economic efficiency principle, meaning the most cost-effective treatments are preferred. But if gene therapies become the only treatment option for certain conditions, they will likely have to be included in the coverage, and it could be a challenge for the system. There are also ongoing price negotiations between insurers and manufacturers."
+        }
+      ),
+      /* @__PURE__ */ jsx69(
+        QaBox,
+        {
+          q: "Do patents play a significant role in keeping gene therapy costs high?",
+          a: "Yes, patents certainly influence the price, but the production of gene therapies is inherently expensive due to the complex research and manufacturing process."
+        }
+      ),
+      /* @__PURE__ */ jsx69(
+        QaBox,
+        {
+          q: "Would private supplemental insurance be an option for covering expensive gene therapies?",
+          a: "It\u2019s possible that private supplemental insurance could cover these therapies if public health insurance doesn\u2019t. However, this raises concerns about equity and accessibility. If public insurance doesn\u2019t cover it, the burden might fall on private insurance, which could create disparities in access to treatment."
+        }
+      ),
+      /* @__PURE__ */ jsx69(
+        QaBox,
+        {
+          q: "Is gene therapy research driven more by biology or medicine?",
+          a: "It\u2019s definitely interdisciplinary. Both biologists and medical professionals contribute. For example, at our university, the medical and biology faculties collaborate closely. Biologists usually handle the research, while medical professionals focus more on clinical applications."
+        }
+      ),
+      /* @__PURE__ */ jsx69(
+        QaBox,
+        {
+          q: "Do biologists or medical professionals develop gene therapies?",
+          a: "In terms of development, it\u2019s mainly biologists and biotechnologists. Medical professionals get involved primarily in clinical trials. Some doctors do research, but they\u2019re often needed in hospitals, so hands-on development is mostly handled by molecular biologists or biotechnologists."
+        }
+      ),
+      /* @__PURE__ */ jsx69(
+        QaBox,
+        {
+          q: "Does research in genome medicine and gene therapies come from biology, medicine, or both?",
+          a: "It\u2019s mainly interdisciplinary. A lot of funding comes from industry, like BioNTech, or foundations like Mukoviszidose e.V., which funds research on  Cystic Fibrosis. But in terms of practical research, it\u2019s usually biologists or biotechnologists. Without industry support, research can struggle due to a lack of funding, so having backing is essential."
+        }
+      )
+    ] }),
+    summary: "Our discussion addressed the complexities of  Cystic Fibrosis (CF) treatments, focusing on gene therapy and health insurance processes. We learned about the regulatory challenges gene therapies face, particularly regarding the European Medicines Agency (EMA) and the AMNOG process for reimbursement assessments. Public insurers impose stricter guidelines than private insurers, emphasizing the importance of early intervention in CF and the need for adaptable policies for atypical cases. We recognized the high costs associated with gene therapies and incorporated cost-benefit analysis into our project planning. Following the interview, we refined our approach to include straightforward delivery methods and attended a GxP course for regulatory compliance. Engaging with start-ups further informed our practical implementation strategies, ensuring our project aligns with both scientific and regulatory needs.",
+    months: "june",
+    pictureurl_interview: "https://static.igem.wiki/teams/5247/photos/hp/zoom-nicole.webp"
+  },
+  {
+    vorname: "Visiting Achema ",
+    nachnname: "in Frankfurt",
+    pictureurl: pics["frankfurtmesse"],
+    job: "Team iGEM",
+    affiliation: "Bielfeld CeBiTec 2024",
+    tag: "Industry",
+    heading: "Some of our team members attended the fair in Frankfurt to network with industry leaders",
+    interviewtabid: "frankfurtmesse",
+    quote: "Achema was a great experience. I got to meet a lot of interesting people and learn about their projects. It really motivated me for my own work.",
+    quoteNachname: "Wiesner, Teammember",
+    quoteVorname: "Lisa",
+    aimofcontact: [/* @__PURE__ */ jsx69("p", { children: "At Achema 2024, we aimed to connect with industry leaders and innovators, to explore potential collaborations and gather insights on laboratory practices. Our goal was to enhance our understanding of cutting-edge technologies and resources in the life sciences sector." })],
+    insights: [
+      /* @__PURE__ */ jsx69("p", { children: "During our time at Achema, we gained valuable insights into life sciences, with a strong focus on LNP production and lab best practices. Our discussions with experts, including Jutta from a life science company, provided us with innovative solutions and cutting-edge techniques. Her insights into current trends helped us better understand how to advance our project." }),
+      /* @__PURE__ */ jsx69("p", { children: "Through various expert interactions, we deepened our knowledge of LNP production, learning key manufacturing techniques essential for developing effective therapeutics. These insights allowed us to optimize our production methods, ensuring more efficient processes moving forward." }),
+      /* @__PURE__ */ jsx69("p", { children: "Understanding rigorous quality control processes was another key takeaway, enabling us to implement checks that will boost the reliability and safety of our therapeutics. These comprehensive insights have not only supported our current goals but also prepared us for future challenges, equipping us with the tools to navigate the complexities of research and therapeutic development." })
+    ],
+    implementation: [/* @__PURE__ */ jsxs47("p", { children: [
+      "Discussions with industry experts have provided invaluable insights into the production of LNPs",
+      ", a crucial aspect of our project. We have identified innovative manufacturing techniques and quality control procedures that we can integrate into our processes. This knowledge not only supports our immediate objectives but also positions us to overcome future challenges in developing effective therapies."
+    ] })],
+    summary: [/* @__PURE__ */ jsx69("p", { children: "During discussions with industry experts at Achema 2024, we gained valuable insights that will have a significant impact on our project and provide us with innovative manufacturing techniques and quality control procedures that we are now integrating into our workflows. These insights will help us to optimise our production processes to achieve more efficient and reliable results in therapeutic development. The new knowledge supports our current goals and prepares us for future challenges in the development of effective therapies" })],
+    months: "june",
+    pictureurl_aim: "https://static.igem.wiki/teams/5247/photos/hp/achema1.webp",
+    pictureurl_implementation: "https://static.igem.wiki/teams/5247/photos/hp/achema2.webp",
+    pictureurl_interview: "https://static.igem.wiki/teams/5247/photos/hp/achema3.webp",
+    more_pictures: ["https://static.igem.wiki/teams/5247/photos/hp/achema4.webp,"]
+  },
+  {
+    vorname: "Katrin",
+    nachnname: "Westhoff",
+    job: "physiotherapist",
+    affiliation: "Independent",
+    pictureurl: pics["westhoff"],
+    tag: "Medical Professional",
+    heading: "In-Depth Visit to Specialized Physiotherapist for CF Breathing Therapy",
+    interviewtabid: "westhoffvisit",
+    language: "de",
+    quote: "Children are the world's best \u201Cmucus hiders\u201D.",
+    aimofcontact: [/* @__PURE__ */ jsxs47("a", { children: [
+      "During the last interview with ",
+      /* @__PURE__ */ jsx69(HPLinktoOtherHPTab, { tab: "westhoffinv", text: "Katrin Westhoff" }),
+      ", she invited us to join a few physiotherapy sessions \u2013 not just as spectators but as participants. We gladly accepted and visited her in her practice. Over a few hours, we took part in four sessions with different children \u2013 not all of them CF patients.  "
+    ] })],
+    insights: "During the sessions, we could ask Katrin as well as the respective parents and children questions. We learned that breathing therapy is also useful for other illnesses and that you can easily do some of the exercises yourself. Despite having  Cystic Fibrosis, the children were better at the breathing exercises than we and Katrin were! The sessions take 30 to 60 minutes and include both manual therapy and playful elements to help engage the children. Most older children range from mildly unhappy to enthusiastic, but babies often cry during the treatments as it feels uncomfortable. This is often hard on the parents even though the treatment brings good results. A lot of children tend to hide that they have mucus sitting in their lungs by suppressing coughs. Especially with young children, it is important to stay on top of it and do regular breathing therapy even if it seems like it is currently not necessary. We also learned about the various informational material aimed at children to help explain therapies and symptoms to them and what accessories for breathing therapy there are. For example, a flutter is to train breathing out forcefully by breathing against a small weight and a binder can be worn at night to promote deep breathing. ",
+    implementation: "The most important thing was that both Katrin and the parents agreed that the children were able to inhale at an early age and that there were generally no physical problems with inhalation in general. This reinforced our decision to work towards delivery by inhalation. It was very interesting to see the different ways children deal with their exercises and hear about the progress they made.  ",
+    text: [/* @__PURE__ */ jsxs47("ol", { children: [
+      /* @__PURE__ */ jsxs47("li", { children: [
+        /* @__PURE__ */ jsx69("b", { children: "Robin (>10)" }),
+        /* @__PURE__ */ jsx69("p", { children: "Robin will soon start 4th grade and takes modulators. Since taking them, many problems have subsided. No regular pneumonia with long hospital stays and the mucus comes out easier. Nevertheless, Robin still goes to physiotherapy regularly to do manual breathing therapy to get the mucus out. Katrin tells us how the mucus changes color the longer it stays in the lungs. The new mucus is white, and the older mucus gets yellow first and then gets darker with time until it reaches a black color. Nowadays, Robin rarely has dark mucus or clumps, but we can still hear the rustling as Katrin starts the autogenous drainage (Autogene Drainage) by pressing on Robin's chest. The goal is to get out the mucus deep in the lungs. To do that, Robin must repeat the routine \u2013 breathing in deeply, holding, breathing out \u2013 multiple times and then cough and spit the mucus out. Sometimes it works, but other times the mucus does not come out easily. While according to Katrin the autogenous drainage is the gold standard, they do other useful exercises, too. For example, pressing the Vojta points (which the children call \u201Cthe magic points\u201D) on the chest to activate a deep breathing reflex and get air into parts of the lungs that may not have been used previously. Or physical activity such as climbing a few steps on a climbing ladder and hanging on it to stretch the thorax muscles." })
+      ] }),
+      /* @__PURE__ */ jsxs47("li", { children: [
+        /* @__PURE__ */ jsx69("b", { children: "Sam (<10) & Alex (<10)" }),
+        /* @__PURE__ */ jsx69("p", { children: "Sam and Alex are siblings and do not have CF but another affliction that causes a persistent cough. They come together with a parent twice a week and do hanging exercises from the ceiling, nasal showers with needleless syringes, and the \u201Cmagic points.\u201D Katrin also checks their lungs for mucus in a similar manner to autogenous drainage. We, too, tried to do the nasal shower, and being a grown-up really does not guarantee being able to do that properly! This highlighted that the children know all their exercises by heart at a young age. On request, their parent told us that the physiotherapy made a big difference for both of them." })
+      ] }),
+      /* @__PURE__ */ jsxs47("li", { children: [
+        /* @__PURE__ */ jsx69("b", { children: "Toni (<5)" }),
+        /* @__PURE__ */ jsx69("p", { children: "Toni has a light version of CF and has been doing physiotherapy with Katrin since shortly after birth. In contrast to most children we met or talked about, Toni refuses medication. Modulators are a possibility, but them and 'everything stinky' is a no-go, even though inhaling would be very beneficial due to the mucus buildup. Most exercises result in crying and screaming, which is very exhausting for the child. Due to the light nature of Toni's variant, they are not in danger, but a permanent therapy would be very beneficial." })
+      ] }),
+      /* @__PURE__ */ jsxs47("li", { children: [
+        /* @__PURE__ */ jsx69("b", { children: "Chrissi (>10)" }),
+        /* @__PURE__ */ jsx69("p", { children: "Chrissi takes modulators and will soon take a trip to a water park with some friends. Katrin teaches us that when the children do not breathe out properly, air stays in the lungs and causes hyperinflation \u2013 with which it is actually harder to float in water! After the manual drainage, Katrin gets all of us glasses with water and dish soap and straws. Blowing bubbles is a playful way to train how to properly breathe out by either trying to blow bubbles as long as possible or trying to make an existing bubble as big as possible!" })
+      ] })
+    ] })],
+    summary: "In the visit with Katrin Westhoff, we participated in physiotherapy sessions for children, including those with  Cystic Fibrosis (CF). We observed that breathing therapy is beneficial for various illnesses and learned techniques that can be practiced at home. Sessions last 30 to 60 minutes, combining manual therapy with playful elements. While older children engaged well, infants often found the exercises uncomfortable. Importantly, both Katrin and parents noted that children could inhale without issues from an early age, reinforcing our focus on inhalation delivery methods for therapies.",
+    pictureurl_interview: "https://static.igem.wiki/teams/5247/photos/hp/besuch-westhoff/untitled-design.png",
+    months: "june"
+  },
+  {
+    title: "Dr.",
+    vorname: "Marco",
+    nachnname: "Radukic",
+    job: "Postdoc at AG Cellular and Molecular Biotechnology",
+    affiliation: "University Bielefeld",
+    pictureurl: pics["marco"],
+    tag: "Academia",
+    heading: "Optimizing LNP Transfection: Insights into working with LNP Kits",
+    interviewtabid: "radukic",
+    language: "de",
+    quote: "After the interview with Dr Marco Radukic, we were able to produce LNPs for the first time.",
+    quoteNachname: "Wiesner, Teammember",
+    quoteVorname: "Lisa",
+    aimofcontact: [/* @__PURE__ */ jsx69("p", { children: "The primary objective was to tackle challenges in LNP transfection related to manufacturing and cell transfection methods. The focus was on improving LNP formulation and application protocols to enhance gene delivery effectiveness, and on acquiring specialized expertise to optimize these processes. Dr. Radukic from Bielefeld University provided crucial insights for troubleshooting and protocol optimization to enhance LNP efficacy. " })],
+    insights: [/* @__PURE__ */ jsx69("p", { children: " Dr. Radukic told us that the efficiency of LNPs is significantly affected by lipid-to-nucleic acid ratios and that optimizing ratios like 22:1 versus 10:1 can improve transfection. pH adjustments and buffer composition (e.g., modifying sodium acetate solutions) are also crucial for LNP performance. Proper storage at 4 \xB0C, precise pipetting, and thorough mixing are essential to maintain LNP functionality. In addition, he suggested quality control measures such as fluorescence testing, zeta potential, and light scattering analyses help ensure our LNP is stable. Additionally, spray drying was evaluated for potential use in long-term LNP stabilization. " })],
+    implementation: [/* @__PURE__ */ jsx69("p", { children: "Incorporating the insights Dr. Radukic and advice from recent consultations, we adjusted the lipid-to-nucleic acid ratio from 22:1 to 10:1 to enhance efficiency and modified the pH and concentration of sodium acetate solutions for better packaging. Storage conditions were strictly managed at 4 \xB0C, and pipetting/mixing techniques were refined to ensure quality consistency. Quality control was expanded to include fluorescence testing, zeta potential measurements, and light scattering, alongside cytotoxicity tests. These improvements not only address transfection challenges but also strengthen our foundation for future LNP applications. " })],
+    summary: "The aim of the contact was to address challenges in LNP transfection and improve formulation protocols for enhanced gene delivery. Dr. Radukic highlighted the importance of lipid-to-nucleic acid ratios, recommending adjustments like 10:1 for better transfection efficiency. He also emphasized optimizing pH and buffer composition, as well as strict storage and mixing practices. Additionally, quality control measures such as fluorescence testing and zeta potential analysis were suggested to ensure LNP stability. These insights were implemented into the project, improving transfection efficiency and paving the way for future LNP applications.",
+    months: "June"
+  },
+  {
+    title: "Prof. Dr.",
+    vorname: "Erhard",
+    nachnname: "Wischmeyer",
+    job: "Research Group Cellular Neurophysiology",
+    affiliation: "University Bielefeld",
+    pictureurl: pics["wischmeyer"],
+    tag: "Academia",
+    heading: "Discussion on Techniques for Measuring CFTR Channel Functionality",
+    interviewtabid: "patchclamp",
+    language: "de",
+    quoteNachname: "Guckes, Teammember",
+    quoteVorname: "Isabell",
+    quote: "Initially we hadn't considered patch-clamp measurements in our set of downstream applications, but it\u2019s proven to be an exceptionally sensitive method for assessing CFTR conductance.",
+    aimofcontact: [/* @__PURE__ */ jsxs47("p", { children: [
+      "As part of our project, we aimed to demonstrate the functionality of the CFTR ion channel, after restoring it through our optimized Prime Editing, by using Patch-Clamp measurements. To ensure the optimal use of the Patch-Clamp and to gain an insight into electrophysiology, we asked experts from the medical faculty at Bielefeld University to critically examine our measurement planning. Prof. Dr. Erhard Wischmeyer, an experienced scientist in this field who has worked at the Max Planck Institute for Biophysical Chemistry in G\xF6ttingen, the development site of the Patch-Clamp technique",
+      /* @__PURE__ */ jsx69(ScrollLinkWithChild, { targetId: "desc-1", children: /* @__PURE__ */ jsx69("sup", { children: "1" }) }),
+      ", and currently leads the Cellular Neurophysiology working group at Bielefeld University, seemed to be an ideal interviewee. His knowledge and experience promised valuable insights and advice for conducting and optimizing our experiments. "
+    ] })],
+    pictureurl_aim: "https://static.igem.wiki/teams/5247/photos/for-wiki-texts/hp-patch-clamp/wischmeyer-interview.webp",
+    insights: [/* @__PURE__ */ jsxs47(Fragment28, { children: [
+      /* @__PURE__ */ jsxs47("p", { children: [
+        "Prof. Dr. Wischmeyer taught us about the workflow of the Patch-Clamp technique. He highlighted the need for specialized electrodes and glass pipettes that must form a smooth surface devoid of the extracellular matrix (ECM). Additionally, he pointed out that measuring CFTR conductivity with the Patch-Clamp technique poses a technical challenge due to the low currents involved",
+        /* @__PURE__ */ jsx69(ScrollLinkWithChild, { targetId: "desc-2", children: /* @__PURE__ */ jsx69("sup", { children: "2" }) }),
+        ". He recommended using expression vectors for overexpressing the CFTR gene in HEK cells instead of epithelial cells from a nasal swab to achieve better results. Since Patch-Clamp measurements require a very sensitive testing environment, even challenging for the most experienced scientists, Prof. Dr. Wischmeyer invited us to conduct the measurements together with members of his group."
+      ] }),
+      /* @__PURE__ */ jsxs47("p", { children: [
+        "In addition to the Patch-Clamp technique, Prof. Dr. Wischmeyer informed us about E-cis measurements as a current electrophysiological measurement method alongside the Patch-Clamp technique. This method allows the measurement of the membrane potential above and below a monolayer of confluent cells",
+        /* @__PURE__ */ jsx69(ScrollLinkWithChild, { targetId: "desc-3", children: /* @__PURE__ */ jsx69("sup", { children: "3" }) }),
+        ". Consequently, it enables precise measurement of conductivity dependent on CFTR expression. "
+      ] })
+    ] })],
+    implementation: [/* @__PURE__ */ jsxs47("p", { children: [
+      "We decided to use HEK293T",
+      " cells lines which do overexpress the correct CFTR and those which express CFTR with F508del mutation for the Patch-Clamp measurements",
+      ". To conduct the Patch-Clamp experiments, we contacted the Cellular Neurophysiology group to perform the necessary measurements. It was a pleasure to work together with, who is working as a post-doc for the Cellular Neurophysiology working group at Bielefeld University. He taught us about the Patch-Clamp method and spent his valuable time supporting our project by guiding our Patch-Clamp measurements. "
+    ] })],
+    pictureurl_implementation: "https://static.igem.wiki/teams/5247/photos/hp/bild-interssierte-wissenschaftler-oho.webp",
+    pictureurl_interview: "https://static.igem.wiki/teams/5247/photos/hp/bild-patch-clamp-isi-oliver.webp",
+    references: /* @__PURE__ */ jsx69(WischmeyerSources, {}),
+    interview: /* @__PURE__ */ jsxs47(Fragment28, { children: [
+      /* @__PURE__ */ jsx69(QaBox, { q: "Can you educate us about your academic career?", a: "I did my doctorate 30 years ago at Bielefeld University and then worked at the Max Planck Institute in G\xF6ttingen a lot with the patch-clamp technique. Today, I\u2019m head of the working group Cellular Neurophysiology of the medicine faculty of Bielefeld University." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "What new methods are currently available in electrophysiological research?", a: "One of the latest methods is E-cis measurements. These make it possible to examine a monolayer of confluent cells and to measure the membrane potential both above and below. The change in conductivity can be analyzed for instance as a function of CFTR expression." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "How can we proceed with the investigation of CFTR in different cell cultures by patch-clamp?", a: "You can study CFTR expression in HEK cells, which allows for a measurable change in chloride conductance. I am not sure whether we will be able to investigate CFTR sufficiently in epithelial cells which you want to collect from your CF patient friend and your team members. That is something we have to try out." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "How challenging is the measurement of CFTR conductance in epithelial cells?", a: "CFTR in epithelial cells has very low conductivity in the femtoampere range. Therefore, extremely sensitive testing is necessary to obtain meaningful results." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "How challenging is the patch-clamp measurement of CFTR conductance in epithelial cells?", a: "The project could take at least one year, even for experienced researchers." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "What technical challenges do we face in implementing the patch-clamp measurements?", a: "One of the biggest challenges is measuring the current across the entire cell, as we do not want to carry out single-channel measurements, but rather record the current across cells with a strongly expressing vector carrying the gene for the ion channel." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "What requirements must be met for cultivation and transfection before the patch-clamp measurement?", a: "You have to cultivate the cells on poly-lysine and laminin and use round coverslips of 10 mm diameter to prepare them for measurement. For identification of positive transfectants, we use GFP co-transfected cells in our working group, you should think of something like that as well. A transfection rate of 10 % is sufficient to gain enough cells for the measurement. You can think of optimizing your transfection by using Lipofectamine2000, which works well for our working group." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Who could help us with the patch-clamp measurements?", a: "The patch-clamp devices are heavily utilized in our working group, so you probably cannot perform measurements on your own. However, postdocs could support you for some measurements. Dr. Oliver Dr\xE4ger is available as a contact person of my working group." })
+    ] }),
+    summary: "In summary, through the interview with Prof. Dr. Wischmeyer and the collaboration with his employee Dr. Oliver Dr\xE4ger, we gained valuable insights and optimized our approach to effectively investigate and measure the functionality of the CFTR ion channel, thereby determining the efficiency of our prime editing strategy.",
+    months: "june"
+  },
+  {
+    vorname: "Joshua",
+    nachnname: "Bauder",
+    job: "parent and activist",
+    affiliation: "CF vests worldwide",
+    pictureurl: pics["joshua"],
+    tag: "Patient",
+    heading: "Interview with a CF Parent and Global Advocate on Worldwide Support and Perspectives",
+    interviewtabid: "joshua",
+    language: "en",
+    quote: "We\u2019ve had to sit by and watch people die, knowing that better treatment exists but is inaccessible. ",
+    aimofcontact: [
+      /* @__PURE__ */ jsxs47("p", { children: [
+        "We contacted the organization ",
+        /* @__PURE__ */ jsx69("a", { href: "https://www.cfvww.org/", children: "CF vests worldwide" }),
+        " with the aim to hear more diverse perspectives beyond Germany. After the founder Rod connected us with Joshua, Joshua was so kind to conduct an interview with us not only about the perspectives and stories he heard but also about his personal experiences with his daughter and living in a country where CF care is very hard to get. Joshua (from the USA) and his family live in Thailand where he and his wife run a children\u2019s home. Their daughter is the only child with CF."
+      ] }),
+      /* @__PURE__ */ jsxs47("p", { children: [
+        "It is possible to learn more about Joshua and his family though the ",
+        /* @__PURE__ */ jsx69("a", { href: "https://thebonnellfoundation.org/cf-vests-worldwide/", children: "podcast of the Bonnel foundation" }),
+        "."
+      ] })
+    ],
+    insights: [/* @__PURE__ */ jsxs47("p", { children: [
+      " Joshua showed us just how dire the situation is for CF patients is in some regions. It was shocking to hear there is only one doctor knowledgeable about CF in Thailand and that many doctors dismiss the possibility of CF due to racial bias and misinformation. Additionally, we confirmed how much the accessibility of care depends on the healthcare system, as we already touched on during the interview with ",
+      /* @__PURE__ */ jsx69(HPLinktoOtherHPTab, { tab: "nicole", text: "Nicole Friedlein" }),
+      ",. On the parenting level, Joshua brought in many perspectives contrary to what we previously heard. In the interview with ",
+      /* @__PURE__ */ jsx69(HPLinktoOtherHPTab, { tab: "maxfirst", text: "Max" }),
+      ",, we learned he vehemently avoids ponding water while Joshua\u2019s daughter is allowed to roam around with no such restrictions. Neither have chronic infections."
+    ] })],
+    implementation: [/* @__PURE__ */ jsxs47("p", { children: [
+      "The interview with Josh made us realize we too needed to look at the reason why we chose F508del. Did we, too, fall for bias? Despite a change of target not being feasible anymore, we looked into it and traced back our steps that led to our decision. We did not find as much information about other mutations when first researching  Cystic Fibrosis, especially in the context of prime editing. Mattijs Bulceans's paper on targeting the mutations L227R and N1303K ",
+      /* @__PURE__ */ jsx69(TabScrollLink, { tab: "joshua", scrollId: "desc-1", num: "1" }),
+      " was one of few papers. After explicitly searching for  Cystic Fibrosis records for specific countries and regions, we uncovered a moderate number of papers examining CF in Asia and other regions we previously did not know much about. The very first article supported Joshua's hypotheses and painted a sad picture: Among other things, it describes the case of a four-month-old boy who was diagnosed with Cystic Fibrosis. Nothing unusual in itself, but the circumstances are depressing. Two of the three siblings born before him died within months of birth and had previously presented with symptoms of  Cystic Fibrosis. He was the first to be diagnosed. A sweat test aimed at  Cystic Fibrosis was not available at the hospital, so one was improvised. Later on, a genetic test revealed the presence of 508del. ",
+      /* @__PURE__ */ jsx69(TabScrollLink, { tab: "joshua", scrollId: "desc-2", num: "2" }),
+      " We found ourselves and our lack of knowledge in good company as we found papers as new as from 2020 (14 years after the previously mentioned paper) containing statements such as \u201Crecent reports suggest that CF does occur in Asia\u201D ",
+      /* @__PURE__ */ jsx69(TabScrollLink, { tab: "joshua", scrollId: "desc-3", num: "3" }),
+      ". Fortunately, there is a rising number of  Cystic Fibrosis experts for Asia and other previously overlooked regions such as Africa. ",
+      /* @__PURE__ */ jsx69(TabScrollLink, { tab: "joshua", scrollId: "desc-4", num: "4" }),
+      " We chose to not only look at the scientific data but also into anecdotal evidence. To find the latter, we searched official and private websites and chatrooms for information and experiences of patients. In the end, we found narratives from most ethnic backgrounds about being dismissed and often misdiagnosed. Of course, this is not an occurrence unique to  Cystic Fibrosis. Our conclusion is that yes, we did fall for bias. But regardless of ethnicity, 508del occurs and is overall the most prevalent mutation as was confirmed in our interview with CF expert Sriram .... This experience was uncomfortable as we felt the pressure to be thorough and deliver a perfect project. What would have been more devastating than realizing we made a wrong choice at the very core?  We made the conscious decision to invest our resources into figuring out if we indeed made a mistake and we want to encourage other teams to do the same. iGem stands for innovation \u2013 but also for growth. Especially in the context of Integrated Human Practices, it is important to examine both the positive and the negative to create a project with a future.  "
+    ] })],
+    pictureurl_interview: "https://static.igem.wiki/teams/5247/photos/hp/joshua-zoom.webp",
+    references: /* @__PURE__ */ jsx69(JoshuaInterviewSources, {}),
+    summary: "Joshua, a CF parent living in Thailand, shared his experiences about the severe challenges of accessing CF care in regions like Southeast Asia. His story highlighted the racial bias and lack of medical knowledge about CF in these areas. This interview prompted the team to reflect on their focus on the F508del mutation, questioning if their research was biased towards more commonly studied mutations. After revisiting their research process, they found that the F508del mutation remains globally relevant, yet the experience reinforced the importance of addressing gaps in healthcare and research for underrepresented regions.",
+    months: "July"
+  },
+  {
+    vorname: "Close the Loop",
+    nachnname: "",
+    pictureurl: pics["logo"],
+    job: "Team iGEM",
+    affiliation: "Bielfeld CeBiTec 2024",
+    tag: "Milestone",
+    heading: "Enhancing Delivery Strategies and Collaboration for Prime Editing",
+    interviewtabid: "loop",
+    quoteNachname: "Wiesner, Teammember",
+    quoteVorname: "Lisa",
+    quote: "I\u2019m thrilled with the progress we\u2019re making in optimizing our delivery strategies. The collaboration with industry experts has opened our eyes to new possibilities, and I believe our work will significantly impact  Cystic Fibrosis treatment.",
+    type: "meta",
+    summary: [
+      /* @__PURE__ */ jsx69("p", { children: "After successfully conducting multiple experiments, we delved deeper into delivery strategies for our Prime Editing system. Our stakeholders provided crucial feedback that helped us overcome experimental failures and improve our methodology. Marco Raduvic offered key tips for effectively utilizing lipid nanoparticles, allowing us to successfully transfect them into HEK and CFTR-specific cells. Additionally, we replicated the proof of concept established by David Liu et al. in 2019, gaining valuable insights into how a Prime Editing system should function. During this process, we identified a gap in measuring the efficiency of our Prime Editing constructs. To address this, we developed a fluorescence-based system with high selectivity, allowing us to perform precise efficiency analyses. Beyond lab work, we connected with various industry members, not only to secure sponsorships but to emphasize collaboration and exchange with leading market players. Through this network, we not only received feedback on the importance of physiological therapies but also gained insights into the insurance-related challenges associated with a fundamental disease like  Cystic Fibrosis. This motivated us to take our project to the next level. Our collaboration with the medical faculty of our university, along with national feedback, enabled us to integrate new and advanced validation methods. In the next phase of our studies, we decided to optimize lipid nanoparticles (LNPs) to make them suitable for a novel, lung-specific delivery strategy. Additionally, we prepared to explore enzyme engineering by engaging with stakeholders experienced in nickase development and yeast experimental design, further refining our Prime Editing system." }),
+      /* @__PURE__ */ jsxs47("ul", { children: [
+        /* @__PURE__ */ jsxs47("li", { children: [
+          /* @__PURE__ */ jsx69("b", { children: "Overcoming Experimental Challenges:" }),
+          " Improved delivery strategies based on stakeholder feedback, successfully using lipid nanoparticles to transfect HEK and CFTR-specific cells."
+        ] }),
+        /* @__PURE__ */ jsxs47("li", { children: [
+          /* @__PURE__ */ jsx69("b", { children: "Proof of Concept:" }),
+          " Successfully replicated the Prime Editing proof of concept established by David Liu et al. (2019), gaining valuable insights into system functionality."
+        ] }),
+        /* @__PURE__ */ jsxs47("li", { children: [
+          /* @__PURE__ */ jsx69("b", { children: "Development of Fluorescence-Based Efficiency Measurement:" }),
+          " Created a highly selective fluorescence-based system to accurately measure the efficiency of Prime Editing constructs."
+        ] }),
+        /* @__PURE__ */ jsxs47("li", { children: [
+          /* @__PURE__ */ jsx69("b", { children: "Industry Collaboration:" }),
+          " Established connections with industry members for sponsorships, collaboration, and feedback on broader challenges such as insurance issues tied to  Cystic Fibrosis treatment."
+        ] }),
+        /* @__PURE__ */ jsxs47("li", { children: [
+          /* @__PURE__ */ jsx69("b", { children: "Optimization of LNPs for Lung-Specific Delivery:" }),
+          " Began optimizing lipid nanoparticles for lung-specific delivery, while preparing for enzyme engineering to enhance the Prime Editing system."
+        ] })
+      ] })
+    ],
+    months: "july"
+  },
+  {
+    title: "Prof. Dr.",
+    vorname: "Stefan",
+    nachnname: "Hammer",
+    job: "Junior Professor of Organic Chemistry and Biocatalysis",
+    affiliation: "University Bielefeld",
+    pictureurl: pics["hammer"],
+    tag: "Academia",
+    heading: "Insights from the discussion on enzyme engineering",
+    interviewtabid: "hammer",
+    language: "de",
+    quote: "Implementing controls is crucial for the Nikase assay to prevent false positives and ensure the accuracy of your results.",
+    quoteNachname: "Hammer, Expert for Enzyme Engineering ",
+    quoteVorname: "Prof. Dr. Stefan",
+    aimofcontact: [/* @__PURE__ */ jsx69("p", { children: "After we had developed a number of theroetic elaborations, feedback with corresponding expertise in the field of enzyme engineering was of exceptional importance to us. For this reason, we wanted to discuss our approaches with Prof. Dr. Hammer." })],
+    insights: [
+      /* @__PURE__ */ jsx69("p", { children: "In our discussion with Prof. Dr. Hammer discussion with Prof. Dr. Hammer about  different theoretical approaches we had developed:" }),
+      /* @__PURE__ */ jsxs47("ul", { children: [
+        /* @__PURE__ */ jsx69("li", { children: "PAM engineering" }),
+        /* @__PURE__ */ jsx69("li", { children: "Chimeric protein" }),
+        /* @__PURE__ */ jsx69("li", { children: "Phage-Assisted Continuous Evolution (PACE)" }),
+        /* @__PURE__ */ jsx69("li", { children: "Rational Design: Mutation of zinc-finger" })
+      ] }),
+      /* @__PURE__ */ jsx69("p", { children: " We discussed whether a rational design, supported by structural simulations with AlphaFold 3, or the construction of a chimeric protein would be the superior approach. The possibility of using protein evolution via PACE or conventional methods was demonstrated, even if these approaches are very time-consuming. An important topic was the analysis of homologous mechanisms by sequence alignments to identify structural similarities in catalytic centers. In addition, we discussed the role of zinc finger domains and targeted mutations, such as substitution to alanine, in the function of optimization. It was also emphasized that mutations should be evaluated in enzymes with nickase activity, although the screening for this is very laborious. The reliability of AlphaFold predictions was evaluated positively despite the complexity of the enzymes. One promising approach could be the transfer of mutations to homologous proteins. " })
+    ],
+    implementation: [
+      /* @__PURE__ */ jsx69("p", { children: "We learned from the discussion that we need to take a rational approach and consider the following conclusions:" }),
+      /* @__PURE__ */ jsxs47("ul", { children: [
+        /* @__PURE__ */ jsx69("li", { children: "A rational approach could be the transfer of mutations to homologous proteins" }),
+        /* @__PURE__ */ jsx69("li", { children: "For rational design, structural simulation using AlphaFold 3 could be used to model and understand specific protein structures" }),
+        /* @__PURE__ */ jsx69("li", { children: "Homologous mechanisms & sequence alignments" }),
+        /* @__PURE__ */ jsx69("li", { children: "Analysis of structural similarities in catalytic centers by sequence comparisons" }),
+        /* @__PURE__ */ jsx69("li", { children: "Using Ala or Gly for substitution" }),
+        /* @__PURE__ */ jsx69("li", { children: "Development of a nickase assay" })
+      ] }),
+      /* @__PURE__ */ jsx69("p", { children: "We developed our mutation candidates on this basis. " })
+    ],
+    summary: "In our discussion with Prof. Dr. Hammer, we explored several theoretical approaches in enzyme engineering, including PAM engineering, chimeric proteins, Phage-Assisted Continuous Evolution (PACE), and rational design involving zinc-finger mutations. We evaluated the potential of using structural simulations with AlphaFold 3 and the construction of chimeric proteins. The conversation highlighted the importance of analyzing homologous mechanisms through sequence alignments to identify structural similarities in catalytic centers. We also discussed targeted mutations, such as substitutions to alanine, and the development of a nickase assay. Overall, we concluded that transferring mutations to homologous proteins is a promising rational approach for optimizing enzyme function.",
+    months: "July"
+  },
+  {
+    vorname: "Steffen Bira and",
+    nachnname: "Serra G\xFCrcan from Corden Pharma",
+    job: "Associate director",
+    affiliation: "Corden Pharma",
+    pictureurl: pics["corden"],
+    tag: "Industry",
+    heading: "Lipid Nanoparticles in Gene Therapy: perspectives from Corden Pharma ",
+    interviewtabid: "corden",
+    language: "en",
+    quote: "The stability of LNPs depends on the specific lipid and RNA components used, but ensuring the overall stability of a new formulation requires rigorous empirical testing under various conditions.",
+    aimofcontact: [/* @__PURE__ */ jsx69("p", { children: "The primary aim of the communication with Steffen Bira and Serra G\xFCrcan from Corden Pharma was to explore the technical aspects and practical applications of Lipid Nanoparticles (LNPs) in advanced medical therapies, including gene therapy and inhalation treatments. The conversation focused on the possibility of using Corden Pharma\u2019s LNP starter kits, understanding the factors affecting the stability of LNPs, and exploring options for incorporating antibodies into LNPs to target specific cells. " })],
+    insights: [
+      /* @__PURE__ */ jsxs47("p", { children: [
+        "The discussion with ",
+        /* @__PURE__ */ jsx69("a", { href: "https://cordenpharma.com/", children: "Corden Pharma" }),
+        ", led by Steffen Bira and Serra G\xFCrcan, offered key insights into LNPs and their applications. While Corden Pharma hasn't extensively explored spray drying for LNPs, they recommended consulting specialists to evaluate its feasibility, especially concerning lipid stability during the process. Stability was highlighted as crucial for inhalation therapies, requiring thorough testing of entire LNP formulations, possibly aided by cryoprotectants and controlled temperatures. Corden Pharma's LNP starter kits are based on well-researched lipid combinations designed for stability and encapsulation efficiency, making them suitable for multiple experiments. They suggested that modifying lipid components, such as incorporating cholesterol derivatives, could enhance cellular uptake and overall efficacy. Additionally, they confirmed the possibility of incorporating antibodies into LNPs and emphasized the importance of considering intellectual property when selecting lipids for commercial use. They also showed openness to collaboration, including offering discounts in exchange for recognition in publications. The interaction with Corden Pharma provided several key insights:"
+      ] }),
+      /* @__PURE__ */ jsxs47("ul", { children: [
+        /* @__PURE__ */ jsxs47("li", { children: [
+          /* @__PURE__ */ jsx69("b", { children: "Spray Drying Feasibility:" }),
+          " Corden Pharma hasn\u2019t explored spray drying extensively; consultation with specialists is recommended for assessing feasibility and lipid stability."
+        ] }),
+        /* @__PURE__ */ jsxs47("li", { children: [
+          /* @__PURE__ */ jsx69("b", { children: "LNP Stability:" }),
+          " Stability of LNPs, particularly for inhalation therapies, needs empirical testing, considering shear forces and the potential use of cryoprotectants or temperature control."
+        ] }),
+        /* @__PURE__ */ jsxs47("li", { children: [
+          /* @__PURE__ */ jsx69("b", { children: "Lipid Selection in Kits:" }),
+          " Starter kits use well-researched lipid combinations, tested for stability, encapsulation efficiency, and potency. They provide materials for multiple experimental batches."
+        ] }),
+        /* @__PURE__ */ jsxs47("li", { children: [
+          /* @__PURE__ */ jsx69("b", { children: "Lipid Modifications:" }),
+          " Exploring alternative lipids (e.g., cholesterol derivatives) could enhance stability and cellular uptake, tailored to project needs."
+        ] }),
+        /* @__PURE__ */ jsxs47("li", { children: [
+          /* @__PURE__ */ jsx69("b", { children: "Antibody Incorporation:" }),
+          " Antibodies can be incorporated into LNPs during preparation or afterward, depending on targeting requirements."
+        ] }),
+        /* @__PURE__ */ jsxs47("li", { children: [
+          /* @__PURE__ */ jsx69("b", { children: "Intellectual Property:" }),
+          " IP considerations are crucial when selecting lipids for LNP formulations, as many lipids are patented."
+        ] }),
+        /* @__PURE__ */ jsxs47("li", { children: [
+          /* @__PURE__ */ jsx69("b", { children: "Collaboration Opportunities:" }),
+          " Corden Pharma is open to offering discounts or forming partnerships, with recognition in publications or acknowledgments."
+        ] })
+      ] })
+    ],
+    implementation: [/* @__PURE__ */ jsx69("p", { children: "The insights from Corden Pharma had a major impact on our project, especially in selecting lipids critical for LNP stability and optimizing gene therapy applications. Initially, we used the Cayman kit, but it was suboptimal for delivering our Primeguide. After receiving feedback, we switched to Corden Pharma\u2019s kit #2, which includes advanced lipid components like cationic lipids that improve cellular uptake and enhance LNP stability. This shift has significantly boosted the efficiency and robustness of our formulations. Additionally, Corden Pharma's guidance on lipid modifications and antibody incorporation opened new possibilities for targeted therapies. These insights not only improved our technical approach but also paved the way for potential collaborations, offering cost benefits and increased scientific recognition. The feedback will continue to shape our testing process and improve therapeutic delivery. " })],
+    interview: /* @__PURE__ */ jsxs47(Fragment28, { children: [
+      /* @__PURE__ */ jsx69(QaBox, { q: "Is it possible to dry the LNPs designed by Corden Pharma, such as through spray drying?", a: "It has not been confirmed whether LNPs have been successfully dried using spray drying. Further investigation or consultation with a specialized company would be required to determine feasibility." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "How is stability ensured in LNPs, particularly for use in inhalation therapy?", a: "The stability largely depends on the specific lipid and RNA components used in the formulation. While the stability of individual lipids can be assessed, the overall stability of a new LNP formulation requires empirical testing under various conditions." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "How are lipid combinations selected for inclusion in the LNP starter kits, and what testing is conducted?", a: "Lipid combinations in the LNP starter kits are selected based on known interactions, particularly in formulations containing RNA. Testing is conducted to assess physical-chemical properties, encapsulation efficiency, and overall potency. The kits are designed to provide sufficient material for multiple experimental batches." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Is it advisable to modify the lipid components in an existing LNP formulation?", a: "It is generally advisable to consider alternative lipid components, as different lipids may offer improved stability or efficacy. However, the specific needs of the project will dictate whether changes are necessary." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Is it possible to incorporate antibodies into LNPs, and what is the recommended approach?", a: "Yes. Incorporation of antibodies into LNPs is possible. This can be achieved either during the initial preparation phase or by incubating antibodies with LNPs after their formation, depending on whether surface or internal localization of antibodies is desired. Reference to specific studies may provide further guidance." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "What is Corden Pharma's position on projects involving gene therapy?", a: "Corden Pharma operates as a service provider, focusing on the manufacturing of active pharmaceutical ingredients (APIs) and excipients rather than developing therapeutic products. Consideration should be given to the intellectual property status of the lipids used in LNP formulations, particularly for commercial applications." })
+    ] }),
+    summary: "The primary goal of the communication with Steffen Bira and Serra G\xFCrcan from Corden Pharma was to explore the use of Lipid Nanoparticles (LNPs) in gene therapy and inhalation treatments. Corden Pharma recommended consulting specialists for assessing spray drying feasibility, while highlighting the importance of testing LNP stability under various conditions. Their LNP starter kits are optimized for stability and encapsulation efficiency, with potential for lipid modifications to enhance cellular uptake. They also confirmed that antibodies can be incorporated into LNPs and emphasized considering intellectual property when selecting lipids. Based on Corden Pharma\u2019s insights, we switched to their kit #2 for our project,  hoping to improve the stability and efficiency of our LNP formulations. Their guidance also opened opportunities for targeted therapies and collaborations. This feedback will continue to enhance our testing and therapeutic approaches.",
+    months: "july",
+    pictureurl_interview: "https://static.igem.wiki/teams/5247/photos/hp/hp-corden-zoom.png"
+  },
+  {
+    vorname: "'MINT Sommer'",
+    nachnname: "",
+    pictureurl: pics["mint"],
+    tag: "Education",
+    heading: "Innovative minds unite: iGEM's participation in 'MINT Sommer'",
+    interviewtabid: "minthptime",
+    type: "meta",
+    quoteNachname: "Lange, Teammember",
+    quoteVorname: "Kaya",
+    quote: "It was amazing to see how exciting the conversations were with future STEM scientists and to hear the fresh perspectives from young minds. The entire experience was both inspiring and energizing.",
+    summary: [/* @__PURE__ */ jsx69("p", { children: "MINT Sommer 2024 is a program for high school graduates interested in STEM fields, and iGEM Bielefeld participated to raise awareness about CF and promote their gene therapy research. The team engaged future scientists, explaining the iGEM competition and their synthetic biology approach to address CF. Using insights from previous workshops, they designed interactive activities to make the complexities of CF accessible to attendees. Over two weeks, they formed meaningful connections with professors, students, and STEM professionals, enriching their research discussions. Overall, the event helped improve their science communication skills and fostered valuable professional growth." })],
+    months: "July"
+  },
+  {
+    title: "Dr.",
+    vorname: "Svenja",
+    nachnname: "Vinke",
+    job: "PostDoc",
+    affiliation: "at Department of Genetics, Harvard Medical School, former iGEMer",
+    pictureurl: pics["svenja"],
+    tag: "Academia",
+    heading: "Insights on the Feasibility of PACE for Prime Editing Optimization",
+    interviewtabid: "svenja",
+    language: "de",
+    quote: "The Safety and Security Award at iGEM underscores commitment to responsible research and innovation, ensuring that the projects prioritize the well-being of people and the environment while advancing synthetic biology.",
+    quoteNachname: "Vinke ,Member of the Safety and Security Committee at iGEM HQ ",
+    quoteVorname: "Dr. Svenja",
+    aimofcontact: [/* @__PURE__ */ jsx69("p", { children: "We contacted Svenja Vinke, a former iGEMer from Bielefeld and Member of the Safety and Security Committee at iGEM HQ , to get her insight and her opinion regarding the use of phage assisted continuous evoluWe contacted Svenja Vinke, a former iGEMer from Bielefeld, to get her insight and her opinion regarding the use of phage assisted continuous evolution (PACE, see engineering cycle 1) for our prime editing optimizations. Svenja works at the iGEM Safety and Security Committee. Additionally, she was part of the Biosafety and Security Award Team of Bielefeld University in 2016." })],
+    insights: [
+      /* @__PURE__ */ jsx69("p", { children: "Svenja explained, that a PACE approach is not feasible to use for optimization of our nickase candidates because of several reasons:" }),
+      /* @__PURE__ */ jsxs47("ul", { children: [
+        /* @__PURE__ */ jsx69("li", { children: "Implementing a PACE system takes way too much time to use for our project." }),
+        /* @__PURE__ */ jsx69("li", { children: "Endonucleases might be too big to optimize using PACE." }),
+        /* @__PURE__ */ jsx69("li", { children: "Unspecific cutting or nicking in the bacterial genome kills the cells, which makes optimization of endonucleases very challenging." }),
+        /* @__PURE__ */ jsx69("li", { children: "Prime editing in E. coli cells is less effective compared to human cells, which might impair the evolution process." })
+      ] })
+    ],
+    implementation: [/* @__PURE__ */ jsx69("p", { children: "On the basis of Svenja\u2019s and other opinions on the topic, we decided not to try implementing a PACE system. " })],
+    summary: "We reached out to Svenja Vinke, a former iGEMer and Postdoc, to gain insights on using phage-assisted continuous evolution (PACE) for optimizing our prime editing. Svenja explained that a PACE approach is not feasible for our nickase candidates due to several reasons: it requires too much time, endonucleases are likely too large for optimization, unspecific cutting can kill bacterial cells, and prime editing is less effective in E. coli than in human cells. Based on Svenja's feedback and other expert opinions, we decided against implementing a PACE system for our project.",
+    months: "July"
+  },
+  {
+    title: "Dr.",
+    vorname: "Eva-Maria",
+    nachnname: "Berens",
+    job: "Ethics Committee of Bielefeld University",
+    affiliation: "Bielefeld University",
+    pictureurl: pics["berens"],
+    tag: "Academia",
+    heading: "Bioethics: Best Practices for Handling Patient Data and Primary Cells",
+    /* Guidance from Ethics Committee on Best Practices for Patient Data and Primary Cells */
+    interviewtabid: "berens",
+    language: "de",
+    quote: "The most important thing is a detailed letter of consent and a detailed privacy policy. This must explain to the patient as precisely as possible what happens to their cells and data, as well as the time span, which people are involved or have access to the cells and how.",
+    aimofcontact: "The aim of the interview was to get an answer to the question of whether we need an ethics vote for our project or not and to obtain guidelines for dealing with patient cells regarding ethical issues and data protection. ",
+    insights: "The discussion was very informative in terms of how we should approach this topic and focused primarily on the important factors that need to be considered when planning the handling of patient cells. These include which legal principles need to be observed, data protection, ethical considerations and, above all, detailed and specific information for the donor. It also made us look at the situation from many different angles and consider the risks of worst-case scenarios. Overall, this interview was very useful to us, and we were able to use the information we gained to develop a kind of guideline that allowed us to approach this sensitive topic, which was new to us, with a certain degree of confidence. ",
+    implementation: "Based on the knowledge we have gained, we have drawn up guidelines for our handling of the cells. We used this guide when handling the patient cells, to ensure they were handled in an ethically correct manner.",
+    summary: "This interview focused on the ethical and legal considerations of handling patient cells, we sought to determine whether our project required an ethics vote and to gather guidelines on data protection and patient consent. The expert emphasized the importance of providing patients with a detailed consent letter and privacy policy, clearly explaining how their cells and data will be used, who will have access, and the time span involved. This conversation helped us understand key legal and ethical principles, especially regarding transparency with donors. We used these insights to develop guidelines for handling patient cells, ensuring we approached this sensitive process with confidence and ethical care.",
+    months: "July",
+    pictureurl_interview: "https://static.igem.wiki/teams/5247/integrated-human-practices/interview-berens.webp"
+  },
+  {
+    title: "M.Sc.",
+    vorname: "Mattijs",
+    nachnname: "Bulcaen",
+    job: "PhD Researcher at Laboratory for Molecular Virology & Gene Therapy",
+    affiliation: "KU Leuven",
+    pictureurl: pics["mattijs"],
+    tag: "Academia",
+    heading: "Visit Mattijs Bulcaen in Leuven and the Laboratory for Molecular Virology & Gene Therapy",
+    interviewtabid: "mattijsvisit",
+    language: "en",
+    quote: "It was impressive to meet him in person and realize how deeply knowledgeable he is on the subject; his insights were incredibly helpful.",
+    quoteNachname: "Mundt, Teammember",
+    quoteVorname: "Philip",
+    aimofcontact: [/* @__PURE__ */ jsx69("p", { children: "After our first interview with Mattijs Bulcaen we stayed in contact via email and eventually visited him in Leuven at his laboratory. Here we wanted to gain further information about the CFTR F508del models and editing confirmation." })],
+    insights: [/* @__PURE__ */ jsx69("p", { children: "We spoke about approaches for testing CFTR F508del correction in models and methods of confirmation. In this context we talked about HEK293T cell lines established in his laboratory that stably overexpress CFTR wild-type and F508del. We also discussed how to handle these cell lines. He explained, that the CFTR is fused with a 3HA tag, that in wild-type CFTR would be exposed to the extracellular space and therefore can be used for immunohistochemical staining of the protein, showing correct protein processing and channelling. Also, this allows for a western blot to be made using 3HA antibodies. Functional recovery of CFTR can also be visualized using halide sensitive eYFP or organoid assay, the ladder Mattijs had established an automated readout. Furthermore, we talked about how to handle Sanger sequencing data to analyse edits and discussed the possibility to avoid the weaknesses of Sanger sequencing by using Nanopore sequencing instead. We asked about the applicability of patch clamp analysis in the context of CFTR and Mattijs said that, to his knowledge, it has not been used to test for successful editing in CFTR. Lastly Mattijs explained how he plans to deliver the prime editing complex to the patient, and we evaluated the advantages and disadvantages of delivery strategies, including our very own LNP approach." })],
+    implementation: [/* @__PURE__ */ jsx69("p", { children: "When planning how to test and confirm editing by our own constructs, we were largely inspired by the information given to us by Mattijs. For example, we tested prime editing in the HEK293 cell lines we spoke about with Mattijs and used halide sensitive eYFP to check for CFTR function. Also, we tried differentiating wild-type and F508del cells using patch clamp. Unfortunately, a lot of the methods mentioned were not usable for us because of time constraints, but are still valuable for future projects and research built upon PreCyse. " })],
+    summary: "We visited Mattijs Bulcaen in Leuven to enhance our understanding of CFTR F508del models and editing confirmation. During the visit, we examined HEK293T cell lines that stably overexpress wild-type CFTR and the F508del variant. Mattijs demonstrated how to use a 3HA tag for visualizing protein processing and discussed methods for assessing CFTR functional recovery. We also compared Sanger and Nanopore sequencing techniques and evaluated delivery strategies for our prime editing complex. The insights from this visit guided our project, leading us to test prime editing in HEK293T cells using halide-sensitive eYFP. While some methods were not feasible due to time constraints, they laid the groundwork for future research in the PreCyse project.",
+    months: "july"
+  },
+  {
+    vorname: "Collaborations",
+    nachnname: "iGEM Team Link\xF6ping ",
+    type: "meta",
+    pictureurl: pics["link\xF6ping"],
+    tag: "Other",
+    heading: "Cooperation to create a Lipid Delivery System Handbook",
+    interviewtabid: "handbook",
+    job: "iGEM Team",
+    affiliation: "Link\xF6ping",
+    quoteVorname: "Kaya",
+    quoteNachname: "Lange",
+    quote: "We were genuinely excited when Link\xF6ping University approached us for collaboration. From the very beginning, their ideas resonated with us, and our shared enthusiasm laid a strong foundation for a productive partnership. We're happy to work together, also with the other teams, and explore new possibilities.",
+    aimofcontact: [/* @__PURE__ */ jsx69("p", { children: "The initial contact for our collaboration came from the iGEM team 2024 of Link\xF6ping, Sweden, who approached us with a proposal to create a \u201CDelivery-Based Handbook\u201D[link Handbook]. Their goal was to reduce the steep learning curve associated with these technologies by sharing collective knowledge from multiple teams, including ours. We were excited to contribute and help future teams navigate these challenges more easily. The handbook would serve as a valuable tool. " })],
+    insights: [
+      /* @__PURE__ */ jsx69("p", { children: "Throughout the collaboration, we gained significant insights, both scientific and collaborative. Initially, our meetings with the Link\xF6ping team and other participating teams - Patras, Radboud-University and TERMOSZ-Selye-HUN - were invaluable. These sessions allowed us to exchange ideas and learn how each team planned to use lipid-based delivery systems in their own projects. This mutual sharing of knowledge opened our eyes to new methodologies and potential applications of LNPs and liposomes. We also gained a deeper appreciation for the interdisciplinary nature of these systems. From the challenges of formulating stable particles to optimizing their efficiency in targeting cells, we realized the complexity of the field and how collaboration could help overcome many of these obstacles. By discussing our respective approaches, we were able to pool our expertise, which not only improved our understanding but also ensured that the handbook would be comprehensive and valuable for various iGEM teams, regardless of their specific project focus. In summary: " }),
+      /* @__PURE__ */ jsxs47("ul", { children: [
+        /* @__PURE__ */ jsx69("li", { children: "Learned different approaches to using LNPs and liposomes in iGEM projects." }),
+        /* @__PURE__ */ jsx69("li", { children: "Discovered new methods for optimizing LNPs." }),
+        /* @__PURE__ */ jsx69("li", { children: "Recognized challenges in particle stability and targeted delivery." }),
+        /* @__PURE__ */ jsx69("li", { children: "Gained appreciation for the interdisciplinary complexity of these systems." }),
+        /* @__PURE__ */ jsx69("li", { children: "Focused on documenting work to benefit future iGEM teams." })
+      ] })
+    ],
+    implementation: [/* @__PURE__ */ jsx69("p", { children: "The collaboration expanded our understanding of what's possible, inspiring us to consider new ideas for how we might integrate advanced techniques into our nanoparticle systems in future projects. The collaborative process also encouraged us to document our work more thoroughly, ensuring that future iGEM teams could benefit from both our successes and the challenges we encountered along the way.      Beyond the technical improvements, the experience taught us the value of teamwork across borders and disciplines. Each team brought a unique perspective, and by working together, we were able to develop a resource that was far greater than the sum of its parts" })],
+    summary: "This collaboration with Link\xF6ping and the other iGEM teams was an incredibly enriching experience. Together, we developed a \u201CDelivery-Based Handbook\u201D that will serve as a valuable resource for future teams working with LNPs and liposomes. The knowledge we gained not only enhanced our project but also strengthened our sense of community within iGEM. We are excited to present the handbook at the Grand Jamboree, where we will finally meet our collaborators in person and celebrate the culmination of our collective efforts. This partnership has shown us the immense power of collaboration, and we are proud to have been part of such a meaningful initiative.",
+    months: "several times",
+    pictureurl_aim: "https://static.igem.wiki/teams/5247/photos/hp/linkoping-handbook-lnp.webp",
+    pictureurl_implementation: "https://static.igem.wiki/teams/5247/photos/hp/linkoping-cooperation-photo.png"
+  },
+  {
+    title: "M.Sc.",
+    vorname: "Kai",
+    nachnname: "Sch\xFClke",
+    job: "PhD student Working group: Organic chemistry and biocatalysis\u202F ",
+    affiliation: "University of Bielefeld",
+    pictureurl: pics["kaihammer"],
+    tag: "Academia",
+    heading: "First insights of Enzym Engineering",
+    interviewtabid: "hammerkai",
+    language: "de",
+    quote: "It was fascinating to discuss enzyme engineering with a former iGEMer; the conversation sparked new ideas and perspectives.",
+    quoteNachname: "Michalek, Teammember",
+    quoteVorname: "Christian",
+    aimofcontact: [/* @__PURE__ */ jsxs47("p", { children: [
+      "When we realized that the creation of a nickase from the endonucleases in use was a desired outcome, it became necessary to talk to an expert in the field of enzyme engineering.\u202FOur first contact was Kai Sch\xFClke, a former iGEMer and PhD student under the guidance of ",
+      /* @__PURE__ */ jsx69(HPLinktoOtherHPTab, { tab: "hammer", text: "Prof. Dr. Hammer" }),
+      ", who is the leader of the working group organic chemistry and bioanalytics at Bielefeld University."
+    ] })],
+    insights: [/* @__PURE__ */ jsx69("p", { children: "In the process of our interaction with Kai, we learned about the various methods employed in enzyme engineering. He demonstrated the complexity of this field of research and emphasized the importance of choosing the right approach. As a former iGEMer, Kai, inspired by his past experiences, is highly motivated and determined to develop an outstanding project. He pointed out that we cannot rely on classical methods such as directed evolution, but instead should use a rational approach to select mutation candidates. His insights and enthusiasm have encouraged us to think critically and pursue innovative solutions in our work. " })],
+    implementation: [/* @__PURE__ */ jsx69("p", { children: "We incorporated Kai's insights into our project by shifting our approach to enzyme engineering. By focusing on a more targeted approach, we were able to refine our enzyme optimization process, ensuring that the modifications we made were based on informed, calculated decisions. This not only streamlined our research but also improved the chances of success by reducing the trial-and-error inherent in traditional methods. " })],
+    summary: "The team reached out to Kai Sch\xFClke, a former iGEM participant and enzyme engineering expert, for guidance on developing a nickase from the endonucleases in use. Kai emphasized the need for a rational, targeted approach rather than traditional methods like directed evolution. His insights helped the team refine their enzyme optimization process, making it more strategic and efficient. This shift reduced trial-and-error efforts and improved the chances of success, driving innovation in their project.",
+    months: "July"
+  },
+  {
+    title: "M.Sc.",
+    vorname: "Nils",
+    nachnname: "Berelsmann",
+    job: "PhD Working group: Prof. Dr. Gabriele Fischer von Mollard ",
+    affiliation: "University of Bielefeld",
+    pictureurl: pics["nilshefe"],
+    language: "de",
+    tag: "Academia",
+    heading: "Adapting expression strategies for Fanzor nickases and exploring the potential of Pichia pastoris for SpuFz1 nickase variants ",
+    interviewtabid: "nberelsmann",
+    quote: "Selection for multiple plasmid integrations is the easiest way to optimize protein expression in the yeast strain",
+    quoteNachname: "Berelsmann, Specilist of yeast culturvation",
+    quoteVorname: "Nils",
+    aimofcontact: [/* @__PURE__ */ jsxs47("p", { children: [
+      "During our interview with ",
+      /* @__PURE__ */ jsx69(HPLinktoOtherHPTab, { tab: "saito", text: "Makoto Saito" }),
+      " about fanzor, it became evident that the expression of our fanzor nickases in yeast is very promising. We then refined our expression strategy for the nickases and approached Nils Berelsmann, who is currently working on his PhD thesis with the yeast strain Pichia pastoris (SMD1163). This particular strain could be ideal for expressing the SpuFz1 nickase variants. Our main aim in contacting Nils was to gain insight and advice on yeast expression and he generously shared his expertise with us. Not only did he give us valuable advice, but he also provided us with the yeast strain itself, along with a corresponding expression vector for possible experiments. He also provided us with detailed protocols and the plasmid map of the vector and gave us practical tips on how to optimize the expression process. His support was invaluable in moving our work forward. "
+    ] })],
+    insights: [/* @__PURE__ */ jsx69("p", { children: "Pichia pastoris (SMD1163) is a promising option for expressing SpuFz1 nickase variants. Refining expression strategies based on expert insights is crucil for success. Nils provided practical tips on yeast expression, including optimizing growth conditions and fine-tuning induction protocols." })],
+    implementation: [/* @__PURE__ */ jsx69("p", { children: "We adapted our expression strategy for Fanzor nickases in yeast by incorporating the Pichia pastoris strain (SMD1163) and the provided expression vector into our experiments. Following Nils' detailed protocols and plasmid map, we optimized key steps, enhancing expression efficiency and protein yield." })],
+    summary: "The team sought expert advice from Nils to optimize yeast expression for Fanzor nickases. Nils provided invaluable guidance on addressing potential challenges and troubleshooting the process. He supplied the Pichia pastoris (SMD1163) strain along with a suitable expression vector, crucial for expressing SpuFz1 nickase variants. Additionally, he shared detailed protocols for yeast transformation and growth optimization, enabling the team to replicate his methods effectively for their experiments.",
+    months: "July"
+  },
+  {
+    title: "Dr.",
+    vorname: "Timm",
+    nachnname: "Weber",
+    job: "Staff Scientist, Project- and Quality Manager",
+    affiliation: "Central Biobank of the University of Bielefeld",
+    pictureurl: pics["biobank"],
+    tag: "Academia",
+    heading: "Discussed the processes involved in the storage, processing, and security of patient samples.",
+    interviewtabid: "timm",
+    quoteVorname: "Dr. Timm",
+    quoteNachname: "Weber, Scientist Project- and Quality Management Biobank",
+    quote: "A biobank is not just a collection of samples; it's a bridge between patient trust and scientific discovery, ensuring that valuable biological data is safeguarded while contributing to future research.",
+    aimofcontact: "Contact was established with Timm for the purpose of gaining deeper insights into the functioning of the biobank and of deepening our understanding of the processing of patient samples.",
+    insights: "We were provided with invaluable insights into the quality and project management of the biobank and storage of patient samples. It was of particular interest to note that Biobank OWL occupies a distinctive position in this context, insofar as a trustee is not a mandatory figure within its system and is therefore not provided for as a standard component. However, Biobank OWL has elected to integrate a trustee in order to enhance the security standards for the safeguarding of patient data. This illustrates the biobank's dedication to ensuring the optimal protection and security of sensitive patient data.",
+    implementation: "The insights gained have facilitated a deeper comprehension of the significance of quality management in the processing of patient samples. This understanding has been integrated into our project processes, thereby enhancing the accuracy and reliability of our procedures. ",
+    summary: "The interview focused on understanding the operations of the Biobank OWL, particularly in the areas of quality management and sample processing. Provided a detailed overview of biobank activities, including sample collection, storage conditions, and data protection measures",
+    text: /* @__PURE__ */ jsxs47(Fragment28, { children: [
+      /* @__PURE__ */ jsx69("img", { src: "https://static.igem.wiki/teams/5247/photos/for-wiki-texts/bs-hp-biobank/biobank-fancy-roboter.jpeg" }),
+      ",",
+      /* @__PURE__ */ jsx69("p", { children: "The ASKION C-line\xAE hermetic storage (HS200) series offers efficient, automated solutions for low-temperature sample storage in biobanks and biorepositories. " }),
+      /* @__PURE__ */ jsx69("img", { src: "https://static.igem.wiki/teams/5247/photos/for-wiki-texts/bs-hp-biobank/biobank-christian-kathleen.jpeg" }),
+      ",",
+      /* @__PURE__ */ jsx69("p", { children: " During their tour of the biobank, Kathleen and Christian were given an insight into the advanced sample storage systems. " }),
+      ",",
+      /* @__PURE__ */ jsx69("img", { src: "https://static.igem.wiki/teams/5247/photos/for-wiki-texts/bs-hp-biobank/biobank-fl-ssig-stickstoff.jpeg" }),
+      ",",
+      /* @__PURE__ */ jsx69("p", { children: " Liquid nitrogen in action - extremely cold and indispensable for the deep-freeze storage of sensitive samples. " }),
+      ",",
+      /* @__PURE__ */ jsx69("img", { src: "https://static.igem.wiki/teams/5247/photos/for-wiki-texts/bs-hp-biobank/biobank-tank.jpeg" }),
+      ",",
+      /* @__PURE__ */ jsx69("p", { children: " Large liquid nitrogen tank for the safe storage of samples in the biobank. " })
+    ] }),
+    language: "de",
+    interview: /* @__PURE__ */ jsxs47(Fragment28, { children: [
+      /* @__PURE__ */ jsx69(
+        QaBox,
+        {
+          q: "Can you briefly explain to us what exactly a biobank is and what its main tasks are?",
+          a: "A biobank is a specialized facility that collects, stores, and manages biological samples and associated data for research purposes. Each biobank is unique in its operations and functions. In Bielefeld and Lippe, the Biobank BOWL (Biobank OWL) is responsible for the storage of patient samples. The Data Integration Centre (DIZ) stores data pertaining to these samples. A trustee oversees the pseudonymisation of data, acting as an interface between BOWL and DIZ, ensuring that patient data cannot be directly linked to patient samples."
+        }
+      ),
+      /* @__PURE__ */ jsx69(
+        QaBox,
+        {
+          q: "What types of samples are collected in your biobank and for what research purposes are they used?",
+          a: "The biobank collects a wide variety of samples, including blood, stool, and soil. Samples may be gathered for specific research projects or for establishing a general repository under 'broad consent.' Researchers wishing to use these samples must apply to the 'use access committee,' which evaluates whether the requested samples and data can be released for their research."
+        }
+      ),
+      /* @__PURE__ */ jsx69(
+        QaBox,
+        {
+          q: "How large is your biobank? How many samples do you currently store and how many new samples are added on average?",
+          a: "The biobank is still in the process of establishing itself and has not yet reached its full sample capacity. However, it is anticipated to accumulate a significant number of samples in the near future, with several thousand samples expected to be analyzed in dedicated sessions."
+        }
+      ),
+      /* @__PURE__ */ jsx69(QaBox, { q: "What requirements and criteria must be met for a sample to be included in your biobank?", a: "Samples must be processed according to highly detailed protocols, and regular audits are conducted to ensure compliance with all standards." }),
+      /* @__PURE__ */ jsx69(
+        QaBox,
+        {
+          q: "Which other research institutions or biobanks do you cooperate with and what form does this cooperation take?",
+          a: "Biobank OWL has a second location in Lippe, in addition to Bielefeld. Collaborations exist with the DIZ, the Treuhand, and three university hospitals. It is anticipated that cooperation with other working groups will increase in the future."
+        }
+      ),
+      /* @__PURE__ */ jsx69(
+        QaBox,
+        {
+          q: "What specific storage conditions (e.g. temperature, humidity) must be observed for different sample types?",
+          a: "Samples are stored under various temperature conditions, including -20\xB0C, -80\xB0C, and -150\xB0C, along with the use of liquid nitrogen."
+        }
+      ),
+      /* @__PURE__ */ jsx69(
+        QaBox,
+        {
+          q: "How do you ensure that the samples remain stable and usable over longer periods of time?",
+          a: "Samples are stored in nitrogen for long-term stability."
+        }
+      ),
+      /* @__PURE__ */ jsx69(
+        QaBox,
+        {
+          q: "What encryption techniques or data protection measures are used in your biobank to prevent unauthorized access to patient data? Are there special regulations for the anonymisation of data and how is it ensured that patients cannot be traced?",
+          a: "Pseudonyms are created using specialized software such as CentraXX or REDcap to protect patient data."
+        }
+      ),
+      /* @__PURE__ */ jsx69(
+        QaBox,
+        {
+          q: "What rights do patients have in relation to their samples, and how are these rights safeguarded in your biobank?",
+          a: "Patients have the right to revoke their consent at any time, which can be done at the clinic or biobank. The trustee, acting as an intermediary, will notify BOWL and DIZ to destroy the corresponding samples or data."
+        }
+      )
+    ] }),
+    months: "august"
+  },
+  {
+    vorname: "'Sch\xFCler*innen Akademie'",
+    nachnname: "",
+    pictureurl: pics["schueler"],
+    tag: "Education",
+    heading: "Empowering students through synthetic biology",
+    interviewtabid: "schueler",
+    type: "meta",
+    quoteVorname: "Kaya",
+    quoteNachname: "Lange, Teamm",
+    quote: "It was wonderful to be part of the Student Academy and to experience how much we learned while teaching. Sharing our knowledge and seeing the students' enthusiasm was incredibly rewarding, even though we couldn't convey everything in just one session.",
+    summary: [/* @__PURE__ */ jsx69("p", { children: "The CeBiTec Student Academy at Bielefeld University provides high school students with hands-on experience in biotechnology and molecular biology, supported by the Osthushenrich Foundation and Detmold district government. iGEM Bielefeld participated by guiding students through a nanopore sequencing experiment, teaching them about lab work, experiment preparation, and safety protocols. The team also presented their iGEM project, PreCyse, giving students insight into real-world research projects and synthetic biology. Many students were excited by the iGEM concept and expressed interest in joining during their future studies. Overall, the academy helped inspire students to explore STEM fields and gain practical scientific skills." })],
+    months: "August"
+  },
+  {
+    vorname: "Present evidence",
+    nachnname: "",
+    pictureurl: pics["logo"],
+    job: "Team iGEM",
+    affiliation: "Bielfeld CeBiTec 2024",
+    tag: "Milestone",
+    heading: "Brainstorming and selection of ideas and concepts",
+    interviewtabid: "evidence",
+    quoteNachname: "Lenger, Teammember",
+    quoteVorname: "Malte",
+    quote: "Our collaborations have not only enhanced our technical capabilities but have also reinforced the importance of ethical standards in our research. Together, we are paving the way for innovative solutions in gene therapy.",
+    type: "meta",
+    summary: [
+      /* @__PURE__ */ jsx69("p", { children: "We have successfully developed an enzyme engineering strategy, identifying potential nickase candidates with the support of Prof. Dr. Stefan Hammer. This crucial collaboration has laid the foundation for optimizing our Prime Editing system by selecting the most effective nickase enzymes for our applications. Our progress was significantly bolstered through collaboration with the Safety and Security Committee, which allowed us to implement our plans for working with primary cell cultures. Their guidance provided us with valuable feedback on establishing critical protocols, such as patient consent forms, guidelines for handling human biomaterial at BSL2 level, and hygiene concepts for sanitary facilities in institutional and industrial settings. With the invaluable input from the head of the Ethics Committee at Bielefeld University, we were able to open new doors, ensuring that our work adheres to the highest ethical and safety standards. This support enabled us to deepen our expertise in both enzyme engineering and yeast systems, further advancing our research. On the technical front, we have also made strides in lipid nanoparticle (LNP) design. We completed initial characterization of our LNPs and began cooperating with other iGEM 2024 teams, aiming to revolutionize the emerging field of LNP design. This collaboration has been instrumental in refining our approach and ensuring that our technology stays at the cutting edge of gene therapy delivery. Looking ahead, we are determined to maintain a stringent approach, focusing on further developments in enzyme engineering and LNP optimization. At this stage, we are also prioritizing our wiki development, aiming to effectively present our findings and progress to the broader iGEM community and beyond." }),
+      /* @__PURE__ */ jsxs47("ul", { children: [
+        /* @__PURE__ */ jsxs47("li", { children: [
+          /* @__PURE__ */ jsx69("b", { children: "Enzyme Engineering Strategy Development:" }),
+          " Developed an enzyme engineering strategy and identified potential nickase candidates in collaboration with Prof. Dr. Stefan Hammer."
+        ] }),
+        /* @__PURE__ */ jsxs47("li", { children: [
+          /* @__PURE__ */ jsx69("b", { children: "Implementation of Primary Cell Cultures:" }),
+          " Successfully implemented the use of primary cell cultures with the guidance of the Safety and Security Committee, including the creation of patient consent forms, BSL2 human biomaterial handling guidelines, and hygiene concepts."
+        ] }),
+        /* @__PURE__ */ jsxs47("li", { children: [
+          /* @__PURE__ */ jsx69("b", { children: "Ethics Committee Collaboration:" }),
+          " Worked with the head of the Ethics Committee at Bielefeld University to ensure compliance with ethical standards, opening new opportunities for advancing research."
+        ] }),
+        /* @__PURE__ */ jsxs47("li", { children: [
+          /* @__PURE__ */ jsx69("b", { children: "Lipid Nanoparticle (LNP) Characterization:" }),
+          " Completed initial characterization of LNPs and collaborated with other iGEM 2024 teams to innovate in LNP design."
+        ] }),
+        /* @__PURE__ */ jsxs47("li", { children: [
+          /* @__PURE__ */ jsx69("b", { children: "Wiki Development Focus:" }),
+          " Shifted focus towards developing the project wiki to document and share progress with the iGEM community."
+        ] })
+      ] })
+    ],
+    months: "august"
+  },
+  {
+    vorname: "Benjamin",
+    title: "Dr.",
+    nachnname: "Winkeljann",
+    job: "Co-Founder and CEO at ",
+    affiliation: "RNhale",
+    pictureurl: pics["winkeljann"],
+    tag: "Industry",
+    heading: "Discussion on spray-drying and stability of lipid nanoparticles with RNhale",
+    interviewtabid: "rnhale",
+    language: "de",
+    quoteVorname: "Dr. Benjamin",
+    quoteNachname: "Winkeljann, Expert for LNPs und Ceo von RNhale",
+    quote: "Spray-drying LNPs is a groundbreaking approach that enhances stability and enables efficient pulmonary delivery of mRNA, paving the way for innovative therapies for conditions like  Cystic Fibrosis.",
+    aimofcontact: [/* @__PURE__ */ jsxs47("p", { children: [
+      "As part of our development process of an innovative, effective pulmonary delivery of therapeutic mRNA to fight  Cystic Fibrosis, we conducted an interview with Dr. Benjamin Winkeljann, who is the Co-Founder of ",
+      /* @__PURE__ */ jsx69("a", { href: "https://rnhale.com/", children: "RNhale" }),
+      ". Dr. Benjamin Winkeljann has a wealth of experience in the field of RNA therapeutics and nanotechnology. His background includes extensive research in the development of lipid-based delivery systems, focusing on optimizing stability and efficacy for therapeutic applications. Winkeljann\u2019s work is supported by cutting-edge research from academic institutions, including collaborations with Professor Olivia Merkel from the Ludwig-Maximilians-Universit\xE4t in Munich, Germany. The interview with Winkeljann promoted our project part, which aimed to utilize spray-dried LNPs for efficient delivery to the lung. By engaging with RNhale, we sought to understand the nuances of their nano-embedded microparticle (NEM) technology and how it could enhance our delivery systems.  "
+    ] })],
+    insights: [
+      /* @__PURE__ */ jsxs47("p", { children: [
+        "RNhale's technology leverages advanced spray drying techniques to stabilize RNA therapeutics and create a formulation for pulmonary delivery. During our interview, Winkeljann detailed several crucial aspects. Firstly, the stability and shelf-life of spray-dried LNPs are remarkable. RNhale\u2019s siRNA formulations have maintained their integrity for up to 18 months at room temperature, and although specific data for mRNA is still pending, this suggests a promising shelf-life for mRNA formulations under similar conditions. The manufacturing process itself involves formulating RNA loaded LNPs through rapid mixing. Subsequently the LNPs are blended with a stabilizing excipient, often a sugar or alcohol. This mixture is then spray-dried, forming so-called NEMs, micron-sized particals compirsing an excipient matrix that embeds the RNA carrying LNPs. Key parameters for this process include LNP composition, feed rate, RNA content and drying temparture \u200B ",
+        /* @__PURE__ */ jsx69(TabScrollLink, { tab: "rnhale", scrollId: "desc-1", num: "1" }),
+        ". "
+      ] }),
+      /* @__PURE__ */ jsxs47("p", { children: [
+        "Verifying the integrity and efficiency of the LNPs involves various methods, including gel electrophoresis, scattering techniques, and functional readouts through transfection assays. After drying, the NEMs exhibit sperical shape, with sizes between 1-5\xB5m which can be visualized by scanning electron microscopy (SEM)",
+        /* @__PURE__ */ jsx69(TabScrollLink, { tab: "rnhale", scrollId: "desc-1", num: "1" }),
+        ". Moreover, RNhale employs artificial intelligence to optimize LNP formulations and predict the best drying conditions, reducing the need for extensive wet lab work."
+      ] })
+    ],
+    implementation: [
+      /* @__PURE__ */ jsx69("p", { children: "The interview with Dr. Benjamin Winkeljann from RNhale provided invaluable insights that will significantly enhance our project focused on mRNA delivery to the lungs using spray-dried LNPs. By seeking to integrate their proven techniques and innovative approach to spray-dry LNPs, we are optimistic about achieving superior stability, efficacy, and scalability in our therapeutic delivery systems.  " })
+    ],
+    pictureurl_aim: "https://static.igem.wiki/teams/5247/photos/hp/hp-rnhale-zoom.png",
+    pictureurl_interview: "https://static.igem.wiki/teams/5247/photos/for-wiki-texts/del-interview-rnhale/paper-overview.jpg",
+    pictureurl_implementation: "https://static.igem.wiki/teams/5247/photos/for-wiki-texts/del-interview-rnhale/paper-sem.jpg",
+    references: /* @__PURE__ */ jsx69(RnhaleSources, {}),
+    /*  interview:<>
+     <QaBox q="Can you specify the shelf life for spray-dried LNPs? What storage conditions do you recommend to maximize stability?" a="For small interfering RNA, we ofhave demonstrated and published stability of 18 months at room temperature. However, there are no existing studies for mRNA, which tends to be more fragile. For optimal stability, we recommend storing dried LNPs in a cool, dry place, away from direct sunlight."/> 
+     <QaBox q="What technical requirements and equipment are necessary to successfully spray-dry LNPs using your nano-embedded-microparticle (NEM) technology?" a="The key equipment includes an Impingement Jet Mixer for the preparation of LNPs and a spray dryer for formulating the dry powder. In combination with standard laboratory equipment such as mixers, pipettes, etc., this setup is sufficient to produce NEMs as described in our publications. However, to monitor the process and assess the quality of both intermediate and final products, a variety of analytical methods is required, including Dynamic Light Scattering (DLS), Nanoparticle Tracking Analysis (NTA), Plate Reader, cell culture equipment, and a laser diffractometer. This setup makes it quite costly to establish the entire process."/> 
+     <QaBox q="How complicated is the protocol for producing spray-dried LNPs? Can you describe the protocol?" a="The spray-drying process for LNPs using our NEM technology involves several technical steps. Initially, a mixture of an ethanol phase containing lipids and another phase with RNA is prepared. This mixture is then subjected to an Impingement Jet Mixer to formulate RNA-loaded LNPs. Subsequently the LNPs are mixed with a stabilizing excipient. This mixture is fed into a spray-drier where the solution is aerosolized into a heated drying tower. The liquid evaporates, leaving behind NEMs as small spherical particles, which can then be loaded into capsules for use with a dry powder inhaler (DPI)."/> 
+     <QaBox q="How do LNPs appear after the drying process?" a="In the dry state, LNPs cannot be visualized, as they are embedded within the NEM structure. However, we assess the LNP structure and morphology after redispersion of the NEMs, a process that also occurs upon inhalation and contact with lung fluids. While we observe a slight increase in LNP size after redispersion, the particles remain intact, retaining their spherical shape and RNA loading, as demonstrated by various techniques, including cryo-TEM imaging."/> 
+     <QaBox q="How do you ensure that the RNA cargo remains stable despite the heat during the drying process?" a="We mitigate the impact of heat by optimizing the drying conditions such as temperature, feed rate and time of heat exposure. Different components in the excipient mix, or the LNPs, such as the PEGylated lipid can also influence stability during and post drying. Without PEG or with too little PEG-lipid, LNPs may agglomerate and become non-functional, but too much PEG can render them inert and thus limit cellular uptake."/> 
+     <QaBox q="At what temperature is the LNP dried?" a="The inlet temperature during the spraydrying process is approximately 120 degrees Celsius, as noted in our publications."/> 
+     <QaBox q="Does each LNP formulation require individual testing?" a="Yes, each LNP with a unique composition needs to be tested individually to ensure optimal stability and performance."/> 
+     <QaBox q="How can we test the efficiency of LNPs after the drying process?" a="The efficiency can be tested through transfection studies. Additionally, the particles can be broken down to analyze the mRNA structure, although this is a more complex and time-consuming process."/> 
+     <QaBox q="Can you elaborate on how you use AI to customize LNPs? What exactly does the AI do, and how reliable is it?" a="Our AI is used for screening, optimization, and the design of experiments, significantly reducing wet lab work. It also plays a role in developing new lipids, a process more closely associated with the work of Olivia Merkel."/> 
+     <QaBox q="In your opinion, which LNPs are best suited for the drying process (SLNs, NLCs, etc.)?" a="It depends on the specific application and composition of the LNPs."/> 
+     <QaBox q="What are the estimated costs for the entire drying process?" a="The primary expenses are in raw materials and for the formulationspecifically  RNA and lipids, which are relatively expensive. Other consumables, such as process fluids, are comparatively inexpensive. The manufacturing process itself is cost-effective; however, overall expenses will vary based on production volume and equipment utilization rates."/> 
+     <QaBox q="Would you be willing to support us in our project? Would you dry our LNPs?" a="The spray dryer requires 5 mL of a solution with 5% solid content. Among these solids, the lipid content can be adjusted between approximately 0.2% and 15%, while the RNA content can range from 0.02% to 1.5%. The remaining percentage is composed of excipients. We’ve published recovery rates of >70%. You can send us the mRNA and LNP components to encapsulate and dry."/>
+     </>, */
+    summary: "The conversation focused on spray-drying LNPs, emphasizing the shelf life of RNA-based formulations, optimal storage conditions, and technical requirements for the drying process. Corden Pharma shared insights on the protocol, highlighting the need for testing each LNP formulation individually for stability. AI technology is used to optimize LNP formulations, and potential collaborations were discussed, including support for drying LNPs.",
+    months: "august"
+  },
+  {
+    vorname: "Max",
+    nachnname: "Beckmann",
+    job: "Patient and Student",
+    affiliation: "University Bielefeld",
+    pictureurl: pics["max"],
+    tag: "Patient",
+    heading: "Consultation on University Hygiene Risks and Improvement for Hygiene Concept",
+    interviewtabid: "maxhygiene",
+    language: "de",
+    quoteNachname: "Beckmann, Patient",
+    quoteVorname: "Max",
+    quote: "It\u2019s important to keep my hygiene practices practical and effective, focusing on regular cleaning rather than excessive measures that may create more risks for invection.",
+    summary: [/* @__PURE__ */ jsx69("p", { children: "In the feedback on the hygiene concept, the author states that the number of toilets required can be reduced as only a marginal number of people will be present at the university. He praised the first four points of the concept as very good and well thought out. With regard to points five and six, he clarifies that no special hygiene items are required for the stay as long as the toilets are cleaned regularly and there is an additional service for the washbasins. He explains that the sources of danger can be significantly reduced by regular cleaning and the presence of toilet lids, which eliminates the need for special hygiene measures. He also argues that contactless facilities are not necessary as people wash or sanitise their hands after using the toilet anyway. Finally, he asks whether sources are needed for the hygiene concept and offers his help to create a revised version, which he would then like to review again before it is forwarded to Mr Johannfunke." })],
+    months: "August"
+  },
+  {
+    title: "Dr.",
+    vorname: "Katharina",
+    nachnname: "Kolonko",
+    job: "Expert for nanocapsules",
+    affiliation: "Biologist",
+    pictureurl: pics["kolonko"],
+    tag: "Academia",
+    heading: "Optimizing our mRNA Delivery Systems",
+    interviewtabid: "kolonkofirst",
+    language: "de",
+    quoteVorname: " Dr. Katharina",
+    quoteNachname: "Kolonko, LNP Specialist with focus on chitosan and CF therapies ",
+    quote: "Wow, you\u2019re already further along than I was! That\u2019s a really good approach, especially since dry powder formulations can help with stability.",
+    aimofcontact: [/* @__PURE__ */ jsx69("p", { children: "Our goal in reaching out to Dr. Katharina Kolonko, who earned her PhD working on chitosan-based nanoparticles for delivering nucleic acids to human respiratory cells in the context of  Cystic Fibrosis, was to seek her advice on the design, stability, and application of nanoparticles. We wanted to learn from her experience with chitosan-capsaicin nanoparticles, especially the challenges she encountered, and apply her insights to improve our own project. Specifically, we aimed to better understand nanoparticle stability, transfection methods, and how to effectively design our experiments." })],
+    insights: [/* @__PURE__ */ jsx69("p", { children: "Dr. Kolonko provided us with valuable insights into working with nanoparticles, particularly emphasizing the advantages of nanocapsules. She highlighted that nanocapsules are more stable than nano-complexes, which is crucial for experiments involving complex environments and high shear forces. Additionally, her use of capsaicin wasn\u2019t aimed at improving transfection efficiency but was part of a broader strategy targeting specific channels. She also shared practical methods for measuring particle stability and cytotoxicity, giving us clear guidance on tools and techniques that we can apply to our project. Furthermore, Dr. Kolonko discussed the use of chitosan as a component in nanoparticle formulations. Chitosan, with its positive charge, can interact with mRNA, potentially enhancing the stability of the cargo. As an outlook, we plan to explore modifications using chitosan to improve the stability and performance of our mRNA delivery system. This approach may provide a more robust solution for optimizing nanoparticle formulations in future experiments. " })],
+    implementation: [
+      /* @__PURE__ */ jsx69("p", { children: "We directly applied Katharina\u2019s insights to improve our nanoparticle design and testing methods. Her recommendations on using nano-capsules and OptiMEM as the transfection medium helped refine our experimental approach. She emphasized using a medium with fewer additives, like OptiMEM, and suggested removing antibiotics 24 hours before transfection to avoid interference, ensuring more controlled and effective conditions. We also explored new stability testing ideas, including nasal spray solutions and dry powder formulations. We incorporated her insights as follows: " }),
+      /* @__PURE__ */ jsxs47("ul", { children: [
+        /* @__PURE__ */ jsxs47("li", { children: [
+          /* @__PURE__ */ jsx69("b", { children: "Nano-Capsules Focus:" }),
+          " Based on Katharina\u2019s advice, we prioritized nano-capsules for their enhanced stability over nano-complexes."
+        ] }),
+        /* @__PURE__ */ jsxs47("li", { children: [
+          /* @__PURE__ */ jsx69("b", { children: "Chitosan for Stability:" }),
+          " We're exploring chitosan to improve mRNA delivery system stability due to its positive charge, which binds mRNA to the nanoparticle surface."
+        ] }),
+        /* @__PURE__ */ jsxs47("li", { children: [
+          /* @__PURE__ */ jsx69("b", { children: "OptiMEM for Transfection:" }),
+          " OptiMEM is now our chosen transfection medium, with the suggestion to remove antibiotics 24 hours prior."
+        ] }),
+        /* @__PURE__ */ jsxs47("li", { children: [
+          /* @__PURE__ */ jsx69("b", { children: "MTT Test for Cytotoxicity:" }),
+          " We adopted the MTT test for cytotoxicity due to its simplicity and reliability."
+        ] }),
+        /* @__PURE__ */ jsxs47("li", { children: [
+          /* @__PURE__ */ jsx69("b", { children: "Nasal Spray and Dry Powder Testing:" }),
+          " We are considering testing nanoparticle stability using nasal spray solutions and exploring dry powder formulations."
+        ] }),
+        /* @__PURE__ */ jsxs47("li", { children: [
+          /* @__PURE__ */ jsx69("b", { children: "Capsaicin Exclusion:" }),
+          " As capsaicin did not significantly impact transfection efficiency in Katharina\u2019s research, we decided not to include it in our project."
+        ] })
+      ] })
+    ],
+    interview: /* @__PURE__ */ jsxs47(Fragment28, { children: [
+      /* @__PURE__ */ jsx69(QaBox, { q: "How did you approach the design of Lipid Nanoparticles (LNPs)? What were the first steps you took at that time? Were you already familiar with LNPs, or was that a completely new experience for you?", a: "I started working with nanoparticles during my bachelor\u2019s thesis. I continued with nanoparticles into my master\u2019s thesis, working on a project related to  Cystic Fibrosis. Initially, I worked with nano-complexes, but later switched to nano-capsules due to their stability, especially in cell culture media." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Since you\u2019re focused on stability and applying high shear forces, could you explain why nano-capsules are more stable than complexes in this context?", a: "Nano-capsules are generally more stable in cell culture media compared to nano-complexes, which often react with additives and proteins. However, I didn\u2019t explore shear forces much further. My main goal was to stabilize the particles in cell culture media for testing on cells." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "What kind of cell culture medium did you use for these experiments?", a: "For transfection, we used Optimem as the medium, after removing antibiotics from the culture medium 24 hours prior to transfection." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "How long did it take you to get to the point where you used nano-capsules?", a: "I only started working with nano-capsules towards the end of my PhD. I spent much of my time with nano-complexes, but when I visited a lab in Leeds, I shifted to nano-capsules. This transition happened quite late, just months before I finished my thesis." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "You mentioned capsaicin in your recent paper. Does it significantly affect transfection efficiency, and is it worth including in our experiments?", a: "No, capsaicin didn\u2019t affect transfection efficiency in our experiments. It was included to inhibit the Ina-channel as part of a dual strategy targeting both CFTR and Ina-channels, but it might not be necessary for your project." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Were there any critical components in the formulation of your nanoparticles that you couldn\u2019t do without?", a: "No, the main comparison was between nano-complexes and nano-capsules. Nano-complexes were inconsistent in size and stability, while nano-capsules were stable and smaller, which I believed would work better in later experiments." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Is there a way to check if the mRNA sticks to the outside of the nanoparticle or ends up inside?", a: "I believe the mRNA sticks to the outside. The process involved forming nano-capsules using lecithin and oil, and after the ethanol was evaporated, mRNA was added last. The mRNA likely adhered to the positively charged chitosan on the outside of the capsule." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Do you remember the ratio of mRNA to nano-capsule?", a: "I don\u2019t remember the exact ratio offhand, but it\u2019s documented in my dissertation. I optimized the amount of mRNA that needed to enter the cell for effective results, but didn\u2019t do extensive testing with nano-capsules." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Was determining the optimal amount of nanoparticles trial and error?", a: "Yes, definitely. It involved a lot of optimization." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "You used the MTT test for cytotoxicity. Would you recommend it for us, or are there better alternatives?", a: "Yes, the MTT test is simple and reliable. You just need to pipette accurately. We used it frequently, and it worked well." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "How did you assess the stability of the nano-capsules? Did you use microscopy or another method?", a: "We used a device called a Zetasizer, which measures size, zeta potential, and polydispersity index (PDI). We used it to assess stability in cell culture medium over time, from half an hour to 24 hours." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Do you have any advice for our project or anything we might have missed?", a: "If you\u2019re planning to use a diffuser for nasal administration, you might want to test the stability of the nanoparticles in a saline solution or standard nasal spray solution. It could be useful to see how they behave in such a medium. Otherwise, it seems like you\u2019re well ahead of where I was!" }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Thank you so much for your time and insights!", a: "You\u2019re welcome! I\u2019m glad I could help." })
+    ] }),
+    summary: "We identified several crucial insights to guide our project development. Nano-capsules were found to be more stable than nano-complexes, making them our preferred formulation choice. We will utilize chitosan to enhance mRNA stability due to its positive charge, while capsaicin was deemed irrelevant for our purposes. For transfection, we will use OptiMEM as the medium, removing antibiotics 24 hours prior to the procedure. We will assess stability with a Zetasizer and evaluate cytotoxicity using the MTT test. Additionally, we are exploring nasal spray and dry powder formulations to improve nanoparticle delivery. These insights will significantly shape our approach to optimizing mRNA delivery systems.",
+    months: "August"
+  },
+  {
+    title: "Dr.",
+    vorname: "Oliver",
+    nachnname: "Dr\xE4ger",
+    job: "Bielefeld University",
+    affiliation: "Research Group Cellular Neurophysiology",
+    pictureurl: pics["draeger"],
+    tag: "Academia",
+    heading: "New approaches in electrophysiology and their application in our project  ",
+    interviewtabid: "patchclamp",
+    language: "de",
+    quote: "",
+    aimofcontact: [/* @__PURE__ */ jsx69("p", {})],
+    insights: [/* @__PURE__ */ jsx69("p", {})],
+    implementation: [/* @__PURE__ */ jsx69("p", {})],
+    summary: "",
+    months: "August"
+  },
+  {
+    vorname: "GxP course",
+    nachnname: "",
+    pictureurl: pics["gxpcourse"],
+    tag: "Industry",
+    heading: "Successful participation of a team member in a 5 day GxP course",
+    interviewtabid: "gxpcourse",
+    quote: "The GXP course was extremely useful as it provided us with important knowledge that supports our entire team in complying with quality standards. This knowledge will help us to organise our processes efficiently and in accordance with regulations in the future.",
+    quoteVorname: "Kaya",
+    quoteNachname: "Lange, Teammember",
+    type: "meta",
+    text: [
+      /* @__PURE__ */ jsx69("p", { children: "I, Kaya, Team Member of iGEM Bielefeld 2024, recently participated in an intensive one-week GXP (Good Practice) training course, which was pivotal experience for both me and our project. The course covered essential regulatory frameworks, including" }),
+      /* @__PURE__ */ jsxs47("ul", { children: [
+        /* @__PURE__ */ jsx69("li", { children: "Good Laboratory Practice (GLP)" }),
+        /* @__PURE__ */ jsx69("li", { children: "Good Clinical Practice (GCP)" }),
+        /* @__PURE__ */ jsx69("li", { children: "Good Manufacturing Practice (GMP)" })
+      ] }),
+      /* @__PURE__ */ jsxs47("p", { children: [
+        "which are all designed to ensure quality, safety, and compliance across every phase of scientific research and development. As the head of Integrated Human Practices, I found this training particularly valuable. It provided me with a deeper understanding of the rigorous standards that need to be maintained in research, especially concerning ethics, data integrity, and patient safety. I learned how to properly document research processes, ensure the reproducibility of results, and assess and mitigate risks, all while keeping the ethical considerations of our project at the forefront. I have acquired the ability to create standard operating procedures (SOPs) that guarantee the transparent and traceable documentation of each stage of the research process. This not only facilitates internal organisation but is also crucial for subsequent approvals and audits by regulatory authorities. It is of paramount importance to ensure the reproducibility of our experiments by maintaining accurate protocols and meticulously documenting all variables. This is of particular importance should the intention be to pursue clinical research at a later stage, as the reproducibility of experiments is a crucial factor in the validity of the results. I acquired knowledge of techniques for risk assessment, including Failure Mode and Effects Analysis (FMEA). This process enables the identification of potential risks in a project at an early stage, thus facilitating the development of strategies to minimise them. This approach allows us to identify and address potential sources of error before they lead to significant issues. This knowledge is crucial as we think about the future of our project, particularly if we aim to move our gene therapy approach for  Cystic Fibrosis closer to clinical trials and real-world applications. My participation in the GXP training has equipped me with the necessary tools to potentially guide our team through the complex regulatory landscape, ensuring our work remains aligned with industry standards and ready for the next steps in development. One of the key speakers during the GXP course was  ",
+        /* @__PURE__ */ jsx69(HPLinktoOtherHPTab, { tab: "gxpexpert", text: "Dr. Marcus Berger" }),
+        ", whose expertise was invaluable to me and the entire team. After the course, I had the opportunity to ask Dr. Berger some questions, further deepening my understanding of the practical applications of GXP in research. The connection with Dr. Berger has been highly beneficial, as his insights helped shape key aspects of our project\u2019s development and compliance with industry standards. His guidance will continue to be a valuable resource for our team moving forward. Through this training, I feel better positioned to contribute to the team\u2019s efforts, ensuring our project adheres to global safety and ethical guidelines. This experience has strengthened our approach and set a solid foundation for future progress, ensuring that our research, public engagement, and potential clinical applications continue to meet the highest regulatory standards. "
+      ] })
+    ],
+    summary: "Kaya, a member of the iGEM Bielefeld 2024 team, completed an intensive one-week GXP (Good Practice) training, which covered Good Laboratory Practice (GLP), Good Clinical Practice (GCP), and Good Manufacturing Practice (GMP). The training provided valuable insights into maintaining high standards of quality, safety, and ethics throughout the research process. Kaya learned crucial skills, such as documenting research processes for reproducibility, creating standard operating procedures (SOPs), and conducting risk assessments using techniques like Failure Mode and Effects Analysis (FMEA). This knowledge is essential for advancing their  Cystic Fibrosis gene therapy project toward clinical trials and ensuring compliance with regulatory standards. Dr. Marcus Berger, a key speaker in the course, provided additional guidance, offering valuable insights that will continue to benefit the team.",
+    months: "august",
+    pictureurl_implementation: "https://static.igem.wiki/teams/5247/photos/for-wiki-texts/gxp/gxp-course-kaya.webp",
+    pictureurl_interview: "https://static.igem.wiki/teams/5247/photos/for-wiki-texts/gxp/gxp-course-group.webp"
+  },
+  {
+    vorname: "Connect and Share",
+    nachnname: "",
+    pictureurl: pics["logo"],
+    job: "Team iGEM",
+    affiliation: "Bielfeld CeBiTec 2024",
+    tag: "Milestone",
+    heading: "Building Connections: The Power of Collaboration and Communication",
+    interviewtabid: "connect",
+    quote: "Sharing our project updates and ideas with a diverse audience has been enlightening. The feedback we receive drives our innovation and reinforces the value of collaboration in tackling the challenges of  Cystic Fibrosis.",
+    quoteNachname: "Susat, Teammember",
+    quoteVorname: "Kathleen",
+    type: "meta",
+    summary: [
+      /* @__PURE__ */ jsx69("p", { children: "During our project journey, we made a concerted effort to connect and share insights with a wide array of individuals, leveraging social media and university networks. Engaging with peers, faculty, and industry professionals not only enriched our understanding but also fostered a collaborative spirit. Through platforms like LinkedIn and university forums, we initiated discussions that brought fresh perspectives on gene therapy and  Cystic Fibrosis. Our social media outreach allowed us to share our findings and progress with a broader audience, promoting awareness and sparking interest in our work. We actively participated in online discussions and webinars, exchanging ideas and feedback with experts from various fields. This exchange of knowledge has proven invaluable, guiding us in refining our methodologies and enhancing our project\u2019s impact. We also engaged with different community organizations and advocacy groups, which helped us grasp the societal implications of our research. Through these connections, we garnered support for our initiatives and increased visibility for our cause. This collaborative approach not only strengthened our project but also highlighted the importance of community involvement in scientific research." }),
+      /* @__PURE__ */ jsxs47("ul", { children: [
+        /* @__PURE__ */ jsxs47("li", { children: [
+          /* @__PURE__ */ jsx69("b", { children: "Community Engagement:" }),
+          " Connected with community organizations and advocacy groups to understand the societal implications of our research and garner support."
+        ] }),
+        /* @__PURE__ */ jsxs47("li", { children: [
+          /* @__PURE__ */ jsx69("b", { children: "Social Media Outreach:" }),
+          " Utilized platforms like LinkedIn to share progress and findings, promoting awareness of  Cystic Fibrosis and gene therapy."
+        ] }),
+        /* @__PURE__ */ jsxs47("li", { children: [
+          /* @__PURE__ */ jsx69("b", { children: "Collaborative Discussions:" }),
+          " Engaged in discussions with peers, faculty, and industry professionals, exchanging insights and refining methodologies."
+        ] }),
+        /* @__PURE__ */ jsxs47("li", { children: [
+          /* @__PURE__ */ jsx69("b", { children: "Broader Perspectives:" }),
+          " Leveraged diverse interactions to gain new perspectives that enhanced the project's impact and direction."
+        ] })
+      ] })
+    ],
+    months: "September"
+  },
+  {
+    title: "",
+    vorname: "Michael",
+    nachnname: "Johannfunke",
+    job: "Representative body for severely disabled persons",
+    affiliation: "University Bielefeld",
+    pictureurl: pics["johannfunke"],
+    tag: "Academia",
+    heading: "Hygiene concept for students with disabilities and immunocompromised employees",
+    interviewtabid: "johannfunke",
+    quote: "The implementation of the hygiene concept is proving more difficult than expected due to the bureaucracy at the university. Nevertheless, the interview gave us a good insight into this labyrinth of regulations and we got started the prozess of implementation.",
+    quoteVorname: "Vera",
+    quoteNachname: "K\xF6hler, Teammember",
+    aimofcontact: [/* @__PURE__ */ jsxs47("p", { children: [
+      "We contacted the university because of the urgent need to address the issue of hygiene for students and staff, particularly those with immunocomprised students and staff. There was a need to develop an effective hygiene concept to ensure the health and safety of these people. We developed this concept in collaboration with ",
+      /* @__PURE__ */ jsx69(HPLinktoOtherHPTab, { tab: "maxfirst", text: "Max" }),
+      ", our CF friend. "
+    ] })],
+    insights: [/* @__PURE__ */ jsx69("p", { children: "We learnt that our hygiene concept is very well-developed. But although a well-developed hygiene concept is already existing, strategic development and a step-by-step approach are needed. In particular, the step-by-step implementation was emphasized, like starting with equipping the toilets. Bureaucratic hurdles, such as the need to apply to the rectorate, were identified as a major challenge. In addition, it became clear that there is a great need for sanitary facilities and facilities for the disabled, especially due to the needs of students and staff with health problems. Interaction and networking with other universities was also considered valuable. " })],
+    implementation: [/* @__PURE__ */ jsx69("p", { children: "The next phase of developing a new hygiene concept is to maintain contact with Mr. Johannfunke in order to continue to advance the hygiene concept in collaboration. The strategic approach entails the incremental implementation of measures, exemplified by the establishment of the inaugural toilet facility within the main building. It is of the utmost importance to ensure the uninterrupted implementation of the hygiene concept. In order to achieve this, it is essential to draw upon the existing plans and measures that have already been implemented in new buildings.  We are working on advancing the plans at a higher level and are in regular dialogue with the Central contact point Barrier-free in order to overcome bureaucratic hurdles and actively promote the topic. Furthermore, it is necessary to intensify lobbying work in order to gain greater support for this issue at both the university and political levels. " })],
+    language: "de",
+    interview: /* @__PURE__ */ jsxs47(Fragment28, { children: [
+      /* @__PURE__ */ jsx69(QaBox, { q: "What do you think of our hygiene concept and our plan?", a: "This is a very acute problem. It particularly affects students with disabilities and immune-compromised staff, such as those with cancer or  Cystic Fibrosis, who are forced to work from home. The problem is: Employees can work from home, but students cannot. There is a great need for hygiene measures, as contact must be avoided to minimise the risk of infection." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "What are the challenges in implementing the hygiene concept?", a: "There is a lack of strategic development, although your hygiene concept is well developed. It is necessary to proceed in small steps, e.g. starting with a toilet in the main building. However, bureaucracy is a major obstacle. To be implemented, an application has to be submitted to the rectorate, and these processes are often lengthy and complicated." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "What is the current situation at our university?", a: "While some progress has been made with the installation of additional toilets and disabled-friendly toilets in new buildings, there is as yet no overarching strategy in place to guide future developments. Furthermore, the lack of clarity regarding the mission statement and objectives leaves room for ambiguity. The duty of care that employers have towards employees is established, yet the situation is regulated differently with regards to students. The possibility of receiving compensation for disadvantages is open, but is frequently seen as inadequate." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "What are the next steps in implementing the hygiene concept?", a: "It is essential that the concept be implemented in small, strategic steps. At the same time, it is vital that the rectorate and other decision-makers be consulted on a regular basis to ensure that this matter remains at the forefront of discussions. Furthermore, it is of great importance to engage in political lobbying to secure additional support for this issue." })
+    ] }),
+    summary: "We got in touch because there was an acute hygiene problem for particularly vulnerable groups like immunocomprised persons at the university. We learnt from the exchange that despite a well-developed hygiene policy, strategic steps are still needed, especially to overcome bureaucratic hurdles. We have integrated these lessons into our project by focusing on continuous collaboration with the Central contact point Barrier-free and other decision-makers.",
+    months: "September"
+  },
+  {
+    title: "Dr.",
+    vorname: "Sriram",
+    nachnname: "Vaidyanathan ",
+    job: "Principle investigator at Nationwide Children\u2019s Hospital and assistant professor Pediatric\u2019s at the Ohio State University College of Medicine ",
+    affiliation: "Nationwide Children\u2019s Hospital",
+    pictureurl: pics["sriram"],
+    tag: "Academia",
+    heading: "F508del mutation confirmed as the most common CFTR mutation worldwide, including Asia",
+    interviewtabid: "sriram",
+    language: "en",
+    quoteNachname: "Vaidyanathan, Innovative leader in pediatric research",
+    quoteVorname: "Dr. Sriram",
+    quote: "I think you're thinking about it the right way.[...] I would have talked to all of the exact people that you have already spoken with.",
+    aimofcontact: [/* @__PURE__ */ jsx69("p", { children: "The objective of this contact was to gather further information about  Cystic Fibrosis (CF) in Asia, with a particular focus on understanding potential data biases, identifying common mutations, exploring the available medications, and assessing the diagnostic practices in the region. " })],
+    insights: [/* @__PURE__ */ jsx69("p", { children: "The talk with Sriram revealed that, although  Cystic Fibrosis (CF) is relatively uncommon in Asia compared to other disease like sickle cell disease, it nevertheless exhibits considerable genetic diversity. The identification of different mutations in the CFTR gene across the region has revealed that the F508del mutation is the most common, a finding that aligns with global patterns. However, in Asian populations, other rare mutations are also prevalent, which presents unique challenges in diagnosis and treatment. Additionally, it was found that environmental factors, such as air pollution, serve to exacerbate the symptoms of CF, particularly in densely populated regions, thereby further complicating the management of the disease. This emphasises the necessity for further research on CF that is specifically tailored to the needs of different regions, including improvements in diagnostic techniques and the development of treatments that are more closely aligned with the characteristics of the populations in question. " })],
+    implementation: [/* @__PURE__ */ jsx69("p", { children: "The data were incorporated by confirming that the F508del mutation is not only the most common in Europe but also globally, including in Asia, highlighting a broader perspective and contributing to a significant horizon expansion in understanding the mutation's worldwide prevalence. This finding lends support to the idea that existing therapies targeting the F508del mutation will be effective for many patients worldwide, thereby providing a solid foundation for treatment. As a starting point, this is promising, but future efforts will focus on adapting therapies to address other, rarer mutations found in specific populations." })],
+    summary: "The contact provided valuable insights into  Cystic Fibrosis (CF) in Asia and confirmed that the F508del mutation is the most common, as it is globally. However, the genetic diversity observed in Asia, together with the exacerbation of symptoms by environmental factors such as air pollution, highlights the need for more region-specific research. Future efforts will focus on refining treatments for rarer mutations and improving diagnostic accuracy in Asian populations.",
+    months: "September",
+    interview: /* @__PURE__ */ jsxs47(Fragment28, { children: [
+      /* @__PURE__ */ jsx69(QaBox, { q: "Should we explain our project a little bit in the beginning?", a: "That would be great." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Okay. As I wrote to you in the email, we are part of the Bielefeld-CeBiTec item team in Germany this year, and we have a project called Precyse, where we want to develop a platform for next-generation prime editing. With that, we aim to tackle CF mutations, starting with the F508del mutation. The complex should be adaptable for different mutations with minor changes. Essentially, we want to operate like Cas-based projects using prime editing tools but may transition to using a fanzor nickase in the future. Currently, we are working on a delivery system utilizing lipid nanoparticles to transport our complex into the lungs. These nanoparticles will be loaded with mRNA and designed for inhalation, similar to how asthma medications are delivered. Our goal is to advance personalized medicine and improve the standard of living for those affected by the disease, especially since a friend of one of our team members has  Cystic Fibrosis and shares insights on the challenges faced by those with the condition.", a: "That's a very nice summary. I have a couple of clarifying questions. Are you undergraduates?" }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "No, we are overgraduates at the University of Bielefeld.", a: "Oh, great! So, how are you optimizing prime editing, and who is helping you with this process?" }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "We tried to reach out to Dr. Liu, but he hasn't responded yet.", a: "You should also contact Marianne Carlon in Leuven, Belgium. They didn't work on Delta F508, but Mattijs is a graduate student there and could be helpful." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "We\u2019ve already been in touch with Mattijs; he\u2019s been very nice.", a: "Perfect! You're reaching out to the right people. Are you aware of the Liu lab's Nature Biomedical Engineering paper that optimizes prime editing?" }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Yes, we are aware of it.", a: "Great! How can I help you further?" }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "We have some questions about  Cystic Fibrosis (CF) in Asia, specifically about its perceived rarity and its impact on diagnosis and research efforts.", a: "I can share some insights. While CF is often considered rare in Asia, it's essential to recognize that it affects various populations. In my lab, we analyze CF-causing mutations across different populations using data from Nomad, which focuses on genetic ancestry rather than self-identified race. CF is most prevalent in individuals of European origin, but it remains common across many populations worldwide, particularly in South Asia and other regions, although East Asia has lower prevalence rates." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "That\u2019s helpful. Can you explain how the perceived rarity of CF impacts diagnosis and research in Asia?", a: "The perception of CF as a 'white people disease' leads to underdiagnosis and fewer research efforts in Asian populations. For instance, in India, physicians are more familiar with conditions like sickle cell disease and thalassemia, leading to limited awareness of CF. Early diagnosis is challenging due to the lack of screening programs for CF, and currently, many regions are only beginning to implement sweat chloride testing." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Thank you! What mutations are more common in Asia?", a: "Delta F508 is still the most frequent variant across different populations, but its frequency decreases in non-European groups. While there are several other common variants, they do not respond to modulator therapeutics, which complicates treatment options. Focusing on Delta F508 is sensible, but you might face challenges in finding individuals with other variants due to the limited awareness and screening for CF in those populations." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Okay. But you would say that the other mutations are a bit under-researched, right?", a: "They are completely under-researched, right? Like I have not seen anybody work on L218X. I didn't even know L218X existed until I started looking into that group. And it seems like L218X, I've not seen it in any other population that frequently. So a lot of these variants seem to be unique. I don't know if they're completely unique to South Asians or if you go to Iran or something, whether you're going to start finding these people or whether if you go to Southeast Asia, then you're going to start finding some of these people, right? So we don't know that, but I think it will be really hard for you to find cells with these variants." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "What do you believe, what steps should be done in the scientific community to ensure better representation of Asian populations, or in general, not only Western populations, in the genetic studies for  Cystic Fibrosis?", a: "Ah, it's a very good question; it's also a question that doesn't have a very straightforward answer, right? In the sense that one, you know, you have to raise awareness and ensure that people are getting diagnosed, that's step number one, right. A lot of the numbers they showed you are based on prediction; they're not based on a registry in any country with some of these populations, right. India doesn't have a registry, China doesn't have a registry. There are efforts to make a registry, but you know it's a little hard to get started when you know if you go and argue that there are 6,000 children with CF that are being born in a year in India, and then the response that I've received before is well, there are about 60,000 kids dying of diarrhea, and you know so the priority from public health is often different. It's starting to change. So one focus would be diagnosis and raising awareness, and if you come across groups that are trying to improve their ability to diagnose then you try to help them, right. What's your other question in terms of treatment and research? I think being aware of it if you do end up finding samples that have some of these unique variants. Right then, trying to form a strategy around it is not bad; I've seen people identify variants of CF that are unique to different populations. I think even Marianne Carlon's group picked up variants that are unique to Belgium and then tried prime editing on that right, so those sort of strategies help quite a bit, right? And this is partially the reason you know I continue to focus on mutation-agnostic strategies; I've not really branched out into the Prime Editing world or the Base Editing world primarily because this seems to be a pretty challenging issue, but that said, you want as many shots at goal as possible. So, you know, if you're able to use prime editing to fix Delta 508, that still helps the most number of people with CF. And then maybe, you know, you could use that platform that's really well validated at that point, then go start targeting individual variants. The other idea with prime editing is that there's hope that you can probably at least try to replace one exon at a time. And that sort of makes things a little bit more manageable, right? So if you, you know, it's a little bit more, like if you have to target every single variant, then you're thinking about hundreds of different medical products. But if you're thinking of replacing every exon, that's 27, that's a countable number. And I would argue that you don't even have to do all 27. You start with the hotspots, right? You start with exon 11, you start with exon 12. But then as part of the conversation, I think we should just be thinking about exons that might be hotspots for variants in other populations and at least, you know, keeping them somewhere in the packing order so that as you go through the most frequent variants, right? And you're starting to develop strategies for the most frequent variants. Those are on the list so that we eventually get to them." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Yeah. Okay. And what do you think? Are there any healthcare challenges managing  Cystic Fibrosis in Asian countries?", a: "Oh, absolutely. Right. I think, you know, if you're in a high-income country like Japan, I think, you know, the biggest challenge is awareness and getting diagnosed. If you're in low- and middle-income countries, right, then the challenge becomes access to drugs. So modulators are not available in most of Asia, or at least in the lower and middle-income countries in Asia, that's not available, like, it's not available for sale. Primarily, partly because they think that those people, like people at CF, don't exist in enough numbers in those countries. And partly because then it creates problems in terms of monetary, like factors, right. In terms of how much they charge for the modulators. Right. So those don't exist. I don't know, like they have access to pancreatic enzymes and things like that, but, you know, regular access to regular care is still a challenge. The base of physicians that are family with treating CF is only growing in some of those places at least from my personal experience but it\u2019s not by where we are. The children there are still mostly passing away when they are in their teenage years or early twenties. The sort of life span and life expectancy is no where close to what you would see in high-income countries. So, I think that is the biggest challenge, access to resources both, publicly and also from a private point." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Okay. And do you think that the environmental or like pollution is doing, like, I don't know how to say it correctly. So that there are like respiratory challenges because, yeah, right.", a: "Absolutely! Right. It's, you know, your exposure to pathogens is higher. Your exposure to pollution is significantly higher in a lot of these countries, right? Even China, which is, you know, much better off than a country like India still has a lot of pollution, right? And so, or I've never been to China, but at least that's what I read, right? But India, I grew up there and I can firsthand tell you that there's a lot of pollution there, right? And that I'm sure it affects it because it's been documented to affect people, just people without CF, right? On an average, it's supposed to like, the reports that I've seen are like, it takes a few years off of life expectancy for even people that have not been diagnosed with anything else, right? So I'm sure if there's a person with CF, then that's going to affect them even more negatively in places like India. And then I think that the exposure to pathogens might be slight, it might be higher and the lower down in the economic scale you go, the more, the exposure to pathogens are going to have, right? I think the third factor would also might be nutrition, right? Like, so if you have CF, you, you know, here, one way they were managing it was through high fat calorie rich diet and access to those sort of high fat calorie rich diets may not be that prevalent in some of these other places. And so that might become a factor." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Okay. And then one last question. So it's more a bit about you and your research. So what drew your attention to the issue of CF in Asia? So why did you start researching this topic?", a: "Oh, so that was a very okay. So the way it happened was I was at a conference and I was a postdoc at Stanford previously, as you know. So I was at a conference and I was, we were just, I think had a sort of a, you know, a dinner for everybody from our institution. And I was chatting with the nurse in the table and sitting in the table and so the San Francisco area has a lot of people from Asia. And so the nurse particularly said that they had a lot of children with CF who happened to originate in India, which really surprised me because that's not a disease that I'd heard growing up as being some, a common genetic disease there. Right. And so that kind of drew my attention. And then in subsequent conversations, when I spoke with physicians who are practicing in India, nobody said that they hadn't seen people with CF, right? Whenever I had the conversation, people would be like, oh yeah, I've seen a patient with CF or I know of somebody that has a child with CF, right? Which was surprising. And then when I went to India, I went to a hospital in my hometown and I was talking to the pulmonologist there. And he said he had 30 or 40 patients with CF in that, just that hospital. And that's, you know, it's not even, you know, it's probably one of the bigger cities in India, but I wouldn't even know if it's in the top 10 biggest cities in India. And this is not even the biggest center in that city necessarily. Right. So I was just really surprised. And he said he didn't have to really put in any effort to go seek out any people with CF. This was just in the people that walked into that hospital that got diagnosed with CF, right? So that kind of solidified the perception that perhaps it was underdiagnosed. And then the reason it happened was because the pandemic sort of forced most of us out of the lab. And so this ended up being something you can actually work on without going to lab." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Yeah, sounds really interesting the way you got there. at the beginning, you said you could tell us something, what came to you in mind when you heard about Project First, and you already prepared some slides. So I just want to ask if you maybe have something more to tell us that you haven't thought about yet, because the interview until now is highly interesting and I think we got a lot of new information until now. So maybe you have something. Maybe you have more interesting information for us.", a: "I think you guys covered a lot of what I had in mind, right? In terms of, I think if I were to start with prime editing and Delta 508, this is exactly the argument I would have made. I would have talked to all of the exact people that you have already spoken with, right? So I think that I don't have too much to add there. The only thing you could do is if you are looking at variants, right? Maybe I would try to come up with a plan for what variants you might go after, after Delta 508, right? And that could become part of your future research or something like that. Or if you can, I guess the one question I had for you is, so the correction of Delta 508 is sort of published, right? People have reported using lipid nanoparticles, at least to deliver base editing reagents, right? So how are you thinking about, like when you pitch the innovation in your project, how are you thinking about pitching your innovation? " }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Okay. So I think, our idea was that we want to do like the, the prime editor is more efficient. Our idea is to use a smaller reverse transcript case and maybe when we will when the time is letting us do it, maybe not, we don't know if we will get in time there and everything will be ready. But in the Liu paper, I think was something about the La motive and some other stuff that we want to add to the prime editor so that it's even more efficient. And even then the idea of the LNP to spray dry because we thought then when there is not the that it has to be cool, like other medication, it's easier to bring it like to Asia or other places because they can just get the inhalator. ", a: "Right. So the one question I had for you on that is, have you looked at Daniel Siegwarts work on LNP?  " }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "No,not yet.", a: "Because they had a paper in science where they did intravenous delivery of lipid nanoparticles and they, they delivered a base editor. So when you present this, this might come up. So, you know, so I'm not saying you should change your strategy, but, you know, if you're trying to do a lot of work on lipid nanoparticles, you're going to have to do a lot of work on So you want to have thought about a response. And it's, it's a really interesting strategy. Um, trying to see if I can find it. Yeah. Here. It's a really interesting sort of nanoparticle strategy that they have presented. Uh, the nice thing is it is an IV delivery, which gets you to basal cells and they were able to get about 20% correction, right? So you could almost think of it as an alternative strategy. So if, you know, if you get the pushback or I don't know how you have to write to your proposal, but if the, the, the spray drying or the nebulization process is not going well for you, this might be something that you could propose as a backup because here they've shown that you can deliver lipid nanoparticles intravenously and they get to the basal cell population. Okay. And they get to, yeah. So that might be the only other direction I would point to as you're thinking about your delivery strategy. Right. Uh, the other innovation could be that if you can even optimize your prime editing to go a little bit beyond just Delta, if I wait, if you can show that you even replace the whole Exxon, you might have something that is a little bit more unique than what's out there. And then you don't have to even worry about delivery necessarily. " }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Okay. Thank you so much. We will look at the paper and we'll check it out. All right. Okay. Then, yeah. Thank you very much for the interview. ", a: "Yeah, that's perfectly fine. Good luck with your project. It's a really interesting project." })
+    ] }),
+    pictureurl_interview: "https://static.igem.wiki/teams/5247/photos/sriram-interview.webp"
+  },
+  {
+    title: "M.Sc.",
+    vorname: "Philipp",
+    nachnname: "K\xFChnel",
+    job: "PhD student in the Otorhinolaryngology working group at Bielefeld University",
+    affiliation: "Universit\xE4t Bielefeld",
+    pictureurl: pics["k\xFChnel"],
+    tag: "Academia",
+    heading: "Improvement of our culture protocols and experimental outcomes, particularly in maintaining ALI cultures",
+    interviewtabid: "pkuehnel",
+    quote: "Connecting with Philipp K\xFChnel, an expert in nasal cell cultivation, has been invaluable. His insights and expertise in ALI techniques have significantly enhanced our understanding and approach in this crucial area of research.",
+    quoteNachname: "Susat, Teammember ",
+    quoteVorname: "Kathleen",
+    aimofcontact: [/* @__PURE__ */ jsx69("p", { children: "The aim of our contact with Philipp K\xFChnel, a PhD student from the Otorhinolaryngology working group of Bielefeld University, was to gain expertise in working with primary cultures, particularly focusing on air-liquid interface (ALI) cultures. Given his experience in this area, we sought his guidance to ensure that we were following best practices and to address any technical challenges we might encounter." })],
+    insights: [/* @__PURE__ */ jsx69("p", { children: "Through our discussions with Philipp, we gained valuable insights into the optimal conditions for cultivating primary cells and maintaining ALI cultures. He provided practical advice on troubleshooting of common issues, such as cell differentiation and culture stability, which were crucial for the success of our experiments. We also maintained close contact to exchange information about fungi that frequently contaminate ALI cultures. The expertise shared on combating these fungal contaminations was particularly valuable and greatly enhanced our understanding of effective prevention and treatment methods. " })],
+    implementation: [/* @__PURE__ */ jsx69("p", { children: "We incorporated Philipp\u2019s advice by refining our culture protocols, particularly adjusting the conditions for ALI cultures to improve cell differentiation and overall culture health. This directly enhanced the reliability of our experimental results, ensuring that our work with primary cultures was both accurate and reproducible. " })],
+    language: "de",
+    summary: "The contact aimed to leverage Philipp\u2019s expertise in ALI cultures to improve our experimental protocols Gained insights into optimizing conditions for primary cell cultures and managing common challenges like fungal contamination",
+    months: "several times"
+  },
+  {
+    title: "Prof. Dr.",
+    vorname: "Zoya",
+    nachnname: "Ingatova and  Dr. Nikhil Bharti",
+    job: "Group Leader",
+    affiliation: "Institute of Biochemistry and Molecular Biology at Hamburg University",
+    pictureurl: pics["zoya"],
+    tag: "Academia",
+    heading: "Shaping the Future of Genetic Therapy: An interview with Prof. Dr. Zoya Ignatova",
+    interviewtabid: "ignatova",
+    quoteNachname: "Ingatova, CF Research Experts ",
+    quoteVorname: "Prof. Dr. Zoya",
+    quote: "Precision is key to minimizing side effects and ensuring the safety of your therapy.",
+    aimofcontact: "We conducted the interview with Prof. Dr. Zoya Ignatova and Dr. Nikhil Bharti from the Institute of Biochemistry and Molecular Biology at the University of Hamburg, seeking to deepen our understanding of their research on  Cystic Fibrosis (CF) and explore additional CF mutations, as well as to learn more about cell culture techniques specific to CF research, since they send us the CFBE41o- cell line. Our aim was also to gather more information about their approaches in CF research, particularly their focus on treating genetic mutations like nonsense mutations, which are highly prevalent in CF.",
+    insights: [/* @__PURE__ */ jsx69("p", { children: 'We were struck by Ignatova\u2019s story about founding the iGEM team in Hamburg. Her passion for fostering creativity and innovation in science was inspiring. On a technical level, their advice on cell culture was incredibly practical and immediately useful. Dr. Nikhil Bharti explained how they handle CFBE41o- cells and ALI (air-liquid interface) cell culture. This advice directly addressed the challenges we\u2019ve faced in our own lab, giving us a method to improve our cell culture success rates. During our interview with Prof. Dr. Zoya Ignatova and Dr. Nikhil Bharti, their innovative approach to  Cystic Fibrosis (CF) therapy, particularly "read-through" and tRNA-based therapies, stood out. "Read-through" therapies aim to bypass premature stop codons that prevent full protein production, offering a way to restore the function of critical proteins like CFTR in CF. This approach has the potential to treat a broad range of genetic diseases caused by similar mutations. The tRNA-based therapy is even more precise, targeting mRNA to correct faulty codons without altering the DNA, making it safer for long-term use. This flexibility, along with the ability to apply these therapies beyond CF, broadened our understanding of how such strategies can revolutionize treatments for genetic disorders.Ignatova highlighted, that using cell models closely resembling properties of the cell types targeted by our therapy is important for ensuring applicability of our approach to patient cells and its safety. A key focus throughout the discussion was safety. Prof. Ignatova emphasized the importance of ensuring that the therapies are highly specific, targeting only the defective codons while avoiding natural stop codons to prevent uncontrolled protein production. Moreover, their careful consideration of delivery systems further demonstrated their commitment to minimizing risks like toxicity in unintended organs. Their meticulous approach to safety has influenced how we think about developing and applying these therapies, making it clear that ensuring patient safety is as critical as achieving therapeutic success.' })],
+    implementation: "Prof. Ignatova's practical advice on cell culture had a transformative impact on our project. By adopting her method for CFBE41o- cells and improving our lab's sterilization protocols, we successfully established the cell line and significantly reduced the risk of contamination. In addition, her emphasis on safety in gene therapy guided us to review our Prime Editing construct and lipid nanoparticle (LNP) design. We focused on minimizing toxicity and off-target effects while ensuring precise targeting of lung tissues and the F508del mutation of the CFTR gene, making our approach safer and more efficient",
+    summary: "In our interview with Prof. Dr. Zoya Ignatova and Dr. Nikhil Bharti from the Institute of Biochemistry and Molecular Biology at the University of Hamburg, we aimed to deepen our understanding of their research on  Cystic Fibrosis (CF) and explore additional mutations. Their innovative approaches, particularly tRNA-based therapies, aim to restore the function of proteins like CFTR by bypassing premature stop codons, presenting potential treatments for various genetic diseases. They highlighted the importance of precision in therapy to minimize side effects and enhance safety, emphasizing careful delivery systems to avoid toxicity. Prof. Ignatova's practical insights into cell culture techniques significantly improved our lab's success with CFBE41o- cells, guiding us to enhance sterilization protocols and refine our Prime Editing constructs. This transformative exchange underscored the critical balance between achieving therapeutic success and ensuring patient safety.",
+    language: "en",
+    interview: /* @__PURE__ */ jsxs47(Fragment28, { children: [
+      /* @__PURE__ */ jsx69(QaBox, { q: "We have heard you are passionate about iGEM. What inspired you to get involved, and what has your experience been like with the competition?", a: "My journey with iGEM began when I moved to Hamburg in 2014. Back then, Hamburg did not have its own iGEM team. Despite Hamburg lacking an iGEM presence, there were motivated students who were eager to establish a team. We started quite late with me as a principal instructor, around April, with the competition scheduled for October, so we had limited time. However, we managed to form a team and participate. Fortunately, we were successful in convincing the university administration to establish a steady support for the initiative, which ensured stable funding, including covering registration fees early on. This financial and logistical support gave the team the security to focus on their projects. Over the years, the Hamburg iGEM team has become a well-known and respected group at the university. It is a creative environment where students can push the boundaries of science through interesting and impactful projects. I moved on to other duties after several years of supervision, but I am proud to have played a role in its foundation. The university has recognized iGEM within the curriculum of Molecular Life Science, allowing students to earn credit points and have their work reflected on their transcripts. This acknowledgment further incentivizes students and ensures that their efforts are formally recognized." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "We have been having trouble with CFBE41o- cells not adhering well. Any advice?", a: "CFBE41o- cells can be tricky when it comes to adhesion, but you do not necessarily need to coat your cell culture vessels with fibronectin unless you are doing very specific studies, such as primary culture comparisons. For seeding, we simplify the process by skipping the PBS washing step. Instead, we seed the cells directly into DMEM supplemented with 10% fetal calf serum (FCS) and streptomycin. These cells may take a few days to recover and begin adhering properly, that usually works without requiring extra coatings." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "How do you manage fungal contamination in ALI cultures?", a: "Fungal contamination is one of the more frustrating challenges in cell culture because it is difficult to eliminate once it takes place. In cases of contamination, the best course of action is to shut down all ongoing cell culture work and clean everything thoroughly. You should start by running a sterilization cycle in your incubators, which ideally should reach around 180\xB0C. This should kill any fungal spores. If your incubators do not have that capability, you will need to autoclave everything and clean all surfaces and equipment multiple times with ethanol. It is crucial to remove all traces of contamination, as fungal spores can spread rapidly. The key is prevention through rigorous cleaning and maintenance protocols, and unfortunately, sometimes the only solution is to start fresh with new cultures after a full decontamination round." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "What are you currently researching?", a: "Our primary research focus is on genetic diseases caused by nonsense mutations, also known as premature termination codons (PTCs). While  Cystic Fibrosis (CF) is a major area of interest due to its high prevalence and the impact of specific mutations like the F508del, our research extends far beyond CF. We are targeting a broader category of genetic diseases that share a common feature\u2014early stop codons that lead to production of truncated proteins, which are non-functional. In CF, for instance, our main goal is to restore full-length CFTR protein production in primary patient-derived cells bearing various PTCs. One approach we are exploring is known as a 'read-through' therapy, which involves bypassing the premature stop codon so that the cell can continue producing the full protein. This strategy is applicable not only to CF but can be used in many other genetic disorders caused by nonsense mutations. Briefly, the read-through therapies we develop are tRNA-based therapeutic approaches, in which we design suppressor transfer RNAs (sup-tRNAs) to selectively target and read through PTCs, restoring the production of full-length disease protein without altering the natural termination codons. It is a highly specific and safe method, and because we are targeting mRNA rather than DNA, it allows for terminating the therapies by any unforeseen side effects." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "What are your downstream validation methods?", a: "After we have developed a therapeutic approach, the first step is to validate whether it works at the protein level. First, we check whether the full-length protein is being produced. For CFTR, for example, we look at whether the protein is being correctly synthesized. We also conduct functional tests to ensure its functionality. For CFTR specifically, we test the activity of the ion channel by measuring ion flow through the cell membrane. Another test involves monitoring the height of the air-liquid interface (ALI) cultures, which reports on the ionic balance across the membrane. These functional tests are crucial for confirming that the therapy is not only leading to a production of the protein but is also restoring its function." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "How often would patients need to undergo this therapy?", a: "Since our approach is designed to correct nonsense mutations during translation the therapy would need to be administered periodically. Based on our current understanding, we anticipate that patients might need treatment every three to four weeks, but this has to be determined in clinical settings." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "How does your tRNA-based approach address safety issues?", a: "Safety is the top priority of our tRNA-based therapeutic approach. At molecular level, we ensure that the suppressor tRNAs we use are highly specific\u2014they are engineered to target only PTCs without affecting natural stop codons, which are essential for terminating the synthesis of every protein. In addition to the specificity, we address the immune response that can be triggered by any nucleic acids, including tRNA. Generally, tRNA has a lower immunogenicity than other molecules, such as mRNA, because of its partially double-stranded structure, which reduces the activation of the innate immune reaction. Another critical safety aspect is the safety of the delivery system. We need to ensure that the tRNA reaches the right type of cells without causing toxicity or accumulating in untargeted tissues like the liver, which is a common issue with many gene therapies. We are also working on optimizing our delivery methods. This precision is key to minimizing side effects and ensuring the safety of our therapy." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Why focus on CF research?", a: "Our involvement with CF research emerged somewhat by chance. Initially, we were deeply interested in understanding the variability in disease, specifically why individuals with the same genetic mutations show different symptoms or present different disease severity. Even siblings or twins with usually similar genetic makeup exhibit different disease outcomes. CF became a focus as we delved into the molecular mechanism of CFTR biosynthesis. However, our work is not confined to CF\u2014we are using the knowledge we gain from CF research and our expertise in protein synthesis and translation to develop treatments for other genetic diseases caused by nonsense mutations. The mechanisms behind these diseases are often similar, so the therapeutic strategies we are exploring can potentially be applied to a range of conditions." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "What do you see as the biggest challenge in translating your research to real-world applications?", a: "Safety is the most critical hurdle in translating our research from the lab to clinical applications. Before any therapy can be considered for human use, we need to ensure that it is both safe and effective. In terms of efficacy, we have specific targets we need to meet for each disease. For CF, for example, you only need to restore about 10% of normal CFTR protein function to alleviate the symptoms. However, in other diseases, the therapeutic threshold is much higher, sometimes requiring near-complete protein restoration. Another significant challenge is the small number of patients affected by many rare genetic diseases, which requires regulation bodies to consider this and redefine conditions for clinical trials." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "What are good preclinical models for CF research, in your view?", a: "Preclinical models are essential for testing the safety and efficacy of any new therapy. For CF research, one of the most reliable models is the patient-derived air-liquid interface (ALI) cultures, which replicate the lung environment and are mutation-specific. Primary cultures are available through the CF Foundation (USA) and allow researchers to test therapies in a context that closely mimics the human lung. While ALI cultures are excellent models, they are also challenging to grow and require about two months to be set up properly. For earlier-stage experiments, we often use simpler cell lines that are easier to handle. These lines allow us to perform studies at molecular level, such as testing how well a therapy restores protein production. While they do not fully represent the primary epithelial environment of the lungs, they are useful for initial validation steps before moving on to more complex models like ALI cultures." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "What are your thoughts on using lipid nanoparticles (LNPs) versus other delivery systems, like AAV vectors?", a: "Lipid nanoparticles (LNPs) are a promising delivery system for many genetic therapies, but they have limitations. While LNPs can effectively target certain organs, such as the lungs and liver, they cannot cross the blood-brain barrier and thus unsuitable (for now) to target neuronal pathologies. For these conditions, adeno-associated viral (AAV) vectors may be more effective, as they exhibit an inherent ability to cross the blood-brain barrier. For CF specifically, we have used LNPs to deliver sup-tRNAs directly to the lungs. We teamed up with an US company that develops safe LNPs used also for vaccines. Delivery methods like intratracheal instillation\u2014where the LNPs are introduced into the trachea\u2014allow for targeting the lung tissue more directly, which is critical for treating CF." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "How do you view prime editing compared to other gene editing technologies?", a: "Prime editing is an exciting development in the field of gene editing, but it is important to recognize that no single approach is universally superior. Technologies like prime editing, CRISPR-Cas, and our own tRNA-based therapies each have their strengths and limitations. For instance, prime editing offers a highly precise method for correcting mutations directly at the DNA level, potentially providing a one-time, lifelong cure. However, our approach, which focuses on restoring mRNA translation, does not introduce permanent changes to the genome and unforeseen, also individuum-specific side effects, can be counteracted by immediate termination of the therapy. In turn, it requires continuous re-administration over time. Ultimately, the safety and efficacy of any approach must be carefully weighed. We are not yet at a point where we can definitively rank these technologies because the field is still evolving. Each approach has potential, and the choice of which to use will likely depend on the specific disease and mutation being targeted." })
+    ] }),
+    months: "September",
+    pictureurl_interview: "https://static.igem.wiki/teams/5247/photos/for-wiki-texts/interview-ignatova/interview-ingatova.webp "
+  },
+  {
+    vorname: "'MukoDino'",
+    nachnname: "Thomas Malenke ",
+    job: "Patient",
+    affiliation: "and CF Activist",
+    pictureurl: pics["mukodino"],
+    tag: "Patient",
+    heading: "Shaping CF Therapies: Lessons Learned from Patients' Real-World Experiences",
+    interviewtabid: "dino",
+    quote: "Living with  Cystic Fibrosis has been a journey of perseverance and adaptation. Despite the challenges, I've learned that taking personal responsibility for my health, staying informed, and embracing the advancements in research can lead to a much-improved quality of life.",
+    aimofcontact: [/* @__PURE__ */ jsxs47("p", { children: [
+      "Our goal in reaching out to  Cystic Fibrosis (CF) patients was to gain a firsthand understanding of their day-to-day experiences living with the condition. We aimed to explore how recent advancements in treatments have impacted their lives and transformed their approach to managing the disease. This initiative is vital for our project, as it helps us comprehend the significance of these treatments and their broader implications. A key aspect of our outreach was partnering with the ",
+      /* @__PURE__ */ jsx69("a", { href: "https://www.instagram.com/accounts/login/?next=https%3A%2F%2Fwww.instagram.com%2Fmukodino%2F&is_from_rle", children: "MukoDino" }),
+      "who has extensive reach within the CF community. This collaboration enabled us to distribute our survey widely among those affected, as we recognized that we could not conduct as many interviews as we could reach through the survey. We also sought to gather insights on research priorities and the future direction of CF therapies. "
+    ] })],
+    insights: [/* @__PURE__ */ jsx69("p", { children: "From talking with the CF patient, we gained some valuable insights that have shaped how we move forward with our project: Firstly, hearing about the day-to-day challenges with current CF treatments was eye-opening. It highlighted just how crucial it is for us to develop therapies that are not only effective but also make life easier for patients. We\u2019ve taken this to heart and are working to make our treatment process as efficient and user-friendly as possible. The patient also talked about the heavy toll that existing treatments can take, both in terms of time and physical strain. This feedback has pushed us to focus on streamlining our approach, especially with our prime editing and inhalation therapy. We want to cut down on the complexity and frequency of treatments, making things simpler and less burdensome for patients. We also learned about the ongoing need for more advanced therapies. The patient stressed the importance of continuing to push the boundaries with modulator therapies and gene editing. This has really driven us to prioritize our spray-dried lipid nanoparticles (LNPs) approach, which aims to deliver gene-editing tools straight to the lungs, tackling the root cause of CF. The discussion also gave us a clearer picture of the global disparities in CF care. It became evident that access to advanced treatments varies a lot around the world. This has made us think about how we can scale our therapy to be more accessible, even in places with fewer resources. The patient\u2019s personal experiences underscored the need for treatments that are tailored to individual needs. We\u2019re using this insight to make sure our therapy can be adapted to different genetic mutations and patient responses. Finally, their emphasis on enzyme development and gene therapy has influenced our research focus. We\u2019re now prioritizing these areas to ensure our work addresses both current needs and future possibilities in CF treatment. Overall, these insights have really helped us align our project with the real-world needs of CF patients, making sure that what we\u2019re developing is both practical and impactful. " })],
+    implementation: [/* @__PURE__ */ jsx69("p", { children: "We incorporated the CF patient\u2019s insights into our project by making several key adjustments to better align with the real-world needs of CF patients. Understanding the challenges they face and the impact of current treatments helped us refine our approach significantly. Firstly, we focused on developing prime editing via inhalation therapy with spray-dried lipid nanoparticles (LNPs). This method directly targets genetic mutations in the lungs, addressing the patient\u2019s need for more effective and less invasive treatments. We\u2019re also fine-tuning the formulation and delivery of our LNPs to ensure they reach lung tissue efficiently while minimizing any discomfort. The feedback on global disparities in CF care highlighted the importance of creating a treatment that is not only effective but also affordable and accessible. We\u2019re considering how to scale our therapy to make it available in regions with limited access to advanced treatments. Additionally, the emphasis on the need for continued advancements in enzyme development and gene therapy has guided us to balance immediate therapeutic benefits with long-term research goals. This ensures that our project addresses both current needs and future possibilities in CF treatment. By integrating these insights, we aim to ensure our project not only advances scientific understanding but also meets the practical needs of CF patients, ultimately leading to more effective and accessible treatments. " })],
+    summary: "The aim of our outreach to  Cystic Fibrosis (CF) patients was to gain insights into their daily experiences and how recent treatment advancements have affected their lives. Partnering with MukoDino allowed us to distribute a survey widely, as interviews were limited. Through discussions with patients, we learned about the challenges posed by current treatments, emphasizing the need for therapies that simplify management and reduce physical strain. This feedback has driven our focus on developing more efficient inhalation therapies using spray-dried lipid nanoparticles (LNPs) to deliver gene-editing tools directly to the lungs. We also recognized the global disparities in CF care, motivating us to consider scalability and accessibility for those in resource-limited regions. Patient insights underscored the importance of personalized treatments tailored to individual genetic mutations, prompting us to prioritize enzyme development and gene therapy in our research. Overall, these insights have shaped our project to align closely with the real-world needs of CF patients, aiming for impactful and accessible solutions.",
+    months: "September",
+    interview: /* @__PURE__ */ jsxs47(Fragment28, { children: [
+      /* @__PURE__ */ jsx69(QaBox, { q: "How did you come up with the name \u2018Muko-Dino\u2019?", a: "The name \u2018Muko-Dino\u2019 has a personal history. At a  Cystic Fibrosis meeting, another patient joked that I, as a 58-year-old  Cystic Fibrosis patient, was a \u2018Muko-Dino\u2019. The name alludes to my age, because in the past,  Cystic Fibrosis patients had a much shorter life expectancy. So it was unusual for someone with the disease to still be so active at my age. The name stuck - initially as a joke, but I have since adopted it as a kind of nickname." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "When were you diagnosed with  Cystic Fibrosis?", a: "I was diagnosed at the age of six after a sweat test. I had lost a lot of weight in the first year of my life and  Cystic Fibrosis was already suspected, but it took a while before the diagnosis was actually confirmed." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "What were your thoughts and those of your family after the diagnosis?", a: "My mum was naturally shocked. When you have a child, you are happy, and then to receive a diagnosis like this is a huge shock. For parents of  Cystic Fibrosis patients, there is always a basic fear because the disease is life-threatening. Today, many parents hope that their child will live to be at least two years old so that they can receive modulators that can greatly improve the symptoms." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "What mutation do you have?", a: "I have the Delta 508 mutation in duplicate, i.e. homozygous. This is the most common form of  Cystic Fibrosis mutation and causes the typical symptoms associated with the disease, such as digestive and lung problems." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "What were the first steps after the diagnosis?", a: "Back then, in the 1960s, there were hardly any specialised  Cystic Fibrosis outpatient clinics. My paediatrician prescribed me Pankreon, an early enzyme preparation that was supposed to help me with digestion. Nowadays, the process is very different: A child is referred to a specialised outpatient clinic immediately after diagnosis, where they receive comprehensive care. This includes medical care, nutritional counselling, physiotherapy and support with socio-legal issues." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "How has treatment changed over the years?", a: "The treatment of  Cystic Fibrosis has improved dramatically over the last few decades. In the past, low-fat diets had to be followed, even with enzymes, which were not as effective as today's preparations. Back then, if you ate something fatty like chocolate or chips, you got diarrhoea. Nowadays, enzymes are much more effective and patients have hardly any dietary restrictions. As far as antibiotics are concerned, resistance is a big issue. That's why doctors change antibiotics regularly to prevent resistance from developing. Modulators have revolutionised the lives of many patients, even if they can trigger psychological side effects in some. But the alternative, frequent pneumonia, is much worse." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "How do you assess the progress made in  Cystic Fibrosis research?", a: "The progress is absolutely remarkable. When I was born, the average life expectancy of a  Cystic Fibrosis patient was one to five years. Today we are talking about over 60 years. This development is not only due to medical innovations, but also to better adherence on the part of patients, who follow their therapies more regularly and efficiently." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Is there anything you would like to see in the future of therapy?", a: "Personally, I am almost perfectly happy, as the current modulators have given me an enormously improved quality of life. My wish for the entire  Cystic Fibrosis community is that gene therapy will be further developed. A treatment that addresses the genetic causes of the disease would be a huge breakthrough and it would be ideal if this could be achieved without serious side effects." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Which areas of research do you think should be strengthened?", a: "There are a few areas that I consider to be particularly important. On the one hand, enzymes should be further developed in order to work even better and further minimise side effects. Another major topic is bacteriophage research, which could help patients with multi-resistant germs. Modulators should also be further optimised and, of course, gene therapy must be driven forward in order to find a sustainable solution." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "What role does personal responsibility play in  Cystic Fibrosis?", a: "Personal responsibility is extremely important. Anyone living with  Cystic Fibrosis has to deal intensively with their own disease and take responsibility for their health. This means regularly informing yourself about new treatment options and being disciplined about your own treatment. If you don't take care of yourself, you run the risk of not fully utilising the advances in medicine. The healthcare system gives you many options, but you have to actively utilise them. Luck definitely plays a role, but it is not enough on its own. I have been lucky in my medical history because I live in a country with good access to medical care and have been able to benefit from the modulators. But even the best luck doesn't help without initiative and commitment. You have to play an active role in making the most of the opportunities that life offers you." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "What does your daily routine look like?", a: "My daily therapy takes about two to three hours. This includes taking enzymes and antibiotics as well as inhalations with saline solution and antibiotics. I also do regular autogenic drainage and stretching exercises to support my lungs. It is important to stick to this routine consistently, as even a few days without therapy can lead to inflammation." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "What is the most important part of your daily routine?", a: "It's difficult to single out one part because all aspects work together. If I left out the enzymes, I would only be able to eat salad because my body wouldn't be able to absorb any nutrients. Without the modulators and antibiotics, I would quickly get pneumonia, which means I would have to take weeks off. So regularity is the key to staying healthy in the long term." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Do you do any sporting activities?", a: "Yes, I cycle to work every day and take the stairs to the eighth floor where I have my office. I don't do intensive sports like going to the gym, but I do exercise regularly in my everyday life, which is very important for my health." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Do you use physiotherapy?", a: "I do my own physiotherapy at home as I have learnt the techniques well over the years. I used to visit a physiotherapist regularly, but I no longer need to. Also, there are hardly any specialised physiotherapists for  Cystic Fibrosis patients in my area." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Which organ affects you the most in your everyday life?", a: "Thanks to the modulators, none actually. But if I don't take the enzymes, I can't eat anything, which leads to rapid weight loss. Without the antibiotics and modulators, I would be more susceptible to infections and would quickly develop pneumonia, which would require weeks of recovery." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Have you or anyone close to you taken part in clinical trials?", a: "I personally have not participated in clinical trials, but I encourage other patients to do so, as trials are often the only way to test and develop new treatments." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "What impact do advances in  Cystic Fibrosis research have on patients' lives?", a: "Advances in  Cystic Fibrosis research have had an enormous positive impact on patients' lives. In the past, life expectancy at diagnosis was often only a few years. Today, many patients can live into old age. The introduction of modulators that specifically stabilise the disease-causing proteins and improve their function has significantly improved patients' quality of life. Research has also contributed to patients being better informed about their disease and having effective therapies available, leading to better overall disease management." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "How do you assess the differences in the treatment and support of  Cystic Fibrosis patients in Germany compared to other countries?", a: "In Europe, especially in Germany, we live at a very high medical level, even if there are challenges such as the shortage of specialists. The difference in prosperity in the USA is greater, but at the same time it is also a driver of innovation. Compared to countries as some third-world countries, where  Cystic Fibrosis patients have to wait in hospitals for appointments between infectious patients, we are complaining at a high level here. There is always room for improvement, but overall we have a brilliant healthcare system." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Do you feel sufficiently informed by the available sources of information?", a: "Yes, the information situation is good. You can find sufficient information from organisations such as the CF Foundation, the CF Trust and Mukoviszidose e.V.. However, you have to get involved yourself and actively seek out the information." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Is there anything else you would like to tell us?", a: "It is important to understand that CF patients are very different, including in terms of their cultural and family background. In addition, surveys and questions should be reviewed in advance by patients or parents to ensure that they are understandable and do not contain unfortunate wording. If you need any help or anything, I would love to help you. Send me the link as soon as the website is ready and I'll give you feedback. I can also circulate the survey in the community. I'm always available if you have any further questions or need support." })
+    ] }),
+    pictureurl_interview: "https://static.igem.wiki/teams/5247/photos/hp/zoom-mukodino.webp"
+  },
+  {
+    title: "Dr. Kerstin Landwehr",
+    vorname: "Senior Physician for Pediatrics & Pneumology and",
+    nachnname: "Elena Wiesler",
+    job: "Psychologists in child & adolescent medicine ",
+    affiliation: "at Bethel Hospital in Bielefeld",
+    pictureurl: pics["bethel"],
+    tag: "Medical Professional",
+    heading: "Holistic Care for Cystic Fibrosis: Exploring the Psychological Impact and Role of Gene Therapy",
+    interviewtabid: "psychol",
+    language: "de",
+    quote: "Many families are confronted with extremely high therapy and treatment costs. These are often expensive and unavailable everywhere.",
+    quoteVorname: "Elena",
+    quoteNachname: "Wiesler, Phsychotherapist at hospital Bielefeld ",
+    aimofcontact: [/* @__PURE__ */ jsxs47("p", { children: [
+      "In previous interviews, ",
+      /* @__PURE__ */ jsx69(HPLinktoOtherHPTab, { tab: "maxfirst", text: "Max" }),
+      " and ",
+      /* @__PURE__ */ jsx69(HPLinktoOtherHPTab, { tab: "dino", text: "Thomas" }),
+      " shared how the psychological burden of living with  Cystic Fibrosis weighs heavily on patients. Parents ",
+      /* @__PURE__ */ jsx69(HPLinktoOtherHPTab, { tab: "joshua", text: "Joshua" }),
+      " and ",
+      /* @__PURE__ */ jsx69(HPLinktoOtherHPTab, { tab: "julia", text: "Julia" }),
+      " also emphasized that mental health challenges are a major issue for both patients and their families. This prompted us to delve deeper into the psychological, social, and medical difficulties faced by  Cystic Fibrosis (CF) patients and their support systems. A key goal was to understand how gene therapies are perceived and how they may affect the quality of life for CF patients. We aimed to gather insights from various perspectives\u2014patients, caregivers, and healthcare professionals\u2014to ensure our project aligns with their needs and addresses the most pressing challenges. Given the complexity of these psychological aspects, it was crucial for us to engage with psychologists to gain a professional, expert opinion. We visited the medical professionals at the klinikum bethel. Their input helped us better understand the mental health impacts of CF and the potential emotional adjustments required when integrating gene therapies into treatment plans. This guidance was invaluable in shaping our approach to developing a holistic solution that addresses not only the medical needs but also the emotional well-being of patients and their families. It informed our Integrated Health Program (IHP) strategy, emphasizing the importance of interpersonal relationships, effective communication, and community engagement, extending beyond purely scientific considerations. "
+    ] })],
+    insights: [/* @__PURE__ */ jsx69("p", { children: "Through our discussions, several valuable insights emerged that have significantly deepened our understanding of the challenges faced by CF patients and their families: CF patients and their families often endure immense psychological strain. Anxiety, depression, and frustration are common, exacerbated by the constant uncertainty about the disease\u2019s progression and the effectiveness of new treatments. The emotional toll is profound\u2014not just due to the physical burden of the illness, but also because of the hope and fear that come with emerging therapies. While new treatments bring promise, they also raise concerns about their potential success and the unknowns that accompany them. There\u2019s a strong sense of optimism regarding gene therapies, as they hold the potential to significantly improve both life expectancy and quality of life for CF patients. Many are eager to embrace these innovations, seeing them as a long-awaited breakthrough. However, this excitement is often mixed with concerns about side effects, the accessibility of these therapies, and their long-term effectiveness. The prospect of such treatments brings hope, but also a degree of scepticism, particularly around whether they will be accessible to all who need them. Psychological support, family counselling, and the involvement of patient communities are essential in helping patients and their families cope with the emotional and mental challenges of both the disease and its treatments. The strength of these support systems can make a profound difference in how well patients navigate the challenges of living with CF, particularly when adapting to new therapies. We also learned that while new therapies are exciting, their success often depends on their practicality. Treatments that are complex, invasive, or burdensome are less likely to be adopted, even if they promise significant benefits. Simplicity, ease of use, and reducing the treatment burden are critical factors in ensuring patients fully engage with and benefit from these therapies. These insights have shaped our approach, reinforcing the importance of considering both the psychological and practical aspects of new gene therapies, to better address the needs of CF patients and their families. " })],
+    implementation: [/* @__PURE__ */ jsx69("p", { children: "These findings directly influenced several key areas of the project. We adapted the project to emphasise ease of use and minimal disruption to patients' daily lives. For example, we focused on developing a therapy delivery system that was as non-invasive as possible. Recognising the mental health challenges, we integrated our project with a simple therapeutic method to reduce the mental burden on patients. We have emphasised transparency in communicating the benefits, risks and expectations of gene therapy to ensure that patients have a realistic understanding of the potential outcomes. This includes working closely with patient organisations to disseminate clear and accurate information. We are actively engaging with CF patient communities and healthcare professionals to gather ongoing feedback and ensure that the project evolves based on real patient experiences and challenges. Therefore we used our survey to gather feedback from patients and their families. By integrating these insights, we aim to create a gene therapy project that addresses not only the medical needs, but also the emotional and practical concerns of CF patients and their families. " })],
+    summary: "Our project aims to address the psychological and medical challenges faced by  Cystic Fibrosis (CF) patients and their families, particularly regarding gene therapies. We engaged with psychologists and gathered insights from patients and caregivers, revealing significant emotional strain and a mix of optimism and concern about new treatments. Key findings highlighted the importance of psychological support and the practicality of therapies in ensuring patient engagement. In response, we are developing a user-friendly therapy delivery system that minimizes disruption to daily life while emphasizing transparent communication about treatment risks and benefits. Our goal is to create a comprehensive gene therapy solution that meets the medical and emotional needs of CF patients.",
+    months: "September",
+    interview: /* @__PURE__ */ jsxs47(Fragment28, { children: [
+      /* @__PURE__ */ jsx69(QaBox, { q: "Which psychological challenges are particularly relevant for  Cystic Fibrosis patients?", a: "Psychological problems are often a major issue for  Cystic Fibrosis patients. Many patients experience anxiety and depression, and their parents are also often affected. This is exacerbated by the constant strain and stress associated with the disease. Special attention is therefore paid to psychological support during diagnosis and ongoing treatment. Regular screenings for anxiety and depression as well as the early involvement of parents in the treatment process are central components of care." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "What significance do the new therapies have for  Cystic Fibrosis patients?", a: "New therapies are \u2018game changers\u2019 for  Cystic Fibrosis patients, as they significantly improve life expectancy and quality of life. In the past,  Cystic Fibrosis was mainly a paediatric disease with a short life expectancy. Today, new therapies make it possible to significantly extend life expectancy and improve quality of life. Nevertheless, the disease persists, and patients still require comprehensive treatment. Improving quality of life through early and continuous therapy therefore remains of great importance." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "How is psychological support integrated into regular treatment?", a: "Psychological support is an integral part of the treatment of  Cystic Fibrosis. Care is taken to ensure that both patients and their families are supported at an early stage. This includes regular screenings for anxiety and depression, psycho-educational measures and, if necessary, further psychotherapeutic support. The team works on an interdisciplinary basis to ensure that all aspects of patient care are taken into account. If necessary, external help is also arranged." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "How is co-operation between medical specialists and psychologists improved?", a: "The collaboration between medical specialists and psychologists is characterised by short communication channels and close cooperation. Specialists can exchange information quickly and make decisions together. This enables comprehensive and coordinated care for patients. Effective communication channels are already in place and this close co-operation is seen as very positive. Improvements could be achieved through additional time slots for dialogue or expanded resources." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "How do families react to the news of a serious diagnosis and how important is it that they receive support at an early stage?", a: "Families are often shocked at first when they receive the diagnosis. They first have to come to terms with it and process it. Initially, many don't ask for psychological support straight away, although that would be helpful. It would be good if they were informed about all available resources at an early stage, even if they don't want to make use of them straight away." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "How does access to gene therapy affect the psychological distress of patients and families?", a: "Access to gene therapy can have a significant impact on psychological distress. When therapy is effective, families often see great progress and feel relieved. But if there is no suitable therapy, many are stuck with older, less effective treatments, which can lead to frustration and a sense of disadvantage. The difference in quality of life and outlook is huge." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "How do patients and families feel about gene therapy compared to traditional therapies?", a: "The willingness to participate in gene therapies is often high, especially if the existing therapies are not sufficient. There is a great openness to new approaches, even if they are new and possibly not yet fully tested. The hope for progress and improvement is strong, but there are also concerns and uncertainties about new therapies." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "What psychological challenges can arise following the introduction of new therapies?", a: "New therapies not only bring relief, but also challenges. Patients and families have to adapt to a changed reality. Identity crises can occur, especially if the illness has been a big part of life for a long time. The process of adjustment and the possible feelings of alienation from the previous community can cause additional psychological stress." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "How important is comprehensive information and psychological support in connection with gene therapies?", a: "It is extremely important that patients receive comprehensive information and psychological support. People should know what they can expect from the therapy and what adjustments might be necessary. Talking openly about possible disappointments and challenges can help them to cope better with the changes." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "How does the role of support groups and patient organisations influence confidence in new therapies?", a: "Support groups and patient organisations are crucial for confidence in new therapies. If they are actively involved in research and provide transparent information, this strengthens patient confidence. The use of donations and the establishment of registries by such organisations creates trust and shows that there are serious efforts to improve the situation." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "What are the challenges in adapting therapies to different genetic mutations?", a: "Adapting therapies to different genetic mutations is a major challenge. While there has been progress in the treatment of certain mutations such as Delta-F508, we are still at the beginning with others. In the long term, a modular gene therapy that is customised to the specific mutations would be ideal. It will take a lot of work to develop these therapies for all relevant mutations." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "How do families and patients deal with the rapid feedback on experimental therapies?", a: "If you realise that a therapy is not working as expected, this is communicated very quickly. The feedback system is quite effective: either there is cause for euphoria because everything is going well, or there is bad news. This quick feedback is also reassuring because it means you don't have to be in the dark for long. You are simply grateful when you know how the therapy is going, even if it is not having the desired effect." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "How important is the community for  Cystic Fibrosis sufferers?", a: "The  Cystic Fibrosis community is incredibly strong and well connected. That's really impressive. Those affected often have no other point of contact than this community to exchange information. It's a reliable source of valid information, and that's worth its weight in gold. The community is honest and realistic - there is no sugarcoating, the information is direct and well documented." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "What is the relationship between different specialist disciplines in the treatment of  Cystic Fibrosis?", a: "In  Cystic Fibrosis treatment, the specialist disciplines work together as equals. At congresses, all disciplines such as physios, doctors, psychologists and nutritionists are equally represented. Everyone takes each other seriously and there is a strong interest in developing each other further. This is really exciting because it shows that everyone is working together to provide the best care." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "How do families deal with the challenges of therapy and the financial aspects?", a: "Many families are confronted with extremely high therapy and treatment costs. There has been progress and many treatment options in Germany, but these are often expensive and not available everywhere. As a result, some families are forced to leave their home country in order to receive better medical care. This is an enormous burden and shows how unfair the distribution of resources is worldwide." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "How is medical care for refugees organised?", a: "For refugees from countries such as Ukraine or other crisis areas, care is often a challenge. During emergency care, the children are treated as if they were German patients. But when the refugees have to return to their home countries, the therapy often ends, which is an enormous burden for the families. It is difficult for them to prepare for the future when their status is unclear, and they constantly live with the fear of being deported." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "How much psychological stress is caused by therapies and their implementation?", a: "Therapies can be a major psychological burden, even if they have fundamentally positive effects. Regular inhalations, tablets and other treatments are often tedious and require a lot of discipline. Some patients find it extremely challenging to stick to a regular therapy schedule, especially if the therapy does not bring any immediately visible progress in the long term. It is important to be realistic about the burden of therapy, as it can have a major impact on daily life and well-being." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "How do patients react to new therapies and the associated challenges?", a: "Many patients are open to new therapies but implementing them can be a major challenge. If a new therapy doesn't work immediately at first or even has side effects, this can be demotivating. This is particularly difficult if you have been undergoing treatment for a long time and are hoping to make great progress. The path to a better condition is often arduous and not every therapy brings the desired improvement. Nevertheless, it is important to keep going and persevere with the therapy, even if there are hard times." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "How much of the overall illness is psychological distress, in addition to the physical symptoms and distress from therapies?", a: "The psychological part of the burden is difficult to quantify, as it varies greatly from individual to individual and is influenced by many factors. The interaction between psychological stability and physical health is considerable, as psychological stress can impair self-care and thus physical health. At different stages of life, the psychological component can vary. For example, it can increase during puberty and young adulthood. The psychological component is therefore not small and varies depending on the individual situation and phase of life." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "How is the visibility of the disease assessed through projects such as MukoMove or projects for children?", a: "The visibility of the disease through such projects can be helpful in raising awareness. With rare diseases such as  Cystic Fibrosis, the disease often remains abstract if there are no people directly affected nearby. Educational projects such as MukoMove can help children develop a better understanding of the disease, even if the impact is limited if there are no direct points of reference. However, it can be helpful if patients themselves explain their disease in schools or classes, as this provides direct and personal insights." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "What are important aspects of designing a gene therapy project so that it is viewed positively by  Cystic Fibrosis patients?", a: "When designing a gene therapy project, care should be taken to minimise the practical hurdles. The therapy" }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "What tips can be given to improve the accessibility and acceptance of projects or therapies in  Cystic Fibrosis patients? ", a: "It is important to ensure the accessibility of projects and that they are practical to implement. The burden on patients should be minimised. This includes ensuring that the therapy is not only effective but also as pleasant as possible. In addition, communication about the progress of the therapy should be transparent and understandable to build trust and make it clear to patients how they can benefit from the new developments. " })
+    ] }),
+    pictureurl_aim: "https://static.igem.wiki/teams/5247/integrated-human-practices/on-our-way-to-interview-psychologists.webp"
+  },
+  {
+    title: "Dr.",
+    vorname: "Makoto",
+    nachnname: "Saito",
+    job: "Postdoc",
+    affiliation: "Broad Institute of MIT and Harvard",
+    pictureurl: pics["saito"],
+    tag: "Academia",
+    heading: "Insights and Recommendations from Interview on Protein Engineering",
+    interviewtabid: "saito",
+    language: "en",
+    quoteNachname: "Saito, Leading research expert of FANZOR ",
+    quoteVorname: "Dr. Makoto",
+    quote: "This project is actually a really hot, very important project at the absolute cutting edge of science. Honestly, I see researchers around the world working on developing smaller CRISPR-Cas-like prime editors. It shows that you guys are working on a really important problem.",
+    aimofcontact: "The aim of the interview was to gain deeper insights into the topic of protein engineering, especially with regard to Fanzor (SpuFz) and to get feedback on our existing approaches for possible nickases, as well as for the planned nickase assay. ",
+    insights: "The interview provided the iGEM team with valuable advice regarding their Prime Editing project and especially on their planned nickase assay. Dr Saito gave detailed feedback on technical challenges, especially with protein expression in E. coli, and suggested switching to yeast for better results. He also encouraged the team to plan carefully, given the project's complexity, and offered guidance on future experiments.\u202F ",
+    implementation: "We have adapted our planned nickase assay according to Dr Saito's advice and changed it accordingly to expression of the RNP complex using yeast.",
+    summary: "The interview aimed to gain insights into protein engineering, particularly regarding Fanzor (SpuFz), and to get feedback on potential nickases and a planned nickase assay. Dr. Saito provided valuable advice, suggesting the use of yeast for protein expression over E. coli due to technical challenges and encouraged careful planning. Based on his feedback, the iGEM team has adapted their nickase assay to express the RNP complex in yeast, aligning with Dr. Saito's recommendations.",
+    months: "august",
+    interview: /* @__PURE__ */ jsxs47(Fragment28, { children: [
+      /* @__PURE__ */ jsx69(QaBox, { q: "Are you familiar with iGEM, by the way?", a: "Of course, I know it." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Did you participate yourself at some point?", a: "Unfortunately, I didn't. I belong to an earlier generation. iGEM actually started relatively recently." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "We thought for the structure of the interview, we would start by giving you a brief overview of our project so far to familiarize you with it. Then, we\u2019ll move on to the questions. Is that okay?", a: "Yes, of course, please go ahead." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "We've been working on this project for more than half a year now. It began because one of our team members has a friend with  Cystic Fibrosis. That got us interested in the topic. We started by investigating how gene editing technologies like CRISPR-Cas9 could be applied to  Cystic Fibrosis. Then, we explored prime editing and considered if it could be used for this disease or adapted for other applications. Initially, we wondered if we could make prime editing more compact, especially since delivery is challenging due to its large complex size. We looked into various delivery methods, including AAVs (Adeno-Associated Viruses). Our first approach was to explore alternative nickases and possibly engineer new ones. That's how we came across your research \u2013 Fanzor. We also considered other candidates like CasX. Are you familiar with CasX?", a: "Yes, I am." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "We're also experimenting with changes to the editing complex itself. In addition, we aim to deliver the editing complex using nanoparticles. We chose to focus on the lungs, hoping that targeting this area would reduce the need for AAV viruses, making the delivery less immunogenic and not as limited by size.", a: "So, in this iGEM project, you're working on both reducing the size of the prime editor and developing nanoparticles for delivery?" }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Yes, that\u2019s the plan. Before we start with the main questions, how much time do you have? Is half an hour okay?", a: "No problem, half an hour is fine." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Great! Then, let\u2019s start with the first question. Our approach to modifying the endonuclease FANZOR started with understanding its mechanism. Could we go over this mechanism with you to ensure we understood it correctly?", a: "Of course, please go ahead." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "As we understand it, the FANZOR protein has different domains, including the RuvC and the NUC domain. The RuvC domain cuts the DNA after binding. Is that correct?", a: "Actually, we don't call this domain the NUC domain anymore. In the past, about eight years ago, researchers thought it was a nuclease domain, called the 'NUC' domain. However, now we know that this domain itself does not have catalytic activity. We call it the TNB domain, derived from the protein's ancestor, TNPB." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "I see. Thank you for clarifying. We also noticed that Cas9 has two catalytic domains, which allow for mutation of one or two of them to create a nickase, making single-strand cuts. Is this similar with Cas12 elements?", a: "It's a bit more complicated with Cas12. This project, in particular, is very advanced and involves understanding the nuances of these domains. The paper on Cas12 prime editing discusses how mutations can affect functionality. In FANZOR, you might be able to attempt similar mutations, though I haven't personally tried them." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "That aligns with our thinking. We recently looked at a paper describing the engineering of Cas12a into a nickase. Our approach involves investigating similar patterns in FANZOR. For example, we identified two key amino acids \u2014 glutamine and arginine \u2014 that appear to interact with the DNA.", a: "I agree that targeting specific domains is a potential approach. However, altering an enzyme to gain a new function is challenging. The Cas12a paper provides a path forward by showing how certain domains can be mutated to create nickases. Actually, this project is really important and at the forefront of science. Researchers worldwide are working on developing smaller CRISPR-Cas-like prime editors." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "That\u2019s awesome to hear, thank you for this feedback. We plan to test this concept. One of our ideas is to mutate specific amino acids in the TNB domain of FANZOR to see if it changes its functionality. We have ordered these different versions of FANZOR.", a: "That\u2019s a reasonable approach. However, be cautious. If the mutation destabilizes the protein, it might not be expressed correctly. But it's worth trying, as the outcome can vary depending on the mutation and the protein." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Yes, we are aware of that risk. We\u2019re also planning to use in vitro assays to test our candidates. We designed guide RNAs and will use gel electrophoresis to analyze the results, looking for nicking or double-strand cuts.", a: "Interesting. Are you planning to purify each candidate protein?" }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Yes, but we cannot use yeast, so we will try producing the proteins in E. coli and then purify them. We\u2019ll combine them with in vitro-transcribed omega RNA. Do you think that would work?", a: "It might not work with E. coli for FANZOR. In our experience, E. coli cannot produce the holoenzyme of FANZOR without its associated RNA. We initially tried E. coli but then switched to yeast, which allowed us to obtain functional protein-RNA complexes." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "That\u2019s valuable insight. Is the reason E. coli fails because it cannot properly form the protein-RNA complex?", a: "Possibly. The exact reason isn\u2019t clear, but we found that only in yeast, where the protein and RNA are co-expressed from their native loci, could we obtain a functional complex. We also tried replicating this setup in E. coli, but it didn't work." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "This is really helpful information. We will consider switching to yeast. Do you have any advice on how to quickly transition our approach from E. coli to yeast?", a: "You can certainly use yeast. It\u2019s not too difficult. You could order the plasmids from Addgene and start culturing yeast. Does your iGEM team have the ability to work with yeast?" }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Yes, we can. We've just never worked with yeast before because it seemed easier to use E. coli. But it\u2019s good to know that it\u2019s manageable.", a: "Yes, it is. We used a yeast strain called BCY123, which contains the galactose induction system. For protein induction in yeast, this system is necessary. If you use another yeast strain, make sure it has the capability for galactose induction." }),
+      /* @__PURE__ */ jsx69(
+        QaBox,
+        {
+          q: "Got it, we will consider using Gibson assembly. Once we clone our mutation candidates into your plasmid, we\u2019ll express the RNA-protein complex in yeast and purify it from there. Is that correct?",
+          a: "Yes, that's the right approach. The plasmid we used has an MBP-tag for purification, which works better than a His-tag. It avoids the high background that His-tags often introduce."
+        }
+      ),
+      /* @__PURE__ */ jsx69(
+        QaBox,
+        {
+          q: "Thank you for this advice. We also have a question about the yeast strain you used, BCY123. Is it crucial to use this specific strain, or could we use an alternative as long as it supports galactose induction?",
+          a: "In theory, you can use any yeast strain that allows galactose induction. However, I recommend following the working protocol with BCY123 since it has already been proven to work. It\u2019s the safest way to ensure consistency in your experiments."
+        }
+      ),
+      /* @__PURE__ */ jsx69(
+        QaBox,
+        {
+          q: "Perfect, thank you very much for all your detailed answers! That would be it for the interview, it was a pleasure getting to know you!",
+          a: "Thank you! I\u2019ll be in Tokyo at RIKEN, one of the top science institutes in Japan. If you know any German students interested in coming to Japan, please let them know. We have various opportunities for internships or short stays."
+        }
+      ),
+      /* @__PURE__ */ jsx69(
+        QaBox,
+        {
+          q: "That\u2019s wonderful to hear. Thank you so much for your time and valuable insights.",
+          a: "My pleasure. I wish you the best of luck with your project. Feel free to reach out anytime. Goodbye!"
+        }
+      )
+    ] }),
+    pictureurl_interview: "https://static.igem.wiki/teams/5247/integrated-human-practices/saito.webp"
+  },
+  {
+    title: "Dr. rer. nat. ",
+    vorname: "Marcus",
+    nachnname: "Berger",
+    job: "GXP ",
+    affiliation: "Expert",
+    pictureurl: pics["gxpexpert"],
+    tag: "Industry",
+    language: "de",
+    heading: "Deep Dive into Good Practise, GxP ",
+    interviewtabid: "gxpexpert",
+    quoteNachname: "Berger, GxP Expert",
+    quoteVorname: "Dr. rer. nat. Marcus",
+    quote: "Minimum requirement: Acute toxicity study on animals - important for calculating the starting dose for humans. In addition, pharmacological studies, genotoxic studies and immunotoxic studies. In your case also chronic toxicity studies.",
+    aimofcontact: [/* @__PURE__ */ jsxs47("p", { children: [
+      "The aim of our contact with GxP expert ",
+      /* @__PURE__ */ jsx69("a", { href: "https://gxpexpert.de/", children: "Dr. Marcus Berger" }),
+      " was to gather insights and ask questions about how to proceed with the Precyse project, clarifying the next steps required for its continued development, particularly concerning regulatory strategy, quality management, and clinical development. GxP, which stands for \u2018Good Practice\u2019 guidelines, encompasses various regulations and standards intended to ensure quality and compliance in the development and manufacturing of pharmaceutical and biopharmaceutical products. "
+    ] })],
+    insights: [/* @__PURE__ */ jsxs47("p", { children: [
+      "From the discussion with Dr. Berger expert, we gained several key insights into how to proceed with the Precyse project. First, it became clear that obtaining a Scientific Advice from the Paul-Ehrlich-Institut  ",
+      /* @__PURE__ */ jsx69("a", { href: " https://www.pei.de/DE/home/home-node.html", children: "(PEI)" }),
+      "is essential to get qualified feedback on our development project and align our regulatory strategy. The expert emphasized the need to collect and document preclinical data, including acute and chronic toxicity studies, genotoxicity, immunotoxicity, and carcinogenicity studies, as well as conducting safety pharmacology and biodistribution studies to ensure a thorough understanding of the substance's mechanism of action. The expert also provided guidance on how to establish a GxP-compliant quality management system (QMS), stressing the importance of setting up a robust SOP system for manufacturing, preclinical, and clinical development. This system must adhere to ICH Q10 guidelines, ensuring that the quality control processes are in line with regulatory expectations. Furthermore, we learned about the critical initial steps for validating and verifying the manufacturing process, including defining the physical and chemical properties of the active substance and excipients, developing the pharmaceutical formulation, and identifying critical quality attributes (CQAs) and critical material attributes (CMAs). The ICH-GCP guidelines, which apply to all clinical trials, are essential for ensuring the integrity and safety of clinical development. These guidelines include E2A-E2F, which cover topics like clinical safety data management and adverse event reporting, E3 for clinical study reports, E5 for handling ethnic factors, and E9 for statistical principles. Additionally, E14 is crucial for managing cardiovascular risks, an especially important consideration for gene therapies, where monitoring for heart-related side effects is critical. Guidelines like E15 and E16 address biomarkers and pharmacogenomics, helping tailor clinical development to the specifics of the treatment being tested. Implementing these GCP requirements ensures compliance, patient safety, and data integrity throughout the trial process. In terms of process scale-up, the expert advised focusing on defining critical process parameters (CPPs) and ensuring that the process design and control strategies are well-understood before scaling production from the lab to a commercial scale. Additionally, we discussed the need to develop a control strategy, implement in-process controls, and ensure that process variability is continually monitored to support ongoing improvements. These insights clarified the immediate and future steps required to move Precyse forward, particularly in terms of regulatory submissions, quality management, and production scale-up. "
+    ] })],
+    implementation: [/* @__PURE__ */ jsx69("p", { children: "We used the insights from the expert to outline the possible next steps for Precyse. This included planning the collection of necessary preclinical data, setting up a GxP-compliant QMS, and preparing for regulatory submission. We also began drafting a strategy for process validation and scaling up production, ensuring that we are aligned with both regulatory and operational requirements. This expert feedback helped us establish a clearer path for the continued development of Precyse. " })],
+    summary: "In our consultation with GxP expert Dr. Marcus Berger, we gained key insights to advance the Precyse project, focusing on regulatory strategy, quality management, and clinical development. He emphasized obtaining Scientific Advice from the Paul-Ehrlich-Institut (PEI) and collecting essential preclinical data, including toxicity and biodistribution studies. We also learned how to theoretically set up a GxP-compliant quality management system (QMS) following ICH Q10 guidelines and the importance of critical quality attributes (CQAs) in process validation. Dr. Berger provided guidance on scaling production and following ICH-GCP guidelines for clinical trials, especially for managing risks in gene therapies. This expert advice helped us plan the next steps for Precyse, including preclinical data collection, QMS setup, and production scale-up.",
+    months: "September",
+    interview: /* @__PURE__ */ jsxs47(Fragment28, { children: [
+      /* @__PURE__ */ jsx69(QaBox, { q: "How do we define the regulatory strategy (e.g. IND/IMPD applications)?", a: "The regulatory strategy includes the planning of clinical and preclinical development in accordance with applicable regulations, such as CTR 536/2014 in Europe. Planning, conduct, documentation, and reporting applies to clinical trials." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "What initial steps are necessary to prepare the submission to the competent authorities?", a: "Firstly, a Scientific Advice should be requested from the competent authority. This enables early feedback on the planned development of the substance, which helps to optimise the submission strategy. Scientific advice from authorities such as the Paul Ehrlich Institute ensures that the requirements are correctly understood and implemented. It is also necessary to think about how you want to develop the substance." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "What preclinical data must be collected and documented in order to fulfil the authorisation requirements?", a: "Acute and chronic toxicity studies, genotoxicity and immunotoxicity studies, carcinogenicity studies, safety pharmacology and studies on biodistribution and the mechanism of action of the substance are required. Therefore, check the official website ICH." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Which authorities should we consult at an early stage in order to harmonise the regulatory requirements?", a: "In Germany, the Paul-Ehrlich-Institute is the central authority for drug development and authorisation." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "How do we start setting up a GxP-compliant quality management system (QMS)?", a: "The establishment of a QMS is based on the implementation of an SOP system for manufacturing, preclinical, and clinical development, based on the ICH Q10 guidelines." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "What initial validation and verification steps are required for our manufacturing processes?", a: "The physico-chemical properties of active ingredients and excipients must be determined. This includes the definition of the pharmaceutical formulation, the manufacturing process and the starting materials as well as the definition of Quality Target Product Profiles, Critical Quality Attributes, and Critical Material Attributes. The next step is process design and understanding the critical process parameters and scale-up principles. Then develop a control strategy with specifications for active substance, excipient & finished drug product. After that establish an in-process control and think about process capability and continuous improvement. Therefore measure variability of the manufacturing process." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "What measures are necessary to ensure documentation and traceability?", a: "A document control system must be implemented to ensure traceability and documentation." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "What steps are necessary to scale up the production processes from laboratory to production scale?", a: "GMP experts should be consulted for detailed information on scaling. I can't help you with this point. The GMP lecturers are the right people to talk to." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "How do we develop an initial clinical development strategy to move from preclinical studies to first-in-human (FIH) studies?", a: "The minimum requirements include acute toxicity studies in animals to calculate the starting dose for humans. In addition, pharmacological studies, genotoxic studies and immunotoxic studies. In your case, also chronic toxicity studies. Design of a FIH study for dose escalation, including starting dose, sequential study design and stopping rules. Identification of the toxic limit and the so-called Recommended Start Dose for Phase 2. The guidelines on quality, non-clinical and clinical requirements for investigational advanced therapy medicinal products in clinical trials can be found at the European Medicines Agency (EMA)." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Which GCP requirements need to be implemented to support clinical development?", a: "The ICH-GCP guidelines apply to all clinical trials and include the E2A - E2F; E3; E5; E9; E15; E16 guidelines and E14, which is important for the management of cardiovascular risks, especially important for gene therapies, among others." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "How do we conduct a risk analysis to identify challenges in development and launch?", a: "Risk analyses should be conducted for pharmaceutical, preclinical, and clinical development to identify potential challenges." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "Which product safety and efficacy risks need to be prioritised and managed?", a: "Risks to be prioritised include the starting materials, critical process steps in manufacturing and the bulk product. It is essential to carry out proactive process validation and establish a change management system." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "What initial steps do we need to take to analyse the market and prepare for market access?", a: "A stakeholder analysis of the market participants and a comparison of the new therapy with the standard therapy are required. Physician networks should be identified and the pricing strategy defined, taking into account the GBA and the health insurance funds." }),
+      /* @__PURE__ */ jsx69(QaBox, { q: "How do we develop a strategy for the protection of intellectual property and patents?", a: "The strategy should include patent applications in the following order: First for the active ingredient and the formulation (product patent), then the manufacturing route as process patent and followed by indication as use patent. Finally, a utility model may also be useful." })
+    ] })
+  },
+  {
+    vorname: "Physical ",
+    nachnname: "and Biophysical Chemistry ",
+    job: "Working group ",
+    affiliation: "University Bielefeld ",
+    language: "en",
+    pictureurl: pics["physik"],
+    tag: "Academia",
+    heading: "Performance of Experiments for LNP characterization ",
+    interviewtabid: "biophysik",
+    quote: "It was a great connection and a tremendous help in analyzing the LNP. They provided us with insights into some truly exciting methods.",
+    quoteNachname: "Baack, Teammember",
+    quoteVorname: "Anna",
+    aimofcontact: [/* @__PURE__ */ jsx69("p", { children: "For our project, we collaborated closely with the Physical Chemistry workgroup to properly categorize our lipid nanoparticles (LNPs). We reached out to them to leverage their expertise and ensure that our characterization was thorough and precise. Marco, Uwe, and Yvonne were instrumental in this effort, not only advising us on appropriate characterization methods but also actively assisting us during the experimental process and data analysis. " })],
+    insights: [/* @__PURE__ */ jsx69("p", { children: "We employed several analytical techniques, including Transmission Electron Microscopy (TEM), Scanning Electron Microscopy (SEM), Dynamic Light Scattering (DLS), and zeta potential analysis. TEM and SEM allowed us to visualize the structural morphology of the LNPs, providing detailed images to understand their size and shape on the nanometer scale. DLS was used to measure the size distribution of the particles in solution, while the zeta potential analysis gave us insight into the surface charge, which is crucial for understanding stability in suspension. " })],
+    implementation: [/* @__PURE__ */ jsx69("p", { children: "Thanks to the guidance and hands-on support of the Physical Chemistry team, we successfully completed these tests, gaining detailed insights into our LNPs that will be crucial for our project's further development. Their expertise not only streamlined the process but also ensured the reliability and accuracy of our results. Here a sneak peak of the results \u2013 take a look at the image of our SORT LNP taken via TEM. " })],
+    summary: "We collaborated with the Physical Chemistry workgroup to accurately characterize our lipid nanoparticles (LNPs). Their expertise, particularly from Marco, Uwe, and Yvonne, was invaluable in selecting and applying various analytical techniques, including Transmission Electron Microscopy (TEM), Scanning Electron Microscopy (SEM), Dynamic Light Scattering (DLS), and zeta potential analysis. This collaboration not only enhanced our understanding of the LNPs' size, shape, and stability but also ensured the reliability of our results. With their guidance, we successfully completed our tests, providing crucial insights for the project's advancement.",
+    months: "September",
+    pictureurl_interview: "https://static.igem.wiki/teams/5247/delivery/cryo-em.webp",
+    pictureurl_implementation: " https://static.igem.wiki/teams/5247/delivery/tem-sort-lnp1.webp"
+  },
+  {
+    title: "M.Sc.",
+    vorname: "Hakan",
+    nachnname: "Soyt\xFCrk",
+    job: "PhD Student Faculty of Biology / Working Group",
+    affiliation: "University Bielefeld ",
+    language: "en",
+    pictureurl: pics["hakan"],
+    tag: "Academia",
+    heading: "Helping and conducting experiments with yeast cells",
+    interviewtabid: "hakan",
+    quote: "Just hand me over the strain and the vector, I will try to take care of the rest.",
+    aimofcontact: [/* @__PURE__ */ jsxs47("p", { children: [
+      "After our interview with ",
+      /* @__PURE__ */ jsx69(HPLinktoOtherHPTab, { tab: "saito", text: "Makoto Saito" }),
+      "we learned, that he was not able to express the SpuFz1 protein in E. coli and recommended we used yeast to produce it. We were provided with a yeast expression strain and a suitable vector to clone the coding sequence into, but we lacked the necessary know-how and the facilities to transform yeast, select for positive transformants and cultivate the yeast.  "
+    ] })],
+    insights: [/* @__PURE__ */ jsx69("p", { children: "Hakan generously agreed to carry out the transformation and prepare potential positive transformants for cultivation for us, leaving only the purification of the proteins from the supernatant for us to do. " })],
+    implementation: [/* @__PURE__ */ jsx69("p", { children: "Hakan performed the transformation of a pPIC9K-n3SpuFz1 construct we created into Yeast. Unfortunately, the first attempt of transformation did not yield any positive clones. However, we value his spontaneous and extensive support as a great contribution to our project. " })],
+    summary: "We collaborated with the Physical Chemistry workgroup to accurately characterize our lipid nanoparticles (LNPs). Their expertise, particularly from Marco, Uwe, and Yvonne, was invaluable in selecting and applying various analytical techniques, including Transmission Electron Microscopy (TEM), Scanning Electron Microscopy (SEM), Dynamic Light Scattering (DLS), and zeta potential analysis. This collaboration not only enhanced our understanding of the LNPs' size, shape, and stability but also ensured the reliability of our results. With their guidance, we successfully completed our tests, providing crucial insights for the project's advancement.",
+    months: "September"
+  },
+  {
+    title: "M.Sc.",
+    vorname: "Benjamin",
+    nachnname: "Moorlach",
+    job: "PhD student Working Group Patel 'Fermentation and Formulation of Biologicals and Chemicals'",
+    affiliation: "at FH Bielefeld",
+    pictureurl: pics["moorlach"],
+    tag: "Academia",
+    heading: "Gathering information about Chitosan coating for RNA protection",
+    interviewtabid: "moorlach",
+    language: "de",
+    quote: "Chitosan can stabilize RNA effectively, making it ideal for our formulations, but we must ensure the right charge ratio and particle size for successful LNP encapsulation.",
+    quoteNachname: "Moorlach, Expert for Chitosan coding",
+    quoteVorname: "Benjamin",
+    aimofcontact: [/* @__PURE__ */ jsx69("p", { children: "The aim of the contact with Benjamin Willem Moorlach, M.Sc., from the Department of Engineering and Mathematics, was to gain a deeper understanding of how Chitosan could be applied in lipid-based nanoparticles (LNPs) and to explore its potential role in our project. We had several questions focusing on the properties of Chitosan, its advantages and disadvantages, and how it could be integrated into LNPs. Benjamin Moorlach provided extensive insights into Chitosan\u2019s interactions with RNA, its behavior, and how we might leverage it for our formulations. " })],
+    insights: [/* @__PURE__ */ jsx69("p", { children: "From our discussion, we gained valuable insights into the unique properties of Chitosan, a cationic polymer with significant potential to stabilize RNA. Notably, Chitosan offers strong protection against RNases, making it highly beneficial for formulations like lipid-based nanoparticles (LNPs). Another key feature is its heat stability, withstanding temperatures up to 121\xB0C, which makes it suitable for processing methods such as spray drying. However, at higher concentrations (0.5% or more), Chitosan can become toxic, suffocating cells and displaying antimicrobial properties. While it differs from PEG and cannot serve as a direct alternative, Chitosan can be a valuable complement, especially in stabilizing RNA within LNPs. A critical point Benjamin emphasized is that Chitosan must be in an acidic environment, typically with a pH range of 4 to 6, to remain positively charged. This positive charge is essential for its effective interaction with RNA and successful integration into the LNP system. One of the most important attributes of Chitosan is its ability to form complexes with RNA, offering a high degree of protection, which is crucial for the stability of LNP formulations. This characteristic makes Chitosan particularly advantageous in enhancing RNA stability during processes like spray drying. However, incorporating Chitosan directly into the lipid shell of LNPs poses challenges due to its hydrophilic nature and incompatible charge ratios, which prevent its use as an external coating on LNPs. Instead, it is more suitable for forming stable RNA-Chitosan complexes that can be encapsulated within the LNP structure, ensuring improved stability and protection." })],
+    implementation: [/* @__PURE__ */ jsx69("p", { children: "We have integrated the information by primarily using Chitosan as an RNA stabilizer, rather than embedding it directly into the LNP lipid shell. Benjamin suggested forming Chitosan-RNA complexes first and then encapsulating them within LNPs to ensure the RNA remains stable and functional. For this, Chitosan with a low molecular weight (around 5 kDa) is ideal, as it helps produce smaller particles that can be efficiently encapsulated. Additionally, Benjamin recommended starting with small-scale tests (about 100 \xB5L) before moving to larger formulations. The ratio of RNA to Chitosan is key to creating negatively charged particles, and a 2:1 ratio should be maintained. We will verify successful encapsulation using microscopic analysis and gel electrophoresis. This knowledge has directly shaped our approach to using Chitosan. Our focus is now on forming stable RNA-Chitosan complexes, which can be encapsulated in LNPs. We\u2019ve also learned the importance of optimizing concentrations to prevent aggregation or toxicity while ensuring the particles stay within the desired nanometer range. Microscopy and electrophoresis will now be key methods in our protocol to confirm complete RNA encapsulation within the LNPs. " })],
+    summary: "In summary, the insights from Benjamin\u2019s expertise were crucial in shaping our understanding of how to integrate Chitosan into our LNP formulations. Chitosan\u2019s protective abilities for RNA, along with its heat stability, make it a valuable component in our project. However, its hydrophilic and cationic nature presents challenges for direct integration into LNP lipid shells, so we are focusing on its use as an encapsulation for the RNA. Benjamin\u2019s advice on concentrations, molecular weight, and complex formation gave us a clear path forward, which will be validated through experimental testing. ",
+    months: "september"
+  },
+  {
+    title: "Priv. Doz. Dr. med.",
+    vorname: "Frank",
+    nachnname: "Brasch",
+    pictureurl: pics["brasch"],
+    job: "Head of Pathology",
+    affiliation: "Pathology of clinic Bielefeld Mitte",
+    tag: "Academia",
+    heading: "Collaboration with the pathology of clinic mitte",
+    interviewtabid: "kathleenspunkt",
+    quote: "I'd like to especially thank Leonie Hose \u2013 without her support in facilitating the staining process and the collaboration with pathology, much of this wouldn't have been possible.",
+    quoteNachname: "Susat, Teammember",
+    quoteVorname: "Kathleen",
+    aimofcontact: [/* @__PURE__ */ jsx69("p", { children: "The aim of contacting the pathology department was to use their expertise and equipment to properly embed the transwell filters with air-liquid interface (ALI) cultures in formalin-fixed paraffin-embedded (FFPE) tissue. This would allow us to further process and analyse the cultures. Specifically, we asked for their help in embedding,#sectioning using a microtome, and applying specialised staining techniques such as hematoxylin and eosin (HE) and periodic acid-Schiff (PAS) staining. These methods would provide us with the necessary histological detail to assess the structure and composition of ALI cultures." })],
+    insights: [/* @__PURE__ */ jsx69("p", { children: "Through this collaboration with the pathology department, we gained valuable insight into the structural integrity and differentiation of our ALI cultures. HE staining provided detailed information on the overall morphology of the cells, allowing us to assess cellular architecture, tissue organisation and any potential abnormalities. PAS staining provided additional insight by highlighting the presence of polysaccharides and mucosal substances, which are important indicators of tissue differentiation and barrier function in epithelial cultures. This histological analysis confirmed that the cultures had developed the expected cell types and structures, confirming the success of our experimental conditions." })],
+    implementation: [/* @__PURE__ */ jsx69("p", { children: "The histological data obtained through the collaboration was instrumental in assessing the quality of our ALI cultures. By confirming that the cultures had developed properly, we were able to refine and optimise our experimental protocol. In particular, the information helped us to validate epithelial differentiation and assess the effectiveness of our culture techniques, and the ability to routinely use FFPE embedding, sectioning and special staining provided us with a robust set of tools for ongoing culture assessment and optimization in future experiments." })],
+    summary: "Collaboration with pathology was key to evaluating and validating ALI cultures, providing essential histological insights that refined protocols and established a reliable method for ongoing culture optimization.",
+    months: "october"
+  },
+  {
+    vorname: "Grand Jambooree in Paris",
+    nachnname: "",
+    pictureurl: pics["logo"],
+    job: "Team iGEM",
+    affiliation: "Bielfeld CeBiTec 2024",
+    tag: "Milestone",
+    heading: "Preparations for the Grand Jambooree in Paris",
+    interviewtabid: "jamboree",
+    quote: "I\u2019m really nervous about the judging session. It feels like all our hard work is leading up to this moment, and I just hope we make a strong impression!",
+    quoteNachname: "Guckes, Teammember",
+    quoteVorname: "Isabell",
+    type: "meta",
+    summary: "As the team gears up for the Grand Jambooree in Paris, our focus has been on finalizing our presentation materials, including a dynamic presentation video that showcases our project and research findings. We are preparing for various formats of engagement, such as presentations and talks, where we\u2019ll share our insights with fellow participants. Additionally, our poster session will provide an opportunity for interactive discussions, and we are bracing for the judging sessions that will critically evaluate our work.",
+    months: "october"
+  },
+  {
+    vorname: "Carry It Forward",
+    nachnname: "",
+    pictureurl: pics["logo"],
+    job: "Team iGEM",
+    affiliation: "Bielfeld CeBiTec 2024",
+    tag: "Milestone",
+    heading: "The future of our project PreCyse",
+    interviewtabid: "forward",
+    quote: "I hope to start my Master's thesis with this approach to build on the team's hard work and make a difference.",
+    quoteNachname: "Lange, Teammember",
+    quoteVorname: "Kaya",
+    type: "meta",
+    summary: [/* @__PURE__ */ jsx69("p", { children: "As we move forward with our project, our intention is to continue our research and development at our university. We believe that by building on our current findings, we can make significant contributions to the field. Additionally, we are considering reaching out to Mattjis Bulcaen at KU Leuven for potential collaboration in the future, as their expertise could further enhance our work." })],
+    months: "october"
+  },
+  {
+    vorname: "Homecoming",
+    nachnname: "",
+    pictureurl: pics["logo"],
+    job: "Team iGEM",
+    affiliation: "Bielfeld CeBiTec 2024",
+    tag: "Milestone",
+    heading: "The homecoming event at Bielefeld University with subsequent CeBiTec VIP Reception ",
+    interviewtabid: "forward",
+    quote: "",
+    quoteNachname: "Michalek, Teammember",
+    quoteVorname: "Christian",
+    type: "meta",
+    summary: [/* @__PURE__ */ jsx69("p", { children: "As we move forward with our project, our intention is to continue our research and development at our university. We believe that by building on our current findings, we can make significant contributions to the field. Additionally, we are considering reaching out to Mattjis Bulcaen at KU Leuven for potential collaboration in the future, as their expertise could further enhance our work." })],
+    months: "october"
+  },
+  {
+    vorname: "Carry It Forward",
+    nachnname: "",
+    pictureurl: pics["logo"],
+    job: "Team iGEM",
+    affiliation: "Bielfeld CeBiTec 2024",
+    tag: "Milestone",
+    heading: "The future of our project PreCyse",
+    interviewtabid: "forward",
+    quote: "I hope to start my Master's thesis with this approach to build on the team's hard work and make a difference.",
+    quoteNachname: "Lange, Teammember",
+    quoteVorname: "Kaya",
+    type: "meta",
+    summary: [/* @__PURE__ */ jsx69("p", { children: "As we move forward with our project, our intention is to continue our research and development at our university. We believe that by building on our current findings, we can make significant contributions to the field. Additionally, we are considering reaching out to Mattjis Bulcaen at KU Leuven for potential collaboration in the future, as their expertise could further enhance our work." })],
+    months: "october"
+  }
+];
+
+// src/components/HorizontalTimeline.tsx
+import { jsx as jsx70, jsxs as jsxs48 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/components/HP-timeline.tsx
+import { jsx as jsx71, jsxs as jsxs49 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/contents/Human Practices/Conclisuin.tsx
+import { Fragment as Fragment29, jsx as jsx72, jsxs as jsxs50 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/contents/Human Practices/Feedback.tsx
+import { Fragment as Fragment30, jsx as jsx73, jsxs as jsxs51 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/contents/Human Practices/HP svgs/hp3.tsx
+import { jsx as jsx74, jsxs as jsxs52 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/contents/Human Practices/HP svgs/mendelows.tsx
+import { jsx as jsx75, jsxs as jsxs53 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/contents/Human Practices/HP svgs/stakeholder-management.tsx
+import { jsx as jsx76, jsxs as jsxs54 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/contents/Human Practices/HP svgs/swots.tsx
+import { jsx as jsx77, jsxs as jsxs55 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/contents/Human Practices/HP svgs/understanding.tsx
+import { jsx as jsx78, jsxs as jsxs56 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/contents/Human Practices/IHP.tsx
+import { jsx as jsx79, jsxs as jsxs57 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/contents/Human Practices/Further Engagement/Collaborations.tsx
+import { jsx as jsx80, jsxs as jsxs58 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/sources/education-souces.tsx
+import { jsx as jsx81 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/contents/Human Practices/Further Engagement/Education.tsx
+import { jsx as jsx82, jsxs as jsxs59 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/contents/Human Practices/Further Engagement/Entrepreneurship.tsx
+import { jsx as jsx83, jsxs as jsxs60 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/contents/Human Practices/Further Engagement/Outreach.tsx
+import { jsx as jsx84, jsxs as jsxs61 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/contents/Human Practices/Further Engagement/Partnerships.tsx
+import { jsx as jsx85, jsxs as jsxs62 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/contents/Human Practices/Further Engagement/FurtherEngagement.tsx
+import { jsx as jsx86, jsxs as jsxs63 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/contents/Human Practices/Further Engagement/SupMaterial.tsx
+import { jsx as jsx87, jsxs as jsxs64 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/contents/Human Practices/HP-abstract.tsx
+import { jsx as jsx88, jsxs as jsxs65 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/contents/Human Practices/human-practices.tsx
+import { jsx as jsx89, jsxs as jsxs66 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/sidebars/hpS.tsx
+import { jsx as jsx90 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/contents/impressum.tsx
+import { Fragment as Fragment31, jsx as jsx91, jsxs as jsxs67 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/contents/partners.tsx
+import { Fragment as Fragment32, jsx as jsx92, jsxs as jsxs68 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/contents/supplementary-material.tsx
+import { Fragment as Fragment33, jsx as jsx93, jsxs as jsxs69 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/contents/interviews.tsx
+import { useEffect as useEffect9 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/index.js";
+import { useLocation as useLocation3 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react-router-dom/dist/main.js";
+import { Fragment as Fragment34, jsx as jsx94, jsxs as jsxs70 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/components/HeaderBox.tsx
+import { Fragment as Fragment35, jsx as jsx95, jsxs as jsxs71 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/headers/attribution-h.tsx
+import { jsx as jsx96 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/headers/cont-h.tsx
+import { jsx as jsx97 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/headers/desc-h.tsx
+import { jsx as jsx98 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/headers/home-h.tsx
+import { Fragment as Fragment36, jsx as jsx99 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/headers/hp-h.tsx
+import { jsx as jsx100 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/headers/imp-h.tsx
+import { jsx as jsx101 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/headers/note-h.tsx
+import { jsx as jsx102 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/headers/res-h.tsx
+import { jsx as jsx103 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/headers/safe-h.tsx
+import { jsx as jsx104 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/headers/team-h.tsx
+import { jsx as jsx105 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/headers/spons-h.tsx
+import { jsx as jsx106 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/headers/eng-h.tsx
+import { jsx as jsx107 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/headers/sup-h.tsx
+import { jsx as jsx108 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/sources/part-sources.tsx
+import { jsx as jsx109 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/contents/parts.tsx
+import { jsx as jsx110, jsxs as jsxs72 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/headers/part-h.tsx
+import { jsx as jsx111 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/components/Calendar/cal-content.tsx
+import { Fragment as Fragment37, jsx as jsx112, jsxs as jsxs73 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/components/Calendar/Calendar.tsx
+import { jsx as jsx113, jsxs as jsxs74 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+function showEntry(entry) {
+  const showentry = (_event) => {
+    let elementsToHide = document.getElementsByClassName("cal-entry");
+    for (let index = 0; index < elementsToHide.length; index++) {
+      elementsToHide[index].style.display = "none";
+    }
+    let entryBlock = document.getElementById(entry);
+    entryBlock.style.display = "block";
+  };
+  return showentry;
+}
+var Februar = /* @__PURE__ */ jsxs74("ul", { id: "February-dates", className: "days hideable", children: [
+  /* @__PURE__ */ jsx113("li", {}),
+  /* @__PURE__ */ jsx113("li", {}),
+  /* @__PURE__ */ jsx113("li", {}),
+  /* @__PURE__ */ jsx113("li", { children: "1" }),
+  /* @__PURE__ */ jsx113("li", { children: "2" }),
+  /* @__PURE__ */ jsx113("li", { children: "3" }),
+  /* @__PURE__ */ jsx113("li", { children: "4" }),
+  /* @__PURE__ */ jsx113("li", { children: "5" }),
+  /* @__PURE__ */ jsx113("li", { children: "6" }),
+  /* @__PURE__ */ jsx113("li", { children: "7" }),
+  /* @__PURE__ */ jsx113("li", { children: "8" }),
+  /* @__PURE__ */ jsx113("li", { children: "9" }),
+  /* @__PURE__ */ jsx113("li", { children: "10" }),
+  /* @__PURE__ */ jsx113("li", { children: "11" }),
+  /* @__PURE__ */ jsx113("li", { children: "12" }),
+  /* @__PURE__ */ jsx113("li", { children: "13" }),
+  /* @__PURE__ */ jsx113("li", { children: "14" }),
+  /* @__PURE__ */ jsx113("li", { children: "15" }),
+  /* @__PURE__ */ jsx113("li", { children: "16" }),
+  /* @__PURE__ */ jsx113("li", { children: "17" }),
+  /* @__PURE__ */ jsx113("li", { children: "18" }),
+  /* @__PURE__ */ jsx113("li", { children: "19" }),
+  /* @__PURE__ */ jsx113("li", { children: "20" }),
+  /* @__PURE__ */ jsx113("li", { children: "21" }),
+  /* @__PURE__ */ jsx113("li", { children: "22" }),
+  /* @__PURE__ */ jsx113("li", { children: "23" }),
+  /* @__PURE__ */ jsx113("li", { children: "24" }),
+  /* @__PURE__ */ jsx113("li", { children: "25" }),
+  /* @__PURE__ */ jsx113("li", { children: "26" }),
+  /* @__PURE__ */ jsx113("li", { children: /* @__PURE__ */ jsx113("a", { onClick: showEntry("february27"), children: /* @__PURE__ */ jsx113("span", { className: "active", children: "27" }) }) }),
+  /* @__PURE__ */ jsx113("li", { children: "28" }),
+  /* @__PURE__ */ jsx113("li", { children: /* @__PURE__ */ jsx113("a", { onClick: showEntry("february29"), children: /* @__PURE__ */ jsx113("span", { className: "active", children: "29" }) }) })
+] });
+var March = /* @__PURE__ */ jsxs74("ul", { id: "March-dates", className: "days hideable", style: { display: "none" }, children: [
+  /* @__PURE__ */ jsx113("li", {}),
+  /* @__PURE__ */ jsx113("li", {}),
+  /* @__PURE__ */ jsx113("li", {}),
+  /* @__PURE__ */ jsx113("li", {}),
+  /* @__PURE__ */ jsx113("li", { children: "1" }),
+  /* @__PURE__ */ jsx113("li", { children: "2" }),
+  /* @__PURE__ */ jsx113("li", { children: "3" }),
+  /* @__PURE__ */ jsx113("li", { children: "4" }),
+  /* @__PURE__ */ jsx113("li", { children: "5" }),
+  /* @__PURE__ */ jsx113("li", { children: "6" }),
+  /* @__PURE__ */ jsx113("li", { children: /* @__PURE__ */ jsx113("a", { onClick: showEntry("march7"), children: /* @__PURE__ */ jsx113("span", { className: "active", children: "7" }) }) }),
+  /* @__PURE__ */ jsx113("li", { children: "8" }),
+  /* @__PURE__ */ jsx113("li", { children: "9" }),
+  /* @__PURE__ */ jsx113("li", { children: "10" }),
+  /* @__PURE__ */ jsx113("li", { children: "11" }),
+  /* @__PURE__ */ jsx113("li", { children: /* @__PURE__ */ jsx113("a", { onClick: showEntry("march12"), children: /* @__PURE__ */ jsx113("span", { className: "active", children: "12" }) }) }),
+  /* @__PURE__ */ jsx113("li", { children: "13" }),
+  /* @__PURE__ */ jsx113("li", { children: /* @__PURE__ */ jsx113("a", { onClick: showEntry("march14"), children: /* @__PURE__ */ jsx113("span", { className: "active", children: "14" }) }) }),
+  /* @__PURE__ */ jsx113("li", { children: "15" }),
+  /* @__PURE__ */ jsx113("li", { children: "16" }),
+  /* @__PURE__ */ jsx113("li", { children: "17" }),
+  /* @__PURE__ */ jsx113("li", { children: "18" }),
+  /* @__PURE__ */ jsx113("li", { children: /* @__PURE__ */ jsx113("a", { onClick: showEntry("march19"), children: /* @__PURE__ */ jsx113("span", { className: "active", children: "19" }) }) }),
+  /* @__PURE__ */ jsx113("li", { children: "20" }),
+  /* @__PURE__ */ jsx113("li", { children: /* @__PURE__ */ jsx113("a", { onClick: showEntry("march21"), children: /* @__PURE__ */ jsx113("span", { className: "active", children: "21" }) }) }),
+  /* @__PURE__ */ jsx113("li", { children: "22" }),
+  /* @__PURE__ */ jsx113("li", { children: "23" }),
+  /* @__PURE__ */ jsx113("li", { children: "24" }),
+  /* @__PURE__ */ jsx113("li", { children: "25" }),
+  /* @__PURE__ */ jsx113("li", { children: "26" }),
+  /* @__PURE__ */ jsx113("li", { children: /* @__PURE__ */ jsx113("a", { onClick: showEntry("march27"), children: /* @__PURE__ */ jsx113("span", { className: "active", children: "27" }) }) }),
+  /* @__PURE__ */ jsx113("li", { children: "28" }),
+  /* @__PURE__ */ jsx113("li", { children: /* @__PURE__ */ jsx113("a", { onClick: showEntry("march29"), children: /* @__PURE__ */ jsx113("span", { className: "active", children: "29" }) }) }),
+  /* @__PURE__ */ jsx113("li", { children: "30" }),
+  /* @__PURE__ */ jsx113("li", { children: "31" })
+] });
+var April = /* @__PURE__ */ jsxs74("ul", { id: "April-dates", className: "days hideable", style: { display: "none" }, children: [
+  /* @__PURE__ */ jsx113("li", { children: "1" }),
+  /* @__PURE__ */ jsx113("li", { children: /* @__PURE__ */ jsx113("a", { onClick: showEntry("april2"), children: /* @__PURE__ */ jsx113("span", { className: "active", children: "2" }) }) }),
+  /* @__PURE__ */ jsx113("li", { children: "3" }),
+  /* @__PURE__ */ jsx113("li", { children: /* @__PURE__ */ jsx113("a", { onClick: showEntry("april4"), children: /* @__PURE__ */ jsx113("span", { className: "active", children: "4" }) }) }),
+  /* @__PURE__ */ jsx113("li", { children: "5" }),
+  /* @__PURE__ */ jsx113("li", { children: /* @__PURE__ */ jsx113("a", { onClick: showEntry("april6"), children: /* @__PURE__ */ jsx113("span", { className: "active", children: "6" }) }) }),
+  /* @__PURE__ */ jsx113("li", { children: "7" }),
+  /* @__PURE__ */ jsx113("li", { children: "8" }),
+  /* @__PURE__ */ jsx113("li", { children: "9" }),
+  /* @__PURE__ */ jsx113("li", { children: "10" }),
+  /* @__PURE__ */ jsx113("li", { children: /* @__PURE__ */ jsx113("a", { onClick: showEntry("april11"), children: /* @__PURE__ */ jsx113("span", { className: "active", children: "11" }) }) }),
+  /* @__PURE__ */ jsx113("li", { children: "12" }),
+  /* @__PURE__ */ jsx113("li", { children: "13" }),
+  /* @__PURE__ */ jsx113("li", { children: "14" }),
+  /* @__PURE__ */ jsx113("li", { children: "15" }),
+  /* @__PURE__ */ jsx113("li", { children: /* @__PURE__ */ jsx113("a", { onClick: showEntry("april16"), children: /* @__PURE__ */ jsx113("span", { className: "active", children: "16" }) }) }),
+  /* @__PURE__ */ jsx113("li", { children: "17" }),
+  /* @__PURE__ */ jsx113("li", { children: /* @__PURE__ */ jsx113("a", { onClick: showEntry("april18"), children: /* @__PURE__ */ jsx113("span", { className: "active", children: "18" }) }) }),
+  /* @__PURE__ */ jsx113("li", { children: "19" }),
+  /* @__PURE__ */ jsx113("li", { children: "20" }),
+  /* @__PURE__ */ jsx113("li", { children: "21" }),
+  /* @__PURE__ */ jsx113("li", { children: "22" }),
+  /* @__PURE__ */ jsx113("li", { children: /* @__PURE__ */ jsx113("a", { onClick: showEntry("april23"), children: /* @__PURE__ */ jsx113("span", { className: "active", children: "23" }) }) }),
+  /* @__PURE__ */ jsx113("li", { children: "24" }),
+  /* @__PURE__ */ jsx113("li", { children: /* @__PURE__ */ jsx113("a", { onClick: showEntry("april25"), children: /* @__PURE__ */ jsx113("span", { className: "active", children: "25" }) }) }),
+  /* @__PURE__ */ jsx113("li", { children: "26" }),
+  /* @__PURE__ */ jsx113("li", { children: "27" }),
+  /* @__PURE__ */ jsx113("li", { children: "28" }),
+  /* @__PURE__ */ jsx113("li", { children: "29" }),
+  /* @__PURE__ */ jsx113("li", { children: /* @__PURE__ */ jsx113("a", { onClick: showEntry("april30"), children: /* @__PURE__ */ jsx113("span", { className: "active", children: "30" }) }) })
+] });
+var May = /* @__PURE__ */ jsxs74("ul", { id: "May-dates", className: "days hideable", style: { display: "none" }, children: [
+  /* @__PURE__ */ jsx113("li", {}),
+  /* @__PURE__ */ jsx113("li", {}),
+  /* @__PURE__ */ jsx113("li", { children: "1" }),
+  /* @__PURE__ */ jsx113("li", { children: /* @__PURE__ */ jsx113("a", { onClick: showEntry("may2"), children: /* @__PURE__ */ jsx113("span", { className: "active", children: "2" }) }) }),
+  /* @__PURE__ */ jsx113("li", { children: "3" }),
+  /* @__PURE__ */ jsx113("li", { children: "4" }),
+  /* @__PURE__ */ jsx113("li", { children: "5" }),
+  /* @__PURE__ */ jsx113("li", { children: "6" }),
+  /* @__PURE__ */ jsx113("li", { children: /* @__PURE__ */ jsx113("a", { onClick: showEntry("may7"), children: /* @__PURE__ */ jsx113("span", { className: "active", children: "7" }) }) }),
+  /* @__PURE__ */ jsx113("li", { children: "8" }),
+  /* @__PURE__ */ jsx113("li", { children: "9" }),
+  /* @__PURE__ */ jsx113("li", { children: "10" }),
+  /* @__PURE__ */ jsx113("li", { children: "11" }),
+  /* @__PURE__ */ jsx113("li", { children: "12" }),
+  /* @__PURE__ */ jsx113("li", { children: "13" }),
+  /* @__PURE__ */ jsx113("li", { children: /* @__PURE__ */ jsx113("a", { onClick: showEntry("may14"), children: /* @__PURE__ */ jsx113("span", { className: "active", children: "14" }) }) }),
+  /* @__PURE__ */ jsx113("li", { children: "15" }),
+  /* @__PURE__ */ jsx113("li", { children: "16" }),
+  /* @__PURE__ */ jsx113("li", { children: "17" }),
+  /* @__PURE__ */ jsx113("li", { children: "18" }),
+  /* @__PURE__ */ jsx113("li", { children: "19" }),
+  /* @__PURE__ */ jsx113("li", { children: "20" }),
+  /* @__PURE__ */ jsx113("li", { children: "21" }),
+  /* @__PURE__ */ jsx113("li", { children: /* @__PURE__ */ jsx113("a", { onClick: showEntry("may22"), children: /* @__PURE__ */ jsx113("span", { className: "active", children: "22" }) }) }),
+  /* @__PURE__ */ jsx113("li", { children: "23" }),
+  /* @__PURE__ */ jsx113("li", { children: "24" }),
+  /* @__PURE__ */ jsx113("li", { children: "25" }),
+  /* @__PURE__ */ jsx113("li", { children: "26" }),
+  /* @__PURE__ */ jsx113("li", { children: "27" }),
+  /* @__PURE__ */ jsx113("li", { children: "28" }),
+  /* @__PURE__ */ jsx113("li", { children: "29" }),
+  /* @__PURE__ */ jsx113("li", { children: "30" }),
+  /* @__PURE__ */ jsx113("li", { children: "31" })
+] });
+
+// src/contents/project-documentation.tsx
+import { jsx as jsx114, jsxs as jsxs75 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/headers/prodesc-h.tsx
+import { jsx as jsx115 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/contents/judging.tsx
+import { Fragment as Fragment38, jsx as jsx116, jsxs as jsxs76 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/headers/judge-h.tsx
+import { jsx as jsx117 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/components/Loremipsum.tsx
+import { jsx as jsx118 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/contents/example.tsx
+import { Bar as Bar2, Doughnut, PolarArea } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react-chartjs-2/dist/index.js";
+import { Chart as ChartJS2, Tooltip as Tooltip2, Legend as Legend2, BarElement as BarElement2, CategoryScale as CategoryScale2, LinearScale as LinearScale2, Title as Title2, RadialLinearScale as RadialLinearScale2 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/chart.js/dist/chart.js";
+import { Fragment as Fragment39, jsx as jsx119, jsxs as jsxs77 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+ChartJS2.register(
+  CategoryScale2,
+  RadialLinearScale2,
+  LinearScale2,
+  BarElement2,
+  Title2,
+  Tooltip2,
+  Legend2
+);
+
+// src/sidebars/engS.tsx
+import { useEffect as useEffect10 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/index.js";
+import { jsx as jsx120, jsxs as jsxs78 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/sidebars/intS.tsx
+import { useEffect as useEffect11 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/index.js";
+import { jsx as jsx121, jsxs as jsxs79 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/sidebars/safeS.tsx
+import { jsx as jsx122 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/sidebars/none.tsx
+import { jsx as jsx123 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/contents/igem-bielefeld.tsx
+import { Fragment as Fragment40, jsx as jsx124, jsxs as jsxs80 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/headers/ibie-h.tsx
+import { jsx as jsx125 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/sources/methods-sources.tsx
+import { jsx as jsx126 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/contents/methods.tsx
+import { Fragment as Fragment41, jsx as jsx127, jsxs as jsxs81 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/headers/meth-h.tsx
+import { jsx as jsx128 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/sidebars/conS.tsx
+import { jsx as jsx129 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/sidebars/igbS.tsx
+import { jsx as jsx130 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/sidebars/jugS.tsx
+import { jsx as jsx131 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/sidebars/methS.tsx
+import { jsx as jsx132 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/sidebars/prtS.tsx
+import { jsx as jsx133 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/sidebars/resS.tsx
+import { jsx as jsx134 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/jsx-runtime.js";
+
+// src/utils/stringToSlug.ts
+function stringToSlug(string) {
+  let slug = String(string).toLowerCase();
+  slug = slug.replace(/[^a-z0-9-]/g, "-");
+  slug = slug.replace(/-+/g, "-");
+  const start = slug.search(/[^-]/);
+  const end = slug.search(/-+$/);
+  return slug.substring(start, end === -1 ? void 0 : end);
+}
+
+// src/utils/useScript.ts
+import { useEffect as useEffect12 } from "file:///C:/Studium/iGEM/Code/bielefeld-cebitec/node_modules/react/index.js";
+
+// vite.config.js
+var vite_config_default = () => {
+  const env = loadEnv("dev", process.cwd());
+  if (!env.VITE_TEAM_NAME) {
+    throw new Error("VITE_TEAM_NAME environment variable is not defined");
+  }
+  console.log(`VITE_TEAM_NAME: ${env.VITE_TEAM_NAME}`);
+  const baseSlug = stringToSlug(env.VITE_TEAM_NAME);
+  console.log("VITE_TEAM_NAME:", env.VITE_TEAM_NAME);
+  console.log("Base Slug:", baseSlug);
+  return defineConfig({
+    base: `/${stringToSlug(env.VITE_TEAM_NAME)}/`,
+    plugins: [react()],
+    build: {
+      outDir: "dist"
+    },
+    publicDir: "pubpub"
+  });
+};
+export {
+  vite_config_default as default
+};
+//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsidml0ZS5jb25maWcuanMiLCAic3JjL2NvbXBvbmVudHMvRmFkZUluLnRzeCIsICJzcmMvY29tcG9uZW50cy9CcmVhdGhlLnRzeCIsICJzcmMvY29tcG9uZW50cy9Qcm9ibGVtcy50c3giLCAic3JjL3V0aWxzL1RhYk5hdmlnYXRpb24udHMiLCAic3JjL2NvbXBvbmVudHMvSGVhZGluZ3MudHN4IiwgInNyYy9jb21wb25lbnRzL3ByZWN5c2UudHN4IiwgInNyYy9jb250ZW50cy9Ib21lLnRzeCIsICJzcmMvY29tcG9uZW50cy9CdXR0b25zLnRzeCIsICJzcmMvdXRpbHMvb3BlblRoZW0udHMiLCAic3JjL3V0aWxzL3VzZU5hdmlnYXRpb24udHMiLCAic3JjL2NvbXBvbmVudHMvc2VjdGlvbnMudHN4IiwgInNyYy9jb250ZW50cy90ZWFtLnRzeCIsICJzcmMvY29udGVudHMvYXR0cmlidXRpb25zLnRzeCIsICJzcmMvY29tcG9uZW50cy9RdW90ZXMudHN4IiwgInNyYy9jb21wb25lbnRzL1BkZnMudHN4IiwgInNyYy9jb21wb25lbnRzL1ZlcnRpY2FsVGltZWxpbmUudHN4IiwgInNyYy9jb21wb25lbnRzL1NsaWRlci50c3giLCAic3JjL3V0aWxzL2dvdG8udHMiLCAic3JjL2NvbXBvbmVudHMvU2Nyb2xsTGluay50c3giLCAic3JjL2NvbXBvbmVudHMvQkZILVRpbWVsaW5lLnRzeCIsICJzcmMvY29tcG9uZW50cy9QaG90by1ncmlkLnRzeCIsICJzcmMvY29tcG9uZW50cy9wb3N0ZXIudHN4IiwgInNyYy9jb250ZW50cy9Db250cmlidXRpb24vQkZIL2JmaC1hYm91dC50c3giLCAic3JjL2NvbnRlbnRzL0NvbnRyaWJ1dGlvbi9CRkgvcG9zdGVyZ2FsbGVyeS50c3giLCAic3JjL2NvbnRlbnRzL0NvbnRyaWJ1dGlvbi9CRkgvYmZoLnRzeCIsICJzcmMvY29udGVudHMvQ29udHJpYnV0aW9uL2NvbGxhYnMudHN4IiwgInNyYy9jb250ZW50cy9Db250cmlidXRpb24vcGF0aWVudC1jb250cmlidXRpb24udHN4IiwgInNyYy9jb250ZW50cy9Db250cmlidXRpb24vc2FmZXR5LWNvbnRyaWJ1dGlvbi50c3giLCAic3JjL2NvbnRlbnRzL0NvbnRyaWJ1dGlvbi9XaWtpL3dpa2ktdGFicy50c3giLCAic3JjL2NvbnRlbnRzL0NvbnRyaWJ1dGlvbi9XaWtpL3dpa2ktc3RhcnQudHN4IiwgInNyYy9jb21wb25lbnRzL0NvbGxhcHNpYmxlLnRzeCIsICJzcmMvY29udGVudHMvQ29udHJpYnV0aW9uL1dpa2kvd2lraS1zb3VyY2VzLnRzeCIsICJzcmMvY29tcG9uZW50cy9GaWx0ZXIudHN4IiwgInNyYy9jb250ZW50cy9Db250cmlidXRpb24vV2lraS9GaWx0ZXJhYmxlcy50c3giLCAic3JjL2NvbXBvbmVudHMvQ29kZS50c3giLCAic3JjL2NvbnRlbnRzL0NvbnRyaWJ1dGlvbi9XaWtpL3Ryb3VibGUtZGF0YS50c3giLCAic3JjL2NvbnRlbnRzL0NvbnRyaWJ1dGlvbi9XaWtpL3Ryb3VibGVzaG9vdGluZy50c3giLCAic3JjL2NvbnRlbnRzL0NvbnRyaWJ1dGlvbi9XaWtpL3dpa2ktb3ZlcnZpZXcudHN4IiwgInNyYy9jb250ZW50cy9Db250cmlidXRpb24vV2lraS9XaWtpLWRvd25sb2Fkcy50c3giLCAic3JjL2NvbnRlbnRzL0NvbnRyaWJ1dGlvbi9XaWtpL3dpa2kudHN4IiwgInNyYy9jb250ZW50cy9Db250cmlidXRpb24vY29udHJpYnV0aW9uLnRzeCIsICJzcmMvY29tcG9uZW50cy9Cb3hlcy50c3giLCAic3JjL2NvbXBvbmVudHMvVGFicy50c3giLCAic3JjL2NvbXBvbmVudHMvR3JhcGgudHN4IiwgInNyYy9kYXRhL3N5bXB0b20tZGF0YS50c3giLCAic3JjL2RhdGEvZHJ1Zy1kYXRhLnRzeCIsICJzcmMvY29tcG9uZW50cy9Db21wbGV4LXN2Zy50c3giLCAic3JjL2NvbXBvbmVudHMvbWFrZVNvdXJjZXMudHN4IiwgInNyYy9zb3VyY2VzL2Rlc2NyaXB0aW9uLXNvdXJjZXMudHN4IiwgInNyYy9jb21wb25lbnRzL0ZpZ3VyZXMudHN4IiwgInNyYy9jb250ZW50cy9kZXNjcmlwdGlvbi50c3giLCAic3JjL3V0aWxzL2NyZWF0ZVNpZGViYXIudHN4IiwgInNyYy9zaWRlYmFycy9kZXNjUy50c3giLCAic3JjL2NvbXBvbmVudHMvTGluay50c3giLCAic3JjL3NvdXJjZXMvZW5nLXRyZi1zb3VyY2VzLnRzeCIsICJzcmMvc291cmNlcy9lbmctcmVwb3J0ZXItc291cmNlcy50c3giLCAic3JjL3NvdXJjZXMvZW5nLXBlLXNvdXJjZXMudHN4IiwgInNyYy9zb3VyY2VzL2VuZy1wZWctc291cmNlcy50c3giLCAic3JjL3NvdXJjZXMvZW5nLW5pY2thc2VzLXNvdXJjZXMudHN4IiwgInNyYy9zb3VyY2VzL2VuZy1kZWxpdmVyeS1zb3VyY2VzLnRzeCIsICJzcmMvY29udGVudHMvZW5naW5lZXJpbmcudHN4IiwgInNyYy9jb250ZW50cy9ub3RlYm9vay50c3giLCAic3JjL2NvbXBvbmVudHMvVGFibGUudHN4IiwgInNyYy9jb250ZW50cy9yZXN1bHRzLnRzeCIsICJzcmMvY29udGVudHMvc2FmZXR5LnRzeCIsICJzcmMvY29udGVudHMvSHVtYW4gUHJhY3RpY2VzL092ZXJ3aWV2LnRzeCIsICJzcmMvY29udGVudHMvSHVtYW4gUHJhY3RpY2VzL0ludHJvZHVjdGlvbi50c3giLCAic3JjL3NvdXJjZXMvam9zaHVhLWludi1zb3VyY2VzLnRzeCIsICJzcmMvc291cmNlcy9tYXR0aWotaW52LXNvdXJjZXMudHN4IiwgInNyYy9zb3VyY2VzL2xpdS1pbnYtc291cmNlcy50c3giLCAic3JjL3NvdXJjZXMvcm5oYWxlLXNvdXJjZXMudHN4IiwgInNyYy9zb3VyY2VzL3dpbXNjaGV5ZXItc291cmNlcy50c3giLCAic3JjL2RhdGEvaHB0aW1lbGluZWRhdGEudHN4IiwgInNyYy9jb21wb25lbnRzL0hvcml6b250YWxUaW1lbGluZS50c3giLCAic3JjL2NvbXBvbmVudHMvSFAtdGltZWxpbmUudHN4IiwgInNyYy9jb250ZW50cy9IdW1hbiBQcmFjdGljZXMvQ29uY2xpc3Vpbi50c3giLCAic3JjL2NvbnRlbnRzL0h1bWFuIFByYWN0aWNlcy9GZWVkYmFjay50c3giLCAic3JjL2NvbnRlbnRzL0h1bWFuIFByYWN0aWNlcy9IUCBzdmdzL2hwMy50c3giLCAic3JjL2NvbnRlbnRzL0h1bWFuIFByYWN0aWNlcy9IUCBzdmdzL21lbmRlbG93cy50c3giLCAic3JjL2NvbnRlbnRzL0h1bWFuIFByYWN0aWNlcy9IUCBzdmdzL3N0YWtlaG9sZGVyLW1hbmFnZW1lbnQudHN4IiwgInNyYy9jb250ZW50cy9IdW1hbiBQcmFjdGljZXMvSFAgc3Zncy9zd290cy50c3giLCAic3JjL2NvbnRlbnRzL0h1bWFuIFByYWN0aWNlcy9IUCBzdmdzL3VuZGVyc3RhbmRpbmcudHN4IiwgInNyYy9jb250ZW50cy9IdW1hbiBQcmFjdGljZXMvSUhQLnRzeCIsICJzcmMvY29udGVudHMvSHVtYW4gUHJhY3RpY2VzL0Z1cnRoZXIgRW5nYWdlbWVudC9Db2xsYWJvcmF0aW9ucy50c3giLCAic3JjL3NvdXJjZXMvZWR1Y2F0aW9uLXNvdWNlcy50c3giLCAic3JjL2NvbnRlbnRzL0h1bWFuIFByYWN0aWNlcy9GdXJ0aGVyIEVuZ2FnZW1lbnQvRWR1Y2F0aW9uLnRzeCIsICJzcmMvY29udGVudHMvSHVtYW4gUHJhY3RpY2VzL0Z1cnRoZXIgRW5nYWdlbWVudC9FbnRyZXByZW5ldXJzaGlwLnRzeCIsICJzcmMvY29udGVudHMvSHVtYW4gUHJhY3RpY2VzL0Z1cnRoZXIgRW5nYWdlbWVudC9PdXRyZWFjaC50c3giLCAic3JjL2NvbnRlbnRzL0h1bWFuIFByYWN0aWNlcy9GdXJ0aGVyIEVuZ2FnZW1lbnQvUGFydG5lcnNoaXBzLnRzeCIsICJzcmMvY29udGVudHMvSHVtYW4gUHJhY3RpY2VzL0Z1cnRoZXIgRW5nYWdlbWVudC9GdXJ0aGVyRW5nYWdlbWVudC50c3giLCAic3JjL2NvbnRlbnRzL0h1bWFuIFByYWN0aWNlcy9GdXJ0aGVyIEVuZ2FnZW1lbnQvU3VwTWF0ZXJpYWwudHN4IiwgInNyYy9jb250ZW50cy9IdW1hbiBQcmFjdGljZXMvSFAtYWJzdHJhY3QudHN4IiwgInNyYy9jb250ZW50cy9IdW1hbiBQcmFjdGljZXMvaHVtYW4tcHJhY3RpY2VzLnRzeCIsICJzcmMvc2lkZWJhcnMvaHBTLnRzeCIsICJzcmMvY29udGVudHMvaW1wcmVzc3VtLnRzeCIsICJzcmMvY29udGVudHMvcGFydG5lcnMudHN4IiwgInNyYy9jb250ZW50cy9zdXBwbGVtZW50YXJ5LW1hdGVyaWFsLnRzeCIsICJzcmMvY29udGVudHMvaW50ZXJ2aWV3cy50c3giLCAic3JjL2NvbXBvbmVudHMvSGVhZGVyQm94LnRzeCIsICJzcmMvaGVhZGVycy9hdHRyaWJ1dGlvbi1oLnRzeCIsICJzcmMvaGVhZGVycy9jb250LWgudHN4IiwgInNyYy9oZWFkZXJzL2Rlc2MtaC50c3giLCAic3JjL2hlYWRlcnMvaG9tZS1oLnRzeCIsICJzcmMvaGVhZGVycy9ocC1oLnRzeCIsICJzcmMvaGVhZGVycy9pbXAtaC50c3giLCAic3JjL2hlYWRlcnMvbm90ZS1oLnRzeCIsICJzcmMvaGVhZGVycy9yZXMtaC50c3giLCAic3JjL2hlYWRlcnMvc2FmZS1oLnRzeCIsICJzcmMvaGVhZGVycy90ZWFtLWgudHN4IiwgInNyYy9oZWFkZXJzL3Nwb25zLWgudHN4IiwgInNyYy9oZWFkZXJzL2VuZy1oLnRzeCIsICJzcmMvaGVhZGVycy9zdXAtaC50c3giLCAic3JjL3NvdXJjZXMvcGFydC1zb3VyY2VzLnRzeCIsICJzcmMvY29udGVudHMvcGFydHMudHN4IiwgInNyYy9oZWFkZXJzL3BhcnQtaC50c3giLCAic3JjL2NvbXBvbmVudHMvQ2FsZW5kYXIvY2FsLWNvbnRlbnQudHN4IiwgInNyYy9jb21wb25lbnRzL0NhbGVuZGFyL0NhbGVuZGFyLnRzeCIsICJzcmMvY29udGVudHMvcHJvamVjdC1kb2N1bWVudGF0aW9uLnRzeCIsICJzcmMvaGVhZGVycy9wcm9kZXNjLWgudHN4IiwgInNyYy9jb250ZW50cy9qdWRnaW5nLnRzeCIsICJzcmMvaGVhZGVycy9qdWRnZS1oLnRzeCIsICJzcmMvY29tcG9uZW50cy9Mb3JlbWlwc3VtLnRzeCIsICJzcmMvY29udGVudHMvZXhhbXBsZS50c3giLCAic3JjL3NpZGViYXJzL2VuZ1MudHN4IiwgInNyYy9zaWRlYmFycy9pbnRTLnRzeCIsICJzcmMvc2lkZWJhcnMvc2FmZVMudHN4IiwgInNyYy9zaWRlYmFycy9ub25lLnRzeCIsICJzcmMvY29udGVudHMvaWdlbS1iaWVsZWZlbGQudHN4IiwgInNyYy9oZWFkZXJzL2liaWUtaC50c3giLCAic3JjL3NvdXJjZXMvbWV0aG9kcy1zb3VyY2VzLnRzeCIsICJzcmMvY29udGVudHMvbWV0aG9kcy50c3giLCAic3JjL2hlYWRlcnMvbWV0aC1oLnRzeCIsICJzcmMvc2lkZWJhcnMvY29uUy50c3giLCAic3JjL3NpZGViYXJzL2lnYlMudHN4IiwgInNyYy9zaWRlYmFycy9qdWdTLnRzeCIsICJzcmMvc2lkZWJhcnMvbWV0aFMudHN4IiwgInNyYy9zaWRlYmFycy9wcnRTLnRzeCIsICJzcmMvc2lkZWJhcnMvcmVzUy50c3giLCAic3JjL3V0aWxzL3N0cmluZ1RvU2x1Zy50cyIsICJzcmMvdXRpbHMvdXNlU2NyaXB0LnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyJjb25zdCBfX3ZpdGVfaW5qZWN0ZWRfb3JpZ2luYWxfZGlybmFtZSA9IFwiQzpcXFxcU3R1ZGl1bVxcXFxpR0VNXFxcXENvZGVcXFxcYmllbGVmZWxkLWNlYml0ZWNcIjtjb25zdCBfX3ZpdGVfaW5qZWN0ZWRfb3JpZ2luYWxfZmlsZW5hbWUgPSBcIkM6XFxcXFN0dWRpdW1cXFxcaUdFTVxcXFxDb2RlXFxcXGJpZWxlZmVsZC1jZWJpdGVjXFxcXHZpdGUuY29uZmlnLmpzXCI7Y29uc3QgX192aXRlX2luamVjdGVkX29yaWdpbmFsX2ltcG9ydF9tZXRhX3VybCA9IFwiZmlsZTovLy9DOi9TdHVkaXVtL2lHRU0vQ29kZS9iaWVsZWZlbGQtY2ViaXRlYy92aXRlLmNvbmZpZy5qc1wiO2ltcG9ydCB7IGRlZmluZUNvbmZpZywgbG9hZEVudiB9IGZyb20gXCJ2aXRlXCI7XHJcbmltcG9ydCByZWFjdCBmcm9tIFwiQHZpdGVqcy9wbHVnaW4tcmVhY3RcIjtcclxuaW1wb3J0IHsgc3RyaW5nVG9TbHVnIH0gZnJvbSBcIi4vc3JjL3V0aWxzXCI7XHJcblxyXG4vLyBodHRwczovL3ZpdGVqcy5kZXYvY29uZmlnL1xyXG5leHBvcnQgZGVmYXVsdCAoKSA9PiB7XHJcbiAgY29uc3QgZW52ID0gbG9hZEVudihcImRldlwiLCBwcm9jZXNzLmN3ZCgpKTtcclxuICAgIC8vIFNpY2hlcnN0ZWxsZW4sIGRhc3MgZGllIFVtZ2VidW5nc3ZhcmlhYmxlIHZvcmhhbmRlbiBpc3RcclxuICBpZiAoIWVudi5WSVRFX1RFQU1fTkFNRSkge1xyXG4gICAgdGhyb3cgbmV3IEVycm9yKFwiVklURV9URUFNX05BTUUgZW52aXJvbm1lbnQgdmFyaWFibGUgaXMgbm90IGRlZmluZWRcIik7XHJcbiAgfVxyXG4gIC8vIERlYnVnZ2luZy1Mb2csIHVtIGRlbiBXZXJ0IGRlciBVbWdlYnVuZ3N2YXJpYWJsZSB6dSBcdTAwRkNiZXJwclx1MDBGQ2ZlblxyXG4gIGNvbnNvbGUubG9nKGBWSVRFX1RFQU1fTkFNRTogJHtlbnYuVklURV9URUFNX05BTUV9YCk7XHJcblxyXG5cclxuICBjb25zdCBiYXNlU2x1ZyA9IHN0cmluZ1RvU2x1ZyhlbnYuVklURV9URUFNX05BTUUpO1xyXG5cclxuICBjb25zb2xlLmxvZyhcIlZJVEVfVEVBTV9OQU1FOlwiLCBlbnYuVklURV9URUFNX05BTUUpOyAvLyBEZWJ1Z2dpbmctQXVzZ2FiZVxyXG4gIGNvbnNvbGUubG9nKFwiQmFzZSBTbHVnOlwiLCBiYXNlU2x1Zyk7IC8vIERlYnVnZ2luZy1BdXNnYWJlXHJcbiAgXHJcbiAgcmV0dXJuIGRlZmluZUNvbmZpZyh7XHJcbiAgICBiYXNlOiBgLyR7c3RyaW5nVG9TbHVnKGVudi5WSVRFX1RFQU1fTkFNRSl9L2AsXHJcbiAgICBwbHVnaW5zOiBbcmVhY3QoKV0sXHJcbiAgICBidWlsZDoge1xyXG4gICAgICBvdXREaXI6IFwiZGlzdFwiLFxyXG4gICAgfSxcclxuICAgIHB1YmxpY0RpcjogJ3B1YnB1YicsXHJcbiAgfSk7XHJcbiAgXHJcbn07XHJcbiIsICJpbXBvcnQgeyB1c2VFZmZlY3QsIHVzZVJlZiwgdXNlU3RhdGUgfSBmcm9tIFwicmVhY3RcIjtcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBGYWRlSW4oe2ZpbGVwYXRoLCBiZ306e2ZpbGVwYXRoOiBzdHJpbmcsIGJnOiBzdHJpbmd9KXtcclxuICAgIGNvbnN0IFtpc1Zpc2libGUsIHNldFZpc2libGVdID0gdXNlU3RhdGUoZmFsc2UpO1xyXG4gICAgY29uc3QgZG9tUmVmID0gdXNlUmVmKG51bGwpITtcclxuICAgIHVzZUVmZmVjdCgoKSA9PiB7XHJcbiAgICAgICAgY29uc3Qgb2JzZXJ2ZXIgPSBuZXcgSW50ZXJzZWN0aW9uT2JzZXJ2ZXIoZW50cmllcyA9PiB7XHJcbiAgICAgICAgZW50cmllcy5mb3JFYWNoKGVudHJ5ID0+IHNldFZpc2libGUoZW50cnkuaXNJbnRlcnNlY3RpbmcpKTtcclxuICAgICAgICB9KTtcclxuICAgICAgICBvYnNlcnZlci5vYnNlcnZlKGRvbVJlZi5jdXJyZW50ISk7XHJcbiAgICB9LCBbXSk7XHJcblxyXG4gICAgcmV0dXJuIChcclxuICAgICAgICA8PlxyXG4gICAgICAgICAgICA8ZGl2IFxyXG4gICAgICAgICAgICAgICAgY2xhc3NOYW1lPSdjb2wnXHJcbiAgICAgICAgICAgICAgICBzdHlsZT17eyAnaGVpZ2h0JzogJzEwMHZoJ319XHJcbiAgICAgICAgICAgICAgICByZWY9e2RvbVJlZn0+XHJcbiAgICAgICAgICAgICAgICAgICAgPGltZyBcclxuICAgICAgICAgICAgICAgICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICdwb3NpdGlvbic6ICdmaXhlZCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAndG9wJzogJzIwdmgnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2xlZnQnOiAnMjB2dycsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnd2lkdGgnOiAnNjB2dycsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnaGVpZ2h0JzogJzYwdmgnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3RyYW5zaXRpb24nOiAnb3BhY2l0eSAwLjZzIGVhc2Utb3V0JyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICdvcGFjaXR5JzogYCR7aXNWaXNpYmxlID8gJzEnIDogJzAnfWAsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAndmlzaWJpbGl0eSc6IGAke2lzVmlzaWJsZSA/ICd2aXNpYmxlJyA6ICdoaWRkZW4nfWBcclxuICAgICAgICAgICAgICAgICAgICAgICAgfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgc3JjPXtiZ30+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9pbWc+XHJcbiAgICAgICAgICAgICAgICAgICAgPGltZyBcclxuICAgICAgICAgICAgICAgICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICdwb3NpdGlvbic6ICdmaXhlZCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAndG9wJzogJzIwdmgnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2xlZnQnOiAnMjB2dycsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnd2lkdGgnOiAnNjB2dycsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnaGVpZ2h0JzogJzYwdmgnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3RyYW5zaXRpb24nOiAnb3BhY2l0eSAwLjZzIGVhc2Utb3V0JyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICdvcGFjaXR5JzogYCR7aXNWaXNpYmxlID8gJzEnIDogJzAnfWAsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAndmlzaWJpbGl0eSc6IGAke2lzVmlzaWJsZSA/ICd2aXNpYmxlJyA6ICdoaWRkZW4nfWBcclxuICAgICAgICAgICAgICAgICAgICAgICAgfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgc3JjPXtmaWxlcGF0aH0+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9pbWc+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICB7LyogU3BhY2luZyBCbG9jayAqL31cclxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J2NvbCcgc3R5bGU9e3sgJ2hlaWdodCc6ICc5NXZoJyB9fT48L2Rpdj5cclxuICAgICAgICA8Lz5cclxuICAgICk7XHJcbn1cclxuXHJcbiIsICJpbXBvcnQgeyB1c2VFZmZlY3QsIHVzZVJlZiwgdXNlU3RhdGUgfSBmcm9tIFwicmVhY3RcIjtcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBCcmVhdGhlKCl7XHJcbiAgICBjb25zdCBbaXNWaXNpYmxlLCBzZXRWaXNpYmxlXSA9IHVzZVN0YXRlKGZhbHNlKTtcclxuICAgIGNvbnN0IGRvbVJlZiA9IHVzZVJlZihudWxsKSE7XHJcbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xyXG4gICAgICAgIGNvbnN0IG9ic2VydmVyID0gbmV3IEludGVyc2VjdGlvbk9ic2VydmVyKGVudHJpZXMgPT4ge1xyXG4gICAgICAgIGVudHJpZXMuZm9yRWFjaChlbnRyeSA9PiBzZXRWaXNpYmxlKGVudHJ5LmlzSW50ZXJzZWN0aW5nKSk7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgb2JzZXJ2ZXIub2JzZXJ2ZShkb21SZWYuY3VycmVudCEpO1xyXG4gICAgfSwgW10pO1xyXG5cclxuICAgIGNvbnN0IFtpc1Zpc2libGUyLCBzZXRWaXNpYmxlMl0gPSB1c2VTdGF0ZShmYWxzZSk7XHJcbiAgICBjb25zdCBkb21SZWYyID0gdXNlUmVmKG51bGwpITtcclxuICAgIHVzZUVmZmVjdCgoKSA9PiB7XHJcbiAgICAgICAgY29uc3Qgb2JzZXJ2ZXIgPSBuZXcgSW50ZXJzZWN0aW9uT2JzZXJ2ZXIoZW50cmllcyA9PiB7XHJcbiAgICAgICAgZW50cmllcy5mb3JFYWNoKGVudHJ5ID0+IHNldFZpc2libGUyKGVudHJ5LmlzSW50ZXJzZWN0aW5nKSk7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgb2JzZXJ2ZXIub2JzZXJ2ZShkb21SZWYyLmN1cnJlbnQhKTtcclxuICAgIH0sIFtdKTtcclxuXHJcbiAgICBjb25zdCBbaXNWaXNpYmxlMywgc2V0VmlzaWJsZTNdID0gdXNlU3RhdGUoZmFsc2UpO1xyXG4gICAgY29uc3QgZG9tUmVmMyA9IHVzZVJlZihudWxsKSE7XHJcbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xyXG4gICAgICAgIGNvbnN0IG9ic2VydmVyID0gbmV3IEludGVyc2VjdGlvbk9ic2VydmVyKGVudHJpZXMgPT4ge1xyXG4gICAgICAgIGVudHJpZXMuZm9yRWFjaChlbnRyeSA9PiBzZXRWaXNpYmxlMyhlbnRyeS5pc0ludGVyc2VjdGluZykpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIG9ic2VydmVyLm9ic2VydmUoZG9tUmVmMy5jdXJyZW50ISk7XHJcbiAgICB9LCBbXSk7XHJcbiAgICBcclxuICAgIGNvbnN0IFtpc1Zpc2libGU0LCBzZXRWaXNpYmxlNF0gPSB1c2VTdGF0ZShmYWxzZSk7XHJcbiAgICBjb25zdCBkb21SZWY0ID0gdXNlUmVmKG51bGwpITtcclxuICAgIHVzZUVmZmVjdCgoKSA9PiB7XHJcbiAgICAgICAgY29uc3Qgb2JzZXJ2ZXIgPSBuZXcgSW50ZXJzZWN0aW9uT2JzZXJ2ZXIoZW50cmllcyA9PiB7XHJcbiAgICAgICAgZW50cmllcy5mb3JFYWNoKGVudHJ5ID0+IHNldFZpc2libGU0KGVudHJ5LmlzSW50ZXJzZWN0aW5nKSk7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgb2JzZXJ2ZXIub2JzZXJ2ZShkb21SZWY0LmN1cnJlbnQhKTtcclxuICAgIH0sIFtdKTtcclxuXHJcbiAgICBcclxuICAgIGNvbnN0IFtpc1Zpc2libGU1LCBzZXRWaXNpYmxlNV0gPSB1c2VTdGF0ZShmYWxzZSk7XHJcbiAgICBjb25zdCBkb21SZWY1ID0gdXNlUmVmKG51bGwpITtcclxuICAgIHVzZUVmZmVjdCgoKSA9PiB7XHJcbiAgICAgICAgY29uc3Qgb2JzZXJ2ZXIgPSBuZXcgSW50ZXJzZWN0aW9uT2JzZXJ2ZXIoZW50cmllcyA9PiB7XHJcbiAgICAgICAgZW50cmllcy5mb3JFYWNoKGVudHJ5ID0+IHNldFZpc2libGU1KGVudHJ5LmlzSW50ZXJzZWN0aW5nKSk7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgb2JzZXJ2ZXIub2JzZXJ2ZShkb21SZWY1LmN1cnJlbnQhKTtcclxuICAgIH0sIFtdKTtcclxuXHJcbiAgICBcclxuICAgIGNvbnN0IFtpc1Zpc2libGU2LCBzZXRWaXNpYmxlNl0gPSB1c2VTdGF0ZShmYWxzZSk7XHJcbiAgICBjb25zdCBkb21SZWY2ID0gdXNlUmVmKG51bGwpITtcclxuICAgIHVzZUVmZmVjdCgoKSA9PiB7XHJcbiAgICAgICAgY29uc3Qgb2JzZXJ2ZXIgPSBuZXcgSW50ZXJzZWN0aW9uT2JzZXJ2ZXIoZW50cmllcyA9PiB7XHJcbiAgICAgICAgZW50cmllcy5mb3JFYWNoKGVudHJ5ID0+IHNldFZpc2libGU2KGVudHJ5LmlzSW50ZXJzZWN0aW5nKSk7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgb2JzZXJ2ZXIub2JzZXJ2ZShkb21SZWY2LmN1cnJlbnQhKTtcclxuICAgIH0sIFtdKTtcclxuXHJcbiAgICBjb25zdCBbaXNWaXNpYmxlNywgc2V0VmlzaWJsZTddID0gdXNlU3RhdGUoZmFsc2UpO1xyXG4gICAgY29uc3QgZG9tUmVmNyA9IHVzZVJlZihudWxsKSE7XHJcbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xyXG4gICAgICAgIGNvbnN0IG9ic2VydmVyID0gbmV3IEludGVyc2VjdGlvbk9ic2VydmVyKGVudHJpZXMgPT4ge1xyXG4gICAgICAgIGVudHJpZXMuZm9yRWFjaChlbnRyeSA9PiBzZXRWaXNpYmxlNyhlbnRyeS5pc0ludGVyc2VjdGluZykpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIG9ic2VydmVyLm9ic2VydmUoZG9tUmVmNy5jdXJyZW50ISk7XHJcbiAgICB9LCBbXSk7XHJcbiAgICBcclxuICAgIGNvbnN0IFtpc1Zpc2libGU4LCBzZXRWaXNpYmxlOF0gPSB1c2VTdGF0ZShmYWxzZSk7XHJcbiAgICBjb25zdCBkb21SZWY4ID0gdXNlUmVmKG51bGwpITtcclxuICAgIHVzZUVmZmVjdCgoKSA9PiB7XHJcbiAgICAgICAgY29uc3Qgb2JzZXJ2ZXIgPSBuZXcgSW50ZXJzZWN0aW9uT2JzZXJ2ZXIoZW50cmllcyA9PiB7XHJcbiAgICAgICAgZW50cmllcy5mb3JFYWNoKGVudHJ5ID0+IHNldFZpc2libGU4KGVudHJ5LmlzSW50ZXJzZWN0aW5nKSk7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgb2JzZXJ2ZXIub2JzZXJ2ZShkb21SZWY4LmN1cnJlbnQhKTtcclxuICAgIH0sIFtdKTtcclxuXHJcbiAgICByZXR1cm4gKFxyXG4gICAgICAgIDw+XHJcbiAgICAgICAgICAgIHsvKiBwdXJwbGUgKi99XHJcbiAgICAgICAgICAgIDxkaXYgXHJcbiAgICAgICAgICAgICAgICBjbGFzc05hbWU9J2NvbCdcclxuICAgICAgICAgICAgICAgIHN0eWxlPXt7ICdoZWlnaHQnOiAnNzAwdmgnfX1cclxuICAgICAgICAgICAgICAgIHJlZj17ZG9tUmVmfT5cclxuICAgICAgICAgICAgICAgICAgICA8aW1nIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3pJbmRleCc6ICcxJywgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAncG9zaXRpb24nOiAnZml4ZWQnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3RvcCc6ICcyMHZoJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICdsZWZ0JzogJzMwdncnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3dpZHRoJzogJzYwdncnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2hlaWdodCc6ICc2MHZoJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICd0cmFuc2l0aW9uJzogJ29wYWNpdHkgMC42cyBlYXNlLW91dCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnb3BhY2l0eSc6IGAke2lzVmlzaWJsZSA/ICcxJyA6ICcwJ31gLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3Zpc2liaWxpdHknOiBgJHtpc1Zpc2libGUgPyAndmlzaWJsZScgOiAnaGlkZGVuJ31gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlkPVwiYnJlYXRoZlwiIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2xhbmRpbmcvYnJlYXRoL3RleHRsZXNzL2JyZWF0aC1vbmx5LTEud2VicFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvaW1nPlxyXG4gICAgICAgICAgICAgICAgICAgIHsvKiBTcGFjaW5nIEJsb2NrICovfVxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSdjb2wnIHN0eWxlPXt7ICdoZWlnaHQnOiAnMTAwdmgnIH19PjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgc3R5bGU9e3sgJ2hlaWdodCc6ICcxMDB2aCd9fSByZWY9e2RvbVJlZjJ9PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cCBpZD1cImJyZWF0aHRcIiBzdHlsZT17eydmb250U2l6ZScgOiAnMi41ZW0nfX0+VGFrZSBhIG1vbWVudCB0bzwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHAgaWQ9XCJicmVhdGh0XCIgc3R5bGU9e3snZm9udFNpemUnIDogJzIuNWVtJ319PmRlZXBseSBicmVhdGhlIGluLi4uPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8aW1nIHN0eWxlPXt7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAncG9zaXRpb24nOiAnZml4ZWQnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3RvcCc6ICcyMHZoJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICdsZWZ0JzogJzMwdncnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3dpZHRoJzogJzYwdncnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2hlaWdodCc6ICc2MHZoJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICd0cmFuc2l0aW9uJzogJ3NjYWxlIDIuMHMgZWFzZS1vdXQnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3NjYWxlJzogYCR7aXNWaXNpYmxlMiA/ICcxJyA6ICcwJ31gLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3Zpc2liaWxpdHknOiBgJHtpc1Zpc2libGUyID8gJ3Zpc2libGUnIDogJ2hpZGRlbid9YFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICBpZD1cImJyZWF0aGZcIiBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9sYW5kaW5nL2JyZWF0aC9jaXJjbGVzL3B1cnBsZWNpcmNsZS53ZWJwXCI+PC9pbWc+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgey8qIFNwYWNpbmcgQmxvY2sgKi99XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J2NvbCcgc3R5bGU9e3sgJ2hlaWdodCc6ICc5NXZoJyB9fT48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IHN0eWxlPXt7ICdoZWlnaHQnOiAnMTAwdmgnfX0gcmVmPXtkb21SZWYzfT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHAgaWQ9XCJicmVhdGh0XCIgc3R5bGU9e3snZm9udFNpemUnIDogJzIuNWVtJ319PmFuZCBkZWVwbHkuPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cCBpZD1cImJyZWF0aHRcIiBzdHlsZT17eydmb250U2l6ZScgOiAnMi41ZW0nfX0+YnJlYXRoZSBvdXQuLi48L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgc3R5bGU9e3tcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICdwb3NpdGlvbic6ICdmaXhlZCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAndG9wJzogJzIwdmgnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2xlZnQnOiAnMzB2dycsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnd2lkdGgnOiAnNjB2dycsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnaGVpZ2h0JzogJzYwdmgnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3RyYW5zaXRpb24nOiAnc2NhbGUgMi4wcyBlYXNlLW91dCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnc2NhbGUnOiBgJHtpc1Zpc2libGUzID8gJzAnIDogJzEnfWAsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAndmlzaWJpbGl0eSc6IGAke2lzVmlzaWJsZTMgPyAndmlzaWJsZScgOiAnaGlkZGVuJ31gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlkPVwiYnJlYXRoZlwic3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvbGFuZGluZy9icmVhdGgvY2lyY2xlcy9wdXJwbGVjaXJjbGUud2VicFwiPjwvaW1nPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIHsvKiBTcGFjaW5nIEJsb2NrICovfVxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSdjb2wnIHN0eWxlPXt7ICdoZWlnaHQnOiAnMTAwdmgnIH19PjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxwIGlkPVwiYnJlYXRodFwiIHN0eWxlPXt7J2ZvbnRTaXplJyA6ICcyLjVlbSd9fT5Zb3UgZmVlbCA8c3Ryb25nPnJldml0YWxpemVkPC9zdHJvbmc+PC9wPlxyXG4gICAgICAgICAgICAgICAgICAgIDxwIGlkPVwiYnJlYXRodFwiIHN0eWxlPXt7J2ZvbnRTaXplJyA6ICcyLjVlbSd9fT5Zb3VyIGJvZHkgYW5kIG1pbmQ8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgPHAgaWQ9XCJicmVhdGh0XCIgc3R5bGU9e3snZm9udFNpemUnIDogJzIuNWVtJ319PmJlY29tZSA8c3Ryb25nPmdyb3VuZGVkPC9zdHJvbmc+LjwvcD5cclxuICAgICAgICAgICAgICAgICAgICB7LyogU3BhY2luZyBCbG9jayAqL31cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0nY29sJyBzdHlsZT17eyAnaGVpZ2h0JzogJzEwMHZoJyB9fT48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8cCBpZD1cImJyZWF0aHRcInN0eWxlPXt7J2ZvbnRTaXplJyA6ICcyLjVlbSd9fT5Ob3cgZGVlcGx5IGJyZWF0aGUgaW48L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgPHAgaWQ9XCJicmVhdGh0XCJzdHlsZT17eydmb250U2l6ZScgOiAnMi41ZW0nfX0+YW5kIGhvbGQgeW91ciBicmVhdGguPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgc3R5bGU9e3sgJ2hlaWdodCc6ICcxMDB2aCd9fSByZWY9e2RvbVJlZjR9PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8aW1nIHN0eWxlPXt7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAncG9zaXRpb24nOiAnZml4ZWQnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3RvcCc6ICcyMHZoJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICdsZWZ0JzogJzMwdncnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3dpZHRoJzogJzYwdncnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2hlaWdodCc6ICc2MHZoJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICd0cmFuc2l0aW9uJzogJ3NjYWxlIDIuMHMgZWFzZS1vdXQnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3NjYWxlJzogYCR7aXNWaXNpYmxlNCA/ICcxJyA6ICcwJ31gLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3Zpc2liaWxpdHknOiBgJHtpc1Zpc2libGU0ID8gJ3Zpc2libGUnIDogJ2hpZGRlbid9YFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICBpZD1cImJyZWF0aGZcInNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2xhbmRpbmcvYnJlYXRoL2NpcmNsZXMvcHVycGxlY2lyY2xlLndlYnBcIj48L2ltZz5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIHsvKiBibGFjayAqL31cclxuICAgICAgICAgICAgPGRpdiBcclxuICAgICAgICAgICAgICAgIHN0eWxlPXt7ICdoZWlnaHQnOiAnMzAwdmgnfX0gIHJlZj17ZG9tUmVmNX0+XHJcbiAgICAgICAgICAgICAgICAgICAgPGltZyBcclxuICAgICAgICAgICAgICAgICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICd6SW5kZXgnOiAnMScsIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3Bvc2l0aW9uJzogJ2ZpeGVkJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICd0b3AnOiAnMjB2aCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnbGVmdCc6ICczMHZ3JyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICd3aWR0aCc6ICc2MHZ3JyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICdoZWlnaHQnOiAnNjB2aCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAndHJhbnNpdGlvbic6ICdvcGFjaXR5IDAuNnMgZWFzZS1vdXQnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ29wYWNpdHknOiBgJHtpc1Zpc2libGU1ID8gJzEnIDogJzAnfWAsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAndmlzaWJpbGl0eSc6IGAke2lzVmlzaWJsZTUgPyAndmlzaWJsZScgOiAnaGlkZGVuJ31gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlkPVwiYnJlYXRoZlwic3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvbGFuZGluZy9icmVhdGgvdGV4dGxlc3MvYnJlYXRoLW9ubHktMi53ZWJwXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9pbWc+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBzdHlsZT17eyAnaGVpZ2h0JzogJzEwMHZoJ319ICByZWY9e2RvbVJlZjZ9PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8aW1nIHN0eWxlPXt7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAncG9zaXRpb24nOiAnZml4ZWQnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3RvcCc6ICcyMHZoJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICdsZWZ0JzogJzMwdncnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3dpZHRoJzogJzYwdncnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2hlaWdodCc6ICc2MHZoJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICd2aXNpYmlsaXR5JzogYCR7aXNWaXNpYmxlNiA/ICd2aXNpYmxlJyA6ICdoaWRkZW4nfWBcclxuICAgICAgICAgICAgICAgICAgICAgICAgfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgaWQ9XCJicmVhdGhmXCJzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9sYW5kaW5nL2JyZWF0aC9jaXJjbGVzL2RhcmtlcnB1cnBsZWNpcmNsZS53ZWJwXCI+PC9pbWc+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPHAgaWQ9XCJicmVhdGh0XCJzdHlsZT17eydmb250U2l6ZScgOiAnMi41ZW0nfX0+QnJlYXRoaW5nIGlzICA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgPHAgaWQ9XCJicmVhdGh0XCJzdHlsZT17eydmb250U2l6ZScgOiAnMi41ZW0nfX0+ZXNzZW50aWFsLjwvcD5cclxuICAgICAgICAgICAgICAgICAgey8qICAgPHAgc3R5bGU9e3snZm9udFNpemUnIDogJzIuNWVtJ319PkJyZWF0aGluZyBpcyBlc3NlbnRpYWwsIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICA8cCBzdHlsZT17eydmb250U2l6ZScgOiAnMi41ZW0nfX0+YnV0IG1hbnkgcGVvcGxlIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICA8cCBzdHlsZT17eydmb250U2l6ZScgOiAnMi41ZW0nfX0+c3RydWdnbGUgd2l0aCBpdC48L3A+ICovfVxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgc3R5bGU9e3sgJ2hlaWdodCc6ICcxMDB2aCd9fSAgcmVmPXtkb21SZWY3fT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBzdHlsZT17e1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3Bvc2l0aW9uJzogJ2ZpeGVkJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICd0b3AnOiAnMjB2aCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnbGVmdCc6ICczMHZ3JyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICd3aWR0aCc6ICc2MHZ3JyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICdoZWlnaHQnOiAnNjB2aCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnc2NhbGUnOiBgJHtpc1Zpc2libGU3ID8gJzEnIDogJzAnfWAsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAndmlzaWJpbGl0eSc6IGAke2lzVmlzaWJsZTcgPyAndmlzaWJsZScgOiAnaGlkZGVuJ31gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlkPVwiYnJlYXRoZlwic3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvbGFuZGluZy9icmVhdGgvY2lyY2xlcy9mdWxsYmxhY2tjaXJjbGUud2VicFwiPjwvaW1nPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIHsvKiBTcGFjaW5nIEJsb2NrICovfVxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSdjb2wnIHN0eWxlPXt7ICdoZWlnaHQnOiAnMTAwdmgnIH19PjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxwIGlkPVwiYnJlYXRodFwic3R5bGU9e3snZm9udFNpemUnIDogJzIuNWVtJ319PlRoYXQgaXMgd2h5IHdlIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICA8cCBpZD1cImJyZWF0aHRcInN0eWxlPXt7J2ZvbnRTaXplJyA6ICcyLjVlbSd9fT5wZXJzdWUgZ2VuZSB0aGVyYXB5IGZvciA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgPHAgaWQ9XCJicmVhdGh0XCJzdHlsZT17eydmb250U2l6ZScgOiAnMi41ZW0nfX0+PGI+Q3lzdGljIEZpYnJvc2lzLjwvYj48L3A+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICB7LyogZ3JleSAqL31cclxuICAgICAgICAgICAgPGRpdiBcclxuICAgICAgICAgICAgICAgIHN0eWxlPXt7ICdoZWlnaHQnOiAnMjAwdmgnfX0gIHJlZj17ZG9tUmVmOH0+XHJcbiAgICAgICAgICAgICAgICAgICAgPGltZyBcclxuICAgICAgICAgICAgICAgICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICd6SW5kZXgnOiAnMScsIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3Bvc2l0aW9uJzogJ2ZpeGVkJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICd0b3AnOiAnMjB2aCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnbGVmdCc6ICczMHZ3JyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICd3aWR0aCc6ICc2MHZ3JyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICdoZWlnaHQnOiAnNjB2aCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAndHJhbnNpdGlvbic6ICdvcGFjaXR5IDAuNnMgZWFzZS1vdXQnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ29wYWNpdHknOiBgJHtpc1Zpc2libGU4ID8gJzEnIDogJzAnfWAsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAndmlzaWJpbGl0eSc6IGAke2lzVmlzaWJsZTggPyAndmlzaWJsZScgOiAnaGlkZGVuJ31gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlkPVwiYnJlYXRoZlwiIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2xhbmRpbmcvYnJlYXRoL3RleHRsZXNzL2JyZWF0aC1vbmx5LTMud2VicFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvaW1nPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8cCBpZD1cImJyZWF0aHRcInN0eWxlPXt7J2ZvbnRTaXplJyA6ICcyLjVlbSd9fT5UbyBoZWxwIHJlc3RvcmUgdGhlIGFiaWxpdHkgPC9wPlxyXG4gICAgICAgICAgICAgICAgPHAgaWQ9XCJicmVhdGh0XCJzdHlsZT17eydmb250U2l6ZScgOiAnMi41ZW0nfX0+dG8gYnJlYXRoZSBmcmVlbHksIG9mZmVyaW5nPC9wPlxyXG4gICAgICAgICAgICAgICAgPHAgaWQ9XCJicmVhdGh0XCJzdHlsZT17eydmb250U2l6ZScgOiAnMi41ZW0nfX0+PGI+aG9wZTwvYj4gdG8gdGhvc2Ugd2hvc2UgbHVuZ3M8L3A+XHJcbiAgICAgICAgICAgICAgICA8cCBpZD1cImJyZWF0aHRcInN0eWxlPXt7J2ZvbnRTaXplJyA6ICcyLjVlbSd9fT5jYW4gbm90IHByb3Blcmx5IGZ1bmN0aW9uPC9wPiB7LyogIG9uIHRoZWlyIG93bi4gKi99XHJcbiAgICAgICAgICAgICAgICA8cCBpZD1cImJyZWF0aHRcInN0eWxlPXt7J2ZvbnRTaXplJyA6ICcyLjVlbSd9fT5vbiB0aGVpciBvd24uPC9wPiAgICAgICBcclxuICAgICAgICAgICAgICAgIHsvKiBTcGFjaW5nIEJsb2NrICovfVxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J2NvbCcgc3R5bGU9e3sgJ2hlaWdodCc6ICcxMDB2aCcgfX0+PC9kaXY+XHJcbiAgICAgICAgICAgIDwvPlxyXG4gICAgKTtcclxufVxyXG4iLCAiaW1wb3J0IHsgdXNlRWZmZWN0LCB1c2VSZWYsIHVzZVN0YXRlIH0gZnJvbSBcInJlYWN0XCI7XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gUHJvYmxlbXMoKXtcclxuICAgIGNvbnN0IFtpc1Zpc2libGUsIHNldFZpc2libGVdID0gdXNlU3RhdGUoZmFsc2UpO1xyXG4gICAgY29uc3QgZG9tUmVmID0gdXNlUmVmKG51bGwpITtcclxuICAgIHVzZUVmZmVjdCgoKSA9PiB7XHJcbiAgICAgICAgY29uc3Qgb2JzZXJ2ZXIgPSBuZXcgSW50ZXJzZWN0aW9uT2JzZXJ2ZXIoZW50cmllcyA9PiB7XHJcbiAgICAgICAgZW50cmllcy5mb3JFYWNoKGVudHJ5ID0+IHNldFZpc2libGUoZW50cnkuaXNJbnRlcnNlY3RpbmcpKTtcclxuICAgICAgICB9KTtcclxuICAgICAgICBvYnNlcnZlci5vYnNlcnZlKGRvbVJlZi5jdXJyZW50ISk7XHJcbiAgICB9LCBbXSk7XHJcblxyXG4gICAgY29uc3QgW2lzVmlzaWJsZTIsIHNldFZpc2libGUyXSA9IHVzZVN0YXRlKGZhbHNlKTtcclxuICAgIGNvbnN0IGRvbVJlZjIgPSB1c2VSZWYobnVsbCkhO1xyXG4gICAgdXNlRWZmZWN0KCgpID0+IHtcclxuICAgICAgICBjb25zdCBvYnNlcnZlciA9IG5ldyBJbnRlcnNlY3Rpb25PYnNlcnZlcihlbnRyaWVzID0+IHtcclxuICAgICAgICBlbnRyaWVzLmZvckVhY2goZW50cnkgPT4gc2V0VmlzaWJsZTIoZW50cnkuaXNJbnRlcnNlY3RpbmcpKTtcclxuICAgICAgICB9KTtcclxuICAgICAgICBvYnNlcnZlci5vYnNlcnZlKGRvbVJlZjIuY3VycmVudCEpO1xyXG4gICAgfSwgW10pO1xyXG5cclxuICAgIGNvbnN0IFtpc1Zpc2libGUzLCBzZXRWaXNpYmxlM10gPSB1c2VTdGF0ZShmYWxzZSk7XHJcbiAgICBjb25zdCBkb21SZWYzID0gdXNlUmVmKG51bGwpITtcclxuICAgIHVzZUVmZmVjdCgoKSA9PiB7XHJcbiAgICAgICAgY29uc3Qgb2JzZXJ2ZXIgPSBuZXcgSW50ZXJzZWN0aW9uT2JzZXJ2ZXIoZW50cmllcyA9PiB7XHJcbiAgICAgICAgZW50cmllcy5mb3JFYWNoKGVudHJ5ID0+IHNldFZpc2libGUzKGVudHJ5LmlzSW50ZXJzZWN0aW5nKSk7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgb2JzZXJ2ZXIub2JzZXJ2ZShkb21SZWYzLmN1cnJlbnQhKTtcclxuICAgIH0sIFtdKTtcclxuICAgIFxyXG4gICAgY29uc3QgW2lzVmlzaWJsZTQsIHNldFZpc2libGU0XSA9IHVzZVN0YXRlKGZhbHNlKTtcclxuICAgIGNvbnN0IGRvbVJlZjQgPSB1c2VSZWYobnVsbCkhO1xyXG4gICAgdXNlRWZmZWN0KCgpID0+IHtcclxuICAgICAgICBjb25zdCBvYnNlcnZlciA9IG5ldyBJbnRlcnNlY3Rpb25PYnNlcnZlcihlbnRyaWVzID0+IHtcclxuICAgICAgICBlbnRyaWVzLmZvckVhY2goZW50cnkgPT4gc2V0VmlzaWJsZTQoZW50cnkuaXNJbnRlcnNlY3RpbmcpKTtcclxuICAgICAgICB9KTtcclxuICAgICAgICBvYnNlcnZlci5vYnNlcnZlKGRvbVJlZjQuY3VycmVudCEpO1xyXG4gICAgfSwgW10pO1xyXG5cclxuICAgIFxyXG4gICAgY29uc3QgW2lzVmlzaWJsZTUsIHNldFZpc2libGU1XSA9IHVzZVN0YXRlKGZhbHNlKTtcclxuICAgIGNvbnN0IGRvbVJlZjUgPSB1c2VSZWYobnVsbCkhO1xyXG4gICAgdXNlRWZmZWN0KCgpID0+IHtcclxuICAgICAgICBjb25zdCBvYnNlcnZlciA9IG5ldyBJbnRlcnNlY3Rpb25PYnNlcnZlcihlbnRyaWVzID0+IHtcclxuICAgICAgICBlbnRyaWVzLmZvckVhY2goZW50cnkgPT4gc2V0VmlzaWJsZTUoZW50cnkuaXNJbnRlcnNlY3RpbmcpKTtcclxuICAgICAgICB9KTtcclxuICAgICAgICBvYnNlcnZlci5vYnNlcnZlKGRvbVJlZjUuY3VycmVudCEpO1xyXG4gICAgfSwgW10pO1xyXG5cclxuICAgIGNvbnN0IFRpdGxlMSA9IFwiQ3lzdGljIEZpYnJvc2lzXCI7XHJcbiAgICBjb25zdCBUaXRsZTIgPSBcIm1ha2VzIGxpZmUgYnJlYXRodGFraW5nXCI7XHJcbiAgICBjb25zdCBQcm9iMTEgPSBcIlRoaWNrIG11Y3VzIGJsb2NraW5nIGFpcndheSBhbmQgcHJldmVudHNcIlxyXG4gICAgY29uc3QgUHJvYjEyID0gXCJveHlnZW4gYWJzb3JwdGlvbiwgbGVhZGluZyB0byBicm9uY2hpYWxcIlxyXG4gICAgY29uc3QgUHJvYjEzID0gXCJvYnN0cnVjdGlvbnMsIG9yZ2FuIGZhaWx1ZSBhbiBkZWF0aFwiIDtcclxuICAgIGNvbnN0IFByb2IyMSA9IFwiQ2hyb25pYyBpbmZsYW1tYXRpb24gb2NjdXJzIHBlcmlvZGljYWxseVwiO1xyXG4gICAgY29uc3QgUHJvYjIyID0gXCJkdWUgdG8gYSBoaWdoIHZ1bG5lcmFiaWxpdHkgXCI7XHJcbiAgICBjb25zdCBQcm9iMjMgPSBcInRvIGJhY3RlcmlhbCBhbmQgdmlyYWwgaW5mZWN0aW9uc1wiO1xyXG4gICAgY29uc3QgUHJvYjMxID0gXCJIZWlnaHRlbmVkIHNhZmV0eSBjb25zaWRlcmF0aW9ucyBhbmRcIjtcclxuICAgIGNvbnN0IFByb2IzMiA9IFwiZW1vdGlvbmFsIHN0cmVzcyBwcm9tb3RlIGRlcHJlc3Npb25cIjtcclxuICAgIGNvbnN0IFByb2IzMyA9IFwiYW5kIHBzeWNob2xvZ2ljYWwgaXNzdWVzXCI7XHJcblxyXG4gICAgcmV0dXJuIChcclxuICAgICAgICA8PlxyXG4gICAgICAgICAgICB7LyogT25lICovfVxyXG4gICAgICAgICAgICA8ZGl2IFxyXG4gICAgICAgICAgICAgICAgY2xhc3NOYW1lPSdjb2wnXHJcbiAgICAgICAgICAgICAgICBzdHlsZT17eyBcclxuICAgICAgICAgICAgICAgICAgICAnaGVpZ2h0JzogJzEwMHZoJyxcclxuICAgICAgICAgICAgICAgICAgICAndHJhbnNpdGlvbic6ICdvcGFjaXR5IDAuNnMgZWFzZS1vdXQnLFxyXG4gICAgICAgICAgICAgICAgICAgICdvcGFjaXR5JzogYCR7aXNWaXNpYmxlID8gJzEnIDogJzAnfWAsXHJcbiAgICAgICAgICAgICAgICAgICAgJ3Zpc2liaWxpdHknOiBgJHtpc1Zpc2libGUgPyAndmlzaWJsZScgOiAnaGlkZGVuJ31gfX1cclxuICAgICAgICAgICAgICAgIHJlZj17ZG9tUmVmfT5cclxuICAgICAgICAgICAgICAgICAgICA8aW1nIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3Bvc2l0aW9uJzogJ2ZpeGVkJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICd0b3AnOiAnMjB2aCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnbGVmdCc6ICcyMHZ3JyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICd3aWR0aCc6ICc2MHZ3JyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICdoZWlnaHQnOiAnNjB2aCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2xhbmRpbmcvcHJvYmxlbXMvY3lmaWItMS53ZWJwXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9pbWc+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICB7LyogVHdvICovfVxyXG4gICAgICAgICAgICA8ZGl2IFxyXG4gICAgICAgICAgICAgICAgY2xhc3NOYW1lPSdjb2wnXHJcbiAgICAgICAgICAgICAgICBzdHlsZT17eyBcclxuICAgICAgICAgICAgICAgICAgICAnaGVpZ2h0JzogJzEwMHZoJyxcclxuICAgICAgICAgICAgICAgICAgICAndHJhbnNpdGlvbic6ICdvcGFjaXR5IDAuNnMgZWFzZS1vdXQnLFxyXG4gICAgICAgICAgICAgICAgICAgICdvcGFjaXR5JzogYCR7aXNWaXNpYmxlMiA/ICcxJyA6ICcwJ31gLFxyXG4gICAgICAgICAgICAgICAgICAgICd2aXNpYmlsaXR5JzogYCR7aXNWaXNpYmxlMiA/ICd2aXNpYmxlJyA6ICdoaWRkZW4nfWB9fVxyXG4gICAgICAgICAgICAgICAgcmVmPXtkb21SZWYyfT5cclxuICAgICAgICAgICAgICAgICAgICA8aW1nIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3Bvc2l0aW9uJzogJ2ZpeGVkJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICd0b3AnOiAnMjB2aCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnbGVmdCc6ICcyMHZ3JyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICd3aWR0aCc6ICc2MHZ3JyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICdoZWlnaHQnOiAnNjB2aCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2xhbmRpbmcvcHJvYmxlbXMvY3lmaWItMi53ZWJwXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9pbWc+XHJcbiAgICAgICAgICAgICAgICAgICAgPHAgc3R5bGU9e3sncG9zaXRpb24nOiAnZml4ZWQnLCd0b3AnOiAnMTd2aCcsICd3aWR0aCc6ICc4MnZ3JywgJ3pJbmRleCc6ICcxJywnbGVmdCc6ICcxMHZ3JywnZm9udFNpemUnOiAnM3Z3JywgJ2ZvbnRXZWlnaHQnOiAnYm9sZCcsICd0ZXh0QWxpZ24nOiAnY2VudGVyJ319PntUaXRsZTF9PC9wPlxyXG4gICAgICAgICAgICAgICAgICAgIDxwIHN0eWxlPXt7J3Bvc2l0aW9uJzogJ2ZpeGVkJywndG9wJzogJzIzdmgnLCAnd2lkdGgnOiAnODJ2dycsICd6SW5kZXgnOiAnMScsJ2xlZnQnOiAnMTB2dycsJ2ZvbnRTaXplJzogJzN2dycsICdmb250V2VpZ2h0JzogJ2JvbGQnLCAndGV4dEFsaWduJzogJ2NlbnRlcid9fT57VGl0bGUyfTwvcD5cclxuICAgICAgICAgICAgICAgICAgICA8cCBzdHlsZT17eydwb3NpdGlvbic6ICdmaXhlZCcsJ3RvcCc6ICc2NXZoJywgJ2xlZnQnOiAnMjB2dycsICd6SW5kZXgnOiAnMScsICd3aWR0aCc6ICczMHZoJywgJ3RleHRBbGlnbic6ICdjZW50ZXInfX0+e1Byb2IxMSArIFwiIFwiICsgUHJvYjEyICsgXCIgXCIgKyBQcm9iMTN9PC9wPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgey8qIFRocmVlICovfVxyXG4gICAgICAgICAgICA8ZGl2IFxyXG4gICAgICAgICAgICAgICAgY2xhc3NOYW1lPSdjb2wnXHJcbiAgICAgICAgICAgICAgICBzdHlsZT17eyBcclxuICAgICAgICAgICAgICAgICAgICAnaGVpZ2h0JzogJzEwMHZoJyxcclxuICAgICAgICAgICAgICAgICAgICAndHJhbnNpdGlvbic6ICdvcGFjaXR5IDAuNnMgZWFzZS1vdXQnLFxyXG4gICAgICAgICAgICAgICAgICAgICdvcGFjaXR5JzogYCR7aXNWaXNpYmxlMyA/ICcxJyA6ICcwJ31gLFxyXG4gICAgICAgICAgICAgICAgICAgICd2aXNpYmlsaXR5JzogYCR7aXNWaXNpYmxlMyA/ICd2aXNpYmxlJyA6ICdoaWRkZW4nfWB9fVxyXG4gICAgICAgICAgICAgICAgcmVmPXtkb21SZWYzfT5cclxuICAgICAgICAgICAgICAgICAgICA8aW1nIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3Bvc2l0aW9uJzogJ2ZpeGVkJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICd0b3AnOiAnMjB2aCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnbGVmdCc6ICcyMHZ3JyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICd3aWR0aCc6ICc2MHZ3JyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICdoZWlnaHQnOiAnNjB2aCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2xhbmRpbmcvcHJvYmxlbXMvY3lmaWItMy53ZWJwXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9pbWc+XHJcbiAgICAgICAgICAgICAgICAgICAgPHAgc3R5bGU9e3sncG9zaXRpb24nOiAnZml4ZWQnLCd0b3AnOiAnMTd2aCcsICd3aWR0aCc6ICc4MnZ3JywgJ3pJbmRleCc6ICcxJywnbGVmdCc6ICcxMHZ3JywnZm9udFNpemUnOiAnM3Z3JywgJ2ZvbnRXZWlnaHQnOiAnYm9sZCcsICd0ZXh0QWxpZ24nOiAnY2VudGVyJ319PntUaXRsZTF9PC9wPlxyXG4gICAgICAgICAgICAgICAgICAgIDxwIHN0eWxlPXt7J3Bvc2l0aW9uJzogJ2ZpeGVkJywndG9wJzogJzIzdmgnLCAnd2lkdGgnOiAnODJ2dycsICd6SW5kZXgnOiAnMScsJ2xlZnQnOiAnMTB2dycsJ2ZvbnRTaXplJzogJzN2dycsICdmb250V2VpZ2h0JzogJ2JvbGQnLCAndGV4dEFsaWduJzogJ2NlbnRlcid9fT57VGl0bGUyfTwvcD5cclxuICAgICAgICAgICAgICAgICAgICA8cCBzdHlsZT17eydwb3NpdGlvbic6ICdmaXhlZCcsJ3RvcCc6ICc2NXZoJywgJ2xlZnQnOiAnMjB2dycsICd6SW5kZXgnOiAnMScsICd3aWR0aCc6ICczMHZoJywgJ3RleHRBbGlnbic6ICdjZW50ZXInfX0+e1Byb2IxMSArIFwiIFwiICsgUHJvYjEyICsgXCIgXCIgKyBQcm9iMTN9PC9wPlxyXG4gICAgICAgICAgICAgICAgICAgIDxwIHN0eWxlPXt7J3Bvc2l0aW9uJzogJ2ZpeGVkJywndG9wJzogJzY1dmgnLCAnbGVmdCc6ICc0MHZ3JywgJ3pJbmRleCc6ICcxJywgJ3dpZHRoJzogJzMwdmgnLCAndGV4dEFsaWduJzogJ2NlbnRlcid9fT57UHJvYjIxICsgXCIgXCIgKyBQcm9iMjIgKyBcIiBcIiArIFByb2IyM308L3A+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICB7LyogRm91ciAqL31cclxuICAgICAgICAgICAgPGRpdiBcclxuICAgICAgICAgICAgICAgIGNsYXNzTmFtZT0nY29sJ1xyXG4gICAgICAgICAgICAgICAgc3R5bGU9e3sgXHJcbiAgICAgICAgICAgICAgICAgICAgJ2hlaWdodCc6ICcxMDB2aCcsXHJcbiAgICAgICAgICAgICAgICAgICAgJ3RyYW5zaXRpb24nOiAnb3BhY2l0eSAwLjZzIGVhc2Utb3V0JyxcclxuICAgICAgICAgICAgICAgICAgICAnb3BhY2l0eSc6IGAke2lzVmlzaWJsZTQgPyAnMScgOiAnMCd9YCxcclxuICAgICAgICAgICAgICAgICAgICAndmlzaWJpbGl0eSc6IGAke2lzVmlzaWJsZTQgPyAndmlzaWJsZScgOiAnaGlkZGVuJ31gfX1cclxuICAgICAgICAgICAgICAgIHJlZj17ZG9tUmVmNH0+XHJcbiAgICAgICAgICAgICAgICAgICAgPGltZyBcclxuICAgICAgICAgICAgICAgICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICdwb3NpdGlvbic6ICdmaXhlZCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAndG9wJzogJzIwdmgnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2xlZnQnOiAnMjB2dycsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnd2lkdGgnOiAnNjB2dycsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnaGVpZ2h0JzogJzYwdmgnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9sYW5kaW5nL3Byb2JsZW1zL2N5ZmliLTQud2VicFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvaW1nPlxyXG4gICAgICAgICAgICAgICAgICAgIDxwIHN0eWxlPXt7J3Bvc2l0aW9uJzogJ2ZpeGVkJywndG9wJzogJzE3dmgnLCAnd2lkdGgnOiAnODJ2dycsJ2xlZnQnOiAnMTB2dycsICd6SW5kZXgnOiAnMScsJ2ZvbnRTaXplJzogJzN2dycsICdmb250V2VpZ2h0JzogJ2JvbGQnLCAndGV4dEFsaWduJzogJ2NlbnRlcid9fT57VGl0bGUxfTwvcD5cclxuICAgICAgICAgICAgICAgICAgICA8cCBzdHlsZT17eydwb3NpdGlvbic6ICdmaXhlZCcsJ3RvcCc6ICcyM3ZoJywgJ3dpZHRoJzogJzgydncnLCdsZWZ0JzogJzEwdncnLCAnekluZGV4JzogJzEnLCdmb250U2l6ZSc6ICczdncnLCAnZm9udFdlaWdodCc6ICdib2xkJywgJ3RleHRBbGlnbic6ICdjZW50ZXInfX0+e1RpdGxlMn08L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgPHAgc3R5bGU9e3sncG9zaXRpb24nOiAnZml4ZWQnLCd0b3AnOiAnNjV2aCcsICdsZWZ0JzogJzIwdncnLCAnekluZGV4JzogJzEnLCAnd2lkdGgnOiAnMzB2aCcsICd0ZXh0QWxpZ24nOiAnY2VudGVyJ319PntQcm9iMTEgKyBcIiBcIiArIFByb2IxMiArIFwiIFwiICsgUHJvYjEzfTwvcD5cclxuICAgICAgICAgICAgICAgICAgICA8cCBzdHlsZT17eydwb3NpdGlvbic6ICdmaXhlZCcsJ3RvcCc6ICc2NXZoJywgJ2xlZnQnOiAnNDB2dycsICd6SW5kZXgnOiAnMScsICd3aWR0aCc6ICczMHZoJywgJ3RleHRBbGlnbic6ICdjZW50ZXInfX0+e1Byb2IyMSArIFwiIFwiICsgUHJvYjIyICsgXCIgXCIgKyBQcm9iMjN9PC9wPlxyXG4gICAgICAgICAgICAgICAgICAgIDxwIHN0eWxlPXt7J3Bvc2l0aW9uJzogJ2ZpeGVkJywndG9wJzogJzY1dmgnLCAnbGVmdCc6ICc2MHZ3JywgJ3pJbmRleCc6ICcxJywgJ3dpZHRoJzogJzMwdmgnLCAndGV4dEFsaWduJzogJ2NlbnRlcid9fT57UHJvYjMxICsgXCIgXCIgKyBQcm9iMzIgKyBcIiBcIiArIFByb2IzM308L3A+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICB7LyogRml2ZSAqL31cclxuICAgICAgICAgICAgPGRpdiBcclxuICAgICAgICAgICAgICAgIGNsYXNzTmFtZT0nY29sJ1xyXG4gICAgICAgICAgICAgICAgc3R5bGU9e3sgXHJcbiAgICAgICAgICAgICAgICAgICAgJ2hlaWdodCc6ICcxMDB2aCcsXHJcbiAgICAgICAgICAgICAgICAgICAgJ3RyYW5zaXRpb24nOiAnb3BhY2l0eSAwLjZzIGVhc2Utb3V0JyxcclxuICAgICAgICAgICAgICAgICAgICAnb3BhY2l0eSc6IGAke2lzVmlzaWJsZTUgPyAnMScgOiAnMCd9YCxcclxuICAgICAgICAgICAgICAgICAgICAndmlzaWJpbGl0eSc6IGAke2lzVmlzaWJsZTUgPyAndmlzaWJsZScgOiAnaGlkZGVuJ31gfX1cclxuICAgICAgICAgICAgICAgIHJlZj17ZG9tUmVmNX0+XHJcbiAgICAgICAgICAgICAgICAgICAgPGltZyBcclxuICAgICAgICAgICAgICAgICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICdwb3NpdGlvbic6ICdmaXhlZCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAndG9wJzogJzIwdmgnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2xlZnQnOiAnMjB2dycsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnd2lkdGgnOiAnNjB2dycsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnaGVpZ2h0JzogJzYwdmgnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9sYW5kaW5nL3Byb2JsZW1zL2N5ZmliLTUud2VicFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvaW1nPlxyXG4gICAgICAgICAgICAgICAgICAgIDxwIHN0eWxlPXt7J3Bvc2l0aW9uJzogJ2ZpeGVkJywndG9wJzogJzE3dmgnLCAnd2lkdGgnOiAnODJ2dycsJ2xlZnQnOiAnMTB2dycsICd6SW5kZXgnOiAnMScsJ2ZvbnRTaXplJzogJzN2dycsICdmb250V2VpZ2h0JzogJ2JvbGQnLCAndGV4dEFsaWduJzogJ2NlbnRlcid9fT57VGl0bGUxfTwvcD5cclxuICAgICAgICAgICAgICAgICAgICA8cCBzdHlsZT17eydwb3NpdGlvbic6ICdmaXhlZCcsJ3RvcCc6ICcyM3ZoJywgJ3dpZHRoJzogJzgydncnLCAnbGVmdCc6ICcxMHZ3JywgJ3pJbmRleCc6ICcxJywnZm9udFNpemUnOiAnM3Z3JywgJ2ZvbnRXZWlnaHQnOiAnYm9sZCcsICd0ZXh0QWxpZ24nOiAnY2VudGVyJ319PntUaXRsZTJ9PC9wPlxyXG4gICAgICAgICAgICAgICAgICAgIDxwIGlkPVwiYnJlYXRodDFcInN0eWxlPXt7J3Bvc2l0aW9uJzogJ2ZpeGVkJywndG9wJzogJzY1dmgnLCAnbGVmdCc6ICcyMHZ3JywgJ3pJbmRleCc6ICcxJywgJ3dpZHRoJzogJzMwdmgnLCAndGV4dEFsaWduJzogJ2NlbnRlcid9fT57UHJvYjExICsgXCIgXCIgKyBQcm9iMTIgKyBcIiBcIiArIFByb2IxM308L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgPHAgaWQ9XCJicmVhdGh0Mlwic3R5bGU9e3sncG9zaXRpb24nOiAnZml4ZWQnLCd0b3AnOiAnNjV2aCcsICdsZWZ0JzogJzQwdncnLCAnekluZGV4JzogJzEnLCAnd2lkdGgnOiAnMzB2aCcsICd0ZXh0QWxpZ24nOiAnY2VudGVyJ319PntQcm9iMjEgKyBcIiBcIiArIFByb2IyMiArIFwiIFwiICsgUHJvYjIzfTwvcD5cclxuICAgICAgICAgICAgICAgICAgICA8cCBpZD1cImJyZWF0aDNcInN0eWxlPXt7J3Bvc2l0aW9uJzogJ2ZpeGVkJywndG9wJzogJzY1dmgnLCAnbGVmdCc6ICc2MHZ3JywgJ3pJbmRleCc6ICcxJywgJ3dpZHRoJzogJzMwdmgnLCAndGV4dEFsaWduJzogJ2NlbnRlcid9fT57UHJvYjMxICsgXCIgXCIgKyBQcm9iMzIgKyBcIiBcIiArIFByb2IzM308L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgPHAgc3R5bGU9e3sncG9zaXRpb24nOiAnZml4ZWQnLCd0b3AnOiAnODV2aCcsICdsZWZ0JzogJzM1dncnLCAnekluZGV4JzogJzEnfX0+PC9wPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBpZD1cInNjaWVuY3lcIj48L2Rpdj5cclxuICAgICAgICAgICAgXHJcbiAgICAgICAgICAgIDwvPlxyXG4gICAgKTtcclxufSIsICJjb25zdCBfX3ZpdGVfaW5qZWN0ZWRfb3JpZ2luYWxfZGlybmFtZSA9IFwiQzpcXFxcU3R1ZGl1bVxcXFxpR0VNXFxcXENvZGVcXFxcYmllbGVmZWxkLWNlYml0ZWNcXFxcc3JjXFxcXHV0aWxzXCI7Y29uc3QgX192aXRlX2luamVjdGVkX29yaWdpbmFsX2ZpbGVuYW1lID0gXCJDOlxcXFxTdHVkaXVtXFxcXGlHRU1cXFxcQ29kZVxcXFxiaWVsZWZlbGQtY2ViaXRlY1xcXFxzcmNcXFxcdXRpbHNcXFxcVGFiTmF2aWdhdGlvbi50c1wiO2NvbnN0IF9fdml0ZV9pbmplY3RlZF9vcmlnaW5hbF9pbXBvcnRfbWV0YV91cmwgPSBcImZpbGU6Ly8vQzovU3R1ZGl1bS9pR0VNL0NvZGUvYmllbGVmZWxkLWNlYml0ZWMvc3JjL3V0aWxzL1RhYk5hdmlnYXRpb24udHNcIjtpbXBvcnQgeyB1c2VFZmZlY3QsIHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnO1xyXG5pbXBvcnQgeyB1c2VMb2NhdGlvbiwgdXNlTmF2aWdhdGUgfSBmcm9tICdyZWFjdC1yb3V0ZXItZG9tJztcclxuaW1wb3J0IHsgb3BlbkZyb21PdGhlclBhZ2UgfSBmcm9tICcuL29wZW5Gcm9tT3RoZXJwQWdlJztcclxuaW1wb3J0IHsgaGFuZGxlU2Nyb2xsIH0gZnJvbSAnLi9oYW5kbGVTY3JvbGwnO1xyXG5pbXBvcnQgeyBvcGVuTmVzdGVkVGFiIH0gZnJvbSAnLi9vcGVuTmVzdGVkVGFiJztcclxuaW1wb3J0IHsgb3BlblRhYiB9IGZyb20gJy4vb3BlblRhYic7XHJcbmltcG9ydCB7IG9wZW5UYWJJbkNvbGxhcHNpYmxlIH0gZnJvbSAnLi9vcGVudGFiaW5jb2xsYXBzaWJsZSc7XHJcblxyXG4vLyBDdXN0b20gSG9vayBmb3IgY2VudHJhbCB0YWIgbmF2aWdhdGlvblxyXG5leHBvcnQgY29uc3QgdXNlVGFiTmF2aWdhdGlvbiA9ICgpID0+IHtcclxuICBjb25zdCBsb2NhdGlvbiA9IHVzZUxvY2F0aW9uKCk7XHJcbiAgY29uc3QgbmF2aWdhdGUgPSB1c2VOYXZpZ2F0ZSgpO1xyXG4gIGNvbnN0IFthY3RpdmVUYWIsIHNldEFjdGl2ZVRhYl0gPSB1c2VTdGF0ZTxzdHJpbmcgfCBudWxsPihudWxsKTtcclxuICBjb25zdCBbYWN0aXZlU3ViVGFiLCBzZXRBY3RpdmVTdWJUYWJdID0gdXNlU3RhdGU8c3RyaW5nIHwgbnVsbD4obnVsbCk7XHJcbiAgY29uc3QgWywgc2V0QWN0aXZlQ29sbGFwc2libGVdID0gdXNlU3RhdGU8c3RyaW5nIHwgbnVsbD4obnVsbCk7XHJcblxyXG4gIC8vIFRhYiBWaXNpYmlsaXR5IEhhbmRsZXJcclxuICBjb25zdCB1cGRhdGVUYWJWaXNpYmlsaXR5ID0gKHRhYklkOiBzdHJpbmcgfCBudWxsLCBzdWJUYWJJZD86IHN0cmluZyB8IG51bGwpID0+IHtcclxuICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJy5lbmdpbm5lZXJpbmd0YWInKS5mb3JFYWNoKCh0YWIpID0+IHtcclxuICAgICh0YWIgYXMgSFRNTEVsZW1lbnQpLnN0eWxlLmRpc3BsYXkgPSAnbm9uZSc7IC8vIEFsbCB0YWJzIGhpZGRlblxyXG4gICAgfSk7XHJcblxyXG4gICAgaWYgKHRhYklkKSB7XHJcbiAgICAgIGNvbnN0IHRhYkVsZW1lbnQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChgdGFiLSR7dGFiSWR9YCk7XHJcbiAgICAgIGlmICh0YWJFbGVtZW50KSB7XHJcbiAgICAgICAgdGFiRWxlbWVudC5zdHlsZS5kaXNwbGF5ID0gJ2Jsb2NrJzsgLy8gU2hvdyB0aGUgY3VycmVudCB0YWJcclxuICAgICAgfVxyXG5cclxuICAgICAgLy8gSGFuZGxlIG5lc3RlZCBzdWJ0YWJzXHJcbiAgICAgIGlmIChzdWJUYWJJZCkge1xyXG4gICAgICAgIGNvbnN0IHN1YlRhYkVsZW1lbnQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChzdWJUYWJJZCk7XHJcbiAgICAgICAgaWYgKHN1YlRhYkVsZW1lbnQpIHtcclxuICAgICAgICAgIHN1YlRhYkVsZW1lbnQuc3R5bGUuZGlzcGxheSA9ICdibG9jayc7IC8vIFNob3cgc3VidGFiXHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfTtcclxuXHJcbiAgLy8gVGFiIENoYW5nZSBhbmQgVVJMIFVwZGF0ZVxyXG4gIGNvbnN0IGhhbmRsZVRhYkNoYW5nZSA9ICh0YWJJZDogc3RyaW5nLCBzdWJUYWJJZD86IHN0cmluZykgPT4ge1xyXG4gICAgc2V0QWN0aXZlVGFiKHRhYklkKTtcclxuICAgIHNldEFjdGl2ZVN1YlRhYihzdWJUYWJJZCB8fCBudWxsKTtcclxuXHJcbiAgICAvLyBVcGRhdGUgVVJMXHJcbiAgICBsZXQgbmV3VXJsID0gYCR7bG9jYXRpb24ucGF0aG5hbWV9P3RhYj0ke3RhYklkfWA7XHJcbiAgICBpZiAoc3ViVGFiSWQpIHtcclxuICAgICAgbmV3VXJsICs9IGAmc3ViVGFiPSR7c3ViVGFiSWR9YDtcclxuICAgIH1cclxuICAgIG5hdmlnYXRlKG5ld1VybCwgeyByZXBsYWNlOiB0cnVlIH0pO1xyXG5cclxuICAgIC8vIEltbWVkaWF0ZWx5IHVwZGF0ZSB0YWIgdmlzaWJpbGl0eVxyXG4gICAgdXBkYXRlVGFiVmlzaWJpbGl0eSh0YWJJZCwgc3ViVGFiSWQpO1xyXG4gIH07XHJcblxyXG4gIC8vIE9uIExvY2F0aW9uIENoYW5nZVxyXG4gIHVzZUVmZmVjdCgoKSA9PiB7XHJcbiAgICBjb25zdCBwYXJhbXMgPSBuZXcgVVJMU2VhcmNoUGFyYW1zKGxvY2F0aW9uLnNlYXJjaCk7XHJcbiAgICBjb25zdCB0YWJJZCA9IHBhcmFtcy5nZXQoJ3RhYicpO1xyXG4gICAgY29uc3Qgc3ViVGFiSWQgPSBwYXJhbXMuZ2V0KCdzdWJUYWInKTtcclxuXHJcbiAgICAvLyBSZXN0b3JlIHZpc2liaWxpdHlcclxuICAgIHVwZGF0ZVRhYlZpc2liaWxpdHkodGFiSWQsIHN1YlRhYklkKTtcclxuXHJcbiAgICAvLyBIYW5kbGUgc2Nyb2xsIG9yIGNvbGxhcHNpYmxlc1xyXG4gICAgY29uc3QgY29sbGFwc2VJZCA9IHBhcmFtcy5nZXQoJ2NvbGxhcHNlSWQnKTtcclxuICAgIGNvbnN0IHNjcm9sbFRvSWQgPSBwYXJhbXMuZ2V0KCdzY3JvbGxUbycpO1xyXG4gICAgY29uc3QgY2hhbmdlVG8gPSBwYXJhbXMuZ2V0KCdjaGFuZ2VUbycpO1xyXG4gICAgY29uc3QgY29sVGFiID0gcGFyYW1zLmdldCgnY29sVGFiJyk7XHJcbiAgLy8gIGNvbnN0IG5hdmlnYXRlID0gdXNlTmF2aWdhdGUoKTtcclxuICAgIFxyXG4gICAgIFxyXG5cclxuXHJcbiAgICAgLy8gc2Nyb2xscyB0byBhIHNwZWNpZmljIGNvbGxhcHNpYmxlIGVsZW1lbnRcclxuICAgIGlmIChjb2xsYXBzZUlkKSB7XHJcbiAgICAgIHNldEFjdGl2ZUNvbGxhcHNpYmxlKGNvbGxhcHNlSWQpO1xyXG4gICAgICBoYW5kbGVTY3JvbGwoY29sbGFwc2VJZCk7XHJcbiAgICB9XHJcbiAgICBpZiAoY29sVGFiICYmIGNvbGxhcHNlSWQpIHtcclxuICAgICAgc2V0QWN0aXZlQ29sbGFwc2libGUoY29sbGFwc2VJZCk7XHJcbiAgICAgIG9wZW5UYWJJbkNvbGxhcHNpYmxlKGNvbFRhYiwgY29sbGFwc2VJZCk7IC8vIFx1MDBENmZmbmUgZGVuIFRhYiBpbm5lcmhhbGIgZGVzIENvbGxhcHNpYmxlc1xyXG4gXHJcbiAgICB9XHJcblxyXG4gICAgLy8gb3BlbnMgbWFpbiBhbmQgKGlmIG5lY2Vzc2FyeSkgc3VidGFiXHJcbiAgICBpZiAodGFiSWQpIHtcclxuICAgICAgbGV0IHRhYiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHRhYklkKTtcclxuICAgICAgbGV0IHRhYkNsYXNzID0gdGFiIS5jbGFzc05hbWU7IFxyXG4gICAgICBpZiAoc3ViVGFiSWQpIHtcclxuICAgICAgICBsZXQgc3ViVGFiID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoc3ViVGFiSWQpO1xyXG4gICAgICAgIGxldCBwYXJlbnRDbGFzcyA9IChzdWJUYWIgYXMgSFRNTEVsZW1lbnQpLmNsYXNzTGlzdFsxXTsgXHJcbiAgICAgICAgb3Blbk5lc3RlZFRhYih0YWJJZCwgc3ViVGFiSWQsIHBhcmVudENsYXNzLCB0YWJDbGFzcyk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgb3BlblRhYih0YWJJZCwgdGFiQ2xhc3MpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICBcclxuXHJcbiAgICAvLyBvcGVucyB0YWIgb24gYW5vdGhlciBwYWdlXHJcbiAgICBpZiAodGFiSWQpIHtcclxuICAgICAgb3BlbkZyb21PdGhlclBhZ2UodGFiSWQpKHsgY3VycmVudFRhcmdldDogZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQodGFiSWQpISB9KTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoc2Nyb2xsVG9JZCkge1xyXG4gICAgICBjb25zdCBlbGVtZW50ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoc2Nyb2xsVG9JZCk7XHJcbiAgICAgIGlmIChlbGVtZW50KSB7XHJcbiAgICAgICAgY29uc3Qgdmlld3BvcnRIZWlnaHQgPSB3aW5kb3cuaW5uZXJIZWlnaHQ7XHJcbiAgICAgICAgY29uc3QgdGFyZ2V0UG9zaXRpb24gPSBlbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLnRvcCArIHdpbmRvdy5wYWdlWU9mZnNldDtcclxuICAgICAgICBjb25zdCBzY3JvbGxUb1Bvc2l0aW9uID0gdGFyZ2V0UG9zaXRpb24gLSB2aWV3cG9ydEhlaWdodCAvIDUgKyBlbGVtZW50LmNsaWVudEhlaWdodCAvIDI7XHJcbiAgICAgICAgd2luZG93LnNjcm9sbFRvKHsgdG9wOiBzY3JvbGxUb1Bvc2l0aW9uLCBiZWhhdmlvcjogJ3Ntb290aCcgfSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIGlmIChjaGFuZ2VUbykge1xyXG4gICAgICBjb25zdCBlbGVtZW50ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoY2hhbmdlVG8pO1xyXG4gICAgICBpZiAoZWxlbWVudCkge1xyXG4gICAgICAgICAgY29uc3Qgdmlld3BvcnRIZWlnaHQgPSB3aW5kb3cuaW5uZXJIZWlnaHQ7XHJcbiAgICAgICAgICBjb25zdCB0YXJnZXRQb3NpdGlvbiA9IGVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkudG9wICsgd2luZG93LnBhZ2VZT2Zmc2V0O1xyXG4gICAgICAgICAgY29uc3Qgc2Nyb2xsVG9Qb3NpdGlvbiA9IHRhcmdldFBvc2l0aW9uIC0gdmlld3BvcnRIZWlnaHQgLyAyICsgZWxlbWVudC5jbGllbnRIZWlnaHQgLyAyO1xyXG4gICAgICAgICAgd2luZG93LnNjcm9sbFRvKHsgdG9wOiBzY3JvbGxUb1Bvc2l0aW9uLCBiZWhhdmlvcjogXCJzbW9vdGhcIiB9KTtcclxuICAgICAgfVxyXG4gIH1cclxuXHJcbiAgICBzZXRBY3RpdmVUYWIodGFiSWQpO1xyXG4gICAgc2V0QWN0aXZlU3ViVGFiKHN1YlRhYklkIHx8IG51bGwpO1xyXG4gIH0sIFtsb2NhdGlvbi5zZWFyY2hdKTtcclxuXHJcbiAgcmV0dXJuIHsgYWN0aXZlVGFiLCBhY3RpdmVTdWJUYWIsIGhhbmRsZVRhYkNoYW5nZSB9O1xyXG59O1xyXG4iLCAiaW1wb3J0IHsgc3RyaW5nVG9TbHVnIH0gZnJvbSBcIi4uL3V0aWxzXCI7XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gSGhvcHAoe3RleHQsIGlkfTp7dGV4dDogc3RyaW5nLCBpZD86IHN0cmluZ30pe1xyXG4gICAgY29uc3QgYXJyOiBKU1guRWxlbWVudFtdICA9IFtdOyBcclxuICAgIHZhciBpZHRleHQ6IHN0cmluZzsgXHJcbiAgICBpZiAoaWQpIHtcclxuICAgICAgICBpZHRleHQgPSBpZDsgXHJcbiAgICB9XHJcbiAgICBlbHNle1xyXG4gICAgICAgIGlkdGV4dCA9IHN0cmluZ1RvU2x1Zyh0ZXh0KTsgXHJcbiAgICB9XHJcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IHRleHQubGVuZ3RoOyBpKyspIHtcclxuICAgICAgICBjb25zdCB4ID0gdGV4dC5jaGFyQXQoaSk7IFxyXG4gICAgICAgIGFyci5wdXNoKDxzcGFuIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPnt4fTwvc3Bhbj4pXHJcbiAgICB9XHJcbiAgICByZXR1cm4oXHJcbiAgICAgICAgPGgxIGlkPXtpZHRleHR9IGNsYXNzTmFtZT1cInBsYXlmdWxcIiBhcmlhLWxhYmVsPVwiV2FzaCB5b3VyIGhhbmRzXCI+XHJcbiAgICAgICAgICAgIHthcnJ9ICAgICAgICBcclxuICAgICAgICA8L2gxPlxyXG4gICAgKVxyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gSHNtb2tlKHt0ZXh0LCBpZH06e3RleHQ6IHN0cmluZywgaWQ/OiBzdHJpbmd9KXtcclxuICAgIGNvbnN0IGFycjogSlNYLkVsZW1lbnRbXSAgPSBbXTsgXHJcbiAgICB2YXIgaWR0ZXh0OiBzdHJpbmc7IFxyXG4gICAgaWYgKGlkKSB7XHJcbiAgICAgICAgaWR0ZXh0ID0gaWQ7IFxyXG4gICAgfVxyXG4gICAgZWxzZXtcclxuICAgICAgICBpZHRleHQgPSBzdHJpbmdUb1NsdWcodGV4dCk7IFxyXG4gICAgfVxyXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0ZXh0Lmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgICAgY29uc3QgeCA9IHRleHQuY2hhckF0KGkpOyBcclxuICAgICAgICBhcnIucHVzaCg8c3BhbiBhcmlhLWhpZGRlbj1cInRydWVcIj57eH08L3NwYW4+KVxyXG4gICAgfVxyXG4gICAgcmV0dXJuKFxyXG4gICAgICAgIDxoMSBpZD17aWR0ZXh0fSBjbGFzc05hbWU9XCJzbW9rZVwiIGFyaWEtbGFiZWw9XCJXYXNoIHlvdXIgaGFuZHNcIj5cclxuICAgICAgICAgICAge2Fycn0gICAgICAgIFxyXG4gICAgICAgIDwvaDE+XHJcbiAgICApXHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBIMSh7dGV4dCwgaWR9Ont0ZXh0OiBzdHJpbmcsIGlkPzogc3RyaW5nfSl7XHJcbiAgICAvKiB2YXIgaWR0ZXh0OiBzdHJpbmc7IFxyXG4gICAgaWYgKGlkKSB7XHJcbiAgICAgICAgaWR0ZXh0ID0gaWQ7IFxyXG4gICAgfVxyXG4gICAgZWxzZXtcclxuICAgICAgICBpZHRleHQgPSBzdHJpbmdUb1NsdWcodGV4dCk7IFxyXG4gICAgfVxyXG4gICAgcmV0dXJuKFxyXG4gICAgPGRpdiBpZD17aWR0ZXh0fSBjbGFzc05hbWU9XCJyb3cgaG9uZVwiPlxyXG4gICAgICAgIDxzdmcgd2lkdGg9XCIxMDAlXCIgaGVpZ2h0PVwiMTAwJVwiPlxyXG4gICAgICAgIDx0ZXh0IHg9XCIwJVwiIHk9XCI2MCVcIj5cclxuICAgICAgICB7dGV4dH1cclxuICAgICAgICA8L3RleHQ+XHJcbiAgICA8L3N2Zz5cclxuICAgIDwvZGl2PlxyXG4gICAgKSAqL1xyXG4gICByZXR1cm4oXHJcbiAgICA8aDEgaWQ9e2lkfSA+e3RleHR9PC9oMT5cclxuICAgKVxyXG59XHJcblxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIEgyKHt0ZXh0LCBpZH06e3RleHQ6IHN0cmluZywgaWQ/OiBzdHJpbmd9KXtcclxuICAgIHZhciBpZHRleHQ6IHN0cmluZzsgXHJcbiAgICBpZiAoaWQpIHtcclxuICAgICAgICBpZHRleHQgPSBpZDsgXHJcbiAgICB9XHJcbiAgICBlbHNle1xyXG4gICAgICAgIGlkdGV4dCA9IHN0cmluZ1RvU2x1Zyh0ZXh0KTsgXHJcbiAgICB9XHJcbiAgICByZXR1cm4oXHJcbiAgICAgICAgPGRpdj5cclxuICAgICAgICAgICAgPGgxIGlkPXtpZHRleHR9Pnt0ZXh0fTwvaDE+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgXHJcbiAgICApXHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBIMyh7dGV4dCwgaWR9Ont0ZXh0OiBzdHJpbmcsIGlkPzogc3RyaW5nfSl7XHJcbiAgICB2YXIgaWR0ZXh0OiBzdHJpbmc7IFxyXG4gICAgaWYgKGlkKSB7XHJcbiAgICAgICAgaWR0ZXh0ID0gaWQ7IFxyXG4gICAgfVxyXG4gICAgZWxzZXtcclxuICAgICAgICBpZHRleHQgPSBzdHJpbmdUb1NsdWcodGV4dCk7IFxyXG4gICAgfVxyXG4gICAgcmV0dXJuKFxyXG4gICAgICAgIDxkaXY+XHJcbiAgICAgICAgICAgIDxoMiBpZD17aWR0ZXh0fT4ge3RleHR9IDwvaDI+ICBcclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICBcclxuICAgIClcclxufVxyXG5leHBvcnQgZnVuY3Rpb24gUGhpbGlwSDMoe2NoaWxkcmVuLCBpZH06e2NoaWxkcmVuOiBKU1guRWxlbWVudCAsIGlkOiBzdHJpbmd9KXtcclxuICAgIHJldHVybihcclxuICAgICAgICA8ZGl2PlxyXG4gICAgICAgICAgICA8aDIgICBpZD17aWR9PiB7Y2hpbGRyZW59IDwvaDI+ICBcclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICBcclxuICAgIClcclxufVxyXG5leHBvcnQgZnVuY3Rpb24gSDQoe3RleHQsIGlkfTp7dGV4dDogc3RyaW5nLCBpZD86IHN0cmluZ30pe1xyXG4gICAgdmFyIGlkdGV4dDogc3RyaW5nOyBcclxuICAgIGlmIChpZCkge1xyXG4gICAgICAgIGlkdGV4dCA9IGlkOyBcclxuICAgIH1cclxuICAgIGVsc2V7XHJcbiAgICAgICAgaWR0ZXh0ID0gc3RyaW5nVG9TbHVnKHRleHQpOyBcclxuICAgIH1cclxuICAgIHJldHVybihcclxuICAgICAgICA8ZGl2PlxyXG4gICAgICAgICAgICA8aDMgaWQ9e2lkdGV4dH0+IHt0ZXh0fSA8L2gzPiAgXHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgXHJcbiAgICApXHJcbn1cclxuZXhwb3J0IGZ1bmN0aW9uIEg1KHt0ZXh0LCBpZH06e3RleHQ6IHN0cmluZywgaWQ/OiBzdHJpbmd9KXtcclxuICAgIHZhciBpZHRleHQ6IHN0cmluZzsgXHJcbiAgICBpZiAoaWQpIHtcclxuICAgICAgICBpZHRleHQgPSBpZDsgXHJcbiAgICB9XHJcbiAgICBlbHNle1xyXG4gICAgICAgIGlkdGV4dCA9IHN0cmluZ1RvU2x1Zyh0ZXh0KTsgXHJcbiAgICB9XHJcbiAgICByZXR1cm4oXHJcbiAgICAgICAgICAgIDxoNCBpZD17aWR0ZXh0fT4ge3RleHR9IDwvaDQ+ICBcclxuICAgICAgICBcclxuICAgIClcclxufVxyXG5cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBIaGlnaGxpZ2h0KHtjaGlsZHJlbn06e2NoaWxkcmVuOiBSZWFjdC5SZWFjdE5vZGV9KXtcclxuICAgIHJldHVybihcclxuICAgIDxkaXYgY2xhc3NOYW1lPVwiY29udGVudCB2MlwiPlxyXG4gICAgICAgIDxwPntjaGlsZHJlbn08L3A+XHJcbiAgICA8L2Rpdj5cclxuICAgIClcclxufVxyXG5leHBvcnQgZnVuY3Rpb24gSHNwb2lsZXIoe2NoaWxkcmVufTp7Y2hpbGRyZW46IFJlYWN0LlJlYWN0Tm9kZX0pe1xyXG4gICAgcmV0dXJuKFxyXG4gICAgPGRpdiBjbGFzc05hbWU9XCJjb250ZW50IHYzXCI+XHJcbiAgICAgICAgPHA+e2NoaWxkcmVufTwvcD5cclxuICAgIDwvZGl2PlxyXG4gICAgKVxyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gSHdhdmUoe3RleHQsIGlkfTp7dGV4dDogc3RyaW5nLCBpZD86IHN0cmluZ30pe1xyXG4gICAgdmFyIGlkdGV4dDogc3RyaW5nOyBcclxuICAgIGlmIChpZCkge1xyXG4gICAgICAgIGlkdGV4dCA9IGlkOyBcclxuICAgIH1cclxuICAgIGVsc2V7XHJcbiAgICAgICAgaWR0ZXh0ID0gc3RyaW5nVG9TbHVnKHRleHQpOyBcclxuICAgIH1cclxuICAgIHJldHVybihcclxuICAgICAgIC8qICA8c3ZnIGlkPXtpZHRleHR9IGNsYXNzTmFtZT1cImJpZ3RpdGxlXCIgdmlld0JveD1cIjAgMCAxMDAgMjBcIj5cclxuICAgICAgICA8ZGVmcz5cclxuICAgICAgICAgICAgPGxpbmVhckdyYWRpZW50IGlkPVwiZ3JhZGllbnRcIiB4MT1cIjBcIiB4Mj1cIjBcIiB5MT1cIjBcIiB5Mj1cIjFcIj5cclxuICAgICAgICAgICAgPHN0b3Agb2Zmc2V0PVwiNSVcIiBzdG9wQ29sb3I9XCIjODUwRjc4XCIvPlxyXG4gICAgICAgICAgICA8c3RvcCBvZmZzZXQ9XCI5NSVcIiBzdG9wQ29sb3I9XCIjQTBBN0YzXCIvPlxyXG4gICAgICAgICAgICA8L2xpbmVhckdyYWRpZW50PlxyXG4gICAgICAgICAgICA8cGF0dGVybiBpZD1cIndhdmVcIiB4PVwiMFwiIHk9XCIwXCIgd2lkdGg9XCIxMjBcIiBoZWlnaHQ9XCIyMFwiIHBhdHRlcm5Vbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XHJcbiAgICAgICAgICAgIDxwYXRoIGlkPVwid2F2ZVBhdGhcIiBkPVwiTS00MCA5IFEtMzAgNyAtMjAgOSBUMCA5IFQyMCA5IFQ0MCA5IFQ2MCA5IFQ4MCA5IFQxMDAgOSBUMTIwIDkgVjIwIEgtNDB6XCIgbWFzaz1cInVybCgjbWFzaylcIiBmaWxsPVwidXJsKCNncmFkaWVudClcIj4gXHJcbiAgICAgICAgICAgICAgICA8YW5pbWF0ZVRyYW5zZm9ybVxyXG4gICAgICAgICAgICAgICAgICAgIGF0dHJpYnV0ZU5hbWU9XCJ0cmFuc2Zvcm1cIlxyXG4gICAgICAgICAgICAgICAgICAgIGJlZ2luPVwiMHNcIlxyXG4gICAgICAgICAgICAgICAgICAgIGR1cj1cIjNzXCJcclxuICAgICAgICAgICAgICAgICAgICB0eXBlPVwidHJhbnNsYXRlXCJcclxuICAgICAgICAgICAgICAgICAgICBmcm9tPVwiMCwwXCJcclxuICAgICAgICAgICAgICAgICAgICB0bz1cIjQwLDBcIlxyXG4gICAgICAgICAgICAgICAgICAgIHJlcGVhdENvdW50PVwiaW5kZWZpbml0ZVwiIC8+XHJcbiAgICAgICAgICAgIDwvcGF0aD5cclxuICAgICAgICAgICAgPC9wYXR0ZXJuPlxyXG4gICAgICAgIDwvZGVmcz5cclxuICAgICAgICA8dGV4dCB0ZXh0QW5jaG9yPVwibWlkZGxlXCIgeD1cIjUwXCIgeT1cIjE1XCIgZm9udFNpemU9XCIxM1wiIGZpbGw9XCJ3aGl0ZVwiICBmaWxsT3BhY2l0eT1cIjFcIj57dGV4dH08L3RleHQ+XHJcbiAgICAgICAgPHRleHQgdGV4dEFuY2hvcj1cIm1pZGRsZVwiIHg9XCI1MFwiIHk9XCIxNVwiIGZvbnRTaXplPVwiMTNcIiBmaWxsPVwidXJsKCN3YXZlKVwiICBmaWxsT3BhY2l0eT1cIjAuN1wiPnt0ZXh0fTwvdGV4dD5cclxuICAgICAgICA8dGV4dCB0ZXh0QW5jaG9yPVwibWlkZGxlXCIgeD1cIjUwXCIgeT1cIjE1XCIgZm9udFNpemU9XCIxM1wiIGZpbGw9XCJ1cmwoI2dyYWRpZW50KVwiIGZpbGxPcGFjaXR5PVwiMC45XCI+e3RleHR9PC90ZXh0PlxyXG4gICAgICAgIDwvc3ZnPiAqL1xyXG4gICAgICAgIDxzdmcgaWQ9e2lkdGV4dH0gY2xhc3NOYW1lPVwiYmlndGl0bGVcIiB2aWV3Qm94PVwiMCAwIDEwMCAyMFwiPlxyXG4gICAgPGRlZnM+XHJcbiAgICAgICAgPGxpbmVhckdyYWRpZW50IGlkPVwiZ3JhZGllbnRcIiB4MT1cIjBcIiB4Mj1cIjBcIiB5MT1cIjBcIiB5Mj1cIjFcIj5cclxuICAgICAgICAgICAgPHN0b3Agb2Zmc2V0PVwiNSVcIiBzdG9wQ29sb3I9XCIjODUwRjc4XCIgLz5cclxuICAgICAgICAgICAgPHN0b3Agb2Zmc2V0PVwiOTUlXCIgc3RvcENvbG9yPVwiI0EwQTdGM1wiIC8+XHJcbiAgICAgICAgPC9saW5lYXJHcmFkaWVudD5cclxuICAgICAgICA8cGF0dGVybiBpZD1cIndhdmVcIiB4PVwiMFwiIHk9XCIwXCIgd2lkdGg9XCIxMjBcIiBoZWlnaHQ9XCIyMFwiIHBhdHRlcm5Vbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XHJcbiAgICAgICAgICAgIDxwYXRoIGlkPVwid2F2ZVBhdGhcIiBkPVwiTS00MCA5IFEtMzAgNyAtMjAgOSBUMCA5IFQyMCA5IFQ0MCA5IFQ2MCA5IFQ4MCA5IFQxMDAgOSBUMTIwIDkgVjIwIEgtNDB6XCIgZmlsbD1cInVybCgjZ3JhZGllbnQpXCI+XHJcbiAgICAgICAgICAgICAgICA8YW5pbWF0ZVRyYW5zZm9ybVxyXG4gICAgICAgICAgICAgICAgICAgIGF0dHJpYnV0ZU5hbWU9XCJ0cmFuc2Zvcm1cIlxyXG4gICAgICAgICAgICAgICAgICAgIGJlZ2luPVwiMHNcIlxyXG4gICAgICAgICAgICAgICAgICAgIGR1cj1cIjNzXCJcclxuICAgICAgICAgICAgICAgICAgICB0eXBlPVwidHJhbnNsYXRlXCJcclxuICAgICAgICAgICAgICAgICAgICBmcm9tPVwiMCwwXCJcclxuICAgICAgICAgICAgICAgICAgICB0bz1cIjQwLDBcIlxyXG4gICAgICAgICAgICAgICAgICAgIHJlcGVhdENvdW50PVwiaW5kZWZpbml0ZVwiIC8+XHJcbiAgICAgICAgICAgIDwvcGF0aD5cclxuICAgICAgICA8L3BhdHRlcm4+XHJcbiAgICA8L2RlZnM+XHJcbiAgICA8dGV4dCB0ZXh0QW5jaG9yPVwibWlkZGxlXCIgeD1cIjUwXCIgeT1cIjE1XCIgZm9udFNpemU9XCIxM1wiICBzdHJva2U9XCJ2YXIoLS1vdXJiZWlnZSlcIiBzdHJva2VXaWR0aD17XCIwLjJweFwifSAgZmlsbD1cInVybCgjZ3JhZGllbnQpXCI+e3RleHR9PC90ZXh0PlxyXG4gICAgPHRleHQgdGV4dEFuY2hvcj1cIm1pZGRsZVwiIHg9XCI1MFwiIHk9XCIxNVwiIGZvbnRTaXplPVwiMTNcIiBmaWxsPVwidXJsKCN3YXZlKVwic3Ryb2tlPVwidmFyKC0tb3VyYmVpZ2UpXCIgc3Ryb2tlV2lkdGg9e1wiMC4ycHhcIn0gICBmaWxsT3BhY2l0eT1cIjFcIj57dGV4dH08L3RleHQ+XHJcbjwvc3ZnPlxyXG4gICAgKVxyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gSHBvcGFydCh7dGV4dCwgaWR9Ont0ZXh0OiBzdHJpbmcsIGlkPzogc3RyaW5nfSl7XHJcbiAgICB2YXIgaWR0ZXh0OiBzdHJpbmc7IFxyXG4gICAgaWYgKGlkKSB7XHJcbiAgICAgICAgaWR0ZXh0ID0gaWQ7IFxyXG4gICAgfVxyXG4gICAgZWxzZXtcclxuICAgICAgICBpZHRleHQgPSBzdHJpbmdUb1NsdWcodGV4dCk7IFxyXG4gICAgfVxyXG5yZXR1cm4oXHJcbiAgICA8ZGl2IGlkPXtpZHRleHR9IGNsYXNzTmFtZT1cInJvd1wiPlxyXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICA8ZGl2IGNsYXNzTmFtZT1cInJlbGF0aXZlIHBvcGFydC13cmFwcGVyXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJhYnNvbHV0ZSBwb3BhcnRcIj5cclxuICAgICAgICAgICAge3RleHR9XHJcbiAgICAgICAgPC9kaXY+IFxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuKVxyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gSHNoYWRvbmUoe3RleHR9Ont0ZXh0OiBzdHJpbmd9KXtcclxuICAgIHJldHVybihcclxuICAgIDxkaXYgY2xhc3NOYW1lPVwiaDMtYm94XCI+XHJcbiAgICAgICAgPHAgY2xhc3NOYW1lPVwic3Ryb2tlIHNoYWRvdy1zdHJva2VcIj57dGV4dH08L3A+XHJcbiAgICA8L2Rpdj5cclxuICAgIClcclxufVxyXG5leHBvcnQgZGVmYXVsdCBIMTsiLCAiZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gUHJlQ3lzZSgpIHtcclxuICAgIHJldHVybiAoPHNwYW4gY2xhc3NOYW1lPVwidW5kZXJsaW5lLS1tYWdpY2FsIHByZWN5c2VcIj5QcmVDeXNlPC9zcGFuPlxyXG4gICAgKX0iLCAiaW1wb3J0IHsgRmFkZUluIH0gZnJvbSBcIi4uL2NvbXBvbmVudHMvRmFkZUluXCI7XHJcbmltcG9ydCB7IEJyZWF0aGUgfSBmcm9tIFwiLi4vY29tcG9uZW50cy9CcmVhdGhlXCI7XHJcbmltcG9ydCB7IFByb2JsZW1zIH0gZnJvbSBcIi4uL2NvbXBvbmVudHMvUHJvYmxlbXNcIjtcclxuaW1wb3J0IHsgdXNlVGFiTmF2aWdhdGlvbiB9IGZyb20gXCIuLi91dGlscy9UYWJOYXZpZ2F0aW9uXCI7XHJcbmltcG9ydCB7IEg1IH0gZnJvbSBcIi4uL2NvbXBvbmVudHMvSGVhZGluZ3NcIjtcclxuaW1wb3J0IFByZUN5c2UgZnJvbSBcIi4uL2NvbXBvbmVudHMvcHJlY3lzZVwiO1xyXG5pbXBvcnQgeyB1c2VOYXZpZ2F0aW9uIH0gZnJvbSBcIi4uL3V0aWxzXCI7XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gSG9tZSgpIHtcclxuICB1c2VUYWJOYXZpZ2F0aW9uKCk7XHJcbiAgY29uc3Qge2dvVG9QYWdlQW5kU2Nyb2xsfSA9IHVzZU5hdmlnYXRpb24oKTsgXHJcbi8qICovXHJcbiAgcmV0dXJuIChcclxuICAgIDw+XHJcbiAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wgaGVhZGVyLWNvbnRhaW5lciBsYW5kaW5nLXBhZ2UtaGVhZGVyXCIgaWQ9XCJsYW5kaW5nLXBhZ2UtaGVhZGVyXCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny90aGF3LzIwMjQtcHJlaXNlLndlYnBcIiAvPlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sLTNcIj5cclxuICAgICAgICAgICAgICA8aW1nIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3RoYXcvZ29sZC1tZWRhaWxsZS13aWtpLndlYnBcIiAvPlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj4gIFxyXG4gICAgICAgICAgICA8YnIvPlxyXG4gICAgICAgICAgICA8aDMgc3R5bGU9e3t0ZXh0QWxpZ246IFwiY2VudGVyXCJ9fT5PdXIgUHJvamVjdCwgT3VyIFZpY3Rvcnk8L2gzPlxyXG4gICAgICAgICAgICA8aDQgc3R5bGU9e3t0ZXh0QWxpZ246IFwiY2VudGVyXCJ9fT5Hb2xkIE1lZGFsIGZvciBFeGNlbGxlbmNlIGluIFN5bnRoZXRpYyBCaW9sb2d5IGFuZCBFbmdpbmVlcmluZyBTdWNjZXNzIGFzIG9uZSBvZiB0aGUgYmVzdCB0aGVyYXBldXRpYyBwcm9qZWN0czwvaDQ+XHJcbiAgICAgICAgICBcclxuICAgICAgICAgICAgPHAgc3R5bGU9e3t0ZXh0QWxpZ246IFwiY2VudGVyXCJ9fT5BIHRydWUgaG9ub3IgZm9yIG91ciA8Yj5jdXR0aW5nLWVkZ2U8L2I+IGNvbnRyaWJ1dGlvbnMgdG8gdGhlIHdvcmxkIG9mIHN5bnRoZXRpYyBiaW9sb2d5IGFuZCA8Yj5lbmdpbmVlcmluZyBicmVha3Rocm91Z2hzPC9iPi48L3A+XHJcbiAgICAgICAgICAgICBcclxuICAgICAgICAgICAgPGJyLz5cclxuICAgICAgICAgICAgPGgzPkFuZCBwcmVzZW50IG91ciBtUk5BLWJhc2VkIDxiPmdlbmUgdGhlcmFweTwvYj4gZm9yIDxiPnRhcmdldGVkIGFuZCBzYWZlPC9iPiByZWNvbnN0aXR1dGlvbiBvZiBDRlRSIHRvIHJlc3RvcmUgdGhlIG11Y29jaWxpYXJ5IGNsZWFyYW5jZSBvZiBwYXRpZW50cyB3aXRoIDxiPkN5c3RpYyBGaWJyb3NpczwvYj4uPC9oMz5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sIGNlbnRlclwiPlxyXG4gICAgICAgICAgICAgIDxpbWcgc3R5bGU9e3ttYXJnaW46IFwiYXV0b1wifX0gaGVpZ2h0PVwiNDAwcHhcIiBjbGFzc05hbWU9XCJjZW50ZXJcIiBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny90aGF3L2Jlc3QtaW50ZWdyYXRlZC1odW1hbi1wcmF0aWNlcy53ZWJwXCIgLz5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgIDxpbWcgc3R5bGU9e3ttYXJnaW46IFwiYXV0b1wifX0gaGVpZ2h0PVwiNDAwcHhcIiBjbGFzc05hbWU9XCJjZW50ZXJcIiBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny90aGF3L2Jlc3QtcHJlc2VudGF0aW9uLWF3YXJkLndlYnBcIiAvPlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICAgICAgPGltZyBzdHlsZT17e21hcmdpbjogXCJhdXRvXCJ9fSBoZWlnaHQ9XCI0MDBweFwiIGNsYXNzTmFtZT1cImNlbnRlclwiIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3RoYXcvc2FmZXR5LWFuZC1zZWN1cml0eS1uZXUud2VicFwiIC8+XHJcbiAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj4gIFxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvdyBhbGlnbi1pdGVtcy1jZW50ZXJcIiBzdHlsZT17e21hcmdpbkJvdHRvbTogXCJub25lICFpbXBvcnRhbnRcIiwgcGFkZGluZ0JvdHRvbTogXCIwcHggIWltcG9ydGFudFwifX0+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIiBzdHlsZT17e21hcmdpbkJvdHRvbTogXCJub25lICFpbXBvcnRhbnRcIiwgcGFkZGluZ0JvdHRvbTogXCIwcHggIWltcG9ydGFudFwifX0+XHJcbiAgICAgICAgICAgICAgIDxoMyBzdHlsZT17e3RleHRBbGlnbjogXCJjZW50ZXJcIn19PkJlc3QgSW50ZWdyYXRlZCBIdW1hbiBQcmFjdGljZXM8L2gzPlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCIgc3R5bGU9e3ttYXJnaW5Cb3R0b206IFwibm9uZSAhaW1wb3J0YW50XCIsIHBhZGRpbmdCb3R0b206IFwiMHB4ICFpbXBvcnRhbnRcIn19PlxyXG4gICAgICAgICAgICAgIDxoMyBzdHlsZT17e3RleHRBbGlnbjogXCJjZW50ZXJcIn19PkJlc3QgUHJlc2VudGF0aW9uPC9oMz5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiIHN0eWxlPXt7bWFyZ2luQm90dG9tOiBcIm5vbmUgIWltcG9ydGFudFwiLCBwYWRkaW5nQm90dG9tOiBcIjBweCAhaW1wb3J0YW50XCJ9fT5cclxuICAgICAgICAgICAgICAgPGgzIHN0eWxlPXt7dGV4dEFsaWduOiBcImNlbnRlclwifX0+U2FmZXR5IGFuZCBTZWN1cml0eSBBd2FyZDwvaDM+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvdyBhbGlnbi1pdGVtcy1jZW50ZXJcIiA+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgICAgICAgPHAgc3R5bGU9e3t0ZXh0QWxpZ246IFwiY2VudGVyXCJ9fT5FdGhpY2FsLCBpbXBhY3RmdWwsIGFuZCBncm91bmRicmVha2luZyBzY2llbmNlPC9wPlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICAgICAgPHAgc3R5bGU9e3t0ZXh0QWxpZ246IFwiY2VudGVyXCJ9fT5BYmlsaXR5IHRvIGNvbW11bmljYXRlIGNvbXBsZXggc2NpZW5jZSB3aXRoIGNsYXJpdHkgYW5kIGltcGFjdDwvcD5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgICA8cCBzdHlsZT17e3RleHRBbGlnbjogXCJjZW50ZXJcIn19PlVubWF0Y2hlZCBzYWZldHkgc3RhbmRhcmRzLCBlbnN1cmluZyBpbm5vdmF0aW9uIHdpdGggcmVzcG9uc2liaWxpdHk8L3A+XHJcbiAgICAgICAgICAgICAgPC9kaXY+ICBcclxuICAgICAgICAgICAgPC9kaXY+IFxyXG4gICAgICAgICAgICA8YnIvPjxici8+XHJcbiAgICAgICAgICAgIDxwPkluIDIwMjQsIG91ciBncm91bmRicmVha2luZyB3b3JrIGluIDxiPnN5bnRoZXRpYyBiaW9sb2d5PC9iPiBhbmQgPGI+bWVkaWNhbCBlbmdpbmVlcmluZzwvYj4gd2FzIHJlY29nbml6ZWQgd2l0aCA8Yj5tdWx0aXBsZSBwcmVzdGlnaW91cyBhd2FyZHM8L2I+LCBcclxuICAgICAgICAgICAgICBtYXJraW5nIGEgbW9udW1lbnRhbCBhY2hpZXZlbWVudCBpbiBvdXIgam91cm5leS4gVGhlc2UgPGI+aG9ub3JzPC9iPiBhcmUgbm90IGp1c3QgdHJvcGhpZXMgXHUyMDE0IHRoZXkgcmVwcmVzZW50IHRoZSA8Yj5wYXNzaW9uPC9iPiwgPGI+aW5ub3ZhdGlvbjwvYj4sIFxyXG4gICAgICAgICAgICAgIGFuZCBleGNlbGxlbmNlIGVtYmVkZGVkIGluIGV2ZXJ5IGFzcGVjdCBvZiBvdXIgcHJvamVjdC48L3A+XHJcbiAgICAgICAgICAgICAgPHA+VGhlc2UgPGI+aG9ub3JzPC9iPiBkb25cdTIwMTl0IGp1c3QgdmFsaWRhdGUgb3VyIHNjaWVuY2UgXHUyMDE0IHRoZXkgYWZmaXJtIG91ciA8Yj52aXNpb248L2I+IGZvciBhIGhlYWx0aGllciwgc21hcnRlciwgYW5kIG1vcmUgc3VzdGFpbmFibGUgZnV0dXJlLlxyXG4gICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICA8aDQ+RXhwZXJpZW5jZSB0aGUgSm91cm5leSAgICAgICAgICAgICAgPC9oND5cclxuICAgICAgICAgICAgICA8cD5EaXZlIGRlZXBlciBpbnRvIG91ciBhd2FyZC13aW5uaW5nIHdvcmsuIFdhdGNoIG91ciA8Yj5lcGljIHByZXNlbnRhdGlvbjwvYj4gYW5kIGV4cGxvcmUgdGhlIGZ1bGwgc2NvcGUgb2Ygb3VyIHByb2plY3QuIFxyXG4gICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICA8cD5DaGVjayBvdXQgdGhlIHZpZGVvcyBhbmQgbW9yZSB0byBzZWUgaG93IHdlIGFyZSA8Yj5wdXNoaW5nIHRoZSBib3VuZGFyaWVzPC9iPiBvZiB3aGF0J3MgcG9zc2libGU6XHJcbiAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbCBoZWFkZXItY29udGFpbmVyIGxhbmRpbmctcGFnZS1oZWFkZXJcIiBpZD1cImxhbmRpbmctcGFnZS1oZWFkZXItMlwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvdyBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wgaGVhZGVyLWJ1dHRvbi1yb3dcIj5cclxuICAgICAgICAgICAgICAgIDxkaXY+PEg1IHRleHQ9XCJUYWtlIGEgdG91ciB0aHJvdWdoIG91ciBoaWdobGlnaHRzOlwiLz4gIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgICAgICAgICYjODU5NDsgPGEgaHJlZj1cImRlc2NyaXB0aW9uP3Njcm9sbFRvPUFic3RyYWN0XCI+V2hhdCBpcyA8UHJlQ3lzZS8+PyA8L2E+IDxici8+IDxici8+IFxyXG4gICAgICAgICAgICAgICAgICAmIzg1OTQ7IDxhIGhyZWY9XCJlbmdpbmVlcmluZz90YWI9dGFiLW91ci1jeWNsZSZzY3JvbGxUbz1vdXJjeWNsZVwiPldoYXQgaXMgb3VyIHN0cmF0ZWd5PzwvYT4gPGJyLz4gPGJyLz5cclxuICAgICAgICAgICAgICAgICAgJiM4NTk0OyA8YSBocmVmPVwibWF0ZXJpYWxzLW1ldGhvZHM/c2Nyb2xsVG89aW50cm9kdWN0aW9uXCI+SG93IGRpZCB3ZSBkbyB0aGlzPzwvYT4gPGJyLz4gPGJyLz5cclxuICAgICAgICAgICAgICAgICAgJiM4NTk0OyA8YSBocmVmPVwicmVzdWx0cz9zY3JvbGxUbz1leHBlcmltZW50YWwtZGVzaWduXCI+V2hhdCBkaWQgd2UgYXJjaGlldmU/PC9hPiA8YnIvPiA8YnIvPlxyXG4gICAgICAgICAgICAgICAgICAmIzg1OTQ7IDxhIGhyZWY9XCJwYXJ0cz9zY3JvbGxUbz1QYXJ0cyBDb2xsZWN0aW9uMlwiPldoYXQgcGFydHMgYXJlIHdlIGNvbnRyaWJ1dGluZz88L2E+IDxici8+IDxici8+XHJcbiAgICAgICAgICAgICAgICAgICYjODU5NDsgPGEgaHJlZj1cImp1ZGdpbmc/c2Nyb2xsVG89T3ZlcnZpZXdIXCI+V2hhdCBhcmUgb3VyIHNwZWNpYWwgYXdhcmRzPzwvYT5cclxuICAgICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wgaGVhZGVyLWJ1dHRvbi1yb3dcIj5cclxuICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlQW5kU2Nyb2xsKFwic2Nyb2xsc3RhcnRcIiwgXCJcIil9PiA8Yj5TQ1JPTEw8L2I+IHRvIHNlZSBpbnRyb2R1Y3RvcnkgYW5pbWF0aW9uLjwvYnV0dG9uPiAgXHJcbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICA8cD4gXHJcbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiAgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VBbmRTY3JvbGwoXCJBYnN0cmFjdFwiLCBcIi9kZXNjcmlwdGlvblwiKX0gPiA8Yj5DTElDSzwvYj4gdG8gZ28gZGlyZWN0bHkgdG8gb3VyIFByb2plY3QgRGVzY3JpcHRpb24uPC9idXR0b24+IFxyXG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxidXR0b24gb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VBbmRTY3JvbGwoXCJzY2llbmN5XCIsIFwiXCIpfT4gPGI+SlVNUDwvYj4gc3RyYWlnaHQgdG8gdGhlIHNjaWVuY2UgcGFydCBvZiB0aGUgYW5pbWF0aW9uLjwvYnV0dG9uPiAgIFxyXG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgXHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8aW1nIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2xhbmRpbmctcGFnZS9scC0yLnN2Z1wiLz4gIFxyXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93XCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sIGJ1dHRvbi14XCI+XHJcbiAgICAgICAgICAgICAgPGJ1dHRvbiAgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VBbmRTY3JvbGwoXCJBcHByb2FjaDJIXCIsIFwiL2Rlc2NyaXB0aW9uXCIpfSA+IEx1bmctU3BlY2lmaWMgTGlwaWQgTmFub3BhcnRpY2xlPC9idXR0b24+IFxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wgYnV0dG9uLXhcIj5cclxuICAgICAgICAgICAgICA8YnV0dG9uICBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZUFuZFNjcm9sbChcIkFwcHJvYWNoMUhcIiwgXCIvZGVzY3JpcHRpb25cIil9ID4gTmV4dC1HZW5lcmF0aW9uIFByaW1lIEVkaXRpbmcgVGVjaG5vbG9neVxyXG4gICAgICAgICAgICAgIDwvYnV0dG9uPiBcclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcblxyXG5cclxuXHJcbiAgICA8ZGl2IGNsYXNzTmFtZT1cInJvdyBtdC00XCI+XHJcbiAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCIgaWQ9XCJlcnN0ZWNvbFwiPlxyXG4gICAgICAgIDxkaXYgIGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgIFxyXG4gICAgICAgICAgPGRpdiBzdHlsZT17eydwb3NpdGlvbic6ICdyZWxhdGl2ZScsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgJ3pJbmRleCc6ICcxJywgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgJ3RvcCc6ICcxMHZoJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAnbGVmdCc6ICcwdncnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICdzY2FsZSc6ICcwLjI1J319PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPVwic2Nyb2xsc3RhcnRcIj48L2Rpdj5cclxuICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9sYW5kaW5nL2luZGljYXRvci53ZWJwXCI+PC9pbWc+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgIFxyXG4gICAgICAgICAgXHJcbiAgICAgICAgICA8QnJlYXRoZT48L0JyZWF0aGU+XHJcbiAgICAgICAgICBcclxuICAgICAgICAgIDxQcm9ibGVtcz48L1Byb2JsZW1zPlxyXG4gICAgICAgICAgXHJcbiAgICAgICAgICB7LyogU3BhY2luZyBCbG9jayAqL31cclxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSdjb2wnIHN0eWxlPXt7ICdoZWlnaHQnOiAnMTUwdmgnIH19PjwvZGl2PlxyXG4gICAgICAgICAgXHJcbiAgICAgICAgICA8RmFkZUluIGZpbGVwYXRoPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvbGFuZGluZy9naWZzLzIwMGstYW5pbS10cmFuc3BhcmVudC1iZy5naWZcIiBiZz0naHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvbGFuZGluZy9iYWNrZ3JvdW5kcy9iYWNrZ3JvdW5kLTEtdGV4dC53ZWJwJz48L0ZhZGVJbj5cclxuICAgICAgICAgIFxyXG4gICAgICAgICAgPEZhZGVJbiBmaWxlcGF0aD1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2xhbmRpbmctcGFnZS9scC01LTIuc3ZnXCIgYmc9J2h0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2xhbmRpbmctcGFnZS9scC01LTIuc3ZnJz48L0ZhZGVJbj5cclxuICAgICAgICAgIDxGYWRlSW4gZmlsZXBhdGg9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9sYW5kaW5nLXBhZ2UvbHAtNi0yLnN2Z1wiIGJnPSdodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9sYW5kaW5nLXBhZ2UvbHAtNi0yLnN2Zyc+PC9GYWRlSW4+XHJcbiAgICAgICAgICA8RmFkZUluIGZpbGVwYXRoPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvbGFuZGluZy1wYWdlL2xwLTctMi5zdmdcIiBiZz0naHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvbGFuZGluZy1wYWdlL2xwLTctMi5zdmcnPjwvRmFkZUluPlxyXG4gICAgICAgICAgPEZhZGVJbiBmaWxlcGF0aD1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2xhbmRpbmctcGFnZS9scC04LTIuc3ZnXCIgYmc9J2h0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2xhbmRpbmctcGFnZS9scC04LTIuc3ZnJz48L0ZhZGVJbj5cclxuICAgICAgICAgIDxGYWRlSW4gZmlsZXBhdGg9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9sYW5kaW5nLXBhZ2UvbHAtOS0yLnN2Z1wiIGJnPSdodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9sYW5kaW5nLXBhZ2UvbHAtOS0yLnN2Zyc+PC9GYWRlSW4+XHJcbiAgICAgICAgICA8RmFkZUluIGZpbGVwYXRoPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvbGFuZGluZy1wYWdlL2xwLTEwLnN2Z1wiIGJnPSdodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9sYW5kaW5nLXBhZ2UvbHAtMTAuc3ZnJz48L0ZhZGVJbj5cclxuICAgICAgICAgIDxGYWRlSW4gZmlsZXBhdGg9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9sYW5kaW5nLXBhZ2UvbHAtMTEtMi5zdmdcIiBiZz0naHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvbGFuZGluZy1wYWdlL2xwLTExLTIuc3ZnJz48L0ZhZGVJbj5cclxuICAgICAgICAgIDxGYWRlSW4gZmlsZXBhdGg9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9sYW5kaW5nLXBhZ2UvbHAtMTIud2VicFwiIGJnPSdodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9sYW5kaW5nLXBhZ2UvbHAtMTIud2VicCc+PC9GYWRlSW4+XHJcbiAgICAgICAgICA8RmFkZUluIGZpbGVwYXRoPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvbGFuZGluZy1wYWdlL2xwLTEzLTIud2VicFwiIGJnPSdodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9sYW5kaW5nLXBhZ2UvbHAtMTMtMi53ZWJwJz48L0ZhZGVJbj5cclxuICAgICAgICAgIDxGYWRlSW4gZmlsZXBhdGg9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9sYW5kaW5nLXBhZ2UvbHAtMTQud2VicFwiIGJnPSdodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9sYW5kaW5nLXBhZ2UvbHAtMTQud2VicCc+PC9GYWRlSW4+XHJcbiAgICAgICAgICA8RmFkZUluIGZpbGVwYXRoPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvbGFuZGluZy1wYWdlL2xwLTE1LndlYnBcIiBiZz0naHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvbGFuZGluZy1wYWdlL2xwLTE1LndlYnAnPjwvRmFkZUluPlxyXG4gICAgICAgICAgPEZhZGVJbiBmaWxlcGF0aD1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2xhbmRpbmctcGFnZS9scC0xNi53ZWJwXCIgYmc9J2h0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2xhbmRpbmctcGFnZS9scC0xNi53ZWJwJz48L0ZhZGVJbj5cclxuICAgICAgICAgIDxGYWRlSW4gZmlsZXBhdGg9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9sYW5kaW5nLXBhZ2UvbHAtMTcuc3ZnXCIgYmc9J2h0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2xhbmRpbmctcGFnZS9scC0xNy5zdmcnPjwvRmFkZUluPlxyXG4gICAgICAgICAgPEZhZGVJbiBmaWxlcGF0aD1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2xhbmRpbmctcGFnZS9scC0xOC0yLnN2Z1wiIGJnPSdodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9sYW5kaW5nLXBhZ2UvbHAtMTgtMi5zdmcnPjwvRmFkZUluPlxyXG4gICAgICAgICAgPEZhZGVJbiBmaWxlcGF0aD1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2xhbmRpbmctcGFnZS9scC0xOS0yLnN2Z1wiIGJnPSdodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9sYW5kaW5nLXBhZ2UvbHAtMTktMi5zdmcnPjwvRmFkZUluPlxyXG5cclxuXHJcblxyXG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3dcIj5cclxuICAgICAgICAgIDxpZnJhbWUgdGl0bGU9XCJCaWVsZWZlbGQtQ2VCaVRlYzogUHJlQ3lzZSAtIFJlZGVmaW5pbmcgQ3lzdGljIEZpYnJvc2lzIEdlbmUgVGhlcmFweSB3aXRoIE5leHQtRy4uLiAoMjAyNCkgLSBQcm9qZWN0IFByb21vdGlvbiBbRW5nbGlzaF1cIiB3aWR0aD1cIjEwMCVcIiBoZWlnaHQ9XCI2MDBcdTAwREZ4XCIgc3JjPVwiaHR0cHM6Ly92aWRlby5pZ2VtLm9yZy92aWRlb3MvZW1iZWQvNzRlN2QyZTYtMDQ0YS00ZTM3LTgzZWItOGE2ZDEyNjI2NDA5P2xvb3A9MVwiIGZyYW1lQm9yZGVyPVwiMFwiIGFsbG93RnVsbFNjcmVlbj17dHJ1ZX0gc2FuZGJveD1cImFsbG93LXNhbWUtb3JpZ2luIGFsbG93LXNjcmlwdHMgYWxsb3ctcG9wdXBzIGFsbG93LWZvcm1zXCI+PC9pZnJhbWU+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuXHJcblxyXG4gICAgICAgICB7LyogXHJcbiAgICAgICAgICA8RmFkZUluIGZpbGVwYXRoPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvbGFuZGluZy9naWZzLzNrLWFuaW0tdHJhbnNwYXJlbnQtYmcuZ2lmXCIgYmc9J2h0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2xhbmRpbmcvYmFja2dyb3VuZHMvYmFja2dyb3VuZC0zLXRleHQud2VicCc+PC9GYWRlSW4+XHJcbiAgICAgICAgICBcclxuICAgICAgICAgIFxyXG4gICAgICAgICAgPEZhZGVJbiAgZmlsZXBhdGg9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9sYW5kaW5nL2dpZnMvdHJlYXRtZW50LTIuZ2lmXCIgYmc9Jyc+PC9GYWRlSW4+XHJcbiAgICAgICAgICBcclxuXHJcbiAgICAgICAgICA8RmFkZUluIGZpbGVwYXRoPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvbGFuZGluZy9haXJidWRkeS5naWZcIiBiZz0nJz48L0ZhZGVJbj5cclxuICAgICAgICAgIDxBaXJidWRkeUFuaW0+PC9BaXJidWRkeUFuaW0+XHJcbiAgICAgICAgICBcclxuICAgICAgICAgIDxGYWRlSW4gZmlsZXBhdGg9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9sYW5kaW5nL3ByaW1lZ3VpZGUud2VicFwiIGJnPScnPjwvRmFkZUluPlxyXG4gICAgICAgICAgPFByaW1lR3VpZGVBbmltT25lPjwvUHJpbWVHdWlkZUFuaW1PbmU+XHJcbiAgICAgICAgICA8UHJpbWVHdWlkZUFuaW1Ud28+PC9QcmltZUd1aWRlQW5pbVR3bz5cclxuXHJcbiAgICAgICAgICA8RmFkZUluIGZpbGVwYXRoPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvbGFuZGluZy9wcmVjeXNlLmdpZlwiIGJnPScnPjwvRmFkZUluPlxyXG4gICAgICAgICAgPEZhZGVJbiBmaWxlcGF0aD1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2xhbmRpbmcvZ2lmcy9wcm9vZm9mY29uY2VwdC5naWZcIiBiZz0nJz48L0ZhZGVJbj4gKi99XHJcbiAgICAgICAgICBcclxuICAgICAgICAgIHsvKiBTcGFjaW5nIEJsb2NrICovfVxyXG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9J2NvbCcgc3R5bGU9e3sgJ2hlaWdodCc6ICcxMDB2aCcgfX0+PC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PiBcclxuICAgIDwvZGl2PiBcclxuICAgIDwvPlxyXG4gICk7XHJcbn1cclxuIiwgImltcG9ydCB7IExpbmsgfSBmcm9tIFwicmVhY3Qtcm91dGVyLWRvbVwiO1xyXG5pbXBvcnQgeyBvcGVuRnJvbU90aGVyUGFnZSB9IGZyb20gXCIuLi91dGlscy9vcGVuRnJvbU90aGVycEFnZVwiO1xyXG5pbXBvcnQgeyBvcGVuVGhlbSB9IGZyb20gXCIuLi91dGlscy9vcGVuVGhlbVwiO1xyXG5pbXBvcnQgeyBvcGVuRWxlbWVudCB9IGZyb20gXCIuLi91dGlscy9vcGVuRWxlbWVudFwiO1xyXG5pbXBvcnQgeyB1c2VOYXZpZ2F0aW9uIH0gZnJvbSBcIi4uL3V0aWxzL3VzZU5hdmlnYXRpb25cIjtcclxuaW50ZXJmYWNlIFVybEJ1dHRvblByb3Bze1xyXG4gICAgaHJlZjogc3RyaW5nLFxyXG4gICAgY2hpbGRyZW46IHN0cmluZyxcclxuICB9O1xyXG4gIGludGVyZmFjZSBUYWJCdXR0b25Qcm9wc3tcclxuICAgIGNsYXNzeT86IHN0cmluZywgXHJcbiAgICBjbG9zaW5nOiBzdHJpbmcsIFxyXG4gICAgb3BlbnR5cGU6IHN0cmluZ1xyXG4gICAgLyogY2hpbGRyZW4/OiBSZWFjdC5SZWFjdE5vZGUsICAqL1xyXG4gICAgLyogb25DbGljazogKGV2ZW50OiBSZWFjdC5Nb3VzZUV2ZW50PEhUTUxCdXR0b25FbGVtZW50LCBNb3VzZUV2ZW50PikgPT4gdm9pZCwgICovXHJcbiAgICBuYW1lOiBzdHJpbmcsXHJcbiAgICB0eXBlOiBzdHJpbmdcclxuICB9XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gVmlsbGFnZWJ1dHRvbih7IHRpdGxlLCBzb3VyY2UsIHBhZ2UgfTogeyB0aXRsZTogc3RyaW5nOyBzb3VyY2U6IHN0cmluZzsgcGFnZTpzdHJpbmd9KSB7XHJcbiAgcmV0dXJuIChcclxuICAgICAgPExpbmsgY2xhc3NOYW1lPVwiYnRuIHZpbGxhZ2Utc3R5bGUtYnV0dG9uXCIgcm9sZT1cImJ1dHRvblwiIHRvPXtwYWdlfT5cclxuICAgICAgICA8aW1nIHNyYz17c291cmNlfSBjbGFzc05hbWU9XCJkLWJsb2NrIG14LWF1dG8gbWItMlwiIGFsdD1cIlwiPjwvaW1nPlxyXG4gICAgICAgIDxoMz57dGl0bGV9PC9oMz5cclxuICAgICAgPC9MaW5rPlxyXG4gIClcclxufVxyXG4gXHJcbmV4cG9ydCBmdW5jdGlvbiBWaWxsYnV0dG9ucm93KCl7XHJcbiAgcmV0dXJuKFxyXG4gICAgICA8ZGl2IGNsYXNzTmFtZT1cInNtYWxsLXJvdyBhbGlnbi1pdGVtcy1jZW50ZXIgYm90dG9tLWJ1dHRvbnNcIj5cclxuICAgICAgICA8VmlsbGFnZWJ1dHRvbiBwYWdlPVwiL2h1bWFuLXByYWN0aWNlcz90YWI9aHAtcXVvdGVcIiBzb3VyY2U9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9kZXNpZ24vaWNvbnMvaHVtYW5wcmFjdGljZXMucG5nXCIgdGl0bGU9XCJIdW1hbiBQcmFjdGljZVwiPjwvVmlsbGFnZWJ1dHRvbj5cclxuICAgICAgICA8VmlsbGFnZWJ1dHRvbiBwYWdlPVwiL3RlYW0/dGFiPW1lbWJlcnNcIiBzb3VyY2U9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9kZXNpZ24vaWNvbnMvdGVhbS5wbmdcIiB0aXRsZT1cIlRlYW1cIj48L1ZpbGxhZ2VidXR0b24+XHJcbiAgICAgICAgPFZpbGxhZ2VidXR0b24gcGFnZT1cIi9tYXRlcmlhbHMtbWV0aG9kcz9zY3JvbGxUbz1pbnRyb2R1Y3Rpb25cIiBzb3VyY2U9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9kZXNpZ24vaWNvbnMvbGFiLnBuZ1wiIHRpdGxlPVwiTWV0aG9kc1wiPjwvVmlsbGFnZWJ1dHRvbj5cclxuICAgICAgICA8VmlsbGFnZWJ1dHRvbiBwYWdlPVwiL2Rlc2NyaXB0aW9uP3RhYj1vYmVuaW5kZXNjcmlwdGlvblwiIHNvdXJjZT1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2Rlc2lnbi9pY29ucy9kbmEucG5nXCIgdGl0bGU9XCJEZXNjcmlwdGlvblwiPjwvVmlsbGFnZWJ1dHRvbj5cclxuICAgICAgICA8VmlsbGFnZWJ1dHRvbiBwYWdlPVwiL2VuZ2luZWVyaW5nP3RhYj10YWItb3VyLWN5Y2xlJnNjcm9sbFRvPW91cmN5Y2xlXCIgc291cmNlPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvZGVzaWduL2ljb25zL2dlbmV0aWMtZW5naW5lZXJpbmcucG5nXCIgdGl0bGU9XCJFbmdpbmVlcmluZ1wiPjwvVmlsbGFnZWJ1dHRvbj5cclxuICAgICAgICA8VmlsbGFnZWJ1dHRvbiBwYWdlPVwiL3NhZmV0eT90YWI9Um9sZVwiIHNvdXJjZT1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2Rlc2lnbi9pY29ucy9zYWZldHkucG5nXCIgdGl0bGU9XCJTYWZldHlcIj48L1ZpbGxhZ2VidXR0b24+XHJcbiAgICAgICAgPFZpbGxhZ2VidXR0b24gcGFnZT1cIi9yZXN1bHRzP3RhYj1BYnN0cmFjdFwiIHNvdXJjZT1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2Rlc2lnbi9pY29ucy9yZXN1bHRzLnBuZ1wiIHRpdGxlPVwiUmVzdWx0c1wiPjwvVmlsbGFnZWJ1dHRvbj5cclxuICAgICAgPC9kaXY+ICBcclxuICApXHJcbn1cclxuXHJcblxyXG5leHBvcnQgY29uc3QgVXJsQnV0dG9uID0gKHsgaHJlZiwgY2hpbGRyZW4gfTpVcmxCdXR0b25Qcm9wcykgPT4ge1xyXG4gICAgcmV0dXJuIChcclxuICAgICAgPGEgaHJlZj17aHJlZn0gY2xhc3NOYW1lPVwidXJsLWJ1dHRvblwiPlxyXG4gICAgICAgIHtjaGlsZHJlbn1cclxuICAgICAgPC9hPlxyXG4gICAgKTtcclxuICB9XHJcblxyXG5cclxuXHJcblxyXG5leHBvcnQgY29uc3QgRG93bmxvYWRMaW5rID0gKHsgdXJsLCBmaWxlTmFtZSB9OiB7dXJsOiBzdHJpbmcsIGZpbGVOYW1lOiBzdHJpbmd9KSA9PiB7XHJcbmNvbnN0IGhhbmRsZURvd25sb2FkID0gKCkgPT4ge1xyXG4gICAgZmV0Y2godXJsKVxyXG4gICAgLnRoZW4oKHJlc3BvbnNlKSA9PiByZXNwb25zZS5ibG9iKCkpXHJcbiAgICAudGhlbigoYmxvYikgPT4ge1xyXG4gICAgICAgIGNvbnN0IHVybCA9IHdpbmRvdy5VUkwuY3JlYXRlT2JqZWN0VVJMKG5ldyBCbG9iKFtibG9iXSkpO1xyXG4gICAgICAgIGNvbnN0IGxpbmsgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KFwiYVwiKTtcclxuICAgICAgICBsaW5rLmhyZWYgPSB1cmw7XHJcbiAgICAgICAgbGluay5kb3dubG9hZCA9IGZpbGVOYW1lIHx8IFwiZG93bmxvYWRlZC1maWxlXCI7XHJcbiAgICAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChsaW5rKTtcclxuXHJcbiAgICAgICAgbGluay5jbGljaygpO1xyXG5cclxuICAgICAgICBkb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxkKGxpbmspO1xyXG4gICAgICAgIHdpbmRvdy5VUkwucmV2b2tlT2JqZWN0VVJMKHVybCk7XHJcbiAgICB9KVxyXG4gICAgLmNhdGNoKChlcnJvcikgPT4ge1xyXG4gICAgICAgIGNvbnNvbGUuZXJyb3IoXCJFcnJvciBmZXRjaGluZyB0aGUgZmlsZTpcIiwgZXJyb3IpO1xyXG4gICAgfSk7XHJcbn07XHJcbnJldHVybiAoXHJcblxyXG4gIDxhIHR5cGU9XCJidXR0b25cIiBvbkNsaWNrPXtoYW5kbGVEb3dubG9hZH0gY2xhc3NOYW1lPVwiZG93bmxvYWQtYnV0dFwiPlxyXG4gICAgICA8c3Bhbj5Eb3dubG9hZDwvc3Bhbj5cclxuICA8L2E+XHJcblxyXG4pO1xyXG59O1xyXG5cclxuZXhwb3J0IGNvbnN0IERvd25sb2FkSW1hZ2VCdXR0b24gPSAoeyB1cmwsIGZpbGVOYW1lLCBjaGlsZHJlbn06IHt1cmw6IHN0cmluZywgZmlsZU5hbWU6IHN0cmluZywgY2hpbGRyZW46IFJlYWN0LlJlYWN0Tm9kZX0pID0+IHtcclxuICBjb25zdCBoYW5kbGVEb3dubG9hZCA9ICgpID0+IHtcclxuICAgICAgZmV0Y2godXJsKVxyXG4gICAgICAudGhlbigocmVzcG9uc2UpID0+IHJlc3BvbnNlLmJsb2IoKSlcclxuICAgICAgLnRoZW4oKGJsb2IpID0+IHtcclxuICAgICAgICAgIGNvbnN0IHVybCA9IHdpbmRvdy5VUkwuY3JlYXRlT2JqZWN0VVJMKG5ldyBCbG9iKFtibG9iXSkpO1xyXG4gICAgICAgICAgY29uc3QgbGluayA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoXCJhXCIpO1xyXG4gICAgICAgICAgbGluay5ocmVmID0gdXJsO1xyXG4gICAgICAgICAgbGluay5kb3dubG9hZCA9IGZpbGVOYW1lIHx8IFwiZG93bmxvYWRlZC1maWxlXCI7XHJcbiAgICAgICAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGxpbmspO1xyXG4gIFxyXG4gICAgICAgICAgbGluay5jbGljaygpO1xyXG4gIFxyXG4gICAgICAgICAgZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZChsaW5rKTtcclxuICAgICAgICAgIHdpbmRvdy5VUkwucmV2b2tlT2JqZWN0VVJMKHVybCk7XHJcbiAgICAgIH0pXHJcbiAgICAgIC5jYXRjaCgoZXJyb3IpID0+IHtcclxuICAgICAgICAgIGNvbnNvbGUuZXJyb3IoXCJFcnJvciBmZXRjaGluZyB0aGUgZmlsZTpcIiwgZXJyb3IpO1xyXG4gICAgICB9KTtcclxuICB9O1xyXG4gIFxyXG5yZXR1cm4gKFxyXG5cclxuICAgIDxhIHR5cGU9XCJidXR0b25cIiBvbkNsaWNrPXtoYW5kbGVEb3dubG9hZH0gY2xhc3NOYW1lPVwiZG93bmxvYWQtYnV0dC1pbWFnZVwiPlxyXG4gICAgICAgIHtjaGlsZHJlbn1cclxuICAgIDwvYT5cclxuXHJcbik7XHJcbn07XHJcblxyXG5cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBUYWJCdXR0b25Sb3coe2RhdGEsIGNsYXNzeSwgb3BlbnR5cGUsIGNsb3Npbmd9OiB7ZGF0YTogQXJyYXk8VGFiRGF0ZW5zYXR6PiwgY2xhc3N5Pzogc3RyaW5nLCBvcGVudHlwZTogc3RyaW5nLCBjbG9zaW5nOiBzdHJpbmd9KXtcclxuICBsZXQgcm93czogSlNYLkVsZW1lbnRbXSAgPSBbXVxyXG4gIGZvciAoIGxldCBpID0gMDsgIGkgPCBkYXRhLmxlbmd0aDsgaSsrICl7XHJcbiAgICBpZihjbGFzc3kpe1xyXG4gICAgICByb3dzLnB1c2goPFRhYkJ1dHRvbiBjbGFzc3k9e2NsYXNzeX0gdHlwZT17ZGF0YVtpXS5jc3NuYW1lfSBuYW1lPXtkYXRhW2ldLmJ1dHRvbm5hbWV9IG9wZW50eXBlPXtvcGVudHlwZX0gY2xvc2luZz17Y2xvc2luZ30vPilcclxuICAgIH1cclxuICAgIGVsc2V7XHJcbiAgICAgIHJvd3MucHVzaCg8VGFiQnV0dG9uIHR5cGU9e2RhdGFbaV0uY3NzbmFtZX0gbmFtZT17ZGF0YVtpXS5idXR0b25uYW1lfSBvcGVudHlwZT17b3BlbnR5cGV9IGNsb3Npbmc9e2Nsb3Npbmd9Lz4pXHJcbiAgICB9XHJcbiAgfVxyXG4gIHJldHVybiA8ZGl2IGNsYXNzTmFtZT1cImFsaWduLWl0ZW1zLWNlbnRlciBub3JtYWwtYnV0dG9uc1wiPlxyXG4gICAge3Jvd3N9XHJcbiAgPC9kaXY+OyBcclxufVxyXG5cclxuXHJcblxyXG5cclxuLy8gbmV1ZXIgXHJcbmV4cG9ydCBmdW5jdGlvbiBUYWJCdXR0b24oe2NsYXNzeSwgbmFtZSwgY2xvc2luZywgb3BlbnR5cGUsIHR5cGV9OlRhYkJ1dHRvblByb3BzKXtcclxuICBpZiAoIWNsYXNzeSl7XHJcbiAgICBjbGFzc3kgPSBcIlwiXHJcbiAgfVxyXG4gIGxldCBjbGFzc25hbWUgPSBcImJ0bjEgdGFiYnV0dG9uIFwiICsgdHlwZSArIFwiIFwiICsgY2xhc3N5OyBcclxuICByZXR1cm4oXHJcbiAgICA8PlxyXG4gICAgPGJ1dHRvbiBjbGFzc05hbWU9e2NsYXNzbmFtZX0gb25DbGljaz17b3BlbkVsZW1lbnQoe2VsZW1lbnRUb09wZW46IHR5cGUsIGNsYXNzVG9IaWRlOiBvcGVudHlwZSwgY2xhc3NUb0Nsb3NlOiBjbG9zaW5nLCBidXR0b25DbGFzczogXCJ0YWJidXR0b25cIiB9KX0+IHtuYW1lfTwvYnV0dG9uPlxyXG4gICAgPC8+XHJcbiAgKVxyXG59XHJcblxyXG5cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBCRkhNb3JlQnV0dG9uKHtpdH06IHtpdDogc3RyaW5nfSl7XHJcbiAgcmV0dXJuKFxyXG4gICAgPGJ1dHRvbiBjbGFzc05hbWU9XCJ0YWJsaW5rcyBidG4xXCIgb25DbGljaz17ZXhwYW5kSXQoe2l0fSl9PiBNb3JlPC9idXR0b24+XHJcbiAgKVxyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gTmV3SFBNb3JlQnV0dG9uKHt0YWIsIHNjcm9sbH06IHt0YWI6IHN0cmluZywgc2Nyb2xsOiBzdHJpbmd9KXtcclxuICBjb25zdCB7Z29Ub1BhZ2VXaXRoVGFiQW5kU2Nyb2xsfSA9IHVzZU5hdmlnYXRpb24oKTsgXHJcbiAgcmV0dXJuKFxyXG4gICAgPGJ1dHRvbiBjbGFzc05hbWU9XCJ0YWJsaW5rcyBidG4xXCIgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VXaXRoVGFiQW5kU2Nyb2xsKHtwYXRoOiBcIlwiLCB0YWJJZDogdGFiLCBzY3JvbGxUb0lkOiBzY3JvbGx9KX0+IE1vcmU8L2J1dHRvbj5cclxuICApXHJcbn1cclxuXHJcbmZ1bmN0aW9uIGV4cGFuZEl0KHtpdH06IHtpdDogc3RyaW5nfSl7XHJcbiAgY29uc3Qgb3Blbml0ID0gIChfZXZlbnQgOiBSZWFjdC5Nb3VzZUV2ZW50PEhUTUxCdXR0b25FbGVtZW50LCBNb3VzZUV2ZW50PikgPT57XHJcbiAgICBjb25zb2xlLmxvZyhkb2N1bWVudC5nZXRFbGVtZW50QnlJZChpdCkpXHJcbiAgICBjb25zb2xlLmxvZyhkb2N1bWVudC5nZXRFbGVtZW50QnlJZChpdCkhLnN0eWxlLmRpc3BsYXkpXHJcbiAgICBpZiAoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoaXQpIS5zdHlsZS5kaXNwbGF5ID09PSBcImJsb2NrXCIpe1xyXG4gICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChpdCkhLnN0eWxlLmRpc3BsYXkgPSBcIm5vbmVcIjtcclxuICAgIH1cclxuICAgIGVsc2UgaWYoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoaXQpIS5zdHlsZS5kaXNwbGF5ID09PSBcIm5vbmVcIil7XHJcbiAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGl0KSEuc3R5bGUuZGlzcGxheSA9IFwiYmxvY2tcIjtcclxuICAgIH1cclxuICB9XHJcbiAgcmV0dXJuIG9wZW5pdDsgXHJcbn1cclxuXHJcblxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIEJ1dHRvbk9uZSh7dGV4dCwgb3Blbiwgb3BlbmNsYXNzfToge3RleHQ6c3RyaW5nLCBvcGVuOnN0cmluZywgb3BlbmNsYXNzPzogc3RyaW5nfSl7XHJcbiAgY29uc3QgeyBnb1RvUGFnZXNBbmRPcGVuVGFiIH0gPSB1c2VOYXZpZ2F0aW9uKCk7XHJcbiAgaWYgKG9wZW5jbGFzcykge1xyXG4gICAgcmV0dXJuKFxyXG4gICAgICA8YnV0dG9uIGNsYXNzTmFtZT1cImJ0bi1vbmVcIiBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZXNBbmRPcGVuVGFiKG9wZW4sIFwiXCIpfT48c3Bhbj57dGV4dH08L3NwYW4+PC9idXR0b24+XHJcbiAgICApXHJcbiAgICBcclxuICB9XHJcbiAgZWxzZXtcclxuICAgIHJldHVybihcclxuICAgICAgICA8YnV0dG9uIGNsYXNzTmFtZT1cImJ0bi1vbmVcIiBvbkNsaWNrPXsoKSA9PiBvcGVuRnJvbU90aGVyUGFnZShvcGVuKX0+IDxzcGFuPnt0ZXh0fTwvc3Bhbj4gPC9idXR0b24+XHJcbiAgICApXHJcbiAgfVxyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gQnV0dG9uT25lV2l0aFNjcm9sbCh7dGV4dCwgb3Blbiwgb3BlbmNsYXNzLCBzY3JvbGxJZH06IHt0ZXh0OnN0cmluZywgc2Nyb2xsSWQ6IHN0cmluZywgIG9wZW46c3RyaW5nLCBvcGVuY2xhc3M/OiBzdHJpbmd9KXtcclxuICBjb25zdCB7IGdvVG9QYWdlV2l0aFRhYkFuZFNjcm9sbCB9ID0gdXNlTmF2aWdhdGlvbigpO1xyXG4gIGlmIChvcGVuY2xhc3MpIHtcclxuICAgIHJldHVybihcclxuICAgICAgICA8YnV0dG9uIGNsYXNzTmFtZT1cImJ0bi1vbmVcIiBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZVdpdGhUYWJBbmRTY3JvbGwoeyBwYXRoOiBcIlwiLCB0YWJJZDogb3Blbiwgc2Nyb2xsVG9JZDogc2Nyb2xsSWQgfSl9PjxzcGFuPnt0ZXh0fTwvc3Bhbj48L2J1dHRvbj5cclxuICAgIClcclxuICB9XHJcbiAgZWxzZXtcclxuICAgIHJldHVybihcclxuICAgICAgPGRpdiBjbGFzc05hbWU9XCJib3h5LTFcIj5cclxuICAgICAgICA8c3BhbiB0eXBlb2Y9XCJidXR0b25cIiBvbkNsaWNrPXtvcGVuRnJvbU90aGVyUGFnZShvcGVuKX0+XHJcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJidG4tbmV3IGJ0bi1vbmVcIj5cclxuICAgICAgICB7dGV4dH1cclxuICAgICAgICA8L2Rpdj48L3NwYW4+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgKVxyXG4gIH1cclxufVxyXG5cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBCdXR0b25PbmVFbmdpbmVlcmluZyh7bGFiZWwsIG9wZW4sIHNjcm9sbFRvSWR9OiB7bGFiZWw6c3RyaW5nLCBvcGVuOnN0cmluZywgc2Nyb2xsVG9JZDogc3RyaW5nfSl7XHJcbiAgcmV0dXJuKFxyXG4gICAgPGJ1dHRvbiBjbGFzc05hbWU9XCJidG4tb25lXCIgb25DbGljaz17b3BlblRoZW0oe2l0OiBvcGVuLCBzY3JvbGxUb0lkfSl9PjxzcGFuPntsYWJlbH08L3NwYW4+PC9idXR0b24+XHJcbiAgKVxyXG59XHJcblxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIEJ1dHRvbkZvdXJGaWxsKCl7XHJcbiAgcmV0dXJuKFxyXG4gICAgPGEgdHlwZT1cImJ1dHRvblwiIGNsYXNzTmFtZT1cImljb24gaWNvbi1maWxsXCI+PGkgY2xhc3NOYW1lPVwiZmEgZmEtaG9tZVwiPjwvaT48L2E+XHJcbiAgKVxyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gQnV0dG9uRm91ckVudGVyKCl7XHJcbiAgcmV0dXJuKFxyXG4gICAgPGEgdHlwZT1cImJ1dHRvblwiIGNsYXNzTmFtZT1cImljb24gaWNvbi1lbnRlclwiPjxpIGNsYXNzTmFtZT1cImZhIGZhLWhvbWVcIj48L2k+PC9hPlxyXG4gIClcclxufVxyXG5leHBvcnQgZnVuY3Rpb24gQnV0dG9uRm91ckV4cGFuZCgpe1xyXG4gIHJldHVybihcclxuICAgIDxhIHR5cGU9XCJidXR0b25cIiBjbGFzc05hbWU9XCJpY29uIGljb24tZXhwYW5kXCI+PGkgY2xhc3NOYW1lPVwiZmEgZmEtaG9tZVwiPjwvaT48L2E+XHJcbiAgKVxyXG59XHJcbmV4cG9ydCBmdW5jdGlvbiBCdXR0b25Gb3VyQ29sbGFwc2UoKXtcclxuICByZXR1cm4oXHJcbiAgICA8YSB0eXBlPVwiYnV0dG9uXCIgIGNsYXNzTmFtZT1cImljb24gaWNvbi1jb2xsYXBzZVwiPjxpIGNsYXNzTmFtZT1cImZhIGZhLWhvbWVcIj48L2k+PC9hPlxyXG4gIClcclxufVxyXG5leHBvcnQgZnVuY3Rpb24gQnV0dG9uRm91clJvdGF0ZSgpe1xyXG4gIHJldHVybihcclxuICAgIDxhIHR5cGU9XCJidXR0b25cIiBjbGFzc05hbWU9XCJpY29uIGljb24tcm90YXRlXCI+PGkgY2xhc3NOYW1lPVwiZmEgZmEtaG9tZVwiPjwvaT48L2E+XHJcbiAgKVxyXG59XHJcblxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIEJhY2tVcCgpe1xyXG4gIHJldHVybihcclxuICAgIDw+XHJcbiAgICA8YnIvPlxyXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCIgaWQ9XCJlbmctYmFja3VwXCIgc3R5bGU9e3tkaXNwbGF5OiBcImZsZXhcIiwgYWxpZ25JdGVtczogXCJyaWdodFwifX0+XHJcbiAgICAgICAgICAgIDxhIG9uQ2xpY2s9eygpID0+IHNjcm9sbFVwV2l0aE9mZnNldCgpfSBjbGFzc05hbWU9XCJiYWNrdG90b3BcIj5cclxuICAgICAgICAgICAgICAgIEJhY2sgdG8gVG9wICYjODU5MztcclxuICAgICAgICAgICAgPC9hPlxyXG4gICAgICAgIDwvZGl2PiAgXHJcbiAgICA8Lz5cclxuICApXHJcbn1cclxuXHJcbmZ1bmN0aW9uIHNjcm9sbFVwV2l0aE9mZnNldCgpIHtcclxuICBpZiAodHlwZW9mIHdpbmRvdyAhPT0gJ3VuZGVmaW5lZCcpIHtcclxuICAgIGNvbnN0IG9mZnNldCA9IHdpbmRvdy5pbm5lckhlaWdodCAgOyAvLyA1MCUgZGVyIFZpZXdwb3J0LUhcdTAwRjZoZVxyXG4gICAgY29uc3QgdGFyZ2V0U2Nyb2xsUG9zaXRpb24gPSBNYXRoLm1heCgwLCAgb2Zmc2V0KTsgLy8gTmV1ZSBTY3JvbGwtUG9zaXRpb24sIGFiZXIgbmljaHQgdW50ZXIgMFxyXG5cclxuICAgIGNvbnNvbGUubG9nKGBTY3JvbGxpbmcgdXAgdG8gcG9zaXRpb246ICR7dGFyZ2V0U2Nyb2xsUG9zaXRpb259YCk7XHJcbiAgICB3aW5kb3cuc2Nyb2xsVG8oeyB0b3A6IHRhcmdldFNjcm9sbFBvc2l0aW9uLCBiZWhhdmlvcjogJ3Ntb290aCcgfSk7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIFNob3dTb2x1dGlvbih7ZWxlbWVudH06IHtlbGVtZW50OiBzdHJpbmd9KXtcclxuXHJcbiAgcmV0dXJuKFxyXG4gICAgPGJ1dHRvbiBvbkNsaWNrPXtmbGlwKGVsZW1lbnQpfSBjbGFzc05hbWU9XCJxdWl6LWJ1dHRvblwiPlNob3cgc29sdXRpb248L2J1dHRvbj5cclxuICApXHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBIaWRlU29sdXRpb24oe2VsZW1lbnR9OiB7ZWxlbWVudDogc3RyaW5nfSl7XHJcbiAgcmV0dXJuKFxyXG4gICAgPGJ1dHRvbiBvbkNsaWNrPXtmbGlwQmFjayhlbGVtZW50KX0gY2xhc3NOYW1lPVwicXVpei1idXR0b25cIj5SZXR1cm4gdG8gcXVlc3Rpb248L2J1dHRvbj5cclxuICApXHJcbn1cclxuXHJcbmZ1bmN0aW9uIGZsaXAoZWxlbWVudDogc3RyaW5nKXtcclxuICBjb25zdCBmbGlwcCA9IChfZXZlbnQ6IFJlYWN0Lk1vdXNlRXZlbnQ8SFRNTEVsZW1lbnQsIE1vdXNlRXZlbnQ+KSA9PiB7XHJcbiAgICBsZXQgZWxlbWVudFRvSGlkZSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKFwiZnJvbnQtXCIrZWxlbWVudCk7XHJcbiAgICAgICAgKGVsZW1lbnRUb0hpZGUgYXMgSFRNTEVsZW1lbnQpLnN0eWxlLmRpc3BsYXkgPSBcIm5vbmVcIjtcclxuICAgIGxldCBlbGVtZW50VG9GaW5kID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoXCJiYWNrLVwiK2VsZW1lbnQpO1xyXG4gICAgICAoZWxlbWVudFRvRmluZCBhcyBIVE1MRWxlbWVudCkuc3R5bGUuZGlzcGxheSA9IFwiYmxvY2tcIjtcclxuICB9XHJcbiAgcmV0dXJuIGZsaXBwOyBcclxufVxyXG5cclxuZnVuY3Rpb24gZmxpcEJhY2soZWxlbWVudDogc3RyaW5nKXtcclxuICBjb25zdCBmbGlwcGJhY2sgPSAoX2V2ZW50OiBSZWFjdC5Nb3VzZUV2ZW50PEhUTUxFbGVtZW50LCBNb3VzZUV2ZW50PikgPT4ge1xyXG4gICAgbGV0IGVsZW1lbnRUb0hpZGUgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChcImJhY2stXCIrZWxlbWVudCk7XHJcbiAgICAgICAgKGVsZW1lbnRUb0hpZGUgYXMgSFRNTEVsZW1lbnQpLnN0eWxlLmRpc3BsYXkgPSBcIm5vbmVcIjtcclxuICAgIGxldCBlbGVtZW50VG9GaW5kID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoXCJmcm9udC1cIitlbGVtZW50KTtcclxuICAgICAgKGVsZW1lbnRUb0ZpbmQgYXMgSFRNTEVsZW1lbnQpLnN0eWxlLmRpc3BsYXkgPSBcImJsb2NrXCI7XHJcbiAgfVxyXG4gIHJldHVybiBmbGlwcGJhY2s7ICBcclxufVxyXG4iLCAiY29uc3QgX192aXRlX2luamVjdGVkX29yaWdpbmFsX2Rpcm5hbWUgPSBcIkM6XFxcXFN0dWRpdW1cXFxcaUdFTVxcXFxDb2RlXFxcXGJpZWxlZmVsZC1jZWJpdGVjXFxcXHNyY1xcXFx1dGlsc1wiO2NvbnN0IF9fdml0ZV9pbmplY3RlZF9vcmlnaW5hbF9maWxlbmFtZSA9IFwiQzpcXFxcU3R1ZGl1bVxcXFxpR0VNXFxcXENvZGVcXFxcYmllbGVmZWxkLWNlYml0ZWNcXFxcc3JjXFxcXHV0aWxzXFxcXG9wZW5UaGVtLnRzXCI7Y29uc3QgX192aXRlX2luamVjdGVkX29yaWdpbmFsX2ltcG9ydF9tZXRhX3VybCA9IFwiZmlsZTovLy9DOi9TdHVkaXVtL2lHRU0vQ29kZS9iaWVsZWZlbGQtY2ViaXRlYy9zcmMvdXRpbHMvb3BlblRoZW0udHNcIjtleHBvcnQgZnVuY3Rpb24gb3BlblRoZW0oeyBpdCwgc2Nyb2xsVG9JZCB9OiB7IGl0OiBzdHJpbmc7IHNjcm9sbFRvSWQ/OiBzdHJpbmcgfSkge1xyXG4gIGNvbnN0IGdvdG9hbmRvcGVuID0gKF9ldmVudDogUmVhY3QuTW91c2VFdmVudDxIVE1MRWxlbWVudCwgTW91c2VFdmVudD4pID0+IHtcclxuICAgIGlmICh0eXBlb2Ygd2luZG93ICE9PSAndW5kZWZpbmVkJykge1xyXG4gICAgICBjb25zb2xlLmxvZyhgT3BlbmluZyB0YWI6ICR7aXR9YCk7XHJcbiAgICAgIHVwZGF0ZVRhYnMoaXQsIHNjcm9sbFRvSWQpO1xyXG5cclxuICAgICAgLy8gVXBkYXRlIGRlciBVUkxcclxuICAgICAgY29uc3QgbmV3VXJsID0gYD90YWI9JHtpdH1gO1xyXG4gICAgICBjb25zb2xlLmxvZyhgVXBkYXRpbmcgVVJMIHRvOiAke25ld1VybH1gKTtcclxuICAgICAgd2luZG93Lmhpc3RvcnkucHVzaFN0YXRlKHsgdGFiOiBpdCB9LCAnJywgbmV3VXJsKTtcclxuICAvKiAgICAgaWYgKHNjcm9sbFRvSWQgJiYgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoc2Nyb2xsVG9JZCkpIHtcclxuICAgICAgICBjb25zdCBzY0VsZW1lbnQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChzY3JvbGxUb0lkKTtcclxuICAgICAgICBpZiAoc2NFbGVtZW50KSB7XHJcbiAgICAgICAgICAgIGNvbnN0IHNjcm9sbFBvcyA9IHdpbmRvdy5pbm5lckhlaWdodCAvIDIgLSBzY0VsZW1lbnQub2Zmc2V0SGVpZ2h0IC8gMjtcclxuICAgICAgICAgICAgd2luZG93LnNjcm9sbFRvKHsgdG9wOiBzY3JvbGxQb3MsIGJlaGF2aW9yOiAnc21vb3RoJyB9KTtcclxuICAgICAgICB9XHJcbiAgICAgIH0gKi9cclxuICAgICAgLy8gU2Nyb2xsZW4gaW4gZGllIE1pdHRlXHJcbiAgICAgLyogIGNvbnN0IG1pZFNjcm9sbFBvc2l0aW9uID0gd2luZG93LmlubmVySGVpZ2h0IC8gMjsgLy8gQmVyZWNobnVuZyBkZXIgTWl0dGUgZGVzIFZpZXdwb3J0c1xyXG4gICAgICBjb25zb2xlLmxvZyhgU2Nyb2xsaW5nIHRvIG1pZGRsZSBwb3NpdGlvbjogJHttaWRTY3JvbGxQb3NpdGlvbn1gKTsgKi9cclxuICAgICAvKiAgd2luZG93LnNjcm9sbFRvKHsgdG9wOiBtaWRTY3JvbGxQb3NpdGlvbiwgYmVoYXZpb3I6ICdzbW9vdGgnIH0pOyAqL1xyXG4gICAgfVxyXG4gIH07XHJcblxyXG4gIHJldHVybiBnb3RvYW5kb3BlbjtcclxufVxyXG5cclxuZnVuY3Rpb24gdXBkYXRlVGFicyhpdDogc3RyaW5nLCBzY3JvbGxUb0lkPzogc3RyaW5nKSB7XHJcbiAgaWYgKHR5cGVvZiB3aW5kb3cgPT09ICd1bmRlZmluZWQnKSByZXR1cm47XHJcblxyXG4gIGxldCBjb250ZW50dGFiaWQgPSBcInRhYi1cIiArIGl0O1xyXG4gIGxldCBwYXJlbnQgPSBcInBhcmVudC1cIiArIGl0O1xyXG5cclxuICBjb25zb2xlLmxvZyhgVXBkYXRpbmcgdGFicyBmb3I6ICR7aXR9YCk7XHJcblxyXG4gIC8vIFZlcnN0ZWNrZSBhbGxlIFN1YnRhYnMgdW5kIENvbnRlbnQtVGFic1xyXG4gIGNvbnN0IHN1YnRhYnMgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKFwic2lkZXN1YnRhYlwiKTtcclxuICBjb25zdCBjb250ZW50dGFicyA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlDbGFzc05hbWUoXCJlbmdpbm5lZXJpbmd0YWJcIik7XHJcbiAgY29uc3Qgc2lkZWl0ZW1zID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZShcInNpZGVpdGVtXCIpO1xyXG5cclxuICBmb3IgKGxldCBpID0gMDsgaSA8IHN1YnRhYnMubGVuZ3RoOyBpKyspIHtcclxuICAgIChzdWJ0YWJzW2ldIGFzIEhUTUxFbGVtZW50KS5zdHlsZS5kaXNwbGF5ID0gXCJub25lXCI7XHJcbiAgICBjb25zb2xlLmxvZyhgSGlkaW5nIHN1YnRhYjogJHtzdWJ0YWJzW2ldLmlkfWApO1xyXG4gIH1cclxuICBmb3IgKGxldCBpID0gMDsgaSA8IGNvbnRlbnR0YWJzLmxlbmd0aDsgaSsrKSB7XHJcbiAgICAoY29udGVudHRhYnNbaV0gYXMgSFRNTEVsZW1lbnQpLnN0eWxlLmRpc3BsYXkgPSBcIm5vbmVcIjtcclxuICAgIGNvbnNvbGUubG9nKGBIaWRpbmcgY29udGVudCB0YWI6ICR7Y29udGVudHRhYnNbaV0uaWR9YCk7XHJcbiAgfVxyXG4gIGZvciAobGV0IGkgPSAwOyBpIDwgc2lkZWl0ZW1zLmxlbmd0aDsgaSsrKSB7XHJcbiAgICAoc2lkZWl0ZW1zW2ldIGFzIEhUTUxFbGVtZW50KSEuY2xhc3NMaXN0LnJlbW92ZShcImFjdGl2ZS1zaWRlaXRlbVwiKTtcclxuICAgIGNvbnNvbGUubG9nKGBSZW1vdmluZyBhY3RpdmUgY2xhc3MgZnJvbSBzaWRlIGl0ZW06ICR7c2lkZWl0ZW1zW2ldLmlkfWApO1xyXG4gIH1cclxuXHJcbiAgLy8gWmVpZ2UgZGVuIGFrdHVlbGxlbiBUYWIgdW5kIG1hcmtpZXJlIGRhcyBlbnRzcHJlY2hlbmRlIFNpZGViYXItSXRlbVxyXG4gIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGl0KSEuc3R5bGUuZGlzcGxheSA9IFwiYmxvY2tcIjtcclxuICBjb25zb2xlLmxvZyhgU2hvd2luZyB0YWI6ICR7aXR9YCk7XHJcbiAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQocGFyZW50KSEuY2xhc3NMaXN0LmFkZChcImFjdGl2ZS1zaWRlaXRlbVwiKTtcclxuICBjb25zb2xlLmxvZyhgQWN0aXZhdGluZyBzaWRlIGl0ZW06ICR7cGFyZW50fWApO1xyXG4gIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGNvbnRlbnR0YWJpZCkhLnN0eWxlLmRpc3BsYXkgPSBcImJsb2NrXCI7XHJcbiAgY29uc29sZS5sb2coYFNob3dpbmcgY29udGVudCB0YWI6ICR7Y29udGVudHRhYmlkfWApO1xyXG5cclxuICAvLyBTY3JvbGxlIHp1IGRlciBhbmdlZ2ViZW5lbiBJRCwgZmFsbHMgdm9yaGFuZGVuXHJcbiAgaWYgKHNjcm9sbFRvSWQpIHtcclxuICAgIGNvbnN0IGNvbGxhcHNlRWxlbWVudCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHNjcm9sbFRvSWQpO1xyXG4gICAgaWYgKGNvbGxhcHNlRWxlbWVudCkge1xyXG4gICAgICAgIGNvbnN0IGVsZW1lbnRUb3AgPSBjb2xsYXBzZUVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkudG9wICsgd2luZG93LnBhZ2VZT2Zmc2V0O1xyXG4gICAgICAgIGNvbnN0IG9mZnNldCA9IHdpbmRvdy5pbm5lckhlaWdodCAvIDIgLSBjb2xsYXBzZUVsZW1lbnQub2Zmc2V0SGVpZ2h0IC8gMjtcclxuICAgICAgICBjb25zdCBzY3JvbGxQb3NpdGlvbiA9IGVsZW1lbnRUb3AgLSBvZmZzZXQ7XHJcblxyXG4gICAgICAgIHdpbmRvdy5zY3JvbGxUbyh7XHJcbiAgICAgICAgICAgIHRvcDogc2Nyb2xsUG9zaXRpb24sXHJcbiAgICAgICAgICAgIGJlaGF2aW9yOiAnc21vb3RoJyxcclxuICAgICAgICB9KTtcclxuICAgIH1cclxufVxyXG4vKiAgIGlmIChzY3JvbGxUb0lkICYmIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHNjcm9sbFRvSWQpKSB7XHJcbiAgICBjb25zdCBzY0VsZW1lbnQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChzY3JvbGxUb0lkKTtcclxuICAgIGlmIChzY0VsZW1lbnQpIHtcclxuICAgICAgICBjb25zdCBzY3JvbGxQb3MgPSB3aW5kb3cuaW5uZXJIZWlnaHQgLyAyIC0gc2NFbGVtZW50Lm9mZnNldEhlaWdodCAvIDI7XHJcbiAgICAgICAgd2luZG93LnNjcm9sbFRvKHsgdG9wOiBzY3JvbGxQb3MsIGJlaGF2aW9yOiAnc21vb3RoJyB9KTtcclxuICAgIH1cclxuICB9ICovXHJcbn1cclxuXHJcbi8vIEZcdTAwRkNnZSBlaW5lbiBFdmVudCBMaXN0ZW5lciBmXHUwMEZDciBgcG9wc3RhdGVgIGhpbnp1XHJcbmlmICh0eXBlb2Ygd2luZG93ICE9PSAndW5kZWZpbmVkJykge1xyXG4gIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdwb3BzdGF0ZScsIChldmVudCkgPT4ge1xyXG4gICAgY29uc29sZS5sb2coJ1BvcHN0YXRlIGV2ZW50IHRyaWdnZXJlZCcpO1xyXG4gICAgaWYgKGV2ZW50LnN0YXRlKSB7XHJcbiAgICAgIGNvbnN0IHRhYiA9IGV2ZW50LnN0YXRlLnRhYjtcclxuICAgICAgY29uc29sZS5sb2coYFJlc3RvcmluZyB0YWI6ICR7dGFifWApO1xyXG4gICAgICB1cGRhdGVUYWJzKHRhYik7XHJcbiAgICAgIFxyXG4gICAgICAvLyBTY3JvbGxlbiBpbiBkaWUgTWl0dGUgYmVpbSBadXJcdTAwRkNja25hdmlnaWVyZW5cclxuICAgICAgY29uc29sZS5sb2coXCJTY3JvbGxpbmcgdG8gbWlkZGxlIG9uIHBvcHN0YXRlLi4uXCIpO1xyXG4gICAgICBjb25zdCBtaWRTY3JvbGxQb3NpdGlvbiA9IHdpbmRvdy5pbm5lckhlaWdodCAvIDI7XHJcbiAgICAgIHdpbmRvdy5zY3JvbGxUbyh7IHRvcDogbWlkU2Nyb2xsUG9zaXRpb24sIGJlaGF2aW9yOiAnc21vb3RoJyB9KTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGNvbnNvbGUubG9nKFwiTm8gc3RhdGUgZm91bmQgaW4gcG9wc3RhdGUgZXZlbnQuXCIpO1xyXG4gICAgfVxyXG4gIH0pO1xyXG59XHJcbiIsICJjb25zdCBfX3ZpdGVfaW5qZWN0ZWRfb3JpZ2luYWxfZGlybmFtZSA9IFwiQzpcXFxcU3R1ZGl1bVxcXFxpR0VNXFxcXENvZGVcXFxcYmllbGVmZWxkLWNlYml0ZWNcXFxcc3JjXFxcXHV0aWxzXCI7Y29uc3QgX192aXRlX2luamVjdGVkX29yaWdpbmFsX2ZpbGVuYW1lID0gXCJDOlxcXFxTdHVkaXVtXFxcXGlHRU1cXFxcQ29kZVxcXFxiaWVsZWZlbGQtY2ViaXRlY1xcXFxzcmNcXFxcdXRpbHNcXFxcdXNlTmF2aWdhdGlvbi50c1wiO2NvbnN0IF9fdml0ZV9pbmplY3RlZF9vcmlnaW5hbF9pbXBvcnRfbWV0YV91cmwgPSBcImZpbGU6Ly8vQzovU3R1ZGl1bS9pR0VNL0NvZGUvYmllbGVmZWxkLWNlYml0ZWMvc3JjL3V0aWxzL3VzZU5hdmlnYXRpb24udHNcIjtpbXBvcnQgeyB1c2VOYXZpZ2F0ZSB9IGZyb20gXCJyZWFjdC1yb3V0ZXItZG9tXCI7XHJcblxyXG5leHBvcnQgY29uc3QgdXNlTmF2aWdhdGlvbiA9ICgpID0+IHtcclxuICAgIGNvbnN0IG5hdmlnYXRlID0gdXNlTmF2aWdhdGUoKTtcclxuXHJcbiAgICBjb25zdCBnb1RvUGFnZXNBbmRPcGVuVGFiID0gKHRhYklkOiBzdHJpbmcsIHBhdGg6IHN0cmluZykgPT4ge1xyXG4gICAgXHJcbiAgICAgICAgXHJcbiAgICAgICAgbmF2aWdhdGUoYCR7cGF0aH0/dGFiPSR7dGFiSWR9YCk7XHJcbiAgICAgICAgXHJcbiAgICB9O1xyXG4gICAgY29uc3QgZ29Ub1RleHRzQW5kT3BlbkNvbGxhcHNpYmxlID0gKGNvbGxhcHNlSWQ6IHN0cmluZywgcGF0aDogc3RyaW5nKSA9PiB7XHJcbiAgICAgICAgXHJcbiAgICAgICAgbmF2aWdhdGUoYCR7cGF0aH0/Y29sbGFwc2VJZD0ke2NvbGxhcHNlSWR9YCk7XHJcbiAgICB9O1xyXG4gICAgY29uc3QgZ29Ub1BhZ2VXaXRoVGFiQW5kQ29sbGFwc2libGUgPSAoeyBwYXRoLCB0YWJJZCwgY29sbGFwc2VJZCB9OiB7IHBhdGg6IHN0cmluZywgdGFiSWQ6IHN0cmluZywgY29sbGFwc2VJZD86IHN0cmluZyB9KSA9PiB7XHJcbiAgICAgICAgXHJcbiAgICAgICAgXHJcbiAgICAgICAgbGV0IHVybCA9IGAke3BhdGh9P3RhYj0ke3RhYklkfWA7XHJcbiAgICAgICAgaWYgKGNvbGxhcHNlSWQpIHtcclxuICAgICAgICAgICAgdXJsICs9IGAmY29sbGFwc2VJZD0ke2NvbGxhcHNlSWR9YDtcclxuICAgICAgICB9XHJcbiAgICAgICAgbmF2aWdhdGUodXJsKTtcclxuICAgIH07XHJcbiAgICBjb25zdCBnb1RvUGFnZVdpdGhOZXN0ZWRUYWJzID0gKHsgcGF0aCwgdGFiSWQsIHN1YlRhYklkLCBjb2xsYXBzZUlkIH06IHsgcGF0aDogc3RyaW5nLCB0YWJJZDogc3RyaW5nLCBzdWJUYWJJZD86IHN0cmluZywgY29sbGFwc2VJZD86IHN0cmluZyB9KSA9PiB7XHJcbiAgICAgICAgXHJcbiAgICAgICAgXHJcbiAgICAgICAgbGV0IHVybCA9IGAke3BhdGh9P3RhYj0ke3RhYklkfWA7XHJcbiAgICAgICAgaWYgKHN1YlRhYklkKSB7XHJcbiAgICAgICAgICAgIHVybCArPSBgJnN1YlRhYj0ke3N1YlRhYklkfWA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmIChjb2xsYXBzZUlkKSB7XHJcbiAgICAgICAgICAgIHVybCArPSBgJmNvbGxhcHNlSWQ9JHtjb2xsYXBzZUlkfWA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIG5hdmlnYXRlKHVybCk7XHJcbiAgICB9O1xyXG5cclxuXHJcblxyXG4gICAgY29uc3QgZ29Ub1BhZ2VXaXRoVGFiQW5kU2Nyb2xsID0gKHsgcGF0aCwgdGFiSWQsIHNjcm9sbFRvSWQgfTogeyBwYXRoOiBzdHJpbmcsIHRhYklkOiBzdHJpbmcsIHNjcm9sbFRvSWQ6IHN0cmluZyB9KSA9PiB7XHJcbiAgICAgICAgbGV0IHVybCA9IGAke3BhdGh9P3RhYj0ke3RhYklkfWA7XHJcbiAgICAgICAgaWYgKHNjcm9sbFRvSWQpIHtcclxuICAgICAgICAgICAgdXJsICs9IGAmc2Nyb2xsVG89JHtzY3JvbGxUb0lkfWA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIG5hdmlnYXRlKHVybCk7XHJcbiAgICB9O1xyXG5cclxuICAgIGNvbnN0IGdvVG9QYWdlQW5kU2Nyb2xsID0gKHNjcm9sbFRvSWQ6IHN0cmluZywgcGF0aDogc3RyaW5nKSA9PiB7XHJcbiAgICAgICAgXHJcbiAgICAgICAgbmF2aWdhdGUoYCR7cGF0aH0/c2Nyb2xsVG89JHtzY3JvbGxUb0lkfWApO1xyXG4gICAgfTtcclxuXHJcbiAgXHJcblxyXG4gICAgY29uc3QgZ29Ub1BsYWNlID0gKHtcclxuICAgICAgICBwYXRoLFxyXG4gICAgICAgIHNjcm9sbFRvSWQsXHJcbiAgICAgICAgdGFiSWQsXHJcbiAgICAgICAgc3ViVGFiSWQsXHJcbiAgICAgICAgY29sbGFwc2VJZCxcclxuICAgICAgICB0YWJpbmNvbElkXHJcbiAgICB9OiB7IFxyXG4gICAgICAgIHBhdGg6IHN0cmluZztcclxuICAgICAgICBzY3JvbGxUb0lkPzogc3RyaW5nO1xyXG4gICAgICAgIHRhYklkPzogc3RyaW5nO1xyXG4gICAgICAgIHN1YlRhYklkPzogc3RyaW5nO1xyXG4gICAgICAgIGNvbGxhcHNlSWQ/OiBzdHJpbmc7XHJcbiAgICAgICAgdGFiaW5jb2xJZD86IHN0cmluZztcclxuICAgIH0pID0+IHtcclxuICAgIC8vIERlbiB2b2xsc3RcdTAwRTRuZGlnZW4gUGZhZCBlcnN0ZWxsZW4sIGluZGVtIHdpciBkZW4gYmFzZVBhdGggdW5kIHBhdGgga29tYmluaWVyZW5cclxuICAgIGxldCB1cmwgPSBgLyR7cGF0aC5zdGFydHNXaXRoKFwiL1wiKSA/IHBhdGguc2xpY2UoMSkgOiBwYXRofWA7XHJcblxyXG5cclxuICAgICAgICBcclxuICAgICAgICBsZXQgcGFyYW1zQWRkZWQgPSBmYWxzZTsgXHJcbiAgICAgICAgY29uc29sZS5sb2coXCJGb3VuZCBwYXRoOiBcIiArIHBhdGgpXHJcbiAgICAgICAgLy8gMS4gVGFiLUxvZ2lrICh0YWJJZCB1bmQgc3ViVGFiSWQpXHJcbiAgICAgICAgaWYgKHRhYklkKSB7XHJcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKFwiRm91bmQgdGFiSUQ6IFwiICsgdGFiSWQpXHJcbiAgICAgICAgICAgIHVybCArPSBgP3RhYj0ke3RhYklkfWA7XHJcbiAgICAgICAgICAgIHBhcmFtc0FkZGVkID0gdHJ1ZTtcclxuICAgICAgICAgICAgaWYgKHN1YlRhYklkKSB7XHJcbiAgICAgICAgICAgICAgICBjb25zb2xlLmxvZyhcIkZvdW5kIHN1YlRhYklkOiBcIiArIHN1YlRhYklkKVxyXG4gICAgICAgICAgICAgICAgdXJsICs9IGAmc3ViVGFiPSR7c3ViVGFiSWR9YDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLy8gMi4gQ29sbGFwc2UtTG9naWsgKGNvbGxhcHNlSWQgdW5kIHRhYmluY29sSWQpXHJcbiAgICAgICAgaWYgKGNvbGxhcHNlSWQpIHtcclxuICAgICAgICAgICAgY29uc29sZS5sb2coXCJGb3VuZCBjb2xsYXBzZUlkOiBcIiArIGNvbGxhcHNlSWQpXHJcbiAgICAgICAgICAgIGlmICghdGFiSWQpIHtcclxuICAgICAgICAgICAgICAgIC8vIFdlbm4ga2VpbiB0YWJJZCBnZXNldHp0IGlzdCwgZlx1MDBGQ2dlbiB3aXIgY29sbGFwc2VJZCBoaW56dVxyXG4gICAgICAgICAgICAgICAgdXJsICs9IHVybC5pbmNsdWRlcygnPycpID8gYCZjb2xsYXBzZUlkPSR7Y29sbGFwc2VJZH1gIDogYD9jb2xsYXBzZUlkPSR7Y29sbGFwc2VJZH1gO1xyXG4gICAgICAgICAgICAgICAgcGFyYW1zQWRkZWQgPSB0cnVlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGlmICh0YWJpbmNvbElkKSB7XHJcbiAgICAgICAgICAgICAgICBjb25zb2xlLmxvZyhcIkZvdW5kIHRhYmluY29sSWQ6IFwiICsgdGFiaW5jb2xJZClcclxuICAgICAgICAgICAgICAgIHVybCArPSBgJmNvbFRhYj0ke3RhYmluY29sSWR9YDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLy8gMy4gU2Nyb2xsLUxvZ2lrIChzY3JvbGxUb0lkKVxyXG4gICAgICAgIGlmIChzY3JvbGxUb0lkKSB7XHJcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKFwiRm91bmQgc2Nyb2xsVG9JZDogXCIgKyBzY3JvbGxUb0lkKVxyXG4gICAgICAgICAgICBwYXJhbXNBZGRlZCA9IHRydWU7XHJcbiAgICAgICAgICAgIC8vIFdlbm4gYmVyZWl0cyBQYXJhbWV0ZXIgZXhpc3RpZXJlbiwgZlx1MDBGQ2dlbiB3aXIgJiBoaW56dSwgYW5zb25zdGVuID9cclxuICAgICAgICAgICAgY29uc3Qgc2VwYXJhdG9yID0gcGFyYW1zQWRkZWQgPyAnJicgOiAnPyc7XHJcbiAgICAgICAgICAgIHVybCArPSBgJHtzZXBhcmF0b3J9c2Nyb2xsVG89JHtzY3JvbGxUb0lkfWA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGNvbnNvbGUubG9nKFwiRmluYWwgVVJMOlwiLCB1cmwpO1xyXG5cclxuICAgICAgICAvLyBOYXZpZ2llcmUgenVyIFVSTFxyXG4gICAgICAgIG5hdmlnYXRlKHVybCk7XHJcbiAgICB9O1xyXG5cclxuICAgIFxyXG4gICAgcmV0dXJuIHsgZ29Ub1BsYWNlLCAgZ29Ub1BhZ2VBbmRTY3JvbGwsIGdvVG9QYWdlc0FuZE9wZW5UYWIsIGdvVG9QYWdlV2l0aFRhYkFuZFNjcm9sbCwgZ29Ub1BhZ2VXaXRoTmVzdGVkVGFicywgZ29Ub1BhZ2VXaXRoVGFiQW5kQ29sbGFwc2libGUsIGdvVG9UZXh0c0FuZE9wZW5Db2xsYXBzaWJsZSB9O1xyXG59O1xyXG4iLCAiaW1wb3J0IHsgSDIsIEgzIH0gZnJvbSBcIi4vSGVhZGluZ3NcIlxyXG5cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBTZWN0aW9uKHtpZCwgdGl0bGUsIGNoaWxkcmVufToge2lkOiBzdHJpbmcsIHRpdGxlOiBzdHJpbmcsIGNoaWxkcmVuOiBSZWFjdC5SZWFjdE5vZGV9KXtcclxuICAgIGxldCBzZWNfaWQgPSBgJHtpZH1IYFxyXG4gICAgbGV0IGhlYWRlcl9pZCA9IGlkXHJcbiAgICByZXR1cm4oXHJcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgICAgPHNlY3Rpb24gaWQ9e3NlY19pZH0gY2xhc3NOYW1lPVwic2VjdGlvblwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBpZD17aGVhZGVyX2lkfT48SDIgdGV4dD17dGl0bGV9Lz48L2Rpdj5cclxuICAgICAgICAgICAgICAgIHtjaGlsZHJlbn1cclxuICAgICAgICAgICAgPC9zZWN0aW9uPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgKVxyXG5cclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIFN1YmVzY3Rpb24oe2lkLCB0aXRsZSwgY2hpbGRyZW59OiB7aWQ6IHN0cmluZywgdGl0bGU6IHN0cmluZywgY2hpbGRyZW46IFJlYWN0LlJlYWN0Tm9kZX0pe1xyXG5cclxuICAgIHJldHVybihcclxuICAgICAgICA8c2VjdGlvbiBpZD17aWR9PlxyXG4gICAgICAgICAgICAgICAgPEgzIHRleHQ9e3RpdGxlfSBpZD17aWQgKyBcIkhcIn0+PC9IMz5cclxuICAgICAgICAgICAgICAgICAge2NoaWxkcmVufVxyXG4gICAgICAgIDwvc2VjdGlvbj5cclxuICAgIClcclxufSIsICJpbXBvcnQgeyBhZHZpc29ycywgaW5zdHJ1Y3RvciwgcGlzLCBTdGVja2JyaWVmSW50ZXJmYWNlLCB0ZWFtbWVtYmVycyB9IGZyb20gXCIuLi9kYXRhL3N0ZWNrYnJpZWZlXCI7XHJcbmltcG9ydCB7IHVzZVRhYk5hdmlnYXRpb24gfSBmcm9tIFwiLi4vdXRpbHMvVGFiTmF2aWdhdGlvblwiO1xyXG5pbXBvcnQgeyBCYWNrVXAgfSBmcm9tIFwiLi4vY29tcG9uZW50cy9CdXR0b25zXCI7XHJcbmltcG9ydCB7IFNlY3Rpb24gfSBmcm9tIFwiLi4vY29tcG9uZW50cy9zZWN0aW9uc1wiO1xyXG5cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBUZWFtKCkge1xyXG4gIHVzZVRhYk5hdmlnYXRpb24oKTtcclxuICBsZXQgdGVhbWJyaWVmZSA9IGNyZWF0ZVN0ZWNrYnJpZWZlKHRlYW1tZW1iZXJzKTsgXHJcbiAgbGV0IGFkdmlzb3JicmllZmUgPSBjcmVhdGVQaVN0ZWNrYnJpZWZlKGFkdmlzb3JzKTsgXHJcbiAgbGV0IHNpbmFuID0gY3JlYXRlUGlTdGVja2JyaWVmZShpbnN0cnVjdG9yKTsgXHJcbiAgbGV0IHBpYnJpZWZlID0gY3JlYXRlUGlTdGVja2JyaWVmZShwaXMpXHJcbiAgcmV0dXJuIChcclxuICAgIDw+XHJcbiAgICAgIDxici8+XHJcblxyXG4gICAgICA8YnIvPlxyXG4gICAgICA8aWZyYW1lIHRpdGxlPVwiQmllbGVmZWxkLUNlQmlUZWM6IFNpdGNvbSBUZWFtIFByZXNlbnRhdGlvbiAoMjAyNCkgW0VuZ2xpc2hdXCIgd2lkdGg9XCIxMDAlXCIgaGVpZ2h0PVwiNjAwcHhcIiBzcmM9XCJodHRwczovL3ZpZGVvLmlnZW0ub3JnL3ZpZGVvcy9lbWJlZC9lNDBkODlhMC0yNDYxLTQyMWMtYTc1Yy05MmIzYjIzOGUwZjhcIiBmcmFtZUJvcmRlcj1cIjBcIiBhbGxvd0Z1bGxTY3JlZW49e3RydWV9IHNhbmRib3g9XCJhbGxvdy1zYW1lLW9yaWdpbiBhbGxvdy1zY3JpcHRzIGFsbG93LXBvcHVwcyBhbGxvdy1mb3Jtc1wiPjwvaWZyYW1lPlxyXG4gICAgICA8U2VjdGlvbiB0aXRsZT1cIk1lbWJlcnNcIiBpZD1cIm1lbWJlcnNcIj5cclxuICAgICAge3RlYW1icmllZmV9XHJcbiAgICAgIDwvU2VjdGlvbj5cclxuXHJcbiAgICAgIDxTZWN0aW9uIHRpdGxlPVwiSW5zdHJ1Y3RvclwiIGlkPVwiaW5zdHJ1Y3RvclwiPlxyXG4gICAgICB7c2luYW59XHJcbiAgICAgIDwvU2VjdGlvbj5cclxuICAgICAgPFNlY3Rpb24gdGl0bGU9XCJBZHZpc29yc1wiIGlkPVwiQWR2aXNvcnNcIj5cclxuICAgICAge2Fkdmlzb3JicmllZmV9XHJcbiAgICAgIDwvU2VjdGlvbj5cclxuICAgICAgPFNlY3Rpb24gdGl0bGU9XCJQcmluY2lwYWwgSW52ZXN0aWdhdG9yc1wiIGlkPVwiUElTXCI+XHJcbiAgICAgIHtwaWJyaWVmZX1cclxuICAgICAgPC9TZWN0aW9uPlxyXG4gICAgICA8aW1nIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy90ZWFtLXBob3Rvcy9ncnVwcGUtdi53ZWJwXCIgYWx0PVwiVGVhbSBCaWVsZWZlbGQgaW4gbGFiIGNvYXRzIGFuZCBWLUZvcm1hdGlvblwiLz5cclxuICAgICAgPEJhY2tVcC8+IFxyXG4gICAgPC8+XHJcbiAgKTtcclxufVxyXG5cclxuXHJcblxyXG5mdW5jdGlvbiBjcmVhdGVTdGVja2JyaWVmZShkYXRhOiBBcnJheTxTdGVja2JyaWVmSW50ZXJmYWNlPil7XHJcbiAgbGV0IGJyaWVmZTogSlNYLkVsZW1lbnRbXSAgPSBbXVxyXG4gIGZvciAobGV0IGluZGV4ID0gMDsgaW5kZXggPCBkYXRhLmxlbmd0aDsgaW5kZXgrKykge1xyXG4gICAgbGV0IHRoZW5hbWUgPSBcIlwiICsgZGF0YVtpbmRleF0udm9ybmFtZSArIGRhdGFbaW5kZXhdLm5hY2huYW1lOyBcclxuICAgIC8vIENvbmRpdGlvbmFsIGhlYWQgb2ZcclxuICAgIHZhciBoZWFkb2YgPSA8PjwvPjsgXHJcbiAgICBpZihkYXRhW2luZGV4XS5oZWFkb2Ype1xyXG4gICAgICB2YXIgaGVhZG9mID0gPD48ZGl2IGNsYXNzTmFtZT1cIlwiPiA8Yj5IZWFkIG9mOjwvYj4ge2RhdGFbaW5kZXhdLmhlYWRvZn0gPC9kaXY+IDxici8+PC8+OyBcclxuICAgIH1cclxuICAgIC8vIEpvYnNcclxuICAgIHZhciBqb2JzID0gXCJcIjsgXHJcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGRhdGFbaW5kZXhdLmlnZW1qb2IubGVuZ3RoOyBpKyspIHtcclxuICAgICAgICBpZiAoZGF0YVtpbmRleF0uaWdlbWpvYi5sZW5ndGggID09IDEpIHtcclxuICAgICAgICAgIGpvYnMgKz0gIGRhdGFbaW5kZXhdLmlnZW1qb2JbaV1cclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSBpZiAoaSArIDEgPT0gZGF0YVtpbmRleF0uaWdlbWpvYi5sZW5ndGggKSB7XHJcbiAgICAgICAgICBqb2JzICs9IFwiIGFuZCBcIiArIGRhdGFbaW5kZXhdLmlnZW1qb2JbaV07XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2UgaWYoaSArIDIgPT0gZGF0YVtpbmRleF0uaWdlbWpvYi5sZW5ndGgpe1xyXG4gICAgICAgICAgam9icyArPSAgZGF0YVtpbmRleF0uaWdlbWpvYltpXVxyXG4gICAgICAgICAgLy9jb25zb2xlLmxvZyhgYmVpIGkrMiBpc3QgZXMgJHtkYXRhW2luZGV4XS5ob2JiaWVzW2ldfWApXHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2V7XHJcbiAgICAgICAgICBqb2JzICs9ICBkYXRhW2luZGV4XS5pZ2Vtam9iW2ldICsgXCIsIFwiO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8vIEZ1bmZhY3RzIFxyXG4gICAgdmFyIGZ1bmZhY3RzOiBKU1guRWxlbWVudFtdICA9IFtdO1xyXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBkYXRhW2luZGV4XS5mdW5mYWN0cy5sZW5ndGg7IGkrKykge1xyXG4gICAgICBmdW5mYWN0cy5wdXNoKDxsaSBrZXk9e2BmJHtpfWB9PiB7ZGF0YVtpbmRleF0uZnVuZmFjdHNbaV19IDwvbGk+KTsgXHJcbiAgICB9XHJcbiAgICAvLyBIb2JiaWVzXHJcbiAgICB2YXIgaG9iYnMgPSBcIlwiOyBcclxuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgZGF0YVtpbmRleF0uaG9iYmllcy5sZW5ndGg7IGkrKykge1xyXG4gICAgICBpZiAoaSArIDEgPT0gZGF0YVtpbmRleF0uaG9iYmllcy5sZW5ndGggKSB7XHJcbiAgICAgICAgLy9jb25zb2xlLmxvZyhgYmVpIGkrMSBpc3QgZXMgJHtkYXRhW2luZGV4XS5ob2JiaWVzW2ldfWApXHJcbiAgICAgICAgaG9iYnMgKz0gXCIgYW5kIFwiICsgZGF0YVtpbmRleF0uaG9iYmllc1tpXTtcclxuICAgICAgfVxyXG4gICAgICBlbHNlIGlmKGkgKyAyID09IGRhdGFbaW5kZXhdLmhvYmJpZXMubGVuZ3RoKXtcclxuICAgICAgICBob2JicyArPSAgZGF0YVtpbmRleF0uaG9iYmllc1tpXVxyXG4gICAgICAgIC8vY29uc29sZS5sb2coYGJlaSBpKzIgaXN0IGVzICR7ZGF0YVtpbmRleF0uaG9iYmllc1tpXX1gKVxyXG4gICAgICB9XHJcbiAgICAgIGVsc2V7XHJcbiAgICAgICAgLy9jb25zb2xlLmxvZyhgYmVpICR7aX0gaXN0IGVzICR7ZGF0YVtpbmRleF0uaG9iYmllc1tpXX1gKVxyXG4gICAgICAgIGhvYmJzICs9ICBkYXRhW2luZGV4XS5ob2JiaWVzW2ldICsgXCIsIFwiO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAvLyBXaHlpZ2VtXHJcbiAgICB2YXIgd2h5OiBKU1guRWxlbWVudFtdICA9IFtdOyBcclxuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgZGF0YVtpbmRleF0ud2h5aWdlbS5sZW5ndGg7IGkrKykge1xyXG4gICAgICB3aHkucHVzaCg8cD57ZGF0YVtpbmRleF0ud2h5aWdlbVtpXX08L3A+KTsgXHJcbiAgICB9XHJcbiAgICAvL1RpdGxlXHJcbiAgICBsZXQgdGl0bGUgPSBcIlwiOyBcclxuICAgIGlmIChkYXRhW2luZGV4XS50aXRsZSkge1xyXG4gICAgICB0aXRsZSA9IGRhdGFbaW5kZXhdLnRpdGxlITsgXHJcbiAgICB9XHJcbiAgICAvLyBjaGFsbGVuZ2VzXHJcbiAgICBsZXQgY2hhbGxzOiBKU1guRWxlbWVudFtdICA9IFtdOyAgXHJcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGRhdGFbaW5kZXhdLmJpZ2dlc3RjaGFsbGVuZ2UubGVuZ3RoOyBpKyspIHtcclxuICAgICAgY2hhbGxzLnB1c2goPGxpIGtleT17YGQke2l9YH0+e2RhdGFbaW5kZXhdLmJpZ2dlc3RjaGFsbGVuZ2VbaV19PC9saT4pOyBcclxuICAgIH1cclxuICAgIC8vIGJlc3RwYXJ0c1xyXG4gICAgbGV0IGJlc3RzOiBKU1guRWxlbWVudFtdICA9IFtdOyAgXHJcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGRhdGFbaW5kZXhdLmJlc3RwYXJ0Lmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgIGJlc3RzLnB1c2goPGxpIGtleT17YGUke2l9YH0+e2RhdGFbaW5kZXhdLmJlc3RwYXJ0W2ldfTwvbGk+KTsgXHJcbiAgICB9XHJcbiAgICBsZXQgZnJvbnRicmllZmNsYXNzID0gXCJmcm9udGJyaWVmIGZyb250YnJpZWZcIit0aGVuYW1lOyBcclxuICAgIGxldCBiYWNrYnJpZWZjbGFzcyA9IFwiYmFja2JyaWVmIGJhY2ticmllZlwiK3RoZW5hbWU7XHJcblxyXG4gICAgbGV0IHBpY3R1cmUgPSA8ZGl2IGNsYXNzTmFtZT1cImNvbC0yIGxucCBjZW50ZXJcIj48aW1nIHNyYz17ZGF0YVtpbmRleF0uendlaXRmb3RvfSBzdHlsZT17e2Rpc3BsYXk6IFwibm9uZVwifX0gY2xhc3NOYW1lPXtcImltZyB0ZWFtLWltZyBzaWRlLW1hcmdpbnMtYXV0byBcIitiYWNrYnJpZWZjbGFzc30vPjxpbWcgc3JjPXtkYXRhW2luZGV4XS5oYXVwdGZvdG99IGNsYXNzTmFtZT17XCJpbWcgdGVhbS1pbWcgXCIrZnJvbnRicmllZmNsYXNzfT48L2ltZz48L2Rpdj4gXHJcbiAgICBsZXQgbmFtZXJvdyA9IDxkaXYgY2xhc3NOYW1lPVwicm93XCI+PGRpdiBjbGFzc05hbWU9XCJ0ZWFtLW5hbWVcIj4ge3RpdGxlfSB7ZGF0YVtpbmRleF0udm9ybmFtZX0ge2RhdGFbaW5kZXhdLm5hY2huYW1lfSA8c3BhbiBjbGFzc05hbWU9XCJwcm9ub3Vuc1wiPiAoe2RhdGFbaW5kZXhdLnByb25vdW5zfSkgPC9zcGFuPiA8L2Rpdj4gIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+IDxhIGhyZWY9e2RhdGFbaW5kZXhdLmxpbmtlZGludXJsfT4gPGltZyBjbGFzc05hbWU9XCJ0ZWFtLXNvY2lhbHNcIiBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9kZXNpZ24vaWNvbnMvbGlua2VkaW4ucG5nXCIgLz4gPC9hPjwvZGl2PiA8L2Rpdj47IFxyXG4gICAgbGV0IGZyb250cGFyYWdyYXBoID0gPGRpdiBjbGFzc05hbWU9e1wicm93IFwiICsgZnJvbnRicmllZmNsYXNzfT4gPGg2PldoeSBJIHRvb2sgcGFydCBpbiBpR0VNID88L2g2PiB7d2h5fSA8L2Rpdj4gOyBcclxuICAgIGxldCBmYWN0cyA9IDxkaXYgY2xhc3NOYW1lPXtmcm9udGJyaWVmY2xhc3N9PjxkaXYgY2xhc3NOYW1lPVwiXCI+IDxiPkFnZTo8L2I+IHtkYXRhW2luZGV4XS5hZ2V9IDwvZGl2PiA8YnIvPiB7aGVhZG9mfSA8ZGl2PiA8Yj5QYXJ0IG9mOjwvYj4ge2pvYnN9PC9kaXY+IDxici8+IDxkaXYgY2xhc3NOYW1lPVwiXCI+IDxiPk1ham9yOjwvYj4ge2RhdGFbaW5kZXhdLnN0dWRpZW5nYW5nfSA8L2Rpdj4gPGJyLz4gPGRpdiBjbGFzc05hbWU9XCJcIj4gPGI+U2NpZW50aWZpYyBpbnRlcmVzdHM6PC9iPiB7ZGF0YVtpbmRleF0uc2NpZW50aWZpY2ludGVyZXN0c30gPC9kaXY+IDwvZGl2PjsgXHJcbiAgICBsZXQgYmFja2J1dHRvbiA9ICA8ZGl2IGNsYXNzTmFtZT17YmFja2JyaWVmY2xhc3N9IHN0eWxlPXt7ZGlzcGxheTogXCJub25lXCJ9fT4gICA8ZGl2IGNsYXNzTmFtZT1cInBhcmVudC1idXR0b25cIj48YnV0dG9uIG9uQ2xpY2s9e2ZsaXBCYWNrKHRoZW5hbWUpfSBjbGFzc05hbWU9XCJmcm9udGJ1dHRvblwiPkNsaWNrIG1lPC9idXR0b24+PC9kaXY+PC9kaXY+XHJcbiAgICBsZXQgZnVuZmFjdGxpc3QgPSA8ZGl2IGNsYXNzTmFtZT17YmFja2JyaWVmY2xhc3N9IHN0eWxlPXt7ZGlzcGxheTogXCJub25lXCJ9fT48Yj5GdW5mYWN0czogPC9iPjx1bD4ge2Z1bmZhY3RzfTwvdWw+PC9kaXY+XHJcbiAgICBsZXQgZmF2bXVzaWMgPSA8PjxoNj5GYXZvdXJpdGUgbGFiIG11c2ljOjwvaDY+PHA+e2RhdGFbaW5kZXhdLmZhdmxhYm11c2ljfTwvcD48Lz5cclxuICAgIGxldCBob2JiaWVsaXN0ID0gPD48aDY+SG9iYmllczo8L2g2PiA8cD4ge2hvYmJzfSA8L3A+PC8+XHJcbiAgICBsZXQgYmFja3BhcmFncmFwaCA9IDxkaXYgY2xhc3NOYW1lPXtcInJvdyBcIitiYWNrYnJpZWZjbGFzc30gc3R5bGU9e3tkaXNwbGF5OiBcIm5vbmVcIn19PntmYXZtdXNpY317aG9iYmllbGlzdH08L2Rpdj4gXHJcbiAgICBsZXQgcGFyYWdyYXBocyA9IDxkaXYgY2xhc3NOYW1lPVwic3RlY2tib2R5XCI+IHtmcm9udHBhcmFncmFwaH0ge2JhY2twYXJhZ3JhcGh9IDwvZGl2PlxyXG4gICAgbGV0IGZyb250YnV0dG9uID0gIDxkaXYgY2xhc3NOYW1lPXtmcm9udGJyaWVmY2xhc3N9PiA8ZGl2IGNsYXNzTmFtZT1cInBhcmVudC1idXR0b25cIj48YnV0dG9uIG9uQ2xpY2s9e2ZsaXAodGhlbmFtZSl9IGNsYXNzTmFtZT1cImZyb250YnV0dG9uXCI+Q2xpY2sgbWU8L2J1dHRvbj48L2Rpdj48L2Rpdj5cclxuICAgIGxldCBjaGFsbGVuZ2VzID0gPGRpdj4gPGg2PldoYXQgd2VyZSB0aGUgYmlnZ2VzdCBjaGFsbGVuZ2VzPzwvaDY+IDx1bD4ge2NoYWxsc30gPC91bD4gPC9kaXY+XHJcbiAgICBsZXQgYmVzdHBhcnQgPSA8ZGl2PiA8aDY+V2hhdCB3ZXJlIHRoZSBiZXN0IHBhcnRzPzwvaDY+IDx1bD4ge2Jlc3RzfSA8L3VsPjwvZGl2PiA7IFxyXG4gICAgbGV0IGRldGFpbHMgPSA8ZGl2PiA8YnIvPiB7Y2hhbGxlbmdlc30ge2Jlc3RwYXJ0fSA8L2Rpdj5cclxuICAgIGxldCBob2xlID0gXHJcbiAgICAgICAgICAgIDxkaXY+IFxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93IHN0ZWNrYnJpZWZcIj4ge3BpY3R1cmV9ICBcclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sLTVcIj4gXHJcbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93XCI+IHtuYW1lcm93fVxyXG4gICAgICAgICAgICAgICAgICA8aHIvPiAgXHJcbiAgICAgICAgICAgICAgICAgIDwvZGl2PiAgIFxyXG4gICAgICAgICAgICAgICAgICB7cGFyYWdyYXBoc30gICAgIFxyXG4gICAgICAgICAgICAgICAgPC9kaXY+IFxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wtNCBicmllZmZhY3RzXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxici8+PGJyLz4gIHtmdW5mYWN0bGlzdH0ge2ZhY3RzfSBcclxuICAgICAgICAgICAgICAgIDwvZGl2PiAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgIDwvZGl2PiA8ZGl2IGNsYXNzTmFtZT1cInJvdyBzdGVja2JyaWVmYnV0dG9ucm93XCIgc3R5bGU9e3ttYXJnaW5Ub3A6IFwiMXJlbVwiLCBtYXJnaW5Cb3R0b206IFwiMXJlbVwifX0+IDxkaXYgY2xhc3NOYW1lPVwiY29sLTJcIj4ge2Zyb250YnV0dG9ufSB7YmFja2J1dHRvbn08L2Rpdj4gIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+PGRldGFpbHMgY2xhc3NOYW1lPXtmcm9udGJyaWVmY2xhc3N9ID48c3VtbWFyeT4gPGI+UGVyc29uYWwgbW90aXZhdGlvbiBhbmQgY2hhbGxlbmdlczwvYj4gPC9zdW1tYXJ5PjxkaXY+IHtkZXRhaWxzfTwvZGl2PjwvZGV0YWlscz48L2Rpdj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PiBcclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICBsZXQgd2hvbGUgPSA8ZGl2ICBjbGFzc05hbWU9e1wic3RlY2ticmllZi1ib3hcIn0gaWQ9e3RoZW5hbWV9PiB7aG9sZX0gPC9kaXY+OyBcclxuICAgIGJyaWVmZS5wdXNoKHdob2xlKTsgXHJcbiAgfVxyXG4gIHJldHVybiBicmllZmU7IFxyXG59XHJcblxyXG5mdW5jdGlvbiBjcmVhdGVQaVN0ZWNrYnJpZWZlKGRhdGE6IEFycmF5PFN0ZWNrYnJpZWZJbnRlcmZhY2U+KXtcclxuICBsZXQgYnJpZWZlOiBKU1guRWxlbWVudFtdICA9IFtdXHJcbiAgZm9yIChsZXQgaW5kZXggPSAwOyBpbmRleCA8IGRhdGEubGVuZ3RoOyBpbmRleCsrKSB7XHJcbiAgICBsZXQgdGhlbmFtZSA9IFwiXCIgKyBkYXRhW2luZGV4XS52b3JuYW1lICsgZGF0YVtpbmRleF0ubmFjaG5hbWU7IFxyXG4gICAgLy8gQ29uZGl0aW9uYWwgaGVhZCBvZlxyXG4gICAgdmFyIGhlYWRvZiA9IDw+PC8+OyBcclxuICAgIGlmKGRhdGFbaW5kZXhdLmhlYWRvZil7XHJcbiAgICAgIHZhciBoZWFkb2YgPSA8PjxkaXYgY2xhc3NOYW1lPVwiXCI+IDxiPmlHRU0tSm9iOjwvYj4ge2RhdGFbaW5kZXhdLmhlYWRvZn0gPC9kaXY+IDxici8+PC8+OyBcclxuICAgIH1cclxuICAgIC8vIEpvYnNcclxuICAgIHZhciBqb2JzID0gXCJcIjsgXHJcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGRhdGFbaW5kZXhdLmlnZW1qb2IubGVuZ3RoOyBpKyspIHtcclxuICAgICAgICBpZiAoaSArIDEgPT0gZGF0YVtpbmRleF0uaWdlbWpvYi5sZW5ndGggKSB7XHJcbiAgICAgICAgICBqb2JzICs9IFwiIGFuZCBcIiArIGRhdGFbaW5kZXhdLmlnZW1qb2JbaV07XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2V7XHJcbiAgICAgICAgICBqb2JzICs9ICBkYXRhW2luZGV4XS5pZ2Vtam9iW2ldICsgXCIsIFwiO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8vIEZ1bmZhY3RzIFxyXG4gICAgdmFyIGZ1bmZhY3RzOiBKU1guRWxlbWVudFtdICA9IFtdO1xyXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBkYXRhW2luZGV4XS5mdW5mYWN0cy5sZW5ndGg7IGkrKykge1xyXG4gICAgICBmdW5mYWN0cy5wdXNoKDxsaSBrZXk9e2BhJHtpfWB9PiB7ZGF0YVtpbmRleF0uZnVuZmFjdHNbaV19IDwvbGk+KTsgXHJcbiAgICB9XHJcbiAgICAvLyBIb2JiaWVzXHJcbiAgICB2YXIgaG9iYnMgPSBcIlwiOyBcclxuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgZGF0YVtpbmRleF0uaG9iYmllcy5sZW5ndGg7IGkrKykge1xyXG4gICAgICBpZiAoaSArIDEgPT0gZGF0YVtpbmRleF0uaG9iYmllcy5sZW5ndGggKSB7XHJcbiAgICAgICAgaG9iYnMgKz0gXCIgYW5kIFwiICsgZGF0YVtpbmRleF0uaG9iYmllc1tpXTtcclxuICAgICAgfVxyXG4gICAgICBlbHNlIGlmKGkgKyAyID09IGRhdGFbaW5kZXhdLmhvYmJpZXMubGVuZ3RoKXtcclxuICAgICAgICBob2JicyArPSAgZGF0YVtpbmRleF0uaG9iYmllc1tpXVxyXG4gICAgICAgIC8vY29uc29sZS5sb2coYGJlaSBpKzIgaXN0IGVzICR7ZGF0YVtpbmRleF0uaG9iYmllc1tpXX1gKVxyXG4gICAgICB9XHJcbiAgICAgIGVsc2V7XHJcbiAgICAgICAgaG9iYnMgKz0gIGRhdGFbaW5kZXhdLmhvYmJpZXNbaV0gKyBcIiwgXCI7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC8vIFdoeWlnZW1cclxuICAgIHZhciB3aHk6IEpTWC5FbGVtZW50W10gID0gW107IFxyXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBkYXRhW2luZGV4XS53aHlpZ2VtLmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgIHdoeS5wdXNoKDxwPntkYXRhW2luZGV4XS53aHlpZ2VtW2ldfTwvcD4pOyBcclxuICAgIH1cclxuICAgIC8vVGl0bGVcclxuICAgIGxldCB0aXRsZSA9IFwiXCI7IFxyXG4gICAgaWYgKGRhdGFbaW5kZXhdLnRpdGxlKSB7XHJcbiAgICAgIHRpdGxlID0gZGF0YVtpbmRleF0udGl0bGUhOyBcclxuICAgIH1cclxuICAgIC8vIGNoYWxsZW5nZXNcclxuICAgIGxldCBjaGFsbHM6IEpTWC5FbGVtZW50W10gID0gW107ICBcclxuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgZGF0YVtpbmRleF0uYmlnZ2VzdGNoYWxsZW5nZS5sZW5ndGg7IGkrKykge1xyXG4gICAgICBjaGFsbHMucHVzaCg8bGkga2V5PXtgYiR7aX1gfT57ZGF0YVtpbmRleF0uYmlnZ2VzdGNoYWxsZW5nZVtpXX08L2xpPik7IFxyXG4gICAgfVxyXG4gICAgLy8gYmVzdHBhcnRzXHJcbiAgICBsZXQgYmVzdHM6IEpTWC5FbGVtZW50W10gID0gW107ICBcclxuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgZGF0YVtpbmRleF0uYmVzdHBhcnQubGVuZ3RoOyBpKyspIHtcclxuICAgICAgYmVzdHMucHVzaCg8bGkga2V5PXtgYyR7aX1gfT57ZGF0YVtpbmRleF0uYmVzdHBhcnRbaV19PC9saT4pOyBcclxuICAgIH1cclxuICAgIGxldCBmcm9udGJyaWVmY2xhc3MgPSBcImZyb250YnJpZWYgZnJvbnRicmllZlwiK3RoZW5hbWU7IFxyXG4gICAgbGV0IGJhY2ticmllZmNsYXNzID0gXCJiYWNrYnJpZWYgYmFja2JyaWVmXCIrdGhlbmFtZTtcclxuXHJcbiAgICBsZXQgcGljdHVyZSA9IDxkaXYgY2xhc3NOYW1lPVwiY29sLTIgbG5wIGNlbnRlclwiPjxpbWcgc3JjPXtkYXRhW2luZGV4XS56d2VpdGZvdG99IHN0eWxlPXt7ZGlzcGxheTogXCJub25lXCJ9fSBjbGFzc05hbWU9e1wiaW1nIHRlYW0taW1nIHNpZGUtbWFyZ2lucy1hdXRvIFwiK2JhY2ticmllZmNsYXNzfS8+PGltZyBzcmM9e2RhdGFbaW5kZXhdLmhhdXB0Zm90b30gY2xhc3NOYW1lPXtcImltZyB0ZWFtLWltZyBcIitmcm9udGJyaWVmY2xhc3N9PjwvaW1nPjwvZGl2PiBcclxuICAgIGxldCBuYW1lcm93ID0gPGRpdiBjbGFzc05hbWU9XCJyb3dcIj48ZGl2IGNsYXNzTmFtZT1cInRlYW0tbmFtZVwiPiB7dGl0bGV9IHtkYXRhW2luZGV4XS52b3JuYW1lfSB7ZGF0YVtpbmRleF0ubmFjaG5hbWV9IDxzcGFuIGNsYXNzTmFtZT1cInByb25vdW5zXCI+ICh7ZGF0YVtpbmRleF0ucHJvbm91bnN9KSA8L3NwYW4+IDwvZGl2PiAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj4gPGEgaHJlZj17ZGF0YVtpbmRleF0ubGlua2VkaW51cmx9PiA8aW1nIGNsYXNzTmFtZT1cInRlYW0tc29jaWFsc1wiIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2Rlc2lnbi9pY29ucy9saW5rZWRpbi5wbmdcIiAvPiA8L2E+PC9kaXY+IDwvZGl2PjsgXHJcbiAgICBsZXQgZnJvbnRwYXJhZ3JhcGggPSA8ZGl2IGNsYXNzTmFtZT17XCJyb3cgXCIgKyBmcm9udGJyaWVmY2xhc3N9PiA8aDY+V2h5IEkgdG9vayBwYXJ0IGluIGlHRU08L2g2PiB7d2h5fSA8L2Rpdj4gOyBcclxuICAgIGxldCBmYWN0cyA9IDxkaXYgY2xhc3NOYW1lPXtmcm9udGJyaWVmY2xhc3N9PjxkaXYgY2xhc3NOYW1lPVwiXCI+IDxiPkFnZTo8L2I+IHtkYXRhW2luZGV4XS5hZ2V9IDwvZGl2PiA8YnIvPiB7aGVhZG9mfSA8ZGl2PiA8Yj5BZmZpbGlhdGlvbjo8L2I+IHtqb2JzfTwvZGl2PiA8YnIvPiA8ZGl2IGNsYXNzTmFtZT1cIlwiPiA8Yj5SZWd1bGFyIEpvYjo8L2I+IHtkYXRhW2luZGV4XS5zdHVkaWVuZ2FuZ30gPC9kaXY+IDxici8+IDxkaXYgY2xhc3NOYW1lPVwiXCI+IDxiPlNjaWVudGlmaWMgaW50ZXJlc3RzOjwvYj4ge2RhdGFbaW5kZXhdLnNjaWVudGlmaWNpbnRlcmVzdHN9IDwvZGl2PiA8L2Rpdj47IFxyXG4gICAgbGV0IGJhY2tidXR0b24gPSAgPGRpdiBjbGFzc05hbWU9e2JhY2ticmllZmNsYXNzfSBzdHlsZT17e2Rpc3BsYXk6IFwibm9uZVwifX0+ICAgPGRpdiBjbGFzc05hbWU9XCJwYXJlbnQtYnV0dG9uXCI+PGJ1dHRvbiBvbkNsaWNrPXtmbGlwQmFjayh0aGVuYW1lKX0gY2xhc3NOYW1lPVwiZnJvbnRidXR0b25cIj5DbGljayBtZTwvYnV0dG9uPjwvZGl2PjwvZGl2PlxyXG4gICAgbGV0IGZ1bmZhY3RsaXN0ID0gPGRpdiBjbGFzc05hbWU9e2JhY2ticmllZmNsYXNzfSBzdHlsZT17e2Rpc3BsYXk6IFwibm9uZVwifX0+PGI+RnVuZmFjdHM6IDwvYj48dWw+IHtmdW5mYWN0c308L3VsPjwvZGl2PlxyXG4gICAgbGV0IGZhdm11c2ljID0gPD48aDY+RmF2b3VyaXRlIGxhYiBtdXNpYzo8L2g2PjxwPntkYXRhW2luZGV4XS5mYXZsYWJtdXNpY308L3A+PC8+XHJcbiAgICBsZXQgaG9iYmllbGlzdCA9IDw+PGg2PkhvYmJpZXM6PC9oNj4gPHA+IHtob2Jic30gPC9wPjwvPlxyXG4gICAgbGV0IGJhY2twYXJhZ3JhcGggPSA8ZGl2IGNsYXNzTmFtZT17XCJyb3cgXCIrYmFja2JyaWVmY2xhc3N9IHN0eWxlPXt7ZGlzcGxheTogXCJub25lXCJ9fT57ZmF2bXVzaWN9e2hvYmJpZWxpc3R9PC9kaXY+IFxyXG4gICAgbGV0IHBhcmFncmFwaHMgPSA8ZGl2IGNsYXNzTmFtZT1cInN0ZWNrYm9keVwiPiB7ZnJvbnRwYXJhZ3JhcGh9IHtiYWNrcGFyYWdyYXBofSA8L2Rpdj5cclxuICAgIGxldCBmcm9udGJ1dHRvbiA9ICA8ZGl2IGNsYXNzTmFtZT17ZnJvbnRicmllZmNsYXNzfT4gPGRpdiBjbGFzc05hbWU9XCJwYXJlbnQtYnV0dG9uXCI+PGJ1dHRvbiBvbkNsaWNrPXtmbGlwKHRoZW5hbWUpfSBjbGFzc05hbWU9XCJmcm9udGJ1dHRvblwiPkNsaWNrIG1lPC9idXR0b24+PC9kaXY+PC9kaXY+XHJcbiAgICBsZXQgY2hhbGxlbmdlcyA9IDxkaXY+IDxoNj5XaGF0IHdlcmUgdGhlIGJpZ2dlc3QgY2hhbGxlbmdlcz88L2g2PiA8dWw+IHtjaGFsbHN9IDwvdWw+IDwvZGl2PlxyXG4gICAgbGV0IGJlc3RwYXJ0ID0gPGRpdj4gPGg2PldoYXQgd2VyZSB0aGUgYmVzdCBwYXJ0cz88L2g2PiA8dWw+IHtiZXN0c30gPC91bD48L2Rpdj4gOyBcclxuICAgIGxldCBkZXRhaWxzID0gPGRpdj4gPGJyLz4ge2NoYWxsZW5nZXN9IHtiZXN0cGFydH0gPC9kaXY+XHJcbiAgICBsZXQgaG9sZSA9IFxyXG4gICAgICAgICAgICA8ZGl2PiBcclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvdyBzdGVja2JyaWVmXCI+IHtwaWN0dXJlfSAgXHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbC01XCI+IFxyXG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvd1wiPiB7bmFtZXJvd31cclxuICAgICAgICAgICAgICAgICAgPGhyLz4gIFxyXG4gICAgICAgICAgICAgICAgICA8L2Rpdj4gICBcclxuICAgICAgICAgICAgICAgICAge3BhcmFncmFwaHN9ICAgICBcclxuICAgICAgICAgICAgICAgIDwvZGl2PiBcclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sLTQgYnJpZWZmYWN0c1wiPlxyXG4gICAgICAgICAgICAgICAgICA8YnIvPjxici8+ICB7ZnVuZmFjdGxpc3R9IHtmYWN0c30gXHJcbiAgICAgICAgICAgICAgICA8L2Rpdj4gICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICA8L2Rpdj4gPGRpdiBjbGFzc05hbWU9XCJyb3cgc3RlY2ticmllZmJ1dHRvbnJvd1wiIHN0eWxlPXt7bWFyZ2luVG9wOiBcIjFyZW1cIiwgbWFyZ2luQm90dG9tOiBcIjFyZW1cIn19PiA8ZGl2IGNsYXNzTmFtZT1cImNvbC0yXCI+IHtmcm9udGJ1dHRvbn0ge2JhY2tidXR0b259PC9kaXY+ICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPjxkZXRhaWxzIGNsYXNzTmFtZT17ZnJvbnRicmllZmNsYXNzfSA+PHN1bW1hcnk+IDxiPlBlcnNvbmFsIG1vdGl2YXRpb24gYW5kIGNoYWxsZW5nZXM8L2I+IDwvc3VtbWFyeT48ZGl2PiB7ZGV0YWlsc308L2Rpdj48L2RldGFpbHM+PC9kaXY+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gXHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgbGV0IHdob2xlID0gPGRpdiAgY2xhc3NOYW1lPXtcInN0ZWNrYnJpZWYtYm94XCJ9IGlkPXt0aGVuYW1lfT4ge2hvbGV9IDwvZGl2PjsgXHJcbiAgICBicmllZmUucHVzaCh3aG9sZSk7IFxyXG4gIH1cclxuICByZXR1cm4gYnJpZWZlOyBcclxufVxyXG5cclxuXHJcblxyXG5mdW5jdGlvbiBmbGlwKGVsZW1lbnQ6IHN0cmluZyl7XHJcbiAgY29uc3QgZmxpcHAgPSAoX2V2ZW50OiBSZWFjdC5Nb3VzZUV2ZW50PEhUTUxFbGVtZW50LCBNb3VzZUV2ZW50PikgPT4ge1xyXG4gICAgbGV0IGVsZW1lbnRzVG9IaWRlID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZShcImZyb250YnJpZWZcIitlbGVtZW50KTtcclxuICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBlbGVtZW50c1RvSGlkZS5sZW5ndGg7IGkrKykge1xyXG4gICAgICAgIChlbGVtZW50c1RvSGlkZVtpXSBhcyBIVE1MRWxlbWVudCkuc3R5bGUuZGlzcGxheSA9IFwibm9uZVwiO1xyXG4gICAgICB9XHJcbiAgICBsZXQgZWxlbWVudHNUb0ZpbmQgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKFwiYmFja2JyaWVmXCIrZWxlbWVudCk7XHJcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGVsZW1lbnRzVG9GaW5kLmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgIChlbGVtZW50c1RvRmluZFtpXSBhcyBIVE1MRWxlbWVudCkuc3R5bGUuZGlzcGxheSA9IFwiYmxvY2tcIjtcclxuICAgIH1cclxuICB9XHJcbiAgcmV0dXJuIGZsaXBwOyBcclxufVxyXG5cclxuZnVuY3Rpb24gZmxpcEJhY2soZWxlbWVudDogc3RyaW5nKXtcclxuICBjb25zdCBmbGlwcGJhY2sgPSAoX2V2ZW50OiBSZWFjdC5Nb3VzZUV2ZW50PEhUTUxFbGVtZW50LCBNb3VzZUV2ZW50PikgPT4ge1xyXG4gICAgbGV0IGVsZW1lbnRzVG9IaWRlID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZShcImJhY2ticmllZlwiK2VsZW1lbnQpO1xyXG4gICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGVsZW1lbnRzVG9IaWRlLmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgICAgKGVsZW1lbnRzVG9IaWRlW2ldIGFzIEhUTUxFbGVtZW50KS5zdHlsZS5kaXNwbGF5ID0gXCJub25lXCI7XHJcbiAgICAgIH1cclxuICAgIGxldCBlbGVtZW50c1RvRmluZCA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlDbGFzc05hbWUoXCJmcm9udGJyaWVmXCIrZWxlbWVudCk7XHJcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGVsZW1lbnRzVG9GaW5kLmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgIChlbGVtZW50c1RvRmluZFtpXSBhcyBIVE1MRWxlbWVudCkuc3R5bGUuZGlzcGxheSA9IFwiYmxvY2tcIjtcclxuICAgIH1cclxuICB9XHJcbiAgcmV0dXJuIGZsaXBwYmFjazsgIFxyXG59IiwgImltcG9ydCB7IHVzZUVmZmVjdCB9IGZyb20gXCJyZWFjdFwiO1xyXG5pbXBvcnQgeyBCYWNrVXAgfSBmcm9tIFwiLi4vY29tcG9uZW50cy9CdXR0b25zXCI7XHJcbmltcG9ydCB7IEgyIH0gZnJvbSBcIi4uL2NvbXBvbmVudHMvSGVhZGluZ3NcIjtcclxuaW1wb3J0IHsgQmxvY2tRdW90ZUIgfSBmcm9tIFwiLi4vY29tcG9uZW50cy9RdW90ZXNcIjtcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBBdHRyaWJ1dGlvbnMoKSB7XHJcbiAgY29uc3QgdGVhbUlEID0gaW1wb3J0Lm1ldGEuZW52LlZJVEVfVEVBTV9JRDtcclxuXHJcbiAgdXNlRWZmZWN0KCgpID0+IHtcclxuICAgIGZ1bmN0aW9uIGxpc3RlblRvSWZyYW1lSGVpZ2h0KGU6IE1lc3NhZ2VFdmVudCkge1xyXG4gICAgICBpZiAoZS5vcmlnaW4gPT09IFwiaHR0cHM6Ly90ZWFtcy5pZ2VtLm9yZ1wiKSB7XHJcbiAgICAgICAgY29uc3QgeyB0eXBlLCBkYXRhIH0gPSBKU09OLnBhcnNlKGUuZGF0YSk7XHJcbiAgICAgICAgaWYgKHR5cGUgPT09IFwiaWdlbS1hdHRyaWJ1dGlvbi1mb3JtXCIpIHtcclxuICAgICAgICAgIGNvbnN0IGVsZW1lbnQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChcImlnZW0tYXR0cmlidXRpb24tZm9ybVwiKTtcclxuICAgICAgICAgIGlmIChlbGVtZW50KSB7XHJcbiAgICAgICAgICAgIGVsZW1lbnQuc3R5bGUuaGVpZ2h0ID0gYCR7ZGF0YSArIDEwMH1weGA7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcihcIm1lc3NhZ2VcIiwgbGlzdGVuVG9JZnJhbWVIZWlnaHQpO1xyXG4gICAgcmV0dXJuICgpID0+IHtcclxuICAgICAgd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoXCJtZXNzYWdlXCIsIGxpc3RlblRvSWZyYW1lSGVpZ2h0KTtcclxuICAgIH07XHJcbiAgfSwgW10pO1xyXG5cclxuICByZXR1cm4gKFxyXG4gICAgPD5cclxuICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3cgbXQtNFwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgIDxIMiB0ZXh0PVwiT25lIGlHRU0gcHJvamVjdCAtIE1pbGxpb24gcGVvcGxlIGJlaGluZFwiLz5cclxuICAgICAgICAgPEJsb2NrUXVvdGVCIHRleHQ9XCJXaXRoIGEgbG90IG9mIHJlc3BvbnNpYmlsaXR5IGNvbWVzIGEgYmlnZ2VyIHdvcmtsb2FkIGFuZCBldmVuIG1vcmUgcGVvcGxlIHdvcmtpbmcgdG9nZXRoZXJcIiBjaXRlPVwiZm9ybWVyIGlHRU1lclwiLz5cclxuICAgICAgICA8cD5XZSB3b3VsZCBsaWtlIHRvIHRoYW5rIGV2ZXJ5b25lIHdobyBzdXBwb3J0ZWQgb3VyIHRlYW0gYW5kIHByb3ZpZGVkIGFzc2lzdGFuY2UsIHJlc291cmNlcyBvciB1c2VmdWwgdGlwcyBpbiBvcmRlciB0byBmdWxmaWxsIG91ciBwcm9qZWN0LjwvcD5cclxuICAgICAgICA8cD5UaGUgZm9sbG93aW5nIG92ZXJ2aWV3IGxpc3RzIGFsbCB0ZWFtIG1lbWJlcnMsIHdobyBoYXZlIGJlZW4gaW5zdHJ1bWVudGFsIGluIG91ciBpR0VNIHByb2plY3QuIFdlIGFyZSBwcm91ZCBvZiBvdXIgd29yayBhbmQgbG9vayBmb3J3YXJkIHRvIHdoYXQgYXdhaXRzIHVzIGFmdGVyIHRoZSBpR0VNIGNvbXBldGl0aW9uLjwvcD5cclxuICAgICAgICA8cD5XZSB3b3VsZCBsaWtlIHRvIHRoYW5rIG91ciBwcmluY2lwYWwgaW52ZXN0aWdhdG9ycywgaW5zdHJ1Y3RvciBhbmQgc3VwZXJ2aXNvcnMgZm9yIGd1aWRpbmcgdXMgYWxvbmcgdGhlIHdheSBhbmQgaGVscGluZyB0byBzaGFwZSBvdXIgcHJvamVjdC48L3A+XHJcbiAgICAgICAgPHA+V2UgY29udHJpYnV0ZWQgYWxsIGV4dGVybmFsIHBhcnRuZXJzIHRoYXQgaGF2ZSBpbmZsdWVuY2VkIHRoZSBwcm9qZWN0IGJlbG93LiBXZSB3b3VsZCBsaWtlIHRvIHRoYW5rIGFsbCBpR0VNIHRlYW1zLCBmb3JtZXIgaUdFTSB0ZWFtIG1lbWJlcnMgb2YgdGhlIHVuaXZlcnNpdHkgb2YgQmllbGVmZWxkIG9yIGV4dGVybmFsIHRlYW0gbWVtYmVycywgY29udHJhY3RvcnMsIHRlY2huaWNpYW5zLCBsYWJvcmF0b3J5IHN0dWRlbnRzLCBwb3N0LWRvY3MgYW5kIGNvbGxhYm9yYXRvcnMgZm9yIHRoZWlyIHN1cHBvcnQgaW4gYW55IGZvcm0uIDwvcD5cclxuICAgICAgICA8cD5XZSB3b3VsZCBhbHNvIGxpa2UgdG8gdGhhbmsgb3VyIHNwb25zb3JzLCB3aG8gaGF2ZSBzdXBwb3J0ZWQgdXMgd2l0aCB0aGVpciBnZW5lcm91cyBkb25hdGlvbnMuIEZpcnN0IGFuZCBmb3JlbW9zdCwgQmllbGVmZWxkIFVuaXZlcnNpdHksIGFuZCBwYXJ0aWN1bGFybHkgUHJvZi4gRHIuIEFsZnJlZCBQXHUwMEZDaGxlciwgd2hvIHJldml2ZWQgaUdFTSBhbmQgYWxsb3dzIHVzIHRvIHBhcnRpY2lwYXRlIGluIHRoaXMgeWVhcidzIGNvbXBldGl0aW9uLiBBZGRpdGlvbmFsbHksIHdlIGFyZSB0aGFua2Z1bCBmb3IgdGhlIHN1cHBvcnQgYW5kIGZlZWRiYWNrIG9mIHRoZSBzdGVlcmluZyBjb21taXR0ZWUuPC9wPlxyXG4gICAgICAgIDxwPkluIGFkZGl0aW9uIHRvIGNvb3BlcmF0aW9uIGFuZCBjb2xsYWJvcmF0aXZlIHdvcmssIHRpbWUgbWFuYWdlbWVudCBmb2N1c2VzIG9uIGVmZmljaWVudCBvcGVyYXRpb24gb2YgZXZlcnkgaUdFTSBwcm9qZWN0LiBUaGUgZm9sbG93aW5nIGxpc3Qgb2Ygb3VyIHByb2plY3QgdGltZWxpbmUgc2VydmVzIGFzIGFuIG9yaWVudGF0aW9uIGFuZCBnaXZlcyBhbiBvdmVydmlldyBvZiB0aGUgdGVtcG9yYWwgc3RhZ2dlcmluZyBvZiB0aGUgcHJvamVjdC4gV2Ugd291bGQgbGlrZSB0byB0aGFuayBhbGwgcGFydGljaXBhbnRzIGZvciB0aGUgY29vcmRpbmF0aW9uIG9mIG91ciBhY3Rpdml0aWVzPC9wPlxyXG5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8YnIvPlxyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPGlmcmFtZVxyXG4gICAgICAgIHN0eWxlPXt7IHdpZHRoOiBcIjEwMCVcIiB9fVxyXG4gICAgICAgIGlkPVwiaWdlbS1hdHRyaWJ1dGlvbi1mb3JtXCJcclxuICAgICAgICBzcmM9e2BodHRwczovL3RlYW1zLmlnZW0ub3JnL3dpa2kvJHt0ZWFtSUR9L2F0dHJpYnV0aW9uc2B9XHJcbiAgICAgIC8+XHJcbiAgICAgIDxCYWNrVXAvPiBcclxuICAgIDwvPlxyXG4gICk7XHJcbn1cclxuIiwgIlxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIEJsb2NrUXVvdGUoe3RleHQsIGNpdGV9OiB7dGV4dDogc3RyaW5nOyBjaXRlOiBzdHJpbmd9KXtcclxuICAgIHJldHVybihcclxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImJsb2NrcXVvdGUtd3JhcHBlclwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImJsb2NrcXVvdGVcIj5cclxuICAgICAgICAgICAgICAgIDxoMiBjbGFzc05hbWU9XCJibG9jay1oMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgIHt0ZXh0fVxyXG4gICAgICAgICAgICAgICAgPC9oMj5cclxuICAgICAgICAgICAgICAgIDxoNCBjbGFzc05hbWU9XCJibG9jay1oNFwiPjxlbT57Y2l0ZX08L2VtPjwvaDQ+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgIClcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIEJsb2NrUXVvdGVCKHt0ZXh0LCBjaXRlLCBpZH06IHt0ZXh0OiBzdHJpbmc7IGNpdGU6IHN0cmluZywgaWQ/OiBzdHJpbmd9KXtcclxuICAgIGlmIChpZCl7XHJcbiAgICAgICAgbGV0IGggPSBcIiNcIiArIHtpZH1cclxuICAgICAgICByZXR1cm4oXHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiYmxvY2txdW90ZS13cmFwcGVyXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImJsb2NrcXVvdGV4XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGgyIGNsYXNzTmFtZT1cImJsb2NrLWgyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHt0ZXh0fVxyXG4gICAgICAgICAgICAgICAgICAgIDwvaDI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGg0IGNsYXNzTmFtZT1cImJsb2NrLWg0XCI+PGVtPntjaXRlfTwvZW0+IDxhIGhyZWY9e2h9PjxzdXA+e2lkfTwvc3VwPjwvYT48L2g0PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICkgIFxyXG4gICAgfVxyXG4gICAgZWxzZXtcclxuICAgICAgICByZXR1cm4oXHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiYmxvY2txdW90ZS13cmFwcGVyXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImJsb2NrcXVvdGV4XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGgyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICB7dGV4dH1cclxuICAgICAgICAgICAgICAgICAgICA8L2gyPlxyXG4gICAgICAgICAgICAgICAgICAgIDxoND48ZW0+e2NpdGV9PC9lbT48L2g0PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICApXHJcbiAgICB9XHJcbiAgICBcclxufVxyXG5cclxuXHJcbi8qIDxzcGFuPldpbnN0b24gQ2h1cmNoaWxsPC9zcGFuPlxyXG4gIDxibG9ja3F1b3RlPlxyXG4gICAgPHA+PGk+JmxkcXVvO1N1Y2Nlc3MgY29uc2lzdHMgb2YgZ29pbmcgZnJvbSBmYWlsdXJlIHRvIGZhaWx1cmUgd2l0aG91dCBsb3NzIG9mIGVudGh1c2lhc20uJnJkcXVvOyA8L2k+PC9wPlxyXG4gIDwvYmxvY2txdW90ZT4gKi8iLCAiaW1wb3J0IHsgQnV0dG9uT25lLCBEb3dubG9hZExpbmsgfSBmcm9tIFwiLi9CdXR0b25zXCJcclxuXHJcblxyXG5leHBvcnQgZnVuY3Rpb24gUERGKHtsaW5rLCBuYW1lfToge2xpbms6IHN0cmluZywgbmFtZTpzdHJpbmd9KXtcclxuICAgIHJldHVybihcclxuICAgICAgICBcclxuICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9J2FsaWduLWl0ZW1zLWNlbnRlcic+XHJcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJpZnJhbWUtY29udGFpbmVyXCI+XHJcbiAgICAgICAgICAgIDxpZnJhbWUgc3JjPXtsaW5rfSAgdGl0bGU9XCJ0aXRsZVwiIGNsYXNzTmFtZT0nb25lLXBkZi1saW5lIHNtYWxsLWknPlxyXG4gICAgICAgICAgICA8L2lmcmFtZT5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT0ncm93IGRvd25sb2FkLWNvbCc+XHJcbiAgICAgICAgICAgIDxEb3dubG9hZExpbmsgdXJsPXtsaW5rfSBmaWxlTmFtZT17bmFtZX0gPjwvRG93bmxvYWRMaW5rPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgIFxyXG4gICAgKVxyXG59XHJcbmV4cG9ydCBmdW5jdGlvbiBUd29MaW5lUERGKHtsaW5rLCBuYW1lfToge2xpbms6IHN0cmluZywgbmFtZTpzdHJpbmd9KXtcclxuICAgIHJldHVybihcclxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT0ncm93IGFsaWduLWl0ZW1zLWNlbnRlcic+XHJcbiAgICAgICAgICAgICAgICA8aWZyYW1lIHNyYz17bGlua30gd2lkdGg9XCIxMDAlXCIgdGl0bGU9XCJ0aXRsZVwiIGNsYXNzTmFtZT0ndHdvLXBkZi1saW5lIHNtYWxsLWknPlxyXG4gICAgICAgICAgICAgICAgPC9pZnJhbWU+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0ncm93IGRvd25sb2FkLWNvbCc+XHJcbiAgICAgICAgICAgICAgICA8RG93bmxvYWRMaW5rIHVybD17bGlua30gZmlsZU5hbWU9e25hbWV9ID48L0Rvd25sb2FkTGluaz5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgIClcclxufVxyXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBCRkhwZGYoKXtcclxuICAgIHJldHVybihcclxuICAgIDw+XHJcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3cgYWxpZ24taXRlbXMtY2VudGVyXCIgPlxyXG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgICAgPEJ1dHRvbk9uZSB0ZXh0PVwiRmx5ZXJzXCIgb3Blbj1cImZseWVyc1wiPjwvQnV0dG9uT25lPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICA8QnV0dG9uT25lIHRleHQ9XCJQcmVzZW50YXRpb25zXCIgb3Blbj1cInByZXNpc1wiPjwvQnV0dG9uT25lPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICA8QnV0dG9uT25lIHRleHQ9XCJKdWRnaW5nIEZvcm1cIiBvcGVuPVwiZm9ybVwiPjwvQnV0dG9uT25lPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+IFxyXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sIGN5Y2xldGFiXCIgaWQ9XCJmbHllcnNcIiBzdHlsZT17e2Rpc3BsYXk6IFwiYmxvY2tcIn19PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0ncm93IGFsaWduLWl0ZW1zLWNlbnRlcic+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0nY29sICAnPlxyXG4gICAgICAgICAgICAgICAgPFR3b0xpbmVQREYgbGluaz0naHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGRmcy9iZmgtZmx5ZXItZXVyb3BlYW4tbWVldHVwLnBkZicgbmFtZT1cImJmaC1mbHllci1ldXJvcGVhbi1tZWV0dXAucGRmXCIvPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0nc2VwZXJhdG9yLTIgY29sLTInPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0nY29sICAnPlxyXG4gICAgICAgICAgICAgICAgPFR3b0xpbmVQREYgbGluaz0naHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGRmcy9wb3N0YmZoLWJyb3NjaC1yZS1jb21wcmVzc2VkLnBkZicgbmFtZT1cImJmaC1tZWV0LXVwLWd1aWRlbGluZS5wZGZcIi8+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wgY3ljbGV0YWJcIiBpZD1cInByZXNpc1wiIHN0eWxlPXt7ZGlzcGxheTogXCJub25lXCJ9fT5cclxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J3JvdyBhbGlnbi1pdGVtcy1jZW50ZXInPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J2NvbCc+XHJcbiAgICAgICAgICAgICAgICAgICAgPFR3b0xpbmVQREYgbGluaz0naHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGRmcy9iZmgtcHJlc2VudGF0aW9uLWJpZWxlZmVsZC5wZGYnIG5hbWU9XCJiZmgtZmx5ZXItZXVyb3BlYW4tbWVldHVwLnBkZlwiLz5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J3NlcGVyYXRvci0yIGNvbC0yJz5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J2NvbCc+XHJcbiAgICAgICAgICAgICAgICAgICAgPFR3b0xpbmVQREYgbGluaz0naHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGRmcy9iZmgtc3R1ZGljb20tcHJlc2VudGF0aW9uLnBkZicgbmFtZT1cImJmaC1mbHllci1ldXJvcGVhbi1tZWV0dXAucGRmXCIvPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbnsvKiAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J2NvbCc+XHJcbiAgICAgICAgICAgICAgICAgICAgPFBERiBsaW5rPSdodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9wZGZzL2JmaC1wb3N0ZXItYmllbGVmZWxkLnBkZicgbmFtZT1cImJmaC1tZWV0LXVwLWd1aWRlbGluZS5wZGZcIi8+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj4gKi99XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sIGN5Y2xldGFiXCIgaWQ9XCJmb3JtXCIgc3R5bGU9e3tkaXNwbGF5OiBcIm5vbmVcIn19PlxyXG5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgIFxyXG4gICAgICAgIFxyXG4gICAgPC8+XHJcbiAgICApXHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBHdWlkZVBERigpe1xyXG4gICAgcmV0dXJuKFxyXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPSdjb2wnPlxyXG4gICAgICAgICAgICA8UERGIGxpbms9J2h0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3BkZnMvYmZoLW1lZXQtdXAtZ3VpZGVsaW5lLnBkZicgbmFtZT1cImJmaC1tZWV0LXVwLWd1aWRlbGluZS5wZGZcIi8+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgKVxyXG59IiwgImltcG9ydCB7IEJGSE1vcmVCdXR0b24gfSBmcm9tIFwiLi9CdXR0b25zXCI7XHJcblxyXG5cclxuIFxyXG5cclxuaW50ZXJmYWNlIEl0ZW1Qcm9wcyB7XHJcbiAgICB0ZXh0Pzogc3RyaW5nOyBcclxuICAgIGhlYWRpbmc/OiBzdHJpbmc7IFxyXG4gICAgdm9ybmFtZT86IHN0cmluZywgXHJcbiAgICB2b3JuYW1lMj86IHN0cmluZywgXHJcbiAgICBuYWNobmFtZT86IHN0cmluZyxcclxuICAgIG5hY2huYW1lMj86IHN0cmluZyxcclxuICAgIGRhdGU6IHN0cmluZyAsXHJcbiAgICBjaGlsZHJlbjogUmVhY3QuUmVhY3ROb2RlO1xyXG4gICAgdGFnOiBzdHJpbmcsIFxyXG4gICAgY29sb3I6IHN0cmluZyxcclxuICAgIGNzc3RhZzogc3RyaW5nLFxyXG4gICAgdXJsOiBzdHJpbmcsXHJcbiAgICB1cmwyPzogc3RyaW5nXHJcbn1cclxuaW50ZXJmYWNlIE5vQnV0dEl0ZW1Qcm9wcyB7XHJcbiAgICB0ZXh0Pzogc3RyaW5nOyBcclxuICAgIGhlYWRpbmc/OiBzdHJpbmc7IFxyXG4gICAgdm9ybmFtZT86IHN0cmluZywgXHJcbiAgICB2b3JuYW1lMj86IHN0cmluZywgXHJcbiAgICBuYWNobmFtZT86IHN0cmluZyxcclxuICAgIG5hY2huYW1lMj86IHN0cmluZyxcclxuICAgIGRhdGU6IHN0cmluZyAsXHJcbiAgICBjaGlsZHJlbjogUmVhY3QuUmVhY3ROb2RlO1xyXG4gICAgdGFnOiBzdHJpbmcsIFxyXG4gICAgY29sb3I6IHN0cmluZyxcclxuICAgIHVybDogc3RyaW5nLFxyXG4gICAgdXJsMj86IHN0cmluZ1xyXG59XHJcblxyXG5cclxuXHJcbmV4cG9ydCBjb25zdCBUaW1lbGluZUl0ZW1QaWMgID0gKHsgaGVhZGluZywgdGV4dCwgdm9ybmFtZSwgbmFjaG5hbWUsIGRhdGUsIHRhZywgY29sb3IsIGNoaWxkcmVuLCBjc3N0YWcsIHVybCB9Okl0ZW1Qcm9wcykgPT4gKFxyXG4gICAgPGRpdiBjbGFzc05hbWU9XCJ0aW1lbGluZS1pdGVtXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJ0aW1lbGluZS1pdGVtLWNvbnRlbnRcIj5cclxuICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPVwidGFnXCIgc3R5bGU9e3sgYmFja2dyb3VuZDogY29sb3IgfX0+XHJcbiAgICAgICAgICAgICAgICB7dGFnfVxyXG4gICAgICAgICAgICA8L3NwYW4+IFxyXG4gICAgICAgICAgICA8dGltZT57ZGF0ZX08L3RpbWU+XHJcbiAgICAgICAgICAgIFxyXG4gICAgICAgICAgICA8aHIvPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvd1wiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZmlndXJlIGNsYXNzTmFtZT1cInNuaXAxMTEzIHJlZFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz17dXJsfSBhbHQ9e25hY2huYW1lfSAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZmlnY2FwdGlvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoMz57dm9ybmFtZX0gPGJyLz4gPHNwYW4+e25hY2huYW1lfTwvc3Bhbj48L2gzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2ZpZ2NhcHRpb24+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9maWd1cmU+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sIHRleHQtMS1iZmhcIj5cclxuICAgICAgICAgICAgICAgICAgICA8aDU+e2hlYWRpbmd9PC9oNT5cclxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9XCJcIj57dGV4dH08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIHtjaGlsZHJlbn1cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIFxyXG4gICAgICAgICAgICA8QkZITW9yZUJ1dHRvbiBpdD17Y3NzdGFnfT48L0JGSE1vcmVCdXR0b24+XHJcbiAgICAgICAgICAgIDxzcGFuIGNsYXNzTmFtZT1cImNpcmNsZVwiIC8+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuKTtcclxuXHJcbmV4cG9ydCBjb25zdCBUaW1lbGluZUl0ZW1Ud29QaWMgID0gKHsgdXJsLCB1cmwyLCBoZWFkaW5nLCB0ZXh0LCB2b3JuYW1lLCBuYWNobmFtZSwgdm9ybmFtZTIsIG5hY2huYW1lMiwgZGF0ZSwgdGFnLCBjb2xvciwgY2hpbGRyZW4sIGNzc3RhZyB9Okl0ZW1Qcm9wcykgPT4gKFxyXG4gICAgPGRpdiBjbGFzc05hbWU9XCJ0aW1lbGluZS1pdGVtXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJ0aW1lbGluZS1pdGVtLWNvbnRlbnRcIj5cclxuICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPVwidGFnXCIgc3R5bGU9e3sgYmFja2dyb3VuZDogY29sb3IgfX0+XHJcbiAgICAgICAgICAgICAgICB7dGFnfVxyXG4gICAgICAgICAgICA8L3NwYW4+IFxyXG4gICAgICAgICAgICA8dGltZT57ZGF0ZX08L3RpbWU+XHJcbiAgICAgICAgICAgIFxyXG4gICAgICAgICAgICA8aHIvPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvd1wiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZmlndXJlIGNsYXNzTmFtZT1cInNuaXAxMTEzIHJlZFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz17dXJsfSBhbHQ9e25hY2huYW1lfSAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZmlnY2FwdGlvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoMz57dm9ybmFtZX0gPGJyLz4gPHNwYW4+e25hY2huYW1lfTwvc3Bhbj48L2gzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2ZpZ2NhcHRpb24+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9maWd1cmU+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+ICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgIDxmaWd1cmUgY2xhc3NOYW1lPVwic25pcDExMTMgcmVkXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPXt1cmwyfSBhbHQ9e25hY2huYW1lMn0gLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGZpZ2NhcHRpb24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDM+e3Zvcm5hbWUyfSA8YnIvPiA8c3Bhbj57bmFjaG5hbWUyfTwvc3Bhbj48L2gzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2ZpZ2NhcHRpb24+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9maWd1cmU+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sIHRleHQtMS1iZmhcIj5cclxuICAgICAgICAgICAgICAgICAgICA8aDU+e2hlYWRpbmd9PC9oNT5cclxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9XCJcIj57dGV4dH08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIHtjaGlsZHJlbn1cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIFxyXG4gICAgICAgICAgICA8QkZITW9yZUJ1dHRvbiBpdD17Y3NzdGFnfT48L0JGSE1vcmVCdXR0b24+XHJcbiAgICAgICAgICAgIDxzcGFuIGNsYXNzTmFtZT1cImNpcmNsZVwiIC8+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuKTtcclxuXHJcbmV4cG9ydCBjb25zdCBUaW1lbGluZUl0ZW0gID0gKHsgZGF0ZSwgdGFnLCBjb2xvciwgY2hpbGRyZW4sIGNzc3RhZyB9Okl0ZW1Qcm9wcykgPT4gKFxyXG4gICAgPGRpdiBjbGFzc05hbWU9XCJ0aW1lbGluZS1pdGVtXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJ0aW1lbGluZS1pdGVtLWNvbnRlbnRcIj5cclxuICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPVwidGFnXCIgc3R5bGU9e3sgYmFja2dyb3VuZDogY29sb3IgfX0+XHJcbiAgICAgICAgICAgICAgICB7dGFnfVxyXG4gICAgICAgICAgICA8L3NwYW4+IFxyXG4gICAgICAgICAgICA8dGltZT57ZGF0ZX08L3RpbWU+XHJcbiAgICAgICAgICAgIFxyXG4gICAgICAgICAgICA8aHIvPlxyXG4gICAgICAgICAgICB7Y2hpbGRyZW59XHJcbiAgICAgICAgICAgIFxyXG4gICAgICAgICAgICA8QkZITW9yZUJ1dHRvbiBpdD17Y3NzdGFnfT48L0JGSE1vcmVCdXR0b24+XHJcbiAgICAgICAgICAgIDxzcGFuIGNsYXNzTmFtZT1cImNpcmNsZVwiIC8+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuKTtcclxuZXhwb3J0IGNvbnN0IE5vQnV0dFRpbWVsaW5lSXRlbSAgPSAoeyBkYXRlLCB0YWcsIGNvbG9yLCBjaGlsZHJlbiB9Ok5vQnV0dEl0ZW1Qcm9wcykgPT4gKFxyXG4gICAgPGRpdiBjbGFzc05hbWU9XCJ0aW1lbGluZS1pdGVtXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJ0aW1lbGluZS1pdGVtLWNvbnRlbnRcIj5cclxuICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPVwidGFnXCIgc3R5bGU9e3sgYmFja2dyb3VuZDogY29sb3IgfX0+XHJcbiAgICAgICAgICAgICAgICB7dGFnfVxyXG4gICAgICAgICAgICA8L3NwYW4+IFxyXG4gICAgICAgICAgICA8dGltZT57ZGF0ZX08L3RpbWU+XHJcbiAgICAgICAgICAgIFxyXG4gICAgICAgICAgICA8aHIvPlxyXG4gICAgICAgICAgICB7Y2hpbGRyZW59XHJcbiAgICAgICAgICAgIFxyXG4gICAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9XCJjaXJjbGVcIiAvPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbik7XHJcblxyXG5leHBvcnQgY29uc3QgUGFuZWxUaW1lbGluZUl0ZW0gID0gKCkgPT4gKFxyXG4gICAgPGRpdiBjbGFzc05hbWU9XCJ0aW1lbGluZS1pdGVtXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJ0aW1lbGluZS1pdGVtLWNvbnRlbnRcIj5cclxuICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPVwidGFnXCIgc3R5bGU9e3sgYmFja2dyb3VuZDogXCJ2YXIoLS1saWdodGJsdWUpXCIgfX0+XHJcbiAgICAgICAgICAgICAgICBUYWxrc1xyXG4gICAgICAgICAgICA8L3NwYW4+IFxyXG4gICAgICAgICAgICA8dGltZT5QYW5lbCBEaXNjdXNzaW9uPC90aW1lPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvdyBhbGlnbi1pdGVtcy1jZW50ZXIgcGFuZWwtdGFsay1nYWxsZXJ5XCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3NOYW1lPVwiaW1nLXJvdW5kLXBhbmVsXCIgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL21lZXR1cC9zcGVha2Vycy90cmFjaS5qcGdcIiBhbHQ9XCJwci1zYW1wbGUxXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInNtYWxsIG1pZGRsZVwiPlRhY2kgPGJyLz4gSGFkZG9jazwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3NOYW1lPVwiaW1nLXJvdW5kLXBhbmVsXCIgIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9tZWV0dXAvc3BlYWtlcnMvYW5pdGEtc2lmdWFudGVzLnBuZ1wiIGFsdD1cInByLXNhbXBsZTFcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwic21hbGwgbWlkZGxlXCI+QW5hIDxici8+IFNpZnVlbnRlczwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3NOYW1lPVwiaW1nLXJvdW5kLXBhbmVsXCIgIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9tZWV0dXAvc3BlYWtlcnMvb2xpdmlhLnBuZ1wiIGFsdD1cInByLXNhbXBsZTFcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwic21hbGwgbWlkZGxlXCI+T2xpdmlhIDxici8+IE1vem9sZXdza2E8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzTmFtZT1cImltZy1yb3VuZC1wYW5lbFwiICAgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL21lZXR1cC9zcGVha2Vycy9taWRkZW5kb3JmLmpwZWdcIiBhbHQ9XCJwci1zYW1wbGUxXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInNtYWxsIG1pZGRsZVwiPkxhc3NlIDxici8+IE1pZGRlbmRvcmY8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzTmFtZT1cImltZy1yb3VuZC1wYW5lbFwiICBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvbWVldHVwL3NwZWFrZXJzL25lbWFuamEuanBnXCIgYWx0PVwicHItc2FtcGxlMVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJzbWFsbCBtaWRkbGVcIj5OZW1hbmphIDxici8+IFN0aWplcG92aWM8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGhyLz5cclxuICAgICAgICAgICAgPHNwYW4+UGFuZWwgRGlzY3Vzc2lvbjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPVwicGFuZWxcIiBzdHlsZT17e2Rpc3BsYXk6IFwibm9uZVwifX0+XHJcbiAgICAgICAgICAgICAgICAgICAgPHA+RHVyaW5nIHRoZSBwYW5lbCBkaXNjdXNzaW9uLCBwYXJ0aWNpcGFudHMgc2hhcmVkIHRoZWlyIGV4cGVyaWVuY2VzIHdpdGggaUdFTSBhbmQgc3ludGhldGljIGJpb2xvZ3kuIExlc2xpZSwgYW4gYWR2aXNvciBmb3IgdGhlIFVuaXZlcnNpdHkgb2YgV2luZHNvcidzIHRlYW0sIGRldGFpbGVkIGhlciB0cmFuc2l0aW9uIGZyb20gdGVhbSBtZW1iZXIgdG8gYWR2aXNvciBhbmQgaGVyIHJlY2VudCBpbnZvbHZlbWVudCBpbiBzeW50aGV0aWMgYmlvbG9neSBvcmdhbml6YXRpb25zLiBBbm5hLCBhIGZvcm1lciBpR0VNIHBhcnRpY2lwYW50LCBzcG9rZSBhYm91dCBoZXIgYmFja2dyb3VuZCBpbiBkZXNpZ24gYW5kIGhlciBjdXJyZW50IHJvbGUgYXMgYSBzZW5pb3IgY29udGVudCBzdHJhdGVnaXN0IGF0IEZyZWVsaXRpY3MsIGVtcGhhc2l6aW5nIGhlciBwYXNzaW9uIGZvciBzY2llbmNlIGNvbW11bmljYXRpb24uIFRyYWN5IHJlY291bnRlZCBoZXIgZXh0ZW5zaXZlIGpvdXJuZXkgd2l0aGluIGlHRU0sIHN0YXJ0aW5nIGFzIGEgdGVhbSBsZWFkZXIgYXQgQm9zdG9uIFVuaXZlcnNpdHkgYW5kIGV2ZW50dWFsbHkgYmVjb21pbmcgdGhlIGRpcmVjdG9yIG9mIHRoZSBjb21wZXRpdGlvbiBhdCBpR0VNIGhlYWRxdWFydGVycy4gQWZ0ZXIgdHJhbnNpdGlvbmluZyB0byBBc2ltb3YsIHNoZSBoaWdobGlnaHRlZCBoZXIgZWZmb3J0cyB0byBzdHJlbmd0aGVuIHBhcnRuZXJzaGlwcyBiZXR3ZWVuIEFzaW1vdiBhbmQgaUdFTSwgaW5jbHVkaW5nIG1hbnVmYWN0dXJpbmcgZGlzdHJpYnV0aW9uIGtpdHMgZm9yIHBhcnRpY2lwYXRpbmcgdGVhbXMuIFRoZSBkaXNjdXNzaW9uIHNob3djYXNlZCB0aGUgZGl2ZXJzZSBwYXRocyB0YWtlbiBieSBpbmRpdmlkdWFscyBpbiB0aGUgZmllbGQgYW5kIHRoZWlyIG9uZ29pbmcgY29tbWl0bWVudCB0byBhZHZhbmNpbmcgc3ludGhldGljIGJpb2xvZ3kuPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PiAgXHJcbiAgICAgICAgICAgIFxyXG4gICAgICAgICAgICA8QkZITW9yZUJ1dHRvbiBpdD1cInBhbmVsXCI+PC9CRkhNb3JlQnV0dG9uPlxyXG4gICAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9XCJjaXJjbGVcIiAvPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbik7XHJcblxyXG5cclxuXHJcblxyXG4iLCAiaW1wb3J0IFJlYWN0IGZyb20gXCJyZWFjdFwiO1xyXG5pbXBvcnQgU2xpZGVyIGZyb20gXCJyZWFjdC1zbGlja1wiO1xyXG5cclxuaW50ZXJmYWNlIFNsaWRlclByb3BzIHtcclxuICBjaGlsZHJlbjogUmVhY3QuUmVhY3ROb2RlOyBcclxufVxyXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBTaW1wbGVTbGlkZXIoe2NoaWxkcmVufTogU2xpZGVyUHJvcHMpIHtcclxuICB2YXIgc2V0dGluZ3MgPSB7XHJcbiAgICBkb3RzOiB0cnVlLFxyXG4gICAgaW5maW5pdGU6IHRydWUsXHJcbiAgICBzbGlkZXNUb1Nob3c6IDEsXHJcbiAgICBzbGlkZXNUb1Njcm9sbDogMSxcclxuICAgIGF1dG9wbGF5OiB0cnVlLFxyXG4gICAgc3BlZWQ6IDIwMDAsXHJcbiAgICBhdXRvcGxheVNwZWVkOiAyMDAwLFxyXG4gICAgY3NzRWFzZTogXCJsaW5lYXJcIixcclxuICAgIHBhdXNlT25Ib3ZlcjogdHJ1ZSxcclxuICAgIG5leHRBcnJvdzogPD48Lz4sXHJcbiAgICBwcmV2QXJyb3c6IDw+PC8+XHJcbiAgfTtcclxuICByZXR1cm4gKFxyXG4gICAgPGRpdiBjbGFzc05hbWU9XCJzbGlkZXItY29udGFpbmVyXCI+XHJcbiAgICAgICA8U2xpZGVyIHsuLi5zZXR0aW5nc30+XHJcbiAgICAgIHtjaGlsZHJlbn1cclxuICAgICAgICA8L1NsaWRlcj5cclxuICAgIDwvZGl2PlxyXG4gICBcclxuICApO1xyXG59IiwgImNvbnN0IF9fdml0ZV9pbmplY3RlZF9vcmlnaW5hbF9kaXJuYW1lID0gXCJDOlxcXFxTdHVkaXVtXFxcXGlHRU1cXFxcQ29kZVxcXFxiaWVsZWZlbGQtY2ViaXRlY1xcXFxzcmNcXFxcdXRpbHNcIjtjb25zdCBfX3ZpdGVfaW5qZWN0ZWRfb3JpZ2luYWxfZmlsZW5hbWUgPSBcIkM6XFxcXFN0dWRpdW1cXFxcaUdFTVxcXFxDb2RlXFxcXGJpZWxlZmVsZC1jZWJpdGVjXFxcXHNyY1xcXFx1dGlsc1xcXFxnb3RvLnRzXCI7Y29uc3QgX192aXRlX2luamVjdGVkX29yaWdpbmFsX2ltcG9ydF9tZXRhX3VybCA9IFwiZmlsZTovLy9DOi9TdHVkaXVtL2lHRU0vQ29kZS9iaWVsZWZlbGQtY2ViaXRlYy9zcmMvdXRpbHMvZ290by50c1wiO2V4cG9ydCBjb25zdCBnb1RvID0gKGVsOiBIVE1MRWxlbWVudCk6IHZvaWQgPT4ge1xyXG4gICAgY29uc3QgZWxlbWVudFJlY3QgPSBlbC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcclxuICAgIGNvbnN0IGVsZW1lbnRUb3AgPSBlbGVtZW50UmVjdC50b3AgKyB3aW5kb3cucGFnZVlPZmZzZXQ7IC8vIEFic29sdXRlIHBvc2l0aW9uIGZyb20gdGhlIHRvcCBvZiB0aGUgZG9jdW1lbnRcclxuICAgIGNvbnN0IHZpZXdwb3J0SGVpZ2h0ID0gd2luZG93LmlubmVySGVpZ2h0O1xyXG5cclxuICAgIC8vIENhbGN1bGF0ZSB0aGUgc2Nyb2xsIHBvc2l0aW9uIHNvIHRoZSB0b3Agb2YgdGhlIGVsZW1lbnQgaXMgY2VudGVyZWQgaW4gdGhlIHZpZXdwb3J0XHJcbiAgICBjb25zdCBtaWRkbGVQb3NpdGlvbiA9IGVsZW1lbnRUb3AgLSAodmlld3BvcnRIZWlnaHQgLyA1IC0gZWwub2Zmc2V0SGVpZ2h0IC8gMik7XHJcblxyXG4gICAgd2luZG93LnNjcm9sbFRvKHtcclxuICAgICAgICB0b3A6IG1pZGRsZVBvc2l0aW9uLFxyXG4gICAgICAgIGJlaGF2aW9yOiAnc21vb3RoJ1xyXG4gICAgfSk7XHJcbn07XHJcblxyXG5cclxuLyogXHJcbmV4cG9ydCBjb25zdCBnb1RvVGV4dHNBbmRPcGVuQ29sbGFwc2libGUgPSAoe2NvbGxhcHNlSWQsIHBhdGh9OiB7Y29sbGFwc2VJZDogc3RyaW5nLCBwYXRoOiBzdHJpbmd9KSA9PiB7XHJcbiAgICBjb25zdCBuYXZpZ2F0ZSA9IHVzZU5hdmlnYXRlKCk7XHJcbiAgICBuYXZpZ2F0ZShgJHtwYXRofSR7Y29sbGFwc2VJZH1gKTtcclxufTtcclxuZXhwb3J0IGNvbnN0IGdvVG9QYWdlc0FuZE9wZW5UYWIgPSAodGFiSWQ6IHN0cmluZywgcGF0aDogc3RyaW5nKSA9PiB7XHJcbiAgICBjb25zdCBuYXZpZ2F0ZSA9IHVzZU5hdmlnYXRlKCk7XHJcbiAgICBuYXZpZ2F0ZShgJHtwYXRofSR7dGFiSWR9YCk7XHJcbn07ICovIiwgIi8qIGltcG9ydCB7IG9wZW5UaGVtIH0gZnJvbSBcIi4uL2NvbnRlbnRzXCI7XHJcbiAqL1xyXG5pbXBvcnQgeyBnb1RvIH0gZnJvbSBcIi4uL3V0aWxzL2dvdG9cIjtcclxuaW50ZXJmYWNlIFNjcm9sbExpbmtQcm9wcyB7XHJcbiAgICB0YXJnZXRJZDogc3RyaW5nO1xyXG4gICAgbGFiZWw/OiBzdHJpbmc7XHJcbiAgICBjaGlsZHJlbj86IFJlYWN0LlJlYWN0Tm9kZTtcclxuICAgIG9wZW5UaGlzPzogIHN0cmluZzsgICAvKihfZXZlbnQ6IE1vdXNlRXZlbnQ8SFRNTEVsZW1lbnQsIE1vdXNlRXZlbnQ+KSA9PiB2b2lkOyAqL1xyXG59XHJcbmludGVyZmFjZSBTdXBTY3JvbGxMaW5rUHJvcHMge1xyXG4gICAgbGFiZWw6IHN0cmluZztcclxufVxyXG5cclxuZXhwb3J0IGNvbnN0IFNjcm9sbExpbms6IFJlYWN0LkZDPFNjcm9sbExpbmtQcm9wcz4gPSAoeyB0YXJnZXRJZCwgbGFiZWwgfSkgPT4ge1xyXG4gICAgY29uc3QgaGFuZGxlQ2xpY2sgPSAoZXZlbnQ6IFJlYWN0Lk1vdXNlRXZlbnQ8SFRNTEFuY2hvckVsZW1lbnQsIE1vdXNlRXZlbnQ+KSA9PiB7XHJcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTsgLy8gUHJldmVudCBkZWZhdWx0IGFuY2hvciBiZWhhdmlvclxyXG4gICAgICAgIGNvbnN0IHRhcmdldEVsZW1lbnQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCh0YXJnZXRJZCk7XHJcbiAgICAgICAgaWYgKHRhcmdldEVsZW1lbnQpIHtcclxuICAgICAgICAgICAgY29uc3QgZWxlbWVudFJlY3QgPSB0YXJnZXRFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xyXG4gICAgICAgICAgICBjb25zdCBlbGVtZW50VG9wID0gZWxlbWVudFJlY3QudG9wICsgd2luZG93LnNjcm9sbFk7XHJcbiAgICAgICAgICAgIGNvbnN0IHZpZXdwb3J0SGVpZ2h0ID0gd2luZG93LmlubmVySGVpZ2h0O1xyXG4gICAgICAgICAgICBjb25zdCBzY3JvbGxPZmZzZXQgPSBlbGVtZW50VG9wIC0gKHZpZXdwb3J0SGVpZ2h0IC8gNSAtIHRhcmdldEVsZW1lbnQub2Zmc2V0SGVpZ2h0IC8gMik7XHJcbiAgICAgICAgICAgIFxyXG4gICAgICAgICAgICBjb25zb2xlLmxvZyhgRWxlbWVudCBUb3A6ICR7ZWxlbWVudFRvcH1gKTtcclxuICAgICAgICAgICAgY29uc29sZS5sb2coYFZpZXdwb3J0IEhlaWdodDogJHt2aWV3cG9ydEhlaWdodH1gKTtcclxuICAgICAgICAgICAgY29uc29sZS5sb2coYFNjcm9sbCBPZmZzZXQ6ICR7c2Nyb2xsT2Zmc2V0fWApO1xyXG4gICAgICAgICAgICBcclxuICAgICAgICAgICAgd2luZG93LnNjcm9sbFRvKHtcclxuICAgICAgICAgICAgICAgIHRvcDogc2Nyb2xsT2Zmc2V0LFxyXG4gICAgICAgICAgICAgICAgYmVoYXZpb3I6IFwic21vb3RoXCJcclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKGBTY3JvbGxlZCB0byAke3RhcmdldElkfWApXHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgY29uc29sZS5lcnJvcihgRWxlbWVudCB3aXRoIElEICR7dGFyZ2V0SWR9IG5vdCBmb3VuZC5gKTtcclxuICAgICAgICB9XHJcbiAgICB9O1xyXG5cclxuICAgIHJldHVybiAoXHJcbiAgICAgICAgPGEgY2xhc3NOYW1lPVwic2Nyb2xsbGlua1wiIGhyZWY9e2AjJHt0YXJnZXRJZH1gfSBvbkNsaWNrPXtoYW5kbGVDbGlja30+XHJcbiAgICAgICAgICAgIDxzcGFuPntsYWJlbH08L3NwYW4+XHJcbiAgICAgICAgPC9hPlxyXG4gICAgKTtcclxufTtcclxuXHJcblxyXG5leHBvcnQgY29uc3QgU3VwU2Nyb2xsTGluayA6IFJlYWN0LkZDPFN1cFNjcm9sbExpbmtQcm9wcz4gPSAoe2xhYmVsIH0pID0+IHtcclxuICAgIGxldCB0YXJnZXRJZCA9IFwiZGVzYy1cIiArIGxhYmVsXHJcbiAgICBjb25zdCBoYW5kbGVDbGljayA9ICgpID0+IHtcclxuICAgICAgICBjb25zdCB0YXJnZXRFbGVtZW50ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQodGFyZ2V0SWQpO1xyXG4gICAgICAgIGlmICh0YXJnZXRFbGVtZW50KSB7XHJcbiAgICAgICAgICAgIGdvVG8odGFyZ2V0RWxlbWVudCk7XHJcbiAgICAgICAgfVxyXG4gICAgfTtcclxuXHJcbiAgICByZXR1cm4gKFxyXG4gICAgICAgPHN1cD48YSBvbkNsaWNrPXtoYW5kbGVDbGlja30+XHJcbiAgICAgICAgICAgIHtsYWJlbH1cclxuICAgICAgICA8L2E+XHJcbiAgICAgICAgPC9zdXA+IFxyXG4gICAgKTtcclxufTtcclxuLyogZXhwb3J0IGNvbnN0IFNjcm9sbExpbms6IFJlYWN0LkZDPFNjcm9sbExpbmtQcm9wcz4gPSAoeyB0YXJnZXRJZCwgbGFiZWwgfSkgPT4ge1xyXG4gICAgY29uc3QgaGFuZGxlQ2xpY2sgPSAoZXZlbnQ6IFJlYWN0Lk1vdXNlRXZlbnQ8SFRNTEFuY2hvckVsZW1lbnQsIE1vdXNlRXZlbnQ+KSA9PiB7XHJcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTsgLy8gUHJldmVudCBkZWZhdWx0IGFuY2hvciBiZWhhdmlvclxyXG4gICAgICAgIGNvbnN0IHRhcmdldEVsZW1lbnQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCh0YXJnZXRJZCk7XHJcbiAgICAgICAgaWYgKHRhcmdldEVsZW1lbnQpIHtcclxuICAgICAgICAgICAgZ29Ubyh0YXJnZXRFbGVtZW50KTtcclxuICAgICAgICB9XHJcbiAgICB9O1xyXG5cclxuICAgIHJldHVybiAoXHJcbiAgICAgICAgPGEgaHJlZj17YCMke3RhcmdldElkfWB9IG9uQ2xpY2s9e2hhbmRsZUNsaWNrfT5cclxuICAgICAgICAgICAge2xhYmVsfVxyXG4gICAgICAgIDwvYT5cclxuICAgICk7XHJcbn07ICovXHJcblxyXG5cclxuLyogZXhwb3J0IGNvbnN0IFNjcm9sbExpbmtTaWRlYmFyOiBSZWFjdC5GQzxPcGVuU2Nyb2xsTGlua1dpdGhDaGlsZFByb3BzPiA9ICh7IHRhcmdldElkLCBjaGlsZHJlbiwgb3BlblRoaXN9KSA9PiB7XHJcbiAgICBjb25zdCBoYW5kbGVDbGljayA9ICgpID0+IHtcclxuICAgICAgICBjb25zdCB0YXJnZXRFbGVtZW50ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQodGFyZ2V0SWQpO1xyXG4gICAgICAgIGlmICh0YXJnZXRFbGVtZW50KSB7XHJcbiAgICAgICAgICAgIGdvVG8odGFyZ2V0RWxlbWVudCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIG9wZW5UaGVtKHtpdDogb3BlblRoaXN9KTsgXHJcbiAgICB9O1xyXG4gICAgXHJcbiAgICByZXR1cm4gKFxyXG4gICAgICAgIDxhIG9uQ2xpY2s9e2hhbmRsZUNsaWNrfT5cclxuICAgICAgICAgICAge2NoaWxkcmVufVxyXG4gICAgICAgIDwvYT5cclxuICAgICk7XHJcbn07ICovXHJcblxyXG4gZXhwb3J0IGNvbnN0IFNjcm9sbExpbmtXaXRoQ2hpbGQ6IFJlYWN0LkZDPFNjcm9sbExpbmtQcm9wcz4gPSAoeyB0YXJnZXRJZCwgY2hpbGRyZW4gfSkgPT4ge1xyXG4gICAgY29uc3QgaGFuZGxlQ2xpY2sgPSAoKSA9PiB7XHJcbiAgICAgICAgY29uc3QgdGFyZ2V0RWxlbWVudCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHRhcmdldElkKTtcclxuICAgICAgICBpZiAodGFyZ2V0RWxlbWVudCkge1xyXG4gICAgICAgICAgICBnb1RvKHRhcmdldEVsZW1lbnQpO1xyXG4gICAgICAgIH1cclxuICAgIH07XHJcblxyXG4gICAgcmV0dXJuIChcclxuICAgICAgICA8YSBvbkNsaWNrPXtoYW5kbGVDbGlja30+XHJcbiAgICAgICAgICAgIHtjaGlsZHJlbn1cclxuICAgICAgICA8L2E+XHJcbiAgICApO1xyXG59OyAiLCAiaW1wb3J0IHsgTm9CdXR0VGltZWxpbmVJdGVtLCBQYW5lbFRpbWVsaW5lSXRlbSwgVGltZWxpbmVJdGVtUGljLCBUaW1lbGluZUl0ZW1Ud29QaWMgfSBmcm9tIFwiLi9WZXJ0aWNhbFRpbWVsaW5lXCI7XHJcbmltcG9ydCBTaW1wbGVTbGlkZXIgZnJvbSBcIi4vU2xpZGVyXCI7XHJcbmltcG9ydCB7IFNjcm9sbExpbmssIFN1cFNjcm9sbExpbmsgfSBmcm9tIFwiLi9TY3JvbGxMaW5rXCI7XHJcbmltcG9ydCB7IHVzZU5hdmlnYXRpb24gfSBmcm9tIFwiLi4vdXRpbHNcIjtcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBCRkhUaW1lbGluZSAoKSB7XHJcbiAgICBjb25zdCB7Z29Ub1BhZ2VzQW5kT3BlblRhYn0gPSB1c2VOYXZpZ2F0aW9uKCk7IFxyXG4gICAgcmV0dXJuKFxyXG4gICAgICAgIDw+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwidGltZWxpbmUtY29udGFpbmVyXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0ndGltZWxpbmUtYmVnaW4nIGlkPVwidGltZWxpbmVIXCI+XHJcbiAgICAgICAgICAgICAgICBCZWdpbiAmIE9wZW5pbmdcclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgIDxUaW1lbGluZUl0ZW1QaWNcclxuICAgICAgICAgICAgICAgIHVybD1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9tZWV0dXAvc3BlYWtlcnMvcmFtLmpwZ1wiXHJcbiAgICAgICAgICAgICAgICBkYXRlPSdTY2llbnRpZmljIFRhbGsgSS4nXHJcbiAgICAgICAgICAgICAgICB0YWc9ICdUYWxrcydcclxuICAgICAgICAgICAgICAgIGNvbG9yPSd2YXIoLS1saWdodGJsdWUpJ1xyXG4gICAgICAgICAgICAgICAgY3NzdGFnPVwidGFsa29uZVwiXHJcbiAgICAgICAgICAgICAgICB2b3JuYW1lPVwiUmFtXCJcclxuICAgICAgICAgICAgICAgIG5hY2huYW1lPVwiU2hha2FyXCJcclxuICAgICAgICAgICAgICAgIGhlYWRpbmc9XCJBSS1Ecml2ZW4gQnJlYWt0aHJvdWdocyBpbiBQbGFzbWlkIEROQSBQcm9kdWN0aW9uXCJcclxuICAgICAgICAgICAgICAgIHRleHQ9XCJSYW0gU2hhbmthciBmcm9tIFBsYXNtaWQgRmFjdG9yeSBkZWx2ZXMgaW50byB0aGUgaW50ZWdyYXRpb24gb2YgQUkgaW4gYWR2YW5jaW5nIHBsYXNtaWQgRE5BIHRlY2hub2xvZ3kgZm9yIGdlbmUgdGhlcmFweS4gSGlnaGxpZ2h0aW5nIHJlYWwtd29ybGQgYXBwbGljYXRpb25zLCBoZSBkZW1vbnN0cmF0ZXMgaG93IEFJIG9wdGltaXplcyBwbGFzbWlkIHB1cmlmaWNhdGlvbiwgZW5oYW5jZXMgZ2VuZSB2ZWN0b3Igc3RhYmlsaXR5LCBhbmQgYWNjZWxlcmF0ZXMgbVJOQSBwcm9kdWN0aW9uLCBvZmZlcmluZyBhIGdsaW1wc2UgaW50byB0aGUgZnV0dXJlIG9mIGJpb3RlY2ggaW5ub3ZhdGlvbnMuXCJcclxuICAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD1cInRhbGtvbmVcIiBzdHlsZT17e2Rpc3BsYXk6IFwibm9uZVwifX0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlJhbSBTaGFua2FyLCBmcm9tIFBsYXNtaWQgRmFjdG9yeSwgZ2F2ZSBhbiBpbnNpZ2h0ZnVsIHRhbGsgYWJvdXQgdGhlIGludGVncmF0aW9uIG9mIEFJIGFuZCBhZHZhbmNlZCBiaW90ZWNobm9sb2d5LCB3aXRoIGEgZm9jdXMgb24gcGxhc21pZCBETkEgcHJvZHVjdGlvbi4gSGlzIHByZXNlbnRhdGlvbiBoaWdobGlnaHRlZCBob3cgQUktZHJpdmVuIGlubm92YXRpb25zIGhhdmUgdHJhbnNmb3JtZWQgcmVzZWFyY2ggbWV0aG9kb2xvZ2llcyBpbiBnZW5lIHRoZXJhcHksIHBsYXNtaWQgbWFudWZhY3R1cmluZywgYW5kIEROQSBwdXJpZmljYXRpb24uIEhpcyBzcGVlY2ggc2hvd2Nhc2VkIHRoZSBwcmFjdGljYWwgYXBwbGljYXRpb25zIG9mIEFJIGluIHN0cmVhbWxpbmluZyB3b3JrZmxvd3MsIG1ha2luZyBiaW90ZWNoIHByb2Nlc3NlcyBtb3JlIGVmZmljaWVudCBhbmQgc2NhbGFibGUuPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5TaGFua2FyIGJlZ2FuIGJ5IGlsbHVzdHJhdGluZyBob3cgc2NpZW50aWZpYyBhZHZhbmNlbWVudHMsIHN1Y2ggYXMgcG93ZXJlZCBmbGlnaHQgYW5kIEROQSByZXNlYXJjaCwgaGF2ZSByYXBpZGx5IHByb2dyZXNzZWQgd2l0aGluIGEgc2luZ2xlIGh1bWFuIGxpZmV0aW1lLiBIZSBjb25uZWN0ZWQgdGhpcyBjb25jZXB0IHRvIGJyZWFrdGhyb3VnaHMgaW4gcGxhc21pZCBETkEgdGVjaG5vbG9neSwgd2hlcmUgUGxhc21pZCBGYWN0b3J5XHUyMDE5cyB3b3JrIGhhcyBiZWVuIHBpdm90YWwgaW4gYWR2YW5jaW5nIGdlbmUgdGhlcmFweSBwcm9kdWN0cy4gQSBrZXkgdGFrZWF3YXkgd2FzIHRoZSBpbnRlZ3JhdGlvbiBvZiBBSSBpbiBvcHRpbWl6aW5nIHBsYXNtaWQgcHVyaWZpY2F0aW9uIHByb2Nlc3NlcywgZW5hYmxpbmcgdGhlIHByb2R1Y3Rpb24gb2YgaGlnaC1xdWFsaXR5IHBsYXNtaWRzIGFuZCBtaW5pIGNpcmNsZXMgZm9yIGNsaW5pY2FsIGFwcGxpY2F0aW9ucy4gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTaGFua2FyIGFsc28gaW50cm9kdWNlZCByZWFsLXdvcmxkIGV4YW1wbGVzLCBzdWNoIGFzIHRoZSB1c2Ugb2YgQUkgaW4gZW5oYW5jaW5nIHRoZSBzdGFiaWxpdHkgYW5kIHF1YWxpdHkgb2YgZ2VuZSB2ZWN0b3JzIGFuZCBtUk5BIHByb2R1Y3Rpb24uIEhpcyBkaXNjdXNzaW9uIG9mIGNvbGxhYm9yYXRpb25zIGJldHdlZW4gYWNhZGVtaWEgYW5kIGluZHVzdHJ5IHVuZGVyc2NvcmVkIHRoZSBpbXBvcnRhbmNlIG9mIG5ldHdvcmtpbmcgYW5kIHNoYXJlZCBpbm5vdmF0aW9uLCBjb21wYXJpbmcgaXQgdG8gdGhlIGhpc3RvcmljIHBhcnRuZXJzaGlwIGJldHdlZW4gU3RhbmxleSBDb2hlbiBhbmQgSGVyYmVydCBCb3llciB0aGF0IHJldm9sdXRpb25pemVkIHJlY29tYmluYW50IEROQSB0ZWNobm9sb2d5LiBcclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgVGhlIHRhbGsgcHJvdmlkZWQgYXR0ZW5kZWVzIHdpdGggYSBkZWVwZXIgdW5kZXJzdGFuZGluZyBvZiBob3cgQUkgY2FuIHJldm9sdXRpb25pemUgbGFiIHdvcmssIHBhcnRpY3VsYXJseSBpbiBzY2FsaW5nIHVwIEROQSBwcm9kdWN0aW9uIGZvciBnZW5lIHRoZXJhcGllcy4gQnkgYXBwbHlpbmcgdGhlc2UgaW5zaWdodHMsIHBhcnRpY2lwYW50cyBsZWZ0IHdpdGggaWRlYXMgb24gaG93IHRvIGxldmVyYWdlIEFJIHRvIGVuaGFuY2UgdGhlaXIgb3duIHJlc2VhcmNoIHByb2plY3RzLCBwYXJ0aWN1bGFybHkgaW4gYmlvdGVjaG5vbG9neSBhbmQgZ2VuZSBlZGl0aW5nLlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvVGltZWxpbmVJdGVtUGljPlxyXG5cclxuICAgICAgICAgICAgICAgIDxUaW1lbGluZUl0ZW1QaWNcclxuICAgICAgICAgICAgICAgIHVybD1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9ocC9rcmlzdGlhbi5qcGVnXCJcclxuICAgICAgICAgICAgICAgIHVybDI9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvbWVldHVwL3NwZWFrZXJzL3JhbS5qcGdcIlxyXG4gICAgICAgICAgICAgICAgZGF0ZT0nU2NpZW50aWZpYyBUYWxrIEkuJ1xyXG4gICAgICAgICAgICAgICAgdGFnPSAnVGFsa3MnXHJcbiAgICAgICAgICAgICAgICBjb2xvcj0ndmFyKC0tbGlnaHRibHVlKSdcclxuICAgICAgICAgICAgICAgIGNzc3RhZz1cInRhbGtvbmVrXCJcclxuICAgICAgICAgICAgICAgIHZvcm5hbWU9XCJLcmlzdGlhblwiXHJcbiAgICAgICAgICAgICAgICBuYWNobmFtZT1cIk1cdTAwRkNsbGVyXCJcclxuICAgICAgICAgICAgICAgIGhlYWRpbmc9XCJHZW5lIFRoZXJhcHksIEFBVnMgYW5kIElubm92YXRpb25zIGluIFN5bnRoZXRpYyBCaW9sb2d5XCJcclxuICAgICAgICAgICAgICAgIHRleHQ9XCJQcm9mLiBEci4gS3Jpc3RpYW4gTVx1MDBGQ2xsZXIgZnJvbSBCaWVsZWZlbGQgVW5pdmVyc2l0eSByZWZsZWN0cyBvbiBoaXMgbG9uZy10ZXJtIGludm9sdmVtZW50IHdpdGggdGhlIGlHRU0gY29tcGV0aXRpb24sIGVtcGhhc2l6aW5nIGFkdmFuY2VtZW50cyBpbiBnZW5lIHRoZXJhcHksIHBhcnRpY3VsYXJseSB1c2luZyBhZGVuby1hc3NvY2lhdGVkIHZpcnVzZXMgKEFBVnMpIGFzIHZpcmFsIHZlY3RvcnMgZm9yIGdlbmUgZGVsaXZlcnkuIEhlIGRpc2N1c3NlcyBpbm5vdmF0aW9ucyBpbiB2aXJ1cyBwcm9kdWN0aW9uIGFuZCB0YXJnZXRpbmcsIHdoaWxlIGFja25vd2xlZGdpbmcgb25nb2luZyBjaGFsbGVuZ2VzIHN1Y2ggYXMgcHJvZHVjdCBwdXJpdHksIHByb2R1Y3Rpb24gZWZmaWNpZW5jeSwgYW5kIHNpZGUgZWZmZWN0cy4gQWRkaXRpb25hbGx5LCBoZSBhZGRyZXNzZXMgcmVjZW50IGRldmVsb3BtZW50cyBpbiBuYW5vcG9yZSBzZXF1ZW5jaW5nIGZvciBxdWFsaXR5IGNvbnRyb2wgYW5kIHRoZSB1c2Ugb2Ygbm9uLW5hdHVyYWwgbnVjbGVvdGlkZXMgYW5kIG1ldGh5bGF0aW9uIHRvIGltcHJvdmUgdGhlcmFwZXV0aWMgb3V0Y29tZXMuXCJcclxuICAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD1cInRhbGtvbmVrXCIgc3R5bGU9e3tkaXNwbGF5OiBcIm5vbmVcIn19PlxyXG4gICAgICAgICAgICAgICAgICAgIDxwPlByb2YuIERyLiBLcmlzdGlhbiBNXHUwMEZDbGxlciBmcm9tIFJlc2VhcmNoIEdyb3VwIENlbGx1bGFyIGFuZCBNb2xlY3VsYXIgQmlvdGVjaG5vbG9neSBhdCB0aGUgVGVjaG5pY2FsIEZhY3VsdHkgb2YgQmllbGVmZWxkIFVuaXZlcnNpdHksIGRlbGl2ZXJlZCBhbiBpbnNpZ2h0ZnVsIHByZXNlbnRhdGlvbiBvbiB0aGUgaW50ZWdyYXRpb24gb2YgQUkgYW5kIGFkdmFuY2VkIGJpb3RlY2hub2xvZ3ksIGZvY3VzaW5nIG9uIHRoZSBwcm9kdWN0aW9uIGFuZCByZWZpbmVtZW50IG9mIEFBViB2ZWN0b3JzLiBUaGUgcHJlc2VudGF0aW9uIGhpZ2hsaWdodGVkIGhvdyBBSS1kcml2ZW4gaW5ub3ZhdGlvbnMgYXJlIHRyYW5zZm9ybWluZyByZXNlYXJjaCBtZXRob2RvbG9naWVzLCBlc3BlY2lhbGx5IGluIGFyZWFzIHN1Y2ggYXMgQUFWIHByb2R1Y3Rpb24sIGdlbmV0aWMgdGFyZ2V0aW5nLCBhbmQgcXVhbGl0eSBjb250cm9sLiBQcm9mLiBEci4gTVx1MDBGQ2xsZXIgc2hvd2Nhc2VkIHByYWN0aWNhbCBhcHBsaWNhdGlvbnMgb2YgQUkgaW4gb3B0aW1pemluZyB0aGVzZSBiaW90ZWNobm9sb2dpY2FsIHByb2Nlc3NlcywgbWFraW5nIHRoZW0gbW9yZSBlZmZpY2llbnQsIHNjYWxhYmxlLCBhbmQgcHJlY2lzZSwgcGFydGljdWxhcmx5IGluIHRoZXJhcGV1dGljIGFwcGxpY2F0aW9ucy48L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgPHA+VGhlIHNwZWFrZXIgYmVnYW4gYnkgZHJhd2luZyBwYXJhbGxlbHMgYmV0d2VlbiB0ZWNobm9sb2dpY2FsIGFkdmFuY2VtZW50cyBpbiBmaWVsZHMgbGlrZSBzcGFjZSBleHBsb3JhdGlvbiBhbmQgYnJlYWt0aHJvdWdocyBpbiBnZW5ldGljIHJlc2VhcmNoLCBlbXBoYXNpemluZyB0aGUgcmFwaWQgcHJvZ3Jlc3Npb24gd2l0aGluIGEgc2hvcnQgc3BhbiBvZiB0aW1lLiBUaGlzIGNvbnRleHQgc2V0IHRoZSBzdGFnZSBmb3IgZGlzY3Vzc2luZyByZWNlbnQgZGV2ZWxvcG1lbnRzIGluIEFBViB0ZWNobm9sb2d5LCB3aGVyZSB0aGUgYXBwbGljYXRpb24gb2YgQUkgaGFzIGJlZW4gcGl2b3RhbC4gQSBrZXkgdGFrZWF3YXkgd2FzIGhvdyBBSSBpcyBiZWluZyB1c2VkIHRvIGVuaGFuY2UgdGhlIHN0YWJpbGl0eSBvZiB2aXJhbCB2ZWN0b3JzIGFuZCBvcHRpbWl6ZSBnZW5lIGRlbGl2ZXJ5LCBhbGxvd2luZyBmb3IgdGhlIHByb2R1Y3Rpb24gb2YgaGlnaC1xdWFsaXR5IEFBViB2ZWN0b3JzIHdpdGggaW1wcm92ZWQgcHJlY2lzaW9uLiBSZWFsLXdvcmxkIGV4YW1wbGVzLCBzdWNoIGFzIHRoZSB1c2Ugb2YgQUkgdG8gbW9uaXRvciBnZW5ldGljIHB1cml0eSBkdXJpbmcgbmFub3BvcmUgc2VxdWVuY2luZyBhbmQgdG8gc3RyZWFtbGluZSBwbGFzbWlkIGVuZ2luZWVyaW5nIHByb2Nlc3Nlcywgc2hvd2Nhc2VkIHRoZSB0YW5naWJsZSBpbXBhY3Qgb2YgdGhlc2UgdGVjaG5vbG9naWVzIG9uIHRoZXJhcGV1dGljIHJlc2VhcmNoLiBUaGUgZGlzY3Vzc2lvbiBhbHNvIGhpZ2hsaWdodGVkIHRoZSBpbXBvcnRhbmNlIG9mIGNvbGxhYm9yYXRpb25zIGJldHdlZW4gYWNhZGVtaWEgYW5kIGluZHVzdHJ5LCBkcmF3aW5nIHBhcmFsbGVscyB0byB0aGUgaGlzdG9yaWMgcGFydG5lcnNoaXAgdGhhdCBzcGFya2VkIHRoZSByZWNvbWJpbmFudCBETkEgcmV2b2x1dGlvbi48L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgPHA+VGhlIHByZXNlbnRhdGlvbiBwcm92aWRlZCBhdHRlbmRlZXMgd2l0aCBhIGRlZXBlciB1bmRlcnN0YW5kaW5nIG9mIGhvdyBBSSBjYW4gc2lnbmlmaWNhbnRseSBlbmhhbmNlIGxhYiB3b3JrLCBwYXJ0aWN1bGFybHkgaW4gc2NhbGluZyB1cCBBQVYgcHJvZHVjdGlvbiBhbmQgZW5zdXJpbmcgdGhlIHF1YWxpdHkgb2YgdGhlcmFwZXV0aWMgdmVjdG9ycy4gUGFydGljaXBhbnRzIGxlZnQgd2l0aCB2YWx1YWJsZSBpbnNpZ2h0cyBvbiBsZXZlcmFnaW5nIEFJIGFuZCBhZHZhbmNlZCB0ZWNobm9sb2dpZXMgdG8gZHJpdmUgdGhlaXIgb3duIHJlc2VhcmNoIHByb2plY3RzIGZvcndhcmQsIGVzcGVjaWFsbHkgaW4gZmllbGRzIGxpa2UgZ2VuZSB0aGVyYXB5LCBwbGFzbWlkIGVuZ2luZWVyaW5nLCBhbmQgc3ludGhldGljIGJpb2xvZ3kuPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9UaW1lbGluZUl0ZW1QaWM+XHJcblxyXG4gICAgICAgICAgICAgICAgPFRpbWVsaW5lSXRlbVBpY1xyXG4gICAgICAgICAgICAgICAgdXJsPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL21lZXR1cC9zcGVha2Vycy9jaHJpc3RpYW4ta29sbGFuZC5wbmdcIlxyXG4gICAgICAgICAgICAgICAgZGF0ZT0nSG93IHRvIFdpa2knXHJcbiAgICAgICAgICAgICAgICB0YWc9J1dvcmtzaG9wIFNlc3Npb24gSS4nXHJcbiAgICAgICAgICAgICAgICBjb2xvcj0ndmFyKC0tdGV4dC1wcmltYXJ5KSdcclxuICAgICAgICAgICAgICAgIGNzc3RhZz1cIndpa2l3b3Jrc2hvcFwiXHJcbiAgICAgICAgICAgICAgICB2b3JuYW1lPVwiQ2hyaXN0aWFuXCJcclxuICAgICAgICAgICAgICAgIG5hY2huYW1lPVwiS29sbGFuZFwiXHJcbiAgICAgICAgICAgICAgICBoZWFkaW5nPVwiQnVpbGRpbmcgUHJvZmVzc2lvbmFsIFdlYnNpdGVzOiBBIFdvcmtzaG9wIG9uIEhUTUwgYW5kIENTUyBFc3NlbnRpYWxzXCJcclxuICAgICAgICAgICAgICAgIHRleHQ9XCJMZWFybmluZyB0aGUgYmFzaWNzIG9mIFdpa2kgY29kaW5nIGFuZCBkZXNpZ24uIEluIHRoaXMgd29ya3Nob3AsIHRoZSBwYXJ0aWNpcGFudHMgZ2VpbmVkIGV4cGVydGlzZSB0byBlbGV2YXRlIHRoZWlyIHRlYW1zIHdpa2kuXCJcclxuICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgIDxkaXYgaWQ9XCJ3aWtpd29ya3Nob3BcIiBzdHlsZT17e2Rpc3BsYXk6IFwibm9uZVwifX0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxici8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPldlIHBhcnRpY2lwYXRlZCBpbiBhbiBpbnRlbnNpdmUgd29ya3Nob3Agb24gSFRNTCBhbmQgQ1NTIG1hZGUgYnkgYSBmb3JtZXIgaUdFTSBwYXJ0aWNpcGFudCBvZiB0ZWFtIEdVLUZyYW5rZnVydCAyMDIzIGFuZCBoZWFkIG9mIHdpa2ksIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQ2hyaXN0aWFuIEtvbGxhbmQuIEFsbCBwYXJ0aWNpcGFudHMgZ2FpbiBhbiBvdmVydmlldyBvZiB0aGUgZXNzZW50aWFscyBmb3IgYnVpbGRpbmcgd2Vic2l0ZXMuIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+VGhlIHNlc3Npb24gYmVnYW4gd2l0aCBhbiBpbnRyb2R1Y3Rpb24gdG8gY29sb3IgdGhlb3J5IHRvb2xzIHN1Y2ggYXMgUmVhbHRpbWUgQ29sb3JzIGFuZCBBSSBDb2xvcnMsIGVtcGhhc2l6aW5nIHRoZWlyIHJvbGUgaW4gY3JlYXRpbmcgdmlzdWFsbHkgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcHBlYWxpbmcgZGVzaWducy4gVHlwb2dyYXBoeSB3YXMgYSBrZXkgZm9jdXMsIGNsYXJpZnlpbmcgdGhlIGRpZmZlcmVuY2UgYmV0d2VlbiB0eXBlZmFjZSAoZS5nLiwgRnV0dXJhKSBhbmQgZm9udCB2YXJpYXRpb25zIChlLmcuLCBGdXR1cmEgQ29uZGVuc2VkKSwgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbmQgaG93IGZvbnQgd2VpZ2h0cyBhbmQgc2l6ZXMgaW1wYWN0IHJlYWRhYmlsaXR5IGFuZCBkZXNpZ24gaGllcmFyY2h5LiBQcmFjdGljYWwgZ3VpZGVsaW5lcywgaW5jbHVkaW5nIHRoZSB1c2FnZSBvZiBkaWZmZXJlbnQgdHlwZXMgb2YgdW5pdHMgc3VjaCBhcyBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBYIG9yIFJFTSBmb3IgZm9udCBzaXppbmcgYW5kIHVuZGVyc3RhbmRpbmcgc3BhY2luZyBmb3IgYW4gZWZmZWN0aXZlIGxheW91dCwgd2VyZSBnaXZlbi4gPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgV2UgZGVsdmVkIGludG8gSFRNTCdzIHN0cnVjdHVyZSBmb3Igd2ViIGNvbnRlbnQsIGxlYXJuaW5nIHNlbWFudGljIHRhZ3MgZm9yIGVmZmVjdGl2ZWx5IG9yZ2FuaXppbmcgaW5mb3JtYXRpb24uIENTUyBwcmluY2lwbGVzIHdlcmUgZXhwbG9yZWQgbmV4dCwgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRlbW9uc3RyYXRpbmcgaG93IHN0eWxlcyBjYXNjYWRlIGZyb20gcGFyZW50IHRvIGNoaWxkIGVsZW1lbnRzLCB3aGljaCBhcmUgY3J1Y2lhbCBmb3IgY29uc2lzdGVudCBkZXNpZ24gYWNyb3NzIGEgd2VicGFnZS4gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIEEgc2lnbmlmaWNhbnQgcGFydCBvZiB0aGUgd29ya3Nob3AgaW52b2x2ZWQgaGFuZHMtb24gY29kaW5nIGluIFZpc3VhbCBTdHVkaW8gQ29kZSwgd2hlcmUgd2UgcmVwbGljYXRlZCBhIHByZS1kZXNpZ25lZCB3ZWJwYWdlIHVzaW5nIHRoZSBIVE1MIGFuZCBDU1MgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRlY2huaXF1ZXMgbGVhcm5lZC4gVGhpcyBleGVyY2lzZSBlcXVpcHBlZCB0aGUgYXR0ZW5kaW5nIGlHRU0gdGVhbXMgd2l0aCBwcmFjdGljYWwgc2tpbGxzIHRvIGNyZWF0ZSBhbmQgc3R5bGUgdGhlaXIgb3duIHByb2plY3Qgd2Vic2l0ZXMgYW5kIGVtcGhhc2l6ZWQgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoZSBpbXBvcnRhbmNlIG9mIGNvbXBvbmVudC1iYXNlZCBkZXNpZ24gYW5kIGVmZmVjdGl2ZSBjb250ZW50IG9yZ2FuaXphdGlvbi4gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIEJ5IHRoZSBlbmQgb2YgdGhlIHdvcmtzaG9wLCB0aGUgYXR0ZW5kZWVzIHdlcmUgaW5zcGlyZWQgdG8gcHVyc3VlIGNyZWF0aW5nIHRoZWlyIG93biB3aWtpcywgbGV2ZXJhZ2luZyBBSS1iYXNlZCB0b29scyBsaWtlIGZvciBpbml0aWFsIGRlc2lnbnMgYW5kIGltYWdlcnkuIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBPdmVyYWxsLCB3ZSBsZWZ0IHdpdGggYSBzb2xpZCBmb3VuZGF0aW9uIGluIHdlYiBkZXZlbG9wbWVudCBhbmQgd2VyZSBwcmVwYXJlZCB0byBidWlsZCBwcm9mZXNzaW9uYWwgYW5kIGZ1bmN0aW9uYWwgd2Vic2l0ZXMgZm9yIHRoZWlyIGlHRU0gcHJvamVjdHMuIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvVGltZWxpbmVJdGVtUGljPlxyXG4gICAgICAgICAgICAgICAgPFRpbWVsaW5lSXRlbVBpY1xyXG4gICAgICAgICAgICAgICAgdXJsPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL21lZXR1cC9zcGVha2Vycy90cmFjaS5qcGdcIlxyXG4gICAgICAgICAgICAgICAgZGF0ZT0nSG93IHRvIFN5bkJpbydcclxuICAgICAgICAgICAgICAgIHRhZz0nV29ya3Nob3AgU2Vzc2lvbiBJLidcclxuICAgICAgICAgICAgICAgIGNvbG9yPSd2YXIoLS10ZXh0LXByaW1hcnkpJ1xyXG4gICAgICAgICAgICAgICAgY3NzdGFnPVwic3lud29ya3Nob3BcIlxyXG4gICAgICAgICAgICAgICAgdm9ybmFtZT1cIlRyYWNpXCJcclxuICAgICAgICAgICAgICAgIG5hY2huYW1lPVwiSGFkZG9ja1wiXHJcbiAgICAgICAgICAgICAgICB0ZXh0PVwiRGVzaWduIGdlbmV0aWMgY29uc3RydWN0cyBhbmQgcmUtd3JpdGUgdGhlIGdlbm9taWMgY29kZSwgYW5kIHBsYW4gZXhwZXJpbWVudHMgdXNpbmcgQUkuIExlYXJuIGhvdyB0byBlZmZlY3RpdmVseSBidWlsZCBnZW5ldGljIGNpcmN1aXQgc3lzdGVtcyBmb3IgaW1wbGVtZW50YXRpb24gaW4geW91ciBpR0VNIHByb2plY3QuXCJcclxuICAgICAgICAgICAgICAgIGhlYWRpbmc9XCJIb3cgdG8gU3ludGhldGljIEJpb2xvZ3k/IC0gSW50cm9kdWNpbmcgS2VybmVsIFNvZnR3YXJlLiBcIlxyXG4gICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICA8ZGl2IGlkPVwic3lud29ya3Nob3BcIiBzdHlsZT17e2Rpc3BsYXk6IFwibm9uZVwifX0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxoNj5TZXR0aW5nPC9oNj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFRoZSBrZXJuZWwgd29ya3Nob3Agd2FzIGdpdmVuIGJ5IFRyYWNpIEhhZGRvY2ssIERpcmVjdG9yIG9mIENvbW11bml0eSBhdCA8YSBocmVmPVwiaHR0cHM6Ly93d3cuYXNpbW92LmNvbS9cIj5BU0lNT1YgQm9zdG9uPC9hPi4gU2hlIGludHJvZHVjZWQgdGhlIEtlcm5lbCBzb2Z0d2FyZSBhbmQgc2hvd2VkIHVzIGhvdyB0byBcclxuICAgICAgICAgICAgICAgICAgICAgICAgaW1wbGVtZW50IEFJLWJhc2VkIHRvb2xzIGluIG91ciBzeW50aGV0aWMgYmlvbG9neSBwcm9qZWN0LiBUaGUgcHJvZ3JhbSBjYW4gYmUgdXNlZCB0byBncmFwaGljYWxseSBkaXNwbGF5IHBsYXNtaWRzLiBCeSB1cGxvYWRpbmcgcGFydHMgaW4gYW4gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlHRU0tcmVsYXRlZCBkYXRhYmFzZSwgc2FmZXR5IGNvbnNpZGVyYXRpb25zIGFuZCByZWdpc3RyeSBlbnRyaWVzIGNhbiBiZSBjaGVja2VkIGF1dG9tYXRpY2FsbHkuIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL21lZXR1cC90cmFjeS1hdC1rZXJuZWwtc2VtaW5hci9rZXJuZWwtMS53ZWJwXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL21lZXR1cC90cmFjeS1hdC1rZXJuZWwtc2VtaW5hci9rZXJuZWwtMi53ZWJwXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD48Yj5UcmFjeSBleHBsYWlucyB0aGUgXHUyMDFDbWFyc2htYWxsb3cgbWFkbmVzc1x1MjAxRCB0byB1cy4gPC9iPjwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxoNj5XaGF0IGRpZCB3ZSBsZWFybj88L2g2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFdlIGxlYXJuZWQgdGhlIGJhc2ljcyBvZiBrZXJuZWxzIGluIG9yZGVyIHRvIGRlc2lnbiBwbGFzbWlkcyBieSB1bmRlcnN0YW5kaW5nIGdlbmVyYWwgcGxhc21pZCBjb25zdHJ1Y3Rpb24gYW5kIHByb2JsZW0gc29sdmluZyB0aHJvdWdoIGRpZmZlcmVudCBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsb25pbmcgc3RyYXRlZ2llcy4gPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEZ1cnRoZXJtb3JlLCBLZXJuZWwgaGFzIGFuIEFJLWFzc2lzdGVkIHNlYXJjaCBmdW5jdGlvbiB0aGF0IGNhbiBiZSB1c2VkIGZvciBwbGFzbWlkIHJlcHJlc2VudGF0aW9uLCBlLmcuIHRvIGZpbmQgYSBzcGVjaWZpYyBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByb21vdGVyIGJhc2VkIG9uIGNlcnRhaW4gcmVxdWlyZW1lbnRzLiBUcmFjaSBzaG93ZWQgdXMgcHJhY3RpY2FsIGV4ZXJjaXNlcyBmb3IgZmlyc3RoYW5kIGFwcGxpY2F0aW9uLiBGaXJzdCwgd2Ugd2VyZSBhc2tlZCB0byBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlY3JlYXRlIGEgcGxhc21pZCBmb2xsb3dlZCBieSBhIHNsaWdodGx5IHRyaWNraWVyIHRhc2s6IFdlIHNob3VsZCBjbGVhbiB0aGUgd29ybGQgb2YgbWFqb3IgbWFyc2htYWxsb3cgY29udGFtaW5hdGlvbiBieSBkZXZlbG9waW5nIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYSBwbGFzbWlkLiAgSW4gc21hbGwgZ3JvdXBzIHdlIGRpc2N1c3NlZCB3aGljaCBjb21wb25lbnRzIHRoZSBwbGFzbWlkIG5lZWRlZC4gVHJhY3kgZ2F2ZSB1cyBzb21lIGluZm9ybWF0aW9uIHdpdGggd2hpY2ggd2UgcXVpY2tseSBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkZW50aWZpZWQgY3J1Y2lhbCBjb21wb25lbnRzIG9mIHRoZSBwbGFzbWlkIGFuZCB0aGVuIGRlc2lnbmVkIGl0LiBcclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5JbiB0aGUgZW5kLCBlYWNoIGdyb3VwIHByZXNlbnRlZCB0aGVpciBzb2x1dGlvbi4gVGhlIGZ1bm5pZXN0IGFuZCBtb3N0IGNyZWF0aXZlIGFwcHJvYWNoZXMgd2VyZSBjZWxlYnJhdGVkLiA8L3A+XHJcblxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L1RpbWVsaW5lSXRlbVBpYz5cclxuICAgICAgICAgICAgICAgIDxUaW1lbGluZUl0ZW1Ud29QaWNcclxuICAgICAgICAgICAgICAgIHVybD1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9tZWV0dXAvc3BlYWtlcnMvanVsaWFuLWdpcC5qcGdcIlxyXG4gICAgICAgICAgICAgICAgdXJsMj1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9tZWV0dXAvc3BlYWtlcnMvdmlrdG9yaWEuanBnXCJcclxuICAgICAgICAgICAgICAgIHZvcm5hbWUyPVwiV2lrdG9yaWFcIlxyXG4gICAgICAgICAgICAgICAgdm9ybmFtZT1cIkp1bGlhblwiXHJcbiAgICAgICAgICAgICAgICBuYWNobmFtZT1cIkJvcmJlY2tcIlxyXG4gICAgICAgICAgICAgICAgbmFjaG5hbWUyPVwiUGFsa2FcIlxyXG4gICAgICAgICAgICAgICAgZGF0ZT0nSG93IHRvIHVzZSBBSSBhcyBhIHNjaWVudGlzdCdcclxuICAgICAgICAgICAgICAgIHRhZz0nV29ya3Nob3AgU2Vzc2lvbiBJLidcclxuICAgICAgICAgICAgICAgIGNvbG9yPSd2YXIoLS10ZXh0LXByaW1hcnkpJ1xyXG4gICAgICAgICAgICAgICAgY3NzdGFnPVwiYWl3b3Jrc2hvcFwiXHJcbiAgICAgICAgICAgICAgICBoZWFkaW5nPVwiTW9kZXJuIHByb2JsZW1zIHJlcXVpcmUgbW9kZXJuIHNvbHV0aW9uc1wiXHJcbiAgICAgICAgICAgICAgICB0ZXh0PVwiQ29tcHV0YXRpb25hbCB0ZWNobm9sb2dpZXMgYXJlIGdldHRpbmcgbW9yZSBpbiB0aGUgZm9jdXMgb2Ygc2NpZW50aWZpYyByZXNlYXJjaC4gSW50ZWdyYXRpb24gb2YgZ2VuZXJhdGl2ZSBLSSBsaWtlIEdlbkFJIGJ5cGFzcyBsaW1pdGF0aW9ucyBhbmQgb2ZmZXJzIHBvdGVudGlhbCByaXNrcyAtIGxlYXJuIGhvdyB0byBpbXBsZW1lbnQgQXJ0aWZpY2lhbCBJbnRlbGxpZ2VuY2UuXCJcclxuICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPVwiYWl3b3Jrc2hvcFwiIHN0eWxlPXt7ZGlzcGxheTogXCJub25lXCJ9fT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFRoaXMgd29ya3Nob3AgaG9zdGVkIGJ5IHh5bmEuYmlvIHdhcyBkZXNpZ25lZCB0byBpbnRyb2R1Y2UgcmVzZWFyY2hlcnMgdG8gdGhlIGludGVncmF0aW9uIG9mIEFJIGludG8gc2NpZW50aWZpYyB3b3JrZmxvd3MuIFdpa3RvcmlhIFBhbGFrIGFuZCBcclxuICAgICAgICAgICAgICAgICAgICAgICAgSnVsaWFuIEJvcmJlY2ssIGJvdGggZXhwZXJ0cyBpbiBNb2xlY3VsYXIgQmlvbG9neSwgQmlvY2hlbWlzdHJ5LCBhbmQgQmlvaW5mb3JtYXRpY3MsIGxlZCB0aGUgd29ya3Nob3AsIGZvY3VzaW5nIG9uIHByYWN0aWNhbCBhcHBsaWNhdGlvbnMgb2YgQUkgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGluIGJpb3NjaWVuY2VzLiBUaGUgc2Vzc2lvbiBwcm92aWRlZCBhdHRlbmRlZXMgd2l0aCBoYW5kcy1vbiBleHBlcmllbmNlIGFuZCBhIHBsYXRmb3JtIGZvciBleHBsb3JpbmcgaG93IEFJIGNhbiBhZGRyZXNzIHJlc2VhcmNoIGluZWZmaWNpZW5jaWVzIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBhbmQgb3BlbiBuZXcgb3Bwb3J0dW5pdGllcyBmb3IgaW5ub3ZhdGlvbi5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgVGhlIHdvcmtzaG9wIHdhcyBzdHJ1Y3R1cmVkIGFyb3VuZCB0d28gbWFpbiBjb21wb25lbnRzOiB0aGVvcmV0aWNhbCBpbnNpZ2h0cyBhbmQgYSBwcmFjdGljYWwgZ3JvdXAgZXhlcmNpc2UuIEluIHRoZSB0aGVvcnkgcG9ydGlvbiwgd2UgZ2FpbmVkIGEgZGVlcGVyIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB1bmRlcnN0YW5kaW5nIG9mIEFJIGFwcGxpY2F0aW9ucywgaW5jbHVkaW5nIG5ldXJvLXN5bWJvbGljIEFJIGFuZCBpdHMgcm9sZSBpbiBlbmhhbmNpbmcgcmVzZWFyY2ggbWV0aG9kb2xvZ2llcy4gVGhlIGluc3RydWN0b3JzIHNoYXJlZCB0aGVpciBleHBlcmllbmNlcyBcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGV2ZWxvcGluZyBBSSB0b29scyBsaWtlIHRob3NlIGF0IHh5bmEuYmlvLCBvZmZlcmluZyBwYXJ0aWNpcGFudHMgdmFsdWFibGUga25vd2xlZGdlIG9uIHRoZSBBSSBkZXZlbG9wbWVudCBwcm9jZXNzLlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPkR1cmluZyB0aGUgZ3JvdXAgd29yaywgd2UgYnJhaW5zdG9ybWVkIGlkZWFzIGZvciBBSSB0b29scyB0aGF0IGNvdWxkIHNpbXBsaWZ5IGxhYiB3b3JrIGZvciBzY2llbnRpc3RzLiBUaGlzIGFjdGl2aXR5IG5vdCBvbmx5IGZvc3RlcmVkIGNyZWF0aXZlIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpbmtpbmcgYnV0IGFsc28gZW5jb3VyYWdlZCBjb2xsYWJvcmF0aW9uLCBhcyB3ZSBkaXNjdXNzZWQgcG90ZW50aWFsIEFJIHNvbHV0aW9ucyB0aGF0IGNvdWxkIHN0cmVhbWxpbmUgdGFza3MgbGlrZSBkYXRhIGFuYWx5c2lzIGFuZCBleHBlcmltZW50YWwgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXNpZ24uIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQnkgdGhlIGVuZCBvZiB0aGUgd29ya3Nob3AsIHBhcnRpY2lwYW50cyB3YWxrZWQgYXdheSB3aXRoIHByYWN0aWNhbCBpbnNpZ2h0cyBhbmQgYWN0aW9uYWJsZSBza2lsbHMuIFdlIGZlbHQgZXF1aXBwZWQgdG8gc3RhcnQgaW1wbGVtZW50aW5nIEFJIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc29sdXRpb25zIGluIG91ciBvd24gcmVzZWFyY2ggcHJvamVjdHMsIGlkZW50aWZ5aW5nIHNwZWNpZmljIGFyZWFzIHdoZXJlIEFJIGNvdWxkIGltcHJvdmUgZWZmaWNpZW5jeSBhbmQgcHJvZHVjdGl2aXR5IGluIHRoZSBsYWIuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gXHJcbiAgICAgICAgICAgICAgICA8L1RpbWVsaW5lSXRlbVR3b1BpYz5cclxuICAgICAgICAgICAgICAgIDxUaW1lbGluZUl0ZW1QaWNcclxuICAgICAgICAgICAgICAgIHVybD1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9tZWV0dXAvc3BlYWtlcnMva2FybGEtd2FnbmVyLmpwZ1wiXHJcbiAgICAgICAgICAgICAgICBkYXRlPSdTY2llbnRpZmljIFRhbGsgSUkuJ1xyXG4gICAgICAgICAgICAgICAgdGFnPSAnVGFsa3MnXHJcbiAgICAgICAgICAgICAgICBjb2xvcj0ndmFyKC0tbGlnaHRibHVlKSdcclxuICAgICAgICAgICAgICAgIGNzc3RhZz1cInRhbGt0d29cIlxyXG4gICAgICAgICAgICAgICAgdm9ybmFtZT1cIkthcmxhXCJcclxuICAgICAgICAgICAgICAgIG5hY2huYW1lPVwiV2FnbmVyXCJcclxuICAgICAgICAgICAgICAgIGhlYWRpbmc9XCJPcHRpbWl6YXRpb24gb2YgYSBES1Igb2YgYSBUZXJ0aWFyeSBBbGNvaG9sIHRocm91Z2ggUHJvdGVpbiBFbmdpbmVlcmluZ1wiXHJcbiAgICAgICAgICAgICAgICB0ZXh0PVwiS2FybGEgV2FnbmVyIHNoYXJlcyBncm91bmRicmVha2luZyBzdHJhdGVnaWVzIGluIG9wdGltaXppbmcgZHluYW1pYyBraW5ldGljIHJlc29sdXRpb24gKERLUikgb2YgdGVydGlhcnkgYWxjb2hvbHMgdXNpbmcgcHJvdGVpbiBlbmdpbmVlcmluZy4gRGlzY292ZXIgaG93IGVuenltZSBjYXRhbHlzaXMgZHJpdmVzIHN1c3RhaW5hYmxlIGFkdmFuY2VtZW50cyBpbiB0aGUgc3ludGhlc2lzIG9mIGNoaXJhbCBjb21wb3VuZHMgZm9yIHBoYXJtYWNldXRpY2FscyBhbmQgb3RoZXIgaW5kdXN0cmllcy5cIlxyXG4gICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPVwidGFsa3R3b1wiIHN0eWxlPXt7ZGlzcGxheTogXCJub25lXCJ9fT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBLYXJsYSBXYWduZXIsIGEgUGhEIHJlc2VhcmNoZXIgYXQgdGhlIDxiPklPQ0Igb2YgdGhlIFVuaXZlcnNpdHkgb2YgQmllbGVmZWxkPC9iPiB3aXRoIGEgYmFja2dyb3VuZCBpbiBvcmdhbmljIGNoZW1pc3RyeSBhbmQgYmlvdGVjaG5vbG9neS4gRHVyaW5nIHRoZSB3b3Jrc2hvcCwgS2FybGEgZGlzY3Vzc2VkIGhlciByZXNlYXJjaCBvbiBvcHRpbWl6aW5nIHRoZSBkeW5hbWljIGtpbmV0aWMgcmVzb2x1dGlvbiAoREtSKSBvZiB0ZXJ0aWFyeSBhbGNvaG9scyB1c2luZyBwcm90ZWluIGVuZ2luZWVyaW5nLiBIZXIgd29yayBmb2N1c2VzIG9uIHN1c3RhaW5hYmxlIGNoZW1pc3RyeSBwcmFjdGljZXMsIHBhcnRpY3VsYXJseSBieSB1c2luZyBlbnp5bWVzIGluIGJpb2NhdGFseXNpcywgYWxpZ25pbmcgd2l0aCB0aGUgcHJpbmNpcGxlcyBvZiBzdXN0YWluYWJsZSBjaGVtaXN0cnkuIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgSGVyIHByZXNlbnRhdGlvbiBjZW50ZXJlZCBhcm91bmQgaGVyIHJlc2VhcmNoIG9uIHRoZSBzeW50aGVzaXMgb2YgY2hpcmFsIHRlcnRpYXJ5IGFsY29ob2xzLCB3aGljaCBhcmUgdmFsdWFibGUgaW4gdGhlIHByb2R1Y3Rpb24gb2YgcGhhcm1hY2V1dGljYWxzLCBmcmFncmFuY2VzLCBhbmQgZmxhdm91cmluZyBhZ2VudHMuIFNoZSBlbXBoYXNpemVkIHRoZSBpbXBvcnRhbmNlIG9mIGNoaXJhbGl0eSBpbiBwaGFybWFjZXV0aWNhbHMsIG5vdGluZyBob3cgZGlmZmVyZW50IGVuYW50aW9tZXJzIG9mIGEgbW9sZWN1bGUgY2FuIGhhdmUgZHJhc3RpY2FsbHkgZGlmZmVyZW50IGVmZmVjdHMsIHN1Y2ggYXMgdGhlIGNhc2Ugb2YgVGhhbGlkb21pZGUuIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+IFxyXG4gICAgICAgICAgICAgICAgPC9UaW1lbGluZUl0ZW1QaWM+XHJcbiAgICAgICAgICAgICAgICA8Tm9CdXR0VGltZWxpbmVJdGVtXHJcbiAgICAgICAgICAgICAgICB1cmw9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9wbGFjZWhvbGRlcnMvcGxhY2VoaWxkZXJwZXJzb24uanBlZ1wiXHJcbiAgICAgICAgICAgICAgICBkYXRlPSdUZWFtIHByb2plY3QgcHJlc2VudGF0aW9ucydcclxuICAgICAgICAgICAgICAgIHRhZz0gJ1RlYW0gcHJlc2VudGF0aW9ucydcclxuICAgICAgICAgICAgICAgIGNvbG9yPSd2YXIoLS1hY2NlbnQtcHJpbWFyeSdcclxuICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAgICA8aDU+VGVhbSBwcm9qZWN0IHByZXNlbnRhdGlvbnM8L2g1PlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sIGJmaC1zbGlkZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICA8U2ltcGxlU2xpZGVyPlxyXG4gICAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3NOYW1lPVwiXCIgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL21lZXR1cC90ZWFtLXByZXNlbnRhdGlvbnMvYW55Y29udi1jb20tZHNjZjc0MjgtZW5oYW5jZWQtbnIud2VicFwiLz5cclxuICAgICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzTmFtZT1cIlwiIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9tZWV0dXAvdGVhbS1wcmVzZW50YXRpb25zL2FueWNvbnYtY29tLWRzY2Y3NDMwLWVuaGFuY2VkLW5yLndlYnBcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgPGltZyBjbGFzc05hbWU9XCJcIiBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvbWVldHVwL3RlYW0tcHJlc2VudGF0aW9ucy9hbnljb252LWNvbS1kc2NmNzQ4NS1lbmhhbmNlZC1uci53ZWJwXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3NOYW1lPVwiXCIgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL21lZXR1cC90ZWFtLXByZXNlbnRhdGlvbnMvYW55Y29udi1jb20tZHNjZjc0OTgtZW5oYW5jZWQtbnIud2VicFwiLz5cclxuICAgICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzTmFtZT1cIlwiIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9tZWV0dXAvdGVhbS1wcmVzZW50YXRpb25zL2FueWNvbnYtY29tLWRzY2Y3NTA2LWVuaGFuY2VkLW5yLndlYnBcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgPGltZyBjbGFzc05hbWU9XCJcIiBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvbWVldHVwL3RlYW0tcHJlc2VudGF0aW9ucy9hbnljb252LWNvbS1kc2NmNzUyNC1lbmhhbmNlZC1uci53ZWJwXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3NOYW1lPVwiXCIgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL21lZXR1cC90ZWFtLXByZXNlbnRhdGlvbnMvYW55Y29udi1jb20tZHNjZjc1MzItZW5oYW5jZWQtbnIud2VicFwiLz5cclxuICAgICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzTmFtZT1cIlwiIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9tZWV0dXAvdGVhbS1wcmVzZW50YXRpb25zL2FueWNvbnYtY29tLWRzY2Y3NTQ4LWVuaGFuY2VkLW5yLndlYnBcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9TaW1wbGVTbGlkZXI+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPHNwYW4+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4gXHJcbiAgICAgICAgICAgICAgICA8L05vQnV0dFRpbWVsaW5lSXRlbT5cclxuICAgICAgICAgICAgICAgIDxOb0J1dHRUaW1lbGluZUl0ZW1cclxuICAgICAgICAgICAgICAgIHVybD1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3BsYWNlaG9sZGVycy9wbGFjZWhpbGRlcnBlcnNvbi5qcGVnXCJcclxuICAgICAgICAgICAgICAgIGRhdGU9J1Bvc3RlciBFeGhpYml0aW9uIEJvb3RoJ1xyXG4gICAgICAgICAgICAgICAgdGFnPSAnVGVhbSBwcmVzZW50YXRpb25zJ1xyXG4gICAgICAgICAgICAgICAgY29sb3I9J3ZhcigtLWFjY2VudC1wcmltYXJ5KSdcclxuICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICAgIDxoNT5Qb3N0ZXIgRXhoaWJpdGlvbiBCb290aDwvaDU+XHJcbiAgICAgICAgICAgICAgICAgICA8cD4gVmlzaXQgdGhlIDxTY3JvbGxMaW5rIGxhYmVsPVwiVmlydHVhbCBQb3N0ZXIgRXhoaWJpdGlvblwiIHRhcmdldElkPVwiQkZIIEV1cm9wZWFuIE1lZXRVcDRIXCIgLz4hPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sIGJmaC1zbGlkZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICA8U2ltcGxlU2xpZGVyPlxyXG4gICAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3NOYW1lPVwiXCIgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL21lZXR1cC9leGhpYml0aW9uL3Bvc3RlcmV4aGliaXRpb24tcGxhc21pZC1mYWN0b3J5LndlYnBcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgPGltZyBjbGFzc05hbWU9XCJcIiBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvbWVldHVwL2V4aGliaXRpb24vcG9zdGVyZXhoaWJpdGlvbi1mcmFua2Z1cnQud2VicFwiLz5cclxuICAgICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzTmFtZT1cIlwiIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9tZWV0dXAvZXhoaWJpdGlvbi9wb3N0ZXJleGhpYml0aW9uLXp5bW8ud2VicFwiLz5cclxuICAgICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzTmFtZT1cIlwiIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9tZWV0dXAvZXhoaWJpdGlvbi9wb3N0ZXJleGhpYml0aW9uLWFpci12aWV3LndlYnBcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgPGltZyBjbGFzc05hbWU9XCJcIiBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvbWVldHVwL2V4aGliaXRpb24vcG9zdGVyZXhoaWJpdGlvbi1iaW9nbGltbWVyLndlYnBcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgPGltZyBjbGFzc05hbWU9XCJcIiBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvbWVldHVwL2V4aGliaXRpb24vcG9zdGVyZXhoaWJpdGlvbi1laW5kaG92ZW4ud2VicFwiLz5cclxuICAgICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzTmFtZT1cIlwiIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9tZWV0dXAvZXhoaWJpdGlvbi9wb3N0ZXJleGhpYml0aW9uLWVuZG9zZW5zZS1qdWRnZS53ZWJwXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3NOYW1lPVwiXCIgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL21lZXR1cC9leGhpYml0aW9uL3Bvc3RlcmV4aGliaXRpb24taXNhYmVsbC1lcmtsLXJ0LndlYnBcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgPGltZyBjbGFzc05hbWU9XCJcIiBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvbWVldHVwL2V4aGliaXRpb24vcG9zdGVyZXhoaWJpdGlvbi1qb2Vybi53ZWJwXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3NOYW1lPVwiXCIgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL21lZXR1cC9leGhpYml0aW9uL3Bvc3RlcmV4aGliaXRpb24tbWFyYmlyZy53ZWJwXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3NOYW1lPVwiXCIgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL21lZXR1cC9leGhpYml0aW9uL3Bvc3RlcmV4aGliaXRpb24tb25jby1iaW90aWNhLndlYnBcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgPGltZyBjbGFzc05hbWU9XCJcIiBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvbWVldHVwL2V4aGliaXRpb24vcG9zdGVyZXhoaWJpdGlvbi1yZWZpYmEud2VicFwiLz5cclxuICAgICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzTmFtZT1cIlwiIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9tZWV0dXAvZXhoaWJpdGlvbi9wb3N0ZXJleGhpYml0aW9uLXRlZGR5LndlYnBcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgPGltZyBjbGFzc05hbWU9XCJcIiBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvbWVldHVwL2V4aGliaXRpb24vcG9zdGVyZXhoaWJpdGlvbi16eW1vLWdydXBwZS53ZWJwXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvU2ltcGxlU2xpZGVyPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxzcGFuPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICA8L3NwYW4+IFxyXG4gICAgICAgICAgICAgICAgPC9Ob0J1dHRUaW1lbGluZUl0ZW0+XHJcbiAgICAgICAgICAgICAgICA8VGltZWxpbmVJdGVtUGljXHJcbiAgICAgICAgICAgICAgICB1cmw9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvbWVldHVwL3NwZWFrZXJzL3N2YW5qYS12aW5rZS5qcGdcIlxyXG4gICAgICAgICAgICAgICAgZGF0ZT0nSG93IHRvIHdvcmsgc2FmZSdcclxuICAgICAgICAgICAgICAgIHRhZz0nV29ya3Nob3AgU2Vzc2lvbiBJSS4nXHJcbiAgICAgICAgICAgICAgICBjb2xvcj0ndmFyKC0tdGV4dC1wcmltYXJ5KSdcclxuICAgICAgICAgICAgICAgIGNzc3RhZz1cInNhZmV3b3Jrc2hvcFwiXHJcbiAgICAgICAgICAgICAgICB2b3JuYW1lPVwiU3ZlbmphXCJcclxuICAgICAgICAgICAgICAgIG5hY2huYW1lPVwiVmlua2VcIlxyXG4gICAgICAgICAgICAgICAgaGVhZGluZz1cIkFib3V0IER1YWwtdXNlIGFuZCBCaW9zYWZldHlcIlxyXG4gICAgICAgICAgICAgICAgdGV4dD1cIk5vdmVsIHRlY2hub2xvZ2llcyBvcGVuZWQgcG9zc2liaWxpdGllcyBhbmQgcmlza3MuIExlYXJuIGhvdyB5b3UgaW1wbGVtZW50IFNhZmV0eSBhbmQgU2VjdXJpdHkgU3RyYXRlZ2llcyB3aXRoaW4geW91ciBwcm9qZWN0IGFuZCB0aGluayBtb3JlIHJlc3BvbnNpYmxlIGluIHRlcm1zIG9mIER1YWwgVXNlLlwiXHJcbiAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD1cInNhZmV3b3Jrc2hvcFwiIHN0eWxlPXt7ZGlzcGxheTogXCJub25lXCJ9fT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBUaGUgYmlvc2FmZXR5IHdvcmtzaG9wIHdhcyBoZWxkIGJ5IFN2ZW5qYSBWaW5rZS4gQXMgYSBwb3N0ZG9jdG9yYWwgcmVzZWFyY2hlciBzcGVjaWFsaXppbmcgaW4gc3ludGhldGljIGJpb2xvZ3kgYXQgdGhlIENodXJjaCBMYWIsIEhhcnZhcmQgTWVkaWNhbCBTY2hvb2wuIFN2ZW5qYSB3b3JrcyBvbiB0aGUgaUdFTSBTYWZldHkgYW5kIFNlY3VyaXR5IENvbW1pdHRlZS4gQWRkaXRpb25hbGx5LCBzaGUgd2FzIHBhcnQgb2YgdGhlIEJpb3NhZmV0eSBhbmQgU2VjdXJpdHkgQXdhcmQgVGVhbSBvZiBCaWVsZWZlbGQgVW5pdmVyc2l0eSBpbiAyMDE2LiBcclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgRmlyc3QgYW5kIGZvcmVtb3N0LCBzaGUgc3RhcnRlZCB0aGUgd29ya3Nob3AgYnkgb3V0bGluaW5nIHRoZSBrZXkgY29uY2VwdHMgb2YgYmlvc2FmZXR5IGFuZCBiaW9zZWN1cml0eSwgZW1waGFzaXppbmcgaG93IGltcG9ydGFudCBsYWJvcmF0b3J5IHNhZmV0eSBpcy4gIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL21lZXR1cC9zLXMtd29ya3Nob3AvYmlvc2FmZXR5LXNlbWluYXItYmZoLndlYnBcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvbWVldHVwL3Mtcy13b3Jrc2hvcC90ZWlsLTItYmZoLWJpb3NhZmV0eS53ZWJwXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8YnIvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5TaGUgYWxzbyBleHBsYWluZWQgd2hpY2ggc2FmZXR5IGFzcGVjdHMgd2Ugc2hvdWxkIGNvbnNpZGVyIGZvciBvdXIgcHJvamVjdDogIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHVsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPiA8Yj5EdWFsIHVzZTo8L2I+IFJlZmVycyB0byB0ZWNobm9sb2d5IG9yIHJlc2VhcmNoIHRoYXQgY2FuIGJlIHVzZWQgZm9yIGJvdGggYmVuZWZpY2lhbCBhbmQgaGFybWZ1bCBwdXJwb3Nlcy4gRm9yIGV4YW1wbGUsIEFJIGRlc2lnbmVkIGZvciBtZWRpY2FsIGRpYWdub3NpcyBjb3VsZCBhbHNvIGJlIG1pc3VzZWQgZm9yIGhhcm1mdWwgc3VydmVpbGxhbmNlLiBNYW5hZ2luZyBkdWFsLXVzZSByaXNrcyBpbnZvbHZlcyBjYXJlZnVsIGNvbnNpZGVyYXRpb24gb2YgYm90aCB0aGUgcG9zaXRpdmUgYXBwbGljYXRpb25zIGFuZCB0aGUgcG90ZW50aWFsIGZvciBtaXN1c2UuIDwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+IDxiPkJ1aWx0LUluIFNhZmV0eSBMZXZlbHM6PC9iPiAgICAgIFRoaXMgY29uY2VwdCBpbnZvbHZlcyBkZXNpZ25pbmcgc3lzdGVtcyB3aXRoIG11bHRpcGxlIGxheWVycyBvZiBzYWZldHkgdG8gcHJldmVudCBmYWlsdXJlIG9yIG1pbmltaXplIGhhcm0uIEluIHRlY2hub2xvZ3kgYW5kIGVuZ2luZWVyaW5nLCBidWlsdC1pbiBzYWZldHkgbGV2ZWxzIGVuc3VyZSB0aGF0IGV2ZW4gaWYgb25lIGxheWVyIGZhaWxzLCBvdGhlcnMgcmVtYWluIGludGFjdCB0byBtYWludGFpbiBzYWZlIG9wZXJhdGlvbi4gPC9saT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT4gIDxiPlNhZmUtYnktRGVzaWduOiA8L2I+ICBTYWZlLWJ5LURlc2lnbiBlbXBoYXNpemVzIGludGVncmF0aW5nIHNhZmV0eSBjb25zaWRlcmF0aW9ucyBpbnRvIHRoZSBlYXJsaWVzdCBzdGFnZXMgb2YgcHJvZHVjdCBvciBzeXN0ZW0gZGV2ZWxvcG1lbnQuIEJ5IGFudGljaXBhdGluZyByaXNrcyBhbmQgaGF6YXJkcyBmcm9tIHRoZSBzdGFydCwgdGhpcyBhcHByb2FjaCBwcm9hY3RpdmVseSBtaW5pbWl6ZXMgZGFuZ2VycyBiZWZvcmUgdGhleSBiZWNvbWUgaXNzdWVzLCBsZWFkaW5nIHRvIHNhZmVyIG91dGNvbWVzLiAgPC9saT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC91bD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBGaW5hbGx5LCBlYWNoIHRlYW0gZ2F2ZSBicmllZiBwcmVzZW50YXRpb25zIG9mIHRoZWlyIHByb2plY3RzIGFuZCBlbmdhZ2VkIGluIGEgZ3JvdXAgZGlzY3Vzc2lvbiBvbiBwb3RlbnRpYWwgc2VjdXJpdHkgcmlza3MgYW5kIGdlbmVyYWwgc2VjdXJpdHkgY29uc2lkZXJhdGlvbnMuIFRvZ2V0aGVyLCB3ZSBicmFpbnN0b3JtZWQgYW5kIGlkZW50aWZpZWQgc3BlY2lmaWMgYXNwZWN0cyBvZiBlYWNoIHByb2plY3QgdGhhdCBjb3VsZCBwcmVzZW50IHBvdGVudGlhbCByaXNrcy4gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBGcm9tIFN2ZW5qYVx1MjAxOXMgc2VtaW5hciwgd2UgbGVhcm5lZCB3aGljaCBzYWZldHktcmVsZXZhbnQgYXNwZWN0cyBhcmUgcGFydGljdWxhcmx5IGltcG9ydGFudCwgYXMgd2VsbCBhcyB0aGUgaW1wb3J0YW5jZSBvZiBleGFtaW5pbmcgYSBwcm9qZWN0IGZyb20gZGlmZmVyZW50IHBlcnNwZWN0aXZlcyB0byBpZGVudGlmeSBhbmQgbWluaW1pemUgcG90ZW50aWFsIHJpc2tzIHJlbGF0ZWQgdG8gbGFiIHdvcmsgYW5kIHRoZSBlbnZpcm9ubWVudC4gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gXHJcbiAgICAgICAgICAgICAgICA8L1RpbWVsaW5lSXRlbVBpYz5cclxuICAgICAgICAgICAgICAgIDxUaW1lbGluZUl0ZW1Ud29QaWNcclxuICAgICAgICAgICAgICAgIHVybD1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9tZWV0dXAvc3BlYWtlcnMvanVsaWEtai1sYWlub3dza2kuanBnXCJcclxuICAgICAgICAgICAgICAgIGRhdGU9J0hvdyB0byBDb21tdW5pY2F0ZSBTY2llbmNlJ1xyXG4gICAgICAgICAgICAgICAgdXJsMj1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9tZWV0dXAvc3BlYWtlcnMvbWFsbWVuZGllci5wbmdcIlxyXG4gICAgICAgICAgICAgICAgdGFnPSdXb3Jrc2hvcCBTZXNzaW9uIElJLidcclxuICAgICAgICAgICAgICAgIHZvcm5hbWUyPVwiQ2Fyb2xpblwiXHJcbiAgICAgICAgICAgICAgICB2b3JuYW1lPVwiSnVsaWFcIlxyXG4gICAgICAgICAgICAgICAgbmFjaG5hbWU9XCJLYWxpbm93c2tpXCJcclxuICAgICAgICAgICAgICAgIG5hY2huYW1lMj1cIk1hbG1lbmRpZXJcIlxyXG4gICAgICAgICAgICAgICAgY29sb3I9J3ZhcigtLXRleHQtcHJpbWFyeSknXHJcbiAgICAgICAgICAgICAgICBjc3N0YWc9XCJjb21td29ya3Nob3BcIlxyXG4gICAgICAgICAgICAgICAgaGVhZGluZz1cIkVmZmVjdGl2ZSBTY2llbmNlIENvbW11bmljYXRpb246IFN0cmF0ZWdpZXMgZm9yIFN1Y2Nlc3NcIlxyXG4gICAgICAgICAgICAgICAgdGV4dD1cIkV4cGVyaWVuY2UgaG93IHNjaWVuY2UgY29tbXVuaWNhdGlvbiBjb3VsZCBiZS4gTGVhcm4gY3JlYXRpdmUgYW5kIGZ1bm55IHdheXMgdG8gY29tbXVuaWNhdGUgZGlmZmljdWx0IHRvcGljcy4gVGhpbmsgb3V0c2lkZSB0aGUgYm94IGFuZCB0cmFpbiB5b3VyIHNraWxscy4gXCJcclxuICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAgICA8YnI+PC9icj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPVwiY29tbXdvcmtzaG9wXCIgc3R5bGU9e3tkaXNwbGF5OiBcIm5vbmVcIn19PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8YnI+PC9icj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGg2PlNldHRpbmc8L2g2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgVGhpcyB3b3Jrc2hvcCB3YXMgb2ZmZXJlZCB0byB1cyBieSBTdHVkU2NpQ29tIGFzIHBhcnQgb2YgdGhlIEJGSCBNZWV0LXVwIHByb2dyYW0gYXQgQmllbGVmZWxkIFVuaXZlcnNpdHkuIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPVwiaHR0cHM6Ly93d3cuc3R1ZC1zY2ljb20uZGUvXCI+IFN0dWRTY2lDb208L2E+IGlzIGFuIGluaXRpYXRpdmUgZm9yIHNjaWVuY2UgY29tbXVuaWNhdGlvbiBieSBzdHVkZW50cyBmb3Igc3R1ZGVudHMgaW4gR2VybWFueS4gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFRoZXkgaGVsZCB0aGlzIHdvcmtzaG9wIGZvciB1cyBmb3IgdGhlIHZlcnkgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZpcnN0IHRpbWUgYW5kIHdlIGFyZSBnbGFkIHRoYXQgd2Ugd2VyZSBhYmxlIHRvIG9mZmVyIHRoZSB1cHJpc2luZyBTdHVkU2NpQ29tIHRlYW0gYSBwbGF0Zm9ybSB0byB0cnkgb3V0IHRoaXMga2luZCBvZiBvdXRyZWFjaC4gSW4gYWRkaXRpb24sIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB3ZSB3ZXJlIGFibGUgdG8gZ2FpbiBrbm93bGVkZ2UgYWJvdXQgcHJvcGVyIHNjaWVuY2UgY29tbXVuaWNhdGlvbiBcdTIwMTMgYSBjbGVhciB3aW4td2luIHNpdHVhdGlvbiBmb3IgYWxsIG9mIHVzIVxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBTY2llbmNlIGNvbW11bmljYXRpb24gaXMgZGVmaW5lZCBhcyB0aGUgcHJhY3RpY2Ugb2YgaW5mb3JtaW5nLCBlZHVjYXRpbmcsIGFuZCByYWlzaW5nIGF3YXJlbmVzcyBhYm91dCBzY2llbmNlLXJlbGF0ZWQgdG9waWNzIGFtb25nIHRoZSBnZW5lcmFsIHB1YmxpYyBcclxuICAgICAgICAgICAgICAgICAgICAgICAgb3Igc3BlY2lmaWMgYXVkaWVuY2VzLiBJdCBpbnZvbHZlcyB2YXJpb3VzIG1ldGhvZHMgc3VjaCBhcyB3cml0aW5nIGFydGljbGVzLCBnaXZpbmcgcHJlc2VudGF0aW9ucywgdXNpbmcgc29jaWFsIG1lZGlhLCBhbmQgZW5nYWdpbmcgaW4gcHVibGljIGRpc2N1c3Npb25zIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB0byBtYWtlIHNjaWVudGlmaWMga25vd2xlZGdlIGFjY2Vzc2libGUgYW5kIHVuZGVyc3RhbmRhYmxlPFN1cFNjcm9sbExpbmsgbGFiZWw9XCIxXCIvPi4gXHJcbiAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxoNj5XaGF0IGRpZCB3ZSBsZWFybj88L2g2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgSnVsaWEgS2FsaW5vd3NraSwgUGhEIGF0IEJpZWxlZmVsZCBVbml2ZXJzaXR5IGFuZCBGb3JlaWduIE1pbmlzdGVyIG9mIFN0dWRTY2lDb20sIHRvZ2V0aGVyIHdpdGggQ2Fyb2xpbiBNYWxtZW5kaWVyLCBcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9ybWVyIHBoeXNpY3Mgc3R1ZGVudCBhbmQgbm93IG9yZ2FuaXplciBpbiB0aGUgU3R1ZFNjaUNvbSB0ZWFtLCBpbnRyb2R1Y2VkIHVzIHRvIHRoZSB0aGVvcmllcyBhbmQgIHByYWN0aWNlIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBvZiBkaWZmZXJlbnQgdHlwZXMgb2Ygc2NpZW5jZSBjb21tdW5pY2F0aW9uIGFuZCBob3cgdG8gZGV2ZWxvcCBhIGNvbW11bmljYXRpb24gc3RyYXRlZ3kuIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBJbiBkZXRhaWwsIHdlIHdlcmUgdGF1Z2h0IHRvIGFzayBvdXJzZWx2ZXMgc2V2ZXJhbCBxdWVzdGlvbnMgdG8gZGVmaW5lIG91ciB0b3BpYywgdGhlIG1lZGl1bSBvZiBcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29tbXVuaWNhdGlvbiwgYXMgd2VsbCBhcyB0aGUgY2hhcmFjdGVyaXphdGlvbiBvZiBvdXIgdGFyZ2V0IGdyb3VwIGFuZCB0aGUgcGxhbm5lZCBhY2hpZXZlbWVudCB3aXRoIG91ciBcclxuICAgICAgICAgICAgICAgICAgICAgICAgc2NpZW5jZSBjb21tdW5pY2F0aW9uLiBcclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9vdGhlci92b3J0cmFnLXNjaWNvbS1iZmgtc2NyZWVuc2hvdC5qcGdcIj48L2ltZz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+VGhlIGtleSBtZXNzYWdlIGZvciB1cyB3YXMgdG8gcGxhbiB0aGUgc2NpZW5jZSBjb21tdW5pY2F0aW9uIGJlZm9yZSB3ZSBkaXZlIGluIGFuZCB0byBtYWtlIHN1cmUgdGhhdCB0aGUgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0YXJnZXQgYXVkaWVuY2UgZ2V0cyB0aGUgbWVzc2FnZSB3ZSB3YW50IHRvIHNlbmQuICA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxoNj5JbXBsZW1lbnRhdGlvbjwvaDY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBBZnRlcndhcmRzLCB0aGUgYXR0ZW5kaW5nIGlHRU0gdGVhbXMgdGFsa2VkIGFib3V0IHRoZWlyIHNjaWVuY2UgY29tbXVuaWNhdGlvbiBwbGFucyBhbmQgaG93IHRoZXkgY291bGQgaW1wcm92ZSB0aGVtIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB1c2luZyB0aGUgc2tpbGxzIGxlYXJuZWQgaW4gdGhpcyB3b3Jrc2hvcC4gT3VyIHRlYW0gcmV2aXNlZCB0aGVpciBwbGFucyBmb3IgZXhwbGFpbmluZyBnZW5lIGVkaXRpbmcgdG8gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNoaWxkcmVuIGFuZCBzdGFydGVkIGRldmVsb3BpbmcgZXhwZXJpbWVudHMgdG8gaGVscCB0aGVtIGJldHRlciB1bmRlcnN0YW5kIEN5c3RpYyBGaWJyb3Npcywgd2hpY2ggd2UgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHByZXNlbnRlZCBsYXRlciBvbnRvIHRoZSBwdWJsaWMgYXQgPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VzQW5kT3BlblRhYihcInRldXRvcnVmdFwiLCBcImh1bWFuLXByYWN0aWNlc1wiKX0+XHUyMDFDRGVyIFRldXRvIHJ1ZnQhXHUyMDFEPC9hPiwgYW4gZXZlbnQgaW4gQmllbGVmZWxkIHRvIGNvbm5lY3QgdGhlIGxvY2FsIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBwb3B1bGF0aW9uIHdpdGggcmVnaW9uYWwgY29tcGFuaWVzIGFuZCBpbnN0aXR1dGVzIHRvIGluZm9ybSB0aGVtIGFib3V0IHRoZWlyIHdvcmsgLSBpbmNsdWRpbmcgb3VyIGlHRU0gdGVhbSEgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGg2PlJlZmVyZW5jZXM8L2g2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8b2w+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7Lyo8IS0tIENpdGF0aW9uIG51bSAxLS0+ICovfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIHR5cGVvZj1cInNjaGVtYTpTY29sYXJseUFydGljbGVcIiByb2xlPVwiZG9jLWJpYmxpb2VudHJ5XCIgcHJvcGVydHk9XCJzY2hlbWE6Y2l0YXRpb25cIiBpZD1cImRlc2MtMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOmF1dGhvclwiIHR5cGVvZj1cInNjaGVtYTpQZXJzb25cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6TmFtZVwiPiBGaXNjaGhvZmYsIEIuPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpuYW1lXCI+Jm5ic3A7VGhlIHNjaWVuY2VzIG9mIHNjaWVuY2UgY29tbXVuaWNhdGlvbi4gPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpIHByb3BlcnR5PVwic2NoZW1hOnB1Ymxpc2hlclwiIHR5cGVvZj1cInNjaGVtYTpPcmdhbml6YXRpb25cIj4gUHJvY2VlZGluZ3Mgb2YgdGhlIE5hdGlvbmFsIEFjYWRlbXkgb2YgU2NpZW5jZXM8L2k+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGIgcHJvcGVydHk9XCJpc3N1ZU51bWJlclwiIHR5cGVvZj1cIlB1YmxpY2F0aW9uSXNzdWVcIj4gMTEwPC9iPiwmbmJzcDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpwYWdlQmVnaW5cIj4gMTQwMzM8L3NwYW4+LTxzcGFuIHByb3BlcnR5PVwic2NoZW1hOnBhZ2VFbmRcIj4xNDAzOTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoPHRpbWUgcHJvcGVydHk9XCJzY2hlbWE6ZGF0ZVB1Ymxpc2hlZFwiIGRhdGF0eXBlPVwieHNkOmdZZWFyXCIgZGF0ZVRpbWU9XCIgMjAxM1wiPjIwMTM8L3RpbWU+KS5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBjbGFzc05hbWU9XCJkb2lcIiBocmVmPVwiaHR0cHM6Ly9kb2kub3JnLzEwLjEwNzMvcG5hcy4xMjEzMjczMTEwXCI+IGRvaTogMTAuMTA3My9wbmFzLjEyMTMyNzMxMTA8L2E+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L29sPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gICAgXHJcbiAgICAgICAgICAgICAgICA8L1RpbWVsaW5lSXRlbVR3b1BpYz5cclxuICAgICAgICAgICAgICAgIDxUaW1lbGluZUl0ZW1QaWNcclxuICAgICAgICAgICAgICAgIGRhdGU9J0hvdyB0byBQaXRjaCBZb3VyIFByb2plY3QnXHJcbiAgICAgICAgICAgICAgICB0YWc9J1dvcmtzaG9wIFNlc3Npb24gSUkuJ1xyXG4gICAgICAgICAgICAgICAgY29sb3I9J3ZhcigtLXRleHQtcHJpbWFyeSknXHJcbiAgICAgICAgICAgICAgICBjc3N0YWc9XCJwaXRjaFwiXHJcbiAgICAgICAgICAgICAgICB1cmw9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvbWVldHVwL3NwZWFrZXJzL21hZGVsZWluZS1tdXNzZ251Zy5qcGdcIlxyXG4gICAgICAgICAgICAgICAgdm9ybmFtZT1cIk1hZGVsZWluZVwiXHJcbiAgICAgICAgICAgICAgICBuYWNobmFtZT1cIk11c3NnbnVnXCJcclxuICAgICAgICAgICAgICAgIGhlYWRpbmc9XCJwbGFjZWhvbGRlclwiXHJcbiAgICAgICAgICAgICAgICB0ZXh0PVwiSW1hZ2UgeW91IGhhdmUgb25seSB0aHJlZSBtaW51dGVzIHdpdGggeW91ciBib3NzIHRvIHNlbGwgeW91ciBpZGVhLi4uIFxyXG4gICAgICAgICAgICAgICAgQWZ0ZXIgb3VyIHdvcmtzaG9wIHlvdSBsZWFybmVkIHRlY2huaXF1ZXMgdG8gc2VsbCBldmVyeSBwZW4gYW5kIGV2ZW4gbW9yZSB0byBldmVyeSBib3NzIG9uIHRoZSBwbGFuZXQuICAgICAgIFxyXG4gICAgICAgICAgICAgICBcIlxyXG4gICAgICAgICAgICAgICAgPiBcclxuICAgICAgICAgICAgICAgIDxkaXYgaWQ9XCJwaXRjaFwiIHN0eWxlPXt7ZGlzcGxheTogXCJub25lXCJ9fT5cclxuICAgICAgICAgICAgICAgICAgICA8cD5UaGUgXCJQZXJmZWN0IFByb2plY3QgUGl0Y2hcIiB3b3Jrc2hvcCB3YXMgcGFydCBvZiB0aGUgc2Vjb25kIHBoYXNlIG9mIHdvcmtzaG9wcyBkdXJpbmcgdGhlIGluYXVndXJhbCBCRkggbWVldC11cCwgaG9zdGVkIGF0IEJpZWxlZmVsZCBVbml2ZXJzaXR5LiBJdCB3YXMgbGVkIGJ5IE1hZGVsZWluZSBNdXNzZ251ZywgYSBzdGFydHVwIGNvbnN1bHRhbnQgYXQgdGhlIEdvZXRoZSBVbml2ZXJzaXR5J3MgZW50cmVwcmVuZXVyc2hpcCBjZW50ZXIgaW4gRnJhbmtmdXJ0LCBHZXJtYW55LiBNYWRlbGVpbmUgc3R1ZGllZCBJbnRlcm5hdGlvbmFsIE1hbmFnZW1lbnQgYW5kIFRvdXJpc20gYW5kIGhhcyBleHRlbnNpdmUgZXhwZXJpZW5jZSwgaW5jbHVkaW5nIHNldmVyYWwgeWVhcnMgYXQgdGhlIHNjYWxlLXVwIGNvbXBhbnkgTGltZWhvbWUuIEN1cnJlbnRseSwgc2hlIGFsc28gd29ya3MgYXMgYSBmcmVlbGFuY2UgY29uc3VsdGFudCBzcGVjaWFsaXppbmcgaW4gb25saW5lIG1hcmtldGluZywgc29jaWFsIG1lZGlhLCBhbmQgc3VwcG9ydGluZyBpbmRpdmlkdWFscyBpbiBiZWNvbWluZyBzZWxmLWVtcGxveWVkLiA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgPHA+VGhlIHdvcmtzaG9wIGZvY3VzZWQgb24gdGhlIGVzc2VudGlhbCBza2lsbHMgYW5kIHN0cmF0ZWdpZXMgZm9yIGRlbGl2ZXJpbmcgYW4gZWZmZWN0aXZlIHByb2plY3QgcGl0Y2gsIGNvdmVyaW5nIHRoZSBmb2xsb3dpbmcga2V5IGFyZWFzOiA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgPG9sPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8bGk+ICAgIENyYWZ0aW5nIGNvbXBlbGxpbmcgbmFycmF0aXZlcyB0byBwcmVzZW50IGNvbXBsZXggaWRlYXMgY2xlYXJseSBhbmQgZW5nYWdpbmdseSwgZW5zdXJpbmcgdGhleSByZW1haW4gbWVtb3JhYmxlIGZvciB0aGUgYXVkaWVuY2UuIDwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxsaT4gICAgU3RydWN0dXJpbmcgYW5kIG9yZ2FuaXppbmcgcGl0Y2hlcyB0byBoaWdobGlnaHQgY3JpdGljYWwgZWxlbWVudHMgc3VjaCBhcyBpbm5vdmF0aW9uLCBtYXJrZXQgcG90ZW50aWFsLCBhbmQgdGVhbSBzdHJlbmd0aHMsIHRodXMgY29tbXVuaWNhdGluZyB5b3VyIG1lc3NhZ2UgZWZmZWN0aXZlbHkuIDwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxsaT4gICAgVGFpbG9yaW5nIHBpdGNoZXMgdG8gcmVzb25hdGUgd2l0aCBkaWZmZXJlbnQgdGFyZ2V0IGF1ZGllbmNlcywgaW5jbHVkaW5nIGludmVzdG9ycyBhbmQgY29sbGFib3JhdG9ycywgbWFraW5nIHRoZW0gYWRhcHRhYmxlIGFuZCBpbXBhY3RmdWwuIDwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxsaT4gICAgQnVpbGRpbmcgY29uZmlkZW5jZSBhbmQgbWFzdGVyaW5nIHBlcnN1YXNpdmUgdGVjaG5pcXVlcyB0byBjb252aW5jaW5nbHkgY29tbXVuaWNhdGUgdGhlIHZhbHVlIG9mIHlvdXIgcHJvamVjdC4gPC9saT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGxpPiAgICBVdGlsaXppbmcgY3JlYXRpdmUgYW5kIHZpc3VhbGx5IGFwcGVhbGluZyBwaXRjaCBtYXRlcmlhbHMsIHdpdGggYSBmb2N1cyBvbiBpbnRlZ3JhdGluZyB2aXN1YWxzIGFuZCBkYXRhIGVmZmVjdGl2ZWx5IHRvIGVuaGFuY2UgdGhlIHByZXNlbnRhdGlvbi4gPC9saT5cclxuICAgICAgICAgICAgICAgICAgICA8L29sPlxyXG4gICAgICAgICAgICAgICAgICAgIDxwPk1hZGVsZWluZSBNdXNzZ251ZyBkZWxpdmVyZWQgdGhlc2UgaW5zaWdodHMgdGhyb3VnaCBhIGJhbGFuY2VkIG1peCBvZiBwcmVzZW50YXRpb24gYW5kIGludGVyYWN0aXZlIGRpc2N1c3Npb25zLiBTaGUgcHJvdmlkZWQgcmVhbC13b3JsZCBleGFtcGxlcyBhbmQgZW5nYWdlZCB0aGUgYXVkaWVuY2UgYnkgcHJvbXB0aW5nIHRoZW0gdG8gcmVmbGVjdCBvbiBzcGVjaWZpYyB0ZWNobmlxdWVzLCBpbWFnZXMsIGFuZCBzdHlsaXN0aWMgY2hvaWNlcy4gRm9yIGluc3RhbmNlLCBzaGUgZGVtb25zdHJhdGVkIHRoZSBzdHJhdGVnaWMgdXNlIG9mIG51bWJlcnMgYW5kIGljb25zIG9uIHNsaWRlcywgZGlzY3Vzc2luZyBob3cgdGhlaXIgc2l6ZSBhbmQgcGxhY2VtZW50IGNhbiBpbmZsdWVuY2UgdGhlIHZpZXdlclx1MjAxOXMgcGVyY2VwdGlvbi4gQnkgc2hvd2luZyBkaWZmZXJlbnQgc2xpZGUgY29uc3RlbGxhdGlvbnMsIHNoZSBlbmNvdXJhZ2VkIHRoZSBhdWRpZW5jZSB0byBkaXNjdXNzIHRoZWlyIHZpc3VhbCBpbXBhY3QuIFRoZSB3b3Jrc2hvcCBjb25jbHVkZWQgd2l0aCBhIGZvY3VzIG9uIHRoZSBpbXBvcnRhbmNlIG9mIG5ldHdvcmtpbmcuIEFjY29yZGluZyB0byBNdXNzZ251Zywga25vd2luZyB3aG9tIHRvIGFwcHJvYWNoIGFuZCBob3cgdG8gZW5nYWdlIHdpdGggdGhlbSBpcyBrZXlcdTIwMTR0aGlzLCBzaGUgZW1waGFzaXplZCwgaXMgdGhlIGVzc2VuY2Ugb2Ygc3VjY2Vzc2Z1bCBwaXRjaGluZy4gPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgIDxwPldlIGltbWVkaWF0ZWx5IHB1dCB3aGF0IHdlIGxlYXJuZWQgaW50byBwcmFjdGljZSBpbiB2YXJpb3VzIGFyZWFzLCBzdWNoIGFzOiA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgPHVsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGI+TWVldC11cCBNXHUwMEZDbnN0ZXIgUHJlc2VudGF0aW9uOjwvYj4gICAgV2UgYWRvcHRlZCBhIGZyZXNoLCBpbm5vdmF0aXZlIGFwcHJvYWNoIHdoZW4gcHJlcGFyaW5nIGZvciB0aGUgTVx1MDBGQ25zdGVyIG1lZXQtdXAsIGludGVncmF0aW5nIG1hbnkgb2YgdGhlIHRlY2huaXF1ZXMgZnJvbSB0aGUgd29ya3Nob3AuIDwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48Yj5Db3JyZXNwb25kZW5jZSB3aXRoIFBvdGVudGlhbCBQYXJ0bmVycyBhbmQgU3BvbnNvcnM6IDwvYj4gICAgT3VyIGNvbW11bmljYXRpb24gYmVjYW1lIG1vcmUgdGFyZ2V0ZWQgYW5kIGVmZmVjdGl2ZSwgYWxsb3dpbmcgdXMgdG8gYnVpbGQgc3Ryb25nZXIgY29ubmVjdGlvbnMgd2l0aCBwb3RlbnRpYWwgcGFydG5lcnMgYW5kIHNwb25zb3JzLiA8L2xpPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGI+SW1wcm92ZWQgU3RlZXJpbmcgQ29tbWl0dGVlIENvbW11bmljYXRpb246PC9iPiAgICBXZSBhbHNvIHNhdyBhIG5vdGljZWFibGUgaW1wcm92ZW1lbnQgaW4gb3VyIGludGVyYWN0aW9ucyB3aXRoIHRoZSBzdGVlcmluZyBjb21taXR0ZWUsIHVzaW5nIGNsZWFyZXIgYW5kIG1vcmUgcGVyc3Vhc2l2ZSBtZXNzYWdpbmcuIDwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgPC91bD5cclxuICAgICAgICAgICAgICAgICAgICA8cD5JbiBlc3NlbmNlLCB0aGUgd29ya3Nob3Agbm90IG9ubHkgZW5oYW5jZWQgb3VyIHBpdGNoaW5nIHNraWxscyBidXQgYWxzbyBzaWduaWZpY2FudGx5IGltcHJvdmVkIG91ciBvdmVyYWxsIGNvbW11bmljYXRpb24gc3RyYXRlZ2llcywgZW5hYmxpbmcgdXMgdG8gcHJlc2VudCBvdXIgaWRlYXMgd2l0aCBncmVhdGVyIGNvbmZpZGVuY2UgYW5kIGltcGFjdC4gPC9wPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+ICBcclxuICAgICAgICAgICAgICAgIDwvVGltZWxpbmVJdGVtUGljPlxyXG4gICAgICAgICAgICAgICAgPFRpbWVsaW5lSXRlbVBpY1xyXG4gICAgICAgICAgICAgICAgdXJsPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL21lZXR1cC9zcGVha2Vycy9taWNoYWVsLmpwZ1wiXHJcbiAgICAgICAgICAgICAgICBkYXRlPSdIb3cgdG8gTXVsdGkgTWVkaWEnXHJcbiAgICAgICAgICAgICAgICB0YWc9J1dvcmtzaG9wIFNlc3Npb24gSUkuJ1xyXG4gICAgICAgICAgICAgICAgY29sb3I9J3ZhcigtLXRleHQtcHJpbWFyeSknXHJcbiAgICAgICAgICAgICAgICBjc3N0YWc9XCJtdWx0aW1lZGlhXCJcclxuICAgICAgICAgICAgICAgIHZvcm5hbWU9XCJNaWNoYWVsXCJcclxuICAgICAgICAgICAgICAgIG5hY2huYW1lPVwiR3JcdTAwRjZuaW5nXCJcclxuICAgICAgICAgICAgICAgIGhlYWRpbmc9XCJNYXN0ZXJpbmcgRmlsbW1ha2luZzogRnJvbSBCYXNpY3MgdG8gaUdFTSBWaWRlbyBQcm9kdWN0aW9uXCJcclxuICAgICAgICAgICAgICAgIHRleHQ9XCJMZWFybiB0aGUgYmFzaWNzIG9mIGZpbG1tYWtpbmcgYW5kIHZpZGVvIHByb2R1Y3Rpb24uIFxyXG4gICAgICAgICAgICAgICAgTG9vayBiZWhpbmQgdGhlIHNjZW5lcyBhbmQgZ2V0IGluIHRvdWNoIHdpdGggcHJvZmVzc2lvbmFscy4gXHJcbiAgICAgICAgICAgICAgICBUcmFpbiB5b3VyIHNraWxscyB0byBkaXJlY3QgaUdFTS1yZWxhdGVkIHZpZGVvcyBhbmQgbW92aWVzLlwiXHJcbiAgICAgICAgICAgICAgICA+IFxyXG4gICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICA8ZGl2IGlkPVwibXVsdGltZWRpYVwiIHN0eWxlPXt7ZGlzcGxheTogXCJub25lXCJ9fT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+TWljaGFlbCBHclx1MDBGNm5pbmcsIHdobyBoYXMgbWFueSB5ZWFycyBvZiBleHBlcmllbmNlIGluIGEgcmFuZ2Ugb2YgbXVsdGltZWRpYSBkaXNjaXBsaW5lcywgaW5jbHVkaW5nIDNEIGFuaW1hdGlvbiwgdmlkZW8gYW5kIGNpbmVtYXRvZ3JhcGh5LCBmaWxtIGFuZCBhdWRpbyBwcm9kdWN0aW9uLCBwb3N0LXByb2R1Y3Rpb24sIHZvaWNlb3ZlciBhbmQgbWVkaWEgZGVzaWduLCBoZWxkIHRoZSBwcmFjdGljYWwgd29ya3Nob3Agb24gbXVsdGltZWRpYS4gRmlyc3RseSwgdGhlIHNpZ25pZmljYW5jZSBvZiB0aGUgUHJvbW90aW9uIFZpZGVvIHdhcyBlbHVjaWRhdGVkLCBhbmQgdGhlIHBhcmFtb3VudCBpbXBvcnRhbmNlIG9mIHRoZSBnZW5lcmFsIGV4dGVybmFsIHJlcHJlc2VudGF0aW9uIHdhcyBjbGFyaWZpZWQuIFF1ZXN0aW9ucyBhbmQgdHJpY2tzIHByb3ZpZGVkIHRoZSBwYXJ0aWNpcGFudHMgYSBiYXNpcyBmb3IgZmluZGluZyBpZGVhcyBmb3IgdGhlaXIgdmlkZW9zLCB3aGljaCB3ZXJlIGNvbWJpbmVkIHdpdGggc3RvcnkgYW5kIG1vb2QgYm9hcmRzIGFuZCB0aGUgcmVhc29uYWJsZSB1c2Ugb2YgQUkuPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvbWVldHVwL3dvcmtzaG9wLW11bHRpbWVkaWEtZXhwb3N1cmUtdHJpYW5nbGUud2VicFwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPkEgd2lkZS1yYW5naW5nIG92ZXJ2aWV3IG9mIHZhcmlvdXMgY2FtZXJhIHNob3RzLCBsaWdodGluZyB0ZWNobmlxdWVzIGFuZCB0cmFuc2l0aW9ucyB3YXMgcHJlc2VudGVkIHRvIHRoZSBwYXJ0aWNpcGFudHMsIGVxdWlwcGluZyB0aGVtIHdpdGggYSB1c2VmdWwgdG9vbGtpdCBmb3IgdGhlIHByb2R1Y3Rpb24gb2YgY2luZW1hdG9ncmFwaGljIHZpZGVvcy4gSWxsdXN0cmF0aXZlIGdyYXBoaWNzLCBzdWNoIGFzIHRoZSBFeHBvc3VyZSBUcmlhbmdsZSwgaGVscGVkIHRoZW0gdG8gZXhwZXJpbWVudCB3aXRoIHByb2Zlc3Npb25hbCBjYW1lcmEgc2V0dGluZ3Mgb24gdGhlaXIgbW9iaWxlIHBob25lcy4gVGhyb3VnaCB0aGUgaW1wbGVtZW50YXRpb24gb2Ygdm9pY2Ugd2FybS11cCBleGVyY2lzZXMsIHRoZSB3b3Jrc2hvcCBwYXJ0aWNpcGFudHMgd2VyZSBhYmxlIHRvIGdhaW4gaW5zaWdodHMgaW50byB0aGUgcHJlcGFyYXRpb24gb2Ygdm9pY2Utb3ZlcnMuIEFuIGludHJvZHVjdGlvbiB0byB2YXJpb3VzIG1pY3JvcGhvbmVzIGFuZCBhdWRpbyBlZGl0aW5nIHNvZnR3YXJlIGVuYWJsZWQgdGhlbSB0byBsZWFybiBob3cgdm9pY2UgcmVjb3JkaW5nIGlzIGNvbnZlcnRlZCB0byBzdHVkaW8gcXVhbGl0eS48L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlRoZSBwYXJ0aWNpcGFudHMgd2VyZSBhYmxlIHRvIGdhaW4gdmFsdWFibGUgcHJhY3RpY2FsIGluc2lnaHRzIGludG8gdGhlIHdvcmxkIG9mIG11bHRpbWVkaWEgYW5kIHRodXMgcHJlcGFyZSB0aGVtc2VsdmVzIHRvIHByb2R1Y2UgYnJlYXRodGFraW5nIHZpZGVvcy4gPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvbWVldHVwL3dvcmtzaG9wLW11bHRpbWVkaWEyLndlYnBcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PiAgXHJcbiAgICAgICAgICAgICAgICA8L1RpbWVsaW5lSXRlbVBpYz5cclxuICAgICAgICAgICAgICAgIDxQYW5lbFRpbWVsaW5lSXRlbT48L1BhbmVsVGltZWxpbmVJdGVtPlxyXG4gXHJcbiAgICAgICAgICAgICAgICA8VGltZWxpbmVJdGVtUGljXHJcbiAgICAgICAgICAgICAgICB1cmw9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvbWVldHVwL3NwZWFrZXJzL21pZGRlbmRvcmYuanBlZ1wiXHJcbiAgICAgICAgICAgICAgICBkYXRlPSdpR0VNZXIgVGVkIFRhbGtzJ1xyXG4gICAgICAgICAgICAgICAgdGFnPSAnVGFsa3MnIFxyXG4gICAgICAgICAgICAgICAgY29sb3I9J3ZhcigtLWxpZ2h0Ymx1ZSknXHJcbiAgICAgICAgICAgICAgICBoZWFkaW5nPVwiU2VjcmV0cyB0byBhd2FyZC13aW5uaW5nIGJpb2luZm9ybWF0aWNzIHRvb2xzXCJcclxuICAgICAgICAgICAgICAgIHRleHQ9XCJMb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldCwgY29uc2V0ZXR1ciBzYWRpcHNjaW5nIGVsaXRyLCBzZWQgZGlhbSBub251bXkgZWlybW9kIHRlbXBvciBpbnZpZHVudCB1dCBsYWJvcmUgZXQgZG9sb3JlIG1hZ25hIGFsaXF1eWFtIGVyYXQsIHNlZCBkaWFtIHZvbHVwdHVhLiBBdCB2ZXJvIGVvcyBldCBhY2N1c2FtIGV0XCJcclxuICAgICAgICAgICAgICAgIHZvcm5hbWU9XCJMYXNzZVwiXHJcbiAgICAgICAgICAgICAgICBuYWNobmFtZT1cIk1pZGRlbmRvcmZcIlxyXG4gICAgICAgICAgICAgICAgY3NzdGFnPVwidGVkdGFsazFcIlxyXG4gICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9XCJ0ZWR0YWxrMVwiIHN0eWxlPXt7ZGlzcGxheTogXCJub25lXCJ9fT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+TGFzc2VcdTIwMTlzIFRlZCB0YWxrIHdhcyBhbGwgYWJvdXQgaG93IHRvIGNyZWF0ZSBnb29kIGJpb2luZm9ybWF0aWNzIHNvZnR3YXJlLiBIZSBoaW1zZWxmIHdhcyBwYXJ0IG9mIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhlIGRyeSBsYWIgaW4gaUdFTSBNXHUwMEZDbnN0ZXJcdTIwMTlzIFRlYW0gdGhhdCB3b24gdGhlIGJlc3Qgc29mdHdhcmUgc3BlY2lhbCBwcml6ZSBpbiAyMDIyLiBUaGUgdG9vbCB0aGV5IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY3JlYXRlZCBhbGxvd2VkIHVzZXJzIHRvIGdlbmVyYXRlIGtub2Nrb3V0IGNhbmRpZGF0ZXMgZm9yIGFuIG9yZ2FuaXNtIG9mIHRoZWlyIGNob2ljZSB0aGF0IHdvdWxkIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVhZCB0byByZWRpcmVjdGlvbiBvZiBtZXRhYm9saWMgZmx1eCB0byBhIHJlYWN0aW9uIGNob3NlbiBieSB0aGUgdXNlci4gV2UgbGVhcm5lZCB0aGF0IHRoZSBtb3N0IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaW1wb3J0YW50IGF0dHJpYnV0ZXMgZm9yIGEgc3VjY2Vzc2Z1bCBiaW9pbmZvcm1hdGljcyBzb2Z0d2FyZSBhcmU6IDwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHVsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxiPlVzZWZ1bG5lc3MgPC9iPjwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGI+QWNjZXNzaWJpbGl0eTwvYj48L2xpPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxiPkJ1aWxkIHVwb24gZXhpc3Rpbmcgc3RhbmRhcmRzICA8L2I+PC9saT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC91bD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+VG8gZW5zdXJlIHVzZWZ1bG5lc3MsIHRoZSBzb2Z0d2FyZSBzaG91bGQgYmUgZ2VuZXJhbGl6ZWQgYW5kIG5vdCBvbmx5IHVzYWJsZSBpbiB0aGUgY29udGV4dCBvZiBvbmVcdTIwMTlzIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb3duIHByb2plY3QuIEFsc28sIGFsbCBzdGVwcyB0aGF0IGNhbiBiZSBhdXRvbWF0ZWQgc2hvdWxkIGJlIGF1dG9tYXRlZC4gQWNjZXNzaWJpbGl0eSwgTGFzc2Ugc2FpZCwgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXF1aXJlcyBmb3IgdGhlIHNvZnR3YXJlIHRvIGJlIGVhc3kgdG8gaW5zdGFsbCwgZWFzeSB0byB1c2UgYW5kIHdlbGwgZG9jdW1lbnRlZC4gIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+QXMgYSBmdW5ueSwgYnV0IGFsc28gdmVyeSBmaXR0aW5nIGFuZWNkb3RlLCBMYXNzZSB0b2xkIHVzIGFib3V0IHRoZSBIVSB0ZXN0LiBGb3IgdGVzdGluZyB0aGVpciBvd24gdG9vbCBmb3IgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhY2Nlc3NpYmlsaXR5LCBoZSBnYXZlIGEgYmlvaW5mb3JtYXRpY2FsbHkgdW5leHBlcmllbmNlZCwgPGI+aDwvYj51bmdvdmVyIDxiPnU8L2I+bmRlcmdyYWR1YXRlIHN0dWRlbnQgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBub3RoaW5nIGJ1dCB0aGUgc29mdHdhcmUgd2l0aCB0aGUgcHJvdmlkZWQgZG9jdW1lbnRhdGlvbi4gSWYgdGhlIHN0dWRlbnQgY2FuIHVzZSB0aGUgdG9vbCBpbiBhIHJlYXNvbmFibGUgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbW91bnQgdGltZSwgdGhhdCB3b3VsZCBtYWtlIGl0IGFjY2Vzc2libGUgZW5vdWdoIGZvciBldmVyeW9uZS4gRnVydGhlcm1vcmUsIExhc3NlIGFsc28gcmVjb21tZW5kZWQgbWFraW5nIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYSBjb21tYW5kIGxpbmUgdG9vbCBmb3IgYmV0dGVyIGF2YWlsYWJpbGl0eSBvdmVyIHRpbWUgYW5kIGludGVncmF0aW9uIGludG8gb3RoZXIgd29ya2Zsb3dzLiBMYXN0bHksIHRoZSBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNvZnR3YXJlIHNob3VsZCB1c2Ugc3RhbmRhcmQgZGF0YSBmaWxlcyBsaWtlIENTViwgRmFzdGEgZXRjLiBhbmQgYmUgd3JpdHRlbiBpbiBjb21tb25seSB1c2VkIHByb2dyYW1taW5nIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGFuZ3VhZ2VzIGxpa2UgUHl0aG9uLiA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPk92ZXJhbGwsIExhc3NlIGdhdmUgYSBncmVhdCBpbnNpZ2h0IGludG8gdGhlIHByb3BlcnRpZXMgb2YgYSBzcGVjaWFsIHByaWNlIHdpbm5pbmcgc29mdHdhcmUgdG9vbCBhbmQgdmVyeSBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByYWN0aWNhbGx5IGV4cGxhaW5lZCBob3cgdGhlc2UgY2FuIGJlIHRlc3RlZCBhbmQgYWNoaWV2ZWQsIGluZm9ybWF0aW9uIHRoYXQgaXMgaW52YWx1YWJsZSBmb3IgdXMgd2hlbiBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNyZWF0aW5nIG91ciBvd24gYmlvaW5mb3JtYXRpY3MgdG9vbC4gPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PiAgXHJcbiAgICAgICAgICAgICAgICA8L1RpbWVsaW5lSXRlbVBpYz5cclxuICAgICAgICAgICAgICAgIDxUaW1lbGluZUl0ZW1QaWNcclxuICAgICAgICAgICAgICAgIHVybD1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9tZWV0dXAvc3BlYWtlcnMvbWVyZWx2YW5kZW5ib3NjaC5qcGdcIlxyXG4gICAgICAgICAgICAgICAgZGF0ZT0naUdFTWVyIFRlZCBUYWxrcydcclxuICAgICAgICAgICAgICAgIHRhZz0gJ1RhbGtzJ1xyXG4gICAgICAgICAgICAgICAgY29sb3I9J3ZhcigtLWxpZ2h0Ymx1ZSknXHJcbiAgICAgICAgICAgICAgICBjc3N0YWc9XCJ0ZWR0YWxrMlwiXHJcbiAgICAgICAgICAgICAgICB2b3JuYW1lPVwiTWVyZWxcIlxyXG4gICAgICAgICAgICAgICAgbmFjaG5hbWU9XCJ2YW4gZGVyIEJvc2NoXCJcclxuICAgICAgICAgICAgICAgIGhlYWRpbmc9XCJIb3cgdG8gQ3JlYXRlIHRoZSBQZXJmZWN0IFBhcnQgQ2hhcmFjdGVyaXphdGlvblwiXHJcbiAgICAgICAgICAgICAgICB0ZXh0PVwiRGlzY292ZXIgdGhlIHNlY3JldHMgdG8gd2lubmluZyBpR0VNJ3MgQ29tcG9zaXRlIGFuZCBOZXcgQmFzaWMgUGFydCBhd2FyZHMgd2l0aCBpbnNpZ2h0cyBmcm9tIE1lcmVsIHZhbiBkZW4gQm9zY2guIExlYXJuIGhvdyB0byBkZXNpZ24gc2ltcGxlIHlldCBpbXBhY3RmdWwgZXhwZXJpbWVudHMsIGVtcGhhc2l6ZSBpbm5vdmF0aW9uLCBhbmQgZWZmZWN0aXZlbHkgc2hvd2Nhc2UgeW91ciBwYXJ0J3MgcG90ZW50aWFsLlwiXHJcbiAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9XCJ0ZWR0YWxrMlwiIHN0eWxlPXt7ZGlzcGxheTogXCJub25lXCJ9fT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+TWVyZWwgcHJvdmlkZWQgdXMgd2l0aCBzdHJhdGVnaWVzIGJhc2VkIG9uIGhlciBjRUxQcm8gcHJvamVjdCBhdCBUVSBFaW5kaG92ZW4gb24gaG93IHRvIGFwcHJvYWNoIHdpbm5pbmcgdGhlIHNwZWNpYWwgYXdhcmRzIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yIENvbXBvc2l0ZSBQYXJ0IGFuZCBOZXcgQmFzaWMgUGFydC4gSGVyIHRlYW0gd29uIHRoZSA8YSBocmVmPVwiaHR0cHM6Ly8yMDIzLmlnZW0ud2lraS90dS1laW5kaG92ZW4vYXdhcmRzXCI+Q29tcG9zaXRlIFBhcnQgUHJpemUgYW5kIHRoZSBUaGVyYXBldXRpYyBQcml6ZTwvYT4gYXQgdGhlIDIwMjMgaUdFTSBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbXBldGl0aW9uLlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBBZnRlciBwcmVzZW50aW5nIGhlciB0ZWFtJ3MgcHJvamVjdCwgTWVyZWwgaW5zcGlyZWQgdXMgd2l0aCB3YXlzIHdlIGNvdWxkIGFsc28gYWNoaWV2ZSB0aGlzIGF3YXJkLiBXZSBsZWFybmVkIGRpZmZlcmVudCBjb25zaWRlcmF0aW9ucyB0byBtYWtlLCB3aGVuIGl0IGNvbWVzIHRvIHBhcnQgY2hhcmFjdGVyaXphdGlvbjogXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHVsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPkhvdyB0byBlbXBoYXNpemUgdGhlIGlubm92YXRpdmVuZXNzIG9mIHRoZSBwcm9qZWN0PC9saT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT5Ib3cgdG8gaGlnaGxpZ2h0IHRoZSBwYXJ0cyBwb3RlbnRpYWwgYmVuZWZpdHMgPC9saT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT5Ib3cgdG8gZGlzY3VzcyB3aGV0aGVyIHRoZXNlIHBhcnRzIGNvdWxkIGJlIGFwcGxpZWQgdG8gb3RoZXIgcHJvamVjdHM8L2xpPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3VsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgTWFueSBwcm9qZWN0cyBmYWlsIGJlY2F1c2UgdGhlIGV4cGVyaW1lbnRzIGNvbmR1Y3RlZCBhcmUgdG9vIGNvbXBsZXguIFRoZXJlZm9yZSwgTWVyZWwgZW5jb3VyYWdlZCB1cyB0byBpbml0aWFsbHkgY2Fycnkgb3V0IHNpbXBsZXIgZXhwZXJpbWVudHMgZm9yIG91ciBwcm9qZWN0cywgbGlrZSBwSCBzZW5zaXRpdml0eSBhbmQgdGVtcGVyYXR1cmUgcmVzcG9uc2UuIE9wZW5pbmcgdGhlIG1pbmRzZXQgZm9yIG90aGVyIG1heWJlIG1vcmUgcHJhZ21hdGljIGV4cGVyaW1lbnRzIGNvdWxkIGNoYW5nZSB0aGUgZm9jdXMgb2YgdGhlIHByb2plY3QgYW5kIGRyaXZlIHRoZSBlbmdpbmVlcmluZyBjeWNsZS4gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvbWVldHVwL3RlZC10YWxrLWNwL3RlZC10YWxrLWNwLndlYnBcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxici8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBBZGRpdGlvbmFsbHksIHNoZSBzaG93ZWQgdXMgd2hhdCBhIHBlcmZlY3Qgc3VibWlzc2lvbiBmb3IgTmV3IEJhc2ljIFBhcnQgb3IgQ29tcG9zaXRlIFBhcnQgbG9va3MgbGlrZS4gVGhlIEJlc3QgUGFydCBSZWdpc3RyeSBkZW1vbnN0cmF0ZXMgZ3JlYXQgc2lnbmlmaWNhbmNlIGFuZCBzaG91bGQgYmUgZmlsbGVkIHdpdGggZGlmZmVyZW50IHJlc3VsdHMgYW5kIHJlcHJlc2VudGF0aXZlIGFuYWx5c2VzIHRvIGNoYXJhY3Rlcml6ZSB0aGUgcGFydHMuIENvbmR1Y3RpbmcgZXhwZXJpbWVudHMgZm9yIGNoYXJhY3Rlcml6YXRpb24gYW5kIGdvb2QgZG9jdW1lbnRhdGlvbiBhcmUganVzdCB0d28gYXNwZWN0cy4gVGhlIG1vc3QgY3J1Y2lhbCBwYXJ0IGlzIHRoZSBkZW1vbnN0cmF0aW9uIG9mIHRoZSBwYXJ0XHUyMDE5cyBmdW5jdGlvbnMgYXMgaW50ZW5kZWQuIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBXZSBsZWFybmVkIHdoYXQgZWZmZWN0aXZlIHN0cmF0ZWdpZXMgZm9yIHRoZSBzcGVjaWFsIGF3YXJkcyBDb21wb3NpdGUgUGFydCBhbmQgTmV3IEJhc2ljIFBhcnQgbWlnaHQgbG9vayBsaWtlLCBhbmQgd2VyZSBwcm92aWRlZCB3aXRoIG1hbnkgaGVscGZ1bCB0aXBzIGFuZCB0cmlja3Mgb24gaG93IHNpbXBsZSBleHBlcmltZW50cyBmb3IgY2hhcmFjdGVyaXphdGlvbiBjb3VsZCBiZSBkZXNpZ25lZC4gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gIFxyXG4gICAgICAgICAgICAgICAgPC9UaW1lbGluZUl0ZW1QaWM+XHJcbiAgICAgICAgICAgICAgICA8VGltZWxpbmVJdGVtUGljXHJcbiAgICAgICAgICAgICAgICB1cmw9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvbWVldHVwL3NwZWFrZXJzL3Zhc3F1ZXQuanBnXCJcclxuICAgICAgICAgICAgICAgIGRhdGU9J0ZpcnN0IFNjaWVuY2UgU2xhbSdcclxuICAgICAgICAgICAgICAgIHRhZz0gJ1RhbGtzJ1xyXG4gICAgICAgICAgICAgICAgY29sb3I9J3ZhcigtLWxpZ2h0Ymx1ZSknXHJcbiAgICAgICAgICAgICAgICBjc3N0YWc9XCJzbGFtMVwiXHJcbiAgICAgICAgICAgICAgICBoZWFkaW5nPVwiQ2hhdEdQVCBhbmQgTGFyZ2UgTGFuZ3VhZ2UgTW9kZWxzXCJcclxuICAgICAgICAgICAgICAgIG5hY2huYW1lPVwiVmFxdWV0XCJcclxuICAgICAgICAgICAgICAgIHZvcm5hbWU9XCJKb25hc1wiXHJcbiAgICAgICAgICAgICAgICB0ZXh0PVwiQXQgdGhpcyB5ZWFyJ3MgQkZIIE1lZXR1cCwgZXhwZXJpZW5jZWQgc2xhbW1lcnMgYW5kIEZhbWVMYWIgcGFydGljaXBhbnRzIHdlcmUgb25jZSBhZ2FpbiBhYmxlIHRvIHRha2UgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0byB0aGUgc3RhZ2UgYW5kIHByZXNlbnQgdGhlaXIgc2NpZW50aWZpYyB0b3BpYyBhcyBzaW1wbHkgYXMgcG9zc2libGUgaW4gNSBtaW51dGVzLiBcIlxyXG4gICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9XCJzbGFtMVwiIHN0eWxlPXt7ZGlzcGxheTogXCJub25lXCJ9fT5cclxuICAgICAgICAgICAgICAgICAgICA8cD5XaXRoIEpvbmFzIFZhcXVldCwgYSBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc2VhcmNoIGFzc29jaWF0ZSBvZiB0aGUgRVUgcHJvamVjdCA8YSBocmVmPVwiaHR0cHM6Ly93YXRlcmZ1dHVyZXMuZXUvcHJvamVjdC9cIj5FUkMgV2F0ZXJmdXR1cmVzPC9hPiwgdGhlIGF1ZGllbmNlIGV4cGxvcmVkIExhcmdlIExhbmd1YWdlIE1vZGVscyBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIChMTE1zKSBzdWNoIGFzIENoYXRHUFQuIFRoZSBzcGVha2VyIGh1bW9yb3VzbHkgZW5nYWdlZCB0aGUgY3Jvd2QsIGFza2luZyB3aG8gaGFkIHVzZWQgc3VjaCBtb2RlbHMsIGFuZCBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5lYXJseSBhbGwgaGFuZHMgd2VyZSByYWlzZWQgaW4gcmVzcG9uc2UuIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+VGhlIHNwZWFrZXIgaW50cm9kdWNlZCBDaGF0R1BULCBhIFwiR2VuZXJhdGl2ZSBQcmUtdHJhaW5lZCBUcmFuc2Zvcm1lcixcIiB1c2luZyBhbiBpbnRlcmFjdGl2ZSBleHBlcmltZW50IHdoZXJlIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhlIGF1ZGllbmNlIHByZWRpY3RlZCB0aGUgbmV4dCB3b3JkcyBpbiBzZW50ZW5jZXMsIHNob3dpbmcgaG93IHRoZSBtb2RlbCB3b3JrcyB3aXRoIHByZS10cmFpbmVkIGRhdGEgYW5kIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FsY3VsYXRlcyB0ZXh0IGNvbnRpbnVhdGlvbnMuIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+V2hpbGUgaXQgaXMgZmFpciB0byBzYXkgdGhhdCBDaGF0R1BUIGlzIGEgcG93ZXJmdWwgYW5kIGhlbHBmdWwgdG9vbCwgaXQgaXMgaW1wb3J0YW50IHRvIGZvY3VzIG9uIHRoZSBwb3RlbnRpYWwgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYW5nZXJzIGFuZCBjaGFsbGVuZ2VzIGl0IGJyaW5ncywgd2hpY2ggSm9uYXMgc3VtbWFyaXplcyBpbiB0aHJlZSBrZXkgZmFjdG9ycyBpbiBoaXMgdGFsazogPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dWw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGI+UGxhZ2lhcmlzbSBSaXNrczo8L2I+IFRoZSBzcGVha2VyIGRlbW9uc3RyYXRlZCBob3cgZWFzeSBpdCBpcyB0byB1bmludGVudGlvbmFsbHkgcmVwbGljYXRlIGV4aXN0aW5nIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd29ya3MsIHVzaW5nIGEgSGFycnkgUG90dGVyIGV4YW1wbGUgdG8gaWxsdXN0cmF0ZSBwbGFnaWFyaXNtIHJpc2tzIGluIGNyZWF0aXZlIHdyaXRpbmcuPC9saT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48Yj5IYWxsdWNpbmF0aW9uczo8L2I+IExhbmd1YWdlIG1vZGVscyBjYW4gZ2VuZXJhdGUgcGxhdXNpYmxlIGJ1dCBpbmNvcnJlY3QgaW5mb3JtYXRpb24sIGV4ZW1wbGlmaWVkIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYnkgYSBmaWN0aXRpb3VzIENWIHdpdGggaW52ZW50ZWQgZ3JhZGVzLCBoaWdobGlnaHRpbmcgcmlza3MgaW4gYWNhZGVtaWMgYW5kIHByb2Zlc3Npb25hbCB1c2UuPC9saT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48Yj5MYWNrIG9mIE9waW5pb24gRm9ybWF0aW9uOjwvYj4gQ2hhdEdQVCBkb2VzIG5vdCBmb3JtIHJlYWwgb3BpbmlvbnMsIGxlYWRpbmcgdG8gaW5jb25zaXN0ZW50IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYW5zd2VycyB3aGVuIGFza2VkIGZvciBwcmVmZXJlbmNlcy48L2xpPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3VsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5BbHRob3VnaCBsYXJnZSBsYW5ndWFnZSBtb2RlbHMgKExMTXMpIGFyZSB0cmFpbmVkIHdpdGggZXh0ZW5zaXZlIGNvbGxlY3Rpb24gb2YgdGV4dHMgb3Igc3Bva2VuIGxhbmd1YWdlLCBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoZXkgb2Z0ZW4gZmFpbCBpbiB0aGUgYWNjdXJhY3kgcmVxdWlyZWQgZm9yIHNjaWVudGlmaWMgdG9waWNzLiBTb3VyY2VzIGFyZSBzZWVtaW5nbHkgY29uanVyZWQgb3V0IG9mIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpbiBhaXIgYW5kIGNsYWltcyB2YW5pc2ggaW50byB0aGluIGFpciBiZWNhdXNlIHRoZWlyIGFuc3dlcnMgYXJlIGJhc2VkIG9uIHN0YXRpc3RpY2FsIHByb2JhYmlsaXRpZXMsIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVhZGluZyB0byBjb25mdXNpb24sIGVzcGVjaWFsbHkgZm9yIG5pY2hlIHF1ZXN0aW9ucy4gPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5Kb25hcyBlbmRlZCBoaXMgdGFsayBieSBnaXZpbmcgdGhlIGF1ZGllbmNlIGZvb2QgZm9yIHRob3VnaHQuIEhlIHJlbWluZGVkIGV2ZXJ5b25lIHdobyBoYWQgZWFnZXJseSBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJhaXNlZCB0aGVpciBoYW5kcyBhdCB0aGUgYmVnaW5uaW5nIHRvIGFsd2F5cyBkb3VibGUtY2hlY2sgQ2hhdEdQVCdzIGluZm9ybWF0aW9uLCBlc3BlY2lhbGx5IGluIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYWNhZGVtaWMgYW5kIHByb2Zlc3Npb25hbCBzZXR0aW5ncy4gPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5XaXRoIGhpcyBpbnRlcmFjdGl2ZSBhbmQgaHVtb3JvdXMgYXBwcm9hY2gsIEpvbmFzIHR1cm5lZCB0aGUgY29tcGxleCB3b3JsZCBvZiBMTE1zIGludG8gYW4gZW5nYWdpbmcgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbmQgYWNjZXNzaWJsZSBhZHZlbnR1cmUsIG9mZmVyaW5nIGRlZXAgaW5zaWdodHMgaW50byB0aGUgd29ya2luZ3MgYW5kIGlkaW9zeW5jcmFzaWVzIG9mIHRoaXMgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmYXNjaW5hdGluZyB0ZWNobm9sb2d5LiA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+ICBcclxuICAgICAgICAgICAgICAgIDwvVGltZWxpbmVJdGVtUGljPlxyXG4gICAgICAgICAgICAgICAgPFRpbWVsaW5lSXRlbVBpY1xyXG4gICAgICAgICAgICAgICAgdXJsPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL21lZXR1cC9zcGVha2Vycy9uaWtsYXMtYmxvZWJhdW0uanBlZ1wiXHJcbiAgICAgICAgICAgICAgICBkYXRlPSdTZWNvbmQgU2NpZW5jZSBTbGFtJ1xyXG4gICAgICAgICAgICAgICAgdGFnPSAnVGFsa3MnXHJcbiAgICAgICAgICAgICAgICBjb2xvcj0ndmFyKC0tbGlnaHRibHVlKSdcclxuICAgICAgICAgICAgICAgIGNzc3RhZz1cInNsYW0yXCJcclxuICAgICAgICAgICAgICAgIGhlYWRpbmc9XCJNaWNyb2FsZ2FlIGZvciBTdXN0YWluYWJsZSBGb29kIFByb2R1Y3Rpb24gXCJcclxuICAgICAgICAgICAgICAgIHRleHQ9XCJOaWtsYXMsIGEgYmlvdGVjaG5vbG9naXN0IGFuZCBQaEQgc3R1ZGVudCBhdCB0aGUgRmFjdWx0eSBvZiBFbmdpbmVlcmluZyBhdCBCaWVsZWZlbGQgVW5pdmVyc2l0eSwgdXNlZCBoaXMgZXhwZXJpZW5jZSBmcm9tIHByZXZpb3VzIHNjaWVuY2Ugc2xhbXMgYW5kIGhpcyBwYXJ0aWNpcGF0aW9uIGluIGEgcHJldmlvdXMgaUdFTSBjb21wZXRpdGlvbiB0byBwcmVzZW50IG1pY3JvYWxnYWUgaW4gYSBuZXcgbGlnaHQuXCJcclxuICAgICAgICAgICAgICAgIHZvcm5hbWU9XCJOaWtsYXNcIlxyXG4gICAgICAgICAgICAgICAgbmFjaG5hbWU9XCJCbG9lYmF1bVwiXHJcbiAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD1cInNsYW0yXCIgc3R5bGU9e3tkaXNwbGF5OiBcIm5vbmVcIn19PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5XaXRoIGluc2lnaHRzIGludG8gaGlzIGN1cnJlbnQgcmVzZWFyY2gsIE5pa2xhcyBpbnRyb2R1Y2VkIHRoZSBhdWRpZW5jZSB0byB0aGUgaW5ub3ZhdGl2ZSB1c2VzIG9mIGNobG9yZWxsYSBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvciBzdXN0YWluYWJsZSBmb29kIHByb2R1Y3Rpb24uIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+VGhlIHN0YXIgb2YgdGhlIHNob3cgd2FzIHRoZSBzbWFsbGVzdCB2ZWdldGFibGUgaW4gdGhlIHdvcmxkIENobG9yZWxsYSBpcyB0aW55ICg0IHRvIDEyIG1pY3JvbnMpIGJ1dCBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZlcnkgcmljaCBpbiBudXRyaWVudHM6IDQ1LTY1JSBwcm90ZWluLCAxMC0yMCUgZmF0LCAxMC0yMCUgY2FyYm9oeWRyYXRlcywgNSUgZmliZXIgYW5kIHZhcmlvdXMgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2aXRhbWlucyBhbmQgbWluZXJhbHMsIGluY2x1ZGluZyB2aXRhbWluIEIxMi4gPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5OaWNob2xhcyBwcmVzZW50ZWQgdHdvIHByb2R1Y3Rpb24gbWV0aG9kczogPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dWw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGI+b3BlbiBwb25kIHN5c3RlbXM6PC9iPnRoZXNlIHV0aWxpemUgbGlnaHQsIENPXHUyMDgyIGFuZCB3YXRlciBmb3IgcGhvdG9zeW50aGVzaXMsIGJ1dCBoYXZlIHRoZSBwcm9ibGVtIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb2YgdGhlIGF2YWlsYWJpbGl0eSBvZiBsaWdodCBhbmQgd2F0ZXIuPC9saT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48Yj5iaW9yZWFjdG9yczo8L2I+bW9kZXJuLCBjb250cm9sbGVkLCBzdGVyaWxlIGVudmlyb25tZW50cyB0aGF0IHV0aWxpemUgc3VnYXIgYXMgYW4gZW5lcmd5IHNvdXJjZSwgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaWduaWZpY2FudGx5IGluY3JlYXNlIHByb2R1Y3Rpdml0eSBhbmQgcmVkdWNlIHdhdGVyIGNvbnN1bXB0aW9uLjwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdWw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPkJpb3JlYWN0b3JzIGFyZSB1cCB0byAxMDAgdGltZXMgbW9yZSBwcm9kdWN0aXZlIGFuZCB1c2UgMTAwIHRpbWVzIGxlc3Mgd2F0ZXIgdGhhbiBjb252ZW50aW9uYWwgbWV0aG9kcy4gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTb3VuZHMgcGVyZmVjdCwgcmlnaHQ/IEJ1dCBOaWNob2xhcyBoYWQgdG8gYnVyc3QgdGhlIGJ1YmJsZSBhbmQgbWFrZSBpdCBjbGVhciB0aGF0IHRoZSB0ZWNobm9sb2d5IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RpbGwgbmVlZHMgdG8gYmUgZGV2ZWxvcGVkIGZ1cnRoZXIuICA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPkluIHRlcm1zIG9mIHN1c3RhaW5hYmlsaXR5LCBOaWNob2xhcyBoYWQgdG8gZW1waGFzaXplIHRoYXQgdGhlIHdob2xlIHByb2Nlc3Mgb2YgbWljcm9hbGdhZSBwcm9kdWN0aW9uIG5lZWRzIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdG8gYmUgcXVlc3Rpb25lZC4gSGUgbm90ZWQgdGhhdCB0aGUgY3VycmVudCBjYXJib24gZm9vdHByaW50IGNhbGN1bGF0aW9ucyBmb3IgYmlvcmVhY3RvcnMgYXJlIG91dGRhdGVkLiBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEJ1dCBmZWFyIG5vdCwgb3VyIGJyYXZlIGJpb3RlY2hub2xvZ2lzdCBpcyBvbiBhIG1pc3Npb24gdG8gYnJpbmcgdGhlc2UgZmlndXJlcyB1cCB0byBkYXRlIHdpdGggaGlzIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZ3JvdW5kYnJlYWtpbmcgcmVzZWFyY2ghIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+VGhlIGN1cmlvdXMgYXVkaWVuY2UgYXNrZWQgcXVlc3Rpb25zIGFib3V0IHNjYWxhYmlsaXR5LCBjb3N0cyBhbmQgc3VzdGFpbmFibGUgc3VnYXIgc291cmNlcy4gQWx3YXlzIHVwIGZvciBhIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2hhbGxlbmdlLCBOaWNob2xhcyBleHBsYWluZWQgdGhhdCB0aGUgY3VycmVudCBoaWdoIGNvc3RzIGNvdWxkIGJlIGFkZHJlc3NlZCBieSBpbXByb3ZpbmcgdGhlIHByb2R1Y3Rpdml0eSBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9mIHRoZSBiaW9yZWFjdG9ycyEgSG93ZXZlciwgaGUgYWxzbyBlbXBoYXNpemVkIHRoYXQgZnVydGhlciByZXNlYXJjaCBpcyBuZWVkZWQgdG8gZmluZCBhIHN1c3RhaW5hYmxlIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc291cmNlIG9mIHN1Z2FyLiA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPkluIGhpcyBncmFuZCBmaW5hbGUsIE5pY2hvbGFzIHByZXNlbnRlZCB0aHJlZSB3aXNlIGluc2lnaHRzOiA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx1bD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48Yj5iaW90ZWNobm9sb2d5PC9iPiBnb2VzIGZhciBiZXlvbmQgbWVkaWNpbmUgYW5kIG9wZW5zIHRoZSBkb29ycyBmb3Igc3VzdGFpbmFibGUgZm9vZCBwcm9kdWN0aW9uLjwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGI+c3VzdGFpbmFiaWxpdHkgPC9iPiBhc3Nlc3NtZW50cyBtdXN0IGNvbnNpZGVyIHRoZSBlbnRpcmUgcHJvZHVjdGlvbiBwcm9jZXNzIC0gbm8gZGV0YWlsIHNob3VsZCBiZSBvdmVybG9va2VkITwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGI+Y2hsb3JlbGxhPC9iPiwgdGhlIHRpbnksIG51dHJpZW50LXJpY2ggbWljcm9hbGdhZSwgaGFzIHRoZSBwb3RlbnRpYWwgdG8gYmUgYSBoZXJvIGluIG91ciBmdXR1cmUgZGlldC4gPC9saT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC91bD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+TmljaG9sYXMgY2FwdGl2YXRlZCB0aGUgYXVkaWVuY2Ugd2l0aCBoaXMgdml2aWQgYW5kIGV5ZS1vcGVuaW5nIHByZXNlbnRhdGlvbi4gSGUgZ3VpZGVkIHRoZW0gdGhyb3VnaCB0aGUgZmFzY2luYXRpbmcgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbmQgc29tZXRpbWVzIHR1cmJ1bGVudCB3b3JsZCBvZiBtaWNyb2FsZ2FlIHByb2R1Y3Rpb24sIGhpZ2hsaWdodGluZyB0aGUgY2hhbGxlbmdlcyBhbmQgb3Bwb3J0dW5pdGllcyBvZiBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMgdGVjaG5vbG9neS4gVGhlIGF1ZGllbmNlIHdhcyBub3Qgb25seSBpbmZvcm1lZCBidXQgYWxzbyBlbnRlcnRhaW5lZCBhbmQgcmVhZHkgdG8gZW1icmFjZSB0aGUgZnV0dXJlIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb2Ygc3VzdGFpbmFibGUgbnV0cml0aW9uIHdpdGggY2hsb3JlbGxhIGFzIHRoZWlyIGxpdHRsZSBncmVlbiBoZXJvLiA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+ICBcclxuICAgICAgICAgICAgICAgIDwvVGltZWxpbmVJdGVtUGljPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J3RpbWVsaW5lLWVuZCc+XHJcbiAgICAgICAgICAgICAgICAgICAgQXdhcmQgQ2VyZW1vbnlcclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgXHJcbiAgICAgICAgICAgIDwvPlxyXG4gICAgICAgIClcclxuICAgIFxyXG59IiwgIi8qICAqL1xyXG5cclxuY29uc3QgaW1hZ2VzID0gW1xyXG4gIHtzcmM6XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvbWVldHVwL2JhZGdlcy5qcGVnXCIsIHdpZHRoOiAzMjAsIGhlaWdodDogMjEyLCB0YWJzOiBcIlwifSxcclxuICB7c3JjOlwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL21lZXR1cC9qb2Vybi5qcGVnXCIsICB3aWR0aDogMzIwLCBoZWlnaHQ6IDIxMiwgdGFiczogXCJcIn0sXHJcbiAge3NyYzpcImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9tZWV0dXAvY2hla2luLmpwZWdcIiwgd2lkdGg6IDMyMCwgaGVpZ2h0OiAyMTIsIHRhYnM6IFwiXCJ9LFxyXG4gIHtzcmM6XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvbWVldHVwL3NpbmFuLmpwZWdcIiwgIHdpZHRoOiAzMjAsIGhlaWdodDogMjEyLCB0YWJzOiBcIlwifSxcclxuICB7c3JjOlwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL21lZXR1cC9wYXJ0eS5qcGVnXCIsIHdpZHRoOiAzMjAsIGhlaWdodDogMjEyLCB0YWJzOiBcIlwifSxcclxuICB7c3JjOlwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL21lZXR1cC9vcmdhdGVhbS5qcGVnXCIsIHdpZHRoOiAzMjAsIGhlaWdodDogMjEyLCB0YWJzOiBcIlwifSxcclxuICB7c3JjOlwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL21lZXR1cC9oYWxsLmpwZWdcIiwgd2lkdGg6IDMyMCwgaGVpZ2h0OiAyMTIsIHRhYnM6IFwiXCJ9LFxyXG4gIHtzcmM6XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvbWVldHVwL2J5ZTEuanBlZ1wiLCB3aWR0aDogMzIwLCBoZWlnaHQ6IDIxMiwgdGFiczogXCJcIn0sXHJcbiAge3NyYzpcImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9tZWV0dXAvdW5pLmpwZWdcIiwgd2lkdGg6IDMyMCwgaGVpZ2h0OiAyMTIsIHRhYnM6IFwiXCJ9LFxyXG4gIHtzcmM6XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvbWVldHVwL3RhbGtpbmcuanBlZ1wiLCB3aWR0aDogMzIwLCBoZWlnaHQ6IDIxMiwgdGFiczogXCJcIn0sXHJcbiAge3NyYzpcImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9tZWV0dXAva3Jpc3RpYW4uanBlZ1wiLCAgd2lkdGg6IDMyMCwgaGVpZ2h0OiAyMTIsIHRhYnM6IFwiXCJ9LFxyXG4gIHtzcmM6XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvbWVldHVwL2FmZmUuanBlZ1wiLCB3aWR0aDogMzIwLCBoZWlnaHQ6IDIxMiwgdGFiczogXCJcIn0sXHJcbiAge3NyYzpcImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9tZWV0dXAvbWFyZ2J1cmcuanBlZ1wiLCAgd2lkdGg6IDMyMCwgaGVpZ2h0OiAyMTIsIHRhYnM6IFwiXCJ9LFxyXG4gIHtzcmM6XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvbWVldHVwL2RpZXR6LmpwZWdcIiwgd2lkdGg6IDMyMCwgaGVpZ2h0OiAyMTIsIHRhYnM6IFwiXCJ9LFxyXG4gIHtzcmM6XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvbWVldHVwL3dhZ2VuaW5nZW4uanBlZ1wiLCB3aWR0aDogMzIwLCBoZWlnaHQ6IDIxMiwgdGFiczogXCJcIn0sXHJcbiAge3NyYzpcImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9tZWV0dXAvYWFjaGVuLmpwZWdcIiwgd2lkdGg6IDMyMCwgaGVpZ2h0OiAyMTIsIHRhYnM6IFwiXCJ9LFxyXG4gIHtzcmM6XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvbWVldHVwL3Bvc3RlcmV4aGliaXRpb24tcmVmaWJhLmpwZ1wiLCB3aWR0aDogMzIwLCBoZWlnaHQ6IDIxMiwgdGFiczogXCJcIn0sXHJcbiAge3NyYzpcImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9tZWV0dXAvc29jaWFsaXppbmcxNy5qcGVnXCIsIHdpZHRoOiAzMjAsIGhlaWdodDogMjEyLCB0YWJzOiBcIlwifSxcclxuICB7c3JjOlwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL21lZXR1cC9iYWRnZXMuanBlZ1wiLCB3aWR0aDogMzIwLCBoZWlnaHQ6IDIxMiwgdGFiczogXCJcIn0sXHJcbiAge3NyYzpcImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9tZWV0dXAvcG9zdGVyZXhoaWJpdGlvbi10ZWRkeS5qcGdcIiwgIHdpZHRoOiAzMjAsIGhlaWdodDogMjEyLCB0YWJzOiBcIlwifSxcclxuICB7c3JjOlwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL21lZXR1cC9jaGVraW4uanBlZ1wiLCB3aWR0aDogMzIwLCBoZWlnaHQ6IDIxMiwgdGFiczogXCJcIn0sXHJcbiAge3NyYzpcImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9tZWV0dXAvc2luYW4uanBlZ1wiLCAgd2lkdGg6IDMyMCwgaGVpZ2h0OiAyMTIsIHRhYnM6IFwiXCJ9LFxyXG4gIHtzcmM6XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvbWVldHVwL3NvY2lhbGl6aW5nMTEuanBlZ1wiLCB3aWR0aDogMzIwLCBoZWlnaHQ6IDIxMn0sXHJcbiAge3NyYzpcImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9tZWV0dXAvdGVhbXBob3RvczYuanBlZ1wiLCB3aWR0aDogMzIwLCBoZWlnaHQ6IDIxMn0sXHJcbiAge3NyYzpcImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9tZWV0dXAvdGVhbXBob3Rvcy5qcGVnXCIsIHdpZHRoOiAzMjAsIGhlaWdodDogMjEyfSxcclxuICB7c3JjOlwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL21lZXR1cC90ZWFtcGhvdG9zNS5qcGVnXCIsIHdpZHRoOiAzMjAsIGhlaWdodDogMjEyfSxcclxuICB7c3JjOlwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL21lZXR1cC9zb2NpYWxpemluZzE5LmpwZWdcIiwgd2lkdGg6IDMyMCwgaGVpZ2h0OiAyMTJ9LFxyXG4gIHtzcmM6XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvbWVldHVwL3Bvc3RlcmV4aGliaXRpb24taXNhYmVsbC1lcmtsLXJ0LmpwZ1wiLCB3aWR0aDogMzIwLCBoZWlnaHQ6IDIxMn0sXHJcbiAge3NyYzpcImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9tZWV0dXAvai1ybjMuanBlZ1wiLCB3aWR0aDogMzIwLCBoZWlnaHQ6IDIxMn0sXHJcbiAge3NyYzpcImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9tZWV0dXAvaGFsbC5qcGVnXCIsIHdpZHRoOiAzMjAsIGhlaWdodDogMjEyfSxcclxuICB7c3JjOlwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL21lZXR1cC9hYmVuZC1zcGlrZWJhbGw1LmpwZWdcIiwgd2lkdGg6IDMyMCwgaGVpZ2h0OiAyMTJ9LFxyXG4gIHtzcmM6XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvbWVldHVwL2FiZW5kLWludGVyc3NpZXJ0ZS5qcGVnXCIsIHdpZHRoOiAzMjAsIGhlaWdodDogMjEyfSxcclxuICB7c3JjOlwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL21lZXR1cC9vcmdhdGVhbS5qcGVnXCIsIHdpZHRoOiAzMjAsIGhlaWdodDogMjEyfSxcclxuXVxyXG5cclxuXHJcblxyXG5cclxuXHJcblxyXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBCRkhHYWxsZXJ5KCkge1xyXG4gIGxldCByb3dzOiBKU1guRWxlbWVudFtdID0gW107XHJcbiAgZm9yIChsZXQgaSA9IDA7IGkgPCBpbWFnZXMubGVuZ3RoOyBpKyspIHtcclxuICAgIHJvd3MucHVzaChcclxuICAgICAgPGRpdiBrZXk9e2l9IGNsYXNzTmFtZT1cImJmaGdhbC1pdGVtXCI+XHJcbiAgICAgICAgPGltZyBzcmM9e2ltYWdlc1tpXS5zcmN9IGFsdD17YEltYWdlICR7aSArIDF9YH0gLz5cclxuICAgICAgPC9kaXY+XHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgcmV0dXJuIDxkaXYgY2xhc3NOYW1lPVwiYmZoZ2FsXCI+e3Jvd3N9PC9kaXY+O1xyXG59XHJcblxyXG4iLCAiZXhwb3J0IGZ1bmN0aW9uIFBvc3Rlcih7cG9zdGVybmFtZSwgdXJsfTp7cG9zdGVybmFtZTogc3RyaW5nLCB1cmw6IHN0cmluZ30pe1xyXG4gICAgcmV0dXJuKFxyXG4gICAgICAgIDxhIHR5cGVvZj1cImJ1dHRvblwiIG9uQ2xpY2s9e3JlU2l6ZSh7bmFtZTogcG9zdGVybmFtZX0pfT5cclxuICAgICAgICAgIDxpbWcgaWQ9e3Bvc3Rlcm5hbWV9IGNsYXNzTmFtZT1cInBpY3R1cmUtZnJhbWUgbm9ybVwiIHNyYz17dXJsfSBhbHQ9e3Bvc3Rlcm5hbWV9IC8+XHJcbiAgICAgICAgPC9hPlxyXG4gICAgKVxyXG59XHJcbmV4cG9ydCBmdW5jdGlvbiBDZXJ0aWZpY2F0ZSh7cG9zdGVybmFtZSwgdXJsfTp7cG9zdGVybmFtZTogc3RyaW5nLCB1cmw6IHN0cmluZ30pe1xyXG4gIHJldHVybihcclxuICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICA8YSB0eXBlb2Y9XCJidXR0b25cIiBvbkNsaWNrPXtyZVNpemUyKHtuYW1lOiBwb3N0ZXJuYW1lfSl9PlxyXG4gICAgICAgICAgPGltZyBpZD17cG9zdGVybmFtZX0gY2xhc3NOYW1lPVwiY2VydC1mcmFtZSBub3JtXCIgc3JjPXt1cmx9IGFsdD17cG9zdGVybmFtZX0gLz5cclxuICAgICAgICA8L2E+XHJcbiAgICAgIDwvZGl2PlxyXG4gIClcclxufVxyXG5cclxuZnVuY3Rpb24gcmVTaXplKHtuYW1lfTp7bmFtZTogc3RyaW5nfSl7XHJcbiAgICBjb25zdCByZXNpemUgPSAgKF9ldmVudCA6IFJlYWN0Lk1vdXNlRXZlbnQ8SFRNTEVsZW1lbnQsIE1vdXNlRXZlbnQ+KSA9PntcclxuICAgICAgdmFyIGltZzsgXHJcbiAgICAgIGltZyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKG5hbWUpO1xyXG4gICAgICBpZiAoaW1nIS5jbGFzc05hbWUgPT09IFwicGljdHVyZS1mcmFtZSBub3JtXCIpe1xyXG4gICAgICAgIGNvbnNvbGUubG9nKFwiPT09IHBpY3R1cmUtZnJhbWUgbm9ybVwiKVxyXG4gICAgICAgIGltZyEuY2xhc3NOYW1lID0gaW1nIS5jbGFzc05hbWUucmVwbGFjZShcInBpY3R1cmUtZnJhbWUgbm9ybVwiLCBcImZ1bGwtc2NyZWVuLXdpZHRoXCIpO1xyXG4gICAgICB9XHJcbiAgICAgIGVsc2UgaWYgKGltZyEuY2xhc3NOYW1lID09PSBcImZ1bGwtc2NyZWVuLXdpZHRoXCIpe1xyXG4gICAgICAgIGNvbnNvbGUubG9nKFwiPT09IGZ1bGwtc2NyZWVuLXdpZHRoXCIpXHJcbiAgICAgICAgaW1nIS5jbGFzc05hbWUgPSBpbWchLmNsYXNzTmFtZS5yZXBsYWNlKFwiZnVsbC1zY3JlZW4td2lkdGhcIiwgXCJwaWN0dXJlLWZyYW1lIG5vcm1cIik7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHJldHVybiByZXNpemU7IFxyXG59XHJcbmZ1bmN0aW9uIHJlU2l6ZTIoe25hbWV9OntuYW1lOiBzdHJpbmd9KXtcclxuICBjb25zdCByZXNpemUgPSAgKF9ldmVudCA6IFJlYWN0Lk1vdXNlRXZlbnQ8SFRNTEVsZW1lbnQsIE1vdXNlRXZlbnQ+KSA9PntcclxuICAgIHZhciBpbWc7IFxyXG4gICAgaW1nID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQobmFtZSk7XHJcbiAgICBpZiAoaW1nIS5jbGFzc05hbWUgPT09IFwiY2VydC1mcmFtZSBub3JtXCIpe1xyXG4gICAgICBjb25zb2xlLmxvZyhcIj09PSBjZXJ0LWZyYW1lIG5vcm1cIilcclxuICAgICAgaW1nIS5jbGFzc05hbWUgPSBpbWchLmNsYXNzTmFtZS5yZXBsYWNlKFwiY2VydC1mcmFtZSBub3JtXCIsIFwiZnVsbC1zY3JlZW4td2lkdGhcIik7XHJcbiAgICB9XHJcbiAgICBlbHNlIGlmIChpbWchLmNsYXNzTmFtZSA9PT0gXCJmdWxsLXNjcmVlbi13aWR0aFwiKXtcclxuICAgICAgY29uc29sZS5sb2coXCI9PT0gZnVsbC1zY3JlZW4td2lkdGhcIilcclxuICAgICAgaW1nIS5jbGFzc05hbWUgPSBpbWchLmNsYXNzTmFtZS5yZXBsYWNlKFwiZnVsbC1zY3JlZW4td2lkdGhcIiwgXCJjZXJ0LWZyYW1lIG5vcm1cIik7XHJcbiAgICB9XHJcbiAgfVxyXG4gIHJldHVybiByZXNpemU7IFxyXG59XHJcblxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIFBvc3RlclJvdyh7cG9zdGVybmFtZTEsIHBvc3Rlcm5hbWUyLCB1cmwxLCB1cmwyfTp7cG9zdGVybmFtZTE6IHN0cmluZywgdXJsMTogc3RyaW5nLCBwb3N0ZXJuYW1lMjogc3RyaW5nLCB1cmwyOiBzdHJpbmd9KXtcclxuICAgIHJldHVybihcclxuICAgICAgICA8PlxyXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93XCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICAgICAgICA8UG9zdGVyIHVybD17dXJsMX0gcG9zdGVybmFtZT17cG9zdGVybmFtZTF9IC8+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgICAgPFBvc3RlciB1cmw9e3VybDJ9IHBvc3Rlcm5hbWU9e3Bvc3Rlcm5hbWUyfSAvPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8YnIvPlxyXG4gICAgICAgIDwvPlxyXG4gICAgKVxyXG59IiwgImltcG9ydCB7IENlcnRpZmljYXRlIH0gZnJvbSBcIi4uLy4uLy4uL2NvbXBvbmVudHMvcG9zdGVyXCI7XHJcbmltcG9ydCB7ICBINCwgSDUgfSBmcm9tIFwiLi4vLi4vLi4vY29tcG9uZW50cy9IZWFkaW5nc1wiO1xyXG5pbXBvcnQgeyBCbG9ja1F1b3RlQiB9IGZyb20gXCIuLi8uLi8uLi9jb21wb25lbnRzL1F1b3Rlc1wiO1xyXG5cclxuY29uc3QgaGFrZW4gPSA8c3BhbiBjbGFzc05hbWU9XCJiZmgtaGFrZW5cIj4gPGJpZz4mI3gyNzEzOzwvYmlnPiA8L3NwYW4+OyBcclxuICBcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBBYm91dCgpe1xyXG4gIHJldHVybihcclxuICAgIDxkaXY+XHJcblxyXG4gICAgICA8QmxvY2tRdW90ZUIgdGV4dD1cIlRoaXMgd2FzIHRoZSBiZXN0IG1lZXQgdXAgZXZlciBpbiB0aGUgaGlzdG9yeSBvZiBpR0VNLiBUaGFuayB5b3Ugc28gbXVjaCFcIiBjaXRlPVwiTmVtYW5qYSBTdGlqZXBvdmljXCI+PC9CbG9ja1F1b3RlQj5cclxuICAgICAgPEg0IGlkPVwiXCIgdGV4dD1cIkludHJvZHVjdGlvblwiLz5cclxuICAgICAgPHA+VGhpcyB5ZWFyLCB3ZSBob3N0ZWQgdGhlIGZpcnN0IEJGSCBFdXJvcGVhbiBNZWV0LVVwIGV2ZXIuIE92ZXIgdGhlIGNvdXJzZSBvZiB0aHJlZSBmdWxsIGRheXMsIHdlIGVtYmFya2VkIG9uIGEgam91cm5leSB3aGVyZSBtaW5kcyBtZXQgYW5kIGlkZWFzIGlnbml0ZWQuIE91ciBtaXNzaW9uOiA8L3A+XHJcbiAgICAgIDxwIGNsYXNzTmFtZT1cImJmaC1tb3R0b1wiPjxiPklnbml0ZS4gSW5ub3ZhdGUuIEluc3BpcmUuPC9iPjwvcD5cclxuICAgICAgPHA+VGhpcyBldmVudCB3YXMgZGVzaWduZWQgdG8gdW5pdGUgdGhlIGJyaWdodGVzdCBtaW5kcyBmcm9tIGFjcm9zcyBFdXJvcGUgYW5kIGJleW9uZCwgcHJvdmlkaW5nIGEgcGxhdGZvcm0gZm9yIHNoYXJpbmcgZ3JvdW5kYnJlYWtpbmcgaWRlYXMgYW5kIGZvc3RlcmluZyBpbnRlcm5hdGlvbmFsIGNvbm5lY3Rpb25zIGR1cmluZyB0aGUgZWFybHkgc3RhZ2VzIG9mIHRoZSBpR0VNIGNvbXBldGl0aW9uLiA8L3A+XHJcbiAgICAgIDxINCB0ZXh0PVwiQWJvdXQgT3VyIENvb3BlcmF0aW9uXCIvPlxyXG4gICAgICA8cD4gVGhlIGNvb3BlcmF0aW9uIGJldHdlZW4gQmllbGVmZWxkLCBGcmFua2Z1cnQsIGFuZCBIYW1idXJnIGlzIHJvb3RlZCBpbiB0aGUgZnJpZW5kc2hpcHMgYW5kIG5ldHdvcmtzIGZvcm1lZCBkdXJpbmcgdGhlIGlHRU0gY29tcGV0aXRpb24gMjAyMy4gT3VyIG1pc3Npb24gaXMgdG8gcHJvbW90ZSBmdXR1cmUgcHJvamVjdHMgYW5kIGJyaW5nIHRlYW1zIHRvZ2V0aGVyLiBCeSBhbHRlcm5hdGluZyB0aGUgbG9jYXRpb24gb2YgdGhlIEJGSCBFdXJvcGVhbiBNZWV0LVVwIGVhY2ggeWVhciwgd2UgYWltIHRvIHByb3ZpZGUgZGl2ZXJzZSBuZXR3b3JraW5nIG9wcG9ydHVuaXRpZXMgYW5kIGZvc3RlciBhIHN0cm9uZyBzZW5zZSBvZiBjb21tdW5pdHkgYW1vbmcgaUdFTSBwYXJ0aWNpcGFudHMuIDwvcD5cclxuICAgICAgPEg0IHRleHQ9XCJIZWFkIG9mIEJGSCBDb21taXR0ZWVcIi8+XHJcbiAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93XCI+XHJcbiAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcblxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICBcclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgIFxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvdyBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgPHA+U2luYW4gWmltbWVybWFubjwvcD5cclxuICAgICAgICAgIDxwPjxpPkluc3RydWN0b3Igb2YgaUdFTSBCaWVsZWZlbGRcdTIwMkY8L2k+PC9wPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICA8cD5PbGl2aWEgTW96b2xld3NrYTwvcD5cclxuICAgICAgICAgIDxwPjxpPkFkdmlzb3Igb2YgaUdFTSBGcmFua2Z1cnQ8L2k+PC9wPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICA8cD5MaXNhIFNpZW1lcnM8L3A+XHJcbiAgICAgICAgICAgIDxwPjxpPkFkdmlzb3Igb2YgaUdFTSBIYW1idXJnXHUyMDJGIDwvaT48L3A+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8SDQgdGV4dD1cIldoYXQgV2VyZSBPdXIgR29hbHM/XCIvPiBcclxuICAgICAgPHVsIGNsYXNzTmFtZT1cImhha2VuLWxpc3RlXCI+XHJcbiAgICAgICAgPGxpPiB7aGFrZW59IFVuaXRlIGlHRU0gdGVhbXMgZnJvbSBhY3Jvc3MgRXVyb3BlIGFuZCBmb3N0ZXIgYSBzZW5zZSBvZiBjb21tdW5pdHkgYW5kIGNvbGxhYm9yYXRpb24uIDwvbGk+XHJcbiAgICAgICAgPGxpPiB7aGFrZW59IFByb3ZpZGUgYSBwbGF0Zm9ybSBmb3IgdGVhbXMgdG8gcHJlc2VudCB0aGVpciBwcm9qZWN0cyBhbmQgcmVjZWl2ZSB2YWx1YWJsZSBmZWVkYmFjay4gPC9saT5cclxuICAgICAgICA8bGk+IHtoYWtlbn0gT2ZmZXIgb3Bwb3J0dW5pdGllcyBmb3IgcGFydGljaXBhbnRzIHRvIGJ1aWxkIHRoZWlyIHNjaWVudGlmaWMgYW5kIHNvZnQgc2tpbGxzIHRocm91Z2ggd29ya3Nob3BzIGFuZCBwcmVzZW50YXRpb25zLiA8L2xpPlxyXG4gICAgICAgIDxsaT4ge2hha2VufSBFbmNvdXJhZ2UgbmV0d29ya2luZyBhbmQgc29jaWFsaXppbmcgYW1vbmcgaUdFTSB0ZWFtcyB0byBidWlsZCBsYXN0aW5nIHJlbGF0aW9uc2hpcHMgYW5kIGV4cGFuZCBzY2llbnRpZmljIG5ldHdvcmtzLiA8L2xpPlxyXG4gICAgICAgIDxsaT4ge2hha2VufSBFbGFib3JhdGUgdGhlaXIgdGVhbSBwcm9qZWN0cyBhbmQgcmVmbGVjdCB0aGVpciBkZWNpc2lvbnMgaW4gZWFybHkgc3RhZ2Ugb2YgdGltZSBpbiBjb29wZXJhdGlvbiB3aXRoIGlHRU0gYWx1bW5pIGFuZCBzY2llbnRpc3QgZnJvbSBhbGwgYXJvdW5kIHRoZSBnbG9iZSA8L2xpPlxyXG4gICAgICA8L3VsPlxyXG4gICAgICA8SDQgdGV4dD1cIldoYXQgRGlkIHRoZSBQYXJ0aWNpcGFudHMgTGVhcm4/XCIvPlxyXG4gICAgICA8dWwgY2xhc3NOYW1lPVwiaGFrZW4tbGlzdGVcIj5cclxuICAgICAgICA8bGk+IHtoYWtlbn0gR2FpbmVkIGluc2lnaHRzIGludG8gY3VycmVudCByZXNlYXJjaCBmcm9tIEJpZWxlZmVsZCBVbml2ZXJzaXR5IGFuZCBuZWFyYnkgaW5zdGl0dXRpb25zIHRocm91Z2ggU2NpZW50aWZpYyBUYWxrcy4gPC9saT5cclxuICAgICAgICA8bGk+IHtoYWtlbn0gTGVhcm5lZCBmcm9tIG92ZXIgMTAgbmF0aW9uYWwgYW5kIGludGVybmF0aW9uYWwgc3BlYWtlcnMgYW5kIGV4cGVydHMgZnJvbSBpbmR1c3RyeSwgYWNhZGVtaWEsIGFuZCB0aGUgaUdFTSBjb21tdW5pdHk8L2xpPlxyXG4gICAgICAgIDxsaT4ge2hha2VufSBQYXJ0aWNpcGF0ZWQgaW4gaGFuZHMtb24gV29ya3Nob3AgU2Vzc2lvbnMgbGVkIGJ5IGxlYWRpbmcgZXhwZXJ0cywgd2hpY2ggY29udHJpYnV0ZWQgdG8gdGhlIGRldmVsb3BtZW50IG9mIHRoZSBuZXh0IGdlbmVyYXRpb24gb2YgYW1iaXRpb3VzIHJlc2VhcmNoZXJzPC9saT5cclxuICAgICAgICA8bGk+IHtoYWtlbn0gRW5nYWdlZCBpbiBQYW5lbCBEaXNjdXNzaW9ucyB0byBwdXp6bGUgb3ZlciBpZGVhcywgaW1wcmVzc2lvbnMsIGFuZCB0aGUgcG90ZW50aWFsIG9mIG11bHRpcGxlIHByb2plY3RzLCBmb3N0ZXJpbmcgY29sbGFib3JhdGlvbiBhbmQgbmV0d29ya2luZzwvbGk+XHJcbiAgICAgIDwvdWw+XHJcbiAgICAgIDxINCB0ZXh0PVwiU3RpY2tlciBDb2xsZWN0aW9uIEFsYnVtOiBDb25uZWN0IGFuZCBDb2xsZWN0IVwiLz5cclxuICAgICAgPHA+V2UgYXJlIGV4Y2l0ZWQgdG8gaW50cm9kdWNlIHRoZSBmaXJzdCBvZmZpY2lhbCBCRkggaUdFTSBTdGlja2VyIENvbGxlY3Rpb24gQWxidW0gb2YgMjAyNCEgT3ZlciB0aGUgcGFzdCBmZXcgeWVhcnMsIGlHRU0gdGVhbXMgZnJvbSBhcm91bmQgdGhlIHdvcmxkIGhhdmUgc3RhcnRlZCBleGNoYW5naW5nIGZ1bm55IG1lbWVzLCBsb2dvcywgbWFzY290cywgYW5kIGNvbnRhY3QgaW5mb3JtYXRpb24gdmlhIHN0aWNrZXJzLiBSZWNvZ25pemluZyB0aGlzIGNyZWF0aXZlIHRyZW5kLCB3ZSd2ZSBlc3RhYmxpc2hlZCB0aGUgZmlyc3QtZXZlciBpR0VNIFRlYW1zIFN0aWNrZXIgQWxidW0gdG8gZW5oYW5jZSBzb2NpYWwgbmV0d29ya2luZyBhbW9uZyBwYXJ0aWNpcGFudHMgZHVyaW5nIHRoZSBHcmFuZCBKYW1ib3JlZSBhbmQgYmV5b25kLiA8L3A+XHJcbiAgICAgIDxwPkRvIHlvdSB3YW50IHRvIGpvaW4gdGhlIGJpZ2dlc3Qgc29jaWFsIG5ldHdvcmtpbmcgZXZlbnQsIGNvbGxlY3QgYWxsIHN0aWNrZXJzLCBhbmQgd2luIHNwZWNpYWwgcHJpemVzPyBTaWduIHVwIGFuZCBnZXQgcmVhZHkgdG8gY2F0Y2ggJ2VtIGFsbCEgVG8gcGFydGljaXBhdGUsIHN1Ym1pdCB5b3VyIHByb2plY3QgdGl0bGUgYW5kIGFic3RyYWN0LCBhbmQgZGVzaWduIGEgdW5pcXVlIHN0aWNrZXIgdGhhdCByZXByZXNlbnRzIHlvdXIgdGVhbS4gVGhlc2Ugc3RpY2tlcnMgd2lsbCBiZSBleGNoYW5nZWQgYXQgdGhlIEdyYW5kIEphbWJvcmVlIGluIFBhcmlzLiBPbmNlIHlvdSd2ZSBjb2xsZWN0ZWQgYWxsIHRoZSBzdGlja2VycyBmcm9tIHBhcnRpY2lwYXRpbmcgdGVhbXMsIHNlbmQgYSBwaWN0dXJlIG9mIHlvdXIgY29tcGxldGVkIGFsYnVtIHRvIHRoZSBpR0VNIEJpZWxlZmVsZCBoZWFkcXVhcnRlcnMgZm9yIGEgY2hhbmNlIHRvIHdpbiBzcGVjaWFsIHByaXplcy4gPC9wPlxyXG4gICAgICA8cD4gVGhpcyBhbGJ1bSBpc24ndCBqdXN0IGZvciB0aGUgR3JhbmQgSmFtYm9yZWUgXHUyMDEzIHlvdSBjYW4gYWxzbyBjb2xsZWN0IHN0aWNrZXJzIGZyb20gbm9uLXBhcnRpY2lwYXRpbmcgdGVhbXMgb24gdGhlIGJhY2tzaWRlIG9mIHRoZSBhbGJ1bS4gTGV0J3MgY29ubmVjdCwgc2hhcmUsIGFuZCBtYWtlIG1lbW9yaWVzIHRvZ2V0aGVyISA8L3A+XHJcbiAgICAgIDxINCB0ZXh0PVwiQXdhcmRzIGFuZCBXaW5uZXJzIG9mIHRoZSBCRkggQ29tcGV0aXRpb24gXCIvPlxyXG4gICAgICA8cD5UaGUgZXZlbnQgY3VsbWluYXRlZCBpbiBhbiBBd2FyZHMgQ2VyZW1vbnkgY2VsZWJyYXRpbmcgZXhjZWxsZW5jZSBpbiBjcmVhdGl2aXR5LCB0ZWFtd29yaywgYW5kIGlubm92YXRpb24uIE91ciBqdWRnZXMsIHVzaW5nIHRoZWlyIGV4cGVyaWVuY2UgZnJvbSBwYXN0IGlHRU0geWVhcnMsIGV2YWx1YXRlZCB0aGUgdGVhbXMnIHBlcmZvcm1hbmNlcy4gVGhlIGhlYXJ0ZmVsdCB3aW5uZXIsIHJlY29nbml6ZWQgZm9yIHRoZWlyIG91dHN0YW5kaW5nIGNvbnRyaWJ1dGlvbiBhbmQgc3Bpcml0LCB3YXMgdGhlIHRlYW0gdGhhdCB0cnVseSBlbWJvZGllZCB0aGUgdmFsdWVzIG9mIHRoZSBpR0VNIGNvbW11bml0eS4gPC9wPlxyXG4gICAgICA8SDUgdGV4dD1cIkJlc3QgUHJlc2VudGF0aW9uXCIvPlxyXG4gICAgICB7LyogaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvZGVzaWduL2ljb25zL2ZpcnN0LXBsYWNlLnN2ZyAqL31cclxuICAgICAgPGRpdiBjbGFzc05hbWU9XCJzbWFsbC1yb3cgd2lubmVyc1wiPlxyXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sLTFcIj5cclxuICAgICAgICAgIDxpbWcgY2xhc3NOYW1lPVwid2lubmVyLWltZ1wiIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2Rlc2lnbi9pY29ucy9maXJzdC1wbGFjZS5zdmcgXCIvPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sLTRcIj5cclxuICAgICAgICAgIDxwIGNsYXNzTmFtZT1cIndpbm5lclwiPmlHRU0gQWFjaGVuPC9wPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICA8dWwgY2xhc3NOYW1lPVwiaGFrZW4tbGlzdGVcIj5cclxuICAgICAgICAgICAgPGxpIGNsYXNzTmFtZT1cInRyb3BoeVwiPjxzcGFuPlRyb3BoeTwvc3Bhbj48L2xpPlxyXG4gICAgICAgICAgICA8bGkgY2xhc3NOYW1lPVwiY2VydGlmaWNhdGVcIj48c3Bhbj4gQ2VydGlmaWNhdGU8L3NwYW4+PC9saT5cclxuICAgICAgICAgICAgPGxpIGNsYXNzTmFtZT1cInRpY2tldHNcIj4gPHNwYW4+MiBUaWNrZXRzIGZvciBTeW5CaW8gUmVhY3RvciBDb25mZXJlbmNlIHByb3ZpZGVkIGJ5IEdBU0I8L3NwYW4+PC9saT5cclxuICAgICAgICAgIDwvdWw+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8ZGl2IGNsYXNzTmFtZT1cInNtYWxsLXJvdyB3aW5uZXJzXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wtMVwiPlxyXG4gICAgICAgICAgPGltZyBjbGFzc05hbWU9XCJ3aW5uZXItaW1nXCIgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvZGVzaWduL2ljb25zL3NlY29uZC1wbGFjZS5zdmcgXCIvPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sLTRcIj5cclxuICAgICAgICAgIDxwIGNsYXNzTmFtZT1cIndpbm5lclwiPmlHRU0gTWFyYnVyZzwvcD5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgPHVsIGNsYXNzTmFtZT1cImhha2VuLWxpc3RlXCI+XHJcbiAgICAgICAgICAgIDxsaSBjbGFzc05hbWU9XCJjZXJ0aWZpY2F0ZVwiPjxzcGFuPiBDZXJ0aWZpY2F0ZTwvc3Bhbj48L2xpPlxyXG4gICAgICAgICAgICA8bGkgY2xhc3NOYW1lPVwibW9uZXlcIj4gPHNwYW4+JDUwMCBVU0QgcHJvdmlkZWQgYnkgWnltbyBSZXNlYXJjaDwvc3Bhbj48L2xpPlxyXG4gICAgICAgICAgPC91bD5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxkaXYgY2xhc3NOYW1lPVwic21hbGwtcm93IHdpbm5lcnNcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbC0xXCI+XHJcbiAgICAgICAgICA8aW1nIGNsYXNzTmFtZT1cIndpbm5lci1pbWdcIiBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9kZXNpZ24vaWNvbnMvdGhpcmQtcGxhY2Uuc3ZnIFwiLz5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbC00XCI+XHJcbiAgICAgICAgICA8cCBjbGFzc05hbWU9XCJ3aW5uZXJcIj5pR0VNIEdVLUZyYW5rZnVydDwvcD5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgPHVsIGNsYXNzTmFtZT1cImhha2VuLWxpc3RlXCI+XHJcbiAgICAgICAgICAgIDxsaSBjbGFzc05hbWU9XCJjZXJ0aWZpY2F0ZVwiPjxzcGFuPiBDZXJ0aWZpY2F0ZTwvc3Bhbj48L2xpPlxyXG4gICAgICAgICAgICA8bGkgY2xhc3NOYW1lPVwibW9uZXlcIj4gPHNwYW4+JDI1MCBVU0QgcHJvdmlkZWQgYnkgSmVuYSBCaW9zY2llbmNlPC9zcGFuPjwvbGk+XHJcbiAgICAgICAgICA8L3VsPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPGJyLz5cclxuICAgICAgPEg1IHRleHQ9XCJCZXN0IFBvc3RlciBFeGhpYml0aW9uIEJvb3RoXCIvPlxyXG4gICAgICA8ZGl2IGNsYXNzTmFtZT1cInNtYWxsLXJvdyB3aW5uZXJzXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wtMVwiPlxyXG4gICAgICAgICAgPGltZyBjbGFzc05hbWU9XCJ3aW5uZXItaW1nXCIgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvZGVzaWduL2ljb25zL2ZpcnN0LXBsYWNlLnN2ZyBcIi8+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wtNFwiPlxyXG4gICAgICAgICAgPHAgY2xhc3NOYW1lPVwid2lubmVyXCI+aUdFTSBGcmVpYnVyZyA8L3A+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgIDx1bCBjbGFzc05hbWU9XCJoYWtlbi1saXN0ZVwiPlxyXG4gICAgICAgICAgICA8bGkgY2xhc3NOYW1lPVwidHJvcGh5XCI+PHNwYW4+VHJvcGh5PC9zcGFuPjwvbGk+XHJcbiAgICAgICAgICAgIDxsaSBjbGFzc05hbWU9XCJjZXJ0aWZpY2F0ZVwiPjxzcGFuPiBDZXJ0aWZpY2F0ZTwvc3Bhbj48L2xpPlxyXG4gICAgICAgICAgICA8bGkgY2xhc3NOYW1lPVwidGlja2V0c1wiPiA8c3Bhbj4yIFRpY2tldHMgZm9yIFN5bkJpbyBSZWFjdG9yIENvbmZlcmVuY2UgcHJvdmlkZWQgYnkgR0FTQjwvc3Bhbj48L2xpPlxyXG4gICAgICAgICAgPC91bD5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxkaXYgY2xhc3NOYW1lPVwic21hbGwtcm93IHdpbm5lcnNcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbC0xXCI+XHJcbiAgICAgICAgICA8aW1nIGNsYXNzTmFtZT1cIndpbm5lci1pbWdcIiBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9kZXNpZ24vaWNvbnMvc2Vjb25kLXBsYWNlLnN2ZyBcIi8+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wtNFwiPlxyXG4gICAgICAgICAgPHAgY2xhc3NOYW1lPVwid2lubmVyXCI+aUdFTSBHVS1GcmFua2Z1cnQ8L3A+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgIDx1bCBjbGFzc05hbWU9XCJoYWtlbi1saXN0ZVwiPlxyXG4gICAgICAgICAgICA8bGkgY2xhc3NOYW1lPVwiY2VydGlmaWNhdGVcIj48c3Bhbj4gQ2VydGlmaWNhdGU8L3NwYW4+PC9saT5cclxuICAgICAgICAgICAgPGxpIGNsYXNzTmFtZT1cImtpdFwiPiA8c3Bhbj5QbGFzbWlkIElzb2xhdGlvbiBLaXRzIHByb3ZpZGVkIGJ5IE1hY2hlcnkgTmFnZWw8L3NwYW4+PC9saT5cclxuICAgICAgICAgIDwvdWw+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8ZGl2IGNsYXNzTmFtZT1cInNtYWxsLXJvdyB3aW5uZXJzXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wtMVwiPlxyXG4gICAgICAgICAgPGltZyBjbGFzc05hbWU9XCJ3aW5uZXItaW1nXCIgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvZGVzaWduL2ljb25zL3RoaXJkLXBsYWNlLnN2ZyBcIi8+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wtNFwiPlxyXG4gICAgICAgICAgPHAgY2xhc3NOYW1lPVwid2lubmVyXCI+aUdFTSBXYWdlbmluZ2VuVVIgPC9wPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICA8dWwgY2xhc3NOYW1lPVwiaGFrZW4tbGlzdGVcIj5cclxuICAgICAgICAgICAgPGxpIGNsYXNzTmFtZT1cImNlcnRpZmljYXRlXCI+PHNwYW4+IENlcnRpZmljYXRlPC9zcGFuPjwvbGk+XHJcbiAgICAgICAgICAgIDxsaSBjbGFzc05hbWU9XCJraXRcIj48c3Bhbj5NaW5pLUNpcmNsZSBwcm92aWRlZCBieSBQbGFzbWlkRmFjdG9yeTwvc3Bhbj48L2xpPlxyXG4gICAgICAgICAgPC91bD5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93XCI+XHJcbiAgICAgICAgICA8Q2VydGlmaWNhdGUgdXJsPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL21lZXR1cC9jZXJ0cy9iZmgtYmVzdC1ib290aC1icm9uemUtd2FnZW5pbmdlbi5wbmdcIiBwb3N0ZXJuYW1lPVwiYm9vdGhicm9uemVcIiAvPlxyXG4gICAgICAgICAgPENlcnRpZmljYXRlIHVybD1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9tZWV0dXAvY2VydHMvYmZoLWJlc3QtYm9vdGgtc2lsdmVyLWZyYW5rZnVydC5wbmdcIiBwb3N0ZXJuYW1lPVwiYm9vdGhzaWx2ZXJcIiAvPlxyXG4gICAgICAgICAgPENlcnRpZmljYXRlIHVybD1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9tZWV0dXAvY2VydHMvYmZoLWJlc3QtYm9vdGgtZ29sZC1mcmVpYnVyZy5wbmdcIiBwb3N0ZXJuYW1lPVwiYm9vdGhnb2xkXCIgLz5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxici8+XHJcbiAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93XCI+XHJcbiAgICAgICAgICA8Q2VydGlmaWNhdGUgdXJsPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL21lZXR1cC9jZXJ0cy9iZmgtYmVzdC1wcmVzaS1icm9uemUtZnJhbmtmdXJ0LnBuZ1wiIHBvc3Rlcm5hbWU9XCJwcmVzaWJyb256ZVwiIC8+XHJcbiAgICAgICAgICA8Q2VydGlmaWNhdGUgdXJsPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL21lZXR1cC9jZXJ0cy9iZmgtYmVzdC1wcmVzaS1zaWx2ZXItbWFyZ2J1cmcucG5nXCIgcG9zdGVybmFtZT1cInByZXNpc2lsdmVyXCIgLz5cclxuICAgICAgICAgIDxDZXJ0aWZpY2F0ZSB1cmw9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvbWVldHVwL2NlcnRzL2JmaC1iZXN0LXByZXNpLWdvbGQtYWFjaGVuLnBuZ1wiIHBvc3Rlcm5hbWU9XCJwcmVzaWdvbGRcIiAvPlxyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPEg0IHRleHQ9XCJXaGF0IGRpZCB3ZSBsZWFybiBhcyBvcmdhbml6ZXJzIGZvciB0aGUgbmV4dCBmZXcgeWVhcnM/XCIvPlxyXG4gICAgICA8aDM+R29vZCBwbGFubmluZyBpcyBrZXk8L2gzPlxyXG4gICAgICA8cD5TdGFydGluZyBlYXJseSwgY2xlYXJseSBkaXN0cmlidXRpbmcgdGFza3MsIGFuZCBzdGF5aW5nIG9yZ2FuaXplZCBcdTIwMTMgdGhhdCBhdm9pZHMgY2hhb3MuIFdlIGNhbiBub3cgc3RydWN0dXJlLCBjb29yZGluYXRlLCBhbmQgbWFuYWdlIHRoZSBuZXh0IG1lZXQtdXAgaW4gRnJhbmtmdXJ0IG1vcmUgZWZmaWNpZW50bHkgYW5kIGFoZWFkIG9mIHRpbWUuIDwvcD5cclxuICAgICAgPGgzPkNvbW11bmljYXRpb24gaXMgZXZlcnl0aGluZzwvaDM+XHJcbiAgICAgIDxwPlJlZ3VsYXIgdGVhbSBjb21tdW5pY2F0aW9uIGFuZCBjbGVhciBhZ3JlZW1lbnRzIGFyZSBlc3NlbnRpYWwgdG8ga2VlcCBldmVyeW9uZSBvbiB0aGUgc2FtZSBwYWdlLiBXZVx1MjAxOXZlIHJlYWxpemVkIGp1c3QgaG93IGltcG9ydGFudCBzb2NpYWxpemluZyBhbmQgbmV0d29ya2luZyByZWFsbHkgYXJlIHdpdGhpbiB0aGUgaUdFTSBjb21tdW5pdHkuIDwvcD5cclxuICAgICAgPGgzPlN0YXkgZmxleGlibGUgPC9oMz5cclxuICAgICAgPHA+U3BvbnRhbmVvdXMgY2hhbmdlcyBoYXBwZW4gXHUyMDEzIGJhY2t1cCBwbGFucyBhbmQgcXVpY2sgZGVjaXNpb25zIGFyZSBhIG11c3QuIFdpdGggb3VyIHBsYXRmb3JtLCB3ZSB3ZXJlIGFibGUgdG8gYmV0dGVyIGNvbm5lY3QgdGhlIHRlYW1zLiA8L3A+XHJcbiAgICAgIDxoMz5Gb2N1cyBvbiB0aGUgcGFydGljaXBhbnRzIDwvaDM+XHJcbiAgICAgIDxwPlVuZGVyc3RhbmRpbmcgcGFydGljaXBhbnRzJyBuZWVkcyBhbmQgb2ZmZXJpbmcgYSBkaXZlcnNlIHByb2dyYW0gdGhhdCByZXNvbmF0ZXMuIFdlIG5vdyBrbm93IGhvdyBtdWNoIGZ1biB0aGUgZXhjaGFuZ2Ugb24gYm90aCBzY2llbnRpZmljIGFuZCBwZXJzb25hbCBsZXZlbHMgY2FuIGJlLiA8L3A+XHJcbiAgICAgIDxoMz5GZWVkYmFjayBtYWtlcyBpdCBiZXR0ZXIgPC9oMz5cclxuICAgICAgPHA+R2F0aGVyaW5nIGZlZWRiYWNrIGFmdGVyIHRoZSBldmVudCBhbmQgbGVhcm5pbmcgZnJvbSBpdCB0byBtYWtlIHRoZSBuZXh0IG9uZSBldmVuIGJldHRlci4gVGhpcyB3aWxsIG1ha2UgdGhlIDIwMjUgbWVldC11cCBpbiBGcmFua2Z1cnQgZXZlbiBiaWdnZXIgYW5kIGJldHRlciEgVGhhbmsgeW91ISA8L3A+XHJcblxyXG4gICAgICA8SDQgdGV4dD1cIkZlZWRiYWNrIGZvciBvdXIgRXZlbnRcIi8+XHJcblxyXG4gICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvdyBmZWVkYmFja2JmaFwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sIGItbGdcIj5cclxuICAgICAgICAgIDxkaXY+XHJcbiAgICAgICAgICAgIDxoNT5TdHJlbmd0aHM8L2g1PlxyXG4gICAgICAgICAgICA8dWw+XHJcbiAgICAgICAgICAgICAgPGxpPldlbGwgb3JnYW5pc2VkIDwvbGk+XHJcbiAgICAgICAgICAgICAgPGxpPkhlbHBmdWwgZmVlZGJhY2sgZnJvbSBqdWRnZXM8L2xpPlxyXG4gICAgICAgICAgICAgIDxsaT5UaGUgZGl2ZXJzaXR5IG9mIHRoZSBwcm9ncmFtIHBvaW50czwvbGk+XHJcbiAgICAgICAgICAgICAgPGxpPlRoZSB2aWJlIGFuZCB0aGUgYXRtb3NwaGVyZTwvbGk+XHJcbiAgICAgICAgICAgICAgPGxpPkluZHVzdHJ5IHdhcyBwcmVzZW50PC9saT5cclxuICAgICAgICAgICAgICA8bGk+QSBmcmllbmRseSBhbmQgaGVscGZ1bCB0ZWFtPC9saT5cclxuICAgICAgICAgICAgICA8bGk+VmVyeSBwcm9mZXNzaW9uYWwgbW9kZXJhdGlvbjwvbGk+XHJcbiAgICAgICAgICAgIDwvdWw+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbCBiLWxvXCI+XHJcbiAgICAgICAgICA8ZGl2PlxyXG4gICAgICAgICAgICA8aDU+V2Vha25lc3NlczwvaDU+XHJcbiAgICAgICAgICAgIDx1bD5cclxuICAgICAgICAgICAgICA8bGk+VGltZSBtYW5hZ2VtZW50PC9saT5cclxuICAgICAgICAgICAgICA8bGk+QSBsaXR0bGUgbG9uZ2VyIHRpbWUgYnVmZmVyIGJldHdlZW4gZGlmZmVyZW50IHByb2dyYW0gcGFydHM8L2xpPlxyXG4gICAgICAgICAgICAgIDxsaT5KdWRnaW5nIHNlc3Npb24gYW5kIHdvcmtzaG9wcyB3ZXJlIHRha2luZyB1cCB3YXkgbW9yZSB0aW1lIHRoYW4gZXhwZWN0ZWQgZHVlIHRvIHNwZWFrZXJzIG5vdCBjYXJpbmcgYWJvdXQgdGhlIHRpbWU8L2xpPlxyXG4gICAgICAgICAgICAgIDxsaT5Pbmx5IG9uZSBwYW5lbCBkaXNjdXNzaW9uPC9saT5cclxuICAgICAgICAgICAgICA8bGk+TWFiZXkgdGhpbmsgYWJvdXQgc2hvcnRlbmluZyB0aGUgcHJvZ3JhbSBwZXIgZGF5IGEgbGl0dGxlPC9saT5cclxuICAgICAgICAgICAgICA8bGk+Tm8gdGltZSBmb3IgdGhlIExhYiBPbHltcGljczwvbGk+XHJcbiAgICAgICAgICAgIDwvdWw+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcblxyXG5cclxuICAgICAgPEg0IHRleHQ9XCJBY2tub3dsZWRnbWVudHNcIi8+XHJcbiAgICAgIDxwPlRoZSBCRkggQ29tbWl0dGVlIGV4dGVuZHMgaGVhcnRmZWx0IHRoYW5rcyB0bzogPC9wPlxyXG4gICAgICA8dWw+XHJcbiAgICAgICAgPGxpPlRoZSA8Yj5pR0VNIFRlYW0gb2YgdGhlIFVuaXZlcnNpdHkgb2YgQmllbGVmZWxkIDwvYj5mb3IgdGhlaXIgaW52YWx1YWJsZSBzdXBwb3J0IGluIG9yZ2FuaXppbmcgYW5kIGV4ZWN1dGluZyB0aGlzIGV2ZW50LiA8L2xpPlxyXG4gICAgICAgIDxsaT5BbGwgdGhlIHNwZWFrZXJzLCB3b3Jrc2hvcCBsZWFkZXJzLCBhbmQgcGFydGljaXBhbnRzIHdobyBjb250cmlidXRlZCB0byBtYWtpbmcgdGhpcyBNZWV0LVVwIGEgc3VjY2Vzcy4gPC9saT5cclxuICAgICAgICA8bGk+ICAgIFRoZSBpR0VNIHRlYW1zIGZvciB0aGVpciBlbmdhZ2VtZW50LCBzY2llbnRpZmljIGV4Y2VsbGVuY2UsIGFuZCBmb3IgbWFraW5nIHRoZSBldmVudCBhbiB1bmZvcmdldHRhYmxlIGV4cGVyaWVuY2UuIDwvbGk+XHJcbiAgICAgICAgPGxpPk91ciBTcG9uc29ycyBhbmQgQ29sbGFib3JhdG9yczwvbGk+XHJcbiAgICAgIDwvdWw+XHJcbiAgICAgIDxINCB0ZXh0PVwiTG9va2luZyBGb3J3YXJkIHRvIDIwMjUgXCIvPlxyXG4gICAgICA8cD5pbiAyMDI1LCB3ZSB3aWxsIHdlbGNvbWUgYWxsIEV1cm9wZWFuIGlHRU0gdGVhbXMgdG8gb3VyIGxvdmVseSB1bml2ZXJzaXR5IGluIEZyYW5rZnVydCBDaXR5LiBUaGlzIE1lZXQtVXAgd2lsbCBwcmVwYXJlIHlvdSBmb3IgdGhlIEdyYW5kIEphbWJvcmVlIGluIFBhcmlzLiBBZnRlciBlc3RhYmxpc2hlZCBhIGJyYW5kIGFuZCBhIHBsYXRmb3JtLCB3ZSBhcmUgZXhjaXRlZCB0byBhbm5vdW5jZSBvdXIgcGxhbnMgZm9yIHRoZSBmdXR1cmU6IDwvcD5cclxuICAgICAgPHVsPlxyXG4gICAgICAgIDxsaT4gICAgPGI+RXhwYW5zaW9uPC9iPjogV2UgYXJlIGFscmVhZHkgcGxhbm5pbmcgdGhlIG5leHQsIGV2ZW4gbGFyZ2VyIGV2ZW50IGF0IHRoZSBVbml2ZXJzaXR5IG9mIEZyYW5rZnVydCBpbiAyMDI1LiBUaGlzIE1lZXQtVXAgd2lsbCBiZSBzaWduaWZpY2FudGx5IGJpZ2dlciBhbmQgbW9yZSBpbnRlcm5hdGlvbmFsLiA8L2xpPlxyXG4gICAgICAgIDxsaT4gICAgPGI+UHJlcGFyYXRpb24gYW5kIEV2YWx1YXRpb248L2I+OiBXaXRoIG1vcmUgcHJlcGFyYXRpb24gdGltZSBhbmQgaW50ZW5zaXZlIGV2YWx1YXRpb24gb2Ygb3VyIGZpcnN0IGV2ZW50J3Mgc3VjY2Vzcywgd2UgYWltIHRvIGJyaW5nIEJGSCB0byBGcmFua2Z1cnQsIG1ha2luZyBpdCBhbiBldmVudCBub3QgdG8gYmUgbWlzc2VkLiA8L2xpPlxyXG4gICAgICAgIDxsaT4gICAgPGI+Q29sbGFib3JhdGlvbiBiZXR3ZWVuIG90aGVyIE1lZXQtVXAgb3JnYW5pemVyczwvYj46IEJ5IHN1cHBvcnRpbmcgb3RoZXIgaUdFTSB0ZWFtcyBwbGFubmluZyB0byBvcmdhbml6ZSBtZWV0IHVwIGluIGRpZmZlcmVudCBsb2NhdGlvbnMgYXJvdW5kIHRoZSBnbG9iZSwgd2UgZm9zdGVyaW5nIHRvIGVuaGFuY2UgdGhlIHBvdGVudGlhbCBhbmQgc3VwcG9ydCBvcmdhbml6YXRpb24gd2l0aCBvdXIgZXhwZXJpZW5jZXMuIDwvbGk+XHJcbiAgICAgIDwvdWw+XHJcbiAgICAgIDxINCB0ZXh0PVwiQ29uY2x1c2lvblwiLz5cclxuICAgICAgPHA+VGhlIEJGSCBFdXJvcGVhbiBNZWV0LVVwIDIwMjQgd2FzIGEgcmVzb3VuZGluZyBzdWNjZXNzLCB1bml0aW5nIG92ZXIgMjAgdGVhbXMgYW5kIDE1MCBwYXJ0aWNpcGFudHMgaW4gYSBjZWxlYnJhdGlvbiBvZiBzY2llbmNlLCBpbm5vdmF0aW9uLCBhbmQgY29sbGFib3JhdGlvbi4gQXMgd2UgbG9vayBmb3J3YXJkIHRvIGZ1dHVyZSBldmVudHMsIHdlIHJlbWFpbiBjb21taXR0ZWQgdG8gb3VyIG1pc3Npb24gb2YgaWduaXRpbmcsIGlubm92YXRpbmcsIGFuZCBpbnNwaXJpbmcgdGhlIG5leHQgZ2VuZXJhdGlvbiBvZiBzY2llbnRpc3RzLiBIZXJlJ3MgdG8gbWFueSBtb3JlIGdyZWF0IG1vbWVudHMgYW5kIGFuIHVuZm9yZ2V0dGFibGUgdGltZSBmb3IgZXZlcnkgcGFydGljaXBhbnQgXHUyMDEzIGNoZWVycyEgPC9wPlxyXG4gICAgICA8ZGl2IGNsYXNzTmFtZT1cInNtYWxsLXJvd1wiPlxyXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sIHJpZ2h0XCI+XHJcbiAgICAgICAgICA8YSBocmVmPVwiaHR0cHM6Ly9iZmhldXJvcGVhbm1lZXR1cC5tb2JpcmlzZXNpdGUuY29tL3BhZ2U2Lmh0bWxcIj48YnV0dG9uIGNsYXNzTmFtZT1cInRhYmxpbmtzIGJ0bjEgTWVkaWNhbFwiPlZpc2l0IHRoZSBXZWJzaXRlPC9idXR0b24+PC9hPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sIGJ1dHRvbi1sZWZ0XCI+XHJcbiAgICAgICAgICA8YSBocmVmPVwiaHR0cHM6Ly93d3cuaW5zdGFncmFtLmNvbS9iZmhfZXVyb21lZXQvXCI+PGJ1dHRvbiBjbGFzc05hbWU9XCJsZWZ0LWJ1dHRvbiB0YWJsaW5rcyBidG4xIE1lZGljYWxcIiA+U3RheSBpbiBUb3VjaDwvYnV0dG9uPjwvYT5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICApXHJcbn1cclxuXHJcbiIsICJcclxuaW1wb3J0IHsgUG9zdGVyUm93LCBQb3N0ZXIgfSBmcm9tIFwiLi4vLi4vLi4vY29tcG9uZW50cy9wb3N0ZXJcIjtcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBQb3N0ZXJHYWxsZXJ5KCl7XHJcbiAgICByZXR1cm4oXHJcbiAgICAgIDw+XHJcbiAgICAgIDxQb3N0ZXJSb3dcclxuICAgICAgcG9zdGVybmFtZTE9XCJiaWVsZWZlbGRcIlxyXG4gICAgICBwb3N0ZXJuYW1lMj1cImhlbHNpbmtpXCJcclxuICAgICAgdXJsMT1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9tZWV0dXAvcG9zdGVycy1hbmQtc3R1ZmYvYmZoLXBvc3Rlci1iaWVsZWZlbGQtMS5wbmdcIlxyXG4gICAgICB1cmwyPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL21lZXR1cC9wb3N0ZXJzLWFuZC1zdHVmZi9iZmgtcG9zdGVyLWhlbHNpbmtpLnBuZ1wiXHJcbiAgICAgIC8+XHJcbiAgICAgIDxQb3N0ZXJSb3dcclxuICAgICAgcG9zdGVybmFtZTE9XCJkcmVzZGVuXCJcclxuICAgICAgcG9zdGVybmFtZTI9XCJkdHVcIlxyXG4gICAgICB1cmwxPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL21lZXR1cC9wb3N0ZXJzLWFuZC1zdHVmZi9iZmgtcG9zdGVyLWRyZXNkZW4ucG5nXCJcclxuICAgICAgdXJsMj1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9tZWV0dXAvcG9zdGVycy1hbmQtc3R1ZmYvYmZoLXBvc3Rlci1kdHUucG5nXCJcclxuICAgICAgLz5cclxuICAgICAgPFBvc3RlclJvd1xyXG4gICAgICBwb3N0ZXJuYW1lMT1cImVpbmRob3ZlblwiXHJcbiAgICAgIHBvc3Rlcm5hbWUyPVwiZnJlaWJ1cmdcIlxyXG4gICAgICB1cmwxPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL21lZXR1cC9wb3N0ZXJzLWFuZC1zdHVmZi9iZmgtcG9zdGVyLWVpbmRob3Zlbi5wbmdcIlxyXG4gICAgICB1cmwyPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL21lZXR1cC9wb3N0ZXJzLWFuZC1zdHVmZi9iZmgtcG9zdGVyLWZyZWlidXJnLnBuZ1wiXHJcbiAgICAgIC8+XHJcbiAgICAgIDxQb3N0ZXJSb3dcclxuICAgICAgcG9zdGVybmFtZTE9XCJsZXV2ZW5cIlxyXG4gICAgICBwb3N0ZXJuYW1lMj1cInN5bmJpb1wiXHJcbiAgICAgIHVybDE9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvbWVldHVwL3Bvc3RlcnMtYW5kLXN0dWZmL2JmaC1wb3N0ZXItbGV1dmVuLnBuZ1wiXHJcbiAgICAgIHVybDI9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvbWVldHVwL3Bvc3RlcnMtYW5kLXN0dWZmL2JmaC1wb3N0ZXItc3luYmlvLWNvbXByZXNzZWQud2VicFwiXHJcbiAgICAgIC8+XHJcbiAgICAgIDxQb3N0ZXJSb3dcclxuICAgICAgcG9zdGVybmFtZTE9XCJoYW1idXJnXCJcclxuICAgICAgcG9zdGVybmFtZTI9XCJhYWNoZW5cIlxyXG4gICAgICB1cmwxPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL21lZXR1cC9wb3N0ZXJzLWFuZC1zdHVmZi9iZmgtcG9zdGVyLWhhbWJ1cmcucG5nXCJcclxuICAgICAgdXJsMj1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9tZWV0dXAvcG9zdGVycy1hbmQtc3R1ZmYvYmZoLXBvc3Rlci1hYWNoZW4ucG5nXCJcclxuICAgICAgLz5cclxuICAgICAgIDxQb3N0ZXJSb3dcclxuICAgICAgcG9zdGVybmFtZTE9XCJ3YWdlbmluZ2VuXCJcclxuICAgICAgcG9zdGVybmFtZTI9XCJoYW5ub3ZlclwiXHJcbiAgICAgIHVybDE9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvbWVldHVwL3Bvc3RlcnMtYW5kLXN0dWZmL2JmaC1wb3N0ZXItd2FnZW5pbmdlbi5wbmdcIlxyXG4gICAgICB1cmwyPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL21lZXR1cC9wb3N0ZXJzLWFuZC1zdHVmZi9iZmgtcG9zdGVyLWhhbm5vdmVyLnBuZ1wiXHJcbiAgICAgIC8+XHJcbiAgICAgIDxQb3N0ZXIgcG9zdGVybmFtZT1cInN0b2NraG9sbVwiIHVybD1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9tZWV0dXAvcG9zdGVycy1hbmQtc3R1ZmYvYmRoLXBvc3Rlci1zdG9ja2hvbG0ucG5nXCIvPlxyXG4gIFxyXG4gICAgIFxyXG4gICAgICA8Lz5cclxuICAgIClcclxuICB9IiwgImltcG9ydCB7IEJGSFRpbWVsaW5lIH0gZnJvbSBcIi4uLy4uLy4uL2NvbXBvbmVudHMvQkZILVRpbWVsaW5lXCI7XHJcbmltcG9ydCBCRkhwZGYgZnJvbSBcIi4uLy4uLy4uL2NvbXBvbmVudHMvUGRmc1wiO1xyXG5pbXBvcnQgQkZIR2FsbGVyeSBmcm9tIFwiLi4vLi4vLi4vY29tcG9uZW50cy9QaG90by1ncmlkXCI7XHJcbmltcG9ydCB7IFNlY3Rpb24sIFN1YmVzY3Rpb24gfSBmcm9tIFwiLi4vLi4vLi4vY29tcG9uZW50cy9zZWN0aW9uc1wiO1xyXG5pbXBvcnQgeyBBYm91dCB9IGZyb20gXCIuL2JmaC1hYm91dFwiO1xyXG5pbXBvcnQgeyBQb3N0ZXJHYWxsZXJ5IH0gZnJvbSBcIi4vcG9zdGVyZ2FsbGVyeVwiO1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIE1lZXRVUCgpe1xyXG5cclxuICAgIHJldHVybihcclxuICAgICAgICA8U2VjdGlvbiB0aXRsZT1cIkJGSCBFdXJvcGVhbiBNZWV0VXBcIiBpZD1cIkJGSCBFdXJvcGVhbiBNZWV0VXBcIj5cclxuICAgICAgICAgIDxTdWJlc2N0aW9uIHRpdGxlPVwiQWZ0ZXJ2aWRlb1wiIGlkPVwiQkZIIEV1cm9wZWFuIE1lZXRVcDFcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJiZy12aWRlby1jb250YWluZXJcIj5cclxuICAgICAgICAgICAgPGlmcmFtZSB0aXRsZT1cIkJpZWxlZmVsZC1DZUJpVGVjOiBNZWV0VXAgKDIwMjQpIFtFbmdsaXNoXVwiIHdpZHRoPVwiMTAwJVwiIGhlaWdodD1cIjcwMHB4XCIgc3JjPVwiaHR0cHM6Ly92aWRlby5pZ2VtLm9yZy92aWRlb3MvZW1iZWQvMzBiOGE2ZTAtMmI0YS00NjE4LTg4NjctNGViOGU2YTUyOTM2XCIgZnJhbWVCb3JkZXI9XCIwXCIgYWxsb3dGdWxsU2NyZWVuPXt0cnVlfSBzYW5kYm94PVwiYWxsb3ctc2FtZS1vcmlnaW4gYWxsb3ctc2NyaXB0cyBhbGxvdy1wb3B1cHMgYWxsb3ctZm9ybXNcIj48L2lmcmFtZT5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8L1N1YmVzY3Rpb24+XHJcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJcIiAvKiBzdHlsZT17eyBwYWRkaW5nVG9wOiBcIjV2d1wifX0gKi8+XHJcbiAgICAgICAgPFN1YmVzY3Rpb24gdGl0bGU9XCJUaW1lbGluZVwiIGlkPVwiQkZIIEV1cm9wZWFuIE1lZXRVcDJcIj5cclxuICAgICAgICAgIDxCRkhUaW1lbGluZS8+XHJcbiAgICAgICAgPC9TdWJlc2N0aW9uPiBcclxuICAgICAgICA8U3ViZXNjdGlvbiB0aXRsZT1cIkFib3V0XCIgaWQ9XCJCRkggRXVyb3BlYW4gTWVldFVwM1wiPlxyXG4gICAgICAgICAgPEFib3V0Lz5cclxuICAgICAgICA8L1N1YmVzY3Rpb24+IFxyXG4gICAgICAgIDxTdWJlc2N0aW9uIHRpdGxlPVwiVmlydHVhbCBQb3N0ZXIgRXhoaWJpdGlvblwiIGlkPVwiQkZIIEV1cm9wZWFuIE1lZXRVcDRcIj5cclxuICAgICAgICAgIDxQb3N0ZXJHYWxsZXJ5Lz5cclxuICAgICAgICA8L1N1YmVzY3Rpb24+IFxyXG4gICAgICAgIDxTdWJlc2N0aW9uIHRpdGxlPVwiR2FsbGVyeVwiIGlkPVwiQkZIIEV1cm9wZWFuIE1lZXRVcDVcIj5cclxuICAgICAgICAgIDxCRkhHYWxsZXJ5Lz5cclxuICAgICAgICA8L1N1YmVzY3Rpb24+IFxyXG4gICAgICAgIDxTdWJlc2N0aW9uIHRpdGxlPVwiRG93bmxvYWRzXCIgaWQ9XCJCRkggRXVyb3BlYW4gTWVldFVwNlwiPlxyXG4gICAgICAgICAgPEJGSHBkZi8+XHJcbiAgICAgICAgPC9TdWJlc2N0aW9uPiBcclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9TZWN0aW9uPlxyXG4gICAgKVxyXG59XHJcbiIsICJcclxuaW1wb3J0IHsgUERGIH0gZnJvbSBcIi4uLy4uL2NvbXBvbmVudHMvUGRmc1wiO1xyXG5pbXBvcnQgeyBTdWJlc2N0aW9uIH0gZnJvbSBcIi4uLy4uL2NvbXBvbmVudHMvc2VjdGlvbnNcIjtcclxuaW1wb3J0IHsgdXNlTmF2aWdhdGlvbiB9IGZyb20gXCIuLi8uLi91dGlsc1wiO1xyXG5cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBDb2xsYWJDb250cmlidXRpb24oKXtcclxuICAgIGNvbnN0IHtnb1RvUGFnZXNBbmRPcGVuVGFifSA9IHVzZU5hdmlnYXRpb24oKTsgXHJcbiAgICBcclxuICAgIHJldHVybihcclxuICAgICAgICA8U3ViZXNjdGlvbiB0aXRsZT1cIkxOUCBIYW5kYm9va1wiIGlkPVwiT3VyIENvbGxhYm9yYXRpb25zMlwiPlxyXG4gICAgICAgICAgICA8cD5JbiBjb2xsYWJvcmF0aW9uIHdpdGggdGhlIGlHRU0gdGVhbXMgPGEgaHJlZj1cImh0dHBzOi8vMjAyNC5pZ2VtLndpa2kvbGlua29waW5nL1wiPkxpbmtvcGluZzwvYT4sIDxhIGhyZWY9XCJodHRwczovLzIwMjQuaWdlbS53aWtpL3BhdHJhcy9cIj5QYXRyYXM8L2E+LCA8YSBocmVmPVwiaHR0cHM6Ly8yMDI0LmlnZW0ud2lraS9yYWRib3VkLXVuaXZlcnNpdHkvdGVhbVwiPlJhZGJvdWQgVW5pdmVyc2l0eTwvYT4gYW5kIDxhIGhyZWY9XCJodHRwczovLzIwMjQuaWdlbS53aWtpL3Rlcm1vc3otc2VseWUtaHVuL1wiPlRFUk1PU1otU2VseWUtSFVOPC9hPiwgd2UgY29udHJpYnV0ZWQgYSBjb21wcmVoZW5zaXZlIG92ZXJ2aWV3IG9mIGxpcGlkLWJhc2VkIGRlbGl2ZXJ5IHN5c3RlbXMuIE91ciBjb250cmlidXRpb24gdG8gdGhlIGhhbmRib29rIGFpbXMgdG8gcHJvdmlkZSBmdXR1cmUgaUdFTSB0ZWFtcyB3aXRoIGEgZGVlcGVyIHVuZGVyc3RhbmRpbmcgb2YgTE5QIChMaXBpZCBOYW5vcGFydGljbGUpIGRldmVsb3BtZW50LiBCeSBicmluZ2luZyB0b2dldGhlciBkaXZlcnNlIHRlYW1zIGFuZCBpbm5vdmF0aXZlIHNvbHV0aW9ucywgd2Ugc3RyaXZlIHRvIG1ha2UgYSBwb3NpdGl2ZSBpbXBhY3Qgb24gdGhlIGVtZXJnaW5nIGZpZWxkIG9mIExOUCBkZXNpZ24uIE91ciBnb2FsIGlzIHRvIGVuaGFuY2UgdGhlIGFjY2Vzc2liaWxpdHkgb2YgdmFyaW91cyBMTlAgZm9ybXVsYXRpb25zIGFuZCBhZGFwdCB0aGlzIHByb21pc2luZyB0ZWNobm9sb2d5IGZvciBhIHdpZGUgcmFuZ2Ugb2YgdGhlcmFwZXV0aWMgYXBwbGljYXRpb25zLiA8L3A+XHJcbiAgICAgICAgICAgIDxwPkRvd25sb2FkIG91ciBMTlAgSGFuYm9vayB0aGF0IHdhcyBjcmVhdGVkIGluIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlc0FuZE9wZW5UYWIoJ2NvbGxzMjAyNCcsICcvaHVtYW4tcHJhY3RpY2VzJyl9PmNvb3BlcmF0aW9uPC9hPiAgd2l0aCB0aGUgdGVhbSA8YSBocmVmPVwiaHR0cHM6Ly8yMDI0LmlnZW0ud2lraS9saW5rb3BpbmcvXCI+TGlua1x1MDBGNnBpbmc8L2E+LjwvcD5cclxuICAgICAgICAgICAgPFBERiBsaW5rPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGRmcy9saXBvc29tZXMtaGFuZGJvb2sucGRmXCIgbmFtZT1cImxpcG9zb21lcy1oYW5kYm9vay5wZGZcIi8+XHJcbiAgICAgICAgPC9TdWJlc2N0aW9uPlxyXG5cclxuICAgIClcclxufSIsICJcclxuaW1wb3J0IHsgSDQgfSBmcm9tIFwiLi4vLi4vY29tcG9uZW50cy9IZWFkaW5nc1wiO1xyXG5pbXBvcnQgeyBQREYsIFR3b0xpbmVQREYgfSBmcm9tIFwiLi4vLi4vY29tcG9uZW50cy9QZGZzXCI7XHJcblxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIFBhdGllbnRDb250cmlidXRpb24oKXtcclxuXHJcbiAgICByZXR1cm4oXHJcbiAgICAgICA8PlxyXG4gICAgIFxyXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPSdyb3cgYWxpZ24taXRlbXMtY2VudGVyJz5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSdjb2wgICc+XHJcbiAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJQYXRpZW50IGNvbnNlbnQgZm9ybVwiLz5cclxuICAgICAgICAgICAgICAgIDxUd29MaW5lUERGIGxpbms9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9wZGZzL3BhdGllbnRlbmVpbndpbGxpZ3VuZy1tdXN0ZXJ2b3JsYWdlLWlnZW0tMi5wZGZcIiBuYW1lPVwicGF0aWVudGVuZWlud2lsbGlndW5nLW11c3RlcnZvcmxhZ2UtaWdlbS0yLnBkZlwiLz5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J3NlcGVyYXRvci0yIGNvbC0yJz5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J2NvbCAgJz5cclxuICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiUXVlc3Rpb25uYWlyZSBmb3Igc2FtcGxlIGNvbGxlY3Rpb24gXCIvPlxyXG4gICAgICAgICAgICAgICAgPFR3b0xpbmVQREYgbGluaz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3BkZnMvdHJhbnNsYXRlZC1xdWVzdGlvbm5haXJlLWNmLXBhdGllbnRzLnBkZlwiIG5hbWU9XCJ0cmFuc2xhdGVkLXF1ZXN0aW9ubmFpcmUtY2YtcGF0aWVudHMucGRmXCIvPlxyXG4gICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICA8cD5XaGVuIHdvcmtpbmcgd2l0aCBwcmltYXJ5IGN1bHR1cmVzLCBpdCBpcyBleHRyZW1lbHkgaW1wb3J0YW50IHRvIGNvbnNpZGVyIHRoZSBiaW9ldGhpY2FsIGFzcGVjdHMgb2YgdGhlIHByb2plY3QuIFRvIGFkZHJlc3MgdGhpcywgd2Ugc2F0IGRvd24gd2l0aCB0aGUgRXRoaWNzIE9mZmljZXIgYXQgQmllbGVmZWxkIFVuaXZlcnNpdHksIERyLiBCZXJlbnMsIGFuZCBkaXNjdXNzZWQgdGhlIG1hdHRlciB3aXRoIGhlci4gQXMgYSByZXN1bHQsIHdlIGNyZWF0ZWQgYSBwYXRpZW50IGNvbnNlbnQgZm9ybSBmb3IgdGhlIGRvbm9ycyBvZiBwcmltYXJ5IGNlbGxzLCB3aGljaCB3ZSBhbHNvIHdhbnQgdG8gcHJlc2VudCBhcyBhIHRlbXBsYXRlIGZvciBmdXR1cmUgR2VybWFuIGlHRU0gdGVhbXMuIDxiPkhvd2V2ZXIsIHdlIHdhbnQgdG8gZW1waGFzaXplIHRoYXQgaXQgaXMgbm90IGd1YXJhbnRlZWQgdG8gYmUgY29tcHJlaGVuc2l2ZSwgbm9yIGRvZXMgaXQgaGF2ZSBhbnkgbGVnYWwgYXBwcm92YWwuPC9iPjwvcD5cclxuICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJIeWdpZW5lIENvbmNlcHRcIi8+XHJcbiAgICAgICAgICAgICAgIDxQREYgICBsaW5rPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGRmcy9maW5hbC1oeWdpZW5lLWNvbmNlcHQucGRmXCIgbmFtZT1cImZpbmFsLWh5Z2llbmUtY29uY2VwdC5wZGZcIi8+XHJcbiAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgPC9kaXY+XHJcblxyXG5cclxuICAgIDwvPlxyXG5cclxuICAgIClcclxufSIsICJpbXBvcnQgeyAgSDQgfSBmcm9tIFwiLi4vLi4vY29tcG9uZW50cy9IZWFkaW5nc1wiO1xyXG5pbXBvcnQgeyBQREYgfSBmcm9tIFwiLi4vLi4vY29tcG9uZW50cy9QZGZzXCI7XHJcbmltcG9ydCB7IFN1YmVzY3Rpb24gfSBmcm9tIFwiLi4vLi4vY29tcG9uZW50cy9zZWN0aW9uc1wiO1xyXG5pbXBvcnQgeyBQYXRpZW50Q29udHJpYnV0aW9uIH0gZnJvbSBcIi4vcGF0aWVudC1jb250cmlidXRpb25cIjtcclxuXHJcblxyXG5leHBvcnQgZnVuY3Rpb24gU2FmZXR5Q29udHJpYnV0aW9uKCl7XHJcblxyXG4gICAgcmV0dXJuKFxyXG4gICAgICAgPD5cclxuICAgICAgICA8U3ViZXNjdGlvbiB0aXRsZT1cIkJpb3NhZmV0eSAmIFNlY3VyaXR5XCIgaWQ9XCJPdXIgQ29udHJpYnV0aW9uczFcIiA+XHJcbiAgICAgICAgICAgIDxINCB0ZXh0PVwiUHJpbWFyeSBDdWx0dXJlIFNhZmV0eSBHdWlkZWxpbmVcIi8+XHJcbiAgICAgICAgICAgIDxwPkluIHRoZSBlYXJseSBwaGFzZXMgb2Ygb3VyIHByb2plY3QsIHdlIGVuY291bnRlcmVkIHNldmVyYWwgY2hhbGxlbmdlcyB3aGlsZSB3b3JraW5nIHRvIGJyaW5nIGl0IHRvZ2V0aGVyLiBXZSBxdWlja2x5IGRlY2lkZWQgdG8gZm9jdXMgb24gaHVtYW4gYmlvbWF0ZXJpYWxzLCBzcGVjaWZpY2FsbHkgY3VsdGl2YXRpbmcgcHJpbWFyeSBodW1hbiBuYXNhbCBlcGl0aGVsaWFsIGNlbGxzIGZyb20gYm90aCAgQ3lzdGljIEZpYnJvc2lzIChDRikgcGF0aWVudHMgYW5kIHdpbGQtdHlwZSBjb250cm9scy4gVG8gZW5zdXJlIGNvbXBsaWFuY2UsIHdlIGNhcmVmdWxseSBldmFsdWF0ZWQgdGhlIHNhZmV0eSByZWd1bGF0aW9ucyBvZiBvdXIgaW5zdGl0dXRpb24gYW5kIGdvdmVybm1lbnQuIE91ciBjb250cmlidXRpb24gaW5jbHVkZXMgdGhyZWUga2V5IGVsZW1lbnRzOiA8L3A+XHJcbiAgICAgICAgICAgIDxvbD5cclxuICAgICAgICAgICAgICAgIDxsaT4gICAgQSBndWlkZWxpbmUgb3V0bGluaW5nIHRoZSBwcm9wZXIgaGFuZGxpbmcgb2YgYmlvbWF0ZXJpYWxzIGFjY29yZGluZyB0byBCU0wyIHN0YW5kYXJkcywgYWxvbmcgd2l0aCBhZGRpdGlvbmFsIHNhZmV0eSBtZWFzdXJlcyB0byBlbnN1cmUgc2VjdXJlIGV4cGVyaW1lbnRhbCBkZXNpZ24uIDwvbGk+XHJcbiAgICAgICAgICAgICAgICA8bGk+ICAgIEEgY2xpbmljYWwgdHJpYWwtc3R5bGUgcXVlc3Rpb25uYWlyZSBkZXNpZ25lZCB0byBhc3Nlc3MgdGhlIG1lZGljYWwgaGlzdG9yeSBvZiBwYXJ0aWNpcGFudHMgZG9uYXRpbmcgbmFzYWwgZXBpdGhlbGlhbCBjZWxscy4gPC9saT5cclxuICAgICAgICAgICAgICAgIDxsaT4gICAgQSBoeWdpZW5lIHByb3RvY29sIGFpbWVkIGF0IGltcHJvdmluZyBzYWZldHkgYW5kIGNsZWFubGluZXNzIHN0YW5kYXJkcyBpbiB2YXJpb3VzIGluc3RpdHV0aW9ucyBhbmQgc2FuaXRhcnkgZmFjaWxpdGllcy4gPC9saT5cclxuICAgICAgICAgICAgPC9vbD5cclxuICAgICAgICAgICAgPFBERiBsaW5rPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGRmcy9wcmltYXJ5LWN1bHR1cmUtZ3VpZGVsaW5lLnBkZlwiIG5hbWU9XCJwcmltYXJ5LWN1bHR1cmUtZ3VpZGVsaW5lLnBkZlwiLz5cclxuICAgICAgICAgICAgPFBhdGllbnRDb250cmlidXRpb24vPlxyXG4gICAgICAgICAgICA8cD5CeSBjb250cmlidXRpbmcgdGhlc2UgZnJhbWV3b3Jrcywgd2UgZW5hYmxlIGZ1dHVyZSBpR0VNIHRlYW1zIHRvIG92ZXJjb21lIHBvdGVudGlhbCBsaW1pdGF0aW9ucyB0aGF0IG1heSBhcmlzZSBkdXJpbmcgcHJvamVjdCBkZXZlbG9wbWVudC4gVGhlc2UgcmVzb3VyY2VzIHByb3ZpZGUgY2xlYXIgZ3VpZGVsaW5lcyBhbmQgdG9vbHMgdG8gZW5zdXJlIHNhZmV0eSwgcmVndWxhdG9yeSBjb21wbGlhbmNlLCBhbmQgZWZmaWNpZW50IHdvcmtmbG93LCBhbGxvd2luZyB0ZWFtcyB0byBmb2N1cyBvbiBhZHZhbmNpbmcgdGhlaXIgcmVzZWFyY2ggd2l0aG91dCBmYWNpbmcgc2ltaWxhciBjaGFsbGVuZ2VzLiA8L3A+XHJcbiAgICAgICAgPC9TdWJlc2N0aW9uPlxyXG4gICAgPC8+XHJcblxyXG4gICAgKVxyXG59IiwgImltcG9ydCB7IFRhYkNvbnRleHQsIFRhYkxpc3QsIFRhYlBhbmVsIH0gZnJvbSBcIkBtdWkvbGFiXCI7XHJcbmltcG9ydCB7IEJveCwgVGFiIH0gZnJvbSBcIkBtdWkvbWF0ZXJpYWxcIjtcclxuaW1wb3J0IFJlYWN0IGZyb20gXCJyZWFjdFwiO1xyXG5pbXBvcnQgeyBTdGFydGVkIH0gZnJvbSBcIi4vd2lraS1zdGFydFwiO1xyXG5pbXBvcnQgeyBTb3VyY2VzIH0gZnJvbSBcIi4vd2lraS1zb3VyY2VzXCI7XHJcbmltcG9ydCB7IFRyb3VibGVzaG9vdGluZyB9IGZyb20gXCIuL3Ryb3VibGVzaG9vdGluZ1wiO1xyXG5pbXBvcnQgeyBXaWtpT3ZlcnZpZXcgfSBmcm9tIFwiLi93aWtpLW92ZXJ2aWV3XCI7XHJcbmltcG9ydCB7IFdpa2lEb3duIH0gZnJvbSBcIi4vV2lraS1kb3dubG9hZHNcIjtcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBXaWtpVGFicygpIHtcclxuICAgIGNvbnN0IFt2YWx1ZSwgc2V0VmFsdWVdID0gUmVhY3QudXNlU3RhdGUoJzEnKTtcclxuICBcclxuICAgIGNvbnN0IGhhbmRsZUNoYW5nZSA9IChfZXZlbnQ6IFJlYWN0LlN5bnRoZXRpY0V2ZW50LCBuZXdWYWx1ZTogc3RyaW5nKSA9PiB7XHJcbiAgICAgIHNldFZhbHVlKG5ld1ZhbHVlKTtcclxuICAgIH07XHJcbiAgXHJcbiAgICByZXR1cm4gKFxyXG4gICAgICA8Qm94IHN4PXt7IHdpZHRoOiAnMTAwJScsIHR5cG9ncmFwaHk6ICdib2R5MScgfX0+XHJcbiAgICAgICAgPFRhYkNvbnRleHQgdmFsdWU9e3ZhbHVlfT5cclxuICAgICAgICAgIDxCb3ggc3g9e3sgYm9yZGVyQm90dG9tOiAxLCBib3JkZXJDb2xvcjogJ2RpdmlkZXInIH19PlxyXG4gICAgICAgICAgICA8VGFiTGlzdCBvbkNoYW5nZT17aGFuZGxlQ2hhbmdlfSBhcmlhLWxhYmVsPVwibGFiIEFQSSB0YWJzIGV4YW1wbGVcIj5cclxuICAgICAgICAgICAgICA8VGFiIGxhYmVsPVwiT3ZlcnZpZXdcIiB2YWx1ZT1cIjFcIiAvPlxyXG4gICAgICAgICAgICAgIDxUYWIgbGFiZWw9XCJHZXR0aW5nIHN0YXJ0ZWRcIiB2YWx1ZT1cIjZcIiAvPlxyXG4gICAgICAgICAgICAgIDxUYWIgbGFiZWw9XCJUcm91Ymxlc2hvb3RpbmdcIiB2YWx1ZT1cIjJcIiAvPlxyXG4gICAgICAgICAgICAgIDxUYWIgbGFiZWw9XCJDb21wb25lbnRzXCIgdmFsdWU9XCIzXCIgLz5cclxuICAgICAgICAgICAgICA8VGFiIGxhYmVsPVwiRG93bmxvYWRzXCIgdmFsdWU9XCI0XCIgLz5cclxuICAgICAgICAgICAgICA8VGFiIGxhYmVsPVwiUmVzb3VyY2VzXCIgdmFsdWU9XCI1XCIgLz5cclxuICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgPC9UYWJMaXN0PlxyXG4gICAgICAgICAgPC9Cb3g+XHJcbiAgICAgICAgICA8VGFiUGFuZWwgdmFsdWU9XCIxXCI+IDxXaWtpT3ZlcnZpZXcvPiAgPC9UYWJQYW5lbD5cclxuICAgICAgICAgIDxUYWJQYW5lbCB2YWx1ZT1cIjZcIj4gPFN0YXJ0ZWQvPiAgPC9UYWJQYW5lbD5cclxuICAgICAgICAgIDxUYWJQYW5lbCB2YWx1ZT1cIjJcIj4gPFRyb3VibGVzaG9vdGluZy8+IDwvVGFiUGFuZWw+XHJcbiAgICAgICAgICA8VGFiUGFuZWwgdmFsdWU9XCIzXCI+ICA8L1RhYlBhbmVsPlxyXG4gICAgICAgICAgPFRhYlBhbmVsIHZhbHVlPVwiNFwiPiA8V2lraURvd24vPiAgPC9UYWJQYW5lbD5cclxuICAgICAgICAgIDxUYWJQYW5lbCB2YWx1ZT1cIjVcIj4gIDxTb3VyY2VzLz4gPC9UYWJQYW5lbD5cclxuICAgICAgICA8L1RhYkNvbnRleHQ+XHJcbiAgICAgIDwvQm94PlxyXG4gICAgKTtcclxuICB9XHJcbiAgIiwgImV4cG9ydCBmdW5jdGlvbiBTdGFydGVkKCl7XHJcblxyXG4gICAgcmV0dXJuKFxyXG4gICAgICA8PlxyXG4gICAgICA8aDM+RGlmZmVyZW5jZXMgYmV0d2VlbiBSZWFjdCBhbmQgcGxhaW4gSFRNTDwvaDM+XHJcbiAgICAgIDxwPlRoZXNlIGNhbiBsZWFkIHRvIGNvbmZ1c2luZyBlcnJvcnMgaWYgeW91IGFyZSB1c2VkIHRvIEhUTUwuPC9wPlxyXG4gICAgICA8dGFibGU+XHJcbiAgICAgICAgPHRoZWFkPlxyXG4gICAgICAgICAgPHRyPlxyXG4gICAgICAgICAgICA8dGg+PC90aD5cclxuICAgICAgICAgICAgPHRoPlBsYWluIEhUTUw8L3RoPlxyXG4gICAgICAgICAgICA8dGg+VXNpbmcgUmVhY3Q8L3RoPlxyXG4gICAgICAgICAgPC90cj5cclxuICAgICAgICA8L3RoZWFkPlxyXG4gICAgICAgIDx0Ym9keT5cclxuICAgICAgICA8dHI+XHJcbiAgICAgICAgICA8dGg+IDxjb2RlPiZsdDt0YWdzJmd0OyA8L2NvZGU+IDwvdGg+XHJcbiAgICAgICAgICA8dGg+IFxyXG4gICAgICAgICAgICA8cD4gTW9zdCB0YWdzIGhhdmUgdG8gYmUgb3BlbmVkIGFuZCBjbG9zZWQsIGJ1dCBzb21lIGNhbiBiZSBvbmx5IG9wZW5lZC4gPC9wPiBcclxuICAgICAgICAgICAgPHA+IGUuZy4gaW1nLCBiciwgLi4uIDxjb2RlPiAmbHQ7aW1nIHNyYzpcInNvbWVzb3VyY2VcIiBhbHQ9XCJhbHRcIiZndDsgPC9jb2RlPiA8L3A+XHJcbiAgICAgICAgICA8L3RoPlxyXG4gICAgICAgICAgPHRoPlxyXG4gICAgICAgICAgICA8cD4gRXZlcnkgdGFnIGhhcyB0byBiZSBjbG9zZWQuICA8L3A+XHJcbiAgICAgICAgICAgIDxwPiBlLmcuIGltZywgYnIsIC4uLiBcclxuICAgICAgICAgICAgICA8Y29kZT4gJmx0O2ltZyBzcmM6XCJzb21lc291cmNlXCIgYWx0PVwiYWx0XCIvJmd0OzwvY29kZT4gb3IgXHJcbiAgICAgICAgICAgICAgPGNvZGU+ICZsdDtpbWcgc3JjOlwic29tZXNvdXJjZVwiIGFsdD1cImFsdFwiJmd0OyAmbHQ7L2ltZyZndDsgPC9jb2RlPiAgPC9wPlxyXG4gICAgICAgICAgPC90aD5cclxuICAgICAgICA8L3RyPlxyXG4gICAgICAgIDx0cj5cclxuICAgICAgICAgIDx0aD5BdHRyaWJ1dGUgTmFtZXM8L3RoPlxyXG4gICAgICAgICAgPHRoPlxyXG4gICAgICAgICAgICA8cD4gR2xvYmFsIGF0dHJpYnV0ZSBuYW1lcyBhcmUgYWx3YXlzIHdyaXR0ZW4gaW4gbG93ZXJjYXNlIGFuZCB0d28gd29yZHMgYXJlIGZ1c2VkIGludG8gb25lIGJ5IFwiLVwiLiA8L3A+XHJcbiAgICAgICAgICAgIDxwPiBFLmcuIFwiY2xhc3NcIiwgXCJjaGFyc2V0XCIsIC4uLjwvcD5cclxuICAgICAgICAgICAgPHA+IFRoaXMgaXMgYWxzbyB0aGUgY2FzZSB3aGVuIHVzaW5nIHRoZSBzeWxlLWF0dHJpYnV0ZS4gPC9wPlxyXG4gICAgICAgICAgICA8cD4gRS5nLiA8Y29kZT5zdHlsZT1cImNvbG9yOmJsdWU7IHRleHQtYWxpZ246Y2VudGVyXCI8L2NvZGU+PC9wPlxyXG4gICAgICAgICAgPC90aD5cclxuICAgICAgICAgIDx0aD4gXHJcbiAgICAgICAgICAgIDxwPkdsb2JhbCBhdHRyaWJ1dGUgbmFtZXMgYXJlIGdlbmVyYWxseSB3cml0dGVuIGluIGxvd2VyY2FzZSBidXQgdXNlIHRoZSBjYW1lbCBjYXNlIGlmIHR3byB3b3JkcyBoYXZlIHRvIGJlIGZ1c2VkLiBTb21lIGF0dHJ1YnV0ZXMgaGF2ZSBzbGlnaHRseSBkaWZmZXJlbnQgbmFtZXMuPC9wPlxyXG4gICAgICAgICAgICA8cD5FLmcuIFwiY2xhc3NOYW1lXCIsIFwiY2hhclNldFwiLCAuLi48L3A+XHJcbiAgICAgICAgICAgIDxwPiBUaGlzIGlzIGFsc28gdGhlIGNhc2Ugd2hlbiB1c2luZyB0aGUgc3R5bGUtYXR0cmlidXRlLjwvcD5cclxuICAgICAgICAgICAgPHA+IEUuZy4gPGNvZGU+c3R5bGU9JiMxMjM7JiMxMjM7dmVjdG9yRWZmZWN0OiAmcXVvdDtub24tc2NhbGluZy1zdHJva2UmcXVvdDsmIzEyNTsmIzEyNTs8L2NvZGU+PC9wPlxyXG4gICAgICAgICAgICA8cD5UaGlzIGRvZXMgbm90IGFwcGx5IHRvIHRoZSBjc3MgZmlsZSE8L3A+XHJcbiAgICAgICAgICA8L3RoPlxyXG4gICAgICAgIDwvdHI+XHJcbiAgICAgICAgPHRyPlxyXG4gICAgICAgICAgPHRoPlN0eWxlIGF0dHJpYnV0ZTwvdGg+XHJcbiAgICAgICAgICA8dGg+XHJcbiAgICAgICAgICAgIDxwPiBzdHlsZT1cIjx2YXI+YXR0cmlidXRlPC92YXI+OiA8dmFyPnZhbHVlPC92YXI+OyA8dmFyPmF0dHJpYnV0ZTwvdmFyPjogPHZhcj52YWx1ZTwvdmFyPlwiIDwvcD5cclxuICAgICAgICAgIDwvdGg+XHJcbiAgICAgICAgICA8dGg+XHJcbiAgICAgICAgICAgIDxwPiBzdHlsZT0mIzEyMzsmIzEyMzs8dmFyPmF0dHJpYnV0ZTwvdmFyPjogXCI8dmFyPnZhbHVlPC92YXI+XCIsIDx2YXI+YXR0cmlidXRlPC92YXI+OiBcIjx2YXI+dmFsdWU8L3Zhcj5cIiAmIzEyNTsmIzEyNTs8L3A+XHJcbiAgICAgICAgICA8L3RoPlxyXG4gICAgICAgIDwvdHI+XHJcbiAgICAgICAgPC90Ym9keT5cclxuICAgICAgPC90YWJsZT5cclxuICAgICAgPGgzPkdvb2QgdG8ga25vd3M8L2gzPlxyXG4gICAgICA8Lz5cclxuICAgIClcclxuICB9XHJcbiAgIiwgImltcG9ydCB7IHVzZUVmZmVjdCwgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCc7XHJcbmltcG9ydCB7IHVzZUxvY2F0aW9uIH0gZnJvbSAncmVhY3Qtcm91dGVyLWRvbSc7XHJcbmludGVyZmFjZSBJUHJvcHMge1xyXG4gIG9wZW4/OiBib29sZWFuO1xyXG4gIGNoaWxkcmVuOiBSZWFjdC5SZWFjdE5vZGU7XHJcbiAgdGl0bGU6IHN0cmluZztcclxuICBpZDogc3RyaW5nO1xyXG59XHJcblxyXG5cclxuICBcclxuICBleHBvcnQgY29uc3QgQ29sbGFwc2libGU6IFJlYWN0LkZDPElQcm9wcz4gPSAoeyBvcGVuID0gZmFsc2UsIGNoaWxkcmVuLCB0aXRsZSwgaWQgfSkgPT4ge1xyXG4gICAgY29uc3QgW2lzT3Blbiwgc2V0SXNPcGVuXSA9IHVzZVN0YXRlKG9wZW4pO1xyXG4gICAgY29uc3QgbG9jYXRpb24gPSB1c2VMb2NhdGlvbigpO1xyXG5cclxuICAgIHVzZUVmZmVjdCgoKSA9PiB7XHJcbiAgICAgICAgLy8gQ2hlY2sgaWYgdGhlIGN1cnJlbnQgVVJMIGhhcyB0aGUgc3BlY2lmaWMgY29sbGFwc2UgSURcclxuICAgICAgICBjb25zdCBwYXJhbXMgPSBuZXcgVVJMU2VhcmNoUGFyYW1zKGxvY2F0aW9uLnNlYXJjaCk7XHJcbiAgICAgICAgY29uc3QgY29sbGFwc2VJZCA9IHBhcmFtcy5nZXQoJ2NvbGxhcHNlSWQnKTtcclxuXHJcbiAgICAgICAgaWYgKGNvbGxhcHNlSWQgPT09IGlkKSB7XHJcbiAgICAgICAgICAgIHNldElzT3Blbih0cnVlKTtcclxuICAgICAgICB9XHJcbiAgICB9LCBbbG9jYXRpb24uc2VhcmNoLCBpZF0pO1xyXG5cclxuICAgIGNvbnN0IGhhbmRsZUZpbHRlck9wZW5pbmcgPSAoKSA9PiB7XHJcbiAgICAgICAgc2V0SXNPcGVuKChwcmV2KSA9PiAhcHJldik7XHJcbiAgICB9O1xyXG5cclxuICAgIHJldHVybiAoXHJcbiAgICAgICAgPD5cclxuICAgICAgICAgICAgPGRpdiBpZD17aWR9IGNsYXNzTmFtZT1cImNvbGxhcHNlLWNhcmQgYmctZGJcIj5cclxuICAgICAgICAgICAgICAgIDxkaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJkLWZsZXgganVzdGlmeS1jb250ZW50LWJldHdlZW5cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGg2IGNsYXNzTmFtZT1cImZvbnQtd2VpZ2h0LWJvbGQgY29sbGFwc2libGUtYVwiPnt0aXRsZX08L2g2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBjbGFzc05hbWU9XCJidG5cIiBvbkNsaWNrPXtoYW5kbGVGaWx0ZXJPcGVuaW5nfT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHshaXNPcGVuID8gKFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3NOYW1lPSd1cGRvd24nIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2Rlc2lnbi9pY29ucy9hbmdsZS1zbWFsbC1kb3duLnBuZ1wiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApIDogKFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3NOYW1lPSd1cGRvd24nIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2Rlc2lnbi9pY29ucy9hbmdsZS1zbWFsbC11cDMycHgucG5nXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICl9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2Pntpc09wZW4gJiYgPGRpdiBjbGFzc05hbWU9XCJwLTNcIj48aHIgY2xhc3NOYW1lPSdjb2xsYXBzaWJsZS1ocicgLz57Y2hpbGRyZW59PC9kaXY+fTwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvPlxyXG4gICAgKTtcclxufTtcclxuXHJcbiAgZXhwb3J0IGNvbnN0IENvbGxhcHNpYmxlVHdvOiBSZWFjdC5GQzxJUHJvcHM+ID0gKHsgb3BlbiwgY2hpbGRyZW4sIHRpdGxlIH0pID0+IHtcclxuICAgIGNvbnN0IFtpc09wZW4sIHNldElzT3Blbl0gPSB1c2VTdGF0ZShvcGVuKTtcclxuICBcclxuICAgIGNvbnN0IGhhbmRsZUZpbHRlck9wZW5pbmcgPSAoKSA9PiB7XHJcbiAgICAgIHNldElzT3BlbigocHJldikgPT4gIXByZXYpO1xyXG4gICAgfTtcclxuXHJcbiAgICByZXR1cm4gKFxyXG4gICAgICA8PlxyXG4gICAgICA8c2VjdGlvbiBpZD17dGl0bGV9PlxyXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sbGFwc2UtY2FyZFwiPlxyXG4gICAgICAgICAgPGRpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJkLWZsZXgganVzdGlmeS1jb250ZW50LWJldHdlZW5cIj5cclxuICAgICAgICAgICAgICA8aDMgY2xhc3NOYW1lPVwiZm9udC13ZWlnaHQtYm9sZCBjb2xsYXBzaWJsZS1hXCI+e3RpdGxlfTwvaDM+XHJcbiAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3NOYW1lPVwiYnRuXCIgb25DbGljaz17aGFuZGxlRmlsdGVyT3BlbmluZ30+XHJcbiAgICAgICAgICAgICAgICB7IWlzT3BlbiA/IChcclxuICAgICAgICAgICAgICAgIDxpbWcgY2xhc3NOYW1lPSd1cGRvd24nIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2Rlc2lnbi9pY29ucy9hbmdsZS1zbWFsbC1kb3duLnBuZ1wiIC8+XHJcbiAgICAgICAgICAgICAgICApIDogKFxyXG4gICAgICAgICAgICAgICAgPGltZyBjbGFzc05hbWU9J3VwZG93bicgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvZGVzaWduL2ljb25zL2FuZ2xlLXNtYWxsLXVwMzJweC5wbmdcIiAvPlxyXG4gICAgICAgICAgICAgICAgKX1cclxuICAgICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICBcclxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiXCI+XHJcbiAgICAgICAgICAgIDxkaXY+e2lzT3BlbiAmJiA8ZGl2IGNsYXNzTmFtZT1cInAtM1wiPiA8aHIgY2xhc3NOYW1lPSdjb2xsYXBzaWJsZS1ocicvPiB7Y2hpbGRyZW59PC9kaXY+fTwvZGl2PlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9zZWN0aW9uPlxyXG4gICAgICA8Lz5cclxuICAgICk7XHJcbiAgfTtcclxuICBcclxuICBcclxuICBleHBvcnQgZGVmYXVsdCBDb2xsYXBzaWJsZTtcclxuXHJcbiAgZXhwb3J0IGNvbnN0IENvbGxhcHNpYmxlSW5mb0JveDogUmVhY3QuRkM8SVByb3BzPiA9ICh7IG9wZW4sIGNoaWxkcmVuLCB0aXRsZSB9KSA9PiB7XHJcbiAgICBjb25zdCBbaXNPcGVuLCBzZXRJc09wZW5dID0gdXNlU3RhdGUob3Blbik7XHJcbiAgXHJcbiAgICBjb25zdCBoYW5kbGVGaWx0ZXJPcGVuaW5nID0gKCkgPT4ge1xyXG4gICAgICBzZXRJc09wZW4oKHByZXYpID0+ICFwcmV2KTtcclxuICAgIH07XHJcblxyXG4gICAgcmV0dXJuIChcclxuICAgICAgPD5cclxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbGxhcHNlLWNhcmQgYmctaW5mb1wiPlxyXG4gICAgICAgICAgPGRpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJkLWZsZXgganVzdGlmeS1jb250ZW50LWJldHdlZW5cIj5cclxuICAgICAgICAgICAgICA8aDYgY2xhc3NOYW1lPVwiZm9udC13ZWlnaHQtYm9sZCBjb2xsYXBzaWJsZS1hXCI+e3RpdGxlfTwvaDY+XHJcbiAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3NOYW1lPVwiYnRuXCIgb25DbGljaz17aGFuZGxlRmlsdGVyT3BlbmluZ30+XHJcbiAgICAgICAgICAgICAgICB7IWlzT3BlbiA/IChcclxuICAgICAgICAgICAgICAgIDxpbWcgY2xhc3NOYW1lPSd1cGRvd24nIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2Rlc2lnbi9pY29ucy9hbmdsZS1zbWFsbC1kb3duLnBuZ1wiIC8+XHJcbiAgICAgICAgICAgICAgICApIDogKFxyXG4gICAgICAgICAgICAgICAgPGltZyBjbGFzc05hbWU9J3VwZG93bicgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvZGVzaWduL2ljb25zL2FuZ2xlLXNtYWxsLXVwMzJweC5wbmdcIiAvPlxyXG4gICAgICAgICAgICAgICAgKX1cclxuICAgICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICBcclxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiXCI+XHJcbiAgICAgICAgICAgIDxkaXY+e2lzT3BlbiAmJiA8ZGl2IGNsYXNzTmFtZT1cInAtM1wiPiA8aHIgY2xhc3NOYW1lPSdjb2xsYXBzaWJsZS1ocicvPiB7Y2hpbGRyZW59PC9kaXY+fTwvZGl2PlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvPlxyXG4gICAgKTtcclxuICB9O1xyXG5cclxuICAiLCAiaW1wb3J0IENvbGxhcHNpYmxlIGZyb20gXCIuLi8uLi8uLi9jb21wb25lbnRzL0NvbGxhcHNpYmxlXCI7XHJcblxyXG5leHBvcnQgIGZ1bmN0aW9uIFNvdXJjZXMoKXtcclxuICAgIHJldHVybihcclxuICAgICAgPGRpdj5cclxuICAgICAgICA8Q29sbGFwc2libGUgaWQ9XCJ3aWtpLWljb25zXCIgdGl0bGU9XCJJbWFnZXMgYW5kIEljb25zXCIgPlxyXG4gICAgICAgIE1vc3QgdGVhbXMgbmVlZCBhIGxvdCBvZiBwaWN0dXJlcywgY29tcG9uZW50cywgaWNvbnMgYW5kIGFsaWtlLiBUaGV5IGNhbiBiZSBkaWZmaWN1bHQgdG8gZmluZCwgZXNwZWNpYWxseSBmcmVlIGFuZCBvcGVuIHNvdXJjZSBvbmVzLlxyXG4gICAgICAgIFxyXG4gICAgICAgICAgPHVsPlxyXG4gICAgICAgICAgICA8bGk+IDxhIGhyZWY9XCJodHRwczovL2Jpb2ljb25zLmNvbS9cIj4gaHR0cHM6Ly9iaW9pY29ucy5jb20vPC9hPiA8L2xpPlxyXG4gICAgICAgICAgICA8bGk+IDxhIGhyZWY9XCJodHRwczovL3RvZ290di5kYmNscy5qcC9lbi9waWNzLmh0bWxcIiA+IGh0dHBzOi8vdG9nb3R2LmRiY2xzLmpwL2VuL3BpY3MuaHRtbCA8L2E+IDwvbGk+XHJcbiAgICAgICAgICAgIDxsaT4gPGEgaHJlZj1cImh0dHBzOi8vc21hcnQuc2Vydmllci5jb20vXCIgPmh0dHBzOi8vc21hcnQuc2Vydmllci5jb20vPC9hPiA8L2xpPlxyXG4gICAgICAgICAgICA8bGk+IDxhIGhyZWY9XCJodHRwczovL29wZW5jbGlwYXJ0Lm9yZy9cIiA+IGh0dHBzOi8vb3BlbmNsaXBhcnQub3JnLzwvYT4gPC9saT5cclxuICAgICAgICAgICAgPGxpPiA8YSBocmVmPVwiaHR0cHM6Ly9jb21tb25zLndpa2ltZWRpYS5vcmcvd2lraS9DYXRlZ29yeTpTVkdfZmlsZXNcIiA+aHR0cHM6Ly9jb21tb25zLndpa2ltZWRpYS5vcmcvd2lraS9DYXRlZ29yeTpTVkdfZmlsZXM8L2E+IDwvbGk+XHJcbiAgICAgICAgICAgIDxsaT4gPGEgaHJlZj1cImh0dHBzOi8vd3d3LmZsYXRpY29uLmNvbS9cIj5odHRwczovL3d3dy5mbGF0aWNvbi5jb20vPC9hPiA8L2xpPlxyXG4gICAgICAgICAgICA8bGk+IDxhIGhyZWY9XCJodHRwczovL2Jpb2xvZ2ljYWxpY29ucy5jb20vZW5cIj5odHRwczovL2Jpb2xvZ2ljYWxpY29ucy5jb20vZW48L2E+IDwvbGk+XHJcbiAgICAgICAgICAgIDxsaT4gPGEgaHJlZj1cImh0dHBzOi8vd3d3LnN2Z3JlcG8uY29tL1wiPmh0dHBzOi8vd3d3LnN2Z3JlcG8uY29tLzwvYT4gPC9saT5cclxuICAgICAgICAgICAgPGxpPiA8YSBocmVmPVwiaHR0cHM6Ly93d3cuaHVtYW5iaW9tZWRpYS5vcmcvXCI+aHR0cHM6Ly93d3cuaHVtYW5iaW9tZWRpYS5vcmcvPC9hPiA8L2xpPlxyXG4gICAgICAgICAgPC91bD5cclxuICBcclxuICAgICAgICA8L0NvbGxhcHNpYmxlPlxyXG4gICAgICAgIDxDb2xsYXBzaWJsZSBpZD1cIndpa2ktY29sb3JzXCIgdGl0bGU9XCJDb2xvdXJzXCIgPlxyXG4gICAgICAgICAgTmVlZCBhIHNsaWdodGx5IGxpZ2h0ZXIgdmVyc2lvbiBvZiBvbmUgb2YgeW91ciBjb2xvcnMgb3IgYSBtaXggb2YgdHdvIGNvbG91cnM/IFxyXG4gICAgICAgICAgPHVsPlxyXG4gICAgICAgICAgICA8bGk+PGEgaHJlZj1cImh0dHBzOi8vd3d3Lnczc2Nob29scy5jb20vY29sb3JzL2NvbG9yc19taXhlci5hc3BcIj4gaHR0cHM6Ly93d3cudzNzY2hvb2xzLmNvbS9jb2xvcnMvY29sb3JzX21peGVyLmFzcDwvYT48L2xpPlxyXG4gICAgICAgICAgPC91bD5cclxuICAgICAgICA8L0NvbGxhcHNpYmxlPlxyXG4gICAgICAgIDxDb2xsYXBzaWJsZSBpZD1cIndpa2ktdG9vbHNcIiB0aXRsZT1cIkNvZGluZyBUb29sc1wiPlxyXG4gICAgICAgICAgR2VuZXJhdG9yc1xyXG4gICAgICAgICAgPHVsPlxyXG4gICAgICAgICAgICA8bGk+PGEgaHJlZj1cImh0dHBzOi8vd3d3LmNzc3BvcnRhbC5jb20vXCI+aHR0cHM6Ly93d3cuY3NzcG9ydGFsLmNvbS88L2E+PC9saT5cclxuICAgICAgICAgICAgPGxpPjxhIGhyZWY9XCJodHRwczovL2h0bWxjc3MudG9vbHMvXCI+aHR0cHM6Ly9odG1sY3NzLnRvb2xzLzwvYT48L2xpPlxyXG4gICAgICAgICAgPC91bD5cclxuICAgICAgICA8L0NvbGxhcHNpYmxlPlxyXG4gIFxyXG4gICAgICAgIDxDb2xsYXBzaWJsZSBpZD1cIndpa2ktcGxhY2Vob2xkZXJcIiB0aXRsZT1cIlBsYWNlaG9sZGVyc1wiPlxyXG4gICAgICAgICAgPHVsPlxyXG4gICAgICAgICAgICA8bGk+PGEgaHJlZj1cImh0dHBzOi8vd3d3LmxvcmVtaXBzdW0uZGUvXCI+aHR0cHM6Ly93d3cubG9yZW1pcHN1bS5kZS88L2E+PC9saT5cclxuICAgICAgICAgIDwvdWw+XHJcbiAgICAgICAgPC9Db2xsYXBzaWJsZT5cclxuICBcclxuICAgICAgICA8Q29sbGFwc2libGUgaWQ9XCJ3aWtpLXN2Z3NcIiB0aXRsZT1cIlNWR3NcIj5cclxuICAgICAgICAgIDx1bD5cclxuICAgICAgICAgICAgPGxpPjxhIGhyZWY9XCJodHRwczovL3N1cGVyZGVzaWduZXIuY28vdG9vbHMvc3ZnLWJhY2tncm91bmRzXCI+aHR0cHM6Ly9zdXBlcmRlc2lnbmVyLmNvL3Rvb2xzL3N2Zy1iYWNrZ3JvdW5kczwvYT48L2xpPlxyXG4gICAgICAgICAgPC91bD5cclxuICAgICAgICA8L0NvbGxhcHNpYmxlPlxyXG4gIFxyXG4gICAgICAgIDxDb2xsYXBzaWJsZSBpZD1cIndpa2ktYWNjZXNzaWJpbGl0eVwiIHRpdGxlPVwiQWNjZXNzaWJpbGl0eVwiPlxyXG4gICAgICAgIDx1bD5cclxuICAgICAgICAgIDxsaT48YSBocmVmPVwiaHR0cHM6Ly9zY2hlbWEub3JnXCI+aHR0cHM6Ly9zY2hlbWEub3JnPC9hPjwvbGk+XHJcbiAgICAgICAgPC91bD5cclxuICAgICAgICA8L0NvbGxhcHNpYmxlPlxyXG4gICAgICA8L2Rpdj5cclxuICBcclxuICAgIClcclxuICB9ICIsICJcclxuaW1wb3J0IFNlbGVjdCBmcm9tICdyZWFjdC1zZWxlY3QnO1xyXG5pbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xyXG5cclxuXHJcblxyXG5pbnRlcmZhY2UgUHJvcHMge1xyXG4gIHZhbHVlOiBzdHJpbmcsXHJcbiAgbGFiZWw6IHN0cmluZ1xyXG59XHJcbmNvbnN0IHdpa2lvcHRpb25zID1bXHJcbiAge3ZhbHVlOiBcImFsbFwiLCBsYWJlbDogXCJTaG93IGFsbFwifSxcclxuICB7dmFsdWU6IFwicmVhY3RcIiwgbGFiZWw6IFwiUmVhY3RcIn0sXHJcbiAge3ZhbHVlOiBcInR5cGVcIiwgbGFiZWw6IFwiVHlwZXNcIn0sXHJcbiAge3ZhbHVlOiBcInByb3BlcnR5XCIsIGxhYmVsOiBcIlByb3BlcnRpZXNcIn0sXHJcbiAge3ZhbHVlOiBcInBpcGVsaW5lXCIsIGxhYmVsOiBcIkdpdExhYiBQaXBlbGluZVwifSxcclxuICB7dmFsdWU6IFwiaHRtbFwiLCBsYWJlbDogXCJIVE1MXCJ9LFxyXG4gIHt2YWx1ZTogXCJjc3NcIiwgbGFiZWw6IFwiQ1NTXCJ9LFxyXG4gIFxyXG5dXHJcblxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGZpbHRlck11bHRpU2VsZWN0aW9uKGFycjogQXJyYXk8UHJvcHM+KSB7XHJcbiAgY29uc3Qgbm9ubyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKFwibm9ub1wiKTtcclxuICBpZiAobm9ubykge1xyXG4gICAgbm9uby5jbGFzc05hbWUgPSBcIm5vc2hvd1wiO1xyXG4gIH1cclxuXHJcbiAgY29uc3QgZmlsdGVyYWJsZUVsZW1lbnRzID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZShcImZpbHRlcmFibGVcIik7XHJcblxyXG4gIC8vIFJlbW92ZSBcInNob3dcIiBjbGFzcyBmcm9tIGFsbCBlbGVtZW50c1xyXG4gIGZvciAobGV0IGkgPSAwOyBpIDwgZmlsdGVyYWJsZUVsZW1lbnRzLmxlbmd0aDsgaSsrKSB7XHJcbiAgICBjb25zdCBlbCA9IGZpbHRlcmFibGVFbGVtZW50c1tpXTtcclxuICAgIHczUmVtb3ZlQ2xhc3MoZWwsIFwic2hvd1wiKTtcclxuICB9XHJcblxyXG4gIGNvbnNvbGUubG9nKFwiQmVnaW5cIik7XHJcblxyXG4gIC8vIEFwcGx5IGZpbHRlciBjcml0ZXJpYVxyXG4gIGZvciAobGV0IGkgPSAwOyBpIDwgZmlsdGVyYWJsZUVsZW1lbnRzLmxlbmd0aDsgaSsrKSB7XHJcbiAgICBjb25zdCBlbCA9IGZpbHRlcmFibGVFbGVtZW50c1tpXTtcclxuICAgIGxldCBzaG91bGRTaG93ID0gdHJ1ZTtcclxuXHJcbiAgICBmb3IgKGNvbnN0IGVudHJ5IG9mIGFycikge1xyXG4gICAgICBjb25zb2xlLmxvZyhgZW50cnk6ICR7ZW50cnkudmFsdWV9YCk7XHJcbiAgICAgIGlmICghZWwuY2xhc3NMaXN0LmNvbnRhaW5zKGVudHJ5LnZhbHVlKSkge1xyXG4gICAgICAgIHNob3VsZFNob3cgPSBmYWxzZTtcclxuICAgICAgICBicmVhaztcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGNvbnNvbGUubG9nKGBzaG91bGRTaG93OiAke3Nob3VsZFNob3d9YCk7XHJcbiAgICBpZiAoc2hvdWxkU2hvdykge1xyXG4gICAgICB3M0FkZENsYXNzKGVsLCBcInNob3dcIik7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLyBDaGVjayBpZiBhbnkgZWxlbWVudCBpcyBzaG93blxyXG4gIGNvbnN0IHNob3duRWxlbWVudHMgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKFwic2hvd1wiKTtcclxuICBpZiAoc2hvd25FbGVtZW50cy5sZW5ndGggPCAxICYmIG5vbm8pIHtcclxuICAgIGNvbnNvbGUubG9nKHNob3duRWxlbWVudHMubGVuZ3RoKTtcclxuICAgIG5vbm8uY2xhc3NOYW1lID0gXCJzaG93XCI7XHJcbiAgfVxyXG59XHJcblxyXG4vKiBmdW5jdGlvbiBmaWx0ZXJTZWxlY3Rpb24obGFiZWw6IHN0cmluZykge1xyXG4gIHZhciB4LCBpO1xyXG4gIHggPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKFwiZmlsdGVyYWJsZVwiKTtcclxuICBpZiAobGFiZWwgPT0gXCJhbGxcIikgbGFiZWwgPSBcIlwiO1xyXG4gIGZvciAoaSA9IDA7IGkgPCB4Lmxlbmd0aDsgaSsrKSB7XHJcbiAgICBsZXQgZWwgPSB4W2ldOyBcclxuICAgIHczUmVtb3ZlQ2xhc3MoZWwsIFwic2hvd1wiKTtcclxuICAgIGlmICh4W2ldLmNsYXNzTmFtZS5pbmRleE9mKGxhYmVsKSA+IC0xKSB3M0FkZENsYXNzKHhbaV0sIFwic2hvd1wiKTtcclxuICB9XHJcbn0gKi9cclxuICBcclxuZnVuY3Rpb24gdzNBZGRDbGFzcyhlbGVtZW50OiBFbGVtZW50LCBuYW1lOiBzdHJpbmcpIHtcclxuICB2YXIgaSwgYXJyMSwgYXJyMjtcclxuICBhcnIxID0gZWxlbWVudC5jbGFzc05hbWUuc3BsaXQoXCIgXCIpO1xyXG4gIGFycjIgPSBuYW1lLnNwbGl0KFwiIFwiKTtcclxuICBmb3IgKGkgPSAwOyBpIDwgYXJyMi5sZW5ndGg7IGkrKykge1xyXG4gICAgaWYgKGFycjEuaW5kZXhPZihhcnIyW2ldKSA9PSAtMSkge2VsZW1lbnQuY2xhc3NOYW1lICs9IFwiIFwiICsgYXJyMltpXTt9XHJcbiAgfVxyXG59XHJcblxyXG5mdW5jdGlvbiB3M1JlbW92ZUNsYXNzKGVsZW1lbnQ6IEVsZW1lbnQsIG5hbWU6IHN0cmluZykge1xyXG4gIHZhciBpLCBhcnIxLCBhcnIyO1xyXG4gIGFycjEgPSBlbGVtZW50LmNsYXNzTmFtZS5zcGxpdChcIiBcIik7XHJcbiAgYXJyMiA9IG5hbWUuc3BsaXQoXCIgXCIpO1xyXG4gIGZvciAoaSA9IDA7IGkgPCBhcnIyLmxlbmd0aDsgaSsrKSB7XHJcbiAgICB3aGlsZSAoYXJyMS5pbmRleE9mKGFycjJbaV0pID4gLTEpIHtcclxuICAgICAgYXJyMS5zcGxpY2UoYXJyMS5pbmRleE9mKGFycjJbaV0pLCAxKTsgICAgIFxyXG4gICAgfVxyXG4gIH1cclxuICBlbGVtZW50LmNsYXNzTmFtZSA9IGFycjEuam9pbihcIiBcIik7XHJcbn1cclxuXHJcblxyXG5leHBvcnQgZnVuY3Rpb24gV2lraVNlbGVjdG9yKCl7XHJcbiAgcmV0dXJuKFxyXG4gICAgPGRpdj5cclxuICAgICAgPFdpa2lBY3Rpb24+PC9XaWtpQWN0aW9uPlxyXG4gICAgPC9kaXY+XHJcbiAgKVxyXG59XHJcblxyXG5jbGFzcyBXaWtpQWN0aW9uIGV4dGVuZHMgUmVhY3QuQ29tcG9uZW50IHtcclxuICBzdGF0ZSA9IHtcclxuICAgIHNlbGVjdGVkT3B0aW9uOiBudWxsLFxyXG4gIH07XHJcbiAgaGFuZGxlQ2hhbmdlID0gKHNlbGVjdGVkT3B0aW9uOiBhbnkpID0+IHtcclxuICBcdFxyXG4gIFx0dGhpcy5zZXRTdGF0ZSh7IHNlbGVjdGVkT3B0aW9uIH0sICgpID0+XHJcbiAgXHRjb25zb2xlLmxvZyhgT3B0aW9uIHNlbGVjdGVkOmAsIHRoaXMuc3RhdGUuc2VsZWN0ZWRPcHRpb24pXHJcbiAgIFx0XHJcbiAgICApO1xyXG4gICAgXHRmaWx0ZXJNdWx0aVNlbGVjdGlvbihzZWxlY3RlZE9wdGlvbilcclxuICB9O1xyXG4gIHJlbmRlcigpIHtcclxuICAgIGNvbnN0IHsgc2VsZWN0ZWRPcHRpb24gfSA9IHRoaXMuc3RhdGU7XHJcblxyXG4gICAgcmV0dXJuIChcclxuICAgICAgPFNlbGVjdFxyXG4gICAgICAgIHZhbHVlPXtzZWxlY3RlZE9wdGlvbn1cclxuICAgICAgICBvbkNoYW5nZT17dGhpcy5oYW5kbGVDaGFuZ2V9XHJcbiAgICAgICAgaXNNdWx0aVxyXG4gICAgICAgIG9wdGlvbnM9e3dpa2lvcHRpb25zfVxyXG4gICAgICAgIGRlZmF1bHRWYWx1ZT17W3dpa2lvcHRpb25zWzBdXX1cclxuICAgICAgICBjbGFzc05hbWU9XCJiYXNpYy1tdWx0aS1zZWxlY3RcIlxyXG4gICAgICAgIGNsYXNzTmFtZVByZWZpeD1cInNlbGVjdFwiXHJcbiAgICAgIC8+XHJcbiAgICApO1xyXG4gIH1cclxufVxyXG5cclxuLyogVHlwZSAnKHNlbGVjdGVkT3B0aW9uOiBQcm9wcyB8IG51bGwpID0+IHZvaWQnIGlzIG5vdCBhc3NpZ25hYmxlIHRvIHR5cGUgJyhuZXdWYWx1ZTogTXVsdGlWYWx1ZTx7IHZhbHVlOiBzdHJpbmc7IGxhYmVsOiBzdHJpbmc7IH0gfCBudWxsPiwgYWN0aW9uTWV0YTogQWN0aW9uTWV0YTx7IHZhbHVlOiBzdHJpbmc7IGxhYmVsOiBzdHJpbmc7IH0gfCBudWxsPikgPT4gdm9pZCcuXHJcbiAgVHlwZXMgb2YgcGFyYW1ldGVycyAnc2VsZWN0ZWRPcHRpb24nIGFuZCAnbmV3VmFsdWUnIGFyZSBpbmNvbXBhdGlibGUuXHJcbiAgICBUeXBlICdyZWFkb25seSAoeyB2YWx1ZTogc3RyaW5nOyBsYWJlbDogc3RyaW5nOyB9IHwgbnVsbClbXScgaXMgbWlzc2luZyB0aGUgZm9sbG93aW5nIHByb3BlcnRpZXMgZnJvbSB0eXBlICdQcm9wcyc6IHZhbHVlLCBsYWJlbCAqL1xyXG4gICAgLyogY29uc3QgaHBvcHRpb25zID1bXHJcbiAgICAgIHt2YWx1ZTogXCJhbGxcIiwgbGFiZWw6IFwiQWxsXCJ9LFxyXG4gICAgICB7dmFsdWU6IFwiQWNhZGVtaWFcIiwgbGFiZWw6IFwiQWNhZGVtaWFcIn0sXHJcbiAgICAgIHt2YWx1ZTogXCJQYXRpZW50UGF0aWVudFwiLCBsYWJlbDogXCJQYXRpZW50XCJ9LFxyXG4gICAgICB7dmFsdWU6IFwiTWVkaWNhbFwiLCBsYWJlbDogXCJNZWRpY2FsIFByb2Zlc3Npb25hbFwifSxcclxuICAgICAge3ZhbHVlOiBcInByb3BlcnR5XCIsIGxhYmVsOiBcIlByb3BlcnRpZXNcIn0sXHJcbiAgICAgIHt2YWx1ZTogXCJwaXBlbGluZVwiLCBsYWJlbDogXCJHaXRMYWIgUGlwZWxpbmVcIn0sXHJcbiAgICAgIHt2YWx1ZTogXCJodG1sXCIsIGxhYmVsOiBcIkhUTUxcIn0sXHJcbiAgICAgIHt2YWx1ZTogXCJjc3NcIiwgbGFiZWw6IFwiQ1NTXCJ9LFxyXG4gICAgICBcclxuICAgIF1cclxuXHJcbiAgICBleHBvcnQgZnVuY3Rpb24gSFBTZWxlY3Rvcigpe1xyXG4gICAgICByZXR1cm4oXHJcbiAgICAgICAgPGRpdj5cclxuICAgICAgICAgIDxIUEFjdGlvbj48L0hQQWN0aW9uPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICApXHJcbiAgICB9XHJcblxyXG5cclxuXHJcbiAgICBjbGFzcyBIUEFjdGlvbiBleHRlbmRzIFJlYWN0LkNvbXBvbmVudCB7XHJcbiAgICAgIHN0YXRlID0ge1xyXG4gICAgICAgIHNlbGVjdGVkT3B0aW9uOiBudWxsLFxyXG4gICAgICB9O1xyXG4gICAgICBoYW5kbGVDaGFuZ2UgPSAoc2VsZWN0ZWRPcHRpb246IGFueSkgPT4ge1xyXG4gICAgICAgIFxyXG4gICAgICAgIHRoaXMuc2V0U3RhdGUoeyBzZWxlY3RlZE9wdGlvbiB9LCAoKSA9PlxyXG4gICAgICAgIGNvbnNvbGUubG9nKGBPcHRpb24gc2VsZWN0ZWQ6YCwgdGhpcy5zdGF0ZS5zZWxlY3RlZE9wdGlvbilcclxuICAgICAgICAgXHJcbiAgICAgICAgKTtcclxuICAgICAgICAgIGZpbHRlck11bHRpU2VsZWN0aW9uKHNlbGVjdGVkT3B0aW9uKVxyXG4gICAgICB9O1xyXG4gICAgICByZW5kZXIoKSB7XHJcbiAgICAgICAgY29uc3QgeyBzZWxlY3RlZE9wdGlvbiB9ID0gdGhpcy5zdGF0ZTtcclxuICAgIFxyXG4gICAgICAgIHJldHVybiAoXHJcbiAgICAgICAgICA8U2VsZWN0XHJcbiAgICAgICAgICAgIHZhbHVlPXtzZWxlY3RlZE9wdGlvbn1cclxuICAgICAgICAgICAgb25DaGFuZ2U9e3RoaXMuaGFuZGxlQ2hhbmdlfVxyXG4gICAgICAgICAgICBpc011bHRpXHJcbiAgICAgICAgICAgIG9wdGlvbnM9e2hwb3B0aW9uc31cclxuICAgICAgICAgICAgZGVmYXVsdFZhbHVlPXtbaHBvcHRpb25zWzBdXX1cclxuICAgICAgICAgICAgY2xhc3NOYW1lPVwiYmFzaWMtbXVsdGktc2VsZWN0XCJcclxuICAgICAgICAgICAgY2xhc3NOYW1lUHJlZml4PVwic2VsZWN0XCJcclxuICAgICAgICAgIC8+XHJcbiAgICAgICAgKTtcclxuICAgICAgfVxyXG4gICAgfSAqLyIsICJpbXBvcnQgQ29sbGFwc2libGUgZnJvbSBcIi4uLy4uLy4uL2NvbXBvbmVudHMvQ29sbGFwc2libGVcIjtcclxuaW1wb3J0IHsgSDUgfSBmcm9tIFwiLi4vLi4vLi4vY29tcG9uZW50cy9IZWFkaW5nc1wiO1xyXG5pbXBvcnQgeyBUcm91Ymxlc2hvb3QgfSBmcm9tIFwiLi90cm91YmxlLWRhdGFcIjtcclxuXHJcblxyXG5leHBvcnQgZnVuY3Rpb24gRmlsdGVyYWJsZXMoZGF0YTogQXJyYXk8VHJvdWJsZXNob290Pil7XHJcbiAgICBsZXQgY291bnQgPSAyOyBcclxuICAgIGxldCByZXN1bHRzOiBKU1guRWxlbWVudFtdICA9IFtdO1xyXG4gICAgZm9yIChsZXQgaW5kZXggPSAwOyBpbmRleCA8IGRhdGEubGVuZ3RoOyBpbmRleCsrKSB7XHJcbiAgICAgICAgbGV0IHRhZ3MgPSBcIlwiXHJcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBkYXRhW2luZGV4XS50YWdzLmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgICAgICAgIHRhZ3MgKz0gZGF0YVtpbmRleF0udGFnc1tpXSArIFwiIFwiOyBcclxuICAgICAgICB9XHJcbiAgICAgICAgcmVzdWx0cy5wdXNoKFxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT17YGZpbHRlcmFibGUgYWxsICR7dGFnc31gfSBpZD17YHdpa2ktdHJvdWJsZS0ke2NvdW50fWB9PlxyXG4gICAgICAgICAgICAgICAgPENvbGxhcHNpYmxlIHRpdGxlPXtkYXRhW2luZGV4XS50aXRsZX0gaWQ9e2B3aWtpLXRyb3VibGUtJHtjb3VudH0tY29sbGFwc2libGVgfT5cclxuICAgICAgICAgICAgICAgICAgICB7ZGF0YVtpbmRleF0udGV4dH1cclxuICAgICAgICAgICAgICAgICAgICA8SDUgdGV4dD1cIkV4YW1wbGVcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHtkYXRhW2luZGV4XS5leGFtcGxlY2hpbGRyZW59XHJcbiAgICAgICAgICAgICAgICAgICAgPEg1IHRleHQ9XCJTb2x1dGlvblwiLz5cclxuICAgICAgICAgICAgICAgICAgICB7ZGF0YVtpbmRleF0uc29sdXRpb25jaGlsZHJlbn1cclxuICAgICAgICAgICAgICAgIDwvQ29sbGFwc2libGU+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIClcclxuICAgICAgICBjb3VudCArKzsgXHJcbiAgICB9XHJcbiAgICByZXR1cm4gcmVzdWx0czsgXHJcbn1cclxuXHJcbiIsICJleHBvcnQgZnVuY3Rpb24gQ29kZSh7Y2hpbGRyZW59OntjaGlsZHJlbjogUmVhY3QuUmVhY3ROb2RlfSApe1xyXG5cclxuICAgIHJldHVybihcclxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvZGVzbmlwcGV0XCI+XHJcbiAgICAgICAgICAgIDxjb2RlPlxyXG4gICAgICAgICAgICAgICAge2NoaWxkcmVufVxyXG4gICAgICAgICAgICA8L2NvZGU+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICApXHJcbn0iLCAiaW1wb3J0IHsgQ29kZSB9IGZyb20gXCIuLi8uLi8uLi9jb21wb25lbnRzL0NvZGVcIjtcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgVHJvdWJsZXNob290e1xyXG4gICAgdGFnczogQXJyYXk8U2VhcmNoY3JpdGVyaWE+OyBcclxuICAgIHRpdGxlOiBzdHJpbmc7IFxyXG4gICAgZXhhbXBsZWNoaWxkcmVuOiBSZWFjdC5SZWFjdE5vZGU7IFxyXG4gICAgc29sdXRpb25jaGlsZHJlbjogUmVhY3QuUmVhY3ROb2RlOyBcclxuICAgIHRleHQ/OiBSZWFjdC5SZWFjdE5vZGU7IFxyXG59XHJcblxyXG50eXBlIFNlYXJjaGNyaXRlcmlhID0gXCJodG1sXCIgfCBcInNjcmlwdFwiIHwgXCJjc3NcIiB8IFwicmVhY3RcIiAgfCBcInR5cGVcIiB8IFwicHJvcGVydGllc1wiIHwgXCJwaXBlbGluZVwiIHwgXCJtb2R1bGVcIiB8IFwiYnJvd3NlclwiIHwgXCJjb25zb2xlXCIgfFwib3ZlcmxvYWRcIiA7IFxyXG5cclxuZXhwb3J0IGNvbnN0IHRyb3VibGVkYXRhOiBBcnJheTxUcm91Ymxlc2hvb3Q+ID0gW1xyXG4gICAge1xyXG4gICAgICAgIHRhZ3M6IFtcInJlYWN0XCIsIFwidHlwZVwiXSxcclxuICAgICAgICB0aXRsZTogXCJUeXBlIFggaXMgbm90IGFzc2lnbmFibGUgdG8gdHlwZSBZLlwiLFxyXG4gICAgICAgIGV4YW1wbGVjaGlsZHJlbjogPD48Lz4sXHJcbiAgICAgICAgc29sdXRpb25jaGlsZHJlbjogPD48Lz5cclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgICAgdGFnczogW1wicGlwZWxpbmVcIl0sXHJcbiAgICAgICAgdGl0bGU6IFwiVGhlIHBpcGVsaW5lIHBhc3NlZCBidXQgdGhlIFdpa2kgaXMgbm90IHZpc2libGUgdW5kZXIgdGhlIHVybFwiLFxyXG4gICAgICAgIHRleHQ6IDw+PHA+VGhpcyBlcnJvciBjb3VsZCBiZSBhIHJlc3VsdCBvZiBhIHdyb25nIGJhc2UgdXJsIGluIHRoZSB2aXRlLmNvbmZpZy5qcyBmaWxlLjwvcD5cclxuICAgICAgICA8cD5FLmcuIGlmIHlvdSBzd2l0Y2hlZCBmcm9tIHBsYWluIEhUTUwgdG8gdGhlIHJlYWN0IGZyYW1ld29yay4gPC9wPjwvPixcclxuICAgICAgICBleGFtcGxlY2hpbGRyZW46IDw+PENvZGU+XHJcbiAgICAgICAgPHA+cmV0dXJuIGRlZmluZUNvbmZpZygmIzEyMzs8L3A+XHJcbiAgICAgICAgPHA+YmFzZTogYC9gLDwvcD5cclxuICAgICAgICA8cD4uLi48L3A+XHJcbiAgICAgIDwvQ29kZT48Lz4sXHJcbiAgICAgICAgc29sdXRpb25jaGlsZHJlbjogPD48cD5DaGFuZ2UgdGhlIGJhc2UgdXJsIHRvIHJlZmxlY3QgdGhlIGNvcnJlY3QgdGVhbSB1cmwuPC9wPlxyXG4gICAgICAgIDxDb2RlPlxyXG4gICAgICAgICAgPHA+cmV0dXJuIGRlZmluZUNvbmZpZygmIzEyMzs8L3A+XHJcbiAgICAgICAgICA8cD5iYXNlOiBgLyQmIzEyMztzdHJpbmdUb1NsdWcoZW52LlZJVEVfVEVBTV9OQU1FKSYjMTI1Oy9gLDwvcD5cclxuICAgICAgICAgIDxwPi4uLjwvcD5cclxuICAgICAgICA8L0NvZGU+PC8+XHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICAgIHRhZ3M6IFtcImNvbnNvbGVcIl0sXHJcbiAgICAgICAgdGl0bGU6IFwiTlNfRVJST1JfQ09SUlVQVEVEX0NPTlRFTlQgZXJyb3IgaW4gY29uc29sZVwiLFxyXG4gICAgICAgIHRleHQ6IDw+PHA+ICZyYXJyOyBTZWUgYWxzbyBcIlRoZSBwaXBlbGluZSBwYXNzZWQgYnV0IHRoZSBXaWtpIGlzIG5vdCB2aXNpYmxlIHVuZGVyIHRoZSB1cmxcIiBhcyB0aGVzZSBlcnJvcnMgY2FuIGJlIGNvbm5lY3RlZC48L3A+XHJcbiAgICAgICAgPHA+IFRoaXMgZXJyb3IgZm9yIGNzcyBhbmQganMgZmlsZXMgY2FuIGJlIHRoZSByZXN1bHQgb2Ygd3JvbmcgPGI+cm9sbHVwT3B0aW9uczwvYj4gaW4gZm9yIHRoZSBidWlsZCwgdG8gYmUgc3BlY2lmaWMgd3JvbmcgPGI+b3V0cHV0PC9iPiBhbmQgPGI+YXNzZXRGaWxlTmFtZXM8L2I+IG9wdGlvbnMgYW5kIHBvc3NpYmx5IHdyb25nL2VtcHR5IDxiPmNzczwvYj4gb3B0aW9ucyBpbiB5b3VyIHZpdGUuY29uZmlnLmpzLiA8L3A+XHJcbiAgICAgICAgPC8+LFxyXG4gICAgICAgIGV4YW1wbGVjaGlsZHJlbjogPD48cD5JbiBvdXIgY2FzZSwgd2UgaGFkIHRoZSBmb2xsb3dpbmcgY29kZSBvbiBvdXIgdml0ZS5jb25maWcuanM8L3A+XHJcbiAgICAgICAgPENvZGU+XHJcbiAgICAgICAgPHA+YnVpbGQ6ICYjMTIzOyA8L3A+XHJcbiAgICAgIDxwPm91dERpcjogXCJkaXN0XCIsPC9wPlxyXG4gICAgICA8cD5yb2xsdXBPcHRpb25zOiAmIzEyMzs8L3A+XHJcbiAgICAgICAgPHA+b3V0cHV0OiAmIzEyMzs8L3A+XHJcbiAgICAgICAgICA8cD4gYXNzZXRGaWxlTmFtZXM6IGBhc3NldHMvW2V4dF0vW25hbWVdLVtoYXNoXS5bZXh0XWA8L3A+XHJcbiAgICAgICAgPHA+JiMxMjU7ICYjMTI1OyAmIzEyNTsgLCA8L3A+XHJcbiAgICAgICAgPC9Db2RlPlxyXG4gICAgICAgIDxwPiBPdXIgPGI+Y3NzPC9iPiBvcHRpb25zIHdlcmUgZW1wdHksIHdoaWNoIGNvdWxkIGFsc28gaGF2ZSBwbGF5ZWQgYSBmYWN0b3IgZm9yIHRoZSBjc3MgZmlsZXMuPC9wPlxyXG4gICAgICAgIDxDb2RlPlxyXG4gICAgICAgIDxwPmNzczogJiMxMjM7PC9wPlxyXG4gICAgICA8cD5wcmVwcm9jZXNzb3JPcHRpb25zOiAmIzEyMzs8L3A+XHJcbiAgICAgICAgPHA+Y3NzOiAmIzEyMzs8L3A+XHJcbiAgICAgICAgICA8cD4gIC8vamF2YXNjcmlwdEVuYWJsZWQ6IHRydWUsIC8vIEVuYWJsZSBKYXZhU2NyaXB0IGluIENTUyAodXNlZnVsIGZvciBjZXJ0YWluIENTUyBwcmVwcm9jZXNzb3IgcGx1Z2lucyk8L3A+XHJcbiAgICAgICA8cD4gJiMxMjU7ICYjMTI1OyAmIzEyNTssPC9wPiAgXHJcbiAgICAgICAgPC9Db2RlPjwvPixcclxuICAgICAgICBzb2x1dGlvbmNoaWxkcmVuOiA8PjwvPlxyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgICB0YWdzOiBbXCJicm93c2VyXCIsIFwiY29uc29sZVwiXSxcclxuICAgICAgICB0aXRsZTogXCJCbG9ja2VkIGR1ZSB0byBNSU1FIHR5cGUgKFx1MjAxQ3RleHQvaHRtbFx1MjAxRCkgbWlzbWF0Y2ggKFgtQ29udGVudC1UeXBlLU9wdGlvbnM6IG5vc25pZmYpIChGaXJlZm94KVwiLFxyXG4gICAgICAgIGV4YW1wbGVjaGlsZHJlbjogPD48cD4gJnJhcnI7IFNlZSBhbHNvIFwiUmVmdXNlZCB0byBhcHBseSBzdHlsZSBmcm9tICZsdDsmbHQ7Y3NzIGZpbGUmZ3Q7Jmd0OyBiZWNhdXNlIGl0cyBNSU1FIHR5cGUgKCd0ZXh0L2h0bWwnKSBpcyBub3QgYSBzdXBwb3J0ZWQgc3R5bGVzaGVldCBNSU1FIHR5cGUsIHN0cmljdCBNSU1FIGNoZWNraW5nIGlzIGVuYWJsZWQgKEVkZ2UpXCI8L3A+XHJcbiAgICAgICAgPC8+LFxyXG4gICAgICAgIHNvbHV0aW9uY2hpbGRyZW46IDw+PC8+XHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICAgIHRhZ3M6IFtcImNvbnNvbGVcIiwgXCJicm93c2VyXCJdLFxyXG4gICAgICAgIHRpdGxlOiBcIlJlZnVzZWQgdG8gYXBwbHkgc3R5bGUgZnJvbSA8PGNzcyBmaWxlPj4gYmVjYXVzZSBpdHMgTUlNRSB0eXBlICgndGV4dC9odG1sJykgaXMgbm90IGEgc3VwcG9ydGVkIHN0eWxlc2hlZXQgTUlNRSB0eXBlLCBzdHJpY3QgTUlNRSBjaGVja2luZyBpcyBlbmFibGVkIChFZGdlKVwiLFxyXG4gICAgICAgIGV4YW1wbGVjaGlsZHJlbjogPD48cD4gJnJhcnI7IFNlZSBhbHNvIFwiQmxvY2tlZCBkdWUgdG8gTUlNRSB0eXBlIChcdTIwMUN0ZXh0L2h0bWxcdTIwMUQpIG1pc21hdGNoIChYLUNvbnRlbnQtVHlwZS1PcHRpb25zOiBub3NuaWZmKSAoRmlyZWZveClcIjwvcD4gPC8+LFxyXG4gICAgICAgIHNvbHV0aW9uY2hpbGRyZW46IDw+PHA+VGhpcyBlcnJvciBjb3VsZCA8L3A+PC8+XHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICAgIHRhZ3M6IFtcInJlYWN0XCIsIFwidHlwZVwiXSxcclxuICAgICAgICB0aXRsZTogXCJUeXBlICd1bmRlZmluZWQnIGNhbm5vdCBiZSB1c2VkIGFzIGFuIGluZGV4IHR5cGVcIixcclxuICAgICAgICBleGFtcGxlY2hpbGRyZW46IDw+PC8+LFxyXG4gICAgICAgIHNvbHV0aW9uY2hpbGRyZW46IDw+PC8+XHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICAgIHRhZ3M6IFtcInJlYWN0XCIsIFwib3ZlcmxvYWRcIl0sXHJcbiAgICAgICAgdGl0bGU6IFwiTm8gb3ZlcmxvYWQgbWF0Y2hlcyB0aGlzIGNhbGwuXCIsXHJcbiAgICAgICAgZXhhbXBsZWNoaWxkcmVuOiA8PjwvPixcclxuICAgICAgICBzb2x1dGlvbmNoaWxkcmVuOiA8PjwvPlxyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgICB0YWdzOiBbXCJyZWFjdFwiLCBcIm1vZHVsZVwiXSxcclxuICAgICAgICB0aXRsZTogXCJNb2R1bGUgWiBoYXMgYWxyZWFkeSBleHBvcnRlZCBhIG1lbWJlciBuYW1lZCBBLiBDb25zaWRlciBleHBsaWNpdGx5IHJlLWV4cG9ydGluZyB0byByZXNvbHZlIHRoZSBhbWJpZ3VpdHkuXCIsXHJcbiAgICAgICAgZXhhbXBsZWNoaWxkcmVuOiA8PmluZGV4LnRzeDogXHJcbiAgICAgICAgPHAgY2xhc3NOYW1lPVwicHJvYmxlbS1lcnJvclwiPiBNb2R1bGUgXCIuL0JmaC50c3hcIiBoYXMgYWxyZWFkeSBleHBvcnRlZCBhIG1lbWJlciBuYW1lZCAnTGFiVGFicycuIENvbnNpZGVyIGV4cGxpY2l0bHkgcmUtZXhwb3J0aW5nIHRvIHJlc29sdmUgdGhlIGFtYmlndWl0eS48L3A+XHJcbiAgICAgICAgPC8+LFxyXG4gICAgICAgIHNvbHV0aW9uY2hpbGRyZW46IDw+PHA+U2ltcGx5IHJlbmFtZSB0aGUgZnVuY3Rpb24gaW4gb25lIG9mIHRoZSBtb2R1bGVzIG9yIGNvbnNpZGVyIG1ha2luZyBpdCBhIGNvbXBvbmVudCBpZiB5b3UgcGxhbiBvbiB1c2luZyBpdCBmcmVxdWVudGx5LiAgXHJcbiAgICAgIDwvcD48Lz5cclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgICAgdGFnczogW1wicGlwZWxpbmVcIl0sXHJcbiAgICAgICAgdGl0bGU6IFwiZXJyb3IgVFM2MTMzOiAnZXZlbnQnIGlzIGRlY2xhcmVkIGJ1dCBpdHMgdmFsdWUgaXMgbmV2ZXIgcmVhZC5cIixcclxuICAgICAgICBleGFtcGxlY2hpbGRyZW46IDw+SG9yaXpvbnRhbFRpbWVsaW5lLnRzeDogXHJcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJ0ZXJtaW5hbC1ib3hcIj5cclxuICAgICAgICAgICQgeWFybiBidWlsZFxyXG4gICAgICAgICAgPHA+eWFybiBydW4gdjEuMjIuMTk8L3A+XHJcbiAgICAgICAgICA8cD4kIHRzYyAmJiB2aXRlIGJ1aWxkPC9wPlxyXG4gICAgICAgICAgPHAgY2xhc3NOYW1lPVwidGVybWluYWwtZXJyb3JcIj5zcmMvY29tcG9uZW50cy9Ib3Jpem9udGFsVGltZWxpbmUudHN4KDY3LDIzKTogZXJyb3IgVFM2MTMzOiAnZXZlbnQnIGlzIGRlY2xhcmVkIGJ1dCBpdHMgdmFsdWUgaXMgbmV2ZXIgcmVhZC5cclxuICAgICAgICAgIGVycm9yIENvbW1hbmQgZmFpbGVkIHdpdGggZXhpdCBjb2RlIDIuPC9wPlxyXG4gICAgICAgICAgPHA+aW5mbyBWaXNpdCBodHRwczovL3lhcm5wa2cuY29tL2VuL2RvY3MvY2xpL3J1biBmb3IgZG9jdW1lbnRhdGlvbiBhYm91dCB0aGlzIGNvbW1hbmQuPC9wPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPHA+aW48L3A+XHJcbiAgICAgICAgPENvZGU+XHJcbiAgICAgICAgY29uc3Qgb3BlblBvcCA9ICAoZXZlbnQgOiBSZWFjdC5Nb3VzZUV2ZW50Jmx0O0hUTUxCdXR0b25FbGVtZW50LCBNb3VzZUV2ZW50Jmd0OykgPSZndDsge31cclxuICAgICAgICA8L0NvZGU+PC8+LFxyXG4gICAgICAgIHNvbHV0aW9uY2hpbGRyZW46IDw+PHA+Q2hhbmdlIHRvOiA8L3A+XHJcbiAgICAgICAgPENvZGU+XHJcbiAgICAgICAgY29uc3Qgb3BlblBvcCA9ICAoX2V2ZW50IDogUmVhY3QuTW91c2VFdmVudCZsdDtIVE1MQnV0dG9uRWxlbWVudCwgTW91c2VFdmVudCZndDspID0mZ3Q7IHt9XHJcbiAgICAgICAgPC9Db2RlPjwvPlxyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgICB0YWdzOiBbXCJodG1sXCJdLFxyXG4gICAgICAgIHRpdGxlOiBcIlVuZXhwZWN0ZWQgdG9rZW4uIERpZCB5b3UgbWVhbiBgeyc+J31gIG9yIGAmZ3Q7YD9cXFwiIGlkPVxcXCJ3aWtpLXRyb3VibGUtMTZcIixcclxuICAgICAgICBleGFtcGxlY2hpbGRyZW46IDw+PC8+LFxyXG4gICAgICAgIHNvbHV0aW9uY2hpbGRyZW46IDw+PC8+XHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICAgIHRhZ3M6IFtcInJlYWN0XCIsIFwidHlwZVwiXSxcclxuICAgICAgICB0aXRsZTogXCJUeXBlICd4IHwgdW5kZWZpbmVkJyBpcyBub3QgYXNzaWduYWJsZSB0byB0eXBlICd4J1wiLFxyXG4gICAgICAgIGV4YW1wbGVjaGlsZHJlbjogPD48Lz4sXHJcbiAgICAgICAgc29sdXRpb25jaGlsZHJlbjogPD48Lz5cclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgICAgdGFnczogW1wicmVhY3RcIiwgXCJ0eXBlXCIsIFwicHJvcGVydGllc1wiXSxcclxuICAgICAgICB0aXRsZTogXCJUeXBlIFggaXMgbWlzc2luZyB0aGUgZm9sbG93aW5nIHByb3BlcnRpZXMgZnJvbSB0eXBlIFk6IGEsIGIsIGNcIixcclxuICAgICAgICBleGFtcGxlY2hpbGRyZW46IDw+PHAgY2xhc3NOYW1lPVwicHJvYmxlbS1lcnJvclwiPlxyXG4gICAgICAgIFR5cGUgJyYjMTIzOyBkYXRlOiBzdHJpbmc7IHRleHQ6IHN0cmluZzsgJiMxMjU7JyBpcyBtaXNzaW5nIHRoZSBmb2xsb3dpbmcgcHJvcGVydGllcyBmcm9tIHR5cGUgJ1RleHRFdmVudFByb3BzJzogbWFya2VyLCBjYXJkXHJcbiAgICAgICAgPC9wPlxyXG4gICAgICAgIDxwPkluIHJlZmVyZW5jZSBvZiB0aGUgaW50ZXJmYWNlIFRleHRFdmVudFByb3BzOjwvcD5cclxuICAgICAgICA8Q29kZT5cclxuICAgICAgICA8cD5pbnRlcmZhY2UgVGV4dEV2ZW50UHJvcHMgJiMxMjM7IDwvcD5cclxuICAgICAgICA8cD5kYXRlOiBzdHJpbmc7IDwvcD5cclxuICAgICAgICA8cD50ZXh0OiBzdHJpbmc7IDwvcD5cclxuICAgICAgICA8cD5tYXJrZXI6IFJlYWN0LlJlYWN0Tm9kZTsgPC9wPlxyXG4gICAgICAgIDxwPmlkOiBzdHJpbmc7IDwvcD5cclxuICAgICAgICA8cD5jYXJkOiBGdW5jdGlvbjsgPC9wPlxyXG4gICAgICAgICYjMTI1O1xyXG4gICAgICAgIDwvQ29kZT5cclxuICAgICAgICA8cD5Gb3IgdGhlIGNvZGU6PC9wPlxyXG4gICAgICAgIDxDb2RlPlxyXG4gICAgICAgICAgPHA+ICZsdDtUZXh0RXZlbnQgPC9wPlxyXG4gICAgICAgICAgPHA+IGlkPVwiMDVcIjwvcD5cclxuICAgICAgICAgIDxwPiBkYXRlPVwiMTQtMDYtMjAyNFwiPC9wPlxyXG4gICAgICAgICAgPHA+IHRleHQ9XCJUZXN0IHRlc3RcIjwvcD5cclxuICAgICAgICAgIDxwPiAvJmd0OzwvcD5cclxuICAgICAgICA8L0NvZGU+PC8+LFxyXG4gICAgICAgIHNvbHV0aW9uY2hpbGRyZW46IDw+XHJcbiAgICAgICAgPGg2PlNvbHV0aW9uczwvaDY+XHJcbiAgICAgICAgPHA+T25lIHNvbHV0aW9uIGNvdWxkIGJlIGdldHRpbmcgcmlkIG9mIHRoZSBwcm9wZXJ0aWVzIHlvdSBkbyBub3QgbmVlZCBldmVyeXdoZXJlIGFuZCBjcmVhdGUgbmV3IHByb3BlcnR5IGludGVyZmFjZXMgZm9yIGFsbCBjYXNlcy48L3A+XHJcbiAgICAgICAgPHA+SWYgeW91IHdhbnQgdG8gc3RpY2sgdG8gbW9yZSBnZW5lcmFsIEludGVyZmFjZXMsIHlvdSBjYW4gbWFrZSBwcm9wZXJ0aWVzIG9wdGlvbmFsOjwvcD5cclxuICAgICAgICA8Q29kZT5cclxuICAgICAgICA8cD5pbnRlcmZhY2UgVGV4dEV2ZW50UHJvcHMgJiMxMjM7IDwvcD5cclxuICAgICAgICA8cD5kYXRlOiBzdHJpbmc7IDwvcD5cclxuICAgICAgICA8cD50ZXh0OiBzdHJpbmc7IDwvcD5cclxuICAgICAgICA8cD5tYXJrZXI/OiBSZWFjdC5SZWFjdE5vZGU7IDwvcD5cclxuICAgICAgICA8cD5pZDogc3RyaW5nOyA8L3A+XHJcbiAgICAgICAgPHA+Y2FyZD86IEZ1bmN0aW9uOyA8L3A+XHJcbiAgICAgICAgJiMxMjU7XHJcbiAgICAgICAgPC9Db2RlPlxyXG4gICAgICAgIDxwPlJlbWVtYmVyIHRoYXQgdGhpcyBjYW4gbGVhZCB0byBkaWZmZXJlbnQgcmV0dXJuIGNhc2VzIGZvciB5b3VyIGZ1bmN0aW9ucy48L3A+PC8+XHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICAgIHRhZ3M6IFtcInJlYWN0XCIsIFwidHlwZVwiLCBcInByb3BlcnRpZXNcIl0sXHJcbiAgICAgICAgdGl0bGU6IFwiUHJvcGVydHkgeCBkb2VzIG5vdCBleGlzdCBvbiB0eXBlIFkuXCIsXHJcbiAgICAgICAgZXhhbXBsZWNoaWxkcmVuOiA8PjwvPixcclxuICAgICAgICBzb2x1dGlvbmNoaWxkcmVuOiA8PjwvPlxyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgICB0YWdzOiBbXCJyZWFjdFwiLCBcInR5cGVcIiwgXCJwcm9wZXJ0aWVzXCJdLFxyXG4gICAgICAgIHRpdGxlOiBcIlByb3BlcnR5IHggaXMgbWlzc2luZyBpbiB0eXBlIHkgYnV0IHJlcXVpcmVkIGluIHR5cGUgei5cIixcclxuICAgICAgICBleGFtcGxlY2hpbGRyZW46IDw+PHAgY2xhc3NOYW1lPVwicHJvYmxlbS1lcnJvclwiPiBBcmd1bWVudCBvZiB0eXBlICcmIzEyMzsgW3g6IHN0cmluZ106IGFueTsgJiMxMjU7JyBpcyBub3QgYXNzaWduYWJsZSB0byBwYXJhbWV0ZXIgb2YgdHlwZSAnJiMxMjM7IGNsYXNzTmFtZXM6IHN0cmluZ1tdOyAmIzEyNTsnLlxyXG4gICAgICAgIFByb3BlcnR5ICdjbGFzc05hbWVzJyBpcyBtaXNzaW5nIGluIHR5cGUgJyYjMTIzOyBbeDogc3RyaW5nXTogYW55OyAmIzEyNTsnIGJ1dCByZXF1aXJlZCBpbiB0eXBlICcmIzEyMzsgY2xhc3NOYW1lczogc3RyaW5nW107ICYjMTI1OycuPC9wPlxyXG4gICAgICAgIDxwPiBmb3IgPC9wPlxyXG4gICAgICAgIDxDb2RlPmNsYXNzTmFtZT0mIzEyMztqb2luQ2xhc3NOYW1lcygmIzEyMztbJiMzOTt0ZXh0LWV2ZW50JiMzOTssIGNsYXNzTmFtZV0mIzEyNTspJiMxMjU7IDwvQ29kZT5cclxuICAgICAgICA8Lz4sXHJcbiAgICAgICAgc29sdXRpb25jaGlsZHJlbjogPD48cD5JbiB0aGlzIGV4YW1wbGUsIHRoZSBwcm9ibGVtIHdhcyB0aGF0IHRoZSBwcm9wZXJ0eSBcImNsYXNzTmFtZXNcIiB3YXMgbm90IGV4cGxpY2l0bHkgbmFtZWQuPC9wPlxyXG4gICAgICAgIDxwPkNoYW5naW5nIGl0IHRvIDwvcD5cclxuICAgICAgICAgIDxDb2RlPmNsYXNzTmFtZT0mIzEyMztqb2luQ2xhc3NOYW1lcygmIzEyMzs8Yj5jbGFzc05hbWVzOjwvYj5bJiMzOTt0ZXh0LWV2ZW50ICYjMzk7LCBjbGFzc05hbWVdJiMxMjU7KSYjMTI1OzwvQ29kZT5cclxuICAgICAgICA8Lz5cclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgICAgdGFnczogW1wiY3NzXCJdLFxyXG4gICAgICAgIHRpdGxlOiBcIkkgYWRkZWQgY3NzIHN0eWxlcyBidXQgdGhleSBkbyBub3Qgc2hvd1wiLFxyXG4gICAgICAgIGV4YW1wbGVjaGlsZHJlbjogPD48cD5UaGUgY29sb3IgaXMgbm90IHNob3dpbmcgb24gaG92ZXIuPC9wPlxyXG4gICAgICAgIDxDb2RlPi5uYXYtbGluazpob3ZlciAmIzEyMztcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS1kYXJrcHVycGxlKTtcclxuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXllbGxvdykgIWltcG9ydGFudDtcclxuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcclxuICAgICAgICAgICYjMTI1OzwvQ29kZT48Lz4sXHJcbiAgICAgICAgc29sdXRpb25jaGlsZHJlbjogPD48cD5TdHlsZXMgbm90IHNob3dpbmcgaXMgb2Z0ZW4gYSBjYXNlIG9mIGEgZGlmZmVyZW50IHN0eWxlIG92ZXJyaWRpbmcgeW91ciBzdHlsZS4gU29tZSBzdHlsZXMgYXJlIHByZSBkZWZpbmVkIGJ5IGJvb3RzdHJhcCBvciBvdGhlciBwYWNrYWdlcyB5b3UgbWF5IHVzZS4gPC9wPlxyXG4gICAgICAgIDxwPiBJZiBhbiBleHRlcm5hbCBwYWNrYWdlIGlzIG92ZXJyaWRpbmcgeW91ciBzdHlsZSwgeW91IG5lZWQgdG8gYWRkIHRoZSA8Yj4haW1wb3J0YW50PC9iPiB0YWcgdG8geW91ciBzdHlsZS4gPC9wPlxyXG4gICAgICAgIDxwPiBJZiBvbmUgb2YgeW91ciBvd24gc3R5bGVzIGlzIG92ZXJyaWRpbmcgdGhlIG5ldyBzdHlsZSwgeW91IGNhbiBjaGFuZ2UgeW91ciBvbGQgc3R5bGUgb3IgZGVmaW5lIGEgbmV3LCBtb3JlIHNwZWNpZmljIHN0eWxlIGNhc2UuIEUuZy4gYnkgdXNpbmcgYSBtb3JlIHNwZWNpZmljIGNzcyBwYXRoLiBCdXQgeW91IG1heSBzdGlsbCBuZWVkIHRvIGFkZCB0aGUgPGI+IWltcG9ydGFudDwvYj4gdGFnLiA8L3A+XHJcbiAgICAgICAgPENvZGU+IC5uYXYtbGluazpob3ZlciAmIzEyMztcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS1kYXJrcHVycGxlKSA8Yj4haW1wb3J0YW50PC9iPjtcclxuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXllbGxvdykgIWltcG9ydGFudDtcclxuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcclxuICAgICAgICAgICYjMTI1O1xyXG4gICAgICAgICAgPC9Db2RlPjwvPlxyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgICB0YWdzOiBbXCJjc3NcIiwgXCJzY3JpcHRcIl0sXHJcbiAgICAgICAgdGl0bGU6IFwiKHN1YnRhYnNbaV0gYXMgSFRNTEVsZW1lbnQpLnN0eWxlLmRpc3BsYXkgPSBcXFwieFxcXCI7IGlzIG5vdCB3b3JraW5nLlwiLFxyXG4gICAgICAgIGV4YW1wbGVjaGlsZHJlbjogPD48Lz4sXHJcbiAgICAgICAgc29sdXRpb25jaGlsZHJlbjogPD48Lz5cclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgICAgdGFnczogW1wicmVhY3RcIiwgXCJzY3JpcHRcIl0sXHJcbiAgICAgICAgdGl0bGU6IFwiUHJvcGVydHkgJ3N0eWxlJyBkb2VzIG5vdCBleGlzdCBvbiB0eXBlICdFbGVtZW50Jy5cIixcclxuICAgICAgICBleGFtcGxlY2hpbGRyZW46IDw+XHJcbiAgICAgICAgPHAgY2xhc3NOYW1lPVwicHJvYmxlbS1lcnJvclwiPlxyXG4gICAgICAgICAgICBQcm9wZXJ0eSAnc3R5bGUnIGRvZXMgbm90IGV4aXN0IG9uIHR5cGUgJ0VsZW1lbnQnLlxyXG4gICAgICAgIDwvcD5cclxuICAgICAgICA8cD5mb3IgdGhlIENvZGU6IDwvcD5cclxuICAgICAgICA8Q29kZT5cclxuICAgICAgICBjb25zdCBzdWJ0YWJzICYjeDNEOyBkb2N1bWVudC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKCZxdW90O3NpZGVzdWJ0YWImcXVvdDspO1xyXG5cclxuICAgICAgICBmb3IgKGxldCBpICYjeDNEOyAwOyBpICZsdDsgc3VidGFicy5sZW5ndGg7IGkrKykgJiMxMjM7XHJcbiAgICAgICAgICAgIChzdWJ0YWJzW2ldKS5zdHlsZS5kaXNwbGF5ICYjeDNEOyAmcXVvdDtub25lJnF1b3Q7O1xyXG4gICAgICAgICAgICBjb25zb2xlLmxvZyhcXCYjeDYwO0hpZGluZyBzdWJ0YWI6ICQmIzEyMztzdWJ0YWJzW2ldLmlkJiMxMjU7XFwmI3g2MDspO1xyXG4gICAgICAgICAgICAmIzEyNTtcclxuICAgICAgICA8L0NvZGU+XHJcbiAgICAgICAgPC8+LFxyXG4gICAgICAgIHNvbHV0aW9uY2hpbGRyZW46IDw+PC8+XHJcbiAgICB9LFxyXG5cclxuXHJcbiAgICBdIiwgIlxyXG5pbXBvcnQgeyBXaWtpU2VsZWN0b3IgfSBmcm9tIFwiLi4vLi4vLi4vY29tcG9uZW50cy9GaWx0ZXJcIjtcclxuaW1wb3J0IHsgRmlsdGVyYWJsZXMgfSBmcm9tIFwiLi9GaWx0ZXJhYmxlc1wiO1xyXG5pbXBvcnQgeyB0cm91YmxlZGF0YSB9IGZyb20gXCIuL3Ryb3VibGUtZGF0YVwiO1xyXG5leHBvcnQgZnVuY3Rpb24gVHJvdWJsZXNob290aW5nKCl7XHJcbiAgbGV0IGl0ZW1zID0gRmlsdGVyYWJsZXModHJvdWJsZWRhdGEpXHJcbiAgcmV0dXJuKFxyXG4gICAgPGRpdj5cclxuICAgICAgUGxlYXNlIHNlbGVjdCB3aGF0IHlvdSB3YW50IHRvIHRyb3VibGVzaG9vdCBmb3IuIFxyXG4gICAgICA8V2lraVNlbGVjdG9yPjwvV2lraVNlbGVjdG9yPlxyXG4gICAgICA8ZGl2IGlkPVwibm9ub1wiIGNsYXNzTmFtZT1cIm5vc2hvd1wiPlxyXG4gICAgICAgIFRoaXMgY29tYmluYXRpb24gcmV0dXJucyBubyBpbnN0YW5jZXMuIFxyXG4gICAgICA8L2Rpdj5cclxuICAgICAge2l0ZW1zfVxyXG5cclxuXHJcblxyXG5cclxuXHJcblxyXG5cclxuXHJcblxyXG4gICAgPC9kaXY+XHJcbiAgKVxyXG59IFxyXG4iLCAiXHJcbmV4cG9ydCBmdW5jdGlvbiBXaWtpT3ZlcnZpZXcoKXtcclxuXHJcbiAgICByZXR1cm4oXHJcbiAgICAgICAgPGRpdj5cclxuICAgICAgICAgICAgICAgIDxwPlRoaXMgY29udGVudCBpcyBub3QgeWV0IGZpbmlzaGVkIGFuZCB3aWxsIGJlIHJld29ya2VkIGFmdGVyIHRoZSBKYW1ib3JlZS48L3A+XHJcbiAgICAgICAgICAgICAgICA8cD5UbyBoZWxwIHRlYW1zIGdldCBzdGFydGVkLCB3ZSB3cm90ZSBkb3duIHdoYXQgd2Ugd2lzaGVkIHdlIHdvdWxkIGhhdmUgZWFzaWx5IGZvdW5kIHdoaWxlIGJ1aWxkaW5nIG91ciB3aWtpIHdpdGggUmVhY3QuPC9wPlxyXG4gICAgICAgICAgICAgICAgPHA+PGI+R2V0dGluZyBzdGFydGV0PC9iPiBleHBsYWlucyBzb21lIGJhc2ljcyB0aGF0IGFyZSBpbXBvcnRhbnQgdG8ga25vdy4gVGhpcyBlc3BlY2lhbGx5IGNvbmNlcm5zIHRoZSBkaWZmZXJlbmNlcyBiZXR3ZWVuIHVzaW5nIHBsYWluIEhUTUwgYW5kIFJlYWN0LCBidXQgdGhlIHN0cnVjdHVyZSBvZiB0aGUgd2lraSwgdG9vLiA8L3A+XHJcbiAgICAgICAgICAgICAgICA8cD48Yj5Ucm91Ymxlc2hvb3Rpbmc8L2I+IGlzIGFuIGl0ZXJhY3RpdmUgc2VhcmNoIGZvciBwcm9ibGVtcyB0aGF0IG1heSBhcmlzZSBhbmQgaG93IHdlIHNvbHZlZCB0aGVtLiAgPC9wPlxyXG4gICAgICAgICAgICAgICAgPHA+PGI+Q29tcG9uZW50czwvYj4gY29udGFpbnMgc29tZSBjb21wb25lbnRzIHdlIHVzZWQgdGhhdCB3ZSBmb3VuZCB2ZXJ5IGhlbHBmdWwuIE1hbnkgcGFja2FnZXMgdGhhdCBvZmZlciBjb21wb25lbnRzIHN1Y2ggYXMgdGltZWxpbmVzIHdlcmUgbm90IGV4YWN0bHkgd2hhdCB3ZSB3ZXJlIGxvb2tpbmcgZm9yIG9yIGRpZCBub3Qgd29yayB3aXRoIG91ciBwYWNrYWdlcy4gVGhlIHNvbHV0aW9uIHdhcyB0byBjcmVhdGUgb3VyIG93biBjb21wb25lbnRzLiA8L3A+XHJcbiAgICAgICAgICAgICAgICA8cD48Yj5Eb3dubG9hZHM8L2I+IGNvbnRhaW5zIHN2Z3Mgd2UgY3JlYXRlZCAtIG5vdCBhbGwgb2YgdGhlbSB3ZSB3ZXJlIGFibGUgdG8gdXNlLiA8L3A+XHJcbiAgICAgICAgICAgICAgICA8cD48Yj5SZXNvdXJjZXM8L2I+IGNvbnRhaW5zIGxpbmtzIHp1IGhlbHBmdWwgZXh0ZXJuYWwuIDwvcD5cclxuICAgICAgICA8L2Rpdj5cclxuICAgIClcclxufSIsICJpbXBvcnQgeyBINCB9IGZyb20gXCIuLi8uLi8uLi9jb21wb25lbnRzL0hlYWRpbmdzXCI7XHJcbmltcG9ydCB7IFBERiB9IGZyb20gXCIuLi8uLi8uLi9jb21wb25lbnRzL1BkZnNcIjtcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBXaWtpRG93bigpe1xyXG5cclxuICAgIHJldHVybihcclxuICAgIDw+XHJcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wgY3ljbGV0YWJcIiBpZD1cImZseWVyc1wiIHN0eWxlPXt7ZGlzcGxheTogXCJibG9ja1wifX0+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSdyb3cgYWxpZ24taXRlbXMtY2VudGVyJz5cclxuICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiT3VyIFdpa2kgSGVscGVyXCIvPlxyXG4gICAgICAgICAgICAgICAgPFBERiBsaW5rPSdodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9wZGZzL3Zva2FiZWxsaXN0ZS13aWtpLnBkZicgbmFtZT1cInZva2FiZWxsaXN0ZS13aWtpLnBkZlwiLz5cclxuICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwic3Znc1wiLz5cclxuICAgICAgICAgICAgICAgIDxwPldlIGRpZCBub3QgdXNlIGFsbCBvZiBvdXIgc3ZncyBidXQgc2luY2UgdGhpcyBmaWxlIGZvcm1hdCBsb29rcyBzbyBnb29kLCB3ZSB3YW50IHRvIG9mZmVyIGFsbCBvdXIgc3ZncyB0byBmdXR1cmUgaUdFTWVycy4gRmVlbCBmcmVlIHRvIHNhdmUsIHJld29yayBhbmQgdXNlIHRoZXNlIHN2Z3MuPC9wPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3dcIiBzdHlsZT17e21heEhlaWdodDogXCIxMDBweFwiLCBtYXJnaW5Cb3R0b206IFwiMXJlbVwiLCBtYXJnaW5Ub3A6IFwiMXJlbVwifX0+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgICAgICAgICAgICA8aW1nIHN0eWxlPXt7bWF4SGVpZ2h0OiBcIjgwcHhcIn19IHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3NjaWVudGlmaWMtZmlndXJlcy9hbGJ1dGVyb2wuc3ZnXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGltZyBzdHlsZT17e21heEhlaWdodDogXCI4MHB4XCJ9fSBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9kZXNpZ24vaWNvbnMvZG5hLXN0cmFuZy1zY2htYWwtZmF0LnN2Z1wiLz5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxpbWcgc3R5bGU9e3ttYXhIZWlnaHQ6IFwiODBweFwifX0gc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvc2NpZW50aWZpYy1maWd1cmVzL2FudGliaW90aWNzLWNhcHN1bGUuc3ZnXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgIGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxpbWcgIHN0eWxlPXt7bWF4SGVpZ2h0OiBcIjgwcHhcIn19c3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvc2NpZW50aWZpYy1maWd1cmVzL2FudGliaW90aWNzLWNhcHN1bGUuc3ZnXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGltZyBzdHlsZT17e21heEhlaWdodDogXCI4MHB4XCJ9fSBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9zY2llbnRpZmljLWZpZ3VyZXMvaHlwZXJ0b25pYy1zYWxpbmUtc2luZ2xlLnN2Z1wiLz5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGhyLz5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93XCIgc3R5bGU9e3ttYXhIZWlnaHQ6IFwiMTAwcHhcIiwgbWFyZ2luQm90dG9tOiBcIjFyZW1cIiwgbWFyZ2luVG9wOiBcIjFyZW1cIn19PlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGltZyBzdHlsZT17e21heEhlaWdodDogXCI4MHB4XCJ9fSBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9zY2llbnRpZmljLWZpZ3VyZXMvY291Z2guc3ZnXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGltZyBzdHlsZT17e21heEhlaWdodDogXCI4MHB4XCJ9fSBzcmM9XCJcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgICAgICAgICAgICA8aW1nIHN0eWxlPXt7bWF4SGVpZ2h0OiBcIjgwcHhcIn19IHNyYz1cIlwiLz5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxpbWcgc3R5bGU9e3ttYXhIZWlnaHQ6IFwiODBweFwifX0gc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvc2NpZW50aWZpYy1maWd1cmVzL2hwLWludHJvZHVjdGlvbi1jeWNsZS1vdXItY29sb3JzLnN2Z1wiLz5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxpbWcgIHN0eWxlPXt7bWF4SGVpZ2h0OiBcIjgwcHhcIn19c3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvc2NpZW50aWZpYy1maWd1cmVzL2ZlZWRiYWNrY3ljbGUuc3ZnXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxoci8+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93XCIgc3R5bGU9e3ttYXhIZWlnaHQ6IFwiMTAwcHhcIiwgbWFyZ2luQm90dG9tOiBcIjFyZW1cIiwgbWFyZ2luVG9wOiBcIjFyZW1cIn19PlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGltZyBzdHlsZT17e21heEhlaWdodDogXCI4MHB4XCJ9fSBzcmM9XCJcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgICAgICAgICAgICA8aW1nIHN0eWxlPXt7bWF4SGVpZ2h0OiBcIjgwcHhcIn19IHNyYz1cIlwiLz5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxpbWcgc3R5bGU9e3ttYXhIZWlnaHQ6IFwiODBweFwifX0gc3JjPVwiXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGltZyBzdHlsZT17e21heEhlaWdodDogXCI4MHB4XCJ9fSBzcmM9XCJcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgICAgICAgICAgICA8aW1nIHN0eWxlPXt7bWF4SGVpZ2h0OiBcIjgwcHhcIn19IHNyYz1cIlwiLz5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGhyLz5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93XCIgc3R5bGU9e3ttYXhIZWlnaHQ6IFwiMTAwcHhcIiwgbWFyZ2luQm90dG9tOiBcIjFyZW1cIiwgbWFyZ2luVG9wOiBcIjFyZW1cIn19PlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGltZyAgc3R5bGU9e3ttYXhIZWlnaHQ6IFwiODBweFwifX0gc3JjPVwiXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGltZyBzdHlsZT17e21heEhlaWdodDogXCI4MHB4XCJ9fSBzcmM9XCJcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgICAgICAgICAgICA8aW1nIHN0eWxlPXt7bWF4SGVpZ2h0OiBcIjgwcHhcIn19IHNyYz1cIlwiLz5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxpbWcgc3R5bGU9e3ttYXhIZWlnaHQ6IFwiODBweFwifX0gc3JjPVwiXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGltZyBzdHlsZT17e21heEhlaWdodDogXCI4MHB4XCJ9fSBzcmM9XCJcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICA8Lz5cclxuICAgIClcclxufSIsICJpbXBvcnQgeyBTdWJlc2N0aW9uIH0gZnJvbSBcIi4uLy4uLy4uL2NvbXBvbmVudHMvc2VjdGlvbnNcIjtcclxuaW1wb3J0IHsgV2lraVRhYnMgfSBmcm9tIFwiLi93aWtpLXRhYnNcIjtcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBXaWtpICAoKSB7XHJcbiAgICByZXR1cm4gKFxyXG4gICAgICAgICA8U3ViZXNjdGlvbiB0aXRsZT1cIldpa2kgRGV2ZWxvcGVtZW50XCIgaWQ9XCJPdXIgQ29udHJpYnV0aW9uczJcIj5cclxuICAgICAgICAgICAgPFdpa2lUYWJzPjwvV2lraVRhYnM+IFxyXG4gICAgICAgICA8L1N1YmVzY3Rpb24+XHJcbiAgICApO1xyXG4gIH1cclxuICAiLCAiaW1wb3J0IHsgR3VpZGVQREYgfSBmcm9tIFwiLi4vLi4vY29tcG9uZW50cy9QZGZzXCI7XHJcbmltcG9ydCB7IFNlY3Rpb24sIFN1YmVzY3Rpb24gfSBmcm9tIFwiLi4vLi4vY29tcG9uZW50cy9zZWN0aW9uc1wiO1xyXG5pbXBvcnQgeyB1c2VUYWJOYXZpZ2F0aW9uIH0gZnJvbSBcIi4uLy4uL3V0aWxzL1RhYk5hdmlnYXRpb25cIjtcclxuaW1wb3J0IHsgTWVldFVQIH0gZnJvbSBcIi4vQkZIL2JmaFwiO1xyXG5pbXBvcnQgeyBDb2xsYWJDb250cmlidXRpb24gfSBmcm9tIFwiLi9jb2xsYWJzXCI7XHJcbmltcG9ydCB7IFNhZmV0eUNvbnRyaWJ1dGlvbiB9IGZyb20gXCIuL3NhZmV0eS1jb250cmlidXRpb25cIjtcclxuaW1wb3J0IHsgV2lraSB9IGZyb20gXCIuL1dpa2kvd2lraVwiO1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIENvbnRyaWJ1dGlvbigpIHtcclxuICB1c2VUYWJOYXZpZ2F0aW9uKCk7XHJcbiAgcmV0dXJuIChcclxuICAgIDw+XHJcbiAgICAgIDxTZWN0aW9uIHRpdGxlPVwiQWJzdHJhY3RcIiBpZD1cIkFic3RyYWN0XCI+XHJcbiAgICAgICAgPHA+VGhlIEJGSCBFdXJvcGVhbiBNZWV0LVVwIHNob3djYXNlZCBzaWduaWZpY2FudCBjb250cmlidXRpb25zIHRvIHRoZSBpR0VNIGNvbW11bml0eSB0aHJvdWdoIGV4dGVuc2l2ZSBjb2xsYWJvcmF0aW9ucyBhbmQgaW5ub3ZhdGl2ZSBhZHZhbmNlbWVudHMuIE91ciBrZXkgY29udHJpYnV0aW9ucyBpbmNsdWRlIHRoZSBkZXZlbG9wbWVudCBvZiB0aGUgQkZIIEd1aWRlbGluZSBpbiBwYXJ0bmVyc2hpcCB3aXRoIGlHRU0gdGVhbXMgSGFtYnVyZyBhbmQgRnJhbmtmdXJ0LCBwcm92aWRpbmcgYSBibHVlcHJpbnQgZm9yIGZ1dHVyZSBNZWV0IFVwcywgYW5kIGEgY29sbGFib3JhdGl2ZSB2aWRlbyBwb2RjYXN0IHdpdGggaUdFTSBNXHUwMEZDbnN0ZXIsIG9mZmVyaW5nIGluc2lnaHRzIGludG8gdGVhbSBncm93dGguIDwvcD5cclxuICAgICAgICA8cD5BZGRpdGlvbmFsbHksIHdlIGNvbnRyaWJ1dGVkIHRvIHRoZSBMTlAgSGFuZGJvb2sgd2l0aCB0ZWFtcyBmcm9tIDxhIGhyZWY9XCJodHRwczovLzIwMjQuaWdlbS53aWtpL2xpbmtvcGluZy9cIj5MaW5rb3Bpbmc8L2E+LCA8YSBocmVmPVwiaHR0cHM6Ly8yMDI0LmlnZW0ud2lraS9wYXRyYXMvXCI+UGF0cmFzPC9hPiwgPGEgaHJlZj1cImh0dHBzOi8vMjAyNC5pZ2VtLndpa2kvcmFkYm91ZC11bml2ZXJzaXR5L3RlYW1cIj5SYWRib3VkIFVuaXZlcnNpdHk8L2E+LCBhbmQgPGEgaHJlZj1cImh0dHBzOi8vMjAyNC5pZ2VtLndpa2kvdGVybW9zei1zZWx5ZS1odW4vXCI+VEVSTU9TWi1TZWx5ZS1IVU48L2E+LCBhZHZhbmNpbmcgbGlwaWQtYmFzZWQgZGVsaXZlcnkgc3lzdGVtcyBmb3IgdGhlcmFwZXV0aWMgdXNlLiA8L3A+XHJcbiAgICAgICAgPHA+T24gdGhlIHNjaWVudGlmaWMgZnJvbnQsIHdlIGRldmVsb3BlZCBwcmFjdGljYWwgdG9vbHMgbGlrZSBhIGNvbGxlY3Rpb24gb2Ygb3B0aW1pemVkIHByb3RvY29scywgdGhlIFByZUNMIHJlcG9ydGVyIHN5c3RlbSBmb3IgUHJpbWUgRWRpdGluZywgYW5kIHRoZSBpbm5vdmF0aXZlIFByaW1lR3VpZGUgUHJpbWUgRWRpdGluZyB0ZWNobm9sb2d5LCBlbmhhbmNpbmcgcmVzZWFyY2ggZWZmaWNpZW5jeSBhbmQgcHJlY2lzaW9uLiBPdXIgQWlyQnVkZHkgbGlwaWQgbmFub3BhcnRpY2xlIHN5c3RlbSByZXByZXNlbnRzIGEgYnJlYWt0aHJvdWdoIGluIGdlbmUgdGhlcmFweSwgb2ZmZXJpbmcgYSBzYWZlciBhbmQgbW9yZSBlZmZlY3RpdmUgbWV0aG9kIGZvciBsdW5nLXNwZWNpZmljIFJOQSBhbmQgRE5BIGRlbGl2ZXJ5LiBUaGVzZSBjb2xsYWJvcmF0aW9ucyBhbmQgaW5ub3ZhdGlvbnMgd2lsbCBoYXZlIGEgbGFzdGluZyBpbXBhY3QsIHN1cHBvcnRpbmcgZnV0dXJlIGlHRU0gdGVhbXMgYW5kIGRyaXZpbmcgZm9yd2FyZCBzeW50aGV0aWMgYmlvbG9neSByZXNlYXJjaC4gPC9wPlxyXG4gICAgICA8L1NlY3Rpb24+XHJcbiAgICAgIDxNZWV0VVAvPlxyXG5cclxuICAgICAgPFNlY3Rpb24gdGl0bGU9XCJPdXIgQ29sbGFib3JhdGlvbnNcIiBpZD1cIk91ciBDb2xsYWJvcmF0aW9uc1wiPlxyXG4gICAgICAgIDxTdWJlc2N0aW9uIHRpdGxlPVwiTWVldFVwIEd1aWRlbGluZVwiIGlkPVwiT3VyIENvbGxhYm9yYXRpb25zMVwiPlxyXG4gICAgICAgICAgICAgIDxHdWlkZVBERi8+XHJcbiAgICAgICAgICAgICAgPHA+SW4gY29vcGVyYXRpb24gd2l0aCB0aGUgaUdFTSB0ZWFtcyBIYW1idXJnIGFuZCBGcmFua2Z1cnQsIHdlIGhhdmUgZGV2ZWxvcGVkIGEgY29tcHJlaGVuc2l2ZSBndWlkZWxpbmUgZm9yIHRoZSBvcmdhbml6YXRpb24gb2YgYSBtZWV0LXVwLiBUaGlzIGd1aWRlbGluZSBzZXJ2ZXMgYXMgYSB0ZW1wbGF0ZSBmb3Igb3RoZXIgaUdFTSB0ZWFtcyBhbmQgcHJvdmlkZXMgYSBjb21wbGV0ZSBvdmVydmlldyBvZiBhbGwgZXNzZW50aWFsIGFzcGVjdHMgdGhhdCBzaG91bGQgYmUgY29uc2lkZXJlZCB3aGVuIHBsYW5uaW5nIGFuZCBvcmdhbml6aW5nIGEgc3VjY2Vzc2Z1bCBtZWV0LXVwLiBJdCBjb3ZlcnMgYWxsIHRoZSBuZWNlc3NhcnkgY29udGVudCwgZnJvbSBpbml0aWFsIGJyYWluc3Rvcm1pbmcgdG8gcHJhY3RpY2FsIGltcGxlbWVudGF0aW9uLCBhbmQgaXMgZGVzaWduZWQgdG8gaGVscCB0ZWFtcyBvcmdhbml6ZSB0aGVpciBvd24gZXZlbnRzIHNtb290aGx5LiA8L3A+XHJcbiAgICAgICAgICAgICAgPHA+QWRkaXRpb25hbGx5LCBpbiBjb2xsYWJvcmF0aW9uIHdpdGggaUdFTSBNXHUwMEZDbnN0ZXIsIHdlIGNyZWF0ZWQgYSB2aWRlbyBwb2RjYXN0IHRoYXQgc3VtbWFyaXplcyB0aGUgZGV2ZWxvcG1lbnRzIGFuZCBmZWVkYmFjayBmcm9tIHRoZSBwYXJ0aWNpcGF0aW5nIHRlYW1zIGFuZCByZWZsZWN0cyBvbiBib3RoIE1lZXQtdXBzLiBJdCB3YXMgcGFydGljdWxhcmx5IGludGVyZXN0aW5nIHRvIG9ic2VydmUgdGhlIGdyb3d0aCBvZiB0aGUgdGVhbSBtZW1iZXJzIGFuZCB0aGUgcHJvZ3Jlc3Mgb2YgdGhlaXIgcHJvamVjdHMuIFRoZSB2aWRlbyBwb2RjYXN0IHdpbGwgYmUgZmVhdHVyZWQgb24gdGhlIFdpa2kgcGFnZSBvZiBUZWFtIE1cdTAwRkNuc3RlciBhbmQgd2lsbCBhbHNvIGJlIGluY2x1ZGVkIGhlcmUgYWZ0ZXIgdGhlIFdpa2kgZnJlZXplLiA8L3A+XHJcbiAgICAgICAgICAgXHJcbiAgICAgICAgPC9TdWJlc2N0aW9uPiBcclxuICAgICAgICA8Q29sbGFiQ29udHJpYnV0aW9uLz5cclxuICAgICAgPC9TZWN0aW9uPlxyXG4gICAgICBcclxuICAgICAgPFNlY3Rpb24gdGl0bGU9XCJPdXIgQ29udHJpYnV0aW9uc1wiIGlkPVwiT3VyIENvbnRyaWJ1dGlvbnNcIj5cclxuICAgICAgICAgIDxTYWZldHlDb250cmlidXRpb24vPlxyXG4gICAgICAgICAgXHJcbiAgICAgICAgICA8V2lraS8+XHJcbiAgICAgIDwvU2VjdGlvbj5cclxuICAgICAgPFNlY3Rpb24gdGl0bGU9XCJDb25jbHVzaW9uXCIgaWQ9XCJDb25jbHVzaW9uXCI+XHJcbiAgICAgICAgPHA+VGhyb3VnaG91dCB0aGUgQkZIIEV1cm9wZWFuIE1lZXQtVXAsIHdlIGFjdGl2ZWx5IGVuZ2FnZWQgaW4gbWVhbmluZ2Z1bCBjb2xsYWJvcmF0aW9ucyBhbmQgbWFkZSBzaWduaWZpY2FudCBjb250cmlidXRpb25zIHRvIHRoZSBpR0VNIGNvbW11bml0eS4gSW4gcGFydG5lcnNoaXAgd2l0aCBpR0VNIHRlYW1zIEhhbWJ1cmcgYW5kIEZyYW5rZnVydCwgd2UgZGV2ZWxvcGVkIHRoZSBCRkggR3VpZGVsaW5lLCBhIGNvbXByZWhlbnNpdmUgcmVzb3VyY2UgZGVzaWduZWQgdG8gaGVscCBmdXR1cmUgdGVhbXMgc3VjY2Vzc2Z1bGx5IG9yZ2FuaXplIE1lZXQgVXBzLiBPdXIgY29sbGFib3JhdGlvbiB3aXRoIGlHRU0gTVx1MDBGQ25zdGVyIHJlc3VsdGVkIGluIGEgdmlkZW8gcG9kY2FzdCB0aGF0IHJlZmxlY3RzIG9uIHRoZSBncm93dGggYW5kIHByb2dyZXNzIG9mIHBhcnRpY2lwYXRpbmcgdGVhbXMsIHByb3ZpZGluZyB2YWx1YWJsZSBpbnNpZ2h0cyBmb3IgZnV0dXJlIGNvbXBldGl0aW9ucy4gIDwvcD5cclxuICAgICAgICA8cD5BZGRpdGlvbmFsbHksIHdlIHdvcmtlZCBhbG9uZ3NpZGUgdGVhbXMgZnJvbSA8YSBocmVmPVwiaHR0cHM6Ly8yMDI0LmlnZW0ud2lraS9saW5rb3BpbmcvXCI+TGlua29waW5nPC9hPiwgPGEgaHJlZj1cImh0dHBzOi8vMjAyNC5pZ2VtLndpa2kvcGF0cmFzL1wiPlBhdHJhczwvYT4sIDxhIGhyZWY9XCJodHRwczovLzIwMjQuaWdlbS53aWtpL3JhZGJvdWQtdW5pdmVyc2l0eS90ZWFtXCI+UmFkYm91ZCBVbml2ZXJzaXR5PC9hPiwgYW5kIDxhIGhyZWY9XCJodHRwczovLzIwMjQuaWdlbS53aWtpL3Rlcm1vc3otc2VseWUtaHVuL1wiPlRFUk1PU1otU2VseWUtSFVOPC9hPiB0byBjb250cmlidXRlIHRvIHRoZSBMTlAgSGFuZGJvb2ssIGFkdmFuY2luZyBrbm93bGVkZ2UgaW4gbGlwaWQtYmFzZWQgZGVsaXZlcnkgc3lzdGVtcyBmb3IgdGhlcmFwZXV0aWMgYXBwbGljYXRpb25zLiAgPC9wPlxyXG4gICAgICAgIDxwPk9uIHRoZSBzY2llbnRpZmljIGZyb250LCB3ZSBjcmVhdGVkIGEgY29sbGVjdGlvbiBvZiBwcm90b2NvbHMsIHRoZSBQcmVDTCByZXBvcnRlciBzeXN0ZW0sIGFuZCB0aGUgaW5ub3ZhdGl2ZSBQcmltZUd1aWRlIFByaW1lIEVkaXRpbmcgdGVjaG5vbG9neSwgYWxsIG9mIHdoaWNoIGFpbSB0byBlbmhhbmNlIHJlc2VhcmNoIGVmZmljaWVuY3kgYW5kIHByZWNpc2lvbi4gT3VyIEFpckJ1ZGR5IG5hbm9wYXJ0aWNsZSBzeXN0ZW0gZm9yIGx1bmctc3BlY2lmaWMgZGVsaXZlcnkgZnVydGhlciBleGVtcGxpZmllcyBvdXIgY29tbWl0bWVudCB0byBhZHZhbmNpbmcgZ2VuZSB0aGVyYXB5IHNvbHV0aW9ucy4gVGhlc2UgY29sbGFib3JhdGlvbnMgYW5kIGNvbnRyaWJ1dGlvbnMgbm90IG9ubHkgZW5yaWNoZWQgdGhlIGV2ZW50IGJ1dCB3aWxsIGNvbnRpbnVlIHRvIGhhdmUgYSBsYXN0aW5nIGltcGFjdCBvbiBmdXR1cmUgaUdFTSB0ZWFtcyBhbmQgc3ludGhldGljIGJpb2xvZ3kgcmVzZWFyY2guIDwvcD5cclxuICAgICAgPC9TZWN0aW9uPlxyXG5cclxuICAgICAgXHJcblxyXG4gICAgXHJcbiAgICAgIFxyXG4gICAgPC8+XHJcbiAgKTtcclxufVxyXG5cclxuXHJcblxyXG5cclxuXHJcblxyXG5cclxuXHJcblxyXG5cclxuIiwgIlxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIEJ1bGJCb3goe3RpdGxlLCBjaGlsZHJlbn06e3RpdGxlOiBzdHJpbmcsIGNoaWxkcmVuOiBSZWFjdC5SZWFjdE5vZGV9KXtcclxuICAgIHJldHVybihcclxuICAgICAgICA8YXNpZGUgY2xhc3NOYW1lPVwiaGludC1jb250YWluZXIgdGlwXCI+XHJcbiAgICAgICAgICA8cCBjbGFzc05hbWU9XCJoaW50LWNvbnRhaW5lci10aXRsZVwiPlxyXG4gICAgICAgICAgICB7dGl0bGV9XHJcbiAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInYtY2FyZC10ZXh0XCI+XHJcbiAgICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgICAgICAge2NoaWxkcmVufVxyXG4gICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2FzaWRlPlxyXG4gICAgKVxyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gUWFCb3goe3EsIGF9OntxOiBzdHJpbmcsIGE6IFJlYWN0LlJlYWN0Tm9kZX0pe1xyXG4gIHJldHVybihcclxuICAgICA8ZGl2IGNsYXNzTmFtZT1cInFhYm94XCI+XHJcbiAgICAgIDxkaXYgY2xhc3NOYW1lPVwicXVlc3Rpb24tYnViYmxlXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3dcIj5cclxuICAgICAgICB7cX1cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxkaXYgY2xhc3NOYW1lPVwicXVlc3Rpb24tYnViYmxlXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3dcIj5cclxuICAgICAgICB7YX1cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgPC9kaXY+XHJcbiAgKVxyXG59XHJcbmV4cG9ydCBmdW5jdGlvbiBTcGVjaWFsUWFCb3goe3EsIGNoaWxkcmVufTp7cTogc3RyaW5nLCBjaGlsZHJlbjogUmVhY3QuUmVhY3ROb2RlfSl7XHJcbiAgcmV0dXJuKFxyXG4gICAgIDxkaXYgY2xhc3NOYW1lPVwicWFib3hcIj5cclxuICAgICAgPGRpdiBjbGFzc05hbWU9XCJxdWVzdGlvbi1idWJibGVcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvd1wiPlxyXG4gICAgICAgIHtxfVxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPGRpdiBjbGFzc05hbWU9XCJxdWVzdGlvbi1idWJibGVcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvd1wiPlxyXG4gICAgICAgIHtjaGlsZHJlbn1cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgPC9kaXY+XHJcbiAgKVxyXG59XHJcblxyXG5cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBJbmZvQm94KHt0aXRsZSwgY2hpbGRyZW4sIGlkfTp7dGl0bGU6IHN0cmluZywgY2hpbGRyZW46IFJlYWN0LlJlYWN0Tm9kZSwgaWQ6IHN0cmluZ30pe1xyXG4gICAgcmV0dXJuKFxyXG4gICAgICAgIDxhc2lkZSBjbGFzc05hbWU9XCJoaW50LWNvbnRhaW5lciBpbmZvXCIgaWQ9e2lkfT5cclxuICAgICAgICAgIDxwIGNsYXNzTmFtZT1cImhpbnQtY29udGFpbmVyLXRpdGxlXCI+XHJcbiAgICAgICAgICAgIHt0aXRsZX1cclxuICAgICAgICAgIDwvcD5cclxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwidi1jYXJkLXRleHRcIj5cclxuICAgICAgICAgICAgPGRpdj5cclxuICAgICAgICAgICAgICAgIHtjaGlsZHJlbn1cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2FzaWRlPlxyXG4gICAgKVxyXG59XHJcbmV4cG9ydCBmdW5jdGlvbiBXYXJuQm94KHt0aXRsZSwgY2hpbGRyZW59Ont0aXRsZTogc3RyaW5nLCBjaGlsZHJlbjogUmVhY3QuUmVhY3ROb2RlfSl7XHJcbiAgICByZXR1cm4oXHJcbiAgICAgICAgPGFzaWRlIGNsYXNzTmFtZT1cImhpbnQtY29udGFpbmVyIHdhcm5pbmdcIj5cclxuICAgICAgICAgIDxwIGNsYXNzTmFtZT1cImhpbnQtY29udGFpbmVyLXRpdGxlXCI+XHJcbiAgICAgICAgICAgIHt0aXRsZX1cclxuICAgICAgICAgIDwvcD5cclxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwidi1jYXJkLXRleHRcIj5cclxuICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgICAgICB7Y2hpbGRyZW59XHJcbiAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvYXNpZGU+XHJcbiAgICApXHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBCbHVlSW5mb0JveCh7dGl0bGUsIGNoaWxkcmVufTp7dGl0bGU6IHN0cmluZywgY2hpbGRyZW46IFJlYWN0LlJlYWN0Tm9kZX0pe1xyXG4gIHJldHVybihcclxuICAgICAgPGFzaWRlIGNsYXNzTmFtZT1cImhpbnQtY29udGFpbmVyIGRhbmdlclwiPlxyXG4gICAgICAgIDxwIGNsYXNzTmFtZT1cImhpbnQtY29udGFpbmVyLXRpdGxlXCI+XHJcbiAgICAgICAgICB7dGl0bGV9XHJcbiAgICAgICAgPC9wPlxyXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwidi1jYXJkLXRleHRcIj5cclxuICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgICAgIHtjaGlsZHJlbn1cclxuICAgICAgICAgIDwvcD5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9hc2lkZT5cclxuICApXHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBOb3RlQm94KHt0aXRsZSwgY2hpbGRyZW4sIGlkfTp7dGl0bGU6IHN0cmluZywgY2hpbGRyZW46IFJlYWN0LlJlYWN0Tm9kZSwgaWQ6IHN0cmluZ30pe1xyXG4gIHJldHVybihcclxuICAgICAgPGFzaWRlIGNsYXNzTmFtZT1cImhpbnQtY29udGFpbmVyIG5vdGVcIiBpZD17aWR9PlxyXG4gICAgICAgIDxwIGNsYXNzTmFtZT1cImhpbnQtY29udGFpbmVyLXRpdGxlXCI+XHJcbiAgICAgICAgICB7dGl0bGV9XHJcbiAgICAgICAgPC9wPlxyXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwidi1jYXJkLXRleHRcIj5cclxuICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgICAgIHtjaGlsZHJlbn1cclxuICAgICAgICAgIDwvcD5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9hc2lkZT5cclxuICApXHJcbn0iLCAiLy8gVGhlIG1haW4gdGFiIGhhcyB0byBiZSBnaXZlbiBkaXNwbGF5OiBibG9jazsgdmlhIGlkIGNzcyBvciBiZSBnaXZlbiB0aGUgaWQgXCJGaXJzdFwiXHJcbmV4cG9ydCBmdW5jdGlvbiBCdXR0b25Sb3dUYWJzKHtkYXRhLCBjbGF9OiB7ZGF0YTogQXJyYXk8VGFiRGF0ZW5zYXR6PiwgY2xhOiBzdHJpbmd9KSB7XHJcbiAgICBsZXQgcm93czogSlNYLkVsZW1lbnRbXSAgPSBbXVxyXG4gICAgZm9yICggbGV0IGkgPSAwOyAgaSA8IGRhdGEubGVuZ3RoOyBpKysgKXtcclxuICAgICAgaWYoZGF0YVtpXS5tYWluID09IHRydWUpe1xyXG4gICAgICAgIHJvd3MucHVzaCg8ZGl2IGlkPXtkYXRhW2ldLmNzc25hbWV9IGNsYXNzTmFtZT17Y2xhfSBzdHlsZT17e2Rpc3BsYXk6IFwiYmxvY2tcIn19PlxyXG4gICAgICAgICAge2RhdGFbaV0ubm9kZX1cclxuICAgICAgICA8L2Rpdj4pXHJcbiAgICAgIH1cclxuICAgICAgZWxzZXtcclxuICAgICAgICByb3dzLnB1c2goPGRpdiBpZD17ZGF0YVtpXS5jc3NuYW1lfSBjbGFzc05hbWU9e2NsYX0gc3R5bGU9e3tkaXNwbGF5OiBcIm5vbmVcIn19PlxyXG4gICAgICAgICAge2RhdGFbaV0ubm9kZX1cclxuICAgICAgICA8L2Rpdj4pXHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHJldHVybiByb3dzOyBcclxuICB9XHJcbiAgXHJcbmltcG9ydCBSZWFjdCBmcm9tIFwicmVhY3RcIjtcclxuaW1wb3J0IHsgQmxvY2tRdW90ZUIgfSBmcm9tIFwiLi9RdW90ZXNcIjtcclxuaW1wb3J0IHsgVGltZWxpbmVEYXRlbnB1bmt0IH0gZnJvbSBcIi4uL2RhdGEvaHB0aW1lbGluZWRhdGFcIjtcclxuaW1wb3J0IENvbGxhcHNpYmxlIGZyb20gXCIuL0NvbGxhcHNpYmxlXCI7XHJcbmltcG9ydCB7IHN0cmluZ1RvU2x1ZyB9IGZyb20gXCIuLi91dGlsc1wiO1xyXG5cclxuLyogaW1wb3J0IHsgc3RyaW5nVG9TbHVnIH0gZnJvbSBcIi4uL3V0aWxzXCI7ICovXHJcbiAgXHJcbiAgZXhwb3J0IGZ1bmN0aW9uIEJGSFN0eWxlVGFicyh7ZGF0YSwgY2xhfToge2RhdGE6IEFycmF5PFRpbWVsaW5lRGF0ZW5wdW5rdD4sIGNsYTogc3RyaW5nfSkge1xyXG4gICAgbGV0IHJvd3M6IEpTWC5FbGVtZW50W10gID0gW11cclxuICAgIGZvciAoIGxldCBpID0gMDsgIGkgPCBkYXRhLmxlbmd0aDsgaSsrICl7XHJcbiAgICAgIHZhciBwcm9ibGVtOiBCb29sZWFuID0gZmFsc2U7IFxyXG4gICAgICB2YXIgcHJvYmxlbV9kZXNjOiBBcnJheTxzdHJpbmc+ID0gW107XHJcbiAgICAgIC8qIExhbmd1YWdlICovXHJcbiAgICAgIHZhciBsYW5nOyBcclxuICAgICAgaWYoZGF0YVtpXS5sYW5ndWFnZSA9PT0gXCJlblwiKXtcclxuICAgICAgICBsYW5nID0gXCJPcmlnaW5hbCBsYW5ndWFnZTogRW5nbGlzaFwiXHJcbiAgICAgIH1cclxuICAgICAgZWxzZSBpZihkYXRhW2ldLmxhbmd1YWdlID09PSBcImRlXCIpe1xyXG4gICAgICAgIGxhbmcgPSBcIk9yaWdpbmFsIGxhbmd1YWdlOiBHZXJtYW5cIlxyXG4gICAgICB9XHJcbiAgICAgIGVsc2V7XHJcbiAgICAgICAgbGFuZyA9IFwiXCJcclxuICAgICAgfVxyXG4vKiAgICAgICBlbHNlIGlmKGRhdGFbaV0udHlwZSAhPSBcIm1ldGFcIil7XHJcbiAgICAgICAgcHJvYmxlbSA9IHRydWU7XHJcbiAgICAgICAgcHJvYmxlbV9kZXNjLnB1c2goXCJpbnRlcnZpZXcgbGFuZ3VhZ2VcIik7IFxyXG4gICAgICB9ICovXHJcbiAgICAgIFxyXG4gICAgICAvKiBFeHBlcnQgb24gICovXHJcbiAgICAgIGxldCBleHBlcnQgPSBcIlwiOyBcclxuICAgICAgaWYgKGRhdGFbaV0uZXhwZXJ0b24pIHtcclxuICAgICAgICBleHBlcnQgPSBgRXhwZXJ0IG9uICR7ZGF0YVtpXS5leHBlcnRvbn1gOyBcclxuICAgICAgfVxyXG5cclxuICAgICAgLyogQWltL0dvYWwgKi9cclxuICAgICAgdmFyIGdvYWxoZWFkaW5nOiBzdHJpbmcgPSBcIlwiOyBcclxuICAgICAgaWYoZGF0YVtpXS50eXBlID09PSBcIm1ldGFcIil7XHJcbiAgICAgICAgZ29hbGhlYWRpbmcgPSBcIkdvYWxzXCI7IFxyXG4gICAgICB9XHJcbiAgICAgIGVsc2V7XHJcbiAgICAgICAgZ29hbGhlYWRpbmcgPSBcIkFpbSBvZiBjb250YWN0XCJcclxuICAgICAgfVxyXG5cclxuICAgICAgLyogUXVvdGF0aW9uICovXHJcbiAgICAgIHZhciBxdW90ZWQ6IHN0cmluZyA9IFwiXCI7IFxyXG4gICAgICBpZihkYXRhW2ldLnF1b3RlICE9IFwiXCIpe1xyXG4gICAgICAgIGlmKGRhdGFbaV0ucXVvdGVOYWNobmFtZSAmJiBkYXRhW2ldLnF1b3RlVm9ybmFtZSl7XHJcbiAgICAgICAgICBxdW90ZWQgPSBkYXRhW2ldLnF1b3RlVm9ybmFtZSArIFwiIFwiICsgZGF0YVtpXS5xdW90ZU5hY2huYW1lO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNle1xyXG4gICAgICAgICAgcXVvdGVkID0gZGF0YVtpXS52b3JuYW1lICsgXCIgXCIgKyBkYXRhW2ldLm5hY2hubmFtZTsgXHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgLyogIGVsc2V7XHJcbiAgICAgICAgcHJvYmxlbSA9IHRydWU7XHJcbiAgICAgICAgcHJvYmxlbV9kZXNjLnB1c2goXCJxdW90ZSBtaXNzaW5nXCIpOyBcclxuICAgICAgfSAqL1xyXG4gICAgICAgIGxldCBpbnZfaW1nOiBSZWFjdC5SZWFjdE5vZGUgPSA8PjwvPjtcclxuICAgICAgICBsZXQgaW1wX2ltZzogUmVhY3QuUmVhY3ROb2RlID0gPD48Lz47XHJcbiAgICAgICAgbGV0IGFpbV9pbWc6IFJlYWN0LlJlYWN0Tm9kZSA9IDw+PC8+O1xyXG4gICAgICBcclxuICAgICAgICAvLyBSZXN0bGljaGUgTG9naWsgZGVyIFNjaGxlaWZlLi4uXHJcbiAgICAgICAgLy8gQmlsZHp1d2Vpc3VuZ2VuIGJhc2llcmVuZCBhdWYgZGVuIERhdGVuXHJcbiAgICAgICAgaWYgKGRhdGFbaV0ucGljdHVyZXVybF9pbnRlcnZpZXcpIHtcclxuICAgICAgICAgICBpbnZfaW1nID0gPGRpdiBjbGFzc05hbWU9XCJodGktYm94XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9e2RhdGFbaV0ucGljdHVyZXVybF9pbnRlcnZpZXd9IGNsYXNzTmFtZT1cImhwLXRpbWVsaW5lLWltZyBodGktcmlnaHRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICA8L2Rpdj47XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmIChkYXRhW2ldLnBpY3R1cmV1cmxfaW1wbGVtZW50YXRpb24pIHtcclxuICAgICAgICAgICBpbXBfaW1nID0gPGRpdiBjbGFzc05hbWU9XCJodGktYm94XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9e2RhdGFbaV0ucGljdHVyZXVybF9pbXBsZW1lbnRhdGlvbn0gY2xhc3NOYW1lPVwiaHAtdGltZWxpbmUtaW1nIGh0aS1yaWdodFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgIDwvZGl2PjtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKGRhdGFbaV0ucGljdHVyZXVybF9haW0pIHtcclxuICAgICAgICAgICBhaW1faW1nID0gPGRpdiBjbGFzc05hbWU9XCJodGktYm94XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9e2RhdGFbaV0ucGljdHVyZXVybF9haW19IGNsYXNzTmFtZT1cImhwLXRpbWVsaW5lLWltZyBodGktbGVmdFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgIDwvZGl2PjtcclxuICAgICAgICB9XHJcbiAgICAgIC8qIHRleHRwYXJ0cyAqL1xyXG4gICAgICBsZXQgYWlNOiBKU1guRWxlbWVudCA9IDw+PC8+XHJcbiAgICAgIGlmKGRhdGFbaV0uYWltb2Zjb250YWN0KXtcclxuICAgICAgICBhaU0gPSA8PlxyXG4gICAgICAgIDxoND57Z29hbGhlYWRpbmd9PC9oND5cclxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJmbGV4Ym94XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzc05hbWU9XCJocC10aW1lbGluZS1wXCI+e2RhdGFbaV0uYWltb2Zjb250YWN0fTwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAge2FpbV9pbWd9XHJcbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvPlxyXG4gICAgICB9XHJcblxyXG4gICAgICBsZXQgaW5zaWdoVDogSlNYLkVsZW1lbnQgPSA8PjwvPlxyXG4gICAgICBpZihkYXRhW2ldLmluc2lnaHRzKXtcclxuICAgICAgICBpbnNpZ2hUID0gPD5cclxuICAgICAgICAgPGg0Pkluc2lnaHRzPC9oND5cclxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJmbGV4Ym94XCI+XHJcbiAgICAgICAgICAgICAgICAgICAge2ludl9pbWd9XHJcbiAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzc05hbWU9XCJocC10aW1lbGluZS1wXCI+e2RhdGFbaV0uaW5zaWdodHN9PC9wPlxyXG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8Lz5cclxuICAgICAgfVxyXG4gICAgXHJcbiAgICAgIGxldCBpbVA6IEpTWC5FbGVtZW50ID0gPD48Lz5cclxuICAgIGlmKGRhdGFbaV0uaW1wbGVtZW50YXRpb24pe1xyXG4gICAgIGltUCA9IDw+XHJcbiAgICAgPGg0PkltcGxlbWVudGF0aW9uPC9oND5cclxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJmbGV4Ym94XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzc05hbWU9XCJocC10aW1lbGluZS1wXCI+e2RhdGFbaV0uaW1wbGVtZW50YXRpb259PC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICB7aW1wX2ltZ31cclxuICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgIDwvPlxyXG4gICAgfVxyXG5cclxuICAgICAgXHJcbiAgICAgXHJcbiAgICAgLyogIGlmKGRhdGFbaV0uYWltb2Zjb250YWN0ID09PSBcIlwiKXtcclxuICAgICAgICBwcm9ibGVtID0gdHJ1ZTtcclxuICAgICAgICBwcm9ibGVtX2Rlc2MucHVzaChcIiBcIiArIGdvYWxoZWFkaW5nICsgXCIgbWlzc2luZ1wiKTsgXHJcbiAgICAgIH1cclxuICAgICAgaWYoZGF0YVtpXS5pbnNpZ2h0cyA9PT0gXCJcIil7XHJcbiAgICAgICAgcHJvYmxlbSA9IHRydWU7XHJcbiAgICAgICAgcHJvYmxlbV9kZXNjLnB1c2goXCIgaW5zaWdodHMgbWlzc2luZ1wiKTsgXHJcbiAgICAgIH1cclxuICAgICAgaWYoZGF0YVtpXS5pbXBsZW1lbnRhdGlvbiA9PT0gXCJcIil7XHJcbiAgICAgICAgcHJvYmxlbSA9IHRydWU7XHJcbiAgICAgICAgcHJvYmxlbV9kZXNjLnB1c2goXCIgaW1wbGVtZW50YXRpb24gbWlzc2luZ1wiKTsgXHJcbiAgICAgIH0gKi9cclxuICAgICAgLyogQ2xhcmlmaWNhdGlvbiAqL1xyXG4gICAgICB2YXIgY2xhcmk6IFJlYWN0LlJlYWN0Tm9kZSA9IDw+PC8+XHJcbiAgICAgIGlmKGRhdGFbaV0uY2xhcmlmaWNhdGlvbil7XHJcbiAgICAgICAgY2xhcmkgPSA8PlxyXG4gICAgICAgICAgICAgICAgICA8aDQ+Q2xhcmlmaWNhdGlvbjwvaDQ+XHJcbiAgICAgICAgICAgICAgICAgIDxwPntkYXRhW2ldLmNsYXJpZmljYXRpb259PC9wPlxyXG4gICAgICAgICAgICAgICAgPC8+XHJcbiAgICAgIH1cclxuICAgICAgLyogT3RoZXIgd2FybmluZ3MgKi9cclxuICAgICAgaWYoZGF0YVtpXS5pbnRlcnZpZXd0YWJpZCA9PT0gXCJcIil7XHJcbiAgICAgICAgcHJvYmxlbSA9IHRydWU7XHJcbiAgICAgICAgcHJvYmxlbV9kZXNjLnB1c2goXCIgaW50ZXJ2aWV3dGFiaWQgbWlzc2luZ1wiKTsgXHJcbiAgICAgIH1cclxuICAgICAvKiAgaWYoZGF0YVtpXS5jYXJkdGV4dCA9PT0gXCJcIil7XHJcbiAgICAgICAgcHJvYmxlbSA9IHRydWU7XHJcbiAgICAgICAgcHJvYmxlbV9kZXNjLnB1c2goXCIgY2FyZHRleHQgbWlzc2luZ1wiKTsgXHJcbiAgICAgIH0gKi9cclxuICAgICAgLyogaWYoZGF0YVtpXS50eXBlICE9PSBcIm1ldGFcIil7XHJcbiAgICAgICAgaWYoZGF0YVtpXS5hZmZpbGlhdGlvbiA9PT0gdW5kZWZpbmVkIHx8IGRhdGFbaV0uYWZmaWxpYXRpb24gPT09IFwiXCIpe1xyXG4gICAgICAgICAgcHJvYmxlbSA9IHRydWU7XHJcbiAgICAgICAgICBwcm9ibGVtX2Rlc2MucHVzaChcIiBhZmZpbGlhdGlvbiBtaXNzaW5nXCIpOyBcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYoZGF0YVtpXS5qb2IgPT09IHVuZGVmaW5lZCB8fCBkYXRhW2ldLmpvYiA9PT0gXCJcIil7XHJcbiAgICAgICAgICBwcm9ibGVtID0gdHJ1ZTtcclxuICAgICAgICAgIHByb2JsZW1fZGVzYy5wdXNoKFwiIGpvYiBtaXNzaW5nXCIgKTsgXHJcbiAgICAgICAgfVxyXG4gICAgICB9ICovXHJcbiAgICAgLyogIGlmKGRhdGFbaV0udHlwZSA9PT0gXCJtZXRhXCIpe1xyXG4gICAgICAgIGlmKGRhdGFbaV0ucXVvdGVWb3JuYW1lID09PSB1bmRlZmluZWQgfHwgZGF0YVtpXS5xdW90ZVZvcm5hbWUgPT09IFwiXCIpe1xyXG4gICAgICAgICAgcHJvYmxlbSA9IHRydWU7XHJcbiAgICAgICAgICBwcm9ibGVtX2Rlc2MucHVzaChcIiB3aG8gaXMgdGhlIHF1b3RlIGZyb20/XCIgKTsgXHJcbiAgICAgICAgfVxyXG4gICAgICB9ICovXHJcblxyXG4gICAgICAvKiBSZWZlcmVuY2VzICovXHJcbiAgICAgIHZhciByZWZzOiBSZWFjdC5SZWFjdE5vZGUgPSA8PjwvPjtcclxuICAgICAgaWYgKGRhdGFbaV0ucmVmZXJlbmNlcykge1xyXG4gICAgICAgIHJlZnMgPSA8PiA8aDQ+UmVmZXJlbmNlcyA8L2g0PiB7ZGF0YVtpXS5yZWZlcmVuY2VzfTwvPiBcclxuICAgICAgfVxyXG4gICAgICBcclxuICAgICAgLyogRnVydGhlciBwaWN0dXJlcyAqL1xyXG4vKiAgICAgICB2YXIgaW52X2ltZzogUmVhY3QuUmVhY3ROb2RlID0gPD48Lz47XHJcbiAgICAgIGlmIChkYXRhW2ldLnBpY3R1cmV1cmxfaW50ZXJ2aWV3KSB7XHJcbiAgICAgICAgY29uc29sZS5pbmZvKFwiYmVmb3JlOiBpbnZfaW1nIGlzOiBcIiArIGludl9pbWcpXHJcbiAgICAgICAgY29uc29sZS5pbmZvKGRhdGFbaV0udm9ybmFtZSArIFwiIGhhcyBwaWN0dXJldXJsX2ludGVydmlld1wiKVxyXG4gICAgICAgIGludl9pbWcgPSAgPD4gIDxkaXYgY2xhc3NOYW1lPVwiaHRpLWJveFwiPiA8aW1nIGlkPXtgJHtkYXRhW2ldLnZvcm5hbWV9LWludi1pbWdgfSBzcmM9e2RhdGFbaV0ucGljdHVyZXVybF9pbnRlcnZpZXd9IGNsYXNzTmFtZT1cImhwLXRpbWVsaW5lLWltZyBodGktcmlnaHRcIi8+IDwvZGl2PiA8ZGl2IGNsYXNzTmFtZT1cImh0aS1hYnN0YW5kXCIvPiA8Lz5cclxuICAgICAgICBjb25zb2xlLmluZm8oXCJhZnRlcjogaW52X2ltZyBpczogXCIgKyBpbnZfaW1nKVxyXG4gICAgICB9XHJcbiAgICAgIHZhciBpbXBfaW1nOiBSZWFjdC5SZWFjdE5vZGUgPSA8PjwvPjtcclxuICAgICAgaWYgKGRhdGFbaV0ucGljdHVyZXVybF9pbXBsZW1lbnRhdGlvbikge1xyXG4gICAgICAgIGNvbnNvbGUuaW5mbyhkYXRhW2ldLnZvcm5hbWUgKyBcIiBoYXMgcGljdHVyZXVybF9pbXBsZW1lbnRhdGlvblwiKVxyXG4gICAgICAgIGNvbnNvbGUuaW5mbyhcImJlZm9yZTogaW1wX2ltZyBpczogXCIgKVxyXG4gICAgICAgIGNvbnNvbGUuaW5mbyhpbXBfaW1nKVxyXG4gICAgICAgIGltcF9pbWcgPSAgIDw+IDxkaXYgIGNsYXNzTmFtZT1cImh0aS1hYnN0YW5kXCIvPjxkaXYgY2xhc3NOYW1lPVwiaHRpLWJveFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8aW1nICBpZD17YCR7ZGF0YVtpXS52b3JuYW1lfS1pbXAtaW1nYH0gc3JjPXtkYXRhW2ldLnBpY3R1cmV1cmxfaW1wbGVtZW50YXRpb259IGNsYXNzTmFtZT1cImhwLXRpbWVsaW5lLWltZyBodGktcmlnaHRcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8Lz5cclxuICAgICAgICBjb25zb2xlLmluZm8oXCJhZnRlcjogaW1wX2ltZyBpczogXCIgKVxyXG4gICAgICAgIGNvbnNvbGUuaW5mbyhpbXBfaW1nKVxyXG4gICAgICB9XHJcbiAgICAgIHZhciBhaW1faW1nOiBSZWFjdC5SZWFjdE5vZGUgPSA8PjwvPjtcclxuICAgICAgaWYgKGRhdGFbaV0ucGljdHVyZXVybF9haW0pIHtcclxuICAgICAgICBjb25zb2xlLmluZm8oZGF0YVtpXS52b3JuYW1lICsgXCIgaGFzIHBpY3R1cmV1cmxfYWltXCIpXHJcbiAgICAgICAgY29uc29sZS5pbmZvKFwiYmVmb3JlOiBhaW1faW1nIGlzOiBcIiApXHJcbiAgICAgICAgY29uc29sZS5pbmZvKGFpbV9pbWcpXHJcbiAgICAgICAgYWltX2ltZyA9ICA8PiA8ZGl2IGNsYXNzTmFtZT1cImh0aS1hYnN0YW5kXCIvPiA8ZGl2IGNsYXNzTmFtZT1cImh0aS1ib3hcIj5cclxuICAgICAgICA8aW1nICBpZD17YCR7ZGF0YVtpXS52b3JuYW1lfS1haW0taW1nYH0gc3JjPXtkYXRhW2ldLnBpY3R1cmV1cmxfYWltfSBjbGFzc05hbWU9XCJocC10aW1lbGluZS1pbWcgaHRpLWxlZnRcIi8+IFxyXG4gICAgICAgIDwvZGl2PjwvPlxyXG4gICAgICAgIGNvbnNvbGUuaW5mbyhcImFmdGVyOiBhaW1faW1nIGlzOiBcIiApXHJcbiAgICAgICAgY29uc29sZS5pbmZvKGFpbV9pbWcpXHJcbiAgICAgIH0gKi9cclxuICAgICBcclxuICAgICAgbGV0IGludCA9IDw+PC8+OyBcclxuICAgICAgbGV0IGludF9pZCA9IHN0cmluZ1RvU2x1ZyhgJHtkYXRhW2ldLnZvcm5hbWV9LWludi1jb2xsYXBzaWJsZWApXHJcbiAgICAgIGlmIChkYXRhW2ldLmludGVydmlldykge1xyXG4gICAgICAgIFxyXG4gICAgICAgICAgaW50ID0gPGRpdiBjbGFzc05hbWU9XCJocC1jb2xsYXBzXCI+PENvbGxhcHNpYmxlIHRpdGxlPVwiUmVhZCBmdWxsIEludGVydmlldyBoZXJlXCIgaWQ9e2ludF9pZH0+XHJcbiAgICAgICAgICB7ZGF0YVtpXS5pbnRlcnZpZXd9XHJcbiAgICAgICAgPC9Db2xsYXBzaWJsZT48L2Rpdj5cclxuICAgICAgfVxyXG4gICAgXHJcbiAgICAgIGxldCBtb3JlcGljczogSlNYLkVsZW1lbnRbXSA9IFtdO1xyXG4gICAgICBsZXQgb2xkcGljczogc3RyaW5nW10gPSBbXTtcclxuICAgICAgLyogaWYoZGF0YVtpXS5tb3JlX3BpY3R1cmVzKXsgKi9cclxuICAgICAgICBpZiAoIWRhdGFbaV0uYWltb2Zjb250YWN0ICYmIGRhdGFbaV0ucGljdHVyZXVybF9haW0pIHtcclxuICAgICAgICAgIG9sZHBpY3MucHVzaChkYXRhW2ldLnBpY3R1cmV1cmxfYWltISlcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKCFkYXRhW2ldLmluc2lnaHRzICYmIGRhdGFbaV0ucGljdHVyZXVybF9pbnRlcnZpZXcpIHtcclxuICAgICAgICAgIG9sZHBpY3MucHVzaChkYXRhW2ldLnBpY3R1cmV1cmxfaW50ZXJ2aWV3ISlcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKCFkYXRhW2ldLmltcGxlbWVudGF0aW9uICYmIGRhdGFbaV0ucGljdHVyZXVybF9pbXBsZW1lbnRhdGlvbikge1xyXG4gICAgICAgICAgb2xkcGljcy5wdXNoKGRhdGFbaV0ucGljdHVyZXVybF9pbXBsZW1lbnRhdGlvbiEpXHJcbiAgICAgICAgfVxyXG4gICAgICAgIGxldCBuZXdsaXN0ID0gb2xkcGljcy5jb25jYXQoZGF0YVtpXS5tb3JlX3BpY3R1cmVzISk7IFxyXG4gICAgICAgIGZvciAobGV0IGluZCA9IDA7IGluZCA8IChuZXdsaXN0Lmxlbmd0aCAtIDEpOyBpbmQgKz0gMikge1xyXG4gICAgICAgICAgY29uc29sZS5pbmZvKGRhdGFbaV0udm9ybmFtZSlcclxuICAgICAgICAgIGNvbnNvbGUuaW5mbyhpbmQgKyBuZXdsaXN0W2luZF0pXHJcbiAgICAgICAgICBjb25zb2xlLmluZm8oaW5kKzEgKyBuZXdsaXN0W2luZCsxXSlcclxuICAgICAgICAgIG1vcmVwaWNzLnB1c2goXHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3dcIj5cclxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgICAgICAgICAgPGltZyBzcmM9e25ld2xpc3RbaW5kXX0vPlxyXG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgICAgICAgICAgPGltZyBzcmM9e25ld2xpc3RbaW5kKzFdfS8+XHJcbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgKVxyXG4gICAgICAgIH1cclxuICAgICAgXHJcbiAgICAgLyogIH0gKi9cclxuXHJcbiAgICAgIGxldCBub2RlID0gPD5cclxuICAgICAgICAgICAgICAgIDxici8+XHJcbiAgICAgICAgICAgICAgICAgIDxoMyBpZD17YCR7ZGF0YVtpXS5pbnRlcnZpZXd0YWJpZH0taGVhZGluZ2B9PntkYXRhW2ldLnRpdGxlfSB7ZGF0YVtpXS52b3JuYW1lfSB7ZGF0YVtpXS5uYWNobm5hbWV9PC9oMz5cclxuICAgICAgICAgICAgICAgICAgPGhyLz5cclxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3dcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbC02XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT17XCJ0LXRhZyBcIiArIGRhdGFbaV0udGFnfT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICB7ZGF0YVtpXS5qb2J9IC0ge2RhdGFbaV0uYWZmaWxpYXRpb259XHJcbiAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiIHN0eWxlPXt7cGFkZGluZzogXCI1cHhcIn19PntleHBlcnR9PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIiBzdHlsZT17e3dpZHRoOiBcIjIwJVwiLCBmbGV4OiBcIjEgMCAwJVwiLCBwYWRkaW5nOiBcIjVweFwifX0+e2xhbmd9PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvdyBhbGlnbi1pdGVtcy1zdHJldGNoXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wgZC1mbGV4IGZsZXgtY29sdW1uXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvdyBmbGV4LWdyb3ctMSBtaXR0ZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPGg0IHN0eWxlPXt7cGFkZGluZ1RvcDogXCI1MHB4XCJ9fT5TdW1tYXJ5OjwvaDQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8cD57ZGF0YVtpXS5zdW1tYXJ5fTwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3cgdW50ZW5cIiBzdHlsZT17e2ZvbnRTaXplOiBcImxhcmdlXCJ9fT5cclxuICAgICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sLTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3NOYW1lPVwibWlkZGxlIHNlY2hwcm8gaW1nLWZsdWlkXCIgc3JjPXtkYXRhW2ldLnBpY3R1cmV1cmx9IC8+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgIHsvKiAgPGRpdiBjbGFzc05hbWU9XCJyb3dcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxwIHN0eWxlPXt7cGFkZGluZ1RvcDogXCI1MHB4XCIsIGZvbnRTaXplOiBcImxhcmdlXCJ9fT5TdW1tYXJ5OjwvcD5cclxuICAgICAgICAgICAgICAgICAgICA8cD57ZGF0YVtpXS5zdW1tYXJ5fTwvcD5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbC0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzTmFtZT1cIm1pZGRsZSBzZWNocHJvXCIgc3JjPXtkYXRhW2ldLnBpY3R1cmV1cmx9Lz5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgPC9kaXY+ICovfVxyXG4gICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAge2FpTX1cclxuXHJcbiAgICAgICAgICAgICAgICAgIHtpbnNpZ2hUfVxyXG4gICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAge2NsYXJpfVxyXG5cclxuICAgICAgICAgICAgICAgICAge2ltUH1cclxuICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8QmxvY2tRdW90ZUIgdGV4dD17ZGF0YVtpXS5xdW90ZSF9IGNpdGU9e3F1b3RlZH0+PC9CbG9ja1F1b3RlQj5cclxuICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICB7ZGF0YVtpXS50ZXh0fVxyXG4gICAgICAgICAgICAgICAgICB7bW9yZXBpY3N9XHJcbiAgICAgICAgICAgICAgICAgIHtpbnR9XHJcbiAgICAgICAgICAgICAgICAgIHtyZWZzfVxyXG4gICAgICAgICAgICA8Lz5cclxuICAgICAgaWYocHJvYmxlbSl7XHJcbiAgICAgICAgcm93cy5wdXNoKFxyXG4gICAgICAgICAgPGRpdiBpZD17ZGF0YVtpXS5pbnRlcnZpZXd0YWJpZH0gY2xhc3NOYW1lPXtjbGF9IHN0eWxlPXt7IGJhY2tncm91bmRDb2xvcjogXCJibGFja1wiLCBjb2xvcjogXCJ3aGl0ZVwifX0+XHJcbiAgICAgICAgICAgICAgPGgxPlBST0JMRU0gd2l0aCB7ZGF0YVtpXS52b3JuYW1lfSB7ZGF0YVtpXS5uYWNobm5hbWV9PC9oMT5cclxuICAgICAgICAgICAgICA8cD4gYmVjYXVzZSBvZjogPC9wPlxyXG4gICAgICAgICAgICAge3Byb2JsZW1fZGVzY31cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIClcclxuICAgICAgfVxyXG4gICAgICBlbHNle1xyXG4gICAgICAgIGlmIChkYXRhW2ldLmludGVydmlld3RhYmlkID09PSBcInRpbWVsaW5lXCIpe1xyXG4gICAgICAgICAgcm93cy5wdXNoKFxyXG4gICAgICAgICAgICA8ZGl2IGlkPXtkYXRhW2ldLmludGVydmlld3RhYmlkfSBjbGFzc05hbWU9e2Ake2NsYX0gdGltZWxpbmV0YWIgYmctZGJgfSBzdHlsZT17e2Rpc3BsYXk6IFwiYmxvY2tcIn19PlxyXG4gICAgICAgICAgICAgICAge25vZGV9XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgKVxyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNle1xyXG4gICAgICAgIHJvd3MucHVzaChcclxuICAgICAgICAgIDxkaXYgaWQ9e2RhdGFbaV0uaW50ZXJ2aWV3dGFiaWR9IGNsYXNzTmFtZT17YCR7Y2xhfSB0aW1lbGluZXRhYiBiZy1kYmB9PlxyXG4gICAgICAgICAgICAgIHtub2RlfVxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgKVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBcclxuICAgIH1cclxuICAgIHJldHVybiByb3dzOyBcclxuICB9XHJcbiAgXHJcbiAgLyogSW50ZXJ2aWV3ICovXHJcbiBcclxuICBleHBvcnQgZnVuY3Rpb24gT0xEQkZIU3R5bGVUYWJzKHtkYXRhLCBjbGF9OiB7ZGF0YTogQXJyYXk8Tm9kZURhdGVuc2F0ej4sIGNsYTogc3RyaW5nfSkge1xyXG4gICAgbGV0IHJvd3M6IEpTWC5FbGVtZW50W10gID0gW11cclxuICAgIGZvciAoIGxldCBpID0gMDsgIGkgPCBkYXRhLmxlbmd0aDsgaSsrICl7XHJcbiAgICAgIGlmIChkYXRhW2ldLmNzc25hbWUgPT0gXCJ0aW1lbGluZVwiKXtcclxuICAgICAgICByb3dzLnB1c2goXHJcbiAgICAgICAgICA8ZGl2IGlkPXtkYXRhW2ldLmNzc25hbWV9IGNsYXNzTmFtZT17Y2xhfSBzdHlsZT17e2Rpc3BsYXk6IFwiYmxvY2tcIn19PlxyXG4gICAgICAgICAgICAgIHtkYXRhW2ldLm5vZGV9XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICApXHJcbiAgICAgIH1cclxuICAgICAgZWxzZXtcclxuICAgICAgcm93cy5wdXNoKFxyXG4gICAgICAgIDxkaXYgaWQ9e2RhdGFbaV0uY3NzbmFtZX0gY2xhc3NOYW1lPXtjbGF9PlxyXG4gICAgICAgICAgICB7ZGF0YVtpXS5ub2RlfVxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICApXHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHJldHVybiByb3dzOyBcclxuICB9XHJcbiIsICJpbXBvcnQgeyBQaWUgfSBmcm9tICdyZWFjdC1jaGFydGpzLTInO1xyXG5pbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xyXG5pbXBvcnQgeyBCYXIgfSBmcm9tICdyZWFjdC1jaGFydGpzLTInO1xyXG5pbXBvcnQgeyBDaGFydCBhcyBDaGFydEpTLCBUb29sdGlwLCBMZWdlbmQsQXJjRWxlbWVudCwgQmFyRWxlbWVudCwgQ2F0ZWdvcnlTY2FsZSwgTGluZWFyU2NhbGUsIFRpdGxlLCBSYWRpYWxMaW5lYXJTY2FsZSB9IGZyb20gJ2NoYXJ0LmpzJztcclxuXHJcbmNvbnN0IGJhY2tncm91bmRjb2xvcnNjYWxlID0gW1xyXG4gICAgICAgICAgJ3JnYmEoMTMzLCAxNSwgMTIwLCAwLjIpJyxcclxuICAgICAgICAgICdyZ2JhKDE2MCwgMTY3LCAyNDMsIDAuMiknLFxyXG4gICAgICAgICAgJ3JnYmEoMjQ1LCAxMjUsIDM0LCAwLjIpJyxcclxuICAgICAgICAgICdyZ2JhKDI0NCwgMjA0LCAzMCwgMC4yKScsXHJcbiAgICAgICAgICAncmdiYSgxMzAsIDE0OSwgMTY0LCAwLjIpJyxcclxuICAgICAgICAgICdyZ2JhKDAsIDEwMSwgNDgsIDAuMiknLFxyXG4gICAgICAgICAgJ3JiZ2EoMTg0LCA5MSwgMjA5LCAwLjIpJyxcclxuICAgICAgICAgICdyYmdhKDUwLCAzNSwgNDQsIDAuMidcclxuXVxyXG5cclxuXHJcblxyXG5jb25zdCBib3JkZXJjb2xvcnNjYWxlID0gW1xyXG4gICAgICAgICAgICAncmdiYSgxMzMsIDE1LCAxMjAsIDEpJyxcclxuICAgICAgICAgICAgICAncmdiYSgxNjAsIDE2NywgMjQzLCAxKScsXHJcbiAgICAgICAgICAgICAgJ3JnYmEoMjQ1LCAxMjUsIDM0LCAxKScsXHJcbiAgICAgICAgICAgICAgJ3JnYmEoMjQ0LCAyMDQsIDMwLCAxKScsXHJcbiAgICAgICAgICAgICAgJ3JnYmEoMTMwLCAxNDksIDE2NCwgMSknLFxyXG4gICAgICAgICAgICAgICdyZ2JhKDAsIDEwMSwgNDgsIDEpJyxcclxuICAgICAgICAgICAgICAncmJnYSgxODQsIDkxLCAyMDksIDEpJyxcclxuICAgICAgICAgICAgICAncmJnYSg1MCwgMzUsIDQ0LCAxJ1xyXG5dXHJcbiBcclxuQ2hhcnRKUy5yZWdpc3RlcihBcmNFbGVtZW50LCBUb29sdGlwLCBMZWdlbmQsIENhdGVnb3J5U2NhbGUsXHJcbiAgUmFkaWFsTGluZWFyU2NhbGUsXHJcbiAgTGluZWFyU2NhbGUsXHJcbiAgQmFyRWxlbWVudCxcclxuICBUaXRsZSk7XHJcblxyXG5jb25zdCBQaWVDaGFydDogUmVhY3QuRkMgPSAoKSA9PiB7XHJcbiAgY29uc3QgZGF0YSA9IHtcclxuICAgIGxhYmVsczogWydpbmRlbCcsICdpbnNlcnRpb24nLCAnZGVsZXRpb24nLCAnc3Vic3RpdHV0aW9uJywgJ290aGVyJ10sXHJcbiAgICBkYXRhc2V0czogW1xyXG4gICAgICB7XHJcbiAgICAgICAgbGFiZWw6ICdQZXJjZW50YWdlJyxcclxuICAgICAgICBkYXRhOiBbXHJcbiAgICAgICAgICAwLjAwNDg1ODAwMDAwMDAwMDAwMSxcclxuICAgICAgICAgIDAuMDAwODg1OTk5OTk5OTk5OTk5NyxcclxuICAgICAgICAgIDAuNzI2NDE3OTk5OTk5OTk3MixcclxuICAgICAgICAgIDAuMjM4NDE1OTk5OTk5OTk5NSxcclxuICAgICAgICAgIDAuMDAzNzAzXHJcbiAgICAgICAgXSxcclxuICAgICAgICBiYWNrZ3JvdW5kQ29sb3I6IGJhY2tncm91bmRjb2xvcnNjYWxlLFxyXG4gICAgICAgICAgICBib3JkZXJDb2xvcjogYm9yZGVyY29sb3JzY2FsZSxcclxuICAgICAgICBib3JkZXJXaWR0aDogMSxcclxuICAgICAgfSxcclxuICAgIF0sXHJcbiAgfTtcclxuICBjb25zdCBvcHRpb25zID0ge1xyXG4gICAgcmVzcG9uc2l2ZTogdHJ1ZSxcclxuICAgIG1haW50YWluQXNwZWN0UmF0aW86IGZhbHNlLFxyXG4gICAgcGx1Z2luczoge1xyXG4gICAgICBsZWdlbmQ6IHtcclxuICAgICAgICBkaXNwbGF5OiB0cnVlLCAvLyBwb3NzaWJsZSB0byBibGVuZCBvdXQgbGVnZW5kXHJcbiAgICAgICAgcG9zaXRpb246ICdib3R0b20nIGFzIGNvbnN0LCAvLyBQdXRzIGxhYmVscyBiZWxvdyB0aGUgY2hhcnRcclxuICAgICAgICBsYWJlbHM6IHtcclxuICAgICAgICAgIGJveFdpZHRoOiAyMCwgLy8gQ29udHJvbHMgdGhlIHNpemUgb2YgdGhlIGNvbG9yIGJveCBuZXh0IHRvIHRoZSBsYWJlbHNcclxuICAgICAgICAgIHBhZGRpbmc6IDE1LCAgIC8vIEFkZHMgc29tZSBwYWRkaW5nIGJldHdlZW4gbGFiZWxzIGFuZCB0aGUgY2hhcnRcclxuICAgICAgICAgIHVzZVBvaW50U3R5bGU6IHRydWUsIFxyXG4gICAgICB9LFxyXG4gICAgfSxcclxuICAgIHRpdGxlOiB7XHJcbiAgICAgIGRpc3BsYXk6IHRydWUsXHJcbiAgICAgIHRleHQ6ICdUeXBlcyBvZiBtdXRhdGlvbnMnLFxyXG4gICAgfSxcclxuICAgfSxcclxuICB9O1xyXG5cclxuICByZXR1cm4gKFxyXG4gICAgPGRpdiBjbGFzc05hbWU9XCJwaWUtY2hhcnQtY29udGFpbmVyLXNtYWxsXCI+XHJcbiAgICAgIDxQaWUgZGF0YT17ZGF0YX0gb3B0aW9ucz17b3B0aW9uc30gLz5cclxuICAgICAgPC9kaXY+XHJcbiAgKTtcclxufTtcclxuXHJcblxyXG5cclxuZXhwb3J0IGNvbnN0IE9wZW5Ub0dlbmVUaGVyYXB5YXRpZW50czogUmVhY3QuRkMgPSAoKSA9PiB7XHJcbiAgY29uc3QgZGF0YSA9IHtcclxuICAgIGxhYmVsczogWydZZXMnLCAnTWF5YmUnLCAnTm8nXSxcclxuICAgIGRhdGFzZXRzOiBbXHJcbiAgICAgIHtcclxuICAgICAgICBsYWJlbDogJ1BlcmNlbnRhZ2UnLFxyXG4gICAgICAgIGRhdGE6IFtcclxuICAgICAgICAgIDc4LjcyLCBcclxuICAgICAgICAgIDE5Ljg2LFxyXG4gICAgICAgICAgMS40MlxyXG4gICAgICAgIF0sXHJcbiAgICAgICAgYmFja2dyb3VuZENvbG9yOiBiYWNrZ3JvdW5kY29sb3JzY2FsZSxcclxuICAgICAgICBib3JkZXJDb2xvcjogYm9yZGVyY29sb3JzY2FsZSxcclxuICAgICAgICBib3JkZXJXaWR0aDogMSxcclxuICAgICAgfSxcclxuICAgIF0sXHJcbiAgfTtcclxuICBjb25zdCBvcHRpb25zID0ge1xyXG4gICAgcmVzcG9uc2l2ZTogdHJ1ZSxcclxuICAgIG1haW50YWluQXNwZWN0UmF0aW86IGZhbHNlLFxyXG4gICAgcGx1Z2luczoge1xyXG4gICAgICB0aXRsZToge1xyXG4gICAgICAgIGRpc3BsYXk6IHRydWUsXHJcbiAgICAgICAgdGV4dDogJ1dvdWxkIHlvdSBiZSBvcGVuIHRvIGdlbmUgdGhlcmFweSBpZiBpdCBjb3VsZCBzaWduaWZpY2FudGx5IGltcHJvdmUgeW91ciBzeW1wdG9tcz8nLFxyXG4gICAgICB9LFxyXG4gICAgfSxcclxuICB9O1xyXG5cclxuICByZXR1cm4gKFxyXG4gICAgPGRpdiBjbGFzc05hbWU9XCJwaWUtY2hhcnQtY29udGFpbmVyLXNtYWxsXCI+XHJcbiAgICAgIDxQaWUgZGF0YT17ZGF0YX0gb3B0aW9ucz17b3B0aW9uc30gLz5cclxuICAgICAgPC9kaXY+XHJcbiAgKTtcclxufTtcclxuXHJcblxyXG5leHBvcnQgY29uc3QgTW9zdFN0cmVzc2Z1bEZvclJlbGF0aXZlYXRpZW50czogUmVhY3QuRkMgPSAoKSA9PiB7XHJcbiAgY29uc3QgZGF0YSA9IHtcclxuICAgIGxhYmVsczogWydFbW90aW9uYWwgU3RyZXNzJywgJ1BoeXNpYWNhbCBTeW1wdG9tcycsICdGaW5hbmNpYWwgQnVyZGVuJywgJ1NvY2lhbCBSZXN0cmljdGlvbnMnLCAnT3RoZXInXSxcclxuICAgIGRhdGFzZXRzOiBbXHJcbiAgICAgIHtcclxuICAgICAgICBsYWJlbDogJ1BlcmNlbnRhZ2UnLFxyXG4gICAgICAgIGRhdGE6IFtcclxuICAgICAgICAgIDM2Ljc5LFxyXG4gICAgICAgICAgMzIuNzgsXHJcbiAgICAgICAgICAxMS4zNyxcclxuICAgICAgICAgIDE3LjczLFxyXG4gICAgICAgICAgMS4zNFxyXG4gICAgICAgIF0sXHJcbiAgICAgICAgYmFja2dyb3VuZENvbG9yOiBiYWNrZ3JvdW5kY29sb3JzY2FsZSxcclxuICAgICAgICAgICAgYm9yZGVyQ29sb3I6IGJvcmRlcmNvbG9yc2NhbGUsXHJcbiAgICAgICAgYm9yZGVyV2lkdGg6IDEsXHJcbiAgICAgIH0sXHJcbiAgICBdLFxyXG4gIH07XHJcbiAgY29uc3Qgb3B0aW9ucyA9IHtcclxuICAgIHJlc3BvbnNpdmU6IHRydWUsXHJcbiAgICBtYWludGFpbkFzcGVjdFJhdGlvOiBmYWxzZSxcclxuICAgIHBsdWdpbnM6IHtcclxuICAgICAgdGl0bGU6IHtcclxuICAgICAgICBkaXNwbGF5OiB0cnVlLFxyXG4gICAgICAgIHRleHQ6ICdXaGljaCBhc3BlY3RzIG9mIHRoZSBkaXNlYXNlIGFyZSBtb3N0IHN0cmVzc2Z1bCBmb3IgeW91IG9yIHlvdXIgcmVsYXRpdmU/JyxcclxuICAgICAgfSxcclxuICAgIH1cclxuICB9O1xyXG5cclxuICByZXR1cm4gKFxyXG4gICAgPGRpdiBjbGFzc05hbWU9XCJwaWUtY2hhcnQtY29udGFpbmVyLW90aGVyXCI+XHJcbiAgICAgIDxQaWUgZGF0YT17ZGF0YX0gb3B0aW9ucz17b3B0aW9uc30gLz5cclxuICAgICAgPC9kaXY+XHJcbiAgKTtcclxufTtcclxuXHJcbmV4cG9ydCBjb25zdCBXaG9BZmZlY3RlZGF0aWVudHM6IFJlYWN0LkZDID0gKCkgPT4ge1xyXG4gIGNvbnN0IGRhdGEgPSB7XHJcbiAgICBsYWJlbHM6IFsnSSBhbSBhZmZlY3RlZCcsICdBIFJlbGF0aXZlIGlzIGFmZmVjdGVkJ10sXHJcbiAgICBkYXRhc2V0czogW1xyXG4gICAgICB7XHJcbiAgICAgICAgbGFiZWw6ICdQZXJjZW50YWdlJyxcclxuICAgICAgICBkYXRhOiBbXHJcbiAgICAgICAgICA0My4yNCxcclxuICAgICAgICAgIDU2Ljc2XHJcbiAgICAgICAgXSxcclxuICAgICAgICBiYWNrZ3JvdW5kQ29sb3I6IGJhY2tncm91bmRjb2xvcnNjYWxlLFxyXG4gICAgICAgICAgICBib3JkZXJDb2xvcjogYm9yZGVyY29sb3JzY2FsZSxcclxuICAgICAgICBib3JkZXJXaWR0aDogMSxcclxuICAgICAgfSxcclxuICAgIF0sXHJcbiAgfTtcclxuICBjb25zdCBvcHRpb25zID0ge1xyXG4gICAgcmVzcG9uc2l2ZTogdHJ1ZSxcclxuICAgIG1haW50YWluQXNwZWN0UmF0aW86IGZhbHNlLFxyXG4gICAgcGx1Z2luczoge1xyXG4gICAgICB0aXRsZToge1xyXG4gICAgICAgIGRpc3BsYXk6IHRydWUsXHJcbiAgICAgICAgdGV4dDogW1xyXG4gICAgICAgICAgJ0FyZSB5b3UgYWZmZWN0ZWQgYnkgQ3lzdGljIEZpYnJvc2lzIHlvdXJzZWxmICcsICdvciBhcmUgeW91IHJlbGF0ZWQgdG8gc29tZW9uZSB3aXRoIEN5c3RpYyBGaWJyb3Npcz8nXHJcbiAgICAgICAgXSxcclxuICAgICAgfSxcclxuICAgIH1cclxuICB9O1xyXG5cclxuICByZXR1cm4gKFxyXG4gICAgPGRpdiBjbGFzc05hbWU9XCJwaWUtY2hhcnQtY29udGFpbmVyLXNtYWxsXCI+XHJcbiAgICAgIDxQaWUgZGF0YT17ZGF0YX0gb3B0aW9ucz17b3B0aW9uc30gLz5cclxuICAgICAgPC9kaXY+XHJcbiAgKTtcclxufTtcclxuXHJcbmV4cG9ydCBjb25zdCBEb1lvdVdhbnRNb3JlSW5mb2F0aWVudHM6IFJlYWN0LkZDID0gKCkgPT4ge1xyXG4gIGNvbnN0IGRhdGEgPSB7XHJcbiAgICBsYWJlbHM6IFsnWWVzJywgJ05vJ10sXHJcbiAgICBkYXRhc2V0czogW1xyXG4gICAgICB7XHJcbiAgICAgICAgbGFiZWw6ICdQZXJjZW50YWdlJyxcclxuICAgICAgICBkYXRhOiBbXHJcbiAgICAgICAgICA5My40OCxcclxuICAgICAgICAgIDYuNTJcclxuICAgICAgICBdLFxyXG4gICAgICAgIGJhY2tncm91bmRDb2xvcjogYmFja2dyb3VuZGNvbG9yc2NhbGUsXHJcbiAgICAgICAgYm9yZGVyQ29sb3I6IGJvcmRlcmNvbG9yc2NhbGUsXHJcbiAgICAgICAgYm9yZGVyV2lkdGg6IDEsXHJcbiAgICAgIH0sXHJcbiAgICBdLFxyXG4gIH07XHJcbiAgY29uc3Qgb3B0aW9ucyA9IHtcclxuICAgIHJlc3BvbnNpdmU6IHRydWUsXHJcbiAgICBtYWludGFpbkFzcGVjdFJhdGlvOiBmYWxzZSxcclxuICAgIHRpdGxlOiB7XHJcbiAgICAgIGRpc3BsYXk6IHRydWUsXHJcbiAgICAgIHRleHQ6ICdXb3VsZCB5b3UgbGlrZSB0byBzZWUgbW9yZSBpbmZvcm1hdGlvbiBvbiB0aGUgc3ViamVjdCBvZiBnZW5lIHRoZXJhcHk/JyxcclxuICAgIH0sXHJcbiAgfTtcclxuXHJcbiAgcmV0dXJuIChcclxuICAgIDxkaXYgY2xhc3NOYW1lPVwicGllLWNoYXJ0LWNvbnRhaW5lclwiPlxyXG4gICAgICA8UGllIGRhdGE9e2RhdGF9IG9wdGlvbnM9e29wdGlvbnN9IC8+XHJcbiAgICAgIDwvZGl2PlxyXG4gICk7XHJcbn07XHJcblxyXG5leHBvcnQgY29uc3QgSG93T2Z0ZW5UcmVhdG1lbnRhdGllbnRzOiBSZWFjdC5GQyA9ICgpID0+IHtcclxuICBjb25zdCBsYWJlbHMgPSBbJ1JhcmVseScsICdNb250aGx5JywgJ1dlZWtseScsICdTZXZlcmFsIHRpbWVzIHBlciB3ZWVrJywgJ0RhaWx5J107XHJcblxyXG4gIGNvbnN0IGRhdGEgPSB7XHJcbiAgICAgIGxhYmVscyxcclxuICAgICAgZGF0YXNldHM6IFtcclxuICAgICAgICB7XHJcbiAgICAgICAgICBsYWJlbDogXCJcIixcclxuICAgICAgICAgIGRhdGE6IFtcclxuICAgICAgICAgICAgICA2LjQ5LFxyXG4gICAgICAgICAgICAgIDYuNDksXHJcbiAgICAgICAgICAgICAgMTUuNTksXHJcbiAgICAgICAgICAgICAgOS43MyxcclxuICAgICAgICAgICAgICA2Mi43XHJcbiAgICAgICAgICAgIF0sXHJcbiAgICAgICAgICAgIGJhY2tncm91bmRDb2xvcjogYmFja2dyb3VuZGNvbG9yc2NhbGUsXHJcbiAgICAgICAgICAgIGJvcmRlckNvbG9yOiBib3JkZXJjb2xvcnNjYWxlLFxyXG4gICAgICAgIH0sXHJcbiAgICAgIF0sXHJcbiAgICB9O1xyXG4gIGNvbnN0IG9wdGlvbnMgPSB7XHJcbiAgICAgIHJlc3BvbnNpdmU6IHRydWUsXHJcbiAgICAgIHBsdWdpbnM6IHtcclxuICAgICAgICBsZWdlbmQ6IHtcclxuICAgICAgICAgIGRpc3BsYXk6IGZhbHNlXHJcbiAgICAgICAgfSxcclxuICAgICAgICB0aXRsZToge1xyXG4gICAgICAgICAgZGlzcGxheTogdHJ1ZSxcclxuICAgICAgICAgIHRleHQ6ICdIb3cgb2Z0ZW4gZG8geW91IG9yIHlvdXIgcmVsYXRpdmUgbmVlZCBtZWRpY2FsIHRyZWF0bWVudCBvciB0aGVyYXB5PycsXHJcbiAgICAgICAgfSxcclxuICAgICAgICBzY2FsZXM6IHtcclxuICAgICAgICAgIHk6IHtcclxuICAgICAgICAgICAgdGl0bGU6IHtcclxuICAgICAgICAgICAgICBkaXNwbGF5OiB0cnVlLFxyXG4gICAgICAgICAgICAgIHRleHQ6ICclJywgLy8gVGhpcyBpcyB0aGUgbGFiZWwgZm9yIHRoZSB5LWF4aXNcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgfSxcclxuICAgICAgfSxcclxuICAgICAgc2NhbGVzOiB7XHJcbiAgICAgICAgeToge1xyXG4gICAgICAgICAgdGl0bGU6IHtcclxuICAgICAgICAgICAgZGlzcGxheTogdHJ1ZSxcclxuICAgICAgICAgICAgdGV4dDogJyUnLCAvLyBUaGlzIGlzIHRoZSBsYWJlbCBmb3IgdGhlIHktYXhpc1xyXG4gICAgICAgICAgfSxcclxuICAgICAgICB9LFxyXG4gICAgICB9LFxyXG4gICAgfTtcclxuXHJcbiAgcmV0dXJuIChcclxuICAgIDxkaXYgY2xhc3NOYW1lPVwiYmFyLWNoYXJ0LWNvbnRhaW5lclwiPlxyXG4gICAgICA8QmFyIG9wdGlvbnM9e29wdGlvbnN9IGRhdGE9e2RhdGF9IC8+XHJcbiAgICAgIDwvZGl2PlxyXG4gICk7XHJcbn07XHJcblxyXG5leHBvcnQgY29uc3QgV2hhdENvY2VybnNBYm91dEdlbmVUaGVyYXB5YXRpZW50czogUmVhY3QuRkMgPSAoKSA9PiB7XHJcbiAgY29uc3QgbGFiZWxzID0gWydNbyBjb25jZXJucycsICdFdGhpY2FsIHF1ZXN0aW9ucycsICdMb25nLXRlcm0gZWZmZWN0cycsICdTYWZldHkgYW5kIHNpZGUgZWZmZWN0cycsICdDb3N0IGFuZCBhY2Nlc3NpYmlsaXR5J107XHJcblxyXG4gIGNvbnN0IGRhdGEgPSB7XHJcbiAgICAgIGxhYmVscyxcclxuICAgICAgZGF0YXNldHM6IFtcclxuICAgICAgICB7XHJcbiAgICAgICAgICBkYXRhOiBbXHJcbiAgICAgICAgICAgICAgMC41NCxcclxuICAgICAgICAgICAgICAxMC4xOCxcclxuICAgICAgICAgICAgICA1OS40NixcclxuICAgICAgICAgICAgICA1OS40NixcclxuICAgICAgICAgICAgICAzMi40M1xyXG4gICAgICAgICAgICBdLFxyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kQ29sb3I6IGJhY2tncm91bmRjb2xvcnNjYWxlLFxyXG4gICAgICAgICAgICBib3JkZXJDb2xvcjogYm9yZGVyY29sb3JzY2FsZSxcclxuICAgICAgICB9LFxyXG4gICAgICBdLFxyXG4gICAgfTtcclxuICBjb25zdCBvcHRpb25zID0ge1xyXG4gICAgICByZXNwb25zaXZlOiB0cnVlLFxyXG4gICAgICBwbHVnaW5zOiB7XHJcbiAgICAgICAgbGVnZW5kOiB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBmYWxzZVxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgdGl0bGU6IHtcclxuICAgICAgICAgIGRpc3BsYXk6IHRydWUsXHJcbiAgICAgICAgICB0ZXh0OiAnV2hhdCBjb25jZXJucyBkbyB5b3UgaGF2ZSBhYm91dCBnZW5lIHRoZXJhcHk/JyxcclxuICAgICAgICB9LFxyXG4gICAgICB9LFxyXG4gICAgICBzY2FsZXM6IHtcclxuICAgICAgICB5OiB7XHJcbiAgICAgICAgICB0aXRsZToge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiB0cnVlLFxyXG4gICAgICAgICAgICB0ZXh0OiAnJScsIC8vIFRoaXMgaXMgdGhlIGxhYmVsIGZvciB0aGUgeS1heGlzXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgIH0sXHJcbiAgICAgIH0sXHJcbiAgICB9O1xyXG5cclxuICByZXR1cm4gKFxyXG4gICAgPGRpdiBjbGFzc05hbWU9XCJiYXItY2hhcnQtY29udGFpbmVyXCI+XHJcbiAgICAgIDxCYXIgb3B0aW9ucz17b3B0aW9uc30gZGF0YT17ZGF0YX0gLz5cclxuICAgICAgPC9kaXY+XHJcbiAgKTtcclxufTtcclxuXHJcbmV4cG9ydCBjb25zdCBIb3dNdWNoRG9lc0l0QWZmZWN0WW91YXRpZW50czogUmVhY3QuRkMgPSAoKSA9PiB7XHJcbiAgY29uc3QgbGFiZWxzID0gWycxJywgJzInLCAnMycsICc0JywgJzUnXTtcclxuXHJcbiAgY29uc3QgZGF0YSA9IHtcclxuICAgICAgbGFiZWxzLFxyXG4gICAgICBkYXRhc2V0czogW1xyXG4gICAgICAgIHtcclxuICAgICAgICAgIGRhdGE6IFtcclxuICAgICAgICAgICAgICA0LjMyLFxyXG4gICAgICAgICAgICAgIDEyLjQzLFxyXG4gICAgICAgICAgICAgIDQyLjE2LFxyXG4gICAgICAgICAgICAgIDMyLjk3LFxyXG4gICAgICAgICAgICAgIDguMTFcclxuICAgICAgICAgICAgXSxcclxuICAgICAgICAgICAgYmFja2dyb3VuZENvbG9yOiBiYWNrZ3JvdW5kY29sb3JzY2FsZSxcclxuICAgICAgICAgICAgYm9yZGVyQ29sb3I6IGJvcmRlcmNvbG9yc2NhbGUsXHJcbiAgICAgICAgfSxcclxuICAgICAgXSxcclxuICAgIH07XHJcbiAgY29uc3Qgb3B0aW9ucyA9IHtcclxuICAgICAgcmVzcG9uc2l2ZTogdHJ1ZSxcclxuICAgICAgcGx1Z2luczoge1xyXG4gICAgICAgIGxlZ2VuZDoge1xyXG4gICAgICAgICAgZGlzcGxheTogZmFsc2VcclxuICAgICAgICB9LFxyXG4gICAgICAgIHRpdGxlOiB7XHJcbiAgICAgICAgICBkaXNwbGF5OiB0cnVlLFxyXG4gICAgICAgICAgdGV4dDogW1wiSG93IG11Y2ggZG9lcyBDeXN0aWMgRmlicm9zaXMgYWZmZWN0IHlvdXIgb3IgeW91ciByZWxhdGl2ZSdzIFwiLCBcImRhaWx5IGxpZmU/ICgxID0gTm90IGF0IGFsbCwgNSA9IFZlcnkgbXVjaClcIl1cclxuICAgICAgICB9LFxyXG4gICAgICB9LFxyXG4gICAgICBzY2FsZXM6IHtcclxuICAgICAgICB5OiB7XHJcbiAgICAgICAgICB0aXRsZToge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiB0cnVlLFxyXG4gICAgICAgICAgICB0ZXh0OiAnJScsIC8vIFRoaXMgaXMgdGhlIGxhYmVsIGZvciB0aGUgeS1heGlzXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgIH0sXHJcbiAgICAgIH0sXHJcbiAgICB9O1xyXG5cclxuICByZXR1cm4gKFxyXG4gICAgPGRpdiBjbGFzc05hbWU9XCJiYXItY2hhcnQtY29udGFpbmVyXCI+XHJcbiAgICAgIDxCYXIgb3B0aW9ucz17b3B0aW9uc30gZGF0YT17ZGF0YX0gLz5cclxuICAgICAgPC9kaXY+XHJcbiAgKTtcclxufTtcclxuXHJcblxyXG5leHBvcnQgY29uc3QgV2hpY2hUaGVyYXB5RG9Zb3VVc2VhdGllbnRzOiBSZWFjdC5GQyA9ICgpID0+IHtcclxuICBjb25zdCBsYWJlbHMgPSBbJ1BzeWNob2xvZ2ljYWwgdGhlcmFweScsICdQaHlzaWNhbCB0aGVyYXB5JywgJ051dHJpdGlvbmFsIHRoZXJhcHknLCAnTWVkaWNhdGlvbiB0aGVyYXB5JywgJ0luaGFsYXRpb24gdGhlcmFweScsICdPdGhlcnMnXTtcclxuXHJcbiAgY29uc3QgZGF0YSA9IHtcclxuICAgICAgbGFiZWxzLFxyXG4gICAgICBkYXRhc2V0czogW1xyXG4gICAgICAgIHtcclxuICAgICAgICAgIGRhdGE6IFtcclxuICAgICAgICAgICAgICA1Ljk0LFxyXG4gICAgICAgICAgICAgIDI2LjMyLFxyXG4gICAgICAgICAgICAgIDEwLjUzLFxyXG4gICAgICAgICAgICAgIDI5LjIsXHJcbiAgICAgICAgICAgICAgMjYuODMsXHJcbiAgICAgICAgICAgICAgMS4xOVxyXG4gICAgICAgICAgICBdLFxyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kQ29sb3I6IGJhY2tncm91bmRjb2xvcnNjYWxlLFxyXG4gICAgICAgICAgICBib3JkZXJDb2xvcjogYm9yZGVyY29sb3JzY2FsZSxcclxuICAgICAgICB9LFxyXG4gICAgICBdLFxyXG4gICAgfTtcclxuICBjb25zdCBvcHRpb25zID0ge1xyXG4gICAgICByZXNwb25zaXZlOiB0cnVlLFxyXG4gICAgICBwbHVnaW5zOiB7XHJcbiAgICAgICAgbGVnZW5kOiB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBmYWxzZVxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgdGl0bGU6IHtcclxuICAgICAgICAgIGRpc3BsYXk6IHRydWUsXHJcbiAgICAgICAgICB0ZXh0OiAnV2hpY2ggZm9ybShzKSBvZiB0aGVyYXB5IGRvIHlvdSBvciB5b3VyIHJlbGF0aXZlIHVzZT8nLFxyXG4gICAgICAgIH0sXHJcbiAgICAgIH0sXHJcbiAgICAgIHNjYWxlczoge1xyXG4gICAgICAgIHk6IHtcclxuICAgICAgICAgIHRpdGxlOiB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IHRydWUsXHJcbiAgICAgICAgICAgIHRleHQ6ICclJywgLy8gVGhpcyBpcyB0aGUgbGFiZWwgZm9yIHRoZSB5LWF4aXNcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgfSxcclxuICAgICAgfSxcclxuICAgIH07XHJcblxyXG4gIHJldHVybiAoXHJcbiAgICA8ZGl2IGNsYXNzTmFtZT1cImJhci1jaGFydC1jb250YWluZXJcIj5cclxuICAgICAgPEJhciBvcHRpb25zPXtvcHRpb25zfSBkYXRhPXtkYXRhfSAvPlxyXG4gICAgICA8L2Rpdj5cclxuICApO1xyXG59O1xyXG5cclxuZXhwb3J0IGNvbnN0IFdoaWNoU3ltcHRvbXNhdGllbnRzOiBSZWFjdC5GQyA9ICgpID0+IHtcclxuICBjb25zdCBsYWJlbHMgPSBbJ090aGVyJywgJ0hlYWRhY2hlJywgXCJEZWxheWVkIEdyb3d0aFwiLCAnVW5kZXJ3ZWlnaHQnLCAnRnJlcXVlbnQgbHVuZyBpbmZlY3Rpb25zJywgJ011c2NsZSB0cmVtb3JzL3dlYWtuZXNzJywgJ2NvbnN0aXBhdGlvbicsICdBYmRvbWluYWwgcGFpbicsICdDaHJvbmljIGNvdWdoJyBdO1xyXG5cclxuICBjb25zdCBkYXRhID0ge1xyXG4gICAgICBsYWJlbHMsXHJcbiAgICAgIGRhdGFzZXRzOiBbXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgZGF0YTogW1xyXG4gICAgICAgICAgICAgIDQuOTksXHJcbiAgICAgICAgICAgICAgNi45OCxcclxuICAgICAgICAgICAgICA2LjIzLFxyXG4gICAgICAgICAgICAgIDEzLjQ3LCBcclxuICAgICAgICAgICAgICAxMy43MixcclxuICAgICAgICAgICAgICAyLjAsXHJcbiAgICAgICAgICAgICAgMTAuNDcsXHJcbiAgICAgICAgICAgICAgMjMuMTksXHJcbiAgICAgICAgICAgICAgMTguOTVcclxuICAgICAgICAgICAgXSxcclxuICAgICAgICAgICAgYmFja2dyb3VuZENvbG9yOiBiYWNrZ3JvdW5kY29sb3JzY2FsZSxcclxuICAgICAgICAgICAgYm9yZGVyQ29sb3I6IGJvcmRlcmNvbG9yc2NhbGUsXHJcbiAgICAgICAgfSxcclxuICAgICAgXSxcclxuICAgIH07XHJcbiAgY29uc3Qgb3B0aW9ucyA9IHtcclxuICAgICAgcmVzcG9uc2l2ZTogdHJ1ZSxcclxuICAgICAgcGx1Z2luczoge1xyXG4gICAgICAgIGxlZ2VuZDoge1xyXG4gICAgICAgICAgZGlzcGxheTogZmFsc2VcclxuICAgICAgICB9LFxyXG4gICAgICAgIHRpdGxlOiB7XHJcbiAgICAgICAgICBkaXNwbGF5OiB0cnVlLFxyXG4gICAgICAgICAgdGV4dDogJ1doaWNoIHN5bXB0b21zIGRvIHlvdSBvciB5b3VyIHJlbGF0aXZlIGhhdmUgbW9zdCBmcmVxdWVudGx5PycsXHJcbiAgICAgICAgfSxcclxuICAgICAgfSxcclxuICAgICAgc2NhbGVzOiB7XHJcbiAgICAgICAgeToge1xyXG4gICAgICAgICAgdGl0bGU6IHtcclxuICAgICAgICAgICAgZGlzcGxheTogdHJ1ZSxcclxuICAgICAgICAgICAgdGV4dDogJyUnLCAvLyBUaGlzIGlzIHRoZSBsYWJlbCBmb3IgdGhlIHktYXhpc1xyXG4gICAgICAgICAgfSxcclxuICAgICAgICB9LFxyXG4gICAgICB9LFxyXG4gICAgfTtcclxuXHJcbiAgcmV0dXJuIChcclxuICAgIDxkaXYgY2xhc3NOYW1lPVwiYmFyLWNoYXJ0LWNvbnRhaW5lclwiPlxyXG4gICAgICA8QmFyIG9wdGlvbnM9e29wdGlvbnN9IGRhdGE9e2RhdGF9IC8+XHJcbiAgICAgIDwvZGl2PlxyXG4gICk7XHJcbn07XHJcblxyXG5cclxuZXhwb3J0IGNvbnN0IEJhc2ljUG9zaXRpb25hdGllbnRzOiBSZWFjdC5GQyA9ICgpID0+IHtcclxuICBjb25zdCBsYWJlbHMgPSBbJzEnLCAnMicsICczJywgJzQnLCAnNSddO1xyXG4gIGNvbnN0IGRhdGEgPSB7XHJcbiAgICAgIGxhYmVscyxcclxuICAgICAgZGF0YXNldHM6IFtcclxuICAgICAgICB7XHJcbiAgICAgICAgICBkYXRhOiBbXHJcbiAgICAgICAgICAgICAgMi4xNCxcclxuICAgICAgICAgICAgICA1LjE3LFxyXG4gICAgICAgICAgICAgIDI3LjE0LFxyXG4gICAgICAgICAgICAgIDMwLjAwLFxyXG4gICAgICAgICAgICAgIDM1LjAwXHJcbiAgICAgICAgICAgIF0sXHJcbiAgICAgICAgICAgIGJhY2tncm91bmRDb2xvcjogYmFja2dyb3VuZGNvbG9yc2NhbGUsXHJcbiAgICAgICAgICAgIGJvcmRlckNvbG9yOiBib3JkZXJjb2xvcnNjYWxlLFxyXG4gICAgICAgIH0sXHJcbiAgICAgIF0sXHJcbiAgICB9O1xyXG4gIGNvbnN0IG9wdGlvbnMgPSB7XHJcbiAgICAgIHJlc3BvbnNpdmU6IHRydWUsXHJcbiAgICAgIHBsdWdpbnM6IHtcclxuICAgICAgICBsZWdlbmQ6IHtcclxuICAgICAgICAgIGRpc3BsYXk6IGZhbHNlXHJcbiAgICAgICAgfSxcclxuICAgICAgICB0aXRsZToge1xyXG4gICAgICAgICAgZGlzcGxheTogdHJ1ZSxcclxuICAgICAgICAgIHRleHQ6IFsnV2hhdCBpcyB5b3VyIGJhc2ljIHBvc2l0aW9uIG9uIGdlbmUgdGhlcmFweT8nLCcgKDE9VmVyeSBuZWdhdGl2ZSwgNT1WZXJ5IHBvc2l0aXZlKSddXHJcbiAgICAgICAgfSxcclxuICAgICAgfSxcclxuICAgICAgc2NhbGVzOiB7XHJcbiAgICAgICAgeToge1xyXG4gICAgICAgICAgdGl0bGU6IHtcclxuICAgICAgICAgICAgZGlzcGxheTogdHJ1ZSxcclxuICAgICAgICAgICAgdGV4dDogJyUnLCAvLyBUaGlzIGlzIHRoZSBsYWJlbCBmb3IgdGhlIHktYXhpc1xyXG4gICAgICAgICAgfSxcclxuICAgICAgICB9LFxyXG4gICAgICB9LFxyXG4gICAgfTtcclxuXHJcbiAgcmV0dXJuIChcclxuICAgIDxkaXYgY2xhc3NOYW1lPVwiYmFyLWNoYXJ0LWNvbnRhaW5lclwiPlxyXG4gICAgICA8QmFyIG9wdGlvbnM9e29wdGlvbnN9IGRhdGE9e2RhdGF9IC8+XHJcbiAgICAgIDwvZGl2PlxyXG4gICk7XHJcbn07XHJcblxyXG5leHBvcnQgY29uc3QgQWdlRGlhZ25vc2lzYXRpZW50czogUmVhY3QuRkMgPSAoKSA9PiB7XHJcbiAgY29uc3QgbGFiZWxzID0gWyc+MjAnLCAnMTAtMjAnLCAnMS0xMCcsICdmaXJzdCBtb250aHMnLCAnZmlyc3Qgd2VlaycsICdOZXdib3JuIFNjcmVlbmluZycsICdCZWZvcmUgYmlydGgnXTtcclxuICBjb25zdCBkYXRhID0ge1xyXG4gICAgICBsYWJlbHMsXHJcbiAgICAgIGRhdGFzZXRzOiBbXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgZGF0YTogW1xyXG4gICAgICAgICAgICAzLjgzLFxyXG4gICAgICAgICAgICAyLjczLFxyXG4gICAgICAgICAgICAyNi4yMyxcclxuICAgICAgICAgICAgMjEuODYsXHJcbiAgICAgICAgICAgIDE4LjAzLFxyXG4gICAgICAgICAgICAyNi4yMyxcclxuICAgICAgICAgICAgMS4wOVxyXG4gICAgICAgICAgICBdLFxyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kQ29sb3I6IGJhY2tncm91bmRjb2xvcnNjYWxlLFxyXG4gICAgICAgICAgICBib3JkZXJDb2xvcjogYm9yZGVyY29sb3JzY2FsZSxcclxuICAgICAgICB9LFxyXG4gICAgICBdLFxyXG4gICAgfTtcclxuICBjb25zdCBvcHRpb25zID0ge1xyXG4gICAgICByZXNwb25zaXZlOiB0cnVlLFxyXG4gICAgICBwbHVnaW5zOiB7XHJcbiAgICAgICAgbGVnZW5kOiB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBmYWxzZVxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgdGl0bGU6IHtcclxuICAgICAgICAgIGRpc3BsYXk6IHRydWUsXHJcbiAgICAgICAgICB0ZXh0OiAnQXQgd2hhdCBhZ2Ugd2VyZSB5b3Ugb3IgeW91ciByZWxhdGl2ZSBkaWFnbm9zZWQgd2l0aCBDeXN0aWMgRmlicm9zaXM/JyxcclxuICAgICAgICB9LFxyXG4gICAgICB9LFxyXG4gICAgICBzY2FsZXM6IHtcclxuICAgICAgICB5OiB7XHJcbiAgICAgICAgICB0aXRsZToge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiB0cnVlLFxyXG4gICAgICAgICAgICB0ZXh0OiAnJScsIC8vIFRoaXMgaXMgdGhlIGxhYmVsIGZvciB0aGUgeS1heGlzXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgIH0sXHJcbiAgICAgIH0sXHJcbiAgICB9O1xyXG5cclxuICByZXR1cm4gKFxyXG4gICAgPGRpdiBjbGFzc05hbWU9XCJiYXItY2hhcnQtY29udGFpbmVyXCI+XHJcbiAgICAgIDxCYXIgb3B0aW9ucz17b3B0aW9uc30gZGF0YT17ZGF0YX0gLz5cclxuICAgICAgPC9kaXY+XHJcbiAgKTtcclxufTtcclxuXHJcbmV4cG9ydCBjb25zdCBIZWFkcm9mR2VuZVRoZXJhcHlQYXRpZW50czogUmVhY3QuRkMgPSAoKSA9PiB7XHJcbiAgY29uc3QgZGF0YSA9IHtcclxuICAgIGxhYmVsczogWydZZXMnLCAnTm8nXSxcclxuICAgIGRhdGFzZXRzOiBbXHJcbiAgICAgIHtcclxuICAgICAgICBsYWJlbDogJ1BlcmNlbnRhZ2UnLFxyXG4gICAgICAgIGRhdGE6IFtcclxuICAgICAgICAgIDc2Ljc2LFxyXG4gICAgICAgICAgMjMuMjRcclxuICAgICAgICBdLFxyXG4gICAgICAgIGJhY2tncm91bmRDb2xvcjogYmFja2dyb3VuZGNvbG9yc2NhbGUsXHJcbiAgICAgICAgYm9yZGVyQ29sb3I6IGJvcmRlcmNvbG9yc2NhbGUsXHJcbiAgICAgICAgYm9yZGVyV2lkdGg6IDEsXHJcbiAgICAgIH0sXHJcbiAgICBdLFxyXG4gIH07XHJcbiAgY29uc3Qgb3B0aW9ucyA9IHtcclxuICAgIHJlc3BvbnNpdmU6IHRydWUsXHJcbiAgICBtYWludGFpbkFzcGVjdFJhdGlvOiBmYWxzZSxcclxuICAgIHBsdWdpbnM6IHtcclxuICAgICAgdGl0bGU6IHtcclxuICAgICAgICBkaXNwbGF5OiB0cnVlLFxyXG4gICAgICAgIHRleHQ6ICdIYXZlIHlvdSBldmVyIGhlYXJkIG9mIGdlbmUgdGhlcmFweT8nLFxyXG4gICAgICB9LFxyXG4gICAgfVxyXG4gIH07XHJcblxyXG4gIHJldHVybiAoXHJcbiAgICA8ZGl2IGNsYXNzTmFtZT1cInBpZS1jaGFydC1jb250YWluZXJcIj5cclxuICAgICAgPFBpZSBkYXRhPXtkYXRhfSBvcHRpb25zPXtvcHRpb25zfSAvPlxyXG4gICAgICA8L2Rpdj5cclxuICApO1xyXG59O1xyXG5cclxuZXhwb3J0IGNvbnN0IE1vcmVJbmZvT25UaGVyYXB5Qm90aDogUmVhY3QuRkMgPSAoKSA9PiB7XHJcbiAgY29uc3QgbGFiZWxzID0gWydZZXMnLCAnTm8nXTtcclxuXHJcbiAgY29uc3QgZGF0YSA9IHtcclxuICAgICAgbGFiZWxzLFxyXG4gICAgICBkYXRhc2V0czogW1xyXG4gICAgICAgIHtcclxuICAgICAgICAgIGxhYmVsOiAnQWZmZWN0ZWQnLFxyXG4gICAgICAgICAgZGF0YTogW1xyXG4gICAgICAgICAgICA5My40OCxcclxuICAgICAgICAgICAgNi41MlxyXG4gICAgICAgICAgICAgXHJcbiAgICAgICAgICAgIF0sXHJcbiAgICAgICAgICAgIGJhY2tncm91bmRDb2xvcjogJ3JnYmEoMTMzLCAxNSwgMTIwLCAwLjIpJyxcclxuICAgICAgICAgICAgYm9yZGVyQ29sb3I6ICdyZ2JhKDEzMywgMTUsIDEyMCwgMScsXHJcbiAgICAgICAgfSxcclxuICAgICAgICB7XHJcbiAgICAgICAgICBsYWJlbDogJ1VuYWZmZWN0ZWQnLFxyXG4gICAgICAgICAgZGF0YTogW1xyXG4gICAgICAgICAgICA5Mi4wMCxcclxuICAgICAgICAgICAgOC4wMFxyXG4gICAgICAgICAgICBdLFxyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kQ29sb3I6ICdyZ2JhKDE2MCwgMTY3LCAyNDMsIDAuMiknLFxyXG4gICAgICAgICAgICBib3JkZXJDb2xvcjogJ3JnYmEoMTYwLCAxNjcsIDI0MywgMSknLFxyXG4gICAgICAgIH0sXHJcbiAgICAgIF0sXHJcbiAgICB9O1xyXG4gIGNvbnN0IG9wdGlvbnMgPSB7XHJcbiAgICAgIHJlc3BvbnNpdmU6IHRydWUsXHJcbiAgICAgIHBsdWdpbnM6IHtcclxuICAgICAgICBsZWdlbmQ6IHtcclxuICAgICAgICAgIHBvc2l0aW9uOiAndG9wJyBhcyBjb25zdCxcclxuICAgICAgICB9LFxyXG4gICAgICAgIHRpdGxlOiB7XHJcbiAgICAgICAgICBkaXNwbGF5OiB0cnVlLFxyXG4gICAgICAgICAgdGV4dDogJ1dvdWxkIHlvdSBsaWtlIHRvIHNlZSBtb3JlIGluZm9ybWF0aW9uIG9uIHRoZSBzdWJqZWN0IG9mIGdlbmUgdGhlcmFweT8nLFxyXG4gICAgICAgIH0sXHJcbiAgICAgIH0sXHJcbiAgICAgIHNjYWxlczoge1xyXG4gICAgICAgIHk6IHtcclxuICAgICAgICAgIHRpdGxlOiB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IHRydWUsXHJcbiAgICAgICAgICAgIHRleHQ6ICclJywgLy8gVGhpcyBpcyB0aGUgbGFiZWwgZm9yIHRoZSB5LWF4aXNcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgfSxcclxuICAgICAgfSxcclxuICAgIH07XHJcblxyXG4gIHJldHVybiAoXHJcbiAgICA8ZGl2IGNsYXNzTmFtZT1cImJhci1jaGFydC1jb250YWluZXJcIj5cclxuICAgICAgPEJhciBvcHRpb25zPXtvcHRpb25zfSBkYXRhPXtkYXRhfSAvPlxyXG4gICAgICA8L2Rpdj5cclxuICApO1xyXG59O1xyXG5cclxuXHJcbmV4cG9ydCBjb25zdCBIZWFyZE9mQ0ZQdWJsaWM6IFJlYWN0LkZDID0gKCkgPT4ge1xyXG4gIGNvbnN0IGRhdGEgPSB7XHJcbiAgICBsYWJlbHM6IFsnWWVzJywgJ05vJ10sXHJcbiAgICBkYXRhc2V0czogW1xyXG4gICAgICB7XHJcbiAgICAgICAgbGFiZWw6ICdQZXJjZW50YWdlJyxcclxuICAgICAgICBkYXRhOiBbXHJcbiAgICAgICAgICA4Mi44OSxcclxuICAgICAgICAgIDE3LjExXHJcbiAgICAgICAgXSxcclxuICAgICAgICBiYWNrZ3JvdW5kQ29sb3I6IGJhY2tncm91bmRjb2xvcnNjYWxlLFxyXG4gICAgICAgICAgICBib3JkZXJDb2xvcjogYm9yZGVyY29sb3JzY2FsZSxcclxuICAgICAgICBib3JkZXJXaWR0aDogMSxcclxuICAgICAgfSxcclxuICAgIF0sXHJcbiAgfTtcclxuICBjb25zdCBvcHRpb25zID0ge1xyXG4gICAgcmVzcG9uc2l2ZTogdHJ1ZSxcclxuICAgIG1haW50YWluQXNwZWN0UmF0aW86IGZhbHNlLFxyXG4gICAgcGx1Z2luczoge1xyXG4gICAgICB0aXRsZToge1xyXG4gICAgICAgIGRpc3BsYXk6IHRydWUsXHJcbiAgICAgICAgdGV4dDogJ0hhdmUgeW91IGhlYXJkIG9mIEN5c3RpYyBGaWJyb3Npcz8nLFxyXG4gICAgICB9LFxyXG4gICAgfVxyXG4gIH07XHJcblxyXG4gIHJldHVybiAoXHJcbiAgICA8ZGl2IGNsYXNzTmFtZT1cInBpZS1jaGFydC1jb250YWluZXItc21hbGxcIj5cclxuICAgICAgPFBpZSBkYXRhPXtkYXRhfSBvcHRpb25zPXtvcHRpb25zfSAvPlxyXG4gICAgICA8L2Rpdj5cclxuICApO1xyXG59O1xyXG5cclxuXHJcbmV4cG9ydCBjb25zdCBIZWFkT2ZHZW5lVGhlcmFweVB1YmxpYzogUmVhY3QuRkMgPSAoKSA9PiB7XHJcbiAgY29uc3QgZGF0YSA9IHtcclxuICAgIGxhYmVsczogWydZZXMnLCAnTm8nXSxcclxuICAgIGRhdGFzZXRzOiBbXHJcbiAgICAgIHtcclxuICAgICAgICBsYWJlbDogJ1BlcmNlbnRhZ2UnLFxyXG4gICAgICAgIGRhdGE6IFtcclxuICAgICAgICAgIDY3LjU4LFxyXG4gICAgICAgICAgMzIuNDJcclxuICAgICAgICBdLFxyXG4gICAgICAgIGJhY2tncm91bmRDb2xvcjogYmFja2dyb3VuZGNvbG9yc2NhbGUsXHJcbiAgICAgICAgICAgIGJvcmRlckNvbG9yOiBib3JkZXJjb2xvcnNjYWxlLFxyXG4gICAgICAgIGJvcmRlcldpZHRoOiAxLFxyXG4gICAgICB9LFxyXG4gICAgXSxcclxuICB9O1xyXG4gIGNvbnN0IG9wdGlvbnMgPSB7XHJcbiAgICByZXNwb25zaXZlOiB0cnVlLFxyXG4gICAgbWFpbnRhaW5Bc3BlY3RSYXRpbzogZmFsc2UsXHJcbiAgICBwbHVnaW5zOiB7XHJcbiAgICAgIHRpdGxlOiB7XHJcbiAgICAgICAgZGlzcGxheTogdHJ1ZSxcclxuICAgICAgICB0ZXh0OiAnSGF2ZSB5b3UgZXZlciBoZWFyZCBvZiBnZW5lIHRoZXJhcHk/JyxcclxuICAgICAgfSxcclxuICAgIH1cclxuICB9O1xyXG5cclxuICByZXR1cm4gKFxyXG4gICAgPGRpdiBjbGFzc05hbWU9XCJwaWUtY2hhcnQtY29udGFpbmVyXCI+XHJcbiAgICAgIDxQaWUgZGF0YT17ZGF0YX0gb3B0aW9ucz17b3B0aW9uc30gLz5cclxuICAgICAgPC9kaXY+XHJcbiAgKTtcclxufTtcclxuXHJcblxyXG5leHBvcnQgY29uc3QgSG93RGlkWW91TGVhcm5QdWJsaWM6IFJlYWN0LkZDID0gKCkgPT4ge1xyXG4gIGNvbnN0IGxhYmVscyA9IFsnSSBhbSBhZmZlY3RlZCcsICdGYW1pbHkvRnJpZW5kcycsICdTY2hvb2wvVW5pdmVyc2l0eScsICdNZWRpYScsICdIZWFsdGhjYXJlIHByb3ZpZGVyJywgJ090aGVyJ107XHJcblxyXG4gIGNvbnN0IGRhdGEgPSB7XHJcbiAgICAgIGxhYmVscyxcclxuICAgICAgZGF0YXNldHM6IFtcclxuICAgICAgICB7XHJcbiAgICAgICAgICBkYXRhOiBbXHJcbiAgICAgICAgICAgIDEuMjMsXHJcbiAgICAgICAgICAgIDI1LjE1LFxyXG4gICAgICAgICAgICAyMC44NixcclxuICAgICAgICAgICAgNDQuMTcsXHJcbiAgICAgICAgICAgIDMuNjgsXHJcbiAgICAgICAgICAgIDQuOTFcclxuICAgICAgICAgICAgXSxcclxuICAgICAgICAgICAgYmFja2dyb3VuZENvbG9yOiBiYWNrZ3JvdW5kY29sb3JzY2FsZSxcclxuICAgICAgICAgICAgYm9yZGVyQ29sb3I6IGJvcmRlcmNvbG9yc2NhbGUsXHJcbiAgICAgICAgfSxcclxuICAgICAgXSxcclxuICAgIH07XHJcbiAgY29uc3Qgb3B0aW9ucyA9IHtcclxuICAgICAgcmVzcG9uc2l2ZTogdHJ1ZSxcclxuICAgICAgcGx1Z2luczoge1xyXG4gICAgICAgIGxlZ2VuZDoge1xyXG4gICAgICAgICAgZGlzcGxheTogZmFsc2VcclxuICAgICAgICB9LFxyXG4gICAgICAgIHRpdGxlOiB7XHJcbiAgICAgICAgICBkaXNwbGF5OiB0cnVlLFxyXG4gICAgICAgICAgdGV4dDogJ0hvdyBkaWQgeW91IG1haW5seSBsZWFybiBhYm91dCBDeXN0aWMgRmlicm9zaXM/ICcsXHJcbiAgICAgICAgfSxcclxuICAgICAgfSxcclxuICAgICAgc2NhbGVzOiB7XHJcbiAgICAgICAgeDoge1xyXG4gICAgICAgICAgYmVnaW5BdFplcm86IHRydWUsXHJcbiAgICAgICAgICBiYXJQZXJjZW50YWdlOiAwLjUsIC8vIFNjaG1hbGVyIG1hY2hlbiwgMC41ID0gNTAlIGRlciBLYXRlZ29yaWUtQnJlaXRlXHJcbiAgICAgICAgICBjYXRlZ29yeVBlcmNlbnRhZ2U6IDAuNSwgLy8gUGxhdHogcHJvIEthdGVnb3JpZSBzY2htYWxlciBtYWNoZW5cclxuICAgICAgICB9LFxyXG4gICAgICAgIHk6IHtcclxuICAgICAgICAgIGJlZ2luQXRaZXJvOiB0cnVlLFxyXG4gICAgICAgICAgdGl0bGU6IHtcclxuICAgICAgICAgICAgZGlzcGxheTogdHJ1ZSxcclxuICAgICAgICAgICAgdGV4dDogJyUnLCAvLyBUaGlzIGlzIHRoZSBsYWJlbCBmb3IgdGhlIHktYXhpc1xyXG4gICAgICAgICAgfSxcclxuICAgICAgICB9LFxyXG4gICAgICB9LFxyXG4gICAgfTtcclxuXHJcbiAgcmV0dXJuIChcclxuICAgIDxkaXYgY2xhc3NOYW1lPVwiYmFyLWNoYXJ0LWNvbnRhaW5lclwiPlxyXG4gICAgICA8QmFyIG9wdGlvbnM9e29wdGlvbnN9IGRhdGE9e2RhdGF9IC8+XHJcbiAgICAgIDwvZGl2PlxyXG4gICk7XHJcbn07XHJcblxyXG5leHBvcnQgY29uc3QgSG93V2VsbERvWW91VW5kZXJzdGFuZEdGUHVibGljOiBSZWFjdC5GQyA9ICgpID0+IHtcclxuICBjb25zdCBkYXRhID0ge1xyXG4gICAgbGFiZWxzOiBbJ0V4dHJlbWVseSB3ZWxsJywgJ1NvbWV3aGF0IHdlbGwnLCAnTm90IHNvIHdlbGwnLCAnTm90IGF0IGFsbCddLFxyXG4gICAgZGF0YXNldHM6IFtcclxuICAgICAge1xyXG4gICAgICAgIGxhYmVsOiAnUGVyY2VudGFnZScsXHJcbiAgICAgICAgZGF0YTogW1xyXG4gICAgICAgICAgMTkuMzgsXHJcbiAgICAgICAgICAyNC44MSxcclxuICAgICAgICAgIDQ0Ljk2LFxyXG4gICAgICAgICAgMTAuODVcclxuICAgICAgICBdLFxyXG4gICAgICAgIGJhY2tncm91bmRDb2xvcjogYmFja2dyb3VuZGNvbG9yc2NhbGUsXHJcbiAgICAgICAgICAgIGJvcmRlckNvbG9yOiBib3JkZXJjb2xvcnNjYWxlLFxyXG4gICAgICAgIGJvcmRlcldpZHRoOiAxLFxyXG4gICAgICB9LFxyXG4gICAgXSxcclxuICB9O1xyXG4gIGNvbnN0IG9wdGlvbnMgPSB7XHJcbiAgICByZXNwb25zaXZlOiB0cnVlLFxyXG4gICAgbWFpbnRhaW5Bc3BlY3RSYXRpbzogZmFsc2UsXHJcbiAgICBwbHVnaW5zOiB7XHJcbiAgICAgIHRpdGxlOiB7XHJcbiAgICAgICAgZGlzcGxheTogdHJ1ZSxcclxuICAgICAgICB0ZXh0OiAnSG93IHdlbGwgZG8geW91IHVuZGVyc3RhbmQgd2hhdCBnZW5lIHRoZXJhcHkgaXM/JyxcclxuICAgICAgfSxcclxuICAgIH1cclxuICB9O1xyXG5cclxuICByZXR1cm4gKFxyXG4gICAgPGRpdiBjbGFzc05hbWU9XCJwaWUtY2hhcnQtY29udGFpbmVyLXNtYWxsXCI+XHJcbiAgICAgIDxQaWUgZGF0YT17ZGF0YX0gb3B0aW9ucz17b3B0aW9uc30gLz5cclxuICAgICAgPC9kaXY+XHJcbiAgKTtcclxufTtcclxuXHJcbmV4cG9ydCBjb25zdCBIb3dXZWxsSW5mb3JtZWRBYm91dENGUHVibGljOiBSZWFjdC5GQyA9ICgpID0+IHtcclxuICBjb25zdCBkYXRhID0ge1xyXG4gICAgbGFiZWxzOiBbJ0V4dHJlbWVseSB3ZWxsJywgJ1NvbWV3aGF0IHdlbGwnLCAnTm90IHNvIHdlbGwnLCAnTm90IGF0IGFsbCddLFxyXG4gICAgZGF0YXNldHM6IFtcclxuICAgICAge1xyXG4gICAgICAgIGxhYmVsOiAnUGVyY2VudGFnZScsXHJcbiAgICAgICAgZGF0YTogW1xyXG4gICAgICAgICAgNi4zNyxcclxuICAgICAgICAgIDIxLjY2LFxyXG4gICAgICAgICAgNTguNjAsXHJcbiAgICAgICAgICAxMy4zOFxyXG4gICAgICAgIF0sXHJcbiAgICAgICAgYmFja2dyb3VuZENvbG9yOiBiYWNrZ3JvdW5kY29sb3JzY2FsZSxcclxuICAgICAgICAgICAgYm9yZGVyQ29sb3I6IGJvcmRlcmNvbG9yc2NhbGUsXHJcbiAgICAgICAgYm9yZGVyV2lkdGg6IDEsXHJcbiAgICAgIH0sXHJcbiAgICBdLFxyXG4gIH07XHJcbiAgY29uc3Qgb3B0aW9ucyA9IHtcclxuICAgIHJlc3BvbnNpdmU6IHRydWUsXHJcbiAgICBtYWludGFpbkFzcGVjdFJhdGlvOiBmYWxzZSxcclxuICAgICAgcGx1Z2luczogeyB0aXRsZToge1xyXG4gICAgICAgIGRpc3BsYXk6IHRydWUsXHJcbiAgICAgICAgdGV4dDogJ0hvdyB3ZWxsIGluZm9ybWVkIGFyZSB5b3UgYWJvdXQgQ3lzdGljIEZpYnJvc2lzPycsXHJcbiAgICAgIH0sXHJcbiAgICB9XHJcbiAgfTtcclxuXHJcbiAgcmV0dXJuIChcclxuICAgIDxkaXYgY2xhc3NOYW1lPVwicGllLWNoYXJ0LWNvbnRhaW5lci1vdGhlclwiPlxyXG4gICAgICA8UGllIGRhdGE9e2RhdGF9IG9wdGlvbnM9e29wdGlvbnN9IC8+XHJcbiAgICAgIDwvZGl2PlxyXG4gICk7XHJcbn07XHJcblxyXG5leHBvcnQgY29uc3QgV2hhdENvdWxkR2VuZVRoZXJhcHlNZWFuRm9yTWVkaWNpbmVQdWJsaWM6IFJlYWN0LkZDID0gKCkgPT4ge1xyXG4gIGNvbnN0IGRhdGEgPSB7XHJcbiAgICBsYWJlbHM6IFsnTWFqb3IgYWR2YW5jZXMgaW4gdGhlIHRyZWF0bWVudCBvZiBkaXNlYXNlcycsICdTb21lIHByb2dyZXNzLCBidXQgYWxzbyByaXNrcycsICdNb3JlIHJpc2tzIHRoYW4gYmVuZWZpdHMnLCAnTm8gb3BpbmlvbiddLFxyXG4gICAgZGF0YXNldHM6IFtcclxuICAgICAge1xyXG4gICAgICAgIGRhdGE6IFtcclxuICAgICAgICAgIDQ5LjU5LFxyXG4gICAgICAgICAgNDcuOTcsXHJcbiAgICAgICAgICAxLjYzLFxyXG4gICAgICAgICAgMC44MVxyXG4gICAgICAgIF0sXHJcbiAgICAgICAgYmFja2dyb3VuZENvbG9yOiBiYWNrZ3JvdW5kY29sb3JzY2FsZSxcclxuICAgICAgICAgICAgYm9yZGVyQ29sb3I6IGJvcmRlcmNvbG9yc2NhbGUsXHJcbiAgICAgICAgYm9yZGVyV2lkdGg6IDEsXHJcbiAgICAgIH0sXHJcbiAgICBdLFxyXG4gIH07XHJcbiAgY29uc3Qgb3B0aW9ucyA9IHtcclxuICAgIHJlc3BvbnNpdmU6IHRydWUsXHJcbiAgICBtYWludGFpbkFzcGVjdFJhdGlvOiBmYWxzZSxcclxuICAgIHBsdWdpbnM6IHt0aXRsZToge1xyXG4gICAgICBkaXNwbGF5OiB0cnVlLFxyXG4gICAgICB0ZXh0OiAnV2hhdCBkbyB5b3UgdGhpbmsgZ2VuZSB0aGVyYXB5IGNvdWxkIG1lYW4gZm9yIG1lZGljaW5lPycsXHJcbiAgICB9LH1cclxuICB9O1xyXG5cclxuICByZXR1cm4gKFxyXG4gICAgPGRpdiBjbGFzc05hbWU9XCJwaWUtY2hhcnQtY29udGFpbmVyLW90aGVyXCI+XHJcbiAgICAgIDxQaWUgZGF0YT17ZGF0YX0gb3B0aW9ucz17b3B0aW9uc30gLz5cclxuICAgICAgPC9kaXY+XHJcbiAgKTtcclxufTtcclxuXHJcblxyXG5leHBvcnQgY29uc3QgV2hhdE1lYXN1cmVzUHVibGljOiBSZWFjdC5GQyA9ICgpID0+IHtcclxuICBjb25zdCBsYWJlbHMgPSBbJ01lZGlhJywgJ1NjaG9vbHMgYW5kIENvbW11bml0aWVzJywgXCJEb2N0b3JzXCIsICdDaGFyaXRpZXMgYW5kIEZpbmRyYWlzZXJzJywgJ09ubGluZSBQbGF0Zm9ybXMgYW5kIEZvcnVtcycsICdDb29wZXJhdGlvbnMgd2l0aCBDb21wYW5pZXMnLCAnU2Nob29sIExlc3NvbnMnLCAnRG9jdW1lbnRhcmllcyBhbmQgU2hvcnQgRmlsbXMnXTtcclxuXHJcbiAgY29uc3QgZGF0YSA9IHtcclxuICAgICAgbGFiZWxzLFxyXG4gICAgICBkYXRhc2V0czogW1xyXG4gICAgICAgIHtcclxuICAgICAgICAgIGxhYmVsOiAnR2VuZXJhbCBTdXJ2ZXknLFxyXG4gICAgICAgICAgZGF0YTogW1xyXG4gICAgICAgICAgICAyMi44NyxcclxuICAgICAgICAgICAgMTMuMjAsXHJcbiAgICAgICAgICAgIDEzLjY5LFxyXG4gICAgICAgICAgICA3LjA5LFxyXG4gICAgICAgICAgICAxMi43MixcclxuICAgICAgICAgICAgNi42MCxcclxuICAgICAgICAgICAgOS44MixcclxuICAgICAgICAgICAgMTQuMDFcclxuICAgICAgICAgICAgXSxcclxuICAgICAgICAgICAgYmFja2dyb3VuZENvbG9yOiBiYWNrZ3JvdW5kY29sb3JzY2FsZSxcclxuICAgICAgICAgICAgYm9yZGVyQ29sb3I6IGJvcmRlcmNvbG9yc2NhbGUsXHJcbiAgICAgICAgfSxcclxuICAgICAgXSxcclxuICAgIH07XHJcbiAgY29uc3Qgb3B0aW9ucyA9IHtcclxuICAgICAgcmVzcG9uc2l2ZTogdHJ1ZSxcclxuICAgICAgcGx1Z2luczoge1xyXG4gICAgICAgIGxlZ2VuZDoge1xyXG4gICAgICAgICAgZGlzcGxheTogZmFsc2VcclxuICAgICAgICB9LFxyXG4gICAgICAgIHRpdGxlOiB7XHJcbiAgICAgICAgICBkaXNwbGF5OiB0cnVlLFxyXG4gICAgICAgICAgdGV4dDogJ1doYXQgbWVhc3VyZXMgZG8geW91IHRoaW5rIGNvdWxkIGJlIHRha2VuIHRvIHJhaXNlIGF3YXJlbmVzcyBvZiBDeXN0aWMgRmlicm9zaXM/JyxcclxuICAgICAgICB9LFxyXG4gICAgICB9LFxyXG4gICAgICBzY2FsZXM6IHtcclxuICAgICAgICB5OiB7XHJcbiAgICAgICAgICB0aXRsZToge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiB0cnVlLFxyXG4gICAgICAgICAgICB0ZXh0OiAnJScsIC8vIFRoaXMgaXMgdGhlIGxhYmVsIGZvciB0aGUgeS1heGlzXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgIH0sXHJcbiAgICAgIH0sXHJcbiAgICB9O1xyXG5cclxuICByZXR1cm4gKFxyXG4gICAgPGRpdiBjbGFzc05hbWU9XCJiYXItY2hhcnQtY29udGFpbmVyXCI+XHJcbiAgICAgIDxCYXIgb3B0aW9ucz17b3B0aW9uc30gZGF0YT17ZGF0YX0gLz5cclxuICAgICAgPC9kaXY+XHJcbiAgKTtcclxufTtcclxuXHJcblxyXG5leHBvcnQgY29uc3QgV291bGRZb3VEb0dlbmVUaGVyYXB5UHVibGljOiBSZWFjdC5GQyA9ICgpID0+IHtcclxuICBjb25zdCBkYXRhID0ge1xyXG4gICAgbGFiZWxzOiBbJ1llcycsICdObycsICdNYXliZSddLFxyXG4gICAgZGF0YXNldHM6IFtcclxuICAgICAge1xyXG4gICAgICAgIGxhYmVsOiAnR2VuZXJhbCBTdXJ2ZXknLFxyXG4gICAgICAgIGRhdGE6IFtcclxuICAgICAgICAgIDg1LjIyLFxyXG4gICAgICAgICAgMTMuMDQsXHJcbiAgICAgICAgICAxLjc0XHJcbiAgICAgICAgXSxcclxuICAgICAgICBiYWNrZ3JvdW5kQ29sb3I6IGJhY2tncm91bmRjb2xvcnNjYWxlLFxyXG4gICAgICAgICAgICBib3JkZXJDb2xvcjogYm9yZGVyY29sb3JzY2FsZSxcclxuICAgICAgICBib3JkZXJXaWR0aDogMSxcclxuICAgICAgfSxcclxuICAgIF0sXHJcbiAgfTtcclxuICBjb25zdCBvcHRpb25zID0ge1xyXG4gICAgcmVzcG9uc2l2ZTogdHJ1ZSxcclxuICAgIG1haW50YWluQXNwZWN0UmF0aW86IGZhbHNlLFxyXG4gICAgcGx1Z2luczoge1xyXG4gICAgICB0aXRsZToge1xyXG4gICAgICAgIGRpc3BsYXk6IHRydWUsXHJcbiAgICAgICAgdGV4dDogJ1dvdWxkIHlvdSBvcHQgZm9yIGdlbmUgdGhlcmFweSB5b3Vyc2VsZj8nLFxyXG4gICAgICB9LFxyXG4gICAgfVxyXG4gIH07XHJcblxyXG4gIHJldHVybiAoXHJcbiAgICA8ZGl2IGNsYXNzTmFtZT1cInBpZS1jaGFydC1jb250YWluZXItb3RoZXJcIj5cclxuICAgICAgPFBpZSBkYXRhPXtkYXRhfSBvcHRpb25zPXtvcHRpb25zfSAvPlxyXG4gICAgICA8L2Rpdj5cclxuICApO1xyXG59O1xyXG5cclxuXHJcbmV4cG9ydCBjb25zdCBXaGF0Q29jZXJuc0Fib3V0R2VuZVRoZXJhcHlQdWJsaWM6IFJlYWN0LkZDID0gKCkgPT4ge1xyXG4gIGNvbnN0IGxhYmVscyA9IFsnTm8gY29uY2VybnMnLCAnRXRoaWNhbCBxdWVzdGlvbnMnLCAnTG9uZy10ZXJtIGVmZmVjdHMnLCAnU2FmZXR5IGFuZCBzaWRlIGVmZmVjdHMnLCAnQ29zdCBhbmQgYWNjZXNzaWJpbGl0eSddO1xyXG5cclxuICBjb25zdCBkYXRhID0ge1xyXG4gICAgICBsYWJlbHMsXHJcbiAgICAgIGRhdGFzZXRzOiBbXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgbGFiZWw6ICdHZW5lcmFsIFN1cnZleScsXHJcbiAgICAgICAgICBkYXRhOiBbXHJcbiAgICAgICAgICAgIDQuNTcsXHJcbiAgICAgICAgICAgIDE0LjYxLFxyXG4gICAgICAgICAgICAyNy44NSxcclxuICAgICAgICAgICAgMjguNzcsXHJcbiAgICAgICAgICAgIDI0LjIwXHJcbiAgICAgICAgICAgIF0sXHJcbiAgICAgICAgICAgIGJhY2tncm91bmRDb2xvcjogYmFja2dyb3VuZGNvbG9yc2NhbGUsXHJcbiAgICAgICAgICAgIGJvcmRlckNvbG9yOiBib3JkZXJjb2xvcnNjYWxlLFxyXG4gICAgICAgIH0sXHJcbiAgICAgIF0sXHJcbiAgICB9O1xyXG4gIGNvbnN0IG9wdGlvbnMgPSB7XHJcbiAgICAgIHJlc3BvbnNpdmU6IHRydWUsXHJcbiAgICAgIHBsdWdpbnM6IHtcclxuICAgICAgICBsZWdlbmQ6IHtcclxuICAgICAgICAgIGRpc3BsYXk6IGZhbHNlXHJcbiAgICAgICAgfSxcclxuICAgICAgICB0aXRsZToge1xyXG4gICAgICAgICAgZGlzcGxheTogdHJ1ZSxcclxuICAgICAgICAgIHRleHQ6ICdXaGF0IGNvbmNlcm5zIGRvIHlvdSBoYXZlIGFib3V0IGdlbmUgdGhlcmFweT8nLFxyXG4gICAgICAgIH0sXHJcbiAgICAgIH0sXHJcbiAgICAgIHNjYWxlczoge1xyXG4gICAgICAgIHk6IHtcclxuICAgICAgICAgIHRpdGxlOiB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IHRydWUsXHJcbiAgICAgICAgICAgIHRleHQ6ICclJywgLy8gVGhpcyBpcyB0aGUgbGFiZWwgZm9yIHRoZSB5LWF4aXNcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgfSxcclxuICAgICAgfSxcclxuICAgIH07XHJcblxyXG4gIHJldHVybiAoXHJcbiAgICA8ZGl2IGNsYXNzTmFtZT1cImJhci1jaGFydC1jb250YWluZXJcIj5cclxuICAgICAgPEJhciBvcHRpb25zPXtvcHRpb25zfSBkYXRhPXtkYXRhfSAvPlxyXG4gICAgICA8L2Rpdj5cclxuICApO1xyXG59O1xyXG5cclxuZXhwb3J0IGNvbnN0IFdoYXRGb3JtTW9yZUluZm9QdWJsaWM6IFJlYWN0LkZDID0gKCkgPT4ge1xyXG4gIGNvbnN0IGxhYmVscyA9IFsnSW5mb3JtYXRpb25zIGJyb2NodXJlcycsICdXZWJzaXRlcyBhbmQgb25saW5lIHJlc291cmNlcycsICdUViBkb2N1bWVudGFyaWVzIGFuZCBwcm9ncmFtcycsICdMZWN0dXJlcyBhbmQgc2VtaW5hcnMnLCAnU2Nob29sIGFuZCB1bml2ZXJzaXR5IGNvdXJzZXMgJywgJ0NvbnN1bHRhdGlvbnMgd2l0aCBkb2N0b3JzIGFuZCBzcGVjaWFsaXN0cycsICdTb2NpYWwgbWVkaWEgYW5kIG9ubGluZSBjb21tdW5pdGllcycsICdPdGhlciddO1xyXG5cclxuICBjb25zdCBkYXRhID0ge1xyXG4gICAgICBsYWJlbHMsXHJcbiAgICAgIGRhdGFzZXRzOiBbXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgbGFiZWw6ICdHZW5lcmFsIFN1cnZleScsXHJcbiAgICAgICAgICBkYXRhOiBbXHJcbiAgICAgICAgICAgIDE1Ljc0LFxyXG4gICAgICAgICAgICAxNi42MyxcclxuICAgICAgICAgICAgMjIuNjIsXHJcbiAgICAgICAgICAgIDEuNzcsXHJcbiAgICAgICAgICAgIDEzLjMwLFxyXG4gICAgICAgICAgICAxMy45NyxcclxuICAgICAgICAgICAgMTUuOTYsXHJcbiAgICAgICAgICAgIDBcclxuICAgICAgICAgICAgXSxcclxuICAgICAgICAgICAgYmFja2dyb3VuZENvbG9yOiBiYWNrZ3JvdW5kY29sb3JzY2FsZSxcclxuICAgICAgICAgICAgYm9yZGVyQ29sb3I6IGJvcmRlcmNvbG9yc2NhbGUsXHJcbiAgICAgICAgfSxcclxuICAgICAgXSxcclxuICAgIH07XHJcbiAgY29uc3Qgb3B0aW9ucyA9IHtcclxuICAgICAgcmVzcG9uc2l2ZTogdHJ1ZSxcclxuICAgICAgcGx1Z2luczoge1xyXG4gICAgICAgIGxlZ2VuZDoge1xyXG4gICAgICAgICAgZGlzcGxheTogZmFsc2VcclxuICAgICAgICB9LFxyXG4gICAgICAgIHRpdGxlOiB7XHJcbiAgICAgICAgICBkaXNwbGF5OiB0cnVlLFxyXG4gICAgICAgICAgdGV4dDogJ0luIHdoYXQgZm9ybSB3b3VsZCB5b3UgbGlrZSB0byBzZWUgbW9yZSBpbmZvcm1hdGlvbj8nLFxyXG4gICAgICAgIH0sXHJcbiAgICAgIH0sXHJcbiAgICAgIHNjYWxlczoge1xyXG4gICAgICAgIHk6IHtcclxuICAgICAgICAgIHRpdGxlOiB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IHRydWUsXHJcbiAgICAgICAgICAgIHRleHQ6ICclJywgLy8gVGhpcyBpcyB0aGUgbGFiZWwgZm9yIHRoZSB5LWF4aXNcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgfSxcclxuICAgICAgfSxcclxuICAgIH07XHJcblxyXG4gIHJldHVybiAoXHJcbiAgICA8ZGl2IGNsYXNzTmFtZT1cImJhci1jaGFydC1jb250YWluZXJcIj5cclxuICAgICAgPEJhciBvcHRpb25zPXtvcHRpb25zfSBkYXRhPXtkYXRhfSAvPlxyXG4gICAgICA8L2Rpdj5cclxuICApO1xyXG59O1xyXG5cclxuZXhwb3J0IGRlZmF1bHQgUGllQ2hhcnQ7XHJcbiIsICJpbXBvcnQgeyBTdXBTY3JvbGxMaW5rIH0gZnJvbSBcIi4uL2NvbXBvbmVudHMvU2Nyb2xsTGlua1wiO1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBTeW1wdG9tRGF0ZW5zYXR6IHsgXHJcbiAgICBuYW1lOiBzdHJpbmc7ICBcclxuICAgIHBpY3R1cmU6IHN0cmluZzsgXHJcbiAgICBpbnRyb2R1Y3Rpb246IEFycmF5PHN0cmluZz4gfCBBcnJheTxSZWFjdC5SZWFjdE5vZGU+O1xyXG59XHJcblxyXG4vL0JpbGRlcitRdWVsbGVuIG1cdTAwRkNzc2VuIG5vY2ggYW5nZXBhc3N0IHdlcmRlblxyXG4vL2RhIGtvbW1lbiBqZXR6dCBmb2xnZW5kZSBPcmdhbmU6IFBhbmNyZWFzLCBJbnRlc3RpbmVzLCBMaXZlciwgU2V4dWFsIGdsYW5kcywgTHVuZ3MsIFNrZWxldGFsIFN5c3RlbSwgU2tpbiwgTm9zZSwgQnJhaW4vTWVudGFsIEhlYWx0aCBcclxuZXhwb3J0IGNvbnN0IHN5bXB0b21kYXRhOiAoQXJyYXk8U3ltcHRvbURhdGVuc2F0ej4pICA9IFtcclxuICAgIHtcclxuICAgICAgICBuYW1lOiBcIlBhbmNyZWFzXCIsXHJcbiAgICAgICAgcGljdHVyZTogXCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9zY2llbnRpZmljLWZpZ3VyZXMvcGFuY3JlYXMuc3ZnXCIsXHJcbiAgICAgICAgaW50cm9kdWN0aW9uOiBbPD5Mb2NhdGVkIGJlaGluZCB0aGUgc3RvbWFjaCBpbiB0aGUgYmFjayBhYmRvbWluYWwgY2F2aXR5IDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiNzRcIi8+PC8+LDw+UmVzcG9uc2libGUgZm9yIG5ldXRyYWxpemluZyBzdG9tYWNoIGFjaWQsIHByb2R1Y3Rpb24gb2YgaG9ybW9uZXMgKGxpa2UgSW5zdWxpbikgYW5kIGRpZ2VzdGlvbiBlbnp5bWVzIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiNzRcIi8+PC8+LDw+Q2xvZ2dpbmcgY2F1c2VkIGJ5IENGLCBzbyB0aGF0IHByb2R1Y3RzIG9mIHRoZSBwYW5jcmVhdGljIGdsYW5kIGNhbiBub3QgYmUgZGlzdHJpYnV0ZWQgPFN1cFNjcm9sbExpbmsgbGFiZWw9XCI3NVwiLz48Lz4sPD5QYW5jcmVhdGljIGluc3VmZmljaWVuY3kgZHVlIHRvIENGIGNhbiBsZWFkIHRvIG1hbG51dHJpdGlvbiA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjc2XCIvPiwgZGlnZXN0aXZlIHByb2JsZW1zIGFuZCBhYmRvbWluYWwgcGFpbiA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjc3XCIvPiwgQ0YtYXNzb2NpYXRlZCBkaWFiZXRlcyA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjc4XCIvPjwvPiw8PlRyZWF0bWVudCBvcHRpb25zIGluY2x1ZGUgbnV0cml0aW9uYWwgdGhlcmFweSBhbmQgc3VwcGxlbWVudGF0aW9uIG9mIHBhbmNyZWF0aWMgZW56eW1lcyA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjc5XCIvPjwvPl1cclxuICAgIH0sXHJcbiAgICB7IFxyXG4gICAgICAgIG5hbWU6IFwiSW50ZXN0aW5lc1wiLCBcclxuICAgICAgICBwaWN0dXJlOiBcImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3NjaWVudGlmaWMtZmlndXJlcy9sYXJnZWludGVzdGluZS5zdmdcIixcclxuICAgICAgICBpbnRyb2R1Y3Rpb246IFs8PkxvY2F0ZWQgaW4gdGhlIGFiZG9taW5hbCBjYXZpdHkgYW5kIGV4dGVuZHMgZnJvbSB0aGUgc3RvbWFjaCB0byB0aGUgYW51czwvPiw8PlJlc3BvbnNpYmxlIGZvciBudXRyaWVudCBhYnNvcnB0aW9uLCB3YXRlciByZWFic29ycHRpb24sIGFuZCB3YXN0ZSBlbGltaW5hdGlvbiA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjgwXCIvPjwvPiw8PkNGIGNhbiBjYXVzZSBibG9ja2luZyBvZiB0aGUgaW50ZXN0aW5lcywgcHJldmVudGluZyB0aGUgbm9ybWFsIG1vdmVtZW50IG9mIGZvb2QgYW5kIGFic29ycHRpb24gb2YgbnV0cmllbnRzIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiODFcIi8+PC8+LDw+SW50ZXN0aW5hbCBibG9ja2FnZSBkdWUgdG8gQ0YgY2FuIGxlYWQgdG8gbWFsYWJzb3JwdGlvbiBvZiBudXRyaWVudHMsIGFuZCBjb25kaXRpb25zIGxpa2UgbWVjb25pdW0gaWxldXMgaW4gbmV3Ym9ybnMgb3IgZGlzdGFsIGludGVzdGluYWwgb2JzdHJ1Y3Rpb24gc3luZHJvbWUgKERJT1MpIGluIGFkdWx0cyA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjgxXCIvPjwvPiw8PlRyZWF0bWVudCBvcHRpb25zIGluY2x1ZGUgdGhlIHVzZSBvZiBsYXhhdGl2ZXMsIGVuenltZSBzdXBwbGVtZW50YXRpb24sIGZlZWRpbmcgdHViZXMsIGFuZCBpbiBzZXZlcmUgY2FzZXMsIHN1cmdpY2FsIGludGVydmVudGlvbiBvciBpbnRlc3RpbmFsIHRyYW5zcGxhbnRhdGlvbiA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjgxXCIvPjwvPl1cclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgICAgbmFtZTogXCJMaXZlclwiLCBcclxuICAgICAgICBwaWN0dXJlOiBcImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3NjaWVudGlmaWMtZmlndXJlcy9saXZlci5zdmdcIixcclxuICAgICAgICBpbnRyb2R1Y3Rpb246IFs8PkxvY2F0ZWQgZGlyZWN0bHkgYmVsb3cgdGhlIGRpYXBocmFnbSBuZWFyIHRoZSBwYW5jcmVhdGljIGdsYW5kIGFuZCBzdG9tYWNoIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiODJcIi8+PC8+LDw+UmVzcG9uc2libGUgZm9yIGRldG94aWZpY2F0aW9uLCBiaWxlIHByb2R1Y3Rpb24gZm9yIGVuaGFuY2VtZW50IG9mIGRpZ2VzdGlvbiwgcHJvdGVpbiBzeW50aGVzaXMgZm9yIGJsb29kIGNsb3R0aW5nIGFuZCBpbW11bmUgZnVuY3Rpb25zLCBudXRyaWVudCBwcm9jZXNzaW5nIGFuZCBzdG9yYWdlIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiODJcIi8+PC8+LDw+Q0YgYWZmZWN0cyB0aGUgbm9ybWFsIHNlY3JldGlvbiBhbmQgZnVuY3Rpb24gb2YgYmlsZS0gaXQgYmVjb21lcyBzdGlja2llciA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjgzXCIvPjwvPiw8PlN5bXB0b21zIGNhdXNlZCBieSBDRiBpbmNsdWRlIGJydWlzaW5nLCBub3NlIGJsZWVkcywgSW5mbGFtbWF0aW9uLCBtb3JlIGZyZXF1ZW50IGNoZXN0IGluZmVjdGlvbnMsIGxvdyBib2R5IHdlaWdodCwgbGl2ZXIgY2lycmhvc2lzLCBsZXRoYXJneSA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjgzXCIvPjwvPiw8PlRyZWF0bWVudCBvcHRpb25zIGluY2x1ZGUgbnV0cml0aW9uYWwgdGhlcmFweSwgbW9kdWxhdG9ycywgVURDQSwgbGl2ZXIgdHJhbnNwbGFudGF0aW9uIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiODRcIi8+PC8+XVxyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgICBuYW1lOiBcIlNleHVhbCBnbGFuZHNcIixcclxuICAgICAgICBwaWN0dXJlOiBcImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3NjaWVudGlmaWMtZmlndXJlcy9nbGFuZHMuc3ZnXCIsXHJcbiAgICAgICAgaW50cm9kdWN0aW9uOiBbPD5Mb2NhdGVkIGluIHBlbHZpYyBhcmVhIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiODVcIi8+PC8+LDw+UmVzcG9uc2libGUgZm9yIHByb2R1Y3Rpb24gb2Ygc3Blcm0gKG1hbGUpLyBwcm9kdWN0aW9uIG9mIG9vY3l0ZXMgYW5kIGFzIHNpdGUgZm9yIGVtYnJ5byBkZXZlbG9wbWVudCAoZmVtYWxlKSA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjg2XCIvPjwvPiw8PkNGIGNhdXNlcyB0aGljayBtdWN1cyB0byBibG9jayByZXByb2R1Y3RpdmUgZHVjdHMgKGJvdGgpLCBhZmZlY3RzIHNwZXJtIHRyYW5zcG9ydCAobWFsZSkgPFN1cFNjcm9sbExpbmsgbGFiZWw9XCI4N1wiLz4gYW5kIGNlcnZpY2FsIG11Y3VzIGRlbnNpdHkgKGZlbWFsZSkgPFN1cFNjcm9sbExpbmsgbGFiZWw9XCI4OFwiLz48Lz4sPD5UaGlzIGNhbiBsZWFkIGluIGNvbnRleHQgb2YgQ0YgdG8gcmVkdWNlZCBmZXJ0aWxpdHkgb3IgZXZlbiBpbmZlcnRpbGl0eSA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjg3XCIvPjxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiODhcIi8+PC8+LDw+IDxpPiBJbiB2aXRybyA8L2k+IGZlcnRpbGl6YXRpb24gY2FuIGJlIGFuIG9wdGlvbiBmb3IgQ0YgcGF0aWVudHMgPFN1cFNjcm9sbExpbmsgbGFiZWw9XCI4OVwiLz4gPC8+XVxyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgICBuYW1lOiBcIkx1bmdzXCIsIFxyXG4gICAgICAgIHBpY3R1cmU6IFwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvc2NpZW50aWZpYy1maWd1cmVzL2x1bmdzLnN2Z1wiLFxyXG4gICAgICAgIGludHJvZHVjdGlvbjogWzw+TG9jYXRlZCBpbiB0aGUgcmliY2FnZSA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjkwXCIvPjwvPiw8PlJlc3BvbnNpYmxlIGZvciBicmVhdGhpbmcgXHUyMDEzIGFzcGlyYXRpb24gb2YgbGlmZS1naXZpbmcgb3h5Z2VuIGFuZCBkZXBvc2l0aW9uIG9mIGNhcmJvbmRpb3hpZGUgPFN1cFNjcm9sbExpbmsgbGFiZWw9XCI5MFwiLz48Lz4sPD5DRiBjYXVzZXMgdGhlIHRoaWNrZW5pbmcgb2YgbXVjdXMgb24gdG9wIG9mIHRoZSByZXNwaXJhdG9yeSBlcGl0aGVsaXVtLCBzZXJ2aW5nIGFzIG51dHJpdGlvbiBncm91bmQgYXMgZm9yIHBhdGhvZ2VucyBhbmQgaW1wYWlyaW5nIHRoZSBtb3ZlbWVudCBvZiBjaWxpYSBzbyB0aGF0IHRoZSBtdWN1cyBjYW4gbm90IGJlIGNhcnQgYXdheSBbMThdPC8+LDw+U3ltcHRvbXMgY2F1c2VkIGJ5IENGIGluY2x1ZGUgc2hvcnRuZXNzIG9mIGJyZWF0aCwgcGVyc2lzdGVudCBjb3VnaCBbMTldLCBsdW5nIGluZmVjdGlvbnMgKG1haW5seSBjYXVzZWQgYnkgPGk+IFBzZXVkb21vbmFzIGFlcnVnaW5vc2EgPC9pPiwgPGk+IFN0YXBoeWxvY29jY3VzIGF1cmV1cyA8L2k+IGFuZCA8aT4gQnVya2hvbGRlcmlhIGNlcGFjaWEgPC9pPikgWzIwXSwgYnJvbmNoaWVjdGFzaXMgWzIxXSA8Lz4sPD5UcmVhdG1lbnQgb3B0aW9ucyBpbmNsdWRlIHJlc3BpcmF0b3J5IHBoeXNpb3RoZXJhcHkgKGUuZy4gYnJvbmNoaW9kaWxhdG9ycyksIHNwb3J0cywgaW5oYWxhdGlvbiwgYW50aWJpb3RpY3MgYWdhaW5zdCBwYXRob2dlbnMsIGx1bmcgdHJhbnNwbGFudGF0aW9uIFsyMl08Lz5dXHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICAgIG5hbWU6IFwiU2tlbGV0YWwgU3lzdGVtXCIsXHJcbiAgICAgICAgcGljdHVyZTogXCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9zY2llbnRpZmljLWZpZ3VyZXMvYm9uZXMuc3ZnXCIsXHJcbiAgICAgICAgaW50cm9kdWN0aW9uOiBbPD5Mb2NhdGVkIHRocm91Z2hvdXQgdGhlIGVudGlyZSBib2R5PC8+LDw+UmVzcG9uc2libGUgZm9yIHN0cnVjdHVyYXRpb24gb2YgdGhlIGJvZHksIHByb3RlY3Rpb24gb2Ygb3JnYW5zLCBtaW5lcmFsIHN0b3JhZ2UsIGJsb29kIGNlbGwgcHJvZHVjdGlvbiBbMjNdPC8+LDw+Q0YgYWZmZWN0cyB0aGUgc2tlbGV0YWwgc3lzdGVtIGJ5IHJlZHVjaW5nIGJvbmUgbWluZXJhbCBkZW5zaXR5IFsyNF08Lz4sPD5UaGlzIGNhbiBsZWFkIGluIGNvbnRleHQgb2YgQ0YgdG8gb3N0ZW9wb3Jvc2lzLCBzcGluYWwgZnJhY3R1cmVzLCBreXBob3Npcywgc2NvbGlvc2lzIFsyNF08Lz4sPD5UcmVhdG1lbnQgb3B0aW9ucyBpbmNsdWRlIHVwdGFrZSBvZiBiaW9waG9zcGhvbmF0ZXMgdG8gaW5jcmVhc2UgYm9uZSBkZW5zaXR5LCB2aXRhbWluIEQgZm9yIG1haW50ZW5hbmNlIG9mIGNhbGNpdW0gbGV2ZWxzIG5lZWRlZCBmb3IgbWluZXJhbGl6YXRpb24gWzI0XTwvPl1cclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgICAgbmFtZTogXCJTa2luXCIsXHJcbiAgICAgICAgcGljdHVyZTogXCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9zY2llbnRpZmljLWZpZ3VyZXMvc2tpbi5zdmdcIixcclxuICAgICAgICBpbnRyb2R1Y3Rpb246IFs8PkxvY2F0ZWQgb24gdGhlIHN1cmZhY2Ugb2YgdGhlIGVudGlyZSBib2R5PC8+LDw+UmVzcG9uc2libGUgZm9yIGJhcnJpZXIgZnVuY3Rpb24sIGltbXVub2xvZ2ljYWwgZGVmZW5zZSwgcmVndWxhdGlvbiBvZiBob21lb3N0YXNpcywgc2Vuc29yeSBmdW5jdGlvbnMgWzI1XTwvPiw8PkNGIGFmZmVjdHMgQ0ZUUiBjaGFubmVscyBvZiBzd2VhdCBnbGFuZHMsIHdoaWNoIGxlYWRzIHRvIHNhbHQgZGVwb3NpdHMgb24gdGhlIHNraW4gWzI2XTwvPiw8PlRoaXMgY2FuIGxlYWQgaW4gY29udGV4dCBvZiBDRiB0byBza2luIGlycml0YXRpb24gKHJhc2ggb3IgZGVybWF0aXRpcykgWzI2XTwvPiw8PlByZXZlbnRpb24gdmlhIGRyaW5raW5nIGEgbG90IGFuZCBhIHJhdGhlciBzYWx0eSBkaWV0IHBvc3NpYmxlIFsyN108Lz5dXHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICAgIG5hbWU6IFwiTm9zZVwiLFxyXG4gICAgICAgIHBpY3R1cmU6IFwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvc2NpZW50aWZpYy1maWd1cmVzL25vc2Uuc3ZnXCIsXHJcbiAgICAgICAgaW50cm9kdWN0aW9uOiBbPD48Lz4sPD5SZXNwb25zaWJsZSBmb3Igc21lbGwgcGVyY2VwdGlvbiwgYnJlYXRoaW5nLCBmaWx0cmF0aW9uIGFuZCBjbGVhbmluZywgYW5kIHNlcnZpbmcgYXMgYSByZXNvbmFuY2UgY2hhbWJlciBmb3IgdGhlIHZvaWNlIFsyOF08Lz4sPD5DRiBhZmZlY3RzIHRoaWNrbmVzcyBvZiBuYXNhbCBzZWNyZXRpb25zLCB3aGljaCBjYW5ub3QgZHJhaW4gd2VsbCBbMjZdPC8+LDw+VGhpcyBjYW4gbGVhZCBpbiBjb250ZXh0IG9mIENGIHRvIG5hc2FsIGNvbmdlc3Rpb24sIHByZXNzdXJlIGhlYWRhY2hlcywgc2ludXNpdGlzLCBpbmZsYW1tYXRpb24gb2YgbmFzYWwgcG9seXBzIFsyNl08Lz4sPD5UaGVyYXB5IHJhbmdlcyBmcm9tIG5hc2FsIHNwcmF5cyB0byBzdXJnaWNhbCByZW1vdmFsIG9mIG5hc2FsIHBvbHlwcyBbMjZdPC8+XVxyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgICBuYW1lOiBcIkJyYWluXCIsXHJcbiAgICAgICAgcGljdHVyZTogXCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9zY2llbnRpZmljLWZpZ3VyZXMvYnJhaW4uc3ZnXCIsXHJcbiAgICAgICAgaW50cm9kdWN0aW9uOiBbPD5Mb2NhdGVkIGluc2lkZSB0aGUgc2t1bGw8Lz4sPD5SZXNwb25zaWJsZSBmb3IgY29nbml0aXZlIGZ1bmN0aW9ucywgbW92ZW1lbnQgY29vcmRpbmF0aW9uLCBhbmQgY29udHJvbCBvZiB2aXRhbCBmdW5jdGlvbnMgWzI5XTwvPiw8PkNGIGFmZmVjdHMgbWVudGFsIGhlYWx0aCBkdWUgdG8gcHN5Y2hvbG9naWNhbCBzdHJlc3MgYW5kIHNvY2lhbCBpc29sYXRpb24gWzMwXTwvPiw8PlRoaXMgY2FuIGxlYWQgaW4gY29udGV4dCBvZiBDRiB0byBwaHlzaWNhbCBpbGxuZXNzZXMgbGlrZSBkZXByZXNzaW9uIGFuZCBhbnhpZXR5IGRpc29yZGVycyBbMzBdPC8+LDw+VHJlYXRtZW50IG9wdGlvbnMgaW5jbHVkZSBwc3ljaG90aGVyYXB5LCBhbnRpZGVwcmVzc2FudHMsIHN1cHBvcnQgZ3JvdXBzIGFuZCBzcG9ydHMgWzMxXTwvPl1cclxuICAgIH1cclxuXSIsICJpbXBvcnQgeyBTdXBTY3JvbGxMaW5rIH0gZnJvbSBcIi4uL2NvbXBvbmVudHMvU2Nyb2xsTGlua1wiO1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBEcnVnRGF0ZW5zYXR6IHtcclxuICAgIG5hbWU6IHN0cmluZzsgIFxyXG4gICAgcGljdHVyZTogc3RyaW5nOyBcclxuICAgIGludHJvZHVjdGlvbjogc3RyaW5nIHwgUmVhY3QuUmVhY3ROb2RlO1xyXG4gICAgZXhhbXBsZXM6IEFycmF5PGV4YW1wbGU+OyBcclxuXHJcblxyXG59XHJcblxyXG5cclxuaW50ZXJmYWNlIGV4YW1wbGV7XHJcbiAgICB0aXRsZTogc3RyaW5nLFxyXG4gICAgdGV4dDogQXJyYXk8c3RyaW5nPiB8IEFycmF5PFJlYWN0LlJlYWN0Tm9kZT47IFxyXG59XHJcbiBcclxuZXhwb3J0IGNvbnN0IGRydWdkYXRhOiAoQXJyYXk8RHJ1Z0RhdGVuc2F0ej4pICA9IFtcclxuLy8gICAge1xyXG4vLyAgICAgICAgbmFtZTogXCJBYm91dFwiLFxyXG4vLyAgICAgICAgcGljdHVyZTogXCIuLi5cIixcclxuLy8gICAgICAgIGludHJvZHVjdGlvbjogXCJcIixcclxuLy8gICAgICAgIGV4YW1wbGVzOiBbXHJcbi8vICAgICAgICAgICAge1xyXG4vLyAgICAgICAgICAgICAgICB0aXRsZTogXCJcIixcclxuLy8gICAgICAgICAgICAgICAgdGV4dDogW1wiXCJdXHJcbi8vICAgICAgICAgICAgfSxcclxuLy8gICAgICAgICAgICB7XHJcbi8vICAgICAgICAgICAgICAgIHRpdGxlOiBcIlwiLFxyXG4vLyAgICAgICAgICAgICAgICB0ZXh0OiBbXCJzdHJpbmdcIl1cclxuLy8gICAgICAgICAgICB9LFxyXG4vLyAgICAgICAgXVxyXG4vLyAgICB9LFxyXG4gICAge1xyXG4gICAgICAgIC8vZ2lidCA0IE1vZHVsYXRvciBCZWlzcGllbGVcclxuICAgICAgICBuYW1lOiBcIk1vZHVsYXRvcnNcIixcclxuICAgICAgICBwaWN0dXJlOiBcImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3NjaWVudGlmaWMtZmlndXJlcy9tb2R1bGF0b3JzLnN2Z1wiLFxyXG4gICAgICAgIGludHJvZHVjdGlvbjogPD5DRlRSIG1vZHVsYXRvcnMgcmVwcmVzZW50IGEgc2lnbmlmaWNhbnQgYWR2YW5jZW1lbnQgaW4gQ0YgdHJlYXRtZW50IHNpbmNlIHRoZXkgYXJlIHNtYWxsIG1vbGVjdWxlcyBpbXByb3ZpbmcgdGhlIGZ1bmN0aW9uIG9mIHRoZSBkZWZlY3RpdmUgQ0ZUUiBwcm90ZWluIGluIGEgbXV0YXRpb24tc3BlY2lmaWMgd2F5LCB3aGljaCBoZWxwcyByZXN0b3JlIGNobG9yaWRlIGlvbiB0cmFuc3BvcnQgYWNyb3NzIGNlbGwgbWVtYnJhbmVzLiBOb3RhYmxlIHBoYXJtYWNldXRpY2FsIGFnZW50cyBpbmNsdWRlIFRyaWthZnRhXHUwMEFFLCBTeW1kZWtvXHUwMEFFLCBPcmthbWJpXHUwMEFFIGFuZCBLYWx5ZGVjb1x1MDBBRSA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjc0XCIvPi4gVGhlc2UgbWVkaWNhdGlvbnMgaGF2ZSBiZWVuIGRlbW9uc3RyYXRlZCB0byBzaWduaWZpY2FudGx5IGltcHJvdmUgbHVuZyBmdW5jdGlvbiBhbmQgcmVkdWNlIHB1bG1vbmFyeSBleGFjZXJiYXRpb25zLiBIb3dldmVyLCB0aGV5IGFyZSBleHBlbnNpdmUgYW5kIG1heSBjYXVzZSBzaWRlIGVmZmVjdHMgc3VjaCBhcyBsaXZlciBlbnp5bWUgZWxldmF0aW9ucyBhbmQgY2F0YXJhY3RzIGluIHBlZGlhdHJpYyBwYXRpZW50cyA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjc1XCIvPi4gRnVydGhlcm1vcmUsIHRoZXkgYXJlIG5vdCBzdWl0YWJsZSBmb3IgYWxsIENGIHBhdGllbnRzIHNpbmNlIG9ubHkgbXV0YXRpb25zIHdoaWNoIHByb2R1Y2UgYSBDRlRSIGNoYW5uZWwgY2FuIGJlIHN1cHBvcnRlZCBieSBDRlRSIG1vZHVsYXRvcnMsIG5vdCB0aG9zZSBtdXRhdGlvbnMgd2hpY2ggbGVhZCB0byBhIG1pc3NpbmcgQ0ZUUiBjaGFubmVsIChrbm9jayBvdXQpIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiNzRcIi8+LCBlLmcuIHN0b3AtbXV0YXRpb25zIGluY2x1ZGluZyBwLkFyZzU1M1RlciBvciBwLkdseTU0MlRlcjxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiNzZcIi8+LiA8Lz4sXHJcbiAgICAgICAgZXhhbXBsZXM6IFtcclxuICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgdGl0bGU6IFwiVHJpa2FmdGFcIiwgLy9xdWVsbGUgNFxyXG4gICAgICAgICAgICAgICAgdGV4dDogWzw+QWN0aXZlIGluZ3JlZGllbnQocyk6IENvbWJpbmF0aW9uIG9mIGVsZXhhY2FmdG9yL3RlemFjYWZ0b3IvaXZhY2FmdG9yXCIsXCJJbmRpY2F0aW9uczogRm9yIENGIHBhdGllbnRzIGFnZWQgMiB5ZWFycyBhbmQgb2xkZXIgd2l0aCBhdCBsZWFzdCBvbmUgRjUwOGRlbCBtdXRhdGlvbiA9IDg1ICUgb2YgQ0YgcGF0aWVudHNcIixcIk1lY2hhbmlzbTogRWxleGFjYWZ0b3IgYW5kIHRlemFjYWZ0b3IgYWN0IGFzIGNvcnJlY3RvcnMgb24gbWlzZm9sZGVkIENGVFIgYW5kIHBlcm1pdCBkZWxpdmVyeSB0byB0aGUgY2VsbCBzdXJmYWNlLCB0aGVyZWJ5IGltcHJvdmluZyB0aGUgY2hhbm5lbCBkZW5zaXR5IGF0IHRoZSBwbGFzbWEgbWVtYnJhbmUsIHdoaWxlIGl2YWNhZnRvciBhcyBhIHBvdGVudGlhdG9yIGFjdHMgb24gQ0ZUUiBjaGFubmVscyB0aGF0IGhhdmUgcmVhY2hlZCB0aGUgY2VsbCBzdXJmYWNlIGFuZCBpbmNyZWFzZSB0aGUgZ2F0aW5nIGFuZCBjb25kdWN0YW5jZSBvZiBpb25zIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiNzdcIi8+XCIsXCJBZG1pbmlzdHJhdGlvbjogT3JhbCB0YWJsZXRzPC8+LFwiQXBwcm92YWw6IEFwcHJvdmVkIGJ5IHRoZSBFTUEgaW4gMjAyMCBcIl1cclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgdGl0bGU6IFwiU3ltZGVrb1wiLCAvL3F1ZWxsZSAxXHJcbiAgICAgICAgICAgICAgICB0ZXh0OiBbXCJBY3RpdmUgaW5ncmVkaWVudChzKTogQ29tYmluYXRpb24gb2YgdGV6YWNhZnRvciBhbmQgaXZhY2FmdG9yXCIsXCJJbmRpY2F0aW9uczogRm9yIENGIHBhdGllbnRzIGFnZWQgNiB5ZWFycyBhbmQgb2xkZXIgd2l0aCBzcGVjaWZpYyBtdXRhdGlvbnMgaW4gY29tYmluYXRpb24gd2l0aCBGNTA4ZGVsIG9yIHdpdGggdHdvIGNvcGllcyBvZiBGNTA4ZGVsIG11dGF0aW9uXCIsIDw+TWVjaGFuaXNtOiBUZXphY2FmdG9yIGFjdHMgYXMgYSBjb3JyZWN0b3Igb24gbWlzZm9sZGVkIENGVFIgYW5kIHBlcm1pdCBkZWxpdmVyeSB0byB0aGUgY2VsbCBzdXJmYWNlLCB0aGVyZWJ5IGltcHJvdmluZyB0aGUgY2hhbm5lbCBkZW5zaXR5IGF0IHRoZSBwbGFzbWEgbWVtYnJhbmUsIHdoaWxlIGl2YWNhZnRvciBhcyBhIHBvdGVudGlhdG9yIGFjdHMgb24gQ0ZUUiBjaGFubmVscyB0aGF0IGhhdmUgcmVhY2hlZCB0aGUgY2VsbCBzdXJmYWNlIGFuZCBpbmNyZWFzZSB0aGUgZ2F0aW5nIGFuZCBjb25kdWN0YW5jZSBvZiBpb25zIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiNzdcIi8+IDwvPiwgXCJBZG1pbmlzdHJhdGlvbjogT3JhbCB0YWJsZXRzXCIsIFwiQXBwcm92YWw6IEFwcHJvdmVkIGJ5IHRoZSBFTUEgaW4gMjAxOFwiXVxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICB0aXRsZTogXCJPcmthbWJpXCIsIC8vcXVlbGxlIDZcclxuICAgICAgICAgICAgICAgIHRleHQ6IFtcIkFjdGl2ZSBpbmdyZWRpZW50KHMpOiBDb21iaW5hdGlvbiBvZiBsdW1hY2FmdG9yIGFuZCBpdmFjYWZ0b3JcIiwgXCJJbmRpY2F0aW9uczogRm9yIENGIHBhdGllbnRzIGFnZWQgMSB5ZWFyIGFuZCBvbGRlciB3aXRoIHR3byBjb3BpZXMgb2YgdGhlIEY1MDhkZWwgbXV0YXRpb25cIiw8Pk1lY2hhbmlzbTogTHVtYWNhZnRvciBhY3RzIGFzIGEgY29ycmVjdG9yIG9uIG1pc2ZvbGRlZCBDRlRSIGFuZCBwZXJtaXQgZGVsaXZlcnkgdG8gdGhlIGNlbGwgc3VyZmFjZSwgdGhlcmVieSBpbXByb3ZpbmcgdGhlIGNoYW5uZWwgZGVuc2l0eSBhdCB0aGUgcGxhc21hIG1lbWJyYW5lLCB3aGlsZSBpdmFjYWZ0b3IgYXMgYSBwb3RlbnRpYXRvciBhY3Qgb24gQ0ZUUiBjaGFubmVscyB0aGF0IGhhdmUgcmVhY2hlZCB0aGUgY2VsbCBzdXJmYWNlIGFuZCBpbmNyZWFzZSB0aGUgZ2F0aW5nIGFuZCBjb25kdWN0YW5jZSBvZiBpb25zIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiNzdcIi8+PC8+LFwiQWRtaW5pc3RyYXRpb246IE9yYWwgdGFibGV0c1wiLFwiQXBwcm92YWw6IEFwcHJvdmVkIGJ5IHRoZSBFTUEgaW4gMjAxNVwiXVxyXG4gICAgICAgICAgICB9LCAgXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgIHRpdGxlOiBcIkthbHlkZWNvXCIsIC8vcXVlbGxlIDdcclxuICAgICAgICAgICAgICAgIHRleHQ6IFtcIkFjdGl2ZSBpbmdyZWRpZW50KHMpOiBJdmFjYWZ0b3JcIixcIkluZGljYXRpb25zOiBGb3IgQ0YgcGF0aWVudHMgYWdlZCA0IG1vbnRocyBhbmQgb2xkZXIgd2l0aCBhIGdhdGluZyBtdXRhdGlvbiBpbiB0aGUgQ0ZUUiBnZW5lIChleGNsdWRpbmcgRjUwOGRlbClcIiw8Pk1lY2hhbmlzbTogSXZhY2FmdG9yIGFzIGEgcG90ZW50aWF0b3IgYWN0cyBvbiBDRlRSIGNoYW5uZWxzIHRoYXQgaGF2ZSByZWFjaGVkIHRoZSBjZWxsIHN1cmZhY2UgYW5kIGluY3JlYXNlIHRoZSBnYXRpbmcgYW5kIGNvbmR1Y3RhbmNlIG9mIGlvbnMgPFN1cFNjcm9sbExpbmsgbGFiZWw9XCI3N1wiLz48Lz4sXCJBZG1pbmlzdHJhdGlvbjogT3JhbCB0YWJsZXRzXCIsXCJBcHByb3ZhbDogQXBwcm92ZWQgYnkgdGhlIEVNQSBpbiBKdWx5IDIwMTJcIl1cclxuICAgICAgICAgICAgfSwgXHJcbiAgICAgICAgXVxyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgICBuYW1lOiBcIk11Y29seXRpY3MgYW5kIGluaGFsYXRpb25cIiwgLy9naWJ0IDIgSW5oYWxhdGlvbiBCZWlzcGllbGVcclxuICAgICAgICBwaWN0dXJlOiBcImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3NjaWVudGlmaWMtZmlndXJlcy9tdWNvbHl0aWNzLnN2Z1wiLFxyXG4gICAgICAgIGludHJvZHVjdGlvbjogPD5NdWNvbHl0aWNzIGhlbHAgdGhpbiBhbmQgbG9vc2VuIHRoZSBtdWN1cyBpbiB0aGUgbHVuZ3MsIG1ha2luZyBpdCBlYXNpZXIgdG8gY291Z2ggdXAgYW5kIGNsZWFyIHRoZSBhaXJ3YXlzLiBUaGVzZSB0aGVyYXBpZXMgYXJlIHR5cGljYWxseSBhZG1pbmlzdGVyZWQgdmlhIHdldCBvciBkcnkgaW5oYWxhdGlvbiwgcHJvdmlkaW5nIGRpcmVjdCBkZWxpdmVyeSB0byB0aGUgbHVuZ3MuIEluIHRoZSBjYXNlIG9mIHdldCBpbmhhbGF0aW9uLCB0aGUgbWVkaWNhdGlvbiBpcyBpbmhhbGVkIGFzIGFuIGFxdWVvdXMgc29sdXRpb24gYW5kIG5lYnVsaXplZCwgd2hpbGUgaW4gdGhlIGNhc2Ugb2YgZHJ5IGluaGFsYXRpb24sIHRoZSBtZWRpY2F0aW9uIGlzIGluaGFsZWQgYXMgYSBwb3dkZXIuIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiNzRcIi8+IEtleSBUaGVyYXBpZXMgaW5jbHVkZSBtYW5uaXRvbCwgUHVsbW96eW1lXHUwMEFFIGFuZCBoeXBlcnRvbmljIHNhbGluZS48Lz4sXHJcbiAgICAgICAgZXhhbXBsZXM6IFtcclxuICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgdGl0bGU6IFwiUHVsbW96eW1lXCIsIC8vcXVlbGxlIDhcclxuICAgICAgICAgICAgICAgIHRleHQ6IFtcIkFjdGl2ZSBpbmdyZWRpZW50KHMpOiBEb3JuYXNlIGFsZmEgYXMgbXVjb2x5dGljIGVuenltZVwiLFwiSW5kaWNhdGlvbnM6IEZvciBDRiBwYXRpZW50cyBhZ2VkIDUgeWVhcnMgYW5kIG9sZGVyXCIsXCJNZWNoYW5pc206IGJyZWFrcyB1cCBhbmQgdGhpbnMgbXVjdXMgdmlhIEROYXNlIGFjdGl2aXR5XCIsXCJBZG1pbmlzdHJhdGlvbjogSW5oYWxhdGlvbiB2aWEgbmVidWxpemVyLCBvbmNlIG9yIHR3aWNlIGRhaWx5XCIsXCJBcHByb3ZhbDogQXBwcm92ZWQgYnkgdGhlIEZEQSBpbiAxOTkzIFs5XVwiXVxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICB0aXRsZTogXCJIeXBlcnRvbmljIHNhbGluZVwiLC8vcXVlbGxlIDEwXHJcbiAgICAgICAgICAgICAgICB0ZXh0OiBbXCJBY3RpdmUgaW5ncmVkaWVudChzKTogT3Ntb3RpYyBhZ2VudCBzb2RpdW0gY2hsb3JpZGUgKDMlLCAzLjUlLCA3JSlcIixcIkluZGljYXRpb25zOiBGb3IgQ0YgcGF0aWVudHMgYWdlZCA2IHllYXJzIGFuZCBvbGRlclwiLFwiTWVjaGFuaXNtOiBEcmF3cyB3YXRlciBpbnRvIHRoZSBhaXJ3YXlzLCBoeWRyYXRpbmcgdGhlIG11Y3VzIGFuZCBpbXByb3ZpbmcgY2xlYXJhbmNlXCIsXCJBZG1pbmlzdHJhdGlvbjogSW5oYWxhdGlvbiB2aWEgbmVidWxpemVyLCB1c2VkIHR3aWNlIGRhaWx5XCIsXCJBcHByb3ZhbDogbm8gb2ZmaWNpYWwgYXBwcm92YWwgYnkgRU1BIG9yIEZEQSBhdmFpbGFibGUsIGJ1dCB3aWRlbHkgdXNlZCBmb3Igc2V2ZXJhbCBkZWNhZGVzIFsxMV1cIixcIlByaWNlOiBsb3ctY29zdCBbMTFdXCJdXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgXVxyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgICBuYW1lOiBcIkFudGliaW90aWNzXCIsIC8vZ2lidCAyIEFCIEJlaXNwaWVsZSBcclxuICAgICAgICBwaWN0dXJlOiBcImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3NjaWVudGlmaWMtZmlndXJlcy9hbnRpYmlvdGljcy5zdmdcIixcclxuICAgICAgICBpbnRyb2R1Y3Rpb246IFwiQW50aWJpb3RpY3MgYXJlIGNydWNpYWwgZm9yIHRyZWF0aW5nIGJhY3RlcmlhbCBpbmZlY3Rpb25zIGluIENGIHBhdGllbnRzIHNpbmNlIHRoZSBtdWN1cyBzZXJ2ZXMgYXMgYW4gb3B0aW1hbCBlbnZpcm9ubWVudCBmb3IgcGF0aG9nZW5zLiBBIGh1Z2UgdmFyaWV0eSBvZiBhbnRpYmlvdGljcyBjYW4gYmUgaW5oYWxlZCwgb3JhbCwgb3IgaW50cmF2ZW5vdXMsIGRlcGVuZGluZyBvbiB0aGUgc2V2ZXJpdHkgYW5kIGtpbmQgb2YgdGhlIGluZmVjdGlvbiBbMTJdLiBDb21tZXJjaWFsbHkgYXZhaWxhYmxlIG1lZGljYXRpb25zIGluY2x1ZGUgVE9CSVx1MDBBRSBhbmQgQ0FZU1RPTlx1MDBBRS4gQSBtYWpvciBwcm9ibGVtIGFzc29jaWF0ZWQgd2l0aCB0aGUgYXBwbGljYXRpb24gb2YgYW50aWJpb3RpY3MgaXMgdGhlIGZhY3QgdGhhdCBsb25nLXRlcm0gdXNlIGNhbiBsZWFkIHRvIGFudGliaW90aWMgcmVzaXN0YW5jZSBhbmQgcG90ZW50aWFsIHNpZGUgZWZmZWN0cyBsaWtlIGtpZG5leSBkYW1hZ2UgYW5kIGhlYXJpbmcgbG9zcyBbMTJdLlwiLFxyXG4gICAgICAgIGV4YW1wbGVzOiBbXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgIHRpdGxlOiBcIlRPQklcIiwgLy9xdWVsbGUgMTMgKyBQc2V1ZG8gbXVzcyBrdXJzaXZcclxuICAgICAgICAgICAgICAgIHRleHQ6IFtcIkFjdGl2ZSBpbmdyZWRpZW50KHMpOiBUb2JyYW15Y2luXCIsPD5JbmRpY2F0aW9uczogRm9yIENGIHBhdGllbnRzIGFnZWQgNiB5ZWFycyBhbmQgb2xkZXIgd2l0aCA8aT4gUHNldWRvbW9uYXMgYWVydWdpbm9zYSA8L2k+IGluZmVjdGlvbnMgPC8+LFwiTWVjaGFuaXNtOiBBbWlub2dseWNvc2lkZSBhbnRpYmlvdGljIGRpc3J1cHRzIGJhY3RlcmlhbCBwcm90ZWluIHN5bnRoZXNpcywgbGVhZGluZyB0byB0aGUgZGVhdGggb2YgdGhlIHBhdGhvZ2VuXCIsXCJBZG1pbmlzdHJhdGlvbjogSW5oYWxhdGlvbiBvZiBhbnRpYmlvdGljIHZpYSBuZWJ1bGl6ZXIsIHR5cGljYWxseSB0YWtlbiB0d2ljZSBkYWlseSBpbiAyOC1kYXkgY3ljbGVzXCIsXCJBcHByb3ZhbDogQXBwcm92ZWQgYnkgdGhlIEVNQSBpbiAyMDExIFsxNF1cIl1cclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgdGl0bGU6IFwiQ0FZU1RPTlwiLCAvL3F1ZWxsZSAxNSArIFBzZXVkbyBtdXNzIGt1cnNpdlxyXG4gICAgICAgICAgICAgICAgdGV4dDogW1wiQWN0aXZlIGluZ3JlZGllbnQocyk6IEF6dHJlb25hbVwiLDw+SW5kaWNhdGlvbnM6IEZvciBDRiBwYXRpZW50cyBhZ2VkIDYgeWVhcnMgYW5kIG9sZGVyIHdpdGggPGk+IFBzZXVkb21vbmFzIGFlcnVnaW5vc2EgPC9pPiBpbmZlY3Rpb25zIDwvPixcIk1lY2hhbmlzbTogQmV0YS1MYWN0YW0gYW50aWJpb3RpYyBkaXNydXB0cyBiYWN0ZXJpYWwgY2VsbCB3YWxsIHN5bnRoZXNpcywgbGVhZGluZyB0byB0aGUgZGVhdGggb2YgdGhlIHBhdGhvZ2VuXCIsXCJBZG1pbmlzdHJhdGlvbjogSW5oYWxhdGlvbiB2aWEgbmVidWxpemVyLCB0YWtlbiB0aHJlZSB0aW1lcyBkYWlseSBpbiAyOC1kYXkgY3ljbGVzXCIsXCJBcHByb3ZhbDogQXBwcm92ZWQgYnkgdGhlIEVNQSBpbiAyMDA5XCJdXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgXVxyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgICBuYW1lOiBcIkRpZ2VzdGl2ZSBlbnp5bWVzIGFuZCBkaWV0XCIsIC8vZWluIGJlaXNwaWVsXHJcbiAgICAgICAgcGljdHVyZTogXCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9zY2llbnRpZmljLWZpZ3VyZXMvZGlldC5zdmdcIixcclxuICAgICAgICBpbnRyb2R1Y3Rpb246IDw+IFRoZSBkaWdlc3RpdmUgcHJvY2VzcyBpcyBpbXBhaXJlZCBpbiA4MCUgb2YgcGF0aWVudHMgd2l0aCAgQ3lzdGljIEZpYnJvc2lzIChDRiksIGFzIGEgcmVzdWx0IG9mIHBhbmNyZWF0aWMgaW5zdWZmaWNpZW5jeSwgd2hpY2ggaW4gdHVybiBsZWFkcyB0byBkaWZmaWN1bHRpZXMgaW4gZGlnZXN0aW5nIGZvb2QgYW5kIGFic29yYmluZyBudXRyaWVudHMuIEVuenltZSBzdXBwbGVtZW50cyBsaWtlIENyZW9uXHUwMEFFIGFyZSB0aGVyZWZvcmUgZXNzZW50aWFsIFsxNl0uIE1vcmVvdmVyIENGIHBhdGllbnRzIGFyZSBhbHNvIGFkdmlzZWQgdG8gZWF0IGEgYmFsYW5jZWQgYW5kIGVuZXJneS1yaWNoIGRpZXQsIGFzIHRoZSBpbmNyZWFzZWQgd29yayBvZiBicmVhdGhpbmcgYW5kIGluY3JlYXNlZCBjb3VnaGluZywgYXMgd2VsbCBhcyBpbmZlY3Rpb25zLCBmZXZlciBhbmQgZGlhcnJob2VhLCBjb25zdW1lIG1vcmUgZW5lcmd5IHRoYW4gYSBoZWFsdGh5IHBlcnNvbi4gPFN1cFNjcm9sbExpbmsgbGFiZWw9XCI3NFwiLz4gSXQgaXMgYWxzbyBhbiBvcHRpb24gZm9yIHBhdGllbnRzIHRvIHVzZSBudXRyaXRpb25hbCBzdXBwbGVtZW50cy4gRWxlY3Ryb2x5dGUgcHJlcGFyYXRpb25zIGFyZSBhbHNvIHVzZWQgaW4gdGhpcyBjb250ZXh0IHRvIGNvbXBlbnNhdGUgZm9yIHRoZSBpbmNyZWFzZWQgbmVlZCBmb3IgZmx1aWRzIGFuZCB0aGUgcmVxdWlyZWQgc2FsdHMuPC8+LFxyXG4gICAgICAgIGV4YW1wbGVzOiBbXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgIHRpdGxlOiBcIkNyZW9uXCIsIC8vcXVlbGxlIDE3XHJcbiAgICAgICAgICAgICAgICB0ZXh0OiBbXCJBY3RpdmUgaW5ncmVkaWVudChzKTogcGFuY3JlYXRpYyBlbnp5bWVzIChsaXBhc2UsIGFteWxhc2UsIHByb3RlYXNlKSBmb3IgZW56eW1lIHJlcGxhY2VtZW50IHRoZXJhcHlcIixcIkluZGljYXRpb25zOiBGb3IgQ0YgcGF0aWVudHMgd2l0aCBleG9jcmluZSBwYW5jcmVhdGljIGluc3VmZmljaWVuY3lcIixcIk1lY2hhbmlzbTogUHJvdmlkZXMgZGlnZXN0aXZlIGVuenltZXMgKGxpcGFzZSwgcHJvdGVhc2UsIGFteWxhc2UpIHRvIGFpZCBkaWdlc3Rpb25cIixcIkFkbWluaXN0cmF0aW9uOiBPcmFsIGNhcHN1bGVzLCB0YWtlbiB3aXRoIG1lYWxzXCIsXCJBcHByb3ZhbDogQXBwcm92ZWQgYnkgdGhlIEZEQSBpbiAyMDA5XCJdXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIFxyXG4gICAgICAgIF1cclxuICAgIH1cclxuXSIsICJpbXBvcnQgeyB1c2VOYXZpZ2F0aW9uIH0gZnJvbSBcIi4uL3V0aWxzXCI7XHJcblxyXG5cclxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gIFNWRygpe1xyXG4gICAgY29uc3QgeyBnb1RvUGFnZVdpdGhUYWJBbmRTY3JvbGwvKiAsIGdvVG9UZXh0c0FuZE9wZW5Db2xsYXBzaWJsZSAqLyB9ID0gdXNlTmF2aWdhdGlvbigpO1xyXG4gICAgcmV0dXJuKFxyXG4gICAgICAgIDxzdmdcclxuICAgICAgICAgICB2aWV3Qm94PVwiMCAwIDEwMDAgNTAwXCJcclxuICAgICAgICAgICBvdmVyZmxvdz1cImhpZGRlblwiXHJcbiAgICAgICAgICAgdmVyc2lvbj1cIjEuMVwiXHJcbiAgICAgICAgICAgaWQ9XCJzdmczNjdcIlxyXG4gICAgICAgICAgIHdpZHRoPXtcIjUwMFwifVxyXG4gICAgICAgICAgIGhlaWdodD17XCIxMDAlXCJ9XHJcbiAgICAgICAgICAgaW5rc2NhcGU6ZXhwb3J0LXlkcGk9XCI5LjU5NTU1MjRcIlxyXG4gICAgICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cclxuICAgICAgICAgICA8ZGVmc1xyXG4gICAgICAgICAgICAgaWQ9XCJkZWZzMVwiPjxjbGlwUGF0aFxyXG4gICAgICAgICAgICAgICBpZD1cImNsaXAwXCI+PHJlY3RcclxuICAgICAgICAgICAgICAgICB4PVwiLTE1MzdcIlxyXG4gICAgICAgICAgICAgICAgIHk9XCI2NDY3XCJcclxuICAgICAgICAgICAgICAgICB3aWR0aD1cIjE5NjU4XCJcclxuICAgICAgICAgICAgICAgICBoZWlnaHQ9XCI2NTIwXCJcclxuICAgICAgICAgICAgICAgICBpZD1cInJlY3QxXCIgLz48L2NsaXBQYXRoPjwvZGVmcz48Z1xyXG4gICAgICAgICAgICAgY2xpcFBhdGg9XCJ1cmwoI2NsaXAwKVwiXHJcbiAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMC4wNTkzODgwNywwLDAsMC4wNTkzODgwNywtMTEyLjQ1MDE4LC0zODQuMDYyNjUpXCJcclxuICAgICAgICAgICAgIGlkPVwiZzM2N1wiPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJtIDI5NjUuODMsODM4Ny43MyBjIDE0NC4zLDIyNC4xOSAyODguNTksNDQ4LjM3IDMwNS42Niw1NjkuOCAxNy4wNywxMjEuNDMgLTkzLjA4LDE0MC4xIC0yMDMuMjQsMTU4Ljc4XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y0Y2MxZVwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNzMuMzMzM1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgxXCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwibSAzNTQ1LjAxLDg0OTAuMyBjIDI5OC42OSw0NjQuMDUgNTk3LjM4LDkyOC4xMSA2MzIuNzEsMTE3OS40NiAzNS4zMywyNTEuMzYgLTE5Mi42OSwyOTAuMDEgLTQyMC43MSwzMjguNjZcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjRjYzFlXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI3My4zMzMzXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDJcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJtIDI0MjkuMjgsNzA5My45NyBjIC05MC4zNiwxMDguODEgLTI4MS4yMSwtOC4wNiAtMzYyLjE2LDk2LjczIC04MC45NCwxMDQuOCAtNzkuOTgsMjIwLjQgLTIzLjY1LDMzMS41MyA0MC4yNCw3OS40IC0xODMuMzIsNDkuOTUgLTkuNzIsMjAxLjQ5IDE2My4xNywxNDIuNDQgLTk0LjgyLDIxNy4xIC0xMDUuNTgsMzA0LjMxIC0xMC43Nyw4Ny4yIDQ0LjU3LDEyOS4yIDQwLjk3LDIxOC45MSAtMy42LDg5LjcyIC04OS45MiwyMzkuMDMgLTYyLjU2LDMxOS4zOSAyNy4zNiw4MC4zNiA4Mi4wMiw4OC40NyAxNjAuMTcsMTc3LjU5IDc4LjE0LDg5LjEyIDIyMy42MSw0MDkuNzYgMzA4LjcxLDM1Ny4xMiA4NS4xMSwtNTIuNjQgNDkuNDksLTIwNC43MSAxNjMuNjUsLTI1Mi4yOSAxMTQuMTYsLTQ3LjU4IDIxMC40MSwtMTQxLjYxIDM1OS4xOSwtMTExLjI5IDE3Ny40NywzNi4xNiA0NDMuNTMsODcuNyA1NDkuNyw0OS4yNSAxMDYuMTgsLTM4LjQ1IDE2Mi4yLC0xNDYuNzYgMjQ5LjQ4LC0yMDEuODQgODcuMjksLTU1LjA5IDIwMC44NiwtOTMuMzEgMjc0LjI1LC0xMjguNjcgNzMuMzksLTM1LjM1IDk3LjIzLC0yNi4zIDE2Ni4wOSwtODMuNDggNjguODUsLTU3LjE3IDIwNy45OCwtMTc4LjUxIDI0Ny4wMywtMjU5LjU3IDM5LjA2LC04MS4wNiAxNi4xNywtMTY0LjE2IC0xMi43MSwtMjI2Ljc4IC0yOC44NywtNjIuNjMgLTU3LjAxLC0xODUuMTYgLTExMS43NiwtMjI2LjIyIC01NC43NSwtNDEuMDYgLTEyNC41MywtMy44IC0yMTYuNzMsLTIwLjEzIC05Mi4yMSwtMTYuMzMgLTk4LjMxLC04MC4zNiAtMzM2LjUsLTc3Ljg1IC05My4yNywwLjk5IC00Ni4yMiwxOTcuMDEgLTIyMy4xNSw3Ny41MSAtMjQ5LjgsLTE2OC43MiAtNTQuOTUsLTI0MC4yOCAtOTIuOTYsLTMxNS4wNCAtMzguMDEsLTc0Ljc2IC05Mi43OCwtODQuNTggLTEzNS4xLC0xMzMuNTIgLTQyLjMyLC00OC45NSAtNjQuNDgsLTEzMi4zNCAtMTE4LjgyLC0xNjAuMTQgLTU0LjM0LC0yNy44MSAtMTM3LjQyLDkuOTggLTIwNy4yMSwtNi42OCAtNjkuNzgsLTE2LjY2IC0yMjAuNTUsLTUwLjEzIC0zMDAuODEsLTc4LjI1IC01My42NCwtMzUuMzcgLTQ1LjQ5LC0xNjMuODMgLTE4MC43NCwtOTAuNDQgLTgxLjQxLDQ0LjE4IDMyLjU5LDE2Ny4wMSAtMTkuMDgsMjM4LjM2IHpcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwiI2JiOTkwOVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDNcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJtIDI4MjIuNTQsNzU5OS44NiBjIC0yNS45NiwtOC4xNSAtODQuMDEsLTUuODEgLTEwMS40OSwyNS40MiAtMTcuNDgsMzEuMjQgLTE0Ljg3LDExNS42OSAtMy4zNywxNjIgMTEuNSw0Ni4zMSA1Ni44Myw4NC4xNCA3Mi4zNywxMTUuODYgMTUuNTQsMzEuNzEgMzEuNzUsNTYuMzUgMjAuODcsNzQuNDIgLTEwLjg4LDE4LjA2IC01Mi42NywzNC4zNyAtODYuMTQsMzMuOTcgLTMzLjQ2LC0wLjQgLTc4LjY0LC0zNy4zNCAtMTE0LjY2LC0zNi4zOCAtMzYuMDIsMC45NiAtNjQuMTcsMzcuNyAtMTAxLjQ3LDQyLjEyIC0zNy4yOSw0LjQxIC05Mi4zOSwtMzAuODUgLTEyMi4zLC0xNS42MSAtMjkuOTEsMTUuMjMgLTMwLjEsODguNTYgLTU3LjE1LDEwNy4wMiAtMjcuMDQsMTguNDcgLTgzLjYzLC0yMi41NyAtMTA1LjEzLDMuNzcgLTIxLjUsMjYuMzQgLTMuMywxMjYuMTIgLTIzLjg4LDE1NC4yOCAtMjAuNTksMjguMTcgMS41NiwzOS40OCAxNS42Myw2MS40MiAxNC4wNywyMS45NCAzNy4wNyw5Ny44OSA2OC43Nyw3MC4yMyAzMS42OSwtMjcuNjYgLTE1LjYsLTgyLjM3IC01LjY1LC0xMDcuNDIgOS45NSwtMjUuMDUgNDAuNDMsLTE5LjkxIDY1LjM2LC00Mi44NyAyNC45MywtMjIuOTYgNDcuOTMsLTg3LjM5IDg0LjI0LC05NC44OCAzNi4zMSwtNy41IDEzMy42NCw0OS44OCAxMzMuNjQsNDkuODggNDcuNCwxNy4wOCAxMTQuMzcsMzkuOTMgMTUwLjc5LDUyLjU3IDM2LjQxLDEyLjY1IDQ1LjY4LDM4LjYgNjcuNywyMy4zIDIyLjAxLC0xNS4zIDM2LjcyLC05NC40NiA2NC4zNywtMTE1LjA5IDI3LjY1LC0yMC42NCA5MC44MywxMS42MSAxMDEuNTEsLTguNzMgMTAuNjgsLTIwLjM0IC01OS4wNCwtNzEuOCAtMzcuNDMsLTExMy4zMyAyMS42MiwtNDEuNTIgNjQuMzksLTMzLjYgOTIuMjUsLTQwLjYyIDI3Ljg2LC03LjAxIDUwLjQ5LDE4Ljg4IDc0LjksLTEuNDcgMjQuNDEsLTIwLjM0IDQzLjcsLTEwMS41MSA3MS41NywtMTIwLjU4IDI3Ljg3LC0xOS4wNyA3Ni4wNyw0MC4zNiA5NS42Nyw2LjE3IDE5LjYsLTM0LjE4IC04LjMxLC03NC4yMSAtNDguODcsLTkxLjk3IC00MC41NiwtMTcuNzcgLTE0MS41Myw1LjI1IC0xOTQuNSwtMTQuNiAtNTIuOTgsLTE5Ljg1IC05My43NCwtNzQuNjkgLTEyMy4zNCwtMTA0LjUgLTI5LjYsLTI5LjgyIC0yOC4zLC02Ni4yMiAtNTQuMjYsLTc0LjM4IHpcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwiI2IwOTAwOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDRcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJtIDIzNTMuOTIsODk1MC42NCBjIC0yNy41OSwtMzYuNDEgNzEuMSwtODkuNjYgODkuMjYsLTEyOS4xMyAxOC4xNiwtMzkuNDcgMTMuNjksLTcxLjQxIDE5LjcxLC0xMDcuNjcgNi4wMiwtMzYuMjcgLTQyLjEsLTg4Ljc0IDE2LjQxLC0xMDkuOTMgNTguNSwtMjEuMiAxMTAuMywzNS4yNSAxNTEuMTksMjEuODggNDAuODksLTEzLjM3IDU2LjU3LC04OC4zNyA5NC4xNiwtMTAyLjEyIDM3LjU4LC0xMy43NCAxMTEuODMsMyAxMzEuMzMsMTkuNjYgMTkuNSwxNi42NyA0LjYyLDUwLjc1IC0xNC4zMiw4MC4zNCAtMTguOTMsMjkuNTkgLTYyLjk0LDc1Ljc2IC05OS4yOSw5Ny4xOCAtMzYuMzUsMjEuNDIgLTk0LjI2LDE2LjA1IC0xMTguOCwzMS4zNSAtMjQuNTQsMTUuMyAtNC40OSwzNy40IC0yOC40NSw2MC40NSAtMjMuOTUsMjMuMDUgLTExOC45Miw1OSAtMTQ3LjQzLDgzLjI1IC0yOC41MSwyNC4yNSAtNjcuODYsODguOTMgLTkzLjc3LDU0Ljc0IHpcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwiI2IwOTAwOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDVcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJtIDM5MDMsODEzMi40MyBjIC0zOC43OCw3LjEyIC04Mi41MiwzNi44OSAtMTE2LjYsMzAuNTEgLTM0LjA4LC02LjM4IC04Mi4yLC00Ny42NSAtODcuODgsLTY4LjggLTUuNjgsLTIxLjE1IC0xLjIyLC02MS4yNiA1My44MiwtNTguMSA1NS4wMywzLjE2IDkzLjAzLC0yOC4zNyAxMzQuODIsLTUxLjc1IDQxLjgsLTIzLjM4IDgyLjg0LC04Ny4yMSAxMTUuOTMsLTg4LjU0IDMzLjA4LC0xLjMyIDU3LjI4LDU5LjcxIDgyLjU5LDgwLjU5IDI1LjMxLDIwLjg3IDUyLjI2LDE3LjI1IDY5LjI5LDQ0LjY2IDE3LjAyLDI3LjQyIDEzLjI5LDkzLjQ2IDMyLjg3LDExOS44NCAxOS41OCwyNi4zOCA3OC4wNCwxOS4yNyA4NC41OSwzOC40NiA2LjU2LDE5LjE4IC0xOS44NSw1NC44MSAtNDUuMjQsNzYuNjUgLTI1LjQsMjEuODMgLTgwLjkzLDQ4LjEzIC0xMDcuMTQsNTQuMzYgLTI2LjIsNi4yMiAtNDEuNjcsMi40NiAtNTAuMSwtMTcuMDEgLTguNDIsLTE5LjQ4IDguMDUsLTcxIC0wLjQ0LC05OS44NiAtOC40OSwtMjguODUgLTIyLjczLC02My4wOSAtNTAuNDgsLTczLjI2IC0yNy43NSwtMTAuMTcgLTc3LjI2LDUuMTIgLTExNi4wMywxMi4yNSB6XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIiNiMDkwMDhcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGg2XCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwibSAzMzE0LjQxLDg0NzguNTIgYyAtNDMuMTYsLTYuMzcgLTEwMS42MiwtODguNzMgLTEzNy4wNiwtNTguNzEgLTMzLjExLDI4LjA2IDU1LjQ3LDkwLjMgNDIuMDEsMTIwLjEyIC0xMy40NiwyOS44MiAtOTIuMzgsMzkuNDYgLTEyMi43NCw1OC43OSAtMzAuMzYsMTkuMzQgLTcyLjc1LDMzLjc0IC01OS40MSw1Ny4yNCAxMy4zMywyMy40OSA4Ni4xNSw2Ny41NyAxMzkuNDQsODMuNzQgNTMuMjksMTYuMTcgMTE2LjI4LDE3Ljk5IDE4MC4yOSwxMy4yOCA2NC4wMSwtNC43MSAxNTIuOTIsMC4wMSAyMDMuNzcsLTQxLjU0IDUwLjg0LC00MS41NiAyNy45MywtMTk5LjQxIDEwMS4zMSwtMjA3LjgxIDczLjM4LC04LjQxIDIzMy4yMSwtODAuNzEgMjA0LjIzLC0xMjUuMiAtMjguOTgsLTQ0LjQ4IC0xODUuNDMsMjQuNTMgLTI0NS4zNiwtMC41MiAtNTkuOTMsLTI1LjA0IC0xMzMuNDksNjMuMzMgLTE4NC41Nyw4MC4xIC01MS4wOCwxNi43NyAtNzguNzUsMjYuODcgLTEyMS45MSwyMC41MSB6XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIiNiMDkwMDhcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGg3XCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwibSAzNzcxLjk5LDc3ODUuNjQgYyAtMTUuNzUsMy41NiAtNDEuNTgsMzMuNjQgLTM3LjkzLDQ0LjUzIDMuNjUsMTAuOSA0NC4wNywyNC4zOSA1OS44MywyMC44MyAxNS43NSwtMy41NiAzOC44OCwtMzEuNjggMzQuNjksLTQyLjE4IC00LjE5LC0xMC40OSAtNDAuODMsLTI2Ljc0IC01Ni41OSwtMjMuMTggelwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCIjYjA5MDA4XCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoOFwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIm0gMzM4NS44Nyw4MDM2LjcyIGMgLTI2LjUsMjkuOTcgLTQ5LjI5LDI2Ljg0IC01MC45Miw0NC43NCAtMS42MywxNy45IDE0LjUxLDUwLjQ0IDQxLjE1LDYyLjY2IDI2LjY0LDEyLjIyIDg5LjIyLDE0LjY4IDExOC42OSwxMC42NSAyOS40OCwtNC4wMyA0OS4zMSwtMTguNDkgNTguMTYsLTM0LjgzIDguODUsLTE2LjMzIC05LjA4LC0zNC42NSAtNS4wNiwtNjMuMTYgNC4wMiwtMjguNTEgMjguNDYsLTgxLjc5IDI5LjE3LC0xMDcuODkgMC43MSwtMjYuMSAtMTEuMDQsLTQwLjgyIC0yNC44OSwtNDguNjkgLTEzLjg1LC03Ljg4IC0zMC4wNCwtMjEuMzkgLTU4LjIxLDEuNDQgLTI4LjE2LDIyLjgzIC04MS41OSwxMDUuMSAtMTA4LjA5LDEzNS4wOCB6XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIiNiMDkwMDhcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGg5XCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwibSAzMDc1LjMzLDczNjUuMyBjIC0yMy44OSwxNS4xNSAtMTIuNDUsNzcuNyAtMzkuNTcsOTUuNzIgLTI3LjEyLDE4LjAxIC0xMDMuNywxLjIxIC0xMjMuMTYsMTIuMzcgLTE5LjQ3LDExLjE1IC0yMS45Nyw0My4xMiA2LjM5LDU0LjU4IDI4LjM3LDExLjQ3IDEyMS44MywtMSAxNjMuODIsMTQuMiA0MS45OSwxNS4yIDU2LjUxLDY4LjQzIDg4LjExLDc3LjAzIDMxLjU5LDguNiA5My4wMywxLjUxIDEwMS40OCwtMjUuNDIgOC40NiwtMjYuOTQgLTM1LjE5LC05OC45MiAtNTAuNzQsLTEzNi4yIC0xNS41NCwtMzcuMjggLTE4LjE1LC03Mi4wOSAtNDIuNTQsLTg3LjQ3IC0yNC4zOSwtMTUuMzggLTc5LjksLTE5Ljk2IC0xMDMuNzksLTQuODEgelwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCIjYjA5MDA4XCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMTBcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJtIDQzMzYuMzksMTA2MjMgYyAtMjMuNiwtOSAtNTYuNDQsLTggLTg1Ljc4LC0xLjggLTQ2Ljk0LDkuOCAtMTA1LjEzLDY4IC0xNjYuMTEsODkgLTYwLjk4LDIxLjEgLTE1Ny43OSwtMC44IC0xOTkuNzcsMzcuMyAtNDEuOTgsMzguMiAtMTEwLjMsMTQ1LjEgLTUyLjExLDE5MS43IDE0Ljg0LDExLjkgODguMzMsLTEwNS41IDEzMS45NywtMTEwLjIgNDMuNjQsLTQuNyA2NS45NiwxMC41IDEyOS44Niw4MS45IDYzLjkxLDcxLjMgOTkuNzIsNDIuMyAxMzkuNjUsNDcuMSAzOS45Miw0LjcgNzMuNzMsLTcuNyA5OS44OCwtMTguNyAyNi4xNiwtMTAuOSA1OC4yNiwtMzAuNSA1Ny4wNCwtNDcgNS4zNCwtMzMuMyAtNjAuMTksLTEyLjEgLTY0LjM0LC01Mi4zIC00LjE1LC00MC4yIDUyLjE0LC0xNTIuNCAzOS40NiwtMTg4LjkgLTQuNzUsLTEzLjcgLTE1LjU5LC0yMi43IC0yOS43NSwtMjguMSB6IG0gMjE2LjA1LC05MDcuMTIgYyA0Ni4zNywxOC4wMyA5OC4wMyw0My4wOCAxMjUuMTMsNTYuNDkgNDMuMzYsMjEuNDYgNDcuMjgsMjguMiA2My43Miw1MS40MiAxNi40NCwyMy4yMiAyNi4yMSw0My41OSAzNC45Miw4Ny45MiA4LjcyLDQ0LjMyIDI0LjQ3LDEzNS43OSAxNy4zOSwxNzcuOTkgLTcuMDgsNDIuMyAtMjkuMDMsMzQuOCAtNjQuNyw0NS4xIC0zNS42NywxMC40IC0yMC4yLDc2LjEgMi43OCwxMTYuOSAyMi45OCw0MC44IDg4LjA5LDEzOS40IDEzNS4xLDEyNy45IDQ3LC0xMS40IC0xNS4wMywtMTExLjMgNy4zLC0xMzUuNyAyMi4zNCwtMjQuNCA5MS45NCwtMjguMyAxMjYuNzMsLTEwLjcgMzQuNzgsMTcuNiA2Niw3NC45IDgxLjk4LDExNi4xIDE1Ljk4LDQxLjMgLTUwLjYxLDExNi4xIDEzLjg5LDEzMS40IDQxLjA5LDkuNyA0OS42Niw3OSA2Mi41MSwxMTAuMSAxMi44NCwzMS4xIDE1LjY3LDM3LjggMTQuNTYsNzYuMiAtMC44NSwyOS40IDczLjI3LDUxLjcgNjguODMsNzkuMSAtNC40NCwyNy4zIC0zMi40NCw2MS45IC05NS40OSw4NSAtNjMuMDYsMjMuMSAtNDIuNSwxNTEuNyAtNDUuMDQsMjE3LjMgLTIuNTMsNjUuNiAzMC42NSwxMjYuNSAyOS44NiwxNzYuMiAtMC44LDQ5LjggLTUxLjQ4LDc5LjEgLTM0LjYyLDEyMi40IDYuNjQsMjQuNCA1MC4wNywyNSA3MC44NSw1NC43IDIwLjc5LDI5LjcgNDIuODgsODQuMiA1My44OSwxMjMuNSAxMS4wMSwzOS4zIDMuOTcsODcuMiAxMi4xOCwxMTIuMiA4LjIxLDI1LjEgNDIuNyw0MiA4MS44MSw2Ny40IDMxLjEyLDQ1LjggNzIuNTQsMTQ3LjcgMTA0LjkxLDIwNy40IDMyLjM3LDU5LjcgLTMwLjgxLDEzOS4zIDY1LjQ4LDE2Ni43IDk2LjI4LDI3LjMgODIuMDEsNDIuMiA4OS42OCw3Mi45IDcuNjcsMzAuNyAtMS4wMiw5MC4zIC00My42OCwxMTEuMyAtNDIuNjYsMjEgLTE0OS44MSwtNC4zIC0yMTIuMjksMTQuOCAtNjIuNDcsMTkuMiAtMTA5LjksMTEyLjIgLTE2Mi41Niw5OS45IC01Mi42NywtMTIuMyAtNzMuMzksLTIzNS4zIC0xNTMuNDQsLTE3My42IC04MC4wNCw2MS44IC0yMjUuNTQsNzAuMyAtMjM2LjI4LDUuNSAtNDQuODEsLTI3MC43IC0xMzYuNjksLTY3LjEgLTE1Ny45OSwtMS42IC0zMi41OCwxMDAuMSAtMTcwLjY3LDc5LjggLTIzOS4wNiwxMTUuMSAtNjguNCwzNS4yIC0xMTYuMjIsMTAwLjQgLTE3MS4zLDk2LjQgLTU1LjA4LC00IC0xMjkuMzgsLTIwMC42IC0xNTkuMTgsLTEyMC40IC0zMC42MSw4Mi4zIC03MS45LDU0LjggLTEyNC45NSw2MS43IC03Ny4zMiwwLjMgLTguMDksMTAzLjEgLTE3OS43OSw2MC4zIC0xMzQuOTEsLTMzLjYgMjQuOTUsLTEzNi4yIC03OS42NSwtMTM3IC0xMDQuNiwtMC44IC0xMDIuMjEsLTU4LjEgLTEyMS4yNCwtMTA4IC0xOS4wMywtNDkuOSA0OC4xNywtMTU2LjkgNy4wNSwtMTkxLjEgLTQxLjEzLC0zNC4yIC0yMDkuMDIsMTYuMSAtMjUzLjgyLC0xNCAtNDQuOCwtMzAuMiAwLjkxLC0xMzAuNiAtMTQuOTksLTE2Ny4xIC0xNS45MSwtMzYuNCAtNTEuOSwtNjIuMyAtODAuNDEsLTUxLjcgLTI4LjUxLDEwLjYgLTI0LjEsODkuMiAtOTAuNjYsMTE1LjUgLTY2LjU2LDI2LjMgLTI0My45NCw2Ni42IC0zMDguNzMsNDIuNCAtNjQuNzgsLTI0LjEgMTUwLjc2LC0yMTYuNCAtNzkuOTcsLTE4Ny41IC0xNjcuODIsMjEuMSAtMTAxLjEzLC0xNDkuNiAtMTgwLjUzLC0xMjMuNyAtNzkuNDEsMjUuOSAtODUuMiwtNTIuMyAtMTM4LjkyLC04Mi4yIC01My43MiwtMjkuOSAtMTUwLjQ1LC01OC4zIC0xODMuNDEsLTk3LjIgLTMyLjk2LC0zOSAyOS45OSwtMTIyLjMgLTE0LjM3LC0xMzYuNiAtNTguODcsLTE4LjkgLTEwMC43OCwtNTAgLTE0MS4xOCwtOTUuNyAtNDAuNCwtNDUuNyAtMTMuMjgsLTE3MS40IC0xMDEuMjQsLTE3OC4yIC04Ny45NSwtNi45IC01OC42NywtMTQ1LjYgLTM5LjU0LC0xOTQuMyAxOS4xMywtNDguNyA4My4yNSwtOTQuNSAxNTQuMzEsLTk4LjEgNzEuMDYsLTMuNSAyMDguODksMTExLjQgMjcyLjA2LDc2LjYgNjMuMTcsLTM0LjcgMTA3LjQ2LC0yMTcgMTA2Ljk4LC0yODUuMyAtMC40OSwtNjguMyAtODcuMjgsLTcxIC0xMDkuODgsLTEyNC41IC0yMi42LC01My40IC00My42LC0xNDcuNyAtMjUuNzIsLTE5NiAxNy44NywtNDguMyA4Ni40MywtNDUuNyAxMzIuOTcsLTkzLjcgNDYuNTMsLTQ4LjEgLTYuMzgsLTQ1LjQgNS4xNiwtMTMxLjU4IDExLjUzLC04Ni4xNSA4Ny40NiwtNzMuMTMgMTIzLjI4LC05OC44IDM1LjgyLC0yNS42NiA1OS45OSwtMTMuMDYgOTEuNjMsLTU1LjE5IDMxLjY1LC00Mi4xMyAxOS44NywtNDEuMzYgNjMuMSwtNDkuODYgNDMuMjIsLTguNSAxNjcuMDcsMS4zOSAxOTYuMjUsLTEuMTQgMjkuMTcsLTIuNTMgODAuMzEsLTg1LjUgMTE5LjU0LC04MC45MSAzOS4yMyw0LjU5IDc5Ljg2LDM5LjYyIDEwOC43MSwyOS4zMiAyOC44NSwtMTAuMyAyOS4yOSwtNzcuODcgNjUuNTIsLTY5LjY5IDM2LjIyLDguMTggNzMuMyw3MC42OCAxMTEuMTksNTcuMDEgMzcuODksLTEzLjY2IDYwLjYyLC02NS4yOCAxMDAuNjcsLTgwLjIxIDQwLjA1LC0xNC45MyA1NS4yNiwtNC44OSAxMzkuNjMsLTkuMzcgODQuMzcsLTQuNDkgNTQuODEsOTIuNSA5NC4xOCw5My4wNSAzOS4zOCwwLjU2IC0xLjUzLC03OC4yOCAyNi4wOSwtODguOTggMjcuNjIsLTEwLjcgMTAxLjc1LC0zNS41OSAxMzkuNjQsMjQuNzcgMzcuODksNjAuMzUgLTIxLjEyLDcxLjQ1IDIxLjA0LDEyOCA0Mi4xNiw1Ni41NCAxNjYuNjYsODUuNSAxOTguODgsMTAwLjk4IDMyLjIyLDE1LjQ3IDkuMjQsLTc2LjU3IDY3LjExLC05NS45OSA1Ny44NywtMTkuNDMgMjE5LjMsLTguODkgMjgwLjEsLTIwLjU5IDYwLjgxLC0xMS42OSAzNy44NiwtNTQuMjEgODQuNzIsLTQ5LjU4IDE3LjU4LDEuNzMgNDMuNSwxMC4wMiA3MS4zMiwyMC44NCB6XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIiNmNGNjMWVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgxMVwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIm0gMzk1NC41LDEwNzIyLjEgYyAtMjIuMDcsLTMuNiAtMzYuMzQsLTMzLjYgLTEyLjY0LC03MC40IDIzLjcsLTM2LjkgOTAuOTQsLTExNi4yIDE1NC44NCwtMTUwLjcgNjMuOSwtMzQuNSAxNjcuODgsLTE3LjIgMjI4LjU2LC01Ni4zIDYwLjY4LC0zOS4xIDg3LjYyLC0xMTQuMiAxMzUuNTIsLTE3OC41IDQ3LjksLTY0LjIgMTExLjIxLC0xNjcuOCAxNTEuODcsLTIwNy4yIDQwLjY2LC0zOS40IDkyLjQzLC02NC40NCA5Mi4wNywtMjkuMyAtMC4zNSwzNS4xIC03MC41NywxNzEuMiAtOTQuMjEsMjM5LjkgLTIzLjY0LDY4LjggLTI0LjU5LDEyNC43IC00Ny42NCwxNzIuNyAtMjMuMDUsNDggLTU1LjIxLDEwMCAtOTAuNjUsMTE1LjUgLTM1LjQ1LDE1LjQgLTEwNC4yMiwtMzEuNyAtMTIyLjAxLC0yMi44IC0xNy43OCw5IDQ1LjIzLDYyLjMgMTUuMjksNzYuNSAtMjkuOTQsMTQuMyAtMTQ2LjM4LC0xLjIgLTE5NC45Miw5LjEgLTQ4LjUzLDEwLjMgLTU5LjgyLDM3IC05Ni4yNyw1Mi45IC0zNi40NiwxNS45IC05Ny43NCw1Mi4yIC0xMTkuODEsNDguNiB6XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIiNlZWMzMGNcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgxMlwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIm0gNDI4MC44NSwxMTEyMi4xIGMgLTI1LjA5LC0yMS42IC01OC42NCwtMjggLTk4LjQ3LC0xOC41IC0zOS44NCw5LjYgLTExNi4yLDQ1LjkgLTE0MC41Myw3NS44IC0yNC4zMiwyOS45IC0yMC4zOSwxMDEuMSAtNS40MywxMDMuNiAxNC45NiwyLjUgNTkuNTgsLTc0LjggOTUuMTgsLTg4LjUgMzUuNiwtMTMuNyA4NC44NywtMC4zIDExOC40Miw2LjIgMzMuNTUsNi40IDc3LjQ3LDQ2LjMgODIuOSwzMi41IDUuNDIsLTEzLjggLTI2Ljk4LC04OS41IC01Mi4wNywtMTExLjEgelwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCIjZWVjMzBjXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMTNcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJtIDI5MzcuOTQsMTA0NjQgYyAyMC41MSwtMTMuOCAzMS43OCwtNDQuNiAyOS4xMiwtNzQuMiAtMi42NSwtMjkuNiAtMTYuMDksLTg5LjQgLTQ1LjA1LC0xMDMuMyAtMjguOTYsLTEzLjkgLTEwMC45NiwwLjcgLTEyOC42OSwyMCAtMjcuNzMsMTkuMyAtNDYuMTQsNjguMyAtMzcuNjksOTYgOC40NSwyNy42IDU4LjI2LDU4LjkgODguMzYsNjkuOSAzMC4xLDExIDczLjQ0LDUuNCA5My45NSwtOC40IHpcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwiI2VlYzMwY1wiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDE0XCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwibSAzOTU4LjExLDExNTU5LjQgYyAxOS4xNCwtMS43IC0xOC40LC04Ny44IC0zNy4yNiwtMTEwLjMgLTE4Ljg2LC0yMi41IC00Ni41NCwtMTguMyAtNzUuODksLTI0LjcgLTI5LjM0LC02LjUgLTc0LjUyLDUuOSAtMTAwLjE4LC0xNC4yIC0yNS42NywtMjAuMSAtMzEuOTEsLTg5LjcgLTUzLjc4LC0xMDYuNyAtMjEuODcsLTE3IC02Mi4wMiwtMTAuOSAtNzcuNDQsNC44IC0xNS40MiwxNS44IC0yMi45NCw2NC45IC0xNS4wOSw4OS44IDcuODUsMjQuOSAzOCw0NC4zIDYyLjE4LDU5LjYgMjQuMTgsMTUuNCA1OC42NywzMi4zIDgyLjksMzIuNiAyNC4yMywwLjMgMjcuMTUsLTQxLjQgNjIuNDcsLTMwLjkgMzUuMzIsMTAuNSAxMzIuOTUsMTAxLjcgMTUyLjA5LDEwMCB6XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIiNlZWMzMGNcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgxNVwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIm0gMzkzMi4wNSwxMjEwMC42IGMgLTIzLjA2LC0yNi40IC01NS40OCwtMjIuNCAtNzkuOTYsNy4yIC0yNC40OCwyOS42IC03MS4yNSwxMzQgLTY2LjkxLDE3MC40IDQuMzQsMzYuNSA1OC43Nyw1MC4xIDkyLjk4LDQ4LjEgMzQuMjEsLTIgMTAzLjc0LC0yMy41IDExMi4yOSwtNjAgOC41NCwtMzYuNSAtMzUuMzQsLTEzOS4zIC01OC40LC0xNjUuNyB6XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIiNlZWMzMGNcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgxNlwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIm0gNTIxOS40NiwxMTc4OC40IGMgLTIzLjk1LC05LjQgLTk3LjUxLC04LjcgLTEzNy43MSw0Ni4yIC00MC4yMSw1NC45IC05OC41NSwyMjguMSAtMTAzLjUzLDI4My4zIC00Ljk4LDU1LjMgNDguOTIsNTcuMiA3My42NSw0OC4yIDI0LjcyLC04LjkgNTkuMjUsLTY0LjEgNzQuNjgsLTEwMS44IDE1LjQzLC0zNy42IDEuMzksLTk1LjIgMTcuODgsLTEyNC4xIDE2LjQ4LC0yOC45IDY4LjUxLC0yMy45IDgxLjAyLC00OS4yIDEyLjUxLC0yNS4zIDE3Ljk2LC05My4yIC01Ljk5LC0xMDIuNiB6XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIiNlZWMzMGNcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgxN1wiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIm0gMzc5Mi43MSwxMDQ2Ny4yIGMgLTI0Ljc1LC0xMy45IC01Ni42MiwtMjguOSAtODcuODcsNS44IC0zMS4yNiwzNC43IC04Mi42NSwxNDIuMSAtOTkuNjgsMjAyLjYgLTE3LjAyLDYwLjQgLTIxLjI4LDE0MS45IC0yLjQ1LDE2MC4yIDE4LjgzLDE4LjMgNzkuMzIsLTI2LjggMTE1LjQ0LC01MC40IDM2LjEyLC0yMy42IDc4LjcyLC01MyAxMDEuMjYsLTkxLjIgMjIuNTMsLTM4LjEgMzkuMzksLTEwMC4zIDMzLjkzLC0xMzcuNyAtNS40NiwtMzcuNCAtMzUuODgsLTc1LjQgLTYwLjYzLC04OS4zIHpcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwiI2VlYzMwY1wiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDE4XCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwibSA0NzU0LjE2LDExNjM1LjMgYyAzMy42NywtMTkuNSAxMzEuOTUsLTEwMSAxMzYuNjEsLTE0Mi44IDQuNjcsLTQxLjggLTc4LjcsLTEwMy4xIC0xMDguNjIsLTEwOC4xIC0yOS45MiwtNSAtNDIuOTQsNjguOCAtNzAuODgsNzcuOSAtMjcuOTQsOS4yIC05MywtNDcuNCAtOTYuNzYsLTIyLjggLTMuNzYsMjQuNSA1MC40OSwxMzYuNCA3NC4yLDE3MC4xIDIzLjcyLDMzLjYgMzEuNzcsNDUuMiA2NS40NSwyNS43IHpcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwiI2VlYzMwY1wiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDE5XCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwibSAyNzc1LjIxLDExNTU4LjMgYyAxMy4wNywtNDEuOSA3OS43NywtMTM5LjEgMTE3LjI4LC0xNzAuNSAzNy41MiwtMzEuNCA2NC44NCwtMjQuMSAxMDcuODIsLTE4LjEgNDIuOTgsNiAxMTIuMTksMzAuNiAxNTAuMDYsNTMuOSAzNy44NiwyMy4yIDkwLjA3LDY1LjUgNzcuMTQsODUuNyAtMTIuOTMsMjAuMSAtMTA2LjcsMTAuOSAtMTU0LjcxLDM0LjkgLTQ4LjAxLDIzLjkgLTkwLjIyLDkzIC0xMzMuMzUsMTA4LjggLTQzLjEzLDE1LjggLTk4Ljc4LDEuNSAtMTI1LjQzLC0xNCAtMjYuNjUsLTE1LjUgLTUxLjg5LC0zOC45IC0zOC44MSwtODAuNyB6XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIiNlZWMzMGNcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgyMFwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIm0gMzQ2Ni41MSwxMDc3Mi4yIGMgMTguNzMsMS41IDQzLjQ0LC01OS4zIDI5LjksLTg5IC0xMy41NCwtMjkuNiAtODMuMTEsLTY2LjIgLTExMS4xMSwtODguOSAtMjgsLTIyLjcgLTU2LjY4LC02MC45IC01Ni44OCwtNDcuNSAtMC4yMSwxMy4zIDMyLjM1LDkwLjcgNTUuNjUsMTI3LjYgMjMuMywzNi44IDYzLjcyLDk2LjMgODIuNDQsOTcuOCB6XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIiNlZWMzMGNcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgyMVwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIm0gMzMwOC40OCwxMTIxNC4yIGMgLTM3Ljg1LDEuOCAtOTYuODgsNjUuOCAtOTcuNjcsMTA0LjEgLTAuOCwzOC4yIDY5LjA1LDcwIDkyLjg4LDEyNS4yIDIzLjgyLDU1LjIgOTAuNTcsMTIyIDUwLjA2LDIwNiAtNDAuNTIsODMuOSAtMTg2LjQzLDIyNC43IC0yOTMuMTcsMjk3LjggLTEwNi43NCw3MyAtMzA1LjIsMTQwLjMgLTM0Ny4yNywxNDAuNiAtNDIuMDcsMC4zIDUxLjY4LC0xMDguMSA5NC44NiwtMTM5IDQzLjE4LC0zMC45IDgxLjU1LC00MSAxNjQuMjEsLTQ2LjMgODIuNjYsLTUuMyAyMjkuOTIsLTI1LjYgMzMxLjcyLDE0LjQgMTAxLjgxLDQwIDI0Ny41NCwxNDMuMyAyNzkuMTEsMjI1LjQgMzEuNTcsODIgLTcwLjY3LDIwMS40IC04OS42OSwyNjYuOSAtMTkuMDIsNjUuNiAtMjMuOTgsODQuNiAtMjQuNDQsMTI2LjQgLTAuNDUsNDEuOCA0My4zNCw4NC4xIDIxLjY5LDEyNC4zIC0yMS42NSw0MC4yIC02OS40MiwxMDIgLTE1MS41OCwxMTYuNyAtODIuMTYsMTQuOCAtMzE0Ljk5LC01Mi43IC0zNDEuMzgsLTI4LjIgLTI2LjQsMjQuNCAxMDguNjgsMTQ0LjMgMTgzLjAxLDE3NS4xIDc0LjMzLDMwLjkgMTg1LjQ2LDUxLjQgMjYyLjk2LDEwIDc3LjQ5LC00MS4zIDE2Ni41NywtMTc2LjMgMjAyLjAyLC0yNTguMSAzNS40NiwtODEuNyA0NS44MywtMTYxLjYgMTAuNywtMjMyLjQgLTM1LjEyLC03MC45IC0xMzguNDksLTE1MS43IC0yMjEuNDQsLTE5Mi43IC04Mi45NiwtNDEgLTE5Ny4wNiwtNTMuOSAtMjc2LjI3LC01My4xIC03OS4yLDAuOCAtMTQ1LjMsNTMuOCAtMTk4Ljk1LDU3LjkgLTUzLjY1LDQuMSAtMTE2LjAyLC02MS41IC0xMjIuOTQsLTMzLjIgLTYuOTMsMjguMyA0My43MSwxNjYuNiA4MS4zNywyMDMuMiAzNy42NywzNi42IDYyLjk0LDY0LjEgMTQ0LjYsMTYuNSA4MS42NiwtNDcuNyAyNzUuODIsLTE3NC42IDM0NS4zNiwtMzAyLjYgNjkuNTQsLTEyNy45IDkzLjQzLC0zNjEuOSA3MS44OCwtNDY1LjIgLTIxLjU1LC0xMDMuMyAtMTU5Ljg4LC0xMTYuNSAtMjAxLjE4LC0xNTQuNSAtNDEuMywtMzguMSAtNzYuMzEsLTQ1LjEgLTQ2LjYsLTczLjcgMjkuNywtMjguNiAxNTcuODksLTgxLjUgMjI0LjgxLC05OC4xIDY2LjkxLC0xNi41IDEzMy42OCwtMTEuMyAxNzYuNjgsLTEuMSA0My4wMSwxMC4yIDcwLjIzLDI0LjIgODEuMzUsNjIuMSAxMS4xMiwzOCAtMzcuNjgsOTYgLTE0LjYxLDE2NS41IDIzLjA4LDY5LjUgOTEuODksMTY3LjkgMTUzLjA2LDI1MS41IDYxLjE4LDgzLjYgMTQ0Ljc5LDIwNi4yIDIxMy45OCwyNTAuMSA2OS4xOSw0NCAxMzIuNTMsMzQuNCAyMDEuMTYsMTMuNiA2OC42MywtMjAuOSAxMzMuMzUsLTg1LjMgMjEwLjYyLC0xMzguOSA3Ny4yNywtNTMuNiAyMDIuMTYsLTEyMy43IDI1Mi45OSwtMTgyLjcgNTAuODQsLTU4LjkgNzAuNTEsLTExMy4zIDUyLjAxLC0xNzAuOSAtMTguNTEsLTU3LjYgLTEzMi4yMiwtMTY3LjcgLTE2My4wMiwtMTc0LjggLTMwLjgsLTcuMSAtNDIuODgsNzcuMiAtMjEuNzgsMTMyLjQgMjEuMSw1NS4zIDEyMy4yNywxMzAuNyAxNDguMzcsMTk5LjMgMjUuMSw2OC42IC0wLjIzLDE0NS45IDIuMjMsMjEyLjQgMi40Niw2Ni40IC0xOS42NSwxNDguMyAxMi41MSwxODYuMSAzMi4xNSwzNy45IDEzNi45OSw1MyAxODAuNDMsNDAuNyA0My40NCwtMTIuMyA3MS45NywtODkuMyA4MC4yMiwtMTE0LjYgOC4yNSwtMjUuMyAyNS41OSwtNTguNyAtMzAuNywtMzcuMiAtNTYuMywyMS41IC0yMTkuOSwxNDEuMSAtMzA3LjA3LDE2Ni41IC04Ny4xNywyNS4zIC0xNDIuNzQsMjMuNyAtMjE1Ljk1LC0xNC4zIC03My4yMiwtMzggLTE3Ni4xNywtMTIyIC0yMjMuMzIsLTIxMy42IC00Ny4xNiwtOTEuNSAtNDMuMTEsLTIzMC4xIC01OS42LC0zMzUuNiAtMTYuNDksLTEwNS41IC00OC40NSwtMjAzLjYgLTM5LjMzLC0yOTcuNCA5LjEyLC05My44IDcxLjIyLC0xODMuNSA5NC4wNSwtMjY1LjIgMjIuODQsLTgxLjcgMTAxLjMyLC0xNzIuNiAxMTcuMTMsLTE5NS43XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTkuNTgzM1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgyMlwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDg5LjA1NzgsMTAzLjEyXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoLTAuOTMwODMyLC0wLjM2NTQ0NywtMC4zNjU0NDcsMC45MzA4MzIsMzQ3Ny42MSwxMTY5NC4xKVwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDIzXCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgODkuMDU3OCwxMDMuMTJcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgtMC45MzA4MzIsLTAuMzY1NDQ3LC0wLjM2NTQ0NywwLjkzMDgzMiwzMzAzLjY5LDExNzgyLjYpXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMjRcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJtIDM0NzYuNiwxMTg5NS4xIC0yLjgyLDY1LjFcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDI1XCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgMjU1Ljk1NCw3NC45MzMyXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoLTAuOTMwODMyLC0wLjM2NTQ0NywtMC4zNjU0NDcsMC45MzA4MzIsMzIzOC4wMSwxMTkyNi40KVwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDI2XCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgMTkzLjAyNSw0Ny41NDRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgtMC45MzA4MzIsLTAuMzY1NDQ3LC0wLjM2NTQ0NywwLjkzMDgzMiwzNDE0LjEzLDEyMTAwLjgpXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMjdcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCAxOTMuMDI1LDQ3LjU0NFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KC0wLjkzMDgzMiwtMC4zNjU0NDcsLTAuMzY1NDQ3LDAuOTMwODMyLDMxMzkuNjEsMTIwNTgpXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMjhcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCAyNDMuNjYyLDMuNjA4OTJlLTRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgtMC45MzA4MzIsLTAuMzY1NDQ3LC0wLjM2NTQ0NywwLjkzMDgzMiwzMjc3LjA2LDEyMjc4LjEpXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMjlcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCAyMDguMzgzLDMuNjA4OTJlLTRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgtMC45MzA4MzIsLTAuMzY1NDQ3LC0wLjM2NTQ0NywwLjkzMDgzMiwyOTg3LjE0LDEyMTU0LjgpXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMzBcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJtIDMxMTguMDEsMTIzOTguMiAtMTY0LjU4LC0xNzhcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDMxXCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwiTSAyOTMxLjY3LDEyMTczIDI3NjcuMSwxMTk5NVwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMzJcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJtIDI5NDguODIsMTI0NDcuNCAtMTcuMTMsLTE4OS45XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgzM1wiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIm0gMjkwOC42MywxMjExNS44IC0xNy4xMywtMTkwXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgzNFwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDkuNTI3MiwxNTUuOTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMC45MzA4MzIsMC4zNjU0NDcsMC4zNjU0NDcsLTAuOTMwODMyLDI4NjQuNiwxMjMxMy45KVwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDM1XCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgOS41MjcyLDE1NS45NjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgwLjkzMDgzMiwwLjM2NTQ0NywwLjM2NTQ0NywtMC45MzA4MzIsMjk3Mi40NiwxMjA2NS4zKVwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDM2XCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgMTE0Ljc2NiwxNjguMzA1XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMC45MzA4MzIsMC4zNjU0NDcsMC4zNjU0NDcsLTAuOTMwODMyLDI4NjguMzgsMTIyMzEuNilcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgzN1wiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDExNC43NjYsMTY4LjMwNVwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDAuOTMwODMyLDAuMzY1NDQ3LDAuMzY1NDQ3LC0wLjkzMDgzMiwzMTM5LjQxLDEyMDQ2LjQpXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMzhcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJtIDMwOTksMTIzMTYuNSA4NS42OCwzMy42XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgzOVwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIm0gMjk1Ni40NCwxMjI2MC41IDg1LjY3LDMzLjZcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDQwXCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgODYuNjU4OSwxMDMuMzQ4XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMC45MzA4MzIsMC4zNjU0NDcsMC4zNjU0NDcsLTAuOTMwODMyLDMxMzguNjQsMTIyMDUpXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoNDFcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCA5NC44ODk0LDEwNi43NDRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgwLjkzMDgzMiwwLjM2NTQ0NywwLjM2NTQ0NywtMC45MzA4MzIsMzMxMS40NywxMjA5OC4yKVwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDQyXCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgNzkuODUyOSw0MS43NDhcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgwLjkzMDgzMiwwLjM2NTQ0NywwLjM2NTQ0NywtMC45MzA4MzIsMzMzOC43OCwxMjIzMy4xKVwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDQzXCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgNjkuNjM1Myw0MC41MDQ0XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMC45MzA4MzIsMC4zNjU0NDcsMC4zNjU0NDcsLTAuOTMwODMyLDM0OTAuMDYsMTIyMjEuMilcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGg0NFwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDQ4LjcyOTEsMzkuODI4MVwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDAuOTMwODMyLDAuMzY1NDQ3LDAuMzY1NDQ3LC0wLjkzMDgzMiwzNjEzLjAxLDEyNTMwLjYpXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoNDVcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCA0OC4yMDE1LDM0LjgyMTFcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgwLjkzMDgzMiwwLjM2NTQ0NywwLjM2NTQ0NywtMC45MzA4MzIsMzQ5Ny4zNSwxMjU3MC45KVwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDQ2XCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwibSAzNTY5LjI1LDEyMzQxLjggLTI0LjMsLTI3LjNcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDQ3XCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwibSAzNjA0LjA4LDEyMzkwLjUgLTkuMSwtMTMuOFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoNDhcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCA0MS45ODg3LDE4LjM0NzhcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgwLjkzMDgzMiwwLjM2NTQ0NywwLjM2NTQ0NywtMC45MzA4MzIsMzU5Ny44OSwxMjY3MS45KVwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDQ5XCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgNDQuNzIzNiwxNS45NzY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMC45MzA4MzIsMC4zNjU0NDcsMC4zNjU0NDcsLTAuOTMwODMyLDM0OTIuNDEsMTI2NzAuMilcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGg1MFwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDU2LjkwMyw3LjA0NDYyXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMC45MzA4MzIsMC4zNjU0NDcsMC4zNjU0NDcsLTAuOTMwODMyLDMzOTcuMzQsMTI3NTYuMylcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGg1MVwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDc1LjExNzksOC4yOTk0NFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDAuOTMwODMyLDAuMzY1NDQ3LDAuMzY1NDQ3LC0wLjkzMDgzMiwzNTA2LjE2LDEyNzgzLjcpXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoNTJcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJtIDMzMjYuNjgsMTI4NjAuNCAxMjkuMiw3MC40XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGg1M1wiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIm0gMzEzNS43NiwxMjc2My4zIDE0MC40Miw2OS40XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGg1NFwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIm0gMzQzMS43LDExNTI3LjkgLTEwNy44NiwtNjMuMVwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoNTVcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJtIDM0NjkuNCwxMTUxMiAtMTA3Ljk0LC0xMTUuNlwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoNTZcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJtIDM1NzQuOTEsMTE1MTkuNSAtMjIuMDYsLTE3OC40XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGg1N1wiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDE3NC45NTYsMTQuMDM2NVwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KC0wLjkzMDgzMiwtMC4zNjU0NDcsLTAuMzY1NDQ3LDAuOTMwODMyLDM4OTguOTksMTE0OTIuNSlcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGg1OFwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDE5OC40NjYsMTIzLjY3OVwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KC0wLjkzMDgzMiwtMC4zNjU0NDcsLTAuMzY1NDQ3LDAuOTMwODMyLDM5NzQuOTUsMTE1OTUuOSlcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGg1OVwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDYxLjAyNCwxODUuMzQ3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoLTAuOTMwODMyLC0wLjM2NTQ0NywtMC4zNjU0NDcsMC45MzA4MzIsNDAxNC41NiwxMTY5NS40KVwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDYwXCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgMTQuMzE3LDIyMC44MzFcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgtMC45MzA4MzIsLTAuMzY1NDQ3LC0wLjM2NTQ0NywwLjkzMDgzMiw0MDYxLjc4LDExNzk0LjQpXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoNjFcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJtIDQxNjEuMzcsMTE5MzAgLTIyLjg2LDE3MC45XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGg2MlwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDI4LjEyMzYsMTI0LjYxM1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KC0wLjkzMDgzMiwtMC4zNjU0NDcsLTAuMzY1NDQ3LDAuOTMwODMyLDQ0ODEuNDIsMTIwNDYuOSlcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGg2M1wiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDI4LjEyMzYsMTI0LjYxM1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KC0wLjkzMDgzMiwtMC4zNjU0NDcsLTAuMzY1NDQ3LDAuOTMwODMyLDQ1ODkuMDEsMTE4ODYuOSlcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGg2NFwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIm0gNDYzMy42MSwxMjA1NS42IC0zNC4yMywxNzEuNFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoNjVcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJtIDQ2NjYuMjMsMTE4MTkuOSAtMjMuMDgsMTYyLjlcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDY2XCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwibSA0ODE0LjcsMTE5OTIuMSAyOS4xLDEwOS4zXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGg2N1wiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIm0gNDc2Mi42OSwxMjE1Mi4yIDM3LjUzLC0yMzAuNlwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoNjhcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCAzLjQ5NjY5LDE5NS45NTNcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgtMC45MzA4MzIsLTAuMzY1NDQ3LC0wLjM2NTQ0NywwLjkzMDgzMiw0OTcxLjMyLDEyMDEwLjgpXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoNjlcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJtIDUwMTguMjYsMTIwNTcuMSAtODYuNDksLTEyNy43XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGg3MFwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIm0gNDg5Ni4zNCwxMTg2OC42IC0xMDUuODksLTE1NS44XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGg3MVwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIm0gNDYyOS40MywxMTQxMC4yIC0yNS4zOSwtMTQ0LjZcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDcyXCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwibSA0Mzc3LjI0LDExMjYwLjEgLTE0NC4xLC0xMjUuNVwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoNzNcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCA5Mi45NzE3LDY1Ljg2ODNcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgtMC45MzA4MzIsLTAuMzY1NDQ3LC0wLjM2NTQ0NywwLjkzMDgzMiw0Mjg4LjU2LDExMzI3KVwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDc0XCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwibSA0NTc4LjczLDExNDQyLjUgLTE1MS4yNCwtMTM3LjFcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDc1XCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwibSA0NjQ5LjczLDExNjE4LjIgLTEwMi40NSwtMTAzLjRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDc2XCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgMTE2Ljk4OSwxNS4xNTk2XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoLTAuOTMwODMyLC0wLjM2NTQ0NywtMC4zNjU0NDcsMC45MzA4MzIsNDI2Ny43NSwxMTAxNS4yKVwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDc3XCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgNzcuMTk3LDcwLjIxOTJcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgtMC45MzA4MzIsLTAuMzY1NDQ3LC0wLjM2NTQ0NywwLjkzMDgzMiw0NzQ3LjM0LDEyMDQ3LjEpXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoNzhcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCA5Ny41NTc5LDgyLjIxMzhcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgwLjkzMDgzMiwwLjM2NTQ0NywwLjM2NTQ0NywtMC45MzA4MzIsNDc2NS42NSwxMTU4MylcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGg3OVwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDcyLjY0NzYsMTcuODUxMlwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDAuOTMwODMyLDAuMzY1NDQ3LDAuMzY1NDQ3LC0wLjkzMDgzMiw0NjUxLjE2LDExNjkwLjEpXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoODBcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCA1Mi44MDksMjAuNzgwNVwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KC0wLjkzMDgzMiwtMC4zNjU0NDcsLTAuMzY1NDQ3LDAuOTMwODMyLDQ4NTQuMTcsMTE3MDYuNilcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGg4MVwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIm0gNDcxMS44NSwxMTQ5NS4yIDMwLjc4LDE4Mi4yXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGg4MlwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIm0gNDc2Mi42OSwxMjE1Mi4yIC0xLjA0LC0yNDMuMVwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoODNcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCA5LjcwNTQ4LDIwNi4xMjJcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgtMC45MzA4MzIsLTAuMzY1NDQ3LC0wLjM2NTQ0NywwLjkzMDgzMiw0MTcyLjM5LDExNTQ1LjkpXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoODRcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJtIDQxODkuNywxMTY4MS45IC0xOC42OCwxNzUuOFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoODVcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJtIDMzNDUuMjIsMTE2NTEuOCAtNi41MywtMjYuOVwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoODZcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJtIDMzMjkuNzIsMTE1NzAuOSAtNi41MywtMjYuOVwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoODdcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJNIDQ0NjYsMTEyMTQuNCBWIDEwOTY5XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2M5NWIwOVwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGg4OFwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIk0gNDU2NSwxMTIzMi40IFYgMTA5ODdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjYzk1YjA5XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDg5XCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwiTSA0NjY0LDExMjUxLjQgViAxMTAwNlwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNjOTViMDlcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoOTBcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJNIDQ3NjIsMTEyNTkuNCBWIDExMDE0XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2M5NWIwOVwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGg5MVwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIk0gNDM2OCwxMTIwMi40IFYgMTA5NTdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjYzk1YjA5XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDkyXCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwiTSAzNDc1LDExMjE2LjQgViAxMDk3MVwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNjOTViMDlcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoOTNcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJNIDM1NzQsMTEyMzQuNCBWIDEwOTg5XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2M5NWIwOVwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGg5NFwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIk0gMzY3MywxMTI1Mi40IFYgMTEwMDdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjYzk1YjA5XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDk1XCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwiTSAzNzcxLDExMjYwLjQgViAxMTAxNVwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNjOTViMDlcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoOTZcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJNIDMzNzcsMTEyMDQuNCBWIDEwOTU5XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2M5NWIwOVwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGg5N1wiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDI0NS4zNTEsMy42MDg5MmUtNFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNjOTViMDlcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDAsLTEsLTEsMCw0MTY2LDExMjE2LjQpXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoOThcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCAyNDUuMzUxLDMuNjA4OTJlLTRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjYzk1YjA5XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgwLC0xLC0xLDAsNDA2NywxMTIzNC40KVwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDk5XCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgMjQ1LjM1MSwzLjYwODkyZS00XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2M5NWIwOVwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMCwtMSwtMSwwLDM5NjksMTEyNTIuNClcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgxMDBcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCAyNDUuMzUxLDMuNjA4OTJlLTRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjYzk1YjA5XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgwLC0xLC0xLDAsMzg3MCwxMTI2MC40KVwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDEwMVwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDI0NS4zNTEsMy42MDg5MmUtNFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNjOTViMDlcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDAsLTEsLTEsMCw0MjY1LDExMjA0LjQpXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMTAyXCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwibSA0MzE4LDExMjAzIGMgMTk1LjA3LDAuMiAyOTQuNzUsNTguNyA0OTQsNTlcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1OS41ODMzXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDEwM1wiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIm0gMzMyNywxMTIwNSBjIDE5NS4wNywwLjIgMjk0Ljc1LDU3LjcgNDk0LDU4XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTkuNTgzM1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgxMDRcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJNIDQ5NCw1OC4wMDAxIEMgMjk4LjkyOCw1Ny44MjQ2IDE5OS4yNDgsMC4yNzE3MTcgMCwwXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTkuNTgzM1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSwwLDAsLTEsMzgyMCwxMTI2MylcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgxMDVcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCAxMzkuNDkzLDE1Ny43MVwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNjOTViMDlcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDAuNzU1OTUyLC0wLjY1NDYyNywtMC42NTQ2MjcsLTAuNzU1OTUyLDQxMTIuNTIsNzk0MS4yMilcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgxMDZcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCAyNDUuMzUxLDMuNjA4OTJlLTRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjYzk1YjA5XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgtMC4yMzMxNDQsLTAuOTcyNDQyLC0wLjk3MjQ0MiwwLjIzMzE0NCw0NDIyLjY4LDc4NjcuMTUpXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMTA3XCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgMTIwLjk5NywxNzMuMDg1XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2M5NWIwOVwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMC43NTU5NTIsLTAuNjU0NjI3LC0wLjY1NDYyNywtMC43NTU5NTIsNDIyNS4zNCw3OTIzLjU1KVwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDEwOFwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDExNy45MiwxNzkuMzQ0XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2M5NWIwOVwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMC43NTU5NTIsLTAuNjU0NjI3LC0wLjY1NDYyNywtMC43NTU5NTIsNDMyMy4wOSw3ODk3LjkxKVwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDEwOVwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDExNC4wNDEsMTYwLjIyNVwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNjOTViMDlcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEsMCwwLC0xLDMyNTgsNzc4OS4yMylcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgxMTBcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCAyMDguMzAyLDU2LjQ4NDdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjYzk1YjA5XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgwLjc1NTk1MiwtMC42NTQ2MjcsLTAuNjU0NjI3LC0wLjc1NTk1MiwzMzUxLjg5LDc4NzMuODUpXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMTExXCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgMTY2LjIxOCwxNDYuODg3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2M5NWIwOVwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMC43NTU5NTIsLTAuNjU0NjI3LC0wLjY1NDYyNywtMC43NTU5NTIsMzkwMy44NSw3OTQ3Ljc2KVwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDExMlwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDE3MS44Myw4Ny4zNzQ5XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2M5NWIwOVwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMC43NTU5NTIsLTAuNjU0NjI3LC0wLjY1NDYyNywtMC43NTU5NTIsMzQ3Ny42NSw3OTEwLjExKVwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDExM1wiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDE1Ni40MTcsMTEwLjI5OFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNjOTViMDlcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDAuNzU1OTUyLC0wLjY1NDYyNywtMC42NTQ2MjcsLTAuNzU1OTUyLDM1ODYuNzgsNzkyNi4zMilcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgxMTRcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCAxNjUuMjg0LDEzMS4zNTZcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjYzk1YjA5XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgwLjc1NTk1MiwtMC42NTQ2MjcsLTAuNjU0NjI3LC0wLjc1NTk1MiwzNjg0LjQyLDc5MzkuMzgpXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMTE1XCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgMTU1LjMsMTQzLjE5OFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNjOTViMDlcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDAuNzU1OTUyLC0wLjY1NDYyNywtMC42NTQ2MjcsLTAuNzU1OTUyLDM3OTcuODUsNzkzMi45NylcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgxMTZcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCAxNTMuMDgyLDEzOS45MzlcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjYzk1YjA5XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgwLjc1NTk1MiwtMC42NTQ2MjcsLTAuNjU0NjI3LC0wLjc1NTk1Miw0MDA0LjQ1LDc5NTUuNDQpXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMTE3XCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwibSAzMjAwLjQxLDc3ODEuMjUgYyAxMzguMDMsMTY0LjEzIDEwNzUuMTMsMzA5LjIgMTMzNS44NywtMTMuOTZcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1OS41ODMzXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDExOFwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIk0gMjkxMy42OSw5MDQ3LjQ2IDI3NTYuMiw4OTY1LjQzXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2M5NWIwOVwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgxMTlcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJtIDI5NzYuOTgsODk0OC4xMSAtMTcyLjY0LC03MC4wOVwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNjOTViMDlcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMTIwXCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwibSAzMDI3LjQ1LDg4NDUuMjYgLTE2OC4xLC02MS4wMVwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNjOTViMDlcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMTIxXCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwibSAzMDQ2Ljg5LDg2OTUuODIgLTE4MC4xLDEwLjE1XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2M5NWIwOVwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgxMjJcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJtIDI4ODguNDcsODU2OC43MiAtOTIuODEsOTcuOTVcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjYzk1YjA5XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDEyM1wiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDE1OC4zOTcsMS45OTUwMVwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNjOTViMDlcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KC0wLjQ4MzYzNywwLjg3NTI2OSwwLjg3NTI2OSwwLjQ4MzYzNywyNzc1LjI1LDg1MTIuNilcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgxMjRcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJtIDI2NjEuODEsODQ1Ni42NyAtNzUuMzksMTIzLjMxXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2M5NWIwOVwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgxMjVcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJtIDI1NjUuNTUsODQwMi42NiAtNzguMDEsMTE3Ljg5XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2M5NWIwOVwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgxMjZcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJtIDI0OTEuODcsODM0OS41NyAtOTMuNjEsOTcuNDJcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjYzk1YjA5XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDEyN1wiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIm0gMjQyOS42NCw4MjY1LjE0IC0xMTUuNDcsOTEuNjlcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjYzk1YjA5XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDEyOFwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIm0gMjM3Mi4zMiw4MTg4Ljc2IC0xMTguNjcsNzcuODFcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjYzk1YjA5XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDEyOVwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIm0gMjMxNC42Myw4MTA0LjA3IC0xMjUuMTUsNTUuMzVcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjYzk1YjA5XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDEzMFwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIm0gMjI3NS4xLDgwMzMuMTIgLTExNi40MiwyNS40MVwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNjOTViMDlcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMTMxXCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwibSAyMjc0LjA2LDc5NTMuMzEgLTEyOS44NiwtMy43NFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNjOTViMDlcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMTMyXCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwibSAyMjg0LjAxLDc4NjkuMTMgLTExNy4zNSwtMzAuMzhcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjYzk1YjA5XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDEzM1wiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIm0gMjMxMy4wMyw3NzkzLjA5IC0xMTIuMzEsLTUzLjg2XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2M5NWIwOVwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgxMzRcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCAxMy4xMjQyLDEyMy45MzFcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjYzk1YjA5XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgwLjQ4MzYzNywtMC44NzUyNjksLTAuODc1MjY5LC0wLjQ4MzYzNywyMzU0LjI5LDc3MTcuNTUpXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMTM1XCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgMjguOTkwOCwxMTMuMDU0XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2M5NWIwOVwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMC40ODM2MzcsLTAuODc1MjY5LC0wLjg3NTI2OSwtMC40ODM2MzcsMjQwMi40LDc2NDMuMzMpXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMTM2XCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgNTYuMjk0MiwxMTEuNDc3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2M5NWIwOVwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMC40ODM2MzcsLTAuODc1MjY5LC0wLjg3NTI2OSwtMC40ODM2MzcsMjQ2OS44LDc1OTAuODEpXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMTM3XCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgNzYuNjY1OCw3NS4yNDY0XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2M5NWIwOVwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMC40ODM2MzcsLTAuODc1MjY5LC0wLjg3NTI2OSwtMC40ODM2MzcsMjU0Mi4zNCw3NTQ1LjY0KVwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDEzOFwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDEwMS42NDQsNTQuMjU1OFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNjOTViMDlcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDAuNDgzNjM3LC0wLjg3NTI2OSwtMC44NzUyNjksLTAuNDgzNjM3LDI2MzMuMDUsNzUzMi42KVwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDEzOVwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDE0MC42MjUsNDMuNTkxMVwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNjOTViMDlcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDAuNDgzNjM3LC0wLjg3NTI2OSwtMC44NzUyNjksLTAuNDgzNjM3LDI3MjAuNTcsNzUzOS4zOSlcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgxNDBcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCAxNTcuNzk2LDIzLjQyNDFcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjYzk1YjA5XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgwLjQ4MzYzNywtMC44NzUyNjksLTAuODc1MjY5LC0wLjQ4MzYzNywyODA2LjM0LDc1NjIuNSlcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgxNDFcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCAxNjEuMTczLDE1Ljc1NjZcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjYzk1YjA5XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgwLjQ4MzYzNywtMC44NzUyNjksLTAuODc1MjY5LC0wLjQ4MzYzNywyOTAwLjAzLDc1ODkuNjEpXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMTQyXCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwibSAyOTgxLjI4LDc2MzQuNTEgOTguOTYsLTE2MC45XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2M5NWIwOVwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgxNDNcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJtIDMwNzEuNDIsNzY4NC4wMyA5OC45NiwtMTYwLjkxXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2M5NWIwOVwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgxNDRcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJtIDMxNTAuNzEsNzczOS4zOSAxMjUuODIsLTE5Ny42NlwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNjOTViMDlcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMTQ1XCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwiTSAxMjg1LjUzLDExMjYuNDQgQyAxMTU3LjU5LDExNDguMjkgOTI1LjU4OSwxMTcyLjYgODQ5LjM0MSwxMDQ5LjgyIDc3My4wOTQsOTI3LjA0MyA4NzkuNzQsNTc1LjU5NyA4MjguMDQ3LDM4OS43NTQgNzc5LjQ2NSwyMTUuMDk3IDYyMS40NDMsLTIzLjYwMzEgMzU4LjAzNCwxLjg4Mjc4IDIzOS45OTYsMTMuMzAzNiAtMzguNTA1MSwtNS44NTE1MSA0LjQ2MzE2LDc2NC4wMlwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjU5LjU4MzNcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KC0wLjQ4MzYzNywwLjg3NTI2OSwwLjg3NTI2OSwwLjQ4MzYzNywyNTI5LjE4LDc0MDEuNzgpXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMTQ2XCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwibSAyODcxLjI0LDkwODUgYyAtMTU5LjIzLDIwNy4wNCAtNC4yLDkwMS41MiA0MjEuMzksOTI2LjYgNjYyLjY3LDM5IDEyNjUuMDMsNjQwLjIgMTA3NC43MSw4NjMuNFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjU5LjU4MzNcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMTQ3XCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgMzc4MC4zLDMuNjA4OTJlLTRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjMzIyMzJjXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1NVwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoLTEsMCwwLDEsNzAyOC44LDc0MTMuNSlcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgxNDhcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJNIDY5NDcuMTUsMTE4MzAuNSBIIDUyNzQuNVwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiMzMjIzMmNcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjU1XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDE0OVwiIC8+XHJcbiAgICAgICAgICAgICAgIHsvKiBuU3B1RnoxICovfVxyXG4gICAgICAgICAgICAgICAgPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VXaXRoVGFiQW5kU2Nyb2xsKHt0YWJJZDondGFiLW5pY2thc2UnLCBwYXRoOiAnL2VuZ2luZWVyaW5nJywgc2Nyb2xsVG9JZDogXCJuaWMxaGVhZFwifSl9PlxyXG4gICAgICAgICAgICAgICA8dGV4dFxyXG4gICAgICAgICAgICAgICBmaWxsPVwiIzMyMjMyY1wiXHJcbiAgICAgICAgICAgICAgIGZvbnRGYW1pbHk9XCInQWN1bWluIFBybycsICdBY3VtaW4gUHJvX01TRm9udFNlcnZpY2UnLCBzYW5zLXNlcmlmXCJcclxuICAgICAgICAgICAgICAgZm9udFdlaWdodD1cIjQwMFwiXHJcbiAgICAgICAgICAgICAgIGZvbnRTaXplPVwiNDQwcHhcIlxyXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJ0cmFuc2xhdGUoNzA3NC4xLDExOTk2KVwiXHJcbiAgICAgICAgICAgICAgIGlkPVwidGV4dDE0OVwiPm5TcHVGejE8L3RleHQ+XHJcbiAgICAgICAgICAgICAgIDwvYT5cclxuICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCAxNDg1LjQyLDEyNzkuMTlcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjMzIyMzJjXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1NVwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoLTEsMCwwLDEsNjI4NS45MiwxMDI0NS41KVwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDE1MFwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIk0gODI0Mi4yLDExMDExLjUgSCA0NjUwLjVcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjMzIyMzJjXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1NVwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgxNTFcIiAvPlxyXG4gICAgICAgICAgICAgICB7LyogcGVnUk5BIHNjYWZmb2xkKi99XHJcbiAgICAgICAgICAgICAgIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlV2l0aFRhYkFuZFNjcm9sbCh7dGFiSWQ6ICd0YWItcGVncm5hJywgcGF0aDogJy9lbmdpbmVlcmluZycsIHNjcm9sbFRvSWQ6IFwicGVnUk5BXCJ9KX0+XHJcbiAgICAgICAgICAgICAgIDx0ZXh0XHJcbiAgICAgICAgICAgICAgIGZpbGw9XCIjMzIyMzJjXCJcclxuICAgICAgICAgICAgICAgZm9udEZhbWlseT1cIidBY3VtaW4gUHJvJywgJ0FjdW1pbiBQcm9fTVNGb250U2VydmljZScsIHNhbnMtc2VyaWZcIlxyXG4gICAgICAgICAgICAgICBmb250V2VpZ2h0PVwiNDAwXCJcclxuICAgICAgICAgICAgICAgZm9udFNpemU9XCI0NDBweFwiXHJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cInRyYW5zbGF0ZSg2NDA4LjU4LDEwMjY2KVwiXHJcbiAgICAgICAgICAgICAgIGlkPVwidGV4dDE1MVwiPnBlZ1JOQTwvdGV4dD48dGV4dFxyXG4gICAgICAgICAgICAgICBmaWxsPVwiIzMyMjMyY1wiXHJcbiAgICAgICAgICAgICAgIGZvbnRGYW1pbHk9XCInQWN1bWluIFBybycsICdBY3VtaW4gUHJvX01TRm9udFNlcnZpY2UnLCBzYW5zLXNlcmlmXCJcclxuICAgICAgICAgICAgICAgZm9udFdlaWdodD1cIjQwMFwiXHJcbiAgICAgICAgICAgICAgIGZvbnRTaXplPVwiNDQwcHhcIlxyXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJ0cmFuc2xhdGUoODE1NS41MiwxMDI2NilcIlxyXG4gICAgICAgICAgICAgICBpZD1cInRleHQxNTJcIj5zY2FmZm9sZDwvdGV4dD5cclxuICAgICAgICAgICAgICAgPC9hPlxyXG4gICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwibSAxMTcxNC44LDgzODEuOTggYyAxNDEsMjE5LjE5IDI4Mi4xLDQzOC4zOCAyOTguOCw1NTcuMSAxNi43LDExOC43MyAtOTEsMTM2Ljk5IC0xOTguNywxNTUuMjRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjRjYzFlXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI3My4zMzMzXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDE1MlwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIm0gMTE5ODIuNyw3ODk0LjkyIGMgMzYxLjYsNTYxLjc5IDcyMy4yLDExMjMuNTkgNzY1LjksMTQyNy44OSA0Mi44LDMwNC4yOSAtMjMzLjIsMzUxLjA5IC01MDkuMywzOTcuODhcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjRjYzFlXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI3My4zMzMzXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDE1M1wiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIm0gMTAwNDUuNCw3Nzk4LjUxIGMgMC4yLDE0MS40NCAtMjIxLjE5LDE3My44OSAtMjE2LjI1LDMwNi4yMiA0Ljk0LDEzMi4zMiA3OS43MSwyMjAuNSAxOTQuMTUsMjY5Ljc4IDgxLjcsMzUuMiAtMTA4LjgyLDE1NS43NSAxMjEuNiwxNjAuOTcgMjE2LjUsNC45MSA2Ni4yLDIyNy40NiAxMTMuNywzMDEuMzMgNDcuNiw3My44OCAxMTcsNzAuNjkgMTcxLjcsMTQxLjkgNTQuNyw3MS4yMSA4NCwyNDEuMTcgMTU2LjUsMjg1LjM3IDcyLjUsNDQuMTkgMTE5LjYsMTUuNDIgMjM2LjcsMzMuODIgMTE3LjEsMTguNCA0MzQuMiwxNzEuNTIgNDY1LjgsNzYuNTkgMzEuNywtOTQuOTMgLTkzLC0xODguOTMgLTM1LjgsLTI5OC41OCA1Ny4yLC0xMDkuNjUgNzAuOSwtMjQzLjUgMjA0LjYsLTMxNS40OSAxNTkuNCwtODUuODggMzk2LjgsLTIxNi42OCA0NTMuNywtMzE0LjIgNTYuOSwtOTcuNTMgMzAuNiwtMjE2LjU5IDYyLjQsLTMxNC44IDMxLjcsLTk4LjIgOTQuNSwtMjAwLjI5IDEyOC4yLC0yNzQuNDQgMzMuNywtNzQuMTYgNTcuOCwtODIuNDcgNzQuMSwtMTcwLjQ4IDE2LjMsLTg4LjAxIDQ1LjQsLTI3MC4zIDIzLjUsLTM1Ny41NyAtMjEuOSwtODcuMjYgLTkyLjcsLTEzNi40MyAtMTU1LC0xNjYuMDQgLTYyLjMsLTI5LjYxIC0xNjIuNCwtMTA1LjcgLTIzMC43LC0xMDIuMTcgLTY4LjMsMy41MyAtOTguMSw3Ni44MyAtMTc5LjQsMTIzLjM0IC04MS4yLDQ2LjUgLTEyNi45LDEuMjMgLTMwOC4zLDE1NS43IC03MSw2MC40OCA5MC43LDE4MC45MSAtMTIxLjcsMjAyLjQzIC0yOTkuOSwzMC4zOSAtMTk2LjEsLTE0OS4zNSAtMjczLjIsLTE4Mi40MyAtNzcsLTMzLjA3IC0xMjUuNCwtNS41NCAtMTg5LjIsLTE2LjAzIC02My45LC0xMC40OSAtMTM0LjMsLTYwLjM1IC0xOTMuOCwtNDYuOSAtNTkuNiwxMy40NCAtOTkuMiw5NS42NyAtMTYzLjUsMTI3LjU2IC02NC4yLDMxLjkgLTIwMS41LDEwMi43NCAtMjgxLjEsMTMyLjU0IC02My45LDcuMTkgLTEzOS44NiwtOTYuNjkgLTE5Ni43NCw0Ni4yOCAtMzQuMjQsODYuMDcgMTMxLjk0LDEwNy40MSAxMzguMDQsMTk1LjMgelwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCIjYmI5OTA5XCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMTU0XCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwibSAxMDY3MS40LDc5MzUuMjEgYyAtMjUuMiwxMC4zNiAtNjguMyw0OS4zNCAtNjEuNyw4NC41MiA2LjYsMzUuMTggNjIuNyw5OC4zNyAxMDEuMSwxMjYuNTggMzguNSwyOC4yIDk3LjYsMjguMjMgMTI5LjgsNDIuNjMgMzIuMywxNC40MSA2MC41LDIyLjk2IDYzLjcsNDMuOCAzLjIsMjAuODQgLTE4LjQsNjAuMTMgLTQ0LjQsODEuMjUgLTI1LjksMjEuMTIgLTg0LjMsMjEuNjkgLTExMS40LDQ1LjQ5IC0yNywyMy44IC0yNS4xLDcwLjA1IC01MC45LDk3LjMzIC0yNS44LDI3LjI3IC05MC43LDM1LjQ4IC0xMDMuOSw2Ni4zMyAtMTMuMywzMC44NiAzMy42LDg3LjI5IDI0LjYsMTE4LjggLTguOSwzMS41IC03OC43LDM2LjIxIC03OC4zLDcwLjIyIDAuMywzNCA3OC4yLDk4Ljk3IDgwLjQsMTMzLjc5IDIuMywzNC44MSAyNi41LDI5LjMxIDUxLjQsMzcuMTYgMjQuOCw3Ljg0IDkxLjEsNTEuNDQgOTcuOCw5LjkgNi42LC00MS41NCAtNjQuOCwtNTMuMjggLTczLjIsLTc4Ljg5IC04LjQsLTI1LjYxIDE4LjMsLTQxLjE4IDIyLjgsLTc0Ljc4IDQuNCwtMzMuNiAtMTkuMiwtOTcuODEgMy45LC0xMjYuODIgMjMuMSwtMjkuMDIgMTM0LjYsLTQ3LjI3IDEzNC42LC00Ny4yNyA0Ny4zLC0xNy4yNCAxMTMuNCwtNDIuNTggMTQ5LjUsLTU2LjE5IDM2LC0xMy42IDU5LjgsMC4zOSA2Ni45LC0yNS40NiA3LjEsLTI1Ljg0IC0zMi4zLC05Ni4wNiAtMjQuMywtMTI5LjYyIDgsLTMzLjU2IDc3LjIsLTQ5LjI1IDcyLjQsLTcxLjcxIC00LjgsLTIyLjQ2IC05MS4zLC0xNy4zMyAtMTAxLjMsLTYzLjA3IC0xMCwtNDUuNzMgMjcuOSwtNjcuMDUgNDQuOCwtOTAuMjggMTYuOSwtMjMuMjMgNTAuOSwtMTcuODMgNTYuNiwtNDkuMDkgNS43LC0zMS4yNiAtMzEuNCwtMTA1Ljk1IC0yMi4yLC0xMzguNDQgOS4yLC0zMi41IDg0LjIsLTE3LjcyIDc3LjQsLTU2LjUzIC02LjgsLTM4LjgxIC01My45LC01MS42OCAtOTYuNCwtMzkuMzQgLTQyLjYsMTIuMzMgLTEwNS40LDk0LjY2IC0xNTguOCwxMTMuMzQgLTUzLjQsMTguNjggLTExOS44LDIuNjcgLTE2MS42LC0xLjI3IC00MS45LC0zLjk1IC02NC4yLC0zMi43NCAtODkuMywtMjIuMzggelwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCIjYjA5MDA4XCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMTU1XCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwibSAxMTE3Ni41LDkyNzIuNzcgYyAtNDQuNSwtMTAuMyAtMi44LC0xMTQuNCAtMTQuMiwtMTU2LjM0IC0xMS4zLC00MS45NCAtMzUuMiwtNjMuNjEgLTUzLjgsLTk1LjMyIC0xOC42LC0zMS43MSAtODkuMSwtNDEuMTkgLTU3LjgsLTk0Ljk0IDMxLjQsLTUzLjc0IDEwNy4zLC00My41NiAxMzAuMiwtODAuMDEgMjIuOCwtMzYuNDYgLTEzLjIsLTEwNC4xMSA2LjksLTEzOC43MyAyMCwtMzQuNjIgODcuOCwtNjkuMzIgMTEzLjQsLTY5LjAxIDI1LjcsMC4zMSAzNi4xLDM2LjAyIDQwLjUsNzAuODcgNC40LDM0Ljg1IDAuMiw5OC41IC0xNCwxMzguMjMgLTE0LjIsMzkuNzMgLTYyLjEsNzIuNjkgLTcxLjIsMTAwLjE2IC05LDI3LjQ3IDIwLjUsMzEuNiAxNi45LDY0LjY0IC0zLjcsMzMuMDUgLTUzLjYsMTIxLjQ3IC02MCwxNTguMzUgLTYuMywzNi44OCA0LjksMTExLjc3IC0zNi45LDEwMi4xIHpcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwiI2IwOTAwOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDE1NlwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIm0gMTE4NDIuMyw3NjUyLjMyIGMgLTI1LjMsMzAuMyAtMzkuOCw4MS4xOCAtNzAuMSw5OC4xIC0zMC4yLDE2LjkzIC05My42LDE2LjA1IC0xMTEuNSwzLjQ0IC0xNy45LC0xMi42IC00MC4yLC00Ni4yNyA0LjEsLTc5LjA5IDQ0LjMsLTMyLjgyIDUzLjMsLTgxLjM3IDcwLjQsLTEyNi4wOSAxNy4yLC00NC43MiA3LjgsLTEyMC4wMyAzMi40LC0xNDIuMjMgMjQuNSwtMjIuMjEgODIuMiw5LjE3IDExNSw5IDMyLjgsLTAuMTggNTEuMiwtMjAuMjIgODEuOCwtMTAuMDcgMzAuNywxMC4xNiA3MC4xLDYzLjI2IDEwMiw3MC45OSAzMS45LDcuNzIgNzIuMywtMzUuMTcgODkuNiwtMjQuNjQgMTcuMywxMC41NCAxOS45LDU0LjgxIDE0LjQsODcuODUgLTUuNiwzMy4wMyAtMzEuNCw4OC43OSAtNDcuNSwxMTAuMzYgLTE2LjIsMjEuNTYgLTMwLjUsMjguNTggLTQ5LjQsMTkuMDIgLTE4LjksLTkuNTcgLTM5LjMsLTU5LjY4IC02NC4zLC03Ni40MSAtMjUsLTE2LjczIC01Ny44LC0zMy45MSAtODUuNywtMjMuOTUgLTI3LjgsOS45NiAtNTYsNTMuNDIgLTgxLjIsODMuNzIgelwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCIjYjA5MDA4XCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMTU3XCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwibSAxMTYxMS44LDgyOTUuMDYgYyAtMzcuMiwyMi43NSAtMTM0LjgsLTMuMDcgLTE0Mi44LDQyLjY4IC03LjUsNDIuNzYgMTAwLjQsMzMuODQgMTA5LjIsNjUuMzYgOC43LDMxLjUyIC00NS43LDg5LjQ2IC01Ni43LDEyMy43NiAtMTAuOSwzNC4yOSAtMzQuMiw3Mi41IC04LjksODIgMjUuMiw5LjUxIDEwOS40LC0zLjI4IDE2MC43LC0yNC45OCA1MS4zLC0yMS43MSAxMDAuOCwtNjAuNjUgMTQ3LC0xMDUuMjYgNDYuMSwtNDQuNjEgMTE3LjQsLTk3LjkxIDEyOS45LC0xNjIuMzkgMTIuNCwtNjQuNDggLTEwNi4zLC0xNzEuMDQgLTU1LjMsLTIyNC40OSA1MSwtNTMuNDUgMTI3LjQsLTIxMS4zNCA3Ni43LC0yMjYuOTUgLTUwLjgsLTE1LjYgLTEyNi43LDEzNy41OSAtMTg4LjgsMTU2Ljc0IC02Mi4xLDE5LjE0IC02MiwxMzQuMTIgLTkwLjUsMTc5LjcxIC0yOC41LDQ1LjU5IC00My4yLDcxLjA3IC04MC41LDkzLjgyIHpcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwiI2IwOTAwOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDE1OFwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIm0gMTE1MTkuNiw3NDY5Ljg3IGMgLTkuOSwxMi44MiAtMTAuNCw1Mi40NiAtMC43LDU4LjQ5IDkuOCw2LjAzIDQ5LjUsLTkuNSA1OS4zLC0yMi4zMiA5LjgsLTEyLjgyIDkuNiwtNDkuMjIgLTAuMywtNTQuNiAtMTAsLTUuMzkgLTQ4LjUsNS42MSAtNTguMywxOC40MyB6XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIiNiMDkwMDhcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgxNTlcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJtIDExMzgzLjgsNzkwOS45OCBjIC0xLjIsMzkuOTkgLTIwLjcsNTIuMTggLTEwLjUsNjYuOTcgMTAuMiwxNC44IDQzLjUsMjkuNDUgNzEuOCwyMS43NyAyOC4zLC03LjY3IDc3LjksLTQ1Ljg1IDk3LjksLTY3LjgyIDIwLjEsLTIxLjk3IDI2LjEsLTQ1Ljc5IDIyLjQsLTY0IC0zLjcsLTE4LjIxIC0yOS4yLC0yMC44IC00NC4zLC00NS4yNyAtMTUuMiwtMjQuNDcgLTMwLjUsLTgxLjA0IC00Ni43LC0xMDEuNTQgLTE2LjIsLTIwLjUgLTM0LjYsLTI0LjI4IC01MC4zLC0yMS40NiAtMTUuNywyLjgyIC0zNi44LDIuODEgLTQzLjgsMzguMzggLTcsMzUuNTcgNC42LDEzMi45NyAzLjUsMTcyLjk3IHpcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwiI2IwOTAwOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDE2MFwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIm0gMTA3MTUuMyw3NTkzLjE3IGMgLTguNiwyNi45NCA0MC4yLDY3LjY1IDMwLjksOTguODYgLTkuMywzMS4yIC03OC45LDY3LjM0IC04Ni43LDg4LjM3IC03LjgsMjEuMDMgMTAuOCw0Ny4xOSAzOS45LDM3LjgzIDI5LjEsLTkuMzYgOTIuOSwtNzguOCAxMzQuOSwtOTQuMDEgNDIsLTE1LjIxIDg3LjIsMTYuMzcgMTE3LDIuNzQgMjkuOCwtMTMuNjMgNzIuNCwtNTguNDEgNjEuNywtODQuNTEgLTEwLjgsLTI2LjExIC05MC40LC01My40NCAtMTI2LjIsLTcyLjExIC0zNS44LC0xOC42OCAtNjAuMSwtNDMuNzUgLTg4LjcsLTM5Ljk0IC0yOC42LDMuOCAtNzQuMSwzNS44MyAtODIuOCw2Mi43NyB6XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIiNiMDkwMDhcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgxNjFcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJtIDEyOTcyLjIsOTEzNC43MiBjIC00OC43LC04LjYzIC00Ni45LDYyLjUxIC0xMjUuNyw5NC4yNyAtNzguOSwzMS43NiAtMjY3LjIsNjMuMjMgLTM0Ny41LDk2LjMxIC04MC4zLDMzLjA3IC04MS41LDY5LjQ0IC0xMzQuMSwxMDIuMTIgLTUyLjcsMzIuNjkgLTE0Ni4zLDQ5LjE3IC0xODEuNiw5My45OCAtMzUuMyw0NC44MSAtMTguNSwxMjQgLTMwLjMsMTc0Ljg3IC0xMS44LDUwLjg2IC04LjgsMTAyLjUxIC00MC43LDEzMC4zNCAtMzIsMjcuODQgLTEwNy4zLDIzLjc3IC0xNTAuOCwzNi42NiAtNDMuNCwxMi45IC00LjcsMTM1Ljc4IC0xMTAsNDAuNzQgLTMxLjcsLTI4LjY2IC05My41LC0xMy43MyAtMTMwLjQsNDguODggLTM2LjYsMjIuNCA2OC45LC0xMS42OSAtMjQuNCwxMDUuOTEgLTI5LjksNDMuNCAtMTA2LjQsLTIyLjYgLTE5NS42LDc3LjQgLTY0LjUsNTEuNiAxNTQuNCwxODEuOCA5Ny44LDI2OC44IC0yMSw2NC41IC0xODEsNTguMyAtMTY3LDExOC4yIDE0LDU5LjggMTg5LjMsMTczLjMgMjUxLjEsMjQxLjIgNjEuOCw2Ny45IDYyLjMsMTAxLjEgMTE5LjYsMTY2LjEgNTcuMyw2NSAxNzguOSwxNDYuNCAyMjQuMSwyMjQgNDUuMiw3Ny43IDU3LDE4Ni4zIDQ2LjksMjQxLjggLTEwLjIsNTUuNSAtMTA4LjIsNDkuOCAtMTA4LDkxLjEgMC4yLDQxLjMgODEuNiw5NS42IDEwOS4xLDE1Ni41IDI3LjUsNjAuOSAxOC4yLDE1Ni4zIDU1LjksMjA4LjkgMzcuNyw1Mi43IDE3MC43LC00My40IDE3MC4yLDEwNy4xIC0wLjQsMTUwLjUgMjA4LjcsLTI2IDI0Mi43LDM4LjEgMzQuMSw2NC4xIC0xODIuNywyMjkuOSAtMzguNCwzNDYuNSA5OS45LDgwLjggNDcuNSwxMi41IDEyNC42LDQwLjIgNzcuMSwyNy43IDIzNi42LDExMC4xIDMzOC4xLDEyNi4zIDEwMS42LDE2LjIgMTYwLjMsLTM1LjggMjIwLjcsLTc3LjEgNTcuOCwtMzkuNSA1OC4xLDMzIDEyNi4yLDE1LjcgNjguMSwtMTcuNCAzNDUsLTguNiAyODIuMywtMTE5LjcgLTYyLjcsLTExMS4yIC0xNjMuMSwtNzguMiAtMTQ3LjksLTE0OC42IDguMywtMzguMyA3OCwtMTMuMyAxOTEuNSwtODIuNCA2Mi41LC0zOC4xIC0zNy43LC03OS4zIDIxOC4xLC03Ny4xIDEzMy40LC0xMy44IDU4LjUsNjUuNCAxOTEuNSw4Mi40IDYwLjcsMTYuOCA3NC41LC03Ny43IDE4Ni4xLC02My44IDg4LjIsLTMuMSAxNS4yLDQ0LjYgMjIwLjgsNzEuOCA0Ny44LDE1LjUgNDcuOCwtMzMuNyA5MywtMjQgNDUuMyw5LjggMTE2LjYsNjYuNSAxNzguMiw4Mi41IDYxLjYsMTUuOSAyOCwtMTU0LjQgMTUxLjYsLTE0OC45IDEyMy42LDUuNSAxNTQuNCwtMTUuOSAyMTUuMSwtNDQuMSA2MC42LC0yOC4yIDEyNC45LC00Ni43IDE0OC45LC0xMjUuMyAyNCwtNzguNyAtMTExLjYsLTI4OC40IC00LjksLTM0Ni41IDY1LjcsLTM1LjggLTUxLjUsLTEyNi4zIDI2LjYsLTE3Mi44IDQxLjcsLTI0LjkgNzAuNCwxNDcuNCAxODguOCwxMDEgMTE4LjQsLTQ2LjMgMTA5LjksLTE0OC42IDE2NS4zLC0yNzggNTUuNCwtMTI5LjQgMTE4LjksLTkwLjUgMTY3LjEsLTE0Ny40IDQ4LjMsLTU2LjkgLTQ5LjcsLTE2MyAtNzQuNCwtMjQyIC0yNC43LC03OSAtMzMsLTE1Ni43IC03My43LC0yMzIuMSAtNDAuOCwtNzUuMyAtMTA0LjgsLTE1My4yIC0xNzEsLTIxOS45IC02Ni4zLC02Ni43IC0xMzcuOCwtMTU5LjUgLTIyNi41LC0xODAuNCAtODguNiwtMjEgLTIzNy4zLDU3LjEgLTMwNS41LDU0LjggLTY4LjIsLTIuMiAtNDUuMiwtNzEuNSAtMTAzLjYsLTY4LjUgLTU4LjUsMyAtMTQ5LDMxLjUgLTE5NC4yLDIxLjIgLTQ1LjIsLTEwLjIgLTM3LjcsLTY4LjQgLTYwLjgsLTEwMy40IC0yMywtMzUgLTQ0LjQsLTY5LjgxIC03Ny41LC0xMDYuNjEgLTMzLjEsLTM2LjgxIC0xMDAuMiwtNjQuNzYgLTEzNy41LC05My44MyAtMzcuMywtMjkuMDcgLTUyLjIsLTYxLjIyIC04Ni41LC04MC41OSAtMzQuMiwtMTkuMzggLTgwLjQsLTIxLjM5IC0xMTkuMSwtMzUuNjUgLTM4LjcsLTE0LjI1IC04Mi4xLDMuMTYgLTExNy4yLC0xMy4yMyAtMzUsLTE2LjQgLTMxLjksLTEwNi44MSAtOTIuOSwtODUuMTUgLTYwLjksMjEuNjYgLTE1MS45LDE0OS41NCAtMjQwLjEsMTc0LjM2IC04OC4yLDI0LjgxIC0yOTEsNjEuNTQgLTI4OS4xLC0yNS40NSA3LjQsLTM1MC4zMyAtMTI3LjUsLTExMS42MiAtMjA0LjIsLTE0NS43NSAtNzYuNywtMzQuMTIgLTIyNi42LC0yNS4xNCAtMjU1LjksLTU5IC0yOS4zLC0zMy44NiAtMzkuOSwtMTAwLjQ0IC05LjYsLTE0OC4yMiAzMC4zLC00Ny43OSAyMDIuMywtOTAuNCAxOTEuNSwtMTM4LjUgMi41LC03Mi4xMyAtMTE4LjEsLTEzNy40MyAtMTY2LjgsLTE0Ni4wNiB6XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIiNmNGNjMWVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgxNjJcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJtIDEyNjY0LjgsMTAwOTQuMyBjIDMxLjEsMy41IDgzLjQsMzAuOSAxMjcuNywyNi41IDQ0LjMsLTQuNCAxMTUuMiwtNjEgMTM4LjMsLTUzIDIzLDcuOSAwLDEwMC43IDAsMTAwLjcgMCwyOS4xIDIzLDY0LjUgMCw3NC4yIC0yMy4xLDkuNyAtMTAwLjIsLTE0LjIgLTEzOC4zLC0xNS45IC0zOC4xLC0xLjggLTY1LjYsMTUuOSAtOTAuNCw1LjMgLTI0LjgsLTEwLjYgLTQyLjYsLTQ2LjggLTU4LjUsLTY4LjkgLTE2LC0yMi4xIC00MC44LC01MyAtMzcuMywtNjMuNiAzLjYsLTEwLjYgMjcuNSwtOC45IDU4LjUsLTUuMyB6XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIiNlZWMzMGNcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgxNjNcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJtIDEzMDI0LjgsMTI0NDguMSBjIDQuMSwtMjAuNCA0MC44LC01Ny43IDUzLjEsLTEwMS44IDEyLjIsLTQ0LjEgLTIuOCwtMTA4LjYgMjAuNCwtMTYyLjkgMjMuMSwtNTQuMyA3Mi43LC0xMTYgMTE4LjIsLTE2Mi44IDQ1LjYsLTQ2LjkgMTA3LjQsLTk1LjcgMTU1LC0xMTguMSA0Ny42LC0yMi40IDkzLjgsLTI4LjUgMTMwLjUsLTE2LjMgMzYuNywxMi4yIDk0LjUsNTQuMyA4OS43LDg5LjYgLTQuNywzNS4zIC03MS4zLDEwMC40IC0xMTguMiwxMjIuMSAtNDYuOSwyMS43IC0xMzYsLTE0LjkgLTE2My4yLDguMiAtMjcuMiwyMyAyNS4yLDgxLjQgMCwxMzAuMyAtMjUuMSw0OC44IC0xMDguMSwxMjQuMiAtMTUwLjksMTYyLjggLTQyLjgsMzguNyAtODQuMyw2Mi41IC0xMDYsNjkuMyAtMjEuOCw2LjcgLTMyLjYsMCAtMjguNiwtMjAuNCB6XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIiNlZWMzMGNcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgxNjRcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJtIDEzNzkyLjQsMTE5NDQuNSBjIC0xNS4xLC0xMi40IC01NS45LC0yOC40IC01My4zLC00Ny44IDIuNywtMTkuNSA0MCwtMzEgNjkuMiwtNjkuMSAyOS4zLC0zOCA4MC44LC0xMTcuNyAxMDYuNSwtMTU5LjMgMjUuNywtNDEuNiAxOC42LC03NC4zIDQ3LjksLTkwLjIgMjkuMywtMTYgMTIwLjcsLTE2LjggMTI3LjgsLTUuMyA3LjEsMTEuNSAtNjIuMSw0My4zIC04NS4yLDc0LjMgLTIzLjEsMzEgLTU2LjgsODQuMSAtNTMuMiwxMTEuNSAzLjUsMjcuNCA3NS40LDIzIDc0LjUsNTMuMSAtMC45LDMwLjEgLTQ3LDEwMC45IC03OS44LDEyNy40IC0zMi45LDI2LjYgLTkwLjYsMzEuOSAtMTE3LjIsMzEuOSAtMjYuNiwwIC0yMi4yLC0xNC4yIC0zNy4yLC0yNi41IHpcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwiI2VlYzMwY1wiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDE2NVwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIm0gMTMwNDcuNywxMDY1Ny45IGMgLTM2LjQsLTggLTEzNi41LC02LjIgLTE1OS42LC0zNy4zIC0yMywtMzEgMi43LC0xMjEuNSAyMS4zLC0xNDkuMSAxOC42LC0yNy41IDYzLjgsOCA5MC40LC0xNS45IDI2LjYsLTI0IDU1LjksLTg1LjIgNjkuMiwtMTI3LjggMTMuMiwtNDIuNiAtNS40LC05OS40IDEwLjYsLTEyNy44IDE1LjksLTI4LjQgNTMuMiwtNDkuNyA4NS4xLC00Mi42IDMxLjksNy4xIDgyLjQsNTkuNCAxMDYuNCw4NS4yIDIzLjksMjUuNyA0NS4yLDM2LjQgMzcuMiw2OS4yIC04LDMyLjggLTU5LjQsMTIxLjYgLTg1LjEsMTI3LjggLTI1LjcsNi4yIC00MS43LC05MC41IC02OS4xLC05MC41IC0yNy41LDAgLTg5LjYsNTYuOCAtOTUuOCw5MC41IC02LjIsMzMuNyA1MC41LDczLjcgNTguNSwxMTEuOCA4LDM4LjIgMS44LDk4LjUgLTEwLjYsMTE3LjIgLTEyLjQsMTguNiAtMjIuMiwtMi43IC01OC41LC0xMC43IHpcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwiI2VlYzMwY1wiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDE2NlwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIm0gMTI4NDYuMSwxMTIyNi44IGMgMjQuOSwtMzEuOSA2NC44LC01NC4xIDYzLjksLTk1LjggLTAuOSwtNDEuNyAtNTAuNiwtMTQ1LjUgLTY5LjIsLTE1NC40IC0xOC42LC04LjggLTIzLDc4LjEgLTQyLjYsMTAxLjIgLTE5LjUsMjMgLTY3LjMsOS43IC03NC40LDM3LjIgLTcuMSwyNy41IDQ3LDkzLjIgMzEuOSwxMjcuOCAtMTUuMSwzNC42IC0xMDAuMiw0NS4yIC0xMjIuNCw3OS44IC0yMi4yLDM0LjYgLTEyLjQsODEuNiAtMTAuNiwxMjcuOCAxLjcsNDYuMSA3LjksMTEwLjkgMjEuMiwxNDkgMTMuMywzOC4yIDMyLjksOTkuNCA1OC42LDc5LjkgMjUuNywtMTkuNiA4NiwtMTM3LjYgOTUuNywtMTk3IDkuOCwtNTkuNCAtNDYuMSwtMTE2LjIgLTM3LjIsLTE1OS43IDguOSwtNDMuNSA2MC4zLC02My45IDg1LjEsLTk1LjggelwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCIjZWVjMzBjXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMTY3XCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwibSAxNDk1Ny4xLDExNTMwLjIgYyAtMzYuMyw5LjcgLTE0Mi43LC00MC44IC0xOTYuOCwtMzEuOSAtNTQuMSw4LjggLTEyMC42LDkzLjkgLTEyNy43LDg1LjEgLTcuMSwtOC45IDQ5LjcsLTEwNi40IDg1LjEsLTEzOC4zIDM1LjUsLTMxLjkgMTA5LjEsLTIxLjMgMTI3LjcsLTUzLjIgMTguNiwtMzEuOSAtMzEsLTk4LjMgLTE2LC0xMzguMiAxNS4xLC0zOS45IDc2LjMsLTY5LjEgMTA2LjQsLTEwMSAzMC4yLC0zMS45IDQ4LjgsLTU0LjEgNzQuNSwtOTAuNCAyNS43LC0zNi40IDUxLjQsLTEwNC42IDc5LjgsLTEyNy42IDI4LjQsLTIzLjEgODUuMSwtMjQuOCA5MC41LC0xMC43IDUuMywxNC4yIC0zOC4yLDU1IC01OC42LDk1LjcgLTIwLjQsNDAuOCAtNDcsMTEwLjggLTYzLjgsMTQ4LjkgLTE2LjksMzguMSAtMzguMSw1NS44IC0zNy4yLDc5LjggMC44LDIzLjkgNDkuNiwzMS45IDQyLjUsNjMuOCAtNy4xLDMxLjkgLTY2LjUsOTEuMyAtODUuMSwxMjcuNiAtMTguNiwzNi4zIDE1LjEsODAuNiAtMjEuMyw5MC40IHpcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwiI2VlYzMwY1wiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDE2OFwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIm0gMTU0NDYuOCwxMTI0OC4xIGMgLTE3LjcsLTM3LjIgLTY5LjIsLTExNi4xIC05MC41LC0xNzUuNSAtMjEuMywtNTkuNCAtMjguNCwtMTMxLjIgLTM3LjMsLTE4MC44IC04LjksLTQ5LjYgLTI4LjQsLTg1LjEgLTE2LC0xMTcgMTIuNCwtMzEuOSA4Ny45LC0yOC4zIDkwLjYsLTc0LjQgMi42LC00Ni4xIC03MS45LC0xNTYuOSAtNzQuNiwtMjAyLjEgLTIuNywtNDUuMiAyMy4xLC04Ni44IDU4LjYsLTY5LjEgMzUuNSwxNy43IDEyMy40LDExNi4xIDE1NC40LDE3NS41IDMxLjEsNTkuMyA0My41LDEyNy42IDMyLDE4MC44IC0xMS42LDUzLjEgLTgyLjYsNzggLTEwMS4yLDEzOC4yIC0xOC43LDYwLjMgLTEzLjMsMTcyIC0xMC43LDIyMy40IDIuNyw1MS40IDExLjYsODQuMiAyNi43LDg1IDE1LjEsMC45IDQ3LjksLTgwLjYgNjMuOSwtNzkuNyAxNS45LDAuOSA0NS4yLDYxLjEgMzEuOSw4NS4xIC0xMy4zLDIzLjkgLTkxLjQsNTcuNiAtMTExLjgsNTguNSAtMjAuNCwwLjggMS44LC0xMC43IC0xNiwtNDcuOSB6XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIiNlZWMzMGNcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgxNjlcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJtIDE0NTM3LDEwNzc0LjUgYyAtMjAuMywtMzEuOSAtODYuOCwtNTkuNCAtMTIyLjIsLTYzLjggLTM1LjQsLTQuNSAtNzMuNSwxNC4xIC05MC4zLDM3LjIgLTE2LjgsMjMgLTI4LjMsNzAuOSAtMTAuNiwxMDEgMTcuNywzMC4xIDc5LjcsNzAuOSAxMTYuOSw3OS44IDM3LjIsOC44IDg5LjQsMCAxMDYuMiwtMjYuNiAxNi44LC0yNi42IDIwLjQsLTk1LjcgMCwtMTI3LjYgelwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCIjZWVjMzBjXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMTcwXCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwibSAxMjEwNi4zLDEwODY0LjkgYyAtMjcuNSwyMS4zIC03MS44LC0zMC4xIC02OS4yLC00Ny45IDIuNywtMTcuNyA2NC44LC0yNC44IDg1LjEsLTU4LjUgMjAuNCwtMzMuNyA4LC0xMjYuOCAzNy4zLC0xNDMuNiAyOS4zLC0xNi45IDEwMi45LDQzLjQgMTM4LjMsNDIuNSAzNS41LC0wLjkgNTAuNiwtMzAuMSA3NC41LC00Ny45IDI0LC0xNy43IDQ2LjEsLTU3LjYgNjkuMiwtNTguNSAyMy4xLC0wLjkgODcuOCwyOC40IDY5LjIsNTMuMiAtMTguNiwyNC45IC0xMjkuNSw4MS42IC0xODAuOSw5NS44IC01MS41LDE0LjIgLTg5LjYsLTM4LjEgLTEyNy43LC0xMC42IC0zOC4yLDI3LjQgLTY4LjMsMTU0LjIgLTk1LjgsMTc1LjUgelwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCIjZWVjMzBjXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMTcxXCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwibSAxMTkxNS4xLDEwNTg4LjYgYyAxMS41LC0yMS4zIDE5LjUsLTk4LjUgNS4zLC0xMjcuNyAtMTQuMSwtMjkuMyAtNjcuMywtNTQuMSAtOTAuMywtNDcuOSAtMjMsNi4yIC01MS4zLDU1LjggLTQ3LjgsODUuMSAzLjUsMjkuMyA0Ny44LDc2LjMgNjkuMSw5MC41IDIxLjIsMTQuMiA1Mi4yLDIxLjMgNjMuNywwIHpcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwiI2VlYzMwY1wiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDE3MlwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIm0gMTM3NjAuMiw5ODc2LjcyIGMgLTEyNS45LC05NC4wMiAtMjUxLjgsLTE4OC4wNCAtMzU1LjUsLTI0Ni4xNiAtMTAzLjcsLTU4LjEzIC0yMTIsLTY2LjEgLTI2Ni43LC0xMDIuNTcgLTU0LjcsLTM2LjQ3IC0yOC41LC0xMDMuNzEgLTYxLjYsLTExNi4yNSAtMzMsLTEyLjUzIC0xMTAuNSwxMi41NCAtMTM2LjcsNDEuMDMgLTI2LjIsMjguNDkgLTE3LjEsNzUuMjIgLTIwLjUsMTI5LjkyIC0zLjQsNTQuNyA2LjgsMTU2LjEzIDAsMTk4LjMgLTYuOSw0Mi4xNyAtMS4yLDQ1LjU5IC00MS4xLDU0LjcgLTM5LjgsOS4xMiAtMTQ4LjEsMTIuNTQgLTE5OC4zLDAgLTUwLjEsLTEyLjUzIC03NS4yLC00Mi4xNiAtMTAyLjUsLTc1LjIxIC0yNy40LC0zMy4wNSAtMzguOCwtMTEwLjU1IC02MS42LC0xMjMuMDkgLTIyLjgsLTEyLjUzIC01OC4xLDEyLjU0IC03NS4yLDQ3Ljg3IC0xNy4xLDM1LjMzIC0zOS45LDE0MS4zMiAtMjcuMywxNjQuMTEgMTIuNSwyMi43OSA2Mi42LC0xLjE0IDEwMi41LC0yNy4zNSAzOS45LC0yNi4yMiA4Ni42LC0xMjYuNSAxMzYuOCwtMTI5LjkyIDUwLjEsLTMuNDIgMTE5LjcsNjEuNTQgMTY0LjEsMTA5LjQgNDQuNCw0Ny44NyA3MS44LDExOS42NyAxMDIuNiwxNzcuNzkgMzAuNyw1OC4xMSAzMywxNTAuNDEgODIsMTcwLjkxIDQ5LDIwLjYgMTM0LjUsLTIzLjkgMjEyLC00Ny44IDc3LjUsLTI0IDE5Mi42LC00OSAyNTMsLTk1LjggNjAuNCwtNDYuNjggOTUuNywtMTEyLjc4IDEwOS40LC0xODQuNTggMTMuNywtNzEuOCAtMTQuOCwtMTU4LjQxIC0yNy4zLC0yNDYuMTcgLTEyLjYsLTg3Ljc1IC00Ni44LC0yMDguNTUgLTQ3LjksLTI4MC4zNSAtMS4xLC03MS44IC0yLjMsLTE0OS4yOSA0MSwtMTUwLjQzIDQzLjMsLTEuMTQgMTUwLjUsMTAzLjcgMjE4LjgsMTQzLjU5IDY4LjQsMzkuODkgMTM1LjcsODQuMzQgMTkxLjUsOTUuNzMgNTUuOCwxMS40IDExMS43LC01Ni45OCAxNDMuNiwtMjcuMzUgMzEuOSwyOS42MyAzNy42LDE1Ny4yNyA0Ny45LDIwNS4xNCAxMC4yLDQ3Ljg2IDE4LjIsNzIuOTQgMTMuNiw4Mi4wNSAtNC41LDkuMTIgLTM2LjQsLTcxLjggLTQxLC0yNy4zNSAtNC42LDQ0LjQ1IC0xMS40LDIwOS43IDEzLjcsMjk0LjAzIDI1LjEsODQuMzMgOTAsMTYyLjk5IDEzNi43LDIxMS45OSA0Ni44LDQ5IDgzLjIsNjguNCAxNDMuNiw4MiA2MC40LDEzLjcgMTU1LDExLjQgMjE4LjksMCA2My44LC0xMS40IDExNy4zLC0zOS44IDE2NC4xLC02OC4zIDQ2LjcsLTI4LjUgNzEuOCwtOTIuNCAxMTYuMiwtMTAyLjYgNDQuNSwtMTAuMyAxMTQsNDkgMTUwLjQsNDEgMzYuNSwtOCA5My41LC04Ni41OSA2OC40LC04OC44NyAtMjUsLTIuMjggLTE0Mi40LDgzLjE3IC0yMTguOCw3NS4xNyAtNzYuMywtNy45IC0xOTMuNywtNDUuNSAtMjM5LjMsLTEyMy4wNCAtNDUuNiwtNzcuNDkgLTEzLjcsLTI3My41MSAtMzQuMiwtMzQxLjg5IC0yMC41LC02OC4zOCAtNTAuMiwtNjcuMjQgLTg4LjksLTY4LjM4IC0zOC43LC0xLjE0IC05MS4yLDUxLjI4IC0xNDMuNiw2MS41NCAtNTIuNCwxMC4yNiAtMTI2LjUsLTI3LjM1IC0xNzAuOSwwIC00NC41LDI3LjM1IC02Ni4xLDg1LjQ3IC05NS44LDE2NC4xMSAtMjkuNiw3OC42MyAtMzMsMjUyLjk2IC04MiwzMDcuNjYgLTQ5LDU0LjcgLTE0OS4zLDM5LjkgLTIxMiwyMC42IC02Mi43LC0xOS40IC0xMjMuMSwtODguOTQgLTE2NC4xLC0xMzYuOCAtNDEsLTQ3Ljg3IC02OS41LC03Ny41IC04Mi4xLC0xNTAuNDMgLTEyLjUsLTcyLjk0IDE4LjMsLTIwMS43MiA2LjksLTI4Ny4yIC0xMS40LC04NS40NyAtMjUuMSwtMTY1LjI1IC03NS4zLC0yMjUuNjUgLTUwLjEsLTYwLjQgLTE4Ni45LC03Mi45MyAtMjI1LjYsLTEzNi43NSAtMzguOCwtNjMuODIgMTAuMywtMTc1LjUxIC02LjgsLTI0Ni4xNyAtMTcuMSwtNzAuNjYgLTMzLjEsLTEzMS4wNiAtOTUuOCwtMTc3Ljc4IC02Mi43LC00Ni43MyAtMTkxLjQsLTgyLjA2IC0yODAuMywtMTAyLjU3IC04OC45LC0yMC41MiAtMTc2LjcsLTMuNDIgLTI1MywtMjAuNTIgLTc2LjQsLTE3LjA5IC0xNjcuNiwtNTUuODQgLTIwNS4yLC04Mi4wNSAtMzcuNiwtMjYuMjEgLTM2LjQsLTU2Ljk4IC0yMC41LC03NS4yMiAxNiwtMTguMjMgNzUuMiwtMTcuMDkgMTE2LjMsLTM0LjE5IDQxLC0xNy4wOSA5MS4xLC0xOC4yMyAxMjkuOSwtNjguMzggMzguNywtNTAuMTQgODMuMiwtMTQzLjU5IDEwMi41LC0yMzIuNDggMTkuNCwtODguOSA2LjksLTIyOS4wNyAxMy43LC0zMDAuODcgNi45LC03MS44IDIyLjgsLTkyLjMxIDI3LjQsLTEyOS45MiA0LjUsLTM3LjYxIDI1LC01OC4xMiAwLC05NS43MyAtMjUuMSwtMzcuNjEgLTkyLjMsLTg3Ljc1IC0xNTAuNSwtMTI5LjkyIC01OC4xLC00Mi4xNyAtMTQ0LjcsLTEwMC4yOSAtMTk4LjMsLTEyMy4wOCAtNTMuNSwtMjIuOCAtNjYuMiwtMy41MyAtMTIzLC0xMy42OCAtNTYuOSwtMTAuMTUgLTE2MCwtNjAuOCAtMjE4LC00Ny4yMSAtNTgsMTMuNTkgLTEyMi4yLDYxLjQxIC0xMjkuOSwxMjguNzUgLTcuOCw2Ny4zMyAtMjQuNywxODEuNjMgMTIuOCwyNjcuMTkgMzcuNSw4NS41NiAxNTcuMywxODUuNzcgMjEyLDI0Ni4xNyA1NC43LDYwLjQgNjkuNSw3OS43NyAxMTYuMiwxMTYuMjQgNDYuNywzNi40NyAxMDAuMyw4NC4zNCAxNjQuMSwxMDIuNTcgNjMuOSwxOC4yMyAxNDkuMyw5LjEyIDIxOC44LDYuODQgNjkuNiwtMi4yOCAxNDMuNiwtNTQuNzEgMTk4LjMsLTIwLjUyIDU0LjcsMzQuMTkgMTAyLjYsMTQxLjMyIDEzMCwyMjUuNjUgMjcuMyw4NC4zNCA0MSwyMDAuNTggMzQuMiwyODAuMzYgLTYuOSw3OS43NyAtOS4yLDEzMS4wNiAtNzUuMywxOTguMyAtNjYuMSw2Ny4yNCAtMjM1LjksMTU3LjI3IC0zMjEuMywyMDUuMTMgLTg1LjUsNDcuODcgLTE5My44LDY4LjM4IC0xOTEuNSw4Mi4wNiAyLjMsMTMuNjcgMTQzLjYsMTMuNjcgMjA1LjEsMCA2MS42LC0xMy42OCA5NS44LC02Ny4yNCAxNjQuMSwtODIuMDYgNjguNCwtMTQuODEgMTc2LjcsLTMwLjc3IDI0Ni4yLC02LjgzIDY5LjUsMjMuOTMgMTM5LDk4LjAxIDE3MSwxNTAuNDMgMzEuOSw1Mi40MiAzOS44LDEyMy4wOCAyMC41LDE2NC4xMSAtMTkuNCw0MS4wMyAtMTE1LjEsMjEuNjUgLTEzNi44LDgyLjA1IC0yMS42LDYwLjQgMi4zLDE5MS40NyA2LjgsMjgwLjM2IDQuNiw4OC44OSAxOS40LDE1OC40MSAyMC42LDI1MyAxLjEsOTQuNiA0LjUsMjQyLjcgLTEzLjcsMzE0LjUgLTE4LjIsNzEuOCAtNjYuMSw3Ni40IC05NS43LDExNi4zIC0yOS43LDM5LjkgLTY3LjMsOTUuNyAtODIuMSwxMjMuMSAtMTQuOCwyNy4zIC0xOS40LDE4LjIgLTYuOCw0MSAxMi41LDIyLjggNzAuNiwzOC43IDgyLDk1LjcgMTEuNCw1NyAtMjguNSwxNzcuOCAtMTMuNywyNDYuMiAxNC45LDY4LjQgLTEwLjMsMTQ0LjEgMTAyLjYsMTY0LjFcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1OS41ODMzXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDE3M1wiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDMxLjkxMjMsMjk1LjE4OFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEsMCwwLC0xLDEzNjc1LDk4MTcuMTkpXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMTc0XCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgMjEuMjc1LDE4MC44MzZcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgtMSwwLDAsMSwxMzczMS4zLDkyNzcpXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMTc1XCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgMjEuMjc1LDMwNS44MjZcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxLDAsMCwtMSwxMzU1Niw5NzUwLjgzKVwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDE3NlwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIm0gMTM1OTAsOTE3OSB2IDIxMi43NVwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMTc3XCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgNjYuNDg0LDE1OS41NjFcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxLDAsMCwtMSwxMzMzOCw5NjA0LjU2KVwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDE3OFwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDY2LjQ4NCwxNTYuOTAyXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSwwLDAsLTEsMTM0MjAsOTM5MC45KVwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDE3OVwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDIwNy40Myw5MC40MThcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxLDAsMCwtMSwxMzE3NCw5NDkyLjQyKVwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDE4MFwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDE0Ny4xNTEsNTguNDIwMlwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEsMCwwLC0xLDEzNDA3LDkzODQuNDIpXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMTgxXCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgMTIyLjMzLDIuNjU5NDJcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxLDAsMCwtMSwxMzA0Myw5NTI0LjY2KVwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDE4MlwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIm0gMTMzOTAsOTUzNSAxNTUuNiw2LjQ5XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgxODNcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJtIDEyOTIwLDk1MjIgMTE0LjQsNTguNTFcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDE4NFwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIm0gMTMwNjEsOTU5NyAxMDksNzAuNDdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDE4NVwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIm0gMTI5MjAsOTY3MSBoIDEwMS4xXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgxODZcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCAxMDcuNTE0LDcuNzQ2NTZcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxLDAsMCwtMSwxMzA3Miw5NjcyLjc1KVwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDE4N1wiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIm0gMTI5MDMsOTgzMCAxMzkuMiwxMjYuNFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMTg4XCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwibSAxMzA2OCw5OTg3IDEwMi40LDEzM1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMTg5XCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwibSAxMzIwMyw5OTQ2IDQ1LjMsMzAuNVwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMTkwXCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwibSAxMzI4MiwxMDAwMSA1NS44LDUyLjhcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDE5MVwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIm0gMTMxODYsOTcxMyAxMzUuNiwxMTYuOTNcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDE5MlwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIm0gMTMzNjAsOTg2NyAxNDguOSwxMTcuMDFcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDE5M1wiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDE1NS41NzIsMTA4LjQ5NVwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEsMCwwLC0xLDEyNDcxLDk5MjAuNSlcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgxOTRcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCAyMDcuMjYxLDgwLjI5NjhcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxLDAsMCwtMSwxMjUyNyw5NjYwLjMpXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMTk1XCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgMTUxLjU4MywxNjQuODhcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxLDAsMCwtMSwxMjM2NCw5OTg2Ljg4KVwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDE5NlwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDUzLjE4NzIsMjEwLjA4OVwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEsMCwwLC0xLDEyNDA5LDEwMDU5LjEpXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMTk3XCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgNDIuMjE2OCwxMDcuNzg2XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSwwLDAsLTEsMTIzNjcsOTkwNC43OSlcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgxOThcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCA2Ni40ODQsMTI0LjYxXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSwwLDAsLTEsMTI0NzMsOTc5Ny42MSlcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgxOTlcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCAxMzMuNTM3LDIxMi4yODdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxLDAsMCwtMSwxMjY2MywxMDA0OC4zKVwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDIwMFwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDM3LjQ4MDUsMTExLjMxM1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEsMCwwLC0xLDEyNjEyLDk5NDcuMzEpXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMjAxXCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwibSAxMzAzNSwxMDIxNiA5NS43LDEyNVwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMjAyXCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwibSAxMzE4OSw5Mzk4IDc5LjQsODMuMzZcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDIwM1wiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIk0gMTMzNjguNSw5NTgwLjEyIDEzMjkwLDk1MDNcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDIwNFwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIm0gMTM0NzUsOTMxOCAxMDEuOSw3My43OFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMjA1XCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwibSAxMzU5Niw5NDM0IDU1LjgsMTE3LjAxXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgyMDZcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCAxMTEuNjkzLDUzLjE4NzJcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxLDAsMCwtMSwxMzgzMCw5NDQ0LjE5KVwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDIwN1wiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDE2Mi4yMjEsMTYyLjIyMVwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEsMCwwLC0xLDEzNzMxLDEwMDExLjIpXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMjA4XCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgMTU5LjU2MSwxNDguOTI0XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSwwLDAsLTEsMTM5NDEsOTgxNi45MilcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgyMDlcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCAyNDQuNjYxLDE1Ni41MjJcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxLDAsMCwtMSwxMzYyMCw5ODQ4LjUyKVwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDIxMFwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDIwNy40MywxODYuMTU1XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSwwLDAsLTEsMTM4OTQsOTY2OC4xNilcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgyMTFcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJtIDE0MTc1LDk2NjggODIuNCwyMDQuNzdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDIxMlwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIm0gMTQyODIsOTkyMSAxMDEuMSwyNzEuM1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMjEzXCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwibSAxNDUyMiw5NTUxIDIyLjYsMjk3Ljg1XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgyMTRcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJtIDE0NTQ4LDk5MjEgMzEuNywyNzEuM1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMjE1XCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgMzkuODkwMiwyMjAuNzI2XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoLTEsMCwwLDEsMTQ3ODEuOSwxMDE0MSlcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgyMTZcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJtIDE0NjQzLDk3MzIgMTE2LjIsMTg5XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgyMTdcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJtIDE0Nzc2LDk5NDYgNjcuOCwxMzEuOVwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMjE4XCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwibSAxNDYzNiw5NjY4IDE2NC45LDE1NC4yNFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMjE5XCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwibSAxNDgzMiw5ODU5IDE4MC44LDIwNC44XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgyMjBcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJtIDE1MDI0LDk3OTEgMTEwLjcsMTk2Ljc5XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgyMjFcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCA5NS43MzY4LDEzMi45NjhcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxLDAsMCwtMSwxNDg3MiwxMDE4NClcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgyMjJcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJtIDE0NjQ1LDk4NjkgMTg4LjgsNDcuODdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDIyM1wiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDIxNS40MDgsNjkuOTAzMVwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KC0xLDAsMCwxLDE0MDc5LjQsOTQxMilcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgyMjRcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCAyMDQuNzcsMTExLjY5M1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEsMCwwLC0xLDEzNTc3LDk2MzMuNjkpXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMjI1XCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwiTSAxMzI1Mi4zLDkzNjEuODIgMTMyMzksOTI5OFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMjI2XCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwibSAxMzEyNSw5MDE1IDEwMS40LDEyMy4zOVwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMjI3XCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwibSAxMzQwNCw5MjM0IDgyLjQsMTc3LjQyXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgyMjhcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJNIDEzNTI5LjUsOTY5Mi43IDEzNDg3LDk0NDVcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDIyOVwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIm0gMTMyMDMsOTA2NyBoIDQyLjZcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDIzMFwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDQxLjIyLDMuNjA4OTJlLTRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgtMSwwLDAsMSwxMzI5MC4yLDkwNjcpXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMjMxXCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgMTI4Ljk3OSw4OS4xNzA3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSwwLDAsLTEsMTI5NzUsOTAwNC4xNylcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgyMzJcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCAxMjIuMzMsOTguMzk2MlwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEsMCwwLC0xLDEzMTM4LDg4ODcuNClcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgyMzNcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCAxMTQuMzUyLDE5Mi44MDNcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxLDAsMCwtMSwxMjc2OSw5MDc0LjgpXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMjM0XCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgMTM1LjYyNywxOTMuOTk3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSwwLDAsLTEsMTI4OTksODg0NSlcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgyMzVcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCA1OC4xODcsMjUxLjI2OFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEsMCwwLC0xLDEyNzM1LDkwODkuMjcpXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMjM2XCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgMzQuNTcxNywxNzUuNzczXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoLTEsMCwwLDEsMTI4NDAuNiw4NjEwKVwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDIzN1wiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDEyNi4zMiwyMDMuMzU5XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSwwLDAsLTEsMTI1NDUsOTA4NS4zNilcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgyMzhcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCAxMzYuOTU3LDE5Ni43OTJcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxLDAsMCwtMSwxMjU4OCw5MDc0Ljc5KVwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDIzOVwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDEzNi45NTcsMjM4LjIzNlwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEsMCwwLC0xLDEyNzM0LDg4NTcuMjQpXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMjQwXCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgMTMxLjYzOCwyMjkuOTkzXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSwwLDAsLTEsMTI2OTQsODg0Mi45OSlcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgyNDFcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJNIDEyNjMyLjYsOTAyNi42NyAxMjU1Myw4ODE0XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgyNDJcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJtIDEyNDM1LDg0ODUgOTMuNCwyNzAuNjlcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDI0M1wiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDUzLjE4NzIsMjMxLjM2NFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEsMCwwLC0xLDEyNTE2LDkwOTAuMzYpXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMjQ0XCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgNDUuMjA5LDIxOS40NzlcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgtMSwwLDAsMSwxMjYyNi4yLDg1ODcpXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMjQ1XCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwibSAxMjYxMiw4Mzg4IDExMSwyNTAuNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDI0NlwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIk0gMTI4NTkuNCw4OTI4LjM5IDEyNzUzLDg3MDVcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDI0N1wiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIm0gMTI0NTIsODQzNiAxODQuMiwyMzAuMzRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDI0OFwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIm0gMTI2NzIsODcxMCAxNzIuOSwyMzUuNDhcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDI0OVwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIk0gMTMwNTMsODc5MC4wNyAxMjkyMCw4NTcyXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgyNTBcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJtIDEyNzY5LDgzMTQgMTMwLjMsMjEwLjA5XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgyNTFcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJNIDEzMTAzLjMsODU3Mi4yNCAxMjk2NSw4NDE4XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgyNTJcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJtIDEyODA2LDc5NjggMTE0LjQsMjEzLjU2XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgyNTNcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJNIDEzMDkyLjMsODQ2My40MSAxMjk0NCw4MjA4XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgyNTRcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJtIDEyNzQyLDc4NTkgNTMuMiwyMTAuMDlcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDI1NVwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIm0gMTI4MDIsNzc5MCA5MS43LDE5MS45NlwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMjU2XCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwibSAxMjkxMCw4MDEyIDkwLjQsMTY5LjYzXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgyNTdcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJtIDEyODQwLDc2NDQgNzkuOCwxOTYuNzlcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDI1OFwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDUwLjUyNzgsMzA4LjI4MlwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEsMCwwLC0xLDEyNTc2LDgxMjkuMjgpXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMjU5XCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgOTcuNzMxNSwyNTQuNTM4XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoLTEsMCwwLDEsMTI3MzUuNyw3NDk0KVwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDI2MFwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDc3LjEyMTMsMzMyLjQxOVwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEsMCwwLC0xLDEyMzg2LDgwNDUuNDIpXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMjYxXCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgNzAuNDcyOSwzMDEuOTExXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoLTEsMCwwLDEsMTI1NDEuNSw3MzY3KVwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDI2MlwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDc0LjQ2MTgsMjU2LjY1MlwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEsMCwwLC0xLDEyMjUzLDc5MjQuNjUpXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMjYzXCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgMy42MDg5MmUtNCwzMTQuMDExXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSwwLDAsLTEsMTIzNDMsNzYxNS4wMSlcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgyNjRcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCA4NS43MTE2LDMxLjgzMDNcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxLDAsMCwtMSwxMzg4MCwxMDA4Ny44KVwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDI2NVwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDg5LjIzMjgsNDMuMzUyNlwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEsMCwwLC0xLDEzOTk3LDEwMDM3LjQpXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMjY2XCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwibSAxNDA0Miw5ODkzIDUzLjUsNjMuMjlcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDI2N1wiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDEwMC43NDcsOC43NzkwN1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEsMCwwLC0xLDEyOTIxLDk1MTguNzgpXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMjY4XCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgNzQuNDYxOCwyNTYuNjUyXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSwwLDAsLTEsMTIxNTQsNzg0MC42NSlcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgyNjlcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCAyMS4yNzUsMjA4LjI0NlwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEsMCwwLC0xLDEyMjMyLDc0OTMuMjUpXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMjcwXCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwiTSAxMjE1Ny45LDc0NDAuMjkgMTIxMjYsNzI2MFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMjcxXCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgODMuMDQzMSwxMjMuNzhcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxLDAsMCwtMSwxMjA1MSw3Njg4Ljc4KVwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDI3MlwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDEyMS4wOTYsMTguNjE1NVwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEsMCwwLC0xLDEyMDAwLDc0OTIuNjIpXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMjczXCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwiTSAxNDMzMCwxMTA2MC40IFYgMTA4MTVcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjYzk1YjA5XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDI3NFwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIk0gMTQ0MjksMTEwNzcuNCBWIDEwODMyXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2M5NWIwOVwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgyNzVcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJNIDE0NTI4LDExMDk2LjQgViAxMDg1MVwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNjOTViMDlcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMjc2XCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwiTSAxNDYyNywxMTEwNC40IFYgMTA4NTlcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjYzk1YjA5XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDI3N1wiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIk0gMTQyMzIsMTEwNDguNCBWIDEwODAzXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2M5NWIwOVwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgyNzhcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCAyNDUuMzUxLDMuNjA4OTJlLTRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjYzk1YjA5XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgwLC0xLC0xLDAsMTUwMjEsMTEwNjAuNClcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgyNzlcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCAyNDUuMzUxLDMuNjA4OTJlLTRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjYzk1YjA5XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgwLC0xLC0xLDAsMTQ5MjMsMTEwNzcuNClcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgyODBcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCAyNDUuMzUxLDMuNjA4OTJlLTRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjYzk1YjA5XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgwLC0xLC0xLDAsMTQ4MjQsMTEwOTYuNClcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgyODFcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCAyNDUuMzUxLDMuNjA4OTJlLTRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjYzk1YjA5XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgwLC0xLC0xLDAsMTQ3MjUsMTExMDQuNClcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgyODJcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCAyNDUuMzUxLDMuNjA4OTJlLTRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjYzk1YjA5XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgwLC0xLC0xLDAsMTUxMjAsMTEwNDguNClcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgyODNcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJNIDEzMzM5LDExMDYxLjQgViAxMDgxNlwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNjOTViMDlcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMjg0XCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwiTSAxMzQzOCwxMTA3OS40IFYgMTA4MzRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjYzk1YjA5XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDI4NVwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIk0gMTM1MzcsMTEwOTcuNCBWIDEwODUyXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2M5NWIwOVwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgyODZcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJNIDEzNjM1LDExMTA2LjQgViAxMDg2MVwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNjOTViMDlcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMjg3XCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwiTSAxMzI0MSwxMTA0OS40IFYgMTA4MDRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjYzk1YjA5XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDI4OFwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDI0NS4zNTEsMy42MDg5MmUtNFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNjOTViMDlcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDAsLTEsLTEsMCwxNDAzMCwxMTA2MS40KVwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDI4OVwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDI0NS4zNTEsMy42MDg5MmUtNFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNjOTViMDlcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDAsLTEsLTEsMCwxMzkzMiwxMTA3OS40KVwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDI5MFwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDI0NS4zNTEsMy42MDg5MmUtNFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNjOTViMDlcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDAsLTEsLTEsMCwxMzgzMywxMTA5Ny40KVwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDI5MVwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDI0NS4zNTEsMy42MDg5MmUtNFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNjOTViMDlcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDAsLTEsLTEsMCwxMzczNCwxMTEwNi40KVwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDI5MlwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDI0NS4zNTEsMy42MDg5MmUtNFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNjOTViMDlcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDAsLTEsLTEsMCwxNDEyOSwxMTA0OS40KVwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDI5M1wiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIm0gMTQxODIsMTEwNDggYyAxOTUuMSwwLjIgMjk0LjgsNTguNyA0OTQsNTlcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjZjU3ZDIyXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1OS41ODMzXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDI5NFwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIk0gNDk1LDU4Ljk5OTggQyAyOTkuNTM0LDU4LjgyMTIgMTk5LjY1MSwwLjI3NjQgMCwwXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTkuNTgzM1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSwwLDAsLTEsMTQ2NzUsMTExMDcpXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMjk1XCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwibSAxMzE5MSwxMTA1MCBjIDE5NS4xLDAuMiAyOTQuOCw1Ny43IDQ5NCw1OFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjU5LjU4MzNcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMjk2XCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwiTSA0OTQsNTguMDAwMSBDIDI5OC45MjgsNTcuODI0NiAxOTkuMjQ4LDAuMjcxNzE3IDAsMFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjU5LjU4MzNcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEsMCwwLC0xLDEzNjg0LDExMTA4KVwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDI5N1wiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIm0gMTM3NjAuMSw5ODgwLjk0IGMgMTg3LjMsMTU1LjQ2IDEwMi4yLDM0OC4wNiAtNTQuMiwzOTEuNTYgLTE1Ni4zLDQzLjUgLTYwMy4zLC0yMyAtODgzLjcsLTEzMC41IEMgMTI1NDEuNywxMDAzNC42IDExNjg2LDk1OTYuMDkgMTE2NzksOTEyMlwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjU5LjU4MzNcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMjk4XCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgMTM5LjQ5MywxNTcuNzFcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjYzk1YjA5XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgtMC4xMDI2NTIsLTAuOTk0NzE3LC0wLjk5NDcxNywwLjEwMjY1MiwxMTg2My41LDcyMzcuODMpXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMjk5XCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgMjQ1LjM1MSwzLjYwODkyZS00XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2M5NWIwOVwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoLTAuOTMwMzA4LC0wLjM2Njc4MSwtMC4zNjY3ODEsMC45MzAzMDgsMTE5ODAuOCw2OTQxLjI4KVwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDMwMFwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDEyMC45OTcsMTczLjA4NVwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNjOTViMDlcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KC0wLjEwMjY1MiwtMC45OTQ3MTcsLTAuOTk0NzE3LDAuMTAyNjUyLDExOTEzLjgsNzEzNS4yNylcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgzMDFcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCAxMTcuOTIsMTc5LjM0NFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNjOTViMDlcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KC0wLjEwMjY1MiwtMC45OTQ3MTcsLTAuOTk0NzE3LDAuMTAyNjUyLDExOTQ4LjgsNzA0MC41KVwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDMwMlwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDIxNC4xODUsMTguODUwOVwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNjOTViMDlcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KC0wLjEwMjY1MiwtMC45OTQ3MTcsLTAuOTk0NzE3LDAuMTAyNjUyLDExMjQ4LjYsNzg1MC4yOSlcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgzMDNcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCAyMDguMzAyLDU2LjQ4NDdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjYzk1YjA5XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgtMC4xMDI2NTIsLTAuOTk0NzE3LC0wLjk5NDcxNywwLjEwMjY1MiwxMTM3Mi4xLDc4MjIuMjcpXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMzA0XCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgMTY2LjIxOCwxNDYuODg3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2M5NWIwOVwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoLTAuMTAyNjUyLC0wLjk5NDcxNywtMC45OTQ3MTcsMC4xMDI2NTIsMTE3NDkuMiw3NDEyLjUyKVwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDMwNVwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDE3MS44Myw4Ny4zNzQ5XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2M5NWIwOVwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoLTAuMTAyNjUyLC0wLjk5NDcxNywtMC45OTQ3MTcsMC4xMDI2NTIsMTE0NzMuOSw3NzQwLjA0KVwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDMwNlwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDE1Ni40MTcsMTEwLjI5OFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNjOTViMDlcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KC0wLjEwMjY1MiwtMC45OTQ3MTcsLTAuOTk0NzE3LDAuMTAyNjUyLDExNTQ5LjgsNzY1OS45NClcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgzMDdcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCAxNjUuMjg0LDEzMS4zNTZcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjYzk1YjA5XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgtMC4xMDI2NTIsLTAuOTk0NzE3LC0wLjk5NDcxNywwLjEwMjY1MiwxMTYxNi41LDc1ODcuNDUpXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMzA4XCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgMTU1LjMsMTQzLjE5OFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNjOTViMDlcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KC0wLjEwMjY1MiwtMC45OTQ3MTcsLTAuOTk0NzE3LDAuMTAyNjUyLDExNjc2LjMsNzQ5MC44NilcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgzMDlcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCAxNTMuMDgyLDEzOS45MzlcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjYzk1YjA5XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgtMC4xMDI2NTIsLTAuOTk0NzE3LC0wLjk5NDcxNywwLjEwMjY1MiwxMTgxMy4yLDczMzQuNTEpXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMzEwXCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwibSAxMTIwOS4zLDc4OTMuMjQgYyAyMTMuNywtMTguOTMgODcwLC03MDMuMzYgNzU0LjgsLTExMDIuM1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNmNTdkMjJcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjU5LjU4MzNcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMzExXCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwibSAxMTY3Ni42LDkwOTcuMjUgLTE3Ni4xLDIyLjU3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2M5NWIwOVwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgzMTJcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJtIDExNjcxLjksODk3OS41NSAtMTgxLjgsNDEuMDJcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjYzk1YjA5XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDMxM1wiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIm0gMTE2NTQuNiw4ODY2LjI5IC0xNzIuOCw0NS44OVwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNjOTViMDlcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMzE0XCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwibSAxMTU4NS4yLDg3MzIuNTEgLTE0MiwxMTEuMTZcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjYzk1YjA5XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDMxNVwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIm0gMTEzODIuNiw4NzE4LjYgLTIwLjMsMTMzLjQxXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2M5NWIwOVwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgzMTZcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCAxNTguMzk3LDEuOTk1MDFcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjYzk1YjA5XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgwLjEwMjY1MiwwLjk5NDcxNywwLjk5NDcxNywtMC4xMDI2NTIsMTEyNTcuNiw4NzM3LjE3KVwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDMxN1wiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIm0gMTExMzIuNSw4NzU2LjAyIDguNSwxNDQuMjhcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjYzk1YjA5XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDMxOFwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIm0gMTEwMjIuNyw4NzY2LjYzIDMuMiwxNDEuMzNcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjYzk1YjA5XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDMxOVwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIm0gMTA5MzEuOSw4NzY1LjEyIC0yMS4zLDEzMy40MlwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNjOTViMDlcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMzIwXCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwibSAxMDgzMi42LDg3MzEuMzIgLTQyLjUsMTQxLjJcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjYzk1YjA5XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDMyMVwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIm0gMTA3NDEuOSw4NzAxLjM1IC01MywxMzEuNjNcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjYzk1YjA5XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDMyMlwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIm0gMTA2NDYuMiw4NjY0Ljc1IC03MS4xLDExNi45XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2M5NWIwOVwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgzMjNcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJtIDEwNTczLjIsODYyOS4wNyAtODEsODcuMzNcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjYzk1YjA5XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDMyNFwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIm0gMTA1MjYuOCw4NTY0LjE0IC0xMDguNyw3MS4wN1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNjOTViMDlcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMzI1XCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwibSAxMDQ4Ni45LDg0ODkuMzUgLTExMy43LDQyLjA2XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2M5NWIwOVwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgzMjZcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJtIDEwNDY3LjMsODQxMC4zNSAtMTIyLjksMTkuOVwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNjOTViMDlcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMzI3XCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgMTMuMTI0MiwxMjMuOTMxXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2M5NWIwOVwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoLTAuMTAyNjUyLC0wLjk5NDcxNywtMC45OTQ3MTcsMC4xMDI2NTIsMTA0NTguMSw4MzI0Ljc3KVwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDMyOFwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDI4Ljk5MDgsMTEzLjA1NFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNjOTViMDlcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KC0wLjEwMjY1MiwtMC45OTQ3MTcsLTAuOTk0NzE3LDAuMTAyNjUyLDEwNDU1LjIsODIzNi4zNylcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgzMjlcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCA1Ni4yOTQyLDExMS40NzdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjYzk1YjA5XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgtMC4xMDI2NTIsLTAuOTk0NzE3LC0wLjk5NDcxNywwLjEwMjY1MiwxMDQ4MC42LDgxNTQuNzgpXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMzMwXCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgNzYuNjY1OCw3NS4yNDY0XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2M5NWIwOVwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoLTAuMTAyNjUyLC0wLjk5NDcxNywtMC45OTQ3MTcsMC4xMDI2NTIsMTA1MTQuMyw4MDc2LjI3KVwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDMzMVwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDEwMS42NDQsNTQuMjU1OFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNjOTViMDlcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KC0wLjEwMjY1MiwtMC45OTQ3MTcsLTAuOTk0NzE3LDAuMTAyNjUyLDEwNTgxLjQsODAxMy43OClcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgzMzJcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCAxNDAuNjI1LDQzLjU5MTFcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjYzk1YjA5XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgtMC4xMDI2NTIsLTAuOTk0NzE3LC0wLjk5NDcxNywwLjEwMjY1MiwxMDY1Ny4xLDc5NjkuMzgpXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMzMzXCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgMTU3Ljc5NiwyMy40MjQxXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2M5NWIwOVwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoLTAuMTAyNjUyLC0wLjk5NDcxNywtMC45OTQ3MTcsMC4xMDI2NTIsMTA3NDAuNyw3OTM5LjM5KVwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDMzNFwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDE2MS4xNzMsMTUuNzU2NlwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNjOTViMDlcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KC0wLjEwMjY1MiwtMC45OTQ3MTcsLTAuOTk0NzE3LDAuMTAyNjUyLDEwODMzLjEsNzkwOC4xNilcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgzMzVcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJtIDEwOTI1LjQsNzg5OC42MyAtMTAuNiwtMTg4LjZcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjYzk1YjA5XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1MC40MTY3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDMzNlwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIm0gMTEwMjcuNyw3ODg3LjgyIC0xMC42LC0xODguNlwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiNjOTViMDlcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjUwLjQxNjdcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMzM3XCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwibSAxMTEyNC40LDc4ODggLTkuNSwtMjM0LjExXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2M5NWIwOVwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTAuNDE2N1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgzMzhcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJNIDEyODUuNTMsMTEyNi40NCBDIDExNTcuNTksMTE0OC4yOSA5MjUuNTg5LDExNzIuNiA4NDkuMzQxLDEwNDkuODIgNzczLjA5NCw5MjcuMDQzIDg3OS43NCw1NzUuNTk3IDgyOC4wNDcsMzg5Ljc1NCA3NzkuNDY1LDIxNS4wOTcgNjIxLjQ0MywtMjMuNjAzMSAzNTguMDM0LDEuODgyNzggMjM5Ljk5NiwxMy4zMDM2IC0zOC41MDUxLC01Ljg1MTUxIDQuNDYzMTYsNzY0LjAyXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiI2Y1N2QyMlwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTkuNTgzM1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMC4xMDI2NTIsMC45OTQ3MTcsMC45OTQ3MTcsLTAuMTAyNjUyLDEwNDIxLjQsNzk2NS42OClcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgzMzlcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJtIDExODQ2LjUsODkxNS45NSBjIC0yMS4xLC03Ljk2IC0yMS43LC0zNy44OCAtNDYuNCwtNDAuOCAtMTYuMSwtMTguMTkgLTI2LjIsLTYzLjQgLTUwLjMsLTY4LjM0IC0yNC4xLC00Ljk0IC02OCwxOS41OSAtOTQuMiwzOC43IC0yNi4yLDE5LjExIC01OC4yLDQ4LjcgLTYyLjksNzUuOTQgLTQuOCwyNy4yNCA2NC40LDQ0LjI2IDM0LjUsODcuNDggLTMwLDQzLjIyIDIuOCw1Ny43NiA1OC41LDU4LjY4IDU1LjcsMC45MiA1Mi41LDc4LjcgNTUuNSwxMDIuNTQgMywyMy44NSAtMTMuNSw0Mi44IDE4LDg1LjU0IDMxLjYsNDIuNzMgLTIyLjUsNjUuNzggLTUyLjQsNzYuODkgLTMwLDExLjExIC02NC45LC0yNSAtMTI3LjQsLTEwLjI1IC0zMi40LC0xMy43MSAtMzguOCwtNTguOTggLTY2LjQsLTUzLjkzIC0yNy41LDUuMDYgLTkxLjgsMzkuOTUgLTk4LjcsODQuMjMgLTYuOSw0NC4yOCAtODcuOCw1OS4yNyAtMTA4LjgsOTguMzggLTIxLjEsMzkuMTEgLTE5LDk3LjM5IC0xNy42LDEzNi4yNiAxLjUsMzguODcgLTguMSw3MC45OSAyNi40LDk2Ljk3IDIxLjksMTYuNTUgMTQuOSwzNC41MSAzMi41LDU2LjE1IDE3LjUsMjEuNjUgLTQuNiw3OS4zMiA3Mi45LDczLjcgNzcuNSwtNS42MSA3OC41LDk2LjQxIDEwNy40LDExMi4zNiAyOSwxNS45NiAzNC4zLC0xNi43MiA1MywtMjEuNjMgMTguNywtNC45MiAyOS4yLDI1Ljg5IDUyLjgsMjUuMjUgMjMuNiwtMC42NCA0Ni45LC02OS4wOSA3My41LC04MS40OCAyNi42LC0xMi4zOSA2NC44LDUuMzEgODUuOSw3LjEyIDIxLjIsMS44MiAyNi4xLDUuMDMgNDAuOSwzLjc2IDE0LjksLTEuMjcgMzEuNSwtMTcuMzMgNDUuOCwtMjEuOTggMTQuMywtNC42NCAzMC41LDEyLjc4IDQ1LjcsNS45NyAxNS4yLC02LjggMjUuMSwtMzEuNzIgNDUuNSwtNDYuOCAyMC41LC0xNS4wOCAyNi42LC00My43NyA0MC4yLC01NC4yOCAxMy43LC0xMC41MiAtNzguMSwtMzAuNTEgMS4yLC02OC41MyAxNC4zLC0yLjM1IDM4LjMsMTguNTEgNzAuOCwxNi45NSAzMi41LC0xLjU3IDEwNi4yLC00LjggMTI0LjIsLTI2LjMzIDE3LjksLTIxLjU0IDYyLjgsLTYwLjA1IC0xNi43LC0xMDIuODkgLTE3LjYsLTkuNDUgLTQ3LjEsLTIyLjYxIC0xNS4zLC0yNS45NCAzMS44LC0zLjMzIDQzLjcsMjAuMDEgNTcuNywzLjIzIDE0LC0xNi43OCAxMy4yLC03Ny4zMSAyNi4zLC0xMDMuOTEgMTMuMSwtMjYuNiAyNS40LC0zMS41OSA1Mi40LC01NS42OSAyNi45LC0yNC4xMSA4NC4xLC01Mi45MyAxMDkuNCwtODguOTMgMjUuMywtMzUuOTkgMS43LC04MC4yNSAtMTkuNiwtOTUuMTkgLTEwMS41LC03MS4xMiAtMzEuNSwtNjQuOTggLTUxLjMsLTk3LjU4IC0xOS44LC0zMi42IDM4LjYsLTQyLjk1IC02Ny42LC05OC4wMyAtMTA2LjIsLTU1LjA4IC0xMTAuNSwzMy4xNyAtMTM3LjMsMjAuMjYgLTI2LjgsLTEyLjkyIDEzLjksLTc1Ljg5IC0yMy40LC05Ny43NCAtNDcuNywtMjcuOTkgLTk3LjYsNzQuNTcgLTExNS4yLDMzLjU0IC0xMi44LC0yOS43NCAtNDguMSwtNy43NiAtNzksLTMyLjcgLTMwLjksLTI0Ljk1IC01OS4zLDEuMDEgLTgwLjUsLTYuOTUgelwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCIjZTNiYTBiXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMzQwXCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwibSAxMTgzMC40LDkyMDYuNDUgYyA4LjEsMTUuNiA4LjQsNTYuMzggMTkuNiw1NS44NSAxMS4xLC0wLjUyIDQzLjksLTQwLjI2IDQ3LjMsLTU5IDMuMywtMTguNzQgLTE0LjgsLTM3LjEgLTI3LjMsLTUzLjQ0IC0xMi40LC0xNi4zNCAtMjkuOSwtMjkuMyAtNDcuNywtNDQuNjEgLTE3LjgsLTE1LjMyIC00OC45LC00OC43NiAtNTksLTQ3LjI4IC0xMC4xLDEuNDggLTcuNywzNy43MyAtMS40LDU2LjE4IDYuMywxOC40NiAyOCwzOS4xNiAzOS40LDU0LjU1IDExLjUsMTUuMzggMjAuOSwyMi44MyAyOS4xLDM3Ljc1IHpcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwiI2RiYjMwYlwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDM0MVwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIm0gMTIwNzguNyw5NTcyLjgzIGMgLTEyLjYsLTcuMjQgLTMyLjUsLTI0Ljk0IC01Ny4xLC0yNy43OSAtMjQuNiwtMi44NSAtNjUsNC40NSAtOTAuNiwxMC42OSAtMjUuNSw2LjI0IC02NS4yLDEzLjYgLTYyLjgsMjYuNzcgMi40LDEzLjE3IDU1LjMsNDAuMTYgNzcuNSw1Mi4yNCAyMi4xLDEyLjA4IDM2LjcsMjMuMjcgNTUuMywyMC4yMyAxOC41LC0zLjA1IDQwLC0yNy40IDU2LjEsLTM4LjQ4IDE2LC0xMS4wOCAzNi4zLC0yMC43NSAzOS45LC0yOC4wMiAzLjYsLTcuMjggLTUuNywtOC40IC0xOC4zLC0xNS42NCB6XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIiNkYmIzMGJcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgzNDJcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJtIDExNjgyLjgsOTYxMC4xNyBjIDEzLjQsLTIzLjggLTMsLTYxLjEyIC0xNS44LC04MC4wNCAtMTIuOCwtMTguOTIgLTQxLjEsLTI1Ljc5IC02MS4xLC0zMy40OSAtMTkuOSwtNy43MSAtNDIuNCwtNS4zIC01OC44LC0xMi43NCAtMTYuNCwtNy40NSAtMjEuNSwtMjguNCAtMzkuNSwtMzEuOTQgLTE3LjksLTMuNTQgLTUyLDEuMTcgLTY3LjksMTAuNjggLTE2LDkuNTIgLTI4LjksMzAuNzQgLTI3LjcsNDYuNDEgMS4zLDE1LjY2IDIxLjMsMzkuMzMgMzUuMiw0Ny41NyAxMy45LDguMjYgMzMuOSwtMi44OCA0OC4zLDEuOTIgMTQuNCw0LjgxIDI1LjcsMjEuNjQgMzguMywyNi45IDEyLjUsNS4yNyAyOC40LC05Ljg5IDM3LjEsNC43IDguOCwxNC41OCAtMy41LDg2LjE1IDE1LjQsODIuOCAxOSwtMy4zNSA4MywtMzguOTcgOTYuNSwtNjIuNzcgelwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCIjZGJiMzBiXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMzQzXCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwibSAxMTM0MC45LDk2MTMuNTcgYyAxMi40LC01LjU5IDMwLjgsLTIyLjU1IDUyLjMsLTE0Ljk4IDIxLjUsNy41NiA2My41LDQ0LjY3IDc2LjgsNjAuMzkgMTMuMiwxNS43MiAxMS4xLDMyLjM5IDIuNiwzMy45NSAtOC41LDEuNTYgLTMzLjEsLTIxLjIzIC01My42LC0yNC42IC0yMC42LC0zLjM3IC01Mi44LDEwLjQyIC02OS41LDQuMzggLTE2LjcsLTYuMDQgLTI5LjIsLTMwLjggLTMwLjgsLTQwLjYxIC0xLjcsLTkuODEgOS44LC0xMi45NSAyMi4yLC0xOC41MyB6XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIiNkYmIzMGJcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgzNDRcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJtIDE2MzE2LjQsNzMzOC40NSBjIDkuMiw0Ny45IC0xNTUsLTQ1LjAzIC0yMDIuNywtNDUuMDMgLTQ3LjYsMCAtNTEsMTkuODcgLTgzLjQsNDUuMDMgLTMyLjUsMjUuMTcgLTcxLjUsODYuNTQgLTExMS4zLDEwNS45NyAtMzkuNywxOS40MyAtOTcuNSwtMjAuOTcgLTEyNy4xLDEwLjYgLTI5LjYsMzEuNTcgLTEyLDEzMC40NyAtNTAuNCwxNzguODIgLTM4LjQsNDguMzUgLTEzNi4yLDYwLjkzIC0xODAuMSwxMTEuMjcgLTQzLjksNTAuMzQgLTUyLjUsMTI3LjYgLTgzLjUsMTkwLjc0IC0zMC45LDYzLjE1IC03OS4yLDEzOC40MyAtMTAxLjksMTg4LjEgLTIyLjgsNDkuNjcgLTMzLjYsNjguNjYgLTM0LjUsMTA5Ljk0IC0wLjksNDEuMjkgLTQuMiw5OS4zNSAyOS4yLDEzNy43NiAzMy4zLDM4LjQyIDEyMi43LDUzLjg3IDE3MC44LDkyLjczIDQ4LjIsMzguODUgNzcuMSwxMDkuMDYgMTE3LjksMTQwLjQxIDQwLjksMzEuMzQgNzcuNSwyNC43MiAxMjcuMiw0Ny42OCA0OS42LDIyLjk2IDEyMCw3NC44OSAxNzAuOCw5MC4wOCA1MC45LDE1LjE4IDY3LjEsLTg5LjI2IDEzNC40LDEuMDQgNjcuMyw5MC4yOSAxNTYuNSw0My4wNiAxOTguMSw4Ny43IDQxLjYsNDQuNjUgMjAuMywxMzIuOTEgNTEuNywxODAuMTUgMzEuMyw0Ny4yNSAxMDAuOCw1OC4wNyAxMzYuNCwxMDMuMzIgMzUuNSw0NS4yNiAzMC4yLDE2OS41NSA3Ni44LDE2OC4yMyA2Mi41LC0xLjc3IDE0My4zLC0xNTguNzMgMjAyLjcsLTE3OC44MiA1OS40LC0yMC4wOSAxMTQuNSw2Mi4yNSAxNTMuNiw1OC4yOCAzOS4xLC0zLjk3IDM5LjMsLTUzLjQzIDgwLjgsLTgyLjEzIDQxLjUsLTI4LjcgMTI0LjMsLTQzLjA1IDE2OC4yLC05MC4wNyA0NCwtNDcuMDIgNjMuNiwtMTMxLjggOTUuNCwtMTkyLjA3IDMxLjgsLTYwLjI3IDUuNSwtMTE1LjQ2IDk1LjQsLTE2OS41NSA4OS44LC01NC4wOSAxMDMuMyw3MS43NSAxNTcuNiwxMS45MiA1NC4zLC01OS44MyAxMzUuNSwtMjcyLjY1IDE2OC4yLC0zNzAuODkgMzIuNywtOTguMjQgLTUuNywtMTY0LjkyIDI3LjgsLTIxOC41NiAzMy42LC01My42NSAxMzguOSwtNDAuNCAxNzMuNSwtMTAzLjMyIDM0LjcsLTYyLjkyIDEyLjIsLTE1MC43OSAzNC41LC0yNzQuMiAyMi4zLC0xMjMuNDEgNjQuOSwtMzU4LjA5IDk5LjMsLTQ2Ni4yNiAzNC41LC0xMDguMTggOTYuMSwtMTAwLjAxIDEwNy4zLC0xODIuOCAxMS4zLC04Mi43OSAtMzEuMSwtMjMwLjcxIC0zOS43LC0zMTMuOTQgLTguNiwtODMuMjMgNTIuNywtMTQ2LjM3IC0xMS45LC0xODUuNDQgLTY0LjcsLTM5LjA4IC0zMjIuNCwtNzUuNzMgLTM3Ni4yLC00OS4wMSAtNTMuOSwyNi43MSAtNTUsMTI1LjE3IDUzLDIwOS4yOSAxMDcuOSw4NC4xMSAtMTc2LjIsMTM1LjExIC0xMjAuNiwyNDcuNyA1NS43LDExMi41OSAtMzQ3LjQsLTE0Ny45MiAtNTIzLjIsLTQ5LjAxIC0xNzUuNyw5OC45IC0xMjQuOSwtNzIuNDQgLTIyMS4yLC00OS4wMSAtMjgxLjIsNjguNDQgLTI3Ni40LC0yNy44MiAtMzY5LjUsLTE3LjIyIC05My4yLDEwLjYgLTExNS41LDQ5LjY3IC0xODkuNCw4MC44IC03NCwzMS4xMyAtMjAyLC0xNS42MiAtMjU0LjMsMTA1Ljk3IC00OCwxMTEuNSAyMjYuNCwyMTAuMTcgMjUwLjMsMzMzLjggelwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCIjZmFlOTllXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMzQ1XCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwibSAxNjI2Mi40LDgyMTAuNDEgYyAxOS43LC00My44NiAtNzcsLTEwMC43NiAtMTIzLjQsLTExNS4zNCAtNDYuNCwtMTQuNTggLTExNC44LDQuNjQgLTE1NS4yLDI3Ljg0IC00MC41LDIzLjIgLTc0LjMsODAuODcgLTg3LjYsMTExLjM2IC0xMy4zLDMwLjQ5IC0yLjcsNjIuOTcgOCw3MS41OCAxMC42LDguNjIgMjEuMiw0LjY0IDU1LjcsLTE5Ljg4IDM0LjUsLTI0LjUzIDEwMC44LC0xMTQuNjcgMTUxLjIsLTEyNy4yNyA1MC41LC0xMi41OSAxMzYsODUuODQgMTUxLjMsNTEuNzEgelwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCIjZjRjYzFlXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMzQ2XCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwibSAxNzA1Ny4yLDg0MDguOTkgYyAtMjEuMiwwLjY2IC0xMDIuNiwtMjAuNTIgLTEyMy4yLC02My41NCAtMjAuNSwtNDMuMDIgLTEzLjksLTExMy4xNyAwLC0xOTQuNTcgMTMuOSwtODEuNDEgNTcuNywtMjQ4Ljg1IDgzLjUsLTI5My44NSAyNS44LC00NS4wMSA1OS42LC0zLjk3IDcxLjUsMjMuODIgMTEuOSwyNy44IDMuMywxMDEuMjYgMCwxNDIuOTYgLTMuMyw0MS42OSAtMzIuNCw4MC4wOCAtMTkuOCwxMDcuMjEgMTIuNSwyNy4xMyA2NC45LDQ1IDk1LjMsNTUuNTkgMzAuNSwxMC41OSA0My43LDEwLjkyIDg3LjUsNy45NCA0My43LC0yLjk3IDE2My45LC03OC40OSAxNzQuOCwtMjUuODEgMTkuMiw5Mi40MyAtMjAwLjcsODEuMDggLTI1OC4zLDk3LjI5IC01Ny42LDE2LjIyIC02OS41LC0xMi41NyAtODcuNCwwIC0xNy45LDEyLjU4IC0xNS4zLDUyLjI5IC0xOS45LDc1LjQ1IC00LjYsMjMuMTYgMTcuMiw2Ni44NCAtNCw2Ny41MSB6XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIiNmNGNjMWVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgzNDdcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJtIDE2OTc3LjQsNzE5My4xIGMgLTYuNiwtNTEuNjMgNjUuNiwtMTkwLjQ1IDE2LC0yMTYuNDIgLTMwLjIsLTE1Ljc2IC05NC45LDgzLjA2IC0xMjcuNCwxNDAuOTcgLTMyLjYsNTcuOTEgLTcxLjcsMTU4LjE3IC02Ny43LDIwNi40OSA0LDQ4LjMxIDU5LjcsNTYuMjUgOTEuNSw4My4zOSAzMS45LDI3LjEzIDYyLjQsODEuNCA5OS42LDc5LjQyIDM3LjEsLTEuOTkgMTE4LjgsLTYxLjU1IDEyMy40LC05MS4zMyA0LjYsLTI5Ljc5IC03MywtNTMuNjEgLTk1LjYsLTg3LjM3IC0yMi41LC0zMy43NSAtMzMuMSwtNjMuNTMgLTM5LjgsLTExNS4xNSB6XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIiNmNGNjMWVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgzNDhcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJtIDE3NDM4LjMsNzgzMi42NyBjIC0yMi42LDcuOTQgLTExMS40LDEuMzIgLTEzOS4zLC0xNS44OCAtMjcuOCwtMTcuMiAtMzYuNCwtNjQuODQgLTI3LjgsLTg3LjMzIDguNiwtMjIuNSA1MSwtMjcuNzkgNzkuNiwtNDcuNjQgMjguNSwtMTkuODQgNTkuNiwtNTIuOTIgOTEuNCwtNzEuNDUgMzEuOSwtMTguNTIgNjMuNywtMzEuMDkgOTkuNSwtMzkuNjkgMzUuOCwtOC42IDg1LjUsLTMuMzEgMTE1LjMsLTExLjkxIDI5LjksLTguNiA0OS4xLC0xNy41NCA2My43LC0zOS43IDE0LjUsLTIyLjE2IC0zMS45LC0xMDguNSAyMy44LC05My4yOCA1NS43LDE1LjIxIDkuMywxMjEuNCAxMiwxNjAuNzYgMi42LDM5LjM3IC0yLDUzLjU5IDMuOSw3NS40MyA2LDIxLjgzIDM3LjgsMzguMzcgMzEuOSw1NS41NyAtNiwxNy4yIC0yOS4yLDUxLjYgLTY3LjcsNDcuNjMgLTM4LjQsLTMuOTcgLTEyMC45LC01My45MiAtMTYzLC03MS40NSAtNDIuMSwtMTcuNTMgLTY4LjMsLTQ2LjMxIC04OS41LC0zMy43NCAtMjEuMiwxMi41NyAtMzIuMiw4MC4zOCAtMzcuOCwxMDkuMTYgLTUuNywyOC43OCAyNi41LDU1LjU4IDQsNjMuNTIgelwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCIjZjRjYzFlXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMzQ5XCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwibSAxNzI0OCw3MDIyLjU4IGMgMCwtMjAuNSAtMzUuNywtMjkuNzUgLTU1LjYsLTIzLjggLTE5LjksNS45NSAtNDMsMjguNDMgLTYzLjYsNTkuNTEgLTIwLjUsMzEuMDggLTYzLjUsOTcuODYgLTU5LjUsMTI2Ljk2IDMuOSwyOS4wOSA1OC4yLDQ1LjYyIDgzLjQsNDcuNjEgMjUuMSwxLjk4IDYwLjksLTE3LjE5IDY3LjUsLTM1LjcxIDYuNiwtMTguNTEgLTMyLjQsLTQ2LjI5IC0yNy44LC03NS4zOCA0LjYsLTI5LjEgNTUuNiwtNzguNjkgNTUuNiwtOTkuMTkgelwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCIjZjRjYzFlXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMzUwXCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwibSAxNjQ3Ny4xLDg5MzcuMTggYyAxMy4yLC0zOS42NiA4Mi42LC0xNDAuODIgOTEuMiwtMTkwLjQgOC42LC00OS41OSAtNDEuNywtNzguMDEgLTM5LjcsLTEwNy4xIDIsLTI5LjA5IDIzLjgsLTYzLjQ3IDUxLjYsLTY3LjQ0IDI3LjcsLTMuOTcgODUuOCw0Mi4zMSAxMTQuOSw0My42NCAyOS4xLDEuMzIgNDQuOSwtNTIuMjMgNTkuNSwtMzUuNzEgMTQuNSwxNi41MyA0OC44LDEwMS44MiAyNy43LDEzNC44NyAtMjEuMSwzMy4wNiAtMTIyLjksMjEuMTYgLTE1NC42LDYzLjQ3IC0zMS43LDQyLjMyIC0xMi41LDE1Ni4wMyAtMzUuNywxOTAuNDEgLTIzLjEsMzQuMzggLTgzLjksMjEuODEgLTEwMywxNS44NiAtMTkuMiwtNS45NSAtMjUuMSwtNy45MyAtMTEuOSwtNDcuNiB6XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIiNmNGNjMWVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgzNTFcIiAvPlxyXG4gICAgICAgICAgICAgICB7LyogTUxIMWRuICovfVxyXG4gICAgICAgICAgICAgICA8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZVdpdGhUYWJBbmRTY3JvbGwoe3RhYklkOid0YWItcGUtc3lzdGVtcycsIHBhdGg6ICcvZW5naW5lZXJpbmcnLCBzY3JvbGxUb0lkOiBcInBlLXN5c3RlbXMtaGVhZGVyXCJ9KX0+XHJcbiAgICAgICAgICAgICAgIDx0ZXh0XHJcbiAgICAgICAgICAgICAgIGZpbGw9XCIjMzIyMzJjXCJcclxuICAgICAgICAgICAgICAgZm9udEZhbWlseT1cIidBY3VtaW4gUHJvJywgJ0FjdW1pbiBQcm9fTVNGb250U2VydmljZScsIHNhbnMtc2VyaWZcIlxyXG4gICAgICAgICAgICAgICBmb250V2VpZ2h0PVwiNDAwXCJcclxuICAgICAgICAgICAgICAgZm9udFNpemU9XCI0NDBweFwiXHJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cInRyYW5zbGF0ZSgxNTkzMy43LDk5NzEpXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJ0ZXh0MzUxXCI+TUxIMWRuPC90ZXh0PlxyXG4gICAgICAgICAgICAgICA8L2E+XHJcblxyXG4gICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgMy42MDg5MmUtNCw2ODcuOTk3XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzMyMjMyY1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTVcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEsMCwwLC0xLDE2NzQwLjUsOTUzMi41KVwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDM1MlwiIC8+XHJcbiAgICAgICAgICAgICAgIHsvKiBMYSgxLTE5NCkgKi99XHJcbiAgICAgICAgICAgICAgIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlV2l0aFRhYkFuZFNjcm9sbCh7dGFiSWQ6J3RhYi1wZS1zeXN0ZW1zJywgcGF0aDogJy9lbmdpbmVlcmluZycsIHNjcm9sbFRvSWQ6IFwicGUtc3lzdGVtcy1oZWFkZXJcIn0pfT5cclxuICAgICAgICAgICAgICAgPHRleHRcclxuICAgICAgICAgICAgICAgZmlsbD1cIiMzMjIzMmNcIlxyXG4gICAgICAgICAgICAgICBmb250RmFtaWx5PVwiJ0FjdW1pbiBQcm8nLCAnQWN1bWluIFByb19NU0ZvbnRTZXJ2aWNlJywgc2Fucy1zZXJpZlwiXHJcbiAgICAgICAgICAgICAgIGZvbnRXZWlnaHQ9XCI0MDBcIlxyXG4gICAgICAgICAgICAgICBmb250U2l6ZT1cIjQ0MHB4XCJcclxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwidHJhbnNsYXRlKDc5MTguMzYsOTUwMilcIlxyXG4gICAgICAgICAgICAgICBpZD1cInRleHQzNTJcIj5MYSgxPC90ZXh0Pjx0ZXh0XHJcbiAgICAgICAgICAgICAgIGZpbGw9XCIjMzIyMzJjXCJcclxuICAgICAgICAgICAgICAgZm9udEZhbWlseT1cIidBY3VtaW4gUHJvJywgJ0FjdW1pbiBQcm9fTVNGb250U2VydmljZScsIHNhbnMtc2VyaWZcIlxyXG4gICAgICAgICAgICAgICBmb250V2VpZ2h0PVwiNDAwXCJcclxuICAgICAgICAgICAgICAgZm9udFNpemU9XCI0NDBweFwiXHJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cInRyYW5zbGF0ZSg4NzEwLjIzLDk1MDIpXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJ0ZXh0MzUzXCI+LTwvdGV4dD48dGV4dFxyXG4gICAgICAgICAgICAgICBmaWxsPVwiIzMyMjMyY1wiXHJcbiAgICAgICAgICAgICAgIGZvbnRGYW1pbHk9XCInQWN1bWluIFBybycsICdBY3VtaW4gUHJvX01TRm9udFNlcnZpY2UnLCBzYW5zLXNlcmlmXCJcclxuICAgICAgICAgICAgICAgZm9udFdlaWdodD1cIjQwMFwiXHJcbiAgICAgICAgICAgICAgIGZvbnRTaXplPVwiNDQwcHhcIlxyXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJ0cmFuc2xhdGUoODg3My4zLDk1MDIpXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJ0ZXh0MzU0XCI+MTk0KTwvdGV4dD5cclxuICAgICAgICAgICAgICAgPC9hPlxyXG4gICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwiTSAxMDU0Myw3NDQ3LjUgSCA5Njg1LjVcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjMzIyMzJjXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1NVwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgzNTRcIiAvPlxyXG4gICAgICAgICAgICAgICB7LyogUEU2YyByZXZlcnNlIHRyYW5zY3JpcHRhc2UgKi99XHJcbiAgICAgICAgICAgICAgIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlV2l0aFRhYkFuZFNjcm9sbCh7dGFiSWQ6J3RhYi1wZS1zeXN0ZW1zJywgcGF0aDogJy9lbmdpbmVlcmluZycsIHNjcm9sbFRvSWQ6IFwicGUtc3lzdGVtcy1oZWFkZXJcIn0pfT5cclxuICAgICAgICAgICAgICAgPHRleHRcclxuICAgICAgICAgICAgICAgZmlsbD1cIiMzMjIzMmNcIlxyXG4gICAgICAgICAgICAgICBmb250RmFtaWx5PVwiJ0FjdW1pbiBQcm8nLCAnQWN1bWluIFByb19NU0ZvbnRTZXJ2aWNlJywgc2Fucy1zZXJpZlwiXHJcbiAgICAgICAgICAgICAgIGZvbnRXZWlnaHQ9XCI0MDBcIlxyXG4gICAgICAgICAgICAgICBmb250U2l6ZT1cIjQ0MHB4XCJcclxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwidHJhbnNsYXRlKDcxMTcuMDcsNzMzNilcIlxyXG4gICAgICAgICAgICAgICBpZD1cInRleHQzNTVcIj5QRTZjIHJldmVyc2UgPC90ZXh0Pjx0ZXh0XHJcbiAgICAgICAgICAgICAgIGZpbGw9XCIjMzIyMzJjXCJcclxuICAgICAgICAgICAgICAgZm9udEZhbWlseT1cIidBY3VtaW4gUHJvJywgJ0FjdW1pbiBQcm9fTVNGb250U2VydmljZScsIHNhbnMtc2VyaWZcIlxyXG4gICAgICAgICAgICAgICBmb250V2VpZ2h0PVwiNDAwXCJcclxuICAgICAgICAgICAgICAgZm9udFNpemU9XCI0NDBweFwiXHJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cInRyYW5zbGF0ZSg3MTM5LjQzLDc4NjQpXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJ0ZXh0MzU2XCI+dHJhbnNjcmlwdGFzZTwvdGV4dD5cclxuICAgICAgICAgICAgICAgPC9hPlxyXG4gICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgODA2LjI2NywzLjYwODkyZS00XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzMyMjMyY1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTVcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KC0xLDAsMCwxLDEwNDkwLjgsODUwOS41KVwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDM1NlwiIC8+XHJcbiAgICAgICAgICAgICAgIHsvKiBQQ1MvUlRUICovfVxyXG4gICAgICAgICAgICAgICA8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZVdpdGhUYWJBbmRTY3JvbGwoe3RhYklkOid0YWItcGVncm5hJywgcGF0aDogJy9lbmdpbmVlcmluZycsIHNjcm9sbFRvSWQ6IFwicGVncm5hLWhlYWRlclwifSl9PlxyXG4gICAgICAgICAgICAgICA8dGV4dFxyXG4gICAgICAgICAgICAgICBmaWxsPVwiIzMyMjMyY1wiXHJcbiAgICAgICAgICAgICAgIGZvbnRGYW1pbHk9XCInQWN1bWluIFBybycsICdBY3VtaW4gUHJvX01TRm9udFNlcnZpY2UnLCBzYW5zLXNlcmlmXCJcclxuICAgICAgICAgICAgICAgZm9udFdlaWdodD1cIjQwMFwiXHJcbiAgICAgICAgICAgICAgIGZvbnRTaXplPVwiNDQwcHhcIlxyXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJ0cmFuc2xhdGUoNzgwMi41OSw4NjY3KVwiXHJcbiAgICAgICAgICAgICAgIGlkPVwidGV4dDM1N1wiPlBWUy9SVFQ8L3RleHQ+XHJcbiAgICAgICAgICAgICAgIDwvYT5cclxuICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDQzMjQuMDIsMy42MDg5MmUtNFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiMzMjIzMmNcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjU1XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgtMSwwLDAsMSwxNDMzMC41LDEwMTU2LjUpXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwZWdSTkFzY2FmZm9sZFwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIk0gMCwwIDIwNDYuNzksMy42MDg5MmUtNFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiMzMjIzMmNcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjU1XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgtMSwwLDAsMSwxMTkzMy4zLDkzNDMuNSlcIlxyXG4gICAgICAgICAgICAgICBpZD1cIkxhbGluZVwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIk0gMTM1ODQsMTE4MjAuNSBIIDExNzkwLjVcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjMzIyMzJjXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1NVwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgzNTlcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJNIDAsMCAzOTM0Ljg0LDMuNjA4OTJlLTRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2U9XCIjMzIyMzJjXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCI1NVwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZU1pdGVybGltaXQ9XCI4XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoLTEsMCwwLDEsMTM3MDguMywxMTAxMS41KVwiXHJcbiAgICAgICAgICAgICAgIGlkPVwic3BhY2VybGluZVwiIC8+XHJcbiAgICAgICAgICAgICAgIHsvKiBTcGFjZXIgKi99XHJcbiAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICA8dGV4dFxyXG4gICAgICAgICAgICAgICBmaWxsPVwiIzMyMjMyY1wiXHJcbiAgICAgICAgICAgICAgIGZvbnRGYW1pbHk9XCInQWN1bWluIFBybycsICdBY3VtaW4gUHJvX01TRm9udFNlcnZpY2UnLCBzYW5zLXNlcmlmXCJcclxuICAgICAgICAgICAgICAgZm9udFdlaWdodD1cIjQwMFwiXHJcbiAgICAgICAgICAgICAgIGZvbnRTaXplPVwiNDQwcHhcIlxyXG4gICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJ0cmFuc2xhdGUoODI4My44MSwxMTE2NilcIlxyXG4gICAgICAgICAgICAgICBpZD1cInRleHQzNjBcIj5TcGFjZXI8L3RleHQ+XHJcbiAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICB7LyogblBsbUNhc1ggKi99XHJcbiAgICAgICAgICAgICAgIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlV2l0aFRhYkFuZFNjcm9sbCh7dGFiSWQ6J3RhYi1uaWNrYXNlJywgcGF0aDogJy9lbmdpbmVlcmluZycsIHNjcm9sbFRvSWQ6IFwibmlja2FzZS1oZWFkZXJcIn0pfT5cclxuICAgICAgICAgICAgICAgPHRleHRcclxuICAgICAgICAgICAgICAgZmlsbD1cIiMzMjIzMmNcIlxyXG4gICAgICAgICAgICAgICBmb250RmFtaWx5PVwiJ0FjdW1pbiBQcm8nLCAnQWN1bWluIFByb19NU0ZvbnRTZXJ2aWNlJywgc2Fucy1zZXJpZlwiXHJcbiAgICAgICAgICAgICAgIGZvbnRXZWlnaHQ9XCI0MDBcIlxyXG4gICAgICAgICAgICAgICBmb250U2l6ZT1cIjQ0MHB4XCJcclxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwidHJhbnNsYXRlKDk2NzMuNSwxMTk3MClcIlxyXG4gICAgICAgICAgICAgICBpZD1cInRleHQzNjFcIj5uUGxtQ2FzWDwvdGV4dD5cclxuICAgICAgICAgICAgICAgPC9hPlxyXG4gICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwiTSA3NzIzLjQ0LDg1MTQuNSBIIDI4MDguNVwiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZT1cIiMzMjIzMmNcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VXaWR0aD1cIjU1XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD1cIjhcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDM2MVwiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIm0gMzIxOC43Miw5MDAyLjY2IGMgLTQuNzYsLTIyLjEgMjAuMTMsLTM4LjczIDkuMTksLTYxLjEyIDYuNTgsLTIzLjQgMzkuMTUsLTU2LjM0IDMwLjI3LC03OS4yNiAtOC44NywtMjIuOTMgLTUzLjI3LC00Ni42IC04My41MSwtNTguMyAtMzAuMjQsLTExLjY5IC03Mi40NSwtMjIuNiAtOTcuOTIsLTExLjg2IC0yNS40NywxMC43NSAtMi4zNiw3OC4xNiAtNTQuOTEsNzYuMzQgLTUyLjU2LC0xLjgyIC00Ny4wMiwzMy42NyAtMTcuNjcsODEgMjkuMzUsNDcuMzMgLTM3Ljc5LDg2LjcxIC01Ni4yMSwxMDIuMTUgLTE4LjQyLDE1LjQ0IC00My4zMiwxMS43OCAtNjIuMTksNjEuNDQgLTE4Ljg2LDQ5LjY3IC02Ny41LDE2LjY3IC05My4wNSwtMi41MyAtMjUuNTUsLTE5LjE5IC0xNC4wOCwtNjguMDkgLTYwLjI3LC0xMTIuNjQgLTYuMDUsLTM0Ljc0IDI4LjU3LC02NC41OSA5LjQzLC04NS4wMSAtMTkuMTQsLTIwLjQyIC04My4yOSwtNTUuNjYgLTEyNC4yNiwtMzcuNDkgLTQwLjk3LDE4LjE2IC05Ny4zMywtNDEuNzUgLTE0MS42MSwtMzguMyAtNDQuMjgsMy40NSAtOTIuMTksMzYuNyAtMTI0LjA5LDU4Ljk2IC0zMS45LDIyLjI3IC02NC4xLDMxLjU2IC02Ny4zMSw3NC42MSAtMi4wNCwyNy40MSAtMjAuOTUsMzEuMjIgLTI5LjY0LDU3LjcxIC04LjcsMjYuNDkgLTY5LjE2LDM5LjExIC0yMi41MywxMDEuMjIgNDYuNjMsNjIuMTEgLTM4LjYzLDExOC4xNSAtMzYuMzcsMTUxLjE0IDIuMjUsMzIuOTkgMzIuNiwxOS43NyA0Ni44NSwzMi44NCAxNC4yNSwxMy4wNyAtNS45OSwzOC41NSA3LjMzLDU4LjA3IDEzLjMxLDE5LjUyIDgzLjQ5LDIuMSAxMDguMjksMTcuNzQgMjQuOCwxNS42NSAzMC41OSw1Ny4zNyA0MC41LDc2LjEzIDkuOTEsMTguNzYgOS44NiwyNC42MiAxOC45NywzNi40MyA5LjEsMTEuODEgMzEuNjEsMTcuMSA0My4yMywyNi41OSAxMS42Myw5LjQ5IDUuNzcsMzIuNTcgMTkuNzIsNDEuNjggMTMuOTQsOS4xIDQwLjIyLDMuODkgNjMuOTgsMTIuOTUgMjMuNzYsOS4wNiA1MS4xNiwtMS4zNiA2Ny4zOSw0LjQzIDE2LjIzLDUuOCAtMTYuNTgsLTgyLjE2IDU4LjI3LC0zNi4wNyA5LjcyLDEwLjc2IDUuMTUsNDIuMjEgMjQuMDQsNjguNjkgMTguOSwyNi40OSA2MS41Miw4Ni43OCA4OS4zMyw5MC4yIDI3LjgxLDMuNDIgODQuNSwyMC4zOCA3Ny41MiwtNjkuNjcgLTEuNTUsLTE5Ljg4IC02LjQ0LC01MS44MiAxMy41NSwtMjYuODggMTkuOTksMjQuOTMgNi43OSw0Ny41NCAyOC40OCw1MC4yMyAyMS42OCwyLjcgNzIuMTYsLTMwLjcxIDEwMS42MiwtMzQuMDggMjkuNDcsLTMuMzYgNDAuMzEsNC4yNyA3NS4xOCwxMy45MiAzNC44Niw5LjY0IDkwLjA1LDQyLjE2IDEzMy45OSw0My45MyA0My45NCwxLjc3IDY4LjQsLTQyIDY5LjQzLC02OC4wMiA0LjkyLC0xMjMuODIgMzcuNjIsLTYxLjYyIDU0LjMyLC05NS45MiAxNi43MSwtMzQuMjkgNTcuMDQsOS4yOCA0NS45MSwtMTA5LjgzIC0xMS4xMywtMTE5LjExIC04Ny43LC03NS4wMyAtOTEuMzIsLTEwNC41NCAtMy42MywtMjkuNTEgNzEuMzUsLTI5LjM0IDY5LjU1LC03Mi41NCAtMi4zMSwtNTUuMzMgLTExNS41NSwtNDEuNzkgLTkwLjU4LC03OC44IDE4LjEsLTI2LjgzIC0xOS40NiwtNDQuNiAtMTUuMTksLTg0LjA4IDQuMjYsLTM5LjQ4IC0zMi45NiwtNDkuMzcgLTM3LjcxLC03MS40NiB6XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIiNlM2JhMGJcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgzNjJcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJtIDI5NjUuNjYsOTE0Ni4yNCBjIC04Ljc0LDE1LjI2IC00Mi44NCwzNy42MSAtMzYuMzcsNDYuNyA2LjQ4LDkuMDkgNTcuNjQsMTUuMTYgNzUuMjEsNy44NCAxNy41NywtNy4zMyAyMy4yMywtMzIuNDUgMzAuMjIsLTUxLjc5IDYuOTgsLTE5LjM1IDguNDMsLTQxLjA0IDExLjY5LC02NC4yOSAzLjI2LC0yMy4yNSAxNC41NCwtNjcuNTQgNy44NCwtNzUuMiAtNi42OSwtNy42NyAtMzUuOTIsMTMuOSAtNDguMDEsMjkuMjEgLTEyLjA5LDE1LjMyIC0xNy43Nyw0NC43NiAtMjQuNTQsNjIuNjggLTYuNzYsMTcuOTIgLTcuOTEsMjkuOTEgLTE2LjA0LDQ0Ljg1IHpcIlxyXG4gICAgICAgICAgICAgICBmaWxsPVwiI2RiYjMwYlwiXHJcbiAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDM2M1wiIC8+PHBhdGhcclxuICAgICAgICAgICAgICAgZD1cIm0gMjc5MS44Niw5NTUzLjI4IGMgLTAuNzEsLTE0LjQ4IDMuNDEsLTQwLjggLTcuNTEsLTYzLjAzIC0xMC45MSwtMjIuMjQgLTM4LjksLTUyLjI3IC01Ny45OCwtNzAuNCAtMTkuMDksLTE4LjEyIC00Ni43NiwtNDcuNTQgLTU2LjUyLC0zOC4zNyAtOS43NSw5LjE3IC0zLjg0LDY4LjI3IC0yLjAzLDkzLjQxIDEuODIsMjUuMTQgMC4zMSw0My40OCAxMi45MSw1Ny40NSAxMi42LDEzLjk3IDQ0LjczLDE4LjkgNjIuNzEsMjYuMzcgMTcuOTgsNy40NiAzNy4xMSwxOS4zMyA0NS4xOCwxOC40MyA4LjA3LC0wLjkgMy45NSwtOS4zOCAzLjI0LC0yMy44NiB6XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIiNkYmIzMGJcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgzNjRcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJtIDI1NDYuMjgsOTI0MC41MiBjIDI3LjI5LC0xLjU3IDQ5LjgsLTM1LjU2IDU4Ljc5LC01Ni41NiA4Ljk4LC0yMS4wMSAtMC41NSwtNDguNTEgLTQuODgsLTY5LjQ5IC00LjMzLC0yMC45OCAtMTguNTMsLTM4LjU5IC0yMS4xMywtNTYuMzkgLTIuNiwtMTcuODEgMTIuMjQsLTMzLjQ4IDUuNTMsLTUwLjQ1IC02LjcsLTE2Ljk3IC0yOS4xMywtNDMuMTMgLTQ1Ljc1LC01MS4zOCAtMTYuNjMsLTguMjUgLTQxLjQ5LC03LjY3IC01My45OCwxLjg2IC0xMi41LDkuNTMgLTIxLjYsMzkuMTMgLTIxLjAxLDU1LjI5IDAuNTksMTYuMTcgMjAuNzYsMjYuOTUgMjQuNTMsNDEuNjkgMy43NywxNC43MyAtNC4zLDMzLjMgLTEuOTMsNDYuNzIgMi4zNywxMy40MiAyMy42OCwxOC41MiAxNi4xNSwzMy43OCAtNy41MiwxNS4yNiAtNzQuMzYsNDMuNjYgLTYxLjI5LDU3Ljc3IDEzLjA2LDE0LjEyIDc3LjY3LDQ4LjcyIDEwNC45Nyw0Ny4xNiB6XCJcclxuICAgICAgICAgICAgICAgZmlsbD1cIiNkYmIzMGJcIlxyXG4gICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhdGgzNjVcIiAvPjxwYXRoXHJcbiAgICAgICAgICAgICAgIGQ9XCJtIDIzNTguNDcsODk1NC44MyBjIDExLjQyLDcuNDIgMzUuNjMsMTMuNzEgNDAuOSwzNS45IDUuMjcsMjIuMTggLTMuMjIsNzcuNTYgLTkuMjgsOTcuMiAtNi4wNywxOS42NCAtMjEuMiwyNi45MiAtMjcuMTEsMjAuNjEgLTUuOSwtNi4zIC0wLjA3LC0zOS4zNiAtOC4zNCwtNTguNDQgLTguMjcsLTE5LjA4IC0zNy4zLC0zOC43MSAtNDEuMjYsLTU2LjA0IC0zLjk3LC0xNy4zMiAxMC4xMSwtNDEuMjIgMTcuNDcsLTQ3LjkxIDcuMzYsLTYuNjkgMTYuMiwxLjI1IDI3LjYyLDguNjggelwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCIjZGJiMzBiXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgaWQ9XCJwYXRoMzY2XCIgLz48cGF0aFxyXG4gICAgICAgICAgICAgICBkPVwiTSAwLDAgNDgwNy4wOSwzLjYwODkyZS00XCJcclxuICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzMyMjMyY1wiXHJcbiAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoPVwiNTVcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0PVwiOFwiXHJcbiAgICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KC0xLDAsMCwxLDc4NDkuNTksOTM0My41KVwiXHJcbiAgICAgICAgICAgICAgIGlkPVwicGF0aDM2N1wiIC8+PC9nPjwvc3ZnPlxyXG4gICAgICAgIFxyXG4pO1xyXG5cclxuICAgIFxyXG59IiwgImltcG9ydCBSZWFjdCwgeyB1c2VTdGF0ZSwgdXNlRWZmZWN0IH0gZnJvbSBcInJlYWN0XCI7XHJcbmltcG9ydCBiaWJ0ZXhQYXJzZSBmcm9tICdiaWJ0ZXgtcGFyc2VyLWpzJztcclxuXHJcbmludGVyZmFjZSBCaWJFbnRyeSB7XHJcbiAgRU5UUllUWVBFOiBzdHJpbmc7XHJcbiAgVElUTEU/OiBzdHJpbmc7XHJcbiAgQVVUSE9SPzogc3RyaW5nO1xyXG4gIGpvdXJuYWw/OiBzdHJpbmc7XHJcbiAgdm9sdW1lPzogc3RyaW5nO1xyXG4gIHBhZ2VzPzogc3RyaW5nO1xyXG4gIHllYXI/OiBzdHJpbmc7XHJcbiAgZG9pPzogc3RyaW5nO1xyXG4gIFtrZXk6IHN0cmluZ106IGFueTtcclxufVxyXG5cclxuaW50ZXJmYWNlIEJpYnRleFBhcnNlclByb3BzIHtcclxuICBiaWJ0ZXhTb3VyY2VzOiBzdHJpbmdbXTsgLy8gQWNjZXB0IGFuIGFycmF5IG9mIEJpYlRlWCBzdHJpbmdzXHJcbiAgc3BlY2lhbD86IHN0cmluZyxcclxuICBzdGFydD86IG51bWJlclxyXG59XHJcblxyXG5cclxuZnVuY3Rpb24gZm9ybWF0UGFnZXMocGFnZXM6IHN0cmluZyB8IHVuZGVmaW5lZCk6IEpTWC5FbGVtZW50IHwgbnVsbCB7XHJcbiAgICAvLyBDaGVjayBpZiBwYWdlcyBpcyBwcm92aWRlZCBhbmQgaXMgYSBub24tZW1wdHkgc3RyaW5nXHJcbiAgICBpZiAocGFnZXMgJiYgcGFnZXMubGVuZ3RoID4gMCkge1xyXG4gICAgICAgIC8vIENoZWNrIGZvciBjb21tb24gcGFnZSByYW5nZSBzZXBhcmF0b3JzXHJcbiAgICAgICAgY29uc3QgcGFnZVJhbmdlUmVnZXggPSAvLS18LXxcdTIwMTN8XHUwMEUyXHUyMEFDXHUyMDFDLzsgLy8gUmVnRXggdG8gbWF0Y2ggdmFyaW91cyBkYXNoIHR5cGVzXHJcbiAgICAgICAgaWYgKHBhZ2VSYW5nZVJlZ2V4LnRlc3QocGFnZXMpKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IHBhZyA9IHBhZ2VzLnNwbGl0KHBhZ2VSYW5nZVJlZ2V4KS5tYXAocCA9PiBwLnRyaW0oKSk7XHJcbiAgICAgICAgICAgIGNvbnN0IGJlZ2luID0gcGFnWzBdO1xyXG4gICAgICAgICAgICBjb25zdCBlbmQgPSBwYWdbMV07XHJcblxyXG4gICAgICAgICAgICAvLyBSZXR1cm4gZm9ybWF0dGVkIEpTWFxyXG4gICAgICAgICAgICByZXR1cm4gKFxyXG4gICAgICAgICAgICAgICAgPD5cclxuICAgICAgICAgICAgICAgICAgICAsJm5ic3A7PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6cGFnZUJlZ2luXCI+e2JlZ2lufTwvc3Bhbj4tPHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6cGFnZUVuZFwiPntlbmR9PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgPC8+XHJcbiAgICAgICAgICAgICk7XHJcbiAgICAgICAgfSBlbHNlIGlmICgvXlxcZCsoLVxcZCspPyQvLnRlc3QocGFnZXMpKSB7XHJcbiAgICAgICAgICAgIC8vIElmIHBhZ2VzIGlzIGEgc2luZ2xlIG51bWVyaWMgcmFuZ2UsIHJldHVybiBpdCBkaXJlY3RseVxyXG4gICAgICAgICAgICByZXR1cm4gKFxyXG4gICAgICAgICAgICAgICAgPD5cclxuICAgICAgICAgICAgICAgICwmbmJzcDs8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpwYWdlQmVnaW5cIj57cGFnZXN9PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgPC8+XHJcbiAgICAgICAgICAgICk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgLy8gSGFuZGxlIG5vbi1udW1lcmljIHBhZ2UgaW5mb1xyXG4gICAgICAgICAgICBjb25zb2xlLndhcm4oYE5vbi1udW1lcmljIHBhZ2UgaW5mb3JtYXRpb24gZGV0ZWN0ZWQgKCcke3BhZ2VzfScpLiBUcmVhdGluZyBhcyBtaXNzaW5nLmApO1xyXG4gICAgICAgICAgICByZXR1cm4gbnVsbDsgLy8gUmV0dXJuIG51bGwgaWYgaW52YWxpZFxyXG4gICAgICAgIH1cclxuICAgIH0gZWxzZSB7XHJcbiAgICAgICAgY29uc29sZS53YXJuKFwiU29ycnksIG5vIHBhZ2UgaW5mb3JtYXRpb24uXCIpO1xyXG4gICAgICAgIHJldHVybiBudWxsOyAvLyBSZXR1cm4gbnVsbCBpZiBubyBwYWdlIGluZm9cclxuICAgIH1cclxufVxyXG5cclxuXHJcbmV4cG9ydCBjb25zdCBCaWJ0ZXhQYXJzZXI6IFJlYWN0LkZDPEJpYnRleFBhcnNlclByb3BzPiA9ICh7IGJpYnRleFNvdXJjZXMgLCBzcGVjaWFsLCBzdGFydH0pID0+IHtcclxuICBjb25zdCBbcGFyc2VkRW50cmllcywgc2V0UGFyc2VkRW50cmllc10gPSB1c2VTdGF0ZTxCaWJFbnRyeVtdPihbXSk7XHJcblxyXG4gIC8vIFBhcnNlIEJpYlRlWCBvbiBjb21wb25lbnQgbW91bnQgb3Igd2hlbiBzb3VyY2VzIGNoYW5nZVxyXG4gIHVzZUVmZmVjdCgoKSA9PiB7XHJcbiAgICAvL2NvbnNvbGUubG9nKFwiUGFyc2luZyBCaWJUZVggc291cmNlczogXCIsIGJpYnRleFNvdXJjZXMpO1xyXG5cclxuICAgIHRyeSB7XHJcbiAgICAgIGNvbnN0IGFsbEVudHJpZXM6IEJpYkVudHJ5W10gPSBbXTtcclxuICAgICAgYmlidGV4U291cmNlcy5mb3JFYWNoKChiaWJ0ZXgpID0+IHtcclxuICAgICAgIC8vIGNvbnNvbGUubG9nKGBQYXJzaW5nIEJpYlRlWCBlbnRyeSAjJHtpbmRleCArIDF9OiBgLCBiaWJ0ZXgpO1xyXG4gICAgICAgIGNvbnN0IHBhcnNlZCA9IGJpYnRleFBhcnNlLnRvSlNPTihiaWJ0ZXgpO1xyXG4gICAgICAgLy8gY29uc29sZS5sb2coYFBhcnNlZCBlbnRyeTogYCwgcGFyc2VkKTtcclxuICAgICAgICBhbGxFbnRyaWVzLnB1c2goLi4ucGFyc2VkKTtcclxuICAgICAgfSk7XHJcbiAgICAgIHNldFBhcnNlZEVudHJpZXMoYWxsRW50cmllcyk7XHJcbiAgICAgIC8vY29uc29sZS5sb2coXCJBbGwgcGFyc2VkIGVudHJpZXM6IFwiLCBhbGxFbnRyaWVzKTtcclxuICAgIH0gY2F0Y2ggKGVycm9yKSB7XHJcbiAgICAgY29uc29sZS5lcnJvcihcIkVycm9yIHBhcnNpbmcgQmliVGVYOiBcIiwgZXJyb3IpO1xyXG4gICAgICBhbGVydChcIkFuIGVycm9yIG9jY3VycmVkIHdoaWxlIHBhcnNpbmcgdGhlIEJpYlRlWCBlbnRyaWVzLiBQbGVhc2UgY2hlY2sgdGhlIGZvcm1hdC5cIiArIGJpYnRleFNvdXJjZXMpO1xyXG4gICAgfVxyXG4gIH0sIFtiaWJ0ZXhTb3VyY2VzXSk7XHJcblxyXG4gIC8vIEhlbHBlciBmdW5jdGlvbiB0byByZW5kZXIgQVVUSE9SU1xyXG4gIGNvbnN0IGZvcm1hdEF1dGhvcnMgPSAoYXV0aG9yczogc3RyaW5nKTogc3RyaW5nID0+IHtcclxuICAgIC8vY29uc29sZS5sb2coXCJPcmlnaW5hbCBpbnB1dDpcIiwgYXV0aG9ycyk7XHJcblxyXG4gICAgLy8gQmVyZWluaWdlbiBkZXMgRWluZ2FiZXN0cmluZ3MgdW5kIEVyc2V0emVuIHZvbiBcImFuZFwiIGR1cmNoIFwifFwiXHJcbiAgICBjb25zdCBjbGVhbmVkQXV0aG9ycyA9IGF1dGhvcnNcclxuICAgICAgICAucmVwbGFjZSgvXFxzKmFuZFxccyovZywgXCJ8XCIpIC8vIFwiYW5kXCIgZHVyY2ggXCJ8XCIgZXJzZXR6ZW5cclxuICAgICAgICAucmVwbGFjZSgvXFx7fFxcfS9nLCBcIlwiKSAgICAgIC8vIGdlc2Nod2VpZnRlIEtsYW1tZXJuIGVudGZlcm5lblxyXG4gICAgICAgIC50cmltKCk7XHJcbiAgICBcclxuICAgIC8vY29uc29sZS5sb2coXCJDbGVhbmVkIGF1dGhvcnMgc3RyaW5nOlwiLCBjbGVhbmVkQXV0aG9ycyk7XHJcblxyXG4gICAgLy8gQXV0b3JlbiBpbiBlaW4gQXJyYXkgYXVmdGVpbGVuXHJcbiAgICBjb25zdCBhdXRob3JMaXN0ID0gY2xlYW5lZEF1dGhvcnMuc3BsaXQoXCJ8XCIpLm1hcChhdXRob3IgPT4gYXV0aG9yLnRyaW0oKSk7XHJcbiAgICAvL2NvbnNvbGUubG9nKFwiU3BsaXQgYXV0aG9yIGxpc3Q6XCIsIGF1dGhvckxpc3QpO1xyXG5cclxuICAgIC8vIE1heGltYWxlIEFuemFobCBkZXIgYW56dXplaWdlbmRlbiBBdXRvcmVuXHJcbiAgICBjb25zdCBtYXhBdXRob3JzID0gNztcclxuXHJcbiAgICAvLyBGb3JtYXRpZXJlIGplZGVuIEF1dG9yXHJcbiAgICBjb25zdCBmb3JtYXR0ZWRBdXRob3JzID0gYXV0aG9yTGlzdC5tYXAoKGF1dGhvciwgX2luZGV4KSA9PiB7XHJcbiAgICAgICAgLy9jb25zb2xlLmxvZyhgUHJvY2Vzc2luZyBhdXRob3IgIyR7aW5kZXggKyAxfTpgLCBhdXRob3IpO1xyXG5cclxuICAgICAgICAvLyBOYWNobmFtZSB1bmQgVm9ybmFtZW4gYXVmdGVpbGVuXHJcbiAgICAgICAgY29uc3QgW2xhc3QsIGZpcnN0TmFtZXNdID0gYXV0aG9yLmluY2x1ZGVzKFwiLFwiKSA/IFxyXG4gICAgICAgICAgICBhdXRob3Iuc3BsaXQoXCIsXCIpLm1hcChwYXJ0ID0+IHBhcnQudHJpbSgpKSA6XHJcbiAgICAgICAgICAgIFsnJywgYXV0aG9yXTsgLy8gV2VubiBrZWluIEtvbW1hIHZvcmhhbmRlbiBpc3QsIHdpcmQgZGVyIGdlc2FtdGUgTmFtZSBhbHMgVm9ybmFtZSBiZWhhbmRlbHRcclxuXHJcbiAgICAgICAvLyBjb25zb2xlLmxvZyhgTGFzdCBuYW1lOiBcIiR7bGFzdH1cIiwgRmlyc3QgbmFtZXM6IFwiJHtmaXJzdE5hbWVzfVwiYCk7XHJcblxyXG4gICAgICAgIC8vIEluaXRpYWxlbiBmXHUwMEZDciBWb3JuYW1lbiBlcnN0ZWxsZW5cclxuICAgICAgICBjb25zdCBpbml0aWFscyA9IGZpcnN0TmFtZXMuc3BsaXQoJyAnKS5tYXAobiA9PiBuWzBdICsgJy4nKS5qb2luKCcgJyk7IFxyXG4gICAgICAgIC8vY29uc29sZS5sb2coYEluaXRpYWxzIGZvciBcIiR7Zmlyc3ROYW1lc31cIjogXCIke2luaXRpYWxzfVwiYCk7XHJcblxyXG4gICAgICAgIGNvbnN0IGZvcm1hdHRlZE5hbWUgPSBgJHtsYXN0fSwgJHtpbml0aWFsc31gLnRyaW0oKTsgLy8gUlx1MDBGQ2NrZ2FiZSBkZXMgZm9ybWF0aWVydGVuIE5hbWVuc1xyXG4gICAgICAgIC8vY29uc29sZS5sb2coYEZvcm1hdHRlZCBuYW1lOiBcIiR7Zm9ybWF0dGVkTmFtZX1cImApO1xyXG5cclxuICAgICAgICByZXR1cm4gZm9ybWF0dGVkTmFtZTtcclxuICAgIH0pO1xyXG5cclxuICAgIC8vY29uc29sZS5sb2coXCJGb3JtYXR0ZWQgYXV0aG9ycyBiZWZvcmUgYWRkaW5nIGV0IGFsLjpcIiwgZm9ybWF0dGVkQXV0aG9ycyk7XHJcblxyXG4gICAgLy8gS29tYmluaWVyZSBkaWUgZm9ybWF0aWVydGVuIEF1dG9yZW4gbWl0IGtvcnJla3RlciBJbnRlcnB1bmt0aW9uXHJcbiAgICBjb25zdCBvdXRwdXQgPSBmb3JtYXR0ZWRBdXRob3JzLnNsaWNlKDAsIG1heEF1dGhvcnMpLmpvaW4oJzsgJykgKyBcclxuICAgICAgICAgICAgICAgICAgIChmb3JtYXR0ZWRBdXRob3JzLmxlbmd0aCA+IG1heEF1dGhvcnMgPyAnIGV0IGFsLicgOiAnJyk7XHJcbiAgICBcclxuICAgIC8vY29uc29sZS5sb2coXCJGaW5hbCBvdXRwdXQ6XCIsIG91dHB1dCk7XHJcbiAgICByZXR1cm4gb3V0cHV0O1xyXG59O1xyXG5cclxuICBsZXQgc3BlY2lhbHRoaW5nID0gXCJcIjtcclxuXHJcbiAgaWYgKHNwZWNpYWwpIHtcclxuICAgIHNwZWNpYWx0aGluZyA9IGAjJHtzcGVjaWFsfWA7IFxyXG4gIH1cclxuXHJcbiAgLy8gSGVscGVyIGZ1bmN0aW9uIHRvIHJlbmRlciBpbmRpdmlkdWFsIGNpdGF0aW9ucyBiYXNlZCBvbiB0aGVpciB0eXBlXHJcbiAgY29uc3QgcmVuZGVyQ2l0YXRpb24gPSAoZW50cnk6IEJpYkVudHJ5LCBpbmRleDogbnVtYmVyKSA9PiB7XHJcbiAgIC8vIGNvbnNvbGUubG9nKGBSZW5kZXJpbmcgY2l0YXRpb24gZm9yIGVudHJ5ICMke2luZGV4ICsgMX06IGAsIGVudHJ5KTtcclxuICAgIFxyXG4gICAgLy8gVXNlIHRoZSBpbmRleCBhcyBjaXRhdGlvbiBudW1iZXJcclxuICAgIGxldCBjaXRhdGlvbk51bWJlciA9IGluZGV4ICsxOyBcclxuICAgIGlmKHN0YXJ0KXtcclxuICAgICAgY2l0YXRpb25OdW1iZXIgKz0gc3RhcnQgLTE7IFxyXG4gICAgfVxyXG4gICAgY29uc3QgZW50cnlUeXBlID0gZW50cnkuZW50cnlUeXBlLnRvTG93ZXJDYXNlKCk7IC8vIENvbnZlcnQgdG8gbG93ZXJjYXNlIGZvciBjb25zaXN0ZW50IGNvbXBhcmlzb25cclxuICAgIGNvbnN0IGVudHJ5VGFncyA9IGVudHJ5LmVudHJ5VGFnczsgLy8gQWRqdXN0IGJhc2VkIG9uIHlvdXIgZGF0YSBzdHJ1Y3R1cmVcclxuICAgLy8gY29uc29sZS5sb2coXCJFbnRyeSBUYWdzOiBcIiwgZW50cnlUYWdzKTtcclxuXHJcbiAgICBzd2l0Y2ggKGVudHJ5VHlwZSkge1xyXG4gICAgICBjYXNlIFwiYXJ0aWNsZVwiOlxyXG4gICAgICAgIHJldHVybiAoXHJcbiAgICAgICAgICA8bGkga2V5PXtpbmRleH0gdHlwZW9mPVwic2NoZW1hOlNjaG9sYXJseUFydGljbGVcIiByb2xlPVwiZG9jLWJpYmxpb2VudHJ5XCIgcHJvcGVydHk9XCJzY2hlbWE6Y2l0YXRpb25cIiBpZD17YGRlc2MtJHtjaXRhdGlvbk51bWJlcn0ke3NwZWNpYWx0aGluZ31gfT5cclxuICAgICAgICAgICAgey8qIENpdGF0aW9uIG51bWJlciBhcyBjb21tZW50ICovfVxyXG4gICAgICAgICAgICB7Lyo8IS0tIENpdGF0aW9uIG51bSAke2NpdGF0aW9uTnVtYmVyfSAtLT4gKi99XHJcbiAgICAgICAgICAgIHtmb3JtYXRBdXRob3JzKGVudHJ5VGFncy5BVVRIT1IgfHwgZW50cnlUYWdzLkVESVRPUiB8fCBcIlwiKX1cclxuICAgICAgICAgICAgJm5ic3A7PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6bmFtZVwiPntlbnRyeVRhZ3MuVElUTEUucmVwbGFjZSgvWz8hLl0vZywgJycpLnJlcGxhY2UoL1xcbi9nLCAnICcpLnRyaW0oKX0uPC9zcGFuPlxyXG4gICAgICAgICAgICAmbmJzcDs8aSBwcm9wZXJ0eT1cInNjaGVtYTpwdWJsaXNoZXJcIiB0eXBlb2Y9XCJzY2hlbWE6T3JnYW5pemF0aW9uXCI+e2VudHJ5VGFncy5KT1VSTkFMfTwvaT5cclxuICAgICAgICAgICAgJm5ic3A7PGIgcHJvcGVydHk9XCJpc3N1ZU51bWJlclwiIHR5cGVvZj1cIlB1YmxpY2F0aW9uSXNzdWVcIj57ZW50cnlUYWdzLlZPTFVNRX08L2I+XHJcbiAgICAgICAgICAgIHtmb3JtYXRQYWdlcyhlbnRyeVRhZ3MuUEFHRVMpICYmIDxzcGFuPntmb3JtYXRQYWdlcyhlbnRyeVRhZ3MuUEFHRVMpfTwvc3Bhbj59XHJcbiAgICAgICAgICAgIHtlbnRyeVRhZ3MuWUVBUiAmJiAoXHJcbiAgICAgICAgICAgICAgPHNwYW4+Jm5ic3A7KDx0aW1lIHByb3BlcnR5PVwic2NoZW1hOmRhdGVQdWJsaXNoZWRcIiBkYXRhdHlwZT1cInhzZDpnWWVhclwiIGRhdGVUaW1lPXtlbnRyeVRhZ3MuWUVBUn0+e2VudHJ5VGFncy5ZRUFSfTwvdGltZT4pLjwvc3Bhbj5cclxuICAgICAgICAgICAgKX1cclxuICAgICAgICAgICAge2VudHJ5VGFncy5ET0kgJiYgKFxyXG4gICAgICAgICAgICAgIDxzcGFuPiZuYnNwOzxhIGNsYXNzTmFtZT1cImRvaVwiIGhyZWY9e2BodHRwczovL2RvaS5vcmcvJHtlbnRyeVRhZ3MuRE9JfWB9PmRvaToge2VudHJ5VGFncy5ET0l9PC9hPjwvc3Bhbj5cclxuICAgICAgICAgICAgKX1cclxuICAgICAgICAgIDwvbGk+XHJcbiAgICAgICAgKTtcclxuXHJcbiAgICAgIGNhc2UgXCJib29rXCI6XHJcbiAgICAgICAgcmV0dXJuIChcclxuICAgICAgICAgIDxsaSBrZXk9e2luZGV4fSB0eXBlb2Y9XCJzY2hlbWE6Qm9va1wiIHJvbGU9XCJkb2MtYmlibGlvZW50cnlcIiBwcm9wZXJ0eT1cInNjaGVtYTpjaXRhdGlvblwiIGlkPXtgZGVzYy0ke2NpdGF0aW9uTnVtYmVyfWB9PlxyXG4gICAgICAgICAgICB7LyogUmVuZGVyIGF1dGhvcnMgKi99XHJcbiAgICAgICAgICAgIHtmb3JtYXRBdXRob3JzKGVudHJ5VGFncy5BVVRIT1IgfHwgZW50cnlUYWdzLkVESVRPUiB8fCBcIlwiKX1cclxuICAgICAgICAgICAgey8qIFJlbmRlciB0aXRsZSBvciBib29rdGl0bGUgKi99XHJcbiAgICAgICAgICAgIHtlbnRyeVRhZ3MuVElUTEUgPyAoXHJcbiAgICAgICAgICAgICAgPHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6bmFtZVwiPiZuYnNwO3tlbnRyeVRhZ3MuVElUTEUucmVwbGFjZSgvWz8hLl0vZywgJycpLnJlcGxhY2UoL1xcbi9nLCAnICcpLnRyaW0oKX0uPC9zcGFuPlxyXG4gICAgICAgICAgICApIDogZW50cnlUYWdzLkJPT0tUSVRMRSA/IChcclxuICAgICAgICAgICAgICA8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpuYW1lXCI+Jm5ic3A7e2VudHJ5VGFncy5CT09LVElUTEUucmVwbGFjZSgvWz8hLl0vZywgJycpLnJlcGxhY2UoL1xcbi9nLCAnICcpLnRyaW0oKX0uPC9zcGFuPlxyXG4gICAgICAgICAgICApIDogKFxyXG4gICAgICAgICAgICAgIGNvbnNvbGUud2FybihgTm8gdGl0bGUgb3IgYm9va3RpdGxlIGZvdW5kIGZvciBlbnRyeSAke2NpdGF0aW9uTnVtYmVyfWApXHJcbiAgICAgICAgICAgICl9XHJcbiAgICAgICAgICAgIHsvKiBSZW5kZXIgcHVibGlzaGVyICovfVxyXG4gICAgICAgICAgICB7ZW50cnlUYWdzLlBVQkxJU0hFUiAmJiAoXHJcbiAgICAgICAgICAgICAgPGkgcHJvcGVydHk9XCJzY2hlbWE6cHVibGlzaGVyXCIgdHlwZW9mPVwic2NoZW1hOk9yZ2FuaXphdGlvblwiPlxyXG4gICAgICAgICAgICAgICAgJm5ic3A7e2VudHJ5VGFncy5QVUJMSVNIRVJ9XHJcbiAgICAgICAgICAgICAgPC9pPlxyXG4gICAgICAgICAgICApfVxyXG4gICAgICAgICAgICB7LyogUmVuZGVyIHllYXIgKi99XHJcbiAgICAgICAgICAgIHtlbnRyeVRhZ3MuWUVBUiAmJiAoXHJcbiAgICAgICAgICAgICAgPHNwYW4+XHJcbiAgICAgICAgICAgICAgICAmbmJzcDsoPHRpbWUgcHJvcGVydHk9XCJzY2hlbWE6ZGF0ZVB1Ymxpc2hlZFwiIGRhdGF0eXBlPVwieHNkOmdZZWFyXCIgZGF0ZVRpbWU9e2VudHJ5VGFncy5ZRUFSfT5cclxuICAgICAgICAgICAgICAgICAge2VudHJ5VGFncy5ZRUFSfVxyXG4gICAgICAgICAgICAgICAgPC90aW1lPikuXHJcbiAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICApfVxyXG4gICAgICAgICAgICB7ZW50cnlUYWdzLklTQk4gJiYgKFxyXG4gICAgICAgICAgICAgIDxzcGFuIHByb3BlcnR5PVwiaXNiblwiPiZuYnNwO3tlbnRyeVRhZ3MuSVNCTn08L3NwYW4+XHJcbiAgICAgICAgICAgIClcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgPC9saT5cclxuICAgICAgICApO1xyXG5cclxuICAgICAgY2FzZSBcIm1pc2NcIjpcclxuICAgICAgICByZXR1cm4gKFxyXG4gICAgICAgICAgPGxpIGtleT17aW5kZXh9IHR5cGVvZj1cInNjaGVtYTpXZWJQYWdlXCIgcm9sZT1cImRvYy1iaWJsaW9lbnRyeVwiIHByb3BlcnR5PVwic2NoZW1hOmNpdGF0aW9uXCIgaWQ9e2BkZXNjLSR7Y2l0YXRpb25OdW1iZXJ9YH0+XHJcbiAgICAgICAgICAgIHsvKiBSZW5kZXIgYXV0aG9ycyAqL31cclxuICAgICAgICAgICAgeyhlbnRyeVRhZ3MuQVVUSE9SIHx8IGVudHJ5VGFncy5FRElUT1IgfHwgXCJcIil9XHJcbiAgICAgICAgICAgIHsvKiBSZW5kZXIgdGl0bGUgKi99XHJcbiAgICAgICAgICAgIHtlbnRyeVRhZ3MuVElUTEUgJiYgKFxyXG4gICAgICAgICAgICAgIDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOm5hbWVcIj4uJm5ic3A7e2VudHJ5VGFncy5USVRMRS5yZXBsYWNlKC9bPyEuXS9nLCAnJykucmVwbGFjZSgvXFxuL2csICcgJykudHJpbSgpfS48L3NwYW4+XHJcbiAgICAgICAgICAgICl9XHJcbiAgICAgICAgICAgIHsvKiBSZW5kZXIgaG93cHVibGlzaGVkICovfVxyXG4gICAgICAgICAgICB7ZW50cnlUYWdzLkhPV1BVQkxJU0hFRCAmJiAoXHJcbiAgICAgICAgICAgICAgPGkgcHJvcGVydHk9XCJzY2hlbWE6cHVibGlzaGVyXCIgdHlwZW9mPVwic2NoZW1hOk9yZ2FuaXphdGlvblwiPiZuYnNwO3tlbnRyeVRhZ3MuSE9XUFVCTElTSEVEfTwvaT5cclxuICAgICAgICAgICAgKX1cclxuICAgICAgICAgICAgey8qIFJlbmRlciB5ZWFyICovfVxyXG4gICAgICAgICAgICB7ZW50cnlUYWdzLllFQVIgJiYgKFxyXG4gICAgICAgICAgICAgIDxzcGFuPiZuYnNwOyg8dGltZSBwcm9wZXJ0eT1cInNjaGVtYTpkYXRlUHVibGlzaGVkXCIgZGF0YXR5cGU9XCJ4c2Q6Z1llYXJcIiBkYXRlVGltZT17ZW50cnlUYWdzLllFQVJ9PntlbnRyeVRhZ3MuWUVBUn08L3RpbWU+KS48L3NwYW4+XHJcbiAgICAgICAgICAgICl9XHJcbiAgICAgICAgICA8L2xpPlxyXG4gICAgICAgICk7XHJcblxyXG4gICAgICAvLyBIYW5kbGUgYWRkaXRpb25hbCBlbnRyeSB0eXBlcyBoZXJlXHJcbiAgICAgIGNhc2UgXCJpbnByb2NlZWRpbmdzXCI6XHJcbiAgICAgICAgcmV0dXJuIChcclxuICAgICAgICAgIDxsaSBrZXk9e2luZGV4fT5cclxuICAgICAgICAgICAgPHNwYW4+e2Zvcm1hdEF1dGhvcnMoZW50cnlUYWdzLkFVVEhPUiB8fCBcIlwiKX08L3NwYW4+Jm5ic3A7XHJcbiAgICAgICAgICAgIDxzcGFuPntlbnRyeVRhZ3MuVElUTEV9PC9zcGFuPi4gSW4gPGk+e2VudHJ5VGFncy5CT09LVElUTEV9PC9pPiwmbmJzcDtcclxuICAgICAgICAgICAgPGI+e2VudHJ5VGFncy5lZGl0b3J9PC9iPiwge2VudHJ5VGFncy5ZRUFSfS5cclxuICAgICAgICAgIDwvbGk+XHJcbiAgICAgICAgKTtcclxuXHJcbiAgICAgIGNhc2UgXCJwaGR0aGVzaXNcIjpcclxuICAgICAgICByZXR1cm4gKFxyXG4gICAgICAgICAgPGxpIGtleT17aW5kZXh9PlxyXG4gICAgICAgICAgICA8c3Bhbj57Zm9ybWF0QXV0aG9ycyhlbnRyeVRhZ3MuQVVUSE9SIHx8IFwiXCIpfTwvc3Bhbj4mbmJzcDtcclxuICAgICAgICAgICAgPHNwYW4+e2VudHJ5VGFncy5USVRMRX08L3NwYW4+LCBQaEQgdGhlc2lzLCB7ZW50cnlUYWdzLlNDSE9PTH0sIHtlbnRyeVRhZ3MuWUVBUn0uXHJcbiAgICAgICAgICA8L2xpPlxyXG4gICAgICAgICk7XHJcblxyXG4gICAgICBkZWZhdWx0OlxyXG4gICAgICAgIGNvbnNvbGUud2FybihgVW5rbm93biBlbnRyeSB0eXBlOiAke2VudHJ5VHlwZX1gKTtcclxuICAgICAgICByZXR1cm4gPGxpIGtleT17aW5kZXh9PlVua25vd24gZW50cnkgdHlwZToge2VudHJ5VHlwZX08L2xpPjtcclxuICAgIH1cclxuICB9O1xyXG4gIGxldCBzdGFydG51bWJlciA9IDE7IFxyXG4gIGlmKHN0YXJ0KSB7XHJcbiAgICBzdGFydG51bWJlciA9IHN0YXJ0OyBcclxuICB9XHJcbiAgcmV0dXJuIChcclxuICAgIDxkaXY+XHJcbiAgICAgIHtwYXJzZWRFbnRyaWVzLmxlbmd0aCA9PT0gMCA/IChcclxuICAgICAgICA8cD5ObyBjaXRhdGlvbnMgYXZhaWxhYmxlLjwvcD5cclxuICAgICAgKSA6IChcclxuICAgICAgICA8b2wgc3RhcnQ9e3N0YXJ0bnVtYmVyfT5cclxuICAgICAgICAgIHtwYXJzZWRFbnRyaWVzLm1hcCgoZW50cnksIGluZGV4KSA9PiByZW5kZXJDaXRhdGlvbihlbnRyeSwgaW5kZXgpKX1cclxuICAgICAgICA8L29sPlxyXG4gICAgICApfVxyXG4gICAgPC9kaXY+XHJcbiAgKTtcclxufTtcclxuXHJcbmV4cG9ydCBkZWZhdWx0IEJpYnRleFBhcnNlcjtcclxuIiwgImltcG9ydCBCaWJ0ZXhQYXJzZXIgZnJvbSBcIi4uL2NvbXBvbmVudHMvbWFrZVNvdXJjZXNcIjtcclxuXHJcbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIERlc2NTb3VyY2VzKCl7XHJcbiAgICByZXR1cm4gKFxyXG4gICAgICAgIDxkaXY+XHJcbiAgICAgICAgICA8QmlidGV4UGFyc2VyIGJpYnRleFNvdXJjZXM9e2JpYnRleFNvdXJjZXN9IC8+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIClcclxufVxyXG5cclxuXHJcbmNvbnN0IGJpYnRleFNvdXJjZXMgPSBbXHJcbiAgYEBhcnRpY2xle2FydGljbGUsICAgXHJcbiAgICBhdXRob3I9e1JvZHJpZ3VlcywgUm9iZXJ0YSBhbmQgR2FiZXR0YSwgQ2FybWVuIFMuIGFuZCBQZWRybywgS2FybGEgUC4gYW5kIFZhbGRldGFybywgRmFiaW9hbmQgRmVybmFuZGVzLCBNYXJpYSBJLiBNLiBhbmQgTWFnYWxoXHUwMEUzZXMsIFBhdHJcdTAwRURjaWEgSy4gUi4gYW5kIEphbnVcdTAwRTFyaW8sIEpvc1x1MDBFOSBOLiwgTWFjaWVsLCBMXHUwMEU5YSBNLiBaLn0sICAgXHJcbiAgICB5ZWFyPXsyMDA4fSwgICBcclxuICAgIHBhZ2VzPXs0NzUtNDg0fSwgICBcclxuICAgIHRpdGxlPXtDeXN0aWMgIEZpYnJvc2lzIGFuZCBuZW9uYXRhbCBzY3JlZW5pbmd9LCAgIFxyXG4gICAgdm9sdW1lPXsyNH0sICAgXHJcbiAgICBqb3VybmFsPXtDYWRlcm5vcyBkZSBTYVx1MDBGQWRlIFBcdTAwRkFibGljYX0sICAgXHJcbiAgICBkb2k9ezEwLjE1OTAvUzAxMDItMzExWDIwMDgwMDE2MDAwMDJ9ICAgXHJcbiAgfWAsICAgXHJcbiAgXHJcbiAgYEBhcnRpY2xle2FydGljbGUsICAgXHJcbiAgICBhdXRob3I9e0ZhcnJlbGwsIFBoaWxpcCBNLiBhbmQgUm9jaywgTWljaGFlbCBKLiBhbmQgQmFrZXIsIE1laSBXLn0sICAgXHJcbiAgICB5ZWFyPXsyMDIwfSwgICBcclxuICAgIHBhZ2VzPXs0MDF9LCAgIFxyXG4gICAgdGl0bGU9e1RoZSBJbXBhY3Qgb2YgdGhlIENGVFIgR2VuZSBEaXNjb3Zlcnkgb24gQ3lzdGljIEZpYnJvc2lzIERpYWdub3NpcywgQ291bnNlbGluZywgYW5kIFByZXZlbnRpdmUgVGhlcmFweX0sICAgXHJcbiAgICB2b2x1bWU9ezExKDQpfSwgICBcclxuICAgIGpvdXJuYWw9e0dlbmVzfSwgICBcclxuICAgIGRvaT17MTAuMzM5MC9nZW5lczExMDQwNDAxfSAgIFxyXG4gIH1gLCAgIFxyXG4gIFxyXG4gIGBAYXJ0aWNsZXthcnRpY2xlLCAgIFxyXG4gICAgYXV0aG9yPXtMdWthY3MsIEdlcmdlbHkgTC4gYW5kIFZlcmttYW4sIEEuIFMufSwgICBcclxuICAgIHllYXI9ezIwMTJ9LCAgIFxyXG4gICAgcGFnZXM9ezgxLTkxfSwgICBcclxuICAgIHRpdGxlPXsgQ0ZUUjogZm9sZGluZywgbWlzZm9sZGluZyBhbmQgY29ycmVjdGluZyB0aGUgXHUwMzk0RjUwOCBjb25mb3JtYXRpb25hbCBkZWZlY3R9LCAgIFxyXG4gICAgdm9sdW1lPXsxOCgyKX0sICAgXHJcbiAgICBqb3VybmFsPXtUcmVuZHMgaW4gbW9sZWN1bGFyIG1lZGljaW5lfSwgICBcclxuICAgIGRvaT17MTAuMTAxNi9qLm1vbG1lZC4yMDExLjEwLjAwM30gICBcclxuICB9YCwgICBcclxuICBcclxuICBgQG1pc2N7RUNGUzIwMjRpbnRlcm5ldCwgICBcclxuICAgIGF1dGhvcj17RXVyb3BlYW4gQ3lzdGljIEZpYnJvc2lzIFNvY2lldHl9LCAgIFxyXG4gICAgdGl0bGU9ezIwMjIgSGlnaGxpZ2h0IFJlcG9ydDogQ3lzdGljIEZpYnJvc2lzIGluIEV1cm9wZSwgRmFjdHMgYW5kIEZpZ3VyZXN9LCAgIFxyXG4gICAgeWVhcj17MjAyMn0sICAgXHJcbiAgICB1cmw9e2h0dHBzOi8vd3d3LmVjZnMuZXUvc2l0ZXMvZGVmYXVsdC9maWxlcy8yNDA2MTlfUFJfSGlnaGxpZ2h0cyUyMFJlcG9ydF9wYWdlLnBkZn0sICAgXHJcbiAgICBub3RlPXtadWdyaWZmIGFtIDI3LiBTZXB0ZW1iZXIgMjAyNH0gICBcclxuICB9YCwgICBcclxuICBcclxuICBgQGFydGljbGV7YXJ0aWNsZSwgICBcclxuICAgIGF1dGhvcj17Qm9iYWRpbGxhLCBKLiBMLiBhbmQgTWFja2UgSnIsIE0uIGFuZCBGaW5lLCBKLiBQLiBhbmQgRmFycmVsbCwgUC4gTS59LCAgIFxyXG4gICAgeWVhcj17MjAwMn0sICAgXHJcbiAgICBwYWdlcz17NTc1LTYwNn0sICAgXHJcbiAgICB0aXRsZT17Q3lzdGljICBGaWJyb3NpczogQSB3b3JsZHdpZGUgYW5hbHlzaXMgb2YgQ0ZUUiBtdXRhdGlvbnMgLSBjb3JyZWxhdGlvbiB3aXRoIGluY2lkZW5jZSBkYXRhIGFuZCBhcHBsaWNhdGlvbiB0byBzY3JlZW5pbmd9LCAgIFxyXG4gICAgdm9sdW1lPXsxOSg2KX0sICAgXHJcbiAgICBqb3VybmFsPXtIdW1hbiBNdXRhdGlvbn0sICAgXHJcbiAgICBkb2k9ezEwLjEwMDIvaHVtdS4xMDA0MX0gICBcclxuICB9YCwgICBcclxuICBcclxuICBgQGFydGljbGV7MTAuMzM4OS9mcGhhci4yMDE5LjAxNjYyLCAgIFxyXG4gICAgYXV0aG9yPXtMb3Blcy1QYWNoZWNvLCBNaXF1XHUwMEU5aWFzfSwgICBcclxuICAgIHRpdGxlPXtDRlRSIE1vZHVsYXRvcnM6IFRoZSBDaGFuZ2luZyBGYWNlIG9mIEN5c3RpYyBGaWJyb3NpcyBpbiB0aGUgRXJhIG9mIFByZWNpc2lvbiBNZWRpY2luZX0sICAgXHJcbiAgICBqb3VybmFsPXtGcm9udGllcnMgaW4gUGhhcm1hY29sb2d5fSwgICBcclxuICAgIHZvbHVtZT17MTB9LCAgIFxyXG4gICAgeWVhcj17MjAyMH0sICAgXHJcbiAgICBkb2k9ezEwLjMzODkvZnBoYXIuMjAxOS4wMTY2Mn0sICAgXHJcbiAgICB1cmw9e2h0dHBzOi8vd3d3LmZyb250aWVyc2luLm9yZy9hcnRpY2xlcy8xMC4zMzg5L2ZwaGFyLjIwMTkuMDE2NjJ9ICAgXHJcbiAgfWAsICAgXHJcbiAgXHJcbiAgYEBtaXNje2FyZW5hMjAyNGludGVybmV0LCAgIFxyXG4gICAgYXV0aG9yPXtDbGluaWNhbCBUcmlhbHMgQXJlbmF9LCAgIFxyXG4gICAgdGl0bGU9e0N5c3RpYyAgRmlicm9zaXM6IGdsb2JhbCBjbGluaWNhbCB0cmlhbHMgbGFuZHNjYXBlIGFuZCB0cmVhdG1lbnRzfSwgICBcclxuICAgIHllYXI9ezIwMjR9LCAgIFxyXG4gICAgdXJsPXtodHRwczovL3d3dy5jbGluaWNhbHRyaWFsc2FyZW5hLmNvbS9zcG9uc29yZWQvLUN5c3RpYyBGaWJyb3Npcy1nbG9iYWwtY2xpbmljYWwtdHJpYWxzLWxhbmRzY2FwZS1hbmQtdHJlYXRtZW50cy99LCAgIFxyXG4gICAgbm90ZT17WnVncmlmZiBhbSAyMy4gU2VwdGVtYmVyIDIwMjR9ICAgXHJcbiAgfWAsICAgXHJcbiAgXHJcbiAgYEBtaXNje01TRG1hbnVhbDIwMjRpbnRlcm5ldCwgICBcclxuICAgIGF1dGhvcj17U2F3aWNraSwgR30sICAgXHJcbiAgICB0aXRsZT17TXVrb3Zpc3ppZG9zZSAoenlzdGlzY2hlIEZpYnJvc2UsIENGKX0sICAgXHJcbiAgICB5ZWFyPXsyMDIzfSwgICBcclxuICAgIHVybD17aHR0cHM6Ly93d3cubXNkbWFudWFscy5jb20vZGUtZGUvaGVpbS9nZXN1bmRoZWl0c3Byb2JsZW1lLXZvbi1raW5kZXJuL211a292aXN6aWRvc2UvbXVrb3Zpc3ppZG9zZS16eXN0aXNjaGUtZmlicm9zZS1jZn0sICAgXHJcbiAgICBub3RlPXtadWdyaWZmIGFtIDIzLiBTZXB0ZW1iZXIgMjAyNH0gICBcclxuICB9YCwgICBcclxuICBcclxuICBgQG1pc2N7cGF0aWVudDIwMjRpbnRlcm5ldCwgICBcclxuICAgIGF1dGhvcj17QnVya2hhcnQsIE0uIGFuZCAgTlx1MDBFNGhybGljaCwgTC59LCAgIFxyXG4gICAgdGl0bGU9e1phaGxlbiwgRGF0ZW4gdW5kIEZha3RlbiBmXHUwMEZDciBQYXRpZW50ZW4gdW5kIEFuZ2VoXHUwMEY2cmlnZX0sICAgXHJcbiAgICB5ZWFyPXsyMDIyfSwgICBcclxuICAgIHVybD17aHR0cHM6Ly93d3cubXVrby5pbmZvL2ZpbGVhZG1pbi91c2VyX3VwbG9hZC93YXNfd2lyX3R1bi9yZWdpc3Rlci9iZXJpY2h0c2JhZW5kZS9wYXRpZW50ZW5iZXJpY2h0c2JhbmQucGRmfSwgICBcclxuICAgIG5vdGU9e1p1Z3JpZmYgYW0gMjMuIFNlcHRlbWJlciAyMDI0fSAgIFxyXG4gIH1gLCAgIFxyXG4gIFxyXG4gIGBAbWlzY3tNdWtvODIwMjRpbnRlcm5ldCwgICBcclxuICAgIGF1dGhvcj17TXVrb3Zpc3ppZG9zZSBlLlZ9LCAgIFxyXG4gICAgdGl0bGU9e1dhcyBpc3QgTXVrb3Zpc3ppZG9zZS8gQ3lzdGlzY2hlIEZpYnJvc2UgKENGKT99LCAgIFxyXG4gICAgeWVhcj17MjAyNH0sICAgXHJcbiAgICB1cmw9e2h0dHBzOi8vd3d3Lm11a28uaW5mby9tdWtvdmlzemlkb3NlL3VlYmVyLWRpZS1lcmtyYW5rdW5nfSwgICBcclxuICAgIG5vdGU9e1p1Z3JpZmYgYW0gMjMuIFNlcHRlbWJlciAyMDI0fSAgIFxyXG4gIH1gLCAgIFxyXG4gIFxyXG4gIGBAYXJ0aWNsZXtFbGJvcm4yMDE2LCAgIFxyXG4gICAgdGl0bGU9e0N5c3RpYyAgRmlicm9zaXN9LCAgIFxyXG4gICAgdm9sdW1lPXszODh9LCAgIFxyXG4gICAgSVNTTj17MDE0MC02NzM2fSwgICBcclxuICAgIHVybD17aHR0cDovL2R4LmRvaS5vcmcvMTAuMTAxNi9zMDE0MC02NzM2KDE2KTAwNTc2LTZ9LCAgIFxyXG4gICAgRE9JPXsxMC4xMDE2L3MwMTQwLTY3MzYoMTYpMDA1NzYtNn0sICAgXHJcbiAgICBudW1iZXI9ezEwMDU5fSwgICBcclxuICAgIGpvdXJuYWw9e1RoZSBMYW5jZXR9LCAgIFxyXG4gICAgcHVibGlzaGVyPXtFbHNldmllciBCVn0sICAgXHJcbiAgICBhdXRob3I9e0VsYm9ybiwgSiBTdHVhcnR9LCAgIFxyXG4gICAgeWVhcj17MjAxNn0sICAgXHJcbiAgICBtb250aD17bm92fSwgICBcclxuICAgIHBhZ2VzPXsyNTE5LTI1MzF9ICAgXHJcbiAgfWAsICAgXHJcbiAgXHJcbiAgYEBib29rezIwMDEsICAgXHJcbiAgICB0aXRsZT17Q3lzdGlzY2hlIEZpYnJvc2V9LFxyXG4gICAgYXV0aG9yPXtSZWluaGFyZHQsIEQuIGFuZCBHXHUwMEY2dHosIE0uIGFuZCBLcmFlbWVyLCBSLiBhbmQgU2NoXHUwMEY2bmksIE0ufSwgICBcclxuICAgIElTQk49ezk3ODM2NDI1Njc5NjR9LCAgIFxyXG4gICAgdXJsPXtodHRwOi8vZHguZG9pLm9yZy8xMC4xMDA3Lzk3OC0zLTY0Mi01Njc5Ni00fSwgICBcclxuICAgIERPST17MTAuMTAwNy85NzgtMy02NDItNTY3OTYtNH0sICAgXHJcbiAgICBwdWJsaXNoZXI9e1NwcmluZ2VyIEJlcmxpbiBIZWlkZWxiZXJnfSwgICBcclxuICAgIHllYXI9ezIwMDF9ICAgXHJcbiAgfWAsICAgXHJcbiAgXHJcbiAgYEBhcnRpY2xle2Jpb200MDIwNDk4LCAgIFxyXG4gICAgYXV0aG9yPXtXYW5nLCBYaWFvZG9uZyBSb2JlcnQgYW5kIExpLCBDaGVuZ2xvbmd9LCAgIFxyXG4gICAgdGl0bGU9e0RlY29kaW5nIEY1MDhkZWwgTWlzZm9sZGluZyBpbiBDeXN0aWMgRmlicm9zaXN9LCAgIFxyXG4gICAgam91cm5hbD17QmlvbW9sZWN1bGVzfSwgICBcclxuICAgIHZvbHVtZT17NH0sICAgXHJcbiAgICB5ZWFyPXsyMDE0fSwgICBcclxuICAgIG51bWJlcj17Mn0sICAgXHJcbiAgICBwYWdlcz17NDk4LS01MDl9LCAgIFxyXG4gICAgdXJsPXtodHRwczovL3d3dy5tZHBpLmNvbS8yMjE4LTI3M1gvNC8yLzQ5OH0sICAgXHJcbiAgICBQdWJNZWRJRD17MjQ5NzAyMjd9LCAgIFxyXG4gICAgSVNTTj17MjIxOC0yNzNYfSwgICBcclxuICAgIERPST17MTAuMzM5MC9iaW9tNDAyMDQ5OH0gICBcclxuICB9YCwgICBcclxuICAvKiAxNCAqL1xyXG4gIGBAYXJ0aWNsZXtQVUNIRUxMRTIwMDIxMTUsICAgXHJcbiAgICB0aXRsZT17QWlyd2F5IG11Y3VzIGluICBDeXN0aWMgRmlicm9zaXN9LCAgIFxyXG4gICAgam91cm5hbD17UGFlZGlhdHJpYyBSZXNwaXJhdG9yeSBSZXZpZXdzfSwgICBcclxuICAgIHZvbHVtZT17M30sICAgXHJcbiAgICBudW1iZXI9ezJ9LCAgIFxyXG4gICAgcGFnZXM9ezExNS0xMTl9LCAgIFxyXG4gICAgeWVhcj17MjAwMn0sICAgXHJcbiAgICBpc3NuPXsxNTI2LTA1NDJ9LCAgIFxyXG4gICAgZG9pPXtodHRwczovL2RvaS5vcmcvMTAuMTAxNi9TMTUyNi0wNTUwKDAyKTAwMDA1LTd9LCAgIFxyXG4gICAgdXJsPXtodHRwczovL3d3dy5zY2llbmNlZGlyZWN0LmNvbS9zY2llbmNlL2FydGljbGUvcGlpL1MxNTI2MDU1MDAyMDAwMDU3fSwgICBcclxuICAgIGF1dGhvcj17UHVjaGVsbGUsIEVkaXRoIGFuZCBCYWpvbGV0LCBPZGlsZSBhbmQgQWJcdTAwRTlseSwgTWljaGVsfSwgICBcclxuICAgIGtleXdvcmRzPXsgQ3lzdGljIEZpYnJvc2lzLCBhaXJ3YXkgbXVjdXMsIGFpcndheSBzdXJmYWNlIGxpcXVpZCwgcmhlb2xvZ3ksIG11Y29jaWxpYXJ5IGNsZWFyYW5jZSwgbXVjdXMgY291Z2ggdHJhbnNwb3J0fSAgIFxyXG4gIH1gLCAgIC8qIDE1ICovXHJcbiAgYEBhcnRpY2xle0FuemFsb25lMjAxOSxcclxuICBhdXRob3IgICAgPSB7QW56YWxvbmUsIEFuZHJldyBhbmQgUmFuZG9scGgsIFBleXRvbiBhbmQgRGF2aXMsIEplc3NpZSBhbmQgU291c2EsIEF5YWx1ciBhbmQgS29ibGFuLCBMdWtlIGFuZCBMZXZ5LCBKb25hdGhhbiBhbmQgQ2hlbiwgUGF0cmljayBhbmQgV2lsc29uLCBDaGFybG90dGUgYW5kIE5ld2J5LCBHcmVnIGFuZCBSYWd1cmFtLCBBZGl0eWEgYW5kIExpdSwgRGF2aWR9LFxyXG4gIHRpdGxlICAgICA9IHtTZWFyY2gtYW5kLXJlcGxhY2UgZ2Vub21lIGVkaXRpbmcgd2l0aG91dCBkb3VibGUtc3RyYW5kIGJyZWFrcyBvciBkb25vciBETkF9LFxyXG4gIGpvdXJuYWwgICA9IHtOYXR1cmV9LFxyXG4gIHZvbHVtZSAgICA9IHs1NzZ9LFxyXG4gIHBhZ2VzICAgICA9IHsxNDktLTE1N30sXHJcbiAgeWVhciAgICAgID0gezIwMTl9LFxyXG4gIGRvaSAgICAgICA9IHsxMC4xMDM4L3M0MTU4Ni0wMTktMTcxMS00fVxyXG59XHJcbmAsLyogMTYgKi9cclxuYEBhcnRpY2xle0RvbWFuMjAyMyxcclxuICBhdXRob3IgICAgPSB7RG9tYW4sIEphY29iIGFuZCBQYW5kZXksIFNpZGRoYXJ0aCBhbmQgTmV1Z2ViYXVlciwgTWFyaWEgYW5kIEFuLCBNZWlxaSBhbmQgRGF2aXMsIEplc3NpZSBhbmQgUmFuZG9scGgsIFBleXRvbiBhbmQgTWNFbHJveSwgQW5kcmV3IGFuZCBHYW8sIFhpYW94dSBhbmQgUmFndXJhbSwgQWRpdHlhIGFuZCBSaWNodGVyLCBNYXJrdXMgYW5kIEV2ZXJldHRlLCBLZWF0b24gYW5kIEJhbnNrb3RhLCBTYXJvaiBhbmQgVGlhbiwgS2FuZ3J1aSBhbmQgVGFvLCBZdWhhbmcgYW5kIFRvbGFyLCBKYWt1YiBhbmQgT3Nib3JuLCBNYXR0aGV3IGFuZCBMaXUsIERhdmlkfSxcclxuICB0aXRsZSAgICAgPSB7UGhhZ2UtYXNzaXN0ZWQgZXZvbHV0aW9uIGFuZCBwcm90ZWluIGVuZ2luZWVyaW5nIHlpZWxkIGNvbXBhY3QsIGVmZmljaWVudCBwcmltZSBlZGl0b3JzfSxcclxuICBqb3VybmFsICAgPSB7Q2VsbH0sXHJcbiAgdm9sdW1lICAgID0gezE4Nn0sXHJcbiAgcGFnZXMgICAgID0gezM5ODMtLTQwMDIuZTI2fSxcclxuICB5ZWFyICAgICAgPSB7MjAyM30sXHJcbiAgZG9pICAgICAgID0gezEwLjEwMTYvai5jZWxsLjIwMjMuMDcuMDM5fVxyXG59XHJcbmBcclxuLFxyXG5gQGFydGljbGV7R2Fkc2J5MjAwNiwgXHJcblxyXG4gIHRpdGxlPXtUaGUgQUJDIHByb3RlaW4gdHVybmVkIGNobG9yaWRlIGNoYW5uZWwgd2hvc2UgZmFpbHVyZSBjYXVzZXMgIEN5c3RpYyBGaWJyb3Npc30sIFxyXG5cclxuICBhdXRob3I9e0dhZHNieSwgRGF2aWQgQy4gYW5kIFZlcmdhbmksIFBhb2xhIGFuZCBDc2FuXHUwMEUxZHksIEx7XFwnYX1zemx7XFwnb319LCBcclxuXHJcbiAgam91cm5hbD17TmF0dXJlfSwgXHJcblxyXG4gIHZvbHVtZT17NDQwfSwgXHJcblxyXG4gIG51bWJlcj17NzA4M30sIFxyXG5cclxuICBwYWdlcz17NDc3LS00ODN9LCBcclxuXHJcbiAgeWVhcj17MjAwNn0sIFxyXG5cclxuICBwdWJsaXNoZXI9e05hdHVyZSBQdWJsaXNoaW5nIEdyb3VwfSwgXHJcblxyXG4gIGRvaT17MTAuMTAzOC9uYXR1cmUwNDcxMn0gXHJcblxyXG59IGAsXHJcblxyXG5gQGFydGljbGV7SHdhbmcyMDEzLCBcclxuXHJcbiAgdGl0bGU9e1RoZSBDRlRSIGlvbiBjaGFubmVsOiBnYXRpbmcsIHJlZ3VsYXRpb24sIGFuZCBhbmlvbiBwZXJtZWF0aW9ufSwgXHJcblxyXG4gIGF1dGhvcj17SHdhbmcsIFR6eWgtQ2hhbmcgYW5kIEtpcmssIEtldmluIEwufSwgXHJcblxyXG4gIGpvdXJuYWw9e0NvbGQgU3ByaW5nIEhhcmJvciBQZXJzcGVjdGl2ZXMgaW4gTWVkaWNpbmV9LCBcclxuXHJcbiAgdm9sdW1lPXszfSwgXHJcblxyXG4gIG51bWJlcj17MX0sIFxyXG5cclxuICBwYWdlcz17YTAwOTQ5OH0sIFxyXG5cclxuICB5ZWFyPXsyMDEzfSwgXHJcblxyXG4gIHB1Ymxpc2hlcj17Q29sZCBTcHJpbmcgSGFyYm9yIExhYm9yYXRvcnkgUHJlc3N9LCBcclxuXHJcbiAgZG9pPXsxMC4xMTAxL2NzaHBlcnNwZWN0LmEwMDk0OTh9IFxyXG5cclxufSBgLFxyXG4gYEBhcnRpY2xle1Jpb3JkYW4yMDA4LCBcclxuXHJcbiAgdGl0bGU9e0NGVFIgZnVuY3Rpb24gYW5kIHByb3NwZWN0cyBmb3IgdGhlcmFweX0sIFxyXG5cclxuICBhdXRob3I9e1Jpb3JkYW4sIEpvaG4gUi59LCBcclxuXHJcbiAgam91cm5hbD17QW5udWFsIFJldmlldyBvZiBCaW9jaGVtaXN0cnl9LCBcclxuXHJcbiAgdm9sdW1lPXs3N30sIFxyXG5cclxuICBwYWdlcz17NzAxLS03MjZ9LCBcclxuXHJcbiAgeWVhcj17MjAwOH0sIFxyXG5cclxuICBwdWJsaXNoZXI9e0FubnVhbCBSZXZpZXdzfSwgXHJcblxyXG4gIGRvaT17MTAuMTE0Ni9hbm51cmV2LmJpb2NoZW0uNzUuMTAzMDA0LjE0MjUzMn0gXHJcblxyXG59IGAsXHJcblxyXG5gQGFydGljbGV7U2hlcHBhcmQxOTk5LCBcclxuXHJcbiAgdGl0bGU9e1N0cnVjdHVyZSBhbmQgZnVuY3Rpb24gb2YgdGhlIENGVFIgY2hsb3JpZGUgY2hhbm5lbH0sIFxyXG5cclxuICBhdXRob3I9e1NoZXBwYXJkLCBEYXZpZCBOLiBhbmQgV2Vsc2gsIE1pY2hhZWwgSi59LCBcclxuXHJcbiAgam91cm5hbD17UGh5c2lvbG9naWNhbCBSZXZpZXdzfSwgXHJcblxyXG4gIHZvbHVtZT17Nzl9LCBcclxuXHJcbiAgbnVtYmVyPXsxIFN1cHBsfSwgXHJcblxyXG4gIHBhZ2VzPXtTMjMtLVM0NX0sIFxyXG5cclxuICB5ZWFyPXsxOTk5fSwgXHJcblxyXG4gIHB1Ymxpc2hlcj17QW1lcmljYW4gUGh5c2lvbG9naWNhbCBTb2NpZXR5fSwgXHJcblxyXG4gIGRvaT17MTAuMTE1Mi9waHlzcmV2LjE5OTkuNzkuMS5TMjN9IFxyXG5cclxufSBgLFxyXG4gYCBAYXJ0aWNsZXtDaGVuMjAwOCwgXHJcblxyXG4gIHRpdGxlPXtDRlRSIGFjdGl2YXRpb24gYnkgcGhvc3Bob3J5bGF0aW9ufSwgXHJcblxyXG4gIGF1dGhvcj17Q2hlbiwgSmVuZy1IYXVyIGFuZCBDaGFuZywgWHVlLUJhb30sIFxyXG5cclxuICBqb3VybmFsPXtKb3VybmFsIG9mIEJpb21lZGljYWwgU2NpZW5jZX0sIFxyXG5cclxuICB2b2x1bWU9ezE1fSwgXHJcblxyXG4gIG51bWJlcj17Nn0sIFxyXG5cclxuICBwYWdlcz17NjU5LS02NzJ9LCBcclxuXHJcbiAgeWVhcj17MjAwOH0sIFxyXG5cclxuICBwdWJsaXNoZXI9e1NwcmluZ2VyfSwgXHJcblxyXG4gIGRvaT17MTAuMTAwNy9zMTEzNzMtMDA4LTkyNjAtNH0gXHJcblxyXG59IGAsXHJcblxyXG5gQGFydGljbGV7YXJ0aWNsZSwgXHJcblxyXG5hdXRob3I9e0x1a2FjcywgR2VyZ2VseSBMLjsgVmVya21hbiwgQS4gUy59LCBcclxuXHJcbnllYXI9ezIwMTJ9LCBcclxuXHJcbm1vbnRoPXsyfSwgXHJcblxyXG5wYWdlcz17ODEtOTF9LCBcclxuXHJcbnRpdGxlPXsgQ0ZUUjogZm9sZGluZywgbWlzZm9sZGluZyBhbmQgY29ycmVjdGluZyB0aGUgXHUwMzk0RjUwOCBjb25mb3JtYXRpb25hbCBkZWZlY3R9LCBcclxuXHJcbnZvbHVtZT17MTgoMil9LCBcclxuXHJcbmpvdXJuYWw9e1RyZW5kcyBpbiBtb2xlY3VsYXIgbWVkaWNpbmV9LCBcclxuXHJcbmRvaT17MTAuMTAxNi9qLm1vbG1lZC4yMDExLjEwLjAwM30gXHJcblxyXG59IGAsXHJcbmBAYXJ0aWNsZXthcnRpY2xlLCBcclxuXHJcbmF1dGhvcj17RmFycmVsbCwgUGhpbGlwIE0uOyBSb2NrLCBNaWNoYWVsIEouOyBCYWtlciwgTWVpIFcufSwgXHJcblxyXG55ZWFyPXsyMDIwfSwgXHJcblxyXG5tb250aD17MDR9LCBcclxuXHJcbnBhZ2VzPXs0MDF9LCBcclxuXHJcbnRpdGxlPXtUaGUgSW1wYWN0IG9mIHRoZSBDRlRSIEdlbmUgRGlzY292ZXJ5IG9uIEN5c3RpYyBGaWJyb3NpcyBEaWFnbm9zaXMsIENvdW5zZWxpbmcsIGFuZCBQcmV2ZW50aXZlIFRoZXJhcHl9LCBcclxuXHJcbnZvbHVtZT17MTEoNCl9LCBcclxuXHJcbmpvdXJuYWw9e0dlbmVzfSwgXHJcblxyXG5kb2k9ezEwLjMzOTAvZ2VuZXMxMTA0MDQwMX0gXHJcblxyXG59IGAsXHJcblxyXG5gQGFydGljbGV7YXJ0aWNsZSwgXHJcblxyXG5hdXRob3I9e1JvZHJpZ3VlcywgUm9iZXJ0YTsgR2FiZXR0YSwgQ2FybWVuIFMuOyBQZWRybywgS2FybGEgUC47IFZhbGRldGFybywgRmFiaW87IEZlcm5hbmRlcywgTWFyaWEgSS4gTS47IE1hZ2FsaFx1MDBFM2VzLCBQYXRyXHUwMEVEY2lhIEsuIFIuOyBKYW51XHUwMEUxcmlvLCBKb3NcdTAwRTkgTi4sIE1hY2llbCwgTFx1MDBFOWEgTS4gWi59LCBcclxuXHJcbnllYXI9ezIwMDh9LCBcclxuXHJcbm1vbnRoPXsgfSwgXHJcblxyXG5wYWdlcz17NDc1LTQ4NH0sIFxyXG5cclxudGl0bGU9e0N5c3RpYyAgRmlicm9zaXMgYW5kIG5lb25hdGFsIHNjcmVlbmluZ30sIFxyXG5cclxudm9sdW1lPXsyNH0sIFxyXG5cclxuam91cm5hbD17Q2FkZXJub3MgZGUgU2FcdTAwRkFkZSBQXHUwMEZBYmxpY2F9LCBcclxuXHJcbmRvaT17MTAuMTU5MC9TMDEwMi0zMTFYMjAwODAwMTYwMDAwMn0gXHJcblxyXG59IGAsXHJcblxyXG5gQGFydGljbGV7YXJ0aWNsZSwgXHJcblxyXG5hdXRob3I9e0FtaWNvLCBHaXVsaWE7IEJyYW5kYXMsIENoaWFyYTsgTW9yYW4sIE9zY2FyOyBCYXJvbmksIERlYm9yYX0sIFxyXG5cclxueWVhcj17MjAxOX0sIFxyXG5cclxubW9udGg9ezF9LCBcclxuXHJcbnBhZ2VzPXs1NDYzfSwgXHJcblxyXG50aXRsZT17VW5yYXZlbGxpbmcgdGhlIFJlZ2lvbnMgb2YgTXV0YW50IEY1MDhkZWwtQ0ZUUiBNb3JlIFN1c2NlcHRpYmxlIHRvIHRoZSBBY3Rpb24gb2YgRm91ciBDeXN0aWMgRmlicm9zaXMgQ29ycmVjdG9yc30sIFxyXG5cclxudm9sdW1lPXsyMCgyMSl9LCBcclxuXHJcbmpvdXJuYWw9e0ludGVybmF0aW9uYWwgSm91cm5hbCBvZiBNb2xlY3VsYXIgU2NpZW5jZXN9LCBcclxuXHJcbmRvaT17MTAuMzM5MC9pam1zMjAyMTU0NjN9IFxyXG5cclxufSBgLFxyXG5cclxuYEBib29re0JyYXVuMjAyMkJhc2lzbGVocmJ1Y2gsIFxyXG5cclxuaXNibiA9IHs5NzgzNDM3NDExNDQxfSwgXHJcblxyXG5sYW5ndWFnZSA9IHtkZX0sIFxyXG5cclxubnVtcGFnZXMgPSB7MTIwOH0sIFxyXG5cclxudGl0bGUgPSB7QmFzaXNsZWhyYnVjaCBJbm5lcmUgTWVkaXppbn0sIFxyXG5cclxudXJsID0ge2h0dHBzOi8vYm9va3MuZ29vZ2xlLmNvbS9ib29rcy9hYm91dC9CYXNpc2xlaHJidWNoX0lubmVyZV9NZWRpemluLmh0bWw/aGw9JmlkPUJTOHR6d0VBQ0FBSn0sIFxyXG5cclxuYXV0aG9yID0ge0JyYXVuLCBKXHUwMEY2cmcgYW5kIE1cdTAwRkNsbGVyLVdpZWxhbmQsIERpcmt9LCBcclxuXHJcbmRhdGUgPSB7MjAyMi0wOS0yMH0sIFxyXG5cclxueWVhciA9IHsyMDIyfSwgXHJcblxyXG5tb250aCA9IHs5fSwgXHJcblxyXG5kYXkgPSB7MjB9LCBcclxuXHJcbn0gYCxcclxuXHJcbi8qIDI3ICovXHJcbiAgYEBhcnRpY2xle1dlbmtfMjAxMCwgICBcclxuICAgIHRpdGxlPXtDeXN0aWMgRmlicm9zaXMgUHJlc2VudGluZyBXaXRoIERlcm1hdGl0aXN9LCAgIFxyXG4gICAgdm9sdW1lPXsxNDZ9LCAgIFxyXG4gICAgSVNTTj17MDAwMy05ODdYfSwgICBcclxuICAgIHVybD17aHR0cDovL2R4LmRvaS5vcmcvMTAuMTAwMS9hcmNoZGVybWF0b2wuMjAwOS4zNjF9LCAgIFxyXG4gICAgRE9JPXsxMC4xMDAxL2FyY2hkZXJtYXRvbC4yMDA5LjM2MX0sICAgXHJcbiAgICBudW1iZXI9ezJ9LCAgIFxyXG4gICAgam91cm5hbD17QXJjaGl2ZXMgb2YgRGVybWF0b2xvZ3l9LCAgIFxyXG4gICAgcHVibGlzaGVyPXtBbWVyaWNhbiBNZWRpY2FsIEFzc29jaWF0aW9uIChBTUEpfSwgICBcclxuICAgIGF1dGhvcj17V2VuaywgS3VydCBTLiBhbmQgSGlnZ2lucywgS3Jpc3RlbiBCLiBhbmQgR3JlZXIsIEtlbm5ldGggRS59LCAgIFxyXG4gICAgeWVhcj17MjAxMH0sICAgXHJcbiAgICBtb250aD17ZmVifSAgIFxyXG4gIH1gLCAgIFxyXG5cclxuXHJcbiAgLyogMjggKi9cclxuICBgQG1pc2N7bXVrb2xlaXRsaW5pZW4yMDI0aW50ZXJuZXQsIFxyXG4gICBhdXRob3IgICAgICAgPSB7TS4gU3Rlcm4sIEguIEVsbGVtdW50ZXIsIEIuIFBhbG0sIEguLUcuIFBvc3NlbHQsIEMuIFNtYWN6bnl9LCBcclxuICAgdGl0bGUgICAgICAgID0ge011a292aXN6aWRvc2UgKEN5c3Rpc2NoZSBGaWJyb3NlKTogRXJuXHUwMEU0aHJ1bmcgdW5kIGV4b2tyaW5lIFBhbmtyZWFzaW5zdWZmaXppZW56fSwgXHJcbiAgIHllYXIgICAgICAgICA9IHsyMDExfSwgXHJcbiAgIHVybCAgICAgICAgICA9IHtodHRwczovL3d3dy5tdWtvLmluZm8vZmlsZWFkbWluL3VzZXJfdXBsb2FkL3dhc193aXJfdHVuL2xlaXRsaW5pZW4vTExfUzFfbXVrb3Zpc3ppZG9zZV9lcm5hZWhydW5nX2V4b2tyaW5lX3BhbmtyZWFzaW5zdWZmaXppZW56LnBkZlx1MjAwQn0sIFxyXG4gICBub3RlICAgICAgICAgPSB7WnVncmlmZiBhbSAyNS4gU2VwdGVtYmVyIDIwMjR9IFxyXG4gfSBgLFxyXG5cclxuIGAgXHJcblxyXG5AbWlzY3tDRkY0MjAyNGludGVybmV0LCBcclxuICAgYXV0aG9yICAgICAgID0ge0N5c3RpYyBGaWJyb3NpcyBGb3VuZGF0aW9ufSwgXHJcbiAgIHRpdGxlICAgICAgICA9IHtUaGUgRGlnZXN0aXZlIFRyYWN0fSwgXHJcbiAgIHllYXIgICAgICAgICA9IHsyMDI0fSwgXHJcbiAgIHVybCAgICAgICAgICA9IHtodHRwczovL3d3dy5jZmYub3JnL21hbmFnaW5nLWNmL2RpZ2VzdGl2ZS10cmFjdFx1MjAwQn0sIFxyXG4gICBub3RlICAgICAgICAgPSB7WnVncmlmZiBhbSAyNS4gU2VwdGVtYmVyIDIwMjR9IFxyXG4gfSBgLFxyXG4gIGAgXHJcblxyXG5AYXJ0aWNsZXtQb3pvMjAyMCwgXHJcblxyXG4gdGl0bGUgPSB7Q3lzdGljICBGaWJyb3Npcy1yZWxhdGVkIGRpYWJldGVzOiBUaGUgdW5tZXQgbmVlZH0sIFxyXG5cclxuIHZvbHVtZSA9IHsxMX0sIFxyXG5cclxuIElTU04gPSB7MTk0OC05MzU4fSwgXHJcblxyXG4gdXJsID0ge2h0dHA6Ly9keC5kb2kub3JnLzEwLjQyMzkvd2pkLnYxMS5pNi4yMTN9LCBcclxuXHJcbiBET0kgPSB7MTAuNDIzOS93amQudjExLmk2LjIxM30sIFxyXG5cclxuIG51bWJlciA9IHs2fSwgXHJcblxyXG4gam91cm5hbCA9IHtXb3JsZCBKb3VybmFsIG9mIERpYWJldGVzfSwgXHJcblxyXG4gcHVibGlzaGVyID0ge0JhaXNoaWRlbmcgUHVibGlzaGluZyBHcm91cCBJbmMufSwgXHJcblxyXG4gYXV0aG9yID0ge1Bvem8sIExlb25hcmRvIGFuZCBCZWxsbywgRmF0aW1haCBhbmQgTWVuZGV6LCBZYW1lbHkgYW5kIFN1cmFuaSwgU2FsaW19LCBcclxuXHJcbiB5ZWFyID0gezIwMjB9LCBcclxuXHJcbiBtb250aCA9IGp1biwgXHJcblxyXG4gcGFnZXMgPSB7MjEzXHUyMDEzMjE3fSBcclxuXHJcbn1cdGAsXHJcbiAgYEBtaXNje011a283MjAyNGludGVybmV0LCBcclxuICAgYXV0aG9yICAgICAgID0ge011a292aXN6aWRvc2UgZS5WLn0sIFxyXG4gICB0aXRsZSAgICAgICAgPSB7VGhlcmFwaWUgZGVyIE11a292aXN6aWRvc2V9LCBcclxuICAgeWVhciAgICAgICAgID0gezIwMTd9LCBcclxuICAgdXJsICAgICAgICAgID0ge2h0dHBzOi8vd3d3Lm11a28uaW5mby9tdWtvdmlzemlkb3NlL3RoZXJhcGllLWRlci1tdWtvdmlzemlkb3NlI2MxNTcxXHUyMDBCfSwgXHJcbiAgIG5vdGUgICAgICAgICA9IHtadWdyaWZmIGFtIDI1LiBTZXB0ZW1iZXIgMjAyNH0gXHJcbiB9ICBgLFxyXG5cclxuYEBtaXNje2ludGVzdGluZTIwMjRpbnRlcm5ldCwgXHJcbiAgIGF1dGhvciAgICAgICA9IHtJbnN0aXR1dGUgZm9yIFF1YWxpdHkgYW5kIEVmZmljaWVuY3kgaW4gSGVhbHRoIENhcmUgKElRV2lHKX0sIFxyXG4gICB0aXRsZSAgICAgICAgPSB7SW4gYnJpZWY6IEhvdyBkb2VzIHRoZSBpbnRlc3RpbmUgd29yaz99LCBcclxuICAgeWVhciAgICAgICAgID0gezIwMjF9LCBcclxuICAgdXJsICAgICAgICAgID0ge2h0dHBzOi8vd3d3Lm5jYmkubmxtLm5paC5nb3YvYm9va3MvTkJLMjc5MzAzXHUyMDBCfSwgXHJcbiAgIG5vdGUgICAgICAgICA9IHtadWdyaWZmIGFtIDI1LiBTZXB0ZW1iZXIgMjAyNH0gXHJcbiB9ICBgLFxyXG4gICBgQGFydGljbGV7RGVMaXNsZTIwMTMsIFxyXG5cclxuIHRpdGxlID0ge1RoZSBDeXN0aWMgRmlicm9zaXMgSW50ZXN0aW5lfSwgXHJcblxyXG4gdm9sdW1lID0gezN9LCBcclxuXHJcbiBJU1NOID0gezIxNTctMTQyMn0sIFxyXG5cclxuIHVybCA9IHtodHRwOi8vZHguZG9pLm9yZy8xMC4xMTAxL2NzaHBlcnNwZWN0LmEwMDk3NTN9LCBcclxuXHJcbiBET0kgPSB7MTAuMTEwMS9jc2hwZXJzcGVjdC5hMDA5NzUzfSwgXHJcblxyXG4gbnVtYmVyID0gezl9LCBcclxuXHJcbiBqb3VybmFsID0ge0NvbGQgU3ByaW5nIEhhcmJvciBQZXJzcGVjdGl2ZXMgaW4gTWVkaWNpbmV9LCBcclxuXHJcbiBwdWJsaXNoZXIgPSB7Q29sZCBTcHJpbmcgSGFyYm9yIExhYm9yYXRvcnl9LCBcclxuXHJcbiBhdXRob3IgPSB7RGUgTGlzbGUsIFIuIEMuIGFuZCBCb3Jvd2l0eiwgRC59LCBcclxuXHJcbiB5ZWFyID0gezIwMTN9LCBcclxuXHJcbiBtb250aCA9IGp1biwgXHJcblxyXG4gcGFnZXMgPSB7YTAwOTc1M1x1MjAxM2EwMDk3NTN9IFxyXG5cclxufSBgLFxyXG4gYEBtaXNje0dlc3VuZDIwMjRpbnRlcm5ldCwgXHJcbiAgIGF1dGhvciAgICAgICA9IHtHRVNVTkRoZWl0LkdWLkFUfSwgXHJcbiAgIHRpdGxlICAgICAgICA9IHtMZWJlcjogQXVmYmF1IHVuZCBGdW5rdGlvbn0sIFxyXG4gICB5ZWFyICAgICAgICAgPSB7MjAyNH0sIFxyXG4gICB1cmwgICAgICAgICAgPSB7aHR0cHM6Ly93d3cuZ2VzdW5kaGVpdC5ndi5hdC9rcmFua2hlaXRlbi9sZWJlci9mdW5rdGlvbi5odG1sXHUyMDBCfSwgXHJcbiAgIG5vdGUgICAgICAgICA9IHtadWdyaWZmIGFtIDI1LiBTZXB0ZW1iZXIgMjAyNH0gXHJcbiB9IGAsXHJcblxyXG4gYEBtaXNje0NGVDIyMDI0aW50ZXJuZXQsIFxyXG4gICBhdXRob3IgICAgICAgPSB7Q3lzdGljIEZpYnJvc2lzIFRydXN0fSwgXHJcbiAgIHRpdGxlICAgICAgICA9IHtIb3cgZG9lcyAgQ3lzdGljIEZpYnJvc2lzIGFmZmVjdCB0aGUgYm9keT99LCBcclxuICAgeWVhciAgICAgICAgID0gezIwMjR9LCBcclxuICAgdXJsICAgICAgICAgID0ge2h0dHBzOi8vd3d3LkN5c3RpYyBGaWJyb3Npcy5vcmcudWsvd2hhdC1pcy0tQ3lzdGljIEZpYnJvc2lzL2hvdy1kb2VzLS1DeXN0aWMgRmlicm9zaXMtYWZmZWN0LXRoZS1ib2R5XHUyMDBCfSwgXHJcbiAgIG5vdGUgICAgICAgICA9IHtadWdyaWZmIGFtIDI1LiBTZXB0ZW1iZXIgMjAyNH0gXHJcbiB9ICBgLFxyXG5cclxuIGBAbWlzY3tMaXZlcjIwMjRpbnRlcm5ldCwgXHJcbiAgIGF1dGhvciAgICAgICA9IHtCZXRhcHVkaSwgQi4sIEFsZWVtLCBBLiwgS290aGFkaWEsIEpQLn0sIFxyXG4gICB0aXRsZSAgICAgICAgPSB7Q3lzdGljIEZpYnJvc2lzIGFuZCBMaXZlciBEaXNlYXNlfSwgXHJcbiAgIHllYXIgICAgICAgICA9IHsyMDI0fSwgXHJcbiAgIHVybCAgICAgICAgICA9IHtodHRwczovL3d3dy5uY2JpLm5sbS5uaWguZ292L2Jvb2tzL05CSzU1NjA4Ni9cdTIwMEJ9LCBcclxuICAgbm90ZSAgICAgICAgID0ge1p1Z3JpZmYgYW0gMjUuIFNlcHRlbWJlciAyMDI0fSBcclxuIH0gIGAsXHJcbmBAYm9va3tuZXR0ZXIyMDE4YXRsYXMsIFxyXG5cclxuIHRpdGxlPXtBdGxhcyBvZiBIdW1hbiBBbmF0b215fSwgXHJcblxyXG4gYXV0aG9yPXtOZXR0ZXIsIEZyYW5rIEgufSwgXHJcblxyXG4geWVhcj17MjAxOH0sIFxyXG5cclxuIGVkaXRpb249ezd0aH0sIFxyXG5cclxuIHB1Ymxpc2hlcj17RWxzZXZpZXJ9IFxyXG5cclxufSBgLFxyXG5gQGJvb2t7dG9ydG9yYTIwMTZwcmluY2lwbGVzLCBcclxuXHJcbiB0aXRsZT17UHJpbmNpcGxlcyBvZiBBbmF0b215IGFuZCBQaHlzaW9sb2d5fSwgXHJcblxyXG4gYXV0aG9yPXtUb3J0b3JhLCBHZXJhcmQgSi4gYW5kIERlcnJpY2tzb24sIEJyeWFuIEgufSwgXHJcblxyXG4geWVhcj17MjAxNn0sIFxyXG5cclxuIGVkaXRpb249ezE1dGh9LCBcclxuXHJcbiBwdWJsaXNoZXI9e1dpbGV5fSBcclxuXHJcbn0gYCxcclxuYEBhcnRpY2xle0RvZGdlXzE5OTUsIFxyXG5cclxudGl0bGU9e01hbGUgZmVydGlsaXR5IGluICBDeXN0aWMgRmlicm9zaXN9LCBcclxuXHJcbnZvbHVtZT17MzQ2fSwgXHJcblxyXG5JU1NOPXswMTQwLTY3MzZ9LCBcclxuXHJcbnVybD17aHR0cDovL2R4LmRvaS5vcmcvMTAuMTAxNi9zMDE0MC02NzM2KDk1KTkxNDMxLTV9LCBcclxuXHJcbkRPST17MTAuMTAxNi9zMDE0MC02NzM2KDk1KTkxNDMxLTV9LCBcclxuXHJcbm51bWJlcj17ODk3NX0sIFxyXG5cclxuam91cm5hbD17VGhlIExhbmNldH0sIFxyXG5cclxucHVibGlzaGVyPXtFbHNldmllciBCVn0sIFxyXG5cclxuYXV0aG9yPXtEb2RnZSwgSi5BLn0sIFxyXG5cclxueWVhcj17MTk5NX0sIFxyXG5cclxubW9udGg9c2VwLCBcclxuXHJcbnBhZ2VzPXs1ODdcdTIwMTM1ODh9IFxyXG5cclxufSBgLFxyXG5gQGFydGljbGV7RGF2aXNfMjAwNiwgdGl0bGU9e0N5c3RpYyBGaWJyb3NpcyBTaW5jZSAxOTM4fSwgdm9sdW1lPXsxNzN9LCBJU1NOPXsxNTM1LTQ5NzB9LCB1cmw9e2h0dHA6Ly9keC5kb2kub3JnLzEwLjExNjQvcmNjbS4yMDA1MDUtODQwb2V9LCBET0k9ezEwLjExNjQvcmNjbS4yMDA1MDUtODQwb2V9LCBudW1iZXI9ezV9LCBqb3VybmFsPXtBbWVyaWNhbiBKb3VybmFsIG9mIFJlc3BpcmF0b3J5IGFuZCBDcml0aWNhbCBDYXJlIE1lZGljaW5lfSwgcHVibGlzaGVyPXtBbWVyaWNhbiBUaG9yYWNpYyBTb2NpZXR5fSwgYXV0aG9yPXtEYXZpcywgUGFtZWxhIEIufSwgeWVhcj17MjAwNn0sIG1vbnRoPW1hciwgcGFnZXM9ezQ3NVx1MjAxMzQ4Mn0gfSBgLFxyXG5gQG1pc2N7Q0ZUMjAyNGludGVybmV0LCBcclxuICAgYXV0aG9yICAgICAgID0ge0N5c3RpYyBGaWJyb3NpcyBUcnVzdH0sIFxyXG4gICB0aXRsZSAgICAgICAgPSB7RmVydGlsaXR5IGFuZCAgQ3lzdGljIEZpYnJvc2lzfSwgXHJcbiAgIHllYXIgICAgICAgICA9IHsyMDI0fSwgXHJcbiAgIHVybCAgICAgICAgICA9IHtodHRwczovL3d3dy5DeXN0aWMgRmlicm9zaXMub3JnLnVrL3doYXQtaXMtLUN5c3RpYyBGaWJyb3Npcy9ob3ctZG9lcy0tQ3lzdGljIEZpYnJvc2lzLWFmZmVjdC10aGUtYm9keS9zeW1wdG9tcy1vZi0tQ3lzdGljIEZpYnJvc2lzL2ZlcnRpbGl0eSBcdTIwMEJ9LCBcclxuICAgbm90ZSAgICAgICAgID0ge1p1Z3JpZmYgYW0gMjUuIFNlcHRlbWJlciAyMDI0fSBcclxuIH0gYCxcclxuICBgQG1pc2N7U0dXMjAyNGludGVybmV0LCBcclxuICAgYXV0aG9yICAgICAgID0ge1N0aWZ0dW5nIEdlc3VuZGhlaXQgV2lzc2VufSwgXHJcbiAgIHRpdGxlICAgICAgICA9IHtXaWUgZnVua3Rpb25pZXJ0IGRpZSBMdW5nZT99LCBcclxuICAgeWVhciAgICAgICAgID0gezIwMjN9LCBcclxuICAgdXJsICAgICAgICAgID0ge2h0dHBzOi8vd3d3LnN0aWZ0dW5nLWdlc3VuZGhlaXRzd2lzc2VuLmRlL2dlc3VuZGVzLWxlYmVuL2tvZXJwZXItd2lzc2VuL3dpZS1mdW5rdGlvbmllcnQtZGllLWx1bmdlXHUyMDBCfSwgXHJcbiAgIG5vdGUgICAgICAgICA9IHtadWdyaWZmIGFtIDI1LiBTZXB0ZW1iZXIgMjAyNH0gXHJcbiB9ICBgLFxyXG4gICBgQG1pc2N7Q0ZTb3VyY2UyMDI0aW50ZXJuZXQsIFxyXG4gICBhdXRob3IgICAgICAgPSB7Q0YgU291cmNlfSwgXHJcbiAgIHRpdGxlICAgICAgICA9IHtBYm5laG1lbmRlIEx1bmdlbmZ1bmt0aW9uIGFscyBMZWl0c3ltcHRvbSBiZWkgQ0Z9LCBcclxuICAgeWVhciAgICAgICAgID0gezIwMjN9LCBcclxuICAgdXJsICAgICAgICAgID0ge2h0dHA6Ly93d3cuY2Zzb3VyY2UuYXQvZGUvY3lzdGlzY2hlLWZpYnJvc2Uvc3ltcHRvbWUvbHVuZ2VcdTIwMEJ9LCBcclxuICAgbm90ZSAgICAgICAgID0ge1p1Z3JpZmYgYW0gMjUuIFNlcHRlbWJlciAyMDI0fSBcclxuIH0gYCxcclxuICBgQG1pc2N7Q0ZGMzIwMjRpbnRlcm5ldCwgXHJcbiAgIGF1dGhvciAgICAgICA9IHtDeXN0aWMgRmlicm9zaXMgRm91bmRhdGlvbn0sIFxyXG4gICB0aXRsZSAgICAgICAgPSB7QWJvdXQgQ3lzdGljIEZpYnJvc2lzfSwgXHJcbiAgIHllYXIgICAgICAgICA9IHsyMDI0fSwgXHJcbiAgIHVybCAgICAgICAgICA9IHtodHRwczovL3d3dy5jZmYub3JnL2ludHJvLWNmL2Fib3V0LS1DeXN0aWMgRmlicm9zaXNcdTIwMEJ9LCBcclxuICAgbm90ZSAgICAgICAgID0ge1p1Z3JpZmYgYW0gMjUuIFNlcHRlbWJlciAyMDI0fSBcclxuIH0gYCxcclxuICBgQGFydGljbGV7Um93ZTIwMDUsIFxyXG5cclxuIHRpdGxlID0ge0N5c3RpYyBGaWJyb3Npc30sIFxyXG5cclxuIHZvbHVtZSA9IHszNTJ9LCBcclxuXHJcbiBJU1NOID0gezE1MzMtNDQwNn0sIFxyXG5cclxuIHVybCA9IHtodHRwOi8vZHguZG9pLm9yZy8xMC4xMDU2L05FSk1yYTA0MzE4NH0sIFxyXG5cclxuIERPSSA9IHsxMC4xMDU2L25lam1yYTA0MzE4NH0sIFxyXG5cclxuIG51bWJlciA9IHsxOX0sIFxyXG5cclxuIGpvdXJuYWwgPSB7TmV3IEVuZ2xhbmQgSm91cm5hbCBvZiBNZWRpY2luZX0sIFxyXG5cclxuIHB1Ymxpc2hlciA9IHtNYXNzYWNodXNldHRzIE1lZGljYWwgU29jaWV0eX0sIFxyXG5cclxuIGF1dGhvciA9IHtSb3dlLCBTdGV2ZW4gTS4gYW5kIE1pbGxlciwgU3RhY2V5IGFuZCBTb3JzY2hlciwgRXJpYyBKLn0sIFxyXG5cclxuIHllYXIgPSB7MjAwNX0sIFxyXG5cclxuIG1vbnRoID0gbWF5LCBcclxuXHJcbiBwYWdlcyA9IHsxOTkyXHUyMDEzMjAwMX0gXHJcblxyXG59IGAsXHJcbmBAYXJ0aWNsZXtPX1N1bGxpdmFuXzIwMDksIHRpdGxlPXtDeXN0aWMgIEZpYnJvc2lzfSwgdm9sdW1lPXszNzN9LCBJU1NOPXswMTQwLTY3MzZ9LCB1cmw9e2h0dHA6Ly9keC5kb2kub3JnLzEwLjEwMTYvczAxNDAtNjczNigwOSk2MDMyNy01fSwgRE9JPXsxMC4xMDE2L3MwMTQwLTY3MzYoMDkpNjAzMjctNX0sIG51bWJlcj17OTY3OH0sIGpvdXJuYWw9e1RoZSBMYW5jZXR9LCBwdWJsaXNoZXI9e0Vsc2V2aWVyIEJWfSwgYXV0aG9yPXtPXHUyMDE5U3VsbGl2YW4sIEJyaWFuIFAgYW5kIEZyZWVkbWFuLCBTdGV2ZW4gRH0sIHllYXI9ezIwMDl9LCBtb250aD1tYXksIHBhZ2VzPXsxODkxXHUyMDEzMTkwNH0gfSBgLFxyXG5gQG1pc2N7TXVrbzYyMDI0aW50ZXJuZXQsIFxyXG4gICBhdXRob3IgICAgICAgPSB7THVuZ2VuIEluZm9ybWF0aW9uc2RpZW5zdH0sIFxyXG4gICB0aXRsZSAgICAgICAgPSB7TXVrb3Zpc3ppZG9zZTogTWVkaWthbWVudGUgdW5kIEJlaGFuZGx1bmd9LCBcclxuICAgeWVhciAgICAgICAgID0gezIwMjN9LCBcclxuICAgdXJsICAgICAgICAgID0ge2h0dHBzOi8vd3d3Lmx1bmdlbmluZm9ybWF0aW9uc2RpZW5zdC5kZS9rcmFua2hlaXRlbi9tdWtvdmlzemlkb3NlL3RoZXJhcGllXHUyMDBCfSwgXHJcbiAgIG5vdGUgICAgICAgICA9IHtadWdyaWZmIGFtIDI1LiBTZXB0ZW1iZXIgMjAyNH0gXHJcbiB9IGAsXHJcbiAgYEBhcnRpY2xle0RhaGR1bF8yMDEyLCB0aXRsZT17QSBVbmlmaWVkIEFuYXRvbXkgT250b2xvZ3kgb2YgdGhlIFZlcnRlYnJhdGUgU2tlbGV0YWwgU3lzdGVtfSwgdm9sdW1lPXs3fSwgSVNTTj17MTkzMi02MjAzfSwgdXJsPXtodHRwOi8vZHguZG9pLm9yZy8xMC4xMzcxL2pvdXJuYWwucG9uZS4wMDUxMDcwfSwgRE9JPXsxMC4xMzcxL2pvdXJuYWwucG9uZS4wMDUxMDcwfSwgbnVtYmVyPXsxMn0sIGpvdXJuYWw9e1BMb1MgT05FfSwgcHVibGlzaGVyPXtQdWJsaWMgTGlicmFyeSBvZiBTY2llbmNlIChQTG9TKX0sIGF1dGhvcj17RGFoZHVsLCBXYXNpbGEgTS4gYW5kIEJhbGhvZmYsIEphbWVzIFAuIGFuZCBCbGFja2J1cm4sIERhdmlkIEMuIGFuZCBEaWVobCwgQWxleGFuZGVyIEQuIGFuZCBIYWVuZGVsLCBNZWxpc3NhIEEuIGFuZCBIYWxsLCBCcmlhbiBLLiBhbmQgTGFwcCwgSGlsbWFyIGFuZCBMdW5kYmVyZywgSm9obiBHLiBhbmQgTXVuZ2FsbCwgQ2hyaXN0b3BoZXIgSi4gYW5kIFJpbmd3YWxkLCBNYXJ0aW4gYW5kIFNlZ2VyZGVsbCwgRXJpayBhbmQgVmFuIFNseWtlLCBDZXJpIEUuIGFuZCBWaWNrYXJ5b3VzLCBNYXR0aGV3IEsuIGFuZCBXZXN0ZXJmaWVsZCwgTW9udGUgYW5kIE1hYmVlLCBQYXVsYSBNLn0sIGVkaXRvcj17Um9iaW5zb24tUmVjaGF2aSwgTWFyY30sIHllYXI9ezIwMTJ9LCBtb250aD1kZWMsIHBhZ2VzPXtlNTEwNzB9IH0gYCxcclxuICBgQGJvb2t7TGFtYnJlY2h0c18yMDIzLCB0aXRsZT17TXVzY3Vsb3NrZWxldGFsIEFibm9ybWFsaXRpZXMgQ2F1c2VkIGJ5IEN5c3RpYyBGaWJyb3Npc30sIElTQk49ezk3ODE4MDM1NjI3MzV9LCBJU1NOPXsyNjMxLTgyNjF9LCB1cmw9e2h0dHA6Ly9keC5kb2kub3JnLzEwLjU3NzIvaW50ZWNob3Blbi4xMDQ1OTF9LCBET0k9ezEwLjU3NzIvaW50ZWNob3Blbi4xMDQ1OTF9LCBib29rdGl0bGU9e0FkdmFuY2VzIGluIFNrZWxldGFsIE11c2NsZSBIZWFsdGggYW5kIERpc2Vhc2V9LCBwdWJsaXNoZXI9e0ludGVjaE9wZW59LCBhdXRob3I9e0xhbWJyZWNodHMsIE1hcmt9LCB5ZWFyPXsyMDIzfSwgbW9udGg9bWFyIH0gYCxcclxuICBgQG1pc2N7QW5hdG9teTIwMjRpbnRlcm5ldCwgXHJcbiAgIGF1dGhvciAgICAgICA9IHtZb3VzZWYsIEguLCBBbGhhamosIE0uLCBGYWtveWEgQU8sIGV0IGFsLn0sIFxyXG4gICB0aXRsZSAgICAgICAgPSB7QW5hdG9teSwgU2tpbiAoSW50ZWd1bWVudCksIEVwaWRlcm1pc30sIFxyXG4gICB5ZWFyICAgICAgICAgPSB7MjAyNH0sIFxyXG4gICB1cmwgICAgICAgICAgPSB7aHR0cHM6Ly93d3cubmNiaS5ubG0ubmloLmdvdi9ib29rcy9OQks0NzA0NjQvfSwgXHJcbiAgIG5vdGUgICAgICAgICA9IHtadWdyaWZmIGFtIDI1LiBTZXB0ZW1iZXIyMDI0fSBcclxuIH0gIGAsXHJcbiAgIGBAYXJ0aWNsZXtEQUUxOTMxNzIsIFxyXG5cclxuYXV0aG9yID0ge05hZWhyaWcsIFN1c2FubmUgYW5kIENoYW8sIENoby1NaW5nIGFuZCBOYWVocmxpY2gsIEx1dHp9LCBcclxuXHJcbnRpdGxlID0ge3tDeXN0aWMgRmlicm9zaXN9fSwgXHJcblxyXG5qb3VybmFsID0ge0RldXRzY2hlcyBcdTAwQzRyenRlYmxhdHQgSW50ZXJuYXRpb25hbH0sIFxyXG5cclxudm9sdW1lID0gezExNH0sIFxyXG5cclxubnVtYmVyID0gezMzLTM0fSwgXHJcblxyXG5wYWdlcyA9IHs1NjQtNTc0fSwgXHJcblxyXG5kb2kgPSB7MTAuMzIzOC9hcnp0ZWJsLjIwMTcuMDU2NH0sIFxyXG5cclxueWVhciA9IHsyMDE3fSwgXHJcblxyXG5hYnN0cmFjdCA9IHtCYWNrZ3JvdW5kOiBVbml2ZXJzYWwgc2NyZWVuaW5nIG9mIG5ld2Jvcm4gYmFiaWVzIGZvciAgQ3lzdGljIEZpYnJvc2lzIHdhcyBsYXVuY2hlZCBpbiBHZXJtYW55IG9uIDEgU2VwdGVtYmVyIDIwMTYuIEhlcmUgd2UgcHJlc2VudCB1cC10by1kYXRlIGluZm9ybWF0aW9uIG9uIHRoZSBkaWFnbm9zaXMsIHRyZWF0bWVudCwgYW5kIHByb2dub3NpcyBvZiB0aGlzIGRpc2Vhc2UuTWV0aG9kczogVGhpcyBhcnRpY2xlIGlzIGJhc2VkIG9uIHJlbGV2YW50IHB1YmxpY2F0aW9ucyByZXRyaWV2ZWQgYnkgYSBzZWxlY3RpdmUgc2VhcmNoIGluIFB1Yk1lZCwgYWxvbmcgd2l0aCBndWlkZWxpbmVzIGZyb20gR2VybWFueSBhbmQgYWJyb2FkIGFuZCBzeXN0ZW1hdGljIHJldmlld3MuUmVzdWx0czogQ3lzdGljICBGaWJyb3NpcyBpcyBjYXVzZWQgYnkgYSBnZW5lIG11dGF0aW9uIGxlYWRpbmcgdG8gZHlzZnVuY3Rpb24gb2YgdGhlICBDeXN0aWMgRmlicm9zaXMgdHJhbnNtZW1icmFuZSBjb25kdWN0YW5jZSByZWd1bGF0b3IgKENGVFIpIHByb3RlaW4uIEl0IGFmZmVjdHMgbXVsdGlwbGUgb3JnYW4gc3lzdGVtc1x1MjAxNHRoZSBsdW5ncywgcGFuY3JlYXMsIHVwcGVyIGFpcndheXMsIGxpdmVyLCBpbnRlc3RpbmUsIGFuZCByZXByb2R1Y3RpdmUgb3JnYW5zXHUyMDE0dG8gdmFyeWluZyBkZWdyZWVzLiBJdHMgaW5jaWRlbmNlIGFtb25nIG5ld2Jvcm4gYmFiaWVzIGluIEdlcm1hbnkgaXMgYmV0d2VlbiAxIGluIDMzMDAgYW5kIDEgaW4gNDgwMC4gSXRzIGRpYWdub3NpcyByZXF1aXJlcyBib3RoIGNsaW5pY2FsIGV2aWRlbmNlIChwb3NpdGl2ZSBuZXdib3JuIHNjcmVlbmluZywgc2libGluZ1tzXSB3aXRoICBDeXN0aWMgRmlicm9zaXMsIGNsaW5pY2FsIHNpZ25zKSBhbmQgdGhlIGRlbW9uc3RyYXRpb24gb2YgQ0ZUUiBkeXNmdW5jdGlvbiBieSBhbiBlbGV2YXRlZCBjaGxvcmlkZSBjb25jZW50cmF0aW9uIGluIHN3ZWF0LCBhbmQvb3IgdHdvIGRpc2Vhc2UtY2F1c2luZyBtdXRhdGlvbnMsIGFuZC9vciBhYm5vcm1hbCBlbGVjdHJvcGh5c2lvbG9naWNhbCBmaW5kaW5ncyAobmFzYWwgcG90ZW50aWFsIGRpZmZlcmVuY2UgbWVhc3VyZW1lbnQsIGludGVzdGluYWwgc2hvcnQtY2lyY3VpdCBjdXJyZW50IG1lYXN1cmVtZW50KS4gUGF0aWVudHMgc2hvdWxkIGJlIGNhcmVkIGZvciBieSBzcGVjaWFsaXplZCAgQ3lzdGljIEZpYnJvc2lzIGNlbnRlcnMgaW4gY2xvc2UgY29vcGVyYXRpb24gd2l0aCB0aGVpciBwcmltYXJ5IGNhcmUgcGh5c2ljaWFucy4gVGhlIG1lZGlhbiBsaWZlIHNwYW4gb2YgcGF0aWVudHMgd2l0aCB0aGlzIGRpc2Vhc2UgaGFzIHJpc2VuIHN0ZWFkaWx5IHRvIHRoZSBjdXJyZW50IHZhbHVlIG9mIDQwIHllYXJzLiBBc2lkZSBmcm9tIHN5bXB0b21hdGljIHRyZWF0bWVudCwgdGhlIGZpcnN0IG11dGF0aW9uLXNwZWNpZmljIHRyZWF0bWVudHMgaGF2ZSByZWNlbnRseSBiZWNvbWUgYXZhaWxhYmxlLkNvbmNsdXNpb246IEVhcmx5IGRpYWdub3NpcyBhbmQgb3B0aW1pemVkIHRyZWF0bWVudCBwcm9sb25nIHRoZSBsaXZlcyBvZiBwZXJzb25zIHdpdGggIEN5c3RpYyBGaWJyb3NpcyBhbmQgaW1wcm92ZSB0aGVpciBxdWFsaXR5IG9mIGxpZmUuIENhdXNhbGx5IGRpcmVjdGVkIHRyZWF0bWVudCBmb3IgYWxsIHBhdGllbnRzIGFuZCB0aGVpciBlZmZlY3RzIG9uIHRoZSBjb3Vyc2Ugb2YgZGlzZWFzZSBhcmUgbm93IGNlbnRyYWwgaXNzdWVzIGZvciBmdXJ0aGVyIHJlc2VhcmNoLn0sIFxyXG5cclxuVVJMID0ge2h0dHBzOi8vd3d3LmFlcnp0ZWJsYXR0LmRlL2ludC9hcnRpY2xlLmFzcD9pZD0xOTMxNzJ9LCBcclxuXHJcbmVwcmludCA9IHtodHRwczovL3d3dy5hZXJ6dGVibGF0dC5kZS9wZGYuYXNwP2lkPTE5MzE3Mn0gXHJcblxyXG59IGAsXHJcblxyXG5cclxuXHJcblxyXG5cclxuXHJcbiAgXHJcbiAvKiA1MyAqL1xyXG4gIGBAYm9va3tzb2JvdHRhX2FuYXRvbWllLCAgIFxyXG4gICAgdGl0bGU9e0F0bGFzIGRlciBBbmF0b21pZSBCYW5kIDN9LCAgIFxyXG4gICAgYXV0aG9yPXtTb2JvdHRhLCBKb2hhbm5lcyBhbmQgUGF1bHNlbiwgRnJpZWRyaWNoIGFuZCBXYXNjaGtlLCBKZW5zfSwgICBcclxuICAgIHllYXI9ezIwMTd9LCAgIFxyXG4gICAgcHVibGlzaGVyPXtVcmJhbiBcXCYgRmlzY2hlcn0sICAgXHJcbiAgICBlZGl0aW9uPXsyNC4gQXVmbGFnZX0sICAgXHJcbiAgICBpc2JuPXs5NzgzNDM3MDk4MTg1fSAgIFxyXG4gIH1gLCAgIFxyXG4gIFxyXG4gIGBAbWlzY3tSZXNwMjAyNGludGVybmV0LCAgIFxyXG4gICAgYXV0aG9yPXtUaGUgUmVzcGlyYXRvcnkgU3lzdGVtfSwgICBcclxuICAgIHRpdGxlPXtOYXNlOiBEZWZpbml0aW9uLCBBbmF0b21pZSB1bmQgRnVua3Rpb259LCAgIFxyXG4gICAgeWVhcj17MjAxN30sICAgXHJcbiAgICB1cmw9e2h0dHBzOi8vd3d3LnRoZXJlc3BpcmF0b3J5c3lzdGVtLmNvbS9kZS9ub3NlL30sICAgXHJcbiAgICBub3RlPXtadWdyaWZmIGFtIDI1LiBTZXB0ZW1iZXIgMjAyNH0gICBcclxuICB9YCwgICBcclxuICBcclxuICBgQGFydGljbGV7R3V0YTIwMjEsICAgXHJcbiAgICB0aXRsZT17R2xvYmFsIEJ1cmRlbiBvZiBBbnhpZXR5IGFuZCBEZXByZXNzaW9uIGFtb25nIEN5c3RpYyBGaWJyb3NpcyBQYXRpZW50OiBTeXN0ZW1hdGljIFJldmlldyBhbmQgTWV0YS1BbmFseXNpc30sICAgXHJcbiAgICB2b2x1bWU9ezIwMjF9LCAgIFxyXG4gICAgSVNTTj17MjM1Ni02OTgxfSwgICBcclxuICAgIHVybD17aHR0cDovL2R4LmRvaS5vcmcvMTAuMTE1NS8yMDIxLzY3MDg4NjV9LCAgIFxyXG4gICAgRE9JPXsxMC4xMTU1LzIwMjEvNjcwODg2NX0sICAgXHJcbiAgICBqb3VybmFsPXtJbnRlcm5hdGlvbmFsIEpvdXJuYWwgb2YgQ2hyb25pYyBEaXNlYXNlc30sICAgXHJcbiAgICBwdWJsaXNoZXI9e0hpbmRhd2kgTGltaXRlZH0sICAgXHJcbiAgICBhdXRob3I9e0d1dGEsIE1pc3RpcmUgVGVzaG9tZSBhbmQgVGVrYWxpZ24sIFRpd2Fid29yayBhbmQgQXdva2UsIE5lZnN1IGFuZCBGaXRlLCBSb2JlcmEgT2xhbmEgYW5kIERlbmRpciwgR2V0YWh1biBhbmQgTGVuamVibywgVHNlZ2F5ZSBMb2xhc299LCAgIFxyXG4gICAgZWRpdG9yPXtSYW8sIEtvc2FnaSBTLiBKYWdhbm5hdGhhfSwgICBcclxuICAgIHllYXI9ezIwMjF9LCAgIFxyXG4gICAgbW9udGg9e2p1bH0sICAgXHJcbiAgICBwYWdlcz17MS05fSAgIFxyXG4gIH1gLCAgIFxyXG4gIC8qIDU2ICovXHJcbiAgYEBhcnRpY2xle0ZhcnJlbGwyMDE3LCAgIFxyXG4gICAgdGl0bGU9e0RpYWdub3NpcyBvZiBDeXN0aWMgRmlicm9zaXM6IENvbnNlbnN1cyBHdWlkZWxpbmVzIGZyb20gdGhlIEN5c3RpYyBGaWJyb3NpcyBGb3VuZGF0aW9ufSwgICBcclxuICAgIGF1dGhvcj17RmFycmVsbCwgUGhpbGlwIE0uIGFuZCBXaGl0ZSwgVGhvbWFzIEIuIGFuZCBSZW4sIENhcm9sIEwuIGFuZCBIZW1wc3RlYWQsIFNhcmFoIEUuIGFuZCBBY2N1cnNvLCBGcmFuayBhbmQgRGVyaWNocywgTmljbyBhbmQgSG93ZW5zdGluZSwgTWFyZ2FyZXQgUy4gYW5kIE1jQ29sbGV5LCBTdXNhbm5hIEEuIGFuZCBSb2NrLCBNaWNoYWVsIEouIGFuZCBSb3NlbmZlbGQsIE1hcmdhcmV0IGFuZCBDYW1wYmVsbCwgUGV0ZXIgVy59LCAgIFxyXG4gICAgam91cm5hbD17Sm91cm5hbCBvZiBQZWRpYXRyaWNzfSwgICBcclxuICAgIHZvbHVtZT17MTgxU30sICAgXHJcbiAgICBwYWdlcz17NC0tMTV9LCAgIFxyXG4gICAgeWVhcj17MjAxN30sICAgXHJcbiAgICBwdWJsaXNoZXI9e0Vsc2V2aWVyfSwgICBcclxuICAgIGRvaT17MTAuMTAxNi9qLmpwZWRzLjIwMTYuMDkuMDY0fSAgIFxyXG4gIH1gLCAgIFxyXG4gIFxyXG4gIGBAYXJ0aWNsZXtDYXN0ZWxsYW5pMjAwOCwgICBcclxuICAgIHRpdGxlPXtDb25zZW5zdXMgb24gdGhlIHVzZSBhbmQgaW50ZXJwcmV0YXRpb24gb2YgIEN5c3RpYyBGaWJyb3NpcyBtdXRhdGlvbiBhbmFseXNpcyBpbiBjbGluaWNhbCBwcmFjdGljZX0sICAgXHJcbiAgICBhdXRob3I9e0Nhc3RlbGxhbmksIENhcmxvIGFuZCBDdXBwZW5zLCBILiBhbmQgTWFjZWsgSnIsIE1pbGFuIGFuZCBDYXNzaW1hbiwgSmVhbi1NYXJpZSBhbmQgS2VyZW0sIEVpdGFuIGFuZCBEdXJpZSwgUGV0ZXIgYW5kIFR1bGxpcywgRWxpemFiZXRoIGFuZCBBc3NhZWwsIEIuIE0uIGFuZCBCb21iaWVyaSwgQ3Jpc3RpbmEgYW5kIEJyb3duLCBBbWFuZGEgYW5kIG90aGVyc30sICAgXHJcbiAgICBqb3VybmFsPXtKb3VybmFsIG9mIEN5c3RpYyBGaWJyb3Npc30sICAgXHJcbiAgICB2b2x1bWU9ezd9LCAgIFxyXG4gICAgbnVtYmVyPXszfSwgICBcclxuICAgIHBhZ2VzPXsxNzktLTE5Nn0sICAgXHJcbiAgICB5ZWFyPXsyMDA4fSwgICBcclxuICAgIHB1Ymxpc2hlcj17RWxzZXZpZXJ9LCAgIFxyXG4gICAgZG9pPXsxMC4xMDE2L2ouamNmLjIwMDguMDMuMDA5fSAgIFxyXG4gIH1gLCAgIFxyXG4gIFxyXG4gIGBAYXJ0aWNsZXtDb21lYXUyMDA0LCAgIFxyXG4gICAgdGl0bGU9e1BvcHVsYXRpb24tYmFzZWQgbmV3Ym9ybiBzY3JlZW5pbmcgZm9yIGdlbmV0aWMgZGlzb3JkZXJzOiB0aGUgTWFzc2FjaHVzZXR0cyBtb2RlbH0sICAgXHJcbiAgICBhdXRob3I9e0NvbWVhdSwgQXVkcmV5IE0uIGFuZCBMYXJzb24sIENoYWQgYW5kIEVhdG9uLCBSb2JlcnQgQi59LCAgIFxyXG4gICAgam91cm5hbD17UGVkaWF0cmljc30sICAgXHJcbiAgICB2b2x1bWU9ezExNH0sICAgXHJcbiAgICBudW1iZXI9ezV9LCAgIFxyXG4gICAgcGFnZXM9ezEzNzAtLTEzNzV9LCAgIFxyXG4gICAgeWVhcj17MjAwNH0sICAgXHJcbiAgICBwdWJsaXNoZXI9e0FtZXJpY2FuIEFjYWRlbXkgb2YgUGVkaWF0cmljc30sICAgXHJcbiAgICBkb2k9ezEwLjE1NDIvcGVkcy4yMDA0LTA3MTB9ICAgXHJcbiAgfWAsICAgXHJcbiAgXHJcbiAgYEBhcnRpY2xle1NvdXRoZXJuMjAwOSwgICBcclxuICAgIHRpdGxlPXtOZXdib3JuIHNjcmVlbmluZyBmb3IgIEN5c3RpYyBGaWJyb3Npc30sICAgXHJcbiAgICBhdXRob3I9e1NvdXRoZXJuLCBLZXZpbiBXLiBhbmQgTVx1MDBFOXJlbGxlLCBNYXJpZWtlIE0uIEUuIGFuZCBEYW5rZXJ0LVJvZWxzZSwgSmVhbm5ldHRlIEUuIGFuZCBOYWdlbGtlcmtlLCBOaWNvfSwgICBcclxuICAgIGpvdXJuYWw9e0NvY2hyYW5lIERhdGFiYXNlIG9mIFN5c3RlbWF0aWMgUmV2aWV3c30sICAgXHJcbiAgICB2b2x1bWU9ezF9LCAgIFxyXG4gICAgcGFnZXM9e0NEMDAxNDAyfSwgICBcclxuICAgIHllYXI9ezIwMDl9LCAgIFxyXG4gICAgcHVibGlzaGVyPXtKb2huIFdpbGV5IFxcJiBTb25zfSwgICBcclxuICAgIGRvaT17MTAuMTAwMi8xNDY1MTg1OC5DRDAwMTQwMi5wdWIyfSAgIFxyXG4gIH1gLCAgIFxyXG4gIFxyXG4gIGBAYXJ0aWNsZXtDdXR0aW5nMjAxNSwgICBcclxuICAgIHRpdGxlPXtDeXN0aWMgIEZpYnJvc2lzIGdlbmV0aWNzOiBmcm9tIG1vbGVjdWxhciB1bmRlcnN0YW5kaW5nIHRvIGNsaW5pY2FsIGFwcGxpY2F0aW9ufSwgICBcclxuICAgIGF1dGhvcj17Q3V0dGluZywgR2FycnkgUi59LCAgIFxyXG4gICAgam91cm5hbD17TmF0dXJlIFJldmlld3MgR2VuZXRpY3N9LCAgIFxyXG4gICAgdm9sdW1lPXsxNn0sICAgXHJcbiAgICBwYWdlcz17NDUtLTU2fSwgICBcclxuICAgIHllYXI9ezIwMTV9LCAgIFxyXG4gICAgcHVibGlzaGVyPXtOYXR1cmUgUHVibGlzaGluZyBHcm91cH0sICAgXHJcbiAgICBkb2k9ezEwLjEwMzgvbnJnMzg0OX0gICBcclxuICB9YCwgICBcclxuICAvKiA2MSAqL1xyXG4gIGBAYXJ0aWNsZXtDcm9zc2xleTE5NzksICAgXHJcbiAgICB0aXRsZT17RHJpZWQtYmxvb2Qgc3BvdCBzY3JlZW5pbmcgZm9yICBDeXN0aWMgRmlicm9zaXMgaW4gdGhlIG5ld2Jvcm59LCAgIFxyXG4gICAgYXV0aG9yPXtDcm9zc2xleSwgSm9obiBSLiBhbmQgRWxsaW90dCwgUm9iZXJ0IEIuIGFuZCBTbWl0aCwgUGF0cmljaWEgQS59LCAgIFxyXG4gICAgam91cm5hbD17VGhlIExhbmNldH0sICAgXHJcbiAgICB2b2x1bWU9ezF9LCAgIFxyXG4gICAgbnVtYmVyPXs4MTI2fSwgICBcclxuICAgIHBhZ2VzPXs0NzItLTQ3NH0sICAgXHJcbiAgICB5ZWFyPXsxOTc5fSwgICBcclxuICAgIHB1Ymxpc2hlcj17RWxzZXZpZXJ9LCAgIFxyXG4gICAgZG9pPXsxMC4xMDE2L1MwMTQwLTY3MzYoNzkpOTE3NTctOX0gICBcclxuICB9YCwgICBcclxuYEBib29re1BhcmFjY2hpbmkyMDExaWQsIFxyXG5cclxuIHRpdGxlID0gXCJDeXN0aWMgIEZpYnJvc2lzIG5ld2Jvcm4gc2NyZWVuaW5nOiBEaXN0cmlidXRpb24gb2YgYmxvb2QgXHJcblxyXG4gaW1tdW5vcmVhY3RpdmUgdHJ5cHNpbm9nZW4gY29uY2VudHJhdGlvbnMgaW4gaHlwZXJ0cnlwc2luZW1pYyBcclxuXHJcbiBuZW9uYXRlc1wiLCBcclxuXHJcbiBib29rdGl0bGUgPSBcIntKSU1EfSBSZXBvcnRzXCIsIFxyXG5cclxuIGF1dGhvciA9IFwiUGFyYWNjaGluaSwgVmFsZW50aW5hIGFuZCBTZWlhLCBNYW51ZWxhIGFuZCBSYWltb25kaSwgU2FyYSBhbmQgXHJcblxyXG4gQ29zdGFudGlubywgTHVjeSBhbmQgQ2FwYXNzbywgUGF0cml6aWEgYW5kIFBvcmNhcm8sIEx1aWdpIGFuZCBcclxuXHJcbiBDb2xvbWJvLCBDYXJsYSBhbmQgQ292aWVsbG8sIERvbWVuaWNvIEEgYW5kIE1hcmlhbmksIFRpemlhbmEgYW5kIFxyXG5cclxuIE1hbnpvbmksIEVtYW51ZWxhIGFuZCBTYW5naW92YW5uaSwgTW9uaWNhIGFuZCBDb3JiZXR0YSwgQ2FybG9cIiwgXHJcblxyXG4gcHVibGlzaGVyID0gXCJTcHJpbmdlciBCZXJsaW4gSGVpZGVsYmVyZ1wiLCBcclxuXHJcbiBwYWdlcyA9IFwiMTctLTIzXCIsIFxyXG5cclxuIHNlcmllcyA9IFwiSklNRCByZXBvcnRzXCIsIFxyXG5cclxuIHllYXIgPSAyMDExLCBcclxuXHJcbiBhZGRyZXNzID0gXCJCZXJsaW4sIEhlaWRlbGJlcmdcIiBcclxuXHJcbn0gYCxcclxuYEBhcnRpY2xle3NvdXRoZXJuMjAwN3N1cnZleSwgXHJcblxyXG4gdGl0bGU9e0Egc3VydmV5IG9mIG5ld2Jvcm4gc2NyZWVuaW5nIGZvciAgQ3lzdGljIEZpYnJvc2lzIGluIEV1cm9wZX0sIFxyXG5cclxuIGF1dGhvcj17U291dGhlcm4sIEtldmluIFcgYW5kIE11bmNrLCBBbm5lIGFuZCBQb2xsaXR0LCBSb2RuZXkgYW5kIFRyYXZlcnQsIEdlb3JnZXMgYW5kIFphbm9sbGEsIEx1aXNhIGFuZCBEYW5rZXJ0LVJvZWxzZSwgSmVhbm5ldHRlIGFuZCBDYXN0ZWxsYW5pLCBDYXJsbyBhbmQgRUNGUyBDRiBOZW9uYXRhbCBTY3JlZW5pbmcgV29ya2luZyBHcm91cCBhbmQgb3RoZXJzfSwgXHJcblxyXG4gam91cm5hbD17Sm91cm5hbCBvZiBDeXN0aWMgRmlicm9zaXN9LCBcclxuXHJcbiB2b2x1bWU9ezZ9LCBcclxuXHJcbiBudW1iZXI9ezF9LCBcclxuXHJcbiBwYWdlcz17NTctLTY1fSwgXHJcblxyXG4geWVhcj17MjAwN30sIFxyXG5cclxuIHB1Ymxpc2hlcj17RWxzZXZpZXJ9IFxyXG5cclxufSBgLFxyXG4gLyogNjQpKi9cclxuIGBAQVJUSUNMRXtNaXNocmEyMDA4LWlhLCBcclxuXHJcbiB0aXRsZSA9IFwiRGlhZ25vc2lzIG9mICBDeXN0aWMgRmlicm9zaXMgYnkgc3dlYXQgdGVzdGluZzogYWdlLXNwZWNpZmljIFxyXG5cclxuIHJlZmVyZW5jZSBpbnRlcnZhbHNcIiwgXHJcblxyXG4gYXV0aG9yID0gXCJNaXNocmEsIEF2YW50aWthIGFuZCBHcmVhdmVzLCBSb25kYSBhbmQgU21pdGgsIEthdGhlcmluZSBhbmQgXHJcblxyXG4gQ2FybGluLCBKb2huIEIgYW5kIFdvb3R0b24sIEFuZHJldyBhbmQgU3RpcmxpbmcsIFJvYiBhbmQgTWFzc2llLCBcclxuXHJcbiBKb2huXCIsIFxyXG5cclxuIGFic3RyYWN0ID0gXCJPQkpFQ1RJVkU6IFRvIGRldmVsb3AgcmVmZXJlbmNlIGludGVydmFscyAoUklzKSBmb3Igc3dlYXQgXHJcblxyXG4gY2hsb3JpZGUgYW5kIHNvZGl1bSBpbiBoZWFsdGh5IGNoaWxkcmVuLCBhZG9sZXNjZW50cywgYW5kIFxyXG5cclxuIGFkdWx0cy4gU1RVRFkgREVTSUdOOiBIZWFsdGh5LCB1bnJlbGF0ZWQgc3ViamVjdHMgYWdlZCBmcm9tIDUgdG8gXHJcblxyXG4gPjUwIHllYXJzIGFuZCBzdWJqZWN0cyB3aG8gd2VyZSBwYW5jcmVhdGljIGluc3VmZmljaWVudCB3aXRoIFxyXG5cclxuICBDeXN0aWMgRmlicm9zaXMgKENGKSB3ZXJlIHJlY3J1aXRlZC4gU3dlYXQgY29sbGVjdGlvbiB3YXMgXHJcblxyXG4gcGVyZm9ybWVkIG9uIGFsbCBzdWJqZWN0cyB3aXRoIHRoZSBXZXNjb3IgTWFjcm9kdWN0IHN5c3RlbS4gXHJcblxyXG4gU3dlYXQgZWxlY3Ryb2x5dGVzIHdlcmUgYW5hbHl6ZWQgd2l0aCBkaXJlY3QgaW9uIHNlbGVjdGl2ZSBcclxuXHJcbiBlbGVjdHJvZGVzLiBEZWx0YUY1MDggbXV0YXRpb24gYW5hbHlzaXMgd2FzIHBlcmZvcm1lZCBvbiB0aGUgXHJcblxyXG4gaGVhbHRoeSBzdWJqZWN0cyA+Lz0xNSB5ZWFycyBvbGQuIFJFU1VMVFM6IEEgdG90YWwgb2YgMjgyIFxyXG5cclxuIGhlYWx0aHkgYW5kIDQwIHN1YmplY3RzIHdpdGggQ0Ygd2VyZSBpbmNsdWRlZCBmb3IgYW5hbHlzaXMuIFxyXG5cclxuIFRoZXJlIHdhcyBubyBvdmVybGFwIG9mIHN3ZWF0IGNobG9yaWRlIGJldHdlZW4gdGhlIGdyb3VwIHdpdGggQ0YgXHJcblxyXG4gYW5kIHRoZSBncm91cCB3aXRob3V0IENGLCBidXQgdGhlcmUgd2FzIHNvbWUgb3ZlcmxhcCBvZiBzd2VhdCBcclxuXHJcbiBzb2RpdW0uIFN3ZWF0IGNobG9yaWRlIGluY3JlYXNlZCB3aXRoIGFnZSwgd2l0aCB0aGUgcmF0ZSBvZiBcclxuXHJcbiBpbmNyZWFzZSBzbG93aW5nIHByb2dyZXNzaXZlbHkgdG8gemVybyBhZnRlciB0aGUgYWdlIG9mIDE5IFxyXG5cclxuIHllYXJzLiBUaGUgZXN0aW1hdGVkIG1lZGlhbiAoOTVcXCUgUkkpIGZvciBzd2VhdCBjaGxvcmlkZSB3ZXJlOiA1IFxyXG5cclxuIHRvIDkgeWVhcnMsIDEzIG1tb2wvTCAoMS0zOSBtbW9sL0wpOyAxMCB0byAxNCB5ZWFycywgMThtbW9sL0wgXHJcblxyXG4gKDMtNDcgbW1vbC9MKTsgMTUgdG8gMTkgeWVhcnMsIDIwIG1tb2wvTCAoMy01MW1tb2wvTCk7IGFuZCAyMCsgXHJcblxyXG4geWVhcnMgMjMgbW1vbC9MICg1LTU2bW1vbC9MKS4gQ09OQ0xVU0lPTlM6IFdlIGhhdmUgc3VjY2Vzc2Z1bGx5IFxyXG5cclxuIGRldmVsb3BlZCB0aGUgYWdlLXJlbGF0ZWQgUkkgZm9yIHN3ZWF0IGVsZWN0cm9seXRlcywgd2hpY2ggd2lsbCBcclxuXHJcbiBiZSB1c2VmdWwgZm9yIGNsaW5pY2lhbnMgaW50ZXJwcmV0aW5nIHN3ZWF0IHRlc3QgcmVzdWx0cyBmcm9tIFxyXG5cclxuIGNoaWxkcmVuLCBhZG9sZXNjZW50cywgYW5kIGFkdWx0cy5cIiwgXHJcblxyXG4gam91cm5hbCA9IFwiSi4gUGVkaWF0ci5cIiwgXHJcblxyXG4gcHVibGlzaGVyID0gXCJFbHNldmllciBCVlwiLCBcclxuXHJcbiB2b2x1bWUgPSAxNTMsIFxyXG5cclxuIG51bWJlciA9IDYsIFxyXG5cclxuIHBhZ2VzID0gXCI3NTgtLTc2M1wiLCBcclxuXHJcbiBtb250aCA9IGRlYywgXHJcblxyXG4geWVhciA9IDIwMDgsIFxyXG5cclxuIGxhbmd1YWdlID0gXCJlblwiIFxyXG5cclxufSBgLFxyXG5cclxuYFxyXG5AbWlzY3tlZndlZndlLFxyXG5hdXRob3IgPSB7Q3lzdGljIEZpYnJvc2lzIEZvdW5kYXRpb259LFxyXG50aXRsZSA9IHtOZXdib3JuIFNjcmVlbmluZyBmb3IgQ0Z9LCBcclxudXJsID0ge2h0dHBzOi8vd3d3LmNmZi5vcmcvaW50cm8tY2YvbmV3Ym9ybi1zY3JlZW5pbmctY2Z9LCBcclxubm90ZSA9IHtBY2Nlc3NlZCBvbiAwMi4gT2N0b2JlciAyMDI0fVxyXG59XHJcbmAsXHJcblxyXG5cclxuXHJcblxyXG5cclxuICAvKiA2NiAqL1xyXG4gIGBAYm9va3tIZWd5aTIwMTYsICAgXHJcbiAgICBhdXRob3I9e0hlZ3lpLCBQXHUwMEU5dGVyIGFuZCBXaWxzY2hhbnNraSwgTWljaGFlbCBhbmQgTXVhbGxlbSwgU2htdWVsIGFuZCBMdWthY3MsIEdlcmdlbHkgTC4gYW5kIFNhaGluLVRcdTAwRjN0aCwgTWlrbFx1MDBGM3MgYW5kIFVjLCBBbGl5ZSBhbmQgR3JheSwgTWljaGFlbCBBLiBhbmQgUmFrb25jemF5LCBab2x0XHUwMEUxbiBhbmQgTWFsXHUwMEU5dGgsIEpcdTAwRjN6c2VmfSwgICBcclxuICAgIGVkaXRvcj17TmlsaXVzLCBCZXJuZCBhbmQgZGUgVG9tYmUsIFBpZXRlciBhbmQgR3VkZXJtYW5uLCBUaG9tYXMgYW5kIEphaG4sIFJlaW5oYXJkIGFuZCBMaWxsLCBSb2xhbmQgYW5kIFBldGVyc2VuLCBPbGUgSC59LCAgIFxyXG4gICAgdGl0bGU9e0NGVFI6IEEgTmV3IEhvcml6b24gaW4gdGhlIFBhdGhvbWVjaGFuaXNtIGFuZCBUcmVhdG1lbnQgb2YgUGFuY3JlYXRpdGlzfSwgICBcclxuICAgIGJvb2tUaXRsZT17UmV2aWV3cyBvZiBQaHlzaW9sb2d5LCBCaW9jaGVtaXN0cnkgYW5kIFBoYXJtYWNvbG9neSBWb2wuIDE3MH0sICAgXHJcbiAgICB5ZWFyPXsyMDE2fSwgICBcclxuICAgIHB1Ymxpc2hlcj17U3ByaW5nZXIgSW50ZXJuYXRpb25hbCBQdWJsaXNoaW5nfSwgICBcclxuICAgIGFkZHJlc3M9e0NoYW19LCAgIFxyXG4gICAgcGFnZXM9ezM3LS02Nn0sICAgXHJcbiAgICBpc2JuPXs5NzgtMy0zMTktMzE0OTItMX0sICAgXHJcbiAgICBkb2k9ezEwLjEwMDcvMTEyXzIwMTVfNTAwMn0sICAgXHJcbiAgICB1cmw9e2h0dHBzOi8vZG9pLm9yZy8xMC4xMDA3LzExMl8yMDE1XzUwMDJ9ICAgXHJcbiAgfWAsICAgXHJcbiAgXHJcbiAgYEBhcnRpY2xle2ZhcnJlbGwyMDIwaW1wYWN0LCAgIFxyXG4gICAgdGl0bGU9e1RoZSBpbXBhY3Qgb2YgdGhlIENGVFIgZ2VuZSBkaXNjb3Zlcnkgb24gIEN5c3RpYyBGaWJyb3NpcyBkaWFnbm9zaXMsIGNvdW5zZWxpbmcsIGFuZCBwcmV2ZW50aXZlIHRoZXJhcHl9LCAgIFxyXG4gICAgYXV0aG9yPXtGYXJyZWxsLCBQaGlsaXAgTSBhbmQgUm9jaywgTWljaGFlbCBKIGFuZCBCYWtlciwgTWVpIFd9LCAgIFxyXG4gICAgam91cm5hbD17R2VuZXN9LCAgIFxyXG4gICAgdm9sdW1lPXsxMX0sICAgXHJcbiAgICBudW1iZXI9ezR9LCAgIFxyXG4gICAgcGFnZXM9ezQwMX0sICAgXHJcbiAgICB5ZWFyPXsyMDIwfSwgICBcclxuICAgIHB1Ymxpc2hlcj17TURQSX0gICBcclxuICB9YCwgICBcclxuICBcclxuICBgQGFydGljbGV7Rmx1bWUyMDA5LCAgIFxyXG4gICAgdGl0bGU9e0N5c3RpYyAgRmlicm9zaXMgcHVsbW9uYXJ5IGd1aWRlbGluZXM6IGFpcndheSBjbGVhcmFuY2UgdGhlcmFwaWVzfSwgICBcclxuICAgIGF1dGhvcj17Rmx1bWUsIFBhdHJpY2sgQS4gYW5kIFJvYmluc29uLCBLYXJlbiBBLiBhbmQgTydTdWxsaXZhbiwgQnJpYW4gUCBhbmQgRmluZGVyLCBKb24gRCBhbmQgVmVuZGVyLCBSb2JpbiBMIGFuZCBXaWxsZXktQ291cmFuZCwgRG9ubmEgQiBhbmQgV2hpdGUsIFRob21hcyBCIGFuZCBNYXJzaGFsbCwgQnJ1Y2UgQy59LCAgIFxyXG4gICAgam91cm5hbD17UmVzcGlyYXRvcnkgQ2FyZX0sICAgXHJcbiAgICB2b2x1bWU9ezU0fSwgICBcclxuICAgIG51bWJlcj17NH0sICAgXHJcbiAgICBwYWdlcz17NTIyLS01Mzd9LCAgIFxyXG4gICAgeWVhcj17MjAwOX0sICAgXHJcbiAgICBwdWJsaXNoZXI9e1Jlc3BpcmF0b3J5IENhcmV9LCAgIFxyXG4gICAgZG9pPXsxMC40MTg3L2FhcmMwNTU1fSAgIFxyXG4gIH1gLCAgIFxyXG4gIFxyXG4gIGBAYXJ0aWNsZXtSRUlTTUFOMTk4ODYzMiwgICBcclxuICAgIHRpdGxlPXtSb2xlIG9mIGNvbnZlbnRpb25hbCBwaHlzaW90aGVyYXB5IGluICBDeXN0aWMgRmlicm9zaXN9LCAgIFxyXG4gICAgam91cm5hbD17VGhlIEpvdXJuYWwgb2YgUGVkaWF0cmljc30sICAgXHJcbiAgICB2b2x1bWU9ezExM30sICAgXHJcbiAgICBudW1iZXI9ezR9LCAgIFxyXG4gICAgcGFnZXM9ezYzMi02MzZ9LCAgIFxyXG4gICAgeWVhcj17MTk4OH0sICAgXHJcbiAgICBpc3NuPXswMDIyLTM0NzZ9LCAgIFxyXG4gICAgZG9pPXtodHRwczovL2RvaS5vcmcvMTAuMTAxNi9TMDAyMi0zNDc2KDg4KTgwMzcwLTZ9LCAgIFxyXG4gICAgdXJsPXtodHRwczovL3d3dy5zY2llbmNlZGlyZWN0LmNvbS9zY2llbmNlL2FydGljbGUvcGlpL1MwMDIyMzQ3Njg4ODAzNzA2fSwgICBcclxuICAgIGF1dGhvcj17UmVpc21hbiwgSm9obiBKLiBhbmQgUml2aW5ndG9uLUxhdywgQmV0dHkgYW5kIENvcmV5LCBNYXJ5IGFuZCBNYXJjb3R0ZSwgSmFjcXVlcyBhbmQgV2FubmFtYWtlciwgRWxlYW5vciBhbmQgSGFyY291cnQsIERhd24gYW5kIExldmlzb24sIEhlbnJ5fSAgIFxyXG4gIH1gLCAgIFxyXG4gIFxyXG4gIGBAYXJ0aWNsZXtXYWlud3JpZ2h0MjAxNSwgICBcclxuICAgIHRpdGxlPXtMdW1hY2FmdG9yLWl2YWNhZnRvciBpbiBwYXRpZW50cyB3aXRoICBDeXN0aWMgRmlicm9zaXMgaG9tb3p5Z291cyBmb3IgUGhlNTA4ZGVsIENGVFJ9LCAgIFxyXG4gICAgYXV0aG9yPXtXYWlud3JpZ2h0LCBDbGFpcmUgRSBhbmQgRWxib3JuLCBKIFN0dWFydCBhbmQgUmFtc2V5LCBCb25uaWUgVyBhbmQgTWFyaWdvd2RhLCBHaXJpc2ggYW5kIEh1YW5nLCBYaW54aW4gYW5kIENpcG9sbGksIE1hcmNvIGFuZCBDb2xvbWJvLCBDYXJsbyBhbmQgRGF2aWVzLCBKYW5lIEMgYW5kIERlIEJvZWNrLCBLcmlzIGFuZCBGbHVtZSwgUGF0cmljayBBIGFuZCBvdGhlcnN9LCAgIFxyXG4gICAgam91cm5hbD17TmV3IEVuZ2xhbmQgSm91cm5hbCBvZiBNZWRpY2luZX0sICAgXHJcbiAgICB2b2x1bWU9ezM3M30sICAgXHJcbiAgICBudW1iZXI9ezN9LCAgIFxyXG4gICAgcGFnZXM9ezIyMC0tMjMxfSwgICBcclxuICAgIHllYXI9ezIwMTV9LCAgIFxyXG4gICAgcHVibGlzaGVyPXtNYXNzYWNodXNldHRzIE1lZGljYWwgU29jaWV0eX0sICAgXHJcbiAgICBkb2k9ezEwLjEwNTYvTkVKTW9hMTQwOTU0N30gICBcclxuICB9YCwgICBcclxuICBcclxuICBgQGFydGljbGV7R2VsbGVyNjU4LCAgIFxyXG4gICAgYXV0aG9yPXtHZWxsZXIsIERhdmlkIEV9LCAgIFxyXG4gICAgdGl0bGU9e0Flcm9zb2wgQW50aWJpb3RpY3MgaW4gQ3lzdGljIEZpYnJvc2lzfSwgICBcclxuICAgIHZvbHVtZT17NTR9LCAgIFxyXG4gICAgbnVtYmVyPXs1fSwgICBcclxuICAgIHBhZ2VzPXs2NTgtLTY3MH0sICAgXHJcbiAgICB5ZWFyPXsyMDA5fSwgICBcclxuICAgIHB1Ymxpc2hlcj17UmVzcGlyYXRvcnkgQ2FyZX0sICAgXHJcbiAgICBpc3NuPXswMDIwLTEzMjR9LCAgIFxyXG4gICAgdXJsPXtodHRwczovL3JjLnJjam91cm5hbC5jb20vY29udGVudC81NC81LzY1OH0sICAgXHJcbiAgICBlcHJpbnQ9e2h0dHBzOi8vcmMucmNqb3VybmFsLmNvbS9jb250ZW50LzU0LzUvNjU4LmZ1bGwucGRmfSwgICBcclxuICAgIGpvdXJuYWw9e1Jlc3BpcmF0b3J5IENhcmV9ICAgXHJcbiAgfWAsXHJcbiAgYEBBUlRJQ0xFe0d1bzIwMjItY2gsICAgXHJcbiAgICB0aXRsZT17V29ybGR3aWRlIHJhdGVzIG9mIGRpYWdub3NpcyBhbmQgZWZmZWN0aXZlIHRyZWF0bWVudCBmb3IgIEN5c3RpYyBGaWJyb3Npc30sICAgXHJcbiAgICBhdXRob3I9e0d1bywgSm9uYXRoYW4gYW5kIEdhcnJhdHQsIEFubmEgYW5kIEhpbGwsIEFuZHJld30sICAgXHJcbiAgICBqb3VybmFsPXtKb3VybmFsIG9mIEN5c3RpYyBGaWJyb3Npc30sICAgXHJcbiAgICB2b2x1bWU9ezIxfSwgICBcclxuICAgIG51bWJlcj17M30sICAgXHJcbiAgICBwYWdlcz17NDU2LS00NjJ9LCAgIFxyXG4gICAgeWVhcj17MjAyMn0sICAgXHJcbiAgICBtb250aD17bWF5fSwgICBcclxuICAgIGRvaT17MTAuMTAxNi9qLmpjZi4yMDIxLjEyLjAwMX0sICAgXHJcbiAgICBrZXl3b3Jkcz17Q0ZUUiBtb2R1bGF0b3IsIEN5c3RpYyAgRmlicm9zaXMsIEVwaWRlbWlvbG9neSwgSXZhY2FmdG9yL3RlemFjYWZ0b3IvZWxleGFjYWZ0b3J9LCAgIFxyXG4gICAgcHVibGlzaGVyPXtFbHNldmllciBCVn0gICBcclxuICB9YCwgICBcclxuICBcclxuICBgQGFydGljbGV7R3JpZXNlbmJhY2gyMDEzLCAgIFxyXG4gICAgdGl0bGU9e0dlbmUgdGhlcmFweSBwcm9ncmVzcyBhbmQgcHJvc3BlY3RzOiAgQ3lzdGljIEZpYnJvc2lzfSwgICBcclxuICAgIGF1dGhvcj17R3JpZXNlbmJhY2gsIFV0YSBhbmQgQWx0b24sIEVyaWMgV0ZXfSwgICBcclxuICAgIGpvdXJuYWw9e0dlbmUgVGhlcmFweX0sICAgXHJcbiAgICB2b2x1bWU9ezIwfSwgICBcclxuICAgIG51bWJlcj17Nn0sICAgXHJcbiAgICBwYWdlcz17NjQxLS02NDl9LCAgIFxyXG4gICAgeWVhcj17MjAxM30sICAgXHJcbiAgICBwdWJsaXNoZXI9e05hdHVyZSBQdWJsaXNoaW5nIEdyb3VwfSwgICBcclxuICAgIGRvaT17MTAuMTAzOC9ndC4yMDEzLjIwfSAgIFxyXG4gIH1gLCAgIFxyXG4gIFxyXG4gIGBAbWlzY3tNdWtvNTIwMjRpbnRlcm5ldCwgICBcclxuICAgIGF1dGhvcj17TXVrb3Zpc3ppZG9zZSBlLlZ9LCAgIFxyXG4gICAgdGl0bGU9e1RoZXJhcGllIGRlciBNdWtvdmlzemlkb3NlfSwgICBcclxuICAgIHllYXI9ezIwMjR9LCAgIFxyXG4gICAgdXJsPXtodHRwczovL3d3dy5tdWtvLmluZm8vbXVrb3Zpc3ppZG9zZS90aGVyYXBpZS1kZXItbXVrb3Zpc3ppZG9zZX0sICAgXHJcbiAgICBub3RlPXtadWdyaWZmIGFtIDA3LiBBdWd1c3QgMjAyNH0gICBcclxuICB9YCwgICBcclxuICAvKiA3NSAqL1xyXG4gIGBAYXJ0aWNsZXtqaWEyMDIzLCAgIFxyXG4gICAgYXV0aG9yPXtKaWEsIFNoaWppbmcgYW5kIFRheWxvci1Db3VzYXIsIEplbm5pZmVyIEwufSwgICBcclxuICAgIHRpdGxlPXtDeXN0aWMgRmlicm9zaXMgTW9kdWxhdG9yIFRoZXJhcGllc30sICAgXHJcbiAgICBqb3VybmFsPXtBbm51YWwgUmV2aWV3IG9mIE1lZGljaW5lfSwgICBcclxuICAgIHZvbHVtZT17NzR9LCAgIFxyXG4gICAgcGFnZXM9ezQxMy00MjZ9LCAgIFxyXG4gICAgeWVhcj17MjAyM30sICAgXHJcbiAgICBkb2k9ezEwLjExNDYvYW5udXJldi1tZWQtMDQyOTIxLTAyMTQ0N30sICAgXHJcbiAgICB1cmw9e2h0dHBzOi8vd3d3LmFubnVhbHJldmlld3Mub3JnL2NvbnRlbnQvam91cm5hbHMvMTAuMTE0Ni9hbm51cmV2LW1lZC0wNDI5MjEtMDIxNDQ3fSwgICBcclxuICAgIHB1Ymxpc2hlcj17QW5udWFsIFJldmlld3N9LCAgIFxyXG4gICAgaXNzbj17MTU0NS0zMjZYfSAgIFxyXG4gIH1gLCAgIFxyXG4gIFxyXG4gIGBAYXJ0aWNsZXtUdW1tbGVyMjAxNiwgICBcclxuICAgIGF1dGhvcj17VFx1MDBGQ21tbGVyLCBCLn0sICAgXHJcbiAgICB0aXRsZT17VGhlcmFwaWUgZGVyIE11a292aXN6aWRvc2UgbWl0IENGVFItTW9kdWxhdG9yZW59LCAgIFxyXG4gICAgam91cm5hbD17UG5ldW1vbG9naWV9LCAgIFxyXG4gICAgdm9sdW1lPXs3MH0sICAgXHJcbiAgICBudW1iZXI9ezN9LCAgIFxyXG4gICAgcGFnZXM9ezMwMS0zMTN9LCAgIFxyXG4gICAgeWVhcj17MjAxNn0sICAgXHJcbiAgICBkb2k9ezEwLjEwNTUvcy0wMDQyLTEwMDYwN30sICAgXHJcbiAgICB1cmw9e2h0dHBzOi8vd3d3LnRoaWVtZS1jb25uZWN0LmNvbS9wcm9kdWN0cy9lam91cm5hbHMvcGRmLzEwLjEwNTUvcy0wMDQyLTEwMDYwNy5wZGZ9LCAgIFxyXG4gICAgcHVibGlzaGVyPXtHZW9yZyBUaGllbWUgVmVybGFnIEtHfSwgICBcclxuICAgIGlzc249ezA5MzQtODM4N30gICBcclxuICB9YCwgICBcclxuICBcclxuICBgQG1pc2N7TXVrbzQyMDI0aW50ZXJuZXQsICAgXHJcbiAgICBhdXRob3I9e011a292aXN6aWRvc2UgZS5WfSwgICBcclxuICAgIHRpdGxlPXtLYWZ0cmlvIChUcmlrYWZ0YSkgLSBUcmlwbGUtVGhlcmFwaWUgZlx1MDBGQ3IgTXVrb3Zpc3ppZG9zZSAoQ0YpfSwgICBcclxuICAgIHllYXI9ezIwMjR9LCAgIFxyXG4gICAgdXJsPXtodHRwczovL3d3dy5tdWtvLmluZm8vbXVrb3Zpc3ppZG9zZS90aGVyYXBpZS1kZXItbXVrb3Zpc3ppZG9zZS9rYWZ0cmlvLXRyaWthZnRhfSwgICBcclxuICAgIG5vdGU9e1p1Z3JpZmYgYW0gMDcuIEF1Z3VzdCAyMDI0fSAgIFxyXG4gIH1gLCAgIFxyXG4gIFxyXG4gIGBAYXJ0aWNsZXtyb2RhMjAyMm5ldywgICBcclxuICAgIGF1dGhvcj17Um9kYSwgSnVsaWFuYSBhbmQgUGludG8tU2lsdmEsIENhdGFyaW5hIGFuZCBTaWx2YSwgSXJpcyBBLiBJLiBhbmQgTWFpYSwgQ2FybGEgYW5kIEFsbWVpZGEsIFN1c2FuYSBhbmQgRmVycmVpcmEsIFJpY2FyZG8gYW5kIE9saXZlaXJhLCBHdWlvbWFyfSwgICBcclxuICAgIHRpdGxlPXtOZXcgZHJ1Z3MgaW4gIEN5c3RpYyBGaWJyb3Npczogd2hhdCBoYXMgY2hhbmdlZCBpbiB0aGUgbGFzdCBkZWNhZGU/fSwgICBcclxuICAgIGpvdXJuYWw9e1RoZXJhcGV1dGljIEFkdmFuY2VzIGluIENocm9uaWMgRGlzZWFzZX0sICAgXHJcbiAgICB2b2x1bWU9ezEzfSwgICBcclxuICAgIHBhZ2VzPXsyMDQwNjIyMzIyMTA5ODEzNn0sICAgXHJcbiAgICB5ZWFyPXsyMDIyfSwgICBcclxuICAgIGRvaT17MTAuMTE3Ny8yMDQwNjIyMzIyMTA5ODEzNn0sICAgXHJcbiAgICBwbWlkPXszNTYyMDE4OH0sICAgXHJcbiAgICBwbWM9e1BNQzkxMjgwNTJ9LCAgIFxyXG4gICAgaXNzbj17MjA0MC02MjIzfSwgICBcclxuICAgIG5vdGU9e2VDb2xsZWN0aW9uIDIwMjJ9LCAgIFxyXG4gICAgcHVibGlzaGVyPXtTQUdFIFB1YmxpY2F0aW9uc30sICAgXHJcbiAgICB1cmw9e2h0dHBzOi8vZG9pLm9yZy8xMC4xMTc3LzIwNDA2MjIzMjIxMDk4MTM2fSAgIFxyXG4gIH1gLCAgIFxyXG4gIFxyXG4gIGBAbWlzY3tNdWtvMzIwMjRpbnRlcm5ldCwgICBcclxuICAgIGF1dGhvcj17TXVrb3Zpc3ppZG9zZSBlLlZ9LCAgIFxyXG4gICAgdGl0bGU9e09ya2FtYmkgLSBDRlRSLU1vZHVsYXRvciBiZWkgendlaSBGNTA4ZGVsLU11dGF0aW9uZW59LCAgIFxyXG4gICAgeWVhcj17MjAyNH0sICAgXHJcbiAgICB1cmw9e2h0dHBzOi8vd3d3Lm11a28uaW5mby9tdWtvdmlzemlkb3NlL3RoZXJhcGllLWRlci1tdWtvdmlzemlkb3NlL29ya2FtYml9LCAgIFxyXG4gICAgbm90ZT17WnVncmlmZiBhbSAwNy4gQXVndXN0IDIwMjR9ICAgXHJcbiAgfWAsICAgXHJcbiAgXHJcbiAgYEBtaXNje011a28yMjAyNGludGVybmV0LCAgIFxyXG4gICAgYXV0aG9yPXtNdWtvdmlzemlkb3NlIGUuVn0sICAgXHJcbiAgICB0aXRsZT17S2FseWRlY28gKEl2YWZhY3RvcikgLSBDRlRSLU1vZHVsYXRvciBiZWkgR2F0aW5nLU11dGF0aW9uZW59LCAgIFxyXG4gICAgeWVhcj17MjAyNH0sICAgXHJcbiAgICB1cmw9e2h0dHBzOi8vd3d3Lm11a28uaW5mby9tdWtvdmlzemlkb3NlL3RoZXJhcGllLWRlci1tdWtvdmlzemlkb3NlL2thbHlkZWNvfSwgICBcclxuICAgIG5vdGU9e1p1Z3JpZmYgYW0gMDcuIEF1Z3VzdCAyMDI0fSAgIFxyXG4gIH1gLCAgIFxyXG4gIC8qIDgxICovXHJcbiAgYEBtaXNje1B1bG1vMjAyNGludGVybmV0LCAgIFxyXG4gICAgYXV0aG9yPXtQdWxtb255emUgZG9ybmFzZSBhbGZhIEluaGFsYXRpb24gU29sdXRpb259LCAgIFxyXG4gICAgdGl0bGU9e1doYXQgaXMgUHVsbW9ueXplP30sICAgXHJcbiAgICB5ZWFyPXsyMDE5fSwgICBcclxuICAgIHVybD17aHR0cHM6Ly93d3cucHVsbW96eW1lLmdsb2JhbC9ob21lLmh0bWx9LCAgIFxyXG4gICAgbm90ZT17WnVncmlmZiBhbSAwNy4gQXVndXN0IDIwMjR9ICAgXHJcbiAgfWAsICAgXHJcbiAgXHJcbiAgYEBtaXNje3B1bG1venltZV9hcHByb3ZhbF9DREVSLCAgIFxyXG4gICAgYXV0aG9yPXtDZW50ZXIgZm9yIERydWcgRXZhbHVhdGlvbiBhbmQgUmVzZWFyY2ggKENERVIpfSwgICBcclxuICAgIHRpdGxlPXtDREVSIExpc3Qgb2YgTGljZW5zZWQgQmlvbG9naWNhbCBQcm9kdWN0cyB3aXRoIFJlZmVyZW5jZSBQcm9kdWN0IEV4Y2x1c2l2aXR5IGFuZCBCaW9zaW1pbGFyaXR5IG9yIEludGVyY2hhbmdlYWJpbGl0eSBFdmFsdWF0aW9uc30sICAgXHJcbiAgICB5ZWFyPXsyMDE5fSwgICBcclxuICAgIHVybD17ZmlsZTovLy9tbnQvZGF0YS9DREVSJTIwTGlzdCUyMG9mJTIwTGljZW5zZWQlMjBCaW9sb2dpY2FsJTIwUHJvZHVjdHMlMjA0LTI0LTIwMTlfLnBkZn0gICBcclxuICB9YCwgICBcclxuICBcclxuICBgQG1pc2N7Q0ZGMjIwMjRpbnRlcm5ldCwgICBcclxuICAgIGF1dGhvcj17Q3lzdGljIEZpYnJvc2lzIEZvdW5kYXRpb259LCAgIFxyXG4gICAgdGl0bGU9e011Y3VzIFRoaW5uZXJzfSwgICBcclxuICAgIHllYXI9ezIwMjR9LCAgIFxyXG4gICAgdXJsPXtodHRwczovL3d3dy5jZmYub3JnL21hbmFnaW5nLWNmL211Y3VzLXRoaW5uZXJzfSwgICBcclxuICAgIG5vdGU9e1p1Z3JpZmYgYW0gMDcuIEF1Z3VzdCAyMDI0fSAgIFxyXG4gIH1gLCAgIFxyXG4gIC8qIDg0ICovXHJcbiAgYEBhcnRpY2xle1RlcmxpenppMjAyMSwgICBcclxuICAgIHRpdGxlPXtIeXBlcnRvbmljIHNhbGluZSBpbiBwZW9wbGUgd2l0aCAgQ3lzdGljIEZpYnJvc2lzOiByZXZpZXcgb2YgY29tcGFyYXRpdmUgc3R1ZGllcyBhbmQgY2xpbmljYWwgcHJhY3RpY2V9LCAgIFxyXG4gICAgYXV0aG9yPXtUZXJsaXp6aSwgVmFsZXJpYSBhbmQgTWFzaSwgRWxlb25vcmEgYW5kIEZyYW5jYWxhbmNpLCBNYXJjbyBhbmQgQnJhZ2dpb24sIENoaWFyYX0sICAgXHJcbiAgICBqb3VybmFsPXtJdGFsaWFuIEpvdXJuYWwgb2YgUGVkaWF0cmljc30sICAgXHJcbiAgICB2b2x1bWU9ezQ3fSwgICBcclxuICAgIG51bWJlcj17MX0sICAgXHJcbiAgICBwYWdlcz17MTY4fSwgICBcclxuICAgIHllYXI9ezIwMjF9LCAgIFxyXG4gICAgcHVibGlzaGVyPXtTcHJpbmdlcn0sICAgXHJcbiAgICBkb2k9ezEwLjExODYvczEzMDUyLTAyMS0wMTExNy0xfSwgICBcclxuICAgIHVybD17aHR0cHM6Ly9panBvbmxpbmUuYmlvbWVkY2VudHJhbC5jb20vYXJ0aWNsZXMvMTAuMTE4Ni9zMTMwNTItMDIxLTAxMTE3LTF9ICAgXHJcbiAgfWAsICAgXHJcbiAgXHJcbiAgYEBtaXNje0NGRjEyMDI0aW50ZXJuZXQsICAgXHJcbiAgICBhdXRob3I9e0N5c3RpYyBGaWJyb3NpcyBGb3VuZGF0aW9ufSwgICBcclxuICAgIHRpdGxlPXtBbnRpYmlvdGljc30sICAgXHJcbiAgICB5ZWFyPXsyMDI0fSwgICBcclxuICAgIHVybD17aHR0cHM6Ly93d3cuY2ZmLm9yZy9tYW5hZ2luZy1jZi9hbnRpYmlvdGljc30sICAgXHJcbiAgICBub3RlPXtadWdyaWZmIGFtIDA3LiBBdWd1c3QgMjAyNH0gICBcclxuICB9YCwgICBcclxuICBcclxuICBgQG1pc2N7VE9CSTIwMjRpbnRlcm5ldCwgICBcclxuICAgIGF1dGhvcj17VE9CSVx1MDBBRSBQb2RoYWxlclx1MDBBRX0sICAgXHJcbiAgICB0aXRsZT17VE9CSVx1MDBBRSBQb2RoYWxlclx1MDBBRX0sICAgXHJcbiAgICB5ZWFyPXsyMDI0fSwgICBcclxuICAgIHVybD17aHR0cHM6Ly93d3cudG9iaXBvZGhhbGVyLmNvbS99LCAgIFxyXG4gICAgbm90ZT17WnVncmlmZiBhbSAwNy4gQXVndXN0IDIwMjR9ICAgXHJcbiAgfWAsICAgXHJcbiAgXHJcbiAgYEBtaXNje0VNQTIyMDI0aW50ZXJuZXQsICAgXHJcbiAgICBhdXRob3I9e0V1cm9wZWFuIE1lZGljaW5lcyBBZ2VuY3l9LCAgIFxyXG4gICAgdGl0bGU9e1RvYmkgUG9kaGFsZXJ9LCAgIFxyXG4gICAgeWVhcj17MjAyNH0sICAgXHJcbiAgICB1cmw9e2h0dHBzOi8vd3d3LmVtYS5ldXJvcGEuZXUvZW4vbWVkaWNpbmVzL2h1bWFuL0VQQVIvdG9iaS1wb2RoYWxlcn0sICAgXHJcbiAgICBub3RlPXtadWdyaWZmIGFtIDA3LiBBdWd1c3QgMjAyNH0gICBcclxuICB9YCwgICBcclxuICBcclxuICBgQG1pc2N7RU1BMTIwMjRpbnRlcm5ldCwgICBcclxuICAgIGF1dGhvcj17RXVyb3BlYW4gTWVkaWNpbmVzIEFnZW5jeX0sICAgXHJcbiAgICB0aXRsZT17Q2F5c3Rvbn0sICAgXHJcbiAgICB5ZWFyPXsyMDI0fSwgICBcclxuICAgIHVybD17aHR0cHM6Ly93d3cuZW1hLmV1cm9wYS5ldS9lbi9tZWRpY2luZXMvaHVtYW4vRVBBUi9jYXlzdG9ufSwgICBcclxuICAgIG5vdGU9e1p1Z3JpZmYgYW0gMDcuIEF1Z3VzdCAyMDI0fSAgIFxyXG4gIH1gLCAgIFxyXG4gIC8qIDg5ICovXHJcbiAgYEBtaXNje011a28xMjAyNGludGVybmV0LCAgIFxyXG4gICAgYXV0aG9yPXtNdWtvdmlzemlkb3NlIGUuVn0sICAgXHJcbiAgICB0aXRsZT17VGhlcmFwaWUgZGVyIEJhdWNoc3BlaWNoZWxkclx1MDBGQ3NlbmZlaGxmdW5rdGlvbiAoUGFua3JlYXNpbnN1ZmZpemllbnopOiBFbnp5bXN1YnN0aXR1dGlvbn0sICAgXHJcbiAgICB5ZWFyPXsyMDI0fSwgICBcclxuICAgIHVybD17aHR0cHM6Ly93d3cubXVrby5pbmZvL21pdHdpcmtlbi9hcmJlaXRza3JlaXNlLXVuZC1hcmJlaXRzZ2VtZWluc2NoYWZ0ZW4vYWstZXJuYWVocnVuZy9lcm5hZWhydW5nc3RoZXJhcGllLWJlaS1tdWtvdmlzemlkb3NlL3BhbmtyZWFzaW5zdWZmaXppZW56LXVuZC1lbnp5bXN1YnN0aXR1dGlvbn0sICAgXHJcbiAgICBub3RlPXtadWdyaWZmIGFtIDA3LiBBdWd1c3QgMjAyNH0gICBcclxuICB9YCwgICBcclxuICAvKiA5MCAqL1xyXG4gIGBAbWlzY3tDUkVPTjIwMjRpbnRlcm5ldCwgICBcclxuICAgIGF1dGhvcj17Q1JFT05cdTAwQUUgKHBhbmNyZWxpcGFzZSl9LCAgIFxyXG4gICAgdGl0bGU9e0Fib3V0IENSRU9OXHUwMEFFfSwgICBcclxuICAgIHllYXI9ezIwMjR9LCAgIFxyXG4gICAgdXJsPXtodHRwczovL3d3dy5jcmVvbmhjcC5jb20vYWJvdXQtY3Jlb259LCAgIFxyXG4gICAgbm90ZT17WnVncmlmZiBhbSAwNy4gQXVndXN0IDIwMjR9ICAgXHJcbiAgfWAsICAgXHJcbiAgLyogb3JpZ2luYWwgOTEgaXN0IDE1ICovXHJcblxyXG5gQG1pc2N7QnJvYWRJbnN0aXR1dGUyMDI0LFxyXG4gIGF1dGhvciAgICAgICA9IHtCcm9hZCBJbnN0aXR1dGUgb2YgTUlUIGFuZCBIYXJ2YXJkfSxcclxuICB0aXRsZSAgICAgICAgPSB7UmVzZWFyY2hlcnMgZW5naW5lZXIgaW4gdml2byBkZWxpdmVyeSBzeXN0ZW0gZm9yIHByaW1lIGVkaXRpbmcsIHBhcnRpYWxseSByZXN0b3JpbmcgdmlzaW9uIGluIG1pY2V9LFxyXG4gIHB1Ymxpc2hlciAgICA9IHtQaHlzLm9yZ30sXHJcbiAgeWVhciAgICAgICAgID0gezIwMjR9LFxyXG59XHJcbmAsXHJcbmBAYXJ0aWNsZXtCYWRvbl9PaF9LaW1fTGVlXzIwMjQsIHRpdGxlPXtSZWNlbnQgYXBwbGljYXRpb24gb2YgQ1JJU1BSLUNhczEyIGFuZCBPTUVHQSBzeXN0ZW0gZm9yIGdlbm9tZSBlZGl0aW5nfSwgdm9sdW1lPXszMn0sIElTU049ezE1MjUtMDAxNiwgMTUyNS0wMDI0fSwgRE9JPXsxMC4xMDE2L2oueW10aGUuMjAyMy4xMS4wMTN9LCBudW1iZXI9ezF9LCBqb3VybmFsPXtNb2xlY3VsYXIgVGhlcmFweX0sIHB1Ymxpc2hlcj17RWxzZXZpZXJ9LCBhdXRob3I9e0JhZG9uLCBJc2FiZWwgV2VuIGFuZCBPaCwgWWVvdW5zdW4gYW5kIEtpbSwgSG8tSm9vbmcgYW5kIExlZSwgU2V1bmcgSHdhbn0sIHllYXI9ezIwMjR9LCBtb250aD1qYW4sIHBhZ2VzPXszMlx1MjAxMzQzfSwgbGFuZ3VhZ2U9e0VuZ2xpc2h9IH1cdTIwMkZgLFxyXG5cclxuXHJcbi8qIDk0ICovXHJcbiAgYEBhcnRpY2xle1NhaXRvX1h1X0ZhdXJlX01hZ3VpcmVfS2FubmFuX0FsdGFlLVRyYW5fVm9fRGVzaW1vbmVfTWFjcmFlX1poYW5nXzIwMjMsICAgXHJcbiAgICB0aXRsZT17RmFuem9yIGlzIGEgZXVrYXJ5b3RpYyBwcm9ncmFtbWFibGUgUk5BLWd1aWRlZCBlbmRvbnVjbGVhc2V9LCAgIFxyXG4gICAgdm9sdW1lPXs2MjB9LCAgIFxyXG4gICAgcmlnaHRzPXsyMDIzIFRoZSBBdXRob3Iocyl9LCAgIFxyXG4gICAgSVNTTj17MTQ3Ni00Njg3fSwgICBcclxuICAgIERPST17MTAuMTAzOC9zNDE1ODYtMDIzLTA2MzU2LTJ9LCAgIFxyXG4gICAgbnVtYmVyPXs3OTc0fSwgICBcclxuICAgIGpvdXJuYWw9e05hdHVyZX0sICAgXHJcbiAgICBwdWJsaXNoZXI9e05hdHVyZSBQdWJsaXNoaW5nIEdyb3VwfSwgICBcclxuICAgIGF1dGhvcj17U2FpdG8sIE1ha290byBhbmQgWHUsIFBlaXl1IGFuZCBGYXVyZSwgR3VpbGhlbSBhbmQgTWFndWlyZSwgU2FtYW50aGEgYW5kIEthbm5hbiwgU291bXlhIGFuZCBBbHRhZS1UcmFuLCBIYW4gYW5kIFZvLCBTYW0gYW5kIERlc2ltb25lLCBBbkFuIGFuZCBNYWNyYWUsIFJoaWFubm9uIEsuIGFuZCBaaGFuZywgRmVuZ30sICAgXHJcbiAgICB5ZWFyPXsyMDIzfSwgICBcclxuICAgIG1vbnRoPXthdWd9LCAgIFxyXG4gICAgcGFnZXM9ezY2MC02Njh9LCAgIFxyXG4gICAgbGFuZ3VhZ2U9e2VufSAgIFxyXG4gIH1gLCAgIFxyXG4gIFxyXG4gIGBAYXJ0aWNsZXtMaXVfT3Jsb3ZhX09ha2VzX01hX1NwaW5uZXJfQmFuZXlfQ2h1Y2tfVGFuX0tub3R0XywgICBcclxuICAgIHRpdGxlPXtDYXNYIGVuenltZXMgY29tcHJpc2UgYSBkaXN0aW5jdCBmYW1pbHkgb2YgUk5BLWd1aWRlZCBnZW5vbWUgZWRpdG9yc30sICAgXHJcbiAgICB2b2x1bWU9ezU2Nn0sICAgXHJcbiAgICByaWdodHM9ezIwMTkgVGhlIEF1dGhvcihzKSwgdW5kZXIgZXhjbHVzaXZlIGxpY2VuY2UgdG8gU3ByaW5nZXIgTmF0dXJlIExpbWl0ZWR9LCAgIFxyXG4gICAgSVNTTj17MTQ3Ni00Njg3fSwgICBcclxuICAgIERPST17MTAuMTAzOC9zNDE1ODYtMDE5LTA5MDgteH0sICAgXHJcbiAgICBudW1iZXI9ezc3NDN9LCAgIFxyXG4gICAgam91cm5hbD17TmF0dXJlfSwgICBcclxuICAgIHB1Ymxpc2hlcj17TmF0dXJlIFB1Ymxpc2hpbmcgR3JvdXB9LCAgIFxyXG4gICAgYXV0aG9yPXtMaXUsIEp1bi1KaWUgYW5kIE9ybG92YSwgTmF0YWxpYSBhbmQgT2FrZXMsIEJlbmphbWluIEwuIGFuZCBNYSwgRW5ibyBhbmQgU3Bpbm5lciwgSGFubmFoIEIuIGFuZCBCYW5leSwgS2F0aGVyaW5lIEwuIE0uIGFuZCBDaHVjaywgSm9uYXRoYW4gYW5kIFRhbiwgRGFuIGFuZCBLbm90dCwgR2F2aW4gSi4gYW5kIEhhcnJpbmd0b24sIEx1Y2FzIEIuIGFuZCBBbC1TaGF5ZWIsIEJhc2VtIGFuZCBXYWduZXIsIEFsZXhhbmRlciBhbmQgQnJcdTAwRjZ0em1hbm4sIEp1bGlhbiBhbmQgU3RhYWhsLCBCcmV0dCBULiBhbmQgVGF5bG9yLCBLaWFuIEwuIGFuZCBEZXNtYXJhaXMsIEpvaG4gYW5kIE5vZ2FsZXMsIEV2YSBhbmQgRG91ZG5hLCBKZW5uaWZlciBBLn0sICAgXHJcbiAgICB5ZWFyPXsyMDE5fSwgICBcclxuICAgIG1vbnRoPXtmZWJ9LCAgIFxyXG4gICAgcGFnZXM9ezIxOC0yMjN9LCAgIFxyXG4gICAgbGFuZ3VhZ2U9e2VufSAgIFxyXG4gIH1gLCAgIFxyXG4gIFxyXG4gIGBAYXJ0aWNsZXtEb21hbl9QYW5kZXlfTmV1Z2ViYXVlcl9Bbl9EYXZpc19SYW5kb2xwaF9NY0Vscm95X0dhb19SYWd1cmEsXHJcblx0dGl0bGUgICAgICAgID0ge1BoYWdlLWFzc2lzdGVkIGV2b2x1dGlvbiBhbmQgcHJvdGVpbiBlbmdpbmVlcmluZyB5aWVsZCBjb21wYWN0LCBlZmZpY2llbnQgcHJpbWUgZWRpdG9yc30sXHJcblx0YXV0aG9yICAgICAgID0ge0RvbWFuLCBKLiBMLiBhbmQgUGFuZGV5LCBTLiBhbmQgTmV1Z2ViYXVlciwgTS4gRS4gYW5kIEFuLCBNZWlydWkgYW5kIERhdmlzLCBKZXNzaWUgUi4gYW5kIFJhbmRvbHBoLCBQZXl0b24gQi4gYW5kIE1jRWxyb3ksIEFtYmVyIGFuZCBHYW8sIFhpbiBELiBhbmQgUmFndXJhbSwgQWRpdHlhIGFuZCBSaWNodGVyLCBNaWNoZWxsZSBGLiBhbmQgRXZlcmV0dGUsIEtlbGNlZSBBLiBhbmQgQmFuc2tvdGEsIFNhbWFneWEgYW5kIFRpYW4sIEthdGhyeW4gYW5kIFRhbywgWS4gQWxsZW4gYW5kIFRvbGFyLCBKYWt1YiBhbmQgT3Nib3JuLCBNYXJrIEouIGFuZCBMaXUsIERhdmlkIFIufSxcclxuXHR5ZWFyICAgICAgICAgPSAyMDIzLFxyXG5cdGpvdXJuYWwgICAgICA9IHtDZWxsfSxcclxuXHRwdWJsaXNoZXIgICAgPSB7RWxzZXZpZXJ9LFxyXG5cdHZvbHVtZSAgICAgICA9IDE4NixcclxuXHRudW1iZXIgICAgICAgPSAxOCxcclxuXHRwYWdlcyAgICAgICAgPSB7Mzk4My0tNDAwMn0sXHJcblx0ZG9pICAgICAgICAgID0gezEwLjEwMTYvai5jZWxsLjIwMjMuMDcuMDM5fSxcclxuXHRsYW5ndWFnZSAgICAgPSB7RW5nbGlzaH1cclxufVxyXG5gLCAgIFxyXG4gIFxyXG4gIGBAYXJ0aWNsZXtJV0FXQUtJMjAwNjcwOSwgICBcclxuICAgIHRpdGxlPXtBbmFseXNpcyBvZiB0aGUgWEJQMSBzcGxpY2luZyBtZWNoYW5pc20gdXNpbmcgZW5kb3BsYXNtaWMgcmV0aWN1bHVtIHN0cmVzcy1pbmRpY2F0b3JzfSwgICBcclxuICAgIGpvdXJuYWw9e0Jpb2NoZW1pY2FsIGFuZCBCaW9waHlzaWNhbCBSZXNlYXJjaCBDb21tdW5pY2F0aW9uc30sICAgXHJcbiAgICB2b2x1bWU9ezM1MH0sICAgXHJcbiAgICBudW1iZXI9ezN9LCAgIFxyXG4gICAgcGFnZXM9ezcwOS03MTV9LCAgIFxyXG4gICAgeWVhcj17MjAwNn0sICAgXHJcbiAgICBJU1NOPXswMDA2LTI5MVh9LCAgIFxyXG4gICAgRE9JPXtodHRwczovL2RvaS5vcmcvMTAuMTAxNi9qLmJicmMuMjAwNi4wOS4xMDB9LCAgIFxyXG4gICAgdXJsPXtodHRwczovL3d3dy5zY2llbmNlZGlyZWN0LmNvbS9zY2llbmNlL2FydGljbGUvcGlpL1MwMDA2MjkxWDA2MDIxNTUzfSwgICBcclxuICAgIGF1dGhvcj17SXdhd2FraSwgVGFrYW8gYW5kIEFrYWksIFJ5b2tvfSwgICBcclxuICAgIGtleXdvcmRzPXtFUiBzdHJlc3MsIElSRTEsIFNwbGljaW5nLCBVbmZvbGRlZCBwcm90ZWluIHJlc3BvbnNlLCBYQlAxfSAgIFxyXG4gIH1gLCAgIFxyXG4gICAgICAgXHJcblxyXG5cclxuICAgIFxyXG5cclxuXSIsICJpbnRlcmZhY2UgRmlndXJlUHJvcHN7XHJcbiAgICBwaWMxOiBzdHJpbmcsIFxyXG4gICAgcGljMj86IHN0cmluZywgXHJcbiAgICBwaWMzPzogc3RyaW5nLCBcclxuICAgIHBpYzQ/OiBzdHJpbmcsIFxyXG4gICAgcGljNT86IHN0cmluZywgXHJcbiAgICBwaWM2Pzogc3RyaW5nLCBcclxuICAgIGFsdDE6IHN0cmluZyxcclxuICAgIGRlc2NyaXB0aW9uOiBSZWFjdC5SZWFjdE5vZGUgfCBzdHJpbmcsXHJcbiAgICBkZXNjcmlwdGlvbjI/OiBSZWFjdC5SZWFjdE5vZGUgfCBzdHJpbmcsIFxyXG4gICAgbnVtOiBzdHJpbmcgfG51bWJlcjsgXHJcbiAgICBudW0yPzogc3RyaW5nIHxudW1iZXI7XHJcbiAgICBiZz86IHN0cmluZzsgXHJcbn1cclxuXHJcblxyXG5leHBvcnQgZnVuY3Rpb24gVGhyZWVWZXJ0aWNhbCh7ZGVzY3JpcHRpb24sIG51bSwgcGljMSwgcGljMiwgcGljMywgYWx0MSwgYmd9OkZpZ3VyZVByb3BzKXtcclxuICAgIGxldCBiYWNrZ3JvdW5kID0gXCJcIjsgXHJcbiAgICBpZiAoYmcpe1xyXG4gICAgICAgIGJhY2tncm91bmQgPSBcIiBiZy13XCJcclxuICAgIH1cclxuICAgIHJldHVybihcclxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT17XCJmaWd1cmUtd3JhcHBlclwiICsgYmFja2dyb3VuZH0+XHJcbiAgICAgICAgICAgICAgICA8ZmlndXJlPlxyXG4gICAgICAgICAgICAgICAgPGltZyBzcmM9e3BpYzF9IGFsdD17YWx0MX0gY2xhc3NOYW1lPVwicmVzcG9uc2l2ZS1pbWFnZVwiLz5cclxuICAgICAgICAgICAgICAgIDxpbWcgc3JjPXtwaWMyfSBjbGFzc05hbWU9XCJyZXNwb25zaXZlLWltYWdlXCIvPlxyXG4gICAgICAgICAgICAgICAgPGltZyBzcmM9e3BpYzN9IGNsYXNzTmFtZT1cInJlc3BvbnNpdmUtaW1hZ2VcIi8+XHJcbiAgICAgICAgICAgICAgICA8ZmlnY2FwdGlvbj48Yj5GaWd1cmUge251bX0uPC9iPiA8c3Bhbj57ZGVzY3JpcHRpb259PC9zcGFuPjwvZmlnY2FwdGlvbj5cclxuICAgICAgICAgICAgPC9maWd1cmU+XHJcbiAgICAgICAgICAgXHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICApXHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBUd29WZXJ0aWNhbCh7ZGVzY3JpcHRpb24sIG51bSwgcGljMSwgcGljMiwgYWx0MSwgYmd9OkZpZ3VyZVByb3BzKXtcclxuICAgIGxldCBiYWNrZ3JvdW5kID0gXCJcIjsgXHJcbiAgICBpZiAoYmcpe1xyXG4gICAgICAgIGJhY2tncm91bmQgPSBcIiBiZy13XCJcclxuICAgIH1cclxuICAgIHJldHVybihcclxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT17XCJmaWd1cmUtd3JhcHBlclwiICsgYmFja2dyb3VuZH0+XHJcbiAgICAgICAgXHJcbiAgICAgICAgPGZpZ3VyZT5cclxuICAgICAgICAgICAgPGltZyBzcmM9e3BpYzF9IGFsdD17YWx0MX0gY2xhc3NOYW1lPVwicmVzcG9uc2l2ZS1pbWFnZVwiLz5cclxuICAgICAgICAgICAgPGltZyBzcmM9e3BpYzJ9IGNsYXNzTmFtZT1cInJlc3BvbnNpdmUtaW1hZ2VcIi8+XHJcbiAgICAgICAgICAgIDxmaWdjYXB0aW9uPjxiPkZpZ3VyZSB7bnVtfS48L2I+IDxzcGFuPntkZXNjcmlwdGlvbn08L3NwYW4+PC9maWdjYXB0aW9uPlxyXG4gICAgICAgIDwvZmlndXJlPlxyXG4gICAgICAgXHJcbiAgICA8L2Rpdj5cclxuICAgICAgIFxyXG4gICAgKVxyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gVHdvSG9yaXpvbnRhbCh7ZGVzY3JpcHRpb24sIG51bSwgIHBpYzEsIHBpYzIsIGFsdDEsIGJnfTpGaWd1cmVQcm9wcyl7XHJcbiAgICBsZXQgYmFja2dyb3VuZCA9IFwiXCI7IFxyXG4gICAgaWYgKGJnKXtcclxuICAgICAgICBiYWNrZ3JvdW5kID0gXCIgYmctd1wiXHJcbiAgICB9XHJcbiAgICByZXR1cm4oXHJcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9e1wiZmlndXJlLXdyYXBwZXJcIiArIGJhY2tncm91bmR9PlxyXG4gICAgICAgXHJcbiAgICAgICAgPGZpZ3VyZT5cclxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3cgYWxpZ24taXRlbXMtY2VudGVyXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPXtwaWMxfSBhbHQ9e2FsdDF9IGNsYXNzTmFtZT1cInJlc3BvbnNpdmUtaW1hZ2VcIi8+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9e3BpYzJ9IGNsYXNzTmFtZT1cInJlc3BvbnNpdmUtaW1hZ2VcIi8+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxmaWdjYXB0aW9uPjxiPkZpZ3VyZSB7bnVtfS48L2I+IDxzcGFuPntkZXNjcmlwdGlvbn08L3NwYW4+PC9maWdjYXB0aW9uPlxyXG4gICAgICAgIDwvZmlndXJlPlxyXG4gICAgICAgIFxyXG4gICAgPC9kaXY+XHJcbiAgICAgICAgXHJcbiAgICApXHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBUaHJlZUhvcml6b250YWwoe2Rlc2NyaXB0aW9uLCBudW0sIHBpYzEsIHBpYzIsIHBpYzMsIGFsdDEsIGJnfTpGaWd1cmVQcm9wcyl7XHJcbiAgICBsZXQgYmFja2dyb3VuZCA9IFwiXCI7IFxyXG4gICAgaWYgKGJnKXtcclxuICAgICAgICBiYWNrZ3JvdW5kID0gXCIgYmctd1wiXHJcbiAgICB9XHJcbiAgICByZXR1cm4oXHJcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9e1wiZmlndXJlLXdyYXBwZXJcIiArIGJhY2tncm91bmR9PlxyXG4gICAgICAgIDxmaWd1cmU+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz17cGljMX0gYWx0PXthbHQxfSBjbGFzc05hbWU9XCJyZXNwb25zaXZlLWltYWdlXCIvPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPXtwaWMyfWNsYXNzTmFtZT1cInJlc3BvbnNpdmUtaW1hZ2VcIi8+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9e3BpYzN9IGNsYXNzTmFtZT1cInJlc3BvbnNpdmUtaW1hZ2VcIi8+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxmaWdjYXB0aW9uPjxiPkZpZ3VyZSB7bnVtfS48L2I+IDxzcGFuPntkZXNjcmlwdGlvbn08L3NwYW4+PC9maWdjYXB0aW9uPlxyXG4gICAgICAgIDwvZmlndXJlPlxyXG4gICAgICAgXHJcbiAgICA8L2Rpdj5cclxuICAgICAgICBcclxuICAgIClcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIE9uZUZpZ3VyZSh7ZGVzY3JpcHRpb24sIG51bSwgcGljMSwgYWx0MSwgYmd9OkZpZ3VyZVByb3BzKXtcclxuICAgIGxldCBiYWNrZ3JvdW5kID0gXCJcIjsgXHJcbiAgICBpZiAoYmcpe1xyXG4gICAgICAgIGJhY2tncm91bmQgPSBcIiBiZy13XCJcclxuICAgIH1cclxuICAgIHJldHVybihcclxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT17XCJmaWd1cmUtd3JhcHBlclwiICsgYmFja2dyb3VuZH0+XHJcbiAgICAgICAgXHJcbiAgICAgICAgICA8ZmlndXJlPlxyXG4gICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPXtwaWMxfSBhbHQ9e2FsdDF9IGNsYXNzTmFtZT1cInJlc3BvbnNpdmUtaW1hZ2VcIi8+XHJcbiAgICAgICAgICAgIDxmaWdjYXB0aW9uPjxiPkZpZ3VyZSB7bnVtfS48L2I+IDxzcGFuPntkZXNjcmlwdGlvbn08L3NwYW4+PC9maWdjYXB0aW9uPlxyXG4gICAgICAgIDwvZmlndXJlPlxyXG4gICAgICAgICBcclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgIFxyXG4gICAgKVxyXG59XHJcblxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIFR3b0ZpZ3VyZVJvdyh7ZGVzY3JpcHRpb24sZGVzY3JpcHRpb24yLCBudW0sIG51bTIsIHBpYzEsIHBpYzIsIGJnfTpGaWd1cmVQcm9wcykge1xyXG4gICAgbGV0IGJhY2tncm91bmQgPSBcIlwiOyBcclxuICAgIGlmIChiZyl7XHJcbiAgICAgICAgYmFja2dyb3VuZCA9IFwiIGJnLXdcIlxyXG4gICAgfVxyXG4gICAgcmV0dXJuKFxyXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPXtcImZpZ3VyZS13cmFwcGVyXCIgKyBiYWNrZ3JvdW5kfT5cclxuICAgICAgICA8ZmlndXJlPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvdyBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9e3BpYzF9IC8+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9e3BpYzJ9Lz5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGZpZ2NhcHRpb24+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGI+RmlndXJlIHtudW19OjwvYj4ge2Rlc2NyaXB0aW9ufS5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxiPkZpZ3VyZSB7bnVtMn06PC9iPiB7ZGVzY3JpcHRpb24yfS5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2ZpZ2NhcHRpb24+XHJcbiAgICAgICAgPC9maWd1cmU+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICApXHJcbn1cclxuXHJcbiIsICJpbXBvcnQgeyBJbmZvQm94IH0gZnJvbSBcIi4uL2NvbXBvbmVudHMvQm94ZXNcIjtcclxuaW1wb3J0IHsgVGFiQnV0dG9uUm93IH0gZnJvbSBcIi4uL2NvbXBvbmVudHMvQnV0dG9uc1wiO1xyXG5pbXBvcnQgQ29sbGFwc2libGUgZnJvbSBcIi4uL2NvbXBvbmVudHMvQ29sbGFwc2libGVcIjtcclxuaW1wb3J0IHsgU3VwU2Nyb2xsTGluayB9IGZyb20gXCIuLi9jb21wb25lbnRzL1Njcm9sbExpbmtcIjtcclxuaW1wb3J0IHsgSDR9IGZyb20gXCIuLi9jb21wb25lbnRzL0hlYWRpbmdzXCI7XHJcbmltcG9ydCB7IEJ1dHRvblJvd1RhYnMgfSBmcm9tIFwiLi4vY29tcG9uZW50cy9UYWJzXCI7XHJcbmltcG9ydCBQaWVDaGFydCBmcm9tIFwiLi4vY29tcG9uZW50cy9HcmFwaFwiO1xyXG5pbXBvcnQgUHJlQ3lzZSBmcm9tIFwiLi4vY29tcG9uZW50cy9wcmVjeXNlXCI7XHJcblxyXG5cclxuaW1wb3J0IHsgU2VjdGlvbiwgU3ViZXNjdGlvbiB9IGZyb20gXCIuLi9jb21wb25lbnRzL3NlY3Rpb25zXCI7XHJcbmltcG9ydCB7IHN5bXB0b21kYXRhLCBTeW1wdG9tRGF0ZW5zYXR6IH0gZnJvbSBcIi4uL2RhdGEvc3ltcHRvbS1kYXRhXCI7XHJcbmltcG9ydCB7IGRydWdkYXRhLCBEcnVnRGF0ZW5zYXR6IH0gZnJvbSBcIi4uL2RhdGEvZHJ1Zy1kYXRhXCI7XHJcbmltcG9ydCB7IHVzZVRhYk5hdmlnYXRpb24gfSBmcm9tIFwiLi4vdXRpbHMvVGFiTmF2aWdhdGlvblwiO1xyXG5pbXBvcnQgUHJpbWVFZGl0aW5nQ29tcGxleCBmcm9tIFwiLi4vY29tcG9uZW50cy9Db21wbGV4LXN2Z1wiO1xyXG5pbXBvcnQgeyB1c2VOYXZpZ2F0aW9uIH0gZnJvbSBcIi4uL3V0aWxzXCI7XHJcbmltcG9ydCBEZXNjU291cmNlcyBmcm9tIFwiLi4vc291cmNlcy9kZXNjcmlwdGlvbi1zb3VyY2VzXCI7XHJcbmltcG9ydCB7IE9uZUZpZ3VyZSB9IGZyb20gXCIuLi9jb21wb25lbnRzL0ZpZ3VyZXNcIjtcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBEZXNjcmlwdGlvbigpIHsgXHJcbiAgICB1c2VUYWJOYXZpZ2F0aW9uKCk7XHJcbiAgICBjb25zdCB7Z29Ub1BhZ2VzQW5kT3BlblRhYiwgZ29Ub1BhZ2VXaXRoVGFiQW5kU2Nyb2xsfSA9IHVzZU5hdmlnYXRpb24oKTtcclxuICAgIGNvbnN0IHtnb1RvUGFnZUFuZFNjcm9sbCwgZ29Ub1BhZ2VXaXRoVGFiQW5kQ29sbGFwc2libGV9ID0gdXNlTmF2aWdhdGlvbigpO1xyXG4gIHJldHVybiAoXHJcbiAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93IG10LTRcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICA8U2VjdGlvbiB0aXRsZT1cIkFic3RyYWN0XCIgaWQ9XCJBYnN0cmFjdFwiPlxyXG4gICAgICAgICAgICAgICAgPHAgaWQ9XCJvYmVuaW5kZXNjcmlwdGlvblwiPldlIGFyZSBwcm91ZCB0byBwcmVzZW50IDxQcmVDeXNlLz4sIGEgbmV4dC1nZW5lcmF0aW9uIFByaW1lIEVkaXRpbmcgdGVjaG5vbG9neSwgYXMgaW5ub3ZhdGl2ZSBnZW5lIHRoZXJhcHkgYXBwcm9hY2ggZm9yIEN5c3RpYyBGaWJyb3NpcyAgKENGKVxyXG4gICAgICAgICAgICAgICAgc3BlY2lmaWNhbGx5IHRhcmdldGluZyB0aGUgbW9zdCBjb21tb24gbXV0YXRpb24gPGI+RjUwOGRlbDwvYj4gb2YgdGhlIENGVFIgZ2VuZS4gQ3lzdGljICBGaWJyb3NpcyBpcyBhIHNldmVyZSBkaXNvcmRlciB0aGF0IHByaW1hcmlseSBhZmZlY3RzIHRoZSBsdW5ncyBcclxuICAgICAgICAgICAgICAgIGFuZCBmb3Igd2hpY2ggb25seSBzaG9ydC10ZXJtIHN5bXB0b21hdGljIHRyZWF0bWVudHMgZXhpc3QuIFByZUN5c2UgYWltcyB0byBwcm92aWRlIGxvbmctdGVybSByZWxpZWYgYnkgZGVsaXZlcmluZyBhIHNtYWxsIGdlbmV0aWMgcGF5bG9hZCB3aXRoIHNwZWVkIFxyXG4gICAgICAgICAgICAgICAgYW5kIHByZWNpc2lvbi4gT3VyIGFwcHJvYWNoIGludGVncmF0ZXMgPGI+UHJpbWVHdWlkZTwvYj4sIGEgaGlnaGx5IG9wdGltaXplZCBQcmltZSBFZGl0aW5nIHN5c3RlbSwgd2l0aCA8Yj5BaXJCdWRkeTwvYj4sIGEgbm92ZWwgbGlwaWQgbmFub3BhcnRpY2xlIFxyXG4gICAgICAgICAgICAgICAgKExOUCkgZGVsaXZlcnkgcGxhdGZvcm0uIFRoZSA8Yj5TT1JUIExOUHM8L2I+IHVzZWQgaW4gQWlyQnVkZHkgYXJlIG9wdGltaXplZCBmb3IgcHVsbW9uYXJ5IGRlbGl2ZXJ5LCBvZmZlcmluZyBwcmVjaXNlIG9yZ2FuIHRhcmdldGluZyBhbmQgc3RydWN0dXJhbCBcclxuICAgICAgICAgICAgICAgIHN0YWJpbGl0eSB0aHJvdWdob3V0IHRoZSBpbmhhbGF0aW9uIHByb2Nlc3MuIFNtYWxsIHBheWxvYWQgc2l6ZSBpcyBrZXkgZm9yIGVmZmVjdGl2ZSBkZWxpdmVyeSBhbmQgY29tcGF0aWJpbGl0eSB3aXRoIHZpcmFsIHZlY3RvcnMsIHdoaWNoIGhhdmUgYSBcclxuICAgICAgICAgICAgICAgIGxpbWl0ZWQgY2FwYWNpdHkuIFByaW1lR3VpZGUgZW1ib2RpZXMgdGhpcyB2aXNpb24gYnkgdXRpbGl6aW5nIGEgc21hbGxlciwgbW9yZSBlZmZpY2llbnQgZWRpdGluZyBjb21wbGV4LiBDdXJyZW50IHRyZWF0bWVudHMgb2Z0ZW4gcmVxdWlyZSBkYWlseSBcclxuICAgICAgICAgICAgICAgIGFkbWluaXN0cmF0aW9uIHdoZXJlYXMgUHJlQ3lzZSBpcyBjdXJyZW50bHkgZGV2ZWxvcGVkIGFzIGEgbW9udGhseSBhcHBsaWVkIHRoZXJhcHkuIEluIGFkZGl0aW9uLCBQcmltZSBFZGl0aW5nIGhvbGRzIHRoZSBwcm9taXNlIHRvIG9mZmVyIGEgY2F1c2FsIGN1cmUsIFxyXG4gICAgICAgICAgICAgICAgd2hlbiBtdXRhdGlvbnMgYXJlIGNvcnJlY3RlZCBpbiBzdGVtIGNlbGxzLiBPdXIgYXBwcm9hY2ggYWltcyB0byByZWR1Y2UgbWVkaWNhdGlvbiBmcmVxdWVuY3kgd2hpbGUgaW1wcm92aW5nIHBhdGllbnQgb3V0Y29tZXMuIFxyXG4gICAgICAgICAgICAgICAgQnkgbG93ZXJpbmcgY29zdHMgYW5kIGltcHJvdmluZyBhY2Nlc3NpYmlsaXR5LCBQcmVDeXNlIGFzcGlyZXMgdG8gb2ZmZXIgYW4gYWR2YW5jZWQgYW5kIHVzZXItZnJpZW5kbHkgY3VyZSBmb3IgQ3lzdGljIEZpYnJvc2lzLjwvcD5cclxuICAgICAgICAgICAgPC9TZWN0aW9uPlxyXG4gICAgICAgICAgICA8U2VjdGlvbiB0aXRsZT1cIk91ciBNb3RpdmF0aW9uXCIgaWQ9XCJPdXIgTW90aXZhdGlvblwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiID5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+T3VyIHByb2plY3Qgc3RhcnRlZCB3aXRoIGEgcGVyc29uYWwgc3RvcnkuIFJhdGhlciB0aGFuIGJlaW5nIGRyaXZlbiBwdXJlbHkgYnkgYWNhZGVtaWMgY3VyaW9zaXR5LCBvdXIgbW90aXZhdGlvbiBjYW1lIGZyb20gc29tZW9uZSBjbG9zZSB0byBvbmUgb2Ygb3VyIHRlYW0gbWVtYmVycyBcdTIwMTQgTWF4IEJlY2ttYW5uLCBhIGZyaWVuZCB3aG8gaGFzIGxpdmVkIHdpdGggQ3lzdGljIEZpYnJvc2lzIChDRikgc2luY2UgaGlzIGJpcnRoLiBTcGVjaWZpY2FsbHksIGhlIGNhcnJpZXMgdGhlIEY1MDhkZWwgbXV0YXRpb24sIHRoZSBtb3N0IGNvbW1vbiBnZW5ldGljIGNhdXNlIG9mIHRoZSBkaXNlYXNlLiBTZWVpbmcgdGhlIGltcGFjdCBvZiBDRiBvbiBoaXMgZGFpbHkgbGlmZVx1MjAxNGZyZXF1ZW50IHRyZWF0bWVudHMgYW5kIHBoeXNpY2FsIHN0cmFpblx1MjAxNG1hZGUgdXMgcmVhbGl6ZSBob3cgbXVjaCBtb3JlIGNhbiBiZSBkb25lIHRvIGltcHJvdmUgdGhlIGxpdmVzIG9mIHRob3NlIGFmZmVjdGVkLCB3aGljaCBpbnNwaXJlZCB1cyB0byBwdXJzdWUgdGhpcyBwcm9qZWN0LiA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPkFzIHdlIGV4cGxvcmVkIEN5c3RpYyBGaWJyb3NpcyBmdXJ0aGVyLCB3ZSB3ZXJlIHN0cnVjayBieSBob3cgd2lkZXNwcmVhZCBpdCBpcywgYmVpbmcgdGhlIG1vc3QgY29tbW9uIGdlbmV0aWMgZGlzb3JkZXIgaW4gR2VybWFueS4gQXBwcm94aW1hdGVseSA3MCUgb2YgdGhvc2Ugd2l0aCBDRiBhcmUgc3BlY2lmaWNhbGx5IGFmZmVjdGVkIGJ5IHRoZSBGNTA4ZGVsIG11dGF0aW9uIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiMVwiLz4gLiBUaGlzIG11dGF0aW9uIGlzIHRoZSBtb3N0IHByZXZhbGVudCBhbmQgd2VsbC1zdHVkaWVkIG9mIHRoZSB0aG91c2FuZHMgb2YgZ2VuZXRpYyB2YXJpYXRpb25zIHRoYXQgY2F1c2UgQ0YsIG1ha2luZyBpdCBhbiBpbXBvcnRhbnQgZm9jdXMgb2YgcmVzZWFyY2ggYW5kIGludGVydmVudGlvbi4gSW4gZmFjdCwgYWJvdXQgOTAlIG9mIEV1cm9wZWFucyBhbmQgaW5kaXZpZHVhbHMgb2YgRXVyb3BlYW4gZGVzY2VudCB3aXRoIENGIGhhdmUgYXQgbGVhc3Qgb25lIEY1MDhkZWwgYWxsZWxlIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiMlwiLz48c3VwPiw8L3N1cD48U3VwU2Nyb2xsTGluayBsYWJlbD1cIjNcIi8+LiBUaGlzIHdpZGVzcHJlYWQgcHJldmFsZW5jZSBoaWdobGlnaHRlZCB0aGUgc2lnbmlmaWNhbmNlIG9mIG91ciBwcm9qZWN0XHUyMDE0bm90IGp1c3QgZm9yIG91ciBmcmllbmQsIGJ1dCBmb3IgdGhlIHRob3VzYW5kcyBvZiBvdGhlcnMgYWZmZWN0ZWQgYnkgdGhpcyBtdXRhdGlvbiBhY3Jvc3MgRXVyb3BlIGFuZCBiZXlvbmQuIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCIgPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPE9uZUZpZ3VyZSBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBpYzE9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3Mvb3RoZXIvbWF4LWJpbGQud2VicFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbHQxPVwiXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uPVwiUGljdHVyZSBmcm9tIG91ciBpbnRlcnZpZXcgd2l0aCBNYXguXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG51bT1cIjFcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+ICAgIFxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxwPkJ5IGZvY3VzaW5nIG9uIHRoZSBGNTA4ZGVsIG11dGF0aW9uLCB3ZSBhbHNvIGhvcGUgdG8gY29udHJpYnV0ZSB2YWx1YWJsZSBpbnNpZ2h0cyB0byB0aGUgZ2xvYmFsIEN5c3RpYyBGaWJyb3NpcyBjb21tdW5pdHkuIEFsdGhvdWdoIHRoaXMgbXV0YXRpb24gaXMgbW9zdCBjb21tb24gaW4gRXVyb3BlYW4gcG9wdWxhdGlvbnMsIGl0IGlzIGFsc28gZm91bmQgaW4gb3RoZXIgcmVnaW9ucyBhcm91bmQgdGhlIHdvcmxkIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiNFwiLz48c3VwPiw8L3N1cD48U3VwU2Nyb2xsTGluayBsYWJlbD1cIjVcIi8+LiBPdXIgcmVzZWFyY2ggY291bGQgdGh1cyBoZWxwIGluZm9ybSB0cmVhdG1lbnQgc3RyYXRlZ2llcyBhbmQgaGVhbHRoIHBvbGljaWVzIG9uIGFuIGludGVybmF0aW9uYWwgc2NhbGUuIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICA8cD5XaXRoIHNldmVyYWwgdGVhbSBtZW1iZXJzIGZvY3VzaW5nIHRoZWlyIHN0dWRpZXMgb24gYmlvbWVkaWNhbCBmaWVsZHMsIHdlIGJlZ2FuIGJ5IGV4YW1pbmluZyB0aGUgY3VycmVudCBsYW5kc2NhcGUgb2YgQ0YgdHJlYXRtZW50cy4gSXQgcXVpY2tseSBiZWNhbWUgY2xlYXIgdGhhdCwgZGVzcGl0ZSByZWNlbnQgcHJvZ3Jlc3MsIHRoZXJlIGlzIHN0aWxsIG5vIGN1cmUuIE1vc3QgdGhlcmFwaWVzLCBzdWNoIGFzIENGVFIgbW9kdWxhdG9ycywgZm9jdXMgb24gbWFuYWdpbmcgc3ltcHRvbXMgYW5kIGltcHJvdmluZyBsdW5nIGZ1bmN0aW9uIHJhdGhlciB0aGFuIGFkZHJlc3NpbmcgdGhlIHVuZGVybHlpbmcgY2F1c2Ugb2YgdGhlIGRpc2Vhc2UgPFN1cFNjcm9sbExpbmsgbGFiZWw9XCI2XCIvPiAuIFRoaXMgcmVhbGl6YXRpb24gbGVkIHVzIHRvIGV4cGxvcmUgZ2VuZS1lZGl0aW5nIHRlY2hub2xvZ2llcywgdGh1cyBsZWFkaW5nIHVzIHRvIFByaW1lIEVkaXRpbmdcdTIwMTRhIG5leHQgZ2VuZXJhdGlvbiBnZW5lIGVkaXRpbmcgbWV0aG9kXHUyMDE0Y2FwdHVyZWQgb3VyIGF0dGVudGlvbi4gPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgIDxwPldoaWxlIFByaW1lIEVkaXRpbmcgaG9sZHMgZ3JlYXQgcHJvbWlzZSwgd2UgZm91bmQgdGhhdCBpdHMgYXBwbGljYXRpb24gZm9yIEN5c3RpYyBGaWJyb3NpcywgcGFydGljdWxhcmx5IHRoZSBGNTA4ZGVsIG11dGF0aW9uLCBoYWQgbm90IGJlZW4gZnVsbHkgZXhwbG9yZWQuIFJlY29nbml6aW5nIHRoaXMgZ2FwIGluIHRoZSByZXNlYXJjaCBpbnNwaXJlZCB1cyB0byB0YWtlIG9uIHRoZSBjaGFsbGVuZ2Ugb2Ygb3B0aW1pemluZyBQcmltZSBFZGl0aW5nIGZvciB0aGlzIHNwZWNpZmljIG11dGF0aW9uLiBPdXIgbWlzc2lvbiBiZWNhbWUgY2xlYXI6IHdlIHdhbnQgdG8gY29udHJpYnV0ZSB0byB0aGUgZGV2ZWxvcG1lbnQgb2YgYSBwb3RlbnRpYWwgdGhlcmFwZXV0aWMgYXBwcm9hY2ggZm9yIEN5c3RpYyBGaWJyb3Npcywgc3BlY2lmaWNhbGx5IHRhcmdldGluZyB0aGUgRjUwOGRlbCBtdXRhdGlvbiB3aXRoIHByaW1lIGVkaXRpbmcsIGFuZCBicmluZyB1cyBjbG9zZXIgdG8gYSBsb25nLXRlcm0gc29sdXRpb24gZm9yIHBhdGllbnRzLiA8L3A+XHJcbiAgICAgICAgICAgIDwvU2VjdGlvbj5cclxuICAgICAgICAgICAgPFNlY3Rpb24gdGl0bGU9XCJDeXN0aWMgRmlicm9zaXNcIiBpZD1cIkN5c3RpYyBGaWJyb3Npc1wiPlxyXG4gICAgICAgICAgICAgICAgPFN1YmVzY3Rpb24gdGl0bGU9XCJPdmVydmlld1wiIGlkPVwiQ3lzdGljIEZpYnJvc2lzMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgZGF0YS1hb3M9XCJ6b29tLXktb3V0XCIgPkN5c3RpYyBGaWJyb3NpcyAoQ0YpIGlzIGEgY29tbW9uIGxpZmUtbGltaXRpbmcgZ2VuZXRpYyBkaXNvcmRlciwgcGFydGljdWxhcmx5IGFmZmVjdGluZyB0aGUgQ2F1Y2FzaWFuIHBvcHVsYXRpb24sIHdpdGggYXBwcm94aW1hdGVseSA8Yj4xNjIsNDAwIHBlb3BsZSB3b3JsZHdpZGU8L2I+IGxpdmluZyB3aXRoIHRoZSBjb25kaXRpb24gPFN1cFNjcm9sbExpbmsgbGFiZWw9XCI3XCIvPiAuIFN0YXRpc3RpY2FsbHksIGFib3V0IDxiPm9uZSBpbiBldmVyeSAzLDMwMDwvYj4gd2hpdGUgbmV3Ym9ybnMgaXMgYm9ybiB3aXRoIENGIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiOFwiLz4gLiBBbmQgYWNjb3JkaW5nIHRvIHRoZSBHZXJtYW4gQ3lzdGljIEZpYnJvc2lzIFJlZ2lzdHJ5LCB0aGUgYXZlcmFnZSBsaWZlIGV4cGVjdGFuY3kgZm9yIGNoaWxkcmVuIGJvcm4gd2l0aCBDRiBpbiAyMDIxIHdhcyBhcm91bmQgNTcgeWVhcnMgPFN1cFNjcm9sbExpbmsgbGFiZWw9XCI5XCIvPiAsIGhpZ2hsaWdodGluZyB0aGUgc2V2ZXJlIGFuZCBsaWZlLXNob3J0ZW5pbmcgbmF0dXJlIG9mIHRoZSBkaXNlYXNlLiA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD5UaGUgbW9kZXJuIHVuZGVyc3RhbmRpbmcgb2YgQ0YgZGF0ZXMgYmFjayB0byAxOTIyIHdoZW4gRHIuIERvcm90aHkgQW5kZXJzZW4sIGEgcGVkaWF0cmljIHNwZWNpYWxpc3QsIGZpcnN0IGRlc2NyaWJlZCB0aGUgZGlzZWFzZSBhbmQgY29pbmVkIHRoZSB0ZXJtIFwiQ3lzdGljIEZpYnJvc2lzXCIgPFN1cFNjcm9sbExpbmsgbGFiZWw9XCIxMFwiLz4gLiBJbiBHZXJtYW55LCBpdCBpcyBjb21tb25seSBrbm93biBhcyBcIk11a292aXN6aWRvc2UsXCIgZGVyaXZlZCBmcm9tIHRoZSBMYXRpbiB3b3JkcyBtZWFuaW5nIFwibXVjdXNcIiBhbmQgXCJ2aXNjb3VzXCIgPFN1cFNjcm9sbExpbmsgbGFiZWw9XCIxMFwiLz4gLCBlbXBoYXNpemluZyB0aGUgY2hhcmFjdGVyaXN0aWMgdGhpY2ssIHN0aWNreSBtdWN1cyB0aGF0IGRlZmluZXMgdGhlIGNvbmRpdGlvbiA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjExXCIvPjxzdXA+LDwvc3VwPjxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiMTJcIi8+LiA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD5HZW5ldGljIHJlc2VhcmNoIGhhcyBpZGVudGlmaWVkIG92ZXIgMSw3MDAgbXV0YXRpb25zIGluIHRoZSBDRlRSIChDeXN0aWMgRmlicm9zaXMgVHJhbnNtZW1icmFuZSBDb25kdWN0YW5jZSBSZWd1bGF0b3IpIGdlbmUsIHdpdGggdGhlIEY1MDhkZWwgbXV0YXRpb24gYmVpbmcgdGhlIG1vc3QgY29tbW9uLCBhZmZlY3RpbmcgYWJvdXQgNzAlIG9mIENGIHBhdGllbnRzLiBUaGlzIG11dGF0aW9uIHByZXZlbnRzIHRoZSBwcm9wZXIgZm9sZGluZyBvZiB0aGUgQ0ZUUiBwcm90ZWluLCBzaWduaWZpY2FudGx5IGltcGFpcmluZyBpdHMgZnVuY3Rpb24gPFN1cFNjcm9sbExpbmsgbGFiZWw9XCIxM1wiLz4gLiA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD5UaGUgQ0ZUUiBwcm90ZWluIHJlZ3VsYXRlcyB0aGUgZmxvdyBvZiBjaGxvcmlkZSBpb25zIGFjcm9zcyB0aGUgbWVtYnJhbmVzIG9mIGNlbGxzIGluIHRoZSBsdW5ncywgZGlnZXN0aXZlIHN5c3RlbSwgYW5kIG90aGVyIG9yZ2Fucy4gVGhpcyBpb24gZmxvdyBpcyBlc3NlbnRpYWwgZm9yIGRyYXdpbmcgd2F0ZXIgaW50byBzdXJyb3VuZGluZyB0aXNzdWVzLCB3aGljaCBoZWxwcyBtYWludGFpbiB0aGUgcHJvcGVyIGh5ZHJhdGlvbiBhbmQgY29uc2lzdGVuY3kgb2YgbXVjdXMuIEluIHBhdGllbnRzIHdpdGggQ0YsIHRoZSBkaXNydXB0aW9uIG9mIHRoaXMgcHJvY2VzcyBwcmV2ZW50cyBzdWZmaWNpZW50IHdhdGVyIGZyb20gZW50ZXJpbmcgdGhlIG11Y3VzLCBtYWtpbmcgaXQgYWJub3JtYWxseSB0aGljayBhbmQgc3RpY2t5LiBUaGUgYWNjdW11bGF0aW9uIG9mIHRoaXMgbXVjdXMgbGVhZHMgdG8gYW4gb2JzdHJ1Y3Rpb24gb2YgYWlyd2F5cyBhbmQgZGlnZXN0aXZlIGR1Y3RzLCByZXN1bHRpbmcgaW4gY2hyb25pYyBsdW5nIGluZmVjdGlvbnMsIGluZmxhbW1hdGlvbiwgaW1wYWlyZWQgZGlnZXN0aW9uLCBhbmQgbWFsbnV0cml0aW9uPFN1cFNjcm9sbExpbmsgbGFiZWw9XCIxNFwiLz4gLiA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8T25lRmlndXJlXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwaWMxPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcHJvamVjdC1kZXNjcmlwdGlvbi9sdW5nLWVwaGl0ZWwtYmlvcmVuZGVyLnBuZ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBudW09ezJ9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiZz1cIndoaXRlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uPVwiSHVtYW4gbHVuZyBlcGl0aGVsaXVtIHdpdGggY29ycmVjdGVkIENGVFIgZXhwcmVzc2lvbiAobGVmdCkgYW5kIEN5c3RpYyBGaWJyb3NpcyAocmlnaHQpLlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbHQxPVwiTHVuZyBlcGhpdGVsaXVtIG9mIGh1bWFuIHdpdGggY29ycmVjdCBDRlRSIGV4cHJlc3Npb24gKGxlZnQpIGFuZCBDeXN0aWMgRmlicm9zaXMgKHJpZ2h0KS5cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxDb2xsYXBzaWJsZSBpZD1cImNsYXNzZXMtbXV0YXRpb25zLWNvbGxhcHNpYmxlXCIgdGl0bGU9XCJEaWZmZXJlbnQgY2xhc3NlcyBvZiBtdXRhdGlvbnNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPlRoZSBtdXRhdGlvbnMgY2FuIGJlIGRpdmlkZWQgaW50byA8dT5zaXggY2xhc3NlczwvdT4gPFN1cFNjcm9sbExpbmsgbGFiZWw9XCIxNVwiLz4gOjwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPjxiPkNsYXNzIEk8L2I+IG11dGF0aW9ucyBwcmV2ZW50IHRoZSBzeW50aGVzaXMgb2YgQ0ZUUiBwcm90ZWlucyBhbHRvZ2V0aGVyLCBtZWFuaW5nIG5vIGNoYW5uZWxzIGFyZSBwcm9kdWNlZC48L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD48Yj5DbGFzcyBJSTwvYj4gbXV0YXRpb25zLCB3aGljaCBpbmNsdWRlIHRoZSBjb21tb24gRjUwOGRlbCBtdXRhdGlvbiAocmVzcG9uc2libGUgZm9yIGFib3V0IDg1JSBvZiBjYXNlcyA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjE2XCIvPiAsIGRpc3J1cHQgdGhlIG1hdHVyYXRpb24gcHJvY2VzcyBvZiB0aGUgcHJvdGVpbi4gQXMgYSByZXN1bHQsIHRoZSBkZWZlY3RpdmUgY2hhbm5lbHMgYXJlIHF1aWNrbHkgZGVncmFkZWQgYnkgdGhlIGNlbGwuPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+PGI+Q2xhc3MgSUlJPC9iPiBtdXRhdGlvbnMsIGtub3duIGFzIFx1MjAxQ2dhdGluZ1x1MjAxRCBtdXRhdGlvbnMsIHJlZHVjZSB0aGUgbGlrZWxpaG9vZCB0aGF0IHRoZSBDRlRSIGNoYW5uZWwgd2lsbCBvcGVuIGNvcnJlY3RseSwgaW1wYWlyaW5nIGl0cyBmdW5jdGlvbi48L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD48Yj5DbGFzcyBJViwgVjwvYj4gYW5kIDxiPlZJPC9iPiBtdXRhdGlvbnMgYXJlIHJhcmUuIFRoZXNlIG11dGF0aW9ucyByZXN1bHQgaW4gdGhlIHByb2R1Y3Rpb24gb2YgdW5zdGFibGUgb3IgaW5lZmZpY2llbnQgQ0ZUUiBwcm90ZWlucywgd2hpY2ggZG8gbm90IGZ1bmN0aW9uIGFkZXF1YXRlbHkgYW5kIGFyZSBwcm9kdWNlZCBpbiBpbnN1ZmZpY2llbnQgbnVtYmVycy48L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0NvbGxhcHNpYmxlPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+VGhlIHByZXZhbGVuY2Ugb2YgQ0YgdmFyaWVzIGdsb2JhbGx5LCB3aXRoIGhpZ2hlciBjb25jZW50cmF0aW9ucyBvZiBjYXNlcyBpbiBFdXJvcGUsIE5vcnRoIEFtZXJpY2EsIGFuZCBwYXJ0cyBvZiBPY2VhbmlhLiBUaGlzIGdlb2dyYXBoaWMgdmFyaWF0aW9uIHVuZGVyc2NvcmVzIHRoZSBuZWVkIGZvciByZWdpb25hbGx5IHRhaWxvcmVkIGhlYWx0aGNhcmUgc29sdXRpb25zLiA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8T25lRmlndXJlIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGljMT1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2NoYXJ0cy1tYXBzL2NmcGVyMTAtMDAwLnBuZ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbHQxPVwiXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG51bT1cIjNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmc9XCJ3aGl0ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbj1cIkdsb2JhbCBkaXN0cmlidXRpb24gb2YgY3lzdGljIGZpYnJvc2lzIGNhc2VzOiBDb3VudHJpZXMgYXJlIGNvbG9yLWNvZGVkIGJhc2VkIG9uIHRoZSBudW1iZXIgb2YgcmVwb3J0ZWQgY2FzZXMsIGhpZ2hsaWdodGluZyByZWdpb25hbCBwcmV2YWxlbmNlIHBhdHRlcm5zLlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPkNGIGlzIG9mdGVuIGRpYWdub3NlZCBlYXJseSB0aHJvdWdoIG5ld2Jvcm4gc2NyZWVuaW5nIHByb2dyYW1zLCB3aGljaCBkZXRlY3QgZWxldmF0ZWQgbGV2ZWxzIG9mIGltbXVub3JlYWN0aXZlIHRyeXBzaW5vZ2VuIChJUlQpLiBBIHBvc2l0aXZlIHJlc3VsdCB0eXBpY2FsbHkgbGVhZHMgdG8gYSBzd2VhdCB0ZXN0LCB0aGUgZ29sZCBzdGFuZGFyZCBmb3IgZGlhZ25vc2luZyBDRiwgd2hpY2ggbWVhc3VyZXMgdGhlIGNvbmNlbnRyYXRpb24gb2YgY2hsb3JpZGUgaW4gc3dlYXQuIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPkFsdGhvdWdoIHRoZXJlIGlzIGN1cnJlbnRseSBubyBjdXJlIGZvciBDRiwgcGF0aWVudHMgbXVzdCBtYW5hZ2UgdGhlIGRpc2Vhc2UgdGhyb3VnaG91dCB0aGVpciBsaXZlcywgcmVseWluZyBvbiB0cmVhdG1lbnRzIHRoYXQgYWxsZXZpYXRlIHN5bXB0b21zIGJ1dCBkbyBub3QgYWRkcmVzcyB0aGUgcm9vdCBjYXVzZS4gVGhpcyBsaWZlbG9uZyBtYW5hZ2VtZW50IGltcG9zZXMgc2lnbmlmaWNhbnQgZmluYW5jaWFsIGJ1cmRlbnMgb24gYWZmZWN0ZWQgZmFtaWxpZXMgYW5kIGhlYWx0aGNhcmUgc3lzdGVtcywgcGFydGljdWxhcmx5IGluIHJlZ2lvbnMgd2l0aCBhIGhpZ2ggcHJldmFsZW5jZSBvZiBDRiA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjE1XCIvPiAuIEluIHJlY2VudCB5ZWFycywgPGI+Q0ZUUiBtb2R1bGF0b3JzPC9iPiwgd2hpY2ggdGFyZ2V0IHRoZSB1bmRlcmx5aW5nIGdlbmV0aWMgZGVmZWN0LCBoYXZlIG9mZmVyZWQgbmV3IGhvcGUgZm9yIG1hbnkgcGF0aWVudHMuIDwvcD5cclxuICAgICAgICAgICAgICAgIDwvU3ViZXNjdGlvbj5cclxuICAgICAgICAgICAgICAgIDxTdWJlc2N0aW9uIHRpdGxlPVwiVGhlIENGVFIgUHJvdGVpblwiIGlkPVwiQ3lzdGljIEZpYnJvc2lzMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxwPlRoZSBDRlRSIChDeXN0aWMgRmlicm9zaXMgVHJhbnNtZW1icmFuZSBDb25kdWN0YW5jZSBSZWd1bGF0b3IpIHByb3RlaW4gaXMgYW4gaW9uIGNoYW5uZWwgdGhhdCBmYWNpbGl0YXRlcyB0aGUgbW92ZW1lbnQgb2YgY2hsb3JpZGUgaW9ucyBhY3Jvc3MgZXBpdGhlbGlhbCBjZWxsIG1lbWJyYW5lcyA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjE3XCIvPiA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjE4XCIvPiAuIFRoaXMgbW92ZW1lbnQgaXMgZXNzZW50aWFsIGZvciBjb250cm9sbGluZyB0aGUgZmxvdyBvZiB3YXRlciBpbiB0aXNzdWVzIHN1Y2ggYXMgdGhlIGx1bmdzIGFuZCBpbnRlc3RpbmVzIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiMTlcIi8+IC4gVGhpcyBpbmNyZWFzZSBpbiBpb24gY29uY2VudHJhdGlvbiBpbiB0aGUgZXh0cmFjZWxsdWxhciBzcGFjZSBkcmF3cyB3YXRlciBvdXQgb2YgdGhlIGNlbGxzIGFuZCBpbnRvIHRoZSBzdXJyb3VuZGluZyBtdWN1cyBvciBmbHVpZCwgZW5zdXJpbmcgaXQgc3RheXMgdGhpbiBhbmQgbW9iaWxlIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiMjBcIi8+IC48L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgPHA+VGhlIEN5c3RpYyBGaWJyb3NpcyBUcmFuc21lbWJyYW5lIENvbmR1Y3RhbmNlIFJlZ3VsYXRvciAoQ0ZUUikgcHJvdGVpbiBpcyBhIHNwZWNpYWxpemVkIHByb3RlaW4gdGhhdCBwbGF5cyBhIGNydWNpYWwgcm9sZSBpbiBtYWludGFpbmluZyB0aGUgYmFsYW5jZSBvZiBpb25zIGFuZCB3YXRlciBvbiB0aGUgc3VyZmFjZSBvZiBjZXJ0YWluIGNlbGxzLCBwYXJ0aWN1bGFybHkgaW4gdGhlIGx1bmdzLCBwYW5jcmVhcywgYW5kIG90aGVyIG9yZ2FucyA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjE4XCIvPiA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjIxXCIvPiAuIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICA8SDQgdGV4dD1cIlN0cnVjdHVyZSBvZiBDRlRSXCIgaWQ9XCJzdHJ1Y3R1cmUtY2Z0clwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPkNGVFIgaXMgYSBsYXJnZSBwcm90ZWluIGVtYmVkZGVkIGluIHRoZSBjZWxsIG1lbWJyYW5lLiBJdCBiZWxvbmdzIHRvIGEgZmFtaWx5IG9mIHByb3RlaW5zIGtub3duIGFzIEFCQyB0cmFuc3BvcnRlcnMgKEFUUC1CaW5kaW5nIENhc3NldHRlIHRyYW5zcG9ydGVycyksIHdoaWNoIHR5cGljYWxseSBtb3ZlIG1vbGVjdWxlcyBhY3Jvc3MgY2VsbCBtZW1icmFuZXMgPFN1cFNjcm9sbExpbmsgbGFiZWw9XCIxN1wiLz4gLiBDRlRSLCBob3dldmVyLCBpcyB1bmlxdWUgYmVjYXVzZSBpdCBmdW5jdGlvbnMgYXMgYW4gaW9uIGNoYW5uZWwgcmF0aGVyIHRoYW4gYSB0cmFuc3BvcnRlciA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjE4XCIvPiAuIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+VGhlIHByb3RlaW4gY29uc2lzdHMgb2Ygc2V2ZXJhbCBpbXBvcnRhbnQgcmVnaW9uczogPC9wPiBcclxuICAgICAgICAgICAgICAgICAgICAgICAgPHVsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxiPlR3byB0cmFuc21lbWJyYW5lIGRvbWFpbnMgKFRNRHMpPC9iPjogVGhlc2Ugc3BhbiB0aGUgY2VsbCBtZW1icmFuZSBhbmQgY3JlYXRlIHRoZSBjaGFubmVsIHRocm91Z2ggd2hpY2ggaW9ucyBjYW4gZmxvdyA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjIwXCIvPiAuPC9saT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48Yj5Ud28gbnVjbGVvdGlkZS1iaW5kaW5nIGRvbWFpbnMgKE5CRHMpPC9iPjogTG9jYXRlZCBvbiB0aGUgY3l0b3BsYXNtaWMgc2lkZSBvZiB0aGUgbWVtYnJhbmUsIHRoZXNlIGRvbWFpbnMgYmluZCBhbmQgaHlkcm9seXplIEFUUCAoYWRlbm9zaW5lIHRyaXBob3NwaGF0ZSkuIEFUUCBiaW5kaW5nIGFuZCBoeWRyb2x5c2lzIHJlZ3VsYXRlIHRoZSBvcGVuaW5nIGFuZCBjbG9zaW5nIG9mIHRoZSBjaGxvcmlkZSBjaGFubmVsIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiMTdcIi8+ICA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjIxXCIvPiAuPC9saT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48Yj5SZWd1bGF0b3J5IChSKSBkb21haW48L2I+OiBUaGlzIGRvbWFpbiBpcyB1bmlxdWUgdG8gQ0ZUUiBhbmQgY29udHJvbHMgdGhlIGFjdGl2aXR5IG9mIHRoZSBwcm90ZWluLiBJdCByZXF1aXJlcyBwaG9zcGhvcnlsYXRpb24gYnkgcHJvdGVpbiBraW5hc2UgQSAoUEtBKSB0byBhY3RpdmF0ZSB0aGUgaW9uIGNoYW5uZWwgPFN1cFNjcm9sbExpbmsgbGFiZWw9XCIxOFwiLz4gPFN1cFNjcm9sbExpbmsgbGFiZWw9XCIxOVwiLz4gLjwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdWw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsvKiBUaGlzIG9uZSB0aGlzIGhhcyB0cCBzdGF5IGEgZmlndXJlIGFuZCBub3QgYmUgYSBPbmVGaWd1cmUgKi99XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImZpZ3VyZS13cmFwcGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZpZ3VyZT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wgZ2lmLXdyYXBwZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3NOYW1lPVwiQ0ZUUi1naWZcIiBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9mYW56b3IvY2Z0ci13dC5naWZcIj48L2ltZz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmaWdjYXB0aW9uPiA8Yj5BbmltYXRpb24gMS48L2I+IE1vZGVsIG9mIGEgZnVuY3Rpb25hbCBDRlRSIHByb3RlaW4uPC9maWdjYXB0aW9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZmlndXJlPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJGdW5jdGlvbiBvZiBDRlRSXCIgaWQ9XCJmdW5jdGlvbi1jZnRyXCIgLz4gICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5DRlRSIGZ1bmN0aW9ucyBwcmltYXJpbHkgYXMgYSBjaGxvcmlkZSBpb24gY2hhbm5lbC4gSXQgaXMgcmVzcG9uc2libGUgZm9yIHRyYW5zcG9ydGluZyBjaGxvcmlkZSBpb25zIChDbFx1MjA3QikgYWNyb3NzIGVwaXRoZWxpYWwgY2VsbCBtZW1icmFuZXMgPFN1cFNjcm9sbExpbmsgbGFiZWw9XCIxN1wiLz4gPFN1cFNjcm9sbExpbmsgbGFiZWw9XCIyMFwiLz4gLiBIZXJlJ3MgaG93IGl0IHdvcmtzOjwvcD4gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxvbD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48Yj5SZWd1bGF0aW9uIGJ5IHBob3NwaG9yeWxhdGlvbjwvYj46IFRoZSBSIGRvbWFpbiBtdXN0IGZpcnN0IGJlIHBob3NwaG9yeWxhdGVkIGJ5IFBLQSB0byBhbGxvdyBjaGFubmVsIGFjdGl2YXRpb24uIFRoaXMgcGhvc3Bob3J5bGF0aW9uIGlzIG9mdGVuIHRyaWdnZXJlZCBieSBjeWNsaWMgQU1QIChjQU1QKSwgYSBzaWduYWxpbmcgbW9sZWN1bGUgPFN1cFNjcm9sbExpbmsgbGFiZWw9XCIyMVwiLz4gLjwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGI+T3BlbmluZyB0aGUgY2hhbm5lbDwvYj46IE9uY2UgdGhlIFIgZG9tYWluIGlzIHBob3NwaG9yeWxhdGVkLCBBVFAgYmluZHMgdG8gdGhlIE5CRHMsIGNhdXNpbmcgY29uZm9ybWF0aW9uYWwgY2hhbmdlcyB0aGF0IG9wZW4gdGhlIGNobG9yaWRlIGNoYW5uZWwgPFN1cFNjcm9sbExpbmsgbGFiZWw9XCIxOFwiLz4gLjwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGI+Q2hsb3JpZGUgdHJhbnNwb3J0PC9iPjogV2l0aCB0aGUgY2hhbm5lbCBvcGVuLCBjaGxvcmlkZSBpb25zIG1vdmUgZnJvbSBpbnNpZGUgdGhlIGNlbGwgdG8gdGhlIG91dHNpZGUuIFRoaXMgbW92ZW1lbnQgb2YgY2hsb3JpZGUgaGVscHMgZHJhdyB3YXRlciBvdXQgb2YgdGhlIGNlbGwsIHRoaW5uaW5nIG11Y3VzIGFuZCBtYWludGFpbmluZyBwcm9wZXIgaHlkcmF0aW9uIG9mIHRoZSBlcGl0aGVsaWFsIHN1cmZhY2VzIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiMTlcIi8+IDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiMjBcIi8+IC48L2xpPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxiPkNsb3NpbmcgdGhlIGNoYW5uZWw8L2I+OiBIeWRyb2x5c2lzIG9mIEFUUCBjYXVzZXMgdGhlIGNoYW5uZWwgdG8gY2xvc2UgYWZ0ZXIgYSBjZXJ0YWluIHBlcmlvZCwgdGlnaHRseSByZWd1bGF0aW5nIGNobG9yaWRlIHRyYW5zcG9ydCA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjE3XCIvPiAuPC9saT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9vbD4gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPkNGVFIgcGxheXMgYSBjcml0aWNhbCByb2xlIGluIG1haW50YWluaW5nIHRoZSBmbHVpZCBiYWxhbmNlIG9uIHRoZSBzdXJmYWNlcyBvZiB0aXNzdWVzIHN1Y2ggYXMgdGhlIGFpcndheXMsIGRpZ2VzdGl2ZSB0cmFjdCBhbmQgc3dlYXQgZ2xhbmRzLiBCeSBhbGxvd2luZyBjaGxvcmlkZSBpb25zIHRvIGZsb3cgb3V0IG9mIHRoZSBjZWxscywgQ0ZUUiBlbnN1cmVzIHRoYXQgd2F0ZXIgZm9sbG93cywgcHJldmVudGluZyB0aGUgYWNjdW11bGF0aW9uIG9mIHRoaWNrLCBzdGlja3kgbXVjdXMgPFN1cFNjcm9sbExpbmsgbGFiZWw9XCIxOVwiLz4gLjwvcD5cclxuICAgICAgICAgICAgICAgICAgICA8SDQgdGV4dD1cIkNGVFIgaW4gQ3lzdGljIEZpYnJvc2lzXCIgaWQ9XCJDRlRSLWluLWNmdHJcIiAvPiAgICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+SW4gdGhlIGx1bmdzLCB0aGlzIHdhdGVyIG1vdmVtZW50IGlzIGNydWNpYWwgZm9yIG1haW50YWluaW5nIGEgdGhpbiwgc2xpcHBlcnkgbGF5ZXIgb2YgbXVjdXMgdGhhdCBjYW4gdHJhcCBhbmQgcmVtb3ZlIHBhcnRpY2xlcyBsaWtlIGR1c3QgYW5kIGJhY3RlcmlhLiBUaGUgbXVjdXMgaXMgdGhlbiBtb3ZlZCBvdXQgb2YgdGhlIGx1bmdzIGJ5IHRoZSBhY3Rpb24gb2YgY2lsaWEsIHRpbnkgaGFpci1saWtlIHN0cnVjdHVyZXMgb24gdGhlIHN1cmZhY2Ugb2YgZXBpdGhlbGlhbCBjZWxscy4gV2hlbiB0aGUgQ0ZUUiBwcm90ZWluIGlzIGRlZmVjdGl2ZSwgYXMgaW4gQ3lzdGljIEZpYnJvc2lzLCBjaGxvcmlkZSBjYW5ub3QgcHJvcGVybHkgZXhpdCB0aGUgY2VsbHMuIFRoaXMgZGlzcnVwdHMgdGhlIG9zbW90aWMgZ3JhZGllbnQsIHByZXZlbnRpbmcgd2F0ZXIgZnJvbSBlbnRlcmluZyB0aGUgbXVjdXMuIEFzIGEgcmVzdWx0LCB0aGUgbXVjdXMgYmVjb21lcyB0aGljayBhbmQgc3RpY2t5LCBtYWtpbmcgaXQgZGlmZmljdWx0IHRvIGNsZWFyIGFuZCBjcmVhdGluZyBhbiBpZGVhbCBlbnZpcm9ubWVudCBmb3IgYmFjdGVyaWFsIGluZmVjdGlvbnMsIHdoaWNoIGxlYWRzIHRvIGNocm9uaWMgaW5mbGFtbWF0aW9uIGFuZCBsdW5nIGRhbWFnZSBvdmVyIHRpbWUuPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5JbiB0aGUgaW50ZXN0aW5lcywgQ0ZUUiByZWd1bGF0ZXMgZmx1aWQgc2VjcmV0aW9uIGludG8gdGhlIGRpZ2VzdGl2ZSB0cmFjdCwgd2hpY2ggaXMgdml0YWwgZm9yIHRoZSBub3JtYWwgbW92ZW1lbnQgb2YgZGlnZXN0aXZlIGNvbnRlbnRzLiBXaXRob3V0IHByb3BlciBDRlRSIGZ1bmN0aW9uLCB3YXRlciBtb3ZlbWVudCBpcyByZWR1Y2VkLCBsZWFkaW5nIHRvIHRoaWNrZW5lZCBkaWdlc3RpdmUgZmx1aWRzLCBibG9ja2FnZXMsIGFuZCBpbXBhaXJlZCBudXRyaWVudCBhYnNvcnB0aW9uLiBUaGlzIGNvbnRyaWJ1dGVzIHRvIG1hbG51dHJpdGlvbiBhbmQgb3RoZXIgZGlnZXN0aXZlIGNvbXBsaWNhdGlvbnMgaW4gQ3lzdGljIEZpYnJvc2lzIHBhdGllbnRzLiA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPkJ5IGNvcnJlY3RpbmcgdGhlIGdlbmV0aWMgbXV0YXRpb25zIHRoYXQgbGVhZCB0byBDRlRSIG1hbGZ1bmN0aW9uLCBzdWNoIGFzIHRoZSBGNTA4ZGVsIG11dGF0aW9uLCB3ZSBhaW0gdG8gcmVzdG9yZSB0aGUgcHJvcGVyIGJhbGFuY2Ugb2YgY2hsb3JpZGUgYW5kIHdhdGVyIG1vdmVtZW50LCB3aGljaCBpcyBjcnVjaWFsIGZvciBwcmV2ZW50aW5nIHRoZSBidWlsZHVwIG9mIG11Y3VzIGFuZCBlbnN1cmluZyBub3JtYWwgZnVuY3Rpb24gaW4gYm90aCB0aGUgcmVzcGlyYXRvcnkgYW5kIGRpZ2VzdGl2ZSBzeXN0ZW1zLjwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L1N1YmVzY3Rpb24+XHJcbiAgICAgICAgICAgICAgICA8U3ViZXNjdGlvbiB0aXRsZT1cIkY1MDhkZWxcIiBpZD1cIkN5c3RpYyBGaWJyb3NpczNcIj5cclxuICAgICAgICAgICAgICAgICAgICA8cD5Nb3JlIHRoYW4gMSwwMDAgbXV0YXRpb25zIGluIHRoZSBDRlRSIGdlbmUgYXJlIHJlc3BvbnNpYmxlIGZvciB0aGUgZGV2ZWxvcG1lbnQgb2YgQ3lzdGljIEZpYnJvc2lzLiBUaGUgbW9zdCBjb21tb24gdmFyaWFudCBpcyB0aGUgRjUwOGRlbCBtdXRhdGlvbiwgZm91bmQgaW4gYXBwcm94aW1hdGVseSA3MCUgb2YgYWZmZWN0ZWQgaW5kaXZpZHVhbHMgb2YgQ2F1Y2FzaWFuIGRlc2NlbnQgaW4gQ2FuYWRhLCBOb3J0aGVybiBFdXJvcGUsIGFuZCB0aGUgVW5pdGVkIFN0YXRlcyA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjIyXCIvPiAuIEl0IGlzIGVzdGltYXRlZCB0aGF0IGFyb3VuZCA5MCUgb2YgcGVvcGxlIHdpdGggQ3lzdGljIEZpYnJvc2lzIGluIEV1cm9wZSBhbmQgdGhvc2Ugb2YgRXVyb3BlYW4gaGVyaXRhZ2UgY2FycnkgYXQgbGVhc3Qgb25lIEY1MDhkZWwgYWxsZWxlIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiMjNcIi8+PHN1cD4sPC9zdXA+PFN1cFNjcm9sbExpbmsgbGFiZWw9XCIyNFwiLz4uIFJlc2VhcmNoIHN1Z2dlc3RzIHRoYXQgdGhpcyBtdXRhdGlvbiBvcmlnaW5hdGVkIGluIFdlc3Rlcm4gRXVyb3BlIGF0IGxlYXN0IDUsMDAwIHllYXJzIGFnbyA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjIzXCIvPiAuPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgIDxwPlRoZSBGNTA4ZGVsIG11dGF0aW9uIGludm9sdmVzIHRoZSBkZWxldGlvbiBvZiB0aHJlZSBudWNsZW90aWRlcywgXCJDVFQsXCIgYXQgcG9zaXRpb24gNTA4LCB3aGljaCByZW1vdmVzIGEgcGhlbnlsYWxhbmluZSByZXNpZHVlIHdpdGhvdXQgY2F1c2luZyBhIGZyYW1lc2hpZnQuIFRoaXMgZGVsZXRpb24gaW1wYWlycyB0aGUga2luZXRpYyBhbmQgdGhlcm1vZHluYW1pYyBmb2xkaW5nIG9mIHRoZSBOQkQxIGRvbWFpbiA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjI0XCIvPiAuIEFzIGEgcmVzdWx0LCB0aGUgQ0ZUUiBwcm90ZWluIG5vdCBvbmx5IG1pc2ZvbGRzIGJ1dCBhbHNvIGV4cGVyaWVuY2VzIGRlZmVjdHMgaW4gdHJhZmZpY2tpbmcgYW5kIHByZW1hdHVyZSBkZWdyYWRhdGlvbiwgbGVhZGluZyB0byBhIHJlZHVjdGlvbiBpbiBpdHMgc3VyZmFjZSBleHByZXNzaW9uIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiMjVcIi8+IC4gVGhpcyBzcGVjaWZpYyBtdXRhdGlvbiBpcyBwYXJ0aWN1bGFybHkgc2V2ZXJlIGJlY2F1c2UgaXQgYWZmZWN0cyBib3RoIHRoZSBwcm9kdWN0aW9uIGFuZCBmdW5jdGlvbiBvZiBDRlRSLCByZXN1bHRpbmcgaW4gYSBtb3JlIGFnZ3Jlc3NpdmUgZGlzZWFzZSBjb3Vyc2UuIENvbnNlcXVlbnRseSwgcGF0aWVudHMgd2l0aCB0aGUgRjUwOGRlbCBtdXRhdGlvbiBtYXkgcmVzcG9uZCBiZXR0ZXIgdG8gQ0ZUUiBtb2R1bGF0b3JzLCB3aGljaCB0YXJnZXQgdGhlc2Ugc3BlY2lmaWMgZGVmZWN0cyBpbiBwcm90ZWluIGZvbGRpbmcgYW5kIGZ1bmN0aW9uLjwvcD5cclxuICAgICAgICAgICAgICAgICAgICA8Q29sbGFwc2libGUgaWQ9XCJzdGF0aXN0aWNhbC1kaXN0cmlidXRpb24tY29sbGFwc2libGVcIiB0aXRsZT1cIlN0YXRpc3RpY2FsIGRpc3RyaWJ1dGlvbiBvZiBGNTA4ZGVsIG11dGF0aW9uc1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5JbiAyMDIzLCBhIGNvbXByZWhlbnNpdmUgYW5hbHlzaXMgd2FzIGNvbmR1Y3RlZCB0byBhc3Nlc3MgdGhlIGRpc3RyaWJ1dGlvbiBvZiBtdXRhdGlvbnMgaW4gdGhlIENGVFIgZ2VuZSBhc3NvY2lhdGVkIHdpdGggQ3lzdGljIEZpYnJvc2lzIChDRikgd29ybGR3aWRlLiBEYXRhIHdhcyBzb3VyY2VkIGZyb20gdHdvIHJlcHV0YWJsZSBkYXRhYmFzZXM6IHRoZSA8YSBocmVmPVwiaHR0cHM6Ly9jZnRyLml1cmMubW9udHAuaW5zZXJtLmZyL2NnaS1iaW4vdmFyaWFudF9saXN0LmNnaVwiIHRpdGxlPVwiQ0ZUUi1kYXRhYmFzZS0xXCIgPkNGVFIgTXV0YXRpb24gRGF0YWJhc2U8L2E+IGFuZCB0aGUgPGEgaHJlZj1cImh0dHBzOi8vY2Z0cjIub3JnL211dGF0aW9uc19oaXN0b3J5XCIgdGl0bGU9XCJDRlRSLWRhdGFiYXNlLTJcIiA+Q0ZUUjIgRGF0YWJhc2U8L2E+LiA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlRoZSByZXN1bHRzIGluZGljYXRlIHRoZSBmb2xsb3dpbmcgZGlzdHJpYnV0aW9uIG9mIENGVFIgbXV0YXRpb24gdHlwZXMgYW5kIHRoZWlyIGZyZXF1ZW5jaWVzIGluIHBlcmNlbnQ6IDwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3cgYWxpZ24taXRlbXMtY2VudGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiID5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dWw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48Yj5JbnNlcnRpb25zIChpbnMpPC9iPjogMC4wMDA4OCU8L2xpPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGI+RGVsZXRpb25zIChkZWwpPC9iPjogNzIuNjQlPC9saT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxiPlN1YnN0aXR1dGlvbnMgKHN1YnMpPC9iPjogMjMuODQlPC9saT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxiPkluc2VydGlvbnMvRGVsZXRpb25zIChpbmRlbCk8L2I+OiAwLDAwNDg1JTwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48Yj5PdGhlciBtdXRhdGlvbnM8L2I+OiAwLDAwMzcwJTwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC91bD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCIgPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxQaWVDaGFydCAvPiB7LyogUmVuZGVyIHRoZSBQaWVDaGFydCBjb21wb25lbnQgKi99XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PiBcclxuICAgICAgICAgICAgICAgICAgICA8L0NvbGxhcHNpYmxlPiAgXHJcbiAgICAgICAgICAgICAgICAgICAgPHA+T3ZlcmFsbCwgdGhlIHN0YXRpc3RpY2FsIGRpc3RyaWJ1dGlvbiBvZiBDRlRSIG11dGF0aW9ucyByZXZlYWxzIHNpZ25pZmljYW50IHZhcmlhdGlvbnMgaW4gbXV0YXRpb24gdHlwZXMgYW5kIHRoZWlyIGZyZXF1ZW5jaWVzIHdvcmxkd2lkZSwgd2l0aCBkZWxldGlvbnMgKDcyLjY0JSkgYmVpbmcgdGhlIG1vc3QgY29tbW9uIG11dGF0aW9uIHR5cGUuIFRoaXMgdW5kZXJzY29yZXMgdGhlIG5lZWQgZm9yIGNvbnRpbnVlZCByZXNlYXJjaCBhbmQgbW9uaXRvcmluZyBvZiB0aGVzZSBnZW5ldGljIHZhcmlhdGlvbnMgdG8gaW1wcm92ZSBwYXRpZW50IGNhcmUgYW5kIHRyZWF0bWVudCBzdHJhdGVnaWVzLiBDRiBub3Qgb25seSBhZmZlY3RzIHRoZSBkaXJlY3RseSBhZmZlY3RlZCBvcmdhbnMsIGJ1dCBhbHNvIG1hbnkgb3RoZXIgYXJlYXMgb2YgdGhlIGJvZHkgdGhhdCBhcmUgaW5kaXJlY3RseSBhZmZlY3RlZCBieSB0aGUgZXh0ZW50IG9mIHRoZSBkaXNlYXNlLCBlLmcuIHRocm91Z2ggdGhlIGNvbmRpdGlvbiBvZiBkaXNlYXNlZCBvcmdhbnMuIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvd1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvU3ViZXNjdGlvbj5cclxuICAgICAgICAgICAgICAgIDxTdWJlc2N0aW9uIHRpdGxlPVwiU3ltcHRvbXNcIiBpZD1cIkN5c3RpYyBGaWJyb3NpczRcIj5cclxuICAgICAgICAgICAgICAgICAgICA8cD5TaW5jZSB0aGUgQ0ZUUiBnZW5lIGlzIGV4cHJlc3NlZCBpbiBuZWFybHkgYWxsIHRpc3N1ZXMgb2YgdGhlIGh1bWFuIGJvZHksIEN5c3RpYyBGaWJyb3NpcyBhZmZlY3RzIGFzIGEgbWV0YWJvbGljIGRpc2Vhc2UgYSB3aWRlIHJhbmdlIG9mIHZpdGFsIG9yZ2Fucy48L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgPENvbGxhcHNpYmxlIGlkPVwic3ltcHRvbXMtY29sbGFwc2libGVcIiB0aXRsZT1cIkhvdyB0aGUgc3ltcHRvbXMgYWZmZWN0IGRpZmZlcmVudCBwYXJ0cyBvZiB0aGUgYm9keVwiID5cclxuICAgICAgICAgICAgICAgICAgICA8VGFiQnV0dG9uUm93IGRhdGE9e3N5bXB0b21idXR0b25yb3dkYXRhfSBvcGVudHlwZT1cIm1lZGl0YWJzXCIgY2xvc2luZz1cIlwiLz5cclxuICAgICAgICAgICAgICAgICAgICA8QnV0dG9uUm93VGFicyBkYXRhPXtzeW1wdG9tYnV0dG9ucm93ZGF0YX0gY2xhPVwibWVkaXRhYnNcIi8+IFxyXG4gICAgICAgICAgICAgICAgICAgIDwvQ29sbGFwc2libGU+XHJcbiAgICAgICAgICAgICAgICA8L1N1YmVzY3Rpb24+XHJcbiAgICAgICAgICAgICAgICA8U3ViZXNjdGlvbiB0aXRsZT1cIkRpYWdub3Npc1wiIGlkPVwiQ3lzdGljIEZpYnJvc2lzNVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxwPldpdGggQ3lzdGljIEZpYnJvc2lzIGJlaW5nIGEgaGVyZWRpdGFyeSBkaXNlYXNlLCB0aGUgZGlhZ25vc3RpYyBtZXRob2RzIGhhdmUgZXZvbHZlZCBzaWduaWZpY2FudGx5IDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiNTZcIi8+IDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiNTdcIi8+IC4gRWFybHkgZGlhZ25vc2lzIGlzIGNydWNpYWwsIGFzIGl0IGFsbG93cyBmb3IgdGltZWx5IGludGVydmVudGlvbnMgdGhhdCBjYW4gaW1wcm92ZSB0aGUgcXVhbGl0eSBvZiBsaWZlIGFuZCBsb25nZXZpdHkgZm9yIENGIHBhdGllbnRzIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiNTZcIi8+PHN1cD4sPC9zdXA+PFN1cFNjcm9sbExpbmsgbGFiZWw9XCI1OFwiLz4uIFdpdGggYWR2YW5jZW1lbnRzIGluIHNjcmVlbmluZyBhbmQgZGlhZ25vc3RpYyB0b29scywgbWFueSBpbmRpdmlkdWFscyBhcmUgZGlhZ25vc2VkIHNob3J0bHkgYWZ0ZXIgYmlydGgsIGVuYWJsaW5nIGVhcmx5IG1hbmFnZW1lbnQgb2YgdGhlIGRpc2Vhc2UgPFN1cFNjcm9sbExpbmsgbGFiZWw9XCI1NlwiLz4gPFN1cFNjcm9sbExpbmsgbGFiZWw9XCI2MVwiLz4gLjwvcD5cclxuICAgICAgICAgICAgICAgICAgICA8cD5DeXN0aWMgIEZpYnJvc2lzIGNhbiBiZSBkaWFnbm9zZWQgdGhyb3VnaCBhIHZhcmlldHkgb2YgbWV0aG9kcywgb2Z0ZW4gc3RhcnRpbmcgaW4gaW5mYW5jeSBvciBldmVuIGJlZm9yZSBiaXJ0aCA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjU2XCIvPiA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjYwXCIvPiAuIFRoZSBtb3N0IGNvbW1vbiBkaWFnbm9zdGljIHRlc3QgaXMgdGhlIG5ld2Jvcm4gc2NyZWVuaW5nLCB3aGljaCBpbnZvbHZlcyBhIGJsb29kIHRlc3QgdGhhdCBjaGVja3MgZm9yIGVsZXZhdGVkIGxldmVscyBvZiBhIHByb3RlaW4gY2FsbGVkIGltbXVub3JlYWN0aXZlIHRyeXBzaW5vZ2VuIChJUlQpIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiNTlcIi8+IDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiNjFcIi8+IC4gRWxldmF0ZWQgSVJUIGxldmVscyBjYW4gaW5kaWNhdGUgcG90ZW50aWFsIENGLCBwcm9tcHRpbmcgZnVydGhlciB0ZXN0aW5nIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiNjFcIi8+IC4gPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgIDxDb2xsYXBzaWJsZSBpZD1cIm5ld2Jvcm4tc2NyZWVuaW5nLWNvbGxhcHNpYmxlXCIgdGl0bGU9XCJOZXdib3JuIHNjcmVlbmluZ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5OZXdib3JuIHNjcmVlbmluZyBmb3IgQ3lzdGljIEZpYnJvc2lzIChDRikgaGFzIGJlZW4gYSBtYWpvciBhZHZhbmNlbWVudCBpbiBlYXJseSBkZXRlY3Rpb24gYW5kIG1hbmFnZW1lbnQsIGxlYWRpbmcgdG8gc2lnbmlmaWNhbnRseSBpbXByb3ZlZCBwYXRpZW50IG91dGNvbWVzLiBUaGlzIHByYWN0aWNlLCB3aGljaCBzdGFydGVkIGluIHRoZSBsYXRlIDE5NjBzLCBiZWNhbWUgbW9yZSB3aWRlc3ByZWFkIGluIHRoZSAxOTcwcy4gVGhlIHNjcmVlbmluZyB0eXBpY2FsbHkgaW52b2x2ZXMgYSBibG9vZCB0ZXN0IHdpdGhpbiB0aGUgZmlyc3QgZmV3IGRheXMgb2YgbGlmZSwgbWVhc3VyaW5nIGltbXVub3JlYWN0aXZlIHRyeXBzaW5vZ2VuIChJUlQpLCBhIG1hcmtlciB0aGF0IGlzIGVsZXZhdGVkIGluIG5ld2Jvcm5zIHdpdGggQ0YuIEVsZXZhdGVkIElSVCBsZXZlbHMgcHJvbXB0IGZ1cnRoZXIgZ2VuZXRpYyB0ZXN0aW5nIHRvIGlkZW50aWZ5IENGVFIgbXV0YXRpb25zIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiNjJcIi8+IC4gSWYgbXV0YXRpb25zIGFyZSBmb3VuZCwgYSBzd2VhdCBjaGxvcmlkZSB0ZXN0IGlzIG9mdGVuIGNvbmR1Y3RlZCB0byBjb25maXJtIHRoZSBkaWFnbm9zaXMuIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+TWFueSBjb3VudHJpZXMsIGluY2x1ZGluZyB0aGUgVW5pdGVkIFN0YXRlcywgQ2FuYWRhLCB0aGUgVW5pdGVkIEtpbmdkb20sIEF1c3RyYWxpYSwgYW5kIHNldmVyYWwgRXVyb3BlYW4gbmF0aW9ucywgaGF2ZSBpbXBsZW1lbnRlZCBuZXdib3JuIHNjcmVlbmluZyBwcm9ncmFtcyBmb3IgQ0YuIEhvd2V2ZXIsIGEgc3VydmV5IG9mIENGIHNjcmVlbmluZyBpbiBFdXJvcGUgcmV2ZWFsZWQgdGhhdCB0aGUgaW1wbGVtZW50YXRpb24gb2Ygc3VjaCBwcm9ncmFtcyB2YXJpZXMgd2lkZWx5LCB3aXRoIHNvbWUgY291bnRyaWVzIGFkb3B0aW5nIG1vcmUgY29tcHJlaGVuc2l2ZSBwcm90b2NvbHMgdGhhbiBvdGhlcnMgPFN1cFNjcm9sbExpbmsgbGFiZWw9XCI2M1wiLz4gLiBFYXJseSBkaWFnbm9zaXMgdGhyb3VnaCBzY3JlZW5pbmcgb2ZmZXJzIHNpZ25pZmljYW50IGJlbmVmaXRzLCBzdWNoIGFzIGltcHJvdmVkIGdyb3d0aCwgYmV0dGVyIGx1bmcgZnVuY3Rpb24sIGFuZCBvdmVyYWxsIGVuaGFuY2VkIGhlYWx0aCBvdXRjb21lcyA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjY0XCIvPiAuIFRoZSBkaXNjb3Zlcnkgb2YgdGhlIENGVFIgZ2VuZSBoYXMgZnVydGhlciByZWZpbmVkIGRpYWdub3N0aWMgdGVjaG5pcXVlcyBhbmQgdW5kZXJzY29yZWQgdGhlIGNydWNpYWwgcm9sZSBvZiBuZXdib3JuIHNjcmVlbmluZyBpbiB0aGUgZWFybHkgZGV0ZWN0aW9uIGFuZCBtYW5hZ2VtZW50IG9mIENGLiA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlRlY2hub2xvZ2ljYWwgYWR2YW5jZW1lbnRzIGFuZCBpbXByb3ZlZCBtZWRpY2FsIHByb2NlZHVyZXMgaGF2ZSBncmVhdGx5IHRyYW5zZm9ybWVkIHRoZSBkaWFnbm9zaXMgb2YgQ3lzdGljIEZpYnJvc2lzLiBXaGlsZSBuZXdib3JuIHNjcmVlbmluZyBoYXMgcmV2b2x1dGlvbml6ZWQgZWFybHkgZGV0ZWN0aW9uIGFuZCB0cmVhdG1lbnQsIHRyYWRpdGlvbmFsIG1ldGhvZHMgc3VjaCBhcyB0aGUgc3dlYXQgdGVzdCBhbmQgc3ltcHRvbSBvYnNlcnZhdGlvbiBjb250aW51ZSB0byBwbGF5IGEgdml0YWwgcm9sZSwgcGFydGljdWxhcmx5IGluIHJlZ2lvbnMgd2hlcmUgc2NyZWVuaW5nIHByb2dyYW1zIGFyZSBub3QgeWV0IHdpZGVseSBhdmFpbGFibGUuPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvQ29sbGFwc2libGU+XHJcbiAgICAgICAgICAgICAgICAgICAgPHA+QW5vdGhlciB3aWRlbHkgdXNlZCBtZXRob2QgaXMgdGhlIHN3ZWF0IHRlc3QsIHdoaWNoIG1lYXN1cmVzIHRoZSBjb25jZW50cmF0aW9uIG9mIGNobG9yaWRlIGluIGEgcGVyc29uJ3Mgc3dlYXQuIENGIHBhdGllbnRzIHR5cGljYWxseSBoYXZlIGhpZ2hlci10aGFuLW5vcm1hbCBjaGxvcmlkZSBsZXZlbHMgZHVlIHRvIGRlZmVjdGl2ZSBDRlRSIHByb3RlaW4gZnVuY3Rpb24gPFN1cFNjcm9sbExpbmsgbGFiZWw9XCI2NVwiLz4gPFN1cFNjcm9sbExpbmsgbGFiZWw9XCI2NlwiLz4gLiBXaGlsZSB0aGUgc3dlYXQgdGVzdCBpcyBub24taW52YXNpdmUgYW5kIHJlbGlhYmxlIGZvciBpbmRpY2F0aW5nIENGLCBpdCBpcyBsaW1pdGVkIGluIHNjb3BlLiBGb3IgZGVmaW5pdGl2ZSBkaWFnbm9zaXMgYW5kIHRvIGd1aWRlIHNwZWNpZmljIHRyZWF0bWVudHMsIGEgZ2VuZXRpYyBhbmFseXNpcyBpcyB1c3VhbGx5IHJlcXVpcmVkIHRvIGlkZW50aWZ5IHRoZSBleGFjdCBDRlRSIG11dGF0aW9uLCBzdWNoIGFzIHRoZSBGNTA4ZGVsIG11dGF0aW9uIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiNjVcIi8+IDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiNjZcIi8+IC48L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgPENvbGxhcHNpYmxlIGlkPVwic3dlYXQtdGVzdC1jb2xsYXBzaWJsZVwiIHRpdGxlPVwiU3dlYXQgdGVzdFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5UcmFkaXRpb25hbGx5LCBDeXN0aWMgRmlicm9zaXMgKENGKSBoYXMgYmVlbiBkaWFnbm9zZWQgdXNpbmcgdGhlIHN3ZWF0IHRlc3QsIHdoaWNoIG1lYXN1cmVzIGNobG9yaWRlIGxldmVscyBpbiBzd2VhdC4gQSBjaGxvcmlkZSBsZXZlbCBiZWxvdyA0MCBtbW9sL0wgKG1pbGxpbW9sZXMgb2YgY2hsb3JpZGUgcGVyIGxpdHJlIG9mIHN3ZWF0KSBpcyBjb25zaWRlcmVkIG5vcm1hbCBhbmQgdW5saWtlbHkgdG8gaW5kaWNhdGUgQ0YuIExldmVscyBiZXR3ZWVuIDQwIGFuZCA2MCBtbW9sL0wgcmVxdWlyZSBmdXJ0aGVyIGludmVzdGlnYXRpb24sIHdoaWxlIGxldmVscyBhYm92ZSA2MCBtbW9sL0wgc3Ryb25nbHkgc3VnZ2VzdCB0aGUgcHJlc2VuY2Ugb2YgQ0YgPFN1cFNjcm9sbExpbmsgbGFiZWw9XCI2NVwiLz4gLjwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+VGhpcyBxdWljayBhbmQgcGFpbmxlc3MgdGVzdCBoYXMgYmVlbiB0aGUgZ29sZCBzdGFuZGFyZCBmb3IgQ0YgZGlhZ25vc2lzIGZvciBtYW55IHllYXJzLiBEZXNwaXRlIGl0cyBhY2N1cmFjeSwgdGhlIHN3ZWF0IHRlc3QgcmVxdWlyZXMgc3BlY2lhbGl6ZWQgbGFiIHBlcnNvbm5lbCBhbmQgY2FuIGJlIGRpZmZpY3VsdCB0byBwZXJmb3JtIG9uIG5ld2Jvcm5zLiBXaGlsZSBkaWFnbm9zaW5nIENGIGJhc2VkIG9uIHN5bXB0b21zIGNhbiBiZSB1c2VmdWwsIGl0IGlzIG5vdCBhbHdheXMgcmVsaWFibGUsIHBhcnRpY3VsYXJseSBpbiBtaWxkIG9yIGF0eXBpY2FsIGNhc2VzLjwvcD5cclxuICAgICAgICAgICAgICAgICAgICA8L0NvbGxhcHNpYmxlPlxyXG4gICAgICAgICAgICAgICAgPC9TdWJlc2N0aW9uPlxyXG4gICAgICAgICAgICAgICAgPFN1YmVzY3Rpb24gdGl0bGU9XCJUcmVhdG1lbnRcIiBpZD1cIkN5c3RpYyBGaWJyb3NpczZcIj5cclxuICAgICAgICAgICAgICAgICAgICA8cD5DdXJyZW50IEN5c3RpYyAgRmlicm9zaXMgdHJlYXRtZW50cyBmb2N1cyBvbiBtYW5hZ2luZyBzeW1wdG9tcywgc2xvd2luZyBkaXNlYXNlIHByb2dyZXNzaW9uLCBhbmQgaW1wcm92aW5nIHF1YWxpdHkgb2YgbGlmZSA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjY2XCIvPiAuIFNpbmNlIHRoZXJlIGlzIHN0aWxsIG5vIGN1cmUgZm9yIENGLCB0cmVhdG1lbnQgaXMgdHlwaWNhbGx5IGxpZmVsb25nIGFuZCBpbnZvbHZlcyBtdWx0aXBsZSBhcHByb2FjaGVzLCBpbmNsdWRpbmcgbWVkaWNhdGlvbnMsIHBoeXNpY2FsIHRoZXJhcHksIGFuZCBkaWV0YXJ5IGFkanVzdG1lbnRzIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiNjZcIi8+IDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiNjdcIi8+IC4gPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgIDxwPlRoZSBwcmltYXJ5IGdvYWwgb2YgQ0YgdHJlYXRtZW50IGlzIHRvIGNsZWFyIHRoZSB0aGljayBtdWN1cyBmcm9tIHRoZSBsdW5ncyB0byBwcmV2ZW50IGluZmVjdGlvbnMgYW5kIGltcHJvdmUgYnJlYXRoaW5nIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiNjhcIi8+IC4gQWlyd2F5IGNsZWFyYW5jZSB0ZWNobmlxdWVzLCBzdWNoIGFzIGNoZXN0IHBoeXNpb3RoZXJhcHksIGFyZSBvZnRlbiB1c2VkIGFsb25nc2lkZSBpbmhhbGVkIG1lZGljYXRpb25zLCBsaWtlIGJyb25jaG9kaWxhdG9ycyBhbmQgbXVjb2x5dGljcywgdG8gdGhpbiB0aGUgbXVjdXMgYW5kIG9wZW4gdGhlIGFpcndheXMgPFN1cFNjcm9sbExpbmsgbGFiZWw9XCI2OVwiLz4gPFN1cFNjcm9sbExpbmsgbGFiZWw9XCI3MFwiLz4gLiBBbnRpYmlvdGljcyBhcmUgZnJlcXVlbnRseSBwcmVzY3JpYmVkIHRvIHRyZWF0IG9yIHByZXZlbnQgbHVuZyBpbmZlY3Rpb25zIGNhdXNlZCBieSB0cmFwcGVkIGJhY3RlcmlhIGluIHRoZSBhaXJ3YXlzIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiNzFcIi8+IC48L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgPHA+T25lIG9mIHRoZSBtb3N0IHNpZ25pZmljYW50IGFkdmFuY2VzIGluIENGIHRyZWF0bWVudCBoYXMgYmVlbiB0aGUgZGV2ZWxvcG1lbnQgb2YgQ0ZUUiBtb2R1bGF0b3JzLCB3aGljaCB0YXJnZXQgdGhlIHVuZGVybHlpbmcgcHJvdGVpbiBkeXNmdW5jdGlvbiBjYXVzZWQgYnkgbXV0YXRpb25zIGluIHRoZSBDRlRSIGdlbmUgPFN1cFNjcm9sbExpbmsgbGFiZWw9XCI3MFwiLz4gPFN1cFNjcm9sbExpbmsgbGFiZWw9XCI3MlwiLz4gLiBUaGVzZSBkcnVncywgc3VjaCBhcyBpdmFjYWZ0b3IsIGx1bWFjYWZ0b3IsIGFuZCBlbGV4YWNhZnRvciwgd29yayBieSBpbXByb3ZpbmcgdGhlIGZ1bmN0aW9uIG9mIHRoZSBkZWZlY3RpdmUgQ0ZUUiBwcm90ZWluLCBwYXJ0aWN1bGFybHkgaW4gcGF0aWVudHMgd2l0aCBzcGVjaWZpYyBtdXRhdGlvbnMgbGlrZSBGNTA4ZGVsIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiMjNcIi8+IDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiMjRcIi8+IC4gV2hpbGUgQ0ZUUiBtb2R1bGF0b3JzIGNhbiBkcmFtYXRpY2FsbHkgaW1wcm92ZSBsdW5nIGZ1bmN0aW9uIGFuZCBvdmVyYWxsIGhlYWx0aCBpbiBtYW55IHBhdGllbnRzLCB0aGV5IGFyZSBub3QgZWZmZWN0aXZlIGZvciBhbGwgQ0ZUUiBtdXRhdGlvbnMgYW5kIG9mdGVuIGFyZSB2ZXJ5IGV4cGVuc2l2ZSA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjczXCIvPiAuPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgIDxwPkRpZ2VzdGl2ZSBlbnp5bWUgc3VwcGxlbWVudHMgYXJlIGVzc2VudGlhbCBmb3IgQ0YgcGF0aWVudHMgd2hvIHN1ZmZlciBmcm9tIHBhbmNyZWF0aWMgaW5zdWZmaWNpZW5jeSwgaGVscGluZyB0aGVtIHRvIGFic29yYiBudXRyaWVudHMgZnJvbSBmb29kIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiNjhcIi8+IC4gQWRkaXRpb25hbGx5LCBoaWdoLWNhbG9yaWUgZGlldHMgYW5kIHZpdGFtaW5zIGFyZSByZWNvbW1lbmRlZCB0byBzdXBwb3J0IGdyb3d0aCBhbmQgbWFpbnRhaW4gYm9keSB3ZWlnaHQgPFN1cFNjcm9sbExpbmsgbGFiZWw9XCI2OFwiLz4gLjwvcD5cclxuICAgICAgICAgICAgICAgICAgICA8cD5BbHRob3VnaCBjdXJyZW50IHRyZWF0bWVudHMgY2FuIHNpZ25pZmljYW50bHkgaW1wcm92ZSBxdWFsaXR5IG9mIGxpZmUgYW5kIGxpZmUgZXhwZWN0YW5jeSwgbWFuYWdpbmcgQ0YgcmVtYWlucyBhIGRhaWx5IGNoYWxsZW5nZSBmb3IgcGF0aWVudHMgPFN1cFNjcm9sbExpbmsgbGFiZWw9XCI3MFwiLz4gLiBDb250aW51ZWQgcmVzZWFyY2ggaW50byBnZW5lIHRoZXJhcHkgYW5kIG90aGVyIGlubm92YXRpdmUgdHJlYXRtZW50cyBvZmZlcnMgaG9wZSBmb3IgbW9yZSBwZXJtYW5lbnQgc29sdXRpb25zIGluIHRoZSBmdXR1cmUgPFN1cFNjcm9sbExpbmsgbGFiZWw9XCI3M1wiLz4gLjwvcD5cclxuICAgICAgICAgICAgICAgICAgICA8Q29sbGFwc2libGUgaWQ9XCJkcnVncy1jb2xsYXBzaWJsZVwiIHRpdGxlPVwiRGlmZmVyZW50IHR5cGVzIG9mIGRydWdzXCIgPlxyXG4gICAgICAgICAgICAgICAgICAgIDxUYWJCdXR0b25Sb3cgZGF0YT17bWVkaWJ1dHRvbnJvd2RhdGF9IG9wZW50eXBlPVwic3ltcHRhYnNcIiBjbG9zaW5nPVwiXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgIDxCdXR0b25Sb3dUYWJzIGRhdGE9e21lZGlidXR0b25yb3dkYXRhfSBjbGE9XCJzeW1wdGFic1wiLz5cclxuICAgICAgICAgICAgICAgICAgICA8L0NvbGxhcHNpYmxlPlxyXG4gICAgICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiQ0YgdHJlYXRtZW50IHdpdGggZ2VuZSB0aGVyYXB5XCI+PC9IND5cclxuICAgICAgICAgICAgICAgICAgICA8cD5XaGlsZSBtZW50aW9uZWQgbWVkaWNhdGlvbnMgaGF2ZSBpbXByb3ZlZCB0aGUgcXVhbGl0eSBvZiBsaWZlIGZvciBudW1lcm91cyBDRiBwYXRpZW50cywgdGhleSBvbmx5IG1hbmFnZSBzeW1wdG9tcyByYXRoZXIgdGhhbiBjdXJlIHRoZSBkaXNlYXNlLiBNb3Jlb3ZlciwgbW9zdCBvZiB0aGVtIGFyZSBleHBlbnNpdmUgYW5kIG5vdCB3b3JsZC13aWRlIGFjY2Vzc2libGUuIE91ciByZXNlYXJjaCBpcyBmb2N1c2VkIG9uIHRoZSBkZXZlbG9wbWVudCBvZiBhIGdlbmUgdGhlcmFweSB0aGF0IHRhcmdldHMgdGhlIHVuZGVybHlpbmcgY2F1c2Ugb2YgQ0YgYnkgY29ycmVjdGluZyB0aGUgZGVmZWN0aXZlIENGVFIgZ2VuZS4gPFByZUN5c2UvPiBhaW1zIHRvIGhhbHQgZGlzZWFzZSBwcm9ncmVzc2lvbiBhbmQgcmVkdWNlIHRoZSB0cmVhdG1lbnQgYnVyZGVuIGZvciBwYXRpZW50cy48L3A+XHJcbiAgICAgICAgICAgICAgICA8L1N1YmVzY3Rpb24+XHJcbiAgICAgICAgICAgIDwvU2VjdGlvbj5cclxuICAgICAgICAgICAgPFNlY3Rpb24gdGl0bGU9XCJPdXIgQXBwcm9hY2hcIiBpZD1cIkFwcHJvYWNoXCI+XHJcbiAgICAgICAgICAgICAgICA8U3ViZXNjdGlvbiB0aXRsZT1cIk1lY2hhbmlzbVwiIGlkPVwiQXBwcm9hY2gxXCI+XHJcbiAgICAgICAgICAgICAgICA8cD5UaGUgZGV2ZWxvcG1lbnQgb2YgYW4gaW1wcm92ZWQgUHJpbWUgRWRpdGluZyBjb21wbGV4IGhvbGRzIGdyZWF0IHByb21pc2UgZm9yIGFkdmFuY2luZyBnZW5lIGVkaXRpbmcgdGVjaG5vbG9naWVzLiBPdXIgZW5oYW5jZWQgc3lzdGVtLCBQcmltZSBHdWlkZSwgYWRkcmVzc2VzIGtleSBsaW1pdGF0aW9ucyBvZiBjb252ZW50aW9uYWwgUHJpbWUgRWRpdGluZyBieSBmb2N1c2luZyBvbiBmb3VyIG1haW4gYXJlYXM6IGVkaXRpbmcgZWZmaWNpZW5jeSwgcHJlY2lzaW9uLCBzaXplLCBhbmQgc2FmZXR5LiBQcmltZSBHdWlkZSBoYXMgYmVlbiBkZXNpZ25lZCB0byB0YXJnZXQgdGhlIEY1MDhkZWwgbXV0YXRpb24gaW4gQ3lzdGljIEZpYnJvc2lzIHdpdGggaGlnaCBhY2N1cmFjeSwgd2hpbGUgbWluaW1pemluZyBvZmYtdGFyZ2V0IGVmZmVjdHMuIEJ5IG9wdGltaXppbmcgdGhlIHBlZ1JOQSwgcmV2ZXJzZSB0cmFuc2NyaXB0YXNlLCBhbmQgbmlja2FzZSBjb21wb25lbnRzLCB3ZSBhaW0gdG8gZGVsaXZlciBwcmVjaXNlIGFuZCBlZmZpY2llbnQgZ2VuZXRpYyBtb2RpZmljYXRpb25zLjwvcD5cclxuICAgICAgICAgICAgICAgIDxJbmZvQm94IHRpdGxlPVwiUHJpbWUgRWRpdGluZ1wiIGlkPVwicHJpbWUtZWRpdGluZ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkZXRhaWxzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3VtbWFyeT5QcmltZSBlZGl0aW5nIGlzIGEgbmV3IG1ldGhvZCBvZiBnZW5lIGVkaXRpbmcgYmFzZWQgb24gYW4gUk5BLVByb3RlaW4gY29tcGxleC4gSXQgd2FzIGRldmVsb3BlZCBieSBhIGdyb3VwIG9mIHJlc2VhcmNoZXJzIHJldm9sdmluZyBhcm91bmQgUHJvZmVzc29yIERhdmlkIExpdSBmcm9tIEhhcnZhcmQgVW5pdmVyc2l0eSBpbiAyMDE5LjxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiMTVcIi8+IDwvc3VtbWFyeT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+PC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD48Yj5Ib3cgZG9lcyBQcmltZSBFZGl0aW5nIHdvcms/PC9iPjwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+UHJpbWUgRWRpdGluZyBidWlsZHMgb24gdGhlIHdlbGwta25vd24gQ1JJU1BSIHRlY2hub2xvZ3ksIG9mZmVyaW5nIGEgbW9yZSBwcmVjaXNlIGFuZCBjb250cm9sbGVkIGFwcHJvYWNoIHRvIEROQSBtb2RpZmljYXRpb24uIFRyYWRpdGlvbmFsIENSSVNQUi1DYXM5IG1ldGhvZHMgdHlwaWNhbGx5IGludm9sdmUgY3JlYXRpbmcgZG91YmxlLXN0cmFuZCBicmVha3MgaW4gRE5BLCB3aGljaCBjYW4gYmUgcmVwYWlyZWQgYnkgdGhlIGNlbGwgaW4gd2F5cyB0aGF0IG1pZ2h0IGludHJvZHVjZSB1bmludGVuZGVkIG11dGF0aW9ucy4gUHJpbWUgRWRpdGluZywgYnkgY29udHJhc3QsIGNpcmN1bXZlbnRzIHRoaXMgaXNzdWUgYnkgdXNpbmcgYSBtb3JlIHJlZmluZWQgbWV0aG9kIHRoYXQgYXZvaWRzIGRvdWJsZSBzdHJhbmQgYnJlYWtzIGFsdG9nZXRoZXIgPFN1cFNjcm9sbExpbmsgbGFiZWw9XCI5MVwiLz4gLjwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+QXQgdGhlIGhlYXJ0IG9mIFByaW1lIEVkaXRpbmcgaXMgYSBmdXNpb24gcHJvdGVpbiwgd2hpY2ggY29tYmluZXMgdHdvIGtleSBjb21wb25lbnRzOiBhIG1vZGlmaWVkIENhczkgZW56eW1lLCBrbm93biBhcyBhIFwibmlja2FzZSxcIiBhbmQgYSByZXZlcnNlIHRyYW5zY3JpcHRhc2UgZW56eW1lLiBUaGUgbmlja2FzZSBpcyByZXNwb25zaWJsZSBmb3IgbWFraW5nIGEgc2luZ2xlIHN0cmFuZCBjdXQgaW4gdGhlIEROQSwgdW5saWtlIHRoZSB0cmFkaXRpb25hbCBDYXM5LCB3aGljaCBjdXRzIGJvdGggc3RyYW5kcy4gVGhpcyBzaW5nbGUgc3RyYW5kIGN1dCBtaW5pbWl6ZXMgdGhlIHJpc2sgb2YgdW5pbnRlbmRlZCBtdXRhdGlvbnMgb3IgbGFyZ2Utc2NhbGUgRE5BIGRhbWFnZS4gVGhlIHJldmVyc2UgdHJhbnNjcmlwdGFzZSBhdHRhY2hlZCB0byB0aGUgbmlja2FzZSB0aGVuIG1vZGlmaWVzIHRoZSBETkEgYXQgdGhlIHRhcmdldGVkIHNpdGUgYnkgaW5jb3Jwb3JhdGluZyBuZXcgZ2VuZXRpYyBpbmZvcm1hdGlvbi48L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlRvIGd1aWRlIHRoaXMgcHJvY2VzcywgUHJpbWUgRWRpdGluZyB1c2VzIGEgc3BlY2lhbGl6ZWQgUk5BIG1vbGVjdWxlIGtub3duIGFzIHByaW1lIGVkaXRpbmcgZ3VpZGUgUk5BIChwZWdSTkEpLiBUaGlzIHBlZ1JOQSBzZXJ2ZXMgdHdvIGZ1bmN0aW9uczogaXQgZGlyZWN0cyB0aGUgQ2FzOSBuaWNrYXNlIHRvIHRoZSBzcGVjaWZpYyBsb2NhdGlvbiBvbiB0aGUgZ2Vub21lLCBhbmQgaXQgY2FycmllcyBhIHRlbXBsYXRlIGZvciB0aGUgZGVzaXJlZCBETkEgbW9kaWZpY2F0aW9uLiBOb3csIGxldFx1MjAxOXMgZ28gdGhyb3VnaCB0aGUgcHJvY2VzcyBpbiBtb3JlIGRldGFpbCwgcmVmZXJlbmNpbmcgdGhlIGltYWdlIGFib3ZlLjwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPG9sPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxiPkROQSBOaWNraW5nPC9iPjogSW4gdGhlIGZpcnN0IHN0ZXAgKHRvcCBsZWZ0IGluIHRoZSBpbWFnZSksIHRoZSBDYXM5IG5pY2thc2UsIGd1aWRlZCBieSB0aGUgcGVnUk5BLCBiaW5kcyB0byB0aGUgdGFyZ2V0IGdlbm9taWMgRE5BIGFuZCBjcmVhdGVzIGEgc2luZ2xlLXN0cmFuZCBicmVhaywgb3IgXCJuaWNrLFwiIGF0IHRoZSBwcmVjaXNlIGxvY2F0aW9uLiBUaGlzIGlzIGEga2V5IGRpZmZlcmVuY2UgZnJvbSBzdGFuZGFyZCBDUklTUFIsIHdoZXJlIGJvdGggRE5BIHN0cmFuZHMgYXJlIGN1dCwgaW5jcmVhc2luZyB0aGUgcmlzayBvZiB1bndhbnRlZCBtdXRhdGlvbnMuPC9saT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48Yj5QcmltZXIgQmluZGluZyBhbmQgUmV2ZXJzZSBUcmFuc2NyaXB0aW9uPC9iPjogT25jZSB0aGUgRE5BIGlzIG5pY2tlZCwgdGhlIHByaW1lciBiaW5kaW5nIHNpdGUgKFBCUykgb24gdGhlIHBlZ1JOQSBoeWJyaWRpemVzIHdpdGggdGhlIGV4cG9zZWQgc2luZ2xlLXN0cmFuZGVkIEROQSwgYXMgc2hvd24gaW4gdGhlIG1pZGRsZSBvZiB0aGUgaW1hZ2UuIFRoaXMgYWxpZ25tZW50IGFsbG93cyB0aGUgcmV2ZXJzZSB0cmFuc2NyaXB0YXNlIChSVCkgZW56eW1lLCBhbHNvIGZ1c2VkIHRvIHRoZSBuaWNrYXNlLCB0byBiZWdpbiBjb3B5aW5nIHRoZSBlZGl0IGludG8gdGhlIHRhcmdldCBETkEuIFRoZSByZXZlcnNlIHRyYW5zY3JpcHRhc2UgdXNlcyB0aGUgdGVtcGxhdGUgZW5jb2RlZCB3aXRoaW4gdGhlIHBlZ1JOQSB0byBjcmVhdGUgYSBjb21wbGVtZW50YXJ5IEROQSBzZXF1ZW5jZSAoZGVwaWN0ZWQgYXMgdGhlIG5ldyBzZXF1ZW5jZSBpbiB0aGUgaW1hZ2UpLCBlbnN1cmluZyB0aGUgY29ycmVjdGVkIGdlbmV0aWMgc2VxdWVuY2UgaXMgYWNjdXJhdGVseSBpbnNlcnRlZCBpbnRvIHRoZSBnZW5vbWUuPC9saT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48Yj5GbGFwIEZvcm1hdGlvbiBhbmQgRXF1aWxpYnJhdGlvbjwvYj46IFRoZSBwcm9jZXNzIGNvbnRpbnVlcyBhcyB0aGUgcmV2ZXJzZSB0cmFuc2NyaXB0YXNlIGNvcGllcyB0aGUgbmV3IGdlbmV0aWMgc2VxdWVuY2UgaW50byB0aGUgRE5BIHN0cmFuZCwgY3JlYXRpbmcgd2hhdCBpcyBjYWxsZWQgYSBcIjMnIGZsYXBcIiAoYXMgc2hvd24gaW4gdGhlIGJvdHRvbSBwYXJ0IG9mIHRoZSBpbWFnZSkuIFRoaXMgZmxhcCBjb250YWlucyB0aGUgbmV3bHkgZWRpdGVkIHNlcXVlbmNlLiBBdCB0aGlzIHBvaW50LCB0aGVyZSBpcyBhbiBlcXVpbGlicmF0aW9uIGJldHdlZW4gdGhlIG5ldyBmbGFwICh3aGljaCBlbmNvZGVzIHRoZSBpbnRlbmRlZCBlZGl0KSBhbmQgdGhlIHVuZWRpdGVkIDUnIGZsYXAsIHdoaWNoIHN0aWxsIGNvbnRhaW5zIHRoZSBvcmlnaW5hbCwgdW5tb2RpZmllZCBETkEgc2VxdWVuY2UuIFRoZSBjZWxsJ3MgbmF0dXJhbCBtZWNoYW5pc21zIHR5cGljYWxseSBkZWdyYWRlIHRoZSB1bmVkaXRlZCA1JyBmbGFwLCBmYXZvcmluZyB0aGUgaW50ZWdyYXRpb24gb2YgdGhlIDMnIGZsYXAgZW5jb2RpbmcgdGhlIGVkaXQuPC9saT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48Yj5GbGFwIFJlc29sdXRpb24gYW5kIEZpbmFsIEVkaXRpbmc8L2I+OiBJbiBzb21lIGNhc2VzLCBhbiBhZGRpdGlvbmFsIG5pY2sgKHNlZW4gaW4gdGhlIFBFMy9QRTUgc3lzdGVtcyBpbiB0aGUgaW1hZ2UpIGlzIGludHJvZHVjZWQgaW4gdGhlIG5vbi10YXJnZXQgRE5BIHN0cmFuZCB0byBwcm9tb3RlIHJlcGFpciBhbmQgZmF2b3IgdGhlIGluY29ycG9yYXRpb24gb2YgdGhlIGVkaXQuIFRoaXMgc3RlcCBpbmNyZWFzZXMgdGhlIGVmZmljaWVuY3kgb2YgUHJpbWUgRWRpdGluZyBieSBlbnN1cmluZyB0aGF0IHRoZSBuZXdseSBlZGl0ZWQgc3RyYW5kIGlzIHByZWZlcmVudGlhbGx5IHVzZWQgZHVyaW5nIHRoZSBjZWxsJ3MgRE5BIHJlcGFpciBwcm9jZXNzLiBUaGUgbWlzbWF0Y2ggcmVwYWlyIChNTVIpIHN5c3RlbSBvZiB0aGUgY2VsbCBhbHNvIHBsYXlzIGEgcm9sZSBpbiBkZXRlcm1pbmluZyB3aGV0aGVyIHRoZSBlZGl0IGlzIHJldGFpbmVkIG9yIHJldmVydGVkIHRvIHRoZSBvcmlnaW5hbCBzZXF1ZW5jZS4gRm9yIHN5c3RlbXMgbGlrZSBQRTQgYW5kIFBFNSwgaW5oaWJpdGlvbiBvZiB0aGUgbWlzbWF0Y2ggcmVwYWlyIHN5c3RlbSAoZS5nLiwgYnkgTUxIMWRuKSBmdXJ0aGVyIHByb21vdGVzIHRoZSBpbnRlZ3JhdGlvbiBvZiB0aGUgZGVzaXJlZCBlZGl0LjwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGI+RmluYWwgb3V0Y29tZTwvYj46IE9uY2UgdGhlIHVuZWRpdGVkIGZsYXAgaXMgZGVncmFkZWQgYW5kIHRoZSBuZXcgc2VxdWVuY2UgaXMgaW50ZWdyYXRlZCwgdGhlIGNlbGwgY29tcGxldGVzIHRoZSByZXBhaXIsIGFuZCB0aGUgZWRpdCBiZWNvbWVzIHBlcm1hbmVudGx5IGluY29ycG9yYXRlZCBpbnRvIHRoZSBETkEuIEFzIHNob3duIGluIHRoZSBkaWFncmFtLCB0aGUgcmVzdWx0IGlzIGEgc3VjY2Vzc2Z1bCBnZW5ldGljIG1vZGlmaWNhdGlvbiwgd2hlcmUgdGhlIG5ldywgY29ycmVjdGVkIHNlcXVlbmNlIHJlcGxhY2VzIHRoZSBvcmlnaW5hbCBmYXVsdHkgc2VxdWVuY2UuPC9saT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9vbD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgey8qIFRoaXMgZmlndXJlIGhhcyB0byBzdGF5IHRoaXMgd2F5ICovfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZmlndXJlPiBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3NOYW1lPVwiZ2lmLXdyYXBwZXJcIiBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9wcm9qZWN0LWRlc2NyaXB0aW9uL3ByaW1lLWVkaXRpbmctYW5pbWF0aW9uLTEwZnBzLmdpZlwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmaWdjYXB0aW9uPiBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Yj5BbmltYXRpb24gMi4gPC9iPiBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJbGx1c3RyYXRpb24gb2YgdGhlIFByaW1lIEVkaXRpbmcgcHJvY2VzcyBhbmQgaXRzIHBvc3NpYmxlIG91dGNvbWVzLlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9maWdjYXB0aW9uPiBcclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9maWd1cmU+IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5PdmVyYWxsLCB0aGVyZSBhcmUgbWFueSBkaWZmZXJlbnQgUHJpbWUgRWRpdGluZyBzeXN0ZW1zIHdpdGggYSB2YXJpZXR5IG9mIGNvbXBvbmVudHMgYW5kIGNvbXBsZXhpdHksIHN0YXJ0aW5nIGZyb20gUEUyIHVwIHRvIFBFNy4gUG9zc2libGUgZWRpdHMgY291bGQgaW50ZWdyYXRlIHN1YnN0aXR1dGlvbnMsIGluc2VydHMgYW5kIGRlbGV0aW9ucyBpbiB0aGUgcmFuZ2Ugb2Ygb25lIGJhc2UgdXAgdG8gaHVuZHJlZHMgb2YgbnVjbGVvdGlkZXMsIHdpdGggZ3JhZHVhbGx5IGRlY3JlYXNpbmcgZWRpdGluZyBlZmZpY2llbmN5LiBUaGVyZWZvcmUgUHJpbWUgRWRpdGluZyB0ZWNobm9sb2d5IGFsbG93cyB0YXJnZXRlZCBtb2RpZmljYXRpb25zIG9mIHNwZWNpZmljIGdlbmVzLiA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kZXRhaWxzPlxyXG4gICAgICAgICAgICAgICAgPC9JbmZvQm94PiBcclxuICAgICAgICAgICAgICAgIDxwPkhvd2V2ZXIsIHRoZSBQcmltZSBFZGl0aW5nIGNvbXBsZXggaXMgcmVsYXRpdmVseSBsYXJnZSwgcG9zaW5nIGNoYWxsZW5nZXMgZm9yIHRoZXJhcGV1dGljIGRlbGl2ZXJ5PFN1cFNjcm9sbExpbmsgbGFiZWw9XCIzXCIvPi4gQWRkaXRpb25hbGx5LCBQcmltZSBFZGl0aW5nIGhhcyBiZWVuIHNob3duIHRvIGJlIHJlbGF0aXZlbHkgaW5lZmZpY2llbnQgaW4gdGVybXMgb2YgZ2VuZSBlZGl0aW5nIHJhdGVzLCB3aGljaCBjb3VsZCBsaW1pdCBpdHMgdGhlcmFwZXV0aWMgdXRpbGl0eTxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiNFwiLz4uIE91ciBwcm9qZWN0IGFpbXMgdG8gZW5oYW5jZSB0aGUgUHJpbWUgRWRpdGluZyBhcHByb2FjaCBieSBtaW5pYXR1cml6aW5nIGl0cyBjb21wb25lbnRzIGFuZCBlbmhhbmNpbmcgaXRzIGVmZmljaWVuY3ksIGFzIHdlbGwgYXMgcHJlY2lzaW9uLiA8L3A+XHJcbiAgICAgICAgICAgICAgICA8cD5BcyBzaG93biBpbiB0aGUgaW1hZ2UsIHdlIGRldmVsb3BlZCB0d28gcG90ZW50aWFsIGNvbmZpZ3VyYXRpb25zIGZvciBQcmltZSBHdWlkZSwgZWFjaCB1c2luZyBhIGRpZmZlcmVudCBuaWNrYXNlOiBvbmUgYmFzZWQgb24gdGhlIEZhbnpvciAoblNwdUZ6MSkgbmlja2FzZSBhbmQgdGhlIG90aGVyIG9uIGEgQ2FzWCAoblBsbUNhc1gpIG5pY2thc2UuIEJvdGggY29uZmlndXJhdGlvbnMgYXJlIGRlc2lnbmVkIHRvIGltcHJvdmUgdGhlIHByZWNpc2lvbiBhbmQgc3RhYmlsaXR5IG9mIHRoZSBQcmltZSBFZGl0aW5nIHN5c3RlbS4gVGhlIHBlZ1JOQSBzY2FmZm9sZCwgcmV2ZXJzZSB0cmFuc2NyaXB0YXNlIChQRTZjKSwgYW5kIHByaW1lciBiaW5kaW5nIHNpdGUgKFBCUy9SVFQpIHdvcmsgdG9nZXRoZXIgaW4gYm90aCBzeXN0ZW1zIHRvIGludHJvZHVjZSBwcmVjaXNlIGVkaXRzLCB3aXRoIHRoZSBMYSgxLTE5MykgZW5oYW5jaW5nIHN0YWJpbGl0eSBhbmQgZnVuY3Rpb24uPC9wPlxyXG4gICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZmlndXJlLXdyYXBwZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZmlndXJlPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3dcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBjbGFzc05hbWU9XCJpbWdcIiBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9wcm9qZWN0LWRlc2NyaXB0aW9uL3ByaW1lZ3VpZGUucG5nXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+PFByaW1lRWRpdGluZ0NvbXBsZXgvPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZmlnY2FwdGlvbj4gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGI+RmlndXJlIDQuIDwvYj4gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSWxsdXN0cmF0aW9uIG9mIG91ciBuZXdseSBkZXNpZ25lZCBQcmltZSBFZGl0b3JzLCBcIlByaW1lR3VpZGVcIi4gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2ZpZ2NhcHRpb24+IFxyXG4gICAgICAgICAgICAgICAgPC9maWd1cmU+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxwPlRvIGRldmVsb3Agb3VyIGlubm92YXRpdmUgUHJpbWUgRWRpdGluZyBzeXN0ZW0sIFByaW1lIEd1aWRlLCB3ZSB3b3JrZWQgY2xvc2VseSB3aXRoIHNldmVyYWwgbGVhZGluZyBleHBlcnRzIGluIHRoZSBmaWVsZC4gQW1vbmcgdGhlbSB3ZXJlIE1hdHRpanMgQnVsY2FlbiwgTWFrYXRvIFNhaXRvLCBEci4gSGFtbWVyLCBKYW4tUGhpbGxpcHAgR2VyaGFyZCBhbmQgUHJvZi4gS3Jpc3RpYW4gTVx1MDBGQ2xsZXIsIHdob3NlIGluc2lnaHRzIGhlbHBlZCBndWlkZSBvdXIgZGVjaXNpb25zLiBQcmltZSBHdWlkZSBpcyBhIGhpZ2hseSBzcGVjaWFsaXplZCBQcmltZSBFZGl0aW5nIGNvbXBsZXgsIGRlc2lnbmVkIHRvIHRhcmdldCB0aGUgRjUwOGRlbCBtdXRhdGlvbiBpbiBDeXN0aWMgRmlicm9zaXMgd2l0aCBwcmVjaXNpb24gYW5kIGVmZmljaWVuY3kuIDwvcD5cclxuICAgICAgICAgICAgICAgIDxwPk91ciBQcmltZSBHdWlkZSBzeXN0ZW0gY29uc2lzdHMgb2YgY2FyZWZ1bGx5IHNlbGVjdGVkIGNvbXBvbmVudHMsIGVhY2ggb3B0aW1pemVkIGZvciBpdHMgcm9sZS4gRm9yIHRoZSBuaWNrYXNlLCB3ZSBjaG9zZSBiZXR3ZWVuIFNwdUZ6MSBhbmQgQ2FzWCBuaWNrYXNlcyBkdWUgdG8gdGhlaXIgc21hbGxlciBzaXplIGFuZCBzdHJ1Y3R1cmFsIGFkdmFudGFnZXMsIHdoaWNoIHN1Z2dlc3QgaW5jcmVhc2VkIHN0YWJpbGl0eSBmb3IgdGhlIHBlZ1JOQSB3aXRoaW4gdGhlIFByaW1lIEVkaXRpbmcgY29tcGxleC4gU21hbGxlciBuaWNrYXNlcyBhbHNvIHByb3ZpZGUgYmVuZWZpdHMgaW4gdGVybXMgb2Ygb3ZlcmFsbCBlZmZpY2llbmN5IGFuZCBlYXNlIG9mIGRlbGl2ZXJ5LCBhbGlnbmluZyB3aXRoIHRoZSBjb21wYWN0IGRlc2lnbiB3ZSBhaW1lZCBmb3IuPC9wPlxyXG4gICAgICAgICAgICAgICAgPENvbGxhcHNpYmxlIGlkPVwiZmFuem9yY2FzLWNvbGxhcHNpYmxlXCIgdGl0bGU9XCJBZHZhbnRhZ2VzIG9mIEZhbnpvci9QbG1DYXNYIG92ZXIgQ2FzOVwiPiBcclxuICAgICAgICAgICAgICAgICAgICA8cD5Gcm9tIHRoZSBzdGFydCBvZiBvdXIgcHJvamVjdCB3ZSBoYXZlIGJlZW4gZXhhbWluaW5nIHRoZSBlc3RhYmxpc2hlZCBQcmltZSBFZGl0aW5nIGNvbXBsZXgsIGtub3duIGZvciBpdHMgZWZmZWN0aXZlbmVzcyBidXQgYWxzbyBmb3Igc2V2ZXJhbCBsaW1pdGF0aW9ucywgaW5jbHVkaW5nIGl0cyByZWxhdGl2ZWx5IGxhcmdlIHNpemUgYW5kIHN0cnVjdHVyYWwgdnVsbmVyYWJpbGl0aWVzLiBBIGtleSBjb21wb25lbnQgb2YgdGhpcyBjb21wbGV4IGlzIHRoZSBDYXM5IG5pY2thc2UsIGFuIGVuenltZSB0aGF0IHNlbGVjdGl2ZWx5IGN1dHMgb25lIG9mIHRoZSB0d28gRE5BIHN0cmFuZHMgYXQgYSBwcmVjaXNlIGxvY2F0aW9uLiBUaGlzIG5pY2thc2Ugd2FzIG9yaWdpbmFsbHkgZW5naW5lZXJlZCBieSBpbnRyb2R1Y2luZyBtdXRhdGlvbnMgaW50byB0aGUgQ2FzOSBlbmRvbnVjbGVhc2UsIHdoaWNoIHR5cGljYWxseSBjdXRzIGJvdGggRE5BIHN0cmFuZHMuIEJ5IGRpc2FibGluZyBvbmUgb2YgdGhlIHR3byBhY3RpdmUgc2l0ZXMsIHRoZSBDYXM5IG5pY2thc2Ugd2FzIGRlc2lnbmVkIHRvIG5pY2sgb25seSBvbmUgc3RyYW5kLCBhIGZ1bmN0aW9uIGVzc2VudGlhbCB0byB0aGUgc3VjY2VzcyBvZiB0aGUgUHJpbWUgRWRpdGluZyBwcm9jZXNzIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiOTJcIi8+IC4gPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgIDxwPk91ciBhaW0gd2FzIHRvIGltcHJvdmUgdGhlIFByaW1lIEVkaXRpbmcgY29tcGxleCwgbm90IG9ubHkgYnkgcmVkdWNpbmcgaXRzIHNpemUgYnV0IGFsc28gYnkgZW5oYW5jaW5nIGl0cyBzdGFiaWxpdHkuIFRvIGFjaGlldmUgdGhpcywgd2Ugc291Z2h0IGFsdGVybmF0aXZlIGVuZG9udWNsZWFzZXMgdGhhdCBhcmUgc21hbGxlciBhbmQgcG9zc2VzcyBvdGhlciBkZXNpcmFibGUgcHJvcGVydGllcy4gT3VyIHN0cmF0ZWd5IGludm9sdmVkIGlkZW50aWZ5aW5nIGVuZG9udWNsZWFzZXMgd2l0aCBzdWl0YWJsZSBjaGFyYWN0ZXJpc3RpY3MgYW5kIHRoZW4gZGV2ZWxvcGluZyBtZXRob2RzIHRvIG11dGF0ZSB0aGVtIGludG8gbmlja2FzZXMsIGFsbG93aW5nIHRoZW0gdG8gc2VsZWN0aXZlbHkgY3V0IGEgc2luZ2xlIEROQSBzdHJhbmQuIENhc1ggYW5kIEZhbnpvciBlbWVyZ2VkIGFzIHByb21pc2luZyBjYW5kaWRhdGVzLCBvZmZlcmluZyBzdHJ1Y3R1cmFsIGFkdmFudGFnZXMgYmV5b25kIHRoZWlyIHNtYWxsZXIgc2l6ZS4gPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgIDxwPkluIENhczktYmFzZWQgc3lzdGVtcywgdGhlIHNwYWNlciByZWdpb24gb2YgdGhlIGd1aWRlIFJOQSAoZ1JOQSlcdTIwMTR0aGUgcGFydCB0aGF0IGJpbmRzIHRvIHRoZSB0YXJnZXQgRE5BXHUyMDE0aXMgbG9jYXRlZCBhdCB0aGUgNScgZW5kIG9mIHRoZSBSTkEtcHJvdGVpbiBjb21wbGV4LiBIb3dldmVyLCBpbiBDYXNYIGFuZCBGYW56b3IsIHRoZSBzcGFjZXIgaXMgcG9zaXRpb25lZCBhdCB0aGUgMycgZW5kPFN1cFNjcm9sbExpbmsgbGFiZWw9XCI5M1wiLz4gIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiOTRcIi8+IC4gVGhpcyByZXZlcnNhbCBvZmZlcnMgc2V2ZXJhbCBiZW5lZml0czogdGhlIDMnIGVuZCBvZiB0aGUgUk5BIGlzIHR5cGljYWxseSBtb3JlIHN1c2NlcHRpYmxlIHRvIGRlZ3JhZGF0aW9uIGJ5IFJOYXNlcywgd2hpY2ggY2FuIGNvbXByb21pc2UgdGhlIHN0YWJpbGl0eSBhbmQgZWZmZWN0aXZlbmVzcyBvZiB0aGUgUHJpbWUgRWRpdGluZyBjb21wbGV4LiBJbiBDYXNYIGFuZCBGYW56b3IsIGhvd2V2ZXIsIHRoZSAzXHUyMDE5IHRlcm1pbnVzIGlzIHBvc2l0aW9uZWQgYXQgdGhlIHNwYWNlciBlbmNsb3NlZCBieSB0aGUgcHJvdGVpbiwgcG90ZW50aWFsbHkgcHJvdGVjdGluZyBmcm9tIFJOYXNlIGRlZ3JhZGF0aW9uLiAgPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgIDxwPkFkZGl0aW9uYWxseSwgdGhpcyByZXZlcnNlZCBhcmNoaXRlY3R1cmUgYWx0ZXJzIHRoZSBwb3NpdGlvbmluZyBvZiB0aGUgcmV2ZXJzZSB0cmFuc2NyaXB0aW9uIHRlbXBsYXRlIChSVFQpIGFuZCBwcmltZXIgYmluZGluZyBzaXRlIChQQlMpIG9uIHRoZSBwZWdSTkEuIEluIENhczktYmFzZWQgc3lzdGVtcywgdGhlIFJUVCBpcyBsb2NhdGVkIGF0IHRoZSAzJyBlbmQgb2YgdGhlIHBlZ1JOQSwgd2hpY2ggbGVhdmVzIGl0IG1vcmUgZXhwb3NlZCBhbmQgaW5jcmVhc2VzIHRoZSByaXNrIG9mIHJldmVyc2UgdHJhbnNjcmlwdGlvbiBjb250aW51aW5nIHBhc3QgdGhlIGludGVuZGVkIHN0b3AgcG9pbnQuIFRoaXMgXCJzY2FmZm9sZCByZWFkLXRocm91Z2hcIiBlZmZlY3QgY2FuIHJlc3VsdCBpbiB0aGUgc3ludGhlc2lzIG9mIHVuaW50ZW5kZWQgRE5BIHNlcXVlbmNlcywgbGVhZGluZyB0byB1bmRlc2lyZWQgbXV0YXRpb25zIG9yIGdlbm9taWMgYWx0ZXJhdGlvbnMgYXQgdGhlIHRhcmdldCBzaXRlPFN1cFNjcm9sbExpbmsgbGFiZWw9XCI5NVwiLz4gLCBwb3RlbnRpYWxseSBjb21wcm9taXNpbmcgdGhlIHNhZmV0eSBvZiB0aGUgUHJpbWUgRWRpdGluZyBwcm9jZXNzLiBJbiBDYXNYIGFuZCBGYW56b3Igc3lzdGVtcywgaG93ZXZlciwgdGhlIFJUVCBpcyBwb3NpdGlvbmVkIGF0IHRoZSA1JyBlbmQgb2YgdGhlIHBlZ1JOQSwgd2hpbGUgdGhlIHNwYWNlciBpcyBsb2NhdGVkIG5lYXIgdGhlIDMnIGVuZCBhbmQgaXMgY2xvc2VseSBib3VuZCB0byB0aGUgcHJvdGVpbi4gVGhpcyByZXZlcnNlZCBsYXlvdXQgaGVscHMgZW5zdXJlIHRoYXQgcmV2ZXJzZSB0cmFuc2NyaXB0aW9uIHN0b3BzIHByZWNpc2VseSBhdCB0aGUgZW5kIG9mIHRoZSBSVFQgc2VxdWVuY2UsIHNpZ25pZmljYW50bHkgcmVkdWNpbmcgdGhlIHJpc2sgb2YgdW5pbnRlbmRlZCBleHRlbnNpb25zIGFuZCBpbXByb3ZpbmcgdGhlIHByZWNpc2lvbiBhbmQgcmVsaWFiaWxpdHkgb2YgdGhlIGVkaXRpbmcgcHJvY2Vzcy48L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgPHA+QnkgaW5jb3Jwb3JhdGluZyB0aGVzZSBzbWFsbGVyLCBtb3JlIHN0YWJsZSBuaWNrYXNlcyBpbnRvIHRoZSBQcmltZSBFZGl0aW5nIGNvbXBsZXgsIHdlIGFpbSB0byByZWR1Y2UgaXRzIG92ZXJhbGwgc2l6ZSB3aGlsZSBtYWludGFpbmluZyBvciBldmVuIGVuaGFuY2luZyBpdHMgZnVuY3Rpb25hbGl0eSBhbmQgcmVsaWFiaWxpdHkuIDwvcD5cclxuICAgICAgICAgICAgICAgIDwvQ29sbGFwc2libGU+XHJcbiAgICAgICAgICAgICAgICA8cD5JbiB0ZXJtcyBvZiB0aGUgcGVnUk5BLCB3ZSBvcHRlZCBmb3IgYSBwZWdSTkEsIGluY2x1ZGluZyBhIDE2LWJhc2UgcHJpbWVyIGJpbmRpbmcgc2l0ZSAoUEJTKSBhbmQgYSAzMC1iYXNlIHJldmVyc2UgdHJhbnNjcmlwdGlvbiB0ZW1wbGF0ZSAoUlRUKSwgd2l0aCBubyBzaWxlbnQgZWRpdHMgYW5kIGEgc3RydWN0dXJhbCBtb3RpZiwgdGhlIHRldm9wcmVRMS4gQWZ0ZXIgZXh0ZW5zaXZlIHNjcmVlbmluZyB1c2luZyBhIHJlcG9ydGVyIHN5c3RlbSwgdGhpcyBwZWdSTkEgZGVtb25zdHJhdGVkIHRoZSBoaWdoZXN0IHBlcmZvcm1hbmNlLCBsZWFkaW5nIHVzIHRvIHNlbGVjdCBpdCBhcyB0aGUgYmVzdCBjYW5kaWRhdGUgZm9yIGZ1cnRoZXIgZGV2ZWxvcG1lbnQuIFdoaWxlIG90aGVyIHBlZ1JOQXMgYWxzbyBzaG93ZWQgcHJvbWlzZSwgcGVnUk5BX1BFQVJfMDQgd2FzIHVsdGltYXRlbHkgY2hvc2VuIGZvciBpdHMgc3VwZXJpb3IgcmVzdWx0cyBpbiBvdXIgdGVzdGluZy48L3A+XHJcbiAgICAgICAgICAgICAgICA8Q29sbGFwc2libGUgaWQ9XCJwZWdSTkEtZ2VuYXUtY29sbGFwc2libGVcIiB0aXRsZT1cIk9wdGltaXphdGlvbiBvZiB0aGUgcGVnUk5BXCI+IFxyXG4gICAgICAgICAgICAgICAgICAgIDxwPjxiPlN0YWJpbGl0eSBpbXByb3ZlbWVudDogdGV2b3ByZVExIGV4dGVuc2lvbjwvYj48L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgPHA+VGhlIHBlZ1JOQSB3YXMgc3BlY2lmaWNhbGx5IG9wdGltaXplZCB0byBlbmhhbmNlIGl0cyBzdGFiaWxpdHkgaW4gdGhlIGNlbGx1bGFyIGVudmlyb25tZW50LiBUbyBhY2hpZXZlIHRoaXMsIGEgc3RydWN0dXJhbCBtb3RpZiBrbm93biBhcyB0ZXZvcHJlUTEgd2FzIGFkZGVkIHRvIHRoZSBiYXNpYyBwZWdSTkEgc3RydWN0dXJlLiBUaGlzIG1vdGlmIHdhcyBzZWxlY3RlZCBiYXNlZCBvbiBpdHMga25vd24gYWJpbGl0eSB0byBpbXByb3ZlIFJOQSBzdGFiaWxpdHkgYnkgcHJldmVudGluZyBkZWdyYWRhdGlvbi4gQnkgaW50ZWdyYXRpbmcgdGV2b3ByZVExLCB0aGUgZ29hbCB3YXMgdG8gZXh0ZW5kIHRoZSBoYWxmLWxpZmUgb2YgdGhlIHBlZ1JOQSwgYWxsb3dpbmcgaXQgdG8gcmVtYWluIGZ1bmN0aW9uYWwgaW4gY2VsbHMgZm9yIGEgbG9uZ2VyIGR1cmF0aW9uLCB0aHVzIGltcHJvdmluZyB0aGUgbGlrZWxpaG9vZCBvZiBzdWNjZXNzZnVsIGdlbmUgZWRpdHMuIFRoaXMgc3RhYmlsaXppbmcgYWRkaXRpb24gd2FzIHBhcnRpY3VsYXJseSB2YWx1YWJsZSBpbiB0aGUgY29udGV4dCBvZiBDRlRSIGdlbmUgZWRpdGluZywgd2hlcmUgaGlnaGVyIFJOQSBzdGFiaWxpdHkgY291bGQgbGVhZCB0byBiZXR0ZXIgZWRpdGluZyBvdXRjb21lcy48L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgPHA+PGI+UHJlY2lzaW9uIGVuaGFuY2VtZW50OiBTcGFjZXIgc2VsZWN0aW9uPC9iPjwvcD5cclxuICAgICAgICAgICAgICAgICAgICA8cD5BIG1ham9yIGZvY3VzIGR1cmluZyB0aGUgb3B0aW1pemF0aW9uIG9mIHRoZSBwZWdSTkEgd2FzIHRoZSBjYXJlZnVsIGRlc2lnbiBvZiB0aGUgc3BhY2VyIHNlcXVlbmNlLCB3aGljaCBwbGF5cyBhIGNydWNpYWwgcm9sZSBpbiBndWlkaW5nIHRoZSBlZGl0aW5nIGNvbXBsZXggdG8gdGhlIGNvcnJlY3QgZ2Vub21pYyBsb2NhdGlvbi4gTXVsdGlwbGUgc3BhY2VyIHNlcXVlbmNlcyB3ZXJlIGRlc2lnbmVkIGFuZCB0ZXN0ZWQgdmlhIGEgc29mdHdhcmUsIHdpdGggdGhlIGFpbSBvZiBtaW5pbWl6aW5nIG9mZi10YXJnZXQgZWZmZWN0cyB0aGF0IGNhbiBsZWFkIHRvIHVuaW50ZW5kZWQgZ2VuZXRpYyBjaGFuZ2VzLiBUaHJvdWdoIGV4cGVydCBjb25zdWx0YXRpb25zIGFuZCB0aGVvcmV0aWNhbCBtb2RlbGluZywgYSByYXRpb25hbCBkZXNpZ24gc3RyYXRlZ3kgd2FzIGVtcGxveWVkIHRvIHNlbGVjdCBhIHNwYWNlciBzZXF1ZW5jZSB0aGF0IHdvdWxkIGVuaGFuY2UgdGhlIHByZWNpc2lvbiBvZiB0aGUgZWRpdGluZyBwcm9jZXNzLiBUaGlzIHByZWNpc2lvbiBpcyBlc3BlY2lhbGx5IGltcG9ydGFudCBmb3IgdGhlcmFwZXV0aWMgYXBwbGljYXRpb25zLCBzdWNoIGFzIGluIENGVFIgZ2VuZSBlZGl0aW5nLCB3aGVyZSB1bmludGVuZGVkIGVkaXRzIGNvdWxkIGhhdmUgaGFybWZ1bCBjb25zZXF1ZW5jZXMuPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgIDxwPjxiPkltcHJvdmluZyBFZGl0aW5nIEVmZmljaWVuY3k6IFBCUyBhbmQgUlRUIGxlbmd0aCBhZGp1c3RtZW50cyB3aXRoIFNpbGVudCBFZGl0czwvYj48L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgPHA+VG8gbWF4aW1pemUgZWRpdGluZyBlZmZpY2llbmN5LCB2YXJpb3VzIGNvbWJpbmF0aW9ucyBvZiBwcmltZXIgYmluZGluZyBzaXRlIChQQlMpIGFuZCByZXZlcnNlIHRyYW5zY3JpcHRhc2UgdGVtcGxhdGUgKFJUVCkgbGVuZ3RocyB3ZXJlIGV2YWx1YXRlZC4gVGhlIFJUVCwgd2hpY2ggcHJvdmlkZXMgdGhlIHRlbXBsYXRlIGZvciB0aGUgZGVzaXJlZCBnZW5ldGljIGNoYW5nZSwgd2FzIGNhcmVmdWxseSBvcHRpbWl6ZWQsIGluY2x1ZGluZyB0aGUgaW50cm9kdWN0aW9uIG9mIHNpbGVudCBlZGl0c1x1MjAxNGNoYW5nZXMgaW4gdGhlIFJUVCB0aGF0IGRvIG5vdCBhbHRlciB0aGUgcHJvdGVpbiBzZXF1ZW5jZSBidXQgY2FuIGltcHJvdmUgdGhlIGVkaXRpbmcgcHJvY2Vzcy4gQm90aCBzaG9ydGVuZWQgYW5kIGV4dGVuZGVkIHZlcnNpb25zIG9mIHRoZSBQQlMgYW5kIFJUVCB3ZXJlIHRlc3RlZCBpbiBjb21iaW5hdGlvbnMgd2l0aCBlYWNoIG90aGVyLCB3aXRoIGFuZCB3aXRob3V0IHRoZXNlIHNpbGVudCBlZGl0cywgdG8gaWRlbnRpZnkgdGhlIG9wdGltYWwgY29uZmlndXJhdGlvbiB0aGF0IHdvdWxkIHJlc3VsdCBpbiB0aGUgaGlnaGVzdCBlZGl0aW5nIGVmZmljaWVuY3kuIFRoaXMgc3RlcC1ieS1zdGVwIHNjcmVlbmluZyBwcm9jZXNzIGFsbG93ZWQgZm9yIHRoZSBzZWxlY3Rpb24gb2YgdGhlIG1vc3QgZWZmaWNpZW50IHBlZ1JOQSBmb3IgdGFyZ2V0aW5nIHRoZSBDRlRSIGdlbmUsIGVuc3VyaW5nIHRoYXQgdGhlIHN5c3RlbSBjb3VsZCBhY2hpZXZlIGhpZ2ggbGV2ZWxzIG9mIHN1Y2Nlc3NmdWwgZWRpdHMgd2l0aCBtaW5pbWFsIHVuaW50ZW5kZWQgY29uc2VxdWVuY2VzLjwvcD5cclxuICAgICAgICAgICAgICAgIDwvQ29sbGFwc2libGU+XHJcbiAgICAgICAgICAgICAgICA8cD5Gb3IgdGhlIHJldmVyc2UgdHJhbnNjcmlwdGFzZSwgd2Ugc2VsZWN0ZWQgdGhlIFBFNmMgdmFyaWFudCwgd2hpY2ggaGFzIHNob3duIHRvIHByb3ZpZGUgdGhlIGJlc3QgZWRpdGluZyBlZmZpY2llbmN5IGFuZCBhIG1vcmUgY29tcGFjdCBzdHJ1Y3R1cmUgY29tcGFyZWQgdG8gYWx0ZXJuYXRpdmVzLiBJdHMgYWR2YW5jZWQgZGV2ZWxvcG1lbnQgc3RhZ2UgYW5kIGFiaWxpdHkgdG8gb2ZmZXIgaGlnaCBwcmVjaXNpb24gYW5kIGVkaXRpbmcgcGVyZm9ybWFuY2UgbWFkZSBpdCB0aGUgaWRlYWwgY2hvaWNlIGZvciBQcmltZSBHdWlkZS4gPC9wPlxyXG4gICAgICAgICAgICAgICAgPHA+VG9nZXRoZXIsIHRoZXNlIGNvbXBvbmVudHMgZm9ybSBhIGhpZ2hseSBvcHRpbWl6ZWQgUHJpbWUgRWRpdGluZyBzeXN0ZW0gdGhhdCBiYWxhbmNlcyBzaXplLCBzdGFiaWxpdHksIGFuZCBlZmZpY2llbmN5LiBPdXIgYWltIHdpdGggUHJpbWUgR3VpZGUgaXMgdG8gY3JlYXRlIGEgcm9idXN0IGFuZCBwcmVjaXNlIHNvbHV0aW9uIGZvciBjb3JyZWN0aW5nIHRoZSBGNTA4ZGVsIG11dGF0aW9uIGluIEN5c3RpYyBGaWJyb3NpcywgYnVpbGRpbmcgb24gdGhlIGd1aWRhbmNlIGZyb20gb3VyIGV4cGVydCBjb2xsYWJvcmF0b3JzIGFuZCBleHRlbnNpdmUgdGVzdGluZyBvZiBlYWNoIGluZGl2aWR1YWwgY29tcG9uZW50LjwvcD5cclxuICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiT3VyIFByZUN5c2UgY2Fzc2V0dGVcIiBpZD1cIlByZUN5c2UtY2Fzc2V0dGVcIi8+IFxyXG4gICAgICAgICAgICAgICAgPHA+V2UgaGF2ZSBkZXZlbG9wZWQgb3VyIFByaW1lR3VpZGUsIGFuIG9wdGltaXplZCB2ZXJzaW9uIG9mIHRoZSBQcmltZSBFZGl0aW5nIHN5c3RlbSwgZGVzaWduZWQgdG8gZW5oYW5jZSBlZGl0aW5nIGVmZmljaWVuY3ksIHByZWNpc2lvbiwgYW5kIHZlcnNhdGlsaXR5LiBBcyBwYXJ0IG9mIG91ciBjb250aW51ZWQgZWZmb3J0cyB0byBpbXByb3ZlIGFuZCBzdHJlYW1saW5lIHRoZSBQcmltZSBFZGl0aW5nIHdvcmtmbG93LCB3ZSBpbnRyb2R1Y2UgdG8geW91IHRoZSBQcmVDeXNlLUNhc3NldHRlXHUyMDE0YSB1bml2ZXJzYWwgcGxhc21pZCBiYWNrYm9uZSBzcGVjaWZpY2FsbHkgdGFpbG9yZWQgZm9yIGFueSBQcmltZSBFZGl0aW5nIHN5c3RlbS48L3A+XHJcbiAgICAgICAgICAgICAgICA8cD5UaGUgUHJlQ3lzZS1DYXNzZXR0ZSBpcyBlbmdpbmVlcmVkIHRvIHByb3ZpZGUgbWF4aW11bSBmbGV4aWJpbGl0eSBmb3IgdGhlIGNvbnN0cnVjdGlvbiBvZiB0aGUgUHJpbWUgRWRpdGluZyBzeXN0ZW1zLiBJdCBpbmNsdWRlcyBCc2FJIHVuZCBTYXBJIGNsb25pbmcgc2l0ZXMsIGFsbG93aW5nIGVhc3kgaW5zZXJ0aW9uIGFuZCBleGNoYW5nZSBvZiBlc3NlbnRpYWwgY29tcG9uZW50cyBsaWtlIGEgbmlja2FzZSBhbmQgcmV2ZXJzZSB0cmFuc2NyaXB0YXNlLCBmdW5kYW1lbnRhbCBmb3IgUHJpbWUgRWRpdGluZy4gQWRkaXRpb25hbGx5LCBpdCBpbmNvcnBvcmF0ZXMgYSBjbG9uaW5nIHNpdGUgZm9yIHRoZSBndWlkZSBSTkEsIGVuc3VyaW5nIHNlYW1sZXNzIGludGVncmF0aW9uIGFuZCBhZGFwdGF0aW9uIHRvIHZhcmlvdXMgdGFyZ2V0IHNlcXVlbmNlcy48L3A+XHJcbiAgICAgICAgICAgICAgICA8cD5Nb3Jlb3ZlciwgdGhlIFByZUN5c2UtQ2Fzc2V0dGUgY29udGFpbnMgc2V2ZXJhbCBhZHZhbmNlZCBmZWF0dXJlcyBkZXNpZ25lZCB0byBlbmhhbmNlIHN5c3RlbSBwZXJmb3JtYW5jZS4gVGhlIGFyY2hpdGVjdHVyZSBvZiB0aGlzIGNhc3NldHRlIGlzIGJhc2VkIG9uIGEgY29tYmluYXRpb24gb2YgdGhlIFBFNCBhbmQgUEU3IHN5c3RlbXMsIHByb3ZpZGluZyB0aGUgcHJlc2VuY2Ugb2YgdGhlIExBIG1vdGlmIGFuZCBNTEgxZG4uIFRodXMgYWxsb3dpbmcgYW4gaW5jcmVhc2VkIGZ1bmN0aW9uYWxpdHkgYW5kIGVkaXRpbmcgZWZmaWNpZW5jeSwgd2hpbGUgdGhlIENNViBhbmQgVDcgcHJvbW90ZXJzIGVuc3VyZSBoaWdoIGV4cHJlc3Npb24gbGV2ZWxzIGFjcm9zcyBkaWZmZXJlbnQgc3lzdGVtcy4gVGhlc2UgZmVhdHVyZXMgbWFrZSB0aGUgY2Fzc2V0dGUgdW5pdmVyc2FsbHkgYXBwbGljYWJsZSB0byBhIHdpZGUgcmFuZ2Ugb2YgUHJpbWUgRWRpdGluZyBjb250ZXh0cywgZW5hYmxpbmcgdXNlcnMgdG8gZWZmb3J0bGVzc2x5IGNsb25lIHRoZWlyIGRlc2lyZWQgY29tcG9uZW50c1x1MjAxNG5pY2thc2UsIHJldmVyc2UgdHJhbnNjcmlwdGFzZSwgYW5kIGd1aWRlIFJOQVx1MjAxNHdpdGhvdXQgdGhlIG5lZWQgZm9yIGNvbXBsZXggbW9kaWZpY2F0aW9ucy48L3A+XHJcbiAgICAgICAgICAgICAgICA8cD5XaXRoIHRoaXMgUHJlQ3lzZS1DYXNzZXR0ZSwgcmVzZWFyY2hlcnMgY2FuIGVhc2lseSBzZXQgdXAgYW5kIHRlc3QgdGhlaXIgUHJpbWUgRWRpdGluZyBzeXN0ZW1zLCBieXBhc3NpbmcgbXVjaCBvZiB0aGUgbGFib3Jpb3VzIGNsb25pbmcgd29yayB0cmFkaXRpb25hbGx5IGFzc29jaWF0ZWQgd2l0aCB0aGVzZSBzZXR1cHMuIFRoZSBjYXNzZXR0ZSBwcm92aWRlcyBhbiBlZmZpY2llbnQgYW5kIHZlcnNhdGlsZSBwbGF0Zm9ybSBmb3IgZXhwZXJpbWVudGluZyB3aXRoIGFuZCByZWZpbmluZyBQcmltZSBFZGl0aW5nIGFwcGxpY2F0aW9ucywgZm9ybWluZyB0aGUgaWRlYWwgYmFja2JvbmUgZm9yIFByaW1lR3VpZGUgYW5kIGJleW9uZC48L3A+XHJcbiAgICAgICAgICAgICAgICA8T25lRmlndXJlXHJcbiAgICAgICAgICAgICAgICBwaWMxPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvZmFuem9yL2thc3NldHRlbWVjaC53ZWJwXCJcclxuICAgICAgICAgICAgICAgIGFsdDE9XCJcIlxyXG4gICAgICAgICAgICAgICAgZGVzY3JpcHRpb249XCJTY2hlbWF0aWMgZGlhZ3JhbSBvZiB0aGUgY29uc3RydWN0ZWQgcGxhc21pZCBjb250YWluaW5nIG91ciBSZXBvcnRlciBTeXN0ZW1cIlxyXG4gICAgICAgICAgICAgICAgbnVtPVwiNVwiXHJcbiAgICAgICAgICAgICAgICAvPlxyXG4gICAgICAgICAgICAgICAgPC9TdWJlc2N0aW9uPlxyXG4gICAgICAgICAgICAgICAgPFN1YmVzY3Rpb24gdGl0bGU9XCJEZWxpdmVyeVwiIGlkPVwiQXBwcm9hY2gyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J3JvdyBhbGlnbi1pdGVtcy1jZW50ZXInPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0nY29sJz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPE9uZUZpZ3VyZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICBwaWMxPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvZGVsaXZlcnkvc29ydC1sbnAtb2huZS1iZXNjaHJpZnR1bmcud2VicFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGFsdDE9XCJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbj1cIjNEIEZpZ3VyZSBvZiBvdXIgb3B0aW1pemVkIFNPUlQgTE5QIGNhbGxlZCBBaXJCdWRkeS5cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBudW09XCI2XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSdjb2wnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5XZSBvcHRpbWl6ZWQgTE5QcyBhcyBhIHJvYnVzdCBkZWxpdmVyeSBzeXN0ZW0gdG8gdHJhbnNwb3J0IGxhcmdlciB0aGVyYXBldXRpYyBjYXJnbywgc3VjaCBhcyBQcmltZSBFZGl0aW5nIG1STkEsIHRvIGx1bmcgZXBpdGhlbGlhbCBjZWxscyB2aWEgaW5oYWxhdGlvbi4gTE5QcyB3ZXJlIGNob3NlbiBvdmVyIG90aGVyIGRlbGl2ZXJ5IHN5c3RlbXMsIGxpa2UgQWRlbm8tYXNzb2NpYXRlZCB2aXJ1c2VzIChBQVZzKSwgZHVlIHRvIHRoZWlyIHN1cGVyaW9yIGNhcmdvIGNhcGFjaXR5IGFuZCByZWR1Y2VkIGltbXVub2dlbmljaXR5LiBPdXIgZ29hbCB3YXMgdG8gY3JlYXRlIGEgc3ByYXktZHJpZWQgbHVuZy1zcGVjaWZpYyBMTlAgbmFtZWQ8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxmaWd1cmU+IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBjbGFzc05hbWU9XCJnaWYtd3JhcHBlclwiIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2RlbGl2ZXJ5L2FpcmJ1ZGR5LndlYnBcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZmlndXJlPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz1cIlwiIHN0eWxlPXt7bWF4SGVpZ2h0OiBcIjgwcHRcIn19Lz4gIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5jYXBhYmxlIG9mIGVmZmljaWVudGx5IGRlbGl2ZXJpbmcgb2Ygb3VyIFByaW1lIEVkaXRpbmcgY29tcG9uZW50cywgcmVmZXJyZWQgdG8gYXMgUHJpbWVHdWlkZSwgdG8gbHVuZyB0aXNzdWVzIHRocm91Z2ggaW5oYWxhdGlvbi4gVGhpcyBhcHByb2FjaCBpcyBkZXNpZ25lZCB0byBhZHZhbmNlIHByZWNpc2lvbiBtZWRpY2luZSBieSBlbnN1cmluZyB0YXJnZXRlZCBkZWxpdmVyeSB3aXRoIG1pbmltYWwgb2ZmLXRhcmdldCBlZmZlY3RzLjwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPENvbGxhcHNpYmxlIGlkPVwiQ29sMVwiIG9wZW49e2ZhbHNlfSB0aXRsZT1cIkxOUHMgZXhwbGFpbmVkXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJXaGF0IGFyZSBMTlBzP1wiIGlkPVwidGV4dFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPkxpcGlkIG5hbm9wYXJ0aWNsZXMsIHNob3J0IExOUHMsIGFyZSBzbWFsbCwgc3BoZXJpY2FsIHN0cnVjdHVyZXMgbWFkZSBvZiBsaXBpZHMgdGhhdCBzZXJ2ZSBhcyBkZWxpdmVyeSB2ZWhpY2xlcyBmb3IgdGhlcmFwZXV0aWMgbW9sZWN1bGVzLCBzdWNoIGFzIFJOQSwgRE5BLCBvciBkcnVncy4gVGhleSBwcm90ZWN0IHRoZWlyIGNhcmdvIGZyb20gZGVncmFkYXRpb24sIGVuaGFuY2UgY2VsbHVsYXIgdXB0YWtlLCBhbmQgYXJlIHdpZGVseSB1c2VkIGluIG1STkEgdmFjY2luZXMgYW5kIGdlbmUgdGhlcmFweSBkdWUgdG8gdGhlaXIgZWZmaWNpZW5jeSBhbmQgYmlvY29tcGF0aWJpbGl0eS48L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICA8SDQgdGV4dD1cIkxOUHMgYW5kIHRoZWlyIGltcGFjdCBvbiBtb2Rlcm4gbWVkaWNpbmVcIiBpZD1cInRleHRcIiAvPiBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPkxOUHMgYXJlIGFuIGFkdmFuY2VkIGRlbGl2ZXJ5IHN5c3RlbSBkZXNpZ25lZCB0byB0cmFuc3BvcnQgdGhlcmFwZXV0aWMgbW9sZWN1bGVzIGxpa2UgUk5BLCBETkEgb3IgcHJvdGVpbnMgaW50byB0aGUgY2VsbHMuIFRoZXNlIG5hbm9wYXJ0aWNsZXMgYXJlIHRpbnkgc3BoZXJlcyBtYWRlIG9mIGxpcGlkcyB0aGF0IGZvcm0gYSBwcm90ZWN0aXZlIHNoZWxsIGFyb3VuZCB0aGUgY2FyZ28uIFRoZSBzaXplIG9mIExOUHMgdHlwaWNhbGx5IHJhbmdlcyBmcm9tIDUwIHRvIDIwMCBubSBpbiBkaWFtZXRlciwgbWFraW5nIHRoZW0gaW5jcmVkaWJseSBzbWFsbCAtIGFib3V0IDEsMDAwIHRpbWVzIHRoaW5uZXIgdGhhbiBhIGh1bWFuIGhhaXIgPFN1cFNjcm9sbExpbmsgbGFiZWw9XCIxXCIvPiAuIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPk92ZXJhbGwsIExOUHMgcmVwcmVzZW50IGEgc2lnbmlmaWNhbnQgYWR2YW5jZW1lbnQgaW4gZHJ1ZyBkZWxpdmVyeSB0ZWNobm9sb2d5LiBMTlBzIG9mZmVyIGV4Y2VwdGlvbmFsbHkgaGlnaCBkcnVnLWxvYWRpbmcgY2FwYWNpdGllcywgbWFraW5nIHRoZW0gaGlnaGx5IGVmZmVjdGl2ZSBmb3IgZGVsaXZlcmluZyBzdWJzdGFudGlhbCBhbW91bnRzIG9mIHRoZXJhcGV1dGljIGFnZW50cyBpbiBhIHNpbmdsZSBkb3NlLiBUaGVpciBhZHZhbmNlZCBkZXNpZ24gYWxsb3dzIGZvciB0aGUgZW5jYXBzdWxhdGlvbiBvZiBhIGxhcmdlIHBheWxvYWQsIHdoaWNoIGVuaGFuY2VzIHRoZSBlZmZpY2FjeSBvZiB0cmVhdG1lbnRzIGFuZCByZWR1Y2VzIHRoZSBmcmVxdWVuY3kgb2YgYWRtaW5pc3RyYXRpb24gPFN1cFNjcm9sbExpbmsgbGFiZWw9XCIzXCIvPiAuIEJ5IGVuY2Fwc3VsYXRpbmcgYW5kIHByb3RlY3RpbmcgdGhlcmFwZXV0aWMgYWdlbnRzIGxpa2UgbVJOQSwgTE5QcyBlbmhhbmNlIHRoZSBzdGFiaWxpdHksIHRhcmdldGVkIGRlbGl2ZXJ5LCBhbmQgZWZmZWN0aXZlbmVzcyBvZiB0cmVhdG1lbnRzLiBUaGVpciBhYmlsaXR5IHRvIGJlIHRhaWxvcmVkIGZvciBzcGVjaWZpYyBkZWxpdmVyeSBuZWVkcywgc3VjaCBhcyB0YXJnZXRpbmcgcGFydGljdWxhciBvcmdhbnMgb3Igb3ZlcmNvbWluZyBwaHlzaW9sb2dpY2FsIGJhcnJpZXJzLCBtYWtlcyB0aGVtIGEgcG93ZXJmdWwgdG9vbCBpbiBtb2Rlcm4gbWVkaWNpbmUgPFN1cFNjcm9sbExpbmsgbGFiZWw9XCI5XCIvPiAuPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8SDQgdGV4dD1cIlByb3RlY3Rpb24gb2YgY2FyZ29cIiBpZD1cInRleHRcIiAvPiBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+IFRoZSBwcmltYXJ5IGZ1bmN0aW9uIG9mIExOUHMgaXMgdG8gc2hpZWxkIHRoZSB0aGVyYXBldXRpYyBhZ2VudHMgdGhleSBjYXJyeSwgc3VjaCBhcyBtUk5BLCBmcm9tIGRlZ3JhZGF0aW9uIGFuZCBmYWNpbGl0YXRlIHRoZWlyIGRlbGl2ZXJ5IGludG8gY2VsbHMuIG1STkEgaXMgYSBjcml0aWNhbCBjb21wb25lbnQgaW4gbWFueSBtb2Rlcm4gdmFjY2luZXMgYW5kIHRoZXJhcGllcywgYnV0IGl0IGlzIGhpZ2hseSBzdXNjZXB0aWJsZSB0byBicmVha2luZyBkb3duIGJlZm9yZSBpdCBjYW4gcmVhY2ggaXRzIHRhcmdldCB3aXRoaW4gY2VsbHMuIExOUHMgYWRkcmVzcyB0aGlzIGNoYWxsZW5nZSBieSBlbmNhcHN1bGF0aW5nIHRoZSBtUk5BLCB0aHVzIHByb3RlY3RpbmcgaXQgZnJvbSBoYXJtZnVsIGVuenltZXMsIGxpa2UgUk5hc2VzIGFuZCBlbnZpcm9ubWVudGFsIGNvbmRpdGlvbnMgPFN1cFNjcm9sbExpbmsgbGFiZWw9XCIyXCIvPiAuIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJEZWxpdmVyeSBhc3N1cmFuY2VcIiBpZD1cInRleHRcIiAvPiBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPkxOUHMgY29tZSBpbiB2YXJpb3VzIHR5cGVzIHRhaWxvcmVkIGZvciBkaWZmZXJlbnQgdGhlcmFwZXV0aWMgbmVlZHMuIFNvbGlkIExpcGlkIE5hbm9wYXJ0aWNsZXMgKFNMTnMpIGFuZCBOYW5vc3RydWN0dXJlZCBMaXBpZCBDYXJyaWVycyAoTkxDcykgZW5oYW5jZSBkcnVnIHN0YWJpbGl0eSBhbmQgc29sdWJpbGl0eSwgd2hpbGUgTGlwb3NvbWVzLCB3aXRoIHRoZWlyIGJpbGF5ZXIgc3RydWN0dXJlLCBhcmUgdmVyc2F0aWxlIGZvciBlbmNhcHN1bGF0aW5nIGJvdGggaHlkcm9waGlsaWMgYW5kIGh5ZHJvcGhvYmljIGRydWdzLiBDYXRpb25pYyBMTlBzIGFyZSBpZGVhbCBmb3IgZ2VuZSBkZWxpdmVyeSBkdWUgdG8gdGhlaXIgcG9zaXRpdmUgY2hhcmdlLCB3aGVyZWFzIGFuaW9uaWMgYW5kIG5ldXRyYWwgTE5QcyBvZmZlciByZWR1Y2VkIGludGVyYWN0aW9uIGFuZCBsb3dlciB0b3hpY2l0eSwgcmVzcGVjdGl2ZWx5IDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiM1wiLz4gLiA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD5UbyBlbmhhbmNlIHRoZWlyIGVmZmVjdGl2ZW5lc3MsIExOUHMgYXJlIGRlc2lnbmVkIHdpdGggc3BlY2lmaWMgY29tcG9uZW50cy4gRm9yIGluc3RhbmNlLCB0aGUgTmVidWxpemVkIEx1bmcgRGVsaXZlcnkgMSAoTkxEMSkgbmFub3BhcnRpY2xlLCBhIHBhcnRpY3VsYXIgdHlwZSBvZiBMTlAsIGluY2x1ZGVzIGEgY29tYmluYXRpb24gb2YgbGlwaWRzIGFuZCBwb2x5bWVycyB0aGF0IHN0YWJpbGl6ZSB0aGUgbVJOQSBhbmQgYWxsb3cgaXQgdG8gYmUgZGVsaXZlcmVkIGVmZmljaWVudGx5LiBUaGlzIGZvcm11bGF0aW9uIGluY2x1ZGVzIHNtYWxsIGxpcGlkIHBhcnRpY2xlcyB0aGF0IGVuY2Fwc3VsYXRlIHRoZSBtUk5BIGFuZCBjYW4gbWFpbnRhaW4gc3RhYmlsaXR5IGZvciBzZXZlcmFsIGRheXMgdW5kZXIgcHJvcGVyIHN0b3JhZ2UgY29uZGl0aW9ucyA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjJcIi8+IC4gPC9wPiBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiUm9sZSBvZiBzdXJmYWNlIG1vZGlmaWNhdGlvbnMgaW4gdGFyZ2V0aW5nXCIgaWQ9XCJ0ZXh0XCIgLz4gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0ncm93IGFsaWduLWl0ZW1zLWNlbnRlcic+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J2NvbCc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxPbmVGaWd1cmUgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBpYzE9XCJodHRwczovL2Fycy5lbHMtY2RuLmNvbS9jb250ZW50L2ltYWdlLzEtczIuMC1TMTc3MzIyNDcyNDAwMjE1Ni1ncjNfbHJnLmpwZ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsdDE9XCJBdWZuYWhtZSBMTlBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBudW09ezh9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uPXs8c3Bhbj4gRW5kb3NvbWFsIGVzY2FwZSB2cyBkZWdyYWRhdGlvbiBvZiBMTlAgY2FyZ28gYXQgZW5kb2N5dG9zaXMgPFN1cFNjcm9sbExpbmsgbGFiZWw9XCI0XCIvPi48L3NwYW4+fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSdjb2wnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPkxOUHMgYXJlIHBpdm90YWwgbm90IG9ubHkgZm9yIHNoaWVsZGluZyBtUk5BIGJ1dCBhbHNvIGZvciBlbnN1cmluZyBpdHMgZWZmaWNpZW50IGRlbGl2ZXJ5IGludG8gdGFyZ2V0IGNlbGxzLiBUaGV5IGZhY2lsaXRhdGUgY2VsbHVsYXIgdXB0YWtlIHRocm91Z2ggZW5kb2N5dG9zaXMsIHdoZXJlIHRoZSBjZWxsIG1lbWJyYW5lIGVuZ3VsZnMgdGhlIG5hbm9wYXJ0aWNsZS4gTE5QcyBhcmUgYWNjbGFpbWVkIGZvciB0aGVpciBoaWdoIGRydWctbG9hZGluZyBjYXBhY2l0aWVzLCB3aGljaCBncmVhdGx5IGVuaGFuY2UgdGhlaXIgdGhlcmFwZXV0aWMgZWZmZWN0aXZlbmVzcy4gSG93ZXZlciwgdGhlIHN1Y2Nlc3Mgb2YgdGhpcyBkZWxpdmVyeSBoaW5nZXMgb24gZWZmZWN0aXZlIGVuZG9zb21hbCBlc2NhcGUuIElkZWFsbHksIExOUHMgcmVsZWFzZSB0aGVpciBtUk5BIHBheWxvYWQgaW50byB0aGUgY3l0b3BsYXNtIGFmdGVyIGVzY2FwaW5nIGZyb20gZW5kb3NvbWVzLiBJZiB0aGlzIGVzY2FwZSBwcm9jZXNzIGlzIGluZWZmaWNpZW50LCB0aGUgbVJOQSBjYW4gYmUgZGVncmFkZWQgYnkgbHlzb3NvbWVzLCB3aGljaCBwb3NlcyBhIHNpZ25pZmljYW50IGNoYWxsZW5nZSBmb3IgbVJOQSB2YWNjaW5lcyBhbmQgdGhlcmFwaWVzIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiNFwiLz4gLjwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+QSBjcnVjaWFsIGFkdmFuY2VtZW50IGluIExOUCB0ZWNobm9sb2d5IGludm9sdmVzIHRoZSB1c2Ugb2YgcEgtc2Vuc2l0aXZlIGNhdGlvbml6YWJsZSBsaXBpZHMuIFRoZXNlIGxpcGlkcyByZW1haW4gbmV1dHJhbCBhdCBwaHlzaW9sb2dpY2FsIHBIIGJ1dCBiZWNvbWUgY2F0aW9uaWMgaW4gdGhlIGFjaWRpYyBlbnZpcm9ubWVudCBvZiBlbmRvc29tZXMuIFRoaXMgc2hpZnQgaW4gY2hhcmdlIGhlbHBzIGRpc3NvY2lhdGUgdGhlIG5hbm9wYXJ0aWNsZXMgYW5kIGRpc3J1cHQgdGhlIGVuZG9zb21hbCBtZW1icmFuZSwgZW5oYW5jaW5nIHRoZSBsaWtlbGlob29kIG9mIHN1Y2Nlc3NmdWwgZW5kb3NvbWFsIGVzY2FwZSA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjVcIi8+IC4gPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+TW9yZW92ZXIsIHRoZSBzdXJmYWNlIG9mIExOUHMgY2FuIGJlIGN1c3RvbWl6ZWQgdG8gaW1wcm92ZSB0YXJnZXRpbmcuIEZvciBpbnN0YW5jZSwgaW5jb3Jwb3JhdGluZyBzcGVjaWZpYyBsaXBpZHMgb3IgbW9kaWZ5aW5nIHRoZSBzdXJmYWNlIHdpdGggY2hhcmdlZCBncm91cHMgY2FuIGRpcmVjdCB0aGUgZGVsaXZlcnkgb2YgbVJOQSB0byB0YXJnZXRlZCBvcmdhbnMgbGlrZSB0aGUgbHVuZ3Mgb3Igc3BsZWVuIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiNlwiLz4gLiBBZGRpdGlvbmFsbHksIExOUHMgY2FuIGJlIGVuZ2luZWVyZWQgd2l0aCB0YXJnZXRpbmcgbGlnYW5kcyBvciBhbnRpYm9kaWVzIHRvIHByZWNpc2VseSBkaXJlY3QgdGhlaXIgcGF5bG9hZCB0byBzcGVjaWZpYyBjZWxsIHR5cGVzLCBmdXJ0aGVyIGVuaGFuY2luZyB0aGVpciB0aGVyYXBldXRpYyBlZmZpY2FjeSA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjdcIi8+IC4gQW5vdGhlciBhcHByb2FjaCBjYW4gYmUgY2hpdG9zYW4tYmFzZWQgbmFub3BhcnRpY2xlcyBoYXZlIGJlZW4gZXhwbG9yZWQgZm9yIHRoZWlyIGFiaWxpdHkgdG8gYWRoZXJlIHRvIG11Y3VzIGFuZCBlbmhhbmNlIGRydWcgZGVsaXZlcnkgdGhyb3VnaCB0aGUgcmVzcGlyYXRvcnkgdHJhY3QuIFRoZXNlIG5hbm9wYXJ0aWNsZXMgY2FuIHBlbmV0cmF0ZSB0aHJvdWdoIHRoZSBtdWN1cyBsYXllciB0byByZWFjaCB0aGUgbHVuZyB0aXNzdWVzIG1vcmUgZWZmZWN0aXZlbHkgPFN1cFNjcm9sbExpbmsgbGFiZWw9XCI4XCIvPiAuIFRoaXMgdmVyc2F0aWxpdHkgaW4gZGVzaWduIGlzIGVzc2VudGlhbCBmb3Igb3B0aW1pemluZyB0aGUgZGVsaXZlcnkgYW5kIGVmZmVjdGl2ZW5lc3Mgb2YgTE5QLWJhc2VkIHRoZXJhcGllcy48L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9Db2xsYXBzaWJsZT5cclxuICAgICAgICAgICAgICAgICAgICA8Q29sbGFwc2libGUgaWQ9XCJDb2wyXCIgb3Blbj17ZmFsc2V9IHRpdGxlPVwiQ2hhbGxlbmdlcyBvZiB3b3JraW5nIHdpdGggTE5Qc1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+TWFpbnRhaW5pbmcgdGhlIHN0YWJpbGl0eSBvZiBMTlBzIHRocm91Z2hvdXQgZm9ybXVsYXRpb24sIHN0b3JhZ2UsIGFuZCBkZWxpdmVyeSBpcyBjcml0aWNhbCwgYXMgZmFjdG9ycyBsaWtlIHRlbXBlcmF0dXJlIGNoYW5nZXMsIHBIIHNoaWZ0cywgb3IgbWVjaGFuaWNhbCBzdHJlc3MgY2FuIGFmZmVjdCB0aGVpciBpbnRlZ3JpdHkgPFN1cFNjcm9sbExpbmsgbGFiZWw9XCIxXCIvPiAgPFN1cFNjcm9sbExpbmsgbGFiZWw9XCIyXCIvPiAuIEVxdWFsbHkgaW1wb3J0YW50IGlzIGVuc3VyaW5nIGVmZmljaWVudCBlbmNhcHN1bGF0aW9uIG9mIHRoZSBnZW5ldGljIG1hdGVyaWFsLCBhcyBhbnkgaW5lZmZpY2llbmN5IGNhbiBsZWFkIHRvIGRlZ3JhZGF0aW9uIG9mIHRoZSB0aGVyYXBldXRpYyBjYXJnbyBvciBpbmFkZXF1YXRlIGRlbGl2ZXJ5IHRvIHRoZSB0YXJnZXQgY2VsbHMuIE9uY2UgaW5zaWRlIHRoZSBib2R5LCBMTlBzIGZhY2UgdGhlIGNoYWxsZW5nZSBvZiBjZWxsdWxhciB1cHRha2UgYW5kIHN1Y2Nlc3NmdWwgZW5kb3NvbWFsIGVzY2FwZSA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjNcIi8+ICA8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjRcIi8+IC4gSWYgdGhleSBjYW5ub3QgZXNjYXBlIHRoZSBlbmRvc29tZSBhZnRlciBlbnRlcmluZyB0aGUgY2VsbHMsIHRoZXJlIGlzIGEgcmlzayB0aGF0IHRoZSBnZW5ldGljIG1hdGVyaWFsIHdpbGwgYmUgZGVncmFkZWQgaW4gdGhlIGx5c29zb21lcywgbGltaXRpbmcgdGhlIGVmZmljYWN5IG9mIHRoZSB0cmVhdG1lbnQuIEluIGFkZGl0aW9uLCB0aGUgZm9ybXVsYXRpb24gbXVzdCBtaW5pbWl6ZSBpbW11bm9nZW5pY2l0eSBhbmQgdG94aWNpdHksIHBhcnRpY3VsYXJseSB3aXRoIHJlcGVhdGVkIGRvc2luZywgd2hpY2ggaXMgb2Z0ZW4gbmVjZXNzYXJ5IGZvciBjaHJvbmljIGRpc2Vhc2VzIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiMlwiLz4gIDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiM1wiLz4gLiBBY2hpZXZpbmcgdGhpcyBzZW5zaXRpdmUgYmFsYW5jZSBpcyBjcnVjaWFsIGZvciBtYXhpbWl6aW5nIHRoZSB0aGVyYXBldXRpYyBwb3RlbnRpYWwgb2YgTE5QcyBpbiBnZW5lIGRlbGl2ZXJ5LjwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPldoaWxlIHRoZXNlIGFyZSBnZW5lcmFsIGRpZmZpY3VsdGllcyBpbiB0aGUgdXNlIG9mIExOUHMgZm9yIGdlbmUgdGhlcmFweSwgZnVydGhlciBjaGFsbGVuZ2VzIGFyaXNlIHdoZW4gYWRtaW5pc3RlcmluZyB0aGUgTE5QcyB2aWEgaW5oYWxhdGlvbiBpbnRvIHRoZSBsdW5ncywgZHVlIHRvIHRoZSB1bmlxdWUgZW52aXJvbm1lbnQgYW5kIGFuYXRvbXkgb2YgdGhlIHJlc3BpcmF0b3J5IHN5c3RlbS48L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJDaGFsbGVuZ2VzIG9mIGluaGFsYXRlZCBsdW5nLXNwZWNpZmljIExOUHNcIiBpZD1cImNoYWxsMlwiIC8+IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+VGhlc2UgY2hhbGxlbmdlcyByYW5nZSBmcm9tIGZvcm11bGF0aW9uIGFuZCBwYXJ0aWNsZSBzaXplIHRvIG92ZXJjb21pbmcgYmlvbG9naWNhbCBiYXJyaWVycyBhbmQgbWFpbnRhaW5pbmcgY29uc2lzdGVudCBkb3NpbmcsIGFsbCBvZiB3aGljaCBpbXBhY3QgdGhlIG92ZXJhbGwgZWZmaWNhY3kgb2YgdGhlIHRoZXJhcHkuIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPldoZW4gdHJhbnNmb3JtaW5nIExOUCBmb3JtdWxhdGlvbnMgaW50byBpbmhhbGFibGUgcGFydGljbGVzLCBldmVuIGdyZWF0ZXIgYXR0ZW50aW9uIG11c3QgYmUgcGFpZCB0byBzdGFiaWxpdHkgdGhhbiBpcyBhbHJlYWR5IHRoZSBjYXNlLiBEdXJpbmcgcHJvY2Vzc2VzIGxpa2UgbmVidWxpemF0aW9uIG9yIHNwcmF5LWRyeWluZywgTE5QcyBhcmUgZXhwb3NlZCB0byBzdHJvbmcgPHN0cm9uZz5tZWNoYW5pY2FsIHN0cmVzczwvc3Ryb25nPiBzdWNoIGFzIHNoZWFyIGZvcmNlcyBkdXJpbmcgYWVyb3NvbGl6YXRpb24gdGhhdCBjYW4gZGFtYWdlIHRoZSBMTlAgYW5kIHRodXMgdGhlaXIgYWJpbGl0eSB0byBwcm90ZWN0IGFuZCBkZWxpdmVyIGdlbmV0aWMgbWF0ZXJpYWwgZWZmZWN0aXZlbHkgPFN1cFNjcm9sbExpbmsgbGFiZWw9XCI1XCIvPiAuIEVuc3VyaW5nIHRoYXQgdGhlIExOUHMgbWFpbnRhaW4gdGhlaXIgc3RydWN0dXJlIHRocm91Z2hvdXQgdGhpcyB0cmFuc2Zvcm1hdGlvbiB3aGlsZSByZW1haW5pbmcgc3VpdGFibGUgZm9yIGFlcm9zb2wgZGVsaXZlcnkgaXMgY3JpdGljYWwgdG8gdGhlIHN1Y2Nlc3Mgb2YgdGhlIHRoZXJhcHkuPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+VGhlIDxzdHJvbmc+c2l6ZTwvc3Ryb25nPiBvZiB0aGUgbmFub3BhcnRpY2xlcyBpcyBhbm90aGVyIGltcG9ydGFudCBmYWN0b3IuIEZvciBzdWNjZXNzZnVsIGx1bmcgZGVsaXZlcnksIExOUHMgc2hvdWxkIGJlIHNtYWxsZXIgdGhhbiAyIFx1MDBCNW0gPFN1cFNjcm9sbExpbmsgbGFiZWw9XCI2XCIvPiAuIElmIHRoZSBwYXJ0aWNsZXMgYXJlIHRvbyBsYXJnZSwgdGhlcmUgaXMgYSByaXNrIHRoYXQgdGhleSB3aWxsIGdldCBzdHVjayBpbiB0aGUgdXBwZXIgYWlyd2F5cyBub3QgYWJsZSB0byByZWFjaCB0aGUgdGFyZ2V0IGNlbGxzOyBpZiB0aGV5IGFyZSB0b28gc21hbGwsIHRoZXkgbWF5IGJlIGV4aGFsZWQgYmVmb3JlIHJlYWNoaW5nIHRoZSBkZWVwZXIgbHVuZyB0aXNzdWUuIFRoZSByaWdodCBwYXJ0aWNsZSBzaXplIGlzIGNydWNpYWwgZm9yIHRoZSBMTlBzIHRvIHJlYWNoIHRoZSBhbHZlb2xpLCB3aGVyZSB0aGV5IGNhbiBwcm92aWRlIHRoZSBncmVhdGVzdCB0aGVyYXBldXRpYyBpbXBhY3QuPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+QW5vdGhlciBtYWpvciBjaGFsbGVuZ2UgaXMgb3ZlcmNvbWluZyB0aGUgbHVuZ3MnIG5hdHVyYWwgPHN0cm9uZz5wcm90ZWN0aXZlIGJhcnJpZXJzPC9zdHJvbmc+LiBUaGUgYWlyd2F5cyBhcmUgbGluZWQgd2l0aCBtdWN1cyBhbmQgc3VyZmFjdGFudHMsIHdoaWNoIGhlbHAgdG8gZGVmZW5kIGFnYWluc3QgcGF0aG9nZW5zLCBidXQgYWxzbyBtYWtlIGl0IGRpZmZpY3VsdCBmb3IgTE5QcyB0byBiZSB0cmFuc3BvcnRlZC4gSW4gZGlzZWFzZXMgc3VjaCBhcyBDeXN0aWMgRmlicm9zaXMsIHRoZSB0aGlja2VuZWQgbXVjdXMgcHJlc2VudHMgYW4gZXZlbiBncmVhdGVyIG9ic3RhY2xlLCBtYWtpbmcgaXQgbW9yZSBkaWZmaWN1bHQgZm9yIHRoZSBMTlBzIHRvIHJlYWNoIHRoZSB0YXJnZXQgY2VsbHMgPFN1cFNjcm9sbExpbmsgbGFiZWw9XCI1XCIvPiAuIFRoZSBkZXZlbG9wbWVudCBvZiBMTlBzIHRoYXQgY2FuIHBlbmV0cmF0ZSB0aGVzZSBiYXJyaWVycyBpcyBlc3NlbnRpYWwgZm9yIHRoZSBzdWNjZXNzIG9mIGdlbmUgdGhlcmFweS4gPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+RmluYWxseSwgaW5oYWxlZCBhZG1pbmlzdHJhdGlvbiBsZWFkcyB0byBmbHVjdHVhdGlvbnMgaW4gdGhlIGNvbnNpc3RlbmN5IG9mIHRoZSA8c3Ryb25nPmRvc2FnZTwvc3Ryb25nPi4gVW5saWtlIGludHJhdmVub3VzIGFkbWluaXN0cmF0aW9uLCB3aGVyZSBkb3NpbmcgY2FuIGJlIHN0cmljdGx5IGNvbnRyb2xsZWQsIHRoZSByZXN1bHRzIG9mIGluaGFsYXRpb24gYXJlIGluZmx1ZW5jZWQgYnkgZmFjdG9ycyBzdWNoIGFzIHRoZSBwYXRpZW50J3MgYnJlYXRoaW5nIHBhdHRlcm4sIGx1bmcgY2FwYWNpdHkgYW5kIGluaGFsYXRpb24gdGVjaG5pcXVlLiBUaGVzZSB2YXJpYWJsZXMgY2FuIGFmZmVjdCBob3cgbXVjaCBvZiB0aGUgTE5QIGZvcm11bGF0aW9uIGFjdHVhbGx5IHJlYWNoZXMgdGhlIGx1bmdzLCBjb21wbGljYXRpbmcgZWZmb3J0cyB0byBtYWludGFpbiBhIGNvbnNpc3RlbnQgdGhlcmFwZXV0aWMgZG9zZSBvdmVyIHRpbWUsIHdoaWNoIGlzIGEgcmVhc29uYWJsZSBwcmljZSB0byBwYXkgd2hlbiB5b3UgY29uc2lkZXIgdGhhdCBpbmhhbGF0aW9uIGlzIGEgbm9uLWludmFzaXZlIGZvcm0gb2YgdGhlcmFweSBjb21wYXJlZCB0byBzeXN0ZW1pYyB0aGVyYXB5IHZpYSBpbmplY3Rpb25zIGludG8gdGhlIGJsb29kc3RyZWFtPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+QWxsIHRoZXNlIGNoYWxsZW5nZXMgY29tcGxpY2F0ZSB0aGUgd29yayB3aXRoIExOUHMgYW5kIHByZXNlbnQgc2NpZW50aXN0cyB3aXRoIGEgZ3JlYXQgY2hhbGxlbmdlLCB3aGljaCBtYWtlcyB3b3JraW5nIHdpdGggTE5QcyBldmVuIG1vcmUgaW1wb3J0YW50IHRvIGZpbmQgc29sdXRpb25zLjwvcD5cclxuICAgICAgICAgICAgICAgICAgICA8L0NvbGxhcHNpYmxlPlxyXG4gICAgICAgICAgICAgICAgICAgIDxici8+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD1cImFpcmJ1ZGR5LWhvb2tcIiBjbGFzc05hbWU9J3JvdyBhbGlnbi1pdGVtcy1jZW50ZXInPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5UbyBvcHRpbWl6ZSBBaXJCdWRkeSBmb3IgcHVsbW9uYXJ5IGRlbGl2ZXJ5LCB3ZSBjb2xsYWJvcmF0ZWQgZXh0ZW5zaXZlbHkgd2l0aCBzZXZlcmFsIGV4cGVydHMsIGluY2x1ZGluZyA8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZXNBbmRPcGVuVGFiKCd3ZWJlcicsICcvaHVtYW4tcHJhY3RpY2VzJyl9PlByb2YuIFdlYmVyLCBEci4gR3JvXHUwMERGZS1Pbm5lYnJpbms8L2E+IGFuZCA8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZXNBbmRPcGVuVGFiKCdrb2xvbmtvZmlyc3QnLCAnL2h1bWFuLXByYWN0aWNlcycpfT5Eci4gS29sb25rbzwvYT4gYXMgbWVkaWNhbCBleHBlcnRzLCA8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZXNBbmRPcGVuVGFiKCdrcmlzdGlhbicsICcvaHVtYW4tcHJhY3RpY2VzJyl9PlByb2YuIERyLiBNXHUwMEZDbGxlcjwvYT4sIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlc0FuZE9wZW5UYWIoJ3JhZHVraWMnLCAnL2h1bWFuLXByYWN0aWNlcycpfT5Eci4gUmFkdWtpYzwvYT4sIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlc0FuZE9wZW5UYWIoJ21vb3JsYWNoJywgJy9odW1hbi1wcmFjdGljZXMnKX0+QmVuamFtaW4gTW9vcmxhY2g8L2E+IGFuZCB0aGUgPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VzQW5kT3BlblRhYignYmlvcGh5c2lrJywgJy9odW1hbi1wcmFjdGljZXMnKX0+UGh5c2ljYWwgYW5kIEJpb3BoeXNpY2FsIENoZW1pc3RyeSB3b3JraW5nIGdyb3VwPC9hPiBhcyBhY2FkZW1pYyBleHBlcnRzIGZyb20gQmllbGVmZWxkIFVuaXZlcnNpdHkgYW5kIEZIIEJpZWxlZmVsZCBhcyB3ZWxsIGFzIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlc0FuZE9wZW5UYWIoJ2NvcmRlbicsICcvaHVtYW4tcHJhY3RpY2VzJyl9PkNvcmRlbiBQaGFybWE8L2E+IGFuZCA8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZXNBbmRPcGVuVGFiKCdybmhhbGUnLCAnL2h1bWFuLXByYWN0aWNlcycpfT5STmhhbGU8L2E+IGFzIGluZHVzdHJpYWwgZXhwZXJ0cy4gVGhyb3VnaG91dCB0aGUgPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VXaXRoVGFiQW5kU2Nyb2xsKHt0YWJJZDondGFiLWRlbGl2ZXJ5JywgcGF0aDogJy9lbmdpbmVlcmluZycsIHNjcm9sbFRvSWQ6IFwiZGVsaXZlcnktaGVhZGVyXCJ9KX0+ZGV2ZWxvcG1lbnQgcHJvY2VzczwvYT4sIHdlIHRlc3RlZCB0d28gY29tbWVyY2lhbGx5IGF2YWlsYWJsZSBraXRzOiB0aGUgPHN0cm9uZz5DYXltYW4gQ2hlbWljYWwgTE5QIEV4cGxvcmF0aW9uIEtpdCAoTE5QLTEwMik8L3N0cm9uZz4gYW5kIHRoZSA8c3Ryb25nPkNvcmRlbiBQaGFybWEgTE5QIFN0YXJ0ZXIgS2l0ICMyPC9zdHJvbmc+LiBXaGlsZSB0aGUgQ2F5bWFuIGtpdCBzaG93ZWQgZ29vZCBub24tbHVuZy1zcGVjaWZpYyB0cmFuc2ZlY3Rpb24gZWZmaWNpZW5jeSwgdGhlIENvcmRlbiBQaGFybWEgZm9ybXVsYXRpb24gYWxzbyBwcm92ZWQgbm90IHRvIGJlIHRoZSByaWdodCBhcHByb2FjaC4gQnVpbGRpbmcgb24gdGhpcywgd2UgaW50ZWdyYXRlZCB0aGUgPHN0cm9uZz5TT1JUIExOUDwvc3Ryb25nPiBtZXRob2QgYmFzZWQgb24gV2FuZydzIHJlc2VhcmNoPFN1cFNjcm9sbExpbmsgbGFiZWw9XCIxXCIvPiAsIG1ha2luZyBvdXIgbmFub3BhcnRpY2xlcyBsdW5nLXNwZWNpZmljLiBBZGRpdGlvbmFsbHksIHdlIGVtcGxveWVkIHRoZSA8c3Ryb25nPmNoaXRvc2FuLWNvbXBsZXhhdGlvbiBvZiB0aGUgdGhlcmFwZXV0aWMgY2FyZ288L3N0cm9uZz4gdG8gaW1wcm92ZSB0aGUgc3RhYmlsaXR5IG9mIG91ciBMTlAsIGVuc3VyaW5nIHRoYXQgaXQgd2l0aHN0YW5kcyB0aGUgaW5oYWxhdGlvbiBwcm9jZXNzIHdpdGhvdXQgZGVncmFkYXRpb24uIE1vcmVvdmVyLCBmdXJ0aGVyIHN0YWJpbGl6YXRpb24gYXBwcm9hY2hlcyBpbmNsdWRpbmcgdGhlIGVtcGxveW1lbnQgb2YgdGhlIDxzdHJvbmc+c3ByYXktZHJ5aW5nIHRlY2huaXF1ZTwvc3Ryb25nPiBpbiBjb29wZXJhdGlvbiB3aXRoIFJOaGFsZTxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiMlwiLz4gYXJlIGluIHRoZSBwaXBlbGluZS4gVGhpcyBpbXByb3ZlZCBzdGFiaWxpdHkgaXMgY3J1Y2lhbCBmb3IgdGhlIGVmZmljaWVudCBkZWxpdmVyeSBvZiBtUk5BIGludG8gbHVuZyBlcGl0aGVsaWFsIGNlbGxzLCB3aGVyZSBQcmltZUd1aWRlIGNhbiBlZmZlY3RpdmVseSBwZXJmb3JtIGdlbm9tZSBlZGl0aW5nLjwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPE9uZUZpZ3VyZSBcclxuICAgICAgICAgICAgICAgICAgICAgICAgcGljMT1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2RlbGl2ZXJ5L2JpZy1wbGFuLWluaGFsYXRpb24tdGVpbC1kZWwud2VicFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGFsdDE9XCJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbj1cIlNjaGVtYXRpYyByZXByZXNlbnRhdGlvbiBvdXIgTE5QLWJhc2VkIGRydWcgZGVsaXZlcnkgc3lzdGVtLlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG51bT1cIjlcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAvPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgPHA+VG8gZXZhbHVhdGUgdGhlIDxzdHJvbmc+ZGVsaXZlcnkgZWZmaWNpZW5jeTwvc3Ryb25nPiwgd2UgdHJhbnNmZWN0ZWQgSEVLMjkzIGFuZCBDRkJFNDFvLSBjZWxscyB1c2luZyBmbHVvcmVzY2VudCBjYXJnbyBhbmQgcXVhbnRpZmllZCB0aGUgcmVzdWx0cyB0aHJvdWdoIGZsb3cgY3l0b21ldHJ5IGFuYWx5c2lzLiBXZSBhbHNvIGVuc3VyZWQgdGhhdCBBaXJCdWRkeSBtZWV0cyB0aGUgbmVjZXNzYXJ5IHN0YW5kYXJkcyBmb3Igc2FmZXR5IGFuZCBlZmZpY2FjeSBzaW5jZSB3ZSBjb25kdWN0ZWQgZXh0ZW5zaXZlIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlQW5kU2Nyb2xsICgnSW4tRGVwdGggQ2hhcmFjdGVyaXphdGlvbiBvZiBMTlBzSCcsICcvbWF0ZXJpYWxzLW1ldGhvZHMnKX0+IGNoYXJhY3Rlcml6YXRpb24gb2YgdGhlIExOUHMgPC9hPnVzaW5nIHBoeXNpY29jaGVtaWNhbCB0ZWNobmlxdWVzIHN1Y2ggYXMgWmV0YSBwb3RlbnRpYWwgYW5hbHlzaXMsIER5bmFtaWMgTGlnaHQgU2NhdHRlcmluZyAoRExTKSwgU2Nhbm5pbmcgRWxlY3Ryb24gTWljcm9zY29weSAoU0VNKSwgYW5kIENyeW9nZW5pYyBFbGVjdHJvbiBNaWNyb3Njb3B5IChjcnlvLUVNKS4gVGhlc2UgbWV0aG9kcyBjb25maXJtZWQgdGhlIHN0YWJpbGl0eSBhbmQgb3B0aW1hbCBzaXplIGRpc3RyaWJ1dGlvbiBvZiB0aGUgbmFub3BhcnRpY2xlcy4gRnVydGhlcm1vcmUsIDxzdHJvbmc+Y3l0b3RveGljaXR5IGFzc2Vzc21lbnRzPC9zdHJvbmc+IGluY2x1ZGluZyBNVFQgYW5kIHByb2xpZmVyYXRpb24gYXNzYXlzIGRlbW9uc3RyYXRlZCB0aGF0IG91ciBMTlBzIGFyZSBiaW9jb21wYXRpYmxlIGRlc3BpdGUgdGhlIGluY29ycG9yYXRpb24gb2YgPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VXaXRoVGFiQW5kQ29sbGFwc2libGUoe3RhYklkOid0YWItZGVsaXZlcnknLCBwYXRoOiAnL2VuZ2luZWVyaW5nJywgY29sbGFwc2VJZDogXCJDb2wxXCJ9KX0+UEVHPC9hPiBhbmQgb3RoZXIgYW1iaXZhbGVudCBjb21wb25lbnRzLiBUaGVzZSBmaW5kaW5ncyByZWluZm9yY2UgQWlyQnVkZHkncyBwb3RlbnRpYWwgYXMgYSBzYWZlIGFuZCBlZmZlY3RpdmUgdG9vbCBmb3IgcHVsbW9uYXJ5IGRlbGl2ZXJ5LCB3aXRoIGJyb2FkIGltcGxpY2F0aW9ucyBmb3IgZ2VuZSB0aGVyYXBpZXMgdGFyZ2V0aW5nIGx1bmcgZGlzZWFzZXMuPC9wPlxyXG4gICAgICAgICAgICAgICAgPC9TdWJlc2N0aW9uPlxyXG4gICAgICAgICAgICA8L1NlY3Rpb24+XHJcbiAgICAgICAgICAgIFxyXG4gICAgICAgICAgICA8U2VjdGlvbiB0aXRsZT1cIk91ciBBY2hpZXZlbWVudFwiIGlkPVwiT3VyIEFjaGlldmVtZW50XCI+XHJcbiAgICAgICAgICAgICAgICA8cD5XZSBoYXZlIHN1Y2Nlc3NmdWxseSBkZW1vbnN0cmF0ZWQgYSA8Yj5wcm9vZiBvZiBjb25jZXB0PC9iPiBmb3Igb3VyIGdlbmUgdGhlcmFweSBhcHByb2FjaCB0YXJnZXRpbmcgQ3lzdGljIEZpYnJvc2lzLiBJbiBpbml0aWFsIGV4cGVyaW1lbnRzLCBIRUsgY2VsbHMgY2FycnlpbmcgYSAzLWJhc2UgZGVsZXRpb24gYW5hbG9nb3VzIHRvIHRoZSA8aT5GNTA4ZGVsPC9pPiBtdXRhdGlvbiB3ZXJlIHRyYW5zZmVjdGVkIHdpdGggb3VyIHByaW1lIGVkaXRpbmcgY29tcGxleC4gVGhlIHJlc3VsdHMgbWV0IG91ciBleHBlY3RhdGlvbnMsIGNvbmZpcm1pbmcgdGhlIHZpYWJpbGl0eSBvZiBvdXIgYXBwcm9hY2ggZm9yIHByZWNpc2UgZ2VuZSBjb3JyZWN0aW9uLiBCYXNlZCBvbiB0aGVzZSBmaW5kaW5ncywgd2Ugb3B0aW1pemVkIHRoZSBwcmltZSBlZGl0aW5nIGNvbXBsZXgsIGxlYWRpbmcgdG8gdGhlIGNyZWF0aW9uIG9mIDxiPlByaW1lR3VpZGU8L2I+LCBhIG1vcmUgY29tcGFjdCBhbmQgZWZmaWNpZW50IGVkaXRpbmcgdG9vbC4gPC9wPlxyXG4gICAgICAgICAgICAgICAgPHA+Q2VudHJhbCB0byBvdXIgPGI+ZGVsaXZlcnkgc3lzdGVtPC9iPiBpcyA8Yj5BaXJCdWRkeTwvYj4sIGEgbHVuZy1zcGVjaWZpYyBsaXBpZCBuYW5vcGFydGljbGUgZGVzaWduZWQgdG8gc3RhYmlsaXplIGFuZCBwcm90ZWN0IHRoZSBwcmltZSBlZGl0aW5nIGNvbXBsZXggZHVyaW5nIHRyYW5zcG9ydCB0byBsdW5nIGVwaXRoZWxpYWwgY2VsbHMuIDxiPkFpckJ1ZGR5PC9iPiBlbnN1cmVzIHRoYXQgdGhlIHByb3RlaW4gY29tcGxleCBpcyBkZWxpdmVyZWQgc3BlY2lmaWNhbGx5IHRvIGx1bmcgY2VsbHMsIGVuaGFuY2luZyB0aGUgZWZmaWNpZW5jeSBvZiB0aGUgZ2VuZS1lZGl0aW5nIHByb2Nlc3MuIEJ5IG1vZGlmeWluZyB0aGUgbGlwaWQgbmFub3BhcnRpY2xlIHdpdGggcHJvdGVjdGl2ZSBmZWF0dXJlcywgd2UgYWNoaWV2ZWQgaW5jcmVhc2VkIHN0YWJpbGl0eSwgZW5zdXJpbmcgZWZmZWN0aXZlIGRlbGl2ZXJ5IHRvIHRoZSB0YXJnZXQgY2VsbHMuIDwvcD5cclxuICAgICAgICAgICAgICAgIDxwPldlIGZ1cnRoZXIgb3B0aW1pemVkIHRoZSBwcmltZSBlZGl0aW5nIGZ1c2lvbiBwcm90ZWluLCA8Yj5QcmltZUd1aWRlPC9iPiwgdG8gc3RyZWFtbGluZSBpdHMgY29tcG9uZW50cywgcmVzdWx0aW5nIGluIGEgc21hbGxlciBhbmQgbW9yZSBlZmZpY2llbnQgcHJpbWUgZWRpdGluZyBjb21wbGV4LiBUaGlzIGltcHJvdmVtZW50IHNpZ25pZmljYW50bHkgZW5oYW5jZXMgdGhlIHByZWNpc2lvbiBvZiB0aGUgZ2VuZSBlZGl0aW5nIHByb2Nlc3MsIHJlZHVjaW5nIG9mZi10YXJnZXQgZWZmZWN0cyBhbmQgaW5jcmVhc2luZyB0aGUgb3ZlcmFsbCBzdWNjZXNzIG9mIG11dGF0aW9uIGNvcnJlY3Rpb24uIDwvcD5cclxuICAgICAgICAgICAgICAgIDxwPkluIHN1YnNlcXVlbnQgZXhwZXJpbWVudHMsIDxiPkhFSzI5MyBhbmQgQ0ZCRTQxby0gY2VsbHM8L2I+IGNhcnJ5aW5nIHRoZSBDRlRSIDxpPkY1MDhkZWw8L2k+IG11dGF0aW9uIHdlcmUgc3VjY2Vzc2Z1bGx5IDxiPnRyYW5zZmVjdGVkPC9iPiB3aXRoIHRoZSBvcHRpbWl6ZWQgcHJpbWUgZWRpdGluZyBjb21wbGV4LiBPdXIgcmVzdWx0cyBpbmRpY2F0ZWQgc3VjY2Vzc2Z1bCBjb3JyZWN0aW9uIG9mIHRoZSBtdXRhdGlvbiwgY29uZmlybWluZyB0aGUgcG90ZW50aWFsIG9mIG91ciBhcHByb2FjaCBmb3IgdHJlYXRpbmcgQ3lzdGljIEZpYnJvc2lzLiA8L3A+XHJcbiAgICAgICAgICAgICAgICA8cD5BZGRpdGlvbmFsbHksIHdlIGV4cGxvcmVkIDxiPmRvd25zdHJlYW0gYXBwbGljYXRpb25zPC9iPi4gUHJpbWFyeSBjZWxsIGN1bHR1cmVzIHdlcmUgdHJlYXRlZCB3aXRoIGxpcGlkIG5hbm9wYXJ0aWNsZXMgdG8gaW50cm9kdWNlIGEgcmVwb3J0ZXIgUk5BIGFuZCBQYXRjaCBDbGFtcCBtZWFzdXJlbWVudHMgd2VyZSBleHBsb3JlZCBhcyBhIHZhbGlkYXRpb24gbWV0aG9kLjwvcD5cclxuICAgICAgICAgICAgPC9TZWN0aW9uPlxyXG4gICAgICAgICAgICA8U2VjdGlvbiB0aXRsZT1cIk91ciBWaXNpb25cIiBpZD1cIk91ciBWaXNpb25cIj5cclxuICAgICAgICAgICAgICAgIDxwPkF0IDxiPlByZUN5c2U8L2I+LCB3ZSBlbnZpc2lvbiBhIGZ1dHVyZSB3aGVyZSBnZW5lIHRoZXJhcHkgZm9yIEN5c3RpYyBGaWJyb3NpcyAoQ0YpIGlzIGFzIHNpbXBsZSBhbmQgdXNlci1mcmllbmRseSBhcyB1c2luZyBhbiBpbmhhbGVyLiBPdXIgZ29hbCBpcyB0byBkZXZlbG9wIGEgZnVsbHkgaW50ZWdyYXRlZCBQcmltZSBFZGl0aW5nIHN5c3RlbSwgPGI+UHJpbWVHdWlkZTwvYj4sIGRlbGl2ZXJlZCB2aWEgYSBjdXR0aW5nLWVkZ2UgbGlwaWQgbmFub3BhcnRpY2xlIChMTlApIHBsYXRmb3JtLCA8Yj5BaXJCdWRkeTwvYj4uIFRoZSB0aGVyYXB5IHdvdWxkIGFsbG93IHBhdGllbnRzIHRvIGluaGFsZSB0aGUgdGhlcmFwZXV0aWMgY29tcGxleCwgdGFyZ2V0aW5nIHRoZSB1bmRlcmx5aW5nIGdlbmV0aWMgbXV0YXRpb24gdGhhdCBjYXVzZXMgQ0ZcdTIwMTRzcGVjaWZpY2FsbHksIHRoZSBGNTA4ZGVsIG11dGF0aW9uIGluIHRoZSBDRlRSIGdlbmUuIDwvcD5cclxuICAgICAgICAgICAgICAgIDxwPlRoZSBjb3JlIG9mIG91ciB2aXNpb24gaXMgdG8gY3JlYXRlIGEgaGlnaGx5IGVmZmljaWVudCBhbmQgc2FmZSBQcmltZSBFZGl0aW5nIGNvbXBsZXgsIHJlZmVycmVkIHRvIGFzIFByaW1lIEd1aWRlLCB0aGF0IGlzIGRlbGl2ZXJlZCBkaXJlY3RseSBpbnRvIGx1bmcgZXBpdGhlbGlhbCBjZWxscy4gVGhpcyBjb21wbGV4IHdpbGwgYmUgcGFja2FnZWQgYXMgbVJOQSBpbnRvIExOUHMsIHdpdGggYW4gb3B0aW1hbCByYXRpbyBvZiB0aGUgUHJpbWUgRWRpdGluZyBjb21wb25lbnRzIGFuZCBpdHMgZ3VpZGUgUk5BIChwZWdSTkEpLiBPbmNlIGluc2lkZSB0aGUgY2VsbCwgdGhlIG1STkEgd2lsbCBiZSB0cmFuc2xhdGVkLCBmb3JtaW5nIHRoZSBhY3RpdmUgUHJpbWUgRWRpdGluZyBjb21wbGV4LCB3aGljaCB0aGVuIHRyYW5zbG9jYXRlcyBpbnRvIHRoZSBudWNsZXVzIHVzaW5nIG51Y2xlYXIgbG9jYWxpemF0aW9uIHNlcXVlbmNlcy4gVGhlcmUsIHRoZSBjb21wbGV4IHdpbGwgcHJlY2lzZWx5IGVkaXQgdGhlIGdlbm9tZSB0byBjb3JyZWN0IHRoZSBGNTA4ZGVsIG11dGF0aW9uLiA8L3A+XHJcbiAgICAgICAgICAgICAgICA8cD5UbyBlbnN1cmUgc2FmZXR5LCB3ZSBhcmUgd29ya2luZyBvbiBkZXZlbG9waW5nIGEgcm9idXN0IG1lY2hhbmlzbSB0aGF0IHJlZ3VsYXRlcyB0aGUgUHJpbWUgRWRpdGluZyBjb21wbGV4IGF0IHRoZSBtUk5BIGxldmVsLiBPbmUgY29uY2VwdCB3ZSBhcmUgZXhwbG9yaW5nIGlzIHVzaW5nIHRoZSBYQlAxIGludHJvbjxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiOTZcIi8+ICwgd2hpY2ggcmVzcG9uZHMgdG8gY2VsbHVsYXIgc3RyZXNzIHNpZ25hbHMuIEFkZGl0aW9uYWxseSwgaW4gdGhlIGZ1dHVyZSwgd2UgYWltIHRvIGRldmVsb3AgbW9yZSBtdXRhdGlvbi1zcGVjaWZpYyBjb250cm9sIG1lY2hhbmlzbXMsIHN1Y2ggYXMgUk5BIHJpYm9zd2l0Y2hlcyB0aGF0IGFjdGl2YXRlIHRoZSBlZGl0aW5nIGNvbXBsZXggb25seSBpbiB0aGUgcHJlc2VuY2Ugb2YgdGhlIHRhcmdldCBtdXRhdGlvbiwgb2ZmZXJpbmcgYW4gZXZlbiBncmVhdGVyIGxldmVsIG9mIHByZWNpc2lvbiBhbmQgc2FmZXR5LiA8L3A+XHJcbiAgICAgICAgICAgICAgICA8cD5UaGUgbG9uZy10ZXJtIHZpc2lvbiBmb3IgUHJlQ3lzZSBpcyB0byBwcm92aWRlIGEgZ2VuZSB0aGVyYXB5IHRoYXQgY2FuIGJlIGFkbWluaXN0ZXJlZCB0aHJvdWdoIGluaGFsYXRpb24sIG11Y2ggbGlrZSBhbiBhc3RobWEgc3ByYXkuIFRoZSBwYXRpZW50IHdvdWxkIHNpbXBseSBpbmhhbGUgdGhlIExOUHMsIHdoaWNoIHRoZW4gZGVsaXZlciB0aGUgdGhlcmFwZXV0aWMgbVJOQSB0byB0aGUgbHVuZ3MuIFRoaXMgYXBwcm9hY2ggb2ZmZXJzIGEgdXNlci1mcmllbmRseSBhbmQgbWluaW1hbGx5IGludmFzaXZlIHRyZWF0bWVudCB0aGF0IGNvdWxkIHN1cHByZXNzIHRoZSBzeW1wdG9tcyBvZiBDRiBmb3Igc2V2ZXJhbCBtb250aHMuIEJ5IGNvcnJlY3RpbmcgdGhlIG11dGF0aW9uIGluIHRoZSB0b3AgbGF5ZXJzIG9mIGx1bmcgZXBpdGhlbGlhbCBjZWxscywgd2hlcmUgbXVjdXMgYnVpbGR1cCBpcyBtb3N0IHByb2JsZW1hdGljLCB3ZSBjb3VsZCBvZmZlciByZWxpZWYgZnJvbSBzeW1wdG9tcyBvdmVyIGFuIGV4dGVuZGVkIHBlcmlvZC4gSG93ZXZlciwgc2luY2UgdGhlc2UgZXBpdGhlbGlhbCBjZWxscyBuYXR1cmFsbHkgcmVnZW5lcmF0ZSBvdmVyIHRpbWUsIHRoZSB0aGVyYXB5IHdvdWxkIG5lZWQgdG8gYmUgcmVhcHBsaWVkIHBlcmlvZGljYWxseSwgbGlrZWx5IGV2ZXJ5IGZldyBtb250aHMsIGJhbGFuY2luZyBsb25nLWxhc3RpbmcgZWZmZWN0cyB3aXRoIHRoZSBuZWVkIGZvciBvY2Nhc2lvbmFsIHJlLWFkbWluaXN0cmF0aW9uLiA8L3A+XHJcbiAgICAgICAgICAgICAgICA8cD5VbHRpbWF0ZWx5LCBvdXIgdmlzaW9uIGlzIHRvIGNyZWF0ZSBhIHRoZXJhcGV1dGljIGFwcHJvYWNoIHRoYXQgbm90IG9ubHkgb2ZmZXJzIGEgY3VyZSB0aGF0IGlzIHNhZmUgYW5kIGVmZmljaWVudCBidXQgYWxzbyBtYXhpbWl6ZXMgY29udmVuaWVuY2UgZm9yIHRoZSBwYXRpZW50LiBXaXRoIGFuIGVhc3ktdG8tdXNlIGluaGFsZXIsIHBhdGllbnRzIGNvdWxkIGFkbWluaXN0ZXIgdGhlaXIgdHJlYXRtZW50IHdpdGggbWluaW1hbCBkaXNydXB0aW9uIHRvIHRoZWlyIGRhaWx5IGxpdmVzLCBpbmhhbGluZyB0aGUgZ2VuZSB0aGVyYXB5IGluIGp1c3QgYSBmZXcgYnJlYXRocywgbGVhdmluZyB0aGUgcmVzdCBvZiB0aGUgcHJvY2VzcyB0byB0aGUgc2NpZW5jZSB3ZSd2ZSBidWlsdCBpbnRvIFByZUN5c2UuIEJ5IHJlZHVjaW5nIHRoZSBmcmVxdWVuY3kgb2YgYWRtaW5pc3RyYXRpb24gYW5kIHNpbXBsaWZ5aW5nIHRoZSBkZWxpdmVyeSBtZXRob2QsIHdlIGFpbSB0byBtYWtlIGdlbmUgdGhlcmFweSBmb3IgQ3lzdGljIEZpYnJvc2lzIGJvdGggYWNjZXNzaWJsZSBhbmQgcHJhY3RpY2FsIGZvciBwYXRpZW50cyBhcm91bmQgdGhlIHdvcmxkLiA8L3A+XHJcbiAgICAgICAgICAgICAgICA8T25lRmlndXJlXHJcbiAgICAgICAgICAgICAgICBwaWMxPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvZGVsaXZlcnkvYmlnLXBsYW4taW5oYWxhdGlvbi1kZWwtbWVjaC53ZWJwXCJcclxuICAgICAgICAgICAgICAgIG51bT17MTB9XHJcbiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbj1cIklsbHVzdHJhdGlvbiBvZiBvdXIgcGF0aCBmcm9tIGZpbmFsIHByb2R1Y3QgdG8gcHJpbWUgZWRpdGluZyBpbiBsdW5nIGVwaXRoZWxpYWwgY2VsbHMuXCJcclxuICAgICAgICAgICAgICAgIGFsdDE9XCJJbGx1c3RyYXRpb24gb2Ygb3VyIHBhdGggZnJvbSBmaW5hbCBwcm9kdWN0IHRvIHByaW1lIGVkaXRpbmcgaW4gbHVuZyBlcGl0aGVsaWFsIGNlbGxzLlwiXHJcbiAgICAgICAgICAgICAgICAvPlxyXG4gICAgICAgICAgICA8L1NlY3Rpb24+XHJcbiAgICAgICAgICAgIDxTZWN0aW9uIHRpdGxlPVwiUmVmZXJlbmNlc1wiIGlkPVwiUmVmZXJlbmNlc1wiPlxyXG4gICAgICAgICAgICAgICA8RGVzY1NvdXJjZXMvPlxyXG4gICAgICAgICAgICA8L1NlY3Rpb24+XHJcblxyXG5cclxuICAgIFxyXG5cclxuICAgICAgICAgICAgXHJcblxyXG5cclxuICAgICAgICA8L2Rpdj4gIFxyXG4gICAgICA8L2Rpdj4gICAgXHJcbiAgKTtcclxufVxyXG5cclxuIGxldCBtZWRpYnV0dG9ucm93ZGF0YSA9W1xyXG4gICAge1xyXG4gICAgICAgIG5vZGU6IGNyZWF0ZURydWdTdGVja2JyaWVmKGRydWdkYXRhWzBdKSwgXHJcbiAgICAgICAgYnV0dG9ubmFtZTogXCJNb2R1bGF0b3JzXCIsIFxyXG4gICAgICAgIGNzc25hbWU6IFwiTWVkLUZpcnN0XCIsXHJcbiAgICAgICAgbWFpbjogdHJ1ZVxyXG4gICAgICAgIFxyXG4gICAgfSxcclxuICAgIHsgICBcclxuICAgICAgICBub2RlOiBjcmVhdGVEcnVnU3RlY2ticmllZihkcnVnZGF0YVsxXSApLFxyXG4gICAgICAgIGJ1dHRvbm5hbWU6IFwiTXVjb2x5dGljc1wiLCBcclxuICAgICAgICBjc3NuYW1lOiBcIk11Y29seXRpY3NcIlxyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgICBub2RlOiBjcmVhdGVEcnVnU3RlY2ticmllZihkcnVnZGF0YVsyXSApLFxyXG4gICAgICAgIGJ1dHRvbm5hbWU6IFwiQW50aWJpb3RpY3NcIiwgXHJcbiAgICAgICAgY3NzbmFtZTogXCJBbnRpYmlvdGljc1wiXHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICAgIG5vZGU6IGNyZWF0ZURydWdTdGVja2JyaWVmKGRydWdkYXRhWzNdICksXHJcbiAgICAgICAgYnV0dG9ubmFtZTogXCJFbnp5bWVzXCIsIFxyXG4gICAgICAgIGNzc25hbWU6IFwiRW56eW1lc1wiXHJcbiAgICB9LFxyXG5dXHJcblxyXG5cclxuXHJcbmxldCBzeW1wdG9tYnV0dG9ucm93ZGF0YSA9IFtcclxuICAgIHtcclxuICAgICAgICBub2RlOiBjcmVhdGVTeW1wdG9tU3RlY2ticmllZihzeW1wdG9tZGF0YVswXSksIFxyXG4gICAgICAgIGJ1dHRvbm5hbWU6IFwiUGFuY3JlYXNcIiwgXHJcbiAgICAgICAgY3NzbmFtZTogXCJTeW1wLUZpcnN0XCIsXHJcbiAgICAgICAgbWFpbjogdHJ1ZVxyXG4gICAgfSxcclxuICAgIHsgICBcclxuICAgICAgICBub2RlOiBjcmVhdGVTeW1wdG9tU3RlY2ticmllZihzeW1wdG9tZGF0YVsxXSksIFxyXG4gICAgICAgIGJ1dHRvbm5hbWU6IFwiSW50ZXN0aW5lc1wiLCBcclxuICAgICAgICBjc3NuYW1lOiBcImludGVzdGluZXNcIlxyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgICBub2RlOiBjcmVhdGVTeW1wdG9tU3RlY2ticmllZihzeW1wdG9tZGF0YVsyXSksIFxyXG4gICAgICAgIGJ1dHRvbm5hbWU6IFwiTGl2ZXJcIiwgXHJcbiAgICAgICAgY3NzbmFtZTogXCJsaXZlclwiXHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICAgIG5vZGU6IGNyZWF0ZVN5bXB0b21TdGVja2JyaWVmKHN5bXB0b21kYXRhWzNdKSwgXHJcbiAgICAgICAgYnV0dG9ubmFtZTogXCJTZXh1YWwgZ2xhbmRzXCIsIFxyXG4gICAgICAgIGNzc25hbWU6IFwiU2V4dWFsIGdsYW5kc1wiXHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICAgIG5vZGU6IGNyZWF0ZVN5bXB0b21TdGVja2JyaWVmKHN5bXB0b21kYXRhWzRdKSwgXHJcbiAgICAgICAgYnV0dG9ubmFtZTogXCJMdW5nc1wiLCBcclxuICAgICAgICBjc3NuYW1lOiBcImx1bmdzXCJcclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgICAgbm9kZTogY3JlYXRlU3ltcHRvbVN0ZWNrYnJpZWYoc3ltcHRvbWRhdGFbNV0pLCBcclxuICAgICAgICBidXR0b25uYW1lOiBcIlNrZWxldGFsIFN5c3RlbVwiLCBcclxuICAgICAgICBjc3NuYW1lOiBcIlNrZWxldGFsIFN5c3RlbVwiXHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICAgIG5vZGU6IGNyZWF0ZVN5bXB0b21TdGVja2JyaWVmKHN5bXB0b21kYXRhWzZdKSwgXHJcbiAgICAgICAgYnV0dG9ubmFtZTogXCJTa2luXCIsIFxyXG4gICAgICAgIGNzc25hbWU6IFwic2tpblwiXHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICAgIG5vZGU6IGNyZWF0ZVN5bXB0b21TdGVja2JyaWVmKHN5bXB0b21kYXRhWzddICksIFxyXG4gICAgICAgIGJ1dHRvbm5hbWU6IFwiTmFzYWwgbXVjb3NhXCIsIFxyXG4gICAgICAgIGNzc25hbWU6IFwiTmFzYWwgbXVjb3NhXCJcclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgICAgbm9kZTogY3JlYXRlU3ltcHRvbVN0ZWNrYnJpZWYoc3ltcHRvbWRhdGFbOF0gKSwgXHJcbiAgICAgICAgYnV0dG9ubmFtZTogXCJCcmFpblwiLCBcclxuICAgICAgICBjc3NuYW1lOiBcImJyYWluXCJcclxuICAgIH0sXHJcblxyXG5dXHJcblxyXG5cclxuXHJcblxyXG5mdW5jdGlvbiBjcmVhdGVTeW1wdG9tU3RlY2ticmllZihkYXRhOiBTeW1wdG9tRGF0ZW5zYXR6KXtcclxuICAgIGxldCBleGFtcGxlbGlzdDogSlNYLkVsZW1lbnRbXSA9IFtdOyBcclxuICAgIGZvciAobGV0IGluZGV4ID0gMDsgaW5kZXggPCBkYXRhLmludHJvZHVjdGlvbi5sZW5ndGg7IGluZGV4KyspIHtcclxuICAgICAgICAgICAgZXhhbXBsZWxpc3QucHVzaChcclxuICAgICAgICAgICAgICAgIDxsaSBrZXk9e2luZGV4fT57ZGF0YS5pbnRyb2R1Y3Rpb25baW5kZXhdfTwvbGk+XHJcbiAgICAgICAgICAgIClcclxuICAgIH1cclxuICAgIHJldHVybihcclxuICAgICAgICA8ZGl2PlxyXG4gICAgICAgICAgICA8SDQgaWQ9e2Ake2RhdGEubmFtZX0tYnRuYH0gdGV4dD17ZGF0YS5uYW1lfS8+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93XCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbC0yXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJzeW1wdG9tLWltZy13cmFwcGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPXtkYXRhLnBpY3R1cmV9IGNsYXNzTmFtZT1cInN5bXB0b20taW1nXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDx1bD57ZXhhbXBsZWxpc3R9PC91bD5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgXHJcbiAgICAgICAgICAgIFxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgKVxyXG59XHJcblxyXG5cclxuZnVuY3Rpb24gY3JlYXRlRHJ1Z1N0ZWNrYnJpZWYoZGF0YTogRHJ1Z0RhdGVuc2F0eil7XHJcbiAgICBsZXQgZXhhbXBsZWxpc3Q6IEpTWC5FbGVtZW50W10gID0gW107IFxyXG4gICAgZm9yIChsZXQgaW5kZXggPSAwOyBpbmRleCA8IGRhdGEuZXhhbXBsZXMubGVuZ3RoOyBpbmRleCsrKSB7XHJcbiAgICAgICAgbGV0IGFic2FldHplOiBKU1guRWxlbWVudFtdICA9IFtdXHJcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBkYXRhLmV4YW1wbGVzW2luZGV4XS50ZXh0Lmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgICAgICAgIGFic2FldHplLnB1c2goXHJcbiAgICAgICAgICAgICAgICA8bGkga2V5PXtpfT57ZGF0YS5leGFtcGxlc1tpbmRleF0udGV4dFtpXX08L2xpPlxyXG4gICAgICAgICAgICApXHJcbiAgICAgICAgICAgIFxyXG4gICAgICAgIH1cclxuICAgICAgICBleGFtcGxlbGlzdC5wdXNoKFxyXG4gICAgICAgICAgICA8ZGl2IGtleT17aW5kZXgrNTAwfSBjbGFzc05hbWU9XCJkcnVnXCI+XHJcbiAgICAgICAgICAgICAgICA8SDQgdGV4dD17ZGF0YS5leGFtcGxlc1tpbmRleF0udGl0bGV9Lz5cclxuICAgICAgICAgICAgICAgIDx1bCBrZXk9e2luZGV4fT57YWJzYWV0emV9PC91bD5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgKVxyXG4gICAgICAgIFxyXG4gICAgfVxyXG4gICAgcmV0dXJuKFxyXG4gICAgICAgIDxkaXY+XHJcbiAgICAgICAgICAgIDxINCBpZD17YCR7ZGF0YS5uYW1lfS1idG5gfSB0ZXh0PXtkYXRhLm5hbWV9Lz5cclxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3dcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sLTJcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInN5bXB0b20taW1nLXdyYXBwZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9e2RhdGEucGljdHVyZX0gY2xhc3NOYW1lPVwic3ltcHRvbS1pbWdcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICAgICAgICAgICAge2RhdGEuaW50cm9kdWN0aW9ufVxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICB7ZXhhbXBsZWxpc3R9XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgKVxyXG59IiwgImltcG9ydCB7IHVzZUVmZmVjdCwgdXNlU3RhdGUgfSBmcm9tIFwicmVhY3RcIjtcclxuaW1wb3J0IHsgU2Nyb2xsTGluayB9IGZyb20gXCIuLi9jb21wb25lbnRzL1Njcm9sbExpbmtcIjtcclxuaW1wb3J0IHsgSGlnaGxpZ2h0LCBOZXdIaWdobGlnaHQgfSBmcm9tIFwiLi9IaWdobGlnaHQtZnVuY3Rpb25zXCI7XHJcbmltcG9ydCB7IEJhY2tVcCB9IGZyb20gXCIuLi9jb21wb25lbnRzL0J1dHRvbnNcIjtcclxuXHJcbi8vIEZ1bmt0aW9uIHp1ciBFcnN0ZWxsdW5nIGRlciBTaWRlYmFyXHJcbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVTaWRlYmFyKHRhYnM6IEFycmF5PHsgdGFiOiBzdHJpbmc7IHN1YnRhYnM/OiBBcnJheTxzdHJpbmc+IH0+KSB7XHJcbiAgICBjb25zdCB7IG51bXNCaWcsIG51bXNTdWIgfSA9IGRlcml2ZVRhYnNEYXRhKHRhYnMpO1xyXG4gICAgY29uc29sZS5sb2coeyBudW1zQmlnLCBudW1zU3ViIH0pXHJcbiAgICBjb25zdCBbb3BlblRhYiwgc2V0T3BlblRhYl0gPSB1c2VTdGF0ZTxzdHJpbmcgfCBudWxsPihudWxsKTtcclxuICAgIFxyXG4gICAgICAgICAgIFxyXG4gICAgdXNlRWZmZWN0KCgpID0+IHtcclxuICAgICAgY29uc3QgaGFuZGxlU2Nyb2xsID0gKCkgPT4ge1xyXG4gICAgICAgIG51bXNCaWcuZm9yRWFjaCgoaXRlbSwgaW5kKSA9PiB7XHJcbiAgICAgICAgICBjb25zdCBlbGVtZW50ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoaXRlbSk7XHJcbiAgICAgICAgICBjb25zdCBzdWJ0aXRsZUVsZW1lbnQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChgc3VidGl0bGUke2luZH1gKTtcclxuICAgICAgICAgIGlmIChlbGVtZW50ICYmIHN1YnRpdGxlRWxlbWVudCkge1xyXG4gICAgICAgICAgICBIaWdobGlnaHQoeyBlbDogZWxlbWVudCB9LCB7IHN1YnRpdGxlOiBzdWJ0aXRsZUVsZW1lbnQgfSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcbiAgXHJcbiAgICAgICAgbnVtc1N1Yi5mb3JFYWNoKChpdGVtLCBpbmQpID0+IHtcclxuICAgICAgICAgIGNvbnN0IGVsZW1lbnQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChpdGVtKTtcclxuICAgICAgICAgIGNvbnN0IHN1YnRpdGxlRWxlbWVudCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGBuZXdzdWJ0aXRsZSR7aW5kfWApO1xyXG4gICAgICAgICAgaWYgKGVsZW1lbnQgJiYgc3VidGl0bGVFbGVtZW50KSB7XHJcbiAgICAgICAgICAgIE5ld0hpZ2hsaWdodCh7IGVsOiBlbGVtZW50IH0sIHsgc3VidGl0bGU6IHN1YnRpdGxlRWxlbWVudCB9KTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9KTtcclxuICAgICAgfTtcclxuICBcclxuICAgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoXCJzY3JvbGxcIiwgaGFuZGxlU2Nyb2xsKTtcclxuICAgICAgcmV0dXJuICgpID0+IHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKFwic2Nyb2xsXCIsIGhhbmRsZVNjcm9sbCk7XHJcbiAgICB9LCBbbnVtc0JpZywgbnVtc1N1Yiwgb3BlblRhYl0pO1xyXG5cclxuICAgIGNvbnN0IHNjcm9sbGluZyA9ICh0YWI6IHN0cmluZykgPT4ge1xyXG4gICAgICBjb25zdCB0YXJnZXRFbGVtZW50ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQodGFiKTtcclxuICAgICAgaWYgKHRhcmdldEVsZW1lbnQpIHtcclxuICAgICAgICAvL2NvbnNvbGUubG9nKGBTY3JvbGxpbmcgdG8gZWxlbWVudCB3aXRoIElEOiAke3RhYn1gKTtcclxuICAgICAgICBcclxuICAgICAgICAvLyBHZXQgdGhlIHBvc2l0aW9uIG9mIHRoZSBlbGVtZW50IHJlbGF0aXZlIHRvIHRoZSBkb2N1bWVudFxyXG4gICAgICAgIGNvbnN0IGVsZW1lbnRSZWN0ID0gdGFyZ2V0RWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcclxuICAgICAgICBjb25zdCBlbGVtZW50VG9wID0gZWxlbWVudFJlY3QudG9wICsgd2luZG93LnNjcm9sbFk7XHJcbiAgICAgICAgXHJcbiAgICAgICAgLy8gQ2FsY3VsYXRlIHRoZSBtaWRkbGUgb2YgdGhlIHZpZXdwb3J0XHJcbiAgICAgICAgY29uc3Qgdmlld3BvcnRIZWlnaHQgPSB3aW5kb3cuaW5uZXJIZWlnaHQ7XHJcbiAgICAgICAgY29uc3Qgc2Nyb2xsT2Zmc2V0ID0gZWxlbWVudFRvcCAtICh2aWV3cG9ydEhlaWdodCAvIDUgLSB0YXJnZXRFbGVtZW50Lm9mZnNldEhlaWdodCAvIDIpO1xyXG4gICAgICAgLyogIFxyXG4gICAgICAgIGNvbnNvbGUubG9nKGBFbGVtZW50IFRvcDogJHtlbGVtZW50VG9wfWApO1xyXG4gICAgICAgIGNvbnNvbGUubG9nKGBWaWV3cG9ydCBIZWlnaHQ6ICR7dmlld3BvcnRIZWlnaHR9YCk7XHJcbiAgICAgICAgY29uc29sZS5sb2coYFNjcm9sbCBPZmZzZXQ6ICR7c2Nyb2xsT2Zmc2V0fWApOyAqL1xyXG4gICAgICAgIFxyXG4gICAgICAgIHdpbmRvdy5zY3JvbGxUbyh7XHJcbiAgICAgICAgICAgIHRvcDogc2Nyb2xsT2Zmc2V0LFxyXG4gICAgICAgICAgICBiZWhhdmlvcjogXCJzbW9vdGhcIlxyXG4gICAgICAgIH0pO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgY29uc29sZS5lcnJvcihgU2Nyb2xsIHRhcmdldCBlbGVtZW50IG5vdCBmb3VuZCBmb3IgSUQ6ICR7dGFifWApO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgdG9nZ2xlVGFiID0gKHRhYjogc3RyaW5nKSA9PiB7XHJcbiAgICAgIHNldE9wZW5UYWIob3BlblRhYiA9PT0gdGFiID8gbnVsbCA6IHRhYik7XHJcbiAgICAgLy8gY29uc29sZS5sb2coYFN0YXR1cyBvZiB0YWIgJHt0YWJ9IGlzICR7b3BlblRhYn1gKVxyXG4gICAgIHNjcm9sbGluZyh0YWIpXHJcbiAgICB9O1xyXG5cclxuICAgIGxldCBzdWJ0aXRsZW51bWJlciA9IDA7IFxyXG4gICAgcmV0dXJuIChcclxuICAgICAgPD5cclxuICAgICAgICA8YnIgLz5cclxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInN0aWNreS10b3BcIj5cclxuICAgICAgICAgIDxuYXYgY2xhc3NOYW1lPVwic2lkZWJhclwiPlxyXG4gICAgICAgICAgICB7dGFicy5tYXAoKHRhYiwgaW5kZXgpID0+IHtcclxuICAgICAgICAgICAgICBjb25zdCB0YWJJZCA9IGB0YWItJHt0YWIudGFifWA7XHJcbiAgICAgICAgICAgICAgY29uc3QgcGFyZW50SWQgPSBgcGFyZW50LSR7dGFiLnRhYn1gO1xyXG4gICAgICAgICAgICAgIGNvbnN0IHN1YnRpdGxlSWQgPSBgc3VidGl0bGUke2luZGV4fWA7XHJcbiAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgcmV0dXJuIChcclxuICAgICAgICAgICAgICAgIDxkaXYga2V5PXtpbmRleH0+XHJcbiAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9e3N1YnRpdGxlSWR9IGNsYXNzTmFtZT1cImRldGFpbC1zaWRlaXRlbVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD17cGFyZW50SWR9IGNsYXNzTmFtZT1cInNpZGVpdGVtXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8YVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIGNvbnNvbGUubG9nKGBDbGlja2VkIG9uIFRhYiAke3RhYi50YWJ9IHdpdGggdGFiLW5hbWUgdGFiLSR7dGFiLnRhYn0gYW5kIHBhcmVudCBwYXJlbnQtJHt0YWIudGFifWApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9nZ2xlVGFiKHRhYi50YWIpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gQ2xvc2Ugb3RoZXIgdGFicyB3aGVuIGEgbmV3IHRhYiBpcyBvcGVuZWRcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRhYnMuZm9yRWFjaCgodCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAodC50YWIgIT09IHRhYi50YWIpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChgdGFiLSR7dC50YWJ9YCkhLnN0eWxlLmRpc3BsYXkgPSBcIm5vbmVcIjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChgcGFyZW50LSR7dC50YWJ9YCkhLmNsYXNzTGlzdC5yZW1vdmUoXCJhY3RpdmUtc2lkZWl0ZW1cIik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gU2hvdyBvciBoaWRlIHRoZSBzZWxlY3RlZCB0YWJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHRhYklkKSEuc3R5bGUuZGlzcGxheSA9IG9wZW5UYWIgPT09IHRhYi50YWIgPyBcImJsb2NrXCIgOiBcIm5vbmVcIjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHBhcmVudElkKSEuY2xhc3NMaXN0LnRvZ2dsZShcImFjdGl2ZS1zaWRlaXRlbVwiKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICB9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPHN1bW1hcnk+e3RhYi50YWJ9PC9zdW1tYXJ5PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2E+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHt0YWIuc3VidGFicyAmJiAoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkPXt0YWJJZH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzTmFtZT1cInNpZGVzdWJ0YWJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3R5bGU9e3sgZGlzcGxheTogb3BlblRhYiA9PT0gdGFiLnRhYiA/IFwiYmxvY2tcIiA6IFwibm9uZVwiIH19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHVsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7dGFiLnN1YnRhYnMubWFwKChzdWJ0YWIsIHN1YkluZGV4KSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3ViVGFiSWQgPSBgbmV3c3VidGl0bGUke3N1YnRpdGxlbnVtYmVyfWA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiAgY29uc29sZS5sb2coYE9sZCBzdWJ0aXRsZW51bWJlciBpcyAke3N1YnRpdGxlbnVtYmVyfWApICovXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3VidGl0bGVudW1iZXIgPSBzdWJ0aXRsZW51bWJlciArIDE7IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIGNvbnNvbGUubG9nKGBOZXcgc3VidGl0bGVudW1iZXIgaXMgJHtzdWJ0aXRsZW51bWJlcn1gKVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gY29uc29sZS5sb2coYE1hZGUgc3VidGFiIG5ld3N1YnRpdGxlJHtzdWJ0aXRsZW51bWJlcn0gdGhhdCB3aWxsIGxpbmsgdG8gJHt0YWIudGFifSR7c3ViSW5kZXggKzEgfUhgKSBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gKFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGtleT17c3VidGl0bGVudW1iZXJ9IGlkPXtzdWJUYWJJZH0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxTY3JvbGxMaW5rIGxhYmVsPXtzdWJ0YWJ9IHRhcmdldElkPXtgJHt0YWIudGFifSR7c3ViSW5kZXggKzEgfUhgfSAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdWw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICApfVxyXG4gICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgIFxyXG4gIFxyXG4gICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgIH0pfVxyXG4gICAgICAgICAgPC9uYXY+XHJcbiAgICAgICAgICA8QmFja1VwLz5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC8+XHJcbiAgICApO1xyXG4gIH1cclxuXHJcblxyXG4gIGZ1bmN0aW9uIGRlcml2ZVRhYnNEYXRhKHRhYnM6IEFycmF5PHsgdGFiOiBzdHJpbmc7IHN1YnRhYnM/OiBBcnJheTxzdHJpbmc+IH0+KSB7XHJcbiAgICBjb25zdCBudW1zQmlnOiBzdHJpbmdbXSA9IFtdO1xyXG4gICAgY29uc3QgbnVtc1N1Yjogc3RyaW5nW10gPSBbXTtcclxuXHJcbiAgICB0YWJzLmZvckVhY2godGFiID0+IHtcclxuICAgICAgICBsZXQgY291bnQgPSAxOyAgXHJcbiAgICAgICAgbnVtc0JpZy5wdXNoKGAke3RhYi50YWJ9SGApOyAvLyB6LkIuIFJvbGVILCBDaGVja3NIXHJcbiAgICAgICAgaWYgKHRhYi5zdWJ0YWJzKSB7XHJcbiAgICAgICAgICAgIHRhYi5zdWJ0YWJzLmZvckVhY2goKF9pbmRleCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgLy8gY29uc29sZS5sb2coaW5kZXgpXHJcbiAgICAgICAgICAgICAgICBudW1zU3ViLnB1c2goYCR7dGFiLnRhYn0ke2NvdW50fWApOyAvLyB6LkIuIFJvbGUxSCwgUm9sZTJIXHJcbiAgICAgICAgICAgICAgICBjb3VudCArPSAxOyBcclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgfVxyXG4gICAgfSk7XHJcblxyXG4gICAgcmV0dXJuIHsgbnVtc0JpZywgbnVtc1N1YiB9O1xyXG59XHJcblxyXG5cclxuIiwgImltcG9ydCB7IGNyZWF0ZVNpZGViYXIgfSBmcm9tIFwiLi4vdXRpbHMvY3JlYXRlU2lkZWJhclwiO1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIERlc2NTaWRlYmFyKCl7XHJcbiAgICBsZXQgc2lkZWJhciA9IGNyZWF0ZVNpZGViYXIodGFicyk7IFxyXG4gICAgcmV0dXJuKFxyXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sLTIgIGQtbm9uZSBkLWxnLWJsb2NrXCI+XHJcbiAgICAgICAgICAge3NpZGViYXJ9XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICApXHJcbn1cclxuXHJcblxyXG5jb25zdCB0YWJzID0gW1xyXG4gICAgeyB0YWI6IFwiQWJzdHJhY3RcIiB9LFxyXG4gICAge3RhYjogXCJPdXIgTW90aXZhdGlvblwifSxcclxuICAgIHsgdGFiOiBcIkN5c3RpYyBGaWJyb3Npc1wiLCBzdWJ0YWJzOiBbXCJPdmVydmlld1wiLCBcIlRoZSBDRlRSIFByb3RlaW5cIiwgXCJGNTA4ZGVsXCIsIFwiU3ltcHRvbXNcIiwgXCJEaWFnbm9zaXNcIiwgXCJUcmVhdG1lbnRcIl19LFxyXG4gICAge3RhYjogXCJBcHByb2FjaFwiLCBzdWJ0YWJzOiBbXCJNZWNoYW5pc21cIiwgXCJEZWxpdmVyeVwiXX0sXHJcbiAgICB7dGFiOiBcIk91ciBWaXNpb25cIn0sXHJcbiAgICB7dGFiOiBcIlJlZmVyZW5jZXNcIn1cclxuICBdO1xyXG4iLCAiaW1wb3J0IHsgdXNlTmF2aWdhdGlvbiB9IGZyb20gXCIuLi91dGlsc1wiXHJcbmltcG9ydCB7IE91cmxpbmsgfSBmcm9tIFwiLi9pbnRlcmZhY2VzXCI7XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gVGFiU2Nyb2xsTGluayh7dGFiLCBzY3JvbGxJZCwgbnVtfTp7dGFiOiBzdHJpbmcsIHNjcm9sbElkOiBzdHJpbmcsIG51bTogc3RyaW5nfSl7XHJcbiAgICBjb25zdCB7Z29Ub1BhZ2VXaXRoVGFiQW5kU2Nyb2xsfSA9IHVzZU5hdmlnYXRpb24oKTsgXHJcbiAgICByZXR1cm4oXHJcbiAgICAgICAgPHN1cD48YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZVdpdGhUYWJBbmRTY3JvbGwoe3BhdGg6IFwiXCIsIHRhYklkOiB0YWIsIHNjcm9sbFRvSWQ6IHNjcm9sbElkfSl9PntudW19PC9hPjwvc3VwPlxyXG4gICAgKVxyXG59XHJcblxyXG5cclxuXHJcbi8vIDJeNCA9IDE2IHBvc3NpYmxlIGNvbWJpbmF0aW9ucyArIHNwZWNpYWwgY2FzZXMgbVx1MDBGQ3NzZW4gZXZlbnR1ZWxsIGVyZ1x1MDBFNG56dCB3ZXJkZW4gXHJcbmV4cG9ydCBmdW5jdGlvbiBPdXJMaW5rKHtwYXRoLCBzY3JvbGxUb0lkLCB0YWJJZCwgc3ViVGFiSWQsIGNvbGxhcHNlSWQsIHRleHQsIHRhYmluY29sSWR9Ok91cmxpbmspe1xyXG4gICAgXHJcbiAgICBjb25zdCB7Z29Ub1BsYWNlfSA9IHVzZU5hdmlnYXRpb24oKTsgXHJcbiAgICAvLyAxLiBbMS0xLTEtMV0gZ28gdG8gcGFnZSBhbmQgb3BlbiB0YWIgYW5kIG9wZW4gc3ViVGFiIGFuZCBvcGVuIGNvbGFwc2libGUgaW4gc3VidGFiIGFuZCBzY3JvbGwgdG8gc29tZXRoaW5nXHJcbiAgICBpZih0YWJJZCAmJiBzdWJUYWJJZCAmJiBzY3JvbGxUb0lkICYmIGNvbGxhcHNlSWQgJiYgIXRhYmluY29sSWQpIHtcclxuICAgICAgICByZXR1cm4oPGEgb25DbGljaz17KCkgPT4gZ29Ub1BsYWNlKHtwYXRoOiBwYXRoLCB0YWJJZDogdGFiSWQsIHN1YlRhYklkOiBzdWJUYWJJZCwgc2Nyb2xsVG9JZDpzY3JvbGxUb0lkLCBjb2xsYXBzZUlkOmNvbGxhcHNlSWR9KX0+e3RleHR9PC9hPikgICAgXHJcbiAgICB9IFxyXG4gICAgLy8gc3BlY2lhbCBjYXNlIGlmIGEgdGFiIGluIHRoZSBjb2xsYXBzaWJsZSBzaGFsbCBiZSBvcGVuZWQgdG9vXHJcbiAgICBpZih0YWJJZCAmJiBzdWJUYWJJZCAmJiBzY3JvbGxUb0lkICYmIGNvbGxhcHNlSWQgJiYgdGFiaW5jb2xJZCkge1xyXG4gICAgICAgIHJldHVybig8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGxhY2Uoe3BhdGg6IHBhdGgsIHRhYklkOiB0YWJJZCwgc3ViVGFiSWQ6IHN1YlRhYklkLCBzY3JvbGxUb0lkOnNjcm9sbFRvSWQsIGNvbGxhcHNlSWQ6Y29sbGFwc2VJZCwgdGFiaW5jb2xJZDp0YWJpbmNvbElkfSl9Pnt0ZXh0fTwvYT4pICAgIFxyXG4gICAgfSBcclxuICAgIC8vIDIuIFsxLTEtMS0wXSBnbyB0byBwYWdlIGFuZCBvcGVuIHRhYiBhbmQgb3BlbiBzdWJ0YWIgYW5kIHNjcm9sbCB0byBzb21ldGhpbmdcclxuICAgIGVsc2UgaWYgKHRhYklkICYmIHN1YlRhYklkICYmIHNjcm9sbFRvSWQgJiYgIWNvbGxhcHNlSWQpe1xyXG4gICAgICAgIHJldHVybig8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGxhY2Uoe3BhdGg6IHBhdGgsIHRhYklkOiB0YWJJZCwgc3ViVGFiSWQ6IHN1YlRhYklkLCBzY3JvbGxUb0lkOnNjcm9sbFRvSWR9KX0+e3RleHR9PC9hPilcclxuICAgIH1cclxuICAgIC8vKyszLiBbMS0xLTAtMV0gZ28gdG8gcGFnZSBhbmQgb3BlbiB0YWIgYW5kIG9wZW4gY29sbGFwc2libGVcclxuICAgIGVsc2UgaWYgKHRhYklkICYmIHN1YlRhYklkICYmICFzY3JvbGxUb0lkICYmIGNvbGxhcHNlSWQgJiYgIXRhYmluY29sSWQpe1xyXG4gICAgICAgIHJldHVybig8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGxhY2Uoe3BhdGg6IHBhdGgsIHRhYklkOiB0YWJJZCwgc3ViVGFiSWQ6IHN1YlRhYklkLCBjb2xsYXBzZUlkOmNvbGxhcHNlSWR9KX0+e3RleHR9PC9hPilcclxuICAgIH1cclxuICAgIC8vc3BlY2lhbCBjYXNlOiBnbyB0byBwYWdlIGFuZCBvcGVuIHRhYiBhbmQgb3BlbiBjb2xsYXBzaWJsZSBhbmQgb3BlbiB0YWIgaW4gY29sbGFwc2libGVcclxuICAgICBlbHNlIGlmICh0YWJJZCAmJiBzdWJUYWJJZCAmJiAhc2Nyb2xsVG9JZCAmJiBjb2xsYXBzZUlkICYmdGFiaW5jb2xJZCl7XHJcbiAgICAgICAgcmV0dXJuKDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QbGFjZSh7cGF0aDogcGF0aCwgdGFiSWQ6IHRhYklkLCBzdWJUYWJJZDogc3ViVGFiSWQsIGNvbGxhcHNlSWQ6Y29sbGFwc2VJZCwgdGFiaW5jb2xJZDp0YWJpbmNvbElkfSl9Pnt0ZXh0fTwvYT4pXHJcbiAgICB9XHJcbiAgICAvLysrNC4gWzEtMS0wLTBdIGdvIHRvIHBhZ2UgYW5kIG9wZW50IHRhYiBhbmQgb3BlbiBzdWJ0YWIgTk8gU0NST0xMSU5HXHJcbiAgICBlbHNlIGlmICh0YWJJZCAmJiBzdWJUYWJJZCAmJiAhc2Nyb2xsVG9JZCAmJiAhY29sbGFwc2VJZCl7XHJcbiAgICAgICAgcmV0dXJuKDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QbGFjZSh7cGF0aDogcGF0aCwgdGFiSWQ6IHRhYklkLCBzdWJUYWJJZDogc3ViVGFiSWR9KX0+e3RleHR9PC9hPilcclxuICAgIH1cclxuICAgIC8vKys1LiBbMS0wLTEtMV0gZ28gdG8gcGFnZSBhbmQgb3BlbiB0YWIgYW5kIG9wZW4gY29sbGFwc2libGUgYW5kIHNjcm9sbCB0byBzb21ldGhpbmcgaW4gdGhlIGNvbGxhcHNpYmxlXHJcbiAgICBlbHNlIGlmICh0YWJJZCAmJiAhc3ViVGFiSWQgJiYgc2Nyb2xsVG9JZCAmJiBjb2xsYXBzZUlkICYmICF0YWJpbmNvbElkKXtcclxuICAgICAgICByZXR1cm4oPGEgb25DbGljaz17KCkgPT4gZ29Ub1BsYWNlKHtwYXRoOiBwYXRoLCB0YWJJZDogdGFiSWQsIHNjcm9sbFRvSWQ6c2Nyb2xsVG9JZCwgY29sbGFwc2VJZDpjb2xsYXBzZUlkfSl9Pnt0ZXh0fTwvYT4pXHJcbiAgICB9IFxyXG4gICAgLy9zcGVjaWFsIGNhc2U6IGdvIHRvIHBhZ2UgYW5kIG9wZW4gdGFiIGFuZCBvcGVuIGNvbGxhcHNpYmxlIG9wZW4gdGFiIGkgY29sbGFwc2libGUgYW5kIHNjcm9sbCB0byBzb21ldGhpbmcgaW4gdGhlIHRhYlxyXG4gICAgZWxzZSBpZiAodGFiSWQgJiYgIXN1YlRhYklkICYmIHNjcm9sbFRvSWQgJiYgY29sbGFwc2VJZCAmJiB0YWJpbmNvbElkKXtcclxuICAgICAgICByZXR1cm4oPGEgb25DbGljaz17KCkgPT4gZ29Ub1BsYWNlKHtwYXRoOiBwYXRoLCB0YWJJZDogdGFiSWQsIHNjcm9sbFRvSWQ6c2Nyb2xsVG9JZCwgY29sbGFwc2VJZDpjb2xsYXBzZUlkLCB0YWJpbmNvbElkOnRhYmluY29sSWR9KX0+e3RleHR9PC9hPilcclxuICAgIH0gXHJcbiAgICAvLysrNi4gWzEtMC0xLTBdIGdvIHRvIHBhZ2UgYW5kIG9wZW4gdGFiIGFuZCBzY3JvbGwgdG8gc29tZXRoaW5nXHJcbiAgICBlbHNlIGlmICh0YWJJZCAmJiAhc3ViVGFiSWQgJiYgc2Nyb2xsVG9JZCAmJiAhY29sbGFwc2VJZCl7XHJcbiAgICAgICAgcmV0dXJuKDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QbGFjZSh7cGF0aDogcGF0aCwgdGFiSWQ6IHRhYklkLCBzY3JvbGxUb0lkOnNjcm9sbFRvSWR9KX0+e3RleHR9PC9hPilcclxuICAgIH1cclxuICAgIC8vKys3LiBbMS0wLTAtMV0gZ28gdG8gcGFnZSBhbmQgb3BlbiB0YWIgYW5kIG9wZW4gY29sbGFwc2libGUgaW4gdGFiXHJcbiAgICBlbHNlIGlmICh0YWJJZCAmJiAhc3ViVGFiSWQgJiYgIXNjcm9sbFRvSWQgJiYgY29sbGFwc2VJZCAmJiAhdGFiaW5jb2xJZCl7XHJcbiAgICAgICAgcmV0dXJuKDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QbGFjZSh7cGF0aDogcGF0aCwgdGFiSWQ6IHRhYklkLCBjb2xsYXBzZUlkOmNvbGxhcHNlSWR9KX0+e3RleHR9PC9hPilcclxuICAgIH1cclxuICAgIC8vc3BlY2lhbCBjYXNlOiBnbyB0byBwYWdlIGFuZCBvcGVuIHRhYiBhbmQgb3BlbiBjb2xsYXBzaWJsZSBpbiB0YWIgYW5kIG9wZW4gdGFiIGluIGNvbGxhcHNpYmxlXHJcbiAgICBlbHNlIGlmICh0YWJJZCAmJiAhc3ViVGFiSWQgJiYgIXNjcm9sbFRvSWQgJiYgY29sbGFwc2VJZCAmJiB0YWJpbmNvbElkKXtcclxuICAgICAgICByZXR1cm4oPGEgb25DbGljaz17KCkgPT4gZ29Ub1BsYWNlKHtwYXRoOiBwYXRoLCB0YWJJZDogdGFiSWQsIGNvbGxhcHNlSWQ6Y29sbGFwc2VJZCwgdGFiaW5jb2xJZDp0YWJpbmNvbElkfSl9Pnt0ZXh0fTwvYT4pXHJcbiAgICB9XHJcbiAgICAvLysrOC4gWzEtMC0wLTBdIGdvIHRvIHBhZ2UgYW5kIG9wZW4gYSB0YWJcclxuICAgIGVsc2UgaWYgKHRhYklkICYmICFzdWJUYWJJZCAmJiAhc2Nyb2xsVG9JZCAmJiAhY29sbGFwc2VJZCl7XHJcbiAgICAgICAgcmV0dXJuKDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QbGFjZSh7cGF0aDogcGF0aCwgdGFiSWQ6dGFiSWR9KX0+e3RleHR9PC9hPilcclxuICAgIH1cclxuICAgIC8vKys5LiBbMC0xLTEtMV0gZ28gdG8gcGFnZSBhbmQgb3BlbiBhIGNvbGxhcHNpYmxlIGFuZCBvcGVuIGEgc3VidGFiIGluIHRoZSBjb2xsYXBzaWJsZSBhbmQgc2Nyb2xsIHRvIHNvbWV0aGluZyBpbiB0aGUgc3VidGFiXHJcbiAgICBlbHNlIGlmICghdGFiSWQgJiYgdGFiaW5jb2xJZCAmJiBzY3JvbGxUb0lkICYmIGNvbGxhcHNlSWQpe1xyXG4gICAgICAgIHJldHVybig8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGxhY2Uoe3BhdGg6IHBhdGgsIGNvbGxhcHNlSWQ6Y29sbGFwc2VJZCwgdGFiaW5jb2xJZDp0YWJpbmNvbElkLCBzY3JvbGxUb0lkOnNjcm9sbFRvSWR9KX0+e3RleHR9PC9hPilcclxuICAgIH1cclxuICAgIC8vKysxMC4gWzAtMS0xLTBdIGl0IGlzIG5vdCBwb3NzaWJsZSB0byBvbmx5IG9wZW4gYSBzdWJ0YWIgYW5kIHNjcm9sbCB0byBzb21ldGhpbmcgdGhlcmVcclxuICAgIC8qICAqL1xyXG4gICAgLy8rKzExLiBbMC0xLTAtMV0gZ28gdG8gcGFnZSBhbmQgb3BlbiBhIGNvbGxhcHNpYmxlIGFuZCBzY3JvbGwgdG8gc29tZXRoaW5nIGluIHRoZSBjb2xsYXBzaWJsZVxyXG4gICAgZWxzZSBpZiAoIXRhYklkICYmIHN1YlRhYklkICYmICFzY3JvbGxUb0lkICYmIGNvbGxhcHNlSWQgJiYgIXRhYmluY29sSWQpe1xyXG4gICAgICAgIHJldHVybig8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGxhY2Uoe3BhdGg6IHBhdGgsIGNvbGxhcHNlSWQ6Y29sbGFwc2VJZCwgc3ViVGFiSWQ6c3ViVGFiSWR9KX0+e3RleHR9PC9hPilcclxuICAgIH1cclxuICAgIC8vc3BlY2lhbCBjYXNlOiBnbyB0byBwYWdlIGFuZCBvcGVuIGEgY29sbGFwc2libGUgYW5kIG9wZW4gYSB0YWIgaW4gdGhlIGNvbGxhcHNpYmxlIGFuZCBzY3JvbGwgdG8gc29tZXRoaW5nIGluIHRoZSB0YWJcclxuICAgIGVsc2UgaWYgKCF0YWJJZCAmJiBzdWJUYWJJZCAmJiAhc2Nyb2xsVG9JZCAmJiBjb2xsYXBzZUlkICYmIHRhYmluY29sSWQpe1xyXG4gICAgICAgIHJldHVybig8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGxhY2Uoe3BhdGg6IHBhdGgsIGNvbGxhcHNlSWQ6Y29sbGFwc2VJZCwgc3ViVGFiSWQ6c3ViVGFiSWQsIHRhYmluY29sSWQ6dGFiaW5jb2xJZH0pfT57dGV4dH08L2E+KVxyXG4gICAgfVxyXG4gICAgLy8rKzEyOiBbMC0xLTAtMF0gaXQgaXMgbm90IHBvc3NpYmxlIHRvIGdvIHRvIGEgcGFnZSBhbmQgb25seSBvcGVuIGEgc3VidGFiIFxyXG4gICAgLyogICovXHJcbiAgICAvLysrMTMuIFswLTAtMS0xXSBnbyB0byBwYWdlIGFuZCBvcGVuIGEgY29sbGFwc2libGUgc2Nyb2xsIHRvIHNvbWV0aGluZyBpbiB0aGUgY29sbGFwc2libGVcclxuICAgIGVsc2UgaWYgKCF0YWJJZCAmJiAhc3ViVGFiSWQgJiYgc2Nyb2xsVG9JZCAmJiBjb2xsYXBzZUlkKXtcclxuICAgICAgICByZXR1cm4oPGEgb25DbGljaz17KCkgPT4gZ29Ub1BsYWNlKHtwYXRoOiBwYXRoLCBzY3JvbGxUb0lkOnNjcm9sbFRvSWQsIGNvbGxhcHNlSWQ6Y29sbGFwc2VJZH0pfT57dGV4dH08L2E+KVxyXG4gICAgfVxyXG4gICAgLy8rKzE0LiBbMC0wLTEtMF0gZ28gdG8gYSBwYWdlIGFuZCBzY3JvbGwgdG8gc29tZXRoaW5nXHJcbiAgICBlbHNlIGlmICghdGFiSWQgJiYgIXN1YlRhYklkICYmIHNjcm9sbFRvSWQgJiYgIWNvbGxhcHNlSWQpe1xyXG4gICAgICAgIHJldHVybig8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGxhY2Uoe3BhdGg6IHBhdGgsIHNjcm9sbFRvSWQ6c2Nyb2xsVG9JZH0pfT57dGV4dH08L2E+KVxyXG4gICAgfVxyXG4gICAgLy8gMTUuIFswLTAtMC0xXSBnbyB0byBhIHBhZ2UgYW5kIG9wZW4gYSBjb2xsYXBzaWJsZVxyXG4gICAgZWxzZSBpZiAoIXRhYklkICYmICFzdWJUYWJJZCAmJiAhc2Nyb2xsVG9JZCAmJiBjb2xsYXBzZUlkKXtcclxuICAgICAgICByZXR1cm4oPGEgb25DbGljaz17KCkgPT4gZ29Ub1BsYWNlKHtwYXRoOiBwYXRoLCBjb2xsYXBzZUlkOmNvbGxhcHNlSWR9KX0+e3RleHR9PC9hPilcclxuICAgIH1cclxuICAgIC8vIDE2LiBbMC0wLTAtMF0gQ2F0Y2ggYWxsIC0ganVzdCBnbyB0byB0aGUgcGFnZSBcclxuICAgIGVsc2Uge1xyXG4gICAgICAgIHJldHVybig8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGxhY2Uoe3BhdGg6IHBhdGh9KX0+e3RleHR9PC9hPilcclxuICAgIH1cclxuICAgIFxyXG59IiwgImltcG9ydCBCaWJ0ZXhQYXJzZXIgZnJvbSBcIi4uL2NvbXBvbmVudHMvbWFrZVNvdXJjZXNcIjtcclxuXHJcbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIEVuZ1RyZnNvdXJjZXMoKXtcclxuICAgIHJldHVybiAoXHJcbiAgICAgICAgPGRpdj5cclxuICAgICAgICAgIDxCaWJ0ZXhQYXJzZXIgYmlidGV4U291cmNlcz17YmlidGV4U291cmNlc30gc3RhcnQ9ezN9IC8+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICk7XHJcbn1cclxuXHJcblxyXG5jb25zdCBiaWJ0ZXhTb3VyY2VzID0gW1xyXG4gIGBAYXJ0aWNsZXtHcmFoYW1fU21pbGV5X1J1c3NlbGxfTmFpcm5fMTk3NyxcclxuICAgIHRpdGxlICAgICAgICA9IHtDaGFyYWN0ZXJpc3RpY3Mgb2YgYSBIdW1hbiBDZWxsIExpbmUgVHJhbnNmb3JtZWQgYnkgRE5BIGZyb20gSHVtYW4gQWRlbm92aXJ1cyBUeXBlIDV9LFxyXG4gICAgYXV0aG9yICAgICAgID0ge0dyYWhhbSwgRi4gTC4gYW5kIFNtaWxleSwgSi4gYW5kIFJ1c3NlbGwsIFcuIEMuIGFuZCBOYWlybiwgUi59LFxyXG4gICAgeWVhciAgICAgICAgID0gMTk3NyxcclxuICAgIGpvdXJuYWwgICAgICA9IHtKb3VybmFsIG9mIEdlbmVyYWwgVmlyb2xvZ3l9LFxyXG4gICAgcHVibGlzaGVyICAgID0ge01pY3JvYmlvbG9neSBTb2NpZXR5LH0sXHJcbiAgICB2b2x1bWUgICAgICAgPSAzNixcclxuICAgIG51bWJlciAgICAgICA9IDEsXHJcbiAgICBwYWdlcyAgICAgICAgPSB7NTlcdTIwMTM3Mn0sXHJcbiAgICBkb2kgICAgICAgICAgPSB7MTAuMTA5OS8wMDIyLTEzMTctMzYtMS01OX0sXHJcbiAgICBpc3NuICAgICAgICAgPSB7MTQ2NS0yMDk5fSxcclxuICAgIGFic3RyYWN0bm90ZSA9IHtTVU1NQVJZIEh1bWFuIGVtYnJ5b25pYyBraWRuZXkgY2VsbHMgaGF2ZSBiZWVuIHRyYW5zZm9ybWVkIGJ5IGV4cG9zaW5nIGNlbGxzIHRvIHNoZWFyZWQgZnJhZ21lbnRzIG9mIGFkZW5vdmlydXMgdHlwZSA1IEROQS4gVGhlIHRyYW5zZm9ybWVkIGNlbGxzIChkZXNpZ25hdGVkIDI5MyBjZWxscykgZXhoaWJpdGVkIG1hbnkgb2YgdGhlIGNoYXJhY3RlcmlzdGljcyBvZiB0cmFuc2Zvcm1hdGlvbiBpbmNsdWRpbmcgdGhlIGVsYWJvcmF0aW9uIG9mIGEgdmlydXMtc3BlY2lmaWMgdHVtb3VyIGFudGlnZW4uIEFuYWx5c2lzIG9mIHRoZSBwb2x5cGVwdGlkZXMgc3ludGhlc2l6ZWQgaW4gdGhlIDI5MyBjZWxscyBieSBsYWJlbGxpbmcgd2l0aCAzNVMtbWV0aGlvbmluZSBhbmQgU0RTIFBBR0Ugc2hvd2VkIGEgdmFyaWFibGUgcGF0dGVybiBvZiBzeW50aGVzaXMsIGRpZmZlcmVudCBpbiBhIG51bWJlciBvZiByZXNwZWN0cyBmcm9tIHRoYXQgc2VlbiBpbiBvdGhlciBodW1hbiBjZWxscy4gT24gbGFiZWxsaW5nIHRoZSBzdXJmYWNlIG9mIGNlbGxzIGJ5IGxhY3RvcGVyb3hpZGFzZSBjYXRhbHlzZWQgcmFkaW8taW9kaW5hdGlvbiwgdGhlIGFic2VuY2Ugb2YgYSBsYWJlbGxlZCBwb2x5cGVwdGlkZSBhbmFsb2dvdXMgdG8gdGhlIDI1MCBLIChMRVRTKSBnbHljb3Byb3RlaW4gd2FzIG5vdGVkLiBIeWJyaWRpemF0aW9uIG9mIGxhYmVsbGVkIGNlbGx1bGFyIFJOQSB3aXRoIHJlc3RyaWN0aW9uIGZyYWdtZW50cyBvZiBhZGVub3ZpcnVzIHR5cGUgNSBETkEgaW5kaWNhdGVkIHRyYW5zY3JpcHRpb24gb2YgYSBwb3J0aW9uIG9mIHRoZSBhZGVub3ZpcnVzIGdlbm9tZSBhdCB0aGUgY29udmVudGlvbmFsIGxlZnQgaGFuZCBlbmQufVxyXG4gIH1gLFxyXG4gIGBAYXJ0aWNsZXtTaW1vbixcclxuICAgIHRpdGxlICAgICAgICA9IHtQRUFSLCBhIGZsZXhpYmxlIGZsdW9yZXNjZW50IHJlcG9ydGVyIGZvciB0aGUgaWRlbnRpZmljYXRpb24gYW5kIGVucmljaG1lbnQgb2Ygc3VjY2Vzc2Z1bGx5IHByaW1lIGVkaXRlZCBjZWxsc30sXHJcbiAgICBhdXRob3IgICAgICAgPSB7U2ltb24sIERvcm90dHlhIEFubmEgYW5kIFRcdTAwRTFsYXMsIEFuZHJcdTAwRTFzIGFuZCBLdWxjc1x1MDBFMXIsIFBcdTAwRTl0ZXIgSXN0dlx1MDBFMW4gYW5kIEJpY3pcdTAwRjNrLCBac3V6c2FubmEgYW5kIEtyYXVzeiwgU2FyYWggTGF1cmEgYW5kIFZcdTAwRTFyYWR5LCBHeVx1MDBGNnJneSBhbmQgV2Vsa2VyLCBFcnZpbn0sXHJcbiAgICB5ZWFyICAgICAgICAgPSAyMDIyLFxyXG4gICAgbW9udGggICAgICAgID0gZmViLFxyXG4gICAgam91cm5hbCAgICAgID0ge2VMaWZlfSxcclxuICAgIHB1Ymxpc2hlciAgICA9IHtlTGlmZSBTY2llbmNlcyBQdWJsaWNhdGlvbnMsIEx0ZH0sXHJcbiAgICB2b2x1bWUgICAgICAgPSAxMSxcclxuICAgIHBhZ2VzICAgICAgICA9IHtlNjk1MDR9LFxyXG4gICAgZG9pICAgICAgICAgID0gezEwLjc1NTQvZUxpZmUuNjk1MDR9LFxyXG4gICAgaXNzbiAgICAgICAgID0gezIwNTAtMDg0WH0sXHJcbiAgICBhYnN0cmFjdG5vdGUgPSB7UHJpbWUgZWRpdGluZyBpcyBhIHJlY2VudGx5IGRldmVsb3BlZCBDUklTUFIvQ2FzOSBiYXNlZCBnZW5lIGVuZ2luZWVyaW5nIHRvb2wgdGhhdCBhbGxvd3MgdGhlIGludHJvZHVjdGlvbiBvZiBzaG9ydCBpbnNlcnRpb25zLCBkZWxldGlvbnMsIGFuZCBzdWJzdGl0dXRpb25zIGludG8gdGhlIGdlbm9tZS4gSG93ZXZlciwgdGhlIGVmZmljaWVuY3kgb2YgcHJpbWUgZWRpdGluZywgd2hpY2ggdHlwaWNhbGx5IGFjaGlldmVzIGVkaXRpbmcgcmF0ZXMgb2YgYXJvdW5kIDEwJVx1MjAxMzMwJSwgaGFzIG5vdCBtYXRjaGVkIGl0cyB2ZXJzYXRpbGl0eS4gSGVyZSwgd2UgaW50cm9kdWNlIHRoZSBwcmltZSBlZGl0b3IgYWN0aXZpdHkgcmVwb3J0ZXIgKFBFQVIpLCBhIHNlbnNpdGl2ZSBmbHVvcmVzY2VudCB0b29sIGZvciBpZGVudGlmeWluZyBzaW5nbGUgY2VsbHMgd2l0aCBwcmltZSBlZGl0aW5nIGFjdGl2aXR5LiBQRUFSIGhhcyBubyBiYWNrZ3JvdW5kIGZsdW9yZXNjZW5jZSBhbmQgc3BlY2lmaWNhbGx5IGluZGljYXRlcyBwcmltZSBlZGl0aW5nIGV2ZW50cy4gSXRzIGRlc2lnbiBwcm92aWRlcyBhcHBhcmVudGx5IHVubGltaXRlZCBmbGV4aWJpbGl0eSBmb3Igc2VxdWVuY2UgdmFyaWF0aW9uIGFsb25nIHRoZSBlbnRpcmUgbGVuZ3RoIG9mIHRoZSBzcGFjZXIgc2VxdWVuY2UsIG1ha2luZyBpdCB1bmlxdWVseSBzdWl0ZWQgZm9yIHN5c3RlbWF0aWMgaW52ZXN0aWdhdGlvbiBvZiBzZXF1ZW5jZSBmZWF0dXJlcyB0aGF0IGluZmx1ZW5jZSBwcmltZSBlZGl0aW5nIGFjdGl2aXR5LiBUaGUgdXNlIG9mIFBFQVIgYXMgYW4gZW5yaWNobWVudCBtYXJrZXIgZm9yIHByaW1lIGVkaXRpbmcgY2FuIGluY3JlYXNlIHRoZSBlZGl0ZWQgcG9wdWxhdGlvbiBieSB1cCB0byA4NCUsIHRodXMgc2lnbmlmaWNhbnRseSBpbXByb3ZpbmcgdGhlIGFwcGxpY2FiaWxpdHkgb2YgcHJpbWUgZWRpdGluZyBmb3IgYmFzaWMgcmVzZWFyY2ggYW5kIGJpb3RlY2hub2xvZ2ljYWwgYXBwbGljYXRpb25zLn0sXHJcbiAgICBlZGl0b3IgICAgICAgPSB7TGFwaW5haXRlLCBBdWRyb25lIGFuZCBTdGFpbmllciwgRGlkaWVyIFlSIGFuZCBIYW1pbHRvbiwgSmVubmlmZXIgUn1cclxuICB9YCxcclxuICBgQGFydGljbGV7QW56YWxvbmVfUmFuZG9scGhfRGF2aXNfU291c2FfS29ibGFuX0xldnlfQ2hlbl9XaWxzb25fTmV3YnlfUmFndXJhbV8yMDE5LFxyXG4gICAgdGl0bGUgICAgICAgID0ge1NlYXJjaC1hbmQtcmVwbGFjZSBnZW5vbWUgZWRpdGluZyB3aXRob3V0IGRvdWJsZS1zdHJhbmQgYnJlYWtzIG9yIGRvbm9yIEROQX0sXHJcbiAgICBhdXRob3IgICAgICAgPSB7QW56YWxvbmUsIEFuZHJldyBWLiBhbmQgUmFuZG9scGgsIFBleXRvbiBCLiBhbmQgRGF2aXMsIEplc3NpZSBSLiBhbmQgU291c2EsIEFsZXhhbmRlciBBLiBhbmQgS29ibGFuLCBMdWtlIFcuIGFuZCBMZXZ5LCBKb25hdGhhbiBNLiBhbmQgQ2hlbiwgUGV0ZXIgSi4gYW5kIFdpbHNvbiwgQ2hyaXN0b3BoZXIgYW5kIE5ld2J5LCBHcmVnb3J5IEEuIGFuZCBSYWd1cmFtLCBBZGl0eWEgYW5kIExpdSwgRGF2aWQgUi59LFxyXG4gICAgeWVhciAgICAgICAgID0gMjAxOSxcclxuICAgIG1vbnRoICAgICAgICA9IGRlYyxcclxuICAgIGpvdXJuYWwgICAgICA9IHtOYXR1cmV9LFxyXG4gICAgcHVibGlzaGVyICAgID0ge05hdHVyZSBQdWJsaXNoaW5nIEdyb3VwfSxcclxuICAgIHZvbHVtZSAgICAgICA9IDU3NixcclxuICAgIG51bWJlciAgICAgICA9IDc3ODUsXHJcbiAgICBwYWdlcyAgICAgICAgPSB7MTQ5XHUyMDEzMTU3fSxcclxuICAgIGRvaSAgICAgICAgICA9IHsxMC4xMDM4L3M0MTU4Ni0wMTktMTcxMS00fSxcclxuICAgIGlzc24gICAgICAgICA9IHsxNDc2LTQ2ODd9LFxyXG4gICAgcmlnaHRzICAgICAgID0gezIwMTkgVGhlIEF1dGhvcihzKSwgdW5kZXIgZXhjbHVzaXZlIGxpY2VuY2UgdG8gU3ByaW5nZXIgTmF0dXJlIExpbWl0ZWR9LFxyXG4gICAgYWJzdHJhY3Rub3RlID0ge01vc3QgZ2VuZXRpYyB2YXJpYW50cyB0aGF0IGNvbnRyaWJ1dGUgdG8gZGlzZWFzZTEgYXJlIGNoYWxsZW5naW5nIHRvIGNvcnJlY3QgZWZmaWNpZW50bHkgYW5kIHdpdGhvdXQgZXhjZXNzIGJ5cHJvZHVjdHMyXHUyMDEzNS4gSGVyZSB3ZSBkZXNjcmliZSBwcmltZSBlZGl0aW5nLCBhIHZlcnNhdGlsZSBhbmQgcHJlY2lzZSBnZW5vbWUgZWRpdGluZyBtZXRob2QgdGhhdCBkaXJlY3RseSB3cml0ZXMgbmV3IGdlbmV0aWMgaW5mb3JtYXRpb24gaW50byBhIHNwZWNpZmllZCBETkEgc2l0ZSB1c2luZyBhIGNhdGFseXRpY2FsbHkgaW1wYWlyZWQgQ2FzOSBlbmRvbnVjbGVhc2UgZnVzZWQgdG8gYW4gZW5naW5lZXJlZCByZXZlcnNlIHRyYW5zY3JpcHRhc2UsIHByb2dyYW1tZWQgd2l0aCBhIHByaW1lIGVkaXRpbmcgZ3VpZGUgUk5BIChwZWdSTkEpIHRoYXQgYm90aCBzcGVjaWZpZXMgdGhlIHRhcmdldCBzaXRlIGFuZCBlbmNvZGVzIHRoZSBkZXNpcmVkIGVkaXQuIFdlIHBlcmZvcm1lZCBtb3JlIHRoYW4gMTc1IGVkaXRzIGluIGh1bWFuIGNlbGxzLCBpbmNsdWRpbmcgdGFyZ2V0ZWQgaW5zZXJ0aW9ucywgZGVsZXRpb25zLCBhbmQgYWxsIDEyIHR5cGVzIG9mIHBvaW50IG11dGF0aW9uLCB3aXRob3V0IHJlcXVpcmluZyBkb3VibGUtc3RyYW5kIGJyZWFrcyBvciBkb25vciBETkEgdGVtcGxhdGVzLiBXZSB1c2VkIHByaW1lIGVkaXRpbmcgaW4gaHVtYW4gY2VsbHMgdG8gY29ycmVjdCwgZWZmaWNpZW50bHkgYW5kIHdpdGggZmV3IGJ5cHJvZHVjdHMsIHRoZSBwcmltYXJ5IGdlbmV0aWMgY2F1c2VzIG9mIHNpY2tsZSBjZWxsIGRpc2Vhc2UgKHJlcXVpcmluZyBhIHRyYW5zdmVyc2lvbiBpbiBIQkIpIGFuZCBUYXlcdTIwMTNTYWNocyBkaXNlYXNlIChyZXF1aXJpbmcgYSBkZWxldGlvbiBpbiBIRVhBKTsgdG8gaW5zdGFsbCBhIHByb3RlY3RpdmUgdHJhbnN2ZXJzaW9uIGluIFBSTlA7IGFuZCB0byBpbnNlcnQgdmFyaW91cyB0YWdzIGFuZCBlcGl0b3BlcyBwcmVjaXNlbHkgaW50byB0YXJnZXQgbG9jaS4gRm91ciBodW1hbiBjZWxsIGxpbmVzIGFuZCBwcmltYXJ5IHBvc3QtbWl0b3RpYyBtb3VzZSBjb3J0aWNhbCBuZXVyb25zIHN1cHBvcnQgcHJpbWUgZWRpdGluZyB3aXRoIHZhcnlpbmcgZWZmaWNpZW5jaWVzLiBQcmltZSBlZGl0aW5nIHNob3dzIGhpZ2hlciBvciBzaW1pbGFyIGVmZmljaWVuY3kgYW5kIGZld2VyIGJ5cHJvZHVjdHMgdGhhbiBob21vbG9neS1kaXJlY3RlZCByZXBhaXIsIGhhcyBjb21wbGVtZW50YXJ5IHN0cmVuZ3RocyBhbmQgd2Vha25lc3NlcyBjb21wYXJlZCB0byBiYXNlIGVkaXRpbmcsIGFuZCBpbmR1Y2VzIG11Y2ggbG93ZXIgb2ZmLXRhcmdldCBlZGl0aW5nIHRoYW4gQ2FzOSBudWNsZWFzZSBhdCBrbm93biBDYXM5IG9mZi10YXJnZXQgc2l0ZXMuIFByaW1lIGVkaXRpbmcgc3Vic3RhbnRpYWxseSBleHBhbmRzIHRoZSBzY29wZSBhbmQgY2FwYWJpbGl0aWVzIG9mIGdlbm9tZSBlZGl0aW5nLCBhbmQgaW4gcHJpbmNpcGxlIGNvdWxkIGNvcnJlY3QgdXAgdG8gODklIG9mIGtub3duIGdlbmV0aWMgdmFyaWFudHMgYXNzb2NpYXRlZCB3aXRoIGh1bWFuIGRpc2Vhc2VzLn0sXHJcbiAgICBsYW5ndWFnZSAgICAgPSB7ZW59XHJcbiAgfWBcclxuXSIsICJpbXBvcnQgQmlidGV4UGFyc2VyIGZyb20gXCIuLi9jb21wb25lbnRzL21ha2VTb3VyY2VzXCI7XHJcblxyXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBFbmdSZXBzb3VyY2VzKCl7XHJcbiAgICByZXR1cm4gKFxyXG4gICAgICAgIDxkaXY+XHJcbiAgICAgICAgICA8QmlidGV4UGFyc2VyIGJpYnRleFNvdXJjZXM9e2JpYnRleFNvdXJjZXN9IC8+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICk7XHJcbn1cclxuXHJcblxyXG5jb25zdCBiaWJ0ZXhTb3VyY2VzID0gW1xyXG5gXHJcbkBhcnRpY2xle0hlaW1fUHJhc2hlcl9Uc2llbl8xOTk0LFxyXG5cdHRpdGxlICAgICAgICA9IHtXYXZlbGVuZ3RoIG11dGF0aW9ucyBhbmQgcG9zdHRyYW5zbGF0aW9uYWwgYXV0b3hpZGF0aW9uIG9mIGdyZWVuIGZsdW9yZXNjZW50IHByb3RlaW4ufSxcclxuXHRhdXRob3IgICAgICAgPSB7SGVpbSwgUiBhbmQgUHJhc2hlciwgRCBDIGFuZCBUc2llbiwgUiBZfSxcclxuXHR5ZWFyICAgICAgICAgPSAxOTk0LFxyXG5cdG1vbnRoICAgICAgICA9IGRlYyxcclxuXHRqb3VybmFsICAgICAgPSB7UHJvY2VlZGluZ3Mgb2YgdGhlIE5hdGlvbmFsIEFjYWRlbXkgb2YgU2NpZW5jZXN9LFxyXG5cdHB1Ymxpc2hlciAgICA9IHtQcm9jZWVkaW5ncyBvZiB0aGUgTmF0aW9uYWwgQWNhZGVteSBvZiBTY2llbmNlc30sXHJcblx0dm9sdW1lICAgICAgID0gOTEsXHJcblx0bnVtYmVyICAgICAgID0gMjYsXHJcblx0cGFnZXMgICAgICAgID0gezEyNTAxXHUyMDEzMTI1MDR9LFxyXG5cdGRvaSAgICAgICAgICA9IHsxMC4xMDczL3BuYXMuOTEuMjYuMTI1MDF9LFxyXG5cdGFic3RyYWN0bm90ZSA9IHtUaGUgZ3JlZW4gZmx1b3Jlc2NlbnQgcHJvdGVpbiAoR0ZQKSBvZiB0aGUgamVsbHlmaXNoIEFlcXVvcmVhIHZpY3RvcmlhIGlzIGFuIHVudXN1YWwgcHJvdGVpbiB3aXRoIHN0cm9uZyB2aXNpYmxlIGFic29yYmFuY2UgYW5kIGZsdW9yZXNjZW5jZSBmcm9tIGEgcC1oeWRyb3h5YmVuenlsaWRlbmUtaW1pZGF6b2xpZGlub25lIGNocm9tb3Bob3JlLCB3aGljaCBpcyBnZW5lcmF0ZWQgYnkgY3ljbGl6YXRpb24gYW5kIG94aWRhdGlvbiBvZiB0aGUgcHJvdGVpblx1MjAxOXMgb3duIFNlci1UeXItR2x5IHNlcXVlbmNlIGF0IHBvc2l0aW9ucyA2NS02Ny4gQ2xvbmluZyBvZiB0aGUgY0ROQSBhbmQgaGV0ZXJvbG9nb3VzIGV4cHJlc3Npb24gb2YgZmx1b3Jlc2NlbnQgcHJvdGVpbiBpbiBhIHdpZGUgdmFyaWV0eSBvZiBvcmdhbmlzbXMgaW5kaWNhdGUgdGhhdCB0aGlzIHVuaXF1ZSBwb3N0dHJhbnNsYXRpb25hbCBtb2RpZmljYXRpb24gbXVzdCBiZSBlaXRoZXIgc3BvbnRhbmVvdXMgb3IgZGVwZW5kZW50IG9ubHkgb24gdWJpcXVpdG91cyBlbnp5bWVzIGFuZCByZWFjdGFudHMuIFdlIHJlcG9ydCB0aGF0IGZvcm1hdGlvbiBvZiB0aGUgZmluYWwgZmx1b3JvcGhvcmUgcmVxdWlyZXMgbW9sZWN1bGFyIG94eWdlbiBhbmQgcHJvY2VlZHMgd2l0aCBhIHRpbWUgY29uc3RhbnQgKGFwcHJveGltYXRlbHkgNCBociBhdCAyMiBkZWdyZWVzIEMgYW5kIGF0bW9zcGhlcmljIHBPMikgaW5kZXBlbmRlbnQgb2YgZGlsdXRpb24sIGltcGx5aW5nIHRoYXQgdGhlIG94aWRhdGlvbiBkb2VzIG5vdCByZXF1aXJlIGVuenltZXMgb3IgY29mYWN0b3JzLiBHRlAgd2FzIG11dGFnZW5pemVkIGFuZCBzY3JlZW5lZCBmb3IgdmFyaWFudHMgd2l0aCBhbHRlcmVkIHNwZWN0cmEuIFRoZSBtb3N0IHN0cmlraW5nIG11dGFudCBmbHVvcmVzY2VkIGJsdWUgYW5kIGNvbnRhaW5lZCBoaXN0aWRpbmUgaW4gcGxhY2Ugb2YgVHlyLTY2LiBUaGUgYXZhaWxhYmlsaXR5IG9mIHR3byB2aXNpYmx5IGRpc3RpbmN0IGNvbG9ycyBzaG91bGQgc2lnbmlmaWNhbnRseSBleHRlbmQgdGhlIHVzZWZ1bG5lc3Mgb2YgR0ZQIGluIG1vbGVjdWxhciBhbmQgY2VsbCBiaW9sb2d5IGJ5IGVuYWJsaW5nIGluIHZpdm8gdmlzdWFsaXphdGlvbiBvZiBkaWZmZXJlbnRpYWwgZ2VuZSBleHByZXNzaW9uIGFuZCBwcm90ZWluIGxvY2FsaXphdGlvbiBhbmQgbWVhc3VyZW1lbnQgb2YgcHJvdGVpbiBhc3NvY2lhdGlvbiBieSBmbHVvcmVzY2VuY2UgcmVzb25hbmNlIGVuZXJneSB0cmFuc2Zlci59XHJcbn1cclxuYCxgXHJcbiAgQGFydGljbGV7U2ltb24sXHJcbiAgICB0aXRsZSAgICAgICAgPSB7UEVBUiwgYSBmbGV4aWJsZSBmbHVvcmVzY2VudCByZXBvcnRlciBmb3IgdGhlIGlkZW50aWZpY2F0aW9uIGFuZCBlbnJpY2htZW50IG9mIHN1Y2Nlc3NmdWxseSBwcmltZSBlZGl0ZWQgY2VsbHN9LFxyXG4gICAgYXV0aG9yICAgICAgID0ge1NpbW9uLCBEb3JvdHR5YSBBbm5hIGFuZCBUXHUwMEUxbGFzLCBBbmRyXHUwMEUxcyBhbmQgS3VsY3NcdTAwRTFyLCBQXHUwMEU5dGVyIElzdHZcdTAwRTFuIGFuZCBCaWN6XHUwMEYzaywgWnN1enNhbm5hIGFuZCBLcmF1c3osIFNhcmFoIExhdXJhIGFuZCBWXHUwMEUxcmFkeSwgR3lcdTAwRjZyZ3kgYW5kIFdlbGtlciwgRXJ2aW59LFxyXG4gICAgeWVhciAgICAgICAgID0gMjAyMixcclxuICAgIG1vbnRoICAgICAgICA9IGZlYixcclxuICAgIGpvdXJuYWwgICAgICA9IHtlTGlmZX0sXHJcbiAgICBwdWJsaXNoZXIgICAgPSB7ZUxpZmUgU2NpZW5jZXMgUHVibGljYXRpb25zLCBMdGR9LFxyXG4gICAgdm9sdW1lICAgICAgID0gMTEsXHJcbiAgICBwYWdlcyAgICAgICAgPSB7ZTY5NTA0fSxcclxuICAgIGRvaSAgICAgICAgICA9IHsxMC43NTU0L2VMaWZlLjY5NTA0fSxcclxuICAgIGlzc24gICAgICAgICA9IHsyMDUwLTA4NFh9LFxyXG4gICAgYWJzdHJhY3Rub3RlID0ge1ByaW1lIGVkaXRpbmcgaXMgYSByZWNlbnRseSBkZXZlbG9wZWQgQ1JJU1BSL0NhczkgYmFzZWQgZ2VuZSBlbmdpbmVlcmluZyB0b29sIHRoYXQgYWxsb3dzIHRoZSBpbnRyb2R1Y3Rpb24gb2Ygc2hvcnQgaW5zZXJ0aW9ucywgZGVsZXRpb25zLCBhbmQgc3Vic3RpdHV0aW9ucyBpbnRvIHRoZSBnZW5vbWUuIEhvd2V2ZXIsIHRoZSBlZmZpY2llbmN5IG9mIHByaW1lIGVkaXRpbmcsIHdoaWNoIHR5cGljYWxseSBhY2hpZXZlcyBlZGl0aW5nIHJhdGVzIG9mIGFyb3VuZCAxMCVcdTIwMTMzMCUsIGhhcyBub3QgbWF0Y2hlZCBpdHMgdmVyc2F0aWxpdHkuIEhlcmUsIHdlIGludHJvZHVjZSB0aGUgcHJpbWUgZWRpdG9yIGFjdGl2aXR5IHJlcG9ydGVyIChQRUFSKSwgYSBzZW5zaXRpdmUgZmx1b3Jlc2NlbnQgdG9vbCBmb3IgaWRlbnRpZnlpbmcgc2luZ2xlIGNlbGxzIHdpdGggcHJpbWUgZWRpdGluZyBhY3Rpdml0eS4gUEVBUiBoYXMgbm8gYmFja2dyb3VuZCBmbHVvcmVzY2VuY2UgYW5kIHNwZWNpZmljYWxseSBpbmRpY2F0ZXMgcHJpbWUgZWRpdGluZyBldmVudHMuIEl0cyBkZXNpZ24gcHJvdmlkZXMgYXBwYXJlbnRseSB1bmxpbWl0ZWQgZmxleGliaWxpdHkgZm9yIHNlcXVlbmNlIHZhcmlhdGlvbiBhbG9uZyB0aGUgZW50aXJlIGxlbmd0aCBvZiB0aGUgc3BhY2VyIHNlcXVlbmNlLCBtYWtpbmcgaXQgdW5pcXVlbHkgc3VpdGVkIGZvciBzeXN0ZW1hdGljIGludmVzdGlnYXRpb24gb2Ygc2VxdWVuY2UgZmVhdHVyZXMgdGhhdCBpbmZsdWVuY2UgcHJpbWUgZWRpdGluZyBhY3Rpdml0eS4gVGhlIHVzZSBvZiBQRUFSIGFzIGFuIGVucmljaG1lbnQgbWFya2VyIGZvciBwcmltZSBlZGl0aW5nIGNhbiBpbmNyZWFzZSB0aGUgZWRpdGVkIHBvcHVsYXRpb24gYnkgdXAgdG8gODQlLCB0aHVzIHNpZ25pZmljYW50bHkgaW1wcm92aW5nIHRoZSBhcHBsaWNhYmlsaXR5IG9mIHByaW1lIGVkaXRpbmcgZm9yIGJhc2ljIHJlc2VhcmNoIGFuZCBiaW90ZWNobm9sb2dpY2FsIGFwcGxpY2F0aW9ucy59LFxyXG4gICAgZWRpdG9yICAgICAgID0ge0xhcGluYWl0ZSwgQXVkcm9uZSBhbmQgU3RhaW5pZXIsIERpZGllciBZUiBhbmQgSGFtaWx0b24sIEplbm5pZmVyIFJ9XHJcbiAgfVxyXG5gXHJcbl0iLCAiaW1wb3J0IEJpYnRleFBhcnNlciBmcm9tIFwiLi4vY29tcG9uZW50cy9tYWtlU291cmNlc1wiO1xyXG5cclxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gRW5nUEVzeXN0ZW1zKCl7XHJcbiAgICByZXR1cm4gKFxyXG4gICAgICAgIDxkaXY+XHJcbiAgICAgICAgICA8QmlidGV4UGFyc2VyIGJpYnRleFNvdXJjZXM9e2JpYnRleFNvdXJjZXN9IHN0YXJ0PXs2fS8+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICk7XHJcbn1cclxuXHJcblxyXG5jb25zdCBiaWJ0ZXhTb3VyY2VzID0gWyAvKiAxLT4gIDYgKi9cclxuICBgQGFydGljbGV7QW56YWxvbmVfUmFuZG9scGhfRGF2aXNfU291c2FfS29ibGFuX0xldnlfQ2hlbl9XaWxzb25fTmV3YnlfUmFndXJhbV8yMDE5LFxyXG4gICAgdGl0bGUgICAgICAgID0ge1NlYXJjaC1hbmQtcmVwbGFjZSBnZW5vbWUgZWRpdGluZyB3aXRob3V0IGRvdWJsZS1zdHJhbmQgYnJlYWtzIG9yIGRvbm9yIEROQX0sXHJcbiAgICBhdXRob3IgICAgICAgPSB7QW56YWxvbmUsIEFuZHJldyBWLiBhbmQgUmFuZG9scGgsIFBleXRvbiBCLiBhbmQgRGF2aXMsIEplc3NpZSBSLiBhbmQgU291c2EsIEFsZXhhbmRlciBBLiBhbmQgS29ibGFuLCBMdWtlIFcuIGFuZCBMZXZ5LCBKb25hdGhhbiBNLiBhbmQgQ2hlbiwgUGV0ZXIgSi4gYW5kIFdpbHNvbiwgQ2hyaXN0b3BoZXIgYW5kIE5ld2J5LCBHcmVnb3J5IEEuIGFuZCBSYWd1cmFtLCBBZGl0eWEgYW5kIExpdSwgRGF2aWQgUi59LFxyXG4gICAgeWVhciAgICAgICAgID0gMjAxOSxcclxuICAgIG1vbnRoICAgICAgICA9IGRlYyxcclxuICAgIGpvdXJuYWwgICAgICA9IHtOYXR1cmV9LFxyXG4gICAgcHVibGlzaGVyICAgID0ge05hdHVyZSBQdWJsaXNoaW5nIEdyb3VwfSxcclxuICAgIHZvbHVtZSAgICAgICA9IDU3NixcclxuICAgIG51bWJlciAgICAgICA9IDc3ODUsXHJcbiAgICBwYWdlcyAgICAgICAgPSB7MTQ5XHUyMDEzMTU3fSxcclxuICAgIGRvaSAgICAgICAgICA9IHsxMC4xMDM4L3M0MTU4Ni0wMTktMTcxMS00fSxcclxuICAgIGlzc24gICAgICAgICA9IHsxNDc2LTQ2ODd9LFxyXG4gICAgcmlnaHRzICAgICAgID0gezIwMTkgVGhlIEF1dGhvcihzKSwgdW5kZXIgZXhjbHVzaXZlIGxpY2VuY2UgdG8gU3ByaW5nZXIgTmF0dXJlIExpbWl0ZWR9LFxyXG4gICAgYWJzdHJhY3Rub3RlID0ge01vc3QgZ2VuZXRpYyB2YXJpYW50cyB0aGF0IGNvbnRyaWJ1dGUgdG8gZGlzZWFzZTEgYXJlIGNoYWxsZW5naW5nIHRvIGNvcnJlY3QgZWZmaWNpZW50bHkgYW5kIHdpdGhvdXQgZXhjZXNzIGJ5cHJvZHVjdHMyXHUyMDEzNS4gSGVyZSB3ZSBkZXNjcmliZSBwcmltZSBlZGl0aW5nLCBhIHZlcnNhdGlsZSBhbmQgcHJlY2lzZSBnZW5vbWUgZWRpdGluZyBtZXRob2QgdGhhdCBkaXJlY3RseSB3cml0ZXMgbmV3IGdlbmV0aWMgaW5mb3JtYXRpb24gaW50byBhIHNwZWNpZmllZCBETkEgc2l0ZSB1c2luZyBhIGNhdGFseXRpY2FsbHkgaW1wYWlyZWQgQ2FzOSBlbmRvbnVjbGVhc2UgZnVzZWQgdG8gYW4gZW5naW5lZXJlZCByZXZlcnNlIHRyYW5zY3JpcHRhc2UsIHByb2dyYW1tZWQgd2l0aCBhIHByaW1lIGVkaXRpbmcgZ3VpZGUgUk5BIChwZWdSTkEpIHRoYXQgYm90aCBzcGVjaWZpZXMgdGhlIHRhcmdldCBzaXRlIGFuZCBlbmNvZGVzIHRoZSBkZXNpcmVkIGVkaXQuIFdlIHBlcmZvcm1lZCBtb3JlIHRoYW4gMTc1IGVkaXRzIGluIGh1bWFuIGNlbGxzLCBpbmNsdWRpbmcgdGFyZ2V0ZWQgaW5zZXJ0aW9ucywgZGVsZXRpb25zLCBhbmQgYWxsIDEyIHR5cGVzIG9mIHBvaW50IG11dGF0aW9uLCB3aXRob3V0IHJlcXVpcmluZyBkb3VibGUtc3RyYW5kIGJyZWFrcyBvciBkb25vciBETkEgdGVtcGxhdGVzLiBXZSB1c2VkIHByaW1lIGVkaXRpbmcgaW4gaHVtYW4gY2VsbHMgdG8gY29ycmVjdCwgZWZmaWNpZW50bHkgYW5kIHdpdGggZmV3IGJ5cHJvZHVjdHMsIHRoZSBwcmltYXJ5IGdlbmV0aWMgY2F1c2VzIG9mIHNpY2tsZSBjZWxsIGRpc2Vhc2UgKHJlcXVpcmluZyBhIHRyYW5zdmVyc2lvbiBpbiBIQkIpIGFuZCBUYXlcdTIwMTNTYWNocyBkaXNlYXNlIChyZXF1aXJpbmcgYSBkZWxldGlvbiBpbiBIRVhBKTsgdG8gaW5zdGFsbCBhIHByb3RlY3RpdmUgdHJhbnN2ZXJzaW9uIGluIFBSTlA7IGFuZCB0byBpbnNlcnQgdmFyaW91cyB0YWdzIGFuZCBlcGl0b3BlcyBwcmVjaXNlbHkgaW50byB0YXJnZXQgbG9jaS4gRm91ciBodW1hbiBjZWxsIGxpbmVzIGFuZCBwcmltYXJ5IHBvc3QtbWl0b3RpYyBtb3VzZSBjb3J0aWNhbCBuZXVyb25zIHN1cHBvcnQgcHJpbWUgZWRpdGluZyB3aXRoIHZhcnlpbmcgZWZmaWNpZW5jaWVzLiBQcmltZSBlZGl0aW5nIHNob3dzIGhpZ2hlciBvciBzaW1pbGFyIGVmZmljaWVuY3kgYW5kIGZld2VyIGJ5cHJvZHVjdHMgdGhhbiBob21vbG9neS1kaXJlY3RlZCByZXBhaXIsIGhhcyBjb21wbGVtZW50YXJ5IHN0cmVuZ3RocyBhbmQgd2Vha25lc3NlcyBjb21wYXJlZCB0byBiYXNlIGVkaXRpbmcsIGFuZCBpbmR1Y2VzIG11Y2ggbG93ZXIgb2ZmLXRhcmdldCBlZGl0aW5nIHRoYW4gQ2FzOSBudWNsZWFzZSBhdCBrbm93biBDYXM5IG9mZi10YXJnZXQgc2l0ZXMuIFByaW1lIGVkaXRpbmcgc3Vic3RhbnRpYWxseSBleHBhbmRzIHRoZSBzY29wZSBhbmQgY2FwYWJpbGl0aWVzIG9mIGdlbm9tZSBlZGl0aW5nLCBhbmQgaW4gcHJpbmNpcGxlIGNvdWxkIGNvcnJlY3QgdXAgdG8gODklIG9mIGtub3duIGdlbmV0aWMgdmFyaWFudHMgYXNzb2NpYXRlZCB3aXRoIGh1bWFuIGRpc2Vhc2VzLn0sXHJcbiAgICBsYW5ndWFnZSAgICAgPSB7ZW59XHJcbiAgfWAsXHJcbiAgLyogIDIgLT4gNyBFaGVtYWxzIDcsIGpldHp0IDEzICovXHJcbiAgYEBhcnRpY2xle0ppbmVrX0NoeWxpbnNraV9Gb25mYXJhX0hhdWVyX0RvdWRuYV9DaGFycGVudGllcl8yMDEyLFxyXG4gICAgdGl0bGUgICAgICAgID0ge0EgcHJvZ3JhbW1hYmxlIGR1YWwgUk5BLWd1aWRlZCBETkEgZW5kb251Y2xlYXNlIGluIGFkYXB0aXZlIGJhY3RlcmlhbCBpbW11bml0eX0sXHJcbiAgICBhdXRob3IgICAgICAgPSB7SmluZWssIE1hcnRpbiBhbmQgQ2h5bGluc2tpLCBLcnp5c3p0b2YgYW5kIEZvbmZhcmEsIEluZXMgYW5kIEhhdWVyLCBNaWNoYWVsIGFuZCBEb3VkbmEsIEplbm5pZmVyIEEuIGFuZCBDaGFycGVudGllciwgRW1tYW51ZWxsZX0sXHJcbiAgICB5ZWFyICAgICAgICAgPSAyMDEyLFxyXG4gICAgbW9udGggICAgICAgID0gYXVnLFxyXG4gICAgam91cm5hbCAgICAgID0ge1NjaWVuY2V9LFxyXG4gICAgdm9sdW1lICAgICAgID0gMzM3LFxyXG4gICAgbnVtYmVyICAgICAgID0gNjA5NixcclxuICAgIHBhZ2VzICAgICAgICA9IHs4MTZcdTIwMTM4MjF9LFxyXG4gICAgZG9pICAgICAgICAgID0gezEwLjExMjYvc2NpZW5jZS4xMjI1ODI5fSxcclxuICAgIGlzc24gICAgICAgICA9IHswMDM2LTgwNzV9LFxyXG4gICAgYWJzdHJhY3Rub3RlID0ge0NSSVNQUi9DYXMgc3lzdGVtcyBwcm92aWRlIGJhY3RlcmlhIGFuZCBhcmNoYWVhIHdpdGggYWRhcHRpdmUgaW1tdW5pdHkgYWdhaW5zdCB2aXJ1c2VzIGFuZCBwbGFzbWlkcyBieSB1c2luZyBjclJOQXMgdG8gZ3VpZGUgdGhlIHNpbGVuY2luZyBvZiBpbnZhZGluZyBudWNsZWljIGFjaWRzLiBXZSBzaG93IGhlcmUgdGhhdCBpbiBhIHN1YnNldCBvZiB0aGVzZSBzeXN0ZW1zLCB0aGUgbWF0dXJlIGNyUk5BIGJhc2UtcGFpcmVkIHRvIHRyYW5zLWFjdGl2YXRpbmcgdHJhY3JSTkEgZm9ybXMgYSB0d28tUk5BIHN0cnVjdHVyZSB0aGF0IGRpcmVjdHMgdGhlIENSSVNQUi1hc3NvY2lhdGVkIHByb3RlaW4gQ2FzOSB0byBpbnRyb2R1Y2UgZG91YmxlLXN0cmFuZGVkIChkcykgYnJlYWtzIGluIHRhcmdldCBETkEuIEF0IHNpdGVzIGNvbXBsZW1lbnRhcnkgdG8gdGhlIGNyUk5BLWd1aWRlIHNlcXVlbmNlLCB0aGUgQ2FzOSBITkggbnVjbGVhc2UgZG9tYWluIGNsZWF2ZXMgdGhlIGNvbXBsZW1lbnRhcnkgc3RyYW5kIHdoaWxlIHRoZSBDYXM5IFJ1dkMtbGlrZSBkb21haW4gY2xlYXZlcyB0aGUgbm9uLWNvbXBsZW1lbnRhcnkgc3RyYW5kLiBUaGUgZHVhbC10cmFjclJOQTpjclJOQSwgd2hlbiBlbmdpbmVlcmVkIGFzIGEgc2luZ2xlIFJOQSBjaGltZXJhLCBhbHNvIGRpcmVjdHMgc2VxdWVuY2Utc3BlY2lmaWMgQ2FzOSBkc0ROQSBjbGVhdmFnZS4gT3VyIHN0dWR5IHJldmVhbHMgYSBmYW1pbHkgb2YgZW5kb251Y2xlYXNlcyB0aGF0IHVzZSBkdWFsLVJOQXMgZm9yIHNpdGUtc3BlY2lmaWMgRE5BIGNsZWF2YWdlIGFuZCBoaWdobGlnaHRzIHRoZSBwb3RlbnRpYWwgdG8gZXhwbG9pdCB0aGUgc3lzdGVtIGZvciBSTkEtcHJvZ3JhbW1hYmxlIGdlbm9tZSBlZGl0aW5nLiwgQSB0d28tUk5BIHN0cnVjdHVyZSBkaXJlY3RzIGFuIGVuZG9udWNsZWFzZSB0byBjbGVhdmUgdGFyZ2V0IEROQS59XHJcbiAgfWAsXHJcbiAgLyogMyAtPiA4IEVoZW1hbHMgOCwgamV0enQgMTQgKi9cclxuICBgQGFydGljbGV7R2FvX1JhdmVuZHJhbl9NaWtrZWxzZW5fSGFsZHJ1cF9DYWlfRGluZ19QYWx1ZGFuX1Rob21zZW5fTWlra2Vsc2VuX0Jha18yMDIyLFxyXG4gICAgdGl0bGUgICAgICAgID0ge0EgdHJ1bmNhdGVkIHJldmVyc2UgdHJhbnNjcmlwdGFzZSBlbmhhbmNlcyBwcmltZSBlZGl0aW5nIGJ5IHNwbGl0IEFBViB2ZWN0b3JzfSxcclxuICAgIGF1dGhvciAgICAgICA9IHtHYW8sIFpvbmdsaWFuZyBhbmQgUmF2ZW5kcmFuLCBTdWphbiBhbmQgTWlra2Vsc2VuLCBOYW5uYSBTLiBhbmQgSGFsZHJ1cCwgSmFrb2IgYW5kIENhaSwgSHVpcWlhbmcgYW5kIERpbmcsIFhpYW5nbmluZyBhbmQgUGFsdWRhbiwgU1x1MDBGOHJlbiBSLiBhbmQgVGhvbXNlbiwgTWFydGluIEsuIGFuZCBNaWtrZWxzZW4sIEphY29iIEdpZWhtIGFuZCBCYWssIFJhc211cyBPLn0sXHJcbiAgICB5ZWFyICAgICAgICAgPSAyMDIyLFxyXG4gICAgbW9udGggICAgICAgID0gc2VwLFxyXG4gICAgam91cm5hbCAgICAgID0ge01vbGVjdWxhciBUaGVyYXB5fSxcclxuICAgIHB1Ymxpc2hlciAgICA9IHtFbHNldmllcn0sXHJcbiAgICB2b2x1bWUgICAgICAgPSAzMCxcclxuICAgIG51bWJlciAgICAgICA9IDksXHJcbiAgICBwYWdlcyAgICAgICAgPSB7Mjk0Mlx1MjAxMzI5NTF9LFxyXG4gICAgZG9pICAgICAgICAgID0gezEwLjEwMTYvai55bXRoZS4yMDIyLjA3LjAwMX0sXHJcbiAgICBpc3NuICAgICAgICAgPSB7MTUyNS0wMDE2LCAxNTI1LTAwMjR9LFxyXG4gICAgbGFuZ3VhZ2UgICAgID0ge0VuZ2xpc2h9XHJcbiAgfWAsXHJcbiAgLyogNCAtPiA5IEhlbWVsYXMgOSwgamV0enQgMTUgKi9cclxuICBgQGFydGljbGV7Q2hlbl9IdXNzbWFubl9ZYW5fS25pcHBpbmdfUmF2aXNhbmthcl9DaGVuX0NoZW5fTmVsc29uX05ld2J5X1NhaGluXzIwMjEsXHJcbiAgICB0aXRsZSAgICAgICAgPSB7RW5oYW5jZWQgcHJpbWUgZWRpdGluZyBzeXN0ZW1zIGJ5IG1hbmlwdWxhdGluZyBjZWxsdWxhciBkZXRlcm1pbmFudHMgb2YgZWRpdGluZyBvdXRjb21lc30sXHJcbiAgICBhdXRob3IgICAgICAgPSB7Q2hlbiwgUGV0ZXIgSi4gYW5kIEh1c3NtYW5uLCBKZWZmcmV5IEEuIGFuZCBZYW4sIEp1biBhbmQgS25pcHBpbmcsIEZyaWVkZXJpa2UgYW5kIFJhdmlzYW5rYXIsIFB1cm5pbWEgYW5kIENoZW4sIFBpbi1GYW5nIGFuZCBDaGVuLCBDaWRpIGFuZCBOZWxzb24sIEphbWVzIFcuIGFuZCBOZXdieSwgR3JlZ29yeSBBLiBhbmQgU2FoaW4sIE11c3RhZmEgYW5kIE9zYm9ybiwgTWFyayBKLiBhbmQgV2Vpc3NtYW4sIEpvbmF0aGFuIFMuIGFuZCBBZGFtc29uLCBCcml0dCBhbmQgTGl1LCBEYXZpZCBSLn0sXHJcbiAgICB5ZWFyICAgICAgICAgPSAyMDIxLFxyXG4gICAgbW9udGggICAgICAgID0gb2N0LFxyXG4gICAgam91cm5hbCAgICAgID0ge0NlbGx9LFxyXG4gICAgdm9sdW1lICAgICAgID0gMTg0LFxyXG4gICAgbnVtYmVyICAgICAgID0gMjIsXHJcbiAgICBwYWdlcyAgICAgICAgPSB7NTYzNS0tNTY1Mn0sXHJcbiAgICBkb2kgICAgICAgICAgPSB7MTAuMTAxNi9qLmNlbGwuMjAyMS4wOS4wMTh9LFxyXG4gICAgaXNzbiAgICAgICAgID0gezAwOTItODY3NH0sXHJcbiAgICBhYnN0cmFjdG5vdGUgPSB7V2hpbGUgcHJpbWUgZWRpdGluZyBlbmFibGVzIHByZWNpc2Ugc2VxdWVuY2UgY2hhbmdlcyBpbiBETkEsIGNlbGx1bGFyIGRldGVybWluYW50cyBvZiBwcmltZSBlZGl0aW5nIHJlbWFpbiBwb29ybHkgdW5kZXJzdG9vZC4gVXNpbmcgcG9vbGVkIENSSVNQUmkgc2NyZWVucywgd2UgZGlzY292ZXJlZCB0aGF0IEROQSBtaXNtYXRjaCByZXBhaXIgKE1NUikgaW1wZWRlcyBwcmltZSBlZGl0aW5nIGFuZCBwcm9tb3RlcyB1bmRlc2lyZWQgaW5kZWwgYnlwcm9kdWN0cy4gV2UgZGV2ZWxvcGVkIFBFNCBhbmQgUEU1IHByaW1lIGVkaXRpbmcgc3lzdGVtcyBpbiB3aGljaCB0cmFuc2llbnQgZXhwcmVzc2lvbiBvZiBhbiBlbmdpbmVlcmVkIE1NUi1pbmhpYml0aW5nIHByb3RlaW4gZW5oYW5jZXMgdGhlIGVmZmljaWVuY3kgb2Ygc3Vic3RpdHV0aW9uLCBzbWFsbCBpbnNlcnRpb24sIGFuZCBzbWFsbCBkZWxldGlvbiBwcmltZSBlZGl0cyBieSBhbiBhdmVyYWdlIDcuNy1mb2xkIGFuZCAyLjAtZm9sZCBjb21wYXJlZCB0byBQRTIgYW5kIFBFMyBzeXN0ZW1zLCByZXNwZWN0aXZlbHksIHdoaWxlIGltcHJvdmluZyBlZGl0L2luZGVsIHJhdGlvcyBieSAzLjQtZm9sZCBpbiBNTVItcHJvZmljaWVudCBjZWxsIHR5cGVzLiBTdHJhdGVnaWMgaW5zdGFsbGF0aW9uIG9mIHNpbGVudCBtdXRhdGlvbnMgbmVhciB0aGUgaW50ZW5kZWQgZWRpdCBjYW4gZW5oYW5jZSBwcmltZSBlZGl0aW5nIG91dGNvbWVzIGJ5IGV2YWRpbmcgTU1SLiBQcmltZSBlZGl0b3IgcHJvdGVpbiBvcHRpbWl6YXRpb24gcmVzdWx0ZWQgaW4gYSBQRW1heCBhcmNoaXRlY3R1cmUgdGhhdCBlbmhhbmNlcyBlZGl0aW5nIGVmZmljYWN5IGJ5IDIuOC1mb2xkIG9uIGF2ZXJhZ2UgaW4gSGVMYSBjZWxscy4gVGhlc2UgZmluZGluZ3MgZW5yaWNoIG91ciB1bmRlcnN0YW5kaW5nIG9mIHByaW1lIGVkaXRpbmcgYW5kIGVzdGFibGlzaCBwcmltZSBlZGl0aW5nIHN5c3RlbXMgdGhhdCBzaG93IHN1YnN0YW50aWFsIGltcHJvdmVtZW50IGFjcm9zcyAxOTEgZWRpdHMgaW4gc2V2ZW4gbWFtbWFsaWFuIGNlbGwgdHlwZXMufVxyXG4gIH1gLFxyXG4gIC8qIDUgLT4gMTAgRWhlbWFscyAxMCwgamV0enQgMTYgKi9cclxuICBgQGFydGljbGV7VG9tZXJfQnVlcm1leWVyX05ndXllbl9MaXNrYXlfMjAwMixcclxuICAgIHRpdGxlICAgICAgICA9IHtDb250cmlidXRpb24gb2YgSHVtYW4gTWxoMSBhbmQgUG1zMiBBVFBhc2UgQWN0aXZpdGllcyB0byBETkEgTWlzbWF0Y2ggUmVwYWlyfSxcclxuICAgIGF1dGhvciAgICAgICA9IHtUb21lciwgR3V5IGFuZCBCdWVybWV5ZXIsIEFuZHJldyBCLiBhbmQgTmd1eWVuLCBNZWdhbiBNLiBhbmQgTGlza2F5LCBSLiBNaWNoYWVsfSxcclxuICAgIHllYXIgICAgICAgICA9IDIwMDIsXHJcbiAgICBtb250aCAgICAgICAgPSBqdW4sXHJcbiAgICBqb3VybmFsICAgICAgPSB7Sm91cm5hbCBvZiBCaW9sb2dpY2FsIENoZW1pc3RyeX0sXHJcbiAgICB2b2x1bWUgICAgICAgPSAyNzcsXHJcbiAgICBudW1iZXIgICAgICAgPSAyNCxcclxuICAgIHBhZ2VzICAgICAgICA9IHsyMTgwMVx1MjAxMzIxODA5fSxcclxuICAgIGRvaSAgICAgICAgICA9IHsxMC4xMDc0L2piYy5NMTExMzQyMjAwfSxcclxuICAgIGlzc24gICAgICAgICA9IHswMDIxLTkyNTh9LFxyXG4gICAgYWJzdHJhY3Rub3RlID0ge011dExcdTAzQjEsIGEgaGV0ZXJvZGltZXIgY29tcG9zZWQgb2YgTWxoMSBhbmQgUG1zMiwgaXMgdGhlIG1ham9yIE11dEwgYWN0aXZpdHkgaW4gbWFtbWFsaWFuIEROQSBtaXNtYXRjaCByZXBhaXIuIEhpZ2hseSBjb25zZXJ2ZWQgbW90aWZzIGluIHRoZSBOIHRlcm1pbmkgb2YgYm90aCBzdWJ1bml0cyBwcmVkaWN0IHRoYXQgdGhlIHByb3RlaW4gaXMgYW4gQVRQYXNlLiBUbyBzdHVkeSB0aGUgc2lnbmlmaWNhbmNlIG9mIHRoZXNlIG1vdGlmcyB0byBtaXNtYXRjaCByZXBhaXIsIHdlIGhhdmUgZXhwcmVzc2VkIGluIGluc2VjdCBjZWxscyB3aWxkIHR5cGUgaHVtYW4gTXV0TFx1MDNCMSBhbmQgZm9ybXMgYWx0ZXJlZCBpbiBjb25zZXJ2ZWQgZ2x1dGFtaWMgYWNpZCByZXNpZHVlcywgcHJlZGljdGVkIHRvIGNhdGFseXplIEFUUCBoeWRyb2x5c2lzIG9mIE1saDEsIFBtczIsIG9yIGJvdGguIFVzaW5nIGFuIGluIHZpdHJvIGFzc2F5LCB3ZSBzaG93ZWQgdGhhdCBNdXRMXHUwM0IxIHByb3RlaW5zIGFsdGVyZWQgaW4gZWl0aGVyIGdsdXRhbWljIGFjaWQgcmVzaWR1ZSB3ZXJlIGVhY2ggcGFydGlhbGx5IGRlZmVjdGl2ZSBpbiBtaXNtYXRjaCByZXBhaXIsIHdoZXJlYXMgdGhlIGRvdWJsZSBtdXRhbnQgc2hvd2VkIG5vIGRldGVjdGFibGUgbWlzbWF0Y2ggcmVwYWlyLiBOZWl0aGVyIHN0cmFuZCBzcGVjaWZpY2l0eSBub3IgZGlyZWN0aW9uYWxpdHkgb2YgcmVwYWlyIHdhcyBhZmZlY3RlZCBpbiB0aGUgc2luZ2xlIG11dGFudCBwcm90ZWlucy4gTGltaXRlZCBwcm90ZW9seXNpcyBzdHVkaWVzIG9mIE11dExcdTAzQjEgZGVtb25zdHJhdGVkIHRoYXQgYm90aCBNbGgxIGFuZCBQbXMyIE4tdGVybWluYWwgZG9tYWlucyB1bmRlcmdvIEFUUC1pbmR1Y2VkIGNvbmZvcm1hdGlvbmFsIGNoYW5nZXMsIGJ1dCB0aGUgZXh0ZW50IG9mIHRoZSBjb25mb3JtYXRpb25hbCBjaGFuZ2UgZm9yIE1saDEgd2FzIG1vcmUgYXBwYXJlbnQgdGhhbiBmb3IgUG1zMi4gRnVydGhlcm1vcmUsIE1saDEgd2FzIHByb3RlY3RlZCBhdCBsb3dlciBBVFAgY29uY2VudHJhdGlvbnMgdGhhbiBQbXMyLCBzdWdnZXN0aW5nIE1saDEgYmluZHMgQVRQIHdpdGggaGlnaGVyIGFmZmluaXR5LiBUaGVzZSBmaW5kaW5ncyBpbXBseSB0aGF0IEFUUCBoeWRyb2x5c2lzIGlzIHJlcXVpcmVkIGZvciBNdXRMXHUwM0IxIGFjdGl2aXR5IGluIG1pc21hdGNoIHJlcGFpciBhbmQgdGhhdCB0aGlzIGFjdGl2aXR5IGlzIGFzc29jaWF0ZWQgd2l0aCBkaWZmZXJlbnRpYWwgY29uZm9ybWF0aW9uYWwgY2hhbmdlcyBpbiBNbGgxIGFuZCBQbXMyLn1cclxuICB9YCxcclxuICAvKiA2IC0+IDExIEVoZW1hbHMgMTEsIGpldHp0IDE3ICovXHJcbiAgYEBhcnRpY2xle1d1X0NvcmJldHRfQmVybGFuZF8yMDA5LFxyXG4gICAgdGl0bGUgICAgICAgID0ge1RoZSBJbnRyYWNlbGx1bGFyIE1vYmlsaXR5IG9mIE51Y2xlYXIgSW1wb3J0IFJlY2VwdG9ycyBhbmQgTkxTIENhcmdvZXN9LFxyXG4gICAgYXV0aG9yICAgICAgID0ge1d1LCBKaWFucm9uZyBhbmQgQ29yYmV0dCwgQW5pdGEgSC4gYW5kIEJlcmxhbmQsIEtlaXRoIE0ufSxcclxuICAgIHllYXIgICAgICAgICA9IDIwMDksXHJcbiAgICBtb250aCAgICAgICAgPSBtYXksXHJcbiAgICBqb3VybmFsICAgICAgPSB7QmlvcGh5c2ljYWwgSm91cm5hbH0sXHJcbiAgICB2b2x1bWUgICAgICAgPSA5NixcclxuICAgIG51bWJlciAgICAgICA9IDksXHJcbiAgICBwYWdlcyAgICAgICAgPSB7Mzg0MFx1MjAxMzM4NDl9LFxyXG4gICAgZG9pICAgICAgICAgID0gezEwLjEwMTYvai5icGouMjAwOS4wMS4wNTB9LFxyXG4gICAgaXNzbiAgICAgICAgID0gezAwMDYtMzQ5NX0sXHJcbiAgICBhYnN0cmFjdG5vdGUgPSB7V2UgaGF2ZSBpbnZlc3RpZ2F0ZWQgY2xhc3NpY2FsIG51Y2xlYXIgbG9jYWxpemF0aW9uIHNlcXVlbmNlIChOTFMpIG1lZGlhdGVkIHByb3RlaW4gdHJhZmZpY2tpbmcgYnkgbWVhc3VyaW5nIGJpb21vbGVjdWxhciBkeW5hbWljcyB3aXRoaW4gbGl2aW5nIGNlbGxzIHVzaW5nIHR3by1waG90b24gZmx1b3Jlc2NlbmNlIGNvcnJlbGF0aW9uIHNwZWN0cm9zY29weS4gQnkgZGlyZWN0bHkgb2JzZXJ2aW5nIHRoZSBiZWhhdmlvciBvZiBzcGVjaWZpYyBtb2xlY3VsZXMgaW4gdGhlaXIgbmF0aXZlIGNlbGx1bGFyIGVudmlyb25tZW50LCBpdCBpcyBwb3NzaWJsZSB0byB1bmNvdmVyIGZ1bmN0aW9uYWwgZGV0YWlscyB0aGF0IGFyZSBub3QgYXBwYXJlbnQgZnJvbSB0cmFkaXRpb25hbCBiaW9jaGVtaWNhbCBpbnZlc3RpZ2F0aW9ucyBvciBmdW5jdGlvbmFsIGFzc2F5cy4gV2Ugc2hvdyB0aGF0IHRoZSBpbnRyYWNlbGx1bGFyIG1vYmlsaXR5IG9mIE5MUyBjYXJnb2VzIGFuZCB0aGVpciBpbXBvcnQgcmVjZXB0b3IgcHJvdGVpbnMsIGthcnlvcGhlcmluLVx1MDNCMSBhbmQga2FyeW9waGVyaW4tXHUwM0IyLCBjYW4gYmUgcm9idXN0bHkgbWVhc3VyZWQgYW5kIHRoYXQgcXVhbnRpdGF0aXZlIGNvbXBhcmlzb24gb2YgaW50cmFjZWxsdWxhciBkaWZmdXNpb24gY29lZmZpY2llbnRzIHByb3ZpZGVzIG5ldyBpbnNpZ2h0cyBpbnRvIG51Y2xlYXIgdHJhbnNwb3J0IG1lY2hhbmlzbXMuIEltcG9ydCBjYXJnbyBjb21wbGV4ZXMgYXJlIGFzc2VtYmxlZCB0aHJvdWdob3V0IHRoZSBjeXRvcGxhc20sIGFuZCB0aGVpciBkaWZmdXNpb24gaXMgc2xvd2VyIHRoYW4gcHJlZGljdGVkIGJ5IG1vbGVjdWxhciB3ZWlnaHQgZHVlIHRvIHNwZWNpZmljIGludGVyYWN0aW9ucy4gQW5hbHlzaXMgb2YgTkxTIGNhcmdvIGRpZmZ1c2lvbiBpbiB0aGUgY3l0b3BsYXNtIGluZGljYXRlcyB0aGF0IHRoZXNlIGludGVyYWN0aW9ucyBhcmUgbGlrZWx5IGRpc3J1cHRlZCBieSBOTFMgY2FyZ28gYmluZGluZy4gT3VyIHJlc3VsdHMgc3VnZ2VzdCB0aGF0IGRlbGl2ZXJ5IG9mIGltcG9ydCByZWNlcHRvcnMgYW5kIE5MUyBjYXJnb2VzIHRvIG51Y2xlYXIgcG9yZXMgbWF5IGNvbXBsZW1lbnQgc2VsZWN0aXZlIHRyYW5zbG9jYXRpb24gdGhyb3VnaCB0aGUgcG9yZXMgYXMgYSBmdW5jdGlvbmFsIG1lY2hhbmlzbSBmb3IgcmVndWxhdGluZyB0cmFuc3BvcnQgb2YgcHJvdGVpbnMgaW50byB0aGUgbnVjbGV1cy59XHJcbiAgfWAsXHJcbiAgLyogNyAtPiAxMiBFaGVtYWxzIDEyLCBqZXR6dCAxOCAqL1xyXG4gIGBAYXJ0aWNsZXtEYW5nX0xlZV8xOTg4LFxyXG4gICAgdGl0bGUgICAgICAgID0ge0lkZW50aWZpY2F0aW9uIG9mIHRoZSBodW1hbiBjLW15YyBwcm90ZWluIG51Y2xlYXIgdHJhbnNsb2NhdGlvbiBzaWduYWx9LFxyXG4gICAgYXV0aG9yICAgICAgID0ge0RhbmcsIEMuVi4gYW5kIExlZSwgVy5NLkYufSxcclxuICAgIHllYXIgICAgICAgICA9IDE5ODgsXHJcbiAgICBqb3VybmFsICAgICAgPSB7TW9sZWN1bGFyIGFuZCBDZWxsdWxhciBCaW9sb2d5fSxcclxuICAgIHZvbHVtZSAgICAgICA9IDgsXHJcbiAgICBudW1iZXIgICAgICAgPSAxMCxcclxuICAgIHBhZ2VzICAgICAgICA9IHs0MDQ4XHUyMDEzNDA1NH0sXHJcbiAgICBkb2kgICAgICAgICAgPSB7MTAuMTEyOC9NQ0IuOC4xMC40MDQ4fVxyXG4gIH1gXHJcbiAgLFxyXG4gIC8qIDggLT4gMTMgKi9cclxuICBgQGFydGljbGV7U3BlbmNlcl9aaGFuZ18yMDE3LFxyXG4gICAgdGl0bGUgICAgICAgID0ge0RlZXAgbXV0YXRpb25hbCBzY2FubmluZyBvZiBTLiBweW9nZW5lcyBDYXM5IHJldmVhbHMgaW1wb3J0YW50IGZ1bmN0aW9uYWwgZG9tYWluc30sXHJcbiAgICBhdXRob3IgICAgICAgPSB7U3BlbmNlciwgSi5NLiBhbmQgWmhhbmcsIFgufSxcclxuICAgIHllYXIgICAgICAgICA9IDIwMTcsXHJcbiAgICBqb3VybmFsICAgICAgPSB7U2NpZW50aWZpYyBSZXBvcnRzfSxcclxuICAgIHZvbHVtZSAgICAgICA9IDcsXHJcbiAgICBudW1iZXIgICAgICAgPSAxLFxyXG4gICAgZG9pICAgICAgICAgID0gezEwLjEwMzgvczQxNTk4LTAxNy0xNzA4MS15fSxcclxuICAgIGFic3RyYWN0bm90ZSA9IHtSTkEtZ3VpZGVkIGVuZG9udWNsZWFzZXMgKFJHRU5zKSBoYXZlIGludmlnb3JhdGVkIHRoZSBmaWVsZCBvZiBzaXRlLXNwZWNpZmljIG51Y2xlYXNlcy4gVGhlIHN1Y2Nlc3Mgb2YgU3RyZXB0b2NvY2N1cyBweW9nZW5lcyBDYXM5IChTcENhczkpIGhhcyBsZWQgdG8gdGhlIGRpc2NvdmVyeSBvZiBzZXZlcmFsIG90aGVyIENSSVNQUi1Bc3NvY2lhdGVkIFJHRU5zLiBBcyBtb3JlIFJHRU5zIGJlY29tZSBhdmFpbGFibGUsIGl0IHdpbGwgYmUgbmVjZXNzYXJ5IHRvIHJlZmluZSB0aGVpciBhY3Rpdml0eSBiZWZvcmUgdGhleSBjYW4gYmUgdHJhbnNsYXRlZCBpbnRvIHRoZSBjbGluaWMuIFdpdGggdGhpcyBpbiBtaW5kLCB3ZSBzb3VnaHQgdG8gZGVtb25zdHJhdGUgaG93IGRlZXAgbXV0YXRpb25hbCBzY2FubmluZyAoRE1TKSBjb3VsZCBwcm92aWRlIGRldGFpbHMgYWJvdXQgaW1wb3J0YW50IGZ1bmN0aW9uYWwgcmVnaW9ucyBpbiBTcENhczkgYW5kIHNwZWVkIGVuZ2luZWVyaW5nIGVmZm9ydHMuIENvbnNlcXVlbnRseSwgd2UgZGV2ZWxvcGVkIGEgbnVjbGVhc2Ugc2NyZWVuaW5nIHBsYXRmb3JtIHdoaWNoIGNvdWxkIGRpc3Rpbmd1aXNoIGFjdGl2ZSBDYXM5IG11dGFudHMuIFdlIHNjcmVlbmVkIGEgbGlicmFyeSBvZiAxLjkgXHUwMEQ3IDEwNyB3aXRoIG92ZXIgODUwMCBwb3NzaWJsZSBub24tc3lub255bW91cyBtdXRhdGlvbnMgYW5kIGluZmVycmVkIHRoZSBlZmZlY3RzIG9mIGVhY2ggbXV0YXRpb24gdXNpbmcgRE1TLiBXZSBkZW1vbnN0cmF0ZSB0aGF0IHRoZSBSdXZDIGFuZCBITkggZG9tYWlucyBhcmUgdGhlIGxlYXN0IHRvbGVyYW50IHJlZ2lvbnMgdG8gbXV0YXRpb24uIEluIGNvbnRyYXN0LCB0aGUgUmVjMiBhbmQgUEkgZG9tYWlucyB0b2xlcmF0ZSBtdXRhdGlvbiBiZXR0ZXIgdGhhbiBvdGhlciByZWdpb25zLiBUaGUgbXV0YXRpb24gaW5mb3JtYXRpb24gZGVmaW5lZCBpbiB0aGlzIHdvcmsgcHJvdmlkZXMgYSBmb3VuZGF0aW9uIGZvciBmdXJ0aGVyIFNwQ2FzOSBlbmdpbmVlcmluZy4gVG9nZXRoZXIsIG91ciByZXN1bHRzIGRlbW9uc3RyYXRlIGhvdyBETVMgY2FuIGJlIGEgcG93ZXJmdWwgdG9vbCB0byB1bmNvdmVyIGZlYXR1cmVzIGltcG9ydGFudCB0byBSR0VOIGZ1bmN0aW9uLiBBcHBsaWNhdGlvbiBvZiB0aGlzIGFwcHJvYWNoIHRvIGVtZXJnaW5nIFJHRU5zIHNob3VsZCBlbmhhbmNlIHRoZWlyIGVuZ2luZWVyaW5nIGFuZCBvcHRpbWl6YXRpb24gZm9yIHRoZXJhcGV1dGljIGFuZCBvdGhlciBhcHBsaWNhdGlvbnMuIFx1MDBBOSAyMDE3IFRoZSBBdXRob3IocykufVxyXG4gIH1gLCBcclxuIC8qIDkgLT4gMTQgKi9cclxuIGBAYXJ0aWNsZXtEb21hbl9QYW5kZXlfTmV1Z2ViYXVlcl9Bbl9EYXZpc19SYW5kb2xwaF9NY0Vscm95X0dhb19SYWd1cmFtX1JpY2h0ZXJfMjAyMyxcclxuICAgIHRpdGxlICAgICAgICA9IHtQaGFnZS1hc3Npc3RlZCBldm9sdXRpb24gYW5kIHByb3RlaW4gZW5naW5lZXJpbmcgeWllbGQgY29tcGFjdCwgZWZmaWNpZW50IHByaW1lIGVkaXRvcnN9LFxyXG4gICAgYXV0aG9yICAgICAgID0ge0RvbWFuLCBKb3JkYW4gTC4gYW5kIFBhbmRleSwgU21yaXRpIGFuZCBOZXVnZWJhdWVyLCBNb25pY2EgRS4gYW5kIEFuLCBNZWlydWkgYW5kIERhdmlzLCBKZXNzaWUgUi4gYW5kIFJhbmRvbHBoLCBQZXl0b24gQi4gYW5kIE1jRWxyb3ksIEFtYmVyIGFuZCBHYW8sIFhpbiBELiBhbmQgUmFndXJhbSwgQWRpdHlhIGFuZCBSaWNodGVyLCBNaWNoZWxsZSBGLiBhbmQgRXZlcmV0dGUsIEtlbGNlZSBBLiBhbmQgQmFuc2tvdGEsIFNhbWFneWEgYW5kIFRpYW4sIEthdGhyeW4gYW5kIFRhbywgWS4gQWxsZW4gYW5kIFRvbGFyLCBKYWt1YiBhbmQgT3Nib3JuLCBNYXJrIEouIGFuZCBMaXUsIERhdmlkIFIufSxcclxuICAgIHllYXIgICAgICAgICA9IDIwMjMsXHJcbiAgICBtb250aCAgICAgICAgPSBhdWcsXHJcbiAgICBqb3VybmFsICAgICAgPSB7Q2VsbH0sXHJcbiAgICBwdWJsaXNoZXIgICAgPSB7RWxzZXZpZXJ9LFxyXG4gICAgdm9sdW1lICAgICAgID0gMTg2LFxyXG4gICAgbnVtYmVyICAgICAgID0gMTgsXHJcbiAgICBwYWdlcyAgICAgICAgPSB7Mzk4My0tNDAwMn0sXHJcbiAgICBkb2kgICAgICAgICAgPSB7MTAuMTAxNi9qLmNlbGwuMjAyMy4wNy4wMzl9LFxyXG4gICAgaXNzbiAgICAgICAgID0gezAwOTItODY3NCwgMTA5Ny00MTcyfSxcclxuICAgIGxhbmd1YWdlICAgICA9IHtFbmdsaXNofVxyXG4gIH1gLCAvKiAxMCAtPiAxNSAqL1xyXG4gIGBAYXJ0aWNsZXtTb3VzYV9IZW1lel9MZWlfVHJhb3JlX0t1bGhhbmtvdmFfTmV3YnlfRG9tYW5fT3llX1BhbmRleV9LYXJwXzIwMjQsXHJcbiAgICB0aXRsZSAgICAgICAgPSB7U3lzdGVtYXRpYyBvcHRpbWl6YXRpb24gb2YgcHJpbWUgZWRpdGluZyBmb3IgdGhlIGVmZmljaWVudCBmdW5jdGlvbmFsIGNvcnJlY3Rpb24gb2YgQ0ZUUiBGNTA4ZGVsIGluIGh1bWFuIGFpcndheSBlcGl0aGVsaWFsIGNlbGxzfSxcclxuICAgIGF1dGhvciAgICAgICA9IHtTb3VzYSwgQWxleGFuZGVyIEEuIGFuZCBIZW1leiwgQ29saW4gYW5kIExlaSwgTGVpIGFuZCBUcmFvcmUsIFNvdW1iYSBhbmQgS3VsaGFua292YSwgS2F0YXJpbmEgYW5kIE5ld2J5LCBHcmVnb3J5IEEuIGFuZCBEb21hbiwgSm9yZGFuIEwuIGFuZCBPeWUsIEtleWVkZSBhbmQgUGFuZGV5LCBTbXJpdGkgYW5kIEthcnAsIFBoaWxpcCBILiBhbmQgTWNDcmF5LCBQYXVsIEIuIGFuZCBMaXUsIERhdmlkIFIufSxcclxuICAgIHllYXIgICAgICAgICA9IDIwMjQsXHJcbiAgICBtb250aCAgICAgICAgPSBqdWwsXHJcbiAgICBqb3VybmFsICAgICAgPSB7TmF0dXJlIEJpb21lZGljYWwgRW5naW5lZXJpbmd9LFxyXG4gICAgcHVibGlzaGVyICAgID0ge05hdHVyZSBQdWJsaXNoaW5nIEdyb3VwfSxcclxuICAgIHBhZ2VzICAgICAgICA9IHsxXHUyMDEzMTV9LFxyXG4gICAgZG9pICAgICAgICAgID0gezEwLjEwMzgvczQxNTUxLTAyNC0wMTIzMy0zfSxcclxuICAgIGlzc24gICAgICAgICA9IHsyMTU3LTg0Nlh9LFxyXG4gICAgcmlnaHRzICAgICAgID0gezIwMjQgVGhlIEF1dGhvcihzKX0sXHJcbiAgICBhYnN0cmFjdG5vdGUgPSB7UHJpbWUgZWRpdGluZyAoUEUpIGVuYWJsZXMgcHJlY2lzZSBhbmQgdmVyc2F0aWxlIGdlbm9tZSBlZGl0aW5nIHdpdGhvdXQgcmVxdWlyaW5nIGRvdWJsZS1zdHJhbmRlZCBETkEgYnJlYWtzLiBIZXJlIHdlIGRlc2NyaWJlIHRoZSBzeXN0ZW1hdGljIG9wdGltaXphdGlvbiBvZiBQRSBzeXN0ZW1zIHRvIGVmZmljaWVudGx5IGNvcnJlY3QgaHVtYW4gIEN5c3RpYyBGaWJyb3NpcyAoQ0YpIHRyYW5zbWVtYnJhbmUgY29uZHVjdGFuY2UgcmVndWxhdG9yIChDRlRSKSBGNTA4ZGVsLCBhIHRocmVlLW51Y2xlb3RpZGUgZGVsZXRpb24gdGhhdCBpcyB0aGUgcHJlZG9taW5hbnQgY2F1c2Ugb2YgQ0YuIEJ5IGNvbWJpbmluZyBzaXggZWZmaWNpZW5jeSBvcHRpbWl6YXRpb25zIGZvciBQRVx1MjAxNGVuZ2luZWVyZWQgUEUgZ3VpZGUgUk5BcywgdGhlIFBFbWF4IGFyY2hpdGVjdHVyZSwgdGhlIHRyYW5zaWVudCBleHByZXNzaW9uIG9mIGEgZG9taW5hbnQtbmVnYXRpdmUgbWlzbWF0Y2ggcmVwYWlyIHByb3RlaW4sIHN0cmF0ZWdpYyBzaWxlbnQgZWRpdHMsIFBFNiB2YXJpYW50cyBhbmQgcHJveGltYWwgXHUyMDE4ZGVhZFx1MjAxOSBzaW5nbGUtZ3VpZGUgUk5Bc1x1MjAxNHdlIGluY3JlYXNlZCBjb3JyZWN0aW9uIGVmZmljaWVuY2llcyBmb3IgQ0ZUUiBGNTA4ZGVsIGZyb20gbGVzcyB0aGFuIDAuNSUgaW4gSEVLMjkzVCBjZWxscyB0byA1OCUgaW4gaW1tb3J0YWxpemVkIGJyb25jaGlhbCBlcGl0aGVsaWFsIGNlbGxzIChhIDE0MC1mb2xkIGltcHJvdmVtZW50KSBhbmQgdG8gMjUlIGluIHBhdGllbnQtZGVyaXZlZCBhaXJ3YXkgZXBpdGhlbGlhbCBjZWxscy4gVGhlIG9wdGltaXphdGlvbnMgYWxzbyByZXN1bHRlZCBpbiBtaW5pbWFsIG9mZi10YXJnZXQgZWRpdGluZywgaW4gZWRpdC10by1pbmRlbCByYXRpb3MgMy41LWZvbGQgZ3JlYXRlciB0aGFuIHRob3NlIGFjaGlldmVkIGJ5IG51Y2xlYXNlLW1lZGlhdGVkIGhvbW9sb2d5LWRpcmVjdGVkIHJlcGFpciwgYW5kIGluIHRoZSBmdW5jdGlvbmFsIHJlc3RvcmF0aW9uIG9mIENGVFIgaW9uIGNoYW5uZWxzIHRvIG92ZXIgNTAlIG9mIHdpbGQtdHlwZSBsZXZlbHMgKHNpbWlsYXIgdG8gdGhvc2UgYWNoaWV2ZWQgdmlhIGNvbWJpbmF0aW9uIHRyZWF0bWVudCB3aXRoIGVsZXhhY2FmdG9yLCB0ZXphY2FmdG9yIGFuZCBpdmFjYWZ0b3IpIGluIHByaW1hcnkgYWlyd2F5IGNlbGxzLiBPdXIgZmluZGluZ3Mgc3VwcG9ydCB0aGUgZmVhc2liaWxpdHkgb2YgYSBkdXJhYmxlIG9uZS10aW1lIHRyZWF0bWVudCBmb3IgQ0YufSxcclxuICAgIGxhbmd1YWdlICAgICA9IHtlbn1cclxuICB9YCwgXHJcbiAgLyogMTEgLT4gMTYqL1xyXG4gIGBAYXJ0aWNsZXtZYW5fT3lsZXItQ2FzdHJpbGxvX1JhdmlzYW5rYXJfV2FyZF9MZXZlc3F1ZV9KaW5nX1NpbXBzb25fWmhhb19MaV9ZYW5fMjAyNCxcclxuICAgIHRpdGxlICAgICAgICA9IHtJbXByb3ZpbmcgcHJpbWUgZWRpdGluZyB3aXRoIGFuIGVuZG9nZW5vdXMgc21hbGwgUk5BLWJpbmRpbmcgcHJvdGVpbn0sXHJcbiAgICBhdXRob3IgICAgICAgPSB7WWFuLCBKdW4gYW5kIE95bGVyLUNhc3RyaWxsbywgUGF1bCBhbmQgUmF2aXNhbmthciwgUHVybmltYSBhbmQgV2FyZCwgQ2FybCBDLiBhbmQgTGV2ZXNxdWUsIFNcdTAwRTliYXN0aWVuIGFuZCBKaW5nLCBZYW5nd29kZSBhbmQgU2ltcHNvbiwgRGFubnkgYW5kIFpoYW8sIEFucWkgYW5kIExpLCBIdWkgYW5kIFlhbiwgV2VpaGFvIGFuZCBHb3VkeSwgTGFpbmUgYW5kIFNjaG1pZHQsIFJhbGYgYW5kIFNvbGxleSwgU2FicmluYSBDLiBhbmQgR2lsYmVydCwgTHVrZSBBLiBhbmQgQ2hhbiwgTWljaGVsbGUgTS4gYW5kIEJhdWVyLCBEYW5pZWwgRS4gYW5kIE1hcnNvbiwgQWxleGFuZGVyIGFuZCBQYXJzb25zLCBMYW5jZSBSLiBhbmQgQWRhbXNvbiwgQnJpdHR9LFxyXG4gICAgeWVhciAgICAgICAgID0gMjAyNCxcclxuICAgIG1vbnRoICAgICAgICA9IGFwcixcclxuICAgIGpvdXJuYWwgICAgICA9IHtOYXR1cmV9LFxyXG4gICAgdm9sdW1lICAgICAgID0gNjI4LFxyXG4gICAgbnVtYmVyICAgICAgID0gODAwOCxcclxuICAgIHBhZ2VzICAgICAgICA9IHs2MzlcdTIwMTM2NDd9LFxyXG4gICAgZG9pICAgICAgICAgID0gezEwLjEwMzgvczQxNTg2LTAyNC0wNzI1OS02fSxcclxuICAgIGlzc24gICAgICAgICA9IHswMDI4LTA4MzYsIDE0NzYtNDY4N30sXHJcbiAgICBhYnN0cmFjdG5vdGUgPSB7QWJzdHJhY3QgICAgICAgICAgICAgICAgICAgICAgICAgIFByaW1lIGVkaXRpbmcgZW5hYmxlcyB0aGUgcHJlY2lzZSBtb2RpZmljYXRpb24gb2YgZ2Vub21lcyB0aHJvdWdoIHJldmVyc2UgdHJhbnNjcmlwdGlvbiBvZiB0ZW1wbGF0ZSBzZXF1ZW5jZXMgYXBwZW5kZWQgdG8gdGhlIDNcdTIwMzIgZW5kcyBvZiBDUklTUFJcdTIwMTNDYXMgZ3VpZGUgUk5BcyAgICAgICAgICAgICAgMSAgICAgICAgICAgICAgLiBUbyBpZGVudGlmeSBjZWxsdWxhciBkZXRlcm1pbmFudHMgb2YgcHJpbWUgZWRpdGluZywgd2UgZGV2ZWxvcGVkIHNjYWxhYmxlIHByaW1lIGVkaXRpbmcgcmVwb3J0ZXJzIGFuZCBwZXJmb3JtZWQgZ2Vub21lLXNjYWxlIENSSVNQUi1pbnRlcmZlcmVuY2Ugc2NyZWVucy4gRnJvbSB0aGVzZSBzY3JlZW5zLCBhIHNpbmdsZSBmYWN0b3IgZW1lcmdlZCBhcyB0aGUgc3Ryb25nZXN0IG1lZGlhdG9yIG9mIHByaW1lIGVkaXRpbmc6IHRoZSBzbWFsbCBSTkEtYmluZGluZyBleG9udWNsZWFzZSBwcm90ZWN0aW9uIGZhY3RvciBMYS4gRnVydGhlciBpbnZlc3RpZ2F0aW9uIHJldmVhbGVkIHRoYXQgTGEgcHJvbW90ZXMgcHJpbWUgZWRpdGluZyBhY3Jvc3MgYXBwcm9hY2hlcyAoUEUyLCBQRTMsIFBFNCBhbmQgUEU1KSwgZWRpdCB0eXBlcyAoc3Vic3RpdHV0aW9ucywgaW5zZXJ0aW9ucyBhbmQgZGVsZXRpb25zKSwgZW5kb2dlbm91cyBsb2NpIGFuZCBjZWxsIHR5cGVzIGJ1dCBoYXMgbm8gY29uc2lzdGVudCBlZmZlY3Qgb24gZ2Vub21lLWVkaXRpbmcgYXBwcm9hY2hlcyB0aGF0IHJlbHkgb24gc3RhbmRhcmQsIHVuZXh0ZW5kZWQgZ3VpZGUgUk5Bcy4gUHJldmlvdXMgd29yayBoYXMgc2hvd24gdGhhdCBMYSBiaW5kcyBwb2x5dXJpZGluZSB0cmFjdHMgYXQgdGhlIDNcdTIwMzIgZW5kcyBvZiBSTkEgcG9seW1lcmFzZVx1MjAwOUlJSSB0cmFuc2NyaXB0cyAgICAgICAgICAgICAgMiAgICAgICAgICAgICAgLiBXZSBmb3VuZCB0aGF0IExhIGZ1bmN0aW9uYWxseSBpbnRlcmFjdHMgd2l0aCB0aGUgM1x1MjAzMiBlbmRzIG9mIHBvbHl1cmlkeWxhdGVkIHByaW1lIGVkaXRpbmcgZ3VpZGUgUk5BcyAocGVnUk5BcykuIEd1aWRlZCBieSB0aGVzZSByZXN1bHRzLCB3ZSBkZXZlbG9wZWQgYSBwcmltZSBlZGl0b3IgcHJvdGVpbiAoUEU3KSBmdXNlZCB0byB0aGUgUk5BLWJpbmRpbmcsIE4tdGVybWluYWwgZG9tYWluIG9mIExhLiBUaGlzIGVkaXRvciBpbXByb3ZlZCBwcmltZSBlZGl0aW5nIHdpdGggZXhwcmVzc2VkIHBlZ1JOQXMgYW5kIGVuZ2luZWVyZWQgcGVnUk5BcyAoZXBlZ1JOQXMpLCBhcyB3ZWxsIGFzIHdpdGggc3ludGhldGljIHBlZ1JOQXMgb3B0aW1pemVkIGZvciBMYSBiaW5kaW5nLiBUb2dldGhlciwgb3VyIHJlc3VsdHMgcHJvdmlkZSBrZXkgaW5zaWdodHMgaW50byBob3cgcHJpbWUgZWRpdGluZyBjb21wb25lbnRzIGludGVyYWN0IHdpdGggdGhlIGNlbGx1bGFyIGVudmlyb25tZW50IGFuZCBzdWdnZXN0IGdlbmVyYWwgc3RyYXRlZ2llcyBmb3Igc3RhYmlsaXppbmcgZXhvZ2Vub3VzIHNtYWxsIFJOQXMgdGhlcmVpbi59LFxyXG4gICAgbGFuZ3VhZ2UgICAgID0ge2VufVxyXG4gIH1gLCBcclxuICAvKiAxMiAtPiAxNyovXHJcbiAgXHJcbiAgYEBhcnRpY2xle1NpbW9uLFxyXG4gICAgdGl0bGUgICAgICAgID0ge1BFQVIsIGEgZmxleGlibGUgZmx1b3Jlc2NlbnQgcmVwb3J0ZXIgZm9yIHRoZSBpZGVudGlmaWNhdGlvbiBhbmQgZW5yaWNobWVudCBvZiBzdWNjZXNzZnVsbHkgcHJpbWUgZWRpdGVkIGNlbGxzfSxcclxuICAgIGF1dGhvciAgICAgICA9IHtTaW1vbiwgRG9yb3R0eWEgQW5uYSBhbmQgVFx1MDBFMWxhcywgQW5kclx1MDBFMXMgYW5kIEt1bGNzXHUwMEUxciwgUFx1MDBFOXRlciBJc3R2XHUwMEUxbiBhbmQgQmljelx1MDBGM2ssIFpzdXpzYW5uYSBhbmQgS3JhdXN6LCBTYXJhaCBMYXVyYSBhbmQgVlx1MDBFMXJhZHksIEd5XHUwMEY2cmd5IGFuZCBXZWxrZXIsIEVydmlufSxcclxuICAgIHllYXIgICAgICAgICA9IDIwMjIsXHJcbiAgICBtb250aCAgICAgICAgPSBmZWIsXHJcbiAgICBqb3VybmFsICAgICAgPSB7ZUxpZmV9LFxyXG4gICAgcHVibGlzaGVyICAgID0ge2VMaWZlIFNjaWVuY2VzIFB1YmxpY2F0aW9ucywgTHRkfSxcclxuICAgIHZvbHVtZSAgICAgICA9IDExLFxyXG4gICAgZG9pICAgICAgICAgID0gezEwLjc1NTQvZUxpZmUuNjk1MDR9LFxyXG4gICAgaXNzbiAgICAgICAgID0gezIwNTAtMDg0WH0sXHJcbiAgICBhYnN0cmFjdG5vdGUgPSB7UHJpbWUgZWRpdGluZyBpcyBhIHJlY2VudGx5IGRldmVsb3BlZCBDUklTUFIvQ2FzOSBiYXNlZCBnZW5lIGVuZ2luZWVyaW5nIHRvb2wgdGhhdCBhbGxvd3MgdGhlIGludHJvZHVjdGlvbiBvZiBzaG9ydCBpbnNlcnRpb25zLCBkZWxldGlvbnMsIGFuZCBzdWJzdGl0dXRpb25zIGludG8gdGhlIGdlbm9tZS4gSG93ZXZlciwgdGhlIGVmZmljaWVuY3kgb2YgcHJpbWUgZWRpdGluZywgd2hpY2ggdHlwaWNhbGx5IGFjaGlldmVzIGVkaXRpbmcgcmF0ZXMgb2YgYXJvdW5kIDEwJVx1MjAxMzMwJSwgaGFzIG5vdCBtYXRjaGVkIGl0cyB2ZXJzYXRpbGl0eS4gSGVyZSwgd2UgaW50cm9kdWNlIHRoZSBwcmltZSBlZGl0b3IgYWN0aXZpdHkgcmVwb3J0ZXIgKFBFQVIpLCBhIHNlbnNpdGl2ZSBmbHVvcmVzY2VudCB0b29sIGZvciBpZGVudGlmeWluZyBzaW5nbGUgY2VsbHMgd2l0aCBwcmltZSBlZGl0aW5nIGFjdGl2aXR5LiBQRUFSIGhhcyBubyBiYWNrZ3JvdW5kIGZsdW9yZXNjZW5jZSBhbmQgc3BlY2lmaWNhbGx5IGluZGljYXRlcyBwcmltZSBlZGl0aW5nIGV2ZW50cy4gSXRzIGRlc2lnbiBwcm92aWRlcyBhcHBhcmVudGx5IHVubGltaXRlZCBmbGV4aWJpbGl0eSBmb3Igc2VxdWVuY2UgdmFyaWF0aW9uIGFsb25nIHRoZSBlbnRpcmUgbGVuZ3RoIG9mIHRoZSBzcGFjZXIgc2VxdWVuY2UsIG1ha2luZyBpdCB1bmlxdWVseSBzdWl0ZWQgZm9yIHN5c3RlbWF0aWMgaW52ZXN0aWdhdGlvbiBvZiBzZXF1ZW5jZSBmZWF0dXJlcyB0aGF0IGluZmx1ZW5jZSBwcmltZSBlZGl0aW5nIGFjdGl2aXR5LiBUaGUgdXNlIG9mIFBFQVIgYXMgYW4gZW5yaWNobWVudCBtYXJrZXIgZm9yIHByaW1lIGVkaXRpbmcgY2FuIGluY3JlYXNlIHRoZSBlZGl0ZWQgcG9wdWxhdGlvbiBieSB1cCB0byA4NCUsIHRodXMgc2lnbmlmaWNhbnRseSBpbXByb3ZpbmcgdGhlIGFwcGxpY2FiaWxpdHkgb2YgcHJpbWUgZWRpdGluZyBmb3IgYmFzaWMgcmVzZWFyY2ggYW5kIGJpb3RlY2hub2xvZ2ljYWwgYXBwbGljYXRpb25zLn0sXHJcbiAgICBlZGl0b3IgICAgICAgPSB7TGFwaW5haXRlLCBBdWRyb25lIGFuZCBTdGFpbmllciwgRGlkaWVyIFlSIGFuZCBIYW1pbHRvbiwgSmVubmlmZXIgUn1cclxuICB9YCBcclxuXSIsICJpbXBvcnQgQmlidGV4UGFyc2VyIGZyb20gXCIuLi9jb21wb25lbnRzL21ha2VTb3VyY2VzXCI7XHJcblxyXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBFbmdQZWdzb3VyY2VzKCl7XHJcbiAgICByZXR1cm4gKFxyXG4gICAgICAgIDxkaXY+XHJcbiAgICAgICAgICA8QmlidGV4UGFyc2VyIGJpYnRleFNvdXJjZXM9e2JpYnRleFNvdXJjZXN9IHN0YXJ0PXsxOH0gLz5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgKTtcclxufVxyXG5cclxuXHJcbmNvbnN0IGJpYnRleFNvdXJjZXMgPSBbXHJcbmBcclxuICBAYXJ0aWNsZXtDaG93X0NoZW5fU2hlbl9DaGVuXzIwMjEsXHJcbiAgICB0aXRsZSAgICAgICAgPSB7QSB3ZWIgdG9vbCBmb3IgdGhlIGRlc2lnbiBvZiBwcmltZS1lZGl0aW5nIGd1aWRlIFJOQXN9LFxyXG4gICAgYXV0aG9yICAgICAgID0ge0Nob3csIFJ5YW4gRC4gYW5kIENoZW4sIEplbm5pZmVyIFMuIGFuZCBTaGVuLCBKb2hhbm5hIGFuZCBDaGVuLCBTaWRpfSxcclxuICAgIHllYXIgICAgICAgICA9IDIwMjEsXHJcbiAgICBtb250aCAgICAgICAgPSBmZWIsXHJcbiAgICBqb3VybmFsICAgICAgPSB7TmF0dXJlIEJpb21lZGljYWwgRW5naW5lZXJpbmd9LFxyXG4gICAgcHVibGlzaGVyICAgID0ge05hdHVyZSBQdWJsaXNoaW5nIEdyb3VwfSxcclxuICAgIHZvbHVtZSAgICAgICA9IDUsXHJcbiAgICBudW1iZXIgICAgICAgPSAyLFxyXG4gICAgcGFnZXMgICAgICAgID0gezE5MFx1MjAxMzE5NH0sXHJcbiAgICBkb2kgICAgICAgICAgPSB7MTAuMTAzOC9zNDE1NTEtMDIwLTAwNjIyLTh9LFxyXG4gICAgaXNzbiAgICAgICAgID0gezIxNTctODQ2WH0sXHJcbiAgICByaWdodHMgICAgICAgPSB7MjAyMCBUaGUgQXV0aG9yKHMpLCB1bmRlciBleGNsdXNpdmUgbGljZW5jZSB0byBTcHJpbmdlciBOYXR1cmUgTGltaXRlZH0sXHJcbiAgICBhYnN0cmFjdG5vdGUgPSB7UHJpbWUgZWRpdGluZyBlbmFibGVzIGRpdmVyc2UgZ2Vub21pYyBhbHRlcmF0aW9ucyB0byBiZSB3cml0dGVuIGludG8gdGFyZ2V0IHNpdGVzIHdpdGhvdXQgcmVxdWlyaW5nIGRvdWJsZS1zdHJhbmQgYnJlYWtzIG9yIGRvbm9yIHRlbXBsYXRlcy4gVGhlIGRlc2lnbiBvZiBwcmltZS1lZGl0aW5nIGd1aWRlIFJOQXMgKHBlZ1JOQXMpLCB3aGljaCBtdXN0IGJlIGN1c3RvbWl6ZWQgZm9yIGVhY2ggZWRpdCwgY2FuIGhvd2V2ZXIgYmUgY29tcGxleCBhbmQgdGltZSBjb25zdW1pbmcuIENvbXBhcmVkIHdpdGggc2luZ2xlIGd1aWRlIFJOQXMgKHNnUk5BcyksIHBlZ1JOQXMgaGF2ZSBhbiBhZGRpdGlvbmFsIDNcdTIwMzIgZXh0ZW5zaW9uIGNvbXBvc2VkIG9mIGEgcHJpbWVyIGJpbmRpbmcgc2l0ZSBhbmQgYSByZXZlcnNlLXRyYW5zY3JpcHRpb24gdGVtcGxhdGUuIEhlcmUgd2UgcmVwb3J0IGEgd2ViIHRvb2wsIHdoaWNoIHdlIG5hbWVkIHBlZ0ZpbmRlciAoaHR0cDovL3BlZ2ZpbmRlci5zaWRpY2hlbmxhYi5vcmcpLCBmb3IgdGhlIHJhcGlkIGRlc2lnbiBvZiBwZWdSTkFzIGZyb20gcmVmZXJlbmNlIGFuZCBlZGl0ZWQgRE5BIHNlcXVlbmNlcy4gcGVnRmluZGVyIGNhbiBpbmNvcnBvcmF0ZSBzZ1JOQSBvbi10YXJnZXQgYW5kIG9mZi10YXJnZXQgc2NvcmluZyBwcmVkaWN0aW9ucyBpbnRvIGl0cyByYW5raW5nIHN5c3RlbSwgYW5kIG5vbWluYXRlcyBzZWNvbmRhcnkgbmlja2luZyBzZ1JOQXMgZm9yIGluY3JlYXNpbmcgZWRpdGluZyBlZmZpY2llbmN5LiBDUklTUFItYXNzb2NpYXRlZCBwcm90ZWluIDkgdmFyaWFudHMgd2l0aCBleHBhbmRlZCB0YXJnZXRpbmcgcmFuZ2VzIGFyZSBhbHNvIHN1cHBvcnRlZC4gVG8gZmFjaWxpdGF0ZSBkb3duc3RyZWFtIGV4cGVyaW1lbnRhdGlvbiwgcGVnRmluZGVyIHByb2R1Y2VzIGEgY29tcHJlaGVuc2l2ZSB0YWJsZSBvZiBjYW5kaWRhdGUgcGVnUk5BcywgYWxvbmcgd2l0aCBvbGlnb251Y2xlb3RpZGUgc2VxdWVuY2VzIGZvciBjbG9uaW5nLn0sXHJcbiAgICBsYW5ndWFnZSAgICAgPSB7ZW59XHJcbiAgfVxyXG5gLGBcclxuICBAYXJ0aWNsZXtBbnphbG9uZV9SYW5kb2xwaF9EYXZpc19Tb3VzYV9Lb2JsYW5fTGV2eV9DaGVuX1dpbHNvbl9OZXdieV9SYWd1cmFtXzIwMTksXHJcbiAgICB0aXRsZSAgICAgICAgPSB7U2VhcmNoLWFuZC1yZXBsYWNlIGdlbm9tZSBlZGl0aW5nIHdpdGhvdXQgZG91YmxlLXN0cmFuZCBicmVha3Mgb3IgZG9ub3IgRE5BfSxcclxuICAgIGF1dGhvciAgICAgICA9IHtBbnphbG9uZSwgQW5kcmV3IFYuIGFuZCBSYW5kb2xwaCwgUGV5dG9uIEIuIGFuZCBEYXZpcywgSmVzc2llIFIuIGFuZCBTb3VzYSwgQWxleGFuZGVyIEEuIGFuZCBLb2JsYW4sIEx1a2UgVy4gYW5kIExldnksIEpvbmF0aGFuIE0uIGFuZCBDaGVuLCBQZXRlciBKLiBhbmQgV2lsc29uLCBDaHJpc3RvcGhlciBhbmQgTmV3YnksIEdyZWdvcnkgQS4gYW5kIFJhZ3VyYW0sIEFkaXR5YSBhbmQgTGl1LCBEYXZpZCBSLn0sXHJcbiAgICB5ZWFyICAgICAgICAgPSAyMDE5LFxyXG4gICAgbW9udGggICAgICAgID0gZGVjLFxyXG4gICAgam91cm5hbCAgICAgID0ge05hdHVyZX0sXHJcbiAgICBwdWJsaXNoZXIgICAgPSB7TmF0dXJlIFB1Ymxpc2hpbmcgR3JvdXB9LFxyXG4gICAgdm9sdW1lICAgICAgID0gNTc2LFxyXG4gICAgbnVtYmVyICAgICAgID0gNzc4NSxcclxuICAgIHBhZ2VzICAgICAgICA9IHsxNDlcdTIwMTMxNTd9LFxyXG4gICAgZG9pICAgICAgICAgID0gezEwLjEwMzgvczQxNTg2LTAxOS0xNzExLTR9LFxyXG4gICAgaXNzbiAgICAgICAgID0gezE0NzYtNDY4N30sXHJcbiAgICByaWdodHMgICAgICAgPSB7MjAxOSBUaGUgQXV0aG9yKHMpLCB1bmRlciBleGNsdXNpdmUgbGljZW5jZSB0byBTcHJpbmdlciBOYXR1cmUgTGltaXRlZH0sXHJcbiAgICBhYnN0cmFjdG5vdGUgPSB7TW9zdCBnZW5ldGljIHZhcmlhbnRzIHRoYXQgY29udHJpYnV0ZSB0byBkaXNlYXNlMSBhcmUgY2hhbGxlbmdpbmcgdG8gY29ycmVjdCBlZmZpY2llbnRseSBhbmQgd2l0aG91dCBleGNlc3MgYnlwcm9kdWN0czJcdTIwMTM1LiBIZXJlIHdlIGRlc2NyaWJlIHByaW1lIGVkaXRpbmcsIGEgdmVyc2F0aWxlIGFuZCBwcmVjaXNlIGdlbm9tZSBlZGl0aW5nIG1ldGhvZCB0aGF0IGRpcmVjdGx5IHdyaXRlcyBuZXcgZ2VuZXRpYyBpbmZvcm1hdGlvbiBpbnRvIGEgc3BlY2lmaWVkIEROQSBzaXRlIHVzaW5nIGEgY2F0YWx5dGljYWxseSBpbXBhaXJlZCBDYXM5IGVuZG9udWNsZWFzZSBmdXNlZCB0byBhbiBlbmdpbmVlcmVkIHJldmVyc2UgdHJhbnNjcmlwdGFzZSwgcHJvZ3JhbW1lZCB3aXRoIGEgcHJpbWUgZWRpdGluZyBndWlkZSBSTkEgKHBlZ1JOQSkgdGhhdCBib3RoIHNwZWNpZmllcyB0aGUgdGFyZ2V0IHNpdGUgYW5kIGVuY29kZXMgdGhlIGRlc2lyZWQgZWRpdC4gV2UgcGVyZm9ybWVkIG1vcmUgdGhhbiAxNzUgZWRpdHMgaW4gaHVtYW4gY2VsbHMsIGluY2x1ZGluZyB0YXJnZXRlZCBpbnNlcnRpb25zLCBkZWxldGlvbnMsIGFuZCBhbGwgMTIgdHlwZXMgb2YgcG9pbnQgbXV0YXRpb24sIHdpdGhvdXQgcmVxdWlyaW5nIGRvdWJsZS1zdHJhbmQgYnJlYWtzIG9yIGRvbm9yIEROQSB0ZW1wbGF0ZXMuIFdlIHVzZWQgcHJpbWUgZWRpdGluZyBpbiBodW1hbiBjZWxscyB0byBjb3JyZWN0LCBlZmZpY2llbnRseSBhbmQgd2l0aCBmZXcgYnlwcm9kdWN0cywgdGhlIHByaW1hcnkgZ2VuZXRpYyBjYXVzZXMgb2Ygc2lja2xlIGNlbGwgZGlzZWFzZSAocmVxdWlyaW5nIGEgdHJhbnN2ZXJzaW9uIGluIEhCQikgYW5kIFRheVx1MjAxM1NhY2hzIGRpc2Vhc2UgKHJlcXVpcmluZyBhIGRlbGV0aW9uIGluIEhFWEEpOyB0byBpbnN0YWxsIGEgcHJvdGVjdGl2ZSB0cmFuc3ZlcnNpb24gaW4gUFJOUDsgYW5kIHRvIGluc2VydCB2YXJpb3VzIHRhZ3MgYW5kIGVwaXRvcGVzIHByZWNpc2VseSBpbnRvIHRhcmdldCBsb2NpLiBGb3VyIGh1bWFuIGNlbGwgbGluZXMgYW5kIHByaW1hcnkgcG9zdC1taXRvdGljIG1vdXNlIGNvcnRpY2FsIG5ldXJvbnMgc3VwcG9ydCBwcmltZSBlZGl0aW5nIHdpdGggdmFyeWluZyBlZmZpY2llbmNpZXMuIFByaW1lIGVkaXRpbmcgc2hvd3MgaGlnaGVyIG9yIHNpbWlsYXIgZWZmaWNpZW5jeSBhbmQgZmV3ZXIgYnlwcm9kdWN0cyB0aGFuIGhvbW9sb2d5LWRpcmVjdGVkIHJlcGFpciwgaGFzIGNvbXBsZW1lbnRhcnkgc3RyZW5ndGhzIGFuZCB3ZWFrbmVzc2VzIGNvbXBhcmVkIHRvIGJhc2UgZWRpdGluZywgYW5kIGluZHVjZXMgbXVjaCBsb3dlciBvZmYtdGFyZ2V0IGVkaXRpbmcgdGhhbiBDYXM5IG51Y2xlYXNlIGF0IGtub3duIENhczkgb2ZmLXRhcmdldCBzaXRlcy4gUHJpbWUgZWRpdGluZyBzdWJzdGFudGlhbGx5IGV4cGFuZHMgdGhlIHNjb3BlIGFuZCBjYXBhYmlsaXRpZXMgb2YgZ2Vub21lIGVkaXRpbmcsIGFuZCBpbiBwcmluY2lwbGUgY291bGQgY29ycmVjdCB1cCB0byA4OSUgb2Yga25vd24gZ2VuZXRpYyB2YXJpYW50cyBhc3NvY2lhdGVkIHdpdGggaHVtYW4gZGlzZWFzZXMufSxcclxuICAgIGxhbmd1YWdlICAgICA9IHtlbn1cclxuICB9XHJcbmAsYFxyXG5AbWlzY3tEb21hbjIwMjQsXHJcblx0dGl0bGUgICAgICAgID0ge1ByaW1lIEVkaXRpbmcgV2ViaW5hcn0sXHJcblx0YXV0aG9yICAgICAgID0ge0pvcmRhbiBEb21hbn0sXHJcblx0eWVhciAgICAgICAgID0gMjAyNCxcclxuXHR1cmwgICAgICAgICAgPSB7aHR0cHM6Ly93d3cueW91dHViZS5jb20vd2F0Y2g/dj0wWl96dHZrdktVQX0sXHJcblx0bm90ZSAgICAgICAgID0ge0FjY2Vzc2VkOiBNYXkgMjAyNH0sXHJcblx0aG93cHVibGlzaGVkID0ge1lvdVR1YmV9XHJcbn1cclxuYCxgXHJcbiAgQGFydGljbGV7R2FsaWV0dGFfSGFnZ2llX1ZlcmttYW5fMjAwMSxcclxuICAgIHRpdGxlICAgICAgICA9IHtHcmVlbiBmbHVvcmVzY2VudCBwcm90ZWluLWJhc2VkIGhhbGlkZSBpbmRpY2F0b3JzIHdpdGggaW1wcm92ZWQgY2hsb3JpZGUgYW5kIGlvZGlkZSBhZmZpbml0aWVzfSxcclxuICAgIGF1dGhvciAgICAgICA9IHtHYWxpZXR0YSwgTHVpcyBKLlYgYW5kIEhhZ2dpZSwgUGV0ZXIgTSBhbmQgVmVya21hbiwgQS5zfSxcclxuICAgIHllYXIgICAgICAgICA9IDIwMDEsXHJcbiAgICBqb3VybmFsICAgICAgPSB7RkVCUyBMZXR0ZXJzfSxcclxuICAgIHZvbHVtZSAgICAgICA9IDQ5OSxcclxuICAgIG51bWJlciAgICAgICA9IDMsXHJcbiAgICBwYWdlcyAgICAgICAgPSB7MjIwXHUyMDEzMjI0fSxcclxuICAgIGRvaSAgICAgICAgICA9IHsxMC4xMDE2L1MwMDE0LTU3OTMoMDEpMDI1NjEtM30sXHJcbiAgICBpc3NuICAgICAgICAgPSB7MTg3My0zNDY4fSxcclxuICAgIHJpZ2h0cyAgICAgICA9IHtGRUJTIExldHRlcnMgNDk5ICgyMDAxKSAxODczLTM0NjggXHUwMEE5IDIwMTUgRmVkZXJhdGlvbiBvZiBFdXJvcGVhbiBCaW9jaGVtaWNhbCBTb2NpZXRpZXN9LFxyXG4gICAgYWJzdHJhY3Rub3RlID0ge1RoZSBncmVlbiBmbHVvcmVzY2VudCBwcm90ZWluIFlGUC1IMTQ4USBpcyBzZW5zaXRpdmUgdG8gaGFsaWRlcyBieSBhIG1lY2hhbmlzbSBpbnZvbHZpbmcgaGFsaWRlIGJpbmRpbmcgYW5kIGEgc2hpZnQgaW4gcEsgYS4gSG93ZXZlciwgYSBsaW1pdGF0aW9uIG9mIFlGUC1IMTQ4USBpcyBpdHMgbG93IGhhbGlkZSBzZW5zaXRpdml0eSwgd2l0aCBLIGQ+MTAwIG1NIGZvciBDbFx1MjIxMi4gSW5kaWNhdG9ycyB3aXRoIGltcHJvdmVkIHNlbnNpdGl2aXRpZXMgYXJlIG5lZWRlZCBmb3IgY2VsbCB0cmFuc3BvcnQgc3R1ZGllcywgcGFydGljdWxhcmx5IGluIGRydWcgZGlzY292ZXJ5IGJ5IGhpZ2gtdGhyb3VnaHB1dCBzY3JlZW5pbmcsIGFuZCBmb3IgbWVhc3VyZW1lbnQgb2YgQ2xcdTIyMTIgY29uY2VudHJhdGlvbiBpbiBzdWJjZWxsdWxhciBvcmdhbmVsbGVzLiBZRlAtSDE0OFEgbGlicmFyaWVzIHdlcmUgZ2VuZXJhdGVkIGluIHdoaWNoIHBhaXJzIG9mIHJlc2lkdWVzIGluIHRoZSB2aWNpbml0eSBvZiB0aGUgaGFsaWRlIGJpbmRpbmcgc2l0ZSB3ZXJlIHJhbmRvbWx5IG11dGF0ZWQuIEFuIGF1dG9tYXRlZCBwcm9jZWR1cmUgd2FzIGRldmVsb3BlZCB0byBzY3JlZW4gYmFjdGVyaWFsIGNvbG9uaWVzIGZvciBpbXByb3ZlZCBoYWxpZGUgc2Vuc2l0aXZpdHkuIEFuYWx5c2lzIG9mIDE1MzYgY2xvbmVzIHJldmVhbGVkIGltcHJvdmVkIGFuaW9uIHNlbnNpdGl2aXRpZXMgd2l0aCBLIGQgZG93biB0byAyIG1NIGZvciBJXHUyMjEyIChJMTUyTCksIDQwIG1NIGZvciBDbFx1MjIxMiAoVjE2M1MpLCBhbmQgMTAgbU0gZm9yIE5PMyBcdTIyMTIgKEkxNTJMKS4gVGhlIGFuaW9uLXNlbnNpdGl2ZSBtZWNoYW5pc20gb2YgdGhlc2UgaW5kaWNhdG9ycyB3YXMgZXN0YWJsaXNoZWQgYW5kIHRoZWlyIHV0aWxpdHkgaW4gY2VsbHMgd2FzIGRlbW9uc3RyYXRlZCB1c2luZyB0cmFuc2ZlY3RlZCBjZWxscyBleHByZXNzaW5nIHRoZSAgQ3lzdGljIEZpYnJvc2lzIHRyYW5zbWVtYnJhbmUgY29uZHVjdGFuY2UgcmVndWxhdG9yIGNobG9yaWRlIGNoYW5uZWwufSxcclxuICAgIGxhbmd1YWdlICAgICA9IHtlbn1cclxuICB9XHJcbmAsYFxyXG4gIEBhcnRpY2xle0J1bGNhZW5fS29ydGxldmVuX0xpdV9NYXVsZV9EcmVhbm9fS2VsbHlfRW5zaW5ja19UaGllcmllX1NtaXRzX0NpY2lhbmlfMjAyNCxcclxuICAgIHRpdGxlICAgICAgICA9IHtQcmltZSBlZGl0aW5nIGZ1bmN0aW9uYWxseSBjb3JyZWN0cyAgQ3lzdGljIEZpYnJvc2lzLWNhdXNpbmcgQ0ZUUiBtdXRhdGlvbnMgaW4gaHVtYW4gb3JnYW5vaWRzIGFuZCBhaXJ3YXkgZXBpdGhlbGlhbCBjZWxsc30sXHJcbiAgICBhdXRob3IgICAgICAgPSB7QnVsY2FlbiwgTWF0dGlqcyBhbmQgS29ydGxldmVuLCBQaFx1MDBFOWxpbmUgYW5kIExpdSwgUm9uYWxkIEIuIGFuZCBNYXVsZSwgR2l1bGlhIGFuZCBEcmVhbm8sIEVsaXNlIGFuZCBLZWxseSwgTWFpcmVhZCBhbmQgRW5zaW5jaywgTWFyam9sZWluIE0uIGFuZCBUaGllcmllLCBTYW0gYW5kIFNtaXRzLCBNYXhpbWUgYW5kIENpY2lhbmksIE1hdHRlbyBhbmQgSGF0dG9uLCBBdXJlbGllIGFuZCBDaGV2YWxpZXIsIEJlbm9pdCBhbmQgUmFtYWxobywgQW5hYmVsYSBTLiBhbmQgQ2FzYWRldmFsbCBpIFNvbHZhcywgWGF2aWVyIGFuZCBEZWJ5c2VyLCBaZWdlciBhbmQgVmVybWV1bGVuLCBGcmFuXHUwMEU3b2lzIGFuZCBHaWpzYmVycywgUmlrIGFuZCBTZXJtZXQtR2F1ZGVsdXMsIElzYWJlbGxlIGFuZCBDZXJlc2V0bywgQW5uYSBhbmQgQ2FybG9uLCBNYXJpYW5uZSBTLn0sXHJcbiAgICB5ZWFyICAgICAgICAgPSAyMDI0LFxyXG4gICAgbW9udGggICAgICAgID0gbWF5LFxyXG4gICAgam91cm5hbCAgICAgID0ge0NlbGwgUmVwb3J0cyBNZWRpY2luZX0sXHJcbiAgICBwYWdlcyAgICAgICAgPSAxMDE1NDQsXHJcbiAgICBkb2kgICAgICAgICAgPSB7MTAuMTAxNi9qLnhjcm0uMjAyNC4xMDE1NDR9LFxyXG4gICAgaXNzbiAgICAgICAgID0gezI2NjYtMzc5MX0sXHJcbiAgICBhYnN0cmFjdG5vdGUgPSB7UHJpbWUgZWRpdGluZyBpcyBhIHJlY2VudCwgQ1JJU1BSLWRlcml2ZWQgZ2Vub21lIGVkaXRpbmcgdGVjaG5vbG9neSBjYXBhYmxlIG9mIGludHJvZHVjaW5nIHByZWNpc2UgbnVjbGVvdGlkZSBzdWJzdGl0dXRpb25zLCBpbnNlcnRpb25zLCBhbmQgZGVsZXRpb25zLiBIZXJlLCB3ZSBwcmVzZW50IHByaW1lIGVkaXRpbmcgYXBwcm9hY2hlcyB0byBjb3JyZWN0IEwyMjdSLSBhbmQgTjEzMDNLLUNGVFIsIHR3byBtdXRhdGlvbnMgdGhhdCBjYXVzZSAgQ3lzdGljIEZpYnJvc2lzIGFuZCBhcmUgbm90IGVsaWdpYmxlIGZvciBjdXJyZW50IG1hcmtldC1hcHByb3ZlZCBtb2R1bGF0b3IgdGhlcmFwaWVzLiBXZSBzaG93IHRoYXQsIHVwb24gRE5BIGNvcnJlY3Rpb24gb2YgdGhlIENGVFIgZ2VuZSwgdGhlIGNvbXBsZXggZ2x5Y29zeWxhdGlvbiwgbG9jYWxpemF0aW9uLCBhbmQsIG1vc3QgaW1wb3J0YW50bHksIGZ1bmN0aW9uIG9mIHRoZSBDRlRSIHByb3RlaW4gYXJlIHJlc3RvcmVkIGluIEhFSzI5M1QgYW5kIDE2SEJFIGNlbGwgbGluZXMuIFRoZXNlIGZpbmRpbmdzIHdlcmUgc3Vic2VxdWVudGx5IHZhbGlkYXRlZCBpbiBwYXRpZW50LWRlcml2ZWQgcmVjdGFsIG9yZ2Fub2lkcyBhbmQgaHVtYW4gbmFzYWwgZXBpdGhlbGlhbCBjZWxscy4gVGhyb3VnaCBhbmFseXNpcyBvZiBwcmVkaWN0ZWQgYW5kIGV4cGVyaW1lbnRhbGx5IGlkZW50aWZpZWQgY2FuZGlkYXRlIG9mZi10YXJnZXQgc2l0ZXMgaW4gcHJpbWFyeSBzdGVtIGNlbGxzLCB3ZSBjb25maXJtIHByZXZpb3VzIHJlcG9ydHMgb24gdGhlIGhpZ2ggcHJpbWUgZWRpdG9yIChQRSkgc3BlY2lmaWNpdHkgYW5kIGl0cyBwb3RlbnRpYWwgZm9yIGEgY3VyYXRpdmUgQ0YgZ2VuZSBlZGl0aW5nIHRoZXJhcHkuIFRvIGZhY2lsaXRhdGUgZnV0dXJlIHNjcmVlbmluZyBvZiBnZW5ldGljIHN0cmF0ZWdpZXMgaW4gYSB0cmFuc2xhdGlvbmFsIENGIG1vZGVsLCBhIG1hY2hpbmUgbGVhcm5pbmcgYWxnb3JpdGhtIHdhcyBkZXZlbG9wZWQgZm9yIGR5bmFtaWMgcXVhbnRpZmljYXRpb24gb2YgQ0ZUUiBmdW5jdGlvbiBpbiBvcmdhbm9pZHMgKERFVEVDVE9SOiBcdTIwMUNkZXRlY3Rpb24gb2YgdGFyZ2V0ZWQgZWRpdGluZyBvZiBDRlRSIGluIG9yZ2Fub2lkc1x1MjAxRCkufVxyXG4gIH1cclxuYCxgXHJcbiAgQGFydGljbGV7UmVuel9WYWxkaXZpYS1GcmFuY2lhX1NlbmRvZWxfMjAyMCxcclxuICAgIHRpdGxlICAgICAgICA9IHtTb21lIGxpa2UgaXQgdHJhbnNsYXRlZDogc21hbGwgT1JGcyBpbiB0aGUgNVx1MjAzMlVUUn0sXHJcbiAgICBhdXRob3IgICAgICAgPSB7UmVueiwgUGV0ZXIgRi4gYW5kIFZhbGRpdmlhLUZyYW5jaWEsIEZhYmlvbGEgYW5kIFNlbmRvZWwsIEF0YW1hbn0sXHJcbiAgICB5ZWFyICAgICAgICAgPSAyMDIwLFxyXG4gICAgbW9udGggICAgICAgID0gbm92LFxyXG4gICAgam91cm5hbCAgICAgID0ge0V4cGVyaW1lbnRhbCBDZWxsIFJlc2VhcmNofSxcclxuICAgIHZvbHVtZSAgICAgICA9IDM5NixcclxuICAgIG51bWJlciAgICAgICA9IDEsXHJcbiAgICBwYWdlcyAgICAgICAgPSAxMTIyMjksXHJcbiAgICBkb2kgICAgICAgICAgPSB7MTAuMTAxNi9qLnlleGNyLjIwMjAuMTEyMjI5fSxcclxuICAgIGlzc24gICAgICAgICA9IHswMDE0LTQ4Mjd9LFxyXG4gICAgYWJzdHJhY3Rub3RlID0ge1RoZSA1XHUyMDMyIHVudHJhbnNsYXRlZCByZWdpb24gKDVcdTIwMzJVVFIpIGlzIGNyaXRpY2FsIGluIGRldGVybWluaW5nIHBvc3QtdHJhbnNjcmlwdGlvbmFsIGNvbnRyb2wsIHdoaWNoIGlzIHBhcnRseSBtZWRpYXRlZCBieSBzaG9ydCB1cHN0cmVhbSBvcGVuIHJlYWRpbmcgZnJhbWVzICh1T1JGcykgcHJlc2VudCBpbiBoYWxmIG9mIG1hbW1hbGlhbiB0cmFuc2NyaXB0cy4gdU9SRnMgYXJlIGdlbmVyYWxseSBjb25zaWRlcmVkIHRvIHByb3ZpZGUgZnVuY3Rpb25hbGx5IGltcG9ydGFudCByZXByZXNzaW9uIG9mIHRoZSBtYWluLU9SRiBieSBlbmdhZ2luZyBpbml0aWF0aW5nIHJpYm9zb21lcywgYnV0IHVuZGVyIHNwZWNpZmljIGVudmlyb25tZW50YWwgY29uZGl0aW9ucyBzdWNoIGFzIGNlbGx1bGFyIHN0cmVzcywgdU9SRnMgY2FuIGJlY29tZSBlc3NlbnRpYWwgdG8gYWN0aXZhdGUgdGhlIHRyYW5zbGF0aW9uIG9mIHRoZSBtYWluIGNvZGluZyBzZXF1ZW5jZS4gSW4gYWRkaXRpb24sIGEgZ3Jvd2luZyBudW1iZXIgb2YgdU9SRi1lbmNvZGVkIGJpb2FjdGl2ZSBtaWNyb3Byb3RlaW5zIGhhdmUgYmVlbiBkZXNjcmliZWQsIHdoaWNoIGhhdmUgdGhlIHBvdGVudGlhbCB0byBzaWduaWZpY2FudGx5IGluY3JlYXNlIGNlbGx1bGFyIHByb3RlaW4gZGl2ZXJzaXR5LiBIZXJlIHdlIHJldmlldyB0aGUgZGl2ZXJzZSBjZWxsdWxhciBjb250ZXh0cyBpbiB3aGljaCB1T1JGcyBwbGF5IGEgY3JpdGljYWwgcm9sZSBhbmQgZGlzY3VzcyB0aGUgbW9sZWN1bGFyIG1lY2hhbmlzbXMgdW5kZXJseWluZyB0aGVpciBmdW5jdGlvbiBhbmQgcmVndWxhdGlvbi4gVGhlIHByb2dyZXNzIG92ZXIgdGhlIGxhc3QgZGVjYWRlcyBpbiBkaXNzZWN0aW5nIHVPUkYgZnVuY3Rpb24gc3VnZ2VzdHMgdGhhdCB0aGUgNVx1MjAzMlVUUiByZW1haW5zIGFuIGV4Y2l0aW5nIGZyb250aWVyIHRvd2FyZHMgdW5kZXJzdGFuZGluZyBob3cgdGhlIGNlbGx1bGFyIHByb3Rlb21lIGlzIHNoYXBlZCBpbiBoZWFsdGggYW5kIGRpc2Vhc2UufVxyXG4gIH1cclxuYCxgXHJcbiAgQGFydGljbGV7TGlhbmdfSGVfWmhhb19aaHVfSHVfTGl1X0dhb19MaXVfWmhhbmdfUWl1XzIwMjQsXHJcbiAgICB0aXRsZSAgICAgICAgPSB7UHJpbWUgZWRpdGluZyB1c2luZyBDUklTUFItQ2FzMTJhIGFuZCBjaXJjdWxhciBSTkFzIGluIGh1bWFuIGNlbGxzfSxcclxuICAgIGF1dGhvciAgICAgICA9IHtMaWFuZywgUm9uZ2hvbmcgYW5kIEhlLCBaaXhpbiBhbmQgWmhhbywgS2V2aW4gVGlhbm1lbmcgYW5kIFpodSwgSGFvY2hlbmcgYW5kIEh1LCBKaWFjaGVuZyBhbmQgTGl1LCBHdWFud2VuIGFuZCBHYW8sIFFpYW5nIGFuZCBMaXUsIE1laXlhbiBhbmQgWmhhbmcsIFJ1aSBhbmQgUWl1LCBKaW4tTG9uZyBhbmQgR2FvLCBDYWl4aWF9LFxyXG4gICAgeWVhciAgICAgICAgID0gMjAyNCxcclxuICAgIG1vbnRoICAgICAgICA9IGphbixcclxuICAgIGpvdXJuYWwgICAgICA9IHtOYXR1cmUgQmlvdGVjaG5vbG9neX0sXHJcbiAgICBkb2kgICAgICAgICAgPSB7MTAuMTAzOC9zNDE1ODctMDIzLTAyMDk1LXh9LFxyXG4gICAgaXNzbiAgICAgICAgID0gezEwODctMDE1NiwgMTU0Ni0xNjk2fSxcclxuICAgIHVybCAgICAgICAgICA9IHtodHRwczovL3d3dy5uYXR1cmUuY29tL2FydGljbGVzL3M0MTU4Ny0wMjMtMDIwOTUteH0sXHJcbiAgICBsYW5ndWFnZSAgICAgPSB7ZW59XHJcbiAgfVxyXG5gXHJcbl0iLCAiaW1wb3J0IEJpYnRleFBhcnNlciBmcm9tIFwiLi4vY29tcG9uZW50cy9tYWtlU291cmNlc1wiO1xyXG5cclxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gRW5nTmlja3NvdXJjZXMoKXtcclxuICAgIHJldHVybiAoXHJcbiAgICAgICAgPGRpdj5cclxuICAgICAgICAgIDxCaWJ0ZXhQYXJzZXIgYmlidGV4U291cmNlcz17YmlidGV4U291cmNlc30gc3RhcnQ9ezI0fS8+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICk7XHJcbn1cclxuXHJcblxyXG5jb25zdCBiaWJ0ZXhTb3VyY2VzID0gW1xyXG4gIGBcclxuICBAYXJ0aWNsZXtTYWl0b19YdV9GYXVyZV9NYWd1aXJlX0thbm5hbl9BbHRhZS1UcmFuX1ZvX0Rlc2ltb25lX01hY3JhZV9aaGFuZ18yMDIzLFxyXG4gICAgdGl0bGUgICAgICAgID0ge0ZhbnpvciBpcyBhIGV1a2FyeW90aWMgcHJvZ3JhbW1hYmxlIFJOQS1ndWlkZWQgZW5kb251Y2xlYXNlfSxcclxuICAgIGF1dGhvciAgICAgICA9IHtTYWl0bywgTWFrb3RvIGFuZCBYdSwgUGVpeXUgYW5kIEZhdXJlLCBHdWlsaGVtIGFuZCBNYWd1aXJlLCBTYW1hbnRoYSBhbmQgS2FubmFuLCBTb3VteWEgYW5kIEFsdGFlLVRyYW4sIEhhbiBhbmQgVm8sIFNhbSBhbmQgRGVzaW1vbmUsIEFuQW4gYW5kIE1hY3JhZSwgUmhpYW5ub24gSy4gYW5kIFpoYW5nLCBGZW5nfSxcclxuICAgIHllYXIgICAgICAgICA9IDIwMjMsXHJcbiAgICBtb250aCAgICAgICAgPSBhdWcsXHJcbiAgICBqb3VybmFsICAgICAgPSB7TmF0dXJlfSxcclxuICAgIHB1Ymxpc2hlciAgICA9IHtOYXR1cmUgUHVibGlzaGluZyBHcm91cH0sXHJcbiAgICB2b2x1bWUgICAgICAgPSA2MjAsXHJcbiAgICBudW1iZXIgICAgICAgPSA3OTc0LFxyXG4gICAgcGFnZXMgICAgICAgID0gezY2MFx1MjAxMzY2OH0sXHJcbiAgICBkb2kgICAgICAgICAgPSB7MTAuMTAzOC9zNDE1ODYtMDIzLTA2MzU2LTJ9LFxyXG4gICAgaXNzbiAgICAgICAgID0gezE0NzYtNDY4N30sXHJcbiAgICByaWdodHMgICAgICAgPSB7MjAyMyBUaGUgQXV0aG9yKHMpfSxcclxuICAgIGFic3RyYWN0bm90ZSA9IHtSTkEtZ3VpZGVkIHN5c3RlbXMsIHdoaWNoIHVzZSBjb21wbGVtZW50YXJpdHkgYmV0d2VlbiBhIGd1aWRlIFJOQSBhbmQgdGFyZ2V0IG51Y2xlaWMgYWNpZCBzZXF1ZW5jZXMgZm9yIHJlY29nbml0aW9uIG9mIGdlbmV0aWMgZWxlbWVudHMsIGhhdmUgYSBjZW50cmFsIHJvbGUgaW4gYmlvbG9naWNhbCBwcm9jZXNzZXMgaW4gYm90aCBwcm9rYXJ5b3RlcyBhbmQgZXVrYXJ5b3Rlcy4gRm9yIGV4YW1wbGUsIHRoZSBwcm9rYXJ5b3RpYyBDUklTUFJcdTIwMTNDYXMgc3lzdGVtcyBwcm92aWRlIGFkYXB0aXZlIGltbXVuaXR5IGZvciBiYWN0ZXJpYSBhbmQgYXJjaGFlYSBhZ2FpbnN0IGZvcmVpZ24gZ2VuZXRpYyBlbGVtZW50cy4gQ2FzIGVmZmVjdG9ycyBzdWNoIGFzIENhczkgYW5kIENhczEyIHBlcmZvcm0gZ3VpZGUtUk5BLWRlcGVuZGVudCBETkEgY2xlYXZhZ2UxLiBBbHRob3VnaCBhIGZldyBldWthcnlvdGljIFJOQS1ndWlkZWQgc3lzdGVtcyBoYXZlIGJlZW4gc3R1ZGllZCwgaW5jbHVkaW5nIFJOQSBpbnRlcmZlcmVuY2UyIGFuZCByaWJvc29tYWwgUk5BIG1vZGlmaWNhdGlvbjMsIGl0IHJlbWFpbnMgdW5jbGVhciB3aGV0aGVyIGV1a2FyeW90ZXMgaGF2ZSBSTkEtZ3VpZGVkIGVuZG9udWNsZWFzZXMuIFJlY2VudGx5LCBhIG5ldyBjbGFzcyBvZiBwcm9rYXJ5b3RpYyBSTkEtZ3VpZGVkIHN5c3RlbXMgKHRlcm1lZCBPTUVHQSkgd2FzIHJlcG9ydGVkNCw1LiBUaGUgT01FR0EgZWZmZWN0b3IgVG5wQiBpcyB0aGUgcHV0YXRpdmUgYW5jZXN0b3Igb2YgQ2FzMTIgYW5kIGhhcyBSTkEtZ3VpZGVkIGVuZG9udWNsZWFzZSBhY3Rpdml0eTQsNi4gVG5wQiBtYXkgYWxzbyBiZSB0aGUgYW5jZXN0b3Igb2YgdGhlIGV1a2FyeW90aWMgdHJhbnNwb3Nvbi1lbmNvZGVkIEZhbnpvciAoRnopIHByb3RlaW5zNCw3LCByYWlzaW5nIHRoZSBwb3NzaWJpbGl0eSB0aGF0IGV1a2FyeW90ZXMgYXJlIGFsc28gZXF1aXBwZWQgd2l0aCBDUklTUFJcdTIwMTNDYXMgb3IgT01FR0EtbGlrZSBwcm9ncmFtbWFibGUgUk5BLWd1aWRlZCBlbmRvbnVjbGVhc2VzLiBIZXJlIHdlIHJlcG9ydCB0aGUgYmlvY2hlbWljYWwgY2hhcmFjdGVyaXphdGlvbiBvZiBGeiwgc2hvd2luZyB0aGF0IGl0IGlzIGFuIFJOQS1ndWlkZWQgRE5BIGVuZG9udWNsZWFzZS4gV2UgYWxzbyBzaG93IHRoYXQgRnogY2FuIGJlIHJlcHJvZ3JhbW1lZCBmb3IgaHVtYW4gZ2Vub21lIGVuZ2luZWVyaW5nIGFwcGxpY2F0aW9ucy4gRmluYWxseSwgd2UgcmVzb2x2ZSB0aGUgc3RydWN0dXJlIG9mIFNwaXplbGxvbXljZXMgcHVuY3RhdHVzIEZ6IGF0IDIuN1x1MjAwOVx1MDBDNSB1c2luZyBjcnlvZ2VuaWMgZWxlY3Ryb24gbWljcm9zY29weSwgc2hvd2luZyB0aGUgY29uc2VydmF0aW9uIG9mIGNvcmUgcmVnaW9ucyBhbW9uZyBGeiwgVG5wQiBhbmQgQ2FzMTIsIGRlc3BpdGUgZGl2ZXJzZSBjb2duYXRlIFJOQSBzdHJ1Y3R1cmVzLiBPdXIgcmVzdWx0cyBzaG93IHRoYXQgRnogaXMgYSBldWthcnlvdGljIE9NRUdBIHN5c3RlbSwgZGVtb25zdHJhdGluZyB0aGF0IFJOQS1ndWlkZWQgZW5kb251Y2xlYXNlcyBhcmUgcHJlc2VudCBpbiBhbGwgdGhyZWUgZG9tYWlucyBvZiBsaWZlLn0sXHJcbiAgICBsYW5ndWFnZSAgICAgPSB7ZW59XHJcbiAgfVxyXG4gIGAsYFxyXG4gIEBhcnRpY2xle2lqbXMyNTAzMTYyMixcclxuICAgIHRpdGxlICAgICAgICA9IHtBbiBFZmZpY2llbnQgRXhwcmVzc2lvbiBhbmQgUHVyaWZpY2F0aW9uIFByb3RvY29sIGZvciBTcENhczkgTnVjbGVhc2UgYW5kIEV2YWx1YXRpb24gb2YgRGlmZmVyZW50IERlbGl2ZXJ5IE1ldGhvZHMgb2YgUmlib251Y2xlb3Byb3RlaW59LFxyXG4gICAgYXV0aG9yICAgICAgID0ge0V2bWVub3YsIEtvbnN0YW50aW4gYW5kIFB1c3RvZ2Fyb3YsIE5pa29sYXkgYW5kIFBhbnRlbGVldiwgRG1pdHJpIGFuZCBTYWZpbiwgQXJ0dXIgYW5kIEFsa2FsYWV2YSwgRWxlbmF9LFxyXG4gICAgeWVhciAgICAgICAgID0gMjAyNCxcclxuICAgIGpvdXJuYWwgICAgICA9IHtJbnRlcm5hdGlvbmFsIEpvdXJuYWwgb2YgTW9sZWN1bGFyIFNjaWVuY2VzfSxcclxuICAgIHZvbHVtZSAgICAgICA9IDI1LFxyXG4gICAgbnVtYmVyICAgICAgID0gMyxcclxuICAgIGRvaSAgICAgICAgICA9IHsxMC4zMzkwL2lqbXMyNTAzMTYyMn0sXHJcbiAgICBpc3NuICAgICAgICAgPSB7MTQyMi0wMDY3fSxcclxuICAgIHVybCAgICAgICAgICA9IHtodHRwczovL3d3dy5tZHBpLmNvbS8xNDIyLTAwNjcvMjUvMy8xNjIyfSxcclxuICAgIGFydGljbGUtbnVtYmVyID0gMTYyMixcclxuICAgIHB1Ym1lZGlkICAgICA9IDM4MzM4ODk4LFxyXG4gICAgYWJzdHJhY3QgICAgID0ge1RoZSBDbHVzdGVyZWQgUmVndWxhcmx5IEludGVyc3BhY2VkIFNob3J0IFBhbGluZHJvbWljIFJlcGVhdHMgKENSSVNQUiktQ2FzOSBzeXN0ZW0gaXMgYSByZXZvbHV0aW9uYXJ5IHRvb2wgZm9yIHByZWNpc2UgZ2Vub21lIGVkaXRpbmcgYWNyb3NzIHZhcmlvdXMgY2VsbCB0eXBlcy4gUmlib251Y2xlb3Byb3RlaW5zIChSTlBzKSwgZW5jb21wYXNzaW5nIHRoZSBDYXM5IHByb3RlaW4gYW5kIGd1aWRlIFJOQSAoZ1JOQSksIGhhdmUgZW1lcmdlZCBhcyBhIHByb21pc2luZyB0ZWNobmlxdWUgZHVlIHRvIHRoZWlyIGluY3JlYXNlZCBzcGVjaWZpY2l0eSBhbmQgcmVkdWNlZCBvZmYtdGFyZ2V0IGVmZmVjdHMuIFRoaXMgbWV0aG9kIGVsaW1pbmF0ZXMgdGhlIG5lZWQgZm9yIHBsYXNtaWQgRE5BIGludHJvZHVjdGlvbiwgdGhlcmVieSBwcmV2ZW50aW5nIHBvdGVudGlhbCBpbnRlZ3JhdGlvbiBvZiBmb3JlaWduIEROQSBpbnRvIHRoZSB0YXJnZXQgY2VsbCBnZW5vbWUuIEdpdmVuIHRoZSByZXF1aXJlbWVudCBmb3IgbGFyZ2UgcXVhbnRpdGllcyBvZiBoaWdobHkgcHVyaWZpZWQgcHJvdGVpbiBpbiB2YXJpb3VzIENhczkgc3R1ZGllcywgd2UgcHJlc2VudCBhbiBlZmZpY2llbnQgYW5kIHNpbXBsZSBtZXRob2QgZm9yIHRoZSBwcmVwYXJhdGlvbiBvZiByZWNvbWJpbmFudCBTdHJlcHRvY29jY3VzIHB5b2dlbmVzIENhczkgKFNwQ2FzOSkgcHJvdGVpbi4gVGhpcyBtZXRob2QgbGV2ZXJhZ2VzIHRoZSBTbWFsbCBVYmlxdWl0aW4gTGlrZSBNb2RpZmllcihTVU1PKSB0YWcgc3lzdGVtLCB3aGljaCBpbmNsdWRlcyBtZXRhbC1hZmZpbml0eSBjaHJvbWF0b2dyYXBoeSBmb2xsb3dlZCBieSBhbmlvbi1leGNoYW5nZSBjaHJvbWF0b2dyYXBoeSBwdXJpZmljYXRpb24uIEZ1cnRoZXJtb3JlLCB3ZSBjb21wYXJlIHR3byBtZXRob2RzIG9mIENSSVNQUi1DYXM5IHN5c3RlbSBkZWxpdmVyeSBpbnRvIGNlbGxzOiB0cmFuc2ZlY3Rpb24gd2l0aCBwbGFzbWlkIEROQSBlbmNvZGluZyB0aGUgQ1JJU1BSLUNhczkgc3lzdGVtIGFuZCBSTlAgdHJhbnNmZWN0aW9uIHdpdGggdGhlIENhczktZ1JOQSBjb21wbGV4LiBXZSBlc3RpbWF0ZSB0aGUgZWZmaWNpZW5jeSBvZiBnZW5vbWljIGVkaXRpbmcgYW5kIHByb3RlaW4gbGlmZXNwYW4gcG9zdC10cmFuc2ZlY3Rpb24uIEludHJpZ3VpbmdseSwgd2UgZm91bmQgdGhhdCBSTlAgdHJlYXRtZW50IG9mIGNlbGxzLCBldmVuIGluIHRoZSBhYnNlbmNlIG9mIGEgdHJhbnNmZWN0aW9uIHN5c3RlbSwgaXMgYSByZWxhdGl2ZWx5IGVmZmljaWVudCBtZXRob2QgZm9yIFJOUCBkZWxpdmVyeSBpbnRvIGNlbGwgY3VsdHVyZS4gVGhpcyBkaXNjb3ZlcnkgaXMgcGFydGljdWxhcmx5IHByb21pc2luZyBhcyBpdCBjYW4gc2lnbmlmaWNhbnRseSByZWR1Y2UgY3l0b3RveGljaXR5LCB3aGljaCBpcyBjcnVjaWFsIGZvciBjZXJ0YWluIGNlbGwgY3VsdHVyZXMgc3VjaCBhcyBpbmR1Y2VkIHBsdXJpcG90ZW50IHN0ZW0gY2VsbHMgKGlQU0NzKS59XHJcbiAgfVxyXG4gIGAsYFxyXG4gIEBhcnRpY2xle0hpbGxhcnkyMDIzUmV2aWV3LFxyXG4gICAgdGl0bGUgICAgICAgID0ge0EgUmV2aWV3IG9uIHRoZSBNZWNoYW5pc20gYW5kIEFwcGxpY2F0aW9ucyBvZiBDUklTUFIvQ2FzOS9DYXMxMi9DYXMxMy9DYXMxNCBQcm90ZWlucyBVdGlsaXplZCBmb3IgR2Vub21lIEVuZ2luZWVyaW5nfSxcclxuICAgIGF1dGhvciAgICAgICA9IHtIaWxsYXJ5LCBWLiBFLiBhbmQgQ2Vhc2FyLCBTLiBBLn0sXHJcbiAgICB5ZWFyICAgICAgICAgPSAyMDIzLFxyXG4gICAgam91cm5hbCAgICAgID0ge01vbGVjdWxhciBCaW90ZWNobm9sb2d5fSxcclxuICAgIHZvbHVtZSAgICAgICA9IDY1LFxyXG4gICAgcGFnZXMgICAgICAgID0gezMxMS0tMzI1fSxcclxuICAgIGRvaSAgICAgICAgICA9IHsxMC4xMDA3L3MxMjAzMy0wMjItMDA1NjctMH1cclxuICB9XHJcbiAgYCxgXHJcbiAgQGFydGljbGV7MTAuMzM4OS9mZ2VlZC4yMDI0LjE0NzE3MjAsXHJcbiAgICB0aXRsZSAgICAgICAgPSB7VXNlIG9mIHBhaXJlZCBDYXM5LU5HIG5pY2thc2UgYW5kIHRydW5jYXRlZCBzZ1JOQXMgZm9yIHNpbmdsZS1udWNsZW90aWRlIG1pY3JvYmlhbCBnZW5vbWUgZWRpdGluZ30sXHJcbiAgICBhdXRob3IgICAgICAgPSB7SmVvbmcsIFNvbmcgSGVlICBhbmQgTGVlLCBIbyBKb3VuZyAgYW5kIExlZSwgU2FuZyBKdW59LFxyXG4gICAgeWVhciAgICAgICAgID0gMjAyNCxcclxuICAgIGpvdXJuYWwgICAgICA9IHtGcm9udGllcnMgaW4gR2Vub21lIEVkaXRpbmd9LFxyXG4gICAgdm9sdW1lICAgICAgID0gNixcclxuICAgIGRvaSAgICAgICAgICA9IHsxMC4zMzg5L2ZnZWVkLjIwMjQuMTQ3MTcyMH0sXHJcbiAgICBpc3NuICAgICAgICAgPSB7MjY3My0zNDM5fSxcclxuICAgIHVybCAgICAgICAgICA9IHtodHRwczovL3d3dy5mcm9udGllcnNpbi5vcmcvam91cm5hbHMvZ2Vub21lLWVkaXRpbmcvYXJ0aWNsZXMvMTAuMzM4OS9mZ2VlZC4yMDI0LjE0NzE3MjB9LFxyXG4gICAgYWJzdHJhY3QgICAgID0gezxwPlRoZSBwYWlyZWQgbmlja2FzZXMgYXBwcm9hY2gsIHdoaWNoIHV0aWxpemVzIGNsdXN0ZXJlZCByZWd1bGFybHkgaW50ZXJzcGFjZWQgc2hvcnQgcGFsaW5kcm9taWMgcmVwZWF0cyAoQ1JJU1BSKS1DUklTUFItYXNzb2NpYXRlZCBwcm90ZWlucyAoQ2FzKSBuaWNrYXNlIGFuZCBkdWFsIGd1aWRlIFJOQSwgaGFzIHRoZSBhZHZhbnRhZ2Ugb2YgcmVkdWNpbmcgb2ZmLXRhcmdldCBlZmZlY3RzIGJ5IGJlaW5nIGFibGUgdG8gZG91YmxlIHRoZSB0YXJnZXQgc2VxdWVuY2UuIEluIHRoaXMgc3R1ZHksIG91ciByZXNlYXJjaCB1dGlsaXplZCB0aGUgQ2FzOS1ORyBuaWNrYXNlIHZhcmlhbnQgdG8gbWluaW1pemUgUEFNIHNlcXVlbmNlIGNvbnN0cmFpbnRzLCBlbmFibGluZyB0aGUgZ2VuZXJhdGlvbiBvZiBwYWlyZWQgbmlja3MgYXQgZGVzaXJlZCBnZW5vbWljIGxvY2kuIFdlIHBlcmZvcm1lZCBhIHN5c3RlbWF0aWMgaW52ZXN0aWdhdGlvbiBpbnRvIHRoZSBmb3JtYXRpb24gc2l0ZXMgZm9yIGRvdWJsZSBuaWNrcyBhbmQgdGhlIGRlc2lnbiBvZiBkb25vciBETkEgd2l0aGluIGEgYmFjdGVyaWFsIG1vZGVsIHN5c3RlbS4gQWx0aG91Z2ggd2Ugc3VjY2Vzc2Z1bGx5IGlkZW50aWZpZWQgdGhlIGNvbmRpdGlvbnMgbmVjZXNzYXJ5IGZvciB0aGUgZWZmZWN0aXZlIGZvcm1hdGlvbiBvZiBkb3VibGUgbmlja3MgPGl0YWxpYz5pbiB2aXZvPC9pdGFsaWM+LCBhY2hpZXZpbmcgc2luZ2xlLW51Y2xlb3RpZGUgbGV2ZWwgZWRpdGluZyBkaXJlY3RseSBhdCB0aGUgdGFyZ2V0IHNpdGVzIGluIHRoZSBnZW5vbWUgcHJvdmVkIGNoYWxsZW5naW5nLiBOb25ldGhlbGVzcywgb3VyIGV4cGVyaW1lbnRzIHJldmVhbGVkIHRoYXQgZWZmaWNpZW50IGVkaXRpbmcgYXQgdGhlIHNpbmdsZS1udWNsZW90aWRlIGxldmVsIHdhcyBhY2hpZXZhYmxlIG9uIHRhcmdldCBETkEgc2VxdWVuY2VzIHRoYXQgYXJlIGh5YnJpZGl6ZWQgd2l0aCA1XHUyMDMyLWVuZC10cnVuY2F0ZWQgZHVhbCBzaW5nbGUtZ3VpZGUgUk5BcyAoc2dSTkFzKS4gT3VyIGZpbmRpbmdzIGNvbnRyaWJ1dGUgdG8gYSBkZWVwZXIgdW5kZXJzdGFuZGluZyBvZiB0aGUgcGFpcmVkIG5pY2thc2VzIGFwcHJvYWNoLCBvZmZlcmluZyBhIHNpbmdsZS1taXNtYXRjaCBpbnRvbGVyYW5jZSBkZXNpZ24gc3RyYXRlZ3kgZm9yIGFjY3VyYXRlIG51Y2xlb3RpZGUgZWRpdGluZy4gVGhpcyBzdHJhdGVneSBub3Qgb25seSBlbmhhbmNlcyB0aGUgcHJlY2lzaW9uIG9mIGdlbm9tZSBlZGl0aW5nIGJ1dCBhbHNvIG1hcmtzIGEgc2lnbmlmaWNhbnQgc3RlcCBmb3J3YXJkIGluIHRoZSBkZXZlbG9wbWVudCBvZiBuaWNrYXNlLWRlcml2ZWQgZ2Vub21lIGVkaXRpbmcgdGVjaG5vbG9naWVzLjwvcD59XHJcbiAgfVxyXG4gIGAsYFxyXG4gIEBhcnRpY2xle0JhZG9uMjAyNENSSVNQUixcclxuXHR0aXRsZSAgICAgICAgPSB7UmVjZW50IGFwcGxpY2F0aW9uIG9mIENSSVNQUi1DYXMxMiBhbmQgT01FR0Egc3lzdGVtIGZvciBnZW5vbWUgZWRpdGluZ30sXHJcblx0YXV0aG9yICAgICAgID0ge0JhZG9uLCBJc2FiZWwgV2VuIGFuZCBPaCwgWWVvbnN1biBhbmQgS2ltLCBIby1Kb29uZyBhbmQgTGVlLCBTZXVuZyBId2FufSxcclxuXHR5ZWFyICAgICAgICAgPSAyMDI0LFxyXG5cdG1vbnRoICAgICAgICA9IHtKYW51YXJ5fSxcclxuXHRqb3VybmFsICAgICAgPSB7TW9sZWN1bGFyIFRoZXJhcHl9LFxyXG5cdHZvbHVtZSAgICAgICA9IDMyLFxyXG5cdG51bWJlciAgICAgICA9IDEsXHJcblx0cGFnZXMgICAgICAgID0gezMyLS00M30sXHJcblx0ZG9pICAgICAgICAgID0gezEwLjEwMTYvai55bXRoZS4yMDIzLjExLjAxM30sXHJcblx0dXJsICAgICAgICAgID0ge2h0dHBzOi8vd3d3LmNlbGwuY29tL21vbGVjdWxhci10aGVyYXB5L2Z1bGx0ZXh0L1MxNTI1LTAwMTYoMjMpMDAxMTMtMn1cclxuICB9XHJcbiAgYCxgXHJcbiAgQGFydGljbGV7S2ltMjAyNE5pY2tpbmcsXHJcblx0dGl0bGUgICAgICAgID0ge1V0aWxpemF0aW9uIG9mIG5pY2tpbmcgcHJvcGVydGllcyBvZiBDUklTUFItQ2FzMTJhIGVmZmVjdG9yIGZvciBnZW5vbWUgZWRpdGluZ30sXHJcblx0YXV0aG9yICAgICAgID0ge0tpbSwgQ2hhbiBIeW91bmcgYW5kIExlZSwgV2ktamFlIGFuZCBPaCwgWWVvbnN1biBhbmQgTGVlLCBZb3VuZ2plb24gYW5kIExlZSwgSHlvbWluIEsuIGFuZCBTZW9uZywgSnVuZyBCYWUgYW5kIExpbSwgS3l1bmctU2VvYiBhbmQgUGFyaywgU2FuZyBKZSBhbmQgSHVoLCBKYWUtV29uIGFuZCBLaW0sIFlvdW5nLUh5dW4gYW5kIEtpbSwgS3lvdW5nIE1pIGFuZCBIdXIsIEp1bmhvIEsuIGFuZCBMZWUsIFNldW5nIEh3YW59LFxyXG5cdHllYXIgICAgICAgICA9IDIwMjQsXHJcblx0bW9udGggICAgICAgID0ge0ZlYnJ1YXJ5fSxcclxuXHRqb3VybmFsICAgICAgPSB7U2NpZW50aWZpYyBSZXBvcnRzfSxcclxuXHR2b2x1bWUgICAgICAgPSAxNCxcclxuXHRwYWdlcyAgICAgICAgPSAzMzUyLFxyXG5cdGRvaSAgICAgICAgICA9IHsxMC4xMDM4L3M0MTU5OC0wMjQtNTM2NDgtMn0sXHJcblx0aXNzbiAgICAgICAgID0gezIwNDUtMjMyMn0sXHJcblx0dXJsICAgICAgICAgID0ge2h0dHBzOi8vd3d3Lm5jYmkubmxtLm5paC5nb3YvcG1jL2FydGljbGVzL1BNQzEwODU4MTk1fSxcclxuXHRwbWlkICAgICAgICAgPSAzODMzNjk3NyxcclxuXHRwbWNpZCAgICAgICAgPSB7UE1DMTA4NTgxOTV9XHJcbiAgfVxyXG4gIGBcclxuXSIsICJpbXBvcnQgQmlidGV4UGFyc2VyIGZyb20gXCIuLi9jb21wb25lbnRzL21ha2VTb3VyY2VzXCI7XHJcblxyXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBFbmdEZWxzb3VyY2VzKCl7XHJcbiAgICByZXR1cm4gKFxyXG4gICAgICAgIDxkaXY+XHJcbiAgICAgICAgICA8QmlidGV4UGFyc2VyIGJpYnRleFNvdXJjZXM9e2JpYnRleFNvdXJjZXN9IHN0YXJ0PXszMH0vPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICApO1xyXG59XHJcblxyXG5cclxuY29uc3QgYmlidGV4U291cmNlcyA9IFtcclxuICBgXHJcbiAgQGFydGljbGV7VEFIQTIwMjIzNDUsXHJcbiAgICB0aXRsZSAgICAgICAgPSB7RGVsaXZlcnkgb2YgQ1JJU1BSLUNhcyB0b29scyBmb3IgaW4gdml2byBnZW5vbWUgZWRpdGluZyB0aGVyYXB5OiBUcmVuZHMgYW5kIGNoYWxsZW5nZXN9LFxyXG4gICAgYXV0aG9yICAgICAgID0ge0VtYW4gQS4gVGFoYSBhbmQgSm9zZXBoIExlZSBhbmQgQWtpdHN1IEhvdHRhfSxcclxuICAgIHllYXIgICAgICAgICA9IDIwMjIsXHJcbiAgICBqb3VybmFsICAgICAgPSB7Sm91cm5hbCBvZiBDb250cm9sbGVkIFJlbGVhc2V9LFxyXG4gICAgdm9sdW1lICAgICAgID0gMzQyLFxyXG4gICAgcGFnZXMgICAgICAgID0gezM0NS0tMzYxfSxcclxuICAgIGRvaSAgICAgICAgICA9IHtodHRwczovL2RvaS5vcmcvMTAuMTAxNi9qLmpjb25yZWwuMjAyMi4wMS4wMTN9LFxyXG4gICAgaXNzbiAgICAgICAgID0gezAxNjgtMzY1OX0sXHJcbiAgICB1cmwgICAgICAgICAgPSB7aHR0cHM6Ly93d3cuc2NpZW5jZWRpcmVjdC5jb20vc2NpZW5jZS9hcnRpY2xlL3BpaS9TMDE2ODM2NTkyMjAwMDI3WH0sXHJcbiAgICBrZXl3b3JkcyAgICAgPSB7Q1JJU1BSLUNhcywgRGVsaXZlcnksIEFBViwgVmlydXMtbGlrZSBwYXJ0aWNsZSwgTGlwaWQgbmFub3BhcnRpY2xlLCBHZW5lIHRoZXJhcHl9LFxyXG4gICAgYWJzdHJhY3QgICAgID0ge1RoZSBkaXNjb3Zlcnkgb2YgY2x1c3RlcmVkIHJlZ3VsYXJseSBpbnRlcnNwYWNlZCBzaG9ydCBwYWxpbmRyb21pYyByZXBlYXRzIChDUklTUFIpIGdlbm9tZSBlZGl0aW5nIHRlY2hub2xvZ3kgb3BlbmVkIHRoZSBkb29yIHRvIHByb3ZpZGUgYSB2ZXJzYXRpbGUgYXBwcm9hY2ggZm9yIHRyZWF0aW5nIG11bHRpcGxlIGRpc2Vhc2VzLiBQcm9taXNpbmcgcmVzdWx0cyBoYXZlIGJlZW4gc2hvd24gaW4gbnVtZXJvdXMgcHJlLWNsaW5pY2FsIHN0dWRpZXMgYW5kIGNsaW5pY2FsIHRyaWFscy4gSG93ZXZlciwgYSBzYWZlIGFuZCBlZmZlY3RpdmUgbWV0aG9kIHRvIGRlbGl2ZXIgZ2Vub21lLWVkaXRpbmcgY29tcG9uZW50cyBpcyBzdGlsbCBhIGtleSBjaGFsbGVuZ2UgZm9yIGluIHZpdm8gZ2Vub21lIGVkaXRpbmcgdGhlcmFweS4gQWRlbm8tYXNzb2NpYXRlZCB2aXJ1cyAoQUFWKSBpcyBvbmUgb2YgdGhlIG1vc3QgY29tbW9ubHkgdXNlZCB2ZWN0b3Igc3lzdGVtcyB0byBkYXRlLCBidXQgaW1tdW5vZ2VuaWNpdHkgYWdhaW5zdCBjYXBzaWQsIGxpdmVyIHRveGljaXR5IGF0IGhpZ2ggZG9zZSwgYW5kIHBvdGVudGlhbCBnZW5vdG94aWNpdHkgY2F1c2VkIGJ5IG9mZi10YXJnZXQgbXV0YWdlbmVzaXMgYW5kIGdlbm9taWMgaW50ZWdyYXRpb24gcmVtYWluIHVuc29sdmVkLiBSZWNlbnRseSBkZXZlbG9wZWQgdHJhbnNpZW50IGRlbGl2ZXJ5IHN5c3RlbXMsIHN1Y2ggYXMgdmlydXMtbGlrZSBwYXJ0aWNsZSAoVkxQKSBhbmQgbGlwaWQgbmFub3BhcnRpY2xlIChMTlApLCBtYXkgc29sdmUgc29tZSBvZiB0aGUgaXNzdWVzLiBUaGlzIHJldmlldyBzdW1tYXJpemVzIGV4aXN0aW5nIGluIHZpdm8gZGVsaXZlcnkgc3lzdGVtcyBhbmQgcG9zc2libGUgc29sdXRpb25zIHRvIG92ZXJjb21lIHRoZWlyIGxpbWl0YXRpb25zLiBBbHNvLCB3ZSBoaWdobGlnaHQgdGhlIG9uZ29pbmcgY2xpbmljYWwgdHJpYWxzIGZvciBpbiB2aXZvIGdlbm9tZSBlZGl0aW5nIHRoZXJhcHkgYW5kIHJlY2VudGx5IGRldmVsb3BlZCBnZW5vbWUgZWRpdGluZyB0b29scyBmb3IgdGhlaXIgcG90ZW50aWFsIGFwcGxpY2F0aW9ucy59XHJcbiAgfVxyXG4gIGAsYFxyXG4gIEBhcnRpY2xle3Zlcm1hX2xhbmRzY2FwZV8yMDIzLFxyXG4gICAgdGl0bGUgICAgICAgID0ge1RoZSBsYW5kc2NhcGUgZm9yIGxpcGlkLW5hbm9wYXJ0aWNsZS1iYXNlZCBnZW5vbWljIG1lZGljaW5lc30sXHJcbiAgICBhdXRob3IgICAgICAgPSB7VmVybWEsIE1hbHZpa2EgYW5kIE96ZXIsIEltcmFuIGFuZCBYaWUsIFdlbiBhbmQgR2FsbGFnaGVyLCBSeWFuIGFuZCBUZWl4ZWlyYSwgQWxleGFuZHJhIGFuZCBDaG95LCBNaWNoYWVsfSxcclxuICAgIHllYXIgICAgICAgICA9IDIwMjMsXHJcbiAgICBtb250aCAgICAgICAgPSBtYXksXHJcbiAgICBqb3VybmFsICAgICAgPSB7TmF0dXJlIFJldmlld3MgRHJ1ZyBEaXNjb3Zlcnl9LFxyXG4gICAgdm9sdW1lICAgICAgID0gMjIsXHJcbiAgICBudW1iZXIgICAgICAgPSA1LFxyXG4gICAgcGFnZXMgICAgICAgID0gezM0OS0tMzUwfSxcclxuICAgIGRvaSAgICAgICAgICA9IHsxMC4xMDM4L2Q0MTU3My0wMjMtMDAwMDItMn0sXHJcbiAgICBpc3NuICAgICAgICAgPSB7MTQ3NC0xNzc2LCAxNDc0LTE3ODR9LFxyXG4gICAgdXJsICAgICAgICAgID0ge2h0dHBzOi8vd3d3Lm5hdHVyZS5jb20vYXJ0aWNsZXMvZDQxNTczLTAyMy0wMDAwMi0yfSxcclxuICAgIHVybGRhdGUgICAgICA9IHsyMDI0LTA5LTE2fSxcclxuICAgIGNvcHlyaWdodCAgICA9IHtodHRwczovL3d3dy5zcHJpbmdlcm5hdHVyZS5jb20vZ3AvcmVzZWFyY2hlcnMvdGV4dC1hbmQtZGF0YS1taW5pbmd9LFxyXG4gICAgbGFuZ3VhZ2UgICAgID0ge2VufSxcclxuICAgIGZpbGUgICAgICAgICA9IHtWZXJtYSBldCBhbC4gLSAyMDIzIC0gVGhlIGxhbmRzY2FwZSBmb3IgbGlwaWQtbmFub3BhcnRpY2xlLWJhc2VkIGdlbm9taWMucGRmOkNcXDpcXFxcVXNlcnNcXFxcSXNhYmVsbFxcXFxab3Rlcm9cXFxcc3RvcmFnZVxcXFxaRVNQVzdKSlxcXFxWZXJtYSBldCBhbC4gLSAyMDIzIC0gVGhlIGxhbmRzY2FwZSBmb3IgbGlwaWQtbmFub3BhcnRpY2xlLWJhc2VkIGdlbm9taWMucGRmOmFwcGxpY2F0aW9uL3BkZn1cclxuICB9XHJcbiAgYCxgXHJcbiAgQGFydGljbGV7dGFoYV9kZWxpdmVyeV8yMDIyLFxyXG4gICAgdGl0bGUgICAgICAgID0ge0RlbGl2ZXJ5IG9mIHtDUklTUFJ9LXtDYXN9IHRvb2xzIGZvciBpbiB2aXZvIGdlbm9tZSBlZGl0aW5nIHRoZXJhcHk6IHtUcmVuZHN9IGFuZCBjaGFsbGVuZ2VzfSxcclxuICAgIHNob3J0dGl0bGUgICA9IHtEZWxpdmVyeSBvZiB7Q1JJU1BSfS17Q2FzfSB0b29scyBmb3IgaW4gdml2byBnZW5vbWUgZWRpdGluZyB0aGVyYXB5fSxcclxuICAgIGF1dGhvciAgICAgICA9IHtUYWhhLCBFbWFuIEEuIGFuZCBMZWUsIEpvc2VwaCBhbmQgSG90dGEsIEFraXRzdX0sXHJcbiAgICB5ZWFyICAgICAgICAgPSAyMDIyLFxyXG4gICAgbW9udGggICAgICAgID0gZmViLFxyXG4gICAgam91cm5hbCAgICAgID0ge0pvdXJuYWwgb2YgQ29udHJvbGxlZCBSZWxlYXNlfSxcclxuICAgIHZvbHVtZSAgICAgICA9IDM0MixcclxuICAgIHBhZ2VzICAgICAgICA9IHszNDUtLTM2MX0sXHJcbiAgICBkb2kgICAgICAgICAgPSB7MTAuMTAxNi9qLmpjb25yZWwuMjAyMi4wMS4wMTN9LFxyXG4gICAgaXNzbiAgICAgICAgID0gezAxNjgzNjU5fSxcclxuICAgIHVybCAgICAgICAgICA9IHtodHRwczovL2xpbmtpbmdodWIuZWxzZXZpZXIuY29tL3JldHJpZXZlL3BpaS9TMDE2ODM2NTkyMjAwMDI3WH0sXHJcbiAgICB1cmxkYXRlICAgICAgPSB7MjAyNC0wOS0xNn0sXHJcbiAgICBhYnN0cmFjdCAgICAgPSB7VGhlIGRpc2NvdmVyeSBvZiBjbHVzdGVyZWQgcmVndWxhcmx5IGludGVyc3BhY2VkIHNob3J0IHBhbGluZHJvbWljIHJlcGVhdHMgKENSSVNQUikgZ2Vub21lIGVkaXRpbmcgdGVjaG5vbG9neSBvcGVuZWQgdGhlIGRvb3IgdG8gcHJvdmlkZSBhIHZlcnNhdGlsZSBhcHByb2FjaCBmb3IgdHJlYXRpbmcgbXVsdGlwbGUgZGlzZWFzZXMuIFByb21pc2luZyByZXN1bHRzIGhhdmUgYmVlbiBzaG93biBpbiBudW1lcm91cyBwcmUtY2xpbmljYWwgc3R1ZGllcyBhbmQgY2xpbmljYWwgdHJpYWxzLiBIb3dldmVyLCBhIHNhZmUgYW5kIGVmZmVjdGl2ZSBtZXRob2QgdG8gZGVsaXZlciBnZW5vbWUtZWRpdGluZyBjb21wb25lbnRzIGlzIHN0aWxsIGEga2V5IGNoYWxsZW5nZSBmb3IgaW4gdml2byBnZW5vbWUgZWRpdGluZyB0aGVyYXB5LiBBZGVuby1hc3NvY2lhdGVkIHZpcnVzIChBQVYpIGlzIG9uZSBvZiB0aGUgbW9zdCBjb21tb25seSB1c2VkIHZlY3RvciBzeXN0ZW1zIHRvIGRhdGUsIGJ1dCBpbW11bm9nZW5pY2l0eSBhZ2FpbnN0IGNhcHNpZCwgbGl2ZXIgdG94aWNpdHkgYXQgaGlnaCBkb3NlLCBhbmQgcG90ZW50aWFsIGdlbm90b3hpY2l0eSBjYXVzZWQgYnkgb2ZmLXRhcmdldCBtdXRhZ2VuZXNpcyBhbmQgZ2Vub21pYyBpbnRlZ3JhdGlvbiByZW1haW4gdW5zb2x2ZWQuIFJlY2VudGx5IGRldmVsb3BlZCB0cmFuc2llbnQgZGVsaXZlcnkgc3lzdGVtcywgc3VjaCBhcyB2aXJ1cy1saWtlIHBhcnRpY2xlIChWTFApIGFuZCBsaXBpZCBuYW5vcGFydGljbGUgKExOUCksIG1heSBzb2x2ZSBzb21lIG9mIHRoZSBpc3N1ZXMuIFRoaXMgcmV2aWV3IHN1bW1hcml6ZXMgZXhpc3RpbmcgaW4gdml2byBkZWxpdmVyeSBzeXN0ZW1zIGFuZCBwb3NzaWJsZSBzb2x1dGlvbnMgdG8gb3ZlcmNvbWUgdGhlaXIgbGltaXRhdGlvbnMuIEFsc28sIHdlIGhpZ2hsaWdodCB0aGUgb25nb2luZyBjbGluaWNhbCB0cmlhbHMgZm9yIGluIHZpdm8gZ2Vub21lIGVkaXRpbmcgdGhlcmFweSBhbmQgcmVjZW50bHkgZGV2ZWxvcGVkIGdlbm9tZSBlZGl0aW5nIHRvb2xzIGZvciB0aGVpciBwb3RlbnRpYWwgYXBwbGljYXRpb25zLn0sXHJcbiAgICBsYW5ndWFnZSAgICAgPSB7ZW59XHJcbiAgfVxyXG4gIGAsYFxyXG4gIEBtYW51YWx7Y2F5bWFuX2NoZW1pY2FsX2xpcGlkbGF1bmNoX3Byb3RvY29sLFxyXG4gICAgdGl0bGUgICAgICAgID0ge0xpcGlkTGF1bmNoXHUyMTIyIExOUC0xMDIgRXhwbG9yYXRpb24gS2l0IFByb3RvY29sfSxcclxuICAgIGF1dGhvciAgICAgICA9IHt7Q2F5bWFuIENoZW1pY2FsfX0sXHJcbiAgICB5ZWFyICAgICAgICAgPSAyMDI0LFxyXG4gICAgdXJsICAgICAgICAgID0ge2h0dHBzOi8vY2RuLmNheW1hbmNoZW0uY29tL2Nkbi9pbnNlcnQvMzU0MjUucGRmfSxcclxuICAgIG5vdGUgICAgICAgICA9IHtBY2Nlc3NlZDogMjAyNC0wOS0xNn1cclxuICB9XHJcbiAgYCxgXHJcbiAgQG1pc2N7Y29yZGVuX3BoYXJtYV9sbnBfMjAyNCxcclxuICAgIHRpdGxlICAgICAgICA9IHtMTlAgRm9ybXVsYXRpb24gYW5kIE1hbnVmYWN0dXJpbmd9LFxyXG4gICAgYXV0aG9yICAgICAgID0ge3tDb3JkZW4gUGhhcm1hfX0sXHJcbiAgICB5ZWFyICAgICAgICAgPSAyMDI0LFxyXG4gICAgdXJsICAgICAgICAgID0ge2h0dHBzOi8vY29yZGVucGhhcm1hLmNvbS93aGF0LXlvdS1uZWVkL2RydWctcHJvZHVjdHMvc3VwcG9ydC1zZXJ2aWNlcy9sbnAtZm9ybXVsYXRpb24tbWFudWZhY3R1cmluZy99LFxyXG4gICAgbm90ZSAgICAgICAgID0ge0FjY2Vzc2VkOiAyMDI0LTA5LTE4fVxyXG4gIH1cclxuICBgLGBcclxuICBAYXJ0aWNsZXt3ZWlfbHVuZ18yMDIzLFxyXG4gICAgdGl0bGUgICAgICAgID0ge0x1bmcge1NPUlR9IHtMTlBzfSBlbmFibGUgcHJlY2lzZSBob21vbG9neS1kaXJlY3RlZCByZXBhaXIgbWVkaWF0ZWQge0NSSVNQUn0ve0Nhc30gZ2Vub21lIGNvcnJlY3Rpb24gaW4gIEN5c3RpYyBGaWJyb3NpcyBtb2RlbHN9LFxyXG4gICAgYXV0aG9yICAgICAgID0ge1dlaSwgVHVvIGFuZCBTdW4sIFllaHVpIGFuZCBDaGVuZywgUWlhbmcgYW5kIENoYXR0ZXJqZWUsIFN1bWFudGEgYW5kIFRyYXlsb3IsIFphY2hhcnkgYW5kIEpvaG5zb24sIExpbmRzYXkgVC4gYW5kIENvcXVlbGluLCBNZWxpc3NhIEwuIGFuZCBXYW5nLCBKaWFsdSBhbmQgVG9ycmVzLCBNaWNoYWVsIEouIGFuZCBMaWFuLCBYaXpoZW4gYW5kIFdhbmcsIFh1IGFuZCBYaWFvLCBZdWZlbiBhbmQgSG9kZ2VzLCBDcmFpZyBBLiBhbmQgU2llZ3dhcnQsIERhbmllbCBKLn0sXHJcbiAgICB5ZWFyICAgICAgICAgPSAyMDIzLFxyXG4gICAgbW9udGggICAgICAgID0gbm92LFxyXG4gICAgam91cm5hbCAgICAgID0ge05hdHVyZSBDb21tdW5pY2F0aW9uc30sXHJcbiAgICB2b2x1bWUgICAgICAgPSAxNCxcclxuICAgIG51bWJlciAgICAgICA9IDEsXHJcbiAgICBwYWdlcyAgICAgICAgPSA3MzIyLFxyXG4gICAgZG9pICAgICAgICAgID0gezEwLjEwMzgvczQxNDY3LTAyMy00Mjk0OC0yfSxcclxuICAgIGlzc24gICAgICAgICA9IHsyMDQxLTE3MjN9LFxyXG4gICAgdXJsICAgICAgICAgID0ge2h0dHBzOi8vd3d3Lm5hdHVyZS5jb20vYXJ0aWNsZXMvczQxNDY3LTAyMy00Mjk0OC0yfSxcclxuICAgIHVybGRhdGUgICAgICA9IHsyMDI0LTA0LTE2fSxcclxuICAgIGNvcHlyaWdodCAgICA9IHsyMDIzIFRoZSBBdXRob3Iocyl9LFxyXG4gICAgbm90ZSAgICAgICAgID0ge1B1Ymxpc2hlcjogTmF0dXJlIFB1Ymxpc2hpbmcgR3JvdXB9LFxyXG4gICAgYWJzdHJhY3QgICAgID0ge0FwcHJveGltYXRlbHkgMTBcXCUgb2YgQ3lzdGljIEZpYnJvc2lzIChDRikgcGF0aWVudHMsIHBhcnRpY3VsYXJseSB0aG9zZSB3aXRoIENGIHRyYW5zbWVtYnJhbmUgY29uZHVjdGFuY2UgcmVndWxhdG9yIChDRlRSKSBnZW5lIG5vbnNlbnNlIG11dGF0aW9ucywgbGFjayBlZmZlY3RpdmUgdHJlYXRtZW50cy4gVGhlIHBvdGVudGlhbCBvZiBnZW5lIGNvcnJlY3Rpb24gdGhlcmFweSB0aHJvdWdoIGRlbGl2ZXJ5IG9mIHRoZSBDUklTUFIvQ2FzIHN5c3RlbSB0byBDRi1yZWxldmFudCBvcmdhbnMvY2VsbHMgaXMgaGluZGVyZWQgYnkgdGhlIGxhY2sgb2YgZWZmaWNpZW50IGdlbm9tZSBlZGl0b3IgZGVsaXZlcnkgY2FycmllcnMuIEhlcmVpbiwgd2UgcmVwb3J0IGltcHJvdmVkIEx1bmcgU2VsZWN0aXZlIE9yZ2FuIFRhcmdldGluZyBMaXBpZCBOYW5vcGFydGljbGVzIChTT1JUIExOUHMpIGZvciBlZmZpY2llbnQgZGVsaXZlcnkgb2YgQ2FzOSBtUk5BLCBzZ1JOQSwgYW5kIGRvbm9yIHNzRE5BIHRlbXBsYXRlcywgZW5hYmxpbmcgcHJlY2lzZSBob21vbG9neS1kaXJlY3RlZCByZXBhaXItbWVkaWF0ZWQgZ2VuZSBjb3JyZWN0aW9uIGluIENGIG1vZGVscy4gT3B0aW1pemVkIEx1bmcgU09SVCBMTlBzIGRlbGl2ZXIgbVJOQSB0byBsdW5nIGJhc2FsIGNlbGxzIGluIEFpOSByZXBvcnRlciBtaWNlLiBTT1JUIExOUCB0cmVhdG1lbnQgc3VjY2Vzc2Z1bGx5IGNvcnJlY3RlZCB0aGUgQ0ZUUiBtdXRhdGlvbnMgaW4gaG9tb3p5Z291cyBHNTQyWCBtaWNlIGFuZCBpbiBwYXRpZW50LWRlcml2ZWQgaHVtYW4gYnJvbmNoaWFsIGVwaXRoZWxpYWwgY2VsbHMgd2l0aCBob21venlnb3VzIEY1MDhkZWwgbXV0YXRpb25zLCBsZWFkaW5nIHRvIHRoZSByZXN0b3JhdGlvbiBvZiBDRlRSIHByb3RlaW4gZXhwcmVzc2lvbiBhbmQgY2hsb3JpZGUgdHJhbnNwb3J0IGZ1bmN0aW9uLiBUaGlzIHByb29mLW9mLWNvbmNlcHQgc3R1ZHkgd2lsbCBjb250cmlidXRlIHRvIGFjY2VsZXJhdGluZyB0aGUgY2xpbmljYWwgZGV2ZWxvcG1lbnQgb2YgbVJOQSBMTlBzIGZvciBDRiB0cmVhdG1lbnQgdGhyb3VnaCBDUklTUFIvQ2FzIGdlbmUgY29ycmVjdGlvbi59LFxyXG4gICAgbGFuZ3VhZ2UgICAgID0ge2VufSxcclxuICAgIGtleXdvcmRzICAgICA9IHtCaW9tZWRpY2FsIGVuZ2luZWVyaW5nLCBDUklTUFItQ2FzOSBnZW5vbWUgZWRpdGluZywgR2VuZSBkZWxpdmVyeX1cclxuICB9XHJcbiAgYCxgXHJcbiAgQGFydGljbGV7SUJSQUhJTTIwMjIyMTUsXHJcbiAgICB0aXRsZSAgICAgICAgPSB7UG9seWV0aHlsZW5lIGdseWNvbCAoUEVHKTogVGhlIG5hdHVyZSwgaW1tdW5vZ2VuaWNpdHksIGFuZCByb2xlIGluIHRoZSBoeXBlcnNlbnNpdGl2aXR5IG9mIFBFR3lsYXRlZCBwcm9kdWN0c30sXHJcbiAgICBhdXRob3IgICAgICAgPSB7TW9oYW1lZCBJYnJhaGltIGFuZCBFc2xhbSBSYW1hZGFuIGFuZCBOZWhhbCBFLiBFbHNhZGVrIGFuZCBTaGVyaWYgRS4gRW1hbSBhbmQgVGFybyBTaGltaXp1IGFuZCBIaWRlbm9yaSBBbmRvIGFuZCBZdSBJc2hpbWEgYW5kIE9tYXIgSGVsbXkgRWxnYXJoeSBhbmQgSGF0ZW0gQS4gU2FyaGFuIGFuZCBBbWFsIEsuIEh1c3NlaW4gYW5kIFRhdHN1aGlybyBJc2hpZGF9LFxyXG4gICAgeWVhciAgICAgICAgID0gMjAyMixcclxuICAgIGpvdXJuYWwgICAgICA9IHtKb3VybmFsIG9mIENvbnRyb2xsZWQgUmVsZWFzZX0sXHJcbiAgICB2b2x1bWUgICAgICAgPSAzNTEsXHJcbiAgICBwYWdlcyAgICAgICAgPSB7MjE1LS0yMzB9LFxyXG4gICAgZG9pICAgICAgICAgID0ge2h0dHBzOi8vZG9pLm9yZy8xMC4xMDE2L2ouamNvbnJlbC4yMDIyLjA5LjAzMX0sXHJcbiAgICBpc3NuICAgICAgICAgPSB7MDE2OC0zNjU5fSxcclxuICAgIHVybCAgICAgICAgICA9IHtodHRwczovL3d3dy5zY2llbmNlZGlyZWN0LmNvbS9zY2llbmNlL2FydGljbGUvcGlpL1MwMTY4MzY1OTIyMDA2MjY1fSxcclxuICAgIGtleXdvcmRzICAgICA9IHtQb2x5ZXRoeWxlbmUgZ2x5Y29sIChQRUcpLCBhbnRpLVBFRyBhbnRpYm9kaWVzLCBIeXBlcnNlbnNpdGl2aXR5LCBDT1ZJRC0xOSBtUk5BIHZhY2NpbmVzLCBjb21wbGVtZW50IGFjdGl2YXRpb24tcmVsYXRlZCBwc2V1ZG9hbGxlcmd5IChDQVJQQSl9LFxyXG4gICAgYWJzdHJhY3QgICAgID0ge1BvbHlldGh5bGVuZSBnbHljb2wgKFBFRykgaXMgYSB2ZXJzYXRpbGUgcG9seW1lciB0aGF0IGlzIHdpZGVseSB1c2VkIGFzIGFuIGFkZGl0aXZlIGluIGZvb2RzIGFuZCBjb3NtZXRpY3MsIGFuZCBhcyBhIGNhcnJpZXIgaW4gUEVHeWxhdGVkIHRoZXJhcGV1dGljcy4gRXZlbiB0aG91Z2ggUEVHIGlzIHRob3VnaHQgdG8gYmUgbGVzcyBpbW11bm9nZW5pYywgb3IgcGVyaGFwcyBldmVuIG5vbi1pbW11bm9nZW5pYywgd2l0aCBhIHZhcmlldHkgb2YgcGh5c2ljb2NoZW1pY2FsIHByb3BlcnRpZXMsIHRoZXJlIGlzIG1vdW50aW5nIGV2aWRlbmNlIHRoYXQgUEVHIGNhdXNlcyBpbW11bm9nZW5pYyByZXNwb25zZXMgd2hlbiBjb25qdWdhdGVkIHdpdGggb3RoZXIgbWF0ZXJpYWxzIHN1Y2ggYXMgcHJvdGVpbnMgYW5kIG5hbm9jYXJyaWVycy4gVW5kZXIgdGhlc2UgY29uZGl0aW9ucywgUEVHIHdpdGggb3RoZXIgbWF0ZXJpYWxzIGNhbiByZXN1bHQgaW4gdGhlIHByb2R1Y3Rpb24gb2YgYW50aS1QRUcgYW50aWJvZGllcyBhZnRlciBhZG1pbmlzdHJhdGlvbi4gVGhlIGFudGlib2RpZXMgdGhhdCBhcmUgaW5kdWNlZCBzZWVtIHRvIGhhdmUgYSBkZWxldGVyaW91cyBpbXBhY3Qgb24gdGhlIHRoZXJhcGV1dGljIGVmZmljYWN5IG9mIHN1YnNlcXVlbnRseSBhZG1pbmlzdGVyZWQgUEVHeWxhdGVkIGZvcm11bGF0aW9ucy4gSW4gYWRkaXRpb24sIGh5cGVyc2Vuc2l0aXZpdHkgdG8gUEVHeWxhdGVkIGZvcm11bGF0aW9ucyBjb3VsZCBiZSBhIHNpZ25pZmljYW50IGJhcnJpZXIgdG8gdGhlIHV0aWxpdHkgb2YgUEVHeWxhdGVkIHByb2R1Y3RzLiBTZXZlcmFsIHJlcG9ydHMgaGF2ZSBsaW5rZWQgdGhlIHByZXNlbmNlIG9mIGFudGktUEVHIGFudGlib2RpZXMgdG8gaW5jaWRlbmNlcyBvZiBjb21wbGVtZW50IGFjdGl2YXRpb24tcmVsYXRlZCBwc2V1ZG9hbGxlcmd5IChDQVJQQSkgZm9sbG93aW5nIHRoZSBhZG1pbmlzdHJhdGlvbiBvZiBQRUd5bGF0ZWQgZm9ybXVsYXRpb25zLiBUaGUgdXNlIG9mIENPVklELTE5IG1STkEgdmFjY2luZXMsIHdoaWNoIGFyZSBjb21wb3NlZCBtYWlubHkgb2YgUEVHeWxhdGVkIGxpcGlkIG5hbm9wYXJ0aWNsZXMgKExOUHMpLCBoYXMgcmVjZW50bHkgZ2FpbmVkIHdpZGUgYWNjZXB0YW5jZSwgYWx0aG91Z2ggbWFueSBjYXNlcyBvZiBwb3N0LXZhY2NpbmF0aW9uIGh5cGVyc2Vuc2l0aXZpdHkgaGF2ZSBiZWVuIGRvY3VtZW50ZWQuIFRoZXJlZm9yZSwgb3VyIHJldmlldyBmb2N1c2VzIG5vdCBvbmx5IG9uIHRoZSBpbXBvcnRhbmNlIG9mIFBFR3MgYW5kIGl0cyBncmVhdCByb2xlIGluIGltcHJvdmluZyB0aGUgdGhlcmFwZXV0aWMgZWZmaWNhY3kgb2YgdmFyaW91cyBtZWRpY2F0aW9ucywgYnV0IGFsc28gb24gdGhlIGh5cGVyc2Vuc2l0aXZpdHkgcmVhY3Rpb25zIGF0dHJpYnV0ZWQgdG8gdGhlIHVzZSBvZiBQRUd5bGF0ZWQgcHJvZHVjdHMgdGhhdCBpbmNsdWRlIFBFRy1iYXNlZCBtUk5BIENPVklELTE5IHZhY2NpbmVzLn1cclxuICB9XHJcbiAgYCxgXHJcbiAgQGFydGljbGV7WklNTUVSTUFOTjIwMjIxMzcsXHJcbiAgICB0aXRsZSAgICAgICAgPSB7U3ByYXkgZHJ5aW5nIHNpUk5BLWxpcGlkIG5hbm9wYXJ0aWNsZXMgZm9yIGRyeSBwb3dkZXIgcHVsbW9uYXJ5IGRlbGl2ZXJ5fSxcclxuICAgIGF1dGhvciAgICAgICA9IHtDaHJpc3RvcGggTS4gWmltbWVybWFubiBhbmQgRG9taXppYSBCYWxkYXNzaSBhbmQgS2FyZW4gQ2hhbiBhbmQgTmF0aGFuIEIuUC4gQWRhbXMgYW5kIEFsaW5hIE5ldW1hbm4gYW5kIERpYW5hIExlaWR5IFBvcnJhcy1Hb256YWxleiBhbmQgWGluIFdlaSBhbmQgTmlrb2xhdXMgS25laWRpbmdlciBhbmQgTWlyY2VhIEdhYnJpZWwgU3RvbGVyaXUgYW5kIEdlcmFsZCBCdXJnc3RhbGxlciBhbmQgRG9taW5payBXaXR6aWdtYW5uIGFuZCBQYW9sYSBMdWNpYW5pIGFuZCBPbGl2aWEgTS4gTWVya2VsfSxcclxuICAgIHllYXIgICAgICAgICA9IDIwMjIsXHJcbiAgICBqb3VybmFsICAgICAgPSB7Sm91cm5hbCBvZiBDb250cm9sbGVkIFJlbGVhc2V9LFxyXG4gICAgdm9sdW1lICAgICAgID0gMzUxLFxyXG4gICAgcGFnZXMgICAgICAgID0gezEzNy0tMTUwfSxcclxuICAgIGRvaSAgICAgICAgICA9IHtodHRwczovL2RvaS5vcmcvMTAuMTAxNi9qLmpjb25yZWwuMjAyMi4wOS4wMjF9LFxyXG4gICAgaXNzbiAgICAgICAgID0gezAxNjgtMzY1OX0sXHJcbiAgICB1cmwgICAgICAgICAgPSB7aHR0cHM6Ly93d3cuc2NpZW5jZWRpcmVjdC5jb20vc2NpZW5jZS9hcnRpY2xlL3BpaS9TMDE2ODM2NTkyMjAwNjEzN30sXHJcbiAgICBrZXl3b3JkcyAgICAgPSB7TGlwaWQgbmFub3BhcnRpY2xlcywgTE5QLCBPbnBhdHRyb1x1MDBBRSwgUk5BIHRoZXJhcGV1dGljcywgc2lSTkEgZGVsaXZlcnksIFNwcmF5IGRyeWluZywgUHVsbW9uYXJ5IGRlbGl2ZXJ5LCBSZXNwaXJhdG9yeSBkaXNlYXNlcywgSHVtYW4gcHJlY2lzaW9uLWN1dCBsdW5nIHNsaWNlcywgRm9ybXVsYXRpb24gc2NyZWVuaW5nfSxcclxuICAgIGFic3RyYWN0ICAgICA9IHtXaGlsZSBhbGwgdGhlIHNpUk5BIGRydWdzIG9uIHRoZSBtYXJrZXQgdGFyZ2V0IHRoZSBsaXZlciwgdGhlIGx1bmdzIG9mZmVyIGEgdmFyaWV0eSBvZiBjdXJyZW50bHkgdW5kcnVnZ2FibGUgdGFyZ2V0cyB3aGljaCBjb3VsZCBwb3RlbnRpYWxseSBiZSB0cmVhdGVkIHdpdGggUk5BIHRoZXJhcGV1dGljcy4gSGVuY2UsIGxvY2FsLCBwdWxtb25hcnkgZGVsaXZlcnkgb2YgUk5BIG5hbm9wYXJ0aWNsZXMgY291bGQgZmluYWxseSBlbmFibGUgZGVsaXZlcnkgYmV5b25kIHRoZSBsaXZlci4gVGhlIGFkbWluaXN0cmF0aW9uIG9mIFJOQSBkcnVncyB2aWEgZHJ5IHBvd2RlciBpbmhhbGVycyBvZmZlcnMgbWFueSBhZHZhbnRhZ2VzIHJlbGF0ZWQgdG8gcGh5c2ljYWwsIGNoZW1pY2FsIGFuZCBtaWNyb2JpYWwgc3RhYmlsaXR5IG9mIFJOQSBhbmQgbmFub3N1c3BlbnNpb25zLiBUaGUgcHJlc2VudCBzdHVkeSB3YXMgdGhlcmVmb3JlIGRlc2lnbmVkIHRvIHRlc3QgdGhlIGZlYXNpYmlsaXR5IG9mIGVuZ2luZWVyaW5nIHNwcmF5IGRyaWVkIGxpcGlkIG5hbm9wYXJ0aWNsZSAoTE5QKSBwb3dkZXJzLiBTcHJheSBkcnlpbmcgd2FzIHBlcmZvcm1lZCB1c2luZyA1JSBsYWN0b3NlIHNvbHV0aW9uIChtL1YpLCBhbmQgdGhlIHRhcmdldHMgd2VyZSBzZXQgdG8gb2J0YWluIG5hbm9wYXJ0aWNsZSBzaXplcyBhZnRlciByZWRpc3BlcnNpb24gb2Ygc3ByYXktZHJpZWQgcG93ZGVycyBhcm91bmQgMTUwXHUyMDJGbm0sIGEgcmVzaWR1YWwgbW9pc3R1cmUgbGV2ZWwgYmVsb3cgNSUsIGFuZCBSTkEgbG9zcyBiZWxvdyAxNSUgYXQgbWFpbnRhaW5lZCBSTkEgYmlvYWN0aXZpdHkuIFRoZSBMTlBzIGNvbnNpc3RlZCBvZiBhbiBpb25pemFibGUgY2F0aW9uaWMgbGlwaWQgd2hpY2ggaXMgYSBzdWxmdXItY29udGFpbmluZyBhbmFsb2cgb2YgRExpbi1NQzMtRE1BLCBhIGhlbHBlciBsaXBpZCwgY2hvbGVzdGVyb2wsIGFuZCBQRUctRE1HIGVuY2Fwc3VsYXRpbmcgc2lSTkEuIFByaW9yIHRvIHRoZSBzcHJheSBkcnlpbmcsIHRoZSBsYXR0ZXIgcHJvY2VzcyB3YXMgc2ltdWxhdGVkIHdpdGggYSBub3ZlbCBkdWFsIGVtaXNzaW9uIGZsdW9yZXNjZW5jZSBzcGVjdHJvc2NvcHkgbWV0aG9kIHRvIHByZXNlbGVjdCB0aGUgaGlnaGVzdCBwb3NzaWJsZSBkcnlpbmcgdGVtcGVyYXR1cmUgYW5kIGV4Y2lwaWVudCBzb2x1dGlvbiBtYWludGFpbmluZyBMTlAgaW50ZWdyaXR5IGFuZCBzdGFiaWxpdHkuIFRocm91Z2ggY2hhcmFjdGVyaXphdGlvbiBvZiBwaHlzaWNvY2hlbWljYWwgYW5kIGFlcm9keW5hbWljIHByb3BlcnRpZXMgb2YgdGhlIHNwcmF5IGRyaWVkIHBvd2RlcnMsIGFkbWluaXN0cmF0aW9uIGNyaXRlcmlhIGZvciBkZWxpdmVyeSB0byB0aGUgbG93ZXIgcmVzcGlyYXRvcnkgdHJhY3Qgd2VyZSBmdWxmaWxsZWQuIFNwcmF5IGRyaWVkIExOUHMgcGVuZXRyYXRlZCB0aGUgbHVuZyBtdWN1cyBsYXllciBhbmQgbWFpbnRhaW5lZCBiaW9hY3Rpdml0eSBmb3IgPjkwJSBwcm90ZWluIGRvd25yZWd1bGF0aW9uIHdpdGggYSBjb25maXJtZWQgc2FmZXR5IHByb2ZpbGUgaW4gYSBsdW5nIGFkZW5vY2FyY2lub21hIGNlbGwgbGluZS4gQWRkaXRpb25hbGx5LCB0aGUgc3ByYXkgZHJpZWQgTE5QcyBzdWNjZXNzZnVsbHkgYWNoaWV2ZWQgdXAgdG8gNTAlIGdlbmUgc2lsZW5jaW5nIG9mIHRoZSBob3VzZSBrZWVwaW5nIGdlbmUgR0FQREggaW4gZXggdml2byBodW1hbiBwcmVjaXNpb24tY3V0IGx1bmcgc2xpY2VzIGF0IHdpdGhvdXQgaW5jcmVhc2luZyBjeXRva2luZSBsZXZlbHMuIFRoaXMgc3R1ZHkgdmVyaWZpZXMgdGhlIHN1Y2Nlc3NmdWwgc3ByYXkgZHJ5aW5nIHByb2NlZHVyZSBvZiBMTlAtc2lSTkEgc3lzdGVtcyBtYWludGFpbmluZyB0aGVpciBpbnRlZ3JpdHkgYW5kIG1lZGlhdGluZyBzdHJvbmcgZ2VuZSBzaWxlbmNpbmcgZWZmaWNpZW5jeSBvbiBtUk5BIGFuZCBwcm90ZWluIGxldmVscyBib3RoIGluIHZpdHJvIGFuZCBleCB2aXZvLiBUaGUgc3VjY2Vzc2Z1bCBzcHJheSBkcnlpbmcgcHJvY2VkdXJlIG9mIExOUC1zaVJOQSBmb3JtdWxhdGlvbnMgaW4gNSUgbGFjdG9zZSBzb2x1dGlvbiBjcmVhdGVzIGEgbm92ZWwgc2lSTkEtYmFzZWQgdGhlcmFweSBvcHRpb24gdG8gdGFyZ2V0IHJlc3BpcmF0b3J5IGRpc2Vhc2VzIHN1Y2ggYXMgbHVuZyBjYW5jZXIsIGFzdGhtYSwgQ09QRCwgIEN5c3RpYyBGaWJyb3NpcyBhbmQgdmlyYWwgaW5mZWN0aW9ucy59XHJcbiAgfVxyXG4gIGAsYFxyXG4gIEBhcnRpY2xle2ppYW5nX2NvbWJpbmF0b3JpYWxfMjAyNCxcclxuICAgIHRpdGxlICAgICAgICA9IHtDb21iaW5hdG9yaWFsIGRldmVsb3BtZW50IG9mIG5lYnVsaXplZCB7bVJOQX0gZGVsaXZlcnkgZm9ybXVsYXRpb25zIGZvciB0aGUgbHVuZ3N9LFxyXG4gICAgYXV0aG9yICAgICAgID0ge0ppYW5nLCBBbGxlbiBZLiBhbmQgV2l0dGVuLCBKYWNvYiBhbmQgUmFqaSwgSWRyaXMgTy4gYW5kIEV3ZWplLCBGZXlpc2F5byBhbmQgTWFjSXNhYWMsIENvcmluYSBhbmQgTWVuZywgU2FicmluYSBhbmQgT2xhZGltZWppLCBGYXZvdXIgQS4gYW5kIEh1LCBZaXpvbmcgYW5kIE1hbmFuLCBSYWppdGggUy4gYW5kIExhbmdlciwgUm9iZXJ0IGFuZCBBbmRlcnNvbiwgRGFuaWVsIEcufSxcclxuICAgIHllYXIgICAgICAgICA9IDIwMjQsXHJcbiAgICBtb250aCAgICAgICAgPSBtYXIsXHJcbiAgICBqb3VybmFsICAgICAgPSB7TmF0dXJlIE5hbm90ZWNobm9sb2d5fSxcclxuICAgIHZvbHVtZSAgICAgICA9IDE5LFxyXG4gICAgbnVtYmVyICAgICAgID0gMyxcclxuICAgIHBhZ2VzICAgICAgICA9IHszNjQtLTM3NX0sXHJcbiAgICBkb2kgICAgICAgICAgPSB7MTAuMTAzOC9zNDE1NjUtMDIzLTAxNTQ4LTN9LFxyXG4gICAgaXNzbiAgICAgICAgID0gezE3NDgtMzM4NywgMTc0OC0zMzk1fSxcclxuICAgIHVybCAgICAgICAgICA9IHtodHRwczovL3d3dy5uYXR1cmUuY29tL2FydGljbGVzL3M0MTU2NS0wMjMtMDE1NDgtM30sXHJcbiAgICB1cmxkYXRlICAgICAgPSB7MjAyNC0wOS0xMH0sXHJcbiAgICBsYW5ndWFnZSAgICAgPSB7ZW59XHJcbiAgfVxyXG4gIGAsYFxyXG4gIEBhcnRpY2xle3ZpbGEtZ29uemFsZXpfdml0cm9fMjAyNCxcclxuICAgIHRpdGxlICAgICAgICA9IHtJbiB2aXRybyBwbGF0Zm9ybSB0byBtb2RlbCB0aGUgZnVuY3Rpb24gb2YgaW9ub2N5dGVzIGluIHRoZSBodW1hbiBhaXJ3YXkgZXBpdGhlbGl1bX0sXHJcbiAgICBhdXRob3IgICAgICAgPSB7VmlsXHUwMEUwLUdvbnpcdTAwRTFsZXosIE1hcnRhIGFuZCBQaW50ZSwgTGFldGl0aWEgYW5kIEZyYWRpcXVlLCBSaWNhcmRvIGFuZCBDYXVzYSwgRXJpa2EgYW5kIEtvb2wsIEhlbGVlbiBhbmQgUm9kcmF0LCBNYXl1cmVlIGFuZCBNb3JlbGwsIENhcm9sYSBNYXJpYSBhbmQgQWwtVGhhbmksIE1haGEgYW5kIFBvcnRlciwgTGluc2V5IGFuZCBHdW8sIFdlbnJ1aSBhbmQgTWFlc2hpbWEsIFJ1aGluYSBhbmQgSGFydCwgU3RlcGhlbiBMLiBhbmQgTWNDYXVnaGFuLCBGcmFuayBhbmQgR3JhbmF0YSwgQWxlc3NhbmRyYSBhbmQgU2hlcHBhcmQsIERhdmlkIE4uIGFuZCBGbG90bywgUi4gQW5kcmVzIGFuZCBSYXdsaW5zLCBFbW1hIEwuIGFuZCBDaWN1dGEsIFBpZXRybyBhbmQgVmFsbGllciwgTHVkb3ZpY30sXHJcbiAgICB5ZWFyICAgICAgICAgPSAyMDI0LFxyXG4gICAgbW9udGggICAgICAgID0gYXByLFxyXG4gICAgam91cm5hbCAgICAgID0ge1Jlc3BpcmF0b3J5IFJlc2VhcmNofSxcclxuICAgIHZvbHVtZSAgICAgICA9IDI1LFxyXG4gICAgbnVtYmVyICAgICAgID0gMSxcclxuICAgIHBhZ2VzICAgICAgICA9IDE4MCxcclxuICAgIGRvaSAgICAgICAgICA9IHsxMC4xMTg2L3MxMjkzMS0wMjQtMDI4MDAtN30sXHJcbiAgICBpc3NuICAgICAgICAgPSB7MTQ2NS05OTNYfSxcclxuICAgIHVybCAgICAgICAgICA9IHtodHRwczovL3Jlc3BpcmF0b3J5LXJlc2VhcmNoLmJpb21lZGNlbnRyYWwuY29tL2FydGljbGVzLzEwLjExODYvczEyOTMxLTAyNC0wMjgwMC03fSxcclxuICAgIHVybGRhdGUgICAgICA9IHsyMDI0LTA5LTEwfSxcclxuICAgIGFic3RyYWN0ICAgICA9IHtcclxuICAgICAgQmFja2dyb3VuZFx1MjAwMiBQdWxtb25hcnkgaW9ub2N5dGVzIGhhdmUgYmVlbiBpZGVudGlmaWVkIGluIHRoZSBhaXJ3YXkgZXBpdGhlbGl1bSBhcyBhIHNtYWxsIHBvcHVsYXRpb24gb2YgaW9uIHRyYW5zcG9ydGluZyBjZWxscyBleHByZXNzaW5nIGhpZ2ggbGV2ZWxzIG9mIENGVFIgKCBDeXN0aWMgRmlicm9zaXMgdHJhbnNtZW1icmFuZSBjb25kdWN0YW5jZSByZWd1bGF0b3IpLCB0aGUgZ2VuZSBtdXRhdGVkIGluICBDeXN0aWMgRmlicm9zaXMuIEJ5IHByb3ZpZGluZyBhbiBpbmZpbml0ZSBzb3VyY2Ugb2YgYWlyd2F5IGVwaXRoZWxpYWwgY2VsbHMgKEFFQ3MpLCB0aGUgdXNlIG9mIGh1bWFuIGluZHVjZWQgcGx1cmlwb3RlbnQgc3RlbSBjZWxscyAoaGlQU0NzKSBjb3VsZCBvdmVyY29tZSBzb21lIGNoYWxsZW5nZXMgb2Ygc3R1ZHlpbmcgaW9ub2N5dGVzLiBIb3dldmVyLCB0aGUgcHJvZHVjdGlvbiBvZiBBRUMgZXBpdGhlbGlhIGNvbnRhaW5pbmcgaW9ub2N5dGVzIGZyb20gaGlQU0NzIGhhcyBwcm92ZW4gZGlmZmljdWx0LiBIZXJlLCB3ZSBwcmVzZW50IGEgcGxhdGZvcm0gdG8gcHJvZHVjZSBoaVBTQ2Rlcml2ZWQgQUVDcyAoaGlQU0MtQUVDcykgaW5jbHVkaW5nIGlvbm9jeXRlcyBhbmQgaW52ZXN0aWdhdGUgdGhlaXIgcm9sZSBpbiB0aGUgYWlyd2F5IGVwaXRoZWxpdW0uXHJcbiAgXHJcbiAgICAgIE1ldGhvZHNcdTIwMDIgaGlQU0NzIHdlcmUgZGlmZmVyZW50aWF0ZWQgaW50byBsdW5nIHByb2dlbml0b3JzLCB3aGljaCB3ZXJlIGV4cGFuZGVkIGFzIDNEIG9yZ2Fub2lkcyBhbmQgbWF0dXJlZCBieSBhaXItbGlxdWlkIGludGVyZmFjZSBjdWx0dXJlIGFzIHBvbGFyaXNlZCBoaVBTQy1BRUMgZXBpdGhlbGlhLiBVc2luZyBDUklTUFIvQ2FzOSB0ZWNobm9sb2d5LCB3ZSBnZW5lcmF0ZWQgYSBoaVBTQ3Mga25vY2tvdXQgKEtPKSBmb3IgRk9YSTEsIGEgdHJhbnNjcmlwdGlvbiBmYWN0b3IgdGhhdCBpcyBlc3NlbnRpYWwgZm9yIGlvbm9jeXRlIHNwZWNpZmljYXRpb24uIERpZmZlcmVuY2VzIGJldHdlZW4gRk9YSTEgS08gaGlQU0MtQUVDcyBhbmQgdGhlaXIgd2lsZC10eXBlIChXVCkgaXNvZ2VuaWMgY29udHJvbHMgd2VyZSBpbnZlc3RpZ2F0ZWQgYnkgYXNzZXNzaW5nIGdlbmUgYW5kIHByb3RlaW4gZXhwcmVzc2lvbiwgZXBpdGhlbGlhbCBjb21wb3NpdGlvbiwgY2lsaWEgY292ZXJhZ2UgYW5kIG1vdGlsaXR5LCBwSCBhbmQgdHJhbnNlcGl0aGVsaWFsIGJhcnJpZXIgcHJvcGVydGllcy5cclxuICBcclxuICAgICAgUmVzdWx0c1x1MjAwMiBNYXR1cmUgaGlQU0MtQUVDIGVwaXRoZWxpYSBjb250YWluZWQgYmFzYWwgY2VsbHMsIHNlY3JldG9yeSBjZWxscywgY2lsaWF0ZWQgY2VsbHMgd2l0aCBtb3RpbGUgY2lsaWEsIHB1bG1vbmFyeSBuZXVyb2VuZG9jcmluZSBjZWxscyAoUE5FQ3MpIGFuZCBpb25vY3l0ZXMuIFRoZXJlIHdhcyBubyBkaWZmZXJlbmNlIGJldHdlZW4gRk9YSTEgV1QgYW5kIEtPIGhpUFNDcyBpbiB0ZXJtcyBvZiB0aGVpciBjYXBhY2l0eSB0byBkaWZmZXJlbnRpYXRlIGludG8gYWlyd2F5IHByb2dlbml0b3JzLiBIb3dldmVyLCBGT1hJMSBLTyBsZWQgdG8gbWF0dXJlIGhpUFNDLUFFQyBlcGl0aGVsaWEgd2l0aG91dCBpb25vY3l0ZXMgd2l0aCByZWR1Y2VkIGNhcGFjaXR5IHRvIHByb2R1Y2UgY2lsaWF0ZWQgY2VsbHMuXHJcbiAgXHJcbiAgICAgIENvbmNsdXNpb25cdTIwMDIgT3VyIHJlc3VsdHMgc3VnZ2VzdCB0aGF0IGlvbm9jeXRlcyBjb3VsZCBoYXZlIHJvbGUgYmV5b25kIHRyYW5zZXBpdGhlbGlhbCBpb24gdHJhbnNwb3J0IGJ5IHJlZ3VsYXRpbmcgZXBpdGhlbGlhbCBwcm9wZXJ0aWVzIGFuZCBob21lb3N0YXNpcyBpbiB0aGUgYWlyd2F5IGVwaXRoZWxpdW0uXHJcbiAgICB9LFxyXG4gICAgbGFuZ3VhZ2UgICAgID0ge2VufVxyXG4gIH1cclxuICBgXHJcbl0iLCAiXHJcbmltcG9ydCB7IEJ1dHRvbk9uZUVuZ2luZWVyaW5nIH0gZnJvbSBcIi4uL2NvbXBvbmVudHMvQnV0dG9uc1wiO1xyXG5pbXBvcnQgeyBvcGVuRWxlbWVudCB9IGZyb20gXCIuLi91dGlscy9vcGVuRWxlbWVudFwiO1xyXG5pbXBvcnQgeyBIMiwgSDMsIEg0LCBINSwgUGhpbGlwSDMgfSBmcm9tIFwiLi4vY29tcG9uZW50cy9IZWFkaW5nc1wiO1xyXG5pbXBvcnQgeyB1c2VUYWJOYXZpZ2F0aW9uIH0gZnJvbSBcIi4uL3V0aWxzL1RhYk5hdmlnYXRpb25cIjtcclxuaW1wb3J0IHsgQ29sbGFwc2libGUgfSBmcm9tIFwiLi4vY29tcG9uZW50cy9Db2xsYXBzaWJsZVwiO1xyXG5pbXBvcnQgeyB1c2VOYXZpZ2F0aW9uIH0gZnJvbSBcIi4uL3V0aWxzXCI7XHJcbmltcG9ydCB7IFRhYlNjcm9sbExpbmsgfSBmcm9tIFwiLi4vY29tcG9uZW50cy9MaW5rXCI7XHJcbmltcG9ydCB7IEluZm9Cb3ggfSBmcm9tIFwiLi4vY29tcG9uZW50cy9Cb3hlc1wiO1xyXG5pbXBvcnQgeyBEb3dubG9hZExpbmsgfSBmcm9tIFwiLi4vY29tcG9uZW50cy9CdXR0b25zXCI7XHJcbmltcG9ydCB7IFNlY3Rpb24gfSBmcm9tIFwiLi4vY29tcG9uZW50cy9zZWN0aW9uc1wiO1xyXG5pbXBvcnQgRW5nVHJmc291cmNlcyBmcm9tIFwiLi4vc291cmNlcy9lbmctdHJmLXNvdXJjZXNcIjtcclxuaW1wb3J0IEVuZ1JlcHNvdXJjZXMgZnJvbSBcIi4uL3NvdXJjZXMvZW5nLXJlcG9ydGVyLXNvdXJjZXNcIjtcclxuaW1wb3J0IEVuZ1BFc3lzdGVtcyBmcm9tIFwiLi4vc291cmNlcy9lbmctcGUtc291cmNlc1wiO1xyXG5pbXBvcnQgRW5nUGVnc291cmNlcyBmcm9tIFwiLi4vc291cmNlcy9lbmctcGVnLXNvdXJjZXNcIjtcclxuaW1wb3J0IEVuZ05pY2tzb3VyY2VzIGZyb20gXCIuLi9zb3VyY2VzL2VuZy1uaWNrYXNlcy1zb3VyY2VzXCI7XHJcbmltcG9ydCBFbmdEZWxzb3VyY2VzIGZyb20gXCIuLi9zb3VyY2VzL2VuZy1kZWxpdmVyeS1zb3VyY2VzXCI7XHJcbmltcG9ydCB7IFR3b0xpbmVQREYsIFBERiB9IGZyb20gXCIuLi9jb21wb25lbnRzL1BkZnNcIjtcclxuaW1wb3J0IHsgT25lRmlndXJlLCBUd29GaWd1cmVSb3cgfSBmcm9tIFwiLi4vY29tcG9uZW50cy9GaWd1cmVzXCI7XHJcblxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIEVuZ2luZWVyaW5nKCkge1xyXG4gICB1c2VUYWJOYXZpZ2F0aW9uKCk7XHJcbiAgIGNvbnN0IHtnb1RvUGFnZXNBbmRPcGVuVGFifSA9IHVzZU5hdmlnYXRpb24gKCk7XHJcbiAgIGNvbnN0IHtnb1RvUGFnZUFuZFNjcm9sbH0gPSB1c2VOYXZpZ2F0aW9uKCk7XHJcbiAgIGNvbnN0IHtnb1RvUGFnZVdpdGhUYWJBbmRTY3JvbGx9ID0gdXNlTmF2aWdhdGlvbigpO1xyXG4gICAgcmV0dXJuIChcclxuICAgICAgPD5cclxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvdyBtdC00XCI+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgPGJyLz4gPGJyLz4gXHJcbiAgICAgICAgICAgIDxkaXYgaWQ9XCJ0YWItb3VyLWN5Y2xlXCIgY2xhc3NOYW1lPVwiZW5naW5uZWVyaW5ndGFiXCIgc3R5bGU9e3tkaXNwbGF5OiBcIm5vbmVcIn19PlxyXG4gICAgICAgICAgICAgICA8c2VjdGlvbiA+IDxiciBpZD1cIm9iZW5lbmdpbmVlcmluZ1wiLz5cclxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJlbmctYm94IGJveFwiID5cclxuICAgICAgICAgICAgICAgICAgICAgPEgyIHRleHQ9XCJPdXIgY3ljbGVcIiBpZD1cIm91ci1jeWNsZS1oZWFkZXJcIj48L0gyPlxyXG4gICAgICAgICAgICAgICAgICAgICA8cD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgSW4gdGhlIGNvdXJzZSBvZiBvdXIgcHJvamVjdCwgaW5ub3ZhdGl2ZSB0aG91Z2h0cyB3ZXJlIHRha2VuIHVwLCByZWplY3RlZCwgZWxhYm9yYXRlZCwgZGlzY3Vzc2VkIGFuZCB0ZXN0ZWQuIE9uIHRoaXMgcGFnZSB3ZSBwcmVzZW50IGEgc2VsZWN0aW9uIG9mIGlkZWFzIHRoYXQgb2NjdXBpZWQgdXMgdGhlIG1vc3QgaW4gdGhlIGxhc3QgbW9udGguIE91ciB0cmFpbnMgb2YgdGhvdWdodCBhcmUgcmVwcmVzZW50ZWQgaW4gZm9ybSBvZiBpdGVyYXRpb25zIG9mIGVuZ2luZWVyaW5nIGN5Y2xlcy4gRWFjaCBlbmdpbmVlcmluZyBjeWNsZSBpcyBjb21wcmlzZWQgb2YgZm91ciBzdGVwczpcclxuICAgICAgICAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICA8dWw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxsaT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgPGI+RGVzaWduPC9iPjogSW4gdGhpcyBzdGVwIHRoZSBtb3RpdmF0aW9uIG9yIHByb2JsZW0sIHRoYXQgdGhlIGluZGl2aWR1YWwgaXRlcmF0aW9uIGFkZHJlc3NlcywgaXMgbWVudGlvbmVkLiBBIHRoZW9yZXRpY2FsIGFwcHJvYWNoIGFkZHJlc3NpbmcgdGhlIG1vdGl2YXRpb24gaXMgZXhwbGFpbmVkLlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2xpPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8bGk+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxiPkJ1aWxkPC9iPjogVGhlIHByYWN0aWNhbCBleGFtaW5hdGlvbiBvZiB0aGUgdGhlb3JldGljYWwgcGxhbiBkZXNjcmliZWQgaW4gdGhlIGRlc2lnbiBzZWN0aW9uIGlzIGV4ZWN1dGVkLCBlLiBnLiBieSBwbGFubmluZyBhbiBleHBlcmltZW50LCBieSBjcmVhdGluZyBhIGNvbnN0cnVjdCBpbiBzaWxpY28sIGJ5IGNsb25pbmcuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxsaT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgPGI+VGVzdDwvYj46IFRoZSBpbml0aWFsIGRlc2lnbiBpcyB0ZXN0ZWQsIGVpdGhlciBieSBjb25kdWN0aW5nIGFuIGV4cGVyaW1lbnQsIHRlc3RpbmcgYSBkZXNpZ24gaW4gc2lsaWNvLCBlLiBnLiBieSBtb2RlbGluZywgcmVmdXRpbmcgaWRlYXMgYmFzZWQgb24gbmV3IGlucHV0IG9yIGJhY2tncm91bmQgcmVzZWFyY2ggb3IgZGlzY3Vzc2luZyBhcHByb2FjaGVzIHdpdGggYW4gZXhwZXJ0LiBcclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9saT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGxpPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICA8Yj5MZWFybjwvYj46IEluIHRoaXMgbGFzdCBzZWN0aW9uLCB0ZXN0IHJlc3VsdHMgYXJlIGRpc2N1c3NlZCBhbmQgaW5zaWdodHMgZ2FpbmVkIGluIHRlc3RpbmcgdGhlIGRlc2lnbiBhcmUgZm9ybXVsYXRlZC5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9saT5cclxuICAgICAgICAgICAgICAgICAgICAgPC91bD5cclxuICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICA8YnIvPlxyXG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvd1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sIGJ1dHRvbi1sZWZ0XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicmlnaHRcIj48QnV0dG9uT25lRW5naW5lZXJpbmcgbGFiZWw9XCJOZXh0XCIgb3Blbj1cInJlcG9ydGVyXCIgc2Nyb2xsVG9JZD1cInJlcG9ydGVyLWhlYWRlclwiLz48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICA8L3NlY3Rpb24+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJlbmdpbm5lZXJpbmd0YWJcIiBpZD1cInRhYi1yZXBvcnRlclwiIHN0eWxlPXt7ZGlzcGxheTogXCJub25lXCJ9fT5cclxuICAgICAgICAgICAgPHNlY3Rpb24gaWQ9XCJyZXBvcnRlciBzZWNcIiA+XHJcbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZW5nLWJveCBib3hcIiA+XHJcbiAgICAgICAgICAgICAgICAgICAgIDxIMiBpZD1cInJlcG9ydGVyLWhlYWRlclwiIHRleHQ9XCJQcmltZSBFZGl0aW5nIFJlcG9ydGVyXCI+PC9IMj5cclxuICAgICAgICAgICAgICAgICAgICAgPHA+UHJpbWUgZWRpdGluZyBpcyBhIGlzIGEgdmVyeSBwcmVjaXNlIGFuZCBzYWZlIG1ldGhvZC4gSG93ZXZlciwgZGVwZW5kaW5nIG9uIHRoZSBnZW5vbWljIGxvY3VzIHRhcmdldGVkLCB0aGUgZWRpdGluZyBlZmZpY2llbmN5IGNhbiBiZSB2ZXJ5IGxvdy4gVGhlIEN5c3RpYyBGaWJyb3NpcyBjYXVzaW5nIENGVFIgRjUwOGRlbCBtdXRhdGlvbiBpcywgYXMgPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VzQW5kT3BlblRhYignbWF0dGlqc2ludicsICcvaHVtYW4tcHJhY3RpY2VzJyl9PiBNYXR0aWpzIEJ1bGNhZW4gPC9hPiAgc3RhdGVkIGluIG91ciBpbnRlcnZpZXcsIG9uZSBvZiwgaWYgbm90IHRoZSBtb3N0IG9idmlvdXMgYXBwbGljYXRpb24gb2YgcHJpbWUgZWRpdGluZywgY29uc2lkZXJpbmcgdGhlIGxhcmdlIGFtb3VudCBvZiBwZW9wbGUgYWZmZWN0ZWQuIFRoZSBsYWNrIG9mIHB1YmxpY2F0aW9ucyBhZGRyZXNzaW5nIENGVFIgdGFyZ2V0IGltcGxpZWQsIHRoYXQgdGhlIG11dGF0aW9uIG1pZ2h0IGJlIHBhcnRpY3VsYXJseSBoYXJkIHRvIGVkaXQuIEF0IGxvdyBlZGl0aW5nIGVmZmljaWVuY3ksIHN1Y2Nlc3NmdWwgZWRpdHMgYXJlIGhhcmQsIGlmIG5vdCBpbXBvc3NpYmxlIHRvIGRpc3Rpbmd1aXNoIGZyb20gdGhlIGJhY2tncm91bmQgbm9pc2UgdXNpbmcgY29udmVudGlvbmFsIG1ldGhvZHMgbGlrZSBzYW5nZXIgc2VxdWVuY2luZyBvciBxUENSLiBBcyBhIGJhc2lzIHRvIGVmZmVjdGl2ZWx5IHRlc3Qgb3VyIGFwcHJvYWNoIGFuZCBzY3JlZW4gZm9yIHdvcmtpbmcgcGVnUk5Bcywgd2UgbmVlZGVkIGEgaGlnaGx5IHNlbnNpdGl2ZSBtZXRob2Qgb2YgZGV0ZWN0aW9uIHdpdGggYXMgbGl0dGxlIG5vaXNlIGFzIHBvc3NpYmxlIHRvIG9wdGltaXplIG91ciBwcmltZSBlZGl0aW5nIGFwcHJvYWNoIGZvciBnZW5vbWljIENGVFIgdGFyZ2V0aW5nLjwvcD5cclxuICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiYm94XCIgPlxyXG4gICAgICAgICAgICAgICAgICAgICA8cCBpZD1cInJlcDFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPEgzIHRleHQ9XCJBIEZsdW9yZXNjZW5jZSBSZXBvcnRlclwiIGlkPVwicmVwMWhlYWRcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiRGVzaWduXCIgaWQ9XCJkZXNpZ24taGVhZFwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFdlIHJlYXNvbmVkIHRoYXQgdGhlIGVhc2llc3Qgd2F5IG9mIGRldGVjdGluZyBETkEgY2hhbmdlcyBpbiBhIGNlbGwgd291bGQgYmUgZmx1b3Jlc2NlbmNlLiBPdXIgaW5pdGlhbCBpZGVhIHdhcyB0byBjcmVhdGUgcGVnUk5BcyB0YXJnZXRpbmcgdGhlIGNvZGluZyBzZXF1ZW5jZSBvZiBhIGZsdW9yZXNjZW50IHByb3RlaW4sIHRoYXQgd291bGQgaW50cm9kdWNlIGEgbXV0YXRpb24gcmVzdWx0aW5nIGluIGEgZGlmZmVyZW50IGVtaXNzaW9uLCBnaXZpbmcgZWFzaWx5IGRldGVjdGFibGUgZmVlZGJhY2sgb2YgY29ycmVjdCBlZGl0aW5nLiBUaGUgb3JpZ2luYWwgQWVxdW9yZWEgdmljdG9yaWEgR0ZQIHByb3RlaW4gZGlmZmVycyBmcm9tIGF2R0ZQKFk2NlcpLCBlbWl0dGluZyBsaWdodCBpbiBhIHdhdmVsZW5ndGggb2YgYXJvdW5kIDUwOSBubSAoY3lhbiksIGFuZCBhdkdGUChZNjZIKSwgZW1pdHRpbmcgbGlnaHQgaW4gYSB3YXZlbGVuZ3RoIG9mIGFyb3VuZCA0NDggbm0gKGJsdWUpIGJ5IG9ubHkgb25lIGFtaW5vIGFjaWQgc3Vic3RpdHV0aW9uIGVhY2guPFRhYlNjcm9sbExpbmsgdGFiPVwidGFiLXJlcG9ydGVyXCIgbnVtPVwiMVwiIHNjcm9sbElkPVwiZGVzYy0xXCIvPiBQcmltZSBlZGl0aW5nIGNvdWxkIHRoZXJlZm9yZSBiZSB2aXN1YWxpemVkIGJ5IGZhY2lsaXRhdGluZyB0aGVzZSBzdWJzdGl0dXRpb25zIHdpdGggYSBwcmltZSBlZGl0b3IuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJCdWlsZFwiIGlkPVwiYnVpbGQtaGVhZFwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFRvIHRoaXMgZW5kLCB0aGUgd2lsZC10eXBlIGFuZCBlZGl0ZWQgdmVyc2lvbnMgb2YgdGhlIGF2R0ZQIHdlcmUgcHV0IGluIGNvbnRyYXN0IGFuZCB3ZSBzdGFydGVkIHNlYXJjaGluZyBmb3IgcG90ZW50aWFsIHBlZ1JOQXMgZm9yIGVkaXRpbmcgb25lIGludG8gdGhlIG90aGVyLlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxmaWd1cmU+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvZW5naW5lZXJpbmctY3ljbGUvcmVwLWl0MS5zdmdcIiBhbHQ9XCJJbGx1c3RyYXRpb24gb2YgZmx1b3Jlc2NlbmNlIHdhdmVsZW5ndGggY2hhbmdlIHJlcG9ydGVyXCIvPiAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmaWdjYXB0aW9uPjxiPkZpZ3VyZSAxOiBJbGx1c3RyYXRpb24gb2YgYSByZXBvcnRlciBzeXN0ZW0gYmFzZWQgb24gdGhlIGludHJvZHVjdGlvbiBvZiBhIHNpbmdsZSBhbWlubyBhY2lkIHN1YnN0aXR1dGlvbiBpbnRvIEdGUCBwbGFzbWlkcyB0cmFuc2Zvcm1lZCBpbnRvIEhFSzI5MyBjZWxscyBjaGFuZ2luZyB0aGUgZW1pc3Npb24gc3BlY3RydW0gaW4gYSBkZXRlY3RhYmxlIHdheS48L2I+IDwvZmlnY2FwdGlvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9maWd1cmU+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiVGVzdFwiIGlkPVwidGVzdC1oZWFkXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgV2hlbiB0cnlpbmcgdG8gZmluZCBwcm90b3NwYWNlcnMgZm9yIENhczkgYW5kIG90aGVyIHBvc3NpYmxlIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlV2l0aFRhYkFuZFNjcm9sbCAoe3Njcm9sbFRvSWQ6ICduaWNrYXNlLWhlYWRlcicsIHBhdGg6ICcvZW5naW5lZXJpbmcnLCB0YWJJZDogJ3RhYi1uaWNrYXNlJ30pfT5uaWNrYXNlczwvYT4sIHdlIG5vdGljZWQsIHRoYXQgdGhlIGxvY3VzIG9mIHRoZSBtdXRhdGlvbnMgaXMgdG9vIGZhciBhd2F5IGZyb20gYW55IFNwdUZ6MSBUQU0gc2VxdWVuY2VzLiBBZGRpdGlvbmFsbHksIHRoZSBhcHBsaWNhYmlsaXR5IG9mIGluc2lnaHRzIGdhaW5lZCB0aHJvdWdoIHBlZ1JOQSBvcHRpbWl6YXRpb24gaW4gdGhpcyBsb2N1cyB0byBDRlRSIGVkaXRpbmcgd291bGQgYWxzbyBiZSB2ZXJ5IGxpbWl0ZWQgZHVlIHRvIHRoZSB2YXN0IGRpZmZlcmVuY2VzIGluIHRoZSBzZXF1ZW5jZSBvZiBwcm90b3NwYWNlciBhbmQgc3Vycm91bmRpbmcgZ2Vub21pYyByZWdpb24uIEFkZGl0aW9uYWxseSwgd2UgbGVhcm5lZCBmcm9tIG91ciBpbnRlcnZpZXcgd2l0aCA8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZXNBbmRPcGVuVGFiKCdtYXR0aWpzaW52JywgJy9odW1hbi1wcmFjdGljZXMnKX0+TWF0dGlqcyBCdWxjYWVuPC9hPiB0aGF0IHRoZSB0eXBlIG9mIGVkaXQgKGluc2VydGlvbiwgc3Vic3RpdHV0aW9uIG9yIGRlbGV0aW9uKSBzaWduaWZpY2FudGx5IGltcGFjdHMgZWRpdGluZyBlZmZpY2llbmN5LiBBIG11dGF0aW9uIGNoYW5naW5nIEdGUCB0byBCRlAgd291bGQgaGF2ZSB0byBiZSBhIHN1YnN0aXR1dGlvbiBpbnN0ZWFkIG9mIHRoZSB0aHJlZS1udWNsZW90aWRlIGluc2VydGlvbiBuZWVkZWQgdG8gY29ycmVjdCBDRlRSIEY1MDhkZWwuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJMZWFyblwiIGlkPVwibGVhcm4taGVhZFwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIEZyb20gb3VyIG9ic2VydmF0aW9ucyB3ZSBsZWFybmVkIHRoYXQgYSByZXBvcnRlciBzeXN0ZW0gaXMgb25seSBvZiB1c2UsIGlmIGl0IGNhbiByZWFsbHkgbWltaWMgdGhlIGdlbm9taWMgdGFyZ2V0IG9mIGNob2ljZS4gVGhlIGFkanVzdG1lbnRzIHRvIGJlIG1hZGUgdG8gY3JlYXRlIGEgcGVnUk5BIHRhcmdldGluZyB0aGUgZ2Vub21pYyB0YXJnZXQgZnJvbSBhIHBlZ1JOQSB0YXJnZXRpbmcgdGhlIHJlcG9ydGVyIHNob3VsZCBiZSBhcyBtaW5vciBhcyBwb3NzaWJsZS4gVGhpcyBpbmNsdWRlcyBhIHNpbWlsYXIgc3BhY2VyIGFuZCBhIHNpbWlsYXIgZWRpdCB0byBiZSBtYWRlLlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiYm94XCIgPlxyXG4gICAgICAgICAgICAgICAgICAgICA8cCBpZD1cInJlcDJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPEgzIHRleHQ9XCJQcm9vZiBvZiBDb25jZXB0IGZvciBQRUFSXCIgaWQ9XCJyZXAyaGVhZFwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJEZXNpZ25cIiBpZD1cImRlc2lnbi1oZWFkXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgQWZ0ZXIgZXh0ZW5zaXZlIHJlc2VhcmNoIHdlIGNhbWUgYWNyb3NzIHRoZSBwcmltZSBlZGl0b3IgYWN0aXZpdHkgcmVwb3J0ZXIgKFBFQVIpIGNyZWF0ZWQgYnkgU2ltb24gZXQgYWwuICgyMDIyKTxUYWJTY3JvbGxMaW5rIHRhYj1cInRhYi1yZXBvcnRlclwiIG51bT1cIjJcIiBzY3JvbGxJZD1cImRlc2MtMlwiLz4sIHdoaWNoIGlzIHRoZSB0ZW1wbGF0ZSBvdXIgbW9kaWZpZWQgcmVwb3J0ZXIgcGxhc21pZCBpcyBiYXNlZCBvbi4gVGhlIFBFQVIgcGxhc21pZCBjb250YWlucyBhbiBlR0ZQIGNvZGluZyBzZXF1ZW5jZSB3aXRoIGFuIGludHJvbiBkZXJpdmVkIGZyb20gdGhlIG1vdXNlIFZpbSBnZW5lLiBJZiB0aGUgaW50cm9uIGlzIHJlbW92ZWQgZHVyaW5nIFJOQSBzcGxpY2luZywgdGhlIHR3byBleG9ucyBmb3JtIGEgY29udGludW91cyBvcGVuIHJlYWRpbmcgZnJhbWUuIEJ5IG11dGF0aW5nIHRoZSA1XHUyMDE5IHNwbGljaW5nIHNpZ25hbCwgYSB0YXJnZXQgaXMgY3JlYXRlZCB3aGljaCwgdXBvbiBjb3JyZWN0IGVkaXRpbmcsIGxlYWRzIHRvIGEgZ2Fpbi1vZi1mdW5jdGlvbi4gVGhlIHJlc3VsdGluZyBmbHVvcmVzY2VuY2UgY2FuIGJlIGltYWdlZCB1c2luZyBjb25mb2NhbCBtaWNyb3Njb3B5IG9yIHF1YW50aWZpZWQgYnkgbWVhbnMgb2YgZmxvdyBjeXRvbWV0cnkuIE5vdGFibHksIHRoZSBhcmVhIGRvd25zdHJlYW0gb2YgdGhlIDVcdTIwMTkgc3BsaWNlIHNpZ25hbCBpcyBpbnRyb25pYywgYW5kIHRodXMgY2FuIGJlIGVkaXRlZCB3aXRob3V0IGFueSBpbXBhY3Qgb24gdGhlIGNvZGluZyBzZXF1ZW5jZS4gQWRkaXRpb25hbGx5LCBTaW1vbiBldCBhbC4gc2hvd2VkLCB0aGF0IFx1MjAxQ2VmZmljaWVuY3kgb2YgcHJpbWUgZWRpdGluZyB0byBtb2RpZnkgUEVBUiBwbGFzbWlkcyBpcyBnb3Zlcm5lZCBieSB0aGUgc2FtZSBmYWN0b3JzIGFzIHByaW1lIGVkaXRpbmcgaW4gZ2Vub21pYyBjb250ZXh0XHUyMDFELiBXZSByZWFzb25lZCB0aGF0IHRoaXMgc3lzdGVtIG1pZ2h0IGJlIGZsZXhpYmxlLCBhbmQgc2Vuc2l0aXZlIGVub3VnaCB0byBidWlsZCBvdXIgb3B0aW1pemF0aW9ucyBzdHJhdGVnaWVzIHVwb24uXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJCdWlsZFwiIGlkPVwiYnVpbGQtaGVhZFwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFNpbmNlIG5vbmUgb2YgdXMgaGFkIGFueSBleHBlcmllbmNlIGluIHByaW1lIGVkaXRpbmcgYmVmb3JlIG91ciBwcm9qZWN0LCB3ZSB3YW50ZWQgdG8gdGVzdCB3aGV0aGVyIHdlIGNhbiBmYWNpbGl0YXRlIHByaW1lIGVkaXRpbmcgaW4gdGhlIGZpcnN0IHBsYWNlLiBUbyBkbyB0aGlzIGFuZCBhbHNvIGFzc2VzcyB0aGUgZnVuY3Rpb25hbGl0eSBvZiB0aGUgUEVBUiBzeXN0ZW0sIHdlIHNldCB1cCBhIHByb29mIG9mIGNvbmNlcHQgdXNpbmcgdGhlIFBFQVIgMmluMSBzeXN0ZW0uIFRoaXMgcGxhc21pZCBpbmNsdWRlcyBub3Qgb25seSB0aGUgZUdGUCB3aXRoIGFuZCBpbnRyb24gYW5kIGRpc3J1cHRlZCA1XHUyMDE5IHNwbGljZSBzaXRlLCBidXQgYWxzbyBhIHBlZ1JOQSBleHByZXNzaW9uIGNhc3NldHRlLiBUaGUgcGVnUk5BIGlzIGRlc2lnbmVkIGluIGEgd2F5IHRoYXQsIGluIGNvbWJpbmF0aW9uIHdpdGggYSBwcmltZSBlZGl0aW5nIHByb3RlaW4gY29tcGxleCwgY29ycmVjdHMgdGhlIGRpc3J1cHRlZCBzcGxpY2luZyBzaWduYWwuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJUZXN0XCIgaWQ9XCJ0ZXN0LWhlYWRcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBJbiB0aGUgZXhwZXJpbWVudCwgd2UgdHJhbnNmZWN0ZWQgSEVLMjkzIGNlbGxzIChhcyByZWNvbW1lbmRlZCBieSA8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZXNBbmRPcGVuVGFiKCdtYXR0aWpzaW52JywgJy9odW1hbi1wcmFjdGljZXMnKX0+TWF0dGlqcyBCdWxjYWVuPC9hPikgd2l0aCB0aGUgPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VXaXRoVGFiQW5kU2Nyb2xsICh7c2Nyb2xsVG9JZDogJ2N1cnJlbnQtcGUtc3lzdGVtcycsIHBhdGg6ICcvZW5naW5lZXJpbmcnLCB0YWJJZDogJ3RhYi1wZS1zeXN0ZW1zJyB9KX0+cENNVi1QRTIgcHJpbWUgZWRpdG9yPC9hPiBwbGFzbWlkIGFuZCB0aGUgcERBUzEyNDg5X1BFQVItR0ZQXzJpbjFfMi4wIG1lbnRpb25lZCBhYm92ZS4gT3VyIGZpcnN0IHByb29mIG9mIGNvbmNlcHQgc3VjY2VlZGVkIGFzIHdlIGNvdWxkIHNlZSBmbHVvcmVzY2VudCBjZWxscyA3MiBoIGFmdGVyIHRyYW5zZmVjdGlvbi4gSW4gY29udHJhc3QsIG5lZ2F0aXZlIGNvbnRyb2xzIHdpdGggb25seSBvbmUgb2YgdGhlIHBsYXNtaWRzIHRyYW5zZmVjdGVkIGRpZCBub3Qgc2hvdyBhbnkgZmx1b3Jlc2NlbmNlLiBIb3dldmVyLCB0aGUgdHJhbnNmZWN0aW9uIGVmZmljaWVuY3kgaW4gb3VyIGluaXRpYWwgdGVzdCBydW5zIHdhcyBxdWl0ZSBsb3csIGFzIGluZGljYXRlZCBieSBhIHRlY2huaWNhbCBwb3NpdGl2ZSBjb250cm9sLlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxmaWd1cmU+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvZW5naW5lZXJpbmctY3ljbGUvcmVwLWl0Mi5zdmdcIiBhbHQ9XCJJbGx1c3RyYXRpb24gb2YgdGhlIHByb29mIG9mIGNvbmNlcHQgdXNpbmcgdGhlIFBFQVIyaW4xIHN5c3RlbVwiLz4gIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmlnY2FwdGlvbj48Yj5GaWd1cmUgMjo8L2I+IElsbHVzdHJhdGlvbiBvZiB0aGUgcHJvb2Ygb2YgY29uY2VwdCBleHBlcmltZW50LiBIRUsyOTMgY2VsbHMgdHJhbnNpZW50bHkgdHJhbnNmb3JtZWQgd2l0aCB0aGUgcERhczEyMTg5X1BFQVItR0ZQXzJpbjFfMi4wIHBsYXNtaWQgb24gdGhlIGxlZnQgc2lkZSBzaG93IGZsdW9yZXNjZW5jZSBhZnRlciB0cmFuc2Zvcm1hdGlvbiB3aXRoIGEgcHJpbWUgZWRpdG9yIGV4cHJlc3Npb24gcGxhc21pZC48L2ZpZ2NhcHRpb24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZmlndXJlPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8SDQgdGV4dD1cIkxlYXJuXCIgaWQ9XCJsZWFybi1oZWFkXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgVGhpcyBwcm92ZWQsIHRoYXQgbm90IG9ubHkgd2Ugd2VyZSBhYmxlIHRvIHVzZSBwcmltZSBlZGl0aW5nIGluIG91ciBtb2RlbCwgYnV0IGFsc28gdGhhdCB0aGUgUEVBUiByZXBvcnRlciBzeXN0ZW0gY2FuIHJlcG9ydCBzdWNjZXNzZnVsIHByaW1lIGVkaXRpbmcuIFRob3VnaCB0aGlzIHdhcyBhIHZlcnkgcHJvbWlzaW5nIHN0YXJ0LCBmdXJ0aGVyIHN0ZXBzIGhhZCB0byBiZSB0YWtlbiB0byBlbmFibGUgY29udGV4dCBzcGVjaWZpYyB0ZXN0aW5nIG9mIHByaW1lIGVkaXRpbmcuIEZpcnN0bHksIHRoZSB0cmFuc2ZlY3Rpb24gZWZmaWNpZW5jeSBoYWQgdG8gYmUgaW1wcm92ZWQgKHNlZSA8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZVdpdGhUYWJBbmRTY3JvbGwgKHtzY3JvbGxUb0lkOiAndHJhbnNmZWN0aW9uLWhlYWRlcicsIHBhdGg6ICcvZW5naW5lZXJpbmcnLCB0YWJJZDogJ3RyYW5zZmVjdGlvbicgfSl9PiBUcmFuc2ZlY3Rpb24gT3B0aW1pemF0aW9uPC9hPikuIFNlY29uZGx5LCB0aGUgcmVwb3J0ZXIgaGFkIHRvIGJlIG1vZGlmaWVkIGluIGEgd2F5IHRoYXQgcmVzZW1ibGVzIHRoZSBnZW5vbWljIENGVFIgdGFyZ2V0LlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiYm94XCIgPlxyXG4gICAgICAgICAgICAgICAgICAgICA8cCBpZD1cInJlcDNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPEgzIHRleHQ9XCJDb250ZXh0dWFsaXphdGlvbiBvZiBQRUFSXCIgaWQ9XCJyZXAzaGVhZFwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJEZXNpZ25cIiBpZD1cImRlc2lnbi1oZWFkXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgVGhlIG9yaWdpbmFsIFBFQVIgcGxhc21pZCBwREFTMTIxMjRfUEVBUi1HRlAtcHJlZWRpdGVkIHRoYXQgd2UgYm91Z2h0IGZyb20gQWRkR2VuZSByZXByZXNlbnRzLCBhcyB0aGUgbmFtZSBzdWdnZXN0cywgaG93IHRoZSByZXBvcnRlciBzaG91bGQgbG9vayBsaWtlIGFmdGVyIHN1Y2Nlc3NmdWwgZWRpdGluZyBhbmQgY2FuIHRodXMgYmUgdXNlZCBhcyBhIHBvc2l0aXZlIGNvbnRyb2wgYW5kIGZvciBub3JtYWxpemF0aW9uLiBUbyBhbHRlciB0aGUgUEVBUiBwbGFzbWlkIHNvIHRoYXQgaXQgbWltaWNzIHRoZSBtdXRhdGVkIGdlbm9taWMgQ0ZUUiB0YXJnZXQsIHdlIGZpcnN0IGFuYWx5emVkIHRoZSByZWdpb24gc3Vycm91bmRpbmcgQ0ZUUiBGNTA4ZGVsIG11dGF0aW9uLiBBcyB0aGUgbXV0YXRpb24gaXMgYSB0aHJlZSBiYXNlIHBhaXIgZGVsZXRpb24sIHdlIGludHJvZHVjZWQgdGhlIHZlcnkgc2FtZSBhdCB0aGUgNVx1MjAxOSBzcGxpY2luZyBzaWduYWwuIEZvciB0aGlzIG1vZGlmaWNhdGlvbiB0byByZWxpYWJseSBkaXNydXB0IGludHJvbiBzcGxpY2luZyBhbmQgdGh1cyBlR0ZQIGV4cHJlc3Npb24sIHdlIGVmZmVjdGl2ZWx5IHJlbW92ZWQgdGhlIEdUIGJhc2VzIG9mIHRoZSBpbnRyb25pYyA1XHUyMDE5IHNwbGljZSBkb25vciBzaXRlIGFzIHdlbGwgYXMgdGhlIHByZWNlZGluZywgZXhvbmljIEcgYmFzZSBvZiB0aGUgNVx1MjAxOSBmbGFua2luZyBzZXF1ZW5jZS4gU2Vjb25kbHksIHdlIHJlcGxhY2VkIHRoZSBpbnRyb25pYyByZWdpb24gZG93bnN0cmVhbSBvZiB0aGUgZm91ciBiYXNlIHBhaXIgM1x1MjAxOSBmbGFua2luZyByZWdpb24gd2l0aCB0aGUgcmVzcGVjdGl2ZSBzZXF1ZW5jZSBmcm9tIHRoZSBDRlRSIGxvY3VzLiBUaGlzIDI3IGJwIHN1YnN0aXR1dGUgaW5jbHVkZWQgYSBQQU0gc2VxdWVuY2UsIGFuIGVudGlyZSBzcGFjZXIgYXMgd2VsbCBhcyBmb3VyIGFkZGl0aW9uYWwgYmFzZSBwYWlycyBpbiBiZXR3ZWVuIHByZXNlbnQgaW4gdGhlIG9yaWdpbmFsIGdlbmUgc2VxdWVuY2UuIExhc3RseSwgd2UgaW50cm9kdWNlZCBzaWxlbnQgbXV0YXRpb25zIHVwc3RyZWFtIG9mIHRoZSA1XHUyMDE5IGZsYW5raW5nIHNlcXVlbmNlIHRoYXQgbG93ZXJlZCB0aGUgR0MgY29udGVudC4gVGhpcyB3YXMgdG8gbWltaWMgdGhlIEFULXJpY2ggcmVnaW9uIHByZWNlZGluZyB0aGUgRjUwOGRlbCBtdXRhdGlvbiBpbiB0aGUgQ0ZUUiBnZW5lLiBUaGlzIHJldmVhbHMgb25lIG9mIHRoZSBuZWNlc3Nhcnkgc2hvcnRjb21pbmdzIG9mIHRoaXMgcmVwb3J0ZXI6IEVkaXRzIHVwc3RyZWFtIG9mIHRoZSA1XHUyMDE5IGRvbm9yIHNpdGUgYXJlIGhlYXZpbHkgcmVzdHJpY3RlZCBieSB0aGUgZUdGUCBjb2Rpbmcgc2VxdWVuY2UuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGZpZ3VyZT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9lbmdpbmVlcmluZy1jeWNsZS9yZXAtc3RyYXRlZ3ktaXQzLnN2Z1wiIGFsdD1cIk1vZGlmaWNhdGlvbiBzdHJhdGVneSBmb3IgY3JlYXRpb24gb2YgdGhlIHBQRUFSX0NGVFIgcGxhc21pZFwiLz4gIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmlnY2FwdGlvbj48Yj5GaWd1cmUgMzo8L2I+IElsbHVzdHJhdGlvbiBvZiB0aGUgbW9kaWZpY2F0aW9uIHN0cmF0ZWd5IGZvciB0aGUgcFBFQVJfQ0ZUUiByZXBvcnRlci4gVGhlIHBEQVMxMjEyNF9QRUFSLUdGUC1wcmVlZGl0ZWQgcGxhc21pZCB3YXMgbW9kaWZpZWQgYnkgaW50cm9kdWNpbmcgYSAzIGJwIGRlbGV0aW9uIHJlc2VtYmxpbmcgdGhlIEY1MDhkZWwgbXV0YXRpb24sIGluc2VydGluZyBhIDI3IGJwIHNlcXVlbmNlIGZyb20gdGhlIGdlbm9taWMgQ0ZUUiB0YXJnZXQgaW5jbHVkaW5nIFBBTSBhbmQgcHJvdG9zcGFjZXIgc2VxdWVuY2UgYXMgd2VsbCBhcyBtYWtpbmcgc2lsZW50IGVkaXRzIHRvIGFjY291bnQgZm9yIHRoZSBBVC1yaWNoIHJlZ2lvbiB1cHN0cmVhbSBvZiB0aGUgbXV0YXRpb24uPC9maWdjYXB0aW9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2ZpZ3VyZT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJCdWlsZFwiIGlkPVwiYnVpbGQtaGVhZFwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFdlIGNvbnN0cnVjdGVkIHRoZSByZXBvcnRlciBzeXN0ZW0gYnkgZmlyc3QgYW5hbHl6aW5nIHRoZSBvcmlnaW5hbCBwbGFzbWlkIHRvIGlkZW50aWZ5IGFwcHJvcHJpYXRlIHJlc3RyaWN0aW9uIHNpdGVzLiBXZSB0aGVuIGRpZ2VzdGVkIHRoZSBwbGFzbWlkIGJhY2tib25lIGFuZCBjbG9uZWQgaW4gYSBnZW5lIHN5bnRoZXNpcyBmcmFnbWVudCBvcmRlcmVkIGF0IElEVCBjb250YWluaW5nIHRoZSBlZGl0cyB2aWEgR2lic29uIEFzc2VtYmx5IGNsb25pbmcuIFRoZSBjb3JyZWN0IGNsb25pbmcgd2FzIHZhbGlkYXRlZCBmaXJzdCBieSBjb2xvbnkgUENSIGFuZCB0aGVuIGJ5IHNlcXVlbmNpbmcgdGhlIHJlZ2lvbnMgb2YgdGhlIHBsYXNtaWQgY29udGFpbmluZyB0aGUgY2xvbmluZyBzaXRlcyBhbmQgb3VyIG1vZGlmaWNhdGlvbnMuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJUZXN0XCIgaWQ9XCJ0ZXN0LWhlYWRcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBXZSBldmFsdWF0ZWQgdGhlIGZ1bmN0aW9uYWxpdHkgb2Ygb3VyIHJlcG9ydGVyIHN5c3RlbSBieSBjby10cmFuc2ZlY3Rpbmcgb3VyIHJlcG9ydGVyIGNvbnN0cnVjdCB3aXRoIGEgcENNVi1QRTIgcHJpbWUgZWRpdG9yIHBsYXNtaWQgYXMgd2VsbCBhcyBhIHBsYXNtaWQgZXhwcmVzc2luZyBwZWdSTkEgdGhhdCB0YXJnZXRlZCBvdXIgcmVwb3J0ZXIgKHNlZSA8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZXNBbmRPcGVuVGFiKCdwZWdybmEnLCAnL2VuZ2luZWVyaW5nJyl9PiBwZWdSTkEgZW5naW5lZXJpbmcgY3ljbGU8L2E+KSBpbnRvIEhFSzI5MyBjZWxscy4gQWZ0ZXIgNzIgaCB3ZSBzYXcgYSBzaWduaWZpY2FudCBudW1iZXIgb2YgY2VsbHMgc2hvd2luZyBmbHVvcmVzY2VuY2UuIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRpdGlvbmFsbHksIGZvciBwb3NpdGl2ZSBjb250cm9scyB3ZSB0cmFuc2ZlY3RlZCBhIHRlY2huaWNhbCBjb250cm9sIHBsYXNtaWQgYXMgd2VsbCB0aGUgdW5tb2RpZmllZCBwREFTMTIxMjRfUEVBUi1HRlAtcHJlZWRpdGVkIHBsYXNtaWQsIHdoaWNoIGNvdWxkIGJlIHVzZWQgdG8gZGV0ZXJtaW5lIHRoZSB0cmFuc2ZlY3Rpb24gZWZmaWNpZW5jeSBhcyB3ZWxsIGFzIG5vcm1hbGl6ZSB0aGUgZWRpdGluZyBlZmZpY2llbmN5LiBBcyBuZWdhdGl2ZSBjb250cm9scywgb3VyIG1vZGlmaWVkIHBsYXNtaWQsIHBDTVYtUEUyIGFuZCB0aGUgcGVnUk5BIHBsYXNtaWQgd2VyZSB0cmFuc2ZlY3RlZC4gVGhlIHBvc2l0aXZlIGNvbnRyb2xzIHNob3dlZCBmbHVvcmVzY2VuY2UsIHdoaWxlIHRoZSBuZWdhdGl2ZSBjb250cm9sIGRpZCBub3QuIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxmaWd1cmU+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvZW5naW5lZXJpbmctY3ljbGUvcmVwLWl0My5zdmdcIiBhbHQ9XCJJbGx1c3RyYXRpb24gb2YgcGVnUk5BIHRlc3RpbmcgdXNpbmcgdGhlIHBQRUFSX0NGVFIgc3lzdGVtXCIvPiAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmaWdjYXB0aW9uPjxiPkZpZ3VyZSA0OjwvYj4gSWxsdXN0cmF0aW9uIG9mIHRoZSBwZWdSTkEgdGVzdGluZyB1c2luZyB0aGUgcFBFQVJfQ0ZUUiBzeXN0ZW0uIEhFSzI5MyBjZWxscyB0cmFuc2llbnRseSB0cmFuc2Zvcm1lZCB3aXRoIHRoZSBwUEVBUl9DRlRSIHBsYXNtaWQgKGluIHRoZSBtaWRkbGUpIHNob3cgZmx1b3Jlc2NlbmNlIGFmdGVyIHRyYW5zZm9ybWF0aW9uIHdpdGggYSBwcmltZSBlZGl0b3IgYW5kIGEgcmVwb3J0ZXItc3BlY2lmaWMgcGVnUk5BIGV4cHJlc3Npb24gcGxhc21pZC4gVGhlIHBEQVMxMjEyNF9QRUFSLUdGUC1wcmVlZGl0ZWQgaXMgdXNlZCBhcyBhbiBpbnRlcm5hbCBwb3NpdGl2ZSBjb250cm9sIGFuZCBmb3Igbm9ybWFsaXphdGlvbi48L2ZpZ2NhcHRpb24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZmlndXJlPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8SDQgdGV4dD1cIkxlYXJuXCIgaWQ9XCJsZWFybi1oZWFkXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgT3VyIHJlc3VsdHMgZGVtb25zdHJhdGUgdGhyZWUgdGhpbmdzOiBGaXJzdGx5LCB0aGUgb3JpZ2luYWwgcERBUzEyMTI0X1BFQVItR0ZQLXByZWVkaXRlZCBwbGFzbWlkIGxlYWRzIHRvIHVuZGlzcnVwdGVkIGV4cHJlc3Npb24gb2YgZUdGUCBpbiB0aGUgdHJhbnNmZWN0ZWQgY2VsbHMuIFNlY29uZGx5LCB0aGUgbW9kaWZpY2F0aW9ucyB0aGF0IHdlIG1hZGUgdG8gY3JlYXRlIG91ciBvd24sIGNvbnRleHQgc3BlY2lmaWMgUEVBUiBwbGFzbWlkIHByZXZlbnRlZCBwcm9wZXIgZXhwcmVzc2lvbiBvZiBlR0ZQIGluIHRyYW5zZmVjdGVkLCB1bmVkaXRlZCBjZWxscyBhcyBwbGFubmVkIGFuZCBub3RhYmx5IHdpdGggbm8gYXBwYXJlbnQgbm9pc2UuIFRoZSBsYXN0IGFuZCBtb3N0IGltcG9ydGFudCBpbnNpZ2h0IGdhaW5lZCB3YXMsIHRoYXQgZWRpdGluZyBvZiB0aGUgcmVwb3J0ZXIgcGxhc21pZCB1c2luZyByZXNwZWN0aXZlIHBlZ1JOQXMgc3VjY2Vzc2Z1bGx5IHJlc3RvcmVzIGVHRlAgZXhwcmVzc2lvbiwgcHJvdmluZyB0aGF0IG91ciByZXBvcnRlciB3b3JrcyBhcyBpbnRlbmRlZC5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgPGI+VGhpcyBhY2hpZXZlbWVudCBmb3JtZWQgYSBjb252ZW5pZW50IGJhc2lzIGZvciB0aGUgZm9sbG93aW5nIG9wdGltaXphdGlvbiBvZiBwcmltZSBlZGl0aW5nIGluIHRoZSBDRlRSIEY1MDhkZWwgbG9jdXMgZm9yIHVzIGFzIHdlbGwgYXMgb3RoZXIgcmVzZWFyY2ggZ3JvdXBzLjwvYj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImJveFwiID5cclxuICAgICAgICAgICAgICAgICAgICAgPHAgaWQ9XCJyZXA0XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxIMyB0ZXh0PVwiQXBwbGljYXRpb24gaW4gZXBpdGhlbGlhbCBDZWxsc1wiIGlkPVwicmVwNGhlYWRcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiRGVzaWduXCIgaWQ9XCJkZXNpZ24taGVhZFwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIEFsdGhvdWdoIHdlIGNvdWxkIHNob3cgdGhhdCBvdXIgUEVBUiByZXBvcnRlciBwbGFzbWlkIHdvcmtzIGluIGEgSEVLIGNlbGwgbW9kZWwsIGFjY29yZGluZyB0byA8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZXNBbmRPcGVuVGFiKCdpZ25hdG92YScsICcvaHVtYW4tcHJhY3RpY2VzJyl9PiBQcm9mLkRyLiBab3lhIElnbmF0b3ZhIDwvYT4gaW5zaWdodHMgZ2FpbmVkIGhlcmUgbWlnaHQgc3RpbGwgbm90IGVudGlyZWx5IHRyYW5zZmVyIHRvIGNlbGxzIGFjdGl2ZWx5IGV4cHJlc3NpbmcgQ0ZUUi4gQXMgcmVjb21tZW5kZWQsIHdlIGFwcGxpZWQgb3VyIHJlcG9ydGVyIHRvIGEgc3lzdGVtIGNsb3NlciB0byBhIHRoZXJhcGV1dGljIHRhcmdldCA8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZUFuZFNjcm9sbCAoJ0NlbGwgQ3VsdHVyZTJIJywgJy9tYXRlcmlhbHMtbWV0aG9kcycpfT5DRkJFNDFvLTwvYT4uIFRoZSBjZWxscyBhcmUgZGVyaXZlZCBmcm9tIGJyb25jaGlhbCBlcGl0aGVsaWFsIGNlbGxzIG9mIGEgQ3lzdGljIEZpYnJvc2lzIHBhdGllbnQgYW5kIGFyZSBob21venlnb3VzIGZvciBDRlRSIEY1MDhkZWwuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJCdWlsZFwiIGlkPVwiYnVpbGQtaGVhZFwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIEZvciBleHBlcmltZW50aW5nIGluIENGQkU0MW8tIGNlbGxzLCB0aGUgc2FtZSByZXBvcnRlciBjb25zdHJ1Y3Qgd2FzIHVzZWQgYXMgZm9yIHRoZSBIRUsyOTMgdGVzdC4gSG93ZXZlciwgd2UgdXNlZCBhIGRpZmZlcmVudCBwcmltZSBlZGl0b3IgKHBDTVYtUEU2Yywgc2VlIHByaW1lIGVkaXRpbmcgc3lzdGVtcyBlbmdpbmVlcmluZyBjeWNsZTxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlc0FuZE9wZW5UYWIoJ3BlLXN5c3RlbXMnLCAnL2VuZ2luZWVyaW5nJyl9PiBwcmltZSBlZGl0aW5nIHN5c3RlbXMgY2lyY2xlIDwvYT4pLCBhbmQgb25seSBwZWdSTkFzIHdlcmUgdXNlZCwgdGhhdCBwcm92ZWQgdGhlIG1vc3QgZWZmaWNpZW50IGluIHByZWNlZGluZyBleHBlcmltZW50cyAoc2VlIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlc0FuZE9wZW5UYWIoJ3BlZ3JuYScsICcvZW5naW5lZXJpbmcnKX0+IHBlZ1JOQSBlbmdpbmVlcmluZyBjeWNsZSA8L2E+KS5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8SDQgdGV4dD1cIlRlc3RcIiBpZD1cInRlc3QtaGVhZFwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFNpbWlsYXIgdG8gdGhlIHByZXZpb3VzIGN5Y2xlLCB3ZSBldmFsdWF0ZWQgdGhlIGZ1bmN0aW9uYWxpdHkgb2Ygb3VyIHJlcG9ydGVyIHN5c3RlbSBieSBjby10cmFuc2ZlY3Rpbmcgb3VyIHJlcG9ydGVyIGNvbnN0cnVjdCB3aXRoIGEgcENNVi1QRTZjIHByaW1lIGVkaXRvciBwbGFzbWlkIGFzIHdlbGwgYXMgYSBwbGFzbWlkIGV4cHJlc3NpbmcgcGVnUk5BIHRoYXQgdGFyZ2V0ZWQgb3VyIHJlcG9ydGVyIHRoaXMgdGltZSBpbnRvIENGQkU0MW8tIGNlbGxzLiBBZnRlciA3MiBoIHdlIHNhdyBhIHNpZ25pZmljYW50IG51bWJlciBvZiBjZWxscyBzaG93aW5nIGZsdW9yZXNjZW5jZS4gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIExpa2Ugd2l0aCB0aGUgZXhwZXJpbWVudHMgaW4gSEVLIGNlbGxzLCB3ZSB0cmFuc2ZlY3RlZCBhIHRlY2huaWNhbCBjb250cm9sIHBsYXNtaWQgYXMgd2VsbCB0aGUgdW5tb2RpZmllZCBwREFTMTIxMjRfUEVBUi1HRlAtcHJlZWRpdGVkIHBsYXNtaWQgYXMgcG9zaXRpdmUgY29udHJvbHMgYW5kIG91ciBtb2RpZmllZCBwbGFzbWlkLCBwQ01WLVBFNmMgYW5kIHRoZSBwZWdSTkEgcGxhc21pZCBpbmRpdmlkdWFsbHkgYXMgbmVnYXRpdmUgY29udHJvbHMuIEFnYWluLCB0aGUgcG9zaXRpdmUgY29udHJvbHMgc2hvd2VkIHNvbGlkIGZsdW9yZXNjZW5jZSwgd2hpbGUgdGhlIG5lZ2F0aXZlIGNvbnRyb2wgZGlkIG5vdC4gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGZpZ3VyZT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9lbmdpbmVlcmluZy1jeWNsZS9yZXAtaXQ0LnN2Z1wiIGFsdD1cIklsbHVzdHJhdGlvbiBvZiBhcHBseWluZyB0aGUgcFBFQVJfQ0ZUUiBzeXN0ZW0gdG8gbHVuZyBlcGl0aGVsaWFsIGNlbGwgbGluZXNcIi8+ICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZpZ2NhcHRpb24+PGI+RmlndXJlIDU6PC9iPiBJbGx1c3RyYXRpb24gb2YgdGhlIHBlZ1JOQSB0ZXN0aW5nIHVzaW5nIHRoZSBwUEVBUl9DRlRSIHN5c3RlbS4gQ0ZCRTQxby0gY2VsbHMgdHJhbnNpZW50bHkgdHJhbnNmb3JtZWQgd2l0aCB0aGUgcFBFQVJfQ0ZUUiBwbGFzbWlkIChpbiB0aGUgbWlkZGxlKSBzaG93IGZsdW9yZXNjZW5jZSBhZnRlciB0cmFuc2Zvcm1hdGlvbiB3aXRoIGEgcHJpbWUgZWRpdG9yIGFuZCBhIHJlcG9ydGVyLXNwZWNpZmljIHBlZ1JOQSBleHByZXNzaW9uIHBsYXNtaWQuIFRoZSBwREFTMTIxMjRfUEVBUi1HRlAtcHJlZWRpdGVkIGlzIHVzZWQgYXMgYW4gaW50ZXJuYWwgcG9zaXRpdmUgY29udHJvbCBhbmQgZm9yIG5vcm1hbGl6YXRpb24uPC9maWdjYXB0aW9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2ZpZ3VyZT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJMZWFyblwiIGlkPVwibGVhcm4taGVhZFwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFRoaXMgZXhwZXJpbWVudCBjb25maXJtcyB0aGF0IG91ciByZXBvcnRlciBjYW4gbm90IG9ubHkgYmUgdXNlZCBpbiBjZWxsIGxpbmVzIGRpc3RhbnRseSByZWxhdGVkIHRvIHBhdGllbnQgY2VsbHMgb2YgaW50ZXJlc3QsIGluIG91ciBjYXNlIEhFSzIwMyBjZWxscywgYnV0IGFsc28gd29ya3MgaW4gY2VsbHMgYWN0aXZlbHkgZXhwcmVzc2luZyBDRlRSIGFuZCBjYXJyeWluZyB0aGUgbXV0YXRpb24uIFRoZSByZXBvcnRlciBzdGlsbCBzaG93ZWQgbm8gbm9pc2UuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJib3hcIiA+XHJcbiAgICAgICAgICAgICAgICAgICAgIDxwIGlkPVwicmVwNVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8SDMgdGV4dD1cIkFwcGxpY2F0aW9uIGluIFByaW1hcnkgQ2VsbHNcIiBpZD1cInJlcDVoZWFkXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8SDQgdGV4dD1cIkRlc2lnblwiIGlkPVwiZGVzaWduLWhlYWRcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBUaGUgbW9kZWwgY2xvc2VzdCB0byBhcHBsaWNhdGlvbiBpbiBhY3R1YWwgcGF0aWVudCBjZWxscyBhcmUgaHVtYW4gZGVyaXZlZCBwcmltYXJ5IGNlbGxzLiBGb3Igb3VyIGxhc3QgdGVzdCBvZiBvdXIgbW9kaWZpZWQgUEVBUiByZXBvcnRlciwgd2UgdGh1cyBjaG9zZSB0byB1c2UgPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VBbmRTY3JvbGwgKCdDZWxsIEN1bHR1cmUzSCcsICcvbWF0ZXJpYWxzLW1ldGhvZHMnKX0+aHVtYW4gbmFzYWwgZXBpdGhlbGlhbCBjZWxsczwvYT4gZGVyaXZlZCBmcm9tIG1lbWJlcnMgb2Ygb3VyIHRlYW0uXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJCdWlsZFwiIGlkPVwiYnVpbGQtaGVhZFwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIEZvciB0ZXN0aW5nIG91ciByZXBvcnRlciBpbiB0aGUgaHVtYW4gbmFzYWwgZXBpdGhlbGlhbCBjZWxscywgdGhlIHNhbWUgY29uc3RydWN0cyBoYXZlIGJlZW4gdXNlZCBhcyBpbiB0aGUgcHJldmlvdXMgaXRlcmF0aW9uIHdpdGggQ0ZCRTQxby0gY2VsbHMuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJUZXN0XCIgaWQ9XCJ0ZXN0LWhlYWRcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBUaGUgZXhwZXJpbWVudGFsIHNldHVwIGZvciB0aGlzIGV4cGVyaW1lbnQgd2FzIGEgc2NhbGVkIGRvd24gdmVyc2lvbiBvZiB0aGUgcHJldmlvdXMgY3ljbGUgd2l0aCB0aGUgb25seSBhbHRlcmVkIHZhcmlhYmxlIGJlaW5nIHRoZSBjZWxscyB0cmFuc2ZlY3RlZC4gSW4gdGhpcyBjYXNlLCB3ZSBkaWQgbm90IG9ic2VydmUgYW55IGZsdW9yZXNjZW5jZSwgbmVpdGhlciBpbiB0aGUgdGVzdGVkIGNlbGxzLCBub3IgdGhlIHRlY2huaWNhbCBvciBwREFTMTIxMjRfUEVBUi1HRlAtcHJlZWRpdGVkIHBvc2l0aXZlIGNvbnRyb2xzLlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiTGVhcm5cIiBpZD1cImxlYXJuLWhlYWRcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBJbiB0aGlzIGxhc3QgZXhwZXJpbWVudCwgdGhlIG5lZ2F0aXZlIHRlY2huaWNhbCBwb3NpdGl2ZSBjb250cm9sIGltcGxpZXMgYSBmYWlsZWQgdHJhbnNmZWN0aW9uIG9mIHRoZSBjZWxscy4gVGh1cywgdGhpcyBhdHRlbXB0IGRpZCBub3QgYWxsb3cgdG8gZHJhdyBhbnkgY29uY2x1c2lvbiByZWdhcmRpbmcgdGhlIGZ1bmN0aW9uIG9mIG91ciByZXBvcnRlciBpbiBwcmltYXJ5IGNlbGxzLiBUaGUgZXhwZXJpbWVudCBpcyB0byBiZSByZXBlYXRlZCBpbiB0aGUgZnV0dXJlLlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiYm94XCIgPlxyXG4gICAgICAgICAgICAgICAgICAgICA8cCBpZD1cInJlcDZcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPEgzIHRleHQ9XCJPdXRsb29rXCIgaWQ9XCJyZXA2aGVhZFwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIE91ciBDRlRSIGNvbnRleHR1YWxpemVkIFBFQVIgcmVwb3J0ZXIgcHJvdmVkIHRvIGNvbnNpc3RlbnRseSBhbGxvdyBkZXRlY3Rpb24gb2YgcHJpbWUgZWRpdGluZyB3aXRob3V0IG5vdGFibGUgbm9pc2UsIGxheWluZyB0aGUgZm91bmRhdGlvbiBmb3Igb3B0aW1pemF0aW9uIG9mIGV4aXN0aW5nIGFuZCB0ZXN0aW5nIG9mIG5ldyBwcmltZSBlZGl0aW5nIHN5c3RlbXMuIEFsdGhvdWdoIHZlcnkgdmVyc2F0aWxlIGluIHRoZSBjb250ZXh0IG9mIHRhcmdldGluZyBDRlRSIEY1MDhkZWwgd2l0aCB0aGUgPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VzQW5kT3BlblRhYigncGVnUk5BLWdlbmF1LWNvbGxhcHNpYmxlJywgJy9kZXNjcmlwdGlvbicpfT5zcGFjZXIgb2Ygb3VyIGNob2ljZTwvYT4sIGEgd2lkZXIgYXBwbGljYWJpbGl0eSB0byBvdGhlciBnZW5vbWljIHRhcmdldHMgYW5kIG90aGVyIHBvc3NpYmxlIHByaW1lIGVkaXRvciB2YXJpYW50cyB3b3JraW5nIGRpZmZlcmVudGx5IHRoYW4gQ2FzOS1iYXNlZCBzeXN0ZW1zIHdvdWxkIGJlIGZhdm9yYWJsZS4gSW4gdGhlIG9yaWdpbmFsIFBFQVIgcGxhc21pZCBob3dldmVyLCBtb2RpZmljYXRpb24gb2YgdmFyaWFibGUgcmVnaW9uIGlzIHF1aXRlIGltcHJhY3RpY2FsLiBBbHNvLCBhcyBhIHBhcnQgdGhlIGVHRlAgaXMgUkNGWzEwMDBdIGJ1dCBub3QgUkNGWzEwXSBCaW9CcmljayBzdGFuZGFyZCBjb25mb3JtIGFuZCBoYXJkbHkgY29tcGF0aWJsZSB3aXRoIG90aGVyIHBhcnRzIGxpa2Ugb3VyIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlV2l0aFRhYkFuZFNjcm9sbCAoe3Njcm9sbFRvSWQ6ICdwZTMnLCBwYXRoOiAnL2VuZ2luZWVyaW5nJywgdGFiSWQ6ICdwZS1zeXN0ZW1zJ30pfT5QcmVDeXNlIGNhc3NldHRlPC9hPi5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8SDQgdGV4dD1cIkRlc2lnblwiIGlkPVwiZGVzaWduLWhlYWRcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBUaGlzIGlzIHdoeSwgYXMgYW4gb3V0bG9vayBhbmQgY29udHJpYnV0aW9uIGZvciBmdXR1cmUgaUdFTSB0ZWFtcywgd2UgYWltIHRvIGNyZWF0ZSBhIG1vcmUgbW9kdWxhciBhbmQgY29tcGF0aWJsZSBwYXJ0IHNpbWlsYXIgdG8gb3VyIFByZUN5c2UgQ2FzZXR0ZS4gRm9yIHRoaXMgd2UgbWFkZSB1c2Ugb2YgdGhlIGV4cGVyaWVuY2UgZ2FpbmVkIHdoZW4gY2xvbmluZyBwZWdSTkFzLiBBbiBvbGlnb251Y2xlb3RpZGUtYmFzZWQgZ29sZGVuIGdhdGUgY2xvbmluZyBzaXRlIGluIHRoZSByZWdpb24gb2YgaW50ZXJlc3Qgc3Vycm91bmRpbmcgdGhlIDVcdTIwMTkgc3BsaWNlIGRvbm9yIHNpdGUgYWxsb3dzIGZvciBjaGVhcCBhbmQgY29udmVuaWVudCBtb2RpZmljYXRpb24gb2YgdGhlIHNlcXVlbmNlLiBUaGUgYXJlYSBiZXR3ZWVuIHRoZSBUeXBlSUlTIHJlc3RyaWN0aW9uIHNpdGVzIGlzIGRlc2lnbmVkIGFzIGEgZHJvcG91dCBjYXNzZXR0ZSBjb2RpbmcgZm9yIGEgZmx1b3Jlc2NlbmNlIG1hcmtlciBleHByZXNzZWQgaW4gRS4gY29saSwgdGhhdCBlbmFibGVzIHJhcGlkIHNjcmVlbmluZyBmb3IgdHJhbnNmb3JtYW50cyBjb250YWluaW5nIGNvcnJlY3RseSBkaWdlc3RlZCBwbGFzbWlkIGJhY2tib25lcy5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICB7LyogPEg0IHRleHQ9XCJCdWlsZFwiIGlkPVwiYnVpbGQtaGVhZFwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiVGVzdFwiIGlkPVwidGVzdC1oZWFkXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJMZWFyblwiIGlkPVwibGVhcm4taGVhZFwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+ICovfVxyXG4gICAgICAgICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICA8U2VjdGlvbiB0aXRsZT1cIlJlZmVyZW5jZXNcIiBpZD1cInJlZmVyZW5jZXNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgPEVuZ1JlcHNvdXJjZXMvPlxyXG4gICAgICAgICAgICAgICAgICA8L1NlY3Rpb24+XHJcbiAgICAgICAgICAgICAgICAgIDxici8+XHJcbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93IFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImxlZnRcIj48QnV0dG9uT25lRW5naW5lZXJpbmcgbGFiZWw9XCJQcmV2aW91c1wiIG9wZW49XCJvdXItY3ljbGVcIiBzY3JvbGxUb0lkPVwib3VyLWN5Y2xlLWhlYWRlclwiLz48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sIGJ1dHRvbi1sZWZ0XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicmlnaHRcIj48QnV0dG9uT25lRW5naW5lZXJpbmcgbGFiZWw9XCJOZXh0XCIgb3Blbj1cInRyYW5zZmVjdGlvblwiIHNjcm9sbFRvSWQ9XCJ0cmFuc2ZlY3Rpb24taGVhZGVyXCIvPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgIDwvc2VjdGlvbj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICA8ZGl2IGlkPVwidGFiLXRyYW5zZmVjdGlvblwiIGNsYXNzTmFtZT1cImVuZ2lubmVlcmluZ3RhYlwiIHN0eWxlPXt7ZGlzcGxheTogXCJub25lXCJ9fT5cclxuICAgICAgICAgICAgICAgPHNlY3Rpb24gID5cclxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJlbmctYm94IGJveFwiID5cclxuICAgICAgICAgICAgICAgICAgICAgPEgyIGlkPVwidHJhbnNmZWN0aW9uLWhlYWRlclwiIHRleHQ9XCJPcHRpbWl6YXRpb24gb2YgVHJhbnNmZWN0aW9uXCI+PC9IMj5cclxuICAgICAgICAgICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFRvIHRlc3QgcHJpbWUgZWRpdG9ycywgYSByZWxpYWJsZSBtb2RlbCBzeXN0ZW0gaXMgcmVxdWlyZWQuIEhFSzI5MyBjZWxscyBhcmUgYSBodW1hbiBkZXJpdmVkIGNlbGwgbGluZSBhbmQgd2lkZWx5IHVzZWQgaW4gYSB2YXJpZXR5IG9mIGZpZWxkcyBpbiBiaW9sb2d5PFRhYlNjcm9sbExpbmsgdGFiPVwidHJhbnNmZWN0aW9uXCIgbnVtPVwiM1wiIHNjcm9sbElkPVwiZGVzYy0zXCIvPi4gQXBhcnQgZnJvbSBlYXN5IGhhbmRsaW5nIGFuZCBjb21wYXJhdGl2ZWx5IGVhc3kgdHJhbnNmZWN0aW9uLCB0aGV5IGhhdmUsIGFzIHdlIGZvdW5kIG91dCBpbiBvdXIgZXhjaGFuZ2Ugd2l0aCAgPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VzQW5kT3BlblRhYignbWF0dGlqc2ludicsICcvaHVtYW4tcHJhY3RpY2VzJyl9Pk1hdHRpanMgQnVsY2FlbjwvYT4sIG9uZSBhZHZhbnRhZ2Ugb3ZlciBvdGhlciBtb2RlbHM6IFRoZXkgYXJlIG5hdHVyYWxseSBpbXBhaXJlZCBpbiBETkEgcmVwYWlyIG1lY2hhbmlzbXMgYW5kIHRoZXJlZm9yZSBlYXNpZXIgdG8gZWRpdC4gVG8gcHJvcGVybHkgY29tcGFyZSBlZGl0aW5nIGVmZmljaWVuY2llcywgYSBoaWdoIHRyYW5zZmVjdGlvbiBlZmZpY2llbmN5IGlzIG9mIHV0bW9zdCBpbXBvcnRhbmNlLiBUaGlzIGVuZ2luZWVyaW5nIGN5Y2xlIGZvY3VzZXMgb24gb3VyIHdvcmsgaW4gc2ltdWxhdGluZyBwcmltZSBlZGl0aW5nIHVzaW5nIHRoZSBQRUFSIHJlcG9ydGVyIHN5c3RlbTxUYWJTY3JvbGxMaW5rIHRhYj1cInRyYW5zZmVjdGlvblwiIG51bT1cIjRcIiBzY3JvbGxJZD1cImRlc2MtNFwiLz4gYW5kIG9wdGltaXppbmcgdHJhbnNmZWN0aW9uIHByb3RvY29scy5cclxuICAgICAgICAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJib3hcIiA+XHJcbiAgICAgICAgICAgICAgICAgICAgIDxwIGlkPVwidHJmMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8SDMgdGV4dD1cIlRlc3Qgb2YgTGlwb2ZlY3RhbWluZSAyMDAwXCIgaWQ9XCJ0cmYxaGVhZFwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJEZXNpZ25cIiBpZD1cInRleHRcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBCZWZvcmUgdGVzdGluZyBhbnkgb2Ygb3VyIG1lY2hhbmlzdGljIGFwcHJvYWNoZXMsIHdlIGhhZCB0byBleGFtaW5lIHdoZXRoZXIgd2UgY2FuIGZhY2lsaXRhdGUgYW5kIGRldGVjdCBwcmltZSBlZGl0aW5nIGluIHRoZSBmaXJzdCBwbGFjZS4gRHVyaW5nIG91ciByZXNlYXJjaCB3ZSBldmVudHVhbGx5IHN0dW1ibGVkIHVwb24gdGhlIFBFQVIgcmVwb3J0ZXIgc3lzdGVtIChzZWUgPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VzQW5kT3BlblRhYigncGVncm5hJywgJy9lbmdpbmVlcmluZycpfT4gcGVnUk5BIGVuZ2luZWVyaW5nIGN5Y2xlIDwvYT4pLiBUaGUgUEVBUiAyaW4xIHBsYXNtaWQgcmVwb3J0ZXIgaW5jbHVkZXMgYSBHRlAgdGhhdCBpcyB0byBiZSBlZGl0ZWQgZm9yIHNlbnNpdGl2ZSBwcmltZSBlZGl0aW5nIGRldGVjdGlvbiwgYW5kIGEgcGVnUk5BIGV4cHJlc3Npb24gY2Fzc2V0dGUgd2l0aCBhIHBlZ1JOQSB0YXJnZXRpbmcgdGhlIHBsYXNtaWQgaXRzZWxmLiBIYXZpbmcgZm91bmQgYSBzeXN0ZW0gY2FwYWJsZSBvZiBkZXRlY3RpbmcgZXZlbiBzbWFsbC1zY2FsZSBwcmltZSBlZGl0aW5nLCB0aGUgbmV4dCBzdGVwIHdhcyB0byBmaW5kIHRyYW5zZmVjdGlvbiBjb25kaXRpb25zIHRoYXQgd291bGQgd29yay4gSW4gdGhlIGxpdGVyYXR1cmUsIExpcG9mZWN0YW1pbmUgaXMgZGVzY3JpYmVkIGFzIGEgY29tbW9uIHRyYW5zZmVjdGlvbiBhZ2VudC5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgVHJhbnNmZWN0aW9uIHdpdGggTGlwb2ZlY3RhbWluZSAyMDAwIHdhcyBwZXJmb3JtZWQgaW4gYWNjb3JkYW5jZSB3aXRoIHRoZSBBbnphbG9uZSBwcm90b2NvbC4gSG93ZXZlciwgdGhlIHJlc3VsdCB3YXMgY2hhcmFjdGVyaXplZCBieSBpbnN1ZmZpY2llbnQgdHJhbnNmZWN0aW9uIGVmZmljaWVuY3kuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJCdWlsZFwiIGlkPVwidGV4dFwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIEFuemFsb25lIGV0IGFsLiAyMDE5PFRhYlNjcm9sbExpbmsgdGFiPVwidHJhbnNmZWN0aW9uXCIgbnVtPVwiNVwiIHNjcm9sbElkPVwiZGVzYy01XCIvPiBkZXNjcmliZSBhIHRyYW5zZmVjdGlvbiBvZiBwcmltZS1lZGl0aW5nIGNvbXBsZXhlcyB3aXRoIExpcG9mZWN0YW1pbmUgMjAwMC4gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJUZXN0XCIgaWQ9XCJ0ZXh0XCIvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgVHJhbnNmZWN0aW9uIHdpdGggTGlwb2ZlY3RhbWluZSAyMDAwIHdhcyBwZXJmb3JtZWQgaW4gYWNjb3JkYW5jZSB3aXRoIHRoZSBBbnphbG9uZSBwcm90b2NvbC4gSG93ZXZlciwgdGhlIHJlc3VsdCB3YXMgY2hhcmFjdGVyaXplZCBieSBpbnN1ZmZpY2llbnQgdHJhbnNmZWN0aW9uIGVmZmljaWVuY3kuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJMZWFyblwiIGlkPVwidGV4dFwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFRoZSBsb3cgZWZmaWNpZW5jeSBvZiBMaXBvZmVjdGFtaW5lIDIwMDAgaW5kaWNhdGVzIHRoYXQgdGhlIHByb2R1Y3QgaXMgbm90IG9wdGltYWxseSBzdWl0ZWQgdG8gdGhlIHNwZWNpZmljIGNvbmRpdGlvbnMgdW5kZXIgY29uc2lkZXJhdGlvbi4gSW4gY29udHJhc3QsIExpcG9mZWN0YW1pbmUgMzAwMCBpcyBkZXNjcmliZWQgaW4gdGhlIGxpdGVyYXR1cmUgYXMgcG90ZW50aWFsbHkgbW9yZSBlZmZpY2llbnQuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiYm94XCIgPlxyXG4gICAgICAgICAgICAgICAgICAgICA8cCBpZD1cInRyZjJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPEgzIHRleHQ9XCJJbml0aWFsIFRlc3Qgd2l0aCBMaXBvZmVjdGFtaW5lIDMwMDBcIiBpZD1cInRyZjJoZWFkXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8SDQgdGV4dD1cIkRlc2lnblwiIGlkPVwidGV4dFwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIEluIGxpZ2h0IG9mIHRoZSBhZm9yZW1lbnRpb25lZCBmaW5kaW5ncywgdGhlIGRlY2lzaW9uIHdhcyB0YWtlbiB0byB0ZXN0IExpcG9mZWN0YW1pbmUgMzAwMCwgZ2l2ZW4gaXRzIHJlcHV0YXRpb24gZm9yIGdyZWF0ZXIgZWZmaWNpZW5jeS4gQSBuZXcgdGVzdCBkZXNpZ24gd2FzIGRldmlzZWQsIHV0aWxpemluZyBMaXBvZmVjdGFtaW5lIDMwMDAgd2l0aCBhbiBlcXVpdmFsZW50IHF1YW50aXR5IG9mIEROQSBhbmQgbW9kaWZpZWQgdHJhbnNmZWN0aW9uIGNvbmRpdGlvbnMuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJCdWlsZFwiIGlkPVwidGV4dFwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIEluIGFjY29yZGFuY2Ugd2l0aCB0aGUgZXN0YWJsaXNoZWQgcHJvdG9jb2wsIHRoZSByZWNvbW1lbmRlZCByYXRpbyBvZiAxIFx1MDBCNWcgRE5BIHRvIDIgXHUwMEI1bCBMaXBvZmVjdGFtaW5lIDMwMDAsIGFzIHByb3ZpZGVkIGJ5IFRoZXJtb0Zpc2hlciwgd2FzIHRvIGJlIGVtcGxveWVkLlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiVGVzdFwiIGlkPVwidGV4dFwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFRoZSBvYmplY3RpdmUgb2YgdGhlIGV4cGVyaW1lbnQgd2FzIHRvIGVuaGFuY2UgdGhlIHRyYW5zZmVjdGlvbiBlZmZpY2llbmN5IG9mIExpcG9mZWN0YW1pbmUgMzAwMC4gVGhlIHRyYW5zZmVjdGlvbiBwcm90b2NvbCB3YXMgY29uZHVjdGVkIGluIGFjY29yZGFuY2Ugd2l0aCB0aGUgbWFudWZhY3R1cmVyJ3MgaW5zdHJ1Y3Rpb25zICgxIFx1MDBCNWcgRE5BLCAyIFx1MDBCNWwgTGlwb2ZlY3RhbWluZSAzMDAwIHJlYWdlbnQpLlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBUaGUgb3V0Y29tZSByZXZlYWxlZCB0aGF0IGRlc3BpdGUgdGhlIG1vZGlmaWNhdGlvbiwgdGhlIHRyYW5zZmVjdGlvbiBlZmZpY2llbmN5IHJlbWFpbmVkIGluYWRlcXVhdGUsIGFsdGhvdWdoIGEgbWFyZ2luYWwgaW1wcm92ZW1lbnQgd2FzIGRpc2Nlcm5pYmxlLlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiTGVhcm5cIiBpZD1cInRleHRcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBBbHRob3VnaCBhIHN3aXRjaCB0byBMaXBvZmVjdGFtaW5lIDMwMDAgcmVzdWx0ZWQgaW4gYSBtYXJnaW5hbCBpbXByb3ZlbWVudCwgdGhlIGVmZmljaWVuY3kgZmVsbCBzaG9ydCBvZiBleHBlY3RhdGlvbnMuIFRoaXMgaW5kaWNhdGVzIHRoYXQgZnVydGhlciBvcHRpbWl6YXRpb24gaXMgcmVxdWlyZWQgaW4gdGVybXMgb2YgdGhlIGFtb3VudCBvZiBMaXBvZmVjdGFtaW5lIGFuZCBETkEsIGFzIHdlbGwgYXMgdGhlIG1lZGl1bSB1c2VkLlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiYm94XCIgPlxyXG4gICAgICAgICAgICAgICAgICAgICA8cCBpZD1cInRyZjNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPEgzIHRleHQ9XCJPcHRpbWl6YXRpb24gb2YgRE5BIGFuZCBMaXBvZmVjdGFtaW5lIFZvbHVtZXNcIiBpZD1cInRyZjNoZWFkXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8SDQgdGV4dD1cIkRlc2lnblwiIGlkPVwidGV4dFwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIEluIG9yZGVyIHRvIG9wdGltaXplIHRoZSB0cmFuc2ZlY3Rpb24gcHJvY2VzcywgYSBuZXcgb3B0aW1pemF0aW9uIHRlc3Qgd2FzIGRlc2lnbmVkLCB3aGljaCBpbmNvcnBvcmF0ZWQgYSB2YXJpYWJsZSBkZXNpZ24gd2l0aCByZWdhcmQgdG8gdGhlIHF1YW50aXR5IG9mIExpcG9mZWN0YW1pbmUgMzAwMCBhbmQgRE5BLlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiQnVpbGRcIiBpZD1cInRleHRcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBUaGUgcHJvdG9jb2wgZW50YWlsZWQgdGhlIHV0aWxpemF0aW9uIG9mIHZhcnlpbmcgY29uY2VudHJhdGlvbnMgb2YgTGlwb2ZlY3RhbWluZSAzMDAwLCBzcGVjaWZpY2FsbHkgMSBcdTAwQjVsIGFuZCAxLjUgXHUwMEI1bCwgd2l0aCBhIEROQSBxdWFudGl0eSBvZiAxIFx1MDBCNWcgb3IgMC41IFx1MDBCNWcuIEluIHRoaXMgcGhhc2UsIHdlIGRldmVsb3BlZCB0aGUgdHJhbnNmZWN0aW9uIG1ldGhvZCB3aXRoIGNhbGNpdW0gY2hsb3JpZGUgKENhQ2w8c3ViPjI8L3N1Yj4pIGFzIGFuIGFsdGVybmF0aXZlIHRvIGNvbnZlbnRpb25hbCBsaXBvZmVjdGFtaW5lIHRyYW5zZmVjdGlvbi4gVGhlIGFpbSB3YXMgdG8gdGVzdCB3aGV0aGVyIHRoaXMgbW9yZSBjb3N0LWVmZmVjdGl2ZSBtZXRob2Qgb2ZmZXJzIGNvbXBhcmFibGUgdHJhbnNmZWN0aW9uIGVmZmljaWVuY3kuIFRocmVlIGRpZmZlcmVudCBETkEgY29uY2VudHJhdGlvbnMgd2VyZSB1c2VkIHRvIGludmVzdGlnYXRlIHRoZSBlZmZlY3Qgb24gdHJhbnNmZWN0aW9uIGVmZmljaWVuY3kuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD4gICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiVGVzdFwiIGlkPVwidGV4dFwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFRvIGVuaGFuY2UgdHJhbnNmZWN0aW9uIGVmZmljaWVuY3ksIG9wdGltaXphdGlvbiB0ZXN0cyB3ZXJlIGNvbmR1Y3RlZCwgaW4gd2hpY2ggdGhlIHF1YW50aXRpZXMgb2YgTGlwb2ZlY3RhbWluZSBhbmQgRE5BIHdlcmUgdmFyaWVkLiBUaGUgb2JqZWN0aXZlIG9mIHRoaXMgaXRlcmF0aW9uIHdhcyB0byBmaW5kIHRoZSBvcHRpbWFsIHJhdGlvIG9mIExpcG9mZWN0YW1pbmUgMzAwMCB0byBETkEuIFRvIHRoaXMgZW5kLCAxIFx1MDBCNWwgYW5kIDEuNSBcdTAwQjVsIG9mIExpcG9mZWN0YW1pbmUgMzAwMCBhdCBhIEROQSBjb25jZW50cmF0aW9uIG9mIGVpdGhlciAxIFx1MDBCNWcgb3IgMC41IFx1MDBCNWcgd2VyZSBjb21wYXJlZCB3aXRoIGVhY2ggb3RoZXIuIEluIHRoZSBuZXh0IHN0ZXAsIHRoZSB0ZXN0cyB3ZXJlIGNhcnJpZWQgb3V0IHdpdGggdGhlIGRpZmZlcmVudCBETkEgY29uY2VudHJhdGlvbnMgdXNpbmcgdGhlIENhQ2w8c3ViPjI8L3N1Yj4gdHJhbnNmZWN0aW9uIG1ldGhvZC4gVGhlIHRyYW5zZmVjdGlvbiBlZmZpY2llbmNpZXMgd2VyZSBjb21wYXJlZCB3aXRoIHRob3NlIGZyb20gdGhlIExpcG9mZWN0YW1pbmUgdHJhbnNmZWN0aW9uIHRvIGRldGVybWluZSB3aGV0aGVyIHRoZSBuZXcgbWV0aG9kIHJlcHJlc2VudHMgYW4gaW1wcm92ZW1lbnQuIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiTGVhcm5cIiBpZD1cInRleHRcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBUaGUgZXhwZXJpbWVudCBkZW1vbnN0cmF0ZWQgdGhhdCBhIHF1YW50aXR5IG9mIDEgXHUwMEI1bCBMaXBvZmVjdGFtaW5lIDMwMDAgd2FzIHN1ZmZpY2llbnQgZm9yIHN1Y2Nlc3NmdWwgdHJhbnNmZWN0aW9uLCBhbmQgdGhhdCBpbmNyZWFzaW5nIHRoZSBxdWFudGl0eSBkb2VzIG5vdCByZXN1bHQgaW4gYSBub3RhYmxlIGRpZmZlcmVuY2UuIEFkZGl0aW9uYWxseSwgdGhlIGZpbmRpbmdzIGluZGljYXRlZCB0aGF0IGFuIGFtb3VudCBvZiAxIFx1MDBCNWcgRE5BIGV4aGliaXRlZCBhIGhpZ2hlciBlZmZpY2llbmN5IHRoYW4gYW4gYW1vdW50IG9mIDAuNSBcdTAwQjVnIEROQS4gSXQgY2FuIGJlIHJlYXNvbmVkIHRoYXQgYWRkaXRpb25hbCBmYWN0b3JzIG1heSBoYXZlIGNvbnRyaWJ1dGVkIHRvIHRoZSBwcmV2aW91c2x5IG9ic2VydmVkIGRlY2xpbmUgaW4gdHJhbnNmZWN0aW9uIGVmZmljaWVuY3kuIE9uZSBwb3RlbnRpYWwgZXhwbGFuYXRpb24gaXMgdGhhdCB0aGUgY2VsbHMgbWF5IGhhdmUgYmVlbiBpbiBhbiBleGNlc3NpdmVseSBoaWdoIHBhc3NhZ2UgbGV2ZWwuIEl0IGJlY2FtZSBjbGVhciBmcm9tIHRoZSB0ZXN0cyB0aGF0IENhQ2w8c3ViPjI8L3N1Yj4gdHJhbnNmZWN0aW9uIGRpZCBub3QgZGVsaXZlciBiZXR0ZXIgcmVzdWx0cyB0aGFuIExpcG9mZWN0YW1pbmUgdHJhbnNmZWN0aW9uLiBPbiB0aGUgY29udHJhcnksIHRoZSBlZmZpY2llbmN5IHdhcyBzaWduaWZpY2FudGx5IGxvd2VyLCBhbHRob3VnaCB0aGUgbWV0aG9kIGlzIGxlc3MgZXhwZW5zaXZlLiBUaGlzIGxlZCB0byB0aGUgcmVhbGlzYXRpb24gdGhhdCB0aGUgQ2FDbDxzdWI+Mjwvc3ViPiB0ZWNobmlxdWUgaW4gdGhpcyBmb3JtIHdhcyBub3QgYSBzdWl0YWJsZSBhbHRlcm5hdGl2ZSBmb3Igb3VyIHNwZWNpZmljIHJlcXVpcmVtZW50cy4gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIEl0IGNhbiBiZSByZWFzb25hYmx5IGRlZHVjZWQgdGhhdCB0aGUgYWZvcmVtZW50aW9uZWQgZmFjdG9ycyBtYXkgaGF2ZSBjb250cmlidXRlZCB0byB0aGUgb2JzZXJ2ZWQgZGVjbGluZSBpbiB0cmFuc2ZlY3Rpb24gZWZmaWNpZW5jeS5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImJveFwiID5cclxuICAgICAgICAgICAgICAgICAgICAgPHAgaWQ9XCJ0cmY0XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxIMyB0ZXh0PVwiVmFsaWRhdGlvbiBvZiBvcHRpbWl6ZWQgUHJvdG9jb2xcIiBpZD1cInRyZjRoZWFkXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8SDQgdGV4dD1cIkRlc2lnblwiIGlkPVwidGV4dFwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFRoZSByZXN1bHRzIG9idGFpbmVkIHdlcmUgdXNlZCB0byBkZXZlbG9wIGFuIG9wdGltaXplZCBwcm90b2NvbCB0aGF0IHRha2VzIGludG8gYWNjb3VudCBib3RoIHRoZSBjb25jZW50cmF0aW9uIG9mIExpcG9mZWN0YW1pbmUgYW5kIHRoZSBhbW91bnQgb2YgRE5BLlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiQnVpbGRcIiBpZD1cInRleHRcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBJbiBzdWJzZXF1ZW50IHJlc2VhcmNoLCBhIEROQSBxdWFudGl0eSBvZiAxIFx1MDBCNWcgYW5kIGEgZGVmaW5lZCBxdWFudGl0eSBvZiAxIFx1MDBCNWwgb2YgTGlwb2ZlY3RhbWluZSAzMDAwIHdpbGwgYmUgdXRpbGl6ZWQuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJUZXN0XCIgaWQ9XCJ0ZXh0XCIvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgRm9sbG93aW5nIGEgc2VyaWVzIG9mIG9wdGltaXphdGlvbnMsIHRoZSBwcm9vZiBvZiBjb25jZXB0IHdhcyBjb25kdWN0ZWQgb25jZSBtb3JlIHRvIGNvbmZpcm0gdGhlIGVmZmljYWN5IG9mIHRoZSBvcHRpbWl6ZWQgcHJvdG9jb2wuIFRoZSBvYmplY3RpdmUgd2FzIHRvIHBlcmZvcm0gdGhlIHRyYW5zZmVjdGlvbiB3aXRoIHRoZSBmaW5hbCwgb3B0aW1pemVkIHByb3RvY29sLiBUaGlzIHByb3RvY29sIGludm9sdmVkIHRoZSB1dGlsaXphdGlvbiBvZiAxIFx1MDBCNWwgTGlwb2ZlY3RhbWluZSAzMDAwLCAxIFx1MDBCNWcgRE5BLCAyIFx1MDBCNWwgUmVhZ2VudCAzMDAwIGFuZCBPcHRpLU1FTSBhcyBhIG1lZGl1bS4gVGhlIG91dGNvbWVzIHdlcmUgZW5jb3VyYWdpbmcsIGFzIHRoZSB0cmFuc2ZlY3Rpb24gZWZmaWNpZW5jeSB3YXMgbWFya2VkbHkgZW5oYW5jZWQuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJMZWFyblwiIGlkPVwidGV4dFwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFRoZSB1dGlsaXphdGlvbiBvZiBhbiBvcHRpbWl6ZWQgcXVhbnRpdHkgb2YgMSBcdTAwQjVsIExpcG9mZWN0YW1pbmUgMzAwMCwgYSBkZWZpbmVkIHF1YW50aXR5IG9mIEROQSBhbmQgdGhlIHN1aXRhYmxlIE9wdGktTUVNIG1lZGl1bSByZXN1bHRlZCBpbiBhIG5vdGFibGUgZW5oYW5jZW1lbnQgaW4gdHJhbnNmZWN0aW9uIGVmZmljaWVuY3kuIFRoaXMgc3Vic3RhbnRpYXRlcyB0aGUgYXNzZXJ0aW9uIHRoYXQgdGhlIGFmb3JlbWVudGlvbmVkIGNvbmRpdGlvbnMgY29uc3RpdHV0ZSBhbiBvcHRpbWFsIGZvdW5kYXRpb24gZm9yIHRoZSB0cmFuc2ZlY3Rpb24gb2YgSEVLIGNlbGxzIHdpdGggdGhlIHByaW1lIGVkaXRpbmcgY29tcGxleC5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICA8U2VjdGlvbiB0aXRsZT1cIlJlZmVyZW5jZXNcIiBpZD1cInJlZmVyZW5jZXNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgPEVuZ1RyZnNvdXJjZXMvPlxyXG4gICAgICAgICAgICAgICAgICA8L1NlY3Rpb24+XHJcbiAgICAgICAgICAgICAgICAgIDxici8+XHJcbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93IFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImxlZnRcIj48QnV0dG9uT25lRW5naW5lZXJpbmcgbGFiZWw9XCJQcmV2aW91c1wiIG9wZW49XCJyZXBvcnRlclwiIHNjcm9sbFRvSWQ9XCJyZXBvcnRlci1oZWFkZXJcIi8+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbCBidXR0b24tbGVmdFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJpZ2h0XCI+PEJ1dHRvbk9uZUVuZ2luZWVyaW5nIGxhYmVsPVwiTmV4dFwiIG9wZW49XCJwZS1zeXN0ZW1zXCIgc2Nyb2xsVG9JZD1cInBlLXN5c3RlbXMtaGVhZGVyXCIvPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgIDwvc2VjdGlvbj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIFxyXG4gICAgICAgICAgICA8ZGl2IGlkPVwidGFiLXBlLXN5c3RlbXNcIiBjbGFzc05hbWU9XCJlbmdpbm5lZXJpbmd0YWJcIiBzdHlsZT17e2Rpc3BsYXk6IFwibm9uZVwifX0+XHJcbiAgICAgICAgICAgIDxzZWN0aW9uIGlkPVwiUEUgU3lzdGVtcyBzZWNcIiA+XHJcbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZW5nLWJveCBib3hcIiA+XHJcbiAgICAgICAgICAgICAgICAgICAgIDxIMiBpZD1cInBlLXN5c3RlbXMtaGVhZGVyXCIgdGV4dD1cIlByaW1lIEVkaXRpbmcgU3lzdGVtc1wiPjwvSDI+XHJcbiAgICAgICAgICAgICAgICAgICAgIDxwPkRpZmZlcmVudCB2ZXJzaW9ucyBvZiB0aGUgb3JpZ2luYWwgcHJpbWUgZWRpdGluZyBzeXN0ZW0gaGF2ZSBiZWVuIGRldmVsb3BlZCBzaW5jZSBpdHMgaW5pdGlhbCBpbnRyb2R1Y3Rpb24uIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBEZWNpZGluZyBvbiB3aGF0IHN5c3RlbSB0byB1c2UgZm9yIHRoZSBhcHBsaWNhdGlvbiBpbiB0aGVyYXBldXRpYyBodW1hbiBnZW5lIGVkaXRpbmcsIGVzcGVjaWFsbHkgY29uY2VybmluZyB0aGUgY29ycmVjdGlvbiBvZiBcclxuICAgICAgICAgICAgICAgICAgICAgICAgRjUwOGRlbCwgd2FzIHRoZSBnb2FsIG9mIHRoaXMgZW5naW5lZXJpbmcgY3ljbGUuPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICA8cD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgU2luY2Ugd2UgYWltIHRvIGRldmVsb3AgYSB0aGVyYXB5IGRlbGl2ZXJlZCB0byB0aGUgaHVtYW4gYm9keSwgd2Ugd2FudGVkIHRvIG9idGFpbiBoaWdoIGVkaXRpbmcgZWZmaWNpZW5jeSB3aGlsZSByaXNraW5nIGFzIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBsaXR0bGUgb2ZmLXRhcmdldHMgYXMgcG9zc2libGUgYW5kIGFsc28gcmVkdWNpbmcgdGhlIHNpemUgZm9yIGltcHJvdmVkIHBhY2thYmlsaXR5LlxyXG4gICAgICAgICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgIDxJbmZvQm94IHRpdGxlPVwiRXhpc3RpbmcgUHJpbWUgRWRpdGluZyBTeXN0ZW1zXCIgaWQ9XCJjdXJyZW50LXBlLXN5c3RlbXNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRldGFpbHM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdW1tYXJ5PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdW1tYXJ5PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0ncm93IGFsaWduLWl0ZW1zLWNlbnRlcic+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSdjb2wnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGI+UEUxPC9iPjxUYWJTY3JvbGxMaW5rIHRhYj1cInRhYi1wZS1zeXN0ZW1zXCIgbnVtPVwiNlwiIHNjcm9sbElkPVwiZGVzYy02XCIvPnsvKiBlaGVtIDEgKi99LCB0aGUgZmlyc3QgdmVyc2lvbiBvZiB0aGUgUHJpbWUgRWRpdG9yIGZlYXR1cmVzIGEgQ2FzOShIODQwQSksIGEgU3RyZXB0b2NvY2N1cyBweW9nZW5lcyBDYXM5IChTcENhczksIGhlcmVhZnRlciBqdXN0IHJlZmVycmVkIHRvIGFzIENhczkpIG11dGFudCB0aGF0IG9ubHkgY3V0cyB0aGUgbm9uLXRhcmdldCBzdHJhbmQgb2YgdGhlIEROQSB0ZW1wbGF0ZTxUYWJTY3JvbGxMaW5rIHRhYj1cInRhYi1wZS1zeXN0ZW1zXCIgbnVtPVwiN1wiIHNjcm9sbElkPVwiZGVzYy03XCIvPnsvKiBlaGVtIDIgKi99LCBhbmQgYSB3aWxkdHlwZSByZXZlcnNlIHRyYW5zY3JpcHRhc2UgZnJvbSB0aGUgTW9sb25leSBNdXJpbmUgTGV1a2FlbWlhIFZpcnVzIChNLU1MViBSVCkgY29ubmVjdGVkIGJ5IGEgc2VyaW5lIGFuZCBnbHljaW5lIHJpY2ggZmxleGlibGUgbGlua2VyLlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Yj5QRTI8L2I+PFRhYlNjcm9sbExpbmsgdGFiPVwidGFiLXBlLXN5c3RlbXNcIiBudW09XCI2XCIgc2Nyb2xsSWQ9XCJkZXNjLTZcIi8+ey8qIGVoZW0gMSAqL30gaW1wcm92ZXMgb24gdGhpcyBjb25jZXB0IGJ5IGluY29ycG9yYXRpbmcgYW4gaW1wcm92ZWQgUlQgd2l0aCBmaXZlIG11dGF0aW9ucyBpbXByb3ZpbmcgYWZmaW5pdHkgdG8gdGhlIHRlbXBsYXRlIFJOQSwgZW56eW1lIHByb2Nlc3Npdml0eSBhbmQgdGhlcm1vc3RhYmlsaXR5IChEMjAwTi9MNjAzVy9UMzMwUC9UMzA2Sy9XMzEzRikuIFRoaXMgdmVyc2lvbiBvZiB0aGUgcHJpbWUgZWRpdG9yIHNob3dlZCB2YXJ5aW5nIGltcHJvdmVtZW50IG9mIGVkaXRpbmcgZWZmaWNpZW5jeSBvdmVyIGFsbCB0ZXN0ZWQgbG9jaSBhbmQgZWRpdHMgd2l0aCBubyBhcHBhcmVudCBkb3duc2lkZXMuIEJ1aWxkaW5nIG9uIHRoZSBQRTIgc3lzdGVtLCBhIHNtYWxsZXIgdmVyc2lvbiBvZiB0aGUgTS1NTFYgUlQgd2FzIGludHJvZHVjZWQgYnkgR2FvIGV0IGFsLiAoMjAyMik8VGFiU2Nyb2xsTGluayB0YWI9XCJ0YWItcGUtc3lzdGVtc1wiIG51bT1cIjhcIiBzY3JvbGxJZD1cImRlc2MtOFwiLz57LyogZWhlbTMgICovfS4gVGhlIFJUIHdhcyB0cnVuY2F0ZWQgYnkgNjIxIGJwIHRocm91Z2ggZGVsZXRpb24gb2YgdGhlIFJOYXNlSCBkb21haW4sIHdoaWNoIG9yaWdpbmFsbHkgZGVncmFkZXMgdGhlIFJOQSB0ZW1wbGF0ZSwgYnV0IGlzIG5vdCBuZWVkZWQgZm9yIHByaW1lIGVkaXRpbmcuIFRoZSBjb2RvbiBvcHRpbWl6ZWQgdmVyc2lvbiBvZiB0aGlzIHRydW5jYXRlZCBSVCBwcmltZSBlZGl0b3IgKGluIGxpdGVyYXR1cmUgdXN1YWxseSBjYWxsZWQgUEUyXHUyMjA2Uk5hc2VIKSB3YXMgbmFtZWQgPGI+UEU8c3VwPkNPPC9zdXA+LU1pbmk8L2I+IGluIHRoZSBwYXBlciBhbmQgd2lsbCBiZSBhZGRyZXNzZWQgYXMgc3VjaCBoZXJlLlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0nY29sLTQnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmlndXJlPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2VuZ2luZWVyaW5nLWN5Y2xlL3BlMi1vcGVuLnN2Z1wiIGFsdD1cIlBFMiBQcmltZSBFZGl0b3JcIi8+ICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZpZ2NhcHRpb24+PGI+RmlndXJlIDE6IElsbHVzdHJhdGlvbiBvZiBQRTIgUHJpbWUgRWRpdG9yPC9iPiA8L2ZpZ2NhcHRpb24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZmlndXJlPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSdyb3cgYWxpZ24taXRlbXMtY2VudGVyJz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J2NvbCc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUaGUgPGI+UEUzPC9iPjxUYWJTY3JvbGxMaW5rIHRhYj1cInRhYi1wZS1zeXN0ZW1zXCIgbnVtPVwiNlwiIHNjcm9sbElkPVwiZGVzYy02XCIvPnsvKiBlaGVtIDEgKi99IHN5c3RlbSwgZGVzY3JpYmVkIGluIHRoZSBzYW1lIHBhcGVyIGFzIFBFMSBhbmQgUEUyLCBpbnRyb2R1Y2VzIHRoZSB1c2Ugb2YgYSBzZWNvbmQgc2luZ2xlIGd1aWRlIFJOQSBiZXNpZGVzIHRoZSBwZWdSTkEgd2hpY2ggbGVhZHMgdG8gYSBuaWNrIGluIHRoZSBzdHJhbmQgb3Bwb3NpdGUgdG8gdGhlIGVkaXRlZCBzdHJhbmQuIFRoaXMgaXMgc3VwcG9zZWQgdG8gaW1wcm92ZSBpbnRlZ3JhdGlvbiBvZiBlZGl0cyBieSBkaXJlY3RpbmcgY2VsbHVsYXIgRE5BIHJlcGFpciBzeXN0ZW1zIHRvIHVzZSB0aGUgZWRpdGVkIHN0cmFuZCBhcyBhIHRlbXBsYXRlIGZvciByZXNvbHZpbmcgYmFzZSBtaXNtYXRjaGVzLiBOaWNrcyBwb3NpdGlvbmVkIDNcdTIwMTggb2YgdGhlIGVkaXQgYWJvdXQgNDBcdTIwMTM5MCBiYXNlIHBhaXJzIGZyb20gdGhlIHBlZ1JOQS1pbmR1Y2VkIG5pY2sgd2VyZSBhYmxlIHRvIGZ1cnRoZXIgaW5jcmVhc2UgZWRpdGluZyBlZmZpY2llbmNpZXMgYWJvdXQgdGhyZWVmb2xkIHdoZW4gY29tcGFyZWQgdG8gUEUyLCBidXQgd2l0aCBhIGhpZ2hlciByYW5nZSBvZiBvbi10YXJnZXQgaW5kZWxzICAsIG1lYW5pbmcgcmFuZG9tIEluc2VydGlvbnMgYW5kL29yIERlbGV0aW9ucyB0aGF0IGFwcGVhciBhZnRlciBmYXVsdHkgcmVwYWlyIG9mIGRvdWJsZSBzdHJhbmQgYnJlYWtzIGluIHRoZSBETkEuIFBFM2IsIHdoZXJlIHRoZSBwcm90b3NwYWNlciBmb3IgdGhlIG5pY2tpbmcgc2dSTkEgbGllcyB3aXRoaW4gdGhlIGVkaXRlZCByZWdpb25zLCBkZWNyZWFzZWQgdGhlIGluZGVsIHJhdGUgZ3JlYXRseSBjb21wYXJlZCB0byBQRTMuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSdjb2wtNCc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvZW5naW5lZXJpbmctY3ljbGUvcGUzLW9wZW4uc3ZnXCIgYWx0PVwiUEUzIFByaW1lIEVkaXRvclwiLz4gIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSdyb3cgYWxpZ24taXRlbXMtY2VudGVyJz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J2NvbCc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Yj5QRTQ8L2I+IGFuZCA8Yj5QRTU8L2I+PFRhYlNjcm9sbExpbmsgdGFiPVwidGFiLXBlLXN5c3RlbXNcIiBudW09XCI4XCIgc2Nyb2xsSWQ9XCJkZXNjLThcIi8+IHsvKiBlaGVtIDQgKi99ZXhwYW5kIHRoZSBQRTIgYW5kIFBFMyBzeXN0ZW1zLCByZXNwZWN0aXZlbHksIGJ5IGNvLWV4cHJlc3NpbmcgYSBkb21pbmFudCBuZWdhdGl2ZSBNTEgxIHByb3RlaW4gKE1MSDEoXHUwMzk0NzU0XHUyMDEzNzU2KSwgaGVyZWFmdGVyIHJlZmVycmVkIHRvIGFzIE1MSDFkbikuIFRoZSBNTEgxIHByb3RlaW4gcGxheXMgYSBjcnVjaWFsIHJvbGUgaW4gdGhlIG1pc21hdGNoIHJlcGFpciAoTU1SKSBtZWNoYW5pc20gb2YgdGhlIGh1bWFuIGNlbGw8VGFiU2Nyb2xsTGluayB0YWI9XCJ0YWItcGUtc3lzdGVtc1wiIG51bT1cIjlcIiBzY3JvbGxJZD1cImRlc2MtOVwiLz57LyogZWhlbSA1ICAqL30gYnkgcmVjcnVpdGluZyBvdGhlciByZXBhaXIgcHJvdGVpbnMgYW5kIGZhY2lsaXRhdGluZyBjYXRhbHl0aWMgZnVuY3Rpb24uIFRoZSBtdXRhbnQgc3RpbGwgcmVjcnVpdHMgb3RoZXIgZmFjdG9ycyBidXQgaXMgaW1wYWlyZWQgaW4gaXRzIGVuZG9udWNsZWFzZSBmdW5jdGlvbiwgZGlzcnVwdGluZyBmdW5jdGlvbiBvZiB0aGUgZW50aXJlIHJlcGFpciBtZWNoYW5pc20uIFRoaXMgbGVhZHMgdG8gYW4gYXZlcmFnZSA3LjctZm9sZCBhbmQgMi4wLWZvbGQgaW5jcmVhc2UgaW4gZWRpdGluZyBlZmZpY2llbmN5LCByZXNwZWN0aXZlbHksIGNvbXBhcmVkIHRvIFBFMiBhbmQgUEUzLiBUaGlzIGlzIHBvc3NpYmx5IGR1ZSB0byBzbG93ZXIgcmVwYWlyIG9mIG1pc21hdGNoZXMgYW5kIHRodXMgbW9yZSB0aW1lIGZvciB0aGUgcHJvdGVpbnMgZW5jb2RlZCBieSBMSUcxIGFuZCBGRU4xIGdlbmVzIHRvIGV4Y2lzZSB0aGUgbm9uLWVkaXRlZCA1XHUyMDE5IGZsYXAgYW5kIGxpZ2F0ZSB0aGUgbmljayBpbiB0aGUgZWRpdGVkIHN0cmFuZC4gQWRkaXRpb25hbGx5LCBNTEgxZG4gY28tZXhwcmVzc2lvbiBzbGlnaHRseSByZWR1Y2VkIG9uLXRhcmdldCBpbmRlbHMgYXMgd2VsbCBhcyB1bmludGVuZGVkIGVkaXRpbmcgb3V0Y29tZXMgaW4gUEUzIHN5c3RlbXMgYW5kIGRpZCBub3QgbGVhZCB0byBoaWdoZXIgb2ZmLXRhcmdldCBpbmRlbCByYXRlcyBvciBvdmVyYWxsIG11dGF0aW9uIHJhdGVzLlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBXaXRoIDxiPlBFbWF4PC9iPjxUYWJTY3JvbGxMaW5rIHRhYj1cInRhYi1wZS1zeXN0ZW1zXCIgbnVtPVwiOFwiIHNjcm9sbElkPVwiZGVzYy04XCIvPnsvKiBlaGVtIDQgKi99LCB0aGUgc3RydWN0dXJlIG9mIFBFMiBpcyBmdXJ0aGVyIGVuaGFuY2VkIGJ5IHVzaW5nIGh1bWFuIGNvZG9uLW9wdGltaXplZCBSVCwgYSBuZXcgbGlua2VyIGNvbnRhaW5pbmcgYSBiaXBhcnRpdGUgU1Y0MCBudWNsZWFyIGxvY2FsaXphdGlvbiBzZXF1ZW5jZSAoTkxTKTxUYWJTY3JvbGxMaW5rIHRhYj1cInRhYi1wZS1zeXN0ZW1zXCIgbnVtPVwiMTFcIiBzY3JvbGxJZD1cImRlc2MtMTFcIi8+LCBhbiBhZGRpdGlvbmFsIEMtdGVybWluYWwgYy1NeWMgTkxTPFRhYlNjcm9sbExpbmsgdGFiPVwidGFiLXBlLXN5c3RlbXNcIiBudW09XCIxMlwiIHNjcm9sbElkPVwiZGVzYy0xMlwiLz4gYW5kIFIyMjFLIE4zOTRLIG11dGF0aW9ucyBpbiBTcENhczkgcHJldmlvdXNseSBzaG93biB0byBpbXByb3ZlIENhczkgbnVjbGVhc2UgYWN0aXZpdHk8VGFiU2Nyb2xsTGluayB0YWI9XCJ0YWItcGUtc3lzdGVtc1wiIG51bT1cIjEzXCIgc2Nyb2xsSWQ9XCJkZXNjLTEzXCIvPi4gVGhlc2UgY2hhbmdlcyBsZWQgdG8gbW9kZXJhdGUgaW1wcm92ZW1lbnRzIGluIGVkaXRpbmcgZWZmaWNpZW5jeSBjb21wYXJlZCB0byBwcmV2aW91cyBlZGl0b3IgYXJjaGl0ZWN0dXJlcy5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J2NvbC00Jz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9lbmdpbmVlcmluZy1jeWNsZS9wZTQtb3Blbi1uZXcuc3ZnXCIgYWx0PVwiUEU0IFByaW1lIEVkaXRvclwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9lbmdpbmVlcmluZy1jeWNsZS9wZTUtb3Blbi1uZXcuc3ZnXCIgYWx0PVwiUEU1IFByaW1lIEVkaXRvclwiLz4gIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSdyb3cgYWxpZ24taXRlbXMtY2VudGVyJz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J2NvbCc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Yj5QRTY8L2I+PFRhYlNjcm9sbExpbmsgdGFiPVwidGFiLXBlLXN5c3RlbXNcIiBudW09XCIxNFwiIHNjcm9sbElkPVwiZGVzYy0xNFwiLz4gd2FzIG1hZGUgYnkgaW1wcm92aW5nIHRoZSByZXZlcnNlIHRyYW5zY3JpcHRhc2UgZG9tYWluIG9mIHRoZSBwcmltZSBlZGl0b3IgdXNpbmcgUGhhZ2UtQXNzaXN0ZWQgQ29udGludW91cyBFdm9sdXRpb24gKFBBQ0UpLiBNdWx0aXBsZSBSVCBtdXRhbnRzIChQRTZhLWQpLCBkZXJpdmVkIGZyb20gUlRzIG9mIEVzY2hlcmljaGlhIGNvbGkgRWM0OCByZXRyb24sIFNjaGl6b3NhY2NoYXJvbXljZXMgcG9tYmUgVGYxIHJldHJvdHJhbnNwb3NvbiBhbmQgTW9sb25leSBNdXJpbmUgTGV1a2FlbWlhIFZpcnVzLCAgIHdlcmUgaWRlbnRpZmllZCB0byBpbmNyZWFzZSBlZGl0aW5nIGVmZmljaWVuY3kgb3ZlciBhbmQvb3Igd2VyZSBzbWFsbGVyIHRoYW4gdGhlIE0tTUxWIFJUIHVzZWQgaW4gcHJldmlvdXMgUEUgc3lzdGVtcy4gRXNwZWNpYWxseSA8Yj5QRTZjPC9iPiAoZXZvbHZlZCBUZjEgUlQpIGFuZCA8Yj5QRTZkPC9iPiAoZXZvbHZlZCBNLU1MViBSVCkgc2hvd2VkIHNpZ25pZmljYW50bHkgaGlnaGVyIGVkaXRpbmcgZWZmaWNpZW5jaWVzIHRoYW4gZXZlbiBQRW1heCBkZXBlbmRpbmcgb24gdGhlIHRhcmdldGVkIGxvY2ksIHdpdGggUEU2ZCBzaG93aW5nIGJlbmVmaXRzIGVzcGVjaWFsbHkgaW4gbG9jaSBmb3JtaW5nIG1vcmUgY29tcGxleCBzZWNvbmRhcnkgc3RydWN0dXJlcy4gUmVjZW50IGFkdmFuY2VtZW50cyBpbiBwcmltZSBlZGl0aW5nIHRhcmdldGluZyB0aGUgQ0ZUUiBGNTA4XHUwMzk0IG11dGF0aW9uIHNob3dlZCB0aGF0IFBFNmMgd2FzIHRoZSBtb3N0IHByb21pc2luZyBmb3IgZWRpdGluZyBpbiB0aGlzIGxvY2k8VGFiU2Nyb2xsTGluayB0YWI9XCJ0YWItcGUtc3lzdGVtc1wiIG51bT1cIjE1XCIgc2Nyb2xsSWQ9XCJkZXNjLTE1XCIvPi4gSW1wcm92ZW1lbnRzIG9mIG5DYXM5IG9uIHRoZSBvdGhlciBoYW5kIChQRTZlLWcpIHdlcmUgb25seSBtYXJnaW5hbCBhbmQgaGlnaGx5IHNpdGUgc3BlY2lmaWMuIEFsbCBQRTYgc3lzdGVtcyB1c2Ugbmlja2luZyBnUk5BcyAoUEUzKSBieSBkZWZhdWx0LCBidXQgZG8gbm90IGNvLWV4cHJlc3MgTUxIMWRuLlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0nY29sLTQnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2VuZ2luZWVyaW5nLWN5Y2xlL3BlNmMtb3Blbi5zdmdcIiBhbHQ9XCJQRTZjIFByaW1lIEVkaXRvclwiLz4gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J3JvdyBhbGlnbi1pdGVtcy1jZW50ZXInPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0nY29sJz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxiPlBFNzwvYj48VGFiU2Nyb2xsTGluayB0YWI9XCJ0YWItcGUtc3lzdGVtc1wiIG51bT1cIjE2XCIgc2Nyb2xsSWQ9XCJkZXNjLTE2XCIvPiBhZGRzIGFuIGFkZGl0aW9uYWwgUk5BIGJpbmRpbmcgZG9tYWluIHRvIHRoZSBQcmltZSBFZGl0b3IuIFRoZSBkb21haW4gaXMgZGVyaXZlZCBmcm9tIHRoZSBMYSBQcm90ZWluIChMYSgxLTE5NCkpLCBhbiBlbmRvZ2Vub3VzIGV1a2FyeW90aWMgcHJvdGVpbiBpbnZvbHZlZCBSTkEgbWV0YWJvbGlzbSBhbmQga25vd24gZm9yIGl0cyByb2xlIGluIGJpbmRpbmcgcG9seXVyaWRpbmUgKHBvbHlVKSB0YWlscyBhdCB0aGUgM1x1MjAxOSBlbmRzIG9mIG5hc2NlbnQgdHJhbnNjcmlwdHMsIHRodXMgcHJvdGVjdGluZyB0aGVtIGZyb20gZXhvbnVjbGVhc2UgYWN0aXZpdHkuIFBFNyBzaG93ZWQgY29uc2lkZXJhYmxlIGltcHJvdmVtZW50cyBvdmVyIFBFbWF4IGF0IGRpZmZlcmVudCBsb2NpIGFuZCBkaWZmZXJlbnQgdHlwZXMgb2YgZWRpdHMgd2hlbiB1c2VkIHdpdGggdGhlIFBFMiBzdHJhdGVneSAobm8gbmlja2luZyBnUk5Bcywgbm8gTUxIMWRuIGNvLWV4cHJlc3Npb24pLiBOb3RhYmx5LCBQRTcgZGlkIHBlcmZvcm0gd29yc2Ugd2hlbiB1c2VkIHdpdGggZW5naW5lZXJlZCBwZWdSTkFzIHRoYW4gd2l0aCByZWd1bGFyIG9uZXMgKHNlZSBwZWdSTkEgZGVzaWduKS5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J2NvbC00Jz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9lbmdpbmVlcmluZy1jeWNsZS9wZTctb3Blbi5zdmdcIiBhbHQ9XCJQRTcgUHJpbWUgRWRpdG9yXCIvPiBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2RldGFpbHM+XHJcbiAgICAgICAgICAgICAgICAgICAgIDwvSW5mb0JveD4gXHJcbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImJveFwiID5cclxuICAgICAgICAgICAgICAgICAgICAgPHAgaWQ9XCJwZTFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPFBoaWxpcEgzIGlkPVwicGUxaGVhZFwiPjxzcGFuPlBFMiBhbmQgUEU8c3VwPkNPPC9zdXA+LU1pbmk8L3NwYW4+PC9QaGlsaXBIMz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJEZXNpZ25cIiBpZD1cInRleHRcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBGb3Igb3VyIGluaXRpYWwgYXBwcm9hY2gsIHdlIHdhbnRlZCB0byBzdGFydCBmcm9tIHRoZSBiZWdpbm5pbmcgYW5kIHVzZSB0aGUgUEUyIHByaW1lIGVkaXRpbmcgc3lzdGVtLiBTaW5jZSBvdXIgZ29hbCBvZiBzdHJpcHBpbmcgdGhlIHNpemUgb2YgdGhlIHByaW1lIGVkaXRvciB3YXMgYSBiaWcgZmFjdG9yIGZyb20gdGhlIGJlZ2lubmluZywgd2UgZGlkIGEgcmVzZWFyY2hlZCBpbnRvIHRoYXQgZGlyZWN0aW9uIGFuZCBmb3VuZCBhIHRydW5jYXRlZCB2ZXJzaW9uIG9mIE0tTUxWIFJULCBQRTxzdXA+Q088L3N1cD4tTWluaS4gV2UgdGhlbiBvcmRlcmVkIHRoZSBwbGFzbWlkcyBmb3IgYm90aCBQRTIgYW5kIFBFPHN1cD5DTzwvc3VwPi1NaW5pLiBTaW5jZSB0aGUgUEU8c3VwPkNPPC9zdXA+LU1pbmkgcGxhc21pZCBoYWQgYSBkaWZmZXJlbnQgcHJvbW90b3IgdGhhbiBwQ01WLVBFMiwgd2UgZGVjaWRlZCB0byBjbG9uZSB0aGUgUEU8c3VwPkNPPC9zdXA+LU1pbmkgUlQgaW50byB0aGUgcENNVi1QRTIgdmVjdG9yIHRvIGFsbG93IGZvciBkaXJlY3QgY29tcGFyaXNvbi5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8SDQgdGV4dD1cIkJ1aWxkXCIgaWQ9XCJ0ZXh0XCIvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgV2UgZGVzaWduZWQgcHJpbWVycyBmb3IgdGhlIGFtcGxpZmljYXRpb24gb2YgUEU8c3VwPkNPPC9zdXA+LU1pbmkgUlQgYW5kIGNsb25lZCBpdCBpbnRvIHBDTVYtUEUyIHZpYSBkb3VibGUgZGlnZXN0aW9uIGFuZCBHaWJzb24gYXNzZW1ibHkuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJUZXN0XCIgaWQ9XCJ0ZXh0XCIvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgVG8gY29tcGFyZSB0aGUgcHJpbWUgZWRpdGluZyBwZXJmb3JtYW5jZXMgb2YgTS1NTFYgUlQgKFBFMikgYW5kIFBFPHN1cD5DTzwvc3VwPi1NaW5pIFJULCBib3RoIHdlcmUgdGVzdGVkIHVzaW5nIGEgMmluMSBwcmltZSBlZGl0aW5nIHJlcG9ydGVyIHBsYXNtaWQgc3lzdGVtPFRhYlNjcm9sbExpbmsgdGFiPVwidGFiLXBlLXN5c3RlbXNcIiBudW09XCIxN1wiIHNjcm9sbElkPVwiZGVzYy0xN1wiLz4gKHNlZSA8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZVdpdGhUYWJBbmRTY3JvbGwoe3Njcm9sbFRvSWQ6ICdQcm9vZiBvZiBDb25jZXB0JywgcGF0aDogJy9lbmdpbmVlcmluZycsIHRhYklkOiAndGFiLXRyYW5zZmVjdGlvbicgfSl9PlByb29mIG9mIENvbmNlcHQ8L2E+KSBpbiBIRUsyOTMgY2VsbHMuIENvbnRyYXJ5IHRvIHRoZSBmaW5kaW5ncyBvZiBHYW8gZXQgYWwuLCBoZXJlIHRoZSBQRTxzdXA+Q088L3N1cD4tTWluaSBwcmltZSBlZGl0b3IgcGVyZm9ybWVkIGEgbG90IHdvcnNlIHRoYW4gdGhlIFBFMiBwcmltZSBlZGl0b3IuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJMZWFyblwiIGlkPVwidGV4dFwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFNpbmNlIHdlIGtuZXcsIHRoYXQgZm9yIGEgc3VjY2Vzc2Z1bCB0aGVyYXB5IHRhcmdldGluZyB0aGUgRjUwOGRlbCBtdXRhdGlvbiBhIHZlcnkgaGlnaCBwcmltZSBlZGl0aW5nIGVmZmljaWVuY3kgd2FzIG9mIHV0bW9zdCBpbXBvcnRhbmNlLCB3ZSBkZWNpZGVkIGFnYWluc3QgdXNpbmcgUEU8c3VwPkNPPC9zdXA+LU1pbmkgYXMgdGhlIGJhc2lzIGZvciBvdXIgYXBwcm9hY2ggYW5kIHRoYXQgd2UgaGF2ZSB0byBsb29rIGZvciBvdGhlciBhbHRlcm5hdGl2ZXMuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJib3hcIiA+XHJcbiAgICAgICAgICAgICAgICAgICAgIDxwIGlkPVwicGUyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxIMyB0ZXh0PVwiUEU2Y1wiIGlkPVwicGUyaGVhZFwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJEZXNpZ25cIiBpZD1cInRleHRcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBEdXJpbmcgb3VyIGluaXRpYWwgdGFsayB3aXRoIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlc0FuZE9wZW5UYWIoJ21hdHRpanNpbnYnLCAnL2h1bWFuLXByYWN0aWNlcycpfT5NYXR0aWpzIEJ1bGNhZW48L2E+LCBoZSByZWNvbW1lbmRlZCBhIHRhbGsgb2YgPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VzQW5kT3BlblRhYignbGl1JywgJy9odW1hbi1wcmFjdGljZXMnKX0+RGF2aWQgTGl1PC9hPiBhdCBhbiBvbmxpbmUgY29uZmVyZW5jZSwgd2hlcmUgaGUgcHJlc2VudGVkIHVucHVibGlzaGVkIGRhdGEgYWJvdXQgaGlzIGxhYm9yYXRvcnkgd29ya2luZyBvbiBwcmltZSBlZGl0aW5nIGZvciBGNTA4ZGVsIGNvcnJlY3Rpb24uIFdlIGludmVzdGlnYXRlZCBpdCBhbmQgdGhyb3VnaCB0aGlzIGNhbWUgYWNyb3NzIHRoZSBQRTYgZ2VuZXJhdGlvbiBvZiBwcmltZSBlZGl0b3JzLiBTZWVpbmcgdGhhdCB0aGUgTGl1IExhYm9yYXRvcnkgZXZlbnR1YWxseSBkZWNpZGVkIG9uIHVzaW5nIHRoZSBQRTZjIHN5c3RlbSwgd2UgYWRvcHRlZCB0aGUgZmluZGluZ3MuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJCdWlsZFwiIGlkPVwidGV4dFwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFdlIGdvdCB0aGUgcGxhc21pZCBjYXJyeWluZyB0aGUgUEU2YyBwcmltZSBlZGl0b3IuIEV4Y2VwdCBmb3IgdGhlIFJUIGFuZCBhIGZldyBpbXByb3ZpbmcgbXV0YXRpb25zIGluIHRoZSBDYXM5IGVuenltZSwgaXQgaGFzIHRoZSBzYW1lIGFyY2hpdGVjdHVyZSBhcyBQRTIsIHdoaWNoIG1hZGUgY29tcGFyaXNvbiBxdWl0ZSBlYXN5LlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiVGVzdFwiIGlkPVwidGV4dFwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFdlIHRlc3RlZCBQRTZjIGFnYWluc3QgUEUyIHVzaW5nIHRoZSBzYW1lIHJlcG9ydGVyIHN5c3RlbSBhcyBtZW50aW9uZWQgYWJvdmUgZm9yIFBFPHN1cD5DTzwvc3VwPi1NaW5pLiBQRTZjLCBhcyBleHBlY3RlZCBmcm9tIHRoZSBsaXRlcmF0dXJlLCBwcm92ZWQgd2F5IG1vcmUgZWZmaWNpZW50IGluIHByaW1lIGVkaXRpbmcuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJMZWFyblwiIGlkPVwidGV4dFwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFRoZSBkYXRhIGZyb20gbGl0ZXJhdHVyZSBhcyB3ZWxsIGFzIG91ciBvd24gZXhwZXJpbWVudHMgY29uZmlybWVkIHRoYXQgUEU2YyBhcmNoaXRlY3R1cmUgaXMgc3VwZXJpb3IgdG8gUEUyIGV2ZW4gd2l0aG91dCB1c2luZyBuaWNraW5nIGdSTkFzIHRoYXQgaGVscCBzdXBwcmVzcyBtaXNtYXRjaCByZXBhaXIuIFRoaXMgbGVkIHVzIHRvIHRoZSBkZWNpc2lvbiB0byB1c2UgdGhlIFBFNmMgcmV2ZXJzZSB0cmFuc2NyaXB0YXNlIGFuZCBwYXJ0cyBvZiB0aGUgb3ZlcmFsbCBhcmNoaXRlY3R1cmUgZm9yIG91ciBzdWJzZXF1ZW50IHRlc3RzLlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiYm94XCIgPlxyXG4gICAgICAgICAgICAgICAgICAgICA8cCBpZD1cInBlM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8SDMgdGV4dD1cIlByZUN5c2UgQ2FzZXR0ZVwiIGlkPVwicGUzaGVhZFwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJEZXNpZ25cIiBpZD1cInRleHRcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBJbiB0aGUgbGF0ZXIgc3RhZ2VzIG9mIG91ciBwcm9qZWN0LCB0aGUgTGl1IGxhYm9yYXRvcnkgcHVibGlzaGVkIHRoZWlyIG93biBmaW5kaW5ncyByZWdhcmRpbmcgQ0ZUUiBGNTA4ZGVsIHRhcmdldGluZyB3aXRoIHByaW1lIGVkaXRpbmc8VGFiU2Nyb2xsTGluayB0YWI9XCJ0YWItcGUtc3lzdGVtc1wiIG51bT1cIjE1XCIgc2Nyb2xsSWQ9XCJkZXNjLTE1XCIvPi4gVGhlIGRhdGEgc2hvd2VkIHRoYXQgdGhlIGVkaXRpbmcgZWZmaWNpZW5jeSBvZiBQRTIgYmFzZWQgc3lzdGVtcywgZXZlbiB3aGVuIHVzaW5nIFBFNmMgcmV2ZXJzZSB0cmFuc2NyaXB0YXNlLCBtaWdodCBub3QgYmUgc3VmZmljaWVudCBmb3IgYXBwbGljYXRpb24gaW4gYSB0aGVyYXB5LiBBbHNvLCB0aGUgcGxhc21pZHMgb2YgY3VycmVudCBwcmltZSBlZGl0b3JzIGRpZCBub3QgaW5jbHVkZSByZXN0cmljdGlvbiBzaXRlcyB0aGF0IHdvdWxkIGhhdmUgYWxsb3dlZCByZXBsYWNpbmcgY29tcG9uZW50cyBsaWtlIHRoZSBuaWNrYXNlIHRvIHRlc3QgYWx0ZXJuYXRpdmVzLiBUaGlzIGlzIHdoeSwgaW4gYSBjaGVycnktcGlja2luZyBtYW5uZXIsIHdlIGNvbWJpbmVkIHRoZSBQRTZjIGFyY2hpdGVjdHVyZSBwcmltZSBlZGl0b3Igd2l0aCB0aGUgbW9zdCBwcm9taXNpbmcgYXNwZWN0cyBvZiBvdGhlciBwcmltZSBlZGl0b3JzLCBjcmVhdGluZyB0aGUgUHJlQ3lzZSBjYXNzZXR0ZS5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgT3VyIGRlY2lzaW9uIG9uIHdoYXQgY29tcG9uZW50cyBvZiBleGlzdGluZyBwcmltZSBlZGl0b3JzIHdlIHdhbnRlZCB0byB1c2Ugd2FzIG1haW5seSBkcml2ZW4gYnkgdHdvIGZhY3RvcnM6IGVmZmljaWVuY3kgYW5kIHByZWNpc2lvbi4gSW4gcHJpbWUgZWRpdGluZywgdGhlc2UgdHdvIGFyZSBvZnRlbiBvcHBvc2luZyBmb3JjZXMsIHdoaWNoIG1lYW5zIGFkdmFuY2VtZW50cyBpbXByb3ZpbmcgZWZmaWNpZW5jeSBvZnRlbiBhbHNvIGluY3JlYXNlIHRoZSByaXNrIG9mIG9mZi10YXJnZXRzIG11dGF0aW9ucyBhbmQgb24tdGFyZ2V0IHVuZGVzaXJlZCBlZGl0aW5nLiBGb3IgdGhpcyByZWFzb24sIHdlIGRlY2lkZWQgYWdhaW5zdCB1c2luZyBuaWNraW5nIGdSTkFzLiBBbHRob3VnaCB0aGV5IGhhdmUgYmVlbiBwcm92ZW4gdG8gcmVsaWFibHkgaW1wcm92ZSBlZGl0aW5nIGVmZmljaWVuY3ksIHRoZXkgaW5jcmVhc2UgdGhlIHJpc2sgYW5kIHBvc3NpYmxlIHNjb3BlIG9mIG9mZi10YXJnZXQgY2xlYXZhZ2UgYW5kIG11dGF0aW9ucy4gQWRkaXRpb25hbGx5LCBpZiA8Yj5QRTNiPC9iPiBpcyBub3QgYXBwbGljYWJsZSwgdGhlcmUgaXMgYSBjaGFuY2UgZm9yIGRvdWJsZSBzdHJhbmQgYnJlYWtzIHRvIG9jY3VyLCB3aGljaCBkaW1pbmlzaGVzIHRoZSBzYWZldHkgYWR2YW50YWdlIG9mIHByaW1lIGVkaXRpbmcgb3ZlciBvdGhlciBjb21tb24gQ1JJU1BSLWJhc2VkIG1ldGhvZHMuIENvLWV4cHJlc3Npb24gb2YgTUxIMWRuIGNhbiBpbXByb3ZlIGVkaXRpbmcgZWZmaWNpZW5jeSBpbiB0aGUgc2FtZSB3YXkgYXMgbmlja2luZyBnUk5BcyBkbywgYnkgaGVscGluZyB0byBldmFkZSBvZiB0aGUgY2VsbHVsYXIgbWlzbWF0Y2ggcmVwYWlyIG1lY2hhbmlzbXMuIFRoZSB1c2Ugb2YgTUxIMWRuIGlzIGVzcGVjaWFsbHkgaW1wYWN0ZnVsLCB3aGVuIG5pY2tpbmcgZ1JOQXMgYXJlIG5vdCB1c2VkLCB3aGljaCBpcyBwZXJmZWN0IGluIG91ciBjYXNlLiBSZWNlbnRseSwgdGhlIExhIHBvbHkoVSktYmluZGluZyBtb3RpZiBoYXMgYmVlbiBzaG93biB0byBlbmhhbmNlIHByaW1lIGVkaXRpbmcgZWZmaWNpZW5jeSwgcHJlc3VtYWJseSB0aHJvdWdoIHByb3RlY3Rpb24gb2YgdGhlIDNcdTIwMTkgcG9seShVKSB0YWlsIG9mIHRoZSBwZWdSTkEgZnJvbSBSTmFzZXMuIFRoZSBtb3RpZiBpcyBhbHNvIGNvbXBhcmF0aXZlbHkgc21hbGwsIHdoaWNoIGFsaWducyB3aXRoIHRoZSBvdmVyYWxsIGdvYWwgdG8gY3JlYXRlIGEgY29tcGFjdCBwcmltZSBlZGl0aW5nIHRvb2wuIFRoaXMgaXMgd2h5IFByZUN5c2UgQ2FzZXR0ZXMgaGF2ZSBiZWVuIGRlc2lnbmVkIHRvIGluY2x1ZGUgdGhlIExhIFJOQSBiaW5kaW5nIG1vdGlmIGZ1c2lvbiBhbmQgdGhlIGRvbWluYW50IG5lZ2F0aXZlIE1MSDEgcHJvdGVpbi5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8SDQgdGV4dD1cIkJ1aWxkXCIgaWQ9XCJ0ZXh0XCIvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgVGhlIFByZUN5c2UgY2Fzc2V0dGUgY29tZXMgaW4gdGhyZWUgdmVyc2lvbnM6IFByZUN5c2VBLCB0aGUgbW9zdCBiYXNpYyB2ZXJzaW9uLCBjb21wcmlzZXMgb2YgYSBUNyBwcm9tb3RlciBhbmQgYW4gb3BlbiByZWFkaW5nIGZyYW1lLCB3aGljaCBpbmNsdWRlcyBOTFMgYW5kIG9uZSB0eXBlSUlTIHJlc3RyaWN0aW9uIGVuenltZSBjbG9uaW5nIHNpdGUgZm9yIGEgbmlja2FzZSBhbmQgYSByZXZlcnNlIHRyYW5zY3JpcHRhc2UgZWFjaC4gRm9yIHBvc3NpYmxlIGZ1dHVyZSBhZGRpdGlvbnMgbGlrZSBlLiBnLiBzZWxlY3Rpb24gbWFya2VycywgYSBCYW1ISSByZXN0cmljdGlvbiBzaXRlIGF0IHRoZSBlbmQgb2YgdGhlIGNvZGluZyBzZXF1ZW5jZSBhbGxvd3MgZm9yIGVhc3kgaW4tZnJhbWUgR2lic29uIGNsb25pbmcuIEJ1aWxkaW5nIG9uIHRoaXMgYmFzaXMsIFByZUN5c2VCIGV4cGFuZHMgUHJlQ3lzZUEgYnkgdGhlIExhIFBvbHkoVSktYmluZGluZyBtb3RpZi4gUHJlQ3lzZUMgYWRkaXRpb25hbGx5IGludHJvZHVjZXMgdGhlIGNvLWV4cHJlc3NlZCBNTEgxZG4uIFRoZSBjYXNzZXR0ZXMgd2VyZSBvcmRlcmVkIGluIHRocmVlIGluZGl2aWR1YWwgcGFydHMgdG8gYmUgcHV0IHRvZ2V0aGVyIHdpdGggYSBwQ01WLVBFNmMgYmFja2JvbmUgdmlhIEdpYnNvbiBDbG9uaW5nIGluIGRpZmZlcmVudCBjb25maWd1cmF0aW9ucyB0byBjcmVhdGUgdGhlIHRocmVlIHZhcmlhbnRzLiBJbiB0aGUgcGxhc21pZCB0aGUgY2Fzc2V0dGUgaXMgZXhwcmVzc2VkIHVuZGVyIGEgQ01WIHByb21vdGVyIGFuZCBmb2xsb3dlZCBieSBhIHBvbHlhZGVueWxhdGlvbiBzaWduYWwuIFRoZSBQcmVDeXNlIENhc2V0dGVzIHRoZW1zZWx2ZXMgY2FuIGJlIHVzZWQgYXMgYSBCaW9CcmljayBSRkM8VGFiU2Nyb2xsTGluayB0YWI9XCJ0YWItcGUtc3lzdGVtc1wiIG51bT1cIjE2XCIgc2Nyb2xsSWQ9XCJkZXNjLTE2XCIvPiBzdGFuZGFyZCBjb21wYXRpYmxlIGNvbXBvc2l0ZSBwYXJ0IGNhbiB0aHVzIGJlIGZyZWVseSBjb21iaW5lZCB3aXRoIG90aGVyIHBhcnRzLiBUaGUgbmlja2FzZSBhbmQgUlQgc2xvdHMgY2FuIGJlIHVzZWQgZm9yIGluc2VydGluZyBhbnkgYmFzaWMgb3IgY29tcG9zaXRlIHBhcnQgY29tcGF0aWJsZSB3aXRoIHRoZSBUeXBlIElJUyBSQ0ZbMTAwMF0gc3RhbmRhcmQgZm9yIGZ1c2lvbiBwcm90ZWlucy4gVGhlIFByZUN5c2UgQ2FzZXR0ZSBpcyBtZWFudCB0byBiZSBhIGNvbnRyaWJ1dGlvbiB0byB0aGUgaUdFTSBjb21tdW5pdHkgYW5kIGEgYmFzZSBmb3Igb3RoZXIgdGVhbXMgdG8gam9pbiB1cyBhbmQgcmVzZWFyY2hlcnMgYXJvdW5kIHRoZSB3b3JsZCB0byBpbm5vdmF0ZSBpbiB0aGUgZXhjaXRpbmcgZmllbGQgb2YgcHJpbWUgZWRpdGluZy5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNhc2V0dGVjb250YWluZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjYXNldHRlYm94XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxINSB0ZXh0PVwiUHJlQ3lzZUFcIiBpZD1cIlBDQVwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9lbmdpbmVlcmluZy1jeWNsZS9wcmVjeXNlYS1jYXNldHRlLnN2Z1wiIGFsdD1cImltYWdlIDFcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjYXNldHRlYm94XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxINSB0ZXh0PVwiUHJlQ3lzZUJcIiBpZD1cIlBDQlwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9lbmdpbmVlcmluZy1jeWNsZS9wcmVjeXNlYi1jYXNldHRlLnN2Z1wiIGFsdD1cImltYWdlIDJcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjYXNldHRlYm94XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxINSB0ZXh0PVwiUHJlQ3lzZUNcIiBpZD1cIlBDQ1wiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9lbmdpbmVlcmluZy1jeWNsZS9wcmVjeXNlYy1jYXNldHRlLnN2Z1wiIGFsdD1cImltYWdlIDNcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHsvKiA8ZGl2IGNsYXNzTmFtZT1cInJvdyBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgPCBkaXYgY2xhc3NOYW1lPSdjb2wgYWxpZ24taXRlbXMtY2VudGVyJz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEg1IHRleHQ9XCJQcmVDeXNlQVwiIGlkPVwiUHJlQ3lzZUFcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvZW5naW5lZXJpbmctY3ljbGUvcHJlY3lzZWEtY2FzZXR0ZS5zdmdcIiBhbHQ9XCJQcmVDeXNlQSBtb2R1bGFyIFBFIGNhc2V0dGVcIiBzdHlsZT17e2hlaWdodDogXCI4MHB0XCIsIHdpZHRoOiBcImF1dG9cIn19Lz4gIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J2NvbCBhbGlnbi1pdGVtcy1jZW50ZXInPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8SDUgdGV4dD1cIlByZUN5c2VCXCIgaWQ9XCJQcmVDeXNlQlwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9lbmdpbmVlcmluZy1jeWNsZS9wcmVjeXNlYi1jYXNldHRlLnN2Z1wiIGFsdD1cIlByZUN5c2VCIG1vZHVsYXIgUEUgY2FzZXR0ZXJcIiBzdHlsZT17e2hlaWdodDogXCI4MHB0XCIsIHdpZHRoOiBcImF1dG9cIn19Lz4gIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSdyb3cgYWxpZ24taXRlbXMtY2VudGVyJz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgPEg1IHRleHQ9XCJQcmVDeXNlQ1wiIGlkPVwiUHJlQ3lzZUNcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvZW5naW5lZXJpbmctY3ljbGUvcHJlY3lzZWMtY2FzZXR0ZS5zdmdcIiBhbHQ9XCJQcmVDeXNlQyBtb2R1bGFyIFBFIGNhc2V0dGVcIiBzdHlsZT17e2hlaWdodDogXCI4MHB0XCIsIHdpZHRoOiBcImF1dG9cIn19Lz4gIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gKi99XHJcbiAgICAgICAgICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgIDxTZWN0aW9uIHRpdGxlPVwiUmVmZXJlbmNlc1wiIGlkPVwicmVmZXJlbmNlc1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICA8RW5nUEVzeXN0ZW1zLz5cclxuICAgICAgICAgICAgICAgICAgPC9TZWN0aW9uPlxyXG4gICAgICAgICAgICAgICAgICA8YnIvPlxyXG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvdyBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJsZWZ0XCI+PEJ1dHRvbk9uZUVuZ2luZWVyaW5nIGxhYmVsPVwiUHJldmlvdXNcIiBvcGVuPVwidHJhbnNmZWN0aW9uXCIgc2Nyb2xsVG9JZD1cInRyYW5zZmVjdGlvbi1oZWFkZXJcIi8+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbCBidXR0b24tbGVmdFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJpZ2h0XCI+PEJ1dHRvbk9uZUVuZ2luZWVyaW5nIGxhYmVsPVwiTmV4dFwiIG9wZW49XCJwZWdybmFcIiBzY3JvbGxUb0lkPVwicGVncm5hLWhlYWRlclwiLz48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICA8L3NlY3Rpb24+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICBcclxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJlbmdpbm5lZXJpbmd0YWJcIiBpZD1cInRhYi1wZWdybmFcIiBzdHlsZT17e2Rpc3BsYXk6IFwibm9uZVwifX0+XHJcbiAgICAgICAgICAgIDxzZWN0aW9uIGlkPVwicGVnUk5BIHNlY1wiID5cclxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJlbmctYm94IGJveFwiID5cclxuICAgICAgICAgICAgICAgICAgICAgPEgyIGlkPVwicGVncm5hLWhlYWRlclwiIHRleHQ9XCJwZWdSTkFcIj48L0gyPlxyXG4gICAgICAgICAgICAgICAgICAgICA8cD5UaGUgPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VzQW5kT3BlblRhYigncGVncm5hJywgJy9lbmdpbmVlcmluZycpfT4gcGVnUk5BIDwvYT4gaXMgb2YgcGFyYW1vdW50IGltcG9ydGFuY2UgZm9yIGZ1bmN0aW9uIGFuZCBlZmZpY2llbmN5IG9mIHByaW1lIGVkaXRvcnMsIGFzIGl0IHBsYXlzIGEgcm9sZSBpbiBldmVyeSBzdGVwIG9mIHRoZSBwcmltZSBlZGl0aW5nIG1lY2hhbmlzbS4gSXQgaXMgdGhlcmVmb3JlIGVxdWFsbHkgaW1wb3J0YW50IHRvIG9wdGltaXplIHRoZSBwZWdSTkEgdGhhbiBpdCBpcyB0byBoYXZlIGFuIG9wdGltaXplZCBwcmltZSBlZGl0b3IuIEhlbmNlIHRoaXMgZW5naW5lZXJpbmcgY3ljbGUgZXhwbGFpbnMgb3VyIHByb2Nlc3Mgb2Ygb3B0aW1pemluZyB0aGUgcGVnUk5BcyBmb3Igb3VyIGdlbm9taWMgdGFyZ2V0LCBDRlRSIEY1MDhkZWwuIEdpdmVuIHRoYXQgZGlmZmVyZW50IGFyZWFzIG9mIHRoZSBwZWdSTkEgaGF2ZSBkaWZmZXJlbnQgZnVuY3Rpb25hbGl0aWVzLCB0aGUgZm9sbG93aW5nIGl0ZXJhdGlvbiBjeWNsZXMgd2lsbCBkZW1vbnN0cmF0ZSBob3cgaW1wcm92ZW1lbnRzIGFuZCBvcHRpbWl6YXRpb25zIGhhdmUgYmVlbiBtYWRlIHRvIHRoZXNlIHZhcmlvdXMgZnVuY3Rpb25hbCBkb21haW5zIGluIHJlbGF0aW9uIHRvIHRoZSBDRlRSIGNvbnRleHQuIFRoaXMgd2FzIGFjaGlldmVkIHRocm91Z2ggcmVzZWFyY2gsIHRoZSBjb3JyZXNwb25kZW5jZSB3aXRoIG9mIGV4cGVydHMgYW5kIGV4cGVyaW1lbnRzLjwvcD5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY2FzZXR0ZWNvbnRhaW5lclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInBlZ3JuYWJveFwiIHN0eWxlPXt7aGVpZ2h0OiAnYXV0bycsIHdpZHRoOiAnNTAlJ319PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2VuZ2luZWVyaW5nLWN5Y2xlL3BlZ3JuYS1vdmVydmlldy5zdmdcIiBhbHQ9XCJJbGx1c3RyYXRpb24gb2YgdGhlIGtleSBjb21wb25lbnRzIGluIG91ciBwZWdSTkFzLCBpbmNsdWRpbmcgc3BhY2VyLCBnUk5BIHNjYWZmb2xkLCBwcmltZXIgYmluZGluZyBzZXF1ZW5jZSwgcmV2ZXJzZSB0cmFuc2NyaXB0YXNlIHRlbXBsYXRlLCB0ZXZvcHJlUTEgMycgc3RlbSBsb29wIG1vdGlmIGFuZCB0ZW1wbGF0ZXMgZm9yIG1haW4gYW5kIHNpbGVudCBlZGl0cy5cIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxmaWdjYXB0aW9uPjxiPkZpZ3VyZSAxOiBJbGx1c3RyYXRpb24gb2YgdGhlIGtleSBjb21wb25lbnRzIGluIG91ciBwZWdSTkFzLCBpbmNsdWRpbmcgc3BhY2VyLCBnUk5BIHNjYWZmb2xkLCBwcmltZXIgYmluZGluZyBzZXF1ZW5jZSAoUEJTKSwgcmV2ZXJzZSB0cmFuc2NyaXB0YXNlIHRlbXBsYXRlIChSVFQpLCB0ZXZvcHJlUTEgMycgc3RlbSBsb29wIG1vdGlmIGFuZCB0ZW1wbGF0ZXMgZm9yIG1haW4gYW5kIHNpbGVudCBlZGl0cy48L2I+IDwvZmlnY2FwdGlvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiYm94XCIgPlxyXG4gICAgICAgICAgICAgICAgICAgICA8cCBpZD1cInBlZzFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPEgzIHRleHQ9XCJJbml0aWFsIHBlZ1JOQSBEZXNpZ24gYW5kIFNpbGVudCBFZGl0c1wiIGlkPVwicGVnMWhlYWRcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBUaGUgZmlyc3QgaXRlcmF0aW9uIG9mIG91ciBlbmdpbmVlcmluZyBjeWNsZSwgd2UgZGVzaWduZWQgb3VyIGZpcnN0IHNldCBvZiBwZWdSTkFzIHRhcmdldGluZyB0aGUgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlV2l0aFRhYkFuZFNjcm9sbCAoe3Njcm9sbFRvSWQ6ICdyZXBvcnRlci1oZWFkZXInLCBwYXRoOiAnL2VuZ2luZWVyaW5nJywgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRhYklkOiAncmVwb3J0ZXInIH0pfT5tb2RpZmllZCBwUEVBUl9DRlRSIHJlcG9ydGVyPC9hPi4gV2UgYWxzbyBmb2N1c2VkIG9uIHRoZSBpbmNvcnBvcmF0aW9uIG9mIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaWxlbnQgZWRpdHMuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJEZXNpZ25cIiBpZD1cImRlc2lnbi1oZWFkXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgRm9sbG93aW5nIGFuIGludGVydmlldyB3aXRoIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlc0FuZE9wZW5UYWIoJ0pQcGVnUk5BJywgJy9odW1hbi1wcmFjdGljZXMnKX0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEphbi1QaGlsbGlwcCBHZXJoYXJkPC9hPiwgd2UgY2FtZSBhY3Jvc3MgdGhlIGNvbmNlcHQgb2Ygc2lsZW50IGVkaXRzLiBTaWxlbnQgZWRpdHMgcmVmZXIgdG8gc2luZ2xlLWJhc2UgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsdGVyYXRpb25zIG9mIHRoZSBudWNsZW90aWRlIHNlcXVlbmNlIHRoYXQgZG8gbm90IGNoYW5nZSB0aGUgZW5jb2RlZCBhbWlubyBhY2lkLiBKYW4tUGhpbGxpcHAgcG9pbnRlZCBvdXQgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoYXQgaW50cm9kdWNpbmcgc2lsZW50IGVkaXRzIGluIGFkZGl0aW9uIHRvIHRoZSBpbnRlbmRlZCBlZGl0IG9mZmVycyB0d28gbWFqb3IgYWR2YW50YWdlcy5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgRmlyc3RseSwgc2lsZW50IGVkaXRzIGNhbiBpbmNyZWFzZSB0aGUgbGlrZWxpaG9vZCBvZiBmbGFwIGluY29ycG9yYXRpb24gZHVyaW5nIHRoZSBwcmltZSBlZGl0aW5nIHByb2Nlc3MsIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBlc3BlY2lhbGx5IGluIHRoZSBjb250ZXh0IG9mIE1NUiAoTWlzbWF0Y2ggUmVwYWlyKSBpbiB0aGUgY2VsbC4gV2l0aG91dCBzaWxlbnQgZWRpdHMsIHRoZSBjZWxsIGlzIG1vcmUgbGlrZWx5IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICB0byBkZXRlY3QgdGhlIG1pc21hdGNoZXMgdGhhdCBvbmx5IG9jY3VyIGF0IHRoZSBkZXNpcmVkIG11dGF0aW9uIHNpdGUsIGxlYWRpbmcgdG8gYSBoaWdoZXIgY2hhbmNlIG9mIHRoZSBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lsZC10eXBlIGZsYXAgYmVpbmcgcmVpbnNlcnRlZC4gQnkgaW50cm9kdWNpbmcgc2lsZW50IGVkaXRzLCBtdWx0aXBsZSBtaXNtYXRjaGVzIGFyZSBwcmVzZW50IHdoaWNoIHRoaXMgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIGluY3JlYXNlcyB0aGUgcHJvYmFiaWxpdHkgb2YgdGhlIHN5bnRoZXNpemVkIGZsYXAgYmVpbmcgaW5jb3Jwb3JhdGVkLlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBTZWNvbmRseSwgc2lsZW50IGVkaXRzIGNhbiBwcmV2ZW50IHJlLWJpbmRpbmcgb2YgdGhlIHByaW1lIGVkaXRpbmcgY29tcGxleCB0byB0aGUgdGFyZ2V0IHJlZ2lvbiBhZnRlciBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgc3VjY2Vzc2Z1bCBlZGl0aW5nLiBUaGlzIGlzIGJlIGFjaGlldmVkIGJ5IGludHJvZHVjaW5nIHNpbGVudCBlZGl0cyB0byB0aGUgcmVnaW9ucyBtYWtpbmcgdXAgUEFNIHNlcXVlbmNlIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBhbmQvb3IgcHJvdG9zcGFjZXIuIFBBTSBvciBwcm90b3NwYWNlciBkaXNydXB0aW9uIG1ha2UgdGhlIGVkaXRpbmcgcHJvY2VzcyBtb3JlIHNlY3VyZS4gVGhpcyBpcyBiZWNhdXNlIGl0IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICByZWR1Y2VzIHRoZSBsaWtlbGlob29kIG9mIGVkaXRpbmcgdGhlIHRhcmdldCByZWdpb24gcmVwZWF0ZWRseSwgd2hpY2ggd291bGQgaW5jcmVhc2UgdGhlIHByb2JhYmlsaXR5IG9mIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBvbi10YXJnZXQgdW5kZXNpcmVkIGVkaXRpbmcgb3V0Y29tZXMuIEhlIHN1Z2dlc3RlZCB0aGF0IHN3YXBwaW5nIGN5dG9zaW5lIG9yIGd1YW5pbmUgYmFzZXMgZm9yIHRoZXNlIHNpbGVudCBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgZWRpdHMgY2FuIGJlIHBhcnRpY3VsYXJseSBlZmZlY3RpdmUgaW4gaW1wcm92aW5nIHByaW1lIGVkaXRpbmcgZWZmaWNpZW5jeS5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8SDQgdGV4dD1cIkJ1aWxkXCIgaWQ9XCJidWlsZC1oZWFkXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgV2UgZGVzaWduZWQgc2V2ZXJhbCBwZWdSTkFzLCBib3RoIHdpdGggYW5kIHdpdGhvdXQgc2lsZW50IGVkaXRzLiBUbyBhc3Npc3Qgd2l0aCB0aGlzLCB3ZSB1c2VkIHRoZSBwZWdGaW5kZXIgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIHNvZnR3YXJlPFRhYlNjcm9sbExpbmsgdGFiPVwidGFiLXBlZ3JuYVwiIG51bT1cIjE4XCIgc2Nyb2xsSWQ9XCJkZXNjLTE4XCIvPiwgd2hpY2ggZ2VuZXJhdGVkIHBvc3NpYmxlIHZhcmlhdGlvbnMgb2YgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIHBlZ1JOQXMgYmFzZWQgb24gdGhlIHNlcXVlbmNlIG9mIHRoZSByZXBvcnRlciBwbGFzbWlkLiBXZSBzZWxlY3RlZCB0aGUgb3B0aW1hbCBwZWdSTkEgYXMgc3VnZ2VzdGVkIGJ5IHRoZSBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgc29mdHdhcmUsIGFuZCB0aGVuIHRlc3RlZCBpdCBpbiB0d28gZm9ybXM6IG9uZSB1bm1vZGlmaWVkIGFuZCBvbmUgd2l0aCBzaWxlbnQgZWRpdHMuIEZvciB0aGUgdW5tb2RpZmllZCBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyaWFudCwgd2UgaW5jbHVkZWQgYSBzaW5nbGUgc2lsZW50IGVkaXQgdGhhdCBpbnRyb2R1Y2VkIGEgUEFNIGRpc3J1cHQgaW4gdGVybXMgb2Ygb3VyIGJpb3NhZmV0eSBtZWFzdXJlcy4gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIEZvciB0aGUgbW9kaWZpZWQgdmFyaWFudCwgd2UgaW50cm9kdWNlZCB0aHJlZSBzaWxlbnQgZWRpdHMgaW4gdG90YWwsIGFkZGluZyB0d28gbW9yZSB0byB0aGUgaW5pdGlhbCBlZGl0LiBcclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgT25jZSB3ZSBoYWQgZGVzaWduZWQgdGhlc2UgdmFyaWFudHMsIHdlIG9yZGVyZWQgdGhlbSBpbiB0aGVpciBpbmRpdmlkdWFsIGNvbXBvbmVudHMgYW5kIGNsb25lZCB0aGVtIGludG8gYSBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgcFU2LXBlZy1HRy1hY2NlcHRvciBiYWNrYm9uZSB1c2luZyBHb2xkZW4gR2F0ZSBjbG9uaW5nIGFjY29yZGluZyB0byB0aGUgcHJvdG9jb2wgZnJvbSBBbnphbG9uZSBldCBhbC4gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIDIwMTk8VGFiU2Nyb2xsTGluayB0YWI9XCJ0YWItcGVncm5hXCIgbnVtPVwiMTlcIiBzY3JvbGxJZD1cImRlc2MtMTlcIi8+LiBXZSB0aGVuIHNjcmVlbmVkIHRoZSBhc3NlbWJsZWQgcGVnUk5BcyB0byBlbnN1cmUgdGhhdCB0aGUgaW5kaXZpZHVhbCBjb21wb25lbnRzIGhhZCB0aGUgY29ycmVjdCBvcmllbnRhdGlvbiBhbmQgdGhlbiBjbG9uZWQgdGhlbSBpbnRvIHRoZSBwVTYtR0ctcGVnUk5BLWFjY2VwdG9yIHBsYXNtaWQgc28gdGhhdCB0aGV5IHdlcmUgcmVhZHkgdG8gYmUgdGVzdGVkLlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiVGVzdFwiIGlkPVwidGVzdC1oZWFkXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgVGhlc2UgdHdvIHZhcmlhbnRzIHdlcmUgdGhlbiB0ZXN0ZWQgYWdhaW5zdCBlYWNoIG90aGVyIHVzaW5nIG91ciA8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZVdpdGhUYWJBbmRTY3JvbGwgKHtzY3JvbGxUb0lkOiAncmVwMycsIHBhdGg6ICcvZW5naW5lZXJpbmcnLCB0YWJJZDogJ3JlcG9ydGVyJyB9KX0+cFBFQVJfQ0ZUUiByZXBvcnRlciBwbGFzbWlkIHN5c3RlbTwvYT4gYW5kIGEgPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VXaXRoVGFiQW5kU2Nyb2xsICh7c2Nyb2xsVG9JZDogJ3Njcm9sbCB0YXJnZXQgaWQnLCBwYXRoOiAnL3BhZ2UnLCB0YWJJZDogJ3RhYmlkJyB9KX0+UEUyIHByaW1lIGVkaXRvcjwvYT4uIFRoZSB0ZXN0IG9mIHRoZSBwZWdSTkFzIHdhcyBjb25kdWN0ZWQgYnkgY28tdHJhbnNmZWN0aW5nIHRoZSByZXBvcnRlciBzeXN0ZW0sIHRoZSBwZWdSTkEgcGxhc21pZHMgYW5kIHRoZSBQRTIgcGxhc21pZHMgaW50byBIRUsyOTMgY2VsbHMuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJMZWFyblwiIGlkPVwibGVhcm4taGVhZFwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFRoZSByZXN1bHRzIHNob3dlZCB0aGF0IHRoZSBlZGl0aW5nIGVmZmljaWVuY3kgb2YgdGhlIHZhcmlhbnQgd2l0aG91dCBzaWxlbnQgZWRpdHMgd2FzIHN1cGVyaW9yIHRvIHRoZSB2YXJpYW50IHdpdGggc2lsZW50IGVkaXRzLCB3aGljaCBjb25zaWRlcmluZyBvdXIgaW5wdXQgd2FzIG5vdCBleHBlY3RlZC4gQnV0IGFzIHdlIGhhdmUgbGVhcm5lZCBpbiB0aGUgaW50ZXJ2aWV3IHdpdGggSmFuLVBoaWxsaXBwIEdlcmhhcmQsIHRoZXNlIHNpbGVudCBlZGl0cyBhcmUgZXNwZWNpYWxseSBlZmZlY3RpdmUgaW4gYXZvaWRpbmcgbWlzbWF0Y2ggcmVwYWlyIChNTVIpIGluc2lkZSBodW1hbiBjZWxscy4gRm9ybSA8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZXNBbmRPcGVuVGFiKCdtYXR0aWpzaW52JywgJy9odW1hbi1wcmFjdGljZXMnKX0+IE1hdHRpanMgQnVsY2FlbiA8L2E+IHdlIGxlYXJuZWQsIHRoYXQgSEVLMjkzIGNlbGxzIGFyZSBkZWZpY2llbnQgaW4gdGhpcyB2ZXJ5IG1lY2hhbmlzbS4gRnJvbSB0aGlzIHdlIGRlZHVjZWQgdGhhdCB3ZSBoYWQgdG8gdGVzdCB0aGUgc2lsZW50IGVkaXRzIGluIGx1bmcgZXBoaXRhbCBjZWxscyB0byBnZXQgYSB2YWxpZCByZXN1bHQuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJib3hcIiA+XHJcbiAgICAgICAgICAgICAgICAgICAgIDxwIGlkPVwicGVnMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8SDMgdGV4dD1cIlNjcmVlbmluZyBvZiBwZWdSTkEgdmFyaWFudHNcIiBpZD1cInBlZzJoZWFkXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgSW4gdGhpcyBzZWNvbmQgaXRlcmF0aW9uLCB3ZSBmb2N1c2VkIG9uIGZ1cnRoZXIgb3B0aW1pemluZyBvdXIgcGVnUk5BIGJ5IGluY29ycG9yYXRpbmcgYSBzdGVtIGxvb3AgYW5kIGV4cGVyaW1lbnRpbmcgd2l0aCBkaWZmZXJlbnQgbGVuZ3RocyBvZiB0aGUgUEJTIChQcmltZXIgQmluZGluZyBTaXRlKSBhbmQgUlRUIChSZXZlcnNlIFRyYW5zY3JpcHRhc2UgVGVtcGxhdGUpLiBUaGVzZSBtb2RpZmljYXRpb25zIHdlcmUgaW5zcGlyZWQgYnkgYSBjb21iaW5hdGlvbiBvZiBsaXRlcmF0dXJlIHJlc2VhcmNoIGFuZCBleHBlcnQgaW50ZXJ2aWV3cy4gQWZ0ZXIgZXZhbHVhdGluZyB0aGUgcGVyZm9ybWFuY2Ugb2YgdGhlIHBlZ1JOQXMgdXNpbmcgZmxvdyBjeXRvbWV0cnksIHdlIHNlbGVjdGVkIHRoZSB0aHJlZSBtb3N0IGVmZmVjdGl2ZSBjYW5kaWRhdGVzLlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiRGVzaWduXCIgaWQ9XCJkZXNpZ24taGVhZFwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIEJhc2VkIG9uIGxpdGVyYXR1cmUgcmV2aWV3cyBhbmQgb3VyIGludGVydmlldyB3aXRoIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlc0FuZE9wZW5UYWIoJ21hdHRpanNpbnYnLCAnL2h1bWFuLXByYWN0aWNlcycpfT4gTWF0dGlqcyBCdWxjYWVuIDwvYT4sIHdlIGRlY2lkZWQgdG8gbW9kaWZ5IG91ciBwZWdSTkEgYnkgYWRkaW5nIGEgc3RlbSBsb29wIHRvIGVuaGFuY2UgaXRzIHN0YWJpbGl0eS4gU3BlY2lmaWNhbGx5LCBNYXR0aWpzIHJlY29tbWVuZGVkIHVzaW5nIHRoZSB0ZXZvcHJlUTEgc3RlbSBsb29wLCBhIHNtYWxsIHN0cnVjdHVyYWwgbW90aWYgdGhhdCBpbmNyZWFzZXMgdGhlIHBlZ1JOQSdzIHJlc2lzdGFuY2UgdG8gUk5hc2VzLiBUaGlzIHN0ZW0gbG9vcCB3YXMgYWRkZWQgdG8gdGhlIDMnIGVuZCBvZiB0aGUgcGVnUk5BLCBwb3NpdGlvbmVkIGFmdGVyIHRoZSBQQlMuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZGl0aW9uYWxseSwgZHVyaW5nIGEgd2ViaW5hciB3aXRoIEIuIFNjLiBKb3JkYW4gRG9tYW48VGFiU2Nyb2xsTGluayB0YWI9XCJ0YWItcGVncm5hXCIgbnVtPVwiMjBcIiBzY3JvbGxJZD1cImRlc2MtMjBcIi8+LCB3ZSBsZWFybmVkIHRoYXQgaXQgaXMgaW1wb3J0YW50IHRvIHRlc3QgdmFyaW91cyBsZW5ndGhzIG9mIFBCUyBhbmQgUlRULCBhcyB0aGVyZSBpcyBubyB1bml2ZXJzYWxseSBvcHRpbWFsIGxlbmd0aCBmb3IgYWxsIGFwcGxpY2F0aW9ucy4gSW5zdGVhZCwgdGhlIGlkZWFsIGxlbmd0aHMgYXJlIGFwcGxpY2F0aW9uIHNwZWNpZmljLiBGb2xsb3dpbmcgdGhpcyBhZHZpY2UsIHdlIGRlc2lnbmVkIHNpeCBkaWZmZXJlbnQgcGVnUk5BIHZhcmlhbnRzIHdpdGggY29tYmluYXRpb25zIG9mIHR3byBkaWZmZXJlbnQgUEJTIGxlbmd0aHMgKDE2IGFuZCAxNyBudWNsZW90aWRlcykgYW5kIHRocmVlIGRpZmZlcmVudCBSVFQgbGVuZ3RocyAoMjcsIDMwLCBhbmQgMzMgbnVjbGVvdGlkZXMpLlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBXZSBjaG9zZSB0aGUgUEJTIGxlbmd0aHMgb2YgMTYgYW5kIDE3IG51Y2xlb3RpZGVzIGJhc2VkIG9uIGFuIGVhcmxpZXIgcmVjb21tZW5kYXRpb24gZnJvbSBKYW4tUGhpbGxpcHAgR2VyaGFyZCwgd2hvIGVtcGhhc2lzZWQgdGhhdCB0aGUgYW5uZWFsaW5nIHRlbXBlcmF0dXJlIG9mIHRoZSBQQlMgc2hvdWxkIG1hdGNoIHRoZSBlbnZpcm9ubWVudGFsIGNvbmRpdGlvbnMgcmVsZXZhbnQgdG8gdGhlIGludGVuZGVkIGFwcGxpY2F0aW9uLiBJbiBvdXIgY2FzZSwgc2luY2Ugd2UgYXJlIGV4cGxvcmluZyBhIHBvdGVudGlhbCB0aGVyYXBldXRpYyBhcHByb2FjaCwgaXQgaXMgaW1wb3J0YW50IHRoYXQgdGhlIGFubmVhbGluZyB0ZW1wZXJhdHVyZSBvZiB0aGUgUEJTIGlzIGNsb3NlIHRvIHRoZSBib2R5IHRlbXBlcmF0dXJlIG9mIDM3IFx1MDBCMEMsIHdoaWNoIGlzIHRoZSBjYXNlIGZvciB0aGVzZSBsZW5ndGhzLiBUaGUgUlRUIGxlbmd0aHMgd2VyZSBzZWxlY3RlZCBiYXNlZCBvbiBzdWdnZXN0aW9ucyBmcm9tIHRoZSBwZWdGaW5kZXIgc29mdHdhcmUuIEFzIHdpdGggb3VyIHByZXZpb3VzIGluc2lnaHRzLCB3ZSBkZXNpZ25lZCBhbGwgc2l4IHZhcmlhbnRzIGJvdGggd2l0aCBhbmQgd2l0aG91dCBzaWxlbnQgZWRpdHMgZm9yIGEgd2lkZXIgY29tcGFyaXNvbiBvZiB0aGUgc2lsZW50IGVkaXRzLCBtYWtpbmcgaXQgMTIgdmFyaWFudHMgaW4gdG90YWwuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJCdWlsZFwiIGlkPVwiYnVpbGQtaGVhZFwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIE9uY2Ugd2UgaGFkIGRlc2lnbmVkIHRoZXNlIHZhcmlhbnRzLCB3ZSBvcmRlcmVkIHRoZW0gaW4gdGhlaXIgaW5kaXZpZHVhbCBjb21wb25lbnRzIGFuZCBjbG9uZWQgdGhlbSB0b2dldGhlciB1c2luZyBHb2xkZW4gR2F0ZSBjbG9uaW5nLiBUaGlzIHdhcyBhIG11Y2ggbW9yZSByZXNvdXJjZS1lZmZpY2llbnQgYW5kIHN1c3RhaW5hYmxlIG9wdGlvbiwgYXMgb25seSB0aGUgUEJTIGFuZC9vciBSVFQgbGVuZ3RocyBkaWZmZXJlZC4gVGh1cywgdGhlcmUgd2FzIGEgY29uc3RhbnQgcGVnUk5BIHBhcnQsIGNvbnNpc3Rpbmcgb2Ygc3BhY2VyIGFuZCBzY2FmZm9sZCwgYW5kIGEgdmFyaWFibGUgcGFydCwgY29uc2lzdGluZyBvZiBQQlMsIFJUVCBhbmQgc3RlbSBsb29wLiBXZSB0aGVuIGNsb25lZCB0aGVzZSB2YXJpYW50cyBpbnRvIHRoZSBwVTYtR0ctcGVnUk5BLWFjY2VwdG9yIHBsYXNtaWQgYW5kIGNvbmZpcm1lZCB0aGUgY29ycmVjdCBvcmllbnRhdGlvbiBhbmQgc3VjY2Vzc2Z1bCBjbG9uaW5nIG9mIGFsbCBjb25zdHJ1Y3RzIHRocm91Z2ggc2NyZWVuaW5nLlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiVGVzdFwiIGlkPVwidGVzdC1oZWFkXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgV2UgdGVzdGVkIHRoZXNlIHR3ZWx2ZSBwZWdSTkEgdmFyaWFudHMgYWdhaW5zdCBlYWNoIG90aGVyIGFuZCB0aGUgdHdvIHByZXZpb3VzIHZhcmlhbnRzIHdpdGhvdXQgdGhlIHRyZXZvcHJlUTEgc3RlbSBsb29wLCBhZ2FpbiB3aXRoaW4gdGhlIFBFMiBzeXN0ZW0sIHVzaW5nIG91ciByZXBvcnRlciBzeXN0ZW0sIHRvIGFzc2VzcyB0aGVpciBlZGl0aW5nIGVmZmljaWVuY3kuIFRoZSBleHBlcmltZW50YWwgc2V0dXAgd2FzIHNpbWlsYXIgdG8gdGhlIGN5Y2xlIGJlZm9yZS5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8SDQgdGV4dD1cIkxlYXJuXCIgaWQ9XCJsZWFybi1oZWFkXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgRnJvbSB0aGlzIHJvdW5kIG9mIHRlc3RpbmcsIHdlIGZvdW5kIG91dCB0aGF0IG91ciBlbmdpbmVlcmVkIHBlZ1JOQSB2YXJpYW50cyBwZWdSTkEwNCwgMDUsIDA3IGFuZCAwOCBleGhpYml0ZWQgdGhlIGhpZ2hlc3QgbGV2ZWxzIG9mIGVmZmljaWVuY3kgYW5kIHN0YWJpbGl0eSwgd2hpbGUgdGhlIHBlZ1JOQTEyIHNob3dlZCB0aGUgbG93ZXN0IGxldmVsIG9mIGVkaXRpbmcgZWZmaWNpZW5jeS4gVGhlcmVmb3JlLCB3ZSByZWFzb25lZCB0byBnbyB3aXRoIHRoZXNlIGZvdXIgcGVnUk5BIHZhcmlhbnRzIGFzIHdlbGwgYXMgcGVnUk5BMTIgYXMgYSBuZWdhdGl2ZSBleGFtcGxlIGZvciBmb2xsb3ctdXAgZXhwZXJpbWVudHMuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJib3hcIiA+XHJcbiAgICAgICAgICAgICAgICAgICAgIDxwIGlkPVwicGVnM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8SDMgdGV4dD1cIkFwcGxpY2F0aW9uIGx1bmcgZXBpdGhlbGlhbCBjZWxsIGxpbmVzXCIgaWQ9XCJwZWczaGVhZFwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIEhFSyBjZWxscyBhcmUgYW4gZWFzeSB0byBoYW5kbGUgYW5kIGVhc3kgdG8gZWRpdCBjZWxsIG1vZGVsLiBIb3dldmVyLCB0aGV5IGFyZSBub3QgcGFydGljdWxhcmx5IHNpbWlsYXIgdG8gdGhlIGNlbGxzIHRoYXQgd291bGQgYWN0dWFsbHkgYmUgdXNlZnVsIHRhcmdldHMgZm9yIGEgZ2VuZSB0aGVyYXB5LiBJbiBvdXIgY29udGV4dCwgdHdvIGtleSBkaWZmZXJlbmNlcyBhcmUgZXNwZWNpYWxseSBncmF2ZTogSEVLIGNlbGxzLCBhcyBtZW50aW9uZWQgYWJvdmUsIGFyZSBpbXBhaXJlZCBpbiBtaXNtYXRjaCByZXBhaXIsIG1ha2luZyB0aGVtIGVhc2llciB0byBlZGl0LCBhbmQgdGhleSBkbyBub3QgbmF0dXJhbGx5IGV4cHJlc3MgQ0ZUUi5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8SDQgdGV4dD1cIkRlc2lnblwiIGlkPVwiZGVzaWduLWhlYWRcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBJbiB0aGlzIHRoaXJkIGl0ZXJhdGlvbiwgd2Ugd2FudGVkIHRvIGludmVzdGlnYXRlZSB0aGUgYXBwbGljYWJpbGl0eSBvZiBhIHBlZ1JOQSBvcHRpbWl6ZWQgaW4gYSBtb2RlbCBjbG9zZXIgdG8gdGhlcmFwZXV0aWMgYXBwbGljYXRpb24uIEluIG91ciBjYXNlIHdlIHVzZWQgaW4gPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VBbmRTY3JvbGwgKCdDZWxsIEN1bHR1cmUySCcsICcvbWF0ZXJpYWxzLW1ldGhvZHMnKX0+Q0ZCRTQxby0gZXBpdGhlbGlhbCBjZWxscyBsaW5lczwvYT4gaG9tb3p5Z291cyBmb3IgdGhlIENGVFIgRjUwOGRlbCBtdXRhdGlvbi5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8SDQgdGV4dD1cIkJ1aWxkXCIgaWQ9XCJidWlsZC1oZWFkXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgRm9yIHRoaXMgdGVzdCwgd2UgdXNlZCBvbmUgb2YgdGhlIHBlZ1JOQXMgKHBlZ1JOQTA0KSB0aGF0IHNob3dlZCB0aGUgaGlnaGVzdCBlZmZpY2llbmNpZXMgaW4gcHJldmlvdXMgb3B0aW1pemF0aW9uIHN0ZXBzLiBTaW5jZSB3ZSBleHBlY3RlZCBvbmx5IGxvdyBlZGl0aW5nIGVmZmljaWVuY2llcyBjb21wYXJlZCB0byBIRUsgY2VsbHMgZm9yIHJlYXNvbnMgbWVudGlvbmVkIGFib3ZlLCB3ZSB1c2VkIHRoZSA8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZVdpdGhUYWJBbmRTY3JvbGwgKHtzY3JvbGxUb0lkOiAncGUyJywgcGF0aDogJy9lbmdpbmVlcmluZycsIHRhYklkOiAncGUtc3lzdGVtcycgfSl9PlBFNmMgcHJpbWUgZWRpdG9yPC9hPi4gSXQgaGFkIHByb3ZlbiB0byBiZSBtb3N0IGVmZmVjdGl2ZSBpbiBIRUsgY2VsbHMgaW4gb3VyIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlc0FuZE9wZW5UYWIoJ3BlLXN5c3RlbXMnLCAnL2VuZ2luZWVyaW5nJyl9PiBwZSBzeXN0ZW1zIGVuZ2luZWVyaW5nIGN5Y2xlIDwvYT4gYW5kIHNob3VsZCBlbnN1cmUgZGV0ZWN0YWJpbGl0eSBvZiBwb3NzaWJsZSBlZGl0aW5nLlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiVGVzdFwiIGlkPVwidGVzdC1oZWFkXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgV2UgY28tdHJhbnNmZWN0ZWQgdGhlIENGQkU0MW8tIHdpdGggb3VyIG1vZGlmaWVkIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlc0FuZE9wZW5UYWIoJ3JlcG9ydGVyJywgJy9lbmdpbmVlcmluZycpfT4gcmVwb3J0ZXIgc3lzdGVtIDwvYT4sIHRoZSBwbGFzbWlkIGV4cHJlc3NpbmcgcGVnUk5BMDQgYXMgd2VsbCBhcyBwQ01WLVBFNmMuIEFzIGEgcmVzdWx0LCB3ZSBvYnNlcnZlZCBmbHVvcmVzY2VuY2UsIGluZGljYXRpbmcgc3VjY2Vzc2Z1bCBlZGl0aW5nIG9mIHRoZSByZXBvcnRlciBwbGFzbWlkLiBUaGUgbmVnYXRpdmUgY29udHJvbHMgdHJhbnNmZWN0ZWQgd2l0aCBvbmx5IG9uZSBvZiB0aGUgcGxhc21pZHMgZWFjaCBzaG93ZWQgbm8gZmx1b3Jlc2NlbmNlLCByb3V0aW5nIG91dCBvdGhlciBmYWN0b3JzLlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiTGVhcm5cIiBpZD1cImxlYXJuLWhlYWRcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBUaGFua3MgdG8gdGhpcyBleHBlcmltZW50IHdlIGtuZXcsIHRoYXQgb3VyIHBlZ1JOQXMgd29yayBub3Qgb25seSBpbiBIRUssIGJ1dCBhbHNvIGluIGVwaXRoZWxpYWwgY2VsbHMgdGhhdCBleHByZXNzIENGVFIgRjUwOGRlbC5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImJveFwiID5cclxuICAgICAgICAgICAgICAgICAgICAgPHAgaWQ9XCJwZWc0XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxIMyB0ZXh0PVwiQXBwbGljYXRpb24gdG8gZ2Vub21pYyBDRlRSIHRhcmdldGluZ1wiIGlkPVwicGVnNGhlYWRcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBJbiB0aGlzIGZvdXJ0aCBpdGVyYXRpb24sIHdlIGFpbWVkIHRvIHRyYW5zZmVyIG91ciBmaW5kaW5ncyBpbiBvcHRpbWl6aW5nIHRoZSBwZWdSTkFzLCBnZW5lcmF0ZWQgaW4gcHJldmlvdXMgaXRlcmF0aW9ucywgdG8gdGhlIGdlbm9taWMgQ0ZUUiBjb250ZXh0LiBUbyB0aGlzIGVuZCB3ZSBtb2RpZmllZCBvdXIgcGVnUk5BcyB0byBiZSB1c2VkIGluIHRoZSBDRlRSIGdlbmUgZWRpdGluZyBwcm9jZXNzLlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiRGVzaWduXCIgaWQ9XCJkZXNpZ24taGVhZFwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFVzaW5nIHRoZSBwZWdGaW5kZXIgc29mdHdhcmUgYW5kIG91ciBhY3F1aXJlZCBleHBlcnRpc2UgaW4gY3JlYXRpbmcgcGVnUk5Bcywgd2UgZGVzaWduZWQgdGhlIG5ldyB2YXJpYW50cyBzcGVjaWZpY2FsbHkgdGFpbG9yZWQgdG8gdGhlIGdlbm9taWMgQ0ZUUiByZWdpb24uIFRoZXNlIHBlZ1JOQXMgaW5jbHVkZWQgdGhlIHNhbWUgY29tYmluYXRpb25zIG9mIFBCUyBhbmQgUlRUIGxlbmd0aHMgYXMgdGhlIG9uZXMgd2UgY3JlYXRlZCBmb3Igb3VyIHJlcG9ydGVyIHBsYXNtaWQuIE5vdGFibHksIHNjYWZmb2xkLCBzcGFjZXIsIFBCUyBhbmQgYSBwYXJ0IG9mIHRoZSBSVFQgZGlkIG5vdCBoYXZlIHRvIGJlIGNoYW5nZWQgZnJvbSB0aGUgcmVwb3J0ZXIgdGFyZ2V0aW5nIHRvIGdlbm9tZSB0YXJnZXRpbmcgcGVnUk5Bcy4gT2YgdGhlIGNyZWF0ZWQgcGVnUk5Bcywgd2Ugd2FudGVkIHRvIGZvY3VzIG9uIHRlc3RpbmcgdGhlIG1vc3QgZWZmZWN0aXZlIGZvdXIgdmFyaWFudHMgZm91bmQgaW4gdGhlIHByZXZpb3VzIGN5Y2xlcyBhbmQgYWxzbyBhIHZhcmlhbnQgZGVzaWduYXRlZCBjb21wYXJhdGl2ZWx5IGluZWZmZWN0aXZlIHRvIHRlc3QgZm9yIGNvbnNpc3RlbmN5IG9mIG91ciByZXBvcnRlciBzeXN0ZW0uXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJCdWlsZFwiIGlkPVwiYnVpbGQtaGVhZFwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFRoZSBuZXdseSBkZXNpZ25lZCBwZWdSTkFzIHdlcmUgb3JkZXJlZCBhcyBzZXBhcmF0ZSBjb21wb25lbnRzLCBpZGVudGljYWwgdG8gdGhlIHByb2Nlc3MgdXNlZCBmb3IgdGhlIHBlZ1JOQXMgdGFyZ2V0aW5nIHRoZSByZXBvcnRlciBzeXN0ZW0uIEVhY2ggUk5BIGhhZCBib3RoIGEgY29uc3RhbnQgYW5kIHZhcmlhYmxlIHJlZ2lvbiwgd2hpY2ggd2UgYXNzZW1ibGVkIHVzaW5nIEdvbGRlbiBHYXRlIGNsb25pbmcuIEFmdGVyd2FyZHMgd2UgY29uZmlybWVkIHRoZSBjb3JyZWN0bmVzcyBhbmQgY29tcGxldGVuZXNzIG9mIHRoZSBjbG9uaW5nIGludG8gdGhlIHBVNi1wZWctR0ctYWNjZXB0b3IgcGxhc21pZCB0aHJvdWdoIGNvbG9ueSBQQ1Igc2NyZWVuaW5nLiBVbmZvcnR1bmF0ZWx5IHRvIHRoaXMgcG9pbnQsIHdlIHdlcmUgbm90IGFibGUgdG8gcHJvZHVjZSBwb3NpdGl2ZSBjbG9uZXMuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJUZXN0XCIgaWQ9XCJ0ZXN0LWhlYWRcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBUaGUgbmV4dCBzdGVwIGlzIHRvIHRlc3QgdGhlIGNvcnJlY3Rpb24gb2YgQ0ZUUiBGNTA4ZGVsIHVzaW5nIHRoZXNlIHBlZ1JOQXMgaW4gdGhlIENGQkU0MW8tIGVwaXRoZWxpYWwgY2VsbHMuIEFkZGl0aW9uYWxseSwgd2UgYWxzbyB3YW50IHRvIHRlc3QgdGhlIHBlZ1JOQXMgaW4gcHJpbWFyeSBjZWxscyBkZXJpdmVkIGZyb20gZnJpZW5kIG9mIHRoZSB0ZWFtIGFuZCBDeXN0aWMgRmlicm9zaXMgcGF0aWVudCA8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZXNBbmRPcGVuVGFiKCdtYXhmaXJzdCcsICcvaHVtYW4tcHJhY3RpY2VzJyl9PiBNYXggPC9hPiwgdGVzdGluZyB3aGV0aGVyIG91ciBhcHByb2FjaGVzIGFyZSBhcHBsaWNhYmxlIG5vdCBvbmx5IGluIG1vZGVsIHN5c3RlbXMsIGJ1dCBhbHNvIHdvcmsgaW4gcGF0aWVudCBjZWxscy4gVG8gdmFsaWRhdGUgdGhlIGVkaXRpbmcgZWZmaWNpZW5jeSBvZiBvdXIgZGVzaWduZWQgcGVnUk5BcyB3ZXJlIGdvaW5nIHRvIGNvLXRyYW5zZmVjdCBhIHBsYXNtaWQgY2FycnlpbmcgYW4gZVlGUCB2YXJpYW50IHdoaWNoIGlzIHNlbnNpdGl2ZSB0byBjaGxvcmlkZSBhbmQgaW9kaWRlIGlvbiBjb25jZW50cmF0aW9uczxUYWJTY3JvbGxMaW5rIHRhYj1cInRhYi1wZWdybmFcIiBudW09XCIyMVwiIHNjcm9sbElkPVwiZGVzYy0yMVwiLz48VGFiU2Nyb2xsTGluayB0YWI9XCJ0YWItcGVncm5hXCIgbnVtPVwiMjJcIiBzY3JvbGxJZD1cImRlc2MtMjJcIi8+LiBUaGUgaW50ZW5zaXR5IG9mIHRoZSBmbHVvcmVzY2VuY2UgY29ycmVsYXRlcyB3aXRoIHRoZXNlIGlvbiBjb25jZW50cmF0aW9ucywgd2hpY2ggaW4gdHVybiByZWZsZWN0cyB0aGUgZnVuY3Rpb25hbGl0eSBvZiB0aGUgQ0ZUUiBjaGFubmVsLiBUaGlzIGVuYWJsZXMgdXMgdG8gZXZhbHVhdGUgdGhlIGVkaXRpbmcgZWZmaWNpZW5jeSBvZiB0aGUgZGlmZmVyZW50IHBlZ1JOQSB2YXJpYW50cyBvbiBhIHBoZW5vdHlwaWMgbGV2ZWwuIEFmdGVyIDcyIGhvdXJzLCB3ZSBhcmUgZ29pbmcgdG8gcGVyZm9ybSBhIGZpbmFsIGFuYWx5c2lzIHVzaW5nIGZsb3cgY3l0b21ldHJ5IHRvIHF1YW50aWZ5IHRoZSByZXN1bHRzIGFuZCBkZXRlcm1pbmUgdGhlIGVkaXRpbmcgZWZmaWNpZW5jeSBvZiBlYWNoIHBlZ1JOQS4gU2Vjb25kbHksIHdlIHdhbnRlZCB0byBkZXRlY3QgdGhlIGVkaXRpbmcgb24gYSBnZW5vbWljIGxldmVsIGJ5IGZhY2lsaXRhdGluZyBhIHFQQ1Igd2l0aCBhIHByaW1lciBzcGVjaWZpYyBvbmx5IHRvIHRoZSBjb3JyZWN0ZWQgRjUwOGRlbCBsb2N1cy5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8SDQgdGV4dD1cIkxlYXJuXCIgaWQ9XCJsZWFybi1oZWFkXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgV2l0aCB0aGlzIGV4cGVyaW1lbnQgd2UgaG9wZSB0byBhY2hpZXZlIHR3byB0aGluZ3M6IEZpcnN0bHksIHdlIHdhbnQgdG8gZXhhbWluZSB3aGV0aGVyIG9wdGltaXphdGlvbnMgb2YgcGVnUk5BcyBkZXNpZ25lZCBmb3Igb3VyIHJlcG9ydGVyIHN5c3RlbSBhY3R1YWxseSB0cmFuc2ZlciB0byB0aGUgZ2Vub21pYyBDRlRSIHRhcmdldGluZy4gU2Vjb25kbHkgYW5kIG1vc3QgaW1wb3J0YW50bHksIHdlIHdhbnQgdG8gZmluZCBvdXQgd2hldGhlciB3ZSBhY3R1YWxseSBjcmVhdGVkIGFuIGVmZmVjdGl2ZSBnZW5lIGVkaXRpbmcgc3RyYXRlZ3kgZm9yIHRoZSBnZW5vbWljIGNvbnRleHQgb2YgQ0ZUUiwgdGhlcmVieSBwcm92aWRpbmcgYSBmb3VuZGF0aW9uIGZvciBhIGZ1dHVyZSBnZW5lIHRoZXJhcHkgd2l0aCBoaWdoIGVmZmljaWVuY3kgYW5kIHByZWNpc2lvbiB3aGVuIHVzZWQgd2l0aCB0aGUgcmlnaHQgcHJpbWUgZWRpdG9yLlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiYm94XCIgPlxyXG4gICAgICAgICAgICAgICAgICAgICA8cCBpZD1cInBlZzVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPEgzIHRleHQ9XCJPdXRsb29rXCIgaWQ9XCJwZWc1aGVhZFwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIEluIHRoaXMgZmluYWwgaXRlcmF0aW9uLCB3ZSBmb2N1cyBvbiB0aGUgb3V0bG9vayBmb3IgZnV0dXJlIG1vZGlmaWNhdGlvbnMgYW5kIG9wdGltaXphdGlvbnMgb2Ygb3VyIHBlZ1JOQSBkZXNpZ24uIFRoZXNlIGNvbmNlcHRzIGFyZSBtZWFudCB0byBmdXJ0aGVyIGltcHJvdmUgYm90aCB0aGUgc3RhYmlsaXR5IGFuZCBlZGl0aW5nIGVmZmljaWVuY3kgdGhyb3VnaCBhZGRpdGlvbmFsIHJlc2VhcmNoIGFuZCB0aGUgaW1wbGVtZW50YXRpb24gb2YgbmV3IGRlc2lnbiBzdHJhdGVnaWVzLlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiRGVzaWduXCIgaWQ9XCJkZXNpZ24taGVhZFwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIEFzIHdlIGNvbnRpbnVlZCB0byByZWZpbmUgb3VyIGFwcHJvYWNoLCBmdXJ0aGVyIGxpdGVyYXR1cmUgcmVzZWFyY2ggd2FzIGNvbmR1Y3RlZCwgYW5kIG5ldyBkZXNpZ24gaWRlYXMgY29uc2lkZXJlZC4gVGhlIG92ZXJhcmNoaW5nIGdvYWwgcmVtYWluZWQgdG8gZW5oYW5jZSBib3RoIHRoZSBzdGFiaWxpdHkgYW5kIGVkaXRpbmcgZWZmaWNpZW5jeSBvZiB0aGUgcGVnUk5Bcy4gT25lIGNvbmNlcHQgd2UgYXJlIGFscmVhZHkgZXhwbG9yaW5nIGludm9sdmVzIHRoZSBpbmNvcnBvcmF0aW9uIG9mIDNcdTIwMTkgYW5kIDVcdTIwMTkgVVRScyAoVW50cmFuc2xhdGVkIFJlZ2lvbnMpPFRhYlNjcm9sbExpbmsgdGFiPVwidGFiLXBlZ3JuYVwiIG51bT1cIjIzXCIgc2Nyb2xsSWQ9XCJkZXNjLTIzXCIvPi4gVGhlc2UgZWxlbWVudHMsIHR5cGljYWxseSBmb3VuZCBpbiBtUk5BLCBjb3VsZCBiZSBhZGRlZCB0byB0aGUgcGVnUk5BIHRvIGluY3JlYXNlIGl0cyBzdGFiaWxpdHkuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD4gIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD4gICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgQW5vdGhlciBwcm9taXNpbmcgaWRlYSBpcyB0aGUgdXNlIG9mIGNpcmN1bGFyIFJOQSAoY2lyY1JOQSk8VGFiU2Nyb2xsTGluayB0YWI9XCJ0YWItcGVncm5hXCIgbnVtPVwiMjRcIiBzY3JvbGxJZD1cImRlc2MtMjRcIi8+LCB3aGljaCBjb3VsZCBwcm92aWRlIGFkZGl0aW9uYWwgc3RhYmlsaXR5IGJ5IG1haW50YWluaW5nIHRoZSBjbG9zZWQtbG9vcCBzdHJ1Y3R1cmUgb2YgdGhlIHBlZ1JOQS4gVGhpcyB3b3VsZCBwcmV2ZW50IGRlZ3JhZGF0aW9uIGFuZCBpbmNyZWFzZSB0aGUgbG9uZ2V2aXR5IG9mIHRoZSBwZWdSTkEgaW4gdGhlIGNlbGwuIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBBZGRpdGlvbmFsbHksIGZ1cnRoZXIgbnVjbGVvdGlkZSBtb2RpZmljYXRpb25zIGNvdWxkIGJlIGV4cGxvcmVkLCBzdWNoIGFzIGV4cGVyaW1lbnRpbmcgd2l0aCBhbHRlcm5hdGl2ZSBzaWxlbnQgZWRpdHMgdG8gc2VlIGlmIHRoaXMgbGVhZHMgdG8gaW1wcm92ZWQgZWRpdGluZyBlZmZpY2llbmN5LiBXZSBhbHNvIG51Y2xlb3RpZGUgc3Vic3RpdHV0aW9ucyBpbiB0aGUgc2NhZmZvbGQgcmVnaW9uIHRvIGVuaGFuY2UgUk5BLWJpbmRpbmcgYWZmaW5pdHkgdG8gdGhlIHByb3RlaW4gY29tcGxleCBjb3VsZCBiZSBvZiB1c2UuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJCdWlsZFwiIGlkPVwiYnVpbGQtaGVhZFwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFRvIGltcGxlbWVudCB0aGVzZSBuZXcgZGVzaWduIGZlYXR1cmVzLCB0aGUgaW5kaXZpZHVhbCBjb21wb25lbnRzLCBzdWNoIGFzIFVUUnMsIHdvdWxkIG5lZWQgdG8gYmUgY2xvbmVkIGludG8gdGhlIGV4aXN0aW5nIHBlZ1JOQXMuIElmIHdlIHB1cnN1ZSBhbHRlcm5hdGl2ZSBzaWxlbnQgZWRpdHMsIHRoZSBwZWdSTkEgc2VxdWVuY2VzIHdvdWxkIG5lZWQgdG8gYmUgcmVkZXNpZ25lZCwgb3JkZXJlZCwgYW5kIHJlLWNsb25lZC4gVGhlIGNpcmN1bGFyIFJOQSB3b3VsZCBhbHNvIHJlcXVpcmUgYSBuZXcgYXNzZW1ibHkgbWV0aG9kIHRvIGFjaGlldmUgdGhlIGRlc2lyZWQgc3RydWN0dXJlLiBIb3dldmVyLCB0aGUgZnVuZGFtZW50YWwgd29ya2Zsb3cgd291bGQgcmVtYWluIGNvbnNpc3RlbnQgd2l0aCB0aGUgcHJvY2Vzc2VzIHVzZWQgaW4gcHJldmlvdXMgaXRlcmF0aW9ucy5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8SDQgdGV4dD1cIlRlc3RcIiBpZD1cInRlc3QtaGVhZFwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFRvIG1haW50YWluIGNvbnNpc3RlbmN5IGFuZCBjb21wYXJhYmlsaXR5LCB0aGUgc2FtZSB0ZXN0aW5nIHByb3RvY29scyB1c2VkIGZvciB0aGUgcHJldmlvdXMgcGVnUk5BIHNjcmVlbmluZyB3b3VsZCBiZSBhcHBsaWVkLiBUaGlzIGluY2x1ZGVzIGNvLXRyYW5zZmVjdGlvbiBpbiB0aGUgYXBwcm9wcmlhdGUgY2VsbCBsaW5lcywgZmx1b3Jlc2NlbmNlLWJhc2VkIHJlYWRvdXRzIGZvciBlZGl0aW5nIGVmZmljaWVuY3ksIGFuZCBmbG93IGN5dG9tZXRyeSBhbmFseXNpcy4gQnkga2VlcGluZyB0aGUgZXhwZXJpbWVudGFsIGNvbmRpdGlvbnMgdGhlIHNhbWUsIHdlIGNhbiBlbnN1cmUgdGhhdCB0aGUgZWZmZWN0cyBvZiB0aGUgbmV3IG1vZGlmaWNhdGlvbnMgY2FuIGJlIGFjY3VyYXRlbHkgYXNzZXNzZWQgYW5kIGNvbXBhcmVkIHRvIHByZXZpb3VzIHJlc3VsdHMuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJMZWFyblwiIGlkPVwibGVhcm4taGVhZFwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIEZyb20gdGhlc2UgdGVzdHMsIHdlIHdvdWxkIGFpbSB0byBkZXJpdmUgbmV3IGluc2lnaHRzIG5vdCBvbmx5IHNwZWNpZmljIHRvIG91ciBwYXJ0aWN1bGFyIGNvbnRleHQgYnV0IGFsc28gZm9yIHBlZ1JOQSBkZXNpZ24gYXMgYSB3aG9sZS4gVGhlc2UgZnV0dXJlIG1vZGlmaWNhdGlvbnMgY291bGQgYWxzbyB5aWVsZCB2YWx1YWJsZSBpbmZvcm1hdGlvbiBvbiBob3cgdG8gZnVydGhlciBpbXByb3ZlIHRoZSBvdmVyYWxsIGVmZmljaWVuY3kgYW5kIHN0YWJpbGl0eSBvZiBwZWdSTkFzLCBjb250cmlidXRpbmcgdG8gdGhlIGJyb2FkZXIgZmllbGQgb2YgZ2VuZSBlZGl0aW5nLlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgIDxTZWN0aW9uIHRpdGxlPVwiUmVmZXJlbmNlc1wiIGlkPVwicmVmZXJlbmNlc1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICA8RW5nUGVnc291cmNlcy8+XHJcbiAgICAgICAgICAgICAgICAgIDwvU2VjdGlvbj5cclxuICAgICAgICAgICAgICAgICAgPGJyLz5cclxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3cgXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwibGVmdFwiPjxCdXR0b25PbmVFbmdpbmVlcmluZyBsYWJlbD1cIlByZXZpb3VzXCIgb3Blbj1cInBlLXN5c3RlbXNcIiBzY3JvbGxUb0lkPVwicGUtc3lzdGVtcy1oZWFkZXJcIi8+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbCBidXR0b24tbGVmdFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJpZ2h0XCI+PEJ1dHRvbk9uZUVuZ2luZWVyaW5nIGxhYmVsPVwiTmV4dFwiIG9wZW49XCJuaWNrYXNlXCIgc2Nyb2xsVG9JZD1cIm5pY2thc2UtaGVhZGVyXCIvPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgIDwvc2VjdGlvbj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZW5naW5uZWVyaW5ndGFiXCIgaWQ9XCJ0YWItbmlja2FzZVwiIHN0eWxlPXt7ZGlzcGxheTogXCJub25lXCJ9fT5cclxuICAgICAgICAgICAgPHNlY3Rpb24gaWQ9XCJOaWNrYXNlIHNlY1wiID5cclxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJlbmctYm94IGJveFwiID5cclxuICAgICAgICAgICAgICAgICAgICAgPEgyIGlkPVwibmlja2FzZS1oZWFkZXJcIiB0ZXh0PVwiQWx0ZXJuYXRpdmUgTmlja2FzZXNcIj48L0gyPlxyXG4gICAgICAgICAgICAgICAgICAgICA8cD5UaGUgQ2FzOSBuaWNrYXNlIGlzIHRoZSBrZXkgY29tcG9uZW50IG9mIG1vc3QgY3VycmVudCBwcmltZSBlZGl0aW5nIHN5c3RlbS4gSXQgaXMgbmVlZGVkIGZvciBsb2NhbGl6aW5nIHRoZSBnZW5vbWljIHRhcmdldCBhbmQgY3V0dGluZyBhIHNpbmdsZSBETkEgc3RyYW5kLiBUaGUgY29tcGxleCdzIHNpemUgYW5kIFJOQSBzdGFiaWxpdHkgaXNzdWVzIGxpbWl0IGl0cyBlZmZpY2llbmN5LiBUbyBvdmVyY29tZSB0aGVzZSBjaGFsbGVuZ2VzLCB3ZSBleHBsb3JlZCBzbWFsbGVyIGVuZG9udWNsZWFzZXMgbGlrZSBDYXNYIGFuZCBGYW56b3IsIHdoaWNoIG5vdCBvbmx5IHJlZHVjZSB0aGUgc2l6ZSBvZiB0aGUgY29tcGxleCBidXQgYWxzbyBvZmZlciBzdHJ1Y3R1cmFsIGFkdmFudGFnZXMgc3VjaCBhcyBhIHJldmVyc2VkIGd1aWRlIFJOQSBhcmNoaXRlY3R1cmUuIFdlIHRoZW9yaXplIHRoYXQgdGhpcyB1bmlxdWUgY29uZmlndXJhdGlvbiBwcm90ZWN0cyB0aGUgUk5BIGZyb20gZGVncmFkYXRpb24gYW5kIGltcHJvdmVzIGVkaXRpbmcgcHJlY2lzaW9uIGJ5IHJlZHVjaW5nIHRoZSByaXNrIG9mIHVud2FudGVkIGdlbm9taWMgYWx0ZXJhdGlvbnMgYnkgc2NhZmZvbGQgcmVhZHRocm91Z2gsIG1ha2luZyBDYXNYIGFuZCBTcHVGejEgcHJvbWlzaW5nIGFsdGVybmF0aXZlcyB0byBDYXM5LWJhc2VkIHN5c3RlbXMgZm9yIHByaW1lIGVkaXRpbmcuPC9wPlxyXG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJib3hcIiA+XHJcbiAgICAgICAgICAgICAgICAgICAgIDxwIGlkPVwibmljMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8SDMgdGV4dD1cIlNwdUZ6MSBaaW5rIEZpbmdlciBNdXRhdGlvblwiIGlkPVwibmljMWhlYWRcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiRGVzaWduXCIgaWQ9XCJ0ZXh0XCIvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgSW4gb3VyIHF1ZXN0IHRvIGlkZW50aWZ5IHNtYWxsZXIgZW5kb251Y2xlYXNlcyBzdWl0YWJsZSBmb3IgY3JlYXRpbmcgbmlja2FzZXMsIHdlIGZvY3VzZWQgb24gYSBuZXdseSBjaGFyYWN0ZXJpemVkIGZhbWlseSBvZiBldWthcnlvdGljIGVuZG9udWNsZWFzZXMga25vd24gYXMgRmFuem9yIHByb3RlaW5zIGZpcnN0IGRlc2NyaWJlZCBpbiBKdW5lIDIwMjM8VGFiU2Nyb2xsTGluayB0YWI9XCJ0YWItbmlja2FzZVwiIG51bT1cIjI1XCIgc2Nyb2xsSWQ9XCJkZXNjLTI1XCIvPiwgd2l0aCBTcHVGejEgKEZpZy4gMSkgYmVpbmcgYSBzdGFuZG91dCBjYW5kaWRhdGUgZHVlIHRvIGl0cyBzbWFsbGVyIHNpemUgY29tcGFyZWQgdG8gQ2FzOSAoU3B1RnoxIGNvbnNpc3RzIG9mIDYzOCBhbWlubyBhY2lkczxUYWJTY3JvbGxMaW5rIHRhYj1cInRhYi1uaWNrYXNlXCIgbnVtPVwiMjVcIiBzY3JvbGxJZD1cImRlc2MtMjVcIi8+LCB3aGVyZWFzIENhczkgaGFzIGEgc2l6ZSBvZiAxMzY4IGFtaW5vIGFjaWRzPFRhYlNjcm9sbExpbmsgdGFiPVwidGFiLW5pY2thc2VcIiBudW09XCIyNlwiIHNjcm9sbElkPVwiZGVzYy0yNlwiLz4pLiBXZSBzZWxlY3RlZCBTcHVGejEgbm90IG9ubHkgYmVjYXVzZSBvZiBpdHMgc21hbGxlciBzaXplLCBidXQgYWxzbyBkdWUgdG8gc3RydWN0dXJhbCBhZHZhbnRhZ2VzLCBzdWNoIGFzIHRoZSByZXZlcnNlZCBwb3NpdGlvbmluZyBvZiB0aGUgc3BhY2VyLCB3aGljaCBwcm92aWRlcyBiZXR0ZXIgcHJvdGVjdGlvbiBmcm9tIFJOYXNlIGRlZ3JhZGF0aW9uIGFuZCBpbXByb3ZlcyBlZGl0aW5nIHByZWNpc2lvbi5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgVGhlIENhczkgZW5kb251Y2xlYXNlIGNvbnRhaW5zIHR3byBhY3RpdmUgZG9tYWlucywgZWFjaCByZXNwb25zaWJsZSBmb3IgY3V0dGluZyBvbmUgb2YgdGhlIHR3byBETkEgc3RyYW5kcy4gQ2FzOSB1c2VzIHRoZSBSdXZDIGFuZCBITkggZG9tYWlucywgd2l0aCBlYWNoIGRvbWFpbiBtYWtpbmcgYSBjdXQgb24gYSBkaWZmZXJlbnQgc3RyYW5kIG9mIHRoZSB0YXJnZXQgRE5BPFRhYlNjcm9sbExpbmsgdGFiPVwidGFiLW5pY2thc2VcIiBudW09XCIyN1wiIHNjcm9sbElkPVwiZGVzYy0yN1wiLz4uIFRvIGNyZWF0ZSBhIG5pY2thc2UgZnJvbSBDYXM5LCBzY2llbnRpc3RzIGRlYWN0aXZhdGUgb25lIG9mIHRoZXNlIGFjdGl2ZSBkb21haW5zLCB0eXBpY2FsbHkgdGhlIEhOSCBkb21haW4sIHNvIHRoYXQgdGhlIGVuenltZSBvbmx5IGN1dHMgb25lIHN0cmFuZCBpbnN0ZWFkIG9mIGJvdGgsIHByb2R1Y2luZyBhIHNpbmdsZS1zdHJhbmQgYnJlYWsgcmF0aGVyIHRoYW4gYSBkb3VibGUtc3RyYW5kIGJyZWFrPFRhYlNjcm9sbExpbmsgdGFiPVwidGFiLW5pY2thc2VcIiBudW09XCIyN1wiIHNjcm9sbElkPVwiZGVzYy0yN1wiLz4uXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIEJhc2VkIG9uIHRoZSBmdW5jdGlvbiBvZiB0aGlzIHByb3RvdHlwaWNhbCBDYXM5IG5pY2thc2UsIHdlIGFzc3VtZWQgdGhhdCBTcHVGejEgd291bGQgb3BlcmF0ZSBzaW1pbGFybHksIHdpdGggdHdvIGFjdGl2ZSBjZW50ZXJzXHUyMDE0UnV2QyBhbmQgVE5CXHUyMDE0ZWFjaCBjdXR0aW5nIG9uZSBETkEgc3RyYW5kLiBGb2xsb3dpbmcgdGhpcyBsb2dpYywgd2UgaHlwb3RoZXNpemVkIHRoYXQgYnkgZGVhY3RpdmF0aW5nIHRoZSBUTkIgZG9tYWluLCB3aGljaCBjb250YWlucyBhIHppbmMgZmluZ2VyIG1vdGlmIChGaWcuIDIpIGNydWNpYWwgZm9yIEROQSBjb29yZGluYXRpb24sIHdlIGNvdWxkIGNvbnZlcnQgU3B1RnoxIGludG8gYSBuaWNrYXNlLiBUbyB0ZXN0IHRoaXMsIHdlIGFpbWVkIHRvIHJlcGxhY2UgdGhlIGN5c3RlaW5lIHJlc2lkdWVzIGludm9sdmVkIGluIHppbmMgaW9uIGNvb3JkaW5hdGlvbiB3aXRoaW4gdGhlIFROQiBkb21haW4gd2l0aCBhbGFuaW5lLCB0aGVyZWJ5IGltcGFpcmluZyBpdHMgRE5BLWJpbmRpbmcgYWJpbGl0eSBhbmQgcHJvZHVjaW5nIGEgU3B1RnoxIG5pY2thc2UgdGhhdCBjdXRzIG9ubHkgb25lIHN0cmFuZC4gQXQgdGhhdCB0aW1lLCB3ZSBiZWxpZXZlZCBib3RoIGRvbWFpbnMgaW4gU3B1RnoxIHdlcmUgZGlyZWN0bHkgcmVzcG9uc2libGUgZm9yIEROQSBjbGVhdmFnZSwgYW5kIG91ciBzdHJhdGVneSB3YXMgYmFzZWQgb24gdGhpcyBhc3N1bXB0aW9uLlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxUd29GaWd1cmVSb3dcclxuICAgICAgICAgICAgICAgICAgICAgICAgcGljMT1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2VuZ2luZWVyaW5nLWN5Y2xlL3NwdWZ6LXd0LTNkLW1vZGVsLndlYnBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbj1cIlNjaGVtYXRpYyBpbGx1c3RyYXRpb24gb2YgU3B1RnoxIChQREIgY29kZTogOEdLSCkgdmlzdWFsaXplZCBpbiBDaGltZXJhWFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGFsdDE9XCJTY2hlbWF0aWMgaWxsdXN0cmF0aW9uIG9mIFNwdUZ6MSAoUERCIGNvZGU6IDhHS0gpIHZpc3VhbGl6ZWQgaW4gQ2hpbWVyYVhcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBudW09ezF9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG51bTI9ezJ9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uMj1cIkNsb3NlIHVwIG9mIHRoZSB6aW5jIGZpbmdlciBtb3RpZiBvZiBTcHVGejEgKFBEQiBjb2RlOiA4R0tIKSB2aXN1YWxpemVkIGluIENoaW1lcmFYIC0gaW4gdGhlIG1pZGRsZSBvZiB0aGUgaW1hZ2UgdGhlIHppbmMgaW9uIG9mIHRoZSBtb3RpZiBjYW4gYmUgc2Vlbiwgd2hpY2ggaXMgY29vcmRpbmF0ZWQgYnkgNCBzdXJyb3VuZGluZyBjeXN0ZWluZSByZXNpZHVlc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBpYzI9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9lbmdpbmVlcmluZy1jeWNsZS9zcHVmei13dC0zZC1tb2RlbC16aW5jLWZpbmdlci53ZWJwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJCdWlsZFwiIGlkPVwidGV4dFwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFVzaW5nIHRoZSBwcm90ZWluIHZpc3VhbGl6YXRpb24gc29mdHdhcmUgQ2hpbWVyYVgsIHdlIGNhcmVmdWxseSBleGFtaW5lZCB0aGUgc3RydWN0dXJlIG9mIFNwdUZ6MSB0byBpZGVudGlmeSB0aGUga2V5IGN5c3RlaW5lIHJlc2lkdWVzIHJlc3BvbnNpYmxlIGZvciBjb29yZGluYXRpbmcgdGhlIHppbmMgaW9uLiBXaXRoIHRoaXMgaW5zaWdodCwgd2UgZGVzaWduZWQgb3VyIG5pY2thc2UgY2FuZGlkYXRlcyBieSBtb2RpZnlpbmcgdGhlIHdpbGQtdHlwZSBzZXF1ZW5jZSwgc3BlY2lmaWNhbGx5IHN1YnN0aXR1dGluZyB0aGVzZSBjeXN0ZWluZXMgd2l0aCBhbGFuaW5lLCB0byBkaXNydXB0IHRoZSB6aW5jIGlvbiBjb29yZGluYXRpb24gYW5kIHBvdGVudGlhbGx5IGFsdGVyIHRoZSBwcm90ZWluJ3MgZnVuY3Rpb24uXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJUZXN0XCIgaWQ9XCJ0ZXh0XCIvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgRmlyc3QsIHdlIGRpc2N1c3NlZCBvdXIgYXBwcm9hY2ggd2l0aCA8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZXNBbmRPcGVuVGFiKCdoYW1tZXJrYWknLCAnL2h1bWFuLXByYWN0aWNlcycpfT4gS2FpIFNjaFx1MDBGQ2xrZSA8L2E+LCBhIFBoRCBzdHVkZW50IGZyb20gdGhlIEhhbW1lciBHcm91cCBhdCBCaWVsZWZlbGQgVW5pdmVyc2l0eSwgd2hpY2ggc3BlY2lhbGl6ZXMgaW4gZW56eW1lIGVuZ2luZWVyaW5nLiBIZSBjb25maXJtZWQgdGhhdCBvdXIgcGxhbiB0byBmb2N1cyBvbiBzcGVjaWZpYyBtdXRhdGlvbiBjYW5kaWRhdGVzIHdhcyBhcHByb3ByaWF0ZSBnaXZlbiB0aGUgY29uc3RyYWludHMgb2Ygb3VyIHByb2plY3QuIEhlIGVtcGhhc2l6ZWQgdGhhdCB3ZSBsYWNrZWQgdGhlIHRpbWUgYW5kIHJlc291cmNlcyB0byBjb25kdWN0IGxhcmdlLXNjYWxlLCBxdWFudGl0YXRpdmUgc3R1ZGllcyBvbiBhIHdpZGUgcmFuZ2Ugb2YgbXV0YXRpb25zLiBJbnN0ZWFkLCBoZSBzdXBwb3J0ZWQgb3VyIGRlY2lzaW9uIHRvIHRhcmdldCBzcGVjaWZpYyBjYW5kaWRhdGVzIHRoYXQgY291bGQgYmUgdGhvcm91Z2hseSB0ZXN0ZWQgd2l0aGluIHRoZSBzY29wZSBvZiBvdXIgcHJvamVjdC5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkaXRpb25hbGx5LCB3ZSBjYXJlZnVsbHkgY29uc2lkZXJlZCB0aGUgcG90ZW50aWFsIGVmZmVjdGl2ZW5lc3Mgb2Ygb3VyIG1vZGlmaWVkIFNwdUZ6MSBuaWNrYXNlIGluIGEgUHJpbWUgRWRpdGluZyBzY2VuYXJpbywgc3BlY2lmaWNhbGx5IHRhcmdldGluZyB0aGUgRjUwOGRlbCBtdXRhdGlvbiBpbiBDeXN0aWMgRmlicm9zaXMuIER1cmluZyB0aGlzIGRldGFpbGVkIGFuYWx5c2lzLCB3ZSBpZGVudGlmaWVkIGEgY3JpdGljYWwgY2hhbGxlbmdlOiB0aGUgVEFNIHNlcXVlbmNlIHJlcXVpcmVkIGZvciBTcHVGejEgYmluZGluZyB3YXMgbG9jYXRlZCB0b28gZmFyIGZyb20gdGhlIHRhcmdldCBtdXRhdGlvbiBzaXRlLiBUaGlzIGRpc3RhbmNlIGNvdWxkIGxpbWl0IHRoZSBlZmZpY2llbmN5IG9mIHRoZSBQcmltZSBFZGl0b3IsIHJhaXNpbmcgY29uY2VybnMgYWJvdXQgaXRzIG92ZXJhbGwgZWZmZWN0aXZlbmVzcyBmb3IgdGhpcyBwYXJ0aWN1bGFyIG11dGF0aW9uLlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxJbmZvQm94IHRpdGxlPVwiVEFNIHNlcXVlbmNlc1wiIGlkPVwiY3VycmVudC1wZS1zeXN0ZW1zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkZXRhaWxzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3VtbWFyeT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQSBUQU0gc2VxdWVuY2UgaXMgdGhlIGVxdWl2YWxlbnQgdG8gYSBQQU0gc2VxdWVuY2UgZm9yIE9NRUdBIHN5c3RlbXMuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3VtbWFyeT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEEgPGI+VEFNIHNlcXVlbmNlPC9iPiAoVGFyZ2V0ZWQgQWN0aXZpdHkgTW9kaWZpY2F0aW9uIHNlcXVlbmNlKSBpcyBhIHNob3J0IEROQSBzZXF1ZW5jZSwgdHlwaWNhbGx5IG9ubHkgYSBmZXcgYmFzZXMgbG9uZywgdGhhdCBwcm92aWRlcyBhIGJpbmRpbmcgc2l0ZSBmb3IgdGhlIG5pY2thc2Ugd2l0aGluIHRoZSBQcmltZSBFZGl0aW5nIGNvbXBsZXguIFRoaXMgc2VxdWVuY2UgaXMgY3J1Y2lhbCBiZWNhdXNlIGl0IGFsbG93cyB0aGUgbmlja2FzZSB0byBiaW5kIHRvIHRoZSBETkEgYW5kIG1ha2UgYSBwcmVjaXNlIHNpbmdsZS1zdHJhbmQgY3V0LiBGb3IgdGhlIFByaW1lIEVkaXRpbmcgY29tcGxleCB0byBjb3JyZWN0IGEgbXV0YXRpb24gYXQgYSBzcGVjaWZpYyBsb2NhdGlvbiBndWlkZWQgYnkgdGhlIHBlZ1JOQSwgYSBUQU0gc2VxdWVuY2UgbXVzdCBiZSBsb2NhdGVkIG5lYXIgdGhhdCB0YXJnZXQgc2l0ZS4gV2hpbGUgdGhlIHBlZ1JOQSBkaXJlY3RzIHRoZSBlZGl0aW5nIG1hY2hpbmVyeSB0byB0aGUgcmVnaW9uIHdoZXJlIHRoZSBjb3JyZWN0aW9uIHdpbGwgb2NjdXIsIHRoZSBUQU0gc2VxdWVuY2UgZW5hYmxlcyB0aGUgbmlja2FzZSB0byBwaHlzaWNhbGx5IGludGVyYWN0IHdpdGggdGhlIEROQSBhbmQgaW5pdGlhdGUgdGhlIGN1dC4gVGhlcmVmb3JlLCBib3RoIHRoZSBwZWdSTkEgYW5kIHRoZSBUQU0gc2VxdWVuY2UgYXJlIGVzc2VudGlhbCBmb3IgZWZmaWNpZW50IGFuZCBhY2N1cmF0ZSBlZGl0aW5nOiB0aGUgcGVnUk5BIHNwZWNpZmllcyB0aGUgc2l0ZSBvZiB0aGUgY29ycmVjdGlvbiwgYW5kIHRoZSBUQU0gc2VxdWVuY2UgZmFjaWxpdGF0ZXMgdGhlIG5pY2thc2UncyBiaW5kaW5nIGFuZCBhY3Rpb24uIEZvciBpbnN0YW5jZSwgU3B1RnoxIHJlY29nbml6ZXMgdGhlIFRBTSBzZXF1ZW5jZSA8Yj41Jy1DQVRBLTMnPC9iPiwgYW5kIENhc1ggYmluZHMgdG8gPGI+NSctVFRDTi0zJzwvYj4uIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGV0YWlscz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9JbmZvQm94PiBcclxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJMZWFyblwiIGlkPVwidGV4dFwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFRocm91Z2ggdGhpcyBpdGVyYXRpb24sIHdlIGxlYXJuZWQgdGhhdCB0YXJnZXRlZCBtdXRhZ2VuZXNpcyBpcyBhIHByb21pc2luZyBhcHByb2FjaCBmb3IgZ2VuZXJhdGluZyBvdXIgbXV0YW50IG5pY2thc2VzLiBXZSBhbHNvIHJlY29nbml6ZWQgdGhlIGltcG9ydGFuY2Ugb2YgY2FyZWZ1bGx5IHNlbGVjdGluZyB0aGUgYXBwcm9wcmlhdGUgUEFNIG9yIFRBTSBzZXF1ZW5jZXMgZm9yIG91ciBjaG9zZW4gZW5kb251Y2xlYXNlcy4gU3BlY2lmaWNhbGx5LCB3ZSByZWFsaXplZCB0aGF0IHRoZSBUQU0gc2VxdWVuY2UgZm9yIFNwdUZ6MSBtaWdodCBiZSB0b28gZmFyIGZyb20gb3VyIHRhcmdldCBtdXRhdGlvbiwgcHJvbXB0aW5nIHVzIHRvIGV4cGxvcmUgb3RoZXIgZW5kb251Y2xlYXNlcyB3aXRoaW4gdGhlIEZhbnpvciBmYW1pbHkgdGhhdCBjb3VsZCBzZXJ2ZSBhcyBiZXR0ZXIgY2FuZGlkYXRlcyBmb3Igbmlja2FzZSBkZXZlbG9wbWVudC4gQWRkaXRpb25hbGx5LCB0aGlzIHByb2Nlc3MgaGlnaGxpZ2h0ZWQgdGhlIGNyaXRpY2FsIHJvbGUgb2YgZXhwZXJ0IGNvbnN1bHRhdGlvbiBpbiByZWZpbmluZyBvdXIgc3RyYXRlZ2llcyBhbmQgZW5zdXJpbmcgdGhlIGZlYXNpYmlsaXR5IG9mIG91ciBhcHByb2FjaC5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICA8L3A+XHJcblxyXG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImJveFwiID5cclxuICAgICAgICAgICAgICAgICAgICAgPHAgaWQ9XCJuaWMyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxIMyB0ZXh0PVwiRnVzaW9uIFByb3RlaW4gZnJvbSBHdEZ6MSAmIFNwdUZ6MVwiIGlkPVwibmljMmhlYWRcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiRGVzaWduXCIgaWQ9XCJkZXNpZ24taGVhZFwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIEluIG91ciBvbmdvaW5nIGV4cGxvcmF0aW9uIG9mIEZhbnpvciBwcm90ZWlucywgd2UgaWRlbnRpZmllZCBhbm90aGVyIHBvdGVudGlhbCBjYW5kaWRhdGUsIEd0RnoxLCB3aGljaCBoYWQgYSBzdWl0YWJsZSBUQU0gc2VxdWVuY2UgZm9yIG91ciB0YXJnZXQgYXBwbGljYXRpb24gb2YgY29ycmVjdGluZyB0aGUgRjUwOGRlbCBtdXRhdGlvbiBpbiBDeXN0aWMgRmlicm9zaXMuIEhvd2V2ZXIsIEd0RnoxIHNob3dlZCBsb3cgY3V0dGluZyBlZmZpY2llbmN5IGluIHRoZSB0ZXN0cyByZXBvcnRlZCBpbiB0aGUgbGl0ZXJhdHVyZTxUYWJTY3JvbGxMaW5rIHRhYj1cInRhYi1uaWNrYXNlXCIgbnVtPVwiMjVcIiBzY3JvbGxJZD1cImRlc2MtMjVcIi8+LiBUbyBhZGRyZXNzIHRoaXMsIHdlIGRldmlzZWQgYSBzdHJhdGVneSB0byBjb21iaW5lIHRoZSBmYXZvcmFibGUgVEFNLWJpbmRpbmcgcHJvcGVydGllcyBvZiBHdEZ6MSB3aXRoIHRoZSBoaWdoZXIgY3V0dGluZyBlZmZpY2llbmN5IG9mIFNwdUZ6MS4gU3BlY2lmaWNhbGx5LCB3ZSBwbGFubmVkIHRvIGVuZ2luZWVyIGEgZnVzaW9uIHByb3RlaW4gYnkgcmVwbGFjaW5nIHRoZSBUQU0tYmluZGluZyBkb21haW4gb2YgU3B1RnoxIHdpdGggdGhhdCBvZiBHdEZ6MS4gVGhpcyBhcHByb2FjaCBhaW1zIHRvIGNyZWF0ZSBhbiBlbmRvbnVjbGVhc2UgdGhhdCByZXRhaW5zIHRoZSBzdHJvbmcgVEFNLWJpbmRpbmcgYWJpbGl0eSBvZiBHdEZ6MSB3aGlsZSB1dGlsaXppbmcgdGhlIHJvYnVzdCBjdXR0aW5nIGVmZmljaWVuY3kgb2YgU3B1RnoxLCBvcHRpbWl6aW5nIGl0IGZvciBvdXIgUHJpbWUgRWRpdGluZyBhcHBsaWNhdGlvbi5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPiBcclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+ICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgR2l2ZW4gdGhhdCB3ZSB3ZXJlIHN3YXBwaW5nIGVudGlyZSBkb21haW5zIHJhdGhlciB0aGFuIGp1c3Qgc2luZ2xlIGFtaW5vIGFjaWRzLCB3ZSByZWFsaXplZCB0aGF0IHRoZSBmdXNpb24gcHJvdGVpbiBtaWdodCBub3QgcmV0YWluIHRoZSBpZGVhbCBUQU0tYmluZGluZyBlZmZpY2llbmN5IG9yIGN1dHRpbmcgZWZmaWNpZW5jeSBvZiB0aGUgb3JpZ2luYWwgcHJvdGVpbnMuIE91ciBzdHJhdGVneSB3YXMgdG8gY3JlYXRlIGEgZnVzaW9uIHByb3RlaW4gdGhhdCBjb3VsZCBiaW5kIHRvIHRoZSBUQU0gc2l0ZSBhbmQgcGVyZm9ybSBETkEgY3V0dGluZyB0byBhIGNlcnRhaW4gZXh0ZW50LCBhbGJlaXQgd2Vha2x5LiBXZSBwbGFubmVkIHRvIHVzZSBkaXJlY3RlZCBldm9sdXRpb24gdGVjaG5pcXVlcywgc3VjaCBhcyBQaGFnZSBBc3Npc3RlZCBDb250aW51b3VzIEV2b2x1dGlvbiAoUEFDRSksIHRvIGVuaGFuY2UgdGhlc2UgZnVuY3Rpb25hbGl0aWVzIG92ZXIgdGltZS4gVGhpcyBhcHByb2FjaCByZWxpZXMgb24gaGF2aW5nIGEgc3RhcnRpbmcgcG9pbnQgd2l0aCBzb21lIGRlZ3JlZSBvZiB0aGUgZGVzaXJlZCBhY3Rpdml0eSwgd2hpY2ggY2FuIHRoZW4gYmUgaW5jcmVtZW50YWxseSBpbXByb3ZlZCB0aHJvdWdoIGV2b2x1dGlvbi5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8SDQgdGV4dD1cIkJ1aWxkXCIgaWQ9XCJidWlsZC1oZWFkXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgVGhlIGJ1aWxkIHBoYXNlIGludm9sdmVkIGRlc2lnbmluZyB0aGlzIGZ1c2lvbiBwcm90ZWluIGJ5IGludGVncmF0aW5nIHRoZSBUQU0tYmluZGluZyByZWdpb24gZnJvbSBHdEZ6MSBpbnRvIHRoZSBTcHVGejEgcHJvdGVpbiBzdHJ1Y3R1cmUuIFdlIGVuZ2luZWVyZWQgdGhlIHNlcXVlbmNlIHRvIGluY2x1ZGUgdGhpcyBoeWJyaWQgY29uZmlndXJhdGlvbiwgaW50ZW5kaW5nIHRvIHRlc3QgaXRzIGZ1bmN0aW9uYWxpdHkgYXMgYSBuaWNrYXNlIGFmdGVyIGludHJvZHVjaW5nIHRoZSB6aW5jIGZpbmdlciBtdXRhdGlvbiwgd2hpY2ggd2UgaGFkIGh5cG90aGVzaXplZCB3b3VsZCBpbmFjdGl2YXRlIG9uZSBvZiB0aGUgRE5BLWN1dHRpbmcgZG9tYWlucy5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8SDQgdGV4dD1cIlRlc3RcIiBpZD1cInRlc3QtaGVhZFwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFRvIHZhbGlkYXRlIG91ciBhcHByb2FjaCwgd2UgY29uZHVjdGVkIHR3byBrZXkgaW50ZXJ2aWV3cy4gRmlyc3QsIHdlIGNvbnN1bHRlZCB3aXRoIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlc0FuZE9wZW5UYWIoJ2hhbW1lcicsICcvaHVtYW4tcHJhY3RpY2VzJyl9PiBQcm9mLiBEci4gSGFtbWVyIDwvYT4gZnJvbSBCaWVsZWZlbGQgVW5pdmVyc2l0eSwgd2hvIGhpZ2hsaWdodGVkIHRoZSBwb3NzaWJpbGl0eSB0aGF0IHRoZSB6aW5jIGZpbmdlciBkb21haW4gbWlnaHQgYmUgc3RydWN0dXJhbGx5IHNpZ25pZmljYW50IGFuZCBjYXV0aW9uZWQgdGhhdCBtdXRhdGluZyBpdCBjb3VsZCBkZXN0YWJpbGl6ZSB0aGUgcHJvdGVpbi4gSGUgcmVjb21tZW5kZWQgdGhhdCB3ZSBleHBsb3JlIHdoZXRoZXIgdGhlcmUgd2VyZSBhbnkga25vd24gZW56eW1lcyB3aXRoIHNpbWlsYXIgbWVjaGFuaXNtcyB3aGVyZSBhbmFsb2dvdXMgbXV0YXRpb25zIGhhZCBzdWNjZXNzZnVsbHkgY29udmVydGVkIGVuZG9udWNsZWFzZXMgaW50byBuaWNrYXNlcy4gVGhpcyBhcHByb2FjaCwgaGUgc3VnZ2VzdGVkLCBtaWdodCBvZmZlciBhIG1vcmUgcmVsaWFibGUgcGF0aHdheS5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgTmV4dCwgd2Ugc3Bva2Ugd2l0aCA8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZXNBbmRPcGVuVGFiKCdzdmVuamEnLCAnL2h1bWFuLXByYWN0aWNlcycpfT4gU3ZlbmphIEZpbmtlIDwvYT4sIGEgUG9zdGRvY3RvcmFsIEZlbGxvdyBhdCB0aGUgSGFydmFyZCBJbnN0aXR1dGUgYW5kIGFuIGV4cGVydCBpbiBkaXJlY3RlZCBlbnp5bWUgZXZvbHV0aW9uLCBpbmNsdWRpbmcgUEFDRS4gV2UgcmVhY2hlZCBvdXQgdG8gaGVyIHNwZWNpZmljYWxseSBiZWNhdXNlIHdlIGFudGljaXBhdGVkIHRoYXQgb3VyIGZ1c2lvbiBwcm90ZWluIG1pZ2h0IHJlcXVpcmUgb3B0aW1pemF0aW9uIHRvIGFjaGlldmUgc3Ryb25nIFRBTS1iaW5kaW5nIGFuZCBjdXR0aW5nIGVmZmljaWVuY3kuIFN2ZW5qYSBpbmZvcm1lZCB1cyB0aGF0IHdoaWxlIFBBQ0UgY291bGQgdGhlb3JldGljYWxseSBvcHRpbWl6ZSBvdXIgZnVzaW9uIHByb3RlaW4sIHRoZSBwcm9jZXNzIHdhcyB0b28gY29tcGxleCBhbmQgdGltZS1jb25zdW1pbmcgZm9yIHRoZSBzY29wZSBvZiBvdXIgcHJvamVjdC4gQXMgYSByZXN1bHQsIHdlIGRlY2lkZWQgdG8gcmVjb25zaWRlciB0aGlzIG1ldGhvZCBhbmQgbG9vayBmb3Igc2ltcGxlciwgbW9yZSBmZWFzaWJsZSBhbHRlcm5hdGl2ZXMuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJMZWFyblwiIGlkPVwibGVhcm4taGVhZFwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIEZyb20gdGhpcyBpdGVyYXRpb24sIHdlIGxlYXJuZWQgc2V2ZXJhbCBpbXBvcnRhbnQgbGVzc29ucy4gRmlyc3QsIHdlIGRlY2lkZWQgdG8gYWJhbmRvbiB0aGUgZnVzaW9uIHByb3RlaW4gYXBwcm9hY2guIEZlZWRiYWNrIGZyb20gU3ZlbmphXHUyMDE5cyBpbnRlcnZpZXcgaGlnaGxpZ2h0ZWQgdGhhdCB0aGlzIHN0cmF0ZWd5IHdhcyB0b28gY29tcGxleCwgdGltZS1jb25zdW1pbmcsIGFuZCBpbnZvbHZlZCBzaWduaWZpY2FudCB1bmNlcnRhaW50eSByZWdhcmRpbmcgaXRzIGVmZmVjdGl2ZW5lc3MuIEdpdmVuIHRoZSBsb25nIHRlc3RpbmcgdGltZXMgYW5kIHRoZSBpbmhlcmVudCByaXNrcywgd2UgY29uY2x1ZGVkIHRoYXQgdGhpcyBhcHByb2FjaCB3YXMgbm90IHZpYWJsZSB3aXRoaW4gb3VyIHByb2plY3RcdTIwMTlzIGNvbnN0cmFpbnRzLiBJbml0aWFsbHksIHdlIGNvbnNpZGVyZWQgbW92aW5nIGF3YXkgZnJvbSBTcHVGejEgZHVlIHRvIHRoZSBUQU0gc2VxdWVuY2UgYmVpbmcgdG9vIGZhciBmcm9tIHRoZSBcdTAzOTRGNTA4IG11dGF0aW9uLiBIb3dldmVyLCB3aXRoIG9uZ29pbmcgaW1wcm92ZW1lbnRzIGluIHJldmVyc2UgdHJhbnNjcmlwdGFzZXMgd2l0aGluIFByaW1lIEVkaXRpbmcgc3lzdGVtcywgd2hpY2ggYWxsb3cgZm9yIGdyZWF0ZXIgZGlzdGFuY2VzIGJldHdlZW4gdGhlIG11dGF0aW9uIHNpdGUgYW5kIHRoZSBUQU0gc2VxdWVuY2UsIHdlIHJlZm9jdXNlZCBvdXIgZWZmb3J0cyBvbiBTcHVGejEsIGNvbnNpZGVyaW5nIGl0IGEgdmlhYmxlIGNhbmRpZGF0ZSBmb3IgZnVydGhlciBkZXZlbG9wbWVudC5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgU2Vjb25kbHksIHdlIHJlYWxpemVkIHRoZSBpbXBvcnRhbmNlIG9mIHZlcmlmeWluZyB3aGV0aGVyIHRoZSB6aW5jIGZpbmdlciBtdXRhdGlvbiB3ZSBwcm9wb3NlZCBpcyBzdHJ1Y3R1cmFsbHkgZmVhc2libGUgYW5kIHdoZXRoZXIgaXQgbWlnaHQgY29tcHJvbWlzZSBwcm90ZWluIHN0YWJpbGl0eS4gVGhpcyBpbnNpZ2h0IGZ1cnRoZXIgZW1waGFzaXplZCB0aGUgbmVlZCB0byBjYXJlZnVsbHkgYXNzZXNzIG91ciBkZXNpZ24gY2hvaWNlcyBiZWZvcmUgcHJvY2VlZGluZyB0byBleHRlbnNpdmUgdGVzdGluZy5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImJveFwiID5cclxuICAgICAgICAgICAgICAgICAgICAgPHAgaWQ9XCJNb2RlbGluZyBvZiBNdXRhbnQgU3RydWN0dXJhbCBJbnRlZ3JpdHlcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPEgzIHRleHQ9XCJuaWMzXCIgaWQ9XCJuaWMzaGVhZFwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJEZXNpZ25cIiBpZD1cImRlc2lnbi1oZWFkXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgSW4gdGhlIHByZXZpb3VzIGl0ZXJhdGlvbiwgd2UgY29uc3VsdGVkIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlc0FuZE9wZW5UYWIoJ2hhbW1lcicsICcvaHVtYW4tcHJhY3RpY2VzJyl9PiBQcm9mLiBEci4gSGFtbWVyIDwvYT4sIHdobyBzdWdnZXN0ZWQgdGhhdCB0aGUgemluYyBmaW5nZXIgZG9tYWluIGluIHRoZSBTcHVGejEgcHJvdGVpbiBtaWdodCBwbGF5IGEgY3JpdGljYWwgc3RydWN0dXJhbCByb2xlLiBCYXNlZCBvbiB0aGlzIGZlZWRiYWNrLCB0aGUgZ29hbCBvZiB0aGlzIGl0ZXJhdGlvbiB3YXMgdG8gaW52ZXN0aWdhdGUgd2hldGhlciBtdXRhdGluZyB0aGUgemluYyBmaW5nZXIgd291bGQgZGVzdGFiaWxpemUgdGhlIHByb3RlaW4gYW5kIGNvbXByb21pc2UgaXRzIGZ1bmN0aW9uLiBTcGVjaWZpY2FsbHksIHdlIGFpbWVkIHRvIGRldGVybWluZSBpZiBhbHRlcmluZyB0aGlzIGRvbWFpbiB3b3VsZCBzdGlsbCBiZSBhIHZpYWJsZSBzdHJhdGVneSBmb3IgZ2VuZXJhdGluZyBhIFNwdUZ6MS1iYXNlZCBuaWNrYXNlIHdpdGhvdXQgbG9zaW5nIHN0cnVjdHVyYWwgaW50ZWdyaXR5LlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiQnVpbGRcIiBpZD1cImJ1aWxkLWhlYWRcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBCZWZvcmUsIHdlIGlkZW50aWZpZWQgdGhlIHNwZWNpZmljIGFtaW5vIGFjaWRzIHJlc3BvbnNpYmxlIGZvciBjb29yZGluYXRpbmcgdGhlIHppbmMgaW9uIHdpdGhpbiB0aGUgemluYyBmaW5nZXIgZG9tYWluLiBVc2luZyB0aGUgc29mdHdhcmUgR2VuZWlvdXMsIHdlIHByb2NlZWRlZCB0byBkZXNpZ24gRE5BIHNlcXVlbmNlcyBieSBzdWJzdGl0dXRpbmcgdGhlc2Uga2V5IGFtaW5vIGFjaWRzIHdpdGggb25lcyB0aGF0IHdvdWxkIGltcGFpciB0aGVpciBhYmlsaXR5IHRvIGNvb3JkaW5hdGUgdGhlIHppbmMgaW9uLiBUaGVzZSBkZXNpZ25lZCBzZXF1ZW5jZXMgY29ycmVzcG9uZGVkIHRvIG91ciBwb3RlbnRpYWwgbXV0YXRpb24gY2FuZGlkYXRlcywgd2hpY2ggd2UgcHJlcGFyZWQgZm9yIGZ1cnRoZXIgc3RydWN0dXJhbCBhbmFseXNpcy5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8SDQgdGV4dD1cIlRlc3RcIiBpZD1cInRlc3QtaGVhZFwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFdlIHVzZWQgQWxwaGFGb2xkIHRvIG1vZGVsIHRoZSAzRCBzdHJ1Y3R1cmVzIG9mIG91ciB6aW5jIGZpbmdlciBtdXRhdGlvbiBjYW5kaWRhdGVzLiBBZnRlciBnZW5lcmF0aW5nIHRoZXNlIG1vZGVscywgd2UgdXNlZCBDaGltZXJhWCB0byBwZXJmb3JtIGEgc3RydWN0dXJhbCBvdmVybGF5IGNvbXBhcmlzb24gYmV0d2VlbiB0aGUgbmF0aXZlIFNwdUZ6MSBwcm90ZWluIGFuZCB0aGUgbXV0YXRlZCB2ZXJzaW9ucyAoRmlnLiAzKS4gVGhpcyBjb21wYXJpc29uIHJldmVhbGVkIHNpZ25pZmljYW50IGRpZmZlcmVuY2VzLCBwYXJ0aWN1bGFybHkgaW4gdGhlIFROQiBkb21haW4sIGluZGljYXRpbmcgdGhhdCB0aGUgemluYyBmaW5nZXIgcGxheXMgYSBjcnVjaWFsIHN0cnVjdHVyYWwgcm9sZSAoRmlnLiA0KS5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8VHdvRmlndXJlUm93XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBpYzE9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9lbmdpbmVlcmluZy1jeWNsZS9zcHVmei13dC12cy16Zi1uaWthc2Uud2VicFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBpYzI9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9lbmdpbmVlcmluZy1jeWNsZS9zcHVmei13dC12cy16Zi1uaWthc2UtemluYy1maW5nZXIud2VicFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG51bT17M31cclxuICAgICAgICAgICAgICAgICAgICAgICAgbnVtMj17NH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgYWx0MT1cIlN0cnVjdHVyYWwgb3ZlcmxheSBvZiB3aWxkdHlwZSBTcHVGejEgKGNvbG9yOiBMaWxhYykgKFBEQiBjb2RlOiA4R0tIKSBhbmQgbW9kZWxlZCB6aW5jLWZpbmdlciBtdXRhdGlvbiBjYW5kaWRhdGUgKGNvbG9yOiBvcmFuZ2UpIHZpc3VhbGl6ZWQgaW4gQ2hpbWVyYVggXHUyMDEzIHRoZSB5ZWxsb3cgY2lyY2xlIHNob3dzIHRoZSBsb2NhdGlvbiBvZiB0aGUgemluYy1maW5nZXIuIEEgc3RydWN0dXJhbCBkZXZpYXRpb24gb2YgYm90aCBwcm90ZWlucyBsb2NhbGx5IGlzIGV2aWRlbnRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbj1cIlN0cnVjdHVyYWwgb3ZlcmxheSBvZiB3aWxkdHlwZSBTcHVGejEgKGNvbG9yOiBMaWxhYykgKFBEQiBjb2RlOiA4R0tIKSBhbmQgbW9kZWxlZCB6aW5jLWZpbmdlciBtdXRhdGlvbiBjYW5kaWRhdGUgKGNvbG9yOiBvcmFuZ2UpIHZpc3VhbGl6ZWQgaW4gQ2hpbWVyYVggXHUyMDEzIHRoZSB5ZWxsb3cgY2lyY2xlIHNob3dzIHRoZSBsb2NhdGlvbiBvZiB0aGUgemluYy1maW5nZXIuIEEgc3RydWN0dXJhbCBkZXZpYXRpb24gb2YgYm90aCBwcm90ZWlucyBsb2NhbGx5IGlzIGV2aWRlbnRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjI9XCJDbG9zZS11cCBvZiB0aGUgemluYyBmaW5nZXIgbW90aWYgb2YgdGhlIHN0cnVjdHVyYWwgb3ZlcmxheSAtIHRoZSB6aW5jIGZpbmdlciBhcHBlYXJzIHRvIGJlIHN0cnVjdHVyYWxseSBzaWduaWZpY2FudDogdGhlcmUgYXJlIHN0cm9uZyBzdHJ1Y3R1cmFsIGRpZmZlcmVuY2VzIGxvY2FsbHlcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8SDQgdGV4dD1cIkxlYXJuXCIgaWQ9XCJsZWFybi1oZWFkXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgRnJvbSB0aGlzIGFuYWx5c2lzLCB3ZSBjb25jbHVkZWQgdGhhdCB0aGUgemluYyBmaW5nZXIgbXV0YXRpb24gaXMgbm90IGEgc3VpdGFibGUgY2FuZGlkYXRlIGZvciBnZW5lcmF0aW5nIGEgbmlja2FzZSwgYXMgYWx0ZXJpbmcgdGhpcyBkb21haW4gd291bGQgbGlrZWx5IGNvbXByb21pc2UgdGhlIHN0cnVjdHVyYWwgaW50ZWdyaXR5IG9mIFNwdUZ6MS4gUHJvZi4gSGFtbWVyIHN1Z2dlc3RlZCB0aGF0IGluc3RlYWQgb2YgZm9jdXNpbmcgb24gU3B1RnoxLCB3ZSBleHBsb3JlIG90aGVyIGVuZG9udWNsZWFzZXMgd2l0aCBzaW1pbGFyIG1lY2hhbmlzbXMuIEhpcyByZWNvbW1lbmRhdGlvbiB3YXMgdG8gaWRlbnRpZnkgZW5kb251Y2xlYXNlcyB0aGF0IGFyZSBzdHJ1Y3R1cmFsbHkgY29tcGFyYWJsZSB0byBTcHVGejEgYW5kIGFuYWx5emUgdGhlIHN0cmF0ZWdpZXMgdXNlZCB0byBjb252ZXJ0IHRoZXNlIGludG8gbmlja2FzZXMuIFdlIHdvdWxkIHRoZW4gYXBwbHkgdGhlc2Ugc2FtZSBzdHJhdGVnaWVzIHRvIG91ciBzZWxlY3RlZCBlbmRvbnVjbGVhc2VzLCBhZGFwdGluZyB0aGVtIGZvciBvdXIgcHVycG9zZXMuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJib3hcIiA+XHJcbiAgICAgICAgICAgICAgICAgICAgIDxwIGlkPVwibmljNFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8SDMgdGV4dD1cIm5DYXMxMiBhbmFsb2cgTXV0YXRpb25zXCIgaWQ9XCJuaWM0aGVhZFwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJEZXNpZ25cIiBpZD1cImRlc2lnbi1oZWFkXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgQWZ0ZXIgY29uY2x1ZGluZyB0aGF0IHRoZSB6aW5jIGZpbmdlciBtdXRhdGlvbiBhcHByb2FjaCB3YXMgbm90IHN1aXRhYmxlIGZvciBjb252ZXJ0aW5nIFNwdUZ6MSBpbnRvIGEgbmlja2FzZSwgd2UgcmV2aXNpdGVkIG91ciB1bmRlcnN0YW5kaW5nIG9mIGl0cyBjdXR0aW5nIG1lY2hhbmlzbS4gSW5pdGlhbGx5LCB3ZSBiZWxpZXZlZCB0aGF0IFNwdUZ6MSwgc2ltaWxhciB0byBDYXM5LCBjb250YWluZWQgdHdvIGFjdGl2ZSBjZW50ZXJzIHRoYXQgZWFjaCBjdXQgb25lIG9mIHRoZSBETkEgc3RyYW5kcywgYW5kIHRoYXQgYnkgZGVhY3RpdmF0aW5nIG9uZSBvZiB0aGVzZSBjZW50ZXJzLCB3ZSBjb3VsZCBnZW5lcmF0ZSBhIG5pY2thc2UgdGhhdCBvbmx5IGN1dHMgb25lIHN0cmFuZC4gSG93ZXZlciwgdGhyb3VnaCBmdXJ0aGVyIHJlc2VhcmNoLCB3ZSBkaXNjb3ZlcmVkIHRoYXQgdGhpcyBhc3N1bXB0aW9uIHdhcyBpbmNvcnJlY3QuIFNwdUZ6MSBhY3R1YWxseSBmdW5jdGlvbnMgd2l0aCBhIGRpZmZlcmVudCBjdXR0aW5nIG1lY2hhbmlzbTogdGhlIFJ1dkMgZG9tYWluIGlzIHJlc3BvbnNpYmxlIGZvciBjdXR0aW5nIHRoZSBub24tdGFyZ2V0IHN0cmFuZCwgd2hpbGUgdGhlIFROQiBkb21haW4gZG9lcyBub3QgZGlyZWN0bHkgY3V0IHRoZSBETkEuIEluc3RlYWQsIGl0IGFzc2lzdHMgdGhlIHByb2Nlc3MgYnkgZ3VpZGluZyB0aGUgdGFyZ2V0IHN0cmFuZCBpbnRvIHRoZSBSdXZDIGRvbWFpbiBmb3Igc2VxdWVudGlhbCBjbGVhdmFnZTxUYWJTY3JvbGxMaW5rIHRhYj1cInRhYi1uaWNrYXNlXCIgbnVtPVwiMjlcIiBzY3JvbGxJZD1cImRlc2MtMjlcIi8+LiBUaGlzIGRpc2NvdmVyeSBzaGlmdGVkIG91ciBmb2N1cyBmcm9tIHNpbXBseSBkZWFjdGl2YXRpbmcgYW4gYWN0aXZlIHNpdGUgdG8gYmV0dGVyIHVuZGVyc3RhbmRpbmcgaG93IHRoZSBzZXF1ZW50aWFsIGNsZWF2YWdlIHdvcmtzIGluIG9yZGVyIHRvIGluZm9ybSBmdXR1cmUgbXV0YXRpb24gc3RyYXRlZ2llcy5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgSW4gYWRkaXRpb24gdG8gdGhlc2UgaW5zaWdodHMsIHdlIG5vdGljZWQgYSBzaWduaWZpY2FudCBwaHlsb2dlbmV0aWMgcmVsYXRpb25zaGlwIGJldHdlZW4gRmFuem9yIGVuZG9udWNsZWFzZXMsIGxpa2UgU3B1RnoxLCBhbmQgQ2FzMTIgZW5kb251Y2xlYXNlczxUYWJTY3JvbGxMaW5rIHRhYj1cInRhYi1uaWNrYXNlXCIgbnVtPVwiMjVcIiBzY3JvbGxJZD1cImRlc2MtMjVcIi8+LiBUaGlzIGNvbm5lY3Rpb24gd2FzIGNydWNpYWwsIGFzIENhczEyIHByb3RlaW5zIGhhdmUgYSBzaW1pbGFyIGN1dHRpbmcgbWVjaGFuaXNtIHRvIEZhbnpvciBwcm90ZWlucywgdXRpbGl6aW5nIGEgc2luZ2xlIGFjdGl2ZSBzaXRlIGZvciBjbGVhdmFnZSB3aGlsZSBjb29yZGluYXRpbmcgYm90aCBETkEgc3RyYW5kcy4gTW9yZSBpbXBvcnRhbnRseSwgd2UgaWRlbnRpZmllZCBhIHByZWNlZGVudCBpbiB0aGUgbGl0ZXJhdHVyZSB3aGVyZSBhIENhczEyYSBlbmRvbnVjbGVhc2Ugd2FzIHN1Y2Nlc3NmdWxseSBjb252ZXJ0ZWQgaW50byBhIG5pY2thc2UgYnkgc3Vic3RpdHV0aW5nIGEgc2luZ2xlIGFtaW5vIGFjaWQgaW4gdGhlIFROQiBkb21haW48VGFiU2Nyb2xsTGluayB0YWI9XCJ0YWItbmlja2FzZVwiIG51bT1cIjMwXCIgc2Nyb2xsSWQ9XCJkZXNjLTMwXCIvPiAoRmlnLiA1IGFuZCA2KS4gVGhpcyBwcm92aWRlZCB1cyB3aXRoIGEgY2xlYXIgbW9kZWwgc3RyYXRlZ3kgdG8gZm9sbG93LCBhcyB0aGlzIHRhcmdldGVkIG11dGF0aW9uIGFsbG93ZWQgdGhlIGVuZG9udWNsZWFzZSB0byBzZWxlY3RpdmVseSBjdXQgb25seSBvbmUgRE5BIHN0cmFuZCwgZWZmZWN0aXZlbHkgY29udmVydGluZyBpdCBpbnRvIGEgbmlja2FzZS5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8VHdvRmlndXJlUm93XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIHBpYzE9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9lbmdpbmVlcmluZy1jeWNsZS9jYXMxMi1uaWthc2Uud2VicFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIHBpYzI9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9lbmdpbmVlcmluZy1jeWNsZS9jYXMxMi1uaWthc2UtY2xvc2UtdXAud2VicFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIG51bT17NX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgbnVtMj17Nn1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgYWx0MT1cIlNjaGVtYXRpYyByZXByZXNlbnRhdGlvbiBvZiBDYXMxMmEgKFBEQiBjb2RlOiA4U0ZIKSB2aXN1YWxpemVkIGluIENoaW1lcmFYIC0gdGhlIHllbGxvdyBjaXJjbGUgaGlnaGxpZ2h0cyB0aGUgcG9zaXRpb24gb2YgYXJnaW5pbmUgKFIpICgxMjI2dGggYW1pbm8gYWNpZCBpbiB0aGUgcHJpbWFyeSBzdHJ1Y3R1cmUpIHdoaWNoLCB3aGVuIHJlcGxhY2VkIGJ5IGFuIGFsYW5pbmUgKEEpLCBjb252ZXJ0cyB0aGUgQ2FzMTJhIGVuZG9udWNsZWFzZSBpbnRvIGFuIG5DYXMxMmEgbmlja2FzZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uPVwiU2NoZW1hdGljIHJlcHJlc2VudGF0aW9uIG9mIENhczEyYSAoUERCIGNvZGU6IDhTRkgpIHZpc3VhbGl6ZWQgaW4gQ2hpbWVyYVggLSB0aGUgeWVsbG93IGNpcmNsZSBoaWdobGlnaHRzIHRoZSBwb3NpdGlvbiBvZiBhcmdpbmluZSAoUikgKDEyMjZ0aCBhbWlubyBhY2lkIGluIHRoZSBwcmltYXJ5IHN0cnVjdHVyZSkgd2hpY2gsIHdoZW4gcmVwbGFjZWQgYnkgYW4gYWxhbmluZSAoQSksIGNvbnZlcnRzIHRoZSBDYXMxMmEgZW5kb251Y2xlYXNlIGludG8gYW4gbkNhczEyYSBuaWNrYXNlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVzY3JpcHRpb24yPVwiQ2xvc2UtdXAgb2YgQ2FzMTJhIChQREIgY29kZTogOFNGSCkgLSBhcmdpbmluZSAoUikgKDEyMjZ0aCBhbWlubyBhY2lkIGluIHRoZSBwcmltYXJ5IHN0cnVjdHVyZSkgaXMgY29sb3JlZCBwdXJwbGVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIEJhc2VkIG9uIHRoZXNlIGZpbmRpbmdzLCB0d28ga2V5IGRlY2lzaW9ucyBlbWVyZ2VkLiBGaXJzdCwgcmVjb2duaXppbmcgdGhlIHN0cnVjdHVyYWwgYW5kIG1lY2hhbmlzdGljIHNpbWlsYXJpdGllcyBiZXR3ZWVuIEZhbnpvciBhbmQgQ2FzMTIgZW5kb251Y2xlYXNlcywgd2UgZGVjaWRlZCB0byBleHBsb3JlIENhc1hcdTIwMTRhIHNtYWxsZXIgQ2FzMTItcmVsYXRlZCBlbmRvbnVjbGVhc2VcdTIwMTRhcyBhbiBhZGRpdGlvbmFsIGNhbmRpZGF0ZSBpbiBvdXIgcHJvamVjdC4gQ2FzWCBzaGFyZXMgbWFueSBvZiB0aGUgYWR2YW50YWdlcyBvZiBTcHVGejEsIHN1Y2ggYXMgYSBtb3JlIGNvbXBhY3Qgc3RydWN0dXJlIGNvbXBhcmVkIHRvIENhczksIG1ha2luZyBpdCBpZGVhbCBmb3IgYXBwbGljYXRpb25zIHJlcXVpcmluZyBzbWFsbGVyIGVkaXRpbmcgc3lzdGVtcy4gU2Vjb25kbHksIHdlIHJlc29sdmVkIHRvIGFkYXB0IHRoZSBtdXRhdGlvbiBzdHJhdGVneSB1c2VkIHRvIGNvbnZlcnQgQ2FzMTJhIGludG8gYSBuaWNrYXNlIGZvciBib3RoIENhc1ggYW5kIFNwdUZ6MS4gQnkgYXBwbHlpbmcgdGhlc2UgbGVhcm5pbmdzLCB3ZSBhaW1lZCB0byBnZW5lcmF0ZSBlZmZlY3RpdmUgbmlja2FzZXMgZnJvbSB0aGVzZSBlbmRvbnVjbGVhc2VzIHRvIGZ1cnRoZXIgb3B0aW1pemUgdGhlIFByaW1lIEVkaXRpbmcgY29tcGxleC5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8SW5mb0JveCB0aXRsZT1cIlRoZSByYXRpb25hbGUgYmVoaW5kIGRlc2lnbmluZyBTcHVGejEgYW5kIENhc1ggTmlja2FzZXNcIiBpZD1cImhvdy10by1jcmVhdGUtbmlja2FzZXMtb25saW5lLWZhc3RcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRldGFpbHM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdW1tYXJ5PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUaGUgbXV0YXRpb24gc3RyYXRlZ3kgYWltZWQgdG8gY29udmVydCB0aGUgZW5kb251Y2xlYXNlcyBTcHVGejEgYW5kIENhc1ggaW50byBuaWNrYXNlcyBieSB0YXJnZXRpbmcgc3BlY2lmaWMgcG9zaXRpdmVseSBjaGFyZ2VkIGFtaW5vIGFjaWRzLCBzaW1pbGFyIHRvIFIxMjI2IGluIG11dGF0ZWQgdG8gY3JlYXRlIGEgQXNDYXMxMmEgbmlja2FzZSwgdG8gZGlzcnVwdCB0aGVpciBkb3VibGUtc3RyYW5kIGNsZWF2YWdlIGZ1bmN0aW9uIHdoaWxlIHJldGFpbmluZyBzaW5nbGUtc3RyYW5kIGN1dHRpbmcgY2FwYWJpbGl0eS5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdW1tYXJ5PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSW4gb3VyIHByb2plY3QsIHdlIHNldCBvdXQgdG8gZW5naW5lZXIgdGhlIGVuZG9udWNsZWFzZXMgU3B1RnoxIGFuZCBDYXNYIGludG8gbmlja2FzZXMsIGEgcHJvY2VzcyB0aGF0IHJlcXVpcmVkIGEgbW9yZSB0YXJnZXRlZCBhcHByb2FjaCB0aGFuIHJhbmRvbSBtdXRhZ2VuZXNpcyBkdWUgdG8gdGhlIHRpbWUgYW5kIGZpbmFuY2lhbCBjb25zdHJhaW50cyBvZiBvdXIgcHJvamVjdC4gUmFuZG9tIG11dGFnZW5lc2lzLCB3aGlsZSBhIHBvc3NpYmxlIHN0cmF0ZWd5LCB3b3VsZCBoYXZlIHJlcXVpcmVkIGFuIGV4dGVuc2l2ZSBzY29wZSwgbWFraW5nIGl0IGRpZmZpY3VsdCB0byBhY2hpZXZlIG1lYW5pbmdmdWwgcmVzdWx0cyB3aXRoaW4gb3VyIHRpbWVmcmFtZS4gQXMgYSByZXN1bHQsIHdlIGFpbWVkIHRvIGlkZW50aWZ5IHNwZWNpZmljIG11dGF0aW9uYWwgY2FuZGlkYXRlcyB0aGF0IHdvdWxkIGFsbG93IGZvciBhIG1vcmUgZm9jdXNlZCBhbmQgZWZmaWNpZW50IGFwcHJvYWNoLlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgICAgICAgICAgICBcdCAgICAgICAgIE9uZSBzdHJhdGVneSB3ZSBleHBsb3JlZCB3YXMgZmluZGluZyBhbiBlbmRvbnVjbGVhc2Ugd2l0aCBzdHJ1Y3R1cmFsIGFuZCBtZWNoYW5pc3RpYyBzaW1pbGFyaXRpZXMgdG8gU3B1RnoxIGFuZCBDYXNYLCBmb3Igd2hpY2ggYSBzdWNjZXNzZnVsIHByZWNlZGVudCBleGlzdGVkIGluIGNvbnZlcnRpbmcgYW4gZW5kb251Y2xlYXNlIGludG8gYSBuaWNrYXNlLiBBZnRlciBzdHVkeWluZyB0aGUgcGh5bG9nZW5ldGljIHJlbGF0aW9uc2hpcHMgb2YgU3B1RnoxIGFuZCBDYXNYLCB3ZSBpZGVudGlmaWVkIEFzQ2FzMTJhLCBhbiBlbmRvbnVjbGVhc2Ugd2l0aCBhIHNpbWlsYXIgc2VxdWVudGlhbCBETkEgY2xlYXZhZ2UgbWVjaGFuaXNtLiBJbXBvcnRhbnRseSwgdGhlcmUgd2FzIGFscmVhZHkgYSBrbm93biBleGFtcGxlIHdoZXJlIEFzQ2FzMTJhIGhhZCBiZWVuIGVuZ2luZWVyZWQgaW50byBhIG5pY2thc2UgdGhyb3VnaCBhIHNpbmdsZSBtdXRhdGlvblx1MjAxNHNwZWNpZmljYWxseSwgdGhlIG11dGF0aW9uIG9mIGFyZ2luaW5lIDEyMjYuIFRoaXMgcHJvdmlkZWQgYSBzdHJvbmcgZm91bmRhdGlvbiBmb3IgdXMgdG8gZGV2ZWxvcCBhIHNpbWlsYXIgc3RyYXRlZ3kgZm9yIFNwdUZ6MSBhbmQgQ2FzWC5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgV2UgaHlwb3RoZXNpemVkIHRoYXQgdGhlIHJvbGUgb2YgYXJnaW5pbmUgMTIyNiBpbiB0aGUgc2VxdWVudGlhbCBjbGVhdmFnZSBtZWNoYW5pc20gb2YgQXNDYXMxMmEgd2FzIHRvIGNvb3JkaW5hdGUgdGhlIEROQSBzdHJhbmRzIGR1cmluZyB0aGUgY3V0dGluZyBwcm9jZXNzLiBBc0NhczEyYSBwZXJmb3JtcyBhIHNlcXVlbnRpYWwgY3V0LCB3aGVyZSB0aGUgUnV2QyBkb21haW4gZmlyc3QgY2xlYXZlcyB0aGUgbm9uLXRhcmdldCBzdHJhbmQsIGFuZCB0aGUgVE5CIChOVUMpIGRvbWFpbiBoZWxwcyBndWlkZSB0aGUgdGFyZ2V0IHN0cmFuZCBpbnRvIHRoZSBSdXZDIGRvbWFpbiBmb3IgY2xlYXZhZ2UgKEZpZy4gNykuIFdlIHN1c3BlY3RlZCB0aGF0IGFyZ2luaW5lIDEyMjYgY291bGQgcGxheSBhIGtleSByb2xlIGluIHRoaXMgcHJvY2VzcyBieSBjb29yZGluYXRpbmcgdGhlIEROQSBkdWUgdG8gaXRzIGxvbmcsIHBvc2l0aXZlbHkgY2hhcmdlZCBzaWRlIGNoYWluLiBJZiByZW1vdmluZyBvciBtdXRhdGluZyB0aGlzIGFyZ2luaW5lIGRpc3J1cHRzIHRoZSBzZXF1ZW50aWFsIGN1dCwgaXQgd291bGQgc3VnZ2VzdCB0aGF0IHRoZSBhcmdpbmluZSBoZWxwcyBndWlkZSB0aGUgc2Vjb25kIHN0cmFuZCBpbnRvIHRoZSBSdXZDIGRvbWFpbi5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RydWN0dXJhbGx5LCB3ZSBvYnNlcnZlZCB0aGF0IGFyZ2luaW5lIDEyMjYgcHJvdHJ1ZGVzIGZyb20gdGhlIE5VQyBkb21haW4gb2YgQXNDYXMxMmEgYW5kIGlzIG9yaWVudGVkIHRvd2FyZCB0aGUgUnV2QyBkb21haW4gKEZpZy4gOCkuIFRoaXMgcG9zaXRpb25pbmcgbGVkIHVzIHRvIGh5cG90aGVzaXplIHRoYXQgdGhlIGFyZ2luaW5lIGhlbHBzIGNvb3JkaW5hdGUgdGhlIEROQSBzdHJhbmQgYXMgaXQgbW92ZXMgaW50byB0aGUgUnV2QyBkb21haW4gZm9yIGN1dHRpbmcuIEJhc2VkIG9uIHRoaXMgb2JzZXJ2YXRpb24sIHdlIHNwZWN1bGF0ZWQgdGhhdCB0aGUgbXV0YXRpb24gb2YgYXJnaW5pbmUgMTIyNiBkaXNydXB0cyB0aGlzIGNvb3JkaW5hdGlvbiwgcHJldmVudGluZyB0aGUgZnVsbCBkb3VibGUtc3RyYW5kIGN1dCBhbmQgZWZmZWN0aXZlbHkgY29udmVydGluZyBBc0NhczEyYSBpbnRvIGEgbmlja2FzZS5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8VHdvRmlndXJlUm93XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBpYzE9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9lbmdpbmVlcmluZy1jeWNsZS9hc2NhczEyYS1udWMtZG9tYWluLndlYnBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwaWMyPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvZW5naW5lZXJpbmctY3ljbGUvYXNjYXMxMmEtbnVjLWRvbWFpbi1jbG9zZS11cC53ZWJwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbnVtPXs3fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBudW0yPXs4fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjI9XCJDbG9zZS11cCBvZiBOVUMgZG9tYWluIChjb2xvcmVkIHB1cnBsZSkgb2YgQXNDYXMxMmEoUERCIGNvZGU6IDhTRkgpIC0gdGhlIGFyZ2luaW5lcyAoUikgKDEyMjZ0aCBhbWlubyBhY2lkIGluIHRoZSBwcmltYXJ5IHN0cnVjdHVyZSkgaXMgY29sb3JlZCB5ZWxsb3cuIEl0cyBwb3NpdGl2ZWx5IGNoYXJnZWQgc2lkZSBjaGFpbiBpcyBvcmllbnRlZCB0b3dhcmRzIHRoZSBSdXZDIGRvbWFpbiwgYXMgd2VsbCBhcyB0aGUgRE5BIHN0cmFuZCBmaXhhdGVkIGluIHRoZSBSdXZDIGRvbWFpblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uPVwiQXNDYXMxMmEgKFBEQiBjb2RlOiA4U0ZIKSB2aXN1YWxpemVkIGluIENoaW1lcmFYLiBUaGUgTlVDIGRvbWFpbiAoVE5CKSBpcyBjb2xvcmVkIHB1cnBsZSBhbmQgaXMgYXR0YWNoZWQgdG8gdGhlIFJ1dkMgZG9tYWluLiBUaGUgRE5BIHN0cmFuZCBpcyBjb2xvcmVkIG9yYW5nZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsdDE9XCJBc0NhczEyYSAoUERCIGNvZGU6IDhTRkgpIHZpc3VhbGl6ZWQgaW4gQ2hpbWVyYVguIFRoZSBOVUMgZG9tYWluIChUTkIpIGlzIGNvbG9yZWQgcHVycGxlIGFuZCBpcyBhdHRhY2hlZCB0byB0aGUgUnV2QyBkb21haW4uIFRoZSBETkEgc3RyYW5kIGlzIGNvbG9yZWQgb3JhbmdlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFdlIHRoZW4gYXBwbGllZCB0aGlzIHN0cnVjdHVyYWwgaW5zaWdodCB0byBTcHVGejEgYW5kIENhc1gsIHNlYXJjaGluZyBmb3IgcG9zaXRpdmVseSBjaGFyZ2VkIGFtaW5vIGFjaWRzIHdpdGggbG9uZyBzaWRlIGNoYWlucywgc2ltaWxhciB0byBhcmdpbmluZSAxMjI2LCB0aGF0IHdlcmUgcG9zaXRpb25lZCBhdCB0aGUgaW50ZXJmYWNlIGJldHdlZW4gdGhlIE5VQyBhbmQgUnV2QyBkb21haW5zLiBXZSBzcGVjaWZpY2FsbHkgbG9va2VkIGZvciBhbWlubyBhY2lkcyB0aGF0IHByb3RydWRlZCBmcm9tIHRoZSBOVUMgZG9tYWluIGFuZCBvcmllbnRlZCB0b3dhcmQgdGhlIFJ1dkMgZG9tYWluLCBtaXJyb3JpbmcgdGhlIHN0cnVjdHVyYWwgcm9sZSBvZiBhcmdpbmluZSAxMjI2IGluIEFzQ2FzMTJhLiBUaGVzZSBhbWlubyBhY2lkcyBiZWNhbWUgb3VyIG11dGF0aW9uYWwgdGFyZ2V0cywgYWxsb3dpbmcgdXMgdG8gZGVzaWduIGEgc3RyYXRlZ3kgdG8gY29udmVydCBTcHVGejEgYW5kIENhc1ggaW50byBuaWNrYXNlcyBieSBkaXNydXB0aW5nIHRoZWlyIGFiaWxpdHkgdG8gbWFrZSBkb3VibGUtc3RyYW5kIGN1dHMsIHdoaWxlIHByZXNlcnZpbmcgdGhlaXIgZnVuY3Rpb25hbGl0eSBmb3Igc2luZ2xlLXN0cmFuZCBjdXRzLiBUaGUgYW1pbm8gYWNpZHMgd2UgaWRlbnRpZmllZCBpbiBTcHVGejEgYXJlIHRoZSA1NjR0aCBhbmQgdGhlIDU2OHRoIGFyZ2luaW5lIGxvY2F0ZWQgaW4gaXRzIE5VQyBkb21haW4uIEZvciBDYXNYIHdlIGlkZW50aWZpZWQgdGhlIDkwNHRoIGFyZ2luaW5lIGFzIGEgcHJvbWlzaW5nIGNhbmRpZGF0ZS5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RldGFpbHM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvSW5mb0JveD4gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiQnVpbGRcIiBpZD1cImJ1aWxkLWhlYWRcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBXZSBzdHJ1Y3R1cmFsbHkgYW5hbHl6ZWQgQ2FzWCBhbmQgU3B1RnoxLCBhcyB3ZWxsIGFzIHRoZSBrbm93biBBc0NhczEyYSBuaWNrYXNlLCB1c2luZyBDaGltZXJhLiBPdXIgb2JqZWN0aXZlIHdhcyB0byB1bmRlcnN0YW5kIHdoeSB0aGUgc3BlY2lmaWMgYW1pbm8gYWNpZCBzdWJzdGl0dXRpb24gY29udmVydGVkIEFzQ2FzMTJhIGludG8gYSBuaWNrYXNlLiBXZSB0aGVuIGlkZW50aWZpZWQgYW5hbG9nb3VzIGFtaW5vIGFjaWRzIGluIFNwdUZ6MSAoRmlnLiA3IGFuZCBGaWcuIDgpIGFuZCBDYXNYIChGaWcuIDkgYW5kIEZpZy4gMTApIHRoYXQgbWlnaHQgcGxheSBhIHNpbWlsYXIgcm9sZSwgYWxsb3dpbmcgdXMgdG8gZGVzaWduIG5ldyBtdXRhdGlvbiBjYW5kaWRhdGVzIGZvciBvdXIgcHJvamVjdC4gQWZ0ZXIgZGVzaWduaW5nIHRoZXNlIG5ldyBtdXRhdGlvbiBjYW5kaWRhdGVzLCB3ZSBtb2RlbGVkIHRoZW0gdXNpbmcgQWxwaGFGb2xkIHRvIHByZWRpY3QgdGhlaXIgM0Qgc3RydWN0dXJlcyBhbmQgYXNzZXNzIHRoZWlyIHBvdGVudGlhbCBlZmZlY3RpdmVuZXNzLlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxUd29GaWd1cmVSb3dcclxuICAgICAgICAgICAgICAgICAgICAgICAgcGljMT1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2VuZ2luZWVyaW5nLWN5Y2xlL2Nhc3gtbmlrYXNlLndlYnBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBwaWMyPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvZW5naW5lZXJpbmctY3ljbGUvY2FzeC1uaWthc2UtY2xvc2UtdXAud2VicFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG51bT17OX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgbnVtMj17MTB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uMj1cIkNsb3NlLXVwIG9mIFBsbUNhc1ggKFBEQiBjb2RlOiA3V0FaKSAtIGFyZ2luaW5lIChSKSAoOTA0dGggYW1pbm8gYWNpZCBpbiB0aGUgcHJpbWFyeSBzdHJ1Y3R1cmUpIGFuZCBnbHV0YW1pbmUgKFEpICg5MDd0aCBhbWlubyBhY2lkIGluIHRoZSBwcmltYXJ5IHN0cnVjdHVyZSkgYXJlIHB1cnBsZSBpbiBjb2xvclwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGFsdDE9XCJTY2hlbWF0aWMgcmVwcmVzZW50YXRpb24gb2YgUGxtQ2FzWCAoUERCIGNvZGU6IDdXQVopIGluIENoaW1lcmFYIC0gdGhlIHllbGxvdyBjaXJjbGUgaGlnaGxpZ2h0cyB0aGUgcG9zaXRpb24gb2YgYXJnaW5pbmUgKFIpICg5MDR0aCBhbWlubyBhY2lkIGluIHRoZSBwcmltYXJ5IHN0cnVjdHVyZSkgYW5kIGdsdXRhbWluZSAoUSkgKDkwN3RoIGFtaW5vIGFjaWQgaW4gdGhlIHByaW1hcnkgc3RydWN0dXJlKSwgd2hpY2gsIHdoZW4gcmVwbGFjZWQgYnkgYW4gYWxhbmluZSAoQSksIGNvbnZlcnQgdGhlIGVuZG9udWNsZWFzZSBpbnRvIGEgbmlja2FzZSwgYWNjb3JkaW5nIHRvIG91ciBoeXBvdGhlc2lzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGVzY3JpcHRpb249XCJTY2hlbWF0aWMgcmVwcmVzZW50YXRpb24gb2YgUGxtQ2FzWCAoUERCIGNvZGU6IDdXQVopIGluIENoaW1lcmFYIC0gdGhlIHllbGxvdyBjaXJjbGUgaGlnaGxpZ2h0cyB0aGUgcG9zaXRpb24gb2YgYXJnaW5pbmUgKFIpICg5MDR0aCBhbWlubyBhY2lkIGluIHRoZSBwcmltYXJ5IHN0cnVjdHVyZSkgYW5kIGdsdXRhbWluZSAoUSkgKDkwN3RoIGFtaW5vIGFjaWQgaW4gdGhlIHByaW1hcnkgc3RydWN0dXJlKSwgd2hpY2gsIHdoZW4gcmVwbGFjZWQgYnkgYW4gYWxhbmluZSAoQSksIGNvbnZlcnQgdGhlIGVuZG9udWNsZWFzZSBpbnRvIGEgbmlja2FzZSwgYWNjb3JkaW5nIHRvIG91ciBoeXBvdGhlc2lzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgLz5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxUd29GaWd1cmVSb3dcclxuICAgICAgICAgICAgICAgICAgICAgICAgcGljMT1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2VuZ2luZWVyaW5nLWN5Y2xlL3NwdWZ6LW5pa2FzZS53ZWJwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgcGljMj1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2VuZ2luZWVyaW5nLWN5Y2xlL3NwdWZ6LW5pa2FzZS1jbG9zZS11cC53ZWJwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgbnVtPXsxMX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgbnVtMj17MTJ9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uMj1cIkNsb3NlLXVwIG9mIFNwdUZ6MSAoUERCIGNvZGU6IDhHS0gpIC0gdGhlIHR3byBhcmdpbmluZXMgKFIpICg1NjR0aCBhbmQgNTY4dGggYW1pbm8gYWNpZCBpbiB0aGUgcHJpbWFyeSBzdHJ1Y3R1cmUpIGFyZSBwdXJwbGUgaW4gY29sb3JcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBhbHQxPVwiU2NoZW1hdGljIHJlcHJlc2VudGF0aW9uIG9mIFNwdUZ6MSAoUERCIGNvZGU6IDhHS0gpIGluIENoaW1lcmFYIC0gdGhlIHllbGxvdyBjaXJjbGUgaGlnaGxpZ2h0cyB0aGUgcG9zaXRpb24gb2YgdGhlIHR3byBhcmdpbmluZXMgKFIpICg1NjR0aCBhbmQgNTY4dGggYW1pbm8gYWNpZCBpbiB0aGUgcHJpbWFyeSBzdHJ1Y3R1cmUpLCB3aGljaCwgd2hlbiByZXBsYWNlZCBieSBhbiBhbGFuaW5lIChBKSwgdHJhbnNmb3JtIHRoZSBlbmRvbnVjbGVhc2UgaW50byBhIG5pY2thc2UgYWNjb3JkaW5nIHRvIG91ciBoeXBvdGhlc2lzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGVzY3JpcHRpb249XCJTY2hlbWF0aWMgcmVwcmVzZW50YXRpb24gb2YgU3B1RnoxIChQREIgY29kZTogOEdLSCkgaW4gQ2hpbWVyYVggLSB0aGUgeWVsbG93IGNpcmNsZSBoaWdobGlnaHRzIHRoZSBwb3NpdGlvbiBvZiB0aGUgdHdvIGFyZ2luaW5lcyAoUikgKDU2NHRoIGFuZCA1Njh0aCBhbWlubyBhY2lkIGluIHRoZSBwcmltYXJ5IHN0cnVjdHVyZSksIHdoaWNoLCB3aGVuIHJlcGxhY2VkIGJ5IGFuIGFsYW5pbmUgKEEpLCB0cmFuc2Zvcm0gdGhlIGVuZG9udWNsZWFzZSBpbnRvIGEgbmlja2FzZSBhY2NvcmRpbmcgdG8gb3VyIGh5cG90aGVzaXNcIiAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC8+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8SDQgdGV4dD1cIlRlc3RcIiBpZD1cInRlc3QtaGVhZFwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFRvIHZhbGlkYXRlIG91ciBhcHByb2FjaCwgd2UgY29uZHVjdGVkIGFuIGludGVydmlldyB3aXRoIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlc0FuZE9wZW5UYWIoJ3NhaXRvJywgJy9odW1hbi1wcmFjdGljZXMnKX0+IE1ha290byBTYWl0byA8L2E+LCB0aGUgbGVhZCBhdXRob3Igb2YgdGhlIG1haW4gRmFuem9yIHBhcGVyLiBHaXZlbiBoaXMgZXhwZXJ0aXNlLCB0aGVyZSB3YXMgbm8gYmV0dGVyIHBlcnNvbiB0byBjb25zdWx0IG9uIHRoaXMgdG9waWMuIFdlIHByZXNlbnRlZCBvdXIgcHJvamVjdCBhbmQgb3VyIHN0cmF0ZWd5IGZvciBjcmVhdGluZyBuaWNrYXNlcywgYW5kIGhlIGZvdW5kIG91ciBhcHByb2FjaCB0byBiZSB2ZXJ5IHBsYXVzaWJsZS4gSGUgY29uZmlybWVkIHRoYXQgdGhlIHppbmMgZmluZ2VyIG11dGF0aW9uIGlzIGxpa2VseSBzdHJ1Y3R1cmFsbHkgY3JpdGljYWwgYW5kIGFncmVlZCB0aGF0IG91ciBuZXcgc3RyYXRlZ3ksIGJhc2VkIG9uIHRoZSBwcmVjZWRlbnQgd2l0aCBBc0NhczEyYSwgd2FzIG1vcmUgcHJvbWlzaW5nLiBUaGlzIGNvbnZlcnNhdGlvbiBnYXZlIHVzIGNvbmZpZGVuY2UgdGhhdCB3ZSB3ZXJlIG9uIGEgZ29vZCB0cmFjay5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8SDQgdGV4dD1cIkxlYXJuXCIgaWQ9XCJsZWFybi1oZWFkXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgRnJvbSB0aGlzIGl0ZXJhdGlvbiwgd2UgZ2FpbmVkIHNldmVyYWwga2V5IGluc2lnaHRzLiBGaXJzdCwgb3VyIGluaXRpYWwgdW5kZXJzdGFuZGluZyBvZiB0aGUgY3V0dGluZyBtZWNoYW5pc20gdXNlZCBieSBTcHVGejFcdTIwMTRiYXNlZCBvbiB0aGUgYXNzdW1wdGlvbiB0aGF0IGl0IGNvbnRhaW5lZCB0d28gYWN0aXZlIGNlbnRlcnMsIGxpa2UgQ2FzOSwgZWFjaCBjdXR0aW5nIGEgRE5BIHN0cmFuZFx1MjAxNHdhcyBpbmNvcnJlY3QuIFdlIGRpc2NvdmVyZWQgdGhhdCBTcHVGejEgb3BlcmF0ZXMgZGlmZmVyZW50bHksIHdpdGggdGhlIFJ1dkMgZG9tYWluIGN1dHRpbmcgdGhlIG5vbi10YXJnZXQgc3RyYW5kIGFuZCB0aGUgVE5CIGRvbWFpbiBhc3Npc3RpbmcgYnkgZ3VpZGluZyB0aGUgdGFyZ2V0IHN0cmFuZCBpbnRvIHRoZSBSdXZDIGRvbWFpbiBmb3Igc2VxdWVudGlhbCBjbGVhdmFnZS4gVGhpcyBzaGlmdCBpbiB1bmRlcnN0YW5kaW5nIGFsbG93ZWQgdXMgdG8gcmVmaW5lIG91ciBhcHByb2FjaCwgbW92aW5nIGF3YXkgZnJvbSBkZWFjdGl2YXRpbmcgYW4gYWN0aXZlIHNpdGUgdG8gZm9jdXNpbmcgb24gdGhlIHNlcXVlbnRpYWwgY3V0dGluZyBtZWNoYW5pc20uXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZGl0aW9uYWxseSwgd2UgZm91bmQgdGhhdCBGYW56b3IgZW5kb251Y2xlYXNlcywgbGlrZSBTcHVGejEsIHNoYXJlIGEgc2lnbmlmaWNhbnQgcGh5bG9nZW5ldGljIHJlbGF0aW9uc2hpcCB3aXRoIENhczEyIGVuZG9udWNsZWFzZXMsIHdoaWNoIGhhdmUgYSBzaW1pbGFyIHNpbmdsZS1zaXRlIGN1dHRpbmcgbWVjaGFuaXNtLiBUaGlzIGNvbm5lY3Rpb24sIGFsb25nIHdpdGggdGhlIHByZWNlZGVudCBvZiBjb252ZXJ0aW5nIENhczEyYSBpbnRvIGEgbmlja2FzZSB0aHJvdWdoIHRoZSBzdWJzdGl0dXRpb24gb2YgYSBzaW5nbGUgYW1pbm8gYWNpZCBpbiB0aGUgVE5CIGRvbWFpbiwgcHJvdmlkZWQgdXMgd2l0aCBhIGNsZWFyIHN0cmF0ZWd5IGZvciBjb252ZXJ0aW5nIFNwdUZ6MSBhbmQgQ2FzWCBpbnRvIG5pY2thc2VzLiBUaGUgc2ltaWxhcml0eSBpbiBjdXR0aW5nIG1lY2hhbmlzbXMgYmV0d2VlbiBGYW56b3IgYW5kIENhczEyIHByb3RlaW5zIHJlaW5mb3JjZWQgdGhlIHZpYWJpbGl0eSBvZiB0aGlzIGFwcHJvYWNoLlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBUaGlzIGl0ZXJhdGlvbiBsZWQgdXMgdG8gaW5jb3Jwb3JhdGUgQ2FzWCwgYSBzbWFsbGVyIENhczEyLXJlbGF0ZWQgZW5kb251Y2xlYXNlLCBpbnRvIG91ciBwcm9qZWN0LiBDYXNYIG9mZmVycyB0aGUgc2FtZSBhZHZhbnRhZ2VzIGFzIFNwdUZ6MSwgc3VjaCBhcyBhIGNvbXBhY3Qgc3RydWN0dXJlLCBtYWtpbmcgaXQgaWRlYWwgZm9yIGFwcGxpY2F0aW9ucyB0aGF0IHJlcXVpcmUgc21hbGxlciBlZGl0aW5nIHN5c3RlbXMuIEFkZGl0aW9uYWxseSwgd2UgYWRhcHRlZCB0aGUgbXV0YXRpb24gc3RyYXRlZ3kgdXNlZCB0byBjb252ZXJ0IENhczEyYSBpbnRvIGEgbmlja2FzZSBmb3IgYm90aCBDYXNYIGFuZCBTcHVGejEsIGd1aWRpbmcgb3VyIGZ1dHVyZSB3b3JrIGluIG9wdGltaXppbmcgdGhlIFByaW1lIEVkaXRpbmcgY29tcGxleC5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJib3hcIiA+XHJcbiAgICAgICAgICAgICAgICAgICAgIDxwIGlkPVwibmljNVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8SDMgdGV4dD1cIk9uZ29pbmc6IEluIFZpdHJvIENsZWF2YWdlIEFzc2F5c1wiIGlkPVwibmljNWhlYWRcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiRGVzaWduXCIgaWQ9XCJkZXNpZ24taGVhZFwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIEluIHRoaXMgaXRlcmF0aW9uLCBvdXIgZm9jdXMgc2hpZnRlZCB0byB0ZXN0aW5nIHdoZXRoZXIgb3VyIG11dGF0aW9uIGNhbmRpZGF0ZXMgaGFkIHN1Y2Nlc3NmdWxseSBjb252ZXJ0ZWQgdGhlIGVuZG9udWNsZWFzZXMgaW50byBmdW5jdGlvbmFsIG5pY2thc2VzLiBUbyBkbyB0aGlzLCB3ZSBhZGFwdGVkIGFuIGV4aXN0aW5nIGFzc2F5IHRoYXQgaGFkIGJlZW4gb3JpZ2luYWxseSBkZXNpZ25lZCB0byBkZXRlcm1pbmUgd2hldGhlciBtdXRhdGVkIGVuZG9udWNsZWFzZXMgZXhoaWJpdGVkIG5pY2thc2UgYWN0aXZpdHk8VGFiU2Nyb2xsTGluayB0YWI9XCJ0YWItbmlja2FzZVwiIG51bT1cIjI1XCIgc2Nyb2xsSWQ9XCJkZXNjLTI1XCIvPi4gV2UgdGFpbG9yZWQgdGhpcyBhc3NheSB0byBmaXQgb3VyIHNwZWNpZmljIG5lZWRzLCBhbGxvd2luZyB1cyB0byBhY2N1cmF0ZWx5IGFzc2VzcyB0aGUgcHJvcGVydGllcyBvZiBvdXIgbXV0YXRlZCBwcm90ZWlucyBpbiB0aGUgbGFiLiBUaGUga2V5IHF1ZXN0aW9uIHdhcyB3aGV0aGVyIHRoZSBtdXRhdGlvbnMgaGFkIHJlbmRlcmVkIHRoZSBwcm90ZWlucyBkeXNmdW5jdGlvbmFsLCBsZWZ0IHRoZW0gYXMgZW5kb251Y2xlYXNlcywgb3Igc3VjY2Vzc2Z1bGx5IGNvbnZlcnRlZCB0aGVtIGludG8gbmlja2FzZXMuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJCdWlsZFwiIGlkPVwiYnVpbGQtaGVhZFwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFdlIHN0YXJ0ZWQgb2ZmIGJ5IGFtcGxpZmljYXRpb24gb2Ygb3VyIG5pY2thc2UgY2FuZGlkYXRlcywgb3JkZXJlZCBhcyBnZW5lIHN5bnRoZXNlcywgdG8gYWRkIHJlc3RyaWN0aW9uIHNpdGVzLiBXZSB0aGVuIGZhY2lsaXRhdGVkIHJlc3RyaWN0aW9uIGNsb25pbmcgb2YgdGhlIGFtcGxpZmljYXRlcyBpbnRvIGFuIEUuIGNvbGkgcHJvdGVpbiBleHByZXNzaW9uIHZlY3RvciBwcm92aWRlZCBieSB0aGUgbGFib3JhdG9yeSBvZiBvciBQSSBLcmlzdGlhbiBNXHUwMEZDbGxlci4gV2Ugc3Vic2VxdWVudGx5IHRyYW5zZm9ybWVkIEUuIGNvbGkgd2l0aCB0aGUgZ2VuZSBmcmFnbWVudHMgb2Ygb3VyIG5pY2thc2UgY2FuZGlkYXRlcyBmb3IgQ2FzWCBhbmQgU3B1RnouIEhvd2V2ZXIsIHRoZSB0cmFuc2Zvcm1hbnQgY2VsbHMgZGlkIG5vdCBncm93LCBsZWFkaW5nIHVzIHRvIHN1c3BlY3QgdGhhdCB0aGUgcGxhc21pZCBiYWNrYm9uZSB3ZSByZWNlaXZlZCBtYXliZSBpbXBhaXJlZCBpbiBzb21lIHdheS4gR2l2ZW4gdGhlIHRpbWVsaW5lLCB3ZSB3ZXJlIG5vdCBhYmxlIHRvIGNvbXBsZXRlIHRoZSB0ZXN0aW5nIG9mIG91ciBuaWNrYXNlIGNhbmRpZGF0ZXMuIE91ciBjdXJyZW50IHN0ZXBzIGludm9sdmUgdHJvdWJsZXNob290aW5nIHJlZ2FyZGluZyB0aGUgcmVzdHJpY3Rpb24gY2xvbmluZyBhbmQgY29udGludWluZyB3aXRoIHByb3RlaW4gZXhwcmVzc2lvbiBhbmQgcHVyaWZpY2F0aW9uIG9uY2UgdGhlIGlzc3VlIGlzIHJlc29sdmVkLlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiVGVzdFwiIGlkPVwidGVzdC1oZWFkXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgVGhlIG5leHQgcGhhc2Ugb2Ygb3VyIHBsYW4sIG9uY2Ugd2Ugb3ZlcmNvbWUgdGhlIGN1cnJlbnQgaXNzdWVzIHdpdGggY2xvbmluZyBhbmQgc3VjY2Vzc2Z1bGx5IG92ZXJleHByZXNzIG91ciBuaWNrYXNlIGNhbmRpZGF0ZXMsIHdvdWxkIGludm9sdmUgY29uZHVjdGluZyBhbiBpbiB2aXRybyBwbGFzbWlkIGNsZWF2YWdlIGFzc2F5IChGaWcuIDEzKS4gSW4gdGhpcyBhc3NheSwgdGhlIHB1cmlmaWVkIG5pY2thc2VzIHdvdWxkIGJlIGNvbWJpbmVkIHdpdGggdGhlaXIgcmVzcGVjdGl2ZSBndWlkZSBSTkFzIGFuZCBhIHN1cGVyY29pbGVkIHRlc3QgcGxhc21pZC4gVGhlIGd1aWRlIFJOQXMgd291bGQgZGlyZWN0IHRoZSBuaWNrYXNlcyB0byB0aGUgdGFyZ2V0IHNlcXVlbmNlIG9uIHRoZSBwbGFzbWlkLiBEZXBlbmRpbmcgb24gdGhlIHJlc3VsdHMsIHRoZSBwbGFzbWlkIHdvdWxkIHJlbWFpbiBzdXBlcmNvaWxlZCBpZiB1bnRvdWNoZWQsIGJlY29tZSByZWxheGVkIGlmIG5pY2tlZCwgb3IgYmUgbGluZWFyaXplZCBpZiBjdXQgYnkgYW4gZW5kb251Y2xlYXNlLiBUbyBhbmFseXplIHRoZXNlIG91dGNvbWVzLCB3ZSB3b3VsZCBwZXJmb3JtIGdlbCBlbGVjdHJvcGhvcmVzaXMsIHdoZXJlIHRoZSBkaWZmZXJlbnQgY29uZm9ybWF0aW9ucyBvZiB0aGUgcGxhc21pZCAoc3VwZXJjb2lsZWQsIHJlbGF4ZWQsIG9yIGxpbmVhcml6ZWQpIHdvdWxkIG1pZ3JhdGUgZGlmZmVyZW50bHkgdGhyb3VnaCB0aGUgZ2VsLiBTdXBlcmNvaWxlZCBwbGFzbWlkcyB3b3VsZCBtaWdyYXRlIHRoZSBmdXJ0aGVzdCwgcmVsYXhlZCBwbGFzbWlkcyB3b3VsZCBtb3ZlIHRoZSBzbG93ZXN0LCBhbmQgbGluZWFyaXplZCBwbGFzbWlkcyB3b3VsZCBmYWxsIGJldHdlZW4gdGhlc2UgdHdvLiBBcyBjb250cm9scywgd2Ugd291bGQgaGF2ZSB1c2VkIHRoZSBwbGFzbWlkIGluIGl0cyB1bmN1dCBmb3JtLCBuaWNrZWQgYnkgbkNhczkgYW5kIGRpZ2VzdGVkIHVzaW5nIGEgcmVzdHJpY3Rpb24gZW56eW1lLlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiTGVhcm5cIiBpZD1cImxlYXJuLWhlYWRcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBJZiB3ZSBjb3VsZCBoYXZlIHByb2NlZWRlZCB3aXRoIHRoZSBuaWNrYXNlIGFzc2F5cywgdGhlIHJlYWRvdXQgd291bGQgYWxsb3cgdXMgdG8gZGV0ZXJtaW5lIHdoZXRoZXIgdGhlIHRlc3RlZCBwcm90ZWlucyBmdW5jdGlvbiBhcyBuaWNrYXNlcywgZW5kb251Y2xlYXNlcywgb3IgcmVtYWluIGluYWN0aXZlLlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICA8T25lRmlndXJlIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBwaWMxPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvZW5naW5lZXJpbmctY3ljbGUvbmlja2FzZS1hc3NheS53ZWJwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgbnVtPXsxM31cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVzY3JpcHRpb249XCJUaGVvcmV0aWNhbCBnZWwgZWxlY3Ryb3Bob3Jlc2lzIHJlc3VsdHMgZm9yIG91ciBuaWNrYXNlIGFzc2F5LiBMYW5lcyAxIGFuZCA4IHJlcHJlc2VudCBtb2xlY3VsYXIgd2VpZ2h0IGxhZGRlcnMsIHdoaWNoIHByb3ZpZGUgc2l6ZSBtYXJrZXJzIGZvciB0aGUgcGxhc21pZCBmcmFnbWVudHMuIExhbmUgMiBjb250YWlucyB0aGUgdW50cmVhdGVkIHJlcG9ydGVyIHBsYXNtaWQsIHdoaWNoIHJlbWFpbnMgc3VwZXJjb2lsZWQgYW5kIHRyYXZlbHMgdGhlIGZhcnRoZXN0IHRocm91Z2ggdGhlIGdlbC4gTGFuZSAzIHNlcnZlcyBhcyBhIHBvc2l0aXZlIGNvbnRyb2wsIGNvbnRhaW5pbmcgbkNhczksIGdSTkEsIGFuZCB0aGUgcmVwb3J0ZXIgcGxhc21pZC4gVGhlIG5DYXM5IG5pY2thc2Ugbmlja3MgdGhlIHBsYXNtaWQsIHJlbGF4aW5nIGl0cyBzdHJ1Y3R1cmUsIGFuZCBhcyBhIHJlc3VsdCwgdGhlIHJlbGF4ZWQgY2lyY3VsYXIgcGxhc21pZCBtb3ZlcyBzbG93ZXIgdGhhbiB0aGUgc3VwZXJjb2lsZWQgZm9ybS4gTGFuZSA0IGFjdHMgYXMgYSBuZWdhdGl2ZSBjb250cm9sLCBjb250YWluaW5nIGEgcmVzdHJpY3Rpb24gZW56eW1lIGFuZCB0aGUgcmVwb3J0ZXIgcGxhc21pZC4gVGhlIGVuenltZSBmdWxseSBjdXRzIHRoZSBwbGFzbWlkLCBsaW5lYXJpemluZyBpdCwgYW5kIHRoaXMgbGluZWFyIGZvcm0gbW92ZXMgc2xvd2VyIHRoYW4gdGhlIHN1cGVyY29pbGVkIHBsYXNtaWQgYnV0IGZhc3RlciB0aGFuIHRoZSByZWxheGVkIGNpcmN1bGFyIGZvcm0uIExhbmUgNSBpbmNsdWRlcyBDYXNYIGFuZCB0aGUgcmVwb3J0ZXIgcGxhc21pZCB3aXRob3V0IGdSTkEsIG1lYW5pbmcgbm8gY2xlYXZhZ2Ugb2NjdXJzLCBsZWF2aW5nIHRoZSBwbGFzbWlkIGluIGl0cyBzdXBlcmNvaWxlZCBzdGF0ZSwgd2hpY2ggbWlncmF0ZXMgc2ltaWxhcmx5IHRvIHRoZSB1bnRyZWF0ZWQgcGxhc21pZCBpbiBsYW5lIDIuIExhbmUgNiBjb250YWlucyBDYXNYLCBnUk5BLCBhbmQgdGhlIHJlcG9ydGVyIHBsYXNtaWQsIHJlc3VsdGluZyBpbiBmdWxsIGNsZWF2YWdlIGFuZCBwbGFzbWlkIGxpbmVhcml6YXRpb24sIGNhdXNpbmcgaXQgdG8gbWlncmF0ZSBzaW1pbGFybHkgdG8gdGhlIGxpbmVhciBwbGFzbWlkIGluIGxhbmUgNC4gRmluYWxseSwgbGFuZSA3IGluY2x1ZGVzIG91ciBuaWNrYXNlIGNhbmRpZGF0ZSAoZWl0aGVyIENhc1ggb3IgU3B1RnoxKSwgZ1JOQSwgYW5kIHRoZSByZXBvcnRlciBwbGFzbWlkLiBJZGVhbGx5LCB0aGUgY2FuZGlkYXRlIHdvdWxkIG5pY2sgdGhlIHBsYXNtaWQsIHJlc3VsdGluZyBpbiBhIHJlbGF4ZWQgY2lyY3VsYXIgZm9ybSB0aGF0IG1vdmVzIHNpbWlsYXJseSB0byB0aGUgbmlja2VkIHBsYXNtaWQgaW4gbGFuZSAzLlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsdDE9XCJUaGVvcmV0aWNhbCBnZWwgZWxlY3Ryb3Bob3Jlc2lzIHJlc3VsdHMgZm9yIG91ciBuaWNrYXNlIGFzc2F5LiBMYW5lcyAxIGFuZCA4IHJlcHJlc2VudCBtb2xlY3VsYXIgd2VpZ2h0IGxhZGRlcnMsIHdoaWNoIHByb3ZpZGUgc2l6ZSBtYXJrZXJzIGZvciB0aGUgcGxhc21pZCBmcmFnbWVudHMuIExhbmUgMiBjb250YWlucyB0aGUgdW50cmVhdGVkIHJlcG9ydGVyIHBsYXNtaWQsIHdoaWNoIHJlbWFpbnMgc3VwZXJjb2lsZWQgYW5kIHRyYXZlbHMgdGhlIGZhcnRoZXN0IHRocm91Z2ggdGhlIGdlbC4gTGFuZSAzIHNlcnZlcyBhcyBhIHBvc2l0aXZlIGNvbnRyb2wsIGNvbnRhaW5pbmcgbkNhczksIGdSTkEsIGFuZCB0aGUgcmVwb3J0ZXIgcGxhc21pZC4gVGhlIG5DYXM5IG5pY2thc2Ugbmlja3MgdGhlIHBsYXNtaWQsIHJlbGF4aW5nIGl0cyBzdHJ1Y3R1cmUsIGFuZCBhcyBhIHJlc3VsdCwgdGhlIHJlbGF4ZWQgY2lyY3VsYXIgcGxhc21pZCBtb3ZlcyBzbG93ZXIgdGhhbiB0aGUgc3VwZXJjb2lsZWQgZm9ybS4gTGFuZSA0IGFjdHMgYXMgYSBuZWdhdGl2ZSBjb250cm9sLCBjb250YWluaW5nIGEgcmVzdHJpY3Rpb24gZW56eW1lIGFuZCB0aGUgcmVwb3J0ZXIgcGxhc21pZC4gVGhlIGVuenltZSBmdWxseSBjdXRzIHRoZSBwbGFzbWlkLCBsaW5lYXJpemluZyBpdCwgYW5kIHRoaXMgbGluZWFyIGZvcm0gbW92ZXMgc2xvd2VyIHRoYW4gdGhlIHN1cGVyY29pbGVkIHBsYXNtaWQgYnV0IGZhc3RlciB0aGFuIHRoZSByZWxheGVkIGNpcmN1bGFyIGZvcm0uIExhbmUgNSBpbmNsdWRlcyBDYXNYIGFuZCB0aGUgcmVwb3J0ZXIgcGxhc21pZCB3aXRob3V0IGdSTkEsIG1lYW5pbmcgbm8gY2xlYXZhZ2Ugb2NjdXJzLCBsZWF2aW5nIHRoZSBwbGFzbWlkIGluIGl0cyBzdXBlcmNvaWxlZCBzdGF0ZSwgd2hpY2ggbWlncmF0ZXMgc2ltaWxhcmx5IHRvIHRoZSB1bnRyZWF0ZWQgcGxhc21pZCBpbiBsYW5lIDIuIExhbmUgNiBjb250YWlucyBDYXNYLCBnUk5BLCBhbmQgdGhlIHJlcG9ydGVyIHBsYXNtaWQsIHJlc3VsdGluZyBpbiBmdWxsIGNsZWF2YWdlIGFuZCBwbGFzbWlkIGxpbmVhcml6YXRpb24sIGNhdXNpbmcgaXQgdG8gbWlncmF0ZSBzaW1pbGFybHkgdG8gdGhlIGxpbmVhciBwbGFzbWlkIGluIGxhbmUgNC4gRmluYWxseSwgbGFuZSA3IGluY2x1ZGVzIG91ciBuaWNrYXNlIGNhbmRpZGF0ZSAoZWl0aGVyIENhc1ggb3IgU3B1RnoxKSwgZ1JOQSwgYW5kIHRoZSByZXBvcnRlciBwbGFzbWlkLiBJZGVhbGx5LCB0aGUgY2FuZGlkYXRlIHdvdWxkIG5pY2sgdGhlIHBsYXNtaWQsIHJlc3VsdGluZyBpbiBhIHJlbGF4ZWQgY2lyY3VsYXIgZm9ybSB0aGF0IG1vdmVzIHNpbWlsYXJseSB0byB0aGUgbmlja2VkIHBsYXNtaWQgaW4gbGFuZSAzLlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImJveFwiID5cclxuICAgICAgICAgICAgICAgICAgICAgPHAgaWQ9XCJuaWM2XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxIMyB0ZXh0PVwiT25nb2luZzogU3B1RnoxIGV4cHJlc3Npb24gaW4gWWVhc3RcIiBpZD1cIm5pYzZoZWFkXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8SDQgdGV4dD1cIkRlc2lnblwiIGlkPVwiZGVzaWduLWhlYWRcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBXaGVuIHRhbGtpbmcgdG8gPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VzQW5kT3BlblRhYignc2FpdG8nLCAnL2h1bWFuLXByYWN0aWNlcycpfT4gTWFrb3RvIFNhaXRvIDwvYT4sIGhlIHRvbGQgdXMgdGhhdCBleHByZXNzaW5nIFNwdUZ6MSBpbiBFLiBjb2xpIGRpZCBub3Qgd29yayBmb3IgaGltLiBIZSBhZHZpc2VkIHVzIHRvIGluc3RlYWQgZXN0YWJsaXNoIGEgeWVhc3QgZXhwcmVzc2lvbiBzeXN0ZW0uIFNpbmNlIG5vbmUgb2YgdXMgaGFkIGFueSBleHBlcmllbmNlIHdpdGggdXNpbmcgeWVhc3QgZm9yIHByb3RlaW4gcHJvZHVjdGlvbiwgd2UgcmVhY2hlZCBvdXQgdG8gPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VzQW5kT3BlblRhYignbmJlcmVsc21hbm4nLCAnL2h1bWFuLXByYWN0aWNlcycpfT4gTmlscyBCZXJlbHNtYW5uIDwvYT4gYXQgdGhlIGZhY3VsdHkgb2YgY2hlbWlzdHJ5IGF0IG91ciB1bml2ZXJzaXR5LiBIZSB3YXMgYWJsZSB0byBwcm92aWRlIHVzIHdpdGggYSB5ZWFzdCBleHByZXNzaW9uIHN0cmFpbiBhcyB3ZWxsIGFzIHRoZSBjb3JyZXNwb25kaW5nIGV4cHJlc3Npb24gdmVjdG9yLiBCZWNhdXNlIHdlIHdlcmUgc3Ryb25nbHkgcmVzdHJpY3RlZCBieSB0aW1lIGF0IHRoYXQgcG9pbnQsIHdlIHRoZW4gYXNrZWQgPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VzQW5kT3BlblRhYignaGFrYW4nLCAnL2h1bWFuLXByYWN0aWNlcycpfT4gSGFrYW4gU295dFx1MDBGQ3JrIDwvYT4gZnJvbSB0aGUgYmlvbG9naWNhbCBmYWN1bHR5IGZvciBoZWxwIGFuZCBoZSBvZmZlcmVkIHRvIGZhY2lsaXRhdGUgdHJhbnNmb3JtYXRpb24gYW5kIHNlbGVjdGlvbiBvZiBwb3NpdGl2ZSBZZWFzdCB0cmFuc2Zvcm1hbnRzIGZvciB1cy5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8SDQgdGV4dD1cIkJ1aWxkXCIgaWQ9XCJidWlsZC1oZWFkXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgVGhlIHdvcmtmbG93IGZvciBjbG9uaW5nIFNwdUZ6MSBhbXBsaWZpY2F0ZXMgaW50byB0aGUgcFBJQzlLIHllYXN0IHZlY3RvciB3YXMgc2ltaWxhciB0byB0aGUgY2xvbmluZyBpbnRvIHRoZSBFLiBjb2xpIGV4cHJlc3Npb24gdmVjdG9yLiBBZnRlciBtdWx0aXBsZSBhdHRlbXB0cyBvZiB0cmFuc2Zvcm1hdGlvbnMgYW5kIGNvbG9ueSBQQ1JzIHdlIGZvdW5kIHBvc2l0aXZlIGNsb25lcyBmb3IgdHdvIG9mIHRoZSBuaWNrYXNlIHZhcmlhbnRzLiBIYWthbiB0cmFuc2Zvcm1lZCB0aGVtIGludG8gdGhlIHllYXN0IHN0cmFpbiBmb3IgdXMsIGJ1dCBubyBjb2xvbmllcyBmb3JtZWQsIGluZGljYXRpbmcgdW5zdWNjZXNzZnVsIHRyYW5zZm9ybWF0aW9uLiBEdWUgdG8gdGltZSBjb25zdHJhaW50cywgd2Ugd2VyZSBub3QgYWJsZSB0byByZXBlYXQgdGhlIGNsb25pbmcuIEhvd2V2ZXIsIHRlc3Rpbmcgb3VyIFNwdUZ6MSBhbmQgYWxzbyBDYXNYIG5pY2thc2UgY2FuZGlkYXRlcyBhbmQgZXZlbnR1YWxseSB1c2luZyB0aGVtIGZvciBwcmltZSBlZGl0aW5nLlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSdyb3cgYWxpZ24taXRlbXMtY2VudGVyJz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J2NvbCc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxUd29MaW5lUERGIGxpbms9J2h0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3BkZnMvY2xvbmluZy1zdHJhdGVneS1zcHVmejEucGRmJyBuYW1lPVwiY2xvbmluZy1zdHJhdGVneS1zcHVmejEucGRmXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J3NlcGVyYXRvci0yIGNvbC0yJz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSdjb2wnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICA8VHdvTGluZVBERiBsaW5rPSdodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9wZGZzL2Nsb25pbmctc3RyYXRlZ3ktcGxtY2FzeC5wZGYnIG5hbWU9XCJjbG9uaW5nLXN0cmF0ZWd5LXBsbWNhc3gucGRmXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSdyb3cgYWxpZ24taXRlbXMtY2VudGVyJz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J2NvbCc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxQREYgbGluaz0naHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGRmcy9jbG9uaW5nLXN0cmF0ZWd5LWNhczkucGRmJyBuYW1lPVwiY2xvbmluZy1zdHJhdGVneS1jYXM5LnBkZidcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgIDxTZWN0aW9uIHRpdGxlPVwiUmVmZXJlbmNlc1wiIGlkPVwicmVmZXJlbmNlc1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICA8RW5nTmlja3NvdXJjZXMvPlxyXG4gICAgICAgICAgICAgICAgICA8L1NlY3Rpb24+XHJcbiAgICAgICAgICAgICAgICAgIDxici8+XHJcbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93IFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImxlZnRcIj48QnV0dG9uT25lRW5naW5lZXJpbmcgbGFiZWw9XCJQcmV2aW91c1wiIG9wZW49XCJwZWdybmFcIiBzY3JvbGxUb0lkPVwicGVncm5hLWhlYWRlclwiLz48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sIGJ1dHRvbi1sZWZ0XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicmlnaHRcIj48QnV0dG9uT25lRW5naW5lZXJpbmcgbGFiZWw9XCJOZXh0XCIgb3Blbj1cImRlbGl2ZXJ5XCIgc2Nyb2xsVG9JZD1cImRlbGl2ZXJ5LWhlYWRlclwiLz48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICA8L3NlY3Rpb24+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJlbmdpbm5lZXJpbmd0YWJcIiBpZD1cInRhYi1kZWxpdmVyeVwiIHN0eWxlPXt7ZGlzcGxheTogXCJub25lXCJ9fT5cclxuICAgICAgICAgICAgICAgPHNlY3Rpb24gaWQ9XCJEZWxpdmVyeSBzZWNcIiA+XHJcbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZW5nLWJveCBib3hcIiA+XHJcbiAgICAgICAgICAgICAgICAgICAgIDxIMiBpZD1cImRlbGl2ZXJ5LWhlYWRlclwiIHRleHQ9XCJEZWxpdmVyeVwiPjwvSDI+XHJcbiAgICAgICAgICAgICAgICAgICAgIDxwPlRoZSBkZXNpZ24gcGF0aCBvZiBvdXIgbGlwaWQgbmFub3BhcnRpY2xlIChMTlApIGZvciBtUk5BIGRlbGl2ZXJ5IHVuZGVyd2VudCBtdWx0aXBsZSBjeWNsZXMgb2YgcmVzZWFyY2ggYW5kIGRpc2N1c3Npb24sIG1hcmtlZCBieSBpbXBvcnRhbnQgZGVjaXNpb24gcG9pbnRzIGFuZCBsZWFybmluZ3MgYWxvbmcgdGhlIHdheS4gQnkgb25nb2luZyBmdXJ0aGVyIGltcHJvdmVtZW50LCB3ZSBkZXNpZ25lZCBvdXIgbHVuZ3Mtc3BlY2lmaWMgTE5QIGNhbGxlZCBBaXJCdWRkeSB3aXRoIGltcHJvdmVkIHN0YWJpbGl0eSBhc3BlY3RzLCBiZWNvbWluZyBtb3JlIHByZWNpc2UgaW4gdGhlIGRlbGl2ZXJ5IG9mIG91ciB0aGVyYXBldXRpYyBjYXJnbyBMTlAgYnkgTE5QLjwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3cgYWxpZ24taXRlbXMtY2VudGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvZGVsaXZlcnkvYWlyYnVkZHkud2VicFwiIGNsYXNzTmFtZT1cImNlbnRlclwiIHN0eWxlPXt7bWF4SGVpZ2h0OiBcIjgwcHRcIiwgbWFyZ2luOiBcImF1dG9cIn19Lz4gIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImJveFwiID5cclxuICAgICAgICAgICAgICAgICAgICAgPHAgaWQ9XCJkZWwxXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgIDxIMyB0ZXh0PVwiSXRlcmF0aW9uIDEgLSBBVlZzIHZzIExOUHNcIiBpZD1cImRlbDFoZWFkXCIgLz4gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPkluaXRpYWxseSwgdGhpcyBwcm9qZWN0IHBhcnQgc3RhcnRlZCB3aXRoIGEgZGlzY3Vzc2lvbiB3aXRoIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlc0FuZE9wZW5UYWIoJ2tyaXN0aWFuJywgJy9odW1hbi1wcmFjdGljZXMnKX0+IFByb2YuIERyLiBLcmlzaXRhbiBNXHUwMEZDbGxlcjwvYT4sIFBJIG9mIG91ciB0ZWFtIHdpdGggZXhwZXJ0aXNlIGluIEFkZW5vLWFzc29jaWF0ZWQgdmlydXNlcyAoQUFWcyksIGZvY3VzaW5nIG9uIHdoZXRoZXIgdG8gcHVyc3VlIExOUHMgb3IgQUFWcyBmb3IgbVJOQSBkZWxpdmVyeS4gVGhlIGRlY2lkaW5nIGZhY3RvciBsZWFuZWQgdG93YXJkcyBMTlBzLCBhcyB0aGV5IG9mZmVyZWQgYSBzaWduaWZpY2FudCBhZHZhbnRhZ2VzIGluY2x1ZGluZyBsZXNzIGltbXVub2dlbmljIHBvdGVudGlhbDxUYWJTY3JvbGxMaW5rIHRhYj1cInRhYi1kZWxpdmVyeVwiIG51bT1cIjMxXCIgc2Nyb2xsSWQ9XCJkZXNjLTMxXCIvPiBhbmQgYmlnZ2VyIGxvYWRpbmcgY2FwYWNpdHk8VGFiU2Nyb2xsTGluayB0YWI9XCJ0YWItZGVsaXZlcnlcIiBudW09XCIzMlwiIHNjcm9sbElkPVwiZGVzYy0zMlwiLz4uIExOUHMgbG9hZGluZyBjYXBhY2l0eSBkZXBlbmRzIG9uIHZhcmlvdXMgZmFjdG9ycywgYnV0IGluIGdlbmVyYWwgdGhleSBvZmZlciBhIGJpZ2dlciBjYXJnbyBzaXplIGNvbXBhcmVkIHRvIDQuNyBrYiBmb3IgQVZWczxUYWJTY3JvbGxMaW5rIHRhYj1cInRhYi1kZWxpdmVyeVwiIG51bT1cIjMzXCIgc2Nyb2xsSWQ9XCJkZXNjLTMzXCIvPi4gVGhpcyBhbGxvd3MgdGhlIGRlbGl2ZXJ5IG9mIGJpZ2dlciBtUk5BIGNvbnN0cnVjdHMgY29tcGFyZWQgdG8gQUFWcywgd2hpY2ggaXMgbmVlZGVkIGZvciBvdXIgUHJpbWUgRWRpdGluZyBjb25zdHJ1Y3QuPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD48YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZXNBbmRPcGVuVGFiKCd3ZWJlcicsICcvaHVtYW4tcHJhY3RpY2VzJyl9PlByb2YuIFdvbGYtTWljaGFlbCBXZWJlciBhbmQgRHIuIEpcdTAwRjZyZyBHcm9cdTAwREZlLU9ubmVicmluazwvYT4gZnJvbSB0aGUgVUtNIGluIE1cdTAwRkNuc3RlciB3ZXJlIG91ciBmaXJzdCBwb2ludCBvZiBjb250YWN0IGZvciB0aGUgZGV2ZWxvcG1lbnQgb2Ygb3VyIExOUCBmb3IgQ0ZUUiB0cmVhdG1lbnQuIE1vcmVvdmVyLCA8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZXNBbmRPcGVuVGFiKCdyYWR1a2ljJywgJy9odW1hbi1wcmFjdGljZXMnKX0+RHIuIE1hcmNvIFJhZHVraWMgPC9hPmZvcm0gQmllbGVmZWxkIFVuaXZlcnNpdHkgcHJvdmlkZWQgdXMgd2l0aCBhIHZlcnkgdXNlZnVsIGNhcmdvLCBuYW1lbHkgbWluaWNpcmNsZSBETkEgY2FycnlpbmcgdGhlIEVZRlAgZ2VuZSBmcm9tIDxhIGhyZWY9XCJodHRwczovL3d3dy5wbGFzbWlkZmFjdG9yeS5jb20vY3VzdG9tLWRuYS9taW5pY2lyY2xlLWRuYS9cIiB0aXRsZT1cIlBsYXNtaWRGYWN0b3J5XCIgPlBsYXNtaWRGYWN0b3J5PC9hPiBhcyBhIHBvc2l0aXZlIGNvbnRyb2wgZm9yIG91ciBleHBlcmltZW50cy4gSGUgYWxzbyBoZWxwZWQgdXMgZXN0YWJsaXNoIHByb3RvY29scyBmb3IgTE5QIHN5bnRoZXNpcyBhbmQgTE5QIHRyYW5zZmVjdGlvbiBpbiBvdXIgbGFiLjwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJib3hcIiA+XHJcbiAgICAgICAgICAgICAgICAgICAgIDxwIGlkPVwiZGVsMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICA8SDMgdGV4dD1cIkludGVyYXRpb24gMiAtIENheW1hbiBMTlBcIiBpZD1cImRlbDJoZWFkXCIgLz4gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIEluIHRoZSBmaXJzdCBleHBlcmltZW50YWwgcGhhc2UsIExOUHMgZnJvbSA8c3Ryb25nPkNheW1hbiBDaGVtaWNhbCBMTlAgRXhwbG9yYXRpb24gS2l0IChMTlAtMTAyKTwvc3Ryb25nPiBjb25zaXN0aW5nIG9mIFNNLTEwMiwgMSwyLURTUEMsIENob2xlc3Rlcm9sLCBhbmQgRE1HLVBFRygyMDAwKTxUYWJTY3JvbGxMaW5rIHRhYj1cInRhYi1kZWxpdmVyeVwiIG51bT1cIjM0XCIgc2Nyb2xsSWQ9XCJkZXNjLTM0XCIvPiB3ZXJlIHRlc3RlZCB3aXRoIG1STkEgZW5jb2RpbmcgZmx1b3Jlc2NlbnQgcHJvdGVpbiB0byBldmFsdWF0ZSB0aGVpciB0cmFuc2ZlY3Rpb24gZWZmaWNpZW5jeS4gSG93ZXZlciwgdGhlIHJlc3VsdHMgaW5kaWNhdGVkIGdvb2Qgbm9uLWx1bmctc3BlY2lmaWMgdHJhbnNmZWN0aW9uIGVmZmljaWVuY3ksIHdoaWNoIHdhcyBhIGNyaXRpY2FsIGZhY3RvciBmb3IgdGhlIHByb2plY3QuIFRoaXMgbGVkIHRoZSB0ZWFtIHRvIHJlY29uc2lkZXIgdGhlaXIgY2hvaWNlIG9mIHRoaXMgTE5QLlxyXG4gICAgICAgICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgIDxPbmVGaWd1cmVcclxuICAgICAgICAgICAgICAgICAgICAgcGljMT1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2RlbGl2ZXJ5L2NheW1hbi1sbnAtZnJlaWdlc3RlbGx0LndlYnBcIlxyXG4gICAgICAgICAgICAgICAgICAgICBhbHQxPVwiQ2F5bWFuIExOUFwiXHJcbiAgICAgICAgICAgICAgICAgICAgIG51bT17MX1cclxuICAgICAgICAgICAgICAgICAgICAgZGVzY3JpcHRpb249XCJTY2hlbWF0aWMgdmlldyBvZiBMTlAtMTAyIGZyb20gQ2F5bWFuIENoZW1pY2FsLlwiXHJcbiAgICAgICAgICAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJib3hcIiA+XHJcbiAgICAgICAgICAgICAgICAgICAgIDxwIGlkPVwiZGVsM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8SDMgdGV4dD1cIkludGVyYXRpb24gMyAtIENvcmRlbiBMTlBcIiBpZD1cImRlbDNoZWFkXCIgLz4gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIEluIHRoZSBuZXh0IHBoYXNlLCB3ZSBjaG9zZSB0byB1c2UgYSBuZXcgTE5QIGZvcm11bGF0aW9uLCBuYW1lbHkgdGhlIDxzdHJvbmc+TE5QIFN0YXJ0ZXIgS2l0ICMyPC9zdHJvbmc+PFRhYlNjcm9sbExpbmsgdGFiPVwidGFiLWRlbGl2ZXJ5XCIgbnVtPVwiMzVcIiBzY3JvbGxJZD1cImRlc2MtMzVcIi8+IG9mIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlc0FuZE9wZW5UYWIoJ2NvcmRlbicsICcvaHVtYW4tcHJhY3RpY2VzJyl9PkNvcmRlbiBQaGFybWE8L2E+LCBiZWNhdXNlIGl0IG9mZmVyZWQgc2V2ZXJhbCBhZHZhbnRhZ2VzIG92ZXIgdGhlIGluaXRpYWwgb3B0aW9uLiBUaGUga2V5IGJlbmVmaXQgb2YgdGhpcyBuZXcgTE5QIGxpZXMgaW4gdGhlIHVzZSBvZiBET1RBUCwgYSBjYXRpb25pYyBsaXBpZCB0aGF0IGVuaGFuY2VzIGludGVyYWN0aW9uIHdpdGggbmVnYXRpdmVseSBjaGFyZ2VkIGNlbGwgbWVtYnJhbmVzIGluIHRoZSBsdW5ncywgaW1wcm92aW5nIGNlbGx1bGFyIHVwdGFrZSBlZmZpY2llbmN5LiBXaGlsZSBTTS0xMDIgaW4gdGhlIENheW1hbiBMTlAtMTAyIGlzIGVmZmVjdGl2ZSBmb3Igc3lzdGVtaWMgZGVsaXZlcnksIGl0IGxhY2tzIHRoZSBzYW1lIHNwZWNpZmljaXR5IGZvciBsdW5nIHRpc3N1ZS4gQWRkaXRpb25hbGx5LCBDb3JkZW4gUGhhcm1hXHUyMDE5cyBwbGFudC1iYXNlZCBCb3RhbmlDaG9sXHUwMEFFIHByZXZlbnRzIGFuaW1hbC1zb3VyY2VkIGNvbnRhbWluYXRpb24gYW5kIGhlbHBzIGFkZHJlc3MgdGhlIGdsb2JhbCBsaXBpZCBzaG9ydGFnZSBmb3IgdmFjY2luZSBwcm9kdWN0aW9uLiBtUEVHLTIwMDAtRFNQRSBwcm92aWRlcyBzdXBlcmlvciBzdGFiaWxpdHkgYW5kIHJlZHVjZXMgaW1tdW5lIHN5c3RlbSBhY3RpdmF0aW9uIG92ZXIgdGltZSwgbWFraW5nIGl0IHBhcnRpY3VsYXJseSBzdWl0YWJsZSBmb3IgcHVsbW9uYXJ5IGRlbGl2ZXJ5LiAgVGhpcyBtYWRlIHRoZSBuZXcgZm9ybXVsYXRpb24gYSBiZXR0ZXIgY2hvaWNlIGZvciBzYWZlbHkgYW5kIGVmZmVjdGl2ZWx5IHRhcmdldGluZyBsdW5nIHRpc3N1ZSwgZXNwZWNpYWxseSBpbiBkZWxpdmVyaW5nIHRoZXJhcGllcyBmb3IgQ0ZUUi1yZWxhdGVkIGRpc2Vhc2VzLiBEdXJpbmcgdGhpcyB0aW1lLCB0aGUgdGVhbSBlbmNvdW50ZXJlZCBhIHBhcGVyIG9uIGNhcHNhaWNpbi1jaGl0b3NhbiBuYW5vcGFydGljbGVzLCB3aGljaCBleHBsb3JlZCBpdHMgdXNlIGluIHRhcmdldGVkIGRlbGl2ZXJ5IGFuZCBoaWdoZXIgdHJhbnNmZWN0aW9uIGVmZmljaWVuY3kuIEhvd2V2ZXIsIGFmdGVyIGZ1cnRoZXIgaW52ZXN0aWdhdGlvbiBhbmQgY29uc3VsdGF0aW9uIG9mIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlc0FuZE9wZW5UYWIoJ2tvbG9ua29maXJzdCcsICcvaHVtYW4tcHJhY3RpY2VzJyl9PkRyLiBLYXRoYXJpbmEgS29sb25rbzwvYT4sIGl0IHdhcyBkZXRlcm1pbmVkIHRoYXQgY2Fwc2FpY2luIHdhcyBub3Qgc3VpdGFibGUgaW4gb3VyIHdheSBvZiBwdWxtb25hcnkgYXBwbGljYXRpb24uIFxyXG4gICAgICAgICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgIDxPbmVGaWd1cmUgXHJcbiAgICAgICAgICAgICAgICAgICAgIHBpYzE9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9kZWxpdmVyeS9jb3JkZW4tbG5wLWZyZWlnZXN0ZWxsdC53ZWJwXCJcclxuICAgICAgICAgICAgICAgICAgICAgYWx0MT1cIkNvcmRlbiBMTlBcIlxyXG4gICAgICAgICAgICAgICAgICAgICBudW09ezJ9XHJcbiAgICAgICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uPVwiU2NoZW1hdGljIHZpZXcgb2YgTE5QICMyIGZyb20gQ29yZGVuIFBoYXJtYSB3aXRoIERPVEFQIGFzIGNhdGlvbmljIGxpcGlkLCBEU1BDIGFzIHBob3NwaG9saXBpZCBhbmQgbVBFRy0yMDAwLURTUEUgYXMgUEVHIGxpcGlkLlwiXHJcbiAgICAgICAgICAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImJveFwiID5cclxuICAgICAgICAgICAgICAgICAgICAgPHAgaWQ9XCJkZWw0XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgIDxIMyB0ZXh0PVwiSW50ZXJhdGlvbiA0IC0gU3ByYXktZHJpZWQgU09SVCBMTlAgY2FsbGVkIEFpckJ1ZGR5XCIgaWQ9XCJkZWw0aGVhZFwiIC8+IFxyXG4gICAgICAgICAgICAgICAgICAgICBUaGUgbmV4dCBkZXNpZ24gaXRlcmF0aW9uIGluY29ycG9yYXRlZCB0aGUgaW5zaWdodHMgZnJvbSBXYW5nJ3MgTE5QIHdvcmsgZm9yIGJ1aWxkaW5nIHVwb24gU09SVCBwcmluY2lwbGVzIHRvIG1ha2UgdGhlIG5hbm9wYXJ0aWNsZXMgbHVuZy1zcGVjaWZpYzxUYWJTY3JvbGxMaW5rIHRhYj1cInRhYi1kZWxpdmVyeVwiIG51bT1cIjM2XCIgc2Nyb2xsSWQ9XCJkZXNjLTM2XCIvPi4gVGhlIG1haW4gY29tcG9uZW50cyBpbmNsdWRlIERNRy1QRUcgMjAwMCwgY2hvbGVzdGVyb2wsIERPUEUgYW5kIERPVEFQIGFzIHBob3NwaG9saXBpZHMgYW5kIGNhdGlvbmljIGxpcGlkcyBzdWNoIGFzIDRBMy1TQzguIEluIG91ciBMTlAgZGV2ZWxvcG1lbnQsIHdlIGNhcmVmdWxseSBjb25zaWRlcmVkIHRoZSB1c2Ugb2YgUEVHLiBXaGlsZSBQRUcgY2FuIGltcHJvdmUgc3RhYmlsaXR5LCBpdCBjYW4gYWxzbyByZWR1Y2UgY2VsbHVsYXIgdXB0YWtlIGFuZCBpbmR1Y2UgaW1tdW5lIHJlc3BvbnNlcywgbmVjZXNzaXRhdGluZyBhIGJhbGFuY2VkIGFwcHJvYWNoIHRvIGl0cyBpbmNsdXNpb248VGFiU2Nyb2xsTGluayB0YWI9XCJ0YWItZGVsaXZlcnlcIiBudW09XCIzN1wiIHNjcm9sbElkPVwiZGVzYy0zN1wiLz4uXHJcbiAgICAgICAgICAgICAgICAgICAgIDxDb2xsYXBzaWJsZSBpZD1cIkNvbDFcIiBvcGVuPXtmYWxzZX0gdGl0bGU9XCJBbWJpdmFsZW5jZSBvZiBQRUcgYW5kIG91ciBpbXBsZW1lbnRhdGlvblwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJXaGF0IGlzIFBFRyBhbmQgd2h5IGlzIGl0IGltcG9ydGFudCBmb3IgTE5Qcz9cIiBpZD1cInRleHRcIiAvPiBcclxuICAgICAgICAgICAgICAgICAgICAgICAgUG9seWV0aHlsZW5lIGdseWNvbCAoUEVHKSBpcyBhbiBlc3NlbnRpYWwgY29tcG9uZW50IGluIHRoZSBmb3JtdWxhdGlvbiBvZiBMTlBzLCB3aGljaCBhcmUgd2lkZWx5IHVzZWQgaW4gZHJ1ZyBkZWxpdmVyeSBzeXN0ZW1zLCBwYXJ0aWN1bGFybHkgZm9yIG1STkEtYmFzZWQgdGhlcmFwaWVzIGxpa2UgdmFjY2luZXMuIFBFRy1saXBpZHMgYXJlIGh5YnJpZCBtb2xlY3VsZXMgY29uc2lzdGluZyBvZiBhIGh5ZHJvcGhpbGljIFBFRyBjaGFpbiBhdHRhY2hlZCB0byBhIGh5ZHJvcGhvYmljIGxpcGlkIGFuY2hvci4gVGhpcyB1bmlxdWUgc3RydWN0dXJlIGVuYWJsZXMgUEVHLWxpcGlkcyB0byBpbnRlcmFjdCBlZmZlY3RpdmVseSB3aXRoIGJvdGggYXF1ZW91cyBlbnZpcm9ubWVudHMgYW5kIGxpcGlkIHN0cnVjdHVyZXMsIHN1Y2ggYXMgY2VsbCBtZW1icmFuZXMgYW5kIGxpcGlkIG5hbm9wYXJ0aWNsZXMgdGhlbXNlbHZlcy4gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlBFR3lsYXRpb25cdTIwMTRhdHRhY2hpbmcgUEVHIHRvIGxpcGlkc1x1MjAxNHByb3ZpZGVzIG51bWVyb3VzIGJlbmVmaXRzLiBJdCBpbmNyZWFzZXMgdGhlIHN0YWJpbGl0eSBvZiBMTlBzIGJ5IGZvcm1pbmcgYSBwcm90ZWN0aXZlIG91dGVyIGxheWVyLCBwcmV2ZW50aW5nIGFnZ3JlZ2F0aW9uLCBleHRlbmRpbmcgY2lyY3VsYXRpb24gdGltZSBpbiB0aGUgYmxvb2RzdHJlYW0sIGFuZCByZWR1Y2luZyBpbW11bmUgc3lzdGVtIGRldGVjdGlvbi4gVGhlc2UgYWR2YW50YWdlcyBhcmUgY3JpdGljYWwgaW4gZW5zdXJpbmcgdGhhdCB0aGUgTE5QcyByZWFjaCB0aGVpciB0YXJnZXQgY2VsbHMgYW5kIGRlbGl2ZXIgdGhlIHRoZXJhcGV1dGljIHBheWxvYWQgZWZmZWN0aXZlbHkuIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJXaHkgaXMgUEVHIHJlbGV2YW50IGZvciBMTlBzIGluIG1STkEgZGVsaXZlcnk/XCIgaWQ9XCJ0ZXh0XCIgLz4gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFBFRyBpbXByb3ZlcyB0aGUgcGhhcm1hY29raW5ldGljcyBvZiBMTlBzIGJ5IGV4dGVuZGluZyB0aGVpciBzeXN0ZW1pYyBjaXJjdWxhdGlvbiB0aW1lLCB3aGljaCBpcyBjcnVjaWFsIGZvciB0aGVyYXBpZXMgbGlrZSBtUk5BIHZhY2NpbmVzLCB3aGVyZSB0aGUgbmFub3BhcnRpY2xlcyBtdXN0IHJlbWFpbiBpbiB0aGUgYmxvb2RzdHJlYW0gbG9uZyBlbm91Z2ggdG8gcmVhY2ggdGhlaXIgdGFyZ2V0IGNlbGxzLiBBZGRpdGlvbmFsbHksIFBFRy1saXBpZHMgY2FuIHJlZHVjZSB0aGUgc2l6ZSBvZiBMTlBzLCBlbmhhbmNpbmcgdGhlaXIgYWJpbGl0eSB0byBwZW5ldHJhdGUgY2VsbCBtZW1icmFuZXMgYW5kIGRlbGl2ZXIgdGhlIHRoZXJhcGV1dGljIG1hdGVyaWFsIGVmZmljaWVudGx5LiBIb3dldmVyLCBhIGJhbGFuY2UgbXVzdCBiZSBzdHJ1Y2suIEluY3JlYXNpbmcgUEVHIGNvbnRlbnQgY2FuIGxlYWQgdG8gc21hbGxlciwgbW9yZSBzdGFibGUgcGFydGljbGVzLCBidXQgaXQgbWF5IGFsc28gcmVkdWNlIGludHJhY2VsbHVsYXIgZGVsaXZlcnkgYW5kIHByb3RlaW4gZXhwcmVzc2lvbi4gVGhlcmVmb3JlLCB3aGlsZSBQRUcgYm9vc3RzIGNpcmN1bGF0aW9uIGFuZCBzdGFiaWxpdHksIHRvbyBtdWNoIGNhbiBoaW5kZXIgdGhlcmFwZXV0aWMgZWZmZWN0aXZlbmVzcy5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJDeXRvdG94aWNpdHkgYW5kIG1QRUctMjAwMC1EU1BFXCIgaWQ9XCJ0ZXh0XCIgLz4gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIE9uZSBjaGFsbGVuZ2Ugd2l0aCBQRUd5bGF0aW9uIGlzIHRoZSBwb3RlbnRpYWwgZm9yIGltbXVuZSByZXNwb25zZXMsIHN1Y2ggYXMgdGhlIDxpPmFjY2VsZXJhdGVkIGJsb29kIGNsZWFyYW5jZTwvaT4gKEFCQykgcGhlbm9tZW5vbiwgd2hlcmUgcmVwZWF0ZWQgZXhwb3N1cmUgdG8gUEVHeWxhdGVkIHBhcnRpY2xlcyBsZWFkcyB0byBmYXN0ZXIgY2xlYXJhbmNlIGJ5IHRoZSBpbW11bmUgc3lzdGVtLiBUaGVyZSBhcmUgYWxzbyByaXNrcyBvZiBoeXBlcnNlbnNpdGl2aXR5IHJlYWN0aW9ucyBsaWtlIDxpPmNvbXBsZW1lbnQgYWN0aXZhdGlvbi1yZWxhdGVkIHBzZXVkb2FsbGVyZ3k8L2k+IChDQVJQQSkuIFRodXMsIHNlbGVjdGluZyB0aGUgcmlnaHQgUEVHLWxpcGlkIHR5cGUgaXMgZXNzZW50aWFsIHRvIG1pdGlnYXRlIHRoZXNlIHJpc2tzLlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5XZSBjb2xsYWJvcmF0ZWQgd2l0aCA8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZXNBbmRPcGVuVGFiKCdjb3JkZW4nLCAnL2h1bWFuLXByYWN0aWNlcycpfT5Db3JkZW4gUGhhcm1hPC9hPiwgYSBzcGVjaWFsaXN0IGluIExOUCB0ZWNobm9sb2dpZXMsIHRvIGFkZHJlc3MgdGhlc2UgY29uY2VybnMuIEJhc2VkIG9uIHRoZWlyIHJlY29tbWVuZGF0aW9ucywgd2Ugb3B0ZWQgZm9yIDxzdHJvbmc+bVBFRy0yMDAwLURTUEU8L3N0cm9uZz4gYXMgb3VyIFBFRy1saXBpZCBvZiBjaG9pY2UuIFRoaXMgdmFyaWFudCBtaW5pbWl6ZXMgY3l0b3RveGljaXR5IHdoaWxlIHByb3ZpZGluZyBleGNlbGxlbnQgc3RhYmlsaXR5IGFuZCBjaXJjdWxhdGlvbiB0aW1lLiBJdCBoYXMgYWxzbyBwcm92ZW4gZWZmZWN0aXZlIGluIHJlZHVjaW5nIGltbXVuZS1yZWxhdGVkIHNpZGUgZWZmZWN0cyB3aGlsZSBwcmVzZXJ2aW5nIHRoZSBpbnRlZ3JpdHkgYW5kIHBlcmZvcm1hbmNlIG9mIG91ciBuYW5vcGFydGljbGVzLiA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiRE1HLVBFRzIwMDAgdnMgbVBFRy0yMDAwLURTUEVcIiBpZD1cInRleHRcIiAvPiBcclxuICAgICAgICAgICAgICAgICAgICAgICAgV2hpbGUgbVBFRy0yMDAwLURTUEUgaGFzIHRyYWRpdGlvbmFsbHkgYmVlbiB1c2VkIGZvciBzdGFiaWxpemluZyBMTlBzIGFuZCBlbmhhbmNpbmcgZGVsaXZlcnkgZWZmaWNpZW5jeSwgd2UgZGVjaWRlZCB0byBpbmNvcnBvcmF0ZSBETUctUEVHMjAwMCBpbnRvIG91ciBTT1JUIExOUC1iYXNlZCBBaXJCdWRkeSBkdWUgdG8gaXRzIHN1cGVyaW9yIHByb3BlcnRpZXMuIERNRy1QRUcyMDAwIG9mZmVycyBiZXR0ZXIgYmlvZGVncmFkYWJpbGl0eSBhbmQgZW5oYW5jZWQgc3RhYmlsaXR5IGluIHB1bG1vbmFyeSBhcHBsaWNhdGlvbnMuIFVubGlrZSBtUEVHLTIwMDAtRFNQRSwgd2hpY2ggdGVuZHMgdG8gYWNjdW11bGF0ZSBpbiB0aGUgYm9keSBhbmQgbWF5IGxlYWQgdG8gaW1tdW5lIGFjdGl2YXRpb24gb3ZlciB0aW1lLCBETUctUEVHMjAwMCBpcyBrbm93biBmb3IgaXRzIGZhc3RlciBjbGVhcmFuY2UgYW5kIHJlZHVjZWQgcG90ZW50aWFsIGZvciBsb25nLXRlcm0gdG94aWNpdHkuIEZvciBsdW5nLXNwZWNpZmljIGRlbGl2ZXJ5LCB3aGVyZSBzdGFiaWxpdHkgYW5kIHNhZmV0eSBhcmUgY3JpdGljYWwsIERNRy1QRUcyMDAwIGVuc3VyZXMgdGhhdCB0aGUgbmFub3BhcnRpY2xlcyByZW1haW4gc3RhYmxlIGxvbmcgZW5vdWdoIHRvIGRlbGl2ZXIgdGhlIHRoZXJhcGV1dGljIG1hdGVyaWFsIGVmZmVjdGl2ZWx5LCBidXQgYWxzbyBkZWdyYWRlIGF0IGEgcmF0ZSB0aGF0IG1pbmltaXplcyB1bndhbnRlZCBpbW11bmUgcmVzcG9uc2VzLiBUaGlzIG1ha2VzIERNRy1QRUcyMDAwIGEgbW9yZSBzdWl0YWJsZSBjaG9pY2UgZm9yIHRoZXJhcGllcyB0YXJnZXRpbmcgQ0ZUUi1yZWxhdGVkIGRpc2Vhc2VzLCB3aGVyZSBwcmVjaXNlIGFuZCBzYWZlIGRlbGl2ZXJ5IHRvIHRoZSBsdW5ncyBpcyBlc3NlbnRpYWwgZm9yIHRyZWF0bWVudCBzdWNjZXNzLiBcclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+RGV0YWlscyBhYm91dCB0aGUgYmlvc2FmZXR5IGFzcGVjdHMgb2Ygb3VyIExOUCBjYW4gYmUgcmVhZCA8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZUFuZFNjcm9sbCAoJ3NvcnQtbG5wLWFuZC1jeXRvdG94aWNpdHknLCAnL3NhZmV0eScpfT4gaGVyZSA8L2E+LiA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8SDQgdGV4dD1cIkNvbmNsdXNpb25cIiBpZD1cInRleHRcIiAvPiBcclxuICAgICAgICAgICAgICAgICAgICAgICAgV2UgdXNlIERNRy1QRUcyMDAwIGluIG91ciBTT1JUIExOUC1iYXNlZCBBaXJCdWRkeSBiZWNhdXNlIG9mIGl0cyBzdXBlcmlvciBiaW9kZWdyYWRhYmlsaXR5LCBlbmhhbmNlZCBzdGFiaWxpdHksIGFuZCByZWR1Y2VkIHJpc2sgb2YgaW1tdW5lIHN5c3RlbSBhY3RpdmF0aW9uLiBCeSBidWlsZGluZyBvbiBpbnNpZ2h0cyBmcm9tIGV4cGVydHMgYW5kIGluY29ycG9yYXRpbmcgcHJpbmNpcGxlcyBmcm9tIFdhbmdcdTIwMTlzIExOUCB3b3JrLCB3ZVx1MjAxOXZlIHRhaWxvcmVkIG91ciBuYW5vcGFydGljbGVzIGZvciBsdW5nLXNwZWNpZmljIGRlbGl2ZXJ5LiBUaGlzIGNob2ljZSBlbnN1cmVzIHRoYXQgb3VyIGZvcm11bGF0aW9ucyByZW1haW4gc3RhYmxlIGxvbmcgZW5vdWdoIHRvIGRlbGl2ZXIgdGhlIHRoZXJhcGV1dGljIHBheWxvYWQgZWZmZWN0aXZlbHkgd2hpbGUgbWluaW1pemluZyBwb3RlbnRpYWwgbG9uZy10ZXJtIHRveGljaXR5LiBUaGlzIGJhbGFuY2UgaXMgY3J1Y2lhbCBmb3IgcHVsbW9uYXJ5IGFwcGxpY2F0aW9ucywgd2hlcmUgRE1HLVBFRzIwMDAgb3V0cGVyZm9ybXMgYWx0ZXJuYXRpdmVzIGxpa2UgbVBFRy0yMDAwLURTUEUsIG1ha2luZyBpdCB0aGUgaWRlYWwgY2hvaWNlIGZvciB0cmVhdGluZyBDRlRSLXJlbGF0ZWQgbHVuZyBkaXNlYXNlcy4gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgPC9Db2xsYXBzaWJsZT5cclxuICAgICAgICAgICAgICAgICAgICAgPHA+RE1HLVBFRzIwMDAgb2YgdGhlIFNPUlQgTE5QIG9mZmVycyBiZXR0ZXIgYmlvZGVncmFkYWJpbGl0eSBhbmQgZW5oYW5jZWQgc3RhYmlsaXR5IGluIHB1bG1vbmFyeSBhcHBsaWNhdGlvbnMgLSBpdCBpcyBrbm93biBmb3IgaXRzIGZhc3RlciBjbGVhcmFuY2UgYW5kIHJlZHVjZWQgcG90ZW50aWFsIGZvciBsb25nLXRlcm0gdG94aWNpdHkuIFRvIGVuc3VyZSB3ZSBhZGRyZXNzZWQgdGhpcyBpc3N1ZSwgY3l0b3RveGljaXR5IHRlc3RzIHdlcmUgcGVyZm9ybWVkIGluIGFkZGl0aW9uIHRvIHRoZSBkZXRlcm1pbmF0aW9uIG9mIHBoeXNpY29jaGVtaWNhbCBwcm9wZXJ0aWVzIGluIGNvb3BlcmF0aW9uIHdpdGggdGhlIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlc0FuZE9wZW5UYWIoJ2Jpb3BoeXNpaycsICcvaHVtYW4tcHJhY3RpY2VzJyl9PlBoeXNpY2FsIGFuZCBCaW9waHlzaWNhbCBDaGVtaXN0cnkgd29ya2luZyBncm91cCBvZiBCaWVsZWZlbGQgVW5pdmVyc2l0eTwvYT4gdG8gY2hhcmFjdGVyaXplIHRoZSBMTlBzLiBNb3JlIGRldGFpbHMgYWJvdXQgdGhlIGNvbXBvc2l0aW9uIG9mIHRoZSBTT1JUIExOUHMgYW5kIGZ1bmN0aW9uIG9mIHRoZSBjb21wb25lbnRzIGNhbiBiZSByZWFkIGJlbG93LjwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgPE9uZUZpZ3VyZVxyXG4gICAgICAgICAgICAgICAgICAgICBwaWMxPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvZGVsaXZlcnkvYWlyYnVkZHktc3ZnLnN2Z1wiXHJcbiAgICAgICAgICAgICAgICAgICAgIGFsdDE9XCJBaXJCdWRkeVwiXHJcbiAgICAgICAgICAgICAgICAgICAgIG51bT17M31cclxuICAgICAgICAgICAgICAgICAgICAgZGVzY3JpcHRpb249XCJTY2hlbWF0aWMgdmlldyBvZiBvdXIgbHVuZy1zcGVjaWZpYyBTT1JUIExOUCBjYWxsZWQgQWlyQnVkZHkgY2FycnlpbmcgY2hpdG9zYW4tcHJvdGVjdGVkIHBlZ1JOQSBhbmQgbVJOQSBmb3IgdGhlIGFzc2VtYmx5IG9mIG91ciBwcmltZSBlZGl0aW5nIHRlY2hub2xvZ3kgbmFtZWQgUHJpbWVHdWlkZS5cIlxyXG4gICAgICAgICAgICAgICAgICAgICAvPlxyXG4gICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICA8Q29sbGFwc2libGUgaWQ9XCJDb2wyXCIgb3Blbj17ZmFsc2V9IHRpdGxlPVwiQ29tcG9zaXRpb24gb2Ygb3VyIFNPUlQgTE5QIGNhbGxlZCBBaXJidWRkeSAvLyBMTlAgSGFuZGJvb2sgQ29vcGVyYXRpb25cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJDb21wb25lbnRzIG9mIEFpckJ1ZGR5XCIgaWQ9XCJ0ZXh0XCIgLz4gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxINSB0ZXh0PVwiSW9uaXphYmxlIExpcGlkXCIgaWQ9XCJ0ZXh0XCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+VGhlIHByaW1hcnkgaW5ncmVkaWVudCwgNEEzLVNDOCBvciBNQzMsIGFyZSBpb25pemFibGUgY2F0aW9uaWMgbGlwaWRzIHRoYXQgZm9ybXMgdGhlIGNvcmUgb2YgdGhlIExOUC4gSW9uaXphYmxlIGNhdGlvbmljIGxpcGlkcyBiZWNvbWUgcG9zaXRpdmVseSBjaGFyZ2VkIGluIGFjaWRpYyBlbnZpcm9ubWVudHMsIHN1Y2ggYXMgd2hlbiBhIHBIIGNoYW5nZSBvY2N1cnMgZm9yIGV4YW1wbGUgaW4gYWNpZGljIGJ1ZmZlcnMgb3IgaW4gdGhlIGVuZG9zb21lLiBUaGlzIGFsbG93cyB0aGVtIHRvIGJpbmQgdG8gbmVnYXRpdmVseSBjaGFyZ2VkIG51Y2xlaWMgYWNpZHMgYW5kIGZvcm0gcHJvdGVjdGl2ZSBjYXBzdWxlcyBhcm91bmQgaXQuIEluIHRoZSBlbmRvc29tZSB0aGVzZSBsaXBpZHMgZmFjaWxpdGF0ZSBlbmRvc29tYWwgZXNjYXBlIHRocm91Z2ggZWxlY3Ryb3N0YXRpYyBpbnRlcmFjdGlvbnMgYmV0d2VlbiB0aGUgTE5QcyBhbmQgdGhlIGVuZG9zb21hbCBvciBjZWxsdWxhciBtZW1icmFuZXMuPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8SDUgdGV4dD1cIkhlbHBlciBMaXBpZHNcIiBpZD1cInRleHRcIiAvPiBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+RE9UQVAgKERpb2xlb3lsdHJpbWV0aHlsLWFtbW9uaXVtIHByb3BhbmUpIGlzIGEgY2F0aW9uaWMgbGlwaWQgdGhhdCBtYWtlcyB1cCA1MCAlIG9mIHRoZSB0b3RhbCBtb2xhciBsaXBpZCByYXRpby4gSXQgcGxheXMgYSBjcnVjaWFsIHJvbGUgaW4gYmluZGluZyB0byB0aGUgbmVnYXRpdmVseSBjaGFyZ2VkIHN1cmZhY2Ugb2YgbHVuZyBlcGl0aGVsaWFsIGNlbGxzLiBUaGlzIGVuaGFuY2VzIHRyYW5zZmVjdGlvbiBlZmZpY2llbmN5IGFuZCBoZWxwcyBtYWtlIHRoZSBMTlAgZm9ybXVsYXRpb24gbW9yZSBsdW5nLXNwZWNpZmljLCBpbXByb3ZpbmcgdGFyZ2V0ZWQgZGVsaXZlcnkuIFRoZSBuZXV0cmFsIGhlbHBlciBsaXBpZCBET1BFIChEaW9sZW95bHBob3NwaGF0aWR5bGV0aGFub2xhbWluZSkgZW5oYW5jZXMgZW5kb3NvbWFsIGVzY2FwZSBieSBmdXNpbmcgd2l0aCB0aGUgZW5kb3NvbWFsIG1lbWJyYW5lIGFuZCBpbXByb3ZlcyB0cmFuc2ZlY3Rpb24gZWZmaWNpZW5jeS48L3A+ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8SDUgdGV4dD1cIlN0ZXJvbFwiIGlkPVwidGV4dFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPkNob2xlc3Rlcm9sLCBpcyBhbiBpbXBvcnRhbnQgY2F0aW9uaWMgbGlwaWQsIHByb3ZpZGluZyBzdHJ1Y3R1cmFsIHN0YWJpbGl0eSwgZmx1aWRpdHkgYW5kIHBlcm1lYWJpbGl0eSB0byB0aGUgTE5QcywgdGhlcmVieSBpbXByb3ZpbmcgdGhlaXIgb3ZlcmFsbCB0cmFuc2ZlY3Rpb24gZWZmaWNpZW5jeS4gPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8SDUgdGV4dD1cIlBFR3lsYXRlZCBMaXBpZHNcIiBpZD1cInRleHRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD5ETUctUEVHIChEaW15cmlzdG95bGdseWNlcmluLXBvbHlldGh5bGVuZWdseWNvbCkgaXMgYW4gaW1wb3J0YW50IGNvbXBvbmVudCBieSBpbXByb3ZpbmcgdGhlIExOUCBzdGFiaWxpdHkgYW5kIHByZXZlbnRpbmcgYWdncmVnYXRpb24gb2YgdGhlIExOUHMuICA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiUHJvZHVjdGlvbiBNZXRob2RzXCIgaWQ9XCJ0ZXh0XCIgLz4gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxINSB0ZXh0PVwiTE5QIEFzc2VtYmx5XCIgaWQ9XCJ0ZXh0XCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPk91ciBMTlAgY2FuIGJlIGZvcm11bGF0ZWQgdXNpbmcgdmFyaW91cyBtZXRob2RzIGRlcGVuZGluZyBvbiB0aGUgc2NhbGUgb2YgcHJvZHVjdGlvbiwgaW5jbHVkaW5nIHBpcGV0dGUgbWl4aW5nLCB2b3J0ZXggbWl4aW5nLCBvciBtaWNyb2ZsdWlkaWMgbWl4aW5nLiBGb3IgY2FyZ28gcHJvdGVjdGlvbiB0aGUgbVJOQSBjYW4gYmUgbWl4ZWQgd2l0aCBjaGl0b3NhbiBmb3Igc3RhYmlsaXR5IGltcHJvdmVtZW50IGJlZm9yZSBhZGRpbmcgd2l0aCB0aGUgTE5QIGNvbXBvbmVudHMuIEFmdGVyIG1peGluZyB0aGUgbGlwaWRzIHdpdGggbVJOQSBpbiBjYXJlZnVsbHkgY29udHJvbGxlZCByYXRpb3MsIHRoZSBtaXh0dXJlIGlzIHR5cGljYWxseSBkaWFseXplZCB0byByZW1vdmUgb3JnYW5pYyBzb2x2ZW50cyBsaWtlIGV0aGFub2wgYW5kIGNpdHJhdGUgYnVmZmVyLiBUaGUgY2hvaWNlIG9mIGxpcGlkIGNvbXBvc2l0aW9uIGFuZCBwcmVwYXJhdGlvbiBtZXRob2QgaW5mbHVlbmNlcyB0aGUgdGlzc3VlLXRhcmdldGluZyBjYXBhYmlsaXRpZXMgb2YgdGhlIExOUHMsIGFsbG93aW5nIGZvciBzZWxlY3RpdmUgZGVsaXZlcnkgdG8gb3JnYW5zIGxpa2UgdGhlIGxpdmVyLCBsdW5ncywgb3Igc3BsZWVuLiBGb3IgbW9yZSBkZXRhaWxlZCBpbmZvcm1hdGlvbiBvbiBmb3JtdWxhdGlvbiBtZXRob2RzIGFuZCBsaXBpZCBzZWxlY3Rpb24sIHJlZmVyIHRvIG91ciBMTlAgSGFuZGJvb2sgZGVpZ25lZCBpbiA8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZUFuZFNjcm9sbCAoJ2hhbmRib29rJywgJy9odW1hbi1wcmFjdGljZXMnKX0+IGNvb3BlcmF0aW9uIHdpdGggaUdFTSBUZWFtIExpbmtcdTAwRjZwaW5nIDwvYT4gYW5kIG90aGVycy48L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD5DbGljayB0aGlzIEJ1dHRvbiB0byBnYWluIHRoZSBMTlAgSGFuZGJvb2s8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxEb3dubG9hZExpbmsgdXJsPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUzODcvbGlwb3NvbWVzLWhhbmRib29rLnBkZlwiIGZpbGVOYW1lPVwibGlwb3NvbWVzLWhhbmRib29rLnBkZlwiIC8+IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8SDUgdGV4dD1cIlNwcmF5IGRyeWluZyBQcm9jZWR1cmVcIiBpZD1cInRleHRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+QnkgY29tYmluaW5nIHRoZXNlIGNvbXBvbmVudHMgd2l0aCB0aGUgc3ByYXkgZHJ5aW5nIG1ldGhvZCBmcm9tIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlQW5kU2Nyb2xsICgncm5oYWxlJywgJy9odW1hbi1wcmFjdGljZXMnKX0+IFJOaGFsZSA8L2E+IHdlIG9mZmVyIGEgdmVyc2F0aWxlIGFuZCBlZmZpY2llbnQgbWV0aG9kIGZvciBkZWxpdmVyaW5nIFJOQSB0aGVyYXBldXRpY3MgdG8gdGhlIGx1bmcsIHBhdmluZyB0aGUgd2F5IGZvciBnZW5lIHRoZXJhcHksIGVzcGVjaWFsbHkgb3VyIFByaW1lIEd1aWRlLiBUaGUgZWZmZWN0aXZlIGRlbGl2ZXJ5IG9mIHRoZSBwcmltZSBlZGl0aW5nIGNvbXBsZXggaXMgYSBjcnVjaWFsIHBvaW50IGluIG91ciBwcm9qZWN0LiA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxINSB0ZXh0PVwiU3RvcmFnZVwiIGlkPVwidGV4dFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPlRoZSBmaW5hbCBMTlAgc29sdXRpb24gY2FuIGJlIHN0b3JlZCBhdCA0IFx1MDBCMEMgZm9yIGEgZmV3IGRheXMuIEl0IGlzIHJlY29tbWVuZGVkIHRvIHVzZSB0aGUgZm9ybXVsYXRlZCBMTlBzIGFzIHNvb24gYXMgcG9zc2libGUgdG8gbWFpbnRhaW4gY29uc2lzdGVudCByZXN1bHRzLiBTdG9yYWdlIGF0IFJUIGlzIG5vdCByZWNvbW1lbmRlZC4gU3RvcmFnZSBhdCBmcmVlemluZyB0ZW1wZXJhdHVyZXMgaXMgYWxzbyBub3QgcmVjb21tZW5kZWQgdW5sZXNzIG9wdGltaXplZCBjcnlvcHJvdGVjdGFudHMgYXJlIHVzZWQuPC9wPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgPC9Db2xsYXBzaWJsZT5cclxuICAgICAgICAgICAgICAgICAgICAgPHA+VGhlIGZpbmFsIGlubm92YXRpb24gZm9yIG91ciBMTlAgdG8gYmVjb21lIDxzdHJvbmc+QWlyQnVkZHk8L3N0cm9uZz4gY2FtZSB0aHJvdWdoIGNvbnN1bHRhdGlvbiB3aXRoIEJlbmphbWluIFdpbmtlbGphbm4gZnJvbSA8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZXNBbmRPcGVuVGFiKCdybmhhbGUnLCAnL2h1bWFuLXByYWN0aWNlcycpfT4gUk5oYWxlPC9hPiwgd2hlbiB0aGUgdXNlIG9mIHNwcmF5LWRyeWluZyB0ZWNobmlxdWVzIHdhcyBkaXNjdXNzZWQuIFNwcmF5LWRyeWluZyB0aGUgTE5QcywgaW5zdGVhZCBvZiB1c2luZyB0cmFkaXRpb25hbCBtZXRob2RzLCBoZWxwcyBpbXByb3ZlIHN0YWJpbGl0eSBhbmQgZWNvLWZyaWVuZGxpbmVzcyBvZiB0aGUgcHJvZHVjdDxUYWJTY3JvbGxMaW5rIHRhYj1cInRhYi1kZWxpdmVyeVwiIG51bT1cIjM4XCIgc2Nyb2xsSWQ9XCJkZXNjLTM4XCIvPi4gT3VyIHNhbXBsZXMgYXJlIHNldCBmb3IgdHJhbnNmZXIgdG8gUk5oYWxlIGZvciBzcHJheS1kcnlpbmcsIHdpdGggc2NoZWR1bGluZyBhbGlnbmVkIHRvIHJlc3VtZSBwcm9tcHRseSBhZnRlciB0aGUgd2lraSBmcmVlemUuIE1lYW53aGlsZSwgdGhlIGRpc2N1c3Npb24gd2l0aCA8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZXNBbmRPcGVuVGFiKCdtb29ybGFjaCcsICcvaHVtYW4tcHJhY3RpY2VzJyl9PkJlbmphbWluIE1vb3JsYWNoPC9hPiwgY2hpdG9zYW4gZXhwZXJ0IHdvcmtpbmcgYXQgRkggQmllbGVmZWxkLCBwcm92aWRlZCBuZXcgaWRlYXMgZm9yIGltcHJvdmVtZW50IGJ5IDxzdHJvbmc+Y29tcGxleGluZyB0aGUgY2FyZ28gd2l0aCBjaGl0b3Nhbjwvc3Ryb25nPiB0byBpbXByb3ZlIHRoZSBzdGFiaWxpdHkgb2YgdGhlIGNhcmdvIGR1cmluZyBzcHJheSBkcnlpbmcgYW5kIG5lYnVsaXphdGlvbi4gVGhlIHBvc2l0aXZlIGVmZmVjdCBvZiBjaGl0b3Nhbi1jb21wbGV4aW5nIGZvciBvcGltaXplZCBMTlAgZGVsaXZlcnkgY291bGQgYmUgY29uZmlybWVkIGluIG91ciBsYWIuIEluIGNvbmNsdXNpb24sIHdlIGNyZWF0ZWQgYSBzdGFibGUgTE5QIGZvciBlZmZpY2llbnQgZGVsaXZlcnkgb2YgUk5BIHRoZXJhcGV1dGljcyB0byB0aGUgbHVuZ3Mgc2luY2UgdGhlIHN1Y2Nlc3NmdWwgZGVsaXZlcnkgb2YgdGhlIHByaW1lIGVkaXRpbmcgY29tcGxleCB2aWEgaW5oYWxhdGlvbiBpcyBrZXkgdG8gb3VyIHByb2plY3QuICA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICA8T25lRmlndXJlXHJcbiAgICAgICAgICAgICAgICAgICAgIHBpYzE9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9kZWxpdmVyeS9iaWctcGxhbi1pbmhhbGF0aW9uLXRlaWwtZGVsLndlYnBcIlxyXG4gICAgICAgICAgICAgICAgICAgICBhbHQxPVwiRmxvdyBERUxcIlxyXG4gICAgICAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbj1cIkFwcGxpY2F0aW9uIHN0cmF0ZWd5IC0gQWlyQnVkZHkgaXMgaW5oYWxlZCBieSB0aGUgcGF0aWVudCwgZW5hYmxpbmcgdXB0YWtlIG9mIFByaW1lR3VpZGUgUk5BIGluIGx1bmcgZXBpdGhlbGlhbCBjZWxscyB2aWEgZW5kb2N5dG9zaXMuIFwiXHJcbiAgICAgICAgICAgICAgICAgICAgIG51bT17NH1cclxuICAgICAgICAgICAgICAgICAgICAgLz5cclxuICAgICAgICAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJib3hcIiA+XHJcbiAgICAgICAgICAgICAgICAgICAgIDxwIGlkPVwiZGVsNVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICA8SDMgdGV4dD1cIk91dGxvb2tcIiBpZD1cImRlbDVoZWFkXCIgLz4gXHJcbiAgICAgICAgICAgICAgICAgICAgIFVsdGltYXRlbHksIHRocm91Z2ggY29udGludW91cyBjeWNsZXMgb2YgZXhwZXJpbWVudGF0aW9uLCBmZWVkYmFjaywgYW5kIG9wdGltaXphdGlvbiwgb3VyIExOUCBmb3JtdWxhdGlvbiBjYWxsZWQgQWlyQnVkZHkgd2FzIGRlc2lnbmVkIHVzaW5nIFNPUlQgTE5QcyBpbmNvcnBvcmF0aW5nIGNoaXRvc2FuLWNvbXBsZXhhdGlvbiBvZiB0aGUgY2FyZ28gYW5kIHByb2Nlc3NpbmcgdmlhIHNwcmF5LWRyeWluZywgYWNoaWV2aW5nIGx1bmctc3BlY2lmaWNpdHkgYW5kIGltcHJvdmVkIHN0YWJpbGl0eSBzdWl0ZWQgZm9yIGluaGFsYXRpb24gc3RyYXRlZ2llcy4gV2UgYWxzbyB3YW50IHRvIHN0YXRlIHRoYXQgZm9yIG91ciBMTlAgaXMgZnVydGhlciByb29tIGZvciBpbXByb3ZlbWVudC4gSW50ZW5zaXZlIHJlc2VhcmNoIGxlZCB1cyB0byB0aGUgcmVhbGl6YXRpb24gdGhhdCwgYW1vbmcgb3RoZXIgbW9kaWZpY2F0aW9ucywgPHN0cm9uZz5hbnRpYm9keSBjb25qdWdhdGlvbjwvc3Ryb25nPiBhcyBhIHN1cmZhY2UgbW9kaWZpY2F0aW9uIG9mIG91ciBMTlAgZm9yIGNlbGwgdHlwZS1zcGVjaWZpYyBhZG1pbmlzdHJhdGlvbiwgbW9yZSBzcGVjaWZpY2FsbHkgY2x1YiBjZWxsczxUYWJTY3JvbGxMaW5rIHRhYj1cInRhYi1kZWxpdmVyeVwiIG51bT1cIjM5XCIgc2Nyb2xsSWQ9XCJkZXNjLTM5XCIvPiBhbmQgaW9ub2N5dGVzPFRhYlNjcm9sbExpbmsgdGFiPVwidGFiLWRlbGl2ZXJ5XCIgbnVtPVwiNDBcIiBzY3JvbGxJZD1cImRlc2MtNDBcIi8+IGFzIG1vc3QgQ0ZUUi1leHByZXNzaW5nIGx1bmcgZXBpdGhlbGlhbCBjZWxscywgd291bGQgcm91bmQgb2ZmIG91ciBtb3N0IGltcG9ydGFudCBhc3BlY3Qgb2YgcHJlY2lzaW9uLiBcclxuICAgICAgICAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgPFNlY3Rpb24gdGl0bGU9XCJSZWZlcmVuY2VzXCIgaWQ9XCJyZWZlcmVuY2VzXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgIDxFbmdEZWxzb3VyY2VzLz5cclxuICAgICAgICAgICAgICAgICAgPC9TZWN0aW9uPlxyXG4gICAgICAgICAgICAgICAgICA8YnIvPlxyXG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvd1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImxlZnRcIj48QnV0dG9uT25lRW5naW5lZXJpbmcgbGFiZWw9XCJQcmV2aW91c1wiIG9wZW49XCJuaWNrYXNlXCIgc2Nyb2xsVG9JZD1cIm5pY2thc2UtaGVhZGVyXCIvPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wgYnV0dG9uLWxlZnRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICA8L3NlY3Rpb24+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICBcclxuICAgICAgICAgIDwvZGl2PlxyXG4gIFxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8Lz5cclxuICAgICk7XHJcbiAgfSBcclxuXHJcbiAgXHJcblxyXG5leHBvcnQgZnVuY3Rpb24gRW5naW5lZXJpbmdDeWNsZVRhYigpe1xyXG4gICAgcmV0dXJuKFxyXG4gPHN2ZyBjbGFzc05hbWU9XCJyb3RhdGUtbGluZWFyLWluZmluaXRlXCJcclxuICAgIHdpZHRoPVwiMTAwJVwiXHJcbiAgICBoZWlnaHQ9XCIxMDAlXCJcclxuICAgIHZpZXdCb3g9XCIwIDAgMTMzIDEzM1wiXHJcbiAgICBpZD1cInN2ZzI1XCJcclxuICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cclxuICAgPGRlZnNcclxuICAgICAgaWQ9XCJkZWZzMVwiPlxyXG4gICAgIDwvZGVmcz5cclxuICAgPGdcclxuICAgICAgaWQ9XCJMYXllcl8yXCJcclxuICAgICAgZGF0YS1uYW1lPVwiTGF5ZXIgMlwiXHJcbiAgICAgIHN0eWxlPXt7c3Ryb2tlV2lkdGg6XCI2XCIsc3Ryb2tlRGFzaGFycmF5Olwibm9uZVwifX0+XHJcbiAgICAgPGdcclxuICAgICAgICBpZD1cIlBsYXNtaWRcIlxyXG4gICAgICAgIHN0eWxlPXt7c3Ryb2tlV2lkdGg6XCI2XCIsc3Ryb2tlRGFzaGFycmF5Olwibm9uZVwifX0+XHJcbiAgICAgICA8Z1xyXG4gICAgICAgICAgaWQ9XCJnMjVcIlxyXG4gICAgICAgICAgdHJhbnNmb3JtPVwidHJhbnNsYXRlKDcuNTAwOTc4LDMuMDUwNDg5OClcIj5cclxuICAgICAgICAgICAgPGEgIHR5cGVvZj1cImJ1dHRvblwiIGNsYXNzTmFtZT1cInN2Zy1idXR0b25cIiBvbkNsaWNrPXtvcGVuRWxlbWVudCh7ZWxlbWVudFRvT3BlbjogXCJkZXNpZ25pbmdcIiwgY2xhc3NUb0hpZGU6IFwiY3ljbGV0YWJcIn0pfT5cclxuICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgY2xhc3NOYW1lPVwiY2xzLTdcIlxyXG4gICAgICAgICAgICBkPVwibSA0Mi4wNSwxMTUuNTkgYyAyNy43Nyw5LjE5IDU3LjgzLC00Ljc5IDY5Ljc2LC0zMi4yM1wiXHJcbiAgICAgICAgICAgICBpZD1cInBhdGgyMlwiXHJcbiAgICAgICAgICAgIHN0eWxlPXt7c3Ryb2tlOlwiI2Y0Y2MxZVwiLHN0cm9rZVdpZHRoOlwiMTVcIixzdHJva2VEYXNoYXJyYXk6XCJub25lXCIsc3Ryb2tlT3BhY2l0eTpcIjFcIn19IC8+XHJcbiAgICAgICAgICAgIDwvYT5cclxuICAgICAgIDwvZz5cclxuICAgICAgIDxnXHJcbiAgICAgICAgICBpZD1cImcyNlwiXHJcbiAgICAgICAgICB0cmFuc2Zvcm09XCJ0cmFuc2xhdGUoOC4wMDE5Njk5LDIuODQxODIyMylcIlxyXG4gICAgICAgICAgc3R5bGU9e3tzdHJva2VXaWR0aDpcIjZcIixzdHJva2VEYXNoYXJyYXk6XCJub25lXCJ9fT4gIFxyXG4gICAgICAgICA8cG9seWdvblxyXG4gICAgICAgICAgICBjbGFzc05hbWU9XCJjbHMtMTNcIlxyXG4gICAgICAgICAgICBwb2ludHM9XCIxMTIuMDcsODMuMzYgMTEwLjk0LDc2LjI3IDExNy42NSw3OC44NCBcIlxyXG4gICAgICAgICAgICAgaWQ9XCJwb2x5Z29uMjVcIlxyXG4gICAgICAgICAgICBzdHlsZT17e2ZpbGw6XCIjODUwZjc4XCIsZmlsbE9wYWNpdHk6XCIxXCIsc3Ryb2tlV2lkdGg6XCI2XCIsc3Ryb2tlRGFzaGFycmF5Olwibm9uZVwifX1cclxuICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDIuOTgwNjI1OSwwLDAsMi45ODA2MjU5LC0yMjUuNDM3MjIsLTE1Ni40NTEyMylcIiAvPlxyXG4gICAgICAgICAgICA8YSAgdHlwZW9mPVwiYnV0dG9uXCIgY2xhc3NOYW1lPVwic3ZnLWJ1dHRvblwiIG9uQ2xpY2s9e29wZW5FbGVtZW50KHtlbGVtZW50VG9PcGVuOiBcImxlYXJuaW5nXCIsIGNsYXNzVG9IaWRlOiBcImN5Y2xldGFiXCJ9KX0+XHJcbiAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgY2xhc3NOYW1lPVwiY2xzLTEyXCJcclxuICAgICAgICAgICAgICBkPVwiTSAxMTQsNzguNTUgQyAxMjMuNDUsNTAuODYgMTEwLDIwLjc1IDgyLjY2LDguNlwiXHJcbiAgICAgICAgICAgICAgaWQ9XCJwYXRoMjVcIlxyXG4gICAgICAgICAgICAgIHN0eWxlPXt7c3Ryb2tlV2lkdGg6XCIxNVwiLHN0cm9rZURhc2hhcnJheTpcIm5vbmVcIixzdHJva2U6XCIjODUwZjc4XCIsc3Ryb2tlT3BhY2l0eTpcIjFcIn19IC8+IFxyXG4gICAgICAgICAgIFxyXG4gICAgICAgICA8dGV4dFxyXG4gICAgICAgICAgICBzdHlsZT17e2ZvbnRTaXplOlwiMTcuMzMzM3B4XCIsbGluZUhlaWdodDpcIjBcIixmb250RmFtaWx5OlwiQXJpYWxcIixmaWxsOlwidmFyKC0tb2ZmYmxhY2spXCIsZmlsbE9wYWNpdHk6XCIxXCIsc3Ryb2tlOlwibm9uZVwiLHN0cm9rZVdpZHRoOlwiMTVcIixzdHJva2VMaW5lY2FwOlwicm91bmRcIixzdHJva2VMaW5lam9pbjpcInJvdW5kXCIsc3Ryb2tlRGFzaGFycmF5Olwibm9uZVwiLHN0cm9rZU9wYWNpdHk6XCIxXCIscGFpbnRPcmRlcjpcImZpbGwgbWFya2VycyBzdHJva2VcIn19XHJcbiAgICAgICAgICAgIGlkPVwidGV4dDMxXCJcclxuICAgICAgICAgICAgdHJhbnNmb3JtPVwidHJhbnNsYXRlKDUuNjkwMjE5NCwtMC4xMTU1MTg4MylcIj48dGV4dFBhdGhcclxuICAgICAgICAgICAgIHhsaW5rSHJlZj1cIiNwYXRoMjVcIlxyXG4gICAgICAgICAgICAgIGlkPVwidGV4dFBhdGgzM1wiPkxlYXJuPHRzcGFuXHJcbiAgICAgICAgICBpZD1cInRzcGFuMzFcIiAvPjwvdGV4dFBhdGg+PC90ZXh0PiAgPC9hPlxyXG4gICAgICAgPC9nPlxyXG4gICAgICAgPGdcclxuICAgICAgICAgIGlkPVwiZzI3XCJcclxuICAgICAgICAgIHN0eWxlPXt7c3Ryb2tlV2lkdGg6XCI2XCIsc3Ryb2tlRGFzaGFycmF5Olwibm9uZVwifX1cclxuICAgICAgICAgIHRyYW5zZm9ybT1cInRyYW5zbGF0ZSg4LjAwMTk2OTksMi44NDE4MjIzKVwiPlxyXG4gICAgICAgICA8cG9seWdvblxyXG4gICAgICAgICAgICBjbGFzc05hbWU9XCJjbHMtMTBcIlxyXG4gICAgICAgICAgICAgcG9pbnRzPVwiNjIuNTMsNy4xMiA2My40NywwIDY5LjE3LDQuMzcgXCJcclxuICAgICAgICAgICAgaWQ9XCJwb2x5Z29uMjNcIlxyXG4gICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDIuNzcxMjI2MywwLjU4MTQ3NTQ4LC0wLjU4MTQ3NTQ4LDIuNzcxMjI2MywtOTYuNTg3ODI4LC0zOS43NDgwNzEpXCJcclxuICAgICAgICAgICAgc3R5bGU9e3tmaWxsOlwiI2EwYTdmM1wiLGZpbGxPcGFjaXR5OlwiMVwiLHN0cm9rZVdpZHRoOlwiNlwiLHN0cm9rZURhc2hhcnJheTpcIm5vbmVcIn19XHJcbiAgICAgICAgICAgIGlua3NjYXBlOnRyYW5zZm9ybS1jZW50ZXIteD1cIjMuNjE3Mzc1MVwiXHJcbiAgICAgICAgICAgIGlua3NjYXBlOnRyYW5zZm9ybS1jZW50ZXIteT1cIjUuMTk3ODg1MlwiIC8+XHJcbiAgICAgICAgICAgIDxhICB0eXBlb2Y9XCJidXR0b25cIiBjbGFzc05hbWU9XCJzdmctYnV0dG9uXCIgb25DbGljaz17b3BlbkVsZW1lbnQoe2VsZW1lbnRUb09wZW46IFwidGVzdGluZ1wiLCBjbGFzc1RvSGlkZTogXCJjeWNsZXRhYlwifSl9PlxyXG4gICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICBjbGFzc05hbWU9XCJjbHMtOVwiXHJcbiAgICAgICAgICAgIGQ9XCJNIDc4LjU5OTExMSw3LjU0NjgyNjQgQyA0My44MjAzNDYsLTIuNjE3NzU4OCAxMy45NTY3NDYsMTQuMjg2MDQ2IDQuMjEwNjI4MSw0Ni4zNjg3NDlcIlxyXG4gICAgICAgICAgICBpZD1cInBhdGgyM1wiXHJcbiAgICAgICAgICAgIHN0eWxlPXt7c3Ryb2tlOlwiI2EwYTdmM1wiLHN0cm9rZVdpZHRoOlwiMTVcIixzdHJva2VEYXNoYXJyYXk6XCJub25lXCIsc3Ryb2tlT3BhY2l0eTpcIjFcIn19IC8+XHJcbiAgICAgICAgIDx0ZXh0XHJcbiAgICAgICAgICAgIFxyXG4gICAgICAgICAgICBzdHlsZT17e2ZvbnRTaXplOlwiMTcuMzMzM3B4XCIsbGluZUhlaWdodDpcIjBcIixmb250RmFtaWx5OlwiQXJpYWxcIixmaWxsOlwidmFyKC0tb2ZmYmxhY2spXCIsZmlsbE9wYWNpdHk6XCIxXCIsc3Ryb2tlOlwibm9uZVwiLHN0cm9rZVdpZHRoOlwiNlwiLHN0cm9rZUxpbmVjYXA6XCJyb3VuZFwiLHN0cm9rZUxpbmVqb2luOlwicm91bmRcIixzdHJva2VEYXNoYXJyYXk6XCJub25lXCIsc3Ryb2tlT3BhY2l0eTpcIjFcIixwYWludE9yZGVyOlwiZmlsbCBtYXJrZXJzIHN0cm9rZVwifX1cclxuICAgICAgICAgICAgaWQ9XCJ0ZXh0MjhcIlxyXG4gICAgICAgICAgICBcclxuICAgICAgICAgICAgdHJhbnNmb3JtPVwidHJhbnNsYXRlKC0wLjAzMDIzNTA2LC01Ljk2MDIzMzYpXCI+PHRleHRQYXRoXHJcbiAgICAgICAgICAgIHhsaW5rSHJlZj1cIiNwYXRoMjNcIlxyXG4gICAgICAgICAgICAgaWQ9XCJ0ZXh0UGF0aDI4XCI+VGVzdDwvdGV4dFBhdGg+PC90ZXh0PiA8L2E+XHJcbiAgICAgICA8L2c+XHJcbiAgICAgICA8Z1xyXG4gICAgICAgICAgaWQ9XCJnMjhcIlxyXG4gICAgICAgICAgc3R5bGU9e3tzdHJva2VXaWR0aDpcIjZcIixzdHJva2VEYXNoYXJyYXk6XCJub25lXCJ9fVxyXG4gICAgICAgICAgdHJhbnNmb3JtPVwidHJhbnNsYXRlKDguMDAxOTY5OSwyLjg0MTgyMjMpXCI+XHJcbiAgICAgICAgIDxwb2x5Z29uXHJcbiAgICAgICAgICAgIGNsYXNzTmFtZT1cImNscy0xM1wiXHJcbiAgICAgICAgICAgIHBvaW50cz1cIjExNy42NSw3OC44NCAxMTIuMDcsODMuMzYgMTEwLjk0LDc2LjI3IFwiXHJcbiAgICAgICAgICAgICBpZD1cInBvbHlnb24yNS02XCJcclxuICAgICAgICAgICAgc3R5bGU9e3tmaWxsOlwiI2Y1N2QyMlwiLGZpbGxPcGFjaXR5OlwiMVwiLHN0cm9rZVdpZHRoOlwiNlwiLHN0cm9rZURhc2hhcnJheTpcIm5vbmVcIn19XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgtMi45NjUwMzE0LDAuMzA0NDk4OTMsLTAuMzA0NDk4OTMsLTIuOTY1MDMxNCwzNjQuODQwNjcsMjQ5LjI4MjQ5KVwiIC8+XHJcbiAgICAgICAgICAgIDxhICB0eXBlb2Y9XCJidXR0b25cIiBjbGFzc05hbWU9XCJzdmctYnV0dG9uXCIgb25DbGljaz17b3BlbkVsZW1lbnQoe2VsZW1lbnRUb09wZW46IFwiYnVpbGRpbmdcIiwgY2xhc3NUb0hpZGU6IFwiY3ljbGV0YWJcIn0pfT5cclxuICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgIGNsYXNzTmFtZT1cImNscy0xMVwiXHJcbiAgICAgICAgICAgIGQ9XCJNIDIuNjY1OTc1Myw1MC45NTM1MDUgQyAtMi4wOTU2Njk0LDcyLjcyNzkxNSAxMC45MzY4NjYsMTAyLjk0MjczIDM2LjY1NjIzNCwxMTMuNjI4MzRcIlxyXG4gICAgICAgICAgICAgaWQ9XCJwYXRoMjRcIlxyXG4gICAgICAgICAgICBzdHlsZT17e3N0cm9rZVdpZHRoOlwiMTVcIixzdHJva2VEYXNoYXJyYXk6XCJub25lXCIsc3Ryb2tlOlwiI2Y1N2QyMlwiLHN0cm9rZU9wYWNpdHk6XCIxXCJ9fSAvPlxyXG4gICAgICAgICA8dGV4dFxyXG4gICAgICAgICAgICBcclxuICAgICAgICAgICAgc3R5bGU9e3tmb250U2l6ZTpcIjE3LjMzMzNweFwiLGxpbmVIZWlnaHQ6XCIwXCIsZm9udEZhbWlseTpcIkFyaWFsXCIsZmlsbDpcInZhcigtLW9mZmJsYWNrKVwiLGZpbGxPcGFjaXR5OlwiMVwiLHN0cm9rZTpcIm5vbmVcIixzdHJva2VXaWR0aDpcIjE1XCIsc3Ryb2tlTGluZWNhcDpcInJvdW5kXCIsc3Ryb2tlTGluZWpvaW46XCJyb3VuZFwiLHN0cm9rZURhc2hhcnJheTpcIm5vbmVcIixzdHJva2VPcGFjaXR5OlwiMVwiLHBhaW50T3JkZXI6XCJmaWxsIG1hcmtlcnMgc3Ryb2tlXCJ9fVxyXG4gICAgICAgICAgICBpZD1cInRleHQzMlwiXHJcbiAgICAgICAgICAgIHRyYW5zZm9ybT1cInRyYW5zbGF0ZSgtNS43MTEwMzE1LDEuNzQ1MzI0MylcIj48dGV4dFBhdGhcclxuICAgICAgICAgICAgIHhsaW5rSHJlZj1cIiNwYXRoMjRcIlxyXG4gICAgICAgICAgICAgIGlkPVwidGV4dFBhdGgzMlwiPkJ1aWxkPHRzcGFuXHJcbiAgICBpZD1cInRzcGFuMzJcIiAvPjwvdGV4dFBhdGg+PC90ZXh0PiA8L2E+XHJcbiAgICAgICA8L2c+XHJcbiAgICAgICA8cG9seWdvblxyXG4gICAgICAgICAgY2xhc3NOYW1lPVwiY2xzLThcIlxyXG4gICAgICAgICAgcG9pbnRzPVwiMzcuMjIsMTEzLjc0IDQ0LjMsMTEyLjU2IDQxLjc4LDExOS4yOCBcIlxyXG4gICAgICAgICAgaWQ9XCJwb2x5Z29uMjJcIlxyXG4gICAgICAgICAgc3R5bGU9e3tzdHJva2VXaWR0aDpcIjZcIixzdHJva2VEYXNoYXJyYXk6XCJub25lXCIsZmlsbDpcIiNmNGNjMWVcIixmaWxsT3BhY2l0eTpcIjFcIn19XHJcbiAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMi44MjQ4NTg4LDAsMCwyLjgyNDg1ODgsLTY3Ljc5Nzc4MSwtMjA3Ljk2OTc3KVwiIC8+XHJcbiAgICAgICAgICA8YSAgdHlwZW9mPVwiYnV0dG9uXCIgY2xhc3NOYW1lPVwic3ZnLWJ1dHRvblwiIG9uQ2xpY2s9e29wZW5FbGVtZW50KHtlbGVtZW50VG9PcGVuOiBcImRlc2lnbmluZ1wiLCBjbGFzc1RvSGlkZTogXCJjeWNsZXRhYlwifSl9PlxyXG4gICAgICAgPHRleHRcclxuICAgICAgICAgIFxyXG4gICAgICAgICAgc3R5bGU9e3tmb250U2l6ZTpcIjE3LjMzMzNweFwiLGxpbmVIZWlnaHQ6XCIwXCIsZm9udEZhbWlseTpcIkFyaWFsXCIsZmlsbDpcInZhcigtLW9mZmJsYWNrKVwiLGZpbGxPcGFjaXR5OlwiMVwiLHN0cm9rZTpcIm5vbmVcIixzdHJva2VXaWR0aDpcIjE1XCIsc3Ryb2tlTGluZWNhcDpcInJvdW5kXCIsc3Ryb2tlTGluZWpvaW46XCJyb3VuZFwiLHN0cm9rZURhc2hhcnJheTpcIm5vbmVcIixzdHJva2VPcGFjaXR5OlwiMVwiLHBhaW50T3JkZXI6XCJmaWxsIG1hcmtlcnMgc3Ryb2tlXCJ9fVxyXG4gICAgICAgICAgaWQ9XCJ0ZXh0MjlcIlxyXG4gICAgICAgICAgdHJhbnNmb3JtPVwidHJhbnNsYXRlKDguNDA1MjkyMSw4Ljg1NTMzMzQpXCI+PHRleHRQYXRoXHJcbiAgICAgICAgICB4bGlua0hyZWY9XCIjcGF0aDIyXCJcclxuICAgICAgICAgIGlkPVwidGV4dFBhdGgzNFwiPkRlc2lnbjx0c3BhblxyXG4gICAgICAgICAgaWQ9XCJ0c3BhbjI5XCIgLz48L3RleHRQYXRoPjwvdGV4dD4gPC9hPlxyXG4gICAgIDwvZz5cclxuICAgPC9nPlxyXG4gICA8YSAgdHlwZW9mPVwiYnV0dG9uXCIgY2xhc3NOYW1lPVwic3ZnLWJ1dHRvblwiIG9uQ2xpY2s9e29wZW5FbGVtZW50KHtlbGVtZW50VG9PcGVuOiBcIm92ZXJ2aWV3XCIsIGNsYXNzVG9IaWRlOiBcImN5Y2xldGFiXCJ9KX0+XHJcbiAgIDxjaXJjbGVcclxuICAgICBzdHlsZT17e29wYWNpdHk6XCIwLjg1XCIsZmlsbDpcIiNlMmRhZDdcIixmaWxsT3BhY2l0eTpcIjFcIixzdHJva2VXaWR0aDpcIjE1XCIsc3Ryb2tlTGluZWNhcDpcInJvdW5kXCIsc3Ryb2tlTGluZWpvaW46XCJyb3VuZFwiLHBhaW50T3JkZXI6XCJmaWxsIG1hcmtlcnMgc3Ryb2tlXCJ9fVxyXG4gICAgIGlkPVwicGF0aDFcIlxyXG4gICAgIGN4PVwiNjcuOTE2MjE0XCJcclxuICAgICBjeT1cIjYzLjIxNDAwNVwiXHJcbiAgICAgcj1cIjIwXCIgLz5cclxuICA8dGV4dFxyXG4gICAgIHN0eWxlPXt7Zm9udFNpemU6XCI4cHhcIixsaW5lSGVpZ2h0OlwiMFwiLGZvbnRGYW1pbHk6XCJBcmlhbFwiLG9wYWNpdHk6XCIwLjg1XCIsZmlsbDpcInZhcigtLW9mZmJsYWNrKVwiLGZpbGxPcGFjaXR5OlwiMVwiLHN0cm9rZVdpZHRoOlwiMTVcIixzdHJva2VMaW5lY2FwOlwicm91bmRcIixzdHJva2VMaW5lam9pbjpcInJvdW5kXCIsc3Ryb2tlRGFzaGFycmF5Olwibm9uZVwiLHBhaW50T3JkZXI6XCJmaWxsIG1hcmtlcnMgc3Ryb2tlXCJ9fVxyXG4gICAgIHg9XCI1MC45Mjk4MjVcIlxyXG4gICAgIHk9XCI2Ni42NzY2NzRcIlxyXG4gICAgIGlkPVwidGV4dDFcIj5cclxuICAgICAgPHRzcGFuXHJcbiAgICAgICBpZD1cInRzcGFuMVwiXHJcbiAgICAgICB4PVwiNTAuOTI5ODI1XCJcclxuICAgICAgIHk9XCI2Ni42NzY2NzRcIlxyXG4gICAgICAgc3R5bGU9e3tmb250U2l6ZTpcIjhweFwifX0+T3ZlcnZpZXc8L3RzcGFuPjwvdGV4dD4gXHJcbiAgICAgICA8L2E+XHJcblxyXG4gPC9zdmc+XHJcbiBcclxuICAgIClcclxuIH1cclxuXHJcblxyXG4iLCAiXHJcblxyXG5pbXBvcnQgeyBEb3dubG9hZEltYWdlQnV0dG9uIH0gZnJvbSBcIi4uL2NvbXBvbmVudHMvQnV0dG9uc1wiO1xyXG5pbXBvcnQgSDIgZnJvbSBcIi4uL2NvbXBvbmVudHMvSGVhZGluZ3NcIjtcclxuaW1wb3J0IHsgdXNlVGFiTmF2aWdhdGlvbiB9IGZyb20gXCIuLi91dGlscy9UYWJOYXZpZ2F0aW9uXCI7XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gTm90ZWJvb2soKSB7XHJcbiAgdXNlVGFiTmF2aWdhdGlvbigpO1xyXG4gIHJldHVybiAoXHJcbiAgICA8ZGl2PlxyXG4gICAgICA8SDIgdGV4dD1cIkxhYiBKb3VybmFscyBhbmQgUHJvdG9jb2wgY29sbGVjdGlvblwiIGlkPVwibm90ZWJvb2tIXCIvPiBcclxuICAgICAgPGRpdiBjbGFzc05hbWU9XCJlbmctYm94IGJveFwiID5cclxuICAgICAgICAgICAgICAgICAgICAgPHA+SGVyZSB5b3UgY2FuIGhhdmUgYSBkZXRhaWxlZCBsb29rIGF0IG91ciBsYWIgd29yayAtIGp1c3Qga2xpY2sgdGhlIGZyb250IHBhZ2VzIG9mIHRoZSBMYWIgSm91cm5hbHMgYW5kIFByb3RvY29sIENvbGxlY3Rpb24gdG8gZG93bmxvYWQgdGhlbSEgXHJcbiAgICAgICAgICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgIDxwPjwvcD4gICAgICAgICAgICBcclxuICAgICAgPGRpdiBjbGFzc05hbWU9J3Jvdyc+XHJcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgIDxEb3dubG9hZEltYWdlQnV0dG9uIHVybD1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3BkZnMvbGFib3JhdG9yeS1ub3RlYm9vay0xLXByb29mLW9mLWNvbmNlcHQtZm9yLXBlLnBkZlwiIGZpbGVOYW1lPVwibGFib3JhdG9yeS1ub3RlYm9vay0xLXByb29mLW9mLWNvbmNlcHQtZm9yLXBlLnBkZlwiPlxyXG4gICAgICAgICAgICA8aW1nIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2xhYi1qb3VybmFscy90aXRlbHNlaXRlLWxhYi1ib29rLTEtcHJvb2Ytb2YtY29uY2VwdC1wZS53ZWJwXCIgc3R5bGU9e3toZWlnaHQ6IFwiNzUlXCIsIHdpZHRoOiBcImF1dG9cIn19Lz5cclxuICAgICAgICAgIDwvRG93bmxvYWRJbWFnZUJ1dHRvbj5cclxuICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICA8RG93bmxvYWRJbWFnZUJ1dHRvbiB1cmw9XCJcIiBmaWxlTmFtZT1cIlwiPlxyXG4gICAgICAgICAgICA8aW1nIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2xhYi1qb3VybmFscy90aXRlbHNlaXRlLWxhYi1ib29rLTItZW5naW5lZXJpbmctcGUud2VicFwiIHN0eWxlPXt7aGVpZ2h0OiBcIjc1JVwiLCB3aWR0aDogXCJhdXRvXCJ9fS8+XHJcbiAgICAgICAgICAgIDwvRG93bmxvYWRJbWFnZUJ1dHRvbj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxkaXYgY2xhc3NOYW1lPSdyb3cnPlxyXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgPERvd25sb2FkSW1hZ2VCdXR0b24gdXJsPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGRmcy9sYWItYm9vay0zLXByaW1hcnktY3VsdHVyZXMucGRmXCIgZmlsZU5hbWU9XCJsYWItYm9vay0zLXByaW1hcnktY3VsdHVyZXMucGRmXCI+XHJcbiAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvbGFiLWpvdXJuYWxzL3RpdGVsc2VpdGUtbGFiLWJvb2stMy1wcmltYXJ5LWNlbGwtY3VsdHVyZS53ZWJwXCIgc3R5bGU9e3toZWlnaHQ6IFwiNzUlXCIsIHdpZHRoOiBcImF1dG9cIn19Lz5cclxuICAgICAgICAgICAgPC9Eb3dubG9hZEltYWdlQnV0dG9uPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgPERvd25sb2FkSW1hZ2VCdXR0b24gdXJsPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGRmcy9sYWItYm9vay00LWxucC1kZXNpZ24tYWlyYnVkZHkucGRmXCIgZmlsZU5hbWU9XCJsYWItYm9vay00LWxucC1kZXNpZ24tYWlyYnVkZHkucGRmXCI+XHJcbiAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvbGFiLWpvdXJuYWxzL3RpdGVsc2VpdGUtbGFiLWJvb2stNC1sbnAud2VicFwiIHN0eWxlPXt7aGVpZ2h0OiBcIjc1JVwiLCB3aWR0aDogXCJhdXRvXCJ9fS8+XHJcbiAgICAgICAgICAgIDwvRG93bmxvYWRJbWFnZUJ1dHRvbj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxkaXYgY2xhc3NOYW1lPSdyb3cnPlxyXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgPERvd25sb2FkSW1hZ2VCdXR0b24gdXJsPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGRmcy9sYWItYm9vay01LWRvd25zdHJlYW0tZXhwZXJpbWVudHMucGRmXCIgZmlsZU5hbWU9XCJsYWItYm9vay01LWRvd25zdHJlYW0tZXhwZXJpbWVudHMucGRmXCI+XHJcbiAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvbGFiLWpvdXJuYWxzL3RpdGVsc2VpdGUtbGFiLWJvb2stNS1kb3duc3RyZWFtLndlYnBcIiBzdHlsZT17e2hlaWdodDogXCI3NSVcIiwgd2lkdGg6IFwiYXV0b1wifX0vPlxyXG4gICAgICAgICAgICA8L0Rvd25sb2FkSW1hZ2VCdXR0b24+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICA8RG93bmxvYWRJbWFnZUJ1dHRvbiB1cmw9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9wZGZzL3Byb3RvY29sLWNvbGxlY3Rpb24taWdlbS0yMDI0LnBkZlwiIGZpbGVOYW1lPVwicHJvdG9jb2wtY29sbGVjdGlvbi1pZ2VtLTIwMjQucGRmXCI+XHJcbiAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvbGFiLWpvdXJuYWxzL3RpdGVsc2VpdGUtbGFiLWJvb2stc29wLndlYnBcIiBzdHlsZT17e2hlaWdodDogXCI3NSVcIiwgd2lkdGg6IFwiYXV0b1wifX0vPlxyXG4gICAgICAgICAgICA8L0Rvd25sb2FkSW1hZ2VCdXR0b24+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcblxyXG4gICk7XHJcbn1cclxuIiwgImltcG9ydCB7IFBhcnQgfSBmcm9tIFwiLi4vZGF0YS9wYXJ0c1wiO1xyXG5pbXBvcnQgeyBSZXMgfSBmcm9tIFwiLi4vZGF0YS9yZXN1bHRzLXRhYmxlXCI7XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gUGFydFRhYmxlKHtkYXRhLCBjb2xzfToge2RhdGE6IEFycmF5PFBhcnQ+LCBjb2xzOiBBcnJheTxzdHJpbmc+fSl7XHJcbiAgICBsZXQgbGlzdDogSlNYLkVsZW1lbnRbXSAgPSBbXTtcclxuICAgIGZvciAobGV0IGluZGV4ID0gMDsgaW5kZXggPCBkYXRhLmxlbmd0aDsgaW5kZXgrKykge1xyXG4gICAgICAgIGxpc3QucHVzaChcclxuICAgICAgICAgICAgPHRyPlxyXG4gICAgICAgICAgICAgICAgPHRkPntkYXRhW2luZGV4XS5wYXJ0bmFtZX08L3RkPlxyXG4gICAgICAgICAgICAgICAgPHRkPjxhIGhyZWY9e2RhdGFbaW5kZXhdLnVybH0+e2RhdGFbaW5kZXhdLnJlZ2lzdHJ5Y29kZX08L2E+PC90ZD5cclxuICAgICAgICAgICAgICAgIDx0ZD57ZGF0YVtpbmRleF0uZGVzY3JpcHRpb259PC90ZD5cclxuICAgICAgICAgICAgICAgIDx0ZD57ZGF0YVtpbmRleF0ubGVuZ3RofTwvdGQ+XHJcbiAgICAgICAgICAgICAgICA8dGQ+e2RhdGFbaW5kZXhdLnR5cGV9PC90ZD5cclxuICAgICAgICAgICAgPC90cj5cclxuICAgICAgICApXHJcbiAgICB9XHJcbiAgICBsZXQgaGVhZHM6IEpTWC5FbGVtZW50W10gID0gW107IFxyXG4gICAgZm9yIChsZXQgaW5kZXggPSAwOyBpbmRleCA8IGNvbHMubGVuZ3RoOyBpbmRleCsrKSB7XHJcbiAgICAgICAgaGVhZHMucHVzaCg8dGQ+PGI+e2NvbHNbaW5kZXhdfTwvYj48L3RkPilcclxuICAgIH1cclxuICAgIHJldHVybihcclxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImZsZXggZmxleC1jb2xcIj5cclxuICAgICA8ZGl2IGNsYXNzTmFtZT1cIm1pbi13LWZ1bGwgb3ZlcmZsb3cteC1hdXRvXCI+XHJcbiAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImlubGluZS1ibG9jayBtaW4tdy1mdWxsXCI+XHJcbiAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwib3ZlcmZsb3ctaGlkZGVuIHAtMlwiPlxyXG4gICAgICAgICAgIDx0YWJsZSBjbGFzc05hbWU9XCJ0ZXh0LWNlbnRlciBwYXJ0dGFibGVcIj5cclxuICAgICAgICAgICAgIDx0aGVhZCBjbGFzc05hbWU9XCJiZy1kXCI+XHJcbiAgICAgICAgICAgICAgICA8dHI+XHJcbiAgICAgICAgICAgICAgICAgICAge2hlYWRzfVxyXG4gICAgICAgICAgICAgICAgPC90cj5cclxuICAgICAgICAgICAgIDwvdGhlYWQ+XHJcbiAgICAgICAgICAgICA8dGJvZHk+XHJcbiAgICAgICAgICAgICAgICB7bGlzdH1cclxuICAgICAgICAgICAgIDwvdGJvZHk+XHJcbiAgICAgICAgICAgPC90YWJsZT5cclxuICAgICAgICAgPC9kaXY+XHJcbiAgICAgICA8L2Rpdj5cclxuICAgICA8L2Rpdj5cclxuICAgPC9kaXY+XHJcbiAgICApXHJcbn1cclxuXHJcblxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIFJlc1RhYmxlKHtkYXRhLCBjb2xzfToge2RhdGE6IEFycmF5PFJlcz4sIGNvbHM6IEFycmF5PHN0cmluZz59KXtcclxuICBsZXQgbGlzdDogSlNYLkVsZW1lbnRbXSAgPSBbXTtcclxuICBmb3IgKGxldCBpbmRleCA9IDA7IGluZGV4IDwgZGF0YS5sZW5ndGg7IGluZGV4KyspIHtcclxuICAgICAgbGlzdC5wdXNoKFxyXG4gICAgICAgICAgPHRyPlxyXG4gICAgICAgICAgICAgIDx0ZD57ZGF0YVtpbmRleF0ubnJ9PC90ZD5cclxuICAgICAgICAgICAgICA8dGQ+e2RhdGFbaW5kZXhdLnNpbGVudH08L3RkPlxyXG4gICAgICAgICAgICAgIDx0ZD57ZGF0YVtpbmRleF0ucGJzfTwvdGQ+XHJcbiAgICAgICAgICAgICAgPHRkPntkYXRhW2luZGV4XS5ydHR9PC90ZD5cclxuICAgICAgICAgICAgICA8dGQ+e2RhdGFbaW5kZXhdLnExfTwvdGQ+XHJcbiAgICAgICAgICA8L3RyPlxyXG4gICAgICApXHJcbiAgfVxyXG4gIGxldCBoZWFkczogSlNYLkVsZW1lbnRbXSAgPSBbXTsgXHJcbiAgZm9yIChsZXQgaW5kZXggPSAwOyBpbmRleCA8IGNvbHMubGVuZ3RoOyBpbmRleCsrKSB7XHJcbiAgICAgIGhlYWRzLnB1c2goPHRkPjxiPntjb2xzW2luZGV4XX08L2I+PC90ZD4pXHJcbiAgfVxyXG4gIHJldHVybihcclxuICAgICAgPGRpdiBjbGFzc05hbWU9XCJmbGV4IGZsZXgtY29sXCI+XHJcbiAgIDxkaXYgY2xhc3NOYW1lPVwibWluLXctZnVsbCBvdmVyZmxvdy14LWF1dG9cIj5cclxuICAgICA8ZGl2IGNsYXNzTmFtZT1cImlubGluZS1ibG9jayBtaW4tdy1mdWxsXCI+XHJcbiAgICAgICA8ZGl2IGNsYXNzTmFtZT1cIm92ZXJmbG93LWhpZGRlbiBwLTJcIj5cclxuICAgICAgICAgPHRhYmxlIGNsYXNzTmFtZT1cInRleHQtY2VudGVyIHJlc3RhYmxlXCI+XHJcbiAgICAgICAgICAgPHRoZWFkIGNsYXNzTmFtZT1cImJnLWRcIj5cclxuICAgICAgICAgICAgICA8dHI+XHJcbiAgICAgICAgICAgICAgICAgIHtoZWFkc31cclxuICAgICAgICAgICAgICA8L3RyPlxyXG4gICAgICAgICAgIDwvdGhlYWQ+XHJcbiAgICAgICAgICAgPHRib2R5PlxyXG4gICAgICAgICAgICAgIHtsaXN0fVxyXG4gICAgICAgICAgIDwvdGJvZHk+XHJcbiAgICAgICAgIDwvdGFibGU+XHJcbiAgICAgICA8L2Rpdj5cclxuICAgICA8L2Rpdj5cclxuICAgPC9kaXY+XHJcbiA8L2Rpdj5cclxuICApXHJcbn0iLCAiXHJcbmltcG9ydCB7ICBINCB9IGZyb20gXCIuLi9jb21wb25lbnRzL0hlYWRpbmdzXCI7XHJcblxyXG5pbXBvcnQgeyBTZWN0aW9uLCBTdWJlc2N0aW9uIH0gZnJvbSBcIi4uL2NvbXBvbmVudHMvc2VjdGlvbnNcIjtcclxuaW1wb3J0IHsgdXNlVGFiTmF2aWdhdGlvbiB9IGZyb20gXCIuLi91dGlscy9UYWJOYXZpZ2F0aW9uXCI7XHJcbmltcG9ydCB7IEg1IH0gZnJvbSBcIi4uL2NvbXBvbmVudHMvSGVhZGluZ3NcIjtcclxuaW1wb3J0IHsgdXNlTmF2aWdhdGlvbiB9IGZyb20gXCIuLi91dGlsc1wiO1xyXG5pbXBvcnQgeyBEb3dubG9hZExpbmsgfSBmcm9tIFwiLi4vY29tcG9uZW50cy9CdXR0b25zXCI7XHJcbmltcG9ydCB7IE9uZUZpZ3VyZSwgVGhyZWVWZXJ0aWNhbCwgVHdvSG9yaXpvbnRhbCwgVHdvVmVydGljYWwgfSBmcm9tIFwiLi4vY29tcG9uZW50cy9GaWd1cmVzXCI7XHJcbmltcG9ydCB7IFJlc1RhYmxlIH0gZnJvbSBcIi4uL2NvbXBvbmVudHMvVGFibGVcIjtcclxuaW1wb3J0IHsgaGVhZGVyY29scywgcmVzdWx0ZGF0YSB9IGZyb20gXCIuLi9kYXRhL3Jlc3VsdHMtdGFibGVcIjtcclxuXHJcblxyXG5leHBvcnQgZnVuY3Rpb24gUmVzdWx0cygpIHtcclxuICB1c2VUYWJOYXZpZ2F0aW9uKCk7XHJcbiAgY29uc3Qge2dvVG9QYWdlc0FuZE9wZW5UYWJ9ID0gdXNlTmF2aWdhdGlvbiAoKTtcclxuICBjb25zdCB7Z29Ub1BhZ2VBbmRTY3JvbGx9ID0gdXNlTmF2aWdhdGlvbigpO1xyXG5cclxuICByZXR1cm4gKFxyXG4gICAgPD48U2VjdGlvbiB0aXRsZT1cIkFic3RyYWN0XCIgaWQ9XCJBYnN0cmFjdFwiPlxyXG4gICAgPHA+Rm9yIHRoZSBwcmltZSBlZGl0aW5nIG9mIDxzdHJvbmc+Q3lzdGljIEZpYnJvc2lzIChDRik8L3N0cm9uZz4sIHdlIG9uIHRoZSBvbmUgaGFuZCBvcHRpbWl6ZWQgYSBwcmltZSBlZGl0aW5nIGNvbXBsZXggYW5kIG9uIHRoZSBvdGhlciBoYW5kIGRldmVsb3BlZCBhbiBlZmZpY2llbnQgZGVsaXZlcnkgc3lzdGVtLiBGb3IgdGVzdGluZywgd2Ugc2V0IHVwIGNlbGwgY3VsdHVyZSB3aXRoIG1vZGVsIGNlbGwgbGluZXMgYXMgd2VsbCBhcyBwcmltYXJ5IGNlbGxzIHRha2VuIGZyb20gdGVhbSBtZW1iZXJzIGFuZCBhIHBhdGllbnQuPC9wPlxyXG48cD5Gb3IgZWRpdGluZywgd2UgZmlyc3QgY29tcGFyZWQgZGlmZmVyZW50IGV4aXN0aW5nIHByaW1lIGVkaXRvcnMgPHN0cm9uZz4ocENNVi1QRTIsIHBNTFYtUEVfQ08tTWluaSwgcENNVi1QRTZjKTwvc3Ryb25nPiBhbmQgY29uc3RydWN0ZWQgYSByZXBvcnRlciBwbGFzbWlkIHNpbXVsYXRpbmcgdGhlXHUyMDJGQ0ZUUiBjb250ZXh0LiBJbiBhZGRpdGlvbiBhbmQgdG8gZnVydGhlciBlbmhhbmNlIHRoZSBlZGl0aW5nIHByb2Nlc3MsIHdlIGRlc2lnbmVkIHZhcmlvdXMgcGVnUk5BcyB0YWlsb3JlZCB0byBvdXIgY29uc3RydWN0IGluY29ycG9yYXRpbmcgZmVhdHVyZXMgc3VjaCBhcyA8c3Ryb25nPnNpbGVudCBlZGl0czwvc3Ryb25nPiwgZm9yIGEgbG93ZXIgbWlzbWF0Y2ggcmVwYWlyLCBhbmQgYSAzXHUyMDMyIHN0YWJpbGl6aW5nIHN0ZW0gbG9vcCA8c3Ryb25nPih0ZXZvcHJlUTEpPC9zdHJvbmc+LiBUaGUgYWltIHdhcyB0byBpZGVudGlmeSB0aGUgbW9zdCBlZmZlY3RpdmUgcGVnUk5BIGZvciBvdXIgc3BlY2lmaWMgdGFyZ2V0LCB3aGljaCBpcyB3aHkgcGVnUk5BIGVzcGVjaWFsbHkgZm9yIDxzdHJvbmc+Q0ZUUiBGNTA4ZGVsIG11dGF0aW9uPC9zdHJvbmc+IHdlcmUgZGVzaWduZWQuIDwvcD4gXHJcbjxwPkFzIHByb29mIG9mIGNvbmNlcHQsIHdlIHRyYW5zZmVjdGVkIHRoZXNlIGNvbnN0cnVjdHMgaW4gPHN0cm9uZz5IRUsyOTMgYW5kIENGQjQxby0gY2VsbHM8L3N0cm9uZz4gYW5kIG9ic2VydmVkIHNpZ25pZmljYW50IHByaW1lIGVkaXRpbmcgb2Ygb3VyIHJlcG9ydGVyIHZpYSBmbHVvcmVzY2VuY2UgbWljcm9zY29weS4gV2UgaWRlbnRpZmllZCB0aGUgUEU2YyBlZGl0b3IgYW5kIG91ciBwZWdSTkEgdmFyaWFudCA0IGFzIG9wdGltYWwuIFRoaXMgcmVzdWx0ZWQgaW4gb3VyIDxzdHJvbmc+TmV3IEJhc2ljIFBhcnQ8L3N0cm9uZz4sIDxzdHJvbmc+UEVBUl9DRlRSPC9zdHJvbmc+LiBGdXJ0aGVybW9yZSwgd2UgZXh0ZW5kZWQgb3VyIGFwcHJvYWNoIHRvIHByaW1hcnkgaHVtYW4gbmFzYWwgZXBpdGhlbGlhbCBjZWxscyBnZW5lcmF0ZWQgZnJvbSBvdXIgb3duIG5hc2FsIGVwaXRoZWxpYWwgY2VsbHMgdGhyb3VnaCBuYXNhbCBzd2Ficy4gQnkgY3VsdGl2YXRpbmcgdGhlbSBpbiBBaXIgTGlxdWlkIEN1bHR1cmUgKEFMSSkgYW5kIEFwaWNhbC1PdXQgQWlyd2F5IE9yZ2Fub2lkcyAoQU9BTyksIHdlIHN1Y2Nlc3NmdWxseSB0ZXN0ZWQgb3VyIHRlY2hub2xvZ2llcyA8aT5pbiB2aXRybzwvaT4sIG1pbWlja2luZyB0aGUgPGk+aW4gdml2bzwvaT4gc2l0dWF0aW9uLjwvcD4gXHJcbjxwPkZ1cnRoZXJtb3JlLCB3ZSBzdWNjZXNzZnVsbHkgZGVzaWduZWQgYW5kIGNsb25lZCBub3ZlbCBuaWNrYXNlcyBvZiA8c3Ryb25nPkZhbnpvcjwvc3Ryb25nPiwgd2hpY2ggaXMgc3BlY2lhbCBiZWNhdXNlIG9mIGl0cyBzbWFsbGVyIHNpemUgYW5kIGV1a2FyeW90aWMgb3JpZ2luLiBUaGlzIHNlcnZlcyBhcyB2YWx1YWJsZSB0b29sIGZvciBmdXR1cmUgZ2Vub21lIGVkaXRpbmcgYXBwbGljYXRpb25zLiA8L3A+XHJcbjxwPkZvciBkZWxpdmVyeSwgbGlwaWQgbmFub3BhcnRpY2xlcyAoTE5QcykgYXJlIGEgaGlnaGx5IGVmZmVjdGl2ZSBhbmQgdmVyc2F0aWxlIGRlbGl2ZXJ5IHN5c3RlbSwgdmFsdWVkIGZvciB0aGVpciBsYXJnZXIgY2FyZ28gY2FwYWNpdHksIGJpb2NvbXBhdGliaWxpdHksIGFuZCBhYmlsaXR5IHRvIHByb3RlY3QgUk5BIGZyb20gZGVncmFkYXRpb24uIFRvIGRlbGl2ZXIgb3VyIFByaW1lIEVkaXRpbmcgY29uc3RydWN0IGFzIHBlZ1JOQSBhbmQgbVJOQSwgd2Ugb3B0aW1pemVkIGEgPHN0cm9uZz5TZWxlY3RpdmUgT1JnYW4gVGFyZ2V0aW5nIChTT1JUKSBMTlA8L3N0cm9uZz4gZm9yIHRhcmdldGVkIGRlbGl2ZXJ5IHRvIHRoZSBsdW5ncyBieSB1c2luZyB0aGUgY2F0aW9uaWMgaGVscGVyIGxpcGlkIERPVEFQIGFuZCBlbmNhcHN1bGF0aW5nIGEgc3RhYmxlIDxzdHJvbmc+Y2hpdG9zYW4tUk5BIGNvbXBsZXg8L3N0cm9uZz4sIGFjaGlldmluZyBzaWduaWZpY2FudCBicmVha3Rocm91Z2hzIGluIHRyYW5zZmVjdGlvbiBvZiA8aT5pbiB2aXRybzwvaT4gbHVuZyBlcGl0aGVsaWFsIGNlbGxzLiA8L3A+XHJcbjxwPldlIGJlZ2FuIGJ5IHRlc3RpbmcgdGhyZWUgZGlmZmVyZW50IExOUCBmb3JtdWxhdGlvbnMsIHN0YXJ0aW5nIHdpdGggdGhlIDxzdHJvbmc+Q2F5bWFuIExpcGlkTGF1bmNoIExOUC0xMDIgRXhwbG9yYXRpb24gS2l0PC9zdHJvbmc+LiBXZSBjb25maXJtZWQgYnkgZmx1b3Jlc2NlbmNlIG1pY3Jvc2NvcHksIHdoZXJlIE1pbmljaXJjbGUgRE5BIGVmZmVjdGl2ZWx5IHRyYW5zZmVjdGVkIEhFSzI5MyBjZWxscy4gRnVydGhlciBleHBlcmltZW50cyB3aXRoIHRoZSA8c3Ryb25nPkNvcmRlbiBMTlAgU3RhdGVyIEtpdCAjMjwvc3Ryb25nPiBmYWlsZWQgdG8gYWNoaWV2ZSBzdWNjZXNzZnVsIHRyYW5zZmVjdGlvbiwgbGlrZWx5IGR1ZSB0byBpbmNyZWFzZWQgY3l0b3RveGljaXR5IGZyb20gYSBtb3JlIGN5dG90b3hpYyBQRUcgY29tcG9uZW50LiBPdXIgc3VjY2Vzc2Z1bCBmb3JtdWxhdGlvbiB3YXMgYSA8c3Ryb25nPmx1bmctc3BlY2lmaWMgU09SVCBMTlA8L3N0cm9uZz4sIHdoaWNoIGRlbW9uc3RyYXRlZCBleGNlbGxlbnQgc3RhYmlsaXR5LCBhcyBjb25maXJtZWQgYnkgWmV0YSBwb3RlbnRpYWwgbWVhc3VyZW1lbnRzLiBEeW5hbWljIGxpZ2h0IHNjYXR0ZXJpbmcgKERMUykgYW5hbHlzaXMgcmV2ZWFsZWQgYW4gb3B0aW1hbCBwYXJ0aWNsZSBzaXplIG9mIGNsb3NlbHkgc21hbGxlciB0aGFuIDIwMCBubSwgYWxpZ25pbmcgd2l0aCBsaXRlcmF0dXJlIGFuZCBzdXBwb3J0aW5nIHRoZSBhYmlsaXR5IG9mIHRoZSBMTlBzIHRvIHBlbmV0cmF0ZSBkZWVwIGx1bmcgcmVnaW9ucyB2aWEgaW5oYWxhdGlvbi4gRmxvdyBjeXRvbWV0cnkgYW5hbHlzaXMgc2hvd2VkIHRoYXQgdGhlIFNPUlQgTE5QIGhhZCAxNCB0aW1lcyBoaWdoZXIgdHJhbnNmZWN0aW9uIGVmZmljaWVuY3kgY29tcGFyZWQgdG8gdHJhZGl0aW9uYWwgdHJhbnNmZWN0aW9uIG1ldGhvZHMuIE1vcmVvdmVyLCBhIE1UVCBhc3NheSByZXZlYWxlZCB0aGF0IHRoZSBTT1JUIExOUCwgYWxvbmcgd2l0aCBDYXltYW4gTE5QcywgZXhoaWJpdGVkIHRoZSBsb3dlc3QgY3l0b3RveGljaXR5LCB0aGFua3MgdG8gdGhlIHVzZSBvZiBsb3ctbW9sZWN1bGFyLXdlaWdodCBQRUcgY29tcG9uZW50cy4gPC9wPlxyXG48cD5UbyBmdXJ0aGVyIGVuaGFuY2UgdGhlIHN0YWJpbGl0eSBvZiB0aGUgTE5QcyBmb3IgaW5oYWxhdGlvbiwgd2UgaW5jb3Jwb3JhdGVkIDxzdHJvbmc+Y2hpdG9zYW4tUk5BIGNvbXBsZXhlczwvc3Ryb25nPiwgd2hpY2ggcHJvdmlkZSB0aGVybWFsIHN0YWJpbGl0eSBhbmQgcHJvdGVjdCBSTkEgZnJvbSBkZWdyYWRhdGlvbiBieSBSTmFzZXMuIEludGVncmF0aW9uIG9mIHRoZXNlIGNvbXBsZXhlcyBpbnRvIHRoZSBTT1JUIExOUCByZXN1bHRlZCBpbiBhIGx1bmctc3BlY2lmaWMgZGVsaXZlcnkgcGxhdGZvcm0gd2l0aCBzdXBlcmlvciBzdGFiaWxpdHkuIFVzaW5nIHRoaXMgc3lzdGVtLCB3ZSBhY2hpZXZlZCBoaWdobHkgZWZmaWNpZW50IHRyYW5zZmVjdGlvbiBvZiBhIGJyb25jaGlhbCBjZWxsIGxpbmUgZnJvbSBhIEN5c3RpYyBGaWJyb3NpcyBwYXRpZW50IChDRkJFNDFvLSB3aXRoIEY1MDhkZWwgbXV0YXRpb24pLCBkZW1vbnN0cmF0aW5nIHRoZSBwb3RlbnRpYWwgb2YgdGhpcyBhcHByb2FjaCBmb3IgdGFyZ2V0ZWQgZ2VuZSBkZWxpdmVyeSB0byBsdW5nIGVwaXRoZWxpYWwgY2VsbHMuIFRoZXNlIHJlc3VsdHMgaGlnaGxpZ2h0IHRoZSByZW1hcmthYmxlIGVmZmljaWVuY3ksIHN0YWJpbGl0eSBhbmQgc3BlY2lmaWNpdHkgb2Ygb3VyIG9wdGltaXplZCBTT1JUIExOUCBmb3JtdWxhdGlvbiwgcG9zaXRpb25pbmcgaXQgYXMgYSBwcm9taXNpbmcgcGxhdGZvcm0gZm9yIGx1bmctc3BlY2lmaWMgZ2VuZXRpYyB0aGVyYXBpZXMuIDwvcD5cclxuICAgICAgPC9TZWN0aW9uPlxyXG4gICAgICA8U2VjdGlvbiB0aXRsZT1cIkV4cGVyaW1lbnRhbCBEZXNpZ25cIiBpZD1cIkV4cGVyaW1lbnRhbCBEZXNpZ25cIj5cclxuICAgICAgPFN1YmVzY3Rpb24gdGl0bGU9XCJQcm9vZiBvZiBDb25jZXB0XCIgaWQ9XCJFeHBlcmltZW50YWwgRGVzaWduMVwiPlxyXG4gICAgICAgICAgPEg1IHRleHQ9XCJXb3JrZmxvd1wiLz5cclxuICAgICAgICAgIDxwPlRoZSBwcmVwYXJlZCBwREFTMTIxMjQtcHJlZWRpdGVkIHBsYXNtaWQgc2VydmVzIGFzIGEgcG9zaXRpdmUgY29udHJvbCB0byB2YWxpZGF0ZSB0aGUgc3VjY2VzcyBvZiB0aGUgZXhwZXJpbWVudC4gQSB0ZWNobmljYWwgY29udHJvbCB3aXRoIHRoZSBwWk1COTM4IHBsYXNtaWQgY29uZmlybXMgc3VjY2Vzc2Z1bCB0cmFuc2ZlY3Rpb24gb2YgdGhlIGNlbGxzLiBJbiB0aGUgbWFpbiBwYXJ0IG9mIHRoZSBleHBlcmltZW50LCBwREFTMTI0ODktMmluMSBhbmQgcENNVi1QRTIgYXJlIGNvLXRyYW5zZmVjdGVkLiBTdWNjZXNzZnVsIHRyYW5zZmVjdGlvbiBpcyB2aXN1YWxpc2VkIGJ5IEdGUCBzaWduYWxzLjwvcD4gXHJcbiAgICAgICAgICA8SDUgdGV4dD1cIkNvbmNsdXNpb25cIi8+XHJcbiAgICAgICAgICA8cD5UaGUgbWljcm9zY29weSBkYXRhIHZhbGlkYXRlcyBvdXIgcHJvb2Ygb2YgY29uY2VwdC4gQ29tcGFyZWQgdG8gb3VyIGludGVybmFsIHBvc2l0aXZlIGNvbnRyb2wsIHBEQVMxMjEyNC1wcmVlZGl0ZWQgKHNlZSBGaWd1cmUgMSksIGxlc3MgY2VsbHMgY28tdHJhbnNmZWN0ZWQgd2l0aCBwREFTMTI0ODkgYW5kIHBDTVYtUEUyIChzZWUgRmlndXJlIDEpIHNob3dlZCBmbHVvcmVzY2VuY2UuIENvbnRyYXJ5IHRvIG91ciBleHBlY3RhdGlvbnMsIHRoZSB0ZWNobmljYWwgdHJhbnNmZWN0aW9uIGNvbnRyb2wgd2l0aCBwWk1COTM4IHNob3dlZCBsb3dlciB0cmFuc2ZlY3Rpb24gZWZmaWNpZW5jeS4gQWxsIG5lZ2F0aXZlIGNvbnRyb2xzIHNob3dlZCBubyBmbHVvcmVzY2VuY2UuPC9wPlxyXG4gICAgICAgICAgPFRocmVlVmVydGljYWxcclxuICAgICAgICAgICAgZGVzY3JpcHRpb249XCJNaWNyb3Njb3B5IG9mIEhFSzI5MyA3MmggcG9zdCB0cmFuc2ZlY3Rpb24gd2l0aCBsaXBvZmVjdGFtaW5lIDIwMDAuIFRyYW5zZmVjdGlvbiB3aXRoIHRlY2huaWNhbCBwb3NpdGl2ZSBjb250cm9sIHBaTUI5MzgsIGludGVybmFsIHBvc2l0aXZlIGNvbnRyb2wgcERBUzEyMTI0LXByZWVkaXRlZCwgY28tdHJhbnNmZWN0aW9uIG9mIHBEQVMxMjQ4OSB3aXRoIHBDTVYtUEUyLCBOVEMsIFBFMiBhcyBjb250cm9sIGFuZCBwREFTMTI0ODkgYXMgY29udHJvbC4gQWxsIGNvbnRyb2xzIGFyZSBuZWdhdGl2ZSBhbmQgYm90aCBwb3NpdHZlIGNvbnRyb2xzIGFzIHdlbGwgYXMgcERBUzEyNDg5K3BDTVYtUEUyIHNob3cgZmx1b3Jlc2NlbmNlIHNpZ25hbHMuIEJGID0gQnJpZ2h0ZmllbGRcIlxyXG4gICAgICAgICAgICBudW09ezF9XHJcbiAgICAgICAgICAgIHBpYzE9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvZmFjcy1yZXN1bHRzLW1lY2hhbmlzbS9iaWxkMS0xLnBuZ1wiXHJcbiAgICAgICAgICAgIGFsdDE9XCJwWk1CXCJcclxuICAgICAgICAgICAgYmc9XCJ3aGl0ZVwiXHJcbiAgICAgICAgICAgIHBpYzI9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvZmFjcy1yZXN1bHRzLW1lY2hhbmlzbS9iaWxkMS0yLnBuZ1wiXHJcbiAgICAgICAgICAgIHBpYzM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvZmFjcy1yZXN1bHRzLW1lY2hhbmlzbS9iaWxkMS0zLnBuZ1wiXHJcbiAgICAgICAgICAvPlxyXG4gICAgICAgICAgPEg0IHRleHQ9XCJUcmFuc2ZlY3Rpb24gb3B0aW1pemF0aW9uXCIvPlxyXG4gICAgICAgICAgPEg1IHRleHQ9XCJXb3JrZmxvd1wiLz5cclxuICAgICAgICAgIDxwPlRvIG9wdGltaXNlIHRyYW5zZmVjdGlvbiBlZmZpY2llbmN5LCBkaWZmZXJlbnQgZGlsdXRpb25zIGFuZCBjb25jZW50cmF0aW9ucyBvZiBETkEgd2VyZSB1c2VkIHRvIGZpbmQgdGhlIGJlc3QgdHJhbnNmZWN0aW9uIGNvbmRpdGlvbnMuPC9wPiBcclxuICAgICAgICAgIDxINSB0ZXh0PVwiQ29uY2x1c2lvblwiLz5cclxuICAgICAgICAgIDxwPkFsbCA0IGRpZmZlcmVudCB0cmFuc2ZlY3Rpb24gY29uZGl0aW9ucyB3ZXJlIGRvbmUgd2l0aCBwWk1COTM4IGFuZCBzaG93ZWQgZ29vZCByZXN1bHRzLCBidXQgYmVzdCByZXN1bHQgd2VyZSBkb25lIHdoZW4gbGlwb2ZlY3RhbWluZSAyMDAwIHdhcyBkaWx1dGVkIDE6MTAgYW5kIDEwMDAgbmcgRE5BIHdhcyB0cmFuc2ZlY3RlZC48L3A+IFxyXG4gICAgICAgICAgPFR3b1ZlcnRpY2FsXHJcbiAgICAgICAgICAgIGRlc2NyaXB0aW9uPVwiTWljcm9zY29weSBvZiBIRUsyOTMgNzJoIHBvc3QgdHJhbnNmZWN0aW9uIHdpdGggbGlwb2ZlY3RhbWluIDIwMDAuIFRyYW5zZmVjdGlvbiB3aXRoIDE6MTAgb3IgMToyNSBkaWx1dGVkIGxpcG9mZWN0YW1pbmUgYW5kIDgwMCBuZyBvciAxMDAwIG5nIG9mIG91dCB0ZWNobmljYWwgcG9zaXRpdmUgY29udHJvbCBwWk1COTM4LiBCRiA9IEJyaWdodGZpZWxkXCJcclxuICAgICAgICAgICAgbnVtPXsyfVxyXG4gICAgICAgICAgICBiZz1cIndoaXRlXCJcclxuICAgICAgICAgICAgYWx0MT1cIjEwMDBuZyBETkEgd2l0aCAxOjEwIGFuZCAxOjI1IExpcG9mZWN0YW1pbmUgMjAwMFwiXHJcbiAgICAgICAgICAgIHBpYzE9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvZmFjcy1yZXN1bHRzLW1lY2hhbmlzbS9iaWxkMi0xLnBuZ1wiXHJcbiAgICAgICAgICAgIHBpYzI9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvZmFjcy1yZXN1bHRzLW1lY2hhbmlzbS9iaWxkMi0yLnBuZ1wiXHJcbiAgICAgICAgICAvPlxyXG4gICAgICAgICAgPEg1IHRleHQ9XCJXb3JrZmxvd1wiLz5cclxuICAgICAgICAgIDxwPlRyYW5zZmVjdGlvbiB3aXRoIExpcG9mZWN0YW1pbmUgMzAwMCB3YXMgcGVyZm9ybWVkIGJlY2F1c2Ugb2YgdGhlIHByb2JhYmx5IGJldHRlciBwZXJmb3JtYW5jZSBhbmQgdHJhbnNmZWN0aW9uIHJhdGUuIFRoZSBwcmVwYXJlZCBwREFTMTIxMjQtcHJlZWRpdGVkIHBsYXNtaWQgc2VydmVzIGFzIGEgcG9zaXRpdmUgY29udHJvbCB0byB2YWxpZGF0ZSB0aGUgc3VjY2VzcyBvZiB0aGUgZXhwZXJpbWVudC4gQSB0ZWNobmljYWwgY29udHJvbCB3aXRoIHRoZSBwWk1COTM4IHBsYXNtaWQgY29uZmlybWVkIHN1Y2Nlc3NmdWwgdHJhbnNmZWN0aW9uIG9mIHRoZSBjZWxscyBhcyBiZWZvcmUuIEluIHRoZSBtYWluIHBhcnQgb2YgdGhlIGV4cGVyaW1lbnQsIHBEQVMxMjQ4OS0yaW4xIGFuZCBwQ01WLVBFMiB3ZXJlIGNvLXRyYW5zZmVjdGVkLiBTdWNjZXNzZnVsIHRyYW5zZmVjdGlvbiBhbmQgcHJpbWUgZWRpdGluZyB3YXMgZGV0ZWN0ZWQgYnkgR0ZQIHNpZ25hbHMuPC9wPiBcclxuICAgICAgICAgIDxINSB0ZXh0PVwiQ29uY2x1c2lvblwiLz5cclxuICAgICAgICAgIDxwPkludGVybmFsIGNvbnRyb2wgYW5kIHRlY2huaWNhbCBjb250cm9sIHNob3dlZCBoaWdoZXIgdHJhbnNmZWN0aW9uIGVmZmljaWVuY3kgdGhlbiBpbiBwcmV2aW91cyBleHBlcmltZW50cywgdGhlcmVmb3JlIHRyYW5zZmVjdGlvbiB3aXRoIGxpcG9mZWN0YW1pbmUgMzAwMCBzZWVtcyB0byBiZSBtb3JlIGVmZmljaWVudCB0aGFuIHRyYW5zZmVjdGlvbiB3aXRoIGxpcG9mZWN0YW1pbmUgMjAwMC4gVGhlIGZsdW9yZXNjZW5jZSBvZiBwREFTMTIxODkrcENNVi1QRTIgd2FzIHN0aWxsIHF1aXRlIGxvdy4gQWxsIG5lZ2F0aXZlICBjb250cm9scyBhcmUgc2hvd2VkIG5vIGZsdW9yZXNjZW5jZS48L3A+XHJcbiAgICAgICAgICA8VGhyZWVWZXJ0aWNhbFxyXG4gICAgICAgICAgZGVzY3JpcHRpb249XCJNaWNyb3Njb3B5IG9mIEhFSzI5MyA3MmggcG9zdCB0cmFuc2ZlY3Rpb24gd2l0aCBsaXBvZmVjdGFtaW5lIDIwMDAuIFRyYW5zZmVjdGlvbiB3aXRoIHRlY2huaWNhbCBwb3NpdGl2ZSBjb250cm9sIHBaTUI5MzgsIGludGVybmFsIHBvc2l0aXZlIGNvbnRyb2wgcERBUzEyMTI0LXByZWVkaXRlZCwgY28tdHJhbnNmZWN0aW9uIG9mIHBEQVMxMjQ4OSB3aXRoIHBDTVYtUEUyLCBOVEMsIFBFMiBhcyBjb250cm9sIGFuZCBwREFTMTI0ODkgYXMgY29udHJvbC4gQWxsIGNvbnRyb2xzIGFyZSBuZWdhdGl2ZSBhbmQgYm90aCBwb3NpdHZlIGNvbnRyb2xzIGFzIHdlbGwgYXMgcERBUzEyNDg5K3BDTVYtUEUyIHNob3cgZmx1b3Jlc2NlbmNlIHNpZ25hbHMuIEJGID0gQnJpZ2h0ZmllbGRcIlxyXG4gICAgICAgICAgbnVtPXszfVxyXG4gICAgICAgICAgYmc9XCJ3aGl0ZVwiXHJcbiAgICAgICAgICBhbHQxPVwicFpNQiBhbmQgcERBUzEyMTI0XCJcclxuICAgICAgICAgIHBpYzE9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvZmFjcy1yZXN1bHRzLW1lY2hhbmlzbS9iaWxkMy0xLnBuZ1wiXHJcbiAgICAgICAgICBwaWMyPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2ZhY3MtcmVzdWx0cy1tZWNoYW5pc20vYmlsZDMtMi5wbmdcIlxyXG4gICAgICAgICAgcGljMz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9mYWNzLXJlc3VsdHMtbWVjaGFuaXNtL2JpbGQzLTMucG5nXCJcclxuICAgICAgICAgIC8+XHJcbiAgICAgICAgICA8SDUgdGV4dD1cIldvcmtmbG93XCIvPlxyXG4gICAgICAgICAgPHA+QWdhaW4gYSBwcmVsaW1pbmFyeSB0ZXN0IHdpdGggdGhlIHRlY2huaWNhbCBwb3NpdGl2ZSBjb250cm9sIHdhcyBjb25kdWN0ZWQgcG90ZW50aWFsbHkgb3B0aW1pemUgb3VyIHRyYW5zZmVjdGlvbiBwcm90b2NvbCBhbmQgdG8gdHJhaW4gdGhlIGhhbmRsaW5nLjwvcD4gXHJcbiAgICAgICAgICA8SDUgdGV4dD1cIkNvbmNsdXNpb25cIi8+XHJcbiAgICAgICAgICA8cD5UaGUgcmVzdWx0cyBvZiB0aGUgdGVzdCB3ZXJlIG5vdCBhcyBnb29kIGFzIGV4cGVjdGVkLiBOZWFybHkgbm8gdHJhbnNmZWN0aW9uIGVmZmljaWVuY3kgd2FzIHZpc2libGUuIFRoaXMgY291bGQgYmUgZHVlIHRvIHRvbyBvbGQgSEVLMjkzIGNlbGxzPC9wPiBcclxuICAgICAgICAgIDxUd29WZXJ0aWNhbFxyXG4gICAgICAgICAgICBkZXNjcmlwdGlvbj1cIk1pY3Jvc2NvcHkgb2YgSEVLMjkzIDcyaCBwb3N0IHRyYW5zZmVjdGlvbiB3aXRoIGxpcG9mZWN0YWluZSAzMDAwLiBUcmFuc2ZlY3Rpb24gb2YgNTAwIG5nIG9yIDEwMDAgbmcgb2Ygb3VyIHRlY2huaWNhbCBwb3NpdGl2ZSBjb250cm9sIHBaTUI5Mzggd2l0aCAxIFx1MDBCNWwgb3IgMS41IFx1MDBCNWwgb2YgbGlwb2ZlY3RhbWluZSAzMDAwLiBCRiA9IEJyaWdodGZpZWxkXCJcclxuICAgICAgICAgICAgbnVtPXs0fVxyXG4gICAgICAgICAgICBiZz1cIndoaXRlXCJcclxuICAgICAgICAgICAgYWx0MT1cIjUwMG5nIEROQSAxIFx1MDBCNWwgb3IgMS41IFx1MDBCNWwgb2YgbGlwb2ZlY3RhbWluZSAzMDAwXCJcclxuICAgICAgICAgICAgcGljMT1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9mYWNzLXJlc3VsdHMtbWVjaGFuaXNtL2JpbGQ0LTEucG5nXCJcclxuICAgICAgICAgICAgcGljMj1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9mYWNzLXJlc3VsdHMtbWVjaGFuaXNtL2JpbGQ0LTIucG5nXCJcclxuICAgICAgICAgIC8+XHJcbiAgICAgICAgICA8SDUgdGV4dD1cIldvcmtmbG93XCIvPlxyXG4gICAgICAgICAgPHA+SEVLIGNlbGxzIHdlcmUgdGhhd2VkIGFuZCBhbm90aGVyIHByZWxpbWFyeSB0ZXN0IHdhcyBjb25kdWN0ZWQuIEluIHRoaXMgdGVzdCB0d28gZGlmZmVyZW50IHRyYW5zZmVjdGlvbiBhZ2VudHMgd2VyZSB1c2VkIChMaXBvZmVjdGFtaW5lIDMwMDAgJiBDYUNsPHN1Yj4yPC9zdWI+KSB0byBjaGVjayB3aGljaCBvbmUgaXMgYmV0dGVyIHN1aXRlZCBmb3Igb3VyIGV4cGVyaW1lbnRzLiBUaGUgbGl0ZXJhdHVyZSB1c2VzIGxpcG9mZWN0YW1pbmUgMzAwMCBidXQgQ2FDbDxzdWI+Mjwvc3ViPiB0cmFuc2ZlY3Rpb24gaXMgbXVjaCBjaGVhcGVyLjwvcD4gXHJcbiAgICAgICAgICA8SDUgdGV4dD1cIkNvbmNsdXNpb25cIi8+XHJcbiAgICAgICAgICA8cD5Cb3RoIHRyYW5zZmVjdGlvbnMgYXJlIHdvcmtpbmcgb3V0IHdlbGwgYnV0IHRoZSBlZmZpY2llbmN5IG9mIHRoZSBsaXBvZmVjdGFtaW5lIHRyYW5zZmVjdGlvbiB3YXMgbXVjaCBoaWdoZXIuPC9wPlxyXG4gICAgICAgICAgPE9uZUZpZ3VyZVxyXG4gICAgICAgICAgcGljMT1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9mYWNzLXJlc3VsdHMtbWVjaGFuaXNtL2JpbGQ1LnBuZ1wiXHJcbiAgICAgICAgICBudW09ezV9XHJcbiAgICAgICAgICBiZz1cIndoaXRlXCJcclxuICAgICAgICAgIGFsdDE9XCJNaWNyb3Njb3B5IG9mIEhFSzI5MyA3MmggcG9zdCB0cmFuc2ZlY3Rpb24gd2l0aCBsaXBvZmVjdGFtaW5lIDMwMDAgd2l0aCAxMDAwIG5nIG9yIDE1MDAgbmcgdGVjaG5pY2FsIHBvc2l0aXZlIGNvbnRyb2wgcFpNQjkzOC4gQm90aCB0cmFuc2ZlY3Rpb25zIHNob3cgZmx1b3Jlc2NlbmNlIHNpZ25hbHNcIlxyXG4gICAgICAgICAgZGVzY3JpcHRpb249XCJNaWNyb3Njb3B5IG9mIEhFSzI5MyA3MmggcG9zdCB0cmFuc2ZlY3Rpb24gd2l0aCBsaXBvZmVjdGFtaW5lIDMwMDAgd2l0aCAxMDAwIG5nIG9yIDE1MDAgbmcgdGVjaG5pY2FsIHBvc2l0aXZlIGNvbnRyb2wgcFpNQjkzOC4gQm90aCB0cmFuc2ZlY3Rpb25zIHNob3cgZmx1b3Jlc2NlbmNlIHNpZ25hbHMuIEJGID0gQnJpZ2h0ZmllbGRcIlxyXG4gICAgICAgICAgLz5cclxuICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgPFR3b1ZlcnRpY2FsXHJcbiAgICAgICAgICAgIGRlc2NyaXB0aW9uPVwiTWljcm9zY29weSBvZiBIRUsyOTMgNzJoIHBvc3QgdHJhbnNmZWN0aW9uIHdpdGggQ2FDbDxzdWI+Mjwvc3ViPiB3aXRoIDUwMCBuZywgMTAwMCBuZyBvciAxNTAwIG5nIHBaTUI5MzguIEFsbCB0cmFuc2ZlY3Rpb25zIHNob3cgZmx1b3Jlc2NlbmNlIHNpZ25hbHMuIEJGID0gQnJpZ2h0ZmllbGRcIlxyXG4gICAgICAgICAgICBudW09ezZ9XHJcbiAgICAgICAgICAgIGJnPVwid2hpdGVcIlxyXG4gICAgICAgICAgICBhbHQxPVwiXCJcclxuICAgICAgICAgICAgcGljMT1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9mYWNzLXJlc3VsdHMtbWVjaGFuaXNtL2JpbGQ2LTEucG5nXCJcclxuICAgICAgICAgICAgcGljMj1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9mYWNzLXJlc3VsdHMtbWVjaGFuaXNtL2JpbGQ2LTIucG5nXCJcclxuICAgICAgICAgIC8+XHJcbiAgICAgICAgICA8SDUgdGV4dD1cIldvcmtmbG93XCIvPlxyXG4gICAgICAgICAgPHA+T25lIGxhc3QgdGltZSB0aGUgdHJhbnNmZWN0aW9uIG9mIHBEQVMxMjE4OStwQ01WLVBFMiB3YXMgY29uZHVjdGVkLiBBbHRob3VnaCBvdXIgcHJvb2Ytb2YtY29uY2VwdCBhbHJlYWR5IHNob3dlZCBzdWNjZXNzZnVsIGVkaXRpbmcgdGhlIGZpcnN0IHRpbWUsIHdlIHJlcGVhdGVkIHRoZSBleHBlcmltZW50IHRvIGdldCBiZXR0ZXIgdHJhbnNmZWN0aW9uIGVmZmljaWVuY3kuPC9wPiBcclxuICAgICAgICAgIDxINSB0ZXh0PVwiQ29uY2x1c2lvblwiLz5cclxuICAgICAgICAgIDxwPlRoZSB0cmFuc2ZlY3Rpb24gZWZmaWNpZW5jeSB3YXMgbXVjaCBiZXR0ZXIuIE91ciBwcm9vZi1vZi1jb25jZXB0IHdhcyB3b3JraW5nIGNvcnJlY3RseS4gVGhlIHJlcG9ydGVyIHN5c3RlbSBwREFTMTIxODkgb25seSBsZWQgdG8gcHJvZHVjdGlvbiBvZiBhIGZsdW9yZXNjZW50IHNpZ25hbCB3aGVuIGNvIHRyYW5zZmVjdGVkIHdpdGggYSBwcmltZSBlZGl0aW5nIGNvbXBsZXggYXMgcENNVi1QRTIuPC9wPiBcclxuICAgICAgICAgIDxUd29WZXJ0aWNhbFxyXG4gICAgICAgICAgYWx0MT1cIlwiXHJcbiAgICAgICAgICAgIGRlc2NyaXB0aW9uPVwiTWljcm9zY29weSBvZiBIRUsyOTMgNzJoIHBvc3QgdHJhbnNmZWN0aW9uIHdpdGggbGlwb2ZlY3RhbWluZSAyMDAwLiBUcmFuc2ZlY3Rpb24gd2l0aCB0ZWNobmljYWwgcG9zaXRpdmUgY29udHJvbCBwWk1COTM4LCBpbnRlcm5hbCBwb3NpdGl2ZSBjb250cm9sIHBEQVMxMjEyNC1wcmVlZGl0ZWQsIGNvLXRyYW5zZmVjdGlvbiBvZiBwREFTMTI0ODkgd2l0aCBwQ01WLVBFMiwgTlRDLCBQRTIgYXMgY29udHJvbCBhbmQgcERBUzEyNDg5IGFzIGNvbnRyb2wuIEFsbCBjb250cm9scyBhcmUgbmVnYXRpdmUgYW5kIGJvdGggcG9zaXR2ZSBjb250cm9scyBhcyB3ZWxsIGFzIHBEQVMxMjQ4OStwQ01WLVBFMiBzaG93IGZsdW9yZXNjZW5jZSBzaWduYWxzLiBCRiA9IEJyaWdodGZpZWxkXCJcclxuICAgICAgICAgICAgbnVtPXs3fVxyXG4gICAgICAgICAgICBiZz1cIndoaXRlXCJcclxuICAgICAgICAgICAgcGljMT1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9mYWNzLXJlc3VsdHMtbWVjaGFuaXNtL2JpbGQ3LTEucG5nXCJcclxuICAgICAgICAgICAgcGljMj1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9mYWNzLXJlc3VsdHMtbWVjaGFuaXNtL2JpbGQ3LTIucG5nXCJcclxuICAgICAgICAgIC8+XHJcbiAgICAgIDwvU3ViZXNjdGlvbj5cclxuICAgICAgPFN1YmVzY3Rpb24gdGl0bGU9XCJQcmltZSBHdWlkZVwiIGlkPVwiRXhwZXJpbWVudGFsIERlc2lnbjJcIj5cclxuICAgICAgICAgIDxINCB0ZXh0PVwiSW5pdGlhbCB0ZXN0aW5nIG9mIHBlZ1JOQXMgYW5kIEV2YWx1YXRpb24gb2Ygc2lsZW50IGVkaXRzXCIvPlxyXG4gICAgICAgICAgPEg1IHRleHQ9XCJXb3JrZmxvd1wiLz5cclxuICAgICAgICAgIDxwPldpdGggdGhpcyBleHBlcmltZW50IHdlIHdhbnRlZCB0byBjb21wYXJlIHRoZSBlZmZpY2llbmN5IG9mIHBlZ1JOQXMgd2l0aCBhbmQgd2l0aG91dCBzaWxlbnQgZWRpdHMuPC9wPiBcclxuICAgICAgICAgIDxINSB0ZXh0PVwiQ29uY2x1c2lvblwiLz5cclxuICAgICAgICAgIDxwPlRoZSBGbG93IEN5dG9tZXRyeSBhbmFseXNpcyBzaG93cyB0aGF0IHBlZ1JOQSB3aXRob3V0IHNpbGVudCBlZGl0cyAocGVnUk5BMSkgaGFkIGEgMi4wNSB0aW1lcyBoaWdoZXIgdHJhbnNmZWN0aW9uIGVmZmljaWVuY3kgdGhhbiBwZWdSTkEgd2l0aCBzaWxlbnQgZWRpdHMgKHBlZ1JOQTIpLjwvcD4gICAgICAgICBcclxuICAgICAgICAgIDxUd29Ib3Jpem9udGFsIFxyXG4gICAgICAgICAgICBkZXNjcmlwdGlvbj1cIkZsb3cgY3l0b21ldHJ5IGFuYWx5c2lzIG9mIHBlZ1JOQXMgd2l0aCBhbmQgd2l0aG91dCBzaWxlbnQgZWRpdHMuIEhpc3RvZ3JhbXMgb2YgY2VsbCBjb3VudCBhcHBsaWVkIGFnYWluc3QgZmx1b3Jlc2NlbmNlIGludGVuc2l0eSBvZiBoZWFsdGh5IEhFSzI5MyBjZWxscyAobGVmdCkgd2l0aCB1bnRyYW5zZmVjdGVkIGNlbGxzIGFzIG5lZ2F0aXZlIGNvbnRyb2wsIHBEQVMxMjEyNCBwcmUtZWRpdGVkIGFzIGludGVybmFsIHBvc2l0aXZlIGNvbnRyb2wgYW5kIHBlZ1JOQXMgd2l0aCAocGVnUk5BMSkgYW5kIHdpdGhvdXQgKHBlZ1JOQTIpIHNpbGVudCBlZGl0cyA3MiBoIGFmdGVyIHRyYW5zZmVjdGlvbi4gVGhlIHBvcnRpb24gb2YgZmx1b3Jlc2NlbnQgY2VsbHMgaXMgbm9ybWFsaXplZCB0byB0aGUgaW50ZXJuYWwgcG9zaXRpdmUgY29udHJvbCAocmlnaHQpLlwiXHJcbiAgICAgICAgICAgIG51bT17OH1cclxuICAgICAgICAgICAgYmc9XCJ3aGl0ZVwiXHJcbiAgICAgICAgICAgIHBpYzE9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvZmFjcy1yZXN1bHRzLW1lY2hhbmlzbS9zZS1ub3NlLnBuZ1wiXHJcbiAgICAgICAgICAgIHBpYzI9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvZmFjcy1yZXN1bHRzLW1lY2hhbmlzbS9iaWxkOC5wbmdcIiBhbHQxPXtcIlwifSAgICAgICAgICAvPlxyXG4gICAgICAgICAgPEg0IHRleHQ9XCJTY3JlZW5pbmcgb2YgcGVnUk5BIHZhcmlhbmNlc1wiLz5cclxuICAgICAgICAgIDxINSB0ZXh0PVwiV29ya2Zsb3dcIi8+XHJcbiAgICAgICAgICA8cD5Db3RyYW5zZmVjdGlvbiBvZiBwUEVBUl9DRlRSIGFuZCBQRTIgYW5kIGFsc28gMSBvZiB0aGUgMTQgcGVnUk5BcyB0byBjb21wYXJlIHRoZSB0cmFuc2ZlY3Rpb24gZWZmaWNpZW5jeSBvZiBhbGwgb2Ygb3VyIGRlc2lnbmVkIHBlZ1JOQXMuPC9wPiBcclxuICAgICAgICAgIDxINSB0ZXh0PVwiQ29uY2x1c2lvblwiLz5cclxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93XCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICAgICAgPFJlc1RhYmxlIGNvbHM9e2hlYWRlcmNvbHN9IGRhdGE9e3Jlc3VsdGRhdGF9Lz4gXHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICA8cD5UaGUgcGVnUk5BcyBsZWFkIHRvIGRpZmZlcmluZyBhbW91bnRzIG9mIGNlbGxzIHNob3dpbmcgZmx1b3Jlc2NlbmNlLCB3aGljaCwgYXNzdW1pbmcgY29tcGFyYWJsZSB0cmFuc2ZlY3Rpb24gZWZmaWNpZW5jaWVzLCBpbmRpY2F0ZXMgdmFyeWluZyBwcmltZSBlZGl0aW5nIGVmZmljaWVuY3kuIFRoZSBwZWdSTkE3IHNob3dlZCB0aGUgaGlnaGVzdCB0cmFuc2ZlY3Rpb24gZWZmaWNpZW5jeSAoc2VlIEZpZ3VyZSA5KS48L3A+XHJcbiAgICAgICAgICAgIDxPbmVGaWd1cmUgXHJcbiAgICAgICAgICAgIHBpYzE9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvZmFjcy1yZXN1bHRzLW1lY2hhbmlzbS9iaWxkOS5wbmdcIlxyXG4gICAgICAgICAgICBudW09ezl9XHJcbiAgICAgICAgICAgIGFsdDE9XCJGbG93IEN5dG9tZXRyeSByZXN1bHRzIG9mIGFsbCBzY3JlZW5lZCBwZWdSTkFzXCJcclxuICAgICAgICAgICAgZGVzY3JpcHRpb249XCJQZXJjZW50YWdlIG9mIGZsdW9yZXNjZW50IEhFSzI5MyBjZWxscyA3MiBoIGFmdGVyIHRyYW5zZmVjdGlvbiB3aXRoIHZhcmlvdXMgcGVnUk5BcyAocGVnUk5BMS0xNCkgbm9ybWFsaXplZCB0byBwREFTMTIxMjQgcHJlLWVkaXRlZCBhcyBpbnRlcm5hbCBwb3NpdGl2ZSBjb250cm9sIGFzIHJlc3VsdCBvZiBmbG93IGN5dG9tZXRyeSBhbmFseXNpcy5cIlxyXG4gICAgICAgICAgICAvPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPEg0IHRleHQ9XCJBcHBsaWNhdGlvbiBsdW5nIGVwaXRoZWxpYWwgY2VsbCBsaW5lc1wiLz5cclxuICAgICAgICAgIDxINSB0ZXh0PVwiV29ya2Zsb3dcIi8+XHJcbiAgICAgICAgICA8cD5XZSB0cmllZCB0byB0cmFuc2ZlY3QgQ0ZCRTQxby0gY2VsbHMgd2l0aCBwREFTMTIxMjQtcHJlZWRpdGVkLCBvdXIgaW50ZXJuYWwgcG9zaXRpdmUgY29udHJvbCwgdG8gY2hlY2sgaWYgYSB0cmFuc2ZlY3Rpb24gb2YgdGhpcyBjZWxsIGxpbmUgaXMgcG9zc2libGUuIEZ1cnRoZXJtb3JlIHdlIHRyaWVkIHRvIGNvIHRyYW5zZmVjdCB0aGUgQ0ZCRTQxby0gd2l0aCBwUEVBUl9DRlRSLCBQRTZjIGFuZCBwZWdSTkE0LjwvcD4gXHJcbiAgICAgICAgICA8SDUgdGV4dD1cIkNvbmNsdXNpb25cIi8+XHJcbiAgICAgICAgICA8cD5UcmFuc2ZlY3Rpb24gb2YgQ0ZCRTQxby0gd2l0aCBwREFTMTIxMjQtcHJlZWRpdGVkIHdhcyBzdWNjZXNzZnVsIChzZWUgRmlndXJlIDEwKS4gQWZ0ZXIgMjQgaG91cnMgYSBzdWNjZXNzZnVsIGNvIHRyYW5zZmVjdGlvbiBvZiBwUEVBUl9DRlRSIHdpdGggUEU2YyBhbmQgcGVnUk5BNCB3YXMgdmlzaWJsZSwgYWx0aG91Z2ggdGhlIHRyYW5zZmVjdGlvbiBlZmZpY2llbmN5IHdhcyByZWFsbHkgYmFkIChzZWUgRmlndXJlIDEwKS48L3A+XHJcbiAgICAgICAgICA8VHdvVmVydGljYWxcclxuICAgICAgICAgIGFsdDE9XCJcIlxyXG4gICAgICAgICAgIGRlc2NyaXB0aW9uPVwiTWljcm9zY29weSByZXN1bHRzIGFmdGVyIDI0aCBvciA0OGguIFRyYW5zZmVjdGlvbiBvZiBwREFTMTIxMjQtcHJlZWRpdGVkIHdpdGggbGlwb2ZlY3RhbWluZSAzMDAwIHdhcyBzdWNjZXNzZnVsbHkgZG9uZSBpbiBDRkJFNDFvLSBjZWxsIGxpbmUgYW5kIHZpc2libGUgYWZ0ZXIgNDhoLiBDRkJFNDFvLSBjZWxsIGxpbmUgd2FzIHRyYW5zZmVjdGVkIHdpdGggcERBUy1JRFQgd2l0aCBMaXBvZmVjdGFtaW5lIDMwMDAgYW5kIGFmdGVyd2FyZHMgd2l0aCBMTlBzIGluY2x1ZGluZyBQRTZjIGFuZCBwZWdSTkE0IGFuZCB3YXMgYWZ0ZXIgMjRoIGZsdW9yZXNjZW5jZSB2aXNpYmxlLiBCRiA9IEJyaWdodGZpZWxkXCJcclxuICAgICAgICAgICBudW09ezEwfVxyXG4gICAgICAgICAgIGJnPVwid2hpdGVcIlxyXG4gICAgICAgICAgIHBpYzE9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvZmFjcy1yZXN1bHRzLW1lY2hhbmlzbS9iaWxkMTAtMS5wbmdcIlxyXG4gICAgICAgICAgIHBpYzI9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvZmFjcy1yZXN1bHRzLW1lY2hhbmlzbS9iaWxkMTAtMi5wbmdcIlxyXG4gICAgICAgICAgIC8+XHJcbiAgICAgICAgICAgPHA+TW9yZW92ZXIgdHJhbnNmZWN0aW9uIHdhcyBjb25kdWN0ZWQgaW4gaHVtYW4gbmFzYWwgZXBpdGhlbGlhbCBjZWxscyAoaE5FQ3MpIGluIEFpci1saXF1aWQgaW50ZXJmYWNlIGN1bHR1cmVzIGFzIHdlbGwgYXMgYXBpY2FsLW91dCBhaXJ3YXkgb3JnYW5vaWRzIChzZWUgRmlndXJlIDExKS4gTm8gZmx1b3Jlc2NlbmNlIHdhcyB2aXNpYmxlLiA8L3A+XHJcbiAgICAgICAgICA8VHdvVmVydGljYWxcclxuICAgICAgICAgIGFsdDE9XCJcIlxyXG4gICAgICAgICAgIGRlc2NyaXB0aW9uPVwiTWljcm9zY29weSBvZiBIRUsgNzJoIHBvc3QgdHJhbnNmZWN0aW9uIHdpdGggbGlwb2ZlY3RhbWluZSAzMDAwLiBDby10cmFuc2ZlY3Rpb24gb2YgcFBFQVJfQ0ZUUiB3aXRoIFBFNmMgYW5kIHBlZ1JOQTQuIEJvdGggc2hvdyBubyBmbHVvcmVzY2VuY2Ugc2lnbmFscy4gQkYgPSBCcmlnaHRmaWVsZFwiXHJcbiAgICAgICAgICAgbnVtPXsxMX1cclxuICAgICAgICAgICBiZz1cIndoaXRlXCJcclxuICAgICAgICAgICBwaWMxPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2ZhY3MtcmVzdWx0cy1tZWNoYW5pc20vYWxpLXRyLnBuZ1wiXHJcbiAgICAgICAgICAgcGljMj1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9mYWNzLXJlc3VsdHMtbWVjaGFuaXNtL2FvYW8tdHIucG5nXCJcclxuICAgICAgICAgICAvPlxyXG4gICAgICAgICAgPEg0IHRleHQ9XCJDb21wYXJpc29uIG9mIHByaW1lIGVkaXRpbmcgY29tcGxleGVzIFBFMiBhbmQgUEVfQ08tTWluaVwiLz5cclxuICAgICAgICAgIDxINSB0ZXh0PVwiV29ya2Zsb3dcIi8+XHJcbiAgICAgICAgICA8cD5wQ01WLVBFMiB3YXMgY28gdHJhbnNmZWN0ZWQgd2l0aCBwREFTMTI0ODkgYW5kIHBDTVYtUEVfQ08tTWluaSB3YXMgY28gdHJhbnNmZWN0ZWQgd2l0aCBwREFTMTI0ODkgaW4gSEVLMjkzIGNlbGwgbGluZS48L3A+IFxyXG4gICAgICAgICAgPEg1IHRleHQ9XCJDb25jbHVzaW9uXCIvPlxyXG4gICAgICAgICAgPHA+VGhlIEZsb3cgQ3l0b21ldHJ5IHJlc3VsdHMgc2hvdyB0aGF0IHRyYW5zZmVjdGlvbiB3aXRoIHBDTVYtUEUyIGFzIHRoZSBwcmltZSBlZGl0aW5nIGNvbXBsZXggaGFkIGVkaXRpbmcgZWZmaWNpZW5jeSBvZiA1Mi45MCUgd2hlbiBub3JtYWxpemVkIG9uIHBEQVMxMjEyNC1wcmVlZGl0ZWQuIFdoZW4gcENNVi1QRV9DTy1NaW5pIHdhcyB1c2VkIGFzIGEgcHJpbWUgZWRpdGluZyBjb21wbGV4IGl0IGhhZCBhIHRyYW5zZmVjdGlvbiBlZmZpY2llbmN5IG9mIDIuNTQlIChzZWUgRmlndXJlIDExLCAxMikuPC9wPlxyXG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3dcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgICAgPFR3b1ZlcnRpY2FsXHJcbiAgICAgICAgICBhbHQxPVwiXCJcclxuICAgICAgICAgICBkZXNjcmlwdGlvbj1cIk1pY3Jvc2NvcHkgb2YgSEVLIDcyaCBwb3N0IHRyYW5zZmVjdGlvbiB3aXRoIGxpcG9mZWN0YW1pbmUgMzAwMC4gQ28tdHJhbnNmZWN0aW9uIG9mIHBEQVMxMjQ4OSB3aXRoIHBDTVYtUEUyIG9yIHBEQVMxMjQ4OSB3aXRoIExWLVBFX0NPLU1pbmkuIEJvdGggc2hvdyBmbHVvcmVzY2VuY2Ugc2lnbmFscy4gQkYgPSBCcmlnaHRmaWVsZFwiXHJcbiAgICAgICAgICAgbnVtPXsxMn1cclxuICAgICAgICAgICBiZz1cIndoaXRlXCJcclxuICAgICAgICAgICBwaWMxPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2ZhY3MtcmVzdWx0cy1tZWNoYW5pc20vYmlsZDExLTEucG5nXCJcclxuICAgICAgICAgICBcclxuICAgICAgICAgICBwaWMyPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2ZhY3MtcmVzdWx0cy1tZWNoYW5pc20vYmlsZDExLTIucG5nXCJcclxuICAgICAgICAgICAvPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgICAgPE9uZUZpZ3VyZVxyXG4gICAgICAgICAgIGFsdDE9XCJcIlxyXG4gICAgICAgICAgICBwaWMxPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2ZhY3MtcmVzdWx0cy1tZWNoYW5pc20vcGUyLXBlLWNvLnBuZ1wiXHJcbiAgICAgICAgICAgIG51bT17MTN9XHJcbiAgICAgICAgICAgIGJnPVwid2hpdGVcIlxyXG4gICAgICAgICAgICBkZXNjcmlwdGlvbj1cIkZsb3cgQ3l0b21ldHJ5IGFuYWx5c2lzIHRvIGNvbXBhcmUgcHJpbWUgZWRpdGluZyBjb21wbGV4ZXMgUEUyIGFuZCBQRV9DTy1NaW5pLiBIaXN0b2dyYW1zIG9mIGNlbGwgY291bnQgYXBwbGllZCBhZ2FpbnN0IGZsdW9yZXNjZW5jZSBpbnRlbnNpdHkgb2YgaGVhbHRoeSBIRUsyOTMgY2VsbHMgKGxlZnQpIHdpdGggdW50cmFuc2ZlY3RlZCBjZWxscyBhcyBuZWdhdGl2ZSBjb250cm9sLCBwREFTMTIxMjQgcHJlLWVkaXRlZCBhcyBpbnRlcm5hbCBwb3NpdGl2ZSBjb250cm9sIDcyIGggYWZ0ZXIgdHJhbnNmZWN0aW9uLlwiXHJcbiAgICAgICAgICAgLz5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIFxyXG4gICAgICAgICAgXHJcbiAgICAgICAgICA8SDUgdGV4dD1cIldvcmtmbG93XCIvPlxyXG4gICAgICAgICAgPHA+V2UgY29tcGFyZWQgdGhlIDMgZGlmZmVyZW50IFByaW1lIEVkaXRpbmcgY29tcGxleGVzIChwQ01WLVBFMiwgcENNVi1QRTJfQ08tTWluaSAmIHBDTVYtUEU2YykgdG8gY2hlY2sgd2hpY2ggb25lIGhhcyB0aGUgYmVzdCB0cmFuc2ZlY3Rpb24gZWZmaWNpZW5jeS48L3A+IFxyXG4gICAgICAgICAgPEg1IHRleHQ9XCJDb25jbHVzaW9uXCIvPlxyXG4gICAgICAgICAgPHA+VGhlIEZsb3cgQ3l0b21ldHJ5IG1lYXN1cmVtZW50IHNob3dzIHRoZSBmbHVvcmVzY2VuY2UgcmF0ZSBjZWxscyBjby10cmFuc2ZlY3RlZCB3aXRoIHBEQVMxMjQ4OSBhbmQgcENNVi1QRTZjIGFzIGEgcHJpbWUgZWRpdGluZyBjb21wbGV4LiBUaGUgZWRpdGluZyBlZmZpY2llbmN5IG9mZiBQRTZjIHdhcyBieSBmYXIgdGhlIGhpZ2hlc3QgKDgxLjg4JSkgKHNlZSBGaWd1cmUgMTMsIDE0KS4gVGhlIGVmZmljaWVuY3kgd2FzIDEuNTUgaGlnaGVyIHRoYW4gdGhlIGVmZmljaWVuY3kgd2hlbiBwQ01WLVBFMiB3YXMgdXNlZCBhcyBwcmltZSBlZGl0aW5nIGNvbXBsZXggKHNlZSBGaWd1cmUgMTMpLjwvcD5cclxuICAgICAgICAgIDxPbmVGaWd1cmVcclxuICAgICAgICAgIHBpYzE9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvZmFjcy1yZXN1bHRzLW1lY2hhbmlzbS9iaWxkMTMucG5nXCJcclxuICAgICAgICAgIG51bT17MTR9XHJcbiAgICAgICAgICBiZz1cIndoaXRlXCJcclxuICAgICAgICAgIGRlc2NyaXB0aW9uPVwiTWljcm9zY29weSBvZiBIRUsyOTMgNzJoIHBvc3QgdHJhbnNmZWN0aW9uIHdpdGggbGlwb2ZlY3RhbWluZSAzMDAwIGFuZCBjbyB0cmFuc2ZlY3Rpb24gd2l0aCBwQ01WLVBFNmMgYW5kIHBEQVMxMjQ4OS4gQkYgPSBCcmlnaHRmaWVsZFwiXHJcbiAgICAgICAgICBhbHQxPVwiTWljcm9zY29weSBvZiBIRUsyOTMgNzJoIHBvc3QgdHJhbnNmZWN0aW9uIHdpdGggbGlwb2ZlY3RhbWluZSAzMDAwIGFuZCBjbyB0cmFuc2ZlY3Rpb24gd2l0aCBwQ01WLVBFNmMgYW5kIHBEQVMxMjQ4OS5cIlxyXG4gICAgICAgICAgLz5cclxuICAgICAgICAgXHJcbiAgICAgICAgICA8VHdvSG9yaXpvbnRhbFxyXG4gICAgICAgICAgYWx0MT1cIlwiXHJcbiAgICAgICAgICBkZXNjcmlwdGlvbj1cIkZsb3cgY3l0b21ldHJ5IGFuYWx5c2lzIGZvciBldmFsdWF0aW9uIG9mIHBlcmZvcm1hbmNlIG9mIHByaW1lIGVkaXRvciB2YXJpYW50cy4gSGlzdG9ncmFtcyBvZiBjZWxsIGNvdW50IGFwcGxpZWQgYWdhaW5zdCBmbHVvcmVzY2VuY2UgaW50ZW5zaXR5IG9mIGhlYWx0aHkgSEVLMjkzIGNlbGxzIChsZWZ0KSB3aXRoIHVudHJhbnNmZWN0ZWQgY2VsbHMgYXMgbmVnYXRpdmUgY29udHJvbCwgcERBUzEyMTI0IHByZS1lZGl0ZWQgYXMgaW50ZXJuYWwgcG9zaXRpdmUgY29udHJvbCBhbmQgUEU2YywgUEUyIGFuZCBQRTJfQ28tTWluaSA3MiBoIGFmdGVyIHRyYW5zZmVjdGlvbi4gVGhlIHBvcnRpb24gb2YgZmx1b3Jlc2NlbnQgY2VsbHMgaXMgbm9ybWFsaXplZCB0byB0aGUgaW50ZXJuYWwgcG9zaXRpdmUgY29udHJvbCAocmlnaHQpLlwiXHJcbiAgICAgICAgICBudW09ezE1fVxyXG4gICAgICAgICAgYmc9XCJ3aGl0ZVwiXHJcbiAgICAgICAgICBwaWMxPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2ZhY3MtcmVzdWx0cy1tZWNoYW5pc20vcGUyLXBlLWNvLXBlNmMucG5nXCJcclxuICAgICAgICAgIHBpYzI9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvZmFjcy1yZXN1bHRzLW1lY2hhbmlzbS9iaWxkMTIucG5nXCJcclxuICAgICAgICAgIC8+IFxyXG4gICAgICA8L1N1YmVzY3Rpb24gPlxyXG4gICAgICA8U3ViZXNjdGlvbiAgdGl0bGU9XCJMTlAgU3ludGhlc2lzXCIgaWQ9XCJFeHBlcmltZW50YWwgRGVzaWduM1wiPlxyXG4gICAgICA8SDQgdGV4dD1cIlJOQSBTeW50aGVzaXNcIi8+XHJcbiAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICA8T25lRmlndXJlXHJcbiAgICAgICAgICBudW09ezE2fVxyXG4gICAgICAgICAgcGljMT1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2RlbGl2ZXJ5L3Jlc3VsdHMvcm5hLWdlbC1maW5hbC5wbmdcIlxyXG4gICAgICAgICAgZGVzY3JpcHRpb249XCJHZWwgb2YgRGVuYXR1cmluZyBSTkEgR2VsIEVsZWN0cm9waG9yZXNpcyBmb3IgbVJOQSBzeW50aGVzaXplZCBmcm9tIHBjRE5BIDMuMSBlWUZQIGluZGljYXRpbmcgc3VjY2Vzc2Z1bCBSTkEgc3ludGhlc2lzLiBMYW5lIDE6IExvdyBSYW5nZSBSaWJvIFJ1bGVyLCBMYW5lIDI6IEZMdWMgQ29udHJvbCBUZW1wbGF0ZSwgTGFuZSAzOiBOZWdhdGl2ZSBDb250cm9sLCBMYW5lIDQtOSBtUk5BIGZyb20gcGNETkEgMy4xIGVZRlAuXCJcclxuICAgICAgICAgIGFsdDE9XCJHZWwgb2YgRGVuYXR1cmluZyBSTkEgR2VsIEVsZWN0cm9waG9yZXNpcyBmb3IgbVJOQSBzeW50aGVzaXplZCBmcm9tIHBjRE5BIDMuMSBlWUZQIGluZGljYXRpbmcgc3VjY2Vzc2Z1bCBSTkEgc3ludGhlc2lzLiBMYW5lIDE6IExvdyBSYW5nZSBSaWJvIFJ1bGVyLCBMYW5lIDI6IEZMdWMgQ29udHJvbCBUZW1wbGF0ZSwgTGFuZSAzOiBOZWdhdGl2ZSBDb250cm9sLCBMYW5lIDQtOSBtUk5BIGZyb20gcGNETkEgMy4xIGVZRlAuXCJcclxuICAgICAgICAgIC8+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgIDxwPldlIGJlZ2FuIGJ5IHN5bnRoZXNpemluZyBtUk5BIDxpPmluIHZpdHJvPC9pPiB1c2luZyBhIHBsYXNtaWQgd2l0aCBhIGVZRlAgcmVwb3J0ZXIgZnJvbSBBZGRnZW5lIChwY0ROQSAzLjEgZVlGUCkgYmVmb3JlIHByb2NlZWRpbmcgd2l0aCB0aGUgc3ludGhlc2lzIG9mIG91ciBhcHByb3hpbWF0ZWx5IDYwMDAgYnAgcHJpbWUgZWRpdGluZyBSTkEuIFRoaXMgd2FzIGRvbmUgdG8gdGVzdCB0aGUgdHJhbnNmZWN0aW9uIGVmZmljaWVuY3kgYW5kIGNvbXBhdGliaWxpdHkgb2Ygb3VyIExOUHMuIFRoZSBzeW50aGVzaXMgd2FzIHN1Y2Nlc3NmdWwsIHlpZWxkaW5nIGFuIGF2ZXJhZ2Ugb2YgMTQwMCBuZy9cdTAwQjVsIG9mIHB1cmlmaWVkIG1STkEgZnJvbSAxIFx1MDBCNWcgb2YgcGxhc21pZCBETkEgZGV0ZXJtaW5lZCBieSBOYW5vZHJvcCBtZWFzdXJlbWVudCAoZGF0YSBub3Qgc2hvd24pLiBUaGUgc2l6ZSBhbmQgaW50ZWdyaXR5IG9mIHRoZSBzeW50aGVzaXplZCBSTkEgd2VyZSBjb25maXJtZWQgdXNpbmcgYSBEZW5hdHVyaW5nIFJOQSBHZWwsIHdoZXJlIHdlIGV4cGVjdGVkIHRvIHNlZSBhIHByb2R1Y3Qgb2YgOTAwIG51Y2xlb3RpZGVzLiBBcyBhbnRpY2lwYXRlZCwgYSBzdHJvbmcgYW5kIHByb21pbmVudCBiYW5kIGNvcnJlc3BvbmRpbmcgdG8gdGhpcyBzaXplIHdhcyBvYnNlcnZlZCAoRmlndXJlIDE2KS4gVGhpcyBtUk5BIHdhcyBzdWJzZXF1ZW50bHkgdXNlZCBpbiBmdXJ0aGVyIExOUCBmb3JtdWxhdGlvbnMgd2l0aCBSTkEuPC9wPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPEg0IHRleHQ9XCJDYXltYW4gTE5QXCIvPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvdyBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgICAgPHA+TmV4dCwgd2UgZm9ybXVsYXRlZCB0aGUgTE5QcyB1c2luZyB0aGUgQ2F5bWFuIExpcGlkTGF1bmNoXHUyMTIyIExOUC0xMDIgRXhwbG9yYXRpb24gS2l0IGFmdGVyIHRoZSBtYW51ZmFjdHVyZXJzIHByb3RvY29sLiBUaGUgaW5pdGlhbCBhc3NlbWJseSBhdHRlbXB0IHdhcyB1bnN1Y2Nlc3NmdWwsIGFzIG5vIGNsb3VkeSwgYmx1aXNoIHNvbHV0aW9uIGZvcm1lZCBhZnRlciBtaXhpbmcgdGhlIGxpcGlkcy4gQWRkaXRpb25hbGx5LCB0cmFuc2ZlY3Rpb24gb2YgSEVLMjkzIGNlbGxzIHdpdGggTE5QcyBjb250YWluaW5nIG51Y2xlaWMgYWNpZHMgZGlkIG5vdCBwcm9kdWNlIGFueSByZXBvcnRlciBmbHVvcmVzY2VuY2UuIEFmdGVyIGNvbnN1bHRpbmcgd2l0aCBleHBlcnQgPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VzQW5kT3BlblRhYigncmFkdWtpYycsICcvaHVtYW4tcHJhY3RpY2VzJyl9PkRyLiBNYXJjbyBSYWR1a2ljPC9hPiBhbmQgYWRqdXN0aW5nIG91ciBMTlAgZm9ybXVsYXRpb24gYW5kIHRyYW5zZmVjdGlvbiBwcm90b2NvbHMsIHNwZWNpZmljYWxseSBieSBwcmUtYWNpZGlmeWluZyB0aGUgT3B0aU1FTSBtZWRpdW0sIHdlIHdlcmUgYWJsZSB0byBzdWNjZXNzZnVsbHkgYXNzZW1ibGUgYW5kIHRyYW5zZmVjdCB0aGUgTE5Qcy4gV2UgYWxzbyBnb3QgZnJvbSBoaW0gTWluaWNpcmNsZSBETkEgZnJvbSA8YSBocmVmPVwiaHR0cHM6Ly93d3cucGxhc21pZGZhY3RvcnkuY29tL2N1c3RvbS1kbmEvbWluaWNpcmNsZS1kbmEvXCIgdGl0bGU9XCJQbGFzbWlkRmFjdG9yeVwiID5QbGFzbWlkRmFjdG9yeTwvYT4gYXMgYSBzbWFsbCBwbGFzbWlkIGNhcnJ5aW5nIGFuIGVZRlAgZ2VuZSBhbmQgZWFzeSB0byB0cmFuc2Zvcm0sIGJ5IHRoYXQgc2VydmluZyBhcyBhIHBvc2l0aXZlIGNvbnRyb2wgaW4gb3VyIGV4cGVyaW1lbnRzLiBVcG9uIHBpcGV0dGluZyB0aGUgY29tcG9uZW50cyB0b2dldGhlciwgdGhlIHNvbHV0aW9uIGltbWVkaWF0ZWx5IHR1cm5lZCBjbG91ZHkgYW5kIGJsdWlzaCwgaW5kaWNhdGluZyBzdWNjZXNzZnVsIExOUCBmb3JtYXRpb24gKEZpZ3VyZSAxNykuPC9wPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgICAgICA8T25lRmlndXJlXHJcbiAgICAgICAgICAgICAgZGVzY3JpcHRpb249XCJDYXltYW4gTE5QIEZvcm1hdGlvbiBpbmRpY2F0ZWQgYnkgYmx1ZSBjb2xvciBhbmQgdHVyYmlkaXR5LiBNaW5pIEROQSA9IE1pbmljaXJjbGUgRE5BIGZyb20gUGxhc21pZEZhY3RvcnkuXCJcclxuICAgICAgICAgICAgICBudW09ezE3fVxyXG4gICAgICAgICAgICAgIHBpYzE9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9kZWxpdmVyeS9yZXN1bHRzL2NheW1hbmxucGJsdWUud2VicFwiXHJcbiAgICAgICAgICAgICAgYWx0MT1cIkNheW1hbiBMTlAgRm9ybWF0aW9uIGluZGljYXRlZCBieSBibHVlIGNvbG9yIGFuZCB0dXJiaWRpdHkuIE1pbmkgRE5BID0gTWluaWNpcmNsZSBETkEgZnJvbSBQbGFzbWlkRmFjdG9yeS5cIlxyXG4gICAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8SDUgdGV4dD1cIlRyYW5zZmVjdGlvblwiLz5cclxuICAgICAgICAgICAgPHA+VG8gZXZhbHVhdGUgdGhlIGVmZmljaWVuY3kgb2YgdHJhbnNmZWN0aW9uLCB3ZSBwZXJmb3JtZWQgZmx1b3Jlc2NlbmNlIG1pY3Jvc2NvcHkgKExlaWNhIERNSTYwMDAgQiBhdCAyMHggbWFnbmlmaWNhdGlvbikgb24gSEVLMjkzIGNlbGxzIHRyYW5zZmVjdGVkIHdpdGggTE5QLWZvcm11bGF0ZWQgRE5BIGFuZCBtUk5BIG9mIHBjRE5BIDMuMSBlWUZQLCBNaW5pY2lyY2xlIEROQSBhcyB0aGUgcG9zaXRpdmUgY29udHJvbCBhbmQgTE5QIHdpdGhvdXQgY2FyZ28gYXMgdGhlIG5lZ2F0aXZlIGNvbnRyb2wuIE1vcmVvdmVyLCB0cmFuc2ZlY3Rpb24gdmlhIGxpcG9mZWN0YW1pbmUgd2FzIHRlc3RlZCBmb3IgZGVsaXZlcnkgbWV0aG9kIGNvbXBhcmlzb24uPC9wPlxyXG4gICAgICAgICAgICA8cD5VbnRpbCA3MmggcG9zdC10cmFuc2ZlY3Rpb24sIHdlIG9ic2VydmVkIGluIHRoZSBjb25kaXRpb25zIHdpdGggbGlwb2ZlY3RhbWluZSBhbG9uZSBvciBjb21iaW5lZCB3aXRoIFJOQSwgbm8gZmx1b3Jlc2NlbmNlLCBpbmRpY2F0aW5nIHVuc3VjY2Vzc2Z1bCB0cmFuc2ZlY3Rpb24gd2l0aCBSTkEuIFNpbWlsYXJseSwgbm8gZmx1b3Jlc2NlbmNlIHdhcyBzZWVuIGluIGNlbGxzIHRyZWF0ZWQgd2l0aCBMTlBzIGFsb25lIG9yIGluIGNvbWJpbmF0aW9uIHdpdGggRE5BIG9yIFJOQS4gV2hlbiBMTlBzIHdlcmUgY29tYmluZWQgd2l0aCBNaW5pY2lyY2xlIEROQSBvciB0aGUgY2VsbHMgd2VyZSB0cmFuc2ZlY3RlZCB3aXRoIGxpcG9mZWN0YW1pbmUgYW5kIE1pbmljaXJjbGUgRE5BLCBjbGVhciBmbHVvcmVzY2VuY2Ugd2FzIG9ic2VydmVkLCBpbmRpY2F0aW5nIHN1Y2Nlc3NmdWwgdHJhbnNmZWN0aW9uIGFuZCBleHByZXNzaW9uIG9mIG91ciBlWUZQIHJlcG9ydGVyIHVuZGVyIHRoaXMgY29uZGl0aW9uIChGaWd1cmUgMTgpLiBIb3dldmVyLCBhIHN0cm9uZyBiYWNrZ3JvdW5kIGZsdW9yZXNjZW5jZSBmcm9tIHRoZSBPcHRpTUVNIG1lZGl1bSB3YXMgb2JzZXJ2ZWQsIGNvbXBsaWNhdGluZyB0aGUgYW5hbHlzaXMuPC9wPlxyXG4gICAgICAgICAgICA8cD5PdmVyYWxsLCBhbW9uZyBhbGwgdGhlIHRlc3RlZCBjb25kaXRpb25zLCB0aGUgTE5QIGZvcm11bGF0aW9uIHdpdGggTWluaWNpcmNsZSBETkEgd2FzIHRoZSBvbmx5IGNvbWJpbmF0aW9uIHRoYXQgcmVzdWx0ZWQgaW4gbm90aWNlYWJsZSBmbHVvcmVzY2VuY2UsIHN1Z2dlc3RpbmcgaXQgdG8gYmUgdGhlIG1vc3QgZWZmZWN0aXZlIHRyYW5zZmVjdGlvbiBtZXRob2QgZm9yIEhFSzI5MyBjZWxscyBpbiB0aGlzIGV4cGVyaW1lbnQuPC9wPlxyXG4gICAgICAgICAgICA8T25lRmlndXJlXHJcbiAgICAgICAgICAgIHBpYzE9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9kZWxpdmVyeS9yZXN1bHRzL3ByZWN5c2UvY2F5bWFuLnBuZ1wiXHJcbiAgICAgICAgICAgIG51bT17MTh9XHJcbiAgICAgICAgICAgIGJnPVwid2hpdGVcIlxyXG4gICAgICAgICAgICBkZXNjcmlwdGlvbj1cIk92ZXJsYXkgb2YgcGhhc2UgY29udHJhc3QgYW5kIGZsdW9yZXNjZW5jZSBtaWNyb3Njb3BpYyBpbWFnZXMgb2YgdHJhbnNmZWN0ZWQgSEVLMjkzIGNlbGxzIGF0IDIweCBtYWduaWZpY2F0aW9uIDcyaCBwb3N0LXRyYW5zZmVjdGlvbiB3aXRoIGRpZmZlcmVudCBDYXltYW4gTE5QIGZvcm11bGF0aW9ucyByZWNvcmRlZCB3aXRoIExlaWNhIERNSTYwMDAgQi4gTGlwbz0gbGlwb2ZlY3RhbWluZSwgTWluaSBETkEgPSBNaW5pY2lyY2xlIEROQS5cIlxyXG4gICAgICAgICAgICBhbHQxPVwiT3ZlcmxheSBvZiBwaGFzZSBjb250cmFzdCBhbmQgZmx1b3Jlc2NlbmNlIG1pY3Jvc2NvcGljIGltYWdlcyBvZiB0cmFuc2ZlY3RlZCBIRUsyOTMgY2VsbHMgYXQgMjB4IG1hZ25pZmljYXRpb24gNzJoIHBvc3QtdHJhbnNmZWN0aW9uIHdpdGggZGlmZmVyZW50IENheW1hbiBMTlAgZm9ybXVsYXRpb25zIHJlY29yZGVkIHdpdGggTGVpY2EgRE1JNjAwMCBCLiBMaXBvPSBsaXBvZmVjdGFtaW5lLCBNaW5pIEROQSA9IE1pbmljaXJjbGUgRE5BLlwiXHJcbiAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICBcclxuICAgICAgICAgIDxINSB0ZXh0PVwiU0VNXCIvPlxyXG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3cgYWxpZ24taXRlbXMtY2VudGVyXCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICAgICAgPHA+U2Nhbm5pbmcgRWxlY3Ryb24gTWljcm9zY29weSAoU0VNKSAoUGhlbm9tIFByb1gsIFRoZXJtbyBGaXNoZXIpIHdhcyBlbXBsb3llZCBieSB1cyB0byBleGFtaW5lIHRoZSBtb3JwaG9sb2d5IGFuZCBzdXJmYWNlIGNoYXJhY3RlcmlzdGljcyBvZiBDYXltYW4gTE5Qcy4gVGhlIFNFTSBpbWFnZXMgcmV2ZWFsZWQgdGhhdCB0aGUgTE5QcyBkaXNwbGF5ZWQgYSBnZW5lcmFsbHkgc3BoZXJpY2FsIG1vcnBob2xvZ3kgd2l0aCBhIHJlbGF0aXZlbHkgc21vb3RoIHN1cmZhY2UgKEZpZ3VyZSAxOSkuIFRoZSBhdmVyYWdlIHBhcnRpY2xlIHNpemUgd2FzIGFwcHJveGltYXRlbHkgMjAwIG5tLiBIb3dldmVyLCBhIGhldGVyb2dlbmVvdXMgZGlzdHJpYnV0aW9uIG9mIHBhcnRpY2xlIHNpemVzIHdhcyBvYnNlcnZlZCwgd2l0aCBzb21lIGxhcmdlciwgcm91bmQgc3RydWN0dXJlcyBwcmVzZW50LiBUaGVzZSBsYXJnZXIgc3RydWN0dXJlcyBjb3VsZCBwb3RlbnRpYWxseSBpbmRpY2F0ZSBhZ2dyZWdhdGVkIExOUHMuPC9wPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgICAgICA8T25lRmlndXJlIFxyXG4gICAgICAgICAgICAgIHBpYzE9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9kZWxpdmVyeS9yZXN1bHRzL3NjcmVlbnNob3QtMjAyNC0xMC0wMS0yMDA2MjkucG5nXCJcclxuICAgICAgICAgICAgICBhbHQxPVwiQ2F5UkVNXCJcclxuICAgICAgICAgICAgICBkZXNjcmlwdGlvbj1cIlNFTSBpbWFnZSBvZiBDYXltYW4gTE5QcyAoMTAsMDAweCBtYWduaWZpY2F0aW9uKSB3aXRoIFRvcG9ncmFwaHkgbW9kZS5cIlxyXG4gICAgICAgICAgICAgIG51bT17MTl9Lz5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDxwPldoaWxlIG1hbnkgcGFydGljbGVzIHJldGFpbmVkIHRoZWlyIHN0cnVjdHVyYWwgaW50ZWdyaXR5LCB0aGUgcHJlc2VuY2Ugb2YgdGhlc2UgYWdncmVnYXRlcyBzdWdnZXN0cyB0aGF0LCB1bmRlciBjZXJ0YWluIGNvbmRpdGlvbnMsIHRoZSBMTlBzIG1heSB0ZW5kIHRvIGNsdXN0ZXIuIEl0IGlzIGltcG9ydGFudCB0byBub3RlIHRoYXQgZm9yIFNFTSBhbmFseXNpcywgdGhlIHNhbXBsZXMgd2VyZSBkcmllZCBhbmQgb2JzZXJ2ZWQgdW5kZXIgdmFjdXVtLCB3aGljaCBwcm9iYWJseSBoYXZlIGFmZmVjdGVkIHRoZSBzdHJ1Y3R1cmUgYW5kIHNoYXBlIG9mIHRoZSBMTlBzLiBUaGlzIHByZXBhcmF0aW9uIHByb2Nlc3MgY2FuIGludHJvZHVjZSBhcnRpZmFjdHMgdGhhdCB3b3VsZCBub3QgdHlwaWNhbGx5IGJlIHByZXNlbnQgaW4gc29sdXRpb24gYW5kIHNob3VsZCBiZSBjb25zaWRlcmVkIHdoZW4gaW50ZXJwcmV0aW5nIHRoZSByZXN1bHRzLiBBZGRpdGlvbmFsbHksIHRoZSBjb250cmFzdCB1bmRlciB2YWN1dW0gY29uZGl0aW9ucyB3YXMgdG9vIGxvdyB0byByZWxpYWJseSBkaXN0aW5ndWlzaCB0aGUgTE5QcyB3aXRoIHN1ZmZpY2llbnQgZGV0YWlsLiBJdCBwcm92aWRlZCBhIHVzZWZ1bCBpbml0aWFsIGdsaW1wc2UgaW50byB0aGUgd29ybGQgb2YgbmFub3BhcnRpY2xlcy4gRnVydGhlciBjb21wbGVtZW50YXJ5IHRlY2huaXF1ZXMgd2lsbCBiZSBuZWVkZWQgZm9yIGEgbW9yZSBhY2N1cmF0ZSBhbmQgZGV0YWlsZWQgY2hhcmFjdGVyaXphdGlvbi48L3A+XHJcbiAgICAgICAgICA8SDQgdGV4dD1cIkNvcmRlbiBMTlBcIi8+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvdyBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgPE9uZUZpZ3VyZVxyXG4gICAgICAgICAgcGljMT1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2RlbGl2ZXJ5L3Jlc3VsdHMvd2hhdHNhcHAtaW1hZ2UtMjAyNC0wOS0yNC1hdC0xMi01Ny01OS5qcGVnXCJcclxuICAgICAgICAgIG51bT17MjB9XHJcbiAgICAgICAgICBkZXNjcmlwdGlvbj1cIlR1cmJpZGl0eSBhZnRlciBjb21wb25lbnRzIG9mIHRoZSBDb3JkZW4gTE5QIGhhdmUgYmVlbiBwaXBldHRlZCB0b2dldGhlciBpbmRpY2F0ZXMgcGFydGljbGUgZm9ybWF0aW9uLlwiXHJcbiAgICAgICAgICBhbHQxPVwiVHVyYmlkaXR5IGFmdGVyIGNvbXBvbmVudHMgb2YgdGhlIENvcmRlbiBMTlAgaGF2ZSBiZWVuIHBpcGV0dGVkIHRvZ2V0aGVyIGluZGljYXRlcyBwYXJ0aWNsZSBmb3JtYXRpb24uXCJcclxuICAgICAgICAgIC8+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgICAgICA8cD5EdXJpbmcgdGhlIHByZXBhcmF0aW9uIG9mIHRoZSBMTlBzLCB0aGUgc29sdXRpb24gYmVjYW1lIHR1cmJpZCBhbmQgYmx1aXNoLCBpbmRpY2F0aW5nIHN1Y2Nlc3NmdWwgbmFub3BhcnRpY2xlIGZvcm1hdGlvbiAoRmlndXJlIDIwKS4gVGhpcyB3YXMgZnVydGhlciBjb25maXJtZWQgYnkgY3J5by1FTSAoY3J5b2dlbmljIGVsZWN0cm9uIG1pY3Jvc2NvcHkpIGFuYWx5c2lzLCB3aGljaCByZXZlYWxlZCB0aGUgcHJlc2VuY2Ugb2Ygd2VsbC1mb3JtZWQgTE5Qcy4gRGVzcGl0ZSB0aGUgc3VjY2Vzc2Z1bCBmb3JtYXRpb24gb2YgTE5Qcywgbm8gZGV0ZWN0YWJsZSBmbHVvcmVzY2VuY2Ugd2FzIG9ic2VydmVkIGluIHRoZSBjZWxscyB0cmVhdGVkIHdpdGggTE5QcyBjb250YWluaW5nIHBjRE5BIDMuMSBlWUZQIEROQSBvciBtUk5BIGF0IGFueSBvZiB0aGUgbWVhc3VyZWQgdGltZSBwb2ludHMsIGluZGljYXRpbmcgdGhhdCB0cmFuc2ZlY3Rpb24gZGlkIG5vdCBvY2N1ciB1bmRlciB0aGVzZSBjb25kaXRpb25zLjwvcD5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPEg1IHRleHQ9XCJUcmFuc2ZlY3Rpb25cIi8+XHJcbiAgICAgICAgPHA+Rmx1b3Jlc2NlbmNlIG1pY3Jvc2NvcHkgd2l0aCB0aGUgTGVpY2EgRE1JNjAwMCBCIG1pY3Jvc2NvcGUgYXQgMjB4IG1hZ25pZmljYXRpb24gd2FzICBieSBwZXJmb3JtZWQgdXMgb24gSEVLMjkzIGNlbGxzIHRyYW5zZmVjdGVkIHdpdGggTE5QcyBjb250YWluaW5nIHBjRE5BIDMuMSBlWUZQIEROQSBhbmQgbVJOQS4gTWluaWNpcmNsZSBETkEgc2VydmVkIGFzIHRoZSBwb3NpdGl2ZSBjb250cm9sLCB3aGlsZSBMTlBzIHdpdGhvdXQgY2FyZ28gYWN0ZWQgYXMgdGhlIG5lZ2F0aXZlIGNvbnRyb2wuIENlbGxzIHdlcmUgaW1hZ2VkIGF0IDI0aCwgNDhoLCBhbmQgNzJoIHBvc3QtdHJhbnNmZWN0aW9uLjwvcD5cclxuICAgICAgICA8cD5SZXRyb3NwZWN0aXZlbHksIGFmdGVyIDcyaCBub25lIG9mIHRoZSBMTlAtdHJlYXRlZCBzYW1wbGVzIHNob3dlZCBzaWduaWZpY2FudCBmbHVvcmVzY2VuY2UsIGluZGljYXRpbmcgYSBmYWlsdXJlIGluIHRyYW5zZmVjdGlvbiAoRmlndXJlIDIxKS4gVGhlIGxhY2sgb2YgZmx1b3Jlc2NlbmNlIGluIGFsbCBleHBlcmltZW50YWwgZ3JvdXBzLCBleGNlcHQgbGlwb2ZlY3RhbWluZSBhbmQgTWluaWNpcmNsZSBETkEsIHN1Z2dlc3RzIGVpdGhlciBpbnN1ZmZpY2llbnQgdXB0YWtlIG9mIHRoZSBMTlBzIGJ5IHRoZSBjZWxscyBvciBhIGZhaWx1cmUgaW4gZXhwcmVzc2lvbiBvZiB0aGUgWUZQIHJlcG9ydGVyLCBpbmRpY2F0aW5nIHRoYXQgdGhlIENvcmRlbiBMTlAgbWF5IG5vdCBzdWl0ZWQgYXMgb3VyIGRlbGl2ZXJ5IHN5c3RlbS4gQWxzbyB0aGUgZGVmb3JtZWQgbW9ycGhvbG9neSBhbmQgZGVjcmVhc2VkIGdyb3d0aCBhcmUgaW5kaWNhdG9ycyBmb3IgbmVnYXRpdmUgZWZmZWN0cyBvZiB0aGUgQ2F5bWFuIExOUCBvbiBIRUsyOTMsIHByb2JhYmx5IHJlYXNvbmVkIGluIHRoZSBlbXBsb3ltZW50IG9mIG1vcmUgY3l0b3RveGljIG1QRUctRFNQRSBjb21wYXJlZCB0byBETUctUEVHIGluIHRoZSBDYXltYW4gYW5kIFNPUlQgTE5QLjwvcD5cclxuICAgICAgICA8T25lRmlndXJlXHJcbiAgICAgICAgICBwaWMxPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvZGVsaXZlcnkvcmVzdWx0cy9wcmVjeXNlL2NvcmRlbi5wbmdcIlxyXG4gICAgICAgICAgbnVtPXsyMX1cclxuICAgICAgICAgIGJnPVwid2hpdGVcIlxyXG4gICAgICAgICAgZGVzY3JpcHRpb249XCJPdmVybGF5IG9mIHBoYXNlIGNvbnRyYXN0IGFuZCBmbHVvcmVzY2VuY2UgbWljcm9zY29waWMgaW1hZ2VzIG9mIHRyYW5zZmVjdGVkIEhFSzI5MyBjZWxscyBhdCAyMHggbWFnbmlmaWNhdGlvbiA3MmggcG9zdC10cmFuc2ZlY3Rpb24gd2l0aCBkaWZmZXJlbnQgQ29yZGVuIExOUCBmb3JtdWxhdGlvbnMgcmVjb3JkZWQgd2l0aCBMZWljYSBETUk2MDAwIEIuIEZvciBsaXBvZmVjdGFtaW5lIChsaXBvKSArIE1pbmljaXJjbGUgRE5BIChNaW5pIEROQSkgb25seSB0aGUgZmx1b3Jlc2NlbmNlIGltYWdlIGlzIHNob3duLlwiXHJcbiAgICAgICAgICBhbHQxPVwiT3ZlcmxheSBvZiBwaGFzZSBjb250cmFzdCBhbmQgZmx1b3Jlc2NlbmNlIG1pY3Jvc2NvcGljIGltYWdlcyBvZiB0cmFuc2ZlY3RlZCBIRUsyOTMgY2VsbHMuXCJcclxuICAgICAgICAvPlxyXG4gICAgICAgIDxINSB0ZXh0PVwiQ3J5by1FTVwiLz5cclxuICAgICAgICA8cD5DcnlvLUVNIGFzIGEgZm9ybSBvZiB0cmFuc21pc3Npb24gZWxlY3Ryb24gbWljcm9zY29weSAoVEVNKSB3YXMgcGVyZm9ybWVkIGJ5IHVzIHVzaW5nIGEgSkVPTCBKRU0tMjIwMEZTIGVsZWN0cm9uIG1pY3Jvc2NvcGUgKEpFT0wsIEZyZWlzaW5nLCBHZXJtYW55KSBvcGVyYXRpbmcgYXQgMjAwa1YsIGVxdWlwcGVkIHdpdGggYSBjb2xkIGZpZWxkIGVtaXNzaW9uIGVsZWN0cm9uIGd1bi4gVGhlIHNhbXBsZSBwcmVwYXJhdGlvbiBhbmQgaW1hZ2luZyB3ZXJlIGNhcnJpZWQgb3V0IGF0IGNyeW9nZW5pYyB0ZW1wZXJhdHVyZXMsIHdoaWNoIGFsbG93ZWQgZm9yIHRoZSB2aXN1YWxpemF0aW9uIG9mIExOUHMgaW4gdGhlaXIgbmF0aXZlIGh5ZHJhdGVkIHN0YXRlLjwvcD5cclxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvdyBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cclxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICA8T25lRmlndXJlXHJcbiAgcGljMT1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2RlbGl2ZXJ5L3Jlc3VsdHMvY29yZGVuLWxucC5qcGdcIlxyXG4gIG51bT17MjJ9XHJcbiAgZGVzY3JpcHRpb249XCJDcnlvLUVNIGltYWdlIG9mIENvcmRlbiBMTlBzLlwiXHJcbiAgYWx0MT1cIkNyeW8tRU0gaW1hZ2Ugb2YgQ29yZGVuIExOUHMuXCJcclxuLz5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgICAgPHA+VGhlIGltYWdlcyByZXZlYWwgdGhlIHByZXNlbmNlIG9mIHNwaGVyaWNhbCBMTlAgc3RydWN0dXJlcyB3aXRoIGFuIGFwcHJveGltYXRlIHNpemUgb2YgMTAwIG5tIChGaWd1cmUgMjIpLiBUaGUgTE5QcyBhcHBlYXIgd2VsbC1mb3JtZWQsIHdpdGggdW5pZm9ybSBtb3JwaG9sb2d5LCBpbmRpY2F0aW5nIHN1Y2Nlc3NmdWwgbmFub3BhcnRpY2xlIGZvcm1hdGlvbi4gSW4gYWRkaXRpb24gdG8gaW5kaXZpZHVhbCBwYXJ0aWNsZXMsIHNvbWUgbGFyZ2VyLCByb3VuZCBzdHJ1Y3R1cmVzIHdlcmUgYWxzbyBvYnNlcnZlZCwgd2hpY2ggY291bGQgcmVwcmVzZW50IGFnZ3JlZ2F0ZWQgTE5Qcy4gVGhlc2UgYWdncmVnYXRpb25zIGFyZSBhIGNvbW1vbiBwaGVub21lbm9uIGluIExOUCBzeXN0ZW1zIGFuZCBjb3VsZCBiZSBhdHRyaWJ1dGVkIHRvIGludGVyYWN0aW9ucyBiZXR3ZWVuIHBhcnRpY2xlcyB1bmRlciBjZXJ0YWluIGNvbmRpdGlvbnMuPC9wPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPHA+V2hpbGUgQ3J5by1FTSBwcm92aWRlcyB2YWx1YWJsZSBpbnNpZ2h0cyBpbnRvIHRoZSBtb3JwaG9sb2d5IGFuZCBzaXplIGRpc3RyaWJ1dGlvbiBvZiB0aGUgTE5QcywgdGhlcmUgYXJlIHNvbWUgbGltaXRhdGlvbnMgdG8gdGhpcyB0ZWNobmlxdWUuIFRoZSBpbWFnaW5nIHByb2Nlc3MgaW52b2x2ZXMgY3J5b2dlbmljIGZyZWV6aW5nIGFuZCBleHBvc3VyZSB0byBoaWdoLWVuZXJneSBlbGVjdHJvbiBiZWFtcywgd2hpY2ggY2FuIHBvdGVudGlhbGx5IGluZHVjZSBtaW5vciBzdHJ1Y3R1cmFsIGFydGlmYWN0cy4gRnVydGhlcm1vcmUsIHRoZSB0aGlubmVzcyBvZiB0aGUgc2FtcGxlIG1heSBsaW1pdCBjb250cmFzdCwgbWFraW5nIGl0IGRpZmZpY3VsdCB0byBmdWxseSBkaXN0aW5ndWlzaCBiZXR3ZWVuIGRpZmZlcmVudCBMTlAgcG9wdWxhdGlvbnMgb3IgdGhlaXIgaW50ZXJuYWwgc3RydWN0dXJlcy4gRGVzcGl0ZSB0aGVzZSBsaW1pdGF0aW9ucywgQ3J5by1FTSBzdGlsbCBvZmZlcnMgYSBoaWdoLXJlc29sdXRpb24gdmlldyBvZiB0aGUgTE5QcyBpbiB0aGVpciBuZWFyLW5hdGl2ZSBzdGF0ZSwgcHJvdmlkaW5nIGVzc2VudGlhbCBpbmZvcm1hdGlvbiBhYm91dCB0aGVpciBzaXplIGFuZCBzaGFwZS48L3A+XHJcbiAgICAgICAgPEg0IHRleHQ9XCJTT1JUIExOUFwiLz5cclxuICAgICAgICA8SDUgdGV4dD1cIlRyYW5zZmVjdGlvblwiLz5cclxuICAgICAgICAgIDxwPkFscmVhZHkgYXQgNDhoIG9mIDcyIG1vbml0b3JlZCBob3VycyBwb3N0LXRyYW5zZmVjdGlvbiBvZiBIRUsyOTMgd2l0aCB0aGUgU09SVCBMTlAsIGNsZWFyIGFuZCBzdHJvbmcgZmx1b3Jlc2NlbmNlIHdhcyBhbHJlYWR5IG9ic2VydmVkIHdoZW4gdXNpbmcgTE5QcyBjb21iaW5lZCB3aXRoIE1pbmljaXJjbGUgRE5BLCBhcyB3ZWxsIGFzIGluIHRoZSBsaXBvZmVjdGFtaW5lIGFuZCBNaW5pY2lyY2xlIEROQSBjb25kaXRpb24sIGNvbmZpcm1pbmcgc3VjY2Vzc2Z1bCB0cmFuc2ZlY3Rpb24gYW5kIHJvYnVzdCBleHByZXNzaW9uIG9mIHRoZSBlWUZQIHJlcG9ydGVyIChGaWd1cmUgMjMpLiBUaGlzIGVhcmx5IGRldGVjdGlvbiBvZiBmbHVvcmVzY2VuY2UgaGlnaGxpZ2h0cyB0aGUgZWZmaWNpZW5jeSBvZiBTT1JUIExOUHMgYXMgZGVsaXZlcnkgc3lzdGVtLiBJbiBjb250cmFzdCwgbm8gZmx1b3Jlc2NlbmNlIHdhcyBkZXRlY3RlZCBpbiBhbnkgY29uZGl0aW9ucyBpbnZvbHZpbmcgbGlwb2ZlY3RhbWluZSBhbG9uZSwgbGlwb2ZlY3RhbWluZSB3aXRoIFJOQSwgb3IgTE5QcyBjb21iaW5lZCB3aXRoIEROQSBvciBSTkEsIGZ1cnRoZXIgZW1waGFzaXppbmcgdGhlIHN1cGVyaW9yIHBlcmZvcm1hbmNlIG9mIHRoZSBNaW5pY2lyY2xlIEROQSBmb3JtdWxhdGlvbnMgYW5kIGhpZ2hsaWdodGluZyB0aGUgbmVlZCBmb3IgaW1wcm92ZW1lbnQgb2YgY2FyZ28gc3RhYmlsaXphdGlvbiBhbmQgb3VyIGNhcmdvIGNob2ljZS48L3A+XHJcbiAgICAgICAgICA8T25lRmlndXJlXHJcbiAgcGljMT1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2RlbGl2ZXJ5L3Jlc3VsdHMvcHJlY3lzZS9zb3J0LnBuZ1wiXHJcbiAgbnVtPXsyM31cclxuICBiZz1cIndoaXRlXCJcclxuICBkZXNjcmlwdGlvbj1cIk92ZXJsYXkgb2YgcGhhc2UgY29udHJhc3QgYW5kIGZsdW9yZXNjZW5jZSBtaWNyb3Njb3BpYyBpbWFnZXMgb2YgdHJhbnNmZWN0ZWQgSEVLMjkzIGNlbGxzIGF0IDIweCBtYWduaWZpY2F0aW9uIDQ4aCBwb3N0LXRyYW5zZmVjdGlvbiB3aXRoIGRpZmZlcmVudCBTT1JUIExOUCBmb3JtdWxhdGlvbnMgcmVjb3JkZWQgd2l0aCBMZWljYSBETUk2MDAwIEIuIExpcG8gPSBsaXBvZmVjdGFtaW5lLCBNaW5pIEROQSA9IE1pbmljaXJjbGUgRE5BLlwiXHJcbiAgYWx0MT1cIk92ZXJsYXkgb2YgcGhhc2UgY29udHJhc3QgYW5kIGZsdW9yZXNjZW5jZSBtaWNyb3Njb3BpYyBpbWFnZXMgb2YgdHJhbnNmZWN0ZWQgSEVLMjkzIGNlbGxzLlwiXHJcbi8+XHJcbiAgICAgICAgICAgIDxwPk5vdGFibHksIHRoZSBTT1JUIExOUCBmb3JtdWxhdGlvbiB3aXRoIE1pbmljaXJjbGUgRE5BIHNob3dlZCBzaWduaWZpY2FudCB0cmFuc2ZlY3Rpb24gZWZmaWNpZW5jeSB3aXRoaW4gNDggaG91cnMsIG1ha2luZyBpdCB0aGUgbW9zdCBlZmZlY3RpdmUgZGVsaXZlcnkgbWV0aG9kIHRlc3RlZCBhbW9uZyBhbGwgdGhyZWUgTE5Qcy4gVGhpcyBlYXJseSBhbmQgcm9idXN0IGV4cHJlc3Npb24gZGVtb25zdHJhdGVzIHRoZSBjbGVhciBhZHZhbnRhZ2Ugb2YgdGhpcyBhcHByb2FjaCBmb3IgSEVLMjkzIGNlbGxzLjwvcD5cclxuICAgICAgICA8SDUgdGV4dD1cIkZsb3cgQ3l0b21ldHJ5XCIvPlxyXG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3cgYWxpZ24taXRlbXMtY2VudGVyXCI+XHJcbiAgICAgICAgICA8cD5XZSBwZXJmb3JtZWQgZmxvdyBjeXRvbWV0cnkgYW5hbHlzaXMgNzJoIHBvc3QtdHJhbnNmZWN0aW9uIHRvIGV2YWx1YXRlIHRoZSB0cmFuc2ZlY3Rpb24gZWZmaWNpZW5jeSBvZiB0aGUgU09SVCBMTlAgaW4gSEVLMjkzLiBUaGUgcmVsYXRpdmUgcGVyY2VudGFnZSBvZiBmbHVvcmVzY2VudCBjZWxscyB3YXMgZGV0ZXJtaW5lZCBieSBtZWFzdXJpbmcgdGhlIHBlcmNlbnRhZ2Ugb2YgRklUQy1BKyBjZWxscywgZm9sbG93ZWQgYnkgbm9ybWFsaXphdGlvbiB0byB0aGUgbmVnYXRpdmUgY29udHJvbCBhbmQgZm9sZCBjaGFuZ2UgY2FsY3VsYXRpb24uPC9wPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICA8T25lRmlndXJlXHJcbiAgcGljMT1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2RlbGl2ZXJ5L3Jlc3VsdHMvc29ydGxucC1mYWNzLnBuZ1wiXHJcbiAgbnVtPXsyNH1cclxuICBiZz1cIndoaXRlXCJcclxuICBkZXNjcmlwdGlvbj1cIlBlcmNlbnRhZ2Ugb2YgZmx1b3Jlc2NlbnQgY2VsbHMgKEZJVEMtQSspIHBlcmZvcm1lZCA3MmggcG9zdC10cmFuc2ZlY3Rpb24gb2YgU09SVCBMTlAgaW4gSEVLMjkzLiBNZWFuICsvLSBTRU0gZm9yIG49My4gRm9yIHN0YXRpc3RpY3Mgb25lLXdheSBBTk9WQSB3YXMgcGVyZm9ybWVkLlwiXHJcbiAgYWx0MT1cIlBlcmNlbnRhZ2Ugb2YgZmx1b3Jlc2NlbnQgY2VsbHMgcG9zdC10cmFuc2ZlY3Rpb24gb2YgU09SVCBMTlAgaW4gSEVLMjkzLlwiXHJcbi8+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgIDxwPlRoZSBTT1JUIExOUC10cmFuc2ZlY3RlZCBzYW1wbGUgY2FycnlpbmcgTWluaWNpcmNsZSBETkEgZXhoaWJpdGVkIGEgc2lnbmlmaWNhbnQgaW5jcmVhc2UgaW4gZmx1b3Jlc2NlbmNlIGNvbXBhcmVkIHRvIHRoZSBsaXBvZmVjdGFtaW5lIHRyYW5zZmVjdGlvbiBvZiBNaW5pY2lyY2xlIEROQSwgd2l0aCBhcHByb3hpbWF0ZWx5IDE0IHRpbWVzIG1vcmUgZmx1b3Jlc2NlbnQgY2VsbHMgY29tcGFyZWQgdG8gdGhlIGxpcG9mZWN0YW1pbmUtdHJhbnNmZWN0ZWQgc2FtcGxlIChGaWd1cmUgMjQpLiBUaGlzIHN1YnN0YW50aWFsIGRpZmZlcmVuY2UgaW5kaWNhdGVzIHRoYXQgdGhlIHRyYW5zZmVjdGlvbiBlZmZpY2llbmN5IHdpdGggTE5QcyBpcyBtYXJrZWRseSBoaWdoZXIgdGhhbiB3aXRoIGxpcG9mZWN0YW1pbmUsIGRlbW9uc3RyYXRpbmcgdGhlIHN1cGVyaW9yIHBlcmZvcm1hbmNlIG9mIG91ciBMTlAgZm9ybXVsYXRpb24gaW4gZGVsaXZlcmluZyBudWNsZWljIGFjaWRzIHRvIEhFSyBjZWxscy48L3A+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8SDUgdGV4dD1cIlpldGEgUG90ZW50aWFsXCIvPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvdyBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgICAgPHA+V2UgbWVhc3VyZWQgYm90aCB0aGUgcGFydGljbGUgc2l6ZSBkaXN0cmlidXRpb24gYW5kIHRoZSBaZXRhIHBvdGVudGlhbCB1c2luZyB0aGUgTmFub3RyYWNrIFdhdmUgSUkuIFdlIGNvdWxkIGFzc3VtZSB0aGF0IHRoZSBwYXJ0aWNsZXMgZXhoaWJpdCBhIHBvbGFyaXplZCBaZXRhIHBvdGVudGlhbCwgd2hpY2ggaXMgc3VmZmljaWVudCB0byBwcm92aWRlIGVsZWN0cm9zdGF0aWMgc3RhYmlsaXphdGlvbiwgdGhlcmVieSBwcmV2ZW50aW5nIGFnZ3JlZ2F0aW9uIGFuZCBtYWludGFpbmluZyBwYXJ0aWNsZSBzdGFiaWxpdHkuIEZvciBlZmZlY3RpdmUgdGFyZ2V0aW5nIG9mIGx1bmcgY2VsbHMgd2hpY2ggaGF2ZSBuZWdhdGl2ZWx5IGNoYXJnZWQgc3VyZmFjZXMsIGEgbmVnYXRpdmUgcG9sYXJpdHkgaXMgZGVzaXJhYmxlIG1lYW5pbmcgdGhlIExOUCBpcyBwb3NpdGl2ZWx5IGNoYXJnZWQsIHNvIHRoZXJlIGNhbiBiZSBlbGVjdHJvc3RhdGljIGF0dHJhY3Rpb24gdG8gbHVuZyBlcGl0aGVsaWFsIGNlbGxzLiBXZSB3ZXJlIGFibGUgdG8gc2hvdyB0aGF0IG91ciBTT1JUIExOUCBoYXMgdGhlc2UgcHJvcGVydGllcyByZWdhcmRsZXNzIG9mIHRoZSBsb2FkLiBGdXJ0aGVybW9yZSB3ZSBjb3VsZCA8YSBocmVmPVwiaHR0cHM6Ly9jaGVtLmxpYnJldGV4dHMub3JnL0Jvb2tzaGVsdmVzL0FuYWx5dGljYWxfQ2hlbWlzdHJ5L1BoeXNpY2FsX01ldGhvZHNfaW5fQ2hlbWlzdHJ5X2FuZF9OYW5vX1NjaWVuY2VfKEJhcnJvbikvMDIlM0FfUGh5c2ljYWxfYW5kX1RoZXJtYWxfQW5hbHlzaXMvMi4wNSUzQV9aZXRhX1BvdGVudGlhbF9BbmFseXNpc1wiIHRpdGxlPVwiU3RhYlpldGFcIiA+ZGV0ZXJtaW5lIHRoZSBzdGFiaWxpdHkgdmlhIHRoZSBaZXRhIHBvdGVudGlhbDwvYT4uIEluIGRldGFpbCB0aGUgbWVhbiBvZiB0aGUgWmV0YSBwb3RlbnRpYWwgbGF5cyBhdCAxNi4yIG1WIGZvciB0aGUgU09SVCBMTlAgd2l0aCBNaW5pY2lyY2xlIEROQSBhcyBjYXJnbywgaW5kaWNhdGluZyBpbmNpcGllbnQgc3RhYmlsaXR5LCBhdCA1OS40NSBtViBmb3IgdGhlIFNPUlQgTE5QIHdpdGggcGNETkEgMy4xIGVZRlAgYXMgY2FyZ28sIGluZGljYXRpbmcgZ29vZCBzdGFiaWxpdHkgYW5kIGF0IDg4LjIyIG1WIGZvciB0aGUgU09SVCBMTlAgd2l0aG91dCBjYXJnbyBpbmRpY2F0aW5nIGV4Y2VsbGVudCBzdGFiaWxpdHkgKEZpZ3VyZSAyNSkuIFRoZSBnb29kIHN0YWJpbGl0eSBvZiB0aGUgU09SVCBMTlAgd2l0aCBwY0ROQSAzLjEgZVlGUCBpcyBjcnVjaWFsIGZvciBvdXIgcHVycG9zZXMsIGFzIGl0IGVuc3VyZXMgZWZmZWN0aXZlIGRlbGl2ZXJ5IGFuZCBwZXJmb3JtYW5jZS4gSW4gY29udHJhc3QsIHRoZSBzdGFiaWxpdHkgb2YgdGhlIExOUHMgd2l0aCBNaW5pY2lyY2xlIEROQSBjYW4gYmUgY29uc2lkZXJlZCBzZWNvbmRhcnksIGFzIGl0IHByaW1hcmlseSBzZXJ2ZXMgYXMgYSBwb3NpdGl2ZSB0cmFuc2ZlY3Rpb24gY29udHJvbCBhbmQgaXMgbm90IGNlbnRyYWwgdG8gb3VyIG1haW4gb2JqZWN0aXZlcy48L3A+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgICAgICA8T25lRmlndXJlXHJcbiAgcGljMT1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2RlbGl2ZXJ5L3Jlc3VsdHMvc29ydC16ZXRhLndlYnBcIlxyXG4gIG51bT17MjV9XHJcbiAgYmc9XCJ3aGl0ZVwiXHJcbiAgZGVzY3JpcHRpb249XCJaZXRhIHBvdGVudGlhbCBvZiBTT1JUIExOUCB3aXRoIGRpZmZlcmVudCBjYXJnb3MgbWVhc3VyZWQgd2l0aCBOYW5vdHJhY2sgV2F2ZSBJSSBpbmRpY2F0aW5nIHZhcnlpbmcgZGVncmVlcyBvZiBzdGFiaWxpdHkgYnV0IG1vc3QgaW1wb3J0YW50IGdvb2Qgc3RhYmlsaXR5IGZvciB0aGUgU09SVCBMTlAgbG9hZGVkIHdpdGggcGNETkEgMy4xIGVZRlAgKExOUCBETkEpLiBNZWFuICsvLSBTRU0gZm9yIG49NS4gRm9yIHN0YXRpc3RpY3Mgb25lLXdheSBBTk9WQSB3YXMgcGVyZm9ybWVkLlwiXHJcbiAgYWx0MT1cIlpldGEgcG90ZW50aWFsIG9mIFNPUlQgTE5QIHdpdGggZGlmZmVyZW50IGNhcmdvcy5cIlxyXG4vPlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3cgYWxpZ24taXRlbXMtY2VudGVyXCI+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgPE9uZUZpZ3VyZVxyXG4gIHBpYzE9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9kZWxpdmVyeS9yZXN1bHRzL3NjcmVlbnNob3QtMjAyNC0xMC0wMS0yMDQ5MzgucG5nXCJcclxuICBudW09ezI2fVxyXG4gIGJnPVwid2hpdGVcIlxyXG4gIGRlc2NyaXB0aW9uPVwiU2l6ZSBkaXN0cmlidXRpb24gZm9yIHRoZSBTT1JUIExOUCB3aXRoIGRpZmZlcmVudCBjYXJnb3Mgd2VpZ2h0ZWQgYnkgc2NhdHRlcmluZyBpbnRlbnNpdHkgbWVhc3VyZWQgd2l0aCBOYW5vdHJhY2sgV2F2ZSBJSS5cIlxyXG4gIGFsdDE9XCJTaXplIGRpc3RyaWJ1dGlvbiBmb3IgdGhlIFNPUlQgTE5QIHdpdGggZGlmZmVyZW50IGNhcmdvcy5cIlxyXG4vPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICA8cD5UaGUgc2l6ZSBkaXN0cmlidXRpb24gZm9yIGFsbCB0aHJlZSBzYW1wbGVzIHNob3dzIGEgcHJlZG9taW5hbnRseSBtb25vbW9kYWwsIHlldCBicm9hZCwgZGlzdHJpYnV0aW9uIHdpdGggZGlhbWV0ZXJzIHJhbmdpbmcgYmV0d2VlbiA1MCBubSBhbmQgNzAwIG5tLCB3aXRoIHRoZSBwZWFrIG9mIHRoZSBkaXN0cmlidXRpb24gbHlpbmcgYmV0d2VlbiAxNTAgbm0gYW5kIDIwMCBubSAoRmlndXJlIDI2KS4gU09SVCBMTlBzIHdpdGhvdXQgRE5BIGV4aGliaXRlZCBsYXJnZXIgcmFkaWksIHdpdGggYSBwZWFrIGFyb3VuZCAzMDAgbm0uIFRoZSBTT1JUIExOUCBjb250YWluaW5nIE1pbmljaXJjbGUgRE5BIHN1Z2dlc3RzIHRoZSBwcmVzZW5jZSBvZiBsYXJnZXIgYWdncmVnYXRlcyB3aXRoIGRpYW1ldGVycyBleGNlZWRpbmcgMSBcdTAwQjVtLiBUaGUgbGlrZWx5IHJlYXNvbiBmb3IgdGhpcyB2YXJpYWJsZSBwYXJ0aWNsZSBzaXplIGRpc3RyaWJ1dGlvbiwgZGVzcGl0ZSBsb2FkaW5nIHdpdGggZGlmZmVyZW50IHR5cGVzIG9mIEROQSwgY291bGQgYmUgYXR0cmlidXRlZCB0byB0aGUgbWFudWZhY3R1cmluZyBtZXRob2QuIFNpbmNlIHRoZSBMTlBzIHdlcmUgbm90IHByb2R1Y2VkIHVzaW5nIGFuIGV4dHJ1ZGVyIGJ1dCByYXRoZXIgdmlhIGRpYWx5c2lzLCB0aGlzIGlzIGhpZ2hseSBwbGF1c2libGUuPC9wPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDxINSB0ZXh0PVwiQ3J5by1FTVwiLz5cclxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3cgYWxpZ24taXRlbXMtY2VudGVyXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgICAgICA8cD5DcnlvLUVNIGFuYWx5c2lzIHdhcyBhbHNvIHBlcmZvcm1lZCBvZiBTT1JUIExOUHMgYnkgdXMgd2l0aCB0aGUgc2FtZSBKRU9MIEpFTS0yMjAwRlMgbWljcm9zY29wZSBhdCAyMDBrViwgYWxsb3dpbmcgdmlzdWFsaXphdGlvbiBvZiBMTlBzIGluIHRoZWlyIG5hdGl2ZSBoeWRyYXRlZCBzdGF0ZS4gVGhlIGltYWdlcyBzaG93IHNwaGVyaWNhbCBMTlAgc3RydWN0dXJlcyBhcm91bmQgMTAwIG5tLCB3aXRoIHNvbWUgbGFyZ2VyIGFnZ3JlZ2F0ZXMgYWxzbyBwcmVzZW50LiBUaGVzZSBhZ2dyZWdhdGVzIGxpa2VseSByZXN1bHQgZnJvbSBpbnRlcmFjdGlvbnMgYmV0d2VlbiBwYXJ0aWNsZXMgZHVlIHRvIHRoZSBub24tZXh0cnVzaW9uLWJhc2VkIHByZXBhcmF0aW9uIG1ldGhvZCwgd2hpY2ggbWF5IGV4cGxhaW4gdGhlIHZhcmlhYmlsaXR5IGluIHBhcnRpY2xlIHNpemUuIEFkZGl0aW9uYWxseSwgcGFydGljbGVzIHBvdGVudGlhbGx5IHJlcHJlc2VudGluZyBkaWZmZXJlbnQgTE5QIHBvcHVsYXRpb25zIG9yIG92ZXJsYXBwZWQgc3RydWN0dXJlcyB3aXRoIGxvdyBjb250cmFzdCB3ZXJlIG9ic2VydmVkIChGaWd1cmUgMjcpLiBUaGUgbG93IHNhbXBsZSBjb25jZW50cmF0aW9uIGxpa2VseSBjb250cmlidXRlZCB0byB0aGUgbGltaXRlZCBudW1iZXIgb2YgdmlzaWJsZSBwYXJ0aWNsZXMuPC9wPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgICAgPE9uZUZpZ3VyZVxyXG4gIHBpYzE9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9kZWxpdmVyeS9yZXN1bHRzL3NvcnRjcnlvZW0ucG5nXCJcclxuICBudW09ezI3fVxyXG4gIGRlc2NyaXB0aW9uPVwiQ3J5by1FTSBpbWFnZSBvZiBTT1JUIExOUHMuIFRoZSBkaWZmZXJlbnQgY29sb3JlZCBvdXRsaW5lcyBpbmRpY2F0ZSBkaWZmZXJlbnQgc2l6ZSBwb3B1bGF0aW9ucyBvZiBMTlBzLlwiXHJcbiAgYWx0MT1cIkNyeW8tRU0gaW1hZ2Ugb2YgU09SVCBMTlBzIHdpdGggZGlmZmVyZW50IHNpemUgcG9wdWxhdGlvbnMuXCJcclxuLz5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDxwPk92ZXJhbGwsIHdoaWxlIHRoZSBDcnlvLUVNIGRhdGEgY29uZmlybSB0aGUgcHJlc2VuY2UgYW5kIGdlbmVyYWwgbW9ycGhvbG9neSBvZiBMTlBzIHRoYXQgYWxzbyBmYWxsIHdpdGhpbiB0aGUgZGlhbWV0ZXIgcmFuZ2Ugc3BlY2lmaWVkIGJ5IFdhbmcgZXQgYWwuIGZvciBTT1JUIExOUHMgYXQgc21hbGxlciB0aGFuIDIwMCBubSBbMV0uIFRoZSB2YXJpYWJpbGl0eSBpbiBzaXplIGFuZCB0aGUgcHJlc2VuY2Ugb2YgYWdncmVnYXRlcyBoaWdobGlnaHQgcG90ZW50aWFsIGFyZWFzIGZvciBvcHRpbWl6YXRpb24sIHN1Y2ggYXMgcmVmaW5pbmcgc2FtcGxlIGNvbmNlbnRyYXRpb24gYW5kIHByZXBhcmF0aW9uIG1ldGhvZHMgdG8gYWNoaWV2ZSBtb3JlIGNvbnNpc3RlbnQgcGFydGljbGUgZm9ybWF0aW9uLjwvcD5cclxuICAgICAgICAgICAgICA8SDUgdGV4dD1cIkRMU1wiLz5cclxuICAgICAgICAgIDxwPldlIHVzZWQgRHluYW1pYyBMaWdodCBTY2F0dGVyaW5nIChETFMpIHRvIGFzc2VzcyB0aGUgc2l6ZSBkaXN0cmlidXRpb24gb2Ygb3VyIFNPUlQgTE5QcyBieSBtZWFzdXJpbmcgdGhlIGZsdWN0dWF0aW9ucyBpbiBzY2F0dGVyZWQgbGlnaHQgZHVlIHRvIHBhcnRpY2xlIG1vdGlvbi4gVGhlIGh5ZHJvZHluYW1pYyBkaWFtZXRlciB3YXMgY2FsY3VsYXRlZCB1c2luZyB0aGUgU3Rva2VzLUVpbnN0ZWluIGVxdWF0aW9uLCBjb25zaWRlcmluZyB0aGUgZGlmZnVzaW9uIGNvZWZmaWNpZW50LCB0ZW1wZXJhdHVyZSwgYW5kIHZpc2Nvc2l0eSBvZiB0aGUgbWVkaXVtLjwvcD5cclxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3cgYWxpZ24taXRlbXMtY2VudGVyXCI+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgICAgICAgIFxyXG48T25lRmlndXJlXHJcbiAgcGljMT1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2RlbGl2ZXJ5L3Jlc3VsdHMvc29ydC1kbHMud2VicFwiXHJcbiAgbnVtPXsyOH1cclxuICBiZz1cIndoaXRlXCJcclxuICBkZXNjcmlwdGlvbj1cIlJlc3VsdHMgZm9yIGh5ZHJvZHluYW1pYyByYWRpdXMgZGV0ZXJtaW5hdGlvbiBieSBETFMgTWVhc3VyZW1lbnRzIGZvciBvdXIgU09SVCBMTlAsIGluZGljYXRpbmcgYSByYWRpdXMgb2YgYXBwcm94aW1hdGVseSAxMDAgbm0uXCJcclxuICBhbHQxPVwiSHlkcm9keW5hbWljIHJhZGl1cyBvZiBTT1JUIExOUCBtZWFzdXJlZCBieSBETFMuXCJcclxuLz5cclxuXHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgICAgICAgIDxwPlRoZSByZXN1bHRzIHNob3dlZCBhIGh5ZHJvZHluYW1pYyBkaWFtZXRlciBvZiBTT1JUIExOUHMgeWllbGRpbmcgYW4gYXZlcmFnZSByYWRpdXMgb2YgYXBwcm94aW1hdGVseSAxMDAgbm0gKEZpZ3VyZSAyOCkuIFRoZXNlIGZpbmRpbmdzIGFyZSBjb25zaXN0ZW50IHdpdGggb3VyIHByZXZpb3VzIGFwcGxpZWQgc2l6ZSBkZXRlcm1pbmF0aW9uIG1ldGhvZHMsIHN1Y2ggYXMgWmV0YSBwb3RlbnRpYWwgYW5kIENyeW8tRU0sIHdoaWNoIGFsc28gaW5kaWNhdGVkIHNpbWlsYXIgcGFydGljbGUgZGltZW5zaW9ucyBpbiBhcHByb3ByaWF0ZSByYW5nZSBmb3Igb3VyIHJlc2VhcmNoIGFuZCBtZWRpY2FsIGFwcGxpY2F0aW9ucy48L3A+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPEg1IHRleHQ9XCJNVFQgQXNzYXlcIi8+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICAgICAgPE9uZUZpZ3VyZVxyXG4gIHBpYzE9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9mYW56b3Ivc29ydC1tdHQud2VicFwiXHJcbiAgbnVtPXsyOX1cclxuICBiZz1cIndoaXRlXCJcclxuICBkZXNjcmlwdGlvbj1cIk1UVCBBc3NheSBvZiBMTlBzIGZyb20gYWxsIGl0ZXJhdGlvbnMgcGVyZm9ybWVkIG9uIEhFSzI5MyBpbmNsdWRpbmcgVHJpdG9uIGFzIG5lZ2F0aXZlIGNvbnRyb2wgYW5kIHVudHJlYXRlZCBjZWxscyBhcyBwb3NpdGl2ZSBjb250cm9sLiBNZWFuICsvLSBTRU0gZm9yIG49Ni4gRm9yIHN0YXRpc3RpY3Mgb25lLXdheSBBTk9WQSB3YXMgcGVyZm9ybWVkLlwiXHJcbiAgYWx0MT1cIk1UVCBBc3NheSByZXN1bHRzIG9mIExOUHMgb24gSEVLMjkzIGNlbGxzLlwiXHJcbi8+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgICAgICAgIHsvKiA8cD5JbiBvcmRlciB0byBldmFsdWF0ZSB0aGUgPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VBbmRTY3JvbGwgKCdCaW9zYWZldHkyJywgJy9zYWZldHknKX0+Ymlvc2FmZXR5PC9hPiBvZiBvdXIgbHVuZy1zcGVjaWZpYyBMTlBzLCBwYXJ0aWN1bGFybHkgY29uY2VybmluZyB0aGUgY2hvaWNlIG9mIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlc0FuZE9wZW5UYWIoe2NvbGxhcHNlSWQ6ICdDb2wxJywgcGF0aDogJy9lbmdpbmVlcmluZycsIHRhYklkOiAnZGVsaXZlcnknIH0pfT5QRUc8L2E+IC0ga25vd24gdG8gY2F1c2UgY3l0b3RveGljaXR5IGlzc3VlcyAtIHdlIHBlcmZvcm1lZCBNVFQgYXNzYXlzIHVzaW5nIEhFSzI5MyBjZWxscyB3aXRoIHZhcmlvdXMgTE5QIGZvcm11bGF0aW9ucy4gVGhlIHJlc3VsdHMgZGVtb25zdHJhdGVkIHRoYXQgdGhlIENheW1hbiBMTlAgYWNoaWV2ZWQgNzQuOTAlIHZpYWJpbGl0eSBhbmQgU09SVCBMTlAgc2hvd2VkIDc1LjAxJSB2aWFiaWxpdHksIGV4aGliaXRpbmcgbG93ZXIgY3l0b3RveGljaXR5IGR1ZSB0byB0aGUgaW5jbHVzaW9uIG9mIERNRy1QRUcsIGEgbGVzcyBjeXRvdG94aWMgUEVHIHZhcmlhbnQgY29tcGFyZWQgdG8gbVBFRy0yMDAwLURTUEUsIHdoaWNoIHJlc3VsdGVkIGluIDY2LjY5JSB2aWFiaWxpdHkgaW4gdGhlIENvcmRlbiBMTlAgKEZpZ3VyZSB0KS4gVGhlc2UgZmluZGluZ3MgcHJvdmUgd2UgbWFkZSB0aGUgYmVzdCBkZWNpc2lvbiBieSBjaG9vc2luZyB0aGUgU09SVCBMTlAgYXMgdGhlIGxlYXN0IGN5dG90b3hpYyBMTlBzLjwvcD4gKi99XHJcbiAgICAgICAgICAgICAgICA8cD5JbiBvcmRlciB0byBldmFsdWF0ZSB0aGUgPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VBbmRTY3JvbGwgKCdCaW9zYWZldHkyJywgJy9zYWZldHknKX0+Ymlvc2FmZXR5PC9hPiBvZiBvdXIgbHVuZy1zcGVjaWZpYyBMTlBzLCBwYXJ0aWN1bGFybHkgY29uY2VybmluZyB0aGUgY2hvaWNlIG9mIFBFRyAtIGtub3duIHRvIGNhdXNlIGN5dG90b3hpY2l0eSBpc3N1ZXMgLSB3ZSBwZXJmb3JtZWQgTVRUIGFzc2F5cyB1c2luZyBIRUsyOTMgY2VsbHMgd2l0aCB2YXJpb3VzIExOUCBmb3JtdWxhdGlvbnMuIFRoZSByZXN1bHRzIGRlbW9uc3RyYXRlZCB0aGF0IHRoZSBDYXltYW4gTE5QIGFjaGlldmVkIDc0LjkwJSB2aWFiaWxpdHkgYW5kIFNPUlQgTE5QIHNob3dlZCA3NS4wMSUgdmlhYmlsaXR5LCBleGhpYml0aW5nIGxvd2VyIGN5dG90b3hpY2l0eSBkdWUgdG8gdGhlIGluY2x1c2lvbiBvZiBETUctUEVHLCBhIGxlc3MgY3l0b3RveGljIFBFRyB2YXJpYW50IGNvbXBhcmVkIHRvIG1QRUctMjAwMC1EU1BFLCB3aGljaCByZXN1bHRlZCBpbiA2Ni42OSUgdmlhYmlsaXR5IGluIHRoZSBDb3JkZW4gTE5QIChGaWd1cmUgMjkpLiBUaGVzZSBmaW5kaW5ncyBwcm92ZSB3ZSBtYWRlIHRoZSBiZXN0IGRlY2lzaW9uIGJ5IGNob29zaW5nIHRoZSBTT1JUIExOUCBhcyB0aGUgbGVhc3QgY3l0b3RveGljIExOUHMuPC9wPlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPEg0IHRleHQ9XCJBaXJCdWRkeVwiLz5cclxuICAgICAgICAgICAgPHA+Tm93IHdlIHByZXNlbnQgb3VyIHJlc3VsdHMgaW5jbHVkaW5nIHRoZSBjaGl0b3Nhbi1jb21wbGV4YXRpb24gb2YgdGhlIHRoZXJhcGV1dGljIFJOQSBjYXJnbywgd2hpY2ggd2l0aGRyYXdzIEFpckJ1ZGR5IGZyb20gYmFzaWMgbHVuZy1zcGVjaWZpYyBTT1JUIExOUHMuPC9wPlxyXG4gICAgICAgICAgICA8cD5XZSBzdWNjZXNzZnVsbHkgdHJhbnNmZWN0ZWQgYSB3ZWxsLWVzdGFibGlzaGVkIGx1bmcgZXBpdGhlbGlhbCBjZWxsIGxpbmUgQ0ZCRTQxby0gd2l0aCBvdXIgY2hpdG9zYW4tUk5BIGNvbXBsZXhlcyB1c2luZyBvdXIgc3ludGhlc2l6ZWQgcGNETkEgMy4xIGVZRlAgbVJOQSwgd2hpY2ggd2VyZSBzdWJzZXF1ZW50bHkgaW5jdWJhdGVkIHdpdGggU09SVCBMTlBzIGZvciBwYWNrYWdpbmcuIFRoZSBnb2FsIHdhcyB0byBlbmNhcHN1bGF0ZSB0aGUgY2hpdG9zYW4tUk5BIGNvbXBsZXhlcyB3aXRoaW4gdGhlIExOUHMgdG8gZW5oYW5jZSBtUk5BIGRlbGl2ZXJ5IHRvIGNlbGxzLiBBZnRlciBmb3JtdWxhdGlvbiwgdGhlIExOUCBjaGl0b3Nhbi1STkEgY29tcGxleGVzIHdlcmUgdHJhbnNmZWN0ZWQgaW50byBDRkJFNDFvLSBjZWxscyB0byBhc3Nlc3MgdGhlIGVmZmljaWVuY3kgb2YgbVJOQSBkZWxpdmVyeSBhbmQgZXhwcmVzc2lvbiBpbiBhIENGIHBhdGllbnQgYnJvbmNoaWFsIGNlbGwgbGluZSBiZWluZyBjbG9zZXIgdG8gdGhlIGNsaW5pY2FsbHkgcmVsZXZhbnQgbW9kZWwuPC9wPlxyXG4gICAgICAgICAgPHA+V2UgdGVzdGVkIHR3byBkaWZmZXJlbnQgY2hpdG9zYW4gYW5kIG1STkEgY29uY2VudHJhdGlvbnMgKGFsd2F5cyB1c2VkIGJvdGggaW4gdGhlIHNhbWUgY29uY2VudHJhdGlvbnMpLCA1MCBuZy9cdTAwQjVsIGFuZCA1MDAgbmcvXHUwMEI1bCwgaW4gY29tYmluYXRpb24gd2l0aCBvdXIgTE5QIHRvIGFzc2VzcyB0aGVpciBpbXBhY3Qgb24gdHJhbnNmZWN0aW9uIGVmZmljaWVuY3kuIEludGVyZXN0aW5nbHksIGJvdGggY29uY2VudHJhdGlvbnMgcmVzdWx0ZWQgaW4gc2ltaWxhcmx5IGhpZ2ggbGV2ZWxzIG9mIHRyYW5zZmVjdGlvbiwgYXMgZXZpZGVuY2VkIGJ5IHRoZSBmbHVvcmVzY2VuY2UgbWljcm9zY29weSBpbWFnZXMsIGZ1cnRoZXIgdmFsaWRhdGlvbiBpcyBuZWNlc3NhcnkgdG8gY29uZmlybSB0aGVzZSByZXN1bHRzLjwvcD5cclxuICAgICAgICAgIDxwPkZsdW9yZXNjZW5jZSBtaWNyb3Njb3B5IHdhcyBwZXJmb3JtZWQgMjQgaG91cnMgcG9zdC10cmFuc2ZlY3Rpb24gdG8gZXZhbHVhdGUgdGhlIGV4cHJlc3Npb24gb2YgdGhlIFlGUCByZXBvcnRlciBnZW5lIGVuY29kZWQgYnkgdGhlIHBjRE5BIDMuMSBlWUZQIG1STkEuIFRoaXMgcmVwb3J0ZXIgZ2VuZSBzZXJ2ZXMgYXMgYW4gaW5kaWNhdG9yIG9mIHN1Y2Nlc3NmdWwgdHJhbnNmZWN0aW9uIGFuZCB0cmFuc2xhdGlvbiBvZiB0aGUgbVJOQSBpbnRvIHByb3RlaW4uIFRoZSByZXN1bHRzIG9mIHRoZSBmbHVvcmVzY2VuY2UgbWljcm9zY29weSB3ZXJlIGhpZ2hseSBwb3NpdGl2ZSBhbmQgYWxpZ25lZCB3aXRoIG91ciBleHBlY3RhdGlvbnMsIGluZGljYXRpbmcgZWZmaWNpZW50IGRlbGl2ZXJ5LCB1cHRha2UsIGFuZCBleHByZXNzaW9uIG9mIHRoZSBtUk5BIGluIHRoZSBDRkJFNDFvLSBjZWxscy48L3A+XHJcbiAgICAgICAgICA8SDUgdGV4dD1cIlRyYW5zZmVjdGlvblwiLz5cclxuICAgICAgICAgIDxwPldlIHRlc3RlZCB0d28gZGlmZmVyZW50IGNoaXRvc2FuIGFuZCBtUk5BIGNvbmNlbnRyYXRpb25zIChhbHdheXMgdXNlZCBib3RoIGluIHRoZSBzYW1lIGNvbmNlbnRyYXRpb25zKSwgNTAgbmcvXHUwMEI1bCBhbmQgNTAwIG5nL1x1MDBCNWwsIGluIGNvbWJpbmF0aW9uIHdpdGggb3VyIExOUCB0byBhc3Nlc3MgdGhlaXIgaW1wYWN0IG9uIHRyYW5zZmVjdGlvbiBlZmZpY2llbmN5LiBJbnRlcmVzdGluZ2x5LCBib3RoIGNvbmNlbnRyYXRpb25zIHJlc3VsdGVkIGluIHNpbWlsYXJseSBoaWdoIGxldmVscyBvZiB0cmFuc2ZlY3Rpb24sIGFzIGV2aWRlbmNlZCBieSB0aGUgZmx1b3Jlc2NlbmNlIG1pY3Jvc2NvcHkgaW1hZ2VzLCBmdXJ0aGVyIHZhbGlkYXRpb24gaXMgbmVjZXNzYXJ5IHRvIGNvbmZpcm0gdGhlc2UgcmVzdWx0cy48L3A+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvdyBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgIDxPbmVGaWd1cmVcclxuICBwaWMxPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvZGVsaXZlcnkvcmVzdWx0cy9wcmVjeXNlL2xucC1jaGl0by1ybmE1MDAtdDI0LndlYnBcIlxyXG4gIG51bT17MzB9XHJcbiAgZGVzY3JpcHRpb249XCJPdmVybGF5IG9mIHBoYXNlIGNvbnRyYXN0IGFuZCBmbHVvcmVzY2VuY2UgbWljcm9zY29waWMgaW1hZ2VzIG9mIHdpdGggU09SVCArIGNoaXRvc2FuIDUwMCB0cmFuc2ZlY3RlZCBDRkJFNDFvLSBjZWxscyBhdCAyMHggbWFnbmlmaWNhdGlvbiAyNGggcG9zdC10cmFuc2ZlY3Rpb24gcmVjb3JkZWQgd2l0aCBMZWljYSBETUk2MDAwIEIuXCJcclxuICBhbHQxPVwiSW1hZ2VzIG9mIFNPUlQgKyBjaGl0b3NhbiA1MDAgdHJhbnNmZWN0ZWQgQ0ZCRTQxby0gY2VsbHMuXCJcclxuLz5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgIDxwPlRoZSBzYW1wbGUgY29udGFpbmluZyA1MDAgbmcvXHUwMEI1bCBvZiBjaGl0b3NhbiBhbmQgcGNETkEgMy4xIGVZRlAgbVJOQSwgZW5jYXBzdWxhdGVkIHdpdGhpbiBTT1JUIExOUHMsIGV4aGliaXRlZCBmbHVvcmVzY2VuY2UgMjQgaG91cnMgcG9zdC10cmFuc2ZlY3Rpb24gKEZpZ3VyZSAzMCkuIFRoaXMgcmVzdWx0IGluZGljYXRlcyB0aGF0IHRoZSBSTkEgd2FzIHN1Y2Nlc3NmdWxseSBkZWxpdmVyZWQgaW50byB0aGUgQ0ZCRTQxby0gY2VsbHMsIHdoZXJlIGl0IHdhcyB0cmFuc2NyaWJlZCBhbmQgdHJhbnNsYXRlZCBpbnRvIHRoZSBZRlAgcHJvdGVpbi4gVGhlIHByZXNlbmNlIG9mIFlGUCBmbHVvcmVzY2VuY2UgY29uZmlybXMgbm90IG9ubHkgc3VjY2Vzc2Z1bCB0cmFuc2ZlY3Rpb24gYnV0IGFsc28gcm9idXN0IGV4cHJlc3Npb24gb2YgdGhlIHJlcG9ydGVyIGdlbmUuPC9wPlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3cgYWxpZ24taXRlbXMtY2VudGVyXCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICAgICAgPHA+SW4gdGhlIHNhbXBsZSBjb250YWluaW5nIDUwIG5nL1x1MDBCNWwgb2YgY2hpdG9zYW4gYW5kIHBjRE5BIDMuMSBlWUZQIG1STkEgd2FzIHVzZWQsIHdoaWNoIGlzIHRlbmZvbGQgbG93ZXIgdGhhbiB0aGUgY2hpdG9zYW4gYW5kIG1STkEgY29uY2VudHJhdGlvbiB1c2VkIGluIHRoZSBjaGl0b3NhbjUwMCBzYW1wbGUgKHNlZSBhYm92ZSkuIERlc3BpdGUgdGhlIGxvd2VyIG1STkEgY29uY2VudHJhdGlvbiwgZmx1b3Jlc2NlbmNlIHdhcyBzdGlsbCBvYnNlcnZlZCAoRmlndXJlIDMxKSBpbmRpY2F0aW5nIHRoYXQgdGhlIG1STkEgd2FzIGVmZmljaWVudGx5IGRlbGl2ZXJlZCBhbmQgZXhwcmVzc2VkIGluIHRoZSBDRkJFNDFvLSBjZWxscy4gVGhpcyByZXN1bHQgc3VnZ2VzdHMgdGhhdCBldmVuIGF0IGxvd2VyIG1STkEgZG9zZXMsIHRoZSBzeXN0ZW0gY2FuIGFjaGlldmUgc3VjY2Vzc2Z1bCB0cmFuc2ZlY3Rpb24gYW5kIGdlbmUgZXhwcmVzc2lvbi4gV2UgYXJlIHBsYW5uaW5nIHRvIHBlcmZvcm0gYSBtb3JlIGRldGFpbGVkIGNvbXBhcmlzb24gb2YgZmx1b3Jlc2NlbmNlIGludGVuc2l0eSBiZXR3ZWVuIHRoZSBjaGl0b3NhblJOQTUwMCBhbmQgY2hpdG9zYW5STkE1MCBzYW1wbGVzIGFuZCBldmVuIGxvd2VyIGNvbmNlbnRyYXRpb25zIHRvIGFzc2VzcyB0aGUgcmVsYXRpb25zaGlwIGJldHdlZW4gbVJOQSBkb3NlIGFuZCBleHByZXNzaW9uIGxldmVsLjwvcD5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgIDxPbmVGaWd1cmVcclxuICBwaWMxPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvZGVsaXZlcnkvcmVzdWx0cy9wcmVjeXNlL2xucGNoaXRvLXJuYTUwLXQyNC53ZWJwXCJcclxuICBudW09ezMxfVxyXG4gIGRlc2NyaXB0aW9uPVwiT3ZlcmxheSBvZiBwaGFzZSBjb250cmFzdCBhbmQgZmx1b3Jlc2NlbmNlIG1pY3Jvc2NvcGljIGltYWdlcyBvZiB3aXRoIFNPUlQgKyBjaGl0b3NhbiA1MCB0cmFuc2ZlY3RlZCBDRkJFNDFvLSBjZWxscyBhdCAyMHggbWFnbmlmaWNhdGlvbiAyNGggcG9zdC10cmFuc2ZlY3Rpb24gcmVjb3JkZWQgd2l0aCBMZWljYSBETUk2MDAwIEIuXCJcclxuICBhbHQxPVwiSW1hZ2VzIG9mIFNPUlQgKyBjaGl0b3NhbiA1MCB0cmFuc2ZlY3RlZCBDRkJFNDFvLSBjZWxscy5cIlxyXG4vPlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPHA+VGhlIHNhbXBsZXMgY29udGFpbmluZyBvbmx5IGNoaXRvc2FuIChGaWd1cmUgMzIpIGFuZCBvbmx5IFNPUlQgTE5QIChGaWd1cmUgMzMpIHdpdGhvdXQgYW55IG1STkEsIGRpZCBub3QgZXhoaWJpdCBhbnkgZGV0ZWN0YWJsZSBmbHVvcmVzY2VuY2UuIFRoaXMgcmVzdWx0IGlzIGNvbnNpc3RlbnQgd2l0aCBleHBlY3RhdGlvbnMsIGFzIGNoaXRvc2FuIGFsb25lIGFuZCBTT1JUIExOUCBhbG9uZSBhcmUgbm90IGZsdW9yZXNjZW50LiBUaGVzZSBzYW1wbGVzIHNlcnZlZCBhcyBpbXBvcnRhbnQgbmVnYXRpdmUgY29udHJvbHMgdG8gY29uZmlybSB0aGF0IHRoZSBjaGl0b3NhbiBpdHNlbGYgYW5kIHRoZSBTT1JUIExOUCBpdHNlbGYgZG9uJ3QgaW50ZXJmZXJlIHdpdGggdGhlIGZsdW9yZXNjZW5jZSBzaWduYWwuPC9wPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvdyBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgIDxPbmVGaWd1cmVcclxuICBwaWMxPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvZGVsaXZlcnkvcmVzdWx0cy9wcmVjeXNlL2NoaXRvLXQyNC0xLmpwZWdcIlxyXG4gIG51bT17MzJ9XHJcbiAgZGVzY3JpcHRpb249XCJPdmVybGF5IG9mIHBoYXNlIGNvbnRyYXN0IGFuZCBmbHVvcmVzY2VuY2UgbWljcm9zY29waWMgaW1hZ2VzIG9mIHdpdGggU09SVCB0cmFuc2ZlY3RlZCBDRkJFNDFvLSBjZWxscyBhdCAyMHggbWFnbmlmaWNhdGlvbiAyNGggcG9zdC10cmFuc2ZlY3Rpb24gcmVjb3JkZWQgd2l0aCBMZWljYSBETUk2MDAwIEIuXCJcclxuICBhbHQxPVwiSW1hZ2VzIG9mIFNPUlQgdHJhbnNmZWN0ZWQgQ0ZCRTQxby0gY2VsbHMuXCJcclxuLz5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgIDxPbmVGaWd1cmVcclxuICBwaWMxPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvZGVsaXZlcnkvcmVzdWx0cy9wcmVjeXNlL2xucC1sZWVyLXQyNC53ZWJwXCJcclxuICBudW09ezMzfVxyXG4gIGRlc2NyaXB0aW9uPVwiT3ZlcmxheSBvZiBwaGFzZSBjb250cmFzdCBhbmQgZmx1b3Jlc2NlbmNlIG1pY3Jvc2NvcGljIGltYWdlcyBvZiB3aXRoIGNoaXRvc2FuIHRyYW5zZmVjdGVkIENGQkU0MW8tIGNlbGxzIGF0IDIweCBtYWduaWZpY2F0aW9uIDI0aCBwb3N0LXRyYW5zZmVjdGlvbiByZWNvcmRlZCB3aXRoIExlaWNhIERNSTYwMDAgQi5cIlxyXG4gIGFsdDE9XCJJbWFnZXMgb2YgY2hpdG9zYW4gdHJhbnNmZWN0ZWQgQ0ZCRTQxby0gY2VsbHMuXCJcclxuLz5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+ICBcclxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3cgYWxpZ24taXRlbXMtY2VudGVyXCI+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgICAgICAgIFxyXG48T25lRmlndXJlXHJcbiAgcGljMT1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2RlbGl2ZXJ5L3Jlc3VsdHMvcHJlY3lzZS9udGMtdDI0LndlYnBcIlxyXG4gIG51bT17MzR9XHJcbiAgZGVzY3JpcHRpb249XCJPdmVybGF5IG9mIHBoYXNlIGNvbnRyYXN0IGFuZCBmbHVvcmVzY2VuY2UgbWljcm9zY29waWMgaW1hZ2VzIG9mIHVudHJhbnNmZWN0ZWQgQ0ZCRTQxby0gY2VsbHMgYXQgMjB4IG1hZ25pZmljYXRpb24gMjRoIHBvc3QtdHJhbnNmZWN0aW9uIHJlY29yZGVkIHdpdGggTGVpY2EgRE1JNjAwMCBCLlwiXHJcbiAgYWx0MT1cIkltYWdlcyBvZiB1bnRyYW5zZmVjdGVkIENGQkU0MW8tIGNlbGxzLlwiXHJcbi8+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgICAgICA8cD5UaGUgdW50cmVhdGVkIGNvbnRyb2wsIHdoaWNoIGRpZCBub3QgcmVjZWl2ZSBhbnkgY2hpdG9zYW4sIFJOQSwgb3IgTE5QcywgZGlkIG5vdCBzaG93IGFueSBmbHVvcmVzY2VuY2UgKEZpZ3VyZSAzNCkuIFRoaXMgbmVnYXRpdmUgY29udHJvbCBjb25maXJtcyB0aGF0IHRoZSBjZWxscyB0aGVtc2VsdmVzIGRvIG5vdCBleHByZXNzIFlGUCB1bmRlciBub3JtYWwgY29uZGl0aW9ucywgYW5kIHRoYXQgYW55IG9ic2VydmVkIGZsdW9yZXNjZW5jZSBpbiB0aGUgZXhwZXJpbWVudGFsIGdyb3VwcyBpcyBkaXJlY3RseSBhdHRyaWJ1dGFibGUgdG8gdGhlIHRyYW5zZmVjdGlvbiBhbmQgZXhwcmVzc2lvbiBvZiB0aGUgZGVsaXZlcmVkIFJOQS48L3A+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICA8cD5UaGUgcmVzdWx0cyBkZW1vbnN0cmF0ZSB0aGF0IGNoaXRvc2FuLVJOQSBjb21wbGV4ZXMsIHdoZW4gcGFja2FnZWQgd2l0aCBTT1JUIExOUHMsIGNhbiBlZmZpY2llbnRseSBkZWxpdmVyIG1STkEgaW50byBDRkJFNDFvLSBjZWxscyBhbmQgZmFjaWxpdGF0ZSB0aGUgZXhwcmVzc2lvbiBvZiBhIFlGUCByZXBvcnRlciBnZW5lLiBGdXJ0aGVybW9yZSwgdGhlIGFic2VuY2Ugb2YgZmx1b3Jlc2NlbmNlIGluIHRoZSBjb250cm9sIHNhbXBsZXMgdmFsaWRhdGVzIHRoZSBzcGVjaWZpY2l0eSBvZiB0aGUgc3lzdGVtLCBlbnN1cmluZyB0aGF0IHRoZSBmbHVvcmVzY2VuY2Ugc2lnbmFsIGlzIHNvbGVseSBkdWUgdG8gdGhlIGRlbGl2ZXJlZCBtUk5BIGFuZCBub3QgZnJvbSBvdGhlciBjb21wb25lbnRzIG9mIHRoZSBzeXN0ZW0uIEFkZGl0aW9uYWwgdGVzdGluZywgc3VjaCBhcyBmbG93IGN5dG9tZXRyeSBhbmFseXNpcywgaXMgcGxhbm5lZCB0byBwcm92aWRlIGEgbW9yZSBxdWFudGl0YXRpdmUgYXNzZXNzbWVudCBvZiB0cmFuc2ZlY3Rpb24gZWZmaWNpZW5jeS4gVGhpcyB3b3VsZCBhbGxvdyB1cyB0byBhY2N1cmF0ZWx5IGRldGVybWluZSB3aGV0aGVyIHRoZXJlIGFyZSBzdWJ0bGUgZGlmZmVyZW5jZXMgYmV0d2VlbiB0aGUgdHdvIGNvbmNlbnRyYXRpb25zIHRoYXQgd2VyZSBub3QgZGV0ZWN0YWJsZSBieSBtaWNyb3Njb3B5IGFsb25lLjwvcD5cclxuICAgICAgPHA+T3ZlcmFsbCwgdGhpcyBleHBlcmltZW50IGhpZ2hsaWdodHMgdGhlIHBvdGVudGlhbCBvZiBjaGl0b3Nhbi1STkEgY29tcGxleGVzIGluIGNvbWJpbmF0aW9uIHdpdGggU09SVCBMTlBzIGFzIGEgcHJvbWlzaW5nIHBsYXRmb3JtIGZvciBtUk5BIGRlbGl2ZXJ5IGFuZCBnZW5lIGV4cHJlc3Npb24gaW4gYWlyd2F5IGVwaXRoZWxpYWwgY2VsbHMuIEZ1cnRoZXIgaW52ZXN0aWdhdGlvbiBjb3VsZCBmb2N1cyBvbiBvcHRpbWl6aW5nIHRoZSBtUk5BIGRvc2UgdG8gbWF4aW1pemUgZXhwcmVzc2lvbiBsZXZlbHMgYW5kIHRyYW5zZmVjdGlvbiBlZmZpY2llbmN5LjwvcD5cclxuICAgICAgPC9TdWJlc2N0aW9uID5cclxuICAgICAgPFN1YmVzY3Rpb24gIHRpdGxlPVwiUHJpbWFyeSBDZWxsIEN1bHR1cmVcIiBpZD1cIkV4cGVyaW1lbnRhbCBEZXNpZ240XCI+XHJcbiAgICAgICAgICA8SDQgdGV4dD1cIkdvYWxzXCIvPlxyXG4gICAgICAgICAgPHA+VGhlIGNlbnRyYWwgYWltIG9mIHRoZSBwcm9qZWN0IHdhcyB0byBvYnRhaW4gZXBpdGhlbGlhbCBjZWxscyBmcm9tIDxzdHJvbmc+bmFzb3BoYXJ5bmdlYWwgc3dhYnM8L3N0cm9uZz4gYW5kIHN1Y2Nlc3NmdWxseSBjdWx0dXJlIHRoZW0uIFRoZSBhaW0gd2FzIHRvIGRldmVsb3AgYSBjZWxsIG1vZGVsIHRoYXQgaXMgYXMgY2xvc2UgYXMgcG9zc2libGUgdG8gdGhlIHBoeXNpb2xvZ2ljYWwgY29uZGl0aW9ucyBvZiB0aGUgaHVtYW4gYWlyd2F5IGVwaXRoZWxpdW0gaW4gdGhlIGxhYm9yYXRvcnkuIFR3byBkaWZmZXJlbnQgY3VsdGl2YXRpb24gbWV0aG9kcyB3ZXJlIHVzZWQgaW4gdGhlIHByb2plY3Q6IDxzdHJvbmc+QWlyLUxpcXVpZCBJbnRlcmZhY2UgKEFMSSkgY3VsdHVyZTwvc3Ryb25nPiBhcyBhIDJEIG1vZGVsIGFuZCA8c3Ryb25nPkFwaWNhbC1PdXQgQWlyd2F5IE9yZ2Fub2lkIChBT0FPKSBjdWx0dXJlPC9zdHJvbmc+IGFzIGEgM0QgbW9kZWwuIDwvcD4gXHJcbiAgICAgICAgICA8cD5UaGUgQUxJIGN1bHR1cmUgYWxsb3dzIHRoZSBzaW11bGF0aW9uIG9mIHRoZSBhaXItc2lkZSBkaWZmZXJlbnRpYXRpb24gb2YgdGhlIGVwaXRoZWxpdW0sIHNvIHRoYXQgY2VsbCBpbnRlcmFjdGlvbnMgY2FuIGJlIHNpbXVsYXRlZCBpbiBhbiBlbnZpcm9ubWVudCB0aGF0IG1pbWljcyB0aGUgbmF0dXJhbCBiYXJyaWVyIGZ1bmN0aW9uIG9mIHRoZSBhaXJ3YXlzLiBJbiBjb250cmFzdCwgdGhlIEFPQU8gY3VsdHVyZXMgcmVwcmVzZW50IGEgbW9yZSBjb21wbGV4LCB0aHJlZS1kaW1lbnNpb25hbCBtb2RlbCB0aGF0IG1vcmUgY2xvc2VseSBtaW1pY3MgdGhlIGNlbGx1bGFyIG9yZ2FuaXNhdGlvbiBhbmQgZnVuY3Rpb24gb2YgdGhlIGFpcndheSBlcGl0aGVsaXVtLiA8L3A+XHJcbiAgICAgICAgICA8cD5UaGUgY2VsbCBtb2RlbHMgZ2VuZXJhdGVkIHNob3VsZCBwcm92aWRlIGEgcmVsaWFibGUgYmFzaXMgZm9yIHJlcHJvZHVjaW5nIHRoZSBpbiB2aXZvIGNvbmRpdGlvbnMgb2YgdGhlIGh1bWFuIG5hc2FsIGFuZCBhaXJ3YXkgZXBpdGhlbGl1bSBhcyBjbG9zZWx5IGFzIHBvc3NpYmxlIGluIHZpdHJvLiA8L3A+XHJcbiAgICAgICAgICA8SDQgdGV4dD1cIldvcmtmbG93XCIvPlxyXG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3cgYWxpZ24taXRlbXMtY2VudGVyXCI+XHJcbiAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlRoZSB3b3JrZmxvdyBvZiB0aGlzIGV4cGVyaW1lbnQgc3RhcnRlZCB3aXRoIHRoZSBjb2xsZWN0aW9uIG9mIHByaW1hcnkgaHVtYW4gbmFzYWwgZXBpdGhlbGlhbCBjZWxscyAoaE5FQ3MpIGZyb20gbmFzb3BoYXJ5bmdlYWwgc3dhYnMgb2YgaHVtYW4gdm9sdW50ZWVycy4gVGhpcyBtZXRob2QgYWxsb3dlZCB0aGUgbm9uLWludmFzaXZlIGlzb2xhdGlvbiBvZiBjZWxscyB0aGF0IHJlcHJlc2VudCBhIHN1aXRhYmxlIG1vZGVsIGZvciB0aGUgcmVzcGlyYXRvcnkgZXBpdGhlbGl1bS4gQWZ0ZXIgY29sbGVjdGlvbiwgdGhlIGNlbGxzIHdlcmUgaXNvbGF0ZWQgYW5kIGN1bHR1cmVkIGluIGEgc3BlY2lhbCBtZWRpdW0gdG8gZW5zdXJlIHRoZWlyIHByb2xpZmVyYXRpb24uIFRoaXMgc3RlcCB3YXMgZXNzZW50aWFsIHRvIGdlbmVyYXRlIGEgc3VmZmljaWVudCBudW1iZXIgb2YgY2VsbHMgZm9yIHRoZSBzdWJzZXF1ZW50IGV4cGVyaW1lbnRzLiA8L3A+IFxyXG4gICAgICAgICAgPHA+VGhlIG5leHQgc3RlcCB3YXMgdG8gY3VsdHVyZSB0aGUgaXNvbGF0ZWQgY2VsbHMgaW4gdHdvIGRpZmZlcmVudCBzeXN0ZW1zOiB0aGUgQWlyLUxpcXVpZCBJbnRlcmZhY2UgKEFMSSkgY3VsdHVyZSBhcyBhIDJEIG1vZGVsIGFuZCB0aGUgQXBpY2FsLU91dCBBaXJ3YXkgT3JnYW5vaWQgKEFPQU8pIGN1bHR1cmUgYXMgYSAzRCBtb2RlbC4gSW4gdGhlIEFMSSBjdWx0dXJlLCB0aGUgY2VsbHMgd2VyZSBncm93biBvbiBhIHBvcm91cyBtZW1icmFuZSB3aXRoIHRoZSBiYXNhbCBzaWRlIG9mIHRoZSBjZWxscyBpbiBjb250YWN0IHdpdGggYSBjdWx0dXJlIG1lZGl1bSBhbmQgdGhlIGFwaWNhbCBzaWRlIGV4cG9zZWQgdG8gYWlyLiBUaGlzIG1ldGhvZCBhbGxvd2VkIHRoZSBjZWxscyB0byBkaWZmZXJlbnRpYXRlIGludG8gYSBtdWx0aWxheWVyZWQgZXBpdGhlbGl1bSB0aGF0IHJlcHJvZHVjZWQgZGlmZmVyZW50IGNlbGwgdHlwZXMsIHN1Y2ggYXMgY2lsaWF0ZWQgY2VsbHMsIGdvYmxldCBjZWxscyBhbmQgYmFzYWwgY2VsbHMsIHR5cGljYWwgb2YgdGhlIHJlc3BpcmF0b3J5IGVwaXRoZWxpdW0uIDwvcD5cclxuICAgICAgICAgIDxwPkluIHBhcmFsbGVsLCBhIDNEIG1vZGVsIHdhcyBlc3RhYmxpc2hlZCBpbiBBT0FPIGN1bHR1cmUgaW4gd2hpY2ggdGhlIGNlbGxzIGZvcm0gc3BoZXJpY2FsIG9yZ2Fub2lkcyB3aXRoIHRoZSBhcGljYWwgc2lkZSBmYWNpbmcgb3V0d2FyZHMuIFRoaXMgM0Qgc3RydWN0dXJlIG1vcmUgY2xvc2VseSBtaW1pY2tlZCB0aGUgcGh5c2lvbG9naWNhbCBjb25kaXRpb25zIG9mIHRoZSBodW1hbiBhaXJ3YXkgZXBpdGhlbGl1bSBhbmQgb2ZmZXJlZCBleHRlbmRlZCBwb3NzaWJpbGl0aWVzIGZvciBzdHVkeWluZyBjZWxsLWNlbGwgaW50ZXJhY3Rpb25zIGluIHNwYWNlLiA8L3A+XHJcbiAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgPE9uZUZpZ3VyZVxyXG4gICAgICAgICAgICBwaWMxPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL3Jlc3VsdHMvaW1nLTIyMTcud2VicFwiXHJcbiAgICAgICAgICAgIG51bT17MzV9XHJcbiAgICAgICAgICAgIGRlc2NyaXB0aW9uPVwiU2NoZW1hdGljIG92ZXJ2aWV3IG9mIHRoZSBpc29sYXRpb24gYW5kIGN1bHR1cmUgb2YgcHJpbWFyeSBodW1hbiBuYXNhbCBlcGl0aGVsaWFsIGNlbGxzIChoTkVDcykuIEZpcnN0LCBuYXNvcGhhcnluZ2VhbCBzd2FicyBhcmUgdGFrZW4gdG8gb2J0YWluIHRoZSBjZWxscy4gVGhlIGNlbGxzIGFyZSB0aGVuIGN1bHR1cmVkIGluIHR3byBkaWZmZXJlbnQgY3VsdHVyZSBzeXN0ZW1zOiBBcGljYWwtT3V0LUFpcndheS1Pcmdhbm9pZHMgKEFPQU8pIGFzIGEgM0QgY3VsdHVyZSAobGVmdCkgYW5kIEFpci1MaXF1aWQtSW50ZXJmYWNlIChBTEkpIGFzIGEgMkQgY3VsdHVyZSAocmlnaHQpLiBJbiB0aGUgM0QgY3VsdHVyZSwgdGhlIGNlbGxzIGZvcm0gYSBzcGhlcmljYWwgb3JnYW5vaWQgd2l0aCBhbiBvdXR3YXJkLWZhY2luZyBhcGljYWwgc3VyZmFjZSwgd2hlcmVhcyBpbiB0aGUgMkQgY3VsdHVyZSwgdGhlIGNlbGxzIGZvcm0gYSBkaWZmZXJlbnRpYWxseSBzdHJ1Y3R1cmVkIGVwaXRoZWxpYWwgYmFycmllciB0aGF0IG1pbWljcyBkaWZmZXJlbnQgY2VsbCB0eXBlcyBzdWNoIGFzIGNpbGlhdGVkIGNlbGxzLCBnb2JsZXQgY2VsbHMgYW5kIGJhc2FsIGNlbGxzLlwiXHJcbiAgICAgICAgICAgIGFsdDE9XCJPdmVydmlld1wiXHJcbiAgICAgICAgICAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPHA+Q2hhcmFjdGVyaXNhdGlvbiBvZiB0aGUgY2VsbHMgaW4gYm90aCBjdWx0dXJlIHN5c3RlbXMgd2FzIHBlcmZvcm1lZCBieSBhIGNvbWJpbmF0aW9uIG9mIG1pY3Jvc2NvcGljIGV4YW1pbmF0aW9uIGFuZCBoaXN0b2xvZ2ljYWwgc3RhaW5pbmcuIEluIHBhcnRpY3VsYXIsIGhhZW1hdG94eWxpbi1lb3NpbiAoSEUpIGFuZCBwZXJpb2RpYyBhY2lkLVNjaGlmZiAoUEFTKSBzdGFpbmluZyB3YXMgcGVyZm9ybWVkIGluIHRoZSBBTEkgY3VsdHVyZSB0byBhbmFseXNlIGNlbGwgZGlmZmVyZW50aWF0aW9uIGFuZCB0aGUgZm9ybWF0aW9uIG9mIG11Y3VzLWZvcm1pbmcgZ29ibGV0IGNlbGxzLiBIRSBzdGFpbmluZyB3YXMgdXNlZCBmb3IgZ2VuZXJhbCB2aXN1YWxpc2F0aW9uIG9mIGNlbGwgbW9ycGhvbG9neSBhbmQgY2VsbCBzdHJhdGlmaWNhdGlvbiwgd2hpbGUgUEFTIHN0YWluaW5nIHdhcyB1c2VkIHNwZWNpZmljYWxseSB0byBpZGVudGlmeSB0aGUgbXVjaW5zIGluIHRoZSBnb2JsZXQgY2VsbHMuIFRoZXNlIGhpc3RvbG9naWNhbCB0ZWNobmlxdWVzIGFsbG93ZWQgYSBkZXRhaWxlZCBhc3Nlc3NtZW50IG9mIGVwaXRoZWxpYWwgZGlmZmVyZW50aWF0aW9uLCBpbiBwYXJ0aWN1bGFyIHRoZSBtYXR1cmF0aW9uIG9mIGNpbGlhdGVkIGFuZCBtdWN1cy1wcm9kdWNpbmcgY2VsbHMuIDwvcD5cclxuICAgICAgICAgIDxwPk9uY2UgdGhlIGNlbGwgY3VsdHVyZXMgaGFkIGJlZW4gc3VjY2Vzc2Z1bGx5IGVzdGFibGlzaGVkLCBhIGtleSBvYmplY3RpdmUgb2YgdGhlIHByb2plY3Qgd2FzIHB1cnN1ZWQ6IFRvIHRlc3QgZ2VuZSBvdXIgdGhlcmFweSBhcHByb2FjaCBpbiB0aGVzZSBjZWxsIG1vZGVscy4gVGhlIGNlbGxzIHdvdWxkIGJlIHVzZWQgdG8gYXNzZXNzIHRoZSBlZmZpY2FjeSBhbmQgc2FmZXR5IG9mIG5ldyBnZW5lIHRoZXJhcGllcyBiZWZvcmUgdGhleSBjb3VsZCBwb3RlbnRpYWxseSBiZSB1c2VkIGluIGNsaW5pY2FsIGFwcGxpY2F0aW9ucy4gPC9wPlxyXG4gICAgICAgICAgPEg0IHRleHQ9XCJDb25jbHVzaW9uXCIvPlxyXG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3cgYWxpZ24taXRlbXMtY2VudGVyXCI+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgPE9uZUZpZ3VyZVxyXG4gICAgICAgICAgICBwaWMxPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL3Jlc3VsdHMvYS53ZWJwXCJcclxuICAgICAgICAgICAgbnVtPXszNn1cclxuICAgICAgICAgICAgZGVzY3JpcHRpb249XCJIaXN0b2NoZW1pY2FsIHN0YWluaW5nIG9mIGFpciBsaXF1aWQgaW50ZXJmYWNlIGN1bHR1cmUuIEEpIEhFIHN0YWluaW5nIHdpdGggZ29ibGV0IGNlbGwgdmlzaWJsZS4gQikgSEUgc3RhaW5pbmcgd2l0aCBnb2JsZXQgY2VsbCB2aXNpYmxlLiBDKSBPdmVydmlldyBvZiBkaWZmZXJuZXRpYXRlZCBlcGl0aGVsaXVtIGFmdGVyIFBBUyBzdGFpbmluZy5cIlxyXG4gICAgICAgICAgICBhbHQxPVwiSEUgYW5kIFBBUyBzdGFpbmluZ1wiXHJcbiAgICAgICAgICAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+VGhlIDxzdHJvbmc+c3VjY2Vzc2Z1bCBjdWx0aXZhdGlvbiBvZiBwcmltYXJ5IGh1bWFuIG5hc2FsIGVwaXRoZWxpYWwgY2VsbHMgKGhORUNzKTwvc3Ryb25nPiB3YXMgY2xlYXJseSBkZW1vbnN0cmF0ZWQgaW4gYm90aCB0d28tZGltZW5zaW9uYWwgYW5kIHRocmVlLWRpbWVuc2lvbmFsIGN1bHR1cmVzLiBJbiB0aGUgQUxJIGN1bHR1cmUsIGEgd2VsbC1kaWZmZXJlbnRpYXRlZCBjaWxpYXRlZCBlcGl0aGVsaXVtIHdhcyBvYnNlcnZlZCBtaWNyb3Njb3BpY2FsbHksIGV4aGliaXRpbmcgdGhlIGNoYXJhY3RlcmlzdGljIGNpbGlhcnkgZHluYW1pY3MuIEhpc3RvbG9naWNhbCBzdGFpbmluZywgaW4gcGFydGljdWxhciBIRSBhbmQgUEFTIHN0YWluaW5nLCBwcm92aWRlZCBjb25maXJtYXRpb24gb2YgdGhlIGRpZmZlcmVudGlhdGlvbiBvZiB0aGUgY2VsbHMuIFRoZSBtdWx0aWxheWVyZWQgZXBpdGhlbGlhbCBzdHJ1Y3R1cmUgYW5kIHRoZSBwcmVzZW5jZSBvZiBtdWN1cy1wcm9kdWNpbmcgZ29ibGV0IGNlbGxzIHdlcmUgYm90aCBjbGVhcmx5IGRlbW9uc3RyYXRlZCAoRmlndXJlIDM2IEEsIEIpLiA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8cD5UaGUgQXBpY2FsLU91dCBBaXJ3YXkgT3JnYW5vaWQgY3VsdHVyZSBhbHNvIGRlbW9uc3RyYXRlZCBzdWNjZXNzZnVsIGRpZmZlcmVudGlhdGlvbiBvZiB0aGUgY2VsbHMsIHdoaWNoIGZvcm1lZCBhbiBlcGl0aGVsaWFsIGNlbGwgbmV0d29yay4gVGhlIGNlbGxzIGV4aGliaXRlZCBhIHNwaGVyaWNhbCBtb3JwaG9sb2d5IGFuZCB3ZXJlIG9ic2VydmVkIHRvIGZsb2F0IGluIHRoZSBjdWx0dXJlLCB0aGVyZWJ5IG1pbWlja2luZyB0aGUgbmF0dXJhbCBwaHlzaW9sb2dpY2FsIGNvbmRpdGlvbnMgb2YgdGhlIHJlc3BpcmF0b3J5IGVwaXRoZWxpdW0uIFRoZSB2YXJpb3VzIDJEIGFuZCAzRCBtb2RlbHMgdGh1cyBwcm92aWRlIGEgcHJvbWlzaW5nIGZvdW5kYXRpb24gZm9yIGZ1cnRoZXIgcmVzZWFyY2ggYW5kIHRoZSBhcHBsaWNhdGlvbiBvZiBnZW5lIHRoZXJhcHkgYXBwcm9hY2hlcy4gPC9wPiBcclxuICAgICAgPC9TdWJlc2N0aW9uID5cclxuICAgICAgXHJcbiAgICAgIDxTdWJlc2N0aW9uICB0aXRsZT1cIkRvd25zdHJlYW0gQXBwbGljYXRpb25cIiBpZD1cIkV4cGVyaW1lbnRhbCBEZXNpZ241XCI+XHJcbiAgICAgICAgICA8cD5UbyB2YWxpZGF0ZSBvdXIgZ2VuZSBlZGl0aW5nIGFwcHJvYWNoIGJ5IHByaW1lIGVkaXRpbmcgb2YgQ0ZUUiBGNTA4ZGVsIGRlbGl2ZXJlZCB0byBsdW5nIGNlbGxzIHZpYSBTT1JUIExOUHMsIHdlIHBsYW5uZWQgdG8gdXNlIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlQW5kU2Nyb2xsICgnUGF0Y2ggQ2xhbXAnLCAnL21hdGVyaWFscy1tZXRob2RzJyl9PlBhdGNoIENsYW1wPC9hPiBhcyBhIGRvd25zdHJlYW0gbWV0aG9kLiBPdXIgZ29hbCB3YXMgdG8gZGV0ZWN0IHRoZSByZXN0b3JlZCBjb25kdWN0YW5jZSBvZiB0aGUgcmVwYWlyZWQgQ0ZUUiBieSB0aGlzIGVsZWN0cm9waHlzaW9sb2dpY2FsIG1ldGhvZC4gVGhpcyB3YXMgbWFkZSBwb3NzaWJsZSB0aHJvdWdoIHRoZSBhc3Npc3RhbmNlIG9mIHRoZSA8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZXNBbmRPcGVuVGFiKCdwYXRjaGNsYW1wJywgJy9odW1hbi1wcmFjdGljZXMnKX0+Q2VsbHVsYXIgTmV1cm9waHlzaW9sb2d5IHJlc2VhcmNoIGdyb3VwPC9hPiBhdCBvdXIgdW5pdmVyc2l0eS48L3A+XHJcbiAgICAgICAgICA8SDQgdGV4dD1cIkluaXRpYWwgTWVhc3VyZW1lbnRzXCIvPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0ncm93IGFsaWduLWl0ZW1zLWNlbnRlcic+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J2NvbCc+XHJcbiAgICAgICAgICAgICAgPE9uZUZpZ3VyZVxyXG4gIHBpYzE9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvcmVzdWx0cy9wYXRjaGNsYW1wL3BjLndlYnBcIlxyXG4gIG51bT17Mzd9XHJcbiAgYmc9XCJ3aGl0ZVwiXHJcbiAgZGVzY3JpcHRpb249XCJDdXJyZW50IGRlbnNpdHkgb2YgSEVLMjkzLCBIRUsyOTNUIENGVFIgV1QgYW5kIEhFSzI5M1QgQ0ZUUiBGNTA4ZGVsIHNob3dpbmcgc2lnbmlmaWNhbnQgZGlmZmVyZW5jZXMgb2YgYm90aCBIRUsyOTNUIGNlbGwgbGluZXMgY29tcGFyZWQgdG8gSEVLMjkzIGJ1dCBubyBzaWduaWZpY2FudCBkaWZmZXJlbmNlcyBiZXR3ZWVuIHRoZW0uIEZvciBzdGF0aXN0aWNzIG9uZS13YXkgQU5PVkEgd2FzIHBlcmZvcm1lZC5cIlxyXG4gIGFsdDE9XCJDdXJyZW50IGRlbnNpdHkgZGlmZmVyZW5jZXMgYmV0d2VlbiBIRUsyOTMgYW5kIEhFSzI5M1QgQ0ZUUiBjZWxsIGxpbmVzXCJcclxuLz5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0nY29sJz5cclxuICAgICAgICAgICAgICAgIDxwPkluIG91ciBmaXJzdCBzZXQgb2YgZXhwZXJpbWVudHMsIHdlIG1lYXN1cmVkIGN1cnJlbnQgZGVuc2l0eSBpbiA8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZUFuZFNjcm9sbCAoJ0NlbGwgQ3VsdHVyZScsICcvbWF0ZXJpYWxzLW1ldGhvZHMnKX0+SEVLMjkzVCBDRlRSIHdpbGQgdHlwZSAoV1QpIGFuZCBIRUsyOTNUIEY1MDhkZWw8L2E+IGNlbGwgbGluZXMsIGNvbXBhcmluZyB0aGVtIHdpdGggcmVndWxhciBIRUsyOTMuIFRoZSByZXN1bHRzIGRlbW9uc3RyYXRlZCBzaWduaWZpY2FudCBkaWZmZXJlbmNlcyBpbiBjaGxvcmlkZSBpb24gY29uZHVjdGFuY2UsIHdpdGggdGhlIENGVFItZXhwcmVzc2luZyBjZWxsIGxpbmVzIHNob3dpbmcgZW5oYW5jZWQgY29uZHVjdGl2aXR5IGNvbXBhcmVkIHRvIEhFSzI5MyAoRmlndXJlIDM3KS4gSG93ZXZlciwgYSBkcmF3YmFjayB3YXMgdGhhdCB3ZSBkaWQgbm90IG9ic2VydmUgYW55IHNpZ25pZmljYW50IGRpZmZlcmVuY2VzIGJldHdlZW4gdGhlIEhFSzI5M1QgQ0ZUUiBXVCBhbmQgRjUwOGRlbCBjZWxsIGxpbmUuIFRoaXMgd2FzIHVuZXhwZWN0ZWQsIGFzIHRoZSBGNTA4ZGVsIG11dGF0aW9uIHR5cGljYWxseSBsZWFkcyB0byBhIGtub2NrZG93biBvZiB0aGUgQ0ZUUiBwcm90ZWluWzJdLCBpbXBhaXJpbmcgY2hsb3JpZGUgaW9uIHRyYW5zcG9ydCB0aHJvdWdoIHRoZSBDRlRSIGNoYW5uZWwuPC9wPlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPEg0IHRleHQ9XCJGdXJ0aGVyIFZhbGlkYXRpb24gYW5kIENoYWxsZW5nZXNcIi8+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSdyb3cgYWxpZ24taXRlbXMtY2VudGVyJz5cclxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J2NvbCc+XHJcbiAgICAgICAgICAgICAgPHA+SW4gbGlnaHQgb2YgdGhlc2UgcmVzdWx0cywgd2UgaW1wcm92ZWQgb3VyIGV4cGVyaW1lbnRhbCBzZXR1cCBhbmQgcGVyZm9ybWVkIGFkZGl0aW9uYWwgdmFsaWRhdGlvbiBleHBlcmltZW50cy4gVW5mb3J0dW5hdGVseSwgdGhlIHJlcGVhdGVkIG1lYXN1cmVtZW50cyB5aWVsZGVkIHNpbWlsYXIgb3V0Y29tZXMsIGNvbmZpcm1pbmcgdGhlIGFic2VuY2Ugb2YgYSBzaWduaWZpY2FudCBkaWZmZXJlbmNlIGJldHdlZW4gdGhlIHR3byBDRlRSLWV4cHJlc3NpbmcgY2VsbCBsaW5lcyAoRmlndXJlIDM4KS4gVGhpcyBmaW5kaW5nIGxlZCB1cyB0byBjb25zdWx0IHdpdGggdGhlIHJlc2VhcmNoIGdyb3VwIGF0IDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlc0FuZE9wZW5UYWIoJ21hdHRpanN2aXNpdCcsICcvaHVtYW4tcHJhY3RpY2VzJyl9PktVIExldXZlbjwvYT4sIHdobyBlc3RhYmxpc2hlZCB0aGVzZSBjZWxscyBsaW5lcy4gQWx0aG91Z2ggdGhleSBoYWQgbm90IGNvbmR1Y3RlZCBzaW1pbGFyIFBhdGNoIENhbXAgbWVhc3VyZW1lbnRzLCB0aGV5IHN1Z2dlc3RlZCBhbiBhbHRlcm5hdGl2ZSBhcHByb2FjaCB1c2luZyBVc3NpbmcgQ2hhbWJlciBtZWFzdXJlbWVudHMuIFRoaXMgdGVjaG5pcXVlLCB1bmxpa2UgUGF0Y2ggQ2FtcCwgZG9lcyBub3QgcmVseSBvbiBzaW5nbGUtY2VsbCBtZWFzdXJlbWVudHMgYnV0IHJhdGhlciBleGFtaW5lcyB0aGUgaW9uIGN1cnJlbnRzIGFjcm9zcyB0aGUgZW50aXJlIGNlbGwgbW9ub2xheWVyLCB3aGljaCBtYXkgcHJvdmlkZSBhIG1vcmUgY29tcHJlaGVuc2l2ZSB2aWV3IG9mIENGVFIgZnVuY3Rpb25hbGl0eS48L3A+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J2NvbCc+XHJcbiAgICAgICAgICAgICAgPE9uZUZpZ3VyZVxyXG4gICAgICAgICAgICAgIGFsdDE9XCJcIlxyXG4gICAgICAgICAgICAgIHBpYzE9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvcmVzdWx0cy9wYXRjaGNsYW1wL3BjMi53ZWJwXCJcclxuICAgICAgICAgICAgICBudW09ezM4fVxyXG4gICAgICAgICAgICAgIGJnPVwid2hpdGVcIlxyXG4gICAgICAgICAgICAgIGRlc2NyaXB0aW9uPVwiUmVwZWF0ZWQgdmFsaWRhdGlvbiBvZiBjdXJyZW50IGRlbnNpdHkgbWVhc3VyZW1lbnRzIGluIEhFSzI5M1QgQ0ZUUiBXVCBhbmQgSEVLMjkzVCBDRlRSLUY1MDhkZWwsIHNob3dpbmcgY29uc2lzdGVudCByZXN1bHRzIHdpdGggdGhlIGluaXRpYWwgZXhwZXJpbWVudC4gTWVhbiArLy0gU0VNIGZvciBuPTUuIEZvciBzdGF0aXN0aWNzIG9uZS13YXkgQU5PWUEgd2FzIHBlcmZvcm1lZC5cIlxyXG4gICAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8SDQgdGV4dD1cIk5leHQgU3RlcHNcIi8+XHJcbiAgICAgICAgICAgIDxwPkZvbGxvd2luZyB0aGUgcmVjb21tZW5kYXRpb25zIGZyb20gS1UgTGV1dmVuLCB3ZSBoYXZlIGFsc28gdGFrZW4gc3RlcHMgdG8gZXhwYW5kIG91ciBleHBlcmltZW50YWwgYXBwcm9hY2guIFRvIGZ1cnRoZXIgaW52ZXN0aWdhdGUgdGhlIENGVFIgZnVuY3Rpb25hbGl0eSwgd2UgaGF2ZSBvcmRlcmVkIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlQW5kU2Nyb2xsICgnQ2VsbCBDdWx0dXJlJywgJy9tYXRlcmlhbHMtbWV0aG9kcycpfT5DRkJFNDFvLTwvYT4gYXMgYSBuZXcgY2VsbCBsaW5lIGZyb20gPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VzQW5kT3BlblRhYignaWduYXRvdmEnLCAnL2h1bWFuLXByYWN0aWNlcycpfT5Qcm9mLiBEci4gSWduYXRvdmE8L2E+IGluIEhhbWJ1cmcuIE91ciBnb2FsIGlzIHRvIHVzZSB0aGVzZSBwYXRpZW50LWRlcml2ZWQgY2VsbHMgdG8gbWVhc3VyZSBpb24gY3VycmVudHMgYW5kIGZ1cnRoZXIgZWx1Y2lkYXRlIHRoZSBpbXBhY3Qgb2YgdGhlIG11dGF0aW9uIG9uIGNobG9yaWRlIGNvbmR1Y3RhbmNlLiBUaGlzIHdpbGwgbm90IG9ubHkgcHJvdmlkZSBhIG1vcmUgY2xpbmljYWxseSByZWxldmFudCBtb2RlbCBidXQgbWF5IGFsc28geWllbGQgbW9yZSBkaXN0aW5jdCByZXN1bHRzIGluIGNvbXBhcmlzb24gdG8gdGhlIHByZXZpb3VzIGV4cGVyaW1lbnRzIHdpdGggdGhlIGVuZ2luZWVyZWQgSEVLMjkzVCBjZWxscy48L3A+XHJcbiAgICAgIDwvU3ViZXNjdGlvbiA+XHJcbiAgICAgIDwvU2VjdGlvbj5cclxuICAgICAgPFNlY3Rpb24gdGl0bGU9XCJTdXBwbGVtZW50YXJ5IE1hdGVyaWFsXCIgaWQ9XCJTdXBwbGVtZW50YXJ5IE1hdGVyaWFsXCI+ICAgIFxyXG4gICAgICA8cD48RG93bmxvYWRMaW5rIHVybD1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3BkZnMvcmF3LWRhdGEtcGF0Y2gtY2xhbXAucGRmXCIgZmlsZU5hbWU9XCJyYXctZGF0YS1wYXRjaC1jbGFtcC5wZGZcIiAvPiBTdXBwbGVtZW50YXJ5IE1hdGVyaWFsIGZvciBQYXRjaCBDbGFtcDwvcD5cclxuICAgICAgPERvd25sb2FkTGluayB1cmw9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9wZGZzL3Jhdy1kYXRhLWRlbGl2ZXJ5LnBkZlwiIGZpbGVOYW1lPVwicmF3LWRhdGEtZGVsaXZlcnkucGRmXCIgLz4gU3VwcGxlbWVudGFyeSBNYXRlcmlhbCBmb3IgRGVsaXZlcnlcclxuICAgICAgPC9TZWN0aW9uPlxyXG4gICAgPC8+XHJcbiAgKTtcclxufVxyXG5cclxuXHJcblxyXG5cclxuIiwgIlxyXG5pbXBvcnQgeyBINCwgSDUgfSBmcm9tIFwiLi4vY29tcG9uZW50cy9IZWFkaW5nc1wiO1xyXG5pbXBvcnQgUHJlQ3lzZSBmcm9tIFwiLi4vY29tcG9uZW50cy9wcmVjeXNlXCI7XHJcbmltcG9ydCB7IFN1cFNjcm9sbExpbmsgfSBmcm9tIFwiLi4vY29tcG9uZW50cy9TY3JvbGxMaW5rXCI7IFxyXG5pbXBvcnQgeyBTZWN0aW9uLCBTdWJlc2N0aW9uIH0gZnJvbSBcIi4uL2NvbXBvbmVudHMvc2VjdGlvbnNcIjtcclxuaW1wb3J0IENvbGxhcHNpYmxlIGZyb20gXCIuLi9jb21wb25lbnRzL0NvbGxhcHNpYmxlXCI7XHJcbmltcG9ydCB7IHVzZU5hdmlnYXRpb24gfSBmcm9tIFwiLi4vdXRpbHNcIjtcclxuaW1wb3J0IHsgVHdvTGluZVBERiB9IGZyb20gXCIuLi9jb21wb25lbnRzL1BkZnNcIjtcclxuaW1wb3J0IHsgdXNlVGFiTmF2aWdhdGlvbiB9IGZyb20gXCIuLi91dGlscy9UYWJOYXZpZ2F0aW9uXCI7XHJcbmltcG9ydCB7IE9uZUZpZ3VyZSB9IGZyb20gXCIuLi9jb21wb25lbnRzL0ZpZ3VyZXNcIjtcclxuXHJcbi8vIG1lc3NhZ2UgZm9yIHRlc3QgY29tbWl0LlxyXG5cclxuXHJcbmV4cG9ydCBjb25zdCBTYWZldHk6IFJlYWN0LkZDID0gKCkgPT57XHJcbiAgY29uc3Qge2dvVG9QYWdlQW5kU2Nyb2xsLCBnb1RvUGFnZVdpdGhUYWJBbmRTY3JvbGwsIGdvVG9QYWdlc0FuZE9wZW5UYWJ9ID0gdXNlTmF2aWdhdGlvbigpO1xyXG4gIHVzZVRhYk5hdmlnYXRpb24oKTtcclxuICBcclxuICByZXR1cm4gKFxyXG4gICAgPD5cclxuICAgICAgPFNlY3Rpb24gdGl0bGU9XCJSb2xlIGluIGlHRU1cIiBpZD1cIlJvbGVcIj5cclxuICAgICAgPHA+XHJcbiAgICAgICAgQXMgcGFydCBvZiBvdXIgcHJvamVjdCA8UHJlQ3lzZS8+IHRvIGRldmVsb3AgYSBwcmltZS1lZGl0aW5nIGNvbXBsZXggdG8gY29ycmVjdCB0aGUgRjUwOGRlbCBtdXRhdGlvbiBpbiBDeXN0aWMgRmlicm9zaXMsIHdlIHBsYWNlIGdyZWF0IGVtcGhhc2lzIG9uIHNhZmV0eSBhdCBhbGwgc3RhZ2VzIG9mIHJlc2VhcmNoLiBPdXIgZmluYWwgY29uc3RydWN0IHdpbGwgYmUgdGVzdGVkIGluIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlQW5kU2Nyb2xsICgnQ2VsbCBDdWx0dXJlM0gnLCAnL21hdGVyaWFscy1tZXRob2RzJyl9PiBwcmltYXJ5IGN1bHR1cmVzIG9mIG5hc2FsIGVwaXRoZWxpYWwgY2VsbHMgPC9hPiAgIG9idGFpbmVkIGZyb20gbmFzYWwgc3dhYnMsIGlzb2xhdGVkIGZyb20gYm90aCBwYXRpZW50cyBhbmQgaGVhbHRoeSBpbmRpdmlkdWFscy4gVG8gZ3VhcmFudGVlIHNhZmV0eSBhbmQgZW5zdXJlIHRoZSBoaWdoZXN0IGxldmVsIG9mIHByZWNpc2lvbiBhbmQgcmVsaWFiaWxpdHkgb2Ygb3VyIHJlc3VsdHMsIHdlIGhhdmUgaW50cm9kdWNlZCBhIHNlcmllcyBvZiBjYXJlZnVsbHkgcGxhbm5lZCBjaGVja3BvaW50cyBkdXJpbmcgdGhlIGV4cGVyaW1lbnRzLiBUaGVzZSBtaWxlc3RvbmVzIGFsbG93IGZvciBjb250aW51b3VzIG1vbml0b3JpbmcsIHRpbWVseSBhZGp1c3RtZW50cyBhbmQgdmFsaWRhdGlvbiBhdCBlYWNoIGNyaXRpY2FsIHN0YWdlLiBUaGlzIGVuc3VyZXMgdGhhdCBwb3RlbnRpYWwgaXNzdWVzIGFyZSBpZGVudGlmaWVkIGFuZCBhZGRyZXNzZWQgaW1tZWRpYXRlbHksIG1pbmltaXppbmcgcmlzayBhbmQgaW1wcm92aW5nIHRoZSBvdmVyYWxsIHF1YWxpdHkgb2YgdGhlIGV4cGVyaW1lbnRhbCByZXN1bHRzLlxyXG4gICAgICAgIDwvcD5cclxuICAgICAgPC9TZWN0aW9uPlxyXG4gICAgICBcclxuICAgICAgPFNlY3Rpb24gdGl0bGU9XCJCaW9zYWZldHlcIiBpZD1cIkJpb3NhZmV0eVwiPlxyXG4gICAgICAgIDxTdWJlc2N0aW9uIHRpdGxlPVwiU2FmZXR5IGFzcGVjdHMgb2Ygb3VyIFByaW1lR3VpZGVcIiBpZD1cIkJpb3NhZmV0eTFcIj5cclxuICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgVGhlIGJpb3NhZmV0eSBvZiBvdXIgUHJpbWUgRWRpdGluZyBjb21wbGV4IGhhcyBiZWVuIGEgdG9wIHByaW9yaXR5IHRocm91Z2hvdXQgdGhlIGVudGlyZSBkZXZlbG9wbWVudCBwcm9jZXNzLiBXZSBoYXZlIHRoZXJlZm9yZSB0cmllZCB0byBvcHRpbWlzZSBhbGwgcGFydHMgdGhhdCBpbmZsdWVuY2UgdGhlIGJpb3NlY3VyaXR5IG9mIG91ciBzeXN0ZW0gYXMgbXVjaCBhcyBwb3NzaWJsZS4gVG8gZW5zdXJlIG1heGltdW0gYmlvc2VjdXJpdHksIHdlIGhhdmUgY3JlYXRlZCBhbmQgdGVzdGVkIG1hbnkgZGVzaWducywgYXMgd2VsbCBhcyBleHRlbnNpdmVseSByZXNlYXJjaGVkIGFsdGVybmF0aXZlcyBhbmQvb3IgYWRkaXRpb25hbCBlbGVtZW50cyB0aGF0IGNvbnRyaWJ1dGUgdG8gYmlvc2VjdXJpdHkuXHJcbiAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICA8SDQgdGV4dD1cIlBBTSBkaXNydXB0XCIgPjwvSDQ+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvd1wiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgICAgIEEga2V5IHNhZmV0eSBtZWNoYW5pc20gaW5jb3Jwb3JhdGVkIGluIG91ciBkZXNpZ24gb2YgdGhlIFByaW1lIEVkaXRpbmcgY29tcGxleCBpcyB0aGUgZGlzcnVwdGlvbiBvZiB0aGUgUEFNIHNlcXVlbmNley8qICBbTGluayBQQU0gdGV4dF0gKi99LiBGb3IgdGhlIG5pY2thc2UgZW56eW1lIHRvIGZ1bmN0aW9uIHByb3Blcmx5LCBpdCBtdXN0IGJpbmQgZGlyZWN0bHkgdG8gdGhlIEROQSBzdHJhbmQsIGEgcHJvY2VzcyB0aGF0IGlzIGZhY2lsaXRhdGVkIGJ5IHRoZSBwcmVzZW5jZSBvZiBhIHNwZWNpZmljIHNlcXVlbmNlIGNhbGxlZCB0aGUgUEFNIChQcm90b3NwYWNlciBBZGphY2VudCBNb3RpZikuIFRoaXMgY3JpdGljYWwgaW50ZXJhY3Rpb24gb2NjdXJzIHRocm91Z2ggdGhlIHJlY29nbml0aW9uIG9mIHRoZSBQQU0gc2VxdWVuY2UgYnkgdGhlIG5pY2thc2UgaXRzZWxmLiBUbyBhY2hpZXZlIFBBTSBkaXNydXB0aW9uLCB0aGUgcGVnUk5BIChwcmltZSBlZGl0aW5nIGd1aWRlIFJOQSkgaXMgc3BlY2lmaWNhbGx5IGRlc2lnbmVkIGluIGEgd2F5IHNvIHRoYXQgdGhlIFBBTSBzZXF1ZW5jZSBpcyBzaXR1YXRlZCB3aXRoaW4gdGhlIHJldmVyc2UgdHJhbnNjcmlwdGlvbiB0ZW1wbGF0ZSAoUlRUKSBvZiB0aGUgcGVnUk5BLiBCeSBpbnRyb2R1Y2luZyBhIHNpbGVudCBtdXRhdGlvbiB3aXRoaW4gdGhlIFJUIHRlbXBsYXRlIGludG8gdGhlIFBBTSBzZXF1ZW5jZS4gVGhlcmVmb3JlIHRoZSBQQU0gc2VxdWVuY2UgaXMgZWZmZWN0aXZlbHkgZWxpbWluYXRlZCBhZnRlciB0aGUgZ2VuZSBlZGl0aW5nIHByb2Nlc3MgaXMgc3VjY2Vzc2Z1bGx5IGNvbXBsZXRlZDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiMVwiLz4uIEFzIGEgcmVzdWx0IG9mIHRoYXQsIHRoZSBQQU0gc2VxdWVuY2UgaXMgbm8gbG9uZ2VyIHByZXNlbnQgb24gdGhlIEROQSBzdHJhbmQsIHByZXZlbnRpbmcgdGhlIG5pY2thc2UgZnJvbSBiaW5kaW5nIGFnYWluIGF0IHRoZSBzYW1lIGxvY2F0aW9uLiBUaGlzIHJlZHVjdGlvbiBpbiByZXBlYXRlZCBvciB1bmRlc2lyZWQgYmluZGluZyBvZiB0aGUgbmlja2FzZSBlbmhhbmNlcyB0aGUgc2FmZXR5IG9mIG91ciBwcmltZSBlZGl0aW5nIGNvbXBsZXgsIG1pbmltaXppbmcgdGhlIHJpc2sgb2YgdW5pbnRlbmRlZCBlZGl0cyBvciBvZmYtdGFyZ2V0IGVmZmVjdHMgaW4gc3Vic2VxdWVudCBzdGVwcy4gVWx0aW1hdGVseSwgdGhpcyBmZWF0dXJlIGNvbnRyaWJ1dGVzIHZlcnkgbXVjaCB0byB0aGUgb3ZlcmFsbCBzYWZldHkgYW5kIHJlbGlhYmlsaXR5IG9mIHRoZSBwcmltZSBlZGl0aW5nIHByb2Nlc3MuXHJcbiAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgICAgICA8T25lRmlndXJlXHJcbiAgICAgICAgICAgICAgcGljMT1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9iaW9zYWZldHkvd2lraS9iaWxkLTEud2VicFwiXHJcbiAgICAgICAgICAgICAgbnVtPXsxfVxyXG4gICAgICAgICAgICAgIGRlc2NyaXB0aW9uPVwiSWxsdXN0cmF0aW9uIG9mIHRoZSBpbnRyb2R1Y3Rpb24gb2Ygc2lsZW50IG11dGF0aW9ucyBsZWFkaW5nIHRvIHRoZSBQQU0gZGlzcnVwdFwiXHJcbiAgICAgICAgICAgICAgYWx0MT1cIklsbHVzdHJhdGlvbiBvZiB0aGUgaW50cm9kdWN0aW9uIG9mIHNpbGVudCBtdXRhdGlvbnMgbGVhZGluZyB0byB0aGUgUEFNIGRpc3J1cHRcIlxyXG4gICAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPC9kaXY+IFxyXG4gICAgICAgICAgPEg0IHRleHQ9XCJwZWdSTkEgZGVzaWduIC0gU3BhY2VyXCI+PC9IND5cclxuICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgQmlvc2FmZXR5IGlzIGFsc28gZ3VhcmFudGVlZCBieSB0aGUgY2FyZWZ1bCBzZWxlY3Rpb24gb2YgdGhlIHNwYWNlciwgd2hpY2ggcGxheXMgYSBjcml0aWNhbCByb2xlIGluIGd1aWRpbmcgdGhlIGNvbXBsZXggdG8gaXRzIGludGVuZGVkIHRhcmdldCBzaXRlPFN1cFNjcm9sbExpbmsgbGFiZWw9XCIyXCIvPi4gVG8gZW5zdXJlIGJvdGggcHJlY2lzaW9uIGFuZCBzYWZldHksIHdlIG1ldGljdWxvdXNseSBjaG9zZSBhbmQgcmlnb3JvdXNseSBjaGVja2VkIHRoZSBzcGFjZXIgdXNpbmcgdGhlIDxhIGhyZWY9XCJodHRwczovL3d3dy5zeW50aGVnby5jb20vcHJvZHVjdHMvYmlvaW5mb3JtYXRpY3MvY3Jpc3ByLWRlc2lnbi10b29sXCI+Q1JJU1BpY2sgc29mdHdhcmU8L2E+PFN1cFNjcm9sbExpbmsgbGFiZWw9XCIzXCIvPi4gVGhpcyBhbGxvd2VkIHVzIHRvIGV2YWx1YXRlIHdoZXRoZXIgb3VyIFNwYWNlciB3b3VsZCBiZSBsaWtlbHkgdG8gdGFyZ2V0IG90aGVyIHJlZ2lvbnMgdGhhbiBvdXIgdGFyZ2V0IHNpdGUgYW5kIHRoZXJlZm9yZSBhbGxvd2luZyB1cyB0byBhbmFseXNlIGFuZCBwcmVkaWN0IHBvdGVudGlhbCBvZmYtdGFyZ2V0IGVmZmVjdHMsIGVuc3VyaW5nIHRoYXQgZXJyb25lb3VzIGVkaXRzIGFyZSBtaW5pbWlzZWQuIEJ5IG9wdGltaXNpbmcgdGhlIHNwYWNlciBzZWxlY3Rpb24sIHdlIGhhdmUgbm90IG9ubHkgc2lnbmlmaWNhbnRseSBlbmhhbmNlZCB0aGUgb3ZlcmFsbCBlZGl0aW5nIGVmZmljaWVuY3ksIHN0cmlraW5nIGEgYmFsYW5jZSBiZXR3ZWVuIHByZWNpc2lvbiBhbmQgcGVyZm9ybWFuY2UsIGJ1dCBlc3BlY2lhbGx5IGVuc3VyZWQgdGhlIHV0bW9zdCBhY2N1cmFjeSBpbiBkaXJlY3RpbmcgdGhlIFByaW1lIEVkaXRvciwgZnVydGhlciBjb250cmlidXRpbmcgdG8gdGhlIHNhZmV0eSBvZiB0aGUgZWRpdGluZyBwcm9jZXNzLlxyXG4gICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgPEg0IHRleHQ9XCJSaWJvc3dpdGNoXCI+PC9IND5cclxuICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgUmlib3N3aXRjaGVzIGFyZSBzZWdtZW50cyBvZiBhbiBSTkEgc3RyYW5kIHRoYXQgYmluZCB0byBzbWFsbCBtb2xlY3VsZXMsIGNhdXNpbmcgdGhlbSB0byBjaGFuZ2UgdGhlaXIgc2Vjb25kYXJ5IHN0cnVjdHVyZSBieSBmb3JtaW5nIGhhaXJwaW4gc3RydWN0dXJlcy4gVGhpcyBwcm9jZXNzIHJlZ3VsYXRlcyBnZW5lIGV4cHJlc3Npb24gYXQgdGhlIHRyYW5zbGF0aW9uIGxldmVsIGJ5IHByZXZlbnRpbmcgcmlib3NvbWVzIGZyb20gYmluZGluZyBhdCB0aGUgUkJTIGFuZCB0cmFuc2xhdGluZyB0aGUgY29kaW5nIHJlZ2lvbiBvbiB0aGUgUk5BIHN0cmFuZC4gMEZvciBvdXIgcHJvamVjdCB3ZSBhbHNvIGNvbnNpZGVyZWQgYW4gaW9uLXNlbnNpdGl2ZSByaWJvc3dpdGNoLCBzcGVjaWZpY2FsbHkgZGVwZW5kZW50IG9uIHNvZGl1bSBpb25zIChOYVx1MjA3QSksIGFzIGEgcmVndWxhdG9yeSBtZWNoYW5pc20uIFRoZSBzZWNvbmRhcnkgc3RydWN0dXJlIG9mIHRoaXMgcmlib3N3aXRjaCBwcmV2ZW50cyB0aGUgYmluZGluZyBvZiByaWJvc29tZXMgdG8gdGhlIHJpYm9zb21lIGJpbmRpbmcgc2l0ZSAoUkJTKSB1bmRlciBub3JtYWwgY29uZGl0aW9ucywgdGh1cyBpbmhpYml0aW5nIHRoZSB0cmFuc2xhdGlvbiBvZiB0aGUgc3Vic2VxdWVudCBtUk5BLiBXaGVuIHNvZGl1bSBpb25zIGJpbmQgdG8gdGhlIHJpYm9zd2l0Y2gsIGEgc3RydWN0dXJhbCBjaGFuZ2Ugb2NjdXJzLCBleHBvc2luZyB0aGUgUkJTLCB3aGljaCBhbGxvd3MgZm9yIHRoZSB0cmFuc2xhdGlvbiBvZiB0aGUgbVJOQSBhbmQgdGhlIHByb2R1Y3Rpb24gb2Ygb3VyIGZ1c2lvbiBwcm90ZWluIHdoaWNoIGlzIHRoZSBtYWluIGNvbXBvbmVudCBvZiBvdXIgcHJpbWUgZWRpdGluZyBzeXN0ZW0gYW5kIHRoZXJlZm9yZSBvZiBlbm9ybW91cyBpbXBvcnRhbmNlIGZvciBpdCB0byB3b3JrPFN1cFNjcm9sbExpbmsgbGFiZWw9XCI0XCIvPi4gSW4gdGhlIGNvbnRleHQgb2YgdGhlIENGVFIgbXV0YXRpb24gYW5kIGl0cyBlZmZlY3RzIG9uIHRoZSBjZWxsLCB0aGUgZWxldmF0ZWQgTmFcdTIwN0EgbGV2ZWxzIHBsYXkgYSBjcnVjaWFsIHJvbGUuIER1ZSB0byB0aGUgZHlzZnVuY3Rpb25hbCBDRlRSIGNoYW5uZWwsIHdoaWNoIGZhaWxzIHRvIHByb3Blcmx5IGZ1bmN0aW9uIGFzIGEgY2hsb3JpZGUgY2hhbm5lbCwgdGhlIEVOYUMgY2hhbm5lbCAoZXBpdGhlbGlhbCBzb2RpdW0gY2hhbm5lbCkgYmVjb21lcyB1cHJlZ3VsYXRlZC4gVGhpcyB1cHJlZ3VsYXRpb24gcmVzdWx0cyBpbiBhbiBpbmNyZWFzZWQgdHJhbnNwb3J0IG9mIHNvZGl1bSBpb25zIGludG8gdGhlIGNlbGwsIGxlYWRpbmcgdG8gYSBoaWdoZXIgaW50cmFjZWxsdWxhciBzb2RpdW0gY29uY2VudHJhdGlvbi4gVGhpcyBlbGV2YXRlZCBOYVx1MjA3QSBjb25jZW50cmF0aW9uIGNyZWF0ZXMgYSBzcGVjaWZpYyBpb25pYyBlbnZpcm9ubWVudCB0aGF0IGNvdWxkIHBvdGVudGlhbGx5IGJlIHV0aWxpemVkIHRvIHJlZ3VsYXRlIG91ciBQcmltZS1FZGl0aW5nIGNvbXBsZXggaW4gYSB0YXJnZXRlZCBtYW5uZXIuIEdpdmVuIHRoZXNlIHNwZWNpZmljIGlvbmljIGNoYW5nZXMgaW4gdGhlIGNlbGwsIHdlIGNvdWxkIGhhdmUgYSBkaXNlYXNlLXNwZWNpZmljIHJlZ3VsYXRpb24gb2Ygb3VyIFByaW1lLUVkaXRpbmcgc3lzdGVtIGJhc2VkIG9uIHRoZSBpb25pYyBzaXR1YXRpb24gdHlwaWNhbCBvZiB0aGlzIGNvbmRpdGlvbi4gSG93ZXZlciwgZGVzcGl0ZSB0aGUgaW5pdGlhbCBwcm9taXNlIG9mIHRoaXMgYXBwcm9hY2gsIGFmdGVyIGZ1cnRoZXIgcmVzZWFyY2gsIHdlIGNvbmNsdWRlZCB0aGF0IHRoZSByaWJvc3dpdGNoLCBldmVuIGNvbnNpZGVyaW5nIHRoZSBpb24gbGV2ZWxzIHdpdGhpbiBlcGl0aGVsaWFsIGNlbGxzLCBpcyBvdmVyYWxsIHRvbyBub25zcGVjaWZpYyBhbmQgdGhlcmVmb3JlIHRvbyB1bnJlbGlhYmxlIGFzIGEgcmVndWxhdG9yeSBtZWNoYW5pc20uIEFsdGhvdWdoIHRoZSBpb24gbGV2ZWxzIGluIENGVFIgY2VsbHMgYXJlIG11Y2ggbG93ZXIsIHRoZXJlIGFyZSBzdGlsbCBsb3cgY29uY2VudHJhdGlvbnMgb2Ygc29kaXVtIGlvbnMsIHdoaWNoIGNhbiBsZWFkIHRvIHRoZSByaWJvc3dpdGNoIG5vdCBiZWluZyBjb21wbGV0ZWx5IHN3aXRjaGVkIG9mZi5cclxuICAgICAgICAgIDwvcD5cclxuICAgICAgICAgIDxPbmVGaWd1cmVcclxuICAgICAgICAgIHBpYzE9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvYmlvc2FmZXR5L3dpa2kvYmlsZC0yLnBuZ1wiXHJcbiAgICAgICAgICBudW09ezJ9XHJcbiAgICAgICAgICBkZXNjcmlwdGlvbj1cIklsbHVzdHJhdGlvbiBvZiB0aGUgbWVjaGFuaXNtIG9mIGFjdGlvbiBvZiB0aGUgcmlib3N3aXRjaFwiXHJcbiAgICAgICAgICBhbHQxPVwiSWxsdXN0cmF0aW9uIG9mIHRoZSBtZWNoYW5pc20gb2YgYWN0aW9uIG9mIHRoZSByaWJvc3dpdGNoXCJcclxuICAgICAgICAgIC8+XHJcbiAgICAgICAgICA8cD5cclxuICAgICAgICAgIEFzIGEgZnVydGhlciBhcHByb2FjaCB0byBkZXZlbG9waW5nIGFsdGVybmF0aXZlIHJpYm9zd2l0Y2ggdmFyaWFudHMsIHdlIGNvbnNpZGVyZWQgdGhlIHBvc3NpYmlsaXR5IG9mIGFuIFJOQS1yZWd1bGF0ZWQgcmlib3N3aXRjaCB0YXJnZXRpbmcgdGhlIGRlZmVjdGl2ZSBtUk5BIHNlcXVlbmNlIG9mIHRoZSBnZW5ldGljYWxseSBkZWZlY3RpdmUgQ0ZUUiBnZW5lLiBUaGUgYmFzaWMgaWRlYSBiZWhpbmQgdGhpcyBjb25jZXB0IHdhcyB0aGF0IHRoZSByaWJvc3dpdGNoIHNwZWNpZmljYWxseSBiaW5kcyB0byBhIHJlZ2lvbiBvbiB0aGUgQ0ZUUiBtUk5BIGNvbnRhaW5pbmcgdGhlIEY1MDhcdTAzOTQgbXV0YXRpb24uIFRoaXMgYmluZGluZyBzaG91bGQgaW5kdWNlIGEgc3RydWN0dXJhbCBjaGFuZ2UgaW4gdGhlIHJpYm9zd2l0Y2ggb24gb3VyIHByaW1lIGVkaXRpbmcgY29tcGxleFx1MjAxOXMgbVJOQSB0aGF0IHVsdGltYXRlbHkgbGVhZHMgdG8gZXhwb3N1cmUgb2YgdGhlIFJCUyB0byBhbGxvdyB0cmFuc2xhdGlvbiBvZiB0aGUgZG93bnN0cmVhbSBzZXF1ZW5jZS4gVGhpcyBtZWNoYW5pc20gd291bGQgYmUgZGVzaWduZWQgdG8gcmVhY3Qgc3BlY2lmaWNhbGx5IHRvIHRoZSBkZWZlY3RpdmUgQ0ZUUiBtUk5BIGFuZCBvbmx5IGNhdXNlIGEgY2hhbmdlIGluIHRoZSBzZWNvbmRhcnkgc3RydWN0dXJlIGluIHRoZSBwcmVzZW5jZSBvZiB0aGUgc3BlY2lmaWMgbXV0YXRpb24uIFRoZSByaWJvc3dpdGNoIGNvdWxkIHRodXMgZW5zdXJlIHNlbGVjdGl2ZSBhbmQgZGlzZWFzZS1zcGVjaWZpYyBhY3RpdmF0aW9uIG9mIG91ciBwcmltZSBlZGl0aW5nIGNvbXBsZXgsIHdoaWNoIHdvdWxkIGJlIG9mIHBhcnRpY3VsYXIgaW50ZXJlc3QgaW4gdGhlIGNvbnRleHQgb2YgZ2VuZXRpYyBkaXNlYXNlcyBzdWNoIGFzIEN5c3RpYyBGaWJyb3Npcy4gSG93ZXZlciwgd2UgZGlkIG5vdCBwdXJzdWUgdGhpcyBhcHByb2FjaCBhbnkgZnVydGhlci4gQSBtYWpvciByZWFzb24gZm9yIHRoaXMgd2FzIHRoZSBsYWNrIG9mIHN1ZmZpY2llbnQgbGl0ZXJhdHVyZSBwcm92aWRpbmcgYSBzb3VuZCBzY2llbnRpZmljIGJhc2lzIGZvciB0aGlzIHNwZWNpZmljIGFwcGxpY2F0aW9uIG9mIGEgcmlib3N3aXRjaC4gSW5cclxuICAgICAgICAgIGFkZGl0aW9uLCBvdXIgcmVzZWFyY2ggc3RlZXJlZCB1cyBpbiBhIGRpZmZlcmVudCBkaXJlY3Rpb24sIHBhcnRpY3VsYXJseSB3aXRoIHJlZ2FyZCB0byB0aGUgYWx0ZXJuYXRpdmUgbWVjaGFuaXNtIGludm9sdmluZyB0aGUgWEJQMSBpbnRyb24gdG8gcmVndWxhdGUgdGhlIHByaW1lIGVkaXRpbmcgc3lzdGVtLiBUaGlzIGFsdGVybmF0aXZlIHNlZW1lZCBtb3JlIHByb21pc2luZyBhbmQgd2FzIGJhc2VkIG9uIGFuIGVzdGFibGlzaGVkIHJlZ3VsYXRvcnkgbWVjaGFuaXNtIHRoYXQgaXMgdHJpZ2dlcmVkIGJ5IGNlbGx1bGFyIHN0cmVzcyBhbmQgc3BlY2lmaWNhbGx5IHJlc3BvbmRzIHRvIG1pc2ZvbGRpbmcgcHJvY2Vzc2VzLlxyXG4gICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgPEg0IHRleHQ9XCJYQlAxIEludHJvblwiPjwvSDQ+XHJcbiAgICAgICAgICA8cD5cclxuICAgICAgICAgICAgQWZ0ZXIgZXh0ZW5zaXZlIHJlc2VhcmNoLCB3ZSBkaXNjb3ZlcmVkIGEgcmVndWxhdG9yeSBzeXN0ZW0gaW4gZXVrYXJ5b3RpYyBjZWxscywgdGhlIFhCUDEgbWVjaGFuaXNtLiBUaGUgYWN0aXZhdGlvbiBvZiBYQlAxIGlzIGFuIGltcG9ydGFudCBtZWNoYW5pc20gdGhhdCBvY2N1cnMgYXMgcGFydCBvZiB0aGUgVW5mb2xkZWQgUHJvdGVpbiBSZXNwb25zZSAoVVBSKSwgYSBjZWxsdWxhciBzdHJlc3MgcmVzcG9uc2UgdHJpZ2dlcmVkIGJ5IHRoZSBhY2N1bXVsYXRpb24gb2YgbWlzZm9sZGVkIHByb3RlaW5zIGluIHRoZSBlbmRvcGxhc21pYyByZXRpY3VsdW0gKEVSKS4gVGhlIEVSIGlzIGEga2V5IGNlbGx1bGFyIGNvbXBvbmVudCByZXNwb25zaWJsZSBmb3IgcHJvdGVpbiBmb2xkaW5nIGFuZCB0cmFuc3BvcnQuIFdoZW4gbWFueSBtaXNmb2xkZWQgcHJvdGVpbnMgYWNjdW11bGF0ZSBpbiB0aGUgRVIsIGEgc3BlY2lmaWMgcmVndWxhdG9yeSBtZWNoYW5pc20gaXMgYWN0aXZhdGVkIHRvIHJlZHVjZSB0aGUgc3RyZXNzIG9uIHRoZSBFUi4gWEJQMSBhY3RpdmF0aW9uIGlzIGNvbnRyb2xsZWQgYnkgYSBwcm90ZWluIGNhbGxlZCBJUkUxXHUwM0IxLCB3aGljaCBpcyBlbWJlZGRlZCBpbiB0aGUgRVIgbWVtYnJhbmUuIElSRTFcdTAzQjEgYWN0cyBhcyBhIHNlbnNvciBmb3IgcHJvdGVpbiBtaXNmb2xkaW5nIHN0cmVzcyBpbiB0aGUgRVIuIE9uY2UgSVJFMVx1MDNCMSBkZXRlY3RzIG1pc2ZvbGRlZCBwcm90ZWlucywgaXQgZGltZXJpemVzIGFuZCBiZWNvbWVzIGFjdGl2YXRlZCB0aHJvdWdoIGF1dG9waG9zcGhvcnlsYXRpb24uIFRoaXMgYWN0aXZhdGlvbiBzd2l0Y2hlcyBvbiB0aGUgZW5kb3JpYm9udWNsZWFzZSBhY3Rpdml0eSBvZiBJUkUxXHUwM0IxLCB3aGljaCBpcyBhIGNydWNpYWwgc3RlcCBpbiB0aGUgYWN0aXZhdGlvbiBvZiBYQlAxLiBUaGUgbVJOQSBmb3IgWEJQMSBpcyBjb250aW51b3VzbHkgdHJhbnNjcmliZWQgaW4gdGhlIG51Y2xldXMgYW5kIHRyYW5zcG9ydGVkIHRvIHRoZSBjeXRvcGxhc20sIHdoZXJlIGl0IGNvbnRhaW5zIGFuIGludHJvbiB0aGF0IGlzIG5vdCBub3JtYWxseSBzcGxpY2VkIG91dC4gVGhpcyBpbnRyb24gY29udGFpbnMgYSBzdG9wIGNvZG9uLCBwcmV2ZW50aW5nIHRoZSB0cmFuc2xhdGlvbiBvZiBhIGZ1bmN0aW9uYWwgWEJQMSBwcm90ZWluLiBIb3dldmVyLCB3aGVuIEVSIHN0cmVzcyBhY3RpdmF0ZXMgSVJFMVx1MDNCMSwgdGhlIGVuZG9yaWJvbnVjbGVhc2UgZG9tYWluIG9mIElSRTFcdTAzQjEgc3BsaWNlcyB0aGlzIGludHJvbiBvdXQgb2YgdGhlIFhCUDEgbVJOQS4gVGhpcyBpcyBhbiB1bmNvbnZlbnRpb25hbCBzcGxpY2luZyBldmVudCwgYXMgaXQgb2NjdXJzIGluIHRoZSBjeXRvcGxhc20gcmF0aGVyIHRoYW4gaW4gdGhlIG51Y2xldXMuIE9uY2UgdGhlIGludHJvbiBpcyByZW1vdmVkLCB0aGUgc3BsaWNlZCBYQlAxIG1STkEgY2FuIGJlIHRyYW5zbGF0ZWQgaW50byBhIGZ1bmN0aW9uYWwgWEJQMSBwcm90ZWluLiBUaGlzIGFjdGl2YXRlZCBYQlAxIGFjdHMgYXMgYSB0cmFuc2NyaXB0aW9uIGZhY3RvciwgdHVybmluZyBvbiBnZW5lcyB0aGF0IGluY3JlYXNlIHRoZSBwcm90ZWluLWZvbGRpbmcgY2FwYWNpdHkgb2YgdGhlIEVSIGFuZCBwcm9tb3RlIHRoZSBkZWdyYWRhdGlvbiBvZiBtaXNmb2xkZWQgcHJvdGVpbnMuIEluIHRoaXMgd2F5LCBYQlAxIGhlbHBzIHRoZSBjZWxsIGNvcGUgd2l0aCBFUiBzdHJlc3MgYW5kIHJlc3RvcmUgYmFsYW5jZSBpbiB0aGUgcHJvdGVpbi1mb2xkaW5nIHByb2Nlc3MuIFRodXMsIHRoaXMgbWVjaGFuaXNtIG9yaWdpbmFsbHkgZnVuY3Rpb25zIHdpdGhpbiB0aGUgY2VsbCBpbiB0aGUgY29udGV4dCBvZiBFUiBzdHJlc3MgdG8gbWFpbnRhaW4gRVIgZnVuY3Rpb24gd2hlbiBwcm90ZWluIGZvbGRpbmcgaXMgZGlzcnVwdGVkPFN1cFNjcm9sbExpbmsgbGFiZWw9XCI1XCIvPjxzdXA+LDwvc3VwPjxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiNlwiLz4uIE91ciBpZGVhIHdhcyB0aGVyZWZvcmUgdG8gaW50ZWdyYXRlIHRoaXMgaW50cm9uIGludG8gdGhlIG1STkEgZW5jb2Rpbmcgb3VyIHByaW1lLWVkaXRpbmcgY29tcGxleCBhbmQgdGh1cyB1c2UgdGhpcyBtZWNoYW5pc20gdG8gZW5zdXJlIHRoYXQgYSBmdW5jdGlvbmFsIHByaW1lIGVkaXRvciBpcyBvbmx5IHN5bnRoZXNpemVkIHdoZW4gdGhlcmUgaXMgYSBoaWdoIGFjY3VtdWxhdGlvbiBvZiBtaXNmb2xkZWQgcHJvdGVpbnMgaW4gdGhlIGNlbGwgKHNpbWlsYXIgdG8gRjUwOGRlbCkuIFRoaXMgd291bGQgdGhlcmVmb3JlIHJlcHJlc2VudCBhbiBvcHRpbWFsIHNhZmV0eSBhc3BlY3QsIGFzIG91ciBmdXNpb24gcHJvdGVpbiwgd2hpY2ggaXMgZXNzZW50aWFsIGZvciBwcmltZSBlZGl0aW5nLCBjYW5ub3QgYmUgZnVsbHkgc3ludGhlc2lzZWQgYXMgbG9uZyBhcyB0aGUgZ2VuZXRpYyBkZWZlY3QgaXMgbm90IHByZXNlbnQgaW4gdGhlIGNlbGwuIEFjY29yZGluZ2x5LCB0aGlzIHByb3ZpZGVzIHRoZSBzZWN1cml0eSB0aGF0IG5vIGhlYWx0aHkgY2VsbHMsIGFzIHdlbGwgYXMgY29ycmVjdGx5IGVkaXRlZCBjZWxscywgY2Fubm90IGJlIGVkaXRlZCwgd2hpY2ggaXMgYW4gZW5vcm1vdXMgY29udHJpYnV0aW9uIHRvIGJpb3NhZmV0eS4gSG93ZXZlciwgdGhlcmUgd2FzIHRvbyBtdWNoIHVuY2VydGFpbnR5IGFib3V0IHRoZSBleHRlbnQgdG8gd2hpY2ggb3RoZXIgZmFjdG9ycywgc3VjaCBhcyBtaXNmb2xkZWQgcHJvdGVpbnMgdGhhdCBhcmUgbm90IGFzc29jaWF0ZWQgd2l0aCB0aGUgQ0ZUUiBwcm90ZWluLCBwbGF5IGEgcm9sZSBpbiB0aGlzIG1lY2hhbmlzbS4gQW5kIHNpbmNlIHdlIGNvdWxkIG5vdCBhbmQgZGlkIG5vdCB3YW50IHRvIHRha2UgdGhlIHJpc2sgb2Ygc3VjaCBmYWN0b3JzIGluaXRpYXRpbmcgdGhlIHN5c3RlbSwgd2UgZGVjaWRlZCBhZ2FpbnN0IHVzaW5nIGl0LiBUbyBjbGFyaWZ5IHRoaXMgdW5rbm93biBjb3JyZWxhdGlvbiwgd2UgaGF2ZSBjb25zaWRlcmVkIGEgZnV0dXJlIGV4cGVyaW1lbnQgaW4gd2hpY2ggd2Ugd2FudCB0byBzd2l0Y2ggdGhpcyBpbnRyb24gaW4gZnJvbnQgb2YgYSBmbHVvcmVzY2VudCBtYXJrZXIgYW5kIGV4cHJlc3MgaXQgaW4gY2VsbHMgd2l0aCBkZWZlY3RpdmUgQ0ZUUiBpbiBvcmRlciB0byBjb25maXJtL2ludmVzdGlnYXRlIHRoZSBkZXBlbmRlbmNlIG9mIGludHJvbiBzcGxpY2luZyBhbmQgdGhlIHByZXNlbmNlIG9mIENGVFIgRjUwOGRlbC5cclxuICAgICAgICAgIDwvcD5cclxuICAgICAgICA8L1N1YmVzY3Rpb24+XHJcbiAgICAgICAgPFN1YmVzY3Rpb24gdGl0bGU9XCJTYWZldHkgYXNwZWN0cyBvZiBvdXIgQWlyYnVkZHlcIiBpZD1cIkJpb3NhZmV0eTJcIj5cclxuICAgICAgICAgIDxINCB0ZXh0PVwiU09SVCBMTlAgYW5kIEN5dG90b3hpY2l0eVwiPjwvSDQ+XHJcbiAgICAgICAgICA8cD5cclxuICAgICAgICAgIFdlIGhhdmUgY2FyZWZ1bGx5IGNvbnNpZGVyZWQgdGhlIGJpb3NhZmV0eSBhc3BlY3RzIG9mIG91ciBkZWxpdmVyeSBzeXN0ZW0sIHN0YXJ0aW5nIHdpdGggdGhlIGRlY2lzaW9uIGJldHdlZW4gQWRlbm8tYXNzb2NpYXRlZCB2aXJ1c2VzIChBQVYpIG9yIExOUHMgYXMgZGVsaXZlcnkgc3lzdGVtcy4gT3VyIGNvbXBhcmlzb24gcmV2ZWFsZWQgdGhhdCB0aGUgYmlvY29tcGF0aWJpbGl0eSBhbmQgc2FmZXR5IG9mIExOUHMgYXJlIHBhcmFtb3VudCBmb3Igb3VyIGFwcHJvYWNoLiBUaGF0IGlzIHdoeSB3ZSBjaG9zZSBzZWxlY3RpdmUgb3JnYW4tdGFyZ2V0aW5nIChTT1JUKSBsaXBpZCBuYW5vcGFydGljbGVzIChMTlBzKXsvKiAgW0xpbmsgTE5QIHRleHRdICAqL308U3VwU2Nyb2xsTGluayBsYWJlbD1cIjdcIi8+IGluIHRoZSBjb250ZXh0IG9mIHRhcmdldGVkIHB1bG1vbmFyeSBtUk5BIGRlbGl2ZXJ5LiBPbmUgb2Ygb3VyIHByaW1hcnkgY29uY2VybnMgd2l0aCB0aGUgTE5QIHdhcyB0aGUgcG90ZW50aWFsIGN5dG90b3hpY2l0eSBvZiBwb2x5ZXRoeWxlbmUgZ2x5Y29sIChQRUcpLCBhIGNvbW1vbiBzdGFiaWxpemluZyBhZ2VudCBpbiBMTlAgZm9ybXVsYXRpb25zLiBBd2FyZSBvZiB0aGUgaW1tdW5lIHJlc3BvbnNlcyBQRUcgY2FuIHRyaWdnZXIsIHBvdGVudGlhbGx5IGxlYWRpbmcgdG8gY3l0b3RveGljaXR5PFN1cFNjcm9sbExpbmsgbGFiZWw9XCI4XCIvPiwgd2UgYWltZWQgYXQgb3B0aW1pemluZyBpdHMgY29uY2VudHJhdGlvbiBpbiBvdXIgU09SVCBMTlBzIHRvIG1pbmltaXplIHN1Y2ggcmVhY3Rpb25zIHdoaWxlIG1haW50YWluaW5nIHRoZXJhcGV1dGljIGVmZmljYWN5LiBCeSB0aGUgdXNlIG9mIGxvdyBtb2xlY3VsYXIgd2VpZ2h0IFBFRywgd2UgYWRkcmVzc2VkIHRoaXMgcHJvYmxlbS4gVG8gdGVzdCB3ZWF0aGVyIG91ciBhcHByb2FjaCBzdWNjZWVkZWQsIHdlIGNvbmR1Y3RlZCBNVFQgYW5kIHByb2xpZmVyYXRpb24gYXNzYXlzIHRvIGVuc3VyZSB0aGF0IG91ciBMTlAgcG9zZWQgbm8gY3l0b3RveGljaXR5IHJpc2tzLlxyXG4gICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgPEg0IHRleHQ9XCJQcmVjaXNpb24gb2Ygb3VyIFNPUlQgTE5QXCI+PC9IND5cclxuICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgVG8gZnVydGhlciBpbXByb3ZlIHNhZmV0eSwgd2UgZm9jdXNlZCBvbiByZWR1Y2luZyBvZmYtdGFyZ2V0IGVmZmVjdHMuIEJ5IGluY29ycG9yYXRpbmcgc3BlY2lmaWMgU09SVCBtb2xlY3VsZXMsIHN1Y2ggYXMgcGVybWFuZW50bHkgY2F0aW9uaWMgbGlwaWRzIGxpa2UgPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VXaXRoVGFiQW5kU2Nyb2xsKHt0YWJJZDondGFiLWRlbGl2ZXJ5JywgcGF0aDogJy9lbmdpbmVlcmluZycsIHNjcm9sbFRvSWQ6IFwiZGVsaXZlcnktaGVhZGVyXCJ9KX0+RE9UQVA8L2E+ICwgd2UgZW5zdXJlZCB0aGF0IHRoZSBuYW5vcGFydGljbGVzIGFyZSBzeXN0ZW1hdGljYWxseSBkaXJlY3RlZCB0byB0aGUgbHVuZ3MuIFRoaXMgcHJlY2lzZSB0YXJnZXRpbmcgaXMgcGFydGljdWxhcmx5IGJlbmVmaWNpYWwgZm9yIHJlc3BpcmF0b3J5IGRpc2Vhc2VzLCBhcyBpdCBlbmhhbmNlcyB0aGVyYXBldXRpYyBlZmZlY3RpdmVuZXNzIHdoaWxlIGxpbWl0aW5nIHRoZSBpbXBhY3Qgb24gbm9uLXRhcmdldCBvcmdhbnMuIE91ciBvdXRsb29rIG9mIGFudGlib2R5IGNvbmp1Z2F0aW9uIGFzIHN1cmZhY2UgbW9kaWZpY2F0aW9uIG9mIG91ciBMTlAgZm9yIGNlbGwgdHlwZS1zcGVjaWZpYyBkZWxpdmVyeSwgbW9yZSBleGFjdGx5IGNsdWIgY2VsbHM8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjlcIi8+IGFuZCBpb25vY3l0ZXM8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjEwXCIvPiBhcyBDRlRSLWV4cHJlc3NpbmcgbHVuZyBlcGl0aGVsaWFsIGNlbGxzLCB3b3VsZCByb3VuZCBvZmYgdGhpcyBhc3BlY3QuXHJcbiAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICA8cD5cclxuICAgICAgICAgIEluIHN1bW1hcnksIG91ciBkZXNpZ24gc3RyYXRlZ3kgZW1waGFzaXplcyBib3RoIHNhZmV0eSBhbmQgZWZmaWNhY3kuIFRoZSBjYXJlZnVsIG9wdGltaXphdGlvbiBvZiBjb21wb25lbnRzIGxpa2UgUEVHIDIwMDAgYW5kIHRoZSB1c2Ugb2YgdGFyZ2V0ZWQgZGVsaXZlcnkgbW9sZWN1bGVzIGFsbG93IFNPUlQgTE5QcyB0byBkZWxpdmVyIHRoZXJhcGV1dGljIGFnZW50cyBkaXJlY3RseSB0byB0aGUgbHVuZ3MsIHJlZHVjaW5nIHN5c3RlbWljIGV4cG9zdXJlIGFuZCBtaW5pbWl6aW5nIHNpZGUgZWZmZWN0cy4gVGhpcyB0YXJnZXRlZCBhcHByb2FjaCBlbnN1cmVzIG1vcmUgZWZmZWN0aXZlIHRyZWF0bWVudHMsIGVzcGVjaWFsbHkgZm9yIGNvbmRpdGlvbnMgcmVxdWlyaW5nIGxvY2FsaXplZCBpbnRlcnZlbnRpb24uXHJcbiAgICAgICAgICA8L3A+XHJcbiAgICAgICAgPC9TdWJlc2N0aW9uPlxyXG4gICAgICA8L1NlY3Rpb24+XHJcbiAgICAgIDxTZWN0aW9uIHRpdGxlPVwiQmlvc2VjdXJpdHlcIiBpZD1cIkJpb3NlY3VyaXR5XCI+XHJcbiAgICAgICAgPFN1YmVzY3Rpb24gdGl0bGU9XCJBYm91dCBPdXIgUHJvamVjdFwiIGlkPVwiQmlvc2VjdXJpdHkxXCI+XHJcbiAgICAgICAgICA8cD5cclxuICAgICAgICAgIE91ciBwcm9qZWN0IGZvY3VzZXMgb24gdGhlIGdlbmV0aWMgZGlzZWFzZSBDeXN0aWMgRmlicm9zaXMsIHNwZWNpZmljYWxseSB0YXJnZXRpbmcgdGhlIERlbHRhLTUwOCBtdXRhdGlvbi4gVGhlIGFpbSBpcyB0byBjb3JyZWN0IHRoaXMgbXV0YXRpb24gdXNpbmcgUHJpbWUgRWRpdGluZywgYSBwcmVjaXNlIGdlbm9tZS1lZGl0aW5nIHRlY2huaXF1ZS4gV2UgaGF2ZSBleHBsb3JlZCBkaWZmZXJlbnQgc3RyYXRlZ2llcyB0byBvcHRpbWl6ZSB0aGUgUHJpbWUgRWRpdGluZyBjb21wbGV4IGZvciB0aGlzIHNwZWNpZmljIGFwcGxpY2F0aW9uLiBcclxuICAgICAgICAgIDwvcD5cclxuICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgVGhlIFByaW1lIEVkaXRpbmcgY29tcGxleCBjb25zaXN0cyBvZiBhIG5pY2thc2UsIGEgcmV2ZXJzZSB0cmFuc2NyaXB0YXNlLCBhIHBlZ1JOQS4gVGhlIHBlZ1JOQSBndWlkZXMgdGhlIGVkaXRpbmcgcHJvY2VzcyBieSBkaXJlY3RpbmcgdGhlIGNvbXBsZXggdG8gdGhlIHRhcmdldCBETkEgc2VxdWVuY2UsIGFsbG93aW5nIGZvciBwcmVjaXNlIGdlbmV0aWMgbW9kaWZpY2F0aW9ucy4gRm9yIHRhcmdldGVkIGRlbGl2ZXJ5LCB3ZSBzZWxlY3RlZCBMTlBzIHRvIGludHJvZHVjZSB0aGUgbVJOQSBlbmNvZGluZyB0aGUgUHJpbWUgRWRpdGluZyBjb21wb25lbnRzIHNwZWNpZmljYWxseSBpbnRvIGx1bmcgZXBpdGhlbGlhbCBjZWxscywgd2hlcmUgdGhlIENGVFIgcHJvdGVpbiBpcyBoaWdobHkgZXhwcmVzc2VkLiBBZGRpdGlvbmFsbHksIHdlIGludmVzdGlnYXRlZCBhbHRlcm5hdGl2ZXMgdG8gdGhlIGNvbnZlbnRpb25hbCBDYXM5IG5pY2thc2UsIHN1Y2ggYXMgdGhlIHNtYWxsZXIgQ2FzWCBhbmQgRmFuem9yLCBhaW1pbmcgdG8gcmVkdWNlIHRoZSBvdmVyYWxsIHNpemUgb2YgdGhlIFByaW1lIEVkaXRpbmcgY29tcGxleC4gSW4gb3VyIG9wdGltaXphdGlvbiBlZmZvcnRzLCB3ZSBhbHNvIGV4cGxvcmVkIHNtYWxsZXIgcmV2ZXJzZSB0cmFuc2NyaXB0YXNlcyB0byBlbmhhbmNlIHRoZSBlZmZpY2llbmN5IG9mIHRoZSBzeXN0ZW0gaW4gaHVtYW4gY2VsbHMuIFxyXG4gICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgPHA+XHJcbiAgICAgICAgICBGdXJ0aGVybW9yZSwgd2UgaGF2ZSBkZXZlbG9wZWQgYSBtb2R1bGFyIHBsYXNtaWQgdGhhdCBjb250YWlucyB0aGUgYmFja2JvbmUgb2Ygb3VyIFByaW1lIEVkaXRpbmcgY29tcGxleC4gVGhlIGluZGl2aWR1YWwgY29tcG9uZW50cyBjYW4gYmUgY2xvbmVkIGluZGl2aWR1YWxseSBpbnRvIHRoZSBiYWNrYm9uZS4gVGhpcyBwbGFzbWlkIGFsbG93cyB1cyB0byBlaXRoZXIgZGVsaXZlciB0aGUgY29uc3RydWN0IGRpcmVjdGx5IGludG8gdGFyZ2V0IGNlbGxzIG9yIHRyYW5zY3JpYmUgdGhlIHBsYXNtaWQgaW50byBSTkEsIGVuYWJsaW5nIHRoZSBkZWxpdmVyeSBvZiB0aGUgUHJpbWUgRWRpdGluZyBjb21wbGV4IGluIHRoZSBmb3JtIG9mIG1STkEuIFRoZSBtb2R1bGFyaXR5IG9mIHRoZSBwbGFzbWlkIGlzIGEga2V5IGZlYXR1cmU7IHNwZWNpZmljIHJlc3RyaWN0aW9uIHNpdGVzIGFyZSBpbmNsdWRlZCB0byBmYWNpbGl0YXRlIHRoZSBlYXN5IGV4Y2hhbmdlIG9mIHRoZSBjb21wbGV4J3MgY29tcG9uZW50cy4gVGhpcyBkZXNpZ24gbWFrZXMgaXQgc3RyYWlnaHRmb3J3YXJkIHRvIGFkYXB0IHRoZSBQcmltZSBFZGl0aW5nIGNvbXBsZXggZm9yIHZhcmlvdXMgdXNlIGNhc2VzIGFuZCB0aGVyYXBldXRpYyByZXF1aXJlbWVudHMuIFxyXG4gICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgPHA+XHJcbiAgICAgICAgICBXZSBoYXZlIGludmVzdGlnYXRlZCBzYWZldHkgbWVjaGFuaXNtcyB0byBjb250cm9sIHRoZSBwcmltZS1lZGl0aW5nIGNvbXBsZXgsIGluY2x1ZGluZyBhIHJpYm9zd2l0Y2ggdGhhdCByZXNwb25kcyB0byBzb2RpdW0gaW9uIGNvbmNlbnRyYXRpb25zLCBidXQgaGF2ZSBkaXNjYXJkZWQgaXQgZHVlIHRvIHN1c3BlY3RlZCBpbnN1ZmZpY2llbnQgc2Vuc2l0aXZpdHkuIFdlIGFyZSBjdXJyZW50bHkgaW52ZXN0aWdhdGluZyB0aGUgdXNlIG9mIHRoZSBFUiBzdHJlc3MgcmVzcG9uc2UgdG8gYWN0aXZhdGUgdGhlIHByaW1lIGVkaXRpbmcgY29tcGxleCBvbmx5IGluIGNlbGxzIHdpdGggaGlnaCBFUiBzdHJlc3MsIGFzIGlzIHR5cGljYWwgZm9yIEN5c3RpYyBGaWJyb3Npcy4gRnVydGhlciBkZXRhaWxzIGNhbiBiZSBmb3VuZCBpbiB0aGUgQmlvc2FmZXR5IHNlY3Rpb24uIFxyXG4gICAgICAgICAgPC9wPlxyXG4gICAgICAgIDwvU3ViZXNjdGlvbj5cclxuICAgICAgICA8U3ViZXNjdGlvbiB0aXRsZT1cIkFzc2Vzc2luZyBQcm9qZWN0IFJpc2tzXCIgaWQ9XCJCaW9zZWN1cml0eTJcIj5cclxuICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgR2l2ZW4gdGhlIHNlbnNpdGl2ZSBuYXR1cmUgb2YgZ2Vub21lIGVkaXRpbmcsIG91ciBwcm9qZWN0IHByZXNlbnRzIHNwZWNpZmljIGJpb3NlY3VyaXR5IGNvbmNlcm5zIHRoYXQgbmVlZCB0byBiZSBhc3Nlc3NlZCBhbmQgbWl0aWdhdGVkLiBcclxuICAgICAgICAgIDwvcD5cclxuICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgICA8c3Ryb25nPkR1YWwtVXNlIFBvdGVudGlhbDo8L3N0cm9uZz4gT25lIG9mIHRoZSBtYWluIGJpb3NlY3VyaXR5IHJpc2tzIGlzIHRoZSBwb3RlbnRpYWwgZm9yIGR1YWwtdXNlIG9mIHRoZSBQcmltZSBFZGl0aW5nIHRlY2hub2xvZ3kuIFRoZSBzeXN0ZW0gd2UgYXJlIGRldmVsb3BpbmcsIHdoaWxlIGludGVuZGVkIGZvciB0aGVyYXBldXRpYyB1c2UsIGNvdWxkIGJlIG1pc3VzZWQgdG8gdGFyZ2V0IG90aGVyIGdlbmVzIG9yIGdlbm9tZXMgZm9yIG1hbGljaW91cyBwdXJwb3NlczxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiMTFcIi8+LiBUaGlzIGluY2x1ZGVzIHRoZSBwb3NzaWJpbGl0eSBvZiB3ZWFwb25pemluZyB0aGUgdGVjaG5vbG9neSB0byBpbmR1Y2UgaGFybWZ1bCBnZW5ldGljIGNoYW5nZXMgaW4gY3JvcHMsIGFuaW1hbHMsIG9yIGV2ZW4gaHVtYW5zLiBUaGUgbW9kdWxhciBkZXNpZ24gb2Ygb3VyIHBsYXNtaWQgc3lzdGVtLCBhbHRob3VnaCBpbnRlbmRlZCB0byBmYWNpbGl0YXRlIG9wdGltaXphdGlvbiwgY291bGQgYmUgZXhwbG9pdGVkIHRvIGV4Y2hhbmdlIGNvbXBvbmVudHMgZm9yIGhhcm1mdWwgYXBwbGljYXRpb25zLCB0aGVyZWJ5IGluY3JlYXNpbmcgdGhlIHJpc2sgb2YgbWlzdXNlLiBcclxuICAgICAgICAgIDwvcD5cclxuICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgICA8c3Ryb25nPlVuaW50ZW5kZW5kIERpc3NlbWluYXRpb246PC9zdHJvbmc+IFNpbmNlIG91ciBhcHByb2FjaCB1c2VzIG1STkEgZGVsaXZlcmVkIHZpYSBMTlBzLCB0aGVyZSBpcyBhIHJpc2sgb2YgdW5pbnRlbmRlZCBkaXNzZW1pbmF0aW9uIGludG8gdGhlIGVudmlyb25tZW50LiBJZiB0aGUgTE5QcyBhcmUgbm90IGFkZXF1YXRlbHkgY29udGFpbmVkIG9yIGRpc3Bvc2VkIG9mLCB0aGVyZSBpcyBhIHBvc3NpYmlsaXR5IHRoYXQgdGhleSBjb3VsZCBiZSBhYnNvcmJlZCBieSBub24tdGFyZ2V0IG9yZ2FuaXNtcywgcG90ZW50aWFsbHkgbGVhZGluZyB0byBvZmYtdGFyZ2V0IGdlbmV0aWMgbW9kaWZpY2F0aW9uczxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiMTJcIi8+LiBJbiBhZGRpdGlvbiwgdGhlIG1STkEgaXRzZWxmIGNvdWxkIHRoZW9yZXRpY2FsbHkgYmUgdHJhbnNmZXJyZWQgYmV0d2VlbiBjZWxscywgZXNwZWNpYWxseSBpZiB0YWtlbiB1cCBieSB1bmludGVuZGVkIGhvc3RzLCByYWlzaW5nIGNvbmNlcm5zIGFib3V0IHVuaW50ZW50aW9uYWwgc3ByZWFkIGluIHRoZSBlbnZpcm9ubWVudC4gXHJcbiAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICA8cD5cclxuICAgICAgICAgICAgPHN0cm9uZz5VbmF1dGhvcml6ZWQgQWNjZXNzOjwvc3Ryb25nPiBUaGUgZ2VuZXRpYyBjb25zdHJ1Y3RzIGFuZCB0aGUgZGV0YWlsZWQgbWV0aG9kb2xvZ3kgb2Ygb3VyIFByaW1lIEVkaXRpbmcgc3lzdGVtIG11c3QgYmUgc2VjdXJlbHkgc3RvcmVkIGFuZCBwcm90ZWN0ZWQ8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjEzXCIvPi4gSWYgdW5hdXRob3JpemVkIGluZGl2aWR1YWxzIHdlcmUgdG8gZ2FpbiBhY2Nlc3MgdG8gdGhlIHBsYXNtaWRzLCBMTlAgZm9ybXVsYXRpb25zLCBvciBlZGl0aW5nIHByb3RvY29scywgdGhlcmUgaXMgYSByaXNrIG9mIHRoZSB0ZWNobm9sb2d5IGJlaW5nIHJlcGxpY2F0ZWQgb3IgYWRhcHRlZCBmb3IgdW5pbnRlbmRlZCwgcG90ZW50aWFsbHkgaGFybWZ1bCB1c2VzLiBUaGlzIGhpZ2hsaWdodHMgdGhlIGltcG9ydGFuY2Ugb2YgcHJvcGVyIGJpb3NlY3VyaXR5IHByb3RvY29scyBpbiBib3RoIHBoeXNpY2FsIGFuZCBkaWdpdGFsIHN0b3JhZ2Ugb2Ygb3VyIHByb2plY3QgbWF0ZXJpYWxzLiBcclxuICAgICAgICAgIDwvcD5cclxuICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgICA8c3Ryb25nPlN5bnRoZXRpYyBCaW9sb2d5IGFuZCBpbmZvcm1hdGlvbiBTaGFyaW5nOjwvc3Ryb25nPiBUaGUgZWFzZSBvZiBzeW50aGVzaXppbmcgZ2VuZXRpYyBtYXRlcmlhbCBtZWFucyB0aGF0IG91ciBwcm9qZWN0IGluZm9ybWF0aW9uIGNvdWxkIHBvdGVudGlhbGx5IGJlIHVzZWQgdG8gb3JkZXIgc2ltaWxhciBjb25zdHJ1Y3RzIGZyb20gY29tbWVyY2lhbCBzeW50aGVzaXMgcHJvdmlkZXJzPFN1cFNjcm9sbExpbmsgbGFiZWw9XCIxNFwiLz4uIFdoaWxlIHRoZXNlIHByb3ZpZGVycyBmb2xsb3cgYmlvc2VjdXJpdHkgZ3VpZGVsaW5lcywgdGhlIGluY3JlYXNpbmcgYWNjZXNzaWJpbGl0eSBvZiBzeW50aGV0aWMgYmlvbG9neSByYWlzZXMgdGhlIGNvbmNlcm4gb2Ygb3VyIFByaW1lIEVkaXRpbmcgc3lzdGVtIGJlaW5nIHJlcHJvZHVjZWQgb3IgbW9kaWZpZWQgd2l0aG91dCBvdXIga25vd2xlZGdlLiBUaGlzIGluY2x1ZGVzIHBvdGVudGlhbCBhdHRlbXB0cyB0byBieXBhc3Mgc2FmZXR5IG1lY2hhbmlzbXMgb3IgY3JlYXRlIHZhcmlhbnRzIHRoYXQgZXZhZGUgY3VycmVudCByZWd1bGF0b3J5IGZyYW1ld29ya3MuIFxyXG4gICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgIDxzdHJvbmc+UHVibGljIFBlcmNlcHRpb24gYW5kIE1pc2NvbW11bmljYXRpb246PC9zdHJvbmc+IFRoZXJlIGlzIGEgYmlvc2VjdXJpdHkgcmlzayBpbiBob3cgb3VyIHByb2plY3QncyB0ZWNobm9sb2d5IGlzIGNvbW11bmljYXRlZCB0byB0aGUgcHVibGljPFN1cFNjcm9sbExpbmsgbGFiZWw9XCIxNVwiLz4uIE1pc2NvbW11bmljYXRpb24gb3IgbWlzdW5kZXJzdGFuZGluZyBvZiB0aGUgcHJvamVjdFx1MjAxOXMgaW50ZW50IGFuZCBjYXBhYmlsaXRpZXMgY291bGQgbGVhZCB0byBtaXNpbmZvcm1hdGlvbiwgZmVhciwgb3IgZXZlbiBhdHRlbXB0cyB0byByZXBsaWNhdGUgdGhlIHRlY2hub2xvZ3kgb3V0c2lkZSBvZiBjb250cm9sbGVkIGFuZCByZWd1bGF0ZWQgZW52aXJvbm1lbnRzLiBUaGlzIGNvdWxkIHVuZGVybWluZSBwdWJsaWMgdHJ1c3QgaW4gbGVnaXRpbWF0ZSB0aGVyYXBldXRpYyB1c2VzIG9mIGdlbm9tZS1lZGl0aW5nIHRlY2hub2xvZ2llcyBhbmQgcG90ZW50aWFsbHkgZmFjaWxpdGF0ZSBtaXN1c2UuICBcclxuICAgICAgICAgIDwvcD5cclxuICAgICAgICA8L1N1YmVzY3Rpb24+XHJcbiAgICAgICAgPFN1YmVzY3Rpb24gdGl0bGU9XCJNYW5hZ2luZyBSaXNrc1wiIGlkPVwiQmlvc2VjdXJpdHkzXCI+XHJcbiAgICAgICAgICA8SDUgdGV4dD1cIkR1YWwtVXNlIFBvdGVudGlhbFwiPjwvSDU+XHJcbiAgICAgICAgICA8cD5cclxuICAgICAgICAgIFRvIG1pdGlnYXRlIHRoZSByaXNrIG9mIGR1YWwtdXNlLCB3aGVyZSBvdXIgUHJpbWUgRWRpdGluZyB0ZWNobm9sb2d5IGNvdWxkIGJlIGV4cGxvaXRlZCBmb3IgdW5pbnRlbmRlZCBhbmQgcG90ZW50aWFsbHkgaGFybWZ1bCBwdXJwb3Nlcywgd2UgaGF2ZSBpbXBsZW1lbnRlZCBzZXZlcmFsIHN0cmF0ZWdpZXMuIFxyXG4gICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgPHA+XHJcbiAgICAgICAgICBGaXJzdGx5LCB3ZSBzdHJpY3RseSBjb250cm9sIGFjY2VzcyB0byBhbGwgb3VyIHByb2plY3QgZGF0YSwgaW5jbHVkaW5nIGdlbmV0aWMgc2VxdWVuY2VzLCBwbGFzbWlkIGRlc2lnbnMsIGFuZCBwcm90b2NvbHMuIEFjY2VzcyBpcyBsaW1pdGVkIHRvIGF1dGhvcml6ZWQgdGVhbSBtZW1iZXJzIGFuZCBjb2xsYWJvcmF0b3JzIHdobyBmb2xsb3cgc3RyaWN0IGJpb3NlY3VyaXR5IGd1aWRlbGluZXMuIEZ1cnRoZXIgZWxhYm9yYXRpb24gb24gdGhlc2UgYWNjZXNzIGNvbnRyb2xzIHdpbGwgYmUgcHJvdmlkZWQgaW4gdGhlIFwiVW5hdXRob3JpemVkIEFjY2Vzc1wiIHNlY3Rpb24uXHJcbiAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICA8cD5cclxuICAgICAgICAgIFNlY29uZGx5LCB3ZSBpbnRlbmQgdG8gaW5jb3Jwb3JhdGUgYSBzYWZldHkgbWVjaGFuaXNtIGludG8gb3VyIFByaW1lIEVkaXRpbmcgY29tcGxleCB0aGF0IHNpZ25pZmljYW50bHkgbGltaXRzIGl0cyBwb3RlbnRpYWwgbWlzdXNlLiBCeSB1dGlsaXppbmcgdGhlIEVSIHN0cmVzcyByZXNwb25zZSBwYXRod2F5LCB3ZSB3b3VsZCBkZXNpZ24gb3VyIHRoZXJhcGV1dGljIG1STkEgdG8gdW5kZXJnbyB1bmNvbnZlbnRpb25hbCBzcGxpY2luZyBvbmx5IGluIGNlbGxzIGV4cGVyaWVuY2luZyBoaWdoIGxldmVscyBvZiBwcm90ZWluIHN0cmVzcy4gT25seSB0aGlzIHVuY29udmVudGlvbmFsIHNwbGljaW5nIHdvdWxkIGNvbnZlcnQgdGhlIG1STkEgaW50byBhIGZvcm0gdGhhdCBjYW4gYmUgdHJhbnNsYXRlZCBpbnRvIHRoZSBmaW5hbCBQRSBjb21wbGV4LiBUaGlzIG1lY2hhbmlzbSBlbnN1cmVzIHRoYXQgdGhlIFByaW1lIEVkaXRpbmcgY29tcGxleCBiZWNvbWVzIGFjdGl2ZSBwcmltYXJpbHkgaW4gY2VsbHMgdW5kZXIgc3VjaCBzdHJlc3MgY29uZGl0aW9ucy4gV2hpbGUgdGhpcyBkb2VzIG5vdCBleGNsdXNpdmVseSBsaW1pdCB0aGUgY29tcGxleCB0byBDeXN0aWMgRmlicm9zaXMtYWZmZWN0ZWQgY2VsbHMsIGl0IGNvbnNpZGVyYWJseSBuYXJyb3dzIHRoZSByYW5nZSBvZiBjZWxscyB3aGVyZSBhY3RpdmF0aW9uIGNhbiBvY2N1ciwgdGh1cyBwcmV2ZW50aW5nIGFyYml0cmFyeSBhcHBsaWNhdGlvbiBvZiB0aGUgZWRpdGluZyBzeXN0ZW0gYW5kIHJlZHVjaW5nIHRoZSByaXNrIG9mIHRhcmdldGluZyB1bmludGVuZGVkIGNlbGxzLiBcclxuICAgICAgICAgIDwvcD5cclxuICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgVG9nZXRoZXIsIHRoZXNlIG1lYXN1cmVzIHByb3ZpZGUgYSBsYXllciBvZiBwcm90ZWN0aW9uIGFnYWluc3QgZHVhbC11c2Ugcmlza3MsIG1ha2luZyBpdCBtb3JlIGRpZmZpY3VsdCBmb3IgdGhlIHRlY2hub2xvZ3kgdG8gYmUgZW1wbG95ZWQgb3V0c2lkZSBvZiBpdHMgaW50ZW5kZWQgdGhlcmFwZXV0aWMgY29udGV4dC4gIFxyXG4gICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgIDxINSB0ZXh0PVwiVW5pdGVuZGVkIERpc3NlbWluYXRpb25cIj48L0g1PlxyXG4gICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgPHA+XHJcbiAgICAgICAgICBUbyBtaW5pbWl6ZSB0aGUgcmlzayBvZiBvdXIgY29uc3RydWN0IGJlaW5nIGluYWR2ZXJ0ZW50bHkgcmVsZWFzZWQgaW50byB0aGUgZW52aXJvbm1lbnQsIHdlIGFkaGVyZSB0byBzdHJpY3Qgc3RhbmRhcmQgb3BlcmF0aW5nIHByb2NlZHVyZXMgKFNPUHMpIGluIHRoZSBsYWJvcmF0b3J5LiBUaGVzZSBTT1BzIGFyZSBkZXNpZ25lZCB0byBlbnN1cmUgdGhhdCBhbGwgc2FmZXR5IHN0YW5kYXJkcyBhcmUgbWFpbnRhaW5lZCwgcGFydGljdWxhcmx5IHdoZW4gaGFuZGxpbmcgTE5QcykgYW5kIGdlbmV0aWMgbWF0ZXJpYWxzLiBUaGlzIGluY2x1ZGVzIHJpZ29yb3VzIHByb3RvY29scyBmb3Igc3RvcmFnZSwgZGlzcG9zYWwsIGFuZCBkZWNvbnRhbWluYXRpb24sIHJlZHVjaW5nIHRoZSBjaGFuY2Ugb2YgYWNjaWRlbnRhbCBkaXNzZW1pbmF0aW9uIG9mIHRoZSBtYXRlcmlhbHMgd2Ugd29yayB3aXRoLiBcclxuICAgICAgICAgIDwvcD5cclxuICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgSW4gYWRkaXRpb24gdG8gb3VyIGxhYm9yYXRvcnkgcHJhY3RpY2VzLCB3ZSBoYXZlIGZvcm11bGF0ZWQgb3VyIExOUHMgd2l0aCBzcGVjaWZpYyBjaGVtaWNhbCBjb21wb25lbnRzIHRoYXQgZW5hYmxlIHRoZW0gdG8gc2VsZWN0aXZlbHkgZnVzZSB3aXRoIGx1bmcgZXBpdGhlbGlhbCBjZWxscywgc3VjaCBhcyBpb25vY3l0ZXMgYW5kIGNsdWIgY2VsbHMsIHdoaWNoIGV4cHJlc3MgQ0ZUUi4gVGhpcyBzZWxlY3RpdmUgZnVzaW9uIGVuc3VyZXMgdGhhdCBldmVuIGlmIHRoZSBMTlBzIHdlcmUgdG8gYWNjaWRlbnRhbGx5IGVudGVyIHRoZSBlbnZpcm9ubWVudCwgdGhleSB3b3VsZCBvbmx5IGludGVyYWN0IHdpdGggdGhlIGludGVuZGVkIGNlbGxzLiBUaGlzIGFwcHJvYWNoIHNpZ25pZmljYW50bHkgZW5oYW5jZXMgdGhlIHNwZWNpZmljaXR5IG9mIHRoZSBMTlBzIGFuZCBwcm92aWRlcyBhbiBhZGRpdGlvbmFsIGxheWVyIG9mIGNvbnRhaW5tZW50LCB0aGVyZWJ5IHJlZHVjaW5nIHRoZSByaXNrIG9mIHVuaW50ZW5kZWQgZGlzc2VtaW5hdGlvbiBvciBlbnZpcm9ubWVudGFsIGNvbnRhbWluYXRpb24uICBcclxuICAgICAgICAgIDwvcD5cclxuICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgTG9va2luZyBhaGVhZCwgd2UgcGxhbiB0byBmdXJ0aGVyIGVuaGFuY2UgdGhlIHNwZWNpZmljaXR5IG9mIG91ciBMTlBzIGJ5IGluY29ycG9yYXRpbmcgYW50aWJvZGllcyBvbiB0aGVpciBzdXJmYWNlLiBUaGVzZSBhbnRpYm9kaWVzIHdvdWxkIGJlIGVuZ2luZWVyZWQgdG8gYmluZCBleGNsdXNpdmVseSB0byBzdXJmYWNlIHByb3RlaW5zIHByZXNlbnQgb24gQ0ZUUi1leHByZXNzaW5nIGx1bmcgZXBpdGhlbGlhbCBjZWxscywgYWRkaW5nIGFuIGV4dHJhIGxheWVyIG9mIGNvbnRyb2wuIFdoaWxlIHRoaXMgYW50aWJvZHktYmFzZWQgdGFyZ2V0aW5nIGhhcyBub3QgeWV0IGJlZW4gaW1wbGVtZW50ZWQsIGl0IHJlcHJlc2VudHMgYSBjcnVjaWFsIG5leHQgc3RlcCBpbiBvdXIgZGV2ZWxvcG1lbnQgcHJvY2VzcywgcmVpbmZvcmNpbmcgb3VyIGNvbW1pdG1lbnQgdG8gYmlvc2VjdXJpdHkgYnkgbGltaXRpbmcgdGhlIHBvdGVudGlhbCBmb3IgdW5pbnRlbmRlZCBkaXNzZW1pbmF0aW9uLiBcclxuICAgICAgICAgIDwvcD5cclxuICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgVG9nZXRoZXIsIHRoZXNlIHByYWN0aWNlcyBhbmQgZGVzaWduIHN0cmF0ZWdpZXMgaGVscCB0byBlbnN1cmUgdGhhdCB0aGUgcmlzayBvZiBvdXIgY29uc3RydWN0cyBpbmFkdmVydGVudGx5IGFmZmVjdGluZyBub24tdGFyZ2V0IG9yZ2FuaXNtcyBvciBlbnZpcm9ubWVudHMgaXMgbWluaW1pemVkLiBcclxuICAgICAgICAgIDwvcD5cclxuICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgICA8SDUgdGV4dD1cIlVuYXV0aG9yaXplZCBBY2Nlc3NcIj48L0g1PlxyXG4gICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgPHA+XHJcbiAgICAgICAgICBUbyBwcmV2ZW50IHVuYXV0aG9yaXplZCBhY2Nlc3MgdG8gb3VyIGdlbmV0aWMgc2VxdWVuY2VzLCBwbGFzbWlkIGNvbnN0cnVjdHMsIGFuZCBvdGhlciBzZW5zaXRpdmUgaW5mb3JtYXRpb24sIHdlIGhhdmUgaW1wbGVtZW50ZWQgc3RyaWN0IGludGVybmFsIGJpb3NlY3VyaXR5IHBvbGljaWVzLiBUaGVzZSBwb2xpY2llcyBlbnN1cmUgdGhhdCB3ZSBjYXJlZnVsbHkgbWFuYWdlIHdoaWNoIG1hdGVyaWFscyBleGlzdCBpbiBwaHlzaWNhbCBmb3JtIGFuZCB0aGVpciBleGFjdCBzdG9yYWdlIGxvY2F0aW9ucy4gXHJcbiAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICA8cD5cclxuICAgICAgICAgIEluIHRlcm1zIG9mIGRpZ2l0YWwgc2VjdXJpdHksIHdlIHN0cmljdGx5IHJlZ3VsYXRlIGFjY2VzcyB0byBvdXIgZGF0YSBzdG9yYWdlIHN5c3RlbXMgdGhyb3VnaCBhIGNvbWJpbmF0aW9uIG9mIG1lYXN1cmVzLiBXZSB1c2UgYSBzZWN1cmUsIHBhc3N3b3JkLXByb3RlY3RlZCBjbG91ZCBzeXN0ZW0sIGVuc3VyaW5nIG9ubHkgYXV0aG9yaXplZCB0ZWFtIG1lbWJlcnMgY2FuIGFjY2VzcyBzZW5zaXRpdmUgcHJvamVjdCBpbmZvcm1hdGlvbi4gQWNjZXNzIHRvIHRoZSBsYWIgaXMgbGltaXRlZCB0byB0ZWFtIG1lbWJlcnMgd2l0aCBpbnRlcm5hbCBrZXlzLCBhbmQgb3VyIHNlcnZlciBzZWN1cml0eSBpbmNsdWRlcyBzdHJpbmdlbnQgYWNjZXNzIHJpZ2h0cyBtYW5hZ2VtZW50LCBhbGxvd2luZyBvbmx5IGFwcHJvdmVkIGluZGl2aWR1YWxzIHRvIHZpZXcsIG1vZGlmeSwgb3Igc2hhcmUgdGhlIGRhdGEuIFRoZXNlIHNhZmVndWFyZHMgZW5zdXJlIHRoYXQgcHJvamVjdCBpbmZvcm1hdGlvbiByZW1haW5zIHByb3RlY3RlZCBhZ2FpbnN0IHVuYXV0aG9yaXplZCBhY2Nlc3MuIFxyXG4gICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgPHA+XHJcbiAgICAgICAgICBGdXJ0aGVybW9yZSwgd2UgZW5zdXJlIHRoYXQgYW55IHNlbnNpdGl2ZSBkYXRhIGdlbmVyYXRlZCBkdXJpbmcgb3VyIHByb2plY3QgaXMgb25seSBwdWJsaXNoZWQgaW4gdGhlIHN1cHBsZW1lbnRhcnkgbWF0ZXJpYWxzIHNlY3Rpb24sIHdoaWNoIGlzIGFjY2Vzc2libGUgZXhjbHVzaXZlbHkgdG8gdGhvc2Ugd2l0aCBhbiBvZmZpY2lhbCBpR0VNIGFjY291bnQuIEJ5IHRha2luZyB0aGlzIGFwcHJvYWNoLCB3ZSBjYW4gbGltaXQgdGhlIGF2YWlsYWJpbGl0eSBvZiBzZW5zaXRpdmUgaW5mb3JtYXRpb24gYW5kIHJlZHVjZSB0aGUgcmlzayBvZiBpdCBiZWluZyBtaXN1c2VkLiBcclxuICAgICAgICAgIDwvcD5cclxuICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgICA8SDUgdGV4dD1cIlN5bnRoZXRpYyBCaW9sb2d5IGFuZCBJbmZvcm1hdGlvbiBTaGFyaW5nXCI+PC9INT5cclxuICAgICAgICAgIDwvcD5cclxuICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgTWFuYWdpbmcgdGhlIHJpc2tzIGFzc29jaWF0ZWQgd2l0aCBzeW50aGV0aWMgYmlvbG9neSBhbmQgaW5mb3JtYXRpb24gc2hhcmluZyBpcyBhIGNvbXBsZXggY2hhbGxlbmdlLiBNYW55IG9mIHRoZSBzdHJhdGVnaWVzIHdlIHVzZSB0byBhZGRyZXNzIG90aGVyIHJpc2tzLCBzdWNoIGFzIFwiVW5hdXRob3JpemVkIEFjY2Vzc1wiIGFuZCBcIkR1YWwtVXNlIFBvdGVudGlhbCxcIiBhcmUgZXF1YWxseSByZWxldmFudCBpbiB0aGlzIGNvbnRleHQuIEZvciBpbnN0YW5jZSwgb3VyIHN0cmljdCBjb250cm9sIG92ZXIgYWNjZXNzIHRvIHNlbnNpdGl2ZSBpbmZvcm1hdGlvbiBhbmQgb3VyIHNhZmV0eSBtZWNoYW5pc21zIGJvdGggaGVscCBtaXRpZ2F0ZSB0aGUgcmlza3MgcG9zZWQgYnkgdGhlIGFjY2Vzc2liaWxpdHkgb2Ygc3ludGhldGljIGJpb2xvZ3kgdG9vbHMuIFxyXG4gICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgPHA+XHJcbiAgICAgICAgICBIb3dldmVyLCBpdCBpcyBpbXBvcnRhbnQgdG8gYWNrbm93bGVkZ2UgdGhhdCB0aGlzIHJpc2sgaXMgaW5oZXJlbnQgdG8gdGhlIGZpZWxkIG9mIHN5bnRoZXRpYyBiaW9sb2d5LiBUaGUgZWFzZSBvZiBvYnRhaW5pbmcgaW5mb3JtYXRpb24gYW5kLCB3aXRoIHRoZSByaWdodCBleHBlcnRpc2UsIGNvbWJpbmluZyB2YXJpb3VzIGNvbXBvbmVudHMgdG8gY3JlYXRlIHBvd2VyZnVsIGFuZCBwb3RlbnRpYWxseSBoYXphcmRvdXMgdG9vbHMgaXMgYSBmdW5kYW1lbnRhbCBjb25jZXJuLiBcclxuICAgICAgICAgIDwvcD5cclxuICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgVG8gYWRkcmVzcyB0aGlzLCB3ZSBhZGhlcmUgc3RyaWN0bHkgdG8gYWxsIHBvbGljaWVzIGFuZCByZWd1bGF0aW9ucyBzZXQgZm9ydGggYnkgaUdFTSwgb3VyIHVuaXZlcnNpdHksIHRoZSBHZXJtYW4gZ292ZXJubWVudCwgYW5kIHRoZSBFdXJvcGVhbiBVbmlvbi4gQnkgYWxpZ25pbmcgb3VyIHByYWN0aWNlcyB3aXRoIGV4aXN0aW5nIHJlZ3VsYXRpb25zIG9uIHN5bnRoZXRpYyBiaW9sb2d5LCB3ZSBhaW0gdG8gY29uZHVjdCBvdXIgd29yayByZXNwb25zaWJseSBhbmQgcmVkdWNlIHRoZSByaXNrcyBhc3NvY2lhdGVkIHdpdGggdGhlIGZpZWxkLiBcclxuICAgICAgICAgIDwvcD5cclxuICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgICA8SDUgdGV4dD1cIlB1YmxpYyBQZXJjZXB0aW9uIGFuZCBNaXNjb21tdW5pY2F0aW9uXCI+PC9INT5cclxuICAgICAgICAgIDwvcD5cclxuICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgT25lIG9mIHRoZSBjaGFsbGVuZ2VzIGluIHNjaWVudGlmaWMgcmVzZWFyY2gsIGVzcGVjaWFsbHkgaW4gZmllbGRzIGxpa2Ugc3ludGhldGljIGJpb2xvZ3ksIGlzIHRoYXQgYWR2YW5jZW1lbnRzIGNhbiBvZnRlbiBvdXRwYWNlIHB1YmxpYyB1bmRlcnN0YW5kaW5nIGFuZCBkaXNjb3Vyc2UuIFRoaXMgY2FuIGxlYWQgdG8gY29uZnVzaW9uLCBmZWFyLCBvciBtaXN0cnVzdCBpZiB0aGUgcmVzZWFyY2ggaXMgbm90IGNvbW11bmljYXRlZCBlZmZlY3RpdmVseS4gVG8gYWRkcmVzcyB0aGlzIGlzc3VlLCB3ZSBiZWxpZXZlIHRoYXQgc2NpZW50aWZpYyBwcm9ncmVzcyBzaG91bGQgb2NjdXIgaW4gY29uc3RhbnQgZGlhbG9ndWUgd2l0aCB0aGUgcHVibGljLiBcclxuICAgICAgICAgIDwvcD5cclxuICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgV2UgaGF2ZSBhZG9wdGVkIGEgc3Ryb25nIEh1bWFuIFByYWN0aWNlcyBhcHByb2FjaCB0byBlbnN1cmUgdHJhbnNwYXJlbmN5IGFuZCBmb3N0ZXIgcHVibGljIGVuZ2FnZW1lbnQuIE91ciBlZmZvcnRzIGluY2x1ZGUgaW5pdGlhdGl2ZXMgbGlrZSA8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZVdpdGhUYWJBbmRTY3JvbGwgKHtzY3JvbGxUb0lkOiAnY2YtbW9udGgnLCBwYXRoOiAnL2h1bWFuLXByYWN0aWNlcycsIHRhYklkOiAnbXVrb21vdmUnIH0pfT4gTVVLT21vdmUgPC9hPiAgYW5kIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlV2l0aFRhYkFuZFNjcm9sbCAoe3Njcm9sbFRvSWQ6ICdEZXIgVGV1dG8gcnVmdCEnLCBwYXRoOiAnL2h1bWFuLXByYWN0aWNlcycsIHRhYklkOiAndGV1dG9ydWZ0JyB9KX0+IFwiRGVyIFRldXRvIHJ1ZnQhXCIgPC9hPiAgLCB3aGVyZSB3ZSBoYXZlIHdvcmtlZCBkaXJlY3RseSB3aXRoIHN0dWRlbnRzLCBlZHVjYXRpb25hbCBpbnN0aXR1dGlvbnMsIGFuZCBwdWJsaWMgb3JnYW5pemF0aW9ucy4gVGhyb3VnaCB0aGVzZSBpbml0aWF0aXZlcywgd2UgYWltIHRvIGV4cGxhaW4gb3VyIHByb2plY3QsIGRpc2N1c3MgaXRzIGltcGxpY2F0aW9ucywgYW5kIGFuc3dlciBhbnkgcXVlc3Rpb25zLCB0aHVzIG1haW50YWluaW5nIGFuIG9wZW4gbGluZSBvZiBjb21tdW5pY2F0aW9uLiBCeSBjb2xsYWJvcmF0aW5nIHdpdGggYSB2YXJpZXR5IG9mIHB1YmxpYyBlbnRpdGllcywgaW5jbHVkaW5nIHBhdGllbnQgYXNzb2NpYXRpb25zLCBlZHVjYXRpb25hbCBwcm9ncmFtcywgYW5kIGNvbW11bml0eSBncm91cHMsIHdlIGVuc3VyZSB0aGF0IG91ciByZXNlYXJjaCByZW1haW5zIGFjY2Vzc2libGUgYW5kIHVuZGVyc3RhbmRhYmxlIHRvIGEgYnJvYWRlciBhdWRpZW5jZS4gIFxyXG4gICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgPHA+XHJcbiAgICAgICAgICBUaGlzIHByb2FjdGl2ZSBhcHByb2FjaCBoZWxwcyB1cyBhZGRyZXNzIHBvdGVudGlhbCBjb25jZXJucywgZGVteXN0aWZ5IG91ciByZXNlYXJjaCwgYW5kIGNvbnRyaWJ1dGUgdG8gYSBtb3JlIGluZm9ybWVkIHB1YmxpYyBwZXJjZXB0aW9uIG9mIHN5bnRoZXRpYyBiaW9sb2d5LiBcclxuICAgICAgICAgIDwvcD5cclxuICAgICAgICA8L1N1YmVzY3Rpb24+XHJcbiAgICAgICAgPC9TZWN0aW9uPlxyXG4gICAgICA8U2VjdGlvbiB0aXRsZT1cIkJpb2V0aGljc1wiIGlkPVwiQmlvZXRoaWNzXCI+XHJcbiAgICAgICAgICAgIDxkaXY+XHJcbiAgICAgICAgICAgICAgICA8cD5cclxuICAgICAgICAgICAgICAgICAgICBCaW9ldGhpY3MgaXMgYW4gaW50ZXJkaXNjaXBsaW5hcnkgZmllbGQgb2YgcmVzZWFyY2ggdGhhdCBhZGRyZXNzZXMgZXRoaWNhbCBpc3N1ZXMgcGVydGFpbmluZyB0byB0aGUgbGlmZSBzY2llbmNlcyBhbmQgbWVkaWNhbCByZXNlYXJjaC4gSXQgcGxheXMgYSBwaXZvdGFsIHJvbGUgaW4gY29udGVtcG9yYXJ5IHJlc2VhcmNoLCBwYXJ0aWN1bGFybHkgaW4gcHJvamVjdHMgdGhhdCBlbXBsb3kgaHVtYW4gc2FtcGxlcyBvciBkYXRhLiBUaGlzIGlzIGR1ZSB0byB0aGUgZmFjdCB0aGF0IGluIHRoZXNlIGNhc2VzLCB0aGUgcHJvdGVjdGlvbiBvZiB0aGUgcmlnaHRzIGFuZCBkaWduaXR5IG9mIHRoZSBwZW9wbGUgaW52b2x2ZWQgaXMgb2YgdGhlIHV0bW9zdCBpbXBvcnRhbmNlPFN1cFNjcm9sbExpbmsgbGFiZWw9XCIxNlwiLz4uIEluIG9yZGVyIHRvIGFzY2VydGFpbiB0aGUgbmVjZXNzaXR5IGZvciBhbiBldGhpY3MgYXBwbGljYXRpb24sIGFuIGludGVydmlldyB3YXMgY29uZHVjdGVkIHdpdGggPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VzQW5kT3BlblRhYignYmVyZW5zJywgJy9odW1hbi1wcmFjdGljZXMnKX0+RXZhLU1hcmlhIEJlcmVuczwvYT4sIHRoZSBzY2llbnRpZmljIGRpcmVjdG9yIG9mIHRoZSBvZmZpY2Ugb2YgdGhlIEV0aGljcyBDb21taXR0ZWUgYXQgQmllbGVmZWxkIFVuaXZlcnNpdHksIGFzIHBhcnQgb2YgdGhlIGN1cnJlbnQgcmVzZWFyY2ggcHJvamVjdC4gRm9sbG93aW5nIGEgY29tcHJlaGVuc2l2ZSByZXZpZXcsIGl0IHdhcyBjb25jbHVkZWQgdGhhdCBhbiBldGhpY3MgYXBwbGljYXRpb24gd2FzIG5vdCBuZWNlc3NhcnkgZm9yIHRoZSBzcGVjaWZpYyByZXNlYXJjaCBwcm9qZWN0LiBOZXZlcnRoZWxlc3MsIGEgY29tcHJlaGVuc2l2ZSBwYXRpZW50IGNvbnNlbnQgZm9ybSB3YXMgZGV2ZWxvcGVkIGluIGNvbmp1bmN0aW9uIHdpdGggRXZhLU1hcmlhIEJlcmVucyB0byBndWFyYW50ZWUgdGhhdCB0aGUgZG9ub3JzIG9mIHRoZWlyIHNhbXBsZXMgYXJlIGFkZXF1YXRlbHkgaW5mb3JtZWQgYW5kIHByb3ZpZGUgdGhlaXIgY29uc2VudCBvZiB0aGVpciBvd24gdm9saXRpb24uIFRoZSBkb2N1bWVudCBndWFyYW50ZWVzIHRoYXQgYWxsIHBlcnRpbmVudCBpbmZvcm1hdGlvbiByZWdhcmRpbmcgc2FtcGxlIGNvbGxlY3Rpb24sIHV0aWxpc2F0aW9uIGFuZCBzdG9yYWdlIGlzIHByb3ZpZGVkIGluIGFuIGludGVsbGlnaWJsZSBmb3JtYXQuIEZ1cnRoZXJtb3JlLCBhbiBpbnRlcnZpZXcgd2FzIGNvbmR1Y3RlZCB3aXRoIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlc0FuZE9wZW5UYWIoJ3RpbW0nLCAnL2h1bWFuLXByYWN0aWNlcycpfT5Eci4gVGltbSBXZWJlcjwvYT4sIGEgcmVwcmVzZW50YXRpdmUgb2YgdGhlIGJpb2JhbmssIHRvIGRpc2N1c3MgdGhlIHRvcGljIG9mIGJpb2V0aGljcyBpbiBncmVhdGVyIGRlcHRoLiBEdXJpbmcgdGhlIGNvdXJzZSBvZiB0aGUgaW50ZXJ2aWV3cywgdGhlIGV0aGljYWwgYXNwZWN0cyBvZiBzYW1wbGUgc3RvcmFnZSBhbmQgdXRpbGlzYXRpb24gd2l0aGluIHRoZSBiaW9iYW5rIHdlcmUgZGlzY3Vzc2VkIGluIGRldGFpbC4gUGFydGljdWxhciBhdHRlbnRpb24gd2FzIHBhaWQgdG8gdGhlIHJlc3BvbnNpYmxlIGhhbmRsaW5nIGFuZCBwcm90ZWN0aW9uIG9mIHRoZSByaWdodHMgb2YgdGhlIHRlc3Qgc3ViamVjdHMuIFRoZSBkaXNjdXNzaW9uIG9mIGJpb2V0aGljcyBpbiBib3RoIGludGVydmlld3MgZW1waGFzaXNlcyB0aGUgcmVsZXZhbmNlIG9mIGV0aGljYWwgcHJpbmNpcGxlcyBmb3IgcmVzZWFyY2ggYW5kIGVuc3VyZXMgdGhhdCBpdCBpcyBjb25kdWN0ZWQgaW4gYWNjb3JkYW5jZSB3aXRoIHRoZSBoaWdoZXN0IGV0aGljYWwgc3RhbmRhcmRzLlxyXG4gICAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8U3ViZXNjdGlvbiB0aXRsZT1cIkdlbmUgVGhlcmFweVwiIGlkPVwiQmlvZXRoaWNzMVwiPlxyXG4gICAgICAgICAgPGRpdj5cclxuICAgICAgICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgICAgICAgVGhlIHBvdGVudGlhbCBvZiBnZW5lIHRoZXJhcHkgdG8gdHJlYXQgZ2VuZXRpYyBkaXNlYXNlcyBpcyBwcm9taXNpbmcsIGJ1dCBpdCBpcyBhbHNvIGFzc29jaWF0ZWQgd2l0aCBzaWduaWZpY2FudCBldGhpY2FsIGlzc3Vlcy4gT25lIG9mIHRoZSBwcmluY2lwYWwgY2hhbGxlbmdlcyBpcyBlbnN1cmluZyB0aGUgc2FmZXR5IG9mIHRoZSBwcm9jZWR1cmUgYW5kIHRoZSBwb3RlbnRpYWwgZm9yIHVuZm9yZXNlZW4gbG9uZy10ZXJtIGNvbnNlcXVlbmNlcy4gU3VjaCBjb25zZXF1ZW5jZXMgbWF5IG9ubHkgYmVjb21lIGFwcGFyZW50IHllYXJzIGFmdGVyIHRoZSBnZW5ldGljIGludGVydmVudGlvbiBoYXMgdGFrZW4gcGxhY2UuIFRoZSBtb2RpZmljYXRpb24gb2YgdGhlIGdlcm1saW5lLCB3aGljaCBhZmZlY3RzIG5vdCBvbmx5IHRoZSBpbmRpdmlkdWFsIGJ1dCBhbHNvIGZ1dHVyZSBnZW5lcmF0aW9ucywgaXMgYSBwYXJ0aWN1bGFybHkgc2Vuc2l0aXZlIGlzc3VlLiBUaGlzIGdpdmVzIHJpc2UgdG8gdGhlIHF1ZXN0aW9uIG9mIHRoZSBleHRlbnQgdG8gd2hpY2ggdGhlIGRlY2lzaW9ucyBtYWRlIHRvZGF5IHdpbGwgaW5mbHVlbmNlIGZ1dHVyZSBnZW5lcmF0aW9ucyB3aXRob3V0IHRoZWlyIGNvbnNlbnQsIHRoZXJlYnkgamVvcGFyZGlzaW5nIGludGVyZ2VuZXJhdGlvbmFsIGp1c3RpY2U8U3VwU2Nyb2xsTGluayBsYWJlbD1cIjE3XCIvPi4gQW5vdGhlciBldGhpY2FsIGlzc3VlIGlzIHRoZSBwb3RlbnRpYWwgZm9yIG1pc3VzZSBmb3IgZXVnZW5pYyBwdXJwb3Nlcy4gV2hpbGUgdGhlIGN1cnJlbnQgZm9jdXMgaXMgb24gY29tYmF0aW5nIGRpc2Vhc2UsIGZ1dHVyZSBhcHBsaWNhdGlvbnMgY291bGQgYmUgYWltZWQgYXQgJ29wdGltaXNpbmcnIGh1bWFuIHRyYWl0cywgd2hpY2ggY291bGQgcmVzdWx0IGluIGEgd29yc2VuaW5nIG9mIHNvY2lhbCBpbmVxdWFsaXRpZXMuIEFjY2VzcyB0byBnZW5lIHRoZXJhcHkgaXMgYWxzbyBhIHNpZ25pZmljYW50IGlzc3VlLiBIaWdoIGNvc3RzIGNvdWxkIGxpbWl0IGFjY2VzcyB0byB3ZWFsdGh5IHBvcHVsYXRpb24gZ3JvdXBzLCB3aGljaCB3b3VsZCByZWluZm9yY2UgZXhpc3RpbmcgaW5lcXVhbGl0aWVzPFN1cFNjcm9sbExpbmsgbGFiZWw9XCIxOFwiLz4uIFRoZSBpc3N1ZSBvZiBpbmZvcm1lZCBjb25zZW50IGlzIGFsc28gYSBrZXkgYXNwZWN0LiBNYW55IHBhdGllbnRzIGRvIG5vdCBoYXZlIHRoZSBuZWNlc3Nhcnkga25vd2xlZGdlIHRvIGZ1bGx5IHVuZGVyc3RhbmQgdGhlIGNvbXBsZXggcmlza3MsIHdoaWNoIHJhaXNlcyBldGhpY2FsIHF1ZXN0aW9ucyBhYm91dCB0aGVpciBkZWNpc2lvbi1tYWtpbmcgY2FwYWNpdHkuIE92ZXJhbGwsIHRoZSBkZWJhdGUgYXJvdW5kIGdlbmUgdGhlcmFweSBoaWdobGlnaHRzIHRoYXQgZXRoaWNhbCBjb25zaWRlcmF0aW9ucyBzdWNoIGFzIHNhZmV0eSwganVzdGljZSBhbmQgcGF0aWVudCByaWdodHMgbmVlZCB0byBiZSBjb25zaWRlcmVkIGFsb25nc2lkZSBzY2llbnRpZmljIHByb2dyZXNzPFN1cFNjcm9sbExpbmsgbGFiZWw9XCIxOVwiLz4uICBcclxuICAgICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvU3ViZXNjdGlvbj5cclxuICAgICAgICA8U3ViZXNjdGlvbiB0aXRsZT1cIlByaW1hcnkgQ2VsbHNcIiBpZD1cIkJpb2V0aGljczJcIj5cclxuICAgICAgICAgIDxkaXY+XHJcbiAgICAgICAgICAgIDxINCB0ZXh0PVwiSW50cm9kdWN0aW9uIG9mIHByaW1hcnkgY3VsdHVyZXNcIj48L0g0PlxyXG4gICAgICAgICAgICA8cD5cclxuICAgICAgICAgICAgQSBwcmltYXJ5IGN1bHR1cmUgaXMgZGVmaW5lZCBhcyBhIGNlbGwgY3VsdHVyZSB0aGF0IGlzIGlzb2xhdGVkIGRpcmVjdGx5IGZyb20gdGhlIHRpc3N1ZSBvZiBhbiBvcmdhbmlzbS4gSW4gb3VyIGNhc2UsIHRoZSBvcmdhbmlzbSBpcyBodW1hbi4gVGhlIGNlbGxzIGFyZSB0aGVuIGN1bHRpdmF0ZWQgaW4gYSBjb250cm9sbGVkIGVudmlyb25tZW50LCBuYW1lbHkgYW4gUzIgbGFib3JhdG9yeTxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiMjBcIi8+LiBQcmltYXJ5IGN1bHR1cmVzIGFyZSBhIGZ1bmRhbWVudGFsIGJpb21lZGljYWwgcmVzZWFyY2ggdG9vbCwgd2lkZWx5IHJlZ2FyZGVkIGFzIGluZGlzcGVuc2FibGUgZHVlIHRvIHRoZWlyIGNhcGFjaXR5IGZvciByZWFsaXN0aWMgbW9kZWxsaW5nIG9mIGNvbXBsZXggY2VsbCBpbnRlcmFjdGlvbnMuIFByaW1hcnkgY2VsbHMgYXJlIGRlcml2ZWQgZGlyZWN0bHkgZnJvbSB0aGUgdGlzc3VlIG9mIGFuIG9yZ2FuaXNtIGFuZCwgYXMgYSBjb25zZXF1ZW5jZSwgdGhleSBlc3NlbnRpYWxseSByZXRhaW4gdGhlaXIgb3JpZ2luYWwgcHJvcGVydGllcy4gQ29uc2VxdWVudGx5LCB0aGV5IG1pcnJvciB0aGUgYXV0aGVudGljIGNvbmRpdGlvbnMgb2YgdGhlIHRhcmdldCB0aXNzdWUsIHdoaWNoIGlzIHZpdGFsIGZvciBhY2N1cmF0ZWx5IGFzc2Vzc2luZyB0aGUgaW1wYWN0IG9mIGEgdGhlcmFwZXV0aWMgYWdlbnQuIEluIGNvbnRyYXN0LCBIRUsgY2VsbHMgcmVwcmVzZW50IHRyYW5zZm9ybWVkIGNlbGwgbGluZXMgdGhhdCBleGhpYml0IHBoeXNpb2xvZ2ljYWwgcHJvcGVydGllcyBkaXN0aW5jdCBmcm9tIHRob3NlIG9mIHRhcmdldCBjZWxscyBpbiB0aGUgaHVtYW4gYm9keS4gVGhlIGVmZmVjdCBvZiBhIHRoZXJhcGV1dGljIGFnZW50IGlzIHR5cGljYWxseSBsaW1pdGVkIHRvIGEgc3BlY2lmaWMgY2VsbCB0eXBlLiBUaGUgaW52ZXN0aWdhdGlvbiBvZiBjZWxsLXNwZWNpZmljIGVmZmVjdHMgYW5kIHJlYWN0aW9ucyBvZiBhbiBhY3RpdmUgc3Vic3RhbmNlIGlzIGZlYXNpYmxlIHdpdGggdGhlIHVzZSBvZiBwcmltYXJ5IGNlbGxzLCBhcyB0aGVzZSBwb3NzZXNzIHRoZSBmdW5jdGlvbmFsIGNoYXJhY3RlcmlzdGljcyBpbmhlcmVudCB0byB0aGUgY2VsbCB0eXBlIHVuZGVyIGNvbnNpZGVyYXRpb24uIEFsdGhvdWdoIEhFSyBjZWxscyBhcmUgcmVsYXRpdmVseSBzdHJhaWdodGZvcndhcmQgdG8gY3VsdGl2YXRlLCB0aGV5IGFyZSBsZXNzIHJlcHJlc2VudGF0aXZlIG9mIGEgbnVtYmVyIG9mIHRpc3N1ZSB0eXBlcyBhbmQgbWF5IGFjdGl2YXRlIG90aGVyIHNpZ25hbGxpbmcgcGF0aHdheXMuIFRoZSBhdXRoZW50aWNpdHkgb2YgdGhlIHJlY2VwdG9ycyBhbmQgc2lnbmFsbGluZyBwYXRod2F5cyBpcyBndWFyYW50ZWVkLCBhcyBwcmltYXJ5IGNlbGxzIHNob3cgdGhlIG5hdHVyYWwgZXhwcmVzc2lvbiBvZiByZWNlcHRvcnMsIGlvbiBjaGFubmVscyBhbmQgb3RoZXIgY2VsbHVsYXIgbWVjaGFuaXNtcy4gSEVLIGNlbGxzIGFyZSBvZnRlbiBnZW5ldGljYWxseSBtb2RpZmllZCB0byBleHByZXNzIHNwZWNpZmljIHJlY2VwdG9ycywgd2hpY2ggY2FuIGJlIHVzZWZ1bCBmb3Igc2ltcGxlIHRlc3Qgc3lzdGVtcy4gSG93ZXZlciwgdGhpcyBkb2VzIG5vdCByZWZsZWN0IHRoZSBjb21wbGV4IGVudmlyb25tZW50IG9mIGEgcmVhbCB0aXNzdWUuIEdpdmVuIHRoZSBzZW5zaXRpdml0eSBvZiBwcmltYXJ5IGN1bHR1cmVzIHRvIGVudmlyb25tZW50YWwgaW5mbHVlbmNlcywgdGh1cyByZXN1bHRpbmcgaW4gaGlnaGVyIHJpc2sgb2YgYSBjb250YW1pbmF0aW9uLCBpdCBpcyBpbXBlcmF0aXZlIHRoYXQgcmVzZWFyY2hlcnMgZW1wbG95IHNwZWNpYWwgc2FmZXR5IG1lYXN1cmVzIHRvIGVuc3VyZSB0aGUgc2FmZXR5IG9mIHRoZW1zZWx2ZXMgYW5kIHRoZSBpbnRlZ3JpdHkgb2YgdGhlIGNlbGxzLiBQcmltYXJ5IGN1bHR1cmVzIGFyZSBlbXBsb3llZCBleHRlbnNpdmVseSBpbiB0aGUgZGV2ZWxvcG1lbnQgb2YgdmFjY2luZXMsIGNhbmNlciByZXNlYXJjaCBhbmQgdGhlIGludmVzdGlnYXRpb24gb2YgYmFzaWMgY2VsbCBwcm9jZXNzZXMuIFxyXG4gICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgIDxINCB0ZXh0PVwiRXRoaWNzIGluIHdvcmsgd2l0aCBwcmltYXJ5IGN1bHR1cmVzXCI+PC9IND5cclxuICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgICAgICBUaGUgdGVybSAnZXRoaWNzJyBpcyB1c2VkIHRvIGRlc2NyaWJlIHRoZSBleGFtaW5hdGlvbiBvZiBtb3JhbCBwcmluY2lwbGVzIHRoYXQgZGV0ZXJtaW5lIHRoZSBiZWhhdmlvdXIgb2YgaW5kaXZpZHVhbHMgb3IgZ3JvdXBzPFN1cFNjcm9sbExpbmsgbGFiZWw9XCIyMVwiLz4uIEluIGEgc2NpZW50aWZpYyBjb250ZXh0LCB0aGUgdGVybSAnZXRoaWNzJyBlbmNvbXBhc3NlcyB0aGUgZXhhbWluYXRpb24gb2YgdGhlIG1vcmFsIGp1c3RpZmlhYmlsaXR5IG9mIGFjdGlvbnMgYW5kIGRlY2lzaW9ucywgcGFydGljdWxhcmx5IHdpdGggcmVnYXJkIHRvIHRoZSB3ZWxmYXJlIG9mIGxpdmluZyBiZWluZ3MgYW5kIHRoZSByZXNwb25zaWJsZSB1c2Ugb2YgcmVzb3VyY2VzPFN1cFNjcm9sbExpbmsgbGFiZWw9XCIyMlwiLz4uIFRoZSBpc29sYXRpb24gb2YgcHJpbWFyeSBjZWxscyBmcm9tIGxpdmluZyBvcmdhbmlzbXMgcmFpc2VzIGV0aGljYWwgcXVlc3Rpb25zLCBwYXJ0aWN1bGFybHkgaW4gdGhlIGNhc2Ugb2YgaHVtYW4gb3IgYW5pbWFsIHRpc3N1ZS4gSW4gdGhlIGNvbnRleHQgb2YgcmVzZWFyY2ggd2l0aCBhbmltYWwgcHJpbWFyeSBjZWxscywgY2FyZWZ1bCBjb25zaWRlcmF0aW9uIG11c3QgYmUgZ2l2ZW4gdG8gdGhlIG5lZWQgZm9yIGFuaW1hbCBzdWZmZXJpbmcgYW5kIHRoZSBwb3RlbnRpYWwgYmVuZWZpdHMgb2YgdGhlIHJlc2VhcmNoPFN1cFNjcm9sbExpbmsgbGFiZWw9XCIyM1wiLz4uIEFuIGV0aGljYWwgZGlsZW1tYSBmcmVxdWVudGx5IGFyaXNlcyBmcm9tIHRoZSBmYWN0IHRoYXQgcHJpbWFyeSBjZWxscyBvZmZlciB0aGUgbW9zdCBtZWFuaW5nZnVsIGRhdGEgZnJvbSBhIGJpb2xvZ2ljYWwgc3RhbmRwb2ludCwgeWV0IHRoZWlyIHByb2R1Y3Rpb24gaXMgYXNzb2NpYXRlZCB3aXRoIGNoYWxsZW5nZXMuIEluIHRoaXMgY29udGV4dCwgdGhlIG5lY2Vzc2l0eSBvZiBwcmltYXJ5IGNlbGwgY3VsdHVyZXMgaXMgY2FsbGVkIGludG8gcXVlc3Rpb24sIGFuZCB0aGUgcHJvbW90aW9uIG9mIGFsdGVybmF0aXZlIG1ldGhvZHMsIHN1Y2ggYXMgYXJ0aWZpY2lhbGx5IHByb2R1Y2VkIHRpc3N1ZXMgb3Igb3JnYW5vaWRzLCBpcyBhZHZvY2F0ZWQgd2hlcmUgZmVhc2libGUuIEl0IGlzIG9mIGNydWNpYWwgaW1wb3J0YW5jZSB0byBlbXBoYXNpemUgdGhlIG5lY2Vzc2l0eSBvZiBldGhpY2FsIHJlc3BvbnNpYmlsaXR5IGluIHRoZSBjb2xsZWN0aW9uIG9mIHByaW1hcnkgY3VsdHVyZXMuIEl0IGlzIG9mIHRoZSB1dG1vc3QgaW1wb3J0YW5jZSB0aGF0IHRoZSBwcm9jZWR1cmUgaXMgY2FycmllZCBvdXQgd2l0aCBjb25zaWRlcmF0aW9uIGZvciB0aGUgcmlnaHRzLCBhbmQgcGFydGljdWxhcmx5IHRoZSB3ZWxsLWJlaW5nIG9mIHRoZSBkb25vci4gVGhlIHJlbW92YWwgb2YgY2VsbHMgb3IgdGlzc3VlIG11c3QgYmUgbWVkaWNhbGx5IGp1c3RpZmlhYmxlIGFuZCwgbW9yZW92ZXIsIGV0aGljYWxseSBqdXN0aWZpYWJsZSBpbiBldmVyeSBjYXNlLiBUbyB0aGlzIGVuZCwgdGhlIHBvdGVudGlhbCBmb3IgcmVzZWFyY2ggdXNlIGFuZCB0aGUgcG9zc2libGUgcmlza3MgYW5kIGJ1cmRlbnMgZm9yIHRoZSBkb25vciBtdXN0IGJlIHdlaWdoZWQgYWdhaW5zdCBlYWNoIG90aGVyIHRvIGVuc3VyZSBjYXJlZnVsIGNvbnNpZGVyYXRpb24uIEhvd2V2ZXIsIGl0IGlzIGFsc28gcGFydGljdWxhcmx5IGltcG9ydGFudCB0byBlbnN1cmUgdGhhdCB0aGUgZG9ub3IgaXMgaW52b2x2ZWQgaW4gdGhlIGVudGlyZSBwcm9jZXNzIGFuZCBpcyBhYmxlIHRvIG1ha2UgYW4gaW5mb3JtZWQgZGVjaXNpb24uIFRoZSBwdXJwb3NlIG9mIHRoZSByZXNlYXJjaCwgdGhlIHVzZSBvZiB0aGUgY2VsbHMgYW5kIHBvc3NpYmxlIGNvbnNlcXVlbmNlcyBtdXN0IGFsc28gYmUgbWFkZSB0cmFuc3BhcmVudCBhdCBhbGwgdGltZXMuIFxyXG4gICAgICAgICAgICAgICAgVGhlIG9idGFpbmluZyBvZiBpbmZvcm1lZCBjb25zZW50IHJlcHJlc2VudHMgYSBmdW5kYW1lbnRhbCBhc3BlY3Qgb2YgZXRoaWNhbCBwcmFjdGljZSBpbiB0aGUgY29sbGVjdGlvbiBvZiBwcmltYXJ5IGNlbGxzLiBUaGlzIHByb2Nlc3MgbXVzdCBlbmNvbXBhc3Mgbm90IG9ubHkgYSBmb3JtYWwgY29uc2VudCBwcm9jZWR1cmUsIGJ1dCBhbHNvIHRoZSBwcm92aXNpb24gb2YgY29tcHJlaGVuc2l2ZSBpbmZvcm1hdGlvbiB0byBkb25vcnMgcmVnYXJkaW5nIHRoZSBjb2xsZWN0aW9uLCB1dGlsaXNhdGlvbiBhbmQgcHJvc3BlY3RpdmUgZnV0dXJlIGFwcGxpY2F0aW9ucyBvZiB0aGUgY2VsbHMuIFRoZSBhY3Qgb2YgY29uc2VudCBtdXN0IGJlIGdpdmVuIGZyZWVseSBhbmQgd2l0aG91dCB1bmR1ZSBpbmZsdWVuY2UsIGFuZCBkb25vcnMgbXVzdCBiZSBmdWxseSBhd2FyZSBvZiB0aGUgY29uc2VxdWVuY2VzIG9mIHRoZWlyIHBhcnRpY2lwYXRpb24uIEZ1cnRoZXJtb3JlLCBkb25vcnMgbXVzdCBiZSBncmFudGVkIHRoZSByaWdodCB0byByZXZva2UgdGhlaXIgY29uc2VudCBhdCBhbnkgdGltZSB3aXRob3V0IGNvbnNlcXVlbmNlLiBQcmlvciB0byB0aGUgY29sbGVjdGlvbiBvZiBjZWxscywgYSBjb21wcmVoZW5zaXZlIGRpc2N1c3Npb24gaXMgaGVsZCB3aXRoIHRoZSBkb25vciwgZHVyaW5nIHdoaWNoIGFsbCBwZXJ0aW5lbnQgZGV0YWlscyBhcmUgZWx1Y2lkYXRlZCBhbmQgYW55IHF1ZXJpZXMgb3IgY29uY2VybnMgdGhleSBtYXkgaGF2ZSwgYXJlIGFkZHJlc3NlZC4gVGhpcyBndWFyYW50ZWVzIHRoYXQgdGhlIGRvbm9yIGlzIGFkZXF1YXRlbHkgaW5mb3JtZWQgYW5kIGlzIHRodXMgYWJsZSB0byBtYWtlIGFuIGF1dG9ub21vdXMgZGVjaXNpb24gYmFzZWQgb24gYSBjb21wcmVoZW5zaXZlIHVuZGVyc3RhbmRpbmcgb2YgdGhlIHByb2NlZHVyZS4gXHJcbiAgICAgICAgICAgICAgICBUaGUgcHJvdGVjdGlvbiBvZiBwcml2YWN5IGFuZCBjb25maWRlbnRpYWxpdHkgaXMgb2YgcGFyYW1vdW50IGltcG9ydGFuY2Ugd2hlbiB3b3JraW5nIHdpdGggcHJpbWFyeSBjdWx0dXJlcy4gR2l2ZW4gdGhhdCBwcmltYXJ5IGN1bHR1cmVzIGFyZSBwcmVkb21pbmFudGx5IGh1bWFuIHRpc3N1ZSwgdGhleSBjb250YWluIGdlbmV0aWMgaW5mb3JtYXRpb24gYW5kIG90aGVyIHBlcnNvbmFsIGRhdGEgdGhhdCBpcyBzZW5zaXRpdmUgYW5kIGRlc2VydmluZyBvZiBwcm90ZWN0aW9uLiBJdCBpcyB0aGVyZWZvcmUgb2YgZ3JlYXQgaW1wb3J0YW5jZSB0aGF0IHRoZSBkYXRhIGlzIGFub255bWl6ZWQgYW5kIGtlcHQgc3RyaWN0bHkgY29uZmlkZW50aWFsIGluIG9yZGVyIHRvIHByb3RlY3QgdGhlIGlkZW50aXR5IG9mIHRoZSBkb25vci4gXHJcbiAgICAgICAgICAgICAgICBFdmVyeSBwZXJzb24gd2hvIGhhcyBhY2Nlc3MgdG8gdGhlIGRhdGEgb3Igc2FtcGxlcyBtdXN0IGJlIG9ibGlnZWQgdG8gY29tcGx5IHdpdGggY29uZmlkZW50aWFsaXR5IHN0YW5kYXJkcy4gSXQgbXVzdCBiZSBlbnN1cmVkIHRoYXQgYWxsIGxlZ2FsIHJlcXVpcmVtZW50cyBmb3IgZGF0YSBwcm90ZWN0aW9uIGFyZSBtZXQsIGluY2x1ZGluZyBjb21wbGlhbmNlIHdpdGggZGF0YSBwcm90ZWN0aW9uIGxhd3Mgc3VjaCBhcyB0aGUgPGEgaHJlZj1cImh0dHBzOi8vZ2Rwci1pbmZvLmV1L1wiPkdEUFI8L2E+IGluIHRoZSBFVS4gXHJcbiAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgPEg0IHRleHQ9XCJTYWZldHkgYXNwZWN0cyB3aGVuIHdvcmtpbmcgd2l0aCBwcmltYXJ5IGN1bHR1cmVzIFwiPjwvSDQ+XHJcbiAgICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgICBXaGVuIHdvcmtpbmcgd2l0aCBwcmltYXJ5IGN1bHR1cmVzLCB0aGVyZSBpcyBhIHJpc2sgdGhhdCB0aGUgY2VsbHMgbWF5IGJlIHBvdGVudGlhbGx5IGluZmVjdGlvdXMgc2FtcGxlcyBvciBjb250YW1pbmF0ZWQuIFRoZXJlZm9yZSwgaXQgaXMgb2YgdGhlIHV0bW9zdCBpbXBvcnRhbmNlIHRvIGFkaGVyZSB0byBzdHJpY3QgYmlvbG9naWNhbCBzYWZldHkgbWVhc3VyZXMgaW4gb3JkZXIgdG8gbWluaW1pemUgdGhlIHJpc2sgb2YgZXhwb3N1cmUgdG8gZGFuZ2Vyb3VzIHBhdGhvZ2Vucy4gVGhpcyBpbmNsdWRlcyB0aGUgdXNlIG9mIHBlcnNvbmFsIHByb3RlY3RpdmUgZXF1aXBtZW50LCB3b3JraW5nIGluIGEgYmlvc2FmZXR5IGNhYmluZXQgYW5kIGFkaGVyaW5nIHRvIGRlY29udGFtaW5hdGlvbiBwcm90b2NvbHMuXHJcbiAgICAgICAgICAgIFRoZSBvdmVyYXJjaGluZyBvYmplY3RpdmUgaXMgdGhlIHNhZmVndWFyZGluZyBvZiBsYWJvcmF0b3J5IHN0YWZmLiBUaGlzIGlzIGFjaGlldmVkIHRocm91Z2ggdGhlIHV0aWxpemF0aW9uIG9mIHBlcnNvbmFsIHByb3RlY3RpdmUgZXF1aXBtZW50LCBlbmNvbXBhc3NpbmcgZ2xvdmVzLCBsYWIgY29hdHMgYW5kIHNhZmV0eSBnb2dnbGVzLCBpbiBhZGRpdGlvbiB0byB0aGUgcHJvdmlzaW9uIG9mIHRyYWluaW5nIGluIHBlcnRpbmVudCBzYWZldHkgcHJvdG9jb2xzLiBcclxuICAgICAgICAgICAgSW4gb3JkZXIgdG8gcHJldmVudCB0aGUgcmVsZWFzZSBvZiBwb3RlbnRpYWxseSBoYXphcmRvdXMgbWF0ZXJpYWwsIGl0IGlzIGltcGVyYXRpdmUgdGhhdCBiaW9sb2dpY2FsIHdhc3RlIGlzIGRpc3Bvc2VkIG9mIGluIGFjY29yZGFuY2Ugd2l0aCB0aGUgZXN0YWJsaXNoZWQgcmVndWxhdG9yeSBmcmFtZXdvcmsuIFRoZSB3YXN0ZSBpcyBzdWJqZWN0ZWQgdG8gcmlnb3JvdXMgc3RlcmlsaXNhdGlvbiBieSBhdXRvY2xhdmluZyBhbmQgc3Vic2VxdWVudGx5IHJlbmRlcmVkIHNhZmUgZm9yIGRpc3Bvc2FsIGluIHRoZSBkZXNpZ25hdGVkIGFuZCBsYWJlbGxlZCBjb250YWluZXJzLiBcclxuICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICA8SDQgdGV4dD1cIlJlZ3VsYXRvcnkgZnJhbWV3b3JrXCI+PC9IND5cclxuICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgIFRoZSBmaWVsZCBvZiBwcmltYXJ5IGN1bHR1cmUgcmVzZWFyY2ggaXMgc3ViamVjdCB0byBhIHBsZXRob3JhIG9mIGxlZ2FsIHJlZ3VsYXRpb25zIGFuZCBndWlkZWxpbmVzIGF0IGJvdGggdGhlIG5hdGlvbmFsIGFuZCBpbnRlcm5hdGlvbmFsIGxldmVscy4gVGhlc2UgcmVndWxhdGlvbnMgZGljdGF0ZSB0aGUgbWFubmVyIGluIHdoaWNoIHByaW1hcnkgY3VsdHVyZXMgbWF5IGJlIG9idGFpbmVkLCB1c2VkLCBhbmQgZGlzcG9zZWQgb2YuIFRoZXkgZW5jb21wYXNzIHJlZ3VsYXRpb25zIHBlcnRhaW5pbmcgdG8gdGhlIHByb3RlY3Rpb24gb2YgZG9ub3JzLCB0aGUgc2VjdXJlIGhhbmRsaW5nIG9mIGJpb2xvZ2ljYWwgbWF0ZXJpYWwsIGFuZCB0aGUgZXRoaWNhbCByZXNwb25zaWJpbGl0eSB0b3dhcmRzIHRoZSBjZWxscyBhbmQgdGhlaXIgb3JpZ2luLiBJdCBpcyBvZiBwYXJhbW91bnQgaW1wb3J0YW5jZSB0aGF0IGFsbCBsYWJvcmF0b3J5IHByYWN0aWNlcyBhbGlnbiB3aXRoIHRoZXNlIHJlZ3VsYXRpb25zLiBcclxuICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9TdWJlc2N0aW9uPlxyXG4gICAgICAgIDxTdWJlc2N0aW9uIHRpdGxlPVwiQ29uc2VudCBhbmQgR3VpZGVsaW5lc1wiIGlkPVwiQmlvZXRoaWNzM1wiPlxyXG4gICAgICAgICAgPHA+PC9wPlxyXG4gICAgICAgICAgPHA+V2hlbiB3b3JraW5nIHdpdGggcHJpbWFyeSBjdWx0dXJlcywgaXQgaXMgZXh0cmVtZWx5IGltcG9ydGFudCB0byBjb25zaWRlciB0aGUgYmlvZXRoaWNhbCBhc3BlY3RzIG9mIHRoZSBwcm9qZWN0LiBUbyBhZGRyZXNzIHRoaXMsIHdlIHNhdCBkb3duIHdpdGggdGhlIEV0aGljcyBPZmZpY2VyIGF0IEJpZWxlZmVsZCBVbml2ZXJzaXR5LCBEci4gQmVyZW5zLCBhbmQgZGlzY3Vzc2VkIHRoZSBtYXR0ZXIgd2l0aCBoZXIuIEZyb20gdGhpcyBleGNoYW5nZSwgd2UgZ2FpbmVkIHRoZSBmb2xsb3dpbmcgaW5zaWdodHMuXHJcbiBPbiB0aGUgb25lIGhhbmQsIGhhdmluZyBhIHBhdGllbnQgY29uc2VudCBmb3JtIGlzIGNydWNpYWwsIGFzIGl0IHByb3ZpZGVzIHRoZSBkb25vcnMgb2YgdGhlIHByaW1hcnkgY2VsbHMgd2l0aCBhIHNlbnNlIG9mIHNlY3VyaXR5LCBidXQgbW9yZSBpbXBvcnRhbnRseSwgaXQgZ2l2ZXMgdGhlbSBkZXRhaWxlZCBhbmQgcHJlY2lzZSBpbmZvcm1hdGlvbiBhYm91dCB3aGF0IHdpbGwgYmUgZG9uZSB3aXRoIHRoZSBkYXRhLCB3aGV0aGVyIGl0IGJlIHJlZ3VsYXIgcGF0aWVudCBkYXRhIG9yIGJpb21hdGVyaWFscy4gQWRkaXRpb25hbGx5LCBpdCBiZWNhbWUgY2xlYXIgdGhhdCBpdCBpcyBzaWduaWZpY2FudGx5IGVhc2llciBmb3IgdXMgdG8gZXN0YWJsaXNoIGd1aWRlbGluZXMgdG8gZm9sbG93LiBXZSBkZWNpZGVkIHRvIGludGVncmF0ZSB0aGlzIGFwcHJvYWNoIGludG8gb3VyIHByb2plY3QuIFxyXG4gQXMgYSByZXN1bHQsIHdlIGNyZWF0ZWQgYSBwYXRpZW50IGNvbnNlbnQgZm9ybSBmb3IgdGhlIGRvbm9ycyBvZiBwcmltYXJ5IGNlbGxzLCB3aGljaCB3ZSBhbHNvIHdhbnQgdG8gcHJlc2VudCBhcyBhIHRlbXBsYXRlIGZvciBmdXR1cmUgR2VybWFuIGlHRU0gdGVhbXMuIDxiPkhvd2V2ZXIsIHdlIHdhbnQgdG8gZW1waGFzaXplIHRoYXQgaXQgaXMgbm90IGd1YXJhbnRlZWQgdG8gYmUgY29tcHJlaGVuc2l2ZSwgbm9yIGRvZXMgaXQgaGF2ZSBhbnkgbGVnYWwgYXBwcm92YWw8L2I+LiBXZSBhbHNvIGRldmVsb3BlZCBhIGd1aWRlbGluZSwgd2hpY2ggd2UgcHJlc2VudCBhcyBhIHRlbXBsYXRlLCBvbiBoYW5kbGluZyBwcmltYXJ5IGNlbGxzIHRvIGVuc3VyZSBub3Qgb25seSBwcm9wZXIgdGVjaG5pY2FsIGhhbmRsaW5nIGJ1dCBhbHNvIGNvcnJlY3QgZXRoaWNhbCB0cmVhdG1lbnQuPC9wPlxyXG4gICAgICAgICAgPHA+PC9wPlxyXG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9J3JvdyBhbGlnbi1pdGVtcy1jZW50ZXInPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J2NvbCAgJz5cclxuICAgICAgICAgICAgICAgICAgICA8SDQgdGV4dD1cIlBhdGllbnQgY29uc2VudCBmb3JtXCIvPlxyXG4gICAgICAgICAgICAgICAgPFR3b0xpbmVQREYgbGluaz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3BkZnMvcGF0aWVudGVuZWlud2lsbGlndW5nLW11c3RlcnZvcmxhZ2UtaWdlbS0yLnBkZlwiIG5hbWU9XCJwYXRpZW50ZW5laW53aWxsaWd1bmctbXVzdGVydm9ybGFnZS1pZ2VtLTIucGRmXCIvPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0nc2VwZXJhdG9yLTIgY29sLTInPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0nY29sICAnPlxyXG4gICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJQcmltYXJ5IEN1bHR1cmUgU2FmZXR5IEd1aWRlbGluZVwiLz5cclxuICAgICAgICAgICAgICAgIDxUd29MaW5lUERGIGxpbms9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9wZGZzL3ByaW1hcnktY3VsdHVyZS1ndWlkZWxpbmUucGRmXCIgbmFtZT1cInByaW1hcnktY3VsdHVyZS1ndWlkZWxpbmUucGRmXCIvPlxyXG4gICAgICAgICAgICBcclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvU3ViZXNjdGlvbj5cclxuICAgICAgPC9TZWN0aW9uPlxyXG4gICAgICA8U2VjdGlvbiB0aXRsZT1cIkNoZWNrLUluc1wiIGlkPVwiQ2hlY2stSW5zXCI+XHJcbiAgICAgICAgPGRpdj5cclxuICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgIGlHRU0gcGxhY2VzIGdyZWF0IGVtcGhhc2lzIG9uIGJpb3NhZmV0eSwgZW5zdXJpbmcgdGhhdCBhbGwgcHJvamVjdHMgYWRoZXJlIHRvIHN0cmljdCBzYWZldHkgc3RhbmRhcmRzLiBPbmUgb2YgdGhlc2UgbWVhc3VyZXMgaXMgdGhlIGlHRU0gV2hpdGUgTGlzdCwgd2hpY2ggaW5jbHVkZXMgb3JnYW5pc21zIGFuZCBwYXJ0cyB0aGF0IGFyZSBwcmUtYXBwcm92ZWQgZm9yIHVzZSBiYXNlZCBvbiB0aGVpciBzYWZldHkgcHJvZmlsZS4gQW55IGNvbXBvbmVudHMgb3Igb3JnYW5pc21zIG5vdCBjb3ZlcmVkIGJ5IHRoaXMgV2hpdGUgTGlzdCBtdXN0IGJlIHN1Ym1pdHRlZCBhcyAnQ2hlY2stSW5zJyB0byB0aGUgaUdFTSBTYWZldHkgQ29tbWl0dGVlIGZvciBhcHByb3ZhbC4gQ2hlY2stSW5zIGFyZSBmb3JtYWwgc2FmZXR5IGV2YWx1YXRpb25zIHRoYXQgYWxsb3cgdGhlIGNvbW1pdHRlZSB0byBhc3Nlc3MgdGhlIHBvdGVudGlhbCByaXNrcyBhbmQgZW5zdXJlIHByb3BlciBjb250YWlubWVudCBhbmQgaGFuZGxpbmcgcHJvY2VkdXJlcyBhcmUgaW4gcGxhY2UuIEFsdGhvdWdoIHdlIHVzZWQgc29tZSBwYXJ0cyBhbmQgb3JnYW5pc21zIHRoYXQgd2VyZSBub3QgaW5jbHVkZWQgb24gdGhlIFdoaXRlIExpc3QsIHRoZXNlIHdlcmUgYXNzZXNzZWQgYXMgY3JpdGljYWwgZm9yIG91ciBwcm9qZWN0IGFuZCBzdWJtaXR0ZWQgYXMgQ2hlY2stSW5zIHRvIHRoZSBpR0VNIFNhZmV0eSBDb21taXR0ZWUuIEZ1cnRoZXJtb3JlLCB3ZSB3ZXJlIGluIGFjdGl2ZSBleGNoYW5nZSB3aXRoIHRoZSBjb21taXR0ZWUgdGhyb3VnaG91dCB0aGUgcHJvY2Vzcy4gVGhlIENoZWNrLUlucyBwcm92aWRlIGEgY2xlYXIgcGljdHVyZSBvZiB0aGUgYmlvc2FmZXR5IGFzcGVjdHMgb2Ygb3VyIHByb2plY3QsIHJlZmxlY3Rpbmcgb3VyIGNvbW1pdG1lbnQgdG8gc2FmZXR5IGFuZCBjb21wbGlhbmNlIHdpdGggaUdFTSBzdGFuZGFyZHMuXHJcbiAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgIFdlIGFkaGVyZSB0byBnb29kIGxhYm9yYXRvcnkgcHJhY3RpY2VzIGJ5IGVuc3VyaW5nIHByb3BlciBoYW5kbGluZyBvZiBtYXRlcmlhbHMsIGVmZmVjdGl2ZSBlbWVyZ2VuY3kgcHJvY2VkdXJlcywgYW5kIGNvcnJlY3Qgd2FzdGUgZGlzcG9zYWwgbWV0aG9kcy4gVGhpcyBjb21taXRtZW50IGd1YXJhbnRlZXMgYSBzYWZlIGFuZCBjb21wbGlhbnQgcmVzZWFyY2ggZW52aXJvbm1lbnQuIE91ciBwcm9qZWN0LCB3aGljaCBpbnZvbHZlZCBhIHdpZGUgcmFuZ2Ugb2YgdGVjaG5pcXVlcyB3YXMgY29uZHVjdGVkIGluIHN0cmljdCBjb21wbGlhbmNlIHdpdGggc2FmZXR5IHJlZ3VsYXRpb25zLiBBbGwgZXhwZXJpbWVudHMgd2VyZSBjYXJyaWVkIG91dCBpbiBQcm9mLiBEci4gS3Jpc3RpYW4gTVx1MDBGQ2xsZXJcdTIwMTlzIGxhYm9yYXRvcnkgYXQgQmllbGVmZWxkIFVuaXZlcnNpdHksIGZvbGxvd2luZyBCU0wtMSBzdGFuZGFyZCBvcGVyYXRpbmcgcHJvY2VkdXJlcy4gUHJvcGVybHkgZXF1aXBwZWQgZmFjaWxpdGllcyBhcmUgY3J1Y2lhbCB0byBwcmV2ZW50IGNvbnRhbWluYXRpb24sIGV4cG9zdXJlLCBvciBhY2NpZGVudGFsIHJlbGVhc2Ugb2YgbW9kaWZpZWQgb3JnYW5pc21zLCBlbnN1cmluZyB0aGUgaGlnaGVzdCBsZXZlbCBvZiBzYWZldHkgaW4gb3VyIGxhYm9yYXRvcmllcy4gIFxyXG4gICAgICAgICAgICBCZWZvcmUgY29tbWVuY2luZyBsYWJvcmF0b3J5IHdvcmssIGFsbCBwYXJ0aWNpcGFudHMgd2VyZSByZXF1aXJlZCB0byBhdHRlbmQgYSBtYW5kYXRvcnkgc2FmZXR5IGJyaWVmaW5nLiBJbiBjb21wbGlhbmNlIHdpdGggR2VybWFuIHJlZ3VsYXRpb25zLCBlYWNoIHRlYW0gbWVtYmVyJ3MgcGFydGljaXBhdGlvbiBoYWQgdG8gYmUgY29uZmlybWVkIHdpdGggYSBwZXJzb25hbCBzaWduYXR1cmUuIFRoZSBicmllZmluZywgY29uZHVjdGVkIGJ5IFByb2YuIERyLiBLcmlzdGlhbiBNXHUwMEZDbGxlciBtdXN0IGJlIHJlbmV3ZWQgYW5udWFsbHkgaW4gYWNjb3JkYW5jZSB3aXRoIFx1MDBBNzEyIEFyYlNjaEcuIEl0IGNvdmVyZWQgdGhlIGZvbGxvd2luZyBhcmVhczogXHJcbiAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgPHVsPlxyXG4gICAgICAgICAgICAgICAgPGxpPkdlbmVyYWwgbGFib3JhdG9yeSBzYWZldHk8L2xpPlxyXG4gICAgICAgICAgICAgICAgPGxpPlJlZ3VsYXRpb25zIHJlZ2FyZGluZyBoYXphcmRvdXMgYW5kIHRveGljIHN1YnN0YW5jZXM8L2xpPlxyXG4gICAgICAgICAgICAgICAgPGxpPlJlZ3VsYXRpb25zIGNvbmNlcm5pbmcgYmlvbG9naWNhbCBtYXRlcmlhbHM8L2xpPlxyXG4gICAgICAgICAgICAgICAgPGxpPlJlZ3VsYXRpb25zIG9uIGdlbmV0aWMgZW5naW5lZXJpbmc8L2xpPlxyXG4gICAgICAgICAgICA8L3VsPlxyXG4gICAgICAgICAgICA8cD5cclxuICAgICAgICAgICAgICBJbiBhZGRpdGlvbiB0byB0aGUgZ2VuZXJhbCBzYWZldHkgYnJpZWZpbmcsIHNwZWNpZmljIGluc3RydWN0aW9ucyBmb3IgdGhlIHNhZmUgb3BlcmF0aW9uIG9mIGVhY2ggZGV2aWNlIHdlcmUgcHJvdmlkZWQuIFRoZSBTYWZldHkgYW5kIFNlY3VyaXR5IE9mZmljZXIgd2l0aGluIHRoZSBsYWJvcmF0b3J5IGhpZ2hsaWdodGVkIHRoZSBwb3RlbnRpYWwgaGF6YXJkcyBhbmQgbmVjZXNzYXJ5IHByZWNhdXRpb25hcnkgbWVhc3VyZXMuIFdlIGhhdmUgZm9jdXNlZCBvbiBwbGFubmluZyBvdXIgbGFib3JhdG9yeSBhY3Rpdml0aWVzIHRvIG1pbmltaXplIHJpc2sgZm9yIHNhZmVyIHByYWN0aWNlcy4gVGhpcyBlbnN1cmVzIG5vdCBvbmx5IHRoZSBzYWZlIGFuZCBwcm9wZXIgdXNlIG9mIGVxdWlwbWVudCBidXQgYWxzbyB0aGUgZ2VuZXJhdGlvbiBvZiByZWxpYWJsZSBkYXRhLiBUbyBtZWV0IGFsbCBzYWZldHkgcmVxdWlyZW1lbnRzLCBhZGRpdGlvbmFsIHNhZmV0eSBwcm90b2NvbHMgaGF2ZSBiZWVuIHB1dCBpbiBwbGFjZSBmb3IgYWxsIHRhcmdldGVkIGFyZWFzIG9mIHRoZSBsYWJvcmF0b3J5IGVxdWlwbWVudC4gXHJcbiAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgPEg0IHRleHQ9XCJMYWJvcmF0b3J5IGFuZCBzYWZldHkgcHJhY3RpY2VzXCI+PC9IND5cclxuICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgIEFzIHBhcnQgb2Ygb3VyIHByb2plY3QgdG8gZGV2ZWxvcCBhIHByaW1lLWVkaXRpbmcgY29tcGxleCB0byBjb3JyZWN0IHRoZSBGNTA4ZGVsIG11dGF0aW9uIGluIEN5c3RpYyBGaWJyb3Npcywgd2UgcGxhY2UgZ3JlYXQgZW1waGFzaXMgb24gc2FmZXR5IGF0IGFsbCBzdGFnZXMgb2YgcmVzZWFyY2guIE91ciBmaW5hbCBjb25zdHJ1Y3Qgd2lsbCBiZSB0ZXN0ZWQgaW4gPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VBbmRTY3JvbGwgKCdDZWxsIEN1bHR1cmUzSCcsICcvbWF0ZXJpYWxzLW1ldGhvZHMnKX0+IHByaW1hcnkgY3VsdHVyZXMgb2YgZXBpdGhlbGlhbCBjZWxscyA8L2E+IG9idGFpbmVkIGZyb20gbmFzYWwgc3dhYnMsIGlzb2xhdGVkIGZyb20gYm90aCBwYXRpZW50cyBhbmQgaGVhbHRoeSBpbmRpdmlkdWFscy4gVG8gZ3VhcmFudGVlIHNhZmV0eSBhbmQgZW5zdXJlIHRoZSBoaWdoZXN0IGxldmVsIG9mIHByZWNpc2lvbiBhbmQgcmVsaWFiaWxpdHkgb2Ygb3VyIHJlc3VsdHMsIHdlIGhhdmUgaW50cm9kdWNlZCBhIHNlcmllcyBvZiBjYXJlZnVsbHkgcGxhbm5lZCBjaGVja3BvaW50cyBkdXJpbmcgdGhlIGV4cGVyaW1lbnRzLiBUaGVzZSBtaWxlc3RvbmVzIGFsbG93IGZvciBjb250aW51b3VzIG1vbml0b3JpbmcsIHRpbWVseSBhZGp1c3RtZW50cyBhbmQgdmFsaWRhdGlvbiBhdCBlYWNoIGNyaXRpY2FsIHN0YWdlLiBUaGlzIGVuc3VyZXMgdGhhdCBwb3RlbnRpYWwgaXNzdWVzIGFyZSBpZGVudGlmaWVkIGFuZCBhZGRyZXNzZWQgaW1tZWRpYXRlbHksIG1pbmltaXppbmcgcmlzayBhbmQgaW1wcm92aW5nIHRoZSBvdmVyYWxsIHF1YWxpdHkgb2YgdGhlIGV4cGVyaW1lbnRhbCByZXN1bHRzey8qIC4gW2xpbmsgenUgZGVuIEV4cGVyaW1lbnRlbl0gICovfS4gaUdFTSBwbGFjZXMgZ3JlYXQgZW1waGFzaXMgb24gYmlvc2FmZXR5LCBlbnN1cmluZyB0aGF0IGFsbCBwcm9qZWN0cyBhZGhlcmUgdG8gc3RyaWN0IHNhZmV0eSBzdGFuZGFyZHMuIE9uZSBvZiB0aGVzZSBtZWFzdXJlcyBpcyB0aGUgaUdFTSBXaGl0ZSBMaXN0LCB3aGljaCBpbmNsdWRlcyBvcmdhbmlzbXMgYW5kIHBhcnRzIHRoYXQgYXJlIHByZS1hcHByb3ZlZCBmb3IgdXNlIGJhc2VkIG9uIHRoZWlyIHNhZmV0eSBwcm9maWxlLiBBbnkgY29tcG9uZW50cyBvciBvcmdhbmlzbXMgbm90IGNvdmVyZWQgYnkgdGhpcyBXaGl0ZSBMaXN0IG11c3QgYmUgc3VibWl0dGVkIGFzICdDaGVjay1JbnMnIHRvIHRoZSBpR0VNIFNhZmV0eSBDb21taXR0ZWUgZm9yIGFwcHJvdmFsLiBDaGVjay1JbnMgYXJlIGZvcm1hbCBzYWZldHkgZXZhbHVhdGlvbnMgdGhhdCBhbGxvdyB0aGUgY29tbWl0dGVlIHRvIGFzc2VzcyB0aGUgcG90ZW50aWFsIHJpc2tzIGFuZCBlbnN1cmUgcHJvcGVyIGNvbnRhaW5tZW50IGFuZCBoYW5kbGluZyBwcm9jZWR1cmVzIGFyZSBpbiBwbGFjZS4gQWx0aG91Z2ggd2UgdXNlZCBzb21lIHBhcnRzIGFuZCBvcmdhbmlzbXMgdGhhdCB3ZXJlIG5vdCBpbmNsdWRlZCBvbiB0aGUgV2hpdGUgTGlzdCwgdGhlc2Ugd2VyZSBhc3Nlc3NlZCBhcyBjcml0aWNhbCBmb3Igb3VyIHByb2plY3QgYW5kIHN1Ym1pdHRlZCBhcyBDaGVjay1JbnMgdG8gdGhlIGlHRU0gU2FmZXR5IENvbW1pdHRlZS4gRnVydGhlcm1vcmUsIHdlIHdlcmUgaW4gYWN0aXZlIGV4Y2hhbmdlIHdpdGggdGhlIGNvbW1pdHRlZSB0aHJvdWdob3V0IHRoZSBwcm9jZXNzLiBUaGUgQ2hlY2staW5zIHByb3ZpZGUgYSBjbGVhciBwaWN0dXJlIG9mIHRoZSBiaW9zYWZldHkgYXNwZWN0cyBvZiBvdXIgcHJvamVjdCwgcmVmbGVjdGluZyBvdXIgY29tbWl0bWVudCB0byBzYWZldHkgYW5kIGNvbXBsaWFuY2Ugd2l0aCBpR0VNIHN0YW5kYXJkcy4gXHJcbiAgICAgICAgICAgIFRoZSBtYWluIHNhZmV0eSBtZWFzdXJlcyB3ZSBoYXZlIGltcGxlbWVudGVkIGluY2x1ZGU6XHJcbiAgICAgICAgICAgIDwvcD4gXHJcbiAgICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgICA8c3Ryb25nPkNvbXBsaWFuY2Ugd2l0aCBTMSBjb25kaXRpb25zOjwvc3Ryb25nPiBXb3JraW5nIGluIFMxIGxhYm9yYXRvcmllcyBlbnN1cmVzIHRoYXQgb25seSBvcmdhbmlzbXMgaW4gdGhlIGxvd2VzdCByaXNrIGdyb3VwIGFyZSB1c2VkLCBtaW5pbWl6aW5nIHRoZSByaXNrIHRvIGh1bWFucyBhbmQgdGhlIGVudmlyb25tZW50LiBcclxuICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICA8cD5cclxuICAgICAgICAgICAgPHN0cm9uZz5TdGVyaWxlIHdvcmtpbmcgcHJhY3RpY2VzOjwvc3Ryb25nPiBUbyBhdm9pZCBjb250YW1pbmF0aW9uLCB3ZSBoYXZlIGltcGxlbWVudGVkIHN0cmljdCBoeWdpZW5lIG1lYXN1cmVzLCBpbmNsdWRpbmcgdGhlIGRpc2luZmVjdGlvbiBvZiB3b3JrIHN1cmZhY2VzIGFuZCB0aGUgY29ycmVjdCBkaXNwb3NhbCBvZiBiaW9sb2dpY2FsIHdhc3RlLiBcclxuICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICA8cD5cclxuICAgICAgICAgICAgPHN0cm9uZz5Db250cm9sbGVkIGFjY2Vzczo8L3N0cm9uZz4gQWNjZXNzIHRvIGxhYm9yYXRvcmllcyB3YXMgc3RyaWN0bHkgcmVndWxhdGVkIHRvIGVuc3VyZSB0aGF0IG9ubHkgdHJhaW5lZCBwZXJzb25uZWwgd29ya2VkIHdpdGggdGhlIGdlbmV0aWNhbGx5IG1vZGlmaWVkIG9yZ2FuaXNtcyBhbmQgY2VsbCBsaW5lcy4gXHJcbiAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgIDxzdHJvbmc+RG9jdW1lbnRhdGlvbjo8L3N0cm9uZz4gQWxsIHdvcmsgc3RlcHMsIG1hdGVyaWFscyB1c2VkIGFuZCBjZWxsIGxpbmVzIHdlcmUgY2FyZWZ1bGx5IGRvY3VtZW50ZWQgdG8gZW5zdXJlIHRyYWNlYWJpbGl0eSBhbmQgc2FmZXR5LiBcclxuICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICA8cD5cclxuICAgICAgICAgICAgPHN0cm9uZz5TYWZlIGhhbmRsaW5nIG9mIGNlbGwgbGluZXM6PC9zdHJvbmc+IFRoZSBjZWxsIGxpbmVzIHVzZWQgZm9yIGV4cGVyaW1lbnRzIHdlcmUgaGFuZGxlZCBpbiBhY2NvcmRhbmNlIHdpdGggdGhlIGFwcGxpY2FibGUgc2FmZXR5IHJlZ3VsYXRpb25zLiBUaGlzIGluY2x1ZGVkIHJlZ3VsYXIgY2hlY2tzIGZvciBjb250YW1pbmF0aW9uIGFuZCB0aGUgc2FmZSBzdG9yYWdlIGFuZCBkaXNwb3NhbCBvZiBjZWxsIGN1bHR1cmVzLiBcclxuICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICA8Q29sbGFwc2libGUgaWQ9XCJDaGVja3Bla1wiIG9wZW49e2ZhbHNlfSB0aXRsZT1cIkNoZWNrLWluIGZvciB0aGUgUHJpbWUtRWRpdGluZyBLb21wbGV4IFwiPlxyXG4gICAgICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgICAgIDxzdHJvbmc+UmV2ZXJzZSB0cmFuc2NyaXB0YXNlOjwvc3Ryb25nPiBSZXZlcnNlIHRyYW5zY3JpcHRhc2UgcGxheXMgYSBjZW50cmFsIHJvbGUgaW4gcHJpbWUgZWRpdGluZyBieSBzcGVjaWZpY2FsbHkgaW5zZXJ0aW5nIHRoZSBjb3JyZWN0aW9uIGFzIEROQSBhdCB0aGUgaW5zZXJ0ZWQgbmljayB1c2luZyBhbiBSTkEgdGVtcGxhdGUgcHJvdmlkZWQgYnkgcGVnUk5BLiBUaGUgY29ycmVjdGlvbiBvZiB0aGUgY29tcGxlbWVudGFyeSBETkEgc3RyYW5kIHRoZW4gdGFrZXMgcGxhY2UgdmlhIHRoZSBuYXR1cmFsIGNlbGwgcmVwYWlyIG1lY2hhbmlzbXMuICBUaGlzIGVuc3VyZXMgYW4gZXhhY3QgY29ycmVjdGlvbiBvZiB0aGUgdGFyZ2V0IHNlcXVlbmNlLiBXZSBjaGVja2VkIHRoZSByZXZlcnNlIHRyYW5zY3JpcHRhc2UgdG8gZW5zdXJlIGl0IGNvdWxkIHBlcmZvcm0gcHJlY2lzZSBnZW5vbWUgZWRpdGluZyB3aXRob3V0IGludHJvZHVjaW5nIHVuaW50ZW5kZWQgbXV0YXRpb25zLiBUaGlzIHdhcyBpbXBvcnRhbnQgdG8gbWluaW1pemUgdGhlIHJpc2sgb2Ygb2ZmLXRhcmdldCBlZmZlY3RzIHRoYXQgY291bGQgbGVhZCB0byB1bmV4cGVjdGVkIG9yIGhhcm1mdWwgY29uc2VxdWVuY2VzLlxyXG4gICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICA8cD5cclxuICAgICAgICAgICAgICA8c3Ryb25nPnBlZ1JOQSAoUHJpbWUgRWRpdGluZyBHdWlkZSBSTkEpOjwvc3Ryb25nPiBUaGUgcGVnUk5BIGlzIGEgbXVsdGlmdW5jdGlvbmFsIFJOQSBtb2xlY3VsZSB0aGF0IGZ1bGZpbHMgdHdvIGVzc2VudGlhbCB0YXNrcy4gRmlyc3RseSwgaXQgc2VydmVzIGFzIGEgc3RhbmRhcmQgZ3VpZGUgUk5BIChnUk5BKSB0aGF0IGJpbmRzIHNwZWNpZmljYWxseSB0byB0aGUgdGFyZ2V0IEROQSBhbmQgdGh1cyBtYXJrcyB0aGUgc2l0ZSBvZiBlZGl0aW5nLiBTZWNvbmRseSwgaXQgY29udGFpbnMgYW4gUk5BIHRlbXBsYXRlIHRoYXQgZW5jb2RlcyB0aGUgZGVzaXJlZCBETkEgbW9kaWZpY2F0aW9uLiBUaGlzIGVuYWJsZXMgdGhlIHByZWNpc2UgaW50ZWdyYXRpb24gb2YgdGhlIGdlbmV0aWMgbW9kaWZpY2F0aW9ucyBhdCB0aGUgdGFyZ2V0IHNpdGUuIFdlIGV2YWx1YXRlZCBwZWdSTkEgZm9yIGl0cyBhYmlsaXR5IHRvIHNwZWNpZmljYWxseSB0YXJnZXQgYW5kIG1vZGlmaWVkIHRoZSBpbnRlbmRlZCBETkEgc2VxdWVuY2UuIEVuc3VyaW5nIGl0cyBzcGVjaWZpY2l0eSB3YXMgY3J1Y2lhbCB0byBhdm9pZCB0aGUgcG90ZW50aWFsIGRpc3J1cHRpb24gb2Ygb3RoZXIgZ2VuZXMuXHJcbiAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgICAgIDxzdHJvbmc+Tmlja2FzZSBuQ2FzOSwgQ2FzWCwgRmFuem9yIChTcHVGejEpOjwvc3Ryb25nPiBUaGVzZSBtb2RpZmllZCBudWNsZWFzZXMgYXJlIGRlc2lnbmVkIHRvIGN1dCBvbmx5IG9uZSBzdHJhbmQgb2YgRE5BLiBUaGlzIGxlYWRzIHRvIGNvbnRyb2xsZWQgYW5kIHByZWNpc2UgZWRpdGluZyBvZiB0aGUgZ2Vub21lLCBhcyBjdXR0aW5nIG9ubHkgb25lIHN0cmFuZCBtaW5pbWl6ZXMgdGhlIHJpc2sgb2YgdW53YW50ZWQgZG91YmxlLXN0cmFuZCBicmVha3MuIENhc1ggYW5kIEZhbnpvciBvZmZlciBzbWFsbGVyIGFsdGVybmF0aXZlcyB0byBDYXM5LCB3aGljaCBpcyBwYXJ0aWN1bGFybHkgYWR2YW50YWdlb3VzIGZvciB1c2UgaW4gY2VsbHMgb3Igb3JnYW5pc21zIHdoZXJlIHNwYWNlIGFuZCBlZmZpY2llbmN5IHJlcXVpcmVtZW50cyBpbiB0ZXJtcyBvZiB0aGUgdHJhbnNwb3J0IHN5c3RlbSBhcmUgYW4gaXNzdWUuIEZhbnpvciwgYmVpbmcgYSBuZXdseSBpbnRyb2R1Y2VkIGVuZG9udWNsZWFzZSwgd2FzIHBhcnRpY3VsYXJseSBzY3J1dGluaXplZCBpbiBvdXIgcHJvamVjdCB0byBlbnN1cmUgaXRzIHNhZmV0eSBhbmQgZWZmZWN0aXZlbmVzcyBpbiBkaWZmZXJlbnQgY2VsbHVsYXIgY29udGV4dHMuIFxyXG4gICAgICAgICAgICBcclxuICAgICAgICAgICAgICBUaGlzIHByaW1lLWVkaXRpbmcgY29tcGxleCB0aHVzIHJlcHJlc2VudHMgYSBwcmVjaXNlIGFuZCBlZmZpY2llbnQgbWV0aG9kIGZvciBnZW5lIGVkaXRpbmcuIEJ5IGNvbWJpbmluZyB0aGVzZSBjb21wb25lbnRzLCBnZW5ldGljIG1vZGlmaWNhdGlvbnMgY2FuIGJlIHBlcmZvcm1lZCB3aXRoIG1pbmltYWwgc2lkZSBlZmZlY3RzXHJcbiAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICA8L0NvbGxhcHNpYmxlPlxyXG4gICAgICAgICAgICBcclxuICAgICAgICAgICAgPENvbGxhcHNpYmxlIGlkPVwiQ2hlY2tjbG9uaW5nXCIgb3Blbj17ZmFsc2V9IHRpdGxlPVwiQ2hlY2staW4gZm9yIENsb25pbmdcIj5cclxuICAgICAgICAgICAgICA8cD5cclxuICAgICAgICAgICAgICBGb3Igb3VyICBjbG9uaW5nIGV4cGVyaW1lbnRzIGFuZCB0aGUgZGV2ZWxvcG1lbnQgb2Ygb3VyIHByaW1lIGVkaXRpbmcgY29tcGxleGVzLCB3ZSBoYXZlIGFtcGxpZmllZCB2YXJpb3VzIHBsYXNtaWRzIGluIDxpPkUuIGNvbGk8L2k+IEstMTIgc3RyYWlucyAoREg1XHUwM0IxLDEwLUJldGEpLiBXaGVuIHdvcmtpbmcgd2l0aCBtaWNyb2JpYWwgc3RyYWlucyBzdWNoIGFzIDxpPkUuIGNvbGk8L2k+IEstMTIgc3RyYWlucywgaXQncyBpbXBvcnRhbnQgdG8gY29uc2lkZXIgcG90ZW50aWFsIHJpc2tzIGFzc29jaWF0ZWQgd2l0aCB0aGVpciB1c2UsIGV2ZW4gdGhvdWdoIHRoZXkgYXJlIGdlbmVyYWxseSByZWdhcmRlZCBhcyBzYWZlIGluIGxhYm9yYXRvcnkgc2V0dGluZ3MuIEFsbCBleHBlcmltZW50cyB3ZXJlIHBlcmZvcm1lZCB1bmRlciBzdHJpY3QgUzEgY29uZGl0aW9ucywgZm9sbG93aW5nIGFsbCByZWxldmFudCBzYWZldHkgcHJvdG9jb2xzLiBCZWxvdyB5b3Ugd2lsbCBmaW5kIGFuIG92ZXJ2aWV3IG9mIHRoZSA8aT5FLiBjb2xpPC9pPiBLLTEyIHN0cmFpbnMgZm9yIG91ciBjbG9uaW5nIGV4cGVyaW1lbnRzLCBzdWJtaXR0ZWQgYnkgdXMgYXMgYSBjaGVjay1JbiBhbmQgdGhlIHNwZWNpZmljIHNhZmV0eSBtZWFzdXJlczpcclxuICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgICAgPHN0cm9uZz48aT5FLiBjb2xpIEstMTI8L2k+IHN0cmFpbnMgKERINVx1MDNCMSwgMTAtQmV0YSk6PC9zdHJvbmc+IEFsdGhvdWdoIHRoZXNlIHN0cmFpbnMgYXJlIG5vbi1wYXRob2dlbmljIGFuZCBoYXZlIGJlZW4gbW9kaWZpZWQgdG8gbWluaW1pemUgdGhlIHJpc2sgb2Ygc3ByZWFkaW5nIGFudGliaW90aWMgcmVzaXN0YW5jZSwgdGhlcmUgcmVtYWlucyBhIGxvdyByaXNrIG9mIGhvcml6b250YWwgZ2VuZSB0cmFuc2Zlciwgd2hlcmUgZ2VuZXRpYyBtYXRlcmlhbCBjb3VsZCBiZSB0cmFuc2ZlcnJlZCB0byBvdGhlciBtaWNyb29yZ2FuaXNtcywgcG90ZW50aWFsbHkgbGVhZGluZyB0byB0aGUgc3ByZWFkIG9mIHJlc2lzdGFuY2UgZ2VuZXMgb3Igb3RoZXIgdHJhaXRzLiBJZiBhY2NpZGVudGFsbHkgcmVsZWFzZWQgaW50byB0aGUgZW52aXJvbm1lbnQsIDxpPkUuIGNvbGk8L2k+IEstMTIgc3RyYWlucyBjb3VsZCBwb3RlbnRpYWxseSBpbnRlcmFjdCB3aXRoIG5hdGl2ZSBtaWNyb2JpYWwgY29tbXVuaXRpZXMuIFdoaWxlIHRoZXkgYXJlIHR5cGljYWxseSBvdXRjb21wZXRlZCBpbiBuYXR1cmFsIGVudmlyb25tZW50cywgdGhlcmUncyBhIHJlbW90ZSBwb3NzaWJpbGl0eSBvZiBlY29sb2dpY2FsIGRpc3J1cHRpb24sIHBhcnRpY3VsYXJseSBpbiBtaWNyb2Vudmlyb25tZW50cyB3aGVyZSB0aGV5IGNvdWxkIGZpbmQgYSBuaWNoZS5XaGlsZSB0aGVzZSBzdHJhaW5zIGFyZSBub24tdmlydWxlbnQsIHRoZXkgc3RpbGwgcG9zZSBhIG1pbmltYWwgcmlzayB0byBodW1hbnMsIHBhcnRpY3VsYXJseSBpbW11bm9jb21wcm9taXNlZCBpbmRpdmlkdWFscywgdGhyb3VnaCBhY2NpZGVudGFsIGluZ2VzdGlvbiBvciBpbmhhbGF0aW9uIGluIGEgbGFib3JhdG9yeSBzZXR0aW5nLiBcclxuICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgICAgV2Ugc3VibWl0dGVkICB0aGUgeWVhc3Qgc3RyYWluIDxpPlBpY2hpYSBwYXN0b3JpczwvaT4gKFNNRDExNjMpIGZvciB0aGUgcHJvdGVpbiBleHByZXNzaW9uIG9mIEZhbnpvci5cclxuICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgICAgPHN0cm9uZz48aT5QaWNoaWEgcGFzdG9yaXM8L2k+IChTTUQxMTYzKTo8L3N0cm9uZz4gPGk+UGljaGlhIHBhc3RvcmlzPC9pPiAoU01EMTE2MykgaXMgYSB3aWRlbHkgdXNlZCB5ZWFzdCBzdHJhaW4gZm9yIHRoZSBleHByZXNzaW9uIG9mIHJlY29tYmluYW50IHByb3RlaW5zLiBJdCBpcyBjaGFyYWN0ZXJpemVkIGJ5IGEgbWV0aGFub2wtaW5kdWNpYmxlIGV4cHJlc3Npb24gc3lzdGVtIChBT1gxIHByb21vdGVyKSBhbmQgaGlnaCBjZWxsIGdyb3d0aCByYXRlcywgd2hpY2ggbWFrZXMgaXQgaWRlYWwgZm9yIGluZHVzdHJpYWwgYXBwbGljYXRpb25zLiBUaGUgc3RyYWluIGNhbiBiZSBlYXNpbHkgZ2VuZXRpY2FsbHkgbWFuaXB1bGF0ZWQgYW5kIGNhbiBwZXJmb3JtIHBvc3QtdHJhbnNsYXRpb25hbCBtb2RpZmljYXRpb25zLCB3aGljaCBzdXBwb3J0cyBjb3JyZWN0IHByb3RlaW4gcHJvZHVjdGlvbi5cclxuICAgICAgICAgICAgICBXaGVuIHdvcmtpbmcgd2l0aCA8aT5QaWNoaWEgcGFzdG9yaXM8L2k+IChTTUQxMTYzKSwgdmFyaW91cyBzYWZldHktcmVsZXZhbnQgYXNwZWN0cyBtdXN0IGJlIG9ic2VydmVkLiBBbHRob3VnaCB0aGUgb3JnYW5pc20gaXMgY29uc2lkZXJlZCBub24tcGF0aG9nZW5pYyBhbmQgYmlvbG9naWNhbGx5IHNhZmUgKFMxKSwgc2tpbiBjb250YWN0IGFuZCBhZXJvc29sIGZvcm1hdGlvbiBzaG91bGQgYmUgYXZvaWRlZCB0byBtaW5pbWl6ZSB0aGUgcmlzayBvZiBpbmZlY3Rpb24gb3IgYWxsZXJnaWMgcmVhY3Rpb25zLiBXaGVuIHVzaW5nIGdlbmV0aWNhbGx5IG1vZGlmaWVkIHN0cmFpbnMsIGl0IGlzIGltcG9ydGFudCB0byBmb2xsb3cgdGhlIHJlbGV2YW50IEdNTyBndWlkZWxpbmVzIHRvIHByZXZlbnQgdW5jb250cm9sbGVkIHJlbGVhc2UuIEluIGFkZGl0aW9uLCBoYW5kbGluZyBjaGVtaWNhbHMgc3VjaCBhcyBtZXRoYW5vbCByZXF1aXJlcyBzcGVjaWFsIHByZWNhdXRpb25zIGFzIHRoZXkgYXJlIHRveGljIGFuZCBoaWdobHkgZmxhbW1hYmxlLiBUaGUgZGlzcG9zYWwgb2YgY2VsbCBjdWx0dXJlcyBhbmQgd2FzdGUgbXVzdCBhbHNvIGJlIGNhcnJpZWQgb3V0IGluIGFjY29yZGFuY2Ugd2l0aCBiaW9zYWZldHkgcmVndWxhdGlvbnMsIGVzcGVjaWFsbHkgaW4gdGhlIGNhc2Ugb2YgZ2VuZXRpY2FsbHkgbW9kaWZpZWQgb3JnYW5pc21zLiBcclxuICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgIDwvQ29sbGFwc2libGU+XHJcbiAgICAgICAgICAgIFxyXG4gICAgICAgICAgICA8Q29sbGFwc2libGUgaWQ9XCJDaGVja2NlbGxMaW5lc1wiIG9wZW49e2ZhbHNlfSB0aXRsZT1cIkNoZWNrLWluIGZvciBUZXN0aW5nIGluIGNlbGwgbGluZXNcIj5cclxuICAgICAgICAgICAgICA8cD5cclxuICAgICAgICAgICAgICBJbiBvdXIgcHJvamVjdCwgd2UgcGFpZCBhdHRlbnRpb24gdG8gc2FmZXR5IGF0IGV2ZXJ5IHN0ZXAsIGVzcGVjaWFsbHkgd2hlbiB3b3JraW5nIHdpdGggc3BlY2lmaWMgPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VBbmRTY3JvbGwgKCdjZWxsLWN1bHR1cmUnLCAnL21hdGVyaWFscy1tZXRob2RzJyl9PiBjZWxsIGxpbmVzIDwvYT4gLiBBbGwgZXhwZXJpbWVudHMgd2VyZSBwZXJmb3JtZWQgdW5kZXIgc3RyaWN0IFMxIGNvbmRpdGlvbnMsIGZvbGxvd2luZyBhbGwgcmVsZXZhbnQgc2FmZXR5IHByb3RvY29scy4gR2l2ZW4gdGhlIHNlbnNpdGl2aXR5IG9mIHRoZSBodW1hbiBjZWxsIGxpbmVzIHdlIHVzZWQsIHdlIHBsYWNlZCBncmVhdCBlbXBoYXNpcyBvbiBjb250cm9sbGVkIGFuZCB3ZWxsLWRlc2lnbmVkIHdvcmtmbG93cy4gQWxsIHRyYW5zZmVjdGlvbnMgd2VyZSBwZXJmb3JtZWQgaW4gb3VyIG93biB0cmFuc2ZlY3Rpb24gbGFib3JhdG9yeSB0byBlbnN1cmUgYSBoaWdoIGxldmVsIG9mIHNhZmV0eSBhbmQgY29tcGxpYW5jZS4gIEJlbG93IHlvdSB3aWxsIGZpbmQgYW4gb3ZlcnZpZXcgb2YgdGhlIGNlbGwgbGluZXMgc3VibWl0dGVkIGJ5IHVzIGFzIGEgY2hlY2tpbiBhbmQgdGhlIHNwZWNpZmljIHNhZmV0eSBtZWFzdXJlczpcclxuICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgICAgPHN0cm9uZz5IRUsyOTMgY2VsbCBsaW5lOiA8L3N0cm9uZz5IRUsgMjkzIChIdW1hbiBFbWJyeW9uaWMgS2lkbmV5IDI5MykgY2VsbHMgYXJlIGFuIGltbW9ydGFsIGNlbGwgbGluZSBvcmlnaW5hbGx5IGRlcml2ZWQgZnJvbSB0aGUga2lkbmV5IGNlbGxzIG9mIGEgaHVtYW4gZW1icnlvLiBUaGV5IGFyZSBjaGFyYWN0ZXJpemVkIGJ5IHRoZWlyIGZhc3QgZGl2aXNpb24gcmF0ZSBhbmQgaGlnaCB0cmFuc2ZlY3Rpb24gZWZmaWNpZW5jeSwgd2hpY2ggbWFrZXMgdGhlbSBhIHBvcHVsYXIgbW9kZWwgaW4gYmlvbWVkaWNhbCByZXNlYXJjaC4gRm9yIG91ciBzdHVkaWVzLCB0aGUgYmFzaWMgSEVLMjkzIGNlbGxzIHdlcmUgcHJvdmlkZWQgdG8gdXMgYnkgdGhlIENlbGx1bGFyIGFuZCBNb2xlY3VsYXIgQmlvdGVjaG5vbG9neSBHcm91cCBhdCBCaWVsZWZlbGQgVW5pdmVyc2l0eSwgaGVhZGVkIGJ5IFByb2YuIERyLiBLcmlzdGlhbiBNXHUwMEZDbGxlci4gUHJvZi4gRHIuIE1cdTAwRkNsbGVyIGlzIGFsc28gb25lIG9mIHRoZSBQcmluY2lwYWwgSW52ZXN0aWdhdG9ycyBvZiBvdXIgdGVhbS4gV2UgdXNlIHRoaXMgY2VsbCBsaW5lIGluIG91ciBwcm9vZi1vZi1jb25jZXB0IHN0dWRpZXMgYW5kIGZvciB0ZXN0aW5nIHRoZSBQcmltZSBFZGl0aW5nIEd1aWRlIHBlZ1JOQSAocGVnUk5BKSB0byBldmFsdWF0ZSB0aGUgZWZmaWNpZW5jeSBhbmQgZnVuY3Rpb25hbGl0eSBvZiBvdXIgY29uc3RydWN0cy4gXHJcbiAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgICAgIDxzdHJvbmc+SEVLMjkzVC0zSEEtQ0ZUUiBjZWxsIGxpbmU6IDwvc3Ryb25nPlRoZSBIRUsyOTNULTNIQS1DRlRSIGNlbGwgbGluZSBpcyBiYXNlZCBvbiBIRUsyOTNUIGNlbGxzIGV4cHJlc3NpbmcgYW4gYWRkaXRpb25hbCB0c0ExNjA5IGFsbGVsZSBvZiB0aGUgU1Y0MCBsYXJnZSBUIGFudGlnZW4uIFRoaXMgYWxsZWxlIGVuYWJsZXMgdGhlIHJlcGxpY2F0aW9uIG9mIHZlY3RvcnMgY29udGFpbmluZyB0aGUgU1Y0MCBvcmlnaW4gb2YgcmVwbGljYXRpb24uIEluIGFkZGl0aW9uIHRvIHRoZSBuYXRpdmUgQ0ZUUiBnZW5lLCB3aGljaCBpcyBub3QgZXhwcmVzc2VkIGluIEhFSyBjZWxscywgdGhlIEhFSzI5M1QtM0hBLUNGVFIgY2VsbCBsaW5lIGNhcnJpZXMgYW5vdGhlciBjb3B5IG9mIHRoZSBDRlRSIGdlbmUgZW1iZWRkZWQgaW4gYW4gZXhwcmVzc2lvbiBjYXNzZXR0ZS4gVGhpcyBjYXNzZXR0ZSBjb250YWlucyBhIENNViBwcm9tb3Rlciwgd2hpY2ggaXMgZGVyaXZlZCBmcm9tIHRoZSBodW1hbiBjeXRvbWVnYWxvdmlydXMgYW5kIGlzIGZyZXF1ZW50bHkgdXNlZCBmb3IgdGhlIG92ZXJleHByZXNzaW9uIG9mIGdlbmVzIGluIGh1bWFuIGNlbGxzLiBJbiBhZGRpdGlvbiwgdGhlIGNhc3NldHRlIGNvbnRhaW5zIGEgcHVyb215Y2luIHJlc2lzdGFuY2UgZ2VuZSB0aGF0IGlzIGNvLWV4cHJlc3NlZCB3aXRoIENGVFIsIGFsbG93aW5nIGNvbnRpbnVvdXMgc2VsZWN0aW9uIG9mIENGVFItZXhwcmVzc2luZyBjZWxscy4gXHJcbiAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgICAgIDxzdHJvbmc+SEVLMjkzVC0zSEEtRjUwOGRlbC1DRlRSIGNlbGwgbGluZTo8L3N0cm9uZz4gVGhlIEhFSzI5M1QtM0hBLUY1MDhkZWwtQ0ZUUiBjZWxsIGxpbmUgaXMgYSBtb2RpZmllZCBIRUsyOTNUIGNlbGwgbGluZSB0aGF0IGNhcnJpZXMgdGhlIEY1MDhkZWwgbXV0YXRpb24gaW4gdGhlIENGVFIgZ2VuZSwgd2hpY2ggaXMgcmVzcG9uc2libGUgZm9yIHRoZSBtb3N0IGNvbW1vbiBtdXRhdGlvbiBpbiBDeXN0aWMgRmlicm9zaXMuIFRoaXMgbXV0YXRpb24gbGVhZHMgdG8gYSBkZWZlY3RpdmUgQ0ZUUiBwcm90ZWluIHRoYXQgaW1wYWlycyB0aGUgbm9ybWFsIGZ1bmN0aW9uIG9mIHRoZSBjaGxvcmlkZSBjaGFubmVsLiBUaGUgY2VsbCBsaW5lIGlzIHRoZXJlZm9yZSBpZGVhbCBmb3Igc3R1ZHlpbmcgdGhlIGVmZmVjdHMgb2YgdGhpcyBtdXRhdGlvbiBhbmQgZm9yIGV2YWx1YXRpbmcgcG90ZW50aWFsIHRoZXJhcGllcyBmb3IgQ3lzdGljIEZpYnJvc2lzLiBcclxuICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgICAgPHN0cm9uZz5DRkJFNDFvLSBjZWxsIGxpbmU6PC9zdHJvbmc+IFRoZSBDRkJFNDFvLSBjZWxsIGxpbmUsIGRlcml2ZWQgZnJvbSB0aGUgYnJvbmNoaWFsIGVwaXRoZWxpYWwgY2VsbHMgb2YgYSBDeXN0aWMgRmlicm9zaXMgcGF0aWVudCwgaXMgaG9tb3p5Z291cyBmb3IgdGhlIEY1MDhkZWwtQ0ZUUiBtdXRhdGlvbiBhbmQgd2FzIGVzc2VudGlhbCBmb3Igb3VyIEN5c3RpYyBGaWJyb3NpcyByZXNlYXJjaC4gQSByZWR1Y2VkIENGVFIgZXhwcmVzc2lvbiBsZXZlbCBpcyBwcmVzZW50LiBUaGUgY2VsbCBsaW5lIGNhcnJpZXMgdGhlIENGVFIgZGVmZWN0IGFuZCBjYW4gdGhlcmVmb3JlIHJlcHJlc2VudCBhIHBhdGllbnQgd2l0aCBDRi4gVGhlIGNlbGwgbGluZSBpcyB1c2VkIHRvIHRlc3Qgb3VyIG1lY2hhbmlzbS4gVGhlc2UgY2VsbHMgd2VyZSBpbW1vcnRhbGl6ZWQgd2l0aCBhIHJlcGxpY2F0aW9uLWRlZmVjdGl2ZSBwbGFzbWlkIHRoYXQgcmV0YWlucyB0aGVpciBwaHlzaW9sb2dpY2FsIHByb3BlcnRpZXMuXHJcbiAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgICAgICAgV2hlbiB3b3JraW5nIHdpdGggdGhlIEhFSzI5M1QgYW5kIENGQkU0MW8tIGNlbGwgbGluZXMsIGl0XHUyMDE5cyBpbXBvcnRhbnQgdG8gY29uc2lkZXIgdGhlIG1pbmltYWwgcmlza3MgYXNzb2NpYXRlZCB3aXRoIHRoZWlyIHVzZS4gV2hpbGUgbm90IGhhcm1mdWwgb24gdGhlaXIgb3duLCB0aGUgZ2VuZXRpYyBtb2RpZmljYXRpb25zIGluIEhFSzI5M1QgY2VsbHMgcmVxdWlyZSBjYXJlZnVsIGhhbmRsaW5nIHRvIHByZXZlbnQgYWNjaWRlbnRhbCByZWxlYXNlIG9yIGV4cG9zdXJlLiBUaGVzZSBjZWxscywgZW5naW5lZXJlZCB0byBvdmVyZXhwcmVzcyBDRlRSLCBpbmNsdWRpbmcgdGhlIEY1MDhkZWwgbXV0YXRpb24sIG5lY2Vzc2l0YXRlIHN0cmljdCBzYWZldHkgbWVhc3VyZXMgbGlrZSByZWd1bGFyIG1vbml0b3JpbmcgYW5kIHByb3BlciB3YXN0ZSBkaXNwb3NhbCB0byBjb21wbHkgd2l0aCBTMSBsYWJvcmF0b3J5IHN0YW5kYXJkcy4gU2ltaWxhcmx5LCBDRkJFNDFvLSBjZWxscywgZHVlIHRvIHRoZWlyIGdlbmV0aWMgbW9kaWZpY2F0aW9ucyBhbmQgZGlzZWFzZSByZWxldmFuY2UsIHJlcXVpcmUgY2FyZWZ1bCBoYW5kbGluZyB0byBhdm9pZCBjcm9zcy1jb250YW1pbmF0aW9uIGFuZCBlbnN1cmUgYmlvc2FmZXR5LlxyXG4gICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICA8cD5cclxuICAgICAgICAgICAgICA8c3Ryb25nPkh1bWFuIG5hc2FsIGVwaXRoZWxpYWwgY2VsbHMgKGhORUNzKTo8L3N0cm9uZz4gSHVtYW4gbmFzYWwgZXBpdGhlbGlhbCBjZWxscyAoaE5FQ3MpIHdlcmUgaGFydmVzdGVkIHVzaW5nIGEgbmFzYWwgYnJ1c2gsIGEgbWluaW1hbGx5IGludmFzaXZlIHByb2NlZHVyZSwgYW5kIGN1bHR1cmVkIGluIGFpci1saXF1aWQgaW50ZXJmYWNlIChBTEkpIGN1bHR1cmVzIHRvIG1vZGVsIHRoZSBhaXJ3YXkgZXBpdGhlbGl1bS4gSHVtYW4gbmFzYWwgZXBpdGhlbGlhbCBjZWxscyAoaE5FQ3MpIHdlcmUgb2J0YWluZWQgdXNpbmcgYSBuYXNhbCBicnVzaCwgYSBtaW5pbWFsbHkgaW52YXNpdmUgdGVjaG5pcXVlLCBhbmQgdGhlbiBjdWx0dXJlZCBpbiBhaXItbGlxdWlkIGludGVyZmFjZSAoQUxJKSBjdWx0dXJlcyB0byBtb2RlbCB0aGUgYWlyd2F5IGVwaXRoZWxpdW0uIFVzaW5nIHRoZXNlIHByaW1hcnkgY3VsdHVyZXMsIGRlcml2ZWQgZnJvbSBkb25vcnMgd2l0aCBhaXJ3YXkgZGlzZWFzZXMgc3VjaCBhcyBDeXN0aWMgRmlicm9zaXMsIHdlIHdlcmUgYWJsZSB0byBzaW11bGF0ZSB0aGUgaW4gdml2byBjb25kaXRpb25zIG9mIHN1Y2ggZGlzZWFzZXMuICBcclxuICAgICAgICAgICAgICBEdWUgdG8gdGhlIHNlbnNpdGl2ZSBuYXR1cmUgb2YgdGhlc2UgcHJpbWFyeSBodW1hbiBjZWxscywgd2UgcGVyZm9ybWVkIGFsbCBleHBlcmltZW50cyB3aXRoIGhORUNzIGluIG91ciBTMiBsYWJvcmF0b3J5LCB3aGVyZSBpbmNyZWFzZWQgc2FmZXR5IHByZWNhdXRpb25zIHdlcmUgdGFrZW4uIFRoaXMgaW5jbHVkZWQgc3RyaWN0IHNhZmV0eSBjb250cm9scywgc2FmZSBoYW5kbGluZyBvZiBzYW1wbGVzIGFuZCBwcm9wZXIgZGlzcG9zYWwgb2YgbWF0ZXJpYWxzIGFmdGVyIHRlc3RpbmcuIEluIHBhcnRpY3VsYXIsIHRoZSBoTkVDcyB1bmRlcndlbnQgSEhIIChUcmlwbGUgSDogSElWLCBIQ1YgYW5kIEhCVikgdGVzdGluZyB0byBlbnN1cmUgdGhhdCBubyBjb250YW1pbmF0aW9uIG9jY3VycmVkIGR1cmluZyBzYW1wbGUgY29sbGVjdGlvbiBvciBleHBlcmltZW50YXRpb24uIFRoZXNlIHRlc3RzIGluY2x1ZGVkIHN0ZXJpbGl0eSB0ZXN0aW5nLCB2aWFiaWxpdHkgYXNzZXNzbWVudHMgYW5kIGNvbnRhbWluYXRpb24gdGVzdGluZyB0byBlbnN1cmUgdGhlIHNhZmV0eSBhbmQgaW50ZWdyaXR5IG9mIGJvdGggdGhlIHNhbXBsZXMgYW5kIHRoZSBsYWJvcmF0b3J5IGVudmlyb25tZW50LiBBZnRlciBhIG5lZ2F0aXZlIEhISCB0ZXN0LCB0aGUgcHJpbWFyeSBjdWx0dXJlcyBjYW4gYmUgdHJlYXRlZCBhcyBTMS4gSW4gYWRkaXRpb24sIHRoZSBuYXNhbCBlcGl0aGVsaWFsIGNlbGxzIHdlcmUgaGFuZGxlZCB3aXRoIHRoZSB1dG1vc3QgY2FyZSBkdXJpbmcgY29sbGVjdGlvbiwgZW5zdXJpbmcgdGhhdCBhbGwgcHJvY2VkdXJlcyB3ZXJlIHBlcmZvcm1lZCB1bmRlciBzdGVyaWxlIGNvbmRpdGlvbnMgdG8gYXZvaWQgYW55IHJpc2sgb2YgY29udGFtaW5hdGlvbkZvciB0aGlzIHB1cnBvc2UsIHRoZSBpbnRlbnNpdmUgZXhhbWluYXRpb24gb2YgZXRoaWNhbCBxdWVzdGlvbnMgd2FzIGZ1bmRhbWVudGFsIGFuZCBhIGNvbnN0YW50IGNvbXBhbmlvbiBvZiBvdXIgcHJvamVjdC4gVGhlIG51bWVyb3VzIHJlc3VsdHMgZnJvbSB0aGUgaW50ZXJ2aWV3cyBpbiB0aGUgYXJlYXMgb2Y6IEV0aGljcywgc3RvcmFnZSBhbmQgdHJhaW5pbmcgaW4gdGhlIGhhbmRsaW5nIG9mIHNhbXBsZXMgaGF2ZSBiZWVuIHN1bW1hcml6ZWQgaW4gYSBndWlkZWxpbmUgZm9yIHBhdGllbnQgY29uc2VudCBmb3IgR2VybWFueSBhbmQgYXJlIGludGVuZGVkIHRvIHByb3ZpZGUgaUdFTSB0ZWFtcyB3aXRoIHRoZSBzY29wZSwgY3JpdGljYWwgZXhhbWluYXRpb24gYW5kIG9ic2VydmFuY2Ugb2YgaUdFTSBydWxlcywgaW50ZXJuYXRpb25hbCBhbmQgbmF0aW9uYWwgZ3VpZGVsaW5lcy5cdTIwMkYgXHJcbiAgICAgICAgICAgICAgPC9wPiBcclxuICAgICAgICAgICAgPC9Db2xsYXBzaWJsZT5cclxuXHJcbiAgICAgICAgICAgIDxDb2xsYXBzaWJsZSBpZD1cIkNoZWNrRGVsaXZlcnlcIiBvcGVuPXtmYWxzZX0gdGl0bGU9XCJDaGVjay1pbiBmb3IgRGVsaXZlcnlcIj5cclxuICAgICAgICAgICAgICA8cD5cclxuICAgICAgICAgICAgICBPdXIgZmluaXNoZWQgY29uc3RydWN0IGlzIGRlc2lnbmVkIHRvIGJlIGRlbGl2ZXJlZCBpbnRvIHRoZSBsdW5nIHZpYSBhbiBpbmhhbGVyIHVzaW5nIGxpcGlkIG5hbm9wYXJ0aWNsZXMgKExOUHMpLiBUbyBiZSBtb3JlIHNwZXppZmljIGEgc2VsZWN0aXZlIG9yZ2FuLXRhcmdldGluZyAoU09SVCktIExOUHMgd2VyZSBkZXZlbG9wZWQgdG8gZGVsaXZlciBtUk5BIHNwZWNpZmljYWxseSB0byB0aGUgbHVuZywgd2l0aCBzcGVjaWFsIG1lYXN1cmVzIHRha2VuIHRvIGluY3JlYXNlIGJpb2NvbXBhdGliaWxpdHkgYW5kIHNhZmV0eS4gU2luY2UgdGhlIExOUCBjb21wb3NpdGlvbiBpcyB2ZXJ5IHNwZWNpZmljIGFuZCBhbHNvIGRpZmZlcnMgZnJvbSBvdGhlciBmb3JtdWxhcywgd2Ugc3VibWl0dGVkIHRoZSBMTlAgYXMgYSBjaGVja2luOlxyXG4gICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICA8cD5cclxuICAgICAgICAgICAgICA8c3Ryb25nPkxOUDo8L3N0cm9uZz4gVGhlc2UgTE5QcyBhcmUgdGhlbiB0YWtlbiB1cCBieSBlcGl0aGVsaWFsIGNlbGxzIHRocm91Z2ggZW5kb2N5dG9zaXMsIHJlbGVhc2luZyB0aGUgY29uc3RydWN0IGludG8gdGhlIGN5dG9zb2wuIFdlIGNhcmVmdWxseSBldmFsdWF0ZWQgdGhlIHBvdGVudGlhbCByaXNrcywgaW5jbHVkaW5nIHVuaW50ZW5kZWQgaW1tdW5lIHJlc3BvbnNlcyBhbmQgdGhlIG5lZWQgZm9yIHByZWNpc2UgZG9zaW5nIHRvIG1pbmltaXplIHNpZGUgZWZmZWN0cy4gSW4gYWRkaXRpb24sIHdlIGhhdmUgY29uZHVjdGVkIGFuIGluLWRlcHRoIGFuYWx5c2lzIG9mIHRoZSBkdWFsLXVzZSBwb3RlbnRpYWwgb2Ygb3VyIHRlY2hub2xvZ3kuIER1YWwtdXNlIHJlZmVycyB0byB0aGUgcG9zc2liaWxpdHkgdGhhdCBzY2llbnRpZmljIGFkdmFuY2VzIGNhbiBiZSB1c2VkIGZvciBib3RoIGNpdmlsaWFuIGFuZCBtaWxpdGFyeSBwdXJwb3Nlcy4gVGhlcmVmb3JlLCB3ZSBoYXZlIGltcGxlbWVudGVkIHN0cmljdCBzYWZldHkgcHJvdG9jb2xzIGFuZCBldGhpY2FsIGd1aWRlbGluZXMgdG8gZW5zdXJlIHRoYXQgb3VyIHRlY2hub2xvZ3kgaXMgdXNlZCBleGNsdXNpdmVseSBmb3IgcGVhY2VmdWwgYW5kIHRoZXJhcGV1dGljIGFwcGxpY2F0aW9ucy4gXHJcbiAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICA8L0NvbGxhcHNpYmxlPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L1NlY3Rpb24+XHJcbiAgICAgIDxTZWN0aW9uIHRpdGxlPVwiT3VyIExhYlwiIGlkPVwiT3VyIExhYlwiPlxyXG4gICAgICAgIDxwPlxyXG4gICAgICAgIEFzIHBhcnQgb2Ygb3VyIGxhYm9yYXRvcnkgYWN0aXZpdGllcyBmb3Igb3VyIDxQcmVDeXNlLz4gcHJvamVjdCwgd2Ugd29ya2VkIGluIHZhcmlvdXMgbGFib3JhdG9yaWVzLiBGb3IgZ2VuZXJhbCBsYWIgd29yayBhbmQgY2xvbmluZyBleHBlcmltZW50cywgeW91IGNhbiBmaW5kIHNvbWUgcGljdHVyZXMgb2Ygb3VyIGxhYm9yYXRvcmllcyBiZWxvdzogIFxyXG4gICAgICAgIDwvcD5cclxuICAgICAgICA8SDQgdGV4dD1cIk91ciBDbG9uaW5nIExhYlwiPjwvSDQ+XHJcbiAgICAgICAgPHA+XHJcbiAgICAgICAgT3VyIENsb25pbmctbGFib3JhdG9yeSBpcyBkaXZpZGVkIGludG8gZGlmZmVyZW50IHdvcmsgYXJlYXMgdG8gZW5zdXJlIHRoYXQgdGhlIGV4cGVyaW1lbnRzIHJ1biBzbW9vdGhseSBhbmQgZWZmaWNpZW50bHkuIFRoZXNlIGluY2x1ZGUgdGhlIGdlbCBzdGF0aW9uLCB0aGUgUENSIHN0YXRpb24sIHRoZSB0cmFuc2Zvcm1hdGlvbiBzZWN0aW9uIGFuZCB0aGUgbWVhc3VyZW1lbnQgYXJlYS4gRWFjaCBhcmVhIGlzIHNwZWNpYWxseSBlcXVpcHBlZCBmb3IgdGhlIHJlc3BlY3RpdmUgbWV0aG9kLCBhbmQgdGhlIGNvcnJlc3BvbmRpbmcgZXhwZXJpbWVudHMgd2VyZSBjYXJyaWVkIG91dCBleGNsdXNpdmVseSBpbiB0aGUgZGVzaWduYXRlZCBzdGF0aW9ucy4gSW4gdGhpcyB3YXksIHdlIGVuc3VyZSB0aGF0IG91ciB3b3JrIGlzIGNhcnJpZWQgb3V0IHVuZGVyIG9wdGltYWwgY29uZGl0aW9ucyBhbmQgd2l0aCB0aGUgZ3JlYXRlc3QgcG9zc2libGUgcHJlY2lzaW9uLiBcclxuICAgICAgICA8T25lRmlndXJlXHJcbiAgICAgICAgcGljMT1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9iaW9zYWZldHkva29sbGFnZS9uZXcvaW1nLTIwNDEuanBlZ1wiXHJcbiAgICAgICAgbnVtPXszfVxyXG4gICAgICAgIGRlc2NyaXB0aW9uPVwiUGhvdG8tZ2FsbGVyeSBvZiBsYWJvcmF0b3J5LiBBOiBLZXkgbG9jay4gQjogS2V5LWxvY2tlZCBkb29yLiBDOiBBbGFybSBwbGFuLiBEOiBFbWVyZ2VueSBidXR0b24gZm9yIGVsZWN0cmlvdGlvbiBzdG9wLiBFOiBFbWVyZ2VuY3kgdGVsZXBob25lLiBGOiBGaXJzdCBhaWQga2l0LCBjYXJkaWFjIGRlZmlicmlsbGF0b24gYW5kIGVtZXJnZW5jeSBleGl0IGFuZCBmaXJlIGFsYXJtIHBsYW4uIEc6IFdhc2ggYmluIHdpdGggZW1lcmdlbmN5IGV5ZSB3YXNoLiBIOiBFbWVyZ2VuY3kgc2hvd2VyLiBJOiBMb2NrYWJsZSBjYWJpbmV0cyBmb3IgY2hlbWljYWwgc3RvcmFnZVwiXHJcbiAgICAgICAgYWx0MT1cIlBob3RvLWdhbGxlcnkgb2YgbGFib3JhdG9yeS4gQTogS2V5IGxvY2suIEI6IEtleS1sb2NrZWQgZG9vci4gQzogQWxhcm0gcGxhbi4gRDogRW1lcmdlbnkgYnV0dG9uIGZvciBlbGVjdHJpb3Rpb24gc3RvcC4gRTogRW1lcmdlbmN5IHRlbGVwaG9uZS4gRjogRmlyc3QgYWlkIGtpdCwgY2FyZGlhYyBkZWZpYnJpbGxhdG9uIGFuZCBlbWVyZ2VuY3kgZXhpdCBhbmQgZmlyZSBhbGFybSBwbGFuLiBHOiBXYXNoIGJpbiB3aXRoIGVtZXJnZW5jeSBleWUgd2FzaC4gSDogRW1lcmdlbmN5IHNob3dlci4gSTogTG9ja2FibGUgY2FiaW5ldHMgZm9yIGNoZW1pY2FsIHN0b3JhZ2VcIlxyXG4gICAgICAgIC8+XHJcbiAgICAgICAgPE9uZUZpZ3VyZVxyXG4gICAgICAgIHBpYzE9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvYmlvc2FmZXR5L2tvbGxhZ2UvbmV3L2ltZy0yMDM3LmpwZWdcIlxyXG4gICAgICAgIG51bT17NH1cclxuICAgICAgICBkZXNjcmlwdGlvbj1cIlBob3RvLWdhbGxlcnkgb2YgUzEgbGFib3JhdG9yeS4gQTogQXV0b2NsYXZlLiBCOiBSZWZyaWdlcmF0b3Igd2l0aCBjaGVtaWNhbHMuIEM6IFdlaWdoaW5nIHJvb20gd2l0aCBjaGVtaWNhbCBzdG9yYWdlLiBEOiBDbGVhbiBiZW5jaCB3b3JrIHNwYWNlIHdpdGggdm9ydGV4LCBwaXBldHRlcywgaGVhdCBibG9jayBhbmQgYmVuY2ggdG9wIGNlbnRyaWZ1Z2UuIEU6IHBIIGVsZWN0cm9kZSBpbiBmdW1lIGhvb2QuIEY6IEljZSBtYWNoaW5lLiBHOiBGaXJlIGRpc3Rpbmd1aXNoZXIgYW5kIFMxIHdhc3RlLiBIOiBGdW1lIGhvb2Qgd2l0aCBsaXF1aWQgd2FzdGVcIlxyXG4gICAgICAgIGFsdDE9XCJQaG90by1nYWxsZXJ5IG9mIFMxIGxhYm9yYXRvcnkuIEE6IEF1dG9jbGF2ZS4gQjogUmVmcmlnZXJhdG9yIHdpdGggY2hlbWljYWxzLiBDOiBXZWlnaGluZyByb29tIHdpdGggY2hlbWljYWwgc3RvcmFnZS4gRDogQ2xlYW4gYmVuY2ggd29yayBzcGFjZSB3aXRoIHZvcnRleCwgcGlwZXR0ZXMsIGhlYXQgYmxvY2sgYW5kIGJlbmNoIHRvcCBjZW50cmlmdWdlLiBFOiBwSCBlbGVjdHJvZGUgaW4gZnVtZSBob29kLiBGOiBJY2UgbWFjaGluZS4gRzogRmlyZSBkaXN0aW5ndWlzaGVyIGFuZCBTMSB3YXN0ZS4gSDogRnVtZSBob29kIHdpdGggbGlxdWlkIHdhc3RlLlwiXHJcbiAgICAgICAgLz5cclxuICAgICAgICA8L3A+XHJcbiAgICAgICAgPEg0IHRleHQ9XCJPdXIgQ2VsbCBDdWx0dXJlIExhYiBcIj48L0g0PlxyXG4gICAgICAgIDxwPlxyXG4gICAgICAgIEluIG91ciBjZWxsIGN1bHR1cmUgbGFib3JhdG9yeSwgd2Ugd29yayB1bmRlciBzdGVyaWxlIGNvbmRpdGlvbnMgdG8gZW5zdXJlIG9wdGltYWwgZ3Jvd3RoIGNvbmRpdGlvbnMgZm9yIGh1bWFuIGNlbGwgbGluZXMuIEFtb25nIG90aGVyIHRoaW5ncywgd2UgY2Fycnkgb3V0IHRyYW5zZmVjdGlvbnMgaW4gb3JkZXIgdG8gaW50cm9kdWNlIGdlbmV0aWMgbWF0ZXJpYWwgaW50byBjZWxscyBhbmQgaW52ZXN0aWdhdGUgdGhlaXIgYmVoYXZpb3IuIFN0cmljdCBwcm90b2NvbHMgYW5kIHN0YXRlLW9mLXRoZS1hcnQgdGVjaG5vbG9neSBlbnN1cmUgdGhlIHByZWNpc2lvbiBhbmQgcmVwcm9kdWNpYmlsaXR5IG9mIG91ciBleHBlcmltZW50cy4gXHJcbiAgICAgICAgPC9wPlxyXG4gICAgICAgIDxPbmVGaWd1cmVcclxuICAgICAgICBwaWMxPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2Jpb3NhZmV0eS9rb2xsYWdlL25ldy9pbWctMjA0MC5qcGVnXCJcclxuICAgICAgICBudW09ezV9XHJcbiAgICAgICAgZGVzY3JpcHRpb249XCJQaG90by1nYWxsZXJ5IG9mIGxhYm9yYXRvcnkgYW5kIGNoZW1pY2FsIHN0b3JhZ2UuIEE6IFNhZmV0eSBjYWJpbmV0cy4gQjogSW5jdWJhdG9yLiBDOiBTYWZldHkgY2FiaW5ldFwiXHJcbiAgICAgICAgYWx0MT1cIlBob3RvLWdhbGxlcnkgb2YgbGFib3JhdG9yeSBhbmQgY2hlbWljYWwgc3RvcmFnZS4gQTogU2FmZXR5IGNhYmluZXRzLiBCOiBJbmN1YmF0b3IuIEM6IFNhZmV0eSBjYWJpbmV0XCJcclxuICAgICAgICAvPlxyXG4gICAgICAgXHJcblxyXG4gICAgICAgIDxwPlxyXG4gICAgICAgIEluIG91ciBTMiBsYWJvcmF0b3J5LCB0aGUgaGFydmVzdGVkIG5hc2FsIGVwaXRoZWxpYWwgY2VsbHMgdGhhdCBzZXJ2ZSBhcyBwcmltYXJ5IGN1bHR1cmVzIHVuZGVyZ28gYSBjb21wcmVoZW5zaXZlIEhISCB0ZXN0IHRvIGVuc3VyZSB0aGVpciBzYWZldHkgYW5kIHN1aXRhYmlsaXR5IGZvciBmdXJ0aGVyIGV4cGVyaW1lbnRzLiBUaGlzIHRlc3QgaXMgY3J1Y2lhbCB0byBlbnN1cmUgdGhhdCB3ZSBjYW4gc3Vic2VxdWVudGx5IHdvcmsgc2FmZWx5IHdpdGggdGhlc2UgY2VsbHMgaW4gdGhlIFMxIHJhbmdlIHdpdGhvdXQgdGhlIHJpc2sgb2YgY29udGFtaW5hdGlvbiBvciB1bndhbnRlZCByZWxlYXNlIG9mIGJpb2xvZ2ljYWwgbWF0ZXJpYWwuIFxyXG4gICAgICAgIDwvcD5cclxuICAgICAgICA8T25lRmlndXJlXHJcbiAgICAgICAgcGljMT1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9iaW9zYWZldHkva29sbGFnZS9uZXcvaW1nLTIwNDIuanBlZ1wiXHJcbiAgICAgICAgbnVtPXs2fVxyXG4gICAgICAgIGRlc2NyaXB0aW9uPVwiUGhvdG8tZ2FsbGVyeSBvZiBTMiBsYWJvcmF0b3J5LiBBOiBEb29yIG9mIFMyIGxhYiB3aXRoIFMyIHNpZ24uIEI6IEVtZXJnZW5jeSBzaG93ZXIgYW5kIGZpcmUgZGlzdGluZ3Vpc2hlci4gQzogQ2xlYW4gYmVuY2ggd2l0aCBjZW50cmlmdWdlLiBEOiBJbmN1YmF0b3IuIEU6IFNhZmV0eSBjYWJpbmV0LiBGOiBFbWVyZ2VueSB0ZWxlcGhvbmUuIEc6IFMyIGxhYiBjb2F0IHdpdGggUzIgc2lnbi4gSDogTWljcm9zY29wZS4gSTogQXV0b2NsYXZlXCJcclxuICAgICAgICBhbHQxPVwiUGhvdG8tZ2FsbGVyeSBvZiBTMiBsYWJvcmF0b3J5LiBBOiBEb29yIG9mIFMyIGxhYiB3aXRoIFMyIHNpZ24uIEI6IEVtZXJnZW5jeSBzaG93ZXIgYW5kIGZpcmUgZGlzdGluZ3Vpc2hlci4gQzogQ2xlYW4gYmVuY2ggd2l0aCBjZW50cmlmdWdlLiBEOiBJbmN1YmF0b3IuIEU6IFNhZmV0eSBjYWJpbmV0LiBGOiBFbWVyZ2VueSB0ZWxlcGhvbmUuIEc6IFMyIGxhYiBjb2F0IHdpdGggUzIgc2lnbi4gSDogTWljcm9zY29wZS4gSTogQXV0b2NsYXZlLlwiXHJcbiAgICAgICAgLz5cclxuICAgICAgPC9TZWN0aW9uPlxyXG4gICAgIFxyXG4gICAgICA8U2VjdGlvbiB0aXRsZT1cIlJlZmVyZW5jZXNcIiBpZD1cIlJlZmVyZW5jZXNcIj5cclxuICAgICAgPG9sPnsvKjwhLS0gQ2l0YXRpb24gbnVtIDEtLT4gKi99XHJcbjxsaSB0eXBlb2Y9XCJzY2hlbWE6U2NvbGFybHlBcnRpY2xlXCIgcm9sZT1cImRvYy1iaWJsaW9lbnRyeVwiIHByb3BlcnR5PVwic2NoZW1hOmNpdGF0aW9uXCIgaWQ9XCJkZXNjLTFcIj5cclxuXHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTphdXRob3JcIiB0eXBlb2Y9XCJzY2hlbWE6UGVyc29uXCI+XHJcblx0XHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpOYW1lXCI+IENsb2FyZWMtVW5nLCBGLjwvc3Bhbj5cclxuXHRcdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOk5hbWVcIj4gQmVhdWxpZXUsIEouPC9zcGFuPlxyXG5cdFx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6TmFtZVwiPiBTdXRoYW5hbnRoYW4sIEEuPC9zcGFuPlxyXG5cdFx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6TmFtZVwiPiBMZWhuZXJ0eiwgQi48L3NwYW4+XHJcblx0XHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpOYW1lXCI+IFNhdXZhZ2VhdSwgRy48L3NwYW4+XHJcblx0XHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpOYW1lXCI+IFNoZXBwYXJkLCBILiBNLjwvc3Bhbj5cclxuXHRcdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOk5hbWVcIj4gS25hcHAsIEQuIEouIEguIEYuPC9zcGFuPlxyXG5cdDwvc3Bhbj5cclxuXHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpuYW1lXCI+Jm5ic3A7XHJcbk5lYXItcGVyZmVjdCBwcmVjaXNlIG9uLXRhcmdldCBlZGl0aW5nIG9mIGh1bWFuIGhlbWF0b3BvaWV0aWMgc3RlbSBhbmRcclxucHJvZ2VuaXRvciBjZWxsc1xyXG48L3NwYW4+LiBcclxuXHQ8aSBwcm9wZXJ0eT1cInNjaGVtYTpwdWJsaXNoZXJcIiB0eXBlb2Y9XCJzY2hlbWE6T3JnYW5pemF0aW9uXCI+IGVMaWZlPC9pPlxyXG5cdDxiIHByb3BlcnR5PVwiaXNzdWVOdW1iZXJcIiB0eXBlb2Y9XCJQdWJsaWNhdGlvbklzc3VlXCI+IDEyLDwvYj5cclxuXHQmbmJzcDsoPHRpbWUgcHJvcGVydHk9XCJzY2hlbWE6ZGF0ZVB1Ymxpc2hlZFwiIGRhdGF0eXBlPVwieHNkOmdZZWFyXCIgZGF0ZVRpbWU9XCIgMjAyNFwiPjIwMjQ8L3RpbWU+KS5cclxuXHQ8YSBjbGFzc05hbWU9XCJkb2lcIiBocmVmPVwiaHR0cHM6Ly9kb2kub3JnLzEwLjc1NTQvZUxpZmUuOTEyODhcIj4gZG9pOiAxMC43NTU0L2VMaWZlLjkxMjg4PC9hPlxyXG48L2xpPlxyXG5cclxuey8qPCEtLSBDaXRhdGlvbiBudW0gMi0tPiAqL31cclxuPGxpIHR5cGVvZj1cInNjaGVtYTpTY29sYXJseUFydGljbGVcIiByb2xlPVwiZG9jLWJpYmxpb2VudHJ5XCIgcHJvcGVydHk9XCJzY2hlbWE6Y2l0YXRpb25cIiBpZD1cImRlc2MtMlwiPlxyXG5cdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOmF1dGhvclwiIHR5cGVvZj1cInNjaGVtYTpQZXJzb25cIj5cclxuXHRcdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOk5hbWVcIj4gTmVsc29uLCBKLiBXLjwvc3Bhbj5cclxuXHRcdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOk5hbWVcIj4gUmFuZG9scGgsIFAuIEIuPC9zcGFuPlxyXG5cdFx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6TmFtZVwiPiBTaGVuLCBTLiBQLjwvc3Bhbj5cclxuXHRcdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOk5hbWVcIj4gRXZlcmV0dGUsIEsuIEEuPC9zcGFuPlxyXG5cdFx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6TmFtZVwiPiBDaGVuLCBQLiBKLjwvc3Bhbj5cclxuXHRcdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOk5hbWVcIj4gQW56YWxvbmUsIEEuIFYuPC9zcGFuPlxyXG5cdFx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6TmFtZVwiPiBBbiwgTS48L3NwYW4+XHJcblx0XHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpOYW1lXCI+IGV0IGFsLjwvc3Bhbj5cclxuXHQ8L3NwYW4+XHJcblx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6bmFtZVwiPiZuYnNwO0VuZ2luZWVyZWQgcGVnUk5BcyBpbXByb3ZlIHByaW1lIGVkaXRpbmcgZWZmaWNpZW5jeTwvc3Bhbj4uIFxyXG5cdDxpIHByb3BlcnR5PVwic2NoZW1hOnB1Ymxpc2hlclwiIHR5cGVvZj1cInNjaGVtYTpPcmdhbml6YXRpb25cIj4gTmF0dXJlIEJpb3RlY2hub2xvZ3k8L2k+XHJcblx0PGIgcHJvcGVydHk9XCJpc3N1ZU51bWJlclwiIHR5cGVvZj1cIlB1YmxpY2F0aW9uSXNzdWVcIj4gNDA8L2I+XHJcblx0LCZuYnNwOzxzcGFuIHByb3BlcnR5PVwic2NoZW1hOnBhZ2VCZWdpblwiPiA0MDI8L3NwYW4+LTxzcGFuIHByb3BlcnR5PVwic2NoZW1hOnBhZ2VFbmRcIj40MTA8L3NwYW4+Jm5ic3A7XHJcblx0KDx0aW1lIHByb3BlcnR5PVwic2NoZW1hOmRhdGVQdWJsaXNoZWRcIiBkYXRhdHlwZT1cInhzZDpnWWVhclwiIGRhdGVUaW1lPVwiIDIwMjJcIj4yMDIyPC90aW1lPikuXHJcblx0PGEgY2xhc3NOYW1lPVwiZG9pXCIgaHJlZj1cImh0dHBzOi8vZG9pLm9yZy8xMC4xMDM4L3M0MTU4Ny0wMjEtMDEwMzktN1wiPiBkb2k6IDEwLjEwMzgvczQxNTg3LTAyMS0wMTAzOS03PC9hPlxyXG48L2xpPlxyXG5cclxuey8qPCEtLSBDaXRhdGlvbiBudW0gMy0tPiAqL31cclxuPGxpIHR5cGVvZj1cInNjaGVtYTpTY29sYXJseUFydGljbGVcIiByb2xlPVwiZG9jLWJpYmxpb2VudHJ5XCIgcHJvcGVydHk9XCJzY2hlbWE6Y2l0YXRpb25cIiBpZD1cImRlc2MtM1wiPlxyXG5cdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOmF1dGhvclwiIHR5cGVvZj1cInNjaGVtYTpQZXJzb25cIj5cclxuXHRcdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOk5hbWVcIj4gRG9lbmNoLCBKLiBHLjwvc3Bhbj5cclxuXHRcdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOk5hbWVcIj4gRnVzaSwgTi48L3NwYW4+XHJcblx0XHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpOYW1lXCI+IFN1bGxlbmRlciwgTS48L3NwYW4+XHJcblx0XHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpOYW1lXCI+IEhlZ2RlLCBNLjwvc3Bhbj5cclxuXHRcdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOk5hbWVcIj4gVmFpbWJlcmcsIEUuIFcuPC9zcGFuPlxyXG5cdFx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6TmFtZVwiPiBEb25vdmFuLCBLLiBGLjwvc3Bhbj5cclxuXHRcdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOk5hbWVcIj4gU21pdGgsIEkuPC9zcGFuPlxyXG5cdFx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6TmFtZVwiPiBldCBhbC48L3NwYW4+XHJcblx0PC9zcGFuPlxyXG5cdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOm5hbWVcIj4mbmJzcDtcclxuT3B0aW1pemVkIHNnUk5BIGRlc2lnbiB0byBtYXhpbWl6ZSBhY3Rpdml0eSBhbmQgbWluaW1pemUgb2ZmLXRhcmdldCBlZmZlY3RzXHJcbm9mIENSSVNQUi1DYXM5XHJcbjwvc3Bhbj4uIFxyXG5cdDxpIHByb3BlcnR5PVwic2NoZW1hOnB1Ymxpc2hlclwiIHR5cGVvZj1cInNjaGVtYTpPcmdhbml6YXRpb25cIj4gTmF0dXJlIEJpb3RlY2hub2xvZ3k8L2k+XHJcblx0PGIgcHJvcGVydHk9XCJpc3N1ZU51bWJlclwiIHR5cGVvZj1cIlB1YmxpY2F0aW9uSXNzdWVcIj4gMzQ8L2I+XHJcblx0LCZuYnNwOzxzcGFuIHByb3BlcnR5PVwic2NoZW1hOnBhZ2VCZWdpblwiPiAxODQ8L3NwYW4+LTxzcGFuIHByb3BlcnR5PVwic2NoZW1hOnBhZ2VFbmRcIj4xOTE8L3NwYW4+Jm5ic3A7XHJcblx0KDx0aW1lIHByb3BlcnR5PVwic2NoZW1hOmRhdGVQdWJsaXNoZWRcIiBkYXRhdHlwZT1cInhzZDpnWWVhclwiIGRhdGVUaW1lPVwiIDIwMTZcIj4yMDE2PC90aW1lPikuXHJcblx0PGEgY2xhc3NOYW1lPVwiZG9pXCIgaHJlZj1cImh0dHBzOi8vZG9pLm9yZy8xMC4xMDM4L25idC4zNDM3XCI+IGRvaTogMTAuMTAzOC9uYnQuMzQzNzwvYT5cclxuPC9saT5cclxuXHJcbnsvKjwhLS0gQ2l0YXRpb24gbnVtIDQtLT4gKi99XHJcbjxsaSB0eXBlb2Y9XCJzY2hlbWE6U2NvbGFybHlBcnRpY2xlXCIgcm9sZT1cImRvYy1iaWJsaW9lbnRyeVwiIHByb3BlcnR5PVwic2NoZW1hOmNpdGF0aW9uXCIgaWQ9XCJkZXNjLTRcIj5cclxuXHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTphdXRob3JcIiB0eXBlb2Y9XCJzY2hlbWE6UGVyc29uXCI+XHJcblx0XHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpOYW1lXCI+IFdoaXRlLCBOLjwvc3Bhbj5cclxuXHRcdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOk5hbWVcIj4gU2FkZWVzaGt1bWFyLCBILjwvc3Bhbj5cclxuXHRcdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOk5hbWVcIj4gU3VuLCBBLjwvc3Bhbj5cclxuXHRcdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOk5hbWVcIj4gU3VkYXJzYW4sIE4uPC9zcGFuPlxyXG5cdFx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6TmFtZVwiPiBCcmVha2VyLCBSLiBSLjwvc3Bhbj5cclxuXHQ8L3NwYW4+XHJcblx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6bmFtZVwiPiZuYnNwO1xyXG5OYSsgcmlib3N3aXRjaGVzIHJlZ3VsYXRlIGdlbmVzIGZvciBkaXZlcnNlIHBoeXNpb2xvZ2ljYWwgcHJvY2Vzc2VzIGluXHJcbmJhY3RlcmlhXHJcbjwvc3Bhbj4uIFxyXG5cdDxpIHByb3BlcnR5PVwic2NoZW1hOnB1Ymxpc2hlclwiIHR5cGVvZj1cInNjaGVtYTpPcmdhbml6YXRpb25cIj4gTmF0dXJlIENoZW1pY2FsIEJpb2xvZ3k8L2k+XHJcblx0PGIgcHJvcGVydHk9XCJpc3N1ZU51bWJlclwiIHR5cGVvZj1cIlB1YmxpY2F0aW9uSXNzdWVcIj4gMTg8L2I+XHJcblx0LCZuYnNwOzxzcGFuIHByb3BlcnR5PVwic2NoZW1hOnBhZ2VCZWdpblwiPiA4Nzg8L3NwYW4+LTxzcGFuIHByb3BlcnR5PVwic2NoZW1hOnBhZ2VFbmRcIj44ODU8L3NwYW4+Jm5ic3A7XHJcblx0KDx0aW1lIHByb3BlcnR5PVwic2NoZW1hOmRhdGVQdWJsaXNoZWRcIiBkYXRhdHlwZT1cInhzZDpnWWVhclwiIGRhdGVUaW1lPVwiIDIwMjJcIj4yMDIyPC90aW1lPikuXHJcblx0PGEgY2xhc3NOYW1lPVwiZG9pXCIgaHJlZj1cImh0dHBzOi8vZG9pLm9yZy8xMC4xMDM4L3M0MTU4OS0wMjItMDEwODYtNFwiPiBkb2k6IDEwLjEwMzgvczQxNTg5LTAyMi0wMTA4Ni00PC9hPlxyXG48L2xpPlxyXG5cclxuey8qPCEtLSBDaXRhdGlvbiBudW0gNS0tPiAqL31cclxuPGxpIHR5cGVvZj1cInNjaGVtYTpTY29sYXJseUFydGljbGVcIiByb2xlPVwiZG9jLWJpYmxpb2VudHJ5XCIgcHJvcGVydHk9XCJzY2hlbWE6Y2l0YXRpb25cIiBpZD1cImRlc2MtNVwiPlxyXG5cdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOmF1dGhvclwiIHR5cGVvZj1cInNjaGVtYTpQZXJzb25cIj5cclxuXHRcdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOk5hbWVcIj4gSXdhd2FraSwgVC48L3NwYW4+XHJcblx0XHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpOYW1lXCI+IEFrYWksIFIuPC9zcGFuPlxyXG5cdDwvc3Bhbj5cclxuXHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpuYW1lXCI+Jm5ic3A7XHJcbkFuYWx5c2lzIG9mIHRoZSBYQlAxIHNwbGljaW5nIG1lY2hhbmlzbSB1c2luZyBlbmRvcGxhc21pYyByZXRpY3VsdW1cclxuc3RyZXNzLWluZGljYXRvcnNcclxuPC9zcGFuPi4gXHJcblx0PGkgcHJvcGVydHk9XCJzY2hlbWE6cHVibGlzaGVyXCIgdHlwZW9mPVwic2NoZW1hOk9yZ2FuaXphdGlvblwiPiBCaW9jaGVtaWNhbCBhbmQgQmlvcGh5c2ljYWwgUmVzZWFyY2ggQ29tbXVuaWNhdGlvbnM8L2k+XHJcblx0PGIgcHJvcGVydHk9XCJpc3N1ZU51bWJlclwiIHR5cGVvZj1cIlB1YmxpY2F0aW9uSXNzdWVcIj4gMzUwPC9iPlxyXG5cdCwmbmJzcDs8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpwYWdlQmVnaW5cIj4gNzA5PC9zcGFuPi08c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpwYWdlRW5kXCI+NzE1PC9zcGFuPiZuYnNwO1xyXG5cdCg8dGltZSBwcm9wZXJ0eT1cInNjaGVtYTpkYXRlUHVibGlzaGVkXCIgZGF0YXR5cGU9XCJ4c2Q6Z1llYXJcIiBkYXRlVGltZT1cIiAyMDA2XCI+MjAwNjwvdGltZT4pLlxyXG5cdDxhIGNsYXNzTmFtZT1cImRvaVwiIGhyZWY9XCJodHRwczovL2RvaS5vcmcvMTAuMTAxNi9qLmJicmMuMjAwNi4wOS4xMDBcIj4gZG9pOiAxMC4xMDE2L2ouYmJyYy4yMDA2LjA5LjEwMDwvYT5cclxuPC9saT5cclxuXHJcbnsvKjwhLS0gQ2l0YXRpb24gbnVtIDYtLT4gKi99XHJcbjxsaSB0eXBlb2Y9XCJzY2hlbWE6U2NvbGFybHlBcnRpY2xlXCIgcm9sZT1cImRvYy1iaWJsaW9lbnRyeVwiIHByb3BlcnR5PVwic2NoZW1hOmNpdGF0aW9uXCIgaWQ9XCJkZXNjLTZcIj5cclxuXHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTphdXRob3JcIiB0eXBlb2Y9XCJzY2hlbWE6UGVyc29uXCI+XHJcblx0XHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpOYW1lXCI+IFpoYW5nLCBZLjwvc3Bhbj5cclxuXHRcdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOk5hbWVcIj4gTGluLCBTLjwvc3Bhbj5cclxuXHRcdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOk5hbWVcIj4gWWFvLCBKLjwvc3Bhbj5cclxuXHRcdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOk5hbWVcIj4gQ2FpLCBXLjwvc3Bhbj5cclxuXHRcdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOk5hbWVcIj4gQ2hlbiwgSC48L3NwYW4+XHJcblx0XHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpOYW1lXCI+IEFpZXJrZW4sIEEuPC9zcGFuPlxyXG5cdFx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6TmFtZVwiPiBXYW5nLCBaLjwvc3Bhbj5cclxuXHRcdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOk5hbWVcIj4gZXQgYWwuPC9zcGFuPlxyXG5cdDwvc3Bhbj5cclxuXHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpuYW1lXCI+Jm5ic3A7XHJcblhCUDEgc3BsaWNpbmcgY29udHJpYnV0ZXMgdG8gZW5kb3BsYXNtaWMgcmV0aWN1bHVtIHN0cmVzcy1pbmR1Y2VkIGh1bWFuIGlzbGV0XHJcbmFteWxvaWQgcG9seXBlcHRpZGUgdXAtcmVndWxhdGlvblxyXG48L3NwYW4+LiBcclxuXHQ8aSBwcm9wZXJ0eT1cInNjaGVtYTpwdWJsaXNoZXJcIiB0eXBlb2Y9XCJzY2hlbWE6T3JnYW5pemF0aW9uXCI+IEdlbmVzICYgRGlzZWFzZXM8L2k+XHJcblx0PGIgcHJvcGVydHk9XCJpc3N1ZU51bWJlclwiIHR5cGVvZj1cIlB1YmxpY2F0aW9uSXNzdWVcIj4gMTE8L2I+XHJcblx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6cGFnZUJlZ2luXCI+MTAxMTQ4PC9zcGFuPiZuYnNwO1xyXG5cdCg8dGltZSBwcm9wZXJ0eT1cInNjaGVtYTpkYXRlUHVibGlzaGVkXCIgZGF0YXR5cGU9XCJ4c2Q6Z1llYXJcIiBkYXRlVGltZT1cIiAyMDIzXCI+MjAyMzwvdGltZT4pLlxyXG5cdDxhIGNsYXNzTmFtZT1cImRvaVwiIGhyZWY9XCJodHRwczovL2RvaS5vcmcvMTAuMTAxNi9qLmdlbmRpcy4yMDIzLjEwMTE0OFwiPiBkb2k6IDEwLjEwMTYvai5nZW5kaXMuMjAyMy4xMDExNDg8L2E+XHJcbjwvbGk+XHJcblxyXG57Lyo8IS0tIENpdGF0aW9uIG51bSA3LS0+ICovfVxyXG48bGkgdHlwZW9mPVwic2NoZW1hOlNjb2xhcmx5QXJ0aWNsZVwiIHJvbGU9XCJkb2MtYmlibGlvZW50cnlcIiBwcm9wZXJ0eT1cInNjaGVtYTpjaXRhdGlvblwiIGlkPVwiZGVzYy03XCI+XHJcblx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6YXV0aG9yXCIgdHlwZW9mPVwic2NoZW1hOlBlcnNvblwiPlxyXG5cdFx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6TmFtZVwiPiBXZWksIFQuPC9zcGFuPlxyXG5cdFx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6TmFtZVwiPiBTdW4sIFkuPC9zcGFuPlxyXG5cdFx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6TmFtZVwiPiBDaGVuZywgUS48L3NwYW4+XHJcblx0XHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpOYW1lXCI+IENoYXR0ZXJqZWUsIFMuPC9zcGFuPlxyXG5cdFx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6TmFtZVwiPiBUcmF5bG9yLCBaLjwvc3Bhbj5cclxuXHRcdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOk5hbWVcIj4gSm9obnNvbiwgTC4gVC48L3NwYW4+XHJcblx0XHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpOYW1lXCI+IENvcXVlbGluLCBNLiBMLjwvc3Bhbj5cclxuXHRcdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOk5hbWVcIj4gZXQgYWwuPC9zcGFuPlxyXG5cdDwvc3Bhbj5cclxuXHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpuYW1lXCI+Jm5ic3A7XHJcbkx1bmcgU09SVCBMTlBzIGVuYWJsZSBwcmVjaXNlIGhvbW9sb2d5LWRpcmVjdGVkIHJlcGFpciBtZWRpYXRlZFxyXG5DUklTUFIvQ2FzIGdlbm9tZSBjb3JyZWN0aW9uIGluIEN5c3RpYyBGaWJyb3NpcyBtb2RlbHNcclxuPC9zcGFuPi4gXHJcblx0PGkgcHJvcGVydHk9XCJzY2hlbWE6cHVibGlzaGVyXCIgdHlwZW9mPVwic2NoZW1hOk9yZ2FuaXphdGlvblwiPiBOYXR1cmUgQ29tbXVuaWNhdGlvbnM8L2k+XHJcblx0PGIgcHJvcGVydHk9XCJpc3N1ZU51bWJlclwiIHR5cGVvZj1cIlB1YmxpY2F0aW9uSXNzdWVcIj4gMTQsPC9iPlxyXG5cdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOnBhZ2VCZWdpblwiPiZuYnNwOzczMjI8L3NwYW4+Jm5ic3A7XHJcblx0KDx0aW1lIHByb3BlcnR5PVwic2NoZW1hOmRhdGVQdWJsaXNoZWRcIiBkYXRhdHlwZT1cInhzZDpnWWVhclwiIGRhdGVUaW1lPVwiIDIwMjNcIj4yMDIzPC90aW1lPikuXHJcblx0PGEgY2xhc3NOYW1lPVwiZG9pXCIgaHJlZj1cImh0dHBzOi8vZG9pLm9yZy8xMC4xMDM4L3M0MTQ2Ny0wMjMtNDI5NDgtMlwiPiBkb2k6IDEwLjEwMzgvczQxNDY3LTAyMy00Mjk0OC0yPC9hPlxyXG48L2xpPlxyXG5cclxuey8qPCEtLSBDaXRhdGlvbiBudW0gOC0tPiAqL31cclxuPGxpIHR5cGVvZj1cInNjaGVtYTpTY29sYXJseUFydGljbGVcIiByb2xlPVwiZG9jLWJpYmxpb2VudHJ5XCIgcHJvcGVydHk9XCJzY2hlbWE6Y2l0YXRpb25cIiBpZD1cImRlc2MtOFwiPlxyXG5cdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOmF1dGhvclwiIHR5cGVvZj1cInNjaGVtYTpQZXJzb25cIj5cclxuXHRcdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOk5hbWVcIj4gSWJyYWhpbSwgTS48L3NwYW4+XHJcblx0XHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpOYW1lXCI+IFJhbWFkYW4sIEUuPC9zcGFuPlxyXG5cdFx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6TmFtZVwiPiBFbHNhZGVrLCBOLiBFLjwvc3Bhbj5cclxuXHRcdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOk5hbWVcIj4gRW1hbSwgUy4gRS48L3NwYW4+XHJcblx0XHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpOYW1lXCI+IFNoaW1penUsIFQuPC9zcGFuPlxyXG5cdFx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6TmFtZVwiPiBBbmRvLCBILjwvc3Bhbj5cclxuXHRcdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOk5hbWVcIj4gSXNoaW1hLCBZLjwvc3Bhbj5cclxuXHRcdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOk5hbWVcIj4gZXQgYWwuPC9zcGFuPlxyXG5cdDwvc3Bhbj5cclxuXHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpuYW1lXCI+Jm5ic3A7XHJcblBvbHlldGh5bGVuZSBnbHljb2wgKFBFRyk6IFRoZSBuYXR1cmUsIGltbXVub2dlbmljaXR5LCBhbmQgcm9sZSBpbiB0aGVcclxuaHlwZXJzZW5zaXRpdml0eSBvZiBQRUd5bGF0ZWQgcHJvZHVjdHNcclxuPC9zcGFuPi4gXHJcblx0PGkgcHJvcGVydHk9XCJzY2hlbWE6cHVibGlzaGVyXCIgdHlwZW9mPVwic2NoZW1hOk9yZ2FuaXphdGlvblwiPiBKb3VybmFsIG9mIENvbnRyb2xsZWQgUmVsZWFzZTwvaT5cclxuXHQ8YiBwcm9wZXJ0eT1cImlzc3VlTnVtYmVyXCIgdHlwZW9mPVwiUHVibGljYXRpb25Jc3N1ZVwiPiAzNTE8L2I+XHJcblx0LCZuYnNwOzxzcGFuIHByb3BlcnR5PVwic2NoZW1hOnBhZ2VCZWdpblwiPiAyMTU8L3NwYW4+LTxzcGFuIHByb3BlcnR5PVwic2NoZW1hOnBhZ2VFbmRcIj4yMzA8L3NwYW4+Jm5ic3A7XHJcblx0KDx0aW1lIHByb3BlcnR5PVwic2NoZW1hOmRhdGVQdWJsaXNoZWRcIiBkYXRhdHlwZT1cInhzZDpnWWVhclwiIGRhdGVUaW1lPVwiIDIwMjJcIj4yMDIyPC90aW1lPikuXHJcblx0PGEgY2xhc3NOYW1lPVwiZG9pXCIgaHJlZj1cImh0dHBzOi8vZG9pLm9yZy9odHRwczovL2RvaS5vcmcvMTAuMTAxNi9qLmpjb25yZWwuMjAyMi4wOS4wMzFcIj4gZG9pOiBodHRwczovL2RvaS5vcmcvMTAuMTAxNi9qLmpjb25yZWwuMjAyMi4wOS4wMzE8L2E+XHJcbjwvbGk+XHJcblxyXG57Lyo8IS0tIENpdGF0aW9uIG51bSA5LS0+ICovfVxyXG48bGkgdHlwZW9mPVwic2NoZW1hOlNjb2xhcmx5QXJ0aWNsZVwiIHJvbGU9XCJkb2MtYmlibGlvZW50cnlcIiBwcm9wZXJ0eT1cInNjaGVtYTpjaXRhdGlvblwiIGlkPVwiZGVzYy05XCI+XHJcblx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6YXV0aG9yXCIgdHlwZW9mPVwic2NoZW1hOlBlcnNvblwiPlxyXG5cdFx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6TmFtZVwiPiBKaWFuZywgQS4gWS48L3NwYW4+XHJcblx0XHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpOYW1lXCI+IFdpdHRlbiwgSi48L3NwYW4+XHJcblx0XHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpOYW1lXCI+IFJhamksIEkuIE8uPC9zcGFuPlxyXG5cdFx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6TmFtZVwiPiBFd2VqZSwgRi48L3NwYW4+XHJcblx0XHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpOYW1lXCI+IE1hY0lzYWFjLCBDLjwvc3Bhbj5cclxuXHRcdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOk5hbWVcIj4gTWVuZywgUy48L3NwYW4+XHJcblx0XHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpOYW1lXCI+IE9sYWRpbWVqaSwgRi4gQS48L3NwYW4+XHJcblx0XHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpOYW1lXCI+IGV0IGFsLjwvc3Bhbj5cclxuXHQ8L3NwYW4+XHJcblx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6bmFtZVwiPiZuYnNwO1xyXG5Db21iaW5hdG9yaWFsIGRldmVsb3BtZW50IG9mIG5lYnVsaXplZCBtUk5BIGRlbGl2ZXJ5IGZvcm11bGF0aW9ucyBmb3IgdGhlXHJcbmx1bmdzXHJcbjwvc3Bhbj4uIFxyXG5cdDxpIHByb3BlcnR5PVwic2NoZW1hOnB1Ymxpc2hlclwiIHR5cGVvZj1cInNjaGVtYTpPcmdhbml6YXRpb25cIj4gTmF0dXJlIE5hbm90ZWNobm9sb2d5PC9pPlxyXG5cdDxiIHByb3BlcnR5PVwiaXNzdWVOdW1iZXJcIiB0eXBlb2Y9XCJQdWJsaWNhdGlvbklzc3VlXCI+IDE5PC9iPlxyXG5cdCwmbmJzcDs8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpwYWdlQmVnaW5cIj4gMzY0PC9zcGFuPi08c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpwYWdlRW5kXCI+Mzc1PC9zcGFuPiZuYnNwO1xyXG5cdCg8dGltZSBwcm9wZXJ0eT1cInNjaGVtYTpkYXRlUHVibGlzaGVkXCIgZGF0YXR5cGU9XCJ4c2Q6Z1llYXJcIiBkYXRlVGltZT1cIiAyMDI0XCI+MjAyNDwvdGltZT4pLlxyXG5cdDxhIGNsYXNzTmFtZT1cImRvaVwiIGhyZWY9XCJodHRwczovL2RvaS5vcmcvMTAuMTAzOC9zNDE1NjUtMDIzLTAxNTQ4LTNcIj4gZG9pOiAxMC4xMDM4L3M0MTU2NS0wMjMtMDE1NDgtMzwvYT5cclxuPC9saT5cclxuXHJcbnsvKjwhLS0gQ2l0YXRpb24gbnVtIDEwLS0+ICovfVxyXG48bGkgdHlwZW9mPVwic2NoZW1hOlNjb2xhcmx5QXJ0aWNsZVwiIHJvbGU9XCJkb2MtYmlibGlvZW50cnlcIiBwcm9wZXJ0eT1cInNjaGVtYTpjaXRhdGlvblwiIGlkPVwiZGVzYy0xMFwiPlxyXG5cdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOmF1dGhvclwiIHR5cGVvZj1cInNjaGVtYTpQZXJzb25cIj5cclxuXHRcdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOk5hbWVcIj4gVmlsXHUwMEUwLUdvbnpcdTAwRTFsZXosIE0uPC9zcGFuPlxyXG5cdFx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6TmFtZVwiPiBQaW50ZSwgTC48L3NwYW4+XHJcblx0XHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpOYW1lXCI+IEZyYWRpcXVlLCBSLjwvc3Bhbj5cclxuXHRcdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOk5hbWVcIj4gQ2F1c2EsIEUuPC9zcGFuPlxyXG5cdFx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6TmFtZVwiPiBLb29sLCBILjwvc3Bhbj5cclxuXHRcdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOk5hbWVcIj4gUm9kcmF0LCBNLjwvc3Bhbj5cclxuXHRcdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOk5hbWVcIj4gTW9yZWxsLCBDLiBNLjwvc3Bhbj5cclxuXHRcdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOk5hbWVcIj4gZXQgYWwuPC9zcGFuPlxyXG5cdDwvc3Bhbj5cclxuXHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpuYW1lXCI+Jm5ic3A7XHJcbkluIHZpdHJvIHBsYXRmb3JtIHRvIG1vZGVsIHRoZSBmdW5jdGlvbiBvZiBpb25vY3l0ZXMgaW4gdGhlIGh1bWFuIGFpcndheVxyXG5lcGl0aGVsaXVtXHJcbjwvc3Bhbj4uIFxyXG5cdDxpIHByb3BlcnR5PVwic2NoZW1hOnB1Ymxpc2hlclwiIHR5cGVvZj1cInNjaGVtYTpPcmdhbml6YXRpb25cIj4gUmVzcGlyYXRvcnkgUmVzZWFyY2g8L2k+XHJcblx0PGIgcHJvcGVydHk9XCJpc3N1ZU51bWJlclwiIHR5cGVvZj1cIlB1YmxpY2F0aW9uSXNzdWVcIj4gMjU8L2I+XHJcblx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6cGFnZUJlZ2luXCI+Jm5ic3A7MTgwPC9zcGFuPiZuYnNwO1xyXG5cdCg8dGltZSBwcm9wZXJ0eT1cInNjaGVtYTpkYXRlUHVibGlzaGVkXCIgZGF0YXR5cGU9XCJ4c2Q6Z1llYXJcIiBkYXRlVGltZT1cIiAyMDI0XCI+MjAyNDwvdGltZT4pLlxyXG5cdDxhIGNsYXNzTmFtZT1cImRvaVwiIGhyZWY9XCJodHRwczovL2RvaS5vcmcvMTAuMTE4Ni9zMTI5MzEtMDI0LTAyODAwLTdcIj4gZG9pOiAxMC4xMTg2L3MxMjkzMS0wMjQtMDI4MDAtNzwvYT5cclxuPC9saT5cclxuXHJcbnsvKjwhLS0gQ2l0YXRpb24gbnVtIDExLS0+ICovfVxyXG48bGkgdHlwZW9mPVwic2NoZW1hOkJvb2tcIiByb2xlPVwiZG9jLWJpYmxpb2VudHJ5XCIgcHJvcGVydHk9XCJzY2hlbWE6Y2l0YXRpb25cIiBpZD1cImRlc2MtMTFcIj5cclxuXHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTphdXRob3JcIiB0eXBlb2Y9XCJzY2hlbWE6UGVyc29uXCI+XHJcblx0XHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpOYW1lXCI+IFBhcmlzLCBLLjwvc3Bhbj5cclxuXHQ8L3NwYW4+XHJcblx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6bmFtZVwiPiZuYnNwO0dlbm9tZSBFZGl0aW5nIGFuZCBCaW9sb2dpY2FsIFdlYXBvbnM6IEFzc2Vzc2luZyB0aGUgUmlzayBvZiBNaXN1c2UuPC9zcGFuPlxyXG5cdDxpIHByb3BlcnR5PVwic2NoZW1hOnB1Ymxpc2hlclwiIHR5cGVvZj1cInNjaGVtYTpPcmdhbml6YXRpb25cIj4mbmJzcDtTcHJpbmdlciBOYXR1cmUgU3dpdHplcmxhbmQgQUc8L2k+XHJcblx0Jm5ic3A7KDx0aW1lIHByb3BlcnR5PVwic2NoZW1hOmRhdGVQdWJsaXNoZWRcIiBkYXRhdHlwZT1cInhzZDpnWWVhclwiIGRhdGVUaW1lPVwiMjAyM1wiPjIwMjM8L3RpbWU+KS5cclxuPC9saT5cclxuXHJcbnsvKjwhLS0gQ2l0YXRpb24gbnVtIDEyLS0+ICovfVxyXG48bGkgdHlwZW9mPVwic2NoZW1hOlNjb2xhcmx5QXJ0aWNsZVwiIHJvbGU9XCJkb2MtYmlibGlvZW50cnlcIiBwcm9wZXJ0eT1cInNjaGVtYTpjaXRhdGlvblwiIGlkPVwiZGVzYy0xMlwiPlxyXG5cdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOmF1dGhvclwiIHR5cGVvZj1cInNjaGVtYTpQZXJzb25cIj5cclxuXHRcdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOk5hbWVcIj4gV2lja2lzZXIsIEouIEsuPC9zcGFuPlxyXG5cdDwvc3Bhbj5cclxuXHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpuYW1lXCI+Jm5ic3A7XHJcblRoZSBkZW1vY3JhdGl6YXRpb24gb2YgYmlvbG9neTogaG93IENSSVNQUiBhbmQgc3ludGhldGljIGJpb2xvZ3kgdXNoZXIgaW4gbmV3XHJcbmJpb3NlY3VyaXR5IHRocmVhdHNcclxuPC9zcGFuPi4gXHJcblx0PGkgcHJvcGVydHk9XCJzY2hlbWE6cHVibGlzaGVyXCIgdHlwZW9mPVwic2NoZW1hOk9yZ2FuaXphdGlvblwiPiBEZWZlbnNlIEhvcml6b25zPC9pPlxyXG5cdDxiIHByb3BlcnR5PVwiaXNzdWVOdW1iZXJcIiB0eXBlb2Y9XCJQdWJsaWNhdGlvbklzc3VlXCI+IDg1PC9iPlxyXG5cdCwmbmJzcDs8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpwYWdlQmVnaW5cIj4gMTwvc3Bhbj4tPHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6cGFnZUVuZFwiPjE2PC9zcGFuPiZuYnNwO1xyXG5cdCg8dGltZSBwcm9wZXJ0eT1cInNjaGVtYTpkYXRlUHVibGlzaGVkXCIgZGF0YXR5cGU9XCJ4c2Q6Z1llYXJcIiBkYXRlVGltZT1cIiAyMDIwXCI+MjAyMDwvdGltZT4pLlxyXG48L2xpPlxyXG5cclxuey8qPCEtLSBDaXRhdGlvbiBudW0gMTMtLT4gKi99XHJcbjxsaSB0eXBlb2Y9XCJzY2hlbWE6U2NvbGFybHlBcnRpY2xlXCIgcm9sZT1cImRvYy1iaWJsaW9lbnRyeVwiIHByb3BlcnR5PVwic2NoZW1hOmNpdGF0aW9uXCIgaWQ9XCJkZXNjLTEzXCI+XHJcblx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6YXV0aG9yXCIgdHlwZW9mPVwic2NoZW1hOlBlcnNvblwiPlxyXG5cdFx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6TmFtZVwiPiBDb2hlbiwgSi48L3NwYW4+XHJcblx0XHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpOYW1lXCI+IERlc2FpLCBULjwvc3Bhbj5cclxuXHQ8L3NwYW4+XHJcblx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6bmFtZVwiPiZuYnNwO1xyXG5TZWN1cml0eSBpbXBsaWNhdGlvbnMgb2YgQ1JJU1BSLWVuYWJsZWQgZ2Vub21lIGVkaXRpbmc6IE5ldyB3ZWFwb25zIG9mIG1hc3NcclxuZGlzcnVwdGlvbj9cclxuPC9zcGFuPi4gXHJcblx0PGkgcHJvcGVydHk9XCJzY2hlbWE6cHVibGlzaGVyXCIgdHlwZW9mPVwic2NoZW1hOk9yZ2FuaXphdGlvblwiPiBKb3VybmFsIG9mIEJpb2V0aGljYWwgSW5xdWlyeTwvaT5cclxuXHQ8YiBwcm9wZXJ0eT1cImlzc3VlTnVtYmVyXCIgdHlwZW9mPVwiUHVibGljYXRpb25Jc3N1ZVwiPiAxNjwvYj5cclxuXHQsJm5ic3A7PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6cGFnZUJlZ2luXCI+IDIxOTwvc3Bhbj4tPHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6cGFnZUVuZFwiPjIyODwvc3Bhbj4mbmJzcDtcclxuXHQoPHRpbWUgcHJvcGVydHk9XCJzY2hlbWE6ZGF0ZVB1Ymxpc2hlZFwiIGRhdGF0eXBlPVwieHNkOmdZZWFyXCIgZGF0ZVRpbWU9XCIgMjAxOVwiPjIwMTk8L3RpbWU+KS5cclxuXHQ8YSBjbGFzc05hbWU9XCJkb2lcIiBocmVmPVwiaHR0cHM6Ly9kb2kub3JnLzEwLjEwMDcvczExNjczLTAxOS0wOTkxNC01XCI+IGRvaTogMTAuMTAwNy9zMTE2NzMtMDE5LTA5OTE0LTU8L2E+XHJcbjwvbGk+XHJcblxyXG57Lyo8IS0tIENpdGF0aW9uIG51bSAxNC0tPiAqL31cclxuPGxpIHR5cGVvZj1cInNjaGVtYTpTY29sYXJseUFydGljbGVcIiByb2xlPVwiZG9jLWJpYmxpb2VudHJ5XCIgcHJvcGVydHk9XCJzY2hlbWE6Y2l0YXRpb25cIiBpZD1cImRlc2MtMTRcIj5cclxuXHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTphdXRob3JcIiB0eXBlb2Y9XCJzY2hlbWE6UGVyc29uXCI+XHJcblx0XHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpOYW1lXCI+IERvdWRuYSwgSi4gQS48L3NwYW4+XHJcblx0XHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpOYW1lXCI+IENoYXJwZW50aWVyLCBFLjwvc3Bhbj5cclxuXHQ8L3NwYW4+XHJcblx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6bmFtZVwiPiZuYnNwO1xyXG5UaGUgcmlzZSBvZiBzeW50aGV0aWMgYmlvbG9neTogTmV3IGJpb3NlY3VyaXR5IHJpc2tzIGFuZCByZWd1bGF0b3J5XHJcbmNoYWxsZW5nZXNcclxuPC9zcGFuPi4gXHJcblx0PGkgcHJvcGVydHk9XCJzY2hlbWE6cHVibGlzaGVyXCIgdHlwZW9mPVwic2NoZW1hOk9yZ2FuaXphdGlvblwiPiBOYXR1cmUgUmV2aWV3cyBHZW5ldGljczwvaT5cclxuXHQ8YiBwcm9wZXJ0eT1cImlzc3VlTnVtYmVyXCIgdHlwZW9mPVwiUHVibGljYXRpb25Jc3N1ZVwiPiAyMTwvYj5cclxuXHQsJm5ic3A7PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6cGFnZUJlZ2luXCI+IDE0NDwvc3Bhbj4tPHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6cGFnZUVuZFwiPjE1Njwvc3Bhbj4mbmJzcDtcclxuXHQoPHRpbWUgcHJvcGVydHk9XCJzY2hlbWE6ZGF0ZVB1Ymxpc2hlZFwiIGRhdGF0eXBlPVwieHNkOmdZZWFyXCIgZGF0ZVRpbWU9XCIgMjAyMFwiPjIwMjA8L3RpbWU+KS5cclxuXHQ8YSBjbGFzc05hbWU9XCJkb2lcIiBocmVmPVwiaHR0cHM6Ly9kb2kub3JnLzEwLjEwMzgvczQxNTc2LTAxOS0wMTgyLTdcIj4gZG9pOiAxMC4xMDM4L3M0MTU3Ni0wMTktMDE4Mi03PC9hPlxyXG48L2xpPlxyXG5cclxuey8qPCEtLSBDaXRhdGlvbiBudW0gMTUtLT4gKi99XHJcbjxsaSB0eXBlb2Y9XCJzY2hlbWE6U2NvbGFybHlBcnRpY2xlXCIgcm9sZT1cImRvYy1iaWJsaW9lbnRyeVwiIHByb3BlcnR5PVwic2NoZW1hOmNpdGF0aW9uXCIgaWQ9XCJkZXNjLTE1XCI+XHJcblx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6YXV0aG9yXCIgdHlwZW9mPVwic2NoZW1hOlBlcnNvblwiPlxyXG5cdFx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6TmFtZVwiPiBTaHdhcnR6LCBNLjwvc3Bhbj5cclxuXHRcdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOk5hbWVcIj4gQ29ua2xpbiwgQi48L3NwYW4+XHJcblx0PC9zcGFuPlxyXG5cdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOm5hbWVcIj4mbmJzcDtcclxuUHVibGljIHBlcmNlcHRpb24gb2YgQ1JJU1BSIGFuZCBnZW5vbWUgZWRpdGluZzogTWlzY29uY2VwdGlvbnMgYW5kIG1lZGlhXHJcbnBvcnRyYXlhbFxyXG48L3NwYW4+LiBcclxuXHQ8aSBwcm9wZXJ0eT1cInNjaGVtYTpwdWJsaXNoZXJcIiB0eXBlb2Y9XCJzY2hlbWE6T3JnYW5pemF0aW9uXCI+IEpvdXJuYWwgb2YgU2NpZW5jZSBDb21tdW5pY2F0aW9uPC9pPlxyXG5cdDxiIHByb3BlcnR5PVwiaXNzdWVOdW1iZXJcIiB0eXBlb2Y9XCJQdWJsaWNhdGlvbklzc3VlXCI+IDE4LDwvYj5cclxuXHQmbmJzcDsoPHRpbWUgcHJvcGVydHk9XCJzY2hlbWE6ZGF0ZVB1Ymxpc2hlZFwiIGRhdGF0eXBlPVwieHNkOmdZZWFyXCIgZGF0ZVRpbWU9XCIgMjAxOVwiPjIwMTk8L3RpbWU+KS5cclxuXHQ8YSBjbGFzc05hbWU9XCJkb2lcIiBocmVmPVwiaHR0cHM6Ly9kb2kub3JnLzEwLjIyMzIzLzIuMTgwNDAyMDJcIj4gZG9pOiAxMC4yMjMyMy8yLjE4MDQwMjAyPC9hPlxyXG48L2xpPlxyXG5cclxuey8qPCEtLSBDaXRhdGlvbiBudW0gMTYtLT4gKi99XHJcbjxsaSB0eXBlb2Y9XCJzY2hlbWE6Qm9va1wiIHJvbGU9XCJkb2MtYmlibGlvZW50cnlcIiBwcm9wZXJ0eT1cInNjaGVtYTpjaXRhdGlvblwiIGlkPVwiZGVzYy0xNlwiPlxyXG5cdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOmF1dGhvclwiIHR5cGVvZj1cInNjaGVtYTpQZXJzb25cIj5cclxuXHRcdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOk5hbWVcIj4gQ2hhZHdpY2ssIFIuIEYuPC9zcGFuPlxyXG5cdDwvc3Bhbj5cclxuXHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpuYW1lXCI+Jm5ic3A7RW5jeWNsb3BlZGlhIG9mIGFwcGxpZWQgZXRoaWNzLjwvc3Bhbj5cclxuXHQ8aSBwcm9wZXJ0eT1cInNjaGVtYTpwdWJsaXNoZXJcIiB0eXBlb2Y9XCJzY2hlbWE6T3JnYW5pemF0aW9uXCI+Jm5ic3A7QWNhZGVtaWMgUHJlc3M8L2k+XHJcblx0Jm5ic3A7KDx0aW1lIHByb3BlcnR5PVwic2NoZW1hOmRhdGVQdWJsaXNoZWRcIiBkYXRhdHlwZT1cInhzZDpnWWVhclwiIGRhdGVUaW1lPVwiMjAxMlwiPjIwMTI8L3RpbWU+KS5cclxuPC9saT5cclxuXHJcbnsvKjwhLS0gQ2l0YXRpb24gbnVtIDE3LS0+ICovfVxyXG48bGkgdHlwZW9mPVwic2NoZW1hOlNjb2xhcmx5QXJ0aWNsZVwiIHJvbGU9XCJkb2MtYmlibGlvZW50cnlcIiBwcm9wZXJ0eT1cInNjaGVtYTpjaXRhdGlvblwiIGlkPVwiZGVzYy0xN1wiPlxyXG5cdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOmF1dGhvclwiIHR5cGVvZj1cInNjaGVtYTpQZXJzb25cIj5cclxuXHRcdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOk5hbWVcIj4gUnViZWlzLCBHLjwvc3Bhbj5cclxuXHRcdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOk5hbWVcIj4gU3RlZ2VyLCBGLjwvc3Bhbj5cclxuXHQ8L3NwYW4+XHJcblx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6bmFtZVwiPiZuYnNwO1Jpc2tzIGFuZCBiZW5lZml0cyBvZiBodW1hbiBnZXJtbGluZSBnZW5vbWUgZWRpdGluZzogQW4gZXRoaWNhbCBhbmFseXNpczwvc3Bhbj4uIFxyXG5cdDxpIHByb3BlcnR5PVwic2NoZW1hOnB1Ymxpc2hlclwiIHR5cGVvZj1cInNjaGVtYTpPcmdhbml6YXRpb25cIj4gQXNpYW4gQmlvZXRoaWNzIFJldmlldzwvaT5cclxuXHQ8YiBwcm9wZXJ0eT1cImlzc3VlTnVtYmVyXCIgdHlwZW9mPVwiUHVibGljYXRpb25Jc3N1ZVwiPiAxMDwvYj5cclxuXHQsJm5ic3A7PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6cGFnZUJlZ2luXCI+IDEzMzwvc3Bhbj4tPHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6cGFnZUVuZFwiPjE0MTwvc3Bhbj4mbmJzcDtcclxuXHQoPHRpbWUgcHJvcGVydHk9XCJzY2hlbWE6ZGF0ZVB1Ymxpc2hlZFwiIGRhdGF0eXBlPVwieHNkOmdZZWFyXCIgZGF0ZVRpbWU9XCIgMjAxOFwiPjIwMTg8L3RpbWU+KS5cclxuXHQ8YSBjbGFzc05hbWU9XCJkb2lcIiBocmVmPVwiaHR0cHM6Ly9kb2kub3JnLzEwLjEwMDcvczQxNjQ5LTAxOC0wMDU2LXhcIj4gZG9pOiAxMC4xMDA3L3M0MTY0OS0wMTgtMDA1Ni14PC9hPlxyXG48L2xpPlxyXG5cclxuey8qPCEtLSBDaXRhdGlvbiBudW0gMTgtLT4gKi99XHJcbjxsaSB0eXBlb2Y9XCJzY2hlbWE6U2NvbGFybHlBcnRpY2xlXCIgcm9sZT1cImRvYy1iaWJsaW9lbnRyeVwiIHByb3BlcnR5PVwic2NoZW1hOmNpdGF0aW9uXCIgaWQ9XCJkZXNjLTE4XCI+XHJcblx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6YXV0aG9yXCIgdHlwZW9mPVwic2NoZW1hOlBlcnNvblwiPlxyXG5cdFx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6TmFtZVwiPiBBbnNhaCwgRS4gTy48L3NwYW4+XHJcblx0PC9zcGFuPlxyXG5cdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOm5hbWVcIj4mbmJzcDtcclxuRXRoaWNhbCBDaGFsbGVuZ2VzIGFuZCBDb250cm92ZXJzaWVzIGluIHRoZSBQcmFjdGljZSBhbmQgQWR2YW5jZW1lbnQgb2YgR2VuZVxyXG5UaGVyYXB5XHJcbjwvc3Bhbj4uIFxyXG5cdDxpIHByb3BlcnR5PVwic2NoZW1hOnB1Ymxpc2hlclwiIHR5cGVvZj1cInNjaGVtYTpPcmdhbml6YXRpb25cIj4gQWR2YW5jZXMgaW4gQ2VsbCBhbmQgR2VuZSBUaGVyYXB5PC9pPlxyXG5cdDxiIHByb3BlcnR5PVwiaXNzdWVOdW1iZXJcIiB0eXBlb2Y9XCJQdWJsaWNhdGlvbklzc3VlXCI+IDIwMjI8L2I+XHJcblx0LCZuYnNwOzxzcGFuIHByb3BlcnR5PVwic2NoZW1hOnBhZ2VCZWdpblwiPiAxPC9zcGFuPi08c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpwYWdlRW5kXCI+NTwvc3Bhbj4mbmJzcDtcclxuXHQoPHRpbWUgcHJvcGVydHk9XCJzY2hlbWE6ZGF0ZVB1Ymxpc2hlZFwiIGRhdGF0eXBlPVwieHNkOmdZZWFyXCIgZGF0ZVRpbWU9XCIgMjAyMlwiPjIwMjI8L3RpbWU+KS5cclxuXHQ8YSBjbGFzc05hbWU9XCJkb2lcIiBocmVmPVwiaHR0cHM6Ly9kb2kub3JnLzEwLjExNTUvMjAyMi8xMDE1OTk2XCI+IGRvaTogMTAuMTE1NS8yMDIyLzEwMTU5OTY8L2E+XHJcbjwvbGk+XHJcblxyXG57Lyo8IS0tIENpdGF0aW9uIG51bSAxOS0tPiAqL31cclxuPGxpIHR5cGVvZj1cInNjaGVtYTpCb29rXCIgcm9sZT1cImRvYy1iaWJsaW9lbnRyeVwiIHByb3BlcnR5PVwic2NoZW1hOmNpdGF0aW9uXCIgaWQ9XCJkZXNjLTE5XCI+XHJcblx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6YXV0aG9yXCIgdHlwZW9mPVwic2NoZW1hOlBlcnNvblwiPlxyXG5cdFx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6TmFtZVwiPiBQdWdoLCBKLjwvc3Bhbj5cclxuXHQ8L3NwYW4+XHJcblx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6bmFtZVwiPiZuYnNwO0F1dG9ub215LCBSYXRpb25hbGl0eSwgYW5kIENvbnRlbXBvcmFyeSBCaW9ldGhpY3MuPC9zcGFuPlxyXG5cdDxpIHByb3BlcnR5PVwic2NoZW1hOnB1Ymxpc2hlclwiIHR5cGVvZj1cInNjaGVtYTpPcmdhbml6YXRpb25cIj4mbmJzcDtPeGZvcmQgVW5pdmVyc2l0eSBQcmVzc094Zm9yZDwvaT5cclxuXHQmbmJzcDsoPHRpbWUgcHJvcGVydHk9XCJzY2hlbWE6ZGF0ZVB1Ymxpc2hlZFwiIGRhdGF0eXBlPVwieHNkOmdZZWFyXCIgZGF0ZVRpbWU9XCIyMDIwXCI+MjAyMDwvdGltZT4pLlxyXG48L2xpPlxyXG5cclxuey8qPCEtLSBDaXRhdGlvbiBudW0gMjAtLT4gKi99XHJcbjxsaSB0eXBlb2Y9XCJzY2hlbWE6Qm9va1wiIHJvbGU9XCJkb2MtYmlibGlvZW50cnlcIiBwcm9wZXJ0eT1cInNjaGVtYTpjaXRhdGlvblwiIGlkPVwiZGVzYy0yMFwiPlxyXG5cdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOmF1dGhvclwiIHR5cGVvZj1cInNjaGVtYTpQZXJzb25cIj5cclxuXHRcdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOk5hbWVcIj4gR3N0cmF1bnRoYWxlciwgRy48L3NwYW4+XHJcblx0XHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpOYW1lXCI+IExpbmRsLCBULjwvc3Bhbj5cclxuXHQ8L3NwYW4+XHJcblx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6bmFtZVwiPiZuYnNwO0FsbGdlbWVpbmUgQXNwZWt0ZSBkZXIgUHJpbVx1MDBFNHJrdWx0dXIuPC9zcGFuPlxyXG5cdDxpIHByb3BlcnR5PVwic2NoZW1hOnB1Ymxpc2hlclwiIHR5cGVvZj1cInNjaGVtYTpPcmdhbml6YXRpb25cIj4mbmJzcDtTcHJpbmdlcjwvaT5cclxuXHQmbmJzcDsoPHRpbWUgcHJvcGVydHk9XCJzY2hlbWE6ZGF0ZVB1Ymxpc2hlZFwiIGRhdGF0eXBlPVwieHNkOmdZZWFyXCIgZGF0ZVRpbWU9XCIyMDEzXCI+MjAxMzwvdGltZT4pLlxyXG48L2xpPlxyXG5cclxuey8qPCEtLSBDaXRhdGlvbiBudW0gMjEtLT4gKi99XHJcbjxsaSB0eXBlb2Y9XCJzY2hlbWE6Qm9va1wiIHJvbGU9XCJkb2MtYmlibGlvZW50cnlcIiBwcm9wZXJ0eT1cInNjaGVtYTpjaXRhdGlvblwiIGlkPVwiZGVzYy0yMVwiPlxyXG5cdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOmF1dGhvclwiIHR5cGVvZj1cInNjaGVtYTpQZXJzb25cIj5cclxuXHRcdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOk5hbWVcIj4gVGhpZWxlLCBGLjwvc3Bhbj5cclxuXHQ8L3NwYW4+XHJcblx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6bmFtZVwiPiZuYnNwO0ludGVybmF0aW9uYWwgRW5jeWNsb3BlZGlhIG9mIHRoZSBTb2NpYWwgJiBCZWhhdmlvcmFsIFNjaWVuY2VzLjwvc3Bhbj5cclxuXHQ8aSBwcm9wZXJ0eT1cInNjaGVtYTpwdWJsaXNoZXJcIiB0eXBlb2Y9XCJzY2hlbWE6T3JnYW5pemF0aW9uXCI+Jm5ic3A7RWxzZXZpZXI8L2k+XHJcblx0Jm5ic3A7KDx0aW1lIHByb3BlcnR5PVwic2NoZW1hOmRhdGVQdWJsaXNoZWRcIiBkYXRhdHlwZT1cInhzZDpnWWVhclwiIGRhdGVUaW1lPVwiMjAwMVwiPjIwMDE8L3RpbWU+KS5cclxuPC9saT5cclxuXHJcbnsvKjwhLS0gQ2l0YXRpb24gbnVtIDIyLS0+ICovfVxyXG48bGkgdHlwZW9mPVwic2NoZW1hOkJvb2tcIiByb2xlPVwiZG9jLWJpYmxpb2VudHJ5XCIgcHJvcGVydHk9XCJzY2hlbWE6Y2l0YXRpb25cIiBpZD1cImRlc2MtMjJcIj5cclxuXHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTphdXRob3JcIiB0eXBlb2Y9XCJzY2hlbWE6UGVyc29uXCI+XHJcblx0XHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpOYW1lXCI+IEdldGhtYW5uLCBDLjwvc3Bhbj5cclxuXHQ8L3NwYW4+XHJcblx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6bmFtZVwiPiZuYnNwO1Jlc2VhcmNoOiBFdGhpY2FsIEFzcGVjdHMgb2YgTG9uZy10ZXJtIFJlc3BvbnNpYmlsaXRpZXMuPC9zcGFuPlxyXG5cdDxpIHByb3BlcnR5PVwic2NoZW1hOnB1Ymxpc2hlclwiIHR5cGVvZj1cInNjaGVtYTpPcmdhbml6YXRpb25cIj4mbmJzcDtFbHNldmllcjwvaT5cclxuXHQmbmJzcDsoPHRpbWUgcHJvcGVydHk9XCJzY2hlbWE6ZGF0ZVB1Ymxpc2hlZFwiIGRhdGF0eXBlPVwieHNkOmdZZWFyXCIgZGF0ZVRpbWU9XCIyMDAxXCI+MjAwMTwvdGltZT4pLlxyXG48L2xpPlxyXG5cclxuey8qPCEtLSBDaXRhdGlvbiBudW0gMjMtLT4gKi99XHJcbjxsaSB0eXBlb2Y9XCJzY2hlbWE6U2NvbGFybHlBcnRpY2xlXCIgcm9sZT1cImRvYy1iaWJsaW9lbnRyeVwiIHByb3BlcnR5PVwic2NoZW1hOmNpdGF0aW9uXCIgaWQ9XCJkZXNjLTIzXCI+XHJcblx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6YXV0aG9yXCIgdHlwZW9mPVwic2NoZW1hOlBlcnNvblwiPlxyXG5cdFx0PHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6TmFtZVwiPiBLaWFuaSwgQS4gSy48L3NwYW4+XHJcblx0XHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpOYW1lXCI+IFBoZWJ5LCBELjwvc3Bhbj5cclxuXHRcdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOk5hbWVcIj4gSGVuZWhhbiwgRy48L3NwYW4+XHJcblx0XHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpOYW1lXCI+IEJyb3duLCBSLjwvc3Bhbj5cclxuXHRcdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOk5hbWVcIj4gU2lldmluZywgUC48L3NwYW4+XHJcblx0XHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpOYW1lXCI+IFN5a29yYSwgUC48L3NwYW4+XHJcblx0XHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpOYW1lXCI+IE1hcmtzLCBSLjwvc3Bhbj5cclxuXHRcdDxzcGFuIHByb3BlcnR5PVwic2NoZW1hOk5hbWVcIj4gZXQgYWwuPC9zcGFuPlxyXG5cdDwvc3Bhbj5cclxuXHQ8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpuYW1lXCI+Jm5ic3A7RXRoaWNhbCBjb25zaWRlcmF0aW9ucyByZWdhcmRpbmcgYW5pbWFsIGV4cGVyaW1lbnRhdGlvbjwvc3Bhbj4uIFxyXG5cdDxpIHByb3BlcnR5PVwic2NoZW1hOnB1Ymxpc2hlclwiIHR5cGVvZj1cInNjaGVtYTpPcmdhbml6YXRpb25cIj4gSm91cm5hbCBvZiBQcmV2ZW50aXZlIE1lZGljaW5lIGFuZCBIeWdpZW5lPC9pPlxyXG5cdDxiIHByb3BlcnR5PVwiaXNzdWVOdW1iZXJcIiB0eXBlb2Y9XCJQdWJsaWNhdGlvbklzc3VlXCI+IDYzPC9iPlxyXG5cdCwmbmJzcDs8c3BhbiBwcm9wZXJ0eT1cInNjaGVtYTpwYWdlQmVnaW5cIj4gRTI1NTwvc3Bhbj4tPHNwYW4gcHJvcGVydHk9XCJzY2hlbWE6cGFnZUVuZFwiPkUyNjY8L3NwYW4+Jm5ic3A7XHJcblx0KDx0aW1lIHByb3BlcnR5PVwic2NoZW1hOmRhdGVQdWJsaXNoZWRcIiBkYXRhdHlwZT1cInhzZDpnWWVhclwiIGRhdGVUaW1lPVwiIDIwMjJcIj4yMDIyPC90aW1lPikuXHJcblx0PGEgY2xhc3NOYW1lPVwiZG9pXCIgaHJlZj1cImh0dHBzOi8vZG9pLm9yZy8xMC4xNTE2Ny8yNDIxLTQyNDgvanBtaDIwMjIuNjMuMlMzLjI3NjhcIj4gZG9pOiAxMC4xNTE2Ny8yNDIxLTQyNDgvanBtaDIwMjIuNjMuMlMzLjI3Njg8L2E+XHJcbjwvbGk+XHJcblxyXG48L29sPlxyXG4gICAgICA8L1NlY3Rpb24+XHJcbiAgICA8Lz5cclxuICApO1xyXG59XHJcbiIsICJpbXBvcnQgeyBCbG9ja1F1b3RlQiB9IGZyb20gXCIuLi8uLi9jb21wb25lbnRzL1F1b3Rlc1wiO1xyXG5pbXBvcnQgeyB1c2VUYWJOYXZpZ2F0aW9uIH0gZnJvbSBcIi4uLy4uL3V0aWxzL1RhYk5hdmlnYXRpb25cIjtcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBIUE92ZXJ2aWV3KCl7XHJcbiAgICB1c2VUYWJOYXZpZ2F0aW9uKCk7XHJcbiAgICByZXR1cm4oXHJcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgICAgPHNlY3Rpb24gaWQ9XCJPdmVydmlld0hcIj5cclxuICAgICAgICAgICAgICAgIDxoMiBpZD1cIk92ZXJ2aWV3XCI+PC9oMj5cclxuICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3Mvb3ZlcnZpZXctaWhwLWZpbmFsLWZpbmFsLW1pbi53ZWJwXCIgYWx0PVwiU3Rha2Vob2xkZXIgT3ZlcnZpZXdcIj48L2ltZz5cclxuICAgICAgICAgICAgICAgIDxzdHJvbmc+RmlndXJlOiBWaXN1YWxpemF0aW9uIG9mIHRoZSBIdW1hbi1DZW50cmljIEFwcHJvYWNoIGJ5IGlHRU0gQmllbGVmZWxkLUNlQmlUZWMgMjAyNDwvc3Ryb25nPjxwPk91ciBwcm9qZWN0IGhhcyBiZWVuIHN1cHBvcnRlZCBieSBvdmVyIDgwIGluZGl2aWR1YWxzIGFuZCBpbnN0aXR1dGlvbnMsIGVuaGFuY2luZyBvdXIgaW50ZWdyYXRpdmUgaHVtYW4gcHJhY3RpY2VzLiBXZSBhcmUgZGVlcGx5IGdyYXRlZnVsIGZvciB0aGUgaW52YWx1YWJsZSBmZWVkYmFjayBhbmQgdGhlIGNvbGxlY3RpdmUgZWZmb3J0IG9mIGV2ZXJ5b25lIHdobyBoYXMgY29udHJpYnV0ZWQgdG8gb3VyIHZpc2lvbiBvZiBzYWZlIGFuZCBwcmVjaXNlIGdlbmUgdGhlcmFweSB0aHJvdWdoIFByZUN5c2UuIFRoYW5rIHlvdSBmb3IgeW91ciBzdXBwb3J0IVxyXG4gICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgICBcclxuXHJcbiAgICAgICAgICAgICAgICA8c3BhbiBpZD1cImhwLXF1b3RlXCI+PEJsb2NrUXVvdGVCXHJcbiAgICAgICAgICAgICAgICB0ZXh0PVwiSHVtYW4gUHJhY3RpY2VzIGlzIHRoZSBzdHVkeSBvZiBob3cgeW91ciB3b3JrIGFmZmVjdHMgdGhlIHdvcmxkLCBhbmQgaG93IHRoZSB3b3JsZCBhZmZlY3RzIHlvdXIgd29yay5cIlxyXG4gICAgICAgICAgICAgICAgY2l0ZT1cIi0gUGV0ZXIgQ2FyciwgRGlyZWN0b3Igb2YgSnVkZ2luZ1wiXHJcbiAgICAgICAgICAgICAgICAvPiA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICA8cD5JbiB0aGUgZGV2ZWxvcG1lbnQgb2Ygb3VyIHByb2plY3QsIHdlIGVtYnJhY2VkIGEgaG9saXN0aWMgYW5kIGh1bWFuLWNlbnRyaWMgYXBwcm9hY2gsIHB1dHRpbmcgcGVvcGxlIGF0IHRoZSBjb3JlIG9mIG91ciBlZmZvcnRzLiBPdXIgZ29hbCB3YXMgdG8gZm9zdGVyIGludGVyZGlzY2lwbGluYXJ5IGNvbGxhYm9yYXRpb24gYW5kIG9wZW4gZGlhbG9ndWUsIGVuc3VyaW5nIHRoYXQgZGl2ZXJzZSBwZXJzcGVjdGl2ZXMgc2hhcGVkIHRoZSB0cmFqZWN0b3J5IG9mIG91ciB3b3JrLiBPdmVyIHRoZSBjb3Vyc2Ugb2YgdGhpcyBqb3VybmV5LCB3ZSBoYXZlIGVuZ2FnZWQgd2l0aCBtb3JlIHRoYW4gODAgaW5kaXZpZHVhbHMgYW5kIGluc3RpdHV0aW9ucywgd2hvIGhhdmUgc2lnbmlmaWNhbnRseSBpbmZsdWVuY2VkIG91ciBwcm9qZWN0LiBcclxuICAgICAgICAgICAgICAgIFRoZSBzdHJlbmd0aCBvZiBvdXIgYXBwcm9hY2ggbGllcyBpbiBpdHMgaW50ZXJkaXNjaXBsaW5hcnkgbmF0dXJlLiBXZSBoYXZlIGJyb3VnaHQgdG9nZXRoZXIgcmVwcmVzZW50YXRpdmVzIGZyb20gYSB3aWRlIHJhbmdlIG9mIGNhdGVnb3JpZXMsIGVhY2ggcGxheWluZyBhIHZpdGFsIHJvbGUgaW4gc2hhcGluZyB0aGUgZGlyZWN0aW9uIGFuZCBzdWNjZXNzIG9mIG91ciBpbml0aWF0aXZlLiBUaGVzZSBjYXRlZ29yaWVzIGluY2x1ZGU6IDwvcD5cclxuICAgICAgICAgICAgICAgIDxvbD5cclxuICAgICAgICAgICAgICAgICAgICA8bGk+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzdHJvbmc+UGF0aWVudHM6PC9zdHJvbmc+IEF0IHRoZSBoZWFydCBvZiBhbnkgaGVhbHRoY2FyZS1yZWxhdGVkIHByb2plY3QsIHBhdGllbnRzIHByb3ZpZGUgaW52YWx1YWJsZSBpbnNpZ2h0cy4gVGhlaXIgbGl2ZWQgZXhwZXJpZW5jZXMsIG5lZWRzLCBhbmQgY2hhbGxlbmdlcyBoYXZlIGd1aWRlZCBvdXIgZWZmb3J0cyB0byBkZXZlbG9wIHNvbHV0aW9ucyB0aGF0IGFyZSB0cnVseSBwYXRpZW50LWNlbnRlcmVkLlxyXG4gICAgICAgICAgICAgICAgICAgIDwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgPGxpPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3Ryb25nPkhlYWx0aGNhcmUgSW5zdGl0dXRpb25zOjwvc3Ryb25nPiBDb2xsYWJvcmF0aW5nIHdpdGggaG9zcGl0YWxzLCBjbGluaWNzLCBhbmQgb3RoZXIgaGVhbHRoY2FyZSBwcm92aWRlcnMgYWxsb3dlZCB1cyB0byB1bmRlcnN0YW5kIHRoZSBwcmFjdGljYWwgaW1wbGljYXRpb25zIG9mIG91ciB3b3JrIGFuZCB0byBlbnN1cmUgdGhhdCBvdXIgc29sdXRpb25zIGFyZSBhbGlnbmVkIHdpdGggdGhlIHJlYWxpdGllcyBvZiBoZWFsdGhjYXJlIGRlbGl2ZXJ5LlxyXG4gICAgICAgICAgICAgICAgICAgIDwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgPGxpPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3Ryb25nPkFjYWRlbWlhIFx1MjAxMyBSZXNlYXJjaCBhbmQgU2NpZW5jZTo8L3N0cm9uZz4gQnkgcGFydG5lcmluZyB3aXRoIHJlc2VhcmNoZXJzIGFuZCBzY2llbnRpc3RzIGZyb20gbGVhZGluZyBhY2FkZW1pYyBpbnN0aXR1dGlvbnMsIHdlIHdlcmUgYWJsZSB0byBiYXNlIG91ciB3b3JrIG9uIHRoZSBsYXRlc3Qgc2NpZW50aWZpYyBrbm93bGVkZ2UgYW5kIG1ldGhvZG9sb2dpZXMuIFRoZWlyIGNvbnRyaWJ1dGlvbnMgZW5zdXJlZCB0aGF0IG91ciBhcHByb2FjaCBpcyBib3RoIGlubm92YXRpdmUgYW5kIGV2aWRlbmNlLWJhc2VkLlxyXG4gICAgICAgICAgICAgICAgICAgIDwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgPGxpPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3Ryb25nPkluZHVzdHJ5IFx1MjAxMyBFbnRyZXByZW5ldXJzaGlwIGFuZCBCdXNpbmVzczo8L3N0cm9uZz4gRW5nYWdpbmcgd2l0aCBpbmR1c3RyeSBwcm9mZXNzaW9uYWxzIGFuZCBlbnRyZXByZW5ldXJzIGVuYWJsZWQgdXMgdG8gZXhwbG9yZSB0aGUgY29tbWVyY2lhbCBwb3RlbnRpYWwgb2Ygb3VyIHByb2plY3QuIFRoZWlyIGV4cGVydGlzZSBpbiBpbm5vdmF0aW9uLCBidXNpbmVzcyBtb2RlbHMsIGFuZCBzY2FsYWJpbGl0eSBoZWxwZWQgdXMgdG8gZW52aXNpb24gaG93IG91ciBzb2x1dGlvbnMgY291bGQgYmUgYnJvdWdodCB0byBtYXJrZXQgYW5kIHdpZGVseSBpbXBsZW1lbnRlZC5cclxuICAgICAgICAgICAgICAgICAgICA8L2xpPlxyXG4gICAgICAgICAgICAgICAgICAgIDxsaT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHN0cm9uZz5Hb3Zlcm5tZW50IFx1MjAxMyBCaW9zYWZldHkgYW5kIEV0aGljczo8L3N0cm9uZz4gUmVndWxhdG9yeSBib2RpZXMgYW5kIGV0aGljcyBjb21taXR0ZWVzIHBsYXllZCBhIGNydWNpYWwgcm9sZSBpbiBlbnN1cmluZyB0aGF0IG91ciBwcm9qZWN0IGFkaGVyZXMgdG8gdGhlIGhpZ2hlc3Qgc3RhbmRhcmRzIG9mIHNhZmV0eSwgZXRoaWNzLCBhbmQgY29tcGxpYW5jZS4gVGhlaXIgb3ZlcnNpZ2h0IGhhcyBiZWVuIGluc3RydW1lbnRhbCBpbiBtYWludGFpbmluZyB0aGUgaW50ZWdyaXR5IGFuZCBzb2NpYWwgcmVzcG9uc2liaWxpdHkgb2Ygb3VyIHdvcmsuXHJcbiAgICAgICAgICAgICAgICAgICAgPC9saT5cclxuICAgICAgICAgICAgICAgICAgICA8bGk+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzdHJvbmc+TG9jYWwgYW5kIEludGVybmF0aW9uYWwgQ29tbXVuaXRpZXM6PC9zdHJvbmc+IE91ciBvdXRyZWFjaCB0byBib3RoIGxvY2FsIGFuZCBnbG9iYWwgY29tbXVuaXRpZXMgYWxsb3dlZCB1cyB0byB1bmRlcnN0YW5kIHRoZSBicm9hZGVyIHNvY2lldGFsIGltcGFjdHMgb2Ygb3VyIHByb2plY3QuIFRoZXNlIGludGVyYWN0aW9ucyBoZWxwZWQgdXMgdG8gYWRkcmVzcyBkaXZlcnNlIGN1bHR1cmFsLCBzb2NpYWwsIGFuZCBlY29ub21pYyBmYWN0b3JzLCBlbnN1cmluZyB0aGF0IG91ciBzb2x1dGlvbnMgYXJlIGFjY2Vzc2libGUgYW5kIHJlbGV2YW50IHRvIGRpZmZlcmVudCBwb3B1bGF0aW9ucy5cclxuICAgICAgICAgICAgICAgICAgICA8L2xpPlxyXG4gICAgICAgICAgICAgICAgICAgIDxsaT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHN0cm9uZz5QdWJsaWMgT3JnYW5pemF0aW9uczo8L3N0cm9uZz4gUGFydG5lcmluZyB3aXRoIG5vbi1nb3Zlcm5tZW50YWwgb3JnYW5pemF0aW9ucyBhbmQgcHVibGljIGluc3RpdHV0aW9ucyBlbmFibGVkIHVzIHRvIGFsaWduIG91ciBwcm9qZWN0IHdpdGggcHVibGljIGhlYWx0aCBnb2FscyBhbmQgY29udHJpYnV0ZSB0byBzb2NpYWwgZ29vZC4gVGhlaXIgbWlzc2lvbi1kcml2ZW4gZm9jdXMgaGVscGVkIHVzIHRvIG1haW50YWluIGEgc2Vuc2Ugb2YgcHVycG9zZSBhbmQgcmVzcG9uc2liaWxpdHkgaW4gYWxsIG91ciBlbmRlYXZvcnMuXHJcbiAgICAgICAgICAgICAgICAgICAgPC9saT5cclxuICAgICAgICAgICAgICAgIDwvb2w+XHJcbiAgICAgICAgICAgICAgICA8cD5CeSBlbmdhZ2luZyB3aXRoIHRoZXNlIGRpdmVyc2Ugc3Rha2Vob2xkZXJzLCB3ZSBoYXZlIGJ1aWx0IGEgcHJvamVjdCB0aGF0IGlzIG5vdCBvbmx5IGNvbXByZWhlbnNpdmUgYnV0IGFsc28gYWRhcHRhYmxlIHRvIHRoZSBtdWx0aWZhY2V0ZWQgbmVlZHMgb2Ygc29jaWV0eS4gVGhlIGluc2lnaHRzIGFuZCBmZWVkYmFjayBmcm9tIHBhdGllbnRzLCBoZWFsdGhjYXJlIHByb2Zlc3Npb25hbHMsIHJlc2VhcmNoZXJzLCBidXNpbmVzc2VzLCBnb3Zlcm5tZW50cywgY29tbXVuaXRpZXMsIGFuZCBwdWJsaWMgb3JnYW5pemF0aW9ucyBoYXZlIGVuc3VyZWQgdGhhdCBvdXIgaHVtYW4tY2VudHJpYyBhcHByb2FjaCByZW1haW5zIGR5bmFtaWMsIGluY2x1c2l2ZSwgYW5kIGltcGFjdGZ1bC4gXHJcbiAgICAgICAgICAgICAgICBJbiBzdW1tYXJ5LCBvdXIgcHJvamVjdCByZWZsZWN0cyB0aGUgcG93ZXIgb2YgY29sbGFib3JhdGlvbiBhY3Jvc3Mgc2VjdG9ycywgZGlzY2lwbGluZXMsIGFuZCBnZW9ncmFwaGllcy4gVGhlIGNvbGxlY3RpdmUgaW5wdXQgb2YgbW9yZSB0aGFuIDgwIGluZGl2aWR1YWxzIGFuZCBpbnN0aXR1dGlvbnMgaGFzIGVuYWJsZWQgdXMgdG8gY3JlYXRlIGEgd2VsbC1yb3VuZGVkIGFuZCByb2J1c3QgZnJhbWV3b3JrIHRoYXQgYWRkcmVzc2VzIHRoZSBjaGFsbGVuZ2VzIHdlIHNldCBvdXQgdG8gc29sdmUuIFdlIGFyZSBwcm91ZCBvZiB0aGUgaW50ZXJkaXNjaXBsaW5hcnkgbmF0dXJlIG9mIG91ciB3b3JrIGFuZCBhcmUgY29tbWl0dGVkIHRvIGNvbnRpbnVpbmcgdGhpcyBpbmNsdXNpdmUgYXBwcm9hY2ggYXMgd2UgbW92ZSBmb3J3YXJkLiA8L3A+XHJcblxyXG4gICAgICAgICAgICA8L3NlY3Rpb24+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICApXHJcbn0iLCAiaW1wb3J0IHsgQnV0dG9uT25lIH0gZnJvbSBcIi4uLy4uL2NvbXBvbmVudHMvQnV0dG9uc1wiO1xyXG5pbXBvcnQgeyBINSB9IGZyb20gXCIuLi8uLi9jb21wb25lbnRzL0hlYWRpbmdzXCI7XHJcbmltcG9ydCBQcmVDeXNlIGZyb20gXCIuLi8uLi9jb21wb25lbnRzL3ByZWN5c2VcIjtcclxuaW1wb3J0IHsgIEJsb2NrUXVvdGVCIH0gZnJvbSBcIi4uLy4uL2NvbXBvbmVudHMvUXVvdGVzXCI7XHJcbmltcG9ydCB7IFNlY3Rpb24gfSBmcm9tIFwiLi4vLi4vY29tcG9uZW50cy9zZWN0aW9uc1wiO1xyXG5pbXBvcnQgeyB1c2VOYXZpZ2F0aW9uIH0gZnJvbSBcIi4uLy4uL3V0aWxzXCI7XHJcbmltcG9ydCB7IHVzZVRhYk5hdmlnYXRpb24gfSBmcm9tIFwiLi4vLi4vdXRpbHMvVGFiTmF2aWdhdGlvblwiO1xyXG5cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBIUEludHJvZHVjdGlvbigpe1xyXG4gICAgY29uc3Qge2dvVG9QYWdlQW5kU2Nyb2xsfSA9IHVzZU5hdmlnYXRpb24oKTsgXHJcbiAgICB1c2VUYWJOYXZpZ2F0aW9uKCk7XHJcbiAgICByZXR1cm4oXHJcbiAgICAgICAgPFNlY3Rpb24gdGl0bGU9XCJJbnRyb2R1Y3Rpb25cIiBpZD1cIkludHJvZHVjdGlvblwiPlxyXG4gICAgICAgICAgICA8SDUgdGV4dD1cIi0gQ29ubmVjdGluZyBvdXIgcHJvamVjdCB0byByZWFsIGxpZmUgLVwiLz5cclxuICAgICAgICAgICAgPEJsb2NrUXVvdGVCIHRleHQ9XCJTY2llbmNlIGFuZCBldmVyeWRheSBsaWZlIGNhbm5vdCBhbmQgc2hvdWxkIG5vdCBiZSBzZXBhcmF0ZWQuXCIgY2l0ZT1cIlJvc2FsaW5kIEZyYW5rbGluXCIvPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvdyBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wgXCI+XHJcbiAgICAgICAgICAgICAgICA8QnV0dG9uT25lIG9wZW5jbGFzcz1cImludHJvLWN5Y2xldGFiXCIgdGV4dD1cIk91ciBVbmRlcnN0YW5kaW5nIG9mIEhQXCIgb3Blbj1cInVuZGVyc3RhbmRpbmdcIj48L0J1dHRvbk9uZT5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wgXCI+XHJcbiAgICAgICAgICAgICAgICA8QnV0dG9uT25lIG9wZW5jbGFzcz1cImludHJvLWN5Y2xldGFiXCIgdGV4dD1cIk91ciBNaXNzaW9uICYgVmlzaW9uXCIgb3Blbj1cIm1pc3Npb25cIj48L0J1dHRvbk9uZT5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wgXCI+XHJcbiAgICAgICAgICAgICAgICA8QnV0dG9uT25lIG9wZW5jbGFzcz1cImludHJvLWN5Y2xldGFiXCIgdGV4dD1cIk91ciBBcHByb2FjaFwiIG9wZW49XCJhcHByb2FjaFwiPjwvQnV0dG9uT25lPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbCBcIj5cclxuICAgICAgICAgICAgICAgIDxCdXR0b25PbmUgb3BlbmNsYXNzPVwiaW50cm8tY3ljbGV0YWJcIiB0ZXh0PVwiT3VyIFRhcmdldCBHcm91cHNcIiBvcGVuPVwidGFyZ2V0c1wiPjwvQnV0dG9uT25lPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8YnIvPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbCBpbnRyby1jeWNsZXRhYlwiIGlkPVwidW5kZXJzdGFuZGluZ1wiIHN0eWxlPXt7ZGlzcGxheTogXCJibG9ja1wifX0+XHJcbiAgICAgICAgICAgICAgICAgPHA+VGhpcyB5ZWFyLCB3ZSBhdCBpR0VNIEJpZWxlZmVsZC1DZUJpVGVjIGhhdmUgY29uc2Npb3VzbHkgY2hvc2VuIGEgPGI+aHVtYW4tY2VudGVyZWQgcHJvamVjdCBkZXNpZ248L2I+LiBBdCB0aGUgaGVhcnQgb2Ygb3VyIGlHRU0gcHJvamVjdCBpcyBcclxuICAgICAgICAgICAgICAgICAgICBvbmUga2V5IHBpbGxhcjogPGI+SHVtYW4gUHJhY3RpY2U8L2I+LiBPdXIgZ29hbCBpcyB0byB1bmRlcnN0YW5kIHRoZSBpbXBhY3Qgb2Ygb3VyIHByb2plY3Qgb24gc29jaWV0eSwgdGhlIHNjaWVudGlmaWMgY29tbXVuaXR5IGFuZCB0aGUgd29ybGQgXHJcbiAgICAgICAgICAgICAgICAgICAgYXMgd2hvbGUuIFRoaXMgaXMgbm90IGp1c3QgYWJvdXQgdGhlIHRlY2huaWNhbCBlZmZlY3RpdmVuZXNzIG9mIG91ciBwYXJ0cywgYnV0IGFsc28gYWJvdXQgaG93IHRoZSBzb2x1dGlvbiBpcyBlbWJyYWNlZCBpbiBldmVyeWRheSBcclxuICAgICAgICAgICAgICAgICAgICBwcmFjdGljZSwgYW5kIHRoZSBwb3RlbnRpYWwgbG9uZy10ZXJtIGltcGFjdCBpdCBjb3VsZCBoYXZlIGZvciAgQ3lzdGljIEZpYnJvc2lzIHBhdGllbnRzIGFuZCB0aGVpciBmYW1pbGllcyBhbGwgb3ZlciB0aGUgd29ybGQuXHJcbiAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgPHA+V2l0aCBvdXIgaHVtYW4tY2VudGVyZWQgYXBwcm9hY2gsIHdlIGFpbSB0byBhZGRyZXNzIGZ1bmRhbWVudGFsIGlHRU0gSHVtYW4gUHJhY3RpY2UgcXVlc3Rpb25zIGFuZCBiZXlvbmQ6XHJcbiAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgPHAgc3R5bGU9e3t0ZXh0QWxpZ246IFwiY2VudGVyXCJ9fT4gPGI+SG93IGRvZXMgb3VyIHByb2plY3QgYWZmZWN0IHRoZSB3b3JsZCBhcm91bmQgdXM/PC9iPjwvcD5cclxuICAgICAgICAgICAgPHAgc3R5bGU9e3t0ZXh0QWxpZ246IFwiY2VudGVyXCJ9fT4gPGI+SG93IGRvZXMgdGhlIHdvcmxkIGFyb3VuZCB1cyBpbmZsdWVuY2Ugb3VyIHByb2plY3Q/ICAgICAgICAgICAgPC9iPjwvcD5cclxuICAgICAgICAgICAgPHA+RnJvbSB0aGUgdmVyeSBiZWdpbm5pbmcsIGl0IHdhcyBvdXIgcHJpb3JpdHkgdG8gaWRlbnRpZnkgdmFyaW91cyBzdGFrZWhvbGRlcnMgYW5kIG1lZXQgcGVvcGxlIGFmZmVjdGVkIGJ5ICBDeXN0aWMgRmlicm9zaXMgZWFybHkgb24gdG8gPGI+YWN0aXZlbHkgaW52b2x2ZTwvYj4gdGhlbSB0aHJvdWdob3V0IHRoZSBwbGFubmluZyBhbmQgZGV2ZWxvcG1lbnQgcHJvY2Vzcy4gVGhpcyBjb2xsYWJvcmF0aXZlIGFwcHJvYWNoIGFsbG93ZWQgdXMgdG8gZW5zdXJlIHRoYXQgb3VyIHByb2plY3QgXHJcbiAgICAgICAgICAgICAgICBhZGRyZXNzZXMgcmVhbCBuZWVkcyBhbmQgY29udHJpYnV0ZXMgdG8gc29sdXRpb25zIGZvciBhcyBtYW55IGRpZmZlcmVudCBwZW9wbGUgYXMgcG9zc2libGUuIFdpdGhvdXQgdGhlIGNyaXRpY2FsIGFkdmljZSwgdmFyaWVkIHBlcnNwZWN0aXZlcyBcclxuICAgICAgICAgICAgICAgIGFuZCBpbnB1dCBmcm9tIG91ciBzdGFrZWhvbGRlcnMsIGl0IHdvdWxkIGhhdmUgYmVlbiBpbXBvc3NpYmxlIHRvIGlkZW50aWZ5IGFuZCByZWZsZWN0IG9uIGFsbCBhc3BlY3RzIG9mIG91ciBwcm9qZWN0LiBXZSBtYWRlIGV2ZXJ5IFxyXG4gICAgICAgICAgICAgICAgZWZmb3J0IHRvIDxiPmRlZXBseSB1bmRlcnN0YW5kPC9iPiB0aGVpciB2YWx1ZXMgYW5kIGJhY2tncm91bmRzLCBhbGxvd2luZyB1cyB0byBpbnRlZ3JhdGUgdGhlaXIgZmVlZGJhY2sgaW50byBvdXIgc29sdXRpb25zLlxyXG4gICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbCBpbnRyby1jeWNsZXRhYlwiIGlkPVwibWlzc2lvblwiIHN0eWxlPXt7ZGlzcGxheTogXCJub25lXCJ9fT5cclxuICAgICAgICAgICAgICAgIDxwPldlIHZpZXcgSHVtYW4gUHJhY3RpY2UgYXMgYW4gb3Bwb3J0dW5pdHkgdG8gPGI+Z28gYmV5b25kIHByYWN0aWNhbCBsYWIgd29yayBhbmQgdHJhZGl0aW9uYWwgc2NpZW5jZTwvYj4gYW5kIHRvIGxlYXJuIGFib3V0IFxyXG4gICAgICAgICAgICAgICAgICAgIHRoZSBuZWVkcyBvZiBwZW9wbGUgYWZmZWN0ZWQgYnkgIEN5c3RpYyBGaWJyb3Npcy4gSXRcdTIwMTlzIGEgY2hhbmNlIGZvciB1cyB0byBjcmVhdGl2ZWx5IGVuZ2FnZSB3aXRoIGRpZmZlcmVudCBhc3BlY3RzIG9mIG91ciBwcm9qZWN0IFxyXG4gICAgICAgICAgICAgICAgICAgIHdoaWxlIGRldmVsb3BpbmcgYW4gYXdhcmVuZXNzIG9mIHRoZSByZXNwb25zaWJpbGl0aWVzIHRoYXQgY29tZSB3aXRoIGl0LiBcclxuICAgICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgICAgICAgQXMgcGFydCBvZiBvdXIgPFByZUN5c2UvPiBwcm9qZWN0LCB3ZSBwZXJmb3JtZWQgaW50ZW5zaXZlIGJyYWluc3Rvcm1pbmcgc2Vzc2lvbnMgYW5kIGV4cGVydCBjb25zdWx0YXRpb25zLiBXZSBjb25kdWN0ZWQgY29tcHJlaGVuc2l2ZSAgXHJcbiAgICAgICAgICAgICAgICA8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZUFuZFNjcm9sbChcIm91ci1zdXJ2ZXlzLW9uLS1DeXN0aWMgRmlicm9zaXMtYW5kLWdlbmUtdGhlcmFweVwiLCBcIi9odW1hbi1wcmFjdGljZXNcIil9PiBzdXJ2ZXlzPC9hPiBhbW9uZyB0aGUgcHVibGljIGFuZCBwZW9wbGUgd2l0aCAgQ3lzdGljIEZpYnJvc2lzIGFuZCB0aGVpciByZWxhdGl2ZXMuIFdlIGZvY3VzZWQgb24gY3JpdGljYWwgYXNwZWN0cyBzdWNoIGFzIHRoZSA8Yj5uZWVkcyBvZiBvdXIgXHJcbiAgICAgICAgICAgICAgICB0YXJnZXQgZ3JvdXBzLCBzYWZldHksIGV0aGljcywgZGVzaWduLCBpbXBsZW1lbnRhdGlvbiwgYW5kIGJ1c2luZXNzPC9iPiBcdTIwMTQgZWFjaCBndWlkZWQgYnkgdGhlIGNvcmUgdmFsdWVzIG9mIG91ciB0ZWFtLiBCYXNlZCBvbiB0aGVzZSBpbnRlcmFjdGlvbnMgXHJcbiAgICAgICAgICAgICAgICBhbmQgdGhlIHJlY29tbWVuZGF0aW9ucyBvZiB0aGUgSHVtYW4gUHJhY3RpY2UgY29tbWl0dGVlLCB3ZSBoYXZlIGRldmVsb3BlZCBhbiBvcHRpbWFsIHN0cmF0ZWd5IGZvciBvdXIgcHJvamVjdCwgZW5zdXJpbmcgdGhhdCBvdXIgd29yayBpcyBub3QgXHJcbiAgICAgICAgICAgICAgICBvbmx5IGlubm92YXRpdmUgYnV0IGFsc28gbWluZGZ1bCBvZiBpdHMgYnJvYWRlciBpbXBhY3Qgb24gc29jaWV0eS5cclxuICAgICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sIGludHJvLWN5Y2xldGFiXCIgaWQ9XCJhcHByb2FjaFwiIHN0eWxlPXt7ZGlzcGxheTogXCJub25lXCJ9fT5cclxuICAgICAgICAgICAgICAgIDxwPkl0IHdhcyBpbXBvcnRhbnQgdG8gdXMgYXMgYSB0ZWFtIHRvIG5vdCBvbmx5IG9mZmVyIHRlY2huaWNhbCBzb2x1dGlvbnMsIGJ1dCB0byBzaG93IHRoYXQgb3VyIHByb2plY3QgY2FuIGNvbnRyaWJ1dGUgdG8gdGhlIGxhcmdlciBjb250ZXh0IG9mIG9uZ29pbmcgaW5pdGlhdGl2ZXMgYW5kIG1vdmVtZW50cyB0byBvcHRpbWl6ZSBoZWFsdGggY2FyZS4gV2Ugd2FudGVkIHRvIHJlYWxseSB1bmRlcnN0YW5kIHRoZSBmZWVkYmFjayBhbmQgaW5zaWdodHMgb2YgdGhlIHN0YWtlaG9sZGVycyB0byBnYWluIGEgYmV0dGVyIHVuZGVyc3RhbmRpbmcgb2YgaG93IG91ciBwcm9qZWN0IGZpdHMgaW50byB0aGUgb3ZlcmFsbCBwaWN0dXJlIG9mIGxpdmluZyB3aXRoICBDeXN0aWMgRmlicm9zaXMsIHRoZSBjdXJyZW50IHN0YXRlIG9mIHJlc2VhcmNoIGFuZCBob3cgaXQgY2FuIGJlIHVzZWQgdG8gcmVkdWNlIHRoZSBoZWFsdGggY2FyZSBnYXAuXHJcbiAgICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgICA8cD48Yj5PdXIgc3RyYXRlZ3kgaW5jbHVkZXM6PC9iPjwvcD5cclxuICAgICAgICAgICAgICAgIDx1bD5cclxuICAgICAgICAgICAgICAgIDxsaT5JZGVudGlmeWluZyBrZXkgdGFyZ2V0IGdyb3VwczwvbGk+XHJcbiAgICAgICAgICAgICAgICA8bGk+RXN0YWJsaXNoaW5nIG1lYW5pbmdmdWwgYW5kIGxhc3RpbmcgY29tbXVuaWNhdGlvbiB3aXRoIHN0YWtlaG9sZGVyczwvbGk+XHJcbiAgICAgICAgICAgICAgICA8bGk+RWZmZWN0aXZlbHkgZW5nYWdpbmcgd2l0aCB0aGUgZGl2ZXJzZSBiYWNrZ3JvdW5kcyBvZiB0aG9zZSBpbnZvbHZlZDwvbGk+XHJcbiAgICAgICAgICAgICAgICA8bGk+VW5kZXJzdGFuZCB0aGUgZXRoaWNhbCwgc29jaWFsIGFuZCBzY2llbnRpZmljIHZhbHVlcyB0aGF0IGluc3BpcmVkIG91ciBwcm9qZWN0PC9saT5cclxuICAgICAgICAgICAgICAgIDxsaT5JbnRlZ3JhdGluZyBmZWVkYmFjayBhbmQgYWRhcHRpbmcgb3VyIGFwcHJvYWNoIHRvIGFsaWduIHdpdGggc3Rha2Vob2xkZXIgZ29hbHM8L2xpPlxyXG4gICAgICAgICAgICAgICAgPGxpPkRlc2lnbmluZyBhbmQgaW5jb3Jwb3JhdGluZyByZXByZXNlbnRhdGl2ZSBzdXJ2ZXlzPC9saT5cclxuICAgICAgICAgICAgICAgIDxsaT5SZWZsZWN0IG9uIGhvdyB0aGVzZSB2YWx1ZXMgaGF2ZSBiZWVuIGluY29ycG9yYXRlZCBpbnRvIG91ciBwcm9qZWN0PC9saT5cclxuICAgICAgICAgICAgICAgIDwvdWw+XHJcbiAgICAgICAgICAgICAgICA8cD48Yj5XaXRoIHRoaXMgYXBwcm9hY2ggYW5kIHRoZSBzdXBwb3J0IG9mIG91ciBzdGFrZWhvbGRlcnMsIG91ciB1bHRpbWF0ZSBnb2FscyBhcmUgdG86PC9iPjwvcD5cclxuICAgICAgICAgICAgICAgIDx1bD5cclxuICAgICAgICAgICAgICAgIDxsaT5JbXByb3ZlIGNhcmUgZm9yICBDeXN0aWMgRmlicm9zaXMgcGF0aWVudHM8L2xpPlxyXG4gICAgICAgICAgICAgICAgPGxpPk9wdGltaXplIHRoZSBhdmFpbGFiaWxpdHkgb2YgZXNzZW50aWFsIG1lZGljYXRpb25zPC9saT5cclxuICAgICAgICAgICAgICAgIDwvdWw+XHJcblxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wgaW50cm8tY3ljbGV0YWJcIiBpZD1cInRhcmdldHNcIiBzdHlsZT17e2Rpc3BsYXk6IFwibm9uZVwifX0+XHJcbiAgICAgICAgICAgICAgICA8cD5PdXIgdGFyZ2V0IGdyb3VwcyBhcmUgY29tcG9zZWQgb2YgPGI+YWNhZGVtaWMgYW5kIGNsaW5pY2FsIGV4cGVydHM8L2I+IHRvIGJ1aWxkIGEgYnJpZGdlIGJldHdlZW4gcmVzZWFyY2ggYW5kIHByYWN0aWNhbCBhcHBsaWNhdGlvbi4gXHJcbiAgICAgICAgICAgICAgICAgICAgSW4gYWRkaXRpb24sIGVuZ2FnaW5nIHdpdGggQ0YgPGI+cGF0aWVudHM8L2I+IGFjcm9zcyBkaWZmZXJlbnQgYWdlIGdyb3VwcyBhbmQgY291bnRyaWVzIGFuZCB0aGVpciByZWxhdGl2ZXMgbGVhZHMgdG8gYW4gYXdhcmVuZXNzIG9mIFxyXG4gICAgICAgICAgICAgICAgICAgIHRoZSBzcGVjaWFsIG5lZWRzIGFuZCBkZW1hbmRzIG9mIG91ciBwcm9qZWN0IGFuZCB0byBhbiB1bmRlcnN0YW5kaW5nIG9mIHRoZSBsaW1pdGF0aW9ucyBhbmQgY2hhbGxlbmdlcyBpbiBldmVyeWRheSBDRiBsaWZlLiBUaGUgXHJcbiAgICAgICAgICAgICAgICAgICAgaW50ZWdyYXRpb24gb2YgcmVndWxhdG9yeSBldGhpY3Mgc2VydmVzIHRvIGV2YWx1YXRlIGhvdyBvdXIgcHJvamVjdCBtaWdodCBiZSBpbXBsZW1lbnRlZCBpbiBHZXJtYW4gYW5kIGludGVybmF0aW9uYWwgPGI+Z292ZXJubWVudCA8L2I+IFxyXG4gICAgICAgICAgICAgICAgICAgIHJlZ3VsYXRpb25zIGZvciBnZW5lIHRoZXJhcGV1dGljcy4gVGhlIGV4Y2hhbmdlIHdpdGggPGI+Y29tcGFuaWVzPC9iPiBjb250cmlidXRlcyB0byB1bmRlcnN0YW5kaW5nIHRoZSBjaGFuY2VzIGFuZCBjaGFsbGVuZ2VzIGluIGJ1c2luZXNzIG9mIFxyXG4gICAgICAgICAgICAgICAgICAgIGVzdGFibGlzaGluZyBhIHN0YXJ0LXVwIGFuZCB3aGF0IGl0IHRha2VzIHRvIGdldCBvdXIgaWRlYSBvbiB0aGUgbWFya2V0IGZvciByZWFsIGxpZmUgYXBwbGljYXRpb24uIFRoZSBjb250aW51b3VzIGV4Y2hhbmdlIGJldHdlZW4gdGhlIFxyXG4gICAgICAgICAgICAgICAgICAgIGRpZmZlcmVudCBncm91cHMgY29udHJpYnV0ZXMgc2lnbmlmaWNhbnRseSB0byB0aGUgc3VjY2Vzc2Z1bCBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgcHJvamVjdC4gRmlyc3QtaGFuZCBpbmZvcm1hdGlvbiBmcm9tIG91ciB0YXJnZXQgZ3JvdXBzIFxyXG4gICAgICAgICAgICAgICAgICAgIGFuZCB0aGUgbWF0Y2hpbmcgYW5kIG1lcmdpbmcgb2YgdGhlIGluZm9ybWF0aW9uIGlzIHRoZXJlZm9yZSBlc3NlbnRpYWwgZm9yIGRlZmluaW5nIGFuZCBhY2hpZXZpbmcgb3VyIGdvYWxzLlxyXG4gICAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgXHJcbiAgICAgICAgPC9TZWN0aW9uPlxyXG4gICAgKVxyXG59IiwgImltcG9ydCBCaWJ0ZXhQYXJzZXIgZnJvbSBcIi4uL2NvbXBvbmVudHMvbWFrZVNvdXJjZXNcIjtcclxuXHJcbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIEpvc2h1YUludGVydmlld1NvdXJjZXMoKXtcclxuICAgIHJldHVybiAoXHJcbiAgICAgICAgPGRpdj5cclxuICAgICAgICAgIDxCaWJ0ZXhQYXJzZXIgYmlidGV4U291cmNlcz17YmlidGV4U291cmNlc30gLz5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgKTtcclxufVxyXG5cclxuXHJcbmNvbnN0IGJpYnRleFNvdXJjZXMgPSBbXHJcbmAgXHJcblxyXG5AYXJ0aWNsZXtlaW5zLCBcclxuXHJcbnRpdGxlID0ge1ByaW1lIGVkaXRpbmcgZnVuY3Rpb25hbGx5IGNvcnJlY3RzICBDeXN0aWMgRmlicm9zaXMtY2F1c2luZyBDRlRSIG11dGF0aW9ucyBpbiBodW1hbiBvcmdhbm9pZHMgYW5kIGFpcndheSBlcGl0aGVsaWFsIGNlbGxzfSwgXHJcblxyXG5qb3VybmFsID0ge0NlbGwgUmVwb3J0cyBNZWRpY2luZX0sIFxyXG5cclxudm9sdW1lID0gezV9LCBcclxuXHJcbm51bWJlciA9IHs1fSwgXHJcblxyXG5wYWdlcyA9IHsxMDE1NDR9LCBcclxuXHJcbnllYXIgPSB7MjAyNH0sIFxyXG5cclxuaXNzbiA9IHsyNjY2LTM3OTF9LCBcclxuXHJcbmRvaSA9IHtodHRwczovL2RvaS5vcmcvMTAuMTAxNi9qLnhjcm0uMjAyNC4xMDE1NDR9LCBcclxuXHJcbnVybCA9IHtodHRwczovL3d3dy5zY2llbmNlZGlyZWN0LmNvbS9zY2llbmNlL2FydGljbGUvcGlpL1MyNjY2Mzc5MTI0MDAyMzQ5fSwgXHJcblxyXG5hdXRob3IgPSB7TWF0dGlqcyBCdWxjYWVuIGFuZCBQaFx1MDBFOWxpbmUgS29ydGxldmVuIGFuZCBSb25hbGQgQi4gTGl1IGFuZCBHaXVsaWEgTWF1bGUgYW5kIEVsaXNlIERyZWFubyBhbmQgTWFpcmVhZCBLZWxseSBhbmQgTWFyam9sZWluIE0uIEVuc2luY2sgYW5kIFNhbSBUaGllcmllIGFuZCBNYXhpbWUgU21pdHMgYW5kIE1hdHRlbyBDaWNpYW5pIGFuZCBBdXJlbGllIEhhdHRvbiBhbmQgQmVub2l0IENoZXZhbGllciBhbmQgQW5hYmVsYSBTLiBSYW1hbGhvIGFuZCBYYXZpZXIge0Nhc2FkZXZhbGwgaSBTb2x2YXN9IGFuZCBaZWdlciBEZWJ5c2VyIGFuZCBGcmFuXHUwMEU3b2lzIFZlcm1ldWxlbiBhbmQgUmlrIEdpanNiZXJzIGFuZCBJc2FiZWxsZSBTZXJtZXQtR2F1ZGVsdXMgYW5kIEFubmEgQ2VyZXNldG8gYW5kIE1hcmlhbm5lIFMuIENhcmxvbn0sXHJcblxyXG59YCxgXHJcbkBhcnRpY2xle3pld2ksIFxyXG5cclxuYXV0aG9yID0ge1RlZXJhdGFrdWxwaXNhcm4sIEphbWFyZWUgYW5kIEtvc3V3b24sIFBlbnNyaSBhbmQgU3JpbmFrYXJpbiwgSmlyYXBvcm4gYW5kIFBhbnRob25ndmlyaXlha3VsLCBDaGFybmNoYWkgYW5kIFN1dHJhLCBTdW1pdHJ9LCBcclxuXHJcbnllYXIgPSB7MjAwNn0sIFxyXG5cclxubW9udGggPSB7MTF9LCBcclxuXHJcbnBhZ2VzID0gezE3NTYtNjF9LCBcclxuXHJcbnRpdGxlID0ge0N5c3RpYyAgRmlicm9zaXMgaW4gdGhyZWUgbm9ydGhlYXN0IFRoYWkgaW5mYW50cyBpcyBDRiByZWFsbHkgYSByYXJlIGRpc2Vhc2UgaW4gdGhlIFRoYWkgcG9wdWxhdGlvbj99LCBcclxuXHJcbnZvbHVtZSA9IHs4OX0sIFxyXG5cclxuam91cm5hbCA9IHtKb3VybmFsIG9mIHRoZSBNZWRpY2FsIEFzc29jaWF0aW9uIG9mIFRoYWlsYW5kID0gQ2hvdG1haWhldCB0aGFuZ3BoYWV0fSBcclxuXHJcbn0gYCxgXHJcblxyXG5AYXJ0aWNsZXtkcmVpLCBcclxuXHJcbmF1dGhvciA9IHtBaG1lZCwgU2hha2lsIGFuZCBDaGVvaywgR2FyeSBhbmQgR29oLCBBbm5lRSBhbmQgSGFuLCBBeWUgYW5kIEhvbmcsIFNKIGFuZCBJbmRhd2F0aSwgV2FoeXVuaSBhbmQgS2FiaXIsIEFSIGFuZCBLYWJyYSwgU3VzaGlsIGFuZCBLYW1hbGFwb3JuLCBIYXJ1dGFpIGFuZCBLaW0sIEh5dW5nWW91bmcgYW5kIEt1bmxpbmcsIFNoZW4gYW5kIExvY2hpbmRhcmF0LCBTb3Jhc2FrIGFuZCBNb3NsZWhpLCBNb2hhbW1hZEFzaGthbiBhbmQgTmF0aGFuLCBBbm5hTWFyaWUgYW5kIE5nLCBEYW5pZWwgYW5kIFBodW5nLCBOZ3V5ZW5OZyBhbmQgU2luZ2gsIFYgYW5kIFRha2FzZSwgTWFzYXRvIGFuZCBUcmlhc2loLCBSaW5hIGFuZCBEYWksIFplbi1Lb25nfSwgXHJcblxyXG55ZWFyID0gezIwMjB9LCBcclxuXHJcbm1vbnRoID0gezAxfSwgXHJcblxyXG5wYWdlcyA9IHs4fSwgXHJcblxyXG50aXRsZSA9IHtDeXN0aWMgIEZpYnJvc2lzIGluIGFzaWF9LCBcclxuXHJcbnZvbHVtZSA9IHs0fSwgXHJcblxyXG5qb3VybmFsID0ge1BlZGlhdHJpYyBSZXNwaXJvbG9neSBhbmQgQ3JpdGljYWwgQ2FyZSBNZWRpY2luZX0sIFxyXG5cclxuZG9pID0gezEwLjQxMDMvcHJjbS5wcmNtXzVfMjB9IFxyXG5cclxufSBgLGBcclxuXHJcbkBhcnRpY2xle3ZpZXIsIFxyXG5cclxuYXV0aG9yID0ge0JvYmJvLCBLaGFkaWphdGFidWJha2FyIGFuZCBBaG1hZCwgVW1hciBhbmQgQ2hhdSwgRGUtTWluZyBhbmQgTm9yZGluLCBOb3JzaGFyaXphIGFuZCBBYmR1bGxhaCwgU3lhaHJpbH0sIFxyXG5cclxueWVhciA9IHsyMDIzfSwgXHJcblxyXG5tb250aCA9IHswNX0sIFxyXG5cclxucGFnZXMgPSB7MTAzNjg1fSwgXHJcblxyXG50aXRsZSA9IHtBIGNvbXByZWhlbnNpdmUgcmV2aWV3IG9mIEN5c3RpYyBGaWJyb3NpcyBpbiBBZnJpY2EgYW5kIEFzaWF9LCBcclxuXHJcbnZvbHVtZSA9IHszMH0sIFxyXG5cclxuam91cm5hbCA9IHtTYXVkaSBKb3VybmFsIG9mIEJpb2xvZ2ljYWwgU2NpZW5jZXN9LCBcclxuXHJcbmRvaSA9IHsxMC4xMDE2L2ouc2picy4yMDIzLjEwMzY4NX0gXHJcblxyXG59IGBcclxuXSIsICJpbXBvcnQgQmlidGV4UGFyc2VyIGZyb20gXCIuLi9jb21wb25lbnRzL21ha2VTb3VyY2VzXCI7XHJcblxyXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBNYXR0aWpzSW50ZXJ2aWV3U291cmNlcygpe1xyXG4gICAgcmV0dXJuIChcclxuICAgICAgICA8ZGl2PlxyXG4gICAgICAgICAgPEJpYnRleFBhcnNlciBiaWJ0ZXhTb3VyY2VzPXtiaWJ0ZXhTb3VyY2VzfSAvPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICApO1xyXG59XHJcblxyXG5cclxuY29uc3QgYmlidGV4U291cmNlcyA9IFtcclxuICAgIGBcclxuICAgIEBhcnRpY2xle0J1bGNhZW5fS29ydGxldmVuX0xpdV9NYXVsZV9EcmVhbm9fS2VsbHlfRW5zaW5ja19UaGllcmllX1NtaXRzX0NpY2lhbmlfZXQsXHJcblx0dGl0bGUgICAgICAgID0ge1xyXG5cdFx0UHJpbWUgZWRpdGluZyBmdW5jdGlvbmFsbHkgY29ycmVjdHMgIEN5c3RpYyBGaWJyb3Npcy1jYXVzaW5nIENGVFIgbXV0YXRpb25zIGluXHJcblx0XHRodW1hbiBvcmdhbm9pZHMgYW5kIGFpcndheSBlcGl0aGVsaWFsIGNlbGxzXHJcblx0fSxcclxuXHRhdXRob3IgICAgICAgPSB7XHJcblx0XHRCdWxjYWVuLCBNYXR0aWpzIGFuZCBLb3J0bGV2ZW4sIFBoXHUwMEU5bGluZSBhbmQgTGl1LCBSb25hbGQgQi4gYW5kIE1hdWxlLCBHaXVsaWFcclxuXHRcdGFuZCBEcmVhbm8sIEVsaXNlIGFuZCBLZWxseSwgTWFpcmVhZCBhbmQgRW5zaW5jaywgTWFyam9sZWluIE0uIGFuZCBUaGllcmllLFxyXG5cdFx0U2FtIGFuZCBTbWl0cywgTWF4aW1lIGFuZCBDaWNpYW5pLCBNYXR0ZW8gYW5kIEhhdHRvbiwgQXVyZWxpZSBhbmQgQ2hldmFsaWVyLFxyXG5cdFx0QmVub2l0IGFuZCBSYW1hbGhvLCBBbmFiZWxhIFMuIGFuZCBDYXNhZGV2YWxsIGkgU29sdmFzLCBYYXZpZXIgYW5kIERlYnlzZXIsXHJcblx0XHRaZWdlciBhbmQgVmVybWV1bGVuLCBGcmFuXHUwMEU3b2lzIGFuZCBHaWpzYmVycywgUmlrIGFuZCBTZXJtZXQtR2F1ZGVsdXMsIElzYWJlbGxlXHJcblx0XHRhbmQgQ2VyZXNldG8sIEFubmEgYW5kIENhcmxvbiwgTWFyaWFubmUgUy5cclxuXHR9LFxyXG5cdHllYXIgICAgICAgICA9IDIwMjQsXHJcblx0bW9udGggICAgICAgID0gbWF5LFxyXG5cdGpvdXJuYWwgICAgICA9IHtDZWxsIFJlcG9ydHMgTWVkaWNpbmV9LFxyXG5cdHBhZ2VzICAgICAgICA9IDEwMTU0NCxcclxuXHRkb2kgICAgICAgICAgPSB7MTAuMTAxNi9qLnhjcm0uMjAyNC4xMDE1NDR9LFxyXG5cdGlzc24gICAgICAgICA9IHsyNjY2LTM3OTF9LFxyXG5cdGFic3RyYWN0bm90ZSA9IHtcclxuXHRcdFByaW1lIGVkaXRpbmcgaXMgYSByZWNlbnQsIENSSVNQUi1kZXJpdmVkIGdlbm9tZSBlZGl0aW5nIHRlY2hub2xvZ3kgY2FwYWJsZVxyXG5cdFx0b2YgaW50cm9kdWNpbmcgcHJlY2lzZSBudWNsZW90aWRlIHN1YnN0aXR1dGlvbnMsIGluc2VydGlvbnMsIGFuZCBkZWxldGlvbnMuXHJcblx0XHRIZXJlLCB3ZSBwcmVzZW50IHByaW1lIGVkaXRpbmcgYXBwcm9hY2hlcyB0byBjb3JyZWN0IEwyMjdSLSBhbmQgTjEzMDNLLUNGVFIsXHJcblx0XHR0d28gbXV0YXRpb25zIHRoYXQgY2F1c2UgIEN5c3RpYyBGaWJyb3NpcyBhbmQgYXJlIG5vdCBlbGlnaWJsZSBmb3IgY3VycmVudFxyXG5cdFx0bWFya2V0LWFwcHJvdmVkIG1vZHVsYXRvciB0aGVyYXBpZXMuIFdlIHNob3cgdGhhdCwgdXBvbiBETkEgY29ycmVjdGlvbiBvZiB0aGVcclxuXHRcdENGVFIgZ2VuZSwgdGhlIGNvbXBsZXggZ2x5Y29zeWxhdGlvbiwgbG9jYWxpemF0aW9uLCBhbmQsIG1vc3QgaW1wb3J0YW50bHksXHJcblx0XHRmdW5jdGlvbiBvZiB0aGUgQ0ZUUiBwcm90ZWluIGFyZSByZXN0b3JlZCBpbiBIRUsyOTNUIGFuZCAxNkhCRSBjZWxsIGxpbmVzLlxyXG5cdFx0VGhlc2UgZmluZGluZ3Mgd2VyZSBzdWJzZXF1ZW50bHkgdmFsaWRhdGVkIGluIHBhdGllbnQtZGVyaXZlZCByZWN0YWxcclxuXHRcdG9yZ2Fub2lkcyBhbmQgaHVtYW4gbmFzYWwgZXBpdGhlbGlhbCBjZWxscy4gVGhyb3VnaCBhbmFseXNpcyBvZiBwcmVkaWN0ZWQgYW5kXHJcblx0XHRleHBlcmltZW50YWxseSBpZGVudGlmaWVkIGNhbmRpZGF0ZSBvZmYtdGFyZ2V0IHNpdGVzIGluIHByaW1hcnkgc3RlbSBjZWxscyxcclxuXHRcdHdlIGNvbmZpcm0gcHJldmlvdXMgcmVwb3J0cyBvbiB0aGUgaGlnaCBwcmltZSBlZGl0b3IgKFBFKSBzcGVjaWZpY2l0eSBhbmQgaXRzXHJcblx0XHRwb3RlbnRpYWwgZm9yIGEgY3VyYXRpdmUgQ0YgZ2VuZSBlZGl0aW5nIHRoZXJhcHkuIFRvIGZhY2lsaXRhdGUgZnV0dXJlXHJcblx0XHRzY3JlZW5pbmcgb2YgZ2VuZXRpYyBzdHJhdGVnaWVzIGluIGEgdHJhbnNsYXRpb25hbCBDRiBtb2RlbCwgYSBtYWNoaW5lXHJcblx0XHRsZWFybmluZyBhbGdvcml0aG0gd2FzIGRldmVsb3BlZCBmb3IgZHluYW1pYyBxdWFudGlmaWNhdGlvbiBvZiBDRlRSIGZ1bmN0aW9uXHJcblx0XHRpbiBvcmdhbm9pZHMgKERFVEVDVE9SOiBcdTIwMUNkZXRlY3Rpb24gb2YgdGFyZ2V0ZWQgZWRpdGluZyBvZiBDRlRSIGluXHJcblx0XHRvcmdhbm9pZHNcdTIwMUQpLlxyXG5cdH1cclxufVxyXG5cclxuICAgIGBcclxuXHJcbl0iLCAiaW1wb3J0IEJpYnRleFBhcnNlciBmcm9tIFwiLi4vY29tcG9uZW50cy9tYWtlU291cmNlc1wiO1xyXG5cclxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gTGl1SW50ZXJ2aWV3U291cmNlcygpe1xyXG4gICAgcmV0dXJuIChcclxuICAgICAgICA8ZGl2PlxyXG4gICAgICAgICAgPEJpYnRleFBhcnNlciBiaWJ0ZXhTb3VyY2VzPXtiaWJ0ZXhTb3VyY2VzfSAvPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICApO1xyXG59XHJcblxyXG5cclxuY29uc3QgYmlidGV4U291cmNlcyA9IFtcclxuYCBcclxuQGFydGljbGV7ZWlucyxcclxudGl0bGUgPSB7U2VhcmNoLWFuZC1yZXBsYWNlIGdlbm9tZSBlZGl0aW5nIHdpdGhvdXQgZG91YmxlLXN0cmFuZCBicmVha3Mgb3IgZG9ub3IgRE5BfSwgXHJcbnZvbHVtZSA9IHs1NzZ9LCBcclxucmlnaHRzID0gezIwMTkgVGhlIEF1dGhvcihzKSwgdW5kZXIgZXhjbHVzaXZlIGxpY2VuY2UgdG8gU3ByaW5nZXIgTmF0dXJlIExpbWl0ZWR9LCBcclxuSVNTTiA9IHsxNDc2LTQ2ODd9LCBcclxuRE9JID0gezEwLjEwMzgvczQxNTg2LTAxOS0xNzExLTR9LCBcclxuYWJzdHJhY3ROb3RlID0ge01vc3QgZ2VuZXRpYyB2YXJpYW50cyB0aGF0IGNvbnRyaWJ1dGUgdG8gZGlzZWFzZSBhcmUgY2hhbGxlbmdpbmcgdG8gY29ycmVjdCBlZmZpY2llbnRseSBhbmQgd2l0aG91dCBleGNlc3MgYnlwcm9kdWN0cy4gSGVyZSB3ZSBkZXNjcmliZSBwcmltZSBlZGl0aW5nLCBhIHZlcnNhdGlsZSBhbmQgcHJlY2lzZSBnZW5vbWUgZWRpdGluZyBtZXRob2QgdGhhdCBkaXJlY3RseSB3cml0ZXMgbmV3IGdlbmV0aWMgaW5mb3JtYXRpb24gaW50byBhIHNwZWNpZmllZCBETkEgc2l0ZSB1c2luZyBhIGNhdGFseXRpY2FsbHkgaW1wYWlyZWQgQ2FzOSBlbmRvbnVjbGVhc2UgZnVzZWQgdG8gYW4gZW5naW5lZXJlZCByZXZlcnNlIHRyYW5zY3JpcHRhc2UsIHByb2dyYW1tZWQgd2l0aCBhIHByaW1lIGVkaXRpbmcgZ3VpZGUgUk5BIChwZWdSTkEpIHRoYXQgYm90aCBzcGVjaWZpZXMgdGhlIHRhcmdldCBzaXRlIGFuZCBlbmNvZGVzIHRoZSBkZXNpcmVkIGVkaXQuIFdlIHBlcmZvcm1lZCBtb3JlIHRoYW4gMTc1IGVkaXRzIGluIGh1bWFuIGNlbGxzLCBpbmNsdWRpbmcgdGFyZ2V0ZWQgaW5zZXJ0aW9ucywgZGVsZXRpb25zLCBhbmQgYWxsIDEyIHR5cGVzIG9mIHBvaW50IG11dGF0aW9uLCB3aXRob3V0IHJlcXVpcmluZyBkb3VibGUtc3RyYW5kIGJyZWFrcyBvciBkb25vciBETkEgdGVtcGxhdGVzLiBXZSB1c2VkIHByaW1lIGVkaXRpbmcgaW4gaHVtYW4gY2VsbHMgdG8gY29ycmVjdCwgZWZmaWNpZW50bHkgYW5kIHdpdGggZmV3IGJ5cHJvZHVjdHMsIHRoZSBwcmltYXJ5IGdlbmV0aWMgY2F1c2VzIG9mIHNpY2tsZSBjZWxsIGRpc2Vhc2UgYW5kIFRheVx1MjAxM1NhY2hzIGRpc2Vhc2U7IHRvIGluc3RhbGwgYSBwcm90ZWN0aXZlIHRyYW5zdmVyc2lvbiBpbiBQUk5QOyBhbmQgdG8gaW5zZXJ0IHZhcmlvdXMgdGFncyBhbmQgZXBpdG9wZXMgcHJlY2lzZWx5IGludG8gdGFyZ2V0IGxvY2kuIEZvdXIgaHVtYW4gY2VsbCBsaW5lcyBhbmQgcHJpbWFyeSBwb3N0LW1pdG90aWMgbW91c2UgY29ydGljYWwgbmV1cm9ucyBzdXBwb3J0IHByaW1lIGVkaXRpbmcgd2l0aCB2YXJ5aW5nIGVmZmljaWVuY2llcy4gUHJpbWUgZWRpdGluZyBzaG93cyBoaWdoZXIgb3Igc2ltaWxhciBlZmZpY2llbmN5IGFuZCBmZXdlciBieXByb2R1Y3RzIHRoYW4gaG9tb2xvZ3ktZGlyZWN0ZWQgcmVwYWlyLCBoYXMgY29tcGxlbWVudGFyeSBzdHJlbmd0aHMgYW5kIHdlYWtuZXNzZXMgY29tcGFyZWQgdG8gYmFzZSBlZGl0aW5nLCBhbmQgaW5kdWNlcyBtdWNoIGxvd2VyIG9mZi10YXJnZXQgZWRpdGluZyB0aGFuIENhczkgbnVjbGVhc2UgYXQga25vd24gQ2FzOSBvZmYtdGFyZ2V0IHNpdGVzLiBQcmltZSBlZGl0aW5nIHN1YnN0YW50aWFsbHkgZXhwYW5kcyB0aGUgc2NvcGUgYW5kIGNhcGFiaWxpdGllcyBvZiBnZW5vbWUgZWRpdGluZywgYW5kIGluIHByaW5jaXBsZSBjb3VsZCBjb3JyZWN0IHVwIHRvIDg5JSBvZiBrbm93biBnZW5ldGljIHZhcmlhbnRzIGFzc29jaWF0ZWQgd2l0aCBodW1hbiBkaXNlYXNlcy59LCBcclxubnVtYmVyID0gezc3ODV9LCBcclxuam91cm5hbCA9IHtOYXR1cmV9LCBcclxucHVibGlzaGVyID0ge05hdHVyZSBQdWJsaXNoaW5nIEdyb3VwfSwgXHJcbmF1dGhvciA9IHtBbnphbG9uZSwgQW5kcmV3IFYuIGFuZCBSYW5kb2xwaCwgUGV5dG9uIEIuIGFuZCBEYXZpcywgSmVzc2llIFIuIGFuZCBTb3VzYSwgQWxleGFuZGVyIEEuIGFuZCBLb2JsYW4sIEx1a2UgVy4gYW5kIExldnksIEpvbmF0aGFuIE0uIGFuZCBDaGVuLCBQZXRlciBKLiBhbmQgV2lsc29uLCBDaHJpc3RvcGhlciBhbmQgTmV3YnksIEdyZWdvcnkgQS4gYW5kIFJhZ3VyYW0sIEFkaXR5YSBhbmQgTGl1LCBEYXZpZCBSLn0sIFxyXG55ZWFyID0gezIwMTl9LCBcclxubW9udGggPSB7ZGVjfSwgXHJcbnBhZ2VzID0gezE0OVx1MjAxMzE1N30sIFxyXG5sYW5ndWFnZSA9IHtlbn1cclxufWAsYFxyXG5cclxuQGFydGljbGV7endlaSxcclxudGl0bGUgPSB7UGhhZ2UtYXNzaXN0ZWQgZXZvbHV0aW9uIGFuZCBwcm90ZWluIGVuZ2luZWVyaW5nIHlpZWxkIGNvbXBhY3QsIGVmZmljaWVudCBwcmltZSBlZGl0b3JzfSwgXHJcbnZvbHVtZSA9IHsxODZ9LCBcclxuSVNTTiA9IHswMDkyLTg2NzQsIDEwOTctNDE3Mn0sIFxyXG5ET0kgPSB7MTAuMTAxNi9qLmNlbGwuMjAyMy4wNy4wMzl9LCBcclxubnVtYmVyID0gezE4fSwgXHJcbmpvdXJuYWwgPSB7Q2VsbH0sIFxyXG5wdWJsaXNoZXIgPSB7RWxzZXZpZXJ9LCBcclxuYXV0aG9yID0ge0RvbWFuLCBKb3JkYW4gTC4gYW5kIFBhbmRleSwgU21yaXRpIGFuZCBOZXVnZWJhdWVyLCBNb25pY2EgRS4gYW5kIEFuLCBNZWlydWkgYW5kIERhdmlzLCBKZXNzaWUgUi4gYW5kIFJhbmRvbHBoLCBQZXl0b24gQi4gYW5kIE1jRWxyb3ksIEFtYmVyIGFuZCBHYW8sIFhpbiBELiBhbmQgUmFndXJhbSwgQWRpdHlhIGFuZCBSaWNodGVyLCBNaWNoZWxsZSBGLiBhbmQgRXZlcmV0dGUsIEtlbGNlZSBBLiBhbmQgQmFuc2tvdGEsIFNhbWFneWEgYW5kIFRpYW4sIEthdGhyeW4gYW5kIFRhbywgWS4gQWxsZW4gYW5kIFRvbGFyLCBKYWt1YiBhbmQgT3Nib3JuLCBNYXJrIEouIGFuZCBMaXUsIERhdmlkIFIufSwgXHJcbnllYXIgPSB7MjAyM30sIFxyXG5tb250aCA9IHthdWd9LCBcclxucGFnZXMgPSB7Mzk4My00MDAyLmUyNn0sIFxyXG5sYW5ndWFnZSA9IHtFbmdsaXNofVxyXG59YCxgXHJcblxyXG5AYXJ0aWNsZXtkcmVpLCBcclxudGl0bGUgPSB7UGhhZ2UtYXNzaXN0ZWQgY29udGludW91cyBhbmQgbm9uLWNvbnRpbnVvdXMgZXZvbHV0aW9ufSwgXHJcbnZvbHVtZSA9IHsxNX0sIFxyXG5yaWdodHMgPSB7MjAyMCBUaGUgQXV0aG9yKHMpLCB1bmRlciBleGNsdXNpdmUgbGljZW5jZSB0byBTcHJpbmdlciBOYXR1cmUgTGltaXRlZH0sIFxyXG5JU1NOID0gezE3NTAtMjc5OX0sIFxyXG5ET0kgPSB7MTAuMTAzOC9zNDE1OTYtMDIwLTAwNDEwLTN9LCBcclxuYWJzdHJhY3ROb3RlID0ge0RpcmVjdGVkIGV2b2x1dGlvbiwgd2hpY2ggYXBwbGllcyB0aGUgcHJpbmNpcGxlcyBvZiBEYXJ3aW5pYW4gZXZvbHV0aW9uIHRvIGEgbGFib3JhdG9yeSBzZXR0aW5nLCBpcyBhIHBvd2VyZnVsIHN0cmF0ZWd5IGZvciBnZW5lcmF0aW5nIGJpb21vbGVjdWxlcyB3aXRoIGRpdmVyc2UgYW5kIHRhaWxvcmVkIHByb3BlcnRpZXMuIFRoaXMgdGVjaG5pcXVlIGNhbiBiZSBpbXBsZW1lbnRlZCBpbiBhIGhpZ2hseSBlZmZpY2llbnQgbWFubmVyIHVzaW5nIGNvbnRpbnVvdXMgZXZvbHV0aW9uLCB3aGljaCBlbmFibGVzIHRoZSBzdGVwcyBvZiBkaXJlY3RlZCBldm9sdXRpb24gdG8gcHJvY2VlZCBzZWFtbGVzc2x5IG92ZXIgbWFueSBzdWNjZXNzaXZlIGdlbmVyYXRpb25zIHdpdGggbWluaW1hbCByZXNlYXJjaGVyIGludGVydmVudGlvbi4gUGhhZ2UtYXNzaXN0ZWQgY29udGludW91cyBldm9sdXRpb24gKFBBQ0UpIGVuYWJsZXMgY29udGludW91cyBkaXJlY3RlZCBldm9sdXRpb24gaW4gYmFjdGVyaWEgYnkgbWFwcGluZyB0aGUgc3RlcHMgb2YgRGFyd2luaWFuIGV2b2x1dGlvbiBvbnRvIHRoZSBiYWN0ZXJpb3BoYWdlIGxpZmUgY3ljbGUgYW5kIGFsbG93cyBkaXJlY3RlZCBldm9sdXRpb24gdG8gb2NjdXIgb24gbXVjaCBmYXN0ZXIgdGltZXNjYWxlcyBjb21wYXJlZCB0byBjb252ZW50aW9uYWwgbWV0aG9kcy4gVGhpcyBwcm90b2NvbCBwcm92aWRlcyBkZXRhaWxlZCBpbnN0cnVjdGlvbnMgb24gZXZvbHZpbmcgcHJvdGVpbnMgdXNpbmcgUEFDRSBhbmQgcGhhZ2UtYXNzaXN0ZWQgbm9uLWNvbnRpbnVvdXMgZXZvbHV0aW9uIChQQU5DRSkgYW5kIGluY2x1ZGVzIGluZm9ybWF0aW9uIG9uIHRoZSBwcmVwYXJhdGlvbiBvZiBzZWxlY3Rpb24gcGhhZ2UgYW5kIGhvc3QgY2VsbHMsIHRoZSBhc3NlbWJseSBvZiBhIGNvbnRpbnVvdXMgZmxvdyBhcHBhcmF0dXMgYW5kIHRoZSBwZXJmb3JtYW5jZSBhbmQgYW5hbHlzaXMgb2YgZXZvbHV0aW9uIGV4cGVyaW1lbnRzLiBUaGlzIHByb3RvY29sIGNhbiBiZSBwZXJmb3JtZWQgaW4gYXMgbGl0dGxlIGFzIDIgd2Vla3MgdG8gY29tcGxldGUgbW9yZSB0aGFuIDEwMCByb3VuZHMgb2YgZXZvbHV0aW9uIChjb21wbGV0ZSBjeWNsZXMgb2YgbXV0YXRpb24sIHNlbGVjdGlvbiBhbmQgcmVwbGljYXRpb24pIGluIGEgc2luZ2xlIFBBQ0UgZXhwZXJpbWVudC59LCBcclxubnVtYmVyID0gezEyfSwgXHJcbmpvdXJuYWwgPSB7TmF0dXJlIFByb3RvY29sc30sIFxyXG5wdWJsaXNoZXIgPSB7TmF0dXJlIFB1Ymxpc2hpbmcgR3JvdXB9LCBcclxuYXV0aG9yID0ge01pbGxlciwgU2hhbm5vbiBNLiBhbmQgV2FuZywgVGluYSBhbmQgTGl1LCBEYXZpZCBSLn0sIFxyXG55ZWFyID0gezIwMjB9LCBcclxubW9udGggPSB7ZGVjfSwgXHJcbnBhZ2VzID0gezQxMDFcdTIwMTM0MTI3fSwgXHJcbmxhbmd1YWdlID0ge2VufVxyXG59YCxgXHJcbkBhcnRpY2xle3ZpZXIsIFxyXG50aXRsZSA9IHtTeXN0ZW1hdGljIG9wdGltaXphdGlvbiBvZiBwcmltZSBlZGl0aW5nIGZvciB0aGUgZWZmaWNpZW50IGZ1bmN0aW9uYWwgY29ycmVjdGlvbiBvZiBDRlRSIEY1MDhkZWwgaW4gaHVtYW4gYWlyd2F5IGVwaXRoZWxpYWwgY2VsbHN9LCBcclxucmlnaHRzID0gezIwMjQgVGhlIEF1dGhvcihzKX0sIFxyXG5JU1NOID0gezIxNTctODQ2WH0sIFxyXG5ET0kgPSB7MTAuMTAzOC9zNDE1NTEtMDI0LTAxMjMzLTN9LCBcclxuYWJzdHJhY3ROb3RlID0ge1ByaW1lIGVkaXRpbmcgKFBFKSBlbmFibGVzIHByZWNpc2UgYW5kIHZlcnNhdGlsZSBnZW5vbWUgZWRpdGluZyB3aXRob3V0IHJlcXVpcmluZyBkb3VibGUtc3RyYW5kZWQgRE5BIGJyZWFrcy4gSGVyZSB3ZSBkZXNjcmliZSB0aGUgc3lzdGVtYXRpYyBvcHRpbWl6YXRpb24gb2YgUEUgc3lzdGVtcyB0byBlZmZpY2llbnRseSBjb3JyZWN0IGh1bWFuICBDeXN0aWMgRmlicm9zaXMgKENGKSB0cmFuc21lbWJyYW5lIGNvbmR1Y3RhbmNlIHJlZ3VsYXRvciAoQ0ZUUikgRjUwOGRlbCwgYSB0aHJlZS1udWNsZW90aWRlIGRlbGV0aW9uIHRoYXQgaXMgdGhlIHByZWRvbWluYW50IGNhdXNlIG9mIENGLiBCeSBjb21iaW5pbmcgc2l4IGVmZmljaWVuY3kgb3B0aW1pemF0aW9ucyBmb3IgUEVcdTIwMTRlbmdpbmVlcmVkIFBFIGd1aWRlIFJOQXMsIHRoZSBQRW1heCBhcmNoaXRlY3R1cmUsIHRoZSB0cmFuc2llbnQgZXhwcmVzc2lvbiBvZiBhIGRvbWluYW50LW5lZ2F0aXZlIG1pc21hdGNoIHJlcGFpciBwcm90ZWluLCBzdHJhdGVnaWMgc2lsZW50IGVkaXRzLCBQRTYgdmFyaWFudHMgYW5kIHByb3hpbWFsIFx1MjAxOGRlYWRcdTIwMTkgc2luZ2xlLWd1aWRlIFJOQXNcdTIwMTR3ZSBpbmNyZWFzZWQgY29ycmVjdGlvbiBlZmZpY2llbmNpZXMgZm9yIENGVFIgRjUwOGRlbCBmcm9tIGxlc3MgdGhhbiAwLjUlIGluIEhFSzI5M1QgY2VsbHMgdG8gNTglIGluIGltbW9ydGFsaXplZCBicm9uY2hpYWwgZXBpdGhlbGlhbCBjZWxscyAoYSAxNDAtZm9sZCBpbXByb3ZlbWVudCkgYW5kIHRvIDI1JSBpbiBwYXRpZW50LWRlcml2ZWQgYWlyd2F5IGVwaXRoZWxpYWwgY2VsbHMuIFRoZSBvcHRpbWl6YXRpb25zIGFsc28gcmVzdWx0ZWQgaW4gbWluaW1hbCBvZmYtdGFyZ2V0IGVkaXRpbmcsIGluIGVkaXQtdG8taW5kZWwgcmF0aW9zIDMuNS1mb2xkIGdyZWF0ZXIgdGhhbiB0aG9zZSBhY2hpZXZlZCBieSBudWNsZWFzZS1tZWRpYXRlZCBob21vbG9neS1kaXJlY3RlZCByZXBhaXIsIGFuZCBpbiB0aGUgZnVuY3Rpb25hbCByZXN0b3JhdGlvbiBvZiBDRlRSIGlvbiBjaGFubmVscyB0byBvdmVyIDUwJSBvZiB3aWxkLXR5cGUgbGV2ZWxzIChzaW1pbGFyIHRvIHRob3NlIGFjaGlldmVkIHZpYSBjb21iaW5hdGlvbiB0cmVhdG1lbnQgd2l0aCBlbGV4YWNhZnRvciwgdGV6YWNhZnRvciBhbmQgaXZhY2FmdG9yKSBpbiBwcmltYXJ5IGFpcndheSBjZWxscy4gT3VyIGZpbmRpbmdzIHN1cHBvcnQgdGhlIGZlYXNpYmlsaXR5IG9mIGEgZHVyYWJsZSBvbmUtdGltZSB0cmVhdG1lbnQgZm9yIENGLn0sIFxyXG5qb3VybmFsID0ge05hdHVyZSBCaW9tZWRpY2FsIEVuZ2luZWVyaW5nfSwgXHJcbnB1Ymxpc2hlciA9IHtOYXR1cmUgUHVibGlzaGluZyBHcm91cH0sIFxyXG5hdXRob3IgPSB7U291c2EsIEFsZXhhbmRlciBBLiBhbmQgSGVtZXosIENvbGluIGFuZCBMZWksIExlaSBhbmQgVHJhb3JlLCBTb3VtYmEgYW5kIEt1bGhhbmtvdmEsIEthdGFyaW5hIGFuZCBOZXdieSwgR3JlZ29yeSBBLiBhbmQgRG9tYW4sIEpvcmRhbiBMLiBhbmQgT3llLCBLZXllZGUgYW5kIFBhbmRleSwgU21yaXRpIGFuZCBLYXJwLCBQaGlsaXAgSC4gYW5kIE1jQ3JheSwgUGF1bCBCLiBhbmQgTGl1LCBEYXZpZCBSLn0sIFxyXG55ZWFyID0gezIwMjR9LCBcclxubW9udGggPSB7anVsfSwgXHJcbnBhZ2VzID0gezFcdTIwMTMxNX0sIFxyXG5sYW5ndWFnZSA9IHtlbn1cclxufWBcclxuXSIsICJpbXBvcnQgQmlidGV4UGFyc2VyIGZyb20gXCIuLi9jb21wb25lbnRzL21ha2VTb3VyY2VzXCI7XHJcblxyXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBSbmhhbGVTb3VyY2VzKCl7XHJcbiAgICByZXR1cm4gKFxyXG4gICAgICAgIDxkaXY+XHJcbiAgICAgICAgICA8QmlidGV4UGFyc2VyIGJpYnRleFNvdXJjZXM9e2JpYnRleFNvdXJjZXN9IC8+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICk7XHJcbn1cclxuXHJcblxyXG5jb25zdCBiaWJ0ZXhTb3VyY2VzID0gW1xyXG5gXHJcbiBcclxuQGFydGljbGV7YXJ0aWNsZSwgXHJcblxyXG5hdXRob3I9e1JvdGgsIEYuIEMuLCBOdW1iZXJnZXIsIE0uLCBhbmQgRHJhZ3VobiwgQS59LCBcclxuXHJcbnllYXI9ezIwMjN9LCBcclxuXHJcbm1vbnRoPXt9LCBcclxuXHJcbnBhZ2VzPXsxLTE0fSwgXHJcblxyXG50aXRsZT17RGllIEVudHdpY2tsdW5nIGRlciBQYXRjaC1DbGFtcC1UZWNobmlrfSwgXHJcblxyXG52b2x1bWU9e30sIFxyXG5cclxuam91cm5hbD17U3ByaW5nZXIgZUJvb2tzfSwgXHJcblxyXG5kb2k9ezEwLjEwMDcvOTc4LTMtNjYyLTY2MDUzLTlfMX0gXHJcblxyXG59IFxyXG5cclxuYCxgIFxyXG5cclxuQGFydGljbGV7YXJ0aWNsZSwgXHJcblxyXG5hdXRob3I9e01ldGUsIFYufSwgXHJcblxyXG55ZWFyPXsyMDIzfSwgXHJcblxyXG5tb250aD17IH0sIFxyXG5cclxucGFnZXM9eyB9LCBcclxuXHJcbnRpdGxlPXtFbnR3aWNrbHVuZyB1bmQgVmFsaWRpZXJ1bmcgbmV1ZXIgbmljaHQtaW52YXNpdmVyIERpYWdub3Nlc3lzdGVtZSBmXHUwMEZDciBNdWNvY2lsaWFyeSBDbGVhcmFuY2UgRGlzb3JkZXJzIChNQ0NEKX0sIFxyXG5cclxudm9sdW1lPXsgfSwgXHJcblxyXG5qb3VybmFsPXtEaXNzZXJ0YXRpb24sIFdlc3RmXHUwMEU0bGlzY2hlIFdpbGhlbG1zLVVuaXZlcnNpdFx1MDBFNHQgTVx1MDBGQ25zdGVyfSwgXHJcblxyXG5kb2k9ezEwLjE3ODc5Lzk4OTU4NDQxOTA1fSBcclxuXHJcbn0gXHJcblxyXG5gLGBcclxuXHJcbkBhcnRpY2xle2FydGljbGUsIFxyXG5cclxuYXV0aG9yPXtHaWFldmVyLCBJLiBhbmQgS2Vlc2UsIEMuIH0sIFxyXG5cclxueWVhcj17MTk5M30sIFxyXG5cclxubW9udGg9eyB9LCBcclxuXHJcbnBhZ2VzPXs1OTEtNTkyfSwgXHJcblxyXG50aXRsZT17QSBtb3JwaG9sb2dpY2FsIGJpb3NlbnNvciBmb3IgbWFtbWFsaWFuIGNlbGxzfSwgXHJcblxyXG52b2x1bWU9ezM2Nn0sIFxyXG5cclxuam91cm5hbD17TmF0dXJlfSwgXHJcblxyXG5kb2k9ezEwLjEwMzgvMzY2NTkxYTB9IFxyXG5cclxufSBcclxuYFxyXG5dIiwgImltcG9ydCBCaWJ0ZXhQYXJzZXIgZnJvbSBcIi4uL2NvbXBvbmVudHMvbWFrZVNvdXJjZXNcIjtcclxuXHJcbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIFdpc2NobWV5ZXJTb3VyY2VzKCl7XHJcbiAgICByZXR1cm4gKFxyXG4gICAgICAgIDxkaXY+XHJcbiAgICAgICAgICA8QmlidGV4UGFyc2VyIGJpYnRleFNvdXJjZXM9e2JpYnRleFNvdXJjZXN9IC8+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICk7XHJcbn1cclxuXHJcblxyXG5jb25zdCBiaWJ0ZXhTb3VyY2VzID0gW1xyXG4gICAgYFxyXG4gICAgIFxyXG5AYXJ0aWNsZXthcnRpY2xlLCBcclxuXHJcbmF1dGhvcj17Um90aCwgRi4gQy4sIE51bWJlcmdlciwgTS4sIGFuZCBEcmFndWhuLCBBLn0sIFxyXG5cclxueWVhcj17MjAyM30sIFxyXG5cclxubW9udGg9e30sIFxyXG5cclxucGFnZXM9ezEtMTR9LCBcclxuXHJcbnRpdGxlPXtEaWUgRW50d2lja2x1bmcgZGVyIFBhdGNoLUNsYW1wLVRlY2huaWt9LCBcclxuXHJcbnZvbHVtZT17fSwgXHJcblxyXG5qb3VybmFsPXtTcHJpbmdlciBlQm9va3N9LCBcclxuXHJcbmRvaT17MTAuMTAwNy85NzgtMy02NjItNjYwNTMtOV8xfSBcclxuXHJcbn0gXHJcblxyXG5gLGBcclxuXHJcbkBhcnRpY2xle2FydGljbGUsIFxyXG5cclxuYXV0aG9yPXtNZXRlLCBWLn0sIFxyXG5cclxueWVhcj17MjAyM30sIFxyXG5cclxubW9udGg9eyB9LCBcclxuXHJcbnBhZ2VzPXsgfSwgXHJcblxyXG50aXRsZT17RW50d2lja2x1bmcgdW5kIFZhbGlkaWVydW5nIG5ldWVyIG5pY2h0LWludmFzaXZlciBEaWFnbm9zZXN5c3RlbWUgZlx1MDBGQ3IgTXVjb2NpbGlhcnkgQ2xlYXJhbmNlIERpc29yZGVycyAoTUNDRCl9LCBcclxuXHJcbnZvbHVtZT17IH0sIFxyXG5cclxuam91cm5hbD17RGlzc2VydGF0aW9uLCBXZXN0Zlx1MDBFNGxpc2NoZSBXaWxoZWxtcy1Vbml2ZXJzaXRcdTAwRTR0IE1cdTAwRkNuc3Rlcn0sIFxyXG5cclxuZG9pPXsxMC4xNzg3OS85ODk1ODQ0MTkwNX0gXHJcblxyXG59IFxyXG5gLGBcclxuXHJcbkBhcnRpY2xle2FydGljbGUsIFxyXG5cclxuYXV0aG9yPXtHaWFldmVyLCBJLiBhbmQgS2Vlc2UsIEMuIH0sIFxyXG5cclxueWVhcj17MTk5M30sIFxyXG5cclxubW9udGg9eyB9LCBcclxuXHJcbnBhZ2VzPXs1OTEtNTkyfSwgXHJcblxyXG50aXRsZT17QSBtb3JwaG9sb2dpY2FsIGJpb3NlbnNvciBmb3IgbWFtbWFsaWFuIGNlbGxzfSwgXHJcblxyXG52b2x1bWU9ezM2Nn0sIFxyXG5cclxuam91cm5hbD17TmF0dXJlfSwgXHJcblxyXG5kb2k9ezEwLjEwMzgvMzY2NTkxYTB9IFxyXG5cclxufSBcclxuICAgIGBcclxuXSIsICJpbXBvcnQgeyBRYUJveCB9IGZyb20gXCIuLi9jb21wb25lbnRzL0JveGVzXCI7XHJcbmltcG9ydCB7IE91ckxpbmssIFRhYlNjcm9sbExpbmsgfSBmcm9tIFwiLi4vY29tcG9uZW50cy9MaW5rXCI7XHJcbmltcG9ydCB7IFNjcm9sbExpbmtXaXRoQ2hpbGQgfSBmcm9tIFwiLi4vY29tcG9uZW50cy9TY3JvbGxMaW5rXCI7XHJcbmltcG9ydCBKb3NodWFJbnRlcnZpZXdTb3VyY2VzIGZyb20gXCIuLi9zb3VyY2VzL2pvc2h1YS1pbnYtc291cmNlc1wiO1xyXG5pbXBvcnQgTWF0dGlqc0ludGVydmlld1NvdXJjZXMgZnJvbSBcIi4uL3NvdXJjZXMvbWF0dGlqLWludi1zb3VyY2VzXCI7XHJcbmltcG9ydCBMaXVJbnRlcnZpZXdTb3VyY2VzIGZyb20gXCIuLi9zb3VyY2VzL2xpdS1pbnYtc291cmNlc1wiO1xyXG5pbXBvcnQgUm5oYWxlU291cmNlcyBmcm9tIFwiLi4vc291cmNlcy9ybmhhbGUtc291cmNlc1wiO1xyXG5pbXBvcnQgV2lzY2htZXllclNvdXJjZXMgZnJvbSBcIi4uL3NvdXJjZXMvd2ltc2NoZXllci1zb3VyY2VzXCI7XHJcbmltcG9ydCB7IHVzZU5hdmlnYXRpb24gfSBmcm9tIFwiLi4vdXRpbHNcIjtcclxuXHJcbmZ1bmN0aW9uIEhQTGlua3RvT3RoZXJIUFRhYih7dGFiLCB0ZXh0fTp7dGFiOiBzdHJpbmcsIHRleHQ6IHN0cmluZ30pe1xyXG4gIGNvbnN0IHtnb1RvUGFnZXNBbmRPcGVuVGFifSA9IHVzZU5hdmlnYXRpb24oKTsgXHJcbiAgcmV0dXJuKFxyXG4gICAgPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VzQW5kT3BlblRhYih0YWIsIFwiXCIpfT4ge3RleHR9IDwvYT5cclxuICApXHJcbn1cclxuXHJcblxyXG4vKmZ1bmN0aW9uIEhQZ29Ub1BhZ2VBbmRPcGVuVGFiKHtpZCwgdGV4dCwgcGF0aH06e2lkOiBzdHJpbmcsIHRleHQ6IHN0cmluZywgcGF0aDogc3RyaW5nfSl7XHJcbiAgY29uc3Qge2dvVG9QYWdlc0FuZE9wZW5UYWJ9ID0gdXNlTmF2aWdhdGlvbigpOyBcclxuICByZXR1cm4oXHJcbiAgICA8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZXNBbmRPcGVuVGFiKGlkLCBwYXRoKX0+IHt0ZXh0fSA8L2E+XHJcbiAgKVxyXG59XHJcbmZ1bmN0aW9uIEhQZ29Ub1BhZ2VBbmRPcGVuVGFiQW5kU2Nyb2xsKHt0YWIsIHRleHQsIHBhdGgsIHNjcm9sbElkfTp7dGFiOiBzdHJpbmcsIHRleHQ6IHN0cmluZywgcGF0aDogc3RyaW5nLCBzY3JvbGxJZDogc3RyaW5nfSl7XHJcbiAgY29uc3Qge2dvVG9QYWdlV2l0aFRhYkFuZFNjcm9sbH0gPSB1c2VOYXZpZ2F0aW9uKCk7IFxyXG4gIHJldHVybihcclxuICAgIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlV2l0aFRhYkFuZFNjcm9sbCh7dGFiSWQ6IHRhYiwgcGF0aDogcGF0aCwgc2Nyb2xsVG9JZDogc2Nyb2xsSWR9KX0+IHt0ZXh0fSA8L2E+XHJcbiAgKVxyXG59Ki9cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgVGltZWxpbmVEYXRlbnB1bmt0IHtcclxuICB0aXRsZT86IHN0cmluZzsgLyogUHJvZi4gLCBEci4sIC4uLiAqL1xyXG4gIHZvcm5hbWU6IHN0cmluZzsgXHJcbiAgbmFjaG5uYW1lOiBzdHJpbmc7IFxyXG4gIHBpY3R1cmV1cmw6IHN0cmluZzsgXHJcbiAgdGFnOiBTdGFrZWhvbGRlclRhZzsgXHJcbiAgaGVhZGluZzogc3RyaW5nOyBcclxuICBpbnRlcnZpZXd0YWJpZDogc3RyaW5nOyBcclxuICB0eXBlPzogVHlwZVRhZzsgLyogbnVyIGZhbGxzIGVzIGVpbiBtZXRhIHRhZyBpc3QgICovXHJcbiAgYWZmaWxpYXRpb24/OiBzdHJpbmc7IFxyXG4gIGpvYj86IHN0cmluZzsgXHJcblxyXG4gIGxhbmd1YWdlPzogTGFuZ3VhZ2U7IFxyXG4gIHF1b3RlPzogc3RyaW5nOyBcclxuICBxdW90ZVZvcm5hbWU/OiBzdHJpbmc7IC8qIFdlbm4gZGllIHF1b3RlIG5pY2h0IHZvbiBkZXIgUGVyc29uIGlzdCBcdTAwRkNiZXIgZGllIGRlciBUZXh0IGlzdCAgKi9cclxuICBxdW90ZU5hY2huYW1lPzogc3RyaW5nOyBcclxuICBhaW1vZmNvbnRhY3Q/OiBzdHJpbmcgfCBBcnJheTxzdHJpbmc+IHwgQXJyYXk8UmVhY3QuUmVhY3ROb2RlPjsgLyogU29iYWxkIFppdGllcnVuZ2VuIGRyaW4gc2luZCBvZGVyIExpbmtzIG11c3MgZXMgSFRNTCBDb2RlIHNlaW4sIGFuc29uc3RlbiBnZWhlbiBzdHJpbmdzICovXHJcbiAgaW5zaWdodHM/OiBzdHJpbmcgfCBBcnJheTxzdHJpbmc+IHwgQXJyYXk8UmVhY3QuUmVhY3ROb2RlPjsgLyogU29iYWxkIFppdGllcnVuZ2VuIGRyaW4gc2luZCBvZGVyIExpbmtzIG11c3MgZXMgSFRNTCBDb2RlIHNlaW4sIGFuc29uc3RlbiBnZWhlbiBzdHJpbmdzICovXHJcbiAgY2xhcmlmaWNhdGlvbj86IHN0cmluZyB8IEFycmF5PHN0cmluZz4gfCBBcnJheTxSZWFjdC5SZWFjdE5vZGU+OyAvKiBTb2JhbGQgWml0aWVydW5nZW4gZHJpbiBzaW5kIG9kZXIgTGlua3MgbXVzcyBlcyBIVE1MIENvZGUgc2VpbiwgYW5zb25zdGVuIGdlaGVuIHN0cmluZ3MgKi9cclxuICBpbXBsZW1lbnRhdGlvbj86IHN0cmluZyB8IEFycmF5PHN0cmluZz4gfCBBcnJheTxSZWFjdC5SZWFjdE5vZGU+OyAvKiBTb2JhbGQgWml0aWVydW5nZW4gZHJpbiBzaW5kIG9kZXIgTGlua3MgbXVzcyBlcyBIVE1MIENvZGUgc2VpbiwgYW5zb25zdGVuIGdlaGVuIHN0cmluZ3MgKi9cclxuICBwaWN0dXJldXJsX2ludGVydmlldz86IHN0cmluZzsgIC8qIFBpY3R1cmUgdGhhdCBnb2VzIGludG8gdGhlIHBhcmFncmFwaCBcIkluc2lnaHRzXCIgICovXHJcbiAgcGljdHVyZXVybF9haW0/OiBzdHJpbmc7ICAvKiBQaWN0dXJlIHRoYXQgZ29lcyBpbnRvIHRoZSBwYXJhZ3JhcGggXCJBaW0gb2YgY29udGFjdFwiICAqL1xyXG4gIHBpY3R1cmV1cmxfaW1wbGVtZW50YXRpb24/OiBzdHJpbmc7ICAvKiBQaWN0dXJlIHRoYXQgZ29lcyBpbnRvIHRoZSBwYXJhZ3JhcGggXCJJbXBsZW1lbnRhdGlvblwiICAqL1xyXG4gIG1vcmVfcGljdHVyZXM/OiBBcnJheTxzdHJpbmc+IDtcclxuICByZWZlcmVuY2VzPzogUmVhY3QuUmVhY3ROb2RlOyAgLyogTXVzcyBIVE1MIENvZGUgc2VpbiAtIExpbGlhbmEgZXJzdGVsbHQgZGVuIGF1cyBCaWIgZGF0ZWllbiAqL1xyXG4gIGludGVydmlldz86IFJlYWN0LlJlYWN0Tm9kZTsgXHJcbiAgdGV4dD86IHN0cmluZyB8IEFycmF5PHN0cmluZz4gfCBBcnJheTxSZWFjdC5SZWFjdE5vZGU+IHxSZWFjdC5SZWFjdE5vZGUgOyAvKiBFeHRyYSBUZXh0ICovXHJcbiAgZXhwZXJ0b24/OiBzdHJpbmc7ICBcclxuICBzdW1tYXJ5OiBzdHJpbmcgfCBBcnJheTxzdHJpbmc+IHwgQXJyYXk8UmVhY3QuUmVhY3ROb2RlPjsgLyogU29iYWxkIFppdGllcnVuZ2VuIGRyaW4gc2luZCBvZGVyIExpbmtzIG11c3MgZXMgSFRNTCBDb2RlIHNlaW4sIGFuc29uc3RlbiBnZWhlbiBzdHJpbmdzICovIFxyXG4gIG1vbnRoczogc3RyaW5nLCBcclxufVxyXG5cclxudHlwZSBTdGFrZWhvbGRlclRhZyA9ICdJbmR1c3RyeScgfCAnQWNhZGVtaWEnIHwgJ1BhdGllbnQnIHwgJ01lZGljYWwgUHJvZmVzc2lvbmFsJyB8ICdNaWxlc3RvbmUnIHwgJ0VkdWNhdGlvbid8ICdPdXRyZWFjaCd8ICdPdGhlcic7IFxyXG50eXBlIFR5cGVUYWcgPSAnbWV0YScgfCAna2F5YScgOyBcclxudHlwZSBMYW5ndWFnZSA9ICdlbicgfCAnZGUnOyBcclxuXHJcbiBcclxuXHJcbmNvbnN0IHBpY3M6IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH0gPSB7XHJcbiAgcGxhY2Vob2xkZXI6IFwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGxhY2Vob2xkZXJzL3BsYWNlaGlsZGVycGVyc29uLmpwZWdcIixcclxuICBtYXg6IFwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2hwL2hwLW1heC1wb3J0cmFpdC5qcGdcIixcclxuICBrcmlzdGlhbjogXCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvaHAva3Jpc3RpYW4taW50ZXJ2aWV3LndlYnBcIixcclxuICBvbGFyaXU6IFwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2hwL29sYXJpdS1jcmlzdGlhbi5qcGdcIixcclxuICB3ZXN0aG9mZjogXCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvaHAvaHAta2F0cmluLXBvcnRyYWl0LmpwZ1wiLFxyXG4gIG1hdHRpanM6IFwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2hwL21hdHRpanMuanBnXCIsXHJcbiAganVsaWE6IFwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2hwL2p1bGlhLmpwZ1wiLFxyXG4gIGtvbG9ua286IFwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2hwL2tvbG9ua28tbmV1LmpwZ1wiLFxyXG4gIHN2ZW5qYTpcImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9ocC9zdmVuamEtdmlua2Uud2VicFwiLFxyXG4gIGJlcmVuczogXCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvaHAvYmVyZW5zLmpwZ1wiLFxyXG4gIGRyYWVnZXI6IFwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2hwL29saXZlci1kcmFlZ2VyLXBhdGNoLWNsYW1wLmpwZWdcIixcclxuICB3aW5rZWxqYW5uOiBcImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9ocC9ybmhhbGUtd2lua2VsamFubi5qcGdcIixcclxuICBrdWVobmVsOiBcImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9ocC9ocC1waGlsaXBway1obmVsLmpwZWcgXCIsXHJcbiAgd2lzY2htZXllcjogXCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvaHAvd2lzY2htZXllci1lcmhhcmQud2VicFwiLFxyXG4gIG5pY29sZTogXCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvaHAvaHAtZnJpZWRsZWluLW5pY29sZS5qcGdcIixcclxuICBqb3NodWE6IFwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2hwL2pvc2h1YS5qcGdcIixcclxuICBoYW1tZXI6IFwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2hwL2hwLWhhbW1lci53ZWJwXCIsXHJcbiAgam9oYW5uZnVua2U6IFwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2hwL2hwLW1pY2hhZWxqb2hhbm5mdW5rZS53ZWJwXCIsXHJcbiAga1x1MDBGQ2huZWw6IFwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2hwL2hwLXBoaWxpcHBrLWhuZWwuanBlZyBcIixcclxuICBtb29ybGFjaDogXCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9kZWxpdmVyeS9tb29ybGFjaC53ZWJwIFwiLFxyXG4gIGNvcmRlbjogXCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9kZWxpdmVyeS9jb3JkZW4taHAud2VicFwiLFxyXG4gIG1hcmNvOiBcIiBodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvaHAvbWFyY28tcmF1a2ljLndlYnAgXCIsXHJcbiAgd2ViZXI6IFwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvZGVsaXZlcnkvd2ViZXIud2VicFwiLFxyXG4gIHpveWE6XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvaHAvem95YS1pZ25hdG92YS53ZWJwXCIsXHJcbiAga2FpaGFtbWVyOlwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2hwL2ludGVyd2lldi1rYWkuanBlZ1wiLCBcclxuICBuaWxzaGVmZTpcImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9ocC9uaWxzaGVmZS1ocC53ZWJwXCIsXHJcbiAgZ3hwZXhwZXJ0OlwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2hwL2d4cGV4cGVydC53ZWJwXCIsXHJcbiAgZ3hwY291cnNlOlwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2hwL2theWFneHBleHBlcnQud2VicFwiLFxyXG4gIGxpbmtcdTAwRjZwaW5nOlwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2hwL2xpdTIwMjQtcnVuZC53ZWJwXCIsXHJcbiAgYmlvYmFuazpcImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9ocC9iaW9iYW5rLndlYnBcIixcclxuICBiZXRoZWw6IFwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2hwL2xvZ28tZXZhbmdlbGlzY2hlcy1rbGluaWt1bS1iZXRoZWwud2VicFwiLFxyXG4gIHNhaXRvOlwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2hwL2hwLW1ha290by1zYWl0by5qcGdcIixcclxuICBwaHlzaWs6XCIgaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvZGVsaXZlcnkvaHAtdW5pLWxvZ28ud2VicFwiLFxyXG4gIGhhbm5vdmVybWVzc2U6IFwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2hwL2hhbm5vdmVyLW1lc3NlLXN2Zy53ZWJwXCIsXHJcbiAgZnJhbmtmdXJ0bWVzc2U6IFwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2hwL2FjaGVtYS53ZWJwXCIsXHJcbiAgZGF2aWQ6XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvaHAvbGl1LXRhbGsud2VicFwiLFxyXG4gIHRldXRvOiBcImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9lZGNhdGlvbi1hbmQtb3V0cmVhY2gvdGV1dG9ydWZ0LWV4cGVybWluZXQuanBlZ1wiLFxyXG4gIG1pbnQ6IFwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2hwL21pbnRzb21tZXJsb2dvLnBuZ1wiLFxyXG4gIHNjaHVlbGVyOiBcImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9lZGNhdGlvbi1hbmQtb3V0cmVhY2gvc2NoaWVsZXJha2FkZW1pZS1saXNhLWdydXBwZS5qcGdcIixcclxuICBtdWtvbW92ZTpcImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9mb3Itd2lraS10ZXh0cy9wby1tdWtvbW92ZS93aXItcGxha2F0LW11a29tb3ZlLmpwZWdcIixcclxuICBoYWthbjpcImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9ocC9oYWthbi53ZWJwXCIsXHJcbiAgc3RlbWNlbGw6IFwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2hwL3N0ZW1jZWxscXVhZHJhdC53ZWJwXCIsXHJcbiAgbXVrb2Rpbm86IFwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2hwL211a29kaW5vLndlYnBcIixcclxuICBidWlsZGluZzogXCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvaHAvYnVpbGRpbmd0aGV0ZWFtLndlYnBcIixcclxuICBpZGVhczogXCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvaHAvcGl0Y2hpbmdpZGVhcy53ZWJwXCIsXHJcbiAgbGFic3VwcGx5OiBcImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9ocC9sYWJzdXBwbHktaW5mby53ZWJwXCIsXHJcbiAgaGFtYnVyZzogXCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvaHAvZ3J1cHBlbmJpbGQtaGFtYnVyZy53ZWJwXCIsXHJcbiAgc3JpcmFtOiBcImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9zcmlyYW0uc3ZnXCIsXHJcbiAgbG9nbzogXCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9sb2dvcy10ZWFtL3ByZWN5c2Utbm8tc2xvZ2FuLnBuZ1wiLFxyXG4gIGJyYXNjaDogXCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvaHAvYnJhc2NoLndlYnBcIlxyXG4gIFxyXG59O1xyXG5cclxuLyoge1xyXG4gICAgdm9ybmFtZTogXCJcIixcclxuICAgIG5hY2hubmFtZTogXCJcIiwgIFxyXG4gICAgcGljdHVyZXVybDogcGljc1sncGxhY2Vob2xkZXInXSxcclxuICAgIHRhZzogXCJcIixcclxuICAgIGhlYWRpbmc6IFwiXCIsXHJcbiAgICBpbnRlcnZpZXd0YWJpZDogXCJcIixcclxuXHJcbiAgICBsYW5ndWFnZTogXCJcIixcclxuICAgIHF1b3RlOiBcIlwiLFxyXG4gICAgYWltb2Zjb250YWN0OiBcIlwiLFxyXG4gICAgaW5zaWdodHM6IFwiXCIsXHJcbiAgICBpbXBsZW1lbnRhdGlvbjogXCJcIixcclxuICB9ICovXHJcblxyXG5cclxuICAgIC8qIFdJQ0hUSUchXHJcbiAgICAgIEZlaGxlbmRlIEluZm9zIGVpbmZhY2ggbGVlciBsYXNzZW4gdW5kIGtlaW5lIER1bW15LVRleHRlIGVpbmZcdTAwRkNnZW4hIFxyXG4gICAgKi9cclxuXHJcbmV4cG9ydCBjb25zdCB0aW1lbGluZWRhdGE6IEFycmF5PFRpbWVsaW5lRGF0ZW5wdW5rdD4gID0gW1xyXG4gIHtcclxuICAgIHZvcm5hbWU6IFwiQnVpbGRpbmcgdGhlIHRlYW1cIixcclxuICAgIG5hY2hubmFtZTogXCJcIixcclxuICAgIHBpY3R1cmV1cmw6IHBpY3NbJ2J1aWxkaW5nJ10sXHJcbiAgICBqb2I6IFwiVGVhbSBpR0VNXCIsXHJcbiAgICBhZmZpbGlhdGlvbjogXCJCaWVsZmVsZCBDZUJpVGVjIDIwMjRcIixcclxuICAgIHRhZzogXCJNaWxlc3RvbmVcIixcclxuICAgIGhlYWRpbmc6IFwiRGV2ZWxvcG1lbnQgb2YgYSBtdWx0aWRpc2NpcGxpbmFyeSB0ZWFtIHN0cnVjdHVyZVwiLFxyXG4gICAgaW50ZXJ2aWV3dGFiaWQ6IFwicmVjcnVpdGluZ1wiLFxyXG5cclxuICAgIHF1b3RlTmFjaG5hbWU6XCJaaW1tZXJtYW5uLCBJbnN0cnVjdG9yXCIsXHJcbiAgICBxdW90ZVZvcm5hbWU6XCJTaW5hblwiLFxyXG4gICAgcXVvdGU6IFwiTXkgZmlyc3QgY2hhbGxlbmdlIHdhcyBzZWxlY3RpbmcgdGhlIGlHRU0gdGVhbSAyMDI0LiBJIGZvY3VzZWQgb24gY2hvb3NpbmcgY2FuZGlkYXRlcyB3aXRoIHN0cm9uZyB0ZWNobmljYWwgc2tpbGxzIGFuZCB0aGUgYWJpbGl0eSB0byB3b3JrIHdlbGwgaW4gYW4gaW50ZXJkaXNjaXBsaW5hcnkgc2V0dGluZywgYWltaW5nIHRvIGNyZWF0ZSBhIGRpdmVyc2UgdGVhbSB3aXRoIGNvbXBsZW1lbnRhcnkgc3RyZW5ndGhzLlwiLFxyXG4gICAgdHlwZTogXCJtZXRhXCIsXHJcbiAgICBzdW1tYXJ5OiBbPHA+XHJcbiAgICAgIEJ1aWxkaW5nIGEgc3VjY2Vzc2Z1bCA8T3VyTGluayBwYXRoPSd0ZWFtJ3RleHQ9XCJpbnRlcmRpc2NpcGxpbmFyeSB0ZWFtXCIvPiwgbGlrZSB0aGUgb25lIGludm9sdmVkIGluIHRoaXMgaUdFTSBwcm9qZWN0LCByZXF1aXJlcyBjYXJlZnVsIGNvb3JkaW5hdGlvbiBhbmQgYSBzaGFyZWQgdmlzaW9uIGZvciBhZGRyZXNzaW5nIGNvbXBsZXggc2NpZW50aWZpYyBjaGFsbGVuZ2VzLiBUaGlzIHRlYW0gaXMgYW4gZXhjZWxsZW50IGV4YW1wbGUgb2YgaG93IGJyaW5naW5nIHRvZ2V0aGVyIGluZGl2aWR1YWxzIGZyb20gdmFyaW91cyBhY2FkZW1pYyBiYWNrZ3JvdW5kcyBmb3N0ZXJzIGlubm92YXRpb24gYW5kIGZhY2lsaXRhdGVzIHByb2JsZW0tc29sdmluZyBpbiB0aGUgZmllbGRzIG9mIHN5bnRoZXRpYyBiaW9sb2d5IGFuZCBiaW90ZWNobm9sb2d5LjwvcD4sXHJcbiAgICAgIDxwPjxiPlRoZSB0ZWFtIG1lbWJlcnMgY29tZSBmcm9tIGRpdmVyc2UgZmllbGRzIG9mIHN0dWR5LCBpbmNsdWRpbmcgTW9sZWN1bGFyIEJpb3RlY2hub2xvZ3ksIEJpb2luZm9ybWF0aWNzIGFuZCBnZW5vbWUgcmVzZWFyY2gsIEJpb2NoZW1pc3RyeSwgTW9sZWN1bGFyIENlbGwgQmlvbG9neSwgR2Vub21lLUJhc2VkIFN5c3RlbSBCaW9sb2d5LCBJbnRlcmRpc2NpcGxpbmFyeSBCaW9tZWRpY2luZSwgYW5kIGV2ZW4gTWVkaWEgUHJvZHVjdGlvbi48L2I+PC9wPiwgPHA+VGhpcyB2YXJpZXR5IG9mIGV4cGVydGlzZSBhbGxvd3MgdGhlbSB0byBhcHByb2FjaCBwcm9ibGVtcyBmcm9tIG11bHRpcGxlIHBlcnNwZWN0aXZlcywgZW5zdXJpbmcgdGhhdCB0aGUgcHJvamVjdCBpcyB3ZWxsLXJvdW5kZWQgYW5kIGNhcGFibGUgb2YgYWRkcmVzc2luZyBib3RoIFxyXG4gICAgICBleHBlcmltZW50YWwgYW5kIGNvbXB1dGF0aW9uYWwgY2hhbGxlbmdlcy4gRm9yIGluc3RhbmNlLCB3aGlsZSB0aGUgYmlvdGVjaG5vbG9naXN0cyBhbmQgbW9sZWN1bGFyIGJpb2xvZ2lzdHMgZm9jdXMgb24gZGVzaWduaW5nIGFuZCBjb25kdWN0aW5nIGxhYiBleHBlcmltZW50cywgdGhlIGJpb2luZm9ybWF0aWNpYW5zIGNvbnRyaWJ1dGUgY3J1Y2lhbCBpbnNpZ2h0cyBmb3IgZGF0YSBhbmFseXNpcyBhbmQgZ2Vub21lIHNlcXVlbmNpbmcuIFRoZSBpbmNsdXNpb24gb2YgYSBtZWRpYSBwcm9kdWN0aW9uIGV4cGVydCBhZGRzIGFub3RoZXIgbGF5ZXIgdG8gdGhlIHRlYW1cdTIwMTlzIGNhcGFiaWxpdGllcywgZW5zdXJpbmcgdGhhdCBzY2llbmNlIGNvbW11bmljYXRpb24gYW5kIFxyXG4gICAgICBwcm9qZWN0IGRvY3VtZW50YXRpb24gYXJlIGhhbmRsZWQgcHJvZmVzc2lvbmFsbHksIHdoaWNoIGlzIHBhcnRpY3VsYXJseSBpbXBvcnRhbnQgZm9yIHByZXNlbnRpbmcgdGhlaXIgd29yayBhdCBjb25mZXJlbmNlcyBhbmQgY29tcGV0aXRpb25zLlxyXG4gICAgICBUaGUgbXVsdGlkaXNjaXBsaW5hcnkgc3RydWN0dXJlIG9mIHRoaXMgdGVhbSBldm9sdmVkIG5hdHVyYWxseSBhcyB0aGV5IGlkZW50aWZpZWQgdGhlIHByb2plY3RcdTIwMTlzIG5lZWRzIGFuZCByZWNydWl0ZWQgbWVtYmVycyB3aG8gY291bGQgZmlsbCBzcGVjaWZpYyByb2xlcy4gT3ZlciB0aW1lLCB0aGlzIG11bHRpZGlzY2lwbGluYXJ5IHN0cnVjdHVyZSBoYXMgY29udGludWVkIHRvIGRldmVsb3AgYXMgdGhlIHRlYW1cdTIwMTlzIHByb2plY3QgZXZvbHZlZC4gUm9sZXMgYmVjYW1lIG1vcmUgZGVmaW5lZCBhcyB0ZWFtIG1lbWJlcnMgdG9vayBvbiBzcGVjaWZpYyByZXNwb25zaWJpbGl0aWVzLCB3aGV0aGVyIGl0IHdhcyByZWZpbmluZyBwcmltZSBlZGl0aW5nIHN5c3RlbXMgb3IgY3JhZnRpbmcgXHJcbiAgICAgIGNvbW11bmljYXRpb24gc3RyYXRlZ2llcyBmb3IgaUdFTS4gVGhlIHJhbmdlIG9mIGV4cGVyaWVuY2UgYWNyb3NzIHRoZSB0ZWFtLCBmcm9tIHlvdW5nZXIgc3R1ZGVudHMgbGlrZSBNYWx0ZSBMZW5nZXIgaW4gdGhlIGVhcmx5IHN0YWdlcyBvZiB0aGVpciBhY2FkZW1pYyBjYXJlZXJzIHRvIG1vcmUgYWR2YW5jZWQgc3R1ZGVudHMgaW4gbGF0ZXIgc2VtZXN0ZXJzLCBsaWtlIExpc2EgV2llc25lciwgYWxsb3dzIGZvciBhIGJsZW5kIG9mIGZyZXNoIHBlcnNwZWN0aXZlcyBhbmQgc2Vhc29uZWQgZXhwZXJ0aXNlLiBUaGlzIGJhbGFuY2UgaGVscHMgZW5zdXJlIGJvdGggdGhlIGltbWVkaWF0ZSBzdWNjZXNzIG9mIHRoZSBwcm9qZWN0IGFuZCB0aGUgY29udGludWl0eSBvZiBpdHMgcHJvZ3Jlc3MgaW4gdGhlIGZ1dHVyZS5cclxuICAgICAgSW4gc3VtbWFyeSwgdGhpcyBpbnRlcmRpc2NpcGxpbmFyeSBpR0VNIHRlYW0gZGVtb25zdHJhdGVzIGhvdyBhIGRpdmVyc2UgZ3JvdXAgb2YgaW5kaXZpZHVhbHMgd2l0aCBzcGVjaWFsaXplZCBza2lsbHMgY2FuIGNvbWUgdG9nZXRoZXIgdG8gdGFja2xlIGEgY29tcGxleCBiaW9sb2dpY2FsIHByb2plY3QuIEJ5IGNvbWJpbmluZyB0aGVpciBleHBlcnRpc2UgdGhlIHRlYW0gaXMgYWJsZSB0byBleGVjdXRlIHRoZWlyIHByb2plY3QgaG9saXN0aWNhbGx5LCBlbnN1cmluZyB0aGF0IGVhY2ggYXNwZWN0LCBmcm9tIGV4cGVyaW1lbnRhbCBkZXNpZ24gdG8gcHVibGljIG91dHJlYWNoLCBpcyBoYW5kbGVkIHdpdGggcHJlY2lzaW9uIGFuZCBjcmVhdGl2aXR5LjwvcD5dLFxyXG4gICAgbW9udGhzOiBcIkZlYnJ1YXJ5XCJcclxuICB9LFxyXG4gIHtcclxuICAgIHZvcm5hbWU6IFwiUGl0Y2hpbmcgaWRlYXNcIixcclxuICAgIG5hY2hubmFtZTogXCJcIixcclxuICAgIHBpY3R1cmV1cmw6IHBpY3NbJ2lkZWFzJ10sXHJcbiAgICBqb2I6IFwiVGVhbSBpR0VNXCIsXHJcbiAgICBhZmZpbGlhdGlvbjogXCJCaWVsZmVsZCBDZUJpVGVjIDIwMjRcIixcclxuICAgIHRhZzogXCJNaWxlc3RvbmVcIixcclxuICAgIGhlYWRpbmc6IFwiR2V0dGluZyBBY3F1YWludGVkIHdpdGggQ3lzdGljIEZpYnJvc2lzXCIsXHJcbiAgICBpbnRlcnZpZXd0YWJpZDogXCJmaXJzdHByZXNpXCIsXHJcblxyXG4gICAgcXVvdGVOYWNobmFtZTogXCJLXHUwMEY2aGxlciwgVGVhbW1lbWJlclwiLFxyXG4gICAgcXVvdGVWb3JuYW1lOiBcIlZlcmFcIixcclxuICAgIHF1b3RlOiBcIkZpcnN0bHksIHdlIGRpc2N1c3NlZCB2YXJpb3VzIHByb2plY3QgaWRlYXMsIGluY2x1ZGluZyB0aGUgdXNlIG9mIG1hZ25ldGljIG1pY3Jvc3dpbW1lcnMgZm9yIHRhcmdldGVkIG1lZGljYWwgYXBwbGljYXRpb25zLCBnZW5lIGVkaXRpbmcgYXBwcm9hY2hlcyBmb3IgIEN5c3RpYyBGaWJyb3NpcywgdHJlYXRtZW50cyBmb3IgbXVzY3VsYXIgZHlzdHJvcGh5IGFuZCBjb21iYXRpbmcgY3lhbm9iYWN0ZXJpYSB3aXRoIGFsZ2FlLlwiLFxyXG4gICAgdHlwZTogXCJtZXRhXCIsXHJcbiAgICBzdW1tYXJ5OiBbPHA+RHVyaW5nIG91ciBpbml0aWFsIGRpc2N1c3Npb25zIGFib3V0IHByb2plY3QgaWRlYXMsIHRoZSB0ZWFtIGV4cGxvcmVkIHNldmVyYWwgaW5ub3ZhdGl2ZSBjb25jZXB0cyBiZWZvcmUgaG9uaW5nIGluIG9uIDxiPiBDeXN0aWMgRmlicm9zaXM8L2I+LiBFYWNoIHByb2plY3QgcHJlc2VudGVkIHVuaXF1ZSBzY2llbnRpZmljIGNoYWxsZW5nZXMgYW5kIHBvdGVudGlhbCBpbXBhY3RzLjwvcD4sXHJcbiAgICAgIDxwPk9uZSBpZGVhIGludm9sdmVkIHRoZSBkZXZlbG9wbWVudCBvZiA8Yj5tYWduZXRpYyBtaWNyb3N3aW1tZXJzPC9iPiBkZXNpZ25lZCBmb3IgdGFyZ2V0ZWQgY2FuY2VyIHRoZXJhcHksIHBhcnRpY3VsYXJseSBmb3Igb3ZhcmlhbiBjYW5jZXIuIFRoZSBwcm9wb3NhbCBhaW1lZCB0byBvdmVyY29tZSB0aGUgbGltaXRhdGlvbnMgb2YgdHJhZGl0aW9uYWwgdHJlYXRtZW50cywgc3VjaCBhcyByYWRpb3RoZXJhcHkgYW5kIGNpc3BsYXRpbiwgd2hpY2ggb2Z0ZW4gZGFtYWdlIGhlYWx0aHkgY2VsbHMgYW5kIHJlc3VsdCBpbiBudW1lcm91cyBzaWRlIGVmZmVjdHMuIFRoZSBtaWNyb3N3aW1tZXJzIHdvdWxkIGJlIGJpb2RlZ3JhZGFibGUgYWxnYWUtYmFzZWQgdmVoaWNsZXMsIG1hZ25ldGljYWxseSBndWlkZWQgdG8gZGVsaXZlciBkcnVncyBkaXJlY3RseSB0byBjYW5jZXJvdXMgY2VsbHMgd2hpbGUgbWluaW1pemluZyBkYW1hZ2UgdG8gc3Vycm91bmRpbmcgdGlzc3VlLiBUaGlzIGFwcHJvYWNoIG9mZmVyZWQgYSBub3ZlbCwgbm9uLWludmFzaXZlIHRhcmdldGluZyBtZWNoYW5pc20sIGxldmVyYWdpbmcgdGhlIHBvdGVudGlhbCBvZiBtYWduZXRpYyBmaWVsZHMgdG8gZGlyZWN0IHRoZSBzd2ltbWVycyBwcmVjaXNlbHkgdG8gdGhlIGFmZmVjdGVkIGFyZWFzLjwvcD4sXHJcbiAgICAgIDxwPkFub3RoZXIgY29tcGVsbGluZyBwcm9qZWN0IHdhcyBmb2N1c2VkIG9uIDxiPmR1Y2hlbm5lIG11c2N1bGFyIGR5c3Ryb3BoeSAoRE1EKTwvYj4uIFRoaXMgZ2VuZXRpYyBkaXNvcmRlciBsZWFkcyB0byBtdXNjbGUgZGVnZW5lcmF0aW9uIGFzIG11c2NsZSB0aXNzdWUgaXMgZ3JhZHVhbGx5IHJlcGxhY2VkIGJ5IGZpYnJvdGljIHRpc3N1ZS4gVGhlIHRlYW0gcHJvcG9zZWQgc2V2ZXJhbCB0cmVhdG1lbnQgYXBwcm9hY2hlcywgaW5jbHVkaW5nIGV4b24gc2tpcHBpbmcgYW5kIGdlbmUgdGhlcmFweSB1c2luZyB2aXJhbCB2ZWN0b3JzLiBLZXkgc3RyYXRlZ2llcyBpbmNsdWRlZCBlbmhhbmNpbmcgQ2FzIHByb3RlaW4gZWZmaWNpZW5jeSB0aHJvdWdoIGVuZ2luZWVyaW5nLCB1c2luZyBsaXBvc29tYWwgdmVjdG9ycyBmb3IgZ2VuZSBkZWxpdmVyeSwgYW5kIGNvbWJpbmluZyBDUklTUFIgdGVjaG5vbG9neSB3aXRoIGludGVncmFzZSBmdXNpb24gcHJvdGVpbnMuIFRoZSB0ZWFtIGFsc28gZGlzY3Vzc2VkIHByZXZpb3VzIGlHRU0gcHJvamVjdHMgdGhhdCBoYWQgZXhwbG9yZWQgc2ltaWxhciBtZXRob2RvbG9naWVzLCBlbXBoYXNpemluZyB0aGUgbmVlZCBmb3Igc3BlY2lmaWNpdHkgYW5kIGVmZmljYWN5IGluIGRlbGl2ZXJpbmcgdGhlcmFwZXV0aWMgZ2VuZXMuPC9wPixcclxuICAgICAgPHA+V2UgYWxzbyBjb25zaWRlcmVkIGEgcHJvamVjdCBhaW1lZCBhdCBwcmV2ZW50aW5nIDxiPmN5YW5vYmFjdGVyaWEgYmxvb21zPC9iPiB1c2luZyBwZXB0aWRlcyBvciBwcm90ZWlucyBkZXJpdmVkIGZyb20gYWxnYWUuIEN5YW5vYmFjdGVyaWEgY2FuIHByb2R1Y2UgaGFybWZ1bCB0b3hpbnMgdGhhdCBkZWdyYWRlIHdhdGVyIHF1YWxpdHkgYW5kIHRocmVhdGVuIGVjb3N5c3RlbXMuIFRoZSBwcm9wb3NlZCBhcHByb2FjaCBmb2N1c2VkIG9uIHV0aWxpemluZyBuYXR1cmFsIGFsZ2FlIHRvIGRldmVsb3AgbWVjaGFuaXNtcyB0aGF0IGluaGliaXQgdGhlIGdyb3d0aCBvZiBoYXJtZnVsIGN5YW5vYmFjdGVyaWEgd2l0aG91dCBkaXNydXB0aW5nIHRoZSBlY29zeXN0ZW0uIFRoaXMgcHJvamVjdCBlbXBoYXNpemVkIGNvbnNlcnZhdGlvbiBhbmQgYmlvZGl2ZXJzaXR5IHdoaWxlIGFkZHJlc3NpbmcgYSBzaWduaWZpY2FudCBlbnZpcm9ubWVudGFsIGlzc3VlIGxpbmtlZCB0byB0aGUgY2xpbWF0ZSBjcmlzaXMuPC9wPixcclxuICAgICAgPHA+VGhyb3VnaG91dCBvdXIgZGlzY3Vzc2lvbnMsIHdlIHJlY29nbml6ZWQgdGhhdCB3aGlsZSBlYWNoIHByb2plY3QgaGFkIG1lcml0LCB0aGUgPGI+IEN5c3RpYyBGaWJyb3NpczwvYj4gaW5pdGlhdGl2ZSBvZmZlcmVkIHRoZSBtb3N0IHByb21pc2UgZm9yIGEgdGFyZ2V0ZWQgYXBwcm9hY2ggdG8gYSB3ZWxsLWRlZmluZWQgcHJvYmxlbS4gQ0YsIGFmZmVjdGluZyBhIHN1YnN0YW50aWFsIG51bWJlciBvZiBpbmRpdmlkdWFscywgcHJvdmlkZWQgYSBjbGVhciBvcHBvcnR1bml0eSBmb3IgbWVhbmluZ2Z1bCBpbXBhY3QgdGhyb3VnaCBnZW5lIHRoZXJhcHkuIFRoZSBpbnNpZ2h0cyBnYWluZWQgZnJvbSBvdXIgZXhhbWluYXRpb24gb2Ygb3RoZXIgcHJvamVjdHMgaW5mb3JtZWQgb3VyIGFwcHJvYWNoIHRvIENGLCBhbGxvd2luZyB1cyB0byBpbnRlZ3JhdGUga25vd2xlZGdlIGZyb20gZGl2ZXJzZSBmaWVsZHMgYW5kIG1ldGhvZG9sb2dpZXMsIHVsdGltYXRlbHkgc2hhcGluZyBhIGNvbXByZWhlbnNpdmUgYW5kIGlubm92YXRpdmUgcHJvamVjdCBkaXJlY3Rpb24uPC9wPlxyXG4gICAgICBdLFxyXG4gICAgbW9udGhzOiBcIk1hcmNoXCJcclxuICB9LFxyXG4gIHtcclxuICAgIHZvcm5hbWU6IFwiSWRlYXRpb24gaW4gSGFtYnVyZ1wiLFxyXG4gICAgbmFjaG5uYW1lOiBcIlwiLFxyXG4gICAgcGljdHVyZXVybDogcGljc1snaGFtYnVyZyddLFxyXG4gICAgam9iOiBcIlRlYW0gaUdFTVwiLFxyXG4gICAgYWZmaWxpYXRpb246IFwiQmllbGZlbGQgQ2VCaVRlYyAyMDI0XCIsXHJcbiAgICB0YWc6IFwiTWlsZXN0b25lXCIsXHJcbiAgICBoZWFkaW5nOiBcIkJyYWluc3Rvcm1pbmcgYW5kIHNlbGVjdGlvbiBvZiBpZGVhcyBhbmQgY29uY2VwdHMgYXQgdGVhbSB3ZWVrZW5kIGluIEhhbWJ1cmdcIixcclxuICAgIGludGVydmlld3RhYmlkOiBcImlkZWFzXCIsXHJcblxyXG4gICAgcXVvdGU6IFwiVGhhbmtzIHRvIG91ciBpbi1kZXB0aCByZXNlYXJjaCBwaGFzZSwgd2Ugd2VyZSBhYmxlIHRvIGdhdGhlciBtYW55IGluc2lnaHRmdWwgaWRlYXMuIFRoZSB3b3Jrc2hvcCB3YXMgaGlnaGx5IHByb2R1Y3RpdmUgYW5kIG1vdmVkIHVzIHNpZ25pZmljYW50bHkgZm9yd2FyZCwgYWxsb3dpbmcgdXMgdG8gZ2FpbiBhIGNsZWFyIHZpc2lvbiBvZiBvdXIgcHJvamVjdCBieSB0aGUgZW5kIG9mIHRoZSBkYXkuXCIsXHJcbiAgICBxdW90ZVZvcm5hbWU6XCJLYXRobGVlblwiLFxyXG4gICAgcXVvdGVOYWNobmFtZTogXCJTdXNhdCwgVGVhbW1lbWJlclwiLFxyXG4gICAgc3VtbWFyeTogWzxwPkZyb20gQXByaWwgNXRoIHRvIDd0aCwgd2UgZW1iYXJrZWQgb24gYW4gZW5yaWNoaW5nIGV4Y3Vyc2lvbiBkZWRpY2F0ZWQgdG8gcHJvamVjdCB3b3JrIGFuZCB0ZWFtIGJ1aWxkaW5nLiBPdXIgcHJpbWFyeSBnb2FsIHdhcyB0byBlbmdhZ2UgaW4gbWVhbmluZ2Z1bCBicmFpbnN0b3JtaW5nIHNlc3Npb25zIGZvY3VzZWQgb24gb3VyIGlHRU0gcHJvamVjdCBhbmQgdG8gZXhwbG9yZSBodW1hbiBwcmFjdGljZXMgdGhvcm91Z2hseS4gXHJcbiAgICAgIFdlIGtpY2tlZCBvZmYgb3VyIHdlZWtlbmQgd2l0aCBhIHNlcmllcyBvZiBkaXNjdXNzaW9ucyB0aGF0IGVtcGhhc2l6ZWQgdGhlIGltcG9ydGFuY2Ugb2YgY29uc2lkZXJpbmcgdGhlIGltcGFjdCBvZiBvdXIgd29yayBvbiB0aGUgd29ybGQuIDwvcD4sXHJcbiAgICAgIDxwPlRocm91Z2hvdXQgb3VyIHRpbWUgaW4gSGFtYnVyZywgd2UgZGVkaWNhdGVkIHNldmVyYWwgaG91cnMgdG8gcmVhZGluZyByZWxldmFudCBsaXRlcmF0dXJlIGFuZCByZXNlYXJjaCBwYXBlcnMsIGJvdGggaW5kaXZpZHVhbGx5IGFuZCBpbiBncm91cHMuIFRoaXMgY29sbGFib3JhdGl2ZSBlZmZvcnQgYWxsb3dlZCB1cyB0byBkZWVwZW4gb3VyIHVuZGVyc3RhbmRpbmcgb2YgZXhpc3RpbmcgcHJvamVjdHMgYW5kIGlubm92YXRpb25zIGluIG91ciBmaWVsZC4gV2UgY3JpdGljYWxseSBhbmFseXplZCBwcmV2aW91cyBpR0VNIHByb2plY3RzIGFuZCBleHBsb3JlZCB3aG8gaGFkIHdvcmtlZCBvbiBzaW1pbGFyIGlkZWFzLCB3aGljaCBoZWxwZWQgdXMgaWRlbnRpZnkgZ2FwcyBpbiB0aGUgcmVzZWFyY2ggYW5kIHBvdGVudGlhbCBhdmVudWVzIGZvciBvdXIgb3duIHByb2plY3QuXHJcbiAgICAgIE91ciBkaXNjdXNzaW9ucyBuYXR1cmFsbHkgZmxvd2VkIGludG8gYnJhaW5zdG9ybWluZyBzZXNzaW9ucyB3aGVyZSB3ZSByZWZsZWN0ZWQgb24gdGhlIGltcGFjdHMgd2Ugd2FudGVkIHRvIGFjaGlldmUuIFdlIGV4cGxvcmVkIGVzc2VudGlhbCBxdWVzdGlvbnM6IFdoYXQgZWZmZWN0cyBkbyB3ZSBhaW0gdG8gaGF2ZSBvbiBzb2NpZXR5PyBXaGF0IGFjdGl2aXRpZXMgY2FuIHdlIHBsYW4gdG8gZ2F0aGVyIGV2aWRlbmNlIGFib3V0IGhvdyBvdXIgd29yayB3aWxsIHJlc29uYXRlIHdpdGggdGhlIGNvbW11bml0eT8gSG93IGNhbiB3ZSBlZmZlY3RpdmVseSBlbmdhZ2Ugd2l0aCBzdGFrZWhvbGRlcnMgYW5kIHNoYXJlIG91ciBmaW5kaW5ncz88L3A+LFxyXG4gICAgICA8cD5JbiBhZGRpdGlvbiB0byBzdHJ1Y3R1cmVkIGJyYWluc3Rvcm1pbmcsIHdlIGV4Y2hhbmdlZCBpZGVhcyBpbmZvcm1hbGx5IGR1cmluZyBicmVha3MgYW5kIG1lYWxzLCBmb3N0ZXJpbmcgYSBjcmVhdGl2ZSBhdG1vc3BoZXJlLiBCeSB0aGUgZW5kIG9mIHRoZSB3ZWVrZW5kLCB3ZSBoYWQgbm90IG9ubHkgc3RyZW5ndGhlbmVkIG91ciB0ZWFtIGJvbmRzIGJ1dCBhbHNvIGNsYXJpZmllZCBvdXIgdmlzaW9uIGZvciB0aGUgcHJvamVjdCBhaGVhZC4gVGhlIGluc2lnaHRzIGdhaW5lZCBmcm9tIG91ciBkaXNjdXNzaW9ucyBhbmQgcmVhZGluZ3MgbGFpZCBhIHNvbGlkIGZvdW5kYXRpb24gZm9yIG91ciBmdXR1cmUgd29yaywgYWxsb3dpbmcgdXMgdG8gYXBwcm9hY2ggb3VyIHByb2plY3Qgd2l0aCByZW5ld2VkIGZvY3VzIGFuZCBwdXJwb3NlLiA8L3A+XSxcclxuICAgIGluc2lnaHRzOiBbPGRpdiBjbGFzc05hbWU9XCJyb3dcIj5cclxuICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj48aW1nIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9ocC90ZWFtYnVpbGRpbmctaGFtYnVyZy53ZWJwXCI+PC9pbWc+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPjxwPk91ciBmaXJzdCBldmVudCBpbiBIYW1idXJnIHdhcyBhIG1lZXRpbmcgd2l0aCB0aGUgSGFtYnVyZyBpR0VNIHRlYW0uIE92ZXJsb29raW5nIHRoZSBBbHN0ZXIgbGFrZSwgd2UgZXhjaGFuZ2VkIGlkZWFzIGFuZCBnb3QgdG8ga25vdyBlYWNoIG90aGVyLiBUaGUgY29sbGFib3JhdGlvbiB3aXRoIDxPdXJMaW5rIHBhdGg9J2NvbnRyaWJ1dGlvbid0YWJJZD0nY29udHJpYnV0aW9uJyBzY3JvbGxUb0lkPSdiZmgtZXVyb3BlYW4tbWVldHVwJyB0ZXh0PVwiQkZIXCIvPiB7LypLYXlhKi99IHdhcyBzdHJlbmd0aGVuZWQgYnkgdGhpcyBtZWV0aW5nIHdpdGggaUdFTSBIYW1idXJnLiBTdWRkZW5seSB3ZSB3ZXJlIHN1cnByaXNlZCBieSB0aGUgdHlwaWNhbCBIYW1idXJnIHdlYXRoZXIuIEhvd2V2ZXIsIHdlIGRpZCBub3QgbGV0IHRoaXMgc3BvaWwgb3VyIGdvb2QgbW9vZC4gSW4gc21hbGwgZ3JvdXBzIHdlIGV4cGxvcmVkIEhhbWJ1cmcgYW5kIGJyYXZlZCB0aGUgcmFpbi4gV2UgYWxzbyB2aXNpdGVkIHRoZSBVbml2ZXJzaXR5IG9mIEhhbWJ1cmcgYW5kIHNvY2lhbGlzZWQgYSBsb3QuPC9wPlxyXG4gICAgICA8YnIvPlxyXG4gICAgICA8cD5PbiBTYXR1cmRheSB3ZSBzdGFydGVkIHRoZSBtb3N0IGltcG9ydGFudCBwYXJ0IG9mIG91ciB0cmlwLiBPdXIgcHJvamVjdCEgVGhlIHdob2xlIHRlYW0gZ2F0aGVyZWQgb24gdGhlIHJvb2YgdGVycmFjZSBpbiB0aGUgYnJpZ2h0IHN1bnNoaW5lIGFuZCBleHRlbnNpdmUgcmVzZWFyY2ggYmVnYW4uIFdlIGhhZCBhbHJlYWR5IGNob3NlbiBhIGdlbmVyYWwgdG9waWMgaW4gQmllbGVmZWxkLCBidXQgbm93IHdlIGhhZCB0byBuYXJyb3cgaXQgZG93bi4gVG8gZG8gdGhpcywgd2UgZGlsaWdlbnRseSByZWFkIHZhcmlvdXMgcHVibGljYXRpb25zLCBtYWRlIG5vdGVzIGFuZCBleGNoYW5nZWQgaWRlYXMuICBMYXRlciwgdGhlIHRlYW0gbWV0IGFnYWluIG9uIHRoZSByb29mIHRlcnJhY2UgdG8gY29udGludWUgcmVzZWFyY2hpbmcgYW5kIGRpc2N1c3NpbmcuIFRoYW5rcyB0byBvdXIgaW4tZGVwdGggcmVzZWFyY2ggcGhhc2UsIHdlIHdlcmUgYWJsZSB0byBnYXRoZXIgbWFueSBpbnNpZ2h0ZnVsIGlkZWFzLiBUaGUgd29ya3Nob3Agd2FzIHZlcnkgcHJvZHVjdGl2ZSBhbmQgbW92ZWQgdXMgZm9yd2FyZCBzaWduaWZpY2FudGx5LCBhbGxvd2luZyB1cyB0byBoYXZlIGEgY2xlYXIgdmlzaW9uIG9mIG91ciBwcm9qZWN0IGJ5IHRoZSBlbmQgb2YgdGhlIGRheS4gV2Ugbm93IGhhdmUgYSBzdHJvbmcgZm91bmRhdGlvbiB0byBidWlsZCBvbiBhcyB3ZSBjb250aW51ZSB0byBkZXZlbG9wIHRoZSBjb25jZXB0LiBTbyBpdCB3YXMgYSBncmVhdCBzdWNjZXNzISBUaGlzIHdhcyBmb2xsb3dlZCBieSB0aGUgZXZlbmluZyBjb29raW5nIHNlc3Npb24gd2hlcmUgdGhlIHdob2xlIHRlYW0gd2FzIHRyZWF0ZWQgdG8gYSB2ZXJ5IHRhc3R5IDMtY291cnNlIG1lYWwuIFdlIGFyZSBhbHJlYWR5IGxvb2tpbmcgZm9yd2FyZCB0byBQYXJpcyBiZWNhdXNlIHdlIHdhbnQgdG8gY29vayB0b2dldGhlciBpbiB0aGUgZXZlbmluZyBhbmQgbWVldCBvdGhlciBpR0VNZXJzIGFzIHdlbGwgYXMgVGVhbSBIYW1idXJnISA8L3A+XHJcbiAgICAgIDxici8+XHJcbiAgICAgIDxwPlN1bmRheSBtb3JuaW5nIHN0YXJ0ZWQgYWdhaW4gd2l0aCBicmVha2Zhc3QgaW4gdGhlIGhvc3RlbC4gQWZ0ZXIgY2hlY2tpbmcgb3V0IHdlIHdhbGtlZCBpbiB0aGUgYnJpZ2h0IHN1bnNoaW5lIHRvIHRoZSBMYW5kdW5nc2JyXHUwMEZDY2tlbiwgYSBraW5kIG9mIHRvdXJpc3QgbGFuZG1hcmsgb2YgSGFtYnVyZy4gV2UgYXRlIGRvbnV0cyBhbmQgaGFkIGEgZmFudGFzdGljIHZpZXcgb2YgdGhlIEVsYmUsIEhhbWJ1cmcncyBtb3N0IGZhbW91cyByaXZlci4gV2Ugd2FudGVkIHRvIHVzZSB0aGUgbGFzdCBkYXkgdG8gc2VlIGEgYml0IG1vcmUgb2YgSGFtYnVyZyBhcyBhIHRlYW0uIFRoZSByZXR1cm4gam91cm5leSB3YXMgdXNlZCBwcm9kdWN0aXZlbHkgdG8gcmVhZCBtb3JlIHBhcGVycyBhbmQgZG8gbW9yZSByZXNlYXJjaCBmb3Igb3VyIHByb2plY3QuIDwvcD48L2Rpdj5cclxuICAgIDwvZGl2Pl0sXHJcbiAgICBtb250aHM6IFwiTWFyY2hcIlxyXG4gIH0sXHJcbiAge1xyXG4gICAgdm9ybmFtZTogXCJNYXhcIixcclxuICAgIG5hY2hubmFtZTogXCJCZWNrbWFublwiLFxyXG4gICAgam9iOiBcIlBhdGllbnQgYW5kIFN0dWRlbnRcIixcclxuICAgIGFmZmlsaWF0aW9uOiBcIkJpZWxlZmVsZCBVbml2ZXJzaXR5XCIsXHJcbiAgICBwaWN0dXJldXJsOiBwaWNzWydtYXgnXSxcclxuICAgIHRhZzogXCJQYXRpZW50XCIsXHJcbiAgICBoZWFkaW5nOiBcIkdhdGhlcmluZyB2YWx1YWJsZSBpbnNpZ2h0cyBmcm9tIHRoZSBwYXRpZW50XHUyMDE5cyBwZXJzcGVjdGl2ZVwiLFxyXG4gICAgaW50ZXJ2aWV3dGFiaWQ6IFwibWF4Zmlyc3RcIixcclxuICAgIGxhbmd1YWdlOiBcImRlXCIsXHJcbiAgICBxdW90ZU5hY2huYW1lOlwiQmVja21hbm4sIFBhdGllbnRcIixcclxuICAgIHF1b3RlVm9ybmFtZTogXCJNYXhcIixcclxuICAgIHF1b3RlOiBcIkEgZnJpZW5kIG9mIG1pbmUgd2l0aCAgQ3lzdGljIEZpYnJvc2lzIHJlY2VudGx5IGdvdCBhIGZ1bmdhbCBpbmZlY3Rpb24gdGhhdCBoZSBjYW4ndCBnZXQgcmlkIG9mLiBIaXMgc2l0dWF0aW9uIHJlYWxseSBzdHJ1Y2sgbWU7IGl0IHNob3dlZCBob3cgcXVpY2tseSBhIHNlZW1pbmdseSBtaW5vciBpc3N1ZSBjYW4gd29yc2VuIGEgcGVyc29uJ3MgbGlmZSwgZXNwZWNpYWxseSBmb3Igc29tZW9uZSBsaWtlIHVzLiBJdFx1MjAxOXMgYSBzdHJvbmcgcmVtaW5kZXIgb2YgaG93IGZyYWdpbGUgb3VyIGhlYWx0aCBpcyBhbmQgaG93IGZhc3QgdGhpbmdzIGNhbiBjaGFuZ2Ugd2l0aG91dCB3YXJuaW5nLlwiLFxyXG4gICAgYWltb2Zjb250YWN0OiBbPHA+V2hlbiBDRiBjYW1lIHVwIGFzIGEgcG9zc2libGUgdG9waWMsIHdlIHJlYWNoZWQgb3V0IHRvIGEgdGVhbW1hdGUncyBmcmllbmQgTWF4IGluIHRoZSBob3BlcyBvZiBnZXR0aW5nIGluc2lnaHRzIGludG8gdGhlIG5lZWRzIG9mIENGIHBhdGllbnRzIGFuZCBjdXJyZW50IHRyZWF0bWVudHMgdG8gdmVyaWZ5IHRoZSBuZWVkIGZvciBmdXJ0aGVyIHRyZWF0bWVudCBvcHRpb25zLlxyXG4gICAgICBTaW5jZSBoZSB3YXMgbXVjaCBtb3JlIGVudGh1c2lhc3RpYyBhbmQgb3BlbiBmb3IgZGlzY3Vzc2lvbiB0aGFuIHdlIGRhcmVkIHRvIGhvcGUsIHdlIGV4dGVuZGVkIG91ciBleGNoYW5nZXMgaW50byB0aGUgcmVhbG1zIG9mIHRoZSByZWFsaXR5IG9mIGxpZmUgZm9yIENGIHBhdGllbnRzLCBwb3NzaWJsZSBwcm9ncmVzc2lvbnMsIG9yZ2FuaXphdGlvbnMgYW5kIGRvY3RvcnMgaW4gb3VyIGFyZWEgYW5kIGhpcyBwZXJzb25hbCBwZXJzcGVjdGl2ZXMgYW5kIHZhbHVlcy5cclxuICAgICAgVGhlIGludGVyZXN0IGluIG1lZXRpbmcgaGltIGdyZXcgaW4gdGhlIHdob2xlIHRlYW0gYW5kIHdlIGludml0ZWQgaGltIHRvIG9uZSBvZiBvdXIgbWVldGluZ3MuICAgPC9wPl0sXHJcbiAgICBpbnNpZ2h0czogWzw+PHA+SGlzIGhvbmVzdCBhbmQgb3BlbiBhbnN3ZXJzIHRvIHVzLCBtb3N0bHkgbm90aGluZyBtb3JlIHRoYW4gc3RyYW5nZXJzIHRvIGhpbSwgd2VyZSB0b3VjaGluZyBhbmQgbGV0IHRoZSBzZXJpb3VzbmVzcyBvZiBDRiBzZXQgaW4uXHJcbiAgICAgIExlYXJuaW5nIGFib3V0IHRoZSBjaGFsbGVuZ2VzIGhlIGZhY2VkIGZlbHQgaGVhdnksIGJlc2lkZXMgaGltIGJlaW5nIGluIHJlbGF0aXZlbHkgZ29vZCBoZWFsdGggYW5kIGhhdmluZyBhIGdvb2QgbGlmZSBxdWFsaXR5IGZvciBhIENGIHBhdGllbnQuXHJcbiAgICA8L3A+XHJcbiAgICAgIDxwPkFkZGl0aW9uYWwgdG8gdGhlIGludGVycGVyc29uYWwgZWZmZWN0cyBvZiBvdXIgZGlzY3Vzc2lvbiwgTWF4IGdhdmUgdXMgdGhlIHJlYXNvbnMgdG8gY29udGludWUgd2l0aCBnZW5lIHRoZXJhcHkgYXBwcm9hY2ggd2hpbGUgZm9jdXNpbmcgb24gdGhlIGx1bmc6XHJcbiAgICAgICAgTW9kdWxhdG9ycyBkbyBub3QgZXJhc2UgYWxsIHN5bXB0b21zLlxyXG4gICAgICAgIFRoZXJlIGlzIGEga2VlbiBpbnRlcmVzdCBmb3IgbmV3IHRyZWF0bWVudHMgaW4gdGhlIENGIGNvbW11bml0eS5cclxuICAgICAgICBUaGUgdGhlIGRlY3JlYXNpbmcgbHVuZyBmdW5jdGlvbmFsaXR5IGl0IHRoZSBtb3N0IGxpbWl0aW5nLlxyXG4gICAgICAgIFRoZSBpbW1lbnNlIGltcGFjdCBvZiB0cmVhdG1lbnRzIG9uIHRoZSBsaWZlIHF1YWxpdHkuICA8L3A+XHJcbiAgICAgIDxwPldlIGdvdCBuZXcgaW5zaWdodHMgdGhhdCBtb3RpdmF0ZWQgdXMgdG8gZGV2ZWxvcCBhIG5ldyB0cmVhdG1lbnQsIHRvIHRyZWF0IHRoZSBzZXZlcmUgc3ltcHRvbWVzXHJcbiAgICAgICAgVGhlIG5lZWQgZm9yIGEgY2Fsb3JpZSByaWNoIGRpZXQgYW5kIGRpZ2VzdGl2ZSBwcm9ibGVtcy5cclxuICAgICAgICBUaGUgZnJlcXVlbmN5IG9mIGNoZWNrdXBzIG5lZWRlZC5cclxuICAgICAgICBIb3cgdmFzdGx5IGRpZmZlcmVudCB0aGUgcHJvZ3Jlc3Npb25zIGNhbiBiZS5cclxuICAgICAgICBUaGUgaW5jcmVhc2VkIG5lZWQgZm9yIGh5Z2llbmUgdG8gcHJldmVudCBpbmZlY3Rpb25zLlxyXG4gICAgICAgIFRoZSBoaWdoIHByaWNlIG9mIG1lZGljaW5lcyBhbmQgaW5kdXZpYWwgdGhlcmFwZXV0aWNzLiA8L3A+XHJcbiAgICAgIDxwPkFmdGVyd2FyZHMsIHdlIHJlZmxlY3RlZCBvbiB0aGUgZGlzY3Vzc2lvbiBhbmQgYXNrZWQgb3VyIHRlYW0gbWVtYmVycyB3aGF0IHN0dWNrIHdpdGggdGhlbTpcclxuICAgICAgICBcdTIwMUNIb3cgbXVjaCBhdHRlbnRpb24gaGFzIHRvIGJlIHBhaWQgdG8gZXZlcnl0aGluZyBpbiBldmVyeWRheSBsaWZlLCBJIGhhZG4ndCBldmVuIHRob3VnaHQgYWJvdXQgcHJvYmxlbXMgYXQgdGhlIGhhaXJkcmVzc2VyLlx1MjAxRFxyXG4gICAgICAgIFx1MjAxQ1NpbXBseSB0aGF0IGhlIHdhcyB0aGVyZSBhbmQgcmVwb3J0ZWQgZXZlcnl0aGluZyBpbiBzdWNoIGRldGFpbC4gRnJvbSBtaW51dGUgb25lLCBJIGhhZCBwZXJtYW5lbnQgZ29vc2VidW1wcyBiZWNhdXNlIEkgd2FzIHNvIG1vdmVkIGJ5IHRoaXMgc3RvcnkuIEkgdGhpbmsgaXQncyBncmVhdCBob3cgaGUgc3RhbmRzIGhpcyBncm91bmQgaW4gbGlmZSwgZG9lcyB3aGF0IGhlIHdhbnRzIHRvIGRvIGFuZCB3aGF0IGRlZmluZXMgaGltIGFzIGEgcGVyc29uLiBJdCBkaWRuJ3Qgc2VlbSBhcyBpZiBoaXMgbGlmZSB3YXMgZGV0ZXJtaW5lZCBieSBDRi4gSSBzb21laG93IGV4cGVjdGVkIGl0IHRvIGJlIGRpZmZlcmVudCwgZXZlbiBpZiB0aGF0IHNvdW5kcyBhIGJpdCBzaWxseS5cdTIwMURcclxuICAgICAgICBcdTIwMUNUaGUgYW1vdW50IG9mIG1lZGljYXRpb24gYW5kIGhvdyBleHBlbnNpdmUgaXQgaXMuXHUyMDFEXHJcbiAgICAgICAgXCJUaGUgc3RhdGVtZW50IHRoYXQgbGVmdCB0aGUgYmlnZ2VzdCBpbXByZXNzaW9uIGZvciBtZSB3YXMgd2hlbiBNYXggd2FzIHRlbGxpbmcgYWJvdXQgYSBmcmllbmQgb2YgaGlzIGFuZCBmZWxsb3cgQ0YgcGF0aWVudCB3aG8gY2F1Z2h0IGEgZnVuZ2kgaW5mZWN0aW9uIHdoaWNoIGhlIG5vdyBjYW5ub3QgZ2V0IHJpZCBvZiBhbnltb3JlLCBzaG93aW5nIGhvdyBmYXN0IGEgc2VlbWluZ2x5IGxpdHRsZSBpbmZlY3Rpb24gY2FuIGNoYW5nZSB0aGUgbGlmZSBvZiBhIENGIHBhdGllbnQgZm9yIHRoZSB3b3JzZSB3aXRob3V0IGFueSBraW5kIG9mIHdhcm5pbmcuXHUyMDFEXHJcbiAgICAgICAgXHUyMDFDVGhlIHZhcmlhbmNlIGluIHRoZSBleHRlbnQgb2YgdGhlIGxpbWl0YXRpb25zIG9mIHRoZSBkaXNlYXNlIGluIGRpZmZlcmVudCBwYXRpZW50cywgaW5jbHVkaW5nIGhvdyB0aGUgZGlzZWFzZSBkaWZmZXJzIGluIGl0cyBzZXZlcml0eSwgZXZlbiBpbiBwYXRpZW50cyBvZiB0aGUgc2FtZSBhZ2UuXHUyMDFEXHJcbiAgICAgICAgXHUyMDFDSG93IHBvc2l0aXZlbHkgYW5kIGNhbG1seSBNYXggZGVhbHMgd2l0aCBoaXMgaWxsbmVzcyBidXQgaGFzIGFsc28gcG9pbnRlZCBvdXQgdGhhdCBoZSBpcyBsdWNreSwgYW5kIHRoYXQgb3RoZXIgcGVvcGxlIGFyZSBtdWNoIHdvcnNlIG9mZiAtIGhvdyBtdWNoIHlvdSBoYXZlIHRvIHBheSBhdHRlbnRpb24gdG8gbGl0dGxlIHRoaW5ncyB0aGF0IHlvdSB3b3VsZG4ndCBoYXZlIGV4cGVjdGVkIGFzIGEgaGVhbHRoeSBwZXJzb24uXHUyMDFEIDwvcD5cclxuICAgIDwvPl0sXHJcbiAgICBpbXBsZW1lbnRhdGlvbjogWzw+IDxwPlRoaXMgbW9zdCBpbXBvcnRhbnQgYXNwZWN0IG9mIHRoaXMgbWVldGluZyB3YXMgbGVzcyBhbiBpbnNpZ2h0LCBidXQgdGhlIGZhY3QgTWF4IGhlbHBlZCB1cyB0byBwdXQgYSBmYWNlIHRvIGFuIGFic3RyYWN0IGlkZWEuIE1hbnkgb2Ygb3VyIGlkZWFzIHRvIHRyZWF0IENGIHdlcmUgaW50ZXJlc3RpbmcgYW5kIGFkdmVudHVyb3VzIGJ1dCBtZWV0aW5nIGhpbSBwdXQgYSBsb3QgaW50byBwZXJzcGVjdGl2ZS4gPC9wPlxyXG4gICAgICA8cD5NYXggcGxheWVkIGEgc2lnbmlmaWNhbnQgcm9sZSBpbiBzaGFwaW5nIG91ciBwcm9qZWN0IGZyb20gdGhlIG91dHNldCwgcGFydGljdWxhcmx5IGluIGd1aWRpbmcgb3VyIGZvY3VzIG9uIDxPdXJMaW5rIHBhdGg9J2p1ZGdpbmcnIHRhYklkPSdqdWRnaW5nJyBzY3JvbGxUb0lkPSdiZXN0LWludGVncmF0ZWQtaHVtYW4tcHJhY3RpY2UnIHRleHQ9J0ludGVncmF0ZWQgSHVtYW4gUHJhY3RpY2VzJy8+IHsvKktheWEqL30gYW5kIDxPdXJMaW5rIHBhdGg9J2p1ZGdpbmcnIHRhYklkPSdqdWRnaW5nJyBzY3JvbGxUb0lkPSdzYWZldHktc2VjdXJpdHknIHRleHQ9J1NhZmV0eSAmIFNlY3VyaXR5Jy8+IHsvKktheWEqL30gYXMgc3BlY2lhbCBwcml6ZXMuIFRocm91Z2ggb3VyIGRpc2N1c3Npb25zLCB3ZSByZWNvZ25pemVkIHRoZSBpbXBvcnRhbmNlIG9mIHRoZXNlIGFzcGVjdHMgaW4gZGV2ZWxvcGluZyB0aGUgYmVzdCBwb3NzaWJsZSBjdXJlLiBUaGlzIGNvbGxhYm9yYXRpdmUgZWZmb3J0IGxlZCB1cyB0byBwaXZvdCBvdXIgdGFyZ2V0IGZyb20gdGhlIHBhbmNyZWFzIHRvIHRoZSBsdW5nIGFuZCBtb3ZlIGF3YXkgZnJvbSBhIGRpYWdub3N0aWMgYXBwcm9hY2guIEhpcyBjb250cmlidXRpb25zIG5vdCBvbmx5IHByb3ZpZGVkIHZhbHVhYmxlIGluc2lnaHRzIGJ1dCBhbHNvIGZvc3RlcmVkIGEgc3Ryb25nIHBlcnNvbmFsIGludmVzdG1lbnQgaW4gb3VyIHByb2plY3QuPC9wPjwvPl0sXHJcbiAgICBwaWN0dXJldXJsX2ltcGxlbWVudGF0aW9uOiBcIlwiLFxyXG4gICAgaW50ZXJ2aWV3OiA8PjxRYUJveCBxPVwiSG93IGFuZCB3aGVuIHdlcmUgeW91IGZpcnN0IGRpYWdub3NlZD8gXCIgYT1cIldoZW4gSSB3YXMgYWJvdXQgb25lIHllYXIgb2xkLiBNeSBtb3RoZXIgZGlkIG5vdCBkbyBhbnkgc2NyZWVuaW5ncyBvciBwcmVuYXRhbCB0ZXN0aW5nLiBJIHdhcyBpbiBwYWluIGJ1dCBhcyBhbiBpbmZhbnQgeW91IGNhbm5vdCBzYXkgdGhhdCwgc28gSSBzY3JlYW1lZCBhIGxvdC4gTWFueSBkb2N0b3JzIHNocnVnIHRoYXQgb2ZmIGluIHNtYWxsIGNoaWxkcmVuIGJ1dCBhZnRlciBzb21lIHRpbWUgYSBzd2VhdCB0ZXN0IHdhcyBkb25lIGF0IHRoZSBjaGlsZHJlbidzIGNsaW5pYy5cIiAvPlxyXG4gICAgICA8UWFCb3ggcT1cIldoYXQgZG8geW91IHRoaW5rIGFib3V0IGRpYWdub3NpbmcgdmlhIHN3ZWF0IHRlc3RzP1wiIGE9XCJJIGFtIGEgY2xlYXIgb3Bwb25lbnQgb2YgZGlhZ25vc2luZyB2aWEgc3dlYXQgdGVzdHMsIGVzcGVjaWFsbHkgaWYgaXQgaXMgdXNlZCB0byBydWxlIG91dCBDRiBhbmQgcGVvcGxlIGhhdmUgYXR5cGljYWwgQ0YsIGJlY2F1c2Ugb2Ygd2hpY2ggdGhleSBkbyBub3QgZ2V0IGRpYWdub3NlZCBiZWNhdXNlIG9mIHRoYXQuXCIgLz5cclxuICAgICAgPFFhQm94IHE9XCJXaGF0IHN5bXB0b21zIGRvIHlvdSBoYXZlP1wiIGE9XCJCZWZvcmUgdGFraW5nIG1vZHVsYXRvcnMsIEkgd2FzIHVuZGVyd2VpZ2h0IGFuZCBkaWQgbm90IGZlZWwgaHVuZ2VyLiBJIGFsc28gaGFkIG5vIHNlbnNlIG9mIHRhc3RlLiBOb3csIEkgaGF2ZSBhIGhlYWx0aHkgd2VpZ2h0IGFuZCBzdGlsbCBoYXZlIHJlc3BpcmF0b3J5IHN5bXB0b21zIHN1Y2ggYXMgdmVyeSBzdGlja3kgbXVjdXMgYW5kIGRpZ2VzdGl2ZSBpc3N1ZXMuXCIgLz5cclxuICAgICAgPFFhQm94IHE9XCJZb3UgYXJlIHRha2luZyBpbmRpdmlkdWFsIG1lZHMsIGNvcnJlY3Q/IFRoZXkgYXJlIGluZGl2aWR1YWwgaW4gcmVzcGVjdCB0byB0aGUgbXV0YXRpb24sIG5vdCB0aGUgcGVyc29uLCByaWdodD9cIiBhPVwiWWVzLCBhbmQgeWVzLCBJIGFtLiBcIiAvPlxyXG4gICAgICA8UWFCb3ggcT1cIldoYXQgb3RoZXIgbWVkaWNhdGlvbnMgYXJlIHlvdSB0YWtpbmc/IFwiIGE9XCJOYXNhbCBzcHJheSwgcGFuY3JlYXRpYyBlbnp5bWVzLCBzYWxpbmUgc29sdXRpb24gZm9yIGluaGFsYXRpb24gYW5kIHBhbnRvcHJhem9sZSwgdXNlZCB0byByZWR1Y2Ugc3RvbWFjaCBhY2lkIHByb2R1Y3Rpb24uICBcIiAvPlxyXG4gICAgICA8UWFCb3ggcT1cIkRvIHlvdSBrbm93IGhvdyBleGFjdGx5IHRoZXkgd29yaz9cIiBhPVwiWWVzLCBJIHdyb3RlIGEgcmVwb3J0IG9uIHRoYXQgZHVyaW5nIHNjaG9vbC4gSW4gdGhlIGNoaWxkcmVuJ3MgY2xpbmljIHRoZXkgZXhwbGFpbmVkIGl0IGxpa2UgdGhpczogVGhlIENGVFIgY2hhbm5lbCBpcyBsaWtlIGEgZG9vciBhbmQgcGVvcGxlIHdpdGggQ0YgZG9uXHUyMDE5dCBoYXZlIHRoYXQgbWFueSBkb29ycyBhbmQgc29tZSBvZiB0aGUgZG9vcnMgYXJlIGJyb2tlbi4gVGhlIG1lZGljYXRpb24gbWFrZXMgbW9yZSBkb29ycyB0aGF0IGZ1bmN0aW9uLlwiIC8+XHJcbiAgICAgIDxRYUJveCBxPVwiV2hhdCBjaGFuZ2VkIHdoZW4geW91IHN0YXJ0ZWQgdGFraW5nIHRoZSBtb2R1bGF0b3JzPyBcIiBhPVwiRXZlcnl0aGluZy4gTW9zdCBvZiBzeW1wdG9tcyBhcmUgbWlub3Igbm93IGFuZCBJIGhhdmUgYSBiZXR0ZXIgbHVuZyBmdW5jdGlvbiBhbmQgcXVhbGl0eSBvZiBsaWZlLiBJIGV2ZW4gZ3JldyB0YWxsZXIuXCIgLz5cclxuICAgICAgPFFhQm94IHE9XCJEaWQgeW91IGZvcm1lcmx5IHRha2Ugb3RoZXIgbWVkaWNhdGlvbj9cIiBhPVwiSSBkb25cdTIwMTl0IHJlbWVtYmVyIGFueXRoaW5nIGxpa2UgdGhhdCwgYnV0IEkgYWxzbyBhbHdheXMgaGFkIGdvb2QgbWVkaWNhbCBjYXJlLiAgXCIgLz5cclxuICAgICAgPFFhQm94IHE9XCJEbyB5b3UgZXhwZXJpZW5jZSBhbnkgc2lkZSBlZmZlY3RzIGZyb20geW91ciBtZWRpY2F0aW9ucz9cIiBhPVwiQXQgZmlyc3QgeWVzLCBhIGxvdC4gU3RvbWFjaCBjcmFtcHMgYW5kIGRpZmZpY3VsdHkgYnJlYXRoaW5nIGZvciBleGFtcGxlLlwiIC8+XHJcbiAgICAgIDxRYUJveCBxPVwiSXMgZGlhYmV0ZXMgYSBjb25jZXJuIG9mIHlvdXJzP1wiIGE9XCJZZXMsIGl0IGlzIGNvbW1vbi4gSSBoYXZlIHRvIGdvIHRvIGEgZGlhYmV0ZXMgY2hlY2t1cCBvbmNlIGEgeWVhci4gVGhhdCBoYXBwZW5zIHRvZ2V0aGVyIHdpdGggYWxsIHRoZSBvdGhlciBjaGVja3VwcyBsaWtlIHNvbm9ncmFwaGllcy5cIiAvPlxyXG4gICAgICA8UWFCb3ggcT1cIkRvIHlvdSBrbm93IGZlbGxvdyBwYXRpZW50cyB0aGF0IHRvb2sgcGFydCBpbiBjbGluaWNhbCBzdHVkeSBmb3IgZ2VuZSB0aGVyYXB5IG9yIGF0IGxlYXN0IHRob3VnaHQgYWJvdXQgZG9pbmcgc28/XCIgYT1cIkkga25vdyBubyBvbmUgdGhhdCB0b29rIHBhcnQgaW4gb25lIGJ1dCBkZWZpbml0ZWx5IHBlb3BsZSB3aG8gd291bGQgbGlrZSB0byBkbyBzby5cIiAvPlxyXG4gICAgICA8UWFCb3ggcT1cIkRvIHlvdSBrbm93IG90aGVyIHBhdGllbnRzIHRoYXQgd291bGQgd2FudCB0byB1c2UgZ2VuZSB0aGVyYXB5P1wiIGE9XCJZZXMsIG1vc3QgZGVmaW5pdGVseS5cIiAvPlxyXG4gICAgICA8UWFCb3ggcT1cIlNpbmNlIHlvdXIgc3dlYXQgaXMgZGlmZmVyZW50LCBkbyB5b3UgaGF2ZSB0cm91YmxlIHdpdGggeW91ciB0ZW1wZXJhdHVyZSByZWd1bGF0aW9uP1wiIGE9XCJObyBhbmQgSSBkbyBub3Qga25vdyBhbnkgcGF0aWVudHMgd2l0aCBhbiBpc3N1ZSBsaWtlIHRoYXQuIEJ1dCBpdCBzdGlsbCBpcyB1bmNvbWZvcnRhYmxlIGluIHRoZSBzdW1tZXIsIGJlY2F1c2UgdGhlIHN3ZWF0IGlzIHRoaWNrLCBhbmQgaXQgY2FuIHNtZWxsIHN0cm9uZ2VyLCB0b28uXCIgLz5cclxuICAgICAgPFFhQm94IHE9XCJIb3cgbWFueSBob3VycyBhIGRheSBhcmUgZGV2b3RlZCB0byB5b3VyIGlsbG5lc3M/XCIgYT1cIkdvb2QgcXVlc3Rpb24sIGJ1dCB3cm9uZyBwYXRpZW50LiBJIGFtIGJsZXNzZWQgd2l0aCBnb29kIGhlYWx0aCB3aGlsZSBvdGhlciBwZW9wbGUgbXkgYWdlIG1heSBoYXZlIHRvIGJlIG9uIGEgdmVudGlsYXRvci4gSSBjdXJyZW50bHkgb25seSBoYXZlIHRvIGluaGFsZSBmb3IgMjAgbWludXRlcyBldmVyeSBkYXksIHRha2UgbXkgbWVkaWNhdGlvbiBhbmQgYmUgY29uc2Npb3VzIGFib3V0IGh5Z2llbmUuIEkgd291bGQgc2F5IDMwIG1pbnV0ZXMgYSBkYXkuIFwiIC8+XHJcbiAgICAgIDxRYUJveCBxPVwiVGhhdCBtZWFucyB5b3UgZG8gbm90IGhhdmUgbWFueSBsaW1pdGF0aW9ucyBkdWUgdG8gQ0YsIGlzIHRoYXQgcmlnaHQ/XCIgYT1cIlllcy4gVGhlcmUgYXJlIG1hbnkgdGhpbmdzIEkgYW0gY29uY2VybmVkIGFib3V0IGJ1dCBvZnRlbiB0aGVyZSBpcyBub3QgYSBkaWZmZXJlbnQgd2F5LlwiIC8+XHJcbiAgICAgIDxRYUJveCBxPVwiV2hhdCBhcmUgc29tZSBvZiB0aGUgbGltaXRhdGlvbnMgeW91IGRvIGhhdmU/XCIgYT1cIk9mIGNvdXJzZSwgSSBhbSBzdGlsbCBjb25jZXJuZWQgYWJvdXQgbXkgaGVhbHRoIGFuZCB1c2luZyBwdWJsaWMgYmF0aHJvb21zIGZvciBleGFtcGxlLiBBbmQgSSBzdGlsbCBkbyBub3QgZ28gc3dpbW1pbmcgaW4gbGFrZXMgYW5kIHRoaW5ncyBsaWtlIHRoYXQuIEJ1dCBhbGwgaW4gYWxsLCBJIGZlZWwgbGlrZSBJIGNhbiBsaXZlIGEgdmVyeSBub3JtYWwgbGlmZS4gIFwiIC8+XHJcbiAgICAgIDxRYUJveCBxPVwiT25lIGNvbmNlcm4gaXMgaHlnaWVuZS4gT3VyIHVuaXZlcnNpdHkgZm9yIGV4YW1wbGUgZG9lcyBub3QgaGF2ZSB0b2lsZXQgc2VhdHMgaW4gbW9zdCBiYXRocm9vbXMuIERvIHlvdSB0aGluayB0aGVyZSBzaG91bGQgYmU/XCIgYT1cIlRoYXQgZG9lcyBub3QgY29uY2VybiBoZWFsdGh5IHBlb3BsZSwgd2hvIGFyZSB0aGUgbWFqb3JpdHkuIEJ1dCBzcGVjaWZpY2FsbHkgZm9yIENGLXBlb3BsZT8gTm8sIHRoZXJlIGFyZSB0b28gZmV3IGF0IHRoZSB1bml2ZXJzaXR5LiBJdCB3b3VsZCBiZSBtb3JlIGh5Z2llbmljIG92ZXJhbGwsIHRob3VnaC4gQSBcdTIwMUNDRi10b2lsZXRcdTIwMUQgd291bGQgYmUgbmljZSBhcyBhIGZvcm0gb2YgYSBkaXNhYmxlZCBiYXRocm9vbS5cIiAvPlxyXG4gICAgICA8UWFCb3ggcT1cIkhvdyB3YXMgeW91ciBjaGlsZGhvb2QgYXMgYSBzaWNrIGNoaWxkIGFuZCBob3cgZGlkIHlvdXIgcGFyZW50cyBhY3Qgd2l0aCB5b3U/ICBcIiBhPVwiTXkgbW90aGVyIGlzIGFjdGl2ZSBpbiB0aGUgTXVrbyBlLlYuIGFuZCBoYXMgYmVlbiBmb3Igc29tZSB0aW1lLiBNeSBwYXJlbnRzIGFsd2F5cyBsZWFkIGJ5IGV4YW1wbGUgYWJvdXQgd2hhdCB0byBkbyBhbmQgbm90IHRvIGRvIGFuZCBkZWFsdCB3aXRoIGl0IGluIGEgZ29vZCB3YXkuIE15IG1vdGhlciB3YXMgYWx3YXlzIHZlcnkgY29tbWl0dGVkIGFuZCBpbnZvbHZlZCBpbiBnaXZpbmcgbWUgZ29vZCBjYXJlLiBJIGFsd2F5cyBrbmV3IGFib3V0IG15IGlsbG5lc3MgYnV0IGZlbHQgaXQgd2FzIG5vdCB0aGF0IGJhZCwgYmVjYXVzZSBJIHJlY2VpdmVkIGdvb2QgY2FyZSBhbmQgZWR1Y2F0aW9uIGFib3V0IG15IGlsbG5lc3MuXCIgLz5cclxuICAgICAgPFFhQm94IHE9XCJXaGF0IGlzIGEgdHlwaWNhbCBhZ2UgZm9yIGEgZGlhZ25vc2lzIGluIHlvdXIgZXhwZXJpZW5jZT9cIiBhPVwiU29tZXdoZXJlIGJldHdlZW4gdGhlIHByZWduYW5jeSBhbmQgb25lIHllYXIuIEl0IGlzIG9idmlvdXMgaWYgdGhlIGNoaWxkcmVuIGRvIG5vdCBnYWluIHdlaWdodCBhbmQgdGhlcmUgYXJlIGdlbmV0aWMgc2NyZWVuaW5ncyBvbmUgY2FuIGRvIHByZW5hdGFsbHkgb3IgYWZ0ZXIgYmlydGguICBcIiAvPlxyXG4gICAgICA8UWFCb3ggcT1cIklmIGEgZGlhZ25vc2lzIGlzIHBvc3NpYmxlIGR1cmluZyBwcmVnbmFuY3ksIGRvIHlvdSBrbm93IG9mIGFueSB0cmVhdG1lbnRzIGR1cmluZyBwcmVnbmFuY3k/XCIgYT1cIk5vLCBJIHRoaW5rIHRoZSB5b3VuZ2VzdCBhZ2UgZm9yIG1vZHVsYXRvcnMgaXMgMyB5ZWFycy4gQnV0IHBlb3BsZSBjYW4gZG8gZ2VuZXRpYyB0ZXN0aW5nIGFuZCBjb3Vuc2VsbGluZyBiZWZvcmUgcHJlZ25hbmN5LlwiIC8+XHJcbiAgICAgIDxRYUJveCBxPVwiV2hhdCBkb2VzIGEgaGlnaC1mYXQgZGlldCBlbnRhaWw/XCIgYT1cIkZvciBtZSwgaXQgd2FzIGEgbG90IG9mIG9pbCBhbmQgYnV0dGVyIGFuZCBoaWdoLWNhbG9yeSBkcmlua3MuICBcIiAvPlxyXG4gICAgICA8UWFCb3ggcT1cIldoYXQgd291bGQgaGFwcGVuIGlmIHlvdSBzdG9wcGVkIHRha2luZyB5b3VyIG1lZGljYXRpb25zP1wiIGE9XCJUaGUgZmlyc3QgdGhpbmcgdG8gaGFwcGVuIHdvdWxkIGJlIGhlYXZ5IGFuZCBkcnkgY291Z2hpbmcsIGJlY2F1c2UgdGhlIG11Y3VzIHdvdWxkIG5vdCBiZSByZW1vdmVkIHByb3Blcmx5IGFueW1vcmUuIFRodXMsIGJhY3RlcmlhIHdvdWxkIG5vdCBiZSBwcm9wZXJseSByZW1vdmVkIGZyb20gdGhlIGx1bmdzIGFueW1vcmUgZWl0aGVyIGFuZCBhbiBpbmZlY3Rpb24gd291bGQgYmVjb21lIG1vcmUgbGlrZWx5LiBBbmQgSSB3b3VsZCBub3QgYmUgYWJsZSB0byByZWFsbHkgcHJvY2VzcyBmb29kIGFueW1vcmUsIHNvIG5vIG51dHJpZW50cywgZmVlbGluZyB3ZWFrIGFuZCBzdG9tYWNoIHByb2JsZW1zLiAgXCIgLz5cclxuICAgICAgPFFhQm94IHE9XCJQaHlzaWNhbCB0aGVyYXB5IGlzIGEgcGFydCBvZiB5b3VyIHRyZWF0bWVudCBcdTIwMTMgd2hhdCBleGFjdGx5IGRvIHlvdSBkbyB0aGVyZT8gIFwiIGE9XCJCcmVhdGhpbmcgZXhlcmNpc2VzIGFuZCB0cmFpbmluZyBteSBsdW5nIHZvbHVtZSB0byBrZWVwIGl0IG9uIHRoZSBzYW1lIGxldmVsLlx1MDBBMFwiIC8+XHJcbiAgICAgIDxRYUJveCBxPVwiRG8geW91IGhhdmUgZnVydGhlciB3aXNoZWQgZm9yIHlvdXIgdGhlcmFweT9cIiBhPVwiTm90IHJlYWxseS4gSSBhbSB2ZXJ5IGx1Y2t5IGFuZCBhbSBmcmVlIG9mIGhlYXZ5IHN5bXB0b21zIG9uIG1vc3QgZGF5cy4gXCIgLz5cclxuICAgICAgPFFhQm94IHE9XCJJcyB0aGF0IHRoZSBub3JtIG9yIGRvIHlvdSBrbm93IHBlb3BsZSB3aG8gZG8gd2FudCBuZXcgdGhlcmFwaWVzP1wiIGE9XCJObywgdGhlcmUgaXMgYSBuZWVkIGZvciBuZXcgdGhlcmFwaWVzLiAgXCIgLz5cclxuICAgICAgPFFhQm94IHE9XCJBcmUgdGhlc2UgcGVvcGxlIHdpdGggZGlmZmVyZW50IG11dGF0aW9ucyBvciB3b3JzZSBoZWFsdGg/IFwiIGE9XCJJIGRvblx1MjAxOXQga25vdywgdGhlIHByb2dyZXNzaW9uIGlzIHNvIGluZGl2aWR1YWwsIGFuZCBpbmZlY3Rpb25zIGNhbiBjcmVhdGUgYmlnIGNoYW5nZXMuICBcIiAvPlxyXG4gICAgICA8UWFCb3ggcT1cIkEgdGhlcmFweSBmb3Igd2hpY2ggb3JnYW4gd291bGQgYmVuZWZpdCBtb3N0IHBlb3BsZSB0aGF0IGhhdmUgd29yc2UgaGVhbHRoIHRoYW4geW91IGRvP1wiIGE9XCJQcm9iYWJseSB0aGUgbHVuZy4gVGhlIHBhbmNyZWFzIGlzIGltcG9ydGFudCB0b28sIGJ1dCBzdG9tYWNoIHByb2JsZW1zIGFyZSB1c3VhbGx5IGxlc3MgcHJlc3NpbmcgdGhhbiBkaWZmaWN1bHR5IGluIGJyZWF0aGluZy5cIiAvPlxyXG4gICAgICA8UWFCb3ggcT1cIllvdSBtZW50aW9uZWQgdGhhdCBkb2luZyBzcG9ydCBpcyBkaWZmaWN1bHQgd2l0aCBDRiwgd2h5P1wiIGE9XCJIeWdpZW5lLiBJbiB0aGUgbG9ja2VycyBhbmQgdGhlIHNob3dlcnMgYnV0IGFsc28gd2l0aCB0aGUgZXF1aXBtZW50LlwiIC8+XHJcbiAgICAgIDxRYUJveCBxPVwiRG8geW91IGZlZWwgcmVzdHJpY3RlZCBpbiB5b3VyIGZyZWUgdGltZSBhY3Rpdml0aWVzP1wiIGE9XCJObywgSSBhbHdheXMgaGFkIGdvb2QgYWx0ZXJuYXRpdmVzLiBGb3IgZXhhbXBsZSwgZ29pbmcgc3dpbW1pbmcgYXQgYW4gb3Blbi1haXIgc3dpbW1pbmcgcG9vbCBpbnN0ZWFkIG9mIGEgbGFrZS4gIFwiIC8+XHJcbiAgICAgIDxRYUJveCBxPVwiV291bGQgeW91IGhhdmUgbW9yZSBmcmVlZG9tIHdoZW4geW91IGFyZSBiZXR0ZXIgcHJvdGVjdGVkIGZyb20gUHNldWRvbW9uYXMgc3BjYy4gYW5kIG90aGVyIHBvdGVudGlhbCBpbmZlY3Rpb25zPyAgXCJhPVwiRGVmaW5pdGVseS4gVGhhdCBpcyBhIGJpZyBpbmNyZWFzZSBpbiB0aGUgcXVhbGl0eSBvZiBsaWZlIGFuZCB0aGF0IGlzIGEgd2luLiBJdCBhbHNvIGNoYW5nZXMgdGhlIHBpY3R1cmUgcGVvcGxlIGhhdmUgb2YgdGhlIGlsbG5lc3MuIE9mIGNvdXJzZSBiZWluZyBwcm90ZWN0ZWQgYnkgcHJldmVudGlvbiBpcyBnb29kIGFscmVhZHkgYnV0IGVmZmVjdGl2ZSB0aGVyYXBpZXMgZm9yIGluZmVjdGlvbnMgaW5jcmVhc2UgdGhlIHNlbnNlIG9mIGZyZWVkb20gZXZlbiBtb3JlLiBcIiAvPlxyXG4gICAgICA8UWFCb3ggcT1cIllvdSBzYWlkIHlvdSBhcmUgYWZyYWlkIGV2ZXJ5IHRpbWUgeW91IG11c3QgZ28gZm9yIGEgc3dhYiwgd2h5IGlzIHRoYXQ/IFwiIGE9XCJJIGFtIGFmcmFpZCBvZiBnZXR0aW5nIGFuIGluZmVjdGlvbi4gVGhhdCBzdGlsbCBjb3VsZCBiZSBhIGRlYXRoIHNlbnRlbmNlLiAgXCIgLz5cclxuICAgICAgPFFhQm94IHE9XCJBcmUgcm9vbXMgd2l0aCBhaXIgY29uZGl0aW9uaW5nIGEgcHJvYmxlbSBkdWUgdG8gdGhlIHBvc3NpYmxlIGdlcm1zIGluIHRoZSBhaXIgY29uZGl0aW9uZXJzPyAgXCIgYT1cIk5vLCB0aGVyZSBpcyB1c3VhbGx5IGVub3VnaCBtb3ZlbWVudC4gQnV0IGh1bWlkaWZpZXJzIGFyZSBiYWQgYmVjYXVzZSBvZiB0aGUgcG9uZCB3YXRlci4gIFwiIC8+XHJcbiAgICAgIDxRYUJveCBxPVwiWW91IG1lbnRpb25lZCBnb2luZyB0byB0aGUgaGFpcmRyZXNzZXIgaXMgcHJvYmxlbWF0aWMuIENvdWxkIHlvdSBlbGFib3JhdGU/IFwiIGE9XCJUaGVyZSBhcmUgbWFueSBwb3NzaWJsZSBzb3VyY2VzIG9mIHBvbmRpbmcgd2F0ZXIgYW5kIHdpdGggdGhhdCwgaW5mZWN0aW9ucy4gVGhhdCBhbmQgdGhlIGh5Z2llbmUgYXNwZWN0IGluIGdlbmVyYWwuIEkgYW0gdmlzaXRlZCBieSBteSBoYWlyZHJlc3NlciwgYW5kIGhlIG9ubHkgdXNlcyBhIHNwZWNpZmljIHNwcmF5IGJvdHRsZSB0byB3ZXQgbXkgaGFpciB0aGF0IEkga2VlcCBhbmQgZHJ5IHRob3JvdWdobHkgYmV0d2VlbiB1c2VzLlwiIC8+XHJcbiAgICAgIDxRYUJveCBxPVwiQXJlIHlvdSB0aGUgZmlyc3QgcGVyc29uIGluIHlvdXIgZmFtaWx5IHRoYXQgaGFzIENGPyAgXCIgYT1cIlllcy4gQnV0IEkgc3VzcGVjdCBteSBmYXRoZXIgaGFzIGEgbGlnaHQgb3IgYXR5cGljYWwgZm9ybSBiZWNhdXNlIGhlIGhhcyBzdXNwaWNpb3VzIG11Y3VzLlwiIC8+XHJcbiAgICAgIDxRYUJveCBxPVwiV2l0aCBsaWZlIGV4cGVjdGFuY2llcyBsb29raW5nIGJldHRlciwgZG8gbWFueSBwYXRpZW50cyB3YW50IHRvIGhhdmUgYmlvbG9naWNhbCBjaGlsZHJlbj9cIiBhPVwiTm90IGFsbCBidXQgc29tZS4gSSB0aGluayBzb21lIHdvdWxkIGJlIGludGVyZXN0ZWQgaW4gYSB0aGVyYXB5IHRoYXQgY2FuIGJlIGRvbmUgb24gdGhlIGZlcnRpbGl6ZWQgZWdnIHRvIGhhdmUgYSBoZWFsdGh5IGNoaWxkLiAgXCIgLz5cclxuICAgICAgPFFhQm94IHE9XCJEbyB5b3Uga25vdyB0aGUgZmlsbSBcdTIwMUNGaXZlIGZlZXQgYXBhcnRcdTIwMUQ/IElmIHNvLCB3aGF0IGRvIHRoaW5rIGFib3V0IGl0LCBpcyBpdCBhY2N1cmF0ZT8gIFwiIGE9XCJZZXMuIEl0IGRvZXMgbm90IHBhaW50IGEgd3JvbmcgcGljdHVyZTsgdGhlaXIgcHJvZ3Jlc3Npb24gaXMgcG9zc2libGUuXCIgLz5cclxuICAgICAgPFFhQm94IHE9XCJEbyB5b3UgdGhpbmsgdGhlcmUgaGFzIHRvIGJlIG1vcmUgZWZmb3J0IGNvbmNlcm5pbmcgZGlhZ25vc3RpY3M/XCIgYT1cIkVhcmx5IGRpYWdub3NpcyBpcyBjb3ZlcmVkIGJ5IHRoZSBzY3JlZW5pbmdzLlwiIC8+XHJcbiAgICAgIDxRYUJveCBxPVwiU2luY2UgeW91IGFsbW9zdCBoYWQgdG8gc3VlIGZvciB5b3VyIG1lZGljYXRpb24sIGRvIHlvdSBrbm93IGlmIHRoZXJlIGFyZSBhbnkgbGF3eWVycyBzcGVjaWFsaXppbmcgaW4gY2FzZXMgbGlrZSB0aGlzPyAgXCIgYT1cIk5vLCBJIGRvblx1MjAxOXQuICBcIiAvPlxyXG4gICAgICA8UWFCb3ggcT1cIkFyZSBtb3N0IG9mIHRoZSBvdGhlciBwYXRpZW50cyB5b3Uga25vdyBpbiBnb29kIGhlYWx0aCBsaWtlIHlvdT9cIiBhPVwiTm8uIEFub3RoZXIgYm95IG15IGFnZSBnb3QgYSBmdW5nYWwgaW5mZWN0aW9uIGFuZCBkb2VzIG5vdCBoYXZlIGxvbmcgdGltZSBsZWZ0IHRvIGxpdmUuICBcIiAvPlxyXG4gICAgPC8+LFxyXG4gICAgc3VtbWFyeTogXCJXZSByZWFjaGVkIG91dCB0byBNYXgsIGEgZnJpZW5kIG9mIGEgdGVhbW1hdGUsIHRvIGdhaW4gaW5zaWdodHMgaW50byB0aGUgbmVlZHMgYW5kIGV4cGVyaWVuY2VzIG9mIENGIHBhdGllbnRzLiBPdXIgZGlzY3Vzc2lvbnMgcmV2ZWFsZWQgdGhlIGNoYWxsZW5nZXMgZmFjZWQgYnkgQ0YgcGF0aWVudHMsIGV2ZW4gdGhvc2UgaW4gcmVsYXRpdmVseSBnb29kIGhlYWx0aCwgYW5kIGVtcGhhc2l6ZWQgdGhlIG9uZ29pbmcgbmVlZCBmb3IgbmV3IHRyZWF0bWVudCBvcHRpb25zLiBNYXgncyBjYW5kaWQgc2hhcmluZyBvZiBoaXMgZXhwZXJpZW5jZXMgaGlnaGxpZ2h0ZWQgdGhlIGxpbWl0YXRpb25zIG9mIGN1cnJlbnQgbW9kdWxhdG9ycywgdGhlIGltcG9ydGFuY2Ugb2YgbHVuZyBmdW5jdGlvbiwgYW5kIHRoZSBpbXBhY3Qgb2YgdHJlYXRtZW50cyBvbiBxdWFsaXR5IG9mIGxpZmUuIFRoaXMgbWVldGluZyB0cmFuc2Zvcm1lZCBvdXIgcHJvamVjdCBwZXJzcGVjdGl2ZSwgdXJnaW5nIHVzIHRvIHByaW9yaXRpemUgc2FmZXR5IGFuZCByZWFsLXdvcmxkIGJlbmVmaXRzIGluIG91ciBkZXNpZ24uIFVsdGltYXRlbHksIE1heCdzIGluZmx1ZW5jZSBsZWQgdXMgdG8gZm9jdXMgb24gbHVuZy10YXJnZXRlZCBnZW5lIHRoZXJhcHkgaW5zdGVhZCBvZiBhIGRpYWdub3N0aWMgYXBwcm9hY2gsIHJlaW5mb3JjaW5nIG91ciBjb21taXRtZW50IHRvIEludGVncmF0ZWQgSHVtYW4gUHJhY3RpY2VzLlwiLFxyXG4gICAgbW9udGhzOiBcIkFwcmlsXCIsXHJcbiAgICAvKmludGVydmlldzo8aWZyYW1lIHRpdGxlPVwiQmllbGVmZWxkLUNlQmlUZWM6IEludGVydmlldyB3aXRoIE1heCBCZWNrbWFubiAoMjAyNCkgW0VuZ2xpc2hdXCIgd2lkdGg9XCI1NjBcIiBoZWlnaHQ9XCIzMTVcIiBzcmM9XCJodHRwczovL3ZpZGVvLmlnZW0ub3JnL3ZpZGVvcy9lbWJlZC8xNjUwMTg2Ny1hNjg3LTQyMDUtOTQ5YS01MWVhZDg3NmUxMDlcIiBmcmFtZWJvcmRlcj1cIjBcIiBhbGxvd2Z1bGxzY3JlZW49XCJcIiBzYW5kYm94PVwiYWxsb3ctc2FtZS1vcmlnaW4gYWxsb3ctc2NyaXB0cyBhbGxvdy1wb3B1cHMgYWxsb3ctZm9ybXNcIj48L2lmcmFtZT4sKi9cclxuICB9LFxyXG4gIHtcclxuICAgIHZvcm5hbWU6IFwiVmlzaXRpbmcgXCIsXHJcbiAgICBuYWNobm5hbWU6IFwidGhlIEhhbm5vdmVyIE1lc3NlXCIsXHJcbiAgICBwaWN0dXJldXJsOiBwaWNzWydoYW5ub3Zlcm1lc3NlJ10sXHJcbiAgICBqb2I6IFwiVGVhbSBpR0VNXCIsXHJcbiAgICBhZmZpbGlhdGlvbjogXCJCaWVsZmVsZCBDZUJpVGVjIDIwMjRcIixcclxuICAgIHRhZzogXCJJbmR1c3RyeVwiLFxyXG4gICAgaGVhZGluZzogXCJUd28gdGVhbW1lbWJlcnMgdmlzaXRlZCB0aGUgZmFpciB0byB0YWxrIHdpdGggcG90ZW50aWFsIHN0YWtlaG9sZGVyIGFuZCBzcG9uc29yc1wiLFxyXG4gICAgaW50ZXJ2aWV3dGFiaWQ6IFwiaGFubm92ZXJtZXNzZVwiLFxyXG5cclxuICAgIHF1b3RlOiBcIlZpc2l0aW5nIEhhbm5vdmVyIE1lc3NlIHdhcyBpbnNwaXJpbmchIFdlIGNvbm5lY3RlZCB3aXRoIGluZHVzdHJ5IGxlYWRlcnMgYW5kIGRpc2NvdmVyZWQgZXhjaXRpbmcgaW5ub3ZhdGlvbnMgaW4gc3ludGhldGljIGJpb2xvZ3kgdGhhdCBjb3VsZCBzaGFwZSBvdXIgZnV0dXJlIHByb2plY3RzLlwiLFxyXG4gICAgcXVvdGVOYWNobmFtZTogXCJTYW5maWxpcG8sIFRlYW1tZW1iZXJcIixcclxuICAgIHF1b3RlVm9ybmFtZTogXCJMaWxpYW5hXCIsXHJcbiAgICBzdW1tYXJ5OiBcIk91ciB0ZWFtIG1lbWJlcnMgaGFkIGEgcHJvZHVjdGl2ZSB2aXNpdCB0byB0aGUgSGFubm92ZXIgTWVzc2UsIGZvY3VzaW5nIG9uIHN5bnRoZXRpYyBiaW9sb2d5IGFuZCByZXNlYXJjaCBhZHZhbmNlbWVudHMuIFRoZXkgZXhwbG9yZWQgaW5ub3ZhdGl2ZSB0ZWNobm9sb2dpZXMgYW5kIG5ldHdvcmtlZCB3aXRoIHBvdGVudGlhbCBzcG9uc29ycywgZ2FpbmluZyB2YWx1YWJsZSBpbnNpZ2h0cyB0byBoZWxwIGVuaGFuY2Ugb3VyIHByb2plY3QgYW5kIGRyaXZlIGZ1dHVyZSBkZXZlbG9wbWVudHMuIFRoZSBldmVudCB3YXMgYSBncmVhdCBvcHBvcnR1bml0eSB0byBjb25uZWN0IHdpdGggaW5kdXN0cnkgbGVhZGVycyBhbmQgbGVhcm4gYWJvdXQgY3V0dGluZy1lZGdlIHNvbHV0aW9ucyBpbiB0aGUgZmllbGQuXCIsXHJcbiAgICBtb250aHM6IFwiQXByaWxcIixcclxuICAgIHBpY3R1cmV1cmxfaW1wbGVtZW50YXRpb246IFwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2hwL2hhbm5vdmVyLTEud2VicFwiLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgdGl0bGU6IFwiUHJvZi4gRHIuXCIsXHJcbiAgICB2b3JuYW1lOiBcIktyaXN0aWFuXCIsXHJcbiAgICBuYWNobm5hbWU6IFwiTVx1MDBGQ2xsZXJcIixcclxuICAgIGpvYjogXCJSZXNlYXJjaCBHcm91cCBDZWxsdWxhciBhbmQgTW9sZWN1bGFyIEJpb3RlY2hub2xvZ3lcIixcclxuICAgIGFmZmlsaWF0aW9uOiBcIlRlY2huaWNhbCBGYWN1bHR5IG9mIEJpZWxlZmVsZCBVbml2ZXJzaXR5XCIsXHJcbiAgICBwaWN0dXJldXJsOiBwaWNzWydrcmlzdGlhbiddLFxyXG4gICAgdGFnOiBcIkFjYWRlbWlhXCIsXHJcbiAgICBoZWFkaW5nOiBcIkRpc2N1c3Npb24gYWJvdXQgdGhlIGRlbGl2ZXJ5IG1ldGhvZC0gQVZWIHZzLiBMTlBzIGFuZCBwcmltZSBlZGl0aW5nIGFuZCBnZW5lIHRoZXJhcHkgaW5ub3ZhdGlvbnNcIixcclxuICAgIGludGVydmlld3RhYmlkOiBcImtyaXN0aWFuXCIsXHJcbiAgICBsYW5ndWFnZTogXCJkZVwiLFxyXG4gICAgcXVvdGVOYWNobmFtZTogXCIgTVx1MDBGQ2xsZXIsIFJlYXNlYXJjaCBFeHBlcnQgZm9yIEdlbmUgVGhlcmFweSBcIixcclxuICAgIHF1b3RlVm9ybmFtZTogXCJQcm9mLiBEci4gS3Jpc3RpYW5uXCIsXHJcbiAgICBxdW90ZTogXCJBQVZzIGhhdmUgYmVlbiB3aWRlbHkgdXNlZCBpbiBnZW5lIHRoZXJhcHksIGJ1dCB0aGVpciBzY2FsYWJpbGl0eSBhbmQgaW1tdW5vZ2VuaWNpdHkgcG9zZSBjaGFsbGVuZ2VzLCBwYXJ0aWN1bGFybHkgd2hlbiByZS1kb3NpbmcgaXMgcmVxdWlyZWQuIEluIGNvbnRyYXN0LCBMTlBzIG9mZmVyIGEgcHJvbWlzaW5nIGFsdGVybmF0aXZlLCB3aXRoIGEgaGlnaGVyIHBhY2thZ2luZyBjYXBhY2l0eSBhbmQgbG93ZXIgaW1tdW5vZ2VuaWNpdHkuIFdoaWxlIEFBVnMgZXhjZWwgaW4gdGFyZ2V0ZWQgZGVsaXZlcnksIExOUHMgY291bGQgYmVjb21lIGEgbW9yZSBzY2FsYWJsZSBhbmQgY29zdC1lZmZlY3RpdmUgc29sdXRpb24gZm9yIGRlbGl2ZXJpbmcgZ2VuZS1lZGl0aW5nIHRvb2xzIGluIHRoZSBmdXR1cmUuXCIsXHJcbiAgICBhaW1vZmNvbnRhY3Q6IFs8cD5UaGUgYWltIG9mIG91ciBpbnRlcnZpZXcgd2l0aCBQcm9mLiBEci4gS3Jpc3RpYW4gTVx1MDBGQ2xsZXIgd2FzIHRvIGdhaW4gZXhwZXJ0IGluc2lnaHRzIGludG8gdGhlIHBvdGVudGlhbCBvZiBwcmltZSBlZGl0aW5nIHRlY2hub2xvZ3kgYW5kIGl0cyBhcHBsaWNhdGlvbiBpbiBnZW5lIHRoZXJhcHksIHBhcnRpY3VsYXJseSBmb3IgdHJlYXRpbmcgQ0YuIFdlIHNvdWdodCB0byB1bmRlcnN0YW5kIGhvdyBpbm5vdmF0aW9ucyBpbiBwcmltZSBlZGl0aW5nLCBjb21iaW5lZCB3aXRoIG9wdGltaXplZCBkZWxpdmVyeSBzeXN0ZW1zLCBjb3VsZCBlbmhhbmNlIHRoZXJhcGV1dGljIG91dGNvbWVzLiBQcm9mLiBNXHUwMEZDbGxlclx1MjAxOXMgZXhwZXJ0aXNlIGluIG1vbGVjdWxhciBiaW9sb2d5IGFuZCBnZW5lIGVkaXRpbmcgcHJvdmlkZWQgdmFsdWFibGUgcGVyc3BlY3RpdmVzIG9uIHRoZSBvcHBvcnR1bml0aWVzIGFuZCBjaGFsbGVuZ2VzIGluIGRldmVsb3BpbmcgcHJlY2lzZSwgZWZmaWNpZW50LCBhbmQgc2FmZSB0cmVhdG1lbnQgc3RyYXRlZ2llcyBmb3IgZ2VuZXRpYyBkaXNvcmRlcnMuPC9wPl0sXHJcbiAgICBpbnNpZ2h0czogWzxwPkR1cmluZyB0aGUgaW50ZXJ2aWV3LCBQcm9mLiBEci4gTVx1MDBGQ2xsZXIgaGlnaGxpZ2h0ZWQgdGhlIGdyb3dpbmcgaW1wb3J0YW5jZSBvZiBwcmltZSBlZGl0aW5nIGFzIGEgcG93ZXJmdWwgdG9vbCBmb3IgZ2VuZSB0aGVyYXB5LiBVbmxpa2UgdHJhZGl0aW9uYWwgQ1JJU1BSLUNhcyBzeXN0ZW1zLCB3aGljaCBvZnRlbiByZXN1bHQgaW4gZG91YmxlLXN0cmFuZCBETkEgYnJlYWtzLCBwcmltZSBlZGl0aW5nIGFsbG93cyBmb3IgcHJlY2lzZSBzaW5nbGUtc3RyYW5kIGN1dHMsIG1pbmltaXppbmcgb2ZmLXRhcmdldCBlZmZlY3RzIGFuZCBlbmFibGluZyBtb3JlIHNwZWNpZmljIGdlbmV0aWMgY29ycmVjdGlvbnMuIFRoaXMgdGVjaG5vbG9neSBvcGVucyB1cCBuZXcgcG9zc2liaWxpdGllcyBmb3IgdHJlYXRpbmcgZGlzZWFzZXMgd2l0aCBrbm93biBtdXRhdGlvbnMsIHN1Y2ggYXMgIEN5c3RpYyBGaWJyb3Npcy4gXHJcbiAgICAgIFByb2YuIERyLiBLcmlzdGlhbiBNXHUwMEZDbGxlciBlbXBoYXNpemVkIHRoZSBjcml0aWNhbCByb2xlIG9mIGRlbGl2ZXJ5IHN5c3RlbXMgaW4gdGhlIHN1Y2Nlc3Mgb2YgZ2VuZSB0aGVyYXBpZXMsIHBhcnRpY3VsYXJseSBpbiB0aGUgY29udGV4dCBvZiBDRiB0cmVhdG1lbnQuIFR3byBwcmltYXJ5IGRlbGl2ZXJ5IG1lY2hhbmlzbXMgd2VyZSBkaXNjdXNzZWQ6IEFBVnMgKEFkZW5vLWFzc29jaWF0ZWQgdmlydXNlcykgYW5kIExOUHMgKExpcGlkIG5hbm9wYXJ0aWNsZXMpLCBlYWNoIHdpdGggZGlzdGluY3QgYWR2YW50YWdlcyBhbmQgbGltaXRhdGlvbnMuXHJcbiAgICAgIEFBVnMgYXJlIGEgd2VsbC1lc3RhYmxpc2hlZCB2ZWhpY2xlIGluIGdlbmUgdGhlcmFweSwgaGF2aW5nIGJlZW4gdXNlZCBzdWNjZXNzZnVsbHkgaW4gdmFyaW91cyBhcHByb3ZlZCB0cmVhdG1lbnRzLiBUaGV5IGFyZSBoaWdobHkgZWZmaWNpZW50IGF0IGRlbGl2ZXJpbmcgZ2VuZXRpYyBtYXRlcmlhbCB0byB0YXJnZXQgY2VsbHMsIGVzcGVjaWFsbHkgaW4gd2VsbC1jaGFyYWN0ZXJpemVkIGRpc2Vhc2VzIGxpa2UgQ0YuIE9uZSBvZiB0aGVpciBrZXkgc3RyZW5ndGhzIGlzIHRoZWlyIGFiaWxpdHkgdG8gcHJlY2lzZWx5IHRhcmdldCBzcGVjaWZpYyB0aXNzdWVzLCBtYWtpbmcgdGhlbSBwYXJ0aWN1bGFybHkgdmFsdWFibGUgZm9yIGx1bmcgZGVsaXZlcnkgaW4gIEN5c3RpYyBGaWJyb3Npcy4gSG93ZXZlciwgQUFWcyBjb21lIHdpdGggbm90YWJsZSBjaGFsbGVuZ2VzLCBwcmltYXJpbHkgdGhlaXIgbGltaXRlZCBwYWNrYWdpbmcgY2FwYWNpdHkgKGFwcHJveGltYXRlbHkgNC41IGtpbG9iYXNlcyksIHdoaWNoIGNvbnN0cmFpbnMgdGhlIHNpemUgb2YgdGhlIGdlbmV0aWMgcGF5bG9hZCB0aGV5IGNhbiBjYXJyeS4gQWRkaXRpb25hbGx5LCBBQVZzIGNhbiBlbGljaXQgaW1tdW5lIHJlc3BvbnNlcywgcGFydGljdWxhcmx5IHdoZW4gbXVsdGlwbGUgZG9zZXMgYXJlIHJlcXVpcmVkLCBwb3NpbmcgYSBiYXJyaWVyIHRvIHRoZWlyIGxvbmctdGVybSB1c2UuXHJcbiAgICAgIE9uIHRoZSBvdGhlciBoYW5kLCBMTlBzIG9mZmVyIGEgc2NhbGFibGUgYW5kIHJlLWRvc2FibGUgYWx0ZXJuYXRpdmUuIExOUHMgaGF2ZSB0aGUgYWR2YW50YWdlIG9mIGEgbGFyZ2VyIHBhY2thZ2luZyBjYXBhY2l0eSwgYWxsb3dpbmcgdGhlbSB0byBjYXJyeSBtb3JlIGNvbXBsZXggZ2VuZXRpYyBpbnN0cnVjdGlvbnMgb3IgbGFyZ2VyIGdlbmUtZWRpdGluZyB0b29scywgc3VjaCBhcyBwcmltZSBlZGl0b3JzLiBUaGV5IGFyZSBhbHNvIGVhc2llciBhbmQgY2hlYXBlciB0byBwcm9kdWNlIG9uIGEgbGFyZ2Ugc2NhbGUsIG1ha2luZyB0aGVtIGFuIGF0dHJhY3RpdmUgb3B0aW9uIGZvciB3aWRlc3ByZWFkIGNsaW5pY2FsIGFwcGxpY2F0aW9ucy4gQSBzaWduaWZpY2FudCBiZW5lZml0IG9mIExOUHMgaXMgdGhlaXIgbG93ZXIgaW1tdW5vZ2VuaWNpdHksIHdoaWNoIHJlZHVjZXMgdGhlIHJpc2sgb2YgYWR2ZXJzZSBpbW11bmUgcmVhY3Rpb25zIHVwb24gcmVwZWF0ZWQgZG9zaW5nLiBIb3dldmVyLCBMTlBzIGN1cnJlbnRseSBmYWNlIGNoYWxsZW5nZXMgaW4gc3BlY2lmaWMgdGFyZ2V0aW5nIGNvbXBhcmVkIHRvIEFBVnMuIEFBVnMgaGF2ZSBhIGhpZ2hlciBwcmVjaXNpb24gaW4gdGFyZ2V0aW5nIHNwZWNpZmljIHRpc3N1ZXMsIHdoaWxlIExOUHMgc3RpbGwgbmVlZCBvcHRpbWl6YXRpb24gZm9yIHRhcmdldGVkIGRlbGl2ZXJ5IHRvIGFyZWFzIGxpa2UgdGhlIGx1bmdzLjwvcD5dLFxyXG4gICAgaW1wbGVtZW50YXRpb246IFs8cD5Qcm9mLiBNXHUwMEZDbGxlclx1MjAxOXMgaW5zaWdodHMgZGlyZWN0bHkgaW5mb3JtIHRoZSBpbXBsZW1lbnRhdGlvbiBvZiBvdXIgaUdFTSBwcm9qZWN0LCB3aGVyZSB3ZSBhaW0gdG8gZGVzaWduIG5vdmVsIHByaW1lIGVkaXRvcnMgdGhhdCBhcmUgc21hbGwgZW5vdWdoIHRvIGJlIGRlbGl2ZXJlZCBlZmZpY2llbnRseSwgd2hpbGUgYWxzbyBleHBsb3JpbmcgTE5QcyA8T3VyTGluayBwYXRoPSdlbmdpbmVlcmluZyd0YWJJZD0nZGVsaXZlcnknIHNjcm9sbFRvSWQ9J2RlbDFoZWFkJyB0ZXh0PVwiZXhwbG9yaW5nIExOUHNcIi8+IGFzIGEgc2NhbGFibGUgYW5kIHJlLWRvc2FibGUgYWx0ZXJuYXRpdmUgdG8gQUFWcy4gQnkgdGFpbG9yaW5nIG91ciBhcHByb2FjaCB0byBhZGRyZXNzIHRoZSBzcGVjaWZpYyBjaGFsbGVuZ2VzIG9mIENGLCBzdWNoIGFzIG11Y3VzIHBlbmV0cmF0aW9uIGFuZCBsdW5nIGNlbGwgdGFyZ2V0aW5nLCB3ZSBjYW4gZW5oYW5jZSB0aGUgcHJlY2lzaW9uIGFuZCBlZmZpY2FjeSBvZiBnZW5lIHRoZXJhcHkuIFRoZXNlIGlubm92YXRpb25zIGhhdmUgdGhlIHBvdGVudGlhbCB0byBzZXQgbmV3IHN0YW5kYXJkcyBpbiB0aGUgZmllbGQgYW5kIGNvbnRyaWJ1dGUgdG8gYnJvYWRlciByZXNlYXJjaCBvbiBnZW5ldGljIGRpc2Vhc2UgdHJlYXRtZW50LjwvcD5dLFxyXG4gICAgc3VtbWFyeTogWzxwPkluIG91ciBpbnRlcnZpZXcgd2l0aCBQcm9mLiBEci4gS3Jpc3RpYW4gTVx1MDBGQ2xsZXIsIHdlIGV4cGxvcmVkIHRoZSByZXZvbHV0aW9uYXJ5IHBvdGVudGlhbCBvZiBwcmltZSBlZGl0aW5nIGFzIGEgbmV4dC1nZW5lcmF0aW9uIGdlbmUgZWRpdGluZyB0ZWNobm9sb2d5LiBQcm9mLiBNXHUwMEZDbGxlciBoaWdobGlnaHRlZCB0aGUgYWR2YW50YWdlcyBvZiBwcmltZSBlZGl0aW5nIG92ZXIgdHJhZGl0aW9uYWwgQ1JJU1BSLUNhcyBzeXN0ZW1zLCBwYXJ0aWN1bGFybHkgaXRzIGFiaWxpdHkgdG8gbWFrZSBwcmVjaXNlIGdlbmV0aWMgbW9kaWZpY2F0aW9ucyB3aXRob3V0IGRvdWJsZS1zdHJhbmQgYnJlYWtzLCB0aHVzIHJlZHVjaW5nIG9mZi10YXJnZXQgZWZmZWN0cy4gSGUgZW1waGFzaXplZCB0aGUgaW1wb3J0YW5jZSBvZiBvcHRpbWl6aW5nIGRlbGl2ZXJ5IHN5c3RlbXMsIHN1Y2ggYXMgPE91ckxpbmsgcGF0aD0nZW5naW5lZXJpbmcndGFiSWQ9J2RlbGl2ZXJ5JyBzY3JvbGxUb0lkPSdkZWwxaGVhZCcgdGV4dD1cIkFBViBhbmQgTE5Qc1wiLz4sIGFuZCBkaXNjdXNzZWQgdGhlIGV0aGljYWwgY29uc2lkZXJhdGlvbnMgYW5kIGJpb3NhZmV0eSBtZWFzdXJlcyBjcnVjaWFsIGZvciBhZHZhbmNpbmcgZ2VuZSB0aGVyYXB5LiBUaGUgaW50ZXJ2aWV3IHVuZGVyc2NvcmVkIHRoZSBzaWduaWZpY2FuY2Ugb2YgIEN5c3RpYyBGaWJyb3NpcyBhcyBhIG1vZGVsIGRpc2Vhc2UsIGdpdmVuIGl0cyBwcmV2YWxlbmNlIGFuZCB0aGUgcG90ZW50aWFsIGZvciBpbXBhY3RmdWwgdHJlYXRtZW50cyB0aHJvdWdoIHRhcmdldGVkIGdlbmV0aWMgY29ycmVjdGlvbnMuPC9wPl0sXHJcbiAgICBtb250aHM6IFwiQXByaWxcIixcclxuICAgIGludGVydmlldzo8PjxpZnJhbWUgdGl0bGU9XCJCaWVsZWZlbGQtQ2VCaVRlYzogSW50ZXJ2aWV3IE1cdTAwRkNsbGVyIEFBViB2cyBMTlAgKDIwMjQpIFtFbmdsaXNoXVwiIHdpZHRoPVwiNTYwXCIgaGVpZ2h0PVwiMzE1XCIgc3JjPVwiaHR0cHM6Ly92aWRlby5pZ2VtLm9yZy92aWRlb3MvZW1iZWQvMDYxM2I2YjgtNzc1NS00MzczLTlkODYtOTkxMGZlMzA3ODFmXCIgZnJhbWVCb3JkZXI9XCIwXCIgYWxsb3dGdWxsU2NyZWVuPXt0cnVlfSBzYW5kYm94PVwiYWxsb3ctc2FtZS1vcmlnaW4gYWxsb3ctc2NyaXB0cyBhbGxvdy1wb3B1cHMgYWxsb3ctZm9ybXNcIj48L2lmcmFtZT48cD5UaGlzIGludGVydmlldyB3YXMgcmVjb3JkZWQgb24gdmlkZW8gYXQgYSBsYXRlciBkYXRlLjwvcD48Lz4sXHJcbiAgfSxcclxuICB7XHJcbiAgICB2b3JuYW1lOiBcIkxvb2tpbmcgZm9yIGV4cGVydGlzZVwiLFxyXG4gICAgbmFjaG5uYW1lOiBcIlwiLFxyXG4gICAgcGljdHVyZXVybDogcGljc1snbG9nbyddLFxyXG4gICAgam9iOiBcIlRlYW0gaUdFTVwiLFxyXG4gICAgYWZmaWxpYXRpb246IFwiQmllbGZlbGQgQ2VCaVRlYyAyMDI0XCIsXHJcbiAgICB0YWc6IFwiTWlsZXN0b25lXCIsXHJcbiAgICBoZWFkaW5nOiBcIklkZW50aWZ5aW5nIGtleSBleHBlcnRzIGluICBDeXN0aWMgRmlicm9zaXMgYW5kIHByaW1lIGVkaXRpbmdcIixcclxuICAgIGludGVydmlld3RhYmlkOiBcImV4cGVydHNcIixcclxuXHJcbiAgICBxdW90ZTogXCJGb2N1c2luZyBvbiBnZW5lIHRoZXJhcHkgZm9yICBDeXN0aWMgRmlicm9zaXMgaGFzIGJlZW4gYSBtZWFuaW5nZnVsIGpvdXJuZXkgZm9yIG91ciB0ZWFtLiBDb2xsYWJvcmF0aW5nIHdpdGggZXhwZXJ0cyBoYXMgZW5yaWNoZWQgb3VyIHVuZGVyc3RhbmRpbmcgYW5kIGhlbHBlZCB1cyByZWZpbmUgb3VyIGFwcHJvYWNoLCBlc3BlY2lhbGx5IGluIGV4cGxvcmluZyBwcmltZSBlZGl0aW5nLiBXZSdyZSBlYWdlciB0byB0dXJuIG91ciBwbGFucyBpbnRvIHJlYWxpdHkgYW5kIG1ha2UgYSByZWFsIGltcGFjdFwiLFxyXG4gICAgcXVvdGVOYWNobmFtZTpcIkthbnRoYWssIFRlYW1tZW1iZXJcIixcclxuICAgIHF1b3RlVm9ybmFtZTogXCJLYWlcIixcclxuICAgIHR5cGU6IFwibWV0YVwiLFxyXG4gICAgc3VtbWFyeTogWzxwPkFmdGVyIG91ciB0ZWFtIGNhbWUgdG9nZXRoZXIgYW5kIHRob3JvdWdobHkgZXhwbG9yZWQgdmFyaW91cyBwcm9qZWN0IGlkZWFzLCB3ZSBkZWNpZGVkIHRvIGZvY3VzIG9uIGdlbmUgdGhlcmFweSBmb3IgIEN5c3RpYyBGaWJyb3NpcywgbGFyZ2VseSBkdWUgdG8gYSBwZXJzb25hbCBjb25uZWN0aW9uIHdpdGggYSBjbG9zZSBmcmllbmQgYWZmZWN0ZWQgYnkgdGhlIGNvbmRpdGlvbi4gVXAgdW50aWwgdGhhdCBwb2ludCwgd2UgaGFkIG5vdCB5ZXQgZGV2ZWxvcGVkIGEgY29uY3JldGUgY29uY2VwdCwgc28gd2Ugc291Z2h0IHRvIGVuZ2FnZSB3aXRoIGV4cGVydHMgaW4gb3JkZXIgdG8gYnJvYWRlbiBvdXIgdW5kZXJzdGFuZGluZyBvZiB0aGUgbGF0ZXN0IGFkdmFuY2VtZW50cyBpbiBnZW5lIHRoZXJhcHkuXHJcbiAgICAgIEluIGFkZGl0aW9uIHRvIGdyYXNwaW5nIHRoZSBpbXBvcnRhbmNlIG9mIGEgZnVuY3Rpb25hbCBnZW5lIHRoZXJhcHksIHdlIGRlbHZlZCBpbnRvIGRpZmZlcmVudCBzdHJhdGVnaWVzIHJlZ2FyZGluZyB0aGUgdW5kZXJseWluZyBtZWNoYW5pc21zIGFuZCB0aGUgYmVzdCBkZWxpdmVyeSBtZXRob2RzIGZvciB0aGUgdGhlcmFweS4gV2hpbGUgdGhlIGdlbmVyYWwgdG9waWMgb2Ygb3VyIHByb2plY3Qgd2FzIGNsZWFyLCB3ZSBub3cgZmFjZWQgdGhlIGNoYWxsZW5nZSBvZiB3b3JraW5nIG91dCB0aGUgZGV0YWlscy4gQXQgdGhpcyBzdGFnZSwgd2UgZGVjaWRlZCB0byBjb25zdWx0IGZ1cnRoZXIgZXhwZXJ0cyBpbiB0aGUgZmllbGQgb2YgIEN5c3RpYyBGaWJyb3NpcyB0byBkZWVwZW4gb3VyIGtub3dsZWRnZSBhbmQgcmVmaW5lIG91ciBhcHByb2FjaC5cclxuICAgICAgVGhyb3VnaCBjb25uZWN0aW9ucyB3aXRoIHRoZSBVbml2ZXJzaXR5IEhvc3BpdGFsIE1cdTAwRkNuc3RlciBhbmQgb3VyIGxvY2FsIGhvc3BpdGFsLCB3ZSBhaW1lZCB0byBnYWluIGEgY29tcHJlaGVuc2l2ZSBvdmVydmlldyBvZiB0aGUgY2xpbmljYWwgYXBwbGljYXRpb25zIG9mIGdlbmUgdGhlcmFweSBhbmQgdGhlIGN1cnJlbnQgcmVzZWFyY2ggaW4gIEN5c3RpYyBGaWJyb3Npcy4gVGhlc2UgY29uc3VsdGF0aW9ucyB3aXRoIHNwZWNpYWxpc3RzIGFsbG93ZWQgdXMgdG8gYWNxdWlyZSB2YWx1YWJsZSBpbnNpZ2h0cyBpbnRvIGRpZmZlcmVudCB0aGVyYXBldXRpYyBvcHRpb25zIGFuZCBsYWlkIHRoZSBncm91bmR3b3JrIGZvciBvdXIgb3duIGV4cGxvcmF0aW9uIG9mIHBvdGVudGlhbCBzdHJhdGVnaWVzLCBwYXJ0aWN1bGFybHkgaW4gdGhlIGFyZWEgb2YgcHJpbWUgZWRpdGluZyBhcyBhIHByb21pc2luZyB0cmVhdG1lbnQgYXZlbnVlLjwvcD4sXHJcbiAgICAgIDx1bD5cclxuICAgICAgPGxpPlxyXG4gICAgICAgICAgPGI+VGVhbSBGb3JtYXRpb24gJiBSZXNlYXJjaDo8L2I+IENob3NlIGdlbmUgdGhlcmFweSBmb3IgIEN5c3RpYyBGaWJyb3NpcyBhbmQgZXhwbG9yZWQgbWVjaGFuaXNtcyBhbmQgZGVsaXZlcnkgc3RyYXRlZ2llcy5cclxuICAgICAgPC9saT5cclxuICAgICAgPGxpPlxyXG4gICAgICAgICAgPGI+RXhwZXJ0IEVuZ2FnZW1lbnQ6PC9iPiBDb25zdWx0ZWQgd2l0aCBzcGVjaWFsaXN0cyB0byByZWZpbmUgYXBwcm9hY2gsIGZvY3VzaW5nIG9uIHByaW1lIGVkaXRpbmcuXHJcbiAgICAgIDwvbGk+XHJcbiAgICAgIDxsaT5cclxuICAgICAgICAgIDxiPk1lZGljYWwgQ29sbGFib3JhdGlvbjo8L2I+IEdhaW5lZCBjbGluaWNhbCBpbnNpZ2h0cyB0aHJvdWdoIHBhcnRuZXJzaGlwcyB3aXRoIGhvc3BpdGFscy5cclxuICAgICAgPC9saT5cclxuICAgICAgPGxpPlxyXG4gICAgICAgICAgPGI+UHJvamVjdCBEZXZlbG9wbWVudDo8L2I+IERldmVsb3BlZCBkZXRhaWxlZCBwbGFucyBmb3IgZ2VuZSB0aGVyYXB5LCBpbmNvcnBvcmF0aW5nIGV4cGVydCBmZWVkYmFjay5cclxuICAgICAgPC9saT5cclxuICAgICAgPGxpPlxyXG4gICAgICAgICAgPGI+VGVzdGluZyAmIEZ1dHVyZSBBcHBsaWNhdGlvbjo8L2I+IFBsYW4gdG8gdGVzdCBzdHJhdGVnaWVzIGFuZCBwcmVwYXJlIGZvciBwb3RlbnRpYWwgY2xpbmljYWwgdHJpYWxzLlxyXG4gICAgICA8L2xpPlxyXG4gIDwvdWw+XHJcbiAgIFxyXG4gICAgXSxcclxuICAgIFxyXG4gICAgbW9udGhzOiBcIkFwcmlsXCJcclxuICB9LFxyXG4gIHtcclxuICAgIHZvcm5hbWU6IFwiVmlzaXRpbmcgXCIsXHJcbiAgICBuYWNobm5hbWU6IFwidGhlIExhYnN1cHBseSBpbiBNXHUwMEZDbnN0ZXJcIixcclxuICAgIHBpY3R1cmV1cmw6IHBpY3NbJ2xhYnN1cHBseSddLFxyXG4gICAgam9iOiBcIlRlYW0gaUdFTVwiLFxyXG4gICAgYWZmaWxpYXRpb246IFwiQmllbGZlbGQgQ2VCaVRlYyAyMDI0XCIsXHJcbiAgICB0YWc6IFwiSW5kdXN0cnlcIixcclxuICAgIGhlYWRpbmc6IFwiVHdvIHRlYW0gbWVtYmVycyBjb25uZWN0ZWQgd2l0aCBwcm9zcGVjdGl2ZSBzdGFrZWhvbGRlcnMgYW5kIHNwb25zb3JzLlwiLFxyXG4gICAgaW50ZXJ2aWV3dGFiaWQ6IFwibGFic3VwcGx5XCIsXHJcblxyXG4gICAgcXVvdGU6IFwiTGFiU3VwcGx5IGluIE1cdTAwRkNuc3RlciB3YXMgYSBmYW50YXN0aWMgb3Bwb3J0dW5pdHkgdG8gY29ubmVjdCB3aXRoIHBhc3Npb25hdGUgcHJvZmVzc2lvbmFscyBhbmQgZXhwbG9yZSBjdXR0aW5nLWVkZ2UgcmVzZWFyY2ggdG9vbHMuIFdlJ3JlIGV4Y2l0ZWQgYWJvdXQgdGhlIHBvdGVudGlhbCBjb2xsYWJvcmF0aW9ucyBhaGVhZCFcIixcclxuICAgIHF1b3RlTmFjaG5hbWU6IFwiU2FuZmlsaXBwbywgVGVhbW1lbWJlclwiLFxyXG4gICAgcXVvdGVWb3JuYW1lOiBcIkxpbGlhbmFcIixcclxuICAgIHN1bW1hcnk6IFwiSW4gQXByaWwgb3VyIHRlYW0gdmlzaXRlZCBMYWJTdXBwbHkgaW4gTVx1MDBGQ25zdGVyLCB3aGVyZSB3ZSBoYWQgdGhlIGNoYW5jZSB0byBjb25uZWN0IHdpdGggbWFueSB3ZWxjb21pbmcgYW5kIGtub3dsZWRnZWFibGUgcHJvZmVzc2lvbmFscyBpbiB0aGUgbGFiIGVxdWlwbWVudCBmaWVsZC4gSXQgd2FzIGFuIGV4Y2VsbGVudCBvcHBvcnR1bml0eSB0byBleHBsb3JlIHRoZSBsYXRlc3QgYWR2YW5jZW1lbnRzIGluIGxhYm9yYXRvcnkgc3VwcGxpZXMgYW5kIHRvb2xzIHRoYXQgY2FuIGVuaGFuY2Ugb3VyIHJlc2VhcmNoLlwiLFxyXG4gICAgbW9udGhzOiBcIkFwcmlsXCIsXHJcbiAgICBwaWN0dXJldXJsX2FpbTogXCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvaHAvbGFic3VwcGx5LndlYnBcIixcclxuICB9LFxyXG4gIHtcclxuICAgIHZvcm5hbWU6IFwiUHJvZi4gRHIuIFdvbGYtTWljaGFlbCBXZWJlclwiLFxyXG4gICAgbmFjaG5uYW1lOiBcInVuZCBEci4gSlx1MDBGNnJnIEdyb1x1MDBERmUtT25uZWJyaW5rXCIsXHJcbiAgICBqb2I6IFwiUHJvZmVzc29yIFwiLFxyXG4gICAgYWZmaWxpYXRpb246IFwiVW5pdmVzaXR5IE1cdTAwRkNuc3RlclwiLFxyXG4gICAgcGljdHVyZXVybDogcGljc1snd2ViZXInXSxcclxuICAgIHRhZzogXCJBY2FkZW1pYVwiLFxyXG4gICAgaGVhZGluZzogXCJGZWVkYmFjayBTZXNzaW9uIHdpdGggRXhwZXJ0cyBmb3IgQ3lzdGljIEZpYnJvc2lzIFRyZWF0bWVudFwiLFxyXG4gICAgaW50ZXJ2aWV3dGFiaWQ6IFwid2ViZXJcIixcclxuXHJcbiAgICBsYW5ndWFnZTogXCJlblwiLFxyXG4gICAgcXVvdGVOYWNobmFtZTpcIldlYmVyXCIsXHJcbiAgICBxdW90ZVZvcm5hbWU6IFwiUHJvZi4gRHIuIFdvbGYtTWljaGFlbFwiLFxyXG4gICAgcXVvdGU6IFwiVGhpcyBpcyBhbHNvIGFuIGlubm92YXRpdmUgc3RlcCB0aGF0IHlvdSBoYXZlIGRldmVsb3BlZCB5b3Vyc2VsdmVzLiBUaGF0J3MgdGhlIHBhcnQgdGhhdCdzIHJlYWxseSBuZXcgYW5kIHNpZ25pZmljYW50LiBBIGNsZXZlciBhbmQgZXhjaXRpbmcgYXBwcm9hY2ggd2l0aCBncmVhdCBwb3RlbnRpYWwuXCIsXHJcbiAgICBhaW1vZmNvbnRhY3Q6IFs8cD5UaGUgYWltIG9mIHRoZSBpbnRlcnZpZXcgd2FzIHRvIGdhaW4gZXhwZXJ0IGluc2lnaHRzIG9uIG9wdGltaXppbmcgdGhlIGRlbGl2ZXJ5IG9mIENGVFItbVJOQSB2aWEgbHVuZy10YXJnZXRlZCBsaXBpZCBuYW5vcGFydGljbGVzIChMTlBzKSBmb3IgIEN5c3RpYyBGaWJyb3NpcyAoQ0YpIHRyZWF0bWVudC5cclxuICAgICAgU3BlY2lmaWNhbGx5LCB0aGUgZ29hbCB3YXMgdG8gZXhwbG9yZSBwb3RlbnRpYWwgY2VsbCB0YXJnZXRzLCBjaGFsbGVuZ2VzIGluIGRlbGl2ZXJ5IG1lY2hhbmlzbXMsIGFuZCB0ZWNobmljYWwgdG9vbHMgZm9yIGFzc2Vzc2luZyB0aGUgZWZmZWN0aXZlbmVzcyBvZiBtUk5BIHRoZXJhcGllcyBsaWtlIHRoZSBVc3NpbmcgY2hhbWJlciBzeXN0ZW0uIDwvcD5dLFxyXG4gICAgaW5zaWdodHM6IFs8cD5UaGUgZXhwZXJ0cyBoaWdobGlnaHRlZCB0aGUgcG90ZW50aWFsIG9mIHRhcmdldGluZyBpb25vY3l0ZXMsIGdpdmVuIHRoZWlyIGtleSByb2xlIGluIENGVFIgZXhwcmVzc2lvbiwgYnV0IGVtcGhhc2l6ZWQgdGhlIGRpZmZpY3VsdHkgaW4gYWNjZXNzaW5nIHRoZW0gZHVlIHRvIHRoZWlyIGJhc2FsIHBvc2l0aW9uIGluIHRoZSByZXNwaXJhdG9yeSBlcGl0aGVsaXVtLlxyXG4gICAgICBXaGlsZSBQcm9mLiBXZWJlciBmb3VuZCBpb25vY3l0ZXMgdG8gYmUgYW4gaW50cmlndWluZyB0YXJnZXQsIERyLiBHcm9cdTAwREZlLU9ubmVicmluayBwb2ludGVkIG91dCB0aGF0IHRoZXJlIGlzIHN0aWxsIGxpbWl0ZWQgdW5kZXJzdGFuZGluZyBvZiB0aGVpciBleGFjdCByb2xlIGluIENGIHBhdGhvbG9neS4gQm90aCBzdHJlc3NlZCB0aGUgY2hhbGxlbmdlIG9mIHBlbmV0cmF0aW5nIHRoZVxyXG4gICAgICBtdWN1cyBiYXJyaWVyIGluIHZpdm8sIHBhcnRpY3VsYXJseSB3aGVuIHVzaW5nIGFpci1saXF1aWQgaW50ZXJmYWNlIGN1bHR1cmVzLCBhbmQgdW5kZXJzY29yZWQgdGhlIGltcG9ydGFuY2Ugb2Ygb3B0aW1pemluZyBwYXJ0aWNsZSBzaXplIHRvIGVuc3VyZSBlZmZlY3RpdmUgZGVsaXZlcnkgdG8gdGhlIGRlZXBlciByZWdpb25zIG9mIHRoZSBsdW5ncy5cclxuICAgICAgUHJvZi4gV2ViZXIgYWxzbyBlbXBoYXNpemVkIHRoZSBuZWVkIHRvIHRlc3Qgd2hldGhlciB0aGUgc3lzdGVtIGNhbiBzdGlsbCB0cmFuc2ZlY3QgY2VsbHMgaW4gdGhlIHByZXNlbmNlIG9mIG11Y3VzLiA8L3A+LFxyXG4gICAgPHA+SXQgd2FzIHN1Z2dlc3RlZCB0byB1c2UgdGhlIFVzc2luZyBjaGFtYmVyIHRvIGFzc2VzcyB0aGUgZWZmZWN0aXZlbmVzcyBvZiB0aGUgZGVsaXZlcnkgc3lzdGVtIGFuZCB0aGVyYXBldXRpYyBtUk5BLCB0aG91Z2ggdGhleSBub3RlZCBjZXJ0YWluIGNoYWxsZW5nZXMgd2l0aCB0aGlzIHRlY2huaXF1ZS4gV2UgYWxzbyBkaXNjdXNzZWQgYWx0ZXJuYXRpdmVzIGxpa2Ugb3JnYW5vaWRzLFxyXG4gICAgICB3aGljaCBvZmZlciBvbmx5IGluZGlyZWN0IG1lYXN1cmVtZW50cyBvZiBDRlRSIGZ1bmN0aW9uLCBhbmQgcGF0Y2ggY2xhbXBpbmcsIHdoaWNoLCB0aG91Z2ggbW9yZSBwcmVjaXNlLCBpcyBhIG1vcmUgY29tcGxleCBhbmQgZXhwZW5zaXZlIG1ldGhvZC4gQWRkaXRpb25hbGx5LCBQcm9mLiBXZWJlciByZWNvbW1lbmRlZCBleHBsb3JpbmcgY2hpdG9zYW4tYmFzZWQgZGVsaXZlcnlcclxuICAgICAgc3lzdGVtcyBkdWUgdG8gdGhlaXIgc3VjY2VzcyBpbiBoaXMgcHJldmlvdXMgd29yaywgc3VnZ2VzdGluZyB0aGV5IGNvdWxkIGJlIGEgc2FmZXIgYWx0ZXJuYXRpdmUgdG8gUEVHLWxpcGlkIHN5c3RlbXMsIHdoaWNoIGhhZCBzaG93biBpc3N1ZXMgd2l0aCBjeXRvdG94aWNpdHkuIDwvcD5dLFxyXG4gICAgaW1wbGVtZW50YXRpb246IFs8cD5UaGVzZSBpbnNpZ2h0cyBoZWxwZWQgcmVmaW5lIG91ciBpR0VNIHByb2plY3QgaW4gc2V2ZXJhbCBrZXkgd2F5czpcclxuICAgICAgPHVsPlxyXG4gICAgICAgIDxsaT5DZWxsIFRhcmdldGluZzogV2UgZGVjaWRlZCB0byBjb250aW51ZSBleHBsb3JpbmcgaW9ub2N5dGVzIGFzIGEgdGFyZ2V0IGJ1dCBhY2tub3dsZWRnZWQgdGhlIHRlY2huaWNhbCBodXJkbGVzIGludm9sdmVkLiBXZSBhbHNvIGV4cGFuZGVkIG91ciBmb2N1cyB0byBpbmNsdWRlIG11bHRpcGxlIGNlbGwgdHlwZXMgdG8gdGVzdCBkaWZmZXJlbnQgZGVsaXZlcnkgc3lzdGVtcy4gPC9saT5cclxuICAgICAgICA8bGk+RGVsaXZlcnkgU3lzdGVtczogV2UgYmVnYW4gaW52ZXN0aWdhdGluZyBjaGl0b3Nhbi1iYXNlZCBuYW5vcGFydGljbGVzIGFzIGEgc2FmZXIgYWx0ZXJuYXRpdmUgdG8gUEVHLWxpcGlkIHN5c3RlbXMuIFRoZSBzdWdnZXN0aW9uIHRvIG9wdGltaXplIHBhcnRpY2xlIHNpemUgYW5kIGRlbGl2ZXJ5IGZvciBpbmhhbGF0aW9uIHdhcyBhbHNvIGludGVncmF0ZWQgaW50byBvdXIgZGVzaWduLiA8L2xpPlxyXG4gICAgICAgIDxsaT5FeHBlcmltZW50YWwgVG9vbHM6IEJhc2VkIG9uIHRoZSBkaXNjdXNzaW9uLCB3ZSBwbGFuIHRvIHVzZSBhbiBVc3NpbmcgY2hhbWJlciB0byBtZWFzdXJlIG92ZXJhbGwgQ0ZUUiBmdW5jdGlvbiBpbiBkaWZmZXJlbnQgY2VsbCB0eXBlcyBidXQgd2lsbCBhbHNvIGV4cGxvcmUgb3JnYW5vaWQtYmFzZWQgYXBwcm9hY2hlcyBmb3IgcHJlbGltaW5hcnkgdGVzdGluZy4gQWRkaXRpb25hbGx5LCB3ZSBjb25zdWx0ZWQgdGhlIG1lZGljYWwgZmFjdWx0eSBvbiB0aGUgcG9zc2liaWxpdHkgb2YgdXNpbmcgcGF0Y2ggY2xhbXBpbmcgZm9yIG1vcmUgZGV0YWlsZWQgbWVhc3VyZW1lbnRzIG9mIHN1Y2Nlc3NmdWwgdHJhbnNmZWN0aW9uIGFuZCByZXN0b3JlZCBDRlRSIGZ1bmN0aW9uLiA8L2xpPlxyXG4gICAgICA8L3VsPixcclxuICAgIDwvcD5dLFxyXG4gICAgc3VtbWFyeTogXCJUaGUgaW50ZXJ2aWV3IHByb3ZpZGVkIGtleSBpbnNpZ2h0cyBpbnRvIHRhcmdldGluZyBpb25vY3l0ZXMgZm9yIENGVFItbVJOQSBkZWxpdmVyeSwgb3ZlcmNvbWluZyBtdWN1cyBiYXJyaWVycywgYW5kIHRlc3RpbmcgZGVsaXZlcnkgZWZmZWN0aXZlbmVzcyB1c2luZyBVc3NpbmcgY2hhbWJlcnMsIG9yZ2Fub2lkcywgYW5kIHBhdGNoIGNsYW1waW5nLCB3aGlsZSBhbHNvIHN1Z2dlc3RpbmcgY2hpdG9zYW4tYmFzZWQgbmFub3BhcnRpY2xlcyBhcyBhIHNhZmVyIGFsdGVybmF0aXZlIHRvIFBFRy1saXBpZCBzeXN0ZW1zLlwiLFxyXG4gICAgbW9udGhzOiBcIm1heVwiXHJcbiAgfSxcclxuICB7XHJcbiAgICB0aXRsZTogXCJEci5cIixcclxuICAgIHZvcm5hbWU6IFwiQ3Jpc3RpYW4tR2FicmllbFwiLFxyXG4gICAgbmFjaG5uYW1lOiBcIk9sYXJpdVwiLFxyXG4gICAgam9iOiBcInBlZGlhdHJpY2lhblwiLFxyXG4gICAgYWZmaWxpYXRpb246IFwiT1dMIFVuaXZlcnNpdHkgSG9zcGl0YWxcIixcclxuICAgIHBpY3R1cmV1cmw6IHBpY3NbJ29sYXJpdSddLFxyXG4gICAgdGFnOiBcIk1lZGljYWwgUHJvZmVzc2lvbmFsXCIsXHJcbiAgICBoZWFkaW5nOiBcIkRpc2N1c3Npb24gd2l0aCBhIHBlZGlhdHJpY2lhbiBhbmQgaGlzIGZvcm1lciBwYXRpZW50IGFib3V0IHRyZWF0bWVudCBjaGFsbGVuZ2VzIGFuZCBwZXJzcGVjdGl2ZXNcIixcclxuICAgIGludGVydmlld3RhYmlkOiBcIm9sYXJpdVwiLFxyXG5cclxuICAgIGxhbmd1YWdlOiBcImRlXCIsXHJcbiAgICBxdW90ZU5hY2huYW1lOiBcIk9sYXJpdSwgQ2xpbmljYWwgUGh5c2ljaWFuIGFuZCBDRiBFeHBlcnRcIixcclxuICAgIHF1b3RlVm9ybmFtZTogXCJEci4gQ3Jpc3RpYW4tR2FicmllbFwiLFxyXG4gICAgcXVvdGU6IFwiRm9yIG1vc3QgZmFtaWxpZXMsIGl0XHUyMDE5cyBhIHNob2NrLiBDeXN0aWMgIEZpYnJvc2lzIHN0aWxsIGhhcyBhIHN0cm9uZyBhc3NvY2lhdGlvbiB3aXRoIGJlaW5nIGEgbGlmZS10aHJlYXRlbmluZyBkaXNlYXNlLCBkZXNwaXRlIHRoZSBmYWN0IHRoYXQgd2Ugbm93IGhhdmUgZ29vZCB0cmVhdG1lbnRzLCBhbmQgbWFueSBwYXRpZW50cyBjYW4gbGl2ZSBoZWFsdGh5IGxpdmVzLiBUaGUgZGlhZ25vc2lzIHB1dHMgYSBodWdlIHBzeWNob2xvZ2ljYWwgc3RyYWluIG9uIHRoZSBmYW1pbHksIGVzcGVjaWFsbHkgd2hlbiBkZWFsaW5nIHdpdGggdmVyeSB5b3VuZyBjaGlsZHJlbi5cIixcclxuICAgIGFpbW9mY29udGFjdDogXCJUbyBnYWluIGEgZGVlcGVyIGluc2lnaHQgaW50byB0aGUgcGF0aCB0byBkaWFnbm9zaXMsIHdlIGludml0ZWQgcGVkaWF0cmljaWFuIERyLiBDcmlzdGlhbi1HYWJyaWVsIE9sYXJpdSBmcm9tIHRoZSBVbml2ZXJzaXR5IERlcGFydG1lbnQgb2YgUGVkaWF0cmljcyBhbmQgQWRvbGVzY2VudCBNZWRpY2luZSB0byBzaGFyZSBoaXMgZXhwZXJpZW5jZXMgd2l0aCBDRiBwYXRpZW50cyB3aXRoIHVzLiBXZSBpbnRlcnZpZXdlZCBoaW0gYmVjYXVzZSBvZiBoaXMgZXhwZXJ0aXNlIGluIHRoZSBlZmZlY3RzIG9mIGRpYWdub3NpcyBvbiB0aGUgcGF0aWVudCBhbmQgdGhlIGZhbWlseSBtZW1iZXJzLCBidXQgYWxzbyBvbiBkYWlseSBsaWZlLiBBZGRpdGlvbmFsbHksIHdlIHdhbnQgdG8gY2xvc2UgdGhlIGdhcCBhbmQgY3JlYXRlIGEgYnJpZGdlIGJldHdlZW4gYWNhZGVtaWMgcmVzZWFyY2ggYW5kIGNsaW5pY2FsIGFwcGxpY2F0aW9ucy4gVGhlcmVmb3JlLCBEci4gT2xhcml1IGdhdmUgdXMgaW5zaWdodHMgYWJvdXQgdGhlIGNsaW5pY2FsIHBlcnNwZWN0aXZlcyBvbiBDRiBwYXRpZW50cy5cIixcclxuICAgIGluc2lnaHRzOiBbPGRpdiBjbGFzc05hbWU9XCJyb3dcIj5cclxuICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj48aW1nIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9ocC9vbGFyaW8tYWJiaWxkdW5nMS5zdmdcIj48L2ltZz5cclxuICAgICAgPGJyLz5cclxuICAgICAgPGJyLz5cclxuICAgICAgPGJyLz5cclxuICAgICAgPGJyLz5cclxuICAgICAgPGltZyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvaHAvcHJvYW5kY29uLXBuZy5zdmdcIj48L2ltZz5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+PHA+V2UgaW52aXRlZCBNYXgsIG91ciBDRiBwYXRpZW50IGNvbnRhY3QsIHRvIGpvaW4gRHIuIE9sYXJpdSBpbiBkaXNjdXNzaW5nIHRoZSBpbnRlcnNlY3Rpb24gb2YgYWNhZGVtaWMgcmVzZWFyY2gsIGNsaW5pY2FsIGFwcGxpY2F0aW9uLCBhbmQgcGF0aWVudCBuZWVkcy4gVGhyb3VnaCBvdXIgY29ubmVjdGlvbiB3aXRoIDxhIGhyZWY9XCJodHRwczovL3d3dy5jZnZ3dy5vcmdcIiA+Q0YgVmVzdHMgV29ybGR3aWRlPC9hPiwgYW4gb3JnYW5pemF0aW9uIGRlZGljYXRlZCB0byBwcm92aWRpbmcgbGlmZS1zYXZpbmcgdGhlcmFweSB2ZXN0cyB0byAgQ3lzdGljIEZpYnJvc2lzIHBhdGllbnRzIGdsb2JhbGx5LCB3ZSBnYWluZWQgaW5zaWdodHMgaW50byB0aGUgY2hhbGxlbmdlcyBmYWNlZCBieSBDRiBwYXRpZW50cywgcGFydGljdWxhcmx5IGluIHJlZ2lvbnMgbGlrZSBUaGFpbGFuZCwgd2hlcmUgYWNjZXNzIHRvIGFkdmFuY2VkIHRyZWF0bWVudHMgYW5kIG1lZGljYWwgZGV2aWNlcyBpcyBsaW1pdGVkLiBUaGUgY29udmVyc2F0aW9uIGhpZ2hsaWdodGVkIHRoZSBjcml0aWNhbCByb2xlIG9mIGVhcmx5IGRpYWdub3NpcyBhbmQgaW50ZXJ2ZW50aW9uLCBhcyB3ZWxsIGFzIHRoZSBxdWFsaXR5LW9mLWxpZmUgY2hhbGxlbmdlcyBtYW55IHBhdGllbnRzIGVuZHVyZSBkdWUgdG8gY29udmVudGlvbmFsIHRyZWF0bWVudHMgdGhhdCBtYXkgbm90IGJlIGVmZmVjdGl2ZSBmb3IgZXZlcnlvbmUuIElubm92YXRpdmUgYXBwcm9hY2hlcywgc3VjaCBhcyBvdXIgU09SVCBMTlAgKGxpcGlkIG5hbm9wYXJ0aWNsZSkgZGVsaXZlcnkgc3lzdGVtLCBwcmVzZW50IHByb21pc2luZyBhbHRlcm5hdGl2ZXMgZm9yIENGIHRoZXJhcHkuIFRoaXMgc3lzdGVtLCB3aGljaCBhbGxvd3MgZm9yIFJOQSBlbmNhcHN1bGF0aW9uIGFuZCBhZG1pbmlzdHJhdGlvbiB2aWEgZHJ5IHNwcmF5IGluaGFsYXRpb24sIGNvdWxkIHJldm9sdXRpb25pemUgdHJlYXRtZW50IGJ5IHRhcmdldGluZyBsdW5nIGNlbGxzIG1vcmUgZWZmZWN0aXZlbHksIHBhcnRpY3VsYXJseSBpbiByZXNvdXJjZS1saW1pdGVkIHNldHRpbmdzLiBEci4gT2xhcml1IHVuZGVyc2NvcmVkIHRoZSBuZWVkIGZvciBwc3ljaG9sb2dpY2FsIHN1cHBvcnQgYW5kIGNvb3JkaW5hdGVkIGNhcmUgZm9yIENGIHBhdGllbnRzLCBlbXBoYXNpemluZyB0aGF0IG5vdmVsIHRoZXJhcGllcyBsaWtlIExOUC1iYXNlZCBnZW5lIHRyZWF0bWVudHMgaGF2ZSB0aGUgcG90ZW50aWFsIHRvIGltcHJvdmUgdHJlYXRtZW50IGVmZmljYWN5IGFuZCBhY2Nlc3NpYmlsaXR5LCB1bHRpbWF0ZWx5IHJlZHVjaW5nIHRoZSBsaWZlbG9uZyBidXJkZW4gb2YgY2FyZSBmb3IgcGF0aWVudHMgYW5kIHRoZWlyIGZhbWlsaWVzLiA8L3A+XHJcbiAgICAgIDxwPldlIGhhdmUgY29uc2lkZXJlZCB0aGUgZXh0ZW50IHRvIHdoaWNoIGFuIGVhcmx5IGRpYWdub3NpcyBpcyBhbHdheXMgYW4gYWR2YW50YWdlLCBhcyBzb21lIHBhcmVudHMgcGVyY2VpdmUgYW4gZWFybHkgZGlhZ25vc2lzIGFzIGFuIGFkZGl0aW9uYWwgYnVyZGVuIGFuZCB3b3VsZCBwcmVmZXIgdG8gZXhwZXJpZW5jZSB0aGUgZmlyc3QgeWVhcnMgb2YgdGhlaXIgY2hpbGQncyBsaWZlIHdpdGhvdXQgY29uc3RhbnQgbWVkaWNhbCBpbnRlcnZlbnRpb24uIEVzcGVjaWFsbHkgd2hlbiB0aGVyZSBhcmUgY2FzZXMgaW4gd2hpY2ggcGF0aWVudHMgb25seSBzaG93IGEgY2xlYXIgY2xpbmljYWwgcGljdHVyZSBhdCBhbiBhZHZhbmNlZCBhZ2UuIFRoZSBwc3ljaG9sb2dpY2FsIGJ1cmRlbiBhbHNvIGxpZXMgd2l0aCB0aGUgY2hpbGRyZW4sIHdobyBvZnRlbiBleHBlcmllbmNlIG1lZGljYWwgdHJhdW1hIGJlY2F1c2UgdGhleSBhcmUgaW52b2x2ZWQgaW4gc3VjaCBpbnRlbnNpdmUgbWVkaWNhbCBjYXJlIGZyb20gYmlydGguIEFkZGl0aW9uYWxseSwgdGhlIHRyZWF0bWVudCBvZiAgQ3lzdGljIEZpYnJvc2lzIGlzIHZlcnkgZXhwZW5zaXZlLCBhbmQgdGhlIGNvc3RzIGFyZSBjb3ZlcmVkIGJ5IGhlYWx0aCBpbnN1cmFuY2UgY29tcGFuaWVzIHRvIHZhcnlpbmcgZGVncmVlcy4gSW4gc29tZSBjb3VudHJpZXMsIHN1Y2ggYXMgdGhlIFVTQSwgVWtyYWluZSBvciBEZXZlbG9waW5nIGNvdW50cmllcywgbWFueSBmYW1pbGllcyBjYW5ub3QgYWZmb3JkIHRoZSBuZWNlc3NhcnkgdHJlYXRtZW50cy4gQnV0IERyLiBPbGFyaXUgYWxzbyBkcmV3IG91ciBhdHRlbnRpb24gdG8gYW5vdGhlciBwcm9ibGVtIGluIHRoZSB0cmVhdG1lbnQgb2YgIEN5c3RpYyBGaWJyb3Npcy4gSW5mZWN0aW9ucywgZXNwZWNpYWxseSB3aXRoIGJhY3RlcmlhIHN1Y2ggYXMgUHNldWRvbW9uYXMgc3BjYy4sIGFyZSBkaWZmaWN1bHQgdG8gdHJlYXQgYW5kIG9mdGVuIGxlYWQgdG8gbG9uZyBob3NwaXRhbCBzdGF5cy4gTWF4LCBvdXIgcGF0aWVudHNcdTIwMTkgcmVwcmVzZW50YXRpdmUsIHdobyBrbm93cyBEci4gT2xhcml1IHRocm91Z2ggaGlzIHRyZWF0bWVudCwgc2hhcmVkICBoaXMgZXhwZXJpZW5jZSB3aXRoIFBzZXVkb21vbmFzIHNwY2MgaW5mZWN0aW9ucywgaWxsdXN0cmF0aW5nIHRoZSByZWFsaXR5IG9mIGFuIGludmlzaWJsZSBkYW5nZXIgdGhhdCBkZXRlcm1pbmVzIGEgcGF0aWVudCdzIGV2ZXJ5ZGF5IGxpZmUuIFN0cmljdCBoeWdpZW5lIG1lYXN1cmVzIGFyZSByZXF1aXJlZCB0byBwcmV2ZW50IGluZmVjdGlvbnMsIHN1Y2ggYXMgd2VhcmluZyBmYWNlIG1hc2tzIGluIGhvc3BpdGFsIGFuZCBjYXJlZnVsIGhhbmRsaW5nIG9mIHBvdGVudGlhbCBzb3VyY2VzIG9mIGluZmVjdGlvbi4gVGhlIGNsaW5pY3Mgd2hlcmUgIEN5c3RpYyBGaWJyb3NpcyBwYXRpZW50cyBhcmUgdHJlYXRlZCB3b3JrIGNsb3NlbHkgd2l0aCBhIG11bHRpZGlzY2lwbGluYXJ5IHRlYW0gb2YgZG9jdG9ycywgcHN5Y2hvbG9naXN0cywgcGh5c2lvdGhlcmFwaXN0cyBhbmQgbnV0cml0aW9uaXN0cyB0byBlbnN1cmUgdGhhdCBwYXRpZW50cyByZWNlaXZlIGhvbGlzdGljIGNhcmUuIDwvcD5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5dLFxyXG4gICAgaW1wbGVtZW50YXRpb246IFs8cD5JbiBzdW1tYXJ5LCBvdXIgcHJvamVjdCBncmVhdGx5IGJlbmVmaXRlZCBmcm9tIHRoZSBjb252ZXJzYXRpb24gd2l0aCBEci4gT2xhcml1LiBIaXMgaW5zaWdodHMgaW50byB0aGUgY29tcGxleGl0aWVzIG9mICBDeXN0aWMgRmlicm9zaXMgdHJlYXRtZW50LCBwYXJ0aWN1bGFybHkgdGhlIHNpZ25pZmljYW5jZSBvZiBlYXJseSBkaWFnbm9zaXMsIHdlcmUgaW52YWx1YWJsZSBhbmQgd2UgY29uc2lkZXJlZCBlYXJseSB0cmVhdG1lbnQgbWV0aG9kcy4gTWF4XHUyMDE5cyBwZXJzb25hbCBleHBlcmllbmNlcyBhZGRlZCBhIGh1bWFuIHBlcnNwZWN0aXZlLCBpbGx1c3RyYXRpbmcgdGhlIG1lZGljYWwgYW5kIHBzeWNob2xvZ2ljYWwgY2hhbGxlbmdlcyBoZSBmYWNlcywgaW5jbHVkaW5nIGluZmVjdGlvbnMgd2l0aCA8aT5Qc2V1ZG9tb25hcyBzcHAuPC9pPiBEci4gT2xhcml1IGhpZ2hsaWdodGVuZCB0aGUgaW1wb3J0YW5jZSBvZiBhIG11bHRpZGlzY2lwbGluYXJ5IGFwcHJvYWNoLCBpbnZvbHZpbmcgbm90IGp1c3QgbWVkaWNhbCBwcm9mZXNzaW9uYWxzIGJ1dCBhbHNvIHBzeWNob2xvZ2lzdHMsIHBoeXNpb3RoZXJhcGlzdHMsIGFuZCBudXRyaXRpb25pc3RzIGZvciBob2xpc3RpYyBjYXJlLiBUaGlzIGRpc2N1c3Npb24gaGVscGVkIHVzIGFwcHJlY2lhdGUgdGhlIGJhbGFuY2UgYmV0d2VlbiB0aW1lbHkgaW50ZXJ2ZW50aW9ucyBhbmQgdGhlIGVtb3Rpb25hbCBidXJkZW4gb24gcGF0aWVudHMgYW5kIHRoZWlyIGZhbWlsaWVzLCBndWlkaW5nIHVzIHRvIGRldmVsb3AgYSBtb3JlIGVtcGF0aGV0aWMgdW5kZXJzdGFuZGluZyBvZiBsaXZpbmcgd2l0aCAgQ3lzdGljIEZpYnJvc2lzLjwvcD5dLFxyXG4gICAgaW50ZXJ2aWV3OiA8PlxyXG4gICAgICA8UWFCb3ggcT1cIkNvdWxkIHlvdSBwbGVhc2UgdGVsbCB1cyBhYm91dCB0aGUgam91cm5leSB0aGF0IHBhcmVudHMgZ28gdGhyb3VnaCB3aXRoIHRoZWlyIENGLXNpY2sgY2hpbGRyZW4gZnJvbSB0aGUgZmlyc3QgdmlzaXQgdG8gZGlhZ25vc2lzIGFuZCB0cmVhdG1lbnQ/XCIgYT1cIlNpbmNlIDIwMTYsICBDeXN0aWMgRmlicm9zaXMgKENGKSBkaWFnbm9zaXMgaGFzIGJlZW4gcGFydCBvZiBuZXdib3JuIHNjcmVlbmluZy4gVGhpcyBtZWFucyB0aGF0IHdlIHJlY2VpdmUgbWFueSBjaGlsZHJlbiByaWdodCBhZnRlciBiaXJ0aCB3aG9zZSBzY3JlZW5pbmcgcmVzdWx0cyB3ZXJlIGFibm9ybWFsLiBUaGVzZSBjaGlsZHJlbiBhcmUgdGhlbiBzZW50IHRvIHVzIGZvciBmdXJ0aGVyIGNsYXJpZmljYXRpb24uIE5vdCBldmVyeSBjaGlsZCB3aXRoIGFuIGFibm9ybWFsIHNjcmVlbmluZyByZXN1bHQgaXMgc2ljaywgc28gd2UgcGVyZm9ybSBhIHN3ZWF0IHRlc3QsIGFuZCBhYm91dCBvbmUtdGhpcmQgb2YgdGhlIGNoaWxkcmVuIGFyZSBkaWFnbm9zZWQgd2l0aCB0aGUgZGlzZWFzZS4gVGhlIGFkdmFudGFnZSBvZiBlYXJseSBkaWFnbm9zaXMgaXMgdGhhdCB3ZSBjYW4gaW50ZXJ2ZW5lIGFuZCBzdGFydCB0cmVhdG1lbnQgZWFybHkgdG8gcHJldmVudCBvcmdhbiBkYW1hZ2UuIEhvd2V2ZXIsIHRoZXJlIGFyZSBhbHNvIHJhcmUgbXV0YXRpb25zIHdoZXJlIHRoZSBjb3Vyc2Ugb2YgdGhlIGRpc2Vhc2UgaXMgZGlmZmljdWx0IHRvIHByZWRpY3QuXCIgLz5cclxuICAgICAgPFFhQm94IHE9XCJXaGF0IGFyZSB0aGUgcHJvcyBhbmQgY29ucyBvZiBuZXdib3JuIHNjcmVlbmluZyBmb3IgIEN5c3RpYyBGaWJyb3Npcz9cIiBhPVwiRnJvbSBhIG1lZGljYWwgcG9pbnQgb2YgdmlldywgaXRcdTIwMTlzIGJlbmVmaWNpYWwgdGhhdCB3ZSBjYW4gY2F0Y2ggbWFueSBvZiB0aGVzZSBjYXNlcyBlYXJseSwgYWxsb3dpbmcgdXMgdG8gYWN0IHN3aWZ0bHkuIFRoZXJlIGFyZSBldmVuIG1lZGljYXRpb25zIGZvciBzbWFsbCBiYWJpZXMsIGFuZCBlYXJseSBpbnRlcnZlbnRpb24gY2FuIHByb3RlY3Qgb3JnYW5zLCBwcmV2ZW50aW5nIGNvbmRpdGlvbnMgdGhhdCB3b3VsZCByZXF1aXJlIHRyYW5zcGxhbnRzIGxhdGVyIG9uLiBPbiB0aGUgZG93bnNpZGUsIGJlY2F1c2Ugb2YgdGhlIHdpZGUgdmFyaWV0eSBvZiBnZW5ldGljIG11dGF0aW9ucywgc29tZSBjYXNlcyB3ZSBpZGVudGlmeSBtYXkgbm90IHNob3cgc2lnbmlmaWNhbnQgc3ltcHRvbXMgdW50aWwgYWR1bHRob29kLiBUaGlzIGNyZWF0ZXMgYSBkaWxlbW1hLCBhcyB3ZSBjYW5cdTIwMTl0IHByZWRpY3QgaG93IHRoZWlyIGNvbmRpdGlvbiB3aWxsIHByb2dyZXNzLCBidXQgd2Ugc3RpbGwgc3RhcnQgdHJlYXRtZW50cyBlYXJseSwgd2hpY2ggY2FuIGJlIHN0cmVzc2Z1bCBmb3IgZmFtaWxpZXMuXCIgLz5cclxuICAgICAgPFFhQm94IHE9XCJDYW4geW91IGdpdmUgdXMgYW4gZXhhbXBsZSBvZiBob3cgdGhpcyBzdHJlc3MgaW1wYWN0cyBmYW1pbGllcz9cIiBhPVwiWWVzLCBJXHUyMDE5dmUgYmVlbiBjYXJpbmcgZm9yIGEgcGF0aWVudCBmcm9tIGJpcnRoIHdobyBpcyBub3cgZml2ZSB5ZWFycyBvbGQgYW5kIGRvaW5nIHZlcnkgd2VsbC4gSG93ZXZlciwgZnJvbSB0aGUgYmVnaW5uaW5nLCBzaGUgaGFkIHRvIHVuZGVyZ28gcGh5c2lvdGhlcmFweSwgcmVndWxhciBjaGVjay11cHMsIGFuZCBibG9vZCB0ZXN0cywgZXZlbiB0aG91Z2ggc2hlIGhhc25cdTIwMTl0IHNob3duIGFueSBtYWpvciBzeW1wdG9tcy4gSGVyIG1vdGhlciBvbmNlIHRvbGQgbWUgc2hlIHdhc24ndCBzdXJlIGlmIHNoZSB3b3VsZCBtYWtlIHRoZSBzYW1lIGRlY2lzaW9uIGFnYWluLCBhcyB0aGUgZWFybHkgaW50ZXJ2ZW50aW9uIGNhdXNlZCBhIGxvdCBvZiBzdHJlc3MuIFNoZSB3b25kZXJlZCBpZiBzaGUgbWlnaHQgaGF2ZSBlbmpveWVkIHRoZSBmaXJzdCB5ZWFyIG9mIGhlciBjaGlsZFx1MjAxOXMgbGlmZSBtb3JlIGlmIHRoaW5ncyBoYWQgYmVlbiBtb3JlIHJlbGF4ZWQuIE5vdywgYXQgYWdlIGZpdmUsIG5vdGhpbmcgc2lnbmlmaWNhbnQgaGFzIGNoYW5nZWQgaW4gaGVyIGNvbmRpdGlvbiwgYW5kIHRoZXlcdTIwMTl2ZSBkZWNpZGVkIGFnYWluc3Qgc3RhcnRpbmcgbW9kdWxhdG9yIHRoZXJhcHkgZm9yIHRoZSB0aW1lIGJlaW5nLlwiIC8+XHJcbiAgICAgIDxRYUJveCBxPVwiSG93IGRvIGZhbWlsaWVzIHR5cGljYWxseSByZWFjdCB3aGVuIGEgQ0YgZGlhZ25vc2lzIGlzIGNvbmZpcm1lZD9cIiBhPVwiRm9yIG1vc3QgZmFtaWxpZXMsIGl0XHUyMDE5cyBhIHNob2NrLiBDeXN0aWMgIEZpYnJvc2lzIHN0aWxsIGhhcyBhIHN0cm9uZyBhc3NvY2lhdGlvbiB3aXRoIGJlaW5nIGEgbGlmZS10aHJlYXRlbmluZyBkaXNlYXNlLCBkZXNwaXRlIHRoZSBmYWN0IHRoYXQgd2Ugbm93IGhhdmUgZ29vZCB0cmVhdG1lbnRzIGFuZCBtYW55IHBhdGllbnRzIGNhbiBsaXZlIGhlYWx0aHkgbGl2ZXMuIFRoZSBkaWFnbm9zaXMgcHV0cyBhIGh1Z2UgcHN5Y2hvbG9naWNhbCBzdHJhaW4gb24gdGhlIGZhbWlseSwgZXNwZWNpYWxseSB3aGVuIGRlYWxpbmcgd2l0aCB2ZXJ5IHlvdW5nIGNoaWxkcmVuLiBUaGUgbW9zdCBpbXBvcnRhbnQgZmFjdG9yIGluIG1hbmFnaW5nIHRoaXMsIGFzaWRlIGZyb20gbWVkaWNhbCB0cmVhdG1lbnRzLCBpcyB0aGUgc3VwcG9ydCBmcm9tIHRoZSBtZWRpY2FsIHRlYW0uIEl0XHUyMDE5cyBjcml0aWNhbCB0byBoYXZlIGEgdGVhbSB0aGF0IHdvcmtzIHdlbGwgdG9nZXRoZXIsIG5vdCBqdXN0IGEgc2luZ2xlIGRvY3RvciBjYWxsaW5nIGFsbCB0aGUgc2hvdHMuIEZhbWlsaWVzIG9mdGVuIG5lZWQgbXVjaCBtb3JlIHBzeWNob2xvZ2ljYWwgYW5kIG51dHJpdGlvbmFsIHN1cHBvcnQgZWFybHkgb24gdGhhbiBtZWRpY2FsIGludGVydmVudGlvbiwgYW5kIHRoaXMgaXMgd2hlcmUgaGF2aW5nIGEgbXVsdGlkaXNjaXBsaW5hcnkgdGVhbSBiZWNvbWVzIGVzc2VudGlhbC5cIiAvPlxyXG4gICAgICA8UWFCb3ggcT1cIldoYXQgaXMgdGhlIHByb2Nlc3MgZm9yIGRpYWdub3NpbmcgYW5kIHRyZWF0aW5nIG9sZGVyIHBhdGllbnRzIHdobyBoYXZlblx1MjAxOXQgYmVlbiB0aHJvdWdoIG5ld2Jvcm4gc2NyZWVuaW5nP1wiIGE9XCJPbGRlciBwYXRpZW50cyB3aG8gY29tZSB0byB1cyB3aXRoIGNvbXBsYWludHMgbWF5IG5vdCBoYXZlIHVuZGVyZ29uZSBuZXdib3JuIHNjcmVlbmluZywgc28gdGhleSBhcmUgZGlhZ25vc2VkIGJhc2VkIG9uIHRoZWlyIHN5bXB0b21zLiBUaGVzZSBjb21wbGFpbnRzIGNhbiByYW5nZSBmcm9tIG1pbGQgdG8gc2V2ZXJlIGFuZCBhcmUgb2Z0ZW4gbm9uLXNwZWNpZmljLCBsaWtlIGNocm9uaWMgY291Z2ggb3IgZmFpbHVyZSB0byB0aHJpdmUuIFdoZW4gdGhlIGNhdXNlIG9mIHRoZXNlIHN5bXB0b21zIGlzblx1MjAxOXQgaW1tZWRpYXRlbHkgY2xlYXIsIHdlIGRvIGEgc3dlYXQgdGVzdC4gT25jZSBkaWFnbm9zZWQsIHdlIGNhbiBzdGFydCB0cmVhdG1lbnQsIHdoaWNoIG9mdGVuIGludm9sdmVzIHdvcmtpbmcgd2l0aCBhIHBzeWNob2xvZ2lzdCB0byBoZWxwIHRoZSBmYW1pbHkgcHJvY2VzcyB0aGUgbmV3cy5cIiAvPlxyXG4gICAgICA8UWFCb3ggcT1cIkhvdyBkbyB5b3Ugc3VwcG9ydCBmYW1pbGllcyBkdXJpbmcgdGhlIGluaXRpYWwgc2hvY2sgb2YgZGlhZ25vc2lzP1wiIGE9XCJXaGVuIHRoZSBkaWFnbm9zaXMgaXMgcGFydGljdWxhcmx5IGRpZmZpY3VsdCBmb3IgZmFtaWxpZXMgdG8gcHJvY2Vzcywgd2Ugc29tZXRpbWVzIGhhdmUgdGhlIHBhdGllbnRzIHN0YXkgaW4gdGhlIGhvc3BpdGFsIGZvciB1cCB0byBhIHdlZWsuIFRoaXMgZ2l2ZXMgdXMgdGltZSB0byBtZWV0IHdpdGggdGhlbSBkYWlseSwgYW5zd2VyIHF1ZXN0aW9ucywgYW5kIHByb3ZpZGUgZ3VpZGFuY2UuIER1cmluZyB0aGUgZmlyc3QgY29uc3VsdGF0aW9uLCBmYW1pbGllcyBvZnRlbiBmYWxsIGludG8gYSBzdGF0ZSBvZiBzaG9jaywgYW5kIG5vIG1hdHRlciBob3cgY2FyZWZ1bGx5IHRoZSBkb2N0b3IgZXhwbGFpbnMgdGhpbmdzLCBpdFx1MjAxOXMgaGFyZCBmb3IgdGhlbSB0byBhYnNvcmIgYWxsIHRoZSBpbmZvcm1hdGlvbi4gTWVldGluZyB3aXRoIHRoZW0gYWdhaW4gb3ZlciB0aGUgZm9sbG93aW5nIGRheXMgaGVscHMsIGFuZCB3ZSBoYXZlIHNwZWNpYWxpc3RzIGluIGh5Z2llbmUsIHBoeXNpb3RoZXJhcHksIGFuZCBzb2NpYWwgY291bnNlbGluZyBvbiB0aGUgdGVhbSB0byBvZmZlciBob2xpc3RpYyBzdXBwb3J0LlwiIC8+XHJcbiAgICAgIDxRYUJveCBxPVwiV2hhdCBoYXBwZW5zIGlmIGEgY2hpbGQgZ2V0cyBpbmZlY3RlZCB3aXRoIFBzZXVkb21vbmFzIG9yIGFub3RoZXIgYmFjdGVyaWFsIGN1bHR1cmUgaW4gdGhlIGx1bmdzP1wiIGE9XCJQc2V1ZG9tb25hcyBpcyBvbmUgb2YgdGhlIG1vc3QgZmVhcmVkIGluZmVjdGlvbnMgZm9yIENGIHBhdGllbnRzLiBJdFx1MjAxOXMgYSBjb21tb24gZW52aXJvbm1lbnRhbCBiYWN0ZXJpdW0gdGhhdCBpcyBkaWZmaWN1bHQgZm9yIENGIHBhdGllbnRzIHRvIGNsZWFyIGZyb20gdGhlaXIgbHVuZ3MuIE9uY2Ugd2UgZGV0ZWN0IGl0LCB3ZSB0cmVhdCB0aGUgcGF0aWVudCB3aXRoIHNwZWNpZmljIGFudGliaW90aWNzLCBvZnRlbiB0aHJvdWdoIGludHJhdmVub3VzIGRlbGl2ZXJ5IG92ZXIgdHdvIHdlZWtzIGluIHRoZSBob3NwaXRhbC4gQWZ0ZXIgdGhlIGluaXRpYWwgdHJlYXRtZW50LCBwYXRpZW50cyBtYXkgY29udGludWUgd2l0aCBpbmhhbGVkIGFudGliaW90aWNzIGZvciBzZXZlcmFsIG1vbnRocyB0byBwcmV2ZW50IGZ1cnRoZXIgaW5mZWN0aW9uLiBJdFx1MjAxOXMgYSB2ZXJ5IGludGVuc2l2ZSBwcm9jZXNzLCB0YWtpbmcgYSBsb3Qgb2YgdGltZSBhbmQgZW5lcmd5LCBhbmQgZXZlbiB0aG91Z2ggd2UgbWF5IGdldCByaWQgb2YgdGhlIGluZmVjdGlvbiBhIGZldyB0aW1lcywgZXZlbnR1YWxseSB0aGUgZ2VybSBjYW4gYmVjb21lIHJlc2lzdGFudCBhbmQgc3RheSBpbiB0aGUgYm9keS5cIiAvPlxyXG4gICAgICA8UWFCb3ggcT1cIkFyZSB0aGVyZSBhbnkgcHJldmVudGF0aXZlIG1lYXN1cmVzIHRvIGF2b2lkIFBzZXVkb21vbmFzIGluZmVjdGlvbj9cIiBhPVwiWWVzLCB0aGVyZSBhcmUgaHlnaWVuZSBtZWFzdXJlcy4gRm9yIGV4YW1wbGUsIENGIHBhdGllbnRzIGFsd2F5cyB3ZWFyIG1hc2tzIGluIHRoZSBob3NwaXRhbCB0byBhdm9pZCBpbmZlY3Rpb24gZnJvbSBvdGhlciBwYXRpZW50cy4gQnV0IGl0XHUyMDE5cyBkaWZmaWN1bHQgdG8gYXZvaWQgUHNldWRvbW9uYXMgZW50aXJlbHkgc2luY2UgaXRcdTIwMTlzIGZvdW5kIGluIHN0YWduYW50IHdhdGVyIGFuZCBvdGhlciBwbGFjZXMgaW4gdGhlIGVudmlyb25tZW50LiBXZSBhZHZpc2UgcGF0aWVudHMgdG8gYmUgY2F1dGlvdXMgd2l0aCB3YXRlciBzb3VyY2VzIGxpa2Ugc2lua3Mgb3IgcG9uZHMuIEhvd2V2ZXIsIHdlIG5lZWQgdG8gYmFsYW5jZSBzdHJpY3QgaHlnaWVuZSB3aXRoIHF1YWxpdHkgb2YgbGlmZSwgZXNwZWNpYWxseSBmb3IgY2hpbGRyZW4sIGFzIGJlaW5nIG92ZXJseSBzdHJpY3QgY2FuIGxlYWQgdG8gb2JzZXNzaXZlLWNvbXB1bHNpdmUgYmVoYXZpb3JzIHdpdGhvdXQgbmVjZXNzYXJpbHkgcmVkdWNpbmcgdGhlIHJpc2sgb2YgaW5mZWN0aW9uLlwiIC8+XHJcbiAgICAgIDxRYUJveCBxPVwiRG8gc29tZSBmYW1pbGllcyByZXNpc3QgdGhlIG1lZGljYWwgYWR2aWNlIG9uIHByZXZlbnRpbmcgaW5mZWN0aW9ucz9cIiBhPVwiT24gYW4gZW1vdGlvbmFsIGxldmVsLCBJIGZlZWwgdGhhdCBmYW1pbGllcyB3aG8gdGFrZSBjYWxjdWxhdGVkIHJpc2tzIHRvIGltcHJvdmUgdGhlaXIgcXVhbGl0eSBvZiBsaWZlIHRlbmQgdG8gY29wZSBiZXR0ZXIuIE92ZXJwcm90ZWN0aW9uIGNhbiBsZWFkIHRvIGdyZWF0ZXIgcHN5Y2hvbG9naWNhbCBzdHJlc3MuIEhvd2V2ZXIsIEkgZG9uJ3QgaGF2ZSBlbm91Z2ggZXhwZXJpZW5jZSB0byBzYXkgZm9yIHN1cmUgd2hldGhlciB0aG9zZSB3aG8gZG9uXHUyMDE5dCBwcm90ZWN0IHRoZW1zZWx2ZXMgYXMgc3RyaWN0bHkgZ2V0IGluZmVjdGVkIGVhcmxpZXIgb3Igc3VmZmVyIHdvcnNlIG91dGNvbWVzLiBJdFx1MjAxOXMgYWxzbyB3b3J0aCBub3RpbmcgdGhhdCBuZXcgdGhlcmFwaWVzIGFyZSBub3cgYXZhaWxhYmxlIHRoYXQgaGVscCByZWR1Y2UgaW5mZWN0aW9uIHJpc2tzLCBhbGxvd2luZyBmb3IgYSBiaXQgbW9yZSBmcmVlZG9tLCBlc3BlY2lhbGx5IGZvciBjaGlsZHJlbi5cIiAvPlxyXG4gICAgICA8UWFCb3ggcT1cIkhvdyBvZnRlbiBkbyBwYXRpZW50cyBuZWVkIHRvIGJlIHRlc3RlZCBmb3IgaW5mZWN0aW9ucyBsaWtlIFBzZXVkb21vbmFzP1wiIGE9XCJUaGUgb2ZmaWNpYWwgZ3VpZGVsaW5lIGlzIGV2ZXJ5IHR3byBtb250aHMsIGJ1dCByZWFsaXN0aWNhbGx5IHdlIGFpbSBmb3IgZXZlcnkgMy00IG1vbnRocy4gUmVndWxhciB0ZXN0aW5nIGlzIGltcG9ydGFudCBiZWNhdXNlIFBzZXVkb21vbmFzIGNhbiBiZSBwcmVzZW50IHdpdGhvdXQgc3ltcHRvbXMuIElmIHRvbyBtdWNoIHRpbWUgcGFzc2VzIGJlZm9yZSBkZXRlY3Rpb24sIGl0IGJlY29tZXMgaGFyZGVyIHRvIHJlbW92ZSB0aGUgaW5mZWN0aW9uLlwiIC8+XHJcbiAgICAgIDxRYUJveCBxPVwiSG93IGRvIHlvdSBtYW5hZ2UgY2hyb25pY2FsbHkgaW5mZWN0ZWQgcGF0aWVudHM/XCIgYT1cIlBhdGllbnRzIHdobyBhcmUgY2hyb25pY2FsbHkgaW5mZWN0ZWQgd2l0aCBQc2V1ZG9tb25hcyBkb24ndCBzdGF5IGluIHRoZSBob3NwaXRhbCBpbmRlZmluaXRlbHkuIFRoZXkgdXN1YWxseSByZW1haW4gYXQgaG9tZSwgaW5oYWxpbmcgYW50aWJpb3RpY3MgZGFpbHkgYW5kIHRha2luZyBwaHlzaW90aGVyYXB5IHRvIGhlbHAgY2xlYXIgbXVjdXMgZnJvbSB0aGVpciBsdW5ncy4gSW50cmF2ZW5vdXMgYW50aWJpb3RpYyB0aGVyYXB5IGlzIHJlc2VydmVkIGZvciBtb3JlIHNldmVyZSBjYXNlcyBvciBkdXJpbmcgY2xpbmljYWwgZGV0ZXJpb3JhdGlvbi5cIiAvPlxyXG4gICAgICA8UWFCb3ggcT1cIkFyZSBjaHJvbmljYWxseSBpbmZlY3RlZCBwYXRpZW50cyBhbGxvd2VkIHRvIHZpc2l0IHlvdXIgcHJhY3RpY2U/XCIgYT1cIlllcywgY2hyb25pY2FsbHkgaW5mZWN0ZWQgcGF0aWVudHMgYXJlIGFsbG93ZWQgdG8gdmlzaXQgdGhlIHByYWN0aWNlLiBXZSB0cnkgdG8gc2NoZWR1bGUgdGhlbSBhdCBkaWZmZXJlbnQgdGltZXMgdG8gYXZvaWQgY29udGFjdCBiZXR3ZWVuIGluZmVjdGVkIGFuZCBub24taW5mZWN0ZWQgcGF0aWVudHMsIGFuZCB3ZSBvZnRlbiB1c2Ugc2VwYXJhdGUgcm9vbXMgdG8gbWluaW1pemUgcmlzay5cIiAvPlxyXG4gICAgICA8UWFCb3ggcT1cIkhvdyBvZnRlbiBkbyBjaGlsZHJlbiBhbmQgYWR1bHRzIG5lZWQgdG8gaGF2ZSBsdW5nIGZ1bmN0aW9uIHRlc3RzP1wiIGE9XCJZb3UgY2FuXHUyMDE5dCBjb25kdWN0IGEgZ29vZCBsdW5nIGZ1bmN0aW9uIHRlc3QgdW50aWwgdGhlIGNoaWxkIGlzIGFyb3VuZCBmaXZlIHllYXJzIG9sZC4gQWZ0ZXIgdGhhdCwgaXQgYmVjb21lcyBwYXJ0IG9mIHRoZSByb3V0aW5lIGNoZWNrLXVwIGJlY2F1c2UgaXRcdTIwMTlzIG5vbi1pbnZhc2l2ZSBhbmQgcHJvdmlkZXMgYSBnb29kIGluZGljYXRvciBvZiBsdW5nIGhlYWx0aC4gV2Ugc2VlIGNoaWxkcmVuIGV2ZXJ5IHRocmVlIG1vbnRocywgYW5kIEkgYmVsaWV2ZSB0aGUgcHJvdG9jb2wgaXMgdGhlIHNhbWUgZm9yIGFkdWx0cy5cIiAvPlxyXG4gICAgICA8UWFCb3ggcT1cIldoYXQgZG8geW91IHRoaW5rIGFib3V0IHN1cHBvcnQgZ3JvdXBzIG9yIGhlYWx0aCByZXRyZWF0cyBmb3IgQ0YgcGF0aWVudHM/XCIgYT1cIlN1cHBvcnQgZ3JvdXBzIGFyZSBleHRyZW1lbHkgaW1wb3J0YW50LiBBbHRob3VnaCB3ZSBhcmUgYSBnb29kIG1lZGljYWwgdGVhbSwgYWR2aWNlIGZyb20gcGVlcnMgb2Z0ZW4gcmVzb25hdGVzIG1vcmUgd2l0aCBwYXRpZW50cy4gV2VcdTIwMTl2ZSBvcmdhbml6ZWQgdHdvIHBhcmVudHMnIGV2ZW5pbmdzIHJlY2VudGx5LCB3aGVyZSBwYXJlbnRzIGNhbiBleGNoYW5nZSBleHBlcmllbmNlcyBhbmQgc3VwcG9ydCBlYWNoIG90aGVyLiBVbmZvcnR1bmF0ZWx5LCB3ZSBjYW5cdTIwMTl0IGludml0ZSB0aGUgY2hpbGRyZW4gdGhlbXNlbHZlcyBkdWUgdG8gdGhlIHJpc2sgb2YgaW5mZWN0aW9uLCBidXQgaW4gcmVoYWJpbGl0YXRpb24gc2V0dGluZ3MsIHRoZXkgY2FuIG1lZXQgaW4gZ2VybS1zcGVjaWZpYyBncm91cHMgYW5kIGJlbmVmaXQgZnJvbSBzaGFyZWQgZXhwZXJpZW5jZXMuXCIgLz5cclxuICAgICAgPFFhQm94IHE9XCJJcyB0aGVyZSBhIHJpc2sgb2YgYW50aWJpb3RpYyByZXNpc3RhbmNlIHdpdGggcmVwZWF0ZWQgdHJlYXRtZW50cz9cIiBhPVwiWWVzLCByZXNpc3RhbmNlIGlzIGEgY29uY2VybiwgZXNwZWNpYWxseSB3aXRoIHJlcGVhdGVkIGFudGliaW90aWMgdHJlYXRtZW50cy4gSG93ZXZlciwgdGhlcmVcdTIwMTlzIG9mdGVuIGEgZGlzY3JlcGFuY3kgYmV0d2VlbiB3aGF0IHdlIHNlZSBpbiBsYWIgdGVzdHMgYW5kIHRoZSBjbGluaWNhbCBvdXRjb21lcy4gRXZlbiBpZiBhIGdlcm0gc2hvd3MgcmVzaXN0YW5jZSBvbiBwYXBlciwgbWFueSBwYXRpZW50cyBzdGlsbCByZXNwb25kIHdlbGwgdG8gdHJlYXRtZW50LiBXZSBiYXNlIG91ciBkZWNpc2lvbnMgbW9yZSBvbiBjbGluaWNhbCBvdXRjb21lcyB0aGFuIGxhYiByZXN1bHRzLCBjaGFuZ2luZyBhbnRpYmlvdGljcyBvbmx5IGlmIHRoZSBwYXRpZW50XHUyMDE5cyBjb25kaXRpb24gZG9lc25cdTIwMTl0IGltcHJvdmUuXCIgLz5cclxuICAgICAgPFFhQm94IHE9XCJBcmUgdGhlcmUgYW55IHNpZGUgZWZmZWN0cyB0byB0aGUgbWVkaWNhdGlvbnM/XCIgYT1cIlllcywgYWxsIG1lZGljYXRpb25zIGhhdmUgcG90ZW50aWFsIHNpZGUgZWZmZWN0cywgdGhvdWdoIG1hbnkgb2YgdGhlbSBhcmUgbWlub3IsIGxpa2UgcmFzaGVzIG9yIHN0b21hY2hhY2hlcy4gT25lIHNlcmlvdXMgc2lkZSBlZmZlY3Qgb2Ygc29tZSBhbnRpYmlvdGljcyBpcyBoZWFyaW5nIGRhbWFnZSwgd2hpY2ggY2FuIGxlYWQgdG8gbGlmZWxvbmcgaGVhcmluZyBsb3NzLiBUaGlzIGlzIHdoeSB3ZSBjbG9zZWx5IG1vbml0b3IgcGF0aWVudHMgaW4gdGhlIGhvc3BpdGFsIHdoZW4gc3RhcnRpbmcgdHJlYXRtZW50cy4gVGhlIG5ld2VyIHRoZXJhcGllcywgbGlrZSBtb2R1bGF0b3JzLCBjYW4gY2F1c2UgbGl2ZXIgc3RyZXNzLCBzbyB3ZSByZWd1bGFybHkgY2hlY2sgbGl2ZXIgZW56eW1lcyBpbiB0aGUgYmxvb2QuIEhvd2V2ZXIsIHNldmVyZSBzaWRlIGVmZmVjdHMgYXJlIHJhcmUsIGFuZCB0aGUgZHJ1Z3MgYXJlIGdlbmVyYWxseSB3ZWxsIHRvbGVyYXRlZC5cIiAvPlxyXG4gICAgPC8+LFxyXG4gICAgcGljdHVyZXVybF9haW06IFwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2hwL2ludGVydmlldy1vbGFyaXUuc3ZnXCIsXHJcbiAgICBzdW1tYXJ5OiBcIldlIGludGVydmlld2VkIERyLiBDcmlzdGlhbi1HYWJyaWVsIE9sYXJpdSB0byBnYWluIGluc2lnaHRzIGludG8gdGhlIGRpYWdub3NpcyBhbmQgdHJlYXRtZW50IG9mICBDeXN0aWMgRmlicm9zaXMgKENGKS4gSGUgaGlnaGxpZ2h0ZWQgdGhlIGltcG9ydGFuY2Ugb2YgZWFybHkgZGlhZ25vc2lzIHRocm91Z2ggbmV3Ym9ybiBzY3JlZW5pbmcsIHdoaWNoIGFsbG93cyBmb3IgdGltZWx5IGludGVydmVudGlvbiBidXQgY2FuIGFsc28gYmUgcGVyY2VpdmVkIGFzIGEgYnVyZGVuIGJ5IGZhbWlsaWVzLCBlc3BlY2lhbGx5IHdoZW4gc3ltcHRvbXMgbWF5IG5vdCBtYW5pZmVzdCB1bnRpbCBsYXRlci4gRHIuIE9sYXJpdSBlbXBoYXNpemVkIHRoZSBlbW90aW9uYWwgYW5kIGZpbmFuY2lhbCBjaGFsbGVuZ2VzIGZhbWlsaWVzIGZhY2UsIHBhcnRpY3VsYXJseSByZWdhcmRpbmcgY29zdGx5IHRyZWF0bWVudHMgYW5kIGluc3VyYW5jZSB2YXJpYWJpbGl0eS4gUGF0aWVudCBjb250YWN0IE1heCBzaGFyZWQgaGlzIGV4cGVyaWVuY2VzIHdpdGggaW5mZWN0aW9ucyBsaWtlIFBzZXVkb21vbmFzIHNwcC4sIHdoaWNoIGNvbXBsaWNhdGUgY2FyZSBhbmQgbmVjZXNzaXRhdGUgYSBtdWx0aWRpc2NpcGxpbmFyeSBhcHByb2FjaCBpbnZvbHZpbmcgbWVkaWNhbCBwcm9mZXNzaW9uYWxzLCBwc3ljaG9sb2dpc3RzLCBhbmQgbnV0cml0aW9uaXN0cy4gT3ZlcmFsbCwgdGhlIGRpc2N1c3Npb24gdW5kZXJzY29yZWQgdGhlIG5lZWQgdG8gYmFsYW5jZSBtZWRpY2FsIGludGVydmVudGlvbnMgd2l0aCB0aGUgZW1vdGlvbmFsIHdlbGwtYmVpbmcgb2YgcGF0aWVudHMgYW5kIGZhbWlsaWVzLCBndWlkaW5nIHVzIHRvd2FyZCBhIG1vcmUgY29tcGFzc2lvbmF0ZSB1bmRlcnN0YW5kaW5nIG9mIGxpdmluZyB3aXRoIENGLlwiLFxyXG4gICAgbW9udGhzOiBcIm1heVwiXHJcbiAgfSxcclxuICB7XHJcbiAgICB2b3JuYW1lOiBcIkV4cGxvcmluZyBuZXcgaWRlYXNcIixcclxuICAgIG5hY2hubmFtZTogXCJcIixcclxuICAgIHBpY3R1cmV1cmw6IHBpY3NbJ2xvZ28nXSxcclxuICAgIHRhZzogXCJNaWxlc3RvbmVcIixcclxuICAgIGpvYjogXCJUZWFtIGlHRU1cIixcclxuICAgIGFmZmlsaWF0aW9uOiBcIkJpZWxmZWxkIENlQmlUZWMgMjAyNFwiLFxyXG4gICAgaGVhZGluZzogXCJGdXJ0aGVyIGJyYWluc3Rvcm1pbmcgb24gYXBwcm9hY2hlcyBhbmQgc3BlY2lmaW5nIHRoZSBwcm9qZWN0XCIsXHJcbiAgICBpbnRlcnZpZXd0YWJpZDogXCJleHBsb3JpbmdcIixcclxuXHJcbiAgICBxdW90ZTogXCJPbmUgb2YgdGhlIG1vc3QgdmFsdWFibGUgYXNwZWN0cyBvZiBvdXIgcHJvamVjdCBpcyB0aGUgZmVlZGJhY2sgd2UndmUgcmVjZWl2ZWQuIEl0IHRydWx5IG1vdGl2YXRlcyB1cyB0byBtYWtlIGEgZGlmZmVyZW5jZSBpbiB0aGUgY29tbXVuaXR5LlwiLFxyXG4gICAgcXVvdGVOYWNobmFtZTpcIlNhbmZpbGlwbywgVGVhbW1lbWJlclwiLFxyXG4gICAgcXVvdGVWb3JuYW1lOiBcIkxpbGlhbmFcIixcclxuICAgIHR5cGU6IFwibWV0YVwiLFxyXG4gICAgc3VtbWFyeTogWzxwPlxyXG4gICAgICBBZnRlciByZWNlaXZpbmcgdmFsdWFibGUgZmVlZGJhY2sgZnJvbSBib3RoIGNsaW5pY2FsIGFuZCBhY2FkZW1pYyBleHBlcnRzLCB3ZSBkZWNpZGVkIHRvIGZvY3VzIG9uIG9wdGltaXppbmcgUHJpbWUgRWRpdGluZyBzdHJhdGVnaWVzIGZvciAgQ3lzdGljIEZpYnJvc2lzIHRyZWF0bWVudC4gQm90aCBleHBlcnRzIG5vdCBvbmx5IGVuY291cmFnZWQgdXMgaW4gb3VyIGFwcHJvYWNoIGJ1dCBhbHNvIHByb3ZpZGVkIGluc2lnaHRmdWwgZmVlZGJhY2ssIHdoaWNoIHdlIHdpbGwgaW50ZWdyYXRlIGludG8gb3VyIGZ1dHVyZSBwcm9qZWN0IGRlc2lnbi4gVGhyb3VnaCB0aGVzZSBkaXNjdXNzaW9ucywgd2UgbGVhcm5lZCB0aGF0IGN1cnJlbnQgdHJlYXRtZW50IHN0cmF0ZWdpZXMgYXJlIHVyZ2VudGx5IG5lZWRlZCBpbiByZWFsIGxpZmUgYnV0IGFyZSBsaW1pdGVkIGluIHByZWNpc2lvbiBhbmQgZWZmaWNpZW5jeS5cclxuICAgICAgQWRkaXRpb25hbGx5LCB3ZSBnYWluZWQga2V5IGluc2lnaHRzIGludG8gbHVuZy1zcGVjaWZpYyBkZWxpdmVyeSBtZXRob2RzLCB3aGljaCBpbnNwaXJlZCB1cyB0byBwdXJzdWUgbHVuZy1zcGVjaWZpYyBjb3JyZWN0aW9uIG9mIHRoZSBDRlRSIGdlbmUsIGEgY3JpdGljYWwgYXNwZWN0IG9mICBDeXN0aWMgRmlicm9zaXMgdGhlcmFweS5cclxuICAgICAgQXQgdGhpcyBzdGFnZSwgd2UgYXJlIGVhZ2VyIHRvIGV4cGFuZCBvdXIgcGVyc3BlY3RpdmVzIGJ5IHNlZWtpbmcgaW5wdXQgZnJvbSBpbmR1c3RyeSBhbmQgYnVzaW5lc3MgcHJvZmVzc2lvbmFscywgd2hpbGUgYWxzbyBzdHJpdmluZyB0byBpbmNyZWFzZSBvdXIgbG9jYWwgaW1wYWN0LiBUbyBldmFsdWF0ZSB0aGlzIGltcGFjdCwgd2UgcGxhbiB0byBkZXZlbG9wIGEgc3VydmV5IGFpbWVkIGF0IHVuZGVyc3RhbmRpbmcgdGhlIGludGVyZXN0IGluIGdlbmUgdGhlcmFweSBhbmQgdGhlIGNvbW11bml0eVx1MjAxOXMga25vd2xlZGdlIG9mICBDeXN0aWMgRmlicm9zaXMgd2l0aGluIG91ciBsb2NhbCBhcmVhLiBUaGlzIHdpbGwgaGVscCB1cyBnYXVnZSBhd2FyZW5lc3MgYW5kIGVuc3VyZSBvdXIgcHJvamVjdCBhZGRyZXNzZXMgYm90aCBzY2llbnRpZmljIGFuZCBzb2NpZXRhbCBuZWVkcyBlZmZlY3RpdmVseS48L3A+LFxyXG4gICAgICA8dWw+XHJcbiAgICAgICAgICA8bGk+XHJcbiAgICAgICAgICAgICAgPGI+RXhwZXJ0IEZlZWRiYWNrIEludGVncmF0aW9uOjwvYj4gUmVmaW5lZCB0aGUgcHJvamVjdCBmb2N1cyBvbiBvcHRpbWl6aW5nIFByaW1lIEVkaXRpbmcgc3RyYXRlZ2llcyBhbmQgbHVuZy1zcGVjaWZpYyBnZW5lIGRlbGl2ZXJ5IGJhc2VkIG9uIGNsaW5pY2FsIGFuZCBhY2FkZW1pYyBpbnNpZ2h0cy5cclxuICAgICAgICAgIDwvbGk+XHJcbiAgICAgICAgICA8bGk+XHJcbiAgICAgICAgICAgICAgPGI+Rm9jdXMgb24gTHVuZy1TcGVjaWZpYyBDb3JyZWN0aW9uOjwvYj4gU2hpZnRlZCB0b3dhcmQgbHVuZy1zcGVjaWZpYyBDRlRSIGdlbmUgY29ycmVjdGlvbiBmb3IgIEN5c3RpYyBGaWJyb3NpcyB0cmVhdG1lbnQuXHJcbiAgICAgICAgICA8L2xpPlxyXG4gICAgICAgICAgPGxpPlxyXG4gICAgICAgICAgICAgIDxiPkNvbW11bml0eSBFbmdhZ2VtZW50IFBsYW46PC9iPiBJbml0aWF0ZWQgcGxhbnMgZm9yIGEgbG9jYWwgc3VydmV5IHRvIGFzc2VzcyBhd2FyZW5lc3Mgb2YgIEN5c3RpYyBGaWJyb3NpcyBhbmQgaW50ZXJlc3QgaW4gZ2VuZSB0aGVyYXB5LCBhaW1pbmcgdG8gaW5jcmVhc2UgbG9jYWwgaW1wYWN0LlxyXG4gICAgICAgICAgPC9saT5cclxuICAgICAgPC91bD4gIFxyXG4gICAgICAgIF0sXHJcbiAgICBtb250aHM6IFwibWF5XCJcclxuICB9LFxyXG4gIHtcclxuICAgIHZvcm5hbWU6IFwiS2F0cmluXCIsXHJcbiAgICBuYWNobm5hbWU6IFwiV2VzdGhvZmZcIixcclxuICAgIGpvYjogXCJQaHlzaW90aGVyYXBpc3RcIixcclxuICAgIGFmZmlsaWF0aW9uOiBcIkluZGVwZW5kZW50XCIsXHJcbiAgICBwaWN0dXJldXJsOiBwaWNzWyd3ZXN0aG9mZiddLFxyXG4gICAgdGFnOiBcIk1lZGljYWwgUHJvZmVzc2lvbmFsXCIsXHJcbiAgICBoZWFkaW5nOiBcIkludGVydmlldyB3aXRoIGEgc3BlY2lhbGl6ZWQgcGh5c2lvdGhlcmFwaXN0IHJlZ2FyZGluZyBicmVhdGhpbmcgdGhlcmFweSBmb3IgIEN5c3RpYyBGaWJyb3NpcyBwYXRpZW50c1wiLFxyXG4gICAgaW50ZXJ2aWV3dGFiaWQ6IFwid2VzdGhvZmZpbnZcIixcclxuXHJcbiAgICBsYW5ndWFnZTogXCJkZVwiLFxyXG4gICAgcXVvdGVOYWNobmFtZTpcIldlc3Rob2ZmLCBQaHlzaW90aGVyYXBpc3RcIixcclxuICAgIHF1b3RlVm9ybmFtZTogXCJLYXRyaW5cIixcclxuICAgIHF1b3RlOiBcIlRoZSBtb3JlIHdlIGtub3csIHRoZSBtb3JlIG9wcG9ydHVuaXRpZXMgd2UgaGF2ZS5cIixcclxuICAgIGFpbW9mY29udGFjdDogXCJUaGUgb2JqZWN0aXZlIG9mIHRoZSBjb250YWN0IHdhcyB0byBnYWluIGluLWRlcHRoIGluc2lnaHRzIGludG8gdGhlIHRyZWF0bWVudCBhbmQgY2FyZSBvZiBjaGlsZHJlbiB3aXRoIENGLiBUaGUgdGhlcmFwaXN0J3MgZXhwZXJ0aXNlIHdhcyBpbnRlbmRlZCB0byBoZWxwIGRldmVsb3AgYSBiZXR0ZXIgdW5kZXJzdGFuZGluZyBvZiB0aGUgY2hhbGxlbmdlcyBhbmQgbmVjZXNzYXJ5IG1lYXN1cmVzIGluIHRoZSB0cmVhdG1lbnQgb2YgdGhpcyBjaHJvbmljIGRpc2Vhc2UuIEluIGFkZGl0aW9uLCB0aGUgYWltIHdhcyB0byBhc2NlcnRhaW4gaG93IHRoZSB0aGVyYXB5IGlzIGltcGxlbWVudGVkIGluIGV2ZXJ5ZGF5IGxpZmUgYW5kIHdoaWNoIHNwZWNpZmljIGFwcHJvYWNoZXMgYW5kIG1ldGhvZHMgYXJlIHBhcnRpY3VsYXJseSBlZmZlY3RpdmUuXCIsXHJcbiAgICBpbnNpZ2h0czogXCJUaGUgaW50ZXJ2aWV3IHlpZWxkZWQgdmFsdWFibGUgaW5zaWdodHMgaW50byB0aGUgcmVndWxhciBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgdGhlcmFweSwgdGhlIHVzZSBvZiBhaWRzIGFuZCB0aGUgYWRhcHRhdGlvbiBvZiBleGVyY2lzZXMgdG8gdGhlIGluZGl2aWR1YWwgbmVlZHMgb2YgdGhlIHBhdGllbnRzLiBJdCB3YXMgbm90YWJsZSB0aGF0IHRoZSB0aGVyYXB5IGhhcyBpbXByb3ZlZCBvdmVyIHRoZSBsYXN0IHllYXJzLCBjb25zaWRlcmFibHkgdGhhbmtzIHRvIGJldHRlciBtZWRpY2F0aW9uIGFuZCBhZGFwdGVkIGV4ZXJjaXNlcywgd2l0aCBhIGNvbmNvbWl0YW50IGluY3JlYXNlIGluIGxpZmUgZXhwZWN0YW5jeSBmb3IgY2hpbGRyZW4gYWZmZWN0ZWQgYnkgQ0YuIE9mIHBhcnRpY3VsYXIgaW50ZXJlc3Qgd2FzIHRoZSBlbXBoYXNpcyBvbiB0aGUgaW1wb3J0YW5jZSBvZiBzcG9ydCBhbmQgZXhlcmNpc2UsIHdoaWNoIHNob3VsZCBub3Qgb25seSBiZSB0aGVyYXBldXRpY2FsbHkgZWZmZWN0aXZlLCBidXQgYWxzbyBpbmNyZWFzZSBxdWFsaXR5IG9mIGxpZmUuIFwiLFxyXG4gICAgaW1wbGVtZW50YXRpb246IFwiVGhlIGZvbGxvd2luZyBzdGF0ZW1lbnQgYnkgS2F0cmluIFdlc3Rob2ZmIGhhZCBhIHBhcnRpY3VsYXIgaW1wYWN0IG9uIG91ciBwcm9qZWN0OiBcdTIwMThUaGUgbW9yZSB3ZSBrbm93LCB0aGUgbW9yZSBvcHRpb25zIHdlIGhhdmVcdTIwMTkuIFdlIGxlYXJudCBmcm9tIHRoZSBpbnRlcnZpZXcgdGhhdCB0aGUgY3VycmVudCBtZWRpY2F0aW9uIGlzIGFscmVhZHkgaGVscGluZyBtYW55IHBhdGllbnRzIHZlcnkgd2VsbCwgYnV0IHRoYXQgdGhlcmUgaXMgc3RpbGwgZ3JlYXQgcG90ZW50aWFsIGZvciBpbXByb3ZlbWVudC4gU3VjY2Vzc2Z1bCBnZW5lIHRoZXJhcHkgd291bGQgc2lnbmlmaWNhbnRseSBpbXByb3ZlIHRoZSBxdWFsaXR5IG9mIGxpZmUgb2YgQ0YgcGF0aWVudHMuIFdlIGltcGxlbWVudGVkIHRoZSBmaW5kaW5ncyBmcm9tIHRoaXMgaW50ZXJ2aWV3IGluIG91ciBwYXJ0aWNpcGF0aW9uIGluIE11a29Nb3ZlIC0gd2UgYWxzbyBhY3RpdmVseSB0b29rIHBhcnQgaW4gIEN5c3RpYyBGaWJyb3NpcyBhd2FyZW5lc3MgbW9udGggYW5kIGxlYXJudCBldmVuIG1vcmUgYWJvdXQgdGhlIGltcG9ydGFuY2Ugb2YgcGh5c2lvdGhlcmFweS5cIixcclxuICAgIHBpY3R1cmV1cmxfaW50ZXJ2aWV3OiBcImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9ocC9rYXRyaW4td2VzdGhvZmYtem9vbS53ZWJwXCIsXHJcbiAgICBzdW1tYXJ5OiBbPHA+VGhlIG9iamVjdGl2ZSBvZiBvdXIgZGlzY3Vzc2lvbiB3aXRoIGEgdGhlcmFwaXN0IHdhcyB0byBnYWluIGEgY29tcHJlaGVuc2l2ZSB1bmRlcnN0YW5kaW5nIG9mIHRoZSB0cmVhdG1lbnQgYW5kIGNhcmUgb2YgY2hpbGRyZW4gd2l0aCAgQ3lzdGljIEZpYnJvc2lzLiBUaGUgaW50ZXJ2aWV3IHByb3ZpZGVkIGludmFsdWFibGUgaW5zaWdodHMgaW50byB0aGUgdGhlcmFweSdzIGltcGxlbWVudGF0aW9uLCBoaWdobGlnaHRpbmcgdGhlIHNpZ25pZmljYW50IGFkdmFuY2VtZW50cyBpbiBtZWRpY2F0aW9uIGFuZCB0YWlsb3JlZCBleGVyY2lzZXMgdGhhdCBoYXZlIGxlZCB0byBpbXByb3ZlZCBwYXRpZW50IG91dGNvbWVzIGFuZCBpbmNyZWFzZWQgbGlmZSBleHBlY3RhbmN5LiBBIGtleSB0YWtlYXdheSB3YXMgdGhlIGVtcGhhc2lzIG9uIHRoZSByb2xlIG9mIHNwb3J0cyBhbmQgZXhlcmNpc2UsIG5vdCBqdXN0IGZvciB0aGVyYXBldXRpYyBlZmZpY2FjeSBidXQgYWxzbyBmb3IgZW5oYW5jaW5nIG92ZXJhbGwgcXVhbGl0eSBvZiBsaWZlLiBJdCBsZXQgdG8gb3VyIHBhcnRpY2lwYXRpb24gaW4gdGhlIENGIGF3YXJuZXNzIG1vbnRoIGFuZCB0aGUgb3V0cmVhY2ggcHJvamVjdCBtdWtvbW92ZSB7LyogW0xpbmsgbXVrb21vdmVdICovfTwvcD5dLFxyXG4gICAgbW9udGhzOiBcIk1heVwiLFxyXG4gICAgaW50ZXJ2aWV3Ojw+XHJcbiAgICA8UWFCb3ggcT1cIkZyb20gd2hhdCBhZ2UgZG8gdGhlIHBhdGllbnRzIGNvbWUgdG8geW91PyBIb3cgbG9uZyBkbyB0aGV5IHN0YXk/IEhvdyBtYW55IHBhdGllbnRzIGRvIHlvdSB0cmVhdD9cIiBhPVwiVGhlIHBhdGllbnRzIGNvbWUgdG8gdXMgYXQgYSB2ZXJ5IGVhcmx5IGFnZS4gQSBkZWZpbml0ZSBkaWFnbm9zaXMgaXMgbWFkZSBhZnRlciA2IHdlZWtzIGF0IHRoZSBsYXRlc3QuIE9uY2UgZGlhZ25vc2VkLCB0aGUgd2hvbGUgZmFtaWx5IGlzIGdlbmV0aWNhbGx5IHRlc3RlZCwgYW5kIGNoaWxkcmVuIGFyZSBzZW50IGZvciBwaHlzaW90aGVyYXB5LCBvZnRlbiBzdGFydGluZyBpbiB0aGUgaG9zcGl0YWwuIEN1cnJlbnRseSwgd2UgaGF2ZSA4IGNoaWxkcmVuIHdpdGggQ0YgaW4gb3VyIHByYWN0aWNlLCB3aGljaCBpcyByZWxhdGl2ZWx5IHNtYWxsIGNvbXBhcmVkIHRvIG90aGVyIGRpc2Vhc2VzLiBXZSBoYXZlIHNsaWdodGx5IG1vcmUgQ0YgcGF0aWVudHMgYmVjYXVzZSB3ZSBzcGVjaWFsaXplIGluIGl0LlwiLz5cclxuICAgIDxRYUJveCBxPVwiV2hhdCBraW5kIG9mIGV4ZXJjaXNlcyBkbyB5b3UgZG8/XCIgYT1cIldlIGRvIGEgbG90IG9mIGJyZWF0aGluZyB0aGVyYXB5IGFuZCBoYXZlIGF0dGVuZGVkIHNwZWNpYWwgdHJhaW5pbmcgY291cnNlcyBmb3IgQ0YgdGhhdCBpbnRyb2R1Y2VkIG5ldyB0ZWNobmlxdWVzLiBUaGUgY3VycmVudCBnb2xkIHN0YW5kYXJkIGlzIGF1dG9nZW5vdXMgZHJhaW5hZ2UgYWNjb3JkaW5nIHRvIENoZXZhbGxpZXIsIHdoaWNoIGVmZmVjdGl2ZWx5IHJlbW92ZXMgbXVjdXMuIFdlIGZvbGxvdyBhIGdlbmVyYWwgcm91dGluZTogMS4gd2V0IGluaGFsYXRpb24gdG8gYmluZCBtdWN1cywgMi4gZHJhaW5hZ2UgdG8gZXhwZWwgbXVjdXMsIGFuZCAzLiBhbnRpYmlvdGljcyB0byB3b3JrIG9wdGltYWxseSBvbiBjbGVhbiBsdW5ncy4gV2UgYWxzbyB1c2Ugc3BlY2lhbCBiZWx0cyBmb3IgY29tcHJlc3NpbmcgJ21hZ2ljIHBvaW50cycgdG8gZW5oYW5jZSBsdW5nIHZlbnRpbGF0aW9uLlwiLz5cclxuICAgIDxRYUJveCBxPVwiV2hlbiBkb2VzIGRyYWluYWdlIHN0YXJ0P1wiIGE9XCJXZSBzdGFydCBkcmFpbmFnZSBpbiBuZXdib3JucyB0byBwcmV2ZW50IG11Y3VzIGZyb20gc2V0dGxpbmcuXCIvPlxyXG4gICAgPFFhQm94IHE9XCJBcmUgdGhlcmUgc3BlY2lhbCBleGVyY2lzZXMgdGhhdCBjYW4gYWxzbyBiZSBkb25lIGF0IGhvbWU/XCIgYT1cIlllcywgcGFyZW50cyBhcmUgaW5zdHJ1Y3RlZCBvbiBleGVyY2lzZXMgdGhhdCBjYW4gYWxzbyBiZSBwZXJmb3JtZWQgYXQgaG9tZS5cIi8+XHJcbiAgICA8UWFCb3ggcT1cIkhvdyBvZnRlbiBkb2VzIHRoZSB0aGVyYXB5IHRha2UgcGxhY2U/XCIgYT1cIlRoZXJhcHkgdXN1YWxseSBvY2N1cnMgb25jZSBhIHdlZWsgb3IgZXZlcnkgdHdvIHdlZWtzLiBUaGFua3MgdG8gaW1wcm92ZWQgbWVkaWNhdGlvbiwgY2hpbGRyZW4gYXJlIG5vdyBiZXR0ZXIgb2ZmLiBUaGUgdGhlcmFweSBoYXMgZXZvbHZlZCBzaWduaWZpY2FudGx5LCBtYWtpbmcgaXQgZWFzaWVyIHRvIGNvdWdoIHVwIG11Y3VzIGFuZCBpbXByb3ZpbmcgbGlmZSBleHBlY3RhbmN5LiBFeGVyY2lzZSBzaG91bGQgYmUgZW5qb3lhYmxlIGFuZCBhIHBhcnQgb2YgZGFpbHkgbGlmZSBmcm9tIHRoZSBhZ2Ugb2YgOCBvciA5LlwiLz5cclxuICAgIDxRYUJveCBxPVwiV2hhdCB3b3VsZCBoYXBwZW4gaWYgbm8gcGh5c2lvdGhlcmFweSB3YXMgcGVyZm9ybWVkP1wiIGE9XCJJdFx1MjAxOXMgZGlmZmljdWx0IHRvIHByZWRpY3QsIGJ1dCB3aXRob3V0IHRoZXJhcHksIGNoaWxkcmVuIG9mdGVuIGJlY29tZSBtb3JlIG11Y291c3ksIGxlYWRpbmcgdG8gd29yc2VuZWQgdmVudGlsYXRpb24uIFNwZWNpZmljIHRoZXJhcHkgaXMgY3J1Y2lhbCwgZXNwZWNpYWxseSBkdXJpbmcgaW5mZWN0aW9ucy5cIi8+XHJcbiAgICA8UWFCb3ggcT1cIkhvdyBkbyB5b3UgbWVhc3VyZSBzdWNjZXNzIChpbiB0ZXJtcyBvZiBsdW5nIGZ1bmN0aW9uIHRlc3QsIGV4ZXJjaXNlLCBldGMuKT9cIiBhPVwiU3VjY2VzcyBpcyBtZWFzdXJlZCBzdWJqZWN0aXZlbHkgYnkgbGlzdGVuaW5nIHRvIGJyZWF0aGluZyBhbmQgb2JzZXJ2aW5nIHNraW4gY29sb3IuIEEgd2VsbC12ZW50aWxhdGVkIGx1bmcgc2hvd3MgYSAnZnVsbCBiYXJyZWwnIGFwcGVhcmFuY2UsIHdoaWxlIHdoZWV6aW5nIGluZGljYXRlcyBwb29yIHZlbnRpbGF0aW9uLiBJbiBjbGluaWNzLCBsdW5nIGZ1bmN0aW9uIHRlc3RzLCBDTzIgbWVhc3VyZW1lbnRzLCBhbmQgJ2ZpbmdlciBjbGlwJyB0ZXN0cyBhcmUgdXNlZCwgdGhvdWdoIHJlc3VsdHMgY2FuIGJlIGluZmx1ZW5jZWQgYnkgdGhlIGNoaWxkLlwiLz5cclxuICAgIDxRYUJveCBxPVwiRG8gdGhlIGV4ZXJjaXNlcyBicmluZyByZWxpZWYgb3IgYXJlIHRoZXkgcHJldmVudGF0aXZlIGZvciBmdXJ0aGVyIGNvbXBsYWludHM/XCIgYT1cIlRoZSBleGVyY2lzZXMgc2VydmUgYm90aCB0byByZWxpZXZlIGFjdXRlIGluZmVjdGlvbnMgYW5kIHRvIHByZXZlbnQgZnVydGhlciBpc3N1ZXMuIEZld2VyIGx1bmcgaW5mZWN0aW9ucyByZWR1Y2UgdGhlIGxpa2VsaWhvb2Qgb2YgbXVjdXMgYWRoZXNpb25zLlwiLz5cclxuICAgIDxRYUJveCBxPVwiQXJlIHRoZXJlIGFueSB0b29scyB0byBwZXJmb3JtIHRoZXJhcHk/XCIgYT1cIlllcywgZGV2aWNlcyBsaWtlIHRoZSAnZmx1dHRlcicgb3IgJ2Nvcm5ldCcgaGVscCB3aXRoIGV4aGFsYXRpb24uIFRoZXkgY3JlYXRlIHZpYnJhdGlvbnMgdGhhdCBsb29zZW4gbXVjdXMgaW4gdGhlIGx1bmdzIGFuZCBzaG91bGQgYmUgdXNlZCBieSBhbGwgY2hpbGRyZW4gd2l0aCBsdW5nIGRpc2Vhc2VzLlwiLz5cclxuICAgIDxRYUJveCBxPVwiV2hhdCBjb21wbGFpbnRzIGRvIHBhdGllbnRzIGJyaW5nIHdpdGggdGhlbT9cIiBhPVwiUGF0aWVudHMgdHlwaWNhbGx5IGhhdmUgbHVuZyBwcm9ibGVtcywgZHJ5IGx1bmcgbXVjb3NhLCBhbmQgcGFuY3JlYXRpYyBpc3N1ZXMgbGVhZGluZyB0byBwb29yIG1ldGFib2xpc20sIHJlcXVpcmluZyBlbnp5bWUgdGhlcmFweSBiZWZvcmUgbWVhbHMuIFNvbWUgY2hpbGRyZW4gZXhwZXJpZW5jZSBncm93dGggZGlzb3JkZXJzIGFuZCBsZXNzIGNvbW1vbmx5LCBleGNlc3NpdmUgcGVyc3BpcmF0aW9uLlwiLz5cclxuICAgIDxRYUJveCBxPVwiQXJlIHBhbmNyZWF0aWMgY29tcGxhaW50cyBhbHNvIHRyZWF0ZWQgYnkgcGh5c2lvdGhlcmFwaXN0cz9cIiBhPVwiUGFuY3JlYXRpYyBjb21wbGFpbnRzIGFyZSByYXJlbHkgdHJlYXRlZCB3aXRoIHBoeXNpb3RoZXJhcHksIGV4Y2VwdCBpbiBjYXNlcyBvZiBpbmZsYW1tYXRpb24sIHdoZXJlIHBhdGllbnRzIG1heSBiZSBhZG1pdHRlZCB0byB0aGUgaG9zcGl0YWwuIFRlY2huaXF1ZXMgbGlrZSBtYXNzYWdlIG9yIGtpbmVzaW9sb2d5IHRhcGUgY2FuIGhlbHAgd2l0aCBjb25zdGlwYXRpb24uXCIvPlxyXG4gICAgPFFhQm94IHE9XCJBcmUgdGhlcmUgYW55IHNwZWNpYWwgaHlnaWVuZSBndWlkZWxpbmVzIGZvciB5b3Ugd2hlbiB3b3JraW5nIHdpdGggQ0YgcGF0aWVudHM/XCIgYT1cIkh5Z2llbmUgaXMgY3J1Y2lhbCB3aGVuIHRyZWF0aW5nIENGIHBhdGllbnRzLiBXZSBzZXBhcmF0ZSBjaGlsZHJlbiB3aXRoIGFuZCB3aXRob3V0IGluZmVjdGlvbnMgKGUuZy4sIFBzZXVkb21vbmFzKSBhbmQgZW5mb3JjZSBzdHJpY3QgZGlzaW5mZWN0aW9uIHByb3RvY29scy4gT25seSBjaGlsZHJlbiB3aXRoIHNpbWlsYXIgaW5mZWN0aW9uIHN0YXR1c2VzIGFyZSB0cmVhdGVkIG9uIHRoZSBzYW1lIGRheS5cIi8+XHJcbiAgICA8UWFCb3ggcT1cIkFyZSB0aGUgc3BlY2lmaWMgZXhlcmNpc2VzIGN1c3RvbWl6ZWQ/IEFuZCBpZiBzbywgaG93IGRvIHlvdSBrbm93IHdoaWNoIHRoZXJhcHkgaXMgdGhlIHJpZ2h0IG9uZSBmb3Igd2hpY2ggcGF0aWVudD9cIiBhPVwiRXhlcmNpc2VzIGFyZSB0YWlsb3JlZCB0byBlYWNoIHBhdGllbnQncyBzaXR1YXRpb24sIGZvY3VzaW5nIG9uIG11Y3VzIHJlbW92YWwgYW5kIGx1bmcgdmVudGlsYXRpb24uIEVhY2ggdGhlcmFwaXN0IG1heSBoYXZlIHRoZWlyIG93biBwcmVmZXJyZWQgZXhlcmNpc2VzIGFuZCB0ZWNobmlxdWVzLlwiLz5cclxuICAgIDxRYUJveCBxPVwiRG8gcGF0aWVudHMgYWx3YXlzIGdvIHRvIHRoZSBzYW1lIHBoeXNpb3RoZXJhcGlzdD9cIiBhPVwiWWVzLCBpZiB0aGVyYXB5IGlzIGVmZmVjdGl2ZSwgcGF0aWVudHMgdGVuZCB0byByZW1haW4gd2l0aCB0aGUgc2FtZSBwaHlzaW90aGVyYXBpc3QuXCIvPlxyXG4gICAgPFFhQm94IHE9XCJIb3cgbWFueSBwaHlzaW90aGVyYXBpc3RzIG9mZmVyIG11Y28tdGhlcmFweT9cIiBhPVwiVGhlIGV4YWN0IG51bWJlciBpcyB1bmtub3duLCBidXQgc2V2ZXJhbCBjaGlsZCB0aGVyYXBpc3RzIGluIHRoZSByZWdpb24gcHJvdmlkZSBDRiB0aGVyYXB5LlwiLz5cclxuICAgIDxRYUJveCBxPVwiSG93IGFyZSB0aGUgcmVsYXRpdmVzIGVkdWNhdGVkP1wiIGE9XCJFZHVjYXRpb24gb2Z0ZW4gYmVnaW5zIGluIHRoZSBtYXRlcm5pdHkgd2FyZCB3aXRoIGEgc3dlYXQgdGVzdC4gSW4gR1x1MDBGQ3RlcnNsb2gsIGFsbCBjaGlsZHJlbiBhcmUgcmVmZXJyZWQgdG8gQmV0aGVsIGZvciBpbW1lZGlhdGUgQ0YgY2FyZS4gUGFyZW50cyBvZnRlbiBleHBlcmllbmNlIHRyYXVtYSBhcyBjaGlsZHJlbiBjYW4gYmUgc2V2ZXJlbHkgaWxsIGRlc3BpdGUgYXBwZWFyaW5nIGhlYWx0aHkuXCIvPlxyXG4gICAgPFFhQm94IHE9XCJXaGF0IGFyZSB0aGUgbGltaXRhdGlvbnMgb2YgaW5kaXZpZHVhbCBtZWRpY2luZT9cIiBhPVwiRHJ1ZyBlZmZlY3RpdmVuZXNzIGNhbiB2YXJ5LCBhbmQgc29tZSBhcmUgb25seSBhcHByb3ZlZCBmcm9tIGEgY2VydGFpbiBhZ2UuIEltcHJvdmVkIG1lZGljYXRpb25zIGNhbiBzaWduaWZpY2FudGx5IGVuaGFuY2UgcXVhbGl0eSBvZiBsaWZlIGFuZCBsaWZlIGV4cGVjdGFuY3kuXCIvPlxyXG4gICAgPC8+XHJcbiAgfSxcclxuICB7XHJcbiAgICB0aXRsZTogXCJEci5cIixcclxuICAgIHZvcm5hbWU6IFwiTWljaGFlbGFcIixcclxuICAgIG5hY2hubmFtZTogXCJCaWVuZXJ0XCIsXHJcbiAgICBqb2I6IFwiIFNjaWVudGlmaWMgU2FsZXMgUmVwcmVzZW50YXRpdmUgZm9yIENlbGwgQ3VsdHVyZSBQcm9kdWN0c1wiLFxyXG4gICAgYWZmaWxpYXRpb246IFwiU3RlbWNlbGxcIixcclxuICAgIHBpY3R1cmV1cmw6IHBpY3NbJ3N0ZW1jZWxsJ10sXHJcbiAgICB0YWc6IFwiSW5kdXN0cnlcIixcclxuICAgIGhlYWRpbmc6IFwiTG9uZ3N0YW5kaW5nIFN1cHBvcnQgZnJvbSBTdGVtY2VsbCBFeHBlcnQgaW4gQ2VsbCBDdWx0dXJlIE1lZGlhIGFuZCBQcmltYXJ5IENlbGwgQ3VsdGl2YXRpb25cIixcclxuICAgIGludGVydmlld3RhYmlkOiBcIm1pY2hhZWxhXCIsXHJcblxyXG4gICAgbGFuZ3VhZ2U6IFwiZGVcIixcclxuICAgIHF1b3RlTmFjaG5hbWU6XCJCaWVuZXJ0LCBTdGVtY2VsbFwiLFxyXG4gICAgcXVvdGVWb3JuYW1lOiBcIkRyLiBNaWNoYWVsYVwiLFxyXG4gICAgcXVvdGU6IFwiVGhlIHVzZSBvZiBwcmltYXJ5IGN1bHR1cmVzIGluIHJlc2VhcmNoIHJlcHJlc2VudHMgdGhlIGZpcnN0IHN0ZXAgdG93YXJkIGNsaW5pY2FsIHN0dWRpZXMuIFlvdXIgYXBwcm9hY2ggaXMgaW5ub3ZhdGl2ZSwgYXMgd2UgaGF2ZSBuZXZlciB1bmRlcnRha2VuIHNvbWV0aGluZyBsaWtlIHRoaXMgYmVmb3JlLlwiLFxyXG4gICAgYWltb2Zjb250YWN0OiBcIk91ciBwcmltYXJ5IGdvYWwgaW4gcmVhY2hpbmcgb3V0IHRvIGhlciB3YXMgdG8gZ2FpbiBpbnNpZ2h0cyBpbnRvIG9wdGltaXppbmcgY2VsbCBjdWx0dXJlIG1lZGlhLCBleHBsb3JlIHBvdGVudGlhbCBzcG9uc29yc2hpcCBvcHBvcnR1bml0aWVzIGZvciBvdXIgcHJvamVjdCwgYW5kIHNlZWsgZXhwZXJ0IGFkdmljZSBvbiBoYW5kbGluZyBwcmltYXJ5IGNlbGxzIGluIHRoZSBsYWIuXCIsXHJcbiAgICBpbnNpZ2h0czogXCJUaHJvdWdob3V0IG91ciBtdWx0aXBsZSBkaXNjdXNzaW9ucywgc2hlIG9mZmVyZWQgZGV0YWlsZWQgYWR2aWNlIG9uIHNlbGVjdGluZyBhbmQgb3B0aW1pemluZyBjZWxsIGN1bHR1cmUgbWVkaWEgZm9yIG91ciBzcGVjaWZpYyBuZWVkcywgd2hpbGUgYWxzbyBjb25uZWN0aW5nIHVzIHdpdGggb3Bwb3J0dW5pdGllcyBmb3Igc3BvbnNvcnNoaXAuIExhdGVyIGluIHRoZSBwcm9qZWN0LCBzaGUgcHJvdmlkZWQgdGVjaG5pY2FsIGd1aWRhbmNlIG9uIHRoZSBjdWx0aXZhdGlvbiBhbmQgaGFuZGxpbmcgb2YgcHJpbWFyeSBjZWxscywgZW5zdXJpbmcgdGhhdCB3ZSBmb2xsb3dlZCBiZXN0IHByYWN0aWNlcyBmb3IgY2VsbCBjdWx0dXJlLlwiLFxyXG4gICAgaW1wbGVtZW50YXRpb246IFwiQmFzZWQgb24gaGVyIGZlZWRiYWNrLCB3ZSByZWZpbmVkIG91ciBhcHByb2FjaCB0byBjZWxsIGN1bHR1cmUgbWVkaWEsIGVuaGFuY2luZyBvdXIgZXhwZXJpbWVudGFsIHdvcmtmbG93cy5IZXIgdGVjaG5pY2FsIHN1cHBvcnQsIGFzIHdlbGwgYXMgdGhlIHN1cHBvcnQgb2YgSnVsaWEgV2F0c29uIGhlbHBlZCB1cyB0byBlc3RhYmxpc2ggb3VyIGV4cGVyaW1lbnRzIGluIGNlbGxjdWx0dXJlLiBBZGRpdGlvbmFsbHksIGhlciBhZHZpY2Ugd2FzIGNyaXRpY2FsIGR1cmluZyB0aGUgdHJhbnNpdGlvbiB0byBwcmltYXJ5IGNlbGwgY3VsdHVyZSwgaGVscGluZyB1cyBzZWN1cmUgdGhlIG5lY2Vzc2FyeSByZXNvdXJjZXMgYW5kIGV4cGVydGlzZSBmb3Igb3VyIGV4cGVyaW1lbnRzLlwiLFxyXG4gICAgc3VtbWFyeTogXCJXZSBoYXZlIGhhZCB0aGUgcHJpdmlsZWdlIG9mIGNvbGxhYm9yYXRpbmcgd2l0aCBhIGRlZGljYXRlZCBleHBlcnQgZnJvbSBTdGVtY2VsbCBUZWNobm9sb2dpZXMsIHdobyBoYXMgY29uc2lzdGVudGx5IHN1cHBvcnRlZCBpR0VNIEJpZWxlZmVsZC4gU2hlIHByb3ZpZGVkIHZhbHVhYmxlIGd1aWRhbmNlIG9uIGNlbGwgY3VsdHVyZSBtZWRpYSwgc3BvbnNvcnNoaXAgb3Bwb3J0dW5pdGllcywgYW5kIGxhdGVyLCBwcmFjdGljYWwgYWR2aWNlIGZvciBjdWx0aXZhdGluZyBwcmltYXJ5IGNlbGxzLiBIZXIgY29udHJpYnV0aW9ucyBoYXZlIGJlZW4gaW5zdHJ1bWVudGFsIGluIGFkdmFuY2luZyBvdXIgcHJvamVjdC5cIixcclxuICAgIG1vbnRoczogXCJzZXZlcmFsIHRpbWVzXCIsXHJcbiAgICBwaWN0dXJldXJsX2ludGVydmlldzogXCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvaHAvZGFuaWVsYS53ZWJwXCIsXHJcbiAgfSxcclxuICB7XHJcbiAgICB2b3JuYW1lOiBcIkRvY3VtZW50aW5nIHByb2dyZXNzXCIsXHJcbiAgICBuYWNobm5hbWU6IFwiXCIsXHJcbiAgICBwaWN0dXJldXJsOiBwaWNzWydsb2dvJ10sXHJcbiAgICB0YWc6IFwiTWlsZXN0b25lXCIsXHJcbiAgICBqb2I6IFwiVGVhbSBpR0VNXCIsXHJcbiAgICBhZmZpbGlhdGlvbjogXCJCaWVsZmVsZCBDZUJpVGVjIDIwMjRcIixcclxuICAgIGhlYWRpbmc6IFwiVHJhY2tpbmcgcHJvZ3Jlc3MgaW4gZXhwZXJ0IHNlYXJjaCBhbmQgaWRlYSBkZXZlbG9wbWVudFwiLFxyXG4gICAgaW50ZXJ2aWV3dGFiaWQ6IFwicHJvZ3Jlc3NcIixcclxuXHJcbiAgICBxdW90ZTogXCJJIGJlbGlldmUgb3VyIGZvY3VzIG9uIGEgaHVtYW4tY2VudHJpYyBhcHByb2FjaCBpcyBjcnVjaWFsLiBJdCBlbnN1cmVzIHRoYXQgb3VyIHJlc2VhcmNoIG5vdCBvbmx5IGFkdmFuY2VzIHNjaWVuY2UgYnV0IGFsc28gcHJpb3JpdGl6ZXMgdGhlIG5lZWRzIGFuZCBzYWZldHkgb2YgdGhlIHBhdGllbnRzIHdlIGFpbSB0byBoZWxwLlwiLFxyXG4gICAgcXVvdGVOYWNobmFtZTpcIkxhbmdlLCBUZWFtbWVtYmVyXCIsXHJcbiAgICBxdW90ZVZvcm5hbWU6IFwiS2F5YVwiLFxyXG4gICAgdHlwZTogXCJtZXRhXCIsXHJcbiAgICBzdW1tYXJ5OiBbPHA+XHJcbiAgICAgIEVhcmx5IGluIG91ciByZXNlYXJjaCwgd2UgY29tbWl0dGVkIHRvIGEgaHVtYW4tY2VudHJpYyBhcHByb2FjaCwgcmVjb2duaXppbmcgdGhlIGltcG9ydGFuY2Ugb2Ygd29ya2luZyBhY2NvcmRpbmcgdG8gR29vZCBMYWJvcmF0b3J5IFByYWN0aWNlIChHTFApIHN0YW5kYXJkcy4gQXQgdGhpcyBwb2ludCwgd2UgYWxzbyBpZGVudGlmaWVkIGtleSBTcGVjaWFsIFByaXplcyB0byBhaW0gZm9yLCBpbmNsdWRpbmcgdGhlIEJpb3NhZmV0eSBhbmQgU2VjdXJpdHkgQXdhcmQsIEJlc3QgTmV3IEJhc2ljIFBhcnQsIGFuZCBCZXN0IEludGVncmF0ZWQgSHVtYW4gUHJhY3RpY2VzLiBUbyBmdXJ0aGVyIGFkdmFuY2Ugb3VyIHByb2plY3QsIHdlIHBhcnRuZXJlZCB3aXRoIFN0ZW1jZWxsIFRlY2hub2xvZ2llcywgd2hvc2UgdGVjaG5pY2FsIHN1cHBvcnQgcHJvdmlkZWQgdmFsdWFibGUgaW5zaWdodHMuIFRoaXMgY29sbGFib3JhdGlvbiBhbGxvd2VkIHVzIHRvIGV4cGxvcmUgdGhlIGN1bHRpdmF0aW9uIG9mIHByaW1hcnkgaHVtYW4gbmFzYWwgZXBpdGhlbGlhbCBjZWxscywgd2hpY2ggYXJlIGNydWNpYWwgZm9yIHRlc3Rpbmcgb3VyIHN5bnRoZXRpYyBiaW9sb2d5IGNvbXBvbmVudHMgYW5kIFByaW1lIEVkaXRpbmcgdGVjaG5vbG9naWVzLiBJbiBsaW5lIHdpdGggdGhpcywgd2UgZXhwYW5kZWQgb3VyIGJpb3NhZmV0eSBzdGFuZGFyZHMgdG8gZW5zdXJlIGNvbXBsaWFuY2Ugd2l0aCBoaWdoZXIgc2FmZXR5IGxldmVscyBhbmQgZW5oYW5jZWQgb3VyIHVuZGVyc3RhbmRpbmcgb2YgcHJlY2xpbmljYWwgdHJpYWwtbGlrZSBleHBlcmltZW50cy4gTW9yZW92ZXIsIHdlIGFyZSBjb21taXR0ZWQgdG8gcmFpc2luZyBhd2FyZW5lc3Mgd2l0aGluIG91ciBsb2NhbCBjb21tdW5pdHkgd2hpbGUgYWxzbyBzZWVraW5nIHRvIGJyb2FkZW4gb3VyIGltcGFjdCBpbnRlcm5hdGlvbmFsbHkuIFRoaXMgZHVhbCBmb2N1cyBoZWxwcyB1cyBlbnN1cmUgYm90aCB0aGUgc2FmZXR5IGFuZCBzb2NpZXRhbCByZWxldmFuY2Ugb2Ygb3VyIHByb2plY3QgYXMgd2UgbW92ZSBmb3J3YXJkLlxyXG4gICAgICAgIDwvcD4sXHJcbiAgXHJcbiAgICAgICAgPHVsPlxyXG4gICAgICAgICAgICA8bGk+XHJcbiAgICAgICAgICAgICAgICA8Yj5Db21taXRtZW50IHRvIEh1bWFuLUNlbnRyaWMgQXBwcm9hY2g6PC9iPiBFYXJseSBpbiB0aGUgcHJvamVjdCwgdGhlIGRlY2lzaW9uIHRvIGZvbGxvdyBhIGh1bWFuLWNlbnRyaWMgYXBwcm9hY2ggZW5zdXJlZCB0aGF0IHNvY2lldGFsIGltcGFjdCwgZXRoaWNhbCBjb25zaWRlcmF0aW9ucywgYW5kIHRoZSBuZWVkcyBvZiBwYXRpZW50cyB3b3VsZCBiZSBjZW50cmFsIHRvIGFsbCBzY2llbnRpZmljIGRldmVsb3BtZW50cy5cclxuICAgICAgICAgICAgPC9saT5cclxuICAgICAgICAgICAgPGxpPlxyXG4gICAgICAgICAgICAgICAgPGI+U2VsZWN0aW9uIG9mIFNwZWNpYWwgUHJpemVzIChCaW9zYWZldHkgYW5kIFNlY3VyaXR5LCBCZXN0IEludGVncmF0ZWQgSHVtYW4gUHJhY3RpY2VzKTo8L2I+IFByaW9yaXRpemluZyBiaW9zYWZldHksIHNlY3VyaXR5LCBhbmQgaHVtYW4gcHJhY3RpY2VzIGZyb20gdGhlIHN0YXJ0IGhpZ2hsaWdodGVkIHRoZSBwcm9qZWN0XHUyMDE5cyBmb2N1cyBvbiBzYWZldHksIGV0aGljYWwgcmVzcG9uc2liaWxpdHksIGFuZCBjb21tdW5pdHkgZW5nYWdlbWVudCwgYWxpZ25pbmcgd2l0aCBicm9hZGVyIGh1bWFuLWNlbnRyaWMgZ29hbHMuXHJcbiAgICAgICAgICAgIDwvbGk+XHJcbiAgICAgICAgICAgIDxsaT5cclxuICAgICAgICAgICAgICAgIDxiPkNvbGxhYm9yYXRpb24gd2l0aCBTdGVtY2VsbCBUZWNobm9sb2dpZXM6PC9iPiBQYXJ0bmVyaW5nIHdpdGggaW5kdXN0cnkgbGVhZGVycyBwcm92aWRlZCB0ZWNobmljYWwgZXhwZXJ0aXNlIHRoYXQgYWxsb3dlZCB0aGUgdGVhbSB0byBkZWVwZW4gdGhlaXIgdW5kZXJzdGFuZGluZyBvZiBodW1hbiBjZWxsIGN1bHRpdmF0aW9uIGFuZCBnZW5lIGVkaXRpbmcsIGVuc3VyaW5nIHRoYXQgdGhlIHByb2plY3RcdTIwMTlzIHRlY2hub2xvZ2ljYWwgZGV2ZWxvcG1lbnRzIHdlcmUgaW5mb3JtZWQgYnkgcmVhbC13b3JsZCBhcHBsaWNhdGlvbnMuXHJcbiAgICAgICAgICAgIDwvbGk+XHJcbiAgICAgICAgICAgIDxsaT5cclxuICAgICAgICAgICAgICAgIDxiPkV4cGFuc2lvbiBvZiBCaW9zYWZldHkgU3RhbmRhcmRzOjwvYj4gRXh0ZW5kaW5nIGJpb3NhZmV0eSBwcm90b2NvbHMgdG8gbWltaWMgcHJlY2xpbmljYWwgdHJpYWwgY29uZGl0aW9ucyByZWluZm9yY2VkIHRoZSBjb21taXRtZW50IHRvIHNhZmUsIGV0aGljYWwgcmVzZWFyY2ggcHJhY3RpY2VzIGFuZCBsYWlkIHRoZSBncm91bmR3b3JrIGZvciBjbGluaWNhbCByZWxldmFuY2UsIGRlbW9uc3RyYXRpbmcgcmVzcG9uc2liaWxpdHkgdG93YXJkIGZ1dHVyZSBwYXRpZW50cy5cclxuICAgICAgICAgICAgPC9saT5cclxuICAgICAgICAgICAgPGxpPlxyXG4gICAgICAgICAgICAgICAgPGI+TG9jYWwgYW5kIEludGVybmF0aW9uYWwgQ29tbXVuaXR5IEVuZ2FnZW1lbnQ6PC9iPiBFZmZvcnRzIHRvIHJhaXNlIGF3YXJlbmVzcyBhdCBib3RoIGxvY2FsIGFuZCBnbG9iYWwgbGV2ZWxzIGVuc3VyZWQgdGhhdCB0aGUgcHJvamVjdCB3YXMgbm90IG9ubHkgc2NpZW50aWZpY2FsbHkgc291bmQgYnV0IGFsc28gc29jaWFsbHkgcmVzcG9uc2libGUsIHdpdGggYSBmb2N1cyBvbiBlZHVjYXRpbmcgYW5kIGludm9sdmluZyB0aGUgcHVibGljIGluIHRoZSBjb252ZXJzYXRpb24gYXJvdW5kICBDeXN0aWMgRmlicm9zaXMgYW5kIGdlbmUgdGhlcmFweS5cclxuICAgICAgICAgICAgPC9saT5cclxuICAgICAgICA8L3VsPlxyXG4gICAgICAgIF0sXHJcbiAgICBtb250aHM6IFwibWF5XCJcclxuICB9LFxyXG4gIHtcclxuICAgIHZvcm5hbWU6IFwiTXVrb01vdmVcIixcclxuICAgIG5hY2hubmFtZTogXCJcIixcclxuICAgIHBpY3R1cmV1cmw6IHBpY3NbJ211a29tb3ZlJ10sXHJcbiAgICB0YWc6IFwiT3V0cmVhY2hcIixcclxuICAgIGpvYjogXCJUZWFtIGlHRU1cIixcclxuICAgIGFmZmlsaWF0aW9uOiBcIkJpZWxmZWxkIENlQmlUZWMgMjAyNFwiLFxyXG4gICAgaGVhZGluZzogXCJNb3ZpbmcgdG9nZXRoZXIgZm9yIGhlYWx0aCBhbmQgaG9wZSwgb3VyIHBhcnRpY2lwYXRpb24gaW4gQ0YgYXdhcm5lc3MgbW9udGhcIixcclxuICAgIGludGVydmlld3RhYmlkOiBcIm11a29tb3ZlaHBcIixcclxuICAgIHR5cGU6IFwibWV0YVwiLFxyXG5cclxuICAgIHF1b3RlTmFjaG5hbWU6IFwiU3VzYXQsIFRlYW1tZW1iZXJcIixcclxuICAgIHF1b3RlVm9ybmFtZTogXCJLYXRobGVlblwiLFxyXG4gICAgcXVvdGU6IFwiSXQgd2FzIGFtYXppbmcgdG8gc2VlIGhvdyBtb3ZlbWVudCBjYW4gYnJpbmcgcGVvcGxlIHRvZ2V0aGVyLiBJIGhhZCBhIGdyZWF0IHRpbWUuXCIsXHJcbiAgICBzdW1tYXJ5OiBbPHA+TVVLT21vdmV7LyogW0xJTksgdW50ZW4gbXVrb21vdmVdICovfSBpcyBhIHNwb3J0cyBpbml0aWF0aXZlIGJ5IE11a292aXN6aWRvc2UgZS5WLiwgdGhlIEdlcm1hbiBDeXN0aWMgRmlicm9zaXMgQXNzb2NpYXRpb24sIHRvIHJhaXNlIGF3YXJlbmVzcyBhbmQgZnVuZHMgZm9yICBDeXN0aWMgRmlicm9zaXMuIFRlYW0gaUdFTSBCaWVsZWZlbGQgcGFydGljaXBhdGVkIGZyb20gTWF5IDh0aCB0byBNYXkgMTJ0aCwgcHJvbW90aW5nIHRoZSBldmVudCBhdCB0aGVpciB1bml2ZXJzaXR5IGFuZCBjaXR5LCBlbmNvdXJhZ2luZyBvdGhlcnMgdG8gam9pbiBhbmQgY29sbGVjdCBzcG9ydCBob3Vycy4gVGhleSBvcmdhbml6ZWQgYSB0ZWFtIGV2ZW50IGF0IHRoZWlyIHVuaXZlcnNpdHksIGludm9sdmluZyBzcG9ydHMgZ2FtZXMgdG8gcHJvbW90ZSBjb21tdW5pdHkgZW5nYWdlbWVudC4gVGhlaXIgZWZmb3J0cyBoZWxwZWQgc3VycGFzcyB0aGVpciBnb2FsIG9mIDI0MCBob3Vycywgd2l0aCB0aGUgdGVhbSBhY2hpZXZpbmcgMzU4IHNwb3J0IGhvdXJzLCB3aGlsZSB0aGUgZW50aXJlIGV2ZW50IGdhdGhlcmVkIG92ZXIgMzYsMDAwIHNwb3J0IGhvdXJzLiBUaGUgaW5pdGlhdGl2ZSBzdWNjZXNzZnVsbHkgcmFpc2VkIGF3YXJlbmVzcyBhYm91dCAgQ3lzdGljIEZpYnJvc2lzIGFuZCBwcm9tb3RlZCBwaHlzaWNhbCBhY3Rpdml0eSBhcyBhIG1lYW5zIG9mIGNvbW11bml0eSBidWlsZGluZy48L3A+XSxcclxuICAgIG1vbnRoczogXCJNYXlcIlxyXG4gIH0sXHJcbiAge1xyXG4gICAgdGl0bGU6IFwiTS5TYy5cIixcclxuICAgIHZvcm5hbWU6IFwiSmFuLVBoaWxsaXBwXCIsXHJcbiAgICBuYWNobm5hbWU6IFwiR2VyaGFyZHNcIixcclxuICAgIGpvYjogXCJJbnRlcm5cIixcclxuICAgIGFmZmlsaWF0aW9uOiBcIiBIYXJ2YXJkLyBCb3N0b24gQ2hpbGRyZW5zIEhvc3BpdGFsXCIsXHJcbiAgICBwaWN0dXJldXJsOiBcImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9ocC9ocC1qcGdlcmhhcmRzLXBvdHJhdHMud2VicFwiLFxyXG4gICAgdGFnOiBcIkFjYWRlbWlhXCIsXHJcbiAgICBoZWFkaW5nOiBcIkRpc2N1c3Npb24gb24gb3B0aW1pemluZyBvdXIgcGVnUk5BIERlc2lnbiB0byBpbXByb3ZlIHByZWNpc2lvbiBpbiBwcmltZSBlZGl0aW5nXCIsXHJcbiAgICBpbnRlcnZpZXd0YWJpZDogXCJKUHBlZ1JOQVwiLFxyXG5cclxuICAgIGxhbmd1YWdlOiBcImRlXCIsXHJcbiAgICBxdW90ZU5hY2huYW1lOiBcIkxlbmdlciwgVGVhbW1lbWJlclwiLFxyXG4gICAgcXVvdGVWb3JuYW1lOiBcIk1hbHRlXCIsXHJcbiAgICBxdW90ZTogXCJUaGUgaW50ZXJ2aWV3IHByb3ZlZCB0byBiZSBpbnZhbHVhYmxlIGluIGdhaW5pbmcgYW4gaW5pdGlhbCB1bmRlcnN0YW5kaW5nIG9mIHRoZSBwcmluY2lwbGVzIG9mIHBlZ1JOQSBkZXNpZ24gYW5kIG9wdGltaXphdGlvbiwgcGFydGljdWxhcmx5IGluIHRoZSBjb250ZXh0IG9mIHNpbGVudCBlZGl0cy5cIixcclxuICAgIGFpbW9mY29udGFjdDogXCJUaGUgYWltIG9mIHRoZSBjb250YWN0IHdhcyB0byBlbmdhZ2UgaW4gYSBkaXNjdXNzaW9uIGFib3V0IHByaW1lIGVkaXRpbmcgYW5kIHBlZ1JOQXMsIGFzIHRoZSBKYW4tUGhpbGxpcCBHZXJoYXJkcyBoYWQgdXNlZCB0aGVzZSB0ZWNobm9sb2dpZXMgaW4gaGlzIGludGVybnNoaXAgYXQgdGhlIEJvc3RvbiBDaGlsZHJlbnMgSG9zcGl0YWwuIFdlIHNvdWdodCB0byBleGNoYW5nZSBpZGVhcywgZ2F0aGVyIGluc2lnaHRzLCBhbmQgZXhwbG9yZSBwb3RlbnRpYWwgaW1wcm92ZW1lbnRzIG9yIHN0cmF0ZWdpZXMgZm9yIG91ciBwcm9qZWN0LCBsZXZlcmFnaW5nIGhpcyBleHBlcmllbmNlIHdpdGggcHJpbWUgZWRpdGluZyB0b29scy4gSGlzIHByYWN0aWNhbCBrbm93bGVkZ2UgaW4gdGhpcyBmaWVsZCB3YXMgdmVyeSB2YWx1YWJsZSBmb3IgcmVmaW5pbmcgb3VyIGFwcHJvYWNoIGFuZCBlbnN1cmluZyB3ZSB3ZXJlIGFsaWduZWQgd2l0aCB0aGUgbGF0ZXN0IGFkdmFuY2VtZW50cyBhbmQgbWV0aG9kb2xvZ2llcyBpbiBwcmltZSBlZGl0aW5nLiBcIixcclxuICAgIGluc2lnaHRzOiBcIkR1cmluZyBvdXIgZGlzY3Vzc2lvbiB3ZSBnYWluZWQgdmFsdWFibGUgaW5zaWdodHMgdGhhdCBoYWQgYSBzaWduaWZpY2FudCBpbXBhY3Qgb24gb3VyIHByb2plY3QuIE9uZSBvZiB0aGUgbW9zdCBpbXBvcnRhbnQgZmluZGluZ3Mgd2FzIHRoZSBlZmZlY3RpdmVuZXNzIG9mIHNpbGVudCBlZGl0cywgd2hpY2ggd2lsbCBlbmFibGUgdXMgdG8gbWFrZSBvdXIgUHJpbWVHdWlkZSBzYWZlci4gU2lsZW50IGVkaXRzIGNoYW5nZSB0aGUgc2VxdWVuY2Ugb2YgYmFzZXMgaW4gdGhlIEROQSBpbiBzdWNoIGEgd2F5IHRoYXQgdGhlIHJlc3VsdGluZyBwcm90ZWluIHJlbWFpbnMgdW5jaGFuZ2VkLCBiZWNhdXNlIHRoZSBnZW5ldGljIGNvZGUgaXMgcmVkdW5kYW50LiBUaGlzIG1lYW5zIHRoYXQgZGlmZmVyZW50IGNvZG9ucyBjYW4gY29kZSBmb3IgdGhlIHNhbWUgYW1pbm8gYWNpZC4gQnkgbWFraW5nIHNpbGVudCBlZGl0cyBpbiBhZGRpdGlvbiB0byBjb3JyZWN0aW5nIHRoZSBDRlRSIGdlbmUsIHdlIGNhbiBwcmV2ZW50IHRoZSBwZWdSTkEgZnJvbSByZWJpbmRpbmcuICBXZSBoYXZlIGFsc28gbGVhcm5lZCB0aGF0IHRoZSBsZW5ndGggb2YgdGhlIHByaW1lciBiaW5kaW5nIHNpdGUgKFBCUykgcGxheXMgYSBjcnVjaWFsIHJvbGUgaW4gZGV0ZXJtaW5pbmcgb3B0aW1hbCByZXN1bHRzIGFuZCB0aGF0IGl0IGlzIHJlY29tbWVuZGVkIHRvIGtlZXAgdGhlIFBCUyB0ZW1wZXJhdHVyZSBjbG9zZSB0byAzN1x1MDBCMEMuIFNwZWNpZmljYWxseSwgUEJTIGxlbmd0aHMgb2YgMTdudCAoMzguM1x1MDBCMEMpIGFuZCAxNm50ICgzNi40XHUwMEIwQykgd2VyZSBmb3VuZCB0byBiZSBpZGVhbCBvcHRpb25zLiBGb3Igb3VyIHBsYW5uZWQgc2V0IG9mIDEyIHNhbXBsZXMsIGl0IHdhcyByZWNvbW1lbmRlZCB0byB1c2UgdGhyZWUgZGlmZmVyZW50IFBCUyBsZW5ndGhzIChkaWZmZXJpbmcgYnkgKy8tIDFudCBmcm9tIHRoYXQgY2xvc2UgdG8gMzdcdTAwQjBDKSBpbiBjb21iaW5hdGlvbiB3aXRoIGZvdXIgcmV2ZXJzZSB0cmFuc2NyaXB0YXNlIHRlbXBsYXRlIChSVFRzKSB0byBhY2hpZXZlIHRoZSBiZXN0IHJlc3VsdC4gQW5vdGhlciBpbXBvcnRhbnQgZmluZGluZyB3YXMgdGhlIHVzZSBvZiBub24tYW5ub3RhdGVkIHJlZ2lvbnMgd2l0aCBvdmVyaGFuZ3MgZm9yIGNsb25pbmcsIHdoaWNoIGNvdWxkIGdpdmUgYmV0dGVyIHJlc3VsdHMgaW4gb3VyIGV4cGVyaW1lbnRzLiBIb3dldmVyLCB3ZSBhbHNvIGVuY291bnRlcmVkIGNvbmNlcm5zIHRoYXQgY2lyY1JOQSwgYSBjb3ZhbGVudGx5IGNsb3NlZCBjaXJjdWxhciBSTkEgbW9sZWN1bGUsIG1pZ2h0IGJlIHN0ZXJpY2FsbHkgaGluZGVyZWQgYnkgQ2FzOSwgd2hpY2ggd2UgbmVlZCB0byBpbnZlc3RpZ2F0ZSBmdXJ0aGVyLiBXaGVuIGRpc2N1c3NpbmcgY2xvbmluZyBvdmVyaGFuZ3MsIHdlIGxlYXJuZWQgdGhhdCBhIGJhc2UtcGFpciBsZW5ndGggY2xvc2UgdG8gNjBcdTAwQjBDIGlzIG9wdGltYWwuIEhvd2V2ZXIsIHRoZSB1c2Ugb2YgYSAxNW50IFBCUyB3YXMgbm90IHJlY29tbWVuZGVkIGFzIGl0IGhhcyBhIGxvd2VyIHRlbXBlcmF0dXJlIHJhbmdlIHdoaWNoIGNvdWxkIGFmZmVjdCBwZXJmb3JtYW5jZS4gQWx0aG91Z2ggd2Ugc3RpbGwgbmVlZCB0byBjb25maXJtIHRoZSBvbGlnb251Y2xlb3RpZGUgZGVsaXZlcnkgdGltZSwgdGhlc2UgZmluZGluZ3Mgd2lsbCBoZWxwIHVzIHRvIHJlZmluZSBvdXIgY2xvbmluZyBzdHJhdGVneSwgb3B0aW1pemUgUEJTIHNlbGVjdGlvbiBhbmQgaW1wcm92ZSBvdXIgb3ZlcmFsbCBhcHByb2FjaCB0byBwcmltZXIgZWRpdGluZywgZXNwZWNpYWxseSBpbiB0ZXJtcyBvZiB0aGUgcGVnUk5BIGRlc2lnbi5cIixcclxuICAgIGltcGxlbWVudGF0aW9uOiBcIldlIGluY29ycG9yYXRlZCB0aGUgbGVzc29ucyBsZWFybmVkIGZyb20gb3VyIGRpc2N1c3Npb25zIG9uIHByaW1lIGVkaXRpbmcgYW5kIHNpbGVudCBlZGl0aW5nIGRpcmVjdGx5IGludG8gb3VyIHByb2plY3QgYnkgcmVmaW5pbmcgb3VyIGFwcHJvYWNoIHRvIGdlbmUgZWRpdGluZy4gQmFzZWQgb24gZmVlZGJhY2sgYWJvdXQgdGhlIG9wdGltYWwgbGVuZ3RoIG9mIHByaW1lciBiaW5kaW5nIHNlcXVlbmNlcyAoUEJTKSBhbmQgUlRUcywgd2UgYWRqdXN0ZWQgdGhlIGRlc2lnbiBvZiBvdXIgcGVnUk5BcyB0byBlbnN1cmUgZ3JlYXRlciBwcmVjaXNpb24gYW5kIGVmZmljaWVuY3kgaW4gb3VyIGV4cGVyaW1lbnRzLiBJbiBwYXJ0aWN1bGFyLCB3ZSBsZWFybmVkIHRoYXQgdXNpbmcgUEJTIGxlbmd0aHMgY2xvc2UgdG8gMzdcdTAwQjBDIG1lbHRpbmcgdGVtcGVyYXR1cmVzIChlLmcuIDE2LTE3IG51Y2xlb3RpZGVzKSBpbmNyZWFzZWQgc3RhYmlsaXR5LCB3aGljaCBsZWQgdXMgdG8gZmluZS10dW5lIHRoZXNlIHNlcXVlbmNlcyBmb3IgaW1wcm92ZWQgZWRpdGluZyByZXN1bHRzLiBUaGUgY29uY2VwdCBvZiBzaWxlbnQgZWRpdGluZyBiZWNhbWUgYW4gaW50ZWdyYWwgcGFydCBvZiBvdXIgc2FmZXR5IHN0cmF0ZWd5LCBhbGxvd2luZyB1cyB0byBtYWtlIGNoYW5nZXMgdG8gdGhlIEROQSBtb3JlIHByZWNpc2UuIFdlIGFsc28gcmV2aXNlZCBvdXIgY2xvbmluZyBzdHJhdGVnaWVzIGJ5IGNvbnNpZGVyaW5nIHRoZSBhcHByb3ByaWF0ZSBvdmVyaGFuZyBsZW5ndGgsIHRhcmdldGluZyBhIGJhc2UgcGFpciBsZW5ndGggbmVhciB0aGUgbWVsdGluZyB0ZW1wZXJhdHVyZSBvZiA2MFx1MDBCMEMgdG8gaW1wcm92ZSBjbG9uaW5nIGVmZmljaWVuY3kuIFdlIGFsc28gcmVhc3Nlc3NlZCB0aGUgcHJhY3RpY2FsaXR5IG9mIG9yZGVyaW5nIHNob3J0ZXIgUEJTIHNlcXVlbmNlcywgY29uY2x1ZGluZyB0aGF0IGxlbmd0aHMgc2hvcnRlciB0aGFuIDE1IG50IHdlcmUgbGVzcyBhZHZhbnRhZ2VvdXMgZHVlIHRvIHJlZHVjZWQgZWZmaWNpZW5jeS4gQnkgaW50ZWdyYXRpbmcgdGhlc2UgZmluZGluZ3MsIHdlIG9wdGltaXNlZCBvdXIgZXhwZXJpbWVudGFsIHdvcmtmbG93IGFuZCBtYWRlIGluZm9ybWVkIGRlY2lzaW9ucyBhYm91dCB0aGUgdG9vbHMgYW5kIG1ldGhvZHMgZm9yIG91ciBwcmltZSBlZGl0aW5nIGV4cGVyaW1lbnRzLiBcIixcclxuICAgIHN1bW1hcnk6IFwiV2UgZW5nYWdlZCBpbiBhIHZhbHVhYmxlIGRpc2N1c3Npb24gd2l0aCBKYW4tUGhpbGxpcCBHZXJoYXJkcyByZWdhcmRpbmcgcHJpbWUgZWRpdGluZyBhbmQgcGVnUk5BcywgbGV2ZXJhZ2luZyBoaXMgaW50ZXJuc2hpcCBleHBlcmllbmNlIHdpdGggdGhlc2UgdGVjaG5vbG9naWVzLiBLZXkgaW5zaWdodHMgaW5jbHVkZWQgdGhlIGVmZmVjdGl2ZW5lc3Mgb2Ygc2lsZW50IGVkaXRzLCB3aGljaCBjYW4gZW5oYW5jZSB0aGUgc2FmZXR5IG9mIG91ciBQcmltZUd1aWRlIGJ5IG1vZGlmeWluZyBETkEgc2VxdWVuY2VzIHdpdGhvdXQgYWx0ZXJpbmcgdGhlIHJlc3VsdGFudCBwcm90ZWluLCB0aGVyZWJ5IHByZXZlbnRpbmcgcGVnUk5BIHJlYmluZGluZy4gV2UgYWxzbyBsZWFybmVkIHRoZSBpbXBvcnRhbmNlIG9mIG9wdGltaXppbmcgdGhlIHByaW1lciBiaW5kaW5nIHNpdGUgKFBCUykgbGVuZ3RoIHRvIGFjaGlldmUgaWRlYWwgdGVtcGVyYXR1cmVzIGNsb3NlIHRvIDM3XHUwMEIwQywgcmVjb21tZW5kaW5nIGxlbmd0aHMgb2YgMTYtMTcgbnVjbGVvdGlkZXMuIEFkZGl0aW9uYWxseSwgd2UgZGlzY292ZXJlZCB0aGUgcG90ZW50aWFsIGJlbmVmaXRzIG9mIHVzaW5nIG5vbi1hbm5vdGF0ZWQgcmVnaW9ucyB3aXRoIG92ZXJoYW5ncyBmb3IgY2xvbmluZywgd2hpbGUgYWxzbyByZWNvZ25pemluZyBjb25jZXJucyBhYm91dCBjaXJjUk5BIHN0ZXJpYyBoaW5kcmFuY2UgYnkgQ2FzOS4gVGhlc2UgaW5zaWdodHMgZGlyZWN0bHkgaW5mb3JtZWQgb3VyIHByb2plY3QsIGFsbG93aW5nIHVzIHRvIHJlZmluZSBvdXIgcGVnUk5BIGRlc2lnbiBhbmQgY2xvbmluZyBzdHJhdGVnaWVzLCB1bHRpbWF0ZWx5IGVuaGFuY2luZyB0aGUgcHJlY2lzaW9uIGFuZCBlZmZpY2llbmN5IG9mIG91ciBnZW5lIGVkaXRpbmcgYXBwcm9hY2guXCIsXHJcbiAgICBtb250aHM6IFwiTWF5XCJcclxuICB9LFxyXG4gIHtcclxuICAgIHZvcm5hbWU6IFwiTWF0dGlqc1wiLFxyXG4gICAgbmFjaG5uYW1lOiBcIkJ1bGNhZW5cIixcclxuICAgIGpvYjogXCJQaEQgUmVzZWFyY2hlciBhdCBMYWJvcmF0b3J5IGZvciBNb2xlY3VsYXIgVmlyb2xvZ3kgJiBHZW5lIFRoZXJhcHlcIixcclxuICAgIGFmZmlsaWF0aW9uOiBcIktVIExldXZlblwiLFxyXG4gICAgcGljdHVyZXVybDogcGljc1snbWF0dGlqcyddLFxyXG4gICAgdGFnOiBcIkFjYWRlbWlhXCIsXHJcbiAgICBoZWFkaW5nOiBcIkRpc2N1c3Npb24gd2l0aCBhIFByaW1lIEVkaXRpbmcgRXhwZXJ0IG9uIFNpbWlsYXIgQXBwcm9hY2hlcyBmb3IgRGlmZmVyZW50IE11dGF0aW9uc1wiLFxyXG4gICAgaW50ZXJ2aWV3dGFiaWQ6IFwibWF0dGlqc2ludlwiLFxyXG5cclxuICAgIGxhbmd1YWdlOiBcImVuXCIsXHJcbiAgICBxdW90ZU5hY2huYW1lOiBcIkJ1bGNhZW4sIENGIFJlc2VhcmNoIEV4cGVydCBhbmQgR2VuZSBUaGVyYXB5IFNwZWNpYWxpc3RcIixcclxuICAgIHF1b3RlVm9ybmFtZTogXCJNYXR0aWpzXCIsXHJcbiAgICBxdW90ZTogXCJbXHUyMDI2XSBQcmltZSBFZGl0aW5nIHN5c3RlbSBpcyBtb3JlIGNvbXBsZXggdGhhbiB0aGUgY2Fub25pY2FsIENSSVNQUiBzeXN0ZW1zLCB3aXRoIG1vcmUgdmFyaWFibGVzIHRoYXQgY2FuIGluZmx1ZW5jZSBzdWNjZXNzIG9yIGZhaWx1cmUuXCIsXHJcbiAgICBhaW1vZmNvbnRhY3Q6IFs8cD5TaG9ydGx5IGFmdGVyIHdlIGRlY2lkZWQgdG8gdXNlIHByaW1lIGVkaXRpbmcgYXMgdGhlIGdlbmUgZWRpdGluZyBtZXRob2QgZm9yIG91ciBDRiB0aGVyYXB5LCBNYXR0aWpzIEJ1bGNhZW4gZnJvbSB0aGUgTGFib3JhdG9yeSBvZiBNb2xlY3VsYXIgVmlyb2xvZ3kgYW5kIEdlbmUgVGhlcmFweSBhdCBLVSBMZXV2ZW4gYW5kIGhpcyBjb2xsZWFndWVzIHB1Ymxpc2hlZCBhIHBhcGVyIGRpcmVjdGx5IHJlbGF0ZWQgdG8gb3VyIHJlc2VhcmNoIDxUYWJTY3JvbGxMaW5rIHRhYj1cIm1hdHRpanNpbnZcIiBzY3JvbGxJZD1cImRlc2MtMVwiIG51bT1cIjFcIiAvPi4gSW4gY29udHJhc3QgdG8gb3VyIGFwcHJvYWNoLCBCdWxjYWVuIGV0IGFsLiAyMDI0IHRhcmdldGVkIG90aGVyLCBsZXNzIGNvbW1vbiBidXQgZHJ1Zy1yZWZyYWN0b3J5IENGVFItc3BlY2lmaWMgbXV0YXRpb25zIChMMjI3Ui0gYW5kIE4xMzAzSykuXHUyMDJGIDwvcD5dLFxyXG4gICAgaW5zaWdodHM6IFs8cD5UaGUgaW5zaWdodHMgZ2FpbmVkIGZyb20gdGhpcyBpbnRlcnZpZXcgcHJvdmVkIGV4dHJlbWVseSB2YWx1YWJsZSBpbiBzaGFwaW5nIG91ciBzdWJzZXF1ZW50IG1lY2hhbmlzdGljIGFwcHJvYWNoZXMuIEF0IHRoYXQgcG9pbnQgaW4gdGhlIHByb2plY3Qgd2Ugd2VyZSBzdGFydGluZyB0byBkZXNpZ24gdGhlIGNvbXBvbmVudHMgb2Ygb3VyIHByaW1lIGVkaXRvciwgYnV0IHdlIHdlcmUgbGFja2luZyBhIGJyb2FkZXIgb3ZlcnZpZXcgb3ZlciB0aGUgc3RhdGUgb2YgdGhlIGZpZWxkLiBNYXR0aWpzIGdhdmUgdXMgdGhpcyBpbnNpZ2h0LCBtZW50aW9uaW5nIHRlY2huaXF1ZXMgbGlrZSBQRTNiIHN5c3RlbXMsIGRzZ1JOQXMgYW5kIGEgdGFsayBnaXZlbiBieSA8SFBMaW5rdG9PdGhlckhQVGFiIHRhYj1cImxpdVwiIHRleHQ9XCJEYXZpZCBMaXVcIiAvPiwgdGhlIHByaW5jaXBhbCBcclxuICAgICAgaW52ZXN0aWdhdG9yIGJlaGluZCBwcmltZSBlZGl0aW5nIHRoYXQgaGVscGVkIHVzIHRvIGNvbnNpZGVyIGZ1cnRoZXIgbm92ZWwgYWR2YW5jZW1lbnRzIGluIGluIFByaW1lIEVkaXRpbmcgYW5kIGluY2x1ZGUgdGhlbSBpbnRvIG91ciBwcm9qZWN0LiBIZSBkaXNjdXNzZWQgd2l0aCB1cyB0aGUgZGlmZmljdWx0aWVzIHRoYXQgbWlnaHQgYXdhaXQgdXMgd2hlbiB0YXJnZXRpbmcgdGhlIENGVFIgRjUwOGRlbCBkZWxldGlvbiBhbmQgbWVudGlvbmVkIHRoYXQgaW5zZXJ0aW9ucyBvZiBhbGwgdGhlIGVkaXRzIHBvc3NpYmxlIHdpdGggcHJpbWUgZWRpdGluZyBhcmUgdGhlIGhhcmRlc3QgdG8gbWFrZSwgdGhlIHJlY29nbml0aW9uIG9mIGVkaXRzIGluIHRoZSByZWdpb24gbWlnaHQgYXR0cmFjdCBtaXNtYXRjaCByZXBhaXIgc3lzdGVtcyBhbmQgdGhlIGNocm9tYXRpbiBvcmdhbml6YXRpb24gbWlnaHQgbmVnYXRpdmVseSBpbXBhY3QgcHJpbWUgZWRpdGluZyBlZmZpY2llbmN5LiBBbHNvLCB3ZSBsZWFybmVkIGEgXHJcbiAgICBsb3QgYWJvdXQgaG93IHRvIGRlc2lnbiBvdXIgcGVnUk5Bcywgd2l0aCBpbXBvcnRhbnQgaW5wdXRzIGJlaW5nIHRoZSAzXHUyMDE5IHN0ZW0gbG9vcCBtb3RpZiB0cmV2b3ByZVExIHVzZWQgYnkgTWF0dGlqcyBpbiBoaXMgcHVibGljYXRpb24gYW5kIHRoZSBzdWdnZXN0aW9uIHRvIHVzZSBwcmVkaWN0aW9uIHRvb2xzIHRvIGV2YWx1YXRlIHNnUk5BIHNwYWNlciBjdXR0aW5nIGVmZmljaWVuY3kuIFdlIHJldmlld2VkIG91ciBhcHByb2FjaCBvZiB0ZXN0aW5nIHBlZ1JOQXMgdXNpbmcgdGhlIFBFQVIgcmVwb3J0ZXIgc3lzdGVtIGFuZCBNYXR0amlzIHJlY29tbWVuZGVkIHRvIHVzZSBIRUsgY2VsbCBsaW5lcyBmb3Igc2NyZWVuaW5nIGJlY2F1c2Ugb2YgdGhlaXIgZWFzeSBoYW5kbGluZyBhbmQgbmF0dXJhbGx5IGltcGFpcmVkIG1pc21hdGNoIHJlcGFpciBzeXN0ZW0uIDwvcD5dLFxyXG4gICAgaW1wbGVtZW50YXRpb246IFs8cD5UaGUgaW5wdXRzIGdpdmVuIGJ5IE1hdHRpanMgZGlyZWN0bHkgaW1wYWN0ZWQgb3VyIGRlc2lnbiBjaG9pY2VzIGZvciBtdWx0aXBsZSBwYXJ0cyBvZiB0aGUgcHJvamVjdC4gRm9yIHRoZSBwZWdSTkEgZGVzaWduLCB3ZSBkZWNpZGVkIHRvIHVzZSB0aGUgc2FtZSAzXHUyMDE5IG1vdGlmIGFzIE1hdHRpanMgaGFkIHVzZWQgYW5kIGFsc28sIGxpa2UgaGUgc3VnZ2VzdGVkLCBjaGVja2VkIG91ciBzcGFjZXIgY2FuZGlkYXRlcyBmb3IgcHJlZGljdGVkIGNsZWF2YWdlIGVmZmljaWVuY3kuIEFsc28gd2UgdXNlZCBIRUsgY2VsbHMgZm9yIHNjcmVlbmluZyBvdXIgcGVnUk5Bcy4gV2UgbG9va2VkIGZ1cnRoZXIgaW50byBQRSBzeXN0ZW1zIHRoYXQgaW5mbHVlbmNlIGNlbGx1bGFyIG1pc21hdGNoIHJlcGFpciAoc3VjaCBhcyBQRTQpIGFuZCB0cmllZCB0byBpbmNsdWRlIHRoZXNlIGludG8gb3VyIGRlc2lnbi48L3A+XSxcclxuICAgIGludGVydmlldzogPD5cclxuICAgICAgPFFhQm94IHE9XCJXZSBoYXZlIHByZXBhcmVkIHNvbWUgcXVlc3Rpb25zIGZvciB5b3UuIFRoZSBmaXJzdCBxdWVzdGlvbiBpczogWW91IG1lbnRpb25lZCB0aGF0IGl0IHdhcyBxdWl0ZSBjaGFsbGVuZ2luZyB0byB0YXJnZXQgdGhlIEY1MDggZGVsdGEgbXV0YXRpb24uIENvdWxkIHlvdSBwcm92aWRlIG1vcmUgZGV0YWlsZWQgcmVhc29ucyBmb3Igd2h5IHRoaXMgaXMgdGhlIGNhc2Ugb3IgZXhwbGFpbiB3aHkgdGhpcyBtdXRhdGlvbiBpcyBwYXJ0aWN1bGFybHkgZGlmZmljdWx0IHRvIHRhcmdldCBjb21wYXJlZCB0byBvdGhlcnM/XCIgXHJcbiAgICAgICAgYT1cIlllcywgdGhhdCdzIHRoZSBtaWxsaW9uLWRvbGxhciBxdWVzdGlvbi4gRmlyc3Qgb2YgYWxsLCBsZXQgbWUgY2xhcmlmeTogb3VyIGdyb3VwIGhhcyBuZXZlciBkaXJlY3RseSB3b3JrZWQgb24gdGhhdCBtdXRhdGlvbiBiZWNhdXNlIHdlIGltbWVkaWF0ZWx5IGZvY3VzZWQgb24gdGhlIGRydWctcmVmcmFjdG9yeSBtdXRhdGlvbnMsIHN1Y2ggYXMgbm9uc2Vuc2UgbXV0YXRpb25zIHdoZXJlIHRoZSBwcm90ZWluIGlzIG5vdCBmb3JtZWQsIGluZGVsIG11dGF0aW9ucywgb3Igc2V2ZXJlIG1pc3NlbnNlIG11dGF0aW9ucyB0aGF0IGRvIG5vdCByZXNwb25kIHRvIG1vZHVsYXRvciB0aGVyYXBpZXMuIE9mIGNvdXJzZSwgd2Uga25vdyBzZXZlcmFsIGdyb3VwcyBpbiB0aGUgZmllbGQgd2hvIGVpdGhlciB3b3JrIG9uIGdlbmUgZWRpdGluZyBvciBmb2N1cyBvbiAgQ3lzdGljIEZpYnJvc2lzIChDRikuIFdlJ3ZlIGhlYXJkIGZyb20gc29tZSBvZiB0aGVtIHdobyBhdHRlbXB0ZWQgdG8gdGFyZ2V0IHRoZSBGNTA4IGRlbHRhIG11dGF0aW9uLiBGb3IgZXhhbXBsZSwgc29tZSBjb2xsYWJvcmF0b3JzIHJlYWxseSB0cmllZCB0byBkZXNpZ24gZGlmZmVyZW50IGd1aWRlcyBidXQgd2VyZSB1bmFibGUgdG8gZmluZCBhbnl0aGluZyBhYm92ZSB0aGUgZGV0ZWN0aW9uIGxpbWl0LiBcclxuICAgICAgICBGNTA4ZGVsIGlzIHByb2JhYmx5IG9uZSBvZiB0aGUgbW9zdCBsb2dpY2FsIG11dGF0aW9ucyB0byB0cnkgdG8gY29ycmVjdCwgbm90IGp1c3QgZm9yIENGIGJ1dCBmb3IgdGhlIGVudGlyZSBnZW5lLWVkaXRpbmcgZmllbGQuIElmIHlvdSBsb29rIGF0IHRoZSBmcmVxdWVuY2llcyBvZiBtdXRhdGlvbnMgdGhhdCBjYXVzZSBnZW5ldGljIGRpc2Vhc2VzLCB0aGUgRjUwOCBkZWx0YSBtdXRhdGlvbiBpcyBieSBmYXIgdGhlIG1vc3QgY29tbW9uIGRlbGV0aW9uIG11dGF0aW9uIGNhdXNpbmcgYSBzZXZlcmUgZGlzZWFzZS4gVGhpcyBpcyBiZWNhdXNlIENGLCBhbG9uZyB3aXRoIHNpY2tsZSBjZWxsIGRpc2Vhc2UsIGlzIG9uZSBvZiB0aGUgbW9zdCBjb21tb24gZGVhZGx5IGluaGVyaXRlZCBkaXNlYXNlcywgYW5kIGl0J3Mgb3ZlcnJlcHJlc2VudGVkIHdpdGhpbiBDRi4gU28sIGl0IG1ha2VzIHNlbnNlIHRoYXQgdGhleSB3b3VsZCBoYXZlIGJlZW4gdHJ5aW5nIHRvIHRhcmdldCBpdCBmcm9tIHRoZSBiZWdpbm5pbmcuIFxyXG4gICAgICAgIEludGVyZXN0aW5nbHksIGlmIHlvdSByZWFkIHRoZSBQcmltZSBFZGl0aW5nIHBhcGVyIGJ5IEFuemFsb25lLCBGNTA4IGRlbHRhIGlzIG1lbnRpb25lZCBpbiB0aGUgaW50cm9kdWN0aW9uIGluIGNvbm5lY3Rpb24gd2l0aCBDRi4gU28sIGl0J3Mgc29tZXdoYXQgc3VycHJpc2luZyB0aGF0IGFmdGVyIGFsbCB0aGlzIHRpbWVcdTIwMTRpdCdzIGJlZW4gYWxtb3N0IGZpdmUgeWVhcnMgbm93XHUyMDE0dGhleSBoYXZlbid0IHB1Ymxpc2hlZCBvciByZWxlYXNlZCBhbnl0aGluZyBvbiBGNTA4IGRlbHRhLiBcclxuICAgICAgICBIb3dldmVyLCBsYXN0IHdlZWtlbmQsIHRoZXJlIHdhcyBhbiBvbmxpbmUgc2VtaW5hciB3aGVyZSBEYXZpZCBMaXUgZ2F2ZSBhIHRhbGssIGFuZCBoZSBzaG93ZWQgc29tZSB1bnB1Ymxpc2hlZCBkYXRhIGluZGljYXRpbmcgdGhhdCB0aGV5IG1hbmFnZWQgdG8gYWNoaWV2ZSBxdWl0ZSBnb29kIFByaW1lIEVkaXRpbmcgZWZmaWNpZW5jeSBvbiBGNTA4IGRlbHRhLiBJdCdzIHdvcnRoIG5vdGluZyB0aGF0IERhdmlkIExpdSByYXJlbHkgcHJlc2VudHMgdW5wdWJsaXNoZWQgZGF0YSB1bmxlc3MgdGhlIHB1YmxpY2F0aW9uIGlzIGVpdGhlciBhY2NlcHRlZCBvciB2ZXJ5IGNsb3NlIHRvIGFjY2VwdGFuY2UuIFNvLCB3ZSBhbGwga2luZCBvZiBleHBlY3QgdGhhdCB0aGUgcGFwZXIgd2lsbCBiZSBwdWJsaXNoZWQgc29vbiwgcGVyaGFwcyB3aXRoaW4gdGhlIG5leHQgd2VlayBvciBhdCBsZWFzdCB3aXRoaW4gYSBtb250aC4gRnJvbSB3aGF0IEkgc2F3LCBpdCBhcHBlYXJzIHRoZXkgbGV2ZXJhZ2VkIG1hbnkgb2YgdGhlIGFwcHJvYWNoZXMgYXZhaWxhYmxlIHRvZGF5IHRvIGVuaGFuY2UgUHJpbWUgRWRpdGluZy4gXHJcbiAgICAgICAgTm93LCByZWdhcmRpbmcgeW91ciBxdWVzdGlvbiBhYm91dCB3aHkgdGhpcyBtdXRhdGlvbiBpcyBzbyBkaWZmaWN1bHQgdG8gdGFyZ2V0IHdpdGggUHJpbWUgRWRpdGluZywgSSBjYW4ndCBwcm92aWRlIGFuIGV4YWN0IGFuc3dlci4gSG93ZXZlciwgSSBjYW4gbGlzdCBzb21lIHBvdGVudGlhbCBkaWZmaWN1bHRpZXMgYXNzb2NpYXRlZCB3aXRoIHRoZSBtdXRhdGlvbiwgYW5kIGl0XHUyMDE5cyBsaWtlbHkgdGhhdCBGNTA4IGRlbHRhIGlzIGNoYWxsZW5naW5nIGZvciBzZXZlcmFsIG9mIHRoZXNlIHJlYXNvbnMuIEZvciBpbnN0YW5jZSwgaXQgY291bGQgYmUgcmVsYXRlZCB0byB0aGUgZ2Vub21pYyByZWdpb24gaXRzZWxmLiBXcml0aW5nIGluc2VydGlvbnMgY2FuIGJlIG1vcmUgZGlmZmljdWx0OyB0aGUgZWFzaWVzdCBlZGl0cyBhcmUgc2luZ2xlLXBvaW50IG11dGF0aW9ucywgZm9sbG93ZWQgYnkgZGVsZXRpb25zLCBhbmQgdGhlIG1vc3QgY2hhbGxlbmdpbmcgYXJlIGluc2VydGlvbnMuIFRoaXMgZGlmZmljdWx0eSBhcmlzZXMgYmVjYXVzZSBpdCBpbnZvbHZlcyB3cml0aW5nIGEgdGhpcmQgc3RyYW5kIGFuZCB0aGVuIHJlbHlpbmcgb24gRE5BIGRhbWFnZSByZXBhaXIgbWVjaGFuaXNtcyB0byBmaXggaXQuICBcclxuICAgICAgICBJdCBjb3VsZCBhbHNvIGJlIHRoYXQgdGhlIHJlZ2lvbiBhcm91bmQgdGhlIEY1MDggZGVsdGEgbXV0YXRpb24gaXMgY2hhbGxlbmdpbmcgZHVlIHRvIGZsYXAgZXF1aWxpYnJhdGlvbiBvciB0aGF0IGl0IGF0dHJhY3RzIHBhdGh3YXlzIHN1Y2ggYXMgbWlzbWF0Y2ggcmVwYWlyIHRoYXQgbmVnYXRpdmVseSBpbXBhY3QgUHJpbWUgRWRpdGluZy4gQWRkaXRpb25hbGx5LCB0aGUgY2hyb21hdGluIG9yZ2FuaXphdGlvbiBhcm91bmQgdGhhdCByZWdpb24gY291bGQgcGxheSBhIHJvbGUuIE92ZXIgdGhlIHBhc3QgeWVhciwgd2VcdTIwMTl2ZSBnYXRoZXJlZCBjbHVlcyB0aGF0IGNocm9tYXRpbiBvcmdhbml6YXRpb24gc2lnbmlmaWNhbnRseSBhZmZlY3RzIFByaW1lIEVkaXRpbmcgY2FwYWJpbGl0eSwgd2hpbGUgdGhpcyBpcyBtdWNoIGxlc3Mgb2YgYW4gaXNzdWUgZm9yIENhczkgYW5kIGJhc2UgZWRpdG9ycy4gXHJcbiAgICAgICAgU3R1ZHlpbmcgdGhpcyBpcyBub3Qgc3RyYWlnaHRmb3J3YXJkOyB5b3Ugd291bGQgbmVlZCB0byBjb25kdWN0IGV4cGVyaW1lbnRzIGxpa2UgQVRBQy1zZXEgdG8gZGV0ZXJtaW5lIHRoZSBjaHJvbWF0aW4gb3JnYW5pemF0aW9uIGFyb3VuZCB0aGUgbXV0YXRpb24gYW5kIGhvdyBpdCBtaWdodCBpbnRlcmZlcmUuIEkgYWxzbyBub3RpY2VkIG9uIGEgc2xpZGUgdGhhdCBkc2dSTkFzIHdlcmUgbWVudGlvbmVkLCB0aG91Z2ggRGF2aWQgTGl1IGRpZG4ndCBkaXNjdXNzIHRoZW0gaW4gaGlzIHRhbGsuIEFmdGVyIGxvb2tpbmcgdGhlbSB1cCBvbmxpbmUsIEkgZm91bmQgdGhhdCB0aGlzIHRlY2huaXF1ZSwgcHVibGlzaGVkIGEgZmV3IHllYXJzIGFnbyBieSBvdGhlciByZXNlYXJjaGVycywgaXMgc3BlY2lmaWNhbGx5IGRlc2lnbmVkIHRvIG9wZW4gdXAgY2hyb21hdGluLiBJdCBzZWVtcyB0aGV5IHVzZSBkaWZmZXJlbnQgZ3VpZGVzLCB3aXRob3V0IHRoZSB0aHJlZS1wcmltZSBleHRlbnNpb24sIHRvIG9wZW4gdXAgdGhlIGNocm9tYXRpbiwgd2hpY2ggY291bGQgYmUgb25lIHdheSB0byBvdmVyY29tZSB0aGUgbGltaXRhdGlvbnMgaW4gUHJpbWUgRWRpdGluZyBlZmZpY2llbmN5LiBcclxuICAgICAgICBUaGVyZSBjb3VsZCBiZSBvdGhlciBmYWN0b3JzIGFzIHdlbGwsIGFuZCBpdFx1MjAxOXMgb2Z0ZW4gZGlmZmljdWx0IHRvIHByZWRpY3Qgd2hhdCB3aWxsIHdvcmsgYW5kIHdoYXQgd29uJ3QuIFdlIGhhdmUgcHJlZGljdGlvbiB0b29scyBmb3IgUHJpbWUgRWRpdGluZyBndWlkZXMgdGhhdCB3b3JrIHRvIHNvbWUgZXh0ZW50LCBidXQgdGhleSBhcmUgbm90IGFzIGVmZmVjdGl2ZSBhcyB0aGUgcHJlZGljdGlvbiB0b29scyBhdmFpbGFibGUgZm9yIHJlZ3VsYXIgQ1JJU1BSIGd1aWRlIFJOQXMuIFRoaXMgc3VnZ2VzdHMgdGhhdCB0aGUgUHJpbWUgRWRpdGluZyBzeXN0ZW0gaXMgbW9yZSBjb21wbGV4IHRoYW4gdGhlIGNhbm9uaWNhbCBDUklTUFIgc3lzdGVtcywgd2l0aCBtb3JlIHZhcmlhYmxlcyB0aGF0IGNhbiBpbmZsdWVuY2Ugc3VjY2VzcyBvciBmYWlsdXJlLiBJIGhvcGUgdGhpcyBhbnN3ZXJzIHlvdXIgcXVlc3Rpb24gc29tZXdoYXQuIFwiIC8+XHJcbiAgICAgIDxRYUJveCBxPVwiVGhhdCBoYXMgYWxyZWFkeSBiZWVuIHZlcnkgaGVscGZ1bCwgdGhhbmsgeW91IGZvciB0aGF0LiBXZSdsbCBjb25zaWRlciB0aGlzIGFuZCBtaWdodCBsb29rIGludG8gaXQgYSBiaXQgbW9yZS4gXHJcbiAgICAgICAgUGVyaGFwcyB3ZSBjb3VsZCBxdWlja2x5IGRpc2N1c3Mgd2hpY2ggcGFydCBvZiB0aGUgcHJpbWUgZWRpdGluZyBjb21wbGV4IHlvdSB0aGluayBwbGF5cyB0aGUgbW9zdCBzaWduaWZpY2FudCByb2xlIGluIG1ha2luZyBpbnNlcnRpb25zIG11Y2ggbW9yZSBjaGFsbGVuZ2luZyBjb21wYXJlZCB0byBkZWxldGlvbnMuIElzIGl0IHRoZSByZXZlcnNlIHRyYW5zY3JpcHRhc2Ugb3IgdGhlIFJOQT8gXCIgXHJcbiAgICAgICAgYT1cIkkgIGRvbid0IHRoaW5rIGl0J3MgcHJpbWFyaWx5IHRoZSByZXZlcnNlIHRyYW5zY3JpcHRhc2UgdGhhdCdzIHRoZSBpc3N1ZS4gUGVvcGxlIGhhdmUgc2hvd24gdGhhdCBsb25nZXIgaW5zZXJ0aW9ucyBhcmUgZGVmaW5pdGVseSBwb3NzaWJsZS4gSSBiZWxpZXZlIHRoZSBjaGFsbGVuZ2UgbGllcyBpbiB0aGUgcHJvY2VzcyB3aGVuIHlvdXIgY2VsbCBoYXMgdG8gcmVwYWlyIHRoZSBuZXcgRE5BIHN0cmFuZCwgd2hpY2ggaXMgZ2VuZXJhdGVkIGFuZCBleGlzdHMgYXMgYSB0aHJlZS1zdHJhbmRlZCBpbnRlcm1lZGlhdGUuIFdlIGRvblx1MjAxOXQgZGlyZWN0bHkgaW50ZXJ2ZW5lIGluIHRoaXMgcHJvY2VzczsgaXQgZW50aXJlbHkgZGVwZW5kcyBvbiB0aGUgY2VsbCBhbmQgdGhlIEROQSBkYW1hZ2UgcmVwYWlyIHBhdGh3YXlzIGFjdGl2ZSBpbiB0aG9zZSBjZWxscy4gVGhyb3VnaCBleHByZXNzaW9uIG9mIGRvbWluYW50IG5lZ2F0aXZlIEROQSBkYW1hZ2UgcmVwYWlyIGVmZmVjdG9ycywgb3IgYnkgbmlja2luZyB0aGUgbm9uLWVkaXRlZCBzdHJhbmQsIHRoZSBvdXRjb21lIGNhbiBiZSBzdGVlcmVkIHRvIHNvbWUgZXh0ZW50LiBcclxuICAgICAgICBXaGVuIHlvdSBwZXJmb3JtIGFuIGluc2VydGlvbiwgdGhlIG5ldyBzdHJhbmQgbXVzdCBoeWJyaWRpemUgd2l0aCB0aGUgYm90dG9tIHN0cmFuZCwgd2hpY2ggcmVtYWlucyBpbnRhY3QuIFRoaXMgY3JlYXRlcyBhIHNtYWxsIGxvb3AgdGhhdCBuZWVkcyB0byBiZSBpbmNvcnBvcmF0ZWQuIEF0IHRoaXMgcG9pbnQsIHRoZSBjZWxsIGZhY2VzIHR3byBvcHRpb25zOiBpdCBjYW4gZWl0aGVyIHJldmVydCB0byB0aGUgb3JpZ2luYWwgc3RhdGUgb3IgaW5jb3Jwb3JhdGUgdGhlIGVkaXQgeW91XHUyMDE5cmUgdHJ5aW5nIHRvIGludHJvZHVjZS4gSW4gY2VydGFpbiBjaXJjdW1zdGFuY2VzLCBwZXJoYXBzIGR1ZSB0byBob3cgdGhlIG5ldyBETkEgc3RyYW5kIGZvbGRzIG9yIHRoZSBzZXF1ZW5jZSBjb250ZXh0IG9mIHRoZSByZWdpb24gb2YgaW50ZXJlc3QsIHRoZSBjZWxsIG1pZ2h0IGhlYXZpbHkgZmF2b3IgcmV2ZXJ0aW5nIHRvIHRoZSBvcmlnaW5hbCBzdGF0ZSwgcmVzdWx0aW5nIGluIHRoZSBhYnNlbmNlIG9mIHRoZSBpbnRlbmRlZCBlZGl0LiBcclxuICAgICAgICBUaGlzIHByb2Nlc3MgaXMgZXh0cmVtZWx5IGRpZmZpY3VsdCB0byBwcmVkaWN0LCBidXQgdGhlcmUgYXJlIHNldmVyYWwgaW5kaWNhdGlvbnMgcG9pbnRpbmcgaW4gdGhpcyBkaXJlY3Rpb24uIEZvciBleGFtcGxlLCBpbiB0aGUgY2FzZSBvZiBwb2ludCBtdXRhdGlvbnMsIGl0IGhhcyBiZWVuIHNob3duIHRoYXQgaXRcdTIwMTlzIGVhc2llciB0byBjb252ZXJ0IGEgQyB0byBhIEcgcmF0aGVyIHRoYW4gdGhlIHJldmVyc2UsIHNpbXBseSBkdWUgdG8gaG93IHRoZXNlIG1pc21hdGNoZXMgYXJlIHJlY29nbml6ZWQgYnkgdGhlIEROQSBkYW1hZ2UgcmVwYWlyIG1lY2hhbmlzbXMuIFRoaXMgYXJlYSBpcyB2ZXJ5IGNvbXBsZXgsIGFuZCBJIGRvblx1MjAxOXQgdGhpbmsgYW55b25lIGZ1bGx5IHVuZGVyc3RhbmRzIGl0IHlldC4gSXRcdTIwMTlzIGFsc28gZGlmZmljdWx0IHRvIHN0dWR5LiBcclxuICAgICAgICBJIGRvbid0IGJlbGlldmUgdGhlIHJhdGUgb2YgcmV2ZXJzZSB0cmFuc2NyaXB0aW9uIGlzIHRoZSBsaW1pdGluZyBmYWN0b3IgaGVyZSwgYWx0aG91Z2ggaXQgY291bGQgcGxheSBhIHJvbGUgZm9yIGxvbmcgb3Igc3RydWN0dXJlZCBwZWdSTkFzLiBZb3UgbWlnaHQgaGF2ZSBhbHJlYWR5IGNvbWUgYWNyb3NzIHRoaXMsIGJ1dCB0aGUgUEU2IGdlbmVyYXRpb24gb2YgUHJpbWUgRWRpdG9ycywgd2hpY2ggd2VyZSByZWxlYXNlZCBhYm91dCBoYWxmIGEgeWVhciBhZ28sIGludm9sdmUgZW5naW5lZXJlZCBvciBldm9sdmVkIHJldmVyc2UgdHJhbnNjcmlwdGFzZXMgdGhhdCBhcmUgbW9yZSBwcm9jZXNzaXZlIGFuZCBjYW4gbW9yZSBlYXNpbHkgc3ludGhlc2l6ZSBsb25nZXIgdHJhbnNjcmlwdHMuIFxyXG4gICAgICAgIEFub3RoZXIgZmFjdG9yIHRoYXQgY291bGQgcGxheSBhIHJvbGUgaXMgdGhlIHNlY29uZGFyeSBzdHJ1Y3R1cmUgb2YgdGhlIGd1aWRlIFJOQS4gRWFjaCBwcmltZSBlZGl0aW5nIGd1aWRlIFJOQSBmYWNlcyBhIGNvbW1vbiBwcm9ibGVtOiBpdCBoYXMgYSBzcGFjZXIgdGhhdCBiaW5kcyB0aGUgYm90dG9tIHN0cmFuZCBhbmQgYSB0aHJlZS1wcmltZSBleHRlbnNpb24gdGhhdCBiaW5kcyB0aGUgdG9wIHN0cmFuZC4gU2luY2UgdGhlc2UgdHdvIHBhcnRzIG9mIHRoZSBSTkEgYmluZCBjb21wbGVtZW50YXJ5IHN0cmFuZHMsIHRoZXkgYXJlIGFsc28gY29tcGxlbWVudGFyeSB0byBlYWNoIG90aGVyLCBtZWFuaW5nIGV2ZXJ5IHByaW1lIGVkaXRpbmcgZ3VpZGUgaGFzIHNvbWUgdGVuZGVuY3kgdG8gYmluZCBpdHNlbGYuIElmIHRoZSBHaWJicyBmcmVlIGVuZXJneSBpcyB0b28gaGlnaCwgdGhlIGd1aWRlIFJOQSBtYXkgZm9sZCBpbiBvbiBpdHNlbGYsIHByZXZlbnRpbmcgaXQgZnJvbSBiaW5kaW5nIHRvIHRoZSBwcmltZSBlZGl0b3IsIHdoaWNoIHRoZW4gaW5oaWJpdHMgcHJpbWUgZWRpdGluZy4gXHJcbiAgICAgICAgQWRkaXRpb25hbGx5LCB0aGUgdGhyZWUtcHJpbWUgZXh0ZW5zaW9uIGl0c2VsZiBjYW4gZm9sZCBpbmRlcGVuZGVudGx5LiBJIGhhdmVuXHUyMDE5dCBzcGVjaWZpY2FsbHkgZXhhbWluZWQgdGhpcyBmb3IgdGhlIEY1MDggZGVsdGEgZ3VpZGVzLCBidXQgaXQgaXMgc29tZXRoaW5nIHRoYXQgY2FuIGJlIHByZWRpY3RlZC4gVGhlcmUgYXJlIHRvb2xzIGF2YWlsYWJsZSB0aGF0IGNhbiBwcmVkaWN0IHRoZSBzZWNvbmRhcnkgc3RydWN0dXJlIG9mIGFuIFJOQSBzZXF1ZW5jZSwgYW5kIGlmIHRoZXJlXHUyMDE5cyBhIHNpZ25pZmljYW50IGhhaXJwaW4gc3RydWN0dXJlLCBpdCBtaWdodCBtZWFuIHRoZSB0aHJlZS1wcmltZSBleHRlbnNpb24gcmVtYWlucyBjbG9zZWQsIHByZXZlbnRpbmcgdGhlIHJldmVyc2UgdHJhbnNjcmlwdGFzZSBmcm9tIHVzaW5nIGl0IGFzIGEgdGVtcGxhdGUuIFRoZSBQRTYgcHJpbWUgZWRpdG9ycyBoYXZlIGJlZW4gZW5naW5lZXJlZCB0byBiZSBtb3JlIGVmZmVjdGl2ZSBpbiBzdWNoIHNjZW5hcmlvcywgYmVpbmcgbGVzcyBhZmZlY3RlZCBieSBzZWNvbmRhcnkgc3RydWN0dXJlcyBhbmQgYmV0dGVyIGFibGUgdG8gcmVhZCB0aHJvdWdoIHRoZW0uIFwiIC8+XHJcbiAgICAgIDxRYUJveCBxPVwiWWVzLCBleGFjdGx5LCB3ZSBub3RpY2VkIHRoZSBzYW1lIHRoaW5nIHdoZW4gcHJlZGljdGluZyB0aGUgc2Vjb25kYXJ5IHN0cnVjdHVyZSBvZiBvdXIgZ3VpZGUgUk5BLiBBcyB5b3UgbWVudGlvbmVkLCB0aGUgc3BhY2VyIGFuZCB0aGUgYmluZGluZyBzaXRlIGFyZSBjb21wbGVtZW50YXJ5LCBzbyB3ZSBlbmQgdXAgd2l0aCBhIHJlYWxseSBsb25nIGNvbXBsZW1lbnRhcnkgc3RyYW5kIHRoYXQgYmluZHMgdG8gaXRzZWxmLiBXZSB3ZXJlIGFsc28gdW5zdXJlIHdoZXRoZXIgaXQgd291bGQgb3BlbiB1cCBvciByZW1haW4gYm91bmQgdG9nZXRoZXIuXCIgXHJcbiAgICAgICAgYT1cIkkgdGhpbmsgdGhlIExpdSBsYWIgbWVudGlvbmVkIGluIHRoZSBQRTYgcGFwZXIgYSB0aHJlc2hvbGQgZm9yIHRoZSBmcmVlIGVuZXJneSBvZiB0aGUgZ3VpZGUgUk5BIHN0cnVjdHVyZS4gVGhleSBzdWdnZXN0IHRoYXQgZXZlcnkgZ3VpZGUgd2lsbCBiZWhhdmUgZGlmZmVyZW50bHksIGJ1dCB0aGVyZVx1MjAxOXMgb2Z0ZW4gYSBtb3JlIGNvbXBsZXggaW50ZXJhY3Rpb24gYXQgcGxheSB0aGFuIGp1c3QgYSBzaW1wbGUgdGhyZXNob2xkLiBJZiB0aGUgZnJlZSBlbmVyZ3kgaXMgbm90IHRvbyBsb3csIHRoZSBndWlkZSBSTkEgbWF5IHN0aWxsIGZ1bmN0aW9uIGVmZmljaWVudGx5IGFuZCBiZSBpbmNvcnBvcmF0ZWQgaW50byB0aGUgcHJpbWUgZWRpdG9yLCB3aXRoIGV2ZXJ5dGhpbmcgcmVtYWluaW5nIGluIGVxdWlsaWJyaXVtLiBIb3dldmVyLCBpZiB0aGUgZnJlZSBlbmVyZ3kgaXMgdG9vIGxvdywgbWVhbmluZyBoaWdoIHByb3BlbnNpdHkgZm9yIHNlbGYtZm9sZGluZywgaXQgY2FuIGNhdXNlIHByb2JsZW1zLiBcclxuICAgICAgICBJIGFsc28gcmVjZW50bHkgY2FtZSBhY3Jvc3MgYSBwYXBlciBmcm9tIHRoZSBncm91cCBvZiBLZWl0aCBKb3VuZywgYW5vdGhlciBwcm9taW5lbnQgQ1JJU1BSIHNjaWVudGlzdCBmcm9tIHRoZSBVLlMuLCB3aGVyZSB0aGV5IGRlbW9uc3RyYXRlZCB0aGF0IGFwcGx5aW5nIGEgaGVhdCBzaG9jayB0byB0aGUgZ3VpZGUgUk5BIGNhbiBoZWxwIGl0IHJlZm9sZC4gVGhpcyBpcyBwYXJ0aWN1bGFybHkgcmVsZXZhbnQgaWYgeW91XHUyMDE5cmUgdXNpbmcgUk5QIG9yIG1STkEgd2l0aCBzeW50aGV0aWMgZ3VpZGUgUk5BLiBUaGV5IGxpbmtlZCB0aGlzIHNwZWNpZmljYWxseSB0byB0aGUgc2VsZi1iaW5kaW5nIGNhcGFjaXR5IG9mIHRoZSBndWlkZSBSTkEsIHN1Z2dlc3RpbmcgdGhhdCBoZWF0IHNob2NrIGNhbiBtaXRpZ2F0ZSB0aGUgaXNzdWVzIGNhdXNlZCBieSBzZWxmLWJpbmRpbmcuIFwiIC8+XHJcbiAgICAgIDxRYUJveCBxPVwiV2hhdCB3b3VsZCBiZSB0aGUgYXBwbGljYXRpb24/IFdvdWxkIHlvdSBhZG1pbmlzdGVyIHRoZSBoZWF0IHNob2NrIGluIHZpdm8/XCIgXHJcbiAgICAgICAgYT1cIkkgYmVsaWV2ZSB0aGV5IHVzZWQgaXQgdG8gZW5naW5lZXIgemVicmFmaXNoIGVtYnJ5b3Mgb3Igc29tZXRoaW5nIGFsb25nIHRob3NlIGxpbmVzLiBJdFx1MjAxOXMgcXVpdGUgc3BlY2lmaWMsIG9mIGNvdXJzZS4gSWYgeW91IHBsYW4gdG8gZGVsaXZlciB5b3VyIGd1aWRlIFJOQSB0aHJvdWdoIGEgdmlyYWwgdmVjdG9yIG9yIHNpbWlsYXIgbWV0aG9kIGZvciBodW1hbiB0aGVyYXB5LCB0aGUgYXBwbGljYXRpb24gd291bGQgZGlmZmVyIHNpZ25pZmljYW50bHkuIFlvdSBvYnZpb3VzbHkgY2FuJ3QgYWRtaW5pc3RlciBhIGhlYXQgc2hvY2sgdG8gaHVtYW5zLCBzbyBpdCByZWFsbHkgZGVwZW5kcyBvbiB0aGUgY29udGV4dCBvZiB5b3VyIGFwcGxpY2F0aW9uLlwiIC8+XHJcbiAgICAgIDxRYUJveCBxPVwiT2theSwgdGhhdCdzIGludGVyZXN0aW5nLiBHaXZlbiB0aGUgdGltZSBjb25zdHJhaW50cywgbGV0J3MgbW92ZSBvbiB0byB0aGUgbmV4dCBxdWVzdGlvbi4gRHVlIHRvIG91ciBsaW1pdGVkIHJlc291cmNlcywgd2UgYXJlIHRhcmdldGluZyBhIFBFMiBzeXN0ZW0sIGFuZCB3ZSdkIGxpa2UgdG8gYXNrIGlmIHlvdSBzZWUgYW55IGNoYW5jZXMgb2Ygc3VjY2VzcyB3aXRoIHRoaXMgc3lzdGVtLiBJZiBzbywgaG93IGhpZ2ggZG8geW91IHRoaW5rIHRoZSBjaGFuY2VzIG9mIHN1Y2Nlc3MgYXJlPyBXZSB1bmRlcnN0YW5kIHRoYXQgdGhlIFBFMyBzeXN0ZW0sIGFzIHNob3duIGluIHlvdXIgcGFwZXIsIGlzIG11Y2ggbW9yZSBhZHZhbmNlZCBhbmQgcGVyZm9ybXMgc2lnbmlmaWNhbnRseSBiZXR0ZXIuIEJ1dCBnaXZlbiBvdXIgc2l0dWF0aW9uLCBkbyB5b3UgdGhpbmsgb3VyIFBFMiBzeXN0ZW0gY291bGQgc3RpbGwgYmUgZWZmZWN0aXZlLCBvciB3b3VsZCB5b3Ugc3VnZ2VzdCB0aGF0IGl0IG9ubHkgbWFrZXMgc2Vuc2UgdG8gdXNlIHNvbWV0aGluZyBsaWtlIFBFMz9cIiBcclxuICAgICAgICBhPVwiUEUyIGNhbiB3b3JrLCBidXQgaXQgcmVhbGx5IGRlcGVuZHMgb24geW91ciBhcHBsaWNhdGlvbiBhbmQgdGhlIG1ldGhvZHMgeW91IGhhdmUgdG8gYXNzZXNzIHRoZSBlZGl0aW5nIGVmZmljaWVuY3kuIElmIHlvdSBjYW4gdXNlIE5HUyAoTmV4dC1HZW5lcmF0aW9uIFNlcXVlbmNpbmcpIGZvciBldmVyeXRoaW5nLCB5b3UnbGwgYmUgYWJsZSB0byBkZXRlY3QgZWRpdHMgZXZlbiB3aXRoIFBFMiBzeXN0ZW1zLiBIb3dldmVyLCBJIHdvdWxkIGdlbmVyYWxseSBleHBlY3QgdGhlIGVmZmljaWVuY3kgdG8gYmUgbG93LiBXaGVuZXZlciBwb3NzaWJsZSwgSSB3b3VsZCBhbHdheXMgcmVjb21tZW5kIHRyeWluZyB0aGUgUEUzIHN5c3RlbS4gQ291bGQgeW91IHNoYXJlIHdoYXQgeW91ciBzcGVjaWZpYyBhcHBsaWNhdGlvbiBpcywgb3IgaXMgdGhhdCBjb25maWRlbnRpYWw/XCIgLz5cclxuICAgICAgPFFhQm94IHE9XCJTbyBvdXIgZ29hbCBpcyB0byBldmVudHVhbGx5IHVzZSBpdCBpbiB2aXZvLCBidXQgZm9yIG5vdywgd2UncmUgZm9jdXNpbmcgb24gdHJ5aW5nIHRvIGNvcnJlY3QgdGhlIG11dGF0aW9uIGZpcnN0IGluIHJlZ3VsYXIgY2VsbCBjdWx0dXJlcyBhbmQgdGhlbiBsYXRlciBpbiBwcmltYXJ5IGNlbGxzLlwiIFxyXG4gICAgICAgIGE9XCJJcyB5b3VyIGZvY3VzIHNwZWNpZmljYWxseSBvbiB0aGUgRjUwOCBkZWx0YSBtdXRhdGlvbj8gSWYgc28sIHdlIGNvdWxkIHBvdGVudGlhbGx5IGhlbHAgeW91IGdldCB5b3Ugc3RhcnRlZCwgYXMgd2UgYWxyZWFkeSBoYXZlIGNvbnN0cnVjdHMgYW5kIGNlbGxzIHdpdGggdGhhdCBtdXRhdGlvbi4gV2Ugd291bGQgbmVlZCB0byBkaXNjdXNzIHRoZSBmaW5hbmNpYWwgYXNwZWN0cywgYnV0IHdlIG1pZ2h0IGJlIGFibGUgdG8gYXNzaXN0LiBIb3dldmVyLCBhcmUgeW91IGZ1bGx5IGNvbW1pdHRlZCB0byB0YXJnZXRpbmcgRjUwOCwgb3IgYXJlIHlvdSBhbHNvIGNvbnNpZGVyaW5nIG90aGVyIGRpc2Vhc2VzIG9yIG11dGF0aW9ucz9cIiAvPlxyXG4gICAgICA8UWFCb3ggcT1cIlRoZSB0aW1lZnJhbWUgb2YgdGhlIHByb2plY3QsIGNvbWJpbmVkIHdpdGggdGhlIGZhY3QgdGhhdCB3ZVx1MjAxOXJlIGFsbCBzdHVkeWluZyBvbiB0aGUgc2lkZSwgbGltaXRzIHVzIHRvIGEgY2VydGFpbiBzY29wZS4gU2luY2UgdGhpcyBpcyBvdXIgZmlyc3QgdGltZSB0YWNrbGluZyBhIHByb2plY3QgbGlrZSB0aGlzLCBpdCBtYWtlcyBzZW5zZSB0byBzdGljayB0byBzb21ldGhpbmcgbW9yZSBtYW5hZ2VhYmxlLiBTbywgd2UncmUgc29tZXdoYXQgY29tbWl0dGVkIHRvIGZvY3VzaW5nIG9uIEY1MDggZHVlIHRvIHRoZXNlIGNvbnN0cmFpbnRzLlwiIFxyXG4gICAgICAgIGE9XCJUaGF0J3MgdW5kZXJzdGFuZGFibGUuIEl0IGNhbiBiZSByZWFsbHkgdG91Z2ggdG8ganVnZ2xlIGEgcHJvamVjdCBsaWtlIHRoaXMgYWxvbmcgd2l0aCBleGFtcyBhbmQgc3R1ZGllcywgZXNwZWNpYWxseSBpZiB5b3UncmUgYWxzbyBpbnZvbHZlZCBpbiBjb21wZXRpdGlvbnMuIEJ1dCBpdCdzIGRlZmluaXRlbHkgd29ydGggdGhlIGVmZm9ydCwgZXZlbiBpZiB5b3UgZG9uJ3QgYWNoaWV2ZSBodWdlIHJlc3VsdHMgcmlnaHQgYXdheS4gVGhlIGV4cGVyaWVuY2UgYW5kIGxlYXJuaW5nLCBhcyB3ZWxsIGFzIHRoZSBjb25uZWN0aW9ucyB5b3UgbWFrZSwgYXJlIGluY3JlZGlibHkgdmFsdWFibGUuIEknbSBhIGJpZyBzdXBwb3J0ZXIgb2Ygc3VjaCBwcm9qZWN0cy4gU28sIHdoYXQgcmVzb3VyY2VzIGRvIHlvdSBjdXJyZW50bHkgaGF2ZT8gRG8geW91IGFscmVhZHkgaGF2ZSBjZWxscyB3aXRoIHRoZSBGNTA4IGRlbHRhIG11dGF0aW9uLCBvci4uLj8gXCIgLz5cclxuICAgICAgPFFhQm94IHE9XCJXZSBoYXZlIG9uZSBwYXRpZW50IHdobyBpcyB3aWxsaW5nIHRvIHByb3ZpZGUgdXMgd2l0aCBjZWxscywgYnV0IHdlIGRvbid0IGhhdmUgdGhlbSB5ZXQuIFwiIFxyXG4gICAgICAgIGE9XCJJdCBzb3VuZHMgbGlrZSB5b3UncmUgYXdhcmUgb2YgdGhlIGNoYWxsZW5nZXMsIGFuZCBJIGRvbid0IHdhbnQgdG8gZGlzY291cmFnZSB5b3UsIGJ1dCBqdXN0IHRvIGJlIHJlYWxpc3RpYywgd29ya2luZyB3aXRoIHByaW1hcnkgY2VsbHMgYW5kIGdldHRpbmcgZXZlcnl0aGluZyByZWFkeSBjb3VsZCBiZSB0cmlja3ksIGVzcGVjaWFsbHkgY29uc2lkZXJpbmcgdGhlIGNvbXBldGl0aW9uIGlzIGluIE9jdG9iZXIuIEV4cGVyaW1lbnRzIGluIGh1bWFuIGNlbGxzIGNhbiB0YWtlIHRpbWUsIGVzcGVjaWFsbHkgaWYgeW91IG5lZWQgdG8gZG8gbXVsdGlwbGUgaXRlcmF0aW9ucyBvciBjbG9uZSBjb25zdHJ1Y3RzXHUyMDE0aXQgY291bGQgZWFzaWx5IHRha2UgYSB3ZWVrIG9yIG1vcmUgcGVyIGV4cGVyaW1lbnQuIFxyXG4gICAgICAgIFJlZ2FyZGluZyB0aGUgY2VsbHMgd2UgaGF2ZSwgYXMgbWVudGlvbmVkIGluIG91ciBwYXBlciwgd2Ugc2NyZWVuZWQgYWxsIG91ciBndWlkZXMgb24gSEVLIGNlbGxzIHdpdGggYW4gaW50ZWdyYXRlZCBjb3B5IG9mIHRoZSBDRlRSIGNETkEuIEhFSyBjZWxscyBhcmUgZWFzeSB0byB3b3JrIHdpdGgsIGJ1dCB0aGV5IGRvbid0IG5hdHVyYWxseSBleHByZXNzIENGVFIsIGV2ZW4gdGhvdWdoIHRoZSBnZW5lIGlzIHByZXNlbnQgaW4gdGhlaXIgZ2Vub21lLiBTbywgd2UgaW50cm9kdWNlZCB0aGUgbXV0YXRpb24gb2YgaW50ZXJlc3QgaW50byB0aGVzZSBjZWxscywgbWFraW5nIGl0IGVhc2llciB0byBzY3JlZW4uIFxyXG4gICAgICAgIEknbSBub3QgZW50aXJlbHkgc3VyZSBpZiB3ZSBjYW4gc2VuZCBvdmVyIHRoZSBjZWxscyBkdWUgdG8gZXRoaWNhbCByZWd1bGF0aW9ucywgd2hpY2ggY2FuIGJlIGNvbXBsZXggYW5kIHRpbWUtY29uc3VtaW5nIHRvIG5hdmlnYXRlLiBIb3dldmVyLCB0aGVyZSdzIGFuIGFsdGVybmF0aXZlIGFwcHJvYWNoIHRoYXQgbWlnaHQgaGVscCB5b3UuIEVhcmx5IG9uLCB3ZSBmb3VuZCB0aGF0IGl0J3MgYWN0dWFsbHkgcXVpdGUgZWFzeSB0byBzY3JlZW4gZ3VpZGVzIHVzaW5nIHdoYXQgd2UgY2FsbCBhICd0cmFuc2llbnQgdGFyZ2V0Jy4gSW4gdGhpcyBtZXRob2QsIHlvdSB3b3VsZCB0cmFuc2ZlY3QgYWxsIHlvdXIgcHJpbWUgZWRpdGluZyBwbGFzbWlkcyBpbnRvIEhFSyBjZWxscywgYWxvbmcgd2l0aCBhIHBsYXNtaWQgY29udGFpbmluZyB0aGUgQ0ZUUiBjRE5BIHdpdGggdGhlIG11dGF0aW9uIG9mIGludGVyZXN0LiBXaGlsZSB0aGlzIGFwcHJvYWNoIGlzblx1MjAxOXQgYXMgcGh5c2lvbG9naWNhbCBhcyBlZGl0aW5nIHRoZSBjaHJvbW9zb21lIGRpcmVjdGx5LCBvdXIgc2lkZS1ieS1zaWRlIGNvbXBhcmlzb25zIHNob3dlZCBhbG1vc3QgZXF1YWwgZWZmaWNpZW5jaWVzIGJldHdlZW4gdHJhbnNpZW50IGFuZCBjaHJvbW9zb21hbCB0YXJnZXRzLiBJdCdzIG11Y2ggZWFzaWVyIGFuZCBmYXN0ZXIgdGhhbiB3b3JraW5nIHdpdGggcGF0aWVudC1kZXJpdmVkIGNlbGxzLiBJIGNhbiBkZWZpbml0ZWx5IHNlbmQgeW91IHRoZSBwbGFzbWlkLCB3aGljaCB3b3VsZCBzYXZlIHlvdSBhIGxvdCBvZiB0aW1lIGFuZCBlZmZvcnQuIFRoaXMgbWV0aG9kIGlzIG11Y2ggc2ltcGxlciBhbmQgY291bGQgYmUgYSBwcmFjdGljYWwgc29sdXRpb24gZm9yIHlvdXIgcHJvamVjdC4gXCIgLz5cclxuICAgICAgPFFhQm94IHE9XCJPdXIgaW5pdGlhbCBwbGFuIGlzIHRvIHdvcmsgd2l0aCBhIHJlcG9ydGVyIHBsYXNtaWQgdGhhdCBleHByZXNzZXMgZUdGUCwgd2hlcmUgd2UndmUgcmVtb3ZlZCBhIHNwbGljZSBzaXRlLCB1bnRpbCB3ZSBoYXZlIHBhdGllbnQgY2VsbHMgb3IgY2VsbCBsaW5lcyB3aXRoIENGVFIgbXV0YXRpb25zLiBUaGlzIHdpbGwgYWxsb3cgdXMgdG8gc2NyZWVuIGVhc2lseSB3aXRob3V0IG5lZWRpbmcgdG8gc2VxdWVuY2UgZXZlcnl0aGluZy4gRG8geW91IG1heWJlIGhhdmUgYW55IHN1Z2dlc3Rpb25zIG9yIGFkdmljZSBvbiB0aGlzIGFwcHJvYWNoPyBcIiBcclxuICAgICAgICBhPVwiSXMgdGhhdCB0aGUgUEVBUiBzeXN0ZW0/IE5vLCBpdFx1MjAxOXMgYSBkaWZmZXJlbnQgb25lLCBidXQgd2UgYWxzbyBoYXZlIGEgc2ltaWxhciBzeXN0ZW0uIFRoZSBhZHZhbnRhZ2Ugb2YgdGhpcyBhcHByb2FjaCBpcyB0aGF0IHlvdSBjYW4gdmVyeSBlYXNpbHkgc2VlIGlmIGl0IHdvcmtzLCBhbmQgaXRcdTIwMTlzIHZlcnkgc2Vuc2l0aXZlXHUyMDE0bXVjaCBlYXNpZXIgdGhhbiBleHRyYWN0aW5nIGFuZCBzZXF1ZW5jaW5nIEROQS4gVGhlIGRvd25zaWRlLCBob3dldmVyLCBpcyB0aGF0XHUyMDI2IGFjdHVhbGx5LCBJXHUyMDE5bSBub3QgZmFtaWxpYXIgd2l0aCB0aGUgJ2ZsdSBQRUFSIHN5c3RlbS4nIFxyXG4gICAgICAgIEFjdHVhbGx5LCB3ZSB1c2UgdGhlIGV4YWN0IHNhbWUgc3lzdGVtIGluIG91ciBsYWIuIEl0XHUyMDE5cyB2ZXJ5IHVzZWZ1bCBmb3Igb3B0aW1pemluZyBkZWxpdmVyeSBzdHJhdGVnaWVzIGJlY2F1c2UgaXRcdTIwMTlzIGVhc3kgdG8gc2VlIHJlc3VsdHMuIFRoZSBkb3duc2lkZSwgb2YgY291cnNlLCBpcyB0aGF0IHRoZSBndWlkZXMgeW91XHUyMDE5cmUgdXNpbmcgZm9yIHRoYXQgc3lzdGVtIGFyZW5cdTIwMTl0IHNwZWNpZmljIHRvIHRoZSBGNTA4IGRlbHRhIG11dGF0aW9uLCByaWdodD8gU28sIHRoZXNlIGFyZSBzY2llbnRpZmljIHRyYWRlLW9mZnMuIFlvdSBjb3VsZCwgZm9yIGV4YW1wbGUsIGRlc2lnbiBhIHJlcG9ydGVyIHRoYXQgdXNlcyB5b3VyIEY1MDggZGVsdGEgZ3VpZGUgYW5kIGFsc28gcmVzdWx0cyBpbiBmbHVvcmVzY2VuY2UsIGJ1dCB5b3Ugd291bGQgbmVlZCB0byBkZXNpZ24gdGhlIHJlcG9ydGVyIGZpcnN0LiBJdFx1MjAxOXMgY2hhbGxlbmdpbmcgdG8gcHJvdmUgdGhhdCBpdCB3b3JrcyBiZWNhdXNlIHlvdSBtaWdodCBub3QgaGF2ZSBhIHBlcmZlY3QgZ3VpZGUgZm9yIEY1MDggZGVsdGEuIFxyXG4gICAgICAgIEl0IHJlYWxseSBkZXBlbmRzIG9uIHdoYXQgeW91IHdhbnQgdG8gYWNoaWV2ZS4gSWYgeW91ciBnb2FsIGlzIHRvIGZpcnN0IGNoZWNrIGlmIHlvdSBjYW4gc3VjY2Vzc2Z1bGx5IHBlcmZvcm0gcHJpbWUgZWRpdGluZywgdGhlbiB1c2luZyB0aGUgcmVwb3J0ZXIgaXMgZGVmaW5pdGVseSBhIGdvb2QgZmlyc3Qgc3RlcC5cIiAvPlxyXG4gICAgICA8UWFCb3ggcT1cIldlIHdpbGwgZWRpdCB0aGUgcGxhc21pZCwgc3BlY2lmaWNhbGx5IHRoZSB2ZWN0b3IsIHNvIHRoYXQgd2UgaGF2ZSBhbG1vc3QgdGhlIHNhbWUgcGVnUk5BLiBUaGUgb25seSBkaWZmZXJlbmNlIHdpbGwgYmUgZG93bnN0cmVhbSwgYmVoaW5kIHRoZSBlZGl0LlwiIFxyXG4gICAgICAgIGE9XCJJcyB0aGlzIGFwcHJvYWNoIGJhc2VkIG9uIGEgcGFwZXIgZnJvbSB0aGUgTmV0aGVybGFuZHMsIG9yIGlzIGl0IHNvbWV0aGluZyB5b3UgY2FtZSB1cCB3aXRoIHlvdXJzZWxmPyBcIiAvPlxyXG4gICAgICA8UWFCb3ggcT1cIkJhc2VkIG9uIGEgcGFwZXIuIFwiIFxyXG4gICAgICAgIGE9XCJZZWFoLCB0aGF0IHNvdW5kcyBsaWtlIGEgdmVyeSBnb29kIHdheSB0byBzdGFydC4gRG8geW91IGFscmVhZHkgaGF2ZSB0aGUgcmVwb3J0ZXIgcGxhc21pZCByZWFkeT8gXCIgLz5cclxuICAgICAgPFFhQm94IHE9XCJZZWFoLCB3ZSBib3VnaHQgdGhlIHJlcG9ydGVyLCBhbmQgbm93IHdlXHUyMDE5cmUgbWFraW5nIHRoZSBuZWNlc3NhcnkgZWRpdHMgc28gd2UgY2FuIHVzZSBpdC4gXCIgXHJcbiAgICAgICAgYT1cIk9rYXksIHNvIGRvIHlvdSBhbHNvIGFscmVhZHkgaGF2ZSBndWlkZXMgdGFyZ2V0aW5nIEY1MDggcmlnaHQgbm93PyBcIiAvPlxyXG4gICAgICA8UWFCb3ggcT1cIldlXHUyMDE5dmUgZGVzaWduZWQgc29tZSBndWlkZXMsIGJ1dCB3ZSBoYXZlblx1MjAxOXQgdGVzdGVkIHRoZW0geWV0LiBUaGF0XHUyMDE5cyBvbmUgb2Ygb3VyIG5leHQgc3RlcHMuIFNvLCBhdCB0aGUgbW9tZW50LCB3ZVx1MjAxOXJlIGp1c3QgaW4gdGhlIGRlc2lnbiBwaGFzZSwgb3Igd2UgaGF2ZSBhbHJlYWR5IGRlc2lnbmVkIHRoZW0sIGFuZC4uLlwiIGE9XCJZZWFoLCBva2F5LCBjb29sLiBHb29kIGx1Y2sgd2l0aCB0aGF0ISBBbmQgSSBzdXBwb3NlIHlvdVx1MjAxOXJlIHN0YXJ0aW5nIG9mZiB3aXRoIEhFSyBjZWxscyBhcyB3ZWxsLCByaWdodD9cIi8+XHJcbiAgICAgIDxRYUJveCBxPVwiV2UgaGF2ZSBIRUsgYW5kIEhlTGEgY2VsbHMsIGJ1dCB3ZSBoYXZlbid0IGRlY2lkZWQgeWV0IHdoaWNoIG9uZXMgd2UnbGwgdXNlLlwiIGE9XCJJIHdvdWxkIHN0YXJ0IG9mZiBpbiBIRUsgY2VsbHMgYmVjYXVzZSwgYnkgdG90YWwgYWNjaWRlbnQgb3IgY29pbmNpZGVuY2UsIHRoZXkgYXJlIG11Y2ggZWFzaWVyIHRvIGFjaGlldmUgcHJpbWUgZWRpdGluZyBpbi4gVGhpcyBpcyBiZWNhdXNlIHRoZSBNTEgxIGdlbmUsIHdoaWNoIG5lZ2F0aXZlbHkgaW1wYWN0cyBwcmltZSBlZGl0aW5nIG91dGNvbWVzLCBpcyBuYXR1cmFsbHkgZGlzYWJsZWQgaW4gdGhlc2UgY2VsbHNcdTIwMTR0aGV5IGRvbid0IHByb2R1Y2UgdGhlIE1MSDEgcHJvdGVpbi4gT2YgYWxsIGNlbGwgbGluZXMgYXZhaWxhYmxlLCBIRUsgY2VsbHMgYXJlIHRoZSBlYXNpZXN0IHRvIGFjaGlldmUgZWRpdGluZyB3aXRoLCBzbyBJIHdvdWxkIGRlZmluaXRlbHkgcmVjb21tZW5kIHN0YXJ0aW5nIHRoZXJlLiBJbiB0ZXJtcyBvZiB0cmFuc2ZlY3Rpb24sIEhFSyBjZWxscyBhcmUgYWxzbyB2ZXJ5IGVhc2lseSB0cmFuc2ZlY3RlZC4gSWYgSSBjYW4gb2ZmZXIgYW5vdGhlciBwaWVjZSBvZiBhZHZpY2UsIGFsd2F5cyBpbmNsdWRlIEdGUCBjb250cm9sc1x1MjAxNHBsYXNtaWRzIHRoYXQgc2ltcGx5IGV4cHJlc3MgR0ZQIHdpdGhvdXQgcmVxdWlyaW5nIGVkaXRpbmdcdTIwMTRhbmQgdXNlIHRoZW0gdG8gZGV0ZXJtaW5lIHlvdXIgdHJhbnNmZWN0aW9uIGVmZmljaWVuY3kuIEl0J3MgY3J1Y2lhbCB0byBoYXZlIGEgdmVyeSBoaWdoIHRyYW5zZmVjdGlvbiBlZmZpY2llbmN5IGJlY2F1c2UgeW91J2xsIGJlIHdvcmtpbmcgd2l0aCBhIHRocmVlLWNvbXBvbmVudCBzeXN0ZW06IHlvdXIgcmVwb3J0ZXIsIHlvdXIgcHJpbWUgZWRpdG9yLCBhbmQgeW91ciBndWlkZXMuIEFsbCB0aHJlZSBwbGFzbWlkcyBuZWVkIHRvIGJlIHByZXNlbnQgaW4gdGhlIHNhbWUgY2VsbCBmb3IgdGhlIGVkaXRpbmcgdG8gb2NjdXIsIHNvIHlvdSBzaG91bGQgYWltIGZvciBhdCBsZWFzdCA3MCUgdHJhbnNmZWN0aW9uIGVmZmljaWVuY3ksIHByZWZlcmFibHkgODAlIG9yIGhpZ2hlci4gSSBkb24ndCBrbm93IHdoYXQgdHJhbnNmZWN0aW9uIG1ldGhvZCB5b3UncmUgcGxhbm5pbmcgdG8gdXNlLCBidXQgd2UndmUgYWx3YXlzIHVzZWQgTGlwb2ZlY3RhbWluZSAzMDAwLiBJdFx1MjAxOXMgZXhwZW5zaXZlLCBidXQgaXQgd29ya3MgdmVyeSB3ZWxsLiBIb3dldmVyLCBpZiB5b3UncmUgbG9va2luZyBmb3IgbW9yZSBjb3N0LWVmZmVjdGl2ZSBvcHRpb25zLCB3ZSByZWNlbnRseSBkaXNjb3ZlcmVkIHR3byBvdGhlciB0cmFuc2ZlY3Rpb24gcmVhZ2VudHMsIEpldCBPcHRpbXVzIGFuZCBKZXQgUHJpbWUsIHdoaWNoIGFyZSBtdWNoIGNoZWFwZXIgYW5kIGFsc28gd29yayBxdWl0ZSB3ZWxsLiBUaGF0IHNhaWQsIEkgd291bGQgYWR2aXNlIGFnYWluc3Qgc3RhcnRpbmcgd2l0aCBhbnkgb2YgdGhlIGNoZWFwZXIgdHJhbnNmZWN0aW9uIHJlYWdlbnRzOyB5b3UgcmVhbGx5IG5lZWQgdG8gYWltIGZvciBoaWdoIHRyYW5zZmVjdGlvbiBlZmZpY2llbmN5LiBBbHdheXMgbWFrZSBzdXJlIHRvIG1lYXN1cmUgYW5kIHJlcG9ydCB0cmFuc2ZlY3Rpb24gZWZmaWNpZW5jeSBmb3IgZXZlcnkgZXhwZXJpbWVudCBiZWNhdXNlIGlmIGl0J3MgbG93LCB0aGUgZXhwZXJpbWVudCBtaWdodCBub3QgeWllbGQgdXNlZnVsIHJlc3VsdHMuIElmIHlvdSBoYXZlIHRoZSBmdW5kcyBvciByZXNvdXJjZXMsIEkgd291bGQgYWxzbyByZWNvbW1lbmQgZGVzaWduaW5nIFAzIG9yIGV2ZW4gUDNiIGd1aWRlcywgYXMgdGhleSBtaWdodCBvZmZlciBiZXR0ZXIgZWZmaWNpZW5jeS4gV2hlbiBpdCBjb21lcyB0byBkZXNpZ25pbmcgUDNiIGd1aWRlcywgaWYgeW91J3JlIHByaW1hcmlseSBmb2N1c2VkIG9uIFAyIHJpZ2h0IG5vdywgdGhlcmUgYXJlIHNvbWUgc3BlY2lmaWMgY29uc2lkZXJhdGlvbnMgdG8ga2VlcCBpbiBtaW5kLiBJJ2xsIHByb3ZpZGUgeW91IHdpdGggYSBzaXRlIHRoYXQgY2FuIGhlbHAgd2l0aCB0aGlzLCBhbmQgSSdsbCBnaXZlIHlvdSB0aGUgbGluayBpbiBqdXN0IGEgbW9tZW50LiBTbywgaXQncyB2ZXJ5IGFkdmlzYWJsZSB0byBjaGVjayB0aGUgRG9lbmNoIHNjb3JlLiBEbyB5b3Uga25vdyB3aGF0IGl0IGlzP1wiLz5cclxuICAgICAgPFFhQm94IHE9XCJObywgbm90IHJlYWxseS5cIiBhPVwiVGhlcmUgYXJlIHBhcGVycyBieSBKb2huIERvZW5jaCwgYW4gQW1lcmljYW4gcmVzZWFyY2hlciwgZnJvbSBxdWl0ZSBhIHdoaWxlIGFnbyB0aGF0LCBpbiBteSBvcGluaW9uLCBhcmUgc29tZSBvZiB0aGUgYmVzdCBhcm91bmQuIEhlIGRldmVsb3BlZCBhIGNvbXByZWhlbnNpdmUgc2NvcmluZyBtYXRyaXggc3BlY2lmaWNhbGx5IGZvciByZWd1bGFyIENhczkgdGhhdCBjYW4gZXZhbHVhdGUgdGhlIHF1YWxpdHkgb2YgdGhlIHNwYWNlciBpbiB5b3VyIGd1aWRlIFJOQS4gVGhpcyBpcyBpbXBvcnRhbnQgYmVjYXVzZSBDYXM5IHRlbmRzIHRvIHByZWZlciBjZXJ0YWluIHNlcXVlbmNlcyBvdmVyIG90aGVycy4gRm9yIGluc3RhbmNlLCBhIGdvb2Qgc3BhY2VyIHNob3VsZCBoYXZlIGFuIGFwcHJvcHJpYXRlIEdDIGNvbnRlbnQgYW5kIHNob3VsZCBhdm9pZCBoYWlycGlucyB0aGF0IG1pZ2h0IGNhdXNlIGl0IHRvIGZvbGQgaW4gb24gaXRzZWxmLCB3aGljaCB3b3VsZCBwcmV2ZW50IGl0IGZyb20gZnVuY3Rpb25pbmcgcHJvcGVybHkuIFlvdSBjYW4gdXNlIHRoaXMgbWF0cml4IHRvIGdpdmUgYSBzY29yZSBmb3IgdGhlIHF1YWxpdHkgb2YgYSBndWlkZSBSTkEuIElcdTIwMTltIGdvaW5nIHRvIHB1bGwgdXAgYW4gZXhhbXBsZSBoZXJlLiBUaGUgc2l0ZSBmcm9tIFN5bnRoZWdvLCBhIGNvbW1lcmNpYWwgcHJvdmlkZXIgb2YgQ1JJU1BSIHJlYWdlbnRzLCBhbGxvd3MgeW91IHRvIGNoZWNrIHRoZSBxdWFsaXR5IG9mIHlvdXIgZ3VpZGUuIFdoZW4geW91IHZhbGlkYXRlIGl0LCB0aGUgc2l0ZSBnaXZlcyBhIHNjb3JlIGJhc2VkIG9uIHZhcmlvdXMgZmFjdG9ycywgaW5jbHVkaW5nIG9mZi10YXJnZXQgZWZmZWN0cywgYWx0aG91Z2ggdGhhdCBtaWdodCBub3QgYmUgeW91ciBwcmltYXJ5IGNvbmNlcm4gYXQgdGhlIG1vbWVudC4gSWYgeW91IGhvdmVyIG92ZXIgYSBzcGVjaWZpYyBhcmVhLCBpdCB3aWxsIHNob3cgeW91IHRoZSBEb2VuY2ggU2NvcmUsIHdoaWNoIGlzIGNydWNpYWwuIElkZWFsbHksIHlvdSB3YW50IGEgZ3VpZGUgd2l0aCBhIGdvb2QgRG9lbmNoIFNjb3JlLiBBIGdvb2Qgc2NvcmUgc3RhcnRzIGF0IGFyb3VuZCAwLjQsIGluZGljYXRlZCBieSBhIGdyZWVuIGNoZWNrIG1hcmsgZm9yIGdvb2QgZWZmaWNpZW5jeS4gSWYgdGhlIHNjb3JlIGlzIHZlcnkgbG93LCBpdCBtZWFucyB0aGF0IHRoZSBndWlkZSBsaWtlbHkgaGFzIGxvdyBDUklTUFItQ2FzOSBhY3Rpdml0eSBhbmQgbWF5IG5vdCBiZSB2ZXJ5IGVmZmljaWVudC4gV2hlbiBkZXNpZ25pbmcgcHJpbWUgZWRpdGluZyBndWlkZXMsIFJOQSwgd2UgYWx3YXlzIGNoZWNrIHRoZSBzcGFjZXIgZm9yIGEgZ29vZCBEb2VuY2ggU2NvcmUuIElmIHdlIGFyZSBkZXNpZ25pbmcgbmlja2luZyBndWlkZXMgZm9yIGEgUEUzIG9yIFBFM2Igc3RyYXRlZ3ksIHdlIGFsc28gZW5zdXJlIHRoYXQgdGhleSBoYXZlIGEgZ29vZCBzY29yZS4gVGhpcyBpcyBvbmUgb2YgdGhlIGVhc2llc3QgdG9vbHMgdG8gY2hlY2sgZm9yIHRoYXQuIFdoZW5ldmVyIHBvc3NpYmxlLCB0cnkgdXNpbmcgUEUzLiBJbiBzb21lIGNhc2VzLCBQRTMgcGVyZm9ybXMgYmV0dGVyIHRoYW4gUEUyLCB0aG91Z2ggbm90IGFsd2F5cy4gUEUzYiBtaWdodCBub3QgYWx3YXlzIHdvcmsgZWl0aGVyLCBidXQgZm9yIG1hbnkgbXV0YXRpb25zLCB3ZSBoYXZlIHNlZW4gc2lnbmlmaWNhbnQgaW5jcmVhc2VzIGluIGVkaXRpbmcgZWZmaWNpZW5jeSBieSBpbmNsdWRpbmcgdGhlIFBFMyBndWlkZS5cIi8+XHJcbiAgICAgIDxRYUJveCBxPVwiT2theSwgeWVhaCwgdGhhdCB3YXMgcXVpdGUgY2xlYXIgZnJvbSB5b3VyIHJlc3VsdHM7IHRoZSBkaWFncmFtIGlsbHVzdHJhdGVkIHRoYXQgdmVyeSB3ZWxsLiBBcmUgdGhlcmUgbW9yZSBvZmYtdGFyZ2V0IGVmZmVjdHMgd2hlbiB1c2luZyBQRTMgc2luY2UgeW91IGhhdmUgdG8gbWFrZSBhbm90aGVyIGN1dD9cIiBhPVwiSWYgeW91IGRlY2lkZSB0byB1c2UgUEUzLCBpdCdzIGltcG9ydGFudCB0byBiZSBhd2FyZSB0aGF0IHdoaWxlIGl0J3Mgbm90IGV4YWN0bHkgYW4gb2ZmLXRhcmdldCBpc3N1ZSwgdGhlcmUgaXMgYSByaXNrIG9mIGFuIHVuZGVzaXJlZCBvbi10YXJnZXQgb3V0Y29tZS4gVGhlIGNvbmNlcm4gd2l0aCByZWd1bGFyIFBFMyBpcyB0aGF0IGJvdGggc3RyYW5kcyBvZiBETkEgY2FuIGJlIG5pY2tlZCBzaW11bHRhbmVvdXNseSwgd2hpY2ggY2FuIGxlYWQgdG8gYSBzdGFnZ2VyZWQgZG91YmxlLXN0cmFuZCBicmVhay4gVGhpcyBjYW4gcmVzdWx0IGluIHRoZSBmb3JtYXRpb24gb2YgaW5kZWxzIChpbnNlcnRpb25zIG9yIGRlbGV0aW9ucykuIEluIHlvdXIgY2FzZSwgdGhpcyBtZWFucyB0aGF0IGlmIHRoZSByZWdpb24gYXJvdW5kIHRoZSBGNTA4IGRlbHRhIG11dGF0aW9uIGlzIGJyb2tlbiwgdGhlIHByaW1lIGVkaXRvciBtaWdodCBub3QgYmUgYWJsZSB0byByZXBhaXIgaXQgcHJvcGVybHksIGxlYWRpbmcgdG8gYWRkaXRpb25hbCBiYXNlIHBhaXJzIGJlaW5nIHJlbW92ZWQgb3IgYWRkZWQsIGFuZCB0aHVzLCB0aGUgc2VxdWVuY2UgbWlnaHQgYmUgYWx0ZXJlZCBpbiBhbiB1bmludGVuZGVkIHdheS4gVGhlIHJpc2sgb2Ygb24tdGFyZ2V0IGluZGVscyBpcyBkZWZpbml0ZWx5IGhpZ2hlciB3aXRoIFBFMyBjb21wYXJlZCB0byBQRTIuIEhvd2V2ZXIsIHRoaXMgcmlzayBpcyByZWR1Y2VkIHdoZW4gdXNpbmcgUEUzYiwgd2hpY2ggZW1wbG95cyBzZXF1ZW50aWFsIG5pY2tpbmcuIFRoZSBQRTNiIG5pY2tpbmcgZ3VpZGVzIGFyZSBkZXNpZ25lZCB0byByZWNvZ25pemUgdGhlIHdpbGQtdHlwZSBzZXF1ZW5jZSwgYW5kIHRoZXkgY2FuIG9ubHkgbmljayB0aGUgb3Bwb3NpdGUgc3RyYW5kIGlmIHRoZSBjb3JyZWN0aW9uIGhhcyBhbHJlYWR5IGJlZW4gbWFkZSBvbiB0aGUgdG9wIHN0cmFuZC4gVGhpcyBzZXF1ZW50aWFsIGFjdGlvbiBoZWxwcyB0byBhdm9pZCB0aGUgZ2VuZXJhdGlvbiBvZiBpbmRlbHMuIEludHJvZHVjaW5nIGEgc2Vjb25kIGd1aWRlIGludG8gdGhlIHN5c3RlbSBhbHNvIGJyaW5ncyB0aGUgcG9zc2liaWxpdHkgb2Ygb2ZmLXRhcmdldCBlZGl0aW5nIGJ5IHRoYXQgZ3VpZGUgaG93ZXZlciwgc2luY2Ugb25seSBhIENhczkgbmlja2FzZSBpcyB1c2VkLCBvZmYtdGFyZ2V0IGluZGVscyBzaG91bGQgYmUgbGltaXRlZC5cIi8+XHJcbiAgICAgIDxRYUJveCBxPVwiWWVzLCBva2F5LCB0aGFuayB5b3UuIERvIHlvdSBoYXZlIHRpbWUgbGVmdCwgb3IgYXJlIHdlIG91dCBvZiB0aW1lP1wiYT1cIiBJdCdzIGZpbmUuXCIvPlxyXG4gICAgICA8UWFCb3ggcT1cIldlIGhhdmUgbW9yZSBvciBsZXNzIG9uZSBsYXN0IHF1ZXN0aW9uLiBJZiBpdFx1MjAxOXMgbm90IHBvc3NpYmxlLCB0aGF0XHUyMDE5cyBjb21wbGV0ZWx5IGZpbmUuIFdlIGp1c3Qgd2FudGVkIHRvIGFzayBpZiB5b3UgY291bGQgcG9zc2libHkgZm9yd2FyZCB0aGUgY29udGFjdCBkZXRhaWxzIGZvciB0aGUgVXNzaW5nIGNoYW1iZXIgc2V0dXAgaW4gUGFyaXMgdGhhdCB5b3UgbWVudGlvbmVkIGluIHlvdXIgZW1haWwuIFdvdWxkIHRoYXQgYmUgcG9zc2libGU/XCIgYT1cIllvdSBjYW4gY2VydGFpbmx5IHRyeSB0byBjb250YWN0IHRoZW0sIGJ1dCBJIGFjdHVhbGx5IGtub3cgdGhhdCB0aGVyZSBhcmUgcXVpdGUgZ29vZCBsYWJzIGluIEdlcm1hbnkgdGhhdCB3b3JrIG9uIHNpbWlsYXIgdGhpbmdzLiBcclxuICAgICAgICBPbmUgbWFqb3IgZHJhd2JhY2sgZm9yIHlvdSBtaWdodCBiZSB0aGUgdGltZSBpdCB0YWtlcyB0byBkaWZmZXJlbnRpYXRlIGNlbGxzLiBJZiB5b3UgaGFydmVzdCBzdGVtIGNlbGxzIG9yIGJhc2FsIGNlbGxzIGZyb20gcGF0aWVudHMsIHRoZXkgd2lsbCBoYXZlIHRoZSBDRlRSIGdlbmUsIGJ1dCB0aGV5IGRvblx1MjAxOXQgZXhwcmVzcyBpdCBpbW1lZGlhdGVseS4gSXQgdGFrZXMgYWJvdXQgZm91ciB3ZWVrcyBmb3IgdGhlbSB0byBkaWZmZXJlbnRpYXRlIGFuZCBzdGFydCBwcm9kdWNpbmcgdGhlIENGVFIgcHJvdGVpbi4gV2l0aG91dCB0aGlzIGRpZmZlcmVudGlhdGlvbiwgeW91IGNhbid0IG1lYXN1cmUgdGhlIGN1cnJlbnRzLCB3aGljaCBjb3VsZCBzbG93IHlvdSBkb3duIHNpZ25pZmljYW50bHkuIEknbSBub3Qgc3VyZSBpZiB5b3UgaGF2ZSB0aGF0IGtpbmQgb2YgdGltZS4gXHJcbiAgICAgICAgSWYgSSBjYW4gZ2l2ZSB5b3Ugb25lIHBpZWNlIG9mIGFkdmljZTogaXRcdTIwMTlzIGxlc3MgcGh5c2lvbG9naWNhbCwgYnV0IGl0XHUyMDE5cyBzdGlsbCBhbiBhY2NlcHRlZCBhc3NheVx1MjAxNHRyeSBpdCBvbiBvcmdhbm9pZHMuIFdlIGNvdWxkIGFjdHVhbGx5IHBlcmZvcm0gYm90aCBhc3NheXMgaGVyZS4gSWYgeW91IGZpbmQgZ3VpZGVzIHRoYXQgd29yayByZWFsbHkgd2VsbCwgd2UgY291bGQgY29uc2lkZXIgZG9pbmcgdGhvc2UgdGVzdHMgaGVyZS4gU29tZW9uZSBjb3VsZCBjb21lIG92ZXIsIG9yIHdlIGNvdWxkIGRvIHRoZSBleHBlcmltZW50cyBpZiB0aGV5XHUyMDE5cmUgbm90IHRvbyBleHBlbnNpdmUgYW5kIGhhdmUgYSBnb29kIGNoYW5jZSBvZiB3b3JraW5nLiBJIHRoaW5rIHdlIHdvdWxkblx1MjAxOXQgbWluZCBhZGRpbmcgdGhlIEY1MDggZGVsdGEgbXV0YXRpb24gdG8gb3VyIGxpc3Qgb2YgZWRpdGFibGUgbXV0YXRpb25zLiBcclxuICAgICAgICBUaGVyZVx1MjAxOXMgYWxzbyB0aGUgcG9zc2liaWxpdHkgdGhhdCBpZiB0aGUgcGFwZXIgZnJvbSB0aGUgTGl1IExhYiBpcyBwdWJsaXNoZWQgd2l0aGluIHRoZSBuZXh0IG1vbnRoLCB5b3UgY291bGQganVzdCB1c2UgdGhlIGd1aWRlIHRoZXkgcHJvdmlkZSwgYW5kIHlvdVx1MjAxOWQgaGF2ZSBhIGd1aWRlIHRoYXQgaXMga25vd24gdG8gd29yay4gXCIvPlxyXG4gICAgICA8UWFCb3ggcT1cIlllYWgsIHNvIEkgdGhpbmsgaWYgb3VyIGd1aWRlcyBkb25cdTIwMTl0IHdvcmsgYXMgd2VsbCBhcyB3ZSBob3BlLCB0aGlzIGNvdWxkIGJlIGFuIG9wcG9ydHVuaXR5LiBXZSBzdGlsbCB3YW50IHRvIGV4cGxvcmUgb3B0aW1pemF0aW9uIG9mIHRoZSBwcmltZSBlZGl0aW5nIHN5c3RlbSwgc3VjaCBhcyB0cnlpbmcgZGlmZmVyZW50IHJldmVyc2UgdHJhbnNjcmlwdGFzZXMgb3Igb3RoZXIgbWV0aG9kcy4gRm9yIG5vdywgd2VcdTIwMTlkIGxpa2UgdG8gdHJ5IGl0IG9uIG91ciBvd24sIGJ1dCBsaWtlIHlvdSBzYWlkLCBpdFx1MjAxOXMgZ29vZCB0byBoYXZlIHRoaXMgb3Bwb3J0dW5pdHkgaW4gY2FzZSBpdCBkb2Vzblx1MjAxOXQgd29yayBvdXQuXCJhPVwiWWVhaCwgSSB0aGluayB3b3JraW5nIHdpdGggcGF0aWVudCBjZWxscyBpcyBvbmUgdGhpbmcsIGJ1dCBqdXN0IGJlIGF3YXJlIHRoYXQgdGhlc2UgbW9kZWxzIGFuZCBhc3NheXMgdHlwaWNhbGx5IHRha2UgYSBsb3Qgb2YgdGltZVx1MjAxNGVhc2lseSBoYWxmIGEgeWVhciwgYW5kIHRoYXRcdTIwMTlzIGNvbnNpZGVyZWQgZmFzdCB0byBnZXQgdGhlbSB1cCBhbmQgcnVubmluZy4gVW5sZXNzIHlvdSdyZSBpbiBhIGxhYiB0aGF0IGFscmVhZHkgaGFzIGV4cGVyaWVuY2Ugd2l0aCBncm93aW5nIG9yZ2Fub2lkcywgaXQgY291bGQgYmUgdmVyeSBjaGFsbGVuZ2luZyB0byBzdGFydCBmcm9tIHNjcmF0Y2guIFxyXG4gICAgICAgIEhvd2V2ZXIsIHlvdSBjYW4gYWx3YXlzIHRyeS4gVGhlIHRlYW0gaW4gUGFyaXMgdGhhdCB3ZSBrbm93IHZlcnkgd2VsbFx1MjAxNHRoZXkgYXJlIGluY3JlZGlibHkga2luZCwgd29ybGQtY2xhc3MgZXhwZXJ0cyBpbiB3aGF0IHRoZXkgZG8sIGJ1dCB0aGV5IGFyZSBhbHNvIHVuZGVyIGEgbG90IG9mIHByZXNzdXJlLiBUaGV5IHVzZSB0aGVzZSB0ZWNobm9sb2dpZXMgbm90IG9ubHkgZm9yIHJlc2VhcmNoIGJ1dCBhbHNvIHRvIGRpYWdub3NlIHBhdGllbnRzLiBXaGF0IHRoZSBGcmVuY2ggdGVhbSBoYXMgbWFuYWdlZCB0byBkbyBpcyBzaG93IHRoYXQgaWYgYSBwYXRpZW50XHUyMDE5cyBjZWxscyByZXNwb25kIHRvIGNlcnRhaW4gZHJ1Z3MsIHRoZSBnb3Zlcm5tZW50IGFsbG93cyB0aG9zZSBkcnVncyB0byBiZSBhZG1pbmlzdGVyZWQgdG8gdGhlIHBhdGllbnQuIFlvdSBjYW4gaW1hZ2luZSBob3cgaW1wb3J0YW50IHRoZXNlIGV4cGVyaW1lbnRzIGFyZSwgYXMgdGhleSBjYW4gZGlyZWN0bHkgaW1wYWN0IHBhdGllbnRzJyBsaXZlcywgd2hpY2ggbmF0dXJhbGx5IHRha2VzIHRoZSBoaWdoZXN0IHByaW9yaXR5LlwiLz5cclxuICAgICAgPFFhQm94IHE9XCJZZWFoLCB3ZSByZWNvZ25pemVkIHRoYXQgdG9vLiBXZSB0YWxrZWQgd2l0aCB0aGUgQ0YgdGVhbSBhdCB0aGUgVW5pdmVyc2l0eSBDbGluaWMgaW4gTVx1MDBGQ25zdGVyIGFuZCBhc2tlZCBhYm91dCB1c2luZyB0aGVpciBVc3NpbmcgY2hhbWJlciwgYnV0IHRoZXkgYXJlIHJlYWxseSBvdmVyd29ya2VkIHdpdGggaXQuIFRoYXRcdTIwMTlzIHdoeSB3ZSByZWFjaGVkIG91dCB0byB5b3UgYWJvdXQgaXQuIEJ1dCBpdFx1MjAxOXMgY29tcGxldGVseSBmaW5lLCBhcyB3ZSBtZW50aW9uZWQgYmVmb3JlLlwiIGE9XCJJJ20gZ29pbmcgdG8gcHV0IGl0IGJsdW50bHk6IFVzc2luZyBjaGFtYmVyIGV4cGVyaW1lbnRzLCB3aGlsZSB0aGV5IGFyZSBoaWdobHkgcmVnYXJkZWQgYW5kIHByb3ZpZGUgdmFsdWFibGUgZGF0YSwgYXJlIGEgcmVhbCBwYWluIHRvIHBlcmZvcm0uIFRoZXkgYXJlIGluY3JlZGlibHkgdGltZS1jb25zdW1pbmcgYW5kIGhhdmUgYSB2ZXJ5IGxvdyB0aHJvdWdocHV0LiBBIHR5cGljYWwgc2V0dXAgaGFzIGZvdXIgY2hhbWJlcnMsIHNvIHlvdSBhbHdheXMgbmVlZCB0byBkbyByZXBlYXRzLiBJbiB0aGUgYmVzdC1jYXNlIHNjZW5hcmlvLCB5b3UgY2FuIHRlc3QgdHdvIGNvbmRpdGlvbnMgYXQgYSB0aW1lLiBJZiB5b3UgaGF2ZSBhIHZlcnkgZXhwZXJpZW5jZWQgcGVyc29uLCB0aGV5IG1pZ2h0IGJlIGFibGUgdG8gcnVuIGVpZ2h0IHNhbXBsZXMsIGJ1dCB0aGV5IHdvdWxkIGhhdmUgdG8gc3RheSB3aXRoIHRoZSBtYWNoaW5lIGZvciBmb3VyIHRvIGZpdmUgaG91cnMsIG1haW50YWluaW5nIGNvbnN0YW50IGF0dGVudGlvbi4gV2l0aCBtdWx0aXBsZSB0ZWNobmljaWFucywgYXMgaXMgdGhlIGNhc2UgaW4gRnJhbmNlLCB5b3UgbWlnaHQgbWFuYWdlIHRvIHJ1biAxNiBzYW1wbGVzIGEgZGF5LiBPbiB0b3Agb2YgdGhhdCwgdGhlIGNlbGxzIG5lZWQgdG8gYmUgZGlmZmVyZW50aWF0ZWQgcHJvcGVybHksIGFuZCB5b3UgaGF2ZSB0byBrbm93IGhvdyB0byBoYW5kbGUgdGhlbSBjb3JyZWN0bHkuIFRoZSBtZWRpdW0gcmVxdWlyZWQgaXMgdmVyeSBleHBlbnNpdmUsIGFuZCB3b3JraW5nIHdpdGggdGhlc2UgY2VsbHMgaXMgYWxtb3N0IG1vcmUgb2YgYW4gYXJ0IHRoYW4gYSBzY2llbmNlLiBZb3UgaGF2ZSB0byBrbm93IHdoZW4gdGhlIGNlbGxzIGxvb2sgJ2hhcHB5JyBvciBub3QgYmVjYXVzZSB5b3UgZG9uJ3Qgd2FudCB0byB3YXN0ZSB0aW1lIG9uIGNlbGxzIHRoYXQgYXJlbid0IGluIGdvb2QgY29uZGl0aW9uLiBJJ3ZlIHJ1biBxdWl0ZSBhIGZldyBvZiB0aGVzZSBhc3NheXMgbXlzZWxmLCBhbmQgd2hpbGUgdGhleSBhcmUgZ3JlYXQgZm9yIENGIHdvcmsgYW5kIHByb3ZpZGUgcmVzdWx0cyB0aGF0IGFyZSByZWxldmFudCB0byBwYXRpZW50IG91dGNvbWVzLCB0aGV5IGFyZSB0ZWNobmljYWxseSBjaGFsbGVuZ2luZyBhbmQgdmVyeSBkZW1hbmRpbmcuIElmIHlvdSB3YW50IGEgZnVuY3Rpb25hbCBvdXRwdXQgdG8gc2hvdyB0aGF0IHRoZSBDRlRSIHByb3RlaW4gaXMgd29ya2luZyBhZ2FpbiwgSSB3b3VsZCByZWNvbW1lbmQgc3RhcnRpbmcgd2l0aCBvbmUgb2YgdGhlIGVhc2llciBtb2RlbHMsIGxpa2Ugb3JnYW5vaWRzLiBXZSBhbHNvIGhhdmUgaW4gb3VyIGxhYiAxNkhCRSBjZWxscyB3aXRoIGEgWUZQIHNlbnNvci4gSSBkb24ndCBrbm93IGlmIHlvdSd2ZSBoZWFyZCBvciByZWFkIGFib3V0IHRoYXQuIFRoZXNlIGNlbGxzIGV4cHJlc3MgWUZQLCB3aGljaCBpcyBzZW5zaXRpdmUgdG8gaGFsaWRlIGlvbnMsIGluY2x1ZGluZyBjaGxvcmlkZSBhbmQgaW9kaWRlLiBXaGVuIHlvdSBhZGQgYSBidWZmZXIgY29udGFpbmluZyB0aGVzZSBpb25zIHRvIHRoZSBjZWxscywgdGhlIFlGUCBpbnRlbnNpdHkgcXVlbmNoZXMuIFRoaXMgaXMgc29tZXRoaW5nIHdlIHR5cGljYWxseSB1c2UgaW4gb3VyIGV4cGVyaW1lbnRzLiBGb3Igd2lsZC10eXBlIGNlbGxzLCB5b3Ugc2VlIGEgcmFwaWQgYW5kIGRyYW1hdGljIHF1ZW5jaGluZyBiZWNhdXNlIENGVFIgYWxsb3dzIHRoZXNlIGlvbnMgdG8gZW50ZXIgdGhlIGNlbGxzLiBJbiBjZWxscyB3aXRoIHRoZSBtdXRhdGlvbiwgdGhlcmVcdTIwMTlzIG5vIHF1ZW5jaGluZyBiZWNhdXNlIHRoZSBjaGFubmVsIGlzblx1MjAxOXQgd29ya2luZy4gV2hpbGUgaXRcdTIwMTlzIGxlc3MgcmVsZXZhbnQgYmVjYXVzZSB0aGVzZSBhcmVuJ3QgcGF0aWVudCBjZWxscywgaXRcdTIwMTlzIGNsb3NlciB0byByZWFsaXR5LiBUaGUgMTZIQkUgY2VsbCBsaW5lIGlzIGFuIGFpcndheSBlcGl0aGVsaWFsIGxpbmUsIGFuZCB0aGUgZXhwcmVzc2lvbiBvZiBDRlRSIGlzIGVuZG9nZW5vdXMsIHNvIGl0XHUyMDE5cyBub3QgYXQgdGhlIGV4YWdnZXJhdGVkIGxldmVscyB5b3UgbWlnaHQgc2VlIGluIG1vcmUgYXJ0aWZpY2lhbCBtb2RlbHMgbGlrZSBIRUsgY2VsbHMuIFVzaW5nIHRoZSBZRlAgYXNzYXkgY291bGQgYmUgYSBnb29kIGFsdGVybmF0aXZlIG9yIGEgUGxhbiBCIGZvciBnZXR0aW5nIGEgZnVuY3Rpb25hbCByZWFkb3V0LiBUaGlzIGFzc2F5IGlzIG1lZGl1bSB0byBoaWdoIHRocm91Z2hwdXRcdTIwMTR5b3UgY2FuIHJ1biBlbnRpcmUgOTYtd2VsbCBwbGF0ZXMgaW4gYWJvdXQgaGFsZiBhbiBob3VyLiBBbGwgeW91IG5lZWQgZm9yIHRoaXMgaXMgdGhlIGNlbGxzIGFuZCBhIHBsYXRlIHJlYWRlciB0aGF0IGNhbiBtZWFzdXJlIGZsdW9yZXNjZW5jZSBhbmQgaW5qZWN0IHRoZSBidWZmZXIuIElmIHlvdSBkb25cdTIwMTl0IGhhdmUgYSBwbGF0ZSByZWFkZXIgd2l0aCBhbiBpbmplY3Rpb24gc3lzdGVtLCB5b3UgY2FuIGFsc28gbWFudWFsbHkgYWRkIHRoZSBidWZmZXIgYW5kIHF1aWNrbHkgcGxhY2UgdGhlIHBsYXRlIGluIHRoZSBtYWNoaW5lLiBcIi8+XHJcbiAgICAgIDxRYUJveCBxPVwiWWVzLCB0aGF0IHNvdW5kcyBxdWl0ZSBnb29kLiBJIHRoaW5rIHdlXHUyMDE5bGwgZGVmaW5pdGVseSBjb25zaWRlciB0aGF0IGFzIGEgbWV0aG9kLiBcclxuICAgICAgICBJZiB5b3UgaGF2ZSBhIGxpdHRsZSBtb3JlIHRpbWUsIEkgd2FudGVkIHRvIGFzayBhYm91dCB0aGUgcGVnUk5BLiBZb3Ugc3RhYmlsaXplZCBpdCB3aXRoIGEgc3RlbSBsb29wIG9yIHNvbWUga2luZCBvZiBtb3RpZiBpbiB0aGUgcGFwZXIsIGxpa2UgdGhlIHRyZXZvcHJlUTEuIERpZCB5b3UgdGVzdCBvdGhlciBtb3RpZnMgYXMgd2VsbCwgb3IuLi4/IFwiIGE9XCJZZWFoLCB0aGVyZSB3YXMgYWN0dWFsbHkgb25lIHB1Ymxpc2hlZCBiZWZvcmUgdGhlIG9uZSBmcm9tIHRoZSBMaXUgbGFiLCBidXQgd2UgdHJpZWQgdGhhdCBvbmVcdTIwMTRJIGNhbid0IHJlbWVtYmVyIHRoZSBleGFjdCBuYW1lLCBtYXliZSBDU1g0IG9yIHNvbWV0aGluZyBsaWtlIHRoYXQuIEl0IGRpZG5cdTIwMTl0IGV2ZW4gbWFrZSBpdCBpbnRvIHRoZSBtYWluIHBhcGVycywganVzdCB0aGUgc3VwcGxlbWVudGFyeSBtYXRlcmlhbC4gVGhlIHByaW5jaXBsZSB3YXMgc2ltaWxhciwgYW5kIGFjY29yZGluZyB0byB0aGUgcGFwZXIsIGl0IHNob3VsZCBoYXZlIHdvcmtlZC4gSSB0ZXN0ZWQgaXQgb24gdHdvIG9yIHRocmVlIGd1aWRlcywgbG9jYXRpb25zLCBvciBtdXRhdGlvbnMsIGJ1dCBpdCBkaWRuXHUyMDE5dCB3b3JrLiBIb3dldmVyLCB0aGUgdHJldm9wcmVRMSBvbmUgZGVmaW5pdGVseSB3b3Jrcy4gXHJcbiAgICAgICAgQWxzbywgc29tZXRoaW5nIHRvIG5vdGUgaXMgdGhhdCB0aGVzZSBtb3RpZnMgYmVjb21lIG1vcmUgaW1wb3J0YW50IHdoZW4geW91IG1vdmUgdG8gcHJpbWFyeSBjZWxscywgd2hlcmUgeW91IGhhdmUgZmV3ZXIgZ3VpZGVzLiBJbiB0cmFuc2ZlY3Rpb24gZXhwZXJpbWVudHMsIHdoZXJlIHlvdVx1MjAxOXJlIGVzc2VudGlhbGx5IGZsb29kaW5nIHRoZSBjZWxscyB3aXRoIHBsYXNtaWRzIHRoYXQgdHJhbnNjcmliZSBsYXJnZSBhbW91bnRzIG9mIHRoZXNlIGd1aWRlcywgdGhlIHByb3RlY3Rpb24gb2YgdGhlIHRocmVlLXByaW1lIGVuZCBpc25cdTIwMTl0IGFzIGNyaXRpY2FsLiBCdXQgaW4gcHJpbWFyeSBjZWxscywgd2hlcmUgdGhlcmUgYXJlIG1vcmUgbnVjbGVhc2VzIGFuZCB5b3UgbGlrZWx5IGhhdmUgbGVzcyBwZWdSTkEgZHVlIHRvIHlvdXIgZGVsaXZlcnkgbWV0aG9kLCB0aGlzIHByb3RlY3Rpb24gYmVjb21lcyBtb3JlIGltcG9ydGFudC4gVGhlIHBhcGVyIGRvZXMgZGlzY3VzcyB0aGUgdHJldm9wcmVRMSBvbmUgYW5kIHRNUEsga25vdCwgYnV0IGR1ZSB0byB0aW1lIGNvbnN0cmFpbnRzLCB3ZSBvbmx5IHRlc3RlZCBvbmUgYW5kIGRpZG5cdTIwMTl0IGxvb2sgaW50byB0aGUgb3RoZXIuIFxyXG4gICAgICAgIEkgdGhpbmsgdGhlIGFkdmFudGFnZSBvZiB0aGUgb25lIHdlIGluY2x1ZGVkIGluIHRoZSBwYXBlciB3YXMgdGhhdCB0aGV5IGFsc28gaW52ZXN0aWdhdGVkIHdoZXRoZXIgaXQgd2FzIG5lY2Vzc2FyeSB0byBpbmNsdWRlIGEgbGlua2VyIGJldHdlZW4gdGhlIG1vdGlmXHUyMDE0bGlrZSB0aGUgdHJldm9wcmVRMVx1MjAxNGFuZCB0aGUgcGVnUk5BIHdpdGggdGhlIHRocmVlLXByaW1lIGV4dGVuc2lvbi4gRm9yIHRoZSBtb3RpZiB3ZSBjaG9zZSwgdGhleSBmb3VuZCB0aGF0IHRoZSBsaW5rZXIgd2Fzblx1MjAxOXQgcmVhbGx5IG5lY2Vzc2FyeSwgd2hlcmVhcyBpdCB3YXMgZm9yIHRoZSBvdGhlciBvbmUuIFRvIGtlZXAgaXQgc2ltcGxlLCB3ZSBjaG9zZSB0aGUgb25lIHdpdGhvdXQgdGhlIG5lZWQgZm9yIGEgbGlua2VyIGJlY2F1c2UsIGZvciBtYW55IHNpdGVzLCB0aGUgZWZmaWNpZW5jaWVzIHdlcmUgY29tcGFyYWJsZS4gXHJcbiAgICAgICAgSWYgd2UgaGFkIGluZmluaXRlIHRpbWUgYW5kIHJlc291cmNlcywgaXQgd291bGQgZGVmaW5pdGVseSBiZSB3b3J0aHdoaWxlIHRvIHRlc3QgYm90aCBtb3RpZnMuIFRoZSBwYXBlciBkaWQgc2hvdyBzb21lIGV4YW1wbGVzIHdoZXJlIG9uZSBtb3RpZiB3YXMgY2xlYXJseSBiZXR0ZXIgdGhhbiB0aGUgb3RoZXIuIEJ1dCBubywgd2UgZGlkblx1MjAxOXQgaGF2ZSB0aGUgdGltZSB0byBleHBsb3JlIHRoYXQgZnVydGhlci4gXCIvPiBcclxuICAgICAgPFFhQm94IHE9XCJPa2F5LiAgVGhhbmsgeW91LiAgQnV0IGxpa2UgaXQncyBzaG93biBpbiB0aGUgcGFwZXIsIGl0IHdvcmtlZCBxdWl0ZSB3ZWxsLiAgUmlnaHQuICBZZWFoLiBcIiBhPVwiVGhlcmUgd2FzIGRlZmluaXRlbHkgYWRkZWQgdmFsdWUuIFdoZW4gd2UgbW92ZWQgdG8gb3JnYW5vaWRzLCB0aGUgZWZmZWN0cyBvZiBhZGRpbmcgdGhhdCBtb3RpZiB3ZXJlIHF1aXRlIGRyYW1hdGljIGFuZCB2ZXJ5IGNsZWFyLiBcIi8+IFxyXG4gICAgICA8UWFCb3ggcT1cIlllcywgdGhhdCB3YXMgb3VyIGxhc3QgcXVlc3Rpb24uIFRoYW5rIHlvdSBzbyBtdWNoIGFnYWluIGZvciBoYXZpbmcgbWUuIFdlIHJlYWxseSBhcHByZWNpYXRlIHRoZSB0aW1lIHlvdSB0b29rIGZvciB1cywgYW5kIGFsc28gZm9yIHlvdXIgdmVyeSBkZXRhaWxlZCBhbnN3ZXJzIGFuZCB5b3VyIGhlbHAuXCIgYT1cIk5vIHByb2JsZW0uIE15IHBsZWFzdXJlLlwiLz4gXHJcbiAgICAgIDxRYUJveCBxPVwiVGhhbmsgeW91IHNvIG11Y2guIFdlIHdpbGwgZGVmaW5pdGVseSBrZWVwIHlvdSB1cGRhdGVkIG9uIGhvdyBpdCBnb2VzLiBUaGFuayB5b3UgYWdhaW4hIFwiYT1cIkl0IHdhcyBhIHBsZWFzdXJlXCIvPiBcclxuICAgICAgIDwvPixcclxuICAgIHJlZmVyZW5jZXM6IDxNYXR0aWpzSW50ZXJ2aWV3U291cmNlcyAvPixcclxuICAgIHN1bW1hcnk6IFwiT3VyIGRpc2N1c3Npb24gd2l0aCBNYXR0aWpzIEJ1bGNhZW4gZnJvbSBLVSBMZXV2ZW4gcHJvdmlkZWQgY3JpdGljYWwgaW5zaWdodHMgaW50byB0aGUgY29tcGxleGl0aWVzIG9mIHVzaW5nIHByaW1lIGVkaXRpbmcgZm9yIENGIHRoZXJhcHkuIEFzIHdlIGJlZ2FuIGRlc2lnbmluZyBvdXIgcHJpbWUgZWRpdG9yLCBNYXR0aWpzIGhpZ2hsaWdodGVkIGNoYWxsZW5nZXMgc3BlY2lmaWMgdG8gdGFyZ2V0aW5nIHRoZSBDRlRSIEY1MDhkZWwgZGVsZXRpb24sIGluY2x1ZGluZyB0aGUgaW5mbHVlbmNlIG9mIG1pc21hdGNoIHJlcGFpciBzeXN0ZW1zIGFuZCBjaHJvbWF0aW4gb3JnYW5pemF0aW9uIG9uIGVkaXRpbmcgZWZmaWNpZW5jeS4gSGUgaW50cm9kdWNlZCB1cyB0byBhZHZhbmNlZCB0ZWNobmlxdWVzLCBzdWNoIGFzIFBFM2Igc3lzdGVtcyBhbmQgZHNnUk5BcywgYW5kIHJlY29tbWVuZGVkIHVzaW5nIHRoZSAzXHUyMDE5IHN0ZW0gbG9vcCBtb3RpZiBmcm9tIGhpcyByZXNlYXJjaCB0byBlbmhhbmNlIG91ciBwZWdSTkEgZGVzaWduLiBBZGRpdGlvbmFsbHksIGhlIGFkdmlzZWQgdXRpbGl6aW5nIEhFSyBjZWxsIGxpbmVzIGZvciBzY3JlZW5pbmcgZHVlIHRvIHRoZWlyIGVhc2Ugb2YgaGFuZGxpbmcgYW5kIHJlZHVjZWQgbWlzbWF0Y2ggcmVwYWlyIGFjdGl2aXR5LiBUaGVzZSBpbnNpZ2h0cyBkaXJlY3RseSBpbmZsdWVuY2VkIG91ciBkZXNpZ24gY2hvaWNlcyBhbmQgaGVscGVkIHJlZmluZSBvdXIgYXBwcm9hY2ggdG8gZGV2ZWxvcGluZyBhbiBlZmZlY3RpdmUgcHJpbWUgZWRpdGluZyBzdHJhdGVneS5cIixcclxuICAgIG1vbnRoczogXCJqdW5lXCJcclxuICB9LFxyXG4gIHtcclxuICAgIHZvcm5hbWU6IFwiSW50ZWdyYXRlIEluc2lnaHRzXCIsXHJcbiAgICBuYWNobm5hbWU6IFwiXCIsXHJcbiAgICBwaWN0dXJldXJsOiBwaWNzWydsb2dvJ10sXHJcbiAgICBqb2I6IFwiVGVhbSBpR0VNXCIsXHJcbiAgICBhZmZpbGlhdGlvbjogXCJCaWVsZmVsZCBDZUJpVGVjIDIwMjRcIixcclxuICAgIHRhZzogXCJNaWxlc3RvbmVcIixcclxuICAgIGhlYWRpbmc6IFwiRnJvbSBJbnNpZ2h0cyB0byBJbXBhY3Q6IEVuaGFuY2luZyBBd2FyZW5lc3MgYW5kIFByaW1lIEVkaXRpbmcgZm9yIEN5c3RpYyBGaWJyb3Npc1wiLFxyXG4gICAgaW50ZXJ2aWV3dGFiaWQ6IFwiaW5pc2dodHNcIixcclxuXHJcbiAgICBxdW90ZU5hY2huYW1lOiBcIkJhYWNrLCBUZWFtbWVtYmVyXCIsXHJcbiAgICBxdW90ZVZvcm5hbWU6IFwiQW5uYVwiLFxyXG4gICAgcXVvdGU6IFwiSVx1MjAxOW0gZXhjaXRlZCBhYm91dCBvdXIgcGFydG5lcnNoaXAgd2l0aCBNdWtvdmlzemlkb3NlIGUuVi4gRGV1dHNjaGxhbmQgdG8gcmFpc2UgYXdhcmVuZXNzIGluIG91ciBjb21tdW5pdHkuIEVkdWNhdGluZyBwZW9wbGUgYWJvdXQgIEN5c3RpYyBGaWJyb3NpcyBhbmQgZ2VuZSB0aGVyYXB5IGlzIGVzc2VudGlhbCwgYW5kIEkgYmVsaWV2ZSBvdXIgc2NpZW50aWZpYyBhZHZhbmNlbWVudHMgd2lsbCBoYXZlIGEgYnJvYWRlciBpbXBhY3QgYmV5b25kIGp1c3QgdGhpcyBjb25kaXRpb24uXCIsXHJcbiAgICB0eXBlOiBcIm1ldGFcIixcclxuICAgIHN1bW1hcnk6IFs8cD5cclxuICAgICAgICAgICAgRHVyaW5nIHRoZSBlYXJseSBzdGFnZXMgb2Ygb3VyIHByb2plY3QsIHdlIGRpc2NvdmVyZWQgdGhyb3VnaCBvdXIgc3VydmV5IHRoYXQgd2hpbGUgbWFueSBwYXJ0aWNpcGFudHMgd2VyZSBvcGVuIHRvIHRyeWluZyBnZW5lIHRoZXJhcGllcywgdGhleSBsYWNrZWQgYWRlcXVhdGUga25vd2xlZGdlIGFib3V0IHRoZW0uIEFkZGl0aW9uYWxseSwgbW9zdCByZXNwb25kZW50cyB3ZXJlIHVuZmFtaWxpYXIgd2l0aCAgQ3lzdGljIEZpYnJvc2lzLCBoaWdobGlnaHRpbmcgdGhlIG5lZWQgZm9yIGdyZWF0ZXIgYXdhcmVuZXNzLiBEcml2ZW4gYnkgYSBkZXNpcmUgdG8gZWR1Y2F0ZSB0aGUgcGVvcGxlIG9mIEJpZWxlZmVsZCwgd2UgY29sbGFib3JhdGVkIHdpdGggTXVrb3Zpc3ppZG9zZSBlLlYuIERldXRzY2hsYW5kIHRvIHN1cHBvcnQgdGhlIE11a28gTW92ZSBjYW1wYWlnbiwgYSBzdWNjZXNzZnVsIGluaXRpYXRpdmUgYWltZWQgYXQgcmFpc2luZyBhd2FyZW5lc3MgYWJvdXQgIEN5c3RpYyBGaWJyb3Npcy4gT24gdGhlIHNjaWVudGlmaWMgZnJvbnQsIHdlIGVsZXZhdGVkIG91ciBwcm9qZWN0IHRvIGEgbmV3IGxldmVsLiBXaXRoIHZhbHVhYmxlIGZlZWRiYWNrIGZyb20gTWF0dGlqcyBCdWxjYWVuIGF0IHRoZSBVbml2ZXJzaXR5IG9mIExldXZlbiwgd2UgaW5jb3Jwb3JhdGVkIGEgbm92ZWwgUk5BIHN0cnVjdHVyYWwgZWxlbWVudCBpbnRvIG91ciBQcmltZSBFZGl0aW5nIGNvbXBsZXgsIHNpZ25pZmljYW50bHkgaW1wcm92aW5nIGl0cyBlZmZpY2llbmN5LiBBZnRlciBzdWNjZXNzZnVsbHkgb3B0aW1pemluZyB0aGUgcGVnUk5BLCB3ZSBtb3ZlZCBmb3J3YXJkIHdpdGggZW5oYW5jaW5nIHRoZSBQcmltZSBFZGl0aW5nIHByb3RlaW4gY29tcGxleC4gT3VyIGdvYWwgaXMgdG8gbWFrZSBQcmltZSBFZGl0aW5nIG5vdCBvbmx5IHNhZmVyIGJ1dCBhbHNvIGVhc2llciB0byBhcHBseSwgc28gdGhhdCBvdXIgcmVzZWFyY2ggY2FuIGJlbmVmaXQgbW9yZSB0aGFuIGp1c3QgIEN5c3RpYyBGaWJyb3NpcyBwYXRpZW50cywgdWx0aW1hdGVseSBicm9hZGVuaW5nIHRoZSBpbXBhY3Qgb2Ygb3VyIHdvcmsuXHJcbiAgICAgICAgPC9wPixcclxuICAgICAgICBcclxuICAgICAgICA8dWw+XHJcbiAgICAgICAgICAgIDxsaT5cclxuICAgICAgICAgICAgICAgIDxiPlN1cnZleSBJbnNpZ2h0czo8L2I+IE1hbnkgcGFydGljaXBhbnRzIHdlcmUgbW90aXZhdGVkIHRvIHRyeSBnZW5lIHRoZXJhcGllcyBidXQgbGFja2VkIGtub3dsZWRnZSBhYm91dCB0aGVtIGFuZCAgQ3lzdGljIEZpYnJvc2lzLCBoaWdobGlnaHRpbmcgdGhlIG5lZWQgZm9yIGJldHRlciBwdWJsaWMgZWR1Y2F0aW9uLlxyXG4gICAgICAgICAgICA8L2xpPlxyXG4gICAgICAgICAgICA8bGk+XHJcbiAgICAgICAgICAgICAgICA8Yj5Bd2FyZW5lc3MgQ2FtcGFpZ246PC9iPiBQYXJ0bmVyZWQgd2l0aCBNdWtvdmlzemlkb3NlIGUuVi4gRGV1dHNjaGxhbmQgdG8gc3VwcG9ydCB0aGUgTXVrbyBNb3ZlIGNhbXBhaWduLCByYWlzaW5nIGF3YXJlbmVzcyBhYm91dCAgQ3lzdGljIEZpYnJvc2lzIGluIHRoZSBsb2NhbCBjb21tdW5pdHkuXHJcbiAgICAgICAgICAgIDwvbGk+XHJcbiAgICAgICAgICAgIDxsaT5cclxuICAgICAgICAgICAgICAgIDxiPlNjaWVudGlmaWMgQWR2YW5jZW1lbnRzOjwvYj4gSW1wcm92ZWQgdGhlIGVmZmljaWVuY3kgb2YgUHJpbWUgRWRpdGluZyBieSBpbmNvcnBvcmF0aW5nIGEgbm92ZWwgUk5BIHN0cnVjdHVyYWwgZWxlbWVudCwgd2l0aCBmdXJ0aGVyIGVmZm9ydHMgdG8gb3B0aW1pemUgdGhlIFByaW1lIEVkaXRpbmcgcHJvdGVpbiBjb21wbGV4IGZvciBicm9hZGVyIGFwcGxpY2FiaWxpdHkgYmV5b25kICBDeXN0aWMgRmlicm9zaXMuXHJcbiAgICAgICAgICAgIDwvbGk+XHJcbiAgICAgICAgPC91bD5dLFxyXG4gICAgbW9udGhzOiBcImp1bmVcIlxyXG4gIH0sXHJcbiAge1xyXG4gICAgdm9ybmFtZTogXCInRGVyIFRldXRvIHJ1ZnQnXCIsXHJcbiAgICBuYWNobm5hbWU6IFwiXCIsXHJcbiAgICBwaWN0dXJldXJsOiBwaWNzWyd0ZXV0byddLFxyXG4gICAgam9iOiBcIlRlYW0gaUdFTVwiLFxyXG4gICAgYWZmaWxpYXRpb246IFwiQmllbGZlbGQgQ2VCaVRlYyAyMDI0XCIsXHJcbiAgICB0YWc6IFwiRWR1Y2F0aW9uXCIsXHJcbiAgICBoZWFkaW5nOiBcIkVkdWNhdGlvbmFsIGNpdHkgdG91ciBmb3IgeW91bmcgYW5kIG9sZFwiLFxyXG4gICAgaW50ZXJ2aWV3dGFiaWQ6IFwidGV1dG9cIixcclxuICAgIHR5cGU6IFwibWV0YVwiLFxyXG5cclxuICAgIHF1b3RlTmFjaG5hbWU6IFwiU2FoYW1pIE1vZ2hhZGRhbSwgVGVhbW1lbWJlclwiLFxyXG4gICAgcXVvdGVWb3JuYW1lOiBcIkFzYWxcIixcclxuICAgIHF1b3RlOiBcIkkgaGFkIGEgZ3JlYXQgdGltZSBlZHVjYXRpbmcgdGhlIGtpZHMgYWJvdXQgZ2VuZSB0aGVyYXB5IGFuZCBDRiBpbiBhIHBsYXlmdWwgd2F5LCBhbmQgdGhlcmUgd2VyZSBzb21lIHZlcnkgaW50ZXJlc3RpbmcgY29udmVyc2F0aW9ucyB3aXRoIHRoZSBwYXJlbnRzLlwiLFxyXG4gICAgc3VtbWFyeTogWzxwPiA8T3VyTGluayB0YWJJZD0ndGV1dG9ydWZ0JyBzY3JvbGxUb0lkPVwidGV1cm9ydWZ0LWhlYWRpbmdcIiBwYXRoPSdodW1hbi1wcmFjdGljZXMnIHRleHQ9XCJEZXIgVGV1dG8gcnVmdCFcIi8+ICBpcyBhIGNvbW11bml0eSBldmVudCBpbiBCaWVsZWZlbGQgd2hlcmUgaUdFTSBCaWVsZWZlbGQgcGFydGljaXBhdGVkIHRvIHJhaXNlIGF3YXJlbmVzcyBhYm91dCAgQ3lzdGljIEZpYnJvc2lzIChDRikgYW5kIGdlbmUgdGhlcmFweS4gVGhleSBlbmdhZ2VkIGNoaWxkcmVuIHRocm91Z2ggaW50ZXJhY3RpdmUgZXhwZXJpbWVudHMsIHN1Y2ggYXMgY3JlYXRpbmcgbHVuZyBtb2RlbHMgYW5kIHNpbXVsYXRpbmcgbXVjdXMgdG8gaGVscCB0aGVtIHVuZGVyc3RhbmQgdGhlIGNoYWxsZW5nZXMgZmFjZWQgYnkgQ0YgcGF0aWVudHMuIEFkdWx0cyB3ZXJlIGluZm9ybWVkIGFib3V0IHRoZWlyIGdlbmUgdGhlcmFweSBwcm9qZWN0IGFuZCBoYWQgbWVhbmluZ2Z1bCBkaXNjdXNzaW9ucyBhYm91dCB0aGUgaW1wbGljYXRpb25zIG9mIENGIHRyZWF0bWVudC4gQ29sbGFib3JhdGluZyB3aXRoIG90aGVyIGluc3RpdHV0aW9ucyBsaWtlIHRoZSBsaWZlIHNjaWVuY2Ugc3R1ZGVudCBpbml0aWF0aXZlIGJ0UywgdGhlIHRlYW0gZXhwYW5kZWQgdGhlaXIgb3V0cmVhY2guIERlc3BpdGUgY2hhbmdlYWJsZSB3ZWF0aGVyLCB0aGUgZXZlbnQgd2FzIGEgc3VjY2VzcyBpbiBlZHVjYXRpbmcgdGhlIHB1YmxpYyBhbmQgaW1wcm92aW5nIHNjaWVuY2UgY29tbXVuaWNhdGlvbi48L3A+XSxcclxuICAgIG1vbnRoczogXCJKdW5lXCJcclxuICB9LFxyXG4gIHtcclxuICAgIHZvcm5hbWU6IFwiSnVsaWFcIixcclxuICAgIG5hY2hubmFtZTogXCJcIixcclxuICAgIGpvYjogXCJwYXJlbnRcIixcclxuICAgIGFmZmlsaWF0aW9uOiBcImluZGVwZW5kZW50XCIsXHJcbiAgICBwaWN0dXJldXJsOiBwaWNzWydqdWxpYSddLFxyXG4gICAgdGFnOiBcIlBhdGllbnRcIixcclxuICAgIGhlYWRpbmc6IFwiSW50ZXJ2aWV3IHdpdGggYSBDRiBQYXJlbnQgYWJvdXQgdGhlaXIgZXhwZXJpZW5jZSBhbmQgdHJlYXRtZW50IG5lZWRzXCIsXHJcbiAgICBpbnRlcnZpZXd0YWJpZDogXCJqdWxpYVwiLFxyXG5cclxuICAgIGxhbmd1YWdlOiBcImRlXCIsXHJcbiAgICBxdW90ZU5hY2huYW1lOiBcIiwgTW90aGVyIG9mIGEgQ0YgcGF0aWVudFwiLFxyXG4gICAgcXVvdGVWb3JuYW1lOiBcIkp1bGlhXCIsXHJcbiAgICBxdW90ZTogXCJBdCBmaXJzdCwgb3VyIHdvcmxkIGZlbGwgYXBhcnQuIEkgc3RpbGwgcmVtZW1iZXIgdGhlIGNvbnZlcnNhdGlvbiB3aXRoIHRoZSBkb2N0b3IuIFwiLFxyXG4gICAgYWltb2Zjb250YWN0OiBbPHA+V2UgbGVhcm5lZCBmcm9tIG91ciBkaXNjdXNzaW9uIHdpdGggPEhQTGlua3RvT3RoZXJIUFRhYiB0YWI9XCJtYXhmaXJzdFwiIHRleHQ9XCJNYXhcIiAvPiB0aGF0IENGIGhhcyBhIHByb2ZvdW5kIGltcGFjdCBvbiB0aGUgd2hvbGUgZmFtaWx5IFx1MjAxMyBub3QganVzdCB0aGUgcGF0aWVudC4gSW4gb3JkZXIgdG8gZ2FpbiBmdXJ0aGVyIGluc2lnaHQgaW50byB0aGlzIHN1YmplY3QsIHdlIHNvdWdodCB0byBlbmdhZ2Ugd2l0aCB0aGUgbmV4dCBvZiBraW4gb2YgQ0YgcGF0aWVudHMuXHJcbiAgICAgIFdlIHdlcmUgYWJsZSB0byBtYWtlIGNvbnRhY3Qgd2l0aCBKdWxpYSB0aHJvdWdoIHRoZSBzZWxmLWhlbHAgZ3JvdXAgb2YgPGEgaHJlZj1cImh0dHBzOi8vd3d3Lm11a28uaW5mby8gXCIgPk11a3Zpc3ppZG9zZSBlLlYuIDwvYT4gb2Ygd2hpY2ggTWF4IGlzIGEgbWVtYmVyLiBTaGUgc3Vic2VxdWVudGx5IHJlYWNoZWQgb3V0IHRvIHVzIGZvbGxvd2luZyBNYXgncyByZXF1ZXN0IGZvciBwb3RlbnRpYWwgY2FuZGlkYXRlcyBmb3IgYW4gaW50ZXJ2aWV3IHdpdGggYSBwYXRpZW50IGdyb3VwLlxyXG4gICAgICBTaGUgYW5kIGhlciBodXNiYW5kIGhhdmUgYSBzaXgteWVhci1vbGQgZGF1Z2h0ZXIgY2FycnlpbmcgdGhlIEY1MDhkZWwgbXV0YXRpb24gaW4gdGhlIENGVFIgZ2VuZSBhbmQgYSB0b2RkbGVyIHdpdGhvdXQgQ0YuICA8L3A+XSxcclxuICAgIGluc2lnaHRzOiBbPHA+IFRoZSBpbnRlcnZpZXcgd2l0aCBKdWxpYSBzaGlmdGVkIG91ciBmb2N1cyB0byBhIG5ldyBncm91cCBvZiBzdGFrZWhvbGRlcnM6IFRoZSBwYXRpZW50XHUyMDE5cyBzdXBwb3J0IHN5c3RlbXMuIE1vc3QgcGVvcGxlIGRvIG5vdCBnZXQgZ2VuZXRpY2FsbHkgdGVzdGVkIGJlZm9yZSBoYXZpbmcgY2hpbGRyZW4gYW5kIGR1ZSB0byB0aGF0LCBtYW55IHBlb3BsZSBjb3VsZCBnZXQgaW4gdGhlIHBvc2l0aW9uIG9mIGhhdmluZyBhIGxvdmVkIG9uZSB3aXRoIENGLlxyXG4gICAgICBXZSBjb25zaWRlcmVkIHRoZSBzb2NpZXRhbCBpbXBhY3RzLCBzdWNoIGFzIHRoZSByaXNpbmcgaGVhbHRoIGNhcmUgY29zdHMsIHdoaWNoIE5pY29sZSBGcmllZGxlaW4gZW1waGFzaXplZCBkdXJpbmcgb3VyIGludGVydmlldy4gU2hlIGV4cGxhaW5lZCBob3cgdGhlIGxvbmctdGVybSBuYXR1cmUgb2YgdHJlYXRtZW50LCBmcmVxdWVudCBob3NwaXRhbCB2aXNpdHMsIGFuZCB0aGUgbmVlZCBmb3Igc3BlY2lhbGl6ZWQgbWVkaWNhdGlvbnMgcGxhY2UgYSBzaWduaWZpY2FudFxyXG4gICAgICBmaW5hbmNpYWwgYnVyZGVuIG9uIGJvdGggcGF0aWVudHMgYW5kIHRoZSBoZWFsdGggY2FyZSBzeXN0ZW0uIFRoaXMgaW5zaWdodCBzaGFwZWQgb3VyIHVuZGVyc3RhbmRpbmcgb2YgdGhlIGJyb2FkZXIgZWNvbm9taWMgY2hhbGxlbmdlcyBmYWNlZCBieSBmYW1pbGllcyBhbmQgaW5zdGl0dXRpb25zIGludm9sdmVkIGluIG1hbmFnaW5nIGNocm9uaWMgaWxsbmVzc2VzLiBNZWFud2hpbGUsIEp1bGlhIGJyb3VnaHQgYXR0ZW50aW9uIHRvIHRoZSBwc3ljaG9sb2dpY2FsIGltcGFjdCxcclxuICAgICAgc3RyZXNzaW5nIHRoZSBlbW90aW9uYWwgc3RyYWluIHRoYXQgYWNjb21wYW5pZXMgbm90IG9ubHkgdGhlIGlsbG5lc3MgaXRzZWxmIGJ1dCBhbHNvIHRoZSBmaW5hbmNpYWwgcHJlc3N1cmVzLiBTaGUgYWxzbyBzaG93ZWQgdXMgbW9yZSBwZXJzcGVjdGl2ZXMgb24gcGFyZW50aW5nIG9mIGNoaWxkcmVuIHdpdGggQ0YsIHRoYW4gd2UgaGVhcmQgYmVmb3JlLCBhbmQgdG9sZCB1cyBhYm91dCB0aGUgd2F5IGZyb20gdGhlIGZpcnN0IGRpYWdub3NpcyB0byBncm93aW5nIGFjY3VzdG9tZWRcclxuICAgICAgdG8gYW5kIGxpdmluZyB3aXRoIGEgY2hpbGQgd2l0aCBDRi4gSnVsaWEgYWxzbyBjb25maXJtZWQgdGhhdCBtb3N0IGNoaWxkcmVuIHdpbGwgaGF2ZSBubyBpc3N1ZSB1c2luZyBhbiBpbmhhbGF0aXZlIHRoZXJhcHkgbGlrZSB3ZSBlbnZpc2lvbiBvdXIgZ2VuZSB0aGVyYXB5IHRvIGJlIGFuZCBzaG9uZSBsaWdodCBvbnRvIHRoZSBjb21wYXJhdGl2ZWx5IHZlcnkgZ29vZCBzaXR1YXRpb24gZm9yIENGIHBhdGllbnRzIGluIEdlcm1hbnkuIDwvcD5dLFxyXG4gICAgaW1wbGVtZW50YXRpb246IFs8cD4gVGhpcyBpbnRlcnZpZXcgaGVscGVkIHVzIGNvbmZpcm0gdGhlIGRlbGl2ZXJ5IG1ldGhvZCB3ZSBwbGFubmVkIHRvIHVzZSBhcyB3ZSB3ZXJlIHByZXZpb3VzbHkgY29uY2VybmVkIGhvdyBhbmQgaWYgY2hpbGRyZW4gd291bGQgYmUgYWJsZSB0byB1c2UgdGhlIGluaGFsYXRpdmUgdGhlcmFweS4gQmVzaWRlcyB0aGF0LCBKdWxpYSBnYXZlIHVzIGZ1cnRoZXIgaW5zaWdodHMgaW50byB0aGUgZW1vdGlvbmFsIHNpZGUgb2ZcclxuICAgICAgZGVhbGluZyB3aXRoIENGIGFuZCB3ZSB3ZXJlIGFibGUgdG8gZGlzY3VzcyB0aGUgc2l0dWF0aW9uIGZvciBwYXRpZW50cyBpbiBHZXJtYW55IGluIGNvbXBhcmlzb24gdG8gb3RoZXIgY291bnRyaWVzIGJldHRlciBpbiBsYXRlciAgPEhQTGlua3RvT3RoZXJIUFRhYiB0YWI9XCJqb3NodWFcIiB0ZXh0PVwiaW50ZXJ2aWV3c1wiIC8+LiA8L3A+XSxcclxuICAgIGludGVydmlldzogPD5cclxuICAgICAgPFFhQm94IHE9XCJDYW4geW91IHRlbGwgdXMgYSBiaXQgYWJvdXQgeW91ciBmYW1pbHk/IEhvdyBvbGQgYXJlIHlvdXIgY2hpbGRyZW4gYW5kIHlvdXJzZWx2ZXM/XCIgYT1cIklcdTIwMTltIDM3LCBteSBodXNiYW5kIGlzIDQ0LCBhbmQgb3VyIGRhdWdodGVyIGlzIHNpeCwgdHVybmluZyBzZXZlbiBzb29uLiBXZSBhbHNvIGhhdmUgYSBzb24gd2hvXHUyMDE5cyBhYm91dCBhIHllYXIgYW5kIGEgaGFsZi5cIiAvPlxyXG4gICAgICA8UWFCb3ggcT1cIkRvZXMgeW91ciBzb24gYWxzbyBoYXZlICBDeXN0aWMgRmlicm9zaXM/XCIgYT1cIk5vLCBoZSBkb2Vzblx1MjAxOXQuXCIgLz5cclxuICAgICAgPFFhQm94IHE9XCJXaGVuIHdhcyB5b3VyIGRhdWdodGVyIGRpYWdub3NlZCB3aXRoICBDeXN0aWMgRmlicm9zaXM/XCIgYT1cIlJpZ2h0IGFmdGVyIGJpcnRoLiBTaGUgd2FzIHRyYW5zZmVycmVkIHRvIGEgYmlnZ2VyIGhvc3BpdGFsIGR1ZSB0byBhbiBpbnRlc3RpbmFsIGJsb2NrYWdlIGFuZCBoYWQgc3VyZ2VyeS4gQWZ0ZXIgYWJvdXQgdHdvIHRvIHRocmVlIHdlZWtzIGluIGludGVuc2l2ZSBjYXJlLCB0aGUgIEN5c3RpYyBGaWJyb3NpcyBkaWFnbm9zaXMgY2FtZSB0aHJvdWdoIG5ld2Jvcm4gc2NyZWVuaW5nLiBBdCB0aGF0IHRpbWUsIHRoZSByZXN1bHRzIHRvb2sgbG9uZ2VyIHRvIHByb2Nlc3MgdGhhbiB0aGV5IGRvIG5vdy5cIiAvPlxyXG4gICAgICA8UWFCb3ggcT1cIlRoYXQgaW50ZXN0aW5hbCBpc3N1ZSBjYW4gaGFwcGVuIGZvciBtYW55IHJlYXNvbnMsIHJpZ2h0P1wiIGE9XCJZZXMsIGl0IHdhcyBhbGwgbmV3IHRvIHVzLiBUaGUgYmVnaW5uaW5nIHdhcyBkaWZmaWN1bHQsIGJ1dCB0aGluZ3MgaGF2ZSBnb3R0ZW4gYmV0dGVyIHNpbmNlIHRoZW4sIGFuZCB3ZVx1MjAxOXJlIHZlcnkgZ3JhdGVmdWwuXCIgLz5cclxuICAgICAgPFFhQm94IHE9XCJIb3cgZGlkIHlvdSBmZWVsIHdoZW4geW91IGZpcnN0IGhlYXJkIHRoZSBkaWFnbm9zaXM/XCIgYT1cIkl0IGZlbHQgbGlrZSBvdXIgd29ybGQgd2FzIGZhbGxpbmcgYXBhcnQuIEkgc3RpbGwgcmVtZW1iZXIgdGhlIG1vbWVudFx1MjAxNGl0IHdhcyBsaWtlIGJlaW5nIGluIGEgbW92aWUuIFdlIHdlcmUgdG9sZCBpbiBhIHNlcGFyYXRlIHJvb20sIGFuZCBpdCBmZWx0IG92ZXJ3aGVsbWluZy4gT25lIGRvY3RvciBldmVuIHN1Z2dlc3RlZCB3ZSBnbyBob21lIHRvIHRoaW5rIGFib3V0IGl0IGluIHBlYWNlLCBidXQgYWxsIEkgY291bGQgdGhpbmsgYWJvdXQgd2FzIHJldHVybmluZyB0byBteSBjaGlsZC4gSXQgd2FzIGEgbG90IHRvIHRha2UgaW4sIGVzcGVjaWFsbHkgdGhpbmtpbmcgYWJvdXQgaG93IHdlXHUyMDE5ZCB0ZWxsIG91ciBmYW1pbHkuXCIgLz5cclxuICAgICAgPFFhQm94IHE9XCJUaGF0IHNvdW5kcyBpbmNyZWRpYmx5IGhhcmQuIEhvdyBkaWQgeW91IGhhbmRsZSBpdCBhcyB0aW1lIHBhc3NlZD9cIiBhPVwiSXQgd2FzIHRvdWdoLCBidXQgd2Ugd2VyZSBmb3J0dW5hdGUgdG8gaGF2ZSBhIGRvY3RvciB3aG8gcmVhbGx5IHVuZGVyc3Rvb2Qgd2hhdCB3ZSB3ZXJlIGdvaW5nIHRocm91Z2gsIGFzIGhlIGhhZCBhIGRpc2FibGVkIGNoaWxkIGhpbXNlbGYuIEhlIG5ldmVyIHNjYXJlZCB1cyB1bm5lY2Vzc2FyaWx5IGFuZCBndWlkZWQgdXMgc3RlcCBieSBzdGVwLCB3aGljaCBtYWRlIGEgYmlnIGRpZmZlcmVuY2UuIFdlIGtub3cgbWFueSBmYW1pbGllcyB3aG8gbGl2ZSBpbiBjb25zdGFudCBmZWFyLCBidXQgc2luY2UgdGhvc2UgZmlyc3QgbW9udGhzLCB3ZVx1MjAxOXZlIGxlYXJuZWQgdG8gbWFuYWdlIHRoZSBzaXR1YXRpb24gd2l0aG91dCBiZWluZyBvdmVyd2hlbG1lZCBieSBmZWFyLlwiIC8+XHJcbiAgICAgIDxRYUJveCBxPVwiRGlkIGFueSBwYXJ0aWN1bGFyIHN1cHBvcnQgaGVscCB5b3VyIGZhbWlseSBhZGp1c3QgdG8gdGhlIGRpYWdub3Npcz9cIiBhPVwiWWVzLCB0aGUgcmVoYWIgcHJvZ3JhbSB3ZSBhdHRlbmRlZCB3YXMgYSBodWdlIGhlbHAuIEl0IHdhcyBhIGZhbWlseS1vcmllbnRlZCBwcm9ncmFtLCBzbyBteSBodXNiYW5kIGNvdWxkIGJlIHRoZXJlIHRvbywgd2hpY2ggd2FzIGltcG9ydGFudCBzaW5jZSBJIG1hbmFnZSBtb3N0IHRoaW5ncyBkYXktdG8tZGF5LiBJdCByZWFsbHkgaGVscGVkIG91ciBkYXVnaHRlciByZWFsaXplIHNoZVx1MjAxOXMgbm90IGFsb25lXHUyMDE0c2hlIG1ldCBvdGhlciBraWRzIHdpdGggc2ltaWxhciBjb25kaXRpb25zLCB3aGljaCB3YXMgYSBodWdlIGNvbWZvcnQuXCIgLz5cclxuICAgICAgPFFhQm94IHE9XCJIb3cgZGlkIHlvdSBleHBsYWluIHRoZSBpbGxuZXNzIHRvIHlvdXIgZGF1Z2h0ZXI/XCIgYT1cIldlIHRyeSB0byBnaXZlIGl0IGFzIGxpdHRsZSBhdHRlbnRpb24gYXMgcG9zc2libGUgaW4gZGFpbHkgbGlmZS4gU2hlXHUyMDE5cyBiZWVuIGluaGFsaW5nIG1lZGljYXRpb24gc2luY2Ugc2hlIHdhcyBlaWdodCB3ZWVrcyBvbGQsIGFuZCBpdFx1MjAxOXMganVzdCBwYXJ0IG9mIGhlciByb3V0aW5lIG5vdy4gVGhhbmtmdWxseSwgc2hlIGRvZXNuXHUyMDE5dCBmaWdodCBpdCBvciBxdWVzdGlvbiBpdCBtdWNoLCBhbmQgaGVyIHNjaG9vbCBhbmQga2luZGVyZ2FydGVuIGhhdmVuXHUyMDE5dCBtYWRlIGEgYmlnIGRlYWwgb2YgaXQgZWl0aGVyLCB3aGljaCBpcyB3aGF0IHdlIHdhbnRlZC5cIiAvPlxyXG4gICAgICA8UWFCb3ggcT1cIkRvZXMgc2hlIGV2ZXIgYXNrIGFib3V0IGhlciBpbGxuZXNzIGNvbXBhcmVkIHRvIGhlciB5b3VuZ2VyIGJyb3RoZXIsIHdobyBkb2Vzblx1MjAxOXQgaGF2ZSAgQ3lzdGljIEZpYnJvc2lzP1wiIGE9XCJTaGUgZG9lcyBzb21ldGltZXMgYXNrIHdoeSBzaGVcdTIwMTlzIHNpY2sgYW5kIGhlXHUyMDE5cyBub3QsIGJ1dCBzaGVcdTIwMTlzIG5vdCB1cHNldCBieSBpdC4gV2VcdTIwMTl2ZSBtYWRlIHN1cmUgbm90IHRvIGdpdmUgaGVyIGFueSBzcGVjaWFsIHRyZWF0bWVudCBiZWNhdXNlIG9mIGhlciBpbGxuZXNzLCB3aGljaCBjYW4gYmUgaGFyZCBhdCB0aW1lcywgYnV0IHdlIHdhbnQgaGVyIHRvIHVuZGVyc3RhbmQgdGhhdCBoZXIgaWxsbmVzcyBkb2Vzblx1MjAxOXQgZGVmaW5lIGhlci5cIiAvPlxyXG4gICAgICA8UWFCb3ggcT1cIlRoYXQgc291bmRzIGxpa2UgYSBnb29kIGJhbGFuY2UuIFdoYXQgYWJvdXQgbWVkaWNhdGlvbnNcdTIwMTRkaWQgc2hlIHN0YXJ0IG9uIGFueSBzcGVjaWFsIHRyZWF0bWVudHM/XCIgYT1cIlllcywgc2hlIHN0YXJ0ZWQgb24gT3JrYW1iaSBhdCBhcm91bmQgdGhyZWUgeWVhcnMgb2xkIGJ1dCBoYWQgdG8gc3RvcCBicmllZmx5IGR1ZSB0byBoaWdoIGxpdmVyIHZhbHVlcy4gTm93IHNoZVx1MjAxOXMgb24gS2FmdHJpbywgd2hpY2ggc2hlIHN0YXJ0ZWQgc2hvcnRseSBiZWZvcmUgaGVyIHNpeHRoIGJpcnRoZGF5LCBhbmQgaXRcdTIwMTlzIGJlZW4gZ29pbmcgd2VsbC5cIiAvPlxyXG4gICAgICA8UWFCb3ggcT1cIkRpZCB5b3UgZmFjZSBhbnkgaXNzdWVzIHdpdGggdGhlIGhlYWx0aCBpbnN1cmFuY2UgZm9yIGNvdmVyaW5nIHRoZXNlIG1lZGljYXRpb25zP1wiIGE9XCJGb3J0dW5hdGVseSwgbm8uIFdlIGhhdmUgc3RhdHV0b3J5IGhlYWx0aCBpbnN1cmFuY2UsIGFuZCB0aGV5XHUyMDE5dmUgY292ZXJlZCBldmVyeXRoaW5nIHdpdGhvdXQgYW55IGlzc3Vlcy4gV2VcdTIwMTl2ZSBoZWFyZCBpdCBjYW4gYmUgbW9yZSBjb21wbGljYXRlZCBmb3IgdGhvc2Ugd2l0aCBwcml2YXRlIGluc3VyYW5jZS5cIiAvPlxyXG4gICAgICA8UWFCb3ggcT1cIkhhdmUgeW91IGV2ZXIgaGFkIGRpZmZpY3VsdGllcyB3aXRoIGFjY2VzcyB0byBtZWRpY2F0aW9uP1wiIGE9XCJZZXMsIHRoZXJlIGhhdmUgYmVlbiB0aW1lcyB3aGVuIHdlXHUyMDE5dmUgaGFkIHRvIHdhaXQgYSBmZXcgZGF5cyBmb3IgY2VydGFpbiBtZWRpY2F0aW9ucywgbGlrZSBLcmVvbiBvciBhbnRpYmlvdGljcywgZXNwZWNpYWxseSBpbiB0aGUgd2ludGVyLiBCdXQgd2UgYWx3YXlzIHBsYW4gYWhlYWQgYW5kIGtlZXAgYSBidWZmZXIsIHNvIHdlXHUyMDE5dmUgbmV2ZXIgYmVlbiB3aXRob3V0IHdoYXQgd2UgbmVlZC5cIiAvPlxyXG4gICAgICA8UWFCb3ggcT1cIldoYXQgd291bGQgeW91IHNheSBoYXMgYmVlbiB0aGUgbW9zdCBhZmZlY3RlZCBhcmVhIGZvciB5b3VyIGRhdWdodGVyP1wiIGE9XCJIZXIgaW50ZXN0aW5lcyBhcmUgdGhlIG1vc3QgYWZmZWN0ZWQuIEJlZm9yZSBzaGUgc3RhcnRlZCBLYWZ0cmlvLCBzaGUgaGFkIGZhdHR5IHN0b29scyBhbmQgZnJlcXVlbnQgYm93ZWwgbW92ZW1lbnRzLCBldmVuIHdpdGggdGhlIHJpZ2h0IEtyZW9uIGRvc2FnZS4gU2luY2Ugc3RhcnRpbmcgS2FmdHJpbywgdGhpcyBoYXMgaW1wcm92ZWQgc2lnbmlmaWNhbnRseS5cIiAvPlxyXG4gICAgICA8UWFCb3ggcT1cIldoYXQga2luZCBvZiBzdXBwb3J0IHdvdWxkIHlvdSBoYXZlIGxpa2VkIHRvIHJlY2VpdmUgZWFybGllcj9cIiBhPVwiV2Ugd2lzaCB3ZSBoYWQgYmVlbiBnaXZlbiBtb3JlIGluZm9ybWF0aW9uIGFib3V0IGF2YWlsYWJsZSBzZXJ2aWNlcyBlYXJseSBvbi4gV2UgZm91bmQgb3V0IGFib3V0IE11a292aXN6aWRvc2UgZS5WLiBmcm9tIGFub3RoZXIgZmFtaWx5LCBub3QgZnJvbSBvdXIgZG9jdG9yLiBJdCB3b3VsZCBoYXZlIGJlZW4gaGVscGZ1bCB0byBrbm93IGFib3V0IHRoZXNlIHJlc291cmNlcyByaWdodCBmcm9tIHRoZSBzdGFydC5cIiAvPlxyXG4gICAgICA8UWFCb3ggcT1cIkhvdyBhYm91dCBwc3ljaG9zb2NpYWwgc3VwcG9ydD9cIiBhPVwiSW5pdGlhbGx5LCB3ZSBkaWRuXHUyMDE5dCBoYXZlIGFueSBwc3ljaG9sb2dpY2FsIHN1cHBvcnRcdTIwMTRvdXIgZG9jdG9yIHRvb2sgY2FyZSBvZiBldmVyeXRoaW5nLiBOb3csIHdoZXJlIHdlIGxpdmUsIHRoZXJlIGFyZSBtb3JlIHJlc291cmNlcywgYW5kIHdlIHRoaW5rIGl0XHUyMDE5cyBhIGdvb2QgdGhpbmcuIFRoZSByZWhhYiBoZWxwZWQgYSBsb3QgaW4gY29taW5nIHRvIHRlcm1zIHdpdGggZXZlcnl0aGluZy4gV2Ugd2lzaCB3ZSBoYWQga25vd24gYWJvdXQgc3VjaCBzZXJ2aWNlcyBzb29uZXIuXCIgLz5cclxuICAgICAgPFFhQm94IHE9XCJEb2VzIHlvdXIgZGF1Z2h0ZXIgZG8gcGh5c2lvdGhlcmFweT9cIiBhPVwiWWVzLCBvbmNlIGEgd2VlayBmb3IgYWJvdXQgYW4gaG91ci4gU2hlXHUyMDE5cyBiZWVuIGdvaW5nIHNpbmNlIHNoZSB3YXMgZGlzY2hhcmdlZCBmcm9tIHRoZSBob3NwaXRhbCwgYW5kIHNoZSBoYXMgYSBjbG9zZSBib25kIHdpdGggaGVyIHBoeXNpb3RoZXJhcGlzdC4gVGhleVx1MjAxOXZlIGJlZW4gd29ya2luZyB0b2dldGhlciBzaW5jZSBzaGUgd2FzIGEgYmFieSwgYW5kIHNoZSBnb2VzIGJ5IGhlcnNlbGYgbm93LlwiIC8+XHJcbiAgICAgIDxRYUJveCBxPVwiQXJlIHRoZXJlIGFueSByZXN0cmljdGlvbnMgZm9yIGhlciBpbiB0ZXJtcyBvZiBwaHlzaWNhbCBhY3Rpdml0aWVzP1wiIGE9XCJObywgbm90IHJlYWxseS4gU2hlIGRvZXMgZGFuY2luZyBvbmNlIGEgd2VlaywgcGh5c2lvdGhlcmFweSwgYW5kIHNoZVx1MjAxOXMgZXZlbiBkb25lIGEgc3dpbW1pbmcgY291cnNlIHdpdGhvdXQgYW55IHByb2JsZW1zLlwiIC8+XHJcbiAgICAgIDxRYUJveCBxPVwiSG93IGRvIHlvdSBoYW5kbGUgY29tbXVuaWNhdGluZyBhYm91dCBoZXIgaWxsbmVzcz9cIiBhPVwiV2UgdHJ5IG5vdCB0byBtYWtlIGEgYmlnIGRlYWwgb2YgaXQuIFdoZW4gSSBsb29rZWQgZm9yIGluZm9ybWF0aW9uLCBJIGZvdW5kIHdoYXQgd2UgbmVlZGVkLiBUaGVyZVx1MjAxOXMgbm90aGluZyB3ZVx1MjAxOXZlIHJlYWxseSBmZWx0IHdhcyBtaXNzaW5nLlwiIC8+XHJcbiAgICA8Lz4sXHJcbiAgICBzdW1tYXJ5OiBcIkp1bGlhJ3MgaW5zaWdodHMgc2hpZnRlZCBvdXIgZm9jdXMgdG8gdGhlIHN1cHBvcnQgc3lzdGVtcyBzdXJyb3VuZGluZyBDRiBwYXRpZW50cy4gU2hlIGhpZ2hsaWdodGVkIHRoZSBzb2NpZXRhbCBpbXBsaWNhdGlvbnMgb2YgQ0YsIGluY2x1ZGluZyByaXNpbmcgaGVhbHRoY2FyZSBjb3N0cyBkdWUgdG8gdGhlIGxvbmctdGVybSBuYXR1cmUgb2YgdHJlYXRtZW50IGFuZCB0aGUgZmluYW5jaWFsIGJ1cmRlbnMgZmFjZWQgYnkgZmFtaWxpZXMuIEFkZGl0aW9uYWxseSwgSnVsaWEgZW1waGFzaXplZCB0aGUgZW1vdGlvbmFsIHN0cmFpbiB0aGF0IGFjY29tcGFuaWVzIHRoZSBpbGxuZXNzLCBhbG9uZ3NpZGUgdGhlIGNvbXBsZXhpdGllcyBvZiBwYXJlbnRpbmcgYSBjaGlsZCB3aXRoIENGLiBJbXBvcnRhbnRseSwgc2hlIGFmZmlybWVkIHRoYXQgbW9zdCBjaGlsZHJlbiBhZGFwdCB3ZWxsIHRvIGluaGFsYXRpdmUgdGhlcmFwaWVzLCByZWluZm9yY2luZyBvdXIgcGxhbm5lZCBkZWxpdmVyeSBtZXRob2QgZm9yIGdlbmUgdGhlcmFweS4gVGhpcyBpbnRlcnZpZXcgZW5yaWNoZWQgb3VyIHVuZGVyc3RhbmRpbmcgb2YgdGhlIGNoYWxsZW5nZXMgZmFjZWQgYnkgZmFtaWxpZXMgYW5kIGVuYWJsZWQgdXMgdG8gYmV0dGVyIGNvbXBhcmUgdGhlIGV4cGVyaWVuY2VzIG9mIENGIHBhdGllbnRzIGluIEdlcm1hbnkgdG8gdGhvc2UgaW4gb3RoZXIgY291bnRyaWVzLlwiLFxyXG4gICAgbW9udGhzOiBcImp1bmVcIlxyXG4gIH0sXHJcbiAge1xyXG4gICAgdGl0bGU6IFwiUHJvZi4gRHIuXCIsXHJcbiAgICB2b3JuYW1lOiBcIkRhdmlkXCIsXHJcbiAgICBuYWNobm5hbWU6IFwiTGl1XCIsXHJcbiAgICBqb2I6IFwiIFJpY2hhcmQgTWVya2luIFByb2Zlc3NvciBhbmQgZGlyZWN0b3Igb2YgdGhlIE1lcmtpbiBJbnN0aXR1dGUgb2YgVHJhbnNmb3JtYXRpdmUgVGVjaG5vbG9naWVzIGluIEhlYWx0aGNhcmVcIixcclxuICAgIGFmZmlsaWF0aW9uOiBcInZpY2UgY2hhaXIgb2YgdGhlIGZhY3VsdHkgYXQgdGhlIEJyb2FkIEluc3RpdHV0ZSBvZiBNSVQgYW5kIEhhcnZhcmRcIixcclxuICAgIHBpY3R1cmV1cmw6IHBpY3NbJ2RhdmlkJ10sXHJcbiAgICB0YWc6IFwiQWNhZGVtaWFcIixcclxuICAgIGxhbmd1YWdlOiBcImVuXCIsXHJcbiAgICBoZWFkaW5nOiBcIkluZmx1ZW5jZSBvZiByZXNlYXJjaCBieSBEYXZpZCBMaXUgb24gb3VyIGRlc2lnbiBkZWNpc2lvbnMgXCIsXHJcbiAgICBpbnRlcnZpZXd0YWJpZDogXCJsaXVcIixcclxuXHJcbiAgICBxdW90ZTogXCJYXCIsXHJcbiAgICBhaW1vZmNvbnRhY3Q6IFs8cD5EYXZpZCBMaXUgaXMgdGhlIHByaW5jaXBhbCBpbnZlc3RpZ2F0b3IgcmVzcG9uc2libGUgZm9yIHRoZSBkZXZlbG9wbWVudCBvZiB0aGUgcHJpbWUgZWRpdGluZyBzeXN0ZW1zIGFuZCBoaXMgbGFib3JhdG9yeSBpcyBhY3RpdmVseSB3b3JraW5nIG9uIGltcHJvdmluZyBwcmltZSBlZGl0b3JzLCBhbHNvIGZvciBhcHBsaWNhdGlvbiBpbiBDRlRSIG11dGF0aW9uIEY1MDhkZWwuIDwvcD5dLFxyXG4gICAgaW5zaWdodHM6IFs8cD5UaGUgdGFsayBhbmQgcGFwZXJzIGZyb20gRGF2aWQgTGl1IG5vdCBvbmx5IGludHJvZHVjZWQgYWR2YW5jZXMgZm9yIHByaW1lIGVkaXRvcnMsIGJ1dCBhbHNvIGluY2x1ZGVkIHZhbHVhYmxlIGRhdGEgZm9yIHVzIHRvIGRlY2lkZSBvbiB3aGljaCBtZXRob2QgbWlnaHQgd29yayBiZXN0IGZvciBvdXIgcHJvamVjdC4gQmVjYXVzZSBvZiB0aGlzIHdlIGRlY2lkZWQgdG8gdXNlIGFuIGFkdmFuY2VkIHN5c3RlbSBiYXNlZCBvbiB0aGUgUEU2YyBhbmQgUEU0IHN5c3RlbXMsIGJvdGggb2Ygd2hpY2ggd2VyZSBwdWJsaXNoZWQgYnkgdGhlIGxhYm9yYXRvcnkgb2YgRGF2aWQgTGl1LiA8L3A+LFxyXG4gICAgICA8cD5BcyB0aGUgcHJpbmNpcGFsIGludmVzdGlnYXRvciByZXNwb25zaWJsZSBmb3IgdGhlIGRldmVsb3BtZW50IG9mIHRoZSBwcmltZSBlZGl0aW5nIHN5c3RlbXMuIFRoZSBpbml0aWFsIHByaW1lIGVkaXRpbmcgc3lzdGVtIHdhcyBkZXZlbG9wZWQgaW4gaGlzIGxhYm9yYXRvcnkgXHJcblxyXG4gICAgICA8VGFiU2Nyb2xsTGluayB0YWI9XCJsaXVcIiBzY3JvbGxJZD1cImRlc2MtMVwiIG51bT1cIjFcIiAvPlxyXG4gICAgICAgYW5kIHNpbmNlIHRoZW4gYSBudW1iZXIgb2YgcGFwZXJzIG9uIHRoaXMgdG9waWMgaGF2ZSBiZWVuIHB1Ymxpc2hlZCB1bmRlciBoaXMgc3VwZXJ2aXNpb24uIFRoZSByZXNlYXJjaCBjb25kdWN0ZWQgYnkgRGF2aWQgTGl1IGFuZCBoaXMgbGFib3JhdG9yeSB3YXMgdGhlIGluc3BpcmF0aW9uIGZvciBvdXIgZ2VuZSBlZGl0aW5nIGFwcHJvYWNoIGFuZCB0aHVzIGFic29sdXRlbHkgY3J1Y2lhbCBpbiB0aGUgZGV2ZWxvcG1lbnQgb2YgUHJlQ3lzZS4gVW5mb3J0dW5hdGVseSwgd2Ugd2VyZSBub3QgYWJsZSB0byB0YWxrIHRvIERhdmlkIExpdSBoaW1zZWxmIG9yIG9uZSBvZiBoaXMgY293b3JrZXJzLCBidXQgdGhlIGltcGFjdCBvZiB0aGVpciBwdWJsaWNhdGlvbnMgY2FuIGJlIHNlZW4gaW4gYSBiaWcgcGFydCBvZiB0aGUgbWVjaGFuaXNtIGVuZ2luZWVyaW5nIHRpbWVsaW5lLiBXaGVuIHNwZWFraW5nIHRvIFxyXG4gICAgICA8SFBMaW5rdG9PdGhlckhQVGFiIHRhYj1cIm1hdHRpanNpbnZcclxuICAgICAgXCIgdGV4dD1cIk1hdHRpanMgQnVsY2FlblwiIC8+XHJcbiAgICAgICBpbiBKdW5lLCBoZSBtZW50aW9uZWQgdGhhdCBEYXZpZCBMaXUgaGFkIHJlY2VudGx5IGdpdmVuIGEgdGFsayBvbiByZWNlbnQgYWR2YW5jZXMgaW4gdGhlIHByaW1lIGVkaXRpbmcgZmllbGQgYXQgdGhlIG9ubGluZSBjb25mZXJlbmNlICA8YSBocmVmPVwiaHR0cHM6Ly93d3cuZ2VuZW5nbmV3cy5jb20vbXVsdGltZWRpYS90aGUtc3RhdGUtb2YtY3Jpc3ByLWFuZC1nZW5lLWVkaXRpbmctMjAyNC9cIiA+J1RoZSBTdGF0ZSBvZiBDUklTUFIgYW5kIEdlbmUgRWRpdGluZyAyMDI0JzwvYT4gaG9zdGVkIGJ5IEdlbmV0aWMgRW5naW5lZXJpbmcgJiBCaW90ZWNobm9sb2d5IE5ld3MuIFxyXG4gICAgICBJbiBoaXMgdGFsaywgRGF2aWQgTGl1IHByZXNlbnRlZCBib3RoIHB1Ymxpc2hlZCBhcyB3ZWxsIGFzIHVucHVibGlzaGVkIHdvcmsuIE9uZSBvZiB0aGUgbW9zdCBzaWduaWZpY2FudCB0YWtlYXdheXMgZm9yIHVzIHdlcmUgdGhlIHVzZSBvZiBldm9sdmVkIGltcHJvdmVkIGFuZCBzbWFsbGVyIHJldmVyc2UgdHJhbnNjcmlwdGFzZXMgaW4gUEU2IHByaW1lIGVkaXRpbmcgc3lzdGVtcyBcclxuICAgICAgPFRhYlNjcm9sbExpbmsgdGFiPVwibGl1XCIgc2Nyb2xsSWQ9XCJkZXNjLTJcIiBudW09XCIyXCIgLz5cclxuICAgICAgLiBXZSB3ZXJlIGFsc28gdmVyeSBpbnRlcmVzdGVkIGluIHRoZSBwcm90ZWluIGV2b2x1dGlvbiBzdHJhdGVnaWVzIHVzZWQgdG8gY3JlYXRlIHRoZXNlIG5ldyBlbnp5bWVzIGNhbGxlZCBQQUNFIGFuZCBQQU5DRSAocGhhZ2UgYXNzaXN0ZWQgKG5vbi0pY29udGludW91cyBldm9sdXRpb24gPFRhYlNjcm9sbExpbmsgdGFiPVwibGl1XCIgc2Nyb2xsSWQ9XCJkZXNjLTNcIiBudW09XCIzXCIgLz4gYW5kIHRoZSBpZGVhIG9mIHVzaW5nIHRoaXMgc3lzdGVtIHRvIG9wdGltaXplIG91ciBwbGFubmVkIG5ldyBlbmRvbnVjbGVhc2UgZG9tYWlucyBmb3IgdGhlIHByaW1lIGVkaXRvcnMuIFdlIGV2ZW50dWFsbHkgZGlzY2FyZGVkIHRoaXMgaWRlYSBiZWNhdXNlIG9mIHRpbWUgY29uc3RyYWludHMuIEFwYXJ0IGZyb20gdGhhdCwgRGF2aWQgTGl1IHByZXNlbnRlZCByZXN1bHRzIGZyb20gaGlzIGF0IHRoaXMgcG9pbnQgdW5wdWJsaXNoZWQgcGFwZXIgYWJvdXQgQ0ZUUiBGNTA4ZGVsIGNvcnJlY3Rpb24gdXNpbmcgcHJpbWUgZWRpdGluZywgd2hpY2ggd2FzIGVzcGVjaWFsbHkgaW50ZXJlc3RpbmcgZm9yIHVzIGNvbnNpZGVyaW5nIHRoZSBnb2FsIG9mIG91ciBwcm9qZWN0LiBXaGVuIHRoZSBwYXBlciB3YXMgcHVibGlzaGVkIG9uIHRoZSAxMHRoIG9mIEp1bHkgMjAyNCA8VGFiU2Nyb2xsTGluayB0YWI9XCJsaXVcIiBzY3JvbGxJZD1cImRlc2MtNFwiIG51bT1cIjRcIiAvPiwgaXQgYWN0dWFsbHkgc3VwcG9ydGVkIHNvbWUgb2Ygb3VyIGFscmVhZHkgbWFkZSBwZWdSTkEgZGVzaWduIGRlY2lzaW9ucywgc3VjaCBhcyB0aGUgY2hvaWNlIG9mIHRoZSB0YXJnZXRlZCBwcm90b3NwYWNlciwgdGhlIGludHJvZHVjdGlvbiBvZiBzaWxlbnQgZWRpdHMgYW5kIHRoZSB1c2Ugb2YgdGhlIHRyZXZvcHJlUTEgc3RlbSBsb29wLiBBZGRpdGlvbmFsbHksIGl0IG9mZmVyZWQgbm92ZWwgaW5zaWdodHMgaW50byBwcmltZSBlZGl0aW5nIHN5c3RlbXMgc3VpdGVkIGZvciBGNTA4ZGVsIGNvcnJlY3Rpb24sIHN1Y2ggYXMgUEU2LCBhbmQgb3B0aW1pemVkIHByaW1lciBiaW5kaW5nIHNpdGUgYXMgd2VsbCBhcyByZXZlcnNlIHRyYW5zY3JpcHRhc2UgdGVtcGxhdGUgbGVuZ3Rocy4gPC9wPlxyXG4gICAgXSxcclxuICAgIGltcGxlbWVudGF0aW9uOiBcInhcIixcclxuICAgIHN1bW1hcnk6IFwiIERhdmlkIExpdSwgdGhlIHByaW5jaXBhbCBpbnZlc3RpZ2F0b3IgYmVoaW5kIHByaW1lIGVkaXRpbmcgc3lzdGVtcywgaGFzIHNpZ25pZmljYW50bHkgY29udHJpYnV0ZWQgdG8gdGhlIGRldmVsb3BtZW50IG9mIGFkdmFuY2VkIGdlbmUgZWRpdGluZyB0ZWNobmlxdWVzLCBpbmNsdWRpbmcgYXBwbGljYXRpb25zIGZvciB0aGUgQ0ZUUiBtdXRhdGlvbiBGNTA4ZGVsLiBIaXMgcmVzZWFyY2ggcHJvdmlkZWQgdmFsdWFibGUgaW5zaWdodHMgZm9yIG91ciBwcm9qZWN0LCBsZWFkaW5nIHVzIHRvIGFkb3B0IGEgc3lzdGVtIGJhc2VkIG9uIHRoZSBQRTZjIGFuZCBQRTQgcHJpbWUgZWRpdG9ycy4gQWx0aG91Z2ggd2UgY291bGRuJ3QgZGlyZWN0bHkgZW5nYWdlIHdpdGggTGl1IG9yIGhpcyB0ZWFtLCB0aGUgaW1wYWN0IG9mIGhpcyB3b3JrIGlzIGV2aWRlbnQgaW4gb3VyIGdlbmUgZWRpdGluZyBhcHByb2FjaCBmb3IgUHJlQ3lzZS4gTm90YWJseSwgTGl1J3MgcmVjZW50IHRhbGsgYXQgdGhlICdTdGF0ZSBvZiBDUklTUFIgYW5kIEdlbmUgRWRpdGluZyAyMDI0JyBjb25mZXJlbmNlIGhpZ2hsaWdodGVkIGFkdmFuY2VtZW50cyBzdWNoIGFzIGltcHJvdmVkIHJldmVyc2UgdHJhbnNjcmlwdGFzZXMgYW5kIHRoZWlyIGFwcGxpY2F0aW9ucyBpbiBwcmltZSBlZGl0aW5nLiBUaGUgcHVibGljYXRpb24gb2YgaGlzIGZpbmRpbmdzIG9uIENGVFIgRjUwOGRlbCBjb3JyZWN0aW9uIGluIEp1bHkgMjAyNCBmdXJ0aGVyIHZhbGlkYXRlZCBvdXIgZGVzaWduIGNob2ljZXMgZm9yIHBlZ1JOQSBhbmQgb2ZmZXJlZCBuZXcgc3RyYXRlZ2llcyBmb3Igb3B0aW1pemluZyBvdXIgYXBwcm9hY2guXCIsXHJcbiAgICBtb250aHM6IFwiSnVuZVwiLFxyXG4gICAgcmVmZXJlbmNlczogPExpdUludGVydmlld1NvdXJjZXMvPixcclxuICB9LFxyXG4gIHtcclxuICAgIHZvcm5hbWU6IFwiTmljb2xlXCIsXHJcbiAgICBuYWNobm5hbWU6IFwiRnJpZWRsZWluXCIsXHJcbiAgICBqb2I6IFwiUmVzZWFyY2ggZ3JvdXAgb24gZnVuZGFtZW50YWwgcmlnaHRzXCIsXHJcbiAgICBhZmZpbGlhdGlvbjogXCJVbml2ZXJzaXR5IFBvdHNkYW1cIixcclxuICAgIHBpY3R1cmV1cmw6IHBpY3NbJ25pY29sZSddLFxyXG4gICAgdGFnOiBcIkFjYWRlbWlhXCIsXHJcbiAgICBoZWFkaW5nOiBcIkRpc2N1c3Npb24gb24gaG93IGhlYWx0aCBpbnN1cmFuY2UgY29tcGFuaWVzIG1hbmFnZSAgQ3lzdGljIEZpYnJvc2lzIHBhdGllbnRzIGFuZCBnZW5lIHRoZXJhcHkgdHJlYXRtZW50c1wiLFxyXG4gICAgaW50ZXJ2aWV3dGFiaWQ6IFwibmljb2xlXCIsXHJcblxyXG4gICAgbGFuZ3VhZ2U6IFwiZGVcIixcclxuICAgIHF1b3RlOiBcIlB1YmxpYyBoZWFsdGggaW5zdXJhbmNlIG9wZXJhdGVzIHVuZGVyIGFuIGVjb25vbWljIGVmZmljaWVuY3kgcHJpbmNpcGxlLCBtZWFuaW5nIHRoZSBtb3N0IGNvc3QtZWZmZWN0aXZlIHRyZWF0bWVudHMgYXJlIHByZWZlcnJlZC4gQnV0IGlmIGdlbmUgdGhlcmFwaWVzIGJlY29tZSB0aGUgb25seSB0cmVhdG1lbnQgb3B0aW9uIGZvciBjZXJ0YWluIGNvbmRpdGlvbnMsIHRoZXkgd2lsbCBsaWtlbHkgaGF2ZSB0byBiZSBpbmNsdWRlZCBpbiB0aGUgY292ZXJhZ2UsIHdoaWNoIGNvdWxkIGJlIGEgY2hhbGxlbmdlIGZvciB0aGUgc3lzdGVtLlwiLFxyXG4gICAgYWltb2Zjb250YWN0OiBcIlRoZSBtYWluIG9iamVjdGl2ZSBvZiB0aGUgY29udGFjdCB3YXMgdG8gbGVhcm4gZnJvbSB0aGUgZGlzY3Vzc2lvbiBvbiBpc3N1ZXMgcmVsYXRlZCB0byAgQ3lzdGljIEZpYnJvc2lzIChDRiksIGdlbmUgdGhlcmFweSwgaGVhbHRoIGluc3VyYW5jZSBwcm9jZXNzZXMgYW5kIHJlZ3VsYXRvcnkgcGF0aHdheXMuIEluIHBhcnRpY3VsYXIsIHdlIHdhbnRlZCB0byB1bmRlcnN0YW5kIHRoZSByZWFsLXdvcmxkIGNoYWxsZW5nZXMgYW5kIHRlY2huaWNhbCBhc3BlY3RzIG9mIGdlbmUgZWRpdGluZywgZXNwZWNpYWxseSBwcmltZSBlZGl0aW5nLCBhcyB3ZWxsIGFzIHRoZSBjb21wbGV4aXRpZXMgb2YgYXBwcm92YWwgYW5kIHJlaW1idXJzZW1lbnQgb2YgZ2VuZSB0aGVyYXBpZXMgZm9yIENGIHBhdGllbnRzLlwiLFxyXG4gICAgaW5zaWdodHM6IFwiVGhlIHJlZ3VsYXRvcnkgYXBwcm92YWwgcHJvY2VzcywgcGFydGljdWxhcmx5IGJ5IHRoZSBFdXJvcGVhbiBNZWRpY2luZXMgQWdlbmN5IChFTUEpIGZvciBhZHZhbmNlZCBtZWRpY2FsIGRldmljZXMsIGhhcyBoaWdobGlnaHRlZCB0aGUgYnVyZWF1Y3JhdGljIGh1cmRsZXMgdGhhdCBnZW5lIHRoZXJhcGllcyBtdXN0IG92ZXJjb21lLiBXZSBsZWFybmVkIHRoYXQgc3VjaCB0aGVyYXBpZXMgZm9yICBDeXN0aWMgRmlicm9zaXMgaGF2ZSB0byBuYXZpZ2F0ZSBjb21wbGV4IEV1cm9wZWFuIGFuZCBHZXJtYW4gcmVndWxhdG9yeSBzeXN0ZW1zLiBUaGUgZGlzY3Vzc2lvbiBvbiB0aGUgQU1OT0cgcHJvY2VzcyB3YXMgY3J1Y2lhbC4gV2UgbGVhcm50IHRoYXQgdGhlIGFkZGl0aW9uYWwgYmVuZWZpdCBvZiBhIHRoZXJhcHkgaXMgYXNzZXNzZWQgZm9yIHJlaW1idXJzZW1lbnQgYnkgdGhlIHN0YXR1dG9yeSBoZWFsdGggaW5zdXJhbmNlIGZ1bmRzLiBXZSBpbXBsZW1lbnRlZCB0aGlzIGluc2lnaHQgaW4gb3VyIHByb2plY3QgYnkgY29uc2lkZXJpbmcgdGhlIGxvbmctdGVybSByZWd1bGF0b3J5IGFuZCBlY29ub21pYyBlZmZlY3RzIGFzIGltcG9ydGFudCBtaWxlc3RvbmVzIGZvciB0aGVyYXB5IGRldmVsb3BtZW50LiBXZSBhbHNvIGdhaW5lZCBpbnNpZ2h0IGludG8gaG93IHB1YmxpYyBhbmQgcHJpdmF0ZSBoZWFsdGggaW5zdXJlcnMgbWF5IGRpZmZlciBpbiB0aGVpciByZWltYnVyc2VtZW50IG9mIHN1Y2ggdGhlcmFwaWVzLiBQdWJsaWMgaW5zdXJlcnMgaGF2ZSBzdHJpY3RlciBndWlkZWxpbmVzLCB3aGlsZSBwcml2YXRlIGluc3VyZXJzIGNhbiBiZSBtb3JlIGZsZXhpYmxlLCBidXQgYm90aCByZXF1aXJlIHN0cmljdCBqdXN0aWZpY2F0aW9uLCBlc3BlY2lhbGx5IGZvciByYXJlIGRpc2Vhc2VzIHN1Y2ggYXMgIEN5c3RpYyBGaWJyb3Npcy4gSW5mb3JtYXRpb24gb24gbmV3Ym9ybiBzY3JlZW5pbmcgYW5kIGdlbmV0aWMgY291bnNlbGxpbmcgY292ZXJlZCBieSBwdWJsaWMgaGVhbHRoIGluc3VyYW5jZSB3YXMgY3J1Y2lhbCB0byB1bmRlcnN0YW5kaW5nIGhvdyBwcmV2ZW50aXZlIG1lYXN1cmVzIGZvciBDRiBhcmUgbWFuYWdlZC4gVGhpcyB1bmRlcmxpbmVzIHRoZSBpbXBvcnRhbmNlIG9mIGVhcmx5IGludGVydmVudGlvbiBhbmQgZGlhZ25vc2lzIGluIG91ciBwcm9qZWN0LiBBdHlwaWNhbCBmb3JtcyBvZiBDRiwgd2hlcmUgaGVhbHRoIGluc3VyYW5jZSBjb21wYW5pZXMgZG8gbm90IGNvdmVyIHRyZWF0bWVudCBkdWUgdG8gbm9uLXN0YW5kYXJkaXNlZCB0ZXN0IHJlc3VsdHMsIHdlcmUgaWRlbnRpZmllZCBhcyBhIGtleSBwcm9ibGVtLiBUaGlzIGhlbHBlZCB1cyB0byByZWNvZ25pc2UgdGhlIG5lZWQgZm9yIG1vcmUgYWRhcHRhYmxlIGluc3VyYW5jZSBwb2xpY2llcyBhbmQgY2xlYXJlciBwYXRod2F5cyBmb3IgdGhlIHRyZWF0bWVudCBvZiBhdHlwaWNhbCBjYXNlcyBpbiBvdXIgcHJvamVjdCBwbGFucy4gVGhlIGRlYmF0ZSBhYm91dCB3aGV0aGVyIGhlYWx0aGNhcmUgc3lzdGVtcyBjYW4gYWZmb3JkIHRoZSBoaWdoIGNvc3RzIG9mIGdlbmUgdGhlcmFwaWVzIGhpZ2hsaWdodGVkIGFuIGltcG9ydGFudCBpc3N1ZSBpbiB0aGUgY3VycmVudCBtZWRpY2FsIGxhbmRzY2FwZS4gV2UgaGF2ZSBpbmNvcnBvcmF0ZWQgdGhpcyBpbnNpZ2h0IGludG8gb3VyIHByb2plY3QgYnkgZGlzY3Vzc2luZyBwb3NzaWJsZSBjb3N0LWVmZmVjdGl2ZSBhbHRlcm5hdGl2ZXMgYW5kIHRoZSBuZWVkIGZvciB0aG9yb3VnaCBjb3N0LWJlbmVmaXQgYW5hbHlzaXMgaW4gdGhlIGRldmVsb3BtZW50IG9mIHRyZWF0bWVudHMuXCIsXHJcbiAgICBpbXBsZW1lbnRhdGlvbjogWzxwPkFmdGVyIHRoZSBpbnRlcnZpZXcsIHdlIGZ1cnRoZXIgdGFpbG9yZWQgb3VyIHByb2plY3QgdG8gZm9jdXMgb24gYSBzaW1wbGUgZGVsaXZlcnkgbWV0aG9kIHRvIHJlZHVjZSB0aGUgdGhlcmFwZXV0aWMgZWZmb3J0LiBUbyBnYWluIGFuIG92ZXJ2aWV3IG9mIHRoZSByZWd1bGF0b3J5IHJlcXVpcmVtZW50cyBhbmQgdG8gYmV0dGVyIGRlbGl2ZXIgdGhlIHByb2plY3QsIG9uZSBvZiBvdXIgdGVhbSBtZW1iZXJzIGF0dGVuZGVkIGEgPEhQTGlua3RvT3RoZXJIUFRhYiB0YWI9XCJneHBjb3Vyc2VcIiB0ZXh0PVwiR3hQIGNvdXJzZVwiLz4gdG8gZW5zdXJlIHdlIG1ldCBhbGwgdGhlIG5lY2Vzc2FyeSBzdGFuZGFyZHMuIFRvIGRlZXBlbiBvdXIga25vd2xlZGdlIG9mIGVudHJlcHJlbmV1cnNoaXAsIHdlIGNvbmR1Y3RlZCBmdXJ0aGVyIGludGVydmlld3Mgd2l0aCBzdGFydC11cHMgYW5kIDxPdXJMaW5rIHRhYklkPVwiRnVydGhlciBFbmdhZ2VtZW50M0hcIiAgcGF0aD1cImh1bWFuLXByYWN0aWNlc1wiIHRleHQ9XCJpbmR1c3RyaWFsIGNvbXBhbmllc1wiIC8+LCB3aGljaCBnYXZlIHVzIGltcG9ydGFudCBpbnNpZ2h0cyBpbnRvIHByYWN0aWNhbCBpbXBsZW1lbnRhdGlvbi4gVGhlc2Ugc3RlcHMgZW5zdXJlIHRoYXQgb3VyIHByb2plY3QgaXMgbm90IG9ubHkgYmFzZWQgb24gc2NpZW50aWZpYyByZXNlYXJjaCwgYnV0IGFsc28gdGFrZXMgaW50byBhY2NvdW50IHRoZSBwcmFjdGljYWwsIHJlZ3VsYXRvcnkgYW5kIHNvY2lhbCBhc3BlY3RzIHRoYXQgYXJlIGNydWNpYWwgdG8gYnJpbmdpbmcgbmV3IENGIHRoZXJhcGllcyB0byB0aGUgbWFya2V0LiBXZSBhcmUgY3VycmVudGx5IGRldmVsb3Bpbmcgc3RyYXRlZ2llcyB0byBzdWNjZXNzZnVsbHkgaW1wbGVtZW50IG91ciBpZGVhcyBhbmQgdGhlIHByb2plY3QgaW4gdGhlIGZ1dHVyZS48L3A+XSxcclxuICAgIGludGVydmlldzogPD5cclxuICAgICAgPFFhQm94IHE9XCJUbyBzdGFydCB3aXRoIHRoaXMgaW50ZXJ2aWV3LiBEbyB5b3UgaGF2ZSBhbnkgcXVlc3Rpb25zIGFib3V0IHRoaXMgcHJvamVjdD9cIlxyXG4gICAgICAgIGE9XCJBcmUgeW91IHdyaXRpbmcgYSBwYXBlciBvbiB0aGlzLCBvciBhcmUgeW91IGNvbmR1Y3RpbmcgYWN0dWFsIGxhYm9yYXRvcnkgcmVzZWFyY2g/IE9yIGlzIGl0IHByaW1hcmlseSBsaXRlcmF0dXJlIHJldmlldz8gSG93IGRvZXMgeW91ciB3b3JrIGxvb2s/XCIgLz5cclxuICAgICAgPFFhQm94IHE9XCJJdFx1MjAxOXMgbm90IGp1c3QgbGl0ZXJhdHVyZSByZXZpZXcsIHRob3VnaCB3ZSBkbyBzdGFydCB3aXRoIHRoYXQuIFdlIGhhdmUgYSBsb3Qgb2YgbGFiIHdvcmsgYWhlYWQgb2YgdXMuIElkZWFsbHksIHdlIHdvdWxkIGhhdmUgYSBmaW5pc2hlZCBjb25zdHJ1Y3QgdG8gcHJlc2VudCBhdCB0aGUgZW5kLCBtYXliZSBldmVuIGEgZnVuY3Rpb25hbCBnZW5lIHRoZXJhcHksIHRob3VnaCB0aGF0XHUyMDE5cyBxdWl0ZSBhbWJpdGlvdXMgYW5kIHByb2JhYmx5IG5vdCBwb3NzaWJsZSBpbiB0aGUgc2hvcnQgdGltZSBmcmFtZS4gV2VcdTIwMTlyZSB3b3JraW5nIG9uIHZhcmlvdXMgZ2VuZS1lZGl0aW5nIGFwcHJvYWNoZXMgYW5kIHRlc3RpbmcgcGxhc21pZHMgaW4gSEVLIGNlbGxzLiBXZSBhcmUgYWxzbyBleHBsb3JpbmcgUHJpbWUgRWRpdGluZyBhbmQgdHJ5aW5nIHRvIGltcHJvdmUgaXRzIGVmZmljaWVuY3kgdXNpbmcgZGlmZmVyZW50IHJldmVyc2UgdHJhbnNjcmlwdGFzZSBlbnp5bWVzLiBTbywgaXRcdTIwMTlzIGEgbWl4IG9mIGxhYiB3b3JrLCBsaXRlcmF0dXJlIHJlc2VhcmNoLCBhbmQgcHJlcGFyaW5nIGZvciBhIHByZXNlbnRhdGlvbiBhdCBhIGNvbXBldGl0aW9uLlwiXHJcbiAgICAgICAgYT1cIkFyZSB5b3Ugd3JpdGluZyBhIGZvcm1hbCBwYXBlcj9cIiAvPlxyXG4gICAgICA8UWFCb3ggcT1cIldlXHUyMDE5cmUgbm90IHdyaXRpbmcgYSBmb3JtYWwgdGV4dC1iYXNlZCBwYXBlciwgYnV0IGV2ZXJ5dGhpbmcgd2lsbCBiZSBhdmFpbGFibGUgb24gYSB3ZWJzaXRlLiBXZSB3aWxsIGRvY3VtZW50IG1vc3Qgb2Ygb3VyIHdvcmsgb24gdGhlIHdlYnNpdGUsIHdpdGggc3ViLXBhZ2VzIGRldGFpbGluZyBsYWIgd29yaywgaW50ZXJ2aWV3cywgYW5kIHJlc2VhcmNoLlwiXHJcbiAgICAgICAgYT1cIldoYXQgZXhhY3RseSBpcyBQcmltZSBFZGl0aW5nLCBhbmQgaG93IGRvZXMgaXQgZGlmZmVyIGZyb20gYWx0ZXJpbmcgdGhlIGdlcm1saW5lPyBXaGVyZSBpbiB0aGUgZ2Vub21lIGRvZXMgdGhpcyB0aGVyYXB5IGFjdD9cIiAvPlxyXG4gICAgICA8UWFCb3ggcT1cIk91ciBjdXJyZW50IHBsYW4gaXMgdG8gZGVsaXZlciB0aGUgdGhlcmFweSB2aWEgYSBsaXBpZCBuYW5vcGFydGljbGUgc3lzdGVtLCB3aGljaCB3aWxsIGJlIGluaGFsZWQgYW5kIGdvIGludG8gdGhlIGx1bmdzLiBXaGlsZSAgQ3lzdGljIEZpYnJvc2lzIChDRikgYWZmZWN0cyBhbGwgbXVjdXMgbWVtYnJhbmVzLCB0aGUgbHVuZ3MgYXJlIHRoZSBtb3N0IGNyaXRpY2FsIGFyZWEsIHNvIHdlXHUyMDE5cmUgZm9jdXNpbmcgb24gdGhhdC4gVGhlIHRoZXJhcHkgd2lsbCBvbmx5IHRhcmdldCBzdXJmYWNlIGNlbGxzIGluIHRoZSBsdW5ncywgbm90IHRoZSBiYXNhbCBjZWxscyByZXNwb25zaWJsZSBmb3IgcHJvZHVjaW5nIG5ldyBsdW5nIGNlbGxzLlwiXHJcbiAgICAgICAgYT1cIlRoYW5rIHlvdSBmb3IgZ2l2aW5nIG1lIGluc2lnaHRzIGludG8geW91ciBwcm9qZWN0LlwiIC8+XHJcbiAgICAgIDxRYUJveCBxPVwiRG8geW91IGtub3cgaG93ICBDeXN0aWMgRmlicm9zaXMgKENGKSBhcHByb3ZhbCB3b3JrcyBpbiB0ZXJtcyBvZiBoZWFsdGggaW5zdXJhbmNlIGFuZCByZWd1bGF0b3J5IHByb2Nlc3Nlcz9cIlxyXG4gICAgICAgIGE9XCJUaGUgYXBwcm92YWwgcHJvY2VzcyBmb3IgZ2VuZSB0aGVyYXBpZXMgaXMgcHJpbWFyaWx5IGRvbmUgdGhyb3VnaCB0aGUgRU1BIChFdXJvcGVhbiBNZWRpY2luZXMgQWdlbmN5KSB1bmRlciBzcGVjaWZpYyBFVSByZWd1bGF0aW9ucyBmb3IgQWR2YW5jZWQgTWVkaWNhbCBQcm9kdWN0cywgaW5jbHVkaW5nIGdlbmUgdGhlcmFwaWVzLiBUaGVyZSBpcyBhbHNvIGEgbmF0aW9uYWwgYXBwcm92YWwgcHJvY2VzcyBpbiBHZXJtYW55IGZvciBpbmRpdmlkdWFsaXplZCB0cmVhdG1lbnRzLCBidXQgbGFyZ2Utc2NhbGUgdGhlcmFwaWVzIG11c3QgZ28gdGhyb3VnaCB0aGUgRVUgcHJvY2Vzcy5cIiAvPlxyXG4gICAgICA8UWFCb3ggcT1cIkNhbiB5b3Ugc2hhcmUgbW9yZSBhYm91dCB0aGUgYXBwcm92YWwgYW5kIHJlaW1idXJzZW1lbnQgcHJvY2Vzc2VzIGZvciBDRiB0cmVhdG1lbnQ/XCJcclxuICAgICAgICBhPVwiVGhlIGFwcHJvdmFsIHByb2Nlc3MgaXMgc2VwYXJhdGUgZnJvbSByZWltYnVyc2VtZW50IGJ5IHB1YmxpYyBoZWFsdGggaW5zdXJhbmNlLiBDRiBpcyBjb25zaWRlcmVkIGEgcmFyZSBkaXNlYXNlIGlmIGl0IGFmZmVjdHMgZmV3ZXIgdGhhbiBmaXZlIG91dCBvZiAxMCwwMDAgcGVvcGxlLCBhbmQgdHJlYXRtZW50cyBmb3IgcmFyZSBkaXNlYXNlcyBvZnRlbiBmYWNlIHNwZWNpYWwgcmVpbWJ1cnNlbWVudCBjaGFsbGVuZ2VzLiBJZiBtb3JlIHRoYW4gZml2ZSBvdXQgb2YgMTAsMDAwIHBlb3BsZSBhcmUgYWZmZWN0ZWQsIHRoZSBkaXNlYXNlIGlzIHJlbGF0aXZlbHkgY29tbW9uLCBhbmQgYXBwcm92YWwgYW5kIHJlaW1idXJzZW1lbnQgZ28gdGhyb3VnaCBhIGRpZmZlcmVudCBwcm9jZWR1cmUga25vd24gYXMgdGhlIEFNTk9HIHByb2Nlc3MuIEZvciBtb3JlIGNvbW1vbiBkaXNlYXNlcywgYW4gYWRkaXRpb25hbCBiZW5lZml0IChadXNhdHpudXR6ZW4pIG11c3QgYmUgZGVtb25zdHJhdGVkIGR1cmluZyB0aGUgYXBwcm92YWwgcHJvY2Vzcy5cIiAvPlxyXG4gICAgICA8UWFCb3ggcT1cIkhhdmUgeW91IGhlYXJkIGFib3V0IGlzc3VlcyB3aXRoIHJlaW1idXJzZW1lbnQgZnJvbSBwcml2YXRlIGluc3VyYW5jZSBjb21wYW5pZXM/XCJcclxuICAgICAgICBhPVwiV2VcdTIwMTl2ZSBoZWFyZCB0aGF0IHByaXZhdGUgaW5zdXJhbmNlIGNvbXBhbmllcyBjYW4gbWFrZSBpdCBkaWZmaWN1bHQgdG8gZ2V0IHRyZWF0bWVudHMgcmVpbWJ1cnNlZCwgZXNwZWNpYWxseSBleHBlcmltZW50YWwgb25lcy4gT25lIG9mIG91ciBjb2xsZWFndWVzIGFsbW9zdCBoYWQgdG8gZ28gdG8gY291cnQgdG8gZ2V0IGhpcyB0cmVhdG1lbnQgcmVpbWJ1cnNlZCBieSBoaXMgcHJpdmF0ZSBpbnN1cmVyLCB3aGljaCB3YXMgcXVpdGUgZXhwZW5zaXZlLiBFdmVudHVhbGx5LCBoZSBzd2l0Y2hlZCB0byBwdWJsaWMgaW5zdXJhbmNlLCBidXQgdGhlIHNpdHVhdGlvbiB3YXMgZGlmZmljdWx0LlwiIC8+XHJcbiAgICAgIDxRYUJveCBxPVwiV2h5IGRpZCB5b3VyIGNvbGxlYWd1ZSBoYXZlIGlzc3VlcyB3aXRoIHByaXZhdGUgaW5zdXJhbmNlP1wiXHJcbiAgICAgICAgYT1cIkhlIHdhcyBwcml2YXRlbHkgaW5zdXJlZCwgYnV0IHRoZSB0cmVhdG1lbnQgd2FzIHZlcnkgZXhwZW5zaXZlLCBhcm91bmQgXHUyMEFDMTYsMDAwIHBlciBtb250aCwgYW5kIHRoZSBpbnN1cmFuY2UgY29tcGFueSB3YXMgcmVsdWN0YW50IHRvIGNvdmVyIGl0LlwiIC8+XHJcbiAgICAgIDxRYUJveCBxPVwiRG8geW91IG5lZWQgbGVnYWwgaW5mb3JtYXRpb24gZm9yIHlvdXIgcHJvamVjdD9cIlxyXG4gICAgICAgIGE9XCJCb3RoLiBXZSB3YW50IHRvIGJlIHdlbGwtaW5mb3JtZWQgdG8gaWRlbnRpZnkgcG90ZW50aWFsIG9ic3RhY2xlcyBlYXJseSBvbiwgc3VjaCBhcyBsZWdhbCByZXN0cmljdGlvbnMgb3IgYmFucyBvbiBhbHRlcmluZyBjZXJ0YWluIGNocm9tb3NvbWVzLiBBbHRob3VnaCB3ZSB3b25cdTIwMTl0IGJlIHJ1bm5pbmcgY2xpbmljYWwgdHJpYWxzLCB1bmRlcnN0YW5kaW5nIHRoZSByZWd1bGF0b3J5IGxhbmRzY2FwZSBpcyBjcnVjaWFsIGZvciBvdXIgZnV0dXJlIHBsYW5uaW5nLlwiIC8+XHJcbiAgICAgIDxRYUJveCBxPVwiSG93IGRvZXMgZ2VuZXRpYyBjb3Vuc2VsaW5nIGFuZCB0ZXN0aW5nIHdvcmsgZm9yIENGP1wiXHJcbiAgICAgICAgYT1cIkdlbmV0aWMgY291bnNlbGluZyBhbmQgdGVzdGluZyBhcmUgdXN1YWxseSBjb3ZlcmVkIGJ5IGhlYWx0aCBpbnN1cmFuY2UgaWYgdGhlcmVcdTIwMTlzIGEgbWVkaWNhbCByZWFzb24sIHN1Y2ggYXMgYSBmYW1pbHkgaGlzdG9yeSBvciBzdXNwaWNpb24gdGhhdCB0aGUgcGFyZW50cyBtaWdodCBiZSBjYXJyaWVycy4gSG93ZXZlciwgaWYgYm90aCBwYXJlbnRzIGFyZSBoZWFsdGh5IGFuZCB0aGVyZVx1MjAxOXMgbm8gZmFtaWx5IGhpc3Rvcnkgb2YgQ0YsIGluc3VyYW5jZSBtaWdodCBub3QgY292ZXIgdGhlIHRlc3RzLlwiIC8+XHJcbiAgICAgIDxRYUJveCBxPVwiQXJlIHRoZXJlIGRpZmZlcmVuY2VzIGJldHdlZW4gcHVibGljIGFuZCBwcml2YXRlIGluc3VyZXJzIGZvciBnZW5ldGljIHRlc3RzP1wiXHJcbiAgICAgICAgYT1cIlB1YmxpYyBpbnN1cmFuY2UgaGFzIGRpZmZlcmVudCByZWd1bGF0aW9ucyB0aGFuIHByaXZhdGUgaW5zdXJhbmNlLCBidXQgSVx1MjAxOW0gbm90IGVudGlyZWx5IHN1cmUgaWYgdGhhdCBsZWFkcyB0byBkaWZmZXJlbnQgZGVjaXNpb25zIHJlZ2FyZGluZyBnZW5ldGljIHRlc3RpbmcuIEkgY2FuIGxvb2sgaW50byB0aGUgcHVibGljIGluc3VyYW5jZSByZWd1bGF0aW9ucyBpZiB0aGF0IHdvdWxkIGJlIGhlbHBmdWwuXCIgLz5cclxuICAgICAgPFFhQm94IHE9XCJJcyBuZXdib3JuIHNjcmVlbmluZyBmb3IgQ0YgY292ZXJlZCBieSBoZWFsdGggaW5zdXJhbmNlP1wiXHJcbiAgICAgICAgYT1cIlllcywgbmV3Ym9ybiBzY3JlZW5pbmcgaXMgcGFydCBvZiBhIHNldCBvZiBoZWFsdGggZXhhbWluYXRpb25zIGZvciBjaGlsZHJlbiBhbmQgYWRvbGVzY2VudHMsIHJlZ3VsYXRlZCB1bmRlciBcdTAwQTcyNiBTR0IgViAoU29jaWFsIFNlY3VyaXR5IENvZGUpLiBTaW5jZSBpdFx1MjAxOXMgcGFydCBvZiB0aGUgcmVndWxhciBzY3JlZW5pbmcgcHJvY2VzcywgaXRcdTIwMTlzIGNvdmVyZWQgYnkgaGVhbHRoIGluc3VyYW5jZSB3aXRob3V0IGFkZGl0aW9uYWwgcmVxdWlyZW1lbnRzLlwiIC8+XHJcbiAgICAgIDxRYUJveCBxPVwiSG93IGRvZXMgcHVibGljIGluc3VyYW5jZSBoYW5kbGUgQ0YgdHJlYXRtZW50IHdoZW4gYSB0ZXN0IGNvbWVzIGJhY2sgbmVnYXRpdmU/XCJcclxuICAgICAgICBhPVwiUHVibGljIGhlYWx0aCBpbnN1cmFuY2Ugd29ya3Mgd2l0aCBzdGFuZGFyZGl6ZWQgZ3VpZGVsaW5lcywgYW5kIGlmIGEgdGVzdCBjb21lcyBiYWNrIG5lZ2F0aXZlLCBpdCBtYXkgbm8gbG9uZ2VyIG1lZXQgdGhlIGNyaXRlcmlhIGZvciBjb3ZlcmFnZS4gSG93ZXZlciwgaWYgYSBkb2N0b3IgcmVjb25maXJtcyB0aGUgZGlhZ25vc2lzLCB0aGUgdHJlYXRtZW50IHNob3VsZCBjb250aW51ZSB0byBiZSBjb3ZlcmVkLlwiIC8+XHJcbiAgICAgIDxRYUJveCBxPVwiSXMgdGhlcmUgbm8gcnVsZSB0aGF0IHNheXMgZ2VuZXRpYyBkaXNlYXNlcywgb25jZSBkaWFnbm9zZWQsIHNob3VsZCByZW1haW4gY292ZXJlZCBzaW5jZSBnZW5ldGljcyBkb25cdTIwMTl0IGNoYW5nZT9cIlxyXG4gICAgICAgIGE9XCJJbiB0aGVvcnksIHllcy4gQnV0IHRoZSBndWlkZWxpbmVzIGFyZSB1c3VhbGx5IGJhc2VkIG9uIG1lZGljYWwgZXZpZGVuY2UgYXQgdGhlIHRpbWUsIGFuZCByZS10ZXN0aW5nIGNhbiBzb21ldGltZXMgbGVhZCB0byBjb21wbGljYXRpb25zIGluIHRlcm1zIG9mIGNvdmVyYWdlIGlmIHRoZSByZXN1bHQgZGlmZmVycy4gSG93ZXZlciwgd2l0aCBwcm9wZXIgbWVkaWNhbCBkb2N1bWVudGF0aW9uLCBpdCBzaG91bGQgYmUgcG9zc2libGUgdG8gbWFpbnRhaW4gY292ZXJhZ2UuXCIgLz5cclxuICAgICAgPFFhQm94IHE9XCJIYXZlIHJlY2VudCBjaGFuZ2VzIGluIGdlbmUgdGhlcmFweSBjb3N0cyBpbXBhY3RlZCBwdWJsaWMgaGVhbHRoIGluc3VyYW5jZT9cIlxyXG4gICAgICAgIGE9XCJOb3QgbXVjaCBoYXMgY2hhbmdlZC4gSXRcdTIwMTlzIGEgcG9saXRpY2FsIGFuZCBzb2NpZXRhbCBxdWVzdGlvblx1MjAxNGhvdyB3aWxsaW5nIGFyZSB3ZSB0byBmaW5hbmNlIHRoZXNlIGV4cGVuc2l2ZSB0aGVyYXBpZXM/IFJpZ2h0IG5vdywgcHVibGljIGhlYWx0aCBpbnN1cmFuY2Ugb3BlcmF0ZXMgdW5kZXIgYW4gZWNvbm9taWMgZWZmaWNpZW5jeSBwcmluY2lwbGUsIG1lYW5pbmcgdGhlIG1vc3QgY29zdC1lZmZlY3RpdmUgdHJlYXRtZW50cyBhcmUgcHJlZmVycmVkLiBCdXQgaWYgZ2VuZSB0aGVyYXBpZXMgYmVjb21lIHRoZSBvbmx5IHRyZWF0bWVudCBvcHRpb24gZm9yIGNlcnRhaW4gY29uZGl0aW9ucywgdGhleSB3aWxsIGxpa2VseSBoYXZlIHRvIGJlIGluY2x1ZGVkIGluIHRoZSBjb3ZlcmFnZSwgYW5kIGl0IGNvdWxkIGJlIGEgY2hhbGxlbmdlIGZvciB0aGUgc3lzdGVtLiBUaGVyZSBhcmUgYWxzbyBvbmdvaW5nIHByaWNlIG5lZ290aWF0aW9ucyBiZXR3ZWVuIGluc3VyZXJzIGFuZCBtYW51ZmFjdHVyZXJzLlwiIC8+XHJcbiAgICAgIDxRYUJveCBxPVwiRG8gcGF0ZW50cyBwbGF5IGEgc2lnbmlmaWNhbnQgcm9sZSBpbiBrZWVwaW5nIGdlbmUgdGhlcmFweSBjb3N0cyBoaWdoP1wiXHJcbiAgICAgICAgYT1cIlllcywgcGF0ZW50cyBjZXJ0YWlubHkgaW5mbHVlbmNlIHRoZSBwcmljZSwgYnV0IHRoZSBwcm9kdWN0aW9uIG9mIGdlbmUgdGhlcmFwaWVzIGlzIGluaGVyZW50bHkgZXhwZW5zaXZlIGR1ZSB0byB0aGUgY29tcGxleCByZXNlYXJjaCBhbmQgbWFudWZhY3R1cmluZyBwcm9jZXNzLlwiIC8+XHJcbiAgICAgIDxRYUJveCBxPVwiV291bGQgcHJpdmF0ZSBzdXBwbGVtZW50YWwgaW5zdXJhbmNlIGJlIGFuIG9wdGlvbiBmb3IgY292ZXJpbmcgZXhwZW5zaXZlIGdlbmUgdGhlcmFwaWVzP1wiXHJcbiAgICAgICAgYT1cIkl0XHUyMDE5cyBwb3NzaWJsZSB0aGF0IHByaXZhdGUgc3VwcGxlbWVudGFsIGluc3VyYW5jZSBjb3VsZCBjb3ZlciB0aGVzZSB0aGVyYXBpZXMgaWYgcHVibGljIGhlYWx0aCBpbnN1cmFuY2UgZG9lc25cdTIwMTl0LiBIb3dldmVyLCB0aGlzIHJhaXNlcyBjb25jZXJucyBhYm91dCBlcXVpdHkgYW5kIGFjY2Vzc2liaWxpdHkuIElmIHB1YmxpYyBpbnN1cmFuY2UgZG9lc25cdTIwMTl0IGNvdmVyIGl0LCB0aGUgYnVyZGVuIG1pZ2h0IGZhbGwgb24gcHJpdmF0ZSBpbnN1cmFuY2UsIHdoaWNoIGNvdWxkIGNyZWF0ZSBkaXNwYXJpdGllcyBpbiBhY2Nlc3MgdG8gdHJlYXRtZW50LlwiIC8+XHJcbiAgICAgIDxRYUJveCBxPVwiSXMgZ2VuZSB0aGVyYXB5IHJlc2VhcmNoIGRyaXZlbiBtb3JlIGJ5IGJpb2xvZ3kgb3IgbWVkaWNpbmU/XCJcclxuICAgICAgICBhPVwiSXRcdTIwMTlzIGRlZmluaXRlbHkgaW50ZXJkaXNjaXBsaW5hcnkuIEJvdGggYmlvbG9naXN0cyBhbmQgbWVkaWNhbCBwcm9mZXNzaW9uYWxzIGNvbnRyaWJ1dGUuIEZvciBleGFtcGxlLCBhdCBvdXIgdW5pdmVyc2l0eSwgdGhlIG1lZGljYWwgYW5kIGJpb2xvZ3kgZmFjdWx0aWVzIGNvbGxhYm9yYXRlIGNsb3NlbHkuIEJpb2xvZ2lzdHMgdXN1YWxseSBoYW5kbGUgdGhlIHJlc2VhcmNoLCB3aGlsZSBtZWRpY2FsIHByb2Zlc3Npb25hbHMgZm9jdXMgbW9yZSBvbiBjbGluaWNhbCBhcHBsaWNhdGlvbnMuXCIgLz5cclxuICAgICAgPFFhQm94IHE9XCJEbyBiaW9sb2dpc3RzIG9yIG1lZGljYWwgcHJvZmVzc2lvbmFscyBkZXZlbG9wIGdlbmUgdGhlcmFwaWVzP1wiXHJcbiAgICAgICAgYT1cIkluIHRlcm1zIG9mIGRldmVsb3BtZW50LCBpdFx1MjAxOXMgbWFpbmx5IGJpb2xvZ2lzdHMgYW5kIGJpb3RlY2hub2xvZ2lzdHMuIE1lZGljYWwgcHJvZmVzc2lvbmFscyBnZXQgaW52b2x2ZWQgcHJpbWFyaWx5IGluIGNsaW5pY2FsIHRyaWFscy4gU29tZSBkb2N0b3JzIGRvIHJlc2VhcmNoLCBidXQgdGhleVx1MjAxOXJlIG9mdGVuIG5lZWRlZCBpbiBob3NwaXRhbHMsIHNvIGhhbmRzLW9uIGRldmVsb3BtZW50IGlzIG1vc3RseSBoYW5kbGVkIGJ5IG1vbGVjdWxhciBiaW9sb2dpc3RzIG9yIGJpb3RlY2hub2xvZ2lzdHMuXCIgLz5cclxuICAgICAgPFFhQm94IHE9XCJEb2VzIHJlc2VhcmNoIGluIGdlbm9tZSBtZWRpY2luZSBhbmQgZ2VuZSB0aGVyYXBpZXMgY29tZSBmcm9tIGJpb2xvZ3ksIG1lZGljaW5lLCBvciBib3RoP1wiXHJcbiAgICAgICAgYT1cIkl0XHUyMDE5cyBtYWlubHkgaW50ZXJkaXNjaXBsaW5hcnkuIEEgbG90IG9mIGZ1bmRpbmcgY29tZXMgZnJvbSBpbmR1c3RyeSwgbGlrZSBCaW9OVGVjaCwgb3IgZm91bmRhdGlvbnMgbGlrZSBNdWtvdmlzemlkb3NlIGUuVi4sIHdoaWNoIGZ1bmRzIHJlc2VhcmNoIG9uICBDeXN0aWMgRmlicm9zaXMuIEJ1dCBpbiB0ZXJtcyBvZiBwcmFjdGljYWwgcmVzZWFyY2gsIGl0XHUyMDE5cyB1c3VhbGx5IGJpb2xvZ2lzdHMgb3IgYmlvdGVjaG5vbG9naXN0cy4gV2l0aG91dCBpbmR1c3RyeSBzdXBwb3J0LCByZXNlYXJjaCBjYW4gc3RydWdnbGUgZHVlIHRvIGEgbGFjayBvZiBmdW5kaW5nLCBzbyBoYXZpbmcgYmFja2luZyBpcyBlc3NlbnRpYWwuXCIgLz5cclxuICAgIDwvPixcclxuICAgIHN1bW1hcnk6IFwiT3VyIGRpc2N1c3Npb24gYWRkcmVzc2VkIHRoZSBjb21wbGV4aXRpZXMgb2YgIEN5c3RpYyBGaWJyb3NpcyAoQ0YpIHRyZWF0bWVudHMsIGZvY3VzaW5nIG9uIGdlbmUgdGhlcmFweSBhbmQgaGVhbHRoIGluc3VyYW5jZSBwcm9jZXNzZXMuIFdlIGxlYXJuZWQgYWJvdXQgdGhlIHJlZ3VsYXRvcnkgY2hhbGxlbmdlcyBnZW5lIHRoZXJhcGllcyBmYWNlLCBwYXJ0aWN1bGFybHkgcmVnYXJkaW5nIHRoZSBFdXJvcGVhbiBNZWRpY2luZXMgQWdlbmN5IChFTUEpIGFuZCB0aGUgQU1OT0cgcHJvY2VzcyBmb3IgcmVpbWJ1cnNlbWVudCBhc3Nlc3NtZW50cy4gUHVibGljIGluc3VyZXJzIGltcG9zZSBzdHJpY3RlciBndWlkZWxpbmVzIHRoYW4gcHJpdmF0ZSBpbnN1cmVycywgZW1waGFzaXppbmcgdGhlIGltcG9ydGFuY2Ugb2YgZWFybHkgaW50ZXJ2ZW50aW9uIGluIENGIGFuZCB0aGUgbmVlZCBmb3IgYWRhcHRhYmxlIHBvbGljaWVzIGZvciBhdHlwaWNhbCBjYXNlcy4gV2UgcmVjb2duaXplZCB0aGUgaGlnaCBjb3N0cyBhc3NvY2lhdGVkIHdpdGggZ2VuZSB0aGVyYXBpZXMgYW5kIGluY29ycG9yYXRlZCBjb3N0LWJlbmVmaXQgYW5hbHlzaXMgaW50byBvdXIgcHJvamVjdCBwbGFubmluZy4gRm9sbG93aW5nIHRoZSBpbnRlcnZpZXcsIHdlIHJlZmluZWQgb3VyIGFwcHJvYWNoIHRvIGluY2x1ZGUgc3RyYWlnaHRmb3J3YXJkIGRlbGl2ZXJ5IG1ldGhvZHMgYW5kIGF0dGVuZGVkIGEgR3hQIGNvdXJzZSBmb3IgcmVndWxhdG9yeSBjb21wbGlhbmNlLiBFbmdhZ2luZyB3aXRoIHN0YXJ0LXVwcyBmdXJ0aGVyIGluZm9ybWVkIG91ciBwcmFjdGljYWwgaW1wbGVtZW50YXRpb24gc3RyYXRlZ2llcywgZW5zdXJpbmcgb3VyIHByb2plY3QgYWxpZ25zIHdpdGggYm90aCBzY2llbnRpZmljIGFuZCByZWd1bGF0b3J5IG5lZWRzLlwiLFxyXG4gICAgbW9udGhzOiBcImp1bmVcIixcclxuICAgIHBpY3R1cmV1cmxfaW50ZXJ2aWV3OiBcImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9ocC96b29tLW5pY29sZS53ZWJwXCIsXHJcbiAgfSxcclxuICB7XHJcbiAgICB2b3JuYW1lOiBcIlZpc2l0aW5nIEFjaGVtYSBcIixcclxuICAgIG5hY2hubmFtZTogXCJpbiBGcmFua2Z1cnRcIixcclxuICAgIHBpY3R1cmV1cmw6IHBpY3NbJ2ZyYW5rZnVydG1lc3NlJ10sXHJcbiAgICBqb2I6IFwiVGVhbSBpR0VNXCIsXHJcbiAgICBhZmZpbGlhdGlvbjogXCJCaWVsZmVsZCBDZUJpVGVjIDIwMjRcIixcclxuICAgIHRhZzogXCJJbmR1c3RyeVwiLFxyXG4gICAgaGVhZGluZzogXCJTb21lIG9mIG91ciB0ZWFtIG1lbWJlcnMgYXR0ZW5kZWQgdGhlIGZhaXIgaW4gRnJhbmtmdXJ0IHRvIG5ldHdvcmsgd2l0aCBpbmR1c3RyeSBsZWFkZXJzXCIsXHJcbiAgICBpbnRlcnZpZXd0YWJpZDogXCJmcmFua2Z1cnRtZXNzZVwiLFxyXG5cclxuICAgIHF1b3RlOiBcIkFjaGVtYSB3YXMgYSBncmVhdCBleHBlcmllbmNlLiBJIGdvdCB0byBtZWV0IGEgbG90IG9mIGludGVyZXN0aW5nIHBlb3BsZSBhbmQgbGVhcm4gYWJvdXQgdGhlaXIgcHJvamVjdHMuIEl0IHJlYWxseSBtb3RpdmF0ZWQgbWUgZm9yIG15IG93biB3b3JrLlwiLFxyXG4gICAgcXVvdGVOYWNobmFtZTpcIldpZXNuZXIsIFRlYW1tZW1iZXJcIixcclxuICAgIHF1b3RlVm9ybmFtZTogXCJMaXNhXCIsXHJcbiAgICBhaW1vZmNvbnRhY3Q6IFs8cD5BdCBBY2hlbWEgMjAyNCwgd2UgYWltZWQgdG8gY29ubmVjdCB3aXRoIGluZHVzdHJ5IGxlYWRlcnMgYW5kIGlubm92YXRvcnMsIHRvIGV4cGxvcmUgcG90ZW50aWFsIGNvbGxhYm9yYXRpb25zIGFuZCBnYXRoZXIgaW5zaWdodHMgb24gbGFib3JhdG9yeSBwcmFjdGljZXMuIE91ciBnb2FsIHdhcyB0byBlbmhhbmNlIG91ciB1bmRlcnN0YW5kaW5nIG9mIGN1dHRpbmctZWRnZSB0ZWNobm9sb2dpZXMgYW5kIHJlc291cmNlcyBpbiB0aGUgbGlmZSBzY2llbmNlcyBzZWN0b3IuPC9wPl0sXHJcbiAgICBpbnNpZ2h0czogWzxwPkR1cmluZyBvdXIgdGltZSBhdCBBY2hlbWEsIHdlIGdhaW5lZCB2YWx1YWJsZSBpbnNpZ2h0cyBpbnRvIGxpZmUgc2NpZW5jZXMsIHdpdGggYSBzdHJvbmcgZm9jdXMgb24gTE5QIHByb2R1Y3Rpb24gYW5kIGxhYiBiZXN0IHByYWN0aWNlcy4gT3VyIGRpc2N1c3Npb25zIHdpdGggZXhwZXJ0cywgaW5jbHVkaW5nIEp1dHRhIGZyb20gYSBsaWZlIHNjaWVuY2UgY29tcGFueSwgcHJvdmlkZWQgdXMgd2l0aCBpbm5vdmF0aXZlIHNvbHV0aW9ucyBhbmQgY3V0dGluZy1lZGdlIHRlY2huaXF1ZXMuIEhlciBpbnNpZ2h0cyBpbnRvIGN1cnJlbnQgdHJlbmRzIGhlbHBlZCB1cyBiZXR0ZXIgdW5kZXJzdGFuZCBob3cgdG8gYWR2YW5jZSBvdXIgcHJvamVjdC48L3A+LFxyXG4gICAgICA8cD5UaHJvdWdoIHZhcmlvdXMgZXhwZXJ0IGludGVyYWN0aW9ucywgd2UgZGVlcGVuZWQgb3VyIGtub3dsZWRnZSBvZiBMTlAgcHJvZHVjdGlvbiwgbGVhcm5pbmcga2V5IG1hbnVmYWN0dXJpbmcgdGVjaG5pcXVlcyBlc3NlbnRpYWwgZm9yIGRldmVsb3BpbmcgZWZmZWN0aXZlIHRoZXJhcGV1dGljcy4gVGhlc2UgaW5zaWdodHMgYWxsb3dlZCB1cyB0byBvcHRpbWl6ZSBvdXIgcHJvZHVjdGlvbiBtZXRob2RzLCBlbnN1cmluZyBtb3JlIGVmZmljaWVudCBwcm9jZXNzZXMgbW92aW5nIGZvcndhcmQuPC9wPixcclxuICAgICAgPHA+VW5kZXJzdGFuZGluZyByaWdvcm91cyBxdWFsaXR5IGNvbnRyb2wgcHJvY2Vzc2VzIHdhcyBhbm90aGVyIGtleSB0YWtlYXdheSwgZW5hYmxpbmcgdXMgdG8gaW1wbGVtZW50IGNoZWNrcyB0aGF0IHdpbGwgYm9vc3QgdGhlIHJlbGlhYmlsaXR5IGFuZCBzYWZldHkgb2Ygb3VyIHRoZXJhcGV1dGljcy4gVGhlc2UgY29tcHJlaGVuc2l2ZSBpbnNpZ2h0cyBoYXZlIG5vdCBvbmx5IHN1cHBvcnRlZCBvdXIgY3VycmVudCBnb2FscyBidXQgYWxzbyBwcmVwYXJlZCB1cyBmb3IgZnV0dXJlIGNoYWxsZW5nZXMsIGVxdWlwcGluZyB1cyB3aXRoIHRoZSB0b29scyB0byBuYXZpZ2F0ZSB0aGUgY29tcGxleGl0aWVzIG9mIHJlc2VhcmNoIGFuZCB0aGVyYXBldXRpYyBkZXZlbG9wbWVudC48L3A+XSxcclxuICAgIGltcGxlbWVudGF0aW9uOiBbPHA+RGlzY3Vzc2lvbnMgd2l0aCBpbmR1c3RyeSBleHBlcnRzIGhhdmUgcHJvdmlkZWQgaW52YWx1YWJsZSBpbnNpZ2h0cyBpbnRvIHRoZSBwcm9kdWN0aW9uIG9mIExOUHN7LyogW0xJTksgTE5QY3ljbGVdICovfSwgYSBjcnVjaWFsIGFzcGVjdCBvZiBvdXIgcHJvamVjdC4gV2UgaGF2ZSBpZGVudGlmaWVkIGlubm92YXRpdmUgbWFudWZhY3R1cmluZyB0ZWNobmlxdWVzIGFuZCBxdWFsaXR5IGNvbnRyb2wgcHJvY2VkdXJlcyB0aGF0IHdlIGNhbiBpbnRlZ3JhdGUgaW50byBvdXIgcHJvY2Vzc2VzLiBUaGlzIGtub3dsZWRnZSBub3Qgb25seSBzdXBwb3J0cyBvdXIgaW1tZWRpYXRlIG9iamVjdGl2ZXMgYnV0IGFsc28gcG9zaXRpb25zIHVzIHRvIG92ZXJjb21lIGZ1dHVyZSBjaGFsbGVuZ2VzIGluIGRldmVsb3BpbmcgZWZmZWN0aXZlIHRoZXJhcGllcy48L3A+XSxcclxuICAgIHN1bW1hcnk6IFs8cD5EdXJpbmcgZGlzY3Vzc2lvbnMgd2l0aCBpbmR1c3RyeSBleHBlcnRzIGF0IEFjaGVtYSAyMDI0LCB3ZSBnYWluZWQgdmFsdWFibGUgaW5zaWdodHMgdGhhdCB3aWxsIGhhdmUgYSBzaWduaWZpY2FudCBpbXBhY3Qgb24gb3VyIHByb2plY3QgYW5kIHByb3ZpZGUgdXMgd2l0aCBpbm5vdmF0aXZlIG1hbnVmYWN0dXJpbmcgdGVjaG5pcXVlcyBhbmQgcXVhbGl0eSBjb250cm9sIHByb2NlZHVyZXMgdGhhdCB3ZSBhcmUgbm93IGludGVncmF0aW5nIGludG8gb3VyIHdvcmtmbG93cy4gVGhlc2UgaW5zaWdodHMgd2lsbCBoZWxwIHVzIHRvIG9wdGltaXNlIG91ciBwcm9kdWN0aW9uIHByb2Nlc3NlcyB0byBhY2hpZXZlIG1vcmUgZWZmaWNpZW50IGFuZCByZWxpYWJsZSByZXN1bHRzIGluIHRoZXJhcGV1dGljIGRldmVsb3BtZW50LiBUaGUgbmV3IGtub3dsZWRnZSBzdXBwb3J0cyBvdXIgY3VycmVudCBnb2FscyBhbmQgcHJlcGFyZXMgdXMgZm9yIGZ1dHVyZSBjaGFsbGVuZ2VzIGluIHRoZSBkZXZlbG9wbWVudCBvZiBlZmZlY3RpdmUgdGhlcmFwaWVzPC9wPl0sIFxyXG4gICAgbW9udGhzOiBcImp1bmVcIixcclxuICAgIHBpY3R1cmV1cmxfYWltOlwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2hwL2FjaGVtYTEud2VicFwiLFxyXG4gICAgcGljdHVyZXVybF9pbXBsZW1lbnRhdGlvbjogXCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvaHAvYWNoZW1hMi53ZWJwXCIsXHJcbiAgICBwaWN0dXJldXJsX2ludGVydmlldzogXCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvaHAvYWNoZW1hMy53ZWJwXCIsXHJcbiAgICBtb3JlX3BpY3R1cmVzOiBbXCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvaHAvYWNoZW1hNC53ZWJwLFwiXSxcclxuICB9LFxyXG4gIHtcclxuICAgIHZvcm5hbWU6IFwiS2F0cmluXCIsXHJcbiAgICBuYWNobm5hbWU6IFwiV2VzdGhvZmZcIixcclxuICAgIGpvYjogXCJwaHlzaW90aGVyYXBpc3RcIixcclxuICAgIGFmZmlsaWF0aW9uOiBcIkluZGVwZW5kZW50XCIsXHJcbiAgICBwaWN0dXJldXJsOiBwaWNzWyd3ZXN0aG9mZiddLFxyXG4gICAgdGFnOiBcIk1lZGljYWwgUHJvZmVzc2lvbmFsXCIsXHJcbiAgICBoZWFkaW5nOiBcIkluLURlcHRoIFZpc2l0IHRvIFNwZWNpYWxpemVkIFBoeXNpb3RoZXJhcGlzdCBmb3IgQ0YgQnJlYXRoaW5nIFRoZXJhcHlcIixcclxuICAgIGludGVydmlld3RhYmlkOiBcIndlc3Rob2ZmdmlzaXRcIixcclxuXHJcbiAgICBsYW5ndWFnZTogXCJkZVwiLFxyXG4gICAgcXVvdGU6IFwiQ2hpbGRyZW4gYXJlIHRoZSB3b3JsZCdzIGJlc3QgXHUyMDFDbXVjdXMgaGlkZXJzXHUyMDFELlwiLFxyXG4gICAgYWltb2Zjb250YWN0OiBbPGE+RHVyaW5nIHRoZSBsYXN0IGludGVydmlldyB3aXRoIDxIUExpbmt0b090aGVySFBUYWIgdGFiPVwid2VzdGhvZmZpbnZcIiB0ZXh0PVwiS2F0cmluIFdlc3Rob2ZmXCIgLz4sIHNoZSBpbnZpdGVkIHVzIHRvIGpvaW4gYSBmZXcgcGh5c2lvdGhlcmFweSBzZXNzaW9ucyBcdTIwMTMgbm90IGp1c3QgYXMgc3BlY3RhdG9ycyBidXQgYXMgcGFydGljaXBhbnRzLiBXZSBnbGFkbHkgYWNjZXB0ZWQgYW5kIHZpc2l0ZWQgaGVyIGluIGhlciBwcmFjdGljZS4gT3ZlciBhIGZldyBob3Vycywgd2UgdG9vayBwYXJ0IGluIGZvdXIgc2Vzc2lvbnMgd2l0aCBkaWZmZXJlbnQgY2hpbGRyZW4gXHUyMDEzIG5vdCBhbGwgb2YgdGhlbSBDRiBwYXRpZW50cy4gIDwvYT5dLFxyXG4gICAgaW5zaWdodHM6IFwiRHVyaW5nIHRoZSBzZXNzaW9ucywgd2UgY291bGQgYXNrIEthdHJpbiBhcyB3ZWxsIGFzIHRoZSByZXNwZWN0aXZlIHBhcmVudHMgYW5kIGNoaWxkcmVuIHF1ZXN0aW9ucy4gV2UgbGVhcm5lZCB0aGF0IGJyZWF0aGluZyB0aGVyYXB5IGlzIGFsc28gdXNlZnVsIGZvciBvdGhlciBpbGxuZXNzZXMgYW5kIHRoYXQgeW91IGNhbiBlYXNpbHkgZG8gc29tZSBvZiB0aGUgZXhlcmNpc2VzIHlvdXJzZWxmLiBEZXNwaXRlIGhhdmluZyAgQ3lzdGljIEZpYnJvc2lzLCB0aGUgY2hpbGRyZW4gd2VyZSBiZXR0ZXIgYXQgdGhlIGJyZWF0aGluZyBleGVyY2lzZXMgdGhhbiB3ZSBhbmQgS2F0cmluIHdlcmUhIFRoZSBzZXNzaW9ucyB0YWtlIDMwIHRvIDYwIG1pbnV0ZXMgYW5kIGluY2x1ZGUgYm90aCBtYW51YWwgdGhlcmFweSBhbmQgcGxheWZ1bCBlbGVtZW50cyB0byBoZWxwIGVuZ2FnZSB0aGUgY2hpbGRyZW4uIE1vc3Qgb2xkZXIgY2hpbGRyZW4gcmFuZ2UgZnJvbSBtaWxkbHkgdW5oYXBweSB0byBlbnRodXNpYXN0aWMsIGJ1dCBiYWJpZXMgb2Z0ZW4gY3J5IGR1cmluZyB0aGUgdHJlYXRtZW50cyBhcyBpdCBmZWVscyB1bmNvbWZvcnRhYmxlLiBUaGlzIGlzIG9mdGVuIGhhcmQgb24gdGhlIHBhcmVudHMgZXZlbiB0aG91Z2ggdGhlIHRyZWF0bWVudCBicmluZ3MgZ29vZCByZXN1bHRzLiBBIGxvdCBvZiBjaGlsZHJlbiB0ZW5kIHRvIGhpZGUgdGhhdCB0aGV5IGhhdmUgbXVjdXMgc2l0dGluZyBpbiB0aGVpciBsdW5ncyBieSBzdXBwcmVzc2luZyBjb3VnaHMuIEVzcGVjaWFsbHkgd2l0aCB5b3VuZyBjaGlsZHJlbiwgaXQgaXMgaW1wb3J0YW50IHRvIHN0YXkgb24gdG9wIG9mIGl0IGFuZCBkbyByZWd1bGFyIGJyZWF0aGluZyB0aGVyYXB5IGV2ZW4gaWYgaXQgc2VlbXMgbGlrZSBpdCBpcyBjdXJyZW50bHkgbm90IG5lY2Vzc2FyeS4gV2UgYWxzbyBsZWFybmVkIGFib3V0IHRoZSB2YXJpb3VzIGluZm9ybWF0aW9uYWwgbWF0ZXJpYWwgYWltZWQgYXQgY2hpbGRyZW4gdG8gaGVscCBleHBsYWluIHRoZXJhcGllcyBhbmQgc3ltcHRvbXMgdG8gdGhlbSBhbmQgd2hhdCBhY2Nlc3NvcmllcyBmb3IgYnJlYXRoaW5nIHRoZXJhcHkgdGhlcmUgYXJlLiBGb3IgZXhhbXBsZSwgYSBmbHV0dGVyIGlzIHRvIHRyYWluIGJyZWF0aGluZyBvdXQgZm9yY2VmdWxseSBieSBicmVhdGhpbmcgYWdhaW5zdCBhIHNtYWxsIHdlaWdodCBhbmQgYSBiaW5kZXIgY2FuIGJlIHdvcm4gYXQgbmlnaHQgdG8gcHJvbW90ZSBkZWVwIGJyZWF0aGluZy4gXCIsXHJcbiAgICBpbXBsZW1lbnRhdGlvbjogXCJUaGUgbW9zdCBpbXBvcnRhbnQgdGhpbmcgd2FzIHRoYXQgYm90aCBLYXRyaW4gYW5kIHRoZSBwYXJlbnRzIGFncmVlZCB0aGF0IHRoZSBjaGlsZHJlbiB3ZXJlIGFibGUgdG8gaW5oYWxlIGF0IGFuIGVhcmx5IGFnZSBhbmQgdGhhdCB0aGVyZSB3ZXJlIGdlbmVyYWxseSBubyBwaHlzaWNhbCBwcm9ibGVtcyB3aXRoIGluaGFsYXRpb24gaW4gZ2VuZXJhbC4gVGhpcyByZWluZm9yY2VkIG91ciBkZWNpc2lvbiB0byB3b3JrIHRvd2FyZHMgZGVsaXZlcnkgYnkgaW5oYWxhdGlvbi4gSXQgd2FzIHZlcnkgaW50ZXJlc3RpbmcgdG8gc2VlIHRoZSBkaWZmZXJlbnQgd2F5cyBjaGlsZHJlbiBkZWFsIHdpdGggdGhlaXIgZXhlcmNpc2VzIGFuZCBoZWFyIGFib3V0IHRoZSBwcm9ncmVzcyB0aGV5IG1hZGUuICBcIixcclxuICAgIHRleHQ6IFs8b2w+XHJcbiAgICAgIDxsaT5cclxuICAgICAgICA8Yj5Sb2JpbiAoJmd0OzEwKTwvYj5cclxuICAgICAgICA8cD5Sb2JpbiB3aWxsIHNvb24gc3RhcnQgNHRoIGdyYWRlIGFuZCB0YWtlcyBtb2R1bGF0b3JzLiBTaW5jZSB0YWtpbmcgdGhlbSwgbWFueSBwcm9ibGVtcyBoYXZlIHN1YnNpZGVkLiBObyByZWd1bGFyIHBuZXVtb25pYSB3aXRoIGxvbmcgaG9zcGl0YWwgc3RheXMgYW5kIHRoZSBtdWN1cyBjb21lcyBvdXQgZWFzaWVyLiBOZXZlcnRoZWxlc3MsIFJvYmluIHN0aWxsIGdvZXMgdG8gcGh5c2lvdGhlcmFweSByZWd1bGFybHkgdG8gZG8gbWFudWFsIGJyZWF0aGluZyB0aGVyYXB5IHRvIGdldCB0aGUgbXVjdXMgb3V0LiBLYXRyaW4gdGVsbHMgdXMgaG93IHRoZSBtdWN1cyBjaGFuZ2VzIGNvbG9yIHRoZSBsb25nZXIgaXQgc3RheXMgaW4gdGhlIGx1bmdzLiBUaGUgbmV3IG11Y3VzIGlzIHdoaXRlLCBhbmQgdGhlIG9sZGVyIG11Y3VzIGdldHMgeWVsbG93IGZpcnN0IGFuZCB0aGVuIGdldHMgZGFya2VyIHdpdGggdGltZSB1bnRpbCBpdCByZWFjaGVzIGEgYmxhY2sgY29sb3IuIE5vd2FkYXlzLCBSb2JpbiByYXJlbHkgaGFzIGRhcmsgbXVjdXMgb3IgY2x1bXBzLCBidXQgd2UgY2FuIHN0aWxsIGhlYXIgdGhlIHJ1c3RsaW5nIGFzIEthdHJpbiBzdGFydHMgdGhlIGF1dG9nZW5vdXMgZHJhaW5hZ2UgKEF1dG9nZW5lIERyYWluYWdlKSBieSBwcmVzc2luZyBvbiBSb2JpbidzIGNoZXN0LiBUaGUgZ29hbCBpcyB0byBnZXQgb3V0IHRoZSBtdWN1cyBkZWVwIGluIHRoZSBsdW5ncy4gVG8gZG8gdGhhdCwgUm9iaW4gbXVzdCByZXBlYXQgdGhlIHJvdXRpbmUgXHUyMDEzIGJyZWF0aGluZyBpbiBkZWVwbHksIGhvbGRpbmcsIGJyZWF0aGluZyBvdXQgXHUyMDEzIG11bHRpcGxlIHRpbWVzIGFuZCB0aGVuIGNvdWdoIGFuZCBzcGl0IHRoZSBtdWN1cyBvdXQuIFNvbWV0aW1lcyBpdCB3b3JrcywgYnV0IG90aGVyIHRpbWVzIHRoZSBtdWN1cyBkb2VzIG5vdCBjb21lIG91dCBlYXNpbHkuIFdoaWxlIGFjY29yZGluZyB0byBLYXRyaW4gdGhlIGF1dG9nZW5vdXMgZHJhaW5hZ2UgaXMgdGhlIGdvbGQgc3RhbmRhcmQsIHRoZXkgZG8gb3RoZXIgdXNlZnVsIGV4ZXJjaXNlcywgdG9vLiBGb3IgZXhhbXBsZSwgcHJlc3NpbmcgdGhlIFZvanRhIHBvaW50cyAod2hpY2ggdGhlIGNoaWxkcmVuIGNhbGwgXHUyMDFDdGhlIG1hZ2ljIHBvaW50c1x1MjAxRCkgb24gdGhlIGNoZXN0IHRvIGFjdGl2YXRlIGEgZGVlcCBicmVhdGhpbmcgcmVmbGV4IGFuZCBnZXQgYWlyIGludG8gcGFydHMgb2YgdGhlIGx1bmdzIHRoYXQgbWF5IG5vdCBoYXZlIGJlZW4gdXNlZCBwcmV2aW91c2x5LiBPciBwaHlzaWNhbCBhY3Rpdml0eSBzdWNoIGFzIGNsaW1iaW5nIGEgZmV3IHN0ZXBzIG9uIGEgY2xpbWJpbmcgbGFkZGVyIGFuZCBoYW5naW5nIG9uIGl0IHRvIHN0cmV0Y2ggdGhlIHRob3JheCBtdXNjbGVzLjwvcD5cclxuICAgICAgPC9saT5cclxuICAgICAgPGxpPlxyXG4gICAgICAgIDxiPlNhbSAoJmx0OzEwKSAmIEFsZXggKCZsdDsxMCk8L2I+XHJcbiAgICAgICAgPHA+U2FtIGFuZCBBbGV4IGFyZSBzaWJsaW5ncyBhbmQgZG8gbm90IGhhdmUgQ0YgYnV0IGFub3RoZXIgYWZmbGljdGlvbiB0aGF0IGNhdXNlcyBhIHBlcnNpc3RlbnQgY291Z2guIFRoZXkgY29tZSB0b2dldGhlciB3aXRoIGEgcGFyZW50IHR3aWNlIGEgd2VlayBhbmQgZG8gaGFuZ2luZyBleGVyY2lzZXMgZnJvbSB0aGUgY2VpbGluZywgbmFzYWwgc2hvd2VycyB3aXRoIG5lZWRsZWxlc3Mgc3lyaW5nZXMsIGFuZCB0aGUgXHUyMDFDbWFnaWMgcG9pbnRzLlx1MjAxRCBLYXRyaW4gYWxzbyBjaGVja3MgdGhlaXIgbHVuZ3MgZm9yIG11Y3VzIGluIGEgc2ltaWxhciBtYW5uZXIgdG8gYXV0b2dlbm91cyBkcmFpbmFnZS4gV2UsIHRvbywgdHJpZWQgdG8gZG8gdGhlIG5hc2FsIHNob3dlciwgYW5kIGJlaW5nIGEgZ3Jvd24tdXAgcmVhbGx5IGRvZXMgbm90IGd1YXJhbnRlZSBiZWluZyBhYmxlIHRvIGRvIHRoYXQgcHJvcGVybHkhIFRoaXMgaGlnaGxpZ2h0ZWQgdGhhdCB0aGUgY2hpbGRyZW4ga25vdyBhbGwgdGhlaXIgZXhlcmNpc2VzIGJ5IGhlYXJ0IGF0IGEgeW91bmcgYWdlLiBPbiByZXF1ZXN0LCB0aGVpciBwYXJlbnQgdG9sZCB1cyB0aGF0IHRoZSBwaHlzaW90aGVyYXB5IG1hZGUgYSBiaWcgZGlmZmVyZW5jZSBmb3IgYm90aCBvZiB0aGVtLjwvcD5cclxuICAgICAgPC9saT5cclxuICAgICAgPGxpPlxyXG4gICAgICAgIDxiPlRvbmkgKCZsdDs1KTwvYj5cclxuICAgICAgICA8cD5Ub25pIGhhcyBhIGxpZ2h0IHZlcnNpb24gb2YgQ0YgYW5kIGhhcyBiZWVuIGRvaW5nIHBoeXNpb3RoZXJhcHkgd2l0aCBLYXRyaW4gc2luY2Ugc2hvcnRseSBhZnRlciBiaXJ0aC4gSW4gY29udHJhc3QgdG8gbW9zdCBjaGlsZHJlbiB3ZSBtZXQgb3IgdGFsa2VkIGFib3V0LCBUb25pIHJlZnVzZXMgbWVkaWNhdGlvbi4gTW9kdWxhdG9ycyBhcmUgYSBwb3NzaWJpbGl0eSwgYnV0IHRoZW0gYW5kICdldmVyeXRoaW5nIHN0aW5reScgaXMgYSBuby1nbywgZXZlbiB0aG91Z2ggaW5oYWxpbmcgd291bGQgYmUgdmVyeSBiZW5lZmljaWFsIGR1ZSB0byB0aGUgbXVjdXMgYnVpbGR1cC4gTW9zdCBleGVyY2lzZXMgcmVzdWx0IGluIGNyeWluZyBhbmQgc2NyZWFtaW5nLCB3aGljaCBpcyB2ZXJ5IGV4aGF1c3RpbmcgZm9yIHRoZSBjaGlsZC4gRHVlIHRvIHRoZSBsaWdodCBuYXR1cmUgb2YgVG9uaSdzIHZhcmlhbnQsIHRoZXkgYXJlIG5vdCBpbiBkYW5nZXIsIGJ1dCBhIHBlcm1hbmVudCB0aGVyYXB5IHdvdWxkIGJlIHZlcnkgYmVuZWZpY2lhbC48L3A+XHJcbiAgICAgIDwvbGk+XHJcbiAgICAgIDxsaT5cclxuICAgICAgICA8Yj5DaHJpc3NpICgmZ3Q7MTApPC9iPlxyXG4gICAgICAgIDxwPkNocmlzc2kgdGFrZXMgbW9kdWxhdG9ycyBhbmQgd2lsbCBzb29uIHRha2UgYSB0cmlwIHRvIGEgd2F0ZXIgcGFyayB3aXRoIHNvbWUgZnJpZW5kcy4gS2F0cmluIHRlYWNoZXMgdXMgdGhhdCB3aGVuIHRoZSBjaGlsZHJlbiBkbyBub3QgYnJlYXRoZSBvdXQgcHJvcGVybHksIGFpciBzdGF5cyBpbiB0aGUgbHVuZ3MgYW5kIGNhdXNlcyBoeXBlcmluZmxhdGlvbiBcdTIwMTMgd2l0aCB3aGljaCBpdCBpcyBhY3R1YWxseSBoYXJkZXIgdG8gZmxvYXQgaW4gd2F0ZXIhIEFmdGVyIHRoZSBtYW51YWwgZHJhaW5hZ2UsIEthdHJpbiBnZXRzIGFsbCBvZiB1cyBnbGFzc2VzIHdpdGggd2F0ZXIgYW5kIGRpc2ggc29hcCBhbmQgc3RyYXdzLiBCbG93aW5nIGJ1YmJsZXMgaXMgYSBwbGF5ZnVsIHdheSB0byB0cmFpbiBob3cgdG8gcHJvcGVybHkgYnJlYXRoZSBvdXQgYnkgZWl0aGVyIHRyeWluZyB0byBibG93IGJ1YmJsZXMgYXMgbG9uZyBhcyBwb3NzaWJsZSBvciB0cnlpbmcgdG8gbWFrZSBhbiBleGlzdGluZyBidWJibGUgYXMgYmlnIGFzIHBvc3NpYmxlITwvcD5cclxuICAgICAgPC9saT5cclxuICAgIDwvb2w+LF0sXHJcbiAgICBzdW1tYXJ5OiBcIkluIHRoZSB2aXNpdCB3aXRoIEthdHJpbiBXZXN0aG9mZiwgd2UgcGFydGljaXBhdGVkIGluIHBoeXNpb3RoZXJhcHkgc2Vzc2lvbnMgZm9yIGNoaWxkcmVuLCBpbmNsdWRpbmcgdGhvc2Ugd2l0aCAgQ3lzdGljIEZpYnJvc2lzIChDRikuIFdlIG9ic2VydmVkIHRoYXQgYnJlYXRoaW5nIHRoZXJhcHkgaXMgYmVuZWZpY2lhbCBmb3IgdmFyaW91cyBpbGxuZXNzZXMgYW5kIGxlYXJuZWQgdGVjaG5pcXVlcyB0aGF0IGNhbiBiZSBwcmFjdGljZWQgYXQgaG9tZS4gU2Vzc2lvbnMgbGFzdCAzMCB0byA2MCBtaW51dGVzLCBjb21iaW5pbmcgbWFudWFsIHRoZXJhcHkgd2l0aCBwbGF5ZnVsIGVsZW1lbnRzLiBXaGlsZSBvbGRlciBjaGlsZHJlbiBlbmdhZ2VkIHdlbGwsIGluZmFudHMgb2Z0ZW4gZm91bmQgdGhlIGV4ZXJjaXNlcyB1bmNvbWZvcnRhYmxlLiBJbXBvcnRhbnRseSwgYm90aCBLYXRyaW4gYW5kIHBhcmVudHMgbm90ZWQgdGhhdCBjaGlsZHJlbiBjb3VsZCBpbmhhbGUgd2l0aG91dCBpc3N1ZXMgZnJvbSBhbiBlYXJseSBhZ2UsIHJlaW5mb3JjaW5nIG91ciBmb2N1cyBvbiBpbmhhbGF0aW9uIGRlbGl2ZXJ5IG1ldGhvZHMgZm9yIHRoZXJhcGllcy5cIixcclxuICAgIHBpY3R1cmV1cmxfaW50ZXJ2aWV3OlwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2hwL2Jlc3VjaC13ZXN0aG9mZi91bnRpdGxlZC1kZXNpZ24ucG5nXCIsXHJcbiAgICBtb250aHM6IFwianVuZVwiXHJcbiAgfSxcclxuICB7XHJcbiAgICB0aXRsZTogXCJEci5cIixcclxuICAgIHZvcm5hbWU6IFwiTWFyY29cIixcclxuICAgIG5hY2hubmFtZTogXCJSYWR1a2ljXCIsXHJcbiAgICBqb2I6IFwiUG9zdGRvYyBhdCBBRyBDZWxsdWxhciBhbmQgTW9sZWN1bGFyIEJpb3RlY2hub2xvZ3lcIixcclxuICAgIGFmZmlsaWF0aW9uOiBcIlVuaXZlcnNpdHkgQmllbGVmZWxkXCIsXHJcbiAgICBwaWN0dXJldXJsOiBwaWNzWydtYXJjbyddLFxyXG4gICAgdGFnOiBcIkFjYWRlbWlhXCIsXHJcbiAgICBoZWFkaW5nOiBcIk9wdGltaXppbmcgTE5QIFRyYW5zZmVjdGlvbjogSW5zaWdodHMgaW50byB3b3JraW5nIHdpdGggTE5QIEtpdHNcIixcclxuICAgIGludGVydmlld3RhYmlkOiBcInJhZHVraWNcIixcclxuICAgIGxhbmd1YWdlOlwiZGVcIixcclxuXHJcbiAgICBxdW90ZTogXCJBZnRlciB0aGUgaW50ZXJ2aWV3IHdpdGggRHIgTWFyY28gUmFkdWtpYywgd2Ugd2VyZSBhYmxlIHRvIHByb2R1Y2UgTE5QcyBmb3IgdGhlIGZpcnN0IHRpbWUuXCIsXHJcbiAgICBxdW90ZU5hY2huYW1lOiBcIldpZXNuZXIsIFRlYW1tZW1iZXJcIixcclxuICAgIHF1b3RlVm9ybmFtZTogXCJMaXNhXCIsXHJcbiAgICBhaW1vZmNvbnRhY3Q6IFs8cD5UaGUgcHJpbWFyeSBvYmplY3RpdmUgd2FzIHRvIHRhY2tsZSBjaGFsbGVuZ2VzIGluIExOUCB0cmFuc2ZlY3Rpb24gcmVsYXRlZCB0byBtYW51ZmFjdHVyaW5nIGFuZCBjZWxsIHRyYW5zZmVjdGlvbiBtZXRob2RzLiBUaGUgZm9jdXMgd2FzIG9uIGltcHJvdmluZyBMTlAgZm9ybXVsYXRpb24gYW5kIGFwcGxpY2F0aW9uIHByb3RvY29scyB0byBlbmhhbmNlIGdlbmUgZGVsaXZlcnkgZWZmZWN0aXZlbmVzcyxcclxuICAgICAgIGFuZCBvbiBhY3F1aXJpbmcgc3BlY2lhbGl6ZWQgZXhwZXJ0aXNlIHRvIG9wdGltaXplIHRoZXNlIHByb2Nlc3Nlcy4gRHIuIFJhZHVraWMgZnJvbSBCaWVsZWZlbGQgVW5pdmVyc2l0eSBwcm92aWRlZCBjcnVjaWFsIGluc2lnaHRzIGZvciB0cm91Ymxlc2hvb3RpbmcgYW5kIHByb3RvY29sIG9wdGltaXphdGlvbiB0byBlbmhhbmNlIExOUCBlZmZpY2FjeS4gPC9wPl0sXHJcbiAgICBpbnNpZ2h0czogWzxwPiBEci4gUmFkdWtpYyB0b2xkIHVzIHRoYXQgdGhlIGVmZmljaWVuY3kgb2YgTE5QcyBpcyBzaWduaWZpY2FudGx5IGFmZmVjdGVkIGJ5IGxpcGlkLXRvLW51Y2xlaWMgYWNpZCByYXRpb3MgYW5kIHRoYXQgb3B0aW1pemluZyByYXRpb3MgbGlrZSAyMjoxIHZlcnN1cyAxMDoxIGNhbiBpbXByb3ZlIHRyYW5zZmVjdGlvbi4gXHJcbiAgICAgIHBIIGFkanVzdG1lbnRzIGFuZCBidWZmZXIgY29tcG9zaXRpb24gKGUuZy4sIG1vZGlmeWluZyBzb2RpdW0gYWNldGF0ZSBzb2x1dGlvbnMpIGFyZSBhbHNvIGNydWNpYWwgZm9yIExOUCBwZXJmb3JtYW5jZS4gUHJvcGVyIHN0b3JhZ2UgYXQgNCBcdTAwQjBDLCBwcmVjaXNlIHBpcGV0dGluZywgYW5kIHRob3JvdWdoIG1peGluZyBhcmUgZXNzZW50aWFsIHRvIG1haW50YWluIExOUCBmdW5jdGlvbmFsaXR5LiBcclxuICAgICAgSW4gYWRkaXRpb24sIGhlIHN1Z2dlc3RlZCBxdWFsaXR5IGNvbnRyb2wgbWVhc3VyZXMgc3VjaCBhcyBmbHVvcmVzY2VuY2UgdGVzdGluZywgemV0YSBwb3RlbnRpYWwsIGFuZCBsaWdodCBzY2F0dGVyaW5nIGFuYWx5c2VzIGhlbHAgZW5zdXJlIG91ciBMTlAgaXMgc3RhYmxlLiBBZGRpdGlvbmFsbHksIHNwcmF5IGRyeWluZyB3YXMgZXZhbHVhdGVkIGZvciBwb3RlbnRpYWwgdXNlIGluIGxvbmctdGVybSBMTlAgc3RhYmlsaXphdGlvbi4gPC9wPl0sXHJcbiAgICBpbXBsZW1lbnRhdGlvbjogWzxwPkluY29ycG9yYXRpbmcgdGhlIGluc2lnaHRzIERyLiBSYWR1a2ljIGFuZCBhZHZpY2UgZnJvbSByZWNlbnQgY29uc3VsdGF0aW9ucywgd2UgYWRqdXN0ZWQgdGhlIGxpcGlkLXRvLW51Y2xlaWMgYWNpZCByYXRpbyBmcm9tIDIyOjEgdG8gMTA6MSB0byBlbmhhbmNlIGVmZmljaWVuY3kgYW5kIG1vZGlmaWVkIHRoZSBwSCBhbmQgY29uY2VudHJhdGlvbiBvZiBzb2RpdW0gYWNldGF0ZSBzb2x1dGlvbnMgZm9yIGJldHRlciBwYWNrYWdpbmcuIFxyXG4gICAgICBTdG9yYWdlIGNvbmRpdGlvbnMgd2VyZSBzdHJpY3RseSBtYW5hZ2VkIGF0IDQgXHUwMEIwQywgYW5kIHBpcGV0dGluZy9taXhpbmcgdGVjaG5pcXVlcyB3ZXJlIHJlZmluZWQgdG8gZW5zdXJlIHF1YWxpdHkgY29uc2lzdGVuY3kuIFF1YWxpdHkgY29udHJvbCB3YXMgZXhwYW5kZWQgdG8gaW5jbHVkZSBmbHVvcmVzY2VuY2UgdGVzdGluZywgemV0YSBwb3RlbnRpYWwgbWVhc3VyZW1lbnRzLCBhbmQgbGlnaHQgc2NhdHRlcmluZywgYWxvbmdzaWRlIGN5dG90b3hpY2l0eSB0ZXN0cy4gXHJcbiAgICAgIFRoZXNlIGltcHJvdmVtZW50cyBub3Qgb25seSBhZGRyZXNzIHRyYW5zZmVjdGlvbiBjaGFsbGVuZ2VzIGJ1dCBhbHNvIHN0cmVuZ3RoZW4gb3VyIGZvdW5kYXRpb24gZm9yIGZ1dHVyZSBMTlAgYXBwbGljYXRpb25zLiA8L3A+XSxcclxuICAgIHN1bW1hcnk6IFwiVGhlIGFpbSBvZiB0aGUgY29udGFjdCB3YXMgdG8gYWRkcmVzcyBjaGFsbGVuZ2VzIGluIExOUCB0cmFuc2ZlY3Rpb24gYW5kIGltcHJvdmUgZm9ybXVsYXRpb24gcHJvdG9jb2xzIGZvciBlbmhhbmNlZCBnZW5lIGRlbGl2ZXJ5LiBEci4gUmFkdWtpYyBoaWdobGlnaHRlZCB0aGUgaW1wb3J0YW5jZSBvZiBsaXBpZC10by1udWNsZWljIGFjaWQgcmF0aW9zLCByZWNvbW1lbmRpbmcgYWRqdXN0bWVudHMgbGlrZSAxMDoxIGZvciBiZXR0ZXIgdHJhbnNmZWN0aW9uIGVmZmljaWVuY3kuIEhlIGFsc28gZW1waGFzaXplZCBvcHRpbWl6aW5nIHBIIGFuZCBidWZmZXIgY29tcG9zaXRpb24sIGFzIHdlbGwgYXMgc3RyaWN0IHN0b3JhZ2UgYW5kIG1peGluZyBwcmFjdGljZXMuIEFkZGl0aW9uYWxseSwgcXVhbGl0eSBjb250cm9sIG1lYXN1cmVzIHN1Y2ggYXMgZmx1b3Jlc2NlbmNlIHRlc3RpbmcgYW5kIHpldGEgcG90ZW50aWFsIGFuYWx5c2lzIHdlcmUgc3VnZ2VzdGVkIHRvIGVuc3VyZSBMTlAgc3RhYmlsaXR5LiBUaGVzZSBpbnNpZ2h0cyB3ZXJlIGltcGxlbWVudGVkIGludG8gdGhlIHByb2plY3QsIGltcHJvdmluZyB0cmFuc2ZlY3Rpb24gZWZmaWNpZW5jeSBhbmQgcGF2aW5nIHRoZSB3YXkgZm9yIGZ1dHVyZSBMTlAgYXBwbGljYXRpb25zLlwiLFxyXG4gICAgbW9udGhzOiBcIkp1bmVcIlxyXG4gIH0sXHJcbiAge1xyXG4gICAgdGl0bGU6IFwiUHJvZi4gRHIuXCIsXHJcbiAgICB2b3JuYW1lOiBcIkVyaGFyZFwiLFxyXG4gICAgbmFjaG5uYW1lOiBcIldpc2NobWV5ZXJcIixcclxuICAgIGpvYjogXCJSZXNlYXJjaCBHcm91cCBDZWxsdWxhciBOZXVyb3BoeXNpb2xvZ3lcIixcclxuICAgIGFmZmlsaWF0aW9uOiBcIlVuaXZlcnNpdHkgQmllbGVmZWxkXCIsXHJcbiAgICBwaWN0dXJldXJsOiBwaWNzWyd3aXNjaG1leWVyJ10sXHJcbiAgICB0YWc6IFwiQWNhZGVtaWFcIixcclxuICAgIGhlYWRpbmc6IFwiRGlzY3Vzc2lvbiBvbiBUZWNobmlxdWVzIGZvciBNZWFzdXJpbmcgQ0ZUUiBDaGFubmVsIEZ1bmN0aW9uYWxpdHlcIixcclxuICAgIGludGVydmlld3RhYmlkOiBcInBhdGNoY2xhbXBcIixcclxuXHJcbiAgICBsYW5ndWFnZTogXCJkZVwiLFxyXG4gICAgcXVvdGVOYWNobmFtZTogXCJHdWNrZXMsIFRlYW1tZW1iZXJcIixcclxuICAgIHF1b3RlVm9ybmFtZTogXCJJc2FiZWxsXCIsXHJcbiAgICBxdW90ZTogXCJJbml0aWFsbHkgd2UgaGFkbid0IGNvbnNpZGVyZWQgcGF0Y2gtY2xhbXAgbWVhc3VyZW1lbnRzIGluIG91ciBzZXQgb2YgZG93bnN0cmVhbSBhcHBsaWNhdGlvbnMsIGJ1dCBpdFx1MjAxOXMgcHJvdmVuIHRvIGJlIGFuIGV4Y2VwdGlvbmFsbHkgc2Vuc2l0aXZlIG1ldGhvZCBmb3IgYXNzZXNzaW5nIENGVFIgY29uZHVjdGFuY2UuXCIsXHJcbiAgICBhaW1vZmNvbnRhY3Q6IFs8cD5BcyBwYXJ0IG9mIG91ciBwcm9qZWN0LCB3ZSBhaW1lZCB0byBkZW1vbnN0cmF0ZSB0aGUgZnVuY3Rpb25hbGl0eSBvZiB0aGUgQ0ZUUiBpb24gY2hhbm5lbCwgYWZ0ZXIgcmVzdG9yaW5nXHJcbiAgICAgIGl0IHRocm91Z2ggb3VyIG9wdGltaXplZCBQcmltZSBFZGl0aW5nLCBieSB1c2luZyBQYXRjaC1DbGFtcCBtZWFzdXJlbWVudHMuIFRvIGVuc3VyZSB0aGUgb3B0aW1hbCB1c2Ugb2YgdGhlXHJcbiAgICAgIFBhdGNoLUNsYW1wIGFuZCB0byBnYWluIGFuIGluc2lnaHQgaW50byBlbGVjdHJvcGh5c2lvbG9neSwgd2UgYXNrZWQgZXhwZXJ0cyBmcm9tIHRoZSBtZWRpY2FsIGZhY3VsdHkgYXRcclxuICAgICAgQmllbGVmZWxkIFVuaXZlcnNpdHkgdG8gY3JpdGljYWxseSBleGFtaW5lIG91ciBtZWFzdXJlbWVudCBwbGFubmluZy4gUHJvZi4gRHIuIEVyaGFyZCBXaXNjaG1leWVyLCBhblxyXG4gICAgICBleHBlcmllbmNlZCBzY2llbnRpc3QgaW4gdGhpcyBmaWVsZCB3aG8gaGFzIHdvcmtlZCBhdCB0aGUgTWF4IFBsYW5jayBJbnN0aXR1dGUgZm9yIEJpb3BoeXNpY2FsIENoZW1pc3RyeVxyXG4gICAgICBpbiBHXHUwMEY2dHRpbmdlbiwgdGhlIGRldmVsb3BtZW50IHNpdGUgb2YgdGhlIFBhdGNoLUNsYW1wIHRlY2huaXF1ZTxTY3JvbGxMaW5rV2l0aENoaWxkIHRhcmdldElkPVwiZGVzYy0xXCI+PHN1cD4xPC9zdXA+PC9TY3JvbGxMaW5rV2l0aENoaWxkPiwgYW5kIGN1cnJlbnRseSBsZWFkcyB0aGUgQ2VsbHVsYXJcclxuICAgICAgTmV1cm9waHlzaW9sb2d5IHdvcmtpbmcgZ3JvdXAgYXQgQmllbGVmZWxkIFVuaXZlcnNpdHksIHNlZW1lZCB0byBiZSBhbiBpZGVhbCBpbnRlcnZpZXdlZS4gSGlzXHJcbiAgICAgIGtub3dsZWRnZSBhbmQgZXhwZXJpZW5jZSBwcm9taXNlZCB2YWx1YWJsZSBpbnNpZ2h0cyBhbmQgYWR2aWNlIGZvciBjb25kdWN0aW5nIGFuZCBvcHRpbWl6aW5nIG91clxyXG4gICAgICBleHBlcmltZW50cy4gPC9wPl0sXHJcbiAgICBwaWN0dXJldXJsX2FpbTogXCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvZm9yLXdpa2ktdGV4dHMvaHAtcGF0Y2gtY2xhbXAvd2lzY2htZXllci1pbnRlcnZpZXcud2VicFwiLFxyXG4gICAgaW5zaWdodHM6IFs8PjxwPlByb2YuIERyLiBXaXNjaG1leWVyIHRhdWdodCB1cyBhYm91dCB0aGUgd29ya2Zsb3cgb2YgdGhlIFBhdGNoLUNsYW1wIHRlY2huaXF1ZS4gSGUgaGlnaGxpZ2h0ZWQgdGhlIG5lZWRcclxuICAgICAgZm9yIHNwZWNpYWxpemVkIGVsZWN0cm9kZXMgYW5kIGdsYXNzIHBpcGV0dGVzIHRoYXQgbXVzdCBmb3JtIGEgc21vb3RoIHN1cmZhY2UgZGV2b2lkIG9mIHRoZSBleHRyYWNlbGx1bGFyXHJcbiAgICAgIG1hdHJpeCAoRUNNKS4gQWRkaXRpb25hbGx5LCBoZSBwb2ludGVkIG91dCB0aGF0IG1lYXN1cmluZyBDRlRSIGNvbmR1Y3Rpdml0eSB3aXRoIHRoZSBQYXRjaC1DbGFtcCB0ZWNobmlxdWVcclxuICAgICAgcG9zZXMgYSB0ZWNobmljYWwgY2hhbGxlbmdlIGR1ZSB0byB0aGUgbG93IGN1cnJlbnRzIGludm9sdmVkPFNjcm9sbExpbmtXaXRoQ2hpbGQgdGFyZ2V0SWQ9XCJkZXNjLTJcIj48c3VwPjI8L3N1cD48L1Njcm9sbExpbmtXaXRoQ2hpbGQ+LiBIZSByZWNvbW1lbmRlZCB1c2luZyBleHByZXNzaW9uIHZlY3RvcnNcclxuICAgICAgZm9yIG92ZXJleHByZXNzaW5nIHRoZSBDRlRSIGdlbmUgaW4gSEVLIGNlbGxzIGluc3RlYWQgb2YgZXBpdGhlbGlhbCBjZWxscyBmcm9tIGEgbmFzYWwgc3dhYiB0byBhY2hpZXZlXHJcbiAgICAgIGJldHRlciByZXN1bHRzLiBTaW5jZSBQYXRjaC1DbGFtcCBtZWFzdXJlbWVudHMgcmVxdWlyZSBhIHZlcnkgc2Vuc2l0aXZlIHRlc3RpbmcgZW52aXJvbm1lbnQsIGV2ZW5cclxuICAgICAgY2hhbGxlbmdpbmcgZm9yIHRoZSBtb3N0IGV4cGVyaWVuY2VkIHNjaWVudGlzdHMsIFByb2YuIERyLiBXaXNjaG1leWVyIGludml0ZWQgdXMgdG8gY29uZHVjdCB0aGVcclxuICAgICAgbWVhc3VyZW1lbnRzIHRvZ2V0aGVyIHdpdGggbWVtYmVycyBvZiBoaXMgZ3JvdXAuXHJcbiAgICA8L3A+XHJcbiAgICAgIDxwPkluIGFkZGl0aW9uIHRvIHRoZSBQYXRjaC1DbGFtcCB0ZWNobmlxdWUsIFByb2YuIERyLiBXaXNjaG1leWVyIGluZm9ybWVkIHVzIGFib3V0IEUtY2lzIG1lYXN1cmVtZW50cyBhcyBhXHJcbiAgICAgICAgY3VycmVudCBlbGVjdHJvcGh5c2lvbG9naWNhbCBtZWFzdXJlbWVudCBtZXRob2QgYWxvbmdzaWRlIHRoZSBQYXRjaC1DbGFtcCB0ZWNobmlxdWUuIFRoaXMgbWV0aG9kIGFsbG93c1xyXG4gICAgICAgIHRoZSBtZWFzdXJlbWVudCBvZiB0aGUgbWVtYnJhbmUgcG90ZW50aWFsIGFib3ZlIGFuZCBiZWxvdyBhIG1vbm9sYXllciBvZiBjb25mbHVlbnQgY2VsbHM8U2Nyb2xsTGlua1dpdGhDaGlsZCB0YXJnZXRJZD1cImRlc2MtM1wiPjxzdXA+Mzwvc3VwPjwvU2Nyb2xsTGlua1dpdGhDaGlsZD4uIENvbnNlcXVlbnRseSxcclxuICAgICAgICBpdCBlbmFibGVzIHByZWNpc2UgbWVhc3VyZW1lbnQgb2YgY29uZHVjdGl2aXR5IGRlcGVuZGVudCBvbiBDRlRSIGV4cHJlc3Npb24uIDwvcD5cclxuICAgIDwvPl0sXHJcbiAgICBpbXBsZW1lbnRhdGlvbjogWzxwPldlIGRlY2lkZWQgdG8gdXNlIEhFSzI5M1R7LypbTGlua10qL30gY2VsbHMgbGluZXMgd2hpY2ggZG8gb3ZlcmV4cHJlc3MgdGhlXHJcbiAgICAgIGNvcnJlY3QgQ0ZUUiBhbmQgdGhvc2Ugd2hpY2ggZXhwcmVzcyBDRlRSIHdpdGggRjUwOGRlbCBtdXRhdGlvbiBmb3IgdGhlIFBhdGNoLUNsYW1wIG1lYXN1cmVtZW50c3svKkxJTksgTWV0aG9kc3BhdGNoY2xhbXAqL30uIFRvIGNvbmR1Y3QgdGhlXHJcbiAgICAgIFBhdGNoLUNsYW1wIGV4cGVyaW1lbnRzLCB3ZSBjb250YWN0ZWQgdGhlIENlbGx1bGFyIE5ldXJvcGh5c2lvbG9neSBncm91cCB0byBwZXJmb3JtIHRoZSBuZWNlc3NhcnlcclxuICAgICAgbWVhc3VyZW1lbnRzLiBJdCB3YXMgYSBwbGVhc3VyZSB0byB3b3JrIHRvZ2V0aGVyIHdpdGgsIHdobyBpcyB3b3JraW5nIGFzIGEgcG9zdC1kb2MgZm9yXHJcbiAgICAgIHRoZSBDZWxsdWxhciBOZXVyb3BoeXNpb2xvZ3kgd29ya2luZyBncm91cCBhdCBCaWVsZWZlbGQgVW5pdmVyc2l0eS4gSGUgdGF1Z2h0IHVzIGFib3V0IHRoZSBQYXRjaC1DbGFtcFxyXG4gICAgICBtZXRob2QgYW5kIHNwZW50IGhpcyB2YWx1YWJsZSB0aW1lIHN1cHBvcnRpbmcgb3VyIHByb2plY3QgYnkgZ3VpZGluZyBvdXIgUGF0Y2gtQ2xhbXAgbWVhc3VyZW1lbnRzLiA8L3A+XSxcclxuICAgIHBpY3R1cmV1cmxfaW1wbGVtZW50YXRpb246IFwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2hwL2JpbGQtaW50ZXJzc2llcnRlLXdpc3NlbnNjaGFmdGxlci1vaG8ud2VicFwiLFxyXG4gICAgcGljdHVyZXVybF9pbnRlcnZpZXc6XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvaHAvYmlsZC1wYXRjaC1jbGFtcC1pc2ktb2xpdmVyLndlYnBcIixcclxuICAgIHJlZmVyZW5jZXM6IDxXaXNjaG1leWVyU291cmNlcyAvPixcclxuICAgIGludGVydmlldzogPD5cclxuICAgICAgPFFhQm94IHE9XCJDYW4geW91IGVkdWNhdGUgdXMgYWJvdXQgeW91ciBhY2FkZW1pYyBjYXJlZXI/XCIgYT1cIkkgZGlkIG15IGRvY3RvcmF0ZSAzMCB5ZWFycyBhZ28gYXQgQmllbGVmZWxkIFVuaXZlcnNpdHkgYW5kIHRoZW4gd29ya2VkIGF0IHRoZSBNYXggUGxhbmNrIEluc3RpdHV0ZSBpbiBHXHUwMEY2dHRpbmdlbiBhIGxvdCB3aXRoIHRoZSBwYXRjaC1jbGFtcCB0ZWNobmlxdWUuIFRvZGF5LCBJXHUyMDE5bSBoZWFkIG9mIHRoZSB3b3JraW5nIGdyb3VwIENlbGx1bGFyIE5ldXJvcGh5c2lvbG9neSBvZiB0aGUgbWVkaWNpbmUgZmFjdWx0eSBvZiBCaWVsZWZlbGQgVW5pdmVyc2l0eS5cIiAvPlxyXG4gICAgICA8UWFCb3ggcT1cIldoYXQgbmV3IG1ldGhvZHMgYXJlIGN1cnJlbnRseSBhdmFpbGFibGUgaW4gZWxlY3Ryb3BoeXNpb2xvZ2ljYWwgcmVzZWFyY2g/XCIgYT1cIk9uZSBvZiB0aGUgbGF0ZXN0IG1ldGhvZHMgaXMgRS1jaXMgbWVhc3VyZW1lbnRzLiBUaGVzZSBtYWtlIGl0IHBvc3NpYmxlIHRvIGV4YW1pbmUgYSBtb25vbGF5ZXIgb2YgY29uZmx1ZW50IGNlbGxzIGFuZCB0byBtZWFzdXJlIHRoZSBtZW1icmFuZSBwb3RlbnRpYWwgYm90aCBhYm92ZSBhbmQgYmVsb3cuIFRoZSBjaGFuZ2UgaW4gY29uZHVjdGl2aXR5IGNhbiBiZSBhbmFseXplZCBmb3IgaW5zdGFuY2UgYXMgYSBmdW5jdGlvbiBvZiBDRlRSIGV4cHJlc3Npb24uXCIgLz5cclxuICAgICAgPFFhQm94IHE9XCJIb3cgY2FuIHdlIHByb2NlZWQgd2l0aCB0aGUgaW52ZXN0aWdhdGlvbiBvZiBDRlRSIGluIGRpZmZlcmVudCBjZWxsIGN1bHR1cmVzIGJ5IHBhdGNoLWNsYW1wP1wiIGE9XCJZb3UgY2FuIHN0dWR5IENGVFIgZXhwcmVzc2lvbiBpbiBIRUsgY2VsbHMsIHdoaWNoIGFsbG93cyBmb3IgYSBtZWFzdXJhYmxlIGNoYW5nZSBpbiBjaGxvcmlkZSBjb25kdWN0YW5jZS4gSSBhbSBub3Qgc3VyZSB3aGV0aGVyIHdlIHdpbGwgYmUgYWJsZSB0byBpbnZlc3RpZ2F0ZSBDRlRSIHN1ZmZpY2llbnRseSBpbiBlcGl0aGVsaWFsIGNlbGxzIHdoaWNoIHlvdSB3YW50IHRvIGNvbGxlY3QgZnJvbSB5b3VyIENGIHBhdGllbnQgZnJpZW5kIGFuZCB5b3VyIHRlYW0gbWVtYmVycy4gVGhhdCBpcyBzb21ldGhpbmcgd2UgaGF2ZSB0byB0cnkgb3V0LlwiIC8+XHJcbiAgICAgIDxRYUJveCBxPVwiSG93IGNoYWxsZW5naW5nIGlzIHRoZSBtZWFzdXJlbWVudCBvZiBDRlRSIGNvbmR1Y3RhbmNlIGluIGVwaXRoZWxpYWwgY2VsbHM/XCIgYT1cIkNGVFIgaW4gZXBpdGhlbGlhbCBjZWxscyBoYXMgdmVyeSBsb3cgY29uZHVjdGl2aXR5IGluIHRoZSBmZW10b2FtcGVyZSByYW5nZS4gVGhlcmVmb3JlLCBleHRyZW1lbHkgc2Vuc2l0aXZlIHRlc3RpbmcgaXMgbmVjZXNzYXJ5IHRvIG9idGFpbiBtZWFuaW5nZnVsIHJlc3VsdHMuXCIgLz5cclxuICAgICAgPFFhQm94IHE9XCJIb3cgY2hhbGxlbmdpbmcgaXMgdGhlIHBhdGNoLWNsYW1wIG1lYXN1cmVtZW50IG9mIENGVFIgY29uZHVjdGFuY2UgaW4gZXBpdGhlbGlhbCBjZWxscz9cIiBhPVwiVGhlIHByb2plY3QgY291bGQgdGFrZSBhdCBsZWFzdCBvbmUgeWVhciwgZXZlbiBmb3IgZXhwZXJpZW5jZWQgcmVzZWFyY2hlcnMuXCIgLz5cclxuICAgICAgPFFhQm94IHE9XCJXaGF0IHRlY2huaWNhbCBjaGFsbGVuZ2VzIGRvIHdlIGZhY2UgaW4gaW1wbGVtZW50aW5nIHRoZSBwYXRjaC1jbGFtcCBtZWFzdXJlbWVudHM/XCIgYT1cIk9uZSBvZiB0aGUgYmlnZ2VzdCBjaGFsbGVuZ2VzIGlzIG1lYXN1cmluZyB0aGUgY3VycmVudCBhY3Jvc3MgdGhlIGVudGlyZSBjZWxsLCBhcyB3ZSBkbyBub3Qgd2FudCB0byBjYXJyeSBvdXQgc2luZ2xlLWNoYW5uZWwgbWVhc3VyZW1lbnRzLCBidXQgcmF0aGVyIHJlY29yZCB0aGUgY3VycmVudCBhY3Jvc3MgY2VsbHMgd2l0aCBhIHN0cm9uZ2x5IGV4cHJlc3NpbmcgdmVjdG9yIGNhcnJ5aW5nIHRoZSBnZW5lIGZvciB0aGUgaW9uIGNoYW5uZWwuXCIgLz5cclxuICAgICAgPFFhQm94IHE9XCJXaGF0IHJlcXVpcmVtZW50cyBtdXN0IGJlIG1ldCBmb3IgY3VsdGl2YXRpb24gYW5kIHRyYW5zZmVjdGlvbiBiZWZvcmUgdGhlIHBhdGNoLWNsYW1wIG1lYXN1cmVtZW50P1wiIGE9XCJZb3UgaGF2ZSB0byBjdWx0aXZhdGUgdGhlIGNlbGxzIG9uIHBvbHktbHlzaW5lIGFuZCBsYW1pbmluIGFuZCB1c2Ugcm91bmQgY292ZXJzbGlwcyBvZiAxMCBtbSBkaWFtZXRlciB0byBwcmVwYXJlIHRoZW0gZm9yIG1lYXN1cmVtZW50LiBGb3IgaWRlbnRpZmljYXRpb24gb2YgcG9zaXRpdmUgdHJhbnNmZWN0YW50cywgd2UgdXNlIEdGUCBjby10cmFuc2ZlY3RlZCBjZWxscyBpbiBvdXIgd29ya2luZyBncm91cCwgeW91IHNob3VsZCB0aGluayBvZiBzb21ldGhpbmcgbGlrZSB0aGF0IGFzIHdlbGwuIEEgdHJhbnNmZWN0aW9uIHJhdGUgb2YgMTAgJSBpcyBzdWZmaWNpZW50IHRvIGdhaW4gZW5vdWdoIGNlbGxzIGZvciB0aGUgbWVhc3VyZW1lbnQuIFlvdSBjYW4gdGhpbmsgb2Ygb3B0aW1pemluZyB5b3VyIHRyYW5zZmVjdGlvbiBieSB1c2luZyBMaXBvZmVjdGFtaW5lMjAwMCwgd2hpY2ggd29ya3Mgd2VsbCBmb3Igb3VyIHdvcmtpbmcgZ3JvdXAuXCIgLz5cclxuICAgICAgPFFhQm94IHE9XCJXaG8gY291bGQgaGVscCB1cyB3aXRoIHRoZSBwYXRjaC1jbGFtcCBtZWFzdXJlbWVudHM/XCIgYT1cIlRoZSBwYXRjaC1jbGFtcCBkZXZpY2VzIGFyZSBoZWF2aWx5IHV0aWxpemVkIGluIG91ciB3b3JraW5nIGdyb3VwLCBzbyB5b3UgcHJvYmFibHkgY2Fubm90IHBlcmZvcm0gbWVhc3VyZW1lbnRzIG9uIHlvdXIgb3duLiBIb3dldmVyLCBwb3N0ZG9jcyBjb3VsZCBzdXBwb3J0IHlvdSBmb3Igc29tZSBtZWFzdXJlbWVudHMuIERyLiBPbGl2ZXIgRHJcdTAwRTRnZXIgaXMgYXZhaWxhYmxlIGFzIGEgY29udGFjdCBwZXJzb24gb2YgbXkgd29ya2luZyBncm91cC5cIiAvPlxyXG5cclxuICAgIDwvPixcclxuICAgIHN1bW1hcnk6IFwiSW4gc3VtbWFyeSwgdGhyb3VnaCB0aGUgaW50ZXJ2aWV3IHdpdGggUHJvZi4gRHIuIFdpc2NobWV5ZXIgYW5kIHRoZSBjb2xsYWJvcmF0aW9uIHdpdGggaGlzIGVtcGxveWVlIERyLiBPbGl2ZXIgRHJcdTAwRTRnZXIsIHdlIGdhaW5lZCB2YWx1YWJsZSBpbnNpZ2h0cyBhbmQgb3B0aW1pemVkIG91ciBhcHByb2FjaCB0byBlZmZlY3RpdmVseSBpbnZlc3RpZ2F0ZSBhbmQgbWVhc3VyZSB0aGUgZnVuY3Rpb25hbGl0eSBvZiB0aGUgQ0ZUUiBpb24gY2hhbm5lbCwgdGhlcmVieSBkZXRlcm1pbmluZyB0aGUgZWZmaWNpZW5jeSBvZiBvdXIgcHJpbWUgZWRpdGluZyBzdHJhdGVneS5cIixcclxuICAgIG1vbnRoczogXCJqdW5lXCJcclxuICB9LFxyXG4gIHtcclxuICAgIHZvcm5hbWU6IFwiSm9zaHVhXCIsXHJcbiAgICBuYWNobm5hbWU6IFwiQmF1ZGVyXCIsXHJcbiAgICBqb2I6IFwicGFyZW50IGFuZCBhY3RpdmlzdFwiLFxyXG4gICAgYWZmaWxpYXRpb246IFwiQ0YgdmVzdHMgd29ybGR3aWRlXCIsXHJcbiAgICBwaWN0dXJldXJsOiBwaWNzWydqb3NodWEnXSxcclxuICAgIHRhZzogXCJQYXRpZW50XCIsXHJcbiAgICBoZWFkaW5nOiBcIkludGVydmlldyB3aXRoIGEgQ0YgUGFyZW50IGFuZCBHbG9iYWwgQWR2b2NhdGUgb24gV29ybGR3aWRlIFN1cHBvcnQgYW5kIFBlcnNwZWN0aXZlc1wiLFxyXG4gICAgaW50ZXJ2aWV3dGFiaWQ6IFwiam9zaHVhXCIsXHJcblxyXG4gICAgbGFuZ3VhZ2U6IFwiZW5cIixcclxuICAgIHF1b3RlOiBcIldlXHUyMDE5dmUgaGFkIHRvIHNpdCBieSBhbmQgd2F0Y2ggcGVvcGxlIGRpZSwga25vd2luZyB0aGF0IGJldHRlciB0cmVhdG1lbnQgZXhpc3RzIGJ1dCBpcyBpbmFjY2Vzc2libGUuIFwiLFxyXG4gICAgYWltb2Zjb250YWN0OiBbPHA+V2UgY29udGFjdGVkIHRoZSBvcmdhbml6YXRpb24gPGEgaHJlZj1cImh0dHBzOi8vd3d3LmNmdnd3Lm9yZy9cIj5DRiB2ZXN0cyB3b3JsZHdpZGU8L2E+IHdpdGggdGhlIGFpbSB0byBoZWFyIG1vcmUgZGl2ZXJzZSBwZXJzcGVjdGl2ZXMgYmV5b25kIEdlcm1hbnkuXHJcbiAgICAgIEFmdGVyIHRoZSBmb3VuZGVyIFJvZCBjb25uZWN0ZWQgdXMgd2l0aCBKb3NodWEsIEpvc2h1YSB3YXMgc28ga2luZCB0byBjb25kdWN0IGFuIGludGVydmlldyB3aXRoIHVzIG5vdCBvbmx5IGFib3V0IHRoZSBwZXJzcGVjdGl2ZXMgYW5kXHJcbiAgICAgIHN0b3JpZXMgaGUgaGVhcmQgYnV0IGFsc28gYWJvdXQgaGlzIHBlcnNvbmFsIGV4cGVyaWVuY2VzIHdpdGggaGlzIGRhdWdodGVyIGFuZCBsaXZpbmcgaW4gYSBjb3VudHJ5IHdoZXJlIENGIGNhcmUgaXMgdmVyeSBoYXJkIHRvIGdldC4gSm9zaHVhXHJcbiAgICAgIChmcm9tIHRoZSBVU0EpIGFuZCBoaXMgZmFtaWx5IGxpdmUgaW4gVGhhaWxhbmQgd2hlcmUgaGUgYW5kIGhpcyB3aWZlIHJ1biBhIGNoaWxkcmVuXHUyMDE5cyBob21lLiBUaGVpciBkYXVnaHRlciBpcyB0aGUgb25seSBjaGlsZCB3aXRoIENGLjwvcD4sXHJcbiAgICA8cD5JdCBpcyBwb3NzaWJsZSB0byBsZWFybiBtb3JlIGFib3V0IEpvc2h1YSBhbmQgaGlzIGZhbWlseSB0aG91Z2ggdGhlIDxhIGhyZWY9XCJodHRwczovL3RoZWJvbm5lbGxmb3VuZGF0aW9uLm9yZy9jZi12ZXN0cy13b3JsZHdpZGUvXCI+XHJcbiAgICAgIHBvZGNhc3Qgb2YgdGhlIEJvbm5lbCBmb3VuZGF0aW9uPC9hPi48L3A+XSxcclxuICAgIGluc2lnaHRzOiBbPHA+IEpvc2h1YSBzaG93ZWQgdXMganVzdCBob3cgZGlyZSB0aGUgc2l0dWF0aW9uIGlzIGZvciBDRiBwYXRpZW50cyBpcyBpbiBzb21lIHJlZ2lvbnMuIEl0IHdhcyBzaG9ja2luZyB0byBoZWFyIHRoZXJlIGlzIG9ubHkgb25lIGRvY3RvclxyXG4gICAgICBrbm93bGVkZ2VhYmxlIGFib3V0IENGIGluIFRoYWlsYW5kIGFuZCB0aGF0IG1hbnkgZG9jdG9ycyBkaXNtaXNzIHRoZSBwb3NzaWJpbGl0eSBvZiBDRiBkdWUgdG8gcmFjaWFsIGJpYXMgYW5kIG1pc2luZm9ybWF0aW9uLiBBZGRpdGlvbmFsbHksIHdlIGNvbmZpcm1lZCBob3cgbXVjaCB0aGUgYWNjZXNzaWJpbGl0eVxyXG4gICAgICBvZiBjYXJlIGRlcGVuZHMgb24gdGhlIGhlYWx0aGNhcmUgc3lzdGVtLCBhcyB3ZSBhbHJlYWR5IHRvdWNoZWQgb24gZHVyaW5nIHRoZSBpbnRlcnZpZXcgd2l0aCA8SFBMaW5rdG9PdGhlckhQVGFiIHRhYj1cIm5pY29sZVwiIHRleHQ9XCJOaWNvbGUgRnJpZWRsZWluXCIgLz4sLiBPbiB0aGUgcGFyZW50aW5nIGxldmVsLCBKb3NodWEgYnJvdWdodCBpbiBtYW55IHBlcnNwZWN0aXZlcyBjb250cmFyeSB0byB3aGF0IHdlIHByZXZpb3VzbHkgaGVhcmQuIEluIHRoZSBpbnRlcnZpZXcgd2l0aCA8SFBMaW5rdG9PdGhlckhQVGFiIHRhYj1cIm1heGZpcnN0XCIgdGV4dD1cIk1heFwiIC8+LCwgd2UgbGVhcm5lZCBoZSB2ZWhlbWVudGx5IGF2b2lkcyBwb25kaW5nIHdhdGVyIHdoaWxlIEpvc2h1YVx1MjAxOXMgZGF1Z2h0ZXIgaXMgYWxsb3dlZCB0byByb2FtIGFyb3VuZCB3aXRoIG5vIHN1Y2ggcmVzdHJpY3Rpb25zLiBOZWl0aGVyIGhhdmUgY2hyb25pYyBpbmZlY3Rpb25zLjwvcD5dLFxyXG4gICAgaW1wbGVtZW50YXRpb246IFs8cD5UaGUgaW50ZXJ2aWV3IHdpdGggSm9zaCBtYWRlIHVzIHJlYWxpemUgd2UgdG9vIG5lZWRlZCB0byBsb29rIGF0IHRoZSByZWFzb24gd2h5IHdlIGNob3NlIEY1MDhkZWwuIERpZCB3ZSwgdG9vLCBmYWxsIGZvciBiaWFzP1xyXG4gICAgICBEZXNwaXRlIGEgY2hhbmdlIG9mIHRhcmdldCBub3QgYmVpbmcgZmVhc2libGUgYW55bW9yZSwgd2UgbG9va2VkIGludG8gaXQgYW5kIHRyYWNlZCBiYWNrIG91ciBzdGVwcyB0aGF0IGxlZCB0byBvdXIgZGVjaXNpb24uIFdlIGRpZCBub3QgZmluZCBhcyBtdWNoXHJcbiAgICAgIGluZm9ybWF0aW9uIGFib3V0IG90aGVyIG11dGF0aW9ucyB3aGVuIGZpcnN0IHJlc2VhcmNoaW5nICBDeXN0aWMgRmlicm9zaXMsIGVzcGVjaWFsbHkgaW4gdGhlIGNvbnRleHQgb2YgcHJpbWUgZWRpdGluZy4gTWF0dGlqcyBCdWxjZWFucydzIHBhcGVyIG9uXHJcbiAgICAgIHRhcmdldGluZyB0aGUgbXV0YXRpb25zIEwyMjdSIGFuZCBOMTMwM0sgPFRhYlNjcm9sbExpbmsgdGFiPVwiam9zaHVhXCIgc2Nyb2xsSWQ9XCJkZXNjLTFcIiBudW09XCIxXCIgLz4gd2FzIG9uZSBvZiBmZXcgcGFwZXJzLiBBZnRlciBleHBsaWNpdGx5IHNlYXJjaGluZyBmb3IgIEN5c3RpYyBGaWJyb3NpcyByZWNvcmRzIGZvciBzcGVjaWZpYyBjb3VudHJpZXMgYW5kXHJcbiAgICAgIHJlZ2lvbnMsIHdlIHVuY292ZXJlZCBhIG1vZGVyYXRlIG51bWJlciBvZiBwYXBlcnMgZXhhbWluaW5nIENGIGluIEFzaWEgYW5kIG90aGVyIHJlZ2lvbnMgd2UgcHJldmlvdXNseSBkaWQgbm90IGtub3cgbXVjaCBhYm91dC4gVGhlIHZlcnkgZmlyc3QgYXJ0aWNsZVxyXG4gICAgICBzdXBwb3J0ZWQgSm9zaHVhJ3MgaHlwb3RoZXNlcyBhbmQgcGFpbnRlZCBhIHNhZCBwaWN0dXJlOiBBbW9uZyBvdGhlciB0aGluZ3MsIGl0IGRlc2NyaWJlcyB0aGUgY2FzZSBvZiBhIGZvdXItbW9udGgtb2xkIGJveSB3aG8gd2FzIGRpYWdub3NlZCB3aXRoIFxyXG4gICAgICBDeXN0aWMgRmlicm9zaXMuIE5vdGhpbmcgdW51c3VhbCBpbiBpdHNlbGYsIGJ1dCB0aGUgY2lyY3Vtc3RhbmNlcyBhcmUgZGVwcmVzc2luZy4gVHdvIG9mIHRoZSB0aHJlZSBzaWJsaW5ncyBib3JuIGJlZm9yZSBoaW0gZGllZCB3aXRoaW4gbW9udGhzIG9mIGJpcnRoIGFuZCBoYWRcclxuICAgICAgcHJldmlvdXNseSBwcmVzZW50ZWQgd2l0aCBzeW1wdG9tcyBvZiAgQ3lzdGljIEZpYnJvc2lzLiBIZSB3YXMgdGhlIGZpcnN0IHRvIGJlIGRpYWdub3NlZC4gQSBzd2VhdCB0ZXN0IGFpbWVkIGF0ICBDeXN0aWMgRmlicm9zaXMgd2FzIG5vdCBhdmFpbGFibGUgYXQgdGhlXHJcbiAgICAgIGhvc3BpdGFsLCBzbyBvbmUgd2FzIGltcHJvdmlzZWQuIExhdGVyIG9uLCBhIGdlbmV0aWMgdGVzdCByZXZlYWxlZCB0aGUgcHJlc2VuY2Ugb2YgNTA4ZGVsLiA8VGFiU2Nyb2xsTGluayB0YWI9XCJqb3NodWFcIiBzY3JvbGxJZD1cImRlc2MtMlwiIG51bT1cIjJcIiAvPiBXZSBmb3VuZCBvdXJzZWx2ZXMgYW5kIG91ciBsYWNrIG9mIGtub3dsZWRnZSBpbiBnb29kXHJcbiAgICAgIGNvbXBhbnkgYXMgd2UgZm91bmQgcGFwZXJzIGFzIG5ldyBhcyBmcm9tIDIwMjAgKDE0IHllYXJzIGFmdGVyIHRoZSBwcmV2aW91c2x5IG1lbnRpb25lZCBwYXBlcikgY29udGFpbmluZyBzdGF0ZW1lbnRzIHN1Y2ggYXMgXHUyMDFDcmVjZW50IHJlcG9ydHMgc3VnZ2VzdFxyXG4gICAgICB0aGF0IENGIGRvZXMgb2NjdXIgaW4gQXNpYVx1MjAxRCA8VGFiU2Nyb2xsTGluayB0YWI9XCJqb3NodWFcIiBzY3JvbGxJZD1cImRlc2MtM1wiIG51bT1cIjNcIiAvPi4gRm9ydHVuYXRlbHksIHRoZXJlIGlzIGEgcmlzaW5nIG51bWJlciBvZiAgQ3lzdGljIEZpYnJvc2lzIGV4cGVydHMgZm9yIEFzaWEgYW5kIG90aGVyIHByZXZpb3VzbHkgb3Zlcmxvb2tlZCByZWdpb25zXHJcbiAgICAgIHN1Y2ggYXMgQWZyaWNhLiA8VGFiU2Nyb2xsTGluayB0YWI9XCJqb3NodWFcIiBzY3JvbGxJZD1cImRlc2MtNFwiIG51bT1cIjRcIiAvPiBXZSBjaG9zZSB0byBub3Qgb25seSBsb29rIGF0IHRoZSBzY2llbnRpZmljIGRhdGEgYnV0IGFsc28gaW50byBhbmVjZG90YWwgZXZpZGVuY2UuIFRvIGZpbmQgdGhlIGxhdHRlciwgd2Ugc2VhcmNoZWQgb2ZmaWNpYWxcclxuICAgICAgYW5kIHByaXZhdGUgd2Vic2l0ZXMgYW5kIGNoYXRyb29tcyBmb3IgaW5mb3JtYXRpb24gYW5kIGV4cGVyaWVuY2VzIG9mIHBhdGllbnRzLiBJbiB0aGUgZW5kLCB3ZSBmb3VuZCBuYXJyYXRpdmVzIGZyb20gbW9zdCBldGhuaWMgYmFja2dyb3VuZHNcclxuICAgICAgYWJvdXQgYmVpbmcgZGlzbWlzc2VkIGFuZCBvZnRlbiBtaXNkaWFnbm9zZWQuIE9mIGNvdXJzZSwgdGhpcyBpcyBub3QgYW4gb2NjdXJyZW5jZSB1bmlxdWUgdG8gIEN5c3RpYyBGaWJyb3Npcy4gT3VyIGNvbmNsdXNpb24gaXMgdGhhdCB5ZXMsXHJcbiAgICAgIHdlIGRpZCBmYWxsIGZvciBiaWFzLiBCdXQgcmVnYXJkbGVzcyBvZiBldGhuaWNpdHksIDUwOGRlbCBvY2N1cnMgYW5kIGlzIG92ZXJhbGwgdGhlIG1vc3QgcHJldmFsZW50IG11dGF0aW9uIGFzIHdhcyBjb25maXJtZWQgaW4gb3VyIGludGVydmlld1xyXG4gICAgICB3aXRoIENGIGV4cGVydCBTcmlyYW0gLi4uLiBUaGlzIGV4cGVyaWVuY2Ugd2FzIHVuY29tZm9ydGFibGUgYXMgd2UgZmVsdCB0aGUgcHJlc3N1cmUgdG8gYmUgdGhvcm91Z2ggYW5kIGRlbGl2ZXIgYSBwZXJmZWN0IHByb2plY3QuIFdoYXQgd291bGRcclxuICAgICAgaGF2ZSBiZWVuIG1vcmUgZGV2YXN0YXRpbmcgdGhhbiByZWFsaXppbmcgd2UgbWFkZSBhIHdyb25nIGNob2ljZSBhdCB0aGUgdmVyeSBjb3JlPyAgV2UgbWFkZSB0aGUgY29uc2Npb3VzIGRlY2lzaW9uIHRvIGludmVzdCBvdXIgcmVzb3VyY2VzIGludG9cclxuICAgICAgZmlndXJpbmcgb3V0IGlmIHdlIGluZGVlZCBtYWRlIGEgbWlzdGFrZSBhbmQgd2Ugd2FudCB0byBlbmNvdXJhZ2Ugb3RoZXIgdGVhbXMgdG8gZG8gdGhlIHNhbWUuIGlHZW0gc3RhbmRzIGZvciBpbm5vdmF0aW9uIFx1MjAxMyBidXQgYWxzbyBmb3IgZ3Jvd3RoLlxyXG4gICAgICBFc3BlY2lhbGx5IGluIHRoZSBjb250ZXh0IG9mIEludGVncmF0ZWQgSHVtYW4gUHJhY3RpY2VzLCBpdCBpcyBpbXBvcnRhbnQgdG8gZXhhbWluZSBib3RoIHRoZSBwb3NpdGl2ZSBhbmQgdGhlIG5lZ2F0aXZlIHRvIGNyZWF0ZSBhIHByb2plY3Qgd2l0aCBhXHJcbiAgICAgIGZ1dHVyZS4gIDwvcD5dLFxyXG4gICAgcGljdHVyZXVybF9pbnRlcnZpZXc6IFwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2hwL2pvc2h1YS16b29tLndlYnBcIixcclxuICAgIHJlZmVyZW5jZXM6IDxKb3NodWFJbnRlcnZpZXdTb3VyY2VzIC8+LFxyXG4gICAgc3VtbWFyeTogXCJKb3NodWEsIGEgQ0YgcGFyZW50IGxpdmluZyBpbiBUaGFpbGFuZCwgc2hhcmVkIGhpcyBleHBlcmllbmNlcyBhYm91dCB0aGUgc2V2ZXJlIGNoYWxsZW5nZXMgb2YgYWNjZXNzaW5nIENGIGNhcmUgaW4gcmVnaW9ucyBsaWtlIFNvdXRoZWFzdCBBc2lhLiBIaXMgc3RvcnkgaGlnaGxpZ2h0ZWQgdGhlIHJhY2lhbCBiaWFzIGFuZCBsYWNrIG9mIG1lZGljYWwga25vd2xlZGdlIGFib3V0IENGIGluIHRoZXNlIGFyZWFzLiBUaGlzIGludGVydmlldyBwcm9tcHRlZCB0aGUgdGVhbSB0byByZWZsZWN0IG9uIHRoZWlyIGZvY3VzIG9uIHRoZSBGNTA4ZGVsIG11dGF0aW9uLCBxdWVzdGlvbmluZyBpZiB0aGVpciByZXNlYXJjaCB3YXMgYmlhc2VkIHRvd2FyZHMgbW9yZSBjb21tb25seSBzdHVkaWVkIG11dGF0aW9ucy4gQWZ0ZXIgcmV2aXNpdGluZyB0aGVpciByZXNlYXJjaCBwcm9jZXNzLCB0aGV5IGZvdW5kIHRoYXQgdGhlIEY1MDhkZWwgbXV0YXRpb24gcmVtYWlucyBnbG9iYWxseSByZWxldmFudCwgeWV0IHRoZSBleHBlcmllbmNlIHJlaW5mb3JjZWQgdGhlIGltcG9ydGFuY2Ugb2YgYWRkcmVzc2luZyBnYXBzIGluIGhlYWx0aGNhcmUgYW5kIHJlc2VhcmNoIGZvciB1bmRlcnJlcHJlc2VudGVkIHJlZ2lvbnMuXCIsXHJcbiAgICBtb250aHM6IFwiSnVseVwiXHJcbiAgfSxcclxuICB7XHJcbiAgICB2b3JuYW1lOiBcIkNsb3NlIHRoZSBMb29wXCIsXHJcbiAgICBuYWNobm5hbWU6IFwiXCIsXHJcbiAgICBwaWN0dXJldXJsOiBwaWNzWydsb2dvJ10sXHJcbiAgICBqb2I6IFwiVGVhbSBpR0VNXCIsXHJcbiAgICBhZmZpbGlhdGlvbjogXCJCaWVsZmVsZCBDZUJpVGVjIDIwMjRcIixcclxuICAgIHRhZzogXCJNaWxlc3RvbmVcIixcclxuICAgIGhlYWRpbmc6IFwiRW5oYW5jaW5nIERlbGl2ZXJ5IFN0cmF0ZWdpZXMgYW5kIENvbGxhYm9yYXRpb24gZm9yIFByaW1lIEVkaXRpbmdcIixcclxuICAgIGludGVydmlld3RhYmlkOiBcImxvb3BcIixcclxuXHJcbiAgICBxdW90ZU5hY2huYW1lOiBcIldpZXNuZXIsIFRlYW1tZW1iZXJcIixcclxuICAgIHF1b3RlVm9ybmFtZTogXCJMaXNhXCIsXHJcbiAgICBxdW90ZTogXCJJXHUyMDE5bSB0aHJpbGxlZCB3aXRoIHRoZSBwcm9ncmVzcyB3ZVx1MjAxOXJlIG1ha2luZyBpbiBvcHRpbWl6aW5nIG91ciBkZWxpdmVyeSBzdHJhdGVnaWVzLiBUaGUgY29sbGFib3JhdGlvbiB3aXRoIGluZHVzdHJ5IGV4cGVydHMgaGFzIG9wZW5lZCBvdXIgZXllcyB0byBuZXcgcG9zc2liaWxpdGllcywgYW5kIEkgYmVsaWV2ZSBvdXIgd29yayB3aWxsIHNpZ25pZmljYW50bHkgaW1wYWN0ICBDeXN0aWMgRmlicm9zaXMgdHJlYXRtZW50LlwiLFxyXG4gICAgdHlwZTogXCJtZXRhXCIsXHJcbiAgICBzdW1tYXJ5OiBbXHJcbiAgICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgQWZ0ZXIgc3VjY2Vzc2Z1bGx5IGNvbmR1Y3RpbmcgbXVsdGlwbGUgZXhwZXJpbWVudHMsIHdlIGRlbHZlZCBkZWVwZXIgaW50byBkZWxpdmVyeSBzdHJhdGVnaWVzIGZvciBvdXIgUHJpbWUgRWRpdGluZyBzeXN0ZW0uIE91ciBzdGFrZWhvbGRlcnMgcHJvdmlkZWQgY3J1Y2lhbCBmZWVkYmFjayB0aGF0IGhlbHBlZCB1cyBvdmVyY29tZSBleHBlcmltZW50YWwgZmFpbHVyZXMgYW5kIGltcHJvdmUgb3VyIG1ldGhvZG9sb2d5LiBNYXJjbyBSYWR1dmljIG9mZmVyZWQga2V5IHRpcHMgZm9yIGVmZmVjdGl2ZWx5IHV0aWxpemluZyBsaXBpZCBuYW5vcGFydGljbGVzLCBhbGxvd2luZyB1cyB0byBzdWNjZXNzZnVsbHkgdHJhbnNmZWN0IHRoZW0gaW50byBIRUsgYW5kIENGVFItc3BlY2lmaWMgY2VsbHMuIEFkZGl0aW9uYWxseSwgd2UgcmVwbGljYXRlZCB0aGUgcHJvb2Ygb2YgY29uY2VwdCBlc3RhYmxpc2hlZCBieSBEYXZpZCBMaXUgZXQgYWwuIGluIDIwMTksIGdhaW5pbmcgdmFsdWFibGUgaW5zaWdodHMgaW50byBob3cgYSBQcmltZSBFZGl0aW5nIHN5c3RlbSBzaG91bGQgZnVuY3Rpb24uIER1cmluZyB0aGlzIHByb2Nlc3MsIHdlIGlkZW50aWZpZWQgYSBnYXAgaW4gbWVhc3VyaW5nIHRoZSBlZmZpY2llbmN5IG9mIG91ciBQcmltZSBFZGl0aW5nIGNvbnN0cnVjdHMuIFRvIGFkZHJlc3MgdGhpcywgd2UgZGV2ZWxvcGVkIGEgZmx1b3Jlc2NlbmNlLWJhc2VkIHN5c3RlbSB3aXRoIGhpZ2ggc2VsZWN0aXZpdHksIGFsbG93aW5nIHVzIHRvIHBlcmZvcm0gcHJlY2lzZSBlZmZpY2llbmN5IGFuYWx5c2VzLiBCZXlvbmQgbGFiIHdvcmssIHdlIGNvbm5lY3RlZCB3aXRoIHZhcmlvdXMgaW5kdXN0cnkgbWVtYmVycywgbm90IG9ubHkgdG8gc2VjdXJlIHNwb25zb3JzaGlwcyBidXQgdG8gZW1waGFzaXplIGNvbGxhYm9yYXRpb24gYW5kIGV4Y2hhbmdlIHdpdGggbGVhZGluZyBtYXJrZXQgcGxheWVycy4gVGhyb3VnaCB0aGlzIG5ldHdvcmssIHdlIG5vdCBvbmx5IHJlY2VpdmVkIGZlZWRiYWNrIG9uIHRoZSBpbXBvcnRhbmNlIG9mIHBoeXNpb2xvZ2ljYWwgdGhlcmFwaWVzIGJ1dCBhbHNvIGdhaW5lZCBpbnNpZ2h0cyBpbnRvIHRoZSBpbnN1cmFuY2UtcmVsYXRlZCBjaGFsbGVuZ2VzIGFzc29jaWF0ZWQgd2l0aCBhIGZ1bmRhbWVudGFsIGRpc2Vhc2UgbGlrZSAgQ3lzdGljIEZpYnJvc2lzLiBUaGlzIG1vdGl2YXRlZCB1cyB0byB0YWtlIG91ciBwcm9qZWN0IHRvIHRoZSBuZXh0IGxldmVsLiBPdXIgY29sbGFib3JhdGlvbiB3aXRoIHRoZSBtZWRpY2FsIGZhY3VsdHkgb2Ygb3VyIHVuaXZlcnNpdHksIGFsb25nIHdpdGggbmF0aW9uYWwgZmVlZGJhY2ssIGVuYWJsZWQgdXMgdG8gaW50ZWdyYXRlIG5ldyBhbmQgYWR2YW5jZWQgdmFsaWRhdGlvbiBtZXRob2RzLiBJbiB0aGUgbmV4dCBwaGFzZSBvZiBvdXIgc3R1ZGllcywgd2UgZGVjaWRlZCB0byBvcHRpbWl6ZSBsaXBpZCBuYW5vcGFydGljbGVzIChMTlBzKSB0byBtYWtlIHRoZW0gc3VpdGFibGUgZm9yIGEgbm92ZWwsIGx1bmctc3BlY2lmaWMgZGVsaXZlcnkgc3RyYXRlZ3kuIEFkZGl0aW9uYWxseSwgd2UgcHJlcGFyZWQgdG8gZXhwbG9yZSBlbnp5bWUgZW5naW5lZXJpbmcgYnkgZW5nYWdpbmcgd2l0aCBzdGFrZWhvbGRlcnMgZXhwZXJpZW5jZWQgaW4gbmlja2FzZSBkZXZlbG9wbWVudCBhbmQgeWVhc3QgZXhwZXJpbWVudGFsIGRlc2lnbiwgZnVydGhlciByZWZpbmluZyBvdXIgUHJpbWUgRWRpdGluZyBzeXN0ZW0uXHJcbiAgICAgIDwvcD4sXHJcbiAgICAgIDx1bD5cclxuICAgICAgICAgIDxsaT5cclxuICAgICAgICAgICAgICA8Yj5PdmVyY29taW5nIEV4cGVyaW1lbnRhbCBDaGFsbGVuZ2VzOjwvYj4gSW1wcm92ZWQgZGVsaXZlcnkgc3RyYXRlZ2llcyBiYXNlZCBvbiBzdGFrZWhvbGRlciBmZWVkYmFjaywgc3VjY2Vzc2Z1bGx5IHVzaW5nIGxpcGlkIG5hbm9wYXJ0aWNsZXMgdG8gdHJhbnNmZWN0IEhFSyBhbmQgQ0ZUUi1zcGVjaWZpYyBjZWxscy5cclxuICAgICAgICAgIDwvbGk+XHJcbiAgICAgICAgICA8bGk+XHJcbiAgICAgICAgICAgICAgPGI+UHJvb2Ygb2YgQ29uY2VwdDo8L2I+IFN1Y2Nlc3NmdWxseSByZXBsaWNhdGVkIHRoZSBQcmltZSBFZGl0aW5nIHByb29mIG9mIGNvbmNlcHQgZXN0YWJsaXNoZWQgYnkgRGF2aWQgTGl1IGV0IGFsLiAoMjAxOSksIGdhaW5pbmcgdmFsdWFibGUgaW5zaWdodHMgaW50byBzeXN0ZW0gZnVuY3Rpb25hbGl0eS5cclxuICAgICAgICAgIDwvbGk+XHJcbiAgICAgICAgICA8bGk+XHJcbiAgICAgICAgICAgICAgPGI+RGV2ZWxvcG1lbnQgb2YgRmx1b3Jlc2NlbmNlLUJhc2VkIEVmZmljaWVuY3kgTWVhc3VyZW1lbnQ6PC9iPiBDcmVhdGVkIGEgaGlnaGx5IHNlbGVjdGl2ZSBmbHVvcmVzY2VuY2UtYmFzZWQgc3lzdGVtIHRvIGFjY3VyYXRlbHkgbWVhc3VyZSB0aGUgZWZmaWNpZW5jeSBvZiBQcmltZSBFZGl0aW5nIGNvbnN0cnVjdHMuXHJcbiAgICAgICAgICA8L2xpPlxyXG4gICAgICAgICAgPGxpPlxyXG4gICAgICAgICAgICAgIDxiPkluZHVzdHJ5IENvbGxhYm9yYXRpb246PC9iPiBFc3RhYmxpc2hlZCBjb25uZWN0aW9ucyB3aXRoIGluZHVzdHJ5IG1lbWJlcnMgZm9yIHNwb25zb3JzaGlwcywgY29sbGFib3JhdGlvbiwgYW5kIGZlZWRiYWNrIG9uIGJyb2FkZXIgY2hhbGxlbmdlcyBzdWNoIGFzIGluc3VyYW5jZSBpc3N1ZXMgdGllZCB0byAgQ3lzdGljIEZpYnJvc2lzIHRyZWF0bWVudC5cclxuICAgICAgICAgIDwvbGk+XHJcbiAgICAgICAgICA8bGk+XHJcbiAgICAgICAgICAgICAgPGI+T3B0aW1pemF0aW9uIG9mIExOUHMgZm9yIEx1bmctU3BlY2lmaWMgRGVsaXZlcnk6PC9iPiBCZWdhbiBvcHRpbWl6aW5nIGxpcGlkIG5hbm9wYXJ0aWNsZXMgZm9yIGx1bmctc3BlY2lmaWMgZGVsaXZlcnksIHdoaWxlIHByZXBhcmluZyBmb3IgZW56eW1lIGVuZ2luZWVyaW5nIHRvIGVuaGFuY2UgdGhlIFByaW1lIEVkaXRpbmcgc3lzdGVtLlxyXG4gICAgICAgICAgPC9saT5cclxuICAgICAgPC91bD5cclxuXHJcblxyXG4gICAgXSxcclxuICAgIG1vbnRoczogXCJqdWx5XCJcclxuICB9LFxyXG4gIHtcclxuICAgIHRpdGxlOiBcIlByb2YuIERyLlwiLFxyXG4gICAgdm9ybmFtZTogXCJTdGVmYW5cIixcclxuICAgIG5hY2hubmFtZTogXCJIYW1tZXJcIixcclxuICAgIGpvYjogXCJKdW5pb3IgUHJvZmVzc29yIG9mIE9yZ2FuaWMgQ2hlbWlzdHJ5IGFuZCBCaW9jYXRhbHlzaXNcIixcclxuICAgIGFmZmlsaWF0aW9uOiBcIlVuaXZlcnNpdHkgQmllbGVmZWxkXCIsXHJcbiAgICBwaWN0dXJldXJsOiBwaWNzWydoYW1tZXInXSxcclxuICAgIHRhZzogXCJBY2FkZW1pYVwiLFxyXG4gICAgaGVhZGluZzogXCJJbnNpZ2h0cyBmcm9tIHRoZSBkaXNjdXNzaW9uIG9uIGVuenltZSBlbmdpbmVlcmluZ1wiLFxyXG4gICAgaW50ZXJ2aWV3dGFiaWQ6IFwiaGFtbWVyXCIsXHJcblxyXG4gICAgbGFuZ3VhZ2U6IFwiZGVcIixcclxuICAgIHF1b3RlOiBcIkltcGxlbWVudGluZyBjb250cm9scyBpcyBjcnVjaWFsIGZvciB0aGUgTmlrYXNlIGFzc2F5IHRvIHByZXZlbnQgZmFsc2UgcG9zaXRpdmVzIGFuZCBlbnN1cmUgdGhlIGFjY3VyYWN5IG9mIHlvdXIgcmVzdWx0cy5cIixcclxuICAgIHF1b3RlTmFjaG5hbWU6IFwiSGFtbWVyLCBFeHBlcnQgZm9yIEVuenltZSBFbmdpbmVlcmluZyBcIixcclxuICAgIHF1b3RlVm9ybmFtZTogXCJQcm9mLiBEci4gU3RlZmFuXCIsXHJcbiAgICBhaW1vZmNvbnRhY3Q6IFs8cD5BZnRlciB3ZSBoYWQgZGV2ZWxvcGVkIGEgbnVtYmVyIG9mIHRoZXJvZXRpYyBlbGFib3JhdGlvbnMsIGZlZWRiYWNrIHdpdGggY29ycmVzcG9uZGluZyBleHBlcnRpc2UgaW4gdGhlIGZpZWxkIG9mIGVuenltZSBlbmdpbmVlcmluZyB3YXMgb2YgZXhjZXB0aW9uYWwgaW1wb3J0YW5jZSB0byB1cy4gRm9yIHRoaXMgcmVhc29uLCB3ZSB3YW50ZWQgdG8gZGlzY3VzcyBvdXIgYXBwcm9hY2hlcyB3aXRoIFByb2YuIERyLiBIYW1tZXIuPC9wPl0sXHJcbiAgICBpbnNpZ2h0czogWzxwPkluIG91ciBkaXNjdXNzaW9uIHdpdGggUHJvZi4gRHIuIEhhbW1lciBkaXNjdXNzaW9uIHdpdGggUHJvZi4gRHIuIEhhbW1lciBhYm91dCAgZGlmZmVyZW50IHRoZW9yZXRpY2FsIGFwcHJvYWNoZXMgd2UgaGFkIGRldmVsb3BlZDo8L3A+LFxyXG4gICAgICA8dWw+XHJcbiAgICAgICAgICA8bGk+UEFNIGVuZ2luZWVyaW5nPC9saT5cclxuICAgICAgICAgIDxsaT5DaGltZXJpYyBwcm90ZWluPC9saT5cclxuICAgICAgICAgIDxsaT5QaGFnZS1Bc3Npc3RlZCBDb250aW51b3VzIEV2b2x1dGlvbiAoUEFDRSk8L2xpPlxyXG4gICAgICAgICAgPGxpPlJhdGlvbmFsIERlc2lnbjogTXV0YXRpb24gb2YgemluYy1maW5nZXI8L2xpPlxyXG4gICAgICA8L3VsPiwgIFxyXG4gICAgICA8cD4gV2UgZGlzY3Vzc2VkIHdoZXRoZXIgYSByYXRpb25hbCBkZXNpZ24sIHN1cHBvcnRlZCBieSBzdHJ1Y3R1cmFsIHNpbXVsYXRpb25zIHdpdGggQWxwaGFGb2xkIDMsIG9yIHRoZSBjb25zdHJ1Y3Rpb24gb2YgYSBjaGltZXJpYyBwcm90ZWluIHdvdWxkIGJlIHRoZSBzdXBlcmlvciBhcHByb2FjaC4gVGhlIHBvc3NpYmlsaXR5IG9mIHVzaW5nIHByb3RlaW4gZXZvbHV0aW9uIHZpYSBQQUNFIG9yIGNvbnZlbnRpb25hbCBtZXRob2RzIHdhcyBkZW1vbnN0cmF0ZWQsIGV2ZW4gaWYgdGhlc2UgYXBwcm9hY2hlcyBhcmUgdmVyeSB0aW1lLWNvbnN1bWluZy4gQW4gaW1wb3J0YW50IHRvcGljIHdhcyB0aGUgYW5hbHlzaXMgb2YgaG9tb2xvZ291cyBtZWNoYW5pc21zIGJ5IHNlcXVlbmNlIGFsaWdubWVudHMgdG8gaWRlbnRpZnkgc3RydWN0dXJhbCBzaW1pbGFyaXRpZXMgaW4gY2F0YWx5dGljIGNlbnRlcnMuIEluIGFkZGl0aW9uLCB3ZSBkaXNjdXNzZWQgdGhlIHJvbGUgb2YgemluYyBmaW5nZXIgZG9tYWlucyBhbmQgdGFyZ2V0ZWQgbXV0YXRpb25zLCBzdWNoIGFzIHN1YnN0aXR1dGlvbiB0byBhbGFuaW5lLCBpbiB0aGUgZnVuY3Rpb24gb2Ygb3B0aW1pemF0aW9uLiBJdCB3YXMgYWxzbyBlbXBoYXNpemVkIHRoYXQgbXV0YXRpb25zIHNob3VsZCBiZSBldmFsdWF0ZWQgaW4gZW56eW1lcyB3aXRoIG5pY2thc2UgYWN0aXZpdHksIGFsdGhvdWdoIHRoZSBzY3JlZW5pbmcgZm9yIHRoaXMgaXMgdmVyeSBsYWJvcmlvdXMuIFRoZSByZWxpYWJpbGl0eSBvZiBBbHBoYUZvbGQgcHJlZGljdGlvbnMgd2FzIGV2YWx1YXRlZCBwb3NpdGl2ZWx5IGRlc3BpdGUgdGhlIGNvbXBsZXhpdHkgb2YgdGhlIGVuenltZXMuIE9uZSBwcm9taXNpbmcgYXBwcm9hY2ggY291bGQgYmUgdGhlIHRyYW5zZmVyIG9mIG11dGF0aW9ucyB0byBob21vbG9nb3VzIHByb3RlaW5zLiA8L3A+XSxcclxuICAgIGltcGxlbWVudGF0aW9uOiBbPHA+V2UgbGVhcm5lZCBmcm9tIHRoZSBkaXNjdXNzaW9uIHRoYXQgd2UgbmVlZCB0byB0YWtlIGEgcmF0aW9uYWwgYXBwcm9hY2ggYW5kIGNvbnNpZGVyIHRoZSBmb2xsb3dpbmcgY29uY2x1c2lvbnM6PC9wPixcclxuICAgICAgPHVsPlxyXG4gICAgICAgICAgPGxpPkEgcmF0aW9uYWwgYXBwcm9hY2ggY291bGQgYmUgdGhlIHRyYW5zZmVyIG9mIG11dGF0aW9ucyB0byBob21vbG9nb3VzIHByb3RlaW5zPC9saT5cclxuICAgICAgICAgIDxsaT5Gb3IgcmF0aW9uYWwgZGVzaWduLCBzdHJ1Y3R1cmFsIHNpbXVsYXRpb24gdXNpbmcgQWxwaGFGb2xkIDMgY291bGQgYmUgdXNlZCB0byBtb2RlbCBhbmQgdW5kZXJzdGFuZCBzcGVjaWZpYyBwcm90ZWluIHN0cnVjdHVyZXM8L2xpPlxyXG4gICAgICAgICAgPGxpPkhvbW9sb2dvdXMgbWVjaGFuaXNtcyAmIHNlcXVlbmNlIGFsaWdubWVudHM8L2xpPlxyXG4gICAgICAgICAgPGxpPkFuYWx5c2lzIG9mIHN0cnVjdHVyYWwgc2ltaWxhcml0aWVzIGluIGNhdGFseXRpYyBjZW50ZXJzIGJ5IHNlcXVlbmNlIGNvbXBhcmlzb25zPC9saT5cclxuICAgICAgICAgIDxsaT5Vc2luZyBBbGEgb3IgR2x5IGZvciBzdWJzdGl0dXRpb248L2xpPlxyXG4gICAgICAgICAgPGxpPkRldmVsb3BtZW50IG9mIGEgbmlja2FzZSBhc3NheTwvbGk+XHJcbiAgICAgIDwvdWw+LFxyXG4gICAgPHA+V2UgZGV2ZWxvcGVkIG91ciBtdXRhdGlvbiBjYW5kaWRhdGVzIG9uIHRoaXMgYmFzaXMuIHsvKltsaW5rIHp1bSBDeWNsZSBvZGVyIE5ldyBQYXJ0ID9dKi99PC9wPlxyXG4gICAgXSxcclxuICAgIHN1bW1hcnk6IFwiSW4gb3VyIGRpc2N1c3Npb24gd2l0aCBQcm9mLiBEci4gSGFtbWVyLCB3ZSBleHBsb3JlZCBzZXZlcmFsIHRoZW9yZXRpY2FsIGFwcHJvYWNoZXMgaW4gZW56eW1lIGVuZ2luZWVyaW5nLCBpbmNsdWRpbmcgUEFNIGVuZ2luZWVyaW5nLCBjaGltZXJpYyBwcm90ZWlucywgUGhhZ2UtQXNzaXN0ZWQgQ29udGludW91cyBFdm9sdXRpb24gKFBBQ0UpLCBhbmQgcmF0aW9uYWwgZGVzaWduIGludm9sdmluZyB6aW5jLWZpbmdlciBtdXRhdGlvbnMuIFdlIGV2YWx1YXRlZCB0aGUgcG90ZW50aWFsIG9mIHVzaW5nIHN0cnVjdHVyYWwgc2ltdWxhdGlvbnMgd2l0aCBBbHBoYUZvbGQgMyBhbmQgdGhlIGNvbnN0cnVjdGlvbiBvZiBjaGltZXJpYyBwcm90ZWlucy4gVGhlIGNvbnZlcnNhdGlvbiBoaWdobGlnaHRlZCB0aGUgaW1wb3J0YW5jZSBvZiBhbmFseXppbmcgaG9tb2xvZ291cyBtZWNoYW5pc21zIHRocm91Z2ggc2VxdWVuY2UgYWxpZ25tZW50cyB0byBpZGVudGlmeSBzdHJ1Y3R1cmFsIHNpbWlsYXJpdGllcyBpbiBjYXRhbHl0aWMgY2VudGVycy4gV2UgYWxzbyBkaXNjdXNzZWQgdGFyZ2V0ZWQgbXV0YXRpb25zLCBzdWNoIGFzIHN1YnN0aXR1dGlvbnMgdG8gYWxhbmluZSwgYW5kIHRoZSBkZXZlbG9wbWVudCBvZiBhIG5pY2thc2UgYXNzYXkuIE92ZXJhbGwsIHdlIGNvbmNsdWRlZCB0aGF0IHRyYW5zZmVycmluZyBtdXRhdGlvbnMgdG8gaG9tb2xvZ291cyBwcm90ZWlucyBpcyBhIHByb21pc2luZyByYXRpb25hbCBhcHByb2FjaCBmb3Igb3B0aW1pemluZyBlbnp5bWUgZnVuY3Rpb24uXCIsXHJcbiAgICBtb250aHM6IFwiSnVseVwiXHJcbiAgfSxcclxuICB7XHJcbiAgICB2b3JuYW1lOiBcIlN0ZWZmZW4gQmlyYSBhbmRcIixcclxuICAgIG5hY2hubmFtZTogXCJTZXJyYSBHXHUwMEZDcmNhbiBmcm9tIENvcmRlbiBQaGFybWFcIixcclxuICAgIGpvYjogXCJBc3NvY2lhdGUgZGlyZWN0b3JcIixcclxuICAgIGFmZmlsaWF0aW9uOiBcIkNvcmRlbiBQaGFybWFcIixcclxuICAgIHBpY3R1cmV1cmw6IHBpY3NbJ2NvcmRlbiddLFxyXG4gICAgdGFnOiBcIkluZHVzdHJ5XCIsXHJcbiAgICBoZWFkaW5nOiBcIkxpcGlkIE5hbm9wYXJ0aWNsZXMgaW4gR2VuZSBUaGVyYXB5OiBwZXJzcGVjdGl2ZXMgZnJvbSBDb3JkZW4gUGhhcm1hIFwiLFxyXG4gICAgaW50ZXJ2aWV3dGFiaWQ6IFwiY29yZGVuXCIsXHJcblxyXG4gICAgbGFuZ3VhZ2U6IFwiZW5cIixcclxuICAgIHF1b3RlOiBcIlRoZSBzdGFiaWxpdHkgb2YgTE5QcyBkZXBlbmRzIG9uIHRoZSBzcGVjaWZpYyBsaXBpZCBhbmQgUk5BIGNvbXBvbmVudHMgdXNlZCwgYnV0IGVuc3VyaW5nIHRoZSBvdmVyYWxsIHN0YWJpbGl0eSBvZiBhIG5ldyBmb3JtdWxhdGlvbiByZXF1aXJlcyByaWdvcm91cyBlbXBpcmljYWwgdGVzdGluZyB1bmRlciB2YXJpb3VzIGNvbmRpdGlvbnMuXCIsXHJcbiAgICBhaW1vZmNvbnRhY3Q6IFs8cD5UaGUgcHJpbWFyeSBhaW0gb2YgdGhlIGNvbW11bmljYXRpb24gd2l0aCBTdGVmZmVuIEJpcmEgYW5kIFNlcnJhIEdcdTAwRkNyY2FuIGZyb20gQ29yZGVuIFBoYXJtYSB3YXMgdG8gZXhwbG9yZSB0aGUgdGVjaG5pY2FsIGFzcGVjdHMgYW5kIHByYWN0aWNhbCBhcHBsaWNhdGlvbnMgb2YgTGlwaWQgTmFub3BhcnRpY2xlcyAoTE5QcykgaW4gYWR2YW5jZWQgbWVkaWNhbCB0aGVyYXBpZXMsIGluY2x1ZGluZyBnZW5lIHRoZXJhcHkgYW5kIGluaGFsYXRpb24gdHJlYXRtZW50cy4gVGhlIGNvbnZlcnNhdGlvbiBmb2N1c2VkIG9uIHRoZSBwb3NzaWJpbGl0eSBvZiB1c2luZyBDb3JkZW4gUGhhcm1hXHUyMDE5cyBMTlAgc3RhcnRlciBraXRzLCB1bmRlcnN0YW5kaW5nIHRoZSBmYWN0b3JzIGFmZmVjdGluZyB0aGUgc3RhYmlsaXR5IG9mIExOUHMsIGFuZCBleHBsb3Jpbmcgb3B0aW9ucyBmb3IgaW5jb3Jwb3JhdGluZyBhbnRpYm9kaWVzIGludG8gTE5QcyB0byB0YXJnZXQgc3BlY2lmaWMgY2VsbHMuIDwvcD5dLFxyXG4gICAgaW5zaWdodHM6IFs8cD5UaGUgZGlzY3Vzc2lvbiB3aXRoIDxhIGhyZWY9XCJodHRwczovL2NvcmRlbnBoYXJtYS5jb20vXCI+Q29yZGVuIFBoYXJtYTwvYT4sIGxlZCBieSBTdGVmZmVuIEJpcmEgYW5kIFNlcnJhIEdcdTAwRkNyY2FuLCBvZmZlcmVkIGtleSBpbnNpZ2h0cyBpbnRvIExOUHMgYW5kIHRoZWlyIGFwcGxpY2F0aW9ucy4gV2hpbGUgQ29yZGVuIFBoYXJtYSBoYXNuJ3QgZXh0ZW5zaXZlbHkgZXhwbG9yZWQgc3ByYXkgZHJ5aW5nIGZvciBMTlBzLCB0aGV5IHJlY29tbWVuZGVkIGNvbnN1bHRpbmcgc3BlY2lhbGlzdHMgdG8gZXZhbHVhdGUgaXRzIGZlYXNpYmlsaXR5LCBlc3BlY2lhbGx5IGNvbmNlcm5pbmcgbGlwaWQgc3RhYmlsaXR5IGR1cmluZyB0aGUgcHJvY2Vzcy4gU3RhYmlsaXR5IHdhcyBoaWdobGlnaHRlZCBhcyBjcnVjaWFsIGZvciBpbmhhbGF0aW9uIHRoZXJhcGllcywgcmVxdWlyaW5nIHRob3JvdWdoIHRlc3Rpbmcgb2YgZW50aXJlIExOUCBmb3JtdWxhdGlvbnMsIHBvc3NpYmx5IGFpZGVkIGJ5IGNyeW9wcm90ZWN0YW50cyBhbmQgY29udHJvbGxlZCB0ZW1wZXJhdHVyZXMuIFxyXG4gICAgICBDb3JkZW4gUGhhcm1hJ3MgTE5QIHN0YXJ0ZXIga2l0cyBhcmUgYmFzZWQgb24gd2VsbC1yZXNlYXJjaGVkIGxpcGlkIGNvbWJpbmF0aW9ucyBkZXNpZ25lZCBmb3Igc3RhYmlsaXR5IGFuZCBlbmNhcHN1bGF0aW9uIGVmZmljaWVuY3ksIG1ha2luZyB0aGVtIHN1aXRhYmxlIGZvciBtdWx0aXBsZSBleHBlcmltZW50cy4gVGhleSBzdWdnZXN0ZWQgdGhhdCBtb2RpZnlpbmcgbGlwaWQgY29tcG9uZW50cywgc3VjaCBhcyBpbmNvcnBvcmF0aW5nIGNob2xlc3Rlcm9sIGRlcml2YXRpdmVzLCBjb3VsZCBlbmhhbmNlIGNlbGx1bGFyIHVwdGFrZSBhbmQgb3ZlcmFsbCBlZmZpY2FjeS4gQWRkaXRpb25hbGx5LCB0aGV5IGNvbmZpcm1lZCB0aGUgcG9zc2liaWxpdHkgb2YgaW5jb3Jwb3JhdGluZyBhbnRpYm9kaWVzIGludG8gTE5QcyBhbmQgZW1waGFzaXplZCB0aGUgaW1wb3J0YW5jZSBvZiBjb25zaWRlcmluZyBpbnRlbGxlY3R1YWwgcHJvcGVydHkgd2hlbiBzZWxlY3RpbmcgbGlwaWRzIGZvciBjb21tZXJjaWFsIHVzZS4gVGhleSBhbHNvIHNob3dlZCBvcGVubmVzcyB0byBjb2xsYWJvcmF0aW9uLCBcclxuICAgICAgaW5jbHVkaW5nIG9mZmVyaW5nIGRpc2NvdW50cyBpbiBleGNoYW5nZSBmb3IgcmVjb2duaXRpb24gaW4gcHVibGljYXRpb25zLiBcclxuICAgICAgVGhlIGludGVyYWN0aW9uIHdpdGggQ29yZGVuIFBoYXJtYSBwcm92aWRlZCBzZXZlcmFsIGtleSBpbnNpZ2h0czo8L3A+LFxyXG4gICAgICA8dWw+XHJcbiAgICAgICAgPGxpPjxiPlNwcmF5IERyeWluZyBGZWFzaWJpbGl0eTo8L2I+IENvcmRlbiBQaGFybWEgaGFzblx1MjAxOXQgZXhwbG9yZWQgc3ByYXkgZHJ5aW5nIGV4dGVuc2l2ZWx5OyBjb25zdWx0YXRpb24gd2l0aCBzcGVjaWFsaXN0cyBpcyByZWNvbW1lbmRlZCBmb3IgYXNzZXNzaW5nIGZlYXNpYmlsaXR5IGFuZCBsaXBpZCBzdGFiaWxpdHkuPC9saT5cclxuICAgICAgICA8bGk+PGI+TE5QIFN0YWJpbGl0eTo8L2I+IFN0YWJpbGl0eSBvZiBMTlBzLCBwYXJ0aWN1bGFybHkgZm9yIGluaGFsYXRpb24gdGhlcmFwaWVzLCBuZWVkcyBlbXBpcmljYWwgdGVzdGluZywgY29uc2lkZXJpbmcgc2hlYXIgZm9yY2VzIGFuZCB0aGUgcG90ZW50aWFsIHVzZSBvZiBjcnlvcHJvdGVjdGFudHMgb3IgdGVtcGVyYXR1cmUgY29udHJvbC48L2xpPlxyXG4gICAgICAgIDxsaT48Yj5MaXBpZCBTZWxlY3Rpb24gaW4gS2l0czo8L2I+IFN0YXJ0ZXIga2l0cyB1c2Ugd2VsbC1yZXNlYXJjaGVkIGxpcGlkIGNvbWJpbmF0aW9ucywgdGVzdGVkIGZvciBzdGFiaWxpdHksIGVuY2Fwc3VsYXRpb24gZWZmaWNpZW5jeSwgYW5kIHBvdGVuY3kuIFRoZXkgcHJvdmlkZSBtYXRlcmlhbHMgZm9yIG11bHRpcGxlIGV4cGVyaW1lbnRhbCBiYXRjaGVzLjwvbGk+XHJcbiAgICAgICAgPGxpPjxiPkxpcGlkIE1vZGlmaWNhdGlvbnM6PC9iPiBFeHBsb3JpbmcgYWx0ZXJuYXRpdmUgbGlwaWRzIChlLmcuLCBjaG9sZXN0ZXJvbCBkZXJpdmF0aXZlcykgY291bGQgZW5oYW5jZSBzdGFiaWxpdHkgYW5kIGNlbGx1bGFyIHVwdGFrZSwgdGFpbG9yZWQgdG8gcHJvamVjdCBuZWVkcy48L2xpPlxyXG4gICAgICAgIDxsaT48Yj5BbnRpYm9keSBJbmNvcnBvcmF0aW9uOjwvYj4gQW50aWJvZGllcyBjYW4gYmUgaW5jb3Jwb3JhdGVkIGludG8gTE5QcyBkdXJpbmcgcHJlcGFyYXRpb24gb3IgYWZ0ZXJ3YXJkLCBkZXBlbmRpbmcgb24gdGFyZ2V0aW5nIHJlcXVpcmVtZW50cy48L2xpPlxyXG4gICAgICAgIDxsaT48Yj5JbnRlbGxlY3R1YWwgUHJvcGVydHk6PC9iPiBJUCBjb25zaWRlcmF0aW9ucyBhcmUgY3J1Y2lhbCB3aGVuIHNlbGVjdGluZyBsaXBpZHMgZm9yIExOUCBmb3JtdWxhdGlvbnMsIGFzIG1hbnkgbGlwaWRzIGFyZSBwYXRlbnRlZC48L2xpPlxyXG4gICAgICAgIDxsaT48Yj5Db2xsYWJvcmF0aW9uIE9wcG9ydHVuaXRpZXM6PC9iPiBDb3JkZW4gUGhhcm1hIGlzIG9wZW4gdG8gb2ZmZXJpbmcgZGlzY291bnRzIG9yIGZvcm1pbmcgcGFydG5lcnNoaXBzLCB3aXRoIHJlY29nbml0aW9uIGluIHB1YmxpY2F0aW9ucyBvciBhY2tub3dsZWRnbWVudHMuPC9saT5cclxuICAgICAgPC91bD5cclxuICAgICAgXSxcclxuICAgIGltcGxlbWVudGF0aW9uOiBbPHA+VGhlIGluc2lnaHRzIGZyb20gQ29yZGVuIFBoYXJtYSBoYWQgYSBtYWpvciBpbXBhY3Qgb24gb3VyIHByb2plY3QsIGVzcGVjaWFsbHkgaW4gc2VsZWN0aW5nIGxpcGlkcyBjcml0aWNhbCBmb3IgTE5QIHN0YWJpbGl0eSBhbmQgb3B0aW1pemluZyBnZW5lIHRoZXJhcHkgYXBwbGljYXRpb25zLiBJbml0aWFsbHksIHdlIHVzZWQgdGhlIENheW1hbiBraXQsIGJ1dCBpdCB3YXMgc3Vib3B0aW1hbCBmb3IgZGVsaXZlcmluZyBvdXIgUHJpbWVndWlkZS4gQWZ0ZXIgcmVjZWl2aW5nIGZlZWRiYWNrLCB3ZSBzd2l0Y2hlZCB0byBDb3JkZW4gUGhhcm1hXHUyMDE5cyBraXQgIzIsIHdoaWNoIGluY2x1ZGVzIGFkdmFuY2VkIGxpcGlkIGNvbXBvbmVudHMgbGlrZSBjYXRpb25pYyBsaXBpZHMgdGhhdCBpbXByb3ZlIGNlbGx1bGFyIHVwdGFrZSBhbmQgZW5oYW5jZSBMTlAgc3RhYmlsaXR5LiBUaGlzIHNoaWZ0IGhhcyBzaWduaWZpY2FudGx5IGJvb3N0ZWQgdGhlIGVmZmljaWVuY3kgYW5kIHJvYnVzdG5lc3Mgb2Ygb3VyIGZvcm11bGF0aW9ucy4gXHJcbiAgICAgIEFkZGl0aW9uYWxseSwgQ29yZGVuIFBoYXJtYSdzIGd1aWRhbmNlIG9uIGxpcGlkIG1vZGlmaWNhdGlvbnMgYW5kIGFudGlib2R5IGluY29ycG9yYXRpb24gb3BlbmVkIG5ldyBwb3NzaWJpbGl0aWVzIGZvciB0YXJnZXRlZCB0aGVyYXBpZXMuIFRoZXNlIGluc2lnaHRzIG5vdCBvbmx5IGltcHJvdmVkIG91ciB0ZWNobmljYWwgYXBwcm9hY2ggYnV0IGFsc28gcGF2ZWQgdGhlIHdheSBmb3IgcG90ZW50aWFsIGNvbGxhYm9yYXRpb25zLCBvZmZlcmluZyBjb3N0IGJlbmVmaXRzIGFuZCBpbmNyZWFzZWQgc2NpZW50aWZpYyByZWNvZ25pdGlvbi4gVGhlIGZlZWRiYWNrIHdpbGwgY29udGludWUgdG8gc2hhcGUgb3VyIHRlc3RpbmcgcHJvY2VzcyBhbmQgaW1wcm92ZSB0aGVyYXBldXRpYyBkZWxpdmVyeS4gPC9wPl0sXHJcbiAgICBpbnRlcnZpZXc6IDw+XHJcbiAgICA8UWFCb3ggcT1cIklzIGl0IHBvc3NpYmxlIHRvIGRyeSB0aGUgTE5QcyBkZXNpZ25lZCBieSBDb3JkZW4gUGhhcm1hLCBzdWNoIGFzIHRocm91Z2ggc3ByYXkgZHJ5aW5nP1wiIGE9XCJJdCBoYXMgbm90IGJlZW4gY29uZmlybWVkIHdoZXRoZXIgTE5QcyBoYXZlIGJlZW4gc3VjY2Vzc2Z1bGx5IGRyaWVkIHVzaW5nIHNwcmF5IGRyeWluZy4gRnVydGhlciBpbnZlc3RpZ2F0aW9uIG9yIGNvbnN1bHRhdGlvbiB3aXRoIGEgc3BlY2lhbGl6ZWQgY29tcGFueSB3b3VsZCBiZSByZXF1aXJlZCB0byBkZXRlcm1pbmUgZmVhc2liaWxpdHkuXCIvPlxyXG4gICAgPFFhQm94IHE9XCJIb3cgaXMgc3RhYmlsaXR5IGVuc3VyZWQgaW4gTE5QcywgcGFydGljdWxhcmx5IGZvciB1c2UgaW4gaW5oYWxhdGlvbiB0aGVyYXB5P1wiIGE9XCJUaGUgc3RhYmlsaXR5IGxhcmdlbHkgZGVwZW5kcyBvbiB0aGUgc3BlY2lmaWMgbGlwaWQgYW5kIFJOQSBjb21wb25lbnRzIHVzZWQgaW4gdGhlIGZvcm11bGF0aW9uLiBXaGlsZSB0aGUgc3RhYmlsaXR5IG9mIGluZGl2aWR1YWwgbGlwaWRzIGNhbiBiZSBhc3Nlc3NlZCwgdGhlIG92ZXJhbGwgc3RhYmlsaXR5IG9mIGEgbmV3IExOUCBmb3JtdWxhdGlvbiByZXF1aXJlcyBlbXBpcmljYWwgdGVzdGluZyB1bmRlciB2YXJpb3VzIGNvbmRpdGlvbnMuXCIvPlxyXG4gICAgPFFhQm94IHE9XCJIb3cgYXJlIGxpcGlkIGNvbWJpbmF0aW9ucyBzZWxlY3RlZCBmb3IgaW5jbHVzaW9uIGluIHRoZSBMTlAgc3RhcnRlciBraXRzLCBhbmQgd2hhdCB0ZXN0aW5nIGlzIGNvbmR1Y3RlZD9cIiBhPVwiTGlwaWQgY29tYmluYXRpb25zIGluIHRoZSBMTlAgc3RhcnRlciBraXRzIGFyZSBzZWxlY3RlZCBiYXNlZCBvbiBrbm93biBpbnRlcmFjdGlvbnMsIHBhcnRpY3VsYXJseSBpbiBmb3JtdWxhdGlvbnMgY29udGFpbmluZyBSTkEuIFRlc3RpbmcgaXMgY29uZHVjdGVkIHRvIGFzc2VzcyBwaHlzaWNhbC1jaGVtaWNhbCBwcm9wZXJ0aWVzLCBlbmNhcHN1bGF0aW9uIGVmZmljaWVuY3ksIGFuZCBvdmVyYWxsIHBvdGVuY3kuIFRoZSBraXRzIGFyZSBkZXNpZ25lZCB0byBwcm92aWRlIHN1ZmZpY2llbnQgbWF0ZXJpYWwgZm9yIG11bHRpcGxlIGV4cGVyaW1lbnRhbCBiYXRjaGVzLlwiLz5cclxuICAgIDxRYUJveCBxPVwiSXMgaXQgYWR2aXNhYmxlIHRvIG1vZGlmeSB0aGUgbGlwaWQgY29tcG9uZW50cyBpbiBhbiBleGlzdGluZyBMTlAgZm9ybXVsYXRpb24/XCIgYT1cIkl0IGlzIGdlbmVyYWxseSBhZHZpc2FibGUgdG8gY29uc2lkZXIgYWx0ZXJuYXRpdmUgbGlwaWQgY29tcG9uZW50cywgYXMgZGlmZmVyZW50IGxpcGlkcyBtYXkgb2ZmZXIgaW1wcm92ZWQgc3RhYmlsaXR5IG9yIGVmZmljYWN5LiBIb3dldmVyLCB0aGUgc3BlY2lmaWMgbmVlZHMgb2YgdGhlIHByb2plY3Qgd2lsbCBkaWN0YXRlIHdoZXRoZXIgY2hhbmdlcyBhcmUgbmVjZXNzYXJ5LlwiLz5cclxuICAgIDxRYUJveCBxPVwiSXMgaXQgcG9zc2libGUgdG8gaW5jb3Jwb3JhdGUgYW50aWJvZGllcyBpbnRvIExOUHMsIGFuZCB3aGF0IGlzIHRoZSByZWNvbW1lbmRlZCBhcHByb2FjaD9cIiBhPVwiWWVzLiBJbmNvcnBvcmF0aW9uIG9mIGFudGlib2RpZXMgaW50byBMTlBzIGlzIHBvc3NpYmxlLiBUaGlzIGNhbiBiZSBhY2hpZXZlZCBlaXRoZXIgZHVyaW5nIHRoZSBpbml0aWFsIHByZXBhcmF0aW9uIHBoYXNlIG9yIGJ5IGluY3ViYXRpbmcgYW50aWJvZGllcyB3aXRoIExOUHMgYWZ0ZXIgdGhlaXIgZm9ybWF0aW9uLCBkZXBlbmRpbmcgb24gd2hldGhlciBzdXJmYWNlIG9yIGludGVybmFsIGxvY2FsaXphdGlvbiBvZiBhbnRpYm9kaWVzIGlzIGRlc2lyZWQuIFJlZmVyZW5jZSB0byBzcGVjaWZpYyBzdHVkaWVzIG1heSBwcm92aWRlIGZ1cnRoZXIgZ3VpZGFuY2UuXCIvPlxyXG4gICAgPFFhQm94IHE9XCJXaGF0IGlzIENvcmRlbiBQaGFybWEncyBwb3NpdGlvbiBvbiBwcm9qZWN0cyBpbnZvbHZpbmcgZ2VuZSB0aGVyYXB5P1wiIGE9XCJDb3JkZW4gUGhhcm1hIG9wZXJhdGVzIGFzIGEgc2VydmljZSBwcm92aWRlciwgZm9jdXNpbmcgb24gdGhlIG1hbnVmYWN0dXJpbmcgb2YgYWN0aXZlIHBoYXJtYWNldXRpY2FsIGluZ3JlZGllbnRzIChBUElzKSBhbmQgZXhjaXBpZW50cyByYXRoZXIgdGhhbiBkZXZlbG9waW5nIHRoZXJhcGV1dGljIHByb2R1Y3RzLiBDb25zaWRlcmF0aW9uIHNob3VsZCBiZSBnaXZlbiB0byB0aGUgaW50ZWxsZWN0dWFsIHByb3BlcnR5IHN0YXR1cyBvZiB0aGUgbGlwaWRzIHVzZWQgaW4gTE5QIGZvcm11bGF0aW9ucywgcGFydGljdWxhcmx5IGZvciBjb21tZXJjaWFsIGFwcGxpY2F0aW9ucy5cIi8+XHJcbiAgIDwvPixcclxuICAgIHN1bW1hcnk6IFwiVGhlIHByaW1hcnkgZ29hbCBvZiB0aGUgY29tbXVuaWNhdGlvbiB3aXRoIFN0ZWZmZW4gQmlyYSBhbmQgU2VycmEgR1x1MDBGQ3JjYW4gZnJvbSBDb3JkZW4gUGhhcm1hIHdhcyB0byBleHBsb3JlIHRoZSB1c2Ugb2YgTGlwaWQgTmFub3BhcnRpY2xlcyAoTE5QcykgaW4gZ2VuZSB0aGVyYXB5IGFuZCBpbmhhbGF0aW9uIHRyZWF0bWVudHMuIENvcmRlbiBQaGFybWEgcmVjb21tZW5kZWQgY29uc3VsdGluZyBzcGVjaWFsaXN0cyBmb3IgYXNzZXNzaW5nIHNwcmF5IGRyeWluZyBmZWFzaWJpbGl0eSwgd2hpbGUgaGlnaGxpZ2h0aW5nIHRoZSBpbXBvcnRhbmNlIG9mIHRlc3RpbmcgTE5QIHN0YWJpbGl0eSB1bmRlciB2YXJpb3VzIGNvbmRpdGlvbnMuIFRoZWlyIExOUCBzdGFydGVyIGtpdHMgYXJlIG9wdGltaXplZCBmb3Igc3RhYmlsaXR5IGFuZCBlbmNhcHN1bGF0aW9uIGVmZmljaWVuY3ksIHdpdGggcG90ZW50aWFsIGZvciBsaXBpZCBtb2RpZmljYXRpb25zIHRvIGVuaGFuY2UgY2VsbHVsYXIgdXB0YWtlLiBUaGV5IGFsc28gY29uZmlybWVkIHRoYXQgYW50aWJvZGllcyBjYW4gYmUgaW5jb3Jwb3JhdGVkIGludG8gTE5QcyBhbmQgZW1waGFzaXplZCBjb25zaWRlcmluZyBpbnRlbGxlY3R1YWwgcHJvcGVydHkgd2hlbiBzZWxlY3RpbmcgbGlwaWRzLiBCYXNlZCBvbiBDb3JkZW4gUGhhcm1hXHUyMDE5cyBpbnNpZ2h0cywgd2Ugc3dpdGNoZWQgdG8gdGhlaXIga2l0ICMyIGZvciBvdXIgcHJvamVjdCwgIGhvcGluZyB0byBpbXByb3ZlIHRoZSBzdGFiaWxpdHkgYW5kIGVmZmljaWVuY3kgb2Ygb3VyIExOUCBmb3JtdWxhdGlvbnMuIFRoZWlyIGd1aWRhbmNlIGFsc28gb3BlbmVkIG9wcG9ydHVuaXRpZXMgZm9yIHRhcmdldGVkIHRoZXJhcGllcyBhbmQgY29sbGFib3JhdGlvbnMuIFRoaXMgZmVlZGJhY2sgd2lsbCBjb250aW51ZSB0byBlbmhhbmNlIG91ciB0ZXN0aW5nIGFuZCB0aGVyYXBldXRpYyBhcHByb2FjaGVzLlwiLFxyXG4gICAgbW9udGhzOiBcImp1bHlcIixcclxuICAgIHBpY3R1cmV1cmxfaW50ZXJ2aWV3OlwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2hwL2hwLWNvcmRlbi16b29tLnBuZ1wiXHJcbiAgfSxcclxuICB7XHJcbiAgICB2b3JuYW1lOiBcIidNSU5UIFNvbW1lcidcIixcclxuICAgIG5hY2hubmFtZTogXCJcIixcclxuICAgIHBpY3R1cmV1cmw6IHBpY3NbJ21pbnQnXSxcclxuICAgIHRhZzogXCJFZHVjYXRpb25cIixcclxuICAgIGhlYWRpbmc6IFwiSW5ub3ZhdGl2ZSBtaW5kcyB1bml0ZTogaUdFTSdzIHBhcnRpY2lwYXRpb24gaW4gJ01JTlQgU29tbWVyJ1wiLFxyXG4gICAgaW50ZXJ2aWV3dGFiaWQ6IFwibWludGhwdGltZVwiLFxyXG4gICAgdHlwZTogXCJtZXRhXCIsXHJcblxyXG4gICAgcXVvdGVOYWNobmFtZTogXCJMYW5nZSwgVGVhbW1lbWJlclwiLFxyXG4gICAgcXVvdGVWb3JuYW1lOiBcIktheWFcIixcclxuICAgIHF1b3RlOiBcIkl0IHdhcyBhbWF6aW5nIHRvIHNlZSBob3cgZXhjaXRpbmcgdGhlIGNvbnZlcnNhdGlvbnMgd2VyZSB3aXRoIGZ1dHVyZSBTVEVNIHNjaWVudGlzdHMgYW5kIHRvIGhlYXIgdGhlIGZyZXNoIHBlcnNwZWN0aXZlcyBmcm9tIHlvdW5nIG1pbmRzLiBUaGUgZW50aXJlIGV4cGVyaWVuY2Ugd2FzIGJvdGggaW5zcGlyaW5nIGFuZCBlbmVyZ2l6aW5nLlwiLFxyXG4gICAgc3VtbWFyeTogWzxwPk1JTlQgU29tbWVyIDIwMjQgaXMgYSBwcm9ncmFtIGZvciBoaWdoIHNjaG9vbCBncmFkdWF0ZXMgaW50ZXJlc3RlZCBpbiBTVEVNIGZpZWxkcywgYW5kIGlHRU0gQmllbGVmZWxkIHBhcnRpY2lwYXRlZCB0byByYWlzZSBhd2FyZW5lc3MgYWJvdXQgQ0YgYW5kIHByb21vdGUgdGhlaXIgZ2VuZSB0aGVyYXB5IHJlc2VhcmNoLiBUaGUgdGVhbSBlbmdhZ2VkIGZ1dHVyZSBzY2llbnRpc3RzLCBleHBsYWluaW5nIHRoZSBpR0VNIGNvbXBldGl0aW9uIGFuZCB0aGVpciBzeW50aGV0aWMgYmlvbG9neSBhcHByb2FjaCB0byBhZGRyZXNzIENGLiBVc2luZyBpbnNpZ2h0cyBmcm9tIHByZXZpb3VzIHdvcmtzaG9wcywgdGhleSBkZXNpZ25lZCBpbnRlcmFjdGl2ZSBhY3Rpdml0aWVzIHRvIG1ha2UgdGhlIGNvbXBsZXhpdGllcyBvZiBDRiBhY2Nlc3NpYmxlIHRvIGF0dGVuZGVlcy4gT3ZlciB0d28gd2Vla3MsIHRoZXkgZm9ybWVkIG1lYW5pbmdmdWwgY29ubmVjdGlvbnMgd2l0aCBwcm9mZXNzb3JzLCBzdHVkZW50cywgYW5kIFNURU0gcHJvZmVzc2lvbmFscywgZW5yaWNoaW5nIHRoZWlyIHJlc2VhcmNoIGRpc2N1c3Npb25zLiBPdmVyYWxsLCB0aGUgZXZlbnQgaGVscGVkIGltcHJvdmUgdGhlaXIgc2NpZW5jZSBjb21tdW5pY2F0aW9uIHNraWxscyBhbmQgZm9zdGVyZWQgdmFsdWFibGUgcHJvZmVzc2lvbmFsIGdyb3d0aC48L3A+XSxcclxuICAgIG1vbnRoczogXCJKdWx5XCJcclxuICB9LFxyXG4gIHtcclxuICAgIHRpdGxlOiBcIkRyLlwiLFxyXG4gICAgdm9ybmFtZTogXCJTdmVuamFcIixcclxuICAgIG5hY2hubmFtZTogXCJWaW5rZVwiLFxyXG4gICAgam9iOiBcIlBvc3REb2NcIixcclxuICAgIGFmZmlsaWF0aW9uOiBcImF0IERlcGFydG1lbnQgb2YgR2VuZXRpY3MsIEhhcnZhcmQgTWVkaWNhbCBTY2hvb2wsIGZvcm1lciBpR0VNZXJcIixcclxuICAgIHBpY3R1cmV1cmw6IHBpY3NbJ3N2ZW5qYSddLFxyXG4gICAgdGFnOiBcIkFjYWRlbWlhXCIsXHJcbiAgICBoZWFkaW5nOiBcIkluc2lnaHRzIG9uIHRoZSBGZWFzaWJpbGl0eSBvZiBQQUNFIGZvciBQcmltZSBFZGl0aW5nIE9wdGltaXphdGlvblwiLFxyXG4gICAgaW50ZXJ2aWV3dGFiaWQ6IFwic3ZlbmphXCIsXHJcblxyXG4gICAgbGFuZ3VhZ2U6IFwiZGVcIixcclxuICAgIHF1b3RlOiBcIlRoZSBTYWZldHkgYW5kIFNlY3VyaXR5IEF3YXJkIGF0IGlHRU0gdW5kZXJzY29yZXMgY29tbWl0bWVudCB0byByZXNwb25zaWJsZSByZXNlYXJjaCBhbmQgaW5ub3ZhdGlvbiwgZW5zdXJpbmcgdGhhdCB0aGUgcHJvamVjdHMgcHJpb3JpdGl6ZSB0aGUgd2VsbC1iZWluZyBvZiBwZW9wbGUgYW5kIHRoZSBlbnZpcm9ubWVudCB3aGlsZSBhZHZhbmNpbmcgc3ludGhldGljIGJpb2xvZ3kuXCIsXHJcbiAgICBxdW90ZU5hY2huYW1lOiBcIlZpbmtlICxNZW1iZXIgb2YgdGhlIFNhZmV0eSBhbmQgU2VjdXJpdHkgQ29tbWl0dGVlIGF0IGlHRU0gSFEgXCIsXHJcbiAgICBxdW90ZVZvcm5hbWU6IFwiRHIuIFN2ZW5qYVwiLFxyXG4gICAgYWltb2Zjb250YWN0OiBbPHA+V2UgY29udGFjdGVkIFN2ZW5qYSBWaW5rZSwgYSBmb3JtZXIgaUdFTWVyIGZyb20gQmllbGVmZWxkIGFuZCBNZW1iZXIgb2YgdGhlIFNhZmV0eSBhbmQgU2VjdXJpdHkgQ29tbWl0dGVlIGF0IGlHRU0gSFEgLCB0byBnZXQgaGVyIGluc2lnaHQgYW5kIGhlciBvcGluaW9uIHJlZ2FyZGluZyB0aGUgdXNlIG9mIHBoYWdlIGFzc2lzdGVkIGNvbnRpbnVvdXMgZXZvbHVXZSBjb250YWN0ZWQgU3ZlbmphIFZpbmtlLCBhIGZvcm1lciBpR0VNZXIgZnJvbSBCaWVsZWZlbGQsIHRvIGdldCBoZXIgaW5zaWdodCBhbmQgaGVyIG9waW5pb24gcmVnYXJkaW5nIHRoZSB1c2Ugb2YgcGhhZ2UgYXNzaXN0ZWQgY29udGludW91cyBldm9sdXRpb25cclxuICAgICAgKFBBQ0UsIHNlZSBlbmdpbmVlcmluZyBjeWNsZSAxKSBmb3Igb3VyIHByaW1lIGVkaXRpbmcgb3B0aW1pemF0aW9ucy4gU3ZlbmphIHdvcmtzIGF0IHRoZSBpR0VNIFNhZmV0eSBhbmQgU2VjdXJpdHkgQ29tbWl0dGVlLiBBZGRpdGlvbmFsbHksIHNoZSB3YXMgcGFydCBvZiB0aGUgQmlvc2FmZXR5IGFuZCBTZWN1cml0eSBBd2FyZCBUZWFtIG9mIEJpZWxlZmVsZCBVbml2ZXJzaXR5IGluIDIwMTYuPC9wPl0sXHJcbiAgICBpbnNpZ2h0czogWzxwPlN2ZW5qYSBleHBsYWluZWQsIHRoYXQgYSBQQUNFIGFwcHJvYWNoIGlzIG5vdCBmZWFzaWJsZSB0byB1c2UgZm9yIG9wdGltaXphdGlvbiBvZiBvdXIgbmlja2FzZSBjYW5kaWRhdGVzIGJlY2F1c2Ugb2Ygc2V2ZXJhbCByZWFzb25zOjwvcD4sXHJcbiAgICA8dWw+XHJcbiAgICAgIDxsaT5JbXBsZW1lbnRpbmcgYSBQQUNFIHN5c3RlbSB0YWtlcyB3YXkgdG9vIG11Y2ggdGltZSB0byB1c2UgZm9yIG91ciBwcm9qZWN0LjwvbGk+XHJcbiAgICAgIDxsaT5FbmRvbnVjbGVhc2VzIG1pZ2h0IGJlIHRvbyBiaWcgdG8gb3B0aW1pemUgdXNpbmcgUEFDRS48L2xpPlxyXG4gICAgICA8bGk+VW5zcGVjaWZpYyBjdXR0aW5nIG9yIG5pY2tpbmcgaW4gdGhlIGJhY3RlcmlhbCBnZW5vbWUga2lsbHMgdGhlIGNlbGxzLCB3aGljaCBtYWtlcyBvcHRpbWl6YXRpb24gb2YgZW5kb251Y2xlYXNlcyB2ZXJ5IGNoYWxsZW5naW5nLjwvbGk+XHJcbiAgICAgIDxsaT5QcmltZSBlZGl0aW5nIGluIEUuIGNvbGkgY2VsbHMgaXMgbGVzcyBlZmZlY3RpdmUgY29tcGFyZWQgdG8gaHVtYW4gY2VsbHMsIHdoaWNoIG1pZ2h0IGltcGFpciB0aGUgZXZvbHV0aW9uIHByb2Nlc3MuPC9saT5cclxuICAgIDwvdWw+XHJcbiAgICBdLFxyXG4gICAgaW1wbGVtZW50YXRpb246IFs8cD5PbiB0aGUgYmFzaXMgb2YgU3ZlbmphXHUyMDE5cyBhbmQgb3RoZXIgb3BpbmlvbnMgb24gdGhlIHRvcGljLCB3ZSBkZWNpZGVkIG5vdCB0byB0cnkgaW1wbGVtZW50aW5nIGEgUEFDRSBzeXN0ZW0uIDwvcD5dLFxyXG4gICAgc3VtbWFyeTogXCJXZSByZWFjaGVkIG91dCB0byBTdmVuamEgVmlua2UsIGEgZm9ybWVyIGlHRU1lciBhbmQgUG9zdGRvYywgdG8gZ2FpbiBpbnNpZ2h0cyBvbiB1c2luZyBwaGFnZS1hc3Npc3RlZCBjb250aW51b3VzIGV2b2x1dGlvbiAoUEFDRSkgZm9yIG9wdGltaXppbmcgb3VyIHByaW1lIGVkaXRpbmcuIFN2ZW5qYSBleHBsYWluZWQgdGhhdCBhIFBBQ0UgYXBwcm9hY2ggaXMgbm90IGZlYXNpYmxlIGZvciBvdXIgbmlja2FzZSBjYW5kaWRhdGVzIGR1ZSB0byBzZXZlcmFsIHJlYXNvbnM6IGl0IHJlcXVpcmVzIHRvbyBtdWNoIHRpbWUsIGVuZG9udWNsZWFzZXMgYXJlIGxpa2VseSB0b28gbGFyZ2UgZm9yIG9wdGltaXphdGlvbiwgdW5zcGVjaWZpYyBjdXR0aW5nIGNhbiBraWxsIGJhY3RlcmlhbCBjZWxscywgYW5kIHByaW1lIGVkaXRpbmcgaXMgbGVzcyBlZmZlY3RpdmUgaW4gRS4gY29saSB0aGFuIGluIGh1bWFuIGNlbGxzLiBCYXNlZCBvbiBTdmVuamEncyBmZWVkYmFjayBhbmQgb3RoZXIgZXhwZXJ0IG9waW5pb25zLCB3ZSBkZWNpZGVkIGFnYWluc3QgaW1wbGVtZW50aW5nIGEgUEFDRSBzeXN0ZW0gZm9yIG91ciBwcm9qZWN0LlwiLFxyXG4gICAgbW9udGhzOiBcIkp1bHlcIlxyXG4gIH0sXHJcbiAge1xyXG4gICAgdGl0bGU6IFwiRHIuXCIsXHJcbiAgICB2b3JuYW1lOiBcIkV2YS1NYXJpYVwiLFxyXG4gICAgbmFjaG5uYW1lOiBcIkJlcmVuc1wiLFxyXG4gICAgam9iOiBcIkV0aGljcyBDb21taXR0ZWUgb2YgQmllbGVmZWxkIFVuaXZlcnNpdHlcIixcclxuICAgIGFmZmlsaWF0aW9uOiBcIkJpZWxlZmVsZCBVbml2ZXJzaXR5XCIsXHJcbiAgICBwaWN0dXJldXJsOiBwaWNzWydiZXJlbnMnXSxcclxuICAgIHRhZzogXCJBY2FkZW1pYVwiLFxyXG4gICAgaGVhZGluZzogXCJCaW9ldGhpY3M6IEJlc3QgUHJhY3RpY2VzIGZvciBIYW5kbGluZyBQYXRpZW50IERhdGEgYW5kIFByaW1hcnkgQ2VsbHNcIiwgLyogR3VpZGFuY2UgZnJvbSBFdGhpY3MgQ29tbWl0dGVlIG9uIEJlc3QgUHJhY3RpY2VzIGZvciBQYXRpZW50IERhdGEgYW5kIFByaW1hcnkgQ2VsbHMgKi9cclxuICAgIGludGVydmlld3RhYmlkOiBcImJlcmVuc1wiLFxyXG5cclxuICAgIGxhbmd1YWdlOiBcImRlXCIsXHJcbiAgICBxdW90ZTogXCJUaGUgbW9zdCBpbXBvcnRhbnQgdGhpbmcgaXMgYSBkZXRhaWxlZCBsZXR0ZXIgb2YgY29uc2VudCBhbmQgYSBkZXRhaWxlZCBwcml2YWN5IHBvbGljeS4gVGhpcyBtdXN0IGV4cGxhaW4gdG8gdGhlIHBhdGllbnQgYXMgcHJlY2lzZWx5IGFzIHBvc3NpYmxlIHdoYXQgaGFwcGVucyB0byB0aGVpciBjZWxscyBhbmQgZGF0YSwgYXMgd2VsbCBhcyB0aGUgdGltZSBzcGFuLCB3aGljaCBwZW9wbGUgYXJlIGludm9sdmVkIG9yIGhhdmUgYWNjZXNzIHRvIHRoZSBjZWxscyBhbmQgaG93LlwiLFxyXG4gICAgYWltb2Zjb250YWN0OiBcIlRoZSBhaW0gb2YgdGhlIGludGVydmlldyB3YXMgdG8gZ2V0IGFuIGFuc3dlciB0byB0aGUgcXVlc3Rpb24gb2Ygd2hldGhlciB3ZSBuZWVkIGFuIGV0aGljcyB2b3RlIGZvciBvdXIgcHJvamVjdCBvciBub3QgYW5kIHRvIG9idGFpbiBndWlkZWxpbmVzIGZvciBkZWFsaW5nIHdpdGggcGF0aWVudCBjZWxscyByZWdhcmRpbmcgZXRoaWNhbCBpc3N1ZXMgYW5kIGRhdGEgcHJvdGVjdGlvbi4gXCIsXHJcbiAgICBpbnNpZ2h0czogXCJUaGUgZGlzY3Vzc2lvbiB3YXMgdmVyeSBpbmZvcm1hdGl2ZSBpbiB0ZXJtcyBvZiBob3cgd2Ugc2hvdWxkIGFwcHJvYWNoIHRoaXMgdG9waWMgYW5kIGZvY3VzZWQgcHJpbWFyaWx5IG9uIHRoZSBpbXBvcnRhbnQgZmFjdG9ycyB0aGF0IG5lZWQgdG8gYmUgY29uc2lkZXJlZCB3aGVuIHBsYW5uaW5nIHRoZSBoYW5kbGluZyBvZiBwYXRpZW50IGNlbGxzLiBUaGVzZSBpbmNsdWRlIHdoaWNoIGxlZ2FsIHByaW5jaXBsZXMgbmVlZCB0byBiZSBvYnNlcnZlZCwgZGF0YSBwcm90ZWN0aW9uLCBldGhpY2FsIGNvbnNpZGVyYXRpb25zIGFuZCwgYWJvdmUgYWxsLCBkZXRhaWxlZCBhbmQgc3BlY2lmaWMgaW5mb3JtYXRpb24gZm9yIHRoZSBkb25vci4gSXQgYWxzbyBtYWRlIHVzIGxvb2sgYXQgdGhlIHNpdHVhdGlvbiBmcm9tIG1hbnkgZGlmZmVyZW50IGFuZ2xlcyBhbmQgY29uc2lkZXIgdGhlIHJpc2tzIG9mIHdvcnN0LWNhc2Ugc2NlbmFyaW9zLiBPdmVyYWxsLCB0aGlzIGludGVydmlldyB3YXMgdmVyeSB1c2VmdWwgdG8gdXMsIGFuZCB3ZSB3ZXJlIGFibGUgdG8gdXNlIHRoZSBpbmZvcm1hdGlvbiB3ZSBnYWluZWQgdG8gZGV2ZWxvcCBhIGtpbmQgb2YgZ3VpZGVsaW5lIHRoYXQgYWxsb3dlZCB1cyB0byBhcHByb2FjaCB0aGlzIHNlbnNpdGl2ZSB0b3BpYywgd2hpY2ggd2FzIG5ldyB0byB1cywgd2l0aCBhIGNlcnRhaW4gZGVncmVlIG9mIGNvbmZpZGVuY2UuIFwiLFxyXG4gICAgaW1wbGVtZW50YXRpb246IFwiQmFzZWQgb24gdGhlIGtub3dsZWRnZSB3ZSBoYXZlIGdhaW5lZCwgd2UgaGF2ZSBkcmF3biB1cCBndWlkZWxpbmVzIGZvciBvdXIgaGFuZGxpbmcgb2YgdGhlIGNlbGxzLiBXZSB1c2VkIHRoaXMgZ3VpZGUgd2hlbiBoYW5kbGluZyB0aGUgcGF0aWVudCBjZWxscywgdG8gZW5zdXJlIHRoZXkgd2VyZSBoYW5kbGVkIGluIGFuIGV0aGljYWxseSBjb3JyZWN0IG1hbm5lci5cIixcclxuICAgIHN1bW1hcnk6IFwiVGhpcyBpbnRlcnZpZXcgZm9jdXNlZCBvbiB0aGUgZXRoaWNhbCBhbmQgbGVnYWwgY29uc2lkZXJhdGlvbnMgb2YgaGFuZGxpbmcgcGF0aWVudCBjZWxscywgd2Ugc291Z2h0IHRvIGRldGVybWluZSB3aGV0aGVyIG91ciBwcm9qZWN0IHJlcXVpcmVkIGFuIGV0aGljcyB2b3RlIGFuZCB0byBnYXRoZXIgZ3VpZGVsaW5lcyBvbiBkYXRhIHByb3RlY3Rpb24gYW5kIHBhdGllbnQgY29uc2VudC4gVGhlIGV4cGVydCBlbXBoYXNpemVkIHRoZSBpbXBvcnRhbmNlIG9mIHByb3ZpZGluZyBwYXRpZW50cyB3aXRoIGEgZGV0YWlsZWQgY29uc2VudCBsZXR0ZXIgYW5kIHByaXZhY3kgcG9saWN5LCBjbGVhcmx5IGV4cGxhaW5pbmcgaG93IHRoZWlyIGNlbGxzIGFuZCBkYXRhIHdpbGwgYmUgdXNlZCwgd2hvIHdpbGwgaGF2ZSBhY2Nlc3MsIGFuZCB0aGUgdGltZSBzcGFuIGludm9sdmVkLiBUaGlzIGNvbnZlcnNhdGlvbiBoZWxwZWQgdXMgdW5kZXJzdGFuZCBrZXkgbGVnYWwgYW5kIGV0aGljYWwgcHJpbmNpcGxlcywgZXNwZWNpYWxseSByZWdhcmRpbmcgdHJhbnNwYXJlbmN5IHdpdGggZG9ub3JzLiBXZSB1c2VkIHRoZXNlIGluc2lnaHRzIHRvIGRldmVsb3AgZ3VpZGVsaW5lcyBmb3IgaGFuZGxpbmcgcGF0aWVudCBjZWxscywgZW5zdXJpbmcgd2UgYXBwcm9hY2hlZCB0aGlzIHNlbnNpdGl2ZSBwcm9jZXNzIHdpdGggY29uZmlkZW5jZSBhbmQgZXRoaWNhbCBjYXJlLlwiLFxyXG4gICAgbW9udGhzOiBcIkp1bHlcIixcclxuICAgIHBpY3R1cmV1cmxfaW50ZXJ2aWV3OlwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvaW50ZWdyYXRlZC1odW1hbi1wcmFjdGljZXMvaW50ZXJ2aWV3LWJlcmVucy53ZWJwXCIsXHJcbiAgfSxcclxuICB7XHJcbiAgICB0aXRsZTogXCJNLlNjLlwiLFxyXG4gICAgdm9ybmFtZTogXCJNYXR0aWpzXCIsXHJcbiAgICBuYWNobm5hbWU6IFwiQnVsY2FlblwiLFxyXG4gICAgam9iOiBcIlBoRCBSZXNlYXJjaGVyIGF0IExhYm9yYXRvcnkgZm9yIE1vbGVjdWxhciBWaXJvbG9neSAmIEdlbmUgVGhlcmFweVwiLFxyXG4gICAgYWZmaWxpYXRpb246IFwiS1UgTGV1dmVuXCIsXHJcbiAgICBwaWN0dXJldXJsOiBwaWNzWydtYXR0aWpzJ10sXHJcbiAgICB0YWc6IFwiQWNhZGVtaWFcIixcclxuICAgIGhlYWRpbmc6IFwiVmlzaXQgTWF0dGlqcyBCdWxjYWVuIGluIExldXZlbiBhbmQgdGhlIExhYm9yYXRvcnkgZm9yIE1vbGVjdWxhciBWaXJvbG9neSAmIEdlbmUgVGhlcmFweVwiLFxyXG4gICAgaW50ZXJ2aWV3dGFiaWQ6IFwibWF0dGlqc3Zpc2l0XCIsXHJcblxyXG4gICAgbGFuZ3VhZ2U6IFwiZW5cIixcclxuICAgIHF1b3RlOiBcIkl0IHdhcyBpbXByZXNzaXZlIHRvIG1lZXQgaGltIGluIHBlcnNvbiBhbmQgcmVhbGl6ZSBob3cgZGVlcGx5IGtub3dsZWRnZWFibGUgaGUgaXMgb24gdGhlIHN1YmplY3Q7IGhpcyBpbnNpZ2h0cyB3ZXJlIGluY3JlZGlibHkgaGVscGZ1bC5cIixcclxuICAgIHF1b3RlTmFjaG5hbWU6IFwiTXVuZHQsIFRlYW1tZW1iZXJcIixcclxuICAgIHF1b3RlVm9ybmFtZTogXCJQaGlsaXBcIixcclxuICAgIGFpbW9mY29udGFjdDogWzxwPkFmdGVyIG91ciBmaXJzdCBpbnRlcnZpZXcgd2l0aCBNYXR0aWpzIEJ1bGNhZW4gd2Ugc3RheWVkIGluIGNvbnRhY3QgdmlhIGVtYWlsIGFuZCBldmVudHVhbGx5IHZpc2l0ZWQgaGltIGluIExldXZlbiBhdCBoaXMgbGFib3JhdG9yeS4gSGVyZSB3ZSB3YW50ZWQgdG8gZ2FpbiBmdXJ0aGVyIGluZm9ybWF0aW9uIGFib3V0IHRoZSBDRlRSIEY1MDhkZWwgbW9kZWxzIGFuZCBlZGl0aW5nIGNvbmZpcm1hdGlvbi48L3A+XSxcclxuICAgIGluc2lnaHRzOiBbPHA+V2Ugc3Bva2UgYWJvdXQgYXBwcm9hY2hlcyBmb3IgdGVzdGluZyBDRlRSIEY1MDhkZWwgY29ycmVjdGlvbiBpbiBtb2RlbHMgYW5kIG1ldGhvZHMgb2YgY29uZmlybWF0aW9uLiBJbiB0aGlzIGNvbnRleHQgd2UgdGFsa2VkIGFib3V0IEhFSzI5M1QgY2VsbCBsaW5lcyBlc3RhYmxpc2hlZCBpbiBoaXMgbGFib3JhdG9yeSB0aGF0IHN0YWJseSBvdmVyZXhwcmVzcyBDRlRSIHdpbGQtdHlwZSBhbmQgRjUwOGRlbC4gV2UgYWxzbyBkaXNjdXNzZWQgaG93IHRvIGhhbmRsZSB0aGVzZSBjZWxsIGxpbmVzLiBIZSBleHBsYWluZWQsIHRoYXQgdGhlIENGVFIgaXMgZnVzZWQgd2l0aCBhIDNIQSB0YWcsIHRoYXQgaW4gd2lsZC10eXBlIENGVFIgd291bGQgYmUgZXhwb3NlZCB0byB0aGUgZXh0cmFjZWxsdWxhciBzcGFjZSBhbmQgdGhlcmVmb3JlIGNhbiBiZSB1c2VkIGZvciBpbW11bm9oaXN0b2NoZW1pY2FsIHN0YWluaW5nIG9mIHRoZSBwcm90ZWluLCBzaG93aW5nIGNvcnJlY3QgcHJvdGVpbiBwcm9jZXNzaW5nIGFuZCBjaGFubmVsbGluZy4gQWxzbywgdGhpcyBhbGxvd3MgZm9yIGEgd2VzdGVybiBibG90IHRvIGJlIG1hZGUgdXNpbmcgM0hBIGFudGlib2RpZXMuIEZ1bmN0aW9uYWwgcmVjb3Zlcnkgb2YgQ0ZUUiBjYW4gYWxzbyBiZSB2aXN1YWxpemVkIHVzaW5nIGhhbGlkZSBzZW5zaXRpdmUgZVlGUCBvciBvcmdhbm9pZCBhc3NheSwgdGhlIGxhZGRlciBNYXR0aWpzIGhhZCBlc3RhYmxpc2hlZCBhbiBhdXRvbWF0ZWQgcmVhZG91dC4gRnVydGhlcm1vcmUsIHdlIHRhbGtlZCBhYm91dCBob3cgdG8gaGFuZGxlIFNhbmdlciBzZXF1ZW5jaW5nIGRhdGEgdG8gYW5hbHlzZSBlZGl0cyBhbmQgZGlzY3Vzc2VkIHRoZSBwb3NzaWJpbGl0eSB0byBhdm9pZCB0aGUgd2Vha25lc3NlcyBvZiBTYW5nZXIgc2VxdWVuY2luZyBieSB1c2luZyBOYW5vcG9yZSBzZXF1ZW5jaW5nIGluc3RlYWQuIFdlIGFza2VkIGFib3V0IHRoZSBhcHBsaWNhYmlsaXR5IG9mIHBhdGNoIGNsYW1wIGFuYWx5c2lzIGluIHRoZSBjb250ZXh0IG9mIENGVFIgYW5kIE1hdHRpanMgc2FpZCB0aGF0LCB0byBoaXMga25vd2xlZGdlLCBpdCBoYXMgbm90IGJlZW4gdXNlZCB0byB0ZXN0IGZvciBzdWNjZXNzZnVsIGVkaXRpbmcgaW4gQ0ZUUi5cclxuICAgIExhc3RseSBNYXR0aWpzIGV4cGxhaW5lZCBob3cgaGUgcGxhbnMgdG8gZGVsaXZlciB0aGUgcHJpbWUgZWRpdGluZyBjb21wbGV4IHRvIHRoZSBwYXRpZW50LCBhbmQgd2UgZXZhbHVhdGVkIHRoZSBhZHZhbnRhZ2VzIGFuZCBkaXNhZHZhbnRhZ2VzIG9mIGRlbGl2ZXJ5IHN0cmF0ZWdpZXMsIGluY2x1ZGluZyBvdXIgdmVyeSBvd24gTE5QIGFwcHJvYWNoLjwvcD5dLFxyXG4gICAgaW1wbGVtZW50YXRpb246IFs8cD5XaGVuIHBsYW5uaW5nIGhvdyB0byB0ZXN0IGFuZCBjb25maXJtIGVkaXRpbmcgYnkgb3VyIG93biBjb25zdHJ1Y3RzLCB3ZSB3ZXJlIGxhcmdlbHkgaW5zcGlyZWQgYnkgdGhlIGluZm9ybWF0aW9uIGdpdmVuIHRvIHVzIGJ5IE1hdHRpanMuIEZvciBleGFtcGxlLCB3ZSB0ZXN0ZWQgcHJpbWUgZWRpdGluZyBpbiB0aGUgSEVLMjkzIGNlbGwgbGluZXMgd2Ugc3Bva2UgYWJvdXQgd2l0aCBNYXR0aWpzIGFuZCB1c2VkIGhhbGlkZSBzZW5zaXRpdmUgZVlGUCB0byBjaGVjayBmb3IgQ0ZUUiBmdW5jdGlvbi4gQWxzbywgd2UgdHJpZWQgZGlmZmVyZW50aWF0aW5nIHdpbGQtdHlwZSBhbmQgRjUwOGRlbCBjZWxscyB1c2luZyBwYXRjaCBjbGFtcC4gVW5mb3J0dW5hdGVseSwgYSBsb3Qgb2YgdGhlIG1ldGhvZHMgbWVudGlvbmVkIHdlcmUgbm90IHVzYWJsZSBmb3IgdXMgYmVjYXVzZSBvZiB0aW1lIGNvbnN0cmFpbnRzLCBidXQgYXJlIHN0aWxsIHZhbHVhYmxlIGZvciBmdXR1cmUgcHJvamVjdHMgYW5kIHJlc2VhcmNoIGJ1aWx0IHVwb24gUHJlQ3lzZS4gPC9wPl0sXHJcbiAgICBzdW1tYXJ5OiBcIldlIHZpc2l0ZWQgTWF0dGlqcyBCdWxjYWVuIGluIExldXZlbiB0byBlbmhhbmNlIG91ciB1bmRlcnN0YW5kaW5nIG9mIENGVFIgRjUwOGRlbCBtb2RlbHMgYW5kIGVkaXRpbmcgY29uZmlybWF0aW9uLiBEdXJpbmcgdGhlIHZpc2l0LCB3ZSBleGFtaW5lZCBIRUsyOTNUIGNlbGwgbGluZXMgdGhhdCBzdGFibHkgb3ZlcmV4cHJlc3Mgd2lsZC10eXBlIENGVFIgYW5kIHRoZSBGNTA4ZGVsIHZhcmlhbnQuIE1hdHRpanMgZGVtb25zdHJhdGVkIGhvdyB0byB1c2UgYSAzSEEgdGFnIGZvciB2aXN1YWxpemluZyBwcm90ZWluIHByb2Nlc3NpbmcgYW5kIGRpc2N1c3NlZCBtZXRob2RzIGZvciBhc3Nlc3NpbmcgQ0ZUUiBmdW5jdGlvbmFsIHJlY292ZXJ5LiBXZSBhbHNvIGNvbXBhcmVkIFNhbmdlciBhbmQgTmFub3BvcmUgc2VxdWVuY2luZyB0ZWNobmlxdWVzIGFuZCBldmFsdWF0ZWQgZGVsaXZlcnkgc3RyYXRlZ2llcyBmb3Igb3VyIHByaW1lIGVkaXRpbmcgY29tcGxleC4gVGhlIGluc2lnaHRzIGZyb20gdGhpcyB2aXNpdCBndWlkZWQgb3VyIHByb2plY3QsIGxlYWRpbmcgdXMgdG8gdGVzdCBwcmltZSBlZGl0aW5nIGluIEhFSzI5M1QgY2VsbHMgdXNpbmcgaGFsaWRlLXNlbnNpdGl2ZSBlWUZQLiBXaGlsZSBzb21lIG1ldGhvZHMgd2VyZSBub3QgZmVhc2libGUgZHVlIHRvIHRpbWUgY29uc3RyYWludHMsIHRoZXkgbGFpZCB0aGUgZ3JvdW5kd29yayBmb3IgZnV0dXJlIHJlc2VhcmNoIGluIHRoZSBQcmVDeXNlIHByb2plY3QuXCIsXHJcbiAgICBtb250aHM6IFwianVseVwiXHJcbiAgfSxcclxuICB7XHJcbiAgICB2b3JuYW1lOiBcIkNvbGxhYm9yYXRpb25zXCIsXHJcbiAgICBuYWNobm5hbWU6IFwiaUdFTSBUZWFtIExpbmtcdTAwRjZwaW5nIFwiLFxyXG4gICAgdHlwZTogXCJtZXRhXCIsXHJcbiAgICBwaWN0dXJldXJsOiBwaWNzWydsaW5rXHUwMEY2cGluZyddLFxyXG4gICAgdGFnOiBcIk90aGVyXCIsXHJcbiAgICBoZWFkaW5nOiBcIkNvb3BlcmF0aW9uIHRvIGNyZWF0ZSBhIExpcGlkIERlbGl2ZXJ5IFN5c3RlbSBIYW5kYm9va1wiLFxyXG4gICAgaW50ZXJ2aWV3dGFiaWQ6IFwiaGFuZGJvb2tcIixcclxuICAgIGpvYjogXCJpR0VNIFRlYW1cIixcclxuICAgIGFmZmlsaWF0aW9uOiBcIkxpbmtcdTAwRjZwaW5nXCIsXHJcblxyXG4gICAgcXVvdGVWb3JuYW1lOiBcIktheWFcIixcclxuICAgIHF1b3RlTmFjaG5hbWU6IFwiTGFuZ2VcIixcclxuICAgIHF1b3RlOiBcIldlIHdlcmUgZ2VudWluZWx5IGV4Y2l0ZWQgd2hlbiBMaW5rXHUwMEY2cGluZyBVbml2ZXJzaXR5IGFwcHJvYWNoZWQgdXMgZm9yIGNvbGxhYm9yYXRpb24uIEZyb20gdGhlIHZlcnkgYmVnaW5uaW5nLCB0aGVpciBpZGVhcyByZXNvbmF0ZWQgd2l0aCB1cywgYW5kIG91ciBzaGFyZWQgZW50aHVzaWFzbSBsYWlkIGEgc3Ryb25nIGZvdW5kYXRpb24gZm9yIGEgcHJvZHVjdGl2ZSBwYXJ0bmVyc2hpcC4gV2UncmUgaGFwcHkgdG8gd29yayB0b2dldGhlciwgYWxzbyB3aXRoIHRoZSBvdGhlciB0ZWFtcywgYW5kIGV4cGxvcmUgbmV3IHBvc3NpYmlsaXRpZXMuXCIsXHJcbiAgICBhaW1vZmNvbnRhY3Q6IFs8cD5UaGUgaW5pdGlhbCBjb250YWN0IGZvciBvdXIgY29sbGFib3JhdGlvbiBjYW1lIGZyb20gdGhlIGlHRU0gdGVhbSAyMDI0IG9mIExpbmtcdTAwRjZwaW5nLCBTd2VkZW4sIHdobyBhcHByb2FjaGVkIHVzIHdpdGggYSBwcm9wb3NhbCB0byBjcmVhdGUgYSBcdTIwMUNEZWxpdmVyeS1CYXNlZCBIYW5kYm9va1x1MjAxRFtsaW5rIEhhbmRib29rXS4gVGhlaXIgZ29hbCB3YXMgdG8gcmVkdWNlIHRoZSBzdGVlcCBsZWFybmluZyBjdXJ2ZSBhc3NvY2lhdGVkIHdpdGggdGhlc2UgdGVjaG5vbG9naWVzIGJ5IHNoYXJpbmcgY29sbGVjdGl2ZSBrbm93bGVkZ2UgZnJvbSBtdWx0aXBsZSB0ZWFtcywgaW5jbHVkaW5nIG91cnMuIFdlIHdlcmUgZXhjaXRlZCB0byBjb250cmlidXRlIGFuZCBoZWxwIGZ1dHVyZSB0ZWFtcyBuYXZpZ2F0ZSB0aGVzZSBjaGFsbGVuZ2VzIG1vcmUgZWFzaWx5LiBUaGUgaGFuZGJvb2sgd291bGQgc2VydmUgYXMgYSB2YWx1YWJsZSB0b29sLiA8L3A+XSxcclxuICAgIGluc2lnaHRzOiBbPHA+VGhyb3VnaG91dCB0aGUgY29sbGFib3JhdGlvbiwgd2UgZ2FpbmVkIHNpZ25pZmljYW50IGluc2lnaHRzLCBib3RoIHNjaWVudGlmaWMgYW5kIGNvbGxhYm9yYXRpdmUuIEluaXRpYWxseSwgb3VyIG1lZXRpbmdzIHdpdGggdGhlIExpbmtcdTAwRjZwaW5nIHRlYW0gYW5kIG90aGVyIHBhcnRpY2lwYXRpbmcgdGVhbXMgLSBQYXRyYXMsIFJhZGJvdWQtVW5pdmVyc2l0eSBhbmQgVEVSTU9TWi1TZWx5ZS1IVU4gLSB3ZXJlIGludmFsdWFibGUuIFRoZXNlIHNlc3Npb25zIGFsbG93ZWQgdXMgdG8gZXhjaGFuZ2UgaWRlYXMgYW5kIGxlYXJuIGhvdyBlYWNoIHRlYW0gcGxhbm5lZCB0byB1c2UgbGlwaWQtYmFzZWQgZGVsaXZlcnkgc3lzdGVtcyBpbiB0aGVpciBvd24gcHJvamVjdHMuIFRoaXMgbXV0dWFsIHNoYXJpbmcgb2Yga25vd2xlZGdlIG9wZW5lZCBvdXIgZXllcyB0byBuZXcgbWV0aG9kb2xvZ2llcyBhbmQgcG90ZW50aWFsIGFwcGxpY2F0aW9ucyBvZiBMTlBzIGFuZCBsaXBvc29tZXMuIFdlIGFsc28gZ2FpbmVkIGEgZGVlcGVyIGFwcHJlY2lhdGlvbiBmb3IgdGhlIGludGVyZGlzY2lwbGluYXJ5IG5hdHVyZSBvZiB0aGVzZSBzeXN0ZW1zLiBGcm9tIHRoZSBjaGFsbGVuZ2VzIG9mIGZvcm11bGF0aW5nIHN0YWJsZSBwYXJ0aWNsZXMgdG8gb3B0aW1pemluZyB0aGVpciBlZmZpY2llbmN5IGluIHRhcmdldGluZyBjZWxscywgd2UgcmVhbGl6ZWQgdGhlIGNvbXBsZXhpdHkgb2YgdGhlIGZpZWxkIGFuZCBob3cgY29sbGFib3JhdGlvbiBjb3VsZCBoZWxwIG92ZXJjb21lIG1hbnkgb2YgdGhlc2Ugb2JzdGFjbGVzLiBCeSBkaXNjdXNzaW5nIG91ciByZXNwZWN0aXZlIGFwcHJvYWNoZXMsIHdlIHdlcmUgYWJsZSB0byBwb29sIG91ciBleHBlcnRpc2UsIHdoaWNoIG5vdCBvbmx5IGltcHJvdmVkIG91ciB1bmRlcnN0YW5kaW5nIGJ1dCBhbHNvIGVuc3VyZWQgdGhhdCB0aGUgaGFuZGJvb2sgd291bGQgYmUgY29tcHJlaGVuc2l2ZSBhbmQgdmFsdWFibGUgZm9yIHZhcmlvdXMgaUdFTSB0ZWFtcywgcmVnYXJkbGVzcyBvZiB0aGVpciBzcGVjaWZpYyBwcm9qZWN0IGZvY3VzLiBcclxuICAgICAgSW4gc3VtbWFyeTogPC9wPixcclxuICAgICAgPHVsPlxyXG4gICAgICAgIDxsaT5MZWFybmVkIGRpZmZlcmVudCBhcHByb2FjaGVzIHRvIHVzaW5nIExOUHMgYW5kIGxpcG9zb21lcyBpbiBpR0VNIHByb2plY3RzLjwvbGk+XHJcbiAgICAgICAgPGxpPkRpc2NvdmVyZWQgbmV3IG1ldGhvZHMgZm9yIG9wdGltaXppbmcgTE5Qcy48L2xpPlxyXG4gICAgICAgIDxsaT5SZWNvZ25pemVkIGNoYWxsZW5nZXMgaW4gcGFydGljbGUgc3RhYmlsaXR5IGFuZCB0YXJnZXRlZCBkZWxpdmVyeS48L2xpPlxyXG4gICAgICAgIDxsaT5HYWluZWQgYXBwcmVjaWF0aW9uIGZvciB0aGUgaW50ZXJkaXNjaXBsaW5hcnkgY29tcGxleGl0eSBvZiB0aGVzZSBzeXN0ZW1zLjwvbGk+XHJcbiAgICAgICAgPGxpPkZvY3VzZWQgb24gZG9jdW1lbnRpbmcgd29yayB0byBiZW5lZml0IGZ1dHVyZSBpR0VNIHRlYW1zLjwvbGk+XHJcbiAgICAgIDwvdWw+IFxyXG4gICAgXSxcclxuICAgIGltcGxlbWVudGF0aW9uOiBbPHA+VGhlIGNvbGxhYm9yYXRpb24gZXhwYW5kZWQgb3VyIHVuZGVyc3RhbmRpbmcgb2Ygd2hhdCdzIHBvc3NpYmxlLCBpbnNwaXJpbmcgdXMgdG8gY29uc2lkZXIgbmV3IGlkZWFzIGZvciBob3cgd2UgbWlnaHQgaW50ZWdyYXRlIGFkdmFuY2VkIHRlY2huaXF1ZXMgaW50byBvdXIgbmFub3BhcnRpY2xlIHN5c3RlbXMgaW4gZnV0dXJlIHByb2plY3RzLiBUaGUgY29sbGFib3JhdGl2ZSBwcm9jZXNzIGFsc28gZW5jb3VyYWdlZCB1cyB0byBkb2N1bWVudCBvdXIgd29yayBtb3JlIHRob3JvdWdobHksIGVuc3VyaW5nIHRoYXQgZnV0dXJlIGlHRU0gdGVhbXMgY291bGQgYmVuZWZpdCBmcm9tIGJvdGggb3VyIHN1Y2Nlc3NlcyBhbmQgdGhlIGNoYWxsZW5nZXMgd2UgZW5jb3VudGVyZWQgYWxvbmcgdGhlIHdheS4gICAgICBCZXlvbmQgdGhlIHRlY2huaWNhbCBpbXByb3ZlbWVudHMsIHRoZSBleHBlcmllbmNlIHRhdWdodCB1cyB0aGUgdmFsdWUgb2YgdGVhbXdvcmsgYWNyb3NzIGJvcmRlcnMgYW5kIGRpc2NpcGxpbmVzLiBFYWNoIHRlYW0gYnJvdWdodCBhIHVuaXF1ZSBwZXJzcGVjdGl2ZSwgYW5kIGJ5IHdvcmtpbmcgdG9nZXRoZXIsIHdlIHdlcmUgYWJsZSB0byBkZXZlbG9wIGEgcmVzb3VyY2UgdGhhdCB3YXMgZmFyIGdyZWF0ZXIgdGhhbiB0aGUgc3VtIG9mIGl0cyBwYXJ0czwvcD5dLFxyXG4gICAgc3VtbWFyeTogXCJUaGlzIGNvbGxhYm9yYXRpb24gd2l0aCBMaW5rXHUwMEY2cGluZyBhbmQgdGhlIG90aGVyIGlHRU0gdGVhbXMgd2FzIGFuIGluY3JlZGlibHkgZW5yaWNoaW5nIGV4cGVyaWVuY2UuIFRvZ2V0aGVyLCB3ZSBkZXZlbG9wZWQgYSBcdTIwMUNEZWxpdmVyeS1CYXNlZCBIYW5kYm9va1x1MjAxRCB0aGF0IHdpbGwgc2VydmUgYXMgYSB2YWx1YWJsZSByZXNvdXJjZSBmb3IgZnV0dXJlIHRlYW1zIHdvcmtpbmcgd2l0aCBMTlBzIGFuZCBsaXBvc29tZXMuIFRoZSBrbm93bGVkZ2Ugd2UgZ2FpbmVkIG5vdCBvbmx5IGVuaGFuY2VkIG91ciBwcm9qZWN0IGJ1dCBhbHNvIHN0cmVuZ3RoZW5lZCBvdXIgc2Vuc2Ugb2YgY29tbXVuaXR5IHdpdGhpbiBpR0VNLiBXZSBhcmUgZXhjaXRlZCB0byBwcmVzZW50IHRoZSBoYW5kYm9vayBhdCB0aGUgR3JhbmQgSmFtYm9yZWUsIHdoZXJlIHdlIHdpbGwgZmluYWxseSBtZWV0IG91ciBjb2xsYWJvcmF0b3JzIGluIHBlcnNvbiBhbmQgY2VsZWJyYXRlIHRoZSBjdWxtaW5hdGlvbiBvZiBvdXIgY29sbGVjdGl2ZSBlZmZvcnRzLiBUaGlzIHBhcnRuZXJzaGlwIGhhcyBzaG93biB1cyB0aGUgaW1tZW5zZSBwb3dlciBvZiBjb2xsYWJvcmF0aW9uLCBhbmQgd2UgYXJlIHByb3VkIHRvIGhhdmUgYmVlbiBwYXJ0IG9mIHN1Y2ggYSBtZWFuaW5nZnVsIGluaXRpYXRpdmUuXCIsXHJcbiAgICBtb250aHM6IFwic2V2ZXJhbCB0aW1lc1wiLFxyXG4gICAgcGljdHVyZXVybF9haW06IFwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2hwL2xpbmtvcGluZy1oYW5kYm9vay1sbnAud2VicFwiLFxyXG4gICAgcGljdHVyZXVybF9pbXBsZW1lbnRhdGlvbjogXCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvaHAvbGlua29waW5nLWNvb3BlcmF0aW9uLXBob3RvLnBuZ1wiLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgdGl0bGU6IFwiTS5TYy5cIixcclxuICAgIHZvcm5hbWU6IFwiS2FpXCIsXHJcbiAgICBuYWNobm5hbWU6IFwiU2NoXHUwMEZDbGtlXCIsXHJcbiAgICBqb2I6IFwiUGhEIHN0dWRlbnQgV29ya2luZyBncm91cDogT3JnYW5pYyBjaGVtaXN0cnkgYW5kIGJpb2NhdGFseXNpc1x1MjAyRiBcIixcclxuICAgIGFmZmlsaWF0aW9uOiBcIlVuaXZlcnNpdHkgb2YgQmllbGVmZWxkXCIsXHJcbiAgICBwaWN0dXJldXJsOiBwaWNzWydrYWloYW1tZXInXSxcclxuICAgIHRhZzogXCJBY2FkZW1pYVwiLFxyXG4gICAgaGVhZGluZzogXCJGaXJzdCBpbnNpZ2h0cyBvZiBFbnp5bSBFbmdpbmVlcmluZ1wiLFxyXG4gICAgaW50ZXJ2aWV3dGFiaWQ6IFwiaGFtbWVya2FpXCIsXHJcbiAgICBsYW5ndWFnZTogXCJkZVwiLFxyXG5cclxuICAgIHF1b3RlOiBcIkl0IHdhcyBmYXNjaW5hdGluZyB0byBkaXNjdXNzIGVuenltZSBlbmdpbmVlcmluZyB3aXRoIGEgZm9ybWVyIGlHRU1lcjsgdGhlIGNvbnZlcnNhdGlvbiBzcGFya2VkIG5ldyBpZGVhcyBhbmQgcGVyc3BlY3RpdmVzLlwiLFxyXG4gICAgcXVvdGVOYWNobmFtZTogXCJNaWNoYWxlaywgVGVhbW1lbWJlclwiLFxyXG4gICAgcXVvdGVWb3JuYW1lOiBcIkNocmlzdGlhblwiLFxyXG4gICAgYWltb2Zjb250YWN0OiBbPHA+V2hlbiB3ZSByZWFsaXplZCB0aGF0IHRoZSBjcmVhdGlvbiBvZiBhIG5pY2thc2UgZnJvbSB0aGUgZW5kb251Y2xlYXNlcyBpbiB1c2Ugd2FzIGEgZGVzaXJlZCBvdXRjb21lLCBpdCBiZWNhbWUgbmVjZXNzYXJ5IHRvIHRhbGsgdG8gYW4gZXhwZXJ0IGluIHRoZSBmaWVsZCBvZiBlbnp5bWUgZW5naW5lZXJpbmcuXHUyMDJGT3VyIGZpcnN0IGNvbnRhY3Qgd2FzIEthaSBTY2hcdTAwRkNsa2UsIGEgZm9ybWVyIGlHRU1lciBhbmQgUGhEIHN0dWRlbnQgdW5kZXIgdGhlIGd1aWRhbmNlIG9mIDxIUExpbmt0b090aGVySFBUYWIgdGFiPVwiaGFtbWVyXCIgdGV4dD1cIlByb2YuIERyLiBIYW1tZXJcIi8+LCB3aG8gaXMgdGhlIGxlYWRlciBvZiB0aGUgd29ya2luZyBncm91cCBvcmdhbmljIGNoZW1pc3RyeSBhbmQgYmlvYW5hbHl0aWNzIGF0IEJpZWxlZmVsZCBVbml2ZXJzaXR5LjwvcD5dLFxyXG4gICAgaW5zaWdodHM6IFs8cD5JbiB0aGUgcHJvY2VzcyBvZiBvdXIgaW50ZXJhY3Rpb24gd2l0aCBLYWksIHdlIGxlYXJuZWQgYWJvdXQgdGhlIHZhcmlvdXMgbWV0aG9kcyBlbXBsb3llZCBpbiBlbnp5bWUgZW5naW5lZXJpbmcuIEhlIGRlbW9uc3RyYXRlZCB0aGUgY29tcGxleGl0eSBvZiB0aGlzIGZpZWxkIG9mIHJlc2VhcmNoIGFuZCBlbXBoYXNpemVkIHRoZSBpbXBvcnRhbmNlIG9mIGNob29zaW5nIHRoZSByaWdodCBhcHByb2FjaC4gQXMgYSBmb3JtZXIgaUdFTWVyLCBLYWksIGluc3BpcmVkIGJ5IGhpcyBwYXN0IGV4cGVyaWVuY2VzLCBpcyBoaWdobHkgbW90aXZhdGVkIGFuZCBkZXRlcm1pbmVkIHRvIGRldmVsb3AgYW4gb3V0c3RhbmRpbmcgcHJvamVjdC4gSGUgcG9pbnRlZCBvdXQgdGhhdCB3ZSBjYW5ub3QgcmVseSBvbiBjbGFzc2ljYWwgbWV0aG9kcyBzdWNoIGFzIGRpcmVjdGVkIGV2b2x1dGlvbiwgYnV0IGluc3RlYWQgc2hvdWxkIHVzZSBhIHJhdGlvbmFsIGFwcHJvYWNoIHRvIHNlbGVjdCBtdXRhdGlvbiBjYW5kaWRhdGVzLiBIaXMgaW5zaWdodHMgYW5kIGVudGh1c2lhc20gaGF2ZSBlbmNvdXJhZ2VkIHVzIHRvIHRoaW5rIGNyaXRpY2FsbHkgYW5kIHB1cnN1ZSBpbm5vdmF0aXZlIHNvbHV0aW9ucyBpbiBvdXIgd29yay4gPC9wPl0sXHJcbiAgICBpbXBsZW1lbnRhdGlvbjogWzxwPldlIGluY29ycG9yYXRlZCBLYWkncyBpbnNpZ2h0cyBpbnRvIG91ciBwcm9qZWN0IGJ5IHNoaWZ0aW5nIG91ciBhcHByb2FjaCB0byBlbnp5bWUgZW5naW5lZXJpbmcuIEJ5IGZvY3VzaW5nIG9uIGEgbW9yZSB0YXJnZXRlZCBhcHByb2FjaCwgd2Ugd2VyZSBhYmxlIHRvIHJlZmluZSBvdXIgZW56eW1lIG9wdGltaXphdGlvbiBwcm9jZXNzLCBlbnN1cmluZyB0aGF0IHRoZSBtb2RpZmljYXRpb25zIHdlIG1hZGUgd2VyZSBiYXNlZCBvbiBpbmZvcm1lZCwgY2FsY3VsYXRlZCBkZWNpc2lvbnMuIFRoaXMgbm90IG9ubHkgc3RyZWFtbGluZWQgb3VyIHJlc2VhcmNoIGJ1dCBhbHNvIGltcHJvdmVkIHRoZSBjaGFuY2VzIG9mIHN1Y2Nlc3MgYnkgcmVkdWNpbmcgdGhlIHRyaWFsLWFuZC1lcnJvciBpbmhlcmVudCBpbiB0cmFkaXRpb25hbCBtZXRob2RzLiA8L3A+XSxcclxuICAgIHN1bW1hcnk6IFwiVGhlIHRlYW0gcmVhY2hlZCBvdXQgdG8gS2FpIFNjaFx1MDBGQ2xrZSwgYSBmb3JtZXIgaUdFTSBwYXJ0aWNpcGFudCBhbmQgZW56eW1lIGVuZ2luZWVyaW5nIGV4cGVydCwgZm9yIGd1aWRhbmNlIG9uIGRldmVsb3BpbmcgYSBuaWNrYXNlIGZyb20gdGhlIGVuZG9udWNsZWFzZXMgaW4gdXNlLiBLYWkgZW1waGFzaXplZCB0aGUgbmVlZCBmb3IgYSByYXRpb25hbCwgdGFyZ2V0ZWQgYXBwcm9hY2ggcmF0aGVyIHRoYW4gdHJhZGl0aW9uYWwgbWV0aG9kcyBsaWtlIGRpcmVjdGVkIGV2b2x1dGlvbi4gSGlzIGluc2lnaHRzIGhlbHBlZCB0aGUgdGVhbSByZWZpbmUgdGhlaXIgZW56eW1lIG9wdGltaXphdGlvbiBwcm9jZXNzLCBtYWtpbmcgaXQgbW9yZSBzdHJhdGVnaWMgYW5kIGVmZmljaWVudC4gVGhpcyBzaGlmdCByZWR1Y2VkIHRyaWFsLWFuZC1lcnJvciBlZmZvcnRzIGFuZCBpbXByb3ZlZCB0aGUgY2hhbmNlcyBvZiBzdWNjZXNzLCBkcml2aW5nIGlubm92YXRpb24gaW4gdGhlaXIgcHJvamVjdC5cIixcclxuICAgIG1vbnRoczogXCJKdWx5XCJcclxuICB9LFxyXG4gIHtcclxuICAgIHRpdGxlOiBcIk0uU2MuXCIsXHJcbiAgICB2b3JuYW1lOiBcIk5pbHNcIixcclxuICAgIG5hY2hubmFtZTogXCJCZXJlbHNtYW5uXCIsXHJcbiAgICBqb2I6IFwiUGhEIFdvcmtpbmcgZ3JvdXA6IFByb2YuIERyLiBHYWJyaWVsZSBGaXNjaGVyIHZvbiBNb2xsYXJkIFwiLFxyXG4gICAgYWZmaWxpYXRpb246IFwiVW5pdmVyc2l0eSBvZiBCaWVsZWZlbGRcIixcclxuICAgIHBpY3R1cmV1cmw6IHBpY3NbJ25pbHNoZWZlJ10sXHJcbiAgICBsYW5ndWFnZTogXCJkZVwiLFxyXG4gICAgdGFnOiBcIkFjYWRlbWlhXCIsXHJcbiAgICBoZWFkaW5nOiBcIkFkYXB0aW5nIGV4cHJlc3Npb24gc3RyYXRlZ2llcyBmb3IgRmFuem9yIG5pY2thc2VzIGFuZCBleHBsb3JpbmcgdGhlIHBvdGVudGlhbCBvZiBQaWNoaWEgcGFzdG9yaXMgZm9yIFNwdUZ6MSBuaWNrYXNlIHZhcmlhbnRzIFwiLFxyXG4gICAgaW50ZXJ2aWV3dGFiaWQ6IFwibmJlcmVsc21hbm5cIixcclxuXHJcbiAgICBxdW90ZTogXCJTZWxlY3Rpb24gZm9yIG11bHRpcGxlIHBsYXNtaWQgaW50ZWdyYXRpb25zIGlzIHRoZSBlYXNpZXN0IHdheSB0byBvcHRpbWl6ZSBwcm90ZWluIGV4cHJlc3Npb24gaW4gdGhlIHllYXN0IHN0cmFpblwiLFxyXG4gICAgcXVvdGVOYWNobmFtZTpcIkJlcmVsc21hbm4sIFNwZWNpbGlzdCBvZiB5ZWFzdCBjdWx0dXJ2YXRpb25cIixcclxuICAgIHF1b3RlVm9ybmFtZTogXCJOaWxzXCIsXHJcbiAgICBhaW1vZmNvbnRhY3Q6IFs8cD5EdXJpbmcgb3VyIGludGVydmlldyB3aXRoIDxIUExpbmt0b090aGVySFBUYWIgdGFiPVwic2FpdG9cIiB0ZXh0PVwiTWFrb3RvIFNhaXRvXCIvPiBhYm91dCBmYW56b3IsIGl0IGJlY2FtZSBldmlkZW50IHRoYXQgdGhlIGV4cHJlc3Npb24gb2Ygb3VyIGZhbnpvciBuaWNrYXNlcyBpbiB5ZWFzdCBpcyB2ZXJ5IHByb21pc2luZy4gV2UgdGhlbiByZWZpbmVkIG91ciBleHByZXNzaW9uIHN0cmF0ZWd5IGZvciB0aGUgbmlja2FzZXMgYW5kIGFwcHJvYWNoZWQgTmlscyBCZXJlbHNtYW5uLCB3aG8gaXMgY3VycmVudGx5IHdvcmtpbmcgb24gaGlzIFBoRCB0aGVzaXMgd2l0aCB0aGUgeWVhc3Qgc3RyYWluIFBpY2hpYSBwYXN0b3JpcyAoU01EMTE2MykuIFRoaXMgcGFydGljdWxhciBzdHJhaW4gY291bGQgYmUgaWRlYWwgZm9yIGV4cHJlc3NpbmcgdGhlIFNwdUZ6MSBuaWNrYXNlIHZhcmlhbnRzLiBPdXIgbWFpbiBhaW0gaW4gY29udGFjdGluZyBOaWxzIHdhcyB0byBnYWluIGluc2lnaHQgYW5kIGFkdmljZSBvbiB5ZWFzdCBleHByZXNzaW9uIGFuZCBoZSBnZW5lcm91c2x5IHNoYXJlZCBoaXMgZXhwZXJ0aXNlIHdpdGggdXMuIE5vdCBvbmx5IGRpZCBoZSBnaXZlIHVzIHZhbHVhYmxlIGFkdmljZSwgYnV0IGhlIGFsc28gcHJvdmlkZWQgdXMgd2l0aCB0aGUgeWVhc3Qgc3RyYWluIGl0c2VsZiwgYWxvbmcgd2l0aCBhIGNvcnJlc3BvbmRpbmcgZXhwcmVzc2lvbiB2ZWN0b3IgZm9yIHBvc3NpYmxlIGV4cGVyaW1lbnRzLiBIZSBhbHNvIHByb3ZpZGVkIHVzIHdpdGggZGV0YWlsZWQgcHJvdG9jb2xzIGFuZCB0aGUgcGxhc21pZCBtYXAgb2YgdGhlIHZlY3RvciBhbmQgZ2F2ZSB1cyBwcmFjdGljYWwgdGlwcyBvbiBob3cgdG8gb3B0aW1pemUgdGhlIGV4cHJlc3Npb24gcHJvY2Vzcy4gSGlzIHN1cHBvcnQgd2FzIGludmFsdWFibGUgaW4gbW92aW5nIG91ciB3b3JrIGZvcndhcmQuIDwvcD5dLFxyXG4gICAgaW5zaWdodHM6IFs8cD5QaWNoaWEgcGFzdG9yaXMgKFNNRDExNjMpIGlzIGEgcHJvbWlzaW5nIG9wdGlvbiBmb3IgZXhwcmVzc2luZyBTcHVGejEgbmlja2FzZSB2YXJpYW50cy4gUmVmaW5pbmcgZXhwcmVzc2lvbiBzdHJhdGVnaWVzIGJhc2VkIG9uIGV4cGVydCBpbnNpZ2h0cyBpcyBjcnVjaWwgZm9yIHN1Y2Nlc3MuIE5pbHMgcHJvdmlkZWQgcHJhY3RpY2FsIHRpcHMgb24geWVhc3QgZXhwcmVzc2lvbiwgaW5jbHVkaW5nIG9wdGltaXppbmcgZ3Jvd3RoIGNvbmRpdGlvbnMgYW5kIGZpbmUtdHVuaW5nIGluZHVjdGlvbiBwcm90b2NvbHMuPC9wPl0sXHJcbiAgICBpbXBsZW1lbnRhdGlvbjogWzxwPldlIGFkYXB0ZWQgb3VyIGV4cHJlc3Npb24gc3RyYXRlZ3kgZm9yIEZhbnpvciBuaWNrYXNlcyBpbiB5ZWFzdCBieSBpbmNvcnBvcmF0aW5nIHRoZSBQaWNoaWEgcGFzdG9yaXMgc3RyYWluIChTTUQxMTYzKSBhbmQgdGhlIHByb3ZpZGVkIGV4cHJlc3Npb24gdmVjdG9yIGludG8gb3VyIGV4cGVyaW1lbnRzLiBGb2xsb3dpbmcgTmlscycgZGV0YWlsZWQgcHJvdG9jb2xzIGFuZCBwbGFzbWlkIG1hcCwgd2Ugb3B0aW1pemVkIGtleSBzdGVwcywgZW5oYW5jaW5nIGV4cHJlc3Npb24gZWZmaWNpZW5jeSBhbmQgcHJvdGVpbiB5aWVsZC48L3A+XSxcclxuICAgIHN1bW1hcnk6IFwiVGhlIHRlYW0gc291Z2h0IGV4cGVydCBhZHZpY2UgZnJvbSBOaWxzIHRvIG9wdGltaXplIHllYXN0IGV4cHJlc3Npb24gZm9yIEZhbnpvciBuaWNrYXNlcy4gTmlscyBwcm92aWRlZCBpbnZhbHVhYmxlIGd1aWRhbmNlIG9uIGFkZHJlc3NpbmcgcG90ZW50aWFsIGNoYWxsZW5nZXMgYW5kIHRyb3VibGVzaG9vdGluZyB0aGUgcHJvY2Vzcy4gSGUgc3VwcGxpZWQgdGhlIFBpY2hpYSBwYXN0b3JpcyAoU01EMTE2Mykgc3RyYWluIGFsb25nIHdpdGggYSBzdWl0YWJsZSBleHByZXNzaW9uIHZlY3RvciwgY3J1Y2lhbCBmb3IgZXhwcmVzc2luZyBTcHVGejEgbmlja2FzZSB2YXJpYW50cy4gQWRkaXRpb25hbGx5LCBoZSBzaGFyZWQgZGV0YWlsZWQgcHJvdG9jb2xzIGZvciB5ZWFzdCB0cmFuc2Zvcm1hdGlvbiBhbmQgZ3Jvd3RoIG9wdGltaXphdGlvbiwgZW5hYmxpbmcgdGhlIHRlYW0gdG8gcmVwbGljYXRlIGhpcyBtZXRob2RzIGVmZmVjdGl2ZWx5IGZvciB0aGVpciBleHBlcmltZW50cy5cIixcclxuICAgIG1vbnRoczogXCJKdWx5XCIsXHJcbiAgfSxcclxuICB7XHJcbiAgICB0aXRsZTogXCJEci5cIixcclxuICAgIHZvcm5hbWU6IFwiVGltbVwiLFxyXG4gICAgbmFjaG5uYW1lOiBcIldlYmVyXCIsXHJcbiAgICBqb2I6IFwiU3RhZmYgU2NpZW50aXN0LCBQcm9qZWN0LSBhbmQgUXVhbGl0eSBNYW5hZ2VyXCIsXHJcbiAgICBhZmZpbGlhdGlvbjogXCJDZW50cmFsIEJpb2Jhbmsgb2YgdGhlIFVuaXZlcnNpdHkgb2YgQmllbGVmZWxkXCIsXHJcbiAgICBwaWN0dXJldXJsOiBwaWNzWydiaW9iYW5rJ10sXHJcbiAgICB0YWc6IFwiQWNhZGVtaWFcIixcclxuICAgIGhlYWRpbmc6IFwiRGlzY3Vzc2VkIHRoZSBwcm9jZXNzZXMgaW52b2x2ZWQgaW4gdGhlIHN0b3JhZ2UsIHByb2Nlc3NpbmcsIGFuZCBzZWN1cml0eSBvZiBwYXRpZW50IHNhbXBsZXMuXCIsXHJcbiAgICBpbnRlcnZpZXd0YWJpZDogXCJ0aW1tXCIsXHJcblxyXG4gICAgcXVvdGVWb3JuYW1lOlwiRHIuIFRpbW1cIixcclxuICAgIHF1b3RlTmFjaG5hbWU6IFwiV2ViZXIsIFNjaWVudGlzdCBQcm9qZWN0LSBhbmQgUXVhbGl0eSBNYW5hZ2VtZW50IEJpb2JhbmtcIixcclxuICAgIHF1b3RlOiBcIkEgYmlvYmFuayBpcyBub3QganVzdCBhIGNvbGxlY3Rpb24gb2Ygc2FtcGxlczsgaXQncyBhIGJyaWRnZSBiZXR3ZWVuIHBhdGllbnQgdHJ1c3QgYW5kIHNjaWVudGlmaWMgZGlzY292ZXJ5LCBlbnN1cmluZyB0aGF0IHZhbHVhYmxlIGJpb2xvZ2ljYWwgZGF0YSBpcyBzYWZlZ3VhcmRlZCB3aGlsZSBjb250cmlidXRpbmcgdG8gZnV0dXJlIHJlc2VhcmNoLlwiLFxyXG4gICAgYWltb2Zjb250YWN0OiBcIkNvbnRhY3Qgd2FzIGVzdGFibGlzaGVkIHdpdGggVGltbSBmb3IgdGhlIHB1cnBvc2Ugb2YgZ2FpbmluZyBkZWVwZXIgaW5zaWdodHMgaW50byB0aGUgZnVuY3Rpb25pbmcgb2YgdGhlIGJpb2JhbmsgYW5kIG9mIGRlZXBlbmluZyBvdXIgdW5kZXJzdGFuZGluZyBvZiB0aGUgcHJvY2Vzc2luZyBvZiBwYXRpZW50IHNhbXBsZXMuXCIsXHJcbiAgICBpbnNpZ2h0czogXCJXZSB3ZXJlIHByb3ZpZGVkIHdpdGggaW52YWx1YWJsZSBpbnNpZ2h0cyBpbnRvIHRoZSBxdWFsaXR5IGFuZCBwcm9qZWN0IG1hbmFnZW1lbnQgb2YgdGhlIGJpb2JhbmsgYW5kIHN0b3JhZ2Ugb2YgcGF0aWVudCBzYW1wbGVzLiBJdCB3YXMgb2YgcGFydGljdWxhciBpbnRlcmVzdCB0byBub3RlIHRoYXQgQmlvYmFuayBPV0wgb2NjdXBpZXMgYSBkaXN0aW5jdGl2ZSBwb3NpdGlvbiBpbiB0aGlzIGNvbnRleHQsIGluc29mYXIgYXMgYSB0cnVzdGVlIGlzIG5vdCBhIG1hbmRhdG9yeSBmaWd1cmUgd2l0aGluIGl0cyBzeXN0ZW0gYW5kIGlzIHRoZXJlZm9yZSBub3QgcHJvdmlkZWQgZm9yIGFzIGEgc3RhbmRhcmQgY29tcG9uZW50LiBIb3dldmVyLCBCaW9iYW5rIE9XTCBoYXMgZWxlY3RlZCB0byBpbnRlZ3JhdGUgYSB0cnVzdGVlIGluIG9yZGVyIHRvIGVuaGFuY2UgdGhlIHNlY3VyaXR5IHN0YW5kYXJkcyBmb3IgdGhlIHNhZmVndWFyZGluZyBvZiBwYXRpZW50IGRhdGEuIFRoaXMgaWxsdXN0cmF0ZXMgdGhlIGJpb2JhbmsncyBkZWRpY2F0aW9uIHRvIGVuc3VyaW5nIHRoZSBvcHRpbWFsIHByb3RlY3Rpb24gYW5kIHNlY3VyaXR5IG9mIHNlbnNpdGl2ZSBwYXRpZW50IGRhdGEuXCIsXHJcbiAgICBpbXBsZW1lbnRhdGlvbjogXCJUaGUgaW5zaWdodHMgZ2FpbmVkIGhhdmUgZmFjaWxpdGF0ZWQgYSBkZWVwZXIgY29tcHJlaGVuc2lvbiBvZiB0aGUgc2lnbmlmaWNhbmNlIG9mIHF1YWxpdHkgbWFuYWdlbWVudCBpbiB0aGUgcHJvY2Vzc2luZyBvZiBwYXRpZW50IHNhbXBsZXMuIFRoaXMgdW5kZXJzdGFuZGluZyBoYXMgYmVlbiBpbnRlZ3JhdGVkIGludG8gb3VyIHByb2plY3QgcHJvY2Vzc2VzLCB0aGVyZWJ5IGVuaGFuY2luZyB0aGUgYWNjdXJhY3kgYW5kIHJlbGlhYmlsaXR5IG9mIG91ciBwcm9jZWR1cmVzLiBcIixcclxuICAgIHN1bW1hcnk6IFwiVGhlIGludGVydmlldyBmb2N1c2VkIG9uIHVuZGVyc3RhbmRpbmcgdGhlIG9wZXJhdGlvbnMgb2YgdGhlIEJpb2JhbmsgT1dMLCBwYXJ0aWN1bGFybHkgaW4gdGhlIGFyZWFzIG9mIHF1YWxpdHkgbWFuYWdlbWVudCBhbmQgc2FtcGxlIHByb2Nlc3NpbmcuIFByb3ZpZGVkIGEgZGV0YWlsZWQgb3ZlcnZpZXcgb2YgYmlvYmFuayBhY3Rpdml0aWVzLCBpbmNsdWRpbmcgc2FtcGxlIGNvbGxlY3Rpb24sIHN0b3JhZ2UgY29uZGl0aW9ucywgYW5kIGRhdGEgcHJvdGVjdGlvbiBtZWFzdXJlc1wiLFxyXG4gICAgdGV4dDo8PlxyXG4gICAgPGltZyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvZm9yLXdpa2ktdGV4dHMvYnMtaHAtYmlvYmFuay9iaW9iYW5rLWZhbmN5LXJvYm90ZXIuanBlZ1wiPjwvaW1nPixcclxuICAgIDxwPlRoZSBBU0tJT04gQy1saW5lXHUwMEFFIGhlcm1ldGljIHN0b3JhZ2UgKEhTMjAwKSBzZXJpZXMgb2ZmZXJzIGVmZmljaWVudCwgYXV0b21hdGVkIHNvbHV0aW9ucyBmb3IgbG93LXRlbXBlcmF0dXJlIHNhbXBsZSBzdG9yYWdlIGluIGJpb2JhbmtzIGFuZCBiaW9yZXBvc2l0b3JpZXMuIDwvcD5cclxuICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2Zvci13aWtpLXRleHRzL2JzLWhwLWJpb2JhbmsvYmlvYmFuay1jaHJpc3RpYW4ta2F0aGxlZW4uanBlZ1wiPjwvaW1nPiwgXHJcbiAgICA8cD4gRHVyaW5nIHRoZWlyIHRvdXIgb2YgdGhlIGJpb2JhbmssIEthdGhsZWVuIGFuZCBDaHJpc3RpYW4gd2VyZSBnaXZlbiBhbiBpbnNpZ2h0IGludG8gdGhlIGFkdmFuY2VkIHNhbXBsZSBzdG9yYWdlIHN5c3RlbXMuIDwvcD4sXHJcbiAgICAgPGltZyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvZm9yLXdpa2ktdGV4dHMvYnMtaHAtYmlvYmFuay9iaW9iYW5rLWZsLXNzaWctc3RpY2tzdG9mZi5qcGVnXCI+PC9pbWc+LFxyXG4gICAgPHA+IExpcXVpZCBuaXRyb2dlbiBpbiBhY3Rpb24gLSBleHRyZW1lbHkgY29sZCBhbmQgaW5kaXNwZW5zYWJsZSBmb3IgdGhlIGRlZXAtZnJlZXplIHN0b3JhZ2Ugb2Ygc2Vuc2l0aXZlIHNhbXBsZXMuIDwvcD4sXHJcbiAgICA8aW1nIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9mb3Itd2lraS10ZXh0cy9icy1ocC1iaW9iYW5rL2Jpb2JhbmstdGFuay5qcGVnXCI+PC9pbWc+LFxyXG4gICAgPHA+IExhcmdlIGxpcXVpZCBuaXRyb2dlbiB0YW5rIGZvciB0aGUgc2FmZSBzdG9yYWdlIG9mIHNhbXBsZXMgaW4gdGhlIGJpb2JhbmsuIDwvcD5cclxuICAgIDwvPixcclxuICAgIGxhbmd1YWdlOiBcImRlXCIsXHJcbiAgICBpbnRlcnZpZXc6IDw+XHJcbiAgICAgIDxRYUJveCBxPVwiQ2FuIHlvdSBicmllZmx5IGV4cGxhaW4gdG8gdXMgd2hhdCBleGFjdGx5IGEgYmlvYmFuayBpcyBhbmQgd2hhdCBpdHMgbWFpbiB0YXNrcyBhcmU/XCJcclxuICAgICAgICBhPVwiQSBiaW9iYW5rIGlzIGEgc3BlY2lhbGl6ZWQgZmFjaWxpdHkgdGhhdCBjb2xsZWN0cywgc3RvcmVzLCBhbmQgbWFuYWdlcyBiaW9sb2dpY2FsIHNhbXBsZXMgYW5kIGFzc29jaWF0ZWQgZGF0YSBmb3IgcmVzZWFyY2ggcHVycG9zZXMuIEVhY2ggYmlvYmFuayBpcyB1bmlxdWUgaW4gaXRzIG9wZXJhdGlvbnMgYW5kIGZ1bmN0aW9ucy4gSW4gQmllbGVmZWxkIGFuZCBMaXBwZSwgdGhlIEJpb2JhbmsgQk9XTCAoQmlvYmFuayBPV0wpIGlzIHJlc3BvbnNpYmxlIGZvciB0aGUgc3RvcmFnZSBvZiBwYXRpZW50IHNhbXBsZXMuIFRoZSBEYXRhIEludGVncmF0aW9uIENlbnRyZSAoRElaKSBzdG9yZXMgZGF0YSBwZXJ0YWluaW5nIHRvIHRoZXNlIHNhbXBsZXMuIEEgdHJ1c3RlZSBvdmVyc2VlcyB0aGUgcHNldWRvbnltaXNhdGlvbiBvZiBkYXRhLCBhY3RpbmcgYXMgYW4gaW50ZXJmYWNlIGJldHdlZW4gQk9XTCBhbmQgRElaLCBlbnN1cmluZyB0aGF0IHBhdGllbnQgZGF0YSBjYW5ub3QgYmUgZGlyZWN0bHkgbGlua2VkIHRvIHBhdGllbnQgc2FtcGxlcy5cIiAvPlxyXG4gICAgICA8UWFCb3ggcT1cIldoYXQgdHlwZXMgb2Ygc2FtcGxlcyBhcmUgY29sbGVjdGVkIGluIHlvdXIgYmlvYmFuayBhbmQgZm9yIHdoYXQgcmVzZWFyY2ggcHVycG9zZXMgYXJlIHRoZXkgdXNlZD9cIlxyXG4gICAgICAgIGE9XCJUaGUgYmlvYmFuayBjb2xsZWN0cyBhIHdpZGUgdmFyaWV0eSBvZiBzYW1wbGVzLCBpbmNsdWRpbmcgYmxvb2QsIHN0b29sLCBhbmQgc29pbC4gU2FtcGxlcyBtYXkgYmUgZ2F0aGVyZWQgZm9yIHNwZWNpZmljIHJlc2VhcmNoIHByb2plY3RzIG9yIGZvciBlc3RhYmxpc2hpbmcgYSBnZW5lcmFsIHJlcG9zaXRvcnkgdW5kZXIgJ2Jyb2FkIGNvbnNlbnQuJyBSZXNlYXJjaGVycyB3aXNoaW5nIHRvIHVzZSB0aGVzZSBzYW1wbGVzIG11c3QgYXBwbHkgdG8gdGhlICd1c2UgYWNjZXNzIGNvbW1pdHRlZSwnIHdoaWNoIGV2YWx1YXRlcyB3aGV0aGVyIHRoZSByZXF1ZXN0ZWQgc2FtcGxlcyBhbmQgZGF0YSBjYW4gYmUgcmVsZWFzZWQgZm9yIHRoZWlyIHJlc2VhcmNoLlwiIC8+XHJcbiAgICAgIDxRYUJveCBxPVwiSG93IGxhcmdlIGlzIHlvdXIgYmlvYmFuaz8gSG93IG1hbnkgc2FtcGxlcyBkbyB5b3UgY3VycmVudGx5IHN0b3JlIGFuZCBob3cgbWFueSBuZXcgc2FtcGxlcyBhcmUgYWRkZWQgb24gYXZlcmFnZT9cIlxyXG4gICAgICAgIGE9XCJUaGUgYmlvYmFuayBpcyBzdGlsbCBpbiB0aGUgcHJvY2VzcyBvZiBlc3RhYmxpc2hpbmcgaXRzZWxmIGFuZCBoYXMgbm90IHlldCByZWFjaGVkIGl0cyBmdWxsIHNhbXBsZSBjYXBhY2l0eS4gSG93ZXZlciwgaXQgaXMgYW50aWNpcGF0ZWQgdG8gYWNjdW11bGF0ZSBhIHNpZ25pZmljYW50IG51bWJlciBvZiBzYW1wbGVzIGluIHRoZSBuZWFyIGZ1dHVyZSwgd2l0aCBzZXZlcmFsIHRob3VzYW5kIHNhbXBsZXMgZXhwZWN0ZWQgdG8gYmUgYW5hbHl6ZWQgaW4gZGVkaWNhdGVkIHNlc3Npb25zLlwiIC8+XHJcbiAgICAgIDxRYUJveCBxPVwiV2hhdCByZXF1aXJlbWVudHMgYW5kIGNyaXRlcmlhIG11c3QgYmUgbWV0IGZvciBhIHNhbXBsZSB0byBiZSBpbmNsdWRlZCBpbiB5b3VyIGJpb2Jhbms/XCIgYT1cIlNhbXBsZXMgbXVzdCBiZSBwcm9jZXNzZWQgYWNjb3JkaW5nIHRvIGhpZ2hseSBkZXRhaWxlZCBwcm90b2NvbHMsIGFuZCByZWd1bGFyIGF1ZGl0cyBhcmUgY29uZHVjdGVkIHRvIGVuc3VyZSBjb21wbGlhbmNlIHdpdGggYWxsIHN0YW5kYXJkcy5cIiAvPlxyXG4gICAgICA8UWFCb3ggcT1cIldoaWNoIG90aGVyIHJlc2VhcmNoIGluc3RpdHV0aW9ucyBvciBiaW9iYW5rcyBkbyB5b3UgY29vcGVyYXRlIHdpdGggYW5kIHdoYXQgZm9ybSBkb2VzIHRoaXMgY29vcGVyYXRpb24gdGFrZT9cIlxyXG4gICAgICAgIGE9XCJCaW9iYW5rIE9XTCBoYXMgYSBzZWNvbmQgbG9jYXRpb24gaW4gTGlwcGUsIGluIGFkZGl0aW9uIHRvIEJpZWxlZmVsZC4gQ29sbGFib3JhdGlvbnMgZXhpc3Qgd2l0aCB0aGUgRElaLCB0aGUgVHJldWhhbmQsIGFuZCB0aHJlZSB1bml2ZXJzaXR5IGhvc3BpdGFscy4gSXQgaXMgYW50aWNpcGF0ZWQgdGhhdCBjb29wZXJhdGlvbiB3aXRoIG90aGVyIHdvcmtpbmcgZ3JvdXBzIHdpbGwgaW5jcmVhc2UgaW4gdGhlIGZ1dHVyZS5cIiAvPlxyXG4gICAgICA8UWFCb3ggcT1cIldoYXQgc3BlY2lmaWMgc3RvcmFnZSBjb25kaXRpb25zIChlLmcuIHRlbXBlcmF0dXJlLCBodW1pZGl0eSkgbXVzdCBiZSBvYnNlcnZlZCBmb3IgZGlmZmVyZW50IHNhbXBsZSB0eXBlcz9cIlxyXG4gICAgICAgIGE9XCJTYW1wbGVzIGFyZSBzdG9yZWQgdW5kZXIgdmFyaW91cyB0ZW1wZXJhdHVyZSBjb25kaXRpb25zLCBpbmNsdWRpbmcgLTIwXHUwMEIwQywgLTgwXHUwMEIwQywgYW5kIC0xNTBcdTAwQjBDLCBhbG9uZyB3aXRoIHRoZSB1c2Ugb2YgbGlxdWlkIG5pdHJvZ2VuLlwiIC8+XHJcbiAgICAgIDxRYUJveCBxPVwiSG93IGRvIHlvdSBlbnN1cmUgdGhhdCB0aGUgc2FtcGxlcyByZW1haW4gc3RhYmxlIGFuZCB1c2FibGUgb3ZlciBsb25nZXIgcGVyaW9kcyBvZiB0aW1lP1wiXHJcbiAgICAgICAgYT1cIlNhbXBsZXMgYXJlIHN0b3JlZCBpbiBuaXRyb2dlbiBmb3IgbG9uZy10ZXJtIHN0YWJpbGl0eS5cIiAvPlxyXG4gICAgICA8UWFCb3ggcT1cIldoYXQgZW5jcnlwdGlvbiB0ZWNobmlxdWVzIG9yIGRhdGEgcHJvdGVjdGlvbiBtZWFzdXJlcyBhcmUgdXNlZCBpbiB5b3VyIGJpb2JhbmsgdG8gcHJldmVudCB1bmF1dGhvcml6ZWQgYWNjZXNzIHRvIHBhdGllbnQgZGF0YT8gQXJlIHRoZXJlIHNwZWNpYWwgcmVndWxhdGlvbnMgZm9yIHRoZSBhbm9ueW1pc2F0aW9uIG9mIGRhdGEgYW5kIGhvdyBpcyBpdCBlbnN1cmVkIHRoYXQgcGF0aWVudHMgY2Fubm90IGJlIHRyYWNlZD9cIlxyXG4gICAgICAgIGE9XCJQc2V1ZG9ueW1zIGFyZSBjcmVhdGVkIHVzaW5nIHNwZWNpYWxpemVkIHNvZnR3YXJlIHN1Y2ggYXMgQ2VudHJhWFggb3IgUkVEY2FwIHRvIHByb3RlY3QgcGF0aWVudCBkYXRhLlwiIC8+XHJcbiAgICAgIDxRYUJveCBxPVwiV2hhdCByaWdodHMgZG8gcGF0aWVudHMgaGF2ZSBpbiByZWxhdGlvbiB0byB0aGVpciBzYW1wbGVzLCBhbmQgaG93IGFyZSB0aGVzZSByaWdodHMgc2FmZWd1YXJkZWQgaW4geW91ciBiaW9iYW5rP1wiXHJcbiAgICAgICAgYT1cIlBhdGllbnRzIGhhdmUgdGhlIHJpZ2h0IHRvIHJldm9rZSB0aGVpciBjb25zZW50IGF0IGFueSB0aW1lLCB3aGljaCBjYW4gYmUgZG9uZSBhdCB0aGUgY2xpbmljIG9yIGJpb2JhbmsuIFRoZSB0cnVzdGVlLCBhY3RpbmcgYXMgYW4gaW50ZXJtZWRpYXJ5LCB3aWxsIG5vdGlmeSBCT1dMIGFuZCBESVogdG8gZGVzdHJveSB0aGUgY29ycmVzcG9uZGluZyBzYW1wbGVzIG9yIGRhdGEuXCIgLz5cclxuICAgIDwvPixcclxuICAgIG1vbnRoczogXCJhdWd1c3RcIlxyXG4gIH0sXHJcbiAge1xyXG4gICAgdm9ybmFtZTogXCInU2NoXHUwMEZDbGVyKmlubmVuIEFrYWRlbWllJ1wiLFxyXG4gICAgbmFjaG5uYW1lOiBcIlwiLFxyXG4gICAgcGljdHVyZXVybDogcGljc1snc2NodWVsZXInXSxcclxuICAgIHRhZzogXCJFZHVjYXRpb25cIixcclxuICAgIGhlYWRpbmc6IFwiRW1wb3dlcmluZyBzdHVkZW50cyB0aHJvdWdoIHN5bnRoZXRpYyBiaW9sb2d5XCIsXHJcbiAgICBpbnRlcnZpZXd0YWJpZDogXCJzY2h1ZWxlclwiLFxyXG4gICAgdHlwZTogXCJtZXRhXCIsXHJcblxyXG4gICAgcXVvdGVWb3JuYW1lOiBcIktheWFcIixcclxuICAgIHF1b3RlTmFjaG5hbWU6IFwiTGFuZ2UsIFRlYW1tXCIsICBcclxuICAgIHF1b3RlOiBcIkl0IHdhcyB3b25kZXJmdWwgdG8gYmUgcGFydCBvZiB0aGUgU3R1ZGVudCBBY2FkZW15IGFuZCB0byBleHBlcmllbmNlIGhvdyBtdWNoIHdlIGxlYXJuZWQgd2hpbGUgdGVhY2hpbmcuIFNoYXJpbmcgb3VyIGtub3dsZWRnZSBhbmQgc2VlaW5nIHRoZSBzdHVkZW50cycgZW50aHVzaWFzbSB3YXMgaW5jcmVkaWJseSByZXdhcmRpbmcsIGV2ZW4gdGhvdWdoIHdlIGNvdWxkbid0IGNvbnZleSBldmVyeXRoaW5nIGluIGp1c3Qgb25lIHNlc3Npb24uXCIsXHJcbiAgICBzdW1tYXJ5OiBbPHA+VGhlIENlQmlUZWMgU3R1ZGVudCBBY2FkZW15IGF0IEJpZWxlZmVsZCBVbml2ZXJzaXR5IHByb3ZpZGVzIGhpZ2ggc2Nob29sIHN0dWRlbnRzIHdpdGggaGFuZHMtb24gZXhwZXJpZW5jZSBpbiBiaW90ZWNobm9sb2d5IGFuZCBtb2xlY3VsYXIgYmlvbG9neSwgc3VwcG9ydGVkIGJ5IHRoZSBPc3RodXNoZW5yaWNoIEZvdW5kYXRpb24gYW5kIERldG1vbGQgZGlzdHJpY3QgZ292ZXJubWVudC4gaUdFTSBCaWVsZWZlbGQgcGFydGljaXBhdGVkIGJ5IGd1aWRpbmcgc3R1ZGVudHMgdGhyb3VnaCBhIG5hbm9wb3JlIHNlcXVlbmNpbmcgZXhwZXJpbWVudCwgdGVhY2hpbmcgdGhlbSBhYm91dCBsYWIgd29yaywgZXhwZXJpbWVudCBwcmVwYXJhdGlvbiwgYW5kIHNhZmV0eSBwcm90b2NvbHMuIFRoZSB0ZWFtIGFsc28gcHJlc2VudGVkIHRoZWlyIGlHRU0gcHJvamVjdCwgUHJlQ3lzZSwgZ2l2aW5nIHN0dWRlbnRzIGluc2lnaHQgaW50byByZWFsLXdvcmxkIHJlc2VhcmNoIHByb2plY3RzIGFuZCBzeW50aGV0aWMgYmlvbG9neS4gTWFueSBzdHVkZW50cyB3ZXJlIGV4Y2l0ZWQgYnkgdGhlIGlHRU0gY29uY2VwdCBhbmQgZXhwcmVzc2VkIGludGVyZXN0IGluIGpvaW5pbmcgZHVyaW5nIHRoZWlyIGZ1dHVyZSBzdHVkaWVzLiBPdmVyYWxsLCB0aGUgYWNhZGVteSBoZWxwZWQgaW5zcGlyZSBzdHVkZW50cyB0byBleHBsb3JlIFNURU0gZmllbGRzIGFuZCBnYWluIHByYWN0aWNhbCBzY2llbnRpZmljIHNraWxscy48L3A+XSxcclxuICAgIG1vbnRoczogXCJBdWd1c3RcIlxyXG4gIH0sXHJcbiAge1xyXG4gICAgdm9ybmFtZTogXCJQcmVzZW50IGV2aWRlbmNlXCIsXHJcbiAgICBuYWNobm5hbWU6IFwiXCIsXHJcbiAgICBwaWN0dXJldXJsOiBwaWNzWydsb2dvJ10sXHJcbiAgICBqb2I6IFwiVGVhbSBpR0VNXCIsXHJcbiAgICBhZmZpbGlhdGlvbjogXCJCaWVsZmVsZCBDZUJpVGVjIDIwMjRcIixcclxuICAgIHRhZzogXCJNaWxlc3RvbmVcIixcclxuICAgIGhlYWRpbmc6IFwiQnJhaW5zdG9ybWluZyBhbmQgc2VsZWN0aW9uIG9mIGlkZWFzIGFuZCBjb25jZXB0c1wiLFxyXG4gICAgaW50ZXJ2aWV3dGFiaWQ6IFwiZXZpZGVuY2VcIixcclxuXHJcbiAgICBxdW90ZU5hY2huYW1lOiBcIkxlbmdlciwgVGVhbW1lbWJlclwiLFxyXG4gICAgcXVvdGVWb3JuYW1lOiBcIk1hbHRlXCIsXHJcbiAgICBxdW90ZTogXCJPdXIgY29sbGFib3JhdGlvbnMgaGF2ZSBub3Qgb25seSBlbmhhbmNlZCBvdXIgdGVjaG5pY2FsIGNhcGFiaWxpdGllcyBidXQgaGF2ZSBhbHNvIHJlaW5mb3JjZWQgdGhlIGltcG9ydGFuY2Ugb2YgZXRoaWNhbCBzdGFuZGFyZHMgaW4gb3VyIHJlc2VhcmNoLiBUb2dldGhlciwgd2UgYXJlIHBhdmluZyB0aGUgd2F5IGZvciBpbm5vdmF0aXZlIHNvbHV0aW9ucyBpbiBnZW5lIHRoZXJhcHkuXCIsXHJcbiAgICB0eXBlOiBcIm1ldGFcIixcclxuICAgIHN1bW1hcnk6IFs8cD5cclxuICAgICAgICAgIFdlIGhhdmUgc3VjY2Vzc2Z1bGx5IGRldmVsb3BlZCBhbiBlbnp5bWUgZW5naW5lZXJpbmcgc3RyYXRlZ3ksIGlkZW50aWZ5aW5nIHBvdGVudGlhbCBuaWNrYXNlIGNhbmRpZGF0ZXMgd2l0aCB0aGUgc3VwcG9ydCBvZiBQcm9mLiBEci4gU3RlZmFuIEhhbW1lci4gVGhpcyBjcnVjaWFsIGNvbGxhYm9yYXRpb24gaGFzIGxhaWQgdGhlIGZvdW5kYXRpb24gZm9yIG9wdGltaXppbmcgb3VyIFByaW1lIEVkaXRpbmcgc3lzdGVtIGJ5IHNlbGVjdGluZyB0aGUgbW9zdCBlZmZlY3RpdmUgbmlja2FzZSBlbnp5bWVzIGZvciBvdXIgYXBwbGljYXRpb25zLlxyXG4gICAgICAgICAgT3VyIHByb2dyZXNzIHdhcyBzaWduaWZpY2FudGx5IGJvbHN0ZXJlZCB0aHJvdWdoIGNvbGxhYm9yYXRpb24gd2l0aCB0aGUgU2FmZXR5IGFuZCBTZWN1cml0eSBDb21taXR0ZWUsIHdoaWNoIGFsbG93ZWQgdXMgdG8gaW1wbGVtZW50IG91ciBwbGFucyBmb3Igd29ya2luZyB3aXRoIHByaW1hcnkgY2VsbCBjdWx0dXJlcy4gVGhlaXIgZ3VpZGFuY2UgcHJvdmlkZWQgdXMgd2l0aCB2YWx1YWJsZSBmZWVkYmFjayBvbiBlc3RhYmxpc2hpbmcgY3JpdGljYWwgcHJvdG9jb2xzLCBzdWNoIGFzIHBhdGllbnQgY29uc2VudCBmb3JtcywgZ3VpZGVsaW5lcyBmb3IgaGFuZGxpbmcgaHVtYW4gYmlvbWF0ZXJpYWwgYXQgQlNMMiBsZXZlbCwgYW5kIGh5Z2llbmUgY29uY2VwdHMgZm9yIHNhbml0YXJ5IGZhY2lsaXRpZXMgaW4gaW5zdGl0dXRpb25hbCBhbmQgaW5kdXN0cmlhbCBzZXR0aW5ncy4gV2l0aCB0aGUgaW52YWx1YWJsZSBpbnB1dCBmcm9tIHRoZSBoZWFkIG9mIHRoZSBFdGhpY3MgQ29tbWl0dGVlIGF0IEJpZWxlZmVsZCBVbml2ZXJzaXR5LCB3ZSB3ZXJlIGFibGUgdG8gb3BlbiBuZXcgZG9vcnMsIGVuc3VyaW5nIHRoYXQgb3VyIHdvcmsgYWRoZXJlcyB0byB0aGUgaGlnaGVzdCBldGhpY2FsIGFuZCBzYWZldHkgc3RhbmRhcmRzLiBUaGlzIHN1cHBvcnQgZW5hYmxlZCB1cyB0byBkZWVwZW4gb3VyIGV4cGVydGlzZSBpbiBib3RoIGVuenltZSBlbmdpbmVlcmluZyBhbmQgeWVhc3Qgc3lzdGVtcywgZnVydGhlciBhZHZhbmNpbmcgb3VyIHJlc2VhcmNoLlxyXG4gICAgICAgICAgT24gdGhlIHRlY2huaWNhbCBmcm9udCwgd2UgaGF2ZSBhbHNvIG1hZGUgc3RyaWRlcyBpbiBsaXBpZCBuYW5vcGFydGljbGUgKExOUCkgZGVzaWduLiBXZSBjb21wbGV0ZWQgaW5pdGlhbCBjaGFyYWN0ZXJpemF0aW9uIG9mIG91ciBMTlBzIGFuZCBiZWdhbiBjb29wZXJhdGluZyB3aXRoIG90aGVyIGlHRU0gMjAyNCB0ZWFtcywgYWltaW5nIHRvIHJldm9sdXRpb25pemUgdGhlIGVtZXJnaW5nIGZpZWxkIG9mIExOUCBkZXNpZ24uIFRoaXMgY29sbGFib3JhdGlvbiBoYXMgYmVlbiBpbnN0cnVtZW50YWwgaW4gcmVmaW5pbmcgb3VyIGFwcHJvYWNoIGFuZCBlbnN1cmluZyB0aGF0IG91ciB0ZWNobm9sb2d5IHN0YXlzIGF0IHRoZSBjdXR0aW5nIGVkZ2Ugb2YgZ2VuZSB0aGVyYXB5IGRlbGl2ZXJ5LlxyXG4gICAgICAgICAgTG9va2luZyBhaGVhZCwgd2UgYXJlIGRldGVybWluZWQgdG8gbWFpbnRhaW4gYSBzdHJpbmdlbnQgYXBwcm9hY2gsIGZvY3VzaW5nIG9uIGZ1cnRoZXIgZGV2ZWxvcG1lbnRzIGluIGVuenltZSBlbmdpbmVlcmluZyBhbmQgTE5QIG9wdGltaXphdGlvbi4gQXQgdGhpcyBzdGFnZSwgd2UgYXJlIGFsc28gcHJpb3JpdGl6aW5nIG91ciB3aWtpIGRldmVsb3BtZW50LCBhaW1pbmcgdG8gZWZmZWN0aXZlbHkgcHJlc2VudCBvdXIgZmluZGluZ3MgYW5kIHByb2dyZXNzIHRvIHRoZSBicm9hZGVyIGlHRU0gY29tbXVuaXR5IGFuZCBiZXlvbmQuXHJcbiAgICAgIDwvcD4sXHJcbiAgICAgIDx1bD5cclxuICAgICAgICAgIDxsaT5cclxuICAgICAgICAgICAgICA8Yj5Fbnp5bWUgRW5naW5lZXJpbmcgU3RyYXRlZ3kgRGV2ZWxvcG1lbnQ6PC9iPiBEZXZlbG9wZWQgYW4gZW56eW1lIGVuZ2luZWVyaW5nIHN0cmF0ZWd5IGFuZCBpZGVudGlmaWVkIHBvdGVudGlhbCBuaWNrYXNlIGNhbmRpZGF0ZXMgaW4gY29sbGFib3JhdGlvbiB3aXRoIFByb2YuIERyLiBTdGVmYW4gSGFtbWVyLlxyXG4gICAgICAgICAgPC9saT5cclxuICAgICAgICAgIDxsaT5cclxuICAgICAgICAgICAgICA8Yj5JbXBsZW1lbnRhdGlvbiBvZiBQcmltYXJ5IENlbGwgQ3VsdHVyZXM6PC9iPiBTdWNjZXNzZnVsbHkgaW1wbGVtZW50ZWQgdGhlIHVzZSBvZiBwcmltYXJ5IGNlbGwgY3VsdHVyZXMgd2l0aCB0aGUgZ3VpZGFuY2Ugb2YgdGhlIFNhZmV0eSBhbmQgU2VjdXJpdHkgQ29tbWl0dGVlLCBpbmNsdWRpbmcgdGhlIGNyZWF0aW9uIG9mIHBhdGllbnQgY29uc2VudCBmb3JtcywgQlNMMiBodW1hbiBiaW9tYXRlcmlhbCBoYW5kbGluZyBndWlkZWxpbmVzLCBhbmQgaHlnaWVuZSBjb25jZXB0cy5cclxuICAgICAgICAgIDwvbGk+XHJcbiAgICAgICAgICA8bGk+XHJcbiAgICAgICAgICAgICAgPGI+RXRoaWNzIENvbW1pdHRlZSBDb2xsYWJvcmF0aW9uOjwvYj4gV29ya2VkIHdpdGggdGhlIGhlYWQgb2YgdGhlIEV0aGljcyBDb21taXR0ZWUgYXQgQmllbGVmZWxkIFVuaXZlcnNpdHkgdG8gZW5zdXJlIGNvbXBsaWFuY2Ugd2l0aCBldGhpY2FsIHN0YW5kYXJkcywgb3BlbmluZyBuZXcgb3Bwb3J0dW5pdGllcyBmb3IgYWR2YW5jaW5nIHJlc2VhcmNoLlxyXG4gICAgICAgICAgPC9saT5cclxuICAgICAgICAgIDxsaT5cclxuICAgICAgICAgICAgICA8Yj5MaXBpZCBOYW5vcGFydGljbGUgKExOUCkgQ2hhcmFjdGVyaXphdGlvbjo8L2I+IENvbXBsZXRlZCBpbml0aWFsIGNoYXJhY3Rlcml6YXRpb24gb2YgTE5QcyBhbmQgY29sbGFib3JhdGVkIHdpdGggb3RoZXIgaUdFTSAyMDI0IHRlYW1zIHRvIGlubm92YXRlIGluIExOUCBkZXNpZ24uXHJcbiAgICAgICAgICA8L2xpPlxyXG4gICAgICAgICAgPGxpPlxyXG4gICAgICAgICAgICAgIDxiPldpa2kgRGV2ZWxvcG1lbnQgRm9jdXM6PC9iPiBTaGlmdGVkIGZvY3VzIHRvd2FyZHMgZGV2ZWxvcGluZyB0aGUgcHJvamVjdCB3aWtpIHRvIGRvY3VtZW50IGFuZCBzaGFyZSBwcm9ncmVzcyB3aXRoIHRoZSBpR0VNIGNvbW11bml0eS5cclxuICAgICAgICAgIDwvbGk+XHJcbiAgICAgIDwvdWw+XHJcbiAgICAgIF0sXHJcbiAgICBtb250aHM6IFwiYXVndXN0XCJcclxuICB9LFxyXG4gIHtcclxuICAgIHZvcm5hbWU6IFwiQmVuamFtaW5cIixcclxuICAgIHRpdGxlOiBcIkRyLlwiLFxyXG4gICAgbmFjaG5uYW1lOiBcIldpbmtlbGphbm5cIixcclxuICAgIGpvYjogXCJDby1Gb3VuZGVyIGFuZCBDRU8gYXQgXCIsXHJcbiAgICBhZmZpbGlhdGlvbjogXCJSTmhhbGVcIixcclxuICAgIHBpY3R1cmV1cmw6IHBpY3NbJ3dpbmtlbGphbm4nXSxcclxuICAgIHRhZzogXCJJbmR1c3RyeVwiLFxyXG4gICAgaGVhZGluZzogXCJEaXNjdXNzaW9uIG9uIHNwcmF5LWRyeWluZyBhbmQgc3RhYmlsaXR5IG9mIGxpcGlkIG5hbm9wYXJ0aWNsZXMgd2l0aCBSTmhhbGVcIixcclxuICAgIGludGVydmlld3RhYmlkOiBcInJuaGFsZVwiLFxyXG5cclxuICAgIGxhbmd1YWdlOiBcImRlXCIsXHJcbiAgICBxdW90ZVZvcm5hbWU6IFwiRHIuIEJlbmphbWluXCIsXHJcbiAgICBxdW90ZU5hY2huYW1lOiBcIldpbmtlbGphbm4sIEV4cGVydCBmb3IgTE5QcyB1bmQgQ2VvIHZvbiBSTmhhbGVcIixcclxuICAgIHF1b3RlOiBcIlNwcmF5LWRyeWluZyBMTlBzIGlzIGEgZ3JvdW5kYnJlYWtpbmcgYXBwcm9hY2ggdGhhdCBlbmhhbmNlcyBzdGFiaWxpdHkgYW5kIGVuYWJsZXMgZWZmaWNpZW50IHB1bG1vbmFyeSBkZWxpdmVyeSBvZiBtUk5BLCBwYXZpbmcgdGhlIHdheSBmb3IgaW5ub3ZhdGl2ZSB0aGVyYXBpZXMgZm9yIGNvbmRpdGlvbnMgbGlrZSAgQ3lzdGljIEZpYnJvc2lzLlwiLFxyXG4gICAgYWltb2Zjb250YWN0OiBbPHA+QXMgcGFydCBvZiBvdXIgZGV2ZWxvcG1lbnQgcHJvY2VzcyBvZiBhbiBpbm5vdmF0aXZlLCBlZmZlY3RpdmUgcHVsbW9uYXJ5IGRlbGl2ZXJ5IG9mIHRoZXJhcGV1dGljIG1STkEgdG8gZmlnaHQgIEN5c3RpYyBGaWJyb3NpcyxcclxuICAgICAgd2UgY29uZHVjdGVkIGFuIGludGVydmlldyB3aXRoIERyLiBCZW5qYW1pbiBXaW5rZWxqYW5uLCB3aG8gaXMgdGhlIENvLUZvdW5kZXIgb2YgPGEgaHJlZj1cImh0dHBzOi8vcm5oYWxlLmNvbS9cIj5STmhhbGU8L2E+LiBEci4gQmVuamFtaW5cclxuICAgICAgV2lua2VsamFubiBoYXMgYSB3ZWFsdGggb2YgZXhwZXJpZW5jZSBpbiB0aGUgZmllbGQgb2YgUk5BIHRoZXJhcGV1dGljcyBhbmQgbmFub3RlY2hub2xvZ3kuIEhpcyBiYWNrZ3JvdW5kIGluY2x1ZGVzIGV4dGVuc2l2ZSByZXNlYXJjaCBpbiB0aGVcclxuICAgICAgZGV2ZWxvcG1lbnQgb2YgbGlwaWQtYmFzZWQgZGVsaXZlcnkgc3lzdGVtcywgZm9jdXNpbmcgb24gb3B0aW1pemluZyBzdGFiaWxpdHkgYW5kIGVmZmljYWN5IGZvciB0aGVyYXBldXRpYyBhcHBsaWNhdGlvbnMuIFdpbmtlbGphbm5cdTIwMTlzIHdvcmtcclxuICAgICAgaXMgc3VwcG9ydGVkIGJ5IGN1dHRpbmctZWRnZSByZXNlYXJjaCBmcm9tIGFjYWRlbWljIGluc3RpdHV0aW9ucywgaW5jbHVkaW5nIGNvbGxhYm9yYXRpb25zIHdpdGggUHJvZmVzc29yIE9saXZpYSBNZXJrZWwgZnJvbSB0aGVcclxuICAgICAgTHVkd2lnLU1heGltaWxpYW5zLVVuaXZlcnNpdFx1MDBFNHQgaW4gTXVuaWNoLCBHZXJtYW55LiBUaGUgaW50ZXJ2aWV3IHdpdGggV2lua2VsamFubiBwcm9tb3RlZFxyXG4gICAgICBvdXIgcHJvamVjdCBwYXJ0LCB3aGljaCBhaW1lZCB0byB1dGlsaXplIHNwcmF5LWRyaWVkIExOUHMgZm9yIGVmZmljaWVudCBkZWxpdmVyeSB0byB0aGUgbHVuZy4gQnkgZW5nYWdpbmcgd2l0aCBSTmhhbGUsIHdlXHJcbiAgICAgIHNvdWdodCB0byB1bmRlcnN0YW5kIHRoZSBudWFuY2VzIG9mIHRoZWlyIG5hbm8tZW1iZWRkZWQgbWljcm9wYXJ0aWNsZSAoTkVNKSB0ZWNobm9sb2d5IGFuZCBob3cgaXQgY291bGQgZW5oYW5jZSBvdXIgZGVsaXZlcnkgc3lzdGVtcy4gIDwvcD5dLFxyXG4gICAgaW5zaWdodHM6IFs8cD5STmhhbGUncyB0ZWNobm9sb2d5IGxldmVyYWdlcyBhZHZhbmNlZCBzcHJheSBkcnlpbmcgdGVjaG5pcXVlcyB0byBzdGFiaWxpemUgUk5BIHRoZXJhcGV1dGljcyBhbmQgY3JlYXRlIGEgZm9ybXVsYXRpb24gZm9yIHB1bG1vbmFyeSBkZWxpdmVyeS4gRHVyaW5nIG91ciBpbnRlcnZpZXcsXHJcbiAgICAgIFdpbmtlbGphbm4gZGV0YWlsZWQgc2V2ZXJhbCBjcnVjaWFsIGFzcGVjdHMuIEZpcnN0bHksIHRoZSBzdGFiaWxpdHkgYW5kIHNoZWxmLWxpZmUgb2Ygc3ByYXktZHJpZWQgTE5QcyBhcmUgcmVtYXJrYWJsZS4gUk5oYWxlXHUyMDE5cyBzaVJOQVxyXG4gICAgICBmb3JtdWxhdGlvbnMgaGF2ZSBtYWludGFpbmVkIHRoZWlyIGludGVncml0eSBmb3IgdXAgdG8gMTggbW9udGhzIGF0IHJvb20gdGVtcGVyYXR1cmUsIGFuZCBhbHRob3VnaCBzcGVjaWZpYyBkYXRhIGZvciBtUk5BIGlzIHN0aWxsIHBlbmRpbmcsXHJcbiAgICAgIHRoaXMgc3VnZ2VzdHMgYSBwcm9taXNpbmcgc2hlbGYtbGlmZSBmb3IgbVJOQSBmb3JtdWxhdGlvbnMgdW5kZXIgc2ltaWxhciBjb25kaXRpb25zLiBUaGUgbWFudWZhY3R1cmluZyBwcm9jZXNzIGl0c2VsZiBpbnZvbHZlcyBmb3JtdWxhdGluZyBSTkEgbG9hZGVkIExOUHMgdGhyb3VnaCByYXBpZCBtaXhpbmcuIFN1YnNlcXVlbnRseSB0aGUgTE5QcyBhcmUgYmxlbmRlZCB3aXRoIGEgc3RhYmlsaXppbmcgZXhjaXBpZW50LCBvZnRlbiBhIHN1Z2FyIG9yIGFsY29ob2wuIFRoaXMgbWl4dHVyZSBpcyB0aGVuIHNwcmF5LWRyaWVkLCBmb3JtaW5nIHNvLWNhbGxlZCBORU1zLCBtaWNyb24tc2l6ZWQgcGFydGljYWxzIGNvbXBpcnNpbmcgYW4gZXhjaXBpZW50IG1hdHJpeCB0aGF0IGVtYmVkcyB0aGUgUk5BIGNhcnJ5aW5nIExOUHMuXHJcbiAgICAgIEtleSBwYXJhbWV0ZXJzIGZvciB0aGlzIHByb2Nlc3MgaW5jbHVkZSBMTlAgY29tcG9zaXRpb24sIGZlZWQgcmF0ZSwgUk5BIGNvbnRlbnQgYW5kIGRyeWluZyB0ZW1wYXJ0dXJlIFx1MjAwQiA8VGFiU2Nyb2xsTGluayB0YWI9XCJybmhhbGVcIiBzY3JvbGxJZD1cImRlc2MtMVwiIG51bT1cIjFcIiAvPi4gPC9wPixcclxuICAgIDxwPlZlcmlmeWluZyB0aGUgaW50ZWdyaXR5IGFuZCBlZmZpY2llbmN5IG9mIHRoZSBMTlBzIGludm9sdmVzIHZhcmlvdXMgbWV0aG9kcywgaW5jbHVkaW5nIGdlbCBlbGVjdHJvcGhvcmVzaXMsIHNjYXR0ZXJpbmcgdGVjaG5pcXVlcywgYW5kIGZ1bmN0aW9uYWwgcmVhZG91dHMgdGhyb3VnaCB0cmFuc2ZlY3Rpb24gYXNzYXlzLlxyXG4gICAgICBBZnRlciBkcnlpbmcsIHRoZSBORU1zIGV4aGliaXQgc3BlcmljYWwgc2hhcGUsIHdpdGggc2l6ZXMgYmV0d2VlbiAxLTVcdTAwQjVtIHdoaWNoIGNhbiBiZSB2aXN1YWxpemVkIGJ5IHNjYW5uaW5nIGVsZWN0cm9uIG1pY3Jvc2NvcHkgKFNFTSk8VGFiU2Nyb2xsTGluayB0YWI9XCJybmhhbGVcIiBzY3JvbGxJZD1cImRlc2MtMVwiIG51bT1cIjFcIiAvPi5cclxuICAgICAgTW9yZW92ZXIsIFJOaGFsZSBlbXBsb3lzIGFydGlmaWNpYWwgaW50ZWxsaWdlbmNlIHRvIG9wdGltaXplIExOUCBmb3JtdWxhdGlvbnMgYW5kIHByZWRpY3QgdGhlIGJlc3QgZHJ5aW5nIGNvbmRpdGlvbnMsIHJlZHVjaW5nIHRoZSBuZWVkIGZvclxyXG4gICAgICBleHRlbnNpdmUgd2V0IGxhYiB3b3JrLjwvcD5dLFxyXG4gICAgaW1wbGVtZW50YXRpb246IFtcclxuICAgICAgPHA+VGhlIGludGVydmlldyB3aXRoIERyLiBCZW5qYW1pbiBXaW5rZWxqYW5uIGZyb20gUk5oYWxlIHByb3ZpZGVkIGludmFsdWFibGUgaW5zaWdodHMgdGhhdCB3aWxsIHNpZ25pZmljYW50bHkgZW5oYW5jZSBvdXIgcHJvamVjdFxyXG4gICAgICAgIGZvY3VzZWQgb24gbVJOQSBkZWxpdmVyeSB0byB0aGUgbHVuZ3MgdXNpbmcgc3ByYXktZHJpZWQgTE5Qcy4gQnkgc2Vla2luZyB0byBpbnRlZ3JhdGUgdGhlaXIgcHJvdmVuIHRlY2huaXF1ZXMgYW5kIGlubm92YXRpdmUgYXBwcm9hY2hcclxuICAgICAgICB0byBzcHJheS1kcnkgTE5Qcywgd2UgYXJlIG9wdGltaXN0aWMgYWJvdXQgYWNoaWV2aW5nIHN1cGVyaW9yIHN0YWJpbGl0eSwgZWZmaWNhY3ksIGFuZCBzY2FsYWJpbGl0eSBpbiBvdXIgdGhlcmFwZXV0aWMgZGVsaXZlcnkgc3lzdGVtcy4gIDwvcD5cclxuICAgIF0sXHJcbiAgICBwaWN0dXJldXJsX2FpbTogXCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvaHAvaHAtcm5oYWxlLXpvb20ucG5nXCIsXHJcbiAgICBwaWN0dXJldXJsX2ludGVydmlldzogXCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvZm9yLXdpa2ktdGV4dHMvZGVsLWludGVydmlldy1ybmhhbGUvcGFwZXItb3ZlcnZpZXcuanBnXCIsXHJcbiAgICBwaWN0dXJldXJsX2ltcGxlbWVudGF0aW9uOiBcImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9mb3Itd2lraS10ZXh0cy9kZWwtaW50ZXJ2aWV3LXJuaGFsZS9wYXBlci1zZW0uanBnXCIsXHJcbiAgICByZWZlcmVuY2VzOiA8Um5oYWxlU291cmNlcyAvPixcclxuICAgLyogIGludGVydmlldzo8PlxyXG4gICAgPFFhQm94IHE9XCJDYW4geW91IHNwZWNpZnkgdGhlIHNoZWxmIGxpZmUgZm9yIHNwcmF5LWRyaWVkIExOUHM/IFdoYXQgc3RvcmFnZSBjb25kaXRpb25zIGRvIHlvdSByZWNvbW1lbmQgdG8gbWF4aW1pemUgc3RhYmlsaXR5P1wiIGE9XCJGb3Igc21hbGwgaW50ZXJmZXJpbmcgUk5BLCB3ZSBvZmhhdmUgZGVtb25zdHJhdGVkIGFuZCBwdWJsaXNoZWQgc3RhYmlsaXR5IG9mIDE4IG1vbnRocyBhdCByb29tIHRlbXBlcmF0dXJlLiBIb3dldmVyLCB0aGVyZSBhcmUgbm8gZXhpc3Rpbmcgc3R1ZGllcyBmb3IgbVJOQSwgd2hpY2ggdGVuZHMgdG8gYmUgbW9yZSBmcmFnaWxlLiBGb3Igb3B0aW1hbCBzdGFiaWxpdHksIHdlIHJlY29tbWVuZCBzdG9yaW5nIGRyaWVkIExOUHMgaW4gYSBjb29sLCBkcnkgcGxhY2UsIGF3YXkgZnJvbSBkaXJlY3Qgc3VubGlnaHQuXCIvPiBcclxuICAgIDxRYUJveCBxPVwiV2hhdCB0ZWNobmljYWwgcmVxdWlyZW1lbnRzIGFuZCBlcXVpcG1lbnQgYXJlIG5lY2Vzc2FyeSB0byBzdWNjZXNzZnVsbHkgc3ByYXktZHJ5IExOUHMgdXNpbmcgeW91ciBuYW5vLWVtYmVkZGVkLW1pY3JvcGFydGljbGUgKE5FTSkgdGVjaG5vbG9neT9cIiBhPVwiVGhlIGtleSBlcXVpcG1lbnQgaW5jbHVkZXMgYW4gSW1waW5nZW1lbnQgSmV0IE1peGVyIGZvciB0aGUgcHJlcGFyYXRpb24gb2YgTE5QcyBhbmQgYSBzcHJheSBkcnllciBmb3IgZm9ybXVsYXRpbmcgdGhlIGRyeSBwb3dkZXIuIEluIGNvbWJpbmF0aW9uIHdpdGggc3RhbmRhcmQgbGFib3JhdG9yeSBlcXVpcG1lbnQgc3VjaCBhcyBtaXhlcnMsIHBpcGV0dGVzLCBldGMuLCB0aGlzIHNldHVwIGlzIHN1ZmZpY2llbnQgdG8gcHJvZHVjZSBORU1zIGFzIGRlc2NyaWJlZCBpbiBvdXIgcHVibGljYXRpb25zLiBIb3dldmVyLCB0byBtb25pdG9yIHRoZSBwcm9jZXNzIGFuZCBhc3Nlc3MgdGhlIHF1YWxpdHkgb2YgYm90aCBpbnRlcm1lZGlhdGUgYW5kIGZpbmFsIHByb2R1Y3RzLCBhIHZhcmlldHkgb2YgYW5hbHl0aWNhbCBtZXRob2RzIGlzIHJlcXVpcmVkLCBpbmNsdWRpbmcgRHluYW1pYyBMaWdodCBTY2F0dGVyaW5nIChETFMpLCBOYW5vcGFydGljbGUgVHJhY2tpbmcgQW5hbHlzaXMgKE5UQSksIFBsYXRlIFJlYWRlciwgY2VsbCBjdWx0dXJlIGVxdWlwbWVudCwgYW5kIGEgbGFzZXIgZGlmZnJhY3RvbWV0ZXIuIFRoaXMgc2V0dXAgbWFrZXMgaXQgcXVpdGUgY29zdGx5IHRvIGVzdGFibGlzaCB0aGUgZW50aXJlIHByb2Nlc3MuXCIvPiBcclxuICAgIDxRYUJveCBxPVwiSG93IGNvbXBsaWNhdGVkIGlzIHRoZSBwcm90b2NvbCBmb3IgcHJvZHVjaW5nIHNwcmF5LWRyaWVkIExOUHM/IENhbiB5b3UgZGVzY3JpYmUgdGhlIHByb3RvY29sP1wiIGE9XCJUaGUgc3ByYXktZHJ5aW5nIHByb2Nlc3MgZm9yIExOUHMgdXNpbmcgb3VyIE5FTSB0ZWNobm9sb2d5IGludm9sdmVzIHNldmVyYWwgdGVjaG5pY2FsIHN0ZXBzLiBJbml0aWFsbHksIGEgbWl4dHVyZSBvZiBhbiBldGhhbm9sIHBoYXNlIGNvbnRhaW5pbmcgbGlwaWRzIGFuZCBhbm90aGVyIHBoYXNlIHdpdGggUk5BIGlzIHByZXBhcmVkLiBUaGlzIG1peHR1cmUgaXMgdGhlbiBzdWJqZWN0ZWQgdG8gYW4gSW1waW5nZW1lbnQgSmV0IE1peGVyIHRvIGZvcm11bGF0ZSBSTkEtbG9hZGVkIExOUHMuIFN1YnNlcXVlbnRseSB0aGUgTE5QcyBhcmUgbWl4ZWQgd2l0aCBhIHN0YWJpbGl6aW5nIGV4Y2lwaWVudC4gVGhpcyBtaXh0dXJlIGlzIGZlZCBpbnRvIGEgc3ByYXktZHJpZXIgd2hlcmUgdGhlIHNvbHV0aW9uIGlzIGFlcm9zb2xpemVkIGludG8gYSBoZWF0ZWQgZHJ5aW5nIHRvd2VyLiBUaGUgbGlxdWlkIGV2YXBvcmF0ZXMsIGxlYXZpbmcgYmVoaW5kIE5FTXMgYXMgc21hbGwgc3BoZXJpY2FsIHBhcnRpY2xlcywgd2hpY2ggY2FuIHRoZW4gYmUgbG9hZGVkIGludG8gY2Fwc3VsZXMgZm9yIHVzZSB3aXRoIGEgZHJ5IHBvd2RlciBpbmhhbGVyIChEUEkpLlwiLz4gXHJcbiAgICA8UWFCb3ggcT1cIkhvdyBkbyBMTlBzIGFwcGVhciBhZnRlciB0aGUgZHJ5aW5nIHByb2Nlc3M/XCIgYT1cIkluIHRoZSBkcnkgc3RhdGUsIExOUHMgY2Fubm90IGJlIHZpc3VhbGl6ZWQsIGFzIHRoZXkgYXJlIGVtYmVkZGVkIHdpdGhpbiB0aGUgTkVNIHN0cnVjdHVyZS4gSG93ZXZlciwgd2UgYXNzZXNzIHRoZSBMTlAgc3RydWN0dXJlIGFuZCBtb3JwaG9sb2d5IGFmdGVyIHJlZGlzcGVyc2lvbiBvZiB0aGUgTkVNcywgYSBwcm9jZXNzIHRoYXQgYWxzbyBvY2N1cnMgdXBvbiBpbmhhbGF0aW9uIGFuZCBjb250YWN0IHdpdGggbHVuZyBmbHVpZHMuIFdoaWxlIHdlIG9ic2VydmUgYSBzbGlnaHQgaW5jcmVhc2UgaW4gTE5QIHNpemUgYWZ0ZXIgcmVkaXNwZXJzaW9uLCB0aGUgcGFydGljbGVzIHJlbWFpbiBpbnRhY3QsIHJldGFpbmluZyB0aGVpciBzcGhlcmljYWwgc2hhcGUgYW5kIFJOQSBsb2FkaW5nLCBhcyBkZW1vbnN0cmF0ZWQgYnkgdmFyaW91cyB0ZWNobmlxdWVzLCBpbmNsdWRpbmcgY3J5by1URU0gaW1hZ2luZy5cIi8+IFxyXG4gICAgPFFhQm94IHE9XCJIb3cgZG8geW91IGVuc3VyZSB0aGF0IHRoZSBSTkEgY2FyZ28gcmVtYWlucyBzdGFibGUgZGVzcGl0ZSB0aGUgaGVhdCBkdXJpbmcgdGhlIGRyeWluZyBwcm9jZXNzP1wiIGE9XCJXZSBtaXRpZ2F0ZSB0aGUgaW1wYWN0IG9mIGhlYXQgYnkgb3B0aW1pemluZyB0aGUgZHJ5aW5nIGNvbmRpdGlvbnMgc3VjaCBhcyB0ZW1wZXJhdHVyZSwgZmVlZCByYXRlIGFuZCB0aW1lIG9mIGhlYXQgZXhwb3N1cmUuIERpZmZlcmVudCBjb21wb25lbnRzIGluIHRoZSBleGNpcGllbnQgbWl4LCBvciB0aGUgTE5Qcywgc3VjaCBhcyB0aGUgUEVHeWxhdGVkIGxpcGlkIGNhbiBhbHNvIGluZmx1ZW5jZSBzdGFiaWxpdHkgZHVyaW5nIGFuZCBwb3N0IGRyeWluZy4gV2l0aG91dCBQRUcgb3Igd2l0aCB0b28gbGl0dGxlIFBFRy1saXBpZCwgTE5QcyBtYXkgYWdnbG9tZXJhdGUgYW5kIGJlY29tZSBub24tZnVuY3Rpb25hbCwgYnV0IHRvbyBtdWNoIFBFRyBjYW4gcmVuZGVyIHRoZW0gaW5lcnQgYW5kIHRodXMgbGltaXQgY2VsbHVsYXIgdXB0YWtlLlwiLz4gXHJcbiAgICA8UWFCb3ggcT1cIkF0IHdoYXQgdGVtcGVyYXR1cmUgaXMgdGhlIExOUCBkcmllZD9cIiBhPVwiVGhlIGlubGV0IHRlbXBlcmF0dXJlIGR1cmluZyB0aGUgc3ByYXlkcnlpbmcgcHJvY2VzcyBpcyBhcHByb3hpbWF0ZWx5IDEyMCBkZWdyZWVzIENlbHNpdXMsIGFzIG5vdGVkIGluIG91ciBwdWJsaWNhdGlvbnMuXCIvPiBcclxuICAgIDxRYUJveCBxPVwiRG9lcyBlYWNoIExOUCBmb3JtdWxhdGlvbiByZXF1aXJlIGluZGl2aWR1YWwgdGVzdGluZz9cIiBhPVwiWWVzLCBlYWNoIExOUCB3aXRoIGEgdW5pcXVlIGNvbXBvc2l0aW9uIG5lZWRzIHRvIGJlIHRlc3RlZCBpbmRpdmlkdWFsbHkgdG8gZW5zdXJlIG9wdGltYWwgc3RhYmlsaXR5IGFuZCBwZXJmb3JtYW5jZS5cIi8+IFxyXG4gICAgPFFhQm94IHE9XCJIb3cgY2FuIHdlIHRlc3QgdGhlIGVmZmljaWVuY3kgb2YgTE5QcyBhZnRlciB0aGUgZHJ5aW5nIHByb2Nlc3M/XCIgYT1cIlRoZSBlZmZpY2llbmN5IGNhbiBiZSB0ZXN0ZWQgdGhyb3VnaCB0cmFuc2ZlY3Rpb24gc3R1ZGllcy4gQWRkaXRpb25hbGx5LCB0aGUgcGFydGljbGVzIGNhbiBiZSBicm9rZW4gZG93biB0byBhbmFseXplIHRoZSBtUk5BIHN0cnVjdHVyZSwgYWx0aG91Z2ggdGhpcyBpcyBhIG1vcmUgY29tcGxleCBhbmQgdGltZS1jb25zdW1pbmcgcHJvY2Vzcy5cIi8+IFxyXG4gICAgPFFhQm94IHE9XCJDYW4geW91IGVsYWJvcmF0ZSBvbiBob3cgeW91IHVzZSBBSSB0byBjdXN0b21pemUgTE5Qcz8gV2hhdCBleGFjdGx5IGRvZXMgdGhlIEFJIGRvLCBhbmQgaG93IHJlbGlhYmxlIGlzIGl0P1wiIGE9XCJPdXIgQUkgaXMgdXNlZCBmb3Igc2NyZWVuaW5nLCBvcHRpbWl6YXRpb24sIGFuZCB0aGUgZGVzaWduIG9mIGV4cGVyaW1lbnRzLCBzaWduaWZpY2FudGx5IHJlZHVjaW5nIHdldCBsYWIgd29yay4gSXQgYWxzbyBwbGF5cyBhIHJvbGUgaW4gZGV2ZWxvcGluZyBuZXcgbGlwaWRzLCBhIHByb2Nlc3MgbW9yZSBjbG9zZWx5IGFzc29jaWF0ZWQgd2l0aCB0aGUgd29yayBvZiBPbGl2aWEgTWVya2VsLlwiLz4gXHJcbiAgICA8UWFCb3ggcT1cIkluIHlvdXIgb3Bpbmlvbiwgd2hpY2ggTE5QcyBhcmUgYmVzdCBzdWl0ZWQgZm9yIHRoZSBkcnlpbmcgcHJvY2VzcyAoU0xOcywgTkxDcywgZXRjLik/XCIgYT1cIkl0IGRlcGVuZHMgb24gdGhlIHNwZWNpZmljIGFwcGxpY2F0aW9uIGFuZCBjb21wb3NpdGlvbiBvZiB0aGUgTE5Qcy5cIi8+IFxyXG4gICAgPFFhQm94IHE9XCJXaGF0IGFyZSB0aGUgZXN0aW1hdGVkIGNvc3RzIGZvciB0aGUgZW50aXJlIGRyeWluZyBwcm9jZXNzP1wiIGE9XCJUaGUgcHJpbWFyeSBleHBlbnNlcyBhcmUgaW4gcmF3IG1hdGVyaWFscyBhbmQgZm9yIHRoZSBmb3JtdWxhdGlvbnNwZWNpZmljYWxseSAgUk5BIGFuZCBsaXBpZHMsIHdoaWNoIGFyZSByZWxhdGl2ZWx5IGV4cGVuc2l2ZS4gT3RoZXIgY29uc3VtYWJsZXMsIHN1Y2ggYXMgcHJvY2VzcyBmbHVpZHMsIGFyZSBjb21wYXJhdGl2ZWx5IGluZXhwZW5zaXZlLiBUaGUgbWFudWZhY3R1cmluZyBwcm9jZXNzIGl0c2VsZiBpcyBjb3N0LWVmZmVjdGl2ZTsgaG93ZXZlciwgb3ZlcmFsbCBleHBlbnNlcyB3aWxsIHZhcnkgYmFzZWQgb24gcHJvZHVjdGlvbiB2b2x1bWUgYW5kIGVxdWlwbWVudCB1dGlsaXphdGlvbiByYXRlcy5cIi8+IFxyXG4gICAgPFFhQm94IHE9XCJXb3VsZCB5b3UgYmUgd2lsbGluZyB0byBzdXBwb3J0IHVzIGluIG91ciBwcm9qZWN0PyBXb3VsZCB5b3UgZHJ5IG91ciBMTlBzP1wiIGE9XCJUaGUgc3ByYXkgZHJ5ZXIgcmVxdWlyZXMgNSBtTCBvZiBhIHNvbHV0aW9uIHdpdGggNSUgc29saWQgY29udGVudC4gQW1vbmcgdGhlc2Ugc29saWRzLCB0aGUgbGlwaWQgY29udGVudCBjYW4gYmUgYWRqdXN0ZWQgYmV0d2VlbiBhcHByb3hpbWF0ZWx5IDAuMiUgYW5kIDE1JSwgd2hpbGUgdGhlIFJOQSBjb250ZW50IGNhbiByYW5nZSBmcm9tIDAuMDIlIHRvIDEuNSUuIFRoZSByZW1haW5pbmcgcGVyY2VudGFnZSBpcyBjb21wb3NlZCBvZiBleGNpcGllbnRzLiBXZVx1MjAxOXZlIHB1Ymxpc2hlZCByZWNvdmVyeSByYXRlcyBvZiA+NzAlLiBZb3UgY2FuIHNlbmQgdXMgdGhlIG1STkEgYW5kIExOUCBjb21wb25lbnRzIHRvIGVuY2Fwc3VsYXRlIGFuZCBkcnkuXCIvPlxyXG4gICAgPC8+LCAqL1xyXG4gICAgc3VtbWFyeTogXCJUaGUgY29udmVyc2F0aW9uIGZvY3VzZWQgb24gc3ByYXktZHJ5aW5nIExOUHMsIGVtcGhhc2l6aW5nIHRoZSBzaGVsZiBsaWZlIG9mIFJOQS1iYXNlZCBmb3JtdWxhdGlvbnMsIG9wdGltYWwgc3RvcmFnZSBjb25kaXRpb25zLCBhbmQgdGVjaG5pY2FsIHJlcXVpcmVtZW50cyBmb3IgdGhlIGRyeWluZyBwcm9jZXNzLiBDb3JkZW4gUGhhcm1hIHNoYXJlZCBpbnNpZ2h0cyBvbiB0aGUgcHJvdG9jb2wsIGhpZ2hsaWdodGluZyB0aGUgbmVlZCBmb3IgdGVzdGluZyBlYWNoIExOUCBmb3JtdWxhdGlvbiBpbmRpdmlkdWFsbHkgZm9yIHN0YWJpbGl0eS4gQUkgdGVjaG5vbG9neSBpcyB1c2VkIHRvIG9wdGltaXplIExOUCBmb3JtdWxhdGlvbnMsIGFuZCBwb3RlbnRpYWwgY29sbGFib3JhdGlvbnMgd2VyZSBkaXNjdXNzZWQsIGluY2x1ZGluZyBzdXBwb3J0IGZvciBkcnlpbmcgTE5Qcy5cIixcclxuICAgIG1vbnRoczogXCJhdWd1c3RcIlxyXG4gIH0sXHJcbiAge1xyXG4gICAgdm9ybmFtZTogXCJNYXhcIixcclxuICAgIG5hY2hubmFtZTogXCJCZWNrbWFublwiLFxyXG4gICAgam9iOiBcIlBhdGllbnQgYW5kIFN0dWRlbnRcIixcclxuICAgIGFmZmlsaWF0aW9uOiBcIlVuaXZlcnNpdHkgQmllbGVmZWxkXCIsXHJcbiAgICBwaWN0dXJldXJsOiBwaWNzWydtYXgnXSxcclxuICAgIHRhZzogXCJQYXRpZW50XCIsXHJcbiAgICBoZWFkaW5nOiBcIkNvbnN1bHRhdGlvbiBvbiBVbml2ZXJzaXR5IEh5Z2llbmUgUmlza3MgYW5kIEltcHJvdmVtZW50IGZvciBIeWdpZW5lIENvbmNlcHRcIixcclxuICAgIGludGVydmlld3RhYmlkOiBcIm1heGh5Z2llbmVcIixcclxuXHJcbiAgICBsYW5ndWFnZTogXCJkZVwiLFxyXG4gICAgcXVvdGVOYWNobmFtZTpcIkJlY2ttYW5uLCBQYXRpZW50XCIsXHJcbiAgICBxdW90ZVZvcm5hbWU6IFwiTWF4XCIsXHJcbiAgICBxdW90ZTogXCJJdFx1MjAxOXMgaW1wb3J0YW50IHRvIGtlZXAgbXkgaHlnaWVuZSBwcmFjdGljZXMgcHJhY3RpY2FsIGFuZCBlZmZlY3RpdmUsIGZvY3VzaW5nIG9uIHJlZ3VsYXIgY2xlYW5pbmcgcmF0aGVyIHRoYW4gZXhjZXNzaXZlIG1lYXN1cmVzIHRoYXQgbWF5IGNyZWF0ZSBtb3JlIHJpc2tzIGZvciBpbnZlY3Rpb24uXCIsXHJcbiAgICBzdW1tYXJ5OiBbPHA+SW4gdGhlIGZlZWRiYWNrIG9uIHRoZSBoeWdpZW5lIGNvbmNlcHQsIHRoZSBhdXRob3Igc3RhdGVzIHRoYXQgdGhlIG51bWJlciBvZiB0b2lsZXRzIHJlcXVpcmVkIGNhbiBiZSByZWR1Y2VkIGFzIG9ubHkgYSBtYXJnaW5hbCBudW1iZXIgb2YgcGVvcGxlIHdpbGwgYmUgcHJlc2VudCBhdCB0aGUgdW5pdmVyc2l0eS4gSGUgcHJhaXNlZCB0aGUgZmlyc3QgZm91ciBwb2ludHMgb2YgdGhlIGNvbmNlcHQgYXMgdmVyeSBnb29kIGFuZCB3ZWxsIHRob3VnaHQgb3V0LlxyXG5cclxuICAgICAgV2l0aCByZWdhcmQgdG8gcG9pbnRzIGZpdmUgYW5kIHNpeCwgaGUgY2xhcmlmaWVzIHRoYXQgbm8gc3BlY2lhbCBoeWdpZW5lIGl0ZW1zIGFyZSByZXF1aXJlZCBmb3IgdGhlIHN0YXkgYXMgbG9uZyBhcyB0aGUgdG9pbGV0cyBhcmUgY2xlYW5lZCByZWd1bGFybHkgYW5kIHRoZXJlIGlzIGFuIGFkZGl0aW9uYWwgc2VydmljZSBmb3IgdGhlIHdhc2hiYXNpbnMuIEhlIGV4cGxhaW5zIHRoYXQgdGhlIHNvdXJjZXMgb2YgZGFuZ2VyIGNhbiBiZSBzaWduaWZpY2FudGx5IHJlZHVjZWQgYnkgcmVndWxhciBjbGVhbmluZyBhbmQgdGhlIHByZXNlbmNlIG9mIHRvaWxldCBsaWRzLCB3aGljaCBlbGltaW5hdGVzIHRoZSBuZWVkIGZvciBzcGVjaWFsIGh5Z2llbmUgbWVhc3VyZXMuXHJcbiAgICAgIFxyXG4gICAgICBIZSBhbHNvIGFyZ3VlcyB0aGF0IGNvbnRhY3RsZXNzIGZhY2lsaXRpZXMgYXJlIG5vdCBuZWNlc3NhcnkgYXMgcGVvcGxlIHdhc2ggb3Igc2FuaXRpc2UgdGhlaXIgaGFuZHMgYWZ0ZXIgdXNpbmcgdGhlIHRvaWxldCBhbnl3YXkuIEZpbmFsbHksIGhlIGFza3Mgd2hldGhlciBzb3VyY2VzIGFyZSBuZWVkZWQgZm9yIHRoZSBoeWdpZW5lIGNvbmNlcHQgYW5kIG9mZmVycyBoaXMgaGVscCB0byBjcmVhdGUgYSByZXZpc2VkIHZlcnNpb24sIHdoaWNoIGhlIHdvdWxkIHRoZW4gbGlrZSB0byByZXZpZXcgYWdhaW4gYmVmb3JlIGl0IGlzIGZvcndhcmRlZCB0byBNciBKb2hhbm5mdW5rZS48L3A+XSxcclxuICAgIG1vbnRoczogXCJBdWd1c3RcIlxyXG4gIH0sXHJcbiAge1xyXG4gICAgdGl0bGU6IFwiRHIuXCIsXHJcbiAgICB2b3JuYW1lOiBcIkthdGhhcmluYVwiLFxyXG4gICAgbmFjaG5uYW1lOiBcIktvbG9ua29cIixcclxuICAgIGpvYjogXCJFeHBlcnQgZm9yIG5hbm9jYXBzdWxlc1wiLFxyXG4gICAgYWZmaWxpYXRpb246IFwiQmlvbG9naXN0XCIsXHJcbiAgICBwaWN0dXJldXJsOiBwaWNzWydrb2xvbmtvJ10sXHJcbiAgICB0YWc6IFwiQWNhZGVtaWFcIixcclxuICAgIGhlYWRpbmc6IFwiT3B0aW1pemluZyBvdXIgbVJOQSBEZWxpdmVyeSBTeXN0ZW1zXCIsXHJcbiAgICBpbnRlcnZpZXd0YWJpZDogXCJrb2xvbmtvZmlyc3RcIixcclxuXHJcbiAgICBsYW5ndWFnZTogXCJkZVwiLFxyXG4gICAgcXVvdGVWb3JuYW1lOlwiIERyLiBLYXRoYXJpbmFcIixcclxuICAgIHF1b3RlTmFjaG5hbWU6IFwiS29sb25rbywgTE5QIFNwZWNpYWxpc3Qgd2l0aCBmb2N1cyBvbiBjaGl0b3NhbiBhbmQgQ0YgdGhlcmFwaWVzIFwiLFxyXG4gICAgcXVvdGU6IFwiV293LCB5b3VcdTIwMTlyZSBhbHJlYWR5IGZ1cnRoZXIgYWxvbmcgdGhhbiBJIHdhcyEgVGhhdFx1MjAxOXMgYSByZWFsbHkgZ29vZCBhcHByb2FjaCwgZXNwZWNpYWxseSBzaW5jZSBkcnkgcG93ZGVyIGZvcm11bGF0aW9ucyBjYW4gaGVscCB3aXRoIHN0YWJpbGl0eS5cIixcclxuICAgIGFpbW9mY29udGFjdDogWzxwPk91ciBnb2FsIGluIHJlYWNoaW5nIG91dCB0byBEci4gS2F0aGFyaW5hIEtvbG9ua28sIHdobyBlYXJuZWQgaGVyIFBoRCB3b3JraW5nIG9uIGNoaXRvc2FuLWJhc2VkIG5hbm9wYXJ0aWNsZXMgZm9yIGRlbGl2ZXJpbmcgbnVjbGVpYyBhY2lkcyB0byBodW1hbiByZXNwaXJhdG9yeSBjZWxscyBpbiB0aGUgY29udGV4dCBvZiAgQ3lzdGljIEZpYnJvc2lzLCB3YXMgdG8gc2VlayBoZXIgYWR2aWNlIG9uIHRoZSBkZXNpZ24sIHN0YWJpbGl0eSwgYW5kIGFwcGxpY2F0aW9uIG9mIG5hbm9wYXJ0aWNsZXMuIFdlIHdhbnRlZCB0byBsZWFybiBmcm9tIGhlciBleHBlcmllbmNlIHdpdGggY2hpdG9zYW4tY2Fwc2FpY2luIG5hbm9wYXJ0aWNsZXMsIGVzcGVjaWFsbHkgdGhlIGNoYWxsZW5nZXMgc2hlIGVuY291bnRlcmVkLCBhbmQgYXBwbHkgaGVyIGluc2lnaHRzIHRvIGltcHJvdmUgb3VyIG93biBwcm9qZWN0LiBTcGVjaWZpY2FsbHksIHdlIGFpbWVkIHRvIGJldHRlciB1bmRlcnN0YW5kIG5hbm9wYXJ0aWNsZSBzdGFiaWxpdHksIHRyYW5zZmVjdGlvbiBtZXRob2RzLCBhbmQgaG93IHRvIGVmZmVjdGl2ZWx5IGRlc2lnbiBvdXIgZXhwZXJpbWVudHMuXHJcbiAgICA8L3A+XSxcclxuICAgIGluc2lnaHRzOiBbPHA+RHIuIEtvbG9ua28gcHJvdmlkZWQgdXMgd2l0aCB2YWx1YWJsZSBpbnNpZ2h0cyBpbnRvIHdvcmtpbmcgd2l0aCBuYW5vcGFydGljbGVzLCBwYXJ0aWN1bGFybHkgZW1waGFzaXppbmcgdGhlIGFkdmFudGFnZXMgb2YgbmFub2NhcHN1bGVzLiBTaGUgaGlnaGxpZ2h0ZWQgdGhhdCBuYW5vY2Fwc3VsZXMgYXJlIG1vcmUgc3RhYmxlIHRoYW4gbmFuby1jb21wbGV4ZXMsIHdoaWNoIGlzIGNydWNpYWwgZm9yIGV4cGVyaW1lbnRzIGludm9sdmluZyBjb21wbGV4IGVudmlyb25tZW50cyBhbmQgaGlnaCBzaGVhciBmb3JjZXMuIEFkZGl0aW9uYWxseSwgaGVyIHVzZSBvZiBjYXBzYWljaW4gd2Fzblx1MjAxOXQgYWltZWQgYXQgaW1wcm92aW5nIHRyYW5zZmVjdGlvbiBlZmZpY2llbmN5IGJ1dCB3YXMgcGFydCBvZiBhIGJyb2FkZXIgc3RyYXRlZ3kgdGFyZ2V0aW5nIHNwZWNpZmljIGNoYW5uZWxzLiBTaGUgYWxzbyBzaGFyZWQgcHJhY3RpY2FsIG1ldGhvZHMgZm9yIG1lYXN1cmluZyBwYXJ0aWNsZSBzdGFiaWxpdHkgYW5kIGN5dG90b3hpY2l0eSwgZ2l2aW5nIHVzIGNsZWFyIGd1aWRhbmNlIG9uIHRvb2xzIGFuZCB0ZWNobmlxdWVzIHRoYXQgd2UgY2FuIGFwcGx5IHRvIG91ciBwcm9qZWN0LiBcclxuICAgICAgRnVydGhlcm1vcmUsIERyLiBLb2xvbmtvIGRpc2N1c3NlZCB0aGUgdXNlIG9mIGNoaXRvc2FuIGFzIGEgY29tcG9uZW50IGluIG5hbm9wYXJ0aWNsZSBmb3JtdWxhdGlvbnMuIENoaXRvc2FuLCB3aXRoIGl0cyBwb3NpdGl2ZSBjaGFyZ2UsIGNhbiBpbnRlcmFjdCB3aXRoIG1STkEsIHBvdGVudGlhbGx5IGVuaGFuY2luZyB0aGUgc3RhYmlsaXR5IG9mIHRoZSBjYXJnby4gQXMgYW4gb3V0bG9vaywgd2UgcGxhbiB0byBleHBsb3JlIG1vZGlmaWNhdGlvbnMgdXNpbmcgY2hpdG9zYW4gdG8gaW1wcm92ZSB0aGUgc3RhYmlsaXR5IGFuZCBwZXJmb3JtYW5jZSBvZiBvdXIgbVJOQSBkZWxpdmVyeSBzeXN0ZW0uIFRoaXMgYXBwcm9hY2ggbWF5IHByb3ZpZGUgYSBtb3JlIHJvYnVzdCBzb2x1dGlvbiBmb3Igb3B0aW1pemluZyBuYW5vcGFydGljbGUgZm9ybXVsYXRpb25zIGluIGZ1dHVyZSBleHBlcmltZW50cy4gPC9wPl0sXHJcbiAgICBpbXBsZW1lbnRhdGlvbjpbPHA+V2UgZGlyZWN0bHkgYXBwbGllZCBLYXRoYXJpbmFcdTIwMTlzIGluc2lnaHRzIHRvIGltcHJvdmUgb3VyIG5hbm9wYXJ0aWNsZSBkZXNpZ24gYW5kIHRlc3RpbmcgbWV0aG9kcy4gSGVyIHJlY29tbWVuZGF0aW9ucyBvbiB1c2luZyBuYW5vLWNhcHN1bGVzIGFuZCBPcHRpTUVNIGFzIHRoZSB0cmFuc2ZlY3Rpb24gbWVkaXVtIGhlbHBlZCByZWZpbmUgb3VyIGV4cGVyaW1lbnRhbCBhcHByb2FjaC4gU2hlIGVtcGhhc2l6ZWQgdXNpbmcgYSBtZWRpdW0gd2l0aCBmZXdlciBhZGRpdGl2ZXMsIGxpa2UgT3B0aU1FTSwgYW5kIHN1Z2dlc3RlZCByZW1vdmluZyBhbnRpYmlvdGljcyAyNCBob3VycyBiZWZvcmUgdHJhbnNmZWN0aW9uIHRvIGF2b2lkIGludGVyZmVyZW5jZSwgZW5zdXJpbmcgbW9yZSBjb250cm9sbGVkIGFuZCBlZmZlY3RpdmUgY29uZGl0aW9ucy4gV2UgYWxzbyBleHBsb3JlZCBuZXcgc3RhYmlsaXR5IHRlc3RpbmcgaWRlYXMsIGluY2x1ZGluZyBuYXNhbCBzcHJheSBzb2x1dGlvbnMgYW5kIGRyeSBwb3dkZXIgZm9ybXVsYXRpb25zLiBcclxuICAgICAgV2UgaW5jb3Jwb3JhdGVkIGhlciBpbnNpZ2h0cyBhcyBmb2xsb3dzOiA8L3A+LFxyXG4gICAgICA8dWw+XHJcbiAgICAgICAgPGxpPjxiPk5hbm8tQ2Fwc3VsZXMgRm9jdXM6PC9iPiBCYXNlZCBvbiBLYXRoYXJpbmFcdTIwMTlzIGFkdmljZSwgd2UgcHJpb3JpdGl6ZWQgbmFuby1jYXBzdWxlcyBmb3IgdGhlaXIgZW5oYW5jZWQgc3RhYmlsaXR5IG92ZXIgbmFuby1jb21wbGV4ZXMuPC9saT5cclxuICAgICAgICA8bGk+PGI+Q2hpdG9zYW4gZm9yIFN0YWJpbGl0eTo8L2I+IFdlJ3JlIGV4cGxvcmluZyBjaGl0b3NhbiB0byBpbXByb3ZlIG1STkEgZGVsaXZlcnkgc3lzdGVtIHN0YWJpbGl0eSBkdWUgdG8gaXRzIHBvc2l0aXZlIGNoYXJnZSwgd2hpY2ggYmluZHMgbVJOQSB0byB0aGUgbmFub3BhcnRpY2xlIHN1cmZhY2UuPC9saT5cclxuICAgICAgICA8bGk+PGI+T3B0aU1FTSBmb3IgVHJhbnNmZWN0aW9uOjwvYj4gT3B0aU1FTSBpcyBub3cgb3VyIGNob3NlbiB0cmFuc2ZlY3Rpb24gbWVkaXVtLCB3aXRoIHRoZSBzdWdnZXN0aW9uIHRvIHJlbW92ZSBhbnRpYmlvdGljcyAyNCBob3VycyBwcmlvci48L2xpPlxyXG4gICAgICAgIDxsaT48Yj5NVFQgVGVzdCBmb3IgQ3l0b3RveGljaXR5OjwvYj4gV2UgYWRvcHRlZCB0aGUgTVRUIHRlc3QgZm9yIGN5dG90b3hpY2l0eSBkdWUgdG8gaXRzIHNpbXBsaWNpdHkgYW5kIHJlbGlhYmlsaXR5LjwvbGk+XHJcbiAgICAgICAgPGxpPjxiPk5hc2FsIFNwcmF5IGFuZCBEcnkgUG93ZGVyIFRlc3Rpbmc6PC9iPiBXZSBhcmUgY29uc2lkZXJpbmcgdGVzdGluZyBuYW5vcGFydGljbGUgc3RhYmlsaXR5IHVzaW5nIG5hc2FsIHNwcmF5IHNvbHV0aW9ucyBhbmQgZXhwbG9yaW5nIGRyeSBwb3dkZXIgZm9ybXVsYXRpb25zLjwvbGk+XHJcbiAgICAgICAgPGxpPjxiPkNhcHNhaWNpbiBFeGNsdXNpb246PC9iPiBBcyBjYXBzYWljaW4gZGlkIG5vdCBzaWduaWZpY2FudGx5IGltcGFjdCB0cmFuc2ZlY3Rpb24gZWZmaWNpZW5jeSBpbiBLYXRoYXJpbmFcdTIwMTlzIHJlc2VhcmNoLCB3ZSBkZWNpZGVkIG5vdCB0byBpbmNsdWRlIGl0IGluIG91ciBwcm9qZWN0LjwvbGk+XHJcbiAgICAgIDwvdWw+XHJcbiAgICBdICxcclxuICAgIGludGVydmlldzo8PlxyXG4gICAgPFFhQm94IHE9XCJIb3cgZGlkIHlvdSBhcHByb2FjaCB0aGUgZGVzaWduIG9mIExpcGlkIE5hbm9wYXJ0aWNsZXMgKExOUHMpPyBXaGF0IHdlcmUgdGhlIGZpcnN0IHN0ZXBzIHlvdSB0b29rIGF0IHRoYXQgdGltZT8gV2VyZSB5b3UgYWxyZWFkeSBmYW1pbGlhciB3aXRoIExOUHMsIG9yIHdhcyB0aGF0IGEgY29tcGxldGVseSBuZXcgZXhwZXJpZW5jZSBmb3IgeW91P1wiIGE9XCJJIHN0YXJ0ZWQgd29ya2luZyB3aXRoIG5hbm9wYXJ0aWNsZXMgZHVyaW5nIG15IGJhY2hlbG9yXHUyMDE5cyB0aGVzaXMuIEkgY29udGludWVkIHdpdGggbmFub3BhcnRpY2xlcyBpbnRvIG15IG1hc3Rlclx1MjAxOXMgdGhlc2lzLCB3b3JraW5nIG9uIGEgcHJvamVjdCByZWxhdGVkIHRvICBDeXN0aWMgRmlicm9zaXMuIEluaXRpYWxseSwgSSB3b3JrZWQgd2l0aCBuYW5vLWNvbXBsZXhlcywgYnV0IGxhdGVyIHN3aXRjaGVkIHRvIG5hbm8tY2Fwc3VsZXMgZHVlIHRvIHRoZWlyIHN0YWJpbGl0eSwgZXNwZWNpYWxseSBpbiBjZWxsIGN1bHR1cmUgbWVkaWEuXCIgLz5cclxuICAgIDxRYUJveCBxPVwiU2luY2UgeW91XHUyMDE5cmUgZm9jdXNlZCBvbiBzdGFiaWxpdHkgYW5kIGFwcGx5aW5nIGhpZ2ggc2hlYXIgZm9yY2VzLCBjb3VsZCB5b3UgZXhwbGFpbiB3aHkgbmFuby1jYXBzdWxlcyBhcmUgbW9yZSBzdGFibGUgdGhhbiBjb21wbGV4ZXMgaW4gdGhpcyBjb250ZXh0P1wiIGE9XCJOYW5vLWNhcHN1bGVzIGFyZSBnZW5lcmFsbHkgbW9yZSBzdGFibGUgaW4gY2VsbCBjdWx0dXJlIG1lZGlhIGNvbXBhcmVkIHRvIG5hbm8tY29tcGxleGVzLCB3aGljaCBvZnRlbiByZWFjdCB3aXRoIGFkZGl0aXZlcyBhbmQgcHJvdGVpbnMuIEhvd2V2ZXIsIEkgZGlkblx1MjAxOXQgZXhwbG9yZSBzaGVhciBmb3JjZXMgbXVjaCBmdXJ0aGVyLiBNeSBtYWluIGdvYWwgd2FzIHRvIHN0YWJpbGl6ZSB0aGUgcGFydGljbGVzIGluIGNlbGwgY3VsdHVyZSBtZWRpYSBmb3IgdGVzdGluZyBvbiBjZWxscy5cIiAvPlxyXG4gICAgPFFhQm94IHE9XCJXaGF0IGtpbmQgb2YgY2VsbCBjdWx0dXJlIG1lZGl1bSBkaWQgeW91IHVzZSBmb3IgdGhlc2UgZXhwZXJpbWVudHM/XCIgYT1cIkZvciB0cmFuc2ZlY3Rpb24sIHdlIHVzZWQgT3B0aW1lbSBhcyB0aGUgbWVkaXVtLCBhZnRlciByZW1vdmluZyBhbnRpYmlvdGljcyBmcm9tIHRoZSBjdWx0dXJlIG1lZGl1bSAyNCBob3VycyBwcmlvciB0byB0cmFuc2ZlY3Rpb24uXCIgLz5cclxuICAgIDxRYUJveCBxPVwiSG93IGxvbmcgZGlkIGl0IHRha2UgeW91IHRvIGdldCB0byB0aGUgcG9pbnQgd2hlcmUgeW91IHVzZWQgbmFuby1jYXBzdWxlcz9cIiBhPVwiSSBvbmx5IHN0YXJ0ZWQgd29ya2luZyB3aXRoIG5hbm8tY2Fwc3VsZXMgdG93YXJkcyB0aGUgZW5kIG9mIG15IFBoRC4gSSBzcGVudCBtdWNoIG9mIG15IHRpbWUgd2l0aCBuYW5vLWNvbXBsZXhlcywgYnV0IHdoZW4gSSB2aXNpdGVkIGEgbGFiIGluIExlZWRzLCBJIHNoaWZ0ZWQgdG8gbmFuby1jYXBzdWxlcy4gVGhpcyB0cmFuc2l0aW9uIGhhcHBlbmVkIHF1aXRlIGxhdGUsIGp1c3QgbW9udGhzIGJlZm9yZSBJIGZpbmlzaGVkIG15IHRoZXNpcy5cIiAvPlxyXG4gICAgPFFhQm94IHE9XCJZb3UgbWVudGlvbmVkIGNhcHNhaWNpbiBpbiB5b3VyIHJlY2VudCBwYXBlci4gRG9lcyBpdCBzaWduaWZpY2FudGx5IGFmZmVjdCB0cmFuc2ZlY3Rpb24gZWZmaWNpZW5jeSwgYW5kIGlzIGl0IHdvcnRoIGluY2x1ZGluZyBpbiBvdXIgZXhwZXJpbWVudHM/XCIgYT1cIk5vLCBjYXBzYWljaW4gZGlkblx1MjAxOXQgYWZmZWN0IHRyYW5zZmVjdGlvbiBlZmZpY2llbmN5IGluIG91ciBleHBlcmltZW50cy4gSXQgd2FzIGluY2x1ZGVkIHRvIGluaGliaXQgdGhlIEluYS1jaGFubmVsIGFzIHBhcnQgb2YgYSBkdWFsIHN0cmF0ZWd5IHRhcmdldGluZyBib3RoIENGVFIgYW5kIEluYS1jaGFubmVscywgYnV0IGl0IG1pZ2h0IG5vdCBiZSBuZWNlc3NhcnkgZm9yIHlvdXIgcHJvamVjdC5cIiAvPlxyXG4gICAgPFFhQm94IHE9XCJXZXJlIHRoZXJlIGFueSBjcml0aWNhbCBjb21wb25lbnRzIGluIHRoZSBmb3JtdWxhdGlvbiBvZiB5b3VyIG5hbm9wYXJ0aWNsZXMgdGhhdCB5b3UgY291bGRuXHUyMDE5dCBkbyB3aXRob3V0P1wiIGE9XCJObywgdGhlIG1haW4gY29tcGFyaXNvbiB3YXMgYmV0d2VlbiBuYW5vLWNvbXBsZXhlcyBhbmQgbmFuby1jYXBzdWxlcy4gTmFuby1jb21wbGV4ZXMgd2VyZSBpbmNvbnNpc3RlbnQgaW4gc2l6ZSBhbmQgc3RhYmlsaXR5LCB3aGlsZSBuYW5vLWNhcHN1bGVzIHdlcmUgc3RhYmxlIGFuZCBzbWFsbGVyLCB3aGljaCBJIGJlbGlldmVkIHdvdWxkIHdvcmsgYmV0dGVyIGluIGxhdGVyIGV4cGVyaW1lbnRzLlwiIC8+XHJcbiAgICA8UWFCb3ggcT1cIklzIHRoZXJlIGEgd2F5IHRvIGNoZWNrIGlmIHRoZSBtUk5BIHN0aWNrcyB0byB0aGUgb3V0c2lkZSBvZiB0aGUgbmFub3BhcnRpY2xlIG9yIGVuZHMgdXAgaW5zaWRlP1wiIGE9XCJJIGJlbGlldmUgdGhlIG1STkEgc3RpY2tzIHRvIHRoZSBvdXRzaWRlLiBUaGUgcHJvY2VzcyBpbnZvbHZlZCBmb3JtaW5nIG5hbm8tY2Fwc3VsZXMgdXNpbmcgbGVjaXRoaW4gYW5kIG9pbCwgYW5kIGFmdGVyIHRoZSBldGhhbm9sIHdhcyBldmFwb3JhdGVkLCBtUk5BIHdhcyBhZGRlZCBsYXN0LiBUaGUgbVJOQSBsaWtlbHkgYWRoZXJlZCB0byB0aGUgcG9zaXRpdmVseSBjaGFyZ2VkIGNoaXRvc2FuIG9uIHRoZSBvdXRzaWRlIG9mIHRoZSBjYXBzdWxlLlwiIC8+XHJcbiAgICA8UWFCb3ggcT1cIkRvIHlvdSByZW1lbWJlciB0aGUgcmF0aW8gb2YgbVJOQSB0byBuYW5vLWNhcHN1bGU/XCIgYT1cIkkgZG9uXHUyMDE5dCByZW1lbWJlciB0aGUgZXhhY3QgcmF0aW8gb2ZmaGFuZCwgYnV0IGl0XHUyMDE5cyBkb2N1bWVudGVkIGluIG15IGRpc3NlcnRhdGlvbi4gSSBvcHRpbWl6ZWQgdGhlIGFtb3VudCBvZiBtUk5BIHRoYXQgbmVlZGVkIHRvIGVudGVyIHRoZSBjZWxsIGZvciBlZmZlY3RpdmUgcmVzdWx0cywgYnV0IGRpZG5cdTIwMTl0IGRvIGV4dGVuc2l2ZSB0ZXN0aW5nIHdpdGggbmFuby1jYXBzdWxlcy5cIiAvPlxyXG4gICAgPFFhQm94IHE9XCJXYXMgZGV0ZXJtaW5pbmcgdGhlIG9wdGltYWwgYW1vdW50IG9mIG5hbm9wYXJ0aWNsZXMgdHJpYWwgYW5kIGVycm9yP1wiIGE9XCJZZXMsIGRlZmluaXRlbHkuIEl0IGludm9sdmVkIGEgbG90IG9mIG9wdGltaXphdGlvbi5cIiAvPlxyXG4gICAgPFFhQm94IHE9XCJZb3UgdXNlZCB0aGUgTVRUIHRlc3QgZm9yIGN5dG90b3hpY2l0eS4gV291bGQgeW91IHJlY29tbWVuZCBpdCBmb3IgdXMsIG9yIGFyZSB0aGVyZSBiZXR0ZXIgYWx0ZXJuYXRpdmVzP1wiIGE9XCJZZXMsIHRoZSBNVFQgdGVzdCBpcyBzaW1wbGUgYW5kIHJlbGlhYmxlLiBZb3UganVzdCBuZWVkIHRvIHBpcGV0dGUgYWNjdXJhdGVseS4gV2UgdXNlZCBpdCBmcmVxdWVudGx5LCBhbmQgaXQgd29ya2VkIHdlbGwuXCIgLz5cclxuICAgIDxRYUJveCBxPVwiSG93IGRpZCB5b3UgYXNzZXNzIHRoZSBzdGFiaWxpdHkgb2YgdGhlIG5hbm8tY2Fwc3VsZXM/IERpZCB5b3UgdXNlIG1pY3Jvc2NvcHkgb3IgYW5vdGhlciBtZXRob2Q/XCIgYT1cIldlIHVzZWQgYSBkZXZpY2UgY2FsbGVkIGEgWmV0YXNpemVyLCB3aGljaCBtZWFzdXJlcyBzaXplLCB6ZXRhIHBvdGVudGlhbCwgYW5kIHBvbHlkaXNwZXJzaXR5IGluZGV4IChQREkpLiBXZSB1c2VkIGl0IHRvIGFzc2VzcyBzdGFiaWxpdHkgaW4gY2VsbCBjdWx0dXJlIG1lZGl1bSBvdmVyIHRpbWUsIGZyb20gaGFsZiBhbiBob3VyIHRvIDI0IGhvdXJzLlwiIC8+XHJcbiAgICA8UWFCb3ggcT1cIkRvIHlvdSBoYXZlIGFueSBhZHZpY2UgZm9yIG91ciBwcm9qZWN0IG9yIGFueXRoaW5nIHdlIG1pZ2h0IGhhdmUgbWlzc2VkP1wiIGE9XCJJZiB5b3VcdTIwMTlyZSBwbGFubmluZyB0byB1c2UgYSBkaWZmdXNlciBmb3IgbmFzYWwgYWRtaW5pc3RyYXRpb24sIHlvdSBtaWdodCB3YW50IHRvIHRlc3QgdGhlIHN0YWJpbGl0eSBvZiB0aGUgbmFub3BhcnRpY2xlcyBpbiBhIHNhbGluZSBzb2x1dGlvbiBvciBzdGFuZGFyZCBuYXNhbCBzcHJheSBzb2x1dGlvbi4gSXQgY291bGQgYmUgdXNlZnVsIHRvIHNlZSBob3cgdGhleSBiZWhhdmUgaW4gc3VjaCBhIG1lZGl1bS4gT3RoZXJ3aXNlLCBpdCBzZWVtcyBsaWtlIHlvdVx1MjAxOXJlIHdlbGwgYWhlYWQgb2Ygd2hlcmUgSSB3YXMhXCIgLz5cclxuICAgIDxRYUJveCBxPVwiVGhhbmsgeW91IHNvIG11Y2ggZm9yIHlvdXIgdGltZSBhbmQgaW5zaWdodHMhXCIgYT1cIllvdVx1MjAxOXJlIHdlbGNvbWUhIElcdTIwMTltIGdsYWQgSSBjb3VsZCBoZWxwLlwiIC8+XHJcbiAgICA8Lz4sXHJcbiAgICBzdW1tYXJ5OiBcIldlIGlkZW50aWZpZWQgc2V2ZXJhbCBjcnVjaWFsIGluc2lnaHRzIHRvIGd1aWRlIG91ciBwcm9qZWN0IGRldmVsb3BtZW50LiBOYW5vLWNhcHN1bGVzIHdlcmUgZm91bmQgdG8gYmUgbW9yZSBzdGFibGUgdGhhbiBuYW5vLWNvbXBsZXhlcywgbWFraW5nIHRoZW0gb3VyIHByZWZlcnJlZCBmb3JtdWxhdGlvbiBjaG9pY2UuIFdlIHdpbGwgdXRpbGl6ZSBjaGl0b3NhbiB0byBlbmhhbmNlIG1STkEgc3RhYmlsaXR5IGR1ZSB0byBpdHMgcG9zaXRpdmUgY2hhcmdlLCB3aGlsZSBjYXBzYWljaW4gd2FzIGRlZW1lZCBpcnJlbGV2YW50IGZvciBvdXIgcHVycG9zZXMuIEZvciB0cmFuc2ZlY3Rpb24sIHdlIHdpbGwgdXNlIE9wdGlNRU0gYXMgdGhlIG1lZGl1bSwgcmVtb3ZpbmcgYW50aWJpb3RpY3MgMjQgaG91cnMgcHJpb3IgdG8gdGhlIHByb2NlZHVyZS4gV2Ugd2lsbCBhc3Nlc3Mgc3RhYmlsaXR5IHdpdGggYSBaZXRhc2l6ZXIgYW5kIGV2YWx1YXRlIGN5dG90b3hpY2l0eSB1c2luZyB0aGUgTVRUIHRlc3QuIEFkZGl0aW9uYWxseSwgd2UgYXJlIGV4cGxvcmluZyBuYXNhbCBzcHJheSBhbmQgZHJ5IHBvd2RlciBmb3JtdWxhdGlvbnMgdG8gaW1wcm92ZSBuYW5vcGFydGljbGUgZGVsaXZlcnkuIFRoZXNlIGluc2lnaHRzIHdpbGwgc2lnbmlmaWNhbnRseSBzaGFwZSBvdXIgYXBwcm9hY2ggdG8gb3B0aW1pemluZyBtUk5BIGRlbGl2ZXJ5IHN5c3RlbXMuXCIsXHJcbiAgICBtb250aHM6IFwiQXVndXN0XCJcclxuICB9LFxyXG4gIHtcclxuICAgIHRpdGxlOiBcIkRyLlwiLFxyXG4gICAgdm9ybmFtZTogXCJPbGl2ZXJcIixcclxuICAgIG5hY2hubmFtZTogXCJEclx1MDBFNGdlclwiLFxyXG4gICAgam9iOiBcIkJpZWxlZmVsZCBVbml2ZXJzaXR5XCIsXHJcbiAgICBhZmZpbGlhdGlvbjogXCJSZXNlYXJjaCBHcm91cCBDZWxsdWxhciBOZXVyb3BoeXNpb2xvZ3lcIixcclxuICAgIHBpY3R1cmV1cmw6IHBpY3NbJ2RyYWVnZXInXSxcclxuICAgIHRhZzogXCJBY2FkZW1pYVwiLFxyXG4gICAgaGVhZGluZzogXCJOZXcgYXBwcm9hY2hlcyBpbiBlbGVjdHJvcGh5c2lvbG9neSBhbmQgdGhlaXIgYXBwbGljYXRpb24gaW4gb3VyIHByb2plY3QgIFwiLFxyXG4gICAgaW50ZXJ2aWV3dGFiaWQ6IFwicGF0Y2hjbGFtcFwiLFxyXG5cclxuICAgIGxhbmd1YWdlOiBcImRlXCIsXHJcbiAgICBxdW90ZTogXCJcIixcclxuICAgIGFpbW9mY29udGFjdDpbPHA+PC9wPl0sXHJcbiAgICBpbnNpZ2h0czogWzxwPjwvcD5dLFxyXG4gICAgaW1wbGVtZW50YXRpb246IFs8cD48L3A+XSxcclxuICAgIHN1bW1hcnk6IFwiXCIsXHJcbiAgICBtb250aHM6IFwiQXVndXN0XCIsXHJcbiAgfSxcclxuICB7XHJcbiAgICB2b3JuYW1lOiBcIkd4UCBjb3Vyc2VcIixcclxuICAgIG5hY2hubmFtZTpcIlwiLFxyXG4gICAgcGljdHVyZXVybDogcGljc1snZ3hwY291cnNlJ10sXHJcbiAgICB0YWc6IFwiSW5kdXN0cnlcIixcclxuICAgIGhlYWRpbmc6IFwiU3VjY2Vzc2Z1bCBwYXJ0aWNpcGF0aW9uIG9mIGEgdGVhbSBtZW1iZXIgaW4gYSA1IGRheSBHeFAgY291cnNlXCIsXHJcbiAgICBpbnRlcnZpZXd0YWJpZDogXCJneHBjb3Vyc2VcIixcclxuXHJcbiAgICBxdW90ZTogXCJUaGUgR1hQIGNvdXJzZSB3YXMgZXh0cmVtZWx5IHVzZWZ1bCBhcyBpdCBwcm92aWRlZCB1cyB3aXRoIGltcG9ydGFudCBrbm93bGVkZ2UgdGhhdCBzdXBwb3J0cyBvdXIgZW50aXJlIHRlYW0gaW4gY29tcGx5aW5nIHdpdGggcXVhbGl0eSBzdGFuZGFyZHMuIFRoaXMga25vd2xlZGdlIHdpbGwgaGVscCB1cyB0byBvcmdhbmlzZSBvdXIgcHJvY2Vzc2VzIGVmZmljaWVudGx5IGFuZCBpbiBhY2NvcmRhbmNlIHdpdGggcmVndWxhdGlvbnMgaW4gdGhlIGZ1dHVyZS5cIixcclxuICAgIHF1b3RlVm9ybmFtZTpcIktheWFcIixcclxuICAgIHF1b3RlTmFjaG5hbWU6XCJMYW5nZSwgVGVhbW1lbWJlclwiLFxyXG4gICAgdHlwZTogXCJtZXRhXCIsXHJcbiAgICB0ZXh0OiBbPHA+SSwgS2F5YSwgVGVhbSBNZW1iZXIgb2YgaUdFTSBCaWVsZWZlbGQgMjAyNCwgcmVjZW50bHkgcGFydGljaXBhdGVkIGluIGFuIGludGVuc2l2ZSBvbmUtd2VlayBHWFAgKEdvb2QgUHJhY3RpY2UpIHRyYWluaW5nIGNvdXJzZSwgd2hpY2ggd2FzIHBpdm90YWwgZXhwZXJpZW5jZSBmb3IgYm90aCBtZSBhbmQgb3VyIHByb2plY3QuIFRoZSBjb3Vyc2UgY292ZXJlZCBlc3NlbnRpYWwgcmVndWxhdG9yeSBmcmFtZXdvcmtzLCBpbmNsdWRpbmc8L3A+LCBcclxuICAgICAgPHVsPlxyXG4gICAgICAgIDxsaT5Hb29kIExhYm9yYXRvcnkgUHJhY3RpY2UgKEdMUCk8L2xpPlxyXG4gICAgICAgIDxsaT5Hb29kIENsaW5pY2FsIFByYWN0aWNlIChHQ1ApPC9saT5cclxuICAgICAgICA8bGk+R29vZCBNYW51ZmFjdHVyaW5nIFByYWN0aWNlIChHTVApPC9saT5cclxuICAgICAgPC91bD4sXHJcbiAgICAgIDxwPlxyXG4gICAgICB3aGljaCBhcmUgYWxsIGRlc2lnbmVkIHRvIGVuc3VyZSBxdWFsaXR5LCBzYWZldHksIGFuZCBjb21wbGlhbmNlIGFjcm9zcyBldmVyeSBwaGFzZSBvZiBzY2llbnRpZmljIHJlc2VhcmNoIGFuZCBkZXZlbG9wbWVudC4gICAgICBcclxuICAgICAgQXMgdGhlIGhlYWQgb2YgSW50ZWdyYXRlZCBIdW1hbiBQcmFjdGljZXMsIEkgZm91bmQgdGhpcyB0cmFpbmluZyBwYXJ0aWN1bGFybHkgdmFsdWFibGUuIEl0IHByb3ZpZGVkIG1lIHdpdGggYSBkZWVwZXIgdW5kZXJzdGFuZGluZyBvZiB0aGUgcmlnb3JvdXMgc3RhbmRhcmRzIHRoYXQgbmVlZCB0byBiZSBtYWludGFpbmVkIGluIHJlc2VhcmNoLCBlc3BlY2lhbGx5IGNvbmNlcm5pbmcgZXRoaWNzLCBkYXRhIGludGVncml0eSwgYW5kIHBhdGllbnQgc2FmZXR5LiBJIGxlYXJuZWQgaG93IHRvIHByb3Blcmx5IGRvY3VtZW50IHJlc2VhcmNoIHByb2Nlc3NlcywgZW5zdXJlIHRoZSByZXByb2R1Y2liaWxpdHkgb2YgcmVzdWx0cywgYW5kIGFzc2VzcyBhbmQgbWl0aWdhdGUgcmlza3MsIGFsbCB3aGlsZSBrZWVwaW5nIHRoZSBldGhpY2FsIGNvbnNpZGVyYXRpb25zIG9mIG91ciBwcm9qZWN0IGF0IHRoZSBmb3JlZnJvbnQuIFxyXG4gICAgICBJIGhhdmUgYWNxdWlyZWQgdGhlIGFiaWxpdHkgdG8gY3JlYXRlIHN0YW5kYXJkIG9wZXJhdGluZyBwcm9jZWR1cmVzIChTT1BzKSB0aGF0IGd1YXJhbnRlZSB0aGUgdHJhbnNwYXJlbnQgYW5kIHRyYWNlYWJsZSBkb2N1bWVudGF0aW9uIG9mIGVhY2ggc3RhZ2Ugb2YgdGhlIHJlc2VhcmNoIHByb2Nlc3MuIFRoaXMgbm90IG9ubHkgZmFjaWxpdGF0ZXMgaW50ZXJuYWwgb3JnYW5pc2F0aW9uIGJ1dCBpcyBhbHNvIGNydWNpYWwgZm9yIHN1YnNlcXVlbnQgYXBwcm92YWxzIGFuZCBhdWRpdHMgYnkgcmVndWxhdG9yeSBhdXRob3JpdGllcy4gXHJcbiAgICAgIEl0IGlzIG9mIHBhcmFtb3VudCBpbXBvcnRhbmNlIHRvIGVuc3VyZSB0aGUgcmVwcm9kdWNpYmlsaXR5IG9mIG91ciBleHBlcmltZW50cyBieSBtYWludGFpbmluZyBhY2N1cmF0ZSBwcm90b2NvbHMgYW5kIG1ldGljdWxvdXNseSBkb2N1bWVudGluZyBhbGwgdmFyaWFibGVzLiBUaGlzIGlzIG9mIHBhcnRpY3VsYXIgaW1wb3J0YW5jZSBzaG91bGQgdGhlIGludGVudGlvbiBiZSB0byBwdXJzdWUgY2xpbmljYWwgcmVzZWFyY2ggYXQgYSBsYXRlciBzdGFnZSwgYXMgdGhlIHJlcHJvZHVjaWJpbGl0eSBvZiBleHBlcmltZW50cyBpcyBhIGNydWNpYWwgZmFjdG9yIGluIHRoZSB2YWxpZGl0eSBvZiB0aGUgcmVzdWx0cy4gXHJcbiAgICAgIEkgYWNxdWlyZWQga25vd2xlZGdlIG9mIHRlY2huaXF1ZXMgZm9yIHJpc2sgYXNzZXNzbWVudCwgaW5jbHVkaW5nIEZhaWx1cmUgTW9kZSBhbmQgRWZmZWN0cyBBbmFseXNpcyAoRk1FQSkuIFRoaXMgcHJvY2VzcyBlbmFibGVzIHRoZSBpZGVudGlmaWNhdGlvbiBvZiBwb3RlbnRpYWwgcmlza3MgaW4gYSBwcm9qZWN0IGF0IGFuIGVhcmx5IHN0YWdlLCB0aHVzIGZhY2lsaXRhdGluZyB0aGUgZGV2ZWxvcG1lbnQgb2Ygc3RyYXRlZ2llcyB0byBtaW5pbWlzZSB0aGVtLiBUaGlzIGFwcHJvYWNoIGFsbG93cyB1cyB0byBpZGVudGlmeSBhbmQgYWRkcmVzcyBwb3RlbnRpYWwgc291cmNlcyBvZiBlcnJvciBiZWZvcmUgdGhleSBsZWFkIHRvIHNpZ25pZmljYW50IGlzc3Vlcy4gXHJcbiAgICAgIFRoaXMga25vd2xlZGdlIGlzIGNydWNpYWwgYXMgd2UgdGhpbmsgYWJvdXQgdGhlIGZ1dHVyZSBvZiBvdXIgcHJvamVjdCwgcGFydGljdWxhcmx5IGlmIHdlIGFpbSB0byBtb3ZlIG91ciBnZW5lIHRoZXJhcHkgYXBwcm9hY2ggZm9yICBDeXN0aWMgRmlicm9zaXMgY2xvc2VyIHRvIGNsaW5pY2FsIHRyaWFscyBhbmQgcmVhbC13b3JsZCBhcHBsaWNhdGlvbnMuIE15IHBhcnRpY2lwYXRpb24gaW4gdGhlIEdYUCB0cmFpbmluZyBoYXMgZXF1aXBwZWQgbWUgd2l0aCB0aGUgbmVjZXNzYXJ5IHRvb2xzIHRvIHBvdGVudGlhbGx5IGd1aWRlIG91ciB0ZWFtIHRocm91Z2ggdGhlIGNvbXBsZXggcmVndWxhdG9yeSBsYW5kc2NhcGUsIGVuc3VyaW5nIG91ciB3b3JrIHJlbWFpbnMgYWxpZ25lZCB3aXRoIGluZHVzdHJ5IHN0YW5kYXJkcyBhbmQgcmVhZHkgZm9yIHRoZSBuZXh0IHN0ZXBzIGluIGRldmVsb3BtZW50LiBcclxuICAgICAgT25lIG9mIHRoZSBrZXkgc3BlYWtlcnMgZHVyaW5nIHRoZSBHWFAgY291cnNlIHdhcyAgPEhQTGlua3RvT3RoZXJIUFRhYiB0YWI9XCJneHBleHBlcnRcIiB0ZXh0PVwiRHIuIE1hcmN1cyBCZXJnZXJcIiAvPiwgd2hvc2UgZXhwZXJ0aXNlIHdhcyBpbnZhbHVhYmxlIHRvIG1lIGFuZCB0aGUgZW50aXJlIHRlYW0uIEFmdGVyIHRoZSBjb3Vyc2UsIEkgaGFkIHRoZSBvcHBvcnR1bml0eSB0byBhc2sgRHIuIEJlcmdlciBzb21lIHF1ZXN0aW9ucywgZnVydGhlciBkZWVwZW5pbmcgbXkgdW5kZXJzdGFuZGluZyBvZiB0aGUgcHJhY3RpY2FsIGFwcGxpY2F0aW9ucyBvZiBHWFAgaW4gcmVzZWFyY2guIFRoZSBjb25uZWN0aW9uIHdpdGggRHIuIEJlcmdlciBoYXMgYmVlbiBoaWdobHkgYmVuZWZpY2lhbCwgYXMgaGlzIGluc2lnaHRzIGhlbHBlZCBzaGFwZSBrZXkgYXNwZWN0cyBvZiBvdXIgcHJvamVjdFx1MjAxOXMgZGV2ZWxvcG1lbnQgYW5kIGNvbXBsaWFuY2Ugd2l0aCBpbmR1c3RyeSBzdGFuZGFyZHMuIEhpcyBndWlkYW5jZSB3aWxsIGNvbnRpbnVlIHRvIGJlIGEgdmFsdWFibGUgcmVzb3VyY2UgZm9yIG91ciB0ZWFtIG1vdmluZyBmb3J3YXJkLiBcclxuICAgICAgVGhyb3VnaCB0aGlzIHRyYWluaW5nLCBJIGZlZWwgYmV0dGVyIHBvc2l0aW9uZWQgdG8gY29udHJpYnV0ZSB0byB0aGUgdGVhbVx1MjAxOXMgZWZmb3J0cywgZW5zdXJpbmcgb3VyIHByb2plY3QgYWRoZXJlcyB0byBnbG9iYWwgc2FmZXR5IGFuZCBldGhpY2FsIGd1aWRlbGluZXMuIFRoaXMgZXhwZXJpZW5jZSBoYXMgc3RyZW5ndGhlbmVkIG91ciBhcHByb2FjaCBhbmQgc2V0IGEgc29saWQgZm91bmRhdGlvbiBmb3IgZnV0dXJlIHByb2dyZXNzLCBlbnN1cmluZyB0aGF0IG91ciByZXNlYXJjaCwgcHVibGljIGVuZ2FnZW1lbnQsIGFuZCBwb3RlbnRpYWwgY2xpbmljYWwgYXBwbGljYXRpb25zIGNvbnRpbnVlIHRvIG1lZXQgdGhlIGhpZ2hlc3QgcmVndWxhdG9yeSBzdGFuZGFyZHMuIDwvcD5dLFxyXG4gICAgc3VtbWFyeTogXCJLYXlhLCBhIG1lbWJlciBvZiB0aGUgaUdFTSBCaWVsZWZlbGQgMjAyNCB0ZWFtLCBjb21wbGV0ZWQgYW4gaW50ZW5zaXZlIG9uZS13ZWVrIEdYUCAoR29vZCBQcmFjdGljZSkgdHJhaW5pbmcsIHdoaWNoIGNvdmVyZWQgR29vZCBMYWJvcmF0b3J5IFByYWN0aWNlIChHTFApLCBHb29kIENsaW5pY2FsIFByYWN0aWNlIChHQ1ApLCBhbmQgR29vZCBNYW51ZmFjdHVyaW5nIFByYWN0aWNlIChHTVApLiBUaGUgdHJhaW5pbmcgcHJvdmlkZWQgdmFsdWFibGUgaW5zaWdodHMgaW50byBtYWludGFpbmluZyBoaWdoIHN0YW5kYXJkcyBvZiBxdWFsaXR5LCBzYWZldHksIGFuZCBldGhpY3MgdGhyb3VnaG91dCB0aGUgcmVzZWFyY2ggcHJvY2Vzcy4gS2F5YSBsZWFybmVkIGNydWNpYWwgc2tpbGxzLCBzdWNoIGFzIGRvY3VtZW50aW5nIHJlc2VhcmNoIHByb2Nlc3NlcyBmb3IgcmVwcm9kdWNpYmlsaXR5LCBjcmVhdGluZyBzdGFuZGFyZCBvcGVyYXRpbmcgcHJvY2VkdXJlcyAoU09QcyksIGFuZCBjb25kdWN0aW5nIHJpc2sgYXNzZXNzbWVudHMgdXNpbmcgdGVjaG5pcXVlcyBsaWtlIEZhaWx1cmUgTW9kZSBhbmQgRWZmZWN0cyBBbmFseXNpcyAoRk1FQSkuIFRoaXMga25vd2xlZGdlIGlzIGVzc2VudGlhbCBmb3IgYWR2YW5jaW5nIHRoZWlyICBDeXN0aWMgRmlicm9zaXMgZ2VuZSB0aGVyYXB5IHByb2plY3QgdG93YXJkIGNsaW5pY2FsIHRyaWFscyBhbmQgZW5zdXJpbmcgY29tcGxpYW5jZSB3aXRoIHJlZ3VsYXRvcnkgc3RhbmRhcmRzLiBEci4gTWFyY3VzIEJlcmdlciwgYSBrZXkgc3BlYWtlciBpbiB0aGUgY291cnNlLCBwcm92aWRlZCBhZGRpdGlvbmFsIGd1aWRhbmNlLCBvZmZlcmluZyB2YWx1YWJsZSBpbnNpZ2h0cyB0aGF0IHdpbGwgY29udGludWUgdG8gYmVuZWZpdCB0aGUgdGVhbS5cIixcclxuICAgIG1vbnRoczogXCJhdWd1c3RcIixcclxuICAgIHBpY3R1cmV1cmxfaW1wbGVtZW50YXRpb246IFwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2Zvci13aWtpLXRleHRzL2d4cC9neHAtY291cnNlLWtheWEud2VicFwiLFxyXG4gICAgcGljdHVyZXVybF9pbnRlcnZpZXc6XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvZm9yLXdpa2ktdGV4dHMvZ3hwL2d4cC1jb3Vyc2UtZ3JvdXAud2VicFwiLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgdm9ybmFtZTogXCJDb25uZWN0IGFuZCBTaGFyZVwiLFxyXG4gICAgbmFjaG5uYW1lOiBcIlwiLFxyXG4gICAgcGljdHVyZXVybDogcGljc1snbG9nbyddLFxyXG4gICAgam9iOiBcIlRlYW0gaUdFTVwiLFxyXG4gICAgYWZmaWxpYXRpb246IFwiQmllbGZlbGQgQ2VCaVRlYyAyMDI0XCIsXHJcbiAgICB0YWc6IFwiTWlsZXN0b25lXCIsXHJcbiAgICBoZWFkaW5nOiBcIkJ1aWxkaW5nIENvbm5lY3Rpb25zOiBUaGUgUG93ZXIgb2YgQ29sbGFib3JhdGlvbiBhbmQgQ29tbXVuaWNhdGlvblwiLFxyXG4gICAgaW50ZXJ2aWV3dGFiaWQ6IFwiY29ubmVjdFwiLFxyXG5cclxuICAgIHF1b3RlOiBcIlNoYXJpbmcgb3VyIHByb2plY3QgdXBkYXRlcyBhbmQgaWRlYXMgd2l0aCBhIGRpdmVyc2UgYXVkaWVuY2UgaGFzIGJlZW4gZW5saWdodGVuaW5nLiBUaGUgZmVlZGJhY2sgd2UgcmVjZWl2ZSBkcml2ZXMgb3VyIGlubm92YXRpb24gYW5kIHJlaW5mb3JjZXMgdGhlIHZhbHVlIG9mIGNvbGxhYm9yYXRpb24gaW4gdGFja2xpbmcgdGhlIGNoYWxsZW5nZXMgb2YgIEN5c3RpYyBGaWJyb3Npcy5cIixcclxuICAgIHF1b3RlTmFjaG5hbWU6IFwiU3VzYXQsIFRlYW1tZW1iZXJcIixcclxuICAgIHF1b3RlVm9ybmFtZTogXCJLYXRobGVlblwiLFxyXG4gICAgdHlwZTogXCJtZXRhXCIsXHJcbiAgICBzdW1tYXJ5OiBbPHA+RHVyaW5nIG91ciBwcm9qZWN0IGpvdXJuZXksIHdlIG1hZGUgYSBjb25jZXJ0ZWQgZWZmb3J0IHRvIGNvbm5lY3QgYW5kIHNoYXJlIGluc2lnaHRzIHdpdGggYSB3aWRlIGFycmF5IG9mIGluZGl2aWR1YWxzLCBsZXZlcmFnaW5nIHNvY2lhbCBtZWRpYSBhbmQgdW5pdmVyc2l0eSBuZXR3b3Jrcy4gRW5nYWdpbmcgd2l0aCBwZWVycywgZmFjdWx0eSwgYW5kIGluZHVzdHJ5IHByb2Zlc3Npb25hbHMgbm90IG9ubHkgZW5yaWNoZWQgb3VyIHVuZGVyc3RhbmRpbmcgYnV0IGFsc28gZm9zdGVyZWQgYSBjb2xsYWJvcmF0aXZlIHNwaXJpdC4gVGhyb3VnaCBwbGF0Zm9ybXMgbGlrZSBMaW5rZWRJbiBhbmQgdW5pdmVyc2l0eSBmb3J1bXMsIHdlIGluaXRpYXRlZCBkaXNjdXNzaW9ucyB0aGF0IGJyb3VnaHQgZnJlc2ggcGVyc3BlY3RpdmVzIG9uIGdlbmUgdGhlcmFweSBhbmQgIEN5c3RpYyBGaWJyb3Npcy5cclxuICAgIE91ciBzb2NpYWwgbWVkaWEgb3V0cmVhY2ggYWxsb3dlZCB1cyB0byBzaGFyZSBvdXIgZmluZGluZ3MgYW5kIHByb2dyZXNzIHdpdGggYSBicm9hZGVyIGF1ZGllbmNlLCBwcm9tb3RpbmcgYXdhcmVuZXNzIGFuZCBzcGFya2luZyBpbnRlcmVzdCBpbiBvdXIgd29yay4gV2UgYWN0aXZlbHkgcGFydGljaXBhdGVkIGluIG9ubGluZSBkaXNjdXNzaW9ucyBhbmQgd2ViaW5hcnMsIGV4Y2hhbmdpbmcgaWRlYXMgYW5kIGZlZWRiYWNrIHdpdGggZXhwZXJ0cyBmcm9tIHZhcmlvdXMgZmllbGRzLiBUaGlzIGV4Y2hhbmdlIG9mIGtub3dsZWRnZSBoYXMgcHJvdmVuIGludmFsdWFibGUsIGd1aWRpbmcgdXMgaW4gcmVmaW5pbmcgb3VyIG1ldGhvZG9sb2dpZXMgYW5kIGVuaGFuY2luZyBvdXIgcHJvamVjdFx1MjAxOXMgaW1wYWN0LlxyXG4gICAgV2UgYWxzbyBlbmdhZ2VkIHdpdGggZGlmZmVyZW50IGNvbW11bml0eSBvcmdhbml6YXRpb25zIGFuZCBhZHZvY2FjeSBncm91cHMsIHdoaWNoIGhlbHBlZCB1cyBncmFzcCB0aGUgc29jaWV0YWwgaW1wbGljYXRpb25zIG9mIG91ciByZXNlYXJjaC4gVGhyb3VnaCB0aGVzZSBjb25uZWN0aW9ucywgd2UgZ2FybmVyZWQgc3VwcG9ydCBmb3Igb3VyIGluaXRpYXRpdmVzIGFuZCBpbmNyZWFzZWQgdmlzaWJpbGl0eSBmb3Igb3VyIGNhdXNlLiBUaGlzIGNvbGxhYm9yYXRpdmUgYXBwcm9hY2ggbm90IG9ubHkgc3RyZW5ndGhlbmVkIG91ciBwcm9qZWN0IGJ1dCBhbHNvIGhpZ2hsaWdodGVkIHRoZSBpbXBvcnRhbmNlIG9mIGNvbW11bml0eSBpbnZvbHZlbWVudCBpbiBzY2llbnRpZmljIHJlc2VhcmNoLlxyXG4gICAgICA8L3A+LFxyXG5cclxuICAgICAgPHVsPlxyXG4gICAgICAgICAgPGxpPlxyXG4gICAgICAgICAgICAgIDxiPkNvbW11bml0eSBFbmdhZ2VtZW50OjwvYj4gQ29ubmVjdGVkIHdpdGggY29tbXVuaXR5IG9yZ2FuaXphdGlvbnMgYW5kIGFkdm9jYWN5IGdyb3VwcyB0byB1bmRlcnN0YW5kIHRoZSBzb2NpZXRhbCBpbXBsaWNhdGlvbnMgb2Ygb3VyIHJlc2VhcmNoIGFuZCBnYXJuZXIgc3VwcG9ydC5cclxuICAgICAgICAgIDwvbGk+XHJcbiAgICAgICAgICA8bGk+XHJcbiAgICAgICAgICAgICAgPGI+U29jaWFsIE1lZGlhIE91dHJlYWNoOjwvYj4gVXRpbGl6ZWQgcGxhdGZvcm1zIGxpa2UgTGlua2VkSW4gdG8gc2hhcmUgcHJvZ3Jlc3MgYW5kIGZpbmRpbmdzLCBwcm9tb3RpbmcgYXdhcmVuZXNzIG9mICBDeXN0aWMgRmlicm9zaXMgYW5kIGdlbmUgdGhlcmFweS5cclxuICAgICAgICAgIDwvbGk+XHJcbiAgICAgICAgICA8bGk+XHJcbiAgICAgICAgICAgICAgPGI+Q29sbGFib3JhdGl2ZSBEaXNjdXNzaW9uczo8L2I+IEVuZ2FnZWQgaW4gZGlzY3Vzc2lvbnMgd2l0aCBwZWVycywgZmFjdWx0eSwgYW5kIGluZHVzdHJ5IHByb2Zlc3Npb25hbHMsIGV4Y2hhbmdpbmcgaW5zaWdodHMgYW5kIHJlZmluaW5nIG1ldGhvZG9sb2dpZXMuXHJcbiAgICAgICAgICA8L2xpPlxyXG4gICAgICAgICAgPGxpPlxyXG4gICAgICAgICAgICAgIDxiPkJyb2FkZXIgUGVyc3BlY3RpdmVzOjwvYj4gTGV2ZXJhZ2VkIGRpdmVyc2UgaW50ZXJhY3Rpb25zIHRvIGdhaW4gbmV3IHBlcnNwZWN0aXZlcyB0aGF0IGVuaGFuY2VkIHRoZSBwcm9qZWN0J3MgaW1wYWN0IGFuZCBkaXJlY3Rpb24uXHJcbiAgICAgICAgICA8L2xpPlxyXG4gICAgICA8L3VsPl0sXHJcbiAgICBtb250aHM6IFwiU2VwdGVtYmVyXCJcclxuICB9LFxyXG4gIHtcclxuICAgIHRpdGxlOiBcIlwiLFxyXG4gICAgdm9ybmFtZTogXCJNaWNoYWVsXCIsXHJcbiAgICBuYWNobm5hbWU6IFwiSm9oYW5uZnVua2VcIixcclxuICAgIGpvYjogXCJSZXByZXNlbnRhdGl2ZSBib2R5IGZvciBzZXZlcmVseSBkaXNhYmxlZCBwZXJzb25zXCIsXHJcbiAgICBhZmZpbGlhdGlvbjogXCJVbml2ZXJzaXR5IEJpZWxlZmVsZFwiLFxyXG4gICAgcGljdHVyZXVybDogcGljc1snam9oYW5uZnVua2UnXSxcclxuICAgIHRhZzogXCJBY2FkZW1pYVwiLFxyXG4gICAgaGVhZGluZzogXCJIeWdpZW5lIGNvbmNlcHQgZm9yIHN0dWRlbnRzIHdpdGggZGlzYWJpbGl0aWVzIGFuZCBpbW11bm9jb21wcm9taXNlZCBlbXBsb3llZXNcIixcclxuICAgIGludGVydmlld3RhYmlkOiBcImpvaGFubmZ1bmtlXCIsXHJcblxyXG4gICAgcXVvdGU6IFwiVGhlIGltcGxlbWVudGF0aW9uIG9mIHRoZSBoeWdpZW5lIGNvbmNlcHQgaXMgcHJvdmluZyBtb3JlIGRpZmZpY3VsdCB0aGFuIGV4cGVjdGVkIGR1ZSB0byB0aGUgYnVyZWF1Y3JhY3kgYXQgdGhlIHVuaXZlcnNpdHkuIE5ldmVydGhlbGVzcywgdGhlIGludGVydmlldyBnYXZlIHVzIGEgZ29vZCBpbnNpZ2h0IGludG8gdGhpcyBsYWJ5cmludGggb2YgcmVndWxhdGlvbnMgYW5kIHdlIGdvdCBzdGFydGVkIHRoZSBwcm96ZXNzIG9mIGltcGxlbWVudGF0aW9uLlwiLFxyXG4gICAgcXVvdGVWb3JuYW1lOiBcIlZlcmFcIixcclxuICAgIHF1b3RlTmFjaG5hbWU6IFwiS1x1MDBGNmhsZXIsIFRlYW1tZW1iZXJcIixcclxuICAgIGFpbW9mY29udGFjdDogWzxwPldlIGNvbnRhY3RlZCB0aGUgdW5pdmVyc2l0eSBiZWNhdXNlIG9mIHRoZSB1cmdlbnQgbmVlZCB0byBhZGRyZXNzIHRoZSBpc3N1ZSBvZiBoeWdpZW5lIGZvciBzdHVkZW50cyBhbmQgc3RhZmYsIHBhcnRpY3VsYXJseSB0aG9zZSB3aXRoIGltbXVub2NvbXByaXNlZCBzdHVkZW50cyBhbmQgc3RhZmYuIFRoZXJlIHdhcyBhIG5lZWQgdG8gZGV2ZWxvcCBhbiBlZmZlY3RpdmUgaHlnaWVuZSBjb25jZXB0IHRvIGVuc3VyZSB0aGUgaGVhbHRoIGFuZCBzYWZldHkgb2YgdGhlc2UgcGVvcGxlLiBXZSBkZXZlbG9wZWQgdGhpcyBjb25jZXB0IGluIGNvbGxhYm9yYXRpb24gd2l0aCA8SFBMaW5rdG9PdGhlckhQVGFiIHRhYj1cIm1heGZpcnN0XCIgdGV4dD1cIk1heFwiIC8+LCBvdXIgQ0YgZnJpZW5kLiA8L3A+XSxcclxuICAgIGluc2lnaHRzOiBbPHA+V2UgbGVhcm50IHRoYXQgb3VyIGh5Z2llbmUgY29uY2VwdCBpcyB2ZXJ5IHdlbGwtZGV2ZWxvcGVkLiBCdXQgYWx0aG91Z2ggYSB3ZWxsLWRldmVsb3BlZCBoeWdpZW5lIGNvbmNlcHQgaXMgYWxyZWFkeSBleGlzdGluZywgc3RyYXRlZ2ljIGRldmVsb3BtZW50IGFuZCBhIHN0ZXAtYnktc3RlcCBhcHByb2FjaCBhcmUgbmVlZGVkLiBJbiBwYXJ0aWN1bGFyLCB0aGUgc3RlcC1ieS1zdGVwIGltcGxlbWVudGF0aW9uIHdhcyBlbXBoYXNpemVkLCBsaWtlIHN0YXJ0aW5nIHdpdGggZXF1aXBwaW5nIHRoZSB0b2lsZXRzLiBCdXJlYXVjcmF0aWMgaHVyZGxlcywgc3VjaCBhcyB0aGUgbmVlZCB0byBhcHBseSB0byB0aGUgcmVjdG9yYXRlLCB3ZXJlIGlkZW50aWZpZWQgYXMgYSBtYWpvciBjaGFsbGVuZ2UuIEluIGFkZGl0aW9uLCBpdCBiZWNhbWUgY2xlYXIgdGhhdCB0aGVyZSBpcyBhIGdyZWF0IG5lZWQgZm9yIHNhbml0YXJ5IGZhY2lsaXRpZXMgYW5kIGZhY2lsaXRpZXMgZm9yIHRoZSBkaXNhYmxlZCwgZXNwZWNpYWxseSBkdWUgdG8gdGhlIG5lZWRzIG9mIHN0dWRlbnRzIGFuZCBzdGFmZiB3aXRoIGhlYWx0aCBwcm9ibGVtcy4gSW50ZXJhY3Rpb24gYW5kIG5ldHdvcmtpbmcgd2l0aCBvdGhlciB1bml2ZXJzaXRpZXMgd2FzIGFsc28gY29uc2lkZXJlZCB2YWx1YWJsZS4gPC9wPl0sXHJcbiAgICBpbXBsZW1lbnRhdGlvbjogWzxwPlRoZSBuZXh0IHBoYXNlIG9mIGRldmVsb3BpbmcgYSBuZXcgaHlnaWVuZSBjb25jZXB0IGlzIHRvIG1haW50YWluIGNvbnRhY3Qgd2l0aCBNci4gSm9oYW5uZnVua2UgaW4gb3JkZXIgdG8gY29udGludWUgdG8gYWR2YW5jZSB0aGUgaHlnaWVuZSBjb25jZXB0IGluIGNvbGxhYm9yYXRpb24uIFRoZSBzdHJhdGVnaWMgYXBwcm9hY2ggZW50YWlscyB0aGUgaW5jcmVtZW50YWwgaW1wbGVtZW50YXRpb24gb2YgbWVhc3VyZXMsIGV4ZW1wbGlmaWVkIGJ5IHRoZSBlc3RhYmxpc2htZW50IG9mIHRoZSBpbmF1Z3VyYWwgdG9pbGV0IGZhY2lsaXR5IHdpdGhpbiB0aGUgbWFpbiBidWlsZGluZy4gSXQgaXMgb2YgdGhlIHV0bW9zdCBpbXBvcnRhbmNlIHRvIGVuc3VyZSB0aGUgdW5pbnRlcnJ1cHRlZCBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgaHlnaWVuZSBjb25jZXB0LiBJbiBvcmRlciB0byBhY2hpZXZlIHRoaXMsIGl0IGlzIGVzc2VudGlhbCB0byBkcmF3IHVwb24gdGhlIGV4aXN0aW5nIHBsYW5zIGFuZCBtZWFzdXJlcyB0aGF0IGhhdmUgYWxyZWFkeSBiZWVuIGltcGxlbWVudGVkIGluIG5ldyBidWlsZGluZ3MuICBXZSBhcmUgd29ya2luZyBvbiBhZHZhbmNpbmcgdGhlIHBsYW5zIGF0IGEgaGlnaGVyIGxldmVsIGFuZCBhcmUgaW4gcmVndWxhciBkaWFsb2d1ZSB3aXRoIHRoZSBDZW50cmFsIGNvbnRhY3QgcG9pbnQgQmFycmllci1mcmVlIGluIG9yZGVyIHRvIG92ZXJjb21lIGJ1cmVhdWNyYXRpYyBodXJkbGVzIGFuZCBhY3RpdmVseSBwcm9tb3RlIHRoZSB0b3BpYy4gRnVydGhlcm1vcmUsIGl0IGlzIG5lY2Vzc2FyeSB0byBpbnRlbnNpZnkgbG9iYnlpbmcgd29yayBpbiBvcmRlciB0byBnYWluIGdyZWF0ZXIgc3VwcG9ydCBmb3IgdGhpcyBpc3N1ZSBhdCBib3RoIHRoZSB1bml2ZXJzaXR5IGFuZCBwb2xpdGljYWwgbGV2ZWxzLiA8L3A+XSxcclxuICAgIGxhbmd1YWdlOiBcImRlXCIsXHJcbiAgICBpbnRlcnZpZXc6IDw+XHJcbiAgICAgIDxRYUJveCBxPVwiV2hhdCBkbyB5b3UgdGhpbmsgb2Ygb3VyIGh5Z2llbmUgY29uY2VwdCBhbmQgb3VyIHBsYW4/XCIgYT1cIlRoaXMgaXMgYSB2ZXJ5IGFjdXRlIHByb2JsZW0uIEl0IHBhcnRpY3VsYXJseSBhZmZlY3RzIHN0dWRlbnRzIHdpdGggZGlzYWJpbGl0aWVzIGFuZCBpbW11bmUtY29tcHJvbWlzZWQgc3RhZmYsIHN1Y2ggYXMgdGhvc2Ugd2l0aCBjYW5jZXIgb3IgIEN5c3RpYyBGaWJyb3Npcywgd2hvIGFyZSBmb3JjZWQgdG8gd29yayBmcm9tIGhvbWUuIFRoZSBwcm9ibGVtIGlzOiBFbXBsb3llZXMgY2FuIHdvcmsgZnJvbSBob21lLCBidXQgc3R1ZGVudHMgY2Fubm90LiBUaGVyZSBpcyBhIGdyZWF0IG5lZWQgZm9yIGh5Z2llbmUgbWVhc3VyZXMsIGFzIGNvbnRhY3QgbXVzdCBiZSBhdm9pZGVkIHRvIG1pbmltaXNlIHRoZSByaXNrIG9mIGluZmVjdGlvbi5cIiAvPlxyXG4gICAgICA8UWFCb3ggcT1cIldoYXQgYXJlIHRoZSBjaGFsbGVuZ2VzIGluIGltcGxlbWVudGluZyB0aGUgaHlnaWVuZSBjb25jZXB0P1wiIGE9XCJUaGVyZSBpcyBhIGxhY2sgb2Ygc3RyYXRlZ2ljIGRldmVsb3BtZW50LCBhbHRob3VnaCB5b3VyIGh5Z2llbmUgY29uY2VwdCBpcyB3ZWxsIGRldmVsb3BlZC4gSXQgaXMgbmVjZXNzYXJ5IHRvIHByb2NlZWQgaW4gc21hbGwgc3RlcHMsIGUuZy4gc3RhcnRpbmcgd2l0aCBhIHRvaWxldCBpbiB0aGUgbWFpbiBidWlsZGluZy4gSG93ZXZlciwgYnVyZWF1Y3JhY3kgaXMgYSBtYWpvciBvYnN0YWNsZS4gVG8gYmUgaW1wbGVtZW50ZWQsIGFuIGFwcGxpY2F0aW9uIGhhcyB0byBiZSBzdWJtaXR0ZWQgdG8gdGhlIHJlY3RvcmF0ZSwgYW5kIHRoZXNlIHByb2Nlc3NlcyBhcmUgb2Z0ZW4gbGVuZ3RoeSBhbmQgY29tcGxpY2F0ZWQuXCIgLz5cclxuICAgICAgPFFhQm94IHE9XCJXaGF0IGlzIHRoZSBjdXJyZW50IHNpdHVhdGlvbiBhdCBvdXIgdW5pdmVyc2l0eT9cIiBhPVwiV2hpbGUgc29tZSBwcm9ncmVzcyBoYXMgYmVlbiBtYWRlIHdpdGggdGhlIGluc3RhbGxhdGlvbiBvZiBhZGRpdGlvbmFsIHRvaWxldHMgYW5kIGRpc2FibGVkLWZyaWVuZGx5IHRvaWxldHMgaW4gbmV3IGJ1aWxkaW5ncywgdGhlcmUgaXMgYXMgeWV0IG5vIG92ZXJhcmNoaW5nIHN0cmF0ZWd5IGluIHBsYWNlIHRvIGd1aWRlIGZ1dHVyZSBkZXZlbG9wbWVudHMuIEZ1cnRoZXJtb3JlLCB0aGUgbGFjayBvZiBjbGFyaXR5IHJlZ2FyZGluZyB0aGUgbWlzc2lvbiBzdGF0ZW1lbnQgYW5kIG9iamVjdGl2ZXMgbGVhdmVzIHJvb20gZm9yIGFtYmlndWl0eS4gVGhlIGR1dHkgb2YgY2FyZSB0aGF0IGVtcGxveWVycyBoYXZlIHRvd2FyZHMgZW1wbG95ZWVzIGlzIGVzdGFibGlzaGVkLCB5ZXQgdGhlIHNpdHVhdGlvbiBpcyByZWd1bGF0ZWQgZGlmZmVyZW50bHkgd2l0aCByZWdhcmRzIHRvIHN0dWRlbnRzLiBUaGUgcG9zc2liaWxpdHkgb2YgcmVjZWl2aW5nIGNvbXBlbnNhdGlvbiBmb3IgZGlzYWR2YW50YWdlcyBpcyBvcGVuLCBidXQgaXMgZnJlcXVlbnRseSBzZWVuIGFzIGluYWRlcXVhdGUuXCIgLz5cclxuICAgICAgPFFhQm94IHE9XCJXaGF0IGFyZSB0aGUgbmV4dCBzdGVwcyBpbiBpbXBsZW1lbnRpbmcgdGhlIGh5Z2llbmUgY29uY2VwdD9cIiBhPVwiSXQgaXMgZXNzZW50aWFsIHRoYXQgdGhlIGNvbmNlcHQgYmUgaW1wbGVtZW50ZWQgaW4gc21hbGwsIHN0cmF0ZWdpYyBzdGVwcy4gQXQgdGhlIHNhbWUgdGltZSwgaXQgaXMgdml0YWwgdGhhdCB0aGUgcmVjdG9yYXRlIGFuZCBvdGhlciBkZWNpc2lvbi1tYWtlcnMgYmUgY29uc3VsdGVkIG9uIGEgcmVndWxhciBiYXNpcyB0byBlbnN1cmUgdGhhdCB0aGlzIG1hdHRlciByZW1haW5zIGF0IHRoZSBmb3JlZnJvbnQgb2YgZGlzY3Vzc2lvbnMuIEZ1cnRoZXJtb3JlLCBpdCBpcyBvZiBncmVhdCBpbXBvcnRhbmNlIHRvIGVuZ2FnZSBpbiBwb2xpdGljYWwgbG9iYnlpbmcgdG8gc2VjdXJlIGFkZGl0aW9uYWwgc3VwcG9ydCBmb3IgdGhpcyBpc3N1ZS5cIiAvPlxyXG4gICAgPC8+LFxyXG4gICAgc3VtbWFyeTogXCJXZSBnb3QgaW4gdG91Y2ggYmVjYXVzZSB0aGVyZSB3YXMgYW4gYWN1dGUgaHlnaWVuZSBwcm9ibGVtIGZvciBwYXJ0aWN1bGFybHkgdnVsbmVyYWJsZSBncm91cHMgbGlrZSBpbW11bm9jb21wcmlzZWQgcGVyc29ucyBhdCB0aGUgdW5pdmVyc2l0eS4gV2UgbGVhcm50IGZyb20gdGhlIGV4Y2hhbmdlIHRoYXQgZGVzcGl0ZSBhIHdlbGwtZGV2ZWxvcGVkIGh5Z2llbmUgcG9saWN5LCBzdHJhdGVnaWMgc3RlcHMgYXJlIHN0aWxsIG5lZWRlZCwgZXNwZWNpYWxseSB0byBvdmVyY29tZSBidXJlYXVjcmF0aWMgaHVyZGxlcy4gV2UgaGF2ZSBpbnRlZ3JhdGVkIHRoZXNlIGxlc3NvbnMgaW50byBvdXIgcHJvamVjdCBieSBmb2N1c2luZyBvbiBjb250aW51b3VzIGNvbGxhYm9yYXRpb24gd2l0aCB0aGUgQ2VudHJhbCBjb250YWN0IHBvaW50IEJhcnJpZXItZnJlZSBhbmQgb3RoZXIgZGVjaXNpb24tbWFrZXJzLlwiLFxyXG4gICAgbW9udGhzOiBcIlNlcHRlbWJlclwiXHJcbiAgfSxcclxuICB7XHJcbiAgICB0aXRsZTogXCJEci5cIixcclxuICAgIHZvcm5hbWU6IFwiU3JpcmFtXCIsXHJcbiAgICBuYWNobm5hbWU6IFwiVmFpZHlhbmF0aGFuIFwiLFxyXG4gICAgam9iOiBcIlByaW5jaXBsZSBpbnZlc3RpZ2F0b3IgYXQgTmF0aW9ud2lkZSBDaGlsZHJlblx1MjAxOXMgSG9zcGl0YWwgYW5kIGFzc2lzdGFudCBwcm9mZXNzb3IgUGVkaWF0cmljXHUyMDE5cyBhdCB0aGUgT2hpbyBTdGF0ZSBVbml2ZXJzaXR5IENvbGxlZ2Ugb2YgTWVkaWNpbmUgXCIsXHJcbiAgICBhZmZpbGlhdGlvbjogXCJOYXRpb253aWRlIENoaWxkcmVuXHUyMDE5cyBIb3NwaXRhbFwiLFxyXG4gICAgcGljdHVyZXVybDogcGljc1snc3JpcmFtJ10sXHJcbiAgICB0YWc6IFwiQWNhZGVtaWFcIixcclxuICAgIGhlYWRpbmc6IFwiRjUwOGRlbCBtdXRhdGlvbiBjb25maXJtZWQgYXMgdGhlIG1vc3QgY29tbW9uIENGVFIgbXV0YXRpb24gd29ybGR3aWRlLCBpbmNsdWRpbmcgQXNpYVwiLFxyXG4gICAgaW50ZXJ2aWV3dGFiaWQ6IFwic3JpcmFtXCIsXHJcbiAgICBsYW5ndWFnZTogXCJlblwiLFxyXG5cclxuICAgIHF1b3RlTmFjaG5hbWU6IFwiVmFpZHlhbmF0aGFuLCBJbm5vdmF0aXZlIGxlYWRlciBpbiBwZWRpYXRyaWMgcmVzZWFyY2hcIixcclxuICAgIHF1b3RlVm9ybmFtZTogXCJEci4gU3JpcmFtXCIsXHJcbiAgICBxdW90ZTogXCJJIHRoaW5rIHlvdSdyZSB0aGlua2luZyBhYm91dCBpdCB0aGUgcmlnaHQgd2F5LlsuLi5dIEkgd291bGQgaGF2ZSB0YWxrZWQgdG8gYWxsIG9mIHRoZSBleGFjdCBwZW9wbGUgdGhhdCB5b3UgaGF2ZSBhbHJlYWR5IHNwb2tlbiB3aXRoLlwiLFxyXG4gICAgYWltb2Zjb250YWN0OiBbPHA+VGhlIG9iamVjdGl2ZSBvZiB0aGlzIGNvbnRhY3Qgd2FzIHRvIGdhdGhlciBmdXJ0aGVyIGluZm9ybWF0aW9uIGFib3V0ICBDeXN0aWMgRmlicm9zaXMgKENGKSBpbiBBc2lhLCB3aXRoIGEgcGFydGljdWxhciBmb2N1cyBvbiB1bmRlcnN0YW5kaW5nIHBvdGVudGlhbCBkYXRhIGJpYXNlcywgaWRlbnRpZnlpbmcgY29tbW9uIG11dGF0aW9ucywgZXhwbG9yaW5nIHRoZSBhdmFpbGFibGUgbWVkaWNhdGlvbnMsIGFuZCBhc3Nlc3NpbmcgdGhlIGRpYWdub3N0aWMgcHJhY3RpY2VzIGluIHRoZSByZWdpb24uIDwvcD5dLFxyXG4gICAgaW5zaWdodHM6IFs8cD5UaGUgdGFsayB3aXRoIFNyaXJhbSByZXZlYWxlZCB0aGF0LCBhbHRob3VnaCAgQ3lzdGljIEZpYnJvc2lzIChDRikgaXMgcmVsYXRpdmVseSB1bmNvbW1vbiBpbiBBc2lhIGNvbXBhcmVkIHRvIG90aGVyIGRpc2Vhc2UgbGlrZSBzaWNrbGUgY2VsbCBkaXNlYXNlLCBpdCBuZXZlcnRoZWxlc3MgZXhoaWJpdHMgY29uc2lkZXJhYmxlIGdlbmV0aWMgZGl2ZXJzaXR5LiBUaGUgaWRlbnRpZmljYXRpb24gb2YgZGlmZmVyZW50IG11dGF0aW9ucyBpbiB0aGUgQ0ZUUiBnZW5lIGFjcm9zcyB0aGUgcmVnaW9uIGhhcyByZXZlYWxlZCB0aGF0IHRoZSBGNTA4ZGVsIG11dGF0aW9uIGlzIHRoZSBtb3N0IGNvbW1vbiwgYSBmaW5kaW5nIHRoYXQgYWxpZ25zIHdpdGggZ2xvYmFsIHBhdHRlcm5zLiBIb3dldmVyLCBpbiBBc2lhbiBwb3B1bGF0aW9ucywgb3RoZXIgcmFyZSBtdXRhdGlvbnMgYXJlIGFsc28gcHJldmFsZW50LCB3aGljaCBwcmVzZW50cyB1bmlxdWUgY2hhbGxlbmdlcyBpbiBkaWFnbm9zaXMgYW5kIHRyZWF0bWVudC5cclxuICAgICAgQWRkaXRpb25hbGx5LCBpdCB3YXMgZm91bmQgdGhhdCBlbnZpcm9ubWVudGFsIGZhY3RvcnMsIHN1Y2ggYXMgYWlyIHBvbGx1dGlvbiwgc2VydmUgdG8gZXhhY2VyYmF0ZSB0aGUgc3ltcHRvbXMgb2YgQ0YsIHBhcnRpY3VsYXJseSBpbiBkZW5zZWx5IHBvcHVsYXRlZCByZWdpb25zLCB0aGVyZWJ5IGZ1cnRoZXIgY29tcGxpY2F0aW5nIHRoZSBtYW5hZ2VtZW50IG9mIHRoZSBkaXNlYXNlLiBUaGlzIGVtcGhhc2lzZXMgdGhlIG5lY2Vzc2l0eSBmb3IgZnVydGhlciByZXNlYXJjaCBvbiBDRiB0aGF0IGlzIHNwZWNpZmljYWxseSB0YWlsb3JlZCB0byB0aGUgbmVlZHMgb2YgZGlmZmVyZW50IHJlZ2lvbnMsIGluY2x1ZGluZyBpbXByb3ZlbWVudHMgaW4gZGlhZ25vc3RpYyB0ZWNobmlxdWVzIGFuZCB0aGUgZGV2ZWxvcG1lbnQgb2YgdHJlYXRtZW50cyB0aGF0IGFyZSBtb3JlIGNsb3NlbHkgYWxpZ25lZCB3aXRoIHRoZSBjaGFyYWN0ZXJpc3RpY3Mgb2YgdGhlIHBvcHVsYXRpb25zIGluIHF1ZXN0aW9uLiA8L3A+XSxcclxuICAgIGltcGxlbWVudGF0aW9uOiBbPHA+VGhlIGRhdGEgd2VyZSBpbmNvcnBvcmF0ZWQgYnkgY29uZmlybWluZyB0aGF0IHRoZSBGNTA4ZGVsIG11dGF0aW9uIGlzIG5vdCBvbmx5IHRoZSBtb3N0IGNvbW1vbiBpbiBFdXJvcGUgYnV0IGFsc28gZ2xvYmFsbHksIGluY2x1ZGluZyBpbiBBc2lhLCBoaWdobGlnaHRpbmcgYSBicm9hZGVyIHBlcnNwZWN0aXZlIGFuZCBjb250cmlidXRpbmcgdG8gYSBzaWduaWZpY2FudCBob3Jpem9uIGV4cGFuc2lvbiBpbiB1bmRlcnN0YW5kaW5nIHRoZSBtdXRhdGlvbidzIHdvcmxkd2lkZSBwcmV2YWxlbmNlLiBUaGlzIGZpbmRpbmcgbGVuZHMgc3VwcG9ydCB0byB0aGUgaWRlYSB0aGF0IGV4aXN0aW5nIHRoZXJhcGllcyB0YXJnZXRpbmcgdGhlIEY1MDhkZWwgbXV0YXRpb24gd2lsbCBiZSBlZmZlY3RpdmUgZm9yIG1hbnkgcGF0aWVudHMgd29ybGR3aWRlLCB0aGVyZWJ5IHByb3ZpZGluZyBhIHNvbGlkIGZvdW5kYXRpb24gZm9yIHRyZWF0bWVudC4gQXMgYSBzdGFydGluZyBwb2ludCwgdGhpcyBpcyBwcm9taXNpbmcsIGJ1dCBmdXR1cmUgZWZmb3J0cyB3aWxsIGZvY3VzIG9uIGFkYXB0aW5nIHRoZXJhcGllcyB0byBhZGRyZXNzIG90aGVyLCByYXJlciBtdXRhdGlvbnMgZm91bmQgaW4gc3BlY2lmaWMgcG9wdWxhdGlvbnMuXHJcbiAgICA8L3A+XSxcclxuICAgIHN1bW1hcnk6IFwiVGhlIGNvbnRhY3QgcHJvdmlkZWQgdmFsdWFibGUgaW5zaWdodHMgaW50byAgQ3lzdGljIEZpYnJvc2lzIChDRikgaW4gQXNpYSBhbmQgY29uZmlybWVkIHRoYXQgdGhlIEY1MDhkZWwgbXV0YXRpb24gaXMgdGhlIG1vc3QgY29tbW9uLCBhcyBpdCBpcyBnbG9iYWxseS4gSG93ZXZlciwgdGhlIGdlbmV0aWMgZGl2ZXJzaXR5IG9ic2VydmVkIGluIEFzaWEsIHRvZ2V0aGVyIHdpdGggdGhlIGV4YWNlcmJhdGlvbiBvZiBzeW1wdG9tcyBieSBlbnZpcm9ubWVudGFsIGZhY3RvcnMgc3VjaCBhcyBhaXIgcG9sbHV0aW9uLCBoaWdobGlnaHRzIHRoZSBuZWVkIGZvciBtb3JlIHJlZ2lvbi1zcGVjaWZpYyByZXNlYXJjaC4gRnV0dXJlIGVmZm9ydHMgd2lsbCBmb2N1cyBvbiByZWZpbmluZyB0cmVhdG1lbnRzIGZvciByYXJlciBtdXRhdGlvbnMgYW5kIGltcHJvdmluZyBkaWFnbm9zdGljIGFjY3VyYWN5IGluIEFzaWFuIHBvcHVsYXRpb25zLlwiLFxyXG4gICAgbW9udGhzOiBcIlNlcHRlbWJlclwiLFxyXG4gICAgaW50ZXJ2aWV3Ojw+XHJcbiAgICA8UWFCb3ggcT1cIlNob3VsZCB3ZSBleHBsYWluIG91ciBwcm9qZWN0IGEgbGl0dGxlIGJpdCBpbiB0aGUgYmVnaW5uaW5nP1wiIGE9XCJUaGF0IHdvdWxkIGJlIGdyZWF0LlwiLz5cclxuICAgIDxRYUJveCBxPVwiT2theS4gQXMgSSB3cm90ZSB0byB5b3UgaW4gdGhlIGVtYWlsLCB3ZSBhcmUgcGFydCBvZiB0aGUgQmllbGVmZWxkLUNlQmlUZWMgaXRlbSB0ZWFtIGluIEdlcm1hbnkgdGhpcyB5ZWFyLCBhbmQgd2UgaGF2ZSBhIHByb2plY3QgY2FsbGVkIFByZWN5c2UsIHdoZXJlIHdlIHdhbnQgdG8gZGV2ZWxvcCBhIHBsYXRmb3JtIGZvciBuZXh0LWdlbmVyYXRpb24gcHJpbWUgZWRpdGluZy4gV2l0aCB0aGF0LCB3ZSBhaW0gdG8gdGFja2xlIENGIG11dGF0aW9ucywgc3RhcnRpbmcgd2l0aCB0aGUgRjUwOGRlbCBtdXRhdGlvbi4gVGhlIGNvbXBsZXggc2hvdWxkIGJlIGFkYXB0YWJsZSBmb3IgZGlmZmVyZW50IG11dGF0aW9ucyB3aXRoIG1pbm9yIGNoYW5nZXMuIEVzc2VudGlhbGx5LCB3ZSB3YW50IHRvIG9wZXJhdGUgbGlrZSBDYXMtYmFzZWQgcHJvamVjdHMgdXNpbmcgcHJpbWUgZWRpdGluZyB0b29scyBidXQgbWF5IHRyYW5zaXRpb24gdG8gdXNpbmcgYSBmYW56b3Igbmlja2FzZSBpbiB0aGUgZnV0dXJlLiBDdXJyZW50bHksIHdlIGFyZSB3b3JraW5nIG9uIGEgZGVsaXZlcnkgc3lzdGVtIHV0aWxpemluZyBsaXBpZCBuYW5vcGFydGljbGVzIHRvIHRyYW5zcG9ydCBvdXIgY29tcGxleCBpbnRvIHRoZSBsdW5ncy4gVGhlc2UgbmFub3BhcnRpY2xlcyB3aWxsIGJlIGxvYWRlZCB3aXRoIG1STkEgYW5kIGRlc2lnbmVkIGZvciBpbmhhbGF0aW9uLCBzaW1pbGFyIHRvIGhvdyBhc3RobWEgbWVkaWNhdGlvbnMgYXJlIGRlbGl2ZXJlZC4gT3VyIGdvYWwgaXMgdG8gYWR2YW5jZSBwZXJzb25hbGl6ZWQgbWVkaWNpbmUgYW5kIGltcHJvdmUgdGhlIHN0YW5kYXJkIG9mIGxpdmluZyBmb3IgdGhvc2UgYWZmZWN0ZWQgYnkgdGhlIGRpc2Vhc2UsIGVzcGVjaWFsbHkgc2luY2UgYSBmcmllbmQgb2Ygb25lIG9mIG91ciB0ZWFtIG1lbWJlcnMgaGFzICBDeXN0aWMgRmlicm9zaXMgYW5kIHNoYXJlcyBpbnNpZ2h0cyBvbiB0aGUgY2hhbGxlbmdlcyBmYWNlZCBieSB0aG9zZSB3aXRoIHRoZSBjb25kaXRpb24uXCIgYT1cIlRoYXQncyBhIHZlcnkgbmljZSBzdW1tYXJ5LiBJIGhhdmUgYSBjb3VwbGUgb2YgY2xhcmlmeWluZyBxdWVzdGlvbnMuIEFyZSB5b3UgdW5kZXJncmFkdWF0ZXM/XCIgLz5cclxuICAgIDxRYUJveCBxPVwiTm8sIHdlIGFyZSBvdmVyZ3JhZHVhdGVzIGF0IHRoZSBVbml2ZXJzaXR5IG9mIEJpZWxlZmVsZC5cIiBhPVwiT2gsIGdyZWF0ISBTbywgaG93IGFyZSB5b3Ugb3B0aW1pemluZyBwcmltZSBlZGl0aW5nLCBhbmQgd2hvIGlzIGhlbHBpbmcgeW91IHdpdGggdGhpcyBwcm9jZXNzP1wiIC8+XHJcbiAgICA8UWFCb3ggcT1cIldlIHRyaWVkIHRvIHJlYWNoIG91dCB0byBEci4gTGl1LCBidXQgaGUgaGFzbid0IHJlc3BvbmRlZCB5ZXQuXCIgYT1cIllvdSBzaG91bGQgYWxzbyBjb250YWN0IE1hcmlhbm5lIENhcmxvbiBpbiBMZXV2ZW4sIEJlbGdpdW0uIFRoZXkgZGlkbid0IHdvcmsgb24gRGVsdGEgRjUwOCwgYnV0IE1hdHRpanMgaXMgYSBncmFkdWF0ZSBzdHVkZW50IHRoZXJlIGFuZCBjb3VsZCBiZSBoZWxwZnVsLlwiIC8+XHJcbiAgICA8UWFCb3ggcT1cIldlXHUyMDE5dmUgYWxyZWFkeSBiZWVuIGluIHRvdWNoIHdpdGggTWF0dGlqczsgaGVcdTIwMTlzIGJlZW4gdmVyeSBuaWNlLlwiIGE9XCJQZXJmZWN0ISBZb3UncmUgcmVhY2hpbmcgb3V0IHRvIHRoZSByaWdodCBwZW9wbGUuIEFyZSB5b3UgYXdhcmUgb2YgdGhlIExpdSBsYWIncyBOYXR1cmUgQmlvbWVkaWNhbCBFbmdpbmVlcmluZyBwYXBlciB0aGF0IG9wdGltaXplcyBwcmltZSBlZGl0aW5nP1wiIC8+XHJcbiAgICA8UWFCb3ggcT1cIlllcywgd2UgYXJlIGF3YXJlIG9mIGl0LlwiIGE9XCJHcmVhdCEgSG93IGNhbiBJIGhlbHAgeW91IGZ1cnRoZXI/XCIgLz5cclxuICAgIDxRYUJveCBxPVwiV2UgaGF2ZSBzb21lIHF1ZXN0aW9ucyBhYm91dCAgQ3lzdGljIEZpYnJvc2lzIChDRikgaW4gQXNpYSwgc3BlY2lmaWNhbGx5IGFib3V0IGl0cyBwZXJjZWl2ZWQgcmFyaXR5IGFuZCBpdHMgaW1wYWN0IG9uIGRpYWdub3NpcyBhbmQgcmVzZWFyY2ggZWZmb3J0cy5cIiBhPVwiSSBjYW4gc2hhcmUgc29tZSBpbnNpZ2h0cy4gV2hpbGUgQ0YgaXMgb2Z0ZW4gY29uc2lkZXJlZCByYXJlIGluIEFzaWEsIGl0J3MgZXNzZW50aWFsIHRvIHJlY29nbml6ZSB0aGF0IGl0IGFmZmVjdHMgdmFyaW91cyBwb3B1bGF0aW9ucy4gSW4gbXkgbGFiLCB3ZSBhbmFseXplIENGLWNhdXNpbmcgbXV0YXRpb25zIGFjcm9zcyBkaWZmZXJlbnQgcG9wdWxhdGlvbnMgdXNpbmcgZGF0YSBmcm9tIE5vbWFkLCB3aGljaCBmb2N1c2VzIG9uIGdlbmV0aWMgYW5jZXN0cnkgcmF0aGVyIHRoYW4gc2VsZi1pZGVudGlmaWVkIHJhY2UuIENGIGlzIG1vc3QgcHJldmFsZW50IGluIGluZGl2aWR1YWxzIG9mIEV1cm9wZWFuIG9yaWdpbiwgYnV0IGl0IHJlbWFpbnMgY29tbW9uIGFjcm9zcyBtYW55IHBvcHVsYXRpb25zIHdvcmxkd2lkZSwgcGFydGljdWxhcmx5IGluIFNvdXRoIEFzaWEgYW5kIG90aGVyIHJlZ2lvbnMsIGFsdGhvdWdoIEVhc3QgQXNpYSBoYXMgbG93ZXIgcHJldmFsZW5jZSByYXRlcy5cIiAvPlxyXG4gICAgPFFhQm94IHE9XCJUaGF0XHUyMDE5cyBoZWxwZnVsLiBDYW4geW91IGV4cGxhaW4gaG93IHRoZSBwZXJjZWl2ZWQgcmFyaXR5IG9mIENGIGltcGFjdHMgZGlhZ25vc2lzIGFuZCByZXNlYXJjaCBpbiBBc2lhP1wiIGE9XCJUaGUgcGVyY2VwdGlvbiBvZiBDRiBhcyBhICd3aGl0ZSBwZW9wbGUgZGlzZWFzZScgbGVhZHMgdG8gdW5kZXJkaWFnbm9zaXMgYW5kIGZld2VyIHJlc2VhcmNoIGVmZm9ydHMgaW4gQXNpYW4gcG9wdWxhdGlvbnMuIEZvciBpbnN0YW5jZSwgaW4gSW5kaWEsIHBoeXNpY2lhbnMgYXJlIG1vcmUgZmFtaWxpYXIgd2l0aCBjb25kaXRpb25zIGxpa2Ugc2lja2xlIGNlbGwgZGlzZWFzZSBhbmQgdGhhbGFzc2VtaWEsIGxlYWRpbmcgdG8gbGltaXRlZCBhd2FyZW5lc3Mgb2YgQ0YuIEVhcmx5IGRpYWdub3NpcyBpcyBjaGFsbGVuZ2luZyBkdWUgdG8gdGhlIGxhY2sgb2Ygc2NyZWVuaW5nIHByb2dyYW1zIGZvciBDRiwgYW5kIGN1cnJlbnRseSwgbWFueSByZWdpb25zIGFyZSBvbmx5IGJlZ2lubmluZyB0byBpbXBsZW1lbnQgc3dlYXQgY2hsb3JpZGUgdGVzdGluZy5cIiAvPlxyXG4gICAgPFFhQm94IHE9XCJUaGFuayB5b3UhIFdoYXQgbXV0YXRpb25zIGFyZSBtb3JlIGNvbW1vbiBpbiBBc2lhP1wiIGE9XCJEZWx0YSBGNTA4IGlzIHN0aWxsIHRoZSBtb3N0IGZyZXF1ZW50IHZhcmlhbnQgYWNyb3NzIGRpZmZlcmVudCBwb3B1bGF0aW9ucywgYnV0IGl0cyBmcmVxdWVuY3kgZGVjcmVhc2VzIGluIG5vbi1FdXJvcGVhbiBncm91cHMuIFdoaWxlIHRoZXJlIGFyZSBzZXZlcmFsIG90aGVyIGNvbW1vbiB2YXJpYW50cywgdGhleSBkbyBub3QgcmVzcG9uZCB0byBtb2R1bGF0b3IgdGhlcmFwZXV0aWNzLCB3aGljaCBjb21wbGljYXRlcyB0cmVhdG1lbnQgb3B0aW9ucy4gRm9jdXNpbmcgb24gRGVsdGEgRjUwOCBpcyBzZW5zaWJsZSwgYnV0IHlvdSBtaWdodCBmYWNlIGNoYWxsZW5nZXMgaW4gZmluZGluZyBpbmRpdmlkdWFscyB3aXRoIG90aGVyIHZhcmlhbnRzIGR1ZSB0byB0aGUgbGltaXRlZCBhd2FyZW5lc3MgYW5kIHNjcmVlbmluZyBmb3IgQ0YgaW4gdGhvc2UgcG9wdWxhdGlvbnMuXCIgLz5cclxuICAgIDxRYUJveCBxPVwiT2theS4gQnV0IHlvdSB3b3VsZCBzYXkgdGhhdCB0aGUgb3RoZXIgbXV0YXRpb25zIGFyZSBhIGJpdCB1bmRlci1yZXNlYXJjaGVkLCByaWdodD9cIiBhPVwiVGhleSBhcmUgY29tcGxldGVseSB1bmRlci1yZXNlYXJjaGVkLCByaWdodD8gTGlrZSBJIGhhdmUgbm90IHNlZW4gYW55Ym9keSB3b3JrIG9uIEwyMThYLiBJIGRpZG4ndCBldmVuIGtub3cgTDIxOFggZXhpc3RlZCB1bnRpbCBJIHN0YXJ0ZWQgbG9va2luZyBpbnRvIHRoYXQgZ3JvdXAuIEFuZCBpdCBzZWVtcyBsaWtlIEwyMThYLCBJJ3ZlIG5vdCBzZWVuIGl0IGluIGFueSBvdGhlciBwb3B1bGF0aW9uIHRoYXQgZnJlcXVlbnRseS4gU28gYSBsb3Qgb2YgdGhlc2UgdmFyaWFudHMgc2VlbSB0byBiZSB1bmlxdWUuIEkgZG9uJ3Qga25vdyBpZiB0aGV5J3JlIGNvbXBsZXRlbHkgdW5pcXVlIHRvIFNvdXRoIEFzaWFucyBvciBpZiB5b3UgZ28gdG8gSXJhbiBvciBzb21ldGhpbmcsIHdoZXRoZXIgeW91J3JlIGdvaW5nIHRvIHN0YXJ0IGZpbmRpbmcgdGhlc2UgcGVvcGxlIG9yIHdoZXRoZXIgaWYgeW91IGdvIHRvIFNvdXRoZWFzdCBBc2lhLCB0aGVuIHlvdSdyZSBnb2luZyB0byBzdGFydCBmaW5kaW5nIHNvbWUgb2YgdGhlc2UgcGVvcGxlLCByaWdodD8gU28gd2UgZG9uJ3Qga25vdyB0aGF0LCBidXQgSSB0aGluayBpdCB3aWxsIGJlIHJlYWxseSBoYXJkIGZvciB5b3UgdG8gZmluZCBjZWxscyB3aXRoIHRoZXNlIHZhcmlhbnRzLlwiLz5cclxuICAgIDxRYUJveCBxPVwiV2hhdCBkbyB5b3UgYmVsaWV2ZSwgd2hhdCBzdGVwcyBzaG91bGQgYmUgZG9uZSBpbiB0aGUgc2NpZW50aWZpYyBjb21tdW5pdHkgdG8gZW5zdXJlIGJldHRlciByZXByZXNlbnRhdGlvbiBvZiBBc2lhbiBwb3B1bGF0aW9ucywgb3IgaW4gZ2VuZXJhbCwgbm90IG9ubHkgV2VzdGVybiBwb3B1bGF0aW9ucywgaW4gdGhlIGdlbmV0aWMgc3R1ZGllcyBmb3IgIEN5c3RpYyBGaWJyb3Npcz9cIiBhPVwiQWgsIGl0J3MgYSB2ZXJ5IGdvb2QgcXVlc3Rpb247IGl0J3MgYWxzbyBhIHF1ZXN0aW9uIHRoYXQgZG9lc24ndCBoYXZlIGEgdmVyeSBzdHJhaWdodGZvcndhcmQgYW5zd2VyLCByaWdodD8gSW4gdGhlIHNlbnNlIHRoYXQgb25lLCB5b3Uga25vdywgeW91IGhhdmUgdG8gcmFpc2UgYXdhcmVuZXNzIGFuZCBlbnN1cmUgdGhhdCBwZW9wbGUgYXJlIGdldHRpbmcgZGlhZ25vc2VkLCB0aGF0J3Mgc3RlcCBudW1iZXIgb25lLCByaWdodC4gQSBsb3Qgb2YgdGhlIG51bWJlcnMgdGhleSBzaG93ZWQgeW91IGFyZSBiYXNlZCBvbiBwcmVkaWN0aW9uOyB0aGV5J3JlIG5vdCBiYXNlZCBvbiBhIHJlZ2lzdHJ5IGluIGFueSBjb3VudHJ5IHdpdGggc29tZSBvZiB0aGVzZSBwb3B1bGF0aW9ucywgcmlnaHQuIEluZGlhIGRvZXNuJ3QgaGF2ZSBhIHJlZ2lzdHJ5LCBDaGluYSBkb2Vzbid0IGhhdmUgYSByZWdpc3RyeS4gVGhlcmUgYXJlIGVmZm9ydHMgdG8gbWFrZSBhIHJlZ2lzdHJ5LCBidXQgeW91IGtub3cgaXQncyBhIGxpdHRsZSBoYXJkIHRvIGdldCBzdGFydGVkIHdoZW4geW91IGtub3cgaWYgeW91IGdvIGFuZCBhcmd1ZSB0aGF0IHRoZXJlIGFyZSA2LDAwMCBjaGlsZHJlbiB3aXRoIENGIHRoYXQgYXJlIGJlaW5nIGJvcm4gaW4gYSB5ZWFyIGluIEluZGlhLCBhbmQgdGhlbiB0aGUgcmVzcG9uc2UgdGhhdCBJJ3ZlIHJlY2VpdmVkIGJlZm9yZSBpcyB3ZWxsLCB0aGVyZSBhcmUgYWJvdXQgNjAsMDAwIGtpZHMgZHlpbmcgb2YgZGlhcnJoZWEsIGFuZCB5b3Uga25vdyBzbyB0aGUgcHJpb3JpdHkgZnJvbSBwdWJsaWMgaGVhbHRoIGlzIG9mdGVuIGRpZmZlcmVudC4gSXQncyBzdGFydGluZyB0byBjaGFuZ2UuIFNvIG9uZSBmb2N1cyB3b3VsZCBiZSBkaWFnbm9zaXMgYW5kIHJhaXNpbmcgYXdhcmVuZXNzLCBhbmQgaWYgeW91IGNvbWUgYWNyb3NzIGdyb3VwcyB0aGF0IGFyZSB0cnlpbmcgdG8gaW1wcm92ZSB0aGVpciBhYmlsaXR5IHRvIGRpYWdub3NlIHRoZW4geW91IHRyeSB0byBoZWxwIHRoZW0sIHJpZ2h0LiBXaGF0J3MgeW91ciBvdGhlciBxdWVzdGlvbiBpbiB0ZXJtcyBvZiB0cmVhdG1lbnQgYW5kIHJlc2VhcmNoPyBJIHRoaW5rIGJlaW5nIGF3YXJlIG9mIGl0IGlmIHlvdSBkbyBlbmQgdXAgZmluZGluZyBzYW1wbGVzIHRoYXQgaGF2ZSBzb21lIG9mIHRoZXNlIHVuaXF1ZSB2YXJpYW50cy4gUmlnaHQgdGhlbiwgdHJ5aW5nIHRvIGZvcm0gYSBzdHJhdGVneSBhcm91bmQgaXQgaXMgbm90IGJhZDsgSSd2ZSBzZWVuIHBlb3BsZSBpZGVudGlmeSB2YXJpYW50cyBvZiBDRiB0aGF0IGFyZSB1bmlxdWUgdG8gZGlmZmVyZW50IHBvcHVsYXRpb25zLiBJIHRoaW5rIGV2ZW4gTWFyaWFubmUgQ2FybG9uJ3MgZ3JvdXAgcGlja2VkIHVwIHZhcmlhbnRzIHRoYXQgYXJlIHVuaXF1ZSB0byBCZWxnaXVtIGFuZCB0aGVuIHRyaWVkIHByaW1lIGVkaXRpbmcgb24gdGhhdCByaWdodCwgc28gdGhvc2Ugc29ydCBvZiBzdHJhdGVnaWVzIGhlbHAgcXVpdGUgYSBiaXQsIHJpZ2h0PyBBbmQgdGhpcyBpcyBwYXJ0aWFsbHkgdGhlIHJlYXNvbiB5b3Uga25vdyBJIGNvbnRpbnVlIHRvIGZvY3VzIG9uIG11dGF0aW9uLWFnbm9zdGljIHN0cmF0ZWdpZXM7IEkndmUgbm90IHJlYWxseSBicmFuY2hlZCBvdXQgaW50byB0aGUgUHJpbWUgRWRpdGluZyB3b3JsZCBvciB0aGUgQmFzZSBFZGl0aW5nIHdvcmxkIHByaW1hcmlseSBiZWNhdXNlIHRoaXMgc2VlbXMgdG8gYmUgYSBwcmV0dHkgY2hhbGxlbmdpbmcgaXNzdWUsIGJ1dCB0aGF0IHNhaWQsIHlvdSB3YW50IGFzIG1hbnkgc2hvdHMgYXQgZ29hbCBhcyBwb3NzaWJsZS4gU28sIHlvdSBrbm93LCBpZiB5b3UncmUgYWJsZSB0byB1c2UgcHJpbWUgZWRpdGluZyB0byBmaXggRGVsdGEgNTA4LCB0aGF0IHN0aWxsIGhlbHBzIHRoZSBtb3N0IG51bWJlciBvZiBwZW9wbGUgd2l0aCBDRi4gQW5kIHRoZW4gbWF5YmUsIHlvdSBrbm93LCB5b3UgY291bGQgdXNlIHRoYXQgcGxhdGZvcm0gdGhhdCdzIHJlYWxseSB3ZWxsIHZhbGlkYXRlZCBhdCB0aGF0IHBvaW50LCB0aGVuIGdvIHN0YXJ0IHRhcmdldGluZyBpbmRpdmlkdWFsIHZhcmlhbnRzLiBUaGUgb3RoZXIgaWRlYSB3aXRoIHByaW1lIGVkaXRpbmcgaXMgdGhhdCB0aGVyZSdzIGhvcGUgdGhhdCB5b3UgY2FuIHByb2JhYmx5IGF0IGxlYXN0IHRyeSB0byByZXBsYWNlIG9uZSBleG9uIGF0IGEgdGltZS4gQW5kIHRoYXQgc29ydCBvZiBtYWtlcyB0aGluZ3MgYSBsaXR0bGUgYml0IG1vcmUgbWFuYWdlYWJsZSwgcmlnaHQ/IFNvIGlmIHlvdSwgeW91IGtub3csIGl0J3MgYSBsaXR0bGUgYml0IG1vcmUsIGxpa2UgaWYgeW91IGhhdmUgdG8gdGFyZ2V0IGV2ZXJ5IHNpbmdsZSB2YXJpYW50LCB0aGVuIHlvdSdyZSB0aGlua2luZyBhYm91dCBodW5kcmVkcyBvZiBkaWZmZXJlbnQgbWVkaWNhbCBwcm9kdWN0cy4gQnV0IGlmIHlvdSdyZSB0aGlua2luZyBvZiByZXBsYWNpbmcgZXZlcnkgZXhvbiwgdGhhdCdzIDI3LCB0aGF0J3MgYSBjb3VudGFibGUgbnVtYmVyLiBBbmQgSSB3b3VsZCBhcmd1ZSB0aGF0IHlvdSBkb24ndCBldmVuIGhhdmUgdG8gZG8gYWxsIDI3LiBZb3Ugc3RhcnQgd2l0aCB0aGUgaG90c3BvdHMsIHJpZ2h0PyBZb3Ugc3RhcnQgd2l0aCBleG9uIDExLCB5b3Ugc3RhcnQgd2l0aCBleG9uIDEyLiBCdXQgdGhlbiBhcyBwYXJ0IG9mIHRoZSBjb252ZXJzYXRpb24sIEkgdGhpbmsgd2Ugc2hvdWxkIGp1c3QgYmUgdGhpbmtpbmcgYWJvdXQgZXhvbnMgdGhhdCBtaWdodCBiZSBob3RzcG90cyBmb3IgdmFyaWFudHMgaW4gb3RoZXIgcG9wdWxhdGlvbnMgYW5kIGF0IGxlYXN0LCB5b3Uga25vdywga2VlcGluZyB0aGVtIHNvbWV3aGVyZSBpbiB0aGUgcGFja2luZyBvcmRlciBzbyB0aGF0IGFzIHlvdSBnbyB0aHJvdWdoIHRoZSBtb3N0IGZyZXF1ZW50IHZhcmlhbnRzLCByaWdodD8gQW5kIHlvdSdyZSBzdGFydGluZyB0byBkZXZlbG9wIHN0cmF0ZWdpZXMgZm9yIHRoZSBtb3N0IGZyZXF1ZW50IHZhcmlhbnRzLiBUaG9zZSBhcmUgb24gdGhlIGxpc3Qgc28gdGhhdCB3ZSBldmVudHVhbGx5IGdldCB0byB0aGVtLlwiLz5cclxuICAgIDxRYUJveCBxPVwiWWVhaC4gT2theS4gQW5kIHdoYXQgZG8geW91IHRoaW5rPyBBcmUgdGhlcmUgYW55IGhlYWx0aGNhcmUgY2hhbGxlbmdlcyBtYW5hZ2luZyAgQ3lzdGljIEZpYnJvc2lzIGluIEFzaWFuIGNvdW50cmllcz9cIiBhPVwiT2gsIGFic29sdXRlbHkuIFJpZ2h0LiBJIHRoaW5rLCB5b3Uga25vdywgaWYgeW91J3JlIGluIGEgaGlnaC1pbmNvbWUgY291bnRyeSBsaWtlIEphcGFuLCBJIHRoaW5rLCB5b3Uga25vdywgdGhlIGJpZ2dlc3QgY2hhbGxlbmdlIGlzIGF3YXJlbmVzcyBhbmQgZ2V0dGluZyBkaWFnbm9zZWQuIElmIHlvdSdyZSBpbiBsb3ctIGFuZCBtaWRkbGUtaW5jb21lIGNvdW50cmllcywgcmlnaHQsIHRoZW4gdGhlIGNoYWxsZW5nZSBiZWNvbWVzIGFjY2VzcyB0byBkcnVncy4gU28gbW9kdWxhdG9ycyBhcmUgbm90IGF2YWlsYWJsZSBpbiBtb3N0IG9mIEFzaWEsIG9yIGF0IGxlYXN0IGluIHRoZSBsb3dlciBhbmQgbWlkZGxlLWluY29tZSBjb3VudHJpZXMgaW4gQXNpYSwgdGhhdCdzIG5vdCBhdmFpbGFibGUsIGxpa2UsIGl0J3Mgbm90IGF2YWlsYWJsZSBmb3Igc2FsZS4gUHJpbWFyaWx5LCBwYXJ0bHkgYmVjYXVzZSB0aGV5IHRoaW5rIHRoYXQgdGhvc2UgcGVvcGxlLCBsaWtlIHBlb3BsZSBhdCBDRiwgZG9uJ3QgZXhpc3QgaW4gZW5vdWdoIG51bWJlcnMgaW4gdGhvc2UgY291bnRyaWVzLiBBbmQgcGFydGx5IGJlY2F1c2UgdGhlbiBpdCBjcmVhdGVzIHByb2JsZW1zIGluIHRlcm1zIG9mIG1vbmV0YXJ5LCBsaWtlIGZhY3RvcnMsIHJpZ2h0LiBJbiB0ZXJtcyBvZiBob3cgbXVjaCB0aGV5IGNoYXJnZSBmb3IgdGhlIG1vZHVsYXRvcnMuIFJpZ2h0LiBTbyB0aG9zZSBkb24ndCBleGlzdC4gSSBkb24ndCBrbm93LCBsaWtlIHRoZXkgaGF2ZSBhY2Nlc3MgdG8gcGFuY3JlYXRpYyBlbnp5bWVzIGFuZCB0aGluZ3MgbGlrZSB0aGF0LCBidXQsIHlvdSBrbm93LCByZWd1bGFyIGFjY2VzcyB0byByZWd1bGFyIGNhcmUgaXMgc3RpbGwgYSBjaGFsbGVuZ2UuIFRoZSBiYXNlIG9mIHBoeXNpY2lhbnMgdGhhdCBhcmUgZmFtaWx5IHdpdGggdHJlYXRpbmcgQ0YgaXMgb25seSBncm93aW5nIGluIHNvbWUgb2YgdGhvc2UgcGxhY2VzIGF0IGxlYXN0IGZyb20gbXkgcGVyc29uYWwgZXhwZXJpZW5jZSBidXQgaXRcdTIwMTlzIG5vdCBieSB3aGVyZSB3ZSBhcmUuIFRoZSBjaGlsZHJlbiB0aGVyZSBhcmUgc3RpbGwgbW9zdGx5IHBhc3NpbmcgYXdheSB3aGVuIHRoZXkgYXJlIGluIHRoZWlyIHRlZW5hZ2UgeWVhcnMgb3IgZWFybHkgdHdlbnRpZXMuIFRoZSBzb3J0IG9mIGxpZmUgc3BhbiBhbmQgbGlmZSBleHBlY3RhbmN5IGlzIG5vIHdoZXJlIGNsb3NlIHRvIHdoYXQgeW91IHdvdWxkIHNlZSBpbiBoaWdoLWluY29tZSBjb3VudHJpZXMuIFNvLCBJIHRoaW5rIHRoYXQgaXMgdGhlIGJpZ2dlc3QgY2hhbGxlbmdlLCBhY2Nlc3MgdG8gcmVzb3VyY2VzIGJvdGgsIHB1YmxpY2x5IGFuZCBhbHNvIGZyb20gYSBwcml2YXRlIHBvaW50LlwiLz5cclxuICAgIDxRYUJveCBxPVwiT2theS4gQW5kIGRvIHlvdSB0aGluayB0aGF0IHRoZSBlbnZpcm9ubWVudGFsIG9yIGxpa2UgcG9sbHV0aW9uIGlzIGRvaW5nLCBsaWtlLCBJIGRvbid0IGtub3cgaG93IHRvIHNheSBpdCBjb3JyZWN0bHkuIFNvIHRoYXQgdGhlcmUgYXJlIGxpa2UgcmVzcGlyYXRvcnkgY2hhbGxlbmdlcyBiZWNhdXNlLCB5ZWFoLCByaWdodC5cIiBhPVwiQWJzb2x1dGVseSEgUmlnaHQuIEl0J3MsIHlvdSBrbm93LCB5b3VyIGV4cG9zdXJlIHRvIHBhdGhvZ2VucyBpcyBoaWdoZXIuIFlvdXIgZXhwb3N1cmUgdG8gcG9sbHV0aW9uIGlzIHNpZ25pZmljYW50bHkgaGlnaGVyIGluIGEgbG90IG9mIHRoZXNlIGNvdW50cmllcywgcmlnaHQ/IEV2ZW4gQ2hpbmEsIHdoaWNoIGlzLCB5b3Uga25vdywgbXVjaCBiZXR0ZXIgb2ZmIHRoYW4gYSBjb3VudHJ5IGxpa2UgSW5kaWEgc3RpbGwgaGFzIGEgbG90IG9mIHBvbGx1dGlvbiwgcmlnaHQ/IEFuZCBzbywgb3IgSSd2ZSBuZXZlciBiZWVuIHRvIENoaW5hLCBidXQgYXQgbGVhc3QgdGhhdCdzIHdoYXQgSSByZWFkLCByaWdodD8gQnV0IEluZGlhLCBJIGdyZXcgdXAgdGhlcmUgYW5kIEkgY2FuIGZpcnN0aGFuZCB0ZWxsIHlvdSB0aGF0IHRoZXJlJ3MgYSBsb3Qgb2YgcG9sbHV0aW9uIHRoZXJlLCByaWdodD8gQW5kIHRoYXQgSSdtIHN1cmUgaXQgYWZmZWN0cyBpdCBiZWNhdXNlIGl0J3MgYmVlbiBkb2N1bWVudGVkIHRvIGFmZmVjdCBwZW9wbGUsIGp1c3QgcGVvcGxlIHdpdGhvdXQgQ0YsIHJpZ2h0PyBPbiBhbiBhdmVyYWdlLCBpdCdzIHN1cHBvc2VkIHRvIGxpa2UsIHRoZSByZXBvcnRzIHRoYXQgSSd2ZSBzZWVuIGFyZSBsaWtlLCBpdCB0YWtlcyBhIGZldyB5ZWFycyBvZmYgb2YgbGlmZSBleHBlY3RhbmN5IGZvciBldmVuIHBlb3BsZSB0aGF0IGhhdmUgbm90IGJlZW4gZGlhZ25vc2VkIHdpdGggYW55dGhpbmcgZWxzZSwgcmlnaHQ/IFNvIEknbSBzdXJlIGlmIHRoZXJlJ3MgYSBwZXJzb24gd2l0aCBDRiwgdGhlbiB0aGF0J3MgZ29pbmcgdG8gYWZmZWN0IHRoZW0gZXZlbiBtb3JlIG5lZ2F0aXZlbHkgaW4gcGxhY2VzIGxpa2UgSW5kaWEuIEFuZCB0aGVuIEkgdGhpbmsgdGhhdCB0aGUgZXhwb3N1cmUgdG8gcGF0aG9nZW5zIG1pZ2h0IGJlIHNsaWdodCwgaXQgbWlnaHQgYmUgaGlnaGVyIGFuZCB0aGUgbG93ZXIgZG93biBpbiB0aGUgZWNvbm9taWMgc2NhbGUgeW91IGdvLCB0aGUgbW9yZSwgdGhlIGV4cG9zdXJlIHRvIHBhdGhvZ2VucyBhcmUgZ29pbmcgdG8gaGF2ZSwgcmlnaHQ/IEkgdGhpbmsgdGhlIHRoaXJkIGZhY3RvciB3b3VsZCBhbHNvIG1pZ2h0IGJlIG51dHJpdGlvbiwgcmlnaHQ/IExpa2UsIHNvIGlmIHlvdSBoYXZlIENGLCB5b3UsIHlvdSBrbm93LCBoZXJlLCBvbmUgd2F5IHRoZXkgd2VyZSBtYW5hZ2luZyBpdCB3YXMgdGhyb3VnaCBoaWdoIGZhdCBjYWxvcmllIHJpY2ggZGlldCBhbmQgYWNjZXNzIHRvIHRob3NlIHNvcnQgb2YgaGlnaCBmYXQgY2Fsb3JpZSByaWNoIGRpZXRzIG1heSBub3QgYmUgdGhhdCBwcmV2YWxlbnQgaW4gc29tZSBvZiB0aGVzZSBvdGhlciBwbGFjZXMuIEFuZCBzbyB0aGF0IG1pZ2h0IGJlY29tZSBhIGZhY3Rvci5cIi8+XHJcbiAgICA8UWFCb3ggcT1cIk9rYXkuIEFuZCB0aGVuIG9uZSBsYXN0IHF1ZXN0aW9uLiBTbyBpdCdzIG1vcmUgYSBiaXQgYWJvdXQgeW91IGFuZCB5b3VyIHJlc2VhcmNoLiBTbyB3aGF0IGRyZXcgeW91ciBhdHRlbnRpb24gdG8gdGhlIGlzc3VlIG9mIENGIGluIEFzaWE/IFNvIHdoeSBkaWQgeW91IHN0YXJ0IHJlc2VhcmNoaW5nIHRoaXMgdG9waWM/XCIgYT1cIk9oLCBzbyB0aGF0IHdhcyBhIHZlcnkgb2theS4gU28gdGhlIHdheSBpdCBoYXBwZW5lZCB3YXMgSSB3YXMgYXQgYSBjb25mZXJlbmNlIGFuZCBJIHdhcyBhIHBvc3Rkb2MgYXQgU3RhbmZvcmQgcHJldmlvdXNseSwgYXMgeW91IGtub3cuIFNvIEkgd2FzIGF0IGEgY29uZmVyZW5jZSBhbmQgSSB3YXMsIHdlIHdlcmUganVzdCwgSSB0aGluayBoYWQgYSBzb3J0IG9mIGEsIHlvdSBrbm93LCBhIGRpbm5lciBmb3IgZXZlcnlib2R5IGZyb20gb3VyIGluc3RpdHV0aW9uLiBBbmQgSSB3YXMgY2hhdHRpbmcgd2l0aCB0aGUgbnVyc2UgaW4gdGhlIHRhYmxlIGFuZCBzaXR0aW5nIGluIHRoZSB0YWJsZSBhbmQgc28gdGhlIFNhbiBGcmFuY2lzY28gYXJlYSBoYXMgYSBsb3Qgb2YgcGVvcGxlIGZyb20gQXNpYS4gQW5kIHNvIHRoZSBudXJzZSBwYXJ0aWN1bGFybHkgc2FpZCB0aGF0IHRoZXkgaGFkIGEgbG90IG9mIGNoaWxkcmVuIHdpdGggQ0Ygd2hvIGhhcHBlbmVkIHRvIG9yaWdpbmF0ZSBpbiBJbmRpYSwgd2hpY2ggcmVhbGx5IHN1cnByaXNlZCBtZSBiZWNhdXNlIHRoYXQncyBub3QgYSBkaXNlYXNlIHRoYXQgSSdkIGhlYXJkIGdyb3dpbmcgdXAgYXMgYmVpbmcgc29tZSwgYSBjb21tb24gZ2VuZXRpYyBkaXNlYXNlIHRoZXJlLiBSaWdodC4gQW5kIHNvIHRoYXQga2luZCBvZiBkcmV3IG15IGF0dGVudGlvbi4gQW5kIHRoZW4gaW4gc3Vic2VxdWVudCBjb252ZXJzYXRpb25zLCB3aGVuIEkgc3Bva2Ugd2l0aCBwaHlzaWNpYW5zIHdobyBhcmUgcHJhY3RpY2luZyBpbiBJbmRpYSwgbm9ib2R5IHNhaWQgdGhhdCB0aGV5IGhhZG4ndCBzZWVuIHBlb3BsZSB3aXRoIENGLCByaWdodD8gV2hlbmV2ZXIgSSBoYWQgdGhlIGNvbnZlcnNhdGlvbiwgcGVvcGxlIHdvdWxkIGJlIGxpa2UsIG9oIHllYWgsIEkndmUgc2VlbiBhIHBhdGllbnQgd2l0aCBDRiBvciBJIGtub3cgb2Ygc29tZWJvZHkgdGhhdCBoYXMgYSBjaGlsZCB3aXRoIENGLCByaWdodD8gV2hpY2ggd2FzIHN1cnByaXNpbmcuIEFuZCB0aGVuIHdoZW4gSSB3ZW50IHRvIEluZGlhLCBJIHdlbnQgdG8gYSBob3NwaXRhbCBpbiBteSBob21ldG93biBhbmQgSSB3YXMgdGFsa2luZyB0byB0aGUgcHVsbW9ub2xvZ2lzdCB0aGVyZS4gQW5kIGhlIHNhaWQgaGUgaGFkIDMwIG9yIDQwIHBhdGllbnRzIHdpdGggQ0YgaW4gdGhhdCwganVzdCB0aGF0IGhvc3BpdGFsLiBBbmQgdGhhdCdzLCB5b3Uga25vdywgaXQncyBub3QgZXZlbiwgeW91IGtub3csIGl0J3MgcHJvYmFibHkgb25lIG9mIHRoZSBiaWdnZXIgY2l0aWVzIGluIEluZGlhLCBidXQgSSB3b3VsZG4ndCBldmVuIGtub3cgaWYgaXQncyBpbiB0aGUgdG9wIDEwIGJpZ2dlc3QgY2l0aWVzIGluIEluZGlhLiBBbmQgdGhpcyBpcyBub3QgZXZlbiB0aGUgYmlnZ2VzdCBjZW50ZXIgaW4gdGhhdCBjaXR5IG5lY2Vzc2FyaWx5LiBSaWdodC4gU28gSSB3YXMganVzdCByZWFsbHkgc3VycHJpc2VkLiBBbmQgaGUgc2FpZCBoZSBkaWRuJ3QgaGF2ZSB0byByZWFsbHkgcHV0IGluIGFueSBlZmZvcnQgdG8gZ28gc2VlayBvdXQgYW55IHBlb3BsZSB3aXRoIENGLiBUaGlzIHdhcyBqdXN0IGluIHRoZSBwZW9wbGUgdGhhdCB3YWxrZWQgaW50byB0aGF0IGhvc3BpdGFsIHRoYXQgZ290IGRpYWdub3NlZCB3aXRoIENGLCByaWdodD8gU28gdGhhdCBraW5kIG9mIHNvbGlkaWZpZWQgdGhlIHBlcmNlcHRpb24gdGhhdCBwZXJoYXBzIGl0IHdhcyB1bmRlcmRpYWdub3NlZC4gQW5kIHRoZW4gdGhlIHJlYXNvbiBpdCBoYXBwZW5lZCB3YXMgYmVjYXVzZSB0aGUgcGFuZGVtaWMgc29ydCBvZiBmb3JjZWQgbW9zdCBvZiB1cyBvdXQgb2YgdGhlIGxhYi4gQW5kIHNvIHRoaXMgZW5kZWQgdXAgYmVpbmcgc29tZXRoaW5nIHlvdSBjYW4gYWN0dWFsbHkgd29yayBvbiB3aXRob3V0IGdvaW5nIHRvIGxhYi5cIi8+XHJcbiAgICA8UWFCb3ggcT1cIlllYWgsIHNvdW5kcyByZWFsbHkgaW50ZXJlc3RpbmcgdGhlIHdheSB5b3UgZ290IHRoZXJlLiBhdCB0aGUgYmVnaW5uaW5nLCB5b3Ugc2FpZCB5b3UgY291bGQgdGVsbCB1cyBzb21ldGhpbmcsIHdoYXQgY2FtZSB0byB5b3UgaW4gbWluZCB3aGVuIHlvdSBoZWFyZCBhYm91dCBQcm9qZWN0IEZpcnN0LCBhbmQgeW91IGFscmVhZHkgcHJlcGFyZWQgc29tZSBzbGlkZXMuIFNvIEkganVzdCB3YW50IHRvIGFzayBpZiB5b3UgbWF5YmUgaGF2ZSBzb21ldGhpbmcgbW9yZSB0byB0ZWxsIHVzIHRoYXQgeW91IGhhdmVuJ3QgdGhvdWdodCBhYm91dCB5ZXQsIGJlY2F1c2UgdGhlIGludGVydmlldyB1bnRpbCBub3cgaXMgaGlnaGx5IGludGVyZXN0aW5nIGFuZCBJIHRoaW5rIHdlIGdvdCBhIGxvdCBvZiBuZXcgaW5mb3JtYXRpb24gdW50aWwgbm93LiBTbyBtYXliZSB5b3UgaGF2ZSBzb21ldGhpbmcuIE1heWJlIHlvdSBoYXZlIG1vcmUgaW50ZXJlc3RpbmcgaW5mb3JtYXRpb24gZm9yIHVzLlwiIGE9XCJJIHRoaW5rIHlvdSBndXlzIGNvdmVyZWQgYSBsb3Qgb2Ygd2hhdCBJIGhhZCBpbiBtaW5kLCByaWdodD8gSW4gdGVybXMgb2YsIEkgdGhpbmsgaWYgSSB3ZXJlIHRvIHN0YXJ0IHdpdGggcHJpbWUgZWRpdGluZyBhbmQgRGVsdGEgNTA4LCB0aGlzIGlzIGV4YWN0bHkgdGhlIGFyZ3VtZW50IEkgd291bGQgaGF2ZSBtYWRlLiBJIHdvdWxkIGhhdmUgdGFsa2VkIHRvIGFsbCBvZiB0aGUgZXhhY3QgcGVvcGxlIHRoYXQgeW91IGhhdmUgYWxyZWFkeSBzcG9rZW4gd2l0aCwgcmlnaHQ/IFNvIEkgdGhpbmsgdGhhdCBJIGRvbid0IGhhdmUgdG9vIG11Y2ggdG8gYWRkIHRoZXJlLiBUaGUgb25seSB0aGluZyB5b3UgY291bGQgZG8gaXMgaWYgeW91IGFyZSBsb29raW5nIGF0IHZhcmlhbnRzLCByaWdodD8gTWF5YmUgSSB3b3VsZCB0cnkgdG8gY29tZSB1cCB3aXRoIGEgcGxhbiBmb3Igd2hhdCB2YXJpYW50cyB5b3UgbWlnaHQgZ28gYWZ0ZXIsIGFmdGVyIERlbHRhIDUwOCwgcmlnaHQ/IEFuZCB0aGF0IGNvdWxkIGJlY29tZSBwYXJ0IG9mIHlvdXIgZnV0dXJlIHJlc2VhcmNoIG9yIHNvbWV0aGluZyBsaWtlIHRoYXQuIE9yIGlmIHlvdSBjYW4sIEkgZ3Vlc3MgdGhlIG9uZSBxdWVzdGlvbiBJIGhhZCBmb3IgeW91IGlzLCBzbyB0aGUgY29ycmVjdGlvbiBvZiBEZWx0YSA1MDggaXMgc29ydCBvZiBwdWJsaXNoZWQsIHJpZ2h0PyBQZW9wbGUgaGF2ZSByZXBvcnRlZCB1c2luZyBsaXBpZCBuYW5vcGFydGljbGVzLCBhdCBsZWFzdCB0byBkZWxpdmVyIGJhc2UgZWRpdGluZyByZWFnZW50cywgcmlnaHQ/IFNvIGhvdyBhcmUgeW91IHRoaW5raW5nIGFib3V0LCBsaWtlIHdoZW4geW91IHBpdGNoIHRoZSBpbm5vdmF0aW9uIGluIHlvdXIgcHJvamVjdCwgaG93IGFyZSB5b3UgdGhpbmtpbmcgYWJvdXQgcGl0Y2hpbmcgeW91ciBpbm5vdmF0aW9uPyBcIi8+XHJcbiAgICA8UWFCb3ggcT1cIk9rYXkuIFNvIEkgdGhpbmssIG91ciBpZGVhIHdhcyB0aGF0IHdlIHdhbnQgdG8gZG8gbGlrZSB0aGUsIHRoZSBwcmltZSBlZGl0b3IgaXMgbW9yZSBlZmZpY2llbnQuIE91ciBpZGVhIGlzIHRvIHVzZSBhIHNtYWxsZXIgcmV2ZXJzZSB0cmFuc2NyaXB0IGNhc2UgYW5kIG1heWJlIHdoZW4gd2Ugd2lsbCB3aGVuIHRoZSB0aW1lIGlzIGxldHRpbmcgdXMgZG8gaXQsIG1heWJlIG5vdCwgd2UgZG9uJ3Qga25vdyBpZiB3ZSB3aWxsIGdldCBpbiB0aW1lIHRoZXJlIGFuZCBldmVyeXRoaW5nIHdpbGwgYmUgcmVhZHkuIEJ1dCBpbiB0aGUgTGl1IHBhcGVyLCBJIHRoaW5rIHdhcyBzb21ldGhpbmcgYWJvdXQgdGhlIExhIG1vdGl2ZSBhbmQgc29tZSBvdGhlciBzdHVmZiB0aGF0IHdlIHdhbnQgdG8gYWRkIHRvIHRoZSBwcmltZSBlZGl0b3Igc28gdGhhdCBpdCdzIGV2ZW4gbW9yZSBlZmZpY2llbnQuIEFuZCBldmVuIHRoZW4gdGhlIGlkZWEgb2YgdGhlIExOUCB0byBzcHJheSBkcnkgYmVjYXVzZSB3ZSB0aG91Z2h0IHRoZW4gd2hlbiB0aGVyZSBpcyBub3QgdGhlIHRoYXQgaXQgaGFzIHRvIGJlIGNvb2wsIGxpa2Ugb3RoZXIgbWVkaWNhdGlvbiwgaXQncyBlYXNpZXIgdG8gYnJpbmcgaXQgbGlrZSB0byBBc2lhIG9yIG90aGVyIHBsYWNlcyBiZWNhdXNlIHRoZXkgY2FuIGp1c3QgZ2V0IHRoZSBpbmhhbGF0b3IuIFwiIGE9XCJSaWdodC4gU28gdGhlIG9uZSBxdWVzdGlvbiBJIGhhZCBmb3IgeW91IG9uIHRoYXQgaXMsIGhhdmUgeW91IGxvb2tlZCBhdCBEYW5pZWwgU2llZ3dhcnRzIHdvcmsgb24gTE5QPyAgXCIvPlxyXG4gICAgPFFhQm94IHE9XCJObyxub3QgeWV0LlwiIGE9XCJCZWNhdXNlIHRoZXkgaGFkIGEgcGFwZXIgaW4gc2NpZW5jZSB3aGVyZSB0aGV5IGRpZCBpbnRyYXZlbm91cyBkZWxpdmVyeSBvZiBsaXBpZCBuYW5vcGFydGljbGVzIGFuZCB0aGV5LCB0aGV5IGRlbGl2ZXJlZCBhIGJhc2UgZWRpdG9yLiBTbyB3aGVuIHlvdSBwcmVzZW50IHRoaXMsIHRoaXMgbWlnaHQgY29tZSB1cC4gU28sIHlvdSBrbm93LCBzbyBJJ20gbm90IHNheWluZyB5b3Ugc2hvdWxkIGNoYW5nZSB5b3VyIHN0cmF0ZWd5LCBidXQsIHlvdSBrbm93LCBpZiB5b3UncmUgdHJ5aW5nIHRvIGRvIGEgbG90IG9mIHdvcmsgb24gbGlwaWQgbmFub3BhcnRpY2xlcywgeW91J3JlIGdvaW5nIHRvIGhhdmUgdG8gZG8gYSBsb3Qgb2Ygd29yayBvbiBTbyB5b3Ugd2FudCB0byBoYXZlIHRob3VnaHQgYWJvdXQgYSByZXNwb25zZS4gQW5kIGl0J3MsIGl0J3MgYSByZWFsbHkgaW50ZXJlc3Rpbmcgc3RyYXRlZ3kuIFVtLCB0cnlpbmcgdG8gc2VlIGlmIEkgY2FuIGZpbmQgaXQuIFllYWguIEhlcmUuIEl0J3MgYSByZWFsbHkgaW50ZXJlc3Rpbmcgc29ydCBvZiBuYW5vcGFydGljbGUgc3RyYXRlZ3kgdGhhdCB0aGV5IGhhdmUgcHJlc2VudGVkLiBVaCwgdGhlIG5pY2UgdGhpbmcgaXMgaXQgaXMgYW4gSVYgZGVsaXZlcnksIHdoaWNoIGdldHMgeW91IHRvIGJhc2FsIGNlbGxzIGFuZCB0aGV5IHdlcmUgYWJsZSB0byBnZXQgYWJvdXQgMjAlIGNvcnJlY3Rpb24sIHJpZ2h0PyBTbyB5b3UgY291bGQgYWxtb3N0IHRoaW5rIG9mIGl0IGFzIGFuIGFsdGVybmF0aXZlIHN0cmF0ZWd5LiBTbyBpZiwgeW91IGtub3csIGlmIHlvdSBnZXQgdGhlIHB1c2hiYWNrIG9yIEkgZG9uJ3Qga25vdyBob3cgeW91IGhhdmUgdG8gd3JpdGUgdG8geW91ciBwcm9wb3NhbCwgYnV0IGlmIHRoZSwgdGhlLCB0aGUgc3ByYXkgZHJ5aW5nIG9yIHRoZSBuZWJ1bGl6YXRpb24gcHJvY2VzcyBpcyBub3QgZ29pbmcgd2VsbCBmb3IgeW91LCB0aGlzIG1pZ2h0IGJlIHNvbWV0aGluZyB0aGF0IHlvdSBjb3VsZCBwcm9wb3NlIGFzIGEgYmFja3VwIGJlY2F1c2UgaGVyZSB0aGV5J3ZlIHNob3duIHRoYXQgeW91IGNhbiBkZWxpdmVyIGxpcGlkIG5hbm9wYXJ0aWNsZXMgaW50cmF2ZW5vdXNseSBhbmQgdGhleSBnZXQgdG8gdGhlIGJhc2FsIGNlbGwgcG9wdWxhdGlvbi4gT2theS4gQW5kIHRoZXkgZ2V0IHRvLCB5ZWFoLiBTbyB0aGF0IG1pZ2h0IGJlIHRoZSBvbmx5IG90aGVyIGRpcmVjdGlvbiBJIHdvdWxkIHBvaW50IHRvIGFzIHlvdSdyZSB0aGlua2luZyBhYm91dCB5b3VyIGRlbGl2ZXJ5IHN0cmF0ZWd5LiBSaWdodC4gVWgsIHRoZSBvdGhlciBpbm5vdmF0aW9uIGNvdWxkIGJlIHRoYXQgaWYgeW91IGNhbiBldmVuIG9wdGltaXplIHlvdXIgcHJpbWUgZWRpdGluZyB0byBnbyBhIGxpdHRsZSBiaXQgYmV5b25kIGp1c3QgRGVsdGEsIGlmIEkgd2FpdCwgaWYgeW91IGNhbiBzaG93IHRoYXQgeW91IGV2ZW4gcmVwbGFjZSB0aGUgd2hvbGUgRXh4b24sIHlvdSBtaWdodCBoYXZlIHNvbWV0aGluZyB0aGF0IGlzIGEgbGl0dGxlIGJpdCBtb3JlIHVuaXF1ZSB0aGFuIHdoYXQncyBvdXQgdGhlcmUuIEFuZCB0aGVuIHlvdSBkb24ndCBoYXZlIHRvIGV2ZW4gd29ycnkgYWJvdXQgZGVsaXZlcnkgbmVjZXNzYXJpbHkuIFwiLz4gXHJcbiAgICA8UWFCb3ggcT1cIk9rYXkuIFRoYW5rIHlvdSBzbyBtdWNoLiBXZSB3aWxsIGxvb2sgYXQgdGhlIHBhcGVyIGFuZCB3ZSdsbCBjaGVjayBpdCBvdXQuIEFsbCByaWdodC4gT2theS4gVGhlbiwgeWVhaC4gVGhhbmsgeW91IHZlcnkgbXVjaCBmb3IgdGhlIGludGVydmlldy4gXCIgYT1cIlllYWgsIHRoYXQncyBwZXJmZWN0bHkgZmluZS4gR29vZCBsdWNrIHdpdGggeW91ciBwcm9qZWN0LiBJdCdzIGEgcmVhbGx5IGludGVyZXN0aW5nIHByb2plY3QuXCIvPiBcclxuICAgIDwvPixcclxuICAgIHBpY3R1cmV1cmxfaW50ZXJ2aWV3OiBcImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9zcmlyYW0taW50ZXJ2aWV3LndlYnBcIixcclxuICB9LFxyXG4gIHtcclxuICAgIHRpdGxlOiBcIk0uU2MuXCIsXHJcbiAgICB2b3JuYW1lOiBcIlBoaWxpcHBcIixcclxuICAgIG5hY2hubmFtZTogXCJLXHUwMEZDaG5lbFwiLFxyXG4gICAgam9iOiBcIlBoRCBzdHVkZW50IGluIHRoZSBPdG9yaGlub2xhcnluZ29sb2d5IHdvcmtpbmcgZ3JvdXAgYXQgQmllbGVmZWxkIFVuaXZlcnNpdHlcIixcclxuICAgIGFmZmlsaWF0aW9uOiBcIlVuaXZlcnNpdFx1MDBFNHQgQmllbGVmZWxkXCIsXHJcbiAgICBwaWN0dXJldXJsOiBwaWNzWydrXHUwMEZDaG5lbCddLFxyXG4gICAgdGFnOiBcIkFjYWRlbWlhXCIsXHJcbiAgICBoZWFkaW5nOiBcIkltcHJvdmVtZW50IG9mIG91ciBjdWx0dXJlIHByb3RvY29scyBhbmQgZXhwZXJpbWVudGFsIG91dGNvbWVzLCBwYXJ0aWN1bGFybHkgaW4gbWFpbnRhaW5pbmcgQUxJIGN1bHR1cmVzXCIsXHJcbiAgICBpbnRlcnZpZXd0YWJpZDogXCJwa3VlaG5lbFwiLFxyXG5cclxuICAgIHF1b3RlOiBcIkNvbm5lY3Rpbmcgd2l0aCBQaGlsaXBwIEtcdTAwRkNobmVsLCBhbiBleHBlcnQgaW4gbmFzYWwgY2VsbCBjdWx0aXZhdGlvbiwgaGFzIGJlZW4gaW52YWx1YWJsZS4gSGlzIGluc2lnaHRzIGFuZCBleHBlcnRpc2UgaW4gQUxJIHRlY2huaXF1ZXMgaGF2ZSBzaWduaWZpY2FudGx5IGVuaGFuY2VkIG91ciB1bmRlcnN0YW5kaW5nIGFuZCBhcHByb2FjaCBpbiB0aGlzIGNydWNpYWwgYXJlYSBvZiByZXNlYXJjaC5cIixcclxuICAgIHF1b3RlTmFjaG5hbWU6IFwiU3VzYXQsIFRlYW1tZW1iZXIgXCIsXHJcbiAgICBxdW90ZVZvcm5hbWU6IFwiS2F0aGxlZW5cIixcclxuICAgIGFpbW9mY29udGFjdDogWzxwPlRoZSBhaW0gb2Ygb3VyIGNvbnRhY3Qgd2l0aCBQaGlsaXBwIEtcdTAwRkNobmVsLCBhIFBoRCBzdHVkZW50IGZyb20gdGhlIE90b3JoaW5vbGFyeW5nb2xvZ3kgd29ya2luZyBncm91cCBvZiBCaWVsZWZlbGQgVW5pdmVyc2l0eSwgd2FzIHRvIGdhaW4gZXhwZXJ0aXNlIGluIHdvcmtpbmcgd2l0aCBwcmltYXJ5IGN1bHR1cmVzLCBwYXJ0aWN1bGFybHkgZm9jdXNpbmcgb24gYWlyLWxpcXVpZCBpbnRlcmZhY2UgKEFMSSkgY3VsdHVyZXMuIEdpdmVuIGhpcyBleHBlcmllbmNlIGluIHRoaXMgYXJlYSwgd2Ugc291Z2h0IGhpcyBndWlkYW5jZSB0byBlbnN1cmUgdGhhdCB3ZSB3ZXJlIGZvbGxvd2luZyBiZXN0IHByYWN0aWNlcyBhbmQgdG8gYWRkcmVzcyBhbnkgdGVjaG5pY2FsIGNoYWxsZW5nZXMgd2UgbWlnaHQgZW5jb3VudGVyLjwvcD5dLFxyXG4gICAgaW5zaWdodHM6IFs8cD5UaHJvdWdoIG91ciBkaXNjdXNzaW9ucyB3aXRoIFBoaWxpcHAsIHdlIGdhaW5lZCB2YWx1YWJsZSBpbnNpZ2h0cyBpbnRvIHRoZSBvcHRpbWFsIGNvbmRpdGlvbnMgZm9yIGN1bHRpdmF0aW5nIHByaW1hcnkgY2VsbHMgYW5kIG1haW50YWluaW5nIEFMSSBjdWx0dXJlcy4gSGUgcHJvdmlkZWQgcHJhY3RpY2FsIGFkdmljZSBvbiB0cm91Ymxlc2hvb3Rpbmcgb2YgY29tbW9uIGlzc3Vlcywgc3VjaCBhcyBjZWxsIGRpZmZlcmVudGlhdGlvbiBhbmQgY3VsdHVyZSBzdGFiaWxpdHksIHdoaWNoIHdlcmUgY3J1Y2lhbCBmb3IgdGhlIHN1Y2Nlc3Mgb2Ygb3VyIGV4cGVyaW1lbnRzLiBXZSBhbHNvIG1haW50YWluZWQgY2xvc2UgY29udGFjdCB0byBleGNoYW5nZSBpbmZvcm1hdGlvbiBhYm91dCBmdW5naSB0aGF0IGZyZXF1ZW50bHkgY29udGFtaW5hdGUgQUxJIGN1bHR1cmVzLiBUaGUgZXhwZXJ0aXNlIHNoYXJlZCBvbiBjb21iYXRpbmcgdGhlc2UgZnVuZ2FsIGNvbnRhbWluYXRpb25zIHdhcyBwYXJ0aWN1bGFybHkgdmFsdWFibGUgYW5kIGdyZWF0bHkgZW5oYW5jZWQgb3VyIHVuZGVyc3RhbmRpbmcgb2YgZWZmZWN0aXZlIHByZXZlbnRpb24gYW5kIHRyZWF0bWVudCBtZXRob2RzLiA8L3A+XSxcclxuICAgIGltcGxlbWVudGF0aW9uOiBbPHA+V2UgaW5jb3Jwb3JhdGVkIFBoaWxpcHBcdTIwMTlzIGFkdmljZSBieSByZWZpbmluZyBvdXIgY3VsdHVyZSBwcm90b2NvbHMsIHBhcnRpY3VsYXJseSBhZGp1c3RpbmcgdGhlIGNvbmRpdGlvbnMgZm9yIEFMSSBjdWx0dXJlcyB0byBpbXByb3ZlIGNlbGwgZGlmZmVyZW50aWF0aW9uIGFuZCBvdmVyYWxsIGN1bHR1cmUgaGVhbHRoLiBUaGlzIGRpcmVjdGx5IGVuaGFuY2VkIHRoZSByZWxpYWJpbGl0eSBvZiBvdXIgZXhwZXJpbWVudGFsIHJlc3VsdHMsIGVuc3VyaW5nIHRoYXQgb3VyIHdvcmsgd2l0aCBwcmltYXJ5IGN1bHR1cmVzIHdhcyBib3RoIGFjY3VyYXRlIGFuZCByZXByb2R1Y2libGUuIDwvcD5dLFxyXG4gICAgbGFuZ3VhZ2U6IFwiZGVcIixcclxuICAgIHN1bW1hcnk6IFwiVGhlIGNvbnRhY3QgYWltZWQgdG8gbGV2ZXJhZ2UgUGhpbGlwcFx1MjAxOXMgZXhwZXJ0aXNlIGluIEFMSSBjdWx0dXJlcyB0byBpbXByb3ZlIG91ciBleHBlcmltZW50YWwgcHJvdG9jb2xzIEdhaW5lZCBpbnNpZ2h0cyBpbnRvIG9wdGltaXppbmcgY29uZGl0aW9ucyBmb3IgcHJpbWFyeSBjZWxsIGN1bHR1cmVzIGFuZCBtYW5hZ2luZyBjb21tb24gY2hhbGxlbmdlcyBsaWtlIGZ1bmdhbCBjb250YW1pbmF0aW9uXCIsXHJcbiAgICBtb250aHM6IFwic2V2ZXJhbCB0aW1lc1wiXHJcbiAgfSxcclxuICB7XHJcbiAgICB0aXRsZTogXCJQcm9mLiBEci5cIixcclxuICAgIHZvcm5hbWU6IFwiWm95YVwiLFxyXG4gICAgbmFjaG5uYW1lOiBcIkluZ2F0b3ZhIGFuZCAgRHIuIE5pa2hpbCBCaGFydGlcIixcclxuICAgIGpvYjogXCJHcm91cCBMZWFkZXJcIixcclxuICAgIGFmZmlsaWF0aW9uOiBcIkluc3RpdHV0ZSBvZiBCaW9jaGVtaXN0cnkgYW5kIE1vbGVjdWxhciBCaW9sb2d5IGF0IEhhbWJ1cmcgVW5pdmVyc2l0eVwiLFxyXG4gICAgcGljdHVyZXVybDogcGljc1snem95YSddLFxyXG4gICAgdGFnOiBcIkFjYWRlbWlhXCIsXHJcbiAgICBoZWFkaW5nOiBcIlNoYXBpbmcgdGhlIEZ1dHVyZSBvZiBHZW5ldGljIFRoZXJhcHk6IEFuIGludGVydmlldyB3aXRoIFByb2YuIERyLiBab3lhIElnbmF0b3ZhXCIsXHJcbiAgICBpbnRlcnZpZXd0YWJpZDogXCJpZ25hdG92YVwiLFxyXG5cclxuICAgIHF1b3RlTmFjaG5hbWU6IFwiSW5nYXRvdmEsIENGIFJlc2VhcmNoIEV4cGVydHMgXCIsXHJcbiAgICBxdW90ZVZvcm5hbWU6IFwiUHJvZi4gRHIuIFpveWFcIixcclxuICAgIHF1b3RlOiBcIlByZWNpc2lvbiBpcyBrZXkgdG8gbWluaW1pemluZyBzaWRlIGVmZmVjdHMgYW5kIGVuc3VyaW5nIHRoZSBzYWZldHkgb2YgeW91ciB0aGVyYXB5LlwiLFxyXG4gICAgYWltb2Zjb250YWN0OiBcIldlIGNvbmR1Y3RlZCB0aGUgaW50ZXJ2aWV3IHdpdGggUHJvZi4gRHIuIFpveWEgSWduYXRvdmEgYW5kIERyLiBOaWtoaWwgQmhhcnRpIGZyb20gdGhlIEluc3RpdHV0ZSBvZiBCaW9jaGVtaXN0cnkgYW5kIE1vbGVjdWxhciBCaW9sb2d5IGF0IHRoZSBVbml2ZXJzaXR5IG9mIEhhbWJ1cmcsIHNlZWtpbmcgdG8gZGVlcGVuIG91ciB1bmRlcnN0YW5kaW5nIG9mIHRoZWlyIHJlc2VhcmNoIG9uICBDeXN0aWMgRmlicm9zaXMgKENGKSBhbmQgZXhwbG9yZSBhZGRpdGlvbmFsIENGIG11dGF0aW9ucywgYXMgd2VsbCBhcyB0byBsZWFybiBtb3JlIGFib3V0IGNlbGwgY3VsdHVyZSB0ZWNobmlxdWVzIHNwZWNpZmljIHRvIENGIHJlc2VhcmNoLCBzaW5jZSB0aGV5IHNlbmQgdXMgdGhlIENGQkU0MW8tIGNlbGwgbGluZS4gT3VyIGFpbSB3YXMgYWxzbyB0byBnYXRoZXIgbW9yZSBpbmZvcm1hdGlvbiBhYm91dCB0aGVpciBhcHByb2FjaGVzIGluIENGIHJlc2VhcmNoLCBwYXJ0aWN1bGFybHkgdGhlaXIgZm9jdXMgb24gdHJlYXRpbmcgZ2VuZXRpYyBtdXRhdGlvbnMgbGlrZSBub25zZW5zZSBtdXRhdGlvbnMsIHdoaWNoIGFyZSBoaWdobHkgcHJldmFsZW50IGluIENGLlwiLFxyXG4gICAgaW5zaWdodHM6IFs8cD5XZSB3ZXJlIHN0cnVjayBieSBJZ25hdG92YVx1MjAxOXMgc3RvcnkgYWJvdXQgZm91bmRpbmcgdGhlIGlHRU0gdGVhbSBpbiBIYW1idXJnLiBIZXIgcGFzc2lvbiBmb3IgZm9zdGVyaW5nIGNyZWF0aXZpdHkgYW5kIGlubm92YXRpb24gaW4gc2NpZW5jZSB3YXMgaW5zcGlyaW5nLiBPbiBhIHRlY2huaWNhbCBsZXZlbCwgdGhlaXIgYWR2aWNlIG9uIGNlbGwgY3VsdHVyZSB3YXMgaW5jcmVkaWJseSBwcmFjdGljYWwgYW5kIGltbWVkaWF0ZWx5IHVzZWZ1bC4gRHIuIE5pa2hpbCBCaGFydGkgZXhwbGFpbmVkIGhvdyB0aGV5IGhhbmRsZSBDRkJFNDFvLSBjZWxscyBhbmQgQUxJIChhaXItbGlxdWlkIGludGVyZmFjZSkgY2VsbCBjdWx0dXJlLiBUaGlzIGFkdmljZSBkaXJlY3RseSBhZGRyZXNzZWQgdGhlIGNoYWxsZW5nZXMgd2VcdTIwMTl2ZSBmYWNlZCBpbiBvdXIgb3duIGxhYiwgZ2l2aW5nIHVzIGEgbWV0aG9kIHRvIGltcHJvdmUgb3VyIGNlbGwgY3VsdHVyZSBzdWNjZXNzIHJhdGVzLiBEdXJpbmcgb3VyIGludGVydmlldyB3aXRoIFByb2YuIERyLiBab3lhIElnbmF0b3ZhIGFuZCBEci4gTmlraGlsIEJoYXJ0aSwgdGhlaXIgaW5ub3ZhdGl2ZSBhcHByb2FjaCB0byAgQ3lzdGljIEZpYnJvc2lzIChDRikgdGhlcmFweSwgcGFydGljdWxhcmx5IFwicmVhZC10aHJvdWdoXCIgYW5kIHRSTkEtYmFzZWQgdGhlcmFwaWVzLCBzdG9vZCBvdXQuIFwiUmVhZC10aHJvdWdoXCIgdGhlcmFwaWVzIGFpbSB0byBieXBhc3MgcHJlbWF0dXJlIHN0b3AgY29kb25zIHRoYXQgcHJldmVudCBmdWxsIHByb3RlaW4gcHJvZHVjdGlvbiwgb2ZmZXJpbmcgYSB3YXkgdG8gcmVzdG9yZSB0aGUgZnVuY3Rpb24gb2YgY3JpdGljYWwgcHJvdGVpbnMgbGlrZSBDRlRSIGluIENGLiBUaGlzIGFwcHJvYWNoIGhhcyB0aGUgcG90ZW50aWFsIHRvIHRyZWF0IGEgYnJvYWQgcmFuZ2Ugb2YgZ2VuZXRpYyBkaXNlYXNlcyBjYXVzZWQgYnkgc2ltaWxhciBtdXRhdGlvbnMuIFRoZSB0Uk5BLWJhc2VkIHRoZXJhcHkgaXMgZXZlbiBtb3JlIHByZWNpc2UsIHRhcmdldGluZyBtUk5BIHRvIGNvcnJlY3QgZmF1bHR5IGNvZG9ucyB3aXRob3V0IGFsdGVyaW5nIHRoZSBETkEsIG1ha2luZyBpdCBzYWZlciBmb3IgbG9uZy10ZXJtIHVzZS4gVGhpcyBmbGV4aWJpbGl0eSwgYWxvbmcgd2l0aCB0aGUgYWJpbGl0eSB0byBhcHBseSB0aGVzZSB0aGVyYXBpZXMgYmV5b25kIENGLCBicm9hZGVuZWQgb3VyIHVuZGVyc3RhbmRpbmcgb2YgaG93IHN1Y2ggc3RyYXRlZ2llcyBjYW4gcmV2b2x1dGlvbml6ZSB0cmVhdG1lbnRzIGZvciBnZW5ldGljIGRpc29yZGVycy5JZ25hdG92YSBoaWdobGlnaHRlZCwgdGhhdCB1c2luZyBjZWxsIG1vZGVscyBjbG9zZWx5IHJlc2VtYmxpbmcgcHJvcGVydGllcyBvZiB0aGUgY2VsbCB0eXBlcyB0YXJnZXRlZCBieSBvdXIgdGhlcmFweSBpcyBpbXBvcnRhbnQgZm9yIGVuc3VyaW5nIGFwcGxpY2FiaWxpdHkgb2Ygb3VyIGFwcHJvYWNoIHRvIHBhdGllbnQgY2VsbHMgYW5kIGl0cyBzYWZldHkuIEEga2V5IGZvY3VzIHRocm91Z2hvdXQgdGhlIGRpc2N1c3Npb24gd2FzIHNhZmV0eS4gUHJvZi4gSWduYXRvdmEgZW1waGFzaXplZCB0aGUgaW1wb3J0YW5jZSBvZiBlbnN1cmluZyB0aGF0IHRoZSB0aGVyYXBpZXMgYXJlIGhpZ2hseSBzcGVjaWZpYywgdGFyZ2V0aW5nIG9ubHkgdGhlIGRlZmVjdGl2ZSBjb2RvbnMgd2hpbGUgYXZvaWRpbmcgbmF0dXJhbCBzdG9wIGNvZG9ucyB0byBwcmV2ZW50IHVuY29udHJvbGxlZCBwcm90ZWluIHByb2R1Y3Rpb24uIE1vcmVvdmVyLCB0aGVpciBjYXJlZnVsIGNvbnNpZGVyYXRpb24gb2YgZGVsaXZlcnkgc3lzdGVtcyBmdXJ0aGVyIGRlbW9uc3RyYXRlZCB0aGVpciBjb21taXRtZW50IHRvIG1pbmltaXppbmcgcmlza3MgbGlrZSB0b3hpY2l0eSBpbiB1bmludGVuZGVkIG9yZ2Fucy4gVGhlaXIgbWV0aWN1bG91cyBhcHByb2FjaCB0byBzYWZldHkgaGFzIGluZmx1ZW5jZWQgaG93IHdlIHRoaW5rIGFib3V0IGRldmVsb3BpbmcgYW5kIGFwcGx5aW5nIHRoZXNlIHRoZXJhcGllcywgbWFraW5nIGl0IGNsZWFyIHRoYXQgZW5zdXJpbmcgcGF0aWVudCBzYWZldHkgaXMgYXMgY3JpdGljYWwgYXMgYWNoaWV2aW5nIHRoZXJhcGV1dGljIHN1Y2Nlc3MuPC9wPl0sXHJcbiAgICBpbXBsZW1lbnRhdGlvbjogXCJQcm9mLiBJZ25hdG92YSdzIHByYWN0aWNhbCBhZHZpY2Ugb24gY2VsbCBjdWx0dXJlIGhhZCBhIHRyYW5zZm9ybWF0aXZlIGltcGFjdCBvbiBvdXIgcHJvamVjdC4gQnkgYWRvcHRpbmcgaGVyIG1ldGhvZCBmb3IgQ0ZCRTQxby0gY2VsbHMgYW5kIGltcHJvdmluZyBvdXIgbGFiJ3Mgc3RlcmlsaXphdGlvbiBwcm90b2NvbHMsIHdlIHN1Y2Nlc3NmdWxseSBlc3RhYmxpc2hlZCB0aGUgY2VsbCBsaW5lIGFuZCBzaWduaWZpY2FudGx5IHJlZHVjZWQgdGhlIHJpc2sgb2YgY29udGFtaW5hdGlvbi4gSW4gYWRkaXRpb24sIGhlciBlbXBoYXNpcyBvbiBzYWZldHkgaW4gZ2VuZSB0aGVyYXB5IGd1aWRlZCB1cyB0byByZXZpZXcgb3VyIFByaW1lIEVkaXRpbmcgY29uc3RydWN0IGFuZCBsaXBpZCBuYW5vcGFydGljbGUgKExOUCkgZGVzaWduLiBXZSBmb2N1c2VkIG9uIG1pbmltaXppbmcgdG94aWNpdHkgYW5kIG9mZi10YXJnZXQgZWZmZWN0cyB3aGlsZSBlbnN1cmluZyBwcmVjaXNlIHRhcmdldGluZyBvZiBsdW5nIHRpc3N1ZXMgYW5kIHRoZSBGNTA4ZGVsIG11dGF0aW9uIG9mIHRoZSBDRlRSIGdlbmUsIG1ha2luZyBvdXIgYXBwcm9hY2ggc2FmZXIgYW5kIG1vcmUgZWZmaWNpZW50XCIsXHJcbiAgICBzdW1tYXJ5OiBcIkluIG91ciBpbnRlcnZpZXcgd2l0aCBQcm9mLiBEci4gWm95YSBJZ25hdG92YSBhbmQgRHIuIE5pa2hpbCBCaGFydGkgZnJvbSB0aGUgSW5zdGl0dXRlIG9mIEJpb2NoZW1pc3RyeSBhbmQgTW9sZWN1bGFyIEJpb2xvZ3kgYXQgdGhlIFVuaXZlcnNpdHkgb2YgSGFtYnVyZywgd2UgYWltZWQgdG8gZGVlcGVuIG91ciB1bmRlcnN0YW5kaW5nIG9mIHRoZWlyIHJlc2VhcmNoIG9uICBDeXN0aWMgRmlicm9zaXMgKENGKSBhbmQgZXhwbG9yZSBhZGRpdGlvbmFsIG11dGF0aW9ucy4gVGhlaXIgaW5ub3ZhdGl2ZSBhcHByb2FjaGVzLCBwYXJ0aWN1bGFybHkgdFJOQS1iYXNlZCB0aGVyYXBpZXMsIGFpbSB0byByZXN0b3JlIHRoZSBmdW5jdGlvbiBvZiBwcm90ZWlucyBsaWtlIENGVFIgYnkgYnlwYXNzaW5nIHByZW1hdHVyZSBzdG9wIGNvZG9ucywgcHJlc2VudGluZyBwb3RlbnRpYWwgdHJlYXRtZW50cyBmb3IgdmFyaW91cyBnZW5ldGljIGRpc2Vhc2VzLiBUaGV5IGhpZ2hsaWdodGVkIHRoZSBpbXBvcnRhbmNlIG9mIHByZWNpc2lvbiBpbiB0aGVyYXB5IHRvIG1pbmltaXplIHNpZGUgZWZmZWN0cyBhbmQgZW5oYW5jZSBzYWZldHksIGVtcGhhc2l6aW5nIGNhcmVmdWwgZGVsaXZlcnkgc3lzdGVtcyB0byBhdm9pZCB0b3hpY2l0eS4gUHJvZi4gSWduYXRvdmEncyBwcmFjdGljYWwgaW5zaWdodHMgaW50byBjZWxsIGN1bHR1cmUgdGVjaG5pcXVlcyBzaWduaWZpY2FudGx5IGltcHJvdmVkIG91ciBsYWIncyBzdWNjZXNzIHdpdGggQ0ZCRTQxby0gY2VsbHMsIGd1aWRpbmcgdXMgdG8gZW5oYW5jZSBzdGVyaWxpemF0aW9uIHByb3RvY29scyBhbmQgcmVmaW5lIG91ciBQcmltZSBFZGl0aW5nIGNvbnN0cnVjdHMuIFRoaXMgdHJhbnNmb3JtYXRpdmUgZXhjaGFuZ2UgdW5kZXJzY29yZWQgdGhlIGNyaXRpY2FsIGJhbGFuY2UgYmV0d2VlbiBhY2hpZXZpbmcgdGhlcmFwZXV0aWMgc3VjY2VzcyBhbmQgZW5zdXJpbmcgcGF0aWVudCBzYWZldHkuXCIsXHJcbiAgICBsYW5ndWFnZTogXCJlblwiLFxyXG4gICAgaW50ZXJ2aWV3OiA8PlxyXG4gICAgICA8UWFCb3ggcT1cIldlIGhhdmUgaGVhcmQgeW91IGFyZSBwYXNzaW9uYXRlIGFib3V0IGlHRU0uIFdoYXQgaW5zcGlyZWQgeW91IHRvIGdldCBpbnZvbHZlZCwgYW5kIHdoYXQgaGFzIHlvdXIgZXhwZXJpZW5jZSBiZWVuIGxpa2Ugd2l0aCB0aGUgY29tcGV0aXRpb24/XCIgYT1cIk15IGpvdXJuZXkgd2l0aCBpR0VNIGJlZ2FuIHdoZW4gSSBtb3ZlZCB0byBIYW1idXJnIGluIDIwMTQuIEJhY2sgdGhlbiwgSGFtYnVyZyBkaWQgbm90IGhhdmUgaXRzIG93biBpR0VNIHRlYW0uIERlc3BpdGUgSGFtYnVyZyBsYWNraW5nIGFuIGlHRU0gcHJlc2VuY2UsIHRoZXJlIHdlcmUgbW90aXZhdGVkIHN0dWRlbnRzIHdobyB3ZXJlIGVhZ2VyIHRvIGVzdGFibGlzaCBhIHRlYW0uIFdlIHN0YXJ0ZWQgcXVpdGUgbGF0ZSB3aXRoIG1lIGFzIGEgcHJpbmNpcGFsIGluc3RydWN0b3IsIGFyb3VuZCBBcHJpbCwgd2l0aCB0aGUgY29tcGV0aXRpb24gc2NoZWR1bGVkIGZvciBPY3RvYmVyLCBzbyB3ZSBoYWQgbGltaXRlZCB0aW1lLiBIb3dldmVyLCB3ZSBtYW5hZ2VkIHRvIGZvcm0gYSB0ZWFtIGFuZCBwYXJ0aWNpcGF0ZS4gRm9ydHVuYXRlbHksIHdlIHdlcmUgc3VjY2Vzc2Z1bCBpbiBjb252aW5jaW5nIHRoZSB1bml2ZXJzaXR5IGFkbWluaXN0cmF0aW9uIHRvIGVzdGFibGlzaCBhIHN0ZWFkeSBzdXBwb3J0IGZvciB0aGUgaW5pdGlhdGl2ZSwgd2hpY2ggZW5zdXJlZCBzdGFibGUgZnVuZGluZywgaW5jbHVkaW5nIGNvdmVyaW5nIHJlZ2lzdHJhdGlvbiBmZWVzIGVhcmx5IG9uLiBUaGlzIGZpbmFuY2lhbCBhbmQgbG9naXN0aWNhbCBzdXBwb3J0IGdhdmUgdGhlIHRlYW0gdGhlIHNlY3VyaXR5IHRvIGZvY3VzIG9uIHRoZWlyIHByb2plY3RzLiBPdmVyIHRoZSB5ZWFycywgdGhlIEhhbWJ1cmcgaUdFTSB0ZWFtIGhhcyBiZWNvbWUgYSB3ZWxsLWtub3duIGFuZCByZXNwZWN0ZWQgZ3JvdXAgYXQgdGhlIHVuaXZlcnNpdHkuIEl0IGlzIGEgY3JlYXRpdmUgZW52aXJvbm1lbnQgd2hlcmUgc3R1ZGVudHMgY2FuIHB1c2ggdGhlIGJvdW5kYXJpZXMgb2Ygc2NpZW5jZSB0aHJvdWdoIGludGVyZXN0aW5nIGFuZCBpbXBhY3RmdWwgcHJvamVjdHMuIEkgbW92ZWQgb24gdG8gb3RoZXIgZHV0aWVzIGFmdGVyIHNldmVyYWwgeWVhcnMgb2Ygc3VwZXJ2aXNpb24sIGJ1dCBJIGFtIHByb3VkIHRvIGhhdmUgcGxheWVkIGEgcm9sZSBpbiBpdHMgZm91bmRhdGlvbi4gVGhlIHVuaXZlcnNpdHkgaGFzIHJlY29nbml6ZWQgaUdFTSB3aXRoaW4gdGhlIGN1cnJpY3VsdW0gb2YgTW9sZWN1bGFyIExpZmUgU2NpZW5jZSwgYWxsb3dpbmcgc3R1ZGVudHMgdG8gZWFybiBjcmVkaXQgcG9pbnRzIGFuZCBoYXZlIHRoZWlyIHdvcmsgcmVmbGVjdGVkIG9uIHRoZWlyIHRyYW5zY3JpcHRzLiBUaGlzIGFja25vd2xlZGdtZW50IGZ1cnRoZXIgaW5jZW50aXZpemVzIHN0dWRlbnRzIGFuZCBlbnN1cmVzIHRoYXQgdGhlaXIgZWZmb3J0cyBhcmUgZm9ybWFsbHkgcmVjb2duaXplZC5cIiAvPlxyXG4gICAgICA8UWFCb3ggcT1cIldlIGhhdmUgYmVlbiBoYXZpbmcgdHJvdWJsZSB3aXRoIENGQkU0MW8tIGNlbGxzIG5vdCBhZGhlcmluZyB3ZWxsLiBBbnkgYWR2aWNlP1wiIGE9XCJDRkJFNDFvLSBjZWxscyBjYW4gYmUgdHJpY2t5IHdoZW4gaXQgY29tZXMgdG8gYWRoZXNpb24sIGJ1dCB5b3UgZG8gbm90IG5lY2Vzc2FyaWx5IG5lZWQgdG8gY29hdCB5b3VyIGNlbGwgY3VsdHVyZSB2ZXNzZWxzIHdpdGggZmlicm9uZWN0aW4gdW5sZXNzIHlvdSBhcmUgZG9pbmcgdmVyeSBzcGVjaWZpYyBzdHVkaWVzLCBzdWNoIGFzIHByaW1hcnkgY3VsdHVyZSBjb21wYXJpc29ucy4gRm9yIHNlZWRpbmcsIHdlIHNpbXBsaWZ5IHRoZSBwcm9jZXNzIGJ5IHNraXBwaW5nIHRoZSBQQlMgd2FzaGluZyBzdGVwLiBJbnN0ZWFkLCB3ZSBzZWVkIHRoZSBjZWxscyBkaXJlY3RseSBpbnRvIERNRU0gc3VwcGxlbWVudGVkIHdpdGggMTAlIGZldGFsIGNhbGYgc2VydW0gKEZDUykgYW5kIHN0cmVwdG9teWNpbi4gVGhlc2UgY2VsbHMgbWF5IHRha2UgYSBmZXcgZGF5cyB0byByZWNvdmVyIGFuZCBiZWdpbiBhZGhlcmluZyBwcm9wZXJseSwgdGhhdCB1c3VhbGx5IHdvcmtzIHdpdGhvdXQgcmVxdWlyaW5nIGV4dHJhIGNvYXRpbmdzLlwiIC8+XHJcbiAgICAgIDxRYUJveCBxPVwiSG93IGRvIHlvdSBtYW5hZ2UgZnVuZ2FsIGNvbnRhbWluYXRpb24gaW4gQUxJIGN1bHR1cmVzP1wiIGE9XCJGdW5nYWwgY29udGFtaW5hdGlvbiBpcyBvbmUgb2YgdGhlIG1vcmUgZnJ1c3RyYXRpbmcgY2hhbGxlbmdlcyBpbiBjZWxsIGN1bHR1cmUgYmVjYXVzZSBpdCBpcyBkaWZmaWN1bHQgdG8gZWxpbWluYXRlIG9uY2UgaXQgdGFrZXMgcGxhY2UuIEluIGNhc2VzIG9mIGNvbnRhbWluYXRpb24sIHRoZSBiZXN0IGNvdXJzZSBvZiBhY3Rpb24gaXMgdG8gc2h1dCBkb3duIGFsbCBvbmdvaW5nIGNlbGwgY3VsdHVyZSB3b3JrIGFuZCBjbGVhbiBldmVyeXRoaW5nIHRob3JvdWdobHkuIFlvdSBzaG91bGQgc3RhcnQgYnkgcnVubmluZyBhIHN0ZXJpbGl6YXRpb24gY3ljbGUgaW4geW91ciBpbmN1YmF0b3JzLCB3aGljaCBpZGVhbGx5IHNob3VsZCByZWFjaCBhcm91bmQgMTgwXHUwMEIwQy4gVGhpcyBzaG91bGQga2lsbCBhbnkgZnVuZ2FsIHNwb3Jlcy4gSWYgeW91ciBpbmN1YmF0b3JzIGRvIG5vdCBoYXZlIHRoYXQgY2FwYWJpbGl0eSwgeW91IHdpbGwgbmVlZCB0byBhdXRvY2xhdmUgZXZlcnl0aGluZyBhbmQgY2xlYW4gYWxsIHN1cmZhY2VzIGFuZCBlcXVpcG1lbnQgbXVsdGlwbGUgdGltZXMgd2l0aCBldGhhbm9sLiBJdCBpcyBjcnVjaWFsIHRvIHJlbW92ZSBhbGwgdHJhY2VzIG9mIGNvbnRhbWluYXRpb24sIGFzIGZ1bmdhbCBzcG9yZXMgY2FuIHNwcmVhZCByYXBpZGx5LiBUaGUga2V5IGlzIHByZXZlbnRpb24gdGhyb3VnaCByaWdvcm91cyBjbGVhbmluZyBhbmQgbWFpbnRlbmFuY2UgcHJvdG9jb2xzLCBhbmQgdW5mb3J0dW5hdGVseSwgc29tZXRpbWVzIHRoZSBvbmx5IHNvbHV0aW9uIGlzIHRvIHN0YXJ0IGZyZXNoIHdpdGggbmV3IGN1bHR1cmVzIGFmdGVyIGEgZnVsbCBkZWNvbnRhbWluYXRpb24gcm91bmQuXCIgLz5cclxuICAgICAgPFFhQm94IHE9XCJXaGF0IGFyZSB5b3UgY3VycmVudGx5IHJlc2VhcmNoaW5nP1wiIGE9XCJPdXIgcHJpbWFyeSByZXNlYXJjaCBmb2N1cyBpcyBvbiBnZW5ldGljIGRpc2Vhc2VzIGNhdXNlZCBieSBub25zZW5zZSBtdXRhdGlvbnMsIGFsc28ga25vd24gYXMgcHJlbWF0dXJlIHRlcm1pbmF0aW9uIGNvZG9ucyAoUFRDcykuIFdoaWxlICBDeXN0aWMgRmlicm9zaXMgKENGKSBpcyBhIG1ham9yIGFyZWEgb2YgaW50ZXJlc3QgZHVlIHRvIGl0cyBoaWdoIHByZXZhbGVuY2UgYW5kIHRoZSBpbXBhY3Qgb2Ygc3BlY2lmaWMgbXV0YXRpb25zIGxpa2UgdGhlIEY1MDhkZWwsIG91ciByZXNlYXJjaCBleHRlbmRzIGZhciBiZXlvbmQgQ0YuIFdlIGFyZSB0YXJnZXRpbmcgYSBicm9hZGVyIGNhdGVnb3J5IG9mIGdlbmV0aWMgZGlzZWFzZXMgdGhhdCBzaGFyZSBhIGNvbW1vbiBmZWF0dXJlXHUyMDE0ZWFybHkgc3RvcCBjb2RvbnMgdGhhdCBsZWFkIHRvIHByb2R1Y3Rpb24gb2YgdHJ1bmNhdGVkIHByb3RlaW5zLCB3aGljaCBhcmUgbm9uLWZ1bmN0aW9uYWwuIEluIENGLCBmb3IgaW5zdGFuY2UsIG91ciBtYWluIGdvYWwgaXMgdG8gcmVzdG9yZSBmdWxsLWxlbmd0aCBDRlRSIHByb3RlaW4gcHJvZHVjdGlvbiBpbiBwcmltYXJ5IHBhdGllbnQtZGVyaXZlZCBjZWxscyBiZWFyaW5nIHZhcmlvdXMgUFRDcy4gT25lIGFwcHJvYWNoIHdlIGFyZSBleHBsb3JpbmcgaXMga25vd24gYXMgYSAncmVhZC10aHJvdWdoJyB0aGVyYXB5LCB3aGljaCBpbnZvbHZlcyBieXBhc3NpbmcgdGhlIHByZW1hdHVyZSBzdG9wIGNvZG9uIHNvIHRoYXQgdGhlIGNlbGwgY2FuIGNvbnRpbnVlIHByb2R1Y2luZyB0aGUgZnVsbCBwcm90ZWluLiBUaGlzIHN0cmF0ZWd5IGlzIGFwcGxpY2FibGUgbm90IG9ubHkgdG8gQ0YgYnV0IGNhbiBiZSB1c2VkIGluIG1hbnkgb3RoZXIgZ2VuZXRpYyBkaXNvcmRlcnMgY2F1c2VkIGJ5IG5vbnNlbnNlIG11dGF0aW9ucy4gQnJpZWZseSwgdGhlIHJlYWQtdGhyb3VnaCB0aGVyYXBpZXMgd2UgZGV2ZWxvcCBhcmUgdFJOQS1iYXNlZCB0aGVyYXBldXRpYyBhcHByb2FjaGVzLCBpbiB3aGljaCB3ZSBkZXNpZ24gc3VwcHJlc3NvciB0cmFuc2ZlciBSTkFzIChzdXAtdFJOQXMpIHRvIHNlbGVjdGl2ZWx5IHRhcmdldCBhbmQgcmVhZCB0aHJvdWdoIFBUQ3MsIHJlc3RvcmluZyB0aGUgcHJvZHVjdGlvbiBvZiBmdWxsLWxlbmd0aCBkaXNlYXNlIHByb3RlaW4gd2l0aG91dCBhbHRlcmluZyB0aGUgbmF0dXJhbCB0ZXJtaW5hdGlvbiBjb2RvbnMuIEl0IGlzIGEgaGlnaGx5IHNwZWNpZmljIGFuZCBzYWZlIG1ldGhvZCwgYW5kIGJlY2F1c2Ugd2UgYXJlIHRhcmdldGluZyBtUk5BIHJhdGhlciB0aGFuIEROQSwgaXQgYWxsb3dzIGZvciB0ZXJtaW5hdGluZyB0aGUgdGhlcmFwaWVzIGJ5IGFueSB1bmZvcmVzZWVuIHNpZGUgZWZmZWN0cy5cIiAvPlxyXG4gICAgICA8UWFCb3ggcT1cIldoYXQgYXJlIHlvdXIgZG93bnN0cmVhbSB2YWxpZGF0aW9uIG1ldGhvZHM/XCIgYT1cIkFmdGVyIHdlIGhhdmUgZGV2ZWxvcGVkIGEgdGhlcmFwZXV0aWMgYXBwcm9hY2gsIHRoZSBmaXJzdCBzdGVwIGlzIHRvIHZhbGlkYXRlIHdoZXRoZXIgaXQgd29ya3MgYXQgdGhlIHByb3RlaW4gbGV2ZWwuIEZpcnN0LCB3ZSBjaGVjayB3aGV0aGVyIHRoZSBmdWxsLWxlbmd0aCBwcm90ZWluIGlzIGJlaW5nIHByb2R1Y2VkLiBGb3IgQ0ZUUiwgZm9yIGV4YW1wbGUsIHdlIGxvb2sgYXQgd2hldGhlciB0aGUgcHJvdGVpbiBpcyBiZWluZyBjb3JyZWN0bHkgc3ludGhlc2l6ZWQuIFdlIGFsc28gY29uZHVjdCBmdW5jdGlvbmFsIHRlc3RzIHRvIGVuc3VyZSBpdHMgZnVuY3Rpb25hbGl0eS4gRm9yIENGVFIgc3BlY2lmaWNhbGx5LCB3ZSB0ZXN0IHRoZSBhY3Rpdml0eSBvZiB0aGUgaW9uIGNoYW5uZWwgYnkgbWVhc3VyaW5nIGlvbiBmbG93IHRocm91Z2ggdGhlIGNlbGwgbWVtYnJhbmUuIEFub3RoZXIgdGVzdCBpbnZvbHZlcyBtb25pdG9yaW5nIHRoZSBoZWlnaHQgb2YgdGhlIGFpci1saXF1aWQgaW50ZXJmYWNlIChBTEkpIGN1bHR1cmVzLCB3aGljaCByZXBvcnRzIG9uIHRoZSBpb25pYyBiYWxhbmNlIGFjcm9zcyB0aGUgbWVtYnJhbmUuIFRoZXNlIGZ1bmN0aW9uYWwgdGVzdHMgYXJlIGNydWNpYWwgZm9yIGNvbmZpcm1pbmcgdGhhdCB0aGUgdGhlcmFweSBpcyBub3Qgb25seSBsZWFkaW5nIHRvIGEgcHJvZHVjdGlvbiBvZiB0aGUgcHJvdGVpbiBidXQgaXMgYWxzbyByZXN0b3JpbmcgaXRzIGZ1bmN0aW9uLlwiIC8+XHJcbiAgICAgIDxRYUJveCBxPVwiSG93IG9mdGVuIHdvdWxkIHBhdGllbnRzIG5lZWQgdG8gdW5kZXJnbyB0aGlzIHRoZXJhcHk/XCIgYT1cIlNpbmNlIG91ciBhcHByb2FjaCBpcyBkZXNpZ25lZCB0byBjb3JyZWN0IG5vbnNlbnNlIG11dGF0aW9ucyBkdXJpbmcgdHJhbnNsYXRpb24gdGhlIHRoZXJhcHkgd291bGQgbmVlZCB0byBiZSBhZG1pbmlzdGVyZWQgcGVyaW9kaWNhbGx5LiBCYXNlZCBvbiBvdXIgY3VycmVudCB1bmRlcnN0YW5kaW5nLCB3ZSBhbnRpY2lwYXRlIHRoYXQgcGF0aWVudHMgbWlnaHQgbmVlZCB0cmVhdG1lbnQgZXZlcnkgdGhyZWUgdG8gZm91ciB3ZWVrcywgYnV0IHRoaXMgaGFzIHRvIGJlIGRldGVybWluZWQgaW4gY2xpbmljYWwgc2V0dGluZ3MuXCIgLz5cclxuICAgICAgPFFhQm94IHE9XCJIb3cgZG9lcyB5b3VyIHRSTkEtYmFzZWQgYXBwcm9hY2ggYWRkcmVzcyBzYWZldHkgaXNzdWVzP1wiIGE9XCJTYWZldHkgaXMgdGhlIHRvcCBwcmlvcml0eSBvZiBvdXIgdFJOQS1iYXNlZCB0aGVyYXBldXRpYyBhcHByb2FjaC4gQXQgbW9sZWN1bGFyIGxldmVsLCB3ZSBlbnN1cmUgdGhhdCB0aGUgc3VwcHJlc3NvciB0Uk5BcyB3ZSB1c2UgYXJlIGhpZ2hseSBzcGVjaWZpY1x1MjAxNHRoZXkgYXJlIGVuZ2luZWVyZWQgdG8gdGFyZ2V0IG9ubHkgUFRDcyB3aXRob3V0IGFmZmVjdGluZyBuYXR1cmFsIHN0b3AgY29kb25zLCB3aGljaCBhcmUgZXNzZW50aWFsIGZvciB0ZXJtaW5hdGluZyB0aGUgc3ludGhlc2lzIG9mIGV2ZXJ5IHByb3RlaW4uIEluIGFkZGl0aW9uIHRvIHRoZSBzcGVjaWZpY2l0eSwgd2UgYWRkcmVzcyB0aGUgaW1tdW5lIHJlc3BvbnNlIHRoYXQgY2FuIGJlIHRyaWdnZXJlZCBieSBhbnkgbnVjbGVpYyBhY2lkcywgaW5jbHVkaW5nIHRSTkEuIEdlbmVyYWxseSwgdFJOQSBoYXMgYSBsb3dlciBpbW11bm9nZW5pY2l0eSB0aGFuIG90aGVyIG1vbGVjdWxlcywgc3VjaCBhcyBtUk5BLCBiZWNhdXNlIG9mIGl0cyBwYXJ0aWFsbHkgZG91YmxlLXN0cmFuZGVkIHN0cnVjdHVyZSwgd2hpY2ggcmVkdWNlcyB0aGUgYWN0aXZhdGlvbiBvZiB0aGUgaW5uYXRlIGltbXVuZSByZWFjdGlvbi4gQW5vdGhlciBjcml0aWNhbCBzYWZldHkgYXNwZWN0IGlzIHRoZSBzYWZldHkgb2YgdGhlIGRlbGl2ZXJ5IHN5c3RlbS4gV2UgbmVlZCB0byBlbnN1cmUgdGhhdCB0aGUgdFJOQSByZWFjaGVzIHRoZSByaWdodCB0eXBlIG9mIGNlbGxzIHdpdGhvdXQgY2F1c2luZyB0b3hpY2l0eSBvciBhY2N1bXVsYXRpbmcgaW4gdW50YXJnZXRlZCB0aXNzdWVzIGxpa2UgdGhlIGxpdmVyLCB3aGljaCBpcyBhIGNvbW1vbiBpc3N1ZSB3aXRoIG1hbnkgZ2VuZSB0aGVyYXBpZXMuIFdlIGFyZSBhbHNvIHdvcmtpbmcgb24gb3B0aW1pemluZyBvdXIgZGVsaXZlcnkgbWV0aG9kcy4gVGhpcyBwcmVjaXNpb24gaXMga2V5IHRvIG1pbmltaXppbmcgc2lkZSBlZmZlY3RzIGFuZCBlbnN1cmluZyB0aGUgc2FmZXR5IG9mIG91ciB0aGVyYXB5LlwiIC8+XHJcbiAgICAgIDxRYUJveCBxPVwiV2h5IGZvY3VzIG9uIENGIHJlc2VhcmNoP1wiIGE9XCJPdXIgaW52b2x2ZW1lbnQgd2l0aCBDRiByZXNlYXJjaCBlbWVyZ2VkIHNvbWV3aGF0IGJ5IGNoYW5jZS4gSW5pdGlhbGx5LCB3ZSB3ZXJlIGRlZXBseSBpbnRlcmVzdGVkIGluIHVuZGVyc3RhbmRpbmcgdGhlIHZhcmlhYmlsaXR5IGluIGRpc2Vhc2UsIHNwZWNpZmljYWxseSB3aHkgaW5kaXZpZHVhbHMgd2l0aCB0aGUgc2FtZSBnZW5ldGljIG11dGF0aW9ucyBzaG93IGRpZmZlcmVudCBzeW1wdG9tcyBvciBwcmVzZW50IGRpZmZlcmVudCBkaXNlYXNlIHNldmVyaXR5LiBFdmVuIHNpYmxpbmdzIG9yIHR3aW5zIHdpdGggdXN1YWxseSBzaW1pbGFyIGdlbmV0aWMgbWFrZXVwIGV4aGliaXQgZGlmZmVyZW50IGRpc2Vhc2Ugb3V0Y29tZXMuIENGIGJlY2FtZSBhIGZvY3VzIGFzIHdlIGRlbHZlZCBpbnRvIHRoZSBtb2xlY3VsYXIgbWVjaGFuaXNtIG9mIENGVFIgYmlvc3ludGhlc2lzLiBIb3dldmVyLCBvdXIgd29yayBpcyBub3QgY29uZmluZWQgdG8gQ0ZcdTIwMTR3ZSBhcmUgdXNpbmcgdGhlIGtub3dsZWRnZSB3ZSBnYWluIGZyb20gQ0YgcmVzZWFyY2ggYW5kIG91ciBleHBlcnRpc2UgaW4gcHJvdGVpbiBzeW50aGVzaXMgYW5kIHRyYW5zbGF0aW9uIHRvIGRldmVsb3AgdHJlYXRtZW50cyBmb3Igb3RoZXIgZ2VuZXRpYyBkaXNlYXNlcyBjYXVzZWQgYnkgbm9uc2Vuc2UgbXV0YXRpb25zLiBUaGUgbWVjaGFuaXNtcyBiZWhpbmQgdGhlc2UgZGlzZWFzZXMgYXJlIG9mdGVuIHNpbWlsYXIsIHNvIHRoZSB0aGVyYXBldXRpYyBzdHJhdGVnaWVzIHdlIGFyZSBleHBsb3JpbmcgY2FuIHBvdGVudGlhbGx5IGJlIGFwcGxpZWQgdG8gYSByYW5nZSBvZiBjb25kaXRpb25zLlwiIC8+XHJcbiAgICAgIDxRYUJveCBxPVwiV2hhdCBkbyB5b3Ugc2VlIGFzIHRoZSBiaWdnZXN0IGNoYWxsZW5nZSBpbiB0cmFuc2xhdGluZyB5b3VyIHJlc2VhcmNoIHRvIHJlYWwtd29ybGQgYXBwbGljYXRpb25zP1wiIGE9XCJTYWZldHkgaXMgdGhlIG1vc3QgY3JpdGljYWwgaHVyZGxlIGluIHRyYW5zbGF0aW5nIG91ciByZXNlYXJjaCBmcm9tIHRoZSBsYWIgdG8gY2xpbmljYWwgYXBwbGljYXRpb25zLiBCZWZvcmUgYW55IHRoZXJhcHkgY2FuIGJlIGNvbnNpZGVyZWQgZm9yIGh1bWFuIHVzZSwgd2UgbmVlZCB0byBlbnN1cmUgdGhhdCBpdCBpcyBib3RoIHNhZmUgYW5kIGVmZmVjdGl2ZS4gSW4gdGVybXMgb2YgZWZmaWNhY3ksIHdlIGhhdmUgc3BlY2lmaWMgdGFyZ2V0cyB3ZSBuZWVkIHRvIG1lZXQgZm9yIGVhY2ggZGlzZWFzZS4gRm9yIENGLCBmb3IgZXhhbXBsZSwgeW91IG9ubHkgbmVlZCB0byByZXN0b3JlIGFib3V0IDEwJSBvZiBub3JtYWwgQ0ZUUiBwcm90ZWluIGZ1bmN0aW9uIHRvIGFsbGV2aWF0ZSB0aGUgc3ltcHRvbXMuIEhvd2V2ZXIsIGluIG90aGVyIGRpc2Vhc2VzLCB0aGUgdGhlcmFwZXV0aWMgdGhyZXNob2xkIGlzIG11Y2ggaGlnaGVyLCBzb21ldGltZXMgcmVxdWlyaW5nIG5lYXItY29tcGxldGUgcHJvdGVpbiByZXN0b3JhdGlvbi4gQW5vdGhlciBzaWduaWZpY2FudCBjaGFsbGVuZ2UgaXMgdGhlIHNtYWxsIG51bWJlciBvZiBwYXRpZW50cyBhZmZlY3RlZCBieSBtYW55IHJhcmUgZ2VuZXRpYyBkaXNlYXNlcywgd2hpY2ggcmVxdWlyZXMgcmVndWxhdGlvbiBib2RpZXMgdG8gY29uc2lkZXIgdGhpcyBhbmQgcmVkZWZpbmUgY29uZGl0aW9ucyBmb3IgY2xpbmljYWwgdHJpYWxzLlwiIC8+XHJcbiAgICAgIDxRYUJveCBxPVwiV2hhdCBhcmUgZ29vZCBwcmVjbGluaWNhbCBtb2RlbHMgZm9yIENGIHJlc2VhcmNoLCBpbiB5b3VyIHZpZXc/XCIgYT1cIlByZWNsaW5pY2FsIG1vZGVscyBhcmUgZXNzZW50aWFsIGZvciB0ZXN0aW5nIHRoZSBzYWZldHkgYW5kIGVmZmljYWN5IG9mIGFueSBuZXcgdGhlcmFweS4gRm9yIENGIHJlc2VhcmNoLCBvbmUgb2YgdGhlIG1vc3QgcmVsaWFibGUgbW9kZWxzIGlzIHRoZSBwYXRpZW50LWRlcml2ZWQgYWlyLWxpcXVpZCBpbnRlcmZhY2UgKEFMSSkgY3VsdHVyZXMsIHdoaWNoIHJlcGxpY2F0ZSB0aGUgbHVuZyBlbnZpcm9ubWVudCBhbmQgYXJlIG11dGF0aW9uLXNwZWNpZmljLiBQcmltYXJ5IGN1bHR1cmVzIGFyZSBhdmFpbGFibGUgdGhyb3VnaCB0aGUgQ0YgRm91bmRhdGlvbiAoVVNBKSBhbmQgYWxsb3cgcmVzZWFyY2hlcnMgdG8gdGVzdCB0aGVyYXBpZXMgaW4gYSBjb250ZXh0IHRoYXQgY2xvc2VseSBtaW1pY3MgdGhlIGh1bWFuIGx1bmcuIFdoaWxlIEFMSSBjdWx0dXJlcyBhcmUgZXhjZWxsZW50IG1vZGVscywgdGhleSBhcmUgYWxzbyBjaGFsbGVuZ2luZyB0byBncm93IGFuZCByZXF1aXJlIGFib3V0IHR3byBtb250aHMgdG8gYmUgc2V0IHVwIHByb3Blcmx5LiBGb3IgZWFybGllci1zdGFnZSBleHBlcmltZW50cywgd2Ugb2Z0ZW4gdXNlIHNpbXBsZXIgY2VsbCBsaW5lcyB0aGF0IGFyZSBlYXNpZXIgdG8gaGFuZGxlLiBUaGVzZSBsaW5lcyBhbGxvdyB1cyB0byBwZXJmb3JtIHN0dWRpZXMgYXQgbW9sZWN1bGFyIGxldmVsLCBzdWNoIGFzIHRlc3RpbmcgaG93IHdlbGwgYSB0aGVyYXB5IHJlc3RvcmVzIHByb3RlaW4gcHJvZHVjdGlvbi4gV2hpbGUgdGhleSBkbyBub3QgZnVsbHkgcmVwcmVzZW50IHRoZSBwcmltYXJ5IGVwaXRoZWxpYWwgZW52aXJvbm1lbnQgb2YgdGhlIGx1bmdzLCB0aGV5IGFyZSB1c2VmdWwgZm9yIGluaXRpYWwgdmFsaWRhdGlvbiBzdGVwcyBiZWZvcmUgbW92aW5nIG9uIHRvIG1vcmUgY29tcGxleCBtb2RlbHMgbGlrZSBBTEkgY3VsdHVyZXMuXCIgLz5cclxuICAgICAgPFFhQm94IHE9XCJXaGF0IGFyZSB5b3VyIHRob3VnaHRzIG9uIHVzaW5nIGxpcGlkIG5hbm9wYXJ0aWNsZXMgKExOUHMpIHZlcnN1cyBvdGhlciBkZWxpdmVyeSBzeXN0ZW1zLCBsaWtlIEFBViB2ZWN0b3JzP1wiIGE9XCJMaXBpZCBuYW5vcGFydGljbGVzIChMTlBzKSBhcmUgYSBwcm9taXNpbmcgZGVsaXZlcnkgc3lzdGVtIGZvciBtYW55IGdlbmV0aWMgdGhlcmFwaWVzLCBidXQgdGhleSBoYXZlIGxpbWl0YXRpb25zLiBXaGlsZSBMTlBzIGNhbiBlZmZlY3RpdmVseSB0YXJnZXQgY2VydGFpbiBvcmdhbnMsIHN1Y2ggYXMgdGhlIGx1bmdzIGFuZCBsaXZlciwgdGhleSBjYW5ub3QgY3Jvc3MgdGhlIGJsb29kLWJyYWluIGJhcnJpZXIgYW5kIHRodXMgdW5zdWl0YWJsZSAoZm9yIG5vdykgdG8gdGFyZ2V0IG5ldXJvbmFsIHBhdGhvbG9naWVzLiBGb3IgdGhlc2UgY29uZGl0aW9ucywgYWRlbm8tYXNzb2NpYXRlZCB2aXJhbCAoQUFWKSB2ZWN0b3JzIG1heSBiZSBtb3JlIGVmZmVjdGl2ZSwgYXMgdGhleSBleGhpYml0IGFuIGluaGVyZW50IGFiaWxpdHkgdG8gY3Jvc3MgdGhlIGJsb29kLWJyYWluIGJhcnJpZXIuIEZvciBDRiBzcGVjaWZpY2FsbHksIHdlIGhhdmUgdXNlZCBMTlBzIHRvIGRlbGl2ZXIgc3VwLXRSTkFzIGRpcmVjdGx5IHRvIHRoZSBsdW5ncy4gV2UgdGVhbWVkIHVwIHdpdGggYW4gVVMgY29tcGFueSB0aGF0IGRldmVsb3BzIHNhZmUgTE5QcyB1c2VkIGFsc28gZm9yIHZhY2NpbmVzLiBEZWxpdmVyeSBtZXRob2RzIGxpa2UgaW50cmF0cmFjaGVhbCBpbnN0aWxsYXRpb25cdTIwMTR3aGVyZSB0aGUgTE5QcyBhcmUgaW50cm9kdWNlZCBpbnRvIHRoZSB0cmFjaGVhXHUyMDE0YWxsb3cgZm9yIHRhcmdldGluZyB0aGUgbHVuZyB0aXNzdWUgbW9yZSBkaXJlY3RseSwgd2hpY2ggaXMgY3JpdGljYWwgZm9yIHRyZWF0aW5nIENGLlwiIC8+XHJcbiAgICAgIDxRYUJveCBxPVwiSG93IGRvIHlvdSB2aWV3IHByaW1lIGVkaXRpbmcgY29tcGFyZWQgdG8gb3RoZXIgZ2VuZSBlZGl0aW5nIHRlY2hub2xvZ2llcz9cIiBhPVwiUHJpbWUgZWRpdGluZyBpcyBhbiBleGNpdGluZyBkZXZlbG9wbWVudCBpbiB0aGUgZmllbGQgb2YgZ2VuZSBlZGl0aW5nLCBidXQgaXQgaXMgaW1wb3J0YW50IHRvIHJlY29nbml6ZSB0aGF0IG5vIHNpbmdsZSBhcHByb2FjaCBpcyB1bml2ZXJzYWxseSBzdXBlcmlvci4gVGVjaG5vbG9naWVzIGxpa2UgcHJpbWUgZWRpdGluZywgQ1JJU1BSLUNhcywgYW5kIG91ciBvd24gdFJOQS1iYXNlZCB0aGVyYXBpZXMgZWFjaCBoYXZlIHRoZWlyIHN0cmVuZ3RocyBhbmQgbGltaXRhdGlvbnMuIEZvciBpbnN0YW5jZSwgcHJpbWUgZWRpdGluZyBvZmZlcnMgYSBoaWdobHkgcHJlY2lzZSBtZXRob2QgZm9yIGNvcnJlY3RpbmcgbXV0YXRpb25zIGRpcmVjdGx5IGF0IHRoZSBETkEgbGV2ZWwsIHBvdGVudGlhbGx5IHByb3ZpZGluZyBhIG9uZS10aW1lLCBsaWZlbG9uZyBjdXJlLiBIb3dldmVyLCBvdXIgYXBwcm9hY2gsIHdoaWNoIGZvY3VzZXMgb24gcmVzdG9yaW5nIG1STkEgdHJhbnNsYXRpb24sIGRvZXMgbm90IGludHJvZHVjZSBwZXJtYW5lbnQgY2hhbmdlcyB0byB0aGUgZ2Vub21lIGFuZCB1bmZvcmVzZWVuLCBhbHNvIGluZGl2aWR1dW0tc3BlY2lmaWMgc2lkZSBlZmZlY3RzLCBjYW4gYmUgY291bnRlcmFjdGVkIGJ5IGltbWVkaWF0ZSB0ZXJtaW5hdGlvbiBvZiB0aGUgdGhlcmFweS4gSW4gdHVybiwgaXQgcmVxdWlyZXMgY29udGludW91cyByZS1hZG1pbmlzdHJhdGlvbiBvdmVyIHRpbWUuIFVsdGltYXRlbHksIHRoZSBzYWZldHkgYW5kIGVmZmljYWN5IG9mIGFueSBhcHByb2FjaCBtdXN0IGJlIGNhcmVmdWxseSB3ZWlnaGVkLiBXZSBhcmUgbm90IHlldCBhdCBhIHBvaW50IHdoZXJlIHdlIGNhbiBkZWZpbml0aXZlbHkgcmFuayB0aGVzZSB0ZWNobm9sb2dpZXMgYmVjYXVzZSB0aGUgZmllbGQgaXMgc3RpbGwgZXZvbHZpbmcuIEVhY2ggYXBwcm9hY2ggaGFzIHBvdGVudGlhbCwgYW5kIHRoZSBjaG9pY2Ugb2Ygd2hpY2ggdG8gdXNlIHdpbGwgbGlrZWx5IGRlcGVuZCBvbiB0aGUgc3BlY2lmaWMgZGlzZWFzZSBhbmQgbXV0YXRpb24gYmVpbmcgdGFyZ2V0ZWQuXCIgLz5cclxuICAgIDwvPixcclxuICAgIG1vbnRoczogXCJTZXB0ZW1iZXJcIixcclxuICAgIHBpY3R1cmV1cmxfaW50ZXJ2aWV3OiBcImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9mb3Itd2lraS10ZXh0cy9pbnRlcnZpZXctaWduYXRvdmEvaW50ZXJ2aWV3LWluZ2F0b3ZhLndlYnAgXCIsXHJcbiAgfSxcclxuICB7XHJcbiAgICB2b3JuYW1lOiBcIidNdWtvRGlubydcIixcclxuICAgIG5hY2hubmFtZTogXCJUaG9tYXMgTWFsZW5rZSBcIixcclxuICAgIGpvYjogXCJQYXRpZW50XCIsXHJcbiAgICBhZmZpbGlhdGlvbjogXCJhbmQgQ0YgQWN0aXZpc3RcIixcclxuICAgIHBpY3R1cmV1cmw6IHBpY3NbJ211a29kaW5vJ10sXHJcbiAgICB0YWc6IFwiUGF0aWVudFwiLFxyXG4gICAgaGVhZGluZzogXCJTaGFwaW5nIENGIFRoZXJhcGllczogTGVzc29ucyBMZWFybmVkIGZyb20gUGF0aWVudHMnIFJlYWwtV29ybGQgRXhwZXJpZW5jZXNcIixcclxuICAgIGludGVydmlld3RhYmlkOiBcImRpbm9cIixcclxuXHJcbiAgICBxdW90ZTogXCJMaXZpbmcgd2l0aCAgQ3lzdGljIEZpYnJvc2lzIGhhcyBiZWVuIGEgam91cm5leSBvZiBwZXJzZXZlcmFuY2UgYW5kIGFkYXB0YXRpb24uIERlc3BpdGUgdGhlIGNoYWxsZW5nZXMsIEkndmUgbGVhcm5lZCB0aGF0IHRha2luZyBwZXJzb25hbCByZXNwb25zaWJpbGl0eSBmb3IgbXkgaGVhbHRoLCBzdGF5aW5nIGluZm9ybWVkLCBhbmQgZW1icmFjaW5nIHRoZSBhZHZhbmNlbWVudHMgaW4gcmVzZWFyY2ggY2FuIGxlYWQgdG8gYSBtdWNoLWltcHJvdmVkIHF1YWxpdHkgb2YgbGlmZS5cIixcclxuICAgIGFpbW9mY29udGFjdDogWzxwPk91ciBnb2FsIGluIHJlYWNoaW5nIG91dCB0byAgQ3lzdGljIEZpYnJvc2lzIChDRikgcGF0aWVudHMgd2FzIHRvIGdhaW4gYSBmaXJzdGhhbmQgdW5kZXJzdGFuZGluZyBvZiB0aGVpciBkYXktdG8tZGF5IGV4cGVyaWVuY2VzIGxpdmluZyB3aXRoIHRoZSBjb25kaXRpb24uIFdlIGFpbWVkIHRvIGV4cGxvcmUgaG93IHJlY2VudCBhZHZhbmNlbWVudHMgaW4gdHJlYXRtZW50cyBoYXZlIGltcGFjdGVkIHRoZWlyIGxpdmVzIGFuZCB0cmFuc2Zvcm1lZCB0aGVpciBhcHByb2FjaCB0byBtYW5hZ2luZyB0aGUgZGlzZWFzZS4gVGhpcyBpbml0aWF0aXZlIGlzIHZpdGFsIGZvciBvdXIgcHJvamVjdCwgYXMgaXQgaGVscHMgdXMgY29tcHJlaGVuZCB0aGUgc2lnbmlmaWNhbmNlIG9mIHRoZXNlIHRyZWF0bWVudHMgYW5kIHRoZWlyIGJyb2FkZXIgaW1wbGljYXRpb25zLiBBIGtleSBhc3BlY3Qgb2Ygb3VyIG91dHJlYWNoIHdhcyBwYXJ0bmVyaW5nIHdpdGggdGhlIDxhIGhyZWY9XCJodHRwczovL3d3dy5pbnN0YWdyYW0uY29tL2FjY291bnRzL2xvZ2luLz9uZXh0PWh0dHBzJTNBJTJGJTJGd3d3Lmluc3RhZ3JhbS5jb20lMkZtdWtvZGlubyUyRiZpc19mcm9tX3JsZVwiID5NdWtvRGlubzwvYT5cclxuICAgICAgd2hvIGhhcyBleHRlbnNpdmUgcmVhY2ggd2l0aGluIHRoZSBDRiBjb21tdW5pdHkuIFRoaXMgY29sbGFib3JhdGlvbiBlbmFibGVkIHVzIHRvIGRpc3RyaWJ1dGUgb3VyIHN1cnZleSB3aWRlbHkgYW1vbmcgdGhvc2UgYWZmZWN0ZWQsIGFzIHdlIHJlY29nbml6ZWQgdGhhdCB3ZSBjb3VsZCBub3QgY29uZHVjdCBhcyBtYW55IGludGVydmlld3MgYXMgd2UgY291bGQgcmVhY2ggdGhyb3VnaCB0aGUgc3VydmV5LiBXZSBhbHNvIHNvdWdodCB0byBnYXRoZXIgaW5zaWdodHMgb24gcmVzZWFyY2ggcHJpb3JpdGllcyBhbmQgdGhlIGZ1dHVyZSBkaXJlY3Rpb24gb2YgQ0YgdGhlcmFwaWVzLiA8L3A+XSxcclxuICAgIGluc2lnaHRzOiBbPHA+RnJvbSB0YWxraW5nIHdpdGggdGhlIENGIHBhdGllbnQsIHdlIGdhaW5lZCBzb21lIHZhbHVhYmxlIGluc2lnaHRzIHRoYXQgaGF2ZSBzaGFwZWQgaG93IHdlIG1vdmUgZm9yd2FyZCB3aXRoIG91ciBwcm9qZWN0OiBcclxuICAgICAgRmlyc3RseSwgaGVhcmluZyBhYm91dCB0aGUgZGF5LXRvLWRheSBjaGFsbGVuZ2VzIHdpdGggY3VycmVudCBDRiB0cmVhdG1lbnRzIHdhcyBleWUtb3BlbmluZy4gSXQgaGlnaGxpZ2h0ZWQganVzdCBob3cgY3J1Y2lhbCBpdCBpcyBmb3IgdXMgdG8gZGV2ZWxvcCB0aGVyYXBpZXMgdGhhdCBhcmUgbm90IG9ubHkgZWZmZWN0aXZlIGJ1dCBhbHNvIG1ha2UgbGlmZSBlYXNpZXIgZm9yIHBhdGllbnRzLiBXZVx1MjAxOXZlIHRha2VuIHRoaXMgdG8gaGVhcnQgYW5kIGFyZSB3b3JraW5nIHRvIG1ha2Ugb3VyIHRyZWF0bWVudCBwcm9jZXNzIGFzIGVmZmljaWVudCBhbmQgdXNlci1mcmllbmRseSBhcyBwb3NzaWJsZS4gXHJcbiAgICAgIFRoZSBwYXRpZW50IGFsc28gdGFsa2VkIGFib3V0IHRoZSBoZWF2eSB0b2xsIHRoYXQgZXhpc3RpbmcgdHJlYXRtZW50cyBjYW4gdGFrZSwgYm90aCBpbiB0ZXJtcyBvZiB0aW1lIGFuZCBwaHlzaWNhbCBzdHJhaW4uIFRoaXMgZmVlZGJhY2sgaGFzIHB1c2hlZCB1cyB0byBmb2N1cyBvbiBzdHJlYW1saW5pbmcgb3VyIGFwcHJvYWNoLCBlc3BlY2lhbGx5IHdpdGggb3VyIHByaW1lIGVkaXRpbmcgYW5kIGluaGFsYXRpb24gdGhlcmFweS4gV2Ugd2FudCB0byBjdXQgZG93biBvbiB0aGUgY29tcGxleGl0eSBhbmQgZnJlcXVlbmN5IG9mIHRyZWF0bWVudHMsIG1ha2luZyB0aGluZ3Mgc2ltcGxlciBhbmQgbGVzcyBidXJkZW5zb21lIGZvciBwYXRpZW50cy4gXHJcbiAgICAgIFdlIGFsc28gbGVhcm5lZCBhYm91dCB0aGUgb25nb2luZyBuZWVkIGZvciBtb3JlIGFkdmFuY2VkIHRoZXJhcGllcy4gVGhlIHBhdGllbnQgc3RyZXNzZWQgdGhlIGltcG9ydGFuY2Ugb2YgY29udGludWluZyB0byBwdXNoIHRoZSBib3VuZGFyaWVzIHdpdGggbW9kdWxhdG9yIHRoZXJhcGllcyBhbmQgZ2VuZSBlZGl0aW5nLiBUaGlzIGhhcyByZWFsbHkgZHJpdmVuIHVzIHRvIHByaW9yaXRpemUgb3VyIHNwcmF5LWRyaWVkIGxpcGlkIG5hbm9wYXJ0aWNsZXMgKExOUHMpIGFwcHJvYWNoLCB3aGljaCBhaW1zIHRvIGRlbGl2ZXIgZ2VuZS1lZGl0aW5nIHRvb2xzIHN0cmFpZ2h0IHRvIHRoZSBsdW5ncywgdGFja2xpbmcgdGhlIHJvb3QgY2F1c2Ugb2YgQ0YuIFxyXG4gICAgICBUaGUgZGlzY3Vzc2lvbiBhbHNvIGdhdmUgdXMgYSBjbGVhcmVyIHBpY3R1cmUgb2YgdGhlIGdsb2JhbCBkaXNwYXJpdGllcyBpbiBDRiBjYXJlLiBJdCBiZWNhbWUgZXZpZGVudCB0aGF0IGFjY2VzcyB0byBhZHZhbmNlZCB0cmVhdG1lbnRzIHZhcmllcyBhIGxvdCBhcm91bmQgdGhlIHdvcmxkLiBUaGlzIGhhcyBtYWRlIHVzIHRoaW5rIGFib3V0IGhvdyB3ZSBjYW4gc2NhbGUgb3VyIHRoZXJhcHkgdG8gYmUgbW9yZSBhY2Nlc3NpYmxlLCBldmVuIGluIHBsYWNlcyB3aXRoIGZld2VyIHJlc291cmNlcy4gXHJcbiAgICAgIFRoZSBwYXRpZW50XHUyMDE5cyBwZXJzb25hbCBleHBlcmllbmNlcyB1bmRlcnNjb3JlZCB0aGUgbmVlZCBmb3IgdHJlYXRtZW50cyB0aGF0IGFyZSB0YWlsb3JlZCB0byBpbmRpdmlkdWFsIG5lZWRzLiBXZVx1MjAxOXJlIHVzaW5nIHRoaXMgaW5zaWdodCB0byBtYWtlIHN1cmUgb3VyIHRoZXJhcHkgY2FuIGJlIGFkYXB0ZWQgdG8gZGlmZmVyZW50IGdlbmV0aWMgbXV0YXRpb25zIGFuZCBwYXRpZW50IHJlc3BvbnNlcy4gXHJcbiAgICAgIEZpbmFsbHksIHRoZWlyIGVtcGhhc2lzIG9uIGVuenltZSBkZXZlbG9wbWVudCBhbmQgZ2VuZSB0aGVyYXB5IGhhcyBpbmZsdWVuY2VkIG91ciByZXNlYXJjaCBmb2N1cy4gV2VcdTIwMTlyZSBub3cgcHJpb3JpdGl6aW5nIHRoZXNlIGFyZWFzIHRvIGVuc3VyZSBvdXIgd29yayBhZGRyZXNzZXMgYm90aCBjdXJyZW50IG5lZWRzIGFuZCBmdXR1cmUgcG9zc2liaWxpdGllcyBpbiBDRiB0cmVhdG1lbnQuIFxyXG4gICAgICBPdmVyYWxsLCB0aGVzZSBpbnNpZ2h0cyBoYXZlIHJlYWxseSBoZWxwZWQgdXMgYWxpZ24gb3VyIHByb2plY3Qgd2l0aCB0aGUgcmVhbC13b3JsZCBuZWVkcyBvZiBDRiBwYXRpZW50cywgbWFraW5nIHN1cmUgdGhhdCB3aGF0IHdlXHUyMDE5cmUgZGV2ZWxvcGluZyBpcyBib3RoIHByYWN0aWNhbCBhbmQgaW1wYWN0ZnVsLiA8L3A+XSxcclxuICAgIGltcGxlbWVudGF0aW9uOiBbPHA+V2UgaW5jb3Jwb3JhdGVkIHRoZSBDRiBwYXRpZW50XHUyMDE5cyBpbnNpZ2h0cyBpbnRvIG91ciBwcm9qZWN0IGJ5IG1ha2luZyBzZXZlcmFsIGtleSBhZGp1c3RtZW50cyB0byBiZXR0ZXIgYWxpZ24gd2l0aCB0aGUgcmVhbC13b3JsZCBuZWVkcyBvZiBDRiBwYXRpZW50cy4gVW5kZXJzdGFuZGluZyB0aGUgY2hhbGxlbmdlcyB0aGV5IGZhY2UgYW5kIHRoZSBpbXBhY3Qgb2YgY3VycmVudCB0cmVhdG1lbnRzIGhlbHBlZCB1cyByZWZpbmUgb3VyIGFwcHJvYWNoIHNpZ25pZmljYW50bHkuIFxyXG4gICAgICBGaXJzdGx5LCB3ZSBmb2N1c2VkIG9uIGRldmVsb3BpbmcgcHJpbWUgZWRpdGluZyB2aWEgaW5oYWxhdGlvbiB0aGVyYXB5IHdpdGggc3ByYXktZHJpZWQgbGlwaWQgbmFub3BhcnRpY2xlcyAoTE5QcykuIFRoaXMgbWV0aG9kIGRpcmVjdGx5IHRhcmdldHMgZ2VuZXRpYyBtdXRhdGlvbnMgaW4gdGhlIGx1bmdzLCBhZGRyZXNzaW5nIHRoZSBwYXRpZW50XHUyMDE5cyBuZWVkIGZvciBtb3JlIGVmZmVjdGl2ZSBhbmQgbGVzcyBpbnZhc2l2ZSB0cmVhdG1lbnRzLiBXZVx1MjAxOXJlIGFsc28gZmluZS10dW5pbmcgdGhlIGZvcm11bGF0aW9uIGFuZCBkZWxpdmVyeSBvZiBvdXIgTE5QcyB0byBlbnN1cmUgdGhleSByZWFjaCBsdW5nIHRpc3N1ZSBlZmZpY2llbnRseSB3aGlsZSBtaW5pbWl6aW5nIGFueSBkaXNjb21mb3J0LiBcclxuICAgICAgVGhlIGZlZWRiYWNrIG9uIGdsb2JhbCBkaXNwYXJpdGllcyBpbiBDRiBjYXJlIGhpZ2hsaWdodGVkIHRoZSBpbXBvcnRhbmNlIG9mIGNyZWF0aW5nIGEgdHJlYXRtZW50IHRoYXQgaXMgbm90IG9ubHkgZWZmZWN0aXZlIGJ1dCBhbHNvIGFmZm9yZGFibGUgYW5kIGFjY2Vzc2libGUuIFdlXHUyMDE5cmUgY29uc2lkZXJpbmcgaG93IHRvIHNjYWxlIG91ciB0aGVyYXB5IHRvIG1ha2UgaXQgYXZhaWxhYmxlIGluIHJlZ2lvbnMgd2l0aCBsaW1pdGVkIGFjY2VzcyB0byBhZHZhbmNlZCB0cmVhdG1lbnRzLiAgICBcclxuICAgICAgQWRkaXRpb25hbGx5LCB0aGUgZW1waGFzaXMgb24gdGhlIG5lZWQgZm9yIGNvbnRpbnVlZCBhZHZhbmNlbWVudHMgaW4gZW56eW1lIGRldmVsb3BtZW50IGFuZCBnZW5lIHRoZXJhcHkgaGFzIGd1aWRlZCB1cyB0byBiYWxhbmNlIGltbWVkaWF0ZSB0aGVyYXBldXRpYyBiZW5lZml0cyB3aXRoIGxvbmctdGVybSByZXNlYXJjaCBnb2Fscy4gVGhpcyBlbnN1cmVzIHRoYXQgb3VyIHByb2plY3QgYWRkcmVzc2VzIGJvdGggY3VycmVudCBuZWVkcyBhbmQgZnV0dXJlIHBvc3NpYmlsaXRpZXMgaW4gQ0YgdHJlYXRtZW50LiBcclxuICAgICAgQnkgaW50ZWdyYXRpbmcgdGhlc2UgaW5zaWdodHMsIHdlIGFpbSB0byBlbnN1cmUgb3VyIHByb2plY3Qgbm90IG9ubHkgYWR2YW5jZXMgc2NpZW50aWZpYyB1bmRlcnN0YW5kaW5nIGJ1dCBhbHNvIG1lZXRzIHRoZSBwcmFjdGljYWwgbmVlZHMgb2YgQ0YgcGF0aWVudHMsIHVsdGltYXRlbHkgbGVhZGluZyB0byBtb3JlIGVmZmVjdGl2ZSBhbmQgYWNjZXNzaWJsZSB0cmVhdG1lbnRzLiA8L3A+XSxcclxuICAgIHN1bW1hcnk6IFwiVGhlIGFpbSBvZiBvdXIgb3V0cmVhY2ggdG8gIEN5c3RpYyBGaWJyb3NpcyAoQ0YpIHBhdGllbnRzIHdhcyB0byBnYWluIGluc2lnaHRzIGludG8gdGhlaXIgZGFpbHkgZXhwZXJpZW5jZXMgYW5kIGhvdyByZWNlbnQgdHJlYXRtZW50IGFkdmFuY2VtZW50cyBoYXZlIGFmZmVjdGVkIHRoZWlyIGxpdmVzLiBQYXJ0bmVyaW5nIHdpdGggTXVrb0Rpbm8gYWxsb3dlZCB1cyB0byBkaXN0cmlidXRlIGEgc3VydmV5IHdpZGVseSwgYXMgaW50ZXJ2aWV3cyB3ZXJlIGxpbWl0ZWQuIFRocm91Z2ggZGlzY3Vzc2lvbnMgd2l0aCBwYXRpZW50cywgd2UgbGVhcm5lZCBhYm91dCB0aGUgY2hhbGxlbmdlcyBwb3NlZCBieSBjdXJyZW50IHRyZWF0bWVudHMsIGVtcGhhc2l6aW5nIHRoZSBuZWVkIGZvciB0aGVyYXBpZXMgdGhhdCBzaW1wbGlmeSBtYW5hZ2VtZW50IGFuZCByZWR1Y2UgcGh5c2ljYWwgc3RyYWluLiBUaGlzIGZlZWRiYWNrIGhhcyBkcml2ZW4gb3VyIGZvY3VzIG9uIGRldmVsb3BpbmcgbW9yZSBlZmZpY2llbnQgaW5oYWxhdGlvbiB0aGVyYXBpZXMgdXNpbmcgc3ByYXktZHJpZWQgbGlwaWQgbmFub3BhcnRpY2xlcyAoTE5QcykgdG8gZGVsaXZlciBnZW5lLWVkaXRpbmcgdG9vbHMgZGlyZWN0bHkgdG8gdGhlIGx1bmdzLiBXZSBhbHNvIHJlY29nbml6ZWQgdGhlIGdsb2JhbCBkaXNwYXJpdGllcyBpbiBDRiBjYXJlLCBtb3RpdmF0aW5nIHVzIHRvIGNvbnNpZGVyIHNjYWxhYmlsaXR5IGFuZCBhY2Nlc3NpYmlsaXR5IGZvciB0aG9zZSBpbiByZXNvdXJjZS1saW1pdGVkIHJlZ2lvbnMuIFBhdGllbnQgaW5zaWdodHMgdW5kZXJzY29yZWQgdGhlIGltcG9ydGFuY2Ugb2YgcGVyc29uYWxpemVkIHRyZWF0bWVudHMgdGFpbG9yZWQgdG8gaW5kaXZpZHVhbCBnZW5ldGljIG11dGF0aW9ucywgcHJvbXB0aW5nIHVzIHRvIHByaW9yaXRpemUgZW56eW1lIGRldmVsb3BtZW50IGFuZCBnZW5lIHRoZXJhcHkgaW4gb3VyIHJlc2VhcmNoLiBPdmVyYWxsLCB0aGVzZSBpbnNpZ2h0cyBoYXZlIHNoYXBlZCBvdXIgcHJvamVjdCB0byBhbGlnbiBjbG9zZWx5IHdpdGggdGhlIHJlYWwtd29ybGQgbmVlZHMgb2YgQ0YgcGF0aWVudHMsIGFpbWluZyBmb3IgaW1wYWN0ZnVsIGFuZCBhY2Nlc3NpYmxlIHNvbHV0aW9ucy5cIixcclxuICAgIG1vbnRoczogXCJTZXB0ZW1iZXJcIixcclxuICAgIGludGVydmlldzogPD5cclxuICAgIDxRYUJveCBxPVwiSG93IGRpZCB5b3UgY29tZSB1cCB3aXRoIHRoZSBuYW1lIFx1MjAxOE11a28tRGlub1x1MjAxOT9cIiBhPVwiVGhlIG5hbWUgXHUyMDE4TXVrby1EaW5vXHUyMDE5IGhhcyBhIHBlcnNvbmFsIGhpc3RvcnkuIEF0IGEgIEN5c3RpYyBGaWJyb3NpcyBtZWV0aW5nLCBhbm90aGVyIHBhdGllbnQgam9rZWQgdGhhdCBJLCBhcyBhIDU4LXllYXItb2xkICBDeXN0aWMgRmlicm9zaXMgcGF0aWVudCwgd2FzIGEgXHUyMDE4TXVrby1EaW5vXHUyMDE5LiBUaGUgbmFtZSBhbGx1ZGVzIHRvIG15IGFnZSwgYmVjYXVzZSBpbiB0aGUgcGFzdCwgIEN5c3RpYyBGaWJyb3NpcyBwYXRpZW50cyBoYWQgYSBtdWNoIHNob3J0ZXIgbGlmZSBleHBlY3RhbmN5LiBTbyBpdCB3YXMgdW51c3VhbCBmb3Igc29tZW9uZSB3aXRoIHRoZSBkaXNlYXNlIHRvIHN0aWxsIGJlIHNvIGFjdGl2ZSBhdCBteSBhZ2UuIFRoZSBuYW1lIHN0dWNrIC0gaW5pdGlhbGx5IGFzIGEgam9rZSwgYnV0IEkgaGF2ZSBzaW5jZSBhZG9wdGVkIGl0IGFzIGEga2luZCBvZiBuaWNrbmFtZS5cIiAvPlxyXG4gICAgPFFhQm94IHE9XCJXaGVuIHdlcmUgeW91IGRpYWdub3NlZCB3aXRoICBDeXN0aWMgRmlicm9zaXM/XCIgYT1cIkkgd2FzIGRpYWdub3NlZCBhdCB0aGUgYWdlIG9mIHNpeCBhZnRlciBhIHN3ZWF0IHRlc3QuIEkgaGFkIGxvc3QgYSBsb3Qgb2Ygd2VpZ2h0IGluIHRoZSBmaXJzdCB5ZWFyIG9mIG15IGxpZmUgYW5kICBDeXN0aWMgRmlicm9zaXMgd2FzIGFscmVhZHkgc3VzcGVjdGVkLCBidXQgaXQgdG9vayBhIHdoaWxlIGJlZm9yZSB0aGUgZGlhZ25vc2lzIHdhcyBhY3R1YWxseSBjb25maXJtZWQuXCIgLz5cclxuICAgIDxRYUJveCBxPVwiV2hhdCB3ZXJlIHlvdXIgdGhvdWdodHMgYW5kIHRob3NlIG9mIHlvdXIgZmFtaWx5IGFmdGVyIHRoZSBkaWFnbm9zaXM/XCIgYT1cIk15IG11bSB3YXMgbmF0dXJhbGx5IHNob2NrZWQuIFdoZW4geW91IGhhdmUgYSBjaGlsZCwgeW91IGFyZSBoYXBweSwgYW5kIHRoZW4gdG8gcmVjZWl2ZSBhIGRpYWdub3NpcyBsaWtlIHRoaXMgaXMgYSBodWdlIHNob2NrLiBGb3IgcGFyZW50cyBvZiAgQ3lzdGljIEZpYnJvc2lzIHBhdGllbnRzLCB0aGVyZSBpcyBhbHdheXMgYSBiYXNpYyBmZWFyIGJlY2F1c2UgdGhlIGRpc2Vhc2UgaXMgbGlmZS10aHJlYXRlbmluZy4gVG9kYXksIG1hbnkgcGFyZW50cyBob3BlIHRoYXQgdGhlaXIgY2hpbGQgd2lsbCBsaXZlIHRvIGJlIGF0IGxlYXN0IHR3byB5ZWFycyBvbGQgc28gdGhhdCB0aGV5IGNhbiByZWNlaXZlIG1vZHVsYXRvcnMgdGhhdCBjYW4gZ3JlYXRseSBpbXByb3ZlIHRoZSBzeW1wdG9tcy5cIiAvPlxyXG4gICAgPFFhQm94IHE9XCJXaGF0IG11dGF0aW9uIGRvIHlvdSBoYXZlP1wiIGE9XCJJIGhhdmUgdGhlIERlbHRhIDUwOCBtdXRhdGlvbiBpbiBkdXBsaWNhdGUsIGkuZS4gaG9tb3p5Z291cy4gVGhpcyBpcyB0aGUgbW9zdCBjb21tb24gZm9ybSBvZiAgQ3lzdGljIEZpYnJvc2lzIG11dGF0aW9uIGFuZCBjYXVzZXMgdGhlIHR5cGljYWwgc3ltcHRvbXMgYXNzb2NpYXRlZCB3aXRoIHRoZSBkaXNlYXNlLCBzdWNoIGFzIGRpZ2VzdGl2ZSBhbmQgbHVuZyBwcm9ibGVtcy5cIiAvPlxyXG4gICAgPFFhQm94IHE9XCJXaGF0IHdlcmUgdGhlIGZpcnN0IHN0ZXBzIGFmdGVyIHRoZSBkaWFnbm9zaXM/XCIgYT1cIkJhY2sgdGhlbiwgaW4gdGhlIDE5NjBzLCB0aGVyZSB3ZXJlIGhhcmRseSBhbnkgc3BlY2lhbGlzZWQgIEN5c3RpYyBGaWJyb3NpcyBvdXRwYXRpZW50IGNsaW5pY3MuIE15IHBhZWRpYXRyaWNpYW4gcHJlc2NyaWJlZCBtZSBQYW5rcmVvbiwgYW4gZWFybHkgZW56eW1lIHByZXBhcmF0aW9uIHRoYXQgd2FzIHN1cHBvc2VkIHRvIGhlbHAgbWUgd2l0aCBkaWdlc3Rpb24uIE5vd2FkYXlzLCB0aGUgcHJvY2VzcyBpcyB2ZXJ5IGRpZmZlcmVudDogQSBjaGlsZCBpcyByZWZlcnJlZCB0byBhIHNwZWNpYWxpc2VkIG91dHBhdGllbnQgY2xpbmljIGltbWVkaWF0ZWx5IGFmdGVyIGRpYWdub3Npcywgd2hlcmUgdGhleSByZWNlaXZlIGNvbXByZWhlbnNpdmUgY2FyZS4gVGhpcyBpbmNsdWRlcyBtZWRpY2FsIGNhcmUsIG51dHJpdGlvbmFsIGNvdW5zZWxsaW5nLCBwaHlzaW90aGVyYXB5IGFuZCBzdXBwb3J0IHdpdGggc29jaW8tbGVnYWwgaXNzdWVzLlwiIC8+XHJcbiAgICA8UWFCb3ggcT1cIkhvdyBoYXMgdHJlYXRtZW50IGNoYW5nZWQgb3ZlciB0aGUgeWVhcnM/XCIgYT1cIlRoZSB0cmVhdG1lbnQgb2YgIEN5c3RpYyBGaWJyb3NpcyBoYXMgaW1wcm92ZWQgZHJhbWF0aWNhbGx5IG92ZXIgdGhlIGxhc3QgZmV3IGRlY2FkZXMuIEluIHRoZSBwYXN0LCBsb3ctZmF0IGRpZXRzIGhhZCB0byBiZSBmb2xsb3dlZCwgZXZlbiB3aXRoIGVuenltZXMsIHdoaWNoIHdlcmUgbm90IGFzIGVmZmVjdGl2ZSBhcyB0b2RheSdzIHByZXBhcmF0aW9ucy4gQmFjayB0aGVuLCBpZiB5b3UgYXRlIHNvbWV0aGluZyBmYXR0eSBsaWtlIGNob2NvbGF0ZSBvciBjaGlwcywgeW91IGdvdCBkaWFycmhvZWEuIE5vd2FkYXlzLCBlbnp5bWVzIGFyZSBtdWNoIG1vcmUgZWZmZWN0aXZlIGFuZCBwYXRpZW50cyBoYXZlIGhhcmRseSBhbnkgZGlldGFyeSByZXN0cmljdGlvbnMuIEFzIGZhciBhcyBhbnRpYmlvdGljcyBhcmUgY29uY2VybmVkLCByZXNpc3RhbmNlIGlzIGEgYmlnIGlzc3VlLiBUaGF0J3Mgd2h5IGRvY3RvcnMgY2hhbmdlIGFudGliaW90aWNzIHJlZ3VsYXJseSB0byBwcmV2ZW50IHJlc2lzdGFuY2UgZnJvbSBkZXZlbG9waW5nLiBNb2R1bGF0b3JzIGhhdmUgcmV2b2x1dGlvbmlzZWQgdGhlIGxpdmVzIG9mIG1hbnkgcGF0aWVudHMsIGV2ZW4gaWYgdGhleSBjYW4gdHJpZ2dlciBwc3ljaG9sb2dpY2FsIHNpZGUgZWZmZWN0cyBpbiBzb21lLiBCdXQgdGhlIGFsdGVybmF0aXZlLCBmcmVxdWVudCBwbmV1bW9uaWEsIGlzIG11Y2ggd29yc2UuXCIgLz5cclxuICAgIDxRYUJveCBxPVwiSG93IGRvIHlvdSBhc3Nlc3MgdGhlIHByb2dyZXNzIG1hZGUgaW4gIEN5c3RpYyBGaWJyb3NpcyByZXNlYXJjaD9cIiBhPVwiVGhlIHByb2dyZXNzIGlzIGFic29sdXRlbHkgcmVtYXJrYWJsZS4gV2hlbiBJIHdhcyBib3JuLCB0aGUgYXZlcmFnZSBsaWZlIGV4cGVjdGFuY3kgb2YgYSAgQ3lzdGljIEZpYnJvc2lzIHBhdGllbnQgd2FzIG9uZSB0byBmaXZlIHllYXJzLiBUb2RheSB3ZSBhcmUgdGFsa2luZyBhYm91dCBvdmVyIDYwIHllYXJzLiBUaGlzIGRldmVsb3BtZW50IGlzIG5vdCBvbmx5IGR1ZSB0byBtZWRpY2FsIGlubm92YXRpb25zLCBidXQgYWxzbyB0byBiZXR0ZXIgYWRoZXJlbmNlIG9uIHRoZSBwYXJ0IG9mIHBhdGllbnRzLCB3aG8gZm9sbG93IHRoZWlyIHRoZXJhcGllcyBtb3JlIHJlZ3VsYXJseSBhbmQgZWZmaWNpZW50bHkuXCIgLz5cclxuICAgIDxRYUJveCBxPVwiSXMgdGhlcmUgYW55dGhpbmcgeW91IHdvdWxkIGxpa2UgdG8gc2VlIGluIHRoZSBmdXR1cmUgb2YgdGhlcmFweT9cIiBhPVwiUGVyc29uYWxseSwgSSBhbSBhbG1vc3QgcGVyZmVjdGx5IGhhcHB5LCBhcyB0aGUgY3VycmVudCBtb2R1bGF0b3JzIGhhdmUgZ2l2ZW4gbWUgYW4gZW5vcm1vdXNseSBpbXByb3ZlZCBxdWFsaXR5IG9mIGxpZmUuIE15IHdpc2ggZm9yIHRoZSBlbnRpcmUgIEN5c3RpYyBGaWJyb3NpcyBjb21tdW5pdHkgaXMgdGhhdCBnZW5lIHRoZXJhcHkgd2lsbCBiZSBmdXJ0aGVyIGRldmVsb3BlZC4gQSB0cmVhdG1lbnQgdGhhdCBhZGRyZXNzZXMgdGhlIGdlbmV0aWMgY2F1c2VzIG9mIHRoZSBkaXNlYXNlIHdvdWxkIGJlIGEgaHVnZSBicmVha3Rocm91Z2ggYW5kIGl0IHdvdWxkIGJlIGlkZWFsIGlmIHRoaXMgY291bGQgYmUgYWNoaWV2ZWQgd2l0aG91dCBzZXJpb3VzIHNpZGUgZWZmZWN0cy5cIiAvPlxyXG4gICAgPFFhQm94IHE9XCJXaGljaCBhcmVhcyBvZiByZXNlYXJjaCBkbyB5b3UgdGhpbmsgc2hvdWxkIGJlIHN0cmVuZ3RoZW5lZD9cIiBhPVwiVGhlcmUgYXJlIGEgZmV3IGFyZWFzIHRoYXQgSSBjb25zaWRlciB0byBiZSBwYXJ0aWN1bGFybHkgaW1wb3J0YW50LiBPbiB0aGUgb25lIGhhbmQsIGVuenltZXMgc2hvdWxkIGJlIGZ1cnRoZXIgZGV2ZWxvcGVkIGluIG9yZGVyIHRvIHdvcmsgZXZlbiBiZXR0ZXIgYW5kIGZ1cnRoZXIgbWluaW1pc2Ugc2lkZSBlZmZlY3RzLiBBbm90aGVyIG1ham9yIHRvcGljIGlzIGJhY3RlcmlvcGhhZ2UgcmVzZWFyY2gsIHdoaWNoIGNvdWxkIGhlbHAgcGF0aWVudHMgd2l0aCBtdWx0aS1yZXNpc3RhbnQgZ2VybXMuIE1vZHVsYXRvcnMgc2hvdWxkIGFsc28gYmUgZnVydGhlciBvcHRpbWlzZWQgYW5kLCBvZiBjb3Vyc2UsIGdlbmUgdGhlcmFweSBtdXN0IGJlIGRyaXZlbiBmb3J3YXJkIGluIG9yZGVyIHRvIGZpbmQgYSBzdXN0YWluYWJsZSBzb2x1dGlvbi5cIiAvPlxyXG4gICAgPFFhQm94IHE9XCJXaGF0IHJvbGUgZG9lcyBwZXJzb25hbCByZXNwb25zaWJpbGl0eSBwbGF5IGluICBDeXN0aWMgRmlicm9zaXM/XCIgYT1cIlBlcnNvbmFsIHJlc3BvbnNpYmlsaXR5IGlzIGV4dHJlbWVseSBpbXBvcnRhbnQuIEFueW9uZSBsaXZpbmcgd2l0aCAgQ3lzdGljIEZpYnJvc2lzIGhhcyB0byBkZWFsIGludGVuc2l2ZWx5IHdpdGggdGhlaXIgb3duIGRpc2Vhc2UgYW5kIHRha2UgcmVzcG9uc2liaWxpdHkgZm9yIHRoZWlyIGhlYWx0aC4gVGhpcyBtZWFucyByZWd1bGFybHkgaW5mb3JtaW5nIHlvdXJzZWxmIGFib3V0IG5ldyB0cmVhdG1lbnQgb3B0aW9ucyBhbmQgYmVpbmcgZGlzY2lwbGluZWQgYWJvdXQgeW91ciBvd24gdHJlYXRtZW50LiBJZiB5b3UgZG9uJ3QgdGFrZSBjYXJlIG9mIHlvdXJzZWxmLCB5b3UgcnVuIHRoZSByaXNrIG9mIG5vdCBmdWxseSB1dGlsaXNpbmcgdGhlIGFkdmFuY2VzIGluIG1lZGljaW5lLiBUaGUgaGVhbHRoY2FyZSBzeXN0ZW0gZ2l2ZXMgeW91IG1hbnkgb3B0aW9ucywgYnV0IHlvdSBoYXZlIHRvIGFjdGl2ZWx5IHV0aWxpc2UgdGhlbS4gTHVjayBkZWZpbml0ZWx5IHBsYXlzIGEgcm9sZSwgYnV0IGl0IGlzIG5vdCBlbm91Z2ggb24gaXRzIG93bi4gSSBoYXZlIGJlZW4gbHVja3kgaW4gbXkgbWVkaWNhbCBoaXN0b3J5IGJlY2F1c2UgSSBsaXZlIGluIGEgY291bnRyeSB3aXRoIGdvb2QgYWNjZXNzIHRvIG1lZGljYWwgY2FyZSBhbmQgaGF2ZSBiZWVuIGFibGUgdG8gYmVuZWZpdCBmcm9tIHRoZSBtb2R1bGF0b3JzLiBCdXQgZXZlbiB0aGUgYmVzdCBsdWNrIGRvZXNuJ3QgaGVscCB3aXRob3V0IGluaXRpYXRpdmUgYW5kIGNvbW1pdG1lbnQuIFlvdSBoYXZlIHRvIHBsYXkgYW4gYWN0aXZlIHJvbGUgaW4gbWFraW5nIHRoZSBtb3N0IG9mIHRoZSBvcHBvcnR1bml0aWVzIHRoYXQgbGlmZSBvZmZlcnMgeW91LlwiIC8+XHJcbiAgICA8UWFCb3ggcT1cIldoYXQgZG9lcyB5b3VyIGRhaWx5IHJvdXRpbmUgbG9vayBsaWtlP1wiIGE9XCJNeSBkYWlseSB0aGVyYXB5IHRha2VzIGFib3V0IHR3byB0byB0aHJlZSBob3Vycy4gVGhpcyBpbmNsdWRlcyB0YWtpbmcgZW56eW1lcyBhbmQgYW50aWJpb3RpY3MgYXMgd2VsbCBhcyBpbmhhbGF0aW9ucyB3aXRoIHNhbGluZSBzb2x1dGlvbiBhbmQgYW50aWJpb3RpY3MuIEkgYWxzbyBkbyByZWd1bGFyIGF1dG9nZW5pYyBkcmFpbmFnZSBhbmQgc3RyZXRjaGluZyBleGVyY2lzZXMgdG8gc3VwcG9ydCBteSBsdW5ncy4gSXQgaXMgaW1wb3J0YW50IHRvIHN0aWNrIHRvIHRoaXMgcm91dGluZSBjb25zaXN0ZW50bHksIGFzIGV2ZW4gYSBmZXcgZGF5cyB3aXRob3V0IHRoZXJhcHkgY2FuIGxlYWQgdG8gaW5mbGFtbWF0aW9uLlwiIC8+XHJcbiAgICA8UWFCb3ggcT1cIldoYXQgaXMgdGhlIG1vc3QgaW1wb3J0YW50IHBhcnQgb2YgeW91ciBkYWlseSByb3V0aW5lP1wiIGE9XCJJdCdzIGRpZmZpY3VsdCB0byBzaW5nbGUgb3V0IG9uZSBwYXJ0IGJlY2F1c2UgYWxsIGFzcGVjdHMgd29yayB0b2dldGhlci4gSWYgSSBsZWZ0IG91dCB0aGUgZW56eW1lcywgSSB3b3VsZCBvbmx5IGJlIGFibGUgdG8gZWF0IHNhbGFkIGJlY2F1c2UgbXkgYm9keSB3b3VsZG4ndCBiZSBhYmxlIHRvIGFic29yYiBhbnkgbnV0cmllbnRzLiBXaXRob3V0IHRoZSBtb2R1bGF0b3JzIGFuZCBhbnRpYmlvdGljcywgSSB3b3VsZCBxdWlja2x5IGdldCBwbmV1bW9uaWEsIHdoaWNoIG1lYW5zIEkgd291bGQgaGF2ZSB0byB0YWtlIHdlZWtzIG9mZi4gU28gcmVndWxhcml0eSBpcyB0aGUga2V5IHRvIHN0YXlpbmcgaGVhbHRoeSBpbiB0aGUgbG9uZyB0ZXJtLlwiIC8+XHJcbiAgICA8UWFCb3ggcT1cIkRvIHlvdSBkbyBhbnkgc3BvcnRpbmcgYWN0aXZpdGllcz9cIiBhPVwiWWVzLCBJIGN5Y2xlIHRvIHdvcmsgZXZlcnkgZGF5IGFuZCB0YWtlIHRoZSBzdGFpcnMgdG8gdGhlIGVpZ2h0aCBmbG9vciB3aGVyZSBJIGhhdmUgbXkgb2ZmaWNlLiBJIGRvbid0IGRvIGludGVuc2l2ZSBzcG9ydHMgbGlrZSBnb2luZyB0byB0aGUgZ3ltLCBidXQgSSBkbyBleGVyY2lzZSByZWd1bGFybHkgaW4gbXkgZXZlcnlkYXkgbGlmZSwgd2hpY2ggaXMgdmVyeSBpbXBvcnRhbnQgZm9yIG15IGhlYWx0aC5cIiAvPlxyXG4gICAgPFFhQm94IHE9XCJEbyB5b3UgdXNlIHBoeXNpb3RoZXJhcHk/XCIgYT1cIkkgZG8gbXkgb3duIHBoeXNpb3RoZXJhcHkgYXQgaG9tZSBhcyBJIGhhdmUgbGVhcm50IHRoZSB0ZWNobmlxdWVzIHdlbGwgb3ZlciB0aGUgeWVhcnMuIEkgdXNlZCB0byB2aXNpdCBhIHBoeXNpb3RoZXJhcGlzdCByZWd1bGFybHksIGJ1dCBJIG5vIGxvbmdlciBuZWVkIHRvLiBBbHNvLCB0aGVyZSBhcmUgaGFyZGx5IGFueSBzcGVjaWFsaXNlZCBwaHlzaW90aGVyYXBpc3RzIGZvciAgQ3lzdGljIEZpYnJvc2lzIHBhdGllbnRzIGluIG15IGFyZWEuXCIgLz5cclxuICAgIDxRYUJveCBxPVwiV2hpY2ggb3JnYW4gYWZmZWN0cyB5b3UgdGhlIG1vc3QgaW4geW91ciBldmVyeWRheSBsaWZlP1wiIGE9XCJUaGFua3MgdG8gdGhlIG1vZHVsYXRvcnMsIG5vbmUgYWN0dWFsbHkuIEJ1dCBpZiBJIGRvbid0IHRha2UgdGhlIGVuenltZXMsIEkgY2FuJ3QgZWF0IGFueXRoaW5nLCB3aGljaCBsZWFkcyB0byByYXBpZCB3ZWlnaHQgbG9zcy4gV2l0aG91dCB0aGUgYW50aWJpb3RpY3MgYW5kIG1vZHVsYXRvcnMsIEkgd291bGQgYmUgbW9yZSBzdXNjZXB0aWJsZSB0byBpbmZlY3Rpb25zIGFuZCB3b3VsZCBxdWlja2x5IGRldmVsb3AgcG5ldW1vbmlhLCB3aGljaCB3b3VsZCByZXF1aXJlIHdlZWtzIG9mIHJlY292ZXJ5LlwiIC8+XHJcbiAgICA8UWFCb3ggcT1cIkhhdmUgeW91IG9yIGFueW9uZSBjbG9zZSB0byB5b3UgdGFrZW4gcGFydCBpbiBjbGluaWNhbCB0cmlhbHM/XCIgYT1cIkkgcGVyc29uYWxseSBoYXZlIG5vdCBwYXJ0aWNpcGF0ZWQgaW4gY2xpbmljYWwgdHJpYWxzLCBidXQgSSBlbmNvdXJhZ2Ugb3RoZXIgcGF0aWVudHMgdG8gZG8gc28sIGFzIHRyaWFscyBhcmUgb2Z0ZW4gdGhlIG9ubHkgd2F5IHRvIHRlc3QgYW5kIGRldmVsb3AgbmV3IHRyZWF0bWVudHMuXCIgLz5cclxuICAgIDxRYUJveCBxPVwiV2hhdCBpbXBhY3QgZG8gYWR2YW5jZXMgaW4gIEN5c3RpYyBGaWJyb3NpcyByZXNlYXJjaCBoYXZlIG9uIHBhdGllbnRzJyBsaXZlcz9cIiBhPVwiQWR2YW5jZXMgaW4gIEN5c3RpYyBGaWJyb3NpcyByZXNlYXJjaCBoYXZlIGhhZCBhbiBlbm9ybW91cyBwb3NpdGl2ZSBpbXBhY3Qgb24gcGF0aWVudHMnIGxpdmVzLiBJbiB0aGUgcGFzdCwgbGlmZSBleHBlY3RhbmN5IGF0IGRpYWdub3NpcyB3YXMgb2Z0ZW4gb25seSBhIGZldyB5ZWFycy4gVG9kYXksIG1hbnkgcGF0aWVudHMgY2FuIGxpdmUgaW50byBvbGQgYWdlLiBUaGUgaW50cm9kdWN0aW9uIG9mIG1vZHVsYXRvcnMgdGhhdCBzcGVjaWZpY2FsbHkgc3RhYmlsaXNlIHRoZSBkaXNlYXNlLWNhdXNpbmcgcHJvdGVpbnMgYW5kIGltcHJvdmUgdGhlaXIgZnVuY3Rpb24gaGFzIHNpZ25pZmljYW50bHkgaW1wcm92ZWQgcGF0aWVudHMnIHF1YWxpdHkgb2YgbGlmZS4gUmVzZWFyY2ggaGFzIGFsc28gY29udHJpYnV0ZWQgdG8gcGF0aWVudHMgYmVpbmcgYmV0dGVyIGluZm9ybWVkIGFib3V0IHRoZWlyIGRpc2Vhc2UgYW5kIGhhdmluZyBlZmZlY3RpdmUgdGhlcmFwaWVzIGF2YWlsYWJsZSwgbGVhZGluZyB0byBiZXR0ZXIgb3ZlcmFsbCBkaXNlYXNlIG1hbmFnZW1lbnQuXCIgLz5cclxuICAgIDxRYUJveCBxPVwiSG93IGRvIHlvdSBhc3Nlc3MgdGhlIGRpZmZlcmVuY2VzIGluIHRoZSB0cmVhdG1lbnQgYW5kIHN1cHBvcnQgb2YgIEN5c3RpYyBGaWJyb3NpcyBwYXRpZW50cyBpbiBHZXJtYW55IGNvbXBhcmVkIHRvIG90aGVyIGNvdW50cmllcz9cIiBhPVwiSW4gRXVyb3BlLCBlc3BlY2lhbGx5IGluIEdlcm1hbnksIHdlIGxpdmUgYXQgYSB2ZXJ5IGhpZ2ggbWVkaWNhbCBsZXZlbCwgZXZlbiBpZiB0aGVyZSBhcmUgY2hhbGxlbmdlcyBzdWNoIGFzIHRoZSBzaG9ydGFnZSBvZiBzcGVjaWFsaXN0cy4gVGhlIGRpZmZlcmVuY2UgaW4gcHJvc3Blcml0eSBpbiB0aGUgVVNBIGlzIGdyZWF0ZXIsIGJ1dCBhdCB0aGUgc2FtZSB0aW1lIGl0IGlzIGFsc28gYSBkcml2ZXIgb2YgaW5ub3ZhdGlvbi4gQ29tcGFyZWQgdG8gY291bnRyaWVzIGFzIHNvbWUgdGhpcmQtd29ybGQgY291bnRyaWVzLCB3aGVyZSAgQ3lzdGljIEZpYnJvc2lzIHBhdGllbnRzIGhhdmUgdG8gd2FpdCBpbiBob3NwaXRhbHMgZm9yIGFwcG9pbnRtZW50cyBiZXR3ZWVuIGluZmVjdGlvdXMgcGF0aWVudHMsIHdlIGFyZSBjb21wbGFpbmluZyBhdCBhIGhpZ2ggbGV2ZWwgaGVyZS4gVGhlcmUgaXMgYWx3YXlzIHJvb20gZm9yIGltcHJvdmVtZW50LCBidXQgb3ZlcmFsbCB3ZSBoYXZlIGEgYnJpbGxpYW50IGhlYWx0aGNhcmUgc3lzdGVtLlwiIC8+XHJcbiAgICA8UWFCb3ggcT1cIkRvIHlvdSBmZWVsIHN1ZmZpY2llbnRseSBpbmZvcm1lZCBieSB0aGUgYXZhaWxhYmxlIHNvdXJjZXMgb2YgaW5mb3JtYXRpb24/XCIgYT1cIlllcywgdGhlIGluZm9ybWF0aW9uIHNpdHVhdGlvbiBpcyBnb29kLiBZb3UgY2FuIGZpbmQgc3VmZmljaWVudCBpbmZvcm1hdGlvbiBmcm9tIG9yZ2FuaXNhdGlvbnMgc3VjaCBhcyB0aGUgQ0YgRm91bmRhdGlvbiwgdGhlIENGIFRydXN0IGFuZCBNdWtvdmlzemlkb3NlIGUuVi4uIEhvd2V2ZXIsIHlvdSBoYXZlIHRvIGdldCBpbnZvbHZlZCB5b3Vyc2VsZiBhbmQgYWN0aXZlbHkgc2VlayBvdXQgdGhlIGluZm9ybWF0aW9uLlwiIC8+XHJcbiAgICA8UWFCb3ggcT1cIklzIHRoZXJlIGFueXRoaW5nIGVsc2UgeW91IHdvdWxkIGxpa2UgdG8gdGVsbCB1cz9cIiBhPVwiSXQgaXMgaW1wb3J0YW50IHRvIHVuZGVyc3RhbmQgdGhhdCBDRiBwYXRpZW50cyBhcmUgdmVyeSBkaWZmZXJlbnQsIGluY2x1ZGluZyBpbiB0ZXJtcyBvZiB0aGVpciBjdWx0dXJhbCBhbmQgZmFtaWx5IGJhY2tncm91bmQuIEluIGFkZGl0aW9uLCBzdXJ2ZXlzIGFuZCBxdWVzdGlvbnMgc2hvdWxkIGJlIHJldmlld2VkIGluIGFkdmFuY2UgYnkgcGF0aWVudHMgb3IgcGFyZW50cyB0byBlbnN1cmUgdGhhdCB0aGV5IGFyZSB1bmRlcnN0YW5kYWJsZSBhbmQgZG8gbm90IGNvbnRhaW4gdW5mb3J0dW5hdGUgd29yZGluZy4gSWYgeW91IG5lZWQgYW55IGhlbHAgb3IgYW55dGhpbmcsIEkgd291bGQgbG92ZSB0byBoZWxwIHlvdS4gU2VuZCBtZSB0aGUgbGluayBhcyBzb29uIGFzIHRoZSB3ZWJzaXRlIGlzIHJlYWR5IGFuZCBJJ2xsIGdpdmUgeW91IGZlZWRiYWNrLiBJIGNhbiBhbHNvIGNpcmN1bGF0ZSB0aGUgc3VydmV5IGluIHRoZSBjb21tdW5pdHkuIEknbSBhbHdheXMgYXZhaWxhYmxlIGlmIHlvdSBoYXZlIGFueSBmdXJ0aGVyIHF1ZXN0aW9ucyBvciBuZWVkIHN1cHBvcnQuXCIgLz5cclxuICAgIDwvPixcclxuICAgIHBpY3R1cmV1cmxfaW50ZXJ2aWV3OlwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2hwL3pvb20tbXVrb2Rpbm8ud2VicFwiLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgdGl0bGU6IFwiRHIuIEtlcnN0aW4gTGFuZHdlaHJcIixcclxuICAgIHZvcm5hbWU6IFwiU2VuaW9yIFBoeXNpY2lhbiBmb3IgUGVkaWF0cmljcyAmIFBuZXVtb2xvZ3kgYW5kXCIsXHJcbiAgICBuYWNobm5hbWU6IFwiRWxlbmEgV2llc2xlclwiLFxyXG4gICAgam9iOiBcIlBzeWNob2xvZ2lzdHMgaW4gY2hpbGQgJiBhZG9sZXNjZW50IG1lZGljaW5lIFwiLFxyXG4gICAgYWZmaWxpYXRpb246IFwiYXQgQmV0aGVsIEhvc3BpdGFsIGluIEJpZWxlZmVsZFwiLFxyXG4gICAgcGljdHVyZXVybDogcGljc1snYmV0aGVsJ10sXHJcbiAgICB0YWc6IFwiTWVkaWNhbCBQcm9mZXNzaW9uYWxcIixcclxuICAgIGhlYWRpbmc6IFwiSG9saXN0aWMgQ2FyZSBmb3IgQ3lzdGljIEZpYnJvc2lzOiBFeHBsb3JpbmcgdGhlIFBzeWNob2xvZ2ljYWwgSW1wYWN0IGFuZCBSb2xlIG9mIEdlbmUgVGhlcmFweVwiLFxyXG4gICAgaW50ZXJ2aWV3dGFiaWQ6IFwicHN5Y2hvbFwiLFxyXG5cclxuICAgIGxhbmd1YWdlOlwiZGVcIixcclxuICAgIHF1b3RlOiBcIk1hbnkgZmFtaWxpZXMgYXJlIGNvbmZyb250ZWQgd2l0aCBleHRyZW1lbHkgaGlnaCB0aGVyYXB5IGFuZCB0cmVhdG1lbnQgY29zdHMuIFRoZXNlIGFyZSBvZnRlbiBleHBlbnNpdmUgYW5kIHVuYXZhaWxhYmxlIGV2ZXJ5d2hlcmUuXCIsXHJcbiAgICBxdW90ZVZvcm5hbWU6IFwiRWxlbmFcIixcclxuICAgIHF1b3RlTmFjaG5hbWU6IFwiV2llc2xlciwgUGhzeWNob3RoZXJhcGlzdCBhdCBob3NwaXRhbCBCaWVsZWZlbGQgXCIsXHJcbiAgICBhaW1vZmNvbnRhY3Q6IFs8cD5JbiBwcmV2aW91cyBpbnRlcnZpZXdzLCA8SFBMaW5rdG9PdGhlckhQVGFiIHRhYj1cIm1heGZpcnN0XCIgdGV4dD1cIk1heFwiIC8+IGFuZCA8SFBMaW5rdG9PdGhlckhQVGFiIHRhYj1cImRpbm9cIiB0ZXh0PVwiVGhvbWFzXCIgLz4gc2hhcmVkIGhvdyB0aGUgcHN5Y2hvbG9naWNhbCBidXJkZW4gb2YgbGl2aW5nIHdpdGggIEN5c3RpYyBGaWJyb3NpcyB3ZWlnaHMgaGVhdmlseSBvbiBwYXRpZW50cy4gUGFyZW50cyA8SFBMaW5rdG9PdGhlckhQVGFiIHRhYj1cImpvc2h1YVwiIHRleHQ9XCJKb3NodWFcIiAvPiBhbmQgPEhQTGlua3RvT3RoZXJIUFRhYiB0YWI9XCJqdWxpYVwiIHRleHQ9XCJKdWxpYVwiIC8+IGFsc28gZW1waGFzaXplZCB0aGF0IG1lbnRhbCBoZWFsdGggY2hhbGxlbmdlcyBhcmUgYSBtYWpvciBpc3N1ZSBmb3IgYm90aCBwYXRpZW50cyBhbmQgdGhlaXIgZmFtaWxpZXMuIFRoaXMgcHJvbXB0ZWQgdXMgdG8gZGVsdmUgZGVlcGVyIGludG8gdGhlIHBzeWNob2xvZ2ljYWwsIHNvY2lhbCwgYW5kIG1lZGljYWwgZGlmZmljdWx0aWVzIGZhY2VkIGJ5ICBDeXN0aWMgRmlicm9zaXMgKENGKSBwYXRpZW50cyBhbmQgdGhlaXIgc3VwcG9ydCBzeXN0ZW1zLiBBIGtleSBnb2FsIHdhcyB0byB1bmRlcnN0YW5kIGhvdyBnZW5lIHRoZXJhcGllcyBhcmUgcGVyY2VpdmVkIGFuZCBob3cgdGhleSBtYXkgYWZmZWN0IHRoZSBxdWFsaXR5IG9mIGxpZmUgZm9yIENGIHBhdGllbnRzLiBXZSBhaW1lZCB0byBnYXRoZXIgaW5zaWdodHMgZnJvbSB2YXJpb3VzIHBlcnNwZWN0aXZlc1x1MjAxNHBhdGllbnRzLCBjYXJlZ2l2ZXJzLCBhbmQgaGVhbHRoY2FyZSBwcm9mZXNzaW9uYWxzXHUyMDE0dG8gZW5zdXJlIG91ciBwcm9qZWN0IGFsaWducyB3aXRoIHRoZWlyIG5lZWRzIGFuZCBhZGRyZXNzZXMgdGhlIG1vc3QgcHJlc3NpbmcgY2hhbGxlbmdlcy4gXHJcbiAgICAgIEdpdmVuIHRoZSBjb21wbGV4aXR5IG9mIHRoZXNlIHBzeWNob2xvZ2ljYWwgYXNwZWN0cywgaXQgd2FzIGNydWNpYWwgZm9yIHVzIHRvIGVuZ2FnZSB3aXRoIHBzeWNob2xvZ2lzdHMgdG8gZ2FpbiBhIHByb2Zlc3Npb25hbCwgZXhwZXJ0IG9waW5pb24uIFdlIHZpc2l0ZWQgdGhlIG1lZGljYWwgcHJvZmVzc2lvbmFscyBhdCB0aGUga2xpbmlrdW0gYmV0aGVsLiBUaGVpciBpbnB1dCBoZWxwZWQgdXMgYmV0dGVyIHVuZGVyc3RhbmQgdGhlIG1lbnRhbCBoZWFsdGggaW1wYWN0cyBvZiBDRiBhbmQgdGhlIHBvdGVudGlhbCBlbW90aW9uYWwgYWRqdXN0bWVudHMgcmVxdWlyZWQgd2hlbiBpbnRlZ3JhdGluZyBnZW5lIHRoZXJhcGllcyBpbnRvIHRyZWF0bWVudCBwbGFucy4gVGhpcyBndWlkYW5jZSB3YXMgaW52YWx1YWJsZSBpbiBzaGFwaW5nIG91ciBhcHByb2FjaCB0byBkZXZlbG9waW5nIGEgaG9saXN0aWMgc29sdXRpb24gdGhhdCBhZGRyZXNzZXMgbm90IG9ubHkgdGhlIG1lZGljYWwgbmVlZHMgYnV0IGFsc28gdGhlIGVtb3Rpb25hbCB3ZWxsLWJlaW5nIG9mIHBhdGllbnRzIGFuZCB0aGVpciBmYW1pbGllcy4gSXQgaW5mb3JtZWQgb3VyIEludGVncmF0ZWQgSGVhbHRoIFByb2dyYW0gKElIUCkgc3RyYXRlZ3ksIGVtcGhhc2l6aW5nIHRoZSBpbXBvcnRhbmNlIG9mIGludGVycGVyc29uYWwgcmVsYXRpb25zaGlwcywgZWZmZWN0aXZlIGNvbW11bmljYXRpb24sIGFuZCBjb21tdW5pdHkgZW5nYWdlbWVudCwgZXh0ZW5kaW5nIGJleW9uZCBwdXJlbHkgc2NpZW50aWZpYyBjb25zaWRlcmF0aW9ucy4gPC9wPl0sXHJcbiAgICBpbnNpZ2h0czogWzxwPlRocm91Z2ggb3VyIGRpc2N1c3Npb25zLCBzZXZlcmFsIHZhbHVhYmxlIGluc2lnaHRzIGVtZXJnZWQgdGhhdCBoYXZlIHNpZ25pZmljYW50bHkgZGVlcGVuZWQgb3VyIHVuZGVyc3RhbmRpbmcgb2YgdGhlIGNoYWxsZW5nZXMgZmFjZWQgYnkgQ0YgcGF0aWVudHMgYW5kIHRoZWlyIGZhbWlsaWVzOiBcclxuICAgICAgQ0YgcGF0aWVudHMgYW5kIHRoZWlyIGZhbWlsaWVzIG9mdGVuIGVuZHVyZSBpbW1lbnNlIHBzeWNob2xvZ2ljYWwgc3RyYWluLiBBbnhpZXR5LCBkZXByZXNzaW9uLCBhbmQgZnJ1c3RyYXRpb24gYXJlIGNvbW1vbiwgZXhhY2VyYmF0ZWQgYnkgdGhlIGNvbnN0YW50IHVuY2VydGFpbnR5IGFib3V0IHRoZSBkaXNlYXNlXHUyMDE5cyBwcm9ncmVzc2lvbiBhbmQgdGhlIGVmZmVjdGl2ZW5lc3Mgb2YgbmV3IHRyZWF0bWVudHMuIFRoZSBlbW90aW9uYWwgdG9sbCBpcyBwcm9mb3VuZFx1MjAxNG5vdCBqdXN0IGR1ZSB0byB0aGUgcGh5c2ljYWwgYnVyZGVuIG9mIHRoZSBpbGxuZXNzLCBidXQgYWxzbyBiZWNhdXNlIG9mIHRoZSBob3BlIGFuZCBmZWFyIHRoYXQgY29tZSB3aXRoIGVtZXJnaW5nIHRoZXJhcGllcy4gV2hpbGUgbmV3IHRyZWF0bWVudHMgYnJpbmcgcHJvbWlzZSwgdGhleSBhbHNvIHJhaXNlIGNvbmNlcm5zIGFib3V0IHRoZWlyIHBvdGVudGlhbCBzdWNjZXNzIGFuZCB0aGUgdW5rbm93bnMgdGhhdCBhY2NvbXBhbnkgdGhlbS4gXHJcbiAgICAgIFRoZXJlXHUyMDE5cyBhIHN0cm9uZyBzZW5zZSBvZiBvcHRpbWlzbSByZWdhcmRpbmcgZ2VuZSB0aGVyYXBpZXMsIGFzIHRoZXkgaG9sZCB0aGUgcG90ZW50aWFsIHRvIHNpZ25pZmljYW50bHkgaW1wcm92ZSBib3RoIGxpZmUgZXhwZWN0YW5jeSBhbmQgcXVhbGl0eSBvZiBsaWZlIGZvciBDRiBwYXRpZW50cy4gTWFueSBhcmUgZWFnZXIgdG8gZW1icmFjZSB0aGVzZSBpbm5vdmF0aW9ucywgc2VlaW5nIHRoZW0gYXMgYSBsb25nLWF3YWl0ZWQgYnJlYWt0aHJvdWdoLiBIb3dldmVyLCB0aGlzIGV4Y2l0ZW1lbnQgaXMgb2Z0ZW4gbWl4ZWQgd2l0aCBjb25jZXJucyBhYm91dCBzaWRlIGVmZmVjdHMsIHRoZSBhY2Nlc3NpYmlsaXR5IG9mIHRoZXNlIHRoZXJhcGllcywgYW5kIHRoZWlyIGxvbmctdGVybSBlZmZlY3RpdmVuZXNzLiBUaGUgcHJvc3BlY3Qgb2Ygc3VjaCB0cmVhdG1lbnRzIGJyaW5ncyBob3BlLCBidXQgYWxzbyBhIGRlZ3JlZSBvZiBzY2VwdGljaXNtLCBwYXJ0aWN1bGFybHkgYXJvdW5kIHdoZXRoZXIgdGhleSB3aWxsIGJlIGFjY2Vzc2libGUgdG8gYWxsIHdobyBuZWVkIHRoZW0uIFxyXG4gICAgICBQc3ljaG9sb2dpY2FsIHN1cHBvcnQsIGZhbWlseSBjb3Vuc2VsbGluZywgYW5kIHRoZSBpbnZvbHZlbWVudCBvZiBwYXRpZW50IGNvbW11bml0aWVzIGFyZSBlc3NlbnRpYWwgaW4gaGVscGluZyBwYXRpZW50cyBhbmQgdGhlaXIgZmFtaWxpZXMgY29wZSB3aXRoIHRoZSBlbW90aW9uYWwgYW5kIG1lbnRhbCBjaGFsbGVuZ2VzIG9mIGJvdGggdGhlIGRpc2Vhc2UgYW5kIGl0cyB0cmVhdG1lbnRzLiBUaGUgc3RyZW5ndGggb2YgdGhlc2Ugc3VwcG9ydCBzeXN0ZW1zIGNhbiBtYWtlIGEgcHJvZm91bmQgZGlmZmVyZW5jZSBpbiBob3cgd2VsbCBwYXRpZW50cyBuYXZpZ2F0ZSB0aGUgY2hhbGxlbmdlcyBvZiBsaXZpbmcgd2l0aCBDRiwgcGFydGljdWxhcmx5IHdoZW4gYWRhcHRpbmcgdG8gbmV3IHRoZXJhcGllcy4gXHJcbiAgICAgIFdlIGFsc28gbGVhcm5lZCB0aGF0IHdoaWxlIG5ldyB0aGVyYXBpZXMgYXJlIGV4Y2l0aW5nLCB0aGVpciBzdWNjZXNzIG9mdGVuIGRlcGVuZHMgb24gdGhlaXIgcHJhY3RpY2FsaXR5LiBUcmVhdG1lbnRzIHRoYXQgYXJlIGNvbXBsZXgsIGludmFzaXZlLCBvciBidXJkZW5zb21lIGFyZSBsZXNzIGxpa2VseSB0byBiZSBhZG9wdGVkLCBldmVuIGlmIHRoZXkgcHJvbWlzZSBzaWduaWZpY2FudCBiZW5lZml0cy4gU2ltcGxpY2l0eSwgZWFzZSBvZiB1c2UsIGFuZCByZWR1Y2luZyB0aGUgdHJlYXRtZW50IGJ1cmRlbiBhcmUgY3JpdGljYWwgZmFjdG9ycyBpbiBlbnN1cmluZyBwYXRpZW50cyBmdWxseSBlbmdhZ2Ugd2l0aCBhbmQgYmVuZWZpdCBmcm9tIHRoZXNlIHRoZXJhcGllcy4gXHJcbiAgICAgIFRoZXNlIGluc2lnaHRzIGhhdmUgc2hhcGVkIG91ciBhcHByb2FjaCwgcmVpbmZvcmNpbmcgdGhlIGltcG9ydGFuY2Ugb2YgY29uc2lkZXJpbmcgYm90aCB0aGUgcHN5Y2hvbG9naWNhbCBhbmQgcHJhY3RpY2FsIGFzcGVjdHMgb2YgbmV3IGdlbmUgdGhlcmFwaWVzLCB0byBiZXR0ZXIgYWRkcmVzcyB0aGUgbmVlZHMgb2YgQ0YgcGF0aWVudHMgYW5kIHRoZWlyIGZhbWlsaWVzLiA8L3A+XSxcclxuICAgIGltcGxlbWVudGF0aW9uOiBbPHA+VGhlc2UgZmluZGluZ3MgZGlyZWN0bHkgaW5mbHVlbmNlZCBzZXZlcmFsIGtleSBhcmVhcyBvZiB0aGUgcHJvamVjdC4gV2UgYWRhcHRlZCB0aGUgcHJvamVjdCB0byBlbXBoYXNpc2UgZWFzZSBvZiB1c2UgYW5kIG1pbmltYWwgZGlzcnVwdGlvbiB0byBwYXRpZW50cycgZGFpbHkgbGl2ZXMuIEZvciBleGFtcGxlLCB3ZSBmb2N1c2VkIG9uIGRldmVsb3BpbmcgYSB0aGVyYXB5IGRlbGl2ZXJ5IHN5c3RlbSB0aGF0IHdhcyBhcyBub24taW52YXNpdmUgYXMgcG9zc2libGUuIFJlY29nbmlzaW5nIHRoZSBtZW50YWwgaGVhbHRoIGNoYWxsZW5nZXMsIHdlIGludGVncmF0ZWQgb3VyIHByb2plY3Qgd2l0aCBhIHNpbXBsZSB0aGVyYXBldXRpYyBtZXRob2QgdG8gcmVkdWNlIHRoZSBtZW50YWwgYnVyZGVuIG9uIHBhdGllbnRzLiBXZSBoYXZlIGVtcGhhc2lzZWQgdHJhbnNwYXJlbmN5IGluIGNvbW11bmljYXRpbmcgdGhlIGJlbmVmaXRzLCByaXNrcyBhbmQgZXhwZWN0YXRpb25zIG9mIGdlbmUgdGhlcmFweSB0byBlbnN1cmUgdGhhdCBwYXRpZW50cyBoYXZlIGEgcmVhbGlzdGljIHVuZGVyc3RhbmRpbmcgb2YgdGhlIHBvdGVudGlhbCBvdXRjb21lcy4gVGhpcyBpbmNsdWRlcyB3b3JraW5nIGNsb3NlbHkgd2l0aCBwYXRpZW50IG9yZ2FuaXNhdGlvbnMgdG8gZGlzc2VtaW5hdGUgY2xlYXIgYW5kIGFjY3VyYXRlIGluZm9ybWF0aW9uLiBXZSBhcmUgYWN0aXZlbHkgZW5nYWdpbmcgd2l0aCBDRiBwYXRpZW50IGNvbW11bml0aWVzIGFuZCBoZWFsdGhjYXJlIHByb2Zlc3Npb25hbHMgdG8gZ2F0aGVyIG9uZ29pbmcgZmVlZGJhY2sgYW5kIGVuc3VyZSB0aGF0IHRoZSBwcm9qZWN0IGV2b2x2ZXMgYmFzZWQgb24gcmVhbCBwYXRpZW50IGV4cGVyaWVuY2VzIGFuZCBjaGFsbGVuZ2VzLiBUaGVyZWZvcmUgd2UgdXNlZCBvdXIgc3VydmV5IHRvIGdhdGhlciBmZWVkYmFjayBmcm9tIHBhdGllbnRzIGFuZCB0aGVpciBmYW1pbGllcy4gIFxyXG4gICAgICBCeSBpbnRlZ3JhdGluZyB0aGVzZSBpbnNpZ2h0cywgd2UgYWltIHRvIGNyZWF0ZSBhIGdlbmUgdGhlcmFweSBwcm9qZWN0IHRoYXQgYWRkcmVzc2VzIG5vdCBvbmx5IHRoZSBtZWRpY2FsIG5lZWRzLCBidXQgYWxzbyB0aGUgZW1vdGlvbmFsIGFuZCBwcmFjdGljYWwgY29uY2VybnMgb2YgQ0YgcGF0aWVudHMgYW5kIHRoZWlyIGZhbWlsaWVzLiA8L3A+XSxcclxuICAgIHN1bW1hcnk6IFwiT3VyIHByb2plY3QgYWltcyB0byBhZGRyZXNzIHRoZSBwc3ljaG9sb2dpY2FsIGFuZCBtZWRpY2FsIGNoYWxsZW5nZXMgZmFjZWQgYnkgIEN5c3RpYyBGaWJyb3NpcyAoQ0YpIHBhdGllbnRzIGFuZCB0aGVpciBmYW1pbGllcywgcGFydGljdWxhcmx5IHJlZ2FyZGluZyBnZW5lIHRoZXJhcGllcy4gV2UgZW5nYWdlZCB3aXRoIHBzeWNob2xvZ2lzdHMgYW5kIGdhdGhlcmVkIGluc2lnaHRzIGZyb20gcGF0aWVudHMgYW5kIGNhcmVnaXZlcnMsIHJldmVhbGluZyBzaWduaWZpY2FudCBlbW90aW9uYWwgc3RyYWluIGFuZCBhIG1peCBvZiBvcHRpbWlzbSBhbmQgY29uY2VybiBhYm91dCBuZXcgdHJlYXRtZW50cy4gS2V5IGZpbmRpbmdzIGhpZ2hsaWdodGVkIHRoZSBpbXBvcnRhbmNlIG9mIHBzeWNob2xvZ2ljYWwgc3VwcG9ydCBhbmQgdGhlIHByYWN0aWNhbGl0eSBvZiB0aGVyYXBpZXMgaW4gZW5zdXJpbmcgcGF0aWVudCBlbmdhZ2VtZW50LiBJbiByZXNwb25zZSwgd2UgYXJlIGRldmVsb3BpbmcgYSB1c2VyLWZyaWVuZGx5IHRoZXJhcHkgZGVsaXZlcnkgc3lzdGVtIHRoYXQgbWluaW1pemVzIGRpc3J1cHRpb24gdG8gZGFpbHkgbGlmZSB3aGlsZSBlbXBoYXNpemluZyB0cmFuc3BhcmVudCBjb21tdW5pY2F0aW9uIGFib3V0IHRyZWF0bWVudCByaXNrcyBhbmQgYmVuZWZpdHMuIE91ciBnb2FsIGlzIHRvIGNyZWF0ZSBhIGNvbXByZWhlbnNpdmUgZ2VuZSB0aGVyYXB5IHNvbHV0aW9uIHRoYXQgbWVldHMgdGhlIG1lZGljYWwgYW5kIGVtb3Rpb25hbCBuZWVkcyBvZiBDRiBwYXRpZW50cy5cIixcclxuICAgIG1vbnRoczogXCJTZXB0ZW1iZXJcIixcclxuICAgIGludGVydmlldzo8PlxyXG4gICAgPFFhQm94IHE9XCJXaGljaCBwc3ljaG9sb2dpY2FsIGNoYWxsZW5nZXMgYXJlIHBhcnRpY3VsYXJseSByZWxldmFudCBmb3IgIEN5c3RpYyBGaWJyb3NpcyBwYXRpZW50cz9cIiBhPVwiUHN5Y2hvbG9naWNhbCBwcm9ibGVtcyBhcmUgb2Z0ZW4gYSBtYWpvciBpc3N1ZSBmb3IgIEN5c3RpYyBGaWJyb3NpcyBwYXRpZW50cy4gTWFueSBwYXRpZW50cyBleHBlcmllbmNlIGFueGlldHkgYW5kIGRlcHJlc3Npb24sIGFuZCB0aGVpciBwYXJlbnRzIGFyZSBhbHNvIG9mdGVuIGFmZmVjdGVkLiBUaGlzIGlzIGV4YWNlcmJhdGVkIGJ5IHRoZSBjb25zdGFudCBzdHJhaW4gYW5kIHN0cmVzcyBhc3NvY2lhdGVkIHdpdGggdGhlIGRpc2Vhc2UuIFNwZWNpYWwgYXR0ZW50aW9uIGlzIHRoZXJlZm9yZSBwYWlkIHRvIHBzeWNob2xvZ2ljYWwgc3VwcG9ydCBkdXJpbmcgZGlhZ25vc2lzIGFuZCBvbmdvaW5nIHRyZWF0bWVudC4gUmVndWxhciBzY3JlZW5pbmdzIGZvciBhbnhpZXR5IGFuZCBkZXByZXNzaW9uIGFzIHdlbGwgYXMgdGhlIGVhcmx5IGludm9sdmVtZW50IG9mIHBhcmVudHMgaW4gdGhlIHRyZWF0bWVudCBwcm9jZXNzIGFyZSBjZW50cmFsIGNvbXBvbmVudHMgb2YgY2FyZS5cIi8+XHJcbiAgICA8UWFCb3ggcT1cIldoYXQgc2lnbmlmaWNhbmNlIGRvIHRoZSBuZXcgdGhlcmFwaWVzIGhhdmUgZm9yICBDeXN0aWMgRmlicm9zaXMgcGF0aWVudHM/XCIgYT1cIk5ldyB0aGVyYXBpZXMgYXJlIFx1MjAxOGdhbWUgY2hhbmdlcnNcdTIwMTkgZm9yICBDeXN0aWMgRmlicm9zaXMgcGF0aWVudHMsIGFzIHRoZXkgc2lnbmlmaWNhbnRseSBpbXByb3ZlIGxpZmUgZXhwZWN0YW5jeSBhbmQgcXVhbGl0eSBvZiBsaWZlLiBJbiB0aGUgcGFzdCwgIEN5c3RpYyBGaWJyb3NpcyB3YXMgbWFpbmx5IGEgcGFlZGlhdHJpYyBkaXNlYXNlIHdpdGggYSBzaG9ydCBsaWZlIGV4cGVjdGFuY3kuIFRvZGF5LCBuZXcgdGhlcmFwaWVzIG1ha2UgaXQgcG9zc2libGUgdG8gc2lnbmlmaWNhbnRseSBleHRlbmQgbGlmZSBleHBlY3RhbmN5IGFuZCBpbXByb3ZlIHF1YWxpdHkgb2YgbGlmZS4gTmV2ZXJ0aGVsZXNzLCB0aGUgZGlzZWFzZSBwZXJzaXN0cywgYW5kIHBhdGllbnRzIHN0aWxsIHJlcXVpcmUgY29tcHJlaGVuc2l2ZSB0cmVhdG1lbnQuIEltcHJvdmluZyBxdWFsaXR5IG9mIGxpZmUgdGhyb3VnaCBlYXJseSBhbmQgY29udGludW91cyB0aGVyYXB5IHRoZXJlZm9yZSByZW1haW5zIG9mIGdyZWF0IGltcG9ydGFuY2UuXCIvPlxyXG4gICAgPFFhQm94IHE9XCJIb3cgaXMgcHN5Y2hvbG9naWNhbCBzdXBwb3J0IGludGVncmF0ZWQgaW50byByZWd1bGFyIHRyZWF0bWVudD9cIiBhPVwiUHN5Y2hvbG9naWNhbCBzdXBwb3J0IGlzIGFuIGludGVncmFsIHBhcnQgb2YgdGhlIHRyZWF0bWVudCBvZiAgQ3lzdGljIEZpYnJvc2lzLiBDYXJlIGlzIHRha2VuIHRvIGVuc3VyZSB0aGF0IGJvdGggcGF0aWVudHMgYW5kIHRoZWlyIGZhbWlsaWVzIGFyZSBzdXBwb3J0ZWQgYXQgYW4gZWFybHkgc3RhZ2UuIFRoaXMgaW5jbHVkZXMgcmVndWxhciBzY3JlZW5pbmdzIGZvciBhbnhpZXR5IGFuZCBkZXByZXNzaW9uLCBwc3ljaG8tZWR1Y2F0aW9uYWwgbWVhc3VyZXMgYW5kLCBpZiBuZWNlc3NhcnksIGZ1cnRoZXIgcHN5Y2hvdGhlcmFwZXV0aWMgc3VwcG9ydC4gVGhlIHRlYW0gd29ya3Mgb24gYW4gaW50ZXJkaXNjaXBsaW5hcnkgYmFzaXMgdG8gZW5zdXJlIHRoYXQgYWxsIGFzcGVjdHMgb2YgcGF0aWVudCBjYXJlIGFyZSB0YWtlbiBpbnRvIGFjY291bnQuIElmIG5lY2Vzc2FyeSwgZXh0ZXJuYWwgaGVscCBpcyBhbHNvIGFycmFuZ2VkLlwiLz5cclxuICAgIDxRYUJveCBxPVwiSG93IGlzIGNvLW9wZXJhdGlvbiBiZXR3ZWVuIG1lZGljYWwgc3BlY2lhbGlzdHMgYW5kIHBzeWNob2xvZ2lzdHMgaW1wcm92ZWQ/XCIgYT1cIlRoZSBjb2xsYWJvcmF0aW9uIGJldHdlZW4gbWVkaWNhbCBzcGVjaWFsaXN0cyBhbmQgcHN5Y2hvbG9naXN0cyBpcyBjaGFyYWN0ZXJpc2VkIGJ5IHNob3J0IGNvbW11bmljYXRpb24gY2hhbm5lbHMgYW5kIGNsb3NlIGNvb3BlcmF0aW9uLiBTcGVjaWFsaXN0cyBjYW4gZXhjaGFuZ2UgaW5mb3JtYXRpb24gcXVpY2tseSBhbmQgbWFrZSBkZWNpc2lvbnMgdG9nZXRoZXIuIFRoaXMgZW5hYmxlcyBjb21wcmVoZW5zaXZlIGFuZCBjb29yZGluYXRlZCBjYXJlIGZvciBwYXRpZW50cy4gRWZmZWN0aXZlIGNvbW11bmljYXRpb24gY2hhbm5lbHMgYXJlIGFscmVhZHkgaW4gcGxhY2UgYW5kIHRoaXMgY2xvc2UgY28tb3BlcmF0aW9uIGlzIHNlZW4gYXMgdmVyeSBwb3NpdGl2ZS4gSW1wcm92ZW1lbnRzIGNvdWxkIGJlIGFjaGlldmVkIHRocm91Z2ggYWRkaXRpb25hbCB0aW1lIHNsb3RzIGZvciBkaWFsb2d1ZSBvciBleHBhbmRlZCByZXNvdXJjZXMuXCIvPlxyXG4gICAgPFFhQm94IHE9XCJIb3cgZG8gZmFtaWxpZXMgcmVhY3QgdG8gdGhlIG5ld3Mgb2YgYSBzZXJpb3VzIGRpYWdub3NpcyBhbmQgaG93IGltcG9ydGFudCBpcyBpdCB0aGF0IHRoZXkgcmVjZWl2ZSBzdXBwb3J0IGF0IGFuIGVhcmx5IHN0YWdlP1wiIGE9XCJGYW1pbGllcyBhcmUgb2Z0ZW4gc2hvY2tlZCBhdCBmaXJzdCB3aGVuIHRoZXkgcmVjZWl2ZSB0aGUgZGlhZ25vc2lzLiBUaGV5IGZpcnN0IGhhdmUgdG8gY29tZSB0byB0ZXJtcyB3aXRoIGl0IGFuZCBwcm9jZXNzIGl0LiBJbml0aWFsbHksIG1hbnkgZG9uJ3QgYXNrIGZvciBwc3ljaG9sb2dpY2FsIHN1cHBvcnQgc3RyYWlnaHQgYXdheSwgYWx0aG91Z2ggdGhhdCB3b3VsZCBiZSBoZWxwZnVsLiBJdCB3b3VsZCBiZSBnb29kIGlmIHRoZXkgd2VyZSBpbmZvcm1lZCBhYm91dCBhbGwgYXZhaWxhYmxlIHJlc291cmNlcyBhdCBhbiBlYXJseSBzdGFnZSwgZXZlbiBpZiB0aGV5IGRvbid0IHdhbnQgdG8gbWFrZSB1c2Ugb2YgdGhlbSBzdHJhaWdodCBhd2F5LlwiLz5cclxuICAgIDxRYUJveCBxPVwiSG93IGRvZXMgYWNjZXNzIHRvIGdlbmUgdGhlcmFweSBhZmZlY3QgdGhlIHBzeWNob2xvZ2ljYWwgZGlzdHJlc3Mgb2YgcGF0aWVudHMgYW5kIGZhbWlsaWVzP1wiIGE9XCJBY2Nlc3MgdG8gZ2VuZSB0aGVyYXB5IGNhbiBoYXZlIGEgc2lnbmlmaWNhbnQgaW1wYWN0IG9uIHBzeWNob2xvZ2ljYWwgZGlzdHJlc3MuIFdoZW4gdGhlcmFweSBpcyBlZmZlY3RpdmUsIGZhbWlsaWVzIG9mdGVuIHNlZSBncmVhdCBwcm9ncmVzcyBhbmQgZmVlbCByZWxpZXZlZC4gQnV0IGlmIHRoZXJlIGlzIG5vIHN1aXRhYmxlIHRoZXJhcHksIG1hbnkgYXJlIHN0dWNrIHdpdGggb2xkZXIsIGxlc3MgZWZmZWN0aXZlIHRyZWF0bWVudHMsIHdoaWNoIGNhbiBsZWFkIHRvIGZydXN0cmF0aW9uIGFuZCBhIHNlbnNlIG9mIGRpc2FkdmFudGFnZS4gVGhlIGRpZmZlcmVuY2UgaW4gcXVhbGl0eSBvZiBsaWZlIGFuZCBvdXRsb29rIGlzIGh1Z2UuXCIvPlxyXG4gICAgPFFhQm94IHE9XCJIb3cgZG8gcGF0aWVudHMgYW5kIGZhbWlsaWVzIGZlZWwgYWJvdXQgZ2VuZSB0aGVyYXB5IGNvbXBhcmVkIHRvIHRyYWRpdGlvbmFsIHRoZXJhcGllcz9cIiBhPVwiVGhlIHdpbGxpbmduZXNzIHRvIHBhcnRpY2lwYXRlIGluIGdlbmUgdGhlcmFwaWVzIGlzIG9mdGVuIGhpZ2gsIGVzcGVjaWFsbHkgaWYgdGhlIGV4aXN0aW5nIHRoZXJhcGllcyBhcmUgbm90IHN1ZmZpY2llbnQuIFRoZXJlIGlzIGEgZ3JlYXQgb3Blbm5lc3MgdG8gbmV3IGFwcHJvYWNoZXMsIGV2ZW4gaWYgdGhleSBhcmUgbmV3IGFuZCBwb3NzaWJseSBub3QgeWV0IGZ1bGx5IHRlc3RlZC4gVGhlIGhvcGUgZm9yIHByb2dyZXNzIGFuZCBpbXByb3ZlbWVudCBpcyBzdHJvbmcsIGJ1dCB0aGVyZSBhcmUgYWxzbyBjb25jZXJucyBhbmQgdW5jZXJ0YWludGllcyBhYm91dCBuZXcgdGhlcmFwaWVzLlwiLz5cclxuICAgIDxRYUJveCBxPVwiV2hhdCBwc3ljaG9sb2dpY2FsIGNoYWxsZW5nZXMgY2FuIGFyaXNlIGZvbGxvd2luZyB0aGUgaW50cm9kdWN0aW9uIG9mIG5ldyB0aGVyYXBpZXM/XCIgYT1cIk5ldyB0aGVyYXBpZXMgbm90IG9ubHkgYnJpbmcgcmVsaWVmLCBidXQgYWxzbyBjaGFsbGVuZ2VzLiBQYXRpZW50cyBhbmQgZmFtaWxpZXMgaGF2ZSB0byBhZGFwdCB0byBhIGNoYW5nZWQgcmVhbGl0eS4gSWRlbnRpdHkgY3Jpc2VzIGNhbiBvY2N1ciwgZXNwZWNpYWxseSBpZiB0aGUgaWxsbmVzcyBoYXMgYmVlbiBhIGJpZyBwYXJ0IG9mIGxpZmUgZm9yIGEgbG9uZyB0aW1lLiBUaGUgcHJvY2VzcyBvZiBhZGp1c3RtZW50IGFuZCB0aGUgcG9zc2libGUgZmVlbGluZ3Mgb2YgYWxpZW5hdGlvbiBmcm9tIHRoZSBwcmV2aW91cyBjb21tdW5pdHkgY2FuIGNhdXNlIGFkZGl0aW9uYWwgcHN5Y2hvbG9naWNhbCBzdHJlc3MuXCIvPlxyXG4gICAgPFFhQm94IHE9XCJIb3cgaW1wb3J0YW50IGlzIGNvbXByZWhlbnNpdmUgaW5mb3JtYXRpb24gYW5kIHBzeWNob2xvZ2ljYWwgc3VwcG9ydCBpbiBjb25uZWN0aW9uIHdpdGggZ2VuZSB0aGVyYXBpZXM/XCIgYT1cIkl0IGlzIGV4dHJlbWVseSBpbXBvcnRhbnQgdGhhdCBwYXRpZW50cyByZWNlaXZlIGNvbXByZWhlbnNpdmUgaW5mb3JtYXRpb24gYW5kIHBzeWNob2xvZ2ljYWwgc3VwcG9ydC4gUGVvcGxlIHNob3VsZCBrbm93IHdoYXQgdGhleSBjYW4gZXhwZWN0IGZyb20gdGhlIHRoZXJhcHkgYW5kIHdoYXQgYWRqdXN0bWVudHMgbWlnaHQgYmUgbmVjZXNzYXJ5LiBUYWxraW5nIG9wZW5seSBhYm91dCBwb3NzaWJsZSBkaXNhcHBvaW50bWVudHMgYW5kIGNoYWxsZW5nZXMgY2FuIGhlbHAgdGhlbSB0byBjb3BlIGJldHRlciB3aXRoIHRoZSBjaGFuZ2VzLlwiLz5cclxuICAgIDxRYUJveCBxPVwiSG93IGRvZXMgdGhlIHJvbGUgb2Ygc3VwcG9ydCBncm91cHMgYW5kIHBhdGllbnQgb3JnYW5pc2F0aW9ucyBpbmZsdWVuY2UgY29uZmlkZW5jZSBpbiBuZXcgdGhlcmFwaWVzP1wiIGE9XCJTdXBwb3J0IGdyb3VwcyBhbmQgcGF0aWVudCBvcmdhbmlzYXRpb25zIGFyZSBjcnVjaWFsIGZvciBjb25maWRlbmNlIGluIG5ldyB0aGVyYXBpZXMuIElmIHRoZXkgYXJlIGFjdGl2ZWx5IGludm9sdmVkIGluIHJlc2VhcmNoIGFuZCBwcm92aWRlIHRyYW5zcGFyZW50IGluZm9ybWF0aW9uLCB0aGlzIHN0cmVuZ3RoZW5zIHBhdGllbnQgY29uZmlkZW5jZS4gVGhlIHVzZSBvZiBkb25hdGlvbnMgYW5kIHRoZSBlc3RhYmxpc2htZW50IG9mIHJlZ2lzdHJpZXMgYnkgc3VjaCBvcmdhbmlzYXRpb25zIGNyZWF0ZXMgdHJ1c3QgYW5kIHNob3dzIHRoYXQgdGhlcmUgYXJlIHNlcmlvdXMgZWZmb3J0cyB0byBpbXByb3ZlIHRoZSBzaXR1YXRpb24uXCIvPlxyXG4gICAgPFFhQm94IHE9XCJXaGF0IGFyZSB0aGUgY2hhbGxlbmdlcyBpbiBhZGFwdGluZyB0aGVyYXBpZXMgdG8gZGlmZmVyZW50IGdlbmV0aWMgbXV0YXRpb25zP1wiIGE9XCJBZGFwdGluZyB0aGVyYXBpZXMgdG8gZGlmZmVyZW50IGdlbmV0aWMgbXV0YXRpb25zIGlzIGEgbWFqb3IgY2hhbGxlbmdlLiBXaGlsZSB0aGVyZSBoYXMgYmVlbiBwcm9ncmVzcyBpbiB0aGUgdHJlYXRtZW50IG9mIGNlcnRhaW4gbXV0YXRpb25zIHN1Y2ggYXMgRGVsdGEtRjUwOCwgd2UgYXJlIHN0aWxsIGF0IHRoZSBiZWdpbm5pbmcgd2l0aCBvdGhlcnMuIEluIHRoZSBsb25nIHRlcm0sIGEgbW9kdWxhciBnZW5lIHRoZXJhcHkgdGhhdCBpcyBjdXN0b21pc2VkIHRvIHRoZSBzcGVjaWZpYyBtdXRhdGlvbnMgd291bGQgYmUgaWRlYWwuIEl0IHdpbGwgdGFrZSBhIGxvdCBvZiB3b3JrIHRvIGRldmVsb3AgdGhlc2UgdGhlcmFwaWVzIGZvciBhbGwgcmVsZXZhbnQgbXV0YXRpb25zLlwiLz5cclxuICAgIDxRYUJveCBxPVwiSG93IGRvIGZhbWlsaWVzIGFuZCBwYXRpZW50cyBkZWFsIHdpdGggdGhlIHJhcGlkIGZlZWRiYWNrIG9uIGV4cGVyaW1lbnRhbCB0aGVyYXBpZXM/XCIgYT1cIklmIHlvdSByZWFsaXNlIHRoYXQgYSB0aGVyYXB5IGlzIG5vdCB3b3JraW5nIGFzIGV4cGVjdGVkLCB0aGlzIGlzIGNvbW11bmljYXRlZCB2ZXJ5IHF1aWNrbHkuIFRoZSBmZWVkYmFjayBzeXN0ZW0gaXMgcXVpdGUgZWZmZWN0aXZlOiBlaXRoZXIgdGhlcmUgaXMgY2F1c2UgZm9yIGV1cGhvcmlhIGJlY2F1c2UgZXZlcnl0aGluZyBpcyBnb2luZyB3ZWxsLCBvciB0aGVyZSBpcyBiYWQgbmV3cy4gVGhpcyBxdWljayBmZWVkYmFjayBpcyBhbHNvIHJlYXNzdXJpbmcgYmVjYXVzZSBpdCBtZWFucyB5b3UgZG9uJ3QgaGF2ZSB0byBiZSBpbiB0aGUgZGFyayBmb3IgbG9uZy4gWW91IGFyZSBzaW1wbHkgZ3JhdGVmdWwgd2hlbiB5b3Uga25vdyBob3cgdGhlIHRoZXJhcHkgaXMgZ29pbmcsIGV2ZW4gaWYgaXQgaXMgbm90IGhhdmluZyB0aGUgZGVzaXJlZCBlZmZlY3QuXCIvPlxyXG4gICAgPFFhQm94IHE9XCJIb3cgaW1wb3J0YW50IGlzIHRoZSBjb21tdW5pdHkgZm9yICBDeXN0aWMgRmlicm9zaXMgc3VmZmVyZXJzP1wiIGE9XCJUaGUgIEN5c3RpYyBGaWJyb3NpcyBjb21tdW5pdHkgaXMgaW5jcmVkaWJseSBzdHJvbmcgYW5kIHdlbGwgY29ubmVjdGVkLiBUaGF0J3MgcmVhbGx5IGltcHJlc3NpdmUuIFRob3NlIGFmZmVjdGVkIG9mdGVuIGhhdmUgbm8gb3RoZXIgcG9pbnQgb2YgY29udGFjdCB0aGFuIHRoaXMgY29tbXVuaXR5IHRvIGV4Y2hhbmdlIGluZm9ybWF0aW9uLiBJdCdzIGEgcmVsaWFibGUgc291cmNlIG9mIHZhbGlkIGluZm9ybWF0aW9uLCBhbmQgdGhhdCdzIHdvcnRoIGl0cyB3ZWlnaHQgaW4gZ29sZC4gVGhlIGNvbW11bml0eSBpcyBob25lc3QgYW5kIHJlYWxpc3RpYyAtIHRoZXJlIGlzIG5vIHN1Z2FyY29hdGluZywgdGhlIGluZm9ybWF0aW9uIGlzIGRpcmVjdCBhbmQgd2VsbCBkb2N1bWVudGVkLlwiLz5cclxuICAgIDxRYUJveCBxPVwiV2hhdCBpcyB0aGUgcmVsYXRpb25zaGlwIGJldHdlZW4gZGlmZmVyZW50IHNwZWNpYWxpc3QgZGlzY2lwbGluZXMgaW4gdGhlIHRyZWF0bWVudCBvZiAgQ3lzdGljIEZpYnJvc2lzP1wiIGE9XCJJbiAgQ3lzdGljIEZpYnJvc2lzIHRyZWF0bWVudCwgdGhlIHNwZWNpYWxpc3QgZGlzY2lwbGluZXMgd29yayB0b2dldGhlciBhcyBlcXVhbHMuIEF0IGNvbmdyZXNzZXMsIGFsbCBkaXNjaXBsaW5lcyBzdWNoIGFzIHBoeXNpb3MsIGRvY3RvcnMsIHBzeWNob2xvZ2lzdHMgYW5kIG51dHJpdGlvbmlzdHMgYXJlIGVxdWFsbHkgcmVwcmVzZW50ZWQuIEV2ZXJ5b25lIHRha2VzIGVhY2ggb3RoZXIgc2VyaW91c2x5IGFuZCB0aGVyZSBpcyBhIHN0cm9uZyBpbnRlcmVzdCBpbiBkZXZlbG9waW5nIGVhY2ggb3RoZXIgZnVydGhlci4gVGhpcyBpcyByZWFsbHkgZXhjaXRpbmcgYmVjYXVzZSBpdCBzaG93cyB0aGF0IGV2ZXJ5b25lIGlzIHdvcmtpbmcgdG9nZXRoZXIgdG8gcHJvdmlkZSB0aGUgYmVzdCBjYXJlLlwiLz5cclxuICAgIDxRYUJveCBxPVwiSG93IGRvIGZhbWlsaWVzIGRlYWwgd2l0aCB0aGUgY2hhbGxlbmdlcyBvZiB0aGVyYXB5IGFuZCB0aGUgZmluYW5jaWFsIGFzcGVjdHM/XCIgYT1cIk1hbnkgZmFtaWxpZXMgYXJlIGNvbmZyb250ZWQgd2l0aCBleHRyZW1lbHkgaGlnaCB0aGVyYXB5IGFuZCB0cmVhdG1lbnQgY29zdHMuIFRoZXJlIGhhcyBiZWVuIHByb2dyZXNzIGFuZCBtYW55IHRyZWF0bWVudCBvcHRpb25zIGluIEdlcm1hbnksIGJ1dCB0aGVzZSBhcmUgb2Z0ZW4gZXhwZW5zaXZlIGFuZCBub3QgYXZhaWxhYmxlIGV2ZXJ5d2hlcmUuIEFzIGEgcmVzdWx0LCBzb21lIGZhbWlsaWVzIGFyZSBmb3JjZWQgdG8gbGVhdmUgdGhlaXIgaG9tZSBjb3VudHJ5IGluIG9yZGVyIHRvIHJlY2VpdmUgYmV0dGVyIG1lZGljYWwgY2FyZS4gVGhpcyBpcyBhbiBlbm9ybW91cyBidXJkZW4gYW5kIHNob3dzIGhvdyB1bmZhaXIgdGhlIGRpc3RyaWJ1dGlvbiBvZiByZXNvdXJjZXMgaXMgd29ybGR3aWRlLlwiLz5cclxuICAgIDxRYUJveCBxPVwiSG93IGlzIG1lZGljYWwgY2FyZSBmb3IgcmVmdWdlZXMgb3JnYW5pc2VkP1wiIGE9XCJGb3IgcmVmdWdlZXMgZnJvbSBjb3VudHJpZXMgc3VjaCBhcyBVa3JhaW5lIG9yIG90aGVyIGNyaXNpcyBhcmVhcywgY2FyZSBpcyBvZnRlbiBhIGNoYWxsZW5nZS4gRHVyaW5nIGVtZXJnZW5jeSBjYXJlLCB0aGUgY2hpbGRyZW4gYXJlIHRyZWF0ZWQgYXMgaWYgdGhleSB3ZXJlIEdlcm1hbiBwYXRpZW50cy4gQnV0IHdoZW4gdGhlIHJlZnVnZWVzIGhhdmUgdG8gcmV0dXJuIHRvIHRoZWlyIGhvbWUgY291bnRyaWVzLCB0aGUgdGhlcmFweSBvZnRlbiBlbmRzLCB3aGljaCBpcyBhbiBlbm9ybW91cyBidXJkZW4gZm9yIHRoZSBmYW1pbGllcy4gSXQgaXMgZGlmZmljdWx0IGZvciB0aGVtIHRvIHByZXBhcmUgZm9yIHRoZSBmdXR1cmUgd2hlbiB0aGVpciBzdGF0dXMgaXMgdW5jbGVhciwgYW5kIHRoZXkgY29uc3RhbnRseSBsaXZlIHdpdGggdGhlIGZlYXIgb2YgYmVpbmcgZGVwb3J0ZWQuXCIvPlxyXG4gICAgPFFhQm94IHE9XCJIb3cgbXVjaCBwc3ljaG9sb2dpY2FsIHN0cmVzcyBpcyBjYXVzZWQgYnkgdGhlcmFwaWVzIGFuZCB0aGVpciBpbXBsZW1lbnRhdGlvbj9cIiBhPVwiVGhlcmFwaWVzIGNhbiBiZSBhIG1ham9yIHBzeWNob2xvZ2ljYWwgYnVyZGVuLCBldmVuIGlmIHRoZXkgaGF2ZSBmdW5kYW1lbnRhbGx5IHBvc2l0aXZlIGVmZmVjdHMuIFJlZ3VsYXIgaW5oYWxhdGlvbnMsIHRhYmxldHMgYW5kIG90aGVyIHRyZWF0bWVudHMgYXJlIG9mdGVuIHRlZGlvdXMgYW5kIHJlcXVpcmUgYSBsb3Qgb2YgZGlzY2lwbGluZS4gU29tZSBwYXRpZW50cyBmaW5kIGl0IGV4dHJlbWVseSBjaGFsbGVuZ2luZyB0byBzdGljayB0byBhIHJlZ3VsYXIgdGhlcmFweSBzY2hlZHVsZSwgZXNwZWNpYWxseSBpZiB0aGUgdGhlcmFweSBkb2VzIG5vdCBicmluZyBhbnkgaW1tZWRpYXRlbHkgdmlzaWJsZSBwcm9ncmVzcyBpbiB0aGUgbG9uZyB0ZXJtLiBJdCBpcyBpbXBvcnRhbnQgdG8gYmUgcmVhbGlzdGljIGFib3V0IHRoZSBidXJkZW4gb2YgdGhlcmFweSwgYXMgaXQgY2FuIGhhdmUgYSBtYWpvciBpbXBhY3Qgb24gZGFpbHkgbGlmZSBhbmQgd2VsbC1iZWluZy5cIi8+XHJcbiAgICA8UWFCb3ggcT1cIkhvdyBkbyBwYXRpZW50cyByZWFjdCB0byBuZXcgdGhlcmFwaWVzIGFuZCB0aGUgYXNzb2NpYXRlZCBjaGFsbGVuZ2VzP1wiIGE9XCJNYW55IHBhdGllbnRzIGFyZSBvcGVuIHRvIG5ldyB0aGVyYXBpZXMgYnV0IGltcGxlbWVudGluZyB0aGVtIGNhbiBiZSBhIG1ham9yIGNoYWxsZW5nZS4gSWYgYSBuZXcgdGhlcmFweSBkb2Vzbid0IHdvcmsgaW1tZWRpYXRlbHkgYXQgZmlyc3Qgb3IgZXZlbiBoYXMgc2lkZSBlZmZlY3RzLCB0aGlzIGNhbiBiZSBkZW1vdGl2YXRpbmcuIFRoaXMgaXMgcGFydGljdWxhcmx5IGRpZmZpY3VsdCBpZiB5b3UgaGF2ZSBiZWVuIHVuZGVyZ29pbmcgdHJlYXRtZW50IGZvciBhIGxvbmcgdGltZSBhbmQgYXJlIGhvcGluZyB0byBtYWtlIGdyZWF0IHByb2dyZXNzLiBUaGUgcGF0aCB0byBhIGJldHRlciBjb25kaXRpb24gaXMgb2Z0ZW4gYXJkdW91cyBhbmQgbm90IGV2ZXJ5IHRoZXJhcHkgYnJpbmdzIHRoZSBkZXNpcmVkIGltcHJvdmVtZW50LiBOZXZlcnRoZWxlc3MsIGl0IGlzIGltcG9ydGFudCB0byBrZWVwIGdvaW5nIGFuZCBwZXJzZXZlcmUgd2l0aCB0aGUgdGhlcmFweSwgZXZlbiBpZiB0aGVyZSBhcmUgaGFyZCB0aW1lcy5cIi8+XHJcbiAgICA8UWFCb3ggcT1cIkhvdyBtdWNoIG9mIHRoZSBvdmVyYWxsIGlsbG5lc3MgaXMgcHN5Y2hvbG9naWNhbCBkaXN0cmVzcywgaW4gYWRkaXRpb24gdG8gdGhlIHBoeXNpY2FsIHN5bXB0b21zIGFuZCBkaXN0cmVzcyBmcm9tIHRoZXJhcGllcz9cIiBhPVwiVGhlIHBzeWNob2xvZ2ljYWwgcGFydCBvZiB0aGUgYnVyZGVuIGlzIGRpZmZpY3VsdCB0byBxdWFudGlmeSwgYXMgaXQgdmFyaWVzIGdyZWF0bHkgZnJvbSBpbmRpdmlkdWFsIHRvIGluZGl2aWR1YWwgYW5kIGlzIGluZmx1ZW5jZWQgYnkgbWFueSBmYWN0b3JzLiBUaGUgaW50ZXJhY3Rpb24gYmV0d2VlbiBwc3ljaG9sb2dpY2FsIHN0YWJpbGl0eSBhbmQgcGh5c2ljYWwgaGVhbHRoIGlzIGNvbnNpZGVyYWJsZSwgYXMgcHN5Y2hvbG9naWNhbCBzdHJlc3MgY2FuIGltcGFpciBzZWxmLWNhcmUgYW5kIHRodXMgcGh5c2ljYWwgaGVhbHRoLiBBdCBkaWZmZXJlbnQgc3RhZ2VzIG9mIGxpZmUsIHRoZSBwc3ljaG9sb2dpY2FsIGNvbXBvbmVudCBjYW4gdmFyeS4gRm9yIGV4YW1wbGUsIGl0IGNhbiBpbmNyZWFzZSBkdXJpbmcgcHViZXJ0eSBhbmQgeW91bmcgYWR1bHRob29kLiBUaGUgcHN5Y2hvbG9naWNhbCBjb21wb25lbnQgaXMgdGhlcmVmb3JlIG5vdCBzbWFsbCBhbmQgdmFyaWVzIGRlcGVuZGluZyBvbiB0aGUgaW5kaXZpZHVhbCBzaXR1YXRpb24gYW5kIHBoYXNlIG9mIGxpZmUuXCIvPlxyXG4gICAgPFFhQm94IHE9XCJIb3cgaXMgdGhlIHZpc2liaWxpdHkgb2YgdGhlIGRpc2Vhc2UgYXNzZXNzZWQgdGhyb3VnaCBwcm9qZWN0cyBzdWNoIGFzIE11a29Nb3ZlIG9yIHByb2plY3RzIGZvciBjaGlsZHJlbj9cIiBhPVwiVGhlIHZpc2liaWxpdHkgb2YgdGhlIGRpc2Vhc2UgdGhyb3VnaCBzdWNoIHByb2plY3RzIGNhbiBiZSBoZWxwZnVsIGluIHJhaXNpbmcgYXdhcmVuZXNzLiBXaXRoIHJhcmUgZGlzZWFzZXMgc3VjaCBhcyAgQ3lzdGljIEZpYnJvc2lzLCB0aGUgZGlzZWFzZSBvZnRlbiByZW1haW5zIGFic3RyYWN0IGlmIHRoZXJlIGFyZSBubyBwZW9wbGUgZGlyZWN0bHkgYWZmZWN0ZWQgbmVhcmJ5LiBFZHVjYXRpb25hbCBwcm9qZWN0cyBzdWNoIGFzIE11a29Nb3ZlIGNhbiBoZWxwIGNoaWxkcmVuIGRldmVsb3AgYSBiZXR0ZXIgdW5kZXJzdGFuZGluZyBvZiB0aGUgZGlzZWFzZSwgZXZlbiBpZiB0aGUgaW1wYWN0IGlzIGxpbWl0ZWQgaWYgdGhlcmUgYXJlIG5vIGRpcmVjdCBwb2ludHMgb2YgcmVmZXJlbmNlLiBIb3dldmVyLCBpdCBjYW4gYmUgaGVscGZ1bCBpZiBwYXRpZW50cyB0aGVtc2VsdmVzIGV4cGxhaW4gdGhlaXIgZGlzZWFzZSBpbiBzY2hvb2xzIG9yIGNsYXNzZXMsIGFzIHRoaXMgcHJvdmlkZXMgZGlyZWN0IGFuZCBwZXJzb25hbCBpbnNpZ2h0cy5cIi8+XHJcbiAgICA8UWFCb3ggcT1cIldoYXQgYXJlIGltcG9ydGFudCBhc3BlY3RzIG9mIGRlc2lnbmluZyBhIGdlbmUgdGhlcmFweSBwcm9qZWN0IHNvIHRoYXQgaXQgaXMgdmlld2VkIHBvc2l0aXZlbHkgYnkgIEN5c3RpYyBGaWJyb3NpcyBwYXRpZW50cz9cIiBhPVwiV2hlbiBkZXNpZ25pbmcgYSBnZW5lIHRoZXJhcHkgcHJvamVjdCwgY2FyZSBzaG91bGQgYmUgdGFrZW4gdG8gbWluaW1pc2UgdGhlIHByYWN0aWNhbCBodXJkbGVzLiBUaGUgdGhlcmFweVwiLz5cclxuICAgIDxRYUJveCBxPVwiV2hhdCB0aXBzIGNhbiBiZSBnaXZlbiB0byBpbXByb3ZlIHRoZSBhY2Nlc3NpYmlsaXR5IGFuZCBhY2NlcHRhbmNlIG9mIHByb2plY3RzIG9yIHRoZXJhcGllcyBpbiAgQ3lzdGljIEZpYnJvc2lzIHBhdGllbnRzPyBcIiBhPVwiSXQgaXMgaW1wb3J0YW50IHRvIGVuc3VyZSB0aGUgYWNjZXNzaWJpbGl0eSBvZiBwcm9qZWN0cyBhbmQgdGhhdCB0aGV5IGFyZSBwcmFjdGljYWwgdG8gaW1wbGVtZW50LiBUaGUgYnVyZGVuIG9uIHBhdGllbnRzIHNob3VsZCBiZSBtaW5pbWlzZWQuIFRoaXMgaW5jbHVkZXMgZW5zdXJpbmcgdGhhdCB0aGUgdGhlcmFweSBpcyBub3Qgb25seSBlZmZlY3RpdmUgYnV0IGFsc28gYXMgcGxlYXNhbnQgYXMgcG9zc2libGUuIEluIGFkZGl0aW9uLCBjb21tdW5pY2F0aW9uIGFib3V0IHRoZSBwcm9ncmVzcyBvZiB0aGUgdGhlcmFweSBzaG91bGQgYmUgdHJhbnNwYXJlbnQgYW5kIHVuZGVyc3RhbmRhYmxlIHRvIGJ1aWxkIHRydXN0IGFuZCBtYWtlIGl0IGNsZWFyIHRvIHBhdGllbnRzIGhvdyB0aGV5IGNhbiBiZW5lZml0IGZyb20gdGhlIG5ldyBkZXZlbG9wbWVudHMuIFwiLz4gXHJcbiAgICA8Lz4sXHJcbiAgICBwaWN0dXJldXJsX2FpbTpcImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2ludGVncmF0ZWQtaHVtYW4tcHJhY3RpY2VzL29uLW91ci13YXktdG8taW50ZXJ2aWV3LXBzeWNob2xvZ2lzdHMud2VicFwiLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgdGl0bGU6IFwiRHIuXCIsXHJcbiAgICB2b3JuYW1lOiBcIk1ha290b1wiLFxyXG4gICAgbmFjaG5uYW1lOiBcIlNhaXRvXCIsXHJcbiAgICBqb2I6IFwiUG9zdGRvY1wiLFxyXG4gICAgYWZmaWxpYXRpb246IFwiQnJvYWQgSW5zdGl0dXRlIG9mIE1JVCBhbmQgSGFydmFyZFwiLFxyXG4gICAgcGljdHVyZXVybDogcGljc1snc2FpdG8nXSxcclxuICAgIHRhZzogXCJBY2FkZW1pYVwiLFxyXG4gICAgaGVhZGluZzogXCJJbnNpZ2h0cyBhbmQgUmVjb21tZW5kYXRpb25zIGZyb20gSW50ZXJ2aWV3IG9uIFByb3RlaW4gRW5naW5lZXJpbmdcIixcclxuICAgIGludGVydmlld3RhYmlkOiBcInNhaXRvXCIsXHJcblxyXG4gICAgbGFuZ3VhZ2U6XCJlblwiLFxyXG4gICAgcXVvdGVOYWNobmFtZTogXCJTYWl0bywgTGVhZGluZyByZXNlYXJjaCBleHBlcnQgb2YgRkFOWk9SIFwiLFxyXG4gICAgcXVvdGVWb3JuYW1lOiBcIkRyLiBNYWtvdG9cIixcclxuICAgIHF1b3RlOiBcIlRoaXMgcHJvamVjdCBpcyBhY3R1YWxseSBhIHJlYWxseSBob3QsIHZlcnkgaW1wb3J0YW50IHByb2plY3QgYXQgdGhlIGFic29sdXRlIGN1dHRpbmcgZWRnZSBvZiBzY2llbmNlLiBIb25lc3RseSwgSSBzZWUgcmVzZWFyY2hlcnMgYXJvdW5kIHRoZSB3b3JsZCB3b3JraW5nIG9uIGRldmVsb3Bpbmcgc21hbGxlciBDUklTUFItQ2FzLWxpa2UgcHJpbWUgZWRpdG9ycy4gSXQgc2hvd3MgdGhhdCB5b3UgZ3V5cyBhcmUgd29ya2luZyBvbiBhIHJlYWxseSBpbXBvcnRhbnQgcHJvYmxlbS5cIixcclxuICAgIGFpbW9mY29udGFjdDogXCJUaGUgYWltIG9mIHRoZSBpbnRlcnZpZXcgd2FzIHRvIGdhaW4gZGVlcGVyIGluc2lnaHRzIGludG8gdGhlIHRvcGljIG9mIHByb3RlaW4gZW5naW5lZXJpbmcsIGVzcGVjaWFsbHkgd2l0aCByZWdhcmQgdG8gRmFuem9yIChTcHVGeikgYW5kIHRvIGdldCBmZWVkYmFjayBvbiBvdXIgZXhpc3RpbmcgYXBwcm9hY2hlcyBmb3IgcG9zc2libGUgbmlja2FzZXMsIGFzIHdlbGwgYXMgZm9yIHRoZSBwbGFubmVkIG5pY2thc2UgYXNzYXkuIFwiLFxyXG4gICAgaW5zaWdodHM6IFwiVGhlIGludGVydmlldyBwcm92aWRlZCB0aGUgaUdFTSB0ZWFtIHdpdGggdmFsdWFibGUgYWR2aWNlIHJlZ2FyZGluZyB0aGVpciBQcmltZSBFZGl0aW5nIHByb2plY3QgYW5kIGVzcGVjaWFsbHkgb24gdGhlaXIgcGxhbm5lZCBuaWNrYXNlIGFzc2F5LiBEciBTYWl0byBnYXZlIGRldGFpbGVkIGZlZWRiYWNrIG9uIHRlY2huaWNhbCBjaGFsbGVuZ2VzLCBlc3BlY2lhbGx5IHdpdGggcHJvdGVpbiBleHByZXNzaW9uIGluIEUuIGNvbGksIGFuZCBzdWdnZXN0ZWQgc3dpdGNoaW5nIHRvIHllYXN0IGZvciBiZXR0ZXIgcmVzdWx0cy4gSGUgYWxzbyBlbmNvdXJhZ2VkIHRoZSB0ZWFtIHRvIHBsYW4gY2FyZWZ1bGx5LCBnaXZlbiB0aGUgcHJvamVjdCdzIGNvbXBsZXhpdHksIGFuZCBvZmZlcmVkIGd1aWRhbmNlIG9uIGZ1dHVyZSBleHBlcmltZW50cy5cdTIwMkYgXCIsXHJcbiAgICBpbXBsZW1lbnRhdGlvbjogXCJXZSBoYXZlIGFkYXB0ZWQgb3VyIHBsYW5uZWQgbmlja2FzZSBhc3NheSBhY2NvcmRpbmcgdG8gRHIgU2FpdG8ncyBhZHZpY2UgYW5kIGNoYW5nZWQgaXQgYWNjb3JkaW5nbHkgdG8gZXhwcmVzc2lvbiBvZiB0aGUgUk5QIGNvbXBsZXggdXNpbmcgeWVhc3QuXCIsXHJcbiAgICBzdW1tYXJ5OiBcIlRoZSBpbnRlcnZpZXcgYWltZWQgdG8gZ2FpbiBpbnNpZ2h0cyBpbnRvIHByb3RlaW4gZW5naW5lZXJpbmcsIHBhcnRpY3VsYXJseSByZWdhcmRpbmcgRmFuem9yIChTcHVGeiksIGFuZCB0byBnZXQgZmVlZGJhY2sgb24gcG90ZW50aWFsIG5pY2thc2VzIGFuZCBhIHBsYW5uZWQgbmlja2FzZSBhc3NheS4gRHIuIFNhaXRvIHByb3ZpZGVkIHZhbHVhYmxlIGFkdmljZSwgc3VnZ2VzdGluZyB0aGUgdXNlIG9mIHllYXN0IGZvciBwcm90ZWluIGV4cHJlc3Npb24gb3ZlciBFLiBjb2xpIGR1ZSB0byB0ZWNobmljYWwgY2hhbGxlbmdlcyBhbmQgZW5jb3VyYWdlZCBjYXJlZnVsIHBsYW5uaW5nLiBCYXNlZCBvbiBoaXMgZmVlZGJhY2ssIHRoZSBpR0VNIHRlYW0gaGFzIGFkYXB0ZWQgdGhlaXIgbmlja2FzZSBhc3NheSB0byBleHByZXNzIHRoZSBSTlAgY29tcGxleCBpbiB5ZWFzdCwgYWxpZ25pbmcgd2l0aCBEci4gU2FpdG8ncyByZWNvbW1lbmRhdGlvbnMuXCIsXHJcbiAgICBtb250aHM6IFwiYXVndXN0XCIsXHJcbiAgICBpbnRlcnZpZXc6PD5cclxuICAgIDxRYUJveCBxPVwiQXJlIHlvdSBmYW1pbGlhciB3aXRoIGlHRU0sIGJ5IHRoZSB3YXk/XCIgYT1cIk9mIGNvdXJzZSwgSSBrbm93IGl0LlwiLz5cclxuICAgIDxRYUJveCBxPVwiRGlkIHlvdSBwYXJ0aWNpcGF0ZSB5b3Vyc2VsZiBhdCBzb21lIHBvaW50P1wiIGE9XCJVbmZvcnR1bmF0ZWx5LCBJIGRpZG4ndC4gSSBiZWxvbmcgdG8gYW4gZWFybGllciBnZW5lcmF0aW9uLiBpR0VNIGFjdHVhbGx5IHN0YXJ0ZWQgcmVsYXRpdmVseSByZWNlbnRseS5cIi8+XHJcbiAgICA8UWFCb3ggcT1cIldlIHRob3VnaHQgZm9yIHRoZSBzdHJ1Y3R1cmUgb2YgdGhlIGludGVydmlldywgd2Ugd291bGQgc3RhcnQgYnkgZ2l2aW5nIHlvdSBhIGJyaWVmIG92ZXJ2aWV3IG9mIG91ciBwcm9qZWN0IHNvIGZhciB0byBmYW1pbGlhcml6ZSB5b3Ugd2l0aCBpdC4gVGhlbiwgd2VcdTIwMTlsbCBtb3ZlIG9uIHRvIHRoZSBxdWVzdGlvbnMuIElzIHRoYXQgb2theT9cIiBhPVwiWWVzLCBvZiBjb3Vyc2UsIHBsZWFzZSBnbyBhaGVhZC5cIi8+XHJcbiAgICA8UWFCb3ggcT1cIldlJ3ZlIGJlZW4gd29ya2luZyBvbiB0aGlzIHByb2plY3QgZm9yIG1vcmUgdGhhbiBoYWxmIGEgeWVhciBub3cuIEl0IGJlZ2FuIGJlY2F1c2Ugb25lIG9mIG91ciB0ZWFtIG1lbWJlcnMgaGFzIGEgZnJpZW5kIHdpdGggIEN5c3RpYyBGaWJyb3Npcy4gVGhhdCBnb3QgdXMgaW50ZXJlc3RlZCBpbiB0aGUgdG9waWMuIFdlIHN0YXJ0ZWQgYnkgaW52ZXN0aWdhdGluZyBob3cgZ2VuZSBlZGl0aW5nIHRlY2hub2xvZ2llcyBsaWtlIENSSVNQUi1DYXM5IGNvdWxkIGJlIGFwcGxpZWQgdG8gIEN5c3RpYyBGaWJyb3Npcy4gVGhlbiwgd2UgZXhwbG9yZWQgcHJpbWUgZWRpdGluZyBhbmQgY29uc2lkZXJlZCBpZiBpdCBjb3VsZCBiZSB1c2VkIGZvciB0aGlzIGRpc2Vhc2Ugb3IgYWRhcHRlZCBmb3Igb3RoZXIgYXBwbGljYXRpb25zLiBJbml0aWFsbHksIHdlIHdvbmRlcmVkIGlmIHdlIGNvdWxkIG1ha2UgcHJpbWUgZWRpdGluZyBtb3JlIGNvbXBhY3QsIGVzcGVjaWFsbHkgc2luY2UgZGVsaXZlcnkgaXMgY2hhbGxlbmdpbmcgZHVlIHRvIGl0cyBsYXJnZSBjb21wbGV4IHNpemUuIFdlIGxvb2tlZCBpbnRvIHZhcmlvdXMgZGVsaXZlcnkgbWV0aG9kcywgaW5jbHVkaW5nIEFBVnMgKEFkZW5vLUFzc29jaWF0ZWQgVmlydXNlcykuIE91ciBmaXJzdCBhcHByb2FjaCB3YXMgdG8gZXhwbG9yZSBhbHRlcm5hdGl2ZSBuaWNrYXNlcyBhbmQgcG9zc2libHkgZW5naW5lZXIgbmV3IG9uZXMuIFRoYXQncyBob3cgd2UgY2FtZSBhY3Jvc3MgeW91ciByZXNlYXJjaCBcdTIwMTMgRmFuem9yLiBXZSBhbHNvIGNvbnNpZGVyZWQgb3RoZXIgY2FuZGlkYXRlcyBsaWtlIENhc1guIEFyZSB5b3UgZmFtaWxpYXIgd2l0aCBDYXNYP1wiIGE9XCJZZXMsIEkgYW0uXCIvPlxyXG4gICAgPFFhQm94IHE9XCJXZSdyZSBhbHNvIGV4cGVyaW1lbnRpbmcgd2l0aCBjaGFuZ2VzIHRvIHRoZSBlZGl0aW5nIGNvbXBsZXggaXRzZWxmLiBJbiBhZGRpdGlvbiwgd2UgYWltIHRvIGRlbGl2ZXIgdGhlIGVkaXRpbmcgY29tcGxleCB1c2luZyBuYW5vcGFydGljbGVzLiBXZSBjaG9zZSB0byBmb2N1cyBvbiB0aGUgbHVuZ3MsIGhvcGluZyB0aGF0IHRhcmdldGluZyB0aGlzIGFyZWEgd291bGQgcmVkdWNlIHRoZSBuZWVkIGZvciBBQVYgdmlydXNlcywgbWFraW5nIHRoZSBkZWxpdmVyeSBsZXNzIGltbXVub2dlbmljIGFuZCBub3QgYXMgbGltaXRlZCBieSBzaXplLlwiIGE9XCJTbywgaW4gdGhpcyBpR0VNIHByb2plY3QsIHlvdSdyZSB3b3JraW5nIG9uIGJvdGggcmVkdWNpbmcgdGhlIHNpemUgb2YgdGhlIHByaW1lIGVkaXRvciBhbmQgZGV2ZWxvcGluZyBuYW5vcGFydGljbGVzIGZvciBkZWxpdmVyeT9cIi8+XHJcbiAgICA8UWFCb3ggcT1cIlllcywgdGhhdFx1MjAxOXMgdGhlIHBsYW4uIEJlZm9yZSB3ZSBzdGFydCB3aXRoIHRoZSBtYWluIHF1ZXN0aW9ucywgaG93IG11Y2ggdGltZSBkbyB5b3UgaGF2ZT8gSXMgaGFsZiBhbiBob3VyIG9rYXk/XCIgYT1cIk5vIHByb2JsZW0sIGhhbGYgYW4gaG91ciBpcyBmaW5lLlwiLz5cclxuICAgIDxRYUJveCBxPVwiR3JlYXQhIFRoZW4sIGxldFx1MjAxOXMgc3RhcnQgd2l0aCB0aGUgZmlyc3QgcXVlc3Rpb24uIE91ciBhcHByb2FjaCB0byBtb2RpZnlpbmcgdGhlIGVuZG9udWNsZWFzZSBGQU5aT1Igc3RhcnRlZCB3aXRoIHVuZGVyc3RhbmRpbmcgaXRzIG1lY2hhbmlzbS4gQ291bGQgd2UgZ28gb3ZlciB0aGlzIG1lY2hhbmlzbSB3aXRoIHlvdSB0byBlbnN1cmUgd2UgdW5kZXJzdG9vZCBpdCBjb3JyZWN0bHk/XCIgYT1cIk9mIGNvdXJzZSwgcGxlYXNlIGdvIGFoZWFkLlwiLz5cclxuICAgIDxRYUJveCBxPVwiQXMgd2UgdW5kZXJzdGFuZCBpdCwgdGhlIEZBTlpPUiBwcm90ZWluIGhhcyBkaWZmZXJlbnQgZG9tYWlucywgaW5jbHVkaW5nIHRoZSBSdXZDIGFuZCB0aGUgTlVDIGRvbWFpbi4gVGhlIFJ1dkMgZG9tYWluIGN1dHMgdGhlIEROQSBhZnRlciBiaW5kaW5nLiBJcyB0aGF0IGNvcnJlY3Q/XCIgYT1cIkFjdHVhbGx5LCB3ZSBkb24ndCBjYWxsIHRoaXMgZG9tYWluIHRoZSBOVUMgZG9tYWluIGFueW1vcmUuIEluIHRoZSBwYXN0LCBhYm91dCBlaWdodCB5ZWFycyBhZ28sIHJlc2VhcmNoZXJzIHRob3VnaHQgaXQgd2FzIGEgbnVjbGVhc2UgZG9tYWluLCBjYWxsZWQgdGhlICdOVUMnIGRvbWFpbi4gSG93ZXZlciwgbm93IHdlIGtub3cgdGhhdCB0aGlzIGRvbWFpbiBpdHNlbGYgZG9lcyBub3QgaGF2ZSBjYXRhbHl0aWMgYWN0aXZpdHkuIFdlIGNhbGwgaXQgdGhlIFROQiBkb21haW4sIGRlcml2ZWQgZnJvbSB0aGUgcHJvdGVpbidzIGFuY2VzdG9yLCBUTlBCLlwiLz5cclxuICAgIDxRYUJveCBxPVwiSSBzZWUuIFRoYW5rIHlvdSBmb3IgY2xhcmlmeWluZy4gV2UgYWxzbyBub3RpY2VkIHRoYXQgQ2FzOSBoYXMgdHdvIGNhdGFseXRpYyBkb21haW5zLCB3aGljaCBhbGxvdyBmb3IgbXV0YXRpb24gb2Ygb25lIG9yIHR3byBvZiB0aGVtIHRvIGNyZWF0ZSBhIG5pY2thc2UsIG1ha2luZyBzaW5nbGUtc3RyYW5kIGN1dHMuIElzIHRoaXMgc2ltaWxhciB3aXRoIENhczEyIGVsZW1lbnRzP1wiIGE9XCJJdCdzIGEgYml0IG1vcmUgY29tcGxpY2F0ZWQgd2l0aCBDYXMxMi4gVGhpcyBwcm9qZWN0LCBpbiBwYXJ0aWN1bGFyLCBpcyB2ZXJ5IGFkdmFuY2VkIGFuZCBpbnZvbHZlcyB1bmRlcnN0YW5kaW5nIHRoZSBudWFuY2VzIG9mIHRoZXNlIGRvbWFpbnMuIFRoZSBwYXBlciBvbiBDYXMxMiBwcmltZSBlZGl0aW5nIGRpc2N1c3NlcyBob3cgbXV0YXRpb25zIGNhbiBhZmZlY3QgZnVuY3Rpb25hbGl0eS4gSW4gRkFOWk9SLCB5b3UgbWlnaHQgYmUgYWJsZSB0byBhdHRlbXB0IHNpbWlsYXIgbXV0YXRpb25zLCB0aG91Z2ggSSBoYXZlbid0IHBlcnNvbmFsbHkgdHJpZWQgdGhlbS5cIi8+XHJcbiAgICA8UWFCb3ggcT1cIlRoYXQgYWxpZ25zIHdpdGggb3VyIHRoaW5raW5nLiBXZSByZWNlbnRseSBsb29rZWQgYXQgYSBwYXBlciBkZXNjcmliaW5nIHRoZSBlbmdpbmVlcmluZyBvZiBDYXMxMmEgaW50byBhIG5pY2thc2UuIE91ciBhcHByb2FjaCBpbnZvbHZlcyBpbnZlc3RpZ2F0aW5nIHNpbWlsYXIgcGF0dGVybnMgaW4gRkFOWk9SLiBGb3IgZXhhbXBsZSwgd2UgaWRlbnRpZmllZCB0d28ga2V5IGFtaW5vIGFjaWRzIFx1MjAxNCBnbHV0YW1pbmUgYW5kIGFyZ2luaW5lIFx1MjAxNCB0aGF0IGFwcGVhciB0byBpbnRlcmFjdCB3aXRoIHRoZSBETkEuXCIgYT1cIkkgYWdyZWUgdGhhdCB0YXJnZXRpbmcgc3BlY2lmaWMgZG9tYWlucyBpcyBhIHBvdGVudGlhbCBhcHByb2FjaC4gSG93ZXZlciwgYWx0ZXJpbmcgYW4gZW56eW1lIHRvIGdhaW4gYSBuZXcgZnVuY3Rpb24gaXMgY2hhbGxlbmdpbmcuIFRoZSBDYXMxMmEgcGFwZXIgcHJvdmlkZXMgYSBwYXRoIGZvcndhcmQgYnkgc2hvd2luZyBob3cgY2VydGFpbiBkb21haW5zIGNhbiBiZSBtdXRhdGVkIHRvIGNyZWF0ZSBuaWNrYXNlcy4gQWN0dWFsbHksIHRoaXMgcHJvamVjdCBpcyByZWFsbHkgaW1wb3J0YW50IGFuZCBhdCB0aGUgZm9yZWZyb250IG9mIHNjaWVuY2UuIFJlc2VhcmNoZXJzIHdvcmxkd2lkZSBhcmUgd29ya2luZyBvbiBkZXZlbG9waW5nIHNtYWxsZXIgQ1JJU1BSLUNhcy1saWtlIHByaW1lIGVkaXRvcnMuXCIvPlxyXG4gICAgPFFhQm94IHE9XCJUaGF0XHUyMDE5cyBhd2Vzb21lIHRvIGhlYXIsIHRoYW5rIHlvdSBmb3IgdGhpcyBmZWVkYmFjay4gV2UgcGxhbiB0byB0ZXN0IHRoaXMgY29uY2VwdC4gT25lIG9mIG91ciBpZGVhcyBpcyB0byBtdXRhdGUgc3BlY2lmaWMgYW1pbm8gYWNpZHMgaW4gdGhlIFROQiBkb21haW4gb2YgRkFOWk9SIHRvIHNlZSBpZiBpdCBjaGFuZ2VzIGl0cyBmdW5jdGlvbmFsaXR5LiBXZSBoYXZlIG9yZGVyZWQgdGhlc2UgZGlmZmVyZW50IHZlcnNpb25zIG9mIEZBTlpPUi5cIiBhPVwiVGhhdFx1MjAxOXMgYSByZWFzb25hYmxlIGFwcHJvYWNoLiBIb3dldmVyLCBiZSBjYXV0aW91cy4gSWYgdGhlIG11dGF0aW9uIGRlc3RhYmlsaXplcyB0aGUgcHJvdGVpbiwgaXQgbWlnaHQgbm90IGJlIGV4cHJlc3NlZCBjb3JyZWN0bHkuIEJ1dCBpdCdzIHdvcnRoIHRyeWluZywgYXMgdGhlIG91dGNvbWUgY2FuIHZhcnkgZGVwZW5kaW5nIG9uIHRoZSBtdXRhdGlvbiBhbmQgdGhlIHByb3RlaW4uXCIvPlxyXG4gICAgPFFhQm94IHE9XCJZZXMsIHdlIGFyZSBhd2FyZSBvZiB0aGF0IHJpc2suIFdlXHUyMDE5cmUgYWxzbyBwbGFubmluZyB0byB1c2UgaW4gdml0cm8gYXNzYXlzIHRvIHRlc3Qgb3VyIGNhbmRpZGF0ZXMuIFdlIGRlc2lnbmVkIGd1aWRlIFJOQXMgYW5kIHdpbGwgdXNlIGdlbCBlbGVjdHJvcGhvcmVzaXMgdG8gYW5hbHl6ZSB0aGUgcmVzdWx0cywgbG9va2luZyBmb3Igbmlja2luZyBvciBkb3VibGUtc3RyYW5kIGN1dHMuXCIgYT1cIkludGVyZXN0aW5nLiBBcmUgeW91IHBsYW5uaW5nIHRvIHB1cmlmeSBlYWNoIGNhbmRpZGF0ZSBwcm90ZWluP1wiLz5cclxuICAgIDxRYUJveCBxPVwiWWVzLCBidXQgd2UgY2Fubm90IHVzZSB5ZWFzdCwgc28gd2Ugd2lsbCB0cnkgcHJvZHVjaW5nIHRoZSBwcm90ZWlucyBpbiBFLiBjb2xpIGFuZCB0aGVuIHB1cmlmeSB0aGVtLiBXZVx1MjAxOWxsIGNvbWJpbmUgdGhlbSB3aXRoIGluIHZpdHJvLXRyYW5zY3JpYmVkIG9tZWdhIFJOQS4gRG8geW91IHRoaW5rIHRoYXQgd291bGQgd29yaz9cIiBhPVwiSXQgbWlnaHQgbm90IHdvcmsgd2l0aCBFLiBjb2xpIGZvciBGQU5aT1IuIEluIG91ciBleHBlcmllbmNlLCBFLiBjb2xpIGNhbm5vdCBwcm9kdWNlIHRoZSBob2xvZW56eW1lIG9mIEZBTlpPUiB3aXRob3V0IGl0cyBhc3NvY2lhdGVkIFJOQS4gV2UgaW5pdGlhbGx5IHRyaWVkIEUuIGNvbGkgYnV0IHRoZW4gc3dpdGNoZWQgdG8geWVhc3QsIHdoaWNoIGFsbG93ZWQgdXMgdG8gb2J0YWluIGZ1bmN0aW9uYWwgcHJvdGVpbi1STkEgY29tcGxleGVzLlwiLz5cclxuICAgIDxRYUJveCBxPVwiVGhhdFx1MjAxOXMgdmFsdWFibGUgaW5zaWdodC4gSXMgdGhlIHJlYXNvbiBFLiBjb2xpIGZhaWxzIGJlY2F1c2UgaXQgY2Fubm90IHByb3Blcmx5IGZvcm0gdGhlIHByb3RlaW4tUk5BIGNvbXBsZXg/XCIgYT1cIlBvc3NpYmx5LiBUaGUgZXhhY3QgcmVhc29uIGlzblx1MjAxOXQgY2xlYXIsIGJ1dCB3ZSBmb3VuZCB0aGF0IG9ubHkgaW4geWVhc3QsIHdoZXJlIHRoZSBwcm90ZWluIGFuZCBSTkEgYXJlIGNvLWV4cHJlc3NlZCBmcm9tIHRoZWlyIG5hdGl2ZSBsb2NpLCBjb3VsZCB3ZSBvYnRhaW4gYSBmdW5jdGlvbmFsIGNvbXBsZXguIFdlIGFsc28gdHJpZWQgcmVwbGljYXRpbmcgdGhpcyBzZXR1cCBpbiBFLiBjb2xpLCBidXQgaXQgZGlkbid0IHdvcmsuXCIvPlxyXG4gICAgPFFhQm94IHE9XCJUaGlzIGlzIHJlYWxseSBoZWxwZnVsIGluZm9ybWF0aW9uLiBXZSB3aWxsIGNvbnNpZGVyIHN3aXRjaGluZyB0byB5ZWFzdC4gRG8geW91IGhhdmUgYW55IGFkdmljZSBvbiBob3cgdG8gcXVpY2tseSB0cmFuc2l0aW9uIG91ciBhcHByb2FjaCBmcm9tIEUuIGNvbGkgdG8geWVhc3Q/XCIgYT1cIllvdSBjYW4gY2VydGFpbmx5IHVzZSB5ZWFzdC4gSXRcdTIwMTlzIG5vdCB0b28gZGlmZmljdWx0LiBZb3UgY291bGQgb3JkZXIgdGhlIHBsYXNtaWRzIGZyb20gQWRkZ2VuZSBhbmQgc3RhcnQgY3VsdHVyaW5nIHllYXN0LiBEb2VzIHlvdXIgaUdFTSB0ZWFtIGhhdmUgdGhlIGFiaWxpdHkgdG8gd29yayB3aXRoIHllYXN0P1wiLz5cclxuICAgIDxRYUJveCBxPVwiWWVzLCB3ZSBjYW4uIFdlJ3ZlIGp1c3QgbmV2ZXIgd29ya2VkIHdpdGggeWVhc3QgYmVmb3JlIGJlY2F1c2UgaXQgc2VlbWVkIGVhc2llciB0byB1c2UgRS4gY29saS4gQnV0IGl0XHUyMDE5cyBnb29kIHRvIGtub3cgdGhhdCBpdFx1MjAxOXMgbWFuYWdlYWJsZS5cIiBhPVwiWWVzLCBpdCBpcy4gV2UgdXNlZCBhIHllYXN0IHN0cmFpbiBjYWxsZWQgQkNZMTIzLCB3aGljaCBjb250YWlucyB0aGUgZ2FsYWN0b3NlIGluZHVjdGlvbiBzeXN0ZW0uIEZvciBwcm90ZWluIGluZHVjdGlvbiBpbiB5ZWFzdCwgdGhpcyBzeXN0ZW0gaXMgbmVjZXNzYXJ5LiBJZiB5b3UgdXNlIGFub3RoZXIgeWVhc3Qgc3RyYWluLCBtYWtlIHN1cmUgaXQgaGFzIHRoZSBjYXBhYmlsaXR5IGZvciBnYWxhY3Rvc2UgaW5kdWN0aW9uLlwiLz5cclxuICAgIDxRYUJveCBxPVwiR290IGl0LCB3ZSB3aWxsIGNvbnNpZGVyIHVzaW5nIEdpYnNvbiBhc3NlbWJseS4gT25jZSB3ZSBjbG9uZSBvdXIgbXV0YXRpb24gY2FuZGlkYXRlcyBpbnRvIHlvdXIgcGxhc21pZCwgd2VcdTIwMTlsbCBleHByZXNzIHRoZSBSTkEtcHJvdGVpbiBjb21wbGV4IGluIHllYXN0IGFuZCBwdXJpZnkgaXQgZnJvbSB0aGVyZS4gSXMgdGhhdCBjb3JyZWN0P1wiIFxyXG4gICAgICAgICAgIGE9XCJZZXMsIHRoYXQncyB0aGUgcmlnaHQgYXBwcm9hY2guIFRoZSBwbGFzbWlkIHdlIHVzZWQgaGFzIGFuIE1CUC10YWcgZm9yIHB1cmlmaWNhdGlvbiwgd2hpY2ggd29ya3MgYmV0dGVyIHRoYW4gYSBIaXMtdGFnLiBJdCBhdm9pZHMgdGhlIGhpZ2ggYmFja2dyb3VuZCB0aGF0IEhpcy10YWdzIG9mdGVuIGludHJvZHVjZS5cIiAvPlxyXG4gICAgPFFhQm94IHE9XCJUaGFuayB5b3UgZm9yIHRoaXMgYWR2aWNlLiBXZSBhbHNvIGhhdmUgYSBxdWVzdGlvbiBhYm91dCB0aGUgeWVhc3Qgc3RyYWluIHlvdSB1c2VkLCBCQ1kxMjMuIElzIGl0IGNydWNpYWwgdG8gdXNlIHRoaXMgc3BlY2lmaWMgc3RyYWluLCBvciBjb3VsZCB3ZSB1c2UgYW4gYWx0ZXJuYXRpdmUgYXMgbG9uZyBhcyBpdCBzdXBwb3J0cyBnYWxhY3Rvc2UgaW5kdWN0aW9uP1wiIFxyXG4gICAgICAgICAgIGE9XCJJbiB0aGVvcnksIHlvdSBjYW4gdXNlIGFueSB5ZWFzdCBzdHJhaW4gdGhhdCBhbGxvd3MgZ2FsYWN0b3NlIGluZHVjdGlvbi4gSG93ZXZlciwgSSByZWNvbW1lbmQgZm9sbG93aW5nIHRoZSB3b3JraW5nIHByb3RvY29sIHdpdGggQkNZMTIzIHNpbmNlIGl0IGhhcyBhbHJlYWR5IGJlZW4gcHJvdmVuIHRvIHdvcmsuIEl0XHUyMDE5cyB0aGUgc2FmZXN0IHdheSB0byBlbnN1cmUgY29uc2lzdGVuY3kgaW4geW91ciBleHBlcmltZW50cy5cIiAvPlxyXG4gICAgPFFhQm94IHE9XCJQZXJmZWN0LCB0aGFuayB5b3UgdmVyeSBtdWNoIGZvciBhbGwgeW91ciBkZXRhaWxlZCBhbnN3ZXJzISBUaGF0IHdvdWxkIGJlIGl0IGZvciB0aGUgaW50ZXJ2aWV3LCBpdCB3YXMgYSBwbGVhc3VyZSBnZXR0aW5nIHRvIGtub3cgeW91IVwiIFxyXG4gICAgICAgICAgIGE9XCJUaGFuayB5b3UhIElcdTIwMTlsbCBiZSBpbiBUb2t5byBhdCBSSUtFTiwgb25lIG9mIHRoZSB0b3Agc2NpZW5jZSBpbnN0aXR1dGVzIGluIEphcGFuLiBJZiB5b3Uga25vdyBhbnkgR2VybWFuIHN0dWRlbnRzIGludGVyZXN0ZWQgaW4gY29taW5nIHRvIEphcGFuLCBwbGVhc2UgbGV0IHRoZW0ga25vdy4gV2UgaGF2ZSB2YXJpb3VzIG9wcG9ydHVuaXRpZXMgZm9yIGludGVybnNoaXBzIG9yIHNob3J0IHN0YXlzLlwiIC8+XHJcbiAgICA8UWFCb3ggcT1cIlRoYXRcdTIwMTlzIHdvbmRlcmZ1bCB0byBoZWFyLiBUaGFuayB5b3Ugc28gbXVjaCBmb3IgeW91ciB0aW1lIGFuZCB2YWx1YWJsZSBpbnNpZ2h0cy5cIiBcclxuICAgICAgICAgICBhPVwiTXkgcGxlYXN1cmUuIEkgd2lzaCB5b3UgdGhlIGJlc3Qgb2YgbHVjayB3aXRoIHlvdXIgcHJvamVjdC4gRmVlbCBmcmVlIHRvIHJlYWNoIG91dCBhbnl0aW1lLiBHb29kYnllIVwiIC8+XHJcbiAgICA8Lz4sXHJcbiAgICBwaWN0dXJldXJsX2ludGVydmlldzpcImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2ludGVncmF0ZWQtaHVtYW4tcHJhY3RpY2VzL3NhaXRvLndlYnBcIixcclxuICB9LFxyXG4gIHtcclxuICAgIHRpdGxlOiBcIkRyLiByZXIuIG5hdC4gXCIsXHJcbiAgICB2b3JuYW1lOiBcIk1hcmN1c1wiLFxyXG4gICAgbmFjaG5uYW1lOiBcIkJlcmdlclwiLFxyXG4gICAgam9iOiBcIkdYUCBcIixcclxuICAgIGFmZmlsaWF0aW9uOiBcIkV4cGVydFwiLFxyXG4gICAgcGljdHVyZXVybDogcGljc1snZ3hwZXhwZXJ0J10sXHJcbiAgICB0YWc6IFwiSW5kdXN0cnlcIixcclxuICAgIGxhbmd1YWdlOiBcImRlXCIsXHJcbiAgICBoZWFkaW5nOiBcIkRlZXAgRGl2ZSBpbnRvIEdvb2QgUHJhY3Rpc2UsIEd4UCBcIixcclxuICAgIGludGVydmlld3RhYmlkOiBcImd4cGV4cGVydFwiLFxyXG5cclxuICAgIHF1b3RlTmFjaG5hbWU6IFwiQmVyZ2VyLCBHeFAgRXhwZXJ0XCIsXHJcbiAgICBxdW90ZVZvcm5hbWU6IFwiRHIuIHJlci4gbmF0LiBNYXJjdXNcIixcclxuICAgIHF1b3RlOiBcIk1pbmltdW0gcmVxdWlyZW1lbnQ6IEFjdXRlIHRveGljaXR5IHN0dWR5IG9uIGFuaW1hbHMgLSBpbXBvcnRhbnQgZm9yIGNhbGN1bGF0aW5nIHRoZSBzdGFydGluZyBkb3NlIGZvciBodW1hbnMuIEluIGFkZGl0aW9uLCBwaGFybWFjb2xvZ2ljYWwgc3R1ZGllcywgZ2Vub3RveGljIHN0dWRpZXMgYW5kIGltbXVub3RveGljIHN0dWRpZXMuIEluIHlvdXIgY2FzZSBhbHNvIGNocm9uaWMgdG94aWNpdHkgc3R1ZGllcy5cIixcclxuICAgIGFpbW9mY29udGFjdDogWzxwPlRoZSBhaW0gb2Ygb3VyIGNvbnRhY3Qgd2l0aCBHeFAgZXhwZXJ0IDxhIGhyZWY9XCJodHRwczovL2d4cGV4cGVydC5kZS9cIj5Eci4gTWFyY3VzIEJlcmdlcjwvYT4gd2FzIHRvIGdhdGhlciBpbnNpZ2h0cyBhbmQgYXNrIHF1ZXN0aW9ucyBhYm91dCBob3cgdG8gcHJvY2VlZCB3aXRoIHRoZSBQcmVjeXNlIHByb2plY3QsIGNsYXJpZnlpbmcgdGhlIG5leHQgc3RlcHMgcmVxdWlyZWQgZm9yIGl0cyBjb250aW51ZWQgZGV2ZWxvcG1lbnQsIHBhcnRpY3VsYXJseSBjb25jZXJuaW5nIHJlZ3VsYXRvcnkgc3RyYXRlZ3ksIHF1YWxpdHkgbWFuYWdlbWVudCwgYW5kIGNsaW5pY2FsIGRldmVsb3BtZW50LiBHeFAsIHdoaWNoIHN0YW5kcyBmb3IgXHUyMDE4R29vZCBQcmFjdGljZVx1MjAxOSBndWlkZWxpbmVzLCBlbmNvbXBhc3NlcyB2YXJpb3VzIHJlZ3VsYXRpb25zIGFuZCBzdGFuZGFyZHMgaW50ZW5kZWQgdG8gZW5zdXJlIHF1YWxpdHkgYW5kIGNvbXBsaWFuY2UgaW4gdGhlIGRldmVsb3BtZW50IGFuZCBtYW51ZmFjdHVyaW5nIG9mIHBoYXJtYWNldXRpY2FsIGFuZCBiaW9waGFybWFjZXV0aWNhbCBwcm9kdWN0cy4gPC9wPl0sXHJcbiAgICBpbnNpZ2h0czogWzxwPkZyb20gdGhlIGRpc2N1c3Npb24gd2l0aCBEci4gQmVyZ2VyIGV4cGVydCwgd2UgZ2FpbmVkIHNldmVyYWwga2V5IGluc2lnaHRzIGludG8gaG93IHRvIHByb2NlZWQgd2l0aCB0aGUgUHJlY3lzZSBwcm9qZWN0LiBGaXJzdCwgaXQgYmVjYW1lIGNsZWFyIHRoYXQgb2J0YWluaW5nIGEgU2NpZW50aWZpYyBBZHZpY2UgZnJvbSB0aGUgUGF1bC1FaHJsaWNoLUluc3RpdHV0ICA8YSBocmVmPVwiIGh0dHBzOi8vd3d3LnBlaS5kZS9ERS9ob21lL2hvbWUtbm9kZS5odG1sXCIgPihQRUkpPC9hPlxyXG4gICAgICBpcyBlc3NlbnRpYWwgdG8gZ2V0IHF1YWxpZmllZCBmZWVkYmFjayBvbiBvdXIgZGV2ZWxvcG1lbnQgcHJvamVjdCBhbmQgYWxpZ24gb3VyIHJlZ3VsYXRvcnkgc3RyYXRlZ3kuIFRoZSBleHBlcnQgZW1waGFzaXplZCB0aGUgbmVlZCB0byBjb2xsZWN0IGFuZCBkb2N1bWVudCBwcmVjbGluaWNhbCBkYXRhLCBpbmNsdWRpbmcgYWN1dGUgYW5kIGNocm9uaWMgdG94aWNpdHkgc3R1ZGllcywgZ2Vub3RveGljaXR5LCBpbW11bm90b3hpY2l0eSwgYW5kIGNhcmNpbm9nZW5pY2l0eSBzdHVkaWVzLCBhcyB3ZWxsIGFzIGNvbmR1Y3Rpbmcgc2FmZXR5IHBoYXJtYWNvbG9neSBhbmQgYmlvZGlzdHJpYnV0aW9uIHN0dWRpZXMgdG8gZW5zdXJlIGEgdGhvcm91Z2ggdW5kZXJzdGFuZGluZyBvZiB0aGUgc3Vic3RhbmNlJ3MgbWVjaGFuaXNtIG9mIGFjdGlvbi4gXHJcbiAgICAgIFRoZSBleHBlcnQgYWxzbyBwcm92aWRlZCBndWlkYW5jZSBvbiBob3cgdG8gZXN0YWJsaXNoIGEgR3hQLWNvbXBsaWFudCBxdWFsaXR5IG1hbmFnZW1lbnQgc3lzdGVtIChRTVMpLCBzdHJlc3NpbmcgdGhlIGltcG9ydGFuY2Ugb2Ygc2V0dGluZyB1cCBhIHJvYnVzdCBTT1Agc3lzdGVtIGZvciBtYW51ZmFjdHVyaW5nLCBwcmVjbGluaWNhbCwgYW5kIGNsaW5pY2FsIGRldmVsb3BtZW50LiBUaGlzIHN5c3RlbSBtdXN0IGFkaGVyZSB0byBJQ0ggUTEwIGd1aWRlbGluZXMsIGVuc3VyaW5nIHRoYXQgdGhlIHF1YWxpdHkgY29udHJvbCBwcm9jZXNzZXMgYXJlIGluIGxpbmUgd2l0aCByZWd1bGF0b3J5IGV4cGVjdGF0aW9ucy4gRnVydGhlcm1vcmUsIHdlIGxlYXJuZWQgYWJvdXQgdGhlIGNyaXRpY2FsIGluaXRpYWwgc3RlcHMgZm9yIHZhbGlkYXRpbmcgYW5kIHZlcmlmeWluZyB0aGUgbWFudWZhY3R1cmluZyBwcm9jZXNzLCBpbmNsdWRpbmcgZGVmaW5pbmcgdGhlIHBoeXNpY2FsIGFuZCBjaGVtaWNhbCBwcm9wZXJ0aWVzIG9mIHRoZSBhY3RpdmUgc3Vic3RhbmNlIGFuZCBleGNpcGllbnRzLCBkZXZlbG9waW5nIHRoZSBwaGFybWFjZXV0aWNhbCBmb3JtdWxhdGlvbiwgYW5kIGlkZW50aWZ5aW5nIGNyaXRpY2FsIHF1YWxpdHkgYXR0cmlidXRlcyAoQ1FBcykgYW5kIGNyaXRpY2FsIG1hdGVyaWFsIGF0dHJpYnV0ZXMgKENNQXMpLiAgXHJcbiAgICAgIFRoZSBJQ0gtR0NQIGd1aWRlbGluZXMsIHdoaWNoIGFwcGx5IHRvIGFsbCBjbGluaWNhbCB0cmlhbHMsIGFyZSBlc3NlbnRpYWwgZm9yIGVuc3VyaW5nIHRoZSBpbnRlZ3JpdHkgYW5kIHNhZmV0eSBvZiBjbGluaWNhbCBkZXZlbG9wbWVudC4gVGhlc2UgZ3VpZGVsaW5lcyBpbmNsdWRlIEUyQS1FMkYsIHdoaWNoIGNvdmVyIHRvcGljcyBsaWtlIGNsaW5pY2FsIHNhZmV0eSBkYXRhIG1hbmFnZW1lbnQgYW5kIGFkdmVyc2UgZXZlbnQgcmVwb3J0aW5nLCBFMyBmb3IgY2xpbmljYWwgc3R1ZHkgcmVwb3J0cywgRTUgZm9yIGhhbmRsaW5nIGV0aG5pYyBmYWN0b3JzLCBhbmQgRTkgZm9yIHN0YXRpc3RpY2FsIHByaW5jaXBsZXMuIEFkZGl0aW9uYWxseSwgRTE0IGlzIGNydWNpYWwgZm9yIG1hbmFnaW5nIGNhcmRpb3Zhc2N1bGFyIHJpc2tzLCBhbiBlc3BlY2lhbGx5IGltcG9ydGFudCBjb25zaWRlcmF0aW9uIGZvciBnZW5lIHRoZXJhcGllcywgd2hlcmUgbW9uaXRvcmluZyBmb3IgaGVhcnQtcmVsYXRlZCBzaWRlIGVmZmVjdHMgaXMgY3JpdGljYWwuIEd1aWRlbGluZXMgbGlrZSBFMTUgYW5kIEUxNiBhZGRyZXNzIGJpb21hcmtlcnMgYW5kIHBoYXJtYWNvZ2Vub21pY3MsIGhlbHBpbmcgdGFpbG9yIGNsaW5pY2FsIGRldmVsb3BtZW50IHRvIHRoZSBzcGVjaWZpY3Mgb2YgdGhlIHRyZWF0bWVudCBiZWluZyB0ZXN0ZWQuIEltcGxlbWVudGluZyB0aGVzZSBHQ1AgcmVxdWlyZW1lbnRzIGVuc3VyZXMgY29tcGxpYW5jZSwgcGF0aWVudCBzYWZldHksIGFuZCBkYXRhIGludGVncml0eSB0aHJvdWdob3V0IHRoZSB0cmlhbCBwcm9jZXNzLiBcclxuICAgICAgSW4gdGVybXMgb2YgcHJvY2VzcyBzY2FsZS11cCwgdGhlIGV4cGVydCBhZHZpc2VkIGZvY3VzaW5nIG9uIGRlZmluaW5nIGNyaXRpY2FsIHByb2Nlc3MgcGFyYW1ldGVycyAoQ1BQcykgYW5kIGVuc3VyaW5nIHRoYXQgdGhlIHByb2Nlc3MgZGVzaWduIGFuZCBjb250cm9sIHN0cmF0ZWdpZXMgYXJlIHdlbGwtdW5kZXJzdG9vZCBiZWZvcmUgc2NhbGluZyBwcm9kdWN0aW9uIGZyb20gdGhlIGxhYiB0byBhIGNvbW1lcmNpYWwgc2NhbGUuIEFkZGl0aW9uYWxseSwgd2UgZGlzY3Vzc2VkIHRoZSBuZWVkIHRvIGRldmVsb3AgYSBjb250cm9sIHN0cmF0ZWd5LCBpbXBsZW1lbnQgaW4tcHJvY2VzcyBjb250cm9scywgYW5kIGVuc3VyZSB0aGF0IHByb2Nlc3MgdmFyaWFiaWxpdHkgaXMgY29udGludWFsbHkgbW9uaXRvcmVkIHRvIHN1cHBvcnQgb25nb2luZyBpbXByb3ZlbWVudHMuIFxyXG4gICAgICBUaGVzZSBpbnNpZ2h0cyBjbGFyaWZpZWQgdGhlIGltbWVkaWF0ZSBhbmQgZnV0dXJlIHN0ZXBzIHJlcXVpcmVkIHRvIG1vdmUgUHJlY3lzZSBmb3J3YXJkLCBwYXJ0aWN1bGFybHkgaW4gdGVybXMgb2YgcmVndWxhdG9yeSBzdWJtaXNzaW9ucywgcXVhbGl0eSBtYW5hZ2VtZW50LCBhbmQgcHJvZHVjdGlvbiBzY2FsZS11cC4gPC9wPl0sXHJcbiAgICBpbXBsZW1lbnRhdGlvbjogWzxwPldlIHVzZWQgdGhlIGluc2lnaHRzIGZyb20gdGhlIGV4cGVydCB0byBvdXRsaW5lIHRoZSBwb3NzaWJsZSBuZXh0IHN0ZXBzIGZvciBQcmVjeXNlLiBUaGlzIGluY2x1ZGVkIHBsYW5uaW5nIHRoZSBjb2xsZWN0aW9uIG9mIG5lY2Vzc2FyeSBwcmVjbGluaWNhbCBkYXRhLCBzZXR0aW5nIHVwIGEgR3hQLWNvbXBsaWFudCBRTVMsIGFuZCBwcmVwYXJpbmcgZm9yIHJlZ3VsYXRvcnkgc3VibWlzc2lvbi4gV2UgYWxzbyBiZWdhbiBkcmFmdGluZyBhIHN0cmF0ZWd5IGZvciBwcm9jZXNzIHZhbGlkYXRpb24gYW5kIHNjYWxpbmcgdXAgcHJvZHVjdGlvbiwgZW5zdXJpbmcgdGhhdCB3ZSBhcmUgYWxpZ25lZCB3aXRoIGJvdGggcmVndWxhdG9yeSBhbmQgb3BlcmF0aW9uYWwgcmVxdWlyZW1lbnRzLiBUaGlzIGV4cGVydCBmZWVkYmFjayBoZWxwZWQgdXMgZXN0YWJsaXNoIGEgY2xlYXJlciBwYXRoIGZvciB0aGUgY29udGludWVkIGRldmVsb3BtZW50IG9mIFByZWN5c2UuIDwvcD5dLFxyXG4gICAgc3VtbWFyeTogXCJJbiBvdXIgY29uc3VsdGF0aW9uIHdpdGggR3hQIGV4cGVydCBEci4gTWFyY3VzIEJlcmdlciwgd2UgZ2FpbmVkIGtleSBpbnNpZ2h0cyB0byBhZHZhbmNlIHRoZSBQcmVjeXNlIHByb2plY3QsIGZvY3VzaW5nIG9uIHJlZ3VsYXRvcnkgc3RyYXRlZ3ksIHF1YWxpdHkgbWFuYWdlbWVudCwgYW5kIGNsaW5pY2FsIGRldmVsb3BtZW50LiBIZSBlbXBoYXNpemVkIG9idGFpbmluZyBTY2llbnRpZmljIEFkdmljZSBmcm9tIHRoZSBQYXVsLUVocmxpY2gtSW5zdGl0dXQgKFBFSSkgYW5kIGNvbGxlY3RpbmcgZXNzZW50aWFsIHByZWNsaW5pY2FsIGRhdGEsIGluY2x1ZGluZyB0b3hpY2l0eSBhbmQgYmlvZGlzdHJpYnV0aW9uIHN0dWRpZXMuIFdlIGFsc28gbGVhcm5lZCBob3cgdG8gdGhlb3JldGljYWxseSBzZXQgdXAgYSBHeFAtY29tcGxpYW50IHF1YWxpdHkgbWFuYWdlbWVudCBzeXN0ZW0gKFFNUykgZm9sbG93aW5nIElDSCBRMTAgZ3VpZGVsaW5lcyBhbmQgdGhlIGltcG9ydGFuY2Ugb2YgY3JpdGljYWwgcXVhbGl0eSBhdHRyaWJ1dGVzIChDUUFzKSBpbiBwcm9jZXNzIHZhbGlkYXRpb24uIERyLiBCZXJnZXIgcHJvdmlkZWQgZ3VpZGFuY2Ugb24gc2NhbGluZyBwcm9kdWN0aW9uIGFuZCBmb2xsb3dpbmcgSUNILUdDUCBndWlkZWxpbmVzIGZvciBjbGluaWNhbCB0cmlhbHMsIGVzcGVjaWFsbHkgZm9yIG1hbmFnaW5nIHJpc2tzIGluIGdlbmUgdGhlcmFwaWVzLiBUaGlzIGV4cGVydCBhZHZpY2UgaGVscGVkIHVzIHBsYW4gdGhlIG5leHQgc3RlcHMgZm9yIFByZWN5c2UsIGluY2x1ZGluZyBwcmVjbGluaWNhbCBkYXRhIGNvbGxlY3Rpb24sIFFNUyBzZXR1cCwgYW5kIHByb2R1Y3Rpb24gc2NhbGUtdXAuXCIsXHJcbiAgICBtb250aHM6IFwiU2VwdGVtYmVyXCIsXHJcbiAgICBpbnRlcnZpZXc6PD5cclxuICAgIDxRYUJveCBxPVwiSG93IGRvIHdlIGRlZmluZSB0aGUgcmVndWxhdG9yeSBzdHJhdGVneSAoZS5nLiBJTkQvSU1QRCBhcHBsaWNhdGlvbnMpP1wiIGE9XCJUaGUgcmVndWxhdG9yeSBzdHJhdGVneSBpbmNsdWRlcyB0aGUgcGxhbm5pbmcgb2YgY2xpbmljYWwgYW5kIHByZWNsaW5pY2FsIGRldmVsb3BtZW50IGluIGFjY29yZGFuY2Ugd2l0aCBhcHBsaWNhYmxlIHJlZ3VsYXRpb25zLCBzdWNoIGFzIENUUiA1MzYvMjAxNCBpbiBFdXJvcGUuIFBsYW5uaW5nLCBjb25kdWN0LCBkb2N1bWVudGF0aW9uLCBhbmQgcmVwb3J0aW5nIGFwcGxpZXMgdG8gY2xpbmljYWwgdHJpYWxzLlwiLz5cclxuICAgIDxRYUJveCBxPVwiV2hhdCBpbml0aWFsIHN0ZXBzIGFyZSBuZWNlc3NhcnkgdG8gcHJlcGFyZSB0aGUgc3VibWlzc2lvbiB0byB0aGUgY29tcGV0ZW50IGF1dGhvcml0aWVzP1wiIGE9XCJGaXJzdGx5LCBhIFNjaWVudGlmaWMgQWR2aWNlIHNob3VsZCBiZSByZXF1ZXN0ZWQgZnJvbSB0aGUgY29tcGV0ZW50IGF1dGhvcml0eS4gVGhpcyBlbmFibGVzIGVhcmx5IGZlZWRiYWNrIG9uIHRoZSBwbGFubmVkIGRldmVsb3BtZW50IG9mIHRoZSBzdWJzdGFuY2UsIHdoaWNoIGhlbHBzIHRvIG9wdGltaXNlIHRoZSBzdWJtaXNzaW9uIHN0cmF0ZWd5LiBTY2llbnRpZmljIGFkdmljZSBmcm9tIGF1dGhvcml0aWVzIHN1Y2ggYXMgdGhlIFBhdWwgRWhybGljaCBJbnN0aXR1dGUgZW5zdXJlcyB0aGF0IHRoZSByZXF1aXJlbWVudHMgYXJlIGNvcnJlY3RseSB1bmRlcnN0b29kIGFuZCBpbXBsZW1lbnRlZC4gSXQgaXMgYWxzbyBuZWNlc3NhcnkgdG8gdGhpbmsgYWJvdXQgaG93IHlvdSB3YW50IHRvIGRldmVsb3AgdGhlIHN1YnN0YW5jZS5cIi8+XHJcbiAgICA8UWFCb3ggcT1cIldoYXQgcHJlY2xpbmljYWwgZGF0YSBtdXN0IGJlIGNvbGxlY3RlZCBhbmQgZG9jdW1lbnRlZCBpbiBvcmRlciB0byBmdWxmaWwgdGhlIGF1dGhvcmlzYXRpb24gcmVxdWlyZW1lbnRzP1wiIGE9XCJBY3V0ZSBhbmQgY2hyb25pYyB0b3hpY2l0eSBzdHVkaWVzLCBnZW5vdG94aWNpdHkgYW5kIGltbXVub3RveGljaXR5IHN0dWRpZXMsIGNhcmNpbm9nZW5pY2l0eSBzdHVkaWVzLCBzYWZldHkgcGhhcm1hY29sb2d5IGFuZCBzdHVkaWVzIG9uIGJpb2Rpc3RyaWJ1dGlvbiBhbmQgdGhlIG1lY2hhbmlzbSBvZiBhY3Rpb24gb2YgdGhlIHN1YnN0YW5jZSBhcmUgcmVxdWlyZWQuIFRoZXJlZm9yZSwgY2hlY2sgdGhlIG9mZmljaWFsIHdlYnNpdGUgSUNILlwiLz5cclxuICAgIDxRYUJveCBxPVwiV2hpY2ggYXV0aG9yaXRpZXMgc2hvdWxkIHdlIGNvbnN1bHQgYXQgYW4gZWFybHkgc3RhZ2UgaW4gb3JkZXIgdG8gaGFybW9uaXNlIHRoZSByZWd1bGF0b3J5IHJlcXVpcmVtZW50cz9cIiBhPVwiSW4gR2VybWFueSwgdGhlIFBhdWwtRWhybGljaC1JbnN0aXR1dGUgaXMgdGhlIGNlbnRyYWwgYXV0aG9yaXR5IGZvciBkcnVnIGRldmVsb3BtZW50IGFuZCBhdXRob3Jpc2F0aW9uLlwiLz5cclxuICAgIDxRYUJveCBxPVwiSG93IGRvIHdlIHN0YXJ0IHNldHRpbmcgdXAgYSBHeFAtY29tcGxpYW50IHF1YWxpdHkgbWFuYWdlbWVudCBzeXN0ZW0gKFFNUyk/XCIgYT1cIlRoZSBlc3RhYmxpc2htZW50IG9mIGEgUU1TIGlzIGJhc2VkIG9uIHRoZSBpbXBsZW1lbnRhdGlvbiBvZiBhbiBTT1Agc3lzdGVtIGZvciBtYW51ZmFjdHVyaW5nLCBwcmVjbGluaWNhbCwgYW5kIGNsaW5pY2FsIGRldmVsb3BtZW50LCBiYXNlZCBvbiB0aGUgSUNIIFExMCBndWlkZWxpbmVzLlwiLz5cclxuICAgIDxRYUJveCBxPVwiV2hhdCBpbml0aWFsIHZhbGlkYXRpb24gYW5kIHZlcmlmaWNhdGlvbiBzdGVwcyBhcmUgcmVxdWlyZWQgZm9yIG91ciBtYW51ZmFjdHVyaW5nIHByb2Nlc3Nlcz9cIiBhPVwiVGhlIHBoeXNpY28tY2hlbWljYWwgcHJvcGVydGllcyBvZiBhY3RpdmUgaW5ncmVkaWVudHMgYW5kIGV4Y2lwaWVudHMgbXVzdCBiZSBkZXRlcm1pbmVkLiBUaGlzIGluY2x1ZGVzIHRoZSBkZWZpbml0aW9uIG9mIHRoZSBwaGFybWFjZXV0aWNhbCBmb3JtdWxhdGlvbiwgdGhlIG1hbnVmYWN0dXJpbmcgcHJvY2VzcyBhbmQgdGhlIHN0YXJ0aW5nIG1hdGVyaWFscyBhcyB3ZWxsIGFzIHRoZSBkZWZpbml0aW9uIG9mIFF1YWxpdHkgVGFyZ2V0IFByb2R1Y3QgUHJvZmlsZXMsIENyaXRpY2FsIFF1YWxpdHkgQXR0cmlidXRlcywgYW5kIENyaXRpY2FsIE1hdGVyaWFsIEF0dHJpYnV0ZXMuIFRoZSBuZXh0IHN0ZXAgaXMgcHJvY2VzcyBkZXNpZ24gYW5kIHVuZGVyc3RhbmRpbmcgdGhlIGNyaXRpY2FsIHByb2Nlc3MgcGFyYW1ldGVycyBhbmQgc2NhbGUtdXAgcHJpbmNpcGxlcy4gVGhlbiBkZXZlbG9wIGEgY29udHJvbCBzdHJhdGVneSB3aXRoIHNwZWNpZmljYXRpb25zIGZvciBhY3RpdmUgc3Vic3RhbmNlLCBleGNpcGllbnQgJiBmaW5pc2hlZCBkcnVnIHByb2R1Y3QuIEFmdGVyIHRoYXQgZXN0YWJsaXNoIGFuIGluLXByb2Nlc3MgY29udHJvbCBhbmQgdGhpbmsgYWJvdXQgcHJvY2VzcyBjYXBhYmlsaXR5IGFuZCBjb250aW51b3VzIGltcHJvdmVtZW50LiBUaGVyZWZvcmUgbWVhc3VyZSB2YXJpYWJpbGl0eSBvZiB0aGUgbWFudWZhY3R1cmluZyBwcm9jZXNzLlwiLz5cclxuICAgIDxRYUJveCBxPVwiV2hhdCBtZWFzdXJlcyBhcmUgbmVjZXNzYXJ5IHRvIGVuc3VyZSBkb2N1bWVudGF0aW9uIGFuZCB0cmFjZWFiaWxpdHk/XCIgYT1cIkEgZG9jdW1lbnQgY29udHJvbCBzeXN0ZW0gbXVzdCBiZSBpbXBsZW1lbnRlZCB0byBlbnN1cmUgdHJhY2VhYmlsaXR5IGFuZCBkb2N1bWVudGF0aW9uLlwiLz5cclxuICAgIDxRYUJveCBxPVwiV2hhdCBzdGVwcyBhcmUgbmVjZXNzYXJ5IHRvIHNjYWxlIHVwIHRoZSBwcm9kdWN0aW9uIHByb2Nlc3NlcyBmcm9tIGxhYm9yYXRvcnkgdG8gcHJvZHVjdGlvbiBzY2FsZT9cIiBhPVwiR01QIGV4cGVydHMgc2hvdWxkIGJlIGNvbnN1bHRlZCBmb3IgZGV0YWlsZWQgaW5mb3JtYXRpb24gb24gc2NhbGluZy4gSSBjYW4ndCBoZWxwIHlvdSB3aXRoIHRoaXMgcG9pbnQuIFRoZSBHTVAgbGVjdHVyZXJzIGFyZSB0aGUgcmlnaHQgcGVvcGxlIHRvIHRhbGsgdG8uXCIvPlxyXG4gICAgPFFhQm94IHE9XCJIb3cgZG8gd2UgZGV2ZWxvcCBhbiBpbml0aWFsIGNsaW5pY2FsIGRldmVsb3BtZW50IHN0cmF0ZWd5IHRvIG1vdmUgZnJvbSBwcmVjbGluaWNhbCBzdHVkaWVzIHRvIGZpcnN0LWluLWh1bWFuIChGSUgpIHN0dWRpZXM/XCIgYT1cIlRoZSBtaW5pbXVtIHJlcXVpcmVtZW50cyBpbmNsdWRlIGFjdXRlIHRveGljaXR5IHN0dWRpZXMgaW4gYW5pbWFscyB0byBjYWxjdWxhdGUgdGhlIHN0YXJ0aW5nIGRvc2UgZm9yIGh1bWFucy4gSW4gYWRkaXRpb24sIHBoYXJtYWNvbG9naWNhbCBzdHVkaWVzLCBnZW5vdG94aWMgc3R1ZGllcyBhbmQgaW1tdW5vdG94aWMgc3R1ZGllcy4gSW4geW91ciBjYXNlLCBhbHNvIGNocm9uaWMgdG94aWNpdHkgc3R1ZGllcy4gRGVzaWduIG9mIGEgRklIIHN0dWR5IGZvciBkb3NlIGVzY2FsYXRpb24sIGluY2x1ZGluZyBzdGFydGluZyBkb3NlLCBzZXF1ZW50aWFsIHN0dWR5IGRlc2lnbiBhbmQgc3RvcHBpbmcgcnVsZXMuIElkZW50aWZpY2F0aW9uIG9mIHRoZSB0b3hpYyBsaW1pdCBhbmQgdGhlIHNvLWNhbGxlZCBSZWNvbW1lbmRlZCBTdGFydCBEb3NlIGZvciBQaGFzZSAyLiBUaGUgZ3VpZGVsaW5lcyBvbiBxdWFsaXR5LCBub24tY2xpbmljYWwgYW5kIGNsaW5pY2FsIHJlcXVpcmVtZW50cyBmb3IgaW52ZXN0aWdhdGlvbmFsIGFkdmFuY2VkIHRoZXJhcHkgbWVkaWNpbmFsIHByb2R1Y3RzIGluIGNsaW5pY2FsIHRyaWFscyBjYW4gYmUgZm91bmQgYXQgdGhlIEV1cm9wZWFuIE1lZGljaW5lcyBBZ2VuY3kgKEVNQSkuXCIvPlxyXG4gICAgPFFhQm94IHE9XCJXaGljaCBHQ1AgcmVxdWlyZW1lbnRzIG5lZWQgdG8gYmUgaW1wbGVtZW50ZWQgdG8gc3VwcG9ydCBjbGluaWNhbCBkZXZlbG9wbWVudD9cIiBhPVwiVGhlIElDSC1HQ1AgZ3VpZGVsaW5lcyBhcHBseSB0byBhbGwgY2xpbmljYWwgdHJpYWxzIGFuZCBpbmNsdWRlIHRoZSBFMkEgLSBFMkY7IEUzOyBFNTsgRTk7IEUxNTsgRTE2IGd1aWRlbGluZXMgYW5kIEUxNCwgd2hpY2ggaXMgaW1wb3J0YW50IGZvciB0aGUgbWFuYWdlbWVudCBvZiBjYXJkaW92YXNjdWxhciByaXNrcywgZXNwZWNpYWxseSBpbXBvcnRhbnQgZm9yIGdlbmUgdGhlcmFwaWVzLCBhbW9uZyBvdGhlcnMuXCIvPlxyXG4gICAgPFFhQm94IHE9XCJIb3cgZG8gd2UgY29uZHVjdCBhIHJpc2sgYW5hbHlzaXMgdG8gaWRlbnRpZnkgY2hhbGxlbmdlcyBpbiBkZXZlbG9wbWVudCBhbmQgbGF1bmNoP1wiIGE9XCJSaXNrIGFuYWx5c2VzIHNob3VsZCBiZSBjb25kdWN0ZWQgZm9yIHBoYXJtYWNldXRpY2FsLCBwcmVjbGluaWNhbCwgYW5kIGNsaW5pY2FsIGRldmVsb3BtZW50IHRvIGlkZW50aWZ5IHBvdGVudGlhbCBjaGFsbGVuZ2VzLlwiLz5cclxuICAgIDxRYUJveCBxPVwiV2hpY2ggcHJvZHVjdCBzYWZldHkgYW5kIGVmZmljYWN5IHJpc2tzIG5lZWQgdG8gYmUgcHJpb3JpdGlzZWQgYW5kIG1hbmFnZWQ/XCIgYT1cIlJpc2tzIHRvIGJlIHByaW9yaXRpc2VkIGluY2x1ZGUgdGhlIHN0YXJ0aW5nIG1hdGVyaWFscywgY3JpdGljYWwgcHJvY2VzcyBzdGVwcyBpbiBtYW51ZmFjdHVyaW5nIGFuZCB0aGUgYnVsayBwcm9kdWN0LiBJdCBpcyBlc3NlbnRpYWwgdG8gY2Fycnkgb3V0IHByb2FjdGl2ZSBwcm9jZXNzIHZhbGlkYXRpb24gYW5kIGVzdGFibGlzaCBhIGNoYW5nZSBtYW5hZ2VtZW50IHN5c3RlbS5cIi8+XHJcbiAgICA8UWFCb3ggcT1cIldoYXQgaW5pdGlhbCBzdGVwcyBkbyB3ZSBuZWVkIHRvIHRha2UgdG8gYW5hbHlzZSB0aGUgbWFya2V0IGFuZCBwcmVwYXJlIGZvciBtYXJrZXQgYWNjZXNzP1wiIGE9XCJBIHN0YWtlaG9sZGVyIGFuYWx5c2lzIG9mIHRoZSBtYXJrZXQgcGFydGljaXBhbnRzIGFuZCBhIGNvbXBhcmlzb24gb2YgdGhlIG5ldyB0aGVyYXB5IHdpdGggdGhlIHN0YW5kYXJkIHRoZXJhcHkgYXJlIHJlcXVpcmVkLiBQaHlzaWNpYW4gbmV0d29ya3Mgc2hvdWxkIGJlIGlkZW50aWZpZWQgYW5kIHRoZSBwcmljaW5nIHN0cmF0ZWd5IGRlZmluZWQsIHRha2luZyBpbnRvIGFjY291bnQgdGhlIEdCQSBhbmQgdGhlIGhlYWx0aCBpbnN1cmFuY2UgZnVuZHMuXCIvPlxyXG4gICAgPFFhQm94IHE9XCJIb3cgZG8gd2UgZGV2ZWxvcCBhIHN0cmF0ZWd5IGZvciB0aGUgcHJvdGVjdGlvbiBvZiBpbnRlbGxlY3R1YWwgcHJvcGVydHkgYW5kIHBhdGVudHM/XCIgYT1cIlRoZSBzdHJhdGVneSBzaG91bGQgaW5jbHVkZSBwYXRlbnQgYXBwbGljYXRpb25zIGluIHRoZSBmb2xsb3dpbmcgb3JkZXI6IEZpcnN0IGZvciB0aGUgYWN0aXZlIGluZ3JlZGllbnQgYW5kIHRoZSBmb3JtdWxhdGlvbiAocHJvZHVjdCBwYXRlbnQpLCB0aGVuIHRoZSBtYW51ZmFjdHVyaW5nIHJvdXRlIGFzIHByb2Nlc3MgcGF0ZW50IGFuZCBmb2xsb3dlZCBieSBpbmRpY2F0aW9uIGFzIHVzZSBwYXRlbnQuIEZpbmFsbHksIGEgdXRpbGl0eSBtb2RlbCBtYXkgYWxzbyBiZSB1c2VmdWwuXCIvPlxyXG4gICAgPC8+XHJcbiAgfSxcclxuICB7XHJcbiAgICB2b3JuYW1lOiBcIlBoeXNpY2FsIFwiLFxyXG4gICAgbmFjaG5uYW1lOiBcImFuZCBCaW9waHlzaWNhbCBDaGVtaXN0cnkgXCIsXHJcbiAgICBqb2I6IFwiV29ya2luZyBncm91cCBcIixcclxuICAgIGFmZmlsaWF0aW9uOiBcIlVuaXZlcnNpdHkgQmllbGVmZWxkIFwiLFxyXG4gICAgbGFuZ3VhZ2U6IFwiZW5cIixcclxuICAgIHBpY3R1cmV1cmw6IHBpY3NbJ3BoeXNpayddLFxyXG4gICAgdGFnOiBcIkFjYWRlbWlhXCIsXHJcbiAgICBoZWFkaW5nOiBcIlBlcmZvcm1hbmNlIG9mIEV4cGVyaW1lbnRzIGZvciBMTlAgY2hhcmFjdGVyaXphdGlvbiBcIixcclxuICAgIGludGVydmlld3RhYmlkOiBcImJpb3BoeXNpa1wiLFxyXG5cclxuICAgIHF1b3RlOiBcIkl0IHdhcyBhIGdyZWF0IGNvbm5lY3Rpb24gYW5kIGEgdHJlbWVuZG91cyBoZWxwIGluIGFuYWx5emluZyB0aGUgTE5QLiBUaGV5IHByb3ZpZGVkIHVzIHdpdGggaW5zaWdodHMgaW50byBzb21lIHRydWx5IGV4Y2l0aW5nIG1ldGhvZHMuXCIsXHJcbiAgICBxdW90ZU5hY2huYW1lOiBcIkJhYWNrLCBUZWFtbWVtYmVyXCIsXHJcbiAgICBxdW90ZVZvcm5hbWU6IFwiQW5uYVwiLFxyXG4gICAgYWltb2Zjb250YWN0OiBbPHA+Rm9yIG91ciBwcm9qZWN0LCB3ZSBjb2xsYWJvcmF0ZWQgY2xvc2VseSB3aXRoIHRoZSBQaHlzaWNhbCBDaGVtaXN0cnkgd29ya2dyb3VwIHRvIHByb3Blcmx5IGNhdGVnb3JpemUgb3VyIGxpcGlkIG5hbm9wYXJ0aWNsZXMgKExOUHMpLiBXZSByZWFjaGVkIG91dCB0byB0aGVtIHRvIGxldmVyYWdlIHRoZWlyIGV4cGVydGlzZSBhbmQgZW5zdXJlIHRoYXQgb3VyIGNoYXJhY3Rlcml6YXRpb24gd2FzIHRob3JvdWdoIGFuZCBwcmVjaXNlLiBNYXJjbywgVXdlLCBhbmQgWXZvbm5lIHdlcmUgaW5zdHJ1bWVudGFsIGluIHRoaXMgZWZmb3J0LCBub3Qgb25seSBhZHZpc2luZyB1cyBvbiBhcHByb3ByaWF0ZSBjaGFyYWN0ZXJpemF0aW9uIG1ldGhvZHMgYnV0IGFsc28gYWN0aXZlbHkgYXNzaXN0aW5nIHVzIGR1cmluZyB0aGUgZXhwZXJpbWVudGFsIHByb2Nlc3MgYW5kIGRhdGEgYW5hbHlzaXMuIDwvcD5dLFxyXG4gICAgaW5zaWdodHM6IFs8cD5XZSBlbXBsb3llZCBzZXZlcmFsIGFuYWx5dGljYWwgdGVjaG5pcXVlcywgaW5jbHVkaW5nIFRyYW5zbWlzc2lvbiBFbGVjdHJvbiBNaWNyb3Njb3B5IChURU0pLCBTY2FubmluZyBFbGVjdHJvbiBNaWNyb3Njb3B5IChTRU0pLCBEeW5hbWljIExpZ2h0IFNjYXR0ZXJpbmcgKERMUyksIGFuZCB6ZXRhIHBvdGVudGlhbCBhbmFseXNpcy4gVEVNIGFuZCBTRU0gYWxsb3dlZCB1cyB0byB2aXN1YWxpemUgdGhlIHN0cnVjdHVyYWwgbW9ycGhvbG9neSBvZiB0aGUgTE5QcywgcHJvdmlkaW5nIGRldGFpbGVkIGltYWdlcyB0byB1bmRlcnN0YW5kIHRoZWlyIHNpemUgYW5kIHNoYXBlIG9uIHRoZSBuYW5vbWV0ZXIgc2NhbGUuIERMUyB3YXMgdXNlZCB0byBtZWFzdXJlIHRoZSBzaXplIGRpc3RyaWJ1dGlvbiBvZiB0aGUgcGFydGljbGVzIGluIHNvbHV0aW9uLCB3aGlsZSB0aGUgemV0YSBwb3RlbnRpYWwgYW5hbHlzaXMgZ2F2ZSB1cyBpbnNpZ2h0IGludG8gdGhlIHN1cmZhY2UgY2hhcmdlLCB3aGljaCBpcyBjcnVjaWFsIGZvciB1bmRlcnN0YW5kaW5nIHN0YWJpbGl0eSBpbiBzdXNwZW5zaW9uLiA8L3A+XSxcclxuICAgIGltcGxlbWVudGF0aW9uOiBbPHA+VGhhbmtzIHRvIHRoZSBndWlkYW5jZSBhbmQgaGFuZHMtb24gc3VwcG9ydCBvZiB0aGUgUGh5c2ljYWwgQ2hlbWlzdHJ5IHRlYW0sIHdlIHN1Y2Nlc3NmdWxseSBjb21wbGV0ZWQgdGhlc2UgdGVzdHMsIGdhaW5pbmcgZGV0YWlsZWQgaW5zaWdodHMgaW50byBvdXIgTE5QcyB0aGF0IHdpbGwgYmUgY3J1Y2lhbCBmb3Igb3VyIHByb2plY3QncyBmdXJ0aGVyIGRldmVsb3BtZW50LiBUaGVpciBleHBlcnRpc2Ugbm90IG9ubHkgc3RyZWFtbGluZWQgdGhlIHByb2Nlc3MgYnV0IGFsc28gZW5zdXJlZCB0aGUgcmVsaWFiaWxpdHkgYW5kIGFjY3VyYWN5IG9mIG91ciByZXN1bHRzLiBIZXJlIGEgc25lYWsgcGVhayBvZiB0aGUgcmVzdWx0cyBcdTIwMTMgdGFrZSBhIGxvb2sgYXQgdGhlIGltYWdlIG9mIG91ciBTT1JUIExOUCB0YWtlbiB2aWEgVEVNLiA8L3A+XSxcclxuICAgIHN1bW1hcnk6IFwiV2UgY29sbGFib3JhdGVkIHdpdGggdGhlIFBoeXNpY2FsIENoZW1pc3RyeSB3b3JrZ3JvdXAgdG8gYWNjdXJhdGVseSBjaGFyYWN0ZXJpemUgb3VyIGxpcGlkIG5hbm9wYXJ0aWNsZXMgKExOUHMpLiBUaGVpciBleHBlcnRpc2UsIHBhcnRpY3VsYXJseSBmcm9tIE1hcmNvLCBVd2UsIGFuZCBZdm9ubmUsIHdhcyBpbnZhbHVhYmxlIGluIHNlbGVjdGluZyBhbmQgYXBwbHlpbmcgdmFyaW91cyBhbmFseXRpY2FsIHRlY2huaXF1ZXMsIGluY2x1ZGluZyBUcmFuc21pc3Npb24gRWxlY3Ryb24gTWljcm9zY29weSAoVEVNKSwgU2Nhbm5pbmcgRWxlY3Ryb24gTWljcm9zY29weSAoU0VNKSwgRHluYW1pYyBMaWdodCBTY2F0dGVyaW5nIChETFMpLCBhbmQgemV0YSBwb3RlbnRpYWwgYW5hbHlzaXMuIFRoaXMgY29sbGFib3JhdGlvbiBub3Qgb25seSBlbmhhbmNlZCBvdXIgdW5kZXJzdGFuZGluZyBvZiB0aGUgTE5Qcycgc2l6ZSwgc2hhcGUsIGFuZCBzdGFiaWxpdHkgYnV0IGFsc28gZW5zdXJlZCB0aGUgcmVsaWFiaWxpdHkgb2Ygb3VyIHJlc3VsdHMuIFdpdGggdGhlaXIgZ3VpZGFuY2UsIHdlIHN1Y2Nlc3NmdWxseSBjb21wbGV0ZWQgb3VyIHRlc3RzLCBwcm92aWRpbmcgY3J1Y2lhbCBpbnNpZ2h0cyBmb3IgdGhlIHByb2plY3QncyBhZHZhbmNlbWVudC5cIixcclxuICAgIG1vbnRoczogXCJTZXB0ZW1iZXJcIixcclxuICAgIHBpY3R1cmV1cmxfaW50ZXJ2aWV3OiBcImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2RlbGl2ZXJ5L2NyeW8tZW0ud2VicFwiLFxyXG4gICAgcGljdHVyZXVybF9pbXBsZW1lbnRhdGlvbjogXCIgaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvZGVsaXZlcnkvdGVtLXNvcnQtbG5wMS53ZWJwXCIsXHJcbiAgfSxcclxuICB7XHJcbiAgICB0aXRsZTogXCJNLlNjLlwiLFxyXG4gICAgdm9ybmFtZTogXCJIYWthblwiLFxyXG4gICAgbmFjaG5uYW1lOiBcIlNveXRcdTAwRkNya1wiLFxyXG4gICAgam9iOiBcIlBoRCBTdHVkZW50IEZhY3VsdHkgb2YgQmlvbG9neSAvIFdvcmtpbmcgR3JvdXBcIixcclxuICAgIGFmZmlsaWF0aW9uOiBcIlVuaXZlcnNpdHkgQmllbGVmZWxkIFwiLFxyXG4gICAgbGFuZ3VhZ2U6IFwiZW5cIixcclxuICAgIHBpY3R1cmV1cmw6IHBpY3NbJ2hha2FuJ10sXHJcbiAgICB0YWc6IFwiQWNhZGVtaWFcIixcclxuICAgIGhlYWRpbmc6IFwiSGVscGluZyBhbmQgY29uZHVjdGluZyBleHBlcmltZW50cyB3aXRoIHllYXN0IGNlbGxzXCIsXHJcbiAgICBpbnRlcnZpZXd0YWJpZDogXCJoYWthblwiLFxyXG5cclxuICAgIHF1b3RlOiBcIkp1c3QgaGFuZCBtZSBvdmVyIHRoZSBzdHJhaW4gYW5kIHRoZSB2ZWN0b3IsIEkgd2lsbCB0cnkgdG8gdGFrZSBjYXJlIG9mIHRoZSByZXN0LlwiLFxyXG4gICAgYWltb2Zjb250YWN0OiBbPHA+QWZ0ZXIgb3VyIGludGVydmlldyB3aXRoIDxIUExpbmt0b090aGVySFBUYWIgdGFiPVwic2FpdG9cIiB0ZXh0PVwiTWFrb3RvIFNhaXRvXCIgLz5cclxuIHdlIGxlYXJuZWQsIHRoYXQgaGUgd2FzIG5vdCBhYmxlIHRvIGV4cHJlc3MgdGhlIFNwdUZ6MSBwcm90ZWluIGluIEUuIGNvbGkgYW5kIHJlY29tbWVuZGVkIHdlIHVzZWQgeWVhc3QgdG8gcHJvZHVjZSBpdC4gV2Ugd2VyZSBwcm92aWRlZCB3aXRoIGEgeWVhc3QgZXhwcmVzc2lvbiBzdHJhaW4gYW5kIGEgc3VpdGFibGUgdmVjdG9yIHRvIGNsb25lIHRoZSBjb2Rpbmcgc2VxdWVuY2UgaW50bywgYnV0IHdlIGxhY2tlZCB0aGUgbmVjZXNzYXJ5IGtub3ctaG93IGFuZCB0aGUgZmFjaWxpdGllcyB0byB0cmFuc2Zvcm0geWVhc3QsIHNlbGVjdCBmb3IgcG9zaXRpdmUgdHJhbnNmb3JtYW50cyBhbmQgY3VsdGl2YXRlIHRoZSB5ZWFzdC4gIDwvcD5dLFxyXG4gICAgaW5zaWdodHM6IFs8cD5IYWthbiBnZW5lcm91c2x5IGFncmVlZCB0byBjYXJyeSBvdXQgdGhlIHRyYW5zZm9ybWF0aW9uIGFuZCBwcmVwYXJlIHBvdGVudGlhbCBwb3NpdGl2ZSB0cmFuc2Zvcm1hbnRzIGZvciBjdWx0aXZhdGlvbiBmb3IgdXMsIGxlYXZpbmcgb25seSB0aGUgcHVyaWZpY2F0aW9uIG9mIHRoZSBwcm90ZWlucyBmcm9tIHRoZSBzdXBlcm5hdGFudCBmb3IgdXMgdG8gZG8uIDwvcD5dLFxyXG4gICAgaW1wbGVtZW50YXRpb246IFs8cD5IYWthbiBwZXJmb3JtZWQgdGhlIHRyYW5zZm9ybWF0aW9uIG9mIGEgcFBJQzlLLW4zU3B1RnoxIGNvbnN0cnVjdCB3ZSBjcmVhdGVkIGludG8gWWVhc3QuIFVuZm9ydHVuYXRlbHksIHRoZSBmaXJzdCBhdHRlbXB0IG9mIHRyYW5zZm9ybWF0aW9uIGRpZCBub3QgeWllbGQgYW55IHBvc2l0aXZlIGNsb25lcy4gSG93ZXZlciwgd2UgdmFsdWUgaGlzIHNwb250YW5lb3VzIGFuZCBleHRlbnNpdmUgc3VwcG9ydCBhcyBhIGdyZWF0IGNvbnRyaWJ1dGlvbiB0byBvdXIgcHJvamVjdC4gPC9wPl0sXHJcbiAgICBzdW1tYXJ5OiBcIldlIGNvbGxhYm9yYXRlZCB3aXRoIHRoZSBQaHlzaWNhbCBDaGVtaXN0cnkgd29ya2dyb3VwIHRvIGFjY3VyYXRlbHkgY2hhcmFjdGVyaXplIG91ciBsaXBpZCBuYW5vcGFydGljbGVzIChMTlBzKS4gVGhlaXIgZXhwZXJ0aXNlLCBwYXJ0aWN1bGFybHkgZnJvbSBNYXJjbywgVXdlLCBhbmQgWXZvbm5lLCB3YXMgaW52YWx1YWJsZSBpbiBzZWxlY3RpbmcgYW5kIGFwcGx5aW5nIHZhcmlvdXMgYW5hbHl0aWNhbCB0ZWNobmlxdWVzLCBpbmNsdWRpbmcgVHJhbnNtaXNzaW9uIEVsZWN0cm9uIE1pY3Jvc2NvcHkgKFRFTSksIFNjYW5uaW5nIEVsZWN0cm9uIE1pY3Jvc2NvcHkgKFNFTSksIER5bmFtaWMgTGlnaHQgU2NhdHRlcmluZyAoRExTKSwgYW5kIHpldGEgcG90ZW50aWFsIGFuYWx5c2lzLiBUaGlzIGNvbGxhYm9yYXRpb24gbm90IG9ubHkgZW5oYW5jZWQgb3VyIHVuZGVyc3RhbmRpbmcgb2YgdGhlIExOUHMnIHNpemUsIHNoYXBlLCBhbmQgc3RhYmlsaXR5IGJ1dCBhbHNvIGVuc3VyZWQgdGhlIHJlbGlhYmlsaXR5IG9mIG91ciByZXN1bHRzLiBXaXRoIHRoZWlyIGd1aWRhbmNlLCB3ZSBzdWNjZXNzZnVsbHkgY29tcGxldGVkIG91ciB0ZXN0cywgcHJvdmlkaW5nIGNydWNpYWwgaW5zaWdodHMgZm9yIHRoZSBwcm9qZWN0J3MgYWR2YW5jZW1lbnQuXCIsXHJcbiAgICBtb250aHM6IFwiU2VwdGVtYmVyXCIsXHJcbiAgfSxcclxuICB7XHJcbiAgICB0aXRsZTogXCJNLlNjLlwiLFxyXG4gICAgdm9ybmFtZTogXCJCZW5qYW1pblwiLFxyXG4gICAgbmFjaG5uYW1lOiBcIk1vb3JsYWNoXCIsICBcclxuICAgIGpvYjpcIlBoRCBzdHVkZW50IFdvcmtpbmcgR3JvdXAgUGF0ZWwgJ0Zlcm1lbnRhdGlvbiBhbmQgRm9ybXVsYXRpb24gb2YgQmlvbG9naWNhbHMgYW5kIENoZW1pY2FscydcIixcclxuICAgIGFmZmlsaWF0aW9uOlwiYXQgRkggQmllbGVmZWxkXCIsXHJcbiAgICBwaWN0dXJldXJsOiBwaWNzWydtb29ybGFjaCddLFxyXG4gICAgdGFnOiBcIkFjYWRlbWlhXCIsXHJcbiAgICBoZWFkaW5nOiBcIkdhdGhlcmluZyBpbmZvcm1hdGlvbiBhYm91dCBDaGl0b3NhbiBjb2F0aW5nIGZvciBSTkEgcHJvdGVjdGlvblwiLFxyXG4gICAgaW50ZXJ2aWV3dGFiaWQ6IFwibW9vcmxhY2hcIixcclxuXHJcbiAgICBsYW5ndWFnZTogXCJkZVwiLFxyXG4gICAgcXVvdGU6IFwiQ2hpdG9zYW4gY2FuIHN0YWJpbGl6ZSBSTkEgZWZmZWN0aXZlbHksIG1ha2luZyBpdCBpZGVhbCBmb3Igb3VyIGZvcm11bGF0aW9ucywgYnV0IHdlIG11c3QgZW5zdXJlIHRoZSByaWdodCBjaGFyZ2UgcmF0aW8gYW5kIHBhcnRpY2xlIHNpemUgZm9yIHN1Y2Nlc3NmdWwgTE5QIGVuY2Fwc3VsYXRpb24uXCIsXHJcbiAgICBxdW90ZU5hY2huYW1lOiBcIk1vb3JsYWNoLCBFeHBlcnQgZm9yIENoaXRvc2FuIGNvZGluZ1wiLFxyXG4gICAgcXVvdGVWb3JuYW1lOiBcIkJlbmphbWluXCIsXHJcbiAgICBhaW1vZmNvbnRhY3Q6IFs8cD5UaGUgYWltIG9mIHRoZSBjb250YWN0IHdpdGggQmVuamFtaW4gV2lsbGVtIE1vb3JsYWNoLCBNLlNjLiwgZnJvbSB0aGUgRGVwYXJ0bWVudCBvZiBFbmdpbmVlcmluZyBhbmQgTWF0aGVtYXRpY3MsIHdhcyB0byBnYWluIGEgZGVlcGVyIHVuZGVyc3RhbmRpbmcgb2YgaG93IENoaXRvc2FuIGNvdWxkIGJlIGFwcGxpZWQgaW4gbGlwaWQtYmFzZWQgbmFub3BhcnRpY2xlcyAoTE5QcykgYW5kIHRvIGV4cGxvcmUgaXRzIHBvdGVudGlhbCByb2xlIGluIG91ciBwcm9qZWN0LiBXZSBoYWQgc2V2ZXJhbCBxdWVzdGlvbnMgZm9jdXNpbmcgb24gdGhlIHByb3BlcnRpZXMgb2YgQ2hpdG9zYW4sIGl0cyBhZHZhbnRhZ2VzIGFuZCBkaXNhZHZhbnRhZ2VzLCBhbmQgaG93IGl0IGNvdWxkIGJlIGludGVncmF0ZWQgaW50byBMTlBzLiBCZW5qYW1pbiBNb29ybGFjaCBwcm92aWRlZCBleHRlbnNpdmUgaW5zaWdodHMgaW50byBDaGl0b3Nhblx1MjAxOXMgaW50ZXJhY3Rpb25zIHdpdGggUk5BLCBpdHMgYmVoYXZpb3IsIGFuZCBob3cgd2UgbWlnaHQgbGV2ZXJhZ2UgaXQgZm9yIG91ciBmb3JtdWxhdGlvbnMuIDwvcD5dLFxyXG4gICAgaW5zaWdodHM6IFs8cD5Gcm9tIG91ciBkaXNjdXNzaW9uLCB3ZSBnYWluZWQgdmFsdWFibGUgaW5zaWdodHMgaW50byB0aGUgdW5pcXVlIHByb3BlcnRpZXMgb2YgQ2hpdG9zYW4sIGEgY2F0aW9uaWMgcG9seW1lciB3aXRoIHNpZ25pZmljYW50IHBvdGVudGlhbCB0byBzdGFiaWxpemUgUk5BLiBOb3RhYmx5LCBDaGl0b3NhbiBvZmZlcnMgc3Ryb25nIHByb3RlY3Rpb24gYWdhaW5zdCBSTmFzZXMsIG1ha2luZyBpdCBoaWdobHkgYmVuZWZpY2lhbCBmb3IgZm9ybXVsYXRpb25zIGxpa2UgbGlwaWQtYmFzZWQgbmFub3BhcnRpY2xlcyAoTE5QcykuIEFub3RoZXIga2V5IGZlYXR1cmUgaXMgaXRzIGhlYXQgc3RhYmlsaXR5LCB3aXRoc3RhbmRpbmcgdGVtcGVyYXR1cmVzIHVwIHRvIDEyMVx1MDBCMEMsIHdoaWNoIG1ha2VzIGl0IHN1aXRhYmxlIGZvciBwcm9jZXNzaW5nIG1ldGhvZHMgc3VjaCBhcyBzcHJheSBkcnlpbmcuIEhvd2V2ZXIsIGF0IGhpZ2hlciBjb25jZW50cmF0aW9ucyAoMC41JSBvciBtb3JlKSwgQ2hpdG9zYW4gY2FuIGJlY29tZSB0b3hpYywgc3VmZm9jYXRpbmcgY2VsbHMgYW5kIGRpc3BsYXlpbmcgYW50aW1pY3JvYmlhbCBwcm9wZXJ0aWVzLiBXaGlsZSBpdCBkaWZmZXJzIGZyb20gUEVHIGFuZCBjYW5ub3Qgc2VydmUgYXMgYSBkaXJlY3QgYWx0ZXJuYXRpdmUsIENoaXRvc2FuIGNhbiBiZSBhIHZhbHVhYmxlIGNvbXBsZW1lbnQsIGVzcGVjaWFsbHkgaW4gc3RhYmlsaXppbmcgUk5BIHdpdGhpbiBMTlBzLiBcclxuICAgICAgQSBjcml0aWNhbCBwb2ludCBCZW5qYW1pbiBlbXBoYXNpemVkIGlzIHRoYXQgQ2hpdG9zYW4gbXVzdCBiZSBpbiBhbiBhY2lkaWMgZW52aXJvbm1lbnQsIHR5cGljYWxseSB3aXRoIGEgcEggcmFuZ2Ugb2YgNCB0byA2LCB0byByZW1haW4gcG9zaXRpdmVseSBjaGFyZ2VkLiBUaGlzIHBvc2l0aXZlIGNoYXJnZSBpcyBlc3NlbnRpYWwgZm9yIGl0cyBlZmZlY3RpdmUgaW50ZXJhY3Rpb24gd2l0aCBSTkEgYW5kIHN1Y2Nlc3NmdWwgaW50ZWdyYXRpb24gaW50byB0aGUgTE5QIHN5c3RlbS4gXHJcbiAgICAgIE9uZSBvZiB0aGUgbW9zdCBpbXBvcnRhbnQgYXR0cmlidXRlcyBvZiBDaGl0b3NhbiBpcyBpdHMgYWJpbGl0eSB0byBmb3JtIGNvbXBsZXhlcyB3aXRoIFJOQSwgb2ZmZXJpbmcgYSBoaWdoIGRlZ3JlZSBvZiBwcm90ZWN0aW9uLCB3aGljaCBpcyBjcnVjaWFsIGZvciB0aGUgc3RhYmlsaXR5IG9mIExOUCBmb3JtdWxhdGlvbnMuIFRoaXMgY2hhcmFjdGVyaXN0aWMgbWFrZXMgQ2hpdG9zYW4gcGFydGljdWxhcmx5IGFkdmFudGFnZW91cyBpbiBlbmhhbmNpbmcgUk5BIHN0YWJpbGl0eSBkdXJpbmcgcHJvY2Vzc2VzIGxpa2Ugc3ByYXkgZHJ5aW5nLiBIb3dldmVyLCBpbmNvcnBvcmF0aW5nIENoaXRvc2FuIGRpcmVjdGx5IGludG8gdGhlIGxpcGlkIHNoZWxsIG9mIExOUHMgcG9zZXMgY2hhbGxlbmdlcyBkdWUgdG8gaXRzIGh5ZHJvcGhpbGljIG5hdHVyZSBhbmQgaW5jb21wYXRpYmxlIGNoYXJnZSByYXRpb3MsIHdoaWNoIHByZXZlbnQgaXRzIHVzZSBhcyBhbiBleHRlcm5hbCBjb2F0aW5nIG9uIExOUHMuIEluc3RlYWQsIGl0IGlzIG1vcmUgc3VpdGFibGUgZm9yIGZvcm1pbmcgc3RhYmxlIFJOQS1DaGl0b3NhbiBjb21wbGV4ZXMgdGhhdCBjYW4gYmUgZW5jYXBzdWxhdGVkIHdpdGhpbiB0aGUgTE5QIHN0cnVjdHVyZSwgZW5zdXJpbmcgaW1wcm92ZWQgc3RhYmlsaXR5IGFuZCBwcm90ZWN0aW9uLjwvcD5dLFxyXG4gICAgaW1wbGVtZW50YXRpb246IFs8cD5XZSBoYXZlIGludGVncmF0ZWQgdGhlIGluZm9ybWF0aW9uIGJ5IHByaW1hcmlseSB1c2luZyBDaGl0b3NhbiBhcyBhbiBSTkEgc3RhYmlsaXplciwgcmF0aGVyIHRoYW4gZW1iZWRkaW5nIGl0IGRpcmVjdGx5IGludG8gdGhlIExOUCBsaXBpZCBzaGVsbC4gQmVuamFtaW4gc3VnZ2VzdGVkIGZvcm1pbmcgQ2hpdG9zYW4tUk5BIGNvbXBsZXhlcyBmaXJzdCBhbmQgdGhlbiBlbmNhcHN1bGF0aW5nIHRoZW0gd2l0aGluIExOUHMgdG8gZW5zdXJlIHRoZSBSTkEgcmVtYWlucyBzdGFibGUgYW5kIGZ1bmN0aW9uYWwuIEZvciB0aGlzLCBDaGl0b3NhbiB3aXRoIGEgbG93IG1vbGVjdWxhciB3ZWlnaHQgKGFyb3VuZCA1IGtEYSkgaXMgaWRlYWwsIGFzIGl0IGhlbHBzIHByb2R1Y2Ugc21hbGxlciBwYXJ0aWNsZXMgdGhhdCBjYW4gYmUgZWZmaWNpZW50bHkgZW5jYXBzdWxhdGVkLiBcclxuICAgICAgQWRkaXRpb25hbGx5LCBCZW5qYW1pbiByZWNvbW1lbmRlZCBzdGFydGluZyB3aXRoIHNtYWxsLXNjYWxlIHRlc3RzIChhYm91dCAxMDAgXHUwMEI1TCkgYmVmb3JlIG1vdmluZyB0byBsYXJnZXIgZm9ybXVsYXRpb25zLiBUaGUgcmF0aW8gb2YgUk5BIHRvIENoaXRvc2FuIGlzIGtleSB0byBjcmVhdGluZyBuZWdhdGl2ZWx5IGNoYXJnZWQgcGFydGljbGVzLCBhbmQgYSAyOjEgcmF0aW8gc2hvdWxkIGJlIG1haW50YWluZWQuIFdlIHdpbGwgdmVyaWZ5IHN1Y2Nlc3NmdWwgZW5jYXBzdWxhdGlvbiB1c2luZyBtaWNyb3Njb3BpYyBhbmFseXNpcyBhbmQgZ2VsIGVsZWN0cm9waG9yZXNpcy4gXHJcbiAgICAgIFRoaXMga25vd2xlZGdlIGhhcyBkaXJlY3RseSBzaGFwZWQgb3VyIGFwcHJvYWNoIHRvIHVzaW5nIENoaXRvc2FuLiBPdXIgZm9jdXMgaXMgbm93IG9uIGZvcm1pbmcgc3RhYmxlIFJOQS1DaGl0b3NhbiBjb21wbGV4ZXMsIHdoaWNoIGNhbiBiZSBlbmNhcHN1bGF0ZWQgaW4gTE5Qcy4gV2VcdTIwMTl2ZSBhbHNvIGxlYXJuZWQgdGhlIGltcG9ydGFuY2Ugb2Ygb3B0aW1pemluZyBjb25jZW50cmF0aW9ucyB0byBwcmV2ZW50IGFnZ3JlZ2F0aW9uIG9yIHRveGljaXR5IHdoaWxlIGVuc3VyaW5nIHRoZSBwYXJ0aWNsZXMgc3RheSB3aXRoaW4gdGhlIGRlc2lyZWQgbmFub21ldGVyIHJhbmdlLiBNaWNyb3Njb3B5IGFuZCBlbGVjdHJvcGhvcmVzaXMgd2lsbCBub3cgYmUga2V5IG1ldGhvZHMgaW4gb3VyIHByb3RvY29sIHRvIGNvbmZpcm0gY29tcGxldGUgUk5BIGVuY2Fwc3VsYXRpb24gd2l0aGluIHRoZSBMTlBzLiA8L3A+XSxcclxuICAgIHN1bW1hcnk6IFwiSW4gc3VtbWFyeSwgdGhlIGluc2lnaHRzIGZyb20gQmVuamFtaW5cdTIwMTlzIGV4cGVydGlzZSB3ZXJlIGNydWNpYWwgaW4gc2hhcGluZyBvdXIgdW5kZXJzdGFuZGluZyBvZiBob3cgdG8gaW50ZWdyYXRlIENoaXRvc2FuIGludG8gb3VyIExOUCBmb3JtdWxhdGlvbnMuIENoaXRvc2FuXHUyMDE5cyBwcm90ZWN0aXZlIGFiaWxpdGllcyBmb3IgUk5BLCBhbG9uZyB3aXRoIGl0cyBoZWF0IHN0YWJpbGl0eSwgbWFrZSBpdCBhIHZhbHVhYmxlIGNvbXBvbmVudCBpbiBvdXIgcHJvamVjdC4gSG93ZXZlciwgaXRzIGh5ZHJvcGhpbGljIGFuZCBjYXRpb25pYyBuYXR1cmUgcHJlc2VudHMgY2hhbGxlbmdlcyBmb3IgZGlyZWN0IGludGVncmF0aW9uIGludG8gTE5QIGxpcGlkIHNoZWxscywgc28gd2UgYXJlIGZvY3VzaW5nIG9uIGl0cyB1c2UgYXMgYW4gZW5jYXBzdWxhdGlvbiBmb3IgdGhlIFJOQS4gQmVuamFtaW5cdTIwMTlzIGFkdmljZSBvbiBjb25jZW50cmF0aW9ucywgbW9sZWN1bGFyIHdlaWdodCwgYW5kIGNvbXBsZXggZm9ybWF0aW9uIGdhdmUgdXMgYSBjbGVhciBwYXRoIGZvcndhcmQsIHdoaWNoIHdpbGwgYmUgdmFsaWRhdGVkIHRocm91Z2ggZXhwZXJpbWVudGFsIHRlc3RpbmcuIFwiLFxyXG4gICAgbW9udGhzOiBcInNlcHRlbWJlclwiXHJcbiAgfSxcclxuICB7XHJcbiAgICB0aXRsZTogXCJQcml2LiBEb3ouIERyLiBtZWQuXCIsXHJcbiAgICB2b3JuYW1lOiBcIkZyYW5rXCIsXHJcbiAgICBuYWNobm5hbWU6IFwiQnJhc2NoXCIsXHJcbiAgICBwaWN0dXJldXJsOiBwaWNzWydicmFzY2gnXSxcclxuICAgIGpvYjogXCJIZWFkIG9mIFBhdGhvbG9neVwiLFxyXG4gICAgYWZmaWxpYXRpb246IFwiUGF0aG9sb2d5IG9mIGNsaW5pYyBCaWVsZWZlbGQgTWl0dGVcIixcclxuICAgIHRhZzogXCJBY2FkZW1pYVwiLFxyXG4gICAgaGVhZGluZzogXCJDb2xsYWJvcmF0aW9uIHdpdGggdGhlIHBhdGhvbG9neSBvZiBjbGluaWMgbWl0dGVcIixcclxuICAgIGludGVydmlld3RhYmlkOiBcImthdGhsZWVuc3B1bmt0XCIsXHJcbiAgICBxdW90ZTogXCJJJ2QgbGlrZSB0byBlc3BlY2lhbGx5IHRoYW5rIExlb25pZSBIb3NlIFx1MjAxMyB3aXRob3V0IGhlciBzdXBwb3J0IGluIGZhY2lsaXRhdGluZyB0aGUgc3RhaW5pbmcgcHJvY2VzcyBhbmQgdGhlIGNvbGxhYm9yYXRpb24gd2l0aCBwYXRob2xvZ3ksIG11Y2ggb2YgdGhpcyB3b3VsZG4ndCBoYXZlIGJlZW4gcG9zc2libGUuXCIsXHJcbiAgICAgcXVvdGVOYWNobmFtZTogXCJTdXNhdCwgVGVhbW1lbWJlclwiLFxyXG4gICAgcXVvdGVWb3JuYW1lOiBcIkthdGhsZWVuXCIsXHJcbiAgICBhaW1vZmNvbnRhY3Q6IFs8cD5UaGUgYWltIG9mIGNvbnRhY3RpbmcgdGhlIHBhdGhvbG9neSBkZXBhcnRtZW50IHdhcyB0byB1c2UgdGhlaXIgZXhwZXJ0aXNlIGFuZCBlcXVpcG1lbnQgdG8gcHJvcGVybHkgZW1iZWQgdGhlIHRyYW5zd2VsbCBmaWx0ZXJzIHdpdGggYWlyLWxpcXVpZCBpbnRlcmZhY2UgKEFMSSkgY3VsdHVyZXMgaW4gZm9ybWFsaW4tZml4ZWQgcGFyYWZmaW4tZW1iZWRkZWQgKEZGUEUpIHRpc3N1ZS4gVGhpcyB3b3VsZCBhbGxvdyB1cyB0byBmdXJ0aGVyIHByb2Nlc3MgYW5kIGFuYWx5c2UgdGhlIGN1bHR1cmVzLiBTcGVjaWZpY2FsbHksIHdlIGFza2VkIGZvciB0aGVpciBoZWxwIGluIGVtYmVkZGluZywjc2VjdGlvbmluZyB1c2luZyBhIG1pY3JvdG9tZSwgYW5kIGFwcGx5aW5nIHNwZWNpYWxpc2VkIHN0YWluaW5nIHRlY2huaXF1ZXMgc3VjaCBhcyBoZW1hdG94eWxpbiBhbmQgZW9zaW4gKEhFKSBhbmQgcGVyaW9kaWMgYWNpZC1TY2hpZmYgKFBBUykgc3RhaW5pbmcuIFRoZXNlIG1ldGhvZHMgd291bGQgcHJvdmlkZSB1cyB3aXRoIHRoZSBuZWNlc3NhcnkgaGlzdG9sb2dpY2FsIGRldGFpbCB0byBhc3Nlc3MgdGhlIHN0cnVjdHVyZSBhbmQgY29tcG9zaXRpb24gb2YgQUxJIGN1bHR1cmVzLjwvcD5dLFxyXG4gICAgaW5zaWdodHM6IFs8cD5UaHJvdWdoIHRoaXMgY29sbGFib3JhdGlvbiB3aXRoIHRoZSBwYXRob2xvZ3kgZGVwYXJ0bWVudCwgd2UgZ2FpbmVkIHZhbHVhYmxlIGluc2lnaHQgaW50byB0aGUgc3RydWN0dXJhbCBpbnRlZ3JpdHkgYW5kIGRpZmZlcmVudGlhdGlvbiBvZiBvdXIgQUxJIGN1bHR1cmVzLiBIRSBzdGFpbmluZyBwcm92aWRlZCBkZXRhaWxlZCBpbmZvcm1hdGlvbiBvbiB0aGUgb3ZlcmFsbCBtb3JwaG9sb2d5IG9mIHRoZSBjZWxscywgYWxsb3dpbmcgdXMgdG8gYXNzZXNzIGNlbGx1bGFyIGFyY2hpdGVjdHVyZSwgdGlzc3VlIG9yZ2FuaXNhdGlvbiBhbmQgYW55IHBvdGVudGlhbCBhYm5vcm1hbGl0aWVzLiBQQVMgc3RhaW5pbmcgcHJvdmlkZWQgYWRkaXRpb25hbCBpbnNpZ2h0IGJ5IGhpZ2hsaWdodGluZyB0aGUgcHJlc2VuY2Ugb2YgcG9seXNhY2NoYXJpZGVzIGFuZCBtdWNvc2FsIHN1YnN0YW5jZXMsIHdoaWNoIGFyZSBpbXBvcnRhbnQgaW5kaWNhdG9ycyBvZiB0aXNzdWUgZGlmZmVyZW50aWF0aW9uIGFuZCBiYXJyaWVyIGZ1bmN0aW9uIGluIGVwaXRoZWxpYWwgY3VsdHVyZXMuIFRoaXMgaGlzdG9sb2dpY2FsIGFuYWx5c2lzIGNvbmZpcm1lZCB0aGF0IHRoZSBjdWx0dXJlcyBoYWQgZGV2ZWxvcGVkIHRoZSBleHBlY3RlZCBjZWxsIHR5cGVzIGFuZCBzdHJ1Y3R1cmVzLCBjb25maXJtaW5nIHRoZSBzdWNjZXNzIG9mIG91ciBleHBlcmltZW50YWwgY29uZGl0aW9ucy48L3A+XSxcclxuICAgIGltcGxlbWVudGF0aW9uOiBbPHA+VGhlIGhpc3RvbG9naWNhbCBkYXRhIG9idGFpbmVkIHRocm91Z2ggdGhlIGNvbGxhYm9yYXRpb24gd2FzIGluc3RydW1lbnRhbCBpbiBhc3Nlc3NpbmcgdGhlIHF1YWxpdHkgb2Ygb3VyIEFMSSBjdWx0dXJlcy4gQnkgY29uZmlybWluZyB0aGF0IHRoZSBjdWx0dXJlcyBoYWQgZGV2ZWxvcGVkIHByb3Blcmx5LCB3ZSB3ZXJlIGFibGUgdG8gcmVmaW5lIGFuZCBvcHRpbWlzZSBvdXIgZXhwZXJpbWVudGFsIHByb3RvY29sLiBJbiBwYXJ0aWN1bGFyLCB0aGUgaW5mb3JtYXRpb24gaGVscGVkIHVzIHRvIHZhbGlkYXRlIGVwaXRoZWxpYWwgZGlmZmVyZW50aWF0aW9uIGFuZCBhc3Nlc3MgdGhlIGVmZmVjdGl2ZW5lc3Mgb2Ygb3VyIGN1bHR1cmUgdGVjaG5pcXVlcywgYW5kIHRoZSBhYmlsaXR5IHRvIHJvdXRpbmVseSB1c2UgRkZQRSBlbWJlZGRpbmcsIHNlY3Rpb25pbmcgYW5kIHNwZWNpYWwgc3RhaW5pbmcgcHJvdmlkZWQgdXMgd2l0aCBhIHJvYnVzdCBzZXQgb2YgdG9vbHMgZm9yIG9uZ29pbmcgY3VsdHVyZSBhc3Nlc3NtZW50IGFuZCBvcHRpbWl6YXRpb24gaW4gZnV0dXJlIGV4cGVyaW1lbnRzLjwvcD5dLFxyXG4gICAgc3VtbWFyeTogXCJDb2xsYWJvcmF0aW9uIHdpdGggcGF0aG9sb2d5IHdhcyBrZXkgdG8gZXZhbHVhdGluZyBhbmQgdmFsaWRhdGluZyBBTEkgY3VsdHVyZXMsIHByb3ZpZGluZyBlc3NlbnRpYWwgaGlzdG9sb2dpY2FsIGluc2lnaHRzIHRoYXQgcmVmaW5lZCBwcm90b2NvbHMgYW5kIGVzdGFibGlzaGVkIGEgcmVsaWFibGUgbWV0aG9kIGZvciBvbmdvaW5nIGN1bHR1cmUgb3B0aW1pemF0aW9uLlwiLFxyXG4gICAgbW9udGhzOiBcIm9jdG9iZXJcIlxyXG4gIH0sXHJcbiAge1xyXG4gICAgdm9ybmFtZTogXCJHcmFuZCBKYW1ib29yZWUgaW4gUGFyaXNcIixcclxuICAgIG5hY2hubmFtZTogXCJcIixcclxuICAgIHBpY3R1cmV1cmw6IHBpY3NbJ2xvZ28nXSxcclxuICAgIGpvYjogXCJUZWFtIGlHRU1cIixcclxuICAgIGFmZmlsaWF0aW9uOiBcIkJpZWxmZWxkIENlQmlUZWMgMjAyNFwiLFxyXG4gICAgdGFnOiBcIk1pbGVzdG9uZVwiLFxyXG4gICAgaGVhZGluZzogXCJQcmVwYXJhdGlvbnMgZm9yIHRoZSBHcmFuZCBKYW1ib29yZWUgaW4gUGFyaXNcIixcclxuICAgIGludGVydmlld3RhYmlkOiBcImphbWJvcmVlXCIsXHJcblxyXG4gICAgcXVvdGU6IFwiSVx1MjAxOW0gcmVhbGx5IG5lcnZvdXMgYWJvdXQgdGhlIGp1ZGdpbmcgc2Vzc2lvbi4gSXQgZmVlbHMgbGlrZSBhbGwgb3VyIGhhcmQgd29yayBpcyBsZWFkaW5nIHVwIHRvIHRoaXMgbW9tZW50LCBhbmQgSSBqdXN0IGhvcGUgd2UgbWFrZSBhIHN0cm9uZyBpbXByZXNzaW9uIVwiLFxyXG4gICAgcXVvdGVOYWNobmFtZTogXCJHdWNrZXMsIFRlYW1tZW1iZXJcIixcclxuICAgIHF1b3RlVm9ybmFtZTogXCJJc2FiZWxsXCIsXHJcbiAgICB0eXBlOiBcIm1ldGFcIixcclxuICAgIHN1bW1hcnk6IFwiQXMgdGhlIHRlYW0gZ2VhcnMgdXAgZm9yIHRoZSBHcmFuZCBKYW1ib29yZWUgaW4gUGFyaXMsIG91ciBmb2N1cyBoYXMgYmVlbiBvbiBmaW5hbGl6aW5nIG91ciBwcmVzZW50YXRpb24gbWF0ZXJpYWxzLCBpbmNsdWRpbmcgYSBkeW5hbWljIHByZXNlbnRhdGlvbiB2aWRlbyB0aGF0IHNob3djYXNlcyBvdXIgcHJvamVjdCBhbmQgcmVzZWFyY2ggZmluZGluZ3MuIFdlIGFyZSBwcmVwYXJpbmcgZm9yIHZhcmlvdXMgZm9ybWF0cyBvZiBlbmdhZ2VtZW50LCBzdWNoIGFzIHByZXNlbnRhdGlvbnMgYW5kIHRhbGtzLCB3aGVyZSB3ZVx1MjAxOWxsIHNoYXJlIG91ciBpbnNpZ2h0cyB3aXRoIGZlbGxvdyBwYXJ0aWNpcGFudHMuIEFkZGl0aW9uYWxseSwgb3VyIHBvc3RlciBzZXNzaW9uIHdpbGwgcHJvdmlkZSBhbiBvcHBvcnR1bml0eSBmb3IgaW50ZXJhY3RpdmUgZGlzY3Vzc2lvbnMsIGFuZCB3ZSBhcmUgYnJhY2luZyBmb3IgdGhlIGp1ZGdpbmcgc2Vzc2lvbnMgdGhhdCB3aWxsIGNyaXRpY2FsbHkgZXZhbHVhdGUgb3VyIHdvcmsuXCIsXHJcbiAgICBtb250aHM6IFwib2N0b2JlclwiXHJcbiAgfSxcclxuICB7XHJcbiAgICB2b3JuYW1lOiBcIkNhcnJ5IEl0IEZvcndhcmRcIixcclxuICAgIG5hY2hubmFtZTogXCJcIixcclxuICAgIHBpY3R1cmV1cmw6IHBpY3NbJ2xvZ28nXSxcclxuICAgIGpvYjogXCJUZWFtIGlHRU1cIixcclxuICAgIGFmZmlsaWF0aW9uOiBcIkJpZWxmZWxkIENlQmlUZWMgMjAyNFwiLFxyXG4gICAgdGFnOiBcIk1pbGVzdG9uZVwiLFxyXG4gICAgaGVhZGluZzogXCJUaGUgZnV0dXJlIG9mIG91ciBwcm9qZWN0IFByZUN5c2VcIixcclxuICAgIGludGVydmlld3RhYmlkOiBcImZvcndhcmRcIixcclxuXHJcbiAgICBxdW90ZTogXCJJIGhvcGUgdG8gc3RhcnQgbXkgTWFzdGVyJ3MgdGhlc2lzIHdpdGggdGhpcyBhcHByb2FjaCB0byBidWlsZCBvbiB0aGUgdGVhbSdzIGhhcmQgd29yayBhbmQgbWFrZSBhIGRpZmZlcmVuY2UuXCIsXHJcbiAgICBxdW90ZU5hY2huYW1lOiBcIkxhbmdlLCBUZWFtbWVtYmVyXCIsXHJcbiAgICBxdW90ZVZvcm5hbWU6IFwiS2F5YVwiLFxyXG4gICAgdHlwZTogXCJtZXRhXCIsXHJcbiAgICBzdW1tYXJ5OiBbPHA+QXMgd2UgbW92ZSBmb3J3YXJkIHdpdGggb3VyIHByb2plY3QsIG91ciBpbnRlbnRpb24gaXMgdG8gY29udGludWUgb3VyIHJlc2VhcmNoIGFuZCBkZXZlbG9wbWVudCBhdCBvdXIgdW5pdmVyc2l0eS4gXHJcbiAgICAgIFdlIGJlbGlldmUgdGhhdCBieSBidWlsZGluZyBvbiBvdXIgY3VycmVudCBmaW5kaW5ncywgd2UgY2FuIG1ha2Ugc2lnbmlmaWNhbnQgY29udHJpYnV0aW9ucyB0byB0aGUgZmllbGQuIFxyXG4gICAgICBBZGRpdGlvbmFsbHksIHdlIGFyZSBjb25zaWRlcmluZyByZWFjaGluZyBvdXQgdG8gTWF0dGppcyBCdWxjYWVuIGF0IEtVIExldXZlbiBmb3IgcG90ZW50aWFsIGNvbGxhYm9yYXRpb24gaW4gdGhlIGZ1dHVyZSwgYXMgdGhlaXIgZXhwZXJ0aXNlIGNvdWxkIGZ1cnRoZXIgZW5oYW5jZSBvdXIgd29yay48L3A+XSxcclxuICAgIG1vbnRoczogXCJvY3RvYmVyXCJcclxuICB9LFxyXG4gIHtcclxuICAgIHZvcm5hbWU6IFwiSG9tZWNvbWluZ1wiLFxyXG4gICAgbmFjaG5uYW1lOiBcIlwiLFxyXG4gICAgcGljdHVyZXVybDogcGljc1snbG9nbyddLFxyXG4gICAgam9iOiBcIlRlYW0gaUdFTVwiLFxyXG4gICAgYWZmaWxpYXRpb246IFwiQmllbGZlbGQgQ2VCaVRlYyAyMDI0XCIsXHJcbiAgICB0YWc6IFwiTWlsZXN0b25lXCIsXHJcbiAgICBoZWFkaW5nOiBcIlRoZSBob21lY29taW5nIGV2ZW50IGF0IEJpZWxlZmVsZCBVbml2ZXJzaXR5IHdpdGggc3Vic2VxdWVudCBDZUJpVGVjIFZJUCBSZWNlcHRpb24gXCIsXHJcbiAgICBpbnRlcnZpZXd0YWJpZDogXCJmb3J3YXJkXCIsXHJcblxyXG4gICAgcXVvdGU6IFwiXCIsXHJcbiAgICBxdW90ZU5hY2huYW1lOiBcIk1pY2hhbGVrLCBUZWFtbWVtYmVyXCIsXHJcbiAgICBxdW90ZVZvcm5hbWU6IFwiQ2hyaXN0aWFuXCIsXHJcbiAgICB0eXBlOiBcIm1ldGFcIixcclxuICAgIHN1bW1hcnk6IFs8cD5BcyB3ZSBtb3ZlIGZvcndhcmQgd2l0aCBvdXIgcHJvamVjdCwgb3VyIGludGVudGlvbiBpcyB0byBjb250aW51ZSBvdXIgcmVzZWFyY2ggYW5kIGRldmVsb3BtZW50IGF0IG91ciB1bml2ZXJzaXR5LiBcclxuICAgICAgV2UgYmVsaWV2ZSB0aGF0IGJ5IGJ1aWxkaW5nIG9uIG91ciBjdXJyZW50IGZpbmRpbmdzLCB3ZSBjYW4gbWFrZSBzaWduaWZpY2FudCBjb250cmlidXRpb25zIHRvIHRoZSBmaWVsZC4gXHJcbiAgICAgIEFkZGl0aW9uYWxseSwgd2UgYXJlIGNvbnNpZGVyaW5nIHJlYWNoaW5nIG91dCB0byBNYXR0amlzIEJ1bGNhZW4gYXQgS1UgTGV1dmVuIGZvciBwb3RlbnRpYWwgY29sbGFib3JhdGlvbiBpbiB0aGUgZnV0dXJlLCBhcyB0aGVpciBleHBlcnRpc2UgY291bGQgZnVydGhlciBlbmhhbmNlIG91ciB3b3JrLjwvcD5dLFxyXG4gICAgbW9udGhzOiBcIm9jdG9iZXJcIlxyXG4gIH0sXHJcbiAge1xyXG4gICAgdm9ybmFtZTogXCJDYXJyeSBJdCBGb3J3YXJkXCIsXHJcbiAgICBuYWNobm5hbWU6IFwiXCIsXHJcbiAgICBwaWN0dXJldXJsOiBwaWNzWydsb2dvJ10sXHJcbiAgICBqb2I6IFwiVGVhbSBpR0VNXCIsXHJcbiAgICBhZmZpbGlhdGlvbjogXCJCaWVsZmVsZCBDZUJpVGVjIDIwMjRcIixcclxuICAgIHRhZzogXCJNaWxlc3RvbmVcIixcclxuICAgIGhlYWRpbmc6IFwiVGhlIGZ1dHVyZSBvZiBvdXIgcHJvamVjdCBQcmVDeXNlXCIsXHJcbiAgICBpbnRlcnZpZXd0YWJpZDogXCJmb3J3YXJkXCIsXHJcblxyXG4gICAgcXVvdGU6IFwiSSBob3BlIHRvIHN0YXJ0IG15IE1hc3RlcidzIHRoZXNpcyB3aXRoIHRoaXMgYXBwcm9hY2ggdG8gYnVpbGQgb24gdGhlIHRlYW0ncyBoYXJkIHdvcmsgYW5kIG1ha2UgYSBkaWZmZXJlbmNlLlwiLFxyXG4gICAgcXVvdGVOYWNobmFtZTogXCJMYW5nZSwgVGVhbW1lbWJlclwiLFxyXG4gICAgcXVvdGVWb3JuYW1lOiBcIktheWFcIixcclxuICAgIHR5cGU6IFwibWV0YVwiLFxyXG4gICAgc3VtbWFyeTogWzxwPkFzIHdlIG1vdmUgZm9yd2FyZCB3aXRoIG91ciBwcm9qZWN0LCBvdXIgaW50ZW50aW9uIGlzIHRvIGNvbnRpbnVlIG91ciByZXNlYXJjaCBhbmQgZGV2ZWxvcG1lbnQgYXQgb3VyIHVuaXZlcnNpdHkuIFxyXG4gICAgICBXZSBiZWxpZXZlIHRoYXQgYnkgYnVpbGRpbmcgb24gb3VyIGN1cnJlbnQgZmluZGluZ3MsIHdlIGNhbiBtYWtlIHNpZ25pZmljYW50IGNvbnRyaWJ1dGlvbnMgdG8gdGhlIGZpZWxkLiBcclxuICAgICAgQWRkaXRpb25hbGx5LCB3ZSBhcmUgY29uc2lkZXJpbmcgcmVhY2hpbmcgb3V0IHRvIE1hdHRqaXMgQnVsY2FlbiBhdCBLVSBMZXV2ZW4gZm9yIHBvdGVudGlhbCBjb2xsYWJvcmF0aW9uIGluIHRoZSBmdXR1cmUsIGFzIHRoZWlyIGV4cGVydGlzZSBjb3VsZCBmdXJ0aGVyIGVuaGFuY2Ugb3VyIHdvcmsuPC9wPl0sXHJcbiAgICBtb250aHM6IFwib2N0b2JlclwiXHJcbiAgfSxcclxuIFxyXG5dXHJcblxyXG4iLCAiaW1wb3J0IHsgTmV3SFBNb3JlQnV0dG9uIH0gZnJvbSBcIi4vQnV0dG9uc1wiO1xyXG5pbXBvcnQgeyB0aW1lbGluZWRhdGEgfSBmcm9tIFwiLi4vZGF0YS9ocHRpbWVsaW5lZGF0YVwiO1xyXG5mdW5jdGlvbiBUaW1lSXRlbSh7dGFnLCB0aXRsZSwgcGljLCBhdXRob3IsIHRhYmlkLCBtb250aH06IEl0ZW1Qcm9wcyl7XHJcbiAgICBsZXQgY2wgPSBcInQtdGFnIFwiICsgdGFnO1xyXG4gICAgcmV0dXJuKFxyXG4gICAgPGxpIGNsYXNzTmFtZT1cInRpbWVsaW5lb2xsaVwiPlxyXG4gICAgICA8ZGl2IGNsYXNzTmFtZT1cInRpbWVsaW5lLWl0ZW0gbW9yZXRvcFwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3dcIiBzdHlsZT17e3BhZGRpbmdMZWZ0OiBcIjEwcHhcIiwgcGFkZGluZ1JpZ2h0OiBcIjE1cHhcIn19PlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPXtjbH0+XHJcbiAgICAgICAgICAgICAgICAgIHt0YWd9XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbC02IHQtdGFnXCIgc3R5bGU9e3tjb2xvcjogXCJibGFja1wiLCBiYWNrZ3JvdW5kQ29sb3I6IFwiI2UyZGFkN1wifX0+XHJcbiAgICAgICAgICAgICAgICAgIHttb250aH1cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIFxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImZpbGx1cC13cmFwcGVyXCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93IGFsaWduLWl0ZW1zLWNlbnRlciBmaWxsdXBcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCIgPlxyXG4gICAgICAgICAgICAgICAgPGltZyBjbGFzc05hbWU9XCJpbWctcm91bmRcIiBzcmM9e3BpY30gLz5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIiA+XHJcbiAgICAgICAgICAgICAgICAgICAge3RpdGxlfVxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93IGFsaWduLWl0ZW1zLWNlbnRlciBocGJ1dHRvbnJvd1wiPlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICAgICAgICA8cCBzdHlsZT17e21hcmdpblRvcDogXCIxMHB4XCJ9fT57YXV0aG9yfTwvcD5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbC00XCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInRhYlwiPlxyXG4gICAgICAgICAgICAgICAgPE5ld0hQTW9yZUJ1dHRvbiB0YWI9e3RhYmlkfSBzY3JvbGw9e2Ake3RhYmlkfS1oZWFkaW5nYH0vPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICBcclxuICAgICAgICAgICAgXHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9saT5cclxuICAgIClcclxuICB9XHJcbiAgXHJcbiAgZnVuY3Rpb24gVGltZUl0ZW1NZXRhKHsgdGFnLCB0aXRsZSwgcGljLCBhdXRob3IsIHRhYmlkLCBtb250aH06IEl0ZW1Qcm9wcyl7XHJcbiAgICBsZXQgY2wgPSBcInQtdGFnIFwiICsgdGFnO1xyXG4gICAgcmV0dXJuKFxyXG4gICAgPGxpIGNsYXNzTmFtZT1cInRpbWVsaW5lb2xsaVwiPlxyXG4gICAgICA8ZGl2IGNsYXNzTmFtZT1cInRpbWVsaW5lLWl0ZW0gdGltZS1tZXRhIG1vcmV0b3BcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cIlwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvd1wiIHN0eWxlPXt7cGFkZGluZ0xlZnQ6IFwiMTBweFwiLCBwYWRkaW5nUmlnaHQ6IFwiMTVweFwifX0+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9e2Ake2NsfSBjb2wtNiB0LXRhZyBgfT5cclxuICAgICAgICAgICAgICAgICAge3RhZ31cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sLTYgdC10YWdcIiBzdHlsZT17e2NvbG9yOiBcImJsYWNrXCIsIGJhY2tncm91bmRDb2xvcjogXCIjZTJkYWQ3XCJ9fT5cclxuICAgICAgICAgICAgICAgICAge21vbnRofVxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgXHJcbiAgICAgICAgICAgIFxyXG4gICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZmlsbHVwLXdyYXBwZXJcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3cgYWxpZ24taXRlbXMtY2VudGVyIGZpbGx1cFwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIiA+XHJcbiAgICAgICAgICAgICAgICA8aW1nIGNsYXNzTmFtZT1cImltZy1jdWJlXCIgc3JjPXtwaWN9IC8+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCIgPlxyXG4gICAgICAgICAgICAgICAgICAgIHt0aXRsZX1cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvdyBhbGlnbi1pdGVtcy1jZW50ZXIgaHBidXR0b25yb3dcIj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgICAgPHAgc3R5bGU9e3ttYXJnaW5Ub3A6IFwiMTBweFwifX0+e2F1dGhvcn08L3A+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wtNFwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJ0YWJcIj5cclxuICAgICAgICAgICAgICAgIDxOZXdIUE1vcmVCdXR0b24gdGFiPXt0YWJpZH0gc2Nyb2xsPXtgJHt0YWJpZH0taGVhZGluZ2B9Lz5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgXHJcbiAgICAgICAgICAgIFxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvbGk+XHJcbiAgICApXHJcbiAgfVxyXG4gIFxyXG4gIGV4cG9ydCBmdW5jdGlvbiBDb21iaVRpbWVIb3JpKHt0YWIxLCB0YWIyfTp7dGFiMTogc3RyaW5nLCB0YWIyOiBzdHJpbmd9KXtcclxuICAgIGxldCBub2Q7IFxyXG5cclxuICAgIFxyXG4gICAgICAvKiBjb25zb2xlLmxvZyhcIlRhYlwiKSAqL1xyXG4gICAgICBub2QgPSBnZXRJdGVtc0J5VHlwZXModGFiMSwgdGFiMik7XHJcbiAgICBcclxuICAgIHJldHVybihcclxuICAgIDxkaXY+XHJcbiAgPHNlY3Rpb24gY2xhc3NOYW1lPVwidGltZWxpbmVcIj5cclxuICA8b2wgY2xhc3NOYW1lPVwidGltZWxpbmVvbFwiPlxyXG4gICAgICB7bm9kfVxyXG4gICAgPGxpIGNsYXNzTmFtZT1cInRpbWVsaW5lb2xsaVwiPjwvbGk+XHJcbiAgPC9vbD5cclxuICBcclxuICBcclxuICA8L3NlY3Rpb24+XHJcbiAgPC9kaXY+XHJcbiAgICApXHJcbiAgXHJcbiAgfVxyXG4gZXhwb3J0IGZ1bmN0aW9uIGdldEl0ZW1zQnlUeXBlcyh0YWJpZDE6IHN0cmluZywgdGFiaWQyOiBzdHJpbmcpIHtcclxuICAgICAgICBsZXQgcm93czogSlNYLkVsZW1lbnRbXSAgPSBbXVxyXG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGltZWxpbmVkYXRhLmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgICAgICAgIGlmICh0YWJpZDEgPT09IHRpbWVsaW5lZGF0YVtpXS50YWcgfHwgdGFiaWQyID09PSB0aW1lbGluZWRhdGFbaV0udGFnKSB7XHJcbiAgICAgICAgICAgICAgdmFyIG5hbWU6IHN0cmluZzsgXHJcbiAgICAgICAgICAgICAgaWYgKHRpbWVsaW5lZGF0YVtpXS50aXRsZSkge1xyXG4gICAgICAgICAgICAgICAgbmFtZSA9IHRpbWVsaW5lZGF0YVtpXS50aXRsZSEgKyBcIiBcIiArIHRpbWVsaW5lZGF0YVtpXS52b3JuYW1lICsgXCIgXCIgKyAgdGltZWxpbmVkYXRhW2ldLm5hY2hubmFtZTtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgZWxzZXtcclxuICAgICAgICAgICAgICAgIG5hbWUgPSAgdGltZWxpbmVkYXRhW2ldLnZvcm5hbWUgKyBcIiBcIiArICB0aW1lbGluZWRhdGFbaV0ubmFjaG5uYW1lO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIHJvd3MucHVzaCg8VGltZUl0ZW1cclxuICAgICAgICAgICAgICAgICAga2V5PXtpfVxyXG4gICAgICAgICAgICAgICAgICB0aXRsZT17dGltZWxpbmVkYXRhW2ldLmhlYWRpbmd9XHJcbiAgICAgICAgICAgICAgICAgIHBpYz17dGltZWxpbmVkYXRhW2ldLnBpY3R1cmV1cmx9XHJcbiAgICAgICAgICAgICAgICAgIHRhZz17dGltZWxpbmVkYXRhW2ldLnRhZ31cclxuICAgICAgICAgICAgICAgICAgYXV0aG9yPXtuYW1lfVxyXG4gICAgICAgICAgICAgICAgICB0YWJpZD17dGltZWxpbmVkYXRhW2ldLmludGVydmlld3RhYmlkfSBcclxuICAgICAgICAgICAgICAgICAgbW9udGg9e3RpbWVsaW5lZGF0YVtpXS5tb250aHN9ICA+XHJcbiAgICAgICAgICAgICAgICA8L1RpbWVJdGVtPilcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gcm93czsgXHJcbiAgICB9XHJcbiAgXHJcbiAgZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gVGltZUhvcmkoe3RhYn06e3RhYjogc3RyaW5nfSl7XHJcbiAgICBsZXQgbm9kOyBcclxuICAgIC8qIGNvbnNvbGUubG9nKFwiVGltZUhvcmlcIikgKi9cclxuICAgIGlmICh0YWIgPT09IFwiXCIpeyAgXHJcbiAgICAgIG5vZCA9IDxBbGxJdGVtcz48L0FsbEl0ZW1zPlxyXG4gICAgICAvKiBjb25zb2xlLmxvZyhcIlRhYiA9ICcnXCIpICovXHJcbiAgICB9XHJcbiAgICBlbHNle1xyXG4gICAgICAvKiBjb25zb2xlLmxvZyhcIlRhYlwiKSAqL1xyXG4gICAgICBub2QgPSBnZXRJdGVtc0J5VHlwZSh0YWIpO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuKFxyXG4gICAgPGRpdj5cclxuICA8c2VjdGlvbiBjbGFzc05hbWU9XCJ0aW1lbGluZVwiPlxyXG4gIDxvbCBjbGFzc05hbWU9XCJ0aW1lbGluZW9sXCI+XHJcbiAgICAgIHtub2R9XHJcbiAgICA8bGkgY2xhc3NOYW1lPVwidGltZWxpbmVvbGxpXCI+PC9saT5cclxuICA8L29sPlxyXG4gIFxyXG4gIFxyXG4gIDwvc2VjdGlvbj5cclxuICA8L2Rpdj5cclxuICBcclxuICAgIClcclxuICB9XHJcbiAgXHJcblxyXG4gIFxyXG4gICAgICBcclxuICAgICAgaW50ZXJmYWNlIEl0ZW1Qcm9wcyB7XHJcbiAgICAgICAgdGl0bGU6IHN0cmluZyAsXHJcbiAgICAgICAgY2hpbGRyZW4/OiBSZWFjdC5SZWFjdE5vZGU7XHJcbiAgICAgICAgdGFnOiBzdHJpbmcsIFxyXG4gICAgICAgIHBpYzogc3RyaW5nLFxyXG4gICAgICAgIGF1dGhvcjogc3RyaW5nLCBcclxuICAgICAgICB0YWJpZDogc3RyaW5nXHJcbiAgICAgICAgbW9udGg6IHN0cmluZ1xyXG4gICAgICAgIH1cclxuICAgIFxyXG4gICAgICAgIFxyXG5cclxuXHJcbiAgICAgIGZ1bmN0aW9uIEFsbEl0ZW1zKCl7XHJcbiAgICAgICAgbGV0IHJvd3M6IEpTWC5FbGVtZW50W10gID0gW11cclxuICAgICAgICBmb3IgKCBsZXQgaSA9IDA7ICBpIDwgdGltZWxpbmVkYXRhLmxlbmd0aDsgaSsrICl7XHJcbiAgICAgICAgICBpZiAodGltZWxpbmVkYXRhW2ldLnR5cGUgPT09IFwibWV0YVwiKXtcclxuICAgICAgICAgICAgdmFyIG5hbWU6IHN0cmluZzsgXHJcbiAgICAgICAgICAgIGlmICh0aW1lbGluZWRhdGFbaV0udGl0bGUpIHtcclxuICAgICAgICAgICAgICBuYW1lID0gdGltZWxpbmVkYXRhW2ldLnRpdGxlISArIFwiIFwiICsgdGltZWxpbmVkYXRhW2ldLnZvcm5hbWUgKyBcIiBcIiArICB0aW1lbGluZWRhdGFbaV0ubmFjaG5uYW1lO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGVsc2V7XHJcbiAgICAgICAgICAgICAgbmFtZSA9ICB0aW1lbGluZWRhdGFbaV0udm9ybmFtZSArIFwiIFwiICsgIHRpbWVsaW5lZGF0YVtpXS5uYWNobm5hbWU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgcm93cy5wdXNoKDxUaW1lSXRlbU1ldGEgXHJcbiAgICAgICAgICAgICAgdGl0bGU9e3RpbWVsaW5lZGF0YVtpXS5oZWFkaW5nfVxyXG4gICAgICAgICAgICAgIHBpYz17dGltZWxpbmVkYXRhW2ldLnBpY3R1cmV1cmx9XHJcbiAgICAgICAgICAgICAgdGFnPXt0aW1lbGluZWRhdGFbaV0udGFnfVxyXG4gICAgICAgICAgICAgIGF1dGhvcj17bmFtZX1cclxuICAgICAgICAgICAgICB0YWJpZD17dGltZWxpbmVkYXRhW2ldLmludGVydmlld3RhYmlkfVxyXG4gICAgICAgICAgICAgIG1vbnRoPXt0aW1lbGluZWRhdGFbaV0ubW9udGhzfSAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgIDwvVGltZUl0ZW1NZXRhPilcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIGVsc2V7XHJcbiAgICAgICAgICAgIHZhciBuYW1lOiBzdHJpbmc7IFxyXG4gICAgICAgICAgICBpZiAodGltZWxpbmVkYXRhW2ldLnRpdGxlKSB7XHJcbiAgICAgICAgICAgICAgbmFtZSA9IHRpbWVsaW5lZGF0YVtpXS50aXRsZSEgKyBcIiBcIiArIHRpbWVsaW5lZGF0YVtpXS52b3JuYW1lICsgXCIgXCIgKyAgdGltZWxpbmVkYXRhW2ldLm5hY2hubmFtZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBlbHNle1xyXG4gICAgICAgICAgICAgIG5hbWUgPSAgdGltZWxpbmVkYXRhW2ldLnZvcm5hbWUgKyBcIiBcIiArICB0aW1lbGluZWRhdGFbaV0ubmFjaG5uYW1lO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHJvd3MucHVzaCg8VGltZUl0ZW0gXHJcbiAgICAgICAgICAgICAgdGl0bGU9e3RpbWVsaW5lZGF0YVtpXS5oZWFkaW5nfVxyXG4gICAgICAgICAgICAgIHBpYz17dGltZWxpbmVkYXRhW2ldLnBpY3R1cmV1cmx9XHJcbiAgICAgICAgICAgICAgdGFnPXt0aW1lbGluZWRhdGFbaV0udGFnfVxyXG4gICAgICAgICAgICAgIGF1dGhvcj17bmFtZX1cclxuICAgICAgICAgICAgICB0YWJpZD17dGltZWxpbmVkYXRhW2ldLmludGVydmlld3RhYmlkfSBcclxuICAgICAgICAgICAgICBtb250aD17dGltZWxpbmVkYXRhW2ldLm1vbnRoc30gICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgIDwvVGltZUl0ZW0+KVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgXHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiByb3dzOyBcclxuICAgICAgfVxyXG5cclxuICAgICAgXHJcbiAgICAgIGV4cG9ydCBmdW5jdGlvbiBnZXRJdGVtc0J5VHlwZSh0YWJpZDogc3RyaW5nKSB7XHJcbiAgICAgICAgbGV0IHJvd3M6IEpTWC5FbGVtZW50W10gID0gW11cclxuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHRpbWVsaW5lZGF0YS5sZW5ndGg7IGkrKykge1xyXG4gICAgICAgICAgICBpZiAodGFiaWQgPT09IHRpbWVsaW5lZGF0YVtpXS50YWcpIHtcclxuICAgICAgICAgICAgICB2YXIgbmFtZTogc3RyaW5nOyBcclxuICAgICAgICAgICAgICBpZiAodGltZWxpbmVkYXRhW2ldLnRpdGxlKSB7XHJcbiAgICAgICAgICAgICAgICBuYW1lID0gdGltZWxpbmVkYXRhW2ldLnRpdGxlISArIFwiIFwiICsgdGltZWxpbmVkYXRhW2ldLnZvcm5hbWUgKyBcIiBcIiArICB0aW1lbGluZWRhdGFbaV0ubmFjaG5uYW1lO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICBlbHNle1xyXG4gICAgICAgICAgICAgICAgbmFtZSA9ICB0aW1lbGluZWRhdGFbaV0udm9ybmFtZSArIFwiIFwiICsgIHRpbWVsaW5lZGF0YVtpXS5uYWNobm5hbWU7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgcm93cy5wdXNoKDxUaW1lSXRlbVxyXG4gICAgICAgICAgICAgICAgICBrZXk9e2l9XHJcbiAgICAgICAgICAgICAgICAgIHRpdGxlPXt0aW1lbGluZWRhdGFbaV0uaGVhZGluZ31cclxuICAgICAgICAgICAgICAgICAgcGljPXt0aW1lbGluZWRhdGFbaV0ucGljdHVyZXVybH1cclxuICAgICAgICAgICAgICAgICAgdGFnPXt0aW1lbGluZWRhdGFbaV0udGFnfVxyXG4gICAgICAgICAgICAgICAgICBhdXRob3I9e25hbWV9XHJcbiAgICAgICAgICAgICAgICAgIHRhYmlkPXt0aW1lbGluZWRhdGFbaV0uaW50ZXJ2aWV3dGFiaWR9IFxyXG4gICAgICAgICAgICAgICAgICBtb250aD17dGltZWxpbmVkYXRhW2ldLm1vbnRoc30gID5cclxuICAgICAgICAgICAgICAgIDwvVGltZUl0ZW0+KVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiByb3dzOyBcclxuICAgIH1cclxuICAgIFxyXG4gICAgICIsICJpbXBvcnQgeyBUYWJCdXR0b25Sb3cgfSBmcm9tIFwiLi9CdXR0b25zXCI7XHJcbmltcG9ydCBUaW1lSG9yaSwgeyBDb21iaVRpbWVIb3JpIH0gZnJvbSBcIi4vSG9yaXpvbnRhbFRpbWVsaW5lXCI7XHJcbmltcG9ydCB7IEJGSFN0eWxlVGFicywgQnV0dG9uUm93VGFicyB9IGZyb20gXCIuL1RhYnNcIjtcclxuaW1wb3J0IHsgdGltZWxpbmVkYXRhIH0gZnJvbSBcIi4uL2RhdGEvaHB0aW1lbGluZWRhdGFcIjtcclxuZXhwb3J0IGZ1bmN0aW9uIEhQVGltZWxpbmUoKXtcclxuICAgIHJldHVybihcclxuICAgICAgPHNlY3Rpb24gaWQ9XCJUaW1lbGluZVwiIGNsYXNzTmFtZT1cInNlY3Rpb25cIj5cclxuICAgICAgICA8cD5GZWVsIGZyZWUgdG8gc2Nyb2xsIHRyb3VnaCBvdXIgdGltZWxpbmUgYW5kIGxlYXJuIG1vcmUgYWJvdXQgb3VyIGV4dGVuc2l2ZSBodW1hbi1jZW50cmljIGFwcHJvYWNoITwvcD5cclxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNlbnRlclwiPlxyXG4gICAgICAgIDwvZGl2PiBcclxuICAgICAgICA8VGFiQnV0dG9uUm93IGRhdGE9e3RpbWVsaW5lYnV0dG9ucm93ZGF0YX0gY2xhc3N5PVwiXCIgb3BlbnR5cGU9XCJ0aW1lbGluZWNhcmR0YWJzXCIgY2xvc2luZz1cInRpbWVsaW5lcGVyc29udGFic1wiIC8+XHJcbiAgICAgICAgPEJ1dHRvblJvd1RhYnMgY2xhPVwidGltZWxpbmVjYXJkdGFic1wiIGRhdGE9e3RpbWVsaW5lYnV0dG9ucm93ZGF0YX0vPiBcclxuICAgICAgICA8QkZIU3R5bGVUYWJzIGNsYT1cInRpbWVsaW5lcGVyc29udGFic1wiIGRhdGE9e3RpbWVsaW5lZGF0YX0+PC9CRkhTdHlsZVRhYnM+IFxyXG4gICAgICA8L3NlY3Rpb24+XHJcbiAgICApXHJcbiAgfVxyXG5cclxuICBsZXQgdGltZWxpbmVidXR0b25yb3dkYXRhID0gW1xyXG4gICAge1xyXG4gICAgICBidXR0b25uYW1lOiBcIkFsbFwiLCBcclxuICAgICAgbm9kZTogPFRpbWVIb3JpIHRhYj1cIlwiID48L1RpbWVIb3JpPiwgXHJcbiAgICAgIGNzc25hbWU6IFwiRmlyc3RcIixcclxuICAgICAgbWFpbjogdHJ1ZVxyXG4gICAgICBcclxuICAgIH0sXHJcbiAgICB7IFxyXG4gICAgICBub2RlOiA8VGltZUhvcmkgdGFiPVwiUGF0aWVudFwiID48L1RpbWVIb3JpPixcclxuICAgICAgYnV0dG9ubmFtZTogXCJQYXRpZW50c1wiLCBcclxuICAgICAgY3NzbmFtZTogXCJQYXRpZW50XCJcclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgIG5vZGU6IDxUaW1lSG9yaSB0YWI9XCJNZWRpY2FsIFByb2Zlc3Npb25hbFwiID48L1RpbWVIb3JpPixcclxuICAgICAgYnV0dG9ubmFtZTogXCJNZWRpY2FsIFByb2Zlc3Npb25hbHNcIiwgXHJcbiAgICAgIGNzc25hbWU6IFwiTWVkaWNhbFwiXHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICBub2RlOiA8VGltZUhvcmkgdGFiPVwiQWNhZGVtaWFcIiA+PC9UaW1lSG9yaT4sXHJcbiAgICAgIGJ1dHRvbm5hbWU6IFwiQWNhZGVtaWFcIiwgXHJcbiAgICAgIGNzc25hbWU6IFwiQWNhZGVtaWFcIlxyXG4gICAgfSxcclxuICAgIHsgXHJcbiAgICAgIG5vZGU6IDxUaW1lSG9yaSB0YWI9XCJJbmR1c3RyeVwiID48L1RpbWVIb3JpPixcclxuICAgICAgYnV0dG9ubmFtZTogXCJJbmR1c3RyeVwiLCBcclxuICAgICAgY3NzbmFtZTogXCJJbmR1c3RyeVwiXHJcbiAgICB9LFxyXG4gICAgeyBcclxuICAgICAgbm9kZTogPFRpbWVIb3JpIHRhYj1cIk1pbGVzdG9uZVwiID48L1RpbWVIb3JpPixcclxuICAgICAgYnV0dG9ubmFtZTogXCJNaWxlc3RvbmVzXCIsIFxyXG4gICAgICBjc3NuYW1lOiBcIk1pbGVzdG9uZVwiXHJcbiAgICB9LFxyXG4gICB7IFxyXG4gICAgICBub2RlOiA8Q29tYmlUaW1lSG9yaSB0YWIxPVwiRWR1Y2F0aW9uXCIgdGFiMj1cIk91dHJlYWNoXCIgPjwvQ29tYmlUaW1lSG9yaT4sXHJcbiAgICAgIGJ1dHRvbm5hbWU6IFwiRWR1Y2F0aW9uICYgT3V0cmVhY2hcIiwgXHJcbiAgICAgIGNzc25hbWU6IFwiRWR1Y2F0aW9uXCJcclxuICAgIH0sXHJcbiAgICAvKlxyXG4gICAgeyBcclxuICAgICAgbm9kZTogPFRpbWVIb3JpIHRhYj1cIk91dHJlYWNoXCIgPjwvVGltZUhvcmk+LFxyXG4gICAgICBidXR0b25uYW1lOiBcIk91dHJlYWNoXCIsIFxyXG4gICAgICBjc3NuYW1lOiBcIk91dHJlYWNoXCJcclxuICAgIH0gKi9cclxuICBdXHJcbiAgXHJcblxyXG4vKiBleHBvcnQgZnVuY3Rpb24gSFB0aW1lbGluZU5ldyhkYXRhOiBBcnJheTxOb2RlRGF0ZW5zYXR6Pil7XHJcbiAgdmFyIHRpbWVsaW5lY2FyZHM6IFJlYWN0LlJlYWN0Tm9kZTsgXHJcbiAgdmFyIGludGVydmlld3RhYnM6IFxyXG5cclxufSAqLyIsICJpbXBvcnQgQ29sbGFwc2libGUgZnJvbSBcIi4uLy4uL2NvbXBvbmVudHMvQ29sbGFwc2libGVcIjtcclxuaW1wb3J0IHsgSDUsIEg0IH0gZnJvbSBcIi4uLy4uL2NvbXBvbmVudHMvSGVhZGluZ3NcIjtcclxuaW1wb3J0IHsgdXNlTmF2aWdhdGlvbiB9IGZyb20gXCIuLi8uLi91dGlsc1wiO1xyXG5pbXBvcnQgeyB1c2VUYWJOYXZpZ2F0aW9uIH0gZnJvbSBcIi4uLy4uL3V0aWxzL1RhYk5hdmlnYXRpb25cIjtcclxuXHJcblxyXG5leHBvcnQgZnVuY3Rpb24gSFBjb25jbHVzaW9uKCl7XHJcbiAgICBjb25zdCB7Z29Ub1BhZ2VzQW5kT3BlblRhYn0gPSB1c2VOYXZpZ2F0aW9uKCk7IFxyXG4gICAgY29uc3Qge2dvVG9QYWdlQW5kU2Nyb2xsfSA9IHVzZU5hdmlnYXRpb24oKTtcclxuICAgIHVzZVRhYk5hdmlnYXRpb24oKTtcclxuICAgIHJldHVybihcclxuICAgICAgICA8PlxyXG4gICAgICAgICAgPHA+T3VyIHByb2plY3QgaGFzIGV2b2x2ZWQgdGhyb3VnaCBhIGRlZXBseSBjb2xsYWJvcmF0aXZlIGFuZCBodW1hbi1jZW50ZXJlZCBhcHByb2FjaCwgaW50ZWdyYXRpbmcgZGl2ZXJzZSBmZWVkYmFjayBmcm9tIHBhdGllbnRzLCBjbGluaWNpYW5zLCByZXNlYXJjaGVycywgYW5kIGluZHVzdHJ5IGV4cGVydHMuIFRoZXNlIGluc2lnaHRzIHNoYXBlZCBub3Qgb25seSB0aGUgdGVjaG5pY2FsIGFzcGVjdHMgb2Ygb3VyIGdlbmUgdGhlcmFweSBmb3IgIEN5c3RpYyBGaWJyb3NpcyAoQ0YpIGJ1dCBhbHNvIG91ciBjb21taXRtZW50IHRvIGFkZHJlc3NpbmcgcmVhbC13b3JsZCBwYXRpZW50IG5lZWRzLCBldGhpY2FsIGNvbnNpZGVyYXRpb25zLCBhbmQgdGhlIGRpc3Bhcml0aWVzIGluIENGIHRyZWF0bWVudCB3b3JsZHdpZGUuIEZyb20gPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VzQW5kT3BlblRhYignbWF4Zmlyc3QnLCAnJyl9Pk1heCBCZWNrbWFublx1MjAxOXM8L2E+IHBhdGllbnQgcGVyc3BlY3RpdmUgdG8gZXhwZXJ0IGd1aWRhbmNlIG9uIHRlY2huaWNhbCBhbmQgZXRoaWNhbCBpc3N1ZXMsIGVhY2ggc3Rha2Vob2xkZXIgY29udHJpYnV0ZWQgdG8gcmVmaW5pbmcgb3VyIHNvbHV0aW9uLCBlbnN1cmluZyBpdCBpcyBib3RoIGlubm92YXRpdmUgYW5kIGVtcGF0aGV0aWMuIE91ciBmb2N1cyBvbiBnZW5lIHRoZXJhcHkgdGFyZ2V0aW5nIENGXHUyMDE5cyBjb21wbGV4IG11dGF0aW9ucywgaW50ZWdyYXRpbmcgcGh5c2lvdGhlcmFweSwgYW5kIGVuc3VyaW5nIGdsb2JhbCBhY2Nlc3NpYmlsaXR5IGRlbW9uc3RyYXRlcyBvdXIgaG9saXN0aWMgYW5kIGluY2x1c2l2ZSB2aXNpb24gZm9yIHRoaXMgcHJvamVjdC4gSW1wb3J0YW50bHksIHRoZSBjb2xsYWJvcmF0aW9uIHdpdGggcmVzZWFyY2hlcnMgaW4gbmFub3BhcnRpY2xlIHN0YWJpbGl0eSBhbmQgZ2VuZSB0aGVyYXB5LCBhbG9uZyB3aXRoIHRoZSBkZXZlbG9wbWVudCBvZiBiaWxpbmd1YWwgc3VydmV5cyBhbmQgb3V0cmVhY2ggbWF0ZXJpYWxzLCBoaWdobGlnaHRzIG91ciBlZmZvcnRzIHRvIG1ha2Ugc2NpZW5jZSBtb3JlIGFjY2Vzc2libGUgYW5kIHRyYW5zcGFyZW50LCBicmlkZ2luZyBnYXBzIGluIGtub3dsZWRnZSBhbmQgY2FyZS4gICAgIDwvcD5cclxuICAgICAgICAgICAgICAgIDxINSB0ZXh0PVwiSHVtYW4gUHJhY3RpY2VzIEludGVncmF0aW9uIFwiLz5cclxuICAgICAgICAgICAgICAgIDxwPkZyb20gdGhlIHN0YXJ0LCB3ZSBwcmlvcml0aXplZCBlbmdhZ2luZyB3aXRoIENGIHBhdGllbnRzLCBtYWtpbmcgc3VyZSB0aGF0IG91ciBwcm9qZWN0IGFsaWduZWQgd2l0aCBib3RoIHRoZWlyIG5lZWRzIGFuZCBzY2llbnRpZmljIGV4cGVjdGF0aW9ucy4gRWFybHkgaW5wdXQgZnJvbSBNYXggQmVja21hbm4sIGEgQ0YgcGF0aWVudCBhbmQgZnJpZW5kIG9mIG91ciB0ZWFtLCBndWlkZWQga2V5IGRlc2lnbiBkZWNpc2lvbnMsIHN1Y2ggYXMgb3VyIGZvY3VzIG9uIGx1bmctdGFyZ2V0ZWQgZ2VuZSB0aGVyYXB5LiBIaXMgaW5zaWdodHMgYWxzbyBzaGFwZWQgYXNwZWN0cyBsaWtlIGh5Z2llbmUgcHJvdG9jb2xzIGZvciBpbW11bm9jb21wcm9taXNlZCBwYXRpZW50cyBhbmQgdGhlIHBvcnRyYXlhbCBvZiBDRiBpbiBvdXIgb3V0cmVhY2ggbWF0ZXJpYWxzLiBNYXhcdTIwMTlzIG9uZ29pbmcgZmVlZGJhY2sgcHJvdmlkZWQgaW52YWx1YWJsZSBlbW90aW9uYWwgaW5zaWdodCwgaGVscGluZyB1cyBncm91bmQgdGhlIHByb2plY3QgaW4gdGhlIHJlYWwtd29ybGQgZXhwZXJpZW5jZXMgb2YgQ0YgcGF0aWVudHMuPC9wPlxyXG4gICAgICAgICAgICAgICAgPEg1IHRleHQ9XCJTdGFrZWhvbGRlciBFbmdhZ2VtZW50IFwiLz5cclxuICAgICAgICAgICAgICAgIDxwPldlIGNvbnN1bHRlZCB3aXRoIG1lZGljYWwgcHJvZmVzc2lvbmFscyBsaWtlIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlc0FuZE9wZW5UYWIoJ29sYXJpdScsICcnKX0+RHIuIE9sYXJpdSA8L2E+ICB3aG8gZW1waGFzaXplZCB0aGUgaW1wb3J0YW5jZSBvZiBlYXJseSBkaWFnbm9zaXMgYW5kIG1lbnRhbCBoZWFsdGggc3VwcG9ydCBpbiBDRiB0cmVhdG1lbnQuIFRoZXNlIGluc2lnaHRzIGxlZCB1cyB0byBpbnRlZ3JhdGUgbWVudGFsIGhlYWx0aCBjb25zaWRlcmF0aW9ucyBpbnRvIG91ciB0aGVyYXB5IGRlc2lnbiBhbmQgZm9jdXMgb24gcmVkdWNpbmcgcmFjaWFsIGFuZCBnbG9iYWwgZGlzcGFyaXRpZXMgaW4gQ0YgY2FyZS4gUGh5c2lvdGhlcmFwaXN0IDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlc0FuZE9wZW5UYWIoJ3dlc3Rob2ZmaW52JywgJycpfT5LYXRyaW4gV2VzdGhvZmY8L2E+ICBoaWdobGlnaHRlZCB0aGUgbmVlZCBmb3IgYSB1c2VyLWZyaWVuZGx5IGluaGFsYXRpb24tYmFzZWQgdGhlcmFweSBmb3IgeW91bmdlciBwYXRpZW50cywgdmFsaWRhdGluZyBvdXIgZGlyZWN0aW9uIHRvd2FyZHMgY3JlYXRpbmcgYWNjZXNzaWJsZSB0cmVhdG1lbnRzLiA8L3A+XHJcbiAgICAgICAgICAgICAgICA8SDUgdGV4dD1cIkV0aGljYWwsIExlZ2FsLCBhbmQgUmVndWxhdG9yeSBDb25zaWRlcmF0aW9ucyBcIi8+XHJcbiAgICAgICAgICAgICAgICA8cD5Db2xsYWJvcmF0aW9uIHdpdGggcmVndWxhdG9yeSBleHBlcnRzLCBzdWNoIGFzIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlc0FuZE9wZW5UYWIoJ2JlcmVucycsICcnKX0+IERyLiBFdmEtTWFyaWEgQmVyZW5zIDwvYT4gLCBlbnN1cmVkIG91ciB3b3JrIGFkaGVyZWQgdG8gZXRoaWNhbCBhbmQgbGVnYWwgc3RhbmRhcmRzLCBwYXJ0aWN1bGFybHkgaW4gcGF0aWVudCBjb25zZW50IGFuZCBiaW9zYWZldHkgcHJvdG9jb2xzLiBUaHJvdWdoIGZlZWRiYWNrIGZyb20gbGVnYWwgYW5kIGJpb2V0aGljcyBjb21taXR0ZWVzLCB3ZSByZWZpbmVkIG91ciBjb25zZW50IHByb2Nlc3NlcyBhbmQgaW1wcm92ZWQgb3VyIG1hbmFnZW1lbnQgb2YgcGVyc29uYWwgZGF0YSwgZW5zdXJpbmcgb3VyIHByb2plY3QgY29tcGxpZWQgd2l0aCBib3RoIEdlcm1hbiBhbmQgaW50ZXJuYXRpb25hbCByZWd1bGF0aW9ucy4gPC9wPlxyXG4gICAgICAgICAgICAgICAgPEg1IHRleHQ9XCJUZWNobmljYWwgYW5kIFNjaWVudGlmaWMgQWRhcHRhdGlvbnMgXCIvPlxyXG4gICAgICAgICAgICAgICAgPHA+V2UgY29udGludW91c2x5IGludGVncmF0ZWQgZXhwZXJ0IHRlY2huaWNhbCBmZWVkYmFjayBpbnRvIHRoZSBwcm9qZWN0LiBDb250cmlidXRpb25zIGZyb20gPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VzQW5kT3BlblRhYigncm5oYWxlJywgJycpfT5Eci4gQmVuamFtaW4gV2lua2VsamFubjwvYT4gIGFuZCA8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZXNBbmRPcGVuVGFiKCdrb2xvbmtvZmlyc3QnLCAnL2h1bWFuLXByYWN0aWNlcycpfT5Eci4gS2F0aGFyaW5hIEtvbG9ua288L2E+ICBoZWxwZWQgdXMgaW1wcm92ZSB0aGUgc3RhYmlsaXR5IGFuZCBzY2FsYWJpbGl0eSBvZiBvdXIgc3ByYXktZHJpZWQgbGlwaWQgbmFub3BhcnRpY2xlcyAoTE5QcyksIHdoaWNoIGFyZSBlc3NlbnRpYWwgZm9yIFJOQSBkZWxpdmVyeS4gVGhpcyBwcmFjdGljYWwgZm9jdXMgb24gc2NhbGFibGUgc29sdXRpb25zIGFsbG93ZWQgdXMgdG8gYWRkcmVzcyBnbG9iYWwgY2hhbGxlbmdlcywgc3VjaCBhcyB0aGUgbmVlZCBmb3IgdHJhbnNwb3J0YWJsZSB0aGVyYXBpZXMuIENvbGxhYm9yYXRpbmcgd2l0aCB5ZWFzdCBjdWx0aXZhdGlvbiBleHBlcnRzIGxpa2UgPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VzQW5kT3BlblRhYignbmJlcmVsc21hbm4nLCAnJyl9Pk5pbHMgQmVyZWxzbWFubjwvYT4sIHdlIGFsc28gb3B0aW1pemVkIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlQW5kU2Nyb2xsICgnbG5wcycsICcvbWF0ZXJpYWxzLW1ldGhvZHMnKX0+IFJOQSBkZWxpdmVyeSBTeXN0ZW1zIDwvYT4gdG8gZW5zdXJlIGVmZmVjdGl2ZSBsdW5nIHBlbmV0cmF0aW9uLiA8L3A+XHJcbiAgICAgICAgICAgICAgICA8SDUgdGV4dD1cIkdsb2JhbCBJbXBhY3QgYW5kIEluY2x1c2l2aXR5IFwiLz5cclxuICAgICAgICAgICAgICAgIDxwPlJlY29nbml6aW5nIHRoZSBkaXNwYXJpdGllcyBpbiBDRiBjYXJlIGFjcm9zcyBkaWZmZXJlbnQgcmVnaW9ucywgcGFydGljdWxhcmx5IGluIHVuZGVycmVwcmVzZW50ZWQgYXJlYXMgbGlrZSBBc2lhLCB3ZSBhZGp1c3RlZCBvdXIgYXBwcm9hY2ggdG8gY3JlYXRlIGEgbW9yZSBpbmNsdXNpdmUgdGhlcmFweS4gV2l0aCBmZWVkYmFjayBmcm9tIHN0YWtlaG9sZGVycyBsaWtlIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlc0FuZE9wZW5UYWIoJ2pvc2h1YScsICcnKX0+Sm9zaHVhIEJhdWRlcjwvYT4gZnJvbSBDRiBWZXN0IEludGVybmF0aW9uYWwgYW5kIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlc0FuZE9wZW5UYWIoJ3NyaXJhbScsICcvaHVtYW4tcHJhY3RpY2VzJyl9PkRyLiBTcmlyYW0gVmFpZHlhbmF0aGFuPC9hPiwgd2UgZW5zdXJlZCBvdXIgdGhlcmFweSBhZGRyZXNzZWQgYSB3aWRlciByYW5nZSBvZiBDRiBtdXRhdGlvbnMuIFRoaXMgZ2xvYmFsIGZvY3VzIGxlZCB0byBiaWxpbmd1YWwgc3VydmV5cyBhbmQgZXhwYW5kZWQgb3V0cmVhY2ggZWZmb3J0cyB0byByYWlzZSBhd2FyZW5lc3MgYWJvdXQgQ0YgYW5kIGdlbmUgdGhlcmFweS4gPC9wPlxyXG4gICAgICAgICAgICAgICAgPEg1IHRleHQ9XCJGZWVkYmFjayBMb29wcyBhbmQgUHJvamVjdCBFdm9sdXRpb24gXCIvPlxyXG4gICAgICAgICAgICAgICAgPHA+V2UgZW1wbG95ZWQgYSBzdHJ1Y3R1cmVkIGZlZWRiYWNrIGN5Y2xlIGJhc2VkIG9uIEdpYmJzJyBSZWZsZWN0aW9uIEN5Y2xlLCBlbnN1cmluZyBvdXIgZGVzaWduIGNvbnRpbnVvdXNseSBldm9sdmVkIHdpdGggc3Rha2Vob2xkZXIgaW5wdXQuIEZyb20gaW5pdGlhbCBkZXNpZ24gdG8gcHVibGljIG91dHJlYWNoLCBldmVyeSBwaGFzZSBvZiBQcmVDeXNlIHdhcyBzaGFwZWQgYnkgdGhlIGZlZWRiYWNrIHdlIHJlY2VpdmVkLCBhbGxvd2luZyB1cyB0byBkZXZlbG9wIGEgcGF0aWVudC1jZW50ZXJlZCBhbmQgZ2xvYmFsbHkgcmVsZXZhbnQgc29sdXRpb24uIDwvcD5cclxuICAgICAgICAgICAgICAgIDxINSB0ZXh0PVwiRG9jdW1lbnRhdGlvbiBhbmQgRnV0dXJlIEd1aWRhbmNlIFwiLz5cclxuICAgICAgICAgICAgICAgIDxwPldlIGFyZSBjb21taXR0ZWQgdG8gdHJhbnNwYXJlbmN5IGFuZCBvcGVuIHNjaWVuY2UuIE91ciBkZXRhaWxlZCBkb2N1bWVudGF0aW9uIG9mIHN0YWtlaG9sZGVyIGludGVyYWN0aW9ucyBhbmQgbWV0aG9kc1x1MjAxNGluY2x1ZGluZyBwcm90b2NvbHMgZm9yIHdvcmtpbmcgd2l0aCA8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZUFuZFNjcm9sbCAoJ0NlbGwgQ3VsdHVyZTMnLCAnL21hdGVyaWFscy1tZXRob2RzJyl9PiBodW1hbiBuYXNhbCBlcGl0aGVsaWFsIGNlbGxzIDwvYT5cdTIwMTRwcm92aWRlcyBhIGZvdW5kYXRpb24gZm9yIGZ1dHVyZSBpR0VNIHRlYW1zLiBPdXIgb3V0cmVhY2ggZWZmb3J0cywgaW5jbHVkaW5nIGVkdWNhdGlvbmFsIG1hdGVyaWFscyBhbmQgcHVibGljIGVuZ2FnZW1lbnQgY2FtcGFpZ25zLCBoZWxwIGZvc3RlciBhIGJyb2FkZXIgdW5kZXJzdGFuZGluZyBvZiBDRiBhbmQgZ2VuZSB0aGVyYXB5LCByZWZsZWN0aW5nIGlHRU1cdTIwMTlzIHZpc2lvbiBvZiByZXNwb25zaWJsZSBhbmQgaW1wYWN0ZnVsIHNjaWVudGlmaWMgcHJhY3RpY2VzLiA8L3A+XHJcbiAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiTmV4dCBTdGVwc1wiLz5cclxuICAgICAgICAgICAgICAgIDxvbD5cclxuICAgICAgICAgICAgICAgICAgICA8bGk+PHA+PGI+QWR2YW5jZWQgVGVzdGluZyBhbmQgUHJlY2xpbmljYWwgVHJpYWxzOjwvYj48L3A+ICA8cD5Gb2xsb3dpbmcgdGhlIHN1Y2Nlc3NmdWwgaW4gdml0cm8gZXhwZXJpbWVudHMsIG91ciBuZXh0IG1ham9yIG1pbGVzdG9uZSBpcyB0aGUgaW5pdGlhdGlvbiBvZiBhbmltYWwgc3R1ZGllcyB0byBldmFsdWF0ZSB0aGUgc2FmZXR5IGFuZCBlZmZpY2FjeSBvZiBvdXIgZ2VuZSB0aGVyYXB5IGFwcHJvYWNoLCBwYXJ0aWN1bGFybHkgaW4gQ0YgbHVuZyBtb2RlbHMuPC9wPjwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgPGxpPjxwPjxiPkVuaGFuY2luZyBSTkEgRGVsaXZlcnkgU3lzdGVtczo8L2I+PC9wPiAgPHA+V2Ugd2lsbCBjb250aW51ZSBvcHRpbWl6aW5nIG91ciBsaXBpZCBuYW5vcGFydGljbGUgKExOUCkgZm9ybXVsYXRpb25zLCBwYXJ0aWN1bGFybHkgZXhwbG9yaW5nIGNoaXRvc2FuIGludGVncmF0aW9uLCB0byBpbXByb3ZlIFJOQSBzdGFiaWxpdHksIGx1bmcgcGVuZXRyYXRpb24sIGFuZCBzY2FsYWJpbGl0eSBmb3IgYnJvYWRlciBnbG9iYWwgYXBwbGljYXRpb25zLjwvcD48L2xpPlxyXG4gICAgICAgICAgICAgICAgICAgIDxsaT48cD48Yj5DbGluaWNhbCBQYXJ0bmVyc2hpcHM6PC9iPjwvcD4gIDxwPkVzdGFibGlzaCBzdHJvbmdlciB0aWVzIHdpdGggY2xpbmljYWwgaW5zdGl0dXRpb25zIHRvIG1vdmUgdG93YXJkcyBodW1hbiB0cmlhbHMsIGVuc3VyaW5nIHRoYXQgb3VyIHRoZXJhcHkgaXMgYWxpZ25lZCB3aXRoIGNsaW5pY2FsIG5lZWRzIGFuZCByZWd1bGF0b3J5IHN0YW5kYXJkcy48L3A+PC9saT5cclxuICAgICAgICAgICAgICAgICAgICA8bGk+PHA+PGI+RXhwYW5kZWQgR2xvYmFsIE91dHJlYWNoOjwvYj48L3A+ICA8cD5JbmNyZWFzZSBhd2FyZW5lc3MgYW5kIGVkdWNhdGlvbiBvbiBDRiBhbmQgZ2VuZSB0aGVyYXB5IHRocm91Z2ggbXVsdGlsaW5ndWFsIHBsYXRmb3JtcyBhbmQgY29sbGFib3JhdGlvbiB3aXRoIGludGVybmF0aW9uYWwgQ0YgY29tbXVuaXRpZXMsIHBhcnRpY3VsYXJseSBpbiB1bmRlcnJlcHJlc2VudGVkIHJlZ2lvbnMuPC9wPjwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgPGxpPjxwPjxiPkV0aGljYWwgYW5kIExlZ2FsIENvbnNpZGVyYXRpb25zOjwvYj48L3A+ICA8cD5GaW5hbGl6ZSBhbGwgYmlvZXRoaWNhbCBwcm90b2NvbHMgZm9yIHBhdGllbnQgc2FtcGxpbmcgYW5kIGRhdGEgbWFuYWdlbWVudCB0byBwYXZlIHRoZSB3YXkgZm9yIHNhZmUsIGNvbXBsaWFudCBmdXR1cmUgcmVzZWFyY2gsIGluY2x1ZGluZyB0aGUgZGV2ZWxvcG1lbnQgb2YgZ3VpZGVsaW5lcyBmb3IgZnV0dXJlIHRlYW1zLjwvcD48L2xpPlxyXG4gICAgICAgICAgICAgICAgPC9vbD5cclxuICAgICAgICAgICAgICAgIDxwPkJ5IGNvbnRpbnVpbmcgdGhpcyBwYXRpZW50LWRyaXZlbiwgc2NpZW50aWZpY2FsbHkgcmlnb3JvdXMsIGFuZCBnbG9iYWxseSBjb25zY2lvdXMgdHJhamVjdG9yeSwgd2UgYWltIHRvIGFkdmFuY2UgIEN5c3RpYyBGaWJyb3NpcyBjYXJlIGFuZCBtYWtlIGEgbGFzdGluZyBpbXBhY3Qgb24gcGF0aWVudCBsaXZlcywgZW5zdXJpbmcgdGhhdCBvdXIgcHJvamVjdCByZW1haW5zIHBvaXNlZCBmb3IgY2xpbmljYWwgc3VjY2Vzcy48L3A+XHJcbiAgICAgICAgICAgICAgICBcclxuXHJcbjwvPlxyXG4gICAgKVxyXG59XHJcblxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIEhQY29uVGFicygpe1xyXG5cclxuICAgIHJldHVybihcclxuICAgICAgICA8PlxyXG4gICAgICAgIDxBbmFseXNlTWF4Lz5cclxuICAgICAgICA8QWFseXNlT2xhcml1Lz5cclxuICAgICAgICA8QW5hbHlzZVdlc3Rob2ZmLz5cclxuICAgICAgICA8QW5hbHlzZUpvc2h1YS8+XHJcbiAgICAgICAgPEFuYWx5c2VSbmhhbGUvPlxyXG4gICAgICAgIDxBbmFseXNlS29sb25rby8+XHJcbiAgICAgICAgPEFuYWx5c2VNb29yLz5cclxuICAgICAgICA8QW5hbHlzZVdlYmVyLz5cclxuICAgICAgICA8QW5hbHlzZUJlcmVucy8+XHJcbiAgICAgICAgPEFuYWx5c2VNaWNoYWVsYS8+XHJcbiAgICAgICAgPEFuYWx5c2VNYXR0aWpzLz4gXHJcbiAgICAgICAgPEFuYWx5c2VXaXNjaG1leWVyLz5cclxuICAgICAgICA8QW5hbHlzZUlnbmF0b3ZhLz5cclxuICAgICAgICA8QW5hbHlzZUJoYXJ0aS8+XHJcbiAgICAgICAgPEFuYWx5c2VTcmlyYW0vPlxyXG4gICAgICAgIDxBbmFseXNlS3Jpc3RpYW4vPlxyXG4gICAgICAgIDxBbmFseXNlU2FpdG8vPlxyXG4gICAgICAgIDxBbmFseXNlTmlscy8+XHJcbiAgICAgICAgPC8+XHJcbiAgICApXHJcbn1cclxuXHJcbi8qIFxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvd1wiPiBcclxuICAgIFx0ICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPiBcclxuICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz1cIlwiIGFsdD1cIlwiLz5cclxuICAgIFx0ICAgICAgICA8L2Rpdj4gXHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPiAgXHJcbiAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9XCJcIiBhbHQ9XCJcIi8+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj4gXHJcbiAgICAgICAgICAgIDwvZGl2PiBcclxuXHJcbiAgICAgICAgICAgIGZ1bmN0aW9uIEFuYWx5c2UoKXtcclxuICAgcmV0dXJuKFxyXG4gICAgPENvbGxhcHNpYmxlIHRpdGxlPVwiXCIgaWQ9XCJcIj5cclxuICAgICAgICBcclxuICAgIDwvQ29sbGFwc2libGU+XHJcbiAgICkgXHJcbn1cclxuXHJcblxyXG4gICAgICAgIDxmaWd1cmU+IFxyXG4gICAgICAgICAgICA8aW1nIHNyYz1cImxpbmtcIiBhbHQ9XCJ3aGF0IGlzIGluIHRoZSBwaWNcIi8+IFxyXG4gICAgICAgICAgICA8ZmlnY2FwdGlvbj4gXHJcbiAgICAgICAgICAgICAgICAgICAgPGI+RmlndXJlIHguPC9iPiAgRmlndXJlIENhcHRpb24gXHJcbiAgICAgICAgICAgIDwvZmlnY2FwdGlvbj4gXHJcbiAgICAgICAgPC9maWd1cmU+IFxyXG5cclxuXHJcblxyXG4gICAgICAgIDxmaWd1cmU+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93XCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICAgICAgICA8aW1nIHNyYz1cIlwiIGFsdD1cIlwiIC8+XHJcbiAgICAgICAgICAgIDwvZGl2PiBcclxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiXCIgYWx0PVwiXCIvPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxmaWdjYXB0aW9uPjxiPkZpZ3VyZSB4LjwvYj4gQ2FwdGlvbiA8L2ZpZ2NhcHRpb24+XHJcbiAgICAgICAgPC9maWd1cmU+XHJcbiovXHJcblxyXG5cclxuZnVuY3Rpb24gQW5hbHlzZU5pbHMoKXtcclxuICAgIGNvbnN0IHtnb1RvUGFnZXNBbmRPcGVuVGFifSA9IHVzZU5hdmlnYXRpb24oKTsgXHJcbiAgICByZXR1cm4oXHJcbiAgICAgPENvbGxhcHNpYmxlIHRpdGxlPVwiTmlscyBCZXJlbHNtYW5uICYgSGFrYW4gU295dFx1MDBGQ3JrIC0gU3BlY2lhbGlzdHMgaW4geWVhc3QgY3VsdGl2YXRpb24gXCIgaWQ9XCJuaWxzYW5hbHlzZUNcIj5cclxuICAgICAgICAgPHA+TmlscyBCZXJlbHNtYW5uIGFuZCBIYWthbiBTb3l0XHUwMEZDcmssIHNwZWNpYWxpc3RzIGluIHllYXN0IGN1bHRpdmF0aW9uLCBwbGF5ZWQgcGl2b3RhbCByb2xlcyBpbiBhZHZhbmNpbmcgb3VyIHByb2plY3QuIE5pbHMgcHJvdmlkZWQgdXMgd2l0aCBhIHllYXN0IHN0cmFpbiBjb21wYXRpYmxlIHdpdGggPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VzQW5kT3BlblRhYignc2FpdG8nLCAnL2h1bWFuLXByYWN0aWNlcycpfT5Eci4gU2FpdG8nczwvYT4gIHJlY29tbWVuZGF0aW9ucywgcGFydGljdWxhcmx5IG9uZSB0aGF0IGRvZXNuXHUyMDE5dCBleHByZXNzIHByb3RlYXNlcywgd2hpY2ggd291bGQgZGVncmFkZSBvdXIgbmlja2FzZSBjYW5kaWRhdGVzLiBUaGlzIHN0cmFpbiB3YXMgZXNzZW50aWFsIGZvciBtYWludGFpbmluZyB0aGUgaW50ZWdyaXR5IG9mIG91ciBlbmdpbmVlcmVkIGVuenltZXMuIDwvcD5cclxuICAgICAgICA8cD5IYWthbiBlcXVpcHBlZCB1cyB3aXRoIHRoZSBtZXRob2RvbG9naWNhbCBleHBlcnRpc2UgbmVlZGVkIHRvIHdvcmsgd2l0aCB5ZWFzdCwgZ3VpZGluZyB1cyB0aHJvdWdoIHRoZSBjb21wbGV4aXRpZXMgb2YgeWVhc3QgY3VsdGl2YXRpb24uIFdpdGggdGhlaXIgc3VwcG9ydCwgd2UgYWRhcHRlZCBvdXIgZW5naW5lZXJpbmcgZGVzaWduIHNwZWNpZmljYWxseSBmb3IgeWVhc3QgZXhwcmVzc2lvbi4gTmlscyBhbHNvIHN1cHBsaWVkIHVzIHdpdGggYSB0YXJnZXQgdmVjdG9yIG9wdGltaXplZCBmb3IgeWVhc3QgZXhwcmVzc2lvbiwgd2hpY2ggd2Ugc3VjY2Vzc2Z1bGx5IHVzZWQgdG8gaW50ZWdyYXRlIGEgQ2FzWCBuaWNrYXNlIGNhbmRpZGF0ZS4gVGhpcyBwcm92ZWQgZXNwZWNpYWxseSB2YWx1YWJsZSBhcyBvdXIgU3B1IGNhbmRpZGF0ZXMgd2VyZSBkaWZmaWN1bHQgdG8gaW50ZWdyYXRlIGR1ZSB0byB0aGUgdXNlIG9mIG92ZXJoYW5ncy4gV2UgYXJlIHN0aWxsIHdvcmtpbmcgb24gdGhpcyBjaGFsbGVuZ2UsIHN0YXlpbmcgaW4gY2xvc2UgY29udGFjdCB3aXRoIHRoZSBleHBlcnRzIHRvIHJlZmluZSBvdXIgcHJvY2Vzcy4gPC9wPlxyXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZmlndXJlPlxyXG4gICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvaW50ZWdyYXRlZC1odW1hbi1wcmFjdGljZXMveWVhc3QtcGxhdGUud2VicFwiIGFsdD1cIlwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9maWd1cmU+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj4gXHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxmaWd1cmU+XHJcbiAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9pbnRlZ3JhdGVkLWh1bWFuLXByYWN0aWNlcy9wcGljM2suc3ZnIC9cIiBhbHQ9XCJcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgPC9maWd1cmU+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgIDxwPjxzdHJvbmc+WWVhc3Qgc3RyYWluIHByb3Zpc2lvbjo8L3N0cm9uZz4gTmlscyBwcm92aWRlZCBhIHllYXN0IHN0cmFpbiBjb21wYXRpYmxlIHdpdGggRHIuIFNhaXRvJ3MgcmVjb21tZW5kYXRpb25zLCB3aGljaCBkb2VzIG5vdCBleHByZXNzIHByb3RlYXNlcyB0aGF0IHdvdWxkIGRlZ3JhZGUgb3VyIG5pY2thc2UgY2FuZGlkYXRlcywgbWFpbnRhaW5pbmcgdGhlIGludGVncml0eSBvZiBvdXIgZW5naW5lZXJlZCBlbnp5bWVzLjwvcD5cclxuXHJcbjxwPjxzdHJvbmc+TWV0aG9kb2xvZ2ljYWwgZ3VpZGFuY2U6PC9zdHJvbmc+IEhha2FuIHByb3ZpZGVkIGV4cGVydGlzZSBpbiB5ZWFzdCBjdWx0aXZhdGlvbiwgZ3VpZGluZyB1cyB0aHJvdWdoIHRoZSBjb21wbGV4aXRpZXMgb2Ygd29ya2luZyB3aXRoIHllYXN0LjwvcD5cclxuXHJcbjxwPjxzdHJvbmc+RW5naW5lZXJpbmcgYWRhcHRhdGlvbiBmb3IgeWVhc3Q6PC9zdHJvbmc+IFdpdGggdGhlaXIgc3VwcG9ydCwgd2UgYWRhcHRlZCBvdXIgZW5naW5lZXJpbmcgZGVzaWduIHNwZWNpZmljYWxseSBmb3IgeWVhc3QgZXhwcmVzc2lvbi48L3A+XHJcblxyXG48cD48c3Ryb25nPlRhcmdldCB2ZWN0b3IgZm9yIHllYXN0Ojwvc3Ryb25nPiBOaWxzIHN1cHBsaWVkIGFuIG9wdGltaXplZCB0YXJnZXQgdmVjdG9yIGZvciB5ZWFzdCBleHByZXNzaW9uLCB3aGljaCBhbGxvd2VkIHN1Y2Nlc3NmdWwgaW50ZWdyYXRpb24gb2YgYSBDYXNYIG5pY2thc2UgY2FuZGlkYXRlLjwvcD5cclxuXHJcbjxwPjxzdHJvbmc+Q2hhbGxlbmdlIHdpdGggU3B1IGNhbmRpZGF0ZXM6PC9zdHJvbmc+IEludGVncmF0aW9uIG9mIFNwdSBjYW5kaWRhdGVzIHByb3ZlZCBkaWZmaWN1bHQgZHVlIHRvIG92ZXJoYW5nczsgd2UgYXJlIHN0aWxsIHdvcmtpbmcgb24gdGhpcyBjaGFsbGVuZ2UgYW5kIGFyZSBzdGF5aW5nIGluIGNsb3NlIGNvbnRhY3Qgd2l0aCB0aGUgZXhwZXJ0cyB0byByZWZpbmUgdGhlIHByb2Nlc3MuPC9wPlxyXG5cclxuICAgICA8L0NvbGxhcHNpYmxlPlxyXG4gICAgKSBcclxuIH1cclxuZnVuY3Rpb24gQW5hbHlzZVNhaXRvKCl7XHJcbiAgICByZXR1cm4oXHJcbiAgICAgPENvbGxhcHNpYmxlIHRpdGxlPVwiRHIuIE1ha290byBTYWl0byBcdTIwMTMgTGVhZGluZyBSZXNlYXJjaCBFeHBlcnQgZm9yIEZBTlpPUlwiIGlkPVwic2FpdG9hbmFseXNlQ1wiPlxyXG4gICAgICAgICA8cD5FYXJseSBpbiBvdXIgcHJvamVjdCBkZXNpZ24sIHdlIGRlY2lkZWQgdG8gb3B0aW1pemUgdGhlIFByaW1lIEVkaXRpbmcgdGVjaG5vbG9neS4gRnJvbSB0aGUgbGl0ZXJhdHVyZSwgd2UgaWRlbnRpZmllZCBGQU5aT1IsIGEgc21hbGwsIGV1a2FyeW90aWMgUk5BLWJpbmRpbmcgRE5BIGVuZG9udWNsZWFzZSwgYXMgYSBwb3RlbnRpYWwgYWx0ZXJuYXRpdmUgdG8gQ2FzOSBmb3Igb3VyIGFwcHJvYWNoLiBUaHJvdWdoIGNvbGxhYm9yYXRpb24gd2l0aCB0aGUgZW56eW1lXHUyMDE5cyBkaXNjb3ZlcmVyLCBEci4gTWFrb3RvIFNhaXRvLCB3ZSB3ZXJlIGFibGUgdG8gcmVmaW5lIG91ciBlbmdpbmVlcmluZyBzdHJhdGVneS4gRHIuIFNhaXRvIGVuY291cmFnZWQgdXMgdG8gbW9kaWZ5IHRoZSBUTkIgZG9tYWluIG9mIEZBTlpPUiB1c2luZyBzaXRlLWRpcmVjdGVkIG11dGFnZW5lc2lzLCBlbnN1cmluZyB0aGUgbm9uLWNvZGluZyBzdHJhbmQgaXMgbm90IHBvc2l0aW9uZWQgaW4gdGhlIGFjdGl2ZSBzaXRlIG9mIHRoZSBSdXZDIGRvbWFpbi4gVGhpcyBhcHByb2FjaCBtaXJyb3JzIHRoZSBuaWNrYXNlIHN0cmF0ZWd5IHVzZWQgaW4gQ2FzMTIgdmFyaWFudHMuIDwvcD5cclxuICAgICAgICAgPHA+RHIuIFNhaXRvIGFsc28gbW90aXZhdGVkIHVzIHRvIGV4cHJlc3Mgb3VyIHBvdGVudGlhbCBuaWNrYXNlIHZhcmlhbnRzIGluIDxpPlNhY2NoYXJvbXljZXMgY2VyZXZpc2lhZSA8L2k+IHRvIGJldHRlciBjaGFyYWN0ZXJpemUgdGhlaXIgZnVuY3Rpb25hbGl0eS4gSGUgcGxheWVkIGEga2V5IHJvbGUgaW4gc3VwcG9ydGluZyBvdXIgZGVjaXNpb24gdG8gZXhwbG9yZSBhZGRpdGlvbmFsIENhcyBlbmRvbnVjbGVhc2UgY2FuZGlkYXRlcywgc3VjaCBhcyBDYXNYLCB3aGljaCBpcyBtb3JlIGNsb3NlbHkgcmVsYXRlZCB0byBDYXM5IGFuZCBDYXMxMiwgcHJvdmlkaW5nIGFkZGl0aW9uYWwgZmxleGliaWxpdHkgZm9yIG91ciBnZW5lLWVkaXRpbmcgZ29hbHMuIDwvcD5cclxuICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3cgYWxpZ24taXRlbXMtY2VudGVyXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxmaWd1cmU+XHJcbiAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9pbnRlZ3JhdGVkLWh1bWFuLXByYWN0aWNlcy9zYWl0by53ZWJwXCIgYWx0PVwiXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICA8L2ZpZ3VyZT5cclxuICAgICAgICAgICAgICAgIDwvZGl2PiBcclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGZpZ3VyZT5cclxuICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2ludGVncmF0ZWQtaHVtYW4tcHJhY3RpY2VzL25zcHVmei5zdmdcIiBhbHQ9XCJcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgPC9maWd1cmU+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcblxyXG48cD48c3Ryb25nPkZBTlpPUiBhcyBDYXM5IGFsdGVybmF0aXZlOjwvc3Ryb25nPiBJZGVudGlmaWVkIEZBTlpPUiwgYSBzbWFsbCBldWthcnlvdGljIFJOQS1iaW5kaW5nIEROQSBlbmRvbnVjbGVhc2UsIGFzIGEgcHJvbWlzaW5nIGFsdGVybmF0aXZlIHRvIENhczkgZm9yIFByaW1lIEVkaXRpbmcuPC9wPlxyXG5cclxuPHA+PHN0cm9uZz5Db2xsYWJvcmF0aW9uIHdpdGggRHIuIFNhaXRvOjwvc3Ryb25nPiBXb3JrZWQgY2xvc2VseSB3aXRoIHRoZSBlbnp5bWVcdTIwMTlzIGRpc2NvdmVyZXIsIERyLiBNYWtvdG8gU2FpdG8sIHRvIHJlZmluZSBvdXIgZW5naW5lZXJpbmcgc3RyYXRlZ3kgZm9yIEZBTlpPUi48L3A+XHJcblxyXG48cD48c3Ryb25nPlROQiBkb21haW4gbW9kaWZpY2F0aW9uOjwvc3Ryb25nPiBEci4gU2FpdG8gc3VnZ2VzdGVkIG1vZGlmeWluZyB0aGUgVE5CIGRvbWFpbiB2aWEgc2l0ZS1kaXJlY3RlZCBtdXRhZ2VuZXNpcyB0byBwcmV2ZW50IHRoZSBub24tY29kaW5nIHN0cmFuZCBmcm9tIGVudGVyaW5nIHRoZSBSdXZDIGFjdGl2ZSBzaXRlLCBmb2xsb3dpbmcgdGhlIG5pY2thc2Ugc3RyYXRlZ3kgdXNlZCBpbiBDYXMxMiB2YXJpYW50cy48L3A+XHJcblxyXG48cD48c3Ryb25nPlllYXN0IGV4cHJlc3Npb24gZm9yIGZ1bmN0aW9uYWxpdHk6PC9zdHJvbmc+IFJlY29tbWVuZGVkIGV4cHJlc3Npbmcgbmlja2FzZSB2YXJpYW50cyBpbiBTYWNjaGFyb215Y2VzIGNlcmV2aXNpYWUgdG8gYXNzZXNzIHRoZWlyIGZ1bmN0aW9uYWxpdHkgbW9yZSBlZmZlY3RpdmVseS48L3A+XHJcblxyXG48cD48c3Ryb25nPkV4cGxvcmF0aW9uIG9mIG90aGVyIGVuZG9udWNsZWFzZXM6PC9zdHJvbmc+IFN1cHBvcnRlZCB0aGUgZXhwbG9yYXRpb24gb2YgYWRkaXRpb25hbCBlbmRvbnVjbGVhc2VzIGxpa2UgQ2FzWCwgb2ZmZXJpbmcgZ3JlYXRlciBmbGV4aWJpbGl0eSBhbmQgYWRhcHRhYmlsaXR5IGluIG91ciBnZW5lLWVkaXRpbmcgYXBwcm9hY2guPC9wPlxyXG5cclxuICAgICA8L0NvbGxhcHNpYmxlPlxyXG4gICAgKSBcclxuIH1cclxuZnVuY3Rpb24gQW5hbHlzZUtyaXN0aWFuKCl7XHJcbiAgICByZXR1cm4oXHJcbiAgICAgPENvbGxhcHNpYmxlIHRpdGxlPVwiUHJvZi4gRHIuIEtyaXN0aWFuIE1cdTAwRkNsbGVyIFx1MjAxMyBFeHBlcnQgZm9yIFN5bnRoZXRpYyBCaW9sb2d5LCBHZW5ldGljIGRlc2lnbiwgY2xvbmluZyBzdHJhdGVnaWVzLCBtb2xlY3VsYXIgYW5kIGNlbGx1bGFyIGJpb3RlY2hub2xvZ3kgXCIgaWQ9XCJrcmlzdGlhbmFuYWx5c2VDXCI+XHJcbiAgICAgICAgIDxwPkluIGNsb3NlIGNvbGxhYm9yYXRpb24gd2l0aCBQcm9mLiBNXHUwMEZDbGxlclx1MjAxOXMgbGFiLCB3ZSBsZWFybmVkIGJvdGggYmFzaWMgYW5kIGFkdmFuY2VkIGNsb25pbmcgc3RyYXRlZ2llcyB3aXRoaW4gc3ludGhldGljIGJpb2xvZ3kuIEVhcmx5IG9uLCBQcm9mLiBNXHUwMEZDbGxlciBzdWdnZXN0ZWQgbWFraW5nIG91ciBQcmltZSBFZGl0aW5nIGNvbXBsZXggc21hbGxlciBhbmQgbW9yZSBzdGFibGUsIGVuaGFuY2luZyBpdHMgc3VpdGFiaWxpdHkgZm9yIHZhcmlvdXMgdGhlcmFwZXV0aWMgYXBwbGljYXRpb25zLiBIaXMgY29udGludW91cyBzdXBwb3J0IHdhcyBjcnVjaWFsIGluIGd1aWRpbmcgdXMgdGhyb3VnaCB0aGUgY2xvbmluZyBvZiBhbGwgY29uc3RydWN0cywgYW5kIGFzIGFuIGV4cGVydCBpbiBnZW5lIHRoZXJhcHksIGhlIHByb3ZpZGVkIG9uZ29pbmcgZmVlZGJhY2sgb24gdGhlIHNhZmV0eSBhc3BlY3RzIG9mIG91ciByZXNlYXJjaC4gPC9wPlxyXG4gICAgICAgICA8cD5XaXRoIGFjY2VzcyB0byBhIEJTTDIgbGFib3JhdG9yeSBwcm92aWRlZCBieSBNXHUwMEZDbGxlclx1MjAxOXMgdGVhbSwgd2Ugd2VyZSBhYmxlIHRvIHN1Y2Nlc3NmdWxseSBjdWx0aXZhdGUgcHJpbWFyeSBjZWxsIGN1bHR1cmVzLiBUbyBlbnN1cmUgc2FmZSB3b3JrIGNvbmRpdGlvbnMsIHdlIHVuZGVyd2VudCB0cmFpbmluZyBmb3IgYmlvc2FmZXR5IHByb2NlZHVyZXMgYW5kIHJvdXRpbmVseSB0ZXN0ZWQgZm9yIEhQViwgSElWLCBIQlYsIGFuZCBNeWNvcGxhc21hIGNvbnRhbWluYXRpb24uIFRoYW5rcyB0byBNXHUwMEZDbGxlclx1MjAxOXMgZ3VpZGFuY2UsIHdlIGNvbnRyaWJ1dGVkIGEgY29tcG9zaXRlIHBhcnQgdG8gdGhlIGlHRU0gcmVnaXN0cnkuIE91ciBQcmVDeXNlIGNhc3NldHRlIGFsbG93cyBmb3IgbW9kdWxhciBQcmltZSBFZGl0aW5nIHN5c3RlbXMgdGhhdCBhcmUgcGFydGljdWxhcmx5IGVmZmljaWVudCwgc3RhYmxlLCBhbmQgc2FmZSBiYXNlZCBvbiBvdXIgcmVzZWFyY2guIDwvcD5cclxuXHJcbiAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZmlndXJlPlxyXG4gICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL3ByZWN5c2Uuc3ZnXCIgYWx0PVwiXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICA8L2ZpZ3VyZT5cclxuICAgICAgICAgICAgICAgIDwvZGl2PiBcclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGZpZ3VyZT5cclxuICAgICAgICAgICAgICAgICAgICA8aWZyYW1lIHRpdGxlPVwiQmllbGVmZWxkLUNlQmlUZWM6IEludGVydmlldyBNXHUwMEZDbGxlciBBQVYgdnMgTE5QICgyMDI0KSBbRW5nbGlzaF1cIiB3aWR0aD1cIjU2MFwiIGhlaWdodD1cIjMxNVwiIHNyYz1cImh0dHBzOi8vdmlkZW8uaWdlbS5vcmcvdmlkZW9zL2VtYmVkLzA2MTNiNmI4LTc3NTUtNDM3My05ZDg2LTk5MTBmZTMwNzgxZlwiIGZyYW1lQm9yZGVyPVwiMFwiIGFsbG93RnVsbFNjcmVlbj17dHJ1ZX0gc2FuZGJveD1cImFsbG93LXNhbWUtb3JpZ2luIGFsbG93LXNjcmlwdHMgYWxsb3ctcG9wdXBzIGFsbG93LWZvcm1zXCI+PC9pZnJhbWU+XHJcbiAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgPC9maWd1cmU+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPHA+PHN0cm9uZz5DbG9uaW5nIHN0cmF0ZWdpZXM6PC9zdHJvbmc+IFByb3ZpZGVkIGJvdGggYmFzaWMgYW5kIGFkdmFuY2VkIGNsb25pbmcgdHJhaW5pbmcsIGNydWNpYWwgZm9yIGRldmVsb3Bpbmcgb3VyIFByaW1lIEVkaXRpbmcgY29tcGxleCB3aXRoaW4gc3ludGhldGljIGJpb2xvZ3kuPC9wPlxyXG5cclxuPHA+PHN0cm9uZz5PcHRpbWl6YXRpb24gb2YgUHJpbWUgRWRpdGluZyBjb21wbGV4Ojwvc3Ryb25nPiBTdWdnZXN0ZWQgbWFraW5nIHRoZSBQcmltZSBFZGl0aW5nIGNvbXBsZXggc21hbGxlciBhbmQgbW9yZSBzdGFibGUsIGVuaGFuY2luZyBpdHMgc3VpdGFiaWxpdHkgZm9yIHRoZXJhcGV1dGljIGFwcGxpY2F0aW9ucy48L3A+XHJcblxyXG48cD48c3Ryb25nPk9uZ29pbmcgZmVlZGJhY2sgb24gc2FmZXR5Ojwvc3Ryb25nPiBBcyBhIGdlbmUgdGhlcmFweSBleHBlcnQsIFByb2YuIE1cdTAwRkNsbGVyIGdhdmUgY29udGludW91cyBmZWVkYmFjayBvbiB0aGUgc2FmZXR5IGFzcGVjdHMgb2Ygb3VyIHJlc2VhcmNoLjwvcD5cclxuXHJcbjxwPjxzdHJvbmc+QWNjZXNzIHRvIEJTTDIgbGFiOjwvc3Ryb25nPiBFbmFibGVkIHVzIHRvIHN1Y2Nlc3NmdWxseSBjdWx0aXZhdGUgcHJpbWFyeSBjZWxsIGN1bHR1cmVzIGluIGEgQlNMMiBsYWIsIHdpdGggdHJhaW5pbmcgaW4gYmlvc2FmZXR5IHByb2NlZHVyZXMuPC9wPlxyXG5cclxuPHA+PHN0cm9uZz5Db250YW1pbmF0aW9uIHRlc3Rpbmc6PC9zdHJvbmc+IFJlZ3VsYXJseSB0ZXN0ZWQgZm9yIEhQViwgSElWLCBIQlYsIGFuZCBNeWNvcGxhc21hIGNvbnRhbWluYXRpb24gdG8gZW5zdXJlIHNhZmUgd29ya2luZyBjb25kaXRpb25zLjwvcD5cclxuXHJcbjxwPjxzdHJvbmc+Q29udHJpYnV0aW9uIHRvIGlHRU0gcmVnaXN0cnk6PC9zdHJvbmc+IFdpdGggUHJvZi4gTVx1MDBGQ2xsZXIncyBndWlkYW5jZSwgd2UgZGV2ZWxvcGVkIGFuZCBjb250cmlidXRlZCB0aGUgUHJlQ3lzZSBjYXNzZXR0ZSwgYSBtb2R1bGFyIGFuZCBlZmZpY2llbnQgUHJpbWUgRWRpdGluZyBzeXN0ZW0sIGVuaGFuY2luZyBzdGFiaWxpdHkgYW5kIHNhZmV0eSBiYXNlZCBvbiBvdXIgZmluZGluZ3MuPC9wPlxyXG5cclxuICAgICA8L0NvbGxhcHNpYmxlPlxyXG4gICAgKSBcclxuIH1cclxuZnVuY3Rpb24gQW5hbHlzZVNyaXJhbSgpe1xyXG4gICAgcmV0dXJuKFxyXG4gICAgIDxDb2xsYXBzaWJsZSB0aXRsZT1cIkRyLiBTcmlyYW0gVmFpZHlhbmF0aGFuIFx1MjAxMyBFeHBlcnQgb24gUGVkaWF0cmljIG1lZGljaW5lIGFuZCBDRiBpbiBBc2lhXCIgaWQ9XCJzcmlyYW1hbmFseXNlQ1wiPlxyXG4gICAgICAgIDxwPkluIG91ciBkaXNjdXNzaW9ucyB3aXRoIERyLiBTcmlyYW0gVmFpZHlhbmF0aGFuLCB3ZSBkZWVwZW5lZCBvdXIgdW5kZXJzdGFuZGluZyBvZiB0aGUgZ2VuZXRpYyBkaXZlcnNpdHkgb2YgQ0YgbXV0YXRpb25zLCBlc3BlY2lhbGx5IGluIEFzaWFuIHBvcHVsYXRpb25zLiBIZSBoaWdobGlnaHRlZCB0aGF0IHdoaWxlIHRoZSBGNTA4ZGVsIG11dGF0aW9uIGlzIGNvbW1vbiB3b3JsZHdpZGUsIG1hbnkgcmFyZSBDRlRSIG11dGF0aW9ucyBjb21wbGljYXRlIGRpYWdub3NpcyBhbmQgdHJlYXRtZW50IGluIHNwZWNpZmljIHJlZ2lvbnMuPC9wPlxyXG4gICAgICAgIDxwPlRoaXMgaW5zaWdodCBwdXNoZWQgdXMgdG8gYWRhcHQgb3VyIGdlbmUgdGhlcmFweSBhcHByb2FjaCB0byBiZSBtb3JlIGluY2x1c2l2ZS4gV2UgYWRqdXN0ZWQgb3VyIHN0cmF0ZWd5IHRvIGVuc3VyZSBvdXIgdGhlcmFweSBjb3VsZCB0YXJnZXQgYSBicm9hZGVyIHJhbmdlIG9mIENGIG11dGF0aW9ucywgbWFraW5nIGl0IG1vcmUgZ2xvYmFsbHkgYXBwbGljYWJsZS4gRHIuIFZhaWR5YW5hdGhhblx1MjAxOXMgaW5wdXQgc2hhcGVkIG91ciBlZmZvcnRzIHRvIGNyZWF0ZSBhIHRyZWF0bWVudCB0aGF0IGFkZHJlc3NlcyBDRlx1MjAxOXMgZGl2ZXJzZSBnZW5ldGljIGxhbmRzY2FwZS4gPC9wPlxyXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZmlndXJlPlxyXG4gICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL3NyaXJhbS1pbnRlcnZpZXcud2VicFwiIGFsdD1cIlwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9maWd1cmU+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj4gXHJcbiAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8cD48c3Ryb25nPkNvbnRhbWluYXRpb24gY2hhbGxlbmdlOjwvc3Ryb25nPiBIZWxwZWQgdXMgYWRkcmVzcyBhIG1ham9yIGlzc3VlIHdpdGggZnVuZ2FsIGNvbnRhbWluYXRpb24gaW4gb3VyIENGIGNlbGwgY3VsdHVyZXMsIHdoaWNoIHdlcmUgdW5zdGFibGUgYW5kIHByb25lIHRvIGluZmVjdGlvbi48L3A+XHJcblxyXG48cD48c3Ryb25nPkFudGliaW90aWMgc29sdXRpb246PC9zdHJvbmc+IFJlY29tbWVuZGVkIGEgc3BlY2lmaWMgYW50aWJpb3RpYyBjb21wb3NpdGlvbiBlZmZlY3RpdmUgYWdhaW5zdCBmdW5nYWwgaW5mZWN0aW9ucy48L3A+XHJcblxyXG48cD48c3Ryb25nPlN1Y2Nlc3NmdWwgaW1wbGVtZW50YXRpb246PC9zdHJvbmc+IEFwcGxpZWQgdGhlIGFudGliaW90aWMgbWl4dHVyZSwgd2hpY2ggcmVzb2x2ZWQgdGhlIGNvbnRhbWluYXRpb24gcHJvYmxlbSwgYWxsb3dpbmcgdXMgdG8gbWFpbnRhaW4gc3RhYmxlIENGIGNlbGwgbGluZXMuPC9wPlxyXG5cclxuPHA+PHN0cm9uZz5Qcm9qZWN0IGFkdmFuY2VtZW50Ojwvc3Ryb25nPiBUaGlzIGJyZWFrdGhyb3VnaCBlbmFibGVkIHVzIHRvIHByb2NlZWQgd2l0aCB0ZXN0aW5nIG91ciBwcmltZSBlZGl0aW5nIGFwcHJvYWNoIGVmZmVjdGl2ZWx5LCBhZHZhbmNpbmcgb3VyIHByb2plY3QgdG8gdGhlIGZpbmFsIHN0YWdlcyBvZiBpbiB2aXRybyB0ZXN0aW5nLjwvcD5cclxuXHJcbjxwPjxzdHJvbmc+TmV4dCBzdGVwczo8L3N0cm9uZz4gVGhhbmtzIHRvIERyLiBCaGFydGlcdTIwMTlzIGluc2lnaHRzLCB3ZSBhcmUgbm93IHBvc2l0aW9uZWQgdG8gY29uc2lkZXIgcG90ZW50aWFsIGFuaW1hbCBzdHVkaWVzIGFzIHRoZSBuZXh0IHBoYXNlIG9mIG91ciByZXNlYXJjaC48L3A+XHJcblxyXG4gICAgIDwvQ29sbGFwc2libGU+XHJcbiAgICApIFxyXG4gfVxyXG5mdW5jdGlvbiBBbmFseXNlQmhhcnRpKCl7XHJcbiAgICByZXR1cm4oXHJcbiAgICAgPENvbGxhcHNpYmxlIHRpdGxlPVwiRHIuIE5pa2hpbCBCaGFydGkgXHUyMDEzIEV4cGVydCBpbiBQcmltYXJ5IGN1bHR1cmUgXCIgaWQ9XCJiaGFydGlhbmFseXNlQ1wiPlxyXG4gICAgICAgICA8cD5Eci4gTmlraGlsIEJoYXJ0aSdzIGV4cGVydGlzZSBoZWxwZWQgdXMgb3ZlcmNvbWUgYSBtYWpvciBjaGFsbGVuZ2Ugd2l0aCBvdXIgQ0YgY2VsbCBjdWx0dXJlcywgd2hpY2ggd2VyZSBjb25zaXN0ZW50bHkgYmVjb21pbmcgY29udGFtaW5hdGVkIHdpdGggZnVuZ2kgZHVlIHRvIHRoZWlyIGluc3RhYmlsaXR5LiBIZSByZWNvbW1lbmRlZCBhIHNwZWNpZmljIGFudGliaW90aWMgY29tcG9zaXRpb24gZWZmZWN0aXZlIGFnYWluc3QgZnVuZ2FsIGluZmVjdGlvbnMuIDwvcD5cclxuICAgICAgICA8cD5XZSBpbW1lZGlhdGVseSBhcHBsaWVkIHRoaXMgYW50aWJpb3RpYyBtaXh0dXJlIHRvIG91ciBjZWxsIGN1bHR1cmVzLCB3aGljaCByZXNvbHZlZCB0aGUgY29udGFtaW5hdGlvbiBpc3N1ZSBhbmQgYWxsb3dlZCB1cyB0byBtYWludGFpbiBzdGFibGUgQ0YgY2VsbCBsaW5lcy4gVGhpcyBicmVha3Rocm91Z2ggZW5hYmxlZCB1cyB0byBwcm9jZWVkIHdpdGggdGVzdGluZyBvdXIgcHJpbWUgZWRpdGluZyBhcHByb2FjaCBlZmZlY3RpdmVseS4gVGhhbmtzIHRvIERyLiBCaGFydGkncyBpbnNpZ2h0cywgd2UgYWR2YW5jZWQgb3VyIHByb2plY3QgdG8gYSBzdGFnZSB3aGVyZSB3ZSByZWFjaGVkIHRoZSBsaW1pdCBvZiBpbiB2aXRybyB0ZXN0aW5nLCBhbmQgdGhlIG5leHQgc3RlcCB3b3VsZCBiZSBwb3RlbnRpYWwgYW5pbWFsIHN0dWRpZXMuIDwvcD5cclxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvdyBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGZpZ3VyZT5cclxuICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9ocC9jZWxsLWN1bHR1cmUtbXVjb3Mud2VicFwiIGFsdD1cIlwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgPGZpZ2NhcHRpb24+RmlndXJlIDEuIFByaW1hcnkgY2VsbCBjdWx0dXJlIHdpdGhvdXQgYW50aWJpb3RpYyB0cmVhdG1lbnQuPC9maWdjYXB0aW9uPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZmlndXJlPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+IFxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZmlndXJlPlxyXG4gICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2NlbGwtY3VsdHVyZS1hZnRlci1hbnRpYmlvdGljLXRyZWF0bWVudC53ZWJwXCIgYWx0PVwiXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgIDxmaWdjYXB0aW9uPkZpZ3VyZSAyLiBQcmltYXJ5IGNlbGwgY3VsdHVyZSB3aXRoIGFudGliaW90aWMgdHJlYXRtZW50LjwvZmlnY2FwdGlvbj5cclxuICAgICAgICAgICAgICAgICAgICA8L2ZpZ3VyZT5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8cD48c3Ryb25nPkNvbnRhbWluYXRpb24gY2hhbGxlbmdlOjwvc3Ryb25nPiBIZWxwZWQgdXMgYWRkcmVzcyBhIG1ham9yIGlzc3VlIHdpdGggZnVuZ2FsIGNvbnRhbWluYXRpb24gaW4gb3VyIENGIGNlbGwgY3VsdHVyZXMsIHdoaWNoIHdlcmUgdW5zdGFibGUgYW5kIHByb25lIHRvIGluZmVjdGlvbi48L3A+XHJcblxyXG48cD48c3Ryb25nPkFudGliaW90aWMgc29sdXRpb246PC9zdHJvbmc+IFJlY29tbWVuZGVkIGEgc3BlY2lmaWMgYW50aWJpb3RpYyBjb21wb3NpdGlvbiBlZmZlY3RpdmUgYWdhaW5zdCBmdW5nYWwgaW5mZWN0aW9ucy48L3A+XHJcblxyXG48cD48c3Ryb25nPlN1Y2Nlc3NmdWwgaW1wbGVtZW50YXRpb246PC9zdHJvbmc+IEFwcGxpZWQgdGhlIGFudGliaW90aWMgbWl4dHVyZSwgd2hpY2ggcmVzb2x2ZWQgdGhlIGNvbnRhbWluYXRpb24gcHJvYmxlbSwgYWxsb3dpbmcgdXMgdG8gbWFpbnRhaW4gc3RhYmxlIENGIGNlbGwgbGluZXMuPC9wPlxyXG5cclxuPHA+PHN0cm9uZz5Qcm9qZWN0IGFkdmFuY2VtZW50Ojwvc3Ryb25nPiBUaGlzIGJyZWFrdGhyb3VnaCBlbmFibGVkIHVzIHRvIHByb2NlZWQgd2l0aCB0ZXN0aW5nIG91ciBwcmltZSBlZGl0aW5nIGFwcHJvYWNoIGVmZmVjdGl2ZWx5LCBhZHZhbmNpbmcgb3VyIHByb2plY3QgdG8gdGhlIGZpbmFsIHN0YWdlcyBvZiBpbiB2aXRybyB0ZXN0aW5nLjwvcD5cclxuXHJcbjxwPjxzdHJvbmc+TmV4dCBzdGVwczo8L3N0cm9uZz4gVGhhbmtzIHRvIERyLiBCaGFydGlcdTIwMTlzIGluc2lnaHRzLCB3ZSBhcmUgbm93IHBvc2l0aW9uZWQgdG8gY29uc2lkZXIgcG90ZW50aWFsIGFuaW1hbCBzdHVkaWVzIGFzIHRoZSBuZXh0IHBoYXNlIG9mIG91ciByZXNlYXJjaC48L3A+XHJcblxyXG4gICAgIDwvQ29sbGFwc2libGU+XHJcbiAgICApIFxyXG4gfVxyXG5mdW5jdGlvbiBBbmFseXNlSWduYXRvdmEoKXtcclxuICAgIHJldHVybihcclxuICAgICA8Q29sbGFwc2libGUgdGl0bGU9XCJQcm9mLiBEci4gSWduYXRvdmEgXHUyMDEzIENGIEV4cGVydCAmIFJlc2VhcmNoZXJcIiBpZD1cImlnbmF0b3ZhYW5hbHlzZUNcIj5cclxuICAgICAgICAgPHA+VGhyb3VnaCBvdXIgY29sbGFib3JhdGlvbiB3aXRoIDxhIGhyZWY9XCJodHRwczovLzIwMjQuaWdlbS53aWtpL2hhbWJ1cmcvXCIgdGl0bGU9XCJpR0VNIEhhbWJ1cmdcIiA+IGlHRU0gSGFtYnVyZzwvYT4sIHdlIHdlcmUgaW50cm9kdWNlZCB0byBQcm9mLiBJZ25hdG92YSwgYSBsZWFkaW5nIGV4cGVydCBpbiAgQ3lzdGljIEZpYnJvc2lzIChDRikgcmVzZWFyY2guIEluaXRpYWxseSwgd2UgY29uc3VsdGVkIGhlciB0byBnYWluIGEgZGVlcGVyIHVuZGVyc3RhbmRpbmcgb2YgQ0YuIExhdGVyLCB3aGVuIHRoZSBIRUsgY2VsbHMgZnJvbSBMZXV2ZW4gcHJvdmVkIHVuc3VpdGFibGUgZm9yIG91ciB0ZXN0cywgd2UgcmVhY2hlZCBvdXQgYWdhaW4gdG8gZXhwbG9yZSBhbHRlcm5hdGl2ZSBjZWxsIG1vZGVscy4gPC9wPlxyXG4gICAgICAgICA8cD5Qcm9mLiBJZ25hdG92YSBwcm92aWRlZCBhY2Nlc3MgdG8gdGhlIENGQkU0MW8tIGNlbGwgbGluZSwgaW1tb3J0YWxpemVkIENGIGNlbGxzIGRlcml2ZWQgZnJvbSBhIENGIHBhdGllbnQsIHdoaWNoIHdlIG9idGFpbmVkIHdpdGggcGVybWlzc2lvbiBmcm9tIFByb2YuIEthcmwgS3VuemVsbWFubiBhdCB0aGUgVW5pdmVyc2l0eSBvZiBSZWdlbnNidXJnLiBUaGlzIGNlbGwgbGluZSBvZmZlcmVkIHVzIGEgbmV3LCByZWxpYWJsZSB0ZXN0aW5nIHN5c3RlbSwgYW5kIHdlIHN1Y2Nlc3NmdWxseSBjdWx0aXZhdGVkIHRoZSBjZWxscyBpbiBvdXIgbGFiLCBhbHRob3VnaCB0aGV5IHJlcXVpcmVkIHNpZ25pZmljYW50IHRpbWUgdG8gYWNjbGltYXRlIGFuZCBncm93LiA8L3A+XHJcbiAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZmlndXJlPlxyXG4gICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2hwL3pveWEtMS53ZWJwXCIgYWx0PVwiXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICA8L2ZpZ3VyZT5cclxuICAgICAgICAgICAgICAgIDwvZGl2PiBcclxuICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG48cD48c3Ryb25nPkludHJvZHVjdGlvbiB0aHJvdWdoIGlHRU0gSGFtYnVyZzo8L3N0cm9uZz4gQ29sbGFib3JhdGVkIHdpdGggUHJvZi4gSWduYXRvdmEsIGEgbGVhZGluZyBleHBlcnQgaW4gQ0YgcmVzZWFyY2gsIHRvIGRlZXBlbiBvdXIgdW5kZXJzdGFuZGluZyBvZiB0aGUgZGlzZWFzZS48L3A+XHJcblxyXG48cD48c3Ryb25nPkFsdGVybmF0aXZlIGNlbGwgbW9kZWxzOjwvc3Ryb25nPiBBZnRlciBIRUsgY2VsbHMgZnJvbSBMZXV2ZW4gcHJvdmVkIHVuc3VpdGFibGUsIHdlIGNvbnN1bHRlZCBQcm9mLiBJZ25hdG92YSwgd2hvIHByb3ZpZGVkIGFjY2VzcyB0byB0aGUgQ0ZCRTQxby0gY2VsbCBsaW5lLCBpbW1vcnRhbGl6ZWQgQ0YgY2VsbHMgZnJvbSBhIHBhdGllbnQuPC9wPlxyXG5cclxuPHA+PHN0cm9uZz5DZWxsIGFjcXVpc2l0aW9uIGFuZCBjdWx0aXZhdGlvbjo8L3N0cm9uZz4gT2J0YWluZWQgdGhlIENGQkU0MW8tIGNlbGxzIHdpdGggcGVybWlzc2lvbiBmcm9tIFByb2YuIEthcmwgS3VuemVsbWFubiwgc3VjY2Vzc2Z1bGx5IGN1bHRpdmF0ZWQgdGhlbSBpbiBvdXIgbGFiLCB0aG91Z2ggdGhleSByZXF1aXJlZCBleHRlbmRlZCBhY2NsaW1hdGlvbi48L3A+XHJcblxyXG48cD48c3Ryb25nPkZ1dHVyZSB0ZXN0aW5nIHBsYW5zOjwvc3Ryb25nPiBQbGFuIHRvIHVzZSB0aGVzZSBjZWxscyBmb3IgcGF0Y2gtY2xhbXAgZXhwZXJpbWVudHMgdG8gdmFsaWRhdGUgb3VyIHByaW1lIGVkaXRpbmcgYXBwcm9hY2guPC9wPlxyXG5cclxuPHA+PHN0cm9uZz5Ccm9hZGVuZWQgcGVyc3BlY3RpdmUgb24gZ2VuZSB0aGVyYXB5Ojwvc3Ryb25nPiBEaXNjdXNzaW9ucyB3aXRoIFByb2YuIElnbmF0b3ZhIGludHJvZHVjZWQgdXMgdG8gYWx0ZXJuYXRpdmUgdGhlcmFwZXV0aWMgc3RyYXRlZ2llcywgc3VjaCBhcyByZWNvZGluZyB0Uk5BcywgZXhwYW5kaW5nIG91ciB1bmRlcnN0YW5kaW5nIG9mIHBvdGVudGlhbCB0cmVhdG1lbnRzIGZvciBDRi48L3A+XHJcblxyXG5cclxuICAgICA8L0NvbGxhcHNpYmxlPlxyXG4gICAgKSBcclxuIH1cclxuZnVuY3Rpb24gQW5hbHlzZVdpc2NobWV5ZXIoKXtcclxuICAgIHJldHVybihcclxuICAgICA8Q29sbGFwc2libGUgdGl0bGU9XCJQcm9mIERyLiBFYmVyaGFyZCBXaXNjaG1leWVyIC0gQWNhZGVtaWMgRXhwZXJ0IG9uIFBhdGNoLUNsYW1wIFRlY2huaXF1ZXNcIiBpZD1cIndpc2NobWV5ZXJhbmFseXNlQ1wiPlxyXG4gICAgICAgICA8cD5Qcm9mLiBEci4gRXJoYXJkIFdpc2NobWV5ZXIgcHJvdmlkZWQgY3JpdGljYWwgZ3VpZGFuY2Ugb24gdGhlIHBhdGNoLWNsYW1wIHRlY2huaXF1ZSBmb3IgbWVhc3VyaW5nIENGVFIgZnVuY3Rpb25hbGl0eS4gSGlzIGV4cGVydGlzZSwgYWxvbmdzaWRlIHRoZSBoYW5kcy1vbiBzdXBwb3J0IG9mIERyLiBPbGl2ZXIgRHJcdTAwRTRnZXIgZnJvbSBoaXMgbGFiLCBoZWxwZWQgdXMgb3B0aW1pemUgdGhlIHBhdGNoLWNsYW1wIGV4cGVyaW1lbnRzIHVzaW5nIEhFSyBjZWxscyBwcm92aWRlZCBieSBVbmkgTGV1dmVuLiBUb2dldGhlciwgd2UgY29uZHVjdGVkIGVsZWN0cm9waHlzaW9sb2dpY2FsIG1lYXN1cmVtZW50cyB0byBjaGFyYWN0ZXJpemUgdGhlIGZ1bmN0aW9uYWxpdHkgb2YgQ0ZUUiBtdXRhdGlvbnMsIHNwZWNpZmljYWxseSBjb21wYXJpbmcgdGhlIGRlbHRhIDUwOCBDRlRSIG11dGFudCB3aXRoIG92ZXJleHByZXNzZWQgaGVhbHRoeSBDRlRSIGNlbGxzLiA8L3A+XHJcbiAgICAgICAgIDxwPlRoZSBleHBlcmltZW50cyBzaG93ZWQgc2lnbmlmaWNhbnQgZGlmZmVyZW5jZXMgYmV0d2VlbiBDRlRSLWRlZmljaWVudCBjZWxscyBhbmQgaGVhbHRoeSBjb250cm9scywgYnV0IHdlIGJlZ2FuIHF1ZXN0aW9uaW5nIHRoZSBzdWl0YWJpbGl0eSBvZiB0aGUgZGVsdGEgNTA4IG92ZXJleHByZXNzaW9uIGNlbGxzIGFzIGEgZnVuY3Rpb25hbCB0ZXN0IHN5c3RlbS4gQWZ0ZXIgYWRqdXN0aW5nIHRoZSBjdWx0dXJlIGNvbmRpdGlvbnMgaW4gY29uc3VsdGF0aW9uIHdpdGggTGV1dmVuLCB3ZSByZXBlYXRlZCB0aGUgbWVhc3VyZW1lbnRzIGJ1dCBzdGlsbCBmb3VuZCBubyBtZWFuaW5nZnVsIGRpZmZlcmVuY2VzLiA8L3A+XHJcbiAgICAgICAgIDxwPlVsdGltYXRlbHksIHRoZSBmZWVkYmFjayBjeWNsZSB3aXRoIGJvdGggTGV1dmVuIGFuZCBXaXNjaG1leWVyJ3MgbGFiIGNvbmZpcm1lZCB0aGF0IHBhdGNoLWNsYW1wIHdhcyBpbnN1ZmZpY2llbnQgZm9yIG91ciBwdXJwb3NlcywgbGVhZGluZyB1cyB0byBjb25zaWRlciBVc3NpbmcgY2hhbWJlciBtZWFzdXJlbWVudHMgYXMgYSBtb3JlIHN1aXRhYmxlIG1ldGhvZCBmb3IgYXNzZXNzaW5nIENGVFIgZnVuY3Rpb24uIDwvcD5cclxuICAgICAgICAgXHJcbiAgICAgICAgPHA+PHN0cm9uZz5QYXRjaC1jbGFtcCB0ZWNobmlxdWUgZ3VpZGFuY2U6PC9zdHJvbmc+IFByb3ZpZGVkIGNyaXRpY2FsIGd1aWRhbmNlIG9uIHVzaW5nIHRoZSBwYXRjaC1jbGFtcCB0ZWNobmlxdWUgdG8gbWVhc3VyZSBDRlRSIGZ1bmN0aW9uYWxpdHksIG9wdGltaXppbmcgb3VyIGV4cGVyaW1lbnRzLjwvcD5cclxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvdyBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGZpZ3VyZT5cclxuICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9ocC9wYXRjaC1jbGFtcC53ZWJwIFwiIGFsdD1cIlwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgPGZpZ2NhcHRpb24+RmlndXJlLiBQYXRjaC1jbGFtcCBtZWFzdXJlbWVudC48L2ZpZ2NhcHRpb24+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9maWd1cmU+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj4gXHJcbiAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuXHJcbjxwPjxzdHJvbmc+U3VwcG9ydCBmcm9tIERyLiBPbGl2ZXIgRHJcdTAwRTRnZXI6PC9zdHJvbmc+IEhhbmRzLW9uIHN1cHBvcnQgZnJvbSBEci4gRHJcdTAwRTRnZXIgaGVscGVkIHVzIHBlcmZvcm0gcGF0Y2gtY2xhbXAgZXhwZXJpbWVudHMgdXNpbmcgSEVLIGNlbGxzIHByb3ZpZGVkIGJ5IFVuaSBMZXV2ZW4uPC9wPlxyXG5cclxuPHA+PHN0cm9uZz5DRlRSIGZ1bmN0aW9uYWxpdHkgYXNzZXNzbWVudDo8L3N0cm9uZz4gQ29uZHVjdGVkIGVsZWN0cm9waHlzaW9sb2dpY2FsIG1lYXN1cmVtZW50cyB0byBjb21wYXJlIGRlbHRhIDUwOCBDRlRSIG11dGFudHMgd2l0aCBvdmVyZXhwcmVzc2VkIGhlYWx0aHkgQ0ZUUiBjZWxscywgcmV2ZWFsaW5nIHNpZ25pZmljYW50IGRpZmZlcmVuY2VzIGJldHdlZW4gQ0ZUUi1kZWZpY2llbnQgY2VsbHMgYW5kIGhlYWx0aHkgY29udHJvbHMuPC9wPlxyXG5cclxuPHA+PHN0cm9uZz5TdWl0YWJpbGl0eSBjb25jZXJuczo8L3N0cm9uZz4gRGVzcGl0ZSBhZGp1c3RtZW50cyB0byBjdWx0dXJlIGNvbmRpdGlvbnMsIHJlcGVhdGVkIG1lYXN1cmVtZW50cyByYWlzZWQgZG91YnRzIGFib3V0IHRoZSBkZWx0YSA1MDggb3ZlcmV4cHJlc3Npb24gY2VsbHMgYXMgYSBmdW5jdGlvbmFsIHRlc3Qgc3lzdGVtLjwvcD5cclxuXHJcbjxwPjxzdHJvbmc+RmVlZGJhY2sgY3ljbGUgd2l0aCBMZXV2ZW4gYW5kIFdpc2NobWV5ZXI6PC9zdHJvbmc+IENvbmZpcm1lZCB0aGF0IHBhdGNoLWNsYW1wIHdhcyBub3Qgc3VpdGFibGUgZm9yIG91ciBuZWVkcywgcHJvbXB0aW5nIHVzIHRvIGV4cGxvcmUgVXNzaW5nIGNoYW1iZXIgbWVhc3VyZW1lbnRzIGFzIGEgbW9yZSBhcHByb3ByaWF0ZSBtZXRob2QgZm9yIGFzc2Vzc2luZyBDRlRSIGZ1bmN0aW9uLjwvcD5cclxuXHJcbiAgICAgPC9Db2xsYXBzaWJsZT5cclxuICAgICkgXHJcbiB9XHJcbmZ1bmN0aW9uIEFuYWx5c2VNYXR0aWpzKCl7XHJcbiAgICBjb25zdCB7Z29Ub1BhZ2VzQW5kT3BlblRhYn0gPSB1c2VOYXZpZ2F0aW9uKCk7IFxyXG4gICAgY29uc3Qge2dvVG9QYWdlQW5kU2Nyb2xsfSA9IHVzZU5hdmlnYXRpb24oKTtcclxuICAgIHJldHVybihcclxuICAgICA8Q29sbGFwc2libGUgdGl0bGU9XCJNYXR0amlzIEJ1bGNhZW4gXHUyMDEzIFVuaXZlcnNpdHkgb2YgTGV1dmVuLCBDRiBhbmQgUHJpbWUgRWRpdGluZyBFeHBlcnRcIiBpZD1cIm1hdHRpanNhbmFseXNlQ1wiPlxyXG4gICAgICAgIDxwPk1hdHRpanMgQnVsY2FlbiwgYmVpbmcgYSByZXNlYXJjaGVyIHdvcmtpbmcgb24gYSB0b3BpYyB2ZXJ5IGNsb3NlIHRvIG91cnMsIHByb3ZpZGVkIGludmFsdWFibGUgZ3VpZGFuY2UgaW4gdGhlIGVhcmx5IHN0YWdlcyBvZiBvdXIgcHJvamVjdC4gSGUgZ2F2ZSB1cyBhbiBpbnNpZ2h0IGludG8gdGhlIGN1cnJlbnQgYWR2YW5jZXMgaW4gdGhlIGZpZWxkIHRoYXQgd2UgdGhhdCB3ZSB3ZXJlIGFibGUgdG8gbWFrZSB1c2Ugb2YgbGF0ZXIgb24uIEhlIHJldmlld2VkIHdpdGggdXMgb3VyIG93biBpZGVhcyBhbmQgY29uc2lkZXJhdGlvbnMsIHN1Y2ggYXMgdGhlIHVzZSBvZiB0aGUgUEVBUiByZXBvcnRlciBzeXN0ZW0uIEZvbGxvd2luZyBvdXIgaW50ZXJ2aWV3IHdpdGggTWF0dGlqcyB3ZSBpbnRlZ3JhdGVkIHRoZSBzdHJ1Y3R1cmFsIG1vdGlmIHRyZXZvcHJlUTEgaW50byB0aGUgcGVnUk5BLCB3aGljaCBlbmhhbmNlZCB0aGUgcHJpbWUgZWRpdGluZyBlZmZpY2llbmN5IC0gYSBjcml0aWNhbCBpbXByb3ZlbWVudCB3ZSBzdWNjZXNzZnVsbHkgdGVzdGVkIGFuZCBkZW1vbnN0cmF0ZWQgaW4gb3VyIHJlc3VsdHMuICA8L3A+XHJcbiAgICAgICAgIDxwPk91ciBkZWNpc2lvbiBvZiBmaXJzdCB0ZXN0aW5nIHByaW1lIGVkaXRpbmcgaW4gSEVLMjkzIGNlbGxzIGluc3RlYWQgb2Ygb3RoZXIgY2VsbCBsaW5lcyBvciBwcmltYXJ5IGNlbGxzIHdhcyBhbHNvIGJhc2VkIG9uIGhpcyBzdGF0ZW1lbnQgdGhhdCBIRUsgY2VsbHMgYXJlIGJ5IGZhciB0aGUgZWFzaWVzdCB0byBhcmNoaWV2ZSBlZGl0aW5nIGluLiBNYXR0aWpzIGFkZGl0aW9uYWxseSByZWNvbW1lbmRlZCB0aGUgdXNlIG9mIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlQW5kU2Nyb2xsICgnQ2VsbCBDdWx0dXJlJywgJy9tYXRlcmlhbHMtbWV0aG9kcycpfT4gSEVLMjkzVCBjZWxsIGxpbmVzIDwvYT4gb3ZlcmV4cHJlc3NpbmcgQ0ZUUiBhbmQgQ0ZUUiBGNTA4ZGVsLiBIb3dldmVyLCBhZnRlciBjb25kdWN0aW5nIHBhdGNoIGNsYW1wIG1lYXN1cmVtZW50cywgd2UgZm91bmQgdGhhdCB0aGUgSEVLIGNlbGxzIHdlcmUgdW5zdWl0YWJsZSBmb3Igb3VyIG5lZWRzLCByZXF1aXJpbmcgdXMgdG8gYWRqdXN0IG91ciB0ZXN0aW5nIHN5c3RlbS4gQXMgYSByZXN1bHQsIHdlIHN3aXRjaGVkIHRvIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlc0FuZE9wZW5UYWIoJ2lnbmF0b3ZhJywgJy9odW1hbi1wcmFjdGljZXMnKX0+SWduYXRvdmEnczwvYT4gY2VsbHMgZnJvbSBIYW1idXJnIGZvciBmdXJ0aGVyIGV4cGVyaW1lbnRzLiA8L3A+XHJcbiAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZmlndXJlPlxyXG4gICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2hwL21hdHRpanMuanBnXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgIDwvZmlndXJlPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+IFxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZmlndXJlPlxyXG4gICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2ZhY3MtcmVzdWx0cy1tZWNoYW5pc20vYmlsZDkucG5nXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgIDxmaWdjYXB0aW9uPkZpZ3VyZS4gVmFsaWRhdGlvbiBvZiBkaWZmZXJlbnQgcGVnUk5BcyBlZmZpY2llbmN5IHZpYSBQYXRjaCBDbGFtcCB2aWEgRkFDUyBhbmFseXNpcy4gUG9ydGlvbiBvZiBMaXZpbmcgZmx1b3Jlc2NlbnQgY2VsbHMgYWdhaW5zdCBpbnRlcm5hbCBjb250cm9sLCBzdWdnZXN0aW5nIGhpZ2ggZWZmaWNpZW50IHBlZ1JOQXMuXHJcbiAgICAgICAgICAgICAgICAgICAgPC9maWdjYXB0aW9uPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZmlndXJlPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuPHA+PHN0cm9uZz5Db25zdWx0YXRpb24gYmVjYXVzZSBvZiB0ZXN0IHN5c3RlbTo8L3N0cm9uZz4gSEVLIGNlbGxzIHdpdGggY29ycmVzcG9uZGluZyBDRlRSIG11dGF0aW9uIGRlcml2ZWQgZnJvbSBMZXV2ZW4gd2VyZSBzdWNjZXNzZnVsbHkgY3VsdHVyZWQgaW4gb3VyIGxhYiBmb3IgdGVzdGluZyBwdXJwb3Nlcy48L3A+XHJcblxyXG48cD48c3Ryb25nPlVuZGVyc3RhbmRpbmcgdGVzdCBjZWxsIGxpbmVzOjwvc3Ryb25nPiBFeHBsYWluZWQgdGhlIHN5c3RlbSBiZWhpbmQgdGhlIHRlc3QgY2VsbCBsaW5lcywgZW5hYmxpbmcgdXMgdG8gYWRhcHQgcGVnUk5BIGVuZ2luZWVyaW5nIGZvciBvdXIgUHJpbWUgRWRpdGluZyBjb21wbGV4LjwvcD5cclxuXHJcbjxwPjxzdHJvbmc+SW50ZWdyYXRpb24gb2YgVGV2b1ByZVExOjwvc3Ryb25nPiBIZWxwZWQgdXMgaW5jb3Jwb3JhdGUgdGhlIHN0cnVjdHVyYWwgbW90aWYgVGV2b1ByZVExIGludG8gdGhlIHBlZ1JOQSwgc2lnbmlmaWNhbnRseSBlbmhhbmNpbmcgdGhlIGVmZmljaWVuY3kgb2YgdGhlIFByaW1lIEVkaXRvci48L3A+XHJcblxyXG48cD48c3Ryb25nPkNyaXRpY2FsIGltcHJvdmVtZW50Ojwvc3Ryb25nPiBUaGlzIGVuaGFuY2VtZW50IHdhcyBzdWNjZXNzZnVsbHkgdGVzdGVkIGFuZCBkZW1vbnN0cmF0ZWQgaW4gb3VyIHJlc3VsdHMsIG1hcmtpbmcgYSBtYWpvciBhZHZhbmNlbWVudCBpbiBvdXIgcHJvamVjdC48L3A+XHJcblxyXG48cD48c3Ryb25nPlN3aXRjaGluZyB0ZXN0aW5nIHN5c3RlbXM6IDwvc3Ryb25nPkFmdGVyIHBhdGNoIGNsYW1wIG1lYXN1cmVtZW50cyByZXZlYWxlZCB0aGF0IEhFSyBjZWxscyB3ZXJlIHVuc3VpdGFibGUgZm9yIGZ1cnRoZXIgZXhwZXJpbWVudHMsIHdlIGFkanVzdGVkIG91ciBzeXN0ZW0gYW5kIHN3aXRjaGVkIHRvIElnbmF0b3ZhIGNlbGxzIGZyb20gSGFtYnVyZyBmb3IgY29udGludWVkIHRlc3RpbmcuPC9wPlxyXG5cclxuICAgIFxyXG4gICAgIDwvQ29sbGFwc2libGU+XHJcbiAgICApIFxyXG4gfVxyXG5mdW5jdGlvbiBBbmFseXNlTWljaGFlbGEoKXtcclxuICAgIHJldHVybihcclxuICAgICA8Q29sbGFwc2libGUgdGl0bGU9XCJEci4gTWljaGFlbGEgQmllbmVydCBcdTIwMTMgU2NpZW50aWZpYyBTYWxlcyBSZXByZXNlbnRhdGl2ZSBhdCBTdGVtY2VsbCBUZWNobm9sb2dpZXNcIiBpZD1cIm1pY2hhZWxhYW5hbHlzZUNcIj5cclxuICAgICAgICA8cD5UaHJvdWdoIGhhbmRzLW9uIGV4cGVyaWVuY2Ugd2l0aCBNaWNoYWVsYSBCaWVuZXJ0IGFuZCBKdWxpZSBXYXRzb24sIHdlIGdhaW5lZCB2YWx1YWJsZSBpbnNpZ2h0cyBpbnRvIHRoZSBjdWx0aXZhdGlvbiBtZXRob2RzIG9mIEFpci1MaXF1aWQgSW50ZXJmYWNlIChBTEkpIGFuZCBhcGljYWwtb3V0IG9yZ2Fub2lkcy4gV2UgZXZhbHVhdGVkIHRoZSBhZHZhbnRhZ2VzIGFuZCBsaW1pdGF0aW9ucyBvZiBkaWZmZXJlbnQgY3VsdHVyaW5nIHRlY2huaXF1ZXMsIHdoaWNoIGVuYWJsZWQgdXMgdG8gbWFrZSBpbmZvcm1lZCBkZWNpc2lvbnMgYWJvdXQgdGhlaXIgaW1wbGVtZW50YXRpb24gaW4gb3VyIHJlc2VhcmNoLiBXaXRoIHRoZSBwcm90b2NvbHMgYW5kIHJlc291cmNlcyBwcm92aWRlZCwgd2Ugc3VjY2Vzc2Z1bGx5IGdlbmVyYXRlZCBBTEkgY3VsdHVyZXMgYW5kIG9yZ2Fub2lkcyBmcm9tIHByaW1hcnkgY2VsbHMgb2YgQ0YgcGF0aWVudHMgYW5kIGhlYWx0aHkgY29udHJvbCBkb25vcnMsIHdoaWNoIHdlIHdlcmUgYWJsZSB0byB0ZXN0IHRocm91Z2hvdXQgdGhlIGNvdXJzZSBvZiBvdXIgcHJvamVjdC4gPC9wPlxyXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZmlndXJlPlxyXG4gICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvc2NpZW50aWZpYy1maWd1cmVzL3ByaW1hcnktY3VsdHVyZXMud2VicCBcIiBhbHQ9XCJcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZmlndXJlPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+IFxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wgZ2lmLXdyYXBwZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZmlndXJlPlxyXG4gICAgICAgICAgICAgICAgICAgIDxpZnJhbWUgdGl0bGU9XCJBcGljYWwgT3V0IE9yZ2Fub2lkcyB2cy4gQWlyIExpcXVpZCBDdWx0dXJlXCIgd2lkdGg9XCI1NjBcIiBoZWlnaHQ9XCIzMTVcIiBzcmM9XCJodHRwczovL3ZpZGVvLmlnZW0ub3JnL3ZpZGVvcy9lbWJlZC8yN2JhNmRhYi1hYzUyLTQyNTktOWEwZS0xNTNjOWU2MjY4MDQ/bG9vcD0xJmFtcDthdXRvcGxheT0xJmFtcDttdXRlZD0xJmFtcDt0aXRsZT0wXCIgZnJhbWVCb3JkZXI9XCIwXCIgYWxsb3dGdWxsU2NyZWVuPXt0cnVlfSBzYW5kYm94PVwiYWxsb3ctc2FtZS1vcmlnaW4gYWxsb3ctc2NyaXB0cyBhbGxvdy1wb3B1cHMgYWxsb3ctZm9ybXNcIj48L2lmcmFtZT5cclxuICAgICAgICAgICAgICAgICAgICA8L2ZpZ3VyZT5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8cD48c3Ryb25nPkhhbmRzLW9uIGV4cGVyaWVuY2U6PC9zdHJvbmc+IEdhaW5lZCBwcmFjdGljYWwgaW5zaWdodHMgZnJvbSBNaWNoYWVsYSBCaWVuZXJ0IGFuZCBKdWxpZSBXYXRzb24gaW50byB0aGUgY3VsdGl2YXRpb24gbWV0aG9kcyBmb3IgQWlyLUxpcXVpZCBJbnRlcmZhY2UgKEFMSSkgYW5kIGFwaWNhbC1vdXQgb3JnYW5vaWRzLjwvcD5cclxuXHJcbjxwPjxzdHJvbmc+RXZhbHVhdGlvbiBvZiBjdWx0dXJpbmcgdGVjaG5pcXVlczo8L3N0cm9uZz4gQXNzZXNzZWQgdGhlIGFkdmFudGFnZXMgYW5kIGxpbWl0YXRpb25zIG9mIGRpZmZlcmVudCBjdWx0aXZhdGlvbiB0ZWNobmlxdWVzLCBhbGxvd2luZyB1cyB0byBtYWtlIGluZm9ybWVkIGRlY2lzaW9ucyBhYm91dCB3aGljaCBtZXRob2RzIHRvIHVzZSBpbiBvdXIgcmVzZWFyY2guPC9wPlxyXG5cclxuPHA+PHN0cm9uZz5TdWNjZXNzZnVsIGdlbmVyYXRpb24gb2YgY3VsdHVyZXM6PC9zdHJvbmc+IFVzaW5nIHRoZSBwcm90b2NvbHMgYW5kIHJlc291cmNlcyBwcm92aWRlZCwgd2Ugc3VjY2Vzc2Z1bGx5IGdlbmVyYXRlZCBBTEkgY3VsdHVyZXMgYW5kIG9yZ2Fub2lkcyBmcm9tIHByaW1hcnkgY2VsbHMgb2YgQ0YgcGF0aWVudHMgYW5kIGhlYWx0aHkgY29udHJvbCBkb25vcnMuPC9wPlxyXG5cclxuPHA+PHN0cm9uZz5UZXN0aW5nIGFuZCBleHBlcmltZW50YXRpb246PC9zdHJvbmc+IFRoZXNlIGN1bHR1cmVzIGFuZCBvcmdhbm9pZHMgd2VyZSB0ZXN0ZWQgdGhyb3VnaG91dCB0aGUgcHJvamVjdCwgY29udHJpYnV0aW5nIHNpZ25pZmljYW50bHkgdG8gb3VyIHJlc2VhcmNoIG91dGNvbWVzLjwvcD5cclxuXHJcbiAgICAgICAgIFxyXG4gICAgIDwvQ29sbGFwc2libGU+XHJcbiAgICApIFxyXG4gfVxyXG5mdW5jdGlvbiBBbmFseXNlQmVyZW5zKCl7XHJcbiAgICBjb25zdCB7Z29Ub1BhZ2VzQW5kT3BlblRhYn0gPSB1c2VOYXZpZ2F0aW9uKCk7IFxyXG4gICAgcmV0dXJuKFxyXG4gICAgIDxDb2xsYXBzaWJsZSB0aXRsZT1cIkRyLiBFdmEtTWFyaWEgQmVyZW5zIFx1MjAxMyBIZWFkIG9mIGV0aGljcyBjb21taXR0ZWUgYXQgVW5pdmVyc2l0eSBvZiBCaWVsZWZlbGRcIiBpZD1cImJlcmVuc2FuYWx5c2VDXCI+XHJcbiAgICAgICAgPHA+SW4gb3VyIHB1cnN1aXQgb2YgZ2VuZXJhdGluZyBwcmltYXJ5IGN1bHR1cmVzIGZyb20gaHVtYW4gbmFzYWwgZXBpdGhlbGlhbCBjZWxscyBmb3IgdGVzdGluZywgd2Ugc291Z2h0IGFkdmljZSBmcm9tIHRoZSBCaW9zYWZldHkgYW5kIFNlY3VyaXR5IENvbW1pdHRlZSBvZiBpR0VNLCBhcyB3ZWxsIGFzIGNvbnN1bHQgd2l0aCBEci4gRXZhLU1hcmlhIEJlcmVucywgb3VyIGV0aGljcyBvZmZpY2VyLiBUaHJvdWdoIGluLWRlcHRoIGRpc2N1c3Npb25zIHdpdGggRHIuIEJlcmVucywgd2UgY2FyZWZ1bGx5IGFzc2Vzc2VkIHRoZSByaXNrcyBhbmQgbGVnYWwgb2JsaWdhdGlvbnMgYXNzb2NpYXRlZCB3aXRoIG91ciBwcm9qZWN0LiBXZSBsZWFybmVkIHRoYXQsIGdpdmVuIHRoZSBtaW5pbWFsIGludmFzaXZlbmVzcyBvZiB0aGUgcHJvY2VkdXJlLCBubyBmb3JtYWwgYmlvZXRoaWNzIGFwcGxpY2F0aW9uIHdhcyBuZWNlc3NhcnkuIEhvd2V2ZXIsIHdlIHJlY29nbml6ZWQgdGhlIGltcG9ydGFuY2Ugb2YgZGV2ZWxvcGluZyBhIGxlZ2FsbHkgc291bmQgaW5mb3JtZWQgY29uc2VudCBmb3JtIGZvciBwYXJ0aWNpcGFudHMsIGVuc3VyaW5nIHRoYXQgd2UgYWRoZXJlZCB0byB0aGUgcmVsZXZhbnQgbGVnYWwgZnJhbWV3b3Jrcy4gPC9wPlxyXG4gICAgICAgICA8cD5JbiBjb2xsYWJvcmF0aW9uIHdpdGggdmFyaW91cyBsZWdhbCBpbnN0aXR1dGlvbnMsIHdlIGRyYWZ0ZWQgYSBjb21wcmVoZW5zaXZlIGluZm9ybWVkIGNvbnNlbnQgZm9ybSB0aGF0IGNvbXBsaWVzIHdpdGggYm90aCBuYXRpb25hbCByZWd1bGF0aW9ucyBpbiBHZXJtYW55IGFuZCB0aGUgc3BlY2lmaWMgcG9saWNpZXMgb2YgQmllbGVmZWxkIFVuaXZlcnNpdHkuIEFzIHRoZSBmaXJzdCBpR0VNIHRlYW0gdG8gdGFja2xlIHRoZSBjb21wbGV4IGN1bHRpdmF0aW9uIG9mIGh1bWFuIHByaW1hcnkgbmFzYWwgZXBpdGhlbGlhbCBjZWxscywgd2Ugd2VyZSBjb21taXR0ZWQgdG8gcGF2aW5nIHRoZSB3YXkgZm9yIGZ1dHVyZSB0ZWFtcy4gVG8gc3VwcG9ydCB0aGlzLCB3ZSBjcmVhdGVkIGEgZ3VpZGVsaW5lIGRvY3VtZW50aW5nIHRoZSBwcm9wZXIgaGFuZGxpbmcgb2YgaHVtYW4gYmlvbWF0ZXJpYWwgb2J0YWluZWQgdGhyb3VnaCB0aGVzZSB0eXBlcyBvZiBzYW1wbGUgY29sbGVjdGlvbi4gPC9wPlxyXG4gICAgICAgICA8cD5BZGRpdGlvbmFsbHksIHdlIHdvcmtlZCB3aXRoXHUyMDJGTXIuIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlc0FuZE9wZW5UYWIoJ3RpbW0nLCAnL2h1bWFuLXByYWN0aWNlcycpfT4gVGltbSBXZWJlciA8L2E+ICwgd2hvIGlzIHdvcmtpbmcgZm9yIHRoZSBsb2NhbCBiaW9iYW5rIE9XTCwgdG8gZXN0YWJsaXNoICBwcm90b2NvbHMgZm9yIHRoZSBtYW5hZ2VtZW50IGFuZCBzdG9yYWdlIG9mIHNlbnNpdGl2ZSwgcGVyc29uYWxseSBpZGVudGlmaWFibGUgZGF0YS4gV2hpbGUgbm8gc3BlY2lhbCBwcm9jZWR1cmVzIHdlcmUgcmVxdWlyZWQgZm9yIG91ciBzcGVjaWZpYyBwcm9qZWN0LCB3ZSBub25ldGhlbGVzcyBtYWRlIGl0IGEgcHJpb3JpdHkgdG8gaW1wbGVtZW50IGFub255bWl6ZWQgbWV0aG9kcyB0byBwcm90ZWN0IHBhcnRpY2lwYW50IHByaXZhY3kuIDwvcD5cclxuICAgICAgICA8cD5UaGUgaW5wdXQgYW5kIGZlZWRiYWNrIGZyb20gRHIuIEJlcmVucyBhbmQgTXIuIFdlYmVyIGZvcm1lZCB0aGUgYmFzaXMgb2Ygb3VyIGV0aGljYWwgY29uc2lkZXJhdGlvbiBvZiBvdXIgcHJvamVjdC4gV2l0aCB0aGVpciBoZWxwLCB3ZSB3ZXJlIGFibGUgdG8gaW1wcm92ZSBvdXIgdGVjaG5vbG9neSBvbiBwcmltYXJ5IGN1bHR1cmVzIHdpdGggYSBoaWdoZXIgbGV2ZWwgb2Ygc2FmZXR5IGFuZCBhbiBhZGFwdGVkIGd1aWRsaW5lLiBJbiBhZGRpdGlvbiwgb3VyIGJpb3NhZmV0eSBjb250cmlidXRpb25zIHdlcmUgc2lnbmlmaWNhbnRseSBpbXByb3ZlZCBhcyB3ZSB3ZXJlIGFibGUgdG8gZW5zdXJlIGNvbXBsaWFuY2Ugd2l0aCBhbGwgbGVnYWwgYW5kIGV0aGljYWwgc3RhbmRhcmRzLi4gPC9wPlxyXG4gICAgICAgIDxwPkhhdmluZyBlc3RhYmxpc2hlZCB0aGUgbmVjZXNzYXJ5IGV0aGljYWwgYW5kIGxlZ2FsIGdyb3VuZHdvcmssIHdlIHR1cm5lZCBvdXIgZm9jdXMgdG8gdGhlIHByYWN0aWNhbCBhc3BlY3RzIG9mIGhhbmRsaW5nIGFuZCBjdWx0aXZhdGluZyBwYXRpZW50IHNhbXBsZXMuIFRoaXMgcmVxdWlyZWQgc3BlY2lhbGl6ZWQgZXhwZXJ0aXNlLCB3aGljaCBsZWQgdXMgdG8gc2VlayBhc3Npc3RhbmNlIGZyb20gPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VzQW5kT3BlblRhYignbWljaGFlbGEnLCAnL2h1bWFuLXByYWN0aWNlcycpfT5TdGVtY2VsbCBUZWNobm9sb2dpZXM8L2E+IGVuc3VyZSB0aGUgc3VjY2Vzc2Z1bCBjdWx0aXZhdGlvbiBhbmQgbWFpbnRlbmFuY2Ugb2YgdGhlIG5hc2FsIGVwaXRoZWxpYWwgY2VsbHMuIFRoZWlyIHN1cHBvcnQgd2FzIGVzc2VudGlhbCBpbiBlbmFibGluZyB1cyB0byBwdXNoIGZvcndhcmQgd2l0aCBvdXIgdGVzdGluZyBhbmQgYnJpbmcgb3VyIHByb2plY3QgY2xvc2VyIHRvIHJlYWwtd29ybGQgYXBwbGljYXRpb25zLiA8L3A+XHJcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3cgYWxpZ24taXRlbXMtY2VudGVyXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxmaWd1cmU+XHJcbiAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9pbnRlZ3JhdGVkLWh1bWFuLXByYWN0aWNlcy9pbnRlcnZpZXctYmVyZW5zLndlYnBcIiBzdHlsZT17e2hlaWdodDpcIjkwJVwiLCB3aWR0aDpcImF1dG9cIn19IC8+XHJcbiAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgPC9maWd1cmU+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj4gXHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxmaWd1cmU+XHJcbiAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9pbnRlZ3JhdGVkLWh1bWFuLXByYWN0aWNlcy9kZWNrYmxhdHQtc2FmZXR5LWd1aWRlbGluZS53ZWJwXCIgc3R5bGU9e3toZWlnaHQ6XCI5MCVcIiwgd2lkdGg6XCJhdXRvXCJ9fS8+XHJcbiAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgPC9maWd1cmU+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGZpZ3VyZT5cclxuICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9ocC9iZW5jaC1waXBldHRpZXJlbi53ZWJwXCIgYWx0PVwiXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgIDwvZmlndXJlPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxwPjxzdHJvbmc+RXRoaWNhbCBjb25zdWx0YXRpb246PC9zdHJvbmc+IENvbnN1bHRlZCB3aXRoIERyLiBFdmEtTWFyaWEgQmVyZW5zLCBvdXIgZXRoaWNzIG9mZmljZXIsIHRvIGFzc2VzcyB0aGUgcmlza3MgYW5kIGxlZ2FsIG9ibGlnYXRpb25zIG9mIGdlbmVyYXRpbmcgcHJpbWFyeSBjdWx0dXJlcyBmcm9tIGh1bWFuIG5hc2FsIGVwaXRoZWxpYWwgY2VsbHMuIEl0IHdhcyBkZXRlcm1pbmVkIHRoYXQgbm8gZm9ybWFsIGJpb2V0aGljcyBhcHBsaWNhdGlvbiB3YXMgcmVxdWlyZWQgZHVlIHRvIHRoZSBtaW5pbWFsIGludmFzaXZlbmVzcyBvZiB0aGUgcHJvY2VkdXJlLjwvcD5cclxuXHJcbjxwPjxzdHJvbmc+SW5mb3JtZWQgY29uc2VudDo8L3N0cm9uZz4gQ29sbGFib3JhdGVkIHdpdGggbGVnYWwgaW5zdGl0dXRpb25zIHRvIGRyYWZ0IGEgY29tcHJlaGVuc2l2ZSBpbmZvcm1lZCBjb25zZW50IGZvcm0gdGhhdCBjb21wbGllcyB3aXRoIEdlcm1hbiBuYXRpb25hbCByZWd1bGF0aW9ucyBhbmQgQmllbGVmZWxkIFVuaXZlcnNpdHkgcG9saWNpZXMuPC9wPlxyXG5cclxuPHA+PHN0cm9uZz5HdWlkZWxpbmUgY3JlYXRpb24gZm9yIGZ1dHVyZSB0ZWFtczo8L3N0cm9uZz4gQXMgdGhlIGZpcnN0IGlHRU0gdGVhbSB0byB3b3JrIHdpdGggaHVtYW4gcHJpbWFyeSBuYXNhbCBlcGl0aGVsaWFsIGNlbGxzLCB3ZSBkZXZlbG9wZWQgYSBndWlkZWxpbmUgZm9yIGhhbmRsaW5nIGh1bWFuIGJpb21hdGVyaWFsIHRvIGFpZCBmdXR1cmUgdGVhbXMgaW4gc2ltaWxhciBwcm9qZWN0cy48L3A+XHJcblxyXG48cD48c3Ryb25nPkRhdGEgcHJpdmFjeSBwcm90b2NvbHM6PC9zdHJvbmc+IFdvcmtlZCB3aXRoIE1zLiBHYWJyaWVsZSBBbnRvbiB0byBlc3RhYmxpc2ggcHJvdG9jb2xzIGZvciBtYW5hZ2luZyBhbmQgc3RvcmluZyBzZW5zaXRpdmUgcGVyc29uYWwgZGF0YSwgcHJpb3JpdGl6aW5nIGFub255bWl6YXRpb24gdG8gcHJvdGVjdCBwYXJ0aWNpcGFudCBwcml2YWN5LjwvcD5cclxuXHJcbjxwPjxzdHJvbmc+RXRoaWNhbCBhbmQgbGVnYWwgZm91bmRhdGlvbjo8L3N0cm9uZz4gSW5wdXQgZnJvbSBEci4gQmVyZW5zIGFuZCBNcy4gQW50b24gd2FzIGNydWNpYWwgaW4gYnVpbGRpbmcgdGhlIGV0aGljYWwgYW5kIGxlZ2FsIGZvdW5kYXRpb24gb2Ygb3VyIHByb2plY3QsIGVuc3VyaW5nIGNvbXBsaWFuY2Ugd2l0aCBhbGwgc3RhbmRhcmRzIGFuZCBlbmFibGluZyB1cyB0byBwcm9jZWVkIHdpdGggb2ZmaWNpYWwgYXBwcm92YWwuPC9wPlxyXG5cclxuPHA+PHN0cm9uZz5QcmFjdGljYWwgZXhwZXJ0aXNlOjwvc3Ryb25nPiBBZnRlciBzZWN1cmluZyB0aGUgZXRoaWNhbCBhbmQgbGVnYWwgZnJhbWV3b3JrLCB3ZSBzb3VnaHQgYXNzaXN0YW5jZSBmcm9tIFN0ZW1jZWxsIFRlY2hub2xvZ2llcyBmb3IgcHJhY3RpY2FsIGd1aWRhbmNlIGluIGhhbmRsaW5nIGFuZCBjdWx0aXZhdGluZyBwYXRpZW50IHNhbXBsZXMsIHdoaWNoIHdhcyBlc3NlbnRpYWwgZm9yIGFkdmFuY2luZyBvdXIgdGVzdGluZyBhbmQgcHVzaGluZyB0aGUgcHJvamVjdCB0b3dhcmQgcmVhbC13b3JsZCBhcHBsaWNhdGlvbnMuPC9wPlxyXG5cclxuICAgICA8L0NvbGxhcHNpYmxlPlxyXG4gICAgKSBcclxuIH1cclxuZnVuY3Rpb24gQW5hbHlzZVdlYmVyKCl7XHJcbiAgICBjb25zdCB7Z29Ub1BhZ2VzQW5kT3BlblRhYn0gPSB1c2VOYXZpZ2F0aW9uKCk7XHJcbiAgICByZXR1cm4oXHJcbiAgICAgPENvbGxhcHNpYmxlIHRpdGxlPVwiUHJvZi4gRHIuIFdlYmVyIGFuZCBEci4gR3JvXHUwMERGZS1Pbm5lYnJpbmsgXCIgaWQ9XCJ3ZWJlcmFuYWx5c2VDXCI+XHJcbiAgICAgICAgIDxwPlByb2YuIFdlYmVyIGFuZCBEci4gR3JvXHUwMERGZS1Pbm5lYnJpbmsgZW1waGFzaXplZCB0aGUgcG90ZW50aWFsIG9mIHRhcmdldGluZyBpb25vY3l0ZXMgZHVlIHRvIHRoZWlyIGNydWNpYWwgcm9sZSBpbiBDRlRSIGV4cHJlc3Npb24gd2hpbGUgaGlnaGxpZ2h0aW5nIHRoZSBjaGFsbGVuZ2VzIG9mIGFjY2Vzc2luZyB0aGVzZSBjZWxscyBhbmQgcGVuZXRyYXRpbmcgdGhlIG11Y3VzIGJhcnJpZXIuIEFkZGl0aW9uYWxseSwgdGhleSBzdWdnZXN0ZWQgdXNpbmcgYW4gVXNzaW5nIGNoYW1iZXIgdG8gYXNzZXNzIENGVFIgZnVuY3Rpb24sIGFsdGhvdWdoIHRoZXkgbm90ZWQgaXRzIGxpbWl0YXRpb25zLCBhbmQgcmVjb21tZW5kZWQgZXhwbG9yaW5nIGNoaXRvc2FuLWJhc2VkIG5hbm9wYXJ0aWNsZXMgYXMgYSBzYWZlciBhbHRlcm5hdGl2ZSB0byBQRUctbGlwaWQgc3lzdGVtcy4gPC9wPlxyXG4gICAgICAgICA8cD5JbiByZXNwb25zZSB0byB0aGVpciBpbnNpZ2h0cywgd2UgY29udGludWVkIHRvIGV4cGxvcmUgaW9ub2N5dGVzIGJ1dCBleHBhbmRlZCBvdXIgZm9jdXMgdG8gaW5jbHVkZSBvdGhlciBjZWxsIHR5cGVzIHRvIGVuaGFuY2UgdGVzdGluZyBmbGV4aWJpbGl0eS4gV2UgZnVydGhlciBpbnZlc3RpZ2F0ZWQgY2hpdG9zYW4tYmFzZWQgbmFub3BhcnRpY2xlcyBhbmQgb3B0aW1pemVkIHRoZWlyIHNpemUgZm9yIGJldHRlciBsdW5nIHBlbmV0cmF0aW9uLiBXZSBwbGFuIHRvIHV0aWxpemUgdGhlIFVzc2luZyBjaGFtYmVyIGZvciBDRlRSIG1lYXN1cmVtZW50cyBhbmQgYXJlIGFsc28gY29uc2lkZXJpbmcgcGF0Y2ggY2xhbXBpbmcgZm9yIGRldGFpbGVkIHRyYW5zZmVjdGlvbiBhbmFseXNpcy4gPC9wPlxyXG4gICAgICAgICA8cD5Qcm9mLiBXZWJlciBoaWdobGlnaHRlZCB0aGUgaW5ub3ZhdGl2ZSBhc3BlY3RzIG9mIG91ciBwcm9qZWN0LCBwYXJ0aWN1bGFybHkgcmVnYXJkaW5nIGNlbGwgY3VsdHVyZSBtZXRob2RzLiBIZSBhZHZpc2VkIHVzIHRvIGNvbnNpZGVyIHRoZSBldGhpY2FsIGFuZCBsZWdhbCBpbXBsaWNhdGlvbnMsIHdoaWNoIGxlZCB1cyB0byBjb25zdWx0IHdpdGggdGhlIGhlYWQgb2YgdGhlIGV0aGljcyBjb21taXR0ZWUgYXQgdGhlIFVuaXZlcnNpdHkgb2YgQmllbGVmZWxkLCA8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZXNBbmRPcGVuVGFiKCdiZXJlbnMnLCAnL2h1bWFuLXByYWN0aWNlcycpfT5Eci4gRXZhLU1hcmlhIEJlcmVuczwvYT4uIER1ZSB0byBsZWdhbCBjb25jZXJucywgdGhlIGNvbW1pdHRlZSBpcyB1bmFibGUgdG8gc3VwcG9ydCBvdXIgcHJvamVjdCBkaXJlY3RseSwgYXMgdGhleSBoYXZlIGFuIGludGVyZXN0IGluIGRldmVsb3BpbmcgdGhlaXIgb3duIENoaXRvc2FuIExOUHMsIHdoaWNoIGNvbmZsaWN0cyB3aXRoIHRoZSBvcGVuLXNvdXJjZSBuYXR1cmUgb2YgdGhlIGlHRU0gY29tcGV0aXRpb24uIE5ldmVydGhlbGVzcywgdGhleSBwcm92aWRlZCB1cyB3aXRoIHZhbHVhYmxlIGluZm9ybWF0aW9uIHVwIHRvIHRoYXQgcG9pbnQsIGd1aWRpbmcgb3VyIHVuZGVyc3RhbmRpbmcgYW5kIGFwcHJvYWNoIHRvIHRoZSBwcm9qZWN0LiA8L3A+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZmlndXJlPlxyXG4gICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvaW50ZWdyYXRlZC1odW1hbi1wcmFjdGljZXMvcHItc2VudGF0aW9uLXVrbS53ZWJwXCIgYWx0PVwiXCIgLz5cclxuICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgIDwvZmlndXJlPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+IFxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZmlndXJlPlxyXG4gICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvaW50ZWdyYXRlZC1odW1hbi1wcmFjdGljZXMvb3JpZW50aWVydW5nLndlYnBcIiBhbHQ9XCJcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgPC9maWd1cmU+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgXHJcbiAgICAgICAgPHA+PHN0cm9uZz5UYXJnZXRpbmcgaW9ub2N5dGVzOjwvc3Ryb25nPiBFbXBoYXNpemVkIHRoZSBwb3RlbnRpYWwgb2YgdGFyZ2V0aW5nIGlvbm9jeXRlcyBkdWUgdG8gdGhlaXIgY3JpdGljYWwgcm9sZSBpbiBDRlRSIGV4cHJlc3Npb24sIHdoaWxlIGFsc28gaGlnaGxpZ2h0aW5nIHRoZSBjaGFsbGVuZ2VzIG9mIGFjY2Vzc2luZyB0aGVzZSBjZWxscyBhbmQgcGVuZXRyYXRpbmcgdGhlIG11Y3VzIGJhcnJpZXIgaW4gQ0YgcGF0aWVudHMuPC9wPlxyXG5cclxuPHA+PHN0cm9uZz5Vc3NpbmcgY2hhbWJlciByZWNvbW1lbmRhdGlvbjo8L3N0cm9uZz4gU3VnZ2VzdGVkIHVzaW5nIHRoZSBVc3NpbmcgY2hhbWJlciB0byBhc3Nlc3MgQ0ZUUiBmdW5jdGlvbiwgbm90aW5nIGl0cyBsaW1pdGF0aW9ucywgYW5kIHJlY29tbWVuZGVkIGV4cGxvcmluZyBwYXRjaCBjbGFtcGluZyBmb3IgbW9yZSBkZXRhaWxlZCB0cmFuc2ZlY3Rpb24gYW5hbHlzaXMuPC9wPlxyXG5cclxuPHA+PHN0cm9uZz5DaGl0b3Nhbi1iYXNlZCBuYW5vcGFydGljbGVzOjwvc3Ryb25nPiBFbmNvdXJhZ2VkIGludmVzdGlnYXRpbmcgY2hpdG9zYW4tYmFzZWQgbmFub3BhcnRpY2xlcyBhcyBhIHNhZmVyIGFsdGVybmF0aXZlIHRvIFBFRy1saXBpZCBzeXN0ZW1zLCB3aGljaCBsZWQgdXMgdG8gb3B0aW1pemUgY2hpdG9zYW4gbmFub3BhcnRpY2xlIHNpemUgZm9yIGJldHRlciBsdW5nIHBlbmV0cmF0aW9uLjwvcD5cclxuXHJcbjxwPjxzdHJvbmc+RXhwYW5kZWQgY2VsbCB0YXJnZXRpbmc6PC9zdHJvbmc+IEJhc2VkIG9uIHRoZWlyIGluc2lnaHRzLCB3ZSBleHBhbmRlZCBvdXIgZm9jdXMgYmV5b25kIGlvbm9jeXRlcyB0byBpbmNsdWRlIG90aGVyIGNlbGwgdHlwZXMgdG8gaW5jcmVhc2UgZmxleGliaWxpdHkgaW4gdGVzdGluZy48L3A+XHJcblxyXG48cD48c3Ryb25nPkV0aGljYWwgYW5kIGxlZ2FsIGd1aWRhbmNlOjwvc3Ryb25nPiBQcm9mLiBXZWJlciBhZHZpc2VkIHVzIHRvIGNvbnNpZGVyIGV0aGljYWwgYW5kIGxlZ2FsIGNvbmNlcm5zLCBsZWFkaW5nIHRvIGNvbnN1bHRhdGlvbnMgd2l0aCBEci4gQmVyZW5zLCBoZWFkIG9mIHRoZSBldGhpY3MgY29tbWl0dGVlIGF0IHRoZSBVbml2ZXJzaXR5IG9mIEJpZWxlZmVsZC4gTGVnYWwgY29uY2VybnMgYXJvdW5kIGNvbmZsaWN0aW5nIGludGVyZXN0cyAodGhlIHVuaXZlcnNpdHkncyBvd24gY2hpdG9zYW4gTE5QIGRldmVsb3BtZW50cykgbGltaXRlZCBkaXJlY3Qgc3VwcG9ydCwgYnV0IHRoZSBjb21taXR0ZWUgcHJvdmlkZWQgdmFsdWFibGUgZ3VpZGFuY2UuPC9wPlxyXG5cclxuPHA+PHN0cm9uZz5Jbm5vdmF0aXZlIGNlbGwgY3VsdHVyZSBtZXRob2RzOjwvc3Ryb25nPiBQcm9mLiBXZWJlciBwcmFpc2VkIHRoZSBpbm5vdmF0aXZlIGFzcGVjdHMgb2Ygb3VyIHByb2plY3QsIHBhcnRpY3VsYXJseSBvdXIgYXBwcm9hY2ggdG8gY2VsbCBjdWx0dXJlLCBmdXJ0aGVyIHZhbGlkYXRpbmcgb3VyIHByb2plY3RcdTIwMTlzIHNjaWVudGlmaWMgZGlyZWN0aW9uLjwvcD5cclxuXHJcbiAgICAgPC9Db2xsYXBzaWJsZT5cclxuICAgICkgXHJcbiB9XHJcbmZ1bmN0aW9uIEFuYWx5c2VNb29yKCl7XHJcbiAgICByZXR1cm4oXHJcbiAgICAgPENvbGxhcHNpYmxlIHRpdGxlPVwiQmVuamFtaW4gV2lsbGVtIE1vb3JsYWNoIFx1MjAxMyBDaGl0b3NhbiBFeHBlcnQgXCIgaWQ9XCJtb29ybGFjaGFuYWx5c2VDXCI+XHJcbiAgICAgICAgPHA+V2UgZ2FpbmVkIHZhbHVhYmxlIGluc2lnaHRzIGludG8gdGhlIHVuaXF1ZSBwcm9wZXJ0aWVzIG9mIGNoaXRvc2FuLCBhIGNhdGlvbmljIHBvbHltZXIgd2l0aCBzaWduaWZpY2FudCBwb3RlbnRpYWwgdG8gc3RhYmlsaXplIFJOQSBpbiBvdXIgbGlwaWQgbmFub3BhcnRpY2xlIChMTlApIGZvcm11bGF0aW9ucy4gQ2hpdG9zYW4gb2ZmZXJzIHJvYnVzdCBwcm90ZWN0aW9uIGFnYWluc3QgUk5hc2VzIGFuZCBleGhpYml0cyBoZWF0IHN0YWJpbGl0eSwgbWFraW5nIGl0IHN1aXRhYmxlIGZvciBwcm9jZXNzaW5nIG1ldGhvZHMgbGlrZSBzcHJheSBkcnlpbmcuIEFkZGl0aW9uYWxseSwgaXRzIG11Y29hZGhlc2l2ZSBwcm9wZXJ0aWVzIGVuYWJsZSBvcHRpbWFsIGNob2ljZSBhcyBMTlAgY29tcG9uZW50LiA8L3A+XHJcbiAgICAgICAgPHA+QSBjcml0aWNhbCBpbnNpZ2h0IHdhcyB0aGUgbmVjZXNzaXR5IGZvciBjaGl0b3NhbiB0byBiZSBpbiBhbiBhY2lkaWMgZW52aXJvbm1lbnQgKHBIIDQtNikgdG8gbWFpbnRhaW4gaXRzIHBvc2l0aXZlIGNoYXJnZSwgd2hpY2ggaXMgZXNzZW50aWFsIGZvciBlZmZlY3RpdmUgUk5BIGludGVyYWN0aW9uLiBXaGlsZSBpdCBjYW5ub3QgcmVwbGFjZSBQRUcgZHVlIHRvIGl0cyBoeWRyb3BoaWxpYyBuYXR1cmUsIGNoaXRvc2FuIGlzIGlkZWFsIGZvciBmb3JtaW5nIFJOQS1jaGl0b3NhbiBjb21wbGV4ZXMsIHdoaWNoIGNhbiB0aGVuIGJlIGVuY2Fwc3VsYXRlZCB3aXRoaW4gTE5Qcy4gVGhpcyBhcHByb2FjaCBzaWduaWZpY2FudGx5IGVuaGFuY2VzIFJOQSBzdGFiaWxpdHkgZHVyaW5nIHNwcmF5IGRyeWluZywgYSBtZXRob2Qgd2UgaW50ZW5kIHRvIGZ1cnRoZXIgdGVzdCBpbiBjb2xsYWJvcmF0aW9uIHdpdGggPGEgaHJlZj1cImh0dHBzOi8vcm5oYWxlLmNvbS9cIj5SbmhhbGU8L2E+LiA8L3A+XHJcbiAgICAgICAgPHA+IEluIHRlcm1zIG9mIGltcGxlbWVudGF0aW9uLCBCZW5qYW1pbiBlZHVjYXRlZCB1cyBvbiB0aGUgY2hlbWljYWwgYW5kIHN0cnVjdHVyYWwgcHJvcGVydGllcyBvZiBjaGl0b3NhbiwgcmVpbmZvcmNpbmcgb3VyIGFwcHJvYWNoIHRvIGltcHJvdmUgc3RhYmlsaXR5LCBwYXJ0aWN1bGFybHkgYWdhaW5zdCBoZWF0LCBpbiBvdXIgTE5QIGZvcm11bGF0aW9ucy4gSGUgcHJvdmlkZWQgZ3VpZGFuY2Ugb24gZm9ybXVsYXRpbmcgY2hpdG9zYW4tUk5BIGNvbXBsZXhlcyBhbmQgZGV2ZWxvcGVkIGEgcHJvdG9jb2wgZm9yIGludGVncmF0aW5nIHRoZW0gaW50byBvdXIgTE5QIGZvcm11bGF0aW9uIHdpdGhvdXQgYWZmZWN0aW5nIHRoZSBjaGFyZ2Ugb2YgdGhlIG5hbm9wYXJ0aWNsZXMuIEFkZGl0aW9uYWxseSwgaGUgc3VwcGxpZWQgdXMgd2l0aCBjaGl0b3NhbiBpbiB2YXJpb3VzIHNpemVzLCBlbmFibGluZyB1cyB0byB0ZXN0IGRpZmZlcmVudCBjaGl0b3NhbiBjb21wbGV4ZXMgZm9yIG9wdGltYWwgcmVzdWx0cy4gPC9wPlxyXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZmlndXJlPlxyXG4gICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvaW50ZWdyYXRlZC1odW1hbi1wcmFjdGljZXMvY2hpdG9zYW4ud2VicFwiIGFsdD1cIlwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9maWd1cmU+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj4gXHJcbiAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICBcclxuICAgICAgICA8cD48c3Ryb25nPkNoaXRvc2FuIHByb3BlcnRpZXM6PC9zdHJvbmc+IFByb3ZpZGVkIHZhbHVhYmxlIGluc2lnaHRzIGludG8gY2hpdG9zYW4sIGEgY2F0aW9uaWMgcG9seW1lciB3aXRoIHN0cm9uZyBwb3RlbnRpYWwgdG8gc3RhYmlsaXplIFJOQSBpbiBsaXBpZCBuYW5vcGFydGljbGUgKExOUCkgZm9ybXVsYXRpb25zIGR1ZSB0byBpdHMgcm9idXN0IHByb3RlY3Rpb24gYWdhaW5zdCBSTmFzZXMgYW5kIGhlYXQgc3RhYmlsaXR5LjwvcD5cclxuXHJcbjxwPjxzdHJvbmc+TXVjb2FkaGVzaXZlIHByb3BlcnRpZXM6PC9zdHJvbmc+IEhpZ2hsaWdodGVkIGNoaXRvc2FuJ3MgbXVjb2FkaGVzaXZlIGNoYXJhY3RlcmlzdGljcywgbWFraW5nIGl0IGFuIGlkZWFsIGNvbXBvbmVudCBmb3IgTE5QcyBpbiB0ZXJtcyBvZiBSTkEgZGVsaXZlcnkuPC9wPlxyXG5cclxuPHA+PHN0cm9uZz5BY2lkaWMgZW52aXJvbm1lbnQgcmVxdWlyZW1lbnQ6PC9zdHJvbmc+IEVtcGhhc2l6ZWQgdGhlIG5lZWQgZm9yIGNoaXRvc2FuIHRvIG1haW50YWluIGEgcG9zaXRpdmUgY2hhcmdlIGluIGFuIGFjaWRpYyBlbnZpcm9ubWVudCAocEggNC02KSBmb3IgZWZmZWN0aXZlIFJOQSBpbnRlcmFjdGlvbi48L3A+XHJcblxyXG48cD48c3Ryb25nPkNoaXRvc2FuIHZzLiBQRUc6PC9zdHJvbmc+IFdoaWxlIGNoaXRvc2FuIGNhbm5vdCByZXBsYWNlIFBFRyBkdWUgdG8gaXRzIGh5ZHJvcGhpbGljIG5hdHVyZSwgaXQgaXMgb3B0aW1hbCBmb3IgZm9ybWluZyBSTkEtY2hpdG9zYW4gY29tcGxleGVzLCB3aGljaCBjYW4gYmUgZW5jYXBzdWxhdGVkIHdpdGhpbiBMTlBzLjwvcD5cclxuXHJcbjxwPjxzdHJvbmc+Uk5BIHN0YWJpbGl0eSBpbiBzcHJheSBkcnlpbmc6PC9zdHJvbmc+IENoaXRvc2FuJ3MgdXNlIGluIFJOQS1jaGl0b3NhbiBjb21wbGV4ZXMgc2lnbmlmaWNhbnRseSBlbmhhbmNlcyBSTkEgc3RhYmlsaXR5IGR1cmluZyBzcHJheSBkcnlpbmcsIGEgbWV0aG9kIHdlIHdpbGwgY29udGludWUgdG8gdGVzdCB3aXRoIFJOaGFsZS48L3A+XHJcblxyXG48cD48c3Ryb25nPkltcGxlbWVudGF0aW9uIGd1aWRhbmNlOjwvc3Ryb25nPiBCZW5qYW1pbiBwcm92aWRlZCBjaGVtaWNhbCBhbmQgc3RydWN0dXJhbCBrbm93bGVkZ2Ugb2YgY2hpdG9zYW4sIGd1aWRpbmcgdXMgb24gaG93IHRvIGltcHJvdmUgTE5QIHN0YWJpbGl0eSwgZXNwZWNpYWxseSBhZ2FpbnN0IGhlYXQsIGFuZCBmb3JtdWxhdGluZyBjaGl0b3Nhbi1STkEgY29tcGxleGVzLiBIZSBhbHNvIHN1cHBsaWVkIHZhcmlvdXMgc2l6ZXMgb2YgY2hpdG9zYW4sIGFsbG93aW5nIHVzIHRvIHRlc3QgZm9yIG9wdGltYWwgcmVzdWx0cyBpbiBvdXIgZm9ybXVsYXRpb25zLjwvcD5cclxuXHJcbiAgICAgPC9Db2xsYXBzaWJsZT5cclxuICAgICkgXHJcbiB9XHJcbmZ1bmN0aW9uIEFuYWx5c2VLb2xvbmtvKCl7XHJcbiAgICBjb25zdCB7Z29Ub1BhZ2VzQW5kT3BlblRhYn0gPSB1c2VOYXZpZ2F0aW9uKCk7XHJcbiAgICByZXR1cm4oXHJcbiAgICAgPENvbGxhcHNpYmxlIHRpdGxlPVwiRHIuIEthdGhhcmluYSBLb2xvbmtvIFx1MjAxMyBOYW5vcGFydGljbGUgUmVzZWFyY2hlciBcIiBpZD1cImtvbG9ua29hbmFseXNlQ1wiPlxyXG4gICAgICAgICA8cD5Eci4gS29sb25rbydzIGV4cGVydGlzZSBpbiBuYW5vcGFydGljbGUgc3RhYmlsaXR5IHdhcyBpbnZhbHVhYmxlIGluIHJlZmluaW5nIG91ciBkZWxpdmVyeSBzeXN0ZW0uIEhlciByZWNvbW1lbmRhdGlvbiB0byB1dGlsaXplIGNoaXRvc2FuIGZvciBncmVhdGVyIHN0YWJpbGl0eSBpbmZsdWVuY2VkIG91ciBmb3JtdWxhdGlvbiBjaG9pY2UgYW5kIHdlIGZ1cnRoZXIgaW52ZXN0aWdhdGVkIGhvdyB0byBpbnRlZ3JhdGUgPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VzQW5kT3BlblRhYignbW9vcmxhY2gnLCAnL2h1bWFuIHByYWN0aWNlcycpfT4gY2hpdG9zYW4gaW4gb3VyIExOUCA8L2E+LiBBZGRpdGlvbmFsbHksIGhlciBpbnNpZ2h0cyBvbiBjeXRvdG94aWNpdHkgdGVzdGluZywgcGFydGljdWxhcmx5IHRoZSBNVFQgYXNzYXksIGFuZCBtZWRpdW0gY29uZGl0aW9ucyBzdWNoIGFzIHVzaW5nIE9wdGlNRU0gZm9yIHRyYW5zZmVjdGlvbiwgZ3JlYXRseSBpbXByb3ZlZCBvdXIgZXhwZXJpbWVudGFsIGRlc2lnbi4gV2UgZXhwbG9yZWQgdGhlIHBvdGVudGlhbCBhbmQgaW1wb3J0YW5jZSBvZiBjaGl0b3NhbiBpbiBsaXBpZCBuYW5vcGFydGljbGVzLCBsZWFybmVkIHZhcmlvdXMgdGVjaG5pcXVlcyBmb3IgY2hhcmFjdGVyaXppbmcgTE5QcywgYW5kIGltcGxlbWVudGVkIGVmZmVjdGl2ZSBjdWx0aXZhdGlvbiB0ZWNobmlxdWVzIGFuZCB0aXBzIGZvciBjZWxsIGN1bHR1cmUsIHdpdGggYSBmb2N1cyBvbiBjb250YW1pbmF0aW9uIHJpc2tzIGFuZCB0aGUgdXNlIG9mIE9wdGlNRU0gbWVkaXVtLiBPdmVyYWxsLCBEci4gS29sb25rb1x1MjAxOXMgZ3VpZGFuY2UgaGFzIGJlZW4gaW5zdHJ1bWVudGFsIGluIHNoYXBpbmcgdGhlIHNhZmV0eSBhbmQgZWZmaWNhY3kgb2Ygb3VyIHByb2plY3QuIDwvcD5cclxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvdyBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgICAgICAgIDxmaWd1cmU+XHJcbiAgICAgICAgICAgICAgICA8aW1nIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2Zhbnpvci9zb3J0LW10dC53ZWJwIFwiIGFsdD1cIlwiIC8+XHJcbiAgICAgICAgICAgICAgICA8ZmlnY2FwdGlvbj5GaWd1cmUuICBNVFQgQXNzYXkgb2YgTE5QcyBmcm9tIGFsbCBpdGVyYXRpb25zIHBlcmZvcm1lZCBvbiBIRUsyOTMgaW5jbHVkaW5nIFRyaXRvbiBhcyBuZWdhdGl2ZSBjb250cm9sIGFuZCB1bnRyZWF0ZWQgY2VsbHMgYXMgcG9zaXRpdmUgY29udHJvbC4gTWVhbiArLy0gU0VNIGZvciBuPTYuIEZvciBzdGF0aXN0aWNzIG9uZS13YXkgQU5PVkEgd2FzIHBlcmZvcm1lZDwvZmlnY2FwdGlvbj5cclxuICAgICAgICAgICAgICAgIDwvZmlndXJlPiAgICBcclxuICAgICAgICAgICAgPC9kaXY+IFxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgICAgPGZpZ3VyZT5cclxuICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL29wdGltZW0tMS53ZWJwXCIgc3R5bGU9e3toZWlnaHQ6XCI1NSVcIiwgd2lkdGg6XCJhdXRvXCJ9fSBhbHQ9XCJcIi8+XHJcbiAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgIDwvZmlndXJlPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8cD48c3Ryb25nPkV4cGVydGlzZSBpbiBuYW5vcGFydGljbGUgc3RhYmlsaXR5Ojwvc3Ryb25nPiBQcm92aWRlZCBpbnZhbHVhYmxlIGluc2lnaHRzIHRoYXQgc2lnbmlmaWNhbnRseSByZWZpbmVkIG91ciBkZWxpdmVyeSBzeXN0ZW0uPC9wPlxyXG5cclxuPHA+PHN0cm9uZz5DaGl0b3NhbiByZWNvbW1lbmRhdGlvbjo8L3N0cm9uZz4gU3VnZ2VzdGVkIHRoZSB1c2Ugb2YgY2hpdG9zYW4gZm9yIGluY3JlYXNlZCBzdGFiaWxpdHkgaW4gbGlwaWQgbmFub3BhcnRpY2xlcyAoTE5QcyksIGluZmx1ZW5jaW5nIG91ciBmb3JtdWxhdGlvbiBjaG9pY2UgYW5kIGxlYWRpbmcgdG8gZnVydGhlciBpbnZlc3RpZ2F0aW9ucyBpbnRvIGludGVncmF0aW5nIGNoaXRvc2FuIGluIG91ciBMTlAgc3lzdGVtLjwvcD5cclxuXHJcbjxwPjxzdHJvbmc+Q3l0b3RveGljaXR5IHRlc3RpbmcgaW1wcm92ZW1lbnRzOjwvc3Ryb25nPiBIZXIgZ3VpZGFuY2Ugb24gY3l0b3RveGljaXR5IHRlc3RpbmcsIHBhcnRpY3VsYXJseSB0aGUgTVRUIGFzc2F5LCBncmVhdGx5IGVuaGFuY2VkIHRoZSByZWxpYWJpbGl0eSBvZiBvdXIgZXhwZXJpbWVudHMuPC9wPlxyXG5cclxuPHA+PHN0cm9uZz5PcHRpbWl6ZWQgdHJhbnNmZWN0aW9uIGNvbmRpdGlvbnM6PC9zdHJvbmc+IEludHJvZHVjZWQgdXMgdG8gdGhlIHVzZSBvZiBPcHRpTUVNIGZvciB0cmFuc2ZlY3Rpb24sIGltcHJvdmluZyBvdXIgbWVkaXVtIGNvbmRpdGlvbnMgYW5kIGV4cGVyaW1lbnRhbCBkZXNpZ24uPC9wPlxyXG5cclxuPHA+PHN0cm9uZz5DaGFyYWN0ZXJpemF0aW9uIGFuZCBjdWx0aXZhdGlvbiB0ZWNobmlxdWVzOjwvc3Ryb25nPiBIZWxwZWQgdXMgZXhwbG9yZSB0ZWNobmlxdWVzIGZvciBjaGFyYWN0ZXJpemluZyBMTlBzIGFuZCBpbXBsZW1lbnRpbmcgZWZmZWN0aXZlIGN1bHRpdmF0aW9uIG1ldGhvZHMsIGZvY3VzaW5nIG9uIGNvbnRhbWluYXRpb24gcmlza3MgYW5kIG9wdGltYWwgY2VsbCBjdWx0dXJlIHByYWN0aWNlcy48L3A+XHJcblxyXG48cD48c3Ryb25nPk92ZXJhbGwgaW1wYWN0Ojwvc3Ryb25nPiBEci4gS29sb25rbydzIGNvbnRyaWJ1dGlvbnMgd2VyZSBpbnN0cnVtZW50YWwgaW4gc2hhcGluZyB0aGUgc2FmZXR5IGFuZCBlZmZpY2FjeSBvZiBvdXIgcHJvamVjdCwgaW1wcm92aW5nIGJvdGggdGhlIHN0YWJpbGl0eSBvZiB0aGUgZm9ybXVsYXRpb24gYW5kIHRoZSBxdWFsaXR5IG9mIG91ciBleHBlcmltZW50YWwgcHJvY2Vzc2VzLjwvcD5cclxuXHJcbiAgICAgPC9Db2xsYXBzaWJsZT5cclxuICAgICkgXHJcbiB9XHJcbmZ1bmN0aW9uIEFuYWx5c2VSbmhhbGUoKXtcclxuICAgIGNvbnN0IHtnb1RvUGFnZUFuZFNjcm9sbH0gPSB1c2VOYXZpZ2F0aW9uKCk7XHJcbiAgICByZXR1cm4oXHJcbiAgICAgPENvbGxhcHNpYmxlIHRpdGxlPVwiRHIuIEJlbmphbWluIFdpbmtlbGphbm4gXHUyMDEzIFJOaGFsZSwgSW5kdXN0cnkgRXhwZXJ0ICYgUmVzZWFyY2hlciBcIiBpZD1cInJuaGFsZWFuYWx5c2VDXCI+XHJcbiAgICAgICAgIDxwPkRyLiBCZW5qYW1pbiBXaW5rZWxqYW5uIGZyb20gPGEgaHJlZj1cImh0dHBzOi8vcm5oYWxlLmNvbS9cIiA+Um5oYWxlPC9hPiBwcm92aWRlZCBjcnVjaWFsIHRlY2huaWNhbCBndWlkYW5jZSB0aGF0IHNpZ25pZmljYW50bHkgZW5oYW5jZWQgb3VyIHByb2plY3QuIEhpcyBleHBlcnRpc2UgaW4gc3ByYXktZHJpZWQgbGlwaWQgbmFub3BhcnRpY2xlcyAoTE5QcykgYWxsb3dlZCB1cyB0byBpbXByb3ZlIHRoZSBzaGVsZi1saWZlIGFuZCBzY2FsYWJpbGl0eSBvZiBvdXIgZm9ybXVsYXRpb25zLiBXZSBsZWFybmVkIGFib3V0IHRoZSBsaW1pdGF0aW9ucyBvZiBDRiB0aGVyYXBpZXMgcmVnYXJkaW5nIGludGVybmF0aW9uYWwgYWNjZXNzLCBjb3N0LCBhbmQgYXZhaWxhYmlsaXR5LCB3aGljaCBoaWdobGlnaHRlZCB0aGUgbmVlZCBmb3Igc3VzdGFpbmFibGUgc29sdXRpb25zLiA8L3A+XHJcbiAgICAgICAgPHA+V2UgZGlzY292ZXJlZCB0aGF0IHNwcmF5IGRyeWluZyBpcyBhbiBlZmZlY3RpdmUgbWV0aG9kIGZvciBzdGFiaWxpemluZyBMTlBzLCBlbmFibGluZyB0cmFuc3BvcnQgd2l0aG91dCByZWZyaWdlcmF0aW9uIFx1MjAxNCBhIG1vcmUgZW52aXJvbm1lbnRhbGx5IGZyaWVuZGx5IGFwcHJvYWNoIHRoYXQgcmVkdWNlcyBlbmVyZ3kgY29uc3VtcHRpb24uICA8L3A+XHJcbiAgICAgICAgPHA+T3VyIGNsb3NlIGNvbGxhYm9yYXRpb24gd2l0aCBSTmhhbGUgd2lsbCBjb250aW51ZSBldmVuIGFmdGVyIHRoZSB3aWtpIGZyZWV6ZSwgZm9jdXNpbmcgb24gcHJvZHVjaW5nIHNwcmF5LWRyaWVkIExOUHMgYW5kIHRlc3RpbmcgdGhlbSBvbiBvdXIgcHJpbWFyeSBjdWx0dXJlcy4gV2UgYXJlIGFsc28gaW52ZXN0aWdhdGluZyBob3cgdG8gZW5oYW5jZSB0aGUgc3RhYmlsaXR5IG9mIExOUHMsIHBhcnRpY3VsYXJseSBpbiBwcm90ZWN0aW5nIFJOQSBmcm9tIGhlYXQgZGFtYWdlLCBhbmQgYXJlIHNlZWtpbmcgZXhwZXJ0cyBpbiBjaGl0b3NhbiBmb3IgZnVydGhlciBzdXBwb3J0LiA8L3A+XHJcbiAgICAgICAgPHA+RHVyaW5nIGRpc2N1c3Npb25zIHdpdGggYSB5b3VuZyBzdGFydHVwIGVudHJlcHJlbmV1ciwgd2UgZXhwbG9yZWQgdGhlIHBvc3NpYmlsaXR5IG9mIHB1cnN1aW5nIGFuIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlQW5kU2Nyb2xsICgnRnVydGhlciBFbmdhZ2VtZW50M0gnLCAnL2h1bWFuLXByYWN0aWNlcycpfT4gZW50cmVwZW5ldXNoaXAtb3JpZW50ZWQgPC9hPiAgcHJvamVjdCBidXQgdWx0aW1hdGVseSBkZWNpZGVkIHRvIGZvY3VzIG9uIGEgaHVtYW4tY2VudGVyZWQgYXBwcm9hY2ggdGhhdCBwcmlvcml0aXplcyB0aGUgbmVlZHMgb2YgQ0YgcGF0aWVudHMgb3ZlciBjb3N0LWRyaXZlbiBpbmR1c3RyaWFsIHBhdGh3YXlzLiA8L3A+XHJcbiAgICAgICAgPGZpZ3VyZT5cclxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3dcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2hwL2hwLXJuaGFsZS16b29tLnBuZ1wiIGFsdD1cIlwiLz5cclxuICAgICAgICAgICAgPC9kaXY+IFxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGZpZ2NhcHRpb24+RmlndXJlLiBEZWxpdmVyeSBUZWFtIFpvb20gY2FsbCB3aXRoIFJOaGFsZSA8L2ZpZ2NhcHRpb24+XHJcbiAgICAgICAgPC9maWd1cmU+XHJcbiAgICAgICAgPHA+PHN0cm9uZz5FeHBlcnRpc2UgaW4gc3ByYXktZHJpZWQgTE5Qczo8L3N0cm9uZz4gUHJvdmlkZWQgY3JpdGljYWwgdGVjaG5pY2FsIGd1aWRhbmNlLCBlbmhhbmNpbmcgdGhlIHNoZWxmLWxpZmUgYW5kIHNjYWxhYmlsaXR5IG9mIG91ciBmb3JtdWxhdGlvbnMuPC9wPlxyXG5cclxuPHA+PHN0cm9uZz5TdXN0YWluYWJsZSBzb2x1dGlvbnM6PC9zdHJvbmc+IEhpZ2hsaWdodGVkIHRoZSBsaW1pdGF0aW9ucyBvZiBDRiB0aGVyYXBpZXMgcmVnYXJkaW5nIGludGVybmF0aW9uYWwgYWNjZXNzLCBjb3N0LCBhbmQgYXZhaWxhYmlsaXR5LCBlbXBoYXNpemluZyB0aGUgbmVlZCBmb3Igc3VzdGFpbmFibGUgYWx0ZXJuYXRpdmVzLjwvcD5cclxuXHJcbjxwPjxzdHJvbmc+U3ByYXkgZHJ5aW5nIGJlbmVmaXRzOjwvc3Ryb25nPiBJbnRyb2R1Y2VkIHVzIHRvIHNwcmF5IGRyeWluZyBhcyBhbiBlZmZlY3RpdmUgbWV0aG9kIGZvciBzdGFiaWxpemluZyBMTlBzLCBlbmFibGluZyB0cmFuc3BvcnQgd2l0aG91dCByZWZyaWdlcmF0aW9uIGFuZCByZWR1Y2luZyBlbmVyZ3kgY29uc3VtcHRpb25cdTIwMTRhbiBlbnZpcm9ubWVudGFsbHkgZnJpZW5kbHkgc29sdXRpb24uPC9wPlxyXG5cclxuPHA+PHN0cm9uZz5PbmdvaW5nIGNvbGxhYm9yYXRpb246PC9zdHJvbmc+IENvbnRpbnVlZCBjb2xsYWJvcmF0aW9uIHdpdGggUk5oYWxlLCBmb2N1c2luZyBvbiBwcm9kdWNpbmcgYW5kIHRlc3Rpbmcgc3ByYXktZHJpZWQgTE5QcyBvbiBwcmltYXJ5IGN1bHR1cmVzLCB3aGlsZSBpbnZlc3RpZ2F0aW5nIHdheXMgdG8gaW1wcm92ZSBSTkEgc3RhYmlsaXR5IGFuZCBwcm90ZWN0aW9uIGZyb20gaGVhdCBkYW1hZ2UuPC9wPlxyXG5cclxuPHA+PHN0cm9uZz5FeHBsb3JhdGlvbiBvZiBlbnRyZXByZW5ldXJzaGlwOjwvc3Ryb25nPiBEaXNjdXNzZWQgdGhlIHBvdGVudGlhbCBmb3IgYW4gZW50cmVwcmVuZXVyc2hpcC1vcmllbnRlZCBwcm9qZWN0LCBidXQgdWx0aW1hdGVseSBwcmlvcml0aXplZCBhIGh1bWFuLWNlbnRlcmVkIGFwcHJvYWNoIHRoYXQgZm9jdXNlcyBvbiB0aGUgbmVlZHMgb2YgQ0YgcGF0aWVudHMgb3ZlciBpbmR1c3RyaWFsIGNvc3QtZHJpdmVuIHN0cmF0ZWdpZXMuPC9wPlxyXG5cclxuICAgICA8L0NvbGxhcHNpYmxlPlxyXG4gICAgKSBcclxuIH1cclxuZnVuY3Rpb24gQW5hbHlzZUpvc2h1YSgpe1xyXG4gICAgY29uc3Qge2dvVG9QYWdlc0FuZE9wZW5UYWJ9ID0gdXNlTmF2aWdhdGlvbigpO1xyXG4gICAgY29uc3Qge2dvVG9QYWdlQW5kU2Nyb2xsfSA9IHVzZU5hdmlnYXRpb24oKTtcclxuICAgIHJldHVybihcclxuICAgICA8Q29sbGFwc2libGUgdGl0bGU9XCJKb3NodWEgXHUyMDEzIFZpY2UgcHJlc2lkZW50IG9mIENGIFZlc3QgaW50ZXJuYXRpb25hbCwgRmF0aGVyIG9mIGEgQ0YgY2hpbGRcIiBpZD1cImpvc2h1YWFuYWx5c2VDXCI+XHJcbiAgICAgICAgPHA+VGhyb3VnaCBkaXNjdXNzaW9ucyB3aXRoIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlc0FuZE9wZW5UYWIgKCdqb3NodWEnLCAnL2h1bWFuLXByYWN0aWNlcycpfT4gSm9zaHVhIDwvYT4sIHdlIGxlYXJuZWQgdGhhdCBDRiBzdGF0aXN0aWNzIGFyZSBpbmFkZXF1YXRlLCBwcmltYXJpbHkgcmVwcmVzZW50aW5nIHRoZSB3aGl0ZSBwb3B1bGF0aW9uLCB3aGljaCBza2V3cyB1bmRlcnN0YW5kaW5nIG9mIHRoZSBkaXNlYXNlJ3MgcHJldmFsZW5jZS4gV2UgZGlzY292ZXJlZCB0aGF0IGluIEFzaWFuIGNvdW50cmllcyBsaWtlIFRoYWlsYW5kLCBDRiBpcyB1bmRlcnJlcHJlc2VudGVkLCBsZWFkaW5nIHRvIGluc3VmZmljaWVudCBhY2Nlc3MgdG8gdGhlcmFwaWVzIGFuZCBtZWRpY2F0aW9ucy4gPC9wPlxyXG4gICAgICAgIDxwPlRoaXMgYXdhcmVuZXNzIHNoYXJwZW5lZCBvdXIgZm9jdXMgb24gdGhlIG5lZWQgZm9yIGltcHJvdmVkIHNjaWVuY2UgY29tbXVuaWNhdGlvbiBhbmQgaGlnaGxpZ2h0ZWQgdGhlIG9uZ29pbmcgaXNzdWVzIG9mIHJhY2lzbSBhbmQgZGlzY3JpbWluYXRpb24gd2l0aGluIHNjaWVudGlmaWMgcmVzZWFyY2guIEluIHJlc3BvbnNlLCB3ZSBhcmUgY29tbWl0dGVkIHRvIGVuaGFuY2luZyB0aGUgZGF0YSBsYW5kc2NhcGUgaW4gR2VybWFueSBieSBjcmVhdGluZyA8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZUFuZFNjcm9sbCAoJ291ci1zdXJ2ZXlzLW9uLS1DeXN0aWMgRmlicm9zaXMtYW5kLWdlbmUtdGhlcmFweScsICcvaHVtYW4tcHJhY3RpY2VzJyl9PiBzdXJ2ZXlzIDwvYT4gaW4gYm90aCBHZXJtYW4gYW5kIEVuZ2xpc2ggdG8gZ2F0aGVyIGJyb2FkZXIgaW5zaWdodHMgYW5kIGluY3JlYXNlIG91dHJlYWNoLiA8L3A+XHJcbiAgICAgICAgPGZpZ3VyZT4gXHJcbiAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2hwL2pvc2h1YS16b29tLndlYnBcIiBhbHQ9XCJcIi8+IFxyXG4gICAgICAgICAgICBcclxuICAgICAgICA8L2ZpZ3VyZT4gXHJcbiAgICAgICAgPHA+PHN0cm9uZz5JbmFkZXF1YXRlIENGIHN0YXRpc3RpY3M6PC9zdHJvbmc+IEhpZ2hsaWdodGVkIHRoYXQgY3VycmVudCBDRiBkYXRhIG1haW5seSByZXByZXNlbnRzIHRoZSB3aGl0ZSBwb3B1bGF0aW9uLCBza2V3aW5nIHVuZGVyc3RhbmRpbmcgb2YgdGhlIGRpc2Vhc2VcdTIwMTlzIHRydWUgcHJldmFsZW5jZS48L3A+XHJcblxyXG48cD48c3Ryb25nPlVuZGVycmVwcmVzZW50YXRpb24gaW4gQXNpYTo8L3N0cm9uZz4gUmV2ZWFsZWQgdGhhdCBDRiBpcyB1bmRlcnJlcG9ydGVkIGluIEFzaWFuIGNvdW50cmllcyBsaWtlIFRoYWlsYW5kLCBsZWFkaW5nIHRvIGxpbWl0ZWQgYWNjZXNzIHRvIHRoZXJhcGllcyBhbmQgbWVkaWNhdGlvbnMuPC9wPlxyXG5cclxuPHA+PHN0cm9uZz5Gb2N1cyBvbiBzY2llbmNlIGNvbW11bmljYXRpb246PC9zdHJvbmc+IFRoaXMgYXdhcmVuZXNzIHNoaWZ0ZWQgb3VyIGZvY3VzIHRvIHRoZSBpbXBvcnRhbmNlIG9mIGltcHJvdmluZyBzY2llbmNlIGNvbW11bmljYXRpb24gdG8gYWRkcmVzcyB0aGVzZSBkaXNwYXJpdGllcy48L3A+XHJcblxyXG48cD48c3Ryb25nPlJhY2lzbSBhbmQgZGlzY3JpbWluYXRpb24gaW4gcmVzZWFyY2g6PC9zdHJvbmc+IEJyb3VnaHQgYXR0ZW50aW9uIHRvIHRoZSBvbmdvaW5nIGlzc3VlcyBvZiByYWNpYWwgYmlhcyBhbmQgZGlzY3JpbWluYXRpb24gd2l0aGluIHNjaWVudGlmaWMgcmVzZWFyY2gsIHByb21wdGluZyB1cyB0byB0YWtlIGFjdGlvbi48L3A+XHJcblxyXG48cD48c3Ryb25nPkNvbW1pdG1lbnQgdG8gaW1wcm92ZSBkYXRhIGxhbmRzY2FwZTo8L3N0cm9uZz4gSW4gcmVzcG9uc2UsIHdlIGFyZSBkZXZlbG9waW5nIGJpbGluZ3VhbCAoR2VybWFuIGFuZCBFbmdsaXNoKSBzdXJ2ZXlzIHRvIGdhdGhlciBtb3JlIGluY2x1c2l2ZSBkYXRhIGFuZCBleHBhbmQgb3VyIG91dHJlYWNoIGVmZm9ydHMsIGVuc3VyaW5nIGEgYnJvYWRlciB1bmRlcnN0YW5kaW5nIG9mIENGIHByZXZhbGVuY2UgYW5kIGNhcmUgbmVlZHMuPC9wPlxyXG5cclxuICAgICA8L0NvbGxhcHNpYmxlPlxyXG4gICAgKSBcclxuIH1cclxuZnVuY3Rpb24gQW5hbHlzZVdlc3Rob2ZmKCl7XHJcbiAgICBjb25zdCB7Z29Ub1BhZ2VzQW5kT3BlblRhYn0gPSB1c2VOYXZpZ2F0aW9uKCk7XHJcbiAgIHJldHVybihcclxuICAgIDxDb2xsYXBzaWJsZSB0aXRsZT1cIkthdHJpbiBXZXN0aG9mZiBcdTIwMTMgUGh5c2lvdGhlcmFwaXN0IGF0IGxvY2FsIGNvbW11bml0eSBcIiBpZD1cIndlc3Rob2ZmYW5hbHlzZUNcIj5cclxuICAgICAgICA8cD48YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZXNBbmRPcGVuVGFiICgnd2VzdGhvZmZpbnYnLCAnL2h1bWFuLXByYWN0aWNlcycpfT4gS2F0aHJpbiBXZXN0aG9mZiBleHBlcnRpc2UgPC9hPiAgaW4gQ0YgcGh5c2lvdGhlcmFweSByZWluZm9yY2VkIG91ciBhcHByb2FjaCB0byBkZXZlbG9wIGFuIGluaGFsYXRpb24tYmFzZWQgdGhlcmFweSwgZXNwZWNpYWxseSBmb3IgeW91bmcgcGF0aWVudHMuIEhlciBleHBlcmllbmNlIHdpdGggY2hpbGRyZW4gaGlnaGxpZ2h0ZWQgdGhlIG5lZWQgZm9yIGEgc2ltcGxlLCBhY2Nlc3NpYmxlIHRyZWF0bWVudCwgYXMgeW91bmdlciBwYXRpZW50cyBtYXkgc3RydWdnbGUgd2l0aCByZXNwb25zaWJpbGl0eSBhbmQgY29uc2lzdGVuY3kgaW4gdGhlcmFweS4gVGhpcyB2YWxpZGF0ZWQgb3VyIGRlY2lzaW9uIHRvIGZvY3VzIG9uIGluaGFsYXRpb24gZGVsaXZlcnkgZm9yIGVhc2Ugb2YgdXNlLiA8L3A+XHJcbiAgICAgICAgPHA+QWRkaXRpb25hbGx5LCB3ZSByZWNvZ25pemVkIHRocm91Z2ggaGVyIGluc2lnaHRzIHRoYXQgZ2VuZSB0aGVyYXB5LCB3aGlsZSBpbXBhY3RmdWwsIGlzIG5vdCBhIGNvbXBsZXRlIHNvbHV0aW9uLiBQaHlzaW90aGVyYXB5IHJlbWFpbnMgY3J1Y2lhbCBpbiBDRiBjYXJlLCBhbmQgb3VyIGFwcHJvYWNoIG5vdyBpbnRlZ3JhdGVzIHRoaXMgdW5kZXJzdGFuZGluZyBpbnRvIGEgbW9yZSBob2xpc3RpYyB0cmVhdG1lbnQgcGxhbi4gPC9wPlxyXG4gICAgICAgIDxkaXY+PGltZyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvaHAvYmVzdWNoLXdlc3Rob2ZmL3VudGl0bGVkLWRlc2lnbi5wbmdcIiBzdHlsZT17e2hlaWdodDpcIjUwJVwiLCB3aWR0aDpcIjUwJVwifX0vPjwvZGl2PlxyXG4gICAgICAgIDxwPjxzdHJvbmc+RXhwZXJ0aXNlIGluIENGIHBoeXNpb3RoZXJhcHk6PC9zdHJvbmc+IFJlaW5mb3JjZWQgdGhlIGltcG9ydGFuY2Ugb2YgZGV2ZWxvcGluZyBhbiBpbmhhbGF0aW9uLWJhc2VkIHRoZXJhcHksIGVzcGVjaWFsbHkgZm9yIHlvdW5nIENGIHBhdGllbnRzLjwvcD5cclxuXHJcbjxwPjxzdHJvbmc+Rm9jdXMgb24gYWNjZXNzaWJpbGl0eTo8L3N0cm9uZz4gSGVyIGV4cGVyaWVuY2Ugd2l0aCBjaGlsZHJlbiBoaWdobGlnaHRlZCB0aGUgbmVlZCBmb3IgYSBzaW1wbGUsIGVhc3ktdG8tdXNlIHRyZWF0bWVudCwgdmFsaWRhdGluZyBvdXIgZGVjaXNpb24gdG8gZm9jdXMgb24gaW5oYWxhdGlvbiBkZWxpdmVyeS48L3A+XHJcblxyXG48cD48c3Ryb25nPlRoZXJhcHkgYWRoZXJlbmNlOjwvc3Ryb25nPiBBZGRyZXNzZWQgdGhlIGNoYWxsZW5nZXMgeW91bmdlciBwYXRpZW50cyBmYWNlIHdpdGggcmVzcG9uc2liaWxpdHkgYW5kIGNvbnNpc3RlbmN5IGluIHRoZXJhcHksIGluZmx1ZW5jaW5nIG91ciBkZXNpZ24gZm9yIGEgbW9yZSBhY2Nlc3NpYmxlIHNvbHV0aW9uLjwvcD5cclxuXHJcbjxwPjxzdHJvbmc+R2VuZSB0aGVyYXB5IGxpbWl0YXRpb25zOjwvc3Ryb25nPiBIZXIgaW5zaWdodHMgaGVscGVkIHVzIHJlYWxpemUgdGhhdCB3aGlsZSBnZW5lIHRoZXJhcHkgaXMgaW1wYWN0ZnVsLCBpdCBhbG9uZSBpcyBub3QgZW5vdWdoLjwvcD5cclxuXHJcbjxwPjxzdHJvbmc+SG9saXN0aWMgYXBwcm9hY2g6PC9zdHJvbmc+IEludGVncmF0ZWQgcGh5c2lvdGhlcmFweSBpbnRvIG91ciB0cmVhdG1lbnQgcGxhbiwgZW5zdXJpbmcgYSBtb3JlIGNvbXByZWhlbnNpdmUgYW5kIHBhdGllbnQtY2VudGVyZWQgYXBwcm9hY2ggdG8gQ0YgY2FyZS48L3A+XHJcblxyXG4gICAgPC9Db2xsYXBzaWJsZT5cclxuICAgKSBcclxufVxyXG5mdW5jdGlvbiBBYWx5c2VPbGFyaXUoKXtcclxuICAgIGNvbnN0IHtnb1RvUGFnZXNBbmRPcGVuVGFifSA9IHVzZU5hdmlnYXRpb24oKTtcclxuICAgcmV0dXJuKFxyXG4gICAgPENvbGxhcHNpYmxlIHRpdGxlPVwiUHJvZi4gRHIuIE9sYXJpdSBcdTIwMTMgUGh5c2ljaWFuIGFuZCBDbGluaWNhbCBDRiBFeHBlcnQgXCIgaWQ9XCJvbGFyaXVhbmFseXNlQ1wiPlxyXG4gICAgICAgIDxwPlByb2YuIE9sYXJpb3UncyBjbGluaWNhbCBpbnNpZ2h0cyBzaGFwZWQgb3VyIHByb2plY3QgYnkgZW1waGFzaXppbmcgdGhlIGNvbXBsZXhpdGllcyBvZiBDRiB0cmVhdG1lbnQgYW5kIHRoZSBlbW90aW9uYWwgYnVyZGVuIG9uIHBhdGllbnRzIGFuZCBmYW1pbGllcy4gSGlzIGZvY3VzIG9uIGVhcmx5IGRpYWdub3NpcywgaW5mZWN0aW9uIHJpc2tzLCBhbmQgcHN5Y2hvc29jaWFsIGltcGFjdHMgbGVkIHVzIHRvIGRlc2lnbiBhIHNvbHV0aW9uIHRoYXQgcmVkdWNlcyB0aGUgbG9uZy10ZXJtIGNhcmUgYnVyZGVuPC9wPlxyXG4gICAgICAgIDxwPkZvbGxvd2luZyBoaXMgYWR2aWNlLCB3ZSBjb25zdWx0ZWQgPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VzQW5kT3BlblRhYiAoJ3BzeWNob2wnLCAnL2h1bWFuLXByYWN0aWNlcycpfT4gcHN5Y2hvbG9naXN0cyA8L2E+IHRvIGludGVncmF0ZSBtZW50YWwgaGVhbHRoIGNvbnNpZGVyYXRpb25zIGFuZCB0YWlsb3JlZCBvdXIgdGhlcmFweSB0byBhZGRyZXNzIGRpZmZlcmVudCBkaXNlYXNlIHNldmVyaXRpZXMuIFByb2YuIE9sYXJpdSBhbHNvIGhpZ2hsaWdodGVkIHJhY2lhbCBhbmQgZ2xvYmFsIGRpc3Bhcml0aWVzIGluIENGIGNhcmUsIHByb21wdGluZyB1cyB0byBleHBsb3JlIHRoZXNlIGlzc3VlcyB0aHJvdWdoIGZ1cnRoZXIgcmVzZWFyY2ggYW5kIGludGVydmlld3MuIDwvcD5cclxuICAgICAgICA8cD4gPC9wPlxyXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9pbnRlZ3JhdGVkLWh1bWFuLXByYWN0aWNlcy9vbi1vdXItd2F5LXRvLWludGVydmlldy1wc3ljaG9sb2dpc3RzLndlYnBcIiBhbHQ9XCJcIi8+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgICAgPGZpZ3VyZT4gXHJcbiAgICAgICAgICAgICAgICA8aWZyYW1lIHRpdGxlPVwiQmllbGVmZWxkLUNlQmlUZWM6IEludGVydmlldyB3aXRoIERyLiBDcmlzdGlhbi1HYWJyaWVsIE9sYXJpdSAoMjAyNCkgW0dlcm1hbl1cIiBoZWlnaHQ9XCIzMTBweFwiIHdpZHRoPVwiNTAwcHhcIiBzcmM9XCJodHRwczovL3ZpZGVvLmlnZW0ub3JnL3ZpZGVvcy9lbWJlZC8wZWE3NmI5Yy05YTBlLTRmNTgtODIzMC0zMWFiNmIwZTA4ZDlcIiBzYW5kYm94PVwiYWxsb3ctc2FtZS1vcmlnaW4gYWxsb3ctc2NyaXB0cyBhbGxvdy1wb3B1cHMgYWxsb3ctZm9ybXNcIj48L2lmcmFtZT4gXHJcbiAgICAgICAgICAgICAgICA8L2ZpZ3VyZT5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPHA+SGlzIGd1aWRhbmNlIG9uIGJhbGFuY2luZyB0cmVhdG1lbnQgZWZmZWN0aXZlbmVzcyB3aXRoIGNvc3QgYW5kIG92ZXJtZWRpY2F0aW9uIGNvbmNlcm5zIGVuc3VyZWQgb3VyIHByb2plY3QgcmVtYWluZWQgcGF0aWVudC1jZW50ZXJlZCBhbmQgcHJhY3RpY2FsLiBXZSBhbHNvIGV4cGFuZGVkIG91ciBvdXRyZWFjaCBlZmZvcnRzLCByYWlzaW5nIENGIGF3YXJlbmVzcyBhbmQgY29sbGVjdGluZyBwdWJsaWMgZGF0YSB0byBhbGlnbiBvdXIgcHJvamVjdCB3aXRoIGNvbW11bml0eSBuZWVkcy4gPC9wPiBcclxuICAgICAgICA8cD48c3Ryb25nPkNvbXBsZXhpdGllcyBvZiBDRiB0cmVhdG1lbnQ6PC9zdHJvbmc+IEVtcGhhc2l6ZWQgdGhlIG11bHRpZmFjZXRlZCBuYXR1cmUgb2YgQ0YgY2FyZSwgaW5jbHVkaW5nIHRoZSBlbW90aW9uYWwgYnVyZGVuIG9uIHBhdGllbnRzIGFuZCBmYW1pbGllcy48L3A+XHJcblxyXG48cD48c3Ryb25nPkVhcmx5IGRpYWdub3NpcyAmIGluZmVjdGlvbiByaXNrczo8L3N0cm9uZz4gRm9jdXNlZCBvbiB0aGUgaW1wb3J0YW5jZSBvZiBlYXJseSBkZXRlY3Rpb24gYW5kIG1hbmFnaW5nIGluZmVjdGlvbiByaXNrcywgd2hpY2ggc2hhcGVkIG91ciBzb2x1dGlvbiB0byByZWR1Y2UgdGhlIGxvbmctdGVybSBjYXJlIGJ1cmRlbi48L3A+XHJcblxyXG48cD48c3Ryb25nPk1lbnRhbCBoZWFsdGggaW50ZWdyYXRpb246PC9zdHJvbmc+IFJlY29tbWVuZGVkIGNvbnN1bHRpbmcgcHN5Y2hvbG9naXN0cywgbGVhZGluZyB1cyB0byBpbmNvcnBvcmF0ZSBtZW50YWwgaGVhbHRoIGNvbnNpZGVyYXRpb25zIGluIG91ciB0aGVyYXB5IGFuZCBkZXNpZ24gaXQgdG8gYWRkcmVzcyB2YXJ5aW5nIGRpc2Vhc2Ugc2V2ZXJpdGllcy48L3A+XHJcblxyXG48cD48c3Ryb25nPlJhY2lhbCBhbmQgZ2xvYmFsIGRpc3Bhcml0aWVzOjwvc3Ryb25nPiBIaWdobGlnaHRlZCBpbmVxdWl0aWVzIGluIENGIGNhcmUgYWNyb3NzIGRpZmZlcmVudCBwb3B1bGF0aW9ucywgcHJvbXB0aW5nIHVzIHRvIGV4cGxvcmUgdGhlc2UgaXNzdWVzIHRocm91Z2ggZnVydGhlciByZXNlYXJjaCBhbmQgaW50ZXJ2aWV3cy48L3A+XHJcblxyXG48cD48c3Ryb25nPkJhbGFuY2UgYmV0d2VlbiBlZmZlY3RpdmVuZXNzLCBjb3N0LCBhbmQgb3Zlcm1lZGljYXRpb246PC9zdHJvbmc+IEd1aWRlZCB1cyBpbiBjcmVhdGluZyBhIHRyZWF0bWVudCB0aGF0IGJhbGFuY2VzIGVmZmljYWN5IHdpdGggcHJhY3RpY2FsIGNvbnNpZGVyYXRpb25zIGxpa2UgY29zdCBhbmQgYXZvaWRpbmcgb3Zlcm1lZGljYXRpb24uPC9wPlxyXG5cclxuPHA+PHN0cm9uZz5QYXRpZW50LWNlbnRlcmVkIGZvY3VzOjwvc3Ryb25nPiBIaXMgZmVlZGJhY2sgZW5zdXJlZCB0aGF0IG91ciBwcm9qZWN0IHJlbWFpbmVkIGdyb3VuZGVkIGluIHJlYWwtd29ybGQgcGF0aWVudCBuZWVkcywgbWFraW5nIGl0IGJvdGggcHJhY3RpY2FsIGFuZCBhY2Nlc3NpYmxlLjwvcD5cclxuXHJcbjxwPjxzdHJvbmc+RXhwYW5kZWQgb3V0cmVhY2ggZWZmb3J0czo8L3N0cm9uZz4gRW5jb3VyYWdlZCB1cyB0byByYWlzZSBhd2FyZW5lc3MgYW5kIGNvbGxlY3QgcHVibGljIGRhdGEsIGhlbHBpbmcgYWxpZ24gb3VyIHByb2plY3Qgd2l0aCB0aGUgYnJvYWRlciBDRiBjb21tdW5pdHlcdTIwMTlzIG5lZWRzLjwvcD5cclxuXHJcbiAgICA8L0NvbGxhcHNpYmxlPlxyXG4gICApIFxyXG59XHJcblxyXG5mdW5jdGlvbiBBbmFseXNlTWF4KCl7XHJcbiAgICBjb25zdCB7Z29Ub1BhZ2VzQW5kT3BlblRhYn0gPSB1c2VOYXZpZ2F0aW9uKCk7XHJcbiAgICByZXR1cm4oXHJcbiAgICAgICAgPENvbGxhcHNpYmxlIHRpdGxlPVwiTWF4IEJlY2ttYW5uIFx1MjAxMyBDRiBQYXRpZW50IGFuZCBmZWxsb3cgc3R1ZGVudFwiIGlkPVwibWF4YW5hbHlzZUNcIj5cclxuICAgICAgICAgICAgPHA+TWF4J3MgaW5wdXQgYXMgYSAgQ3lzdGljIEZpYnJvc2lzIChDRikgcGF0aWVudCBkaXJlY3RseSBpbmZsdWVuY2VkIHNldmVyYWwga2V5IGFzcGVjdHMgb2Ygb3VyIHByb2plY3QuIEFmdGVyIGxlYXJuaW5nIGFib3V0IHRoZSBkYWlseSBjaGFsbGVuZ2VzIG9mIGxpdmluZyB3aXRoIENGLCB3ZSBhZGFwdGVkIG91ciBnZW5lIHRoZXJhcHkgYXBwcm9hY2ggdG8gdGFyZ2V0IHRoZSBsdW5ncywgYWxpZ25pbmcgb3VyIHRyZWF0bWVudCB3aXRoIHBhdGllbnQgbmVlZHMuIEhpcyBpbnNpZ2h0cyBvbiB0aGUgc2hvcnRjb21pbmdzIG9mIGV4aXN0aW5nIHRoZXJhcGllcyBzdHJlbmd0aGVuZWQgb3VyIGZvY3VzIG9uIGRldmVsb3BpbmcgYSBtb3JlIGVmZmVjdGl2ZSBzb2x1dGlvbi48L3A+XHJcbiAgICAgICAgICAgIDxwPkZvbGxvd2luZyBNYXgncyBmZWVkYmFjaywgd2UgaW1wbGVtZW50ZWQgY2hhbmdlcyB0byBvdXIgPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VzQW5kT3BlblRhYiAoJ1BhdGllbnQgTWF0dGVyc0gnLCAnL2NvbnRyaWJ1dGlvbicpfT4gaHlnaWVuZSBwbGFuPC9hPiwgZW5zdXJpbmcgaXQgbWVldHMgdGhlIG5lZWRzIG9mIGltbXVub2NvbXByb21pc2VkIGluZGl2aWR1YWxzIHdoaWNoIHdlIGxhdGVyIHByZXNlbnRlZCB0byA8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZXNBbmRPcGVuVGFiICgnam9oYW5uZnVua2UnLCAnL2h1bWFuLXByYWN0aWNlcycpfT4gTXIuIEpvaGFubmZ1bmtlPC9hPiwgY29udGFjdCBwZXJzb24gZm9yIHN0dWRlbnRzIHdpdGggZGlzYWJpbGl0aWVzIGFuZCBpbXBhaXJtZW50cyBhdCB0aGUgdW5pdmVyc2l0eSBvZiBiaWVsZWZlbGQsIGFuZCBjaGVja2VkIGl0cyBmZWFzaWJpbGl0eS4gTWF4XHUyMDE5cyBwZXJzcGVjdGl2ZSBhbHNvIHNoYXBlZCB0aGUgY29udGVudCBvZiBvdXIgb3V0cmVhY2ggbWF0ZXJpYWxzLCBoZWxwaW5nIHVzIHBvcnRyYXkgQ0YgaW4gYSBtb3JlIHJlYWxpc3RpYyBhbmQgcmVzcGVjdGZ1bCB3YXkgZHVyaW5nIHRoZSB3aG9sZSBwcm9qZWN0LiA8L3A+XHJcbiAgICAgICAgICAgIDxwPkFkZGl0aW9uYWxseSwgTWF4IGNvbnRyaWJ1dGVkIHRvIHRoZSBwcm9qZWN0IGJ5IGRvbmF0aW5nIGNlbGxzIGZvciBvdXIgZXhwZXJpbWVudHMsIHdoaWNoIGFsbG93ZWQgdXMgdG8gdGVzdCBvdXIgbW9kZWwgc3lzdGVtcyBlZmZlY3RpdmVseS4gT3VyIG9uZ29pbmcgY29tbXVuaWNhdGlvbiB3aXRoIGhpbSBoYXMgZW5zdXJlZCB0aGF0IHdlIHN0YXkgcGF0aWVudC1mb2N1c2VkIHRocm91Z2hvdXQsIGNvbnRpbnVhbGx5IHJlZmluaW5nIG91ciBhcHByb2FjaCBiYXNlZCBvbiBoaXMgZXhwZXJpZW5jZXMuIDwvcD5cclxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3dcIj4gXHJcbiAgICBcdCAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj4gXHJcbiAgICAgICAgICAgICAgICA8ZmlndXJlPiBcclxuICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9pbnRlZ3JhdGVkLWh1bWFuLXByYWN0aWNlcy9tYXgtemVsbHNwZW5kZS53ZWJwXCIgYWx0PVwiQ2VsbCBEb25hdGlvblwiLz4gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgIDwvZmlndXJlPiBcclxuICAgIFx0ICAgICAgICA8L2Rpdj4gXHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPiAgXHJcbiAgICAgICAgICAgICAgICAgICAgPGZpZ3VyZT4gXHJcbiAgICAgICAgICAgICAgICAgICAgPGlmcmFtZSB0aXRsZT1cIkJpZWxlZmVsZC1DZUJpVGVjOiBJbnRlcnZpZXcgd2l0aCBNYXggQmVja21hbm4gKDIwMjQpIFtFbmdsaXNoXVwiIHdpZHRoPVwiNTYwXCIgaGVpZ2h0PVwiMzE1XCIgc3JjPVwiaHR0cHM6Ly92aWRlby5pZ2VtLm9yZy92aWRlb3MvZW1iZWQvMTY1MDE4NjctYTY4Ny00MjA1LTk0OWEtNTFlYWQ4NzZlMTA5XCIgZnJhbWVCb3JkZXI9XCIwXCIgYWxsb3dGdWxsU2NyZWVuPXt0cnVlfSAgc2FuZGJveD1cImFsbG93LXNhbWUtb3JpZ2luIGFsbG93LXNjcmlwdHMgYWxsb3ctcG9wdXBzIGFsbG93LWZvcm1zXCI+PC9pZnJhbWU+IFxyXG4gICAgICAgICAgICAgICAgICAgIDwvZmlndXJlPiBcclxuICAgICAgICAgICAgICAgIDwvZGl2PiBcclxuICAgICAgICAgICAgPC9kaXY+IFxyXG4gICAgICAgICAgICA8ZGl2PlxyXG4gICAgICAgICAgICA8cD48c3Ryb25nPkludmFsdWFibGUgZmlyc3QtaGFuZCBpbnNpZ2h0czo8L3N0cm9uZz4gUHJvdmlkZWQgZGlyZWN0IGV4cGVyaWVuY2Ugb2YgbGl2aW5nIHdpdGggQ0YsIHNoYXBpbmcgb3VyIHByb2plY3QuPC9wPlxyXG5cclxuPHA+PHN0cm9uZz5IeWdpZW5lIGFuZCBtZWRpY2FsIG5lZWRzOjwvc3Ryb25nPiBIaWdobGlnaHRlZCB0aGUgaW1wb3J0YW5jZSBvZiBjb25zdGFudCBoeWdpZW5lLCBmcmVxdWVudCBtZWRpY2FsIGNoZWNrdXBzLCBhbmQgdGhlIHZhcmlhYmlsaXR5IGluIENGIHN5bXB0b21zLjwvcD5cclxuXHJcbjxwPjxzdHJvbmc+TmVlZCBmb3IgZmxleGlibGUgc29sdXRpb25zOjwvc3Ryb25nPiBTdHJlc3NlZCB0aGUgbmVlZCBmb3IgcGF0aWVudC1jZW50ZXJlZCwgYWRhcHRhYmxlIHRoZXJhcGllcy48L3A+XHJcblxyXG48cD48c3Ryb25nPkdlbmUgdGhlcmFweSBmb2N1czo8L3N0cm9uZz4gU3VwcG9ydGVkIG91ciBmb2N1cyBvbiBnZW5lIHRoZXJhcHkgdGFyZ2V0aW5nIHRoZSBsdW5ncyBkdWUgdG8gY3VycmVudCB0cmVhdG1lbnQgaW5hZGVxdWFjaWVzLjwvcD5cclxuXHJcbjxwPjxzdHJvbmc+T3V0cmVhY2ggaW5mbHVlbmNlOjwvc3Ryb25nPiBDb250aW51YWxseSBwcm92aWRlZCBmZWVkYmFjayBvbiBob3cgQ0YgaXMgcG9ydHJheWVkIGluIG91dHJlYWNoIG1hdGVyaWFscywgaW5mbHVlbmNpbmcgb3VyIGh5Z2llbmUgcGxhbiBhbmQgcHJlc2VudGF0aW9uIHZpZGVvLjwvcD5cclxuXHJcbjxwPjxzdHJvbmc+RGVlcGVuZWQgZW1vdGlvbmFsIHVuZGVyc3RhbmRpbmc6PC9zdHJvbmc+IEhlbHBlZCB1cyBkZXZlbG9wIGVtb3Rpb25hbCBpbnRlbGxpZ2VuY2UgcmVnYXJkaW5nIHRoZSBidXJkZW5zIENGIHBhdGllbnRzIGZhY2UsIGVuaGFuY2luZyBvdXIgc2NpZW5jZSBjb21tdW5pY2F0aW9uIGVmZm9ydHMuPC9wPlxyXG5cclxuPHA+PHN0cm9uZz5UaGVyYXB5IGFsaWdubWVudDo8L3N0cm9uZz4gR3VpZGVkIHVzIGluIGZvY3VzaW5nIG91ciB0aGVyYXB5IG9uIHNwZWNpZmljIENGIG11dGF0aW9ucywgZW5zdXJpbmcgYSBodW1hbi1jZW50ZXJlZCBhcHByb2FjaC48L3A+XHJcblxyXG48cD48c3Ryb25nPkNvbW11bml0eSBhY2Nlc3M6PC9zdHJvbmc+IFByb3ZpZGVkIGFjY2VzcyB0byB2YXJpb3VzIENGIGNvbW11bml0aWVzLCBpbmZsdWVuY2luZyB0aGUgZGlyZWN0aW9uIG9mIG91ciBwcm9qZWN0LjwvcD5cclxuXHJcbjxwPjxzdHJvbmc+Q2VsbCBkb25hdGlvbjo8L3N0cm9uZz4gRG9uYXRlZCBjZWxscyBmb3IgY3J1Y2lhbCBtb2RlbCBleHBlcmltZW50czsgd2Ugc3VjY2Vzc2Z1bGx5IGN1bHR1cmVkIHRoZXNlIGNlbGxzIGZvciB0ZXN0aW5nLjwvcD5cclxuXHJcbjxwPjxzdHJvbmc+T25nb2luZyBjb2xsYWJvcmF0aW9uOjwvc3Ryb25nPiBSZWd1bGFyIGZlZWRiYWNrLCBpbmNsdWRpbmcgb24gYXNwZWN0cyBsaWtlIGh5Z2llbmUgcHJvdG9jb2xzLCBlbnN1cmluZyB0aGUgcHJvamVjdCByZW1haW5zIGdyb3VuZGVkIGluIHJlYWwtd29ybGQgcGF0aWVudCBuZWVkcy48L3A+XHJcblxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICBcclxuICAgICAgICA8L0NvbGxhcHNpYmxlPlxyXG4gICAgKVxyXG59IiwgIlxyXG5pbXBvcnQgKiBhcyBHcmFwaCBmcm9tICcuLi8uLi9jb21wb25lbnRzL0dyYXBoJztcclxuaW1wb3J0IHsgSDQsIEg1IH0gZnJvbSAnLi4vLi4vY29tcG9uZW50cy9IZWFkaW5ncyc7XHJcbmltcG9ydCB7IENvbGxhcHNpYmxlIH0gZnJvbSBcIi4uLy4uL2NvbXBvbmVudHMvQ29sbGFwc2libGVcIjtcclxuaW1wb3J0IFByZUN5c2UgZnJvbSAnLi4vLi4vY29tcG9uZW50cy9wcmVjeXNlJztcclxuaW1wb3J0IHsgSFBjb25UYWJzIH0gZnJvbSAnLi9Db25jbGlzdWluJztcclxuaW1wb3J0IHsgdXNlTmF2aWdhdGlvbiB9IGZyb20gJy4uLy4uL3V0aWxzJztcclxuaW1wb3J0IHsgdXNlVGFiTmF2aWdhdGlvbiB9IGZyb20gJy4uLy4uL3V0aWxzL1RhYk5hdmlnYXRpb24nO1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIEhQRmVlZGJhY2soKXtcclxuICAgIGNvbnN0IHtnb1RvUGFnZVdpdGhUYWJBbmRTY3JvbGx9ID0gdXNlTmF2aWdhdGlvbigpOyBcclxuICAgIHVzZVRhYk5hdmlnYXRpb24oKTtcclxuICAgIHJldHVybihcclxuICAgICAgICA8ZGl2PlxyXG4gICAgICAgICAgICA8cD5UaHJvdWdoIG91ciBwcm9qZWN0LCB0aGUgaW5zaWdodHMgYW5kIGZlZWRiYWNrIGZyb20gdmFyaW91cyBzdGFrZWhvbGRlcnMgYW5kIGV4cGVydHMgcGxheWVkIGEgY3J1Y2lhbCByb2xlIGluIHNoYXBpbmcgYW5kIHJlZmluaW5nIG91ciBhcHByb2FjaC4gV2UgYWN0aXZlbHkgaW50ZWdyYXRlZCB0aGVpciBpbnB1dCBpbnRvIHRoZSBkZXNpZ24sIGV4ZWN1dGlvbiwgYW5kIHB1YmxpYyBlbmdhZ2VtZW50IGFzcGVjdHMgb2Ygb3VyIHdvcmssIGVuc3VyaW5nIGEgaHVtYW4tY2VudGVyZWQsIHNjaWVudGlmaWNhbGx5IHNvdW5kIHNvbHV0aW9uLiBCZWxvdywgd2UgaGlnaGxpZ2h0IGtleSBjb250cmlidXRvcnMgYW5kIGhvdyB0aGVpciBmZWVkYmFjayBpbXBhY3RlZCB0aGUgcHJvamVjdCdzIGRldmVsb3BtZW50IGFjcm9zcyBtdWx0aXBsZSBwaGFzZXMuIDwvcD5cclxuICAgICAgICAgICAgXHJcbiAgICAgICAgICAgIDxINCB0ZXh0PVwiT3VyIHN1cnZleXMgb24gIEN5c3RpYyBGaWJyb3NpcyBhbmQgZ2VuZSB0aGVyYXB5XCI+PC9IND5cclxuICAgICAgICAgICAgPHA+RnJvbSBvdXIgb3V0cmVhY2ggZWZmb3J0cywgd2UgbGVhcm5lZCB0aGF0IG1hbnkgcGVvcGxlIGxhY2sga25vd2xlZGdlIGFib3V0ICBDeXN0aWMgRmlicm9zaXMgYW5kIGRlc2lyZSBtb3JlIGVkdWNhdGlvbiBvbiB0aGUgc3ViamVjdC4gVGhlIHNhbWUgYXBwbGllcyB0byBnZW5lIHRoZXJhcHksIHdpdGggbW9zdCBpbmRpdmlkdWFscyBleHByZXNzaW5nIG9wZW5uZXNzIHRvIHRyZWF0bWVudCBvcHRpb25zLCB3aGljaCByZWluZm9yY2VzIG91ciBjb21taXRtZW50IHRvIHB1cnN1aW5nIHRoaXMgYXBwcm9hY2guIDwvcD5cclxuICAgICAgICAgICAgPHA+SG93ZXZlciwgd2UgcmVjb2duaXplIHRoZSBpbXBvcnRhbmNlIG9mIGhhbmRsaW5nIHRoZSBwdWJsaWMncyB0cnVzdCBhbmQgbGFjayBvZiBrbm93bGVkZ2UgcmVzcG9uc2libHkuIFdlIGFpbSB0byBlZHVjYXRlIHRoZSBjb21tdW5pdHkgYWJvdXQgc2FmZXR5IGFuZCBldGhpY2FsIGNvbnNpZGVyYXRpb25zIHN1cnJvdW5kaW5nIGdlbmUgdGhlcmFweS4gPC9wPlxyXG4gICAgICAgICAgICA8cD5JbiByZXNwb25zZSwgd2UgaGF2ZSBkZWNpZGVkIHRvIGltcGxlbWVudCBmZWVkYmFjayBieSBjcmVhdGluZyBpbmZvcm1hdGl2ZSBtYXRlcmlhbHMgc3VjaCBhcyBmbHllcnMgYW5kIHV0aWxpemluZyBwbGF0Zm9ybXMgbGlrZSA8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZVdpdGhUYWJBbmRTY3JvbGwoe3RhYklkOiAnbXVrb21vdmUnLCBzY3JvbGxUb0lkOiBcImNmLW1vbnRoXCIgLCBwYXRoOiAnL2h1bWFuLXByYWN0aWNlcyd9KX0+bXVrb01PVkU8L2E+LCA8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZVdpdGhUYWJBbmRTY3JvbGwoe3RhYklkOiAndGV1dG9ydWZ0Jywgc2Nyb2xsVG9JZDogXCJ0ZXVyb3J1ZnQtaGVhZGluZ1wiICwgcGF0aDogJy9odW1hbi1wcmFjdGljZXMnfSl9Plx1MjAxRFRldXRvIHJ1ZnQhXHUyMDFEPC9hPiwgPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VXaXRoVGFiQW5kU2Nyb2xsKHt0YWJJZDogJ2FrYWRlbWllJywgc2Nyb2xsVG9JZDogXCJzdHVkZW50LWFjYWRlbXktaGVhZGluZ1wiICwgcGF0aDogJy9odW1hbi1wcmFjdGljZXMnfSl9PlNjaFx1MDBGQ2xlcklubmVuYWthZGVtaWU8L2E+LCBhbmQgPGEgaHJlZj0naHR0cHM6Ly93d3cuaW5zdGFncmFtLmNvbS9pZ2VtLmJpZWxlZmVsZC8/aGw9ZGUnPnNvY2lhbCBtZWRpYTwvYT4gdG8gcmFpc2UgYXdhcmVuZXNzIGFuZCBwcm92aWRlIGVkdWNhdGlvbi4gPC9wPlxyXG4gICAgICAgICAgICA8cD48c3Ryb25nPkxhY2sgb2Yga25vd2xlZGdlIGFib3V0IENGOjwvc3Ryb25nPiBNYW55IHBlb3BsZSBhcmUgdW5mYW1pbGlhciB3aXRoICBDeXN0aWMgRmlicm9zaXMgYW5kIGV4cHJlc3NlZCBhIG5lZWQgZm9yIG1vcmUgZWR1Y2F0aW9uIG9uIHRoZSBzdWJqZWN0LjwvcD5cclxuXHJcbiAgICAgICAgICAgIDxwPjxzdHJvbmc+R2VuZSB0aGVyYXB5IG9wZW5uZXNzOjwvc3Ryb25nPiBNb3N0IGluZGl2aWR1YWxzIHNob3dlZCBvcGVubmVzcyB0byBnZW5lIHRoZXJhcHkgdHJlYXRtZW50cywgcmVpbmZvcmNpbmcgb3VyIGNvbW1pdG1lbnQgdG8gcHVyc3VpbmcgdGhpcyB0aGVyYXBldXRpYyBhcHByb2FjaC48L3A+XHJcblxyXG4gICAgICAgICAgICA8cD48c3Ryb25nPkJ1aWxkaW5nIHB1YmxpYyB0cnVzdDo8L3N0cm9uZz4gUmVjb2duaXplZCB0aGUgaW1wb3J0YW5jZSBvZiBoYW5kbGluZyB0aGUgcHVibGljJ3MgdHJ1c3QgYW5kIGFkZHJlc3NpbmcgdGhlIGtub3dsZWRnZSBnYXAgYWJvdXQgZ2VuZSB0aGVyYXB5IGluIGEgcmVzcG9uc2libGUgYW5kIHRyYW5zcGFyZW50IG1hbm5lci48L3A+XHJcblxyXG4gICAgICAgICAgICA8cD48c3Ryb25nPkVkdWNhdGlvbiBhbmQgZXRoaWNhbCBjb25zaWRlcmF0aW9uczo8L3N0cm9uZz4gQ29tbWl0dGVkIHRvIGVkdWNhdGluZyB0aGUgcHVibGljIG9uIHNhZmV0eSBhbmQgZXRoaWNhbCBhc3BlY3RzIG9mIGdlbmUgdGhlcmFweSB0byBmb3N0ZXIgdW5kZXJzdGFuZGluZyBhbmQgdHJ1c3QuPC9wPlxyXG5cclxuICAgICAgICAgICAgPHA+PHN0cm9uZz5JbXBsZW1lbnRhdGlvbiBvZiBmZWVkYmFjazo8L3N0cm9uZz4gQ3JlYXRlZCBpbmZvcm1hdGl2ZSBtYXRlcmlhbHMgKGZseWVycykgYW5kIGV4cGFuZGVkIG91dHJlYWNoIHRocm91Z2ggcGxhdGZvcm1zIGxpa2UgTXVrbyBNb3ZlLCBUZXV0byBydWZ0LCBTY2hcdTAwRkNsZXJJbm5lbmFrYWRlbWllLCBhbmQgc29jaWFsIG1lZGlhIHRvIGluY3JlYXNlIGF3YXJlbmVzcyBhbmQgcHJvdmlkZSBlZHVjYXRpb24uPC9wPlxyXG5cclxuICAgICAgICAgICAgPGRpdj5cclxuICAgICAgICAgICAgICAgIDxDb2xsYXBzaWJsZSBpZD1cImNvbGxhcHNpYmxlMVwiIG9wZW49e2ZhbHNlfSB0aXRsZT1cIkZ1bGwgcmVzdWx0cyBvZiBvdXIgc3VydmV5c1wiPlxyXG4gICAgICAgICAgICAgICAgPHA+IFdlIGFyZSBwcm91ZCBvZiBvdXIgc3VydmV5cyBvbiBnZW5lIHRoZXJhcHkgYW5kICBDeXN0aWMgRmlicm9zaXMgKENGKSwgd2hpY2ggZXhwbG9yZSBrbm93bGVkZ2UgYWJvdXQgdGhlIGRpc2Vhc2UgYW5kIHdpbGxpbmduZXNzIHRvIGVtYnJhY2UgZ2VuZSBcclxuICAgICAgICAgICAgICAgICAgICB0aGVyYXB5IGFzIGEgcG90ZW50aWFsIHRyZWF0bWVudC4gU2luY2Ugd2Ugd2FudGVkIHRvIGRpZmZlcmVudGlhdGUgYmV0d2VlbiB0aGUgZ2VuZXJhbCBwdWJsaWMgYW5kIGFmZmVjdGVkIENGIHBhdGllbnRzLCB3ZSBjcmVhdGVkIHR3byBkaWZmZXJlbnQgXHJcbiAgICAgICAgICAgICAgICAgICAgc3VydmV5cy4gMTg3IHBlb3BsZSBwYXJ0aXBpcGF0ZWQgaW4gdGhlIHN1cnZleSBmb3IgdGhlIGdlbmVyYWwgcHVibGljIGFuZCAxODUgcGVvcGxlIHBhcnRpY2lwYXRlZCBpbiB0aGUgc3VydmV5IGZvciBwYXRpZW50cyBhbmQgbmV4dCBvZiBraW4uPC9wPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvdyBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSdyb3cgZ3JhcGhzJyA+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxHcmFwaC5Ib3dPZnRlblRyZWF0bWVudGF0aWVudHMvPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxHcmFwaC5PcGVuVG9HZW5lVGhlcmFweWF0aWVudHMvPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxHcmFwaC5Nb3JlSW5mb09uVGhlcmFweUJvdGgvPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93IFwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgICAgICAgICAgICA8cD5UaGUgbWFqb3JpdHkgb2YgcmVzcG9uZGVudHMgKDYyLjcwJSkgaW5kaWNhdGVkIHRoYXQgdGhleSBvciB0aGVpciByZWxhdGl2ZSByZXF1aXJlIG1lZGljYWwgdHJlYXRtZW50IG9yIHRoZXJhcHkgZGFpbHkuIFdlZWtseSB0cmVhdG1lbnQgd2FzIG5lY2Vzc2FyeSBmb3IgMTQuNTklLCB3aGlsZSA5LjczJSBuZWVkZWQgdGhlcmFweSBzZXZlcmFsIHRpbWVzIHBlciB3ZWVrLiBPbmx5IDYuNDklIHJlcG9ydGVkIG5lZWRpbmcgdHJlYXRtZW50IGVpdGhlciBtb250aGx5IG9yIHJhcmVseS4gVGhlIGhpZ2ggZnJlcXVlbmN5IG9mIGRhaWx5IHRyZWF0bWVudHMgaGlnaGxpZ2h0cyB0aGUgaGVhdnkgYnVyZGVuIG9mIG1hbmFnaW5nICBDeXN0aWMgRmlicm9zaXMgYW5kIHJlaW5mb3JjZXMgdGhlIHBvdGVudGlhbCBhcHBlYWwgb2YgZ2VuZSB0aGVyYXB5LCB3aGljaCBjb3VsZCByZWR1Y2UgdGhlIG5lZWQgZm9yIGNvbnN0YW50IG1lZGljYWwgaW50ZXJ2ZW50aW9uLiA8L3A+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+ICAgIFxyXG4gICAgICAgICAgICAgICAgICAgIDxwPkEgc2lnbmlmaWNhbnQgbWFqb3JpdHksIDc4LjcyJSwgaW5kaWNhdGVkIHRoYXQgdGhleSB3b3VsZCBiZSBvcGVuIHRvIGdlbmUgdGhlcmFweSBpZiBpdCBzaWduaWZpY2FudGx5IGltcHJvdmVkIHN5bXB0b21zLCB3aGlsZSBvbmx5IDEuNDIlIHNhaWQgbm8uIFRoaXMgb3ZlcndoZWxtaW5nIHN1cHBvcnQgYWxpZ25zIHdpdGggdGhlIGhvcGUgcGF0aWVudHMgaGF2ZSBmb3IgbGVzcyBpbnZhc2l2ZSBhbmQgbW9yZSBlZmZlY3RpdmUgdHJlYXRtZW50cy4gVGhpcyBhbHNvIHJlZmxlY3RzIHRoZSBwb3NzaWJpbGl0eSBvZiBnZW5lIHRoZXJhcHkgYmVjb21pbmcgYSBjZW50cmFsIHRyZWF0bWVudCBtZXRob2QsIGVzcGVjaWFsbHkgZ2l2ZW4gdGhlIGhlYXZ5IHRoZXJhcGV1dGljIGxvYWQgQ0YgcGF0aWVudHMgYWxyZWFkeSBjYXJyeS48L3A+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+IFxyXG4gICAgICAgICAgICAgICAgICAgIDxwPkEgdmFzdCBtYWpvcml0eSwgOTMuNDglLCBleHByZXNzZWQgaW50ZXJlc3QgaW4gbW9yZSBpbmZvcm1hdGlvbiBhYm91dCBnZW5lIHRoZXJhcHkuIFRoaXMgbWlycm9ycyB0aGUgZ2VuZXJhbCBwdWJsaWNcdTIwMTlzIGRlc2lyZSBmb3IgZnVydGhlciBlZHVjYXRpb24gYW5kIHN1Z2dlc3RzIHRoYXQgd2hpbGUgdGhlcmUgaXMgc3Ryb25nIHN1cHBvcnQgZm9yIGdlbmUgdGhlcmFweSwgcGVvcGxlIHN0aWxsIGZlZWwgdGhleSBsYWNrIHN1ZmZpY2llbnQga25vd2xlZGdlIHRvIG1ha2UgZnVsbHkgaW5mb3JtZWQgZGVjaXNpb25zLiBQYXRpZW50cyBlc3BlY2lhbGx5IGVtcGhhc2l6ZWQgdGhlIGltcG9ydGFuY2Ugb2Ygc2FmZXR5IGFuZCBsb25nLXRlcm0gZWZmaWNhY3ksIGFyZWFzIHRoYXQgc2hvdWxkIGJlIGZvY2FsIHBvaW50cyBpbiBmdXR1cmUgY29tbXVuaWNhdGlvbnMuIDwvcD5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICBcclxuICAgICAgICAgICAgPGRpdj5cclxuICAgICAgICAgICAgICAgIDxINSB0ZXh0PVwiQ29uY2x1ZGluZyB0aG91Z2h0cyBcIj48L0g1PlxyXG4gICAgICAgICAgICAgICAgPHA+VGhlIHN1cnZleXMgd2l0aCBib3RoIHRoZSBnZW5lcmFsIHB1YmxpYyBhbmQgQ0YgcGF0aWVudHMgc2hvdyBwcm9taXNpbmcgb3Blbm5lc3MgdG93YXJkcyBnZW5lIHRoZXJhcHksIHRob3VnaCBjb25jZXJucyBhYm91dCBzYWZldHkgYW5kIGxvbmctdGVybSBlZmZlY3RzIHJlbWFpbi4gRW1vdGlvbmFsIHN0cmVzcyB3YXMgaGlnaGxpZ2h0ZWQgYXMgYSBncmVhdGVyIGJ1cmRlbiB0aGFuIHBoeXNpY2FsIHN5bXB0b21zLCByZWluZm9yY2luZyB0aGUgYXBwZWFsIG9mIGdlbmUgdGhlcmFweSB0byByZWR1Y2UgYm90aCBwaHlzaWNhbCBhbmQgZW1vdGlvbmFsIGNoYWxsZW5nZXMuIE1vc3QgcGF0aWVudHMgcmVxdWlyZSBkYWlseSBvciBmcmVxdWVudCB0aGVyYXBpZXMgbGlrZSBtZWRpY2F0aW9uLCBwaHlzaW90aGVyYXB5LCBhbmQgaW5oYWxhdGlvbiwgbWFraW5nIGEgbGVzcyBmcmVxdWVudCBvciBldmVuIG9uZS10aW1lIGdlbmUgdGhlcmFweSwgYXMgcHJvcG9zZWQgaW4gb3VyIHJlc2VhcmNoLCBoaWdobHkgYXR0cmFjdGl2ZS4gUGFydGljaXBhbnRzIGFkZGVkIGNvbW1lbnRzIHN1Y2ggYXMgPHN0cm9uZz5cdTIwMUNUaGUgZHJlYW0gb2YgaGVhbGluZyBzdGlsbCBleGlzdHMhXHUyMDFEPC9zdHJvbmc+LCBlbmNvdXJhZ2luZyB1cyBpbiBvdXIgcmVzZWFyY2guPC9wPlxyXG4gICAgICAgICAgICAgICAgPHA+Qm90aCBncm91cHMgYXJlIHJlYWR5IGZvciBnZW5lIHRoZXJhcHksIHdpdGggcGF0aWVudHMgc2hvd2luZyBmZXdlciBcIm5vIGNvbmNlcm5zLFwiIGxpa2VseSBkdWUgdG8gdGhlaXIgZmFtaWxpYXJpdHkgd2l0aCByaXNrcyBhbmQgb2ZmLXRhcmdldCBlZmZlY3RzLiBUaGlzIHVuZGVyc2NvcmVzIHRoZSBpbXBvcnRhbmNlIG9mIG91ciBmb2N1cyBvbiBzYWZldHkgYW5kIHByZWNpc2lvbiB0byBtaW5pbWl6ZSByaXNrcy4gT3VyIHJlc2VhcmNoIGlzIGRlc2lnbmVkIHRvIGFkZHJlc3MgdGhlc2UgY29uY2VybnMgdGhyb3VnaCB0YXJnZXRlZCBhcHByb2FjaGVzIFx1MjAxMyA8c3Ryb25nPndlIGFyZSA8UHJlQ3lzZS8+ITwvc3Ryb25nPjwvcD5cclxuICAgICAgICAgICAgICAgIDxwPkFkZGl0aW9uYWxseSwgdGhlcmVcdTIwMTlzIGEgY2xlYXIgZGVtYW5kIGZvciBtb3JlIGluZm9ybWF0aW9uLCBlc3BlY2lhbGx5IHZpYSBwbGF0Zm9ybXMgbGlrZSBUViwgc29jaWFsIG1lZGlhLCBhbmQgdGhlIGludGVybmV0LiBUYXJnZXRlZCBlZHVjYXRpb25hbCBjYW1wYWlnbnMgdGhyb3VnaCB0aGVzZSBjaGFubmVscyB3aWxsIGJlIGNydWNpYWwgdG8gaW5jcmVhc2UgYXdhcmVuZXNzIGFuZCB1bmRlcnN0YW5kaW5nLCBoZWxwaW5nIHRvIGJ1aWxkIG9uIHRoZSBleGlzdGluZyBvcHRpbWlzbSBhbmQgZm9zdGVyIGdyZWF0ZXIgYWNjZXB0YW5jZSBvZiBnZW5lIHRoZXJhcHksIGxpa2Ugd2UgZG8gaW4gb3VyIHZhcmlvdXMgcHVibGljIG91dHJlYWNoIGVmZm9ydHMgZm9yIHNjaWVuY2UgY29tbXVuaWNhdGlvbi48L3A+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8SDUgdGV4dD1cIkRldGFpbGVkIEFuYWx5c2lzXCI+PC9INT5cclxuICAgICAgICAgICAgPGRldGFpbHM+XHJcbiAgICAgICAgICAgICAgICA8c3VtbWFyeT5DbGljayB0byBzZWU8L3N1bW1hcnk+XHJcbiAgICAgICAgICAgICAgICA8RGV0YWlsZWRBbmFseXNpcy8+XHJcbiAgICAgICAgICAgIDwvZGV0YWlscz5cclxuXHJcbiAgICAgICAgICAgICAgICA8L0NvbGxhcHNpYmxlPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPEg0IHRleHQ9XCJTdGFrZWhvbGRlciBBbmFseXNlc1wiPjwvSDQ+XHJcbiAgICAgICAgICAgIDxIUGNvblRhYnMvPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgKVxyXG59XHJcblxyXG5cclxuZnVuY3Rpb24gRGV0YWlsZWRBbmFseXNpcygpe1xyXG5cclxuICAgIHJldHVybihcclxuICAgICAgICA8PlxyXG4gICAgICAgIFxyXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPSdyb3cnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0ncm93Jz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSdjb2wnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPEdyYXBoLldob0FmZmVjdGVkYXRpZW50cy8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSdjb2wtNCc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8R3JhcGguSG93RGlkWW91TGVhcm5QdWJsaWMvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0nY29sJz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxHcmFwaC5IZWFyZE9mQ0ZQdWJsaWMvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0ncm93Jz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD41Ni43NiUgb2YgcmVzcG9uZGVudHMgcmVwb3J0ZWQgdGhhdCB0aGV5IGFyZSByZWxhdGVkIHRvIHNvbWVvbmUgd2l0aCBDRiwgd2hpbGUgNDMuMjQlIHN0YXRlZCB0aGV5IGFyZSBhZmZlY3RlZCBieSBDRiB0aGVtc2VsdmVzLiBUaGlzIGxpa2VseSByZWZsZWN0cyB0aGUgZmFjdCB0aGF0IG1hbnkgcGFyZW50cyBjb21wbGV0ZWQgdGhlIHN1cnZleSBvbiBiZWhhbGYgb2YgdGhlaXIgY2hpbGRyZW4sIGFzIENGIGlzIHR5cGljYWxseSBkaWFnbm9zZWQgYXQgYSB5b3VuZyBhZ2UuIFRoZSBoaWdoIGludm9sdmVtZW50IG9mIHBhcmVudHMgdW5kZXJzY29yZXMgaG93IHRoZSBkaXNlYXNlIGltcGFjdHMgbm90IGp1c3QgdGhlIHBhdGllbnRzIHRoZW1zZWx2ZXMgYnV0IGFsc28gdGhlaXIgZmFtaWxpZXMsIHdobyBhcmUgZGVlcGx5IGludm9sdmVkIGluIHRoZSBkYXktdG8tZGF5IG1hbmFnZW1lbnQgb2YgQ0YuIFRoaXMgaGlnaGxpZ2h0cyB0aGUgaW1wb3J0YW5jZSBvZiBjb25zaWRlcmluZyBib3RoIHRoZSBwZXJzcGVjdGl2ZXMgb2YgeW91bmcgcGF0aWVudHMgYW5kIHRoZWlyIGZhbWlsaWVzIHdoZW4gZGlzY3Vzc2luZyBnZW5lIHRoZXJhcHkgYW5kIENGIHRyZWF0bWVudHMsIGFzIHBhcmVudHMgb2Z0ZW4gcGxheSBhIGNyaXRpY2FsIHJvbGUgaW4gZGVjaXNpb24tbWFraW5nIHJlZ2FyZGluZyBuZXcgdHJlYXRtZW50IG9wdGlvbnMuPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPiBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD44Mi44OSUgb2YgcmVzcG9uZGVudHMgaGF2ZSBoZWFyZCBvZiAgQ3lzdGljIEZpYnJvc2lzLCB3aGlsZSAxNy4xMSUgaGFkIG5vdC4gVGhlIGhpZ2ggbGV2ZWwgb2YgYXdhcmVuZXNzIGFib3V0IENGIHN1Z2dlc3RzIHRoYXQgdGhlIGdlbmVyYWwgcHVibGljIGlzIHJlbGF0aXZlbHkgaW5mb3JtZWQgYWJvdXQgdGhlIGNvbmRpdGlvbiwgcG9zc2libHkgZHVlIHRvIHRoZSB2aXNpYmlsaXR5IG9mIHRoZSBkaXNlYXNlIHRocm91Z2ggbWVkaWEsIGhlYWx0aCBjYW1wYWlnbnMsIG9yIHBlcnNvbmFsIGNvbm5lY3Rpb25zIHRvIGFmZmVjdGVkIGluZGl2aWR1YWxzLiBIb3dldmVyLCB0aGUgMTclIHVuZmFtaWxpYXIgd2l0aCBDRiBpbmRpY2F0ZXMgdGhhdCBmdXJ0aGVyIG91dHJlYWNoIGlzIG5lY2Vzc2FyeSwgcGFydGljdWxhcmx5IGZvY3VzaW5nIG9uIHRoaXMgZGVtb2dyYXBoaWMgdG8gc3ByZWFkIGtub3dsZWRnZSBhYm91dCB0aGUgZGlzZWFzZSBhbmQgcG90ZW50aWFsIHRyZWF0bWVudHMsIGluY2x1ZGluZyBnZW5lIHRoZXJhcHkuIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD5UaGUgbWFqb3JpdHkgb2YgcmVzcG9uZGVudHMgKDQ0LjE3JSkgbGVhcm5lZCBhYm91dCBDRiB0aHJvdWdoIG1lZGlhIGNoYW5uZWxzLCBzdWNoIGFzIHRlbGV2aXNpb24sIG5ld3MsIG9yIHRoZSBpbnRlcm5ldC4gT3RoZXIgc2lnbmlmaWNhbnQgc291cmNlcyBvZiBpbmZvcm1hdGlvbiBpbmNsdWRlIGZhbWlseSBhbmQgZnJpZW5kcyAoMjUuMTUlKSwgYXMgd2VsbCBhcyBlZHVjYXRpb25hbCBpbnN0aXR1dGlvbnMgKDIwLjg2JSkuIEludGVyZXN0aW5nbHksIG9ubHkgMy42OCUgb2YgcmVzcG9uZGVudHMgbGVhcm5lZCBhYm91dCBDRiBmcm9tIGhlYWx0aGNhcmUgcHJvdmlkZXJzLCBzdWdnZXN0aW5nIHRoYXQgdGhlIGRpc2Vhc2UgaXMgbW9yZSBjb21tb25seSB1bmRlcnN0b29kIHRocm91Z2ggZXh0ZXJuYWwgc291cmNlcyByYXRoZXIgdGhhbiBkaXJlY3QgbWVkaWNhbCBlZHVjYXRpb24uIFRoaXMgcmVsaWFuY2Ugb24gbWVkaWEgYW5kIHBlcnNvbmFsIGNvbm5lY3Rpb25zIGhpZ2hsaWdodHMgdGhlIGltcG9ydGFuY2Ugb2YgYWNjdXJhdGUgYW5kIGFjY2Vzc2libGUgaW5mb3JtYXRpb24gaW4gdGhlIHB1YmxpYyBkb21haW4sIGVzcGVjaWFsbHkgd2hlbiBjb25zaWRlcmluZyB0aGUgaW50cm9kdWN0aW9uIG9mIGdlbmUgdGhlcmFweSBhcyBhIHRyZWF0bWVudCBvcHRpb24uIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSdyb3cnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0ncm93Jz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSdjb2wnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPEdyYXBoLkFnZURpYWdub3Npc2F0aWVudHMvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0nY29sJz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxHcmFwaC5Ib3dNdWNoRG9lc0l0QWZmZWN0WW91YXRpZW50cy8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSdjb2wnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPEdyYXBoLldoaWNoU3ltcHRvbXNhdGllbnRzLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J3Jvdyc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPjI2LjIzJSBvZiByZXNwb25kZW50cyBpbmRpY2F0ZWQgdGhhdCBDRiB3YXMgZGlhZ25vc2VkIGVpdGhlciB0aHJvdWdoIG5ld2Jvcm4gc2NyZWVuaW5nIG9yIGJldHdlZW4gdGhlIGFnZXMgb2YgMSBhbmQgMTAuIEFub3RoZXIgMjEuODYlIHJlcG9ydGVkIGRpYWdub3NpcyBhIGZldyBtb250aHMgYWZ0ZXIgYmlydGgsIGFuZCAxOC4wMyUgd2VyZSBkaWFnbm9zZWQgYWJvdXQgb25lIHdlZWsgYWZ0ZXIgYmlydGguIFRoaXMgaGlnaGxpZ2h0cyB0aGUgZWFybHkgZGV0ZWN0aW9uIG9mIENGLCBvZnRlbiByZXF1aXJpbmcgbGlmZWxvbmcgbWFuYWdlbWVudCwgd2hpY2ggY2FuIGJlIGVtb3Rpb25hbGx5IGNoYWxsZW5naW5nIGZvciBmYW1pbGllcy4gRWFybHkgZGlhZ25vc2lzIGluY3JlYXNlcyB0aGUgYXBwZWFsIG9mIHRyZWF0bWVudHMgbGlrZSBnZW5lIHRoZXJhcHksIHdoaWNoIGNvdWxkIG9mZmVyIGxvbmctdGVybSBiZW5lZml0cyB3aXRoIGZld2VyIGludGVydmVudGlvbnMuPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD40Mi4xNiUgb2YgcmVzcG9uZGVudHMgcmF0ZWQgdGhlIGltcGFjdCBvZiAgQ3lzdGljIEZpYnJvc2lzIG9uIGRhaWx5IGxpZmUgYXMgYSAzIG91dCBvZiA1LCBpbmRpY2F0aW5nIGEgbW9kZXJhdGUgZWZmZWN0LiBBZGRpdGlvbmFsbHksIDMyLjk3JSByYXRlZCB0aGUgaW1wYWN0IGFzIGEgMiwgd2hpbGUgMTIuNDMlIHJhdGVkIGl0IGFzIGEgNC4gT25seSA0LjMyJSBvZiByZXNwb25kZW50cyBmZWx0IHRoYXQgQ0YgaGFkIGEgdmVyeSBzdHJvbmcgaW1wYWN0IChyYXRpbmcgaXQgYSA1KSwgYW5kIDguMTElIHJhdGVkIGl0IGEgMSwgc3VnZ2VzdGluZyBsaXR0bGUgdG8gbm8gZGFpbHkgZWZmZWN0LiBUaGVzZSByZXN1bHRzIGluZGljYXRlIHRoYXQgZm9yIG1hbnkgcGF0aWVudHMgYW5kIGZhbWlsaWVzLCBDRiBoYXMgYSBub3RhYmxlIGJ1dCB2YXJpZWQgaW1wYWN0IG9uIGRhaWx5IGxpZmUsIHJlaW5mb3JjaW5nIHRoZSBpbXBvcnRhbmNlIG9mIHRyZWF0bWVudHMgbGlrZSBnZW5lIHRoZXJhcHkgdGhhdCBjb3VsZCBhbGxldmlhdGUgdGhlIGJ1cmRlbi4gPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD5UaGlzIGNoYXJ0IHNob3dzIHRoYXQgMjMuMTklIG9mIHJlc3BvbmRlbnRzIGlkZW50aWZpZWQgYWJkb21pbmFsIHBhaW4gYXMgdGhlIG1vc3QgZnJlcXVlbnQgc3ltcHRvbSwgZm9sbG93ZWQgYnkgY2hyb25pYyBjb3VnaCAoMTguOTUlKSBhbmQgZnJlcXVlbnQgbHVuZyBpbmZlY3Rpb25zICgxMy43MiUpLiBJbnRlcmVzdGluZ2x5LCBzeW1wdG9tcyBsaWtlIG11c2NsZSB3ZWFrbmVzcyAoMiUpIGFuZCBkZWxheWVkIGdyb3d0aCAoNi4yMyUpIHdlcmUgbGVzcyBjb21tb25seSByZXBvcnRlZC4gVGhlIGVtcGhhc2lzIG9uIGNocm9uaWMgcmVzcGlyYXRvcnkgYW5kIGdhc3Ryb2ludGVzdGluYWwgc3ltcHRvbXMgYWxpZ25zIHdpdGggQ0YgYmVpbmcgYSBtZXRhYm9saWMgZGlzZWFzZSBhZmZlY3RpbmcgdGhlIHdob2xlIGJvZHkgbGlrZSBleHBlcnRzIHN1Y2ggYXMgRHIuIE9sYXJpdSBleHBsYWluZWQgdG8gdXMsIHJlaW5mb3JjaW5nIHRoZSBuZWVkIGZvciBjb21wcmVoZW5zaXZlIHRyZWF0bWVudHMgbGlrZSBnZW5lIHRoZXJhcHkgdGhhdCB0YXJnZXQgbXVsdGlwbGUgYXNwZWN0cyBvZiB0aGUgZGlzZWFzZSBhdCB0aGUgY2VsbHVsYXIgbGV2ZWwuPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgIFxyXG5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0ncm93Jz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J3Jvdyc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0nY29sJz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxHcmFwaC5XaGljaFRoZXJhcHlEb1lvdVVzZWF0aWVudHMvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0nY29sJz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxHcmFwaC5Nb3N0U3RyZXNzZnVsRm9yUmVsYXRpdmVhdGllbnRzLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J3Jvdyc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPlRoZSBtb3N0IGNvbW1vbiB0aGVyYXBpZXMgdXNlZCBieSByZXNwb25kZW50cyBpbmNsdWRlZCBtZWRpY2F0aW9uICgyOS4yMCUpLCBwaHlzaW90aGVyYXB5ICgyNi4zMiUpLCBhbmQgaW5oYWxhdGlvbiB0aGVyYXB5ICgyNi42MyUpLiBUaGVzZSB0cmVhdG1lbnRzIGFyZSBwcm9taW5lbnRseSByZXByZXNlbnRlZCBpbiBDRiBjYXJlLCBidXQgdGhleSBhbHNvIHJlZmxlY3QgYSBidXJkZW5zb21lIHJlZ2ltZW4gdGhhdCByZXF1aXJlcyBjb25zdGFudCBtYW5hZ2VtZW50LiBUaGUgZnJlcXVlbmN5IHdpdGggd2hpY2ggcGF0aWVudHMgbXVzdCB1bmRlcmdvIHRoZXNlIHRyZWF0bWVudHMgbWF5IGluY3JlYXNlIHRoZWlyIGludGVyZXN0IGluIGdlbmUgdGhlcmFweSwgd2hpY2ggY291bGQgb2ZmZXIgYSBsZXNzIGRlbWFuZGluZyBvcHRpb24gd2l0aCBwb3RlbnRpYWxseSBsb25nZXItbGFzdGluZyByZXN1bHRzPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPlRoZSBzdXJ2ZXkgcmV2ZWFscyB0aGF0IDM2Ljc5JSBvZiByZXNwb25kZW50cyBpZGVudGlmaWVkIGVtb3Rpb25hbCBzdHJlc3MgYXMgdGhlIG1vc3Qgc3RyZXNzZnVsIGFzcGVjdCBvZiAgQ3lzdGljIEZpYnJvc2lzLCBjbG9zZWx5IGZvbGxvd2VkIGJ5IHBoeXNpY2FsIHN5bXB0b21zIGF0IDMyLjc4JS4gU29jaWFsIHJlc3RyaWN0aW9ucyB3ZXJlIG5vdGVkIGJ5IDE3LjczJSBvZiByZXNwb25kZW50cywgYW5kIGZpbmFuY2lhbCBidXJkZW4gd2FzIGEgY29uY2VybiBmb3IgMTEuMzclLiBPbmx5IDEuMzQlIGNpdGVkIG90aGVyIGZhY3RvcnMuIFRoZXNlIHJlc3VsdHMgc2hvdyB0aGF0IGVtb3Rpb25hbCBhbmQgcGh5c2ljYWwgY2hhbGxlbmdlcyBkb21pbmF0ZSB0aGUgc3RyZXNzb3JzIGZvciBwYXRpZW50cyBhbmQgZmFtaWxpZXMsIGhpZ2hsaWdodGluZyB0aGUgbmVlZCBmb3IgdHJlYXRtZW50cyBsaWtlIGdlbmUgdGhlcmFweSB0aGF0IGNvdWxkIHJlZHVjZSBib3RoIHRoZSBwaHlzaWNhbCBhbmQgZW1vdGlvbmFsIGJ1cmRlbnMgb2YgbWFuYWdpbmcgQ0YuIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICBcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J3Jvdyc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSdyb3cnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J2NvbCc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8R3JhcGguSGVhZHJvZkdlbmVUaGVyYXB5UGF0aWVudHMvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0nY29sJz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxHcmFwaC5IZWFkT2ZHZW5lVGhlcmFweVB1YmxpYy8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSdyb3cnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPkFtb25nIHRoaXMgZ3JvdXAsIDc2Ljc2JSBvZiByZXNwb25kZW50cyBoYWQgaGVhcmQgb2YgZ2VuZSB0aGVyYXB5LCB3aGljaCBpcyBhIGhpZ2hlciBhd2FyZW5lc3MgcmF0ZSB0aGFuIHNlZW4gaW4gdGhlIGdlbmVyYWwgcHVibGljIHN1cnZleS4gSG93ZXZlciwgMjMuMjQlIHJlbWFpbiB1bmZhbWlsaWFyIHdpdGggaXQsIHBvaW50aW5nIHRvIGEgbmVlZCBmb3IgZnVydGhlciBlZHVjYXRpb24uIFRoZSBoaWdoZXIgZmFtaWxpYXJpdHkgaGVyZSBjb3VsZCBiZSBhdHRyaWJ1dGVkIHRvIHRoZSBmYWN0IHRoYXQgcGF0aWVudHMgYW5kIHRoZWlyIGZhbWlsaWVzIGFyZSBtb3JlIGVuZ2FnZWQgd2l0aCBtZWRpY2FsIGFkdmFuY2VtZW50cyBkdWUgdG8gdGhlIHNldmVyZSBuYXR1cmUgb2YgQ0YuIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD5XaGVuIGFza2VkIGFib3V0IGdlbmUgdGhlcmFweSwgNjcuNTglIG9mIHJlc3BvbmRlbnRzIGluZGljYXRlZCBmYW1pbGlhcml0eSB3aXRoIHRoZSBjb25jZXB0LCB3aGlsZSAzMi40MiUgaGFkIG5vdCBoZWFyZCBvZiBpdC4gVGhpcyBkZW1vbnN0cmF0ZXMgYSBtb2RlcmF0ZSBsZXZlbCBvZiBhd2FyZW5lc3MsIGJ1dCBpdCBpcyBjbGVhciB0aGF0IGEgdGhpcmQgb2YgdGhlIHBvcHVsYXRpb24gcmVtYWlucyB1bmF3YXJlIG9mIGdlbmUgdGhlcmFweS4gVGhpcyBnYXAgaW4ga25vd2xlZGdlIHJlcHJlc2VudHMgYSBzaWduaWZpY2FudCBvcHBvcnR1bml0eSBmb3IgZWR1Y2F0aW9uYWwgZWZmb3J0cywgYXMgdGhlIGxhY2sgb2YgZmFtaWxpYXJpdHkgY291bGQgaW1wYWN0IHRoZSBhY2NlcHRhbmNlIGFuZCBzdXBwb3J0IGZvciBnZW5lIHRoZXJhcHkgYXMgYSB2aWFibGUgdHJlYXRtZW50IG9wdGlvbiBmb3IgQ0YuIFRoZSBjb21tZW50cyBzdWdnZXN0IHRoYXQgbWFueSBzZWUgZ2VuZSB0aGVyYXB5IGFzIGFuIGVtZXJnaW5nIGZpZWxkLCBidXQgdGhlcmUgaXMgc29tZSBjb25mdXNpb24gcmVnYXJkaW5nIGl0cyBwcmFjdGljYWwgYXBwbGljYXRpb25zLjwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICBcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J3Jvdyc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSdyb3cnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J2NvbCc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8R3JhcGguSG93V2VsbEluZm9ybWVkQWJvdXRDRlB1YmxpYy8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSdjb2wnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPEdyYXBoLldoYXRNZWFzdXJlc1B1YmxpYy8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSdyb3cnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPkluIHRlcm1zIG9mIGtub3dsZWRnZSBhYm91dCBDRiwgNTguNjAlIG9mIHJlc3BvbmRlbnRzIHN0YXRlZCB0aGF0IHRoZXkgYXJlIHNvbWV3aGF0IHdlbGwgaW5mb3JtZWQsIGFuZCBvbmx5IDIxLjY2JSBmZWx0IGV4dHJlbWVseSB3ZWxsIGluZm9ybWVkIChzZWUgZGlhZ3JhbSAyKS4gQSBzbWFsbGVyIHBvcnRpb24sIDEzLjM4JSwgaW5kaWNhdGVkIHRoYXQgdGhleSBhcmUgbm90IHZlcnkgaW5mb3JtZWQsIGFuZCA2LjM3JSBhZG1pdHRlZCB0byBiZWluZyBub3QgaW5mb3JtZWQgYXQgYWxsLiBUaGlzIHN1Z2dlc3RzIHRoYXQgd2hpbGUgQ0YgaXMgcmVjb2duaXplZCBieSBhIGxhcmdlIHBvcnRpb24gb2YgdGhlIHB1YmxpYywgZGVlcGVyIGtub3dsZWRnZSBhYm91dCB0aGUgZGlzZWFzZSBpcyBsYWNraW5nLiBUaGF0IGlzIHdoeSB3ZSBhcmUgZG9pbmcgc2NpZW5jZSBjb21tdW5pY2F0aW9uIGF0IG91ciB2YXJpb3VzIHB1YmxpYyBvdXRyZWFjaCBldmVudHMhIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD5SZXNwb25kZW50cyB3ZXJlIGFza2VkIHdoYXQgYWN0aW9ucyBjb3VsZCBiZSB0YWtlbiB0byBpbXByb3ZlIENGIGF3YXJlbmVzcyAoc2VlIGRpYWdyYW0gNCkuIFRoZSBtb3N0IHBvcHVsYXIgb3B0aW9uLCBjaG9zZW4gYnkgMjIuODclLCB3YXMgcHVibGljaXR5IGNhbXBhaWducyBvbiBUViwgcmFkaW8sIGFuZCBvdGhlciBtYXNzIG1lZGlhIG91dGxldHMuIEluZm9ybWF0aW9uIGV2ZW50cyBhdCBzY2hvb2xzIGFuZCB1bml2ZXJzaXRpZXMgZm9sbG93ZWQgYXQgMTMuMjAlLCBhbG9uZyB3aXRoIGRvY3VtZW50YXJ5IGZpbG1zIGFuZCBzaG9ydCBtb3ZpZXMgYWJvdXQgbGlmZSB3aXRoIENGICgxNC4wMSUpLiBUaGVzZSBmaW5kaW5ncyBzdWdnZXN0IHRoYXQgdGhlIHB1YmxpYyBzZWVzIG1lZGlhIGFzIHRoZSBtb3N0IGVmZmVjdGl2ZSB3YXkgdG8gc3ByZWFkIGF3YXJlbmVzcywgYSBzdHJhdGVneSB0aGF0IGNvdWxkIGFsc28gYmUgZW1wbG95ZWQgdG8gZWR1Y2F0ZSBhYm91dCBnZW5lIHRoZXJhcHkuIFRoZSBwdWJsaWMgYXBwZWFycyB0byBmYXZvciB2aXN1YWwgYW5kIGFjY2Vzc2libGUgZm9ybWF0cywgd2hpY2ggY291bGQgYmUgdXNlZCB0byBoaWdobGlnaHQgdGhlIGJlbmVmaXRzIG9mIG5ldyB0cmVhdG1lbnRzIGxpa2UgZ2VuZSB0aGVyYXB5LiA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICBcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J3Jvdyc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSdyb3cnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J2NvbCc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8R3JhcGguQmFzaWNQb3NpdGlvbmF0aWVudHMvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0nY29sJz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxHcmFwaC5XaGF0Q29jZXJuc0Fib3V0R2VuZVRoZXJhcHlhdGllbnRzLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J2NvbCc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8R3JhcGguV2hhdENvY2VybnNBYm91dEdlbmVUaGVyYXB5UHVibGljLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J3Jvdyc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPlRoZSBzdXJ2ZXkgcmV2ZWFscyB0aGF0IDM1LjAwJSBvZiByZXNwb25kZW50cyBoYWQgYSB2ZXJ5IHBvc2l0aXZlIHZpZXcgb2YgZ2VuZSB0aGVyYXB5LCBhbmQgMzAuMDAlIHJhdGVkIGl0IGEgNCBvdXQgb2YgNSAoc2VlIGRpYWdyYW0gMjApLiBPbmx5IDUuNzElIHJhdGVkIGl0IGEgMiBvciBsb3dlci4gVGhlIG92ZXJhbGwgcG9zaXRpdml0eSBzdWdnZXN0cyB0aGF0IG1hbnkgcGF0aWVudHMgYW5kIGZhbWlsaWVzIGFyZSBob3BlZnVsIGFib3V0IHRoZSBwb3RlbnRpYWwgb2YgZ2VuZSB0aGVyYXB5LCBwZXJoYXBzIGJlY2F1c2Ugb2YgdGhlaXIgZmFtaWxpYXJpdHkgd2l0aCB0aGUgbGltaXRhdGlvbnMgb2YgY3VycmVudCB0cmVhdG1lbnRzLiBUaGlzIG9wdGltaXNtIGNvdWxkIGJlIGxldmVyYWdlZCB0byBzdXBwb3J0IGZ1dHVyZSBjbGluaWNhbCB0cmlhbHMgb3IgZWR1Y2F0aW9uYWwgaW5pdGlhdGl2ZXMuPC9wPiAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPkNvbmNlcm5zIGFib3V0IGdlbmUgdGhlcmFweSBwcmltYXJpbHkgcmV2b2x2ZWQgYXJvdW5kIHNhZmV0eSBhbmQgc2lkZSBlZmZlY3RzIGFuZCBsb25nLXRlcm0gZWZmZWN0cyAoYm90aCA1OS40NiUpIChzZWUgZGlhZ3JhbSAyMikuIENvc3QgYW5kIGFjY2Vzc2liaWxpdHkgYWxzbyByZW1haW4gaW1wb3J0YW50IGlzc3VlcyBmb3IgMzIuNDMlIG9mIHJlc3BvbmRlbnRzLiBPbmx5IDAuNTQlIGV4cHJlc3NlZCBubyBjb25jZXJucywgc2hvd2luZyB0aGF0IHdoaWxlIHRoZXJlIGlzIG9wdGltaXNtLCB0aGVyZSBhcmUgc2lnbmlmaWNhbnQgZmVhcnMgdG8gYWRkcmVzcy4gVGhlc2UgY29uY2VybnMgd2VyZSBzaW1pbGFybHkgZXhwcmVzc2VkIGluIHRoZSBnZW5lcmFsIHB1YmxpYyBzdXJ2ZXkgYnV0IGFyZSBtb3JlIHByb25vdW5jZWQgYW1vbmcgcGF0aWVudHMsIGxpa2VseSBkdWUgdG8gdGhlaXIgZmlyc3RoYW5kIGV4cGVyaWVuY2Ugd2l0aCBsb25nLXRlcm0gdHJlYXRtZW50cy48L3A+ICAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD5UaGUgbW9zdCBjb21tb24gY29uY2Vybiwgc2hhcmVkIGJ5IDI4Ljc3JSBvZiByZXNwb25kZW50cywgd2FzIHJlbGF0ZWQgdG8gdGhlIHNhZmV0eSBhbmQgc2lkZSBlZmZlY3RzIG9mIGdlbmUgdGhlcmFweSwgZm9sbG93ZWQgYnkgbG9uZy10ZXJtIGVmZmVjdHMgKDI3Ljg1JSkgYW5kIGNvc3RzIG9yIGFjY2Vzc2liaWxpdHkgKDI0LjIwJSkgKHNlZSBkaWFncmFtIDkpLiBFdGhpY2FsIHF1ZXN0aW9ucyB3ZXJlIHJhaXNlZCBieSAxNC42MSUgb2YgcGFydGljaXBhbnRzLCB3aGlsZSBvbmx5IDQuNTclIGhhZCBubyBjb25jZXJucyBhdCBhbGwuIFRoZXNlIGNvbmNlcm5zIGVjaG8gY29tbWVudHMgbWFkZSBpbiBvdGhlciBwYXJ0cyBvZiB0aGUgc3VydmV5LCB3aGVyZSByZXNwb25kZW50cyBleHByZXNzZWQgaW50ZXJlc3QgaW4gbGVhcm5pbmcgbW9yZSBhYm91dCB0aGUgc2FmZXR5IHByb3RvY29scyBhbmQgcmVndWxhdG9yeSBtZWFzdXJlcyBzdXJyb3VuZGluZyBnZW5lIHRoZXJhcHkuIENsZWFybHksIGFkZHJlc3NpbmcgdGhlc2UgY29uY2VybnMgaW4gZnV0dXJlIHB1YmxpYyBlbmdhZ2VtZW50cyB3aWxsIGJlIGNyaXRpY2FsIHRvIGZvc3RlcmluZyB3aWRlciBhY2NlcHRhbmNlLiA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSdyb3cnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0ncm93Jz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSdjb2wnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPEdyYXBoLldoYXRDb3VsZEdlbmVUaGVyYXB5TWVhbkZvck1lZGljaW5lUHVibGljLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J2NvbCc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8R3JhcGguV291bGRZb3VEb0dlbmVUaGVyYXB5UHVibGljLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J2NvbCc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8R3JhcGguV2hhdEZvcm1Nb3JlSW5mb1B1YmxpYy8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSdyb3cnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD5OZWFybHkgaGFsZiAoNDkuNTklKSBvZiByZXNwb25kZW50cyBiZWxpZXZlIHRoYXQgZ2VuZSB0aGVyYXB5IHJlcHJlc2VudHMgYSBtYWpvciBhZHZhbmNlIGluIHRoZSB0cmVhdG1lbnQgb2YgZGlzZWFzZXMsIHdoaWxlIDQ3Ljk3JSBhY2tub3dsZWRnZWQgdGhhdCBnZW5lIHRoZXJhcHkgb2ZmZXJzIHNvbWUgcHJvZ3Jlc3MgYnV0IGFsc28gY2FycmllcyByaXNrcyAoc2VlIGRpYWdyYW0gNykuIExlc3MgdGhhbiAyJSBvZiByZXNwb25kZW50cyBleHByZXNzZWQgY29uY2VybiB0aGF0IGdlbmUgdGhlcmFweSBjb3VsZCBicmluZyBtb3JlIHJpc2tzIHRoYW4gYmVuZWZpdHMuIFRoaXMgb3ZlcmFsbCBwb3NpdGl2ZSBvdXRsb29rIG9uIGdlbmUgdGhlcmFweSBpcyBlbmNvdXJhZ2luZywgYnV0IGl0IGFsc28gdW5kZXJzY29yZXMgdGhlIG5lZWQgdG8gYWRkcmVzcyBjb25jZXJucyBhYm91dCBzYWZldHkgYW5kIGxvbmctdGVybSBlZmZlY3RzLCB3aGljaCB3ZXJlIG9mdGVuIG1lbnRpb25lZCBpbiB0aGUgY29tbWVudHMuIFRoZSBvcHRpbWlzbSBzaG93biBoZXJlIGNhbiBiZSBhIHN0cm9uZyBmb3VuZGF0aW9uIGZvciBwcm9tb3RpbmcgZ2VuZSB0aGVyYXB5LCBlc3BlY2lhbGx5IHdpdGggYXBwcm9wcmlhdGUgZWR1Y2F0aW9uIG9uIG1pdGlnYXRpbmcgcmlza3MuPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+QSBzdHJvbmcgbWFqb3JpdHksIDg1LjIyJSBvZiByZXNwb25kZW50cywgaW5kaWNhdGVkIHRoYXQgdGhleSB3b3VsZCBjb25zaWRlciBvcHRpbmcgZm9yIGdlbmUgdGhlcmFweSwgd2l0aCBvbmx5IDEuNzQlIHNheWluZyB0aGV5IHdvdWxkIG5vdCwgYW5kIDEzLjA0JSByZXNwb25kaW5nIHdpdGggXCJtYXliZS5cIiAoc2VlIGRpYWdyYW0gOCkuIFRoaXMgcmVzdWx0IGRlbW9uc3RyYXRlcyBjb25zaWRlcmFibGUgb3Blbm5lc3MgdG8gZ2VuZSB0aGVyYXB5IGFtb25nIHRoZSBwdWJsaWMsIHRob3VnaCB0aGUgbWlub3JpdHkgZXhwcmVzc2luZyBoZXNpdGF0aW9uIHN1Z2dlc3RzIHRoZXJlIGFyZSBsaW5nZXJpbmcgZG91YnRzLiBDb21tZW50cyBmcmVxdWVudGx5IG1lbnRpb25lZCBjb25jZXJucyBvdmVyIHNhZmV0eSBhbmQgbG9uZy10ZXJtIGVmZmVjdHMsIHN1Z2dlc3RpbmcgdGhhdCB0aGVzZSBpc3N1ZXMgbmVlZCB0byBiZSBhZGRyZXNzZWQgdG8gY29udmVydCBcIm1heWJlXCIgcmVzcG9uc2VzIGludG8gbW9yZSBjb25maWRlbnQgc3VwcG9ydCBmb3IgZ2VuZSB0aGVyYXB5LjwvcD4gICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPldoZW4gYXNrZWQgaG93IHRoZXkgd291bGQgcHJlZmVyIHRvIHJlY2VpdmUgbW9yZSBpbmZvcm1hdGlvbiwgMjIuNjIlIG9mIHJlc3BvbmRlbnRzIHNlbGVjdGVkIFRWIGRvY3VtZW50YXJpZXMgYW5kIHByb2dyYW1zIGFzIHRoZWlyIHByZWZlcnJlZCBtZWRpdW0sIHdoaWxlIDE2LjYzJSBleHByZXNzZWQgaW50ZXJlc3QgaW4gd2Vic2l0ZXMgYW5kIG9ubGluZSByZXNvdXJjZXMgKHNlZSBkaWFncmFtIDExKS4gVGhpcyBwcmVmZXJlbmNlIGZvciB2aXN1YWwgYW5kIG9ubGluZSBmb3JtYXRzIGFsaWducyB3aXRoIHRoZSBwdWJsaWNcdTIwMTlzIGdlbmVyYWwgcmVsaWFuY2Ugb24gbWVkaWEgZm9yIGxlYXJuaW5nIGFib3V0IENGIGFuZCBvdGhlciBtZWRpY2FsIHRvcGljcy4gU29jaWFsIG1lZGlhIGFuZCBvbmxpbmUgY29tbXVuaXRpZXMgKDE1Ljk2JSkgYWxzbyByYW5rZWQgaGlnaGx5LCBpbmRpY2F0aW5nIHRoYXQgZGlnaXRhbCBwbGF0Zm9ybXMgYXJlIGFuIGVmZmVjdGl2ZSB3YXkgdG8gcmVhY2ggYSBicm9hZCBhdWRpZW5jZS4gVGhlc2UgZmluZGluZ3MgY2FuIGd1aWRlIGZ1dHVyZSBlZmZvcnRzIHRvIGNyZWF0ZSBlbmdhZ2luZyBhbmQgaW5mb3JtYXRpdmUgY29udGVudCBhYm91dCBDRiBhbmQgZ2VuZSB0aGVyYXB5LjwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PjwvPlxyXG4gICAgKVxyXG59IiwgImltcG9ydCB7IG9wZW5DbGFzc2VzIH0gZnJvbSBcIi4uLy4uLy4uL3V0aWxzL29wZW5DbGFzc1wiO1xyXG5cclxuXHJcblxyXG5leHBvcnQgY29uc3QgSFAzbmV3ID0gKCkgPT4gKFxyXG4gIDxzdmdcclxuICAgIHZpZXdCb3g9XCIwIDAgMTI1NS4wNDAzIDc4MFwiXHJcbiAgICB3aWR0aD17MTI1NS4wNDAzfVxyXG4gICAgeG1sU3BhY2U9XCJwcmVzZXJ2ZVwiXHJcbiAgICBpZD1cInN2ZzJcIlxyXG4gICAgaW5rc2NhcGU6ZXhwb3J0LWZpbGVuYW1lPVwiRGVzaWduLUlIUC0zLnN2Z1wiXHJcbiAgICBpbmtzY2FwZTpleHBvcnQteGRwaT17OTZ9XHJcbiAgICBpbmtzY2FwZTpleHBvcnQteWRwaT17OTZ9XHJcbiAgICB4bWxuc1hsaW5rPVwiaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGlua1wiXHJcbiAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcclxuICA+XHJcbiAgICA8ZGVmcyBpZD1cImRlZnM2XCI+XHJcbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoMThcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cclxuICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAgIGlkPVwicGF0aDE2XCJcclxuICAgICAgICAgIGQ9XCJNIDAsMi40NDE0ZS00IEggMTQxNy4zMiBWIDE0MTcuMzIwMiBIIDAgWlwiXHJcbiAgICAgICAgLz5cclxuICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGgyOFwiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxyXG4gICAgICAgIDxwYXRoXHJcbiAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICB9fVxyXG4gICAgICAgICAgaWQ9XCJwYXRoMjZcIlxyXG4gICAgICAgICAgZD1cIk0gMCwxNDE3LjMyIEggMTQxNy4zMiBWIDMuNjYyMWUtNCBIIDYuMTAzNWUtNVwiXHJcbiAgICAgICAgLz5cclxuICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGg0MlwiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxyXG4gICAgICAgIDxwYXRoXHJcbiAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICB9fVxyXG4gICAgICAgICAgaWQ9XCJwYXRoNDBcIlxyXG4gICAgICAgICAgZD1cIk0gMCwxNDE3LjMyIEggMTQxNy4zMiBWIDMuNjYyMWUtNCBIIDEuMjIwN2UtNFwiXHJcbiAgICAgICAgLz5cclxuICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGg3NlwiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxyXG4gICAgICAgIDxwYXRoXHJcbiAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICB9fVxyXG4gICAgICAgICAgaWQ9XCJwYXRoNzRcIlxyXG4gICAgICAgICAgZD1cIk0gLTYuMTAzNWUtNSwxNDE3LjMyIEggMTQxNy4zMiBWIDAgSCAtOS4xNTUzZS01XCJcclxuICAgICAgICAvPlxyXG4gICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwUGF0aDg2XCIgY2xpcFBhdGhVbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XHJcbiAgICAgICAgPHBhdGhcclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgIH19XHJcbiAgICAgICAgICBpZD1cInBhdGg4NFwiXHJcbiAgICAgICAgICBkPVwiTSAtNi4xMDM1ZS01LDE0MTcuMzIgSCAxNDE3LjMyIFYgMCBIIC05LjE1NTNlLTVcIlxyXG4gICAgICAgIC8+XHJcbiAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoOTZcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cclxuICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAgIGlkPVwicGF0aDk0XCJcclxuICAgICAgICAgIGQ9XCJNIC02LjEwMzVlLTUsMTQxNy4zMiBIIDE0MTcuMzIgViAwIEggLTkuMTU1M2UtNVwiXHJcbiAgICAgICAgLz5cclxuICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGgxMDZcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cclxuICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAgIGlkPVwicGF0aDEwNFwiXHJcbiAgICAgICAgICBkPVwiTSAtNi4xMDM1ZS01LDE0MTcuMzIgSCAxNDE3LjMyIFYgMCBIIC05LjE1NTNlLTVcIlxyXG4gICAgICAgIC8+XHJcbiAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoMTE2XCIgY2xpcFBhdGhVbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XHJcbiAgICAgICAgPHBhdGhcclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgIH19XHJcbiAgICAgICAgICBpZD1cInBhdGgxMTRcIlxyXG4gICAgICAgICAgZD1cIk0gLTYuMTAzNWUtNSwxNDE3LjMyIEggMTQxNy4zMiBWIDAgSCAtOS4xNTUzZS01XCJcclxuICAgICAgICAvPlxyXG4gICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwUGF0aDEyNlwiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxyXG4gICAgICAgIDxwYXRoXHJcbiAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICB9fVxyXG4gICAgICAgICAgaWQ9XCJwYXRoMTI0XCJcclxuICAgICAgICAgIGQ9XCJNIC02LjEwMzVlLTUsMTQxNy4zMiBIIDE0MTcuMzIgViAwIEggLTkuMTU1M2UtNVwiXHJcbiAgICAgICAgLz5cclxuICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGgxMzZcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cclxuICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAgIGlkPVwicGF0aDEzNFwiXHJcbiAgICAgICAgICBkPVwiTSAtMS4yMjA3ZS00LDE0MTcuMzIgSCAxNDE3LjMyIFYgMS4yMjA3ZS00IEwgLTYuMTAzNWUtNSwyLjQ0MTRlLTRcIlxyXG4gICAgICAgIC8+XHJcbiAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoMTQ2XCIgY2xpcFBhdGhVbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XHJcbiAgICAgICAgPHBhdGhcclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgIH19XHJcbiAgICAgICAgICBpZD1cInBhdGgxNDRcIlxyXG4gICAgICAgICAgZD1cIk0gLTEuMjIwN2UtNCwxNDE3LjMyIEggMTQxNy4zMiBWIDEuMjIwN2UtNCBMIC02LjEwMzVlLTUsMi40NDE0ZS00XCJcclxuICAgICAgICAvPlxyXG4gICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwUGF0aDE1NlwiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxyXG4gICAgICAgIDxwYXRoXHJcbiAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICB9fVxyXG4gICAgICAgICAgaWQ9XCJwYXRoMTU0XCJcclxuICAgICAgICAgIGQ9XCJNIC0xLjIyMDdlLTQsMTQxNy4zMiBIIDE0MTcuMzIgViAxLjIyMDdlLTQgTCAtNi4xMDM1ZS01LDIuNDQxNGUtNFwiXHJcbiAgICAgICAgLz5cclxuICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGgxNjZcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cclxuICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAgIGlkPVwicGF0aDE2NFwiXHJcbiAgICAgICAgICBkPVwiTSAtMS4yMjA3ZS00LDE0MTcuMzIgSCAxNDE3LjMyIFYgMS4yMjA3ZS00IEwgLTYuMTAzNWUtNSwyLjQ0MTRlLTRcIlxyXG4gICAgICAgIC8+XHJcbiAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoMTc2XCIgY2xpcFBhdGhVbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XHJcbiAgICAgICAgPHBhdGhcclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgIH19XHJcbiAgICAgICAgICBpZD1cInBhdGgxNzRcIlxyXG4gICAgICAgICAgZD1cIk0gLTEuMjIwN2UtNCwxNDE3LjMyIEggMTQxNy4zMiBWIDEuMjIwN2UtNCBMIC02LjEwMzVlLTUsMi40NDE0ZS00XCJcclxuICAgICAgICAvPlxyXG4gICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwUGF0aDE4NlwiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxyXG4gICAgICAgIDxwYXRoXHJcbiAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICB9fVxyXG4gICAgICAgICAgaWQ9XCJwYXRoMTg0XCJcclxuICAgICAgICAgIGQ9XCJNIC0xLjIyMDdlLTQsMTQxNy4zMiBIIDE0MTcuMzIgViAxLjIyMDdlLTQgTCAtNi4xMDM1ZS01LDIuNDQxNGUtNFwiXHJcbiAgICAgICAgLz5cclxuICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGgxOTZcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cclxuICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAgIGlkPVwicGF0aDE5NFwiXHJcbiAgICAgICAgICBkPVwiTSAtMS4yMjA3ZS00LDE0MTcuMzIgSCAxNDE3LjMyIFYgMS4yMjA3ZS00IEwgLTYuMTAzNWUtNSwyLjQ0MTRlLTRcIlxyXG4gICAgICAgIC8+XHJcbiAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoMjA2XCIgY2xpcFBhdGhVbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XHJcbiAgICAgICAgPHBhdGhcclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgIH19XHJcbiAgICAgICAgICBpZD1cInBhdGgyMDRcIlxyXG4gICAgICAgICAgZD1cIk0gLTEuMjIwN2UtNCwxNDE3LjMyIEggMTQxNy4zMiBWIDEuMjIwN2UtNCBMIC02LjEwMzVlLTUsMi40NDE0ZS00XCJcclxuICAgICAgICAvPlxyXG4gICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwUGF0aDIxNlwiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxyXG4gICAgICAgIDxwYXRoXHJcbiAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICB9fVxyXG4gICAgICAgICAgaWQ9XCJwYXRoMjE0XCJcclxuICAgICAgICAgIGQ9XCJNIC0xLjIyMDdlLTQsMTQxNy4zMiBIIDE0MTcuMzIgViAxLjIyMDdlLTQgTCAtNi4xMDM1ZS01LDIuNDQxNGUtNFwiXHJcbiAgICAgICAgLz5cclxuICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGgyMjZcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cclxuICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAgIGlkPVwicGF0aDIyNFwiXHJcbiAgICAgICAgICBkPVwiTSAtMS4yMjA3ZS00LDE0MTcuMzIgSCAxNDE3LjMyIFYgMS4yMjA3ZS00IEwgLTYuMTAzNWUtNSwyLjQ0MTRlLTRcIlxyXG4gICAgICAgIC8+XHJcbiAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoMjM2XCIgY2xpcFBhdGhVbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XHJcbiAgICAgICAgPHBhdGhcclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgIH19XHJcbiAgICAgICAgICBpZD1cInBhdGgyMzRcIlxyXG4gICAgICAgICAgZD1cIk0gNjAxLjA4LDYxMS40IEggODA1LjQ0IFYgODE1Ljc2IEggNjAxLjA4IFpcIlxyXG4gICAgICAgIC8+XHJcbiAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgIDxtYXNrXHJcbiAgICAgICAgaWQ9XCJtYXNrMjQwXCJcclxuICAgICAgICBoZWlnaHQ9ezF9XHJcbiAgICAgICAgd2lkdGg9ezF9XHJcbiAgICAgICAgeT17MH1cclxuICAgICAgICB4PXswfVxyXG4gICAgICAgIG1hc2tVbml0cz1cInVzZXJTcGFjZU9uVXNlXCJcclxuICAgICAgPlxyXG4gICAgICAgIDxpbWFnZVxyXG4gICAgICAgICAgaWQ9XCJpbWFnZTI0MlwiXHJcbiAgICAgICAgICB4bGlua0hyZWY9XCJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQVlBQUFBR0FDQUFBQUFDQnJPcGpBQUFBQVhOQ1NWUUk1Z3BibVFBQUVWcEpSRUZVZUp6dG5YdDhWZFdWeDNjU2dnRUNDSUk4RkJVd1FCTDJEZ0VmbzVaYTN6aGo2OHlVYWJWRmhQckFPclRvV0p5MnpqaGxXdHJhK3FsaWRXWnFSMVRBNTFTbi9XaW50Z3BTbi8xQTViRjNMaEFJNGFueVRua2xKSkRjK1FNL0pqazVlNTE5N3ozN3JpVDM5LzBubjV4OTFqbjdydDlkZSsyejl6NzdDZ0VBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFnTTVPSG5jRnVobDVaeXFwNUxkLzYyelF3Mk5sY294aUpaV2MyRWNJSVNvZ1FGYnBPVm9xZWQ3dzFnUFMzUllDWk1aUXFhU1NRUzhxOXdzZ0I2UkwzN0ZLcWtuOVE4dU9GemU1WGdZUmtEb0Y1eWlwNUJqaWpNTFN0YTRYZ3dBcE1WQkpKU2VjRW5tZWdnQngwMnVNVkhMU1lNZXozYk13Qklna2I0UlVVcFhtcDJJREFlS2hyMVJTVmZaSjNkQzlHNFJlVURpRjV5cXBKcDZSdHYzQU9zY1RFUUVkR0txa2toMjY5aW1pL3VoNElnUm9ROTl4VXNtSnA4WnhLUWlRR2dVanBaS3FKTDRMT21kaENIQ2FWRkpWUkhmdFU4TlpnRnhPd3IzR0tLa211bmJ0VStOdy82VGJpYmtwUU40SUpaVk1yV3VmSXFOcjNjN0x1U1pvUUpsVU1wMnVmWXBJQ0JDa3NFUk9MRlZuKzdqMFBxUFZaZTBQeWQrNG1lYUdBTU9ra3FxODBNT1ZtelpvcmMxSFF0d1pFTUQxV2JpN0M5QjNuSktxTXBhdWZaQVB0ZGE2K3Znbi95VUNwYTdkb082YmhBdEdLcW5rdVQ0KzROR0UxdG9jYUhkczhKNzI1elQzYVhTNlZyY1U0RFFsbFZSRkhxNmNyTlZhNjlxV2tLSTlnZjdzcEZWT1YreG1UVkN2c1ZKVnl0TjlYZjd1WHg2MUZRMEpaaGlaWXdMa25TV1ZWT044ZHUzRnF3L2J5NTRNNWhuSEpOQWRCQmhRcHFTcUtQWituMzIzMmN0bVh4czg0dGdONnRvNW9MQkVTU1c5ZE8xRG1QcVN0YWowZzE3QlE3dUdPVjIweXdvd1RFa2x2WFR0YlN5ZWJpM3ErYWZLamdjSDdYZTVhaGRzZ29yTHBKSVRCbVQ3dGp1L2FTLzdmb2ovUmNVeWw4dDJLUUVLUmtrbEs4L3hFclVmR2JOKy9sQjdlWExtWDZ4bG4vdFcyRkhaclFRWUpKVlUwa2ZYWGh4SmFHUDBBU0YrUVBoZlBQcUd0ZWpVUmFGOUw3ZHVVT2ZQQVVYamxGUVR2SFR0bTJ1ME1YckxKeVAzRjcxZFlEOTE0NFFHYTltek40WWVYbkdoU3gwNnN3QjVaeW1wNUZqQ0xlbXpXeHVqMXgxcmM2UjR6V2o3NmMwWHI3Q1dmWFZKK1BHamZWM21aRHBwRXpTZ1hDcnBwMnRmbnpEYW1MMGRqajlNK0YvTXQvdi83TWNzQlgxRzF6aFVwOU1KVURpdVhFbDFscGRySDF5cWpka2NOcEFqeFBXM0VJYXJmbUF0eWw4Y3ZrQmFDQ0ZkQk9oTURMOW03cUkxVFVsL1hHKy85NUE5aEYxRG1kM3dPM2F6ZjR2ZlJiNG92dURXQlc4ZWlOM2hBUjRuYXZBS1pYaTMzVzRTOFlYNVZleCs4a0JCeVJlLzkvS21scmg5SFVZTmtWTHVvQXlYMjNzcXZkY1RkdFVlL0JVbmd5NmY4OFNLaHBpOWJPZkVSZmFxbEJ3aERBOFJZMDMvUWQyeHVjUDRVR2VocUhMNmc3L2ZIYk9Eby9oM2UzMTYvSWt5bkdFMy9CdjZsdWZGN3JtTXlSdjUrZnVlWDNjaVRzZCt5bjR5ZjY4aytudmZvd3lKMVEyblIzeUpaanA0Skh2ZDBBSGxTaXJaMThlbEd6Y1lvODJFVjRsVDZxZWRzSlpkZUI5aHVKZVlCSGdpNHZuY1pVb2dHd0lVamxGU1NUOWQrMjNHYUZOOVFnZ3grQW5xdkcvWk0yS2Z4WlFUWnUyeEZ0MXhYVVRsVW5oZDJCZkRwOHhkN0tsclgvZjJZM2RjMHEvMVZyK21UdjQvb282L29BeWZzdHVOUFJwVnhkME9IdkkyRmxSY0xwV3M4REpxZjd4YUc2TjN0RDk0Nnk4SmkzMXlsN1hzdWxjSXcrM3FvSzJvOFAxSmhPRkpoa1pMNEtFSnlqOVhLcWxHZVpGMnB6Wkdiemplc1dEVVE1VFo3WGIvRC81dndpNDUwK3AvTVMvYS8wSzZ4RUNjREw3OHJvVXI2MU50VEZ4NVlySjFoVnZCZTVUaFFxTEt2NkVNaVZVUWs1c2Rha3c4UXNkTlVlWE5ELzVoVjByK1RKVlZ4QVR3djFLR3RVVFg2MWJLY0wzOVNhcmZWcGNxVThySFJ0NDVYN2p2QlU5ZCs3WlFJMkxuVVhtKytUTjJ3OUdIQ2NQanhJUFVZcWM2L3psdHI3cHg2dVE3Lyt2ZFF5bTVNWDIrWWE5SHJ3MlU0WHk3SWQxeUVhT1pON2pWdWQ3Yk9ySEM4VGYrNk5YdDd0N0xuRDhRU2YweHl2Q0RkRnN1NHRsNVJKMWpyYWtkUGRMbGpDbjNMbDdiNk95NG1OZy8zRjZqS1pSaGZhbmQ4THpqaEdIRE9LdGQvcHV1MVo2YWdhTTdVbnpoYlk4czMrOTY3OVRZczJ6QngxVDVQOWlyZFJwcE9OdHUyTHVhTXB4ak41enIvTEhtcGUvdGR1U1BtVHJ2ZjJ2OGpObzNySHJxbnF1SENqR0RPdWxwb25JdlVZYS9KMW91Y2l4NXFkMXdnbnY4dnh6cDJzakhwY0ZLS2xudVpXUTd1VlViYlRZMUN5R0VHTG1tbi8zTWJlcVF0V3dtMWRjN0lEK3lsbDFMalU4Y1ZOdkRDd1pOcUp4RlRkKzNaL081VVdjUVQ4SkZaVkpKTmNUNVpxbHd3Qmh0cW82MEhzaC9tdkIveTgxMi80OWNRTjFubHQzL2c4aE8ramREL0QraXNuSmk1UWpLcWdPaitsaGZLSWhtbm5PZ3BVTGptc1Z6cDNUY2hlVGJsTTBEOWtybXYwMFpVaTNYeTVSaG9PbklIM3ZEQTYvdlMrZmpYcENlNzRVUVFreE41NFlVVzErWmYwTjVlTWlSemVxYW52WktFb3NTa3NtdFJGVE5wQXgzdDc1dTFMUHlhNCsrUzgxWTB0eWFydmVGRUdQU3ZtczR4TUJJVVlLd096YmVibGhKUGdKLzFtNDRrbngrL0lJUVFvamlTMll2WEozaFdEclpRRVpRRU8rRStUSWkzeStnRE8reTJ4V3Rvd3gvYkRmTWY0Y3lYQ2dHWFhYdjg5Vng5UHFjVmtqYitITU1GZmlVdWpQdE43cUsrcWh2RU1JOVF0MXhOZEZ5ZlplczYvSWQ2WHpDVURvdWdVeUJKMk9yUmpLWkRGOUJMSVFRWXNCT3dvNFM3bXBLdUlaeXUrRkVuK3Z2MnVQMm9sSTRkOGRZajJlSis3eEFHZDVndHh2NElXVkl0Rnk5eUpZclhxNU8yLzFDWEJsZk5YWVFtd1hjUkJrK1E5VHZSY3J3OVhSYnJoalo5ZnJQWmxBdmZRaEJQd2tQc1Uva3RhTitYU0tSeUgrSmFIS1RWOXFUMFZuYXVyeFlpQjNLL21MUWRLcVhYeWMvdEpaZC9acjN0eUtPcnRmR3JIRjVTNCthRTk2OU4ybzNxV01iRWxXSnhKYWtFS2VzSlB3dkhyTDdQLzlwd3YvSm0rMytQL3ZuVk0yK2J2Zi93Q2Q5K3IrbFZodWpheHozeTRyZ0RYdDBOZXJuL3VWdlMxcm5HeDZrUXRFUU83S1JJNHNQMnUzeS8wZ1pXbDVhRVdMd1pYUElIbWdtN0YzNjhJenpVeDAxSTc4TUQ0VWxzaE9iRWxXSnhLYjJDODArUi9YeW15NndiMld0cU1neDU5dDNITG1YR0o4UU8yVEgxUXhGcFVwS0ZkVWtwMGZEZXFQTld2c1NMZ0p5V1lvSjN1ZTFSS0pxWThqVytQMFhVVUxlWi9mL0tjOFEvbStjWnZkL3hmZUpHeWFudC9OLzNrZ3BwU3J4OHE1WlMyMUNHN014L0syYmpEay9FR01IYkNjK1EwWG1jbUppOUdlVTRUMTJ1NklxeXJDMTVScDQ2ZXpIMzZjbTNqTmcvL0pIYnZ1cjNtazUxcFhld2JVdmx2V2RYNmJxK1JkaVVlamwxSlBVbTRSd0QxRjMxS2NJSVhwV1RQdko3NmdudkF4b1dMMW83alV4TldaMGgyQmpZQy9aejRjdVFEN0RVQ3NRYjdJbVJIR3FKa2JYclZNaVFvZ3JxRjUrMDlTa2tuS3NsMlhIeVpPTGdadDlYRHVNNEd4ZjZEcnV2TmVwYjhzTHhPV2ZwUXkvYXJjYkVOOVlqVHY3MzNwczFzWCs5OFJwVC9ETmhSZkRUcnFMcXZiT2dmYXIzMGdaUGs5VTY3bU12WmtTalhySlAvODFNU1Rsa2I4UFZDVnNrWDA1TldyZGNwWDk0bWRTaTJ0MkVxM2FWMkp3cWlQYlgvM1JWOFl6dmt0ZEVxaFBjOGVrMzNNMTlRR0kxYTE1U3dtN2xpdnRoczZyb2pLaTdwMy92UE16eEl4YWRzZ1ByblR1T01YNUFQVXBFc1QySnY5RUdSS0x6Zk9XWmV4Y21xYXE1NzV6WGJaMjRZcGlaYUJ5SFY2WStpeTFTcnNwYkIralR4aC9qRENzSW9TN0p3WWYyOWo1dXdlbVZXUnpGNjdJRnpSMFlJRndSYUM4WC9oV09aOXcvMnByVWM4bHhQaFEwN1JqWVlkN2xFaXA1RG5FRGRQblVNSVlzOVkrOU9lTkNBR0NneEZCQVg1T2hlcmJQN0dYelE5ZXFTMzNyd2tlR1NhbGttVngvOHFDRUVLSUU1dU0wV2FMajB1N0VERXllMFZnbjZpRDdTZFdwdjRQWVh0WWJiV1dYYnFNaUp5M0xtc3p0TktuWEVtcFRpUHVrejRmRzZQTk9yY3RobjBSSWNEcHdaZWNSclg5cWd3M1JDOWZ6TEJQbVBUWHhQakVJYlZOQ0NGRXdXZ2xmYjFyZG1TZE5tYXRkV3dyaTBRMFFYdDJCNVltcWpZQzVEMUorZjhsWXNMcVVlcWw0VzlzRTBPa2xLck15NExVNXMzYUdGMGJ6NFJKREVROVpKaUFBQlZ0M3R5ZlRVMDRmenpMWHZhbGFaUmg1WFJQbXovdjBicEtKMEx6ZStjbE9GN2NadlBZVXZKMXlDbjJhNTdoNlIwRE8wZFhMcnpyQ2orLzFwTXBrUkVRK0wrMTgxSzRoR29pSG4zTldrUzNYREhUVW11ME1UV2VKa3l5d0tUQWQ2bmwwL0hBSDFKZk9lSUZUekhINDFlOUxYdVhQWHpMQlg0blRHSWdxby9SNjBpZ3YzangreWYvWHZJVzBaRThmdEVIMXJLeUQ3eHN2OXFXWSt1TTBUcmJiNm1uUjFRVDFGQVRlTkd2NHFRQWZSZFRqOER6N1A0dlhPTFQvOGt0cHZXbG15NUI1RkNyQ1FwdzhzK0NrWVROZTlaMXlmM0gzMEtNRDJYRS9pcHRqTW5naFJRZUlnWFFYMnovLzBrQi9vN2FET3JJVFNIZndNSXhTbnJhRDdSeGd6WkcyMTlHNnRSRVIwRGdmNW1YRkdJb3RRT2ttQlA0RWJrenBWU3kxTWNnWTNLN05rWnZ0RytHMWZsSldZRGlVWnVGV0RpSXNQaDE2OXR2ZmNkTEphV1hUWVBxcW96UjVyQ1BTMmVWU0FGcTZ3TTl1WXJONHM0T1A1alNodDIzQ1NGRWp4S3BwUFN5MVg5VHRkSEc3SWcrc1VzUUtVQkxWV0FXck9MbHNUK2xETDVXZUkyVXF0VEwwUEVPbzQwSjI2K3A2eEk5NFd5Q0F2UllRajNkSEYva1plajRrREZHRy92K1ZWMFdCd0VDLzFmY1QrNUhXaGkzLzA5VUc2UE50cGl2Mm1tSWJxUXZYeG80ME94bGxXc1lIeHFqemZxUXhjRGRpR2dCZ3I5U21SVU9KN1F4dW83aHp0bkdvWnZ5c1o4MTlSYWFOMmxqOU5aT00ySGlHNGRWWHlaYkF1elN4bWptS2RxczR5SUFzYnd3Sm80bWpEWm1uL2Y3ZEVJY0JOQSs3OTlTWTdReG0zT214ZW1BU3dSNHV2VWVvNDFKMkgrZUt6ZHdTTUpGUjdMVzcreXVQRzVmb2VDd3NlV3hydlpyVEYwS2w1MUZ2U2FCWE1kRkFGOUpBQWdJd0E0RVlNWkZnTm91TjlQZGhYQVJJRm5sdlJxNWk5UCs2bWlEL0FFQm1IRVNBQThDL25BU2dHTktKbGR3RXFEckx1N3UvRGdKa0x1RHhmNkJBTXhBQUdhUUE1aEJCREFEQVppQkFNd2dCekNEQ0dBR0FqQURBWmhCRG1BR0VjQU1CR0FHQWpDREhNQU1Jb0FaQ01BTUJHQUdPWUFaUkFBekVJQVpDTUFNY2dBemlBQm1JQUF6RUlBWjVBQm1FQUhNUUFCbUlBQXp5QUhNT0FrQS9PRW1BTm9nYjBBQVp0d0VRQkx3QmlLQUdRakFEQVJnSmpzNTRQRzhyZzN4bzNTWmdnaGdCZ0l3QXdHWXdYTUFNNGdBWmlBQU14Q0FHZVFBWmhBQnpFQUFaaUFBTThnQnpDQUNtSUVBekVBQVpwQURtRUVFTUFNQm1JRUF6Q0FITUlNSVlBWUNNQU1CbUVFT1lBWVJ3QXdFWUFZQ01JTWN3QXdpZ0JrSXdBd0VZQVk1Z0JsRUFETVFnQmtJd0F4eUFET0lBR1lnQURNUWdCbmtBR1lRQWN4QUFHWWdBRFBJQWN3Z0FwaUJBTXhBQUdaNk9KMlZhUTY0L2ZZTUw5QjlRUVF3QXdHWWdRRE00RG1BR1VRQU14Q0FHUWpBREhJQU00Z0FaaUFBTXhDQUdlUUFaaEFCekVBQVppQUFNOGdCekNBQ21JRUF6RUFBWnBBRG1FRUVNQU1CbUlFQXpDQUhNSU1JWUFZQ01BTUJtRUVPWUFZUndBd0VZQVlDTUlNY3dBd2lnQmtJd0F3RVlBWTVnQmxFQURNUWdCa0l3QXh5QURPSUFHWWdBRE1RZ0Jua0FHWVFBY3hBQUdZZ0FEUElBY3dnQXBpQkFNeEFBR2FRQTVoQkJEQURBWmlCQU13Z0J6Q0RDR0FHQWpBREFaaEJEbUFHRWNBTUJHQUdBakNESE1BTUlvQVpDTUFNQkdER1RZQmpubXZSM1dteUY3a0pjQ2ltaXVRcUIrMUZiZ0pzanFraXVVcXR2Y2hOZ0dxMFFSbXh4bDdrSmtEanV6SFZKRGM1a0xFQTRzVjRhcEtqL0lwNGtNMXp1MFMvN2YzanFVdE9NbW1WdmN3eEFnNHRpS2NxT2NsdkNmKzdSb0RvdmU3c09PcVNpelRLVFVTcFl3U0krdW5OY1ZRbUY3bVg4cjhvY0wzTXRycHJNNjlMTHZMVWQ4bGlad0hFaXFZck1xMUxMdkw4VEhvczMxMEE4YzZXYXdvenJFM09rZnp4UDBiTXBiZ21ZU0dFRUtXL21KeEpiWEtQbXErL0VYV0theElXUWdpeC90THIzMHUvTmpuSHhqdktJLzJmV2dRSUlVVEpkWlBMaGhXbnBGdnVrYXpmVy8zZWF5dTRxd0VBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFnSGo0ZjlBY2RZSDJGUjVEQUFBQUFFbEZUa1N1UW1DQ1wiXHJcbiAgICAgICAgICBwcmVzZXJ2ZUFzcGVjdFJhdGlvPVwibm9uZVwiXHJcbiAgICAgICAgICBcclxuICAgICAgICAgIGhlaWdodD17MX1cclxuICAgICAgICAgIHdpZHRoPXsxfVxyXG4gICAgICAgIC8+XHJcbiAgICAgIDwvbWFzaz5cclxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGgyNTJcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cclxuICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAgIGlkPVwicGF0aDI1MFwiXHJcbiAgICAgICAgICBkPVwiTSAyLjExMmUtNSwtMS4yMjA3ZS00IEggMTQxNy4zMiBWIDE0MTcuMzE5OSBIIDIuMTEyZS01IFpcIlxyXG4gICAgICAgIC8+XHJcbiAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoMjY0XCIgY2xpcFBhdGhVbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XHJcbiAgICAgICAgPHBhdGhcclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgIH19XHJcbiAgICAgICAgICBpZD1cInBhdGgyNjJcIlxyXG4gICAgICAgICAgZD1cIk0gMi4xMTJlLTUsLTEuMjIwN2UtNCBIIDE0MTcuMzIgViAxNDE3LjMxOTkgSCAyLjExMmUtNSBaXCJcclxuICAgICAgICAvPlxyXG4gICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwUGF0aDI3NlwiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxyXG4gICAgICAgIDxwYXRoXHJcbiAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICB9fVxyXG4gICAgICAgICAgaWQ9XCJwYXRoMjc0XCJcclxuICAgICAgICAgIGQ9XCJNIDIuMTEyZS01LC0xLjIyMDdlLTQgSCAxNDE3LjMyIFYgMTQxNy4zMTk5IEggMi4xMTJlLTUgWlwiXHJcbiAgICAgICAgLz5cclxuICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGgyODhcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cclxuICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAgIGlkPVwicGF0aDI4NlwiXHJcbiAgICAgICAgICBkPVwiTSAyLjExMmUtNSwtMS4yMjA3ZS00IEggMTQxNy4zMiBWIDE0MTcuMzE5OSBIIDIuMTEyZS01IFpcIlxyXG4gICAgICAgIC8+XHJcbiAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoMzAwXCIgY2xpcFBhdGhVbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XHJcbiAgICAgICAgPHBhdGhcclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgIH19XHJcbiAgICAgICAgICBpZD1cInBhdGgyOThcIlxyXG4gICAgICAgICAgZD1cIk0gMi4xMTJlLTUsLTEuMjIwN2UtNCBIIDE0MTcuMzIgViAxNDE3LjMxOTkgSCAyLjExMmUtNSBaXCJcclxuICAgICAgICAvPlxyXG4gICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwUGF0aDMxMlwiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxyXG4gICAgICAgIDxwYXRoXHJcbiAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICB9fVxyXG4gICAgICAgICAgaWQ9XCJwYXRoMzEwXCJcclxuICAgICAgICAgIGQ9XCJNIDIuMTEyZS01LC0xLjIyMDdlLTQgSCAxNDE3LjMyIFYgMTQxNy4zMTk5IEggMi4xMTJlLTUgWlwiXHJcbiAgICAgICAgLz5cclxuICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGgzMjRcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cclxuICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAgIGlkPVwicGF0aDMyMlwiXHJcbiAgICAgICAgICBkPVwiTSAyLjExMmUtNSwtMS4yMjA3ZS00IEggMTQxNy4zMiBWIDE0MTcuMzE5OSBIIDIuMTEyZS01IFpcIlxyXG4gICAgICAgIC8+XHJcbiAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoMzM2XCIgY2xpcFBhdGhVbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XHJcbiAgICAgICAgPHBhdGhcclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgIH19XHJcbiAgICAgICAgICBpZD1cInBhdGgzMzRcIlxyXG4gICAgICAgICAgZD1cIk0gMi4xMTJlLTUsLTEuMjIwN2UtNCBIIDE0MTcuMzIgViAxNDE3LjMxOTkgSCAyLjExMmUtNSBaXCJcclxuICAgICAgICAvPlxyXG4gICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwUGF0aDM0OFwiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxyXG4gICAgICAgIDxwYXRoXHJcbiAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICB9fVxyXG4gICAgICAgICAgaWQ9XCJwYXRoMzQ2XCJcclxuICAgICAgICAgIGQ9XCJNIDIuMTEyZS01LC0xLjIyMDdlLTQgSCAxNDE3LjMyIFYgMTQxNy4zMTk5IEggMi4xMTJlLTUgWlwiXHJcbiAgICAgICAgLz5cclxuICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGgzNzRcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cclxuICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAgIGlkPVwicGF0aDM3MlwiXHJcbiAgICAgICAgICBkPVwiTSAyLjExMmUtNSwtMS4yMjA3ZS00IEggMTQxNy4zMiBWIDE0MTcuMzE5OSBIIDIuMTEyZS01IFpcIlxyXG4gICAgICAgIC8+XHJcbiAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoMzg2XCIgY2xpcFBhdGhVbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XHJcbiAgICAgICAgPHBhdGhcclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgIH19XHJcbiAgICAgICAgICBpZD1cInBhdGgzODRcIlxyXG4gICAgICAgICAgZD1cIk0gMi4xMTJlLTUsLTEuMjIwN2UtNCBIIDE0MTcuMzIgViAxNDE3LjMxOTkgSCAyLjExMmUtNSBaXCJcclxuICAgICAgICAvPlxyXG4gICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwUGF0aDM5OFwiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxyXG4gICAgICAgIDxwYXRoXHJcbiAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICB9fVxyXG4gICAgICAgICAgaWQ9XCJwYXRoMzk2XCJcclxuICAgICAgICAgIGQ9XCJNIDIuMTEyZS01LC0xLjIyMDdlLTQgSCAxNDE3LjMyIFYgMTQxNy4zMTk5IEggMi4xMTJlLTUgWlwiXHJcbiAgICAgICAgLz5cclxuICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGg0MTBcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cclxuICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAgIGlkPVwicGF0aDQwOFwiXHJcbiAgICAgICAgICBkPVwiTSAyLjExMmUtNSwtMS4yMjA3ZS00IEggMTQxNy4zMiBWIDE0MTcuMzE5OSBIIDIuMTEyZS01IFpcIlxyXG4gICAgICAgIC8+XHJcbiAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoNDIyXCIgY2xpcFBhdGhVbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XHJcbiAgICAgICAgPHBhdGhcclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgIH19XHJcbiAgICAgICAgICBpZD1cInBhdGg0MjBcIlxyXG4gICAgICAgICAgZD1cIk0gMi4xMTJlLTUsLTEuMjIwN2UtNCBIIDE0MTcuMzIgViAxNDE3LjMxOTkgSCAyLjExMmUtNSBaXCJcclxuICAgICAgICAvPlxyXG4gICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwUGF0aDQzNFwiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxyXG4gICAgICAgIDxwYXRoXHJcbiAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICB9fVxyXG4gICAgICAgICAgaWQ9XCJwYXRoNDMyXCJcclxuICAgICAgICAgIGQ9XCJNIDIuMTEyZS01LC0xLjIyMDdlLTQgSCAxNDE3LjMyIFYgMTQxNy4zMTk5IEggMi4xMTJlLTUgWlwiXHJcbiAgICAgICAgLz5cclxuICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGg0NDZcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cclxuICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAgIGlkPVwicGF0aDQ0NFwiXHJcbiAgICAgICAgICBkPVwiTSAyLjExMmUtNSwtMS4yMjA3ZS00IEggMTQxNy4zMiBWIDE0MTcuMzE5OSBIIDIuMTEyZS01IFpcIlxyXG4gICAgICAgIC8+XHJcbiAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoNDU4XCIgY2xpcFBhdGhVbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XHJcbiAgICAgICAgPHBhdGhcclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgIH19XHJcbiAgICAgICAgICBpZD1cInBhdGg0NTZcIlxyXG4gICAgICAgICAgZD1cIk0gMi4xMTJlLTUsLTEuMjIwN2UtNCBIIDE0MTcuMzIgViAxNDE3LjMxOTkgSCAyLjExMmUtNSBaXCJcclxuICAgICAgICAvPlxyXG4gICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwUGF0aDQ3MFwiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxyXG4gICAgICAgIDxwYXRoXHJcbiAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICB9fVxyXG4gICAgICAgICAgaWQ9XCJwYXRoNDY4XCJcclxuICAgICAgICAgIGQ9XCJNIDIuMTEyZS01LC0xLjIyMDdlLTQgSCAxNDE3LjMyIFYgMTQxNy4zMTk5IEggMi4xMTJlLTUgWlwiXHJcbiAgICAgICAgLz5cclxuICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGg0ODJcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cclxuICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAgIGlkPVwicGF0aDQ4MFwiXHJcbiAgICAgICAgICBkPVwiTSAyLjExMmUtNSwtMS4yMjA3ZS00IEggMTQxNy4zMiBWIDE0MTcuMzE5OSBIIDIuMTEyZS01IFpcIlxyXG4gICAgICAgIC8+XHJcbiAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoNDk0XCIgY2xpcFBhdGhVbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XHJcbiAgICAgICAgPHBhdGhcclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgIH19XHJcbiAgICAgICAgICBpZD1cInBhdGg0OTJcIlxyXG4gICAgICAgICAgZD1cIk0gMi4xMTJlLTUsLTEuMjIwN2UtNCBIIDE0MTcuMzIgViAxNDE3LjMxOTkgSCAyLjExMmUtNSBaXCJcclxuICAgICAgICAvPlxyXG4gICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwUGF0aDUwNlwiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxyXG4gICAgICAgIDxwYXRoXHJcbiAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICB9fVxyXG4gICAgICAgICAgaWQ9XCJwYXRoNTA0XCJcclxuICAgICAgICAgIGQ9XCJNIDIuMTEyZS01LC0xLjIyMDdlLTQgSCAxNDE3LjMyIFYgMTQxNy4zMTk5IEggMi4xMTJlLTUgWlwiXHJcbiAgICAgICAgLz5cclxuICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGg1MThcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cclxuICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAgIGlkPVwicGF0aDUxNlwiXHJcbiAgICAgICAgICBkPVwiTSAyLjExMmUtNSwtMS4yMjA3ZS00IEggMTQxNy4zMiBWIDE0MTcuMzE5OSBIIDIuMTEyZS01IFpcIlxyXG4gICAgICAgIC8+XHJcbiAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoNTMwXCIgY2xpcFBhdGhVbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XHJcbiAgICAgICAgPHBhdGhcclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgIH19XHJcbiAgICAgICAgICBpZD1cInBhdGg1MjhcIlxyXG4gICAgICAgICAgZD1cIk0gMi4xMTJlLTUsLTEuMjIwN2UtNCBIIDE0MTcuMzIgViAxNDE3LjMxOTkgSCAyLjExMmUtNSBaXCJcclxuICAgICAgICAvPlxyXG4gICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwUGF0aDU0MlwiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxyXG4gICAgICAgIDxwYXRoXHJcbiAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICB9fVxyXG4gICAgICAgICAgaWQ9XCJwYXRoNTQwXCJcclxuICAgICAgICAgIGQ9XCJNIDIuMTEyZS01LC0xLjIyMDdlLTQgSCAxNDE3LjMyIFYgMTQxNy4zMTk5IEggMi4xMTJlLTUgWlwiXHJcbiAgICAgICAgLz5cclxuICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGg1NTRcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cclxuICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAgIGlkPVwicGF0aDU1MlwiXHJcbiAgICAgICAgICBkPVwiTSAyLjExMmUtNSwtMS4yMjA3ZS00IEggMTQxNy4zMiBWIDE0MTcuMzE5OSBIIDIuMTEyZS01IFpcIlxyXG4gICAgICAgIC8+XHJcbiAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoNTY2XCIgY2xpcFBhdGhVbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XHJcbiAgICAgICAgPHBhdGhcclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgIH19XHJcbiAgICAgICAgICBpZD1cInBhdGg1NjRcIlxyXG4gICAgICAgICAgZD1cIk0gMi4xMTJlLTUsLTEuMjIwN2UtNCBIIDE0MTcuMzIgViAxNDE3LjMxOTkgSCAyLjExMmUtNSBaXCJcclxuICAgICAgICAvPlxyXG4gICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwUGF0aDU3OFwiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxyXG4gICAgICAgIDxwYXRoXHJcbiAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICB9fVxyXG4gICAgICAgICAgaWQ9XCJwYXRoNTc2XCJcclxuICAgICAgICAgIGQ9XCJNIDIuMTEyZS01LC0xLjIyMDdlLTQgSCAxNDE3LjMyIFYgMTQxNy4zMTk5IEggMi4xMTJlLTUgWlwiXHJcbiAgICAgICAgLz5cclxuICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGg1OTBcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cclxuICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAgIGlkPVwicGF0aDU4OFwiXHJcbiAgICAgICAgICBkPVwiTSAyLjExMmUtNSwtMS4yMjA3ZS00IEggMTQxNy4zMiBWIDE0MTcuMzE5OSBIIDIuMTEyZS01IFpcIlxyXG4gICAgICAgIC8+XHJcbiAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoNjAyXCIgY2xpcFBhdGhVbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XHJcbiAgICAgICAgPHBhdGhcclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgIH19XHJcbiAgICAgICAgICBpZD1cInBhdGg2MDBcIlxyXG4gICAgICAgICAgZD1cIk0gMi4xMTJlLTUsLTEuMjIwN2UtNCBIIDE0MTcuMzIgViAxNDE3LjMxOTkgSCAyLjExMmUtNSBaXCJcclxuICAgICAgICAvPlxyXG4gICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwUGF0aDYxNFwiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxyXG4gICAgICAgIDxwYXRoXHJcbiAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICB9fVxyXG4gICAgICAgICAgaWQ9XCJwYXRoNjEyXCJcclxuICAgICAgICAgIGQ9XCJNIDIuMTEyZS01LC0xLjIyMDdlLTQgSCAxNDE3LjMyIFYgMTQxNy4zMTk5IEggMi4xMTJlLTUgWlwiXHJcbiAgICAgICAgLz5cclxuICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGg2MjZcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cclxuICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAgIGlkPVwicGF0aDYyNFwiXHJcbiAgICAgICAgICBkPVwiTSAyLjExMmUtNSwtMS4yMjA3ZS00IEggMTQxNy4zMiBWIDE0MTcuMzE5OSBIIDIuMTEyZS01IFpcIlxyXG4gICAgICAgIC8+XHJcbiAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoNjM4XCIgY2xpcFBhdGhVbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XHJcbiAgICAgICAgPHBhdGhcclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgIH19XHJcbiAgICAgICAgICBpZD1cInBhdGg2MzZcIlxyXG4gICAgICAgICAgZD1cIk0gMi4xMTJlLTUsLTEuMjIwN2UtNCBIIDE0MTcuMzIgViAxNDE3LjMxOTkgSCAyLjExMmUtNSBaXCJcclxuICAgICAgICAvPlxyXG4gICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwUGF0aDY1MFwiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxyXG4gICAgICAgIDxwYXRoXHJcbiAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICB9fVxyXG4gICAgICAgICAgaWQ9XCJwYXRoNjQ4XCJcclxuICAgICAgICAgIGQ9XCJNIDIuMTEyZS01LC0xLjIyMDdlLTQgSCAxNDE3LjMyIFYgMTQxNy4zMTk5IEggMi4xMTJlLTUgWlwiXHJcbiAgICAgICAgLz5cclxuICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGg2NjJcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cclxuICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAgIGlkPVwicGF0aDY2MFwiXHJcbiAgICAgICAgICBkPVwiTSAyLjExMmUtNSwtMS4yMjA3ZS00IEggMTQxNy4zMiBWIDE0MTcuMzE5OSBIIDIuMTEyZS01IFpcIlxyXG4gICAgICAgIC8+XHJcbiAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoNjc0XCIgY2xpcFBhdGhVbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XHJcbiAgICAgICAgPHBhdGhcclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgIH19XHJcbiAgICAgICAgICBpZD1cInBhdGg2NzJcIlxyXG4gICAgICAgICAgZD1cIk0gMi4xMTJlLTUsLTEuMjIwN2UtNCBIIDE0MTcuMzIgViAxNDE3LjMxOTkgSCAyLjExMmUtNSBaXCJcclxuICAgICAgICAvPlxyXG4gICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwUGF0aDY4NlwiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxyXG4gICAgICAgIDxwYXRoXHJcbiAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICB9fVxyXG4gICAgICAgICAgaWQ9XCJwYXRoNjg0XCJcclxuICAgICAgICAgIGQ9XCJNIDIuMTEyZS01LC0xLjIyMDdlLTQgSCAxNDE3LjMyIFYgMTQxNy4zMTk5IEggMi4xMTJlLTUgWlwiXHJcbiAgICAgICAgLz5cclxuICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGg2OThcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cclxuICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAgIGlkPVwicGF0aDY5NlwiXHJcbiAgICAgICAgICBkPVwiTSAyLjExMmUtNSwtMS4yMjA3ZS00IEggMTQxNy4zMiBWIDE0MTcuMzE5OSBIIDIuMTEyZS01IFpcIlxyXG4gICAgICAgIC8+XHJcbiAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoNzEwXCIgY2xpcFBhdGhVbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XHJcbiAgICAgICAgPHBhdGhcclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgIH19XHJcbiAgICAgICAgICBpZD1cInBhdGg3MDhcIlxyXG4gICAgICAgICAgZD1cIk0gMi4xMTJlLTUsLTEuMjIwN2UtNCBIIDE0MTcuMzIgViAxNDE3LjMxOTkgSCAyLjExMmUtNSBaXCJcclxuICAgICAgICAvPlxyXG4gICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwUGF0aDcyMlwiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxyXG4gICAgICAgIDxwYXRoXHJcbiAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICB9fVxyXG4gICAgICAgICAgaWQ9XCJwYXRoNzIwXCJcclxuICAgICAgICAgIGQ9XCJNIDIuMTEyZS01LC0xLjIyMDdlLTQgSCAxNDE3LjMyIFYgMTQxNy4zMTk5IEggMi4xMTJlLTUgWlwiXHJcbiAgICAgICAgLz5cclxuICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGg3MzRcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cclxuICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAgIGlkPVwicGF0aDczMlwiXHJcbiAgICAgICAgICBkPVwiTSAyLjExMmUtNSwtMS4yMjA3ZS00IEggMTQxNy4zMiBWIDE0MTcuMzE5OSBIIDIuMTEyZS01IFpcIlxyXG4gICAgICAgIC8+XHJcbiAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoNzUwXCIgY2xpcFBhdGhVbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XHJcbiAgICAgICAgPHBhdGhcclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgIH19XHJcbiAgICAgICAgICBpZD1cInBhdGg3NDhcIlxyXG4gICAgICAgICAgZD1cIk0gNTkyLjU2LDYwOC4wNCBIIDg0MS4yIFYgODIyLjYgSCA1OTIuNTYgWlwiXHJcbiAgICAgICAgLz5cclxuICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgPG1hc2tcclxuICAgICAgICBpZD1cIm1hc2s3NTRcIlxyXG4gICAgICAgIGhlaWdodD17MX1cclxuICAgICAgICB3aWR0aD17MX1cclxuICAgICAgICB5PXswfVxyXG4gICAgICAgIHg9ezB9XHJcbiAgICAgICAgbWFza1VuaXRzPVwidXNlclNwYWNlT25Vc2VcIlxyXG4gICAgICA+XHJcbiAgICAgICAgPGltYWdlXHJcbiAgICAgICAgICBpZD1cImltYWdlNzU2XCJcclxuICAgICAgICAgIHhsaW5rSHJlZj1cImRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBcklBQUFKVUNBQUFBQURNRDVyREFBQUFBWE5DU1ZRSTVncGJtUUFBSUFCSlJFRlVlSnp0blhkZ1ZNWDJ4OC9kYkhxaGh4WTZoRjRGUkJEQmlvRDBaZ0ViQ2lyWXkzditzQ0FXN1BpZWlxS2c2Qk94STBVQmtkNTdrdzRobFU0Q0pDRnRkK2YzeC9aN1orN2V0cmRzenVlZkpQZk96RDF6OTV2Wk0rME1BSUlnQ0lJZ0NJSWdDSUlnQ0lJZ0NJSWdDSUlnQ0lJZ0NJSWdDSUlnQ0lJZ0NJSWdDSUlnQ0lJZ0NJSWdDSUlnQ0lJZ0NJSWdDSUlnQ0lJZ0NJSWdDSUlnQ0lJZ0NJSWdDSUlnQ0lJZ0NJSWdDSUlnQ0lJZ0NJSWdDSUlnQ0lJZ0NJSWdDSUlnQ0lJZ0NJSWdpTm5oakRaQUxwM2ZNZG9DSDA2WHE2eTg3R3BSOFpWTGx3ck9ueTl3RXFNdHFoVFlqVFpBTGpWdU5kb0NGbzZ6Wi9LeXM3Tk9uTGlNMGcwbmxwT3NlYkhYcjM4TkFBQ2NQM0xvMFA1OTV3dzJKMkpCeVdwUHJWclhBOERwWFR0M2JEdHJ0QzBSaU9WODJWdFdHRzJCREVqR3B2VnJqeHB0UllTQmtnMDdlYXRXckRoanRCRVJCRXBXRDF5N2x5emVoWjB5YlVESjZrWDJnbDgydVl3MkloSkF5ZXBJemsvemRodHRnL1d4R1cxQVphTEJzenYzUHAxcXRCVldCeVdySzF5SEQ3UG05N0hjVjV1cFFNbnFUZHlkYS9ZK25HaTBGUllHSldzQTdiL0ltRnJMYUNNc0MwcldFRkpmelppUlpyUVJGZ1VsYXhCSlR4MzliejJqamJBa0tGbkRpSC84Nk52VmpUYkNncUJrRFNUeFgwZWVpalhhQ011QmtqV1VtalAyRE1RaEwzbWdaQTJtMWVJRlRZeTJ3VnFnWkkyR0c3THZ1V2lqamJBU0tGbmpTWHB2WTBlamJiQVFLRmt6MEczTGk5alFTZ1VsYXdyaTNscloxR2dickFKSzFpVDAzakhHYUJNc0FrcldMRlNiLzBtODBUWllBcFNzYWVBbXJXcG90QTFXQUNWcklucHM2VzIwQ1JZQUpXc202djUxdjlFbW1CK1VyS21JbXpNTlA1RVE0QXN5RjdhWFo4Y1liWVBKUWNtYWpRZCtTakRhQkhPRGtqVWRReGFsR0cyQ3FVSEptbytibDFReDJnUXpnNUkxSWIwWFl6dkxCaVZyUm5vdndGM2pURkN5cHVTbTczSGNnQVZLMXB3TS9ody9HUWI0WWt6S0E2OFpiWUZaUWNtYWxmOTd3R2dMVEFwSzFxelladUlhR1Nvb1dkTVM5eU91UmFTQmtqVXZkWCtJTTlvRU00S1NOVEhYbWVja1NST0JralV6azRjYmJZRUpRY21hR2R1c0JrYWJZRDVRc3FhbTV1d29vMDB3SFNoWmMzUGJJMFpiWURwUXNpWm5Pb2JrNElHU05UbkpNL0VqQ2diZmg5bnBkNmZSRnBnTWxLenBlYmVxMFJhWUM1U3M2YW4va3RFV21BdkxSVDFYZllidDdVN1ZOa1RaWStJVFU2clZxRlczZnAyWThML0JzbzVId3Y0TUMyRTMyZ0RkV2VuUXNyU1l0R2F0Mm5Sb242eGxtWHhpM3hvUnp1S3RSdVZyWmFNMWxhd2JlK3RycisvYk1HenYwdFY3VTdpS1JzTFBMVVFsWWZ0ZVNaKzhyRlN0Y1F4V1dxNWxRZnlZVjdJQVVQWGVwUlZhU0pTUDY2WXdHbzJFR1ZOTEZnRHEvOTlKRFRUS1oxVjRqVWJDaWRrbEN4QTFmSk1XS2czQzFTdmNWbHNISEpmVkhPZHZQVzlhcjNHWjNQTWFGMmhoVUxMaFlQVU5BdzlxVytMQVZ0cVdaMkZRc3VIaHo0NVBYOUd5UFB0a0xVdXpOQ2paTU9INHFOMmZXcFkzRnFNaGVrREpobzJjT3g2NXFsMXBWZTdXcml4cmc1SU5IMlRXdFllMUsrMWhuRTV3ZzVJTkovLzArRU96c2pwMTFxd29hNE9TRFN1WGgzNnFWVkhjT0sxS3NqZ28yZkRpbUt4WkJNUFJlSmc0QUtCa3c4L1VLUm9WVksrUFJnVlpISlJzMkhuclRZMEtHcTFST1JZSEpSdCtYdjVLbTNJR29XY0FnSkxWQS9Mb0drM0txWE90SnNWWUhaU3NEcFNQeWRHa25EczBLY1hxb0dUMTROeFlUWGJ2OU5laUVNdURrdFdGZFpwRWltMmJwa1VwVmdjbHF3K3Y3OWVna0tnYk5TakU4cUJrOWFIc01aY0dwZlRWb0F6TGc1TFZpUTN6TkNnRUp4TUFKYXNmTDJtd0VyRXhPck1vV2YzSW5xVytqS2p1NnN1d1BDaFozWGkvUkgwWktGbVVySTZjK3AvNk1ycXFMOEx5b0dUMTR4UDFnd1lkOGZOQ3llckkvbzJxaTZpTy9TK1VySjZvWDlGbGE2dUJHUllISmFzakM5U1BjN1hSd0F5TGc1TFZrY3QvcVM0Q2c4YWdaSFZsb2VvU21tdGdoY1ZCeWVySmN0WG5ORFRUd2d4cmc1TFZrOVAvcUMyaFZxSVdkbGdhbEt5dXJGVmJ3RjloT09uQllxQmtkVVh0eU95aXNXV2EyR0ZsVUxLNnNwT295cjVvWEtGR2hsZ1lsS3l1bkN4UWszdnh2WnJHckxVb0tGbGRjYWtKN3IxazdHWE5ETEV3S0ZsOVVSRzljL0U5Mk1ZQ29HVDE1b1Rpbkl2R29XSUJBQ1dyTjVsS015NitGNzBDTjVYdjJHVmp5Vk9ZYjhsWWJHTTlZQ3VyTDJlVVpWdU1pdldCa3RXWEFrV3JEQmFQUTYvQUIwcFdYd3FWVExqK2dZb05BQ1dyTDJVVjh2TXN1WWV1V1BzWVhJcG9CY3gvN0xJNDUyUWJ2SVJ4U0ozOVBhZmo3OUd4K3BxUHlNZnFrczJWcmRpcTlJS2kzM1lTUWtqZTFIcjZWZ0NSaTlVbG15WFQzRDlZYmV4MHB5ZEZ5ZGZ0OWEwQ0lnK3JTelpISThXKzYvUW5jaTdxZ1Vjdm1oZXJTL2FVUE1VeXZBTDdPODZnZEs3bDErbGJEVVE2VnBkc3ZoeGIvMlFwOWkwblA2bHJjVWQ5SzRKSXhlS1N0VjJWbzFpV1YvQzJRTEdFRU1jM0RmU3RDeUlOaTBzMnFWeUdZaGx0YkJSVnNZU1FvcW00bWRHRVdGeXk5UmhxazZGWWlsZmc0K1F3N0llWkRvdEx0cjFrTzVleXZBSVJ4UkpDRmpmU3QwSklTQ3d1MmRza0s1YmxGWWdybHBBcmorTWt2TG13dUdRZmxHZ2wweXVZSHRxeldJc2haVXlGeFNVN1RacVJ5MWlLZlVPS0wxejRNSHEwSnNMaWtwMHZ5VWFtWXQrVTJIdjd0YnErMVVKRXNMaGs5MGd4a2FYWUtBbGVnWWVzbnZyV0MyRmpiY25HU3BsSldGYU5udG4raGtONk5jdWZST2ZBSkZoYnNwMGtHTGljMWNhK0xuMU1seEJDNWlYb1d6ZUVnYlVsT3lHMGZVeXZRS29mNjJNblR1Q2FBbXRMOXB1UTVpMW5lUVZ2eXZBS1BKenFwbS90RUNxV2xpd1hjb0UzVTdFeXZRSTNSWVAxclI5Q3c5S1NiZTBLWVp4V2ZxeVhpZ242VmhDaFlHbkpQaHZDdHVXTTRkUW9PV01GUWJqK0R3Y09qTWJTa3QwZ2JocExzYkpHdC9oTVI4MGFqSlVsMjBoY2VYK3gvTmhweXJ3Q0R4K2labzNGeXBKOVVkU3dGU3l2WUpxS05wWVFRbWFnWmczRndwSzFIUkd6NjY4YTlGeFJyNnRVTENGdm8yYU54TUtTN1NkbUZxdU50YittV3JHRVRORzNva2dRRnBic01oR3JtRjdCVkEwVVMxeVA2RnRUSkJEclNyYXJTQ2ZxcjNENXNSNHFodWxiVnlRQTYwcDJNZHVtRlF3L1ZoT3ZnQkJDU0ZFUGZTdUwrTEdzWlB1d1o3NytaaW4yVmEwVVM4anB4cnJXRnZGalZjbmF0ek10K2p1c2ZxeVgzY242VmhqeFlsWEpUbUlheEd4ak5mTUszUHlJTzIrTndhS1NiWHlaWmMvS212UWM5bGNyMUZhVngvUDZWaG54WUUzSlJxMWltYk9TTllQd2lyWnRMQ0drckkrK2xVYmNXRk95cjdDc1lTcFdVei9XUTA1dGZXdU5BSUJGSlR1QXBUK1dWOEJOa2hGdVRqcUwwSjAxQUN0S3RsMEJ3NVpWRE1VQ1JEVWMvdjdXVXJWMUZUQlp6Mm9qYml3bzJZYVpERk5XTWJ3Q0w5V0h6cEo3dEVJSWlscnJVMlVrQU90SnR0NGhoaVVzcnlBUWU0OFBzOVhXT0pCTjBlR3ZNQktNNVNUYmtLVll0bGNRVEV5L24wclVWdG9Qam5UcGp0VWsyNDdsRmF5V3FGZ0FnTFRYenFpdHRwZWk5UERWRmFGaU1jbjJaeDNuSWJXTjlaRDBoRmIrd1hJY05kQVpTMGsyYWdwckJrdUtIeHRNd3RQeXp4S2xjbWM0YW9xd3NaSmswNWF6akZoVFMwRngxV2VVcWEwOElZUmtNeUxhSTJIQ09wSzEzWHVCWllNY1B6YVFEdXZWMXA0UVFxWnJXMDhrQkphUmJOc1ZUQk5XeTI5akd6LzgybU10T2JBL1dhaTIvb1FVWTJCNlhiR0laT3Qrd3Y0U1g1TXF0N1NvUjg4UlFncGVzQU8wMmFIMkJSQXlQeHcxUmxoWVFySjEzN25DTm1DdC9EWjJySHZGZ2VOeEFJai9ORlJncjVBNExCMFIwWEk3M0c5Wm9iS0FhSWNtZG9qUTd2R3hJdEdJZDQyN3dMdml6Q2NBc1NLZG9yaS9XN2gvT2RYNUhBRGNQek5lcFlYTCt4T1ZKUmdJU2xaamtvYzgxRnQwNVBOeUJmOUsrWlM1a1B5alNNc1hWZFh6TVpIYi93SUE2UFdyeWxXRTVNYTE2Z3BBWkdCcXh5QnA4UDh1S1RCcFBrQzZ0RzdWS1BkejBvOHBlRW9nS3kzWFZQa3grS2ozQ0NLcTZjMjMzNWdTSXRIQjNaU0xKUjhCbkhqK2VuYXVtS0dleFN5T0hQZlBvMzJYdFZOaW80OGJyMSt2S2o4aUExTzJza25YVHA2WEthRlh0RmIyV0FFQUFOaVhldkp2aS9OZXFyMVgzVnY0UTdPNkk2RXdsMlJqYW5XOTg1VWYvcEc0MGtxaFlnSGF1QmNZbk9udXYxU0h0VUJNR281T210VGZDQ3puMDZqdWZ0M3NWSmVmczBWRng4WW5KVmV0WHJOMjNkUXFNbDdnaHVIbmxUNjA1UnUzSkphdWVYbHZ3S1ZHNjFVZE9QUHRmV3B5RzBubGs2eGhyQitoV0xFQXRsclZMcDhQSHV2b3VGYk5Zb0dTNXFkVTVEWVNYSW1tRit0SHFsQXN1TTRlUHMwYm5kdDd0NXJodW5qTEh2eUJrdFdKRGFQT2FWM2tueStweVQwK1ZpczdkQVlscXc4Ymg1OU5hWjVlVGI0Zmx0UzRaUTFXcnZkK1YyRlIyaUFWbVJFWnFCNHhNSVQxcWRXblo1YVZuZjVjWnBjcDVlVmpwV1hudjJuT3VGMmR0VXRIQ3N0VWZ4YUlKQ3dwMlEyMTYyOXovM2E4alp6S1Z2L2JuU3ZuV2thQ1BpcGl5cFEzVnY5cElCS3dvbVEzcE5vWGVIL2ZJdVA4YnRzWDNseUhXUkVQUGxCaEZwNmdvQThXbE95R1ZMak9GNi9JT2RyR3gxMHhUbkRkMXFySVY4WWt4dXRJT0tyY3JnUFc3TWpnR29Pd3MzSDRPZWpqaTNoaCsvaGxYbS9LTmY4ZEYwQ0RMOU1FT1pNU2ZiL2U5aW05OEt1UC9hVjRhTDFObHgxS3N4b0pTamJjYkJweERpQmdwalpWTUd0Yi9aTkNnSUg5UkV1cFpuUFJiL3o5dzEyS1RSdU5ra1dFYkJwNkhnRE8raStjNDg4b3VPWVZBOENTSWNMQmhPU0d2bDhMR0lvRitOZmdSTmF0VUl4NFVlWGtOU0lGaS9teUc5MXRhZysvTHpzcWlvZlhsK1ZmajRwSzkvdXlqN0hmeUd2S3JidEdodzhNc1paa04zcTJEOWgvODE3WkxHZkU0RXR2THVhSUFRQWtuMVZzM3V2cVBndEVFcGFTN0NiZmhwZDZXOTFYWkk3THJuQXZ3czN0THBicWFjWDI3YmJjcWlncllpWEpiZ3JvYVZXZm51Rnc1SHhXVDE1dGs2WWNMbmVlK1VZODhFRDhLYVVHT2hvcCtBUVFtVmhJc3B1Q054V21OR3RSVFg1OUU1dTBxQm1xTFh4T3NZa1B5VGNJa1l0MUpMdFpaQnVzUFRGUmJLd215aTdyR3p1WkZWNHhKRC9KZVl4SnNPWUVpQlhZT3VRczYxYk5GN2RtWm01K250SG1jdGZNV0wzNXB3ZGxyTjh1L0ZLdWNWNzZZRkR2OEdPVlZsYWtqZTF5Mkoxa2YzdmEzZmgzM1R2SjlvdDJ1WUpwcVBoVU8rdHVBYk1PRnBIczVqck1HalR5clJnOFF1bU1SWDNzM2FsN3FxMzB0L0lidzR5UVBLWGdJMERrWVEzSmJtVzNzZHhYL21RZkMxM1dBZjREdjVaTC85YnVwOVRRWHhSOUNJZ2NMQ0haTFNJOXI3b0J3YmhQcFVaSFIwZTdkUnNWSFIwZEhSMjl5SCszVFBya1ZKVFN0ZDY1VVdvL0VOM0JOUVpoWU1zd1pzOExvRm5BUkZhZDdRNEExLy9lY0FFMC90cTlvQ0JnUFZkTXo1MVNuK2o4OW1YWlZnSUFRTDJHSjVWbFJDUmpnVloyUzEyeEN0d3NpQ3FUbXd3QWoxQUttaXI5dGFRck5YYU11by9EQUxDVjFaeHRROCtJM2I1WUVlUDczYkhmQVVCK0xBS0FSZjNxQXdCQTI0QTFDREwyNUI3ZHFYQ0p5elUvS3N1SFNNYjByZXdXOWxnQkFBREVIL0NuM1I3SGNaeW5DOGE1K2NWL3Q3U0RqUGZ5Z2tKenJSZkpCS2NTTkdick1ORTJGcURrSTkvU1Y4ZEhwWVFRVDNSaWo0Um1sdmxTTGo4bzQ3bS95akV5Z1BiNFBSdHVUTjdLYmcyOTdpWG1LNDgzNjV4SkdjV3lUWGQ2aWpyWlF0YUwyYWZNWUdkOVdVOHhBZmcvcGluYmhwNE9tYVo4VXRhVDFRREl4UTltZUFKNmMvRzFZeTljY29jcmNyMWE5RUlLQUxpMlRUZ202OUgvR1NEWFdEZFY4cFRsTXd6TExaZzBkUmk1YmNNa3hXYmowbTVMaDhOL2ViWFMrc2tCMVcxbGUyZi9VdXErMjJyVXRmRVpTNWRlRFplVmlMNlkyVEdRNEJVSXNVM3dyTU55L3VFYkhPTXMxNUlnYkV3czJXMmk0N0VzeHZzUENGdUhSM1ZHSXVhVnJETEZwcDhQS09KdGJGMURnNE5jV3JGdFdPaWVGNFZIQW8remZWQ0paMUhaUU1scXhQYmhpbnJlY1VIOS9Gbzl0VEVtb2tISmFzT09vY3JHaWxLQ3ZRa1pTMlFyTFNoWlRkZytWT0hKQTd4TlhsYU5ySzBuS0ZrdDJERk02WGg4WVhIUW4xbnFiWWw0VUxJYXNGT2hWd0FBeFZzRC95cmRwdDZZaUFjbHE1NGRRMlFxbGt2dDBLMjFld3pXTlNmd1dKbjErOXozNCtOeHRDdHlNTis0N0haaFlGaFJiTDEvT2Uxd2xtZDhtZzRBRVAyOXY2U0wxd0FBMTJ6SzZvT0hOcnpaRGx1VENNRjBrcFdyMklUM3ZNZUhuaDl2QTREcVM3M2JGUEtIY3dCeFV6enp0NFh2aHpyREdiRUdacFBzZHBtTDkyTG0rRGZTbEQzS0FVRFN5NmRjaEpDU3Y2NEJnUGk1dnR1dXBRcmlJU0htdzJTUzNTR3pqWVVKZ1dmSVhPNEtBTUNsRG52cHpZbGQ3QURBdlJhNE0reEw2MjEvUllTWVM3STc1QjU5WEMwaktQL3ZQSWUxN2VYQXU2VTNhdmJhSWdqMDhkV3djMWlPekJ3M05oYjdFKzRMOGw5akorREFnUkRjbGFDQ1hVTno1V2JwRlN6Q2xIOGRCZUN5ZnErQXVGR3BBTndJWHVvcWwxUVppSmdCRXprR3NyMENBRzQrclNESFFJQUpndkFHaEpCUytVK0lmTENWVmN3dTJWNEJBUERQbzNjUkFMaHlBZUQwMVRnQTRQVzNPT3gvQ1VISkttWDNFTmxlQVFESjVQMzkyQzRBdUpBSjhFZVhLZ0F4dkJEenhiai9Ld0l3aTJPd1U5bDNOdStjNU5POGMrdCtDSDdJT294WUxLVHl0YkpyaUJhbFhIeFdnVmNBQUZ0M0JCMzYvVFB2M0xydlJnYTZBbVIraGFLSElLWkNkU3RyOEQvcFRjVUJ0bVR3cDg1aWxnV2F1aHVuYkNNQnEwdVdlN1RFWjhxWjNvTGJ6WTc1TFQxM0xTVS9Zam1zTGxtd2pmQk1nRGszZDZiY2JyUE5POXAxR0RlQ1JRYVdseXhBNnVQTE1zNGMrbVUwL1dqUUtrL3ZMWEU0U285TXJlVzl3dUVVWlNDV214RlVIZUFvbWo4MHFnc0pkWk9jK1dlOUIzTkhKVVJWWEdWMkErUFRHbk81MlVYdVAyS3Z1YlY1OHFXRHkvL0JRNzJ0aWhWYldhN0Yrd2VMblk3emErNlhldzQ5MTJlZCszeWtrb1Z5Z3MwaVpzS0NrbzErOHFMbjJhNnQ4czdaaW5yV1A3NXdjWXpsdmhFUkFMQ2laS05uQkV3Zm5PNGxJeWMzT2ZBSXVxSkJZVE1SQ1NmV2srempRUk5lSnh0S3o5bnBVcERsV1JqK3lKSllUcktOendjLy95dkovWC9iVHp6VHA0ZlRUc3VBNHlmaFpuek40TDlITnBXYXM5R3R2QXVqY0RZTVVMSmhKM293NzBMeTdWS3pkcTdLdTlCSXN0b2pHZU1IMWlPYzJvSVZYdzgyNFY4NStXVVpKRC9DUDN5SkNFN3lpbXEyUjBQTHJBcEtOc3drSi9PdmRCYk0wN3J5RnNEOTcwZ1l3OElvYzRDU0RUc09KLzhWTzhyNWFmSlBBQnk0SUpobWlPSXJsTWc0YmpGeVFjbUdtWXNYK1VOVFgzL0lUNU4vRG1CVlowRnozT0Y3M2o2YXEwYzFOYzJpb0dURFRQNWVubVRKb3NQVWhNSlFkTG5IV3daZjJLd3dpRzFrZ1NNRzRXYXVLL2p2byt1azVpejZQSGpsak9OalExYjBJQ3F4M0ZSQzNMcWd4enNla0o0MWFYMVExbm40bFdoSkxDZFphSE1xOFBGejVleEFiSFl3SU9mcUdtRXpFUWtuMXBNc1hIdlM5M0RuZDBteXNqWmM0bDJnVUQ0YjR5QmFGQXRLRmhyTUxYSS9PK05odWJ1OFk0WXRPK2NranJ5ZisySVVEZytXVzROcHlWMEpYSXVCbld1WFphNWVyU0RFRnBkYU8vYnE2WHp0amJJcTZOSHJBVGw2Rkd6Z0NwMlFsdmZzV1kydHNUZ29XYjFRSmxoRUFJN0xJaFlEVzFrRmNGMTJTazFxYjl3OGpUdDFKTXZBU0VYSjdXdHpCUWR3ZVlKaG1HREVnQnUvVUdMSytQczNYU1dFa0t2YkhwYTd0MVlyRW9kK20xbnVPTHZ3b1ZxaDB5Smh3WGpKY3ZlWC9DNHRaZWN0VHU5VFhUdTZxWDJ1RXFKRzdQY0duOGw5aGg3cUF3azNoa3VXdTYrRS9DQXBaYitnWFYvNUExVStXQUh4L3duWW91dGFYamQwRGtSN2pKWXM5MEFKSWQ5S1NkbUp0MCt4b0llNko4c24rcXZnYVBaYmE0Yk9nMmlPd1pMbDdyOUtDSmtqSVdYaVZ2NlRkd3RXeElhWnA1dzhDNzdGM3JZQkdDdFo3dDZyaEJBeVMwTFM4WUx6T2x5VDFUeGFQazNQOHkyb2lJVG9IVGd1S3dmdTNsbnhBSkttQmV5UEN1YkN1Zkh4MnBza3dtTUNQOEQrZEFSRXNrZkp5b0M3NzdNNEFKQWsyZlRXd210dG13bXZoWStFSWNKcjEwWEF0bkowYnFURGpmdFVlalBabGpLa0ZEMHlWWGdSQUU0ZlZuTitRK0lJK3JMRTZwUURTR0w3SGxIeEpIT0FrcFVNTjNaV25PZFhDZDlOMVBoWnI5RFRYdW0vV2FGTkFBQ1BTZGxPN29GcnErSkJKZ0VsS3hYdTNzL2lmTCtIVGs1Vk5TTmZBajhzakN3S25mVC9JSTcyTkZWUE1nY29XWWx3OTg3MGV3VVMzaHAxVHYvclhkUzB1YXJXQU0vWlEzZFh1cjlOdVZpbzVrbm1BQ1VyRGU2ZXp3S0VJYUhmZmJnOFJuRE5OWE9IaGlaNXFkaEN2MzZGWWdGWTM1WEZFUU5wY0dPL0RHektLRnJnYytDazhGcUdycUV6RHA4UlhpdGZyYWNGNFFFbEt3VnUzT2R4Z1gvSHNSTDZLZjFHZUczK0ZhME1ra0x4RXVHMVhSaHZSbitNbVAzaXhoWUhsN0ZVUXFhYUovaFB6dFo1V1VxN3kzd0xuUGZvYXdFQ1lJaGt1WHV1OHNxUUZQRGxEbDZ1MHBHeW42eVMxL2x6eG45SThHZ1FyZEZmc29JMmxoQkpteEs0U2FXQmVjcWUxSDAzYzhLaVlMTVBLenZkSEZHSDdwTGx4Z2tVUzZSNWhOeW9QSCtXMDNjYjBHMUkrVGx3TGRkT1hlZUxFUzk2UzVhN1I2aFlRdW1MVTJuNDBTa1hJWVM0em56U1dHNUZOU0htaVJ5dmMzRHBnd2dKa0lTaE44VGg3cHBOR2FndnFpYXhFSzVHOTY1MTRmVHVyZWZWckNKUVErcW9JZWxKM05WVHk3NDdicFFKbFIxOVcxbUtIMHNJSVdWV212ZTAxZXpTTFMyQ3Bvd2lxQ3BoZ0x2N2Mrb2V2K2drQlpHS2pNSjE0WUxSSm1nS1RpV0l3TjMxQlgwdk54Y2hicUVsd1ZhV0RYZjNsNnoxc1hvR0JlRGk3ZVdsT2o3UDdLQmttWEQzZk01YzBVMWZxczNHM3FSVnpmSzhmUVh5ZTBEMWh2ZHJIRjk0ZlBFU2pIMW9WWFRyZm5GM0ZiRUxlVWFXemZaQnE2OFFRaHluUHBXN2p5WG1DVThJY05leE1SaGcxcUxvSlZudUx1cFlnWWYzNUpoYzlSdGZBSXd6ZDhycVBDUjg3WjhLS0orRzM0aldSQ2ZKY25lTHRMR0V6Sk5oY2ZLeWdJd2xEOGdZQ1kvNmIrQWlBY2ZUbGh0RVJ3RDBrcXlvVjBBa3JvdnhGUFZSVU01TFhhVm43VjhXbkxXZDlLeUllZEJGc3R3WU1hK0FFSkloM2VBdXZBVmR5eVNIRXJDdjRUMzFLMnhtQVVjTXFIQmo1b1NJRWxnblR2S3cwd1Rlc01PTjErempKeWx6QWtDMFFNcXR1dk11REtnUldaTUN5a0RKQ3VIdS9ESlVYTXU0T3BrU0M0dS9pWGNoNW1mQjNvUzhCL0tnemF6cS9Nc0ovREcybXMxUnNoWWsvSTRCTjBiY2p5V0VFSEtqVkhzYkYwcXc2UzZBNXlVa2M0MVI5KzRpQTJ4bCtYQ2p2cElRTzdpWjFIMS9DWUo5WXBjRXUxeFByQUQ0cWFkZ20wM2RoZ0xiSkQ0MG9rSEo4dURHekpZUzdicUYxUEpLeS9tdmVObTkvRGt3bHdzZ2E0Umd4SGJzMTd3TEpGZnFVeU1abEd3dzNPZ3ZKWjFxMERKMEVqZm56amJoWFRsS1ArckRKWWhOdDZjc052aEMvakdwVDQxa2NDVlhFTnpJT2RJT21XMGx0Y1NpamJ3THpyK2taajIwaDNmaDcvTlNzeUltSXJ6ZHI5RWh4bU45bEVnK1lhWlBlWERPVFJLQ0lIZ1lWUkdVczVnLzZJVllnbkJLVnRKWWdZZU9VZzJPK2k0b1g4a3QwdXRxbnh1WTB6a1ZlMStXSkl5UzVVWkpHWkR5SUQySVJlck9nR3lPRitYb3JzcnYva1VHems5aVEyZEFURWdZSlR0U2Voc3JheTFYL2I5OXdpdDZWbDUvTitIMVM1NmNweCtMZ0pqeGxaUHdTWGEwSE1VU3laMG9BRWlZZkxpQ0VPSXFYdHhEN25jN2x6NXR3K21DbkpYUDFaZVpNWEt4bkh1a2RsUDRpWFQ2UVFmY3lLK2tqUlY0T0YvWEtTTjFVcWN1TlNxeU4yVjY5cExYN3RncU9tZDNCcXNFZTJxSzg2SnZCME4wWXBTalNNN0RFSE9oc3BVOVRqbDFBd0NBaytVVkVFS2N5a092MVAzUEdSY2hwUGlQYTZrTlJzcGpteTVXbE9YOGVpdU9tVWNHNmlSN25ER2VLbHV4aENpZTcrOTIzRnRFMFdUSzVwaHJkbnM4My9LNVZvcVdnREJSSmRrVGpEWVc1SXdWZUppaHNBS3RjLzFsbEkwWDNPNTJ4bjk3bWQ3SE1TTGhRSTFrajdkaEZEcFN2bUlKSTl4N0tHSldCaFp5Z2I5V29kcSt3TnN6Y0hJeUFsQWhXV1liTzF5MlYwQUlLVkhXQk40ZVBLUDFNYytkZlM3b2JtRUVuSG1FS0pkc0JrdXg4djFZUW9pTUpiTkJ6QTR1SkRPRjh4NTJ4SEVjRjdzditQWTBaUzhwb3FrOHZkSVRndzlScjNNanZwYThYaUNJdmtxT3lvanFIUHgzMnMrbEFCbXZYb0hhMCtvQVFBeXZlOWpYSnVIc1VjVGNLRzFsTXhoK0xEZE1nUjlMQ0pHMXk5WlA0bEZLU2E0eGZJL0F5eEdjOGhKUVdWclp6SUgwTmhZRy9rOVpHd3ZRTFVYQkFUUDg2RnJrZ2hNZ2J4dkF5b1BWQVNDNmVyQnZTekFtcklCS0l0a01obGNBMEZPcFlpR3U5eC95TTFXY2FCLzBkMzczeXdBbHBRQzd1OFVDUUwxTktVRzM4OUF2RUZBNVJsRXlCeDlnM2RxbXZOUitTakl0RG00MzEyWVhGQlNVQWdCY0xTZ29LRGg2T0RqMVNwU3M5VkhpeTJheXhnb0FvTDVEUVlGdWppbFpvRkUxeUprdDY4dTdQVEhvM0tNQ1BKQWpBbEFnV1ZiUHk0M2dSRG5KT0VYK0U5Z01Db3dlODRrTkFHSUh6TnE4YThuVERRQUFFamNHM0hXOWJMbFZTNGdRK1pJOUtSN0s2bHZGa2lVdktLa0E5NmhQczY3NWlRRFFaclc3b1QvL2hCMEFXdnBXSUJEWDk5TDMzQ0RtUmJaa1F5Z1dKaWlYTEg4bm9qUzRtM2U2UTNDZWVpWU9BRHJsZUl0enZoTUZBTTFYZUFKMEZyMHRaWGM2WW5ya1N2WmtxRG5QMXZ4VE02VlRvZkMwd3ZoK0h5NVk4dFY5dFFFQXF1d0tLTzh1QUlEWVliOWxGVi8rNTVQTzZCVkVCaklsRzZxTkJiRGxoUzZGeFJQSzYrSFY0K1RBLzVnRDdsWG10cVFhMVpneDd4R3JJVSt5Sjl1SExuR2Vjc2x1VUYyZDZBMkI1VG40TWVjUUlaRTlMcHMxZUgvb1JDdVZsOTlEOVNCVVV0Qm9SdFExYXN1ckJFUzBaTFB1a0tCWVdLVjh1RDdxVHNWWlBTUUVUei9XVkZ0ZUpTQ1NKWnMxNkI4cHlUSUZrUWlsTTA3dCs3c2FmQmd1bnBRVW1naVdiS1lVcndBQVlMbnlaNlQzVXA0WEFBQ0tndjVmWEx0VUZsY1ppRnpKWmc4V0JIaG44S2Z5aDNBUEtjOExBQUFWUHdhdU9UaW1jSGNPWW1ha2poaElHU3Z3RUYrZ2ZNeWdTTzFwdHRYMit3dXJ1RmRsWVpXQ1NGMThtRGxFb2xjQUFDVXJSeWgrVHVKOUh5ck9Dd0FBQmVOLzk0YnZkczM4WGtWQkx3NVdsbS84UVJVUFJTUWdyWlhONmlDbnpISEtXMWx5VE5FL2ZWUk1qTThsNjdUSlBVT2IvNjhZN3lXYmZIOHQ1cHd5K3dzVnJ4YzJpc2hzWlNYM3ZOd3M1WWZMbGtIek8zNlhuU2ZsN2hIcGNQam5Id3NCQUdEUExiY1BiUmQ3ZXZVUEdXNjNsbXM1dW5OODlyTGx4YkxLSEtUdzhQSmQ4aDZEeUVkS0s1c3BPZmlyaCtYS1dpaENpSkl0WUsxM3VBZ2h4TFhKZHdnelo0dnl0YXN4TDE4bWhCRG5Sbmtid3BjcU5IK3FiUE1SbVVpUWJKWmN4Y0xEQ2o5dlFnaHh5UjNucW5mWW0zVVBwV1cwdmVNOWFmbUU1Q05FQUtDSjBwWHFOOGkwSHBGTmFNbG15dkpqQVFBZ3RWVGhCMDRJSVl2bFBZdjcxSi8xWGVIdG0veW0vQzdEYTV1dTBQaEx1UHdtN0lTVXJHeXZBQURnVDRXZk9DR0VPT1V0REVnTkNMcVZYY01ybnVKN0FBQWdBRWxFUVZSdXQ5dnRIQUNBelc2MzIrMzJYL3gzUzZUWEpGNWg1NHNza3ZlZXpFREVkYit5aCs1VmtPdjcvc3FmYUh0VjF2QlM4d0J2SUcxVkdRREFtcGZLb2ZGLzZ3QUFjQUVlYkZ3dnlWVzVXMkhuUzgzTUh5S1JFSzFzVmlkRnBhWmNWdGhLRVVLSXM0ZXNDZ2lYbEpjMG94OElPbFZxbWJaOWxOeVNURzhhdW5DekVXR3RiTTRRL2xsWjByaXljSnp5aDlyZXZFVkdoSXg4aHo4Q2pQT0VFd0JnVXg3QTRrSHVWVnhOQThiYkxrb3RzNy8wcWI1Z0RweFVtQkdSam1ncm05VTVkQUYwYmxMWVRCRkNDSEVObFBHa3BJQmQ0WHVxeE1iR3hzWnlBQUJSc2JHeHNiRnhpL3gzeXlRN3lXdVZXdjZtN0JlRnlFWk1zbGxkRkJjYmRWeWszSkFjaUFuOUJCOVArandEQjJWUlRYLy95WGJMcFpiYVI3SGgzV1RZalNoRVJMTFp5dnhZTnk4cC90Z0pJZVFwR1UrSy84V2pXZGYvS0pOdTlwbGVSWitTK20zUHJWSnFka2FFK1lYbWhDM1piTVZlQVFCQW1wcWhXVklnT0psZWhPUVBDd2toNVBMYjFPbjloUGV1RWtLSWE1L2tUdDNOaXMxK1g0YlZpRktZa2xYaEZRQUF3SytLUDNoQ0NKRzFCc3ZXK3RuWlh6NmR6dGowYmV2KzBjYWRDeDZxSXJtMHJZcXR4a054OVlBbDJSeVZpbFhSVmhGQ2lHdUF2S2VKeHlqZ2JESmlHTnlwMk9qRGxBTnhFTTFoU0ZhZFZ3QUFZTnRQTDFraVdhRk9QSXBxT1hCUU85a1Jqcm1hWFhzMkZsMkttSEJTc2MxVDVWcURLSUV1Mld3TmRsTlBWUHpSRTBJSW1TTmVlc3ZmQ3dtNXVscG1GNzNtQjNrVnJ2eUZZdjNLVnhWYjdFaVhad3lpREtwa2M3VFkvNTkwVnZHSFR3Z2hybUZpaFhmSWNxZktsM0cyUFVDZGJlNWM1MjltSm1sZXJOamlOWEpNUVJSRGs2eHFQOWJOTk1VZlBpR0VrUE1pRWJyaWZERTRqOHNJVlJEbEMyUnpzZzRqaVcyWmNvUHZrL1YyRUtWUUpLdVJZcUdPc3NPVWZLeGhlNnEzK1phenVoNU5GQkFGQUJBcnZON0ZINHIyYVViQjl5czM5NEtzWTZiTlF3U01KZWNPMVdqMy81bTVrMVRsNy9QR3YxaTNydlAxemJucHp3bEdBOVpQTElXMmMxSUZ1Ukw4aTFsdm9wOC8ya0RGWnNudmk1VG5SV1FnYUdWenVtcFdkaE5WMHdtRU9FZXpTdjVBTkY5Sk05WWhTajdXVVVjTm9sWW9OOVpoMVpNYkxkL0s1ZzdkcVZsWkorYzlxQ3EvYmM1eFJvT2Y0Ly8xZUNhL2xTV2JzZ0YrdkVhNDVMVkdSMS9TQzlUQVljL0o2c3dGczRwNTRnbWlMYnhXVnNNMkZnQ2FxMnhtU1hZYXZlQzJ2bjU5eFcyY0FIY2E0ZlZtVjd5NVhNSWp4UUdnZHpuZENrbmNvZVdMUTBRSWxxeTJpZ1g0VW9VR0NDR0U3S0hQS05nKzhTNTJXU1JqMFpmdEkyK3UzYlRwMjNxNUtndzlZUG52VjhzUUpObGNyZU94TnI3SytvaWxzcHArd0VIeUQwNUNDSEd0Wm8xVzBYUDk1dGJzVWRvT3pQaE5hdXg4V01uclFaUVFLTmxjamR0WUFKaWhSZ2FFRUVLVzBNTjR4STVkZWViY2hra3lZN1BFUDdLNzRITG1oL1VvdDJ3cW9vOFRrb003YTNValFMSzVZVmlnbkpxdlZyTGtkMGJvbWFqNFJBVmZ4dEdwRGVKcGEyUzR0MVVaK2F4OFN4Q0YrQ1ViRHNVQy9GdXRZZ2xab2tjTDlwenlnM1FJSVdlU2RUQVJjZU9UYkJpOEFnQ0FoQXoxbWwwdGVhMnJZaVk3UTVzaHd2TmhOeER4NFpWc21CUUxNRWE5Wk1sdXhsaVhaanloVHJGNTJNanFpRWV5ZVdGYlVHOVR2Sk1xZ095QVpROXhWUksxT0hRdU9pWFpPd1BHVFZIbEZSQXlXUU43RUttNEpYc3FqRnRETzVScG9Oa2k3MWsxVlY3ZWwzLzhzOFpxamJLUFhYZnUxSUxyT1FBQSt5Y3FqVHVHWitQcXlTMkVFSklYMXMzTTcyc2dXZUthRVFNQVVIMGRJVVJSYUxzZzdCODVDQ0drNkY0QXFMcEVyVzNNcFJCSU9MaUZoTk1yQUFDQWxFeTFtaUNFRUxLbE9RQjg3UGxqazdxR2JaUm44ZUtGNXREbW9GckRObGo3VEJmTEhlMTc4ekk0TzN4YmVKOHhhS0VtcjZYd21UazFEM3BXZEx1K0VJbFdsUDkxQVNUY1Q1c3Y4TUFOOVI3QytFcm1wMnE3VHM1ZVcxV1dnSmdQVlJOTEFTd2JKSzFuUHczZ0VXazlLaFdINTNnSnNVa05zU1NwcDlVcmd4QkNpSCtwbFV1RTB2c0EraGVLcGRESUhFSUl1U0JjU200dExPY1k2TU9JbnpWK01TVkQ4dGczeTA2NmdHc29zdnlBdkRwR00wc21mcUZaVVlpWitFYkRkbzBRUW1hcDYvSjAwc0FoY0xNV3cyMUVLRlZQYUtVUlFnaHgvcWkyejNTWG10WGNBVnh0cmNuclFVekk5UnBweE0zV08yWEhpUW1reGt2cVlpejQrYmRXN3djeEgrcWlkd3JJZTExeGpQZXVzNVdIMStDeENmY2lSREIyTmVmWDBYQ3VlMFJCWnozdG1UM2FtVkRZVXZ2M2hKaUgydG5hYWNWRHhacG4yOG9ZaXVEYVByOUIzWkl0SGhHeGV3WUh1ZGowWEtYOGFGczJ1V3ZXYlRyc0RKbk0xcnpYRFRjMTFQYlJQNCtSY1F5SmFVSEppakR4c3pDOW5pdDc5dTQvZlB3TVEwQTFtN1p1MTZsTE5jMmZuZEcxUU9zaWpRQWxLd0wzNmFOaExKMFVaK2VlUG5leG9MQzR0TndGdHVpNGhPU3ExVlBycERXc0VwNWxLeVUzN0FoTHVYcURraFVqNWs5MmxFekxNZUZMb3kzUUJwU3NLRFhXUjh6USs2eEhJOEdSQlpSc0tKcHRrQlVydzd5czdWZG10QWthZ1pJTlFiZS9VNHcyUVF1Tzl6cG50QWxhWWUwRjZqcXdmWFNwMFNab3dNWEJFYU5Zd0hVOW9UaHhkS2psWDFMSjRNZ1lMQUFBbEt3RUR1WU1zdmgza2VPZXBVYWJvQ0VvMmREc09UUEEwcHAxUFRMUGFCTzBCQ1VyZ1oxbisxdFlzK1RabVVhYm9Da29XU25zekIxb1djMlNmMzlndEFtSUVkeXBOaVM5VWJnd1lseGxaV0NoMGVKVGhQTXBvMThjWWhnOXRkckxvaWNWRHhuOTJyUUhaNzhrMDNKeEM2Tk5rRXZKdUYrTk5rRjdVTExTU2YzNUJxTk5rTWZGRVd1Tk5pRU00SWlCZElwL3JOZlphQnZrY1B5MkNKcno4b09TbFlGajBhV2JyUFBDMXZiUE10b0V4QVRjZU1yb0hwVkVYSitGWStNYVlrSHFyelphakpLNCtsREU5bEtzOHoxbkVncS9oNTdtZjJuSEJ2NWh0QW1JaWVoNzB1ZzJOQlR6NlNmcElwV1c2dDlxR2ZCVmN5NC9FTEZPQWFJVWJuaWUwYnBrczZhWjBhOEhNU00xdjlZMDhwQjJGRDZKa2VJUU9yY2VNbHFkTkpaaEU0c3dpWC9KZEl1Nzh1NjI3TEplUkJjYXp6ZVZkMUQ2QVE0VUlLSG90Y0ZvbmZwd0xXcGw5TnRBcklCdDJENmp0ZXBtODQxR3Z3ckVLdGpIbXFBZnRtY29PckdJZEtMdk5yaWwzVFhTL0ZQSWlMbUlHcnpPc1BrdzUxcnI3djVGRElUck1jK1FQYmlsODNzWVhYWEVzdFIvSlZOdndlYTgxc0RvV2lPV0pucmdiem8ydFdWTGhzWVlYV1BFK3FSTzN1elFRNi9PM2MvVk43cXVCb0hMMURTbitjaVJuY0xiZzNjZCt1WG5BMkY5Z3BsQnlZYURwb01HOXdyWDFxdUs3UXNYSDQ2UVl3OFVnWklORTFWdjZuZHJJNjFIbjhpcFZjditqcHg0M01wQXlZWVBybG5mRzNvMzFFcTI1UFNHZFdzT3VUUXF6Y0tnWk1OTXcrNDl1blZNVWZtYWkvYnYyTEkxb3pKN0F3R2daSFhBM3J4amgzWnRHaW9aa3FySU83aC8vNzRqNVpyYlpGMVFzcnFSMkNTOVdkUEdqZElTcEF3bk9FdHlzck5PWkJ6TEtBeTdYVllESmFzM1hQWGFkVkpUYTlTb1dqVTVPU0VoTGpiYURnQkFuR1hsWmNYRnhaY3ZYOHEvY1A3YzZYTUY2TFV5UU1rYURzZlppQXY5VkFSQkVBUkJFQVJCRUFSQkVBUkJFQVJCRUFSQkVBUkJFQVJCRUFSQkVBUkJFQVJCRUFSQkVBUkJFQVJCRUFSQkVBUkJFQVJCRUFSQkpJSmg1TFNsYW9PR2RXdFdUWXlKY3BZWFg3NTRPaWU3QUFQRWFZd09rbzFKbFpUTTVhd29MYkh5NTV2Y3JWZlhEblY1cDNwVW5OMi9ZL09XQW1Nc2lreDBrR3l2RGRMU0VVZkYxZE5aeC83WmViZ3N2QWFGZy9wREIvZEtaTjBzM2Jwb3dVazlyVUhVMFV2dU1Xd1hGei9XMEdpalpSRXpmR2xaaURwVnJMb3pYS2NxSVpvalc3S0VrUEpWOThRYmJiZFVFcC9Ja0ZTbnJLZVl6VEJpTHBSSWxoQ1M4MXlTMFpaTHdUNCtXM0tWc3U4TDc2bUxpRVlvbEN3aE9mZWEveFB1dWsxV2xkYTFOdHBnUkFLS0pVdklpc1pHR3k5T3pMUlFQaXlmb2tlMVBuRVIwUjRWa2lVWGhoaHR2UmhwNnhSVTZac0VvODFHUXFGR3NxVGllZk5PZG5UTFZWU2xkVFdNTmh3SmdTckpFdGNiWnRYczdWY1VWbW0zdExrVnhERFVTWmE0WGpTNkFuUUdsU2l1MHZZcVJodVBpS0pTc3NReDJ1Z2EwTGo1cW9vcS9SRnR0UG1JR0dvbFN5NmxHMTBGSWUzelZWVnB1dEgySTJLb2xpeFpaemU2RG54cUhGTlhJMGMvbzJ0Z1hTd3hTdGo3WHFNdDRHR2IwMXhkQVZGZm9EdHJZdFMzc2lUSFpMUHpqNm12MGd5ajYyQlpUTFQ0VUl6Sm42b3ZRenVhN2trV3UxMXdLTGVRUzZuZnNwcll5eTNyZUVSanF4RE5ZTGF5TGg4aDI2U0RabHB0d0MwU3NmVENlOTA4d3dIMlRsUEZWc3pNTTdZU2lBZ3N5UjVMODlHbzNhMVB6TDhncHRsZVJ0Y2lnQUhzZjdIeXQ0TjgxTGhuQ3RsSlZickRsUllESFlQRHZGVk44YU5lYWNZczVLT241VDNVM3F4VGk3VHFCUlBGMG5CSkxabzNyRk05T1M2S2xCVVhuTXZKT0hMQkphWG9IUjFadDg2TTR0ZTF6VUttTWo5NFRzTERWTUlsTm12V29FNzFLdkhSbkxPc3NPQmNic2JSaTFMcXlDZXFkc3NtYWFsVkUyTTRaMG5oeGROWngwNWMxZHhXcVpoSXNnQ0pIei9BS3VSd0c5KzJzSVMyMUJURkIzMi94dllmZVhNZEFJQ2pMWmxXMWJ1bDc3WE5ZNEt2dVhLM3IvM3JXS2lQZFBTUHJEdW5iaEw2cC9YWE4yR2tQdHU0MVAxTEo5YkV3aFZoY2RHZDZFbjNDVGNmY1dtMzNOQ2RYMFVndVRzM3JEamdaRHlSaHIzVExiMjcxT1lKcGZUUXBsV3JMc2tveFZLd0hJTkR3cVMyV2F5dlVVZGRYNktPOUJSWjN2dFZwdVI1cjdGNk9EVW5iM1F3SHVUNjV5WHhYVHkyblN3Ymk2K2hwZS9Fbk5nZDRFbXhrSlVnU3pnRWVRTTk1UVdCNm1zL3M5M0pLcGRrdk50V1lsdkZkZmtQMHlHL3VtaFVoRzRPa2lGWmlQdUg5WDRHK05LMFk3eEE5K3V6M1hmR2Y0MHUyZlF2aXBnZkppR0VsUDNZV2FRNk56THpQVWJQOENvci9aZWVCR05ZQ1p6Q2FiOHA5SlJ6ZWNsYWZSMWlCWVJ6NVcwU1JCczFZcE40MXpqdnhZZ2NYNVlqV1JqRmVqblArcEswcENkdzFBWUFxTDRnOEJwTnNuVm5sNHQvbW9RUXh6eDJTL3N6SzlNbXhyUk00aGxHaHBPZVlaRGtTNndpSHhJVXRveWVNSGhaY1kzUFFsZVJrRlVNSDhNSGQ5dnUwS1djbTJTNnFVbjF5SkpzTEd2YzRHTmZrbWFNRk9rQTBPUlEwQ1doWkcwVEMwSi9ESVNReTZ6ZEE2bXM1c3QxQStzRnZNWjZpTGUzK1IwcndYZjhvbUxvMWhjR0xSc2ZjRXBTRlVuNTYzeEhONGphUDRRZWZDU0VrTzN0eEVxeEpMSWtDNHNacWYxOW5zYU1GTjBBR21VR1h4Skl0b2JZa0dvd0M2cFM3WHVVbFg0ZDh3VTBaMzMwZDNrU0RHQ1ZtYzMvdjdtR251N1hnQ1RjcTJ3ZmxzL2FPa3lqNGRiVFVrc3BmcEJkaWpXUko5bDNHYW1YK1ZJMFpLUzRDVkwyOFM3eEpkdjZ1TlNQZ1JEeVQyT2FmYXRZeWUraXBYYXpuNUhGdTU0cmx1VTZ1UGdqSGsvVDA0M3pwN0RObEZGRmNvdzFyTWc5VlNHam1BLzBYS3BpdW1VeCtZenIvaTR4YXhBcWtmdWt2WGpaM2RlekIzNkZ0RjNiUW5peEptdE80L0pDZGttcm5IUzhRN1psdnpFeWNyMTVGL2gvdTZuNHcvLzc5RWZaZGdocC9uY0Qrb1BmbWlISFJYMW10cGxtSjlVanI1WDlOeVAxQ2wrS2Vvd1VvKzRRZkFFSHQ3S2Q1YTV4UFprbU1JL1p1LzlCNUEzRTE2Q1Q0azNRbTFYcXQ4RUYyZWxmMXY1M0EzZkxyQ0xaUlZ0eHhMMGx0NWhQekxyZFNSSGFPQWIrUnF3T0k4VURCd1dYZ2lUYlVHS3ZKSUFkZ3MrVE9YQjh2NXBYWkdmRm16a1ovQzNJR0N5WjVFdVF4aHg4WVBJRnhaN0owanBlZ2NpY25UUTM4aVRMNmgvTjlhVmdTWGE1OEZLZ1pPTzJ5LzRZQ0puRHM0NFQvbHU0Y1RWVjlZN2VaaFRyREM1MlBEMlIvOHRndnZ3cU9tOFdXTk5YeWhnWmo0cnJWYjBBYzZITklKZC82MGtxSXdXbFpRaVU3QXo1SHdNaHJ1SEI1dFZrZFVwT3EvdGk3TVJxMW9JWHQzOUZUYlBWZDcrOTlNRUNQN3Y1WG1zTjZTR2JBc2pRS3g2VjJicGZRMWliL0VNSHV4UVh6ZlZQS0xBR3VQOEd6KzUwWUhWSzlxaUxqTHYzQU9ORzBHQXYxNU9hWm9IdnQ4ZVZmSnlkQnZFdWZFRHZrb1dneVRRbHVSUmdNc25HdjhhNmM1QjFReHBSTTlrMWRSWTdtUGZxQjI5Slp3NUpxRFNQMlh1N0lmQWZzVFpsQ0FQQTcrYkhqcUVYc3ZlOUNYZU5lL2FyTFBwZG1CVDg1dzNqNk1rQUFNcXVzdjgxSjdQWElGa05PY3Rpdm1GOTdaVDZCL1paamdFRnYyTkE5d0lKSVRzbnRvZ0NXNE83bGpPK21vdnFCUnI0T2FzWVdVTkxGRm93bHVrNDZnY2tHa3BONHY5dnVZMTYvNUozTnBjYmNKaWFvRHhvWU1TMm1WSEZzcm45YXdERWRaNlN3MGdnTm1oaUxhUkx0c3FQaktTRWJQT25VaUxaNkpQMEJDVVRmYTNZSU1ZUTJEdUJGcTVnUFdtZzJyZkVFc3JJZ0RUdlVWTzg1YnMvalhyL1RuOEJLZXVwS1lLV2ZBNWtHTExIdDFZMGdmR1A2ekRoNW4xbFNKVnM4aVNSR0Zldis5TXBrU3hqdUxKOFFNRHplOUNEYVZ3STdGWWNaVDFKYk8yWEpCNW5GUHhSUUpvTjFCVGRmZmVwcXhnTEFoY1MxS091VVpnZGtJSmJRN2RqZCtEODlhZjBOUDlWK3hMTUFrdXlKMXI1YU50aitKUWx4WXgwaEJEaUNwQkVUWkYwUEh5UzNVaS9IK3c1TXhiMkJiaDJqRlVwaExnVTlWZ0NxY2NJKzduRG55U2V1bVl5eCsrazc2SGR6d3JxbGxKSDA3WUdKT2hBSDNRb0RuS2o0NDVRRTEyMFRPVDFFR2l3S1p6c0NuanZOYVJuODBxMkZmMTJYbkRjekNUNkFKdC9kUU5VWVMwTXIxQy9iSlF5ckV4SWtCTi9MVFhCSi80aXFFNW1SZEJPbm12T1V0Z2JrT0FEdWhsQjdoSEEvZlJVdkNGQnk2S0ZaQU1YamlxUTdLdjAyL3poQ2ZyVVZvbC8zSzBCNjBGbDZvTnNNVlJBYnZPbGVJcDZQMkFtNEN3MXdkNmdCcEtqNGI5dHo2S1dVY0ZiUDV4SVh5UXZXQ3daRGt3MnlNVWdTKzRPYXRlRlk3dTNiZHQxM1BNbkk3RHlUN3kvLzZLbWlydlI5MnNLTlFFQU9DdmtXRWRsWVRIOXVuOHM5anJhN1l2ci9iL1RqZWl3NzR1dWZsRlNwZVpQM0lXK3RuMXJkdkRmeFJ1cHlXNk5rTlV4R3JTeTl3ZVdGNnFWUFRmMy9vNkpRZitLZGVnRFdLZjRMN2dKUGQxTVg0SnVyR2RlMXVBOS9VSXYycmZteFpaSnV4MjRjT1lRTFFFaGhMaU9mbkNydElBN0w5TUxlSjJmanJGdUp0UkdCNHVnWHJKcmc3UWxMdG1EZHd1MzBER1dYeTNscDR1amY5M3Q4U1c0anZWVUxZNVBIRTR2T3QvYjQ2OVAvWWNhRmxBQ283UHY1dXJhMS90VkMybkVTbnJtWWZ4MGpIRnV4dlkzVGJIQ3hwMHJEMHZldyt4NjV6WEswWXpVYjFTQUUvd0xwWmVvVFZGNmNxSG5OK2Fjc0JiKzFiTDg2clRMMWRwNC9tVzYwWjVlSExEd0VFNzBFU2srL29ZYndIRncvYnAxWjBRU3hYYWhYeGU4S2tZaDFEM0dHbU1CeWJvbUhwV2M5SkV2YVpjWm44TUZ3WmhNRVRWZGZQUGQzdkpaRHhiZFJDV1Jxd3ZwVVJ4NmVpUjdMZTNtaWtDVGQ0WGEwV0x2MEdHU2M5K3l4ZHRZYlVCVCt1NGgxeFgrcTJLYzJScGlqYjFWVU9zWXZNUXJUOFF4ZUl0cUFGeWtwM2FVOFdGTTJ2cW03anV6SGx5bWhXWnZvWmZ0N1laVHQvRGNGMWhBYS9hYkNTYjN2ejNvWHhnakdSbksrVytLc2FMdFltVDB2MVFlNy9FVy8rV3lKZnNQUFJLRWpMa0hPaTk0UzBwbnBYQ0U5aEpERTBPZi9UdmhmZ0V4dEFubHNwcEJKZkQzdnJGeEhYaUtadkwvU1M2QUFiMlYxaFN6RDNJNS96MUYrcksrcWZTdnEwWnFqZkF0VFdFT0ROaTBpRUJSL2l2MWNrUDNOdGdXTklsdHVCRDA1eWVVSkhTNE5qTk92aXZjWDZ2ZHF3b2ZKcGZzeGVIdlNsZHNMbVBIWUQzNlplbjRtcktpVWtZS3JwYmFad0FBektmVzFkNFZBQUM2MHU0dENQNXo3akVaVDZ2eS9ORlgrTWZtYWZlcXdvZTVKYnUweXlJWnFYOWpqT2VyZm8yK0dZVFNLNndrcWo5ckFJRHR4Nm1YZXdBQVhiSXUzdXNwbnlnblBod2t2N2FITjhhZzNhc0tIMmFXN0lreGQyU0hUdVdIUG5tbHdXdjB0VVhPVTZ3a2pkVStBd0RBU1krcHlKYnNMdjc3V2YyS3ZDZTIrUHZsb0E2VGRxOHFmSmhYc2tjZmFmZVRyRkNvanUyTUc2b1BXdkNQQkdheWttZ1QzL2dIYW9VN3h3QkFQQzJNMEFMQmxla3l6MkN3VC9zNmNMQkR3MWNWTmt3cTJlSmZCcmFkeFhJY0dadzd4N2loNGJsd3pCRmllc3hidVJ6Y1M3dGFMUjBBMGltN0FZblFlU2ZQL3A4czN3QmczSnlBZHRZS1IraVpVTEt1NDdOSHA0MzZrNzBmaTBGR09Jd0JBQUIvcjRpNXhhdWpKZ09TWkQ3MWNqZWdUNGNjcFd4eUpOUHZZSG92ZE1aTzhmK3VPb0NHdWwyYmtqRFA3SmZMV1ZhY241ZDFkUCtlczBwQ293UGtzVzdJRmo4ZmY3ZU8yZ29DQUZSTHA0ZGxrTW5QYjlFK2tLNWZBOUMyUGZ4T0xXTlorN2ZHeS9wWVgvcHJpL2RYMVF2UzFLOW9DNG1Ca2ozYVBlaFA0bkpVeVB4T0M0WVZ6UXNZcS9xazR5L2d5QlZHQjRYcm80bGtNemZSUW41MkJYb3JTNWNzNUQveTJiU0JNbHI5NkErdjl6WVNHcjZxc0dHZ1pGMWFyTmdMZ0w1QUFBQlVoL1EvNy91dFpEZHI1VW4vejluNWF6STZaODZkZ3UrVCtUVEp0b2t2aVdranZKekw2bS9DM2lFZG54b3R2Zk4rM1MzZXdSWU5YMVhZTUk5am9KcHkxZzFXdCt4aHFRMWpnTXV4aGlYWm0xT1lZN1l3K1ZYNjlXUENuZisvellnVHBrdEszOXVJTXZlMVdPUkxhZThETDl3OXJyUFVuc29FcjJRWnIrb1k4OWdWUHZ1bEpqUTE4bUp5aFlhMXhtQXFLME43UmdaNjVFdGxsZUh0ckE2R3RlSDdlMHJhSmJTRTk4TUl5dFZiUTlqS3RaNnlUVnFVMkN2ZTRZaVA2ZmRWQmhiUkZoT09HR2hPSnFNYnk0cWxKTWIyczZ3N2p6SjcydzI2TVc3UVRwZWl5Umc2UWdmaHhYeDIzSEEzNU5DYjNadmNQeTgzZEM4KzJidk9sVEhxb3VSTmhZM0tJTm5DSFBwMUpXdEF5cGV3N25RVlJoRDBNSTdSRlNLcktCZVgwUHlMOWpUSi9zbFlzeHBFN2pkakc3ZCs2S3VESVhyeTNzN2RZZnJ0YW1ZNmQ2WXlTQmIyMEM4cldvOU1IemtGQU80dGhqTGpXYnRMVHRBbUpxNzhRYm5ZeGthWnFtQ01Gd2h3SHBrenZsM2EwSThPaUl3ZGV2dUhlK2xwb3MwVWJxdFNTSmJScys2cFpPQjhIVE1FWXplR05DZXpGdVF0cE9xRDlqOVJxN0Z3NDJzeGEwa0ZEWEp1NGRQdFc3K2N5YnJ2WFlaNGh2R0ZaS1lqaEN1RlpCbE9YeXNsTWFRcStGR1MvYnhOM2JEVGdyVlNoUkYyYlFXbDEyNGZKbHk4dnJKUW1FNFVjdlNOMWk4d25BbnZhTE9MY1hqcllKblBDaWNSTk1qRlpndDlBb0I3OEYvQkYycjhTUDF1cnhnWjZGL08vamNyOW0vQzczMkYzWmVxUDdPUzc5MUZ2Vno2K3dUaHhmZUZsd1Ird2EzVUlFcy9CSjZQWFByZSthK3BEL1d0TFZoeEQvVis3M1NlRXpOMlBEWGR5amVvbDYyRzRZTmNBRC9SYzF6aUxjdW5oMk1KakxvSXdCd0lJb1NRTE1HMGFpMUdOREJDQ09zVTh6N3M4Z01vVCtYbm0wTk5OelE0VVJRMUdJSS9XRUx0VXZyanZna3V4c1k0dUZWNEhLUWxNWUZrYWFPYWhCRHlZNUJmbE1JSW5QcDhjR0VOUkU3QUxYNG1lTi9pTFNlWlNVK3pGdnBGMDFYRlk3VWczN1BVZEN0NERqczkxc0V2dnZ1TTBHQ09ma0dsM0VsUFZhYko1Z3pqTVlGazQ4NHo4cndXOElIYXZtWjhEdnl1ejNSR1lZUVFRbzVNOGpWL2NmMy9GRG03NEFWZ1FROGp5ME1ZUjU5eGlEanZDRDM2K1NULzhkMW5uY0owUGpBUVRDUEcyWHBTQnpITWpna2t5enlhaVh6ajJ6cFNqUlZCWEhDT1hCVldHR3MzWmRzKy8vY2pFNTU1Znlsakw3cWJMUFpwR0Ywa0hHSGtiQ0xJRmt0di9ZdUMyc2VPOU5pTi9pRGtDYXlqcGdyRytoejlucXd6bjI0WCtRaXNoQmtrMjREaG9oR1MvOG5BSnRWcXRSNzZNYXNoZGdubmRVZklQeFpMZ01qNW9iWURvYlB2cE9UN2paNjAvRjMvNUZWelJ0RUJ1M1JlWWo1ejl6UFgxcTVXdi92RXBheVFwZnNpWmZ6SkRKSUZXU2U3QnNGM0JnR0FtNmU0TkM5L2luMjZyNFRPejQ5SEFzRDIyTW1WK1JONk5hM2JzTXM5M3pEQ1RwOE44TUNyc2Y1M1F6TmEyZ2RvZmt3aDJicVhGWDRNRmJRRkF0V09LU3pOeXdWNlRFd1BMVm5ObUE4WGJlWXVXdHhoRVNGb3JKbHh0SE5vTnV2VHlFWktVeDZLMDFNVlpweE5tem9yR00xY25Dc0o1M2pScmNOSGFWLzdRUno3aDNLeGdqSjZLd2tTTkZnN2M1K3lVaHhQS050TklwZktJbG40ZUpPaWJDZGZwRjdlZlorcTNUblRSSTRWQitZV3NBQVdVbGRuelZLNC9XMWowTHNwbThCY2VTeksrOHdWNTViREZJNEJRRk81NTRRVFFrZ3A4MlRXaVVyTzN2UXdPMVJEa2NZNDY4TUgvWmhGdUYxUnY5REIzd254THlXbGJLWUhSTE1rSnBFczlKZTIzRGtRbDBpSTMwa2hIVTRXMzRXZUpmOWJ2SVE4MXM0dWtaazVOb0t6d20zczg5ZVk1S28razhkRW1FV3lNRUYydy9pbTJGcXZzU1Z5aTNQem1ZUjFIUStLRjhIY1p4WXJHc2lienI1a1FURUpzb3ZKajVDUTgyNU1JMWw0WEo1bVhlK0lyMDY4NGJTczR0eVVQeWRseVdNTnNVUFFDT25IekZodGwxeUQ4cHBSaXFteVRsNGhGN3BUQ3JFdTVwR3N2SWF4NHBsUTRrcGpuQ3dnUWk1ejcwSXdqR2tCTi9tVUxZMWVxdFBQL0dTU1RZOXprN1JBVGlFbnRBbVdZeHBNSkZub1NUL1dpc1laQ2JPUFVVOWVrZlBKRXVmL3BJWVdIQ1ZXak9pUlV2RmZ5ZW1EYldmdEpySlBrKzc2LzZGRGlFNWRNWk5rb2NaMzBqNVExNjkxSlJuVGFMNE1aMk8zeENZV0FKTEV4amRHaWVlOTY1eFVneW8rRURuQzgwYUo4eVdYSjBYY1NLbXBKQXR3bTVUbzdQc0hTdDVrMDMyeFJOSHV2MXRPM0M3V0loMUNTSEdva0pxMVpvWWFKQ09FRU9KYUwrNkJKcjVXR0xvUXg5dzBHYld5Q0NhVExOanYyUnZpbzl4NWw2ek5HdTAvdnhUeWt5MWYxRjllVzlTUFhaYjRQQVFBQURUN0xLVGFuSC9mSHZMZnN1NzdySE9tUFpUTWpUQXYxbzNaSkF2QTlabkwvaWpPZm42ZDdHMk1TWGN2RUpOSTZhckowdHlNQUdKWml3Q0RqaTVuVSszUnRTTE9xT3ZJbTYwbG1WRmw0Z2JtK0xOeng3TzE1VlpMQTFSSFp3eE5kVVpVbHFLVnlzcUw2VSsvZm9TeENaOUtYSi9iYm1qUG42OGhoVHZYcjlpcUxIaGZRcysrMTNXdUtuaWQ1TXJlTGV2WEs0ays5dkZreG8yUytoTFBjcXg5Yzk4ZUxZV25Pem16dG0xWWVVUjZWTTIwMjIvdVZaLy9GZUhLMmJ6NnIwekpaV2lKRHBJMUxRbXRXalZOUzYyYUdNTTVTd3J6eithY09KeWhMcTZucldITHBnM3Exa2hKaU9HYzVjV1hMNTdKelRpV3JYU3R5SFB2TVc0c0hNcTRRU01oUGIxUi9WclZrdUxzeEZGYWRPbkNxZXpqeHhURWlxdlROcjFSM1pvcDhYWlNjZlhTaGRPWnh3N3BFQzhPc1JiUnpET1V4NFRPakNENk01R2wyQUxWNXhrZ1NCaG96MXlTVGoybEYwRU01anJtZUlITFRMR0dFQVFBQUxpT1g3REhwL1pYNWc0ekFGU1NBRWZXd0Q2L0l2OXllWFRWUnAzRkRvS2RxY09aTHdnaWllalFjMmlFWEJRdWJxMXNSTnlLaGdobmx0eDRod2dTTnFTMHNvVkd6SkNhREd4bExjWEh6S01hRUVSM0pMU3laeWxIS1ZVNnNKVzFFbE1rTG9oQkVEMEkzY3F1MHVSc1p3VFJpSkNTdmRqWWFCTk5BVG9HbHNGeFg2YlJKaUJJSUNGYVdSZHJ5VGVDR0lTNFpKM1BHRzBmZ3ZBUWxXeVJTTlJ2QkRFR01jbHVhMmUwZFFnaWdDM1puRWVpUTJkSEVMMWhTTmE1OFFHUmtDNlZFRnd2YTJaY3VWYmFNMHdBQUFBMlNVUkJWTnRYTGMzRUZiSkJWUG8xN3VhQjYxV3plcFVxS1VsSkNUSGdMQ2txT0orWGNleUNQc2NQSUFpQ0lBaUNJQWlpQS84UDZ4QzZ4VDA0ak5nQUFBQUFTVVZPUks1Q1lJST1cIlxyXG4gICAgICAgICAgcHJlc2VydmVBc3BlY3RSYXRpbz1cIm5vbmVcIlxyXG4gICAgICAgICAgXHJcbiAgICAgICAgICBoZWlnaHQ9ezF9XHJcbiAgICAgICAgICB3aWR0aD17MX1cclxuICAgICAgICAvPlxyXG4gICAgICA8L21hc2s+XHJcbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoNDItM1wiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxyXG4gICAgICAgIDxwYXRoXHJcbiAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICB9fVxyXG4gICAgICAgICAgaWQ9XCJwYXRoNDAtNlwiXHJcbiAgICAgICAgICBkPVwiTSAwLDE0MTcuMzIgSCAxNDE3LjMyIFYgMy42NjIxZS00IEggMS4yMjA3ZS00XCJcclxuICAgICAgICAvPlxyXG4gICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwUGF0aDQyLTMtNlwiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxyXG4gICAgICAgIDxwYXRoXHJcbiAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICB9fVxyXG4gICAgICAgICAgaWQ9XCJwYXRoNDAtNi0yXCJcclxuICAgICAgICAgIGQ9XCJNIDAsMTQxNy4zMiBIIDE0MTcuMzIgViAzLjY2MjFlLTQgSCAxLjIyMDdlLTRcIlxyXG4gICAgICAgIC8+XHJcbiAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoNDItMy02LTBcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cclxuICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAgIGlkPVwicGF0aDQwLTYtMi05XCJcclxuICAgICAgICAgIGQ9XCJNIDAsMTQxNy4zMiBIIDE0MTcuMzIgViAzLjY2MjFlLTQgSCAxLjIyMDdlLTRcIlxyXG4gICAgICAgIC8+XHJcbiAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoNzYtM1wiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxyXG4gICAgICAgIDxwYXRoXHJcbiAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICB9fVxyXG4gICAgICAgICAgaWQ9XCJwYXRoNzQtNlwiXHJcbiAgICAgICAgICBkPVwiTSAtNi4xMDM1ZS01LDE0MTcuMzIgSCAxNDE3LjMyIFYgMCBIIC05LjE1NTNlLTVcIlxyXG4gICAgICAgIC8+XHJcbiAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoODYtN1wiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxyXG4gICAgICAgIDxwYXRoXHJcbiAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICB9fVxyXG4gICAgICAgICAgaWQ9XCJwYXRoODQtNVwiXHJcbiAgICAgICAgICBkPVwiTSAtNi4xMDM1ZS01LDE0MTcuMzIgSCAxNDE3LjMyIFYgMCBIIC05LjE1NTNlLTVcIlxyXG4gICAgICAgIC8+XHJcbiAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoOTYtM1wiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxyXG4gICAgICAgIDxwYXRoXHJcbiAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICB9fVxyXG4gICAgICAgICAgaWQ9XCJwYXRoOTQtNVwiXHJcbiAgICAgICAgICBkPVwiTSAtNi4xMDM1ZS01LDE0MTcuMzIgSCAxNDE3LjMyIFYgMCBIIC05LjE1NTNlLTVcIlxyXG4gICAgICAgIC8+XHJcbiAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoMTA2LTZcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cclxuICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAgIGlkPVwicGF0aDEwNC0yXCJcclxuICAgICAgICAgIGQ9XCJNIC02LjEwMzVlLTUsMTQxNy4zMiBIIDE0MTcuMzIgViAwIEggLTkuMTU1M2UtNVwiXHJcbiAgICAgICAgLz5cclxuICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGgxMTYtOVwiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxyXG4gICAgICAgIDxwYXRoXHJcbiAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICB9fVxyXG4gICAgICAgICAgaWQ9XCJwYXRoMTE0LTFcIlxyXG4gICAgICAgICAgZD1cIk0gLTYuMTAzNWUtNSwxNDE3LjMyIEggMTQxNy4zMiBWIDAgSCAtOS4xNTUzZS01XCJcclxuICAgICAgICAvPlxyXG4gICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwUGF0aDEyNi0yXCIgY2xpcFBhdGhVbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XHJcbiAgICAgICAgPHBhdGhcclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgIH19XHJcbiAgICAgICAgICBpZD1cInBhdGgxMjQtN1wiXHJcbiAgICAgICAgICBkPVwiTSAtNi4xMDM1ZS01LDE0MTcuMzIgSCAxNDE3LjMyIFYgMCBIIC05LjE1NTNlLTVcIlxyXG4gICAgICAgIC8+XHJcbiAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoMTM2LTBcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cclxuICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAgIGlkPVwicGF0aDEzNC05XCJcclxuICAgICAgICAgIGQ9XCJNIC0xLjIyMDdlLTQsMTQxNy4zMiBIIDE0MTcuMzIgViAxLjIyMDdlLTQgTCAtNi4xMDM1ZS01LDIuNDQxNGUtNFwiXHJcbiAgICAgICAgLz5cclxuICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGgxNDYtM1wiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxyXG4gICAgICAgIDxwYXRoXHJcbiAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICB9fVxyXG4gICAgICAgICAgaWQ9XCJwYXRoMTQ0LTZcIlxyXG4gICAgICAgICAgZD1cIk0gLTEuMjIwN2UtNCwxNDE3LjMyIEggMTQxNy4zMiBWIDEuMjIwN2UtNCBMIC02LjEwMzVlLTUsMi40NDE0ZS00XCJcclxuICAgICAgICAvPlxyXG4gICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwUGF0aDE1Ni0wXCIgY2xpcFBhdGhVbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XHJcbiAgICAgICAgPHBhdGhcclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgIH19XHJcbiAgICAgICAgICBpZD1cInBhdGgxNTQtNlwiXHJcbiAgICAgICAgICBkPVwiTSAtMS4yMjA3ZS00LDE0MTcuMzIgSCAxNDE3LjMyIFYgMS4yMjA3ZS00IEwgLTYuMTAzNWUtNSwyLjQ0MTRlLTRcIlxyXG4gICAgICAgIC8+XHJcbiAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoMTY2LTJcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cclxuICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAgIGlkPVwicGF0aDE2NC02XCJcclxuICAgICAgICAgIGQ9XCJNIC0xLjIyMDdlLTQsMTQxNy4zMiBIIDE0MTcuMzIgViAxLjIyMDdlLTQgTCAtNi4xMDM1ZS01LDIuNDQxNGUtNFwiXHJcbiAgICAgICAgLz5cclxuICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGgxNzYtMVwiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxyXG4gICAgICAgIDxwYXRoXHJcbiAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICB9fVxyXG4gICAgICAgICAgaWQ9XCJwYXRoMTc0LThcIlxyXG4gICAgICAgICAgZD1cIk0gLTEuMjIwN2UtNCwxNDE3LjMyIEggMTQxNy4zMiBWIDEuMjIwN2UtNCBMIC02LjEwMzVlLTUsMi40NDE0ZS00XCJcclxuICAgICAgICAvPlxyXG4gICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwUGF0aDE4Ni03XCIgY2xpcFBhdGhVbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XHJcbiAgICAgICAgPHBhdGhcclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgIH19XHJcbiAgICAgICAgICBpZD1cInBhdGgxODQtOVwiXHJcbiAgICAgICAgICBkPVwiTSAtMS4yMjA3ZS00LDE0MTcuMzIgSCAxNDE3LjMyIFYgMS4yMjA3ZS00IEwgLTYuMTAzNWUtNSwyLjQ0MTRlLTRcIlxyXG4gICAgICAgIC8+XHJcbiAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoMTk2LTJcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cclxuICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAgIGlkPVwicGF0aDE5NC0wXCJcclxuICAgICAgICAgIGQ9XCJNIC0xLjIyMDdlLTQsMTQxNy4zMiBIIDE0MTcuMzIgViAxLjIyMDdlLTQgTCAtNi4xMDM1ZS01LDIuNDQxNGUtNFwiXHJcbiAgICAgICAgLz5cclxuICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGgyMDYtMlwiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxyXG4gICAgICAgIDxwYXRoXHJcbiAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICB9fVxyXG4gICAgICAgICAgaWQ9XCJwYXRoMjA0LTNcIlxyXG4gICAgICAgICAgZD1cIk0gLTEuMjIwN2UtNCwxNDE3LjMyIEggMTQxNy4zMiBWIDEuMjIwN2UtNCBMIC02LjEwMzVlLTUsMi40NDE0ZS00XCJcclxuICAgICAgICAvPlxyXG4gICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwUGF0aDIxNi03XCIgY2xpcFBhdGhVbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XHJcbiAgICAgICAgPHBhdGhcclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgIH19XHJcbiAgICAgICAgICBpZD1cInBhdGgyMTQtNVwiXHJcbiAgICAgICAgICBkPVwiTSAtMS4yMjA3ZS00LDE0MTcuMzIgSCAxNDE3LjMyIFYgMS4yMjA3ZS00IEwgLTYuMTAzNWUtNSwyLjQ0MTRlLTRcIlxyXG4gICAgICAgIC8+XHJcbiAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoMjI2LTlcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cclxuICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAgIGlkPVwicGF0aDIyNC0yXCJcclxuICAgICAgICAgIGQ9XCJNIC0xLjIyMDdlLTQsMTQxNy4zMiBIIDE0MTcuMzIgViAxLjIyMDdlLTQgTCAtNi4xMDM1ZS01LDIuNDQxNGUtNFwiXHJcbiAgICAgICAgLz5cclxuICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGgyMzYtMlwiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxyXG4gICAgICAgIDxwYXRoXHJcbiAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICB9fVxyXG4gICAgICAgICAgaWQ9XCJwYXRoMjM0LThcIlxyXG4gICAgICAgICAgZD1cIk0gNjAxLjA4LDYxMS40IEggODA1LjQ0IFYgODE1Ljc2IEggNjAxLjA4IFpcIlxyXG4gICAgICAgIC8+XHJcbiAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgIDxtYXNrXHJcbiAgICAgICAgaWQ9XCJtYXNrMjQwLTlcIlxyXG4gICAgICAgIGhlaWdodD17MX1cclxuICAgICAgICB3aWR0aD17MX1cclxuICAgICAgICB5PXswfVxyXG4gICAgICAgIHg9ezB9XHJcbiAgICAgICAgbWFza1VuaXRzPVwidXNlclNwYWNlT25Vc2VcIlxyXG4gICAgICA+XHJcbiAgICAgICAgPGltYWdlXHJcbiAgICAgICAgICBpZD1cImltYWdlMjQyLTdcIlxyXG4gICAgICAgICAgeGxpbmtIcmVmPVwiZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFZQUFBQUdBQ0FBQUFBQ0JyT3BqQUFBQUFYTkNTVlFJNWdwYm1RQUFFVnBKUkVGVWVKenRuWHQ4VmRXVngzY1NnZ0VDQ0lJOEZCVXdRQkwyRGdFZm81WmEzemhqNjh5VWFiVkZoUHJBT3JUb1dKeTJ6amhsV3RyYStxbGlkV1pxUjFUQTUxU24vV2ludGdwU24vMUE1YkYzTGhBSTRhbnlUbmtsSkpEYytRTS9Kams1ZTUxOTd6MzdyaVQzOS8wbm41eDkxam43cnQ5ZGUrMno5ejc3Q2dFQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBZ001T0huY0Z1aGw1WnlxcDVMZC82MnpRdzJObGNveGlKWldjMkVjSUlTb2dRRmJwT1ZvcWVkN3cxZ1BTM1JZQ1pNWlFxYVNTUVM4cTl3c2dCNlJMMzdGS3FrbjlROHVPRnplNVhnWVJrRG9GNXlpcDVCamlqTUxTdGE0WGd3QXBNVkJKSlNlY0VubWVnZ0J4MDJ1TVZITFNZTWV6M2JNd0JJZ2tiNFJVVXBYbXAySURBZUtocjFSU1ZmWkozZEM5RzRSZVVEaUY1eXFwSnA2UnR2M0FPc2NURVFFZEdLcWtraDI2OWltaS91aDRJZ1JvUTk5eFVzbUpwOFp4S1FpUUdnVWpwWktxSkw0TE9tZGhDSENhVkZKVlJIZnRVOE5aZ0Z4T3dyM0dLS2ttdW5idFUrTncvNlRiaWJrcFFONElKWlZNcld1ZklxTnIzYzdMdVNab1FKbFVNcDJ1ZllwSUNCQ2tzRVJPTEZWbis3ajBQcVBWWmUwUHlkKzRtZWFHQU1Pa2txcTgwTU9WbXpab3JjMUhRdHdaRU1EMVdiaTdDOUIzbkpLcU1wYXVmWkFQdGRhNit2Z24veVVDcGE3ZG9PNmJoQXRHS3Fua3VUNCs0TkdFMXRvY2FIZHM4SjcyNXpUM2FYUzZWcmNVNERRbGxWUkZIcTZjck5WYTY5cVdrS0k5Z2Y3c3BGVk9WK3htVFZDdnNWSlZ5dE45WGY3dVh4NjFGUTBKWmhpWll3TGtuU1dWVk9OOGR1M0Zxdy9ieTU0TTVobkhKTkFkQkJoUXBxU3FLUForbjMyMzJjdG1YeHM4NHRnTjZ0bzVvTEJFU1NXOWRPMURtUHFTdGFqMGcxN0JRN3VHT1YyMHl3b3dURWtsdlhUdGJTeWViaTNxK2FmS2pnY0g3WGU1YWhkc2dvckxwSklUQm1UN3RqdS9hUy83Zm9qL1JjVXlsOHQyS1FFS1Jra2xLOC94RXJVZkdiTisvbEI3ZVhMbVg2eGxuL3RXMkZIWnJRUVlKSlZVMGtmWFhoeEphR1AwQVNGK1FQaGZQUHFHdGVqVVJhRjlMN2R1VU9mUEFVWGpsRlFUdkhUdG0ydTBNWHJMSnlQM0Y3MWRZRDkxNDRRR2E5bXpONFllWG5HaFN4MDZzd0I1WnltcDVGakNMZW16V3h1ajF4MXJjNlI0eldqNzZjMFhyN0NXZlhWSitQR2pmVjNtWkRwcEV6U2dYQ3JwcDJ0Zm56RGFtTDBkamo5TStGL010L3YvN01jc0JYMUcxemhVcDlNSlVEaXVYRWwxbHBkckgxeXFqZGtjTnBBanhQVzNFSWFyZm1BdHlsOGN2a0JhQ0NGZEJPaE1ETDltN3FJMVRVbC9YRysvOTVBOWhGMURtZDN3TzNhemY0dmZSYjRvdnVEV0JXOGVpTjNoQVI0bmF2QUtaWGkzM1c0UzhZWDVWZXgrOGtCQnlSZS85L0ttbHJoOUhVWU5rVkx1b0F5WDIzc3F2ZGNUZHRVZS9CVW5neTZmODhTS2hwaTliT2ZFUmZhcWxCd2hEQThSWTAzL1FkMnh1Y1A0VUdlaHFITDZnNy9mSGJPRG8vaDNlMzE2L0lreW5HRTMvQnY2bHVmRjdybU15UnY1K2Z1ZVgzY2lUc2QreW40eWY2OGsrbnZmb3d5SjFRMm5SM3lKWmpwNEpIdmQwQUhsU2lyWjE4ZWxHemNZbzgyRVY0bFQ2cWVkc0paZGVCOWh1SmVZQkhnaTR2bmNaVW9nR3dJVWpsRlNTVDlkKzIzR2FGTjlRZ2d4K0FucXZHL1pNMktmeFpRVFp1MnhGdDF4WFVUbFVuaGQyQmZEcDh4ZDdLbHJYL2YyWTNkYzBxLzFWcittVHY0L29vNi9vQXlmc3R1TlBScFZ4ZDBPSHZJMkZsUmNMcFdzOERKcWY3eGFHNk4zdEQ5NDZ5OEppMzF5bDdYc3VsY0l3KzNxb0sybzhQMUpoT0ZKaGtaTDRLRUp5ajlYS3FsR2VaRjJwelpHYnpqZXNXRFVRNVRaN1hiL0QvNXZ3aTQ1MCtwL01TL2EvMEs2eEVDY0RMNzhyb1VyNjFOdFRGeDVZckoxaFZ2QmU1VGhRcUxLdjZFTWlWVVFrNXNkYWt3OFFzZE5VZVhORC81aFYwcitUSlZWeEFUd3YxS0d0VVRYNjFiS2NMMzlTYXJmVnBjcVU4ckhSdDQ1WDdqdkJVOWQrN1pRSTJMblVYbSsrVE4ydzlHSENjUGp4SVBVWXFjNi96bHRyN3B4NnVRNy8rdmRReW01TVgyK1lhOUhydzJVNFh5N0lkMXlFYU9aTjdqVnVkN2JPckhDOFRmKzZOWHQ3dDdMbkQ4UVNmMHh5dkNEZEZzdTR0bDVSSjFqcmFrZFBkTGxqQ24zTGw3YjZPeTRtTmcvM0Y2aktaUmhmYW5kOEx6amhHSERPS3RkL3B1dTFaNmFnYU03VW56aGJZOHMzKzk2NzlUWXMyekJ4MVQ1UDlpcmRScHBPTnR1Mkx1YU1weGpONXpyL0xIbXBlL3RkdVNQbVRydmYydjhqTm8zckhycW5xdUhDakdET3VscG9uSXZVWWEvSjFvdWNpeDVxZDF3Z252OHZ4enAyc2pIcGNGS0tsbnVaV1E3dVZVYmJUWTFDeUdFR0xtbW4vM01iZXFRdFd3bTFkYzdJRCt5bGwxTGpVOGNWTnZEQ3daTnFKeEZUZCszWi9PNVVXY1FUOEpGWlZKSk5jVDVacWx3d0JodHFvNjBIc2gvbXZCL3k4MTIvNDljUU4xbmx0My9nOGhPK2pkRC9EK2lzbkppNVFqS3FnT2orbGhmS0lobW5uT2dwVUxqbXNWenAzVGNoZVRibE0wRDlrcm12MDBaVWkzWHk1UmhvT25JSDN2REE2L3ZTK2ZqWHBDZTc0VVFRa3hONTRZVVcxK1pmME41ZU1pUnplcWFudlpLRW9zU2tzbXRSRlROcEF4M3Q3NXUxTFB5YTQrK1M4MVkwdHlhcnZlRkVHUFN2bXM0eE1CSVVZS3dPemJlYmxoSlBnSi8xbTQ0a254Ky9JSVFRb2ppUzJZdlhKM2hXRHJaUUVaUUVPK0UrVElpM3krZ0RPK3kyeFd0b3d4L2JEZk1mNGN5WENnR1hYWHY4OVZ4OVBxY1ZramIrSE1NRmZpVXVqUHRON3FLK3FodkVNSTlRdDF4TmRGeWZaZXM2L0lkNlh6Q1VEb3VnVXlCSjJPclJqS1pERjlCTElRUVlzQk93bzRTN21wS3VJWnl1K0ZFbit2djJ1UDJvbEk0ZDhkWWoyZUorN3hBR2Q1Z3R4djRJV1ZJdEZ5OXlKWXJYcTVPMi8xQ1hCbGZOWFlRbXdYY1JCaytROVR2UmNydzlYUmJyaGpaOWZyUFpsQXZmUWhCUHdrUHNVL2t0YU4rWFNLUnlIK0phSEtUVjlxVDBWbmF1cnhZaUIzSy9tTFFkS3FYWHljL3RKWmQvWnIzdHlLT3J0ZkdySEY1UzQrYUU5NjlOMm8zcVdNYkVsV0p4SmFrRUtlc0pQd3ZIckw3UC85cHd2L0ptKzMrUC92blZNMitidmYvd0NkOStyK2xWaHVqYXh6M3k0cmdEWHQwTmVybi91VnZTMXJuR3g2a1F0RVFPN0tSSTRzUDJ1M3kvMGdaV2w1YUVXTHdaWFBJSG1nbTdGMzY4SXp6VXgwMUk3OE1ENFVsc2hPYkVsV0p4S2IyQzgwK1IvWHlteTZ3YjJXdHFNZ3g1OXQzSExtWEdKOFFPMlRIMVF4RnBVcEtGZFVrcDBmRGVxUE5XdnNTTGdKeVdZb0ozdWUxUktKcVk4alcrUDBYVVVMZVovZi9LYzhRL20rY1p2ZC94ZmVKR3lhbnQvTi8za2dwcFNyeDhxNVpTMjFDRzdNeC9LMmJqRGsvRUdNSGJDYytRMFhtY21KaTlHZVU0VDEydTZJcXlyQzE1UnA0NmV6SDM2Y20zak5nLy9KSGJ2dXIzbWs1MXBYZXdiVXZsdldkWDZicStSZGlVZWpsMUpQVW00UndEMUYzMUtjSUlYcFdUUHZKNzZnbnZBeG9XTDFvN2pVeE5XWjBoMkJqWUMvWno0Y3VRRDdEVUNzUWI3SW1SSEdxSmtiWHJWTWlRb2dycUY1KzA5U2trbktzbDJYSHlaT0xnWnQ5WER1TTRHeGY2RHJ1dk5lcGI4c0x4T1dmcFF5L2FyY2JFTjlZalR2NzMzcHMxc1grOThScFQvRE5oUmZEVHJxTHF2Yk9nZmFyMzBnWlBrOVU2N21NdlprU2pYckpQLzgxTVNUbGtiOFBWQ1Zza1gwNU5XcmRjcFg5NG1kU2kydDJFcTNhVjJKd3FpUGJYLzNSVjhZenZrdGRFcWhQYzhlazMzTTE5UUdJMWExNVN3bTdsaXZ0aHM2cm9qS2k3cDMvdlBNenhJeGFkc2dQcm5UdU9NWDVBUFVwRXNUMkp2OUVHUktMemZPV1pleGNtcWFxNTc1elhiWjI0WXBpWmFCeUhWNlkraXkxU3JzcGJCK2pUeGgvakRDc0lvUzdKd1lmMjlqNXV3ZW1WV1J6RjY3SUZ6UjBZSUZ3UmFDOFgvaFdPWjl3LzJwclVjOGx4UGhRMDdSallZZDdsRWlwNURuRURkUG5VTUlZczlZKzlPZU5DQUdDZ3hGQkFYNU9oZXJiUDdHWHpROWVxUzMzcndrZUdTYWxrbVZ4LzhxQ0VFS0lFNXVNMFdhTGowdTdFREV5ZTBWZ242aUQ3U2RXcHY0UFlYdFliYldXWGJxTWlKeTNMbXN6dE5LblhFbXBUaVB1a3o0Zkc2UE5PcmN0aG4wUkljRHB3WmVjUnJYOXFndzNSQzlmekxCUG1QVFh4UGpFSWJWTkNDRkV3V2dsZmIxcmRtU2RObWF0ZFd3cmkwUTBRWHQyQjVZbXFqWUM1RDFKK2Y4bFlzTHFVZXFsNFc5c0UwT2tsS3JNeTRMVTVzM2FHRjBiejRSSkRFUTlaSmlBQUJWdDN0eWZUVTA0Znp6TFh2YWxhWlJoNVhSUG16L3YwYnBLSjBMemUrY2xPRjdjWnZQWVV2SjF5Q24yYTU3aDZSMERPMGRYTHJ6ckNqKy8xcE1wa1JFUStMKzE4MUs0aEdvaUhuM05Xa1MzWERIVFVtdTBNVFdlSmt5eXdLVEFkNm5sMC9IQUgxSmZPZUlGVHpISDQxZTlMWHVYUFh6TEJYNG5UR0lncW8vUjYwaWd2M2p4K3lmL1h2SVcwWkU4ZnRFSDFyS3lEN3hzdjlxV1krdU0wVHJiYjZtblIxUVQxRkFUZU5HdjRxUUFmUmRUajhEejdQNHZYT0xULzhrdHB2V2xteTVCNUZDckNRcHc4cytDa1lUTmU5WjF5ZjNIMzBLTUQyWEUvaXB0ak1uZ2hSUWVJZ1hRWDJ6Ly8wa0IvbzdhRE9ySVRTSGZ3TUl4U25yYUQ3UnhnelpHMjE5RzZ0UkVSMERnZjVtWEZHSW90UU9rbUJQNEVia3pwVlN5MU1jZ1kzSzdOa1p2dEcrRzFmbEpXWURpVVp1RldEaUlzUGgxNjl0dmZjZExKYVdYVFlQcXFvelI1ckNQUzJlVlNBRnE2d005dVlyTjRzNE9QNWpTaHQyM0NTRkVqeEtwcFBTeTFYOVR0ZEhHN0lnK3NVc1FLVUJMVldBV3JPTGxzVCtsREw1V2VJMlVxdFRMMFBFT280MEoyNitwNnhJOTRXeUNBdlJZUWozZEhGL2taZWo0a0RGR0cvditWVjBXQndFQy8xZmNUKzVIV2hpMy8wOVVHNlBOdHBpdjJtbUlicVF2WHhvNDBPeGxsV3NZSHhxanpmcVF4Y0RkaUdnQmdyOVNtUlVPSjdReHVvN2h6dG5Hb1p2eXNaODE5UmFhTjJsajlOWk9NMkhpRzRkVlh5WmJBdXpTeG1qbUtkcXM0eUlBc2J3d0pvNG1qRFptbi9mN2RFSWNCTkErNzk5U1k3UXhtM09teGVtQVN3UjR1dlVlbzQxSjJIK2VLemR3U01KRlI3TFc3K3l1UEc1Zm9lQ3dzZVd4cnZaclRGMEtsNTFGdlNhQlhNZEZBRjlKQUFnSXdBNEVZTVpGZ05vdU45UGRoWEFSSUZubHZScTVpOVArNm1pRC9BRUJtSEVTQUE4Qy9uQVNnR05LSmxkd0VxRHJMdTd1L0RnSmtMdUR4ZjZCQU14QUFHYVFBNWhCQkRBREFaaUJBTXdnQnpDRENHQUdBakFEQVpoQkRtQUdFY0FNQkdBR0FqQ0RITUFNSW9BWkNNQU1CR0FHT1lBWlJBQXpFSUFaQ01BTWNnQXppQUJtSUFBekVJQVo1QUJtRUFITVFBQm1JQUF6eUFITU9Ba0EvT0VtQU5vZ2IwQUFadHdFUUJMd0JpS0FHUWpBREFSZ0pqczU0UEc4cmczeG8zU1pnZ2hnQmdJd0F3R1l3WE1BTTRnQVppQUFNeENBR2VRQVpoQUJ6RUFBWmlBQU04Z0J6Q0FDbUlFQXpFQUFacEFEbUVFRU1BTUJtSUVBekNBSE1JTUlZQVlDTUFNQm1FRU9ZQVlSd0F3RVlBWUNNSU1jd0F3aWdCa0l3QXdFWUFZNWdCbEVBRE1RZ0JrSXdBeHlBRE9JQUdZZ0FETVFnQm5rQUdZUUFjeEFBR1lnQURQSUFjd2dBcGlCQU14QUFHWjZPSjJWYVE2NC9mWU1MOUI5UVFRd0F3R1lnUURNNERtQUdVUUFNeENBR1FqQURISUFNNGdBWmlBQU14Q0FHZVFBWmhBQnpFQUFaaUFBTThnQnpDQUNtSUVBekVBQVpwQURtRUVFTUFNQm1JRUF6Q0FITUlNSVlBWUNNQU1CbUVFT1lBWVJ3QXdFWUFZQ01JTWN3QXdpZ0JrSXdBd0VZQVk1Z0JsRUFETVFnQmtJd0F4eUFET0lBR1lnQURNUWdCbmtBR1lRQWN4QUFHWWdBRFBJQWN3Z0FwaUJBTXhBQUdhUUE1aEJCREFEQVppQkFNd2dCekNEQ0dBR0FqQURBWmhCRG1BR0VjQU1CR0FHQWpDREhNQU1Jb0FaQ01BTUJHREdUWUJqbm12UjNXbXlGN2tKY0NpbWl1UXFCKzFGYmdKc2pxa2l1VXF0dmNoTmdHcTBRUm14eGw3a0prRGp1ekhWSkRjNWtMRUE0c1Y0YXBLai9JcDRrTTF6dTBTLzdmM2pxVXRPTW1tVnZjd3hBZzR0aUtjcU9jbHZDZis3Um9Eb3ZlN3NPT3FTaXpUS1RVU3BZd1NJK3VuTmNWUW1GN21YOHI4b2NMM010cnByTTY5TEx2TFVkOGxpWndIRWlxWXJNcTFMTHZMOFRIb3MzMTBBOGM2V2F3b3pyRTNPa2Z6eFAwYk1wYmdtWVNHRUVLVy9tSnhKYlhLUG1xKy9FWFdLYXhJV1FnaXgvdExyMzB1L05qbkh4anZLSS8yZldnUUlJVVRKZFpQTGhoV25wRnZ1a2F6ZlcvM2VheXU0cXdFQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBZ0hqNGY5QWNkWUgyRlI1REFBQUFBRWxGVGtTdVFtQ0NcIlxyXG4gICAgICAgICAgcHJlc2VydmVBc3BlY3RSYXRpbz1cIm5vbmVcIlxyXG4gICAgICAgICAgXHJcbiAgICAgICAgICBoZWlnaHQ9ezF9XHJcbiAgICAgICAgICB3aWR0aD17MX1cclxuICAgICAgICAvPlxyXG4gICAgICA8L21hc2s+XHJcbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoNzUwLTNcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cclxuICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAgIGlkPVwicGF0aDc0OC02XCJcclxuICAgICAgICAgIGQ9XCJNIDU5Mi41Niw2MDguMDQgSCA4NDEuMiBWIDgyMi42IEggNTkyLjU2IFpcIlxyXG4gICAgICAgIC8+XHJcbiAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgIDxtYXNrXHJcbiAgICAgICAgaWQ9XCJtYXNrNzU0LTFcIlxyXG4gICAgICAgIGhlaWdodD17MX1cclxuICAgICAgICB3aWR0aD17MX1cclxuICAgICAgICB5PXswfVxyXG4gICAgICAgIHg9ezB9XHJcbiAgICAgICAgbWFza1VuaXRzPVwidXNlclNwYWNlT25Vc2VcIlxyXG4gICAgICA+XHJcbiAgICAgICAgPGltYWdlXHJcbiAgICAgICAgICBpZD1cImltYWdlNzU2LTJcIlxyXG4gICAgICAgICAgeGxpbmtIcmVmPVwiZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFySUFBQUpVQ0FBQUFBRE1ENXJEQUFBQUFYTkNTVlFJNWdwYm1RQUFJQUJKUkVGVWVKenRuWGRnVk1YMng4L2RiSHFoaHhZNmhGNEZSQkRCaW9EMFpnRWJDaXJZeTN2K3NDQVc3UGllaXFLZzZCT3hJMFVCa2Q1N2t3NGhsVTRDSkNGdGQrZjN4L1o3Wis3ZXRyZHN6dWVmSlBmT3pEMXo5NXZaTSswTUFJSWdDSUlnQ0lJZ0NJSWdDSUlnQ0lJZ0NJSWdDSUlnQ0lJZ0NJSWdDSUlnQ0lJZ0NJSWdDSUlnQ0lJZ0NJSWdDSUlnQ0lJZ0NJSWdDSUlnQ0lJZ0NJSWdDSUlnQ0lJZ0NJSWdDSUlnQ0lJZ0NJSWdDSUlnQ0lJZ0NJSWdDSUlnQ0lJZ0NJSWdDSUlnQ0lJZ2lObmhqRFpBTHAzZk1kb0NIMDZYcTZ5ODdHcFI4WlZMbHdyT255OXdFcU10cWhUWWpUWkFMalZ1TmRvQ0ZvNnpaL0t5czdOT25MaU0wZzBubHBPc2ViSFhyMzhOQUFDY1AzTG8wUDU5NXd3MkoySkJ5V3BQclZyWEE4RHBYVHQzYkR0cnRDMFJpT1Y4MlZ0V0dHMkJERWpHcHZWcmp4cHRSWVNCa2cwN2VhdFdyRGhqdEJFUkJFcFdEMXk3bHl6ZWhaMHliVURKNmtYMmdsODJ1WXcySWhKQXllcEl6ay96ZGh0dGcvV3hHVzFBWmFMQnN6djNQcDFxdEJWV0J5V3JLMXlIRDdQbTk3SGNWNXVwUU1ucVRkeWRhL1krbkdpMEZSWUdKV3NBN2IvSW1GckxhQ01zQzByV0VGSmZ6WmlSWnJRUkZnVWxheEJKVHgzOWJ6MmpqYkFrS0ZuRGlILzg2TnZWalRiQ2dxQmtEU1R4WDBlZWlqWGFDTXVCa2pXVW1qUDJETVFoTDNtZ1pBMm0xZUlGVFl5MndWcWdaSTJHRzdMdnVXaWpqYkFTS0ZualNYcHZZMGVqYmJBUUtGa3owRzNMaTlqUVNnVWxhd3JpM2xyWjFHZ2JyQUpLMWlUMDNqSEdhQk1zQWtyV0xGU2IvMG04MFRaWUFwU3NhZUFtcldwb3RBMVdBQ1ZySW5wczZXMjBDUllBSldzbTZ2NTF2OUVtbUIrVXJLbUltek1OUDVFUTRBc3lGN2FYWjhjWWJZUEpRY21halFkK1NqRGFCSE9Ea2pVZFF4YWxHRzJDcVVISm1vK2JsMVF4MmdRemc1STFJYjBYWXp2TEJpVnJSbm92d0YzalRGQ3lwdVNtNzNIY2dBVksxcHdNL2h3L0dRYjRZa3pLQTY4WmJZRlpRY21hbGY5N3dHZ0xUQXBLMXF6WVp1SWFHU29vV2RNUzl5T3VSYVNCa2pVdmRYK0lNOW9FTTRLU05USFhtZWNrU1JPQmtqVXprNGNiYllFSlFjbWFHZHVzQmthYllENVFzcWFtNXV3b28wMHdIU2haYzNQYkkwWmJZRHBRc2labk9vYms0SUdTTlRuSk0vRWpDZ2JmaDlucGQ2ZlJGcGdNbEt6cGViZXEwUmFZQzVTczZhbi9rdEVXbUF2TFJUMVhmWWJ0N1U3Vk5rVFpZK0lUVTZyVnFGVzNmcDJZOEwvQnNvNUh3djRNQzJFMzJnRGRXZW5Rc3JTWXRHYXQyblJvbjZ4bG1YeGkzeG9SenVLdFJ1VnJaYU0xbGF3YmUrdHJyKy9iTUd6djB0VjdVN2lLUnNMUExVUWxZZnRlU1orOHJGU3RjUXhXV3E1bFFmeVlWN0lBVVBYZXBSVmFTSlNQNjZZd0dvMkVHVk5MRmdEcS85OUpEVFRLWjFWNGpVYkNpZGtsQ3hBMWZKTVdLZzNDMVN2Y1Zsc0hISmZWSE9kdlBXOWFyM0daM1BNYUYyaGhVTExoWVBVTkF3OXFXK0xBVnRxV1oyRlFzdUhoejQ1UFg5R3lQUHRrTFV1ek5DalpNT0g0cU4yZldwWTNGcU1oZWtESmhvMmNPeDY1cWwxcFZlN1dyaXhyZzVJTkgyVFd0WWUxSysxaG5FNXdnNUlOSi8vMCtFT3pzanAxMXF3b2E0T1NEU3VYaDM2cVZWSGNPSzFLc2pnbzJmRGltS3haQk1QUmVKZzRBS0JrdzgvVUtSb1ZWSytQUmdWWkhKUnMySG5yVFkwS0dxMVJPUllISlJ0K1h2NUttM0lHb1djQWdKTFZBL0xvR2szS3FYT3RKc1ZZSFpTc0RwU1B5ZEdrbkRzMEtjWHFvR1QxNE54WVRYYnY5TmVpRU11RGt0V0ZkWnBFaW0yYnBrVXBWZ2NscXcrdjc5ZWdrS2diTlNqRThxQms5YUhzTVpjR3BmVFZvQXpMZzVMVmlRM3pOQ2dFSnhNQUphc2ZMMm13RXJFeE9yTW9XZjNJbnFXK2pLanU2c3V3UENoWjNYaS9SSDBaS0ZtVXJJNmMrcC82TXJxcUw4THlvR1QxNHhQMWd3WWQ4Zk5DeWVySS9vMnFpNmlPL1MrVXJKNm9YOUZsYTZ1QkdSWUhKYXNqQzlTUGM3WFJ3QXlMZzVMVmtjdC9xUzRDZzhhZ1pIVmxvZW9TbW10Z2hjVkJ5ZXJKY3RYbk5EVFR3Z3hyZzVMVms5UC9xQzJoVnFJV2RsZ2FsS3l1ckZWYndGOWhPT25CWXFCa2RVWHR5T3lpc1dXYTJHRmxVTEs2c3BPb3lyNW9YS0ZHaGxnWWxLeXVuQ3hRazN2eHZackdyTFVvS0ZsZGNha0o3cjFrN0dYTkRMRXdLRmw5VVJHOWMvRTkyTVlDb0dUMTVvVGluSXZHb1dJQkFDV3JONWxLTXk2K0Y3MENONVh2MkdWanlWT1liOGxZYkdNOVlDdXJMMmVVWlZ1TWl2V0JrdFdYQWtXckRCYVBRNi9BQjBwV1h3cVZUTGorZ1lvTkFDV3JMMlVWOHZNc3VZZXVXUHNZWElwb0JjeC83TEk0NTJRYnZJUnhTSjM5UGFmajc5R3grcHFQeU1mcWtzMlZyZGlxOUlLaTMzWVNRa2plMUhyNlZnQ1JpOVVsbXlYVDNEOVliZXgwcHlkRnlkZnQ5YTBDSWcrclN6WkhJOFcrNi9RbmNpN3FnVWN2bWhlclMvYVVQTVV5dkFMN084NmdkSzdsMStsYkRVUTZWcGRzdmh4Yi8yUXA5aTBuUDZscmNVZDlLNEpJeGVLU3RWMlZvMWlXVi9DMlFMR0VFTWMzRGZTdEN5SU5pMHMycVZ5R1lobHRiQlJWc1lTUW9xbTRtZEdFV0Z5eTlSaHFrNkZZaWxmZzQrUXc3SWVaRG90THRyMWtPNWV5dkFJUnhSSkNGamZTdDBKSVNDd3UyZHNrSzVibEZZZ3JscEFyaitNa3ZMbXd1R1FmbEdnbDB5dVlIdHF6V0lzaFpVeUZ4U1U3VFpxUnkxaUtmVU9LTDF6NE1IcTBKc0xpa3AwdnlVYW1ZdCtVMkh2N3RicSsxVUpFc0xoazkwZ3hrYVhZS0FsZWdZZXNudnJXQzJGamJjbkdTcGxKV0ZhTm50bitoa042TmN1ZlJPZkFKRmhic3Awa0dMaWMxY2ErTG4xTWx4QkM1aVhvV3plRWdiVWxPeUcwZlV5dlFLb2Y2Mk1uVHVDYUFtdEw5cHVRNWkxbmVRVnZ5dkFLUEp6cXBtL3RFQ3FXbGl3WGNvRTNVN0V5dlFJM1JZUDFyUjlDdzlLU2JlMEtZWnhXZnF5WGlnbjZWaENoWUduSlBodkN0dVdNNGRRb09XTUZRYmorRHdjT2pNYlNrdDBnYmhwTHNiSkd0L2hNUjgwYWpKVWwyMGhjZVgreC9OaHB5cndDRHgraVpvM0Z5cEo5VWRTd0ZTeXZZSnFLTnBZUVFtYWdaZzNGd3BLMUhSR3o2NjhhOUZ4UnI2dFVMQ0Z2bzJhTnhNS1M3U2RtRnF1TnRiK21XckdFVE5HM29rZ1FGcGJzTWhHcm1GN0JWQTBVUzF5UDZGdFRKQkRyU3JhclNDZnFyM0Q1c1I0cWh1bGJWeVFBNjBwMk1kdW1GUXcvVmhPdmdCQkNTRkVQZlN1TCtMR3NaUHV3Wjc3K1ppbjJWYTBVUzhqcHhycldGdkZqVmNuYXR6TXQranVzZnF5WDNjbjZWaGp4WWxYSlRtSWF4R3hqTmZNSzNQeUlPMitOd2FLU2JYeVpaYy9LbXZRYzlsY3IxRmFWeC9QNlZobnhZRTNKUnExaW1iT1NOWVB3aXJadExDR2tySSsrbFViY1dGT3lyN0NzWVNwV1V6L1dRMDV0Zld1TkFJQkZKVHVBcFQrV1Y4Qk5raEZ1VGpxTDBKMDFBQ3RLdGwwQnc1WlZETVVDUkRVYy92N1dVclYxRlRCWnoyb2piaXdvMllhWkRGTldNYndDTDlXSHpwSjd0RUlJaWxyclUyVWtBT3RKdHQ0aGhpVXNyeUFRZTQ4UHM5WFdPSkJOMGVHdk1CS001U1Ria0tWWXRsY1FURXkvbjByVVZ0b1BqblRwanRVazI0N2xGYXlXcUZnQWdMVFh6cWl0dHBlaTlQRFZGYUZpTWNuMlp4M25JYldOOVpEMGhGYit3WEljTmRBWlMwazJhZ3ByQmt1S0h4dE13dFB5enhLbGNtYzRhb3F3c1pKazA1YXpqRmhUUzBGeDFXZVVxYTA4SVlSa015TGFJMkhDT3BLMTNYdUJaWU1jUHphUUR1dlYxcDRRUXFaclcwOGtCSmFSYk5zVlRCTld5MjlqR3ovODJtTXRPYkEvV2FpMi9vUVVZMkI2WGJHSVpPdCt3djRTWDVNcXQ3U29SODhSUWdwZXNBTzAyYUgyQlJBeVB4dzFSbGhZUXJKMTM3bkNObUN0L0RaMnJIdkZnZU54QUlqL05GUmdyNUE0TEIwUjBYSTczRzlab2JLQWFJY21kb2pRN3ZHeEl0R0lkNDI3d0x2aXpDY0FzU0tkb3JpL1c3aC9PZFg1SEFEY1B6TmVwWVhMK3hPVkpSZ0lTbFpqa29jODFGdDA1UE55QmY5SytaUzVrUHlqU01zWFZkWHpNWkhiL3dJQTZQV3J5bFdFNU1hMTZncEFaR0JxeHlCcDhQOHVLVEJwUGtDNnRHN1ZLUGR6MG84cGVFb2dLeTNYVlBreCtLajNDQ0txNmMyMzM1Z1NJdEhCM1pTTEpSOEJuSGorZW5hdW1LR2V4U3lPSFBmUG8zMlh0Vk5pbzQ4YnIxK3ZLajhpQTFPMnNrblhUcDZYS2FGWHRGYjJXQUVBQU5pWGV2SnZpL05lcXIxWDNWdjRRN082STZFd2wyUmphblc5ODVVZi9wRzQwa3FoWWdIYXVCY1luT251djFTSHRVQk1HbzVPbXRUZkNDem4wNmp1ZnQzc1ZKZWZzMFZGeDhZbkpWZXRYck4yM2RRcU1sN2dodUhubFQ2MDVSdTNKSmF1ZVhsdndLVkc2MVVkT1BQdGZXcHlHMG5sazZ4aHJCK2hXTEVBdGxyVkxwOFBIdXZvdUZiTllvR1M1cWRVNURZU1hJbW1GK3RIcWxBc3VNNGVQczBibmR0N3Q1cmh1bmpMSHZ5Qmt0V0pEYVBPYVYza255K3B5VDArVmlzN2RBWWxxdzhiaDU5TmFaNWVUYjRmbHRTNFpRMVdydmQrVjJGUjJpQVZtUkVacUI0eE1JVDFxZFduWjVhVm5mNWNacGNwNWVWanBXWG52Mm5PdUYyZHRVdEhDc3RVZnhhSUpDd3AyUTIxNjI5ei8zYThqWnpLVnYvYm5Tdm5Xa2FDUGlwaXlwUTNWdjlwSUJLd29tUTNwTm9YZUgvZkl1UDhidHNYM2x5SFdSRVBQbEJoRnA2Z29BOFdsT3lHVkxqT0Y2L0lPZHJHeDEweFRuRGQxcXJJVjhZa3h1dElPS3JjcmdQVzdNamdHb093czNINE9lamppM2hoKy9obFhtL0tOZjhkRjBDREw5TUVPWk1TZmIvZTlpbTk4S3VQL2FWNGFMMU5seDFLc3hvSlNqYmNiQnB4RGlCZ3BqWlZNR3RiL1pOQ2dJSDlSRXVwWm5QUmIvejl3MTJLVFJ1TmtrV0ViQnA2SGdETytpK2M0ODhvdU9ZVkE4Q1NJY0xCaE9TR3ZsOExHSW9GK05mZ1JOYXRVSXg0VWVYa05TSUZpL215RzkxdGFnKy9MenNxaW9mWGwrVmZqNHBLOS91eWo3SGZ5R3ZLcmJ0R2h3OE1zWlprTjNxMkQ5aC84MTdaTEdmRTRFdHZMdWFJQVFBa24xVnMzdXZxUGd0RUVwYVM3Q2JmaHBkNlc5MVhaSTdMcm5BdndzM3RMcGJxYWNYMjdiYmNxaWdyWWlYSmJncm9hVldmbnVGdzVIeFdUMTV0azZZY0xuZWUrVVk4OEVEOEthVUdPaG9wK0FRUW1WaElzcHVDTnhXbU5HdFJUWDU5RTV1MHFCbXFMWHhPc1lrUHlUY0lrWXQxSkx0WlpCdXNQVEZSYkt3bXlpN3JHenVaRlY0eEpEL0plWXhKc09ZRWlCWFlPdVFzNjFiTkY3ZG1abTUrbnRIbWN0Zk1XTDM1cHdkbHJOOHUvRkt1Y1Y3NllGRHY4R09WVmxha2plMXkySjFrZjN2YTNmaDMzVHZKOW90MnVZSnBxUGhVTyt0dUFiTU9GcEhzNWpyTUdqVHlyUmc4UXVtTVJYM3MzYWw3cXEzMHQvSWJ3NHlRUEtYZ0kwRGtZUTNKYm1XM3NkeFgvbVFmQzEzV0FmNER2NVpMLzlidXA5VFFYeFI5Q0lnY0xDSFpMU0k5cjdvQndiaFBwVVpIUjBlN2RSc1ZIUjBkSFIyOXlIKzNUUHJrVkpUU3RkNjVVV28vRU4zQk5RWmhZTXN3WnM4TG9GbkFSRmFkN1E0QTEvL2VjQUUwL3RxOW9DQmdQVmRNejUxU24rajg5bVhaVmdJQVFMMkdKNVZsUkNSamdWWjJTMTJ4Q3R3c2lDcVRtd3dBajFBS21pcjl0YVFyTlhhTXVvL0RBTENWMVp4dFE4K0kzYjVZRWVQNzNiSGZBVUIrTEFLQVJmM3FBd0JBMjRBMUNETDI1QjdkcVhDSnl6VS9Lc3VIU01iMHJld1c5bGdCQUFERUgvQ24zUjdIY1p5bkM4YTUrY1YvdDdTRGpQZnlna0p6clJmSkJLY1NOR2JyTU5FMkZxRGtJOS9TVjhkSHBZUVFUM1JpajRSbWx2bFNMajhvNDdtL3lqRXlnUGI0UFJ0dVRON0tiZzI5N2lYbUs0ODM2NXhKR2NXeVRYZDZpanJaUXRhTDJhZk1ZR2Q5V1U4eEFmZy9waW5iaHA0T21hWjhVdGFUMVFESXhROW1lQUo2Yy9HMVl5OWNjb2NyY3IxYTlFSUtBTGkyVFRnbTY5SC9HU0RYV0RkVjhwVGxNd3pMTFpnMGRSaTViY01reFdiajBtNUxoOE4vZWJYUytza0IxVzFsZTJmL1V1cSsyMnJVdGZFWlM1ZGVEWmVWaUw2WTJUR1E0QlVJc1Uzd3JNTnkvdUViSE9NczE1SWdiRXdzMlcyaTQ3RXN4dnNQQ0Z1SFIzVkdJdWFWckRMRnBwOFBLT0p0YkYxRGc0TmNXckZ0V09pZUY0VkhBbyt6ZlZDSloxSFpRTWxxeFBiaGlucmVjVUg5L0ZvOXRURW1va0hKYXNPT29jckdpbEtDdlFrWlMyUXJMU2haVGRnK1ZPSEpBN3hOWGxhTnJLMG5LRmt0MkRGTTZYaDhZWEhRbjFucWJZbDRVTElhc0ZPaFZ3QUF4VnNEL3lyZHB0NllpQWNscTU0ZFEyUXFsa3Z0MEsyMWV3eldOU2Z3V0puMSs5ejM0K054dEN0eU1OKzQ3SFpoWUZoUmJMMS9PZTF3bG1kOG1nNEFFUDI5djZTTDF3QUExMnpLNm9PSE5yelpEbHVUQ01GMGtwV3IySVQzdk1lSG5oOXZBNERxUzczYkZQS0hjd0J4VXp6enQ0WHZoenJER2JFR1pwUHNkcG1MOTJMbStEZlNsRDNLQVVEU3k2ZGNoSkNTdjY0QmdQaTV2dHV1cFFyaUlTSG13MlNTM1NHempZVUpnV2ZJWE80S0FNQ2xEbnZwellsZDdBREF2UmE0TSt4TDYyMS9SWVNZUzdJNzVCNTlYQzBqS1AvdlBJZTE3ZVhBdTZVM2F2YmFJZ2owOGRXd2MxaU96QnczTmhiN0UrNEw4bDlqSitEQWdSRGNsYUNDWFVOejVXYnBGU3pDbEg4ZEJlQ3lmcStBdUZHcEFOd0lYdW9xbDFRWmlKZ0JFemtHc3IwQ0FHNCtyU0RIUUlBSmd2QUdoSkJTK1UrSWZMQ1ZWY3d1MlY0QkFQRFBvM2NSQUxoeUFlRDAxVGdBNFBXM09PeC9DVUhKS21YM0VObGVBUURKNVAzOTJDNEF1SkFKOEVlWEtnQXh2QkR6eGJqL0t3SXdpMk93VTlsM051K2M1Tk84Yyt0K0NIN0lPb3hZTEtUeXRiSnJpQmFsWEh4V2dWY0FBRnQzQkIzNi9UUHYzTHJ2UmdhNkFtUitoYUtISUtaQ2RTdHI4RC9wVGNVQnRtVHdwODVpbGdXYXVodW5iQ01CcTB1V2U3VEVaOHFaM29MYnpZNzVMVDEzTFNVL1lqbXNMbG13amZCTWdEazNkNmJjYnJQTk85cDFHRGVDUlFhV2x5eEE2dVBMTXM0YyttVTAvV2pRS2svdkxYRTRTbzlNcmVXOXd1RVVaU0NXbXhGVUhlQW9tajgwcWdzSmRaT2MrV2U5QjNOSEpVUlZYR1YyQStQVEduTzUyVVh1UDJLdnViVjU4cVdEeS8vQlE3MnRpaFZiV2E3Rit3ZUxuWTd6YSs2WGV3NDkxMmVkKzN5a2tvVnlnczBpWnNLQ2tvMSs4cUxuMmE2dDhzN1ppbnJXUDc1d2NZemx2aEVSQUxDaVpLTm5CRXdmbk80bEl5YzNPZkFJdXFKQllUTVJDU2ZXayt6alFSTmVKeHRLejlucFVwRGxXUmoreUpKWVRyS056d2MvL3l2Si9YL2JUenpUcDRmVFRzdUE0eWZoWm56TjRMOUhOcFdhczlHdHZBdWpjRFlNVUxKaEozb3c3MEx5N1ZLemRxN0t1OUJJc3RvakdlTUgxaU9jMm9JVlh3ODI0Vjg1K1dVWkpEL0NQM3lKQ0U3eWltcTJSMFBMckFwS05zd2tKL092ZEJiTTA3cnlGc0Q5NzBnWXc4SW9jNENTRFRzT0ovOFZPOHI1YWZKUEFCeTRJSmhtaU9JcmxNZzRiakZ5UWNtR21Zc1grVU5UWDMvSVQ1Ti9EbUJWWjBGejNPRjczajZhcTBjMU5jMmlvR1REVFA1ZW5tVEpvc1BVaE1KUWRMbkhXd1pmMkt3d2lHMWtnU01HNFdhdUsvanZvK3VrNWl6NlBIamxqT05qUTFiMElDcXgzRlJDM0xxZ3h6c2VrSjQxYVgxUTFubjRsV2hKTENkWmFITXE4UEZ6NWV4QWJIWXdJT2ZxR21FekVRa24xcE1zWEh2UzkzRG5kMG15c2paYzRsMmdVRDRiNHlCYUZBdEtGaHJNTFhJL08rTmh1YnU4WTRZdE8rY2tqcnlmKzJJVURnK1dXNE5weVYwSlhJdUJuV3VYWmE1ZXJTREVGcGRhTy9icTZYenRqYklxNk5IckFUbDZGR3pnQ3AyUWx2ZnNXWTJ0c1Rnb1diMVFKbGhFQUk3TEloWURXMWtGY0YxMlNrMXFiOXc4alR0MUpNdkFTRVhKN1d0ekJRZHdlWUpobUdERWdCdS9VR0xLK1BzM1hTV0VrS3ZiSHBhN3QxWXJFb2QrbTFudU9MdndvVnFoMHlKaHdYakpjdmVYL0M0dFplY3RUdTlUWFR1NnFYMnVFcUpHN1BjR244bDloaDdxQXdrM2hrdVd1NitFL0NBcFpiK2dYVi81QTFVK1dBSHgvd25Zb3V0YVhqZDBEa1I3akpZczkwQUpJZDlLU2RtSnQwK3hvSWU2SjhzbitxdmdhUFpiYTRiT2cyaU93WkxsN3I5S0NKa2pJV1hpVnY2VGR3dFd4SWFacDV3OEM3N0YzcllCR0N0Wjd0NnJoQkF5UzBMUzhZTHpPbHlUMVR4YVBrM1A4eTJvaUlUb0hUZ3VLd2Z1M2xueEFKS21CZXlQQ3ViQ3VmSHgycHNrd21NQ1A4RCtkQVJFc2tmSnlvQzc3N000QUpBazJmVFd3bXR0bXdtdmhZK0VJY0pyMTBYQXRuSjBicVREamZ0VWVqUFpsaktrRkQweVZYZ1JBRTRmVm5OK1ErSUkrckxFNnBRRFNHTDdIbEh4SkhPQWtwVU1OM1pXbk9kWENkOU4xUGhacjlEVFh1bS9XYUZOQUFDUFNkbE83b0ZycStKQkpnRWxLeFh1M3MvaWZMK0hUazVWTlNOZkFqOHNqQ3dLbmZUL0lJNzJORlZQTWdjb1dZbHc5ODcwZXdVUzNocDFUdi9yWGRTMHVhcldBTS9aUTNkWHVyOU51VmlvNWtubUFDVXJEZTZlendLRUlhSGZmYmc4Um5ETk5YT0hoaVo1cWRoQ3YzNkZZZ0ZZMzVYRkVRTnBjR08vREd6S0tGcmdjK0NrOEZxR3JxRXpEcDhSWGl0ZnJhY0Y0UUVsS3dWdTNPZHhnWC9Ic1JMNktmMUdlRzMrRmEwTWtrTHhFdUcxWFJodlJuK01tUDNpeGhZSGw3RlVRcWFhSi9oUHp0WjVXVXE3eTN3TG5QZm9hd0VDWUloa3VYdXU4c3FRRlBEbERsNnUwcEd5bjZ5UzEvbHp4bjlJOEdnUXJkRmZzb0kybGhCSm14SzRTYVdCZWNxZTFIMDNjOEtpWUxNUEt6dmRIRkdIN3BMbHhna1VTNlI1aE55b1BIK1cwM2NiMEcxSStUbHdMZGRPWGVlTEVTOTZTNWE3UjZoWVF1bUxVMm40MFNrWElZUzR6bnpTV0c1Rk5TSG1pUnl2YzNEcGd3Z0prSVNoTjhUaDdwcE5HYWd2cWlheEVLNUc5NjUxNGZUdXJlZlZyQ0pRUStxb0llbEozTlZUeTc0N2JwUUpsUjE5VzFtS0gwc0lJV1ZXbXZlMDFlelNMUzJDcG93aXFDcGhnTHY3YytvZXYrZ2tCWkdLak1KMTRZTFJKbWdLVGlXSXdOMzFCWDB2TnhjaGJxRWx3VmFXRFhmM2w2ejFzWG9HQmVEaTdlV2xPajdQN0tCa21YRDNmTTVjMFUxZnFzM0czcVJWemZLOGZRWHllMEQxaHZkckhGOTRmUEVTakgxb1ZYVHJmbkYzRmJFTGVVYVd6ZlpCcTY4UVFoeW5QcFc3anlYbUNVOEljTmV4TVJoZzFxTG9KVm51THVwWWdZZjM1SmhjOVJ0ZkFJd3pkOHJxUENSODdaOEtLSitHMzRqV1JDZkpjbmVMdExHRXpKTmhjZkt5Z0l3bEQ4Z1lDWS82YitBaUFjZlRsaHRFUndEMGtxeW9WMEFrcm92eEZQVlJVTTVMWGFWbjdWOFduTFdkOUt5SWVkQkZzdHdZTWErQUVKSWgzZUF1dkFWZHl5U0hFckN2NFQzMUsyeG1BVWNNcUhCajVvU0lFbGduVHZLdzB3VGVzTU9OMSt6akp5bHpBa0MwUU1xdHV2TXVES2dSV1pNQ3lrREpDdUh1L0RKVVhNdTRPcGtTQzR1L2lYY2g1bWZCM29TOEIvS2d6YXpxL01zSi9ERzJtczFSc2hZay9JNEJOMGJjanlXRUVIS2pWSHNiRjBxdzZTNkE1eVVrYzQxUjkrNGlBMnhsK1hDanZwSVFPN2laMUgxL0NZSjlZcGNFdTF4UHJBRDRxYWRnbTAzZGhnTGJKRDQwb2tISjh1REd6SllTN2JxRjFQSkt5L212ZU5tOS9Ea3dsd3NnYTRSZ3hIYnMxN3dMSkZmcVV5TVpsR3d3M09ndkpaMXEwREowRWpmbnpqYmhYVGxLUCtyREpZaE50NmNzTnZoQy9qR3BUNDFrY0NWWEVOeklPZElPbVcwbHRjU2lqYndMenIra1pqMjBoM2ZoNy9OU3N5SW1JcnpkcjlFaHhtTjlsRWcrWWFaUGVYRE9UUktDSUhnWVZSR1VzNWcvNklWWWduQktWdEpZZ1llT1VnMk8raTRvWDhrdDB1dHFueHVZMHprVmUxK1dKSXlTNVVaSkdaRHlJRDJJUmVyT2dHeU9GK1hvcnNydi9rVUd6azlpUTJkQVRFZ1lKVHRTZWhzcmF5MVgvYjk5d2l0NlZsNS9OK0gxUzU2Y3B4K0xnSmp4bFpQd1NYYTBITVVTeVowb0FFaVlmTGlDRU9JcVh0eEQ3bmM3bHo1dHcrbUNuSlhQMVplWk1YS3huSHVrZGxQNGlYVDZRUWZjeUsra2pSVjRPRi9YS1NOMVVxY3VOU3F5TjJWNjlwTFg3dGdxT21kM0Jxc0VlMnFLODZKdkIwTjBZcFNqU003REVIT2hzcFU5VGpsMUF3Q0FrK1VWRUVLY3lrT3YxUDNQR1JjaHBQaVBhNmtOUnNwam15NVdsT1g4ZWl1T21VY0c2aVI3bkRHZUtsdXhoQ2llNys5MjNGdEUwV1RLNXBocmRuczgzL0s1Vm9xV2dEQlJKZGtUakRZVzVJd1ZlSmloc0FLdGMvMWxsSTBYM081MnhuOTdtZDdITVNMaFFJMWtqN2RoRkRwU3ZtSUpJOXg3S0dKV0JoWnlnYjlXb2RxK3dOc3pjSEl5QWxBaFdXWWJPMXkyVjBBSUtWSFdCTjRlUEtQMU1jK2RmUzdvYm1FRW5IbUVLSmRzQmt1eDh2MVlRb2lNSmJOQnpBNHVKRE9GOHg1MnhIRWNGN3N2K1BZMFpTOHBvcWs4dmRJVGd3OVJyM01qdnBhOFhpQ0l2a3FPeW9qcUhQeDMycytsQUJtdlhvSGEwK29BUUF5dmU5alhKdUhzVWNUY0tHMWxNeGgrTERkTWdSOUxDSkcxeTlaUDRsRktTYTR4ZkkvQXl4R2M4aEpRV1ZyWnpJSDBOaFlHL2s5Wkd3dlFMVVhCQVRQODZGcmtnaE1nYnh2QXlvUFZBU0M2ZXJCdlN6QW1ySUJLSXRrTWhsY0EwRk9wWWlHdTl4L3lNMVdjYUIvMGQzNzN5d0FscFFDN3U4VUNRTDFOS1VHMzg5QXZFRkE1UmxFeUJ4OWczZHFtdk5SK1NqSXREbTQzMTJZWEZCU1VBZ0JjTFNnb0tEaDZPRGoxU3BTczlWSGl5MmF5eGdvQW9MNURRWUZ1amlsWm9GRTF5Smt0Njh1N1BUSG8zS01DUEpBakFsQWdXVmJQeTQzZ1JEbkpPRVgrRTlnTUNvd2U4NGtOQUdJSHpOcThhOG5URFFBQUVqY0czSFc5YkxsVlM0Z1ErWkk5S1I3SzZsdkZraVV2S0trQTk2aFBzNjc1aVFEUVpyVzdvVC8vaEIwQVd2cFdJQkRYOTlMMzNDRG1SYlprUXlnV0ppaVhMSDhub2pTNG0zZTZRM0NlZWlZT0FEcmxlSXR6dmhNRkFNMVhlQUowRnIwdFpYYzZZbnJrU3Zaa3FEblAxdnhUTTZWVG9mQzB3dmgrSHk1WTh0Vjl0UUVBcXV3S0tPOHVBSURZWWI5bEZWLys1NVBPNkJWRUJqSWxHNnFOQmJEbGhTNkZ4UlBLNitIVjQrVEEvNWdEN2xYbXRxUWExWmd4N3hHcklVK3lKOXVITG5HZWNzbHVVRjJkNkEyQjVUbjRNZWNRSVpFOUxwczFlSC9vUkN1Vmw5OUQ5U0JVVXRCb1J0UTFhc3VyQkVTMFpMUHVrS0JZV0tWOHVEN3FUc1ZaUFNRRVR6L1dWRnRlSlNDU0paczE2QjhweVRJRmtRaWxNMDd0KzdzYWZCZ3VucFFVbWdpV2JLWVVyd0FBWUxueVo2VDNVcDRYQUFDS2d2NWZYTHRVRmxjWmlGekpaZzhXQkhobjhLZnloM0FQS2M4TEFBQVZQd2F1T1RpbWNIY09ZbWFramhoSUdTdndFRitnZk15Z1NPMXB0dFgyK3d1cnVGZGxZWldDU0YxOG1EbEVvbGNBQUNVclJ5aCtUdUo5SHlyT0N3QUFCZU4vOTRidmRzMzhYa1ZCTHc1V2xtLzhRUlVQUlNRZ3JaWE42aUNuekhIS1cxbHlUTkUvZlZSTWpNOGw2N1RKUFVPYi82OFk3eVdiZkg4dDVwd3krd3NWcnhjMmlzaHNaU1gzdk53czVZZkxsa0h6TzM2WG5TZmw3aEhwY1Bqbkh3c0JBR0RQTGJjUGJSZDdldlVQR1c2M2xtczV1bk44OXJMbHhiTEtIS1R3OFBKZDhoNkR5RWRLSzVzcE9maXJoK1hLV2loQ2lKSXRZSzEzdUFnaHhMWEpkd2d6WjR2eXRhc3hMMThtaEJEblJua2J3cGNxTkgrcWJQTVJtVWlRYkpaY3hjTERDajl2UWdoeHlSM25xbmZZbTNVUHBXVzB2ZU05YWZtRTVDTkVBS0NKMHBYcU44aTBIcEZOYU1sbXl2SmpBUUFndFZUaEIwNElJWXZsUFl2NzFKLzFYZUh0bS95bS9DN0RhNXV1MFBoTHVQd203SVNVckd5dkFBRGdUNFdmT0NHRU9PVXRERWdOQ0xxVlhjTXJudUo3QUFBZ0FFbEVRVlJ1dDl2dEhBQ0F6VzYzMiszMlgveDNTNlRYSkY1aDU0c3NrdmVlekVERWRiK3loKzVWa092Ny9zcWZhSHRWMXZCUzh3QnZJRzFWR1FEQW1wZktvZkYvNndBQWNBRWViRnd2eVZXNVcySG5TODNNSHlLUkVLMXNWaWRGcGFaY1Z0aEtFVUtJczRlc0NnaVhsSmMwb3g4SU9sVnFtYlo5bE55U1RHOGF1bkN6RVdHdGJNNFEvbGxaMHJpeWNKenloOXJldkVWR2hJeDhoejhDalBPRUV3QmdVeDdBNGtIdVZWeE5BOGJiTGtvdHM3LzBxYjVnRHB4VW1CR1JqbWdybTlVNWRBRjBibExZVEJGQ0NIRU5sUEdrcElCZDRYdXF4TWJHeHNaeUFBQlJzYkd4c2JGeGkveDN5eVE3eVd1Vld2Nm03QmVGeUVaTXNsbGRGQmNiZFZ5azNKQWNpQW45QkI5UCtqd0RCMlZSVFgvL3lYYkxwWmJhUjdIaDNXVFlqU2hFUkxMWnl2eFlOeThwL3RnSkllUXBHVStLLzhXaldkZi9LSk51OXBsZVJaK1MrbTNQclZKcWRrYUUrWVhtaEMzWmJNVmVBUUJBbXBxaFdWSWdPSmxlaE9RUEN3a2g1UExiMU9uOWhQZXVFa0tJYTUva1R0M05pczErWDRiVmlGS1lrbFhoRlFBQXdLK0tQM2hDQ0pHMUJzdlcrdG5aWHo2ZHp0ajBiZXYrMGNhZEN4NnFJcm0wcllxdHhrTng5WUFsMlJ5VmlsWFJWaEZDaUd1QXZLZUp4eWpnYkRKaUdOeXAyT2pEbEFOeEVNMWhTRmFkVndBQVlOdFBMMWtpV2FGT1BJcHFPWEJRTzlrUmpybWFYWHMyRmwyS21IQlNzYzFUNVZxREtJRXUyV3dOZGxOUFZQelJFMElJbVNOZWVzdmZDd201dWxwbUY3M21CM2tWcnZ5Rll2M0tWeFZiN0VpWFp3eWlES3BrYzdUWS81OTBWdkdIVHdnaHJtRmloWGZJY3FmS2wzRzJQVUNkYmU1YzUyOW1KbWxlck5qaU5YSk1RUlJEazZ4cVA5Yk5OTVVmUGlHRWtQTWlFYnJpZkRFNGo4c0lWUkRsQzJSenNnNGppVzJaY29QdmsvVjJFS1ZRSkt1UllxR09zc09VZkt4aGU2cTMrWmF6dWg1TkZCQUZBQkFydk43Rkg0cjJhVWJCOXlzMzk0S3NZNmJOUXdTTUplY08xV2ozLzVtNWsxVGw3L1BHdjFpM3J2UDF6Ym5wendsR0E5WlBMSVcyYzFJRnVSTDhpMWx2b3A4LzJrREZac252aTVUblJXUWdhR1Z6dW1wV2RoTlYwd21FT0VlelN2NUFORjlKTTlZaFNqN1dVVWNOb2xZb045WmgxWk1iTGQvSzVnN2RxVmxaSitjOXFDcS9iYzV4Um9PZjQvLzFlQ2EvbFNXYnNnRit2RWE0NUxWR1IxL1NDOVRBWWMvSjZzd0ZzNHA1NGdtaUxieFdWc00yRmdDYXEyeG1TWFlhdmVDMnZuNTl4VzJjQUhjYTRmVm1WN3k1WE1JanhRR2dkem5kQ2tuY29lV0xRMFFJbHF5MmlnWDRVb1VHQ0NHRTdLSFBLTmcrOFM1MldTUmowWmZ0STIrdTNiVHAyM3E1S2d3OVlQbnZWOHNRSk5sY3JlT3hOcjdLK29pbHNwcCt3RUh5RDA1Q0NIR3RabzFXMFhQOTV0YnNVZG9PelBoTmF1eDhXTW5yUVpRUUtObGNqZHRZQUppaFJnYUVFRUtXME1ONHhJNWRlZWJjaGtreVk3UEVQN0s3NEhMbWgvVW90Mndxb284VGtvTTdhM1VqUUxLNVlWaWduSnF2VnJMa2QwYm9tYWo0UkFWZnh0R3BEZUpwYTJTNHQxVVorYXg4U3hDRitDVWJEc1VDL0Z1dFlnbFpva2NMOXB6eWczUUlJV2VTZFRBUmNlT1RiQmk4QWdDQWhBejFtbDB0ZWEycllpWTdRNXNod3ZOaE54RHg0WlZzbUJRTE1FYTlaTWx1eGxpWFpqeWhUckY1Mk1qcWlFZXllV0ZiVUc5VHZKTXFnT3lBWlE5eFZSSzFPSFF1T2lYWk93UEdUVkhsRlJBeVdRTjdFS200SlhzcWpGdERPNVJwb05raTcxazFWVjdlbDMvOHM4WnFqYktQWFhmdTFJTHJPUUFBK3ljcWpUdUdaK1BxeVMyRUVKSVgxczNNNzJzZ1dlS2FFUU1BVUgwZElVUlJhTHNnN0I4NUNDR2s2RjRBcUxwRXJXM01wUkJJT0xpRmhOTXJBQUNBbEV5MW1pQ0VFTEtsT1FCODdQbGprN3FHYlpSbjhlS0Y1dERtb0ZyRE5sajdUQmZMSGUxNzh6STRPM3hiZUo4eGFLRW1yNlh3bVRrMUQzcFdkTHUrRUlsV2xQOTFBU1RjVDVzdjhNQU45UjdDK0VybXAycTdUczVlVzFXV2dKZ1BWUk5MQVN3YkpLMW5QdzNnRVdrOUtoV0g1M2dKc1VrTnNTU3BwOVVyZ3hCQ2lIK3BsVXVFMHZzQStoZUtwZERJSEVJSXVTQmNTbTR0TE9jWTZNT0luelYrTVNWRDh0ZzN5MDY2Z0dzb3N2eUF2RHBHTTBzbWZxRlpVWWlaK0ViRGRvMFFRbWFwNi9KMDBzQWhjTE1XdzIxRUtGVlBhS1VSUWdoeC9xaTJ6M1NYbXRYY0FWeHRyY25yUVV6STlScHB4TTNXTzJYSGlRbWt4a3ZxWWl6NCtiZFc3d2N4SCtxaWR3ckllMTF4alBldXM1V0gxK0N4Q2ZjaVJEQjJOZWZYMFhDdWUwUkJaejN0bVQzYW1WRFlVdnYzaEppSDJ0bmFhY1ZEeFpwbjI4b1lpdURhUHI5QjNaSXRIaEd4ZXdZSHVkajBYS1g4YUZzMnVXdldiVHJzREpuTTFyelhEVGMxMVBiUlA0K1JjUXlKYVVISmlqRHhzekM5bml0Nzl1NC9mUHdNUTBBMW03WnUxNmxMTmMyZm5kRzFRT3NpalFBbEt3TDM2YU5oTEowVVorZWVQbmV4b0xDNHROd0Z0dWk0aE9TcTFWUHJwRFdzRXA1bEt5VTM3QWhMdVhxRGtoVWo1azkybEV6TE1lRkxveTNRQnBTc0tEWFdSOHpRKzZ4SEk4R1JCWlJzS0pwdGtCVXJ3N3lzN1ZkbXRBa2FnWklOUWJlL1U0dzJRUXVPOXpwbnRBbGFZZTBGNmpxd2ZYU3AwU1pvd01YQkVhTll3SFU5b1RoeGRLamxYMUxKNE1nWUxBQUFsS3dFRHVZTXN2aDNrZU9lcFVhYm9DRW8yZERzT1RQQTBwcDFQVExQYUJPMEJDVXJnWjFuKzF0WXMrVFptVWFib0Nrb1dTbnN6QjFvV2MyU2YzOWd0QW1JRWR5cE5pUzlVYmd3WWx4bFpXQ2gwZUpUaFBNcG8xOGNZaGc5dGRyTG9pY1ZEeG45MnJRSFo3OGswM0p4QzZOTmtFdkp1RitOTmtGN1VMTFNTZjM1QnFOTmtNZkZFV3VOTmlFTTRJaUJkSXAvck5mWmFCdmtjUHkyQ0pyejhvT1NsWUZqMGFXYnJQUEMxdmJQTXRvRXhBVGNlTXJvSHBWRVhKK0ZZK01hWWtIcXJ6WmFqSks0K2xERTlsS3M4ejFuRWdxL2g1N21mMm5IQnY1aHRBbUlpZWg3MHVnMk5CVHo2U2ZwSXBXVzZ0OXFHZkJWY3k0L0VMRk9BYUlVYm5pZTBicGtzNmFaMGE4SE1TTTF2OVkwOHBCMkZENkprZUlRT3JjZU1scWROSlpoRTRzd2lYL0pkSXU3OHU2MjdMSmVSQmNhenplVmQxRDZBUTRVSUtIb3RjRm9uZnB3TFdwbDlOdEFySUJ0MkQ2anRlcG04NDFHdndyRUt0akhtcUFmdG1jb09yR0lkS0x2TnJpbDNUWFMvRlBJaUxtSUdyek9zUGt3NTFycjd2NUZESVRyTWMrUVBiaWw4M3NZWFhYRXN0Ui9KVk52d2VhODFzRG9XaU9XSm5yZ2J6bzJ0V1ZMaHNZWVhXUEUrcVJPM3V6UVE2L08zYy9WTjdxdUJvSEwxRFNuK2NpUm5jTGJnM2NkK3VYbkEyRjlncGxCeVlhRHBvTUc5d3JYMXF1SzdRc1hINDZRWXc4VWdaSU5FMVZ2Nm5kckk2MUhuOGlwVmN2K2pweDQzTXBBeVlZUHJsbmZHM28zMUVxMjVQU0dkV3NPdVRRcXpjS2daTU5Ndys0OXVuVk1VZm1haS9idjJMSTFveko3QXdHZ1pIWEEzcnhqaDNadEdpb1prcXJJTzdoLy83NGo1WnJiWkYxUXNycVIyQ1M5V2RQR2pkSVNwQXduT0V0eXNyTk9aQnpMS0F5N1hWWURKYXMzWFBYYWRWSlRhOVNvV2pVNU9TRWhMamJhRGdCQW5HWGxaY1hGeFpjdlg4cS9jUDdjNlhNRjZMVXlRTWthRHNmWmlBdjlWQVJCRUFSQkVBUkJFQVJCRUFSQkVBUkJFQVJCRUFSQkVBUkJFQVJCRUFSQkVBUkJFQVJCRUFSQkVBUkJFQVJCRUFSQkVBUkJFQVJCSklKaDVMU2xhb09HZFd0V1RZeUpjcFlYWDc1NE9pZTdBQVBFYVl3T2tvMUpsWlRNNWF3b0xiSHk1NXZjclZmWERuVjVwM3BVbk4yL1kvT1dBbU1zaWt4MGtHeXZEZExTRVVmRjFkTlp4LzdaZWJnc3ZBYUZnL3BEQi9kS1pOMHMzYnBvd1VrOXJVSFUwVXZ1TVd3WEZ6L1cwR2lqWlJFemZHbFppRHBWckxvelhLY3FJWm9qVzdLRWtQSlY5OFFiYmJkVUVwL0lrRlNucktlWXpUQmlMcFJJbGhDUzgxeVMwWlpMd1Q0K1czS1ZzdThMNzZtTGlFWW9sQ3doT2ZlYS94UHV1azFXbGRhMU50cGdSQUtLSlV2SWlzWkdHeTlPekxSUVBpeWZva2UxUG5FUjBSNFZraVVYaGhodHZSaHA2eFJVNlpzRW84MUdRcUZHc3FUaWVmTk9kblRMVlZTbGRUV01OaHdKZ1NySkV0Y2JadFhzN1ZjVVZtbTN0TGtWeEREVVNaYTRYalM2QW5RR2xTaXUwdllxUmh1UGlLSlNzc1F4MnVnYTBMajVxb29xL1JGdHRQbUlHR29sU3k2bEcxMEZJZTN6VlZWcHV0SDJJMktvbGl4Wlp6ZTZEbnhxSEZOWEkwYy9vMnRnWFN3eFN0ajdYcU10NEdHYjAxeGRBVkZmb0R0cll0UzNzaVRIWkxQemo2bXYwZ3lqNjJCWlRMVDRVSXpKbjZvdlF6dWE3a2tXdTExd0tMZVFTNm5mc3ByWXl5M3JlRVJqcXhETllMYXlMaDhoMjZTRFpscHR3QzBTc2ZUQ2U5MDh3d0gyVGxQRlZzek1NN1lTaUFnc3lSNUw4OUdvM2ExUHpMOGdwdGxlUnRjaWdBSHNmN0h5dDROODFMaG5DdGxKVmJyRGxSWURIWVBEdkZWTjhhTmVhY1lzNUtPbjVUM1UzcXhUaTdUcUJSUEYwbkJKTFpvM3JGTTlPUzZLbEJVWG5NdkpPSExCSmFYb0hSMVp0ODZNNHRlMXpVS21Najk0VHNMRFZNSWxObXZXb0U3MUt2SFJuTE9zc09CY2JzYlJpMUxxeUNlcWRzc21hYWxWRTJNNFowbmh4ZE5aeDA1YzFkeFdxWmhJc2dDSkh6L0FLdVJ3RzkrMnNJUzIxQlRGQjMyL3h2WWZlWE1kQUlDakxabFcxYnVsNzdYTlk0S3Z1WEszci8zcldLaVBkUFNQckR1bmJoTDZwL1hYTjJHa1B0dTQxUDFMSjliRXdoVmhjZEdkNkVuM0NUY2ZjV20zM05DZFgwVWd1VHMzckRqZ1pEeVJocjNUTGIyNzFPWUpwZlRRcGxXckxza294Vkt3SElORHdxUzJXYXl2VVVkZFg2S085QlJaM3Z0VnB1UjVyN0Y2T0RVbmIzUXdIdVQ2NXlYeFhUeTJuU3diaTYraHBlL0VuTmdkNEVteGtKVWdTemdFZVFNOTVRV0I2bXMvczkzSktwZGt2TnRXWWx2RmRma1AweUcvdW1oVWhHNE9raUZaaVB1SDlYNEcrTkswWTd4QTkrdXozWGZHZjQwdTJmUXZpcGdmSmlHRWxQM1lXYVE2TnpMelBVYlA4Q29yL1plZUJHTllDWnpDYWI4cDlKUnplY2xhZlIxaUJZUno1VzBTUkJzMVlwTjQxemp2eFlnY1g1WWpXUmpGZWpuUCtwSzBwQ2R3MUFZQXFMNGc4QnBOc25Wbmw0dC9tb1FReHp4MlMvc3pLOU1teHJSTTRobEdocE9lWVpEa1M2d2lIeElVdG95ZU1IaFpjWTNQUWxlUmtGVU1IOE1IZDl2dTBLV2NtMlM2cVVuMXlKSnNMR3ZjNEdOZmttYU1GT2tBME9SUTBDV2haRzBUQzBKL0RJU1F5NnpkQTZtczVzdDFBK3NGdk1aNmlMZTMrUjByd1hmOG9tTG8xaGNHTFJzZmNFcFNGVW41NjN4SE40amFQNFFlZkNTRWtPM3R4RXF4SkxJa0M0c1pxZjE5bnNhTUZOMEFHbVVHWHhKSXRvYllrR293QzZwUzdYdVVsWDRkOHdVMFozMzBkM2tTREdDVm1jMy92N21HbnU3WGdDVGNxMndmbHMvYU9reWo0ZGJUVWtzcGZwQmRpaldSSjlsM0dhbVgrVkkwWktTNENWTDI4Uzd4SmR2NnVOU1BnUkR5VDJPYWZhdFl5ZStpcFhhem41SEZ1NTRybHVVNnVQZ2pIay9UMDQzenA3RE5sRkZGY293MXJNZzlWU0dqbUEvMFhLcGl1bVV4K1l6ci9pNHhheEFxa2Z1a3ZYalozZGV6QjM2RnRGM2JRbml4Sm10TzQvSkNka21ybkhTOFE3Wmx2ekV5Y3IxNUYvaC91Nm40dy8vNzlFZlpkZ2hwL25jRCtvUGZtaUhIUlgxbXRwbG1KOVVqcjVYOU55UDFDbCtLZW93VW8rNFFmQUVIdDdLZDVhNXhQWmttTUkvWnUvOUI1QTNFMTZDVDRrM1FtMVhxdDhFRjJlbGYxdjUzQTNmTHJDTFpSVnR4eEwwbHQ1aFB6THJkU1JIYU9BYitScXdPSThVREJ3V1hnaVRiVUdLdkpJQWRncytUT1hCOHY1cFhaR2ZGbXprWi9DM0lHQ3laNUV1UXhoeDhZUElGeFo3SjBqcGVnY2ljblRRMzhpVEw2aC9OOWFWZ1NYYTU4RktnWk9PMnkvNFlDSm5EczQ0VC9sdTRjVFZWOVk3ZVpoVHJEQzUyUEQyUi84dGd2dndxT204V1dOTlh5aGdaajRyclZiMEFjNkhOSUpkLzYwa3FJd1dsWlFpVTdBejVId01ocnVIQjV0VmtkVXBPcS90aTdNUnExb0lYdDM5RlRiUFZkNys5OU1FQ1A3djVYbXNONlNHYkFzalFLeDZWMmJwZlExaWIvRU1IdXhRWHpmVlBLTEFHdVA4R3orNTBZSFZLOXFpTGpMdjNBT05HMEdBdjE1T2Fab0h2dDhlVmZKeWRCdkV1ZkVEdmtvV2d5VFFsdVJSZ01zbkd2OGE2YzVCMVF4cFJNOWsxZFJZN21QZnFCMjlKWnc1SnFEU1AyWHU3SWZBZnNUWmxDQVBBNytiSGpxRVhzdmU5Q1hlTmUvYXJMUHBkbUJUODV3M2o2TWtBQU1xdXN2ODFKN1BYSUZrTk9jdGl2bUY5N1pUNkIvWlpqZ0VGdjJOQTl3SUpJVHNudG9nQ1c0Tzdsak8rbW92cUJScjRPYXNZV1VOTEZGb3dsdWs0Nmdja0drcE40djl2dVkxNi81SjNOcGNiY0ppYW9EeG9ZTVMybVZIRnNybjlhd0RFZFo2U3cwZ2dObWhpTGFSTHRzcVBqS1NFYlBPblVpTFo2SlAwQkNVVGZhM1lJTVlRMkR1QkZxNWdQV21nMnJmRUVzcklnRFR2VVZPODVicy9qWHIvVG44QktldXBLWUtXZkE1a0dMTEh0MVkwZ2ZHUDZ6RGg1bjFsU0pWczhpU1JHRmV2KzlNcGtTeGp1TEo4UU1EemU5Q0RhVndJN0ZZY1pUMUpiTzJYSkI1bkZQeFJRSm9OMUJUZGZmZXBxeGdMQWhjUzFLT3VVWmdka0lKYlE3ZGpkK0Q4OWFmME5QOVYreExNQWt1eUoxcjVhTnRqK0pRbHhZeDBoQkRpQ3BCRVRaRjBQSHlTM1VpL0grdzVNeGIyQmJoMmpGVXBoTGdVOVZnQ3FjY0krN25EbnlTZXVtWXl4KytrNzZIZHp3cnFsbEpIMDdZR0pPaEFIM1FvRG5LajQ0NVFFMTIwVE9UMUVHaXdLWnpzQ25qdk5hUm44MHEyRmYxMlhuRGN6Q1Q2QUp0L2RRTlVZUzBNcjFDL2JKUXlyRXhJa0JOL0xUWEJKLzRpcUU1bVJkQk9ubXZPVXRnYmtPQUR1aGxCN2hIQS9mUlV2Q0ZCeTZLRlpBTVhqaXFRN0t2MDIvemhDZnJVVm9sLzNLMEI2MEZsNm9Oc01WUkFidk9sZUlwNlAyQW00Q3cxd2Q2Z0JwS2o0Yjl0ejZLV1VjRmJQNXhJWHlRdldDd1pEa3cyeU1VZ1MrNE9hdGVGWTd1M2JkdDEzUE1uSTdEeVQ3eS8vNkttaXJ2Ujkyc0tOUUVBT0N2a1dFZGxZVEg5dW44czlqcmE3WXZyL2IvVGplaXc3NHV1ZmxGU3BlWlAzSVcrdG4xcmR2RGZ4UnVweVc2TmtOVXhHclN5OXdlV0Y2cVZQVGYzL282SlFmK0tkZWdEV0tmNEw3Z0pQZDFNWDRKdXJHZGUxdUE5L1VJdjJyZm14WlpKdXgyNGNPWVFMUUVoaExpT2ZuQ3J0SUE3TDlNTGVKMmZqckZ1SnRSR0I0dWdYckpyZzdRbEx0bURkd3UzMERHV1h5M2xwNHVqZjkzdDhTVzRqdlZVTFk1UEhFNHZPdC9iNDY5UC9ZY2FGbEFDbzdQdjV1cmExL3RWQzJuRVNucm1ZZngwakhGdXh2WTNUYkhDeHAwckQwdmV3K3g2NXpYSzBZelViMVNBRS93THBaZW9UVkY2Y3FIbk4rYWNzQmIrMWJMODZyVEwxZHA0L21XNjBaNWVITER3RUU3MEVTaysvb1lid0hGdy9icDFaMFFTeFhhaFh4ZThLa1loMUQzR0dtTUJ5Ym9tSHBXYzlKRXZhWmNabjhNRndaaE1FVFZkZlBQZDN2SlpEeGJkUkNXUnF3dnBVUng2ZWlSN0xlM21pa0NUZDRYYTBXTHYwR0dTYzkreXhkdFliVUJUK3U0aDF4WCtxMktjMlJwaWpiMVZVT3NZdk1RclQ4UXhlSXRxQUZ5a3AzYVU4V0ZNMnZxbTdqdXpIbHltaFdadm9aZnQ3WVpUdC9EY0YxaEFhL2FiQ1NiM3Z6M29YeGdqR1JuSytXK0tzYUx0WW1UMHYxUWU3L0VXLytXeUpmc1BQUktFakxrSE9pOTRTMHBucFhDRTloSkRFME9mL1R2aGZnRXh0QW5sc3BwQkpmRDN2ckZ4SFhpS1p2TC9TUzZBQWIyVjFoU3pEM0k1L3oxRitySytxZlN2cTBacWpmQXRUV0VPRE5pMGlFQlIvaXYxY2tQM050Z1dOSWx0dUJEMDV5ZVVKSFM0TmpOT3ZpdmNYNnZkcXdvZkpwZnN4ZUh2U2xkc0xtUEhZRDM2WmVuNG1yS2lVa1lLcnBiYVp3QUF6S2ZXMWQ0VkFBQzYwdTR0Q1A1ejdqRVpUNnZ5L05GWCtNZm1hZmVxd29lNUpidTB5eUlacVg5ampPZXJmbzIrR1lUU0s2d2txajlyQUlEdHg2bVhld0FBWGJJdTN1c3BueWduUGh3a3Y3YUhOOGFnM2FzS0gyYVc3SWt4ZDJTSFR1V0hQbm1sd1d2MHRVWE9VNndramRVK0F3REFTWStweUpic0x2NzdXZjJLdkNlMitQdmxvQTZUZHE4cWZKaFhza2NmYWZlVHJGQ29qdTJNRzZvUFd2Q1BCR2F5a21nVDMvZ0hhb1U3eHdCQVBDMk0wQUxCbGVreXoyQ3dUL3M2Y0xCRHcxY1ZOa3dxMmVKZkJyYWR4WEljR1p3N3g3aWg0Ymx3ekJGaWVzeGJ1UnpjUzd0YUxSMEEwaW03QVluUWVTZlAvcDhzM3dCZzNKeUFkdFlLUitpWlVMS3U0N05IcDQzNms3MGZpMEZHT0l3QkFBQi9yNGk1eGF1akpnT1NaRDcxY2plZ1Q0Y2NwV3h5Sk5QdllIb3ZkTVpPOGYrdU9vQ0d1bDJia2pEUDdKZkxXVmFjbjVkMWRQK2VzMHBDb3dQa3NXN0lGajhmZjdlTzJnb0NBRlJMcDRkbGtNblBiOUUra0s1ZkE5QzJQZnhPTFdOWis3Zkd5L3BZWC9wcmkvZFgxUXZTMUs5b0M0bUJrajNhUGVoUDRuSlV5UHhPQzRZVnpRc1lxL3FrNHkvZ3lCVkdCNFhybzRsa016ZlJRbjUyQlhvclM1Y3M1RC95MmJTQk1scjk2QSt2OXpZU0dyNnFzR0dnWkYxYXJOZ0xnTDVBQUFCVWgvUS83L3V0WkRkcjVVbi96OW41YXpJNlo4NmRndStUK1RUSnRva3ZpV2tqdkp6TDZtL0MzaUVkbnhvdHZmTiszUzNld1JZTlgxWFlNSTlqb0pweTFnMVd0K3hocVExamdNdXhoaVhabTFPWVk3WXcrVlg2OVdQQ25mKy96WWdUcGt0SzM5dUlNdmUxV09STGFlOERMOXc5cnJQVW5zb0VyMlFacitvWTg5Z1ZQdnVsSmpRMThtSnloWWExeG1BcUswTjdSZ1o2NUV0bGxlSHRyQTZHdGVIN2UwcmFKYlNFOThNSXl0VmJROWpLdFo2eVRWcVUyQ3ZlNFlpUDZmZFZCaGJSRmhPT0dHaE9KcU1ieTRxbEpNYjJzNnc3anpKNzJ3MjZNVzdRVHBlaXlSZzZRZ2ZoeFh4MjNIQTM1TkNiM1p2Y1B5ODNkQzgrMmJ2T2xUSHFvdVJOaFkzS0lObkNIUHAxSld0QXlwZXc3blFWUmhEME1JN1JGU0tyS0JlWDBQeUw5alRKL3NsWXN4cEU3amRqRzdkKzZLdURJWHJ5M3M3ZFlmcnRhbVk2ZDZZeVNCYjIwQzhyV285TUh6a0ZBTzR0aGpMaldidExUdEFtSnE3OFFibll4a2FacW1DTUZ3aHdIcGt6dmwzYTBJOE9pSXdkZXZ1SGUrbHBvczBVYnF0U1NKYlJzKzZwWk9COEhUTUVZemVHTkNlekZ1UXRwT3FEOWo5UnE3Rnc0MnN4YTBrRkRYSnU0ZFB0VzcrY3licnZYWVo0aHZHRlpLWWpoQ3VGWkJsT1h5c2xNYVFxK0ZHUy9ieE4zYkRUZ3JWU2hSRjJiUVdsMTI0ZkpseTh2ckpRbUU0VWN2U04xaTh3bkFudmFMT0xjWGpyWUpuUENpY1JOTWpGWmd0OUFvQjc4Ri9CRjJyOFNQMXVyeGdaNkYvTy9qY3I5bS9DNzMyRjNaZXFQN09TNzkxRnZWejYrd1RoeGZlRmx3Uit3YTNVSUVzL0JKNlBYUHJlK2ErcEQvV3RMVmh4RC9WKzczU2VFek4yUERYZHlqZW9sNjJHNFlOY0FEL1JjMXppTGN1bmgyTUpqTG9Jd0J3SUlvU1FMTUcwYWkxR05EQkNDT3NVOHo3czhnTW9UK1hubTBOTk56UTRVUlExR0lJL1dFTHRVdnJqdmdrdXhzWTR1RlY0SEtRbE1ZRmthYU9haEJEeVk1QmZsTUlJblBwOGNHRU5SRTdBTFg0bWVOL2lMU2VaU1UrekZ2cEYwMVhGWTdVZzM3UFVkQ3Q0RGpzOTFzRXZ2dnVNMEdDT2ZrR2wzRWxQVmFiSjVnempNWUZrNDg0ejhyd1c4SUhhdm1aOER2eXV6M1JHWVlRUVFvNU04alYvY2YzL0ZEbTc0QVZnUVE4ankwTVlSNTl4aURqdkNEMzYrU1QvOGQxbm5jSjBQakFRVENQRzJYcFNCekhNamdra3l6eWFpWHpqMnpwU2pSVkJYSENPWEJWV0dHczNaZHMrLy9jakU1NTVmeWxqTDdxYkxQWnBHRjBrSEdIa2JDTElGa3R2L1l1QzJzZU85TmlOL2lEa0NheWpwZ3JHK2h6OW5xd3puMjRYK1Fpc2hCa2syNERob2hHUy84bkFKdFZxdFI3Nk1hc2hkZ25uZFVmSVB4WkxnTWo1b2JZRG9iUHZwT1Q3alo2MC9GMy81RlZ6UnRFQnUzUmVZajV6OXpQWDFxNVd2L3ZFcGF5UXBmc2laZnpKREpJRldTZTdCc0YzQmdHQW02ZTROQzkvaW4yNnI0VE96NDlIQXNEMjJNbVYrUk42TmEzYnNNczkzekRDVHA4TjhNQ3JzZjUzUXpOYTJnZG9ma3doMmJxWEZYNE1GYlFGQXRXT0tTek55d1Y2VEV3UExWbk5tQThYYmVZdVd0eGhFU0ZvckpseHRITm9OdXZUeUVaS1V4NkswMU1WWnB4Tm16b3JHTTFjbkNzSjUzalJyY05IYVYvN1FSejdoM0t4Z2pKNkt3a1NORmc3YzUreVVoeFBLTnROSXBmS0lsbjRlSk9pYkNkZnBGN2VmWitxM1RuVFJJNFZCK1lXc0FBV1VsZG56Vks0L1cxajBMc3BtOEJjZVN6Sys4d1Y1NWJERkk0QlFGTzU1NFFUUWtncDgyVFdpVXJPM3ZRd08xUkRrY1k0NjhNSC9aaEZ1RjFSdjlEQjN3bnhMeVdsYktZSFJMTWtKcEVzOUplMjNEa1FsMGlJMzBraEhVNFczNFdlSmY5YnZJUTgxczR1a1prNU5vS3p3bTNzODllWTVLbytrOGRFbUVXeU1FRjJ3L2ltMkZxdnNTVnlpM1B6bVlSMUhRK0tGOEhjWnhZckdzaWJ6cjVrUVRFSnNvdkpqNUNRODI1TUkxbDRYSjVtWGUrSXIwNjg0YlNzNHR5VVB5ZGx5V01Oc1VQUUNPbkh6Rmh0bDF5RDhwcFJpcW15VGw0aEY3cFRDckV1NXBHc3ZJYXg0cGxRNGtwam5Dd2dRaTV6NzBJd2pHa0JOL21VTFkxZXF0UFAvR1NTVFk5ems3UkFUaUVudEFtV1l4cE1KRm5vU1QvV2lzWVpDYk9QVVU5ZWtmUEpFdWYvcElZV0hDVldqT2lSVXZGZnllbURiV2Z0SnJKUGsrNzYvNkZEaUU1ZE1aTmtvY1ozMGo1UTE2OTFKUm5UYUw0TVoyTzN4Q1lXQUpMRXhqZEdpZWU5NjV4VWd5bytFRG5DODBhSjh5V1hKMFhjU0ttcEpBdHdtNVRvN1BzSFN0NWswMzJ4Uk5IdXYxdE8zQzdXSWgxQ1NIR29rSnExWm9ZYUpDT0VFT0phTCs2QkpyNVdHTG9ReDl3MEdiV3lDQ2FUTE5qdjJSdmlvOXg1bDZ6Tkd1MC92eFR5a3kxZjFGOWVXOVNQWFpiNFBBUUFBRFQ3TEtUYW5IL2ZIdkxmc3U3N3JIT21QWlRNalRBdjFvM1pKQXZBOVpuTC9pak9mbjZkN0cyTVNYY3ZFSk5JNmFySjB0eU1BR0paaXdDRGppNW5VKzNSdFNMT3FPdkltNjBsbVZGbDRnYm0rTE56eDdPMTVWWkxBMVJIWnd4TmRVWlVscUtWeXNxTDZVKy9mb1N4Q1o5S1hKL2JibWpQbjY4aGhUdlhyOWlxTEhoZlFzKysxM1d1S25pZDVNcmVMZXZYSzRrKzl2Rmt4bzJTK2hMUGNxeDljOThlTFlXbk96bXp0bTFZZVVSNlZNMjAyMi91VlovL0ZlSEsyYno2cjB6SlpXaUpEcEkxTFFtdFdqVk5TNjJhR01NNVN3cnp6K2FjT0p5aExxNm5yV0hMcGczcTFraEppT0djNWNXWEw1N0p6VGlXclhTdHlIUHZNVzRzSE1xNFFTTWhQYjFSL1ZyVmt1THN4RkZhZE9uQ3Flemp4eFRFaXF2VE5yMVIzWm9wOFhaU2NmWFNoZE9aeHc3cEVDOE9zUmJSekRPVXg0VE9qQ0Q2TTVHbDJBTFY1eGtnU0Job3oxeVNUajJsRjBFTTVqcm1lSUhMVExHR0VBUUFBTGlPWDdESHAvWlg1ZzR6QUZTU0FFZld3RDYvSXY5eWVYVFZScDNGRG9LZHFjT1pMd2dpaWVqUWMyaUVYQlF1YnExc1JOeUtoZ2hubHR4NGh3Z1NOcVMwc29WR3pKQ2FER3hsTGNYSHpLTWFFRVIzSkxTeVp5bEhLVlU2c0pXMUVsTWtMb2hCRUQwSTNjcXUwdVJzWndUUmlKQ1N2ZGpZYUJOTkFUb0dsc0Z4WDZiUkppQklJQ0ZhV1JkcnlUZUNHSVM0WkozUEdHMGZndkFRbFd5UlNOUnZCREVHTWNsdWEyZTBkUWdpZ0MzWm5FZWlRMmRIRUwxaFNOYTU4UUdSa0M2VkVGd3ZhMlpjdVZiYU0wd0FBQUEyU1VSQlZOdFhMYzNFRmJKQlZQbzE3dWFCNjFXemVwVXFLVWxKQ1RIZ0xDa3FPSitYY2V5Q1BzY1BJQWlDSUFpQ0lBaWlBLzhQNnhDNnhUMDRqTmdBQUFBQVNVVk9SSzVDWUlJPVwiXHJcbiAgICAgICAgICBwcmVzZXJ2ZUFzcGVjdFJhdGlvPVwibm9uZVwiXHJcbiAgICAgICAgICBcclxuICAgICAgICAgIGhlaWdodD17MX1cclxuICAgICAgICAgIHdpZHRoPXsxfVxyXG4gICAgICAgIC8+XHJcbiAgICAgIDwvbWFzaz5cclxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGg3Ni0xXCIgY2xpcFBhdGhVbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XHJcbiAgICAgICAgPHBhdGhcclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgIH19XHJcbiAgICAgICAgICBpZD1cInBhdGg3NC01XCJcclxuICAgICAgICAgIGQ9XCJNIC02LjEwMzVlLTUsMTQxNy4zMiBIIDE0MTcuMzIgViAwIEggLTkuMTU1M2UtNVwiXHJcbiAgICAgICAgLz5cclxuICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGg4Ni05XCIgY2xpcFBhdGhVbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XHJcbiAgICAgICAgPHBhdGhcclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgIH19XHJcbiAgICAgICAgICBpZD1cInBhdGg4NC00XCJcclxuICAgICAgICAgIGQ9XCJNIC02LjEwMzVlLTUsMTQxNy4zMiBIIDE0MTcuMzIgViAwIEggLTkuMTU1M2UtNVwiXHJcbiAgICAgICAgLz5cclxuICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGg5Ni05XCIgY2xpcFBhdGhVbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XHJcbiAgICAgICAgPHBhdGhcclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgIH19XHJcbiAgICAgICAgICBpZD1cInBhdGg5NC0wXCJcclxuICAgICAgICAgIGQ9XCJNIC02LjEwMzVlLTUsMTQxNy4zMiBIIDE0MTcuMzIgViAwIEggLTkuMTU1M2UtNVwiXHJcbiAgICAgICAgLz5cclxuICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGgxMDYtOVwiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxyXG4gICAgICAgIDxwYXRoXHJcbiAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICB9fVxyXG4gICAgICAgICAgaWQ9XCJwYXRoMTA0LTFcIlxyXG4gICAgICAgICAgZD1cIk0gLTYuMTAzNWUtNSwxNDE3LjMyIEggMTQxNy4zMiBWIDAgSCAtOS4xNTUzZS01XCJcclxuICAgICAgICAvPlxyXG4gICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwUGF0aDExNi03XCIgY2xpcFBhdGhVbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XHJcbiAgICAgICAgPHBhdGhcclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgIH19XHJcbiAgICAgICAgICBpZD1cInBhdGgxMTQtN1wiXHJcbiAgICAgICAgICBkPVwiTSAtNi4xMDM1ZS01LDE0MTcuMzIgSCAxNDE3LjMyIFYgMCBIIC05LjE1NTNlLTVcIlxyXG4gICAgICAgIC8+XHJcbiAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoMTI2LTFcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cclxuICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAgIGlkPVwicGF0aDEyNC0xXCJcclxuICAgICAgICAgIGQ9XCJNIC02LjEwMzVlLTUsMTQxNy4zMiBIIDE0MTcuMzIgViAwIEggLTkuMTU1M2UtNVwiXHJcbiAgICAgICAgLz5cclxuICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGgxMzYtNVwiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxyXG4gICAgICAgIDxwYXRoXHJcbiAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICB9fVxyXG4gICAgICAgICAgaWQ9XCJwYXRoMTM0LTk3XCJcclxuICAgICAgICAgIGQ9XCJNIC0xLjIyMDdlLTQsMTQxNy4zMiBIIDE0MTcuMzIgViAxLjIyMDdlLTQgTCAtNi4xMDM1ZS01LDIuNDQxNGUtNFwiXHJcbiAgICAgICAgLz5cclxuICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGgxNDYtN1wiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxyXG4gICAgICAgIDxwYXRoXHJcbiAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICB9fVxyXG4gICAgICAgICAgaWQ9XCJwYXRoMTQ0LTY3XCJcclxuICAgICAgICAgIGQ9XCJNIC0xLjIyMDdlLTQsMTQxNy4zMiBIIDE0MTcuMzIgViAxLjIyMDdlLTQgTCAtNi4xMDM1ZS01LDIuNDQxNGUtNFwiXHJcbiAgICAgICAgLz5cclxuICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGgxNTYtM1wiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxyXG4gICAgICAgIDxwYXRoXHJcbiAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICB9fVxyXG4gICAgICAgICAgaWQ9XCJwYXRoMTU0LTY1XCJcclxuICAgICAgICAgIGQ9XCJNIC0xLjIyMDdlLTQsMTQxNy4zMiBIIDE0MTcuMzIgViAxLjIyMDdlLTQgTCAtNi4xMDM1ZS01LDIuNDQxNGUtNFwiXHJcbiAgICAgICAgLz5cclxuICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGgxNjYtNlwiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxyXG4gICAgICAgIDxwYXRoXHJcbiAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICB9fVxyXG4gICAgICAgICAgaWQ9XCJwYXRoMTY0LTNcIlxyXG4gICAgICAgICAgZD1cIk0gLTEuMjIwN2UtNCwxNDE3LjMyIEggMTQxNy4zMiBWIDEuMjIwN2UtNCBMIC02LjEwMzVlLTUsMi40NDE0ZS00XCJcclxuICAgICAgICAvPlxyXG4gICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwUGF0aDE3Ni05XCIgY2xpcFBhdGhVbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XHJcbiAgICAgICAgPHBhdGhcclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgIH19XHJcbiAgICAgICAgICBpZD1cInBhdGgxNzQtNFwiXHJcbiAgICAgICAgICBkPVwiTSAtMS4yMjA3ZS00LDE0MTcuMzIgSCAxNDE3LjMyIFYgMS4yMjA3ZS00IEwgLTYuMTAzNWUtNSwyLjQ0MTRlLTRcIlxyXG4gICAgICAgIC8+XHJcbiAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoMTg2LThcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cclxuICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAgIGlkPVwicGF0aDE4NC0xXCJcclxuICAgICAgICAgIGQ9XCJNIC0xLjIyMDdlLTQsMTQxNy4zMiBIIDE0MTcuMzIgViAxLjIyMDdlLTQgTCAtNi4xMDM1ZS01LDIuNDQxNGUtNFwiXHJcbiAgICAgICAgLz5cclxuICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGgxOTYtMjlcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cclxuICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAgIGlkPVwicGF0aDE5NC0zXCJcclxuICAgICAgICAgIGQ9XCJNIC0xLjIyMDdlLTQsMTQxNy4zMiBIIDE0MTcuMzIgViAxLjIyMDdlLTQgTCAtNi4xMDM1ZS01LDIuNDQxNGUtNFwiXHJcbiAgICAgICAgLz5cclxuICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGgyMDYtOVwiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxyXG4gICAgICAgIDxwYXRoXHJcbiAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICB9fVxyXG4gICAgICAgICAgaWQ9XCJwYXRoMjA0LTBcIlxyXG4gICAgICAgICAgZD1cIk0gLTEuMjIwN2UtNCwxNDE3LjMyIEggMTQxNy4zMiBWIDEuMjIwN2UtNCBMIC02LjEwMzVlLTUsMi40NDE0ZS00XCJcclxuICAgICAgICAvPlxyXG4gICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwUGF0aDIxNi04XCIgY2xpcFBhdGhVbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XHJcbiAgICAgICAgPHBhdGhcclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgIH19XHJcbiAgICAgICAgICBpZD1cInBhdGgyMTQtOFwiXHJcbiAgICAgICAgICBkPVwiTSAtMS4yMjA3ZS00LDE0MTcuMzIgSCAxNDE3LjMyIFYgMS4yMjA3ZS00IEwgLTYuMTAzNWUtNSwyLjQ0MTRlLTRcIlxyXG4gICAgICAgIC8+XHJcbiAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoMjI2LTVcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cclxuICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAgIGlkPVwicGF0aDIyNC0wXCJcclxuICAgICAgICAgIGQ9XCJNIC0xLjIyMDdlLTQsMTQxNy4zMiBIIDE0MTcuMzIgViAxLjIyMDdlLTQgTCAtNi4xMDM1ZS01LDIuNDQxNGUtNFwiXHJcbiAgICAgICAgLz5cclxuICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGgyMzYtOVwiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxyXG4gICAgICAgIDxwYXRoXHJcbiAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICB9fVxyXG4gICAgICAgICAgaWQ9XCJwYXRoMjM0LTZcIlxyXG4gICAgICAgICAgZD1cIk0gNjAxLjA4LDYxMS40IEggODA1LjQ0IFYgODE1Ljc2IEggNjAxLjA4IFpcIlxyXG4gICAgICAgIC8+XHJcbiAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgIDxtYXNrXHJcbiAgICAgICAgaWQ9XCJtYXNrMjQwLTNcIlxyXG4gICAgICAgIGhlaWdodD17MX1cclxuICAgICAgICB3aWR0aD17MX1cclxuICAgICAgICB5PXswfVxyXG4gICAgICAgIHg9ezB9XHJcbiAgICAgICAgbWFza1VuaXRzPVwidXNlclNwYWNlT25Vc2VcIlxyXG4gICAgICA+XHJcbiAgICAgICAgPGltYWdlXHJcbiAgICAgICAgICBpZD1cImltYWdlMjQyLThcIlxyXG4gICAgICAgICAgeGxpbmtIcmVmPVwiZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFZQUFBQUdBQ0FBQUFBQ0JyT3BqQUFBQUFYTkNTVlFJNWdwYm1RQUFFVnBKUkVGVWVKenRuWHQ4VmRXVngzY1NnZ0VDQ0lJOEZCVXdRQkwyRGdFZm81WmEzemhqNjh5VWFiVkZoUHJBT3JUb1dKeTJ6amhsV3RyYStxbGlkV1pxUjFUQTUxU24vV2ludGdwU24vMUE1YkYzTGhBSTRhbnlUbmtsSkpEYytRTS9Kams1ZTUxOTd6MzdyaVQzOS8wbm41eDkxam43cnQ5ZGUrMno5ejc3Q2dFQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBZ001T0huY0Z1aGw1WnlxcDVMZC82MnpRdzJObGNveGlKWldjMkVjSUlTb2dRRmJwT1ZvcWVkN3cxZ1BTM1JZQ1pNWlFxYVNTUVM4cTl3c2dCNlJMMzdGS3FrbjlROHVPRnplNVhnWVJrRG9GNXlpcDVCamlqTUxTdGE0WGd3QXBNVkJKSlNlY0VubWVnZ0J4MDJ1TVZITFNZTWV6M2JNd0JJZ2tiNFJVVXBYbXAySURBZUtocjFSU1ZmWkozZEM5RzRSZVVEaUY1eXFwSnA2UnR2M0FPc2NURVFFZEdLcWtraDI2OWltaS91aDRJZ1JvUTk5eFVzbUpwOFp4S1FpUUdnVWpwWktxSkw0TE9tZGhDSENhVkZKVlJIZnRVOE5aZ0Z4T3dyM0dLS2ttdW5idFUrTncvNlRiaWJrcFFONElKWlZNcld1ZklxTnIzYzdMdVNab1FKbFVNcDJ1ZllwSUNCQ2tzRVJPTEZWbis3ajBQcVBWWmUwUHlkKzRtZWFHQU1Pa2txcTgwTU9WbXpab3JjMUhRdHdaRU1EMVdiaTdDOUIzbkpLcU1wYXVmWkFQdGRhNit2Z24veVVDcGE3ZG9PNmJoQXRHS3Fua3VUNCs0TkdFMXRvY2FIZHM4SjcyNXpUM2FYUzZWcmNVNERRbGxWUkZIcTZjck5WYTY5cVdrS0k5Z2Y3c3BGVk9WK3htVFZDdnNWSlZ5dE45WGY3dVh4NjFGUTBKWmhpWll3TGtuU1dWVk9OOGR1M0Zxdy9ieTU0TTVobkhKTkFkQkJoUXBxU3FLUForbjMyMzJjdG1YeHM4NHRnTjZ0bzVvTEJFU1NXOWRPMURtUHFTdGFqMGcxN0JRN3VHT1YyMHl3b3dURWtsdlhUdGJTeWViaTNxK2FmS2pnY0g3WGU1YWhkc2dvckxwSklUQm1UN3RqdS9hUy83Zm9qL1JjVXlsOHQyS1FFS1Jra2xLOC94RXJVZkdiTisvbEI3ZVhMbVg2eGxuL3RXMkZIWnJRUVlKSlZVMGtmWFhoeEphR1AwQVNGK1FQaGZQUHFHdGVqVVJhRjlMN2R1VU9mUEFVWGpsRlFUdkhUdG0ydTBNWHJMSnlQM0Y3MWRZRDkxNDRRR2E5bXpONFllWG5HaFN4MDZzd0I1WnltcDVGakNMZW16V3h1ajF4MXJjNlI0eldqNzZjMFhyN0NXZlhWSitQR2pmVjNtWkRwcEV6U2dYQ3JwcDJ0Zm56RGFtTDBkamo5TStGL010L3YvN01jc0JYMUcxemhVcDlNSlVEaXVYRWwxbHBkckgxeXFqZGtjTnBBanhQVzNFSWFyZm1BdHlsOGN2a0JhQ0NGZEJPaE1ETDltN3FJMVRVbC9YRysvOTVBOWhGMURtZDN3TzNhemY0dmZSYjRvdnVEV0JXOGVpTjNoQVI0bmF2QUtaWGkzM1c0UzhZWDVWZXgrOGtCQnlSZS85L0ttbHJoOUhVWU5rVkx1b0F5WDIzc3F2ZGNUZHRVZS9CVW5neTZmODhTS2hwaTliT2ZFUmZhcWxCd2hEQThSWTAzL1FkMnh1Y1A0VUdlaHFITDZnNy9mSGJPRG8vaDNlMzE2L0lreW5HRTMvQnY2bHVmRjdybU15UnY1K2Z1ZVgzY2lUc2QreW40eWY2OGsrbnZmb3d5SjFRMm5SM3lKWmpwNEpIdmQwQUhsU2lyWjE4ZWxHemNZbzgyRVY0bFQ2cWVkc0paZGVCOWh1SmVZQkhnaTR2bmNaVW9nR3dJVWpsRlNTVDlkKzIzR2FGTjlRZ2d4K0FucXZHL1pNMktmeFpRVFp1MnhGdDF4WFVUbFVuaGQyQmZEcDh4ZDdLbHJYL2YyWTNkYzBxLzFWcittVHY0L29vNi9vQXlmc3R1TlBScFZ4ZDBPSHZJMkZsUmNMcFdzOERKcWY3eGFHNk4zdEQ5NDZ5OEppMzF5bDdYc3VsY0l3KzNxb0sybzhQMUpoT0ZKaGtaTDRLRUp5ajlYS3FsR2VaRjJwelpHYnpqZXNXRFVRNVRaN1hiL0QvNXZ3aTQ1MCtwL01TL2EvMEs2eEVDY0RMNzhyb1VyNjFOdFRGeDVZckoxaFZ2QmU1VGhRcUxLdjZFTWlWVVFrNXNkYWt3OFFzZE5VZVhORC81aFYwcitUSlZWeEFUd3YxS0d0VVRYNjFiS2NMMzlTYXJmVnBjcVU4ckhSdDQ1WDdqdkJVOWQrN1pRSTJMblVYbSsrVE4ydzlHSENjUGp4SVBVWXFjNi96bHRyN3B4NnVRNy8rdmRReW01TVgyK1lhOUhydzJVNFh5N0lkMXlFYU9aTjdqVnVkN2JPckhDOFRmKzZOWHQ3dDdMbkQ4UVNmMHh5dkNEZEZzdTR0bDVSSjFqcmFrZFBkTGxqQ24zTGw3YjZPeTRtTmcvM0Y2aktaUmhmYW5kOEx6amhHSERPS3RkL3B1dTFaNmFnYU03VW56aGJZOHMzKzk2NzlUWXMyekJ4MVQ1UDlpcmRScHBPTnR1Mkx1YU1weGpONXpyL0xIbXBlL3RkdVNQbVRydmYydjhqTm8zckhycW5xdUhDakdET3VscG9uSXZVWWEvSjFvdWNpeDVxZDF3Z252OHZ4enAyc2pIcGNGS0tsbnVaV1E3dVZVYmJUWTFDeUdFR0xtbW4vM01iZXFRdFd3bTFkYzdJRCt5bGwxTGpVOGNWTnZEQ3daTnFKeEZUZCszWi9PNVVXY1FUOEpGWlZKSk5jVDVacWx3d0JodHFvNjBIc2gvbXZCL3k4MTIvNDljUU4xbmx0My9nOGhPK2pkRC9EK2lzbkppNVFqS3FnT2orbGhmS0lobW5uT2dwVUxqbXNWenAzVGNoZVRibE0wRDlrcm12MDBaVWkzWHk1UmhvT25JSDN2REE2L3ZTK2ZqWHBDZTc0VVFRa3hONTRZVVcxK1pmME41ZU1pUnplcWFudlpLRW9zU2tzbXRSRlROcEF4M3Q3NXUxTFB5YTQrK1M4MVkwdHlhcnZlRkVHUFN2bXM0eE1CSVVZS3dPemJlYmxoSlBnSi8xbTQ0a254Ky9JSVFRb2ppUzJZdlhKM2hXRHJaUUVaUUVPK0UrVElpM3krZ0RPK3kyeFd0b3d4L2JEZk1mNGN5WENnR1hYWHY4OVZ4OVBxY1ZramIrSE1NRmZpVXVqUHRON3FLK3FodkVNSTlRdDF4TmRGeWZaZXM2L0lkNlh6Q1VEb3VnVXlCSjJPclJqS1pERjlCTElRUVlzQk93bzRTN21wS3VJWnl1K0ZFbit2djJ1UDJvbEk0ZDhkWWoyZUorN3hBR2Q1Z3R4djRJV1ZJdEZ5OXlKWXJYcTVPMi8xQ1hCbGZOWFlRbXdYY1JCaytROVR2UmNydzlYUmJyaGpaOWZyUFpsQXZmUWhCUHdrUHNVL2t0YU4rWFNLUnlIK0phSEtUVjlxVDBWbmF1cnhZaUIzSy9tTFFkS3FYWHljL3RKWmQvWnIzdHlLT3J0ZkdySEY1UzQrYUU5NjlOMm8zcVdNYkVsV0p4SmFrRUtlc0pQd3ZIckw3UC85cHd2L0ptKzMrUC92blZNMitidmYvd0NkOStyK2xWaHVqYXh6M3k0cmdEWHQwTmVybi91VnZTMXJuR3g2a1F0RVFPN0tSSTRzUDJ1M3kvMGdaV2w1YUVXTHdaWFBJSG1nbTdGMzY4SXp6VXgwMUk3OE1ENFVsc2hPYkVsV0p4S2IyQzgwK1IvWHlteTZ3YjJXdHFNZ3g1OXQzSExtWEdKOFFPMlRIMVF4RnBVcEtGZFVrcDBmRGVxUE5XdnNTTGdKeVdZb0ozdWUxUktKcVk4alcrUDBYVVVMZVovZi9LYzhRL20rY1p2ZC94ZmVKR3lhbnQvTi8za2dwcFNyeDhxNVpTMjFDRzdNeC9LMmJqRGsvRUdNSGJDYytRMFhtY21KaTlHZVU0VDEydTZJcXlyQzE1UnA0NmV6SDM2Y20zak5nLy9KSGJ2dXIzbWs1MXBYZXdiVXZsdldkWDZicStSZGlVZWpsMUpQVW00UndEMUYzMUtjSUlYcFdUUHZKNzZnbnZBeG9XTDFvN2pVeE5XWjBoMkJqWUMvWno0Y3VRRDdEVUNzUWI3SW1SSEdxSmtiWHJWTWlRb2dycUY1KzA5U2trbktzbDJYSHlaT0xnWnQ5WER1TTRHeGY2RHJ1dk5lcGI4c0x4T1dmcFF5L2FyY2JFTjlZalR2NzMzcHMxc1grOThScFQvRE5oUmZEVHJxTHF2Yk9nZmFyMzBnWlBrOVU2N21NdlprU2pYckpQLzgxTVNUbGtiOFBWQ1Zza1gwNU5XcmRjcFg5NG1kU2kydDJFcTNhVjJKd3FpUGJYLzNSVjhZenZrdGRFcWhQYzhlazMzTTE5UUdJMWExNVN3bTdsaXZ0aHM2cm9qS2k3cDMvdlBNenhJeGFkc2dQcm5UdU9NWDVBUFVwRXNUMkp2OUVHUktMemZPV1pleGNtcWFxNTc1elhiWjI0WXBpWmFCeUhWNlkraXkxU3JzcGJCK2pUeGgvakRDc0lvUzdKd1lmMjlqNXV3ZW1WV1J6RjY3SUZ6UjBZSUZ3UmFDOFgvaFdPWjl3LzJwclVjOGx4UGhRMDdSallZZDdsRWlwNURuRURkUG5VTUlZczlZKzlPZU5DQUdDZ3hGQkFYNU9oZXJiUDdHWHpROWVxUzMzcndrZUdTYWxrbVZ4LzhxQ0VFS0lFNXVNMFdhTGowdTdFREV5ZTBWZ242aUQ3U2RXcHY0UFlYdFliYldXWGJxTWlKeTNMbXN6dE5LblhFbXBUaVB1a3o0Zkc2UE5PcmN0aG4wUkljRHB3WmVjUnJYOXFndzNSQzlmekxCUG1QVFh4UGpFSWJWTkNDRkV3V2dsZmIxcmRtU2RObWF0ZFd3cmkwUTBRWHQyQjVZbXFqWUM1RDFKK2Y4bFlzTHFVZXFsNFc5c0UwT2tsS3JNeTRMVTVzM2FHRjBiejRSSkRFUTlaSmlBQUJWdDN0eWZUVTA0Znp6TFh2YWxhWlJoNVhSUG16L3YwYnBLSjBMemUrY2xPRjdjWnZQWVV2SjF5Q24yYTU3aDZSMERPMGRYTHJ6ckNqKy8xcE1wa1JFUStMKzE4MUs0aEdvaUhuM05Xa1MzWERIVFVtdTBNVFdlSmt5eXdLVEFkNm5sMC9IQUgxSmZPZUlGVHpISDQxZTlMWHVYUFh6TEJYNG5UR0lncW8vUjYwaWd2M2p4K3lmL1h2SVcwWkU4ZnRFSDFyS3lEN3hzdjlxV1krdU0wVHJiYjZtblIxUVQxRkFUZU5HdjRxUUFmUmRUajhEejdQNHZYT0xULzhrdHB2V2xteTVCNUZDckNRcHc4cytDa1lUTmU5WjF5ZjNIMzBLTUQyWEUvaXB0ak1uZ2hSUWVJZ1hRWDJ6Ly8wa0IvbzdhRE9ySVRTSGZ3TUl4U25yYUQ3UnhnelpHMjE5RzZ0UkVSMERnZjVtWEZHSW90UU9rbUJQNEVia3pwVlN5MU1jZ1kzSzdOa1p2dEcrRzFmbEpXWURpVVp1RldEaUlzUGgxNjl0dmZjZExKYVdYVFlQcXFvelI1ckNQUzJlVlNBRnE2d005dVlyTjRzNE9QNWpTaHQyM0NTRkVqeEtwcFBTeTFYOVR0ZEhHN0lnK3NVc1FLVUJMVldBV3JPTGxzVCtsREw1V2VJMlVxdFRMMFBFT280MEoyNitwNnhJOTRXeUNBdlJZUWozZEhGL2taZWo0a0RGR0cvditWVjBXQndFQy8xZmNUKzVIV2hpMy8wOVVHNlBOdHBpdjJtbUlicVF2WHhvNDBPeGxsV3NZSHhxanpmcVF4Y0RkaUdnQmdyOVNtUlVPSjdReHVvN2h6dG5Hb1p2eXNaODE5UmFhTjJsajlOWk9NMkhpRzRkVlh5WmJBdXpTeG1qbUtkcXM0eUlBc2J3d0pvNG1qRFptbi9mN2RFSWNCTkErNzk5U1k3UXhtM09teGVtQVN3UjR1dlVlbzQxSjJIK2VLemR3U01KRlI3TFc3K3l1UEc1Zm9lQ3dzZVd4cnZaclRGMEtsNTFGdlNhQlhNZEZBRjlKQUFnSXdBNEVZTVpGZ05vdU45UGRoWEFSSUZubHZScTVpOVArNm1pRC9BRUJtSEVTQUE4Qy9uQVNnR05LSmxkd0VxRHJMdTd1L0RnSmtMdUR4ZjZCQU14QUFHYVFBNWhCQkRBREFaaUJBTXdnQnpDRENHQUdBakFEQVpoQkRtQUdFY0FNQkdBR0FqQ0RITUFNSW9BWkNNQU1CR0FHT1lBWlJBQXpFSUFaQ01BTWNnQXppQUJtSUFBekVJQVo1QUJtRUFITVFBQm1JQUF6eUFITU9Ba0EvT0VtQU5vZ2IwQUFadHdFUUJMd0JpS0FHUWpBREFSZ0pqczU0UEc4cmczeG8zU1pnZ2hnQmdJd0F3R1l3WE1BTTRnQVppQUFNeENBR2VRQVpoQUJ6RUFBWmlBQU04Z0J6Q0FDbUlFQXpFQUFacEFEbUVFRU1BTUJtSUVBekNBSE1JTUlZQVlDTUFNQm1FRU9ZQVlSd0F3RVlBWUNNSU1jd0F3aWdCa0l3QXdFWUFZNWdCbEVBRE1RZ0JrSXdBeHlBRE9JQUdZZ0FETVFnQm5rQUdZUUFjeEFBR1lnQURQSUFjd2dBcGlCQU14QUFHWjZPSjJWYVE2NC9mWU1MOUI5UVFRd0F3R1lnUURNNERtQUdVUUFNeENBR1FqQURISUFNNGdBWmlBQU14Q0FHZVFBWmhBQnpFQUFaaUFBTThnQnpDQUNtSUVBekVBQVpwQURtRUVFTUFNQm1JRUF6Q0FITUlNSVlBWUNNQU1CbUVFT1lBWVJ3QXdFWUFZQ01JTWN3QXdpZ0JrSXdBd0VZQVk1Z0JsRUFETVFnQmtJd0F4eUFET0lBR1lnQURNUWdCbmtBR1lRQWN4QUFHWWdBRFBJQWN3Z0FwaUJBTXhBQUdhUUE1aEJCREFEQVppQkFNd2dCekNEQ0dBR0FqQURBWmhCRG1BR0VjQU1CR0FHQWpDREhNQU1Jb0FaQ01BTUJHREdUWUJqbm12UjNXbXlGN2tKY0NpbWl1UXFCKzFGYmdKc2pxa2l1VXF0dmNoTmdHcTBRUm14eGw3a0prRGp1ekhWSkRjNWtMRUE0c1Y0YXBLai9JcDRrTTF6dTBTLzdmM2pxVXRPTW1tVnZjd3hBZzR0aUtjcU9jbHZDZis3Um9Eb3ZlN3NPT3FTaXpUS1RVU3BZd1NJK3VuTmNWUW1GN21YOHI4b2NMM010cnByTTY5TEx2TFVkOGxpWndIRWlxWXJNcTFMTHZMOFRIb3MzMTBBOGM2V2F3b3pyRTNPa2Z6eFAwYk1wYmdtWVNHRUVLVy9tSnhKYlhLUG1xKy9FWFdLYXhJV1FnaXgvdExyMzB1L05qbkh4anZLSS8yZldnUUlJVVRKZFpQTGhoV25wRnZ1a2F6ZlcvM2VheXU0cXdFQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBZ0hqNGY5QWNkWUgyRlI1REFBQUFBRWxGVGtTdVFtQ0NcIlxyXG4gICAgICAgICAgcHJlc2VydmVBc3BlY3RSYXRpbz1cIm5vbmVcIlxyXG4gICAgICAgICAgXHJcbiAgICAgICAgICBoZWlnaHQ9ezF9XHJcbiAgICAgICAgICB3aWR0aD17MX1cclxuICAgICAgICAvPlxyXG4gICAgICA8L21hc2s+XHJcbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoNzUwLTVcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cclxuICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAgIGlkPVwicGF0aDc0OC02MVwiXHJcbiAgICAgICAgICBkPVwiTSA1OTIuNTYsNjA4LjA0IEggODQxLjIgViA4MjIuNiBIIDU5Mi41NiBaXCJcclxuICAgICAgICAvPlxyXG4gICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICA8bWFza1xyXG4gICAgICAgIGlkPVwibWFzazc1NC0xNVwiXHJcbiAgICAgICAgaGVpZ2h0PXsxfVxyXG4gICAgICAgIHdpZHRoPXsxfVxyXG4gICAgICAgIHk9ezB9XHJcbiAgICAgICAgeD17MH1cclxuICAgICAgICBtYXNrVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiXHJcbiAgICAgID5cclxuICAgICAgICA8aW1hZ2VcclxuICAgICAgICAgIGlkPVwiaW1hZ2U3NTYtOVwiXHJcbiAgICAgICAgICB4bGlua0hyZWY9XCJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQXJJQUFBSlVDQUFBQUFETUQ1ckRBQUFBQVhOQ1NWUUk1Z3BibVFBQUlBQkpSRUZVZUp6dG5YZGdWTVgyeDgvZGJIcWhoeFk2aEY0RlJCREJpb0QwWmdFYkNpcll5M3Yrc0NBVzdQaWVpcUtnNkJPeEkwVUJrZDU3a3c0aGxVNENKQ0Z0ZCtmM3gvWjdaKzdldHJkc3p1ZWZKUGZPekQxejk1dlpNKzBNQUlJZ0NJSWdDSUlnQ0lJZ0NJSWdDSUlnQ0lJZ0NJSWdDSUlnQ0lJZ0NJSWdDSUlnQ0lJZ0NJSWdDSUlnQ0lJZ0NJSWdDSUlnQ0lJZ0NJSWdDSUlnQ0lJZ0NJSWdDSUlnQ0lJZ0NJSWdDSUlnQ0lJZ0NJSWdDSUlnQ0lJZ0NJSWdDSUlnQ0lJZ0NJSWdDSUlnaU5uaGpEWkFMcDNmTWRvQ0gwNlhxNnk4N0dwUjhaVkxsd3JPbnk5d0VxTXRxaFRZalRaQUxqVnVOZG9DRm82elovS3lzN05PbkxpTTBnMG5scE9zZWJIWHIzOE5BQUNjUDNMbzBQNTk1d3cySjJKQnlXcFByVnJYQThEcFhUdDNiRHRydEMwUmlPVjgyVnRXR0cyQkRFakdwdlZyanhwdFJZU0JrZzA3ZWF0V3JEaGp0QkVSQkVwV0QxeTdseXplaFoweWJVREo2a1gyZ2w4MnVZdzJJaEpBeWVwSXprL3pkaHR0Zy9XeEdXMUFaYUxCc3p2M1BwMXF0QlZXQnlXcksxeUhEN1BtOTdIY1Y1dXBRTW5xVGR5ZGEvWStuR2kwRlJZR0pXc0E3Yi9JbUZyTGFDTXNDMHJXRUZKZnpaaVJaclFSRmdVbGF4QkpUeDM5YnoyampiQWtLRm5EaUgvODZOdlZqVGJDZ3FCa0RTVHhYMGVlaWpYYUNNdUJraldVbWpQMkRNUWhMM21nWkEybTFlSUZUWXkyd1ZxZ1pJMkdHN0x2dVdpampiQVNLRm5qU1hwdlkwZWpiYkFRS0ZrejBHM0xpOWpRU2dVbGF3cmkzbHJaMUdnYnJBSksxaVQwM2pIR2FCTXNBa3JXTEZTYi8wbTgwVFpZQXBTc2FlQW1yV3BvdEExV0FDVnJJbnBzNlcyMENSWUFKV3NtNnY1MXY5RW1tQitVckttSW16TU5QNUVRNEFzeUY3YVhaOGNZYllQSlFjbWFqUWQrU2pEYUJIT0RralVkUXhhbEdHMkNxVUhKbW8rYmwxUXgyZ1F6ZzVJMUliMFhZenZMQmlWclJub3Z3RjNqVEZDeXB1U203M0hjZ0FWSzFwd00vaHcvR1FiNFlrektBNjhaYllGWlFjbWFsZjk3d0dnTFRBcEsxcXpZWnVJYUdTb29XZE1TOXlPdVJhU0JralV2ZFgrSU05b0VNNEtTTlRIWG1lY2tTUk9Ca2pVems0Y2JiWUVKUWNtYUdkdXNCa2FiWUQ1UXNxYW01dXdvbzAwd0hTaFpjM1BiSTBaYllEcFFzaVpuT29iazRJR1NOVG5KTS9FakNnYmZoOW5wZDZmUkZwZ01sS3pwZWJlcTBSYVlDNVNzNmFuL2t0RVdtQXZMUlQxWGZZYnQ3VTdWTmtUWlkrSVRVNnJWcUZXM2ZwMlk4TC9Cc281SHd2NE1DMkUzMmdEZFdlblFzclNZdEdhdDJuUm9uNnhsbVh4aTN4b1J6dUt0UnVWclphTTFsYXdiZSt0cnIrL2JNR3p2MHRWN1U3aUtSc0xQTFVRbFlmdGVTWis4ckZTdGNReFdXcTVsUWZ5WVY3SUFVUFhlcFJWYVNKU1A2Nll3R28yRUdWTkxGZ0RxLzk5SkRUVEtaMVY0alViQ2lka2xDeEExZkpNV0tnM0MxU3ZjVmxzSEhKZlZIT2R2UFc5YXIzR1ozUE1hRjJoaFVMTGhZUFVOQXc5cVcrTEFWdHFXWjJGUXN1SGh6NDVQWDlHeVBQdGtMVXV6TkNqWk1PSDRxTjJmV3BZM0ZxTWhla0RKaG8yY094NjVxbDFwVmU3V3JpeHJnNUlOSDJUV3RZZTFLKzFobkU1d2c1SU5KLy8wK0VPenNqcDExcXdvYTRPU0RTdVhoMzZxVlZIY09LMUtzamdvMmZEaW1LeFpCTVBSZUpnNEFLQmt3OC9VS1JvVlZLK1BSZ1ZaSEpSczJIbnJUWTBLR3ExUk9SWUhKUnQrWHY1S20zSUdvV2NBZ0pMVkEvTG9HazNLcVhPdEpzVllIWlNzRHBTUHlkR2tuRHMwS2NYcW9HVDE0TnhZVFhidjlOZWlFTXVEa3RXRmRacEVpbTJicGtVcFZnY2xxdyt2NzllZ2tLZ2JOU2pFOHFCazlhSHNNWmNHcGZUVm9BekxnNUxWaVEzek5DZ0VKeE1BSmFzZkwybXdFckV4T3JNb1dmM0lucVcraktqdTZzdXdQQ2haM1hpL1JIMFpLRm1Vckk2YytwLzZNcnFxTDhMeW9HVDE0eFAxZ3dZZDhmTkN5ZXJJL28ycWk2aU8vUytVcko2b1g5RmxhNnVCR1JZSEphc2pDOVNQYzdYUndBeUxnNUxWa2N0L3FTNENnOGFnWkhWbG9lb1NtbXRnaGNWQnllckpjdFhuTkRUVHdneHJnNUxWazlQL3FDMmhWcUlXZGxnYWxLeXVyRlZid0Y5aE9PbkJZcUJrZFVYdHlPeWlzV1dhMkdGbFVMSzZzcE9veXI1b1hLRkdobGdZbEt5dW5DeFFrM3Z4dlpyR3JMVW9LRmxkY2FrSjdyMWs3R1hORExFd0tGbDlVUkc5Yy9FOTJNWUNvR1QxNW9UaW5JdkdvV0lCQUNXck41bEtNeTYrRjcwQ041WHYyR1ZqeVZPWWI4bFliR005WUN1ckwyZVVaVnVNaXZXQmt0V1hBa1dyREJhUFE2L0FCMHBXWHdxVlRMaitnWW9OQUNXckwyVVY4dk1zdVlldVdQc1lYSXBvQmN4LzdMSTQ1MlFidklSeFNKMzlQYWZqNzlHeCtwcVB5TWZxa3MyVnJkaXE5SUtpMzNZU1FramUxSHI2VmdDUmk5VWxteVhUM0Q5WWJleDBweWRGeWRmdDlhMENJZytyU3paSEk4Vys2L1FuY2k3cWdVY3ZtaGVyUy9hVVBNVXl2QUw3Tzg2Z2RLN2wxK2xiRFVRNlZwZHN2aHhiLzJRcDlpMG5QNmxyY1VkOUs0Skl4ZUtTdFYyVm8xaVdWL0MyUUxHRUVNYzNEZlN0Q3lJTmkwczJxVnlHWWhsdGJCUlZzWVNRb3FtNG1kR0VXRnl5OVJocWs2RllpbGZnNCtRdzdJZVpEb3RMdHIxa081ZXl2QUlSeFJKQ0ZqZlN0MEpJU0N3dTJkc2tLNWJsRllncmxwQXJqK01rdkxtd3VHUWZsR2dsMHl1WUh0cXpXSXNoWlV5RnhTVTdUWnFSeTFpS2ZVT0tMMXo0TUhxMEpzTGlrcDB2eVVhbVl0K1UySHY3dGJxKzFVSkVzTGhrOTBneGthWFlLQWxlZ1llc252cldDMkZqYmNuR1NwbEpXRmFObnRuK2hrTjZOY3VmUk9mQUpGaGJzcDBrR0xpYzFjYStMbjFNbHhCQzVpWG9XemVFZ2JVbE95RzBmVXl2UUtvZjYyTW5UdUNhQW10TDlwdVE1aTFuZVFWdnl2QUtQSnpxcG0vdEVDcVdsaXdYY29FM1U3RXl2UUkzUllQMXJSOUN3OUtTYmUwS1laeFdmcXlYaWduNlZoQ2hZR25KUGh2Q3R1V000ZFFvT1dNRlFiaitEd2NPak1iU2t0MGdiaHBMc2JKR3QvaE1SODBhakpVbDIwaGNlWCt4L05ocHlyd0NEeCtpWm8zRnlwSjlVZFN3RlN5dllKcUtOcFlRUW1hZ1pnM0Z3cEsxSFJHejY2OGE5RnhScjZ0VUxDRnZvMmFOeE1LUzdTZG1GcXVOdGIrbVdyR0VUTkczb2tnUUZwYnNNaEdybUY3QlZBMFVTMXlQNkZ0VEpCRHJTcmFyU0NmcXIzRDVzUjRxaHVsYlZ5UUE2MHAyTWR1bUZRdy9WaE92Z0JCQ1NGRVBmU3VMK0xHc1pQdXdaNzcrWmluMlZhMFVTOGpweHJyV0Z2RmpWY25hdHpNdCtqdXNmcXlYM2NuNlZoanhZbFhKVG1JYXhHeGpOZk1LM1B5SU8yK053YUtTYlh5WlpjL0ttdlFjOWxjcjFGYVZ4L1A2VmhueFlFM0pScTFpbWJPU05ZUHdpclp0TENHa3JJKytsVWJjV0ZPeXI3Q3NZU3BXVXovV1EwNXRmV3VOQUlCRkpUdUFwVCtXVjhCTmtoRnVUanFMMEowMUFDdEt0bDBCdzVaVkRNVUNSRFVjL3Y3V1VyVjFGVEJaejJvamJpd28yWWFaREZOV01id0NMOVdIenBKN3RFSUlpbHJyVTJVa0FPdEp0dDRoaGlVc3J5QVFlNDhQczlYV09KQk4wZUd2TUJLTTVTVGJrS1ZZdGxjUVRFeS9uMHJVVnRvUGpuVHBqdFVrMjQ3bEZheVdxRmdBZ0xUWHpxaXR0cGVpOVBEVkZhRmlNY24yWngzbkliV045WkQwaEZiK3dYSWNOZEFaUzBrMmFncHJCa3VLSHh0TXd0UHl6eEtsY21jNGFvcXdzWkprMDVhempGaFRTMEZ4MVdlVXFhMDhJWVJrTXlMYUkySENPcEsxM1h1QlpZTWNQemFRRHV2VjFwNFFRcVpyVzA4a0JKYVJiTnNWVEJOV3kyOWpHei84Mm1NdE9iQS9XYWkyL29RVVkyQjZYYkdJWk90K3d2NFNYNU1xdDdTb1I4OFJRZ3Blc0FPMDJhSDJCUkF5UHh3MVJsaFlRckoxMzduQ05tQ3QvRFoyckh2RmdlTnhBSWovTkZSZ3I1QTRMQjBSMFhJNzNHOVpvYktBYUljbWRvalE3dkd4SXRHSWQ0Mjd3THZpekNjQXNTS2RvcmkvVzdoL09kWDVIQURjUHpOZXBZWEwreE9WSlJnSVNsWmprb2M4MUZ0MDVQTnlCZjlLK1pTNWtQeWpTTXNYVmRYek1aSGIvd0lBNlBXcnlsV0U1TWExNmdwQVpHQnF4eUJwOFA4dUtUQnBQa0M2dEc3VktQZHowbzhwZUVvZ0t5M1hWUGt4K0tqM0NDS3E2YzIzMzVnU0l0SEIzWlNMSlI4Qm5IaitlbmF1bUtHZXhTeU9IUGZQbzMyWHRWTmlvNDhicjErdktqOGlBMU8yc2tuWFRwNlhLYUZYdEZiMldBRUFBTmlYZXZKdmkvTmVxcjFYM1Z2NFE3TzZJNkV3bDJSamFuVzk4NVVmL3BHNDBrcWhZZ0hhdUJjWW5PbnV2MVNIdFVCTUdvNU9tdFRmQ0N6bjA2anVmdDNzVkplZnMwVkZ4OFluSlZldFhyTjIzZFFxTWw3Z2h1SG5sVDYwNVJ1M0pKYXVlWGx2d0tWRzYxVWRPUFB0ZldweUcwbmxrNnhockIraFdMRUF0bHJWTHA4UEh1dm91RmJOWW9HUzVxZFU1RFlTWEltbUYrdEhxbEFzdU00ZVBzMGJuZHQ3dDVyaHVuakxIdnlCa3RXSkRhUE9hVjNrbnkrcHlUMCtWaXM3ZEFZbHF3OGJoNTlOYVo1ZVRiNGZsdFM0WlExV3J2ZCtWMkZSMmlBVm1SRVpxQjR4TUlUMXFkV25aNWFWbmY1Y1pwY3A1ZVZqcFdYbnYybk91RjJkdFV0SENzdFVmeGFJSkN3cDJRMjE2Mjl6LzNhOGpaektWdi9iblN2bldrYUNQaXBpeXBRM1Z2OXBJQkt3b21RM3BOb1hlSC9mSXVQOGJ0c1gzbHlIV1JFUFBsQmhGcDZnb0E4V2xPeUdWTGpPRjYvSU9kckd4MTB4VG5EZDFxcklWOFlreHV0SU9LcmNyZ1BXN01qZ0dvT3dzM0g0T2VqamkzaGgrL2hsWG0vS05mOGRGMENETDlNRU9aTVNmYi9lOWltOThLdVAvYVY0YUwxTmx4MUtzeG9KU2piY2JCcHhEaUJncGpaVk1HdGIvWk5DZ0lIOVJFdXBablBSYi96OXcxMktUUnVOa2tXRWJCcDZIZ0RPK2krYzQ4OG91T1lWQThDU0ljTEJoT1NHdmw4TEdJb0YrTmZnUk5hdFVJeDRVZVhrTlNJRmkvbXlHOTF0YWcrL0x6c3Fpb2ZYbCtWZmo0cEs5L3V5ajdIZnlHdktyYnRHaHc4TXNaWmtOM3EyRDloLzgxN1pMR2ZFNEV0dkx1YUlBUUFrbjFWczN1dnFQZ3RFRXBhUzdDYmZocGQ2VzkxWFpJN0xybkF2d3MzdExwYnFhY1gyN2JiY3FpZ3JZaVhKYmdyb2FWV2ZudUZ3NUh4V1QxNXRrNlljTG5lZStVWTg4RUQ4S2FVR09ob3ArQVFRbVZoSXNwdUNOeFdtTkd0UlRYNTlFNXUwcUJtcUxYeE9zWWtQeVRjSWtZdDFKTHRaWkJ1c1BURlJiS3dteWk3ckd6dVpGVjR4SkQvSmVZeEpzT1lFaUJYWU91UXM2MWJORjdkbVptNStudEhtY3RmTVdMMzVwd2Rsck44dS9GS3VjVjc2WUZEdjhHT1ZWbGFramUxeTJKMWtmM3ZhM2ZoMzNUdko5b3QydVlKcHFQaFVPK3R1QWJNT0ZwSHM1anJNR2pUeXJSZzhRdW1NUlgzczNhbDdxcTMwdC9JYnc0eVFQS1hnSTBEa1lRM0pibVczc2R4WC9tUWZDMTNXQWY0RHY1WkwvOWJ1cDlUUVh4UjlDSWdjTENIWkxTSTlyN29Cd2JoUHBVWkhSMGU3ZFJzVkhSMGRIUjI5eUgrM1RQcmtWSlRTdGQ2NVVXby9FTjNCTlFaaFlNc3daczhMb0ZuQVJGYWQ3UTRBMS8vZWNBRTAvdHE5b0NCZ1BWZE16NTFTbitqODltWFpWZ0lBUUwyR0o1VmxSQ1JqZ1ZaMlMxMnhDdHdzaUNxVG13d0FqMUFLbWlyOXRhUXJOWGFNdW8vREFMQ1YxWnh0UTgrSTNiNVlFZVA3M2JIZkFVQitMQUtBUmYzcUF3QkEyNEExQ0RMMjVCN2RxWENKeXpVL0tzdUhTTWIwcmV3VzlsZ0JBQURFSC9DbjNSN0hjWnluQzhhNStjVi90N1NEalBmeWdrSnpyUmZKQktjU05HYnJNTkUyRnFEa0k5L1NWOGRIcFlRUVQzUmlqNFJtbHZsU0xqOG80N20veWpFeWdQYjRQUnR1VE43S2JnMjk3aVhtSzQ4MzY1eEpHY1d5VFhkNmlqclpRdGFMMmFmTVlHZDlXVTh4QWZnL3BpbmJocDRPbWFaOFV0YVQxUURJeFE5bWVBSjZjL0cxWXk5Y2NvY3JjcjFhOUVJS0FMaTJUVGdtNjlIL0dTRFhXRGRWOHBUbE13ekxMWmcwZFJpNWJjTWt4V2JqMG01TGg4Ti9lYlhTK3NrQjFXMWxlMmYvVXVxKzIyclV0ZkVaUzVkZURaZVZpTDZZMlRHUTRCVUlzVTN3ck1OeS91RWJIT01zMTVJZ2JFd3MyVzJpNDdFc3h2c1BDRnVIUjNWR0l1YVZyRExGcHA4UEtPSnRiRjFEZzROY1dyRnRXT2llRjRWSEFvK3pmVkNKWjFIWlFNbHF4UGJoaW5yZWNVSDkvRm85dFRFbW9rSEphc09Pb2NyR2lsS0N2UWtaUzJRckxTaFpUZGcrVk9ISkE3eE5YbGFOckswbktGa3QyREZNNlhoOFlYSFFuMW5xYllsNFVMSWFzRk9oVndBQXhWc0QveXJkcHQ2WWlBY2xxNTRkUTJRcWxrdnQwSzIxZXd6V05TZndXSm4xKzl6MzQrTnh0Q3R5TU4rNDdIWmhZRmhSYkwxL09lMXdsbWQ4bWc0QUVQMjl2NlNMMXdBQTEyeks2b09ITnJ6WkRsdVRDTUYwa3BXcjJJVDN2TWVIbmg5dkE0RHFTNzNiRlBLSGN3QnhVenp6dDRYdmh6ckRHYkVHWnBQc2RwbUw5MkxtK0RmU2xEM0tBVURTeTZkY2hKQ1N2NjRCZ1BpNXZ0dXVwUXJpSVNIbXcyU1MzU0d6allVSmdXZklYTzRLQU1DbERudnB6WWxkN0FEQXZSYTRNK3hMNjIxL1JZU1lTN0k3NUI1OVhDMGpLUC92UEllMTdlWEF1NlUzYXZiYUlnajA4ZFd3YzFpT3pCdzNOaGI3RSs0TDhsOWpKK0RBZ1JEY2xhQ0NYVU56NVdicEZTekNsSDhkQmVDeWZxK0F1RkdwQU53SVh1b3FsMVFaaUpnQkV6a0dzcjBDQUc0K3JTREhRSUFKZ3ZBR2hKQlMrVStJZkxDVlZjd3UyVjRCQVBEUG8zY1JBTGh5QWVEMDFUZ0E0UFczT094L0NVSEpLbVgzRU5sZUFRREo1UDM5MkM0QXVKQUo4RWVYS2dBeHZCRHp4YmovS3dJd2kyT3dVOWwzTnUrYzVOTzhjK3QrQ0g3SU9veFlMS1R5dGJKcmlCYWxYSHhXZ1ZjQUFGdDNCQjM2L1RQdjNMcnZSZ2E2QW1SK2hhS0hJS1pDZFN0cjhEL3BUY1VCdG1Ud3A4NWlsZ1dhdWh1bmJDTUJxMHVXZTdURVo4cVozb0xielk3NUxUMTNMU1UvWWptc0xsbXdqZkJNZ0RrM2Q2YmNiclBOTzlwMUdEZUNSUWFXbHl4QTZ1UExNczRjK21VMC9XalFLay92TFhFNFNvOU1yZVc5d3VFVVpTQ1dteEZVSGVBb21qODBxZ3NKZFpPYytXZTlCM05ISlVSVlhHVjJBK1BUR25PNTJVWHVQMkt2dWJWNThxV0R5Ly9CUTcydGloVmJXYTdGK3dlTG5ZN3phKzZYZXc0OTEyZWQrM3lra29WeWdzMGlac0tDa28xKzhxTG4yYTZ0OHM3WmlucldQNzV3Y1l6bHZoRVJBTENpWktObkJFd2ZuTzRsSXljM09mQUl1cUpCWVRNUkNTZldrK3pqUVJOZUp4dEt6OW5wVXBEbFdSait5SkpZVHJLTnp3Yy8veXZKL1gvYlR6elRwNGZUVHN1QTR5ZmhabnpONEw5SE5wV2FzOUd0dkF1amNEWU1VTEpoSjNvdzcwTHk3Vkt6ZHE3S3U5QklzdG9qR2VNSDFpT2Myb0lWWHc4MjRWODUrV1VaSkQvQ1AzeUpDRTd5aW1xMlIwUExyQXBLTnN3a0ovT3ZkQmJNMDdyeUZzRDk3MGdZdzhJb2M0Q1NEVHNPSi84Vk84cjVhZkpQQUJ5NElKaG1pT0lybE1nNGJqRnlRY21HbVlzWCtVTlRYMy9JVDVOL0RtQlZaMEZ6M09GNzNqNmFxMGMxTmMyaW9HVERUUDVlbm1USm9zUFVoTUpRZExuSFd3WmYyS3d3aUcxa2dTTUc0V2F1Sy9qdm8rdWs1aXo2UEhqbGpPTmpRMWIwSUNxeDNGUkMzTHFneHpzZWtKNDFhWDFRMW5uNGxXaEpMQ2RaYUhNcThQRno1ZXhBYkhZd0lPZnFHbUV6RVFrbjFwTXNYSHZTOTNEbmQwbXlzalpjNGwyZ1VENGI0eUJhRkF0S0Zock1MWEkvTytOaHVidThZNFl0Tytja2pyeWYrMklVRGcrV1c0TnB5VjBKWEl1Qm5XdVhaYTVlclNERUZwZGFPL2JxNlh6dGpiSXE2TkhyQVRsNkZHemdDcDJRbHZmc1dZMnRzVGdvV2IxUUpsaEVBSTdMSWhZRFcxa0ZjRjEyU2sxcWI5dzhqVHQxSk12QVNFWEo3V3R6QlFkd2VZSmhtR0RFZ0J1L1VHTEsrUHMzWFNXRWtLdmJIcGE3dDFZckVvZCttMW51T0x2d29WcWgweUpod1hqSmN2ZVgvQzR0WmVjdFR1OVRYVHU2cVgydUVxSkc3UGNHbjhsOWhoN3FBd2szaGt1V3U2K0UvQ0FwWmIrZ1hWLzVBMVUrV0FIeC93bllvdXRhWGpkMERrUjdqSllzOTBBSklkOUtTZG1KdDAreG9JZTZKOHNuK3F2Z2FQWmJhNGJPZzJpT3daTGw3cjlLQ0praklXWGlWdjZUZHd0V3hJYVpwNXc4Qzc3RjNyWUJHQ3RaN3Q2cmhCQXlTMExTOFlMek9seVQxVHhhUGszUDh5Mm9pSVRvSFRndUt3ZnUzbG54QUpLbUJleVBDdWJDdWZIeDJwc2t3bU1DUDhEK2RBUkVza2ZKeW9DNzc3TTRBSkFrMmZUV3dtdHRtd212aFkrRUljSnIxMFhBdG5KMGJxVERqZnRVZWpQWmxqS2tGRDB5VlhnUkFFNGZWbk4rUStJSStyTEU2cFFEU0dMN0hsSHhKSE9Ba3BVTU4zWlduT2RYQ2Q5TjFQaFpyOURUWHVtL1dhRk5BQUNQU2RsTzdvRnJxK0pCSmdFbEt4WHUzcy9pZkwrSFRrNVZOU05mQWo4c2pDd0tuZlQvSUk3Mk5GVlBNZ2NvV1lsdzk4NzBld1VTM2hwMVR2L3JYZFMwdWFyV0FNL1pRM2RYdXI5TnVWaW81a25tQUNVckRlNmV6d0tFSWFIZmZiZzhSbkROTlhPSGhpWjVxZGhDdjM2RllnRlkzNVhGRVFOcGNHTy9ER3pLS0ZyZ2MrQ2s4RnFHcnFFekRwOFJYaXRmcmFjRjRRRWxLd1Z1M09keGdYL0hzUkw2S2YxR2VHMytGYTBNa2tMeEV1RzFYUmh2Um4rTW1QM2l4aFlIbDdGVVFxYWFKL2hQenRaNVdVcTd5M3dMblBmb2F3RUNZSWhrdVh1dThzcVFGUERsRGw2dTBwR3luNnlTMS9senhuOUk4R2dRcmRGZnNvSTJsaEJKbXhLNFNhV0JlY3FlMUgwM2M4S2lZTE1QS3p2ZEhGR0g3cExseGdrVVM2UjVoTnlvUEgrVzAzY2IwRzFJK1Rsd0xkZE9YZWVMRVM5NlM1YTdSNmhZUXVtTFUybjQwU2tYSVlTNHpuelNXRzVGTlNIbWlSeXZjM0RwZ3dnSmtJU2hOOFRoN3BwTkdhZ3ZxaWF4RUs1Rzk2NTE0ZlR1cmVmVnJDSlFRK3FvSWVsSjNOVlR5NzQ3YnBRSmxSMTlXMW1LSDBzSUlXVldtdmUwMWV6U0xTMkNwb3dpcUNwaGdMdjdjK29lditna0JaR0tqTUoxNFlMUkptZ0tUaVdJd04zMUJYMHZOeGNoYnFFbHdWYVdEWGYzbDZ6MXNYb0dCZURpN2VXbE9qN1A3S0JrbVhEM2ZNNWMwVTFmcXMzRzNxUlZ6Zks4ZlFYeWUwRDFodmRySEY5NGZQRVNqSDFvVlhUcmZuRjNGYkVMZVVhV3pmWkJxNjhRUWh5blBwVzdqeVhtQ1U4SWNOZXhNUmhnMXFMb0pWbnVMdXBZZ1lmMzVKaGM5UnRmQUl3emQ4cnFQQ1I4N1o4S0tKK0czNGpXUkNmSmNuZUx0TEdFekpOaGNmS3lnSXdsRDhnWUNZLzZiK0FpQWNmVGxodEVSd0Qwa3F5b1YwQWtyb3Z4RlBWUlVNNUxYYVZuN1Y4V25MV2Q5S3lJZWRCRnN0d1lNYStBRUpJaDNlQXV2QVZkeXlTSEVyQ3Y0VDMxSzJ4bUFVY01xSEJqNW9TSUVsZ25Udkt3MHdUZXNNT04xK3pqSnlsekFrQzBRTXF0dXZNdURLZ1JXWk1DeWtESkN1SHUvREpVWE11NE9wa1NDNHUvaVhjaDVtZkIzb1M4Qi9LZ3phenEvTXNKL0RHMm1zMVJzaFlrL0k0Qk4wYmNqeVdFRUhLalZIc2JGMHF3NlM2QTV5VWtjNDFSOSs0aUEyeGwrWENqdnBJUU83aVoxSDEvQ1lKOVlwY0V1MXhQckFENHFhZGdtMDNkaGdMYkpENDBva0hKOHVER3pKWVM3YnFGMVBKS3kvbXZlTm05L0Rrd2x3c2dhNFJneEhiczE3d0xKRmZxVXlNWmxHd3czT2d2SloxcTBESjBFamZuempiaFhUbEtQK3JESlloTnQ2Y3NOdmhDL2pHcFQ0MWtjQ1ZYRU56SU9kSU9tVzBsdGNTaWpid0x6citrWmoyMGgzZmg3L05Tc3lJbUlyemRyOUVoeG1OOWxFZytZYVpQZVhET1RSS0NJSGdZVlJHVXM1Zy82SVZZZ25CS1Z0SllnWWVPVWcyTytpNG9YOGt0MHV0cW54dVkwemtWZTErV0pJeVM1VVpKR1pEeUlEMklSZXJPZ0d5T0YrWG9yc3J2L2tVR3prOWlRMmRBVEVnWUpUdFNlaHNyYXkxWC9iOTl3aXQ2Vmw1L04rSDFTNTZjcHgrTGdKanhsWlB3U1hhMEhNVVN5WjBvQUVpWWZMaUNFT0lxWHR4RDduYzdsejV0dyttQ25KWFAxWmVaTVhLeG5IdWtkbFA0aVhUNlFRZmN5SytralJWNE9GL1hLU04xVXFjdU5TcXlOMlY2OXBMWDd0Z3FPbWQzQnFzRWUycUs4Nkp2QjBOMFlwU2pTTTdERUhPaHNwVTlUamwxQXdDQWsrVVZFRUtjeWtPdjFQM1BHUmNocFBpUGE2a05Sc3BqbXk1V2xPWDhlaXVPbVVjRzZpUjduREdlS2x1eGhDaWU3KzkyM0Z0RTBXVEs1cGhyZG5zODMvSzVWb3FXZ0RCUkpka1RqRFlXNUl3VmVKaWhzQUt0Yy8xbGxJMFgzTzUyeG45N21kN0hNU0xoUUkxa2o3ZGhGRHBTdm1JSkk5eDdLR0pXQmhaeWdiOVdvZHErd05zemNISXlBbEFoV1dZYk8xeTJWMEFJS1ZIV0JONGVQS1AxTWMrZGZTN29ibUVFbkhtRUtKZHNCa3V4OHYxWVFvaU1KYk5CekE0dUpET0Y4eDUyeEhFY0Y3c3YrUFkwWlM4cG9xazh2ZElUZ3c5UnIzTWp2cGE4WGlDSXZrcU95b2pxSFB4MzJzK2xBQm12WG9IYTArb0FRQXl2ZTlqWEp1SHNVY1RjS0cxbE14aCtMRGRNZ1I5TENKRzF5OVpQNGxGS1NhNHhmSS9BeXhHYzhoSlFXVnJaeklIME5oWUcvazlaR3d2UUxVWEJBVFA4NkZya2doTWdieHZBeW9QVkFTQzZlckJ2U3pBbXJJQktJdGtNaGxjQTBGT3BZaUd1OXgveU0xV2NhQi8wZDM3M3l3QWxwUUM3dThVQ1FMMU5LVUczODlBdkVGQTVSbEV5Qng5ZzNkcW12TlIrU2pJdERtNDMxMllYRkJTVUFnQmNMU2dvS0RoNk9EajFTcFNzOVZIaXkyYXl4Z29Bb0w1RFFZRnVqaWxab0ZFMXlKa3Q2OHU3UFRIbzNLTUNQSkFqQWxBZ1dWYlB5NDNnUkRuSk9FWCtFOWdNQ293ZTg0a05BR0lIek5xOGE4blREUUFBRWpjRzNIVzliTGxWUzRnUStaSTlLUjdLNmx2RmtpVXZLS2tBOTZoUHM2NzVpUURRWnJXN29ULy9oQjBBV3ZwV0lCRFg5OUwzM0NEbVJiWmtReWdXSmlpWExIOG5valM0bTNlNlEzQ2VlaVlPQURybGVJdHp2aE1GQU0xWGVBSjBGcjB0WlhjNllucmtTdlprcURuUDF2eFRNNlZUb2ZDMHd2aCtIeTVZOHRWOXRRRUFxdXdLS084dUFJRFlZYjlsRlYvKzU1UE82QlZFQmpJbEc2cU5CYkRsaFM2RnhSUEs2K0hWNCtUQS81Z0Q3bFhtdHFRYTFaZ3g3eEdySVUreUo5dUhMbkdlY3NsdVVGMmQ2QTJCNVRuNE1lY1FJWkU5THBzMWVIL29SQ3VWbDk5RDlTQlVVdEJvUnRRMWFzdXJCRVMwWkxQdWtLQllXS1Y4dUQ3cVRzVlpQU1FFVHovV1ZGdGVKU0NTSlpzMTZCOHB5VElGa1FpbE0wN3QrN3NhZkJndW5wUVVtZ2lXYktZVXJ3QUFZTG55WjZUM1VwNFhBQUNLZ3Y1ZlhMdFVGbGNaaUZ6SlpnOFdCSGhuOEtmeWgzQVBLYzhMQUFBVlB3YXVPVGltY0hjT1ltYWtqaGhJR1N2d0VGK2dmTXlnU08xcHR0WDIrd3VydUZkbFlaV0NTRjE4bURsRW9sY0FBQ1VyUnloK1R1SjlIeXJPQ3dBQUJlTi85NGJ2ZHMzOFhrVkJMdzVXbG0vOFFSVVBSU1FnclpYTjZpQ256SEhLVzFseVRORS9mVlJNak04bDY3VEpQVU9iLzY4WTd5V2JmSDh0NXB3eSt3c1ZyeGMyaXNoc1pTWDN2TndzNVlmTGxrSHpPMzZYblNmbDdoSHBjUGpuSHdzQkFHRFBMYmNQYlJkN2V2VVBHVzYzbG1zNXVuTjg5ckxseGJMS0hLVHc4UEpkOGg2RHlFZEtLNXNwT2ZpcmgrWEtXaWhDaUpJdFlLMTN1QWdoeExYSmR3Z3paNHZ5dGFzeEwxOG1oQkRuUm5rYndwY3FOSCtxYlBNUm1VaVFiSlpjeGNMRENqOXZRZ2h4eVIzbnFuZlltM1VQcFdXMHZlTTlhZm1FNUNORUFLQ0owcFhxTjhpMEhwRk5hTWxteXZKakFRQWd0VlRoQjA0SUlZdmxQWXY3MUovMVhlSHRtL3ltL0M3RGE1dXUwUGhMdVB3bTdJU1VyR3l2QUFEZ1Q0V2ZPQ0dFT09VdERFZ05DTHFWWGNNcm51SjdBQUFnQUVsRVFWUnV0OXZ0SEFDQXpXNjMyKzMyWC94M1M2VFhKRjVoNTRzc2t2ZWV6RURFZGIreWgrNVZrT3Y3L3NxZmFIdFYxdkJTOHdCdklHMVZHUURBbXBmS29mRi82d0FBY0FFZWJGd3Z5Vlc1VzJIblM4M01IeUtSRUsxc1ZpZEZwYVpjVnRoS0VVS0lzNGVzQ2dpWGxKYzBveDhJT2xWcW1iWjlsTnlTVEc4YXVuQ3pFV0d0Yk00US9sbFowcml5Y0p6eWg5cmV2RVZHaEl4OGh6OENqUE9FRXdCZ1V4N0E0a0h1VlZ4TkE4YmJMa290czcvMHFiNWdEcHhVbUJHUmptZ3JtOVU1ZEFGMGJsTFlUQkZDQ0hFTmxQR2twSUJkNFh1cXhNYkd4c1p5QUFCUnNiR3hzYkZ4aS94M3l5UTd5V3VWV3Y2bTdCZUZ5RVpNc2xsZEZCY2JkVnlrM0pBY2lBbjlCQjlQK2p3REIyVlJUWC8veVhiTHBaYmFSN0hoM1dUWWpTaEVSTExaeXZ4WU55OHAvdGdKSWVRcEdVK0svOFdqV2RmL0tKTnU5cGxlUlorUyttM1ByVkpxZGthRStZWG1oQzNaYk1WZUFRQkFtcHFoV1ZJZ09KbGVoT1FQQ3draDVQTGIxT245aFBldUVrS0lhNS9rVHQzTmlzMStYNGJWaUZLWWtsWGhGUUFBd0srS1AzaENDSkcxQnN2Vyt0blpYejZkenRqMGJldiswY2FkQ3g2cUlybTByWXF0eGtOeDlZQWwyUnlWaWxYUlZoRkNpR3VBdktlSnh5amdiREppR055cDJPakRsQU54RU0xaFNGYWRWd0FBWU50UEwxa2lXYUZPUElwcU9YQlFPOWtSanJtYVhYczJGbDJLbUhCU3NjMVQ1VnFES0lFdTJXd05kbE5QVlB6UkUwSUltU05lZXN2ZkN3bTV1bHBtRjczbUIza1ZydnlGWXYzS1Z4VmI3RWlYWnd5aURLcGtjN1RZLzU5MFZ2R0hUd2docm1GaWhYZkljcWZLbDNHMlBVQ2RiZTVjNTI5bUptbGVyTmppTlhKTVFSUkRrNnhxUDliTk5NVWZQaUdFa1BNaUVicmlmREU0ajhzSVZSRGxDMlJ6c2c0amlXMlpjb1B2ay9WMkVLVlFKS3VSWXFHT3NzT1VmS3hoZTZxMytaYXp1aDVORkJBRkFCQXJ2TjdGSDRyMmFVYkI5eXMzOTRLc1k2Yk5Rd1NNSmVjTzFXajMvNW01azFUbDcvUEd2MWkzcnZQMXpibnB6d2xHQTlaUExJVzJjMUlGdVJMOGkxbHZvcDgvMmtERlpzbnZpNVRuUldRZ2FHVnp1bXBXZGhOVjB3bUVPRWV6U3Y1QU5GOUpNOVloU2o3V1VVY05vbFlvTjlaaDFaTWJMZC9LNWc3ZHFWbFpKK2M5cUNxL2JjNXhSb09mNC8vMWVDYS9sU1dic2dGK3ZFYTQ1TFZHUjEvU0M5VEFZYy9KNnN3RnM0cDU0Z21pTGJ4V1ZzTTJGZ0NhcTJ4bVNYWWF2ZUMydm41OXhXMmNBSGNhNGZWbVY3eTVYTUlqeFFHZ2R6bmRDa25jb2VXTFEwUUlscXkyaWdYNFVvVUdDQ0dFN0tIUEtOZys4UzUyV1NSajBaZnRJMit1M2JUcDIzcTVLZ3c5WVBudlY4c1FKTmxjcmVPeE5yN0srb2lsc3BwK3dFSHlEMDVDQ0hHdFpvMVcwWFA5NXRic1Vkb096UGhOYXV4OFdNbnJRWlFRS05sY2pkdFlBSmloUmdhRUVFS1cwTU40eEk1ZGVlYmNoa2t5WTdQRVA3Szc0SExtaC9Vb3Qyd3FvbzhUa29NN2EzVWpRTEs1WVZpZ25KcXZWckxrZDBib21hajRSQVZmeHRHcERlSnBhMlM0dDFVWitheDhTeENGK0NVYkRzVUMvRnV0WWdsWm9rY0w5cHp5ZzNRSUlXZVNkVEFSY2VPVGJCaThBZ0NBaEF6MW1sMHRlYTJyWWlZN1E1c2h3dk5oTnhEeDRaVnNtQlFMTUVhOVpNbHV4bGlYWmp5aFRyRjUyTWpxaUVleWVXRmJVRzlUdkpNcWdPeUFaUTl4VlJLMU9IUXVPaVhaT3dQR1RWSGxGUkF5V1FON0VLbTRKWHNxakZ0RE81UnBvTmtpNzFrMVZWN2VsMy84czhacWpiS1BYWGZ1MUlMck9RQUEreWNxalR1R1orUHF5UzJFRUpJWDFzM003MnNnV2VLYUVRTUFVSDBkSVVSUmFMc2c3Qjg1Q0NHazZGNEFxTHBFclczTXBSQklPTGlGaE5NckFBQ0FsRXkxbWlDRUVMS2xPUUI4N1Bsams3cUdiWlJuOGVLRjV0RG1vRnJETmxqN1RCZkxIZTE3OHpJNE8zeGJlSjh4YUtFbXI2WHdtVGsxRDNwV2RMdStFSWxXbFA5MUFTVGNUNXN2OE1BTjlSN0MrRXJtcDJxN1RzNWVXMVdXZ0pnUFZSTkxBU3diSksxblB3M2dFV2s5S2hXSDUzZ0pzVWtOc1NTcHA5VXJneEJDaUgrcGxVdUUwdnNBK2hlS3BkRElIRUlJdVNCY1NtNHRMT2NZNk1PSW56VitNU1ZEOHRnM3kwNjZnR3Nvc3Z5QXZEcEdNMHNtZnFGWlVZaVorRWJEZG8wUVFtYXA2L0owMHNBaGNMTVd3MjFFS0ZWUGFLVVJRZ2h4L3FpMnozU1htdFhjQVZ4dHJjbnJRVXpJOVJwcHhNM1dPMlhIaVFta3hrdnFZaXo0K2JkVzd3Y3hIK3FpZHdySWUxMXhqUGV1czVXSDErQ3hDZmNpUkRCMk5lZlgwWEN1ZTBSQlp6M3RtVDNhbVZEWVV2djNoSmlIMnRuYWFjVkR4WnBuMjhvWWl1RGFQcjlCM1pJdEhoR3hld1lIdWRqMFhLWDhhRnMydVd2V2JUcnNESm5NMXJ6WERUYzExUGJSUDQrUmNReUphVUhKaWpEeHN6QzluaXQ3OXU0L2ZQd01RMEExbTdadTE2bExOYzJmbmRHMVFPc2lqUUFsS3dMMzZhTmhMSjBVWitlZVBuZXhvTEM0dE53RnR1aTRoT1NxMVZQcnBEV3NFcDVsS3lVMzdBaEx1WHFEa2hVajVrOTJsRXpMTWVGTG95M1FCcFNzS0RYV1I4elErNnhISThHUkJaUnNLSnB0a0JVcnc3eXM3VmRtdEFrYWdaSU5RYmUvVTR3MlFRdU85enBudEFsYVllMEY2anF3ZlhTcDBTWm93TVhCRWFOWXdIVTlvVGh4ZEtqbFgxTEo0TWdZTEFBQWxLd0VEdVlNc3ZoM2tlT2VwVWFib0NFbzJkRHNPVFBBMHBwMVBUTFBhQk8wQkNVcmdaMW4rMXRZcytUWm1VYWJvQ2tvV1Nuc3pCMW9XYzJTZjM5Z3RBbUlFZHlwTmlTOVViZ3dZbHhsWldDaDBlSlRoUE1wbzE4Y1loZzl0ZHJMb2ljVkR4bjkyclFIWjc4azAzSnhDNk5Oa0V2SnVGK05Oa0Y3VUxMU1NmMzVCcU5Oa01mRkVXdU5OaUVNNElpQmRJcC9yTmZaYUJ2a2NQeTJDSnJ6OG9PU2xZRmowYVdiclBQQzF2YlBNdG9FeEFUY2VNcm9IcFZFWEorRlkrTWFZa0hxcnpaYWpKSzQrbERFOWxLczh6MW5FZ3EvaDU3bWYybkhCdjVodEFtSWllaDcwdWcyTkJUejZTZnBJcFdXNnQ5cUdmQlZjeTQvRUxGT0FhSVVibmllMGJwa3M2YVowYThITVNNMXY5WTA4cEIyRkQ2SmtlSVFPcmNlTWxxZE5KWmhFNHN3aVgvSmRJdTc4dTYyN0xKZVJCY2F6emVWZDFENkFRNFVJS0hvdGNGb25mcHdMV3BsOU50QXJJQnQyRDZqdGVwbTg0MUd2d3JFS3RqSG1xQWZ0bWNvT3JHSWRLTHZOcmlsM1RYUy9GUElpTG1JR3J6T3NQa3c1MXJyN3Y1RkRJVHJNYytRUGJpbDgzc1lYWFhFc3RSL0pWTnZ3ZWE4MXNEb1dpT1dKbnJnYnpvMnRXVkxoc1lZWFdQRStxUk8zdXpRUTYvTzNjL1ZON3F1Qm9ITDFEU24rY2lSbmNMYmczY2QrdVhuQTJGOWdwbEJ5WWFEcG9NRzl3clgxcXVLN1FzWEg0NlFZdzhVZ1pJTkUxVnY2bmRySTYxSG44aXBWY3YranB4NDNNcEF5WVlQcmxuZkczbzMxRXEyNVBTR2RXc091VFFxemNLZ1pNTk13KzQ5dW5WTVVmbWFpL2J2MkxJMW96SjdBd0dnWkhYQTNyeGpoM1p0R2lvWmtxcklPN2gvLzc0ajVacmJaRjFRc3JxUjJDUzlXZFBHamRJU3BBd25PRXR5c3JOT1pCekxLQXk3WFZZREphczNYUFhhZFZKVGE5U29XalU1T1NFaExqYmFEZ0JBbkdYbFpjWEZ4WmN2WDhxL2NQN2M2WE1GNkxVeVFNa2FEc2ZaaUF2OVZBUkJFQVJCRUFSQkVBUkJFQVJCRUFSQkVBUkJFQVJCRUFSQkVBUkJFQVJCRUFSQkVBUkJFQVJCRUFSQkVBUkJFQVJCRUFSQkVBUkJKSUpoNUxTbGFvT0dkV3RXVFl5SmNwWVhYNzU0T2llN0FBUEVhWXdPa28xSmxaVE01YXdvTGJIeTU1dmNyVmZYRG5WNXAzcFVuTjIvWS9PV0FtTXNpa3gwa0d5dkRkTFNFVWZGMWROWngvN1plYmdzdkFhRmcvcERCL2RLWk4wczNicG93VWs5clVIVTBVdnVNV3dYRnovVzBHaWpaUkV6ZkdsWmlEcFZyTG96WEtjcUlab2pXN0tFa1BKVjk4UWJiYmRVRXAvSWtGU25yS2VZelRCaUxwUklsaENTODF5UzBaWkx3VDQrVzNLVnN1OEw3Nm1MaUVZb2xDd2hPZmVhL3hQdXVrMVdsZGExTnRwZ1JBS0tKVXZJaXNaR0d5OU96TFJRUGl5Zm9rZTFQbkVSMFI0VmtpVVhoaGh0dlJocDZ4UlU2WnNFbzgxR1FxRkdzcVRpZWZOT2RuVExWVlNsZFRXTU5od0pnU3JKRXRjYlp0WHM3VmNVVm1tM3RMa1Z4RERVU1phNFhqUzZBblFHbFNpdTB2WXFSaHVQaUtKU3NzUXgydWdhMExqNXFvb3EvUkZ0dFBtSUdHb2xTeTZsRzEwRkllM3pWVlZwdXRIMkkyS29saXhaWnplNkRueHFIRk5YSTBjL28ydGdYU3d4U3RqN1hxTXQ0R0diMDF4ZEFWRmZvRHRyWXRTM3NpVEhaTFB6ajZtdjBneWo2MkJaVExUNFVJekpuNm92UXp1YTdra1d1MTF3S0xlUVM2bmZzcHJZeXkzcmVFUmpxeEROWUxheUxoOGgyNlNEWmxwdHdDMFNzZlRDZTkwOHd3SDJUbFBGVnN6TU03WVNpQWdzeVI1TDg5R28zYTFQekw4Z3B0bGVSdGNpZ0FIc2Y3SHl0NE44MUxobkN0bEpWYnJEbFJZREhZUER2RlZOOGFOZWFjWXM1S09uNVQzVTNxeFRpN1RxQlJQRjBuQkpMWm8zckZNOU9TNktsQlVYbk12Sk9ITEJKYVhvSFIxWnQ4Nk00dGUxelVLbU1qOTRUc0xEVk1JbE5tdldvRTcxS3ZIUm5MT3NzT0JjYnNiUmkxTHF5Q2VxZHNzbWFhbFZFMk00WjBuaHhkTlp4MDVjMWR4V3FaaElzZ0NKSHovQUt1UndHOSsyc0lTMjFCVEZCMzIveHZZZmVYTWRBSUNqTFpsVzFidWw3N1hOWTRLdnVYSzNyLzNyV0tpUGRQU1ByRHVuYmhMNnAvWFhOMkdrUHR1NDFQMUxKOWJFd2hWaGNkR2Q2RW4zQ1RjZmNXbTMzTkNkWDBVZ3VUczNyRGpnWkR5UmhyM1RMYjI3MU9ZSnBmVFFwbFdyTHNrb3hWS3dISU5Ed3FTMldheXZVVWRkWDZLTzlCUlozdnRWcHVSNXI3RjZPRFVuYjNRd0h1VDY1eVh4WFR5Mm5Td2JpNitocGUvRW5OZ2Q0RW14a0pVZ1N6Z0VlUU05NVFXQjZtcy9zOTNKS3Bka3ZOdFdZbHZGZGZrUDB5Ry91bWhVaEc0T2tpRlppUHVIOVg0RytOSzBZN3hBOSt1ejNYZkdmNDB1MmZRdmlwZ2ZKaUdFbFAzWVdhUTZOekx6UFViUDhDb3IvWmVlQkdOWUNaekNhYjhwOUpSemVjbGFmUjFpQllSejVXMFNSQnMxWXBONDF6anZ4WWdjWDVZaldSakZlam5QK3BLMHBDZHcxQVlBcUw0ZzhCcE5zblZubDR0L21vUVF4engyUy9zeks5TW14clJNNGhsR2hwT2VZWkRrUzZ3aUh4SVV0b3llTUhoWmNZM1BRbGVSa0ZVTUg4TUhkOXZ1MEtXY20yUzZxVW4xeUpKc0xHdmM0R05ma21hTUZPa0EwT1JRMENXaFpHMFRDMEovRElTUXk2emRBNm1zNXN0MUErc0Z2TVo2aUxlMytSMHJ3WGY4b21MbzFoY0dMUnNmY0VwU0ZVbjU2M3hITjRqYVA0UWVmQ1NFa08zdHhFcXhKTElrQzRzWnFmMTluc2FNRk4wQUdtVUdYeEpJdG9iWWtHb3dDNnBTN1h1VWxYNGQ4d1UwWjMzMGQza1NER0NWbWMzL3Y3bUdudTdYZ0NUY3Eyd2Zscy9hT2t5ajRkYlRVa3NwZnBCZGlqV1JKOWwzR2FtWCtWSTBaS1M0Q1ZMMjhTN3hKZHY2dU5TUGdSRHlUMk9hZmF0WXllK2lwWGF6bjVIRnU1NHJsdVU2dVBnakhrL1QwNDN6cDdETmxGRkZjb3cxck1nOVZTR2ptQS8wWEtwaXVtVXgrWXpyL2k0eGF4QXFrZnVrdlhqWjNkZXpCMzZGdEYzYlFuaXhKbXRPNC9KQ2RrbXJuSFM4UTdabHZ6RXljcjE1Ri9oL3U2bjR3Ly83OUVmWmRnaHAvbmNEK29QZm1pSEhSWDFtdHBsbUo5VWpyNVg5TnlQMUNsK0tlb3dVbys0UWZBRUh0N0tkNWE1eFBaa21NSS9adS85QjVBM0UxNkNUNGszUW0xWHF0OEVGMmVsZjF2NTNBM2ZMckNMWlJWdHh4TDBsdDVoUHpMcmRTUkhhT0FiK1Jxd09JOFVEQndXWGdpVGJVR0t2SklBZGdzK1RPWEI4djVwWFpHZkZtemtaL0MzSUdDeVo1RXVReGh4OFlQSUZ4WjdKMGpwZWdjaWNuVFEzOGlUTDZoL045YVZnU1hhNThGS2daT08yeS80WUNKbkRzNDRUL2x1NGNUVlY5WTdlWmhUckRDNTJQRDJSLzh0Z3Z2d3FPbThXV05OWHloZ1pqNHJyVmIwQWM2SE5JSmQvNjBrcUl3V2xaUWlVN0F6NUh3TWhydUhCNXRWa2RVcE9xL3RpN01ScTFvSVh0MzlGVGJQVmQ3Kzk5TUVDUDd2NVhtc042U0diQXNqUUt4NlYyYnBmUTFpYi9FTUh1eFFYemZWUEtMQUd1UDhHeis1MFlIVks5cWlMakx2M0FPTkcwR0F2MTVPYVpvSHZ0OGVWZkp5ZEJ2RXVmRUR2a29XZ3lUUWx1UlJnTXNuR3Y4YTZjNUIxUXhwUk05azFkUlk3bVBmcUIyOUpadzVKcURTUDJYdTdJZkFmc1RabENBUEE3K2JIanFFWHN2ZTlDWGVOZS9hckxQcGRtQlQ4NXczajZNa0FBTXF1c3Y4MUo3UFhJRmtOT2N0aXZtRjk3WlQ2Qi9aWmpnRUZ2Mk5BOXdJSklUc250b2dDVzRPN2xqTyttb3ZxQlJyNE9hc1lXVU5MRkZvd2x1azQ2Z2NrR2twTjR2OXZ1WTE2LzVKM05wY2JjSmlhb0R4b1lNUzJtVkhGc3JuOWF3REVkWjZTdzBnZ05taGlMYVJMdHNxUGpLU0ViUE9uVWlMWjZKUDBCQ1VUZmEzWUlNWVEyRHVCRnE1Z1BXbWcycmZFRXNySWdEVHZVVk84NWJzL2pYci9UbjhCS2V1cEtZS1dmQTVrR0xMSHQxWTBnZkdQNnpEaDVuMWxTSlZzOGlTUkdGZXYrOU1wa1N4anVMSjhRTUR6ZTlDRGFWd0k3RlljWlQxSmJPMlhKQjVuRlB4UlFKb04xQlRkZmZlcHF4Z0xBaGNTMUtPdVVaZ2RrSUpiUTdkamQrRDg5YWYwTlA5Vit4TE1Ba3V5SjFyNWFOdGorSlFseFl4MGhCRGlDcEJFVFpGMFBIeVMzVWkvSCt3NU14YjJCYmgyakZVcGhMZ1U5VmdDcWNjSSs3bkRueVNldW1ZeXgrK2s3NkhkendycWxsSkgwN1lHSk9oQUgzUW9EbktqNDQ1UUUxMjBUT1QxRUdpd0taenNDbmp2TmFSbjgwcTJGZjEyWG5EY3pDVDZBSnQvZFFOVVlTME1yMUMvYkpReXJFeElrQk4vTFRYQkovNGlxRTVtUmRCT25tdk9VdGdia09BRHVobEI3aEhBL2ZSVXZDRkJ5NktGWkFNWGppcVE3S3YwMi96aENmclVWb2wvM0swQjYwRmw2b05zTVZSQWJ2T2xlSXA2UDJBbTRDdzF3ZDZnQnBLajRiOXR6NktXVWNGYlA1eElYeVF2V0N3WkRrdzJ5TVVnUys0T2F0ZUZZN3UzYmR0MTNQTW5JN0R5VDd5Ly82S21pcnZSOTJzS05RRUFPQ3ZrV0VkbFlUSDl1bjhzOWpyYTdZdnIvYi9UamVpdzc0dXVmbEZTcGVaUDNJVyt0bjFyZHZEZnhSdXB5VzZOa05VeEdyU3k5d2VXRjZxVlBUZjMvbzZKUWYrS2RlZ0RXS2Y0TDdnSlBkMU1YNEp1ckdkZTF1QTkvVUl2MnJmbXhaWkp1eDI0Y09ZUUxRRWhoTGlPZm5DcnRJQTdMOU1MZUoyZmpyRnVKdFJHQjR1Z1hySnJnN1FsTHRtRGR3dTMwREdXWHkzbHA0dWpmOTN0OFNXNGp2VlVMWTVQSEU0dk90L2I0NjlQL1ljYUZsQUNvN1B2NXVyYTEvdFZDMm5FU25ybVlmeDBqSEZ1eHZZM1RiSEN4cDByRDB2ZXcreDY1elhLMFl6VWIxU0FFL3dMcFplb1RWRjZjcUhuTithY3NCYisxYkw4NnJUTDFkcDQvbVc2MFo1ZUhMRHdFRTcwRVNrKy9vWWJ3SEZ3L2JwMVowUVN4WGFoWHhlOEtrWWgxRDNHR21NQnlib21IcFdjOUpFdmFaY1puOE1Gd1poTUVUVmRmUFBkM3ZKWkR4YmRSQ1dScXd2cFVSeDZlaVI3TGUzbWlrQ1RkNFhhMFdMdjBHR1NjOSt5eGR0WWJVQlQrdTRoMXhYK3EyS2MyUnBpamIxVlVPc1l2TVFyVDhReGVJdHFBRnlrcDNhVThXRk0ydnFtN2p1ekhseW1oV1p2b1pmdDdZWlR0L0RjRjFoQWEvYWJDU2Izdnozb1h4Z2pHUm5LK1crS3NhTHRZbVQwdjFRZTcvRVcvK1d5SmZzUFBSS0VqTGtIT2k5NFMwcG5wWENFOWhKREUwT2YvVHZoZmdFeHRBbmxzcHBCSmZEM3ZyRnhIWGlLWnZML1NTNkFBYjJWMWhTekQzSTUvejFGK3JLK3FmU3ZxMFpxamZBdFRXRU9ETmkwaUVCUi9pdjFja1AzTnRnV05JbHR1QkQwNXllVUpIUzROak5Pdml2Y1g2dmRxd29mSnBmc3hlSHZTbGRzTG1QSFlEMzZaZW40bXJLaVVrWUtycGJhWndBQXpLZlcxZDRWQUFDNjB1NHRDUDV6N2pFWlQ2dnkvTkZYK01mbWFmZXF3b2U1SmJ1MHl5SVpxWDlqak9lcmZvMitHWVRTSzZ3a3FqOXJBSUR0eDZtWGV3QUFYYkl1M3VzcG55Z25QaHdrdjdhSE44YWczYXNLSDJhVzdJa3hkMlNIVHVXSFBubWx3V3YwdFVYT1U2d2tqZFUrQXdEQVNZK3B5SmJzTHY3N1dmMkt2Q2UyK1B2bG9BNlRkcThxZkpoWHNrY2ZhZmVUckZDb2p1Mk1HNm9QV3ZDUEJHYXlrbWdUMy9nSGFvVTd4d0JBUEMyTTBBTEJsZWt5ejJDd1QvczZjTEJEdzFjVk5rd3EyZUpmQnJhZHhYSWNHWnc3eDdpaDRibHd6QkZpZXN4YnVSemNTN3RhTFIwQTBpbTdBWW5RZVNmUC9wOHMzd0JnM0p5QWR0WUtSK2laVUxLdTQ3TkhwNDM2azcwZmkwRkdPSXdCQUFCL3I0aTV4YXVqSmdPU1pENzFjamVnVDRjY3BXeHlKTlB2WUhvdmRNWk84Zit1T29DR3VsMmJrakRQN0pmTFdWYWNuNWQxZFArZXMwcENvd1Brc1c3SUZqOGZmN2VPMmdvQ0FGUkxwNGRsa01uUGI5RStrSzVmQTlDMlBmeE9MV05aKzdmR3kvcFlYL3ByaS9kWDFRdlMxSzlvQzRtQmtqM2FQZWhQNG5KVXlQeE9DNFlWelFzWXEvcWs0eS9neUJWR0I0WHJvNGxrTXpmUlFuNTJCWG9yUzVjczVEL3kyYlNCTWxyOTZBK3Y5ellTR3I2cXNHR2daRjFhck5nTGdMNUFBQUJVaC9RLzcvdXRaRGRyNVVuL3o5bjVhekk2Wjg2ZGd1K1QrVFRKdG9rdmlXa2p2SnpMNm0vQzNpRWRueG90dmZOKzNTM2V3UllOWDFYWU1JOWpvSnB5MWcxV3QreGhxUTFqZ011eGhpWFptMU9ZWTdZdytWWDY5V1BDbmYrL3pZZ1Rwa3RLMzl1SU12ZTFXT1JMYWU4REw5dzlyclBVbnNvRXIyUVpyK29ZODlnVlB2dWxKalExOG1KeWhZYTF4bUFxSzBON1JnWjY1RXRsbGVIdHJBNkd0ZUg3ZTByYUpiU0U5OE1JeXRWYlE5akt0WjZ5VFZxVTJDdmU0WWlQNmZkVkJoYlJGaE9PR0doT0pxTWJ5NHFsSk1iMnM2dzdqeko3MncyNk1XN1FUcGVpeVJnNlFnZmh4WHgyM0hBMzVOQ2IzWnZjUHk4M2RDOCsyYnZPbFRIcW91Uk5oWTNLSU5uQ0hQcDFKV3RBeXBldzduUVZSaEQwTUk3UkZTS3JLQmVYMFB5TDlqVEovc2xZc3hwRTdqZGpHN2QrNkt1RElYcnkzczdkWWZydGFtWTZkNll5U0JiMjBDOHJXbzlNSHprRkFPNHRoakxqV2J0TFR0QW1KcTc4UWJuWXhrYVpxbUNNRndod0hwa3p2bDNhMEk4T2lJd2RldnVIZStscG9zMFVicXRTU0piUnMrNnBaT0I4SFRNRVl6ZUdOQ2V6RnVRdHBPcUQ5ajlScTdGdzQyc3hhMGtGRFhKdTRkUHRXNytjeWJydlhZWjRodkdGWktZamhDdUZaQmxPWHlzbE1hUXErRkdTL2J4TjNiRFRnclZTaFJGMmJRV2wxMjRmSmx5OHZySlFtRTRVY3ZTTjFpOHduQW52YUxPTGNYanJZSm5QQ2ljUk5NakZaZ3Q5QW9CNzhGL0JGMnI4U1AxdXJ4Z1o2Ri9PL2pjcjltL0M3MzJGM1plcVA3T1M3OTFGdlZ6Nit3VGh4ZmVGbHdSK3dhM1VJRXMvQko2UFhQcmUrYStwRC9XdExWaHhEL1YrNzNTZUV6TjJQRFhkeWplb2w2Mkc0WU5jQUQvUmMxemlMY3VuaDJNSmpMb0l3QndJSW9TUUxNRzBhaTFHTkRCQ0NPc1U4ejdzOGdNb1QrWG5tME5OTnpRNFVSUTFHSUkvV0VMdFV2cmp2Z2t1eHNZNHVGVjRIS1FsTVlGa2FhT2FoQkR5WTVCZmxNSUluUHA4Y0dFTlJFN0FMWDRtZU4vaUxTZVpTVSt6RnZwRjAxWEZZN1VnMzdQVWRDdDREanM5MXNFdnZ2dU0wR0NPZmtHbDNFbFBWYWJKNWd6ak1ZRms0ODR6OHJ3VzhJSGF2bVo4RHZ5dXozUkdZWVFRUW81TThqVi9jZjMvRkRtNzRBVmdRUThqeTBNWVI1OXhpRGp2Q0QzNitTVC84ZDFubmNKMFBqQVFUQ1BHMlhwU0J6SE1qZ2treXp5YWlYemoyenBTalJWQlhIQ09YQlZXR0dzM1pkcysvL2NqRTU1NWZ5bGpMN3FiTFBacEdGMGtIR0hrYkNMSUZrdHYvWXVDMnNlTzlOaU4vaURrQ2F5anBnckcraHo5bnF3em4yNFgrUWlzaEJrazI0RGhvaEdTLzhuQUp0VnF0Ujc2TWFzaGRnbm5kVWZJUHhaTGdNajVvYllEb2JQdnBPVDdqWjYwL0YzLzVGVnpSdEVCdTNSZVlqNXo5elBYMXE1V3YvdkVwYXlRcGZzaVpmekpESklGV1NlN0JzRjNCZ0dBbTZlNE5DOS9pbjI2cjRUT3o0OUhBc0QyMk1tVitSTjZOYTNic01zOTN6RENUcDhOOE1DcnNmNTNRek5hMmdkb2Zrd2gyYnFYRlg0TUZiUUZBdFdPS1N6Tnl3VjZURXdQTFZuTm1BOFhiZVl1V3R4aEVTRm9ySmx4dEhOb051dlR5RVpLVXg2SzAxTVZacHhObXpvckdNMWNuQ3NKNTNqUnJjTkhhVi83UVJ6N2gzS3hnako2S3drU05GZzdjNSt5VWh4UEtOdE5JcGZLSWxuNGVKT2liQ2RmcEY3ZWZaK3EzVG5UUkk0VkIrWVdzQUFXVWxkbnpWSzQvVzFqMExzcG04QmNlU3pLKzh3VjU1YkRGSTRCUUZPNTU0UVRRa2dwODJUV2lVck8zdlF3TzFSRGtjWTQ2OE1IL1poRnVGMVJ2OURCM3dueEx5V2xiS1lIUkxNa0pwRXM5SmUyM0RrUWwwaUkzMGtoSFU0VzM0V2VKZjlidklRODFzNHVrWms1Tm9LendtM3M4OWVZNUtvK2s4ZEVtRVd5TUVGMncvaW0yRnF2c1NWeWkzUHptWVIxSFErS0Y4SGNaeFlyR3NpYnpyNWtRVEVKc292Smo1Q1E4MjVNSTFsNFhKNW1YZStJcjA2ODRiU3M0dHlVUHlkbHlXTU5zVVBRQ09uSHpGaHRsMXlEOHBwUmlxbXlUbDRoRjdwVENyRXU1cEdzdklheDRwbFE0a3BqbkN3Z1FpNXo3MEl3akdrQk4vbVVMWTFlcXRQUC9HU1NUWTl6azdSQVRpRW50QW1XWXhwTUpGbm9TVC9XaXNZWkNiT1BVVTlla2ZQSkV1Zi9wSVlXSENWV2pPaVJVdkZmeWVtRGJXZnRKckpQays3Ni82RkRpRTVkTVpOa29jWjMwajVRMTY5MUpSblRhTDRNWjJPM3hDWVdBSkxFeGpkR2llZTk2NXhVZ3lvK0VEbkM4MGFKOHlXWEowWGNTS21wSkF0d201VG83UHNIU3Q1azAzMnhSTkh1djF0TzNDN1dJaDFDU0hHb2tKcTFab1lhSkNPRUVPSmFMKzZCSnI1V0dMb1F4OXcwR2JXeUNDYVRMTmp2MlJ2aW85eDVsNnpOR3UwL3Z4VHlreTFmMUY5ZVc5U1BYWmI0UEFRQUFEVDdMS1RhbkgvZkh2TGZzdTc3ckhPbVBaVE1qVEF2MW8zWkpBdkE5Wm5ML2lqT2ZuNmQ3RzJNU1hjdkVKTkk2YXJKMHR5TUFHSlppd0NEamk1blUrM1J0U0xPcU92SW02MGxtVkZsNGdibStMTnp4N08xNVZaTEExUkhad3hOZFVaVWxxS1Z5c3FMNlUrL2ZvU3hDWjlLWEovYmJtalBuNjhoaFR2WHI5aXFMSGhmUXMrKzEzV3VLbmlkNU1yZUxldlhLNGsrOXZGa3hvMlMraExQY3F4OWM5OGVMWVduT3ptenRtMVllVVI2Vk0yMDIyL3VWWi8vRmVISzJiejZyMHpKWldpSkRwSTFMUW10V2pWTlM2MmFHTU01U3dyenorYWNPSnloTHE2bnJXSExwZzNxMWtoSmlPR2M1Y1dYTDU3SnpUaVdyWFN0eUhQdk1XNHNITXE0UVNNaFBiMVIvVnJWa3VMc3hGRmFkT25DcWV6anh4VEVpcXZUTnIxUjNab3A4WFpTY2ZYU2hkT1p4dzdwRUM4T3NSYlJ6RE9VeDRUT2pDRDZNNUdsMkFMVjV4a2dTQmhvejF5U1RqMmxGMEVNNWpybWVJSExUTEdHRUFRQUFMaU9YN0RIcC9aWDVnNHpBRlNTQUVmV3dENi9Jdjl5ZVhUVlJwM0ZEb0tkcWNPWkx3Z2lpZWpRYzJpRVhCUXVicTFzUk55S2hnaG5sdHg0aHdnU05xUzBzb1ZHekpDYURHeGxMY1hIektNYUVFUjNKTFN5WnlsSEtWVTZzSlcxRWxNa0xvaEJFRDBJM2NxdTB1UnNad1RSaUpDU3ZkallhQk5OQVRvR2xzRnhYNmJSSmlCSUlDRmFXUmRyeVRlQ0dJUzRaSjNQR0cwZmd2QVFsV3lSU05SdkJERUdNY2x1YTJlMGRRZ2lnQzNabkVlaVEyZEhFTDFoU05hNThRR1JrQzZWRUZ3dmEyWmN1VmJhTTB3QUFBQTJTVVJCVk50WExjM0VGYkpCVlBvMTd1YUI2MVd6ZXBVcUtVbEpDVEhnTENrcU9KK1hjZXlDUHNjUElBaUNJQWlDSUFpaUEvOFA2eEM2eFQwNGpOZ0FBQUFBU1VWT1JLNUNZSUk9XCJcclxuICAgICAgICAgIHByZXNlcnZlQXNwZWN0UmF0aW89XCJub25lXCJcclxuICAgICAgICAgIFxyXG4gICAgICAgICAgaGVpZ2h0PXsxfVxyXG4gICAgICAgICAgd2lkdGg9ezF9XHJcbiAgICAgICAgLz5cclxuICAgICAgPC9tYXNrPlxyXG4gICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwUGF0aDc2LTEtMFwiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxyXG4gICAgICAgIDxwYXRoXHJcbiAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICB9fVxyXG4gICAgICAgICAgaWQ9XCJwYXRoNzQtNS0yXCJcclxuICAgICAgICAgIGQ9XCJNIC02LjEwMzVlLTUsMTQxNy4zMiBIIDE0MTcuMzIgViAwIEggLTkuMTU1M2UtNVwiXHJcbiAgICAgICAgLz5cclxuICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGg4Ni05LTFcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cclxuICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAgIGlkPVwicGF0aDg0LTQtMFwiXHJcbiAgICAgICAgICBkPVwiTSAtNi4xMDM1ZS01LDE0MTcuMzIgSCAxNDE3LjMyIFYgMCBIIC05LjE1NTNlLTVcIlxyXG4gICAgICAgIC8+XHJcbiAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoOTYtOS01XCIgY2xpcFBhdGhVbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XHJcbiAgICAgICAgPHBhdGhcclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgIH19XHJcbiAgICAgICAgICBpZD1cInBhdGg5NC0wLTFcIlxyXG4gICAgICAgICAgZD1cIk0gLTYuMTAzNWUtNSwxNDE3LjMyIEggMTQxNy4zMiBWIDAgSCAtOS4xNTUzZS01XCJcclxuICAgICAgICAvPlxyXG4gICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwUGF0aDEwNi05LTFcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cclxuICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAgIGlkPVwicGF0aDEwNC0xLTBcIlxyXG4gICAgICAgICAgZD1cIk0gLTYuMTAzNWUtNSwxNDE3LjMyIEggMTQxNy4zMiBWIDAgSCAtOS4xNTUzZS01XCJcclxuICAgICAgICAvPlxyXG4gICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwUGF0aDExNi03LThcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cclxuICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAgIGlkPVwicGF0aDExNC03LTVcIlxyXG4gICAgICAgICAgZD1cIk0gLTYuMTAzNWUtNSwxNDE3LjMyIEggMTQxNy4zMiBWIDAgSCAtOS4xNTUzZS01XCJcclxuICAgICAgICAvPlxyXG4gICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwUGF0aDEyNi0xLTBcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cclxuICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAgIGlkPVwicGF0aDEyNC0xLTZcIlxyXG4gICAgICAgICAgZD1cIk0gLTYuMTAzNWUtNSwxNDE3LjMyIEggMTQxNy4zMiBWIDAgSCAtOS4xNTUzZS01XCJcclxuICAgICAgICAvPlxyXG4gICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwUGF0aDEzNi01LTRcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cclxuICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAgIGlkPVwicGF0aDEzNC05Ny02XCJcclxuICAgICAgICAgIGQ9XCJNIC0xLjIyMDdlLTQsMTQxNy4zMiBIIDE0MTcuMzIgViAxLjIyMDdlLTQgTCAtNi4xMDM1ZS01LDIuNDQxNGUtNFwiXHJcbiAgICAgICAgLz5cclxuICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGgxNDYtNy0yXCIgY2xpcFBhdGhVbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XHJcbiAgICAgICAgPHBhdGhcclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgIH19XHJcbiAgICAgICAgICBpZD1cInBhdGgxNDQtNjctNVwiXHJcbiAgICAgICAgICBkPVwiTSAtMS4yMjA3ZS00LDE0MTcuMzIgSCAxNDE3LjMyIFYgMS4yMjA3ZS00IEwgLTYuMTAzNWUtNSwyLjQ0MTRlLTRcIlxyXG4gICAgICAgIC8+XHJcbiAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoMTU2LTMtOFwiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxyXG4gICAgICAgIDxwYXRoXHJcbiAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICB9fVxyXG4gICAgICAgICAgaWQ9XCJwYXRoMTU0LTY1LTZcIlxyXG4gICAgICAgICAgZD1cIk0gLTEuMjIwN2UtNCwxNDE3LjMyIEggMTQxNy4zMiBWIDEuMjIwN2UtNCBMIC02LjEwMzVlLTUsMi40NDE0ZS00XCJcclxuICAgICAgICAvPlxyXG4gICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwUGF0aDE2Ni02LTJcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cclxuICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAgIGlkPVwicGF0aDE2NC0zLThcIlxyXG4gICAgICAgICAgZD1cIk0gLTEuMjIwN2UtNCwxNDE3LjMyIEggMTQxNy4zMiBWIDEuMjIwN2UtNCBMIC02LjEwMzVlLTUsMi40NDE0ZS00XCJcclxuICAgICAgICAvPlxyXG4gICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwUGF0aDE3Ni05LTRcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cclxuICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAgIGlkPVwicGF0aDE3NC00LTdcIlxyXG4gICAgICAgICAgZD1cIk0gLTEuMjIwN2UtNCwxNDE3LjMyIEggMTQxNy4zMiBWIDEuMjIwN2UtNCBMIC02LjEwMzVlLTUsMi40NDE0ZS00XCJcclxuICAgICAgICAvPlxyXG4gICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwUGF0aDE4Ni04LTJcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cclxuICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAgIGlkPVwicGF0aDE4NC0xLTRcIlxyXG4gICAgICAgICAgZD1cIk0gLTEuMjIwN2UtNCwxNDE3LjMyIEggMTQxNy4zMiBWIDEuMjIwN2UtNCBMIC02LjEwMzVlLTUsMi40NDE0ZS00XCJcclxuICAgICAgICAvPlxyXG4gICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwUGF0aDE5Ni0yOS0wXCIgY2xpcFBhdGhVbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XHJcbiAgICAgICAgPHBhdGhcclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgIH19XHJcbiAgICAgICAgICBpZD1cInBhdGgxOTQtMy02XCJcclxuICAgICAgICAgIGQ9XCJNIC0xLjIyMDdlLTQsMTQxNy4zMiBIIDE0MTcuMzIgViAxLjIyMDdlLTQgTCAtNi4xMDM1ZS01LDIuNDQxNGUtNFwiXHJcbiAgICAgICAgLz5cclxuICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGgyMDYtOS0yXCIgY2xpcFBhdGhVbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XHJcbiAgICAgICAgPHBhdGhcclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgIH19XHJcbiAgICAgICAgICBpZD1cInBhdGgyMDQtMC05XCJcclxuICAgICAgICAgIGQ9XCJNIC0xLjIyMDdlLTQsMTQxNy4zMiBIIDE0MTcuMzIgViAxLjIyMDdlLTQgTCAtNi4xMDM1ZS01LDIuNDQxNGUtNFwiXHJcbiAgICAgICAgLz5cclxuICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGgyMTYtOC05XCIgY2xpcFBhdGhVbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XHJcbiAgICAgICAgPHBhdGhcclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgIH19XHJcbiAgICAgICAgICBpZD1cInBhdGgyMTQtOC0wXCJcclxuICAgICAgICAgIGQ9XCJNIC0xLjIyMDdlLTQsMTQxNy4zMiBIIDE0MTcuMzIgViAxLjIyMDdlLTQgTCAtNi4xMDM1ZS01LDIuNDQxNGUtNFwiXHJcbiAgICAgICAgLz5cclxuICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGgyMjYtNS04XCIgY2xpcFBhdGhVbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XHJcbiAgICAgICAgPHBhdGhcclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgIH19XHJcbiAgICAgICAgICBpZD1cInBhdGgyMjQtMC0xXCJcclxuICAgICAgICAgIGQ9XCJNIC0xLjIyMDdlLTQsMTQxNy4zMiBIIDE0MTcuMzIgViAxLjIyMDdlLTQgTCAtNi4xMDM1ZS01LDIuNDQxNGUtNFwiXHJcbiAgICAgICAgLz5cclxuICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGg3NTAtNS0zXCIgY2xpcFBhdGhVbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XHJcbiAgICAgICAgPHBhdGhcclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgIH19XHJcbiAgICAgICAgICBpZD1cInBhdGg3NDgtNjEtMVwiXHJcbiAgICAgICAgICBkPVwiTSA1OTIuNTYsNjA4LjA0IEggODQxLjIgViA4MjIuNiBIIDU5Mi41NiBaXCJcclxuICAgICAgICAvPlxyXG4gICAgICA8L2NsaXBQYXRoPlxyXG4gICAgPC9kZWZzPlxyXG4gICAgPGcgdHJhbnNmb3JtPVwibWF0cml4KDEuMzMzMzMzMywwLDAsLTEuMzMzMzMzMywtNTQyLjIzOTk5LDEzMzUuMDQpXCIgaWQ9XCJnMTBcIj5cclxuICAgICAgPHBhdGhcclxuICAgICAgICBpZD1cInBhdGgzNFwiXHJcbiAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgIGRpc3BsYXk6IFwiaW5saW5lXCIsXHJcbiAgICAgICAgICBmaWxsOiBcInZhcigtLW91cmJlaWdlKVwiLFxyXG4gICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXHJcbiAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxyXG4gICAgICAgIH19XHJcbiAgICAgICAgZD1cIm0gNDA2LjY4LDcwOC4zIGMgMCwxNjEuMjggMTMxLjk1LDI5Mi4wMiAyOTQuNzIsMjkyLjAyIDE2Mi43NywwIDI5NC43MiwtMTMwLjc0IDI5NC43MiwtMjkyLjAyIDAsLTE2MS4yOCAtMTMxLjk1LC0yOTIuMDIgLTI5NC43MiwtMjkyLjAyIC0xNjIuNzcsMCAtMjk0LjcyLDEzMC43NCAtMjk0LjcyLDI5Mi4wMiB6XCJcclxuICAgICAgLz5cclxuICAgICAgPGdcclxuICAgICAgICBpZD1cImFudGljaXBhdGUtYmdcIlxyXG4gICAgICAgIGNsYXNzTmFtZT1cImhwMyBhbnRpY2lwYXRlLXZlcnNpb25cIlxyXG4gICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICBkaXNwbGF5OiBcImlubGluZVwiLFxyXG4gICAgICAgIH19XHJcbiAgICAgID5cclxuICAgICAgICA8ZyBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGg0MilcIiBpZD1cImczOFwiPlxyXG4gICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgaWQ9XCJwYXRoNDRcIlxyXG4gICAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICAgIGZpbGw6IFwiI2I4NWJkMVwiLFxyXG4gICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxyXG4gICAgICAgICAgICB9fVxyXG4gICAgICAgICAgICBkPVwibSAxMjg1Ljk2LDg5MC4wNCBjIDMyLjE5LDAgNTguMjgsLTI2LjA5IDU4LjI4LC01OC4yOCBWIDU5OC42NCBjIDAsLTMyLjE5IC0yNi4wOSwtNTguMjggLTU4LjI4LC01OC4yOCBIIDk0MS42IGMgLTMyLjE5LDAgLTU4LjI4LDI2LjA5IC01OC4yOCw1OC4yOCB2IDIzMy4xMiBjIDAsMzIuMTkgMjYuMDksNTguMjggNTguMjgsNTguMjggelwiXHJcbiAgICAgICAgICAvPlxyXG4gICAgICAgIDwvZz5cclxuICAgICAgPC9nPlxyXG4gICAgICA8Z1xyXG4gICAgICAgIGlkPVwiYWN0LWJnXCJcclxuICAgICAgICBjbGFzc05hbWU9XCJocDMgYWN0LXZlcnNpb25cIlxyXG4gICAgICAgIHRyYW5zZm9ybT1cInRyYW5zbGF0ZSgyLjYyMDUyNDQsMS4yMjY1NDQ5KVwiXHJcbiAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgIGRpc3BsYXk6IFwiaW5saW5lXCIsXHJcbiAgICAgICAgICBmaWxsOiBcIiM4NTBlNzhcIixcclxuICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxyXG4gICAgICAgIH19XHJcbiAgICAgID5cclxuICAgICAgICA8Z1xyXG4gICAgICAgICAgY2xpcFBhdGg9XCJ1cmwoI2NsaXBQYXRoNDItMylcIlxyXG4gICAgICAgICAgaWQ9XCJnMzgtM1wiXHJcbiAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICBmaWxsOiBcIiM4NTBlNzhcIixcclxuICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXHJcbiAgICAgICAgICB9fVxyXG4gICAgICAgID5cclxuICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgIGlkPVwicGF0aDQ0LTVcIlxyXG4gICAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICAgIGZpbGw6IFwiIzg1MGU3OFwiLFxyXG4gICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxyXG4gICAgICAgICAgICB9fVxyXG4gICAgICAgICAgICBkPVwibSAxMjg1Ljk2LDg5MC4wNCBjIDMyLjE5LDAgNTguMjgsLTI2LjA5IDU4LjI4LC01OC4yOCBWIDU5OC42NCBjIDAsLTMyLjE5IC0yNi4wOSwtNTguMjggLTU4LjI4LC01OC4yOCBIIDk0MS42IGMgLTMyLjE5LDAgLTU4LjI4LDI2LjA5IC01OC4yOCw1OC4yOCB2IDIzMy4xMiBjIDAsMzIuMTkgMjYuMDksNTguMjggNTguMjgsNTguMjggelwiXHJcbiAgICAgICAgICAvPlxyXG4gICAgICAgIDwvZz5cclxuICAgICAgPC9nPlxyXG4gICAgICA8Z1xyXG4gICAgICAgIGlkPVwiZW5nYWdlLWJnXCJcclxuICAgICAgICBjbGFzc05hbWU9XCJocDMgZW5nYWdlLXZlcnNpb25cIlxyXG4gICAgICAgIHRyYW5zZm9ybT1cInRyYW5zbGF0ZSgzLjcyMDI3OTIsMC45NDI0OTI2NClcIlxyXG4gICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICBkaXNwbGF5OiBcImlubGluZVwiLFxyXG4gICAgICAgICAgZmlsbDogXCIjY2U5ZmM5XCIsXHJcbiAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcclxuICAgICAgICB9fVxyXG4gICAgICA+XHJcbiAgICAgICAgPGdcclxuICAgICAgICAgIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDQyLTMtNilcIlxyXG4gICAgICAgICAgaWQ9XCJnMzgtMy0yXCJcclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIGZpbGw6IFwiI2NlOWZjOVwiLFxyXG4gICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcclxuICAgICAgICAgIH19XHJcbiAgICAgICAgPlxyXG4gICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgaWQ9XCJwYXRoNDQtNS03XCJcclxuICAgICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgICBmaWxsOiBcIiNjZTlmYzlcIixcclxuICAgICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcclxuICAgICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcclxuICAgICAgICAgICAgfX1cclxuICAgICAgICAgICAgZD1cIm0gMTI4NS45Niw4OTAuMDQgYyAzMi4xOSwwIDU4LjI4LC0yNi4wOSA1OC4yOCwtNTguMjggViA1OTguNjQgYyAwLC0zMi4xOSAtMjYuMDksLTU4LjI4IC01OC4yOCwtNTguMjggSCA5NDEuNiBjIC0zMi4xOSwwIC01OC4yOCwyNi4wOSAtNTguMjgsNTguMjggdiAyMzMuMTIgYyAwLDMyLjE5IDI2LjA5LDU4LjI4IDU4LjI4LDU4LjI4IHpcIlxyXG4gICAgICAgICAgLz5cclxuICAgICAgICA8L2c+XHJcbiAgICAgIDwvZz5cclxuICAgICAgPGdcclxuICAgICAgICBpZD1cInJlZmxlY3QtYmdcIlxyXG4gICAgICAgIGNsYXNzTmFtZT1cImhwMyByZWZsZWN0LXZlcnNpb25cIlxyXG4gICAgICAgIHRyYW5zZm9ybT1cInRyYW5zbGF0ZSgtMC4wMjU3NTUxNSwzLjIzNjg1MTUpXCJcclxuICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgZGlzcGxheTogXCJpbmxpbmVcIixcclxuICAgICAgICAgIGZpbGw6IFwiI2EwYTdmM1wiLFxyXG4gICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXHJcbiAgICAgICAgfX1cclxuICAgICAgPlxyXG4gICAgICAgIDxnXHJcbiAgICAgICAgICBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGg0Mi0zLTYtMClcIlxyXG4gICAgICAgICAgaWQ9XCJnMzgtMy0yLTBcIlxyXG4gICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgZmlsbDogXCIjYTBhN2YzXCIsXHJcbiAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICA+XHJcbiAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICBpZD1cInBhdGg0NC01LTctNlwiXHJcbiAgICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgICAgZmlsbDogXCIjYTBhN2YzXCIsXHJcbiAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXHJcbiAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXHJcbiAgICAgICAgICAgIH19XHJcbiAgICAgICAgICAgIGQ9XCJtIDEyODUuOTYsODkwLjA0IGMgMzIuMTksMCA1OC4yOCwtMjYuMDkgNTguMjgsLTU4LjI4IFYgNTk4LjY0IGMgMCwtMzIuMTkgLTI2LjA5LC01OC4yOCAtNTguMjgsLTU4LjI4IEggOTQxLjYgYyAtMzIuMTksMCAtNTguMjgsMjYuMDkgLTU4LjI4LDU4LjI4IHYgMjMzLjEyIGMgMCwzMi4xOSAyNi4wOSw1OC4yOCA1OC4yOCw1OC4yOCB6XCJcclxuICAgICAgICAgIC8+XHJcbiAgICAgICAgPC9nPlxyXG4gICAgICA8L2c+XHJcbiAgICAgIDxwYXRoXHJcbiAgICAgICAgaWQ9XCJwYXRoNDZcIlxyXG4gICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICBmaWxsOiBcInZhcigtLW91cmJlaWdlKVwiLFxyXG4gICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXHJcbiAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxyXG4gICAgICAgIH19XHJcbiAgICAgICAgZD1cIm0gNDMyLDcwNi4zMiBjIDAsMTYwLjE4IDEyNi4yOCwyOTAuMDQgMjgyLjA2LDI5MC4wNCAxNTUuNzgsMCAyODIuMDYsLTEyOS44NiAyODIuMDYsLTI5MC4wNCBDIDk5Ni4xMiw1NDYuMTQgODY5Ljg0LDQxNi4yOCA3MTQuMDYsNDE2LjI4IDU1OC4yOCw0MTYuMjggNDMyLDU0Ni4xNCA0MzIsNzA2LjMyIFpcIlxyXG4gICAgICAvPlxyXG4gICAgICA8cGF0aFxyXG4gICAgICAgIGlkPVwicGF0aDUwXCJcclxuICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgZGlzcGxheTogXCJpbmxpbmVcIixcclxuICAgICAgICAgIGZpbGw6IFwidmFyKC0tb3VyYmVpZ2UpXCIsXHJcbiAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcclxuICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXHJcbiAgICAgICAgfX1cclxuICAgICAgICBkPVwibSA0NTcuMjYsNzY1LjYgYyAwLDEyOS42IDExMi42MSwyMzQuNjYgMjUxLjUyLDIzNC42NiBDIDg0Ny42OSwxMDAwLjI2IDk2MC4zLDg5NS4yIDk2MC4zLDc2NS42IDk2MC4zLDYzNiA4NDcuNjksNTMwLjk0IDcwOC43OCw1MzAuOTQgNTY5Ljg3LDUzMC45NCA0NTcuMjYsNjM2IDQ1Ny4yNiw3NjUuNiBaXCJcclxuICAgICAgLz5cclxuICAgICAgPHBhdGhcclxuICAgICAgICBpZD1cInBhdGg1MlwiXHJcbiAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgIGRpc3BsYXk6IFwiaW5saW5lXCIsXHJcbiAgICAgICAgICBmaWxsOiBcIm5vbmVcIixcclxuICAgICAgICAgIHN0cm9rZTogXCJ2YXIoLS1vdXJiZWlnZSlcIixcclxuICAgICAgICAgIHN0cm9rZVdpZHRoOiAyLjA0LFxyXG4gICAgICAgICAgc3Ryb2tlTGluZWNhcDogXCJidXR0XCIsXHJcbiAgICAgICAgICBzdHJva2VMaW5lam9pbjogXCJyb3VuZFwiLFxyXG4gICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdDogMTAsXHJcbiAgICAgICAgICBzdHJva2VEYXNoYXJyYXk6IFwibm9uZVwiLFxyXG4gICAgICAgICAgc3Ryb2tlT3BhY2l0eTogMSxcclxuICAgICAgICB9fVxyXG4gICAgICAgIGQ9XCJtIDQ1Ny4yNiw3NjUuNiBjIDAsMTI5LjYgMTEyLjYxLDIzNC42NiAyNTEuNTIsMjM0LjY2IEMgODQ3LjY5LDEwMDAuMjYgOTYwLjMsODk1LjIgOTYwLjMsNzY1LjYgOTYwLjMsNjM2IDg0Ny42OSw1MzAuOTQgNzA4Ljc4LDUzMC45NCA1NjkuODcsNTMwLjk0IDQ1Ny4yNiw2MzYgNDU3LjI2LDc2NS42IFpcIlxyXG4gICAgICAvPlxyXG4gICAgICA8Z1xyXG4gICAgICAgIGlkPVwiYW50aWNpcGF0ZVwiXHJcbiAgICAgICAgY2xhc3NOYW1lPVwiaHAzIGFudGljaXBhdGUtdmVyc2lvblwiXHJcbiAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgIGRpc3BsYXk6IFwiaW5saW5lXCIsXHJcbiAgICAgICAgfX1cclxuICAgICAgICBcclxuICAgICAgPiA8YSBvbkNsaWNrPXtvcGVuQ2xhc3Nlcyh7Y2xhc3NOYW1lOiBcImhwMyBhbnRpY2lwYXRlLXZlcnNpb25cIiwgY2xhc3N0b0hpZGU6IFwiaHAzXCJ9KX0+XHJcbiAgICAgICAgPHBhdGhcclxuICAgICAgICAgIGlkPVwiYW50aWNpcGF0ZS1hbnRpY2lwYXRlXCJcclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIGZpbGw6IFwiI2I4NWJkMVwiLFxyXG4gICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcclxuICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAgIGQ9XCJtIDg5NC41LDg5MC4wMyAtNi40OCwtNTEuOCAtNDkuNTcsLTYuMTkgYyAzMS42MywtMzIuNTcgNTEuMTIsLTc3LjAxIDUxLjEyLC0xMjYuMDEgMCwtNDAuMTcgLTEzLjEsLTc3LjI3IC0zNS4yNCwtMTA3LjI4IGwgNi41LC01Mi4xMSA1MC4yLC02LjI4IGMgMzYuOTcsNDUuMTEgNTkuMTcsMTAyLjggNTkuMTcsMTY1LjY3IDAsNzEuNzYgLTI4LjkxLDEzNi43NiAtNzUuNywxODQgelwiXHJcbiAgICAgICAgLz4gPC9hPlxyXG4gICAgICAgIDxhIG9uQ2xpY2s9e29wZW5DbGFzc2VzKHtjbGFzc05hbWU6IFwiaHAzIGFjdC12ZXJzaW9uXCIsIGNsYXNzdG9IaWRlOiBcImhwM1wifSl9PlxyXG4gICAgICAgIDxwYXRoXHJcbiAgICAgICAgICBpZD1cImFudGljaXBhdGUtYWN0XCJcclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIGZpbGw6IFwiIzg1MGU3OFwiLFxyXG4gICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcclxuICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAgIGQ9XCJtIDcwOC43LDk2Ny40MyBjIC03MS43MywwIC0xMzYuNzEsLTI4LjkgLTE4My45NCwtNzUuNjkgbCA1MS43OCwtNi40OCA2LjE5LC00OS41OCBjIDMyLjU3LDMxLjY0IDc3LDUxLjEzIDEyNS45Nyw1MS4xMyA0MC4xNiwwIDc3LjI1LC0xMy4xIDEwNy4yNSwtMzUuMjUgbCA1Mi4xLDYuNTEgNi4yNyw1MC4yMSBjIC00NS4wOSwzNi45NiAtMTAyLjc2LDU5LjE1IC0xNjUuNjIsNTkuMTUgelwiXHJcbiAgICAgICAgLz5cclxuICAgICAgICA8L2E+XHJcbiAgICAgICAgPGEgb25DbGljaz17b3BlbkNsYXNzZXMoe2NsYXNzTmFtZTogXCJocDMgZW5nYWdlLXZlcnNpb25cIiwgY2xhc3N0b0hpZGU6IFwiaHAzXCJ9KX0+XHJcbiAgICAgICAgPHBhdGhcclxuICAgICAgICAgIGlkPVwiYW50aWNpcGF0ZS1lbmdhZ2VcIlxyXG4gICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgZmlsbDogXCIjY2U5ZmM5XCIsXHJcbiAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXHJcbiAgICAgICAgICB9fVxyXG4gICAgICAgICAgZD1cIm0gNTA2LjQxLDg3MS42NyBjIC0zNi45NywtNDUuMSAtNTkuMTYsLTEwMi43OSAtNTkuMTYsLTE2NS42NiAwLC03MS43NiAyOC45LC0xMzYuNzYgNzUuNywtMTg0IGwgNi40Niw1MS43OSA0OS41OSw2LjIgYyAtMzEuNjQsMzIuNTcgLTUxLjEzLDc3LjAxIC01MS4xMywxMjYuMDEgMCw0MC4xNiAxMy4xLDc3LjI2IDM1LjI1LDEwNy4yOCBsIC02LjUxLDUyLjExIHpcIlxyXG4gICAgICAgIC8+IDwvYT5cclxuICAgICAgICA8YSBvbkNsaWNrPXtvcGVuQ2xhc3Nlcyh7Y2xhc3NOYW1lOiBcImhwMyByZWZsZWN0LXZlcnNpb25cIiwgY2xhc3N0b0hpZGU6IFwiaHAzXCJ9KX0+XHJcbiAgICAgICAgPHBhdGhcclxuICAgICAgICAgIGlkPVwiYW50aWNpcGF0ZS1yZWZsZWN0XCJcclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIGZpbGw6IFwiI2EwYTdmM1wiLFxyXG4gICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcclxuICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAgIGQ9XCJtIDgzNC42OCw1NzYuMjMgYyAtMzIuNTcsLTMxLjYzIC03Ny4wMSwtNTEuMTIgLTEyNi4wMSwtNTEuMTIgLTQwLjE2LDAgLTc3LjI2LDEzLjEgLTEwNy4yNywzNS4yNCBsIC01Mi4xMiwtNi41IC02LjI3LC01MC4yIGMgNDUuMSwtMzYuOTggMTAyLjc4LC01OS4xNyAxNjUuNjYsLTU5LjE3IDcxLjc2LDAgMTM2Ljc1LDI4LjkxIDE4NC4wMSw3NS43IGwgLTUxLjgxLDYuNDggelwiXHJcbiAgICAgICAgLz4gPC9hPlxyXG4gICAgICAgIDxwYXRoXHJcbiAgICAgICAgICBpZD1cInBhdGg2MlwiXHJcbiAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICBmaWxsOiBcInZhcigtLW91cmJlaWdlKVwiLFxyXG4gICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcclxuICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAgIGQ9XCJtIDcwOC43Myw4MzQuNTkgYyAtOC43OSwwIC0xNy40NCwtMS40MSAtMjUuNjksLTQuMjEgLTIuODEsLTAuOTUgLTQuMzIsLTQgLTMuMzUsLTYuNzkgMC43NiwtMi4yMiAyLjg0LC0zLjYyIDUuMDksLTMuNjIgMC41NywwIDEuMTYsMC4wOSAxLjc0LDAuMjkgNy4xNCwyLjQxIDE0LjYsMy42MyAyMi4yMSwzLjYzIDIuOTgsMCA1LjM5LDIuNCA1LjM5LDUuMzYgMCwyLjk2IC0yLjQxLDUuMzQgLTUuMzksNS4zNCB6XCJcclxuICAgICAgICAvPlxyXG4gICAgICAgIDxwYXRoXHJcbiAgICAgICAgICBpZD1cInBhdGg2NFwiXHJcbiAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxyXG4gICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcclxuICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAgIGQ9XCJtIDY4Ni4xNyw5MjYuNiAtMS4zMywtNy43OSA1LjM3LDAuOTggeiBtIC0yLjksNC4yMiA0LjIxLDAuNzcgMTEuNDgsLTE4LjI1IC00LjMzLC0wLjc5IC0yLjUzLDQuMTYgLTcuODcsLTEuNDQgLTAuODEsLTQuNzcgLTQuMjIsLTAuNzcgelwiXHJcbiAgICAgICAgLz5cclxuICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgaWQ9XCJwYXRoNjZcIlxyXG4gICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcclxuICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXHJcbiAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcclxuICAgICAgICAgIH19XHJcbiAgICAgICAgICBkPVwibSA3MTYuNzksOTM0LjE4IGMgMi40NSwtMC4wMiA0LjQzLC0wLjc3IDUuOTQsLTIuMjMgMC45LC0wLjg3IDEuNTcsLTIuMSAyLjAxLC0zLjcxIGwgLTQuMDEsLTAuOTEgYyAtMC4yMywxLjA0IC0wLjcxLDEuODYgLTEuNDYsMi40NyAtMC43NCwwLjYxIC0xLjY1LDAuOTIgLTIuNzIsMC45MyAtMS40OSwwLjAyIC0yLjcsLTAuNSAtMy42MywtMS41NiAtMC45NCwtMS4wNiAtMS40MiwtMi43NyAtMS40NCwtNS4xNiAtMC4wMywtMi41MyAwLjQxLC00LjM0IDEuMzEsLTUuNDIgMC45LC0xLjA4IDIuMDcsLTEuNjMgMy41MywtMS42NSAxLjA3LC0wLjAxIDIsMC4zMiAyLjc4LDEgMC43OCwwLjY3IDEuMzUsMS43NCAxLjcsMy4yIGwgMy45MSwtMS4yOCBjIC0wLjYzLC0yLjE4IC0xLjY0LC0zLjc5IC0zLjA1LC00Ljg0IC0xLjQxLC0xLjA0IC0zLjE5LC0xLjU1IC01LjM0LC0xLjUzIC0yLjY1LDAuMDMgLTQuODMsMC45NiAtNi41MiwyLjc5IC0xLjY5LDEuODMgLTIuNTIsNC4zMiAtMi40OSw3LjQ3IDAuMDQsMy4zMyAwLjkyLDUuOTEgMi42Niw3Ljc0IDEuNzQsMS44MiA0LjAxLDIuNzIgNi44MiwyLjY5IHpcIlxyXG4gICAgICAgIC8+XHJcbiAgICAgICAgPHBhdGhcclxuICAgICAgICAgIGlkPVwicGF0aDY4XCJcclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXHJcbiAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXHJcbiAgICAgICAgICB9fVxyXG4gICAgICAgICAgZD1cIm0gNzM3LjM5LDkzMi40MiAxNS42MiwtMy4wMSAtMC42NCwtMy4zMyAtNS44MiwxLjEzIC0zLjE1LC0xNi4zMyAtMy45NywwLjc3IDMuMTUsMTYuMzIgLTUuODMsMS4xMyB6XCJcclxuICAgICAgICAvPlxyXG4gICAgICAgIDxnIGlkPVwiZzcwXCI+XHJcbiAgICAgICAgICA8ZyBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGg3NilcIiBpZD1cImc3MlwiPlxyXG4gICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgIGlkPVwicGF0aDc4XCJcclxuICAgICAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcclxuICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcclxuICAgICAgICAgICAgICB9fVxyXG4gICAgICAgICAgICAgIGQ9XCJtIDQ5NC4zOCw2MjUuMzcgLTMuOTcsMTQuMyAzLjI2LDAuOTEgMi44OSwtMTAuNDEgNC4yNywxLjE5IC0yLjY5LDkuNjggMy4yNSwwLjkgMi42OSwtOS42OCA1LjI1LDEuNDYgLTIuOTksMTAuNzcgMy4yNSwwLjkxIDQuMDcsLTE0LjY3IHpcIlxyXG4gICAgICAgICAgICAvPlxyXG4gICAgICAgICAgPC9nPlxyXG4gICAgICAgIDwvZz5cclxuICAgICAgICA8ZyBpZD1cImc4MFwiPlxyXG4gICAgICAgICAgPGcgY2xpcFBhdGg9XCJ1cmwoI2NsaXBQYXRoODYpXCIgaWQ9XCJnODJcIj5cclxuICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICBpZD1cInBhdGg4OFwiXHJcbiAgICAgICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXHJcbiAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcclxuICAgICAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXHJcbiAgICAgICAgICAgICAgfX1cclxuICAgICAgICAgICAgICBkPVwibSA0ODcuNTMsNjUyLjUgLTAuNjUsMy44OCAxMS44MywxMC4yOSAtMTMuMTgsLTIuMjEgLTAuNjMsMy43IDE5Ljc0LDMuMzEgMC42NywtNCAtMTEuNTQsLTEwLjExIDEyLjg4LDIuMTUgMC42MiwtMy43IHpcIlxyXG4gICAgICAgICAgICAvPlxyXG4gICAgICAgICAgPC9nPlxyXG4gICAgICAgIDwvZz5cclxuICAgICAgICA8ZyBpZD1cImc5MFwiPlxyXG4gICAgICAgICAgPGcgY2xpcFBhdGg9XCJ1cmwoI2NsaXBQYXRoOTYpXCIgaWQ9XCJnOTJcIj5cclxuICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICBpZD1cInBhdGg5OFwiXHJcbiAgICAgICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXHJcbiAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcclxuICAgICAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXHJcbiAgICAgICAgICAgICAgfX1cclxuICAgICAgICAgICAgICBkPVwibSA0ODIuNDgsNjkwLjkyIGMgLTAuMTQsMi40OCAwLjI3LDQuNDUgMS4yMyw1LjkgMC45NiwxLjQ1IDIuMzUsMi40MyA0LjE2LDIuOTMgbCAwLjk4LC0zLjk2IGMgLTAuOTcsLTAuMzQgLTEuNzEsLTAuOTEgLTIuMjQsLTEuNzIgLTAuNTIsLTAuODEgLTAuNzUsLTEuNzkgLTAuNjksLTIuOTYgMC4xLC0xLjc2IDAuNzQsLTMuMTMgMS45MiwtNC4xMSAxLjE3LC0wLjk4IDIuODYsLTEuNCA1LjA2LC0xLjI4IDIuMzcsMC4xMyA0LjEyLDAuNzYgNS4yNSwxLjg4IDEuMTIsMS4xMiAxLjY0LDIuNTQgMS41NCw0LjI1IC0wLjA0LDAuODQgLTAuMjYsMS42OCAtMC42NCwyLjUxIC0wLjM4LDAuODMgLTAuODIsMS41NCAtMS4zMywyLjEyIGwgLTIuNTMsLTAuMTQgMC4yNiwtNC42MiAtMy4zNywtMC4xOSAtMC40OSw4LjY5IDcuOTYsMC40NSBjIDAuODcsLTAuOCAxLjY2LC0xLjk4IDIuMzcsLTMuNTUgMC43MSwtMS41NyAxLjEyLC0zLjE4IDEuMjEsLTQuODIgMC4xMiwtMi4wOSAtMC4yMiwtMy45NCAtMS4wMSwtNS41NCAtMC43OSwtMS42MSAtMS45OCwtMi44NCAtMy41NywtMy43MiAtMS41OCwtMC44NyAtMy4zMywtMS4zNiAtNS4yNSwtMS40NyAtMi4wOCwtMC4xMiAtMy45NiwwLjIyIC01LjYyLDEgLTEuNjcsMC43OCAtMi45OCwxLjk5IC0zLjk0LDMuNjIgLTAuNzQsMS4yNCAtMS4xNiwyLjgyIC0xLjI2LDQuNzMgelwiXHJcbiAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICA8L2c+XHJcbiAgICAgICAgPC9nPlxyXG4gICAgICAgIDxnIGlkPVwiZzEwMFwiPlxyXG4gICAgICAgICAgPGcgY2xpcFBhdGg9XCJ1cmwoI2NsaXBQYXRoMTA2KVwiIGlkPVwiZzEwMlwiPlxyXG4gICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgIGlkPVwicGF0aDEwOFwiXHJcbiAgICAgICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXHJcbiAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcclxuICAgICAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXHJcbiAgICAgICAgICAgICAgfX1cclxuICAgICAgICAgICAgICBkPVwibSA0ODcuNDMsNzIwLjU2IDcuMjgsLTMuMDkgMC4yOSw1LjQ1IHogbSAtNC43NywtMS44NCAwLjIzLDQuMjcgMjAuNDEsNi45NSAtMC4yNCwtNC4zOSAtNC42MywtMS41MSAtMC40MiwtNy45OSA0LjQ1LC0xLjg5IC0wLjIzLC00LjI4IHpcIlxyXG4gICAgICAgICAgICAvPlxyXG4gICAgICAgICAgPC9nPlxyXG4gICAgICAgIDwvZz5cclxuICAgICAgICA8ZyBpZD1cImcxMTBcIj5cclxuICAgICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDExNilcIiBpZD1cImcxMTJcIj5cclxuICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICBpZD1cInBhdGgxMThcIlxyXG4gICAgICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxyXG4gICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXHJcbiAgICAgICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxyXG4gICAgICAgICAgICAgIH19XHJcbiAgICAgICAgICAgICAgZD1cIm0gNDg1Ljc2LDc1MS42MSBjIDAuNCwyLjQ1IDEuMjMsNC4yOCAyLjQ4LDUuNDkgMS4yNiwxLjIxIDIuODMsMS44NyA0LjcxLDEuOTcgbCAwLjA5LC00LjA5IGMgLTEuMDIsLTAuMTIgLTEuODcsLTAuNTEgLTIuNTYsLTEuMTkgLTAuNjksLTAuNjggLTEuMTIsLTEuNTkgLTEuMzEsLTIuNzQgLTAuMjksLTEuNzQgMC4wNCwtMy4yMiAwLjk3LC00LjQzIDAuOTQsLTEuMjEgMi40OSwtMS45OSA0LjY3LC0yLjM1IDIuMzQsLTAuMzggNC4xOCwtMC4xNSA1LjUzLDAuNyAxLjM0LDAuODUgMi4xNSwyLjEyIDIuNDMsMy44MSAwLjEzLDAuODMgMC4xMSwxLjcgLTAuMDgsMi41OSAtMC4xOSwwLjg5IC0wLjQ3LDEuNjggLTAuODQsMi4zNiBsIC0yLjUxLDAuNDEgLTAuNzQsLTQuNTcgLTMuMzMsMC41NSAxLjQxLDguNiA3Ljg3LC0xLjMgYyAwLjY3LC0wLjk2IDEuMTgsLTIuMjkgMS41NCwtMy45OCAwLjM1LC0xLjY4IDAuMzksLTMuMzQgMC4xMywtNC45NyAtMC4zNCwtMi4wNiAtMS4wNywtMy43OSAtMi4xOSwtNS4xOCAtMS4xMiwtMS40IC0yLjU1LC0yLjM1IC00LjI5LC0yLjg2IC0xLjczLC0wLjUgLTMuNTUsLTAuNiAtNS40NSwtMC4yOSAtMi4wNSwwLjM0IC0zLjgxLDEuMDcgLTUuMjcsMi4xOSAtMS40NSwxLjEzIC0yLjQ3LDIuNTkgLTMuMDUsNC4zOSAtMC40NSwxLjM4IC0wLjUyLDMuMDEgLTAuMjEsNC44OSB6XCJcclxuICAgICAgICAgICAgLz5cclxuICAgICAgICAgIDwvZz5cclxuICAgICAgICA8L2c+XHJcbiAgICAgICAgPGcgaWQ9XCJnMTIwXCI+XHJcbiAgICAgICAgICA8ZyBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGgxMjYpXCIgaWQ9XCJnMTIyXCI+XHJcbiAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgaWQ9XCJwYXRoMTI4XCJcclxuICAgICAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcclxuICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcclxuICAgICAgICAgICAgICB9fVxyXG4gICAgICAgICAgICAgIGQ9XCJtIDQ5MC40Miw3NzIuOTkgMy45NywxNC4zIDMuMjYsLTAuOSAtMi44OSwtMTAuNDEgNC4yOCwtMS4xOSAyLjY5LDkuNjkgMy4yNCwtMC45MSAtMi42OCwtOS42OCA1LjI1LC0xLjQ1IDIuOTksMTAuNzcgMy4yNSwtMC45IC00LjA3LC0xNC42NyB6XCJcclxuICAgICAgICAgICAgLz5cclxuICAgICAgICAgIDwvZz5cclxuICAgICAgICA8L2c+XHJcbiAgICAgICAgPGcgaWQ9XCJnMTMwXCI+XHJcbiAgICAgICAgICA8ZyBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGgxMzYpXCIgaWQ9XCJnMTMyXCI+XHJcbiAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgaWQ9XCJwYXRoMTM4XCJcclxuICAgICAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcclxuICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcclxuICAgICAgICAgICAgICB9fVxyXG4gICAgICAgICAgICAgIGQ9XCJtIDkxMi43Nyw4MTAuMiAtNy44OSwtMC41IDIuMTksLTUgeiBtIDMuNDQsMy43OSAxLjcxLC0zLjkyIC0xNS4xMiwtMTUuMzYgLTEuNzYsNC4wMiAzLjQ2LDMuNDMgLTMuMiw3LjMyIC00LjgzLC0wLjMgLTEuNzIsMy45MiB6XCJcclxuICAgICAgICAgICAgLz5cclxuICAgICAgICAgIDwvZz5cclxuICAgICAgICA8L2c+XHJcbiAgICAgICAgPGcgaWQ9XCJnMTQwXCI+XHJcbiAgICAgICAgICA8ZyBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGgxNDYpXCIgaWQ9XCJnMTQyXCI+XHJcbiAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgaWQ9XCJwYXRoMTQ4XCJcclxuICAgICAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcclxuICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcclxuICAgICAgICAgICAgICB9fVxyXG4gICAgICAgICAgICAgIGQ9XCJtIDkyNC45MSw3OTIuMzggMS4xNywtMy43NSAtMTAuMzEsLTExLjgxIDEyLjc2LDMuOTkgMS4xMiwtMy41OCAtMTkuMTEsLTUuOTcgLTEuMjEsMy44NyAxMC4wNSwxMS41OSAtMTIuNDUsLTMuODkgLTEuMTIsMy41OCB6XCJcclxuICAgICAgICAgICAgLz5cclxuICAgICAgICAgIDwvZz5cclxuICAgICAgICA8L2c+XHJcbiAgICAgICAgPGcgaWQ9XCJnMTUwXCI+XHJcbiAgICAgICAgICA8ZyBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGgxNTYpXCIgaWQ9XCJnMTUyXCI+XHJcbiAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgaWQ9XCJwYXRoMTU4XCJcclxuICAgICAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcclxuICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcclxuICAgICAgICAgICAgICB9fVxyXG4gICAgICAgICAgICAgIGQ9XCJtIDkzMi41Nyw3NjUuODggMy4xNSwtMTUuNTkgLTMuMzIsLTAuNjcgLTEuMTcsNS44MSAtMTYuMywtMy4yOSAtMC44LDMuOTYgMTYuMywzLjI5IC0xLjE4LDUuODIgelwiXHJcbiAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICA8L2c+XHJcbiAgICAgICAgPC9nPlxyXG4gICAgICAgIDxnIGlkPVwiZzE2MFwiPlxyXG4gICAgICAgICAgPGcgY2xpcFBhdGg9XCJ1cmwoI2NsaXBQYXRoMTY2KVwiIGlkPVwiZzE2MlwiPlxyXG4gICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgIGlkPVwicGF0aDE2OFwiXHJcbiAgICAgICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXHJcbiAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcclxuICAgICAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXHJcbiAgICAgICAgICAgICAgfX1cclxuICAgICAgICAgICAgICBkPVwibSA5MzcuMjYsNzM5LjI3IDAuNDgsLTQuMDEgLTE5Ljg3LC0yLjM5IC0wLjQ4LDQuMDEgelwiXHJcbiAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICA8L2c+XHJcbiAgICAgICAgPC9nPlxyXG4gICAgICAgIDxnIGlkPVwiZzE3MFwiPlxyXG4gICAgICAgICAgPGcgY2xpcFBhdGg9XCJ1cmwoI2NsaXBQYXRoMTc2KVwiIGlkPVwiZzE3MlwiPlxyXG4gICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgIGlkPVwicGF0aDE3OFwiXHJcbiAgICAgICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXHJcbiAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcclxuICAgICAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXHJcbiAgICAgICAgICAgICAgfX1cclxuICAgICAgICAgICAgICBkPVwibSA5MzkuNTgsNzE0LjI5IGMgMC4wOCwtMi40NCAtMC41NywtNC40NiAtMS45NywtNi4wMyAtMC44MiwtMC45NCAtMi4wMywtMS42NiAtMy42MiwtMi4xNyBsIC0xLjA4LDMuOTcgYyAxLjAzLDAuMjcgMS44MywwLjc5IDIuNCwxLjU2IDAuNTgsMC43NyAwLjg1LDEuNjkgMC44MSwyLjc2IC0wLjA1LDEuNDkgLTAuNjIsMi42NyAtMS43MSwzLjU2IC0xLjEsMC44OSAtMi44NCwxLjI5IC01LjIyLDEuMjEgLTIuNTMsLTAuMDggLTQuMzIsLTAuNiAtNS4zNiwtMS41NCAtMS4wNCwtMC45NSAtMS41NCwtMi4xNSAtMS40OSwtMy42IDAuMDMsLTEuMDggMC40MSwtMS45OSAxLjExLC0yLjc0IDAuNzEsLTAuNzUgMS44LC0xLjI3IDMuMjgsLTEuNTYgbCAtMS4xMSwtMy45NSBjIC0yLjIxLDAuNTIgLTMuODYsMS40NyAtNC45NywyLjgzIC0xLjEsMS4zNiAtMS42OSwzLjExIC0xLjc2LDUuMjYgLTAuMDksMi42NiAwLjc0LDQuODcgMi41LDYuNjQgMS43NiwxLjc3IDQuMjEsMi43MSA3LjM2LDIuODEgMy4zMywwLjExIDUuOTQsLTAuNjYgNy44NCwtMi4zMiAxLjksLTEuNjUgMi45LC0zLjg4IDIuOTksLTYuNjkgelwiXHJcbiAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICA8L2c+XHJcbiAgICAgICAgPC9nPlxyXG4gICAgICAgIDxnIGlkPVwiZzE4MFwiPlxyXG4gICAgICAgICAgPGcgY2xpcFBhdGg9XCJ1cmwoI2NsaXBQYXRoMTg2KVwiIGlkPVwiZzE4MlwiPlxyXG4gICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgIGlkPVwicGF0aDE4OFwiXHJcbiAgICAgICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXHJcbiAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcclxuICAgICAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXHJcbiAgICAgICAgICAgICAgfX1cclxuICAgICAgICAgICAgICBkPVwibSA5MzkuMSw2OTQuMjcgLTAuMjIsLTQuMDMgLTE5Ljk4LDEuMDkgMC4yMSw0LjAzIHpcIlxyXG4gICAgICAgICAgICAvPlxyXG4gICAgICAgICAgPC9nPlxyXG4gICAgICAgIDwvZz5cclxuICAgICAgICA8ZyBpZD1cImcxOTBcIj5cclxuICAgICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDE5NilcIiBpZD1cImcxOTJcIj5cclxuICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICBpZD1cInBhdGgxOThcIlxyXG4gICAgICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxyXG4gICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXHJcbiAgICAgICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxyXG4gICAgICAgICAgICAgIH19XHJcbiAgICAgICAgICAgICAgZD1cIm0gOTMzLjk4LDY3NC4yNSAtNS42MiwwLjc5IC0wLjMxLC0yLjE5IGMgLTAuMjIsLTEuNTggLTAuMjYsLTIuNjUgLTAuMTMsLTMuMjEgMC4xMywtMC41NiAwLjQsLTEuMDIgMC44LC0xLjM4IDAuNCwtMC4zNyAwLjg5LC0wLjU5IDEuNDgsLTAuNjcgMC43MiwtMC4xIDEuMzQsMC4wMiAxLjg3LDAuMzggMC41MywwLjM2IDAuOSwwLjg2IDEuMTEsMS40OSAwLjE1LDAuNDYgMC4zMywxLjQyIDAuNTMsMi44NiB6IG0gMy45MiwzLjUzIC0wLjksLTYuNDIgYyAtMC4zNCwtMi40MyAtMC42NiwtNCAtMC45NiwtNC43MSAtMC40NiwtMS4xIC0xLjI0LC0xLjk2IC0yLjM0LC0yLjU5IC0xLjExLC0wLjYyIC0yLjQ1LC0wLjgzIC00LjAzLC0wLjYgLTEuMjEsMC4xNyAtMi4yLDAuNTMgLTIuOTcsMS4wOSAtMC43NywwLjU2IC0xLjM0LDEuMjEgLTEuNzIsMS45NSAtMC4zOCwwLjc1IC0wLjU5LDEuNDkgLTAuNjUsMi4yMSAtMC4wNSwwLjk4IDAuMDQsMi4zOCAwLjMsNC4xOSBsIDAuMzYsMi42MSAtNy40NywxLjA1IDAuNTYsNCB6XCJcclxuICAgICAgICAgICAgLz5cclxuICAgICAgICAgIDwvZz5cclxuICAgICAgICA8L2c+XHJcbiAgICAgICAgPGcgaWQ9XCJnMjAwXCI+XHJcbiAgICAgICAgICA8ZyBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGgyMDYpXCIgaWQ9XCJnMjAyXCI+XHJcbiAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgaWQ9XCJwYXRoMjA4XCJcclxuICAgICAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcclxuICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcclxuICAgICAgICAgICAgICB9fVxyXG4gICAgICAgICAgICAgIGQ9XCJtIDkyNy4wMSw2NDQuMzcgLTYuNTMsNC40NSAtMS4zNSwtNS4yOSB6IG0gNS4wNCwwLjg4IC0xLjA1LC00LjE1IC0yMS4zOCwtMi44MyAxLjA5LDQuMjYgNC44MywwLjU3IDEuOTcsNy43NiAtNCwyLjcyIDEuMDYsNC4xNSB6XCJcclxuICAgICAgICAgICAgLz5cclxuICAgICAgICAgIDwvZz5cclxuICAgICAgICA8L2c+XHJcbiAgICAgICAgPGcgaWQ9XCJnMjEwXCI+XHJcbiAgICAgICAgICA8ZyBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGgyMTYpXCIgaWQ9XCJnMjEyXCI+XHJcbiAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgaWQ9XCJwYXRoMjE4XCJcclxuICAgICAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcclxuICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcclxuICAgICAgICAgICAgICB9fVxyXG4gICAgICAgICAgICAgIGQ9XCJtIDkyNi4wNyw2MjQuMTkgLTUuNTIsLTE0LjkyIC0zLjE4LDEuMTggMi4wNiw1LjU2IC0xNS41OSw1Ljc3IDEuNCwzLjc5IDE1LjU5LC01Ljc3IDIuMDYsNS41NyB6XCJcclxuICAgICAgICAgICAgLz5cclxuICAgICAgICAgIDwvZz5cclxuICAgICAgICA8L2c+XHJcbiAgICAgICAgPGcgaWQ9XCJnMjIwXCI+XHJcbiAgICAgICAgICA8ZyBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGgyMjYpXCIgaWQ9XCJnMjIyXCI+XHJcbiAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgaWQ9XCJwYXRoMjI4XCJcclxuICAgICAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcclxuICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcclxuICAgICAgICAgICAgICB9fVxyXG4gICAgICAgICAgICAgIGQ9XCJtIDkxNi4wNiw1OTguODggLTYuNTMsLTEzLjMzIC0zLjA0LDEuNDkgNC43NSw5LjcgLTMuOTgsMS45NSAtNC40MiwtOS4wMyAtMy4wMywxLjQ5IDQuNDIsOS4wMiAtNC45LDIuNCAtNC45MSwtMTAuMDUgLTMuMDMsMS40OSA2LjY5LDEzLjY3IHpcIlxyXG4gICAgICAgICAgICAvPlxyXG4gICAgICAgICAgPC9nPlxyXG4gICAgICAgIDwvZz5cclxuICAgICAgICA8ZyBpZD1cImcyMzBcIj5cclxuICAgICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDIzNilcIiBpZD1cImcyMzJcIj5cclxuICAgICAgICAgICAgPGcgdHJhbnNmb3JtPVwibWF0cml4KDIwNC4zNiwwLDAsMjA0LjM2LDYwMS4wOCw2MTEuNClcIiBpZD1cImcyMzhcIj5cclxuICAgICAgICAgICAgICA8aW1hZ2VcclxuICAgICAgICAgICAgICAgIGlkPVwiaW1hZ2UyNDRcIlxyXG4gICAgICAgICAgICAgICAgbWFzaz1cInVybCgjbWFzazI0MClcIlxyXG4gICAgICAgICAgICAgICAgeGxpbmtIcmVmPVwiZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFZQUFBQUdBQ0FZQUFBQ2t4N1cvQUFBQUJITkNTVlFJQ0FnSWZBaGtpQUFBSUFCSlJFRlVlSnp0M1dsejIwaldwdUVISUlGTVVJdTFTN1prbHlybWpaaVltUC8vZDZhOXlJdXN6WklzWWlQQStRREs1ZXB5MmJKSUpKTENmVVYwOUlmcUl1QzJoQWZNUEhsT0lHa3FBRUR2aEYzZkFBQ2dHd1FBQVBRVUFRQUFQVVVBQUVCUEVRQUEwRk1FQUFEMEZBRUFBRDFGQUFCQVR4RUFBTkJUQkFBQTlCUUJBQUE5UlFBQVFFOFJBQURRVXdRQUFQUVVBUUFBUFVVQUFFQlBFUUFBMEZNRUFBRDBGQUVBQUQxRkFBQkFUeEVBQU5CVEJBQUE5QlFCQUFBOVJRQUFRRThSQUFEUVV3UUFBUFFVQVFBQVBVVUFBRUJQRVFBQTBGTUVBQUQwRkFFQUFEMUZBQUJBVHhFQUFOQlRCQUFBOUJRQkFBQTlSUUFBUUU4UkFBRFFVd1FBQVBRVUFRQUFQVVVBQUVCUEVRQUEwRk1FQUFEMEZBRUFBRDFGQUFCQVR4RUFBTkJUQkFBQTlCUUJBQUE5TmV6NkJnQmdXVVZocE1RYUpiR1ZqWTFHY2FMM2w1OTBNLzdhOWEwOUNBRUFBTDhRS3BRMVZpTVRLNGtTSmJHUk5TTU5CLzljUkxGUm9oc1JBQUN3VkFJRk1zTll4aGdseG1vVUc0MU1vbmdZUC9nelJzYTBlSWVMUlFBQTZLWGhZQ2diR1kxaUl4dGJqYXhWRWljS2dtQ3V6N1VFQUFENElRZ0MyU2hXWWhLTllxc2tOaHFaa1FhRFFTdlhTeUtyUUlHbW1yYnkrWXRFQUFCNE11SkJMR3VOUnBIOXRqR2JHT3YwSG9JZ2tJMWpwVVh1OUxxUFFRQUFXRHFEWUtERVdObDQ5bVlmR1Zsck5RamFlYXYvWFRaT0NBQUFtRmNTR3lYM2IvVFdLREVqeFFPL0gxMmp5T2lxNjV0NEFMLy9Yd1RRRzlFd2Fzb3I0NmF1UGpGV2RtZ1Voc3QzWHRYYTVkZ0lKZ0FBT0JVRWdaSzRxYVVmeFZhSk1iTHhqMnZxbDFVU3U5MTNlQ3dDQUVCcjdMQjVtemYzRzdNMmtSbEdYZDlXNitKaHJFRVlxcXJycm0vbHB3Z0FBSE1iRG9aTkxYMFV5OXBFbzlnc3BLWittU1dSMGRjODdmbzJmb29BQVBCZ1RZbGo4MVovWDFOdjQ1R2lvUi9WTno2eHhoSUFBSmFUR2NReTFpaUptaVpuMXBpbFdkdjJ3Y2p4K1lQSElBQ0FuZ3ZEVUtNNG1XM0dXaVdSVWVKUlRmMnlTdUtrNjF2NEpRSUE2SkZteWFZNU9KVllLMnNTNzJ2cWw1V05IOTVBcml2OHpRTlBVRk5UMzV5VXZWKytXZGFhK21VMUNJZUtoNUdLU2RuMXJmd3JBZ0JZWW9Nd2xJMk5iR1MvdFM5K2FqWDF5OHhHbGdBQU1MLzdtbnByWit2MHNaR0psK1BFNlRLWlZLWFNJbGVhWjBxTTFWcXkrdWpQU3F6UlRYcTd3THRiTEFJQThNeDlUWDB5T3lXYlJNMVFrajdYMUxlaG1sYks4MUxqSWxOV1prcXpWR21SYVZKWDMvNDMyK3ViY3dYQXlQT05ZQUlBNk1oOVRmMG9haXB3RW1ObG80U2EraGJrazFKcG5pb3JNbzJMWEdtUktYOUF0ODQ4eithNmJoTDVYUXBLQUFBT21FR3N4RmlaT05iSUpMS3hrUm5HYk1vdTJLU3FsUldwMGpKdkh2aDVwclFvVkUyclgvL0xQNUROMmRMWlJINVhBaEVBd0FLRllhZ2thc1lMMnNoK2EzZ1d0alI5cXEvcXVsWlpsVXJ6NW0wK3padi81Rld4ME90TXByV0thdkxvVXRrZ0RKVEVWbWt4M3plSnRoQUF3Q00xWlpaV0l4TXJpUlBaT0ZFODVGZXFiZS9PUHVqODV0TEp3TVZCR0NxWXpqc2ptQUFBbGxZMEhEWVArTWhxWkF3MTlSMjYvbnFqczV0TFo5ZjdZKzlvN2oyWkpMYmVEb2NoQUlDWis1cjY1bTNlZkt2Q0dZYjhtdmhnVXBWNmMvN0IyZlYyMTdhMHNiSSs5K2Y0dkJITVR6WjZ5UTVOTXp3OE5rcWkyYVlzTmZWZWUzUDJRWk5xNHVSYWRtaDB1SDJ3a004YWVkd1NnZ0RBa3pZY0RKVkVSdFlremZJTk5mVkw2ZUwyU3RkM2JnNVVCUXAwZkhDb2NFR25xYU9vcWZhcVBSd09Rd0RnU1FnVnlzd3FibXhzTmJLR212b25JcCtVT2puLzZPeDZCMXQ3R3BuUlFqOHpNWW51MHJ1RmZ1WWlFQUJZT3ZFd21yVXZ0dC9XN09QaGtFM1pGaFNUUWxtUkt5MVNwVVdodzgwOVJRNXIyK3U2MXR2UDc1eU5WbHkxSzlwL3RyM3d6MDBpU3dBQXYrTytwajR4elFEeFpncVZvYWErQlpONm9qelBsWmFaeG5tbXJDaVU1dG5mRGxBZGJMbDkrRXZTK2UyVmJ0T3hrMnNOd2xESCs0ZXR2RWdrbnU0dkVRRG9YQkFFc3JQbVprM3ZtNlRwVTA5Ti9jSk42Nm55c2xCYVpyTURWS25TSXY5bHg4cFJiUFg4MmE2anUyeWtlZVowNmVkbzU3bmlZVHNCUndBQWFtcnFSNUdWaVpObW5UNDJTb1pXUWNpbTdLSVY1VVJwa1gzWEdpRlRWdWFhVG4vdkNGV29VSDhldkhUNmR6U3RwM3I5K2IyejYyMnVybXQ3YmJPMXo3ZWVOb1VqQU5DS3BxWisxdEV5bnEzVlUxUGZpcnFxbTQ2V1JhNXhrU2t0TStWWnFzbDBNZXZtaHpzSE1wSGJOOWlQWHo0ckxkd01WSStHUTczYU9XejFHc05CS0RPSUY5NnFZbDc4Tm1KdUpwNHQzMFJKVTFkdmpHTEhENHkrcUtwS04rbFhqZk5VZVZGb1hLU3REaHhaVDlhMCsyeXJ0Yy8va1hHZTZ0UFZtYlByL2JsN3BJR0RmU1ZqamZJN0FnQkxhaGdPbWpkNjIyektOcTBSTERYMUR2M245TVRaZ0pGQkdPclZmcnR2eHYrdHJpcTkvblRpN0hwN0c5dGFIVDIrMy8vdlNDS2pHL2sxSElZQXdEL2MxOVFuc3hMTHhEWnY5OVRVZCt2ODVzTHBkS25qM1NQbkErTS9YSDFXTnBtdkJmTkRqWXpWNGRaaVR2cys2SG9lN2dNUUFEMFhENlBaTE5ta1dhczNzZUlCZmVwOWs1ZTVUczVPblYxdmUyMVR6MWJuNzRQek8yN1NPMzIrdm5CeXJTQUlkTHo3MHVtM1YrdGhKUkFCMEJOaEdEYjE5SkdkblpZMTFOUXZpV2s5MVg4K3ZWTXRONGVoNG1Ha3crM25UcTUxcjZvbmV2UDVuYlBySFc0ZnlCcTNEMlFmaDhNUUFFOU1FQVROOEhBejYzOHo2NE5EVGYzeStuajFXV09IL2VULzNEdlNjRUY5Y0I3cTNma25sUk0zamQ3V1I2dmFhK0cwNzYrRVlhZ2tOa3JubkRLMlNEd1ZsbGcwakRTS1p1MkxiWE5TMWc0Tk5mVXRLQ2VsaG9PaDh3M3Z1eXpWcHkvdUttS2ViKzVwSlZseGRqMUorbkozcmN2YkwwNnVOUmdNOUdyM3lNbTFmbVFVV3dJQXYrZStwcjVadGtsa1RiTjhNNkNtZnVHcWFhVXNMNVFXdWZJeVZacm5HdWVaUnRicWY1NGZPNzJYdXFyMSt2TmJaOWRMNGtRSG0yNVAreGJWUkcvTzNQWDRQOTQ1N1BUYmNHSVM2ZXQxWjlmL2J6eEJQR09pN3pwYUdxc2tqcW1wYjBsZTVMUERVN25TMmNNK0wvLzVkallNUXIzYWNmL1dlSEw1U1huWlhvMy85d0pKeC91SHpyL2h2RDE3cjZwNjNNRDIzOVhGeHZaLzgyMGptQURveURBY2FHUVNXZlBkOEhCcTZsdFJUcXEvM3VhTFRGbVphWnhsbWo1d3F1ekwvVVBGa2R0ZmxTOTNOenAzT1BydzVlNXpKYkhieVZYbjE1ZTZjZFRqMzBTUlhqcmUyUDRSMzFwQ0VBQXQrNzZtZm1Sbm93YXBxVy9GZERxZHZkR25zeGJHbWRJc1Yxay8vaTE2YTNWRG15dlBGbmlYdnphcFNyMTF1Q3l5UGxyVHpycmJUZEdpekhWeStjblo5ZjdjZjdXd0FTL3ppSWRERGNMUVdYdnJYeUVBRnNoRTBiZitOMDIvZXFOb0VGRlQzNEo4VWpiTnpZcFVhWkZwWE9US0Y3eTVGZzhqSGUyNk95aDA3N1hEMFlmTjhwYmowNzUxcmYrY2ZYQTJJZXY1NXI1R3hwODM3NUd4emxwYy93b0I4QWpESUpTeGY1VllqbUtySkRKZXZHRThaZWZYVjdxNHZWSldaazdlb0k3M1h6cHZYbmQyYytWc1dVU1NYbld3dkhWK2MrbHNPTXFLR1dsL3czM0o1ODhrY1VJQUxJUDdtbnByWjEwdG8rYS9YZi9DUUJyblk3MDlkOWNlK0dCelY2dDJzV01CZnlVckNwMmN1MXY2MlZyZDBJYmo1YTBzejNWeTRXYnBKMUNnNDcxMkJyek13emplYS9rWm5tUXo4YkJadmhsRlZvbHRTaTZwcWZkRDB5RE0zY00vaVkyZWIrNDV1NTdVTEl1OE9UdjU3Vjc5anhVUFl1ZkxXOVBwVlA5eFdOYjZjdmRReHJPcUcwbGFNUVJBWndaaEtCdlpXUzA5TmZYTDRPVHlrN01HWVpMMDU5NHI1OVZZbjYvUGRKZTVXeFk0UGpoeXZyejE0ZkxVMlNHb2pkVjE3YXh2T0xuVzc3SkRmMExwU1QvMVRHdzArdTVobnhqVDJzZzN0T1A2N3F2T2I2NmNYZS9sOW5QblBXTEdlYW9QbCs1TyszYXh2SFdYcFRyOWN1N2tXbEVZNmVXMjI0M3QzeEVPUXBrb2NuYkc0MmVlUkFBTXcyRnphTW9ZbWFqWmxEVW0waUNnMUhLWmxaUFNhWU93OVdSVnU0NDNET3VxZHRyL3ZwUGxyYXB5ZXFMNWo0TkQ3OHVza3lnaEFIN1hmVTE5ODdCdlRzc21VYXhvR0hWOWEwOVNVVTJVRjVuR1dhNnQxVFZGanJzWnZqdi9xRW50NXBSb0dJYjZZL2VGazJ0OTcvMkZ1K1d0SUFoMHZPZTJCYklrblZ4K2R2YXcyOXZZMFhyaVpzRExQS3d4a2dlRlFONEdnSWtpSmRGc2pkNDBFNmlvcVc5SFhWWEtKcm5HV2Fhc3lEUXVDMlZGOXEwV2ZXdHRRMUhrOXMzNC9QWktYKzV1bkYzdmo5MUQ1d0YzYzNlcnMxdDNwMzBQdHcrVU9ONkF2QjNmNnZ6R1RZLy9KTFo2dnVXMmw5RmorVEljcHZNQUdBYWg3T3dCVDAxOXUrcTZWakdaS0MxVFpWbXV0TXlVRnVsUDM4NmlZYVNYTzI2clJmSWkxN3ZQN3NvaHQxZWZhWFBWYlRsa09TbjErck83cFo4dVdpQlhWYVhYTFo5b0RzTlFLOFlxTVNQdHJtOHV6Ykp2NG5pZjZkODRDNEFnQ0dRakkydHNjNEJxTm9HS212cDJsSk5TYVZrMEoyWHpwaTFDbHVlL1BWVGt6OTFEcHhWU2RWM3J6ZWVUQi9mcG1WYzBqSFMwNjc1SHpMc3p4OHRiTys2WHQ5NmRmMUM1d0lIMVVSZ3BzVTNmckJXYmFHU1NwUzNxaUFhUkFzblJUL20vYy9hYnZiK3hveGRiKzY0dTF4dmZ0eS9PeWt4Wm5tbWNaNXJVODdjUzJOL1ljVFl3Kzk3cDlZVys1cW16Ni8yNTV6YmdwTm55MXRqZDh0Yng3cEh6NWEwdlgyOTBPVWZiWXhORnpRUzdPTkVvVHJSaWpZYURwN1BYRjRhaGJKd29MZHo5clArSXM1LzhMUGRuQ01LeXVtOWZuSlpwMDhMNFg5b1hMMElTV3gwNFhrKzl5MUo5dXZ6czdIcDdHOXRhZGJ4aDJNWHkxb2JqRnNqRlpLSzNEMXplQ3RTc0RDVFdhaVcyc2paUkVpWE9KNUoxb1prTzFwTUFTTXR1LzZETDd1VDhvOU9CMlgvc0h6cGRUNjJtbFY2ZnVWdjZTU0tyd3kyM2V4dDFYVHY5TTNhMXZQWDI3TDBtMDM4dU5ZWUtsVmlqVVpUSTJrU2p1Q253NkdzTDlDUk9KTG1aaFBadm5BVkFYcGFxcTRvaDVJOXdtMzUxOXZDWHBCZWJCODZyRkQ2Y255NjhtK2UvQ1lKQXh3ZEhIWnoyUGRkZDV1NUY2SGp2eVBueTF0bk5sVzdHdHdyRGNMWjBZNXVsbk1qS1JERlZmTjhaMmU0M2dwMytkR1NUUXFPQkgrVlB5NktjVkhyOXlkMWhxRlc3b3Qxbm04NnVKMGszNDF1ZE9SeCtjcmg5NEh6NHlWMDIxa2VIcDMzM251MXF6ZkZzWDBreVVhei8rOGYvbHVGc3ppOGxIdlFwY2hySHFjUE52YWZpNVB5RFNrZlZJb013MUIvN1IwN2Ywc3BKcFRlbjdzb2hWNU5WN2F5NURiam1KT3g3ZDh0YnNkWGh0dHZUdnZmV2t4VWUvZzgwSEVRYURycXRnblFiQUk2KzRqOFZGN2RYdXJwek4wRDYxZTZoODEvZWR4ZnYzUVZjTU5EeDNndm55eER2TDA5YjI2ei9rZU45OTh0YmVCemJjV3RvcC9IVDlZNzNNc2tucFU3T1B6cTczdWJxaHZQRFVCZTNWL3J5MVYwNTVLdTlGODdyeHEvdnZqcGQzanJhY1QvYkZ3OVhsSk5tVkdtUktpdHpaVVhXNmYwNERZQngzdTBmOWxmcXFsWmE1a3J6Vk5ta1VKcW5Db0pRZng0Y09hMklxZXRhcnorZk9Kc2JHZzBqdmRweFd5MVNUQXFuQWJmVnlXbmZTbThjbnZidFlua0xQemFwYXVWbHJqUnZIdmJwYkZhMXF6R1lEK1UwQUtxNlZsRk5GSGU4N2xWWGxkSXlWMTRVU21lSHA5SXlWL0dEVTR2LzUraC9uQjh2UDd1K2NEWXlUNUwrMkR2VXdHRjFWbDNYK3M4bmx3RTMxTXNPeWlGUHpqNHM1RURlUTNTMXZOVjNkVjJycUFxbGVYTkdaMXlrU3ZQc2g4OFNIemwvRW1kNXFuaTA1dVJhMWJSU1VaVE5WNjc3QjMzeDR3ZjlqN3pvb0hsV21tZDZmM25xN0hwZGRFLzhmSE9wdTl6aDhKUGRsODdMSVM5dnZ1aHEzTzcrelRBSVplS216SEp6ZFgxcDJ5SXNpMGxWenQ3b2M0MkxySG11ZUw2cThTdnVBNkRJdGI3Z0FKaE9wOHErZmQzS2xCZUZzaUtmcTgzdXFsM1IzdnJXQXUveTE2cHBwZGNPKzk4bmtYSGVQVEhOTTMxd05CTldrdlkzdHJVMmNsc09XVXdLdmIxWTNHbmYvNTVOUFlwTTB4M1hjWHVIdnFpcmV0WWRONTB0Q1RjdmtGWGxwbGpCSmVjQk1KNXowNk91YXQya1g1dS9sTW5zamI0b0ZscGlGNGFoanZmZEQ1UCtjSEhtdEZMcWVQK2wrOU8rcHc0RExqWTYySEkvMi9mMTZmdEhyL1hHdzBnMnNzMkoyZml2QTFUTXBsNjhiOHMzUmE0MHk1cVh5RjkweDMxcW5BZEFPbWNBVk5PcC90OXB1OU9GWHU0OGQvNTEraWE5MDltMW01RjVrdlJpYTkvNTh0Ykg4MU9sanNvaG0zWVdiamZ2cFdaNTYydjI2LzJiUVRCUUVzZEs0a1NKTlVyaVJDYU9uYy9wN1l1L3V1Tm0zMVlLMGlMVGROcDFQODV1ZGJJRVZOZjFvOSt1bytGQTBUQmFhSnZaNzIyT25tbmJjU1ZGVmJtdEZsbEpWcHozaHI5SnYrcXp5OU8rVy92TzIxbjhhSGtyVUNBYngwcWladm5HMnFZVk9vZWwybkZmNE5HOHplZEtaOHM0OThPTjhIZk9BMkE2blNxZkZIUFZLaWV4YlNVQWh1RlFSeDJNQlh4M3R0aSs2VDh6Q0VQOXVlZDJlYXNKdVBmT3JyZHFWN1RUd2Y3Tmg0dFBXaCt0eVVaV0kyTmtqVkVTV1E1bHRhQVpibFEyZTMxbHFqUXJtcGtYanNaclBoV2RmTi9NaW55dUFCaEZWamU2WGVBZE5mN1lPM0krVFBycTY3VXVIWjcyUGVwZ2VldnQrWHVuQWVlNm5ZWFVMT244cnhmSFRxL1pGK1drVkY3TTN1akxWT084VUpabnZ6M2NDUC9VV1FETUk3RldXdkF6YzNkOVM4OVdIUGVHbjVSNjY3QTMvT2FLKytXdHk2OWZkT1h3dE8vTG5SY3NyeXlwYjJYYmVUWXJzMHlWNVptelZpRjkxRWtBekZzN2E2UEZkdEV6a2RHaDQybGxkVjNyemVtSnFxbWJIKzRvSE9qSThWakFmRkxxWGNzelliKzNzZnBNVzJzYnpxNkh4eXNtemVHcDhleVViRk8remZLTmE1MEV3SGpPbmtBbWloVUV3VUoyOEFNRk90NDdkRDZuNFB5QjFTS0xjcnp2ZG5tcnJtdTkvZnpPM1duZk1OTExiZmY3Ti9pNWNsSTFvMHBucDJTem9xbXZkOVVaRlQvWFNRQVVrMUoxVlN0ODVOaTNNQXhsSTd1UTVuSUhXM3Rhc2FPNVArZDNqSXZVNlduZjNXZmJXbk4wK3ZyZStjMmxibE9IcDMwUERwM3YzK0F2MCtsMGR0cisva0ZmS0MxU2xST3FiM3pXV2RGeFd1WmFtV000ek1qTUh3QXJOdEcrNDNMSTZYU3FONS9lTzZzL05ySFJDOGU5NFYwSDNONzZsdFljdDdQb3MzeFNLaXRTamZOYytleVVMSzNlbDFOM0FaQm5XckZ6QkVCc05NK1F4RUNCam5mZFY0dDh1RHhWV3JycEgzTC9aM1I5MnZmTmFYc0JaNGRHeGhpTlpxZGxiWlFvSG5KNHFnMVZQVkZhRk1xS1ZHblduSkpOeTl6WnNoN2ExMTBBRktta3gxZWt6SHVLOWVYZUN4bkhJOW0ranIvcTlJdkQwNzdidTNPRjdHTjh2RGliKzdTM0pBMEhROW5ZYWhURjN3YUltOWc0UDluYkIvZTl0UDdxWnRsc3lyb3EzVVYzT2d5QU9VdEI1empsdVRGYWQ5NDN2YW9uZW4zbThEQ1VTYlM3dnVQc2VwSjBPNzdUNTk5c1p4RklzbkdpSkc3YUlZeHMwK2hzT0tDVXN3MWwyZlMrR1plNXNuejJzSGYwalJUKzZYQVBZTDRmdXNIZ2NTMGhodUdnazk3d2I4OC9PZXNSM2pTemM3dTgxUVRjenh1OW1TaFNFaVd5WnRib3pCaEZnNGdlOWkyWTFCTmxlZDYwUlNneWpiT21Fc2RWMlRHV1EyY0JVRldWaW5LaU9IcjhMU1RSNzdlRU9ONDdVdVQ0b05EVjdiV3Vicjg0dTk3UjlndkZDejRyOFN2dnpqNStxL2dZaEtGR3hzNGFuRm10R0NzN05JK3Urc0svbTlhelZ1akZyTlN5ekpSbHVZcXE2UHJXc0FRNjNUMUxpMHh4OVBqcWpaR3h1a2tmM2hKaVozMVQ2eXR1eXlITHN0Q2JjM2RMUDg5VzFyV3o3dll3VkZrV0dwbEVXMnNic2pHYnNtMHBKaE9sZWFhc1NKdXVsck9HWjMzdmFJbkg2emdBMHJuYUwvek9SckFkR2gxdHVWLzZlWFAyd2RrYzBHRTRkRDdiVjVLaUtOYmVodHY5aHFmc2ZqYjF1TWlhZGZxaVdhK2ZUS20rd1dKMUdnRDVuTlVpbzk4SWdPT0RJK2RMRUordnozV1RmblYydlQ4NldON0M0OTBQSk1ueXBwUGxlUFptMzZlQkpPaFd0OThBNWh3T0VnMGloUXAvMlJYdytlYStSc1p0T1dTVzV6bzVkemY2Y0dkOTIza3pPenpjcENxYm5qZDVOdXVCa3lrckdVaUNiblVhQU9NOG0yczRUQmlHc25IODB6R1RLemJSL29iNzA3Ni9xb2hacEdaNXkrMXBYL3hZWFZYS0pvWEdXZk0yUHk2YUExUWNub0tQT3QrdHk4dGlya05kaVVuK05RQ0NJTkFmdXkrZGx4bCt2UGlzOFp3ZFQzL0g4WUg3Wm5aOVY5ZTF5bXJTTE50aythd2RRci9teVdMNWRSNEFXWkhQRlFBamsramk5dXFILyt4bzU0VnM3SGI0eVcxMnAwL1haNjFmSnd4REpiSFIxdHFXUnNadE03dSttVlNseHNWL3paUE5VL3BaWXVsMUhnQnBrV2xUeng3OTcvOWJlS3l2ckdsMzNlMXAzMGs5MFp2VHhjLzJOWkhSS0xaTmE0VFlLREhHZVoxL0gxVFRTbGxlS0pzMU44dnlUT004MVlTQkpIaWlPZytBOFp3bmduLzBoajhjREhYY3dXemZremxQKzBiaFFJbWR0VVdJRXRuWUtqR0dtYklMVnRlMXlrbXpLWnVWcWNaRnJpekxtU2VMM3VrOEFQSnN2bCs2WVRoVVBJai9kdkx4MWU0TDU3MWt2dHpkNlBLQnAzMkRJRkFTR1kxc29pUXlzbkh6c0tlZi9lS1ZrMHI1Yk9wVU0yYXcyWlNsK2did0lRQ3FZcTdoTUZKekhxQVlOd0d3dmI2cGpaWDFSZDNlZ3hUbFJLOC8vM2pwNTc1OWNXS2E1WnY3OXNYMHYxbXMrM215ZjNXelRKWGxoY3FhVFZuZzMzUWVBRkl6UUdRMVdYbjB2MitOa2NaTnM3R1huWnoyZmFjd0NMVmlFMW5UTkRsTElpTnJhRi9jaG1KU2FEeDd5RE5QRm5nOEx3SWdMZks1QXVCK0kvaDQ3NVh6MDc3VDZWUi83aC9SdnJnRlZUM1JPTS8vTms4MkxUSm5yVFdBcDg2YkFKaEhFbGtkYkxnZmZpSTE2L2s4L09menQzbXllVDZyd21HZUxOQTJQd0pnN2tvZ28rZWJuSVJkQnZmelpMT3NlWnRQeTB4WlVXaEtWVDNnbkJjQmtHZnpEWGVYcENDa1ZOSW5WVDFSVmhUTk9qM3paQUV2ZVJFQWsybXRzaXdVUlc1UDdXSiswM3FxdkN5VWxrMDN5M1RXRm9GNXNvRC92QWdBU1JvWGhaNFJBRjc3ZnA1c1dtVEtzb3g1c3NBUzh5WUFzam1IdzJCeEpsV3RiRlppbVpYTlBObTBwUG9HZUdxOENZRHhuTE1COFB2cXVsWmVGdC9LSzhkbHBqekxsVE5QRnVnRmJ3SWdjOWcrdVkrS3lVUlprV3FjWjhxTDdGdGJCQUQ5NVU4QWxMbW05WlJxbnBiRXc2SGk0WnJXUjJ0ZDN3cUFuemkvdWREYnM0OU9ydVZOUTVycHRLa21BUUM0NFUwQVNQTWZDQU1BUEp4ZkFmQ1QyYjRBZ01YeUt3RHkrVThFQXdBZXhyTUFZQThBQUZ6eEtnQ0txdENrNHJBUkFMamdWUUJJVWw2d0RBUUFMbmdYQUp3SUJnQTN2QXVBakVvZ0FIREN1d0JJYzc0QkFJQUwzZ1hBaERHQUFPQ0Vkd0V3RGFnQ0FnQVh2QXNBQUlBYkJBQUE5SlIzQVRDZGRuMEhBTkFQM2dXQXBzd0RBQUFYL0F1QWdLOEFBT0NDZHdIQTR4OEEzUEF1QUZnQUFnQTN2QXNBdmdFQWdCdmVCWUE0QndZQVR2Z1hBQ1FBQURqaFhRQk0yUVVBQUNlOEN3Q2Uvd0RnaG44QkFBQnd3cnNBbUU3WkF3QUFGN3dMQUFXc0FRR0FDOTRGd0pSdWNBRGdoSGNCQUFCd3c3c0FDT2dHQ2dCT2VCY0FkQU1GQURlOEN3QWUvd0RnaG44QlVCTUJBT0NDZHdIQVNXQUFjTU83QUdBVEdBRGM4QzRBcG13Q0E0QVQvZ1VBQjhFQXdBbnZBaUNnRlFRQU9PRmRBUEFOQUFEYzhDNEFBQUJ1RUFBQTBGTUVBQUQwRkFFQUFEMUZBQUJBVHhFQUFOQlRYZ1pBWFRNWEdBRGE1bVVBQUFEYTUyVUFjQm9ZQU5yblpRQUFBTnJuWlFEVVlnOEFBTnJtWlFBQUFObzM3UG9HZmlTb0EyblE5VjEwNS96bVFtL1BQblo5RzBBbmR0WTM5V3Izc092YjZBVytBUUJBVDNrWkFPd0FBRUQ3dkF3QUJVUUFBTFROeXdEZ0ZBQUF0TS9MQU5DVUNBQ0F0bmtaQURWVElRR2dkVjRHQUFDZ2ZWNEdRTUFtTUFDMHpzc0FBQUMwejhzQXFLa0RBb0RXZVJrQVloTVlBRnJuWlFBRVUvWUFBS0J0WGdZQUFLQjlYZ1lBNThBQW9IMStCZ0Nid0FEUU9pOERJR0FYR0FCYTUyVUFhRW9BQUVEYnZBd0FudjhBMEQ0L0E2RHJHd0NBSHZBeUFJS0FUV0FBYUp1WEFjQjNBQUJvbjVjQk1DVUFBS0IxZmdZQXozOEFhSjJYQVJCd0ZCZ0FXdWRsQUFBQTJ1ZGxBRXdEMW9BQW9HMStCZ0Nid0FEUU9pOERnRDBBQUdpZmx3RUFBR2lmbHdGQUdTZ0F0TS9QQUdBUEFBQmE1MlVBQkZRQkFVRHJ2QXdBTVJFTUFGcm5hUUFBQU5ybVpRQ3dDUXdBN2ZNMEFPcXVid0VBbmp3dkE0QWRBQUJvbjVjQklDYUNBVURydkF3QXRnQUFvSDErQmdDN3dBRFFPaThESU9BN0FBQzB6c3NBNFBrUEFPM3pNZ0NtMUFFQlFPdjhEQUI2QVFGQTY3d01BTjcvQWFCOVhnWUF2U0FBb0gxZUJnQ1Bmd0JvMzdEckcvaVJhYzluQXUrc2IydG5mYnZyMndEd3hIbjVEWUJ6QUFEUVBpOERnRjFnQUdpZmx3SEFUR0FBYUorZkFkRHpQUUFBY01ITEFPRHhEd0R0OHpJQU9BY0FBTzN6TWdCNC9BTkErL3dNQUhvQkFVRHJ2QXlBZ0YwQUFHaWRsd0hBR2hBQXRNL0xBT0FjQUFDMHo4OEFvQW9JQUZyblpRQUVBWHNBQU5BMkx3TUFBTkErTHdPQVBRQUFhSitmQWNBZUFBQzB6c3NBQUFDMHo4c0FDT2dHQ2dDdDh6SUE2cTV2QUFCNndNc0FFTDJBQUtCMWZnWkFUUUFBUU51OERBRE9nUUZBKzd3TWdKcHVvQURRT2k4RGdJbGdBTkErUHdPQUx3QUEwRG92QXlDZ0ZRUUF0TTdMQUFBQXRNL0xBSmh5RWhnQVd1ZG5BTEFFQkFDdDh6SUFPQWdNQU8zek1nQ1lDZzhBN2ZNeUFLWWNCUWFBMXZrWkFMUURCWURXZVJrQUFac0FBTkE2THdNQUFOQStMd09BbWNBQTBENC9BNEJOWUFCb25aY0JFREFVRWdCYTUyVUFxT1liQUFDMHpjc0FtRklGQkFDdDh6TUF1cjRCQU9nQkx3TkFkQU1GZ05aNUdRQkJ3Q1l3QUxUTnl3Q1lzZ2tNQUszek13RFlCUUNBMW5rWkFBeUZCNEQyZVJrQUFRa0FBSzN6TWdEb0JRUUE3Zk15QVBnQ0FBRHQ4eklBMkFRR2dQWjVHUUFCWmFBQTBEb3ZBNkRtSUJnQXRNN0xBS0FLQ0FEYTUyVUFVQVFFQU8zek1nQVlDZzhBN2ZNeUFHcTZnUUpBNjd3TWdHREtKakFBdE0zTEFHQW9QQUMwejhzQTRQRVBBTzN6TWdCcTlvQUJvSFZlQmdCVlFBRFFQaThEZ0c2Z0FOQStMd01nb0F3VUFGcm5aUURVTEFFQlFPdThEQUI2QVFGQSs3d01BUFlBQUtCOVhnWUFWVUFBMEQ0dkE2RGkrUStncDJxSEt5QitCa0JkZFgwTEFOQ0pTZTJ1RjVxWEFWQVdSZGUzQUFDZEtFcDN6ejh2QXlBdGM5VVYzd0lBOUUrYVo4NnU1V1VBU05MWGZOejFMUUNBVStXa1ZGb1FBUHB5ZDlQMUxRQ0FVOWRqdDg4OWJ3UGc0dWFMS3BhQkFQVEkyZldWMCt0NUd3QlRUWFY2ZmQ3MWJRQ0FFOWQzdDA2WGZ5U1BBMENTVHIrY0t5L3lybThEQUZwVlRTdTlPLy9nL0xwZUI4QjBPdFhyc3hOTm1SQUQ0QW43Y0hHcVlsSTZ2NjdYQVNCSmQxbXFkeGZ1a3hFQVhMaTR1ZFRaOVdVbjEvWStBQ1RwL09aS0p4Y2Z1NzROQUZpb3k5c3ZlblBXM1F0dUlHbHAxbGUyVnAvcDFjNmh3c0ZTNUJZQS9GQmQxenI5Y3FHUFY2ZWQzc2RTQllBazJhSFJxOTNuV2gydGRuMHJBUERic2pMVHU3TVB1azI3UCt5NmRBRndiMzIwcHYzTkhhM1psYTV2QlFCK0tjMHpuZDJjNitMbVdsTlBIcnRMR3dEMzRtR2tqWlYxcmRvVjJjZ29pZ1lLRkNvTVdTWUM0RjVkMTZxbjBxUXFWVXp0NE5ZRUFBQUEra2xFUVZRS2ZVM0h1aDUvVlZxa1hkL2FQeXg5QUFBQUhvZlhaQURvS1FJQUFIcUtBQUNBbmlJQUFLQ25DQUFBNkNrQ0FBQjZpZ0FBZ0o0aUFBQ2dwd2dBQU9ncEFnQUFlb29BQUlDZUlnQUFvS2NJQUFEb0tRSUFBSHFLQUFDQW5pSUFBS0NuQ0FBQTZDa0NBQUI2aWdBQWdKNGlBQUNncHdnQUFPZ3BBZ0FBZW9vQUFJQ2VJZ0FBb0tjSUFBRG9LUUlBQUhxS0FBQ0FuaUlBQUtDbkNBQUE2Q2tDQUFCNmlnQUFnSjRpQUFDZ3B3Z0FBT2dwQWdBQWVvb0FBSUNlSWdBQW9LY0lBQURvS1FJQUFIcUtBQUNBbmlJQUFLQ25DQUFBNkNrQ0FBQjZpZ0FBZ0o0aUFBQ2dwd2dBQU9ncEFnQUFlb29BQUlDZSt2L3hvOG42S2xCbnFBQUFBQUJKUlU1RXJrSmdnZz09XCJcclxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxLDAsMCwtMSwwLDEpXCJcclxuICAgICAgICAgICAgICAgIHByZXNlcnZlQXNwZWN0UmF0aW89XCJub25lXCJcclxuICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgaGVpZ2h0PXsxfVxyXG4gICAgICAgICAgICAgICAgd2lkdGg9ezF9XHJcbiAgICAgICAgICAgICAgLz5cclxuICAgICAgICAgICAgPC9nPlxyXG4gICAgICAgICAgPC9nPlxyXG4gICAgICAgIDwvZz5cclxuICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgaWQ9XCJwYXRoMzU0XCJcclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXHJcbiAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXHJcbiAgICAgICAgICB9fVxyXG4gICAgICAgICAgZD1cIm0gNzkyLjUyLDQ5NC44MiAtMS41NSw0Ljg0IC0yLjg1LC0wLjkxIGMgLTEuODUsLTAuNTkgLTIuOTcsLTEuMDQgLTMuMzgsLTEuMzQgLTAuNDEsLTAuMzEgLTAuNjksLTAuNjkgLTAuODMsLTEuMTUgLTAuMTMsLTAuNDcgLTAuMTEsLTAuOTkgMC4wNywtMS41NiAwLjIxLC0wLjY0IDAuNTQsLTEuMSAxLjAxLC0xLjM5IDAuNDcsLTAuMjggMS4wMywtMC4zOCAxLjY5LC0wLjI4IDAuMzMsMC4wNSAxLjI3LDAuMzMgMi44MywwLjgzIHogbSA0Ljg4LC0xLjk5IC04LjExLC0yLjU5IGMgLTIuMDMsLTAuNjYgLTMuNTcsLTAuOTYgLTQuNiwtMC45MSAtMS4wMywwLjA1IC0xLjk3LDAuNDIgLTIuOCwxLjEyIC0wLjg0LDAuNyAtMS40MywxLjYxIC0xLjgsMi43NCAtMC40NSwxLjQzIC0wLjQxLDIuNzQgMC4xMywzLjk0IDAuNTUsMS4yIDEuNjIsMi4xOSAzLjIxLDIuOTcgLTAuOTksMC4yMiAtMS44NCwwLjUzIC0yLjU3LDAuOTQgLTAuNzMsMC40MSAtMS43OSwxLjIxIC0zLjE4LDIuNCBsIC0zLjUyLDIuOTcgNC42MSwxLjQ3IDQuMSwtMy4yNiBjIDEuNDcsLTEuMTYgMi40NCwtMS44OCAyLjkzLC0yLjE1IDAuNDksLTAuMjcgMC45NiwtMC40MSAxLjQxLC0wLjQyIDAuNDUsLTAuMDIgMS4xMiwwLjEyIDIuMDEsMC40IGwgMC43OCwwLjI1IC0yLjU1LDcuOTYgMy44NSwxLjIzIHpcIlxyXG4gICAgICAgIC8+XHJcbiAgICAgICAgPHBhdGhcclxuICAgICAgICAgIGlkPVwicGF0aDM1NlwiXHJcbiAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxyXG4gICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcclxuICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAgIGQ9XCJtIDc2OS4wNiw0ODQuNTcgLTE0LjU0LC0yLjk2IC0wLjY4LDMuMzIgMTAuNTgsMi4xNSAtMC44OCw0LjM1IC05Ljg1LC0yLjAxIC0wLjY3LDMuMzEgOS44NCwyIC0xLjA4LDUuMzQgLTEwLjk2LC0yLjIzIC0wLjY3LDMuMzEgMTQuOTEsMy4wMyB6XCJcclxuICAgICAgICAvPlxyXG4gICAgICAgIDxwYXRoXHJcbiAgICAgICAgICBpZD1cInBhdGgzNThcIlxyXG4gICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcclxuICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXHJcbiAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcclxuICAgICAgICAgIH19XHJcbiAgICAgICAgICBkPVwibSA3NDEuNTUsNDc5LjcxIC0xMy42NSwtMS4zNSAtMC4zNCwzLjM3IDkuNjQsMC45NSAtMC40Nyw0LjcxIC04LjMxLC0wLjgyIC0wLjM0LDMuMzcgOC4zMiwwLjgyIC0wLjg0LDguNDcgNC4wMiwwLjM5IHpcIlxyXG4gICAgICAgIC8+XHJcbiAgICAgICAgPHBhdGhcclxuICAgICAgICAgIGlkPVwicGF0aDM2MFwiXHJcbiAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxyXG4gICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcclxuICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAgIGQ9XCJtIDcxNS4yMSw0NzcuOTMgaCAtNC4wNCBsIC0wLjAxLDE2LjQ4IGggLTEwLjA1IHYgMy4zNyBoIDE0LjA5IHpcIlxyXG4gICAgICAgIC8+XHJcbiAgICAgICAgPHBhdGhcclxuICAgICAgICAgIGlkPVwicGF0aDM2MlwiXHJcbiAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxyXG4gICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcclxuICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAgIGQ9XCJtIDY4OC44Myw0NzguNCAtMTQuNzcsMS41IDAuMzQsMy4zNyAxMC43NSwtMS4wOSAwLjQ1LDQuNDEgLTEwLDEuMDIgMC4zNCwzLjM1IDEwLC0xLjAxIDAuNTUsNS40MiAtMTEuMTMsMS4xMyAwLjM0LDMuMzUgMTUuMTUsLTEuNTQgelwiXHJcbiAgICAgICAgLz5cclxuICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgaWQ9XCJwYXRoMzY0XCJcclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXHJcbiAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXHJcbiAgICAgICAgICB9fVxyXG4gICAgICAgICAgZD1cIm0gNjUyLjUsNDgzLjM5IGMgLTIuMzksMC41MSAtNC4xOCwxLjYzIC01LjM4LDMuMzYgLTAuNzEsMS4wMyAtMS4xMiwyLjM3IC0xLjIzLDQuMDMgbCA0LjExLDAuMSBjIDAuMDEsLTEuMDYgMC4zMiwtMS45NiAwLjkzLC0yLjcxIDAuNjEsLTAuNzQgMS40NCwtMS4yMiAyLjQ5LC0xLjQ1IDEuNDUsLTAuMzEgMi43NCwtMC4wNCAzLjg3LDAuODEgMS4xMiwwLjg1IDEuOTMsMi40NCAyLjQzLDQuNzcgMC41MywyLjQ4IDAuNDYsNC4zNCAtMC4yMSw1LjU4IC0wLjY3LDEuMjQgLTEuNzEsMi4wMSAtMy4xMywyLjMxIC0xLjA2LDAuMjIgLTIuMDMsMC4wOCAtMi45MywtMC40MiAtMC45LC0wLjUxIC0xLjY2LC0xLjQ0IC0yLjMsLTIuODEgbCAtMy41NywyLjAzIGMgMS4wNCwyLjAxIDIuMzUsMy4zOSAzLjk0LDQuMTQgMS41OSwwLjc1IDMuNDMsMC45IDUuNTMsMC40NSAyLjYsLTAuNTYgNC41NSwtMS45IDUuODUsLTQuMDMgMS4yOSwtMi4xMyAxLjYxLC00Ljc0IDAuOTYsLTcuODIgLTAuNywtMy4yNiAtMi4wOCwtNS42MSAtNC4xNCwtNy4wNSAtMi4wNywtMS40NSAtNC40NywtMS44OCAtNy4yMiwtMS4yOSB6XCJcclxuICAgICAgICAvPlxyXG4gICAgICAgIDxwYXRoXHJcbiAgICAgICAgICBpZD1cInBhdGgzNjZcIlxyXG4gICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcclxuICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXHJcbiAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcclxuICAgICAgICAgIH19XHJcbiAgICAgICAgICBkPVwibSA2MzMuNzQsNDg4LjM4IC0xNS4xMiw0LjkzIDEuMDUsMy4yMiA1LjYzLC0xLjgzIDUuMTYsMTUuOCAzLjg0LC0xLjI1IC01LjE2LC0xNS44MSA1LjY1LC0xLjg0IHpcIlxyXG4gICAgICAgIC8+XHJcbiAgICAgICAgPHBhdGhcclxuICAgICAgICAgIGlkPVwicGF0aDc0MFwiXHJcbiAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICBmaWxsOiBcInZhcigtLW91cmJlaWdlKVwiLFxyXG4gICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcclxuICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAgIGQ9XCJtIDU3OS4wNiw3MDguNiBjIDAsNjcuMyA1OC4wOCwxMjEuODYgMTI5LjcyLDEyMS44NiA3MS42NCwwIDEyOS43MiwtNTQuNTYgMTI5LjcyLC0xMjEuODYgMCwtNjcuMyAtNTguMDgsLTEyMS44NiAtMTI5LjcyLC0xMjEuODYgLTcxLjY0LDAgLTEyOS43Miw1NC41NiAtMTI5LjcyLDEyMS44NiB6XCJcclxuICAgICAgICAvPlxyXG4gICAgICAgIDxwYXRoXHJcbiAgICAgICAgICBpZD1cInBhdGg3NDJcIlxyXG4gICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgZmlsbDogXCJub25lXCIsXHJcbiAgICAgICAgICAgIHN0cm9rZTogXCJ2YXIoLS1vdXJiZWlnZSlcIixcclxuICAgICAgICAgICAgc3Ryb2tlV2lkdGg6IDIuMDQsXHJcbiAgICAgICAgICAgIHN0cm9rZUxpbmVjYXA6IFwiYnV0dFwiLFxyXG4gICAgICAgICAgICBzdHJva2VMaW5lam9pbjogXCJyb3VuZFwiLFxyXG4gICAgICAgICAgICBzdHJva2VNaXRlcmxpbWl0OiAxMCxcclxuICAgICAgICAgICAgc3Ryb2tlRGFzaGFycmF5OiBcIm5vbmVcIixcclxuICAgICAgICAgICAgc3Ryb2tlT3BhY2l0eTogMSxcclxuICAgICAgICAgIH19XHJcbiAgICAgICAgICBkPVwibSA1NzkuMDYsNzA4LjYgYyAwLDY3LjMgNTguMDgsMTIxLjg2IDEyOS43MiwxMjEuODYgNzEuNjQsMCAxMjkuNzIsLTU0LjU2IDEyOS43MiwtMTIxLjg2IDAsLTY3LjMgLTU4LjA4LC0xMjEuODYgLTEyOS43MiwtMTIxLjg2IC03MS42NCwwIC0xMjkuNzIsNTQuNTYgLTEyOS43MiwxMjEuODYgelwiXHJcbiAgICAgICAgLz5cclxuICAgIHsvKiAgICAgPGcgaWQ9XCJnNzQ0XCI+XHJcbiAgICAgICAgICA8ZyBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGg3NTApXCIgaWQ9XCJnNzQ2XCI+XHJcbiAgICAgICAgICAgIDxnIHRyYW5zZm9ybT1cIm1hdHJpeCgyNDguNjQsMCwwLDIxNC41Niw1OTIuNTYsNjA4LjA0KVwiIGlkPVwiZzc1MlwiPlxyXG4gICAgICAgICAgICAgIDxpbWFnZVxyXG4gICAgICAgICAgICAgICAgaWQ9XCJpbWFnZTc1OFwiXHJcbiAgICAgICAgICAgICAgICBtYXNrPVwidXJsKCNtYXNrNzU0KVwiXHJcbiAgICAgICAgICAgICAgICB4bGlua0hyZWY9XCJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQXJJQUFBSlVDQVlBQUFEcFpNVWZBQUFBQkhOQ1NWUUlDQWdJZkFoa2lBQUFJQUJKUkVGVWVKenMzVm1RTE5kOTUvZnZPU2N6YStudTIzY0hMdmFOSkFnUUlFQVNBRW1Bd25DVHFDRWxjYlJOYUt3WmV5THNONy80eVM5K2NJUWZ4dlBnQ01jNFloeXlyQmc1cE5EWTBnUkZDdUlHaWlDeDd5QUlFTHpFUnV6QUJlN2UzYlhrY3M3ZkQ1bFpsVlZkM1gwWEFQZld2ZjhQSXBIZGxiVmtWZGV0K3RXL1R2NlBBUVNsbEZKS0thWG1qRDNUTzZDVVVrb3BwZFNwMENDcmxGSktLYVhta2daWnBaUlNTaWsxbHpUSUtxV1VVa3FwdWFSQlZpbWxsRkpLelNVTnNrb3BwWlJTYWk1cGtGVktLYVdVVW5OSmc2eFNTaW1sbEpwTEdtU1ZVa29wcGRSYzBpQ3JsRkpLS2FYbWtnWlpwWlJTU2lrMWx6VElLcVdVVWtxcHVhUkJWaW1sbEZKS3pTVU5za29wcFpSU2FpNXBrRlZLS2FXVVVuTkpnNnhTU2ltbGxKcExHbVNWVWtvcHBkUmMwaUNybEZKS0thWG1rZ1pacFpSU1NpazFselRJS3FXVVVrcXB1YVJCVmltbGxGSkt6U1VOc2tvcHBaUlNhaTVwa0ZWS0thV1VVbk5KZzZ4U1NpbWxsSnBMR21TVlVrb3BwZFJjMGlDcmxGSktLYVhta2daWnBaUlNTaWsxbHpUSUtxV1VVa3FwdWFSQlZpbWxsRkpLelNVTnNrb3BwWlJTYWk1cGtGVktLYVdVVW5OSmc2eFNTaW1sbEpwTEdtU1ZVa29wcGRSYzBpQ3JsRkpLS2FYbWtnWlpwWlJTU2lrMWx6VElLcVdVVWtxcHVhUkJWaW1sbEZKS3pTVU5za29wcFpSU2FpNXBrRlZLS2FXVVVuTkpnNnhTU2ltbGxKcExHbVNWVWtvcHBkUmMwaUNybEZKS0thWG1rZ1pacFpSU1NpazFselRJS3FXVVVrcXB1YVJCVmltbGxGSkt6U1VOc2tvcHBaUlNhaTVGWjNvSGxEb2RadFBQWW1IR2FiWTZYZGZ2eDFwTzYvSmpCcEFQZlQzcithR1VVbXFlYUpCVmM4dGdpVTJDRjZFT3JXVkFFUUM2N1M3OVlYL3FVbGJYNytNNm5QYjFtTkZ2cHhhSFpkUHRFWlpnd0dFSUJxelFXQWU4NUdCQUF1T1VPNE56cnJ5L0lTQWlHT053emhGQ0lJVEpRR3lNd1Jnek92L0dORWdycGRUcDJ1U2xXNm16V3hsa1kwU2tDaFVGUVFKbHBWQncxakVPQ3pxSzVvUGdSUkFEUnBpNXRwZ050NWNzWUtjQzVvbXVBeWJJcHVkRHdpWkJOMkFzU0xVdk11T1YwTGs2a0lKTW5NRmlqQmtGM0luSHhPZFQ1MzAvYkJUVmxWTHEvS1pCVnMwMVU2L041QlBabU5uQlJMMS94R3g5bnMydllQempSa0g0aE5mTUhrSmd6ZXpUa2ZHNnlWcUx0WFpVVlMyS1lyU3RXVjIxMXVLY0k4L3owZS9HR0VSa2RoVjJvOGRxSXRCdlpxTWdxMkZXS1hWKzB5Q3I1bHJjc2hRK0lBR2lHSW9DcklWdU4yRnROY091TDVpcDk1SEk2UVhhcmVMYmlYNFkyYmdpdlA3MHdMZ2lIRWNkSkZoRVpCUkNSY0pvZUVvcFlJekIydkg1Sml1dTY4T2tpOEE1UzVadEVtcWxXalo5RkxaNmhEVE1LcVhPYnhwazFmd3lnSXZMdEJOQ1dZWUZFTUVsQ1Q0YmNxWVBoanFuMStaMHI0Y1RDSEtiYVFTNFV6bmlDd3ZFUVBQVFR2bHlhTEVZSTNqeGs3Y3pGUnFkclI4SEVQR2prR3RzK1hTY0tNNU9CLzVOZyt4R2owbnpTdXF4NFJwa2xWTG5MdzJ5YW81RlFKdW91NDJpMzRjb3drVXQvSEJRbHNSOGdaWmtQMkFpRzM5dFhtL2YxQlloVmpZTGFYVXEzZVRhNDNoVVBSV1J5UUd4QXBGTnltcXRDUFYvNVJqcjhuWmo1OGg5ampBT3RNNDRvaWpDV3NNZzdZMU90Nlk4S0V3azRFT09pQzl2YTNvWFQ3b2l1NzdMdzVnR1dhWFUrVTJEckpwakhhNjc0Y3Q4ODV2L0N1OEY3ejN0ZHBlVmxSVTY3UVdLb2lDS3BocHptS2szZmRHRHdFNlZtT2tEb0dhY1o2c2dHMDd2OHRXaFdCdHV6L044SXNnMkYwdWczenVPenpLR3d5RzkvaXE5WG85ZWI1WEJvRWRSRkx6OXpsdmtlVTZlcHhRaHF3SnVmWHVCZGh5VDVVTkNkYnJGNHB3bGhLTHNpRUJnWGVWMHVxaTZxUk1Kc2tvcGRmN1M5bHRxamptS29zdEhQdlpaRnJwTHJLNzJXRnhjb3Q4YjB1bDBTTk44NnFqeU9raFU2NGtRZXhaOFZUK0hheEdEbUlBUk8zTk4ySGg3ZVhuWnRCNjVlZnNxcWlDODhYbXNMYTk5T3NTS0NBYkJoQUdXb21xWEZhcTFZT3o0ZXIzUFNiTUJnMEdmMWRWVkRoODV5TUdEQjFsZFBjN3JyLzJhSTBjT2NmRGdRWHJaYW5rSkQrVkxhOFE0d0RiQzdLakt2TkcrenhyS29JRlZLYVZtMFNDcjVsaEVDQWx4dElNME5TVEpEdkxNNFZ5TEVCSU1IZ2xUMytzYW1mcTZ1aDZyZVRxSHpKL2ZhMEV3WWdnU3NHTHdsT3RnQklmZGNEdEdSZ2RmYldTclBxek5FRHd4aEdCMCtVMjJTMEZFZ3FXb3VoaUVjaTBlOGFINndDTVlXclNUTHExNE85dTN3U1VYZmFSNkxnV01CSXdWaXFKZ2JXMkZkOTg5d0d1dnY4THJyNy9La1NPSGVQR2xYK0ZEanBlY1FNRmtlQzJBbkNyNVRyRFcwbXExeUxKaEZiekRxSkk3VWFUZW9LSmJEbjJ3WkZtMnllT25sRkx6VDRPc21tdkJRREMyZW5PM0dHTUpHQUtPZ01Hc0c2QVltRHpxcDRwQ296NWV1ajZWZGRtejFVeXVnVkJQRExEQmRndVlUYVBzWm1OZzNXUVByYzBhd3M3Y0hvRTR5Z08rR0gvQUVWK0dXR2tPQjVEeTlIbzdnQW5rV2RrWkk0b1cyTFZqTzd0MlhNSzFIN3NaNzNOQ0tHaTFZOTU3N3dBdnYvd1NMLy82UmQ1ODgzVU9ISGliUThjT0VVaUJGTWlyY2JmbGM5R0huTUpuREFZWkU2Ty9CSXdGNXhySE5ZYkdjeGd3eGhCQ21HZ2JwcFJTNXpJTnNtcU9CVEE1WWdkbEN5aUpnQml4Z2hpRDJEQit4eCtkdi9sVmJ4VUNkSnpzS1p1TW1USzFadXJ4bjk0ZXBzKzlqa3lQYVo2NDdlbHRNMjUvcyswQ1FreVFxUHJWVjJ0Ym5TV00rM1JKR0IyOFZWZDByUVE2N1FWRXl0bTlDdStyamdXQ05TMmNnLzVhbjI1N0R6ZCtZamVmL3RRZEdHUG85OWM0ZE9nUXg0Ni94eU9QL1pTMzMzbVYxOTU0alRRdks3YU9Ob25yNEVOR3F4VlQrSXdzSHdBQkNRRS9jYmVGdXFKYlQ5Qmd6R2JoWHltbHppMGFaTlVjQzJBeXNDa0V5K2d3Y0dQQjVHVUltUTZ5U0NQTVVvWmZzLzZyWFhVcVRqYkl3cFpqUHpjSnN1c3ZmNUpCbG1qeXJLTVBOUFdKdGpFTXhUUzJoNnFxTE9TWng1aHlMS3lJUThSVDVMNmN1bFlLZHUzYVZ4NG81c3V2K0syRnhXNlg1TUpsZHUvYXg3VWYrd1RHZWxaWFYzaitoZjA4OGNSanZQRGlmbFlIUnpFNCtzTzh2RzNhZ01jZ1dBcytGTlJqZXBzQnUxbUpkYzdodlQ2M2xWTG5OZzJ5YW83VjFhZ0NURDBkYlhuUURxWSswS1lSVGtZQk5rd0ZKSzNJbmpLWjlVdnp4QzBxc2xzRjFjMjJDOVU0MWMxdWYrUDlNMUIrNkJtOURJNnJyK3ZaeG5haERybEZMamhuY1M3R3VYSldNRXlvSmxid0hEbTh5dmdnc25KL3kxbkJGbGpzTHRIdVJCdzdkaGhIekMyZitpcGYrZUkzV1YwN3hpLzNQOFB6TC95Q3h4OS9tR0hhb3o5WUlmZER5cXBzZ1NGQ3lISFdFRVJtemtTbWxGTG5BdzJ5Nmh4U2pyZ2NEeGVvQWdkUVZ0SHNPRmRKNHpJNnRPQjljckpCOW5STnQ2VTYyWXBzL1hPeHlmYnB5MDkydW1oM0ZzcXYrMzFPbm1lamc5UHEzQnE4cGQxcDAya3ZZQjBVUlVHV1pYanY4WVd3dXRLbjFkck85bTE3Q0NIajhNRStRU0krZXMzTmZPSzZUL05IZi9DbnZQalNmaDU3L0VHZWVmWm5IRGo0SmdGSGJCeEpXK2dOamxCWHBlTTRKb3FpVVpqZHN1T0RVa3FkQXpUSXFqbG1LQS80aVNHNDhtZVM4b2g2aWN0aEExSzEzNnFPUUVmQytxRUY2clRZVWFGeWZkZUE1bmpObWR1M2FPaHZ0Z3BqcDNPd1YxWFJsV3FHc3NtSkU5Wi91QmxQbGxDdWpaUUhaaEdxZGw3VkdGWG5ITmFXMWRsMlc4anpqR1BIanBObEtTRUVraVNoMCttVUlkaW40QjBlTUtaRjdGb0lHU0lwZWVyeFljaFZWMXpQZFIrL2tTQVpiNy96Qms4KytTZ1BQSGcvYnh4NGdVNTdnY0h3R0ZEMnpHMjJteXVISGJ4Zkh4cVVVdXJzcE8vaWFyNkpwYXlTdVNxVXV1bzBWNFhXNlF2WThYRmVvOHVxVTJVbmN0SXBWR1NiZndzVFRuaHRwZTVuU3pVVXdGYmRCQnJyNmI2M2plMm11cDVBM2NlMlBnQ3c3bUl4RmFDcllHdXFHR3VRY3Rpc0NMWUtzQ0NFSUJSRmp2ZUJFRHp0ZGdlQUpFbG90MXRZVzg3OFZSU2VsWlVWNHFpTEx3eDVWaUI0akFtNHlCRkZYYXp4NUxrbDdmZnByL1Z4a2JCOThTSytkT2MzK055dFgyU1lIdWUvL1AxZjh1WmJ2K2JBZSsrVWUrYkJVSTZmSllEQlRrN2lNUDN2b2VyMnNibnhZOUhzOXlHTmhncEtLWFdtYUpCVjgyMmlDNEZ0TE5VMkE1UGRDbXFOSVFmcWxNMnErRFdQN3dwaHM0T05RaG1HVE4yOXdBT0MxRUZUeXBteXhtMnh4dXV5aFcwNUZuWFVHOWdJSnNqazc5S2NqR0M4dHBRaFZzVGdxM1FuQWxiTVZKL1d5UTRMOWZHRFZzcVdZaUtDcHd6SVVnZGxLMFNtN0pFVlF0bkt5MkFKdmlCNFB6cGY1QUFaNGx6WlVxdWVGbGZFNC9OUVBhTWRpVjBBMXkycnZrVTVpY1JpdkkzRmVDLy93My8zdjNENHlEczg4K3pQZWVpaEIvalZHOC9oS01yeHMzaUVnbUJ5TUZrOUsyOFp3S3NRNnF6QiszcElEclNTVGpuc3dSZU54Mng4L3kzbC9iWXl1VlVwcGM0VURiSnF6bTBRUkp0SG1KdXFFWDFkMFd1V3BiWThLbDV0YnFzb2M0SUhjNWt3K3FwLzFQcUs5V3NqNDkrTk1HNlB0ZEY2cWdwc1JhcHNLcU13T25GQTRBYWFsZWY2Wnl2Z3EvMjNNclcvWm1vOWRUL3E4NHR0QkgwWjcydTlSNmIrMWtESzdWYWFIeDRDcTBmWDJMTjhOYi81eFd1NDlWTjM4c3JyTC9MY0w1L21zU2NmNHIyVk4waE1UQ3JsOHo1T3lyQ2NWME9DZCs1czBWc05PQnVYbFdSZmtHWUR3R0tBSkVySWlwVG1JelQ5V0NpbDFKbW1RVllwcGVhVU5URnBDcmJ3dEpJbFBuck5EVng2eWVWODhzYWJlUHU5Ti9qTC8veG5MQ1M3eVlzZVdkWWprSk1rRnU4TGpoNUt5NnF2OWNSeERLWnUzMlVSSUMzeTZpTmZxT1pRbXg1dThTSGZXYVdVbWtHRHJGSkt6U1ZMSzFuQWU4OXdtQ0lTU0RveHk5c3VaSEZ4bVVzdXVZSlAzWHdyMy8vQmQ3anZ3WHVRTktiZGlWZ2JyT0VwY0VZb1pJaElJTXRTUkNDS3dUbERsdm9aeDh3MXg1VFhBMlEzUDFoUEthVSthQnBrbFZKcUxsa01DVWxzU1pJdVVCRHdaTU9NWVJvWXBvSk5Zdjd0Zi8zZjgvdi80ays0Njd2ZjRVZi85SDBFaURFWVUyQWpnekFrenowWUtBb29Dbzl6RUVJMTJtRTAxS002bUhJVWFBT1FvMEZXS1hVbWFaQlZTcWs1SldMSWN5R0VncUxJRU91SklzdENkenZMMjNhUWhTR3Z2M1lRS1BqNjEvNkkyei83UlI1NjVFRWV1UDkrRHZiZUlBU0RWTDJYcllGUWpkMzFIbG90U0ZQR3hWY0M0eURyWnUrUVVrcDl5RFRJS3FYVW5DcW5vQzE3MXJaYUxieDRnaFFNK2ptWWdpaHk3Rnk2Z01JUHlZY1plM1pjeHU5Ky9WS3V1K1pUUFBuemgzajgyWHM0dHZJT2VSZ1NHUU5SUVpZTlI5WFp5WFpkb2VvY1VZeC9WMHFwTTB5RHJGSkt6U2xqQk84TFJIdzVFWU96R0J6R2xOMFo4cXdjNitwY205aEZEUHNGSVFRdXVmaEtMcnZzTWo3NjhhdTUvK0VmODdObkh5WDNPZFlickJHQ3BHVWJ0YnBwN09qbnZPclhQTjJOUVNtbHpnd05za3FwRXpKclppN2JLTm5OMnI2Vms1bEdWYXBHcUJQWGJ6ZmZQcjEvTXJWOXNtWHMrdTFtYW50elBYMzdHKzV6ZFVQTnk0OG5HWk4xNXhXUmNkT3dNUGxZVGo2MEFVOEFWKzVub01ENDhuUkRPYk9YcVFhNyt1REx5UnR3R0dPclNlNE1IN255WnE2NStqcHUvY1VYK01mdmY0dTNEdjBhSkdMYndqTDk0Y3FvejIwY080WkRYejBnQmFadTc2dWRDNVJTWjVnR1dhV1VtbHZGNUsvclpyS0Q4WUZaNDQxR2dCQVRtd2lremFkdnZJUExML3NJRHo3MFQvejRwOStuMXpzR0pHeGI2TExhTzhMUWU0eUJKSUdzcUVLc3p1eWxsRG9MYUpCVlNxbTVGTlpQNkRFVkxFMnpoTnVZRzhLS0pRRHRlSUgrc0VlZVpWeTQ0M0orLyt2L0ZkZDk3SHJ1L3RGZFBQUHlrL1I3S1pZT1FWS1FRSlpXczRLTmJtRDliU3FsMUlkSmc2eFNTczIxalpMayt2S3NGVHNhd21ERmN1VGdFWGJzMklIUVl1WFlNYm9MQ1RkOTR2TXNMV3pub3NjdTQvNEg3bVlnSzVSVjNaUWd4ZWhhWFF4Ri9rSGNINldVT25FYVpKVlNhcTdOSEU5QUdUN3IwRnFPdlRWaUd3TnRMZHNYRnpDK3dEakxVbnVSUEUwNU5sampnbDFYOE1lL2Z3VlhYSG9WOXovOEkvYS84alFCdzBMTGttWXJCS21HQjJzMVZpbDFobW1RVlVxcHVXUkJOam5hVE1aQnRsUUgzbkc0WGQ2MnlPSERoeGtPaHl4dVcyTGJ3amI2dzRRMDdUUDBnZHMrY3llN2R1MWg5ME43ZU96Sit4aWs1ZGhaWjNOOEpqcXlRQ2wxeG1tUVZVcXBPUlZNR1dSdFkvd3JWSkZWN0dpTXJCRWFnMXVsT24vZ3dEdHYwTzEyNk81WUlpOENhOGQ3WUEzT3RDbXlsQXk0OXBxYldGNWVwcnV3d0JOUDNjdXh0WU9FTUFBeXRQMldVdXBNMjZKNWpGSkt6V1lFd2tiZmFuK0krM0NpN0l6eldwbGNZTncyMWN5NG5KSHgwcno4cWJLTmRYT3BiMnQ2UDVuYXR2NzJxMHZQck5TdUQ1M2JkKzdBV2t1YVozanZpYUtJS0lwb1JUSGQ5Z0tXaUVQdkhtVjdkeS8vOHZmL0cvNzRYL3hiZG5RdkJaWllUaTdFenFxRm1CbkxCcHVWVXVwMGFVVldxZlBZVmtGd29tZnF1UGxwdVFKRS9QcDRaTlovUWpaVGZWUWJaNTJwRG1maTE0ZXY1aGZrZGUvWTBYNUpZeitucjM5cS82bjJmNlBibnQ3WDZlczNNbmtFLzhUOVc5YzlZS0w1MWVqbjRNdmVyRExqOFRFQzFwanhiVTF0RjhBMHVoYVV0eXVJZUlUMWxkcnljbVUvMmZwZTk3T3lqNVkxRHF3aDRNZTlhMzNBR0dFaFdTUU1DM3d3M0hMZGw5aTNmQlYzMy8wREhubmhKeGhpbGhZVFZ0ZjZBSFFXMmd5R1F3aGc0NWlRMTBlRDJlcWVsei9WUXhJQ1FZY21LS1ZPaTFaa2xWSWZ1dE90Wk1MSlZmUzJPdTlXVmRsbUZiWStmMzM2NlpwVmVXMWVmM1A3eEQ3TnZMYm1qRnVOeGN4ZUJJdGdDZGlKUzlUL0Z4RWtnSGlEenh4VzJseTQreXJ1dVBXMytKM2IvNGcyWGZwclF3eVdKR2t6NkpjaHRydTBSQWkrc2JNYmZ5QlJTcW5Ub1JWWnBaUlNNMWxyc2RiaWdhSW9TRk5Ja29TcnI3NmFQUmQzR2NZSCtQRUQvOGl3R09KOEJPSUJUNzgvQkI4bXA3ZHQxTzVGYXloS3FmZUp2cG9vcFpTYUtZU0FNUWJuSE5aYWlxSWd5ekpFaEZheXdKZS84TnY4OFRmL05UczZlOG05WVNIZVJydTFBTVdNVXJXcGh4T01GeDFXb0pRNlhScGtsVkpLelZRVUJVVlJJQ0k0NTRqakdHdHRHVzVOVE9LMmNlZG5mNHV2LytZZjBtR1pQUGZFdElsTVZJMG5ucnBDTXo1WlE2eFM2djJnUVZZcHBkUk1jUnhqakNHRVFBaWhIRE5iTFdDeHZzTndMZUwyVzcvTXYvbVQvNWJ0cmIya2FZNFZSeXZ1amhQcjlPRGVHV05tbFZMcVZHaVFWVW9wTlpOekRsTjFUaENSMGRDQ29pakFPenJKTXIyakdSMjN6Rzk4OWl0ODR6ZS95ZmJXYnNEZ2dzRlI5N0N0cm5BaTBBWTk0a3NwZGRyMFlDK2xsRkl6WlZrR2dMTVc1eHdpWldYV1luQXVvcmVTc21mSHBmU09IWVhWakM5OC9zc3NiZXZ5bmUvK0hXOGZleFZEakNYSE40TnN2ZGF4QlVxcDk0RUdXYVhPWXhOOVVqOEFJWlJmSVo5SW02cFpmVmpOUnR2cjB4cFhYRjl1WXZzV2w5L285a2Q1eTd4L0pjT0o2NThPZGh1b0g3K3RyblAwOC9UOW45RVRkL0x4cVh2clRtNnZUMjlXWTh0OUtZY1ZCQkdDOTNTU0JmQ1dickxNc0ZnbDd3MzQySlhYODlVN2UvendKM2R4WU9VTnlrNjFRcWVUMEIrVS9XYUpJOGlMemUrOFVrcWRBQjFhb0pSUzZwU0VJbEJrQmI0d0dPOXdwczMycGIzY2VOMm4rZnBYZjQrRVJYWXVYSUFqWnREUGFiVVd3VnJJQzF5U25PbmRWMHFkQXpUSUtxV1VPaVhHVkZYaklCZ1Q0Vk1vVXN1T2JSZHc0M1czOE9YUC8zTzZ5VTRzTFN3SjZUQXY1elUyQnA5blozcjNsVkxuQUIxYW9KUlM2dVNaQU5ZamhjZVltTVMxNkE4eitpczVOaEdRRHQvNDdUK2szeDl5L1BncWVlZ3hvRWNRSVduSHBNT2hqcE5WU3AwMkRiSktLYVZPZ1dDc3A1QVVpeEJIWGRySkFsbVI0Z1NNaVZoTUVyNzIxVzlTU09EaG45OUxUQXRQSUIya0dLTTVWaWwxK25Sb2dWSktxVk9TdEJ3dUNvUlE0RU5POE9CSWNMWkxSSWZENzYxeTRlNUx1ZlAycjNEdDVkY1RDQWdRV2NjSGZKeWhVdW84b1VGV0thWFVLUWlJOWVBQzFwVTladk04eDNzSUJSUzV4ZExoK0pFZWwxOXlEYi8xNWE5eDZaN0xBZWdrTFcwaHE1UjZYMmlRVldxZWlkMWtpVFpZN0hqTjZTMVdvcGxMZlZzbWxNdTZmYUJjckVTajZ4bGZuNjIyejFoUDdiOEpEc1JncW1YY2NYOXFrUTBXd0o1Q1pUQk1wYkM2blphUjhjOVd4a3R6MjRtMElwdGxWdkJyWHRmMDlaN0kvWnJlbi9vdnUvVmVsT3QrdjEvMmxiV1dLTExZeU9HaWlDaUtzTmJTN1M0U3VUYlpJT2ZxS3o3RzcveldOOW1lN0NZYmVuWXM3TVJnVDJGU2hPWnpVQ2wxdnRNeHNrck5LN0VZcWQvTTZ6UmdKN2JQWkVLNXpRUk04T096YjlGbjFWUzMwY3dkcG5FYnN5NXZ4VzE2RjBJSVlBd2l0dXhaS3JZTU4xZ2dJR0tBQUZoRURGS3R3V0lrWUd3WnhLek12djJ3eWZmWGhnSzhSeWltVG9mNmNXejJjUzM3dE5yUlYrS0dVTzF6S0M5VDk1K3R6ekRWMDlXRSt2VEdhYzArdFhYLzNPYjI1bjZGeWZ0WGh1bEd6OTBaMXorNmJQTjZKN2FQLy82emJyL2VnNG1MUS9rM01PVUhDbWNqaWdCRnlNRkZCRHk1OTRnTkRBWXBpMHR0anEvMWlJTGp4bzkraHE5ODdnRGZ1L2N1QnIwQkVOUHF4cVQ5TlZ4azhVWDVlQzhzSlBSNmphNEdvMTJxbnh2TkdSVjB1bHVsem1jYVpKV2FWeVpRaHp5Z0NxNTFNREhWOXVrd0d4cVhwVW80OWZuODFEcHNzUzZ2ejQ0Q2preXM2OTNZOUM0UXFvVGtxOHBndmYvMU9qUitsOG0xQVN2U21PcTB2dDJKYVJBMnZuR3BINytUWU1wSkFSQ0xHSENOeXpjZjZXWlZ0cmtuRTlPMXdnbFhJNjJzdnlkV3hwWGg2ZTBuV3VRMEovaFFUWmo0Z0ZRL0g1cTNHQ1lxMWxsV2tFUUp2aGdTck9OVE4zeU9ZNGZXdVArNWU3QVU1SGtHbENFMmFUbXl6TlByWlNRSlpKdDI2TkxCQ1VvcERiSkt6YkZxak9Jb1RKMUFOYmJKQkNTTWc2eUluMWh2RldTdFVCWEc2aUM5Y1VWd28vMHZ3K1FtSnFlbW1qcXRESlhqT0hPU1FiWXU2czA4UzcxZnM2NUxxZ3cxSGVEVVdQazhTWktFZm4rVjdrS0NkVUtXOWJuc3NpdjQvT2Urd1A1ZlA4ZWJnMVZDTnY1Z1pNUmk4QWlRSkMyeUxOM2tOdlJvTWFXVUJsbWw1cGdBeGJpNk91RUV4dytlYmtXMkRyT2pYNXJyRTduOXJhWXAzU0JJVHR6MmRPZzgwWXFzcmNiVmpvY3lqTmRiMGErenQyWkprcGpWdGVOSU1DU3REb1BCZ0xYVmxBdjJYc3cvLyszZjVTKys5Ui94ZUxZdExiS3llcFEwOVNSSlJKWVhEQWFORUZ0LzZEQ2grcE51UG1SRktYWCswTkh5U3MydEtvVE5PdEJyUzNaODJWTmVsOElwTHFON0lhZTJqR3g2d05zbUM0MFFPMzMvMWkxcUk1YkpBOXVhUzVFV0xMU1d3QnQ4SnJSY203VG5vWEI4K3BPM2N0dE5uOGNRay9ZTDJ2RWlCb3Q0VzM2Y21QNk1vOFZ2cGRRTVdwRlZhbTVaa0xqeCsraW9uODB2TmhGMDZ3TjhET0NtMXJMcE9oakIxVld5NXUyZmFFVlc2bjNaYkg4M3JzaGFvYXlvMWdldjRTZlhKcFQ3MnppNHJibTJnRFFQbHF2RGJmUHhxY2ZnbHVmZVpKL09UNlBoSlhWNWZQUzNLQi9EZnIvSDh2SXkvY0VLZzlVQnk4dmJTSktNd2FCSEpCRy8vWnUvdzh1dnZzaDd4OTRoQ2dhTG8vQWVaeDFlL01ZM2ZKNC83a3FwTVEyeVNzMHJzVUE4RGw1MW9Kd1lvenBqL0d5enRGVWY2WTZGZW16c2FCMjJYdGRIdWpkdjl5VEd5Sm9RTm0wVDFUenFmMlpYQldPd1llTXh2czJ1QjdQWFlZUFRtenV4MlJoZzJmcUR3M25NMm9paUtKRGdjTFlGT0p4dFk0MG5IUTY0ZU05bDNQbjVML0c5Ny8wREErblJNZ3VrMGlPRWdMTlFiQnBtbFZKS3Z6TlRhcjVWMVM5VGZWMWVmdVZ1cW5VWWQvMnNpN1ZWNzlUeDEvUGw1VzMxODhtc1Q2WC82dnA5UDNVR1J2dFRPdFUxak1QclJzRi8xbkorMjd3ZmJ0MUdhNEZlYjBBSWdZV0ZKZkxNczdyYXc1aUlkcnpJc1lOcjNIN0xuVnova1U5aWlESGlNRVRqRm1pemJzTk0vNjJVVXVjenJjZ3FOY2Y2dlJWMjc5NkZ6d3VHZVVvb2NuQVFXVU1VTzRvMFEwekFpSzNhUDlYcktvaU5xcHhRdHpTMXBncUpwdHd3MlFKL01zTDU0TmQ5R2o2WmlHZU5MMXR3YlVBYVhRM3EvV3UyWGkzN3VsYjNvZEgrcXo3TldsdGRqekM3UCs3NHlvd3hXRnRlbi9lZUVNcWo3b3VpS0t1S0lsZ2JZVXg5bm9KT3AwV2FEZkRlWTR3WlhkWVpTNnZWd3Z0OC9TMDI3b0FQMDlYZjZmcy8vdnZNcWtpUDd2TUcyOGZYczhIbHcrYWZSamF2aUpmUGpmSkRsS2xPbC9KdlZuMlF5bjJnbmJRQXlOT3lsMWJzRWhBb2hqbE9FdnhneUovODRaL3k5TDk3bW9LVUJiZkltajlXVmRhVlVtcHpHbVNWbWxPR2dpc3UzOFc3Qnc3Z25DR0p3TVJDbkJnR2d6NitDTGpZam83dmRsVUYxSTBPY3FxYjZHLzgxYnZZemIrYUZ5bEx1MFlNTW1NZGlqRHpkRk9OdFRWVnY5aTZKK3IwMmhtWmVmcW9kNjJZbVFHN05ncGZvUndHTVRGQmdiR0lsTUhVR0lNeGhoRE0rRDVaUTYvZko0b1M0aVRDNEFnaElCSnd6dEZxZFVpSEE0dzF0TnR0NGpqR2U4OWdNTURuQldtYUVwbHorRXV2MGZqbTZUQWNHbTNaTm1nTlp3SkdERGJFN055MW5UZmZmcFd2My80TnZ2dmdkMGg5RGtRVEgyTFcwNnFzVXFxa1FWYXBlV1Z5bm4vaENmNzgvL3JmeWZJaFJURkVDR3piMW1WMTdSaEpFazFWNTVvSE0xVkJkc014b2ljNnhoUmc0eUJMWU9NZ2E0VElsMEhhVk1lUm5jd2FvSndZckJvdVVZWFI1dSs3ZHUwaVNSSVdGeGZadm4wN08zYnNZTWVPSFN3dExkRnVMZEdLZHlMQlVuaWhLQXA4SVRnWDBXcTFhQ1Z0Z25pc3pURzI2aGtyVUJRNTJhQ3MwcmFqOG1BN2F5M091V3FmQW5FY0UwVVJQbHRma1QzbnlLeVBFR0h5azhYTWd3SXQxanZhZHBGSUVyNzh4ZC9pNlY4OHhldkhYeUVtSnFQeDJKbXBpeXFsVkVXRHJGTHp5aFJjZlBFaUw3endDRVdlZ2g4QWdtazVKT3VYLzdxTHVvZFJZMXlvR01xTmRZaXREejAvbGZWVys3akpRQU9CaVNsU1oxMThpNEVLemVrUXhsUG9qazhMTXlwMnB2b1BZblpzdTRRTDkxN08xVmRmelJWWFhNbmV2UmV5YldrN0xsN0ErSlNsNVM2OVhvKzFmZ3BpYWJjN2RCYzdkTVRpaTVpbDlqSjU3c256SE84OUlsSU9NUWhDbG1WVjlmdDgxWGpzVFQyRDIvaURVRGtiV2NMYWtRSGJ1N3RvZFdQdXZQMkwvUFgzWGlOeUNha2ZNUG1CU1NtbDF0TWdxOVNjc2dqV1poVER3K0FzcmdVKzd4TkhDVm5lSzROaXMyOThkU0JZR1daZGRVS3hlZG16bnJ4cW93eTdXVkNGelRzWW5FQVdQcGtDM0lrMi95b2ZCb01oNXVqS3F4eGVlWjNuWG5xUStyRnBSMTB1Mm5jSnUzZGR3UFhYZjVMTEw3dVNLNis4aG5hcncrcHFqOE5IRHhISE1RdmQ3UnhmT1lLRXN2THRuQ09LSW93eEZGbGVCbGwzYnIvRUdyR05ZUjVsQndmWjRDOGdWYXMzb1J4RGE0Q1dhVE5jSGREZDNxVjM3QmczM25nelZ6NTFQeThkMlAvaDNRbWwxRnc3dDE5bGxUcW5CUWpWRkxXK0tQdHVob0tzbWhISk9KQ2N5Y0FvUXRsbmRhcHQxSFJycVJOcG9XVzJQcDh4RzlkellldlF1VlZPWm90ZDZIUmlSSVFRUXJYVTV4ZEN5SUFNWXh4eDFNSVlpL2RDVnZSNTVZMGp2UHBHekdOUDM0c2hadGZ5SG02ODRXWnV1KzF6WEhYVk5VUU8xbnFIV1lqMllxb1dVMW1Xa2VjNWNSempyS1hkYmhQeXJXWXVPNWROLzJGa1hKbXQrczNHTGtFY1pJT05HVnFyQUFBZ0FFbEVRVlFVYjRUTzRpSjNmTzRPM3Z6Mnk2eEovNHpzdFZKcXZtaVFWV3B1V2RweEYwaUlEQlJoU0JsdUlZNE5JZVQ0NlRLbFFQblB2aDRyV3dZdEkxWEFQSm0xYkQzd3dHSTNIZU1xVzN4dHZGV09EV0l3VTMwVG11T0NCLzNtMElYeCtheTFXT2NSSTRoNE10OGZQejZqNEI4REVaRnJzN0wyTHZjODhJL2M4OEQzYVVkZGJ2bk1iZHh3L1cxODRwcmIyYmEwd01MQ0FtbWEwdXYxeW9POHJNTzU4MkZnUWYyWVR2OGRteUcyT1RhMk9jWWF3SkM0bUtGUFNWb0phZHJqWXgrOWxtdXZ2WTRuOWo5U24wVXBwVGFrUVZhcGVTV0dvMGRXQUl1eEZ1TWo0dGlRNVFPTU1maXNQbDk5Z2ZWSDBCdGpNTlgzdkFiV3JldlF5cXgxZlIyakE4ZW1UNi9tVzZqQzc3cjFpZHpGTFljZWpDUHpPQ0FKQmdjbUVMa0V3Uk04QkNsRzV5dTdYc25vK0xlYWRZMXFjY2l4Qm5LL1J2bFNhYkU0ZkFnODlNaVBlZUNSKzlpMzR5NXV1dkUyYnIzMXMxeDg4YVc0bHNONU1FYXcxVmpaMlgxcnE4ZG80djVOaGNIUnVOS3lVNE5nMW5Wdk9CM21KUDRPcHZvN0FsTVhDaE5kSkRaV3piZzJJUkFrcC9DQlZydkZRSEtRbU1YdWJtNjYvaGFlM3Y4MEJRRUpxYmJ1VlVwdFNJT3NVbk1zV2VnQWtQc2hHRStXRDZvd20wMjk3OXRHL2dpallRVnlFbUZtWTJmeVlKd3c0K2RRQmVaQVhxU3M3N0xRSEZMQnhBTVFQRk1QU0U1emV0b0FoRkdDdEx4OTlBbmV2dmNwN3I3M0w3bnBwcy93aGR1L3dyVWYrUVRkWkR2NU1FT0NKYy9BbVlTRmhTVWlHekVjWkdSWmhqRUdGN25SZFkvR21JclV0elRSRUVES2p4eVVvMUR0NkZQQktFUTJob1dzbTZ4QUpyZlhKeldIbHpUN3hJNHE1dFZwUm1iM0VRNk1yMnMwQnJieDZhUDVFVWVrbXFpanVsTkN3THVVdGRYakxIZDIwazZXNkI4djJOYmR4bFVYM3NDMUY5N0lDd2QranJXT1llalRhanVHcWNmR2pwRExCc0ZhS1hXKzBTQ3IxSndLWnVvOTNBU1F1bS9yOUxrYlh3R2JSbXVrY3lZRVRJZlVFMXlmMFAydnV6dk1ZTXJ4eUlYMGVlTHBuL0xjTDUvbW1xdXU1L1pidnNnTm4vZ00yN3A3V1ZycTRuUEQydW9xUmVacEpWMDZyVlkxZHJlZ3JuMExFR1JXNWJJZTd4QVFZeWNxMnU0VS8zNmpvTHBGbFhPNjBqcjl2QnBseVhvczlNejkyWGhLRGVlRXFHWHhFdkFEVDhnTXBrall1WFFCbjc3eE5sNDU4Q3Z5a0JKaHlESS8zaWxUVmVLRGRqVlE2bnluUVZZcHBVNlRkWTdnQTROc2xXZC85U1R2dm5tQWh4OSttRC8rZ3orbEUyOWpxYnVEVG5lSmFMRk5DSkNsR1VWUkVFWGpsK0NOaDFIVUUxZzB6bUJPSm9pZnZiejNKRWt5bmhITkdYeFIwR20xdU9INkczbjRpVXQ0OWNpdlNPSTIvWHhRRHUwKzNURVZTcWx6eWprODdZeFNTbjJ3MnAwTzFzWUVYNDVKS0NlWXlEbTQ5aGEvZU9seC91ZC8vei95Mk0vdUpkZ2VnL1FJeDFiZXdVVUZuYTVoTUZ4bFhiVzMyVWtDMjFqV20xMzluQzlwbW82bUVYYk8wZWwweVBPY1hxOUh0N1BJVFovOERJNFlKMlhnZDlZZ2hSK25mcVBWV0tYT2R4cGtsVkxxRkEwSEdjRlhYM1diZ0pBQ0tUQ2tIWG1FRmY3TGQvK1NmL2Z2L3llZWYvbG50THB3NE9EckhEajRPdnN1MlFXbXFNSlltQmxpamRoeWZPcTZaWlBoRG5Na1lCQmpDVlVidVZhU1lJS1FEakpDSVZ4LzdYWHMzWFloYVZGZ2llaTB1dFhkRGhpbmIxOUtLUTJ5U2lsMWl1eG9rS2t4aGlSeEpJbWpQRUJzUUw4NFN1d0tMQVBlUHZvOC8rSC8vbC81ejMvM0Y4U3Rna3N1MjgyNzc3MEpwdW9EYkFvMkRxYlRWZG41RDdDMUpFa0FLSXB5eWwvdlBjNVlraVFoY1FrN3QrL2hxc3MvaWlIRzREQ21uQklZWVZUSlZVcWQzL1NWUUNtbFR0R09uYnR3VVl5RWdpd2RrT1hEY1lXVm5Nd2ZwOTN4ZE51V1FJOTdIdjArLytlZi8yL2M5OURkZEpjc1lqTEU1b2p4aUFubFF0MEZ3SmE5ZnFYUi8xYTJHbkF3WjR6Qmh6QUtwWGs2QktBVHRTQ0FsWVJQWHY4cFduU3h4SVRjang0UFgyUWJYcTFTNnZ5aEIzc3BwZFFwT25ya3lPaG41d3pHQ2tWMWNMMng1VENBM21BVldLVWJiMmVRRDlqLzJ0T2tQeHBTRkFXZnZ2a0xtRkIzSlRBZ1VYbkJVWGl0MW5VRDNvbkpCUmpOa0RXZkRONEhSQ0NPSWtJUThqVERPb01SU3pId21NVHkwYXV2WjBkM0w4UCtFSi81c3NkRDJjUmg3ZzkyVTBxZHZubDlCVlJLcWJPSzkwSlJ6MGhyeXVPUlBHV2J0QUQwOHhXRUZDSGw1YmYyODJkLy9SLzR5VSsvaDJlQXVKUmdNbXdzOUFhckdDdTAyMjFFcE9ycktwZ2dvOThKNVZMLy9rRXRUZlZwNCtsK3cvdHkvY1lZdlBlRTRJbGlCejdnTTA5a0UyeUlTVXlicjM3cGF4aGlBZ0dMSlk0TU9rR0NVZ28weUNxbDFQdGpvMkJWRlZzRGdZQW5rRU1WYUg5NHoxMzg5ZC84T2EwMmRMcVc0eXVIdVBTeWZZUlE4TzY3N3pBNUh2YWNHVkF3azZIWnQ5Wml4WUtQS0ZMWXMzTWZpMndyWjJ4RHg4Y3FwY2IwMVVBcHBVNVpQYUkxekR4MVlqRWdGT1dVdVJRRVVvNzAzdUtSbi8yRXYvbmIvOFRhOENpN2RpL3l6b0hYaWVPSWJjdUxqU3VzNXNpcXVoYWNPeS9jay9PRVFSaDNaZ2dSQkVjeGhJdjNYc1psKzY3QWttQXdpUGM2ckVBcEJaeExyNGRLS2ZXaENrejBnVzFPbVRycjU1RXl6QW9ac2ZNRWV2enczbS96NDU5OER5RmxNRnlsUDFoaDI3YkY2UXV1TTgrOVpNV01vdXZVREdNQkt3WXJCaE1zUm1JV085djV5RFVmUnhBY01Ybk9xTkt0bERxL2FaQlZTcWxUWkFqVkpBaVZtYVhZaVF0VVMwSFoxV0FWVHc5THdiZS8rM2Q4Nys2N3VPU1NmUlErNWVEQjl4b2RFTWFWV0N2anRsL3piL0l0eUJDdzFBSGRZa0pFYkZ2a21YRE5WUjhsSnFZZEoxZ2cwbmN2cFJRYVpKVlM2bjNVYUk0bGxySXh6UG8yV3NCbzNLdzFPYTJXeFRQa0J6LzhMbzgrK1RCNzl1ekNoNXhSaUswdjAyekYxZmovdWNoSU9VNDJ0akZwUCtPQ3ZSZXpiOWZGWjNxM2xGSm5tWFAzVlZBcHBUNVVkWWgxUUR5MU9NYmhsbEZsTm9vaDdsajY2WEU2U2NScWRwUy8rcXUvNUtXWGY4WHk4dEtHdDNTdTFHTTNWc1YwR3lGaUtQTEFRbWVSajMvME9ySTh4MW9JNTg2OEVFcXAwNkJCVmltbFBtelZrSU84Z0VFL2tMUWpCdGx4aEFGSGgyL3lOMy83RnhTc0lUWUZreUdONld2TjZNQ3ZhbGF4eHRWYWFSNzUvOEU3bVRHNm01MTN0RzJxY20yTUlZU0FNeEdSY1Z4eHhkVUlobmJjUWNKOGp4RldTcjAvTk1ncU5jZnlQSWVvbk5mRXVMSTFVWkVMMnAzb3d6RTVCTFlleitvcHA2bHRMbjY4dlRGMk5vNWFDSmJCTU1QRmdjQUtuaU1jNmIvTVgvM2QvNEZwOTBsbGxXRytScURxdlNvV0s2NGNNK3ZML3JMMXdnYkxkUC9XUUxtSUQ2T2xQcStSUmlDZXVoNGo0Mlc2cCszMGRpTWI3OC9vL0kxOU04RWdZaWIyMHpraHoxTVdsN29jUFhLY0t5NjZtb3VXcnlSTExSRXgraGFtbE5KWEFhV1VldCtFcWFXWStyM0psa2ZmVjcxUkE3NXMwV1Z5M2ozNkdzODkveFMvK09YamRMcU9xR1hKODVTbyt0QmlyUjMxVWgyMXEvcVFxNU1uOCtheDJiNVY5MkxkNldMS0NSZnFxcXdCbkl1NFlQY2xHRnBFZEU1eUw1UlM1eUo5RlZCS3FUUEVOT3E1VXhOcGNlalllOXgzMzA5Wlcxc2xpaXcrcEFRVEVEekZhQXF4YzUrMUZ1ODlpQ1dLRXE2ODhrb3NCcXR2WDBvcE5NZ3FwZFFaNDV3amNxNEthK1ZweG9DcEtwUy9lUDRYUFA3VW93Z0ZjVHNoelhvWUI4TjhRRGdIam5hcTY3Qkd5cWw4b1Z6WFk0S0RhUVJad0dLNC9KTExBRnROVjZ1VU90L3A2NEJTU3AwaGhjOEpvZndLdlNZQ3hsb01Ra0hHZmZmZnc5Rmo3OUxwT3ZJOEk0NGQzdnR6cDVYc2hQWGgzQmlEZUhBNDhMQnJ4MjZXN0xhcWxuMU9QZ2hLcVpPZ1FWWXBwYzZnSUFIbkhMYk9aQUkrNUFRQ2dZSTNEci9DL3VlZlk1RDJzTEVnTGhDM1lveVo3eEJYajVzMVV2K3ZEckdCZXRwZkVUKzZuOFpZUW9CVzNPWGlDeTdGRW4zNE82MlVPdXRva0ZWS3FUTWlqR1lHRXhHaUtDS09EZU44R29nUUlPZVJ4KzdsemJkZUlXNWJodG1BcEpPUW44UGpaSU9wbHFwYWJiQTQ1OEJiVElBckxyMGNXNDJVVlVxZDMvUlZRQ21senBBNGNrREFlMCtXRlJTNWpBNzZzaWJnU2JFRWZ2WEdMM2pqN1plSVdvYTF3U3B4a3BENWZLSy83UHdMaUEwVDAvS0dFRVpqZ1oySnF1RUZqZ3QyN2FORjZ3enVxMUxxYktGQlZxazVNZW9CV3IyNW53c0grNXp2OGlJSFJoTjlqVHNYbUVBUWo1QVRTSW53L1BEdWYyU3RkNVJPcDhWcWY1V2szWnA0TG96NnVqWk05NCtkWG1hZGQ5WjFmbUNMTDVEZ0NhRVluemFlanhlc0diWGZLb3FBRVV2SUExZGRlaFU1QmZvV3BwVFNWd0dsbERvYm1RTHdDQms1QS9yWktpKzh0QitjeDlqMVFmVGNVRlZqRzVYbXNwZXN3NGpGNG9oZGl5VHFzTjN1MGpjd3BaUytEaWlsMUpsa04vbXRyTWhtQkhKNitURWVmK0lSQWdVWWcrZmNDYkpXSnUrNTFDMjRxa2tSSFBXa0NCR1JhZEdLdXV6YmV5SDZGcWFVMGxjQnBaUTZRMmEvQURkT05XQ01CeklDS2MvdWY1citZQTBjNTJCRnR1NVdNTzVnWUswZHplNkZGNnhZUkF3T3k5NDlGNTNKblZWS25TVTB5Q3FsMU5uS0FFYXdSakJBUDZ6eTVqdXZFMEk5OWUxOHM1VFZXQm9USURRWFl3d2lnclVSd1VNSUlFVWdGTUtlM2J2UDZMNHJwYzRPR21TVlV1cXNNVm1OaGJJK2FWekFSV1dsOHJuOXp6SElCbUROYURhc2M4UHNDbk1aWkt2S3JJQlVnWGJYOGk2ZERrRXBwVUZXS2FYT1d0VXJ0QTloVklWOTVwbG42UGY3V0h1dXYzeUhVUmNGWnl4R0xBNkx3MkRGc3J5OEhaM1pTeW1sVTZNb2RZNHdiRlRUbXJIOVhCdGVPYWZXRHc0SUU2Zldmek1SS01RVDRYaHY1VTJHK1FwaTkySk84Q1hjMUVOUFlmSnZQeU1IMnBONGJsaE9kNEJEYzBZdjA3aHRDMklKVXJVQk13R2NSMkpmdGVrcWFDMjJFUHpXVC93WkppNHltbEZ0cXc4Rzh6K1VRNmx6a1FaWnBjNGdzOFViOEt4ZXNmWDdyZ1UybTZWMCttMDVNTjJyOUlSMlVYMkFaT0t2VkxlZUdtMHNmeFVRc1JqajhKSUJnY2QrOWxNdS9aMkxJRzJES1NjR3FBLytxcitDYjU1bVpIeTF6VCs3aE1ZVHNINWlORTZiZUlxSWpGTTFWUDFlWlh5ZXFlMU5wbmw2WTN1b0pqK3dnQVFIMkltOG1DUXhxUm1TaFI2dEpjdWgxWGRvTFVSNE1sNTYvWGs4K2JnSmIvMllOZGV6N2dmakFEN3VXV3ZCMk1ZSjlkK2wzcGw2UHQycGY0LzZnVkNwTSs1Yy8yNUtxZlBTcktwYS9ZOWQ4K3Zad2s0dE13Z1lNOTRlS0JBODd4MStnOHl2YmZsSnlNcmtjOEhJNURKdHF3OVdwM3JlMlJyVlp5bnZveEVEWXJGU1ZtVGZmZmRkZHUvWmppZm4zU052c2VPaVpaSnRqZ2NldjVlLysvYi9kMW8xVXFrRDhMcC9FSGFEbjVWU1p5T3R5Q3FsMUZtcVdYRTN4cFNUWFdGNTQ4M1hTZE4wemlkcHRhT1FiY1JXMVZ3TFNCbFFUV0RYbmgzMGhtdjBoNnNzTG5kSTh3RlAvT3hoSG56MFBucGhEVENUVmRFTmhnZVVaeG5IM2xDZk9CcGpVRzB6RmtTSEVDZzFUL1RqcGxKS25hVkVxZ0JMdlJhY014dzZlb2grZjQzNUg3ZFpWNXViaVQyQThZanhkSlphdkh2NEhaTEZpTzV5bS9zZS9ESGYrZjYzT0Y0Y29XV1Q4cklTalpmUjlUbldWN3d0WmUzR0l0VjZGR1lOaklkMjFBT0ttK01VNXYxeFZ1cmNwVUZXS2FYT1VpTDFPTmVBTWRYYWx1dmp4NCtkNGIwN2ZVYk1hRGdCWWhFYkVDT0lDUVJiOE03Qk4xbmEwY1hFQlk4OGZqOC92dmR1ZXF4aWdYN29NUTZ0emNVd0RzZU54ZGlwZGJVVHpjeEtBT29ldmZVRURScGlsVHFiYVpCVlNxa3pyaEdXdGhoN1doUTVFSGp2NElFUGRJOCtlT01BVy81YUJzZFFoZGhnYzVLdUkxbTBQUExFQTN6ciszL0xLa2VKakRCa0RSa0Z6bGxqakJ1UFp6MGd1RDZRUzh6a3VOaFpnOFpIQjNWcGlGWHFiS2RCVmltbHptTDEwSUlRQXRhQWw1eFdIUEhPTzI5eExnU3Q4WnRRM2FhaERMSEI1bmlYOHNnVEQvRERuM3lYQWF0RVJzZ1k0TW5wZEpOcU5PMzBVcGRZUFJoZlhXZlkrQ2kzNlpOR0ZkcjZjbzFGS1hYVzBZTzlsRkxxaktpRGtXMnM2NlA0S2IvOWJsUUxRL0JWQndOb3RXS09IRG4wSWUzbkI2cytzRXVvS3JGbUhHS2ZlZTRwdnZ1ajczRGNINllUeHd4RG45d1BFV0N0djByNUZsYUgxL3Jhd3ZxSzY4U0JYWTJ4c1l4RDdLaGxXYlBKYk9OOFNxbXprd1pacGM0U3pUNmc2bnl5UWFWUHdGaUw5eDVqSE00NkNsOEFoalRyY2ZEUXUrV3NWNVRQbWZKOEJ1Y2NCS0VvQ2lMVHFIZFdmVjZienk5cGhMU1oyOWxxdTJ5K2ZkUTdkdllkTkZibzkvdDBGOXRFc2VYWTJpcEoxNUV6NE1XWDkvUC9mdit2OGFRSU9hdDV2MncvTnRFSXQ4QTBQZ0FJVEFSUDU4Q1BIdDRBT0hBR2luSmY2OUcwY1dRSXhwTG5maHhvbXcvQ3JCWmR6VzRIU3FrelJvY1dLS1hVV2FvZVZpQWk1U3hXVmZVeEJFK1dwUWgrcmovNHJLeXRjTUZGdTBqOWdOZmUralVMeTIyaUxqejIxRVBjOWNPL0g0VllUMUgxMEsxTUJNdm1lTmpKNnc4ZW5JWEZ4VGF4Yy9VVWFWamphRVVkT25FSGdMd1FmTzdMdmdZdXdqbXpkU0ZXSzdWS25SVzBJcXVVVW1mTWlWYjBRdFdLU3hBSitKQXpHUFFtWm41cmhsN1QrUDNzRmVnc3hSenJIV0ZZOU5pMWJ3Y2tCWTgvOVRBL2VmQkhITTBQamtJcytQSWkwek40Vlcxa1RUMFVZK29XWWx1RzJjSHFFTEFreEhUYjI4aHpUMXFrZUFLR21FN1NCaUROQm5nZkNEcGxsMUp6UXl1eVNpbDFscHIrbXI0TXA0RVFDZ2JwZ0JCQzQvVDVFa3dnYmpuZU9mUVc3VzBSeTdzWGVPaXgrL2lISDN5TG8vbEJMQUZQVGlBbm5NUlgrUFZzWms3S0VJdEFRa3hFaENGaU1Fd3BQRGhpdHJkMms5QWx6UW9HV1ViQWtOZ1dzWW1CRXlpNnp0L0RydFE1Unl1eVNpbDFsbG9mWk1lL2UzSzg5NGdyVHpQR2pJTHRYQlFVVFdCbHNNS09DN1pSbUl3Zi8vUmU3cnI3Mi9SWm9lVWNQZDhmRHllWUdCZTd2akE3cXNyV1YwMDkvWUhEWXhBaUxsamV4ODdsdmZSV1VvNGNXeUZsd0ZvNlJEQTRXa1JBUVU0ZUNnQ3NpUWhTYkxEdnpNZGpyTlI1UUlPc1VrcWRwYWJIdjA3K0dnakJJN2FzeUU0T0xUQ2pLVzNQVmdKRUxVUFN0VHp3MEFQYzlhTnZNNkJIWkF3OXY3Yit3Szc2UWlQTkx4VEx3UUNUMHlGWVd0RUNhWkVETVIrLzVnWnV2L1dMV0NLZTMvOFNMLzc2Ulg3NStqTjRNa0R3NUtOTEMySGM0YUQrV2F1dlNwMlZOTWdxcGRSWlkzWmpmMlBxV2I1b2xDTmxYSUdkUjBaSWk1UW5IMzJTSDk5N055bDlGcEkyZzJLVklKNG9kdVNGbjZoKzFuZmRFdFdQek9pVVVyT2xtU010UFB1Mlg4cHRuN3FEYXo5NkF6dVc5aUloNHVaUDdPYjY2MjdpbjZWZjVHZlBQc1pqVHp4S1B4U0FaYUhWSmZkRDBxSy95YzVydHdLbHpoWWFaSldhVS9WYnVLbStTYll5Zm5zTkJvSnNQQWhldnhtZEgyVzFWU1pDckRIZ1pQWmZ0K3h3Y0lMWDNaanc2a1RPTzNWTGpDWU5FRnRPTlF2VjJsYjdVaDZrRmFycGRjWFVreGFBdHlrdi9mbzVmbkR2UDNJME8wU0U0WGgyRktIQUdvdjN4ZmhtWnQ0K2xKTWUwS2llT2l3V1M0VEQ0WWo1eE5XZjVwUFhmb1pPc2tUdlVJcXpRaXRaSUlvU0lQRFYyNy9HNXo5MUJ5KzhzSi9Ibm5xRXQ0NjlSZ0JhTEZBd3hPTUpCRVEyNms5ckovYVRxYk9VeHNGWC85MHA5ZjdTSUt2VUdSUkN3RTVWbXlhR0EyNVNiUk1yNDlrM3A3ZVpjZ21idkd2T3VwdzYreGhqc05aTWRDZ1l0V2NWS2YvSXpZVkcwWGJxQ1dBYTIwSjkrZEZBMDdMYndjVDRoZWJGdytoR3k1WDFDT1YwdVVZY1ZJc0pEcVI4YTJsMUZqaDQrRDEyN2xyQ3RTM3Z2UGNHbmFXRU9ESDg3TGxIK1gvKzRUL2lTUUhJNjlaaWdKV0FpSzMyZFgzMWN6VHNvQnBMa0NRUklRVUthTkZtZ2Uxa0ZQekJuZitTeXk2OGdwM3VRaWdpblBPQWhjemloNEhsWkNmNXlnQW5NYmQ4NVBOODhzcWJlZlgxWC9QRU00L3lxM2QvaVNIQ2toTElpU0lEMWpQTTgvS2hxRzhmVzMwYU1DQU95N2g4YnZDTkJ6R3N1emY2NzArcDA2ZEJWcWt6eUo3bU85bFdsMjkwS1pxOEhPVWJxbFptejM0aVFoaUZTRVovekkyTzVEZkdZREJiRGptd2pKcGFiV25XaDU2eTVWVUFDUmhjOWEyQUxRT29HTVRBOGVPclhIekpQbzZzSHVMZzYrK3c1K0lkMkRqbi9vZCt3ajBQL1pDY0ZERXBWTlhsOGZQVXpoaGtNWFYvNjhLdmhXeFlZRHpzU0hhVFp3R1A4STFiZjQrckx2b0l5OTBkMkN3bXl3cUNOeVJKakxFT0d3eFJKdGlpaFpnWTV5SVdXOXRJTHV1eVkyazNONjNjd21OUFA4emg0d2M0bkwrTEwzSUVYNDIvQlNMd05pbC9DNVF6TDBpbzhyN0ZJSTNKR3NaREh4cnp0eW1sM2djYVpKVlM2cXl4UHVLSXlPUkJYbzFaQWF5MVo3RDFsaTByc2JncWlOWUxTRFVPb05WMkRMTSt3NnpIOHE0RmtyYmhrU2NlNVVmM2ZKL2o0WEI1TlRPR1NHeldicXM1NDFhbkV6Tll5ekVlT3E3TE1CdlNZWkU3YnJpZFd6OTlDMjI3aEpXRUl2UGtlWTZ4U2ZWNGxlT0xmUURFSVJpS1FqQWl0Sk1sTHQzWDVxS0xMK1dpaXk1bS84dlA4dk5ubitUTmxkY0pPQUlGRUNoeUFZcXA4VHYxUjRNeTducGtJcHl2SDh1cmtWYXAwNlZCVmltbHpsTEdURlpXNjRPK1NoWnIzZWc4OWZucWJnWDF4QWdmS0tuZlF1eFVJQTBFRzNDeGNQRG9PeXhzNzlCYWpIbmtpZnY1aHg5OGk1VndtTmhBSmxzSE9TSE0vdVpBd0E4RTQ2Rmwyb2lIRGd2Yytaa3Y4UnUzZmhFVElySXN4d3FJTnpnYlk2TXkrQmZlVXhRRmhuSW9nQ1VpRklFOEx3akRIRzhESVNyWXNiQ1h6Mzd5RGo1MjljZDUvdVg5L1B6WkozbHI1WFVDZ2lGSEdPSkRQdjVBWWNyK0NTSyttc0hXVlB0ZFY1enJNckpEdzZ4Uzd3OE5za29wZFpacUJ0bHg1Ylg4UGFhRmM0NTZNdFY2WW9SeWFNR0hRQXkyVVkwVkVZSUJzZVVCWFdJOHh3Y3I3Tnk5amI0L3hqLzk5RDcrNmI0ZmNMdzRoS0dvUXV4azJKWlpvYTRPN3pOYWNZVU10c2U3U1BPVWhBNWZ2ZU5yM0hiajUzREJZWUtoeUR5eGpiRTJ3bUFJSWhSRlJrQ3d0andrREd3MURsbUlUWUpIS0VKQjVsUDh3T05hSGZZc1hjSzI2M2R5NlFWWDh1S0xML0NMWHo3TFFmOFdob0pBd0FUQVdZSVR2SGdLWCsydmJRd0pFWXRnTVVTTUIvV2thSkJWNnZSb2tGVktxVGxRVDNnQUZ1Y2NuYVJUVmdKbDYvR3dINHlxQ2x0WFlrWEFCTVFVWUR6ZUZpUVJtSGJPby9jL3lGMzMvRDBacThUT012UXBZYXNSdXRNZEF0WnRqdWl5alNJWEVqcjhzMDk5bVZ0ditDemRaSWwwdGNCaGFTY3RySWtSTVJRKzRJTkhSSEJ4UkpKRU9POFE3OGtManpFTzU4ckZPSU1ORGhkWlZsYU8way83ZEpmYWZQeXlHN25xZ285dzhhNHIrT1VMVC9IODIwL1M0d2dlai9lQzkwWDVjSmpHQWhDcWpnZkJUYlNrMVRIcVNwMCtEYkpLS1hYR3pPNGJXeHNIVklzeGJ2Uno1Qks2blVXc3RhTmhtYzJLTE5WUWd3KzhOaXRSZFdDWFVPNUlxRUpzanRpTW5BRS9lZUJlZm56L0Q4bFlwWjNFRE1NYW5oem5ETUViTEhiMmdWeFRzM21OZnk0Zk00ZGp3UzVSQk9IMlQzeWVPMi83RXBGRXBLc0ZTKzBsaHYwY0Z5WGxib2xaTjJsRTJhYXNITzlxRVlMUEtYeU9HSU14RGpIUVcrdXh2TGlkWGN0N0dBeDZISDM3T0dJQzExMXhQVGQ5L0hxKzk5TTJCNDY4eHF2dnZrYVBOY0NRaHh6akpvWXlWMGRYQmliSDBHb2xWcW4zZ3daWnBaUTZ5NVhEQlJ4MTJ3SnJIVW5Td3VEV2phUDlzTlY5YUlNdGh4TjRXeUEydzd1VWwxOTVudS85MHord0dvN1FhU1dzcE1jUUNscGRSem9vSjQ5ZEYrWTNDckdqQThwTTFma3FaaGdLdm5ITDczTHJwMi9CU293SmhzZzRodjJjZHF0TE5zaXJnTytJb2dqbkhGNENSVkdRK3hRUVl1dG94VEVTRE42WEI0RVpBMWhMcTd1QUVmRDlGRnNJaTYwRm9pZ2l5NFljWHozTzczM2xEOWoveWkvby92d0pubjlqUDhjNGltREpmQTUyUnQ5WlU0Q011eGpNSEVxaGxEb3BHbVNWK3BEVVlhTVpPcUxHRWVlenRtOTJlVU1vcXovVmRSUkYxVURlVk1VZk5TYzJxTTRaUmhNaHROdHRCb09VZHF2RE1NMHd4T3pkZXlIQXFMOXM4M2xnWlh6UVY2MmVLS0g1L0pvb2RNN1lQZzZSczU2ZkFnNzYvUUVMaXkxaVp6amFXNkhWTldUUzU0V1hmc2wvK3RhZkVjZ0pwS3lrYTJVRjFFSTY5Q2YydlhxMXZSVXZFSXBBQ0lISUpDUlJDNThMZi95bGY4WGxlNitrYlpjSVFjanpvcHdRd2NSa2cvSWdySG9JaEMrRVlIeDVvSll4V0dNeGtoTWtFSEpmam93UVcxYXpneTJYeHY0WkFZcEFrYWRZREl1dFJWWVA1MXkxNzNvdTNITUZWNzcwREEvKzdBSGVXSHNWWVVEY2l1bWxLK09XYVlheVVsdTE2WW9pUzE3b1AxU2xUcGNHV2FXVU9pT2E3WmhnSXN4T2pRZ293NnFwUHFCWTh0eXpjOGZ1RDN3UHQ3S3lkcHlMTDluSG9TUHY4ZTY3YjNIeHBSY2dTY3A5OXovSUE0LzlkQlJpUFVVWlltY09EaTN2OTdycTVHaEdyNWdzeTdCRWJFdTIwODhHaE56d2pUdCtoMHYzWGNITzdtNWkyNkVJQmRnSTV5S3NXREtmTVd0dXU5RU1ZYWFlbFN4VXMzTlZPMVVGVHpNUllwc2ZOcXExV0dJNlNHcG9SNDZQWDMwejI1WjM4dHl2bitIcEY1N2cyT0F3aVdranRzQlRFRHhZQjFFYlFnR0ZobGlsM2hjYVpKVlM2aXhWVndUcnFxc3ZCR2RpY2gvWXQrOWlOcDZFK0VQWU54UG9MclU0MWp2QzBQZllkZUVPSkVsNTlLa0grY21EUCtKbzlsNGp4UHJHZEdPTlpjTXJMMWZ0WkpFMFRYRWt0T2t3eUhJU092ekd6WGR5KzJkK2d5UmRJSkV1ZWVyTFZsczJ3amxMQ09DOVlNM2s0Mk9iTjFzRjFtREttY1RBSU5qeGxMMG1qTUpzdWJ2andHMnFTUStpcU1WZ21DSldXRnhjNXVOWDNjQ081ZTBzdEx2ODh1Vm5lZVA0SzlWK0dJd0xaTjZUK1hJNFJoUkRrVy94T0NpbHRuVG1YZ1dWVWtwVkdpL0ZqV3JzdWlBckhtdkxsbEgxMElJelI0aGFoZ01IMzZTOTVGamUzZWJCeC81Lzl0N3MyWkxydXRQNzlwQ1paN3BEemFncUZJWXFGRUFBeER3U0FBR0NrNEpVSzZ6b2FFWExWcnZiRVIwZFlUOG9XbmFFSC94a2gvOEFQMWlPYUEveTFHMjN1eVZSSWlrMko1RWl3QmtnQUlJRUNRRUVRSXlGbXF2dWRJYk0zSHN2UCt6TU05eWhDcWdDVlZWUWZoV244dDZUNStSODd2bmwybXY5MXBOODZXdGY0R3h4RElYRFU4WTJ0bXF6NkdPTVNNZENyMnIrVEc2c3hoVU9qYVZGRzFDa3RIanN6ay95cVVjK1Mwb0g1Uk9jQ3hSNXdKWGd5a0R3NEt2Q3QzTXpjVndJYW4xMHZON0RTdGlxVUFuY1NzeHFBUUxlZTBRVXZnemthem41c21NdTNjNDlOOTNINzM3NkgzSGo5bHZvc0lDUkZPMFNXaVlkaTNqZFdCWTBOSHdnTkJIWmhvYUdoc3NZYXkzZVFTMzh2QmRTMDJLdU4zOXBOMHdGVmdjckxPN3U0ZFdJYnozeGJiNzhqYjlnd0ZrU294bjR3V3c2UVkzVVBxcXdaWlBjS3VJcElzeW5Dd3lMa2paZFB2UEFaN24zOXZ1eExzT0lqYWtXeW1CVGl6SjFWekZRV21OVk9yNEJxRXVyNmh6WThXcTBKbjRONm5IamdobG4yeXFpcTFWc1BhdW4wbzZERm9wOGpTVEp5R3lMRUJ6RmNFU1FRTWZPTXplM3lPY2UrUWM4KzR0bmVQYlhQMkZFSDNHZVRwb3lkR3NVeFFVYzg0YUdoZzAwUXJhaG9hSGhNc1lZZzNPMTRGTUVZTy9ldmFScEM4S2xUUzB3R2FRZCtONFB2OCtYdi9rWGpGakJhc1hBVHdxNzRvdnJxWVdxQ1VIRXo4eWVvRkVvRWxJR3haQTJQUjY5NXpIdXYvTkI1dElGeWtHSnNoWUpDbVVOeG1pMDFuaGY0cjJmc1RlRWdpWUFBQ0FBU1VSQlZOcmFHZzExaTEzcTFnd2FRU3BMc1pnbkswb1RJRG95b0tmU0pBTEtDcUpqd1pnU0ljRmlNZWlna1ZJNHNPTVFjdzhzc20xeEY5Ly82Wk9jbGxPVVJZNDJYVUtvbXlFMHViSU5EUmRESTJRYkdob2FMbU9tQlpuVkZoZmd1bXV2SjBtUzJCanFraEhJeXdIUFBQVXMzMzdpRzR4WW81dGxETndLZ3NPa3hFanl6QkI2Rkl1S2hDaGl6KzJubW1WdFhDNDhmTmNqUFBiUUowaDhpM0pRTXA4dE1od1VvQk9jRDZncThob1FRclJZUUtGaWJ1b213L2RhVkxYV1pQS2tSQ3V3Z0tCVjNDcXRJS2lBbHZnOEtzenNpc2tDemhXNEFrelFXTlVpTXhsS0dVS0F3ZW9hTzdmdDVaN2J1K2dzNFVjdi9JaDMxdDdDK1JKajJuZy9QT2YrTnpRMG5KOUd5RFkwWENJMis0SnQrUHZFZXhBd2RlU1BBQmdTa3lMQnMzZkhOVmphYU5rWWRkVHYrYnFTbUtHcVFNc2tFam51MURYOVNoV1FTc2lGcXZHQk56bXZ2UFpMdnZIa1Z6aFRuQ1JSc0p3dkVTaFJLbGJtVjZzWnB3cE04TEY0U3JtSjBLMGVDb3NoUVdNb2M4L25IL29IZk96dVI3Q2hSVUtHTmduRFFVR2F0aWdGblBlRUlORVJ3TnFKUFoyQTkrdFRGd0xqRmFyeEFkNlVLbnQyZkR3bmtudnlrMGowb1ZXcHdrcUNDcHJnQTY0b2NjR1RwQm5MSjFleFBjc0RkenpDamgwNytjNlBuK0MxVTY4UmZFNWdGSE52MzhNNTIyeExtejhoRFEyTmtHMW91Q2pPSjBablBUbGxabHFWaTJ5eTBDMlh0c1cwNFlxbExvSWFuOHJaQ0tVMmtPZEYxUVlnb0Vxd3RMbjEwRDNvb28wNFBUWU5IaGZiejloR3JiditoTW4xcHp5b01vcGtNZkVSREloR2gvalZvQk5OZjdoR3U1ZUNnZVcxc3lSdFRlbEgvT3JYditCUC92S1A4VlZZdUpBdzJSSFJJR0dUUzlrempzUXFCeDJnakJ0dnhTQ0ZJcVVkVzg4Q3YvZllQK2JBM3V2b3NSMnRNbHhlNGpGZ05JTWlkZ2ZUbFVlckJEOXVRYnYrZUl6OWNZVlluRlVkOCtuN0FLRituMHgybzFwVzlPVU5VMUpjVjN1amdJQVNqUk5CU1NYUVV6Qm9CRWNydFpTRmgxWDR5SzZQc09PaDdmendxUi94N1BHbldHTklvVW9BYkJLanVNRjdFT2gydXd6NnczVnJaTHh2OGU5SGFQNEtOUHk5cDNFdGFHaG9hTGhzbUZUUzExNm1XdUlmYW9QQzQ3bDY4WHJhWmc1OFd2bWJUbmcvVWY2by93S3FFcHh4WFJvZGRJek1vbGhkN1hQVjN0M2tic1JiUjk2Z3M5Z2k2UWhQL2ZSN2ZQbWJYOENUSXlwSEtHUHU2RGhtcWRIWTZoSC9UZkpCQTlSRllKV0l4VU53d283dUxqUUpEdmpjUGIvTjRXcyt3bFVMKzhqb0lMa2dJY0dhbEtUVndtUnB0U2NiODB4cmZicDVkRHBzK1ZBU0gvWHZ1bnFveW5KcjlxSFJvdEJpeGtkVFZCVzlyaDdhS3F5MXBNcGluU1oxQ1h1NmU3ai9wdnQ0L01iSDBSaXNUdEhLNGdvaE9FRXJpMUtLZnI5ZldYNXQzRGVOL2swM0gyNW91R0pvSXJJTkRRME5sNXBwajlVcHBCb0IxMHBoSk1HanVlMjIyMmkxV3VCanVzRUZJN1U4TmxQdFgrdksvN2doM1Y3R3l0b1NlVGxnNTFXTEtPTjQrcmtmOCtUM3Y4Mlo4c1RVY21ZSjUwaWJtUFp4MVJaQ0FYaklUSXZsL2lwZGVqeDgrOGU1NzU3N1dHanR3RWhLV1pUa2VZSFNVYnlHNEhIT1hmSXZzSmtiaDAwR1NseFJZcTFGU2V5NFZnUWh5ekt1dWZvQTgzczdIQTl2ODlLUkYxZ2FycUFKV0dQSWZWRVZuc25VNHVJUnJYMXdBeHN1bFlhR3Y3YzBFZG1HaG9hR3k0WXBBU2hWMHlsQXF1cDZoZWFXbTI0bXRka0hzallsdG5JU3NGVUYvMlE3Z25Za21lTG95YmRwejZVczdPand3OW9udGp5Qm5vckFub3M2cXJpaEI0SUFoVUo1UmR0MDhFNndwRHh5OXlmNDlDZC9pMWJhSmM4TGlxS0liWGUxeGRqb1J1QzlweXpycXYvTEYrY2NJWVN4aTRKempqelA4ZDZUNkl6SEgvd1V0eCs4aXpubXNDUW9ieXUvaHBqdlc3ZTJSVTBFTERRaXRxRmhta3Q5UTl2UTBORFFzQjZaL2JFYTNLYXJGOWl6ZXo5S21kbjgxd3RDZ1JoMEZZMFZFWUlDMFpYd1ZKN2w0VExiZDg3alZaOXZQL2xEdnZpMVAyZkFNaTFqNlBzUnRXblZaRnMzRVphcVNzdmQ0Q2NMeWhtMnQzZXdPdXlUa1BMNDNaL2lrUWNleFliWVpsYThRaHVEVFJMRUttTEptVWNwSVUzVHFQUXZZOUkwUld1TlVncGpERW9wUkNRS1hEd0x2VzA4ZXNmakxHWTcrTjV6VDlDblQwWUgweEpXUnlzYkVtTWxWRzRLbDdtQWIyajR1NlFSc2cwTkRRMlhpbHFMVG9zOEZkYUYzQ3lhbElRT3Q5OXlGKzJzZzdpNit2N0NNeVZqanVkVVRxNVU5bExLZ2ZKNDdiQW1rSFFWVC83dyt6UE5EdnArWmZOQ3haa1ZiUEh6K0NtTHBjVndXTktseDZQM2ZwSkhIbmlVK2RZaW85VVNIendkMjBWcmk0VG9RT0NxWWk1bFRIUW9LQy92cmdMR0dFSUlsR1dKaUtCMTlMc0ZhS2tPZzVVVmRpN3M0YTRiN3Fic2wvems1YWRaWVlsOE5FS2hLMmVIYW1IVnpZQklFNWx0YUppbUViSU5EUTBObDRyMUFtOURLMWRMOURwTjZMVzJjZjg5RDZLQ3hqdVBKbmtmVmx0YklMWXkveGVvVXdXVXgrc1MwUVVqdjhiVFQvK1ViMzMzNnd3NFM3ZmRZdUJXOEw3RVdvMTNzZkJvUTA3c2VvMDlrMHNhaFp6Qk1NY2lIdUhoano3Q3B4LzVMRmFsRkgxUE8rdFNySldJMGZoeDI5bEFrRERqQkhJUkdjSWZDT2ZMa1EzT3h6YTJZU0k5UlVJVXRHZzZNa2R4SnFmWG11ZGpkenhFcTlYaWlaLzlEYXM0TW1NWWhVRzFJalp0WGR6UTBOQUkyWWFHaG9iTEVvVkZZNnIrVmgzYXJYa09INzRaeVEzaVFSbnpnWVRrYWd1cW9HTTZnZGNPMFVYMGlmMzEzL0xOSjc3S3FlRlJFcU5aSHA0bFVJSUJQeFpuNjBvdHRoS3g0NEl5VlZYZUo1UUluNy9udDduN3pydWhURkRhUnRPcWdXZGhZUnRySzRNWWdjV1EyZ1Mwd2t2QU9ZZDRIenNXWE1iVVVWaHJMVnJyY1ZxQjl4NHRtaFl0VExBUVBHa3I1ZERWTjNDMmY1YWYvL3A1bHZ3cEZEWjJTSnRtaThMQWhvYS9yelJDdHFIaEE2S09GRTFIak03WEpsUE9FMW81My95R0s1eXFDTWhhUzFsVXcrUUswcVFWdlVkSlNHamgwUHhIdi8wUEdhemtMUFRtS0ljNVNXSndZVEs4UC9GSm5Wd3oweEp6L1h4QlVGb1lEa2YwNWxwWWExZ2FMSkZtTUFwRFhucmxGL3dmWC9pZkNaUUVjZ2ErbkxTZGxmRkk5N21wTmlXMUhYd1p0OVdxbEhiV29SZzVmdSt4Zjh5MVZ4MWtvYjBUcFRSdTVLS2RsVEtzTEszRnZOS3FwYTMzZ2dTUEtNYkQ4N0orLzVuZC8xa2IzWTNIWnlhZ3VzbDh0WDcrdXVVVDNsdXVhZ2hoM0p4aDByQkJJNldpYmRxTWlpRkZtYk5uY1Q4ZnY2OUwya3A0OGhkL0EwQ1dkV0srcklLczI0cEN1SEFiZDZDaDRlOHBqV3RCUTBORHc2VWlLTVJIb1pObUNVcURycUtNUm1Wa3FvUEhjTnZCZTlpK3NKZDIxcVBNUFlreE9PZk9zL0R6czlwZlljKys3WXhjbnpmZWZZM3VYSVpwQzA4OTl3Tys4czB2amtXc3gwVVJPKzR5TUxNVHdDYUZYdU9PV0NsbFdhSXdiR3Z2QUZHTVJpVy85Y0RuT0hUdGpleGV2SXBFdGFJTlZ6QlltOUZLMjFVeDE4YXZxR2t2MXlzZEVVRkVvY1dTcXBRMHBIUjBoMnQyWDgrOU56eEFRa1l4OHJSMUJ5V2F2RC9DRnc2ZHFJdE5rVzVvK05EUVJHUWJHaG9hTGdrYXBTMGlBZThjUWVuWWZDc0loU3RRR0pSS1VXZ2VmdUFUN0ZqWVRTdnAwVi9wMDg0NjVLTUNiUzhtU3pUUTdxVXM5Yzh3OG4yMjcxbEUwcHlubnYwQmYvUDliM0o2ZEd4S3hQclpJZTBOWGxycnFPYTEwaDU1bm1OSTZab2VhOE1SQ1MwZXZ1MFJIcnJuNHl6YTNTU2hSVm1VbExtUCs1d1lKQ2k4RTliSFdxYkY2eWJkZVM4SjU0b0duU2VGbHFDaU1abFNDa3VLSzB0UzIrS2FuZGV5YldHUnN5Zk84UHJLYTdoUTBrdm1XU3ZYRUJ4SmtwQmY1b1Z1RFExL1Z6UVIyWWFHaG9aTGhMVVduU1FBbFJOQlJGVzltM0x4WEx2ckJxNjk1aURXWmlDV1VJSlZKbWFiWGtSVVVwU1F0RFRIVHgyaE5XZFkyTm5pZXovK0RsLzg2cDl6ZXZRdUdvK25SQ2czS1VLRHVvRkNtTzQrTlRNV3J5R0F4cExSb3ZTT2hJeVAzL1lKUHZ2WTUraWxpNVE1RkxuRE80VldLZGFtZ0tiMGpySXN6N245bDBORTlxSytRRlZBVzhHcHNuTFpWVkFxWkFodHVselZ1NHBQUGZoWnJtbGRSMEtLbEpDWjJCQWlIeFJOTkxhaG9hS0p5RFkwTkRSY0lzcWl4TGJTOGFDOHNaQW1LWGsvUmlQYnVzdW5QdmxidE5JNXhGbUNlTFMyaFBlWW0zbHVBbXZEVlJaMzkzQU0rZXZ2ZklzdmZlMEw5RGxEYWcxOXR6cWJUbEFqbHNtVFcxaHdDWUNtTEV2bWtnVkdaUlN4bjdubnM5eC81NE5rMGlHalJlNER5bG9TYTZzV3QxWHVyZEVrV1lwVVByRVQwUnFsb3hZSW00cnJLd2NCUWlLNEt0ODF3V0F3T0tmQmd3cWFRM3NPOCtEdEt3eWZIbktTNDlpUW9KVWxxQ3BYK2NvK0JBME5Id2hOUkxhaG9hSGhFcUxRVUJVRkdnTkZVU0RWQVBSSGI3Mk5lKzUrSUZhdkM3Z1NNcHRSNXU2OGhZVG5YM0hBdGhSWkI1NTY5dnRWczRNbHJGWVRFUnROQmlhSUpacGVWZDNBNnFjM0xEejJwMUpvaHVXSWpJeFAzL2NaUHY3QVkrem83VUxsQ2pjUTByU0QwUWxLS1lLUCsxNFVCU0VFVEhMdU9Jc1dqZG9raC9aS0lhaEFTWUV6QlFGUFVHQ1VJVlVwU1VoUlEwMitWSExINGJ0NDRJNEhTVWdweFUzMitWSjdqelUwWENaY3VYOEZHaG9hR3E1NGRJeXVqaXZpd1ZjMVhOZnRQOGlqRHorSzFiWnFDbUJ3THBBa0dkNTdqTHE0UDk5QkJRbzM1SWRQZlk5dlAvRU5ocXpTU1ZPQ0toQWMxU2oydW9oc05NNVNKRkdBbitjckpOVXROQWtmdi90UlB2SHc0N1JzQnpkMHpHZUxoRHdnUVZHR1FPNUt5dUR4SXJnUUtMMm5jRzVESHF5VytGQ1hTNExzeGFDRWtoS3hndGlBYzBVOHY2U2tLc09FbERBSWRFeVhXdy9meGwySDdxWkRoekR1VzN5cGQ2Q2g0ZktnU1Mxb2FMZ0MyQ3dmVUU5Tno5TmphUU5OWjZBUEdyMXV1cDZ3YmhwL1ZvbmdRejRXSmxabE9QSHM2Tzdqc1k5OWhsc1AzY21wNDhzc2RuYmhneU1FQVFNaUhtMFQvTmgrU2xYWGlFWnZadGxXRGNPTGlpMWVnd0pSSmErODlRSi8vZDIvNHVUb0NJa3lyQlpuOFpRb0RhRTJSWmlwVWhJVWdYakZ1UzJjQ2pRS2d5SEZCK0YzSHZ0dDdyLzlZYVNNYmxVSkthTmhUcmM3eDZBb0NSS0xuWklrUWFtVUVBTE9lVUlRRERwR3AxVThYblhqQmEzaWtkenErcTJ0d1lMaW5FMGpsRng0MFppU3VsM3NoYVBFWTAwS1hsWGV1QUZ0TXF4T01DZ1c1aFpaV1ZwbFlkczI3cjN0UG80dkhXVndla0RoUU9vN25pMGFUMnkxVzgxbnZ1SERSaU5rR3hvdUFoR1pmRkhXQW1KR1NHejBwSndOY0UxK20vYXBySVZyUFZjTEczMHNWUUExZWEydUpNYlk5a2hEclhNMi9mSnFvam9YVFR3L0U2UC8rQ2RWVDgwVk5HQ013dmtjSVdBTUtBMmxCNUdKZHl6QlVnd1R0dHQ5ZlBTNiszajB6czlSbkJZVzlDSXlFbEp0UUVPZUR6R3RoRExVUlVLVko2bG90Q2dJazBpcDl4NnR3U1FhcngwQmgwcGdiZTBzNzV4OGhmLzEzLzhQZUFaQXdGZmVzQm9JNjY2L3lYWGkwRGdnSndBbUFlL2pmSVVDTVdnTWhvUnQyUzRlZStoeGJycjJGdWJiaTFBWUtEVloyc0VYd3BtbEpiYnYzRkdsRXppS1lZN1dGcTBzU2tVM0I5RWFFWTlSSG1zVGxQWTRWMUNVTWYxQW0zUzhyM0VUd3pndFF3a29RdlZ4MUJBazdvL0kyTmJMcjdzRjNPQm9WUjhJWWNQbnV6NGs0NXZDcWMvbmVuR3JObm0vUnRCS0V3cUhDWWJVeHZhMVhod1NYSFEwY0E3RTBWOGFjdFhDSGo3MzhPZVI3OERicTIvaUpkQ25EN3JxeUZhcGQyczBpQ0IrOHc5M2RTdFE3VU9UWk50dzVkTUkyWWFHaStDaVc0Uyt6K1dyYWR1ajgwU2JHaTRsazlzV2hjYjdjaXl3dkFjVDRrdE1DL3dJQ0pDYURqMjlnNTF6Vi9QN3YvdlBrS0hCQklzS1VSeUxDZ1FWRURYbEVEQytpUnJmOHNSMWh2aTdpR0JUU3hseVZvWkxwRzFOeTFwZWZlc2wvdktyL3haUHZxbVllYS9YbGZlVDdiQTJSWXRGT1Uwdm0yZStPOGNkSDcyRHhlNE9qREwwUnlPS2tTTzBBNTNXSE51elJVNmZPazZhdE1peU5rcGJ2QWRYQm56d1NGQTRWMkFRZ2dvNEY5MFRsUEpZYTdIV01zckRsTmVzWitQNFJLeUlVako3ejNZeGtkaHA2bVc4WHdlRldLd0dKdWpxZk1ZUHRxaTQwQmd4RHhpalNGU0NOZ3FjTUpmTWMvT0JtOGxmekRuT2NjQ0M4c1F3ZmR4djc4TUdRZDdjc3paOG1HbUViRU5EUThNRlVrY0JJeHB3TUpVN0dvZkd5OWpXdFk2RjZmRW9QWDVZdlZTaWlPdDI1L21qUC95dktBZUJ1VjZMb3R5WUoxb1RvQ3I4bVgyQnFGQ3RQbUJNUUNXQjBkb0tXVWZSVzhqNDRVKyt4NWYrd3hkWktrOGc2QXVPeWEzZnJsQ25QcURvNTJzbzBmeFAvK3AvNU5wOTEzSG91cHU0ZXM4QkZ1Y1dLSldoWHpwME1DenVXaVNVZ1NJZjRmSkFDR0IwUW1vempOR1VoY0ZVK3hKQ0lQaDRmSlZBRUYzZDJFMkxlTVlSVHpWelh0WnR1NjdtWGVicUxvUXdEZ2FYVW1KVnd1RkROekljRGpuNStta01HaDgwYUkxU0NnbGhmR09pOUtUeDJHWUdCNWY1cmpjMHZHY2FJZHZRME5Cd01TaEFwbVdDVUVjRnc5VC9FTkJLWTR5S0haMUNJSGhvMlI1QlcxcDZqbi82Qi84WjRoUjdkbDNGa1RkUHNOalpQbDVxak5KQlVESzF6Rmg4TlZsdmpPNkpDakY2YVdGcGNJcFd6NkJiZ2FlZi96NWYvdm9YV0NwUGtsb2JjeTNSNDRqZCs1a2lJVmJPVjlGbEx4NGs1cldXakZncFBJYVVGOTVhNHBkdi9SeUZaWkVGcnQ1L2dNT0hidVNhZmRleGUvdCtpdHdUUWlDekdaMVdGNjB0K1dqSWFGQ1EyZ3hVZ2xFYWl5RlV1Y0RlZTRwUmdjNlNxY05lQ2RvcVFqdVJyNWZ2OExtY3cwSk1TVXdSQ0s1RUpURXBXRm5GcnZuZDNIRHRZZDQ0K2lhdmpGN0Zpd0VmVU1vQWFueHpGVjB0Wk9xcWFDS3pEUjlPR2lIYjBORFFjS0hNSkQ1dkxPaXFJNjhLMEVxanRjVzdRQkJGak5jbWxEbnNuTnZGZi8xSC93MjZiSkhZTmt0blYrbDI1cGcwSFpobFBLVE50QVdWajZrSGVGQWVVUTV0RmE3c0kwbkdzeTg4dy8vMVozK0NvMkRIL0J3blZrNVUwVHU5b2V2VWU1MHk1V2VyRkNnZEk2ZTYyanBmcVZ5RndtSTV6WkN6UjA3d2l5UFBrdEpsVjNzL045OTBLN2ZkZGh2ZHhUME1pclBrL1lMVXBIUVg1eGl1cm9GTENVRkRNQmlka3RvTUxYNHFJbDF0VXpXMEx0WEJVVE9SMk9xV1FrMXlhR2NPNUdXR0ZrMVFnZFJPSENxTU51UmhoSldFL1R1djVyN2I3K2ZvMDhkWXhzY2lPQkdNTW5nUmhJQ2d4eDNacEZLeDBxalpoZzhoalpCdGFHaG91QkRXSnlGdVJpVWNGS0NVd3ZsQURHTnFOQVpGeW1LMmpmL2luLzlMVkptd1ovdGVWcGR5aW43QnptMkxESWZsV0hTTUkydFZaRFpHN0txSG1vaG8wZEZSd0pzU2pLZTNyY1VQbm42Q3YvcmFGM0Nza1JqRjZiVmpzV1BYdXNLMDl4bVRuZDNWNm1sdEZFb0VWUFE4OVVHcXBJc1NFSHoxWGtmQnlhSGl5UFB2OE9UemY4UEJ2ZGR4MSsxM2NNTzFCMUdwc0RRWU1OK2J4d2FGTDZFWWpCQXZHR1BReEtJd0pGVEhnaW9TRzZaRVdwU3lRVTJFL3VWSVVBR3ppUit1bG1qTnBrUVRuS0NOUmdkRHVlcElrcFFicnIyQlErOGU1TlhqcjlFdlZ3a0lWcGtZR1VmSDRyUE5rbVViR2o1a05FSzJvYUdoNFdMWVVPbytOYXZTZlhHMnJXUmpBbWk2ZG9HRjlrNys1Ui8rbC9nY2V1a2lLMmRIcUpDd01EOUh2ejlFNitwUGRKVXFzTDVWYkoxWU1LNmNWMEpRRHRFbG9uUE9ycDdoeU1rMytmcTN2OFNLTzgydTNZc3NyWnpHNVRtOStUWnJxOE5LQU5aTGVUOVQwTHBPazZqV0wrQ3IxQXBmMTZTcEtDRlZkUnlNVWdRUkhDVUZBaGhhSkx4dzlGbGVQUG9zdTFvN3VmK3UrN25qbGpzNXRiTEtZbmNuV2RiQmlNSVhKWVVVR0JYd09tQUFOVTdyRUxUb0dWY1BKUnNUTCtyamRMbEdZNmZ4aFk5T0J0N2p2U2V4Q1hsUlVPUWxyWVVPZDk1OE40V1V2SHprRlJUeHhrR2ppWm15ZnFOVnlsU2hhQk9WYmZpdzBBalpob2FHaHQ4RUVvV2RFbEE2d1lqRm9WQ2tkSk41dHMvdjVnLy94Ui9oUm5Ed3dDSFdWZ2Fzclkzb3Rsb29VZU1oY2xUWW9EbW1xK1FuNGl3UXRFT1VSM1NKTnpudm5ucUgvKy9QL3pWTG81TjB1Z25IVGh3QkRWbFBzZFlmanBlL01TM2l2VTFGMXJuTkFkcEVuMWVSNkdvd25sMHBTcFhFWjF3UlNCS1BjNDYxTUJ5bjI1NFlIZVZyUC9vcnZ2bWpyL0daKzMrTDYvWWQ0dW85MTJGTWgyQXRvZ3BFRkpKRXk3Q0ovVjIxTDZJbUVkcEt6SXFxM0F4a3l0VkFiUjVaL3J0R1Y5SFlvQVFqMVhtc25sZEswYzdhRFBJQmVPaTAydWhDMCsvM1VTVWNQbkFqYjczN051OGNlWnNSSXhEUW1DclZvTnJYUzcrTERRMi9VUm9oMjlEd0h0bmc0d3BWbWN5RnYzOTloRzJyOTB4VHR5WlZTalZSbFV1Tk1kR3N0dzRDVnQxbUpVeEVyRlVhUXdaaVVSaGE5UGpZdlovZ2R6NzN1eVN1aFVvTXk2Y0hLQStkckljNFJZbkhtTmtlcENLQ0lMR3pVMlVwRlVPK3NTdFVVQVhhQXNweFp2VWt4OCs4elovOHYvOEtUdzU0K3YwUlNzZEFaRDZjRER1ck9uZHlLbHBYMnh2WHdjNTZkRjdXWGE2eXlXaDk4TEV3RFpnMURLaWVLK3YzR0NqTmFHejI0RU5NdVRVR25GY0VITjk0K3F0MDJjWkQ5M3ljR3cvZXlueDNPNTMySXNOOGhEVUphZEI0RnhzcVpHa0dRUkVLRjF2Y0dnTkJxaVlRc2V4cE1wWHBUWm82dnVzK2M1V1A3RmIyV3VQWHl1em5lOFBMMTg4WHBobzliRTVRQVJVVXcrRXdaaGtyeGJBL0loQm9wVzFjV2JKODlBeWYvdGduT1h2eURDK2ZlSkZVWlRncDBHaVVOcmphU0xvK0QrZnFJdEhRY0lYU3RLaHRhR2hvdUZDOEI2V3hXWUsxQ3ZHeEk1WUUwS0xRV0N3OUpDUUVFcllsdS9sUGYvK2Y4M3UvKzU4d1dndW9rS0ZDaGc0SlNJb0tNWDkybGpDT211bzZ3bHRGOFZiWGxzbXloS3lkTUNvSGFCUG9MclE1ZXV3dC91S0xmMGEwQTRzRlRrcEpMTWhTekdSRDFLbVUwK215V3NYSXFsS2dxZ2lyMGxGa2FodW4xdFp2c3JQdGFxZks1R2NFNElhd01qRTRLa0FLcXEwUkJTTWZjMmw3N1FWYXBzTWFxM3pyMmIvbVQ3LzhwL3o4NVo5Um1pRzJKeFJxeUdxK2pHMHAwcFpsYmJqQ2FuOEpZeUJ0cFhnZlJaeWFqdEJPYmNhbDlqTFFvbWFLMWJTb0RTNEdZZXIzT25LckpCYjRHZEVzWnZPNGxZTGJEdDNDSG5NVnVReEpxdlBoNnM1ZjY1a3BUR3hvdVBKcElySU5EUTBORjBJOU1oMENibFFuaWNZaUxxTXRWcWVVWHZDU29FaDU4UFpIK054bmY0ZE9lNUd6SjljNHNQOGdxeWZYMEdLbU9qOXBOcE5hMDQwd3BtWHU0dndjbzd4UElLY3psN0s4ZHBvWGYvcHp2di9VZHpqVlAwN0FJYmhxcUprNHVnNWpGV3R0ak96SHJuQ0NEMElJTVJCWkYxR0pyUHRkVGJwL3Fhb0JReHpPcnJldVRqdVlkSnVhb2M3UDFFQUNxbTFSSGtMZlZVUGpHbzltZWRpdnVvUlpNdHFjekkveGxSLzlGVDk3NldmY2NjZGQzUEhSdTVucjlDaUtFVDRQNkVTUlpTM1FDbkVlcmErTUVRdFZkV1NyNDdqVFlsYW0ybFdzai9NcVViUjFpelBMZlc2NS9oWk9uenpGcVZkUElDZ2NEbytiZmNkMENvWkFJMlliUGl3MFFyYWhvYUhoSXRER29KVkZmQ3hpVWxoQ01KUll0bVc3NkhVV2VmelJ6L0RndlE5QnNHaVZrclZiSEhuOUtQTzlSV2JMa1RaanVxbG9GREQxYTQyRlVUa2s3U1FvQzcvK3hhLzQ2dGUrekhJNFJkdTBHUG9TUWFQSHJYT25MQkFJaE5MaEs2T202S2NRMVdxOWh0VEdWcmhVWXRZcURRWlVpRG04V21YVURRcGtPdEtucHNld3d5U3lPQ1hTZ2dMdkFyTHFZc3BDc0pWc1RXalJwcFYwdVBuUXpTUkpocldXTjk1NGk3Zk92c09iWjkvZytCUEhPWG5tQlBkODlGNjI5Yll4MTV0SE9ZMGZsZEhaUU13NHpLeW1pcnFpclpYRWtQbGxrRHVxdHlnNEc0dlpxU2p0V09oT1hTY3lFbEtmMGpNZER1NC95S3R2dnNxNzVUdFZzMlJOT1g3aDFIUXFvK0VLMFBrTkRlZWxFYklORFEwTkYwaXYyMk13R09HQ1I1RmdhZEV5UFhSSUVUSGNkK2ZIK2V3blA4L09iVmV4dExUR1hIc2UwS3d1RFZpYzN3NXVNdHd0eUZRM3FtbnhXb3ZQMmd3MGlsbFJ3c2xUUjFuWU5zY29YK05uenozSDkzNzBCTXRoQ1NFdzhvTVlpUjJqeDlPcXZJaGVOczhnWDBNUURKRG9oRUNZNUhNNk5SWTlHb2xGVms1UWxWK0NsN2g5R3FuVFNhdHRuZlpTaUo2NWs1OG5kRHR6OUFlRDJDeWh0WjJReDNYY2R1Z09IbnY0RTh6UEx6SWF4UjYraHcrZTRxMGpiL0RjejU3ajFQQTRULy84Qjd6ejFoczgvT0JqM0g3ekhZZ1hSc1dJbHU2UW1UYXVjR1M2RlIwS3JrQ0NpdWtnTmV1RnJCYWdET3pvYkdQbHhESTc1eGE1NDliYk9QbjhNVWFjTzMrL1NabHQrRERSQ05tR2hvYUdDMlJ0YlEyRnB0dGFvQmg1QkVNblhlU1JqMzJTZSs5NmlFUFgzc2hiYnh5aHYreTRhdnNCVHAwOFF6N3NNeisvaUVIaFpvVG11c29wSlpNaXNxbUlXbDJsSHdqczM3K1A1ZUVaWHZqbFQzbml5Vzl4Wk8wdERBcER3b2lTaVF5dHJiLzBWRDVyWUpTWHhGNWNta0RBQjBXb1VnV2tFczZHR0NtdFJiSER4V0tpcXMxQnplWUZGLzZjYnJUbHdOR21oNkRJUnc1RHdsM1gzOGREZHovQ3Ric1AwdS8zNlhibWFIVmJiTisray9tRk9VNHZuZVRVUzhkd2xCeFplb2UvZnVJYkhEMTZoUHZ1dkorOXUvYmgrb0ZSZjBpV1pFamx3N3Joc0tvcHQ0Tkx5RXhEaDdvYjNKUjREU3AyYVZPaU54R3lpZ1JETCtsdzR1UzdaTHZhM0hEdElYNyt5dk9zOVZmajhtcVA0YW5ycDg2UHZneDJ2NkhoQTZFUnNnME5EUTBYeUs0ZE8xaytzOHBvTk9McVBZZDQ0TjZQYytkSEgyRFg5Z01vbjdHeW5MTm4xN1gwbHdhOCsvWkpGaGUyMDhzV1dGMWRSbXROa21UTWRBS3IwanBuZzRoVHZxMVFoVzgxV250T256bk9DeS85ako4ODl4U24xazZpQVlOQkdlaW9EcjRhWE5aU2R3QXpWVTZtQlFJRkk1U09WZkRhS3ZwckEzSkdLRFJ0a3pIeU9RWk55N1pCQzc0TUdDbWp1RjNucWpCTEpkQ0N6T1RXVGs4QmNobXh1N3NITnhUNlljaUI3aUVldnZNeER1Ni9pWldUeTFqYklzOUxWcGZQNE0ySTNUdDNjL2NkZC9MR202OXhjbmlLVHRybHhPZ29ULzdzTkFURmczYytTQytaUjJ1RFRReFNoT3A0WG5sMXpWSjFJUXNxVkVraDYxTUxOS2xLS1BzRnJhU05EcHE1Ym9jYkRoN2krQXRIV1NZL3AyQzlERElyR2hvK0VCb2gyOUJ3Z2J5ZkVjdHpOWDY2Y0VJVnNZbWRuRVNGamY1STQyUTR0L256SHdRWDBoVHFnNWoreHFnSFphZTdYdW1aK2ZGL3pmTHBnanR2ZVppSEgzcVVRd2R2SmpVOWlpRVVhNEhVS0h6aEVZWjBXbDA2bVNZZkRsRkswVzEzRUJHOHpLWVNJQnBWZFdiUzQxTVpCYVBnNC9uV0hvaGVzVm1TY3VOSERuUE53YXZCQ2lhSkhiU2NLL0JTa0NUSmVBK29CV3hWTFM4cXZsYVoyRmIyeElsai9Pem5QK1dGRjM3T1NFWjRELy9pbi83bmROczlPdTFlYks5YmxMRmxxa2xJRWtOZURHZU9YTDNKZFlYOVp2WnhOVXJBQmswb0JYR2ExR1FrdW9zTkdmbFNTZGNzVWd4emRpd3NrdnMrUzhPVFpKS3lmV0U3TzNZdWNQTHRZeXdWSitpa1BTZ0NUNzd3TGQ0NThoYWYvOFRuT2Jqdk1LUFZJVllubURvZ0tkUHIxalBiT2Q3V0toOVZWVG5Fc3VVSEpVYTBMeVpyNFh3ZndYRk4zTlEyanQ5VFBlYzFMQzh2MGR1MnlNZ1A4TGx3ZU85aFhudjlWZnByQXp3NUxvUU5EZHhrYWg4YUdxNTBHaUhiOFBlYTgzMFJ6WHdSanowajY4Z0lzWHZPaG9WdVhLNFdOdldSbmY0YW1aNC9QWlM4NWJiaGdSekhpQ3d6NUVYMDVOUW1KRUJ0WmdBQUlBQkpSRUZVUGx3NThmOGNiOXBVOVRzd1NWM2NBbldlYjlzUXVDaEJLdWVacjlUR1NONTBSRys5Ym84YnpkaG1LcHlySytuVXNQM1lTN1VhZHRmVU5sZ0dTd3VGcWRJQU5CbHRicjc1Vmc1ZmZ5T1BmK3l6S0VsQU5GSkV3WnY1dUF6bGRQVUhOdUNLQVFDMk90NCtPRVRWQSsrTUkyNUtkTFRna21qNEttSW9YTTc4Zkk4aUREbDE5bDNtNWx0MEYxSk9uRHBEcWxza1dYekVHNXU0UHBJNHJTMm9Ka3dFWEZDUXRGc004bFdzVmJTdm1lUDR5UlA4L0lVWEFKanZMYkI5WVJmdHBFY3JuU05SS2NFb3hNZmpZSFVnVDRhZ1pDejQ2dHFsTUpPRnlmaUUxY1A1aWpoY25vbGhOTWlSRk5xdExrakNhTTBSaWtCaU15UUhzNXF5cTlkak5GeEY1NXBlMXFZc1I0aktjYXBreFExUnltREU4dHFaWC9DWDMxemo0M2MveW9OM1BjeVpZMHYwc25tc1dQSlJBYUxwdE5vb3Bjanpza3F6cUsrSEFFckZzamNKc2VoTkp2dFZONmlReWlTMy9sK1BiMEttL2o2TWY1VEo3ay9ObjN3TUo4MHVaTjNmRnhTWXFXS3cycGQ0WWwwcjVOb1IyaVk2U0lTTXNDeGN2WEE5RDkvNkdFZWZPZ1lFMnUyVTFYd0FCa3lpOGFPQUlzTUhQOTZHaG9Zcm1VYklOalQ4QmxtZmh6Y3RKT3M4dmFBMnZPMjlJWnJTbFlnUGxFcURHRkJDOEo0UVFPdDFRbTY5aUlWb2FIK3gwZG4xb3Z2OVROVzU1MC81elcrY0NtaFRLNmZLcHFnUzFsSUozalN4MFVYVkI3ekllRDRUcllEUkNhbEpDVUZ3UGlBWVRGVzRWZUFSTER2bnJ1TG1qOXpHWFhmZHczWFhYaytXZENoSGduR2RLR1RaL0VaRWpXOWF0aEFMYXJLRFNpVGU4S0RHZWF3aXd2WnRPMW51bjJYb1Z0bDd6UjdXUnFkNDVoZlBzclJ5R3F0anU5dXRDR0Zya1NJbzh0SkhBMzNqR0pVcnZQN0dyOGhsQlNHd3RIYVM1My8yREludDBqWnpHQ3ppTk9MQktNRW9DQ3I2MUFZMUViRUNoT29PU3RaRk9Pc2lzN3BkclZzcjZiUjc1SzZrUHh5d2JYRW5OMTUzQy9NTDh3elByckI3MjI3V1Z2b3NuZTNqaTRDSVpUREtHYm9DcklvM1lnTGlQZDdGUklxamErL3c4MS85bEtJb3VQZTJCM0JGZ1hNT1phTWpndmVDZUE4QnRKb0licWt2bittN28vRWRwWXB6eFZKZlBJTEdYS1Q3d1RtSC9Xdi8yNmtYNjZuUFJGRGdqYUpVQVNlZ2d5VUpLYW0wMk5IZXlmWGRRN3pjZjVGaU9LenZ6L0RGVk4vZ0pybWc0VU5DSTJRYkdxNVlOTjNPZHFCTmNBRnRNb0lmQVE2bEFscUQwclVwdks2K3QwdzFmRjE5Z1orbjR1VmNRZ2dWeGwzR0xwUzZDOUpXUVZtdDFKYnpVYkg1UUxXa09pWTROdmdYZ2JLWWVuMDFWYUl4T3JiLzlONGpRVkdFdWdBcVJsejNYN1dmblR1dTR1Njc3bVBQcm4zczJiMFBhMVA2L1NHclN5T0dtamlrclM4ODkxSkpkQUtZZWFLSzhBc0JsQ2FJc0RvcVdDdVdzVmxndWIvS1V6OTlraWUrLzllc3JwMWhGTll1ZVAwQmpSRDlTeTJCZ2lGUUFnRUZGUFQ1K25mL0hFZ3hwRldVdW5hT0RkVXhyYTJocGxybHNyNGFQb3lQdjU3NlhWY1I3M216UU9rZGE0ellrZTZpQ0gxdVAzdzM3ZDRjZlpZWTBLZmRhdEdaNitEMGlMZU92Y1B4TTJmSWc1dHhGRk5hRTBLZ0lPZmxZeTl6NnRRWmR1ell4YTc1M1N5MHQwTUpSVEVpa1JTajdPd1dxb2xBZkQ5SDhGS2ppVGRBM3Z0b09VWTBBVjZjWCtDak45L0thOC84aWhHUUpRbUZLdU0rR2tVSWsrNW1EUTFYT28yUWJXaTRVaEdEY3lsVzc4Q0ZFY0Y3NGtmYVlaVENsUVh4eTdZdUZvb1NKT2FBeG1LZjJHTDBBcitRNVNMZXU0NnRoS3hzOGZ4RVB1dHhQRExHbURiK2szWC9JSTRjQzNEOTNrUHMzckdUQXdldVpkKysvZXpZdm92NTNnS2R6aHhwMG1KMWRZZ1dReWdOUmFGSjlUemQ3VHRwSlMwU203RjZkdVhpOW51Y0p4Rmk5SGJzdnhxSC9ydTlEa2RQSFdQYnpqbVNqdUxKSHp6QkV6LzhKc2RXWGtjb01XUFpxQzlnT3BIL0JmbFkxaWdiUFdOREFKR3k4cGoxVlRCYjhJUXE4VUxqcDFKcjZpMmZGcldUc3hUR3I2blBWWjNDY2NvUEVRS0M1bmd4NENjdmZwZDJMK0dlbSsvbDNiZFBrTnFVZEc0YmE2TTFYbi85Vnp6enkrZnBoenptei9nd1hyRTJzZEF0aEpJY3pYRjNuSzkvOTJzOGN1K2ozSDdUUENLYXZKOWpFa1dhcE5WR1Q4bHZGU1piK0I2U1h5OTlQRlBOamdLbzJNYTJLQXJTVHNxQnZRZllPN2VQWDYrK1J2QU9helNsQkxUV2hQSmNPVGNORFZjV2paQnRhTGhTRWN2eUdjZEhibm9RNXdxMENaVEZrQ3d6MkVTeHZIeVdMSWxKbWVNSXJGUmlWaXdUYy9vTEY2T3lhWkxxOVB4ekM0SnhwSzVLc1ZnL3hZZE5uNjhEeVpvWVdkVmFiM2dvcFppYm15Tk5VenFkRGdzTEN5d3VMckt3c0VDdjE2T2RablM3QzVSNVFaNlhsRVhNc3pDUzRuTkxYaGgyYmJ1R3RlVTExbFlIV0p2UzdmVXd4akpZSGJLeWNvYkZ1ZDRGSDd1NC9Zekg1R1VzcEFKQmUwUUZSaUdRdGdOcnhSbGVmZlZGbnZqUjF6bXk5R3MwT1FHM1dZYjIrNktWcFlUZ1VCSmp3VUZOQ1ZGZFBSY2NJbTVjOGxZTnNzOWtoWVIxUDAvdEZqRFJoWk5icWZoS20ycTh6eEVkM1EzS1FuamwrQXZJc3dVci9SUGNlOXZIU0RTc2xHZjQ1VnN2OHBOZlBzUExSMTZxbGxwRklDVzJLd3NoWUV3QWJSQVhqODJicTYvVGVhbE51OWZtd0s3cmFNKzNVQ1U0eVZIYXpucmZub01OdWVXemQxT1hEUEVCcSsxWXhBS1VaUWxGb04xcWMvaTZ3N3o1d2hzNFYxWjUxNkVLK2dlME1RUi82YVBLRFEwWHkyKzgvcmVoNFRkSGo0TzNmSXIvOXIvL1l5UWtJQm1LbE9BMTFtUTRYNkJVQU9VWVIxeGs2cXRVWW1QT2N6RXR4RFlyMXRKYnZILzh4VDMxNmFweko4ZkxxZE03MVdSK1BSMFh4YXpQc1ozZE9yWXRkSG5qalYrenVHMmVFRW9HL1dXUzFHS000SHhCWm0yMW5PbkJYVTFkOVl3NjkvNXZMQmFhSnB3NzlZQnpweWFvS2kvMFhNR3Y4d25oY3BUSEwzSFJvQ1g2bjZvd25ocGxZMEZlVUJNL3ptbyt3TnJhQUkwbVNSSmFXWWZNWm5qdkdReEc1TU1SSXRCdWQybGxIWlFJdzBGT1VSUVlrNUNtRmduRitCaHVtaU83VGlsTjc2c0c4S1o2djBjb0VlWHhxb3hpVWdkY2NMVG1Fbjd3aysveHBhLzhlNWJkY1lRUkFZZk5ZdXJFaFJMek1DZS9TSjAyV1gwcjZLektzWllZb28yaTI2T3FMQldsaUsxbG1jcVBIUmQ3TWZQdG9xZjJYY25rYzFISTFEcnI3Ukd3UXVWZm05RmhIcTBUVmtLL2FyanJJRE5ZQzVMM0VWZE9TcWJxRFFzS2hjR1FZa200NWFwYmVmeUJUM0xEL2h2eGZTajZuclp0VjM4RHFsV0xoN29aeFBxTFVsUlY3Qlh6bG10L1ZpM2huT2UvZm01OXNlZjA3bzVYc2NuODZjMm8veTdVcndzS3ZIaVVpcEZ0TFJDY3A1QUNaM05DeDNOeWVJeS9ldkxMdkp1L1MwR0pueW91TTliaTNVVmNRQTBObHdsTlJMYWg0WXBGY2Z6WUdlWjZPMm1sSFh3b3NhYU4wb0l2UytaNkdjTmhINWkyOEluVjhHcEdQRzh0RnVWOE1iL2d6eTJHenhHeHJiOTR6eVZrOVRseWNCVmcwMDYxSFJPaEd2Q1ZnWHpBcWlRT2k0dmdnOE03bVFoYkVYWXQ3Q01mbFl4R0kxWUhCWDFLa2lRaFNkcDA1dVlwaWdMdmhINCtSQWtZWTJsblhaUlN5SGxFL0htUnl0MGdhRVRQTHF1T3lKWVV2UEdyVjNucUp6OW0xYTBnQ0VtYU1DcGRkR2U0S0h0VVRXYmFRRUJVd0lVU0g4SllUSWE4S2lDVU9uNGFCZmVHeUdSdHVnK3p5Y2pUK3lONjh0cnhDNnJZcjZtci9pRnJxZGdXZDFqZ1NvZkNNOFJETUNobDhGSkdvZXBLWEJFanlSYUQ0S2FFdUlBUlJBTGFKTGd5NTZWamY4dmNMK2JSR1BZdTdFTm5DYVV2U1pSQnhta1drM3pmNmJhMjliRUNtU3EyQ3VmNjJQeWRvQ1ZtVnRqRWdJODNuZFlZTXBVZ1VpTE9NOWRhNEticlBzTHBsODlNdGJQd1VjVDZSc1EyZkRob2hHeER3eFZNdXpXSFVvcWxwVlc4TCtsMk94QUNxeXVyYUozZ1hmeUl5MHhxd1ZRQVRNNmRZeWwxQWNsV3VaWXlOVldiVEFPYlAxKzl6NUxHcVBrVzd3OSs2L2VMQ29nUFUxSGJXaVNaU21NWUNxbUtwd1RBb2hVWWxhSk1qTmN0bnhsZ3JhV1Z6cUV5UlFpQlVEcktrYWNraW15dE5UYko0cUtESUZXaFRHME5kbkhvYWhrYVFST1VIMWY2aTRKMzMzMlhmLzF2L3grVzNDbkFZc25JaTFVQXlueXlqQXRDTkNQdktrbFozYkFvb2tlWVNzQjVJR1VTb2lVcVoxWEUzd1BFNFgwekNlOHFOdDdZVEkrQ1VKZUx4Wit0c1pRdUJ4d0t3UTBjam1JcU1DemtqT0plcWlvcUtxQk1oZ1NoSGxNeE9obEhzcWR6SUFvM0lIWTEwenovMm5PMGJNYkNmWXZzWHRqTjRPd1FVZG5FV2VKQ2lyM09NNkx4bTBaRVlzNnJENFRnTUluRm1BVG5raGpaOWlVSGRsL0wvTXQvaStOVWxlMHNKS25CaitxRlhOSmRhR2k0YUF6dzMxM3FqV2hvdURCU3R1MDZ5Q2NlLzN5TUhHRlJHRVFVV2x1QytOaXJmQnd0bWg3SHJCNFhrT05aNTZNcEZVdUoxcjgyRGozS3pGUTIrN0pjTnh6THhsa3pnYTNwNWRjUEg4Q0hnRFlhbTZUVitpQk5Xd1FCalltNWM4b2dxSEhsK2FRMFNsZjdVUm1jMXEwd3A0V3ZtbjFlUkpBUWk2Z21MVkNySVZkMEZIcWl4cjl2TlI4UmROQlYvbUUxUDhSSXAxUVJVOVlKOFBWVExRcGQvVk1TaTd1UUdGR3JmNDk3T1RXL1NrVU5JV0JOYkwrS1JJc3VxbUZoclRSYWFZelM4Um9Ta0JEci9KRlk2eDhsd1NRN2RQYjhiM0grWkhMK0VNMW9VTEpqK3c2V2w1Znc0bWgxVWtyeE9POTQvZTAzK0wvL3piOWhHSVlrcEN4MDUwbXpoT0E4aUNkTlczaFJKRWxLSFZoWDJsQ3J1U1ROcWh4SWRZNkh3ZGJwRndqWXlyT3R6ZzJ3YVN5SVVncU1CbCtBQkxTdFBqcmppTzFVZVo1TTVSU0lSdGtFWEx3R3V1MFlGZlZCU0doaHBNM2VoV3ZRTGtHTEpTRWpOcjQxMUM2NzlTTm1NRmZEL3Q2aGlDa2lDb1VYSDYvUDZVVGUrZ1JJdlBFU2hOVXpLNlFtWWZ1MjdWaGp5SWM1N1ZhYm9zenhJVEEvUDBmcFN2cURBWFB6YzdneXJsVUw0L05lN1hqY3ZTMC8vOHl3L2lNK2V5TzV5ZnZIVDg1ZVA5T3BTUUJHV2NUSG0xR2xGRDRFbkhmajY5TDd3SjQ5dTNuMzZGRk9EMDloc0hnY2hlUWJsdC9RY0tYU1JHUWJHcTVvcGowdjF3MTMxdEhTY1FTc0Z2TGpGMHk5N2dLbUh3SjBQVXc4MWFscHhwWklWZk5yTndHQjZZTmNOMmk0RUlJSzJOUnkrdXhwMnQwV1dFOS91SUpKRmErLytUci8rNy83UHpGWUhyNzNNZTY5L3g1MjdkNkdOaVduemg3ajJlZCt6RlBQL0lDOE9FWlpqTWpTTm5reHJPN0xBZ3BEV1l6WU1wSmVYUStxS3R0S2pJbXBBOHJqRlNBTzIycmhoZ09pWlJ0Vk1uZTh4a0xKUkdFQ2RRTUI2cHpSNnJLMFdZWUtpcUFWQk0xbzJFZWgySmJPYzh0TmQzTG5SeDloei9hOTRCMUZzY2Fycjc3RWozL3lYVTROanhBSU1XKzRYcldhbkpLSlZsMS9UYTk3cXJxWE1rb1RYTW15bk9YbnJ6elBqcDNidWZQbXV5aThJcytIYUszd0VsaGVQa3VyRlFzRFYxWldTRzEyWVNmM1VsR2RBeTBhQXJSVWhveGcvL2I5L09yMHl6aHlCSW1GWHE1eExtajRjTkJFWkJ1dVlENkFpT3hGaGlUVUZ1L2ZJbFZ3OXZmM0daSGQ3SGVwSWxTcUtxdVdhcmhiUWR6dmFqY1Y5ZnpLamtwTjFkaW9Tb1RVMGE1NnV2NnhmajVVVWJGUUxldDlUaVdnSmY0K0VZenZiNnJHT2I0WDhsQXh3anFwekJvZnA3alB2aEo2ay9lb3FmMlB4NzdlbGdzNWY0cE9yMFBoQzNJM0FPc3htZUxwWjUvaXExLzlLbFluL01lLy93ZmNlL2NEN05xK2g4SHFDSEdhcTNkZnphRnJidVRRd1VPODg5WnJERWZMT0ZlUzZCamx0Z282clRiQkZTVGFZalZZcFRkT2xhcGNKendpQlFHWkRGQW9DTTZSdHFKcmdVWklreGovSk1UemxscGlSRjBwdEJJMEFhMENTbFczVGdwQzZjQ1hLQWtZQkl0aTMvYTlmUG9Uai9QNEk1OGhjNHYwN0hiU2tMRnpiaGRYYmQvSFhIY2VTc1hKbFJORXM2OUEwUFYxWFBkYnF6KzlFeS9jalFWYTFZdFVIWW1QNzFncjFpQUU5dTdaeDJKM2tlV3pxMmlqU1ZzWncrRUlZeXl0ck1YcTZtcGwwNlZqWEgrcXBaeXViMkMyU1BBKzMrZDJXbWVmNi8zblhZNVVZeUxqYXpndU5SYlVxWmdqN0J4Wmx2THUyMGRZWWhtUHg1dHljay9UMEhDRjB3alpoaXVZUnNoSzFTSnB3K3ZXNWU2cFRYNFN0Ylhyd25zalZBa0pNNkc1OXp5Tm9tVFN5T0Q5dmgrMjFCSHZrZW9tb0I2U1prckkxc3V2Ulg0bFlLZm5pNUl0bzdIdjVmeUpFa3FYbzJ6QVpNTGE0QXh2dlAwYVgvN3FsemlSSCtlZi9ONC9ZZisrYTFCWWNJcVdhWk9xakdMZzhRTlBabFAyWDd1TDExNzlGYU44Rk52YkVoTXBncXVjRytvV1o4SW1VMmlwTGtMc3pxV0JMSU81TGxnTFpSblBqNDBqMTRnUHFLQXdWWUpLSmhsaGZCNnJMTitxc3I1K0xHUmRVcDFpSlVHaGFOUGlZM2M5eEQyMzNVdmlXeVIramt4NjlNLzJ5ZnVPK2U0YzErdzdnREthbDE1NWtZSWl1aFJNUldSbmhXeDkxcWF2UVdZdUV5VzZhcXNycENyQlU3SzJ1b0lySFlldlBreStWbUN0b2QxdWd3aDVYaEo4SUVreUZEcmViTlhMRzkvQVRVV0V6L0g1UGQvdkZ5TmtsV2gwZGM1andWNTFOSVRxZVkwUmpmZUJUcmZOOG5DRmQxYmVSdkNVVXNieDJDWW8yL0Fob0VrdGFHaTRZcWtVQmhNeFhIL2gxczFBYTV1alNucHQ5cDE3U1JHWUNIcG1wKy9wL1ZPQ2ZkenNZSXNsckordnE1V043YytxbzdiWis4ZkhWWDJBYVlYS3N6SmNJdXRvRnVibmVlNlh2K0FyLytGTG5NN1BjT1ArajdCejEzYjJYYldicGROOWlvSEgyaFFsUWprb1NaTXVWKzFZUkhUT25vVnJXRjRlMGJNOUNsZFFVS0RSQk1KVXU0aU5CRUJKaWtLUjRYSDA4WG1nbjROU2tFd3VMOXEwQ1dnU01qd2VSUlN5cG1xVUFJRkp2dkNrc1VDZXgyMVFHRkl5RGl3YzVPQ2VtOWllN1dibDdJaVdTcGh2dFdrdEdBYURBYVBsa3U1Q3lvRTkxM1BiNFh2NDRTdFBJSlNnM1BnNkNUSUp0c3JZVG1yaWZEQjlnaFFhYXl5aEV1czJNL2pjc2VLWGVQNmxuL0tSUGJkeWNNOWhXbW1iNFhCSVloT0NEeFJGUWJjN2h5dG1sVjd0V3FDbWJLd3VQNnA4Y05HRUFGWmJFTXYxKzYvbngrLzhnTXlrREdSd3FUZXlvZUVEb3hHeURRMVhPbU1YZ0pycG4rdTQxUmJSNTJucnBQZTdXcGtlbTlURThNNzBkSDFPNWpubVMvWDg5UFFjYmdhVDdiN3c4ZEZBSFA2T0l2VTlMbVA5OWwwVWdlMjdldlRMc3p6MTdKTjgvVysrd3FuOFhWcTAyTGQvTjNOemJVNmVQRW1xdWl4MEZraFZoZ21XT2VVbzg0TCt5VlgyN0wyV2YvUTcvNHhCZndRcWtJOUtiS0t4Sm1XdHYwS1d0cmM4ZmtGQmZ6QkNwNUNsanRmZWZKRWZQZlVkVm9abjZLUUozZ1d1TzNBRGQ5MytBTHUzN2NjWGhsYmFRMHJGYUpCakV3MUtFYlNyYmtpaUQrdDBoNnlGdWUwTVZnZFFRR0phdEV5SGJtdWVjaVVsOHdtallaOThaVVJLaTE2bngzQTRaSFY1UU5idGNlTk50L0g5VjM1QWRFVndtOTd3eEpxMFNXNTRYZnBYbzFDa0tzRnBqUXNGYTZQVnlrWU1WdndTenp6M0ZOZDg5bHBhN1FYT25sMmluYmJwZFJjWkRVYmtlVTV5Qlg5RmFvbUZsUWFMY3lXN3R1MWtwOTNGY1RrMmVkSEZEMG8xTkZ4eXJ0eFBhVU5EUTBRbWRrYXhZSHppSlJDb2pkdXJZcS9waU5YWXRiMHU0cExaNlliMXJKOGZCWkVhTDBObXA0clo2V2J6cWZ4RjBkVnlwNmZyNTI4MnJVVXhVenUyMVRmekp2T25vbnNnVmNSVlppTFprNWNLS0YwWjFsZnJ2d2d4RzFRZzk2djg3YXZQODRVdi9obG5SaWV4YUhMNkZHV2ZiZHZuV1RsVllORzRvbURRTDBpOG9aTjJhSnNPU2hSbjNqM0Z0dDRoZHZZc1JabURLTnFkRmdyTktCK2lsV0Zja2JadUtnckVhREFCclVlc0xoY285d3lhbkZIdVVGamFhaWNIZG4yRXEvZmV3R0NscEpYTWs2Z1d3LzRvMmo3aENOcFZlK1FyUDl5QXFwSnR4U2w2OHhBS0lWRVpuYVNITDRUUVY3VGJsdDYya3Y3cU10bzdXcWtsbEFsQkFxVUVYQ2w0TENnTHFwd1JyR0Y4dlU5eWxKVlU3aFdWbklVb1pKM3phQjJmYzVYZnJEWWd6dlBhMHE5NStlV1hTVC9hSW0ybGxNN2puQ05OVS9yOUlZbTV2TDhpeHgzN1pvWmFBa29TQUJJTWhYZFlNU1FtNWNZYkR2UG1TMjlNN2ljYkdqNEVYTjZmMG9hR0R6RmJWYnpyclhUWXBzdFlINUZVRzVjeFNmR2NyQU8yMW52bld0OW1UMTZBNjRHZS9wMzNQbzNIVEkvVG5jKzNDN09kMVdhbjU5eW5qVXRpc3JicGlQZEVEYWpha1YrbUcxRFV4R0YzMGJYdmJVQjB6azlmZkpxdmZldUxuQjRkbzVkMldDdldVRmdXdGk5dzdOaTdMSGF1UW9xQVZ0RHR0akVoUVVwaDVEd3FNWUNtUDF4amRYV1Zzc3hKMDVSd09sQ1dPVW1TRUVMWTVCclQ0eTN5R3ZKOGdESTVSNDYvUzc4YzRWRjA3VHdETitDZDQwYzV1WFFLbTNRNGNYU0oxSFJwdDN1RUltQ3R4WWVDTU9WN08yNnpxMkloM21nMFlzZkNOdkxWZ3J6djJMdmpBSXVkblhnSHhjQlIwc2VZQkp1MEdPUkR6cTR0a2MxblpHMUxHY3FvdDBReGJxOHE5Vkd2aisvbU54SjFXa1ZxVW9aK2lBOUNtaVM0TW9wdVpSWE9PVVlNZWVhbEg3TzRieHMzWFg4enE2Y0dySzMxbVdzdmtPbDB2RHhSQVVFSTR3TEQ5M3JkYlB3OHEzVS9yNytHMzIvNlQrMURQRDA2VWp1Z0tXdndvNXhFSi9neWNOMys2N0V2YVZLZFVmaThpY1kyZkNob2hHekRGYzlZcEZWMUYycDZ1dG5JdXF4N2IvMzBKajZPNS8xU2VSL2ZPdE0rb3VQbnRFd05pMjVjNVBydVVmVyt6VzZBbWRwdW1WMStpTVZLU3VwQ3BzbXhnYXFGN1BxbzRxUTRlNTJuWmRWNmMzcjVNTTVUbmM1QjNheEY3NHlTbkJMeGs5T3kwU2R6dXJOWDdhTVo2cW1hdkZ0UGI5ZDdqaWhYdXl1YnpGKy9DUEV6OHhWVXpRdEd4QWlZamNWV1lwR2cwWlcvcW5NT20xbVVkWWhXREVacnBDM0R5dG9TSjViZTRWLy82ZjlHc0FXZWt1VmloWVFXQWVIbGwxL2ovcnMvanFoQUVVWVlFWFNTSUVHUmx5VkthV3hhSXNrYS8rNVAveGQrK2RvTHRIVkNIb2JJMk44MmpNOUtMTStLcFhXaEtzL3llR0lqaE9oY1FPVkFBY0t5aXptVVJ3ZHY4U2RmK0dNbUZtNFRnYTZCdWFTTEt6MXhENkMrRnRFT3BUM0tPeENQeFpMUTVtRHZSdjdoNS82QW02Ni9uU052bnlKTk80eHlSektma3Z1Y2tSM1JtVTlaR3A3Z3JUZGZ3aEo5dnJ4VE1USzdMaWVjK2hJUUtwazV3ZU1wZlRuK2ZWZ080MmtWOEhsOFU1OFYvalova1IxdjdHTG5ybDEwMDBWMG9kQmVJOTRTVENBb2gyaVBpTWNFSFk5aU1PTzFqSy9qVFZyVTFwczNQWi8vbjczM2ZMSWtTKy96bm5OT21tdktkVlY3TzY1bmRzek9ZT3d1Qm9zRkYwSUFDd1hGQ0RLZ1VJUWlGUHhIRk5JSFVXQVFBRU5CQmNqRkF1UUN5NFVSQ0NrRWtRaFJ3SUp3aS9YamRteDN6N1IzMWQzbHI4M01ZL1RoWkY1WFZkMDkzYk5UM2R2bm1iaVQ5NmJQdkhlbWZ2bWU5LzI5WmR2aVRROFlFOHNuMzFjLzk5SE5mTmM2NlFzUExmNS9lSlhITkE1bmM2SmFqRlFDcFJVejZTd1BUejNLMmZaWkFBb0szRFlQQTRIQS9VSVFzb0hBUGNTZFZ1RlAvazBjRG8yN01pSzd6WTV2YzJoODJKcXozR3lRbGZEeC9naU9Sb1kvamdmcjZQSGx5TlJ1cy8xVzkrTldPdmZqSXJGWTU3MVhxd2lzUDQ0c1crU0NVZ3FISVZLU3k5Y3VzckIvaHNMMU9ILzFJLzdELy9NTkREMnMwMlV4VXVRTG0xQmN2WGFKMTk5Nm5TKzg4a1hpV2gyVEY2eDJiaUJ0UXExV0oxSTErcUxMeVFzLzR1cmFhVFFiZEt4dmFxQ2tvMTVMNk9jK0VpbVVyK3pQaXdrVnBHSVlFWG9BWnN0SThxaFg4Y2pVd1ZyUjhROUdLa0xLaE53WUh6a1ZCUU03QXdjUkJZWE51TmcrelEvZit4WnhvOGI4L0g1aTFTUmIyNkNkZFZGMXg5eithYWdWbkR0emlyZFAvUkJCamlxUGI5eklzYXZmN2NSSXcyMkxzdkxoVm9zQ2JRMGZuSHVQRjU1OGlTU3BVNCtta1U1dWlqUTdiUGw3SzN1VFdZbVJqdTJpd3FPM2EvQjU1QmxwcTkvLzZQTGJ3Wlp1RzVzdVQxUWxlQkp0Y25BeGtZeVFWckZ2N2dDWDJwZThyUmtHSFlSczREN25KOGZaUEJBSUJENU5uRVM2Q0dsamZNN3VpRTIvOEpGdXFTeFRVelV1WDd2SS9rTzdzYkxnekxsVC9NRWYveDdMM1VXMDYrTnNqbytJRmtoaGdKeFdzY0lQWC84N3psNDhRU2RiSVcwNGFsT09aRnFUVGpuNmVwbnpsei9nLy92bWYyUngrUklXVGExV3cySW9yS1hWN1ZKb2g3WGVSaXN2SENxVzFLY2JwTk9wRDJIWUFsd01MaDIraUxkNHBlVXJMdGVQd2ZvWVNKeEtSQVNGMGVSRjMzY0JLKy9Ob091dGdMaVdFRWNKUGJxOGQrNWRUbDU4aDVaYjVmTHlXVXpVUmRVTGN0b3N0Njd5OXZzLzVPMzNYaU9qamFQQVVnQUZvTDJBcmRJWGJ0R1Y3M1lRRVlCbHRiZk1pWk1mVUZoTllUTlFqbUxZQTVoaEhucjVIWmZGY2p2TnJkS1FoUEFwRk1ZWWxGSUk0TkNCUTZUVWIrcG9FUWpjVHdRZjJjQjl6QzE4WkczcEl6c3cwSzl5RElhdmJTT1Z0OHN0RE5GdjVTYzVPV1BUOHNsaDhPMU80Mk4rSHV4K20yak1iZS92eDN6OW9rd3QyUGI4UjN3OWI3cWZiYmJmanR2Zm4yL1RLd2EvdjJIaXJoV0dPRkZjWGI3TW9hUDdXT3NzYzJYeFBML3plLytHdGwxQllUQjBRUGloWUlsRktvRnhHZ0cwZXh0OGRPb1VoZTdSbUs3Um1FNlEwbkI5K1RMZmZlM3YrSXUvL2pPdWJweEQwMGZnMjVOYUIxSkd6RTd0SWszcUpIRU5oOFJZZzNNV1hSU1lZcVRLeHltR3JxdzNlMDMrdCtORHJkclprZEZ2QlNKQ3hTbHhuSkltQ1VXZUl5d1VoYUd3M3QyZ1ZYUllYVjNseHZJTjl1eWRaM2F1Z1l0ekZsZk9jL0wwTy96Z2piL24xTlVQc09RNE5LNnkrS29PZmFkZjZpUUMwbnFNeVMwUkNhMGJMUjQ3Y3B4NjNDQ1dFYjA4UjhhU2dZOXdXVVRwL1hwOWExd243T0EzT0xIckxVL3hZLy8rYjVyUDdaczArT1ltVllPTzh1Zm5CRUk0SWhtVDVYMkVCSlVJK3FaUE9wVnk1dHdaMnJhRlJrOGtaQVFDOXg4aHRTQVFDQVR1Q0ltd3NlOE9oc0E1NzBUcmhZM0dDVWRYZDJuT3hLeTNyM0Z0K1R5Lzhkdi9IRXRHUFVscDUydFlJRkpscVk0RmJiTFNBN1lIS0paN1Yvam10LytNdi83Mk4wdkpMRkZFR0J3NVhZejBPYnJPZ2JVQ1NVd3NFalphUFNyWFlJdEF5Um9XalNNZm5IMVVVK2lPRjdWYkZSM2RqTW4xMDFvTm95VzZFTmpjbFlQV0ZrV0VRQTh5QUFvTWtIRm03VFRuMXk3eHZmZS96YTVvRjFyM0tlaFRxMFZzOUZjdzlLbW5DZTJzS0syOTd1d2J1aFhhK0JTSVdwU3lYcXp4OWdkdjgrVXZIS2JWYnBIVzZ5TSt4YUpNaTVGVnJzR1dBbmFuOFEySHgxRktZWTFER084dDI2ZzFtWitaWjNIbDZrNmNZaUR3aVJQR0ZnS0JRT0FPOEIyVW9uSzRQYUp5WVhEQzRxVEJ5aHlWR0VScU9IbjJQZjdWVjM4ZGhjYVNVYmlXSHpJdlZZZXNEQjBBZzBVSWk2WHc2OUtqendZeXpWRkpUcDgxTWxheGRERTJReW1vcHpWOEExbUZNUUpGa3hvenpDWDdhY281cEUwUU5pSVNOU0lsUUlMdW03TDB5dy9kaS9MRlRWNmo2d2dzMDlNTmhJQ3NwekdGb3lHYUxDUzdtV1dPbURveERXck1FT0ZidlNacFROeUljQ3BIMHdGeSttS0RkWmJvc0VwYnI1SFR4V0ZwWjMzdkZTdTJLb3dhZWQwRnBteiswQ3ZhZ09QTjg2L1JOVzNheFFacE02SEtFUlpqcVFXeWJJNG03b24wZ2dHRExvWlZnYWR2TDV6R3ZwR0cxUTRsSW9TR2czc1BJVkZCQUFSK0lnZ1IyVUFnRUxnanZLZ1JUcGFST3grSlJSaXNMSEFpWjdXend0THFGZjdvVDM2UGpCWXpVM1VVQ1J2dFZXYm5tclEyT3RpQ1FVakJWclpKMGhzbFNPRUx5Z3pReXZJdHp5QnlFcDFwSkFtN0dJUFFBQUFnQUVsRVFWUjdwdzV4L09HbmVlcko1M2pvMkNNWVk3bHc4U3p2ZlBBR3AwNi95M0x2R3M0SXFyYThFZ2JoMVVxVUNiWXVRb0xOT1ptOVZnWTJKaUxoeU1JeG5qcitMRWYySE1VWjZIVTZmSERxZlRyWk9tZFdQa0tRa1dVRlNPdXpHU0pETjJ0UkZGMThra3VPMGRsQW4wWVJEQnBydVcybW53QlJKTEM1UWVESTZQSEd1Ni94N09QUDA3ZWRzbitFS3UrQmJ3bnJrNVUraVlZWW55UmJuNHZXbW5xOVNkNHRzTnBScTZlczlic2MzWCtZeG9rYVhkcWY4bmtHQXA4OFFjZ0dBb0hBblZJS0cvQU5EcHh3M3E1SjVCaVZzYksreU5mLzZOK3htaStTeGhITDdSczROTTJabFBYMXpzQk96VnBRQ3F6eEFrNUtRVzVjVlZma2N6TzlzNUtYTEQ3bzVzMnVqRVFSODlpQkovbUZMLzdYUFBIWWM5aEMwZXZtQ0dONDlyR1hlT2I0MDd6LzBZLzQxbmUveVltTGJ3TVpTU1RJQ2pQSWNSMDRzMDdtb3BicHNaV0lIZE80TnVMUTNCRmVmdjd6UFAzb00reWUya2RzRTRUMmUvdkNDMS9rblEvZnhuM3JQM04yL1F4eFVxTm4xNGY1cmtwam5jUFlZZDV1RlBrNnJsd3pucDQ3Smw1djdpTjdXM2hmTW96eCtjbDkrdXhpaXUrOCt5MCs5N25Qc2JheXduUXloeFFTYWIwYlJXWFE2dk5TN3pXR2xtc2VoVEdHUkVYK1FjUkFvbUpjRjNiUDdhRkJFOEhTenAxdUlQQUpFWXE5QXZjeEg2L1l5M21qUlp4MTNpcDBHMXNxSWNUZ05jcW9UK1RnaFIyOEg5dkh4SFJ5L2xZelJuMW1CL3ZjenZOMFpKdHF2Y250bkhOanhWSmJuZi9vRHNkOGRDZXVhZFRmdFRwUFlDeFBjS3ZsbTN4NlIvYmpWNWdzWDltYVRjZXY5bGw1NDI2ei9GYmJqN0xWK1k4Y2FOd25GTUFKckhaRVVZU1FGcW1ncDF2RU5VYzdYK1A2OGlYKzVXLy9LdDFpRlV0QlpudjRpSzB2ZnFxdVYxQktrS3BJeklJMkRBcDNxdE1abkZZVk9YVXdIVStERlR3MC94ai8rQi8rZHh3LzhqU2lIMU1UczhTbVJrTk5ZVEpIcWhJU0VmSDRZNDl4K2V4Rk9yMFdxVXpKYlVaVVJtYVY4aUpTajdnTjFHdWdTN09BWmozeEoxbGV2eVJGMGVTLy9lWC9uaGVmZklXa1NFbnlPbEdSRXVzVTI0ZEVOYWpIRFo1NDhpbVdyeTl6YmUyS04zaElER2gvNGRhTzMydzdlcDJieEtzdlRoTlZZVjMxNWR3RlVnTFc3MDFUa0pDaU04MW5qbitHdkZlUVJuV3N0cGpjb0ZTRVVqSFcraHhvTVNZY2h3eCt4Nk8vMWExOHBFZTIyV3E1MkdhNWYrR0x2UUR3OW1EZWJxOHNUSE9nWklUVkZxUkVTSWRRaWlSTnVIWmpFVmR6bkZzOWgwd2t4dmd2dldxaUVRamNUNFFVbVVBZ0VMZ0RmTzJQbzNBWktNdmxHeGRKNnBLY1B1Y3ZmY2pYZnYrM3NXUllpckpkZ043R04xZmlCOGZHR3c2TXE1eXQzL2VMbkRyVFBQL1pseml3NnpBMTBjUjBRYmNka1U0UldRUWRnZXNvNXB2N09MeHdqT2VmZklXRUpsb0xVcHBZRitPSXNjYTNpSzFGQ1JHcVRBOEFZU1dTbUY1UFlHMktvRW5FTEROcUw4OGVlb0Y5MDRkSVRZUEUxSWx5aGNvbE5kR2t4alNtNVppTzU2bUxHWjUrL0tlSXFaUElGUG9qMXpGcGtMRHAzbFQzcDNKWTJOeWM0WTRSWUhUWkNVd29OSVkyNnl4dkxOSHFyK09rUTVzY0tTVnhIUHRHQTZiQWlqSUNmL2RuY05kTXBudllLaytXRWRjUDYzTmtuWFlvSjJna0RlYW41d0VHSWhZbVJMVFk3ckV5RUxpM0NFSTJFQWdFN2dSaGNWSlRiOFpjdW42QkE0ZjM0R1RHbWZNbitNWWZmWTBiN1l2Ymk5aUJYcEErMzdLTWNicnl0ZVgvbXJjb2NKTEVUQ2U3ZVBhcDU2a25EWlNOa0ZvaEM0blNrdWxraW5yY2hBSkVvV2l0OXRnOXU1ZjVlQytPQkdpaW1DRmhBY2tzeGpYUlJZTm1mUitTT1dDRzJlWVJwdEtEd0J5Q09RUzdnRm42SnVhbm4vOTU1bXQ3RVZsRVF6V0pYSUxRaXBnRWFXSk1YOUNNWjRsZG5hZVBQOGYrbVlNKzdhQnFLRGJJZVpVVHI4aS9CbEZZZjMrODF2MkVSQ3lVYllYTExJTlU0YkFVRkN5dVh1WHEwbFZVREZyNzNPUTBUckRXVWxpRFVBNkx1VWZ5Wk1zOGs0bm1GVTc0VG0wRDl6QURMamNJSTJnbVUremV0WnVZZUNCa2hSQmowVmdwZ3p3STNCK0VITmxBSUJDNEl5d3FnVXVMNXpqNjhINVdXa3RjV3o3UHYvdkdWMmlaWllSdlQ4QjJrZGp4TkpHdFludlNKNHRPNW9rT2h0d2pKQWx4MG1CMlpvRk91NGRLcGtpU2hNakZDQ3ZwZERwSTVSQlNvWlFrS21KZWZ1Rno3RDJ3RnlNTm1mYXRjMVdzZVBma2UvemxYMytUSGwyNkhXK2V0Vy9oTUQvM2haOW43OEplOGs3TzNNd0NqYmhCdjV2UlVBMm1aSlBJUmRqTVVxdlhjWkZERnhxc0lNOXpsRXpLNjRpWWFjNnhlMjR2RnpkT2Uxa2FsWTNGeHJxSlZlOXZGZzM4NU1TamM4cnZUd2dLVjZDRlFUbkphbWVGRDgrZDR2SERUNUQzTGNKVitSWmxXb2x5T0dOOFZkNk9ZY3RDdy9MVElKL0orWTU3Um81RVdMMm5oZEVhb1NOaW1UQ1Z6akJWbTZMVjMvQ2JsVUpXQ0RHV2xoUUkzT3NFSVJzSUJBSjNnQlVPclh0TTdVcFo2eTV4ZmZrU3YvNWJ2NHFqVHoyTjJNamFUSXBZTVJLSnJkamNsR0xpczZ0eW5JZFR2d2NCS0VRY1FhelFvaUN6ZllSTGlDT05jQkZLU0tRQ2JTeTlyRWVyMnlFdElxSTRKYTFKNmdKa0hCRWxFWE5YcDRralJVOTc3OUhDYVBidjM4L0RqeHpqMEw0anRGZmJ4Q0xGRmc2ZEczQ0NXdEpBRlZEWUhHdkJDWU1XbG9LY0FrMlV4TFN5SGlxT3lJb3VzL083RUJjZ1VSR0YwYVVnMzBvTWJpWHN6VGJ2N3hTSlFLQlVpblk1Ulo2WGV4YjA2UEhSK1EvSmZ6cEhxUlNuSFhuZVJ3aUhVaExyTk1ZWjRoMFZzbHN3MWdQWFlxMUFZRkZJckloODI0VENRZ1Fxa3N6UHpYTjE4Y3JZTHFTVVkra0dnY0M5VGhDeWdVQWdjRWRZNHByQVNqaDE4Z1JmKy8ydkV1SG9rNU01Y0dWaDEyYWlVb1JTUm15M1o2dEdWbFZmTFlBY2c1SFF6WHMwWjJkeGZXOTdKV1ZFb2lEVFBaeXhpTWkzaVQwd2Z4QXRNbTZzcldCY1RoUTd0TTdKVE1hVnhiTklWWURPeUUwT09DNWZPY003Nzc3R3l0SWlwbTlKWkkxVXBBaXJhRVl6dEhXTmhjWnVyREwwaXo0WWl4R1dRbXBVVFpiemM1S1ppTFYrRDZCcytPQ0h1cmNOTmsvYzU2M2ZmeEpJcEl4OG9xenc0azBwYjF1MWxDMXhaZkV5UjJZZlFrcEIwYytKMHhTVW9LOExVTDdFU20yZCtMeURXRW8vaTdJZzFYdktSc0tuVG1ockVCcElISHYzN3VXOVJRYnJnbitJTWNac1d4UVpDTnhyQkNFYkNBUUNkMGlydGNhMTFVdjh3UjkvblI0YlREVnFLQkxXdTZ0TXpkWm90L3AreFpGSXJJOERSc05JckdTVGVwdDBwNWlNKzRreWw5WmdhV1U5VHB3OXhYT2ZlUjRWU1p6U09KbVRHMHV0R1pFVkJTaER1OXRDQ2NsM1gvdDcvdnp2L3B5TURTSjZXSG9ZREFaWHRpdjFyWElGc0xSNmhyLzRMeGVweDFPWXpIcmhSbFQyRjJ2eVR6Ny9UM25wNlZkUWNVU1I5MUNSOStrcVpJYU5CVTVKbkhVVWFOWmJhMXk0ZEJFbEZMblJBenN4VVdZSjIvSTZOMHZWMGJ6UGlVVjNwYlY4cnEzUnBYeVdRT3hGYklRWGZTZE9uT0RnUzBkSW9waWU3cEUyVW93ejVIbWZSclBHTFo1RFBrWEc4Mk1ycEpRNDR4ME92Ryt3S3ZPTUhRckZ3c0xDWU4xUklRdUVxR3pndmlFSTJVRGdOdGd1NW5LM01ZdXloWHZaL25KOGZyWC95YXJrNm53K3JYako1UEhGeEhsdVo1NS9PMnkxL2NjOXR6dnZyalJhSkNOSFdwQlNkbkthWE5mN3hEcG5NSUNUR1RmV0wvTjdmL1JWVm90RklpRlk2eTVoS2FqWDA2R0lyWERqYno5T2ovdEs1STN2eW1LeHJIZlhlTytEOXpoMjhDRVdtbnRKNmdtUml1bDNldVE5WC9TVDFCSjBvVkZ4ekxXMTY3UnBBUm1hTnI1VzN4dVpSVUo2K3l2amlDTkZIRWtLWGRETFdzZ3F5a2VCSXNZQzc1eCtrNGNmZTVTRitpeUZNOFJwRGJUQkdrdUJvNWFrR0N0b0Z5MVdXc3VjWFRwVDVnNURta3J5L3EzdXdZK3ptTXBiVmhtWGxZNEpFaVVVeGhTQUpTTGk3S1hUOUY5OEZkT1lJZHZva3NZeDJsbjZkR2pFQ2Rab0J0MituQmxNVFJsM2RsYjRnakFuY1JpZjAxcXVCeGJwaGhMZVlYRENMeGUrRXdPbW5HNjl2WGZOQU91OWkzRytxNXl3WmZxSlE4UUNXMFZoaFgvSWNPVkxSTkNNRzRPYzJJcFE1Qlc0M3doQ05uQmZNL0I3RldLUU83alpoOVcvbkt1bWpNL2Jvdks0RW1PVlJwTGIrSkNPYmpubU16bzRseTNPZVhRYjY0YXFkSGdCWThjZnVHVk83TjhMUURzNDM3Rmg2S29BcERLYUh4V2ZrOGNmWHNDbTQ0OXRXeTZ2dkhkdHRYQnkrZGcrUi9jemZsTzhWNmdkMzM3MFBqQWhpcmZhZm5TZDdjNi9XbmxpZXk5TWV5QXN3dm9XczlMR09LdkthbmFKdG9Za2liQkNnN0owc3paSlhkSHBibkJqNVRMLzRuZitaeHc5TEpiQytUSjhoNlhYMDJ5Rkc4aFhONHpJYnFIVnRub1dzQk9mdkx1Qm9XL2JuTGx3aXU5OGY1WlhmK3BuT2JidkVXd1BkRzZRVWpJN040T29DYTYxci9CWGYvWG52UHZSbStUMGNHUkUwbEpZWDhDVWlBVHJRS0ZRUk40amx4aFhDbDJMUldPQWdyZ3VLSHFHZDIrOFRmT05PWDd1Wjc3STRmMkhLVm9aNjJzZHBKSFVhalg2V1l1b3JyaCs1U0xmZisxdk1SUm9jbENDcktnSzJlekF3R0JyVjlaYjNKZzd4aklJcVRwOFdvUUdRWVJFa3RGanpheng3dFczZVg0aFFoNFVYRzlmSVk1amFuc1VhNTNyMUZRZElVdW5oVkp3VmxPSnhibktKWGd5NWl3Unp1SUtpM0NibDFjQzkyYmJ3MmpVMVA4NnJQUlQ2VUJMU1U0T2tTejNWMWx6K2Y5M2FKVVR4eEh6OC9Nc0x5K1RKQWxGVWREcGRJamptS0s0WjhMTmdjQk5DVUkyOEFCejYyalBsdEhJU2crSnU0MElqdXh6NUhoai9RSzJtRDhvOXJtTFkxZlhkYXZCdzYyR3VOM0krOGs3S04zdGE0Mjd6U3k4bTZpMHY2NXFPTllneW9oc1pTOHZuY1FLWHc1a1RJRks0Y3ExU3l3Y21FVzdMbWN2bitKUC92UWJHSG80ZWgvcjJHNmJZZUJiYnplSkphMEpzbjZQR3h1WGVmTnRpK24yV1QzK0hJZDNINlV4TlFWWXJxOWQ0dUtOODd6NzRZOTQ1L1RiTFBVV2NXVEU5ZGozWjVBU2RJUjJBa2xLZ3lienpYbEFzdGJaSU1IU3BrTWNSYVNwbzZjNzJCaklNcnAyalhmUHZZWkxlanoxNkZNYzNYZU11VDJ6U0JUT1dGYlhibkR5d3hOODc2MXZjM2I5SXh3WlNVT2lWWVR0RjlYejVQQlo1bVBmbGJ1a2VvZ3R6ME9WaVI4QUJvdFdPWmRXTHlJKzhqbTlSVllReHpHUmlNajdCU20xZ1VqY2lsdmxtUXBqYnpxQ2NhdnQ3Nlo1UVJabkxFWFg2WFE2L2x3bUlyT0J3UDFDRUxLQlFPQUJSU0pjVk5vL2xhOHl6MkVZdWRMVXAycWN2M1NhQTRmM2tOa09wOCtkNHZmLzZHdXM2ZXY4ZUllK2I0R3c1TG9OQXF6TFdPNW12UDd1T2xldm5lSGd3bUZtcCtldzFyTGVXdVBLOGlXdTNMaEVtM1VzZmlqZG1SeFRDTHpyYTQyakI0N3gxR1BQOHZEUlI1bHB6UGgydU02eHRMTEVHKysrenNsekoxanJyUG9raEtKeUhPaXcwajNMYXo5YVpQSGFoengyK0JGMnorMUZXRUcvMzJkeDhSSVhybDVnc1hzWlZ6V0h5QmoyTnRnNmNQM3BjUXZkMWpZZDNqenhCbStkZUJPZm1TeUppQkVJREFaVnBsdHN2L3Z0RDFCRm4zZEtPaG9LcG5iVjZQZjdtNVlGNjYzQS9VUVFzb0ZBNEFGRmdGUElNbzNBZTRyQ29LV3hzS2hJY0hueFBFY2ZPc2hLK3pxTFN4ZjUzWC8vVlRiME1ncUgyVWtoQzFTajBrcUFNeGtiZG9uMnRWVk9YL3VBcW5XQXhXSFFXQXJmd1NvQzQwQVhqb2lFYWJYQThZZU84L0tMbitlWng1NGpVVFd5WG9ZVUVkWmE5aXdjWk5mc0FvY1BIZVZISjkvZ282c2Y0aXcwcDFMNnZSYlc5T2k1SG1ldWJuRGg2Z2ZFcEQ0aWk2TWd3NkdSUXRKb1JwaThRSmNLVHNpZEUzRmJJWkQrL2d5bVVJL3FGTHJBWUJGbHJMWWdMOWYzMmI0T1d4YmZmYnlwd2FMTHFkeDA3RTlqYXVpdUxnSEJjaXR3ZnhPRWJDQVFlREJ4RXVsaW4wN2dmQW05RTdLTW91bUJUK3owWE1wYTl6clhWaTd3NjEvNVp6Z0s2cldFalg3N3BoRzNUNFV5aWRvSk1BS2swMWcwbWdMdmtGQVZsZmwycWtZTTg2ZUZBMFdkVjU3OVdWNTkrVlgyTE94SDVRbXJhMjEwcjJCcWFvWk92MDk5dXNaRCt4OWxZV0VQczdPekZIK3Z1YlI4SHQwM1h2d0lMMGlMOHRnNVdkbXJUQXd5Z1oyRFRxY01lSmVOekZ5K0V6ZHNhOFNFTDRRcmM0Sjd1a3RWdWdXVThuYUl3UmRaVmRmNmNhYW1mSWQwbUxMaTgxT2Q0c29uSVM5a3RkYUQ5eUhGSUhBL0VZUnNJQkI0SUpIZ1V3c0crSWlVVHlzd09LbUpZNGVSbGhNZnZzL1h2dkVWSW1ucDJ4NjV6WEQ0NnZZZG85SWFkcGpyYkVUcE15c0ZRZ21rVkdBdFd1ZFlSNWxTNE5lVlNQYldEdkRjRXkveTBQNG5XRnRheHhTV2hlWitWTjNmbDduR2JpL20raG5TeEJ6ZWM0VEhqanpPMWVVckdGME9TWXZ5THBUWkdVTGduUStjdzFvZmViV0dRVkowSFBrM1JmRXhFcW8vUlViZEpLb0hGWWNqU1JLY2NhWEhMaWlwaGk0QmcvVnZmK3BHdTF4c3g0OXppTjhCQm1JVmIycE5HNkt6Z2Z1SklHUURnY0NEaVpObFZGYVc0dFZIWXIySUxYQXlaNjI3eXZXVnkvekJmL2dhYmJ2R3pFd2RhUk5hblZXbVo2ZG9yYmQzOWhwTUdTRVVnRkJlcURxSHNUNU1xaXZWU2pRVVJjNzRvWDBhL1BRTFgrTFEvREg2YTRiV1VwOWQ5WG5pdEVHLzA2Y29DbThsSlRVaWRZaFljZXpnd3hUUFpadzk4eEdYTnM2Q2FxSnREL0R1RTdyS0Z4Z0lJNGx6QXBYV01GcUR0aFQ5S2llNWNnM1l1WWVCelpIWVNXOElQOC9Bb1BOWGhYWjNXZFZmcFZoOGVqWU5XKzdkU1RjUXJsVTA5bTZLeUFLQlQ1c2daQU9Cd0FPTUhEZy9PR0d4d3VHRWJ5aGdWTWJTMmxXKy9vZi9sdVhlVmVKWXNycHhBNFFtYmNhMFdqc3NZcEg0aWlrNVNJMFlpKzVWZnFEV0RxdUtIQ0FqdjVwTE9ITG9ZV0xSUUJTS1BiUDdtSzd2b3JQYW9kL0oyTHQzTDUxdWk2Z2VrYmtPTjliV3FEVWlwcHN6ek5TbmtSc3h1VEgrSEdUa2QyNmRkd0lRWldnMnFVRS94MlM2TEtxTDhWNFFFb0VwSmVLOUs1cFVKTDNiYkdVcDV3QTEzZ24ycHR3aW9CcTVZYWUyclV5MkZONlpwSElvbVp3S3Q3MDUxKzFNTlF4U0NzQVhlVlVpdHVyd0ZRamM2d1FoRzdpdkdmV01IZldKM2NwSHRzSlg1RmJxeFkzdHE1b092VWtuRDdqRjhTZFdFVUlNLzM1dHMvL2h2UEUvNHBPcGFjTnR0dDUrOUEvbDJQbXptYkh0eTEzWVcvdzVkaFBuNzI1eS9GdHRQOWhrWkxqVWpseC9kVjdqeDl6bS9LdDVXeHpMZi9lVEo3TDUrcDF6V0dQOGtMRndJQ1g5YklPa0RxMXNneHMzcnZBdmYrdC94WlRWOXYyaUFPSGJ6bWE5NHU3OXd6NVJKbjNTeWtSVVkwQXBoSlE0clNtdENGQktrWmlJd3djT2tuYzFRa2JFSXFXejNpV0thdXlhbmFLOTBhTTVQY05xYXdsWnN6VHJVMlQ5UHJHTU9YcjRHR2V2ZlVTZnZ1L3BLZ1hvOHA2SVV0UTZCN21HT1BhcXF4aCsxMkpRT3JXelRFWmdCNVNucHMxSW0rR0JvZlBtLzA1dmNvQ2JMM09iZHo4NmRkWHh0cGx1dDkzdFRMYzZ0VkhoR2tSczRINGhDTmxBSVBCQVlnVklCZHBtcUZTd2VPMFN1L2ZOa0xzdVp5K2U0ay8rOUE4eCtGeFlSeWxpNGVaSzRGUEZraVFKUnZ1SE5xRWtTaWtLWTcxb0JhSTBSV2ZaSU5PendqbEhKS0hYNnpDbEdpaXBmUFBTS01JVUJtY2NTWkxTYXJWSWtvUzREbm5XQmlFd3RpRExlbGcwU2dpRThsRnRVNllYWUN4UnZVWWN4L1EyT2w1TWw3Wm1TaWlFY0ZpYjNmUFJXT0RXS3ZNdS9iUEtOTlhCN2o3dGFTRHdrMEFRc29GQTRBSEZZakJNVGRVNWYra00rdy91Sm5NdFRwODl3VGYrajYreGxsL0hWaUtXRVJGN0R5bUF2Qmg2Z0FvTlZ2c2lwS1JXUTBwSnA5dnhROWNDb2xpUzU5bzdIRGhOWExQMGRZZjU2YjBJVTVEbmhubzZnMFNnclNWS0lseG1pSklZNC9wb1c5Q3NKL1F5UWIvb1lDaVFaT1JGTWVnc1Z6Ylp3M1M3dmcxdEVwSG5JMmF4b3NDVWVqZU9GVVZ4anduWjdZTEVtNFpkaHZNbjgyeHZGNGN2enR0WkZXdnZxZDl6SUhBbkJDRWJDQVFlVElRbFNnU1hGODl4NUtGOXJMYVh1YnAwanE5OTR5dXM1VXRJNlRCMkpCSUxFN2tNbi9vWmIwbWFRSkxFQ0NQSmVqbk9Pa3cvd3lKSVN6OVg1eXdtMTJQZDJEcTlOYTdmdU15Qm1jUFlTTkRlNkJLcm1Mald3T1k1bVJaRWpZakNabXkwVjhoY2o1bWtSbStqdy9MR01vWWM2d29VMEVoVEloSFI3MmRZNTMxU3A5SXAydGtHU1htOHBCWlRtSUtzRkZQdWxuM2w3a0ZHaFdBcFl1VWRDdG5CMVk5a09uMjZVM3ZQQjhRRGdkc2hDTmxBSVBCQTRvUWpOMzJhdTFMV3U4c3NMbDNrMS83MVB3TnlHbzJZVnJjOW5rNHdOb3hjaVplZFZRTENRWjZEeVFva0VCRXpHODNUckUyVFJDbHBtdEx1dHJqZVdxU2dqNmFnV1V2SWJJN05MSys5OVQwTzdUbkdvWDFIRWFtaGI3czRBWVVvMEVZakk0RTJmV1FNU1N4cFpXdWNQbmVDaTFmUDRMRE1OT2ZwZERya21jVmdVZFNJOFFLdnlDd3BEV3hwL2EvN0JwVW9oREE0QVhwMFRIM0hidUF0bHQ4c1IzNlFaMzRYdjRHZFR4TU9CTzU3Z3BBTkJBSVBLQmFWK0xxbzkwNSt3Ty8rKzY4U1MwSFA5aEZHREFxN05vdXRhRkNvNU1yOTdCUnBHbU55UXoxcWN1VEF3enozMkUveHhDTlBzbi9YQVpJbzVkeTVjL1R6SHVjWHovSHV5YmY1YVBsRCtyMGM3elVRODhHbDkzbm00a2wyNzVtblBwMWc4d0p0TTBRTVNrbUtJa1BXSERQVDA3U3lqSE1YUCtTOVUrL1J3NmNzdERzWmdwUTlqYjBjUDNhY0o0OC96WUU5KzNHNVlXTnRuUXVYTG5EdXltbE9YVHRKVG84aUw1REtsOTNieXZIc2ZtQkN3TjVwT3NFbUxFSE1CZ0ozU1JDeWdVRGdnYVhWWHVQYTZpWCs4SSsvVHNldE1UUFZRTnFVamU0S3pkazZuVlp2WWd1SlFDQ0p5a2ljWStlRXJDVExKUE5UKzNqcHM2L3cvSk12Y1hUM3c2U3VRZDRxV084V1BISDRGUXdGRHg5OWxtTkhudUxiYi80ZGI1ejZJWVllYVZUSDZJTFgzLzR1V21zZVBmSUVDOVA3a0NwQ0pwRjMxRWdjaGMwcHVnV25McHprelE5K3dJWEw1M0JZNHFpQk5ETjg0WFAvRmErKzhOTTBraWJkbFI2dVpabEtHdXplOHpDUEhuaVd5OHVYMlgvcVRkNDg4VU91Rjljd0prTW9pNGdzTHI5TEw5WlBnbEVodVkxYnlhUndyVnE5K2xYdjdQc1hlSHV0blJMejFTLzNmbm1XQ0FTMkl3alpRT0FPMmM1TFV0N2hYNGJKN1c1bjFGVTZTdDlPQnBYaHQwUGxuU3J0Wm4vS2o4UG8rczZWNXU2ajg4cnBkbWNtSmlKZGNndHJvKzJ2eXBZN3NIaVAwdXFjaGxzSU41SVZPbWg2NEh3M0pwbHhZLzB5WC8vRHI3TFV2MElhS1paYjEzRVUxSnMxT2hzVEluYmt2T3dXNys2YWp6SE03WE16WS9iT1BzUUx6M3llVjEvOEdRNHVIS0xZTUxSV00ycWl4dTdaM1dUdGdyVjJpN2loZU9xeG42STVPNHVRS1crY2VJMU1kMm1JR3Fldm4rYnk5YXQ4OGZNL3ozUFB2TWpjekFKb1FiK2ZVNi9YV1Y2N3dkTFY2L3pnOVcvendlVjNzUlFJRXRBMXZ2d1Bmb1ZIanp6SmRMUVgyek5NUlNsVEMwMmtqZWgwdXVpZTRhRURUek0vZjVCYWM0N3Z2L1AzWE82Y3crUWRuQ2kydis1UHU4VCtEdmQvcHlKMmxOSW83Vk92OTdvUE01UURnUzBKUWpad1h5TWRDT2R3MW9MeFBlV0Zrd2pydk1peXBicWE5Sk10MVpKZ09HdDBXZ20wVWFFMTZXUHFBQ2ZkNXM0OG85dE1kTWlwcXJ1SCs5ejhvZHIvMkxvajd3ZittOEppcldZb3B1VHdtc3IzWStjNk1HSHk0azg0WDJGZS9TRVZXL3E0amwrY0dSN0FpMDR6NGxtN2hjOXM1UmtyM2ViNzU4OXlpMk5OSEhQbzZUdSszQXFMRXhsV2FxU052Smgxa2I5WFpldFpaLzErcDZaclpGbVhidFptWnJiSjlldlhXZXRmNDllKzhqOVM0RHRUZGJVZDNKdGVwNytOZ0xJTTc2amxyb1dzMk9MOTZMeElRbUVSS2lwOVlDV3hpckRHRXBQeStjLzhMRTg5L0NKNzY0Y28xcURvV21icTAwUXlwcGQxTWNZd05kVkFKSUxWcFhWMk5SYjRoWi81UllxdTRlMExiMUM0SEkybXpRYi83L2YrSTk5KzcyL1l0VERQL1B3OFUxTlRYRnRjWW4xMWpaVWJxMmcwRFJwazVFZ2tQL2ZzTC9ISzR6K1BNblZjSjBmWkhJbWczKzBoWElRVUNRS0J5eHZvZnArbkhuMkozWHQyOGZYLzlLOHhwUVRNSFd3N1NyL1YvWmprYmdYdU5oSFl6YXR0M2ZIcmJnOXR5dGVkTmpTNDIybUl4Z1orRWdoQ05oQzRDNFFiRDRUZXZOM2tUZmJEK0IrVmp4L1ZsVnUvZDlKSElwMEV6SEJhcmVPRzV5eTJFcEszY0g0WHpnMk90cFZRSFRlOW4xUU4vcnhrK2FmVk9UTTIzZnluMTJ3eExhL1JtMHdobmNBaHdFa0VrT1VadTNmUHNiUjhqVXkzMmJOM2h1dkxsOWpvclBCYnYvZS9ZK2pobUV3Zm1Eak5UWHdDQW5iMEdKTkNiWFNlR2JtblRxSkVOSGg0Mk5WWTRETVBQODIrcVFNb25aQm5PUlFDaThCR3Z0Mm9FQUtwQkhtZU16TTFTMTkzYWNZelBQL1VpN3gzNFYxMEtVcDlPVmJHamRZaUs3M3JuTG5pMjVSYUl4Rk9vb2hSSkdWQlY4eERNNC95L0dkZUppbFNoRk9EeW4yQlFlRFZxUVZpbGVCc2hISTFHdEVNcy9WZFBMendNQmVXMy9ZaTlsYjNZWFQ2NCtJTzl2OUpSR0pIRDIxMmFCb0kvQ1FRaEd3Z2NML2lxcDcxc0VtOGJscFBURXhIRnBjQ1lqeGl5NmIzazFnSFVqaUczVHMzYno4cVpDZVh5M0xZMzVibjcwb0JWRTNIcjJ1TDVTNEdKOHFvdk1SWlVVWmtoekhUZXJQRzZzWUtxSUxwcVpTTi9ncWRZcFYvOGRYL0JVMlhIWGNkUUU0T0VwUUw3R0FOa0VqckJYb3FJN1FwQU1HaC9RYzRmUGdvaVdtaUM0dXpBaVZqbkFXci9XY2hKTTVZc201R2M3ckplaThIS1hqaThTZlorOWQ3dVo1bFNCUU9TNThPRm9uUm1rcFpLaVJOTllWdjh1VGo1d2twaC9jZDV0RCtRNWhXanBmT0dZSUNRZTRmSkJBb3A0QUVuV2NJNTBqVGxJYVk0cmxuWG1EeGIwK1JVL2dIT0QrMHdkaDNjWnZwSlNHaUdBZ0VncEFOQk81NzVHYnhPc2JXWnBLdSt0Y2dyRHd4RmJlWWpxNS9CMWw2VnZob3JuQ2JSZXR0VDIzTnYzV2lmRkVxSXdzWWpOSDA4emF6dTJyMGlqV3VMVjNrZi92Tlg4UFFSVkNVM2FWMmhuRVBVbEVtTFFndjFFZStUeVVWMWhwdnJ5VVVCcDliZXVUUVViQ09JdE5JNTZPZmtaU1l3bUp6bjR1aUlvVzJJRVZDbmh1MEJoVkxHclVHTHo3L0V0ZVc5bUJVUmhSTGpEU3NyaTl4OWRwVnV2MDJzaFN1eHg5K25KbjZIT1FDbHl2cXFzbG5IdnNNRVE1SGdjUWd5ZzVva3JLTGwvTkx0Y25SUmlLRUtidUhLUjQ1OWdpQ0JFbUV4RlpCNTAyLzRlclhLc2ZtRFNQMERvdTlaWlBsUUNEd2swNFFzb0hBL2N6TkJLeXc0M2tQVzQzVlZzYm9RdnFFMHRFcDFpZlJNdnBaanEzdnF1V2xzQmlkam0yL3hYTGh5cXB2TVg1VzJ3bVRUY3VkUkRpRmoxaEszNllWd0JWbDBxOGxOMTFtWnV1c2RXNncwcnJLUC8vTi93bEh4dXowRkN1dGRYWStJanVVYTFXS3hhUXZxWEtpak11Q3MzN29QaEVKYzlOVEZMbEJhazJpRXFSVVlCVFc1dDVYUVNWSUlWRVVURGVuNmZmNzFKSWFVVTJSWlJtZmYvbnp4UFZYeUUyWFJxTkcxRkI4ZVBvazMveXJiL0xCbWZjd1dGNTY2aVgrd1JlL3hNRzlSMUF1SmU5b1RNOHhsVTdUV2xtbm9hWlFGQWcwenBsU2pndHdGdUVzd2htazhORms2Y0FVbXFucEdSUUpaYzArbzkvQnFEdkFVT0l6TXErNkV3SjdqM2o1QmdLQm5TVUkyVURnZmtac2w2OVpWZXFQalZlWDArRThLK3hJUHU1V1VuTDdlSmNQem02MTdxaFFOdHN1ZDRKQldvSjNUWEFUVXlhbTQ4dTltSzRLMzhEbkFKZkhGQm9uTTJhbTZ0eFl2Y1J5K3pLLzhadSsyVUdhU0ZaYWl6NXd1TkVpaVRNQUFDQUFTVVJCVk1QaFBJZnpCVkdENzdCS3RQQVBBZ0tCY2JyODVpekdGamdzU2dsNlJZODRVU2dTcEpQWXdxSzF3VmxJVkV3Y0ovUjZQVVFFY1J4UjlBdWlSa1FVS1RiV04wanFnbDZuUTd1M1RxOFhVODhTT3EwMk92TjVzd0pCbWlSb2JWbGRXVUc2bEt4ZEVObUlabjJLb3NnUjBvNFZKY3BCaW9kUEdsRUNwSkk0b1gwS2d2RDV1b29FUllxbE81TERQY3c5SFQ3K3lMSDBXVXVWa3gzaXNJRkF3Qk9FYkNCd3Z5SXNPRDBoRmtldHB1eEU0VllWK2h3ZHVyWURLNjZ0aXJVbVhRdEdrYzcveTAyc083YU5HTW1SM2NLVndaVzVvTGFjUHphdDVtK3pIQmNoaFVZNGlYVVNoMEU2VzRvaGpaVVpWNjR2b1duekc3LzVxMmk2N0pxZjR2cktWWnlBZWoyaTF4MXBQL3NwNDBieWc4Zm5WNW5ERGlsOGRGTUtoWE9PSE4vQnE2REgxV3VYNFRtSGxCSU1HRlBnckNSU01VSUlpcUpBYTQyU2luNi9pNVNTb2lod1NxTjF6dmUvOVYxT25uMkhUTGNRMGlFaVNhZTN3WEp2R1lDWW1PKys5UjFPZjNRV25Sa2E2VFJXU3habWR2UGxYL2d5dTJmMlFTWVIxc2RSSGFLMFgzTlFGb0E1NlJES1lrMkJRNkFpeDFxN0RZQ3AwanFxVVlIUmUxRCtoTWI5T01ibnViRlBnVURnUVNVSTJVRGd2c1dDekJqVUlBK2lzM1lZaVoxMElLaHlXcXNVQWI4QXl1SGdzU2x1TkpGMjg5UU5rd1cyM1Y3SWJmZnZHRnFYdWZMOHhxYlYvRzJYQzdBaitjSE9sUExQbXhvNXFlbGtOL2czdi8ydjBIUVJXSzZ2WE1NSmlCTG85WGRPeEZhNHlZaTZHNDgzK3FpMUpZb2loRkRvWEdPQXpGb1dsNi9TeXp0Z2FtV2VzU0NLRkZHa01JV2gxK3NSeHpGeEttbDNjK3F6Q1d1ZER0WklWQ0w0bXpmL2hvejFnZE5BUVZIZU80dEVvc214V0RiNmEvUjFScVp6K3E3Z1d2ODZqeTgrVHJNNVF5VHFLQktmcStvTWtzckNUR0lGT09Gd2FBcmRRVmlGVW81MmR3T0RLZk5icXdldmlSc3orUG41NVZVZTdYYkdCb0ZBNE1FbENObkFBNE1ydldTZGM0Ty9nTldRN1haWWUvc1JuMnEvYmxJOHN1M0hMYU9menJuQmV1SW1FVTFrVGxxSHYvbmJ2MlRmdm4yc2I2eVNwakZKRXROcXI1T204ZGoyNVVibHp2elU2SnliT1UwYTQ3WmRMckVqRFFlMm5qb25ickljbkw3ellpdmh3Rm1OZEZ0OFI4SmhoZVYzZnZjcldISWNHa1BtaFpFQXJTbnphTms1TlRSTTkvU2FQL1lGYTY0d2czTkthaWxacHNsMERnSkU1RnZxR3VEczViTXNiMXhuVnhJeDNaaEZ4UkVtSytnV0d1a2tjVjFoVElFV1FPSllXbDlpZXE2T1ZZYTMzM3FEbkI2YUFrY0daZUVVQXlFNnBHYzdGRGkwV3lPbWhrYnp4c25YZWZMSno3SysxbUdoUGtPem5sSVVHYjF1RzJjTVVSS2g0Z2doSFQzZHhiaU16RURYdFBudzdBZjBhUUdsQi9KMmxnU2ptVEFUZWRTREQwSEpCZ0lQUEVISUJnTDNMWTRyVjgvekovL1g3N1BSWGtPVEE0WkVSdVMyVHl3VWhjdkxkVWRyd0VjTGFpcWhlbWRVT216NzVUZnZTVDg2ZFB4eERkMHBVd2lneWlFZGR6VndXQ0lraGdKTHZxTU9CZHVSemlSa25kdy9BR2tIbUtIQUZwSityemY4akg4UU11VmxHS0g1ejMveFovekRYL2dWRGg3WnorTGw2L1EyK2h3K2VKUkcydUQ2dFNXbTU1cXNicXhpeVpuYk80V2h6N3Nmdk1VYjczd1BUUjlEaGlHblNtallGQ0YxWUtJSWsydE1tZU9xbmVQSzZpWGVlTzkxdnZUMFB5SnZXZGFYYjJDdFpicGVvejdWcERBRjdYNEhtUW95MDZVeGx4Qk5DYzU4ZUptMzMzK1RnaHlGQW9xaEdKWDRWQlE3Zk5CRXNWbXNsZzhBd3ZtNnZpQm1BNEVIbXlCa0E0SDdGc3ZSWS92cDlkZlFkQUNOeEtGdER5Z29uRVVPQk1tb3lLdENnV0M1ODE3M1ZURHpaanJpMWhKNWFBWDJjVjgrTGxrZzBlVm5XVmE5RC9kcFNyTi95aUh6TFE2OW8yUnRIMmtsd2s5MStYSjRVZWU4ejJ4U2kzSE9VQmp0THlPQm1JUVRWOTVsNzV2N1NPcVMrZG5kUkhHZDFkWjFWdGFnS0F5MjJ5Y1hHZldwR0JQbG5EcjlQdDk1NDIrNXNuNkJScXBZemZLYnQ0b1ZvRVdCRS83KzJWaGg4b0xWN2cyKy84NzNlWFRmOHl3aysybk9ON0RXa21jRldiK05rQVpYYzNUNmF5VE5pRUxsblB6d0JOLzV3YmZZY0d1QUpVMXI1Sm4xdXRVNW5IV2xrQlpESDEwM1BJK0pxcStQMDVFNUVBajhCQk9FYkNCd0g3TzJ2a3hQcndPTzJha21yZllhdG96TWdzVzYwWmhuTmEyVWt5MjdNTjNFbWVDbXkwYWpvM2ZLaUtmdHg1NzZhNnppcktJY0doK1dzVWtzWmxBOE5iZ1NkOWNuL2NrUjRjK25paXc2Zk42dlVOVGlHbHBiWCtUVk53eERrUll5Nkx1Y2hJaS9lK2Uvc041YjVrdGYvRVdPSG5pSWJpc2pFZ2tIOWg1Z1pXV0ZxU2loM1Z2amc3ZmU0M3R2L0QxbkYwOWhNTVJHZUJFN0V2RWRZMkFWYkFZRldWWm9rTDZJOE9yeVJmNzBMLzVQbmp2K01zOCsvUXd6VTdQa0xpUFBlaVJSUksydTJMMHd5MHA3aVRNWFR2SHQ3LzhOWjI2Y3hxQ1pxamRZNzdWUkpNUXVRZ0FHalN0TDRLd3ovaHZUZW5EWnpxL0V5QmNjQ0FRQ1FjZ0dBdmN0d2xLdnBZQkQ0Y2lMM2tERTFtb1JlZDRmMkZ2NUVGWTVIU2lCS2dLMnZTSlFTbTI3RExobFM5NmJ1UjU0N2s1UlZvRm1VWTVHeTRFdWw0TTBoRTNjUTVFODZjQld3V0lIYWRSQUNrVmhMRHB6Z0NvZk95SXFMNGRJUlNnbHZIdERYbURwOGRaSFArRHFqVXNjUC9ZRVJ3NDh6T3pzUEplV3p0THI5VmhyclhMMndpaytQSGVTMWV3R2pneUxSVy9sak1ZVzgwWnlPb3d1Qm9XQzJtV2NYbjJIL0dTTGRYMkZZMGNlWXYvQ1hob3pkUXFYMGU1MWFOMVk0YTEzZnNoSDV6OWl2YnVNb2NCZzZSWVpFTkdnaVNCQ1U2REtGZ3NPUnlvanJJU3Uzc0E0aXpOZVRNdklSMnVOYzFpN3pYa0hBb0VIaWlCa0E0SDdIb3RCMDh2NmdFVUloN1hhdDVDZDFJbWo1ZkRDM2JLWXpaaWI1NVhldlNhODg3RGFRSmVQekxoWmhIaXNybXZjdzJsbmNHQXpuMEZRVCtyWVFtQUxoMFhRWUpvMHJpR3NvRGs5aTRvRXJYYWI5ZjRxVmx1MHRsZzBhU0xKVFI5ckNoYlhMM0x0N1VXYTc3NUpMVzVTRkFWS0tkWUxueVByODJFejRsU2dwUGZuMWYxYjNJTXlDaW9vQ3hXZEd6NjlpQnp0REJmVzMrZmlHeWRKMzZpek1MT2JtZVlNcHREMHV4dTB1aHQwYVdFeFdEUUNTUkluYUtwSGpaakR5UkdPUC80b3UvY3VvR0xGYW51RnN4Zk9jdUhLZVFUUXArdWp0YzVpQzRlU01VbzZ0TkNEcEpKQUlQRGdFb1JzSUhBZlV4UUZWUUZYUGExUjZBNVJMREMyQjhBbW5UcFFmeGFjTFNPdU4zTnR1RHVoc01rMFlSTjNFNUdWT0RIY1hyakt4eFNvbWlkTVJKeUZxS3k4N3VLd254QUNTRlZNSkdOMDMrQ1FSTVRzbnpuTUM4Kyt4S09QUE1HZWhUMUVTVXFlNTl4WXVjSGk5VVV1WGIzRTJiT251YkorbGw3ZXdrcmYwU3hORW9SVnRQVWFuYXlMUW1Lc3hhRng1TWdJdElIY3VIRWhYMGF3dC9vZFNGRkdqQUdFS3RXc0xML1lndnFzUUlnQ2wybTZ2UzdaeGhxTEcxSFpnY3NuZGRTaUdCbEZiUFF6SEk2c3NOVHJVOHczZHZNL2ZPbWZNaGZORWNjS2JRdEk0UEZqVC9EU1oxK21XM1Q1d1p2ZlpmSEdGYzVmT1VmYnRMMmd0UlpoZlQ2RXVHbnlTeUFRZUJBSVFqYndnSFBuRWNIUkNOOUFRSTErWm1TNCt5YmIzZzFDS0JRUkJvM1dHbTAwMnZpOHgxcE5rV1VqRWRXcWdHajQ0WllSMTd2bDFwMno3akxSVVpUL2NwU0QwdVZzNXpidGVTQjdLcHZiSFVmaWE3Y01ncGpkOVgyOCtObVhlZTZaRjlrM3Y5K0hUSjNDOWkycFV6eTA1MUUrODlEVHREcHQzbnJyTFg3NHpuZjVjT2t0Q3RvNEFaMjhqeUJIb3ZBWnAxN2tTK25kWFkzSnZGNnQvcTgvK09wOXZ2VFd5YWREbjRnNGp0RzZiQ3NzQlJqb2RZcmhqMW1DY1FZaHZYMmN0UmFwb0tWN3ZvQU5TVXlLQUk0ZmVJSi84b3UvUW0ydHhsdzBCd3F5SXNOYVM2UWpzQkVpSy9pbFYvOGJUcDcrZ01RMk9YWDVCRjNhR0FyZkplemUrQklEZ2NBT0U0UnM0UDdHT1cvWDQwdWY4ZU8xNWZDbmM1di8xRzFaMnpUdXp6cWExN2twb2ppNXJYVWo1ZnVWZWgwYS9ZL1cwWXp1MzNlMWdrbzBqTGI1SEQydXJjSmhveUo1NUZ5MGRnZ1VJREZtM0lzb3kzeTcwaUdqUXVYZXM2TDYrTmh0bndiYzVIcVVoV3VUVldNN2lrU1FBaEYxTWNQUGZlR1hlZUhwbDRsSlNFV1RQTXVJcFJvVzZ2Y2R1bTlKWEpOWG52Z2l6ejN6Q3IvemYvOG03NTkva3pqMkxRMTAwU2VkcVZQb2pLTGZBNkV3QWw5QXBoUTRNL3pxSFFnUklXU0VOZDdUVmFVSnBpZ0FnNGpqWWVxSmtCUzY4RDlhS1ltRThrSzUrb0VOVEFZY2hSMXhZZ0JxTXhIOURVMkVBaFMvL09LWGVlNzRDOHptczhRcXhobUxzeUNKRUU1aWVnN2hFcWFwMDd1YThmaWU1OWozTThkSXYvUG52SDdwT3o2elcyWm9hKzZOcnpFUUNPd285MHJ0YmlCdzN6SmE4Q1RkZUFSV1RNd2ZYYjVWcFBaMnFiWVZtenlJdGpPWWo5ajBuL3RQUkVETDNzYnIzc1dXZWFJdnYvQXpISC9rYVlTdFVZdm1rQ1pGRkRIS0ppampYNUZKVUNZZHZHSmQ0NWUvOUk4NHZQQUl1aERvd3Y4b3V1MFdSWlo3RDFhTUY2L09nU2s3b1ZVV1h3WS9UTzhjUWppRWdrZ0NxaFQrdXZEYitnL2xlNDNDK1YxWHRoV1QvWVFuNkhlcWpOaUV4K2FmNEpHOWo3TTNQY0EwdTFBMkt2Lzc4UjNhaEZNSTY2ODdNaWwxTVUxaUd0UmRnMGNQUDhiQjVtSEFZcXhCaGpCTUlCQWdSR1FEZ1VCZ2gvQytVcnRxdS9uOHk2L3kwT0ZIV0xxMGlrb2lwQk1vbVc1UjBRYVY2QVBKOGFNUDg5d1R6N0R5bmNzK0NGcExhUGZYRVFwaUZaRmJQK1l2eWx4aTZRUUlnWEMramJGemxsamthT3N3Qm16V0gwdUxVVEJ3dnBEVnFJRXBjS1lnUmlCRkRSQmxoN2NxRWNGM0I3Tk9ZNXdGSzRoSW1KUHp2UExNNXppNit4aXhyVkgwTktLc1JoUk9JZ2NqRnJMTWQ1WW9LZjFvaFpNOCt0Q2pyQlRYdVBENmFRU0NTUHFVbWtBZzhHQVRJcktCUUNDd0kwZ1NFcDU3OGpuMnpPM0JGUUpuSkwxT0RpNG1VU25DUmVBaWNCSTMwcFhObTA1SWluYkJaNDgvemVGZFIzd0RpTDRtSnFKbVUyemZvb3hBR1I5a1ZiWWNFYkFPNVJ6S1FvUWt0aWtLNldQMkZsSUhOU2VZU1JNaTQ5L0h6a2M5RWlRSmtvaUltQWhoRlZpRnhMOEVDdWtVd2lxa2lZbHRqWmdhTVNsTk5jT3gvWS9RVkZQUVY5Z01sSzNXRndQeEtzck1JT2tBWThFNmJLR1ptOW5GUTBjZThpa0lDR3hoZnpJR0ZRS0J3RjBSSXJLQlFDQ3dBL2k2cTVTWGYrcno1RDNIUnFmRDNOUUM3YlVPUkdvd1ZDK284cW5kMERnWC9GQjhFWE5zejZNOGR2QTROMWF2RGtxMkdySk95N1JReEl3MkVwWmxFd2xScnVtb2tiZzZ5cGNMQWxEZzJ4cnJIaWhxUkVTaytJS3htQmhOZ1FOaVlvb3lXbHkxSWg1R1pDMXVwSHRCU29QZGpUMU1SVE5FSmtYWWlDaHFvRzBQSzMxWm1xc3F4cHhBT29sdzBoZU1SUUlzNk55d2EzWVh1K0o1Tm95amJWcy9ycThtRUFqY1J3UWhHd2dFQWp1Q1JLRTR1UDh3M2JVY2JTMXpjN3ZJTmpUQ0t2SmNFMGRWeHdmQU9XOWtRR204NEJRbVM0bGxuV2NlZllWZHpUMFVya3VtTzZoRWtkUmk4a3dQamlVY0lDeHkyQU9YdkM5UktpbFRYUTJ0OWdZZm5mbVFsY0sza1oyTmR2SDQ0NDh6MVdpUTlRdHFjWW8xb1BPY1JxT0JGV2FZY2dCSTYvMkpqZFJZWVJGQzRKeEFtWmc5emIzVWtnWVVBcXNkVWtrRVhyUldzcnJxeTFhbE55Z0VPRWVTMU9qMU90Um02dXlhbTZPNzNvSTh0UGdLQkFKQnlBWUNnY0NPSUlCNjFLRElOTTM2RkVVUGluNUJMR3ZnRkdPZUYyNkxTaW9YWWZPVWJ1WTRldkFsamh4K0JwVWFDdHRsbzlOaVptYUtQTmQrSDg2M3RwWE9JZkFPQlFoTFVrc3h4bmhockFSWHIxNGx5eHdiNTk1RDRIamk4V2Q0OWRWWDJUTy9oMWFyUXkxT2ZPZXhMS05XUytubUczNmZUbmhCNnlST1dLdzBmaXJ3UXJWdmFVWnptSjd4M3JZT01sMGc0NXZkSVl1VWlxTElxRFZxdExxcjFJUWtqaEw2ZWY2SmZ4K0JRT0QrSkFqWlFDQVEyQ0hxOVRvYnEyc2NQYlNiVnEvSHlzcWFGN0pBSEtYZUxVQ01SeHl0R0xZV250azF4ZnJHR2pLRzljNHFRaGZVcG1KeTA2TFZyY1NlSEtRa0NEU3lqT2xhWWVtMU8vVHpEQ0VjYWIxR08xOWp2YmRNUVErd1hGKzVSSzlZSjdkVGRMSTF0RW1JcEtMZnora2JoU3ZURVpTVlkvbXFUdmlJYkZia0pGRUtWdEtNWVgxcGpZVkdRcFNtUkVKaUxBT1I3VS9RZ2hNNDRmTmZMWUlzejVpSm1saHJNUllLbzlIbzRDTWJDQVNBSUdRRDl6bk91YkVYdUlsNXR2d2pPZlNXSGZXZHNoK2pZYnR6M29mVWJlUHk3NCszOWZMUitXUEx4ZWc2SXo2ejJ4MS81RHlzc0tGYzh6NG55M3BJQ1d0cksxaWptSnZaUlgralFHdE5ta1RvM0xjSmRzTGdJZ2RTNEt5aE1CcmpjbnI5eSt3NldPY3YvdkkvOGZxUHZvZEtEUDJpaFJYRzU5VzZZWDZzcURxZVZSRlpKRXBNb2ExQVcwMXVORnJuRkRZdlc4b2F6bDl2ODIvLzREMWlWU09TQ3FYaU12THFIUmVNeGUvSERndTFBSnl3T09GdzBsR3ZOMWxiWGVlaHZZL3dqNy84SzZnYUxLOHRzVzl1SHpiemJaSmRLYXlyeGhaV0tpSVJrV2NaU1QxaGJXT050SjZ3ZVAzaXdEOVdTalhTZGl3UUNEeW9CQ0ViQ0FRQ080RERzcHJmNE1PekovajVMLzRTV1Vld3ZycktUR01PQ3N2S3lqTFQwMDNpTkFJRnVjbnA1MTJNZ0hxOVNUcmRZTDNmNXZMS1I1eTkrajZMM2JPb3JpSEhvS3Bhc1pFR0lLTk5Pb2F0NWRheEtHelpKY0V3M21TZ1p3dXdJSFVMS1JUS084aVd2VDhFamdoUXlMTGNTNHcwM1hCWU5JWmFVYWRQem1MckNwZFhMakoxWklaNFZ0QXk2OFFvWkJTaGxDS09JaXlXUE04cDhqNTk0NWhxVExQUlhxVTJtMUtianJoeGVZbkxTMWN3V0tKSTRVS0dRU0R3d0JPRWJDQVFDT3dJRmtQQlcrLzlrQmRmZW9XWnhqdzNGdGVabVpvaGtqRzFSb3doeDJnREpzY0lpNHA4eExMWGI3T1JGVFQyekhMbTFQdGN1THBCUVlPY0RFdEJZVndwU1gzWHQ2R3ZnRTh2R084ZGJBZk5mUWZqRTFWNmJybWFjU0NjS2RNU3ZHQjE1UlhnVGJjRy8xUmRFbXpwWDVBNWg4Wnd2WGVWZDgrOHc5emNITHNhdSttM09xaDRHcU16ZXYyQ3doWWdIVkVVa2RSU0VxWG85ZHIwVFo4MFNsamVXT2FEajk2blR3K0RManZhaFVLdlFPQkJKd2paUUNBUTJBRXNqa1JJemx3N3hmL1AzcHMxeVhGbGVYNi91N2g3Uk9RS0pJREVScEFFdUZWelo0SFZaSEVwN3RYVjY4eklURjlFRDNxUkhrWXltZWxGMGhmUUo5Q0xaR016WTVMYTFOUFRVOTNWWFZXc0tySzRneURCQlFDeEpKQmJSUGh5N3oxNnVPNFJrWkVKRUNSQUFpRDhSd3Q2SU1MRGwrdWVFWDgvZnM3Ly9PYXRYL0hUNHo5amZrK1BZYldKSlNYcEdMd3YwWFhkbHlaVytsdXQ0aDExOFZ4YXZjeUpUejVsdGRna3lreE53R0NNUm9Ldmk4YnFGc2ExeUl3Q01NN1piRWxBMVFLMkZvZUtjZDlrRlowRkdtc3NDUUZRVWFacUIwb0lQcTVqbkxkYTUvRnE4THJDMXlrQUgzenlEdnYzN3VQUkI3ck1MTXd4dUxSQmFqcVlHWXZSY2JzQXZIZms1UkJ0WUc1cGhvMWlsZCs5ODFzK09mc3hBVStTV2NwcXVFVnN0N1MwM0ptMFFyYWxwYVhscGhBWXlEcUdoRis5K1ovWnQyK1pIOTM3QlAzTE9YaFA1VUVIVDZJMVNubktxc0JYSHBzYTBxUkRtbWgrODh0LzRwMFAzc1F4eENoUEtTVkNoWk5HNFZsaTFMS1pqZ3ZGQWhwTk10b1dvSTdVaG0zaU1FekVjMk93VmdNZXFPcjMvUmJmMkNqVFl5UVg3MUVLdkhndTU1ZDQ5OFFmbVo5ZDRON2xvM1JuRnpDaXFYekZZRGhBOEZpcnNjb1NkQ0RyZEZGR09QSHhDWDcvN3B2azVDZ0ZSVFZrdEFrdExTMTNOSzJRYldscGFia3B4RHpTVHJmTEZ4Yy80Vy8vL3Y4aGxKbzlDd2M0c09jUUpsaENXZUJkVHVrS3JJV1pYZy92UFYrY1BzVkhYNTdnN1QvK2hyNjdDRlFvRGZnS2JTQklFMDExMGJwTG1sWUpjYjFqTjlxbUdLejVONHlUYXBsS1FXQnFHVzQ4WDVOUk1IR3JmL1JNZ1UwME9taWtjbng4NWlPc04xellmNUVuZi9RVGVza015b0RwYUxUUlpGbUtRVk9XSmFlKy9KUUxLeGY0NXpkL3hTVldNR2lHVW9JQjNkT0V6ZTJpdTZXbDVjNmlGYkl0TFMwdE40RkdPaFpoZ01meTRSZnY0djlPK05HeHg5bThlNVBsM2N0MDB3VEVFNExEK1pKOGZjRGx5NWY1dzF0djhmc1Bmc3NhRjRHQ3hJU1lZNm9neWFBb0p0Y1VJN0Rqcm1DVHJWMWpTTk1nQkNXb1dwUTJlYkpobkgwUU13MFVhRkVvRE1yNFJzcnVLQ1kxUkZFTk1ISVZpV3YrNU53bnJKeGI1L0s1RFE0ZnZKdkRSdzZ4dUhzZWt4cjZSWi96WDUzai9GZm5PSFh5RktmWHYyU1RUWVFRaTlGVUJUckdsRnRhV2xwYUlkdnlBNkQ1RlozNFlWTlgrNUhiL3F1N2s0dlZxTXE3bVgzaVkxb2dUSGxrNmFuRlhvdkw1YmY1ekNUeWc3SFMzSDRFcnJ4cjhkaks1RXpiRHVrb1JManpBbVV5c25pRCtRYkh4Q2FRbDU2NXpnekR2T0RqQysvejFZVXovT0dQLzh3RDl6M0k0dXdjKy9Zc2thU1cwNmRQODlHSkU1eTdjSTQrQXlweUhBT0VDcHRhOGp5dVcxMXAvYzNmaE1UekpwN1hZUlNQVmJYRFFaRHhjQm96NFZpbjZzQ3VFa1JjRkxtYUxXUGZ6RHI2aTR5MnNGU1ZvS1FpVXgyc2FCd1ZxMXprRDE5dDh1Rlg3NUgrSWNPTFEydXcxbEtWSlgzcG93RlhDL0hVcHF5NnpiamdCQmhlK3poZmxkRUFYR0Y2VmJhZXQzSG9kejZuWk90TThlbDBqNHZ0Qzd2S2dscGFXcUFWc2kyM05mR1hWOWMvZE0zZFZDUUtSQkVaZThnU1l2RUxnb2dhS1VBTjhjZC9oeDhISmRGbmRvdHRFZU9DN3RFNlJwc2pXNlpibGltVG4xY1RINW40MGF2OVliZmZ6bTFlSHZ2SWVyYlBwMVRzWDZwVTQxdTdmWjl1UGZTVzZYaGsxSlJFMkw0em9TNG1hdll6VFRXaFV2Z2dnTVlhUytYTFpuRmJSYS9TRTR2OTltSjJ0TWhKOGNNTzA4WkFBS2dML1NHQWQ1clVkc2hkaGFQQ1U3REtHcXY5enpuMTFsc3hpMVZaUkJTT1VJK0tRV0dpT3dFRm9nSWIrZGlIS3Q5SjRPMGdpcWFUQ3hvbUw2NkNZeHR1Y25rVDJRaVR5UW1qZFV5ZTNrQWhKUld4MjVpaVFET0llalRVbi9VQi9QYkxtZ0NJQ3lPYnNKR0l2ZDV6WExIMTNMamE4WlBwWVl6RmRZM2liVElzNGpUdWVHWVRocTZLSDlkZ2twVEtWZlhDTk1hRjBiVkFhUGF6M2g1bDYvR3J4MUFuaGxEVjMyZWl5VG9kaW54d25RUFEwbkw3MHdyWmx0dWE3UUkwWEdORUxPejQrZWwvTnovcU95MXlNbUF6SGJ5WmpyUmVpV214ZTJjeUtWdlV0bGZpcXdxcHhjS1dZUXFRWnVBZGxFVkFrMkMxUlVSdzNrMHVjbm9WMy8xNDF4WC9LcldvSUlUS2pkYlo2VmlzU3VsdlZsUkJHT2ViZXJKdWhnOFZSUkdMcE1yYUxMWGI3WktZbE9FZ0o0U2lOcmVha283ZlpKOG1CblB5UEk3dUEvRzFjZHg2SWdvK0tkaXZGbEhjQWFsYkxWd1hFOTY0TjR0eHZIOVM4VTVkV0JMYjhCcWxVRVpUZUU5Vmx1T2M0dm9LclBIZlZVb2pXdkFTcUlJZ1ZidzRFd05WR1FpVkI0SFp1VG5Ld2xIaytmZXpzeTB0dHppdGtHMXBhYm5KVEJZaWpmMU1KNG5DSVl5bUl3UmNRUjJOdHlnc0lXaEMzY0wweW5wbmNwMDNnTWtWYlluaUNaSlg5ZTE1aFZFV3BSUkZQOFpURFJrR1F6ZVp3NG1uZEFPS1FST3h0S1RXVWxaUnlGYUZvNVFOUXIwdXJYUk1BeEFZUzZ0dk90MDYxbHZIK1JyMzkzYm1Ha1Z4YzBqMXhQOUhDeGgxSkJ1Zm1aT0xUSzFCbEFFWFhSMk1zWWhXaE5LVG9FWitFZ2hvYnpFb05BR1JnQlR4VE9oYVMrNXlCTWlISlVxUDE5dlNjcWZUQ3RtV2xwWmJnRVlDakNYVU9FMHhiS216bnd3SUFtZ3hkWUtKcGR1Wm85dnRjZW55QlpUeUJQSHgvdXlPbXZWRzVNZnVJUGwyRWhlaXlVd1h2TVpMd0tDWTFYUDBPclBzM2IyWGhZVTVmSENzWEw3TTViVkxiQXpYS1NueGxkQlJzNkNGM09jME42QVZDcEdZb3pCT3d2ZzIwN0FsSGZScTQveERSRTFJMDYzeS9sb1hzRFhxM3h4NlgvOURLY2lkQTNIRWxzQ1dyc21vS29jQUNaWUVRNDh1TTcwNXNxd0xRRkdXNUZYSnBYSWxOZ3Qyd295ZW9aUXFYdGlvUUc5bWhzRm0vL29Hb0tYbEIwQXJaRnRhV200YWFrbzJiSW5IcW5HaDBZNVR3SkNnU1lIWVB2V1JoeDVuZVhtWmYvN3RQM0YrNWV5VlYzeERJbGxOam1Rc1NacllxZEU2RWdOYXBZalRlQmUzY25lNmg0Y2ZmSnhqOTk3SEEvY2NpMmtvUnFPMVJtbE5mempnOHpPbk9YUCtOUC80cTM5Z0dQbzRuNlBSR0dzUkNpcmZwTVlJK2x0K2pZZGF4S0xHdzdGdE9wMTZNN1dNMnprZ3FDWWE2NnFKYk5lZHJubkMxTFN4VHR1V0Z6MDFRT01VYkUyQ1JRdFVSWWxCMDZITFBQUHNYOXpMWFlmdVlmL2UvWFN6SG1WUjBlLzNHUlk1bHpaV09YSHFJODdMQlZ4d3BLUjRIRjRDZzBFcllsdGFvQld5TFMwdHR4UlRPYzdUNG1CTFNxS21heFlvZmNDUzhaT2ZQTU1ycjd6QzZiTmZzbnA1RTBZaTh3b3h0aHVpd2ladk9vOWRBU0RtUDR1TFQ1UVlMQm5IOWo3SUN6OTlpZnZ1ZllnRVM4L0dyK0RZTE11Z1RFSnZEcnBIZHJOLzl4R1dkeDNpWDM3L0swNmNmZ2NQV0NVTXF6QjJKeGdwcFcrVFduQ1ZYZHFhTkh0N0s5YXJFbmRRUnRQdDFISi94NlNYcHJoMFpJSXhYVlJZdjVhWWpGUVN2Sy9xQ0d5UFk4djM4c0RoQjFuc0xyQXd1NXVackljV2l4akJaMEpRZ1kzaEJnY1dEM0R5ekVsT252dTQ5dEkxOFNJazNJZzdDaTB0dHordGtHMXBhYm1wWEZGcVRsZU9UeU1HU3hjUFBQVW5QK2JGWjE3aG5pTVBjdUxqVTVUQmtlaUVNaFJiUHo4ZGNyd2gxSFhuRTVadlRXUlAxK3V5V0I2NzkwbGVlT1lOSHJydlViU3pyRjVhWStoTFpqcGRNcHVSVjQ2OHFCQmo2SFYyTWJkbkQzY2ZPc1pzZDQ3c3pZd1RwOTVtVUYwZXJVRHBtRFVSdHNVTHIyMHF6VVhEbFlyaHBwa1lNejJxeTc5OXhWVHRaVEwxNnZhWTgzaU9FSS94aEZCdGlqcjlaR1hjNUhuYlhLQ0lJbmhQUXNLU1h1U0J1Ky9udm9QM2NYVC9NVlNocVlwQWRjbERWV0dVSlRVcDJscVVXQmIzN1daNXp6SkxwM2Z4aDAvZjV1endDd0lhWlRTVjM4RldvcVhsRHFNVnNpMHRMVGVGNmR1NHpXMXVyalJ0Q25Pa3NlcEt5YjN3NG1PdjhKZC8vVGNvcTFnNXZ3WmVvN2NsTFV3dEIvZ1dHWkU3c0lQL3JZeHRtQkpTQk1POWU0L3lzK2RlNGNGN0htYjl3b0J5Q1B0MjdVUGNJSFphTFVENWhJN3VvSFJDS0lYaE1LZFNPUThlZlJTYkdZYjVHaCtmMlNCSkJOc1JOamFyaWYzNWRtSVcyQjU5blh3K1hjUzJSY3lPYzJsdlQ2WmxiTHdnMldLUE56SHZTTVJPV0JBM3h4cXB4ZXkwQjYweDRDM2VDUmJMSW9zOGR1eHhIanI2QVB0bTkxS3NGcWpLWXIwaFZUMDZTUWVDeHBXQmNsRFE2L1VZOUlmTXpNeng4TkZIVVNua2YreXo0aS9pZmJSajIrWmMwZEp5aDlFSzJaYmJHcTAxM251OFV4aVZvcFJDUkFnaElDTFJwMVdOSEJxNVdnbUwxRDZ1azk2d2V2cDl0cjR2VjNpL21VVk51TlB2OVBuSnV2b2RsLzgxWnJBaU1vb1pUYy9iK01uZWRreUlWNVVvcEpMNmJyaUZBRm9ac3F4TGxXdCs4ZXhmOGNRamYwbzNuU2ZnMGFyQ2x4NURIWTJkWmxTbGZxTWNDN1lLd2kxRmFJQW5NRzkyOGRkLzhXOVltanVBR3dabTAwVThobENBOG9hZ0hFb3NWbUxCV3FnVVNoR2JCeGlMRGNMdXVUMzhxei8vci9qZi92Y1BxYXFTcXFxYTdJcXJWMlI5emZGWGt0VG5UMEFiRlgxYUF6dmZJditob1VBbElLN09kVFVLbkNCb0VtUHgzbDk1MSt1eE1ZeDdRb2pFWmhKamc1Z1BJZ0FBSUFCSlJFRlV3YStnVlBRNlBieXJzRmdlUHZvb0R4OTltSzd1VUt4V0pDSERrR0F4S0orQVYrQTFxVmlzc21nUGpwS3FDTGpDOGNEaEIzQ2g0dS9lL3Y4b3FZaTl6bHBhN214dW9QOU1TMHRMeTdmalNsOUVVZ2xLVzhDaXNjek43RVlrb2N3RHJ6MzdCazgvK1J4SERoNmxhMmNJbGNaWDRMMmFpcXQ5bHpUS2VDeG94OXBTbzhsNDhJR0gyYnUwbjBSbjRBMEVUYUl6cWp3cVJpVVdKUW9sR2kwYUV4UTZHTFJZUWhFWXJnOVo3T3htYVg0dnp6M3hQQ2xkVWpweHpDYXZ6M1o2WEhYVExScU5KVVdSRUp3R3Q4T1IyR0VnZnlodUJ1THFLS3VCTkUxUk9ucm9CdS9ybDFWOUp1bDQxVEJwNlNDZ01TTWhha1NoZ3FyRmFJekVhaExjc0NJbDVXQjZnTHVXRGpOcjUwbGRoNjZaeFhpRHFZKzFDZU56UUlsQ2k4YVZIdTBOcWNxdzNwS0ZqTU5MZDNIUHpOMTB5Wmh1RzlMU2NpZlMvaFcwdExUY21nZ2dLaFpNaWFGajVoajBTMUk2dlB6MEc3ejgzTTg1dU84dU10TWo3enVxdklwQ0lzVFNuVVFuWEtsQlJndzRYcThjQzFPUFNUU0toQTR6UFA3d1V5ek9Ma1dIQlRGVVZZVXhoc283Z2hydFpyeFhJUEYrdFphQUR0QkxNM3poU0pSQk9jVmpELzJZRHJOWU9pVE1SQkVxVjM0Z3lSVWYwZWNoSTZQSHJKN0ZZRkVZVXR2QkpQWjJUbis5WnBTdGZ3SURpSXVSL3pndXR2NHZKUm45UDBHSmhhREJnNUY0R2FCSjBhUVlVaEt4MkdBeFFXT0RKWk9rL21UQ3NZUEh1SHYvUGZUTUxGSXFsSXNDZHJJcFNnemtCa1I3VUlFZ0RvS1FvTEZlUTZFNHRIaUFodzQvUkk4WnpBL21rcUtsNWR2VHBoYTB0TFRjT2t6bWEwcGRMaVVKcWU1UWxoNURsMWVmZVowL2YvMHY2Sm81UWc2NXp5bDlpYkVKdFFsQUxJQUtWN3ZwZW9NRVFGUGd0U1g2R2R2SWdtVm1ab0hEaDQ1U2xoN3ZBS3VwcWhLVkNkWnFSSG04Q2lqUmlBcDF2bVdzNU5LRWFOTmtNbnp1Q1NYc210bkxRcmFIaThXNTJqeks4RzBWWjVSaENhQndRYkNrZURSVldjYTh5NUZULzA3YzRJWVNOd09CUkJ2S0tvQm9wQXdrSkhVY1BTTWhvU1EybzRoQjJGQmJsbmxFQWhvOW1yOU9Dc0ZQRkljcEZBa0pDczB5KzlpL2VKRFpaQjZWSzFTVklGN3FIbXFSb0FTdEhYN2lOV3MwcmlvUkR3a0p3LzZBcEp0eGNQNGdjOHl4d3FYdmNjQmFXbTVOV2lIYjB0SnlFN2xDd2RXRWlGMlkyODNtUm80aDVkWGpiL0RLczYrVGhobkVHUkpKVU1hQ1VhZzBFR3hGY0I0SWVLcnhzaWZ5UGRWb3JUR0w5WWF3Slo4MGlsaEkyTE4wZ05uWkJkYlhjeXdkbERHRTRLTU5VMGZqcEFMbDBCTEZiNUNBQ3VNUytHRi95TXhjUnIvWVpLNHpSNGNPeHg5NWhsT2ZmMEpGU2JBT1VWY1dzbGZMc1ZhaTZkb2VnODArUVR0TVI3TTZ2TXlaeTE5R3F5OXRjS0c2eWs3Zi9pSGJLdmNZTEl2ZFJaYVhEdEFoQmFmSmRJWUtDcXNTSUY1YkJCVVFGZXBwalBwYkZ5T3FrNitQMjE5cnJGZ29ZTy84ZnBaNnV5azJLcXhQeU93c1JpQklHVCtMUTdSQ0JHU1VWeC9Jc295cUtzRWxwRFloNzBPMTdsaTBpeHlZMjgvbkcxL2NsSEZyYWJtVmFJVnNTMHZMVFVhenRlMnNycjJsREJyTCtzYVFoSVNmL2ZnVlhudnhEZmJ1T2tEWkw5SE9nQUp0RkZvVXZuSjRLb1FvWkkweXVHbEQvd25IZ2h0V2RiL05DYUdKeUJxV2RpOWpkSVozQTdwcFJzQmpFa3ZoaDFocjhUaWdMa3BFTUVFalN0QWlkZnBESUxNSmwxWUxkdlVXU0czSzh6OTVtU2NlT1U1bkxpTjNmYTRtS0s4bVpMVm94TU5ndUVrNms5Q2RTL25rekNmOHc2LytqdmMvZXg5WFZqdmJjM0VEeHV3V1FLRkpNSFRvOE5EZEQvSGtJMCt4WjI0SlNnTVZoRUpJYlRhYVA0cFpWNHZXT0FMZXcrZ3NVdU0wRTAyTXNxY3FvOXgwWkhSSXBVZlZEK0FEdlNRaGVEOHlvbzJwSlFHdnRoNnpTaFdJOWxSZTZIVTZaRHBGRllxNVpKYmx4UU9vamRzOEt0N1NjZ05vaFd4TFM4c3R3TlFQc2pSeFU0Tkc4ZXpqTC9DTFYvK0N4ZTRlUWc3em5VVUdtOUdoUU5rWU9TeFZnZElCYTIzZHEra0tQcWszQ2pVMnhLZWVqaHVleGdLMWdDRXZQVW5XUVJ0RFVaWWtuUlFwQTVVdkVDc3hvaHFpdzRXb2dGSjFSRllnVFMzZWxZZ1BCQ2VVVlNCVW1sNDJ6MHpXSTVWMGkzL3RORi9uZWxINkliWXpUM2UyUzlJMXpLUXpkTlBaK3JaNnZDRDRvYUpIeVJVSkZCbzFCSXlHU2pDVlJYdU5EQ2NOWWtOOWpCUktDVjZEcTNPYTR3R01GeVdhZ0VqQUJNRnJSN2xaa2lVZHNrNEdlRUxRQksveDNxRXNvK1BuNitXSUNLTGphMVVWTUIyTkt4emVlMUlkblZrU2xaR1Nia2xOYUdtNVUybUZiTXNQQWxYYjNqUVJ0OG1wcUoybk4yUzlmUHZvMURmNUNkSTdyT1JXa0Jqak8rcmZKRExVR1BMSFhOYXhqM3lNWmdvR1NGQllGQmsvZi80WHZQRDBTL1RTUlhSSThLVndlYVBQVEhjR0FKc2xCQWMrQkl5RnhIYWlqQlcvemRkVFJ1c0pOMlQ4ZGpvdWt3VmdnOEVtZVQ1Z0xsMUFlU2p5aXRtNWVjcXlwSElsMklEQ2dkSjE4VmxqNktSakJOQjVobmxPMXMwd0hjMXc3UksvZitkM1hGcGRZVkQwMFZwZmw1Qk5VMHZwQ3B4VWxDSG4zTm9Gemw3NkFrK0ZWblhUZ3dtaDNneGxHTDkwblV5WXNzTFgvMUhjMEZCd1hHZE95WHVmL3BITEYxY3d3ZUFMSWRNWm1lbmlTbDkvVjhRVFNIVDBubzFwQkNBbTVqYWpwQmF5RG9XZ0JFeFFwQ3FqR2ppT0hyaWZSKzk3a2t6UFlwWEdvR0pVdDA1SmlQczJZY3NYNGgyRHZDaVptNXZEbHo1R3lEVW9yZkNTMHk4MmIvU0F0TFRjbHJSQ3R1WDJKZ1NNaW9aSEV1cis1eUVxVmU4YzFoRHYrazBMM2ZyajBUdFdtbi9FOTNmNDhkL3llajBOQ3NiNWNGTis4cXJadkRvSGMyS1JXeHBON2VBWkt5SWpnVFN5VkJWMjhKa05xSnQ0WnpIR1RIVzlKWHJxSjNWS2tTalo0VGMzYm44UUp2YlhZT2loNkNBa3ZQSHNYL0w0UThjNXVIUWY0ZzNGWms2aU8vUm1Fa3BYb0pRSGhOSkRJQ05SR3BmSFJnU0JNTHB3R2F0V2kwQ2RQM3VkKzc4bDN6WVN6ZW1yMGZOVG4zOUltbml5UkxGMmFaWGR2V1ZjMzVOSkQ2c3RaYmlJWjRoUlhWTGJSVndTdTN0NWc3V1d6ZUVhaDQ3c3BkdzR4NWxMbjBHbjVIY2YvejJmclp6QTQvRDEvbHdmVFkrdVVCYzBOWkhCbmVlK2NkSkpqK3lqbW1yOUxSSDA2WTVza3l1V0tRSDhMUWdFS2lvY0ZRVUYvWTJQUmhkVFkvdTBodnBLS0V5djBkVEhYT28wa1JqRmprc3hwQ1NrcEtRYlBlNjNEektUek9MeW5PQTFpVlgwcFl6NXljRkVLNjlnSUNpTWdBVEZucGw1enAzN2lybkZXV3lxdUxCMmpzVzlDeFNoNHZ6d1RMM09scFk3bTFiSXR0ejJUSXE5a1ZoVlU2L3ZNTDFldERSaTl0dDlGcjYrMUdoNld4dnpkYmlWdWlwTnF1bHBBVnRQUitId3JXOTNPakFjeHVjTE00c00reDZQcGNNc1R6LzZQSC82NUFzczd6bElhbVlaNWdVU0xGNUZxUkdMWWh4QldVQ2psRUdDd3BweFhxT203cmdrRUwvdWFrRnlnODMrdDVhc0JlS1IxYUFxdmpqek9jY09kT2gwTTR4UzVHVkZtWHU2TXhxYmFKeURzaW9RYlZGaTBHUW9ZekhXc3JSbkgrZFdWc2lsejhMZU9VNSs4VWRXTnMvaTZkZXlxYmh0RGZISFRiSlV2QkFTeHRIbHF6WjVhQVR3OWdhejM0UjRRWE05UWpDNnlNYS93em9pMjVnSUN4QUNXWkpTbEJYbisxOXhidTBjaS90MllUc0pVbmkwTVNCTjl3bHFEMkdOOXJHbExVRVlyaFYwZEpkTzBxRmtTRERDd0ErNXRMSEN5c2FGVytLdVRFdkx6YWJORkc5cGFibE9KbjlPYTlXb21qRDR4RVBHdDl3VkFRVVVneWpxRlpvaUQzZ1VtcFRqVHp6RHozLytDdzRjT0lRMUtmMytrTElzVVVxaHRVWXBRUnMxNnVRMldyc0lXWmJkb01TQmE5Lzd5WXVLU2F1bXk4TkxmSHJxQkY0N3hBcjljb05PTHlIcEtMUlZXTlVsb1llaGk1WU1xek15bTVFYUc4VjZDT1NESVoyMFM1cDBlUC85RDlrcytpalM3MjMvdmx1YTJLZUs0alRvclFQYW1BQUVJT2pZUEFKZHgzTEhFZDFiRnFQeEJDN0pLbWZPbjJFWWh1aXVwbFE1dVM5UW9qSE9ZSUpGZVEyaEViRlI1aXVsNkhhN2xONVJsaFdkN2d4b3hhWFZ5Nnl4Y2JQM3JxWGxsdUFXL3hab2FXbTVWZGthRFp0c0NqRGRLTURGYUpXYW5HZjg1ZE5MNXpEMHFIekEwdVcxNTkvZ3RWZC96cDZsWmFySzArLzNLWVk1V21zNm5RN0dtTmlXT0phTWo0U3NVb29RQXQxdWQ4TE44N3RsVXFwUGo0RFVucU52dmZjV3A4OStBYWFDMUZPcElVTy9nVW9WbFJPMDZwS2xjeVMyZzFVV0VjRUhSK1Z5THEydXNMaHJubDR2NDdQUFB1TVBiNzFOUUdQb0Vvdkpidit2OEVhTWpzVHNaQWV0a2FBZFMxZURRZEhrRk4vYTlJZWJTSjEyOFBuNXo3bTRjUUZ2SFZYaUdMcCtuVWFrMFNGMjhwck11UllST3AwT29oV2IvVDVEVjVKa2x2NXd5TG56NS9GdFBMYWxCV2lGYkV0THkzVXhMVnJERmh1aW5UcHJqVzhwZzZXSFZBbUNSZFBsK0dQUDh0d3pMN0YvLzJIVzF6ZlJ5bUJ0U3BabGRMdGRyTFdFRUtpcUF1ZmliV0VSUVVTK2R5RWJ0WmJlRmtDTWo1aHJtaVVaWjFlLzVKZi8vUGRjWER0UDBsT1Vlc2ltdTR4VEJjT2lJbmlEQkUzbEE4TnlTT0dHZUNxVWNYUjdtcG41aERQbnZ1Q2YvdVcvc01FR21vUUNWOGUwZjZDSUhqMG1vN0NxOWhyUUk1dXptODNVZGt6bThpcndDSW0xT0R4bnl0T2NPUDB4SzhVRlpNYVR6TWZPY3lvSXFzblBKNTdQb2Jia3luMUpoVU1zcU15eVVRMzQ2TE9QK1dUMTg3cjVRaXRtVzFyYUhObVdscFlieUE0NWpsT0ZibU9YQW91bFN5a2FSY1pMejd6R1N5Kzh6cjdkQnlqNkpVYWxzUldvaWtMR09RY2V2UGNZWTlCR28zQ0VpWWlzaU5EdGR1dmxxKzljenNibDF4bXlVL3NzQkVvL1JOQjhkT29EZXIrZTVaa25udU5IOXozTXpHeks2c29xTnB0QmxNWkxvUElsRUxDcHhpWUdySkFtbGxOblB1SWZmL09mK04zSHY4YmpzVXJoSlpEWUZPK0czL0VlZm5mVXBZdTE2QisvOG5WRXA0dGJRY1NPdVpKN2lRQmVCendlaCtIRWx4OHdPei9EMFVQSFdPcnR3dWNCSTZHK0tLa0lhSlRXaUNpOER1VGxrSFF1b2R2dHNoazIrZkxNR1Q3ODRnUnJyQ0xmMjMySGxwWmJtMWJJdHJTMDNIZ21MSzhhbEl4cllTQ1d5amcwSFJaNThwSGpQUGVucjNMNDBESHl6UUpmQldZN3MvVDdRNnlPb3NXWEhrSVVzVFpKVURvUW5OdVNJeHRDN0liMHZhTjJlQzZCTWhUTXByUDB5elhlZlB0WDVIbU9wK0x1ZzNleldXMHlQOXZCVXhKQ1FGU0ZxWHNwREZ4QmYyT1ZyeTZkNGJkdi9acVRuMy9Ja0Uyc1VoU3F4RW1CTVFuaWJ1ZUlYTmk1VUczS1RxdzV2RTBuTm8zQ2o5d1ZiallUclhwRmJ5dFcweFlHNVlBRWk2UGlmTGpBNzAvOG5xRWJjR1QzRVpidGN2MXBoNVpvdmRhY3owNTV2SEVNZE1YbWNKTXZMM3pCaDZjKzREem5xS2h1b1RGb2FibTV0RUsycGFYbFc3Tk5SazFiSnpVbUFWdEVySzZmUjUvWTU1NTZtWmRmZnBXbDNmdFlXOW1FWUVoVVNsRlVwRFlqU3pLMGFFcGl6L2xSZWtHWmsrN3dEV2FNK1M1MjlRclUwZGhHeEV3SldtTTB5Z2lPaWlGOS92alI3L25veEh2ODdMbVhlZXpocHhqSVpaRFk1dFFrUWplekZEN24vS1d6bkRuL0pmL3ltMy9rMUtXVEtCU09JY0VZU2wrQWhpSVUxMmRrZkN0d0ZRL2M2WG1rSHVleCtMMVZSUHhPTFpicnFWR0lpem15ODcxNU5nZER6aFpuS1U3bWJHeHNzUGlqZWZBZUpiR3dDOUVqY2VxVXg2YUdDeHNyZkhMMkU5Nzk5SStzc29yRFlaVWxsMkdiSjl2U1FpdGtXMjV6dE5iakhNbjZ0ZWJmVWRDTTdYVWF6MWlac0x5SjBZL0pxdmV0eXcraE1Tdi8rbTJaOUhuZEtYdHhpdy9zS01wMDlRVlBWK1RMMUhKQ0NGZTh3ZmcxWHZqZkhSTTdyMnRmVVBIUTVCTmFUTDNGR1gvKy9OL3c4SU5QczJmWFFTUW9WQkF5bXdHYWZGQ1FKWmF5Y05GMnJNNkRiWEpqWTlGWGliWXBHSVBVamdaWmxxSFIrTzlMNGUza2Uxb0xUT2NkRzI2ajNwNUFEaFF5NE4vLzh0L3g3My81SHpoMjhFZnNXejdBOHI1OUdPVzVmT2s4Wjg1OHdibnpwMWtyTHhOd1NCTjdzMUFxTjNZUnV3MVNaSzJ0aTlmOFdINU8vczBDMi9kalVweFBqNm1hTW5LOTZSNTB6YTJIblFsVnRIcnpBcGNIcTZpNkhmT0Y2aUpycHk5ejl2U1g3SjFkNXVEeVFaYVhsK24xZWpqbjJCejAyU3dHZkhMcUpKY0hsN2xRWGFDZ3dOVWV4VU1aWGltZTNkSnl4OUVLMlphV2x1dG1SeTBoME9sMEdBNXlOSmFGbVFVRy9SeEJrZExoK0JQUGMvekpaOW0zK3dnZE84TndPSVJLNFFXTVVTUW1tVEMrMzRtdDcwMksvb1RrQnJROHVCYkMxSFNDcHB1WWdpQ2hqdDJXVU10YTBIeDg1ajArT3ZOT2JONUFRT05IdmMzQW81VW42RkIzZEdMY1ZtdXFZOW10U25QUjBkaW02VHBOcEJHM2dxQ1UzdEtZUkNtTk5qcGVwTWxVenJXdzliRGY1SUJrRXlzZUZWM3RkQ3pxYmZjU00ySDlLTWMzY0k0THJHNnU4Y1htWjZTZlpHaXQ4U0hneEZIaU1OYlNkNXNNR2VKd2VEektTdXdLTnUzNzF0SnloOUlLMlphV2xodkx4QS9yY0ZnUXYyWU14UkFDQ1JyTDAwKyt3Sis5OWpmc1c3Z0xIYnJrZzRxeThCQVVTbUp0ZXBJa1l5RTBDcHpIbGhEUnBzalhUUkhxMVlxZ3RBS0JicWZMSVA4ZTkzZGFVTzRRcEJ1MzR4MzN6L0lVb0JTSnNYam5ScVZQVGE4dEplQjlmRWhUS1ZmbjBiTDFoc010VHlOZVIzYzVpT2tsZURDVEErWWgrQW5GT3BsMzJqeWFjWWlOM1c0dHJoUk5ocEhnOWJXbnNrYmpxT2pUanhkdHZwazlPalNVcmtKcUFldUpGelNqYTd1dFhUaGFXdTVZV2lIYjB0THkzU0JSYmN5azg3Z3lVQVhCTXN1cno3M084OCsreUw2bHc3ZysrTElnaEJDZENOSWszbloyZ3BoclZ5aU45Wll5VWNqT3pjMng4bjBKMlN2bGVlNncrWk9OR3FRV0p1allZVXBVN082VW1nNnBzU2hSREtvQkZrV3ZreUlxVUlTYzBnY29yN3lPVzRrMFRTbkxjbXNxUVkzR1lERllNbEtUeFJ6UklIanhsRktPYnAwSEZRamF4WDlQZHAyNDZTTHVheEtEcGdYdGxMRDFFaWlrMk9LSnE5Q1lXc2FLRHJoUXhkU2hTWmV2d05XeUdWcGE3amhhSWR2UzBuSWRYQ0VzVkl0WW96cTRTbkFZTEIyT1Avb2NQMzNtVlE0czM4WDZ5aVl6eVV3VXNJbkdXb3YzbnFJb2NMNEFhNk80R2EwbmRnRVQyYnJlUmlDRkVMRDEvUFB6ODNEaHU5enZHalYxUzNuaUZ2aE9yWkRyTFIyL1VPOUdDRkkzQnREZ05ia1BkVGJ4VEx3Tm5XdEtjaUREMURGYm96Vk9LbTRCUlhkRkpxT3ZBRW1TRUVLSXgwb3NDUm1HaE9BQnBBNjRhbnJNRUFpVUZQamc0eGloUVB2NkpLZ1hlTk9GL05UWTc1Z0tNekhQbEtqMU5KM3VUTFNQQzRGcW5FQ1BWcUMwQmkyb0VPbzJ2bFBMYW1tNXcybUZiRXRMeTNVeUpXWmxmUDliSzBzVkZBb2JmV0tmZjRQbFBZZkkrdzZqTzRob2RDMCtuWE14YjdJdTFHdUU3YlhRZU1ncUZZWEU3T3pzamQzRmI4aE9JbmI3VEVDQVR0ZVNxaTdWd0JPQ0JsTG1XR0EybStQUXdjTW9wY2p6bkpYTEs2d1BWNm1JMGNvaTlGSDRXOW9VZnpJS2E0ekJUZG1sN1U4T2NQZnlmUnk5OTE3Mjd0dUh0WmExOWN0OGNmb0x6bHc0elpkbnYyU1REUXBpZU4wSFFBVmt1dWpyWmpHWnU3c2pldUlpWjByUUtzQm9DREtPV05lcE1jM2ZoQThocGh2NGlmU0tlbm5hUUxqcFFyNmw1ZWJUQ3RtV2xwWnZ6ZmgzVkUrOUVCTVpxeERvcUM1UFB2b3N6ejd6SW9jUEhhVVlPRndWbU8wc1VHekdIRkZvY2ljRGlUSGJMTFMyUm1LdjVOSWdvd2h1cjllN2NUdDVOYVlMN3h1Uk1UWGJGVzNLQklxK3d6RkVrOUZsbHZzUC9RbVBQM3ljZXc0ZlE0bW1rL1d3MXBJWG02eHVySERxOUNuKzhJZmY4dm5HU1R3Vi9oWlBsRzBLdlNiVEMrYm41N2wzN3pIKzhzZi9tcDZmanlrRjNxRkZjMmpYWWU3YWR6Y0J6Ky9lZlpNekYwN3o2WmxQdUZoZFFLTUpQaGJBQlhHM1FFUzJaa0pncWkxSFh5RlhTMllkK1FETHFCVXZBa3JGdXhHQ0d6WHdqVFp2elFjRDRkWSs3QzB0M3h1dGtHMXBxZEZUUDRyWFVoQSsvWmx2czg1d1BiY0lyeW4wOTAyNTFxNUowNG1LNDBpc3FvdTZGQm5QUGYweXI3NzBDNVlXRHJKK3VRL2VrdWd1WlZtUnBta1VyVUVvWFlWUk1STHJuR000SE83UTNLQXAwMjZFczBXTFJoU280T010V2lDMVhjQVNHdThDVlg5V3BnWEJkME16S2xldHh4R1k3ODR4R09ZWU12YjFEdkxUNHkveHhNTlBzNUR0WnJoWmtDVTlSQVNYT3pKbU9iSnZrUU5MUjlnM2Y0Z1BUdjJSdjMvM1A0NXlTV1ZTME80WUtkUmIzb3B2WDhGdDRRcmJlODN6MXZqZ1k4YW5hRlFBUzhKOHRvdW4vK1RIUFBQd1Q4azJadW1aR1pSVnNSQk1QS3BVVkVOUDVUeXYvdmcxUHZqMGZYU2xjV2M4NjZ6aWlLa1l0OGV0OVlsQms0bXpZWFNDVE9RSktFWmZCajVVeE5RY2pXcmNITkFvWlFqaWtKSHZRZHNTb2FXbEZiSXR0emRCd0FkVTBHaFZtKzRIUVNsQlFrQTFvVHpWaFBSa3g1UTFZR1QvMDBTTmxJQlJhalNmVEwwUE93c0JCVnY2cGpmTEdobTcxajZ5VXZ0aU5ySnhjdmtqaTgySmU0Y3FybkRjR1V1Z212Q1JqWWJxNDlVbzlmVmVzdHYxVGlOR3QrYW1qcG1JSUttQVV0RVdTbW9ORmN0M2VnUlNGQ2svZis2dmVQeVJwem00ZEIvaURNSGxXSjFpeEZKVkZjNUVxNkVvNk9PNHVMSUFJTW5TMFpqNHVyTjhqTWZXT3ltS0VBeldwRlNWSXpXQ0VVZSswZWV1QS9lZzZlSUlRREgySUpVd2tiK3FiOWh0K1NzTjh4WGRrYVJ1Q0ZGbFdCTDJaZ2Y0NnpmK0RZZjMzVU1XdXN5WWVZYkZ4WkhqcnNYaUVmeFFJMkk1ZXVBeDdycnJHS3ZsR20rZStDK2t4cEQ3RGF5TkJXVE9NODZuYkNKOXRjZ2Z0M2YxaUFvWUU4OUYzOVJTVFFsRW5jUnp5VGY5RityeE04bEVRSEZ5RUNaek9EVklKVWlBQmJNTDhZcFhIdnd6amg4NVRyS2FRRkI0UUVXallhd2s4VUpFVW1icHN2SHBKZy92ZllSZFQrNWk5OHdTLzNEaVA5RW5rSFVzdzZLNitmWmoyOVo5SldFNW5VdGJULzBPeWI0VFR4dkxydEV5Wk92Rll5dGlXMXF1UGZUUzB2S0RaanE0YzcyUjFtdGE1eTMvSzdUVDEwUHpXaHl4YnRmUTFQUHNudCtOcFlQSDBHR1daeDk5bVdlZWVwRWpCNCtScVJsQ3FaQlNJeTVXNTFzOWJ1blpSS1dEdXNZSWRmMDVwUXplQ3hxRjFSb2RoQ3hObWUwdEFBbnhXdDF1dFc2YTJBLzFIWDhGWHUwUWF4U0ZLMG5JZU9yUjR4emFleGN6eVJ5OWRKNThJNmRqWWtjekxmRjhOQUltYUV3d0dKOWdRc2JyUC9zNUR4NytFU1pvT2lSWUZLRUVBaGdWenpGVlgveEV4eTVkVjhiSDZuZ3RPdDZpYm1yR0JLeUZOTldqTEE1eFVjUWljWm1tTHFMSG01aS9HUUN2SVRTUGVzY0QwUjVNb2o5QjVSMVBIVDdPZlhzZllDSHNZcDVkbUpDTUxpcTA2S2g5UldPOXdmcUVHVDJES1EyemVvN0Rldzl4ZU9GdVFGT1dKZGhiTlNRYmRualV5RFU4cHBZam93Y1QwMWJFdHJRMHRCSFpscGFXSFdpVXlQUnJiSGw5T1BTb0VLTjhnMzZGUTZGSU9QN0VNN3p4K3AremYvZGhKRmcyTndlVVJZVlcwUlJmYWNGcVN4V3VyMjJCMWhybkhGbVNJbmljSytra0tZdHo4N1Z1VmJmOEQvNWR1dy94MUJOUHNtZjNFc1dteDZBWTVuMW11ck9FcWh4ZDhjVG9kRUNMQWh4YUF2dDM3K1BvZ2J2NDdNdjNZeTh6SjFHK2E3QXBESWZOV2xSdDhhUW1zallOWFRXRFRhT1RRTC9hSkVoQUNvbFJVaUJSQ2VLa2J0aWc2RWdIWDhlNVZUQWtNR0Z3VzErVWlDZEl3Qk13UnJPd01FKytWcUxSUFBYNFUreWQyY093UHlUQmc1WDRjY1krdXdFSUtsNWltRVJUdWhLVEd2WWYzTSs5K1QxODhMdjM0cTEzZTdQRHNTMHRMYmNDclpCdGFibFR1YUlHdU1ydGRyVTl1alNUelZFVWdjb0xpb3pYbm51ZEY1NTluZVU5QjNCRm9Nd0hpSXVkdWhLYmpqeGZSYTQvejFIcjJBRXFwcEJvcXJMQ2RBeTlYZytMSGRtdDNxb1lEQS9lL3dDN0YzWWozbFBtRlVINlpEWWowU1p1djBBMHo1ZGFUZ3BnTVFHNllaYmpQM3FScno0N3ovcGdoYTgyVDVIVW9uVXdISktSRWJCb0RHQkhFV2hkSDJNbmdieUllYXl6N01MaFJnNEJGb3VUaW83S3NEYkJWWjVFRXJSU2xPSnE5MU0xa2FwQWJRem1hN0hycVh4RnNSWU5wZVpaSURFcGFab2lBK2hrSGZxdVAvcmtKS0xxeGhBQ3Jxb0lXU0R0WkJ3NHNNeHNPa05SRHFieUdscGFXdTVVV2lIYjBuSUhJMTlmWDM5VkVucjR3dFo1dWdsUFAvSXN6ejN6RXZ2M0gyYjk4aVp6M1VXc2pTMUhVNXVpeFZDV0pjR1ZLS1ZRMW56dE9xNktHYmM4RlJIRUI4UkRZaE5ta2xueWFnTXZNWGY0VmlzT1VrQlBkWG53MkFOVWd4TFJHcXNTeW43QjNyMjc2VzlzWWlacmdRUVVVWFFHd0lTVUM1OE5PYkQzWVg3MmxKRDFGUDE4aGU1Y2d1Mm1iQTc2ZFFKejdLd1dwODNpQWdwUDFsR3NyVjFDYTAzYVNUanoxV2wrL2J0ZmMyNzlIQUxjdStjZW5uenlTZmJ0M2MvbTJqckJDWjIwaTRqQzV4V0x2WG4waEhkcWJGN2c4YnJFYTArRkkwMVRCbXNEZG1WTHpOZ2VWaXk1TDhqelBHWjlYQ1dvS3VKQlJkL1pzaXlabjE5a2NYNlIxVXVyc1N0YVMwdkxIVThyWkZ0YTduZ21Xd1pOY0JYaDErUTFHaklxTEJyTFM4Kzh5a3N2dk02K3BZTVVnd3BMaW5pd3lrYnhGUUt1OG5qdk1UbzJRSEJ5SFZFMUZhTzZvbFh0Tnh2UTJpSnVDRmF6dExTWFMxK2RHKy9mRG9tRk45dUROVFVaZTNidHd4Y2VhdzJ6dlRuV0I1dFkwNkVjcnRMclpLQWNzV3JLUjV0UkdkL0k3OXBaYk9oeVpQOVJzcDZpQ0h2WXpGZHg0dG0vZDRteWNyV0F0Uk5hdnM0dnhwRmFJZEdHYnJmTDdNSWN4aVNjUFBrcGw5WlhVUWhMQzNzNXVPOHdkeDA2ek9iaUFGOEZaam85TklwUUJmSzFITlBrQmlBRUJWNDdncTd3MmtFU2owMXZZWWI5dXc2dy9rVWYwZEN4SFpReUVJcjY4TVE5aWpteW9PcGxHZ3hLS3p5ZXFxam83dXJSVGJ0a1NjYWdMTnJNZ3BhV2xsYkl0clRjMlRRT0JWc1Z3WTRhZG1LVzVnYTF4OUpsa1NjZlBjNEx6NzdPa2J2dUorK1hoTkl6MDUxbE1NaEpkTXloOVU1QVBNWVlFcE5FbHdWL2ZVTFNleC96Wkt1QU5vRXNTUm02SEkxaC81NWxUbjcxSHVNRzlWdmJ3MzdYaFY1Zmo0NWxWenJGWmgxQ0x0ZzBvNXNKeGJBaXNSMUExNDRYRGxGNjZqQUZ1bDNOY0hpT3NsemoweTgvSTV1RlNuSktYN0tnZHJPMnZvbGdhSklKOUlTUGdpS2dST1BMQ21NVm5JY3ZUNS9tMHFXTGVDb0NnWTNCQmlkUG5XUjE5UkxCQ1ZxcGFIRVdGRVlaVW0xUWRVSGFhS3RHVVZrSEJ2Szh4RXBDVWlRc3BMc0pWVUJWaXVBQ09yTW9xUnNjMUdGbkpXb1U1ZFdZdW4yeHhRU04xUWsrRDZnQ2pFcHJEOTAyeGFDbDVVNm1GYkl0TFhjMFd3dDFSaS90RU9tYWxuMktCRVhHczhkZjV0V1hYMlBQMGpMcmx3ZmdORmFuRkVVVmN6MXRpc1pRcVFvSkNtTU13Y2RieFNaTnJtdnJRM0FvMWVUSktwTEVrbGNhaldMM3JsM2ozYmtGVXdzQWpFNG9DOGZjM0J3cmw5Y29USVUxSFFiOWtwbnVQRlVaODFYalR2Z0ovNnZhOGNIa2JHeWU1OVNaRS95ZnYvdy9FSEl5VWpaWVJ3Q1ByZE5IVkMxa3BTNnFpbEZlUzRJaHdSQ2puaVZ1RktXMldENCsreDRmbjQwWEF4a2RNcFZRU0lGSFNFaW9LRWFXWHBNWEJuV0dLNEtnVUN5eXdOMTdqdktYTC80TkN1aG1YVlJpS0Z5QktFVlE5VG5ZdUZHTWhLeEdmTFJMTUNvbElXR3dQc1FUU0hWRzdsMGJsRzFwdWNOcGhXekxiYzJrOTJxUVVOOXVudlo4alkvbStYWnZWZG0yckczemJGdG16WVE0bW54L091OXYyemI2MVQ2cUFBQWdBRWxFUVZUSjFzOU1mMzVieDZpSjEwZnoxYmZXRFNhNkhEV2V0YXBaMzdiaHVuYnFGZXR0dTZxeEtxMzlMVE5lZi9ZdmVPeVJaMWxlT293RUJTNWdkWUxXRmxjNGxGRzQwcU1rdHA3VlFLaWk2YXkxbG5DRi9SKzlQR212S1RFVGQrdVlnYldLSk10d1ZVR1Z4eVlMSzVkWE9ITG9DREYrbU9CRy9sS1JLS1p2dGdUU2JKWkQrdjBCUFp2VG5aM0ZKQjFXTDJ3d2szYkpzaDZEelNIYUtJelZLSzBJM3VORFFCbEJXY2pESnJzT3p2RDdFMS9oR05SNW96bU9uSmc4VUVBZGtmVUl1aGFZcVZKWWsrTGNZTlE3S215eGU0S1NTYk0xelpBaFE5R2o0cTdvOGxVU2lJME9kRzN1cFNZZERJQjVOY2VHYkhEaDRqbUtZc2p5cmdPc2ZybkdmSGVCekhUeG9jSUZoeWdGb2tkV2FzWVlmT1hKQndWYU5QT0xjM3o0OFFka3VvUEJFbnlkY3RGR1pGdGE3bWhhSWR2U2Noc1R4ZDFVV29CcTNydis1WGM2aWp3WEZEQS91MGgvc3lTSUltT1c0MCsreURQSG4yZnYwdDJrcHNld0hDSmVvekJvcFRIYTFyZjB2eHUyZVBIWHhWNGh4RnZUM2JUTC9Pd0NCanRSRkRRT05jdU5HSnpySnRiM2YvekpTZlljUHd3QjF2dHJMTzNkaDhzOXA4K2VZL2ZpSE03bnVPQmkxeXVqVWNiR2JsODRRdUw0OU93WGZINytGSTRTcWFXbHc2R2p3UlZHSzlBR0xSN25BNEpuS0FIdFNzeW9BY2Fra0IyUHJhK240eFladW42dThRU2NydDBQcUdKVGt0cWZGaHFQWGsybEs3ejNEQmx5L3ZJNTlzd3VZenFHSXBSUWxkR096U3EwTVlnRXFxb2d6d1BpUFhOemMzUzZYVXhYVVlTQ1MydXJySmFyUUl6NkUvTHY0MEMxdExUY3dyUkN0cVhsTmthcHhoK1VpUTVmNDZoczhGZjc5TmZUaUZpTnBkZ01DQ21hbEtlZmVvRS9lKzFmc2J4NEZDUWo3NWRVcGNkZ01Dbyt0TEVFRnplZzl0YmY4aXh5L2RFMGtYajd1aEd5aVVBbjdiREw3cWFuZXBUU0IySktnL2R1OUpucEM0RHZteGoxSFBMV2U3L25pYWVPTXoremg2OHVyTkRMNXNqU0RqT0xzMXhjVzhFbU1lcXNqRUx3ZFVjNGNIalN1UjZmdlBNRm41MC9TMk9JVlpEanNTaGxjQ0xScFdyVUlXNDgvbjdLc0QvQWFOa3dNWlZhMEFvb2lRMXhOUUd2aUw4Z1RkZmZFUEErNEtWSldJa0N1Y0RnZ1RVdTg5Rm5IN0o3Ym9ubDJZTllVU2huQ0I3S1VPS0xFclJnVTAyM2w2SzFadlhTWmJyelBZTHhuRHI5S1NjLy9ZaWlGdXpYMWRxNXBhWGxCME1yWkZ0YWJtTzAxcVBXdEkzRDZBMEpOc280Q3RkSmUxUWxWR2cwUFY3NTZjOTUvcm1YMmJ0MEJGOW9xbUZCOEo0a1NValRGR2dFOUhjdkZGMkl4VjdFRWlRSUFSR0YxcFp1Mm1IWC9HN1cxMWFpMjZsU2VIR2dRSUtnbExySmtWbVBwK0N6dFJPOC9mNmJQSHY4SlJiM3pMRlpybE9wZ2s3U1lYYlhERmxxUUh2eWFzQndtT09VeCtnRXNZNXpxMmY1NVBRSFhLNHVJRlNFMnI4Vm8xQldRK2xBRExIRkZxQ2l1NFBTMGJuTXVZbk5tZTUrMWdTd0o2YWpMcy9DK0FScEhyVkdqcTJpbzRqMVBqQUlnK2crQUx4Lyt0MFlaWDB3WmUvY1FkYk9yNUlrR2FZVEN3QlJEaEZQdnlweGVVVmxLbnFkRGhmV0x2TDJoMjl4Y3YxakFoNnRGSDIvZWROZEoxcGFXbTQrclpCdGFibU5VVXJGaDR6RFU5ODhQN2F1WkZmYlJZSEc0a3FGa0tEbzh2U2Z2TUR6ejd6QndiMzNzckU2WUw2YmdnbG9vMGpUMk95Z0xFdWNLMUJLWVpVZUxXbkxkb3V1SzlXdkR4R1BGNE1oZGd5VEVBZ3Vpcm1nQXN2THkzeTJkbUo2cDI2SnRNcEF3Q2lIbHdILzc5Ly9PM3E5RGs4LytqeFZYMUVOQjV4ZnU4akMzQ3hGNlNuTEFWVW9zTmFTZEZORVBNT3d5ai84K2oveTBXZS9JVkFpcWo2U0dyS3VNTXhMZEFZaUFSWHE4NEpvblNaY29aL0FkRkhjNVBQSlhoaU51RzN5RUpwV3RhR0o3QWJRb0JQd1ZhalRGb1FWTHZDSFQ5L0VkaTNIRHZSWlhqeUVWb29xREJsV0Exd29NRWFCMWdUcjZjMzNPRHM0eS91bjN1UGt5Z2x5Y2dLTzBoYUlyOXBlclMwdExhMlFiV201bmZIZXh5NVpSR3VrYi82anZuTTUvMGgrS2t1UTZGRHcwcCsrenNzdi9BVjdsNDZRRHhWRzlmQ2x4QnZhU28yMnBiSEVzdFlpN3VxNURWbzA0VG9FYll5cWVrUk0zSDhNRXFKWGJSRGgwS0c3VUIvRitPQ29HRTdyV3lTU0Y4aGx5R0p2am8zQkJmNzJQLzhIeE1QaGZVYzV1T2N3M2Q0OHcyR2ZJQjVKS21heWpONXNsOUtWbkR6MUtSK2Nlb2Zmdi8wN0Nva0ZWOFpDY0ZHdzVqa3hjbHJGYVhPVWpRRUpzWWd2TUg1dnhMUmp4UTVGajZQWEJIU28vK25HbG14QWJIVWJpT2tISm9wcnBZVWl6emxUZk1GdlBoTE9YenpIaTArK1NpZWRRWmxBbFZXZ0JaMGFFTUdWams4dm5PU1A3Ny9MaDJmZVo1TStqb0loUXlCQVNxdzRhNFZzUzhzZFRTdGtXMXB1WTRxaXdPRzJ2TmJreDE0elNxSzYyUUVubnE2YTQ4bkhudVA1NTE3bXlPSDdHUTVBS21HbU84TndiWTFFSzdTQnFvck9BTVlZakxIajNNb3RxOUkzS1BjaFlveEJSUERlbzRqcEF0UmVCVnByRHUwL0VGdXRRdDAwSWFaamVNSk5ML2hxSXFpVjNpQUFYMjE4enYvOXQvOFhEeDU5akQrNS94RU83anRNdDVPU2RRd293N0RZNU1MWk01dytlNFozM25tUDk3OTZseElOekdBUVZQQWcwUTdMYW92M1FtSjdPQmR3alY5dmlLMXV3V0VBd1l3ay9jZ3RROVdoMVMyaXR2SGlaWlNUclFIcnh1SHR4bjRyRURCb2dnazRGVWFwQjRWNGxJWWlCRTczUDJPOXY4N0ZpNWU1YS9rZUR0Mjl6Tnl1V1hRS3c5VUJGODZkNTl5NWM2eXNySEJtL1F3VkpTVVZUcnVvbmkyUUFOVjNkbmhhV2xwdUUxb2gyL0lEWWtzZCs1Vm5VNkhPRy95YStXNFFlbW9WSTJzdUZWQzFaUmlpNi91MVFCaFhrbThSRmdSRWdTZ1BDRUVYVkdXZitHdnVrRm8yYXFWcmE2N0p0ZTRnVk5YRTZ4TlIwYVpybHlKRDArWFpwMS9udFpmK2lqMUxoMWhmRzRJM0dKTlNGRU5Nb2trU2k5V2FvcXBRZGNNRDd6MWxXWTV5WnJkdVIweXdWTUtPNlFYVDQzVWxOS0NOeGpsSEVFY1FnMUVhcFN4YUp4aVRzVEMzZ0NWQm9aRlFSYzk5VE95V0piZEdqc0ZHSCtabk9nejdCUmZkVjJ4OHRNbGJILzJPNVYzN1dkcTF5UHpDTEJBNGUrNE1aODk5eGRBUHFhSVVKNDZsaVJGbUg3MWVaNUpaZHUvZXc2NjUzU1JKbC9XMVRTNWNXbUY5ZUltS0FuQ28yb3FySEpsdk5VZW0rZHZRRXhjM1l4T3VyYzRGOGJuQkVwTTdESmFFaEFSak5GaGh2VmlEQkRhTGpiaWxScEYxTzFSRndYcFlwUmhXbkQ1MUJudEs0U2dKQkJKanFIeVVyaEQ5YkxXMWVEZkVTUlVqc1Fvb2FLT3hMUzB0clpCdHVkMkpZbERWSGVoVmJjQWV4VmhBZ284RkxsSW44b2xFd1RpNnpSem4wMU0rcjZPQzdhYmFlMmZyMlBINzhZT2o2UllmV2RuNnZock41eEhLV3NoYWxCaWduc3I0VDFQclFCVktYQ2pwOVRLTTFYeDY2Z1F6QzRyLzhYLzZiK2xrbnFJb0NCSVRGZDNXQU8xb25IYkNaQnBmdXRGMkprWVRuTWJRUVRISEswLy9GVC81OGNzYzNQTUllVjVRRGdmTXpYUXcxckd4c1VISHpGQ0ZnUFBSdUVrQnpzVXdtVTRzSVlUUitodC8zVGpPdFlqVWFqeFd6YmpzTktiMTgway8zbmp2dk1RQVNtZW9vQWhpa0JDTnJRVE4wdncrZG5VV0tQSjFGQmF2QXE0bzZNd3VrbTl1MXNmbUpvbFpHVis3clBkem9rRE1xYWhRYUZZdm4wTmZIbS9mOUZhT3JvZnF4Z1o3a2owODk5U0xQSExmNDh4bTh4aHZDVUhvOURxc3JGL2szWk52OC82bjcvTDVoVS9wc3o2SzVLdDZ5V2JrQVJzZE1LSk1WblhhaWliTE1zbzhuMGpMMEtSMENRUTZ6UERZUFkvejhORkhXWnJaUXlmcDBPbDB1TFIra1RNcnAzbm54RnU4Zi9FOWNwOVREU3NrMFpTaHdCUFE5TGZ1NFpTL2J3N2dhbnN3cVYrWXpORnRhV201bzJtRmJNdHR6YmlFYVBKbi9ocUV5VGdzK3UzV1czLzg2OXl0cGhzalRKdFBxZWhiTkNGMjR5MWNxZmVzcWdwNmFjcWdMQ2lySEoxVStHTEF3dTR1Ly8zLzhOOVF1ZzFjR0NJVDZRV3FOcEs5bGx2bnZsYTlXa05pRFM0WEZBbHpkaS8zM2ZNRUx6My9DL1lzM29WVnN4aXhHQng1TWNCNFIySWdqclVaRmYrSUdoY1VYWjJkajFGVGlIUk5xRkQ3Tk1TT1ZmVmxBakVwMDZERW90SHMzM2VBQzUrZlJtUHd3WVBTVk1HUHhkRE5aTXQxVXFndHNYYThFdG1HcWwxYlo4MGM5eDk1aUIvLzZEZ1BIWG9ZVTJTRWRlaW1zNmdnRkNzRmk1MEZmdnJZVHpseStCQnZmdkJiM2pueEZwZXFGVEtyQ01TODVrcXFlcmxqTzdkR3RIcUJZVDV4anRXaXQ4THg0TDZIZU9LaEgzTnMrUmdMeVM1TW1hQUtoYzg5ZC9YdVpjL0IvU3gxOTdCODlnQWZubjJmVDFZL3Bxb0t0RldqaTU1dnhNMFBvcmUwdE54Q3RFSzJwZVdtb1NjaXI2b1dzS29XV1BIWE91Mm1YRnBiSWVzcWRzM05jSG45SEVHRy9DLy82Ly9NNnVBaWlpRmhXNDdzcElQQjF5ZzFzU0NCNEVDYkRJVkhrL0RZSTAveWx6Ly9yem04ZkpSOFU5aFlYVU1yUTVZa09POVFRZEhwZGltSE4zQTR2alZYdUJnUmhWYVdZOGZ1NSszUDN3UTBTaGtRaHkrcm15OWlyeE9OeHBKeTMxMFA4cFBILzVSakIrK25aK1lvQmlVYVE1cDAwTURHWUFPYkpNeDFaem04ZkFTbllwZTFmMzcvbHd6ZEpsNjVab0h4TkRURVptRE5WVnB6a2VMaUJaZXhkWGV2U25IZjN2dDQrdEZuZU9UK1IwaXFsSEsxd2dxa2FVcFpsbFJWUldlMnc4RURoOGwycFhSM1o2ejk5aElYaS9NWUREbjU3WDRZV2xwYWJqS3RrRzFwdWFuVXVicWkyZkxuV09mRmxsVkoyb0UwRThwcUEyMHEvdTIvL2U5WUhWNWdZYWJIV3YvU3RpVTJYYTYrRnRGMXZtc1g3MHZLUXVpcUdYN3kxSXU4OHZ5ZmNlVFFNWWJyRllQTkN1ODB2VjZQTE0yb2FwZUVtKzVqSlhyY3htejhJcE1LVlNuRGtjUDNvREZVVkJnMEhnM2VqM09QYjFNbHBWRE1zc0NQN24yRVl3ZnZ4K1hDNWMxVmVtYU9UdGJET1lmVkdtdFRESXJMSzJ1VWtuUFh2bnRRRHI0NC9UbWZiM3lDN2dsb1lWZ09DYUUyRUk1cDJKRXc4Ynh4UWtCWU1QTTg5K09mY2ZmU1BhakNzSFpwSFQ4STdPcGwvUC9zdlZtUUhkbDk1dmM3UzJiZXBWYWdzRFdBQmhwb29QZHVObGR4azBqdGtpWFpjc1NNdHhlUFgvenVDQ3ZHanZCb0pTbFJwRVROa0dPTng1NFlQNHpERVg2eXc5WjRyTkY0eHBJb2lrMnk5MFkzMEFBYU8xQjczYnBMTG1meHc4bTg5MWFoZ0c0QTNWMVY3UHdRRjFsMU0yL215Y3h6SzcvelA5Ly8rOHM0bEpqdGRqdEVNaUlqbzVFME9QWHdLVmJXbC9uYlYvNkd2dWtoeXdwaE5XclVxSEcvK09EcVI5YW9VZU5kVUVaa2ZZd25ZcVRNZFRoaGNiSWdOK3ZzMmRzbUxUb3NyRnpodDMvMzc3TTZ1SUhDMEIrc3NCVUxlKy9aK0lFOHQrSkpFaVlSTkhuaTFQUDg0cy85R3FkUFBzM05xd3M0QTYxR202bUpTU0tsd2ZtUVVPVUZhVDlsWi80SkdVOVNrdXlabmFNbEp3R0ZGQm9sRlVOVDFWME1pZWJFb1ZNY21YbVlxV1NXbG15VFJHMlNwQUZJQm9PVVFaWWpoYVlSdFdsRkUwUTBtSlRUSEo1OW1DZVBQbzMwa3F5WGs2N24rRXdFVlVQT0tCcGJrVmdMRGRHa1JadUVKdFBNOHZ5SlQzQnM5aGdOMzRhQnBLMG4yRE81aDBRbjJNS1I1emxKa3BEb0JJWEVGekNWVFBQNDBTZDRaTzlKWXBLUWVGZWpSbzBhRDRDZCtCU3FVZU9qQVMvRFBHNlZKVjU5SFlVRmtZTW9tTjNUNHViOE8rUm1qVy85eWUrejNMdEdva0Nwbk1MMWhockdZWVd2ZTRKQWtkQWZGRGcwWC83TUwvTHJ2L2Fmc0gvUFVmcWRqQ1JxZ3hYRVVZTW9paWlLZ3NGZ2dETU9pY0w3KzlNWHYrL3c0M24zRzZONzNrbVNwTTFEKzQ4ZzBPQUVRdXdNdDRJSGhVRHkvQlBQTTZHblNGY0xJdHVnSGJleG1TZlBjeHFOa0hCbHJTUFBEUTNacENtYTlGY3lJcFB3OGNjL1JaTkptclJwMG1KQ1RKTDRCc3BwaEpVMFZBTmhKY3BxWWhLVTFTUzBhREhCSHZaeGRQbzRjZDVBcGdwdElpYWlTUnFxaWNtRFk0VlNnYVJLS1drbUxhVFRGSDNMbnZaZWp1OTdCRTAwckFCV28wYU5HdmVMV2xwUW84WTJ3bGZGNmtzYkxpZDhzSVlTQllpQ2hlVWxCdGt5Zi95dDMyZTlOMDhTQ3diNUtxTlNTdHlSd0w1YkNkWXFXVWlROE55cGovRnpYL3BsVHA5NGd2bWJ5eFM5Z2dOelIxbGQ2U05kc0VIeTFpQzh4N2xRQkNGU2VvUEJ3SGJBSTZHcWFDWEtKRHdSWENpY2x3Z25rRHJpa2VPbmVmUG1XMlZpVTZVSjlidWF6d29FaCtlT01LR21jUU5JZlU0a0JOWjZKSklvaVJFK0ZLYkkweHh2SGM2REtRcWlLT0xRekdIKzNzLy9GNnlteTFoaGNNcHliZjRhcjU5N2pkVnNCWmQ2bm56b0tVNGRPMDByYmlOelJVdE1VUFFMcHBJWm5qajVGRGIxWUJXaUVHUlpnU3VMWWlpbDBGcVJaUVhkYnBlb3BZbUVacERtdE5wdERzNCtSRUtMUHYzdHZvdzFhdFRZNWFpSmJJMGEyNGFxUVAxSVVoQklyQTFFVmc0WVpNdjg2VC81RXhiWHJ3QVp5bm9xRi9nNGxtUjVhV3UxaWJRS0lWQktZYmIyNGhyQ0kvbnBULzg4UC8xVFA4dDBldzgzcmk3UlNpWnBUVFJZWEZpbGxVemdYZGgvbzlIQWU0V3hhU2hBSU1UOW1qNThRS2c4ZWNmZThocEZ4S0VEUjlERTVCU2xMclAwdTNYdnpTRmdweUliNUV6c2JSTkZNZDF1ZjJpVFpmSmdqK2FNcDlWcW9iVUppVmR4ZzJiY0pNOVRCcDJVby91T3NjZk9FcmNqbWxOTjNybDJrZlcxZFFaWFVpeVcyV1F2angxL25QMnpCekE5UzF0UFlQdWVRV2VBenlFaUJpVEdHYXkxYUtWb05oc1laeGtNdWt4UFR6Ty9NbzhzSkZFY1kyMUJJMnJRaWxwRG40a2FOV3JVZUJEVVJMYkdya2FWMkJRNFhEQU1HcjZIRHo2bXcwcEZ2dlFsM1p6VnY5R2Y5RTVSekEzcks4dlRkM2tZais4cnRHbnNQZStEMjZrVWVPOXd2cURWVkVqbE9QL09KZHFUa2ovNCt1K1FtelU4T1o0Y1p3T0o5UUt5WWhST0hQbTFqbzcxYmlRV0pKOS8vdk44K1NkL2huMzdEb0ZSNktpRkx5U21BRVdFOENKVUNoTWVZM0pHVWVCSzIvaGdUSGJ6OWNGdmZPL2Q5ajZVTnd3OVp1M1lmUko0NjVGUndwSERqNkJJU1BBTUNOV3Z2TjNkSkJaQUtJa1QwQjMwS2F4bGRtcUt3U0JqdmRkbGRuWVdXeGdjbGlpSzhONnozdXNSeHpGSkk4RVVCWVVvNkJjOXVtc08yWlBjdkhtVFRxZURMVVd5Q3dzTExDNHVFaEZUREF4ZDE2TVlHQkxaNE5CMGsvNXlnU0xJQndDMDF1Rm5GKzVEbG1Wb3JRTzVKc2NZRXdwWURCTUdhOVNvVWVQQlVCUFpHalcyRFI1alV0cnROdjFCUm00NnFGeFQySFdtWjJOKzg3ZitQcmxaSTNjOVBCbFZKTGFzd3ZxK1ZIcU5kY0xNekF6Q1Nvd1JPR09RUGthTG1FWkNJSWpDTTlTZkNqY3NTTHI5RWxreHBvK2xOSzkxb3lvRFh1QlJDQWVSYkhIc3dFbk8zWHFaeW0xaHUyVVJEd3FQNS9xdGF4eWVQVVpyb3NYeThpcHJ2Ulc4QzlQNkVNcnlEZ1lEcEJTQndEWmpwSUpCMFdPcHQ4Zy8vVCsvVGM0QVJiRFV5c2xKQ1o1cURzZjE3algrN0MvK0w2d0xSVWRhdE1rcE9EUjVpQzk5K3NzY25UbUZzc0d2RndtNXlja0tqMUtLaVlrcDByU1BjNDdjWkhocElSS2tSVW8zNjZMcVJLOGFOV3E4RDZpSmJJMGEyd1hoYUxVVDF0Ym5TUnFLMmFrV0s1MWJHTGZPTjc3NWU2d09icFNSMkVCaUszNG01Q2hTK2FCa2RxMnpRclBaSk9zVlNOSEcyVUFPUmFSRFhRRmJSbUdGd1lrUXBkdEovTThMTWFxVUZ0NHBJKzlsOHB4WGVPZUpkSU9ubm55V3M3ZGVLUW1Vd1ByZEhSUDBPTjY1Y1lFVFJ4OUZ4SFBrZm9DVWtxbUpDZkxVa3FZRG5ITzBKbHJFc1NZMWZRcFRFTWVLUWIvSGpiWExkRmpCVVNDRXdQcHdmN1hVQ0NGdzFwT1RzZXd5QUNJaWVxeGpzT1Q1Z0xYa2VRN0VmV0phZ0NLV0VWaUp5WU5PMWhoUG85RUFTeUN5c2FNeG1iRFdYK0hteW5VeSttTlZ3bXJVcUZIai9sQ25qTmFvc1cxd0ZLWkgwcEFrRGNpTGRZUksrWjNmL1crNXNYeUJ5Vlk4SXJGam4vSWVuQnZXVEhpZzQxKzZkSWx1cjRNeGhqaU9pYUlFSVJYV0JmdWtZQVVXU0t3ZnZxcnlwVHZqejRjWFl4cmp5aStxVFBoU0lnYXJrRExtc1VlZlFKWmo5ODNxNU4wSWgrUHRxMjl4ZWVFQ0E5OGptcFNJeUpIWmxNSU15UE1VNXd4eHJQSEswczA2NUdLQW5CU3NGVXU4ZVBZSFdBdzl1dlI5ajV3TVEwSG1VbktiWXpBMGRST0p4T093Mm1EaWdwUWVpL2t0Zm5UKysrUnhpbXRZYkdUb21TNEQwMGRxZ1JDQ05FMXh6aUdscExBNWhod1JlNVo3UzF4YWZJZUNIRmNUMlJvMWFqd2c2b2hzalJyYkJrZGgrc3dkbUdGNTVTYkxLemY0eGgvOUxtdnBMYUNnbHc2bzVBU2pFT3k0elBmQmJhUlcwMFVXRnVZNXNQZGhwQVNVd3BsU1krc0tsQlpqR3VPZ0NIWlZHVmhDNHYrMmtrRXZ5L2FOd3lHOHdpT1JRbU9kUlFyRm50bjl6Q1o3V2NxNnc5SzJ1eGtleTRLWjU2M3JyN1AveUJ6N1p3N2lVOE42WnhWcEkxcXRDU1N3MmwzR3VCd1hGK2pKaU5Wc2tUTlhYK09OVzY4aGxVZGFpVUF3TjdHUG93ZVBjbWp2UTh4TXpkSnNOb05HZG5tQnMxZk9zdHhmcEtBb0ZSMmVGOS82RWM4ZC94U1B6RDdLWkdPS2ZyK0g3VHVtRzRKbTNNUjZUYWZUb1RuYkpHNG1wTExML05vU1p5Ni93ZVhWZDhqSjhPOWE1TGxHalJvMTdvNmF5TmFvc1UxdzBqRTdQY0hOVzVmd1pIenJILzRCeTcwYkpFcGloU00zby9xdlVwWWUvaDdDbFBsNE5QVCt5YXhFY08zNkpRNGZPQjRpc0U1ampDT0pORnBySUVSZ0VTWWt6d0hlS3hDbEpIV25RWXhwWkljSU1nTXROYWNmUGMzZnZuNEZSN2ltYmhjSEJCMk9nb3pYTHJ3S1N2RDhFNS9ra1gwbm1kazdoU3BpY01GY0xTMEd0Q2FiSk5PVFhGdTh6QTllL3o2dnZQVXlCVG5lZWhxME9IN3dPRStlZUlvVEQ1MWtabUtXVnRRT3RsMzdjZ3B5cml4ZTRrZHYvWkEzTDcxQkorL2dJb09VbW4vejEzL0JGNTR6UFBmNGMwenRuY1JFRnUzVk1PRXVpcUxnbXFBa0s2c0x2SG41VFY0OSt6STkxbEZhNGN3dXZnRTFhdFRZRVZEQWIyMTNJMnJVdUQvRXpPMDV4ay8rNU0vam5FQ2dFU0xDT1pCQ0U5d0liTW00U3Uwa1l1eFZ3ZDhXVlh5dnY5K0p5dzIzOTNkNEgvRENzcloraTk1Z2xULzQrdSt5MWxrZzFvTFVybUZjaWhBZUwwcE43SVlHcUxIWGVDM1JlNE5Bb2tob042WjU1cG1QVTZRZUtTS0t3cFBFQ1Y2TTI0RlpTbytGVWxJZ3l6M2NmdTNHei9QZHJ1UG1OKzcxUHZqeVhvcFM3REJjbGtVbW5BK0ZJb1R5RkQ1RkpZYlgzM2dKUXcvWTFUYXlnQ2VLSTNwRm4xc0xOeW42R2RJcElwbmdEUXg2QTV3eHBDWWxKK1g2NGpXKys5SmY4OFBYWDJDNVdFQ2ppWWg0N3VESCtOeXpYK0RwSTgreUx6bEl1NWlDTlVrMm54UGxDVTNmNHVEc0lmWk83cVhmRzdDd05JODFGcHlnbncvb2Qzb0lKQTJka09nR1dJbk5MTlphNGppaW0zYTVjdk1kemx4Nmd6Y3ZuZUhtNEVhSTdFWWVhM2YzSGFoUm84YjJvNDdJMXRqVnVOZkhZRFVaTCsvQS9lNXBtbHc0cExjNEFkTExjcjlqRmJxQURRWHJSU2xzTFpPbUVDbTlkSW52L0EvZlpHSDlNbzZDeERrY0JuQTBHaEg5dE1EN1FHU0RKcmJhdDBCcHdZTTVTSGtjS1pldm5BZGhzQTRha1VLVlY5VmJqMURjTm5VdkFPODF3a3NvMjNxL0VINkxBT3BkdHIwVGhxdThSSlIyQk1JNzhEbFNDNlNBTk04NGZ2UTRzWXBKalFadjJYakg3M1FlbTdYQU80ZDhXUnNHTWdiRG1VdG51SHpwQ29mM1BNeXBoeDlqei9Rc3NZN29kRHRjbWIvQ21ZdG5XR0VSUzRGV0VkWWFqdWhqUFBud001dys5Q1NSalNqV0xKRlVURVJ0R28wV1NhdkJ0Y1VyUklYaStLR1RGQjh6cEduT205ZmVJQ2NuSWVIeTJpVnUvczFObm56b1NaNTY1R24yVE16UmpOcTBtZzNtT3l0Y3VQSTJyNTkvbFp2RmRmcDBzUmlFdkpkU3loOGt4cXJDYlJ6YkFxTzM1SmlNeDIzYzVNRWh5cDNkei9KQnNJVXNhQ2Zja1JvMTdoVTFrYTJ4NitGS0gxZ2h3c1BST1JmSW1IZklUWC84aFM5amlaVVA3TkJudHNTbVArNURUOUx4bjMxUTlra2ZDaGRJWElnR2V3bXVMRXpnUjE4dHBRU2VuS0xJU1JvU3JUMVhybDVrZWxiejFXLytCcGxaQlFaNERKa0xqZlFlK29OaWRJNURLV0hWMXJ3a3NROUNxaHhRY0dQeEhaYVc1MmxIQjBqaUpvVXNHUFJ5MnEyRXdtVERxbU1laC9BQzc4cHo5WlVGbDl0NHJid2ZJNTFqVjlPWDBkdHl1MkhML2Rick42d0RobjVaMVhFRXVETFRYbmhRWG9JUGc0bHdmSWNVbm01dmxYaENNOUhRcENMaXFWUFA4UEtaZ2g3ZFVpeFJEUzQyWFVzZllzN2phV0YrZkdDeXpSQklzQkpWa3JHTVBobDlWcGJuZVgzNUI3ZHREWlh2c2NSWlIwVENxYU5QOE5peHAvRzVJcmVPOXVRRXZXNGZsL2FSV3RPM0tjMTliVlo3cXhScmxyMTdEdkNaVDN5ZWk5Y3VZK21TTWNCakdWRHdvK3ZmNStYclAwQWdFS1dHMmxLVTZYY1dqeHNtZHdrbnNmbDJYME5aemltVUVHTmt0bXlhOHBUR1pDUENXNlVVRHVkQ0hwUlFicDYrdU5mbEEyQmM0MTZaN0czMTFSMXVzT250bXZqVzJBbW9pV3lOandUR28zbmpmNGdEY2JxL2ZUcEJTV0xkMkRFcS9XcDQ4Qm1Ua3pRU2V2MlVMTzhqdFdTUTk1aWFUdmpOMy9tdnlZb1ZDcmVPSllSV0ErY1c3MUplOXYwa0FCWkh6cVZMNTNuNjlBR0tva0FwaGJBdVpKd0RlSWtUTmtSUGtlVTFLMjI2NEw0ZnFQZVNxaWI4dTkwbVdZNDJ5bVdaa3VhY29SRkhTT2tvVEk3VWtsTW5uK1RGTXkramFBTHA3YTJvQmo5YnQrUTlidmRoWVVTd0xCYUgyWkpjU1FML2wraVNaQVlTZC9Ud2NScFJHMjg4dHJCa1BzYzVoNDVqaEpJVXRrQjRqNDRpcE5RNFk1bElwamc0OVJCWE81Zm9rNDMxWFU5V0ZoNnB5aVp2THRRaHhraWhSSmJFYVRzSnJkaDRHMGNoMkdCSlREV1lFV1ZGdUhMUVZtNWJxWmJ1RjM3NDMzMHVONnVrN3ZIZ2xYc0hCR0l1eStXV0dOUEZWOS9kSGZFVnFQR1JSMDFrYTlTNFgzZ0pRcGQveUFWZTNCNmxiTFlickt3dEVpY3dzN2ZOV21jZTYvcjg0VGUreWxMM0ZvNCtubzM2Z0E5enlqVUlDVHl2di80Nnp6M3hSZktpajVhVElNTzB0ZHp3a053MHhYNmJXOERPUWhWRmo2SVlMeXpPNUVpdGVmelVrMHpwV1ZiTUNvSjBSQ1kyQzU4RmVPL1lxUzZGSVlKbXl0YjVrWlhWRmhFN1Y1SVdoeHZHbUJXS0F3ZjJJYjBrTDNLVTBMZ0NsSXRwcTFaSS92T0E4TFJVRzJjdGVaN1NiazR3dDJjZnR6clhnaTBYZHRpQ1lkdXFQcnpwbW82MThyYlBmTmdJSkM0MHpJNjNZK3o2MlRLcFVwVC9XMlRRanBkZFFsbTJ0YXlEZTBBaXZUTjdkbzBhOTRhNkg5ZW84U0R3S3J6UUcrUUVnY2dhOHFKSEZIdWl4SkVYNnlodCtMMnYvbmRjWDc1SUVtbTJkNHE2MHVONkxsdzhUK0Z6akNrUTBwVWk0bkhKeFc1VTAwbVVDc2wvM2d1RTBIaW5tR3pOOFBoano1U3BhMVZzNlQ3dXc3WmZnbERtTmFUaEJlbkhIYWVGS1lrOUxteXJCRUo0VkNUSlRJYjNua2JVSUJZeHNZK0lmWUliZUNJWG8wMUU1RFRTU2x6aGlIVkVNMDRZa0FhcGhmQjQ2ZDV6ZE5BUDI3cjlBNkhRWkhmWFp0dVN3Qm9rSGhYc0xrSlFHeXRHdldjN1huRC9BZDBhTlg1Y1VFZGthOVM0YjR6SkNQeDR6ZGd3dllvSVJIYnYzQ1RMS3pkWVc3L0pILzN4MTFqcVhrWGlHUlFEcXNkS05SWDdZU2ZBQkRMbldPNHRzYkt5eE56a0JNRnFDNlNTRysycHZDaTFzVldyTjVIZGJjRzRablY4WEI0SXFsU2FQTXRBZUxST01EWm52VFBnazgvL0JIL3orbmUzSmpDM1dWSTR0amZ1ZGdjSWdDMnkvZTVtSXdHQXcwcUR3NUs1Z3Jad1JGR0VsQkx2UERpQnRtRjE0MUlBQUNBQVNVUkJWQkhLYUdJZFU3Z2NnVVZyaFJMaGtaSGJQRkJpNGZEYTM3a2JqRVczNzdodTIrQ3FZc1YzM2tTRTc3aW5ISFFLR0paQ0x1MlVkNFNEMlAwa2l3SGExOUdzR3JzZmRSK3VVZU8rSWNjaXNtTnVCY0tDeUVFVXpNdzJ1VFYvaWR5czhjZmYraG9MbmNzMHRFREpITWp4aE1wSFVzb2htZjN3ejBKaXlEaDcvZ3dPVXlib2pMc1JTRGFjSDNEZlVjejNFY0p2ZkxteWNJTVQxWE02dE5rTGhTdktpS3hYcEQzRHNjTW5PYjczVVdTcCthMTB6dTlIQXMySENySEZDNnJ3NitpMWFWdnZEYm5QV09yTUl4S1BUQVM1VFNsc2pyV2h4R3lzazVEYzUzMlFtVWlKaWlUZC9qb3IzUlVzQml1S2pmdm1Mc2ZmcXUzYmpBMGt0anFIOGZaNkFlaFNTYXZDckl1TndFWGd5bGtZOFQ2OHVJOWxOUXZreDM2KzUyVk5BV3JzZnRRUjJSbzFIZ0JPYUtycVVwN2dXZXN4SUFvUUJUY1dGa256RmY3NFc3OVBwM3VMT0lKK3NVSklxYWl5L2JlT3h0NDk0ZXY5Z2NjRm4xWHZlZVdWRi9uTXg3NklrQ1pvR2YzWWxLc3ZLeklNeWJwalkxR0diWVFvbzdGRCtVUDQzUU41bnROb05FUFZLUk95NlNlYjAvaGM4S25uUDgzWmYvMXlLUytRdUxHYXYzNERNYXZPVlpSdmpSS3N0ajJvT0U2K3h1ZU9OemRNakRHMDhyd3lsL0hhK1ZjNE1IT0kyZVlzTG9kSXgzZ2Ixb2xJNEwxRktCSGNJU1JreFlDcmkxZTR1bmk1VFBUenR4L1BqeCtxVlBENk1VZUFIYVJTR1Y2eXpXMXlsQVVsUWxHSlVOcFk0bkJZNzdCbXZPOXZMeU8vMzZOTExKS0M3UjZRMXFqeG9LaUpiSTBhOTRzeWMzLzBLQW02V0xBbGtSM1FHeXp5VC8vSGI3T3dkaG5Ja05aUWxaMXR0eE82dld5RGJkVTRwSlNsVCtnSDFQeXl4U2lQTjQ2TFY4NWhSUTdLWUVXdzJsSlNJbnlWMjd5SmNRaTN2ZFBEWW5nR3c5KzlkQWczSWhsRlVUQXpNOE5nTU1BVkRobEZ6RTVQYy8zNlZaNSs0bG5FdjlaRGl5MVpwcW03SFJBcGZNKzRqWURKTXI5ZURGZDd3RHZ3d3VIRnFEOTVMSytjZTRXbkgzK1dSaXRCYW9YV0d1c0xVdGRIQ29YVVFPeXd4bUNFcFdmV3VicjREcXQyQlNlTDI4bXpIemtUaUxIR2VTVFdtNDFrZHB0SEFWWHZHUTVheHR2a1FDUExvaEVhWGRKWmp5cE54SFRsVlRKMDhyalgyZjF4RFAydDcyRlpmZTUraDVPV0FvUFpTcHhTbzhhdVFrMWthK3hxU0NreHhxQlZneUkzU0dGUlNsUGtCVkdrTmdhS2ZIalNlajhpWU9LMjlYZldxZDYyM251VURJK1J3aFJZbHpJNUZhT2lpUE1YenRHYUVIemptMThoTjJ0SUNodzVqaUw0M1FLOVhuYmJ2c2Z4UVpMWTRYRUJuVVRrSm1kQWozTVh6dkRVWTIzaXVJVnc0SXpic2hDQnFLS1g3K0pjTUg1ZTN2dWhrOEQ0OGUrNmZsamNZSXZyTHp4Q2hseDhnUjlHdHAyd3cyMlNKS0hUNmFCVmpCTVdIS3l2OVpsc3oyQmtqeTg4KzBXKys4cWZZOHJFTnc5RUVlU0d1NUt0VW9ITHRrZXpQQkFMeUR3NFNVU0VKMFFTWXhJTVJZZ2k0dkRlWUwwSDZWQ3RDRkZJZW1tSGYvTzkvNGZQUFB0Wm5qMzFNWlFROVBJZVdUNWdvalhKMnZvNkRrTTBGZEgzNjd6ODlrdjh1NWYvTFlhQ3BCbFREQ0RTR2kwajhrRkJpSGxyRkhvNGJSOFRVNUNSQTFJTHJEYzQ1OS9GNituRHdYQlNZWk1zSWxFYVpRVUppcytlK2d4SDl4NGw3MlcwMjIyY2MzUUhYWnJOSnNLb1VBVEZsVlg0ZklqVFY0VStoZ1UvdGxpL0FmZjVlZVZEWHVibTc5azRLcWxJSldIeTN1TzlaeEFQV0ovdTgrY3YvRGtXU3hJblpIbUdVcUhFOFBnTVJZMGFPeGsxa2ExUjQzNGhQTDMrR2pNek0zZ2hLTktVYnE5TFZxd3hPYTM1eWxmL0FWbXhpckU5SENsVkpCWW9pemRzWDlQSDBVOTdPRFNTZ2pmUHZjcXpUMzJjZnEvTFJEeFZickZGaUhKSFdtK054YXEya0Q0SUZ5UWdzalJla2w3ejFPTlA4L0taRitnVWkrWEVjVUZSUUp4QVh2QWV5T3cyQnhZOVlDQ0ptaWdiRWJrSTd6d1JEUm82SVRNRlJUbUF5c2tCZzVBZU04akJRaVNieksvZDRrZG5mc0FnNi9QSS9oTk1KVE1rVWN4QTltanNqeWp3WEw1MWtSKysrWDNPM1RoSG81bVFla2UvdjA2a0Uxd1dIR3hEd2R1WUJnMkM2dGhoQ0RLVlVBNVpnUUVYREcxUldtNXZpZHJ4NlBCWVJGWUN5Z29pTkxOTThWRDdBSWZiKzdIQzBvZ1RuRGNNbUtEZGFzRkFJcnk4OTBGd2RXaC85L1YzSXFqZWgwTFJha3l4c2RXMjNudThLZ2VEWTk2KzNudlc0eDREZXlYTS9EZzc5UHdkRFJSMzBCK3BHalh1Z3BySTFxaHgzM0EwMndrcm5WdTBKeEptOXJaWVdMeEtianI4MGJlK3lxM1ZTMEFHNUVBeGZPTDQ2cjhkTUwyS0FHc0xRa29MdlBUU0QvbVZYL3AxdkkxQVRCQzBwbklVUVJvUzJQRU1vdTNEc0FqRkJsUVA0bEVxai9RRXF5aGZyUlZJSnpsMS9IRk9ISDJVbHkrc29SRGtXUENPU0d2eWZIelNkU3MvMmUyUHhrNU9USk9uQlRZTG11c1dEUjQ3L2pnbkgzNlVmYk56T0FkcnZWVXVYcjNBVysrOHlWSytnRFVGU2RTQzJKTm5CWjE4aGQ3MUhvdUw4OHdmdjhteGg0NHoyWmhDZU1ISzZpcnp5d3U4ZmVVc3Q5THJHQW9LQ3J3STEwWVVrTkJBb1RrOGZZUmpCNDh6MlpwRXVoRFZ1M3I5S3JlV2I3TGtGZ0V3dmdoVDlON2RWaXhocDBEYTBLc2pJaDZlZVpoOXJiM002Qm1zeWtsOGpMY0ZEUi9Sc0EwY0NvUXNFK2o4YUxrWmQxZy9ORUc0dzNxUHZ5dVoxZU02K3ZIUGxqODc3NGFKcEZYVncyQ1pCbFo2OGpRZkV0eHFCcWphaDVBZnZFYS9SbzMzQXpXUnJWSGp2dUZRMnFJalQyRzZGTDJNUnN2enRkLytDamVYTGhJcFIyRkxFcnNWZHNvem9pTFV5ck5XTEhIeG5YTTg5ZWp6T0N4ZXlJMWswVk9TMlhGSGcrMGtzM2ViM3Q5OGdRTmprTU1vbUVDSW1PZWYrVFN2WG5pTlJ0UWtMekxpU05QdjUzZmNZK1U3dXQyM1R5QXAram5lUWt6QzZVT1A4OHpwNTNqczJKTzA0elphSmhSRndkSDlsc1A3am5KZzdnQ3ZuWHVGdHhmTzRvcFFNcmJWREJLU1BDdFl5VmQ0NGV6MytkSFpIdzMxclMxYXJOUERZNEpzUUNnS1g0QVF0Sk5KL0FEbTFCeW5IMzZNUjQrZjR2RCtJN1FiYllTVkZFWEJrOGVmNHR3NzUzajl3cXRjN2w3QzRZa1JPRzBwaW1MN0wrS21KRFV0ZzFwYW9ZbHA4TWloNDB4RWs4aE00VklWTnZJS21Rc0s0eEJTbDNLWXFrZEl2SzlxWkkxVXJYZGFMN3hFNFBDdTBoSElrRFJhSnBBNkc5NFA2OTF3R2RZSE9ZM3dsYXpHRFplVnB0MWFnZFpoQnNMYUF1ZENvRldwQ0lkbWFXV1p3b2EvVDVXVVFBaUJjMjZEeHJsR2paMk1tc2pXcUhHL0VJN0NaTXp1YVhGci9ncnJ2VVcrL1owL1pISHBLa29ZQ2p1Z2lzUld6bG9iWldjN1FHTlpRVGlzeTRDWWwxNzVFUjkvOWlmSXU0YmdueHBSRWRrcUlTbzg0Nm82VVRzSlliSy95a0lmUlpJQmZQREJyV0t5WHRKYnp6bDE0Z2xPUC9Ra2IxNS9oWWdtZWRFUFcyeGxhYlhENEd5WTBuLzB3R2srOTRrdmNQcklrMHpGVTZ6ZDZwS2JJUFNOa2daN20zTTBILzA0clZhTHdmY0czT2hlUVltWWJKQUNRVnRiVUpScTQ0S0VCQWVzc2hKa3VFUmtwRGp2MENpTWcySlFzSmM1bmovMUNaNS80dU5NTnFlZ0VLaWV4aFVlTTNBY1BYeU1wbTdSYXJVUWJ3ck9yYjZGd1JFUkIwSzhuU2p2cHhReVJJYzlLSFI1eXlXemFvYkREeDBub2szZTl3aWpjQ3BHUzBta05abTNlS1dEM2Rzd1kweVdzL0Z5K0R1SUxkY0xTbC9tTzZ3SFFjaGIzTHcrRUdGWitUb0xVUkpjc1lrSUM3d1NlQjNXNTc3QUk0aVRDQzgwVG10dUxTeUZDTzBZcEpSRCtVR05HcnNCTyswcFZLUEdMb0tqMFZRc0xGMUZ4NVp2ZitlYjNGaDZCMFNCa0FVVmlaVXl2RVkyc1JLb1BCeTM4U3M0ZWphQzlGaGY0SEc4K2VZYnJIVld0cDc2SGVwT2R3QUJ2ODB6cVlSd3Q3K0c3UTAvQys5Q1pOWksycTFaUHZYOFo1Qm8ybzBwUUNDbEJsMW01VzE1bjdiLy9DV1NDVDJGSnVIMHNkUE1UZXlqdjl4bmZiNEhtV0p1OGdCN20vdEphT0g3Z2drOXdjbkRqM0x5eUVrMFNaaDJKa0lnTWRneUt6OFVrZTNUSTZWSEsya2lnWXgwZUV4UkV0OHc5WDZja3dkTzhkRHNFV0tUa0M4WmlsV0R5alN4U1ZpN3NVNUx0WG5pMFNkNC9PUVR4Q1FJWkVnaTNPYkhUM0NHbGNRaVF2aXlXSmNOYXQ2WWhJY09QVXl6MGNZYXlBdUhGUnBQQkNwQnhSTkkzYURxRzJGNnZpeG5LNnJpR1NOdmdTM1grOUY2TmRSdGgvWFNqOTRYUXQxeEtVUklyM3UzWlhVOEtTVlNhSnh6cEdsS3gzVEtGb3p1eFhiNVdkZW9jYitvSTdJMWFqd0FiczFmdzdvK2YvS1B2czdxMmdLUmxCU3VDellqVGlSNTdvYjVFcU1BUjZoMEx4QjR0cDdDL3RDZ0FBdFNnYldoVmF2cE1tZk92TUZ6VDN4NnROMldCSFlIa0xraDBTeXY4d1pMc0kzdEU3NmFMUFhEV0xpU0VjN0F3dzgvd3BFOXg3bXg4ZzZnY1M0clJ4NWJHWXp1SEdRbVk0YTluRHArbWtON0hxSy9tTkdRTFl6M3VMNmpzN3BPTWhFanZFSVp5YjdwL1R4eTVBVG5McHhqTWI4RlVDWmplU0tSWUwwTmtkZnlQRHRaUlhSQUV5TlJROE9tUFhJdmp4OS9ndG5tSGx6ZlF5cHBpQ1l0M2FJWk56R1JZYVc3UWtaT3M5bmc2TUdqSEd3ZjVGTHZZbkJQMkFFSXhhVUZob3FTS2tBd0ZjOXc3TmdqNU5ZaWNvaEVreWhLeUszRVdBZEtZaEJJWTRtR2Z0QjNkZzY0MDNwWmRxY3dsaHoxUytIOVVDQmdONzFmbFY4Wnd0M2RzVURyb0kwVk51aGxWV0hvOS91czVVdFUvVmxKUmJGcDRQcGgrRmpYcVBGK29DYXlOWDVNc0ZYRVRHejZmUnlCUm9JWnkzRDMzRGxLV2tiMWhHUG9HU1JUSEQyKzg2ZGY1OXJDZWFCQVN4djJpUXRSUGNhSXJOdllUaWxoTzVPMkFaVFNXR3VnYkt1akFCVG5MNXpobVNjK2hoS0dJQzJvc0xFTXJQUzMrNjdLZTNqMnZlL2lDai91NlhSN0VwaUgwajgwSEZsNWpjK2dvU2I0M0dkK2t2LzFYMTVncWpIRGFycUl0M2FzQzdteDVMd1B1QkRDZTVReVZKdE50dHBNdENad2hjUGtsb24ySklOQlNuOHRwUkUxbVc1UE1iK1dzaksvd295ZTVPU3hSL21WbjlWa0xnM0VUUXBrSk9ubmZjNWZQczhiYjcxRzEzU1JLT1ptOXZMTU04OXc3UEJSOG01Qm5ob21HeE1vcCtrdTlYamk4Sk0wWEJNM3NFZ2phTWtHeW1uU2JrNWhjdzd1TzhpVnhVdjBPaW5OcE1YYzNCeFhlNWNwaHU2bFcvU0F1d1VFNytIQ3Y1ZUlid0ZvS2NCV2tlWVlBZXlKOS9EUTdCR2lRWVJEa01STllwbVFEZ1lVeGlJUmVPZUlFTU0yQ1ViRUw4Z0d5aVlQeWFEWThETUVJbDI5cDh2MWFsUHI5YWJQYlU0V1F3aWM5d1IxUVZndmZhbHRONDVZaEw5cFJSbDJMbVJCMTNaWTdpMEVjWkRVeUVoRFZnekpjdGl0MkhpNS9VaFZ0RG5sczBhTjdVUk5aR3ZzY2dUN20zSjJmS2hNYzRSa0JXY3RpTEZ5cTk2SHFUWXZRZGd5SW1vQUhlSjB2dFNibFYrTjRMdG9NVGJIK1p6SnFRWTZrbHk0Y0pabTIvRjdYL3V2eU0wcVVneHczbUNjUndpUDk1QU9SbG52bzJmUGFJbzdrTmh0WkxKZVlyT1FueTJseHBJaWxNUFpBVDk0NlMvNWhWLzRKWXlEeVRqQlpBYU1vTlZ1a1JlZU5FMXBOR0tNR3cwWWhtNUc0MCszOFNpUEQ5ZGxhQTFVeXZyRTJQb3ljMmIwa2ZMendtOTBTeHF1dCtQUnFJMUxHRDFvM1ZpNy9Jak4wb3dhM0xwNW5jTW5EcUpQUGN0ZmYvY1JicTFkUlJMamhjRXBCNzRZeWpDVUZ3aXY4Tzc5TWtBZHN3dmJUT0RHTThyS2lMZ1k2eThTUTRTa01CbmVPNW9UVFhxTEdTc3JLNWllWjdhOWh6aU82WFg2UkVUTVR1M0Y1VGxld01HNVEyaXRFV2xFbGhVMEp4S2lpWmdtRXl4Y1hpSmZ2MEpFeEpHWm96ejk4TFBNVGV5bFovdE1UaytSa0pCMU11SkRFUk9OTnAyVkRvTXNaNm81Ulp3azVMMENaenlOUnNMcTZpcFJGTkdjYk5IdHJ6SElzNUJYcUNTRkhaM0o4QnBVNTczNS9EZkRiL3JNa0V5T0RSVGZoY2hhSERTaGJ3WlFsajZJMGNRa2ZQckVwMGc2aXJqUUNLOFFoU1h6UFpRSXN4Y09pNUloYmkzSHJiTTJ1dzc0VWNmMTNwZU9WcVAxWml6b1gxbHFiZjY4ODJQN0dsdEtMNUZsOFEralBRYVBsZUNkUUh1SW5LQ2xHdGgrams0aW5CRDBHTEJPai9oNGl4OSs3MlZTQ2pKbnlESXp2SXpHaEorZDJicVAxK1MxeGs1RFRXUnI3R3JJb1U1eUxMSXo3bkc2UVI4NS9ybXd0SEx6K2pJaVd6NG9lNzBlTXpNVFVFalNyS0RiRzVBWDYweE1SWHpsYS84TldiR0NjZXM0UDI3VkpONWxXbTRIVFUrckNLekZXaCt5cEFubXFYMjd4cHR2dmNyblB2RnpyQyt2TWhIdkF5UnBtaEpGRWFyU0JucTNRYXE2VmZHRU82R3lIWHIvc1RXQnFlS29sZjJROUJLYjVjeE43NlczMGdNRVgvcjhsL2tYZi9iUFVVUVlISmhpdERzZnBubnhscXB5MXVaRW1mdHI2M2gvSFZ0MWwxMVhUWXFVSWtvUyt1bUE1WlVsSERBN040dHBPTXpBc0RxL1NtTWlSaWFhM0dRNGFWQ1JaTFhiWldscGliMlRoMGpURk4venNPUzRmdk1hM2Y0NkRvK2hZSkFOV0ZpNFJicWVrYTROU0pPVWhBYW1aMmdsVFFiOW9LTnR4azFjYnVoblBmQ1NLSXB3ZUZxdEpwM3VHaklma0NRUnJZa21Eazl1QzRTVVk4bVBXMFJseDVVZDQ2dDlOV3R5NSsvUlpoSWI1bC84Y0RrOGhpc0hFRUtTK0FZU3hhbkdveHlhUEVERGFLUlR3U2QyZUR2Q2pJd2NpOUJYTXhMRE1RZWwzZHQ3c0xiWVpKb1FFc2ZHMjEzdTUwN2ZxK29xT0NSV1dxckt1VU5uRGh1U0dxVURMeTFXR0d6aXVMbCtuVDQ1NW9PZVhhaFI0ME5BVFdScmZIVGhCZmhLY1JZeWZrZnA3dUVoMldvMVdGMWJvajBSTWJ1bnpjTFNWUXJUNVp0LzlQdmNYTDZLcHcrYmlqenVKbDJaa2dKclI1NmUxbG9VR28vbmh6OThnYzkrOG1jd3BrQTFCYzRKaWp3bmloUmF4WGRPdHRwRmNBN2F6UWFMblM2cXBYbjI2ZWY0cTc4OXp2bWxjMmlSVUhnekprZ1lnL0JJb1hEdlcyUzJSRVh1MzZVTFZXNU5QZHVubWZicFozMW1taGFMcDlOZmcwS1J4QWw3RHM1aWZVN3VjeUt0NkpxTVMxY3Y4c05YWHVDdHBiZEt3bW9SZUxUUXBINVFGbEJ3U0NGNCtjWkxuSnQvQytVbHhobWF0TVBwSTJuVDVGYy85YXNjMmZjd09vNURaVDJ0bVd4Tmd2V3NycThSeFJvZEs3eHdySFhYNmF5dWxiTWxsSVQwTGtUcXZYeU43ckNOMjBSeVF3RmlOMXlPYlFoZUVzc1liY09rL3VPbkg2UGRibU02eFIxanV2Y3lZUHN3SWZ6R1MyS2RRMHBCNFVQZnNIaFVwTGw4K1NwK0p3Mm9hOVI0QU5TdUJUVSsydkFhVU9WeWZGem5BSU9PUEZIc01iWkh0NzlFb3huS3psNWZ1a2dzeDlWaXV4Tyt0S3NTNDNQMzVYdm4zM21iQ3hmZVptcDJBaTh0dVUxUlVmQUgxVHJHV3IvcnVheEVrT2VHUk1WRUtnSWorT1ZmK1BlSWlNRTVKQm9sRTdTT1FGV0RuREl1NXorZytxcWJ3M1REQ0tUYzhINVFSemlXaW1YT1gzNmJuSnptVEpQMW9zTktmd21qRFgyN3psSnZpVndPaUtkaWVyYkw2MmRmNCt6U1d4Z3lCcXpUWjQwdUhWYjlJcWxZeCtvTTBiVG9TWUZYQlZrOG9FdUhBWDI2ckxIT0t1dXNzc3d5WjY2K3lWSnZFZC93cUVsTnJqTzZabzBlWFd4VTBDM1dhYzgyOGRweDhkSjUzbG00QklBaUdtcEFSSGtuTmxSaWV6ZEpRZldadXp6Q0txSVdmQmpjaHVWb0l3VmVvWnlrd0hCSUgrVFFnWWZJc214WThuZ1VpZDE2ZG1jNzRiaDlQQ205UStCd290VE5hb0dWRHEvQUNvY1JsbXVyMTI0ait6VnE3RmJVUkxiR1J4aWxEWmFQd1VkalR3UUh3b0lvS0V5WFBYdmJwUGthQzR1WCtjM2YvZzBXbDYrZ3NlUnVuZW94SjRUWWZiWTF3dUZNRGppVThNZ3lNRjFOdjJZTStQNExmOFBrVkF2bmN3b3pvTkdJeVUwQlVnYzV3aTcvRTFJcUJXZ21MVndCZWEvZzlJbkgrZmhqbjBBUUJqbk9lS3dSSVlIbVBYQ3QrMnZJMkd2c2Q0RU1Oa3JsdjgzWHV4RTNzQmkrLy9JTHZQVFdTL1I5bDlaY2c4YWVtRlQzV2ZkcmlFbVBuSktzcEF1ODl2YXJ2SDd0RlF3RmsxTVRPSjNoR3daaUE5cUZzWndBWnh4WlB3TUJwaWh3d3VHMXd6WXR1YzdJeElCQ0dsNjk4VExuYnA1bDFTN2pXb1pVOTVsUGI3RHVPelRtRXZTa3BPczZYTHgrZ2ZPWDM4WlNBSjRrMXFqeTdPQU9DcE83WEdDeDRTV0hMMThTVlY5Ty9kOTFpUU1ud2NyU0gxZnlzV2VmcHhFMTZLNTFpYUpvd3pFM0p6WHVOSVFjQWJmaFdnb0Z2aVN5Tm5JWVpWanRyZEJoRGNvclZhUEdia2N0TGFqeEVZWXNwUVVWeWd3Z1VTV0lXUm90d2Z6aVpYUlU4TzEvL0ExdUxGMUFDdytpQUJkSTRIZ0p5TjBrS3dqUHNCQlZyS1NDRUtKOGlRZ1A5MWZQdk1UODBqVWFZZ2FreDBzL0tuZHBTN09EWFF4WE9OcU5Kcm5QeVFZNXJaa0plbXRkZnZhbmZwNno1OTlpeFN3Q0h1ZHluUE1JVlNiN2xGM2xnNEFvU1d5Z3JKWDBaYVFKcmY1M1FPWUtESlpWdTh4Zi91QXY2YXl2ODh6cFo5a3p1UmZoRmNsVVJPNHlydDY4eUJ0dnY4YnJaMStoendCTHdhMU9KMmpFeDh3NmhKSm9vWERPWVl2eUJLdUVPaVV4bzRhUjJnRVN6NHZuZmtqUHIzUDZrY2ZZTjdPZnFLM3hHSHFxUThkMXVIRDJQSys5L1NyWDE2K0g4d01HK1dDb1dWV29NbG9xUTZUWnV4RkwzUnlkZms4WGNOUFBtMzhmWHpxSklrS2ptV1dXa3crZnhIUU56bHFTS0daUW1QZnNJckVkOENLOHBDL3Q1Rnk0ZnFLOFRWNHFEQlluSFU2REVZN3JOMjloQ0ZLREdqVitITERMSDBNMWFqd2dmUGtWcUd5MWdtZE5JS3FpWUdGeEVlUFcrWk4vK0hYVzFtOFNTVXZoZXVBdGNhVEpDamVhZ3R4RVluZVREMk1sOVpReU9BRllEQjVCSjF2aGIxNzRLNzcwMlYrazBVN285ZGRwTlNld2hkOTlFZWd0SUlRSXJOUjdFaFVUaTRoZTV0azNzNTh2ZmU2bitWZi8zNzhrcFVjQk9ISndIcUY5NEZqdlFjdDZ6KzBaOGNReUlsd1Z6Z2oyL1NIUkNDb2lPekI5NHJoQm5tY3NGZk44Ny9YdmNtWGhNa2YySDJHaU5Za3BDanJyNjF5L2RZWHJuZXNZY2lLdGNkNEgyeldnREpJT3o4WGhFV2cwa0tpRXpHVWhnbWtVTmpkbGRZL3dmY25KdWVWdXNIaDJudXNyVjNuMHhDbG1wK2NvMHB4dXQ4dmEyaHJYYjkzZ1p2Y0dsbEJwekZBTUU2NVVlWDdCeXpZNFlGaGtJTE4zSFNtRWRYTEQxZGg4TVRjdGI5dEZLRVViRVRQTkJNOC84VHlSaTBqN2ZkcEp1NXh4R0tGS3hxcjBzVnRaejMyWWNHSmpmTDVxbC9DZ3FtUXY0YkRla0hxRGs1N001MXhadUlMRlVKRFhWTGJHandWcUlsdmpvd3UvZVZvODZHSURvUzFBRElKUDdELytJNjdjT2d0a1JNb1RudndnbFlQaWRsdWNDbEpLclAyQWRKVHZGendvSFlvaEFHZ3R5YTJqOEFhSlFFdDQ4ZVVYK05JWHZrelNiREcvM0dGbWVnK2R0Ri82NUpxNzduNm5JNG9VZzhHQXBKa3cwWnBrdmJQR3ZuMzdlZWZxZVg3cTh6L0RpeSsreUVxNlJLZFlDaG5lUGpqUWV2Rit4Yk5HQkt3aXNXV05KMEo1aW1EWlA2SXNKdGpFQVdDeDJtR1Z4WXRRWGpZWEE4N2RPc3Y1VytlSWlNc0JpU05VN0xJWURKa1pnSFFrazAyeTdtQjRiRjMrODVRRVQ4VGtOa2NSaGM4N0R5Z1FFaFVyYkRyQVVDQ0V4UGlDdHhiT2NtN2hIS3Ewc2lwYlNFeGNIanRVamdzSlY2REtmMEVTSUhBbG9aVTRMQUxuNVVnQzhCNndRZnU2bWNSdXNES3IzcEpFYUZva3pFUXpQSG55S2ZwcmZjZ3RyY1lVYVpvaVJUVCtrUjJIY1NKZGxZOE9ObDZsUGxnSUNtL0lwY1ZLUytvTUN5eVdXN3RhSjF2anh3STFrYTJ4cTFGTjUzdEdTNnFmTnhGTEgweE1RN1RIQ2ZBT3FUWGVPNHd0Y0Q1amNpcEd4NElMRnkvUWJNTlh2L2FiOU5NbElBTnlDbHNNdGFScGFqYnVleE4yUElrdE1kN01QQnN2NVdwUXNlZkN6VE5jbjcvRXZoblA1TXdrUzhzTHRKTlpzaXhqZ3pDajlJRWR2eGJ2cHFBZEw0UHJ2UTlaMTVzTjM4ZjN6K2I5UDFoSVRBaUIxaHBqRE5aWVl0V2d0NXF5WjJvZjJYckIzLzBQLzFQK3AvLzVUMUhFWmM2M3hoUlptTTZWNzRPNklCaUxqbjRGRXBrZ25BcVZvNGdSS0dhaU9mYnUzNE1RbnNXbFc2d05Gc2pKUUhtc3pVR0N3K0FqalVuem9LalZudHlFeW5IQmNzeFVMQmtFWklQQkJvSVhZcXcyK0MvanlIMktIN3ZEV21xc3MzanJzTGtiN3F1Z3FxWVdwclNORDlHK2NENHl0TE5FRlVHVnBlSjNnaW5hcWsxem9ray82N0tRTHVLeGFBUk9XQXBmREtVVW82U3IwZDd1Zm0xQnhnS1hoMzRaTlRSRmFwQkNvcFRDRjRISTdtVVBQL0hjWjJqSkpvWWNxUVZLYUlRRTQ4cS9KMVIvVHp5VkViSDM0TGFvMWxWOUQyQ2p1OEZXL1hmejU4V205Y1BpSW42cnoxZHRLNzhuUTMvWkt0NXRnMkkyVWZUVE5TYW5aamp6b3pjcE1HUmwrZXdkeTlCcjFMZ0gxRVMyeGtjWHd0SHRyVEU3T3cyRklNMVN1cjB1K1ZxSGlTbkZWNzc2RCtnTkZpbE1GOGlwSXJHd2dYdnNhb1FIWVBoNW94d3hhQlk3NlRLQ2hILzNWMy9CZi9aMy9oNVpwMGV6dFRkRU1hTUU5MEZsN245SWNNSnZtcDZWU0tlQUdKQk1OV2I0cFovN0ZmNjNQLzlmYU9wcDFzMHlzWXpKWGM0REt5c0VZNGFmRERtYWNjRUNMU0hoME5ReFB2T3B6M1Bpa1VjcGlnSXZISEdpdVBqT09mNzZ4Yi9pM1B4YlFYR2dKQmhQbHZVUk1nek9Nak1ZTzlhWTdyUTZYbVhDSUVFSkdXUVQ2SEl3WVV2MXRHVlk4a0tGY2dOV0FGSUVlZldtNzRFWGdWbzViOHZkVzJTWmlCV2pzZVdINWlibk9IM3NNVDcvOUJjWmRISlVwRUJaM3JsMmtUTnZuK0hLMG1WeWI4dUk3Y2loNFU1Zk80a3NXOHFHMFU5RllvVW1GUFVZU29KVldmcWd3YkY5RDdPM3RSZWZPbnpoaWRCNEw4cEJsaXpQS1h3bmd2ZXgyekVFc0tTdVZMWHFSRmwwQklLamlCR2V3anRFSytabVo0RzFmSjBDaDZXZzhNVk9PWTBhTlI0SUN2aXQ3VzVFalJyM2g1aDlleDdoODUvL2FaU0ljTllqUklRUUFtYzlTbzJtSmtmUHRoQkdFbVZKMmpqUnJIZVhpQk9ZbUl4WTd5MlNGMnY4NFRkK2wyc0xiMk5jRDBkS1JXS0hBYlFmZ3lmQVdIQnU0K2tNQ1UrdzRacG90SGpuNmpzOC8rd25tWnFjUlRpTnlTRlNHcitKeld4Vm5PcHV2Mjh1S0hDbjdlL0VHY1VEUkdURGFUcTg4UGhoNkt3czlGRHVPOUthdWJtOUxONmM1OGJLWlJRU1czcXlHdk9BOGRoeUZDR2lra1I2aU5HSVVybjV5TndwZnVtbmY1V2orNC9SMUpNSXE0aEVURk0zbVo2YzVlaVJ3OXhjbXFjNzZPTUtEMTRna0NSUlFyUFJKQzhLbEJBSUtSQ2l5dVlhWDQ3SXJmTkJnQkRFQndZalRERFBGd1pYdm96TDhjSXlia01sdkNpTGtveDhGUVNsaXdlQ1NFUUlKTG9rczVxSUE2MERmT3lKai9IeHh6OUpralpScWFZVnQ1aVozTVBVeERUdDlpUllXT21zNG9iOVM3RFo5MVRnR2EvazVUY1QyYkpqeTBnZ3JjTGJrRmltMFFndlNXaHdzdjBvejU1NGhnTXorME9aM1NLMEdWdnEyNFhjTU5vVDVYR1ZCOFNkeTJIY3FkL2Uzdi92dnY1dS9kOExnUk1xekE3Z1M5dXRZTDlGMmFlZGdsVG1pQW5GVzlmZTV2TGFGYnIweU1uSCtueU5HcnNidTlzN3AwYU5CNEpEYVllT1BJWHAwdTB2a1RRYzMvempyM0IxL2h5Smhpb1NLOFJ0czhBL05xZzBtV0pvUnlhSEt6d081ek04S2QvNzIzOUxxeFdUWmoyaVdKQmwyZDEydStQaGhNTUxoNWNHUDZ3R0p3STVjeHBsSTRUUlJDN2hsMy8yVjJreWlTZG9TWjJ4dzBIQWc4SzdVWVJQeXhpSlpFYnY1Zm1uUDhuREI0L2pCcExCYXM1MFBNdDBQRXU2a3VON2NHenVCTC82cGYrQUE0MkhTR2lTMENBbUNXWWFBMGpRS0srUUxyeVVVeWdibGVjVmdVbElvc1lvMFVzQ1dvSVdxRVRUbUdpQ2dxZ1pJMVVwTVhBU25FUTRoZllOR1JaUE5BQUFJQUJKUkVGVUl0OGdva1hzRzBRK1J2bW9mT21TTU1JRWJXSVNJaExteEQ0Kys5VG4rTlJqUDhHQitDQ3lxNWlPWjVsZ2lzRlNpc28wcHc0L3lwTW5ubVN1TVlkQ0lhdHkwWnVFSkhmOEttN1N3bnJqdzhBV3hWUXlSVXlqVFBGS09IMzBGQWRtRDZDTmd0elRVQWtLUlpFVld5WXpEdnVKcUtieDcrdVdmMkNRdnRSYWw1RmpvYURBNGpWY3VYV0ZEdXRZZkRpUDk2c0QxNml4emFpbEJUVSt1aENld2d6WU05Zm01cTNMckhjWCtVZmYrVG9MUzVmUndwS1pQc1BFTGhrc3FzWWhoY2I2M1ozc05EU2pIOHVWSHk3SzZlZlU5QUROaTYrOHdKZS84TXRNUkFlUVh1QSt1QnF6SHhxc0NoUG8wamtRcWlRQlZTYThRQlNPU0NYTVRlL243L3p5ZjhTLytMTi9ocEthbmpNa09xRTdQbjEvUHhBRTVsRmU3OG9YOWVEY2ZoNC84VGo5bFpUcDVpeVJhR0J6aS9lV3VZbERHSnZTWDFwbmYvd1FoMXRITWV1V2htclF0MTB5K2pSY0lHVGhQQ3FNTTVjeXNhcndlS3NBajQ0MHVja3hOc2NXRHBzTndFdVVqSWhsUW1aeVlwS1FFT1k5TVFtVkU2d2QrcmRXR29sSzJXcHBNUUZsN1A1QWZKQTVkWUM0RTlQcjl0blQzRWNqYW1JbzZLVTlVSkMwbSt5ZDJNdWh1VU1zWGwzQTQ1RUlOb2hZM3FPK1V5bUpMUndLR2Y0VkNvRkRvWGxrejBtT0h6eE80aVBTWG9ZMmlsYTdUVGJJY0lWQkpVMmNmMkFWOUFlSzBUY3d5QjZxcmxUSkxMd1VPQWZkd1RwTGZqVWtMQXJIQm5GN2pScTdIRFdScmZFUmhxUFJsTXd2WEVGSGxtOS81NXRjWDd5SUZoWWhDeWdUdTZyQXpDZ2FLemU5ZHZiRDd1Nm9wdExGcHZkR3hyTGhZV2xZNlM3eXdnKyt4ODkrOGQvSHBnWE5WcHVpMk1WUjJUSWlDK0NFR2sxUCtVRE9sQWVwRXdiOURxN0krZVRIUHMyVld4ZjVmMy80ZnhNUllZelpxTTI4NStOejI1eFk0UXd4Q1ZQdFdhWmJNNlM1SS9ZSkp2VjBWcnA0TERNemt5UnhFMnNON2NZa3YvYkZYOGNKaC9VNW5kNGFLcElrRFUxdjBFVXBGV3lhUE9GZ3ZqcW94QWt3TGlNektTTHllT1c0Tm4rVk0yKzl3YzJGNjNqdk9YYjBFWjUrL0NsbUoyZXdBOGRFTklseW1uUTlKVkl4RGRYQWk2QTF0dElFTndmaHFFbzhDdy9DU0pRSlUvbE4yV1pTVDlKV2t6VDJORmkrdGNwS3ZvS0lvTjFzNDVUQjlnMHhEVTRjT2NsclYxOHJKUXVTeXZONG85WTM2Rmkzekw0di9iS1UwR2l2a1doeVZ5QlJIRzRkNGZrblA4WmtjeHJiS1NDMVJIRXpkSHZuUzBlT0RidlpzV1ZwaDgwU1FWNHdQcngwV0l3M1hMdDVuWXdjaThOSlArcDdqdmMwSUtoUll5ZWpKckkxUHRLWVg3Z3g5SWxkWFZzZ2xvcmNkY0ZteExHa01HNExUV3l3Um5JL1ZnK0FjVVkxUmhqS1ZkNkNvK0RWMTE3azZWT2ZZbTdta1JDbTNzVUlCQ3dRSUNWQ1VzK1FyUGlnamRSZVlESkRwQVJwYjhCUGZ2YUxYTGowSm4zVDRmcnF0UWR2aEdMb1lLYktTZ3NDU1NOcVVHUUZTalRKdWpsYU5EaTA3ekRDZVFicE90a2dKNG9ick4vc01KRk1vV05ON2xJbTJwUG9SQ0swWXlhZURvVXJSQlZsRnFWdnNrUzQ4SHVzSTZ3enlCZ0tjdHl5NEZKNmpZaFZ3REVuOW5GaTZpUnpNd2N3VWNHa25rUVpUVzR6a3FSSmFvcFEvbFFZckxTQnpFbzd2SzRhZ1VzZFNpc2lHNk15amUxNUJpN0ZSNHJaNWo1NmRCR1JSeVdTQVFQNlJROXZJZGJKVVBBQ1c4ZitBNDI5TTZ5MVFVWWdFcHdQeG1KVFRQUDR5U2ZZUDNzQWtYcUVnU1JxRUVsTlBrZ1JYdEpzTnNtTndldWQzY2Y5RmdSYmxCWnhFTTdmZWNPbEc1Y1lsdW10Q2s3czdGT3JVZU05b3lheU5YWTUvRkFQRmpEK2FDc3Jkd25LeUkybE1uSjNVb0xNc0w3RGQvNzdyM05sL2h4UUVNbktTOVlocFE3NnhURUkxQmluM2MyUjJBQmZUZzF2UEtleHllaVFFNGNzNndZc3JpNXg5dUtiekgzNktLbnRoZUtwZml4MFczMXVpeVBkSmw0a1BJU3JqOS8yUUw3dnM3b3pwQjlGMXQxUVJqRGVkOVNHdm1TTVpYWnFtb0hwa1hmN05OcFQvT2YvOFgvSlAvdm4vNFNJWlJ4Wm1aQzB5UjdxRGxrOUc1S1R5aTZKRHhwWkljTVV2OENqdEtDZkRtaUxGbElwWE83cHJ3OUNWanFDU0dqQU1UbmRabUY5bnFWYml6Z3NTVk16S1Bya2VVcWpsV0JNUGtaa1phbC9Gc0dkd2N0UWZ0Y1c2R2FFMTU2clZ5K3p0TDRVdkhKUlhMMTZsV3NQWGFPMzFtZDl1VXRMdFltc3hxU1dpWWtKMGlMSFNoOFN3cFRCaVpMTWlwRldzNkdheUV3aUNzRnNZeThIWmc0U0VaTjFCdENEV0VWWWIxaGZYYWRQajJnMklsSVIrU0FycjVjY0xvZTJBK1UxbGVQZmRiWWdhR1VHUDk2amtNVEVQSDdvY1U3c1A0SG9DV3h1VVVoYWpRYmVXdnFEQWMxbWswYVNNRmpQa0NvTWFDb3Q3SHVKeXQ2TGJ2YkJITEFjZ21DcEpoMUlGKzZyeDJNRldHSElSVVlxTW01eG8zUWlLVHRkMmRWcjFQaHhRRTFrYSt4dWVBdStDSkVtWDA0L2VvVjNBdThVZUltVUR1dHlDcFBTYkdsMEJKZXZuR2RxUnZHMWIvd0czZjQ4bmg3Z3lKMUhhNGx6a2tGNnUvNDFLUDAyazUvZGlUSEhKeGdXckN5SmJNVTdQVGd2Y0Y0VHF6YkxlWWYvL1MvK0Q1Nzl6Q2RKS0pnVWs3alVZNXlsMVdxaHRXWmxiUlZuTEhQNzk5SHRyZ09sTzRBUHR2ekJMOVBoSzNMaVN1WlJNY3h5dVlFMCtOdlhoOVp1OU9Hc2xsdVJpYzBaNE1wSnZCdnBnNzN6ZUcvS2xvWHFWVXFIcWZsWU4zQTV5SUZuSW1yeGl6L3hkL21MNy80cjN1Ni9UbE5Eei9TQytYK1NrT1hCbjFYRUF2Ly9zL2RtVDVOYzU1bmY3ejBubDZwdjcwWTNsZ1lhYUFCTmdBc1draEsxVXRKSVpNeklZOHNSaWhqZk9oemhtN254SCtBYlg5aWVtTEEwZHRpVzU5WVhFK0Z3S0J3T2UyWWNJMnZHSEk2b0lTV1JFRW1BQUFFQ2FEUjYzL3RicXlxWHMvamlaR1psMVZkZk45QUEyZmk2ejlOUm5WVjFjam01ZkpWUFB1ZDluN2YyKzRoWEdDZ1BsdldtVnFoVTQyeUJzNFpjY21wZjg4R0Y5L255UzcvQzBuQ0R5dGRvU2NpekhPVWNWVEhHK1JweXcyWjJnei85cTMvR2hWc1hTTkFoc1FkTFRrN0pwRHQwMDFqb0ZxbzVldFByT0l3eXp4NjRpZHZsLy96ci82TlpRam9pM3Y2dm1nZTdjR1pOUTVhbTNxWUt6WkFCSGs5Q3h0UHAwL3ptci80MlR6MTJrcnFxV2EyRVpiVkVOc3pRb3JHbFFUdWhLQ1pjdW5xbDE5ZDJXK0hLbVQ0WXRHek1Ua2xzbjl2V2tLa0VqQ1VqNVhUK1BDK2ZmSWtuOU9QVW94cnRCQkdvcWlyRS9TN25HRy9aTGZiUWFSaUs4RDV3UHQ5N0FwcGVpcjZuNHZlZWtCYWhuYmVaejBsdm5RdmF1NVBYbnIrNTY5L2hLZXN4eThNbGJHbnd0V0o1YVkzU2pObWRiT1BXUFhWZTh0b2IzNk5rRjRORnBkTFVmRWxJa2hUalNnN3piMWhFQkVRaUcvRkFZZjhQOG1ReVlYMWpHZXNLakswb3lvSnFiNWVWVmMxLzg0LytTMGFURzFSbW0zWTR2UzByZStmU3NnL0tENzg2VUlrRmdwQ0Y0TDBtMVVNcWEvRUl0WlI4NzRkL3lUZC8vZTh5dnJYSGtlRXhqREdNOTBha2VjYkswbkwzZVJhejVIOUtadmNyVTU5Mk52ZytXNk9PZkNROUJkWTM3MzAzTkc2TVFXeFkybHNCRWxhWDFuanhtWmZ4Q0Z2ZnZzazFjd2xOZ2taVGxSV2lGZmxLUmpFcVpqZnNBMTNVSGZscTFFYlhFcE5taU41N3JtNWY1c2Z2L0MxZmUybUZwY0VqU0czWUtUYlJEZ2E1UW9tdzQ3ZDU3YjIvNXZ6ZUIweVlrT3FVMm9ia1JKZlVYVEdFZytHYitONzJmT3pYMGRXQytGUGZtMTgzYVZRdGZYVXo1RmlSb1BGTk5iS1VtcXYxRmQ2OS9qT1NWY1VUeDU3QTM2N1pMWGFvZHl2SVBVZFBITVhsTmUrK2U1TVBMcjJIRFZHZGN3OWRRdENscGJ0bWxOS1FFY3JnMnE2amFBWFdHRkl5VHVnbitmeXBGM2g4NVhHeUtzTVVCcFhNeHJpM0lhUHpsRjk2QXdwM3VqVEYzN2w5NXRoNitDUXV6QUxrV1lJekZjb3JraVNqTW9aeFZlTlRqUnJBcGMzTGJOc3REQVZXaDcvbnNCUENJYzlUallqb0VIMWtJdzR4TW80ZmVZNnYvK1kzVVpMZ3JFSWsrSEE2R3pLV3MxeXp2WDBiblRqVzFnZU14cHRZTitHLysrUC9ta3MzemxLYkhieWZGanBvTFhmdVRHUWZGTXc3NVB2WnBoNkd3eVdxdW9aR1RieDArUkpmKy9MWHlPMkFwWHdGNXgxbFZhS1VKazFUSEI1anpkUXlxYzhFMnR1cGJ6UHA5cnZCM3UzelI5bXp1MysrKzNoeCsyRFRUdXM2WEN0NW5yTzBsak5jejdoNDhTS1ZxOGdrdytHdzNtT01vYk1obU1GVTgzUU5pZlRhaDFFRmdTUlhHR013T0xZMmQzbmsrS01NbDBQbEs2Y3NrbHV5RldGVWIzSDI1dnQ4KzhmZjR0YjRWckFGU3hPTU5VRU5WU3BVNFlJRFgrMzJwNWZCb3JsYTR0cjdyamQvUzM1blNHeG5KdXVENE80ZHJjZHNSUWdoU0xSbWRXMFY1eHpaY29KYnNvelZtTTNxRmo4NSt5WS9lT3R2dUdHdVk2aXcxSmpHeHQvaFFkb1FvZDRWcXkzT05rUG16ZmJGZ3JJaG5PQlI5U2hmZnVFcnZIRHk4d3owRUR1eFlWZGtaaTEzdVY0Ty9ueXZ5ODF2K2VQNHlBcVFwUnBUR0RMSlNKT0VzcW9vZllrc2ErcTg1a2RuZjh4VmU1V0NHb2ZCZXRjOEJPaW00TU8rQklDSWlFT0hTR1FqRGpIeVFHUi80NXNveVhDT1VCQUJ3VG1EMW9KU1lOMEVWSW14STlMTThZLys4WC9GeGV0blNNUTB4UTRhaGVranFiRVBFdnBFVnBoUlpGc3kwTjdvbXlGUER5alJqTXNSajY0ZjUvbW5Qb2Z5Q21NdE9rbkowcFN5cnFucm1pekw4TTR2MkE3VHVOclBPSkZWU2dXeWxXV2thWEFxS01zeUpORTR3Nk1uanJOeGRJTXI1NjZ3Wjhka3BDZ2xHR2NoNmNsei9RNUlvSkdleHN0VE5ZUkNRS2NlWjBPQmdva3RlUFBNMjJ4dWJ1SzFwMUlGbzNxYjg5ZlA4dDIvL1hmOCtSdC94bGE1aVpVS3BSU1NnRFVXeENKS2hmQURDSXh1NGRUTjlZc0ZwOHJQZnA0N2tHMk02bjRTRzE1dE9Ja1czVGs4Rkw1Z2IyZVh2V0lYbFlKZUVrYXl4OVhkUzd4LzlUM2VPUE02bHllWFNGUE54STB4MkJDSDNBYmR6aEJsQjlvMTExblRKeEZTbjVKWVRVYkdFWTd5eXZOZjV2UFBmSjRWdmNKa3Q4Ulhqa0dlOThqY0xBNERrUVZJUkdFclM2b3pFR0ZjVHRCTENXYm91Yng3bFRkdnZzVXVZMnBxREUxSWhCQks5UHJldzBsRXhDRkdEQzJJT056d1NaZUozUVhtU1VzTUxKTnlsNlBIVnJoNTZ4STcyOWY0bi8va2o3bDI0enlhQ3VNTDJoL3hsc1Qyc2VpN2h3MUtnelZRbTVMaFlJVkpVZUlhbjlYdmZQZmJ2UExNTDNGOE5TUEpVK3JLWWoxNDczckhyaDI2RmJwQ0MvMGJwOTgvblAxWmdtL1UxVFJOeVJ2aVU1WWxXbXVRbEdJODVxdGYraHJWcU9MLy9vdC9qcUZrcUZjUkVTYjFhRXE4Z0NhRHFsbHZ1NFhaNUxDeTl1Rlh1WFpZWHpKUUtXOWZmSjIzTHJ6UnhUQ25DSmtBMm1Cc0ZRNnRPS282SlA2Z2FTeXdtdlVmTk8zaklNbHYwWlRwZnJSaEJ6TWtkajdaeW9QVk5kWll4QXNleTdYcUtyZk9YdWVOc3o4aUoyUFNrQzJGcHFURVloblhEajlQcnVlN09GQWhJYk1LMnhFUG1jOFFLeVFrckxMR0Y1NzZFaTgrK1NKcjZRWm16K0FyaDhqaHYvV0pGM3pseUZXS0ZzWEVsTmpFb2xjRzdMbGQzcjk2bGgwbWpaYmRuTEltaGtmdEN3T0ppRGk4T1B4L3pSRVBNZnBlcnUyZHJpRk5Vb0ZvQmtQaHhzM3paQVBQUC8yamY4S2xHKzhqVkdqbHdKVm9IZTc4RDVjU2V4Y3Nrb1c4UTJrUFdLd3ZXVmxhNDlyV1JWNTcvUWY4NWkvOUhSNC8vamk3bzEyOEVkYldOaEFuN083dU1jaUdUSmxOeStJKzIrUzFqMWE1cXVzYXBSVFdXa1FrS0tDU01wQWxkbStNK09McFYwaVNqRC8vdDMvR1puMkxrQnFWNGwzZEtLNHNFcWIzaHlaM1FaK0FkeFJ1anpCd2xwRHFGRkdldmJwQXZNWGJhWFVtNzJjSnNjWE81aVFlUkVwN2lXajcxTmxGMDMzb3Bkc2R0THdHYTZZN3FwVmdYVWlxcTVpdzF5V2FPYkpCaG5jR2F6elpNS0dhTEFqazdLbmMzcmh1SDVVU0VwdUFwYW5ibGZLMVo3L0cwOGRQc1pFZnhVOGNZaFFyd3dIaU5VVlJrSHpHN2JYdUJQSGdLMHVXcERqdnFYMk5Id2lscnJpeWRaMXo0OHROUUlIRHE1N2pRL093cjdyakhoRnh1QkdKYk1RRGdIYVkyb0UwcXBUVUlJYmJtMWN4YnNRLy9xTS80dGJtSlJKVlk5d1k0MnJ5UEtXdTdZRWtOaExibm5Jb1VKWWp0QmFzcmJHdXdPUDVtOWUreTRuSG5tSnRZN1VaNG9WcG9HSzdraVpPdHBkMTdRK0lUZndzUW11TmlHQ01vYXBDQWxVZ3RZYTExU05zWDlwbTdkZ2F2L2JWcjFOWGxtOTk5MTl6Mjkwa0phWEdCY1d3VldNWERNMDdHd2JkVWI1TGVCY1ZEcGRvQWhuR1VrdXdoVVBiR1hWdFpwMmR5WDJqN043cEVNKzM5ZGQxMEJqNC9QUk82SlBsbGk4NnFGVW8rV3l0UnlkZ1BlUzVSaVJoVWxUZHNoMkpuUnNCRDZ0VlFYWHVQUVFvRnl6Rk1uS09jWXhUUjAveDRwT2ZaeTFkSjY5VGJPRVExenlFZE9samg1ZklRbkNGVUY1Um1CS25IV29wNGRya0poL2VQTThXMjFSTmRMSEhJa2tJeFFhUStUS0ZFUkdIR0pISVJqd0FhTzl5elFDYTJJYkllbFJTODAvL3gvK0JDOWZlQlVyU3hJQ3JHN0pybXhpNUtVUUVFZG4zL1lPUDN2NzJDRTNMUGROVXFHdkhjSkF6bVpSTWlsMkdlcDBiNVJYT25IK1hrNmVlWkdQMUtMNVNUS29SV01WZ2tNK05ZTGNzcXhkdThCa25zMlZaNHIwblNSS1VDb2xZU2ltU0pQeDBidC9jNXNTakp4bFhJL1p1VHZpbFY3NUdudWY4MisvOUd5NlBMNUlTRE50c2U4MzEzZjBkYUplUWtnS09URktNQzlXWHhDdHFYNk5WZ2hVVHJzZnV1bTNXMGJqTmlWS2QzN0hXQ2RhYXBsbmovRjN5NHZ1SHYwK00rNlIyQVludDIzQzFyZ0lMbDJuZks1QVVmQVhPaGRoaGxZSjE3WEcyNkd3NmY1WXE2dEkxZ3JQcXRpYk5RUlFVeHRkNGJiSEdnNFBVSnlTazVLU2NmdlEwdi9yeXJ6RzBTd3pJMFM3QnVCQzdYWm9DclRWWmxoMzZ2M090VXl5TzBsYXdKRENFRzl1M3VEeTYzS1RJbVpCZTZEMWFhNHl4WGNoN1JNU0RncGpzRlhHSWtiSysvQlMvL1Z1L1J6N1FESVladHpldlVadUNJMGVYdUhqNURILzB4Lzh0bTl0WHFlMElxSEJ1Z2s0YTJtc1gvNkkvUEVwc254WE5KWDNNS1hMdC9kNllLVEd5M3BFeTVJUExaM24yNldjNXVyR0JFb1dJWXBBTnFJb0tKYTFIckhUSkpTRUJxSTFOWHJpNW4wdXlWOTluRnUveGZ0YmJkdUY2bWpBQzUxeXc0bXBpZjYyMWlCTlNuYU1reFh0dzFwSWtDWThjZTRTVjFSVnNVYk8zdTRQRHRTbHVlTy9SR3J5RHBTUW5zUmtaQXdZc2tma2NUMElJY29WY2xqQzJEcjZrTFZQc2Q3TWRGMjdiUFNIY29JRzNkN21PZmJEUHlsVFdyVGROa3k1dU1zazF6bmlTUFBRbkZJU2ErdUJPUFhGcENLYWZtbFAwTDZkVy9EUzl6Mzc2a0pTa3plNVVZVkFsUlpIYUJJVWlKV2RWMWtsSTBTU3NzWUZHU0VuSlNER3VSdW5nVHBDU3Nzd3F2L3pVMTNqcDJaZFpVK3RvazZCcWhkU2duQ2JSR3FYYUxyaVo0OW0vUHFUMzNmUjY4ZnMrenh4Tzc1djk4alBmTFZxdWU4MHRMM1BMOTFYb21ldVhOclRBb1ZOaFRFV1ZHcmJWTG05ZmVvZnoxU1U4bm9LaUdhbnl1Tjd2WFp2ZitMRDgwa1U4MklpS2JNU2h4dEZIVnBnVVc0ekdqdUV3WjdpVXNIRmtpWFBuenZBbi84cy9ZWHYzT3BYWkJXb2dER21LZ05aZ0xZZEJGUHc1WXVyM09aMDIzeTBZQnUvUXFiV1dpakhyZytQOHEzLzl6M255eVNkWUd4d2xFZGdiNzVIcDdJRS90czc2NEhYcUhONkMxTUxTNmdvdlB2TWlLeXNyWksrbHZIWHVKMVFJaVdoMEx1d1ZPOEZKdHRJOG5wemdoYWUvd09uVHAxbmRPRUpsS3k1ZXU4enJQL2toNTdjL0pDZHJ2RlRyanErRzhJUGdSVHN0VVhCdlVBamUrYzRQTmlYRk9BUGVZNHJ3MEdJckMxYVJrRERNaHBqS1lMRWs2S21GRitBYkNoemlkVjNvNTd3amhHOERBMml1TVlVdExRcklKUTNrMkNzMGlweVVVOGVlNDNPbm51ZnhSNStnTGcwM0xsL253dy9QYzJOeWpURmpFcGRocTVxRWxDZnlFM3poNUpmNDNHTXZjSFR3Q0xuTndBcmFKYUg0aGJjNENWMVNjdmpUbkx4QXRwU0g0ZzByR2xteVhMaHhrVXU3bDZncEthbm9xaG5PL1QzM25KTWpJZzQ5b2lJYmNZaVJNc3cyK0lQLzZEOUdLY2RnS0t5czVuejNlOS9tZi8vVGY4YkZ5eDlRdVQwOEZTR3R1VTFZT3JqNHpzT0hlU2EvNE1BY1NQYUZVRkRWc3ozZUlwV1VyN3o2RlNhN0U3Q3dsQy9oYkovTDlCWGZvSW0xdnIyL0NFVjIvK2M1ZWVwamIwUFFrcUFsUkZ4Nlp6SFc0cHduelRLT3JLL3p6TWxuR0NSRGJsNitSVWtOQm80dUg2ZXFhNVpZNFI5ODR6L2hxMS84WlU0KzlpeTVHcktTSGVHeFIwNnd2clNPR3ptMlI3Y1FmRU16ZFZOaUlDUFF5clFqb0tIdDQ3MDBTZmN2bEJjUWxCTWNMcXhSYVpSb3ZBUGQvTXZWZ05wWk5Mb0ppZkRkK2dSQmR5cXQ3dnFtWi82cHJzZUtoTnpuVFZwY3hqSXJUWi9TWUpsMThsVis3ZVZmNWNUUnB6aTI4aWhIQmtmWnlOWTV2bnFjck1qWW5HeDJCU1pPWkNkNDVmU1grZUxUWCtUbzBqR1NXcU9NUmx1RmRtMEJDbzl2SldOcEwrdkZWOWFuWmI5MXQzWXZkMjYvWTY2ZGdNNHlkc285MUpwbVYrM3hvN00vNUlxOVN0MzgyLzhnMFZ2aHgvMmppb2o0akNJcXNoR0hHQVpVU1ZGdE1pbkhsRFZjdmI3RGQvL3EvK1BkczYrVEttbXlHNEk1dlloblgwaGNKTFIzeDRISHlKRVBORVd4eHpCZDVtOSs4Ty81OGl0ZjRkUmp6elBhcXRGYVlTU1VESjVOQUh1QWNxVWxTRjFKa3FDU0pZcDZURFVxa05LaEI1cGx2Y2J2L01vM2VPcXhwL25XdC84TmwwWVgyQnROV0dXZHYvZjEvNEFuanozTlduWVVWd3JsdGtOMHl0cVJkWjU5NGdYRUN4OWVmeDhOR0V5WFplN2E4QU1JU1dLZkFDc3M0M0NNR1dFeERlME1NUUI1a2pPcEpnMEJUUkFVWlYyU2tuYkJCZUVHTW8xN1huUldQUTVwREovMmgrRUdXaTROZ1hWNE5BbFByNTNpSzUvN0pVNGNmWnpOVzF0czNkNGlrWVJCTnVUNUU4Y1ltQ0hYYmw4SFBJOHVQY29Mejc3QXljZWZac2d5WnEvR1Y2SFgwbDE3TGJwNGpPYjhxZjFzOHBEQUFYdkZDRmxPR2JreDUyNmQ0MW9WaWtoNFplYWVUMVh2ZVhTL1Foc1JjWmdSaVd6RUlZWmpiVDNuNXUwTG5EcDFpdlBuUCtSLytwUC9ubk1YendLVzJvWEFQQ1hTV0JRUmY4RDNZWjdacTdtMitRU3QzbFFjWmJrSG9walVEb3ZsWC93Ly94Zi84RC83TDBnelRlVUtRSU1vbEJkODZ6cmFxRVJlSE5LVmF6Mk1jQmhqcWIyUUpJb3N5OUI2bWFSVVdERWthTWJqRVdqUDZST2ZZK1B2SCtIMW43ek85OTc1TGprWlgzem1aVkk3b0I3WG9Rd3dPVUtLTFJSRHZjb3pqejdINzczOERZd3FjRkkyVmNNVW5nUWh3UWtoQWV3T2crUjNTbVlTRDZQUkNLVVVOUldpaGRJWFhMeDJrVnU3dDZncnc5R2xSM2p1dWVmWVdONWd2RGRCMjRRc3lWQldnM01vQmYzcy82a0FxTHJ0ZXduSmEyRWFlR003OVVyQU9wUlAwVjdoU2tkS3pqT1BuK1R4OVJQczNSaVIrd0hyeSt0NEMwVlI0SlJuZmJERzZVZE84NlEvd2NsblQvTGtZeWNSSjFTN0pjb3BVcFUyejA0dUhDZENLTXlEQkM4d05oVkx4NWE1ZE9zUzcxeDhsd2xqRUV2dC9OUXB3MDhmZXdLTlY4SGRCUjd5MEtxSUJ3WHhNbzQ0eEVpQW5QWm5lblY1bWQzUkZtbWlHUTV6ZG5hM2tiYUswb0ppQjYwdmFFUWZCMFZjemhOWlF1eWRnbXdwbzlwMUNEbXJzc0h2LzUwLzRBKysrWWZzM0J5VHNZVDRCT1ZWU0lnU2ovTWV4RFhKN0cyczUyd3lpNXI3VmVvbndSeVVtSFhINWVmYUErRnFyZ3M1bU96TkorN3MyNzUxT0JNK0owbUMxazExT0hGQjdGT2V6YzFiNkZReFdCcFFtNUtmdmZjZU4yOWQ1OVV2dnNKVFI1L0FscDZxQnVjMXprcUlQODBoV3hKRzlVMnNGRGlxRUN2ck5SNE5QZ3Q3NWFzNzl2OXVXZmxhRkdtZW9sT0ZUeHczdG03d2c5ZS96K3MvK1RFbEpjODkrUnhmKzlyWGVQS0pweWgyU3NRSXk5a0t0bllVNHdtRGJGWUxFVCsxWlZDZTN0OVgzOVMyNlZ2ajRtQ3R4UnNoUVpPNEJPMFNmT0h4dFNWVEE1WUhRd2FESmFwaXdtUXlJVTFUUklUdDNSMnNjcXl2cjZPMVpyUTdodHF6TWx4Q29SanZqY2pUZEpyWTVOdFlYaHVzdTd6QzlSVFptZXRuN3B6UFgzL3oxMWY3L2Y1a3JkbnJSODIxTytHTzdXM2ZGZnV2UHlzd29vWjF4UTgvK0Q2dmJYNmZnZ2sycXhrWjF6bGppQWROQW8zcG1BVlFsazZaalF3ZzRwQWpLcklSaHhpT0xGV2tTY1pvTW1KdnRFbVdhcXE2b040ZE14aGtGRVV4dDR3S2NabGVOVGY1L1RmWUNOaFBhRnZ2cUw2SFZMaFpWa1ZGTXNpeGhVR1U0N3ZmK3c1ZmV1NWxqcTA5MFRDQTlqZy9lSGRNcFJTU2VyeDFHRlBoYmZPQTFGUUU4MWpXbDQ2d3VyN0s1dlkyOWFUa2hXZSt3SE5QUHMvYThncDdlM3RveWNpek5aSnNnTE9LVVRGaE10bGxkN0xIMHFvT1pyS2RwcVp4UHFXdFp0Y1dpRDBJN2k3WGRsbE1NS1hCaVlQRU05NGRVKzNWalR1QlluMTFnNEVha3JpVXJBbWpFS3RJdkdJcFhVSjM1N1JSWkZGTitIUG9tMjFWMEZhRzdmZk5oLzVwc1loTzBLNkpyWldVNFhKS3JvY1Vvd0x4aXExYlc5aTZZamdja2ljNXpoa2VXVHVLY3g1ZkNsVlZvWXdpVFJJVUNiNnhJSE9FeEM2Z2MyTjRVRXhKbkhqU1ljWjdsei9nd3VZbEhJNmFpcnIyM1o5b1U0OENUVkJpcDQvdHZubTZpNzk5RVljZlVaR05PTVFJVmIyeU5NZDdSNVpsak1hN0RJYzVJc0o0UEVaazlzWWxvc0VycHNZMzg2V1ZIbmFvQTk0dmdCZ2FDMVR3a01rUWpHYkFPaTg4K1VYKzgvLzBIeUoxaW5JWnltbThEeVI0Um5HU1djV3FQKzE2NFp1K05CbDZNcGVwNXlUTVk5bXZhSFhibVZ2L3ZDS3IvSFE5L2FrNHYyLzk3UlNncnNzUVVpQko4SmdsRkZCd05ualFycTR0YytQR0RRYURBU3BKUUJ4SmtqQ1pUTkJha1NrTkZtb0R4bmljMHVoVTRWUkp6WmovN1UvL1Y1eWFVRk1RZ2pja0RBMzdvTEJKUDk1ejBTbmFsOVU0ZTA3VFZGUFVGWlVyMEVrQ3luRzd1b1hEa2FDcHFWblBObGpLbHBpTUNzUzNpVndwd3l5bnJDWXp4emo0SUxSYjZ2K2Q3WWZGWVRFSW1seGxpSU1Td3dyTGZPbUpsM24xeFpkeHRXTmx1RUpkMUZocldWMWVwaXhMUnFNOWhzTWxVcDFocWxEVUpFMDFTaVhVZFluM0ZxMDExaldldXI0TkxWQnpJUWFxaWVBRjJ5aXhpMVRZL3JHODA0akFuUlRaUmN1SGtJdjJUeWdVdW1qdHY1UUg3WHRXV2MxeXpndE9vRWhyNnFQd1ozLzkvM0xCblFVYzIyeFNDNmpHazllVmdjU3FScEcxS0d3cjA0b0xSRFl5Z0loRGpraGtJdzQ1NXNuV1J5R2w4M0dnRVl0eE4yTW4xMG85Z2NqcUlkYUFKdVhKbzgvejBndXY4QWUvLzRkczNSanp5T3B4ek1RRmd5ZkoyTHE5emFPUEhtTTgyUTVoQmhLSVJGanJYQmlJQitVRGtWVStsTHlTTmtGSFRjT2VYVU1BUGtyb1FWaXY2eFJOOFdHNy9Xay9sdk9nOXZuMXp4TVpOZGMrdTMxUVZralRIQy9DdUJoUlVaS3Q1R3hQYnZIT2gyL3hyNzcvTDdBVU9Nb21YYzVobGNmaGNjNmhKWGk4N2xkZVZVTWtYZmVwT1dOaDIyMmYrdjNyV2hldExmemZNODhDQWhtVnp2TkF1cVU5MCtINTREZnJHM3N1MTF2V2QvODBLVXNNbStTdkFjOW16L0NOWC9zbXE5a2EyaVVvcHhFbk04ZFhCZGJYSTNwVG9ycHZQTUczb1FVeUxlZmJISW41ODl0Zi84eTE5RkdJN0Z6N3pJUEUzUExLcXk0VXd5aW9WYkFIYzk2amZhaHNuQmpITU1rb1IyTzhDRXZycTl6YzJXR3ZLbGc5dmNHM3puMkw5MjYveTYzSnphWXNzY2YwaWJwbjN6bnJlaVNSeEVZOEdJajJXeEdISEg3dTlYR1hpVGdZODhkMi83SGZuV2tBQUFBZ0FFbEVRVlFXbVg1VVdtTmRJQk03a3gxMk5uYzVldlFSbm4zMkdmYTI5OEFKeThObHlrbk4rdklHeFdTQ1VoYWhOZlIxZUdtTEpVeGZIVW55ZEdSSis0YUF3RDBuNzBsanZpUmQ2VnhtcHZ1c2p4YTFmMVQ3cEdaM2hPbFV2TUlid2RRRzd5eG9oODZFeWsxNCsvMDMrY3NmL0R0czQ3aFJZekNVVkpSVW1GRHRTeXdHZ3hHREZRdXBSMUlnOFlnR3B5eVZLM0ZpY2RwaXBNWjVpNlVPTWJ3SjFLN0VZSENZeHE4Mi9COG81M1RxdWhiYnpXOHdPS2x4S3ZUSFNvMlZHaWNHcHl5MmVSa1YrbWpFWXNWaEV3Y1prSGxVN2tONGdMT2tLbVdKUWRoVFc3TjNkWS9Uenp5UDhocnhDdVdrSVg4dGFRNXF0TXo4TGZzN25vY1dxbGxIZHczMXp5OTBpcnUwNTJyK2ZDNVk1OEx0K3RucDdMelM5QU9jQ252aW1qOG81UlVhVDRxQ3lwQW9qV2hGWVd2VUlNVVBVeTVPTHZIRHE2OXh0YjVDN1dwbUtxd1JSZ2FtcEhyeDMyOUV4SU9BU0dRaklpTHVIYjM3b1locVNGb2duMFU5WWJ3NzRmUnpuMk9RRGJER2thZ1ViejFKa21HTkNhRUY0aHQ3cG1hdzNMZlVkYXJ5elJOWjFTcWxJb3NaeFVkQVIyUS95VTM5RS9pQUNrS2VaZmhHTGJSWVJJTk9GR1U1WVc5dnhMWHhWU3dHamFhbFQ0S1FTc0p3TUVCcGpRcldBVmpqY0RhOHJHM0tMemRoelo1K1JiV21taG1odXRtVVpYLzhxUjZrK0dRQjIrdS9HbWhOU05UQ1l5dVByejFTd2NDbHBBVFhBb1d3eWhxdkhIK0pYMy8xVnhpb25NUWxKQzZRUHVWOWVQQ1F1WWVRTzUrV0F6OGY1THkxaU53dVdzOWR0K3NYZnc4aHJFWUFMeUZVd0V1ek9SOEl1L2FndmFJc0N2STh4U2FlM1dwTXVqNmcxQlUvL09CSG5DbmVwM1FoRDZBdG05eVNWNjMxb1MvQkd4SHhVUkNKYkVSRXhDZEFtd0RtdXlIYlZDVWt6VEQwemUwYlNPWDV3b3RmUkN0Tk9ha1o1RU4ydG5kWlhWM0IxYWJoTzlOU3RpMVo4eUtkY2pZbEJIT1VRTjI3bDlwbmdjZ0tRcUlVU2Fwd3psS2JtbXlnZWVUWUl6ejU1Sk84K3NJckRQU1EyOWMzcWFuSUdiS2FyVklaaTZrTnh0aVE5ZStuNjlPaVNYU0NUcnBhck5QajFpT1lmanJ1Zkc5VEFlOWNzR2x1N1ZuN0w5ZUVOTGhteU40cE1CNXNjQ2pJU1VsSlNFbkpHWEJ5OEJSZi84SnY4ZHN2ZjUxVGp6M0xraHFTMkhSS1lwMDA1TFZWVE84UUcvd1JQOTlYSXR0c3dNdVV6TGFLczI1ZXpnUkYzaVdlV21wTTVpaVRpbk0zTHZERzF1dnNzWWZCb0xVbVNaSnBLZHkyK3c5S1psdEV4QjBRaVd4RVJNUTlJaVRiSlRvTnBNYUhZVjd2dzlBeldBUzRldVVLang5L25FZVBQNGFnMERvUDFhSkVJODZpL1ZTNlUwZ1QvOW9TMkZhVmJiNFRGeEpvV2lWWDdyMUE2LzBuc3A1eVBBRThXWjZEUUZsTjhOYWp0VVlwVFpibG5IN21lVjU5NlZXZVBIWVNYOEwyMWg0S0Zjei9zV2lrcTlPbEczY0Q1eDFCYkczM1RoQUJKYXFycHRZRkYzOFN0SWRPbWhJSkttbjZrcUlsQVI5SWEwcEsxcFErYUN0K0RjaDVoQ1A4K3ZPL3l1OSsrWGQ1OWZTWGVXejFNVEtUa2RRSnkzb1piVUlZU2VLREc0SnFsR1RCaDBUT0E3cDFHSWlzQjBTQyswRDQrOUVobWM2SHNCUGx3VmxIdHBSUjJJSTZNYWoxaEF0Ymwzbjl3aHZjNGphR0dpTm1oc0RlemFZdUl1SkJRN1RmaW9pSStBUVFqTFVrT21TOGUrY2F0MW5YWkw0ckNuYjVzMy96TDFsZlBjSXpUN3hJVVl3NDl0Z1RYTHR3bGJWczJHVENRMXN1TkJDV3Z0NDJlME5lNE9SMGFMSGNaT0VYa3hFZU9wTG5TazlWVlVpaUtDWWxLa241NGpNdjhkTHBWOW5lM3VURDgrZTRjTzBjNzUzL0thTjZqNEtpUzlZU1BCa2FBV3JxTHM0VjN5WWt0VnFnL2NTbG1uT2RONkVSdm5tUWtVNWRGeFRyeVRMV1dHcnE1cUVoWXlQZDRMbm5udVBVWXljNXVYNlNnY3NwOXdyc2ptTjVaWlhoWUVpMVYxRHNGZ3l5WVVQcytsZkJBM0x5QWR1N2tEdHZXcS9RVFNFODBhQXlqUlZIb1dwS04rR0RXeDl3bWN2QmFnc3o5WlZ0UEh1VlV2dVUyWWlJQnhsdHhIeEVSRVRFeDBUUTEwRGhzU1FKaURJNEcwVFRSQUFMdVZyQ3VvUlhudjhWdnZIMS81QkhOcDVrWStVNDQ4MFJLMzZBZG9JWHRjKzFZS3FXaFhIcjFpcXJiNStrbXUzRDNaV29nMXdMcERYSy81akx6L2FSTzdvV0xDcm9JQjVXbDViWjJkN0dXb3ZTR3NTaDB4U2RhYXFxSWg5bUZIVkJXUmRVeG9BS2NhWkpra0JtS2RqbCt1WlZMbDY4eUtWTGw3aCs4eHBieFJZbEpSN1BrZ3dwZkVGRk9YdHM5NVZ0dlJjRXI5a1FSTkwrSDZZSktSa3BGVFVyTFBIOHlkTTgvZFF6SEZrN1FwYUVnZ2FKMWVnOTRaSFZSMGhVaWlrc1lzQ1dEbkhDMG5DSUxadHpMY0Vxellucm5BK2NNR09EdXFpZ1FZdURDaHJNRnlTWWIrOHovVVd1QlAwcjVVNnVCWXZPdjIvVldFQjVqWGVDZG5yYUtYSGhRU1F6bEduSnB0M2l6SzBQZU9QYVcyeXpqY0ZSVWdZN3JmNitOb3A3SkxJUkR3c2lrWTJJaUxoSEtBYnBDbVZkNHJHQTZXSW51NHBFSHBZSFMxUUZLQWI4L3RmL2tLLy8ydSt5ZlhQQ0N5Yy9UM2w3UW1MRGNManRWVmhxQ1dLZnpJYkVwSmJJQnQzM3NCTlpXOVdZdW1ZNEhESVlEQ2pLRW1NckJFMXBTcHh6SkZsS2xxZDR3QmhEN1JweXB5eEdqZkhLaG9RdkRjYlZqRVlqYm03ZVpHZHZodzgrUE1QZVpJK2R2UjNHaktpcFovZUplNjlzMXlleG1vUWhPV3ZaT2tlUEhPSG8yaU1zTHkzeHVWT25FYStRNENzVllwNUZreWhOSmpsU0NNcHF5dkVFOGNMcThocktLOHBKZ1loTXd5QWsrQ2FFUjVwUTloWUEyN09WT29SRTFxcTJQUnlIWURQWDdKcDRTaWJzdWgyU0l5bFhpcXQ4NTZmZjRTYTNxQ2d4elJFUkZjSkZuTnRmd1RBaTRtRkFKTElSRVJIM0NJV1FBdXdqc2pBbHM5cERTbzRqSldlZHYvczdmOEJ2L3Nwdmtkb2hnMm9BSldpZGtnK0dHT01Zajhjb2xiQ3lzc0prTWdycmwxa2k2OFQxZkRnUEpySjN1ckdMZDRqMzk1WElLdCtMMSt5M04wYjVpL2JGZGovWkRxOXFFQk5zeXhyRnNpMlI2OFNoRWduV1dkWXlxU2FNSm51TVJpTjJ4N3RVVmNXdFd6ZHgzZ1NDWE5jWVk2YU9CNFJoYXFVVVNaS1FaUmw1bnBObEdWbVdrVWpDc1NPUE1rZ0hETEpBeEZPZGh0aE9JMkFkaVNRbzExaG1lUjhzeDVxcDhncHhEWG1ESmlsTXpSQlIyNnJ3elhuM1RTeTJhNHBZS0pKOUJRUDZ5eThxYnRBbnFwYjl4N2ZmM2c5aFdVUlUzZHo1bVcvdnIyY1JrZldKSUZvaEZteGhjTFZEUkpObENlU2FtOFZ0MGlNcGw4ZVgrZjdQdnM5NWU0NktDcXNzbFl2bHRTTWlJTWJJUmtSRWZDSzA1V2Yzd3d0a0dkUUZRRTFDUXNtSXYzN3RMOG15aEYvLzZ0Y1pqV3JXOGpYQXNibHpDNjB5VmxaV2NjNnh1Ym5KWUpBZHZHVUpKUG1CUWxQd0FlaEt2VTdid3ZmYWUyZ0g4aDIwNVd2YklXWkhJUHBlT1V4aG1zU3hoRXdQV0Z0ZHh5N1o0RHZxSEt1dkxJY0hCQnVNOU1XRjRXN2xCYS9BbEhWUS9WeFl2L0xTdFlzSTFCSVN2Q1JCZTRVMlRYeW1KUlF3YUlwWWhHSUdmcnAvelg3NW1XUTlqNWVRbkdiYnowd2ZGbXhqV2RCKzUxQWRVVHkwU3FTRUdHaHhubUV5SU0wMHhsWk1YRUZ0YWdaSEJsemF1OHk3Vjk3bm1yMUJqUTF4c2FxUmJhTzdWa1JFSkxJUkVSR2ZGQWZmVFZ2U1liMURLNGQxTmRkSGwvaXJILzRGUnpZMmVPWFpYMll5S3NGQ3RweWhTU25yQ2Q0cmhzc0R2RzBTbVB4MGZiUGJ2WGZYZ3M4R1ZNL0szNFBNbFhXZEkyaWgybFQ3U1ZBK21hcCtEZjFyNjVWNWNhUSthN3hKUFNLQ2J5VmdEVjViSnB2Qk5VRWN3ZTRNaFlnUFZjRVVIQm1zQllKc2ZUZHRpU3lBcENxVThUV2gwbGhyaUtwOUNEaG9NL0NGUUd3YlNiWFozekMwYmxzRlg5cWowRk9jQ1Nwek96K2RVOEgra0lMNTk0Y0IzanE4ZFdnRXBRQ3hWTDdDcWdxVE9XcXBPSFA5QTk3ZWZwY0o0eTZjd0Z2UUNkaElaQ01pSXBHTmlJaTRWL1NKNU9JN2FsMUJrbXBNNWFsY2pTYkI0Ymh3Nnl4Ly91MS95ZkgxSjFoSk5saGJYaVhSQ1ZWUlVkV0dSR1dzNUN1VXJueGdIQXJtRVZURmdEQzh2bjlIZzBORGU1eGQ0SWxONWFld1hKZ3ZPRDgwQkxZMTNQSUtuUWFGMUxwcHlFQ3J2Q0tlOWFXTm1kS3A4OFBmazYxaXBqOGhibFZCRzcvcVBOWjVzQjd2UExnd2p5SzBCd3MxMWJoUytDNldUZmxwZkNqU0tza3R3ZlcwUjZiL3Zyc09ldkhYN1hCK3Y4L3o3ei9McUd2TFlMQkVLbURxaW5FMXhpcUxYd1paZ25mT3Y4MjUyK2VZTkdsZE90VjRHeDRHckxuZnZZK0krR3dnK3NoR1JFVGNNd1RIMUEyZldjTk1DY1VTUkdkNEc5cXpQRU1uQ21zTGRzZTdiRjdmNWZFblRuRGl4QWwyZHJmWjJkbGxkWFdWUVQ3ZzFxM2I1Rm53ViszS2tEWlZwYng0UURYSzRMMlpvZDV2SDFtNitONjJGNzNpdkRJdDF5dTRSb2wwemRENk5HNVVQSGdKbGxxdVdhWmJmWnZwNzRLbkxJMG5yOWFLUktVa2lRNEtxM1Y0NTZkVndZekZHb3V6anVGZ1NLS1RVR0JCNmVCRDIvL25mUEN1RUJYYWxhQ1VvRldicURVTkVtMzlYMzFUaXRpSmJmYXpUZDdydjhLUlVLMW5iSE9FbEEvRk1iUnJQWWFiZlYwUXEvcFJ6c3RCWi82Zzh6Yi9lWDc1ajNYK1JXR3RaNUFQVVNJVXhSNWVHZEpseFVRS0x1OWQ1YlZ6UDJTVGJjYlVvVGl3OHVEY1BxVStJdUpoUmxSa0l5SWlQaDBJZ1p4SlZ4Y1ZsTUxXcnJtVEM4NGJxcXBvUnJjdFA3MzRKdXMvT2s2YUp6eXk5aGdyNjB1Z2hjcFU2RlIzU1YwZHZDSkVVRTdqSXc4L3BDbFBLZ3RLcnJvbXM5NEVKUmE2UkNjUW5IS0lWMWlaWnF4N2ZKZlYzeVlqQ2FwekFSQVJwQ0dhcHE2N2VOZTIzRytiT0FaZ0s5c3B0Zk1xcHpTa1dWUllQeEpDRkp4ejFEWXNsNm9ra0c1YXhUY2thNFY5bmxWa3U2Q0JtZTJFZU5xUVJOVW8wRDN4MzgwWmllMGp0SEp2RHptL0NJaUhUR2U0MmxHYkFpOHdXTTd3QTh2MUcxZDQ0OXliYkxISkJBZmFoeXBxcnZVS2J0WDNHRnNRRVJHSmJFUkV4S2VEVm1IMFUwc3NVU25lbE9DRlpKQlFsWlBPMlNEUllHckQ5My82TjR3bkU3NzVPOS9rMUZPbm1Xd1gyTUp5WlAwb1ZkSFdQNTNGZzBSaUEvbHZodExucWxXRlVOUkdpZldoZ0lIdjB4Y0ZYV3BVenhXZ1czdGJ3dGROeWFodjNndmdqRzNpTTlVTTZadUdHRXdKc2dnZDRWVXFuTi9TVk9CZGNGbkFJdTEybW45VytmM3J4QVp5Mm9ZSXRPMjlhT0hlUWwyY2JaL0lTdVBxNEpUdHpYcjRRZ3VTSktVc1M3d3o1TU1VUjhIbDZ4YzVjK0Y5cm5FVjB5UjNXZkhRSm5qNVVEaERLMDNscWtobUl4NTZSQ0liRVJIeEthTlhrOHVZRUJHUTZpNHpSV2tZNUNuajBZUmNEeWpzRG0rYy9RRkhIMTFqTU16WUdCNGxzWnBKTVNMMVdWT3lsakEwTGg1OHduUUl1cis5QlVSbzRlQnhQMEhNZmFKS1lXRm8vOTZXRGZBTmlXMkRDdnBoR2c1eGJtYldkcHN0V2gvVUxudGZYRU1JMVl6bGsxSk5xZCtXNkxZS3EvSWgzcldKYVczSmJ1dEptbVZaOTduOXpqbUhNU0ZBVSt1UVloYUtWWUJYSVlZMmFRYlRuWnNMNUpSUVlhd2w3cTNhTHUzdU41Tk9yTzJwOFl2UytzU3piOXgrUHJSZy90ejJINEtVbi9XU25XKy9HeGFmK21tbm5EU3h2QUsrSDhQY3VqWW9xQ25SQTQ5YkVxN3RidkdUUysveHZqL1BHRXVGdzdhaEYxbUtpTUpQRENGQkx4TFlpQWlJUHJJUkVSR2ZLdWJwUnIvWTdOeU50d3R2VmVCU0VnYjh4c3UvemQvN3JiL1BpZldUN053WXNUWTRpaTFkVUtDMHhoakRwQ3hKVXNYU3lsTGpNOXY2eS9wdUNIc2VuWDhwNEh2TVJUVkQ5NnBIK21ZVXpSbHhNRkNSdG4yZVJzeTNoNW5heEt2RjYyOUo4T0oyTjNNMGZjL3Z0dStkdXBpSXk4dys5ZjFOTzc5YllYYTZvSDlxYnY5bjVtdDlicHVWdE1wZ3YzLzk5ZHpwK003M3I3L05zTHdzN0g4ZjgrM3orOUN0MTgzMW44WHRiYi82N2YzOUFGQ2Q1WUpyUEc4OXJsR2NuWURXR2hDY0JXTWMxbnFVYUpJa1E3Um5ZbmR4V1UyZFdHNU1idkdUYzIveVhuR0dNU1VxVHhpYm5Sa2x0cm5VQ2FaMHFuRXhpSWg0dUJHVHZTSWlJajVGK0xsWFgyMmNneUtNQ1NVZVhCZzIzOXZlcFp5VXJBeFdPUEhZQ2NhN0kwSnNiVWhHRWhFR2VZNTFudEhlSG1taUF4dHE0elg3VytySmRkSklmdExNb1pwM2JZblFka2ovb3lZSjdkdldBZk12eW9HYlhjQTEvWm85Ym9vRnFxS25VVlVEc1pObUtlbWVDS1l2MWR2dW92VjAvZTlsSTkzNy9yZUtPVUU5OTlNdGQ2bGh6ZmR0LzZYM2ZkZi9kcm5lOHUzNythdnFvUE0xMzg5NWRiVlBjQmVldi9uNTc3RC9ZZjdwazBqWGJUODlJMm1XVVpZVnByWmtXYzV3dUFRaTFNWlEyQUkzcUhCRHc4M0piZDYrOURNK0hGOWtMNVE4b0dJQ3lzNXUxTkd2WmRmWDd5TWlIbHJFMElLSWlJajdnNWFWV0pvRU1jZDJ1YzFmdmY3djBTNGx6NFk4ZnVSSkpqc2wzc0RLMGpxSjBoUkZpWFdHd1dBQStHbmhnS1lLbFBRVXpYWUlWNEIrcHJlVE9Dd2I4Y25nSkZUSURZcTJhcEx4M015RGdoaVBHRWdRVWdGeEZtY3I4QWFWT2VyTWMzTzB5UWRYenZMaDdvZU1tUUFHNldlMXpiUDQ2U1JHeDBaRUVCWFppSWlJKzRWV0V2T0FDS25PUXlJU251MWJXOXk2ZllQSG4zaU1MTThaTEErd3RxWW9Da1FnU3pQU05NVWIxK2grcllhcGFMUGNRNXlvZE5uMUg3VkxIK2Z6SjFkay9jTDJUOHMrNnE3Znk1M2JmNjcyVTNmNC9xUGlidXY5dFBxLzZMTVhNRXB3QXRNOE9kMlYzMVZlVVplR1BFMUlrNVNxTHBrVUk2eXZTWE9OV2hLdWxqZDQ1L0s3dkw5MWhqRkZzTmpDWUx5WnJYN1JJN0xUNUxpb3hrWkVRQ1N5RVJFUjl3c3pyRUNoa3dRdEd1Y2NoUjl6ZGVzcTIxdTdiQnhiNS9qeDQweUtNVVZSc0xxOFFwcG1iRzF1a1NVNTRuV3dJL0pxMzNDMThvMUxyUFExck1hSFZ0cFFnOFZkK2lpZkk1SDlhUE0vaUVUV0NkVEs0MVFUNE9IREE1VTRhZnh1QlZNYmh2a0FVWTVKVmVDMFliaVM0aExEOWVJR3IxOTZpN1BiRjloaEQ0dkI0bkVoeFF2cHFic3o0U0JkUCthcXdFVkVQS1NJb1FVUkVSSDNCeDVBb1NUQmk2T3VpdWF6QmpUV1czNTg5alZLVjFCVUU3N3czQmRaV3p0S3NWdGdSeVBTUEd0Q0N0ck05K2EyM21UUUt6K2JHVzlibXlycE5zNkRVZVkyNHJNQzFjWXYrL0ErVDFJc2hzcFcrTVF3V0UyUjNIUHR4aFYrY3VFZDNpcC9Sb1hnc1JocVBJWTBUUkJucWRydzJBVmN0U3REL0F2ZHU0aUl6eVlpa1kySWlMaFBVSTJTU2k5OTMrQXdPS1ZJOVlDNkh2UG11Ujh4R3UraUZIeisyUzlST1ljREhsbFpweHE1WG1sV0dyc20yNUhiMWw0ckl1TG5BZTFEdlRMZDVCdTIwL0R3NU5DWlptSW1WRkxpbDJCWHhseS9jWlgzTHB6aC9mSWNZMG9xUEVxRHRRYXd6UU9ZUS9lMnN5Z21OcExZaUlpQUdGb1FFUkZ4WHlBSUNRazA1dms2RlNRSlJVd1JqL00xWGh6T2UzYkdPMXk2ZUpsTTU1eDY1aFJyYSt2Y3VyVkptbVI0VWQwNlpzdk45cDBLMmhDRGtPdmRWcmFWdVJLM01iVGc0MzErbUVNTGtIQlZLU2NrUG9RVHFPRHBoUUJXZVZ6aUdia3hKamZZb2VQUzdtVitlT1oxenByejdESEJaQXBEZ2FNR0hlemdqUFhnSVZQZDRFSTNaakFOSzcvYkZSQVI4ZkFnRXRtSWlJajdna0F3ZzgrbXgrTzg2WXoxdXhjZWxTaWNkVXpLRVpmT1hjSURLMnZMcksydU1SNVBVRnFUcGdwcmF5YmxHSzBVV1pvMHB2Mk52UlllMThiSDRycmJ2M1NlU2V6elNXMFduTDV0ZldqNzNxUGN1ZjF1Uk03M010Tm5mRkQzejdqUUo3V3ZOcy80c0M0b0tSdStuKzJmNjVXZjdTLzNVVC9QNy8vOCtydnV6ZlcvKzlyTnJXOStlL1ByNTREMTc5di9iZ2MvVWYvMzlXZnUvV1J2ai9XbFpRWkpTalV1cUt1Q1BNdEpCb3JTbDJ6VnUrUkhCaFNEbW5ldXZzZmZmdkE2bC93Vnh0Uk1NTlFVamNWV3UrNHBjZTMvS1RTSE1PelN6SjVISWhzUkVZbHNSRVRFZlVGSXlRb0RxRUdGZGJQeVV3TnZIWG1Xa2FxTXNSbHovdng1SnVNSksrdHJIRDF5RkdNcnR2YTJ5QVlKeDQ4ZnB5d0t0cmUyV0ZsZXdyWFZqeHIxekl0dnR0VjgvWE5XWk85T1pEK2hJbnZBaW44aGl1U0NMejd1L245U0huWlhSZFl2L3Y2Z0wrNm1FUGZieGNQRzBqS1QzVDFHdTd0a3FXYTROS1NtWXJmY1pjK05TRFl5YnRhM2VmL0dCN3gzL1F4WDdIWEcxQlFZblBhZ3pQNCtOTTRFTXJlOTJid3ZPVGlBTmlMaUlVTWtzaEVSRWZjSjdaQi9heVkvSlowZE5PREFHa09TcEJocnNSaXUzTGpNOXM0dWo1OTRuTEl1T0hwOGd5UlZYTHQyaFVHZThlaGp4OW5lM2dxVmxYcXlZRWRrbTIzTEhHdU9SUGJqZlg2WWlheG1XcThnVFZKMG5tQ29HSmt4SnJPbzlZU2I5U2J2My9pQXR5Njl6V1Y3blFrVk5RYTBDNFZBL0g2djJKYkF6cWNnOW9zeXoxUzJpSWg0eUJHSmJFUkV4SDFDUDRiQXpiS081ajZkcFUzRlVCZVNZUVFoMFJtVkw3bStkWTF6WnovZ21WTW5XVnJOMmRuZFltVmxDYTJFbmUxZGxwZUdvUnBZUjF4OUw3WXcrTXYrdk8yM0lwRTlZTG1ET3ZBeGNUK0pyQUxHdTNzc3I2eVFMS2VNNmozR3ZrQ3RhVXp1dUdVM2VmUGNXNXk1K1FHMzJLVENZTVJCMmpMV0VFNEF6SmpDem9jVDlDbXIreWlkakloNHlCQ0piRVJFeEgzQzdHQnBsL2pVM09NRmNEVmtpU0pMVTR3eE9JUWswNkNGeXBic2xqdjgrSzBmb2JYdzlLbW5zTWJnbldWbGVZWGQ3UjEwb2p0aU1DVUVYWVRzUFJQSStUMjQyL3lSeUI2QVEweGtBWlJPcWNXeFYwOFlVU0pyZ3NrdFoyNS95TisrOTdlY0haMWpoMTBxYXJ3Q3lUVE9tbVpsQ3F3Tng2Q3BOZHNuc08zN3RnenRWSTI5U3ljakloNHlSQ0liRVJGeGZ5RDBXS3Z2YnVTcWVTWE5MTjU2dkxVNEFjUmhiSVhGZ0JhY3F3SEhtUXZ2Y3VuOFJVNDhjWUlqRzBjb0p5WHJxMnZZeXZXSWJDQ3UzZ3VoRk5QK3BLcElaRC9lNTRlYXlBcW9QS2YwTlNaMXFGWE5ydDNqN1lzLzQ0MXpyM1BGWHFXZ3BLWU9aV3hUb2JhbUdXSVFSR25FbWhDaTBMeG1rcytZSzBIYmwyb2pJaUk2UkNJYkVSRnhmeUJ6THg5K2tQbzM5cVFKRFBEUWtJRjJmZy9Lc3I2eHdYaXlCOERXM2lZWHo1d25rWVRISG5tVXNqQWtLaUg0MVRZYjhVMHAyNmFtcU13eHFVaGtQOTduaDVuSU9vRVNoMHVGT3JWYzM3M0JXK2QveXBzMzMyU0xiUXcxRlJVb2o5T2UydFFkaVZXa2lIV2tlUFJNd0F2NEp0WEw5Lzg0UGthWjVZaUlodzJSeUVaRVJOd2Z6QWNETWlXdy9hOFZDcDFxSEI3bmVzc2xRcmszb1EwYVNKVm10OXJqdlhNL1kvUDJGcytjT2ttU3B5QWVMNjB6Z2llVXNnMkJCY3FyVUZxMGZYV2xiaFV5MDhuZ3FqQ2wxYTBKa3ZUcHhuVFgvTnpuN2wycnV6WFRPYXN0eFdJeTlmTWlzak5qMkhlWmZ4R1htdG4zWHZ2OGZ2dzhpS3dDUXVHTDVpejQ2UlFFNWZldnZOOFBMOEhydGF2RjBVdTAwbDZGY2gydTV3L2JkTlpKZUZXSlpUY2RNeHBNdUxCMWtlKy85d1BPbGg4d1lZTEJVR05EeVZrRjFrM0RhUEk4UjZQd3poSWVxL29CTDJvbUpuYmE2VWhrSXlJT3d2U3ZNeUlpSXVJWGpUa2kyMzdzWjJ5Ny9peXowdFhzcW54WVVxSFJKQWc1Zi9pTmY4REp4NTdoaWFOUGtaZ0JaZ0twemNoMERrN3d4dUs5SUNKb3JWRktZYTNGV292M0ZxWERscDBZUEFad2VDemdRdlVtbTRBUEJSTHY1QU9yT245U2hmZTIyY01tRDcxeGExamtZenZ2cGJydjhMbjk4L2EzUDVNLzUzMnZINEdNOVRIZkhtYWF2cGNGUHE3enkvZjM0MDd0L2ZXck83WGZhZm5tNFFOVXI5K3VhNWZlKy83M3dhdllZd1ZxN1VCRGdrWWJRUm1Qc2tKaVE3MDRVOVdvUkdPY28vQVZUbnZTUVk1UGhPMWttL2ZNV1g1NjVTM09YejFQVFkxQ2NCaHFUT1BHNFErNHdiWVBTcTY3RXJyOW5KODEzcVVqSXU2SXFNaEdSRVI4NWpDZnJiMXdCbnBxWUNjTmVydzRMQTZINDUyemIrT2Q1K2pHVVVRRktXMlE1eVNpbVl3bkxBK1gwVHBCUkhBV3FxckdHb2RTUXBwbWVCZGtPZ0c4dUtDZ2VZdDBGUWwwMHk1NGNRdW5RS01JMDloL2hhblF4dS82ZXhiZERocHgvaWlLckxCZjBWMm8yTExmQ3FxLy9iNGkrM0gzUTMwaWdqYlZ3NlgzWFJ2NzdKdTQ2M0FlNWpvTmVPVW9UUjNVVWl1SUErVVVpUWZ4WVoyMU1hU0RsR1E1eFdkQ1FjR2VIYkZUNzNMRDN1QTc3MytIRDdZL29QUUZCb05QUExVM09EeWkxQjBlUlBhbkhrWkVSTndiNHJOZVJFVEVvY1dCUSt3ZWhKUWx2WXF4am93aHYvUHE3L0ViWC8wNkc4T2oySWxIYk5CdXZSZThFMFJVcDVONUx6am4wQjFUdEhnczRsMm56SUxDT3hWaWQ3M0NZV2VtWGx5akdFNFYxLzYwTTc1dk9mR2l5bGMvUjBVV1psWFpPeW15Nm9EK3phLy9UbjFlMUs0TzZQOUhYWjVHa1EyYzFjN3NoeE9IT0k4VFA5ZC8yMjZkMmpWcXZGTW9FYlJyMXVNOERrdVNwNHlyUGNhdVFBYUNHaXB1ampiNTJabTNlWFAwTmx2c1VGQUNrQ1JCbVE4VjVVQXBOUzNJRVJFUjhYTkRWR1FqSWlJT0xXYVV4d1dCbU01Yk1qSXNqZ3ZYem5QMloyZndXRmJYVjBoU1Jab2xHQXlsTGJHK1JxV2FOTmQ0YjZuS0V0WGFkN1dTcW9DNGFVeHRGKzdRTXJxWnFaKzJDVmdKQk5PS0RScWlnUEw3TGNBKzF2NS9Ba1VXUHJvaWU3ZWtxbnZGSjg1aEVqOE56ZWhpbUYyelg5T0IvVmIvbEpsQmZHR29sdEV1QVJlSXJzUGh4Rk1wUTZscjl0d0l0K0t4UzRacnhUWGVPUGNUZnZqaGE1eXZ6d2NDSzJDVlE1cmtRV3R0dDNhdGRTU3lFUkcvQUVSRk5pSWk0dEJpSm5sbndSZUpTdkZPb1VuWlNEWW9USVdnT2JWMml0Lzk3Vy93MkxFbkdHVExhSjNpYW9jempvUU1oY1laU1B3MElheU4vWlJlM0tXUk9neGgweEFoNlN1R1FiVnRGVmxIV0w1VmJCV1FXTldVeVkySzdEMHBzdUViUVBDK1ZiNTdNY2h6eDdLL2YrSTBtY2x4VGxHN0d0ZkV5OXJNVW10RHJTcXF0R1NyM09MSzVrWE9YRDdEcGNrRkhBYUxKYzhHN0ZSakxJdVJwaWwxWFIvUUdoRVI4V2toS3JJUkVSR0hGcHE1cC9HNUlGRG5IWW5XZUc4b1hZbkRzcUtYR0JVNy9PRGR2MkhuOWc3RzE2eHNMRE5ZeWtCNVBBNFVhRkU0NzZZVndKcXMrQ0N3Q29oMFRnaml3L3ZRM2hvbnlUUldFelVsVlg3cWg2RGFUUHQ3eE1PdXlFNWpkSVdwQTBRNEg5STRWTFJPRlczc2JBdmxGV0liQXB5QTVPQUhRcDBieG1yQ3JocHpZZnNpcjMvNE9qKys4bU51bWRzNGFtUWdsRmpHcHA1UmdkcUVRUkVKRHpWUmpZMkkrSVVnS3JJUkVSR0hGcnBSM3RycVIvTU1iakJJS1NZMTRtR1lEaEVEeGpzRVJVYU9SZkg0OGhPOGNQcEZubmpzQk1mV2ozRjAvUmk1V3NKWGtQZ0U3UkxFYTVUUklhVEFoWmhZeE9Fd09ESDAzUWpjdkVZbkhydzB2ZXdwZ29CMkVtTms3M0Y1OGYxa3NmYjRFeDVFUXVBeTN0RWRmejkvL0QzTkF3ZzREU2ExakNpNVZkN20wdTQxYmhZM2VmUEtUNmdvRVR3K04xU21uSGxva2tiMVYwMWlsN1VXNTl4ZHoxdEVSTVNuaDBoa0l5SWlEaTEwazAvZmtVVG9wZEVIcUZEUkZsTTFQcldpMEtKQ2doYzV3YkpMa1RQZ2xSZGU0YXN2L3hLUEh6MEJScEhKQUcwVHRFdkJLYlJOb1BFV0ZjQjFpVi96Ukd2V1ZLa2ZjdEJPbForTjJZeEU5dU1UV2UxYUN5NjZCNGgrYUlmcjNkNXNFeW5idFl2RHFob3Jsa29zRXdwdWpEZjU4TVlGM3J0eGhpMTJjTGdtRnJZR2JXWk9xMmp3VlZDRFc5dTJGbHBya2lTaExNdUYreElSRWZIcElSTFppSWlJUTR1N0V0bitMMXp2bDY1ekRDQkJvWnRYZ2dCRGx2bmMwNS9uODg5L2daZGZmQlZmQ2NmakFUWUFBQ0FBU1VSQlZGUWE1VFFwR1pvRWI4QTdoMGJ3Tm14YmE0M1dHZ0JqWE1oZXQxTjFybTBYRWF4MVdHc2dhYnhrdVVjaWVBQ1I3UGpwSEZIOHVFUzJKYXIzU21RWHZlOS9wejhHRWU0cm5TS0NsZ1JmV05KR0VYWGlPZzlnNDRJUGNKb25HR09vblVHMElrbVN4azNBVUZLZzF1SDYzalV1WHJ2RXVXc1h1VnpkWUVSQmlXa2lZUjJJQVh3ejdjRVQ3NTRSRVo4QlJDSWJFUkZ4YUNHb1huREJndkNDdVlJTEhWcUM1Z1ZCa3dSTGZDeXVLYWVROGtoMmpFeUd2UFQ1Vi9ucUs3L01vMGNlcHh6VmpIWW5KQ3BsYmJpS05BYjYxbHJxdXNaVUZoRWhUVlB5SkNkTlUyd2Qya0tSaGNhNXdIaXNOeVI1c0ltQ1NHUVh0VHNYSEFIYVY3ZC9JaUZocmxaZ3cwT0Q4UVl2a0tRcCtTQkZwWXFkdlIwa0VieEFaVXJLc3NSaXliSU10UXgvOFpOdnNXMjMyUjd2c09QM0dGTlR0OXB1cHJCMTFZUW1FTndSUElEclZHQlBqSU9OaUxqZmlFUTJJaUxpMEVJNnEvNERpT3lkMENocTdUcUc2UkJuSEw2Sm9kVm9WbG1qeHJQRUNwOTcra1ZlZWVrclBQM1Uwd2lhWXJmRTdKWU05SkJoUGlETE1oS1Y0cXpIR1lNem5ycW84VTdBQlYvUlJLVWtvaERSV0tteFVrVWllNGYyZzRpczl4NmNVSStyOE5DUTUraFU0UVRLdW1CVVRxaE1TVGJNTUw2R0ZQSmhoZ051M3JyT3o5NTlsL2VLZDloaGl3a2pMSzFUTUpoMnh4SUZ6amJYaWVvdUxpR01CQVN6TGh2SmJFVEVmVVlrc2hFUkVZY1dDK29nSE53NC81MXZmZ0NiYWFJVEVrbXdKdmlSSnVqR2gwQXpaTG1Kd05ROHZ2b0VyN3p5RlY0Ni9RVTI4cU9ZU1ZCaUUwbklzZ3p4UWwzVWxKT0t0ZUVhQ28yZ0d4c3Z3VHVIcnoyMXJ5R3hrY2plb2IxMUFPaklhOVBlaGhrc0Q1ZW9URTFkMTlUTzRKVkhwUXJKQlRUc2xTTWs5VXlxZ3NzM0xuSDIvRm11bVd0WUxEVVZJL2FvcUVNMU9PK2JDbXh0REczYk1lZ0tMelJqQUVJQ1RmQkJLSkFSRVJGeHZ4Q0piRVJFeEFPRFJkelZjL0FQWFpJa1dPdngzbmJMcW1iK1JDVW9yN0JkOGxaQ1JrYWVEbkZXNFozbHk4OTlsZWRPbnVMWlo1NWphYkRNWkc5Q1hkYXNEdFpZWDkxZ2IzT3ZzWG5Td2JmZkJWOWFMUWtvajNNbUV0azd0Q2RKaUhIdHdqSjZ5cXdsK0w3V3ZzVDZVTWdBRFZZWmpETFUzckJYN3ZMQnBiUDg3UEk3akJuanNLZ214YTZrb3FEQ1lydWlDdTJCYXphQmI4Vldyem9LMjE0TFlCcEZOaExaaUlqN2lVaGtJeUlpSGhqTUVsbTFjSjc1SHp3UlFhbG15SHJPKzdOZGd4S0ZvSEZlR3BWMjZuUWdDR3Q2blJkT3Y4aXJMNzNLazhlZnhGU1d2YzBSRzhzYllCUmlCRzg4WWpXcFNzaWErTm1pR0UvN0ZZbnMvdjFyM0FCYVI0QTJXUXVncHFiVUZTNXhhSzJwcFdKdk11THFyU3RjdUhhQjYxdlh1Y2tOTElaVWNtcHFSbjRQM3dRRjhQK3o5eWF4bGlYbm5kOHZoblB1OE1hY3h4cXlxbGdUaThWWm9rUlNKRVZLbE5TMjdJWGgzbm5oYmFNTkdJWVhCcnl3allhWGhsZGUyWVpoTCt4Tm93MGJhTUdHbXBKYUl6V1FJcWt5QjNFb1ZsWXhxeXFuOS9LOU81eHpJdUx6SXVLY2UrNTk5NzJzeWlLWlRGYjhFemZqM1h2bU9ESDg0eHUxd1lVa2ppZDBkckNLU0dTVmhyREVVVFV4Y3JHbURWOGdOSkJOQ3pJeUhpb3lrYzNJeUhoMHNlTE10WkNxdG1SamdYVjBROUlXcFNRRzBHOGxjWkpNRG1LYy9TTWpaV0VIRE1zUnMwbkZXSTBaREFiTTVuTUUyR1RNeTg5OWxCZWVmb0ZUVzJjWTZBRWpPNDRtQm9uUUJpY28wVmhsVG93anUzU3Y3ME1pR3lNOHhOaXNXbXVNTVlnSWRWMHo4M1AwS2MzdDZXMXUzbnFMdCsvYzVPN2tMdmY4UFE3WXA2YkdFNmlwY0FnZWh5NUFEUlN1RWFLdHlBQkNLNk1WVklpV3NxdExvRTR3MjdXcnRrRUVNcEhOeUhpNHlFUTJJeVBqMGNVeFJMYVZtclZoUDVlanVpNWdqQ1dJSTdTaU41WEk2N3ByYWJCYTRRVGlmMURvSWNISFJBaXRFNUNoU0hheGlsMTlpZ3RuTDNEdDZsTmN2WHlWMDF0bnNLYU03TGlHQVNOTWlDRzdPZ0lYV2xPR2xxanEzdStxMjYvZHRvNElxN1JkUkphMkw0aHFpdldnUUZSSUtYampjL1JUdk9xVStHSDk5dVdrQkNKSFUvUktzanRkdnIvMXhDL3VHOUo1a3JtRkRvUVFMVkcxMW9nSzFIWE5aRExob043bm02Kzl3cjFxbnozMmNEVEpZU3VxL0QwT1FmQUVHaFVqR25RY3RHMG9qUVV4a0lpc1JsQnJrczUyQ1RmYWhxQjZXL0lNbXBIeFVKR0piRVpHeGk4cGREZkFuVHpRdlVPSjJ0cVQ2ZVcwcHkzQlM3OFdGSGg4WjRwd2V1c01WNjVjNGNxVks1emZPcy9semNjWnFqR0ZOb1FndUxvaE9LSFFCWVVwVVNuaWdUaWlCREdKVUEweDhvRU9LUXhVajZRcWlNY1JNMWVwOXZjZ3libE5rS0FRRmNCS1IyU1hLWDhzblF0cmZ4ZFJhSW5QUjFnNFkzbUp0cXcrVVVwakxVRzFoRlk2c3RyZXM5ZXgva1VyVk5MYVYySE9ySjR4YTZac25kcmdzRHBrNzk1ZDNyNTdrOXQzYjNGbi93Nkhjc2ljR1ZWSFdDUGFDQUloR1JERXY4UHgwU3pDVWRucmNYYldSOXJDMmcwWkdSay9iMlFpbTVHUmtmRXpncldXRUFJaEhDWExCU1ZudWNERlU1ZDQ0dW9UWExwMGlaMk5YWXFpd0VxQndTQmVNTW95MEVPc3NpaUpxblpmQjhSSkpKTDBDR3dybVU2cGI3VXNKS2RSWW15NjZ3Y1ZhSnFxSTViclVCVEZVdFNBZnZRQWdrSTVqWlpveTRvQlpYUTAwVWlrOUhBNklVcCtRNVN1cHB0UktoTHBPZ2d1TklUZ2FIQTQ1WENoWWU1blZLSGlxMS8vQ3hxcG1mc1pjMnJtekZLVTF5aHBkVWNUQW1ka1pMelBrSWxzUmtaR3hzOFlyWDBueE5pbzNuc01sZzAyTVJSSmFpaU1HTEU5Mk9iYzdubDJ0blo1OXBsbktYVEJvQmd5c0FPTU1WSHFHNktKUWFrR2FORWR3V3lscjRTazhrODJzaXJxL0JGUGo0d0dyTFVuM3ZkOFB1K2lCS3lXQUlVdVl1U0ZFQWppcUowamlNZUhnQmZIOXFudFNEbEZZcTZzRUFnU2JWNERuc1Bwbk1OcXd0N2VIVzdmdmNXdC9UdnNjWnVhcGd0dDVaUFUxYWM2QWtGcEJWcW9uTThUV0ViRyt4eVp5R1prWkdUOGpOQjYyTU5SSnk0bG1wSUJyWjY2TlZKUWFDeVdBVU1xcW1TVW9OblJ1NXpaUGNPcFU2ZlkyZGxoTkJoemR1Y3NSbW0wdGhoaktIUk1nMnUweG1DcDZ4cmRuVHVhQTBRaUdtMXJuWE5KaXJ2ZXRFQnJ1MlFiSzZLV3ZydmcwMzRhOUVJeWkxWkE0TzY5dTlSTnhlRjB3dDY5dSt6dDdiRjNzTWVrbWxCVE02WHFITzRrMGZtQW9BZ29WTEo3OVYzWnVsZEpWdTFuWkdRa1pDS2JrWkdSOFROQ1VSU2QxLzA2R0tKRXROUmxKeDBOVGNDSkF4U2JnODJZSWN3M09OeVNSYTVPcVhRdGhvS1NRVEZnTkJnd0xHTm9yMElYWExseUJZM0NHRU5wQjVUR1lxM0ZtQUtqTkp1anJlNXM2NGhzMDNoQ2NIZ3ZORTFGMDNpY3EvRSt4c0NkVmhOcVZ6R3JLNmJUUXc0UEQ1bk1ENW43aW9hYUtvV25pZ1EwSkVxK3NDRU8zY2NUa3B1VzlFaXQ0QmJFdFIvb3QwVzBNc2pJeUhnZkl4UFpqSXlNako4eFlxeGEzWDNhd1A1YWE1cW1vYTdyNWYzYnFBWEh4TUtOK3loTVQ5NEtZTEdKTEtwT29objNYVDR2dFBheVhhUmMxaEhaZ2dHUmdyWldxWFRiV3l2VlJZcFdoU2JHMlcxZDNoeDFPalpHRTRpUTN2LzkwRlowMXlLRlF3dXRjNTN1ZlZwU0s4Q2NQSU5sWkx6UGtZbHNSa1pHeHM4SXJWMXNtMnExRGV6Zm9lZEpiNHp1VEJIYU5LeXJ4N2VPWTIwRXE5SVVxS0NTeldsWUlxb0FRejJJSmczU3lqZ1hpSFMzZGY1YURja1F5d1hsak45MWpKZUFRaU5BeFpTV2lyYjdMdUlHdEZqUVg1VklhRXZrdlE4eG1sV2JpamIwNm1TbGZvNzhKbVNKYkVaR1JpYXlHUmtaR1Q4djlLV3hTaW1hcGxubWpuMjBrc2pRKzk3YnBqUkl3OUlJcmxGTFRsblNTNGpRV3VMR3YrTTM2Y2pxZWlJYmlmRlJRcnZZdnBESHNvYkNhazB2aml6TEpMUzliUHRadGI0d0svdTFrTjVuT2NCclJrYkcreENaeUdaa1pHUThaRVFKWjFqOWNibGNoOVhSZStYN2NvemJ4Zi9RY3NCdzh2bnZoM1d6eHpwQ2Z0dytEenI3eUVxWmtaSHh2c1hKc1ZjeU1qSXlNbjVtNk52Q3Jnb2tqOHVBZFN6dVErckNpdG1CRUJZMnB3K0NQcG04M3ptT0NuT1BubWZ0Y2NmYkNFZms5TEFaR2U5M1pDS2JrWkdSOFJEUVp2dUtmNnNqamwwZFJXdFR3QjVEMm83bmtLc2tjQjBwZkE4UzJWNTJzMlV5ZXRScDdFUUphajhON3dwV2JYNTdWK3c1aVdVeW01SHhma1ltc2hrWkdSbS9nTkJMWmdCSEhibmFMY2NkdmZwOVZTamFRVmd2TWIxZmVjS2RMNVd0VlBVRU10c1BLbmJTVS9SdllvMHhSa1pHeHZzUTJVWTJJeU1qNHlGaDJiVGcvclJzV1dvYnVtUHVQNGl2azg0R09DRTk3VHZDTVJjK0t1UzluNG5BTzhXeXBEZFQyWXlNakV4a016SXlNbjVCc1NxRlhaWFNRbGhrdVlMakphamRkbjFrMUg5d3k0S1RTZVQ2OHg0blZlNGJDNnhlNXdHRXdoa1pHZThiNVBFZ0l5TWo0MkZnWFZTQyswWWhXSmJJTG1XOGF2Yy9rY2oyZmhlOXhqTDNuYU5OS0hzc0V6N1JoT0RZWGRZZmRKeERXWjY5TWpMZTk4ZzJzaGtaR1JrUEMrdENWY21hN1dzSW14enorN3U2M3M4U0R5b21XVWRjZjU3M25aR1I4VWdoUzJRek1qSXlIaForRmxMR2t5U3lSNjZqZjJhbUJSa1pHUmsvRDJRaW01R1JrWkdSa1pHUjhVamlwK1ZLbXBHUmtaR1JrWkdSa2ZGelJTYXlHUmtaR1JrWkdSa1pqeVF5a2MzSXlNakl5TWpJeUhna2tZbHNSa1pHUmtaR1JrYkdJNGxNWkRNeU1qSXlNakl5TWg1SlpDS2JrWkdSa1pHUmtaSHhTQ0lUMll5TWpJeU1qSXlNakVjU21jaG1aR1JrWkdSa1pHUThrc2hFTmlNakl5TWpJeU1qNDVGRUpySVpHUmtaR1JrWkdSbVBKREtSemNqSXlNakl5TWpJZUNTUmlXeEdSa1pHUmtaR1JzWWppVXhrTXpJeU1qSXlNakl5SGtuWWgzMEQ3M2VvM3QvUy9iVzZ2Z2hyanhFZUJXaFc3ejhqNDZlSGQ3TVdmNC90VUsxOEYxRHZRUllRKzI4NGV0N2xIZDd4N2F3L3ROZi9WTnFnZUZRR2o0eU1qSXo3SWhQWmh3Z0ZEQWRRMTRERTZjYllFdWZpTERNY2phaXFPU2lIU3BPUmtqUjFDd1FGb2s2ZWs5UUpzNTBDUW9qblBPbDRrZmc1Q1ZxRFVnb0o3UVUxU2lsQzZFM1k2WHhhTDI3SytkVVRIMGNNTWhuT1dJVUcxV3N2NzRhY3FiQkVSQlVLNloxQWdLSW9DSGk4YzczakZwZldHSlJUcURXVVVxVi80Y2dpVkhXbFY0S25qazFlcDR2MmRsY2F5bkpJTlorRHhQczA2WGxGQklWZ2VnZUVkR1B0YWFTOTBlT2VIektoemNqSWVPU1IxK1lQRVFwb09aMVdnTElFS1FsaWtJNDVlc0NsTXNSamlCT3dwRi9qcEt6ZmZjbkpVcDJqOTZ2UU9oTFU5aE9DUS9ENGpwQzI1elVZWXdnaEVLZlZRSkNqWkhSOTQxczMrYTRjbTF0dVJrZGs3N09hNnphR1Jaa2FmbGtNY1hXRElCaHRHQXdHaUFpemViVjBCbXNzeGhnUWhmY2VIendLaGNXbVBxa0l5SkhTcE41cTBBUUVCVFE0TkFxUEorQnh5dmY2KzNwc2JHd0FNSmxNRnIrTmhqU3o2WktHSm5SRVZpOVhpVnJ0ZTVuSVptUmsvSElnMDRHSENBVU1TMmdhRU5IQUNFK0JVU09zS2FsY0V0VXFqOGFoOENpSjA1WkdkMUlYVVlHRkN2SGRsR0R1UTJXZHVCTzJlaFFOSUtna2dZVW9MV29sVVZvcElLQ1VJSkYyZzRvU1hLMmhTbytZa2ZIdXNTS1JoV1BhMGxFQzIwSVZHaFdFNEtVbm9kV1V1bUE4MktDYVZaM1VOa3BzZGZlOXBPRHk3a1dzdFl3SFl3YmpBYU55aEM0MGhTNElLb0FuRXRZbU1LdG5WTk9LZTVON3pDZHpaczJNQSs0dCtnb0toY0hqY2RSNEFwdWpNZnV6QXlBZ2dDME5RUVZDNDBIQUNDdEVkbzBrZHIzOTBrcmRaR1JrWkR5YXlFVDJJYU8wQlkwVFlNREY4MDl5Y09CeDNxQjFRZDAwRE1vQ1ZKVElhZ0pLUUVtU1FnRkJCTkVQL2dyMWZlYXh3V0FRcnhNQzNudWFwcUYyTlE0SE9CUnpJcUZ0Sjg0RmlXMGxzUXVwY2tLYVdJMEI1OGt0TU9NOW9FOW1XMDNETWRKSE9LcUM2TEZBaFdKUWpGRk84RUhRR0F3V2cyRmI3WEJ1OXp6blQxL2c0dmxMWExwd21kM2RYYWFIOTFBcWFpcGFiWVdJZEoraUtEcnRCU3o2a1hPT0VBTHo2WXlidDkvbXg2Ky94cHR2MytDZU84QlI0YUtzbGpsekFnNVBRTFFReE5HcVpiUlJTQ1gwbmo1MnBlNFoxMmcyTXBITnlNajRKVU1tc2c4VkdpaXdlc1FMejMyTWYvYlAvak0ydHk0Z0RCaVVHNkF0OCtsaElyS0NJcUJiSXBza3MxNzhnMTllQlhCaGpkcHhnYXFxRUpGdThxM3Jtdmw4VGwzWE9EZm5sVy8vSFRkdjNlREhQLzRSYjc3MUpvNG9ZdDBZakJpT1N1N2R1NHZRSURpRUt0cmI5czUvMzhhWFcyZkdpZWhMSG51bU04ZWgzNTVVK2hqRlFBOXBLb2RHWTdCc3NzWHVlSmVQdlBBeGRqZDJPYnQxbnUzaE5nVWxoRWh4bFJLR28yaUtFRUlnaE5EOURWRXpNWi9QNDZWNjVqZ3Q2ZFVvZk9NcHRJWkM0WFhnM215ZjE5Kzh6dmRlK3g2djMzeWRQYmxMUllXandlUHcrUGg4N1ZyV3JYbWVrNTViVG5Za3pjakl5SGpVa0oyOUhpbzBpaElYREZXbDJEMTFCV08yMkx0WDRScUZLRUg4QUZSSnRIb0xLTkZFQVd6cjlIRXlrVDNaOWk2QWQ5SGJTOVRhY2xoc2RkK0RlSUlYL0piRHUwQ1FpcWVmZmc1VWcvZWVlL2YyZVBYVkgvS05iMzZkcjMzdGI3aTl0OGRpeHRXQVpUQlFHQU0rTkRRTitQdk5vNDlXaUlhTWg0RStjWDBISkZiMXY0dkZCSTBuWUNrcEtYankzRFUrL1B4SCtNRGp6OUljZXNaMnpJYmRvbFFseW1uRUN5RTVaTTRPcGdRbGFGR0loa0pickxVVTJvSlJuTmsrU3hNY3ZuYlV2aUUwMFRKV1MzVDcyalFiK01iajV3NmxQYWVMVSt3OHRzTUhIbitHbWFyNThadXY4cDNYdnNOM3JuK2JHZE5vZVN0UnFydlFlTEJNWXU5RFprKzBOTWpJeU1oNHhKQWxzZzhWQldXeFM5MFVQSDcxT2Y3RnYvanZhVnhCVlJrMk4wN2pnK0NiUkRTVFdZRm1JWkhWUUFqdGhQYUFDRFVuMmRKNkx5Z2xTNzh2dm5za3pCQnhLS1V3VnFHMTRIek5iSFpBVlIveXYvNXYvek8zYnQvZ3JWdXY0WmtETmRFVUliQmtWZkJPdk02V1dtcGZvWnJ4dnNjSkpnTnR1UWc0c0hCSUxCa0JtaEZqbm4vbU9UN3hvVS93eE9VbkNaVmlldmVRMCtPejBLUnUwb0FKbGdLTDFjbjVTMGNiV0h5MEp4Y25OS0hwYkdQeEVGVEFZQkF0VVpKckZWYlpLSkdkMVJnaUNSYmo4Y1pUVTFPcGhsclZxQ0VjMVB1OHRmYzJQM2pqKzN6LzFSK3dIL1lJQkliRmlQMW1yMmQ3SHRZVFd1bC9kRnBXeHY0Y2t1MXRSa1pHeHFNS0EveFhEL3NtM3I4dytLQkFsWnc2Zllrdi9kYS9ndzhsMW13d0dHNHlPYXpScGdTbFVkaGtDMmhRV0JRRllGR2lvcU1WeGRvU3NiUW1ET3RLclF4S0daUXExcGZFRWl5SVJzUWdvaEF4Z0lGZ2tXQ1JZRkNVYURWQUtRc1M3L0ZMWC93eWx5OWZRV0U1M0o4eXJ4dmFlRU45dTlvT0p4RmF0ZTVMbm9ZeldFOWtWMGlzVG9ZREJvM0dVbEF5Wm91UFBmWUpmdmR6LzRSUHZ2eHI3SlM3VkhzTnpHRzczRVVxUVRVS0xhWWpzQ3BBMHpUUnhLYXE4WTFIZ3FCRm81WEdhb3RXOFVxRkxTaE1nVFcyK3gwUDNubEM0eWhWRWRWaUFrRUNJYWtvQ2wwd0tFcENIUW5ydWQxelhMMzRHQmZQWEtLc0MrYUhEVldZSTBpS2h0REc4T285OE5xK3BMb29DOUY5TGNzeU1qSXlIbTFrSXZ0UUVkWHRZTm5aT2NkbmYrT0xHRDNDTzRYM0dxMXR0S3REcFhpd2JXektORVBKSWk3bFloSTd2b3htQmpvNW9rU25GTldhSHFUdkVwSURXVWhtQ2FLNjdmRU85T0s3S0xRVUdJWm9TZ2lHNEF5aGllVFk2aUZONVRsejZod2YvZkFuK01pSFAwcWhCMXgvOVNjRUZJWUJTbW5LUVluejBRNjRLQXpXcWlRSlBxbnVNcEhOV0VZYmlhdVAwWENBZHg2RHhXS3dGSmhrUkhCNTR3bitvOS85ajNuMnlnYzVQVHlOYlFwTVUxS0dra0lHYUs5UlhxTkVSZE1Ca2cyczhtQUViUTNXV0xUUm9CSVJsWUFQUGtZNFVKRXF0ditDaE81dnBSVktLNUNBS0UvUUVxT1BhSWt4bTBVSUxtQkVvNFBHendQR0djNXVudWVKQzA5eXBqaERtTUplY3dlTDdSNjhMSWY0a09JWFdCc0RSUy9YMGdxUmhkeUhNakl5SG1Wa0l2dFFrVHl1bFdWMzl5eWYvL3lYVVdwQUNDcEpOUmRpRlpVbW14VGdpallNdStwVTYvSkFwZTUwcnF0cGY5VGk5K08ybzlFaFNvWmJpUzJZUlltS0U2c1h2QmMyeHR0Y3ZmSWtseTg5eHVGZXhhMTd0d2tFbkc4WURUZXdwcUN1YTBJSWpFWUZUWE9TMlVBbXNoa0xxRFhDZlFTOEV3b0tOb3R0aWpBQU5KdHM4U3N2Zm9vdmYvYjMyQXFuMlpKdGhtcEVLUU9NTjJodlVFR2p4YVJNSUdtNUdFT0dJQ29nNlcrVXBCQjRpYUwyeTlYUHluYVZJa0VIN2VNNWthNDNxM1RWNEVFSGd6U2dhc1ZBRGRrdWR6ZzEydVhzcVRPTWhnTnUzSGtUQ0JTVU5MNEJFY1liV3pUejZacWFpbVBIZ3NobTA1eU1qSXhIRzluWjY2R2lkZFpJQ1ErVUErWHA3RkdWNmlVd1NHR3NGR2hKcWtRRjkwMjV0VFpHUU92MTBZK3ZxZU0xK2lVcjVlcjJMc0ZCajBWSS96S2FhdFpnN0JpTlJZbm53cmxUbk5xOXlNN1dKYjcyemIvZ3o3NzYveklQOTVqTkhUdGJtOHlyT1NMUmZoR2FCNm5ValBjUlZHODlJKzM2S24xWHlaQmdvRWE0SnFEUVhDd3U4K2xmK1F3dlBQZEJ0dlF1eWcwby9SQXRJQzZHdC9LU0VoUm9TVnFNUUZBdDZVdFNWWlVjTDBQUnU2UXNsYXRZM2U1MXdLdlFSVnNRaWFHMFJBUVZGRXFnd0dCMFFlRU5WZE1nenFNOTdKZ2R5dDJDWXNzd0hBNzUraXRmNDY3Y1pVQUJES2dPcDhUaFBZVTFXSkpVWi9LYWtaSHh5NE1za1gyb1VHa21OcHphUGNkdmZ2NjNVV29RelFvb0VmVEMwWXVBUWxMRWd1U0FwV0pJcmlnWm91ZnMwU3VSeFhkV1MrbmwvM24zcGU3a3d1bWNMWXRWQzBiUk5DN0dvaFhENUhES2ZGNVRGbVBPbmJ2QXRXdFBnZks4OXRxcnVCQnd0VXZIQlVJUUpKeVFoMzVKT3B6eGZrVk1qZHo3SVRVSmxleGhTd1lJQ29QbDZ2aEpQdmVydjhuSFgvd2tBemE0KzhZK08rVXBUTEFvMFVnSUJHbmJjTlNDU09vL0hRVlZQU21tV2lqcFVlMitpM0wxczNaN2Q2NzBlNUxUNm1US1l6QllZeWgwZ1JJd1FTTXU0S3FHMlh5R0tSWFhubnlTb1M2NStkYXRtRklYUjBBWUZDVk5HNVZFTFZkUjIyK1BJOTBaR1JrWmp3cXlSUGFob3hWaEprTGFRZ2txTERKd2RaUk5CWlMwaExZL0VSMlh3VXNkOC92cTl2WmUrdVc2ZTEzWnJobzBEZTIwdjdERmpSZ1BoNGp6ZU9jWkZtTzBqaDdnZ3FFMEczeitjNytGS1JYLzVpdi9Ed2V6dTVGeTZDSE96N0hXNHB3N2djeG15VkpHUk93YjdSK3RNMkcwSFRVVXZIRGhRM3p4MDcvTnRRdFBzZmYyUGR6VWNXYmpmRXhRSUZXeUc0L2UvOUhXTmkweVZ6TWpKOC8vRnV1U0tiL3ptMjdEMGkwOXhSS2NyeEU4Rmt0UkdFelJMaEFiQ3FjWW1TME9ieC95MHVNZlpGeU8rY08vK1FxZVc1U01PV3dPTVdqOG10VFFiZEtTVEdNek1qSWVkV1NKN0VPRjZpSVNuTjQ5enhjKy96dG9SbmhuMEtwRU1HbS9hRStuOFNpSmtzOVdJdHM1WTcwWEc5a0h2WHNsS0ZXamxLTXprMUN0am5keEhlY2NXbXVHZ3hIR0dLcXF3ZnVBTFN6bHlITDV5a1dDRjM3NGd4OFM4QVJwQTNNSklpZEpaVFBlNzFEcXFIVk5UUFFhWGJvMGhnOC84VkYrNDVPZjUvRnpUK0FtZ1RDQmtkbGdYSTZvWElOVEhpZU9vRlA3MVlxZ0hJS2svaGFkTFpVazIzUkpEcGlZWHY5N2dIdHZ5M1MrbG8zcm5nRFZhRVVJQWVlYTJDK1VCeDJpYVlPR1Fodm1reGxLTkRzN080eEdRKzdldk1NOXVjZkN0UXk2U0FZcjE4N0l5TWg0MUpFbHNnOFpxblhvNnRMT3RtRjBWRXBGRzZGNzhSN2JWTFh2allZdXpyekF1NVhJT2xBTm5RMXRhSE5uUWh2MnkzbVBVZ2F0TmQ3N2xCSE1NUndPR1c4VzNKbmNZMmY3TkovNjFHZTRkN0RQbi8vbEgrRlRXdHNZSTVlRkZVRkd4Z3JDa2FiYVNtTU5Hc09MVDc3RXh6NzBDUzVkdU1MKzdRbHFvamkvYzRraFkrN3MzMGJHUXFOcThBR2x3QnFEaUk5Uk83ekhLSjJ5NlNrUWs5WnBVU01TVkRTdzZkQkZBRG1tLzZ6WmJuemI1Mk5FaEdndnU5RFFLS01RNXhIeE9QSFVYaEFuS0MwWU1UQ3huQm1mNWM3a0ZvandvV2MvUkJVcS91MC8vRnNNY3lZY0pwZXlCSFhrRmpJeU1qSWVhV1FpK3dzRERkS0crdEZvMFhpSUpnVEoxbFZKNnhnQ2NpUy8vQW5uN2RBbm9pcUcza3JtREZyQW8xTXA2S0FJaW03QzFrajhYV0tnZDMyRVhMYk9hZTAxbytweU9DeHhMdEEwVVgxclRVbFJqbkYxdysyMzl4bnRiREk1Mk9QS3hXdDg0Yk8vdzFzMzN1SjdyMzRMZ3hCVVdPU1diM0dzV2V6NjFKdHJkMWNzNmt6MTYyOWRQZmF5SjYyOURiMnlMOHYzZThTVWQ4MytTMWhzVnlmdWQ5ejFsMDFIMXNXYStHbGFGeCtOSGJHbURsT2JYVDFtK2JnSHZQaFMwSCtkSkxFRkJXTktTdjdKYi95N1dEOGdITURPOEJSS2ErYVRLUTdIeHRhWUtaUEZ5VklLV1JTSWp5bG5qYkhkK1Z1VG5oaVdUcWUrc2VpSEN6T2ZYb0lDV1pnR0FlaWdVOWk3bEptUFJVSVRMVG81ZmZtNEpzUlR1d2JSb0sxQktZMTJIdThidE5ZVXVrU2o4ZFdjMDF0bnFLall2MzJQRDF4NW5zWTcvczIzL3dpTnhTL1p5ZE0xZ0RiQlN2dC82UDNmeDdIdmFOM2lVbGEycnhtYlZPOGFmWk9RKzUxdTNhV2wvK1hkb2h1cjd0Y2YxdlMvQjdqbk5ZZS9wektpSHovNHVIRWlPanF1Ny8vdjFUenJ1REV6NGtISG5XUDNPKzVkcjlsNWRkZmxYZHJ4OFRpVHUrVnk2ZGlmMmdDVzhkTkNOaTE0cUdoN2hHVjc1eEpmK1B6dm9SZ1RYSUdXUVJvb1BkSHoyQ0hKRmpXSVFvZ09LcWpvQktZUVNHcFFrVTVjaEdzOHdZTjNnZEtPcU9ZTmlHWTQyS1J4VGN6ekhnTGlpWUhkSFNBR1RZR2lnR0FvaXlGVzJ4akVQWmtKS0JHOGN5QW1KczhWZzZCUndiQ1FMSU52SEJJQ1dvRk9YamtTUEZxQnRaWkJNV0s2UDBkUmNQN01CUzZkdjhTZmYvWFBHTnFTT3N4UnVPaFQwLzkwVmFkUlJzV0VEZEs2c0N4YzBMb2hmdTN4SmhKdm85TGZCU2dMbFBIdkxnRkZRR3V3UmR5MUhiaWl6TnlnOVJDRlFTbUZ0aDVUeE5OSjc3cXFJSTN0R21OTEpNU29FMXJySkJsYjNOemkvdnQvMGYwVjMzWDdHSHBwci9pN1hpcDFPcE1sRXFHV1JGaWxNVlpGNTZiVnVua0hpTyt1SkhpM3VCY1ZKYUV0S2V3K1FPdHd0S3h6ZUk5UW9NWjBmb1pETThSSXdZQXhtK3p3ei8vcGY4cTJuR0xrdHloOGdUU1N1S1VndXFFSkZSNlBRbUZFb1FKb3B4QW42R0JpOWkyeHVNWWpIb3dwTUxZa2lOQzRFUHVVSGlFdTlqTWYwb1NubzhRVTNkcXdCMEx0a2NwVFVySmh4eGh2cUtkek1EV21VRmhsRUI5QUZJVXQwY3JRQkVjd0NwK3lod1VSQklNV2d3a0RKQWcrVkpoQzQrZU8yYVJoWEd5ek9kakJCY0FyM2p4OGkrRjRRQlhtRkZ1VzROSUNzOVFvTHhoc1NoU2hhTitlU1cycy80Nk9Oby9rWmFmYmR5enJkMVltZXVSMXNXNFZodEI5QzcyVHhyUXJHaE43VkdydGN1U2NpamE0WDJ2Wm9WbHV4TDJQMHNkL3VxZU9DVExvcnR4ZWZUR1c5UHRkV3V2RXgxOXpkWTY1bStVZTJmYlM1ZVZvYTU1dDBrbldsZEs3WmtHQm9VaXVqZkhjYmNvUG8xclR0RGFUMityb2NIUVordTdRaGxsczMrYlIram9helR4cEc5TS9hdzFLU1d4R3ZiclR2Yjk3RmJqOFdXMlU2WFZiclRCR1UyaWR4dHIyaVJjZjZkNkdUcWVMWld4L3BMb2s5WXoySnVUb1M4MzRoVUNXeVA2aVFSSXBVNjNFdExVOWJWV083WDZSa2hpQnhjcnhLTWJqTWQ0TElRU1VqZHFacndBQUlBQkpSRUZVVWhSRkVaTXNLS0cwQnUrcVJHNFUxaXdHbWJialZrMUZWYzhKd2FHVVVKUUdvM1FNN2g3U1JIYWlSSGdaZldtTUVzM2szcHhodVlrS1VLaVMwOXNYK0xVUGZZYS8rZGFmb05ISHl3djYxMVFCclhXcU8ra0crazVtMmZMNnRTdnBaSGNvc1U2UjltanA2anVFa0FnK25mMmlBclF4aEtBUkNRaU9wWnk3dllGT1dnR2RYblEzd2JQc2c3TmNoNnMxR3QvR1FzSWFzUzY5YUN1SmpxV3hCZDU3bklUT1FWQVRnL2VMVStqRlhOYzFyM1dKS0ZTYUZFVWsyV3c2bkhNc0RnK0w4RmRLOTA3V2U4Z2p0cXp2SFZMSEUxbWpDYzZ4eTJrYzhQdS8vdTlUVmtQS1lyQ0lTaUErclhjY3Zvc1lZRklBZ1hqUGJhbFQrd28rc0RIZVJFUTRuQnpnbkdNd0tDZ0dGdThGMFdETG1MM0xhMDhUNWxUTzB6UXpQSTVxV25ONmQ1ZnR6VzNjckthNk44ZFZOY055ZzUyZExXNVBidUNwTVpTSTB5Z3hlTkdZMGpBY2pKbTRTVm9VUlVtdWtkYnN5S0JFMFhpUE1ncE5TYWxLckM4eHZ1RDA4RHhQWDNxRzc3LzVmZDZldmdrV21xbnI2cTJ1UTZJaGxwaGtwYzBSNWpzemhMYUdsbDdkQ25Ib2ExK09mNm1wTmV0SUlRd0tHNFJnaUlTNzE2alhIcjZHYzNYeU1sRUVIU1hrblFSOHFWVEgvSjZvbkVwRUpVbW5GMk5FZXYvaWo5eVQ3clhqUHZsYTdZdjk4YWJkSHRkMkNxTXNXZ1dFRU1scFVvNjFwakx0bTJxSi9tcnBpZnQ3MnNnem9mZXUwcmdnbmF5LzJ4YVdudWFuSVU3c1U5WDdTM2NYZTJpRWtCTGhMTkMvdS9aOXRBdVdkWm8xWlJVRVdVU29ESXM2Q1VCaEN3QzhDQ0VrdlVueTRWaVdTSytXNy9TSk1uNFJrSW5zSTQvK1FOSWZZV01YbkV3TzhkNWpyYVZtRWlNQmVJK2JIeEI4UTJrVGFUWlJUaEF6ZmpsQ21DRkJZVW9vaW9MQllCc0l6R1l6WnZNcFNndkZvSWhTcFBlQXVuYWNQcjNMdllNOWdoTTJON2Y1OHBkL2wrLys4RnZjbmh3UUV5MGNIN2xBVXVZaVNhTllsRXRJdDN0TDFKUmFESVlCdFJnaDI1Vjk4UEVQMFNuYldWUTZlZGVlUDU2bmk1eXJZbnBmTHhVZ2FDdm9KSWtWV1FpcnJDbVpUV3NRaTBqQWh4aEtyU3dzSVFRYXYzNFJzcXJtWFZWNFFUdFJyampEcGZ0czc3ZDJGUURHR0FwalVjcEVFdXFqZzU2a3gxNnEwMzR6MGpFc0ZUMlAvbUtRaG8wZ2hNYjNkb1p1WWJBcTdKRkZjZnl5NndFZ1lBYmdKb0V0czhuTXovbms0Ny9LU3krOFJKaXFCU040UUNpanFKSlpqTGFLamRFdzlxVjZ6bUUxd1JZRG5QS0VKdUNvUVFkVUNjWElNQ3hMUmpKa05wMXc5ODVOVktQWkhHd3lLa2RNcW52TUQ2WnNiQTBKNHJEQm9JeEJuTUg3Z0RReDk1Mk9jMjVjYXJhTHFMQ3dueGVsQ1Q3S2w5cjB1YjcyYkpWakhyL3dPQjk4NW9Qcy9lTk5Dak5tMWt6QnBIV0dpKzlpbm1JMVMvZG1UaUt0L2UvaDZOL3JlSkZLVEZVQkV1UDAxaVJDdGtKaTR5bkMrcTdlTFpKaSsyemJrTzdZV2xxTXZvdlNBNzV0cTBmYTY2S0Y5dTlwVlpQUWw2ZTJmWGJKM0tGZEU2ZTlKWDN4M2VxMlZ3ZDl5U01xTWR1VjdiMlZoUWk0MEtCeEtLV1MvQ05ldUkwY0kyRzF0N1gzcXRhK3JuZVA1Zk92bmpNcFM3cHllZEVUd0tiblRFS0M5cmxDN3ptN1F2V2FTL3Q3TFl2NlRmMURhNkxXVUNscTE4VEZ3U3BEVHJmcy9lSzRvL2ZmdnRHVk9VNk8rVHZqb1NFVDJWOXFCQVpEZ3doc2JBNDVPTGpINXVhQU91V0oxem9TM0Ric2tFak12UjRrUk5LbmhhM05IZTdldmMydE8zT0dneEZiVzF0c2JZK29hMGRkMTlpK1NPOEJVQlFGWlRuRU9VYzFqeFQwaWNlZjVzTXZmNFEvK3NzM2FKWGhYWUNHMVlHak53S3BaUE8wVUxSSGZ0b09nb3ZCVkNJeFUyRXhCa3VJNGowSkhRMzJTTlNLOWdmQmRzNFdnL01lOENtV2FWcnh0eGVSS0RWeDRsQVVqSWViS0tXWXp3NHdSdU9ibXBZdUh5ZFZiY2RmU1VOcE55R2tzWCtKaU12SzRlazNZelhlQmJ6M01lMXZrcmNaWGFDMXBuYk5tc0Y0TVhCYlhlREZFMEpraE9LSnNVa1Rqcno5VmJYYm90SlpVSTkrUHJxRmplaURRQnZ3VTdBWThJWnR2Y1BuUHZ0NW1zWXpzaHVFNXFTWlprVUt2bVpYclRYemFrcFFnZUd3QkF1elprSWdNTndaVUZ0UHdOR0Vpc2JYVE9vSis3ZnZzSDl2ajhsa3duZzQ0dlR1S1M2Y09jZldjQnNWaENyTTBBUExhSHVJdUVDb0lxMGEyZ0ZXbDFSVkU4bHpjR2dMSWxIdDJVcUsrM2RkRmtPODkwaFFhR1ZRRGlvM3h3OGN3NDJTRjU5NGx1Lys2QlZ1VjIvSDVwSUlqemJndk1SRlJ4OTkwc1RLMy8xOSt2VVg2RGZXbFgxNjdMUDMrMG5yaS83YTV3aXBUdGZveWROWExyNWMzcGRucktxSXUrZGVKdWNpQzNPR2hVV3FKcXpydnkyeFgrMlhxK0xiN3FOWEhyd3Z5azJyYjZVVzRscEpiQzlGZEFsSVJ3YlhqNC90c3l5V3d6L2QrTUY5MXRuektlaEpVV1cxSGJVYi9PSStRcnIvZmgxM2h5UU5CQ1R0V21wUHhoUnhyU0M5VVRLRW1HbzlXb2N2MEY5YzlNZE5XVFRQeGUwY2xkQXUzWGZHTHhReWtYM1VJVHAxeUtUTzdXZnJJdEM0Q3FVQ3pnZmV1UEY5enAwN1JWRmFsQWtNQndWdVBvL09KY0VSMGpKWUtZVTJVZUo0T0pzeEhCZHNiRzRpb3FpcVE1cEdLT3lRalkwUjFheCtUN2RmR0V0VDFhaGt3eG1jMERTQlQzM3FNL3psVi8rWVdaZ1JwU2lyS3VvNEtKdjAyTXZqUzV2Q04xclp0ZW80M1pIWlpMT24zQm9KMFBJczNrbDhWVnpwSzYyUzFGb2hFaGdNQ3FxbVdwcVpyUWF0QzVBQzhTbVZSYVdvcEVLakVkOUV0YTVWMUc1NXFGeEtHYW9XNnZxdVpMbGMrclNWc0tJVE05cEFNQ2gwcHpLWG9BaEJzQXk3ZWxwZ0ViZ3BOTkdHZEtDSEdHTUl3ZUc5aitZcFdoYXF3ZFZKNnNoTUJJdlV4VkhCdkxERmVFQWlLOUV1ZGlaekJtcUFGODhYdi9BbE5rYWJxSXE0MEtKZ2xiQjJoNnRGZDlHcmJTaHRxTDFqdURFRUxVeXJDYlBwRkcxZ09CNmlocG8zOTkvZ2gyLzhnRmUrOHdwdlRtOGdLUm1CUlZORUZ0cTk5elBtRk05ZmU1NG5IM3VTclkxdGltQTVWWnhDbkVEalFNTkFnOWFLZ1Mxd0t1QWtZTVF2dUtJUU00cWxQcUJzaVpNYTUyQ2dGVVpyakZmNEtoQ1U1OExPZVY1KzZpWCs3ZmYraUUyMXdkUlhCQUtEMFFnM254dzFoQldkSnZkMmRqZUxpbGtsZkVFblNab0M1ZEZoc1UrUTJBc2xPYkRGTnVxUEV1WDBIbHYwdFE2aHZjN3F3cWpINmJ6U3lER21BOUYvd0t6OVBaWnV5WXhHVnZzUkxKc0w5VVI1VVgrMVFzaFZ2K0gzand0Z0ROckVzVFZLRHoxYUxNcFpWSWkyd0Vja2Z5Y2dMdFE5eWpZTEdpbTkxN2JZc1ljVkV4Qkp2NzBuY3RaZlBJUVZTVDNMNy9ySVFrZjNGZ3hSZ3FxVndxSXcwaTVSVXJZN0Z2YlNvUnYvQWQ5YXNhWnRYY3NKQ0JxRGpSbjBkQ0RnRStsbnNkaGZYY2pJZmNwamRzOTR1TWhFOXBjV2NWQVpqVW9tMHoxKzhNTWY4ai8rVC84RGRYUEl2RHBnTm90bUJ1UGhCa29rU2R5aWV0eGFqYlVXWXdxZWUvWkZucnIyTEI5NDVrVjJ0cytodE1GWVVEcmdmUXE5OVI0VXhkNEwwK21jb2hoUUZBVSt6SmxORDNqcThhZTVmT2x4ZnZER1hUU0dRT2lFRG4yMGFxaTRpbS9kVlZvTFdRTUVsTGh1WDRWTkVsY0xBcGE2TjhBcUZrUXJmdmRwZ0ZicE9scWx5VDJocXF2dTd4aUNWS05EaVlodDZRd0dqWlVDVDVRY2pvY2JITXp2TUI0TU85Vi85ODdnNkdTd1RtSzBLaVhyRDdnOXFYQm8yb0crclplMnBwYmNTM29uU0l1WlZCWXhmZ1F1T0h4U1UrcDBIUnRNdXB4SGl5d0xYOWVvalNPQmFPOWp4UlRtQWFDQWFsb3pWbU84S0Y2ODhnTFBQLzBDTktDVnhibUFWVWZiWmdBV1l1M2pFVlRBK1pxQk1UaHhORkl4M0M0WmpFcmVlUE1OdnZsMzMrVHJyMzZOaVJ4U1VhR0F3aFFZbzZpYk9aTVEzNjNGTWxBRDN2SnZjdXY3Yi9HMTcvOHRuL2p3Si9qNGl4L0gxNDdCZUlDcU5VM2xDZldNZ1JtaXRVYTNZYjZDU282QkhpMktmZ2pwRU9JZktubEVhcTBaVXFCRm1EbVBxWVZuTHovRHQ3NzM5MHhsUm9Vam9HaGNJRG85OVNTUEhYdHNIWkowcjVucFpMNnpMSUR0bGdrUzJVRzdqK24xczBCMGFvek9hdW1hNjBoajcvMGNrY2IyU1ZGWXRGMkpxcVAwREVmTEpMZEwrNitXRm92cmlIUFhkVmI3VnJyV1FnTGNmZzhzWlUzckU5NTBFcFd1cDUyc1pBdU9JOVVneGRsb25hK2lrMUdzK1Q1RmpFdmNTSGZiWlkzRDRWek00N2FvS2dWS280eEdsS0pPbXArbGNhUXZNWDV2bG1HOUIxOURZbGZMYm94YXZML1NEQk9SRDExVjlwMnQwdkliblp3U0Y5cTJPRzdWSExXeGpUWFY0SWprbGFDU0xVdnJGaDJpVktPejFWbnpTS3NDL3ZTWUMybHhhNkt4ems4aDQrZU5UR1IvR2RCM2ZCSU5QWGVOMmZ5QUlEWE9UM2p0emU4U3FORFVDSTZoR2ZMMi90dkVUdG1xZUNPaGJiMTJmL2lUYjhNZkczYkhGM24rdVEvejJVOS9pWmMvOUhFVWhyZHZ2TTNPNXBuM2RPdEtLWnh6RklXaGFSb1FTMWtPZ1lZUHYvd3hmdkRHdDlPOTlWWFFQWnNzM3c1K0JxT0dHQVpvc1pBa2lvNDVVTks2T1N5SWJzeERyeEdVZU9LVWJCUDUxVWsrRWhnWEkrcFE0Znk4YzhaUXZUU2xNWElCeVprSWxKUkFnV2FBWmNUWnpVdWNQbjJHSng5N0RHVnFMbHphNXUyYlArWVB2dkovY2ppWm9iREhPeFVjUjFxN2h6LytvNUwvN1pBUnJTOTZKQjVEZGpaM3VIanVJcnM3cHpsLy9rSVg1MWZGdEZWUlRTY09FV0UybTNCd3NNK2R1N2ZZMzk5ak9wMHlxeWJNbVJNa1VGRFMwQkJ3YUJxUUVLVnhxNUlZaU5LWHppdmp1SWQ2TjRqaHRnYU1hUEQ4MmljL2czYWF3Z3lvSnpVanU5RUxvUHJ1RU5La2JFdk53ZlNBWUJxS0RZTXE0ZldiMS9ucU4vNktiN3oxVGFaTWNEUmRlNW41S2ZpZWVoWHdOSGhwR0pvWWFXQlA5dmpLTjc3Q1Y3L3hsL3dIdi80Zjh2anU0NXpaUEl0VGdwdWtoQ0NCR0JIQ2FMUUtDN1dyTEp0QVZJMEhyVkZhRTN4Y2NCZ0ZwVGFJV0dhVGhuT2JaM254Nm92ODlldC9pNlVnNEhDTmkwUzJXNzlFdi9jaXhkK05TNDJZMnJldDY3NkpTOXVmSXIySXp4dFZ1ZTF6eHlnQThUaWRFdWNxQW9GR291cTNXOHNzT1lzdXlQS1N4R3hwbjliMzNhQW9XR1BnOG81Z0NjU1lJeTFCZERpaVkxQ1MzU1g1K2dJdDJlMldZZHIxbmdNSUZrUjF0ZGd1R1EyTFpONG10ZHNoSlJjNFEwbUJ4V0NVcGJRRnByQlliVkJHUjhkYWhPQThMbmhjM1VTN1R6eHo1dHpnVGVZMEhhRUtSQzJPT1BBRVNnbzhncGZvV0xaY3B5d1R0WGVORTRqcktycHhLYmFzOXYxWnJ4T1JqNy9HRnFNb0tTZ3huR0kzMW9zcHNkWlNtQUpyTFZyWnBCVXFFUkZxWDFNM2MrYnpLZE13WmNxRWhocU5wcVpoenB5R0pnbllVd3AwcmFuQ2ZMbjVyQW9OMWtoa1Qzck1qSWVEVEdSL3lhRzFZalFvMmRnc0NWVEFqRUFOVk16cVF3eWpOTVFLVWRYdUlvbEpxaGxOZ2RFajlxWTMrS3V2MytGSFAvb1J2L21GMS9qa0ozNmRNK2N2NDJaaFpaSjVkeWdLMDlrN1RROW4yRkt4dmJuTjdmMmY4TklMTC9Pdi91RC9RTkxRSDFqMTJvOFVVQ3ZOZUxqRnVOeGxhTGN3cWdTeFNBaFlDMjNraDJoamE1T3l5cUR3YUptbnRLTUdJU1p4aUJFT0FxSnFLajlsM2h3eW5lMHphMmJ4K2d2M2ZFUU00cVAxbk1Jd1lwdW5ubmllajczMEt6eno5RXVNQjV1VTVaRENDRGR2dmM2NXl4dTgrdG8yZi9MSGY4Zzh6Tk1FQ3AyVENEMXB5V3E1YmxEdHBEeHRFS1VZYktzTnByUTdPTU5qbDU3Z3VRKzh5R09YbjJCbmN5ZlpsV20wc2pSTlRGaGhsUWFqMFJKdzRpQTRQSUZDRytvd1J3dm9RcU1rY0h2dkx0ZGYvUkd2dlhXRHYvM3UxNGtXbm5WcVh3MktCbWtKYlgvQ1ZJQTBTUkxhRXRyM1lCK0xac1BzMEhqSFoxNytITnZsRnNOeWcvckFnVGVZZ1NIMGlLeW94WkxoeElSY3F0MG5VQTVMRHZiM01hV2lHQS80eDllK3h4Lyt5Ui95ZHZOV1M4c0l5bU9NaWRFclFzOHgwY0J3T0tDYVZqUStPdGkxZ2E0MG5vcUNQLy9iUDZWNTRkY1pQaldtTElkSXRmQ3FEaUYwRG9TNlV4a0xRYlhSQzJLcTJuSTRRQm1OYXh5K0RoVEdZbXhhdWpoaE9CN3cvQlBQODNldi96MUROTm9HRHQwaG5YVUhtbEtYalBXSWtScFFTa2taTERwWXRDd2liZmFWdDZLaUJLMUlXeU9SQ29ST3lxM1FZakU2RWlrWEdpb3E1a3lZTXFHbWlvNk9QVksxVnJlenp1d2hqVmdXeTNsem5pSWNQNDJKSE0vU0xKcVNkaG52Y0RocVBMVjJPT054MnJGZkhYU2tOclphU2Z1SDZDN1dKNFVDU01CaUtJa2g3d3dsRnNXQWdqRmp0dlFXcDdaMzJOcmFZc2R1c05XTUdJVG9XYTlTSE9QV1lVc3BkZVQrWXlybDJEWXEzVEFiMUJ6NktmY21oOXc3T09DZ09tRENoRGtWTlEwMUhrZERnNk9SK042VzZ2V25BWFZNSDE2U1pMYkV2ZzArRm5WVlEwYVVsQXdaTUdiRTdtQ2IzWTBkZHNmYmJKUkRkSWlaOUl3WXRFclo5Q0JLNG9uMi8rZ29USWdCUFFKZTZ2akVxdUhXL20ybTlZUzdoM2U0eXo1VDV1bDlCdXJnOGRobDg2aDE1Z2J0TmxuOGVhendJZU9oSUJQWmg0MmtFbFE5WTYxMnNJcWZKTVZTZllYYjhyNnR6VmZucWRwZmFpc0l3VEdiVDlBNEFqV0tHa25leXJFenBtNHBQYW1uSWtyWGFNTnpXU0J3ZSs5MS92ZC85Yi93eGh2WCtVLysrWC9PM3JSbU9wbXd0YlVWdmJsbjgrN2VqVm1XbEhUM3R4Ukd6R0UxQkZFTUIyTkVPdzRQNTVURmlFc1hyM0ptOHh5M0RsOUhZd2w0cklrRGo5RUdIenhheGJpZVd4dG4rUy8vaS84R0hVYTRTbEdhWVp4d2ZQdE0wcG4rUjlXeVJRblkwQ1NUaFVoaUVVMVFBZEdPb0N1Q21uUHp6aHY4dC8vZGY4M1dhSnVEMlNFS0dKWWo1clhEVUFLV3N4dG4rZmhIZjRXUHZ2eXJYRGg5bFVJMkNMNkk0WlFxanpld3ZYR2VVTmRvTldJV0FuNXBGbHpYTm81K1Z4Q2pKWGpwSm9OWUR0Q3BPMjhOZG5qeDJaZDQ4ZmtQY2UzcU5WU3dhREdvRklaS3U5YnJYVk1tVmIrV2dHK2trNTlwQ1FRZFVJMWdWS0lySWFBbGNHRTg0dEtMRi9ub1MvQjd2L2RQK2NIMUgvUEsvL2YzZlAvVjc3STNmUlBIbENqTGltbFZkYklrY0tFbGtERXVjcGRmOWo0U0lXTmluRjd2L1ZMYlVTaThiN0NVUFBmRTg0enNKaVlZMEpiOXd3Tk9qVTh6ODNYTEFCT0JscVY2RlVtNXVaSnhvUklQSWlrTWMrRHUvaDFHVzBOQzRYamoxdXY4MzMvNGZ5SEdVVE5MZE5RUkpNWlhYa282QU9CaFBxbVduaThRT3YxSFRjVlA2cmY0ODIvOEJkZXVQUTJpcWIyanF1WnNEcmRwTStDMkVUbUNJcWJKVlFwUjhYdFJGSVFRbzJGb3E2TTlkREx6YU1NOE5WUEhwVE5YT01WcDdyQlA3ZTVGWWF6M0tGRU1HSUFYZnVQam4rYXhNMWNaTWFaMEJhb0dLNmFMa0JDSURwSU9RVlEwSERBaHR0L1dCdEhyMENWODBNRml0WTFSTWxSQVNzL2Q1aTcvOGsvL0pXZkhPN3c5dVJXZGExUTgrNktPT3I0YVlTMDB5Wll6U1RzTExKZUs4L3orUjcvTXNDNjdkOWt2VjdHNjNRVERwdDVpT3AweWw0cnh1UTF1em00eUt4dWFRY08vL290L1RVbEpSUjNWK2NsbVBTaTFHSmZid0s2QU5iRStMSm9CQlNVRk8reHlzVGpIMWROWDJkM2N3WW9CRHpwb2hyN0FWZ3JySDB3UTRFeGdJd2liMm5GaEtKZ3RqZGVCdmNsZDNyanpObS9WYjNLWE8xUlloZ1JxMVRBTmswNUpZVVlhZnhoREYwYlRGVW5qNVR1SEtUUWgwUGtTS0JVZEpFTnl1R3BOSlV5S2JtdlNlS1ZTSFYzbUVwZnNCYzZmUGNmdTVoWW1hRUlkS0lMR1ZCcmxZbHN5b2xOb3ZJVnBCNUNXRlhIK2luMGlJTHFJeVhTMFo3TWNJeHRDT0Jlb3dweTl3MzNldW5PVFczS1RleHlpME15bEppQVliYWlsaVdaMnJZM0RDZWpyUGpNZUxqS1IvV1ZFNjlBQUxHYURWdnJsaVdsbDIzMGJXalY3aHhWcG9OSU5CQ0dHTXA4QmhoOWYvdzUvOWRVLzRhVm5QMFBacUM2MktOQU5paUVFOUJFMnRvcStlMGRTMGFPNzh1eXA4OXcrL0VsVTRSTUhYRHpKcGxlQlJCcUhMMUIrZ0pJQnlodTBHa0pRcUpDZVd3VjBtc0JVV3MwcmlVSGhZNjU3M1EyS1dqbUNOR2l4QkFVWHpqNkdwbUE2cXhqb0lVMm9xT3NhVGNHR1BzVkhYLzVWZnYxVG4rYmFZMDloL0pENUpORFVHc1F5TUVQd0hrUEF5eHdWRkRvVVFKbVV0VFYwNUdhTnRLUWRMUlZZVStCcVR3ck14Tzd3RktXTU9LeW1LRFRuUmhmNCtFYy93UXZQdnNpcDdiT3h4cG9ZMUY4RkU4dGtVOWdTV1MwTCtZSnBKL2gya3ZZaFJyVG9ZcTZ5S0ZXMHNieXpQK1dweXkvdzRsTWY0dWFkRzN6cmxiL21XOS8rR20vdXZVYkRIRTBGd1VkYlRxSTJlekRTMUQ0UTZ2dnJOUHR0cVU5UXROYllFRzJRbnovN0ltZDJ6bEl5d004REJRTkc1UkRYSEpXWlJNZS9SWHM3bmtMRWRqUGVHRktGT1UybytiTy8rVk84YmJqdGJnSlEwOURUemNmaWhFZnFURHdKU1NFZnFLaTV5ZHY4NmQvOUtiL3l3cWM0dlhXYXpkMU4zQ3c2cWxYVkRGRkNVREVoUWl0NUQwUmk1d0VrRXF6T0oxMlJKdjNZdDhyUzBvand6R01mNEcrdmY1MENTeDNtb0FVdDBZNjh4SExyalp0YzI3NUdLU1ZEVjZLckdIQmZod1dSRlpWY1p0TDRZa0xVWUhnZDhDcFpiN2JSRlVSalJlT2x3Qk53cW1IRGo5bGdSSmdHRElhRkd4dWQ2UUt3M0FkQ2lBd3BLS3dxTUdrdGNtSHpERnZ6QVJ2Vk1CNy9ib21zTHhqcmJleTBaR0JxMUlGbUpKdUlUTGk3ZnllTkNXM0NqM1JuT2h6VmpxUUFLRVppcng0eDRMSyt4T1h0SzF6Y3ZNaW0zbUNzUjVoS0V5cUJKbUNVcGxRRjJoczZHK1BXOFBrZGxzWkQ0UlNGZUx4NHRGWG9nV0dqMkdUMzNHbWVDSSt4NSs3eDQ5cy81bnA0RFMyT01VT2M4c3hkZ3orTWJTaEk2Qng5WWIwaytOZzJuUlpXcE9ZbUFid1BuUVRXb2lnWlVHQVJvby9Ba0FFWGh4ZTR2SDJaOC9vY1cycURZVkdpS2syb1BEaFBLU2FheDNoaVd3bzlyOFFVdVNPazhicTdVeFVRNVFoS0lxblZqcElDUkpBZ0JEMW1hN2pKcVRPN1RHYVgySmNKUDVpK3hsdmNpaEo1TDR3WklpVlVvY2I1MUwvWGFjV3lQUFlYQ3BuSVB1bzRvdGJwcjFoYmtyTHd0bzFZNkVqaWVMWGllYTZXZDQzeFZ4MVFvMVMwQmIxKzQzdDg1WS8rZ0JlZStTUmx1UkdsUW40UlBGeHIvUzVXOXlGSnQvcUk5M3pseWxYKzhmby9JRFFvRkZicFpNUVBLbVcwQ1pqa0hWMkFSTE1DRlVaUjhpRXRDUXNwUGl4UkVwb0dRK1ZiVC80VVNrZkZPdFZVQkRSTk5XSDMzQTRiYXBlcDdHSEY0aElsZWZ6YzAzenBjLzhlMTY0K3k0VnpGM0dWNStCZ1RzR1lyY0V1cFJreG16WVFHcFNFYUxzckFtSWgyU3JlRnkzNzhkRXh6bEF3b01RVG1NMXJIQVhYdHA3ajA3LzZhWjU1NWdOc2JXd24wd3FOQ2xBM0hoMmlWRTJKVGNTVkJaRU51bmVwTmd5YmgrVHRMY25lZUowaldsQ2FTNmZPY0c4MjRlQmd6dW1OOC96MnAzK2ZEei8vRWI3K3JiL21sZTk4blJ1SDF3bk1nWWFDZ0E5UVRjTjZEL0UxYU52UmtpUTJxVitqVFozbDVSYyt3dlp3bDFBSjFiUmhPTjVpTkZENEpuVFB1NzV1VDc2Qm9FQWJoUmZIajMveUtxL2MrQWNVNEdqWTNCcHo1K0FRdXFWYW02VU4xazF5N1Q3OVBWUXk0SEVFdm5IOUcxeDc3R2syejJ3eGRWUDI3dTR4TEFlTVJxUDRIb2lCNkdLMjM0Q1NPSFNiSU5BM21XaE5FS0lCSjdON2M2eXh6SHpEMWN1UDhWZlh2MHBoTFBoQU1TaVJtVWNEQTRiY2VPTk4zT01OdzJGQjRTekdXd1krU2ZFSmVMR0k5ampsZTBUV0VvalNRWWRQRW1UQkJJME5HdTNqKzJxa0ptaUwweFZQN3p6TksvdmZvV0JBVGNXSmNpMGgyaHpyQWdRS1paTk1UN2gwK2hMV0RTbWFCeVN5b1dRZ1kwSmxHSXlHSEJ3ZU1oNk5xZHljdDkrNG1VYlFmdHRuNGNlVkNHemhJcmUxd0lnaHB6bk5oWTBMUExiOU9CYzJMN0FobTVTMVJjMUJSY3NibEZlVTFxS01ZUzZCUnFlMm9jSzdLbzNBTUpTVVR2Qyt3ZGNCR29VdFlUQVlzRlZ1Y1dxMHkxWXg0c3pCRG05TjN1Sm11TW1oUDBCaGNlSUkydURDMGZwL3AyUTJlQitiWDZmVlc1Z1JEQmlnRTVtMUdNYU1PTTg1THA2K3dLbk5YYmIxTnFmQ0tZckdJdk1RdFJxTndvaWwxQVZsTUlRbWRCcUJ0cVFkcDRFbEd5R2xvMll0U1dhOU5sanhCTzhSQzhIQVFJL1lLcmNKcFdkV05Hek10N20rZjRNYjh4dE1tRkRUNEd1aHpaRW15aTNhNGVxejM3ZDJNbjVleUVUMmx3S3RsS0FscnUxc1pvbWhxMHd5SUdvSGdoV0RuOVZPdXZLOVc2eXJCbHNVK05yaGFmamU5Ny9GclZzM09YOTZzeU1jaXFqT0w4c3lydkx2T3hZdWhvTTJHNHVTNUxFcm1vc1hMcU5SSGVXVDNxUm5qRUw1bEljc2VhWXFpVjdBeWx1Q2I2UFF0dGVJeDJwWlEvWWxFcU1nT2pwd2hBS05nMkNaSHpac2pVNHhtODVveEdNWThOU1ZwL2o4WjMrSER6NzlDU3dqNm9NWUZIK294d3p0QnFIeTdNL3VNaHhzUmltWlFHdExITlJxN01rVnA0bWVaVWdya1ZYSjRpNmFXQ2dzQlFVanZ2RFNiL0hzdFpkNDZxbW5HQTVIdU1yaFhFaCtlNEpXUlNLeEMrbHJOeUdzMmpaTGI3SWtYWDgxM1ZmdkdJMmltVGlvQlhHQnVXdlFydURNeGtVKzg5RXY4SkhuUDh5Zi9mVlgrTTRQLzRHNzdqYWVDbkJkbXlnSE1KdXZhUklyV0NXeEVOdFlRTmhrbXljdVBJbk1CVXNSN2QyOHhQaTNicEVZWTkwektsay9GWVhPakNkUXVScW5ISC8vemE4bENlb1VSOE5Cdlo4SVRadXZ2Yi8rTzFsVnZGaWJCS2JNMmJZRER0Mk0xKys4d2RXTGo2RnF6WGhueE5ad2s0UHBoRTV0U2tpQkZsVFhLVldTZEFmbEVMVjRWeWIxOTkwTFoybW9FZFZ3Wm5pT0FTVjMvQjFRS1RSZmtvcDZISWZjNDlhdFcxeDU4Z3IrMEROU0ZoTXNKclF4REh3S0xpOHBjSURHZXBNa1l3RlJpV0NFQlpHMVRleW4ybnU4OVF3S3krTVhydktkL2U4dWFxd25KVDhTYnpUMUE2M2k2S0JGa2dXNDVzejJXZFRjcElVaGk3WjZIQUZiMmE2RGlRdFpyMUhLSUUzQWpEWE9PVzdPM29yMVNzOUpxbjE1NldNRWhxSXAwSXdZYzJWMG1TZk9QTUg1OFVWR2ZvU2RHc0xjNFoyaURCYUxwZEFXbzJNMk9TY2d5aVV6aXRSbTNrVXBBbEpESVpwU0RhTkRuUk84ZHpSMXZFRnRGUmUyTG5CdTV3eHZUYzd4anpmK2tldk42elRNY1FRcVBFRkxKMWx0emNKaU0zcG5aRFoybzRCV2NhSGVwc3UxRkJpZ3BPQU1wN202Y1puSFQxOWxaN0NOVkI2Lzd3bmlDRUU2ZTJ1amJOVG9leFVUZlNoTlA4ckI4b1ZWNzdlUU5HdlIzTUFJMFVaYmFaeVBqcEFrellIU01iVGt3R3V1YlQ3SjZkRnBMaDljNVBydDY3ek9UNWhUSXdnV1N5WGdWeEx5OVBWVEdiOFl5RVQya1VkTDFGWW5UNU4rYndmNk5pZDI2N1h2RjROeWk5VXhxK1V1YVhLSkNSTXFpa0pvR3M5aGRadnJyLytJTXp1UHA4UUtnZ3FDYzQ2eUxDUHBPSEVnakNwc0pXMkV3SjR0WXlLYlcxdGJQWVhqd29aTEEwWkpJcllwL1dnM1VlazQ0QWVGU2l2MCtIdVNSaDd4bHRLZ0xHMkE4UVUwbTZOTlp0VTl0amRPYzJ0NkcvQmN1M0NOTDMzeGQzamhtWmNKMDVMZ0ZRTTlZRGlPYVVibjB3cXBZV2dIYUZ3TS82VkN2RlpTMHk4VXFtdlF1d2VyREU2RWdwTGRqVk1jVGlZWURKYzJMdkhGei80dUgzL3BzeFF5b3E1cjltNU5VQUtqMFFhbHRUZ0MzclUxcXdnZEtWaElWMFB2SnBadHJPUDdPUm80ZlprYWhxWm1kenltS0hhbzZ6blRnd21Ocnhsc2JIRGx6QzVmL28wdGRyZk84dFd2L3lsNzRTYWVoa0k3ZlBEVXMvc0xaZnNxenpaYlQ5c0dCTVhUVjU1aFo3ekw5SEJHTVI0eExDeStDWWpUTWJwNWwyLysrS21ualFTdzJsUkZSWFg2amJkdjhQMjdQNkJRbHBtSGU1bjFBQUFnQUVsRVFWUTRkS0dvdmUrY3BhUkhpRmZKN09LVXk0dVZucjhnYzF1QlUzenJCNi93M0pQUHMrRkdiQmZiSE13UDBUYUdVWW9hNVZoS2lPbXJqVVNKWjV2WXd5dUo5NnlFR09OVnNUODdZRmJQR0d3UENkcHhkdWMwZC9iZlR1YkpnaWlIRThPRU9VT0cvUGpONjd6NDVBY0pDTm9hUWhQWE1GcFUwbGlFZEkzRjRreWpreVJ1MFg1TTBQRWpRaEZNVEJiaUExb0x1OXM3eENYcGZUUVM3VUl1Z0hMUnVhOE5vTFRORnVOaWlLK2dzcW11MzZWRVZnRFR6QWsydmt1bkdocmoySi9zTTJHS0pJb2YraSsyUjJRdGxoRkR6ckRMNWZFVkhqdHpsWE9iRnhqSkNLYmdwZzFiWml2YW9LS3hTc2VFRkNJNDc2a2FSeWgxRitmNmlQbk9mVXFsb0FvelJGbXNzWmdVc3MxaktiQjRWVEFJbG5wUzAxU0JNK1lVdzRzdmNlbmdQTmYzcm5PREcweERUTzZodGNZWXM2VDlNTVowNW1MSFFiVVdMR25SMjBZZ3NNa05zS1RnTVhXVlp5ODl6Zm54ZVlyS29PNEdyQzhwVlVGaGh2OC9lKy8xWmRseG5Ybitka1FjYzAzYXlpcVVnVGNFYUVRWnlsQ0dVcytTNWtFYXRicm5INXg1bktlZU5UUGRzOFFsc3lSS2FvMWFGQ1VSWWxOa2d5QmNvUXBsc2pLdnYrZWNNUE1RY2M0OU55dFJCYUpFZ01ES3ZWYld6YnA1emJFUlgzejcyOS91RnNtdGVqWTRIenZBT1V1WjVkMng5MndJMk00YnZML0lQWnNSRVZBNlN6cmRlTjBRUXFvdkFIRUIzVGd1RFE3WkhZOFpNQ0IvVUhBcjNHYktQSlhJMWZHNlQzTkRFUERoY1V2VmkvaWs0d0xJZnBaREF0dVdSbW5TN2xhd1BlL1FqcEZOSzl5ekhYMkFoMWU4MFZQV1d0dE51blZqTVliWWNjaFczTDc5UGwvOTRyYSt5bnZmcmVZZnA1Q1Z0bGl0MWJzR2NKSUFUbEFVUmJIMWV1Y3NXc1Zzby9jMk5oN3dzYUZEQ0RGTjJnNk1FU3dJMjVyaGRzQlRnRVhhbHFyZFlzQWdpWVdSRUZ2TVZwV2gwRU9FbkN2RkliLzltNy9IMTM3dTE1aWRyTmtmSDdDY1ZGVExGYjUycVZqQlVwb2hPenNqWm90Vi9IeHBMY1FzN2VJanNIRWgzSm9zZThmZjFvN2NEQkFMMDhXTWpJd3ZYSDJOYjN6OXQvblNTei9QZkxKbVp6QmtVTzZTbVNIcjlacW1kamdscVNob2s5U08yTWx2SlhLbDU2VjZIaEI0SENNekd1VFlwbUsxWEtLMVpuY3dCc1lzcXdVbkg4elpPN3JFci8vaWIzTjRlTVRmL3VPM2VPdjRoNmxOYjcrLzE0ZkhXVjFzSDlnYU5GOTU5ZWNvVkVGRmcvYUdMTk5VSzR2eTRMeC9xT0R3bzRRS2FhS1VlQjMvOEkwZkVMQ3NRbXdtWUwyRGtuaEExMndoOGZaWDZjNXNyNzY1TDkxcGZ5K2dsdWhtY0srNXg3eGFzTHU3aHhMRGJERWh5N0lvUUJEYjYyZ1U3MkVkSUhQeE9EYmEwdWlXUDVTa2g4NVFKa09DSVNzTXltdWVmdllaZnZRdlA2QW9OR3Zyd0lEVEhyKzJhQnp2ejI1ejkvUStWL0xMTkFTMFJGYk1TUVRzVG56U3c1NS83dnBYaXdRd1FTSE9JajZnZlFTN2VXRVlVREJuOWVnVGtTUTFnb0IzbUE0a0thN3ZYazVzOU1lSEZFRTh0YXBBK1dnaFYzZ1diczZkeVIwc0ZhMW5hK2pKTTlzVmFNczBIbktaVi9LWGVlN0tjK3prTzhnYzdOcFR1SUtoSGxQb1BPb3p2YVh4VFdmckZwSWVRZUhaZE56aUozcFVnQm9FUXJCUkp1QkppM2VOMXBvOFJIOWF0N2JVM2xPVU9lUHhrUDI5TVlNcUo2emdsTGVCWm12TWJrT3B4eDlicFZUbkw5MTZ0QXA1a2hia2ZQbndpMXd1TG5HUUhWRFdCclBTbUZvb3lERTZ4d2RveE9KdHdBWVhzMDRTa0V6UVdVYmpmZGZ3b2kxd1BHOXByVHI1UVhvdUxTNGJhNk5iaVJLQ0tKU1NqcFRKTWRoRlJlWVUyV0RBOWVFMXlySmtaekhtUjZkdmNwZjdxSlNKNkkrWkxaaUZqNUJ3dkloUEpDNkE3R2M5ZW1uUUNOcjZFM2RmSDl0blkyV1QzK3hleCtadnZRZytBajRDS0IxdllPdmFESmRsdVZ4MExKbHpEcTFOcDJGMHpqMitoVzBhMkNNSjJ3N3FtMmlCU0xRdXJ5S0xZZ1JYQjV3UEtOVlhHL2FzbmZEUm9rVlM0cmZIdUcyS3FqeFJ1T2JqY1pOTjBadVFDZ1o4VEZrWmxURmd5TmQvOWJmNDhxdS9nQTRsNjhXY3Rhc0l0Y09Jb1ZDR1lWbEUvZFd5NXU2ZDl4bnNqRkUwYWQ4c1FWbUNjb2xKL2lqRG9NS0l4aEZOeUY1NTZoWCt3eC84UjE2NDhRSVA3aTA1T0hpYSthem1aRHJER0VOWmxtUTZ3emxIWTIxMy9NNHRva21NK0VaZjJRZXlpZVh5SDc0VTBRRW1rN3VVT2lNek9jRkJOYlVFZ2J3b0dlL3RjTy9lSGZhdkhQRUxYL3BsbEJINGU4OWJ4Mi9nYUNoRXNReFZmK3NlRyswMktxWFlLWGE1ZnUwR1RlVXA4eEcyc3VTNVFYeEkxZnk5UFgzY2lpckYyYVliay9tRU4yKy9RZVFaSGI3dFRtV0FoczBLNGFIdEpCM3JNN0tSczQvZUUyU05seElkTXU3Y3Y4T1Y4V1VteTFPMFZwR1JKZUNVUnJXcDk5NmlMeFkrQ1Y0THpvQlhBVVR3UVZCZUVWd2dNd1duOHhsVE4rM1k0N3FLSURiZThnMUJLeXBubUREanpkdHZjL1ZMMTFuTzFwUTY3OWpYZ01lcGdFMWdObmd3UGF1eUZtaElrRzRoZ0tTMGJ2QWdxZVV6bHFOTGg5dzdQdUdSNTc1TjRhdkkrSTUwR2IxMWdhZXYza0Eza0R0UFljKzdmczg3SncvL3ZkR1drQWNXZmtZWUJDYXJFMjdOM3NVbSs2YmtUcGJPVlh5UEJnckoyUWs3dkRwOGplZkhMM0RKSENKcldNOHJkQ05rcHFSUUpkV3lBcDhnc1ZnY0R0RVJDU3NOdWhaTStIaTE3MDU1cERUVW9ZNDF1MDFBUzlURGUydTYwb2ZTWk9UYTBEUU5ibUlwZE03MXdUWDBUczc5Nll4MWM3c2J2OXZpU3VBajFUaTRYb3RaMHlsTFlZY3hUKzlkNThWblhrVFBnSm5ITjQ2U0lTTmRvQ3VocWkyVmFhaFVMTndWQXBhQUVVSHJDTVlyR3d1VGd6UWRJOXRtQkFCME81U25ibmVkYUN4UnQwM1RJT2lVellqell4QUJVV1FlOXJOZGZPTlloNHA4WURnYzdlTXp6OVF1T0ozUGFIQUlycmN3VGZFUjlQMFg4Y25GQlpEOURNZDV2ZUVmSGVkTXFoM1EzWHF5QzVjS0FiUVdUQ2JVVlV3dGRoeENDSjArMWptSHl2TE96c1Y3SDBmckQvbjAxa2c5UnJMNUNRb1ZORDZ4QVRxaFVHUGk2aHBhcHFCTkw1L0hHdlJaaXg2VmtpWmRGVDRzdWI4dDBaQkFiSUdvY2diRkRpOWQreUsvL3F1L3c5NzRpTW1EQmJ1alErcVZaVHdZb3BTd1hpMDRYVXdvVEVsV1pISG9FMCswZGRwOGY4c3F0UDZ4RDAzbFBjbEhvUXBzRTZVRnYvVFNyL0Fidi9MYlhEbDRtbW9wNUdvVWk4bUNaanphb2N5emFMVzJXaUVpREljbFZkV2MvWFMycm9OV1h5ZzJibEZyVVlWTGViejIvS2x6M3U4WkR3YnhDSWRvS3E5Tll2d2RWRlhEYUxETHliMVR6STdpSzEvNEJiVFcxSC9oK0dCeEU0SW53OGJhLzc1MVZkb0U2ZmlRZU93OFNjdUhZcWgyT0JnY01qQkRWcE9LbmVFTzAycUtrYmcvUlpuSEJodHBXMXY5ZGFyMzd4aWJEMnZ1RmNUamxPUGV5VjNtTEhCWXlyeGdWYStRREI2THZ4OEZuUHVMeVBTN3FNRGF6Zm56Zi9rVHZ2K3YvNTJwUGVXQWZkWXMwOHZhSzNZakZZbXNZR1IvbzE5b1pCRGpWVzlpc1FyQ2lCRlRUc25SV0xXT1lFcEFGZURiUTVRcG5MTllHdDYvZnhNelVzeE81NWlXMGZaUjF4MnYzWjdFUUNYZGJudHZwZXRDRVM4ZlMyeExZaFVFRVVRTXhoVmNIVi9uN2VQYnJKbHREbVJJbXZhTnNxaWwyd2hwY1ZLNzZIWndkZjhhWm1XaXZLSjNLUHVQNXg3Mi9vSldZcEdhNklDekRaa3hMT3lDQjV4UzBlRHdVYURsZXZ5QWdBb0Z1MkhFWmZaNTZlZ2xEdHcrTWhkODR4aUVrcndzMEY1UlZSWGVlN1FXc3N3UWxNYjZPdmFjOGpVMGl0eGw2TkRMVFVnNnczSm1YT2lOWGYwZHFxb3FLVEEwZVZGMExoUEJ4a1l6SVVUdHVQY2VYRUFwUVd0RGFRYjR6UER5K0VYc3hIUHNUckRFQmh4ZU5lQjdQcm5wM0xTbm85MittRm1JRzVRcFErRnlGRkJTOHN6Z0JsKzgvQnB5RWhpNkFTTlRVb1FNcVVKc0hlME1Zb1NnUEZrdUdKTkhweG9iaTRhdGRkVFdJVnJTRmRVZG5pZ0Y2blRaWis3aHNQMzZyQ2k2Y2NNVENONGxUYlNBVnhUS1lFTmdWVUVUSEVHRTNlRStMKzQ5eHpBcitlZVQ3NktCRllJTnpTYWJFalp6NEFXZS9mVGpBc2grMnBGS2pDWHBTeVZzZmllRTdWN2dpVllNeWVmRUV4RHgzZUFmclpVOElwdWgzWWU0b2lRMFhUcFhTUi9HS1RaZ1phTkY3WFJZZUVhakFjNDUxdXM2M3J6cHo2TnNuNzNkUTZybGl2MzlmVTVQVC9IV01Sb01XY3ptRkZuZStRc0NYV0ZLTzVNRUNVaG9FQkV5UGFCcWhPV2l3ZVFLTThoWlZpZk1GeE9nWW0wWEdBUFdnZ3VLMkJwQll6MG9NdXJLSVdUUklGNFBXUytXRk5tUTBMSUtZcmNZR1VtNlB0aElGMEpvSlEzdDBCUW5iUEVaNCtJUy8vR1BmZyt4d3VueG5OM2RmV2FuRTRwc3lOclYwYXBLQytpY3RYZHh3TTJpajJ6d251QUR3U3VDQng4VURvMGpMaEJhaWFYVzRCS1cxSWs5TDhJQUM3eHcrQ3EvK1N1L3h3czN2Z0F1eDduVUI4Y1pqQURCVXEyV0lKWk14UTkwNndYYWEwUTBtaXd1T0lMRnV0UmVPR2pHZzBPczlkaXdCR253WVlXek5VRkFxenhha0RsQnlDSzdHeHpXcldqNzFHOXNZT09rNUZ1OU1pNzZTNHBuWjJlSFpiMGdhTTFYWC93Rm1xbmxMLy9xTDdqUEJ4U0FaNEVWdnpVYUdXOElWdEtrcGFNdlpDclNVbVFFYS9qYUY3Nk9xNFU4SzZqcm1xSW9zTUVTbERDZm56NEVKbHZYQ3VsVmFVdGFoR1VtV3B2WnBJRzEwa0RoK1lmdmZ4dE43QTYwcUtzb3ZVNWRoY1VRclpjL3preld2c2ZIQzgrSEJIQm9lTnUrZ2FDWWNOeTkvT0hsVHRzZEtmNDEwQlltYmY3ZU9pcWMwSzROYkxReHcrTWNzR2hmcHFJbEZCcFB3OTMxKy96Z3g5L2pwY3N2bzlhaGE2eW5wQVhIbGhDa1M3MHJRaXp3NnV6dDR2OGRJTG1pYVR3MkJKVEs4SlZqZjNTVlYzZHpYdWRmV1RDamJzZXZWQ0FFMGVXZ1hXUGJCT0lXMVpLU2twd2hCOFZWbXNrYUZ4U051SVF0V3BBZk9uQnpWaVlUdGRDSmNVVGhSRVBqdUdUR1BIaHduK1BKTVJVT3RWdFN6WmZzcHN2eXBBV3orWkJtWmJqQkVmL3pjOTlnVUpVb0Z6OVhJWWdDNjlaeGpOU0FSQ2xQWTl1VERVcWlpNnJ4Z2w4cGNsV1NGeHBFc043U1VNZnpyVVBYYUtOcHF0Z0IwU1M1bGZOVTY1clNESW5sYjBCMFNVekRhNGpqZzJ4MDVscGlIN1pReFVYRnlJMzVVdlpsTHUwL3hkL2MrenRtTEpnMUM5Z3ZZYjJNelE3WFJMMjFhNXZGZXRxMjNTaGdDQ3doV0k5QkdEUG01NG92OCtWclgwSW1uakprblY0Nm9qL0JGUUh2SFVFNVJNZm1LYUZ5U01oUlhxTkQwUzJXbkhXWVBEcW9ORldOV0tLMk5rUzNCWnQ1ckVSTnRpU0x0Z0NvVEpCTXNYYnI1QzBiN3dsRFpHKzExeGdQZFpqRk1iNVVaS2FrY1pEUFBkZTV6dVhoQWRsTWVOMStIOGNDeVhNYXY0QUFoUUp2TDRxK2ZsYmlBc2greGtPMkpBTG4vTEVyUlBHOW4vUGlMSWlOL3krS2pNVmloUUwyZDhaTVovTlVhSld4YWhxdVhYbUtQTSs3MVgrL00wMC9WSGg0dnBkQWxDQTBEZ2tlUTBsUkdIU21FTFZHYTgxNnZkeWF4T084SHdoZDhab25LbkZiTHVpY2d5SDlmZXMvbm1WeiszK1BrZ1ZCVTJqRDg4Kzl6S2pZU3dETm80SkM2Mnp6VHRtWUNJbmFwTHdJTGNtNXJlSGE3TThtSCtaOUMyS0ZqQXlQeGdiUGN3ZXY4STNmK0YyZWYvcFZNaGxTclFPR0FtTnk2dHAyZXgyWm1jaU10b1U0UXF6K3RhNk9qSmdLS0JGMHBpRmtUQ1l6Z2hkVVhwTVhnU3pUYUtOQkNVYVgyRW9oSnFkZU9SYkxKVVdtR1kySEJGK3hXRTRwVEw0NUw2UVVNNXRHcFZwQjhKNE1RelZiNFN2RkYxLzRNc3ZKbWovNzdqZHgxT3ptT3p5d0Q3WlM5dEdET05ZK2h6WkhtdExtRWd3bEl3NUhsenR0M05taitqQ0k3Wi9mYzdJWlBlMkJKeHIrVjAzRmREVmh4UnlmVE4rVUpJRmNpQ1QyUjdUYmpISGVhN3ZuSXNDMHFVM3FKeEtCQ0ZKUVhlcWY0Rm16NU43a0RpOWNlWjUxRXloOVNhWktKUFFLN1RRb3BhUEhiY3FMdEl4blN0VUEwT0J3Qm9LWCtDcVhZWnFjb1I5endBR24zS2VXSnQzQktnSHVFRjBFK3AyekJIeHFiWHpFRVZKck1xTHQxa2I2c05tdDl2eTN6N1gzWFpzTmFjKy9DN0VUV3JCcmZIQ2NURTZ4UUZVdEkvdmFmbFFBTU9BTlE5bmxocjdHdmgwUW5FVEhsTzQxOFU1b24vTHk4SGdyaVRVTUdJWTdzWTN5Mmxxc2IzQ1M3bWZqRVlUMWFrMldhWlRSWkRwbXVoeUNEUUdIU3JJTDFlMm9hNXZuOUw0M0pJbExweStWdU9EVUhnN3NQcmJ4UE1jenZNRmJWTXBUcnlhYld1RmU1azZuUitsYXl3QlYzTzkyekhxQjU3a3h1RVl4Vll6Wmdkb2wyVmdxUkd4UGhrN2FWL0ZFNDBPTjhpUTd3QTFSNFVQTTlMWDdrMmxEcVRLMGpYMzFSQVN0SWRNWkNrM3dndk1OenNYRm9Xd1NnaWtMbytPaUk2U01vRFJwa1J4YmxHdHZVQUV5cjNBT25oMDl6ZWxrd3B5M1dkYXJsQ0wwV0x0Vk5uMFJuM0pjQU5uUGZKd3A1T3JpVWFDMUgrMjA2YmNlKzlONkc5UGttd21nbE1FNXhUUFBQRWVldDJsY09vM1ZSelhVVnBKUnVUaDRGNW5DbUtpVThzRWhJa3dtazRmZUUzcmVzRC90Q0VrNjhZVXZmQUZqREtJMFZSWFpFUzFxTXlIS0JrcUhCQ3NsUkgxdEhLeGRHcDU5cDdtQ0NQSmFGQnFCcUtERUVJSWdDVWgvOVNzL3o4OS81YXNNc2lIcnFZMXNXckNjMVJOdmVRcW5DcFcySzlaR0JnS29nQ2h3dnFFWWphS1ZsWEo0WTdGaFJkMnNjVGFnMUpKUUc0YURBOHJSQUpNcGZGTlRWUldFNkNuYzRiOHpwN3ROdTRrSXEvV0tQTS9RU2xIWERaZXZIUExWTDMrRnQ5Ly9FZi85L2orUmFSMHZ3MEJrZ2VvK2tEM3JMeHpqb056bjhQRHdZNTNUZnJUWGFWdnNRZ2Q0UEpQNWhLazl4U1ZWdFpKdFFleEhsTjMrYkVjQVFrRG5PYjZ5dE9XWjc5KzZSZlg4bWl5VXFZdFhQRFp4RVJtNkZPKzVIOWxMOXpybkVLMDJiVmVKeHpyTE1nN05JZS9ZVmhyUWdydTBrQUF3Q1dBbjFqdmkyY0RUVjU3R054YWpEVnUyR3g4amxQZG9pUVYzcCtzRjk3aFBMb2FxaVp1VUJEZDBXb2xhY1hsNHlMWHhVeGd4MkNkb3o5MG96d08xeENVamY0WEhhTWkwb0NXNnNvaUtXUnNYd05yb2RvQUl5aFI0RTFoaENkSjg2TGxvMCsvZC96cmRkaHk3U2luWU1RT2UyM3VhZHlmdk1TS2pyalhrZG92VGlDWnJLWjJQangzWjB1bzF3NUNUTTJiRWk5ZWY1MUFmVXA4MDZJRStVeVoxVHJSelYxZFJ0OGttaHRTZHk0cVBxOFlNT2lHc2VGYlVXRzFCQ1JrVzhUcldaTWhHNTl2YUtyYTNyYlNMRGJIUmF4YVNiVnlTdFFIS3gwWWZpT0xTemdIUG1XZjU0SGpDbkJycmRNZFNiUEtXRi9GcHg0V0x4T2N5enQ1ZTU5eHVvVGNSeTZhUy9teFVsZVBnWUkrMllHeHY1d0RRTk03em03LzhEZmIzOStNM3BNa0oyR0puSHhVQmhWSUdNSEVsaldDZG8ybWE1SlRndVhkOHY5M2NqdjNxVjY3L3RDT0VRTk0wWExseWhicXV1K2V0dFlsQmxmU2owdVN1TnBPOEJOcU9ZaEtTQkFTUDlqN1YrUG8yNXd2cDVTYUIySkNPOTFkZi9pVmVlZmsxakM2Wm5reHBtaVpXc3FmdGltL2NWbXIxSnpWckxVb0pXYTdSV2FyOHBjSDZtdHF2a0tLaE1RdldZY3JjbnJCbWdaU2UwYVdTdzZmMktYZHphcjlpWFM5UUpxQnpqYldSOFNqTDhwSEhUaEhQbGJkeE1odVB4eFJaenVSMGhqRTUzL2lOYjNDb0x6RmJ6VGVVYnMxV2E4Z3RxelMxdVo3MmQzY1psb04vSXpDcHRncGRRbHBFblp5YzBDU1ZaemV4ZGtLS3oxSDRnTzVWb0hrOHQrdmJIRThlb0RPRk1vSVZSK01hYlBEYkd2akhSSHRjb2Jkb3NJNWNHeTVmT29wTE93Y2hMZHM2Z1VBN2ZxUkZub2JFMFNtdUhsMkphZWJ3Y2VvRU5pRjRjaVY0MzJEendLM0pIU3pSZHF4ak9JbVhaRno1R1NSb3JwWUhITzFjU216MkU0UTRaczBwYTdYQWp5eCt6N01lMWp6SXBud2d4N3pyN25JdlgzQlh6empSSzFhWnhlY2FSTWRDMXVTbko5ZzRodmQvRWxoRDJzVnovTkhCcHlKQkg1dVVOWTZ4SG5CcHVNZFZqakJlMEVHRDNRajVZNVlvcE04SUhVbE9BSEdRTzhPSUVUZEd6N0EvM0NjanRzUnUxZzNSYlFET3YyTmE4Sm9BYkc5UjBIYm1zbEpqVFVWVE5OUkZ3ekt2bUdZclpvT2E5WTZsR2x2cWtXV1pyMWlhSlN0VlliWEY2NUNZZDRYdXh1aFUrSnRrU2w3RlhJS1RUYlpNUlVWSHpEcDZoYkhDMGM0UlQ0MHVVeEE3Q2FwVVZ5QVg2T2xuSmk0WTJjOThKTzdydzFLc0QrVXplOHp0MlV4N2Y2d0ptMWN2cDJ0QVU1Z0JnM3lQS1JYRGJNenYvZTRmb0pUQk5oWVI2YnhrVzREMU9DQUw0SjFFMDM2ZEV3RkZUY0JGMngrbHVIdjNMcklOWjNDK1JYL2J4VmsvalJDUjJJNVdLZGJyTlhsaHp1eVhTcG15emd1aEE5eHRDcXVUSElSQTJ3aTM1UjRjQ2xFK2FpMVJpSmkweU5Ec3FIMSs2K3UvdzlYTFQ5TlVscnEyak1vUnVTbG9uSXVUeEZsVC84NGtQRDQyVFlPSVJuU1VGM2dhSkFPMEErK1p1L3RZNDFDRnhaaFltTE9xS21hektSSWVjT1hnQmtFRmxyTTVpOFdjSXM4WkR3WW9DVWxuKytqajc1eGpNQmhnbTRaR2V3YURBUThlSE5NMERTOCsveksvK291L3huLzVodytpRGxhN2FMVmJRRmlERW8xTFJScWIvWXVzOWU1NEw4b0tub0FSUzJjSmtlaFAzQzdFWEFKVHh5ZjNlektKeEJqMkR2ZkdldWd6SEVtWWJWMDBnWThBTmFwZmI5Njl5VE92UGtPb3dUWVc3eU1vTmNiZ0NEamZiQlZ6OXFObEFkdU1CdEFCWnA5czBRNzNMNkh2dE0wV2tnd0dhSHUraHBaSkN5Ui9VczJJSVh2RFhaaDYxSWZUa0I4cFZBQnRZT0VyMXJyaDNlWURIRkdQMm1LdldrZXJQNEpHMEZ4aWg2Zk1BU01aNFNxWFZLTWY5L3M5KzdraTVKN2FOSnk2T2JlWEQ3aTdPbVhxRmpSNGNsTXdrSklEdmM5VHhTRkhabzloQTZaU1VGbXlRV0lUSC83MFhpZXM4NzQ3bmlEWE9MSThvM1NLcDNldWNYUDJIZ1dHeXJrb0J3aXh2WGF2eGduVjNwRWh0akEyR0s2WDEzbmg4bk93Rm56dDJTbDNzUE1xMWttY21RYTJDN1JhRUhrbW01aUtMVVBtc2FhbTFwWTZOS3hzblJydnhJVzVrNFpjRzNKVllJeEpyS3FCeXVFcVM1bVZpRSt5aU9UUUVtVU9Makd5cXN0Q3RDT25EbUFjZUNWVVM4dnVhTVMxM1N2Y1h0emptUHNzZlp6ZnRESlJLSHNSbjNwY0FOblBkQ1Jad1hsNDhkeEJ2azNqZklnbFZqam50UWlOVTBCR1pSVjNqay9aSDE3akQvK1hQK0w2MVJkd0ZseXllZEphNDVwWVVOSzNjZm53VURRdW9DUkg2OGd5aWdyb3pDQ21ZbGt0T0Q2KzE3M2F5MmFDRklsRmIxSDE5Tk1MclRWS3hRcmtOaVRad3dRSDRsVnlRVWdEZmFyNlB4L0NTOGZXeG9taEhiemJSNDE0UTBESUtIbjE1YTl3N2NxelpLb2dlTTJnaURxd3VxNEpYakRhUEdTUjAxVVZwOGl5RE5FcVZlMDZNQUZWQ000NzFzMk1OOTkvaTNkdnZjMGJQL29CNzAvZlNjTzZjRzMvT2s4ZFBjMk55OC94Mml0ZjVjYmw1MWhOSytyRm1zWWJNcTFacjJ1TWVSU1E5SVRnR0E1M09UMDlZWHE2NE5LbEEwYWpNYlBKbEhwVjg2Vlh2c0tmLzhPZlVyT21zbEVUR1R1N0pRdTNGamtxb0E1STZ1dDBzTFBQeDNRdDJvcTJBTWg2aitoVzArZ1JGVGc5UFNXVzFFVlZZUDl5YmhzS2ZLWWpMYlI4QU45ZVJ3cWN0emd5M3J0OWs1OS9hUWxCWVZTV25BcWlURURheWY4eGgwQkUwRzJxTndTMHFHaWhsY0ZPT2Faa3hKSjRiM2tFVVFMQnRYUitCMlFWc1NIMWtZcXNvUWxDOEp0V3ZSOHZQRm9FcnhydXJrNDRaZ29vTEExR3dIcHc3VERvRlRrWmw5VWVSM3FNcm5WOHdTT3YvOGVFZUV3aHpOeU11NU1UM3BuZDR1MXdqM3ZNaU40U0FXMHpCR0ZNd2VYNUFVOXpoUnZtQ2xmTEl3NFBkdkhyQmdsNjQzMThCcnoyTmVUU1BVZTdVNFJRRTZ4REs4WGx2VVBHczJGeXY3Q3hNUUd1azB4dGpscjh5WUNDbkNFRHJvK3VjbFFlRWU1YnhHb0daY2xhOVhXNmNVRzQxVkUyQ0tHRklLRlZuSkxheTFxY3F0RkRZZVlxanF0akhxd25uTXltVE1NeUZzb1MvVHAyeklEOThvRGRiSmVqOG9qRDhoSlp5UEJWU0t5OTZtcEpRdHUrdG1zS2s0b2lVeHRtSGVXNzZLQWlBUFlLWXpPZUdsemgyZjBUNnRNMWRlcjgxYmpQK0NMMmN4UVhRUFl6SDYzKzUzRURhdXRPMEJaSlphVHlES0NQaFpNR3RnT3lHa1ZPb1FaVTNyRS91TVMvLzhQL2xXLzgxdS9nYkk0UzB6R08zdnZrSmF1N0xqR1A1bVFUYzZpaUViZjNEVXBCbGd2ejlZSmJ0MjV5dW56UVRacDlOa3cwQlB2SkFJa3N5MWl2MTVSbGlVaTB0ZEZhWTBTamZHSStsTzlYdW15MGxsdGd0VldPUnY0cGNsQ2I1elFhSXhsTkVLN3MzT0JYZnZIcmFDbW9sbzVDbDJUR1VLMHM0c0hva3JwWkkwYWpQcVRWS29ESk0wQmhmWU1ZUVpXS3RWMXc4OWFidlBIZUcvekp0NytaZEd3eEhabThNSGpuOUMzZU8zMmYxMy8wWGU2ZjNPYzNmdm5mY2YzU0RaUVVMT2NMVE1nd3ByMkcrdCsvblFYSWxLWlpWMlJhRTdTaFh0V1lQR05udU1OeXVtUjN0TXR2ZnZXMytKUFgvNWpLclNFRHY0N1haYXl3QjJsYitvYVllTTR3SE81ZlNzZnd5YUpOVGZjTjRWTlRVaWJ6Q1M0Mi9reXdndlp5UlFLYzA2TCtNeGMrYVM0aGdzN0dWNm5veW5QSDMrSE95UjJ1bExDWEhhS0NSbXlJNTBWQ2QvUWZkUTdhNHM4T3lHb05UUURuS2JLTW8vS1FkVjJ4OWl1YTl0cnBXN0dKRUxsUWc4Snc1ZkFJdDdhTTFBQnArdnFvanhFU0NMNUc1L0RXclp1cCtYQmkyMEswQ1VZQWswRmxNQlE4UGJqQ0piMkhXZ3RLOHRTeTkrTjl2Uk5ZNjRZN3F3ay9ucjdMTzl4aXhvcUdoaHBMTUdCRGJNTWR5R2hZY2NvSmQreGRYbFd2d082QXpJT3hlVGVLbkQwYi9YYmNuUlJERWdNcUZsM0N2SjZpZHpQS3JPUkFIekZ4U3pRS0cyTFhSSjlHc1o0c05yR3Fob0tDNTNpT28vd1NwbExvVUdLY3hpNGRXVmJndmUyMmJLUGg3NCtKUHJHeExZaWxzNzZ6MnJHd2MyN05idkhPOUNiSDRTUWRuNVlxQ0FnMTl5d1U4enZzc2NPTjRnYitNSENrTDVIbHNkT2llTFZaY0xVYVlYR3BRTmVrQWpONklEYkpLWUlpa3h5N2d0MmRFZGRIVjdrN3ZjL01UNmpRcWZod2MrUXY0dE9MQ3lEN3VRclZvMGo4OXZQZFlCR2RKemZpekw3QVByMjJsNXJXRkRnQzNnLzR6YS85T24vdyszL0V0V3ZQVUsxck1qT0tsZTFOMCtubHZQY1lZekRHc0Y2dk56NlVIN2JGRXRWWElRaU5xMEVIREo3Wi9JU2I3NytEUzlxdVdEakV3MHFKbjNLMHdIeTVYRElhalFqQlJSOUVZeEF2Nkw1UW9HTS8zRllyUXk4OXdCVlVvaVZpZWI2U2pUd2djcUVaQWh6c1grRUxMMzhKM2VTc1ZsWDhtMUxnUEZsZVVPUTUwK2tVWXpSZTR1QzdpYzMyT0JmdzFOaGdJWXY2Mk9QSlhmN3BlOS9oNy83SDM2RHdOTFRPRUp2UlBpYm9EQlVyL3ZZSGY4MzlPL2Y1L2QvOTk3enk3R3Y0MnRHc0hIdWpQVmJMK1NPUG45YWE2WFRLenU2WThYak15Y2tKMGpRTWgwTWFXMkZYanEvOS9LL3laNi8vS1JJVTVUQm5OWXVPRmQ0bDBLODI2VnNCQ2lrWUQzZklWUFp2Tm9kMHhWN0VpUlFWV05kcmZCSWF0TlpPU3FYcWVnK0JqVnZFWnpjVVdrV0czdVNhcHJJWUFsb1pyTGZjbTl4alpNYnNEdzR3WkRRdXBuYVZCcE5hb2o0cStrQldBenJkQytLaXZHQnZkTUNKbjFEVkZaMjFVOCtwUUlJbU5wcldsT1RzRC9ieGxjTVVtbEEvN0U3eGs0WEhoZ3FLd1B2TDJ6aUVPcmxUQ0d3NlpTc05RY2RPWHNXWVBSbWdMR2l5YmRuTFQvcnRBdVNHbFRRSm9ObmtCdHlnc3NoSzRpRVl3YXVZaWJHdW9XSkZXQXB1RW5qWnZJaDJzV2hweXp3aFJadXlWOEYzZG5tZDc2ODR6RkNZVHhjTUIvczRQSHU3Ky9pVGQ5QmtXUDRsTUJ3QUFDQUFTVVJCVkd6M1dSMVpRUzhyaHFhazVMbjlaOW5WTy9pNVo5ZnNFQ3JQWWpGbmQzY1hGN1lCOENaNmtvS2VSQ2lrWmh0V1d4clRjUFAwRm0vTzMrSVdkMWpUMEJCUVJFOWVrUURleDVhL3pHbW9zSlZqTUI5UWpBdDIxQTRtNnFqUUlkWmt0UHNSTytWRlFxRTliakZUMWdmYmlsd0ttc1dLb2l3NFVMdU1HVEpnaUtCWk1PZkNzK0JuSXk2QTdLY2NvaFRCaDg3Q3l2dUdMQ3RwcW42WGxWUnNFc3VHay9Wc095eHNWcmZibld0U0FrakFXYzkwdXVDcnIzMk5OMy84ZlFaRFF6bFVMQllMaW53VWl5M1M2SlFwalRFWmVWNmlWY1pYdnZSVnJsOTdsdWVmZTRXRGc4dm9ZR2hXRHVVeklLZXl6Vll4aDlZYTczMm5LOTFzRTJlMmo3aFBRUkRSdUdBcHk0TEo0aDZEY2Nsb25QTzMvOSszYUZsQ1lMdFRrM08wakhFZ2JKd1N3dWIzeVBLMlZqVG42WVczMDhQYjJ4ZC9yK3VLc2l3Wmo4ZHBJcWtaREFiZEJPMTl3T2dNWmFJMzY4ckducVZsVVZEbUJZdkpuRUdSczY3V0RIYkd6T3NIOUhYS1BrMHdJT1JTVUFkTHpvZy8vUDMvd0hKV1VhTEoxSURnd0ZsSGx1WGdBOVY2U1Y1RXNCRlpqVGhEblUxM1cydEJCV3hveUl3Z0dmenB0NzdKT3pmZndGRmhxWENKQzZOM2hJVFlpQ0JuZ0tQaXpaTWY4dC8rNlpDanc2ZlkzVGxBaStWME5pVTNtMzJKMWV3cEhaellGMmNEdzhFQTF6Z1c5WUxjNUlUZ3FkY05tU3BwN0lxRHZVdDg4Ymt2OGZyTmYySTFYWUtKYkxzbXlUcGN0Zkc2OFZHZXNUTVl4dzVTanVRTzhkQ3AzVDYvWjY2Lzlta1JzTlpUbGlXTHhRSmw0bVJuUThOcGZVTGI5TFZsWTcxTDV3ejRQTEF4UXVyZ0pOQTBzUlcxQzU2NW4xRXc0Qi9mL1VlKzh2TFBzVmpNR2FrZHRJbFNtcXFxR0JRbDNqWWQ0SXVPQmwyNVZ2eDhyVml1VjlIaUtnUnMzVVNwZ2ZNb0o3enk5RXQ4Lzd2ZlR4NjJBUmNjWkFseGFhRDJhREkwVVhKejdlZ3FhaG9ZbUp6VDlZU2lOS2wxNzNuakM1MGVWNmV4S0k2eDZSbzFVWS85L3NrdDduUEtnaXFPV2Q1VGFvMTFEbWRNTkhkT3l0Qzl3UTVoN1ZDK1JLT3BmTDBCa0kvcExIWmV1TFhEcmVOaVNWS09JVHAxTkhFYkIwQVRhUHljeGdCT1JUYlFXc3pNOGRLbEt5Z2NMb1ROZVpCZWZVTGZmMm96ckVYdHZ2SThjRFhOQ0U3Y2xEQXltRkZCZmpKZ1NVVkFFWlJqcXhPd2I3UHhCdFVZcnZJVVExZXlwM2ZJOHd6bW5sd3l5bEVaYXlWU3BpcWNhUkhleWh1TWlSM0hsc3NsK3dlN3JLb2xTN2RpNThvT2QwN3Y4UHI4ZXl4WVVGTlR0dzY3cXFMTFJJYUdURUFIVGNBelpjTC9tUDBJVlNsKzZkbGZKQnluY1Q5RUlZSjR0Y1hiUk9zMkZZdmZFbW1DdEFWcUNydjI3QjBlY09mQk1icFEvT3BydjhqdDc3L1BuUE1helZ6RXB4VVhRUFp6SGlLSzBXaVhYLzdhMS9uaUYxK2pzUXZ5UWpCWkJEbENnWGNCNTFMWEpCOVF5c1FmTVV4T1poVEZnQ0lmSXlISE5lQnRaTXBpd3VuSlZxUWl3bXcrNTZtcmw3aDE5eDJPcm95bzdKUWZ2ZlY5YnQ1L201QVlrazhyaXFMbzVBUStyZjZkYzZsVGpxTFFnV1c5d05ZMStTamo4T0FBTDQ3WlpNcnhuYnRjM2ovQ2lXVmxWMUEzMUtGQmRKeXNqT1RVWVJtMWZ1Z0VyaFRYOW00d3lNZmtVaUpPSThHZ2d2VEFXcnRRYVpQQU1WVHlrNVQwdXljV0pJbU9hVEtQNCsyM2Y4amRCN2VaK2xNY1RRZGlIeXJJd09PQ0p6WjR6SEFvamlkMytlRGVlK1JYY2lCUGRsV0tMZHN2ZVBqL1p5UG9sbzloWU1hNHB1SFo2eS93dlhkZVJ4bU50dzR0Qm8vclBEZmIzVlpBcGpJeVpkQnBFZk5rRVl1OVdyTXpINkxKdncydWt4UDR1S25udlBPekRtUGJzOUJiNHFrbzRYRnAvMnNxUGppK3cvWFJkWnkzU0pveXRLalV3T1VuLzliMlBUckFRSlhzc01PVXlZYi8wMnpzMkVMc1VxYlFISENBQ1FhdEJlOUowcGJIUndnQkgveldBaGVFSUI2ckhjZkwrNGtOZGJoUWI4QjlmSE5YVXhCaHBrYWRkekY4ak5CZVVYak52dXh3d0M0ejVsUTBRSVB5Qmw4MjhUajBRQ1RhNDV5bmxobUxjTW9rZTRBdHlwZzFDeUUrdGd0N2lBVlFST1pUOEoxN2xVNzZYelhNV0xtS1dtQzFycGxVODI3RTdhUWVmVldVUk5KRCtkaGs1WEoreEs0ZWtqdU4xRUwwNVlwZm9wVENTU3lDYmYxMFZiTFo2bng5clVNaG1DeUNSNi9qUHB4V1UyNVA3N0dtWWszRG1wb0t1MGtzOXVZZEM5amdPblpjTWVYVW5uSzhQR0ZQNzVIYldFblJMN3hGMnE1Zy9ZUGJraDB1YXFPRFFvd0JweWw5UVFpT2RkMXd4Q1dtekZIb1dIZHdFWjk2WEFEWnoyM0VHN1JwYXU3Zlc2QzBweHdVbEhsT1ZTMXBha3VXalZBaGp5T2E5ejJnRnZCcHdMbCs3UVhxeXRPc2E1ckdRekFvbGFFbE5pT3dEMmtrZjdJSUFzTlJ5WFIyd3Q3K2tPVnF3bkFYL3U2L2ZRdFBSV2NpQ1gxSjd5Y1dyUXRENjhxUUtkMU5ja3ByNnRXQ2ZKQ1JaNXFsblhOeTl3NWVQRHVqRVRkZWVJcjFiRVVRUVJVQlZTckV3ckpaVWxQandwcjIyT2xrWjZSUXZQYkthK3dNeHFpbUlBUVZRYXh2QVdNNjNwM3BlU3R0T0M4VVNnbEJSM04xSjViWC8vVzczSnZmb1dZVldSL092UDNNUjBWbUtBSzl1dzl1OGZaN2IzRjUvem9EbmNkV3dpRk5UdWVDMTlCTFBVc0gxRU1IeWhXRnlWaXNLMTU5OFRYKy9OdC9Rc2c4cS9VaUZ2MEE3c3kxSllCUkJpTlpBaFJQQm1RVm04SXlRcHh3V3dzdVM1TVkyWmErN2IzdnM2MG5BRGFpSXQraWxKNFRrbk50Y3diSGo5OTlrNnRmdVVaakk1dEswSmpFcW5hZmxmQkx1KzdvUzBHMnZqUDBnS3dYUnZtSVMrYVFoVjBnTkpzUDZrNXR2TDRWaGl1anErQ0ZYR2U0T3JwTWZCUWIyUWhrTnlDMkxWWnpPbEJKelR1bnQ3RzQ2T1JCMVBVM2JYZFc3N3EwdDBhaXJsS1JDaEdmN0NMUUFjYTJJR1I3dU94cFFnT1dEMkl6TFZkQkZXREhnRjEzQmkyeDdCWjBzTnl2MytmL2V1Zi9SWkgzSUZnN1FyUnlKWWhsZElxMnpVQy8raUYyVWpOQWJMU3d4ckdLdmRiSThvekdOajI5Y3Z2aE9oV2s1ankxZDRWZDJVRmJqYThkd1NyUUN0Rng4ZURGYjdHeEVPK2RGa0E2VzVObEdWbW1zY0hpak9BVkhLOU91Rm5kVGt2dHVOenVRR3hmR1Vka2lEM1FlSS9RWUZoeDZoOXdmM1dQWVRiQ3FRd2prWVZYUVoxNzc3Yisza0VsYjlrUXh3T1RGemdIQlVXOExsWVRuajU0aW5kUDNrTWpuMXp6a290NFpGd0EyYzkxS0E3Mkx6R2JUNmpyTmQ2cGFJanZvejVLTWNBMU1iV3ZCRlJyOUJ4QzdIc2RBdFBKQ3R0NGdvMURsekhKK3pVa0g4a25CSmJPTlpSbHdkMEhkN202dDh0OE11UG1tKy93NWx2ZlIrTlRuNk5OYXBmMjhSTUNFczQ1UWdpZDdqZmdPcDljclVGbERTcy94MXVQTG9UOXZSSWJMSXZGS2NlM2J6TTlucEJwUTFPdm8vNHp6TGw3Y2h1am9YWU5Tbmw4aUZyUzRDT2tlT21GbDhsMWlhMklCVFkrbWNhbmxMMVAralk2ZlZmaVpUdkZSdEtjcFhTdjk4bFkzRGY4K0owZlJZMGRGcVVDVzRXM1o4K2xvbk9TQ0s1aDZrOTQvNE8zK2RyUC9SbzZpNEFtMkQ0ajBmK3c4MDVRTEx4bzBZNEVRV3hVUUY2OWNwWExsNjd5OW9NMzR5ZjV6YlhZZ1N3Zk9laE1HM0tsVVYzN29ZOGJhcXNUWFVqZzJlTndvWlcwaFBqWWdyelBBWUE5RzF0NWxUWk5MaTByNjNudjVGMXF1OFlFalNoQkJFUVpYQlBsUXgrVmxqM3IrNnE5WWlRbGw4YUgzRG05VFhYMkRSNkNEeW5aYnJoeStCVGlkUFFvYlJveW5lSGRvNy83ckh0S2U3NFZBaUtjTm5OdWNZZUdKR1h3RVRCMWpoZ1d1bUk0Qkl2REMxaHhLTzhmWDJQN3FHMUxHdmJTakxtNmI5Qk5TYm5ZNFdaemw3czhZR0ZYckU3V09Jb0VNejBGRW9Gc3lwU3NPbW1RVDBCVzZMaEo4WkZSN01yQWZHY0pLQ0cyZ2M3STBHZ2NwaXY1YkJJbjY1dDYyeElta0x4WTR6Mjd6eTQ3K1lpaU1VZ2RvbjB0c1pGRGxIcEVFOW9Xeko2MUE0dU9HU0gydlZEQzJsZUV6Qk55eGVsa3dqR25WSGhxa3N0QWY4MitVZHhGaUo3YTBEcnZxYW1Zc2VDME91WDZvTUUxeFprNmduWjhiRE1TcWMyeWVNRGhSTEFxUVBBb1VmaktZNEpCQmMrc2hxdTdWOUFuS2kwSzFFT0w3WXY0NU9NQ3lINHU0cHpSTkpuMUhSOVBBSTlJQVY2aHRLSXNZbS82eGF3bTEyVTN1RXNTdjhlS2dBUWtHbzhSaFNwTTlDTU4wVDdIK1RoUXlSTmVRYzQ1VnVzRkI0ZGo3aC9mWXJBai9KLy8yLzlCM2N4eHJJaFQ3Sm1CWWtQeS9kU0JSWlpsSGFocW1nYm5tOVJrUU9HMFF4VU5tZFFjejQvNXdiLytnSC84M2ovejQzZCt6RHFzTVJoTXRBZW5vU0pnMFFncUR5emRGR2k2TktyNHlQdnRaUWRjdm53Rjc4RmJ3WGoxRU9PcFFndG00ZUZ6Zi9iL1VidHJRODJzbW5GL2RoK0ZkTlhad1BZeEZOVlNVZDN4RFNwMkU5TTAzSHR3Rnk4TmptaGQ5RkdqVDdTMXF4SVZGSFhsTUxuQmt2SENzeS93eHAwZkFnb1hIQnIxa0t4RWlOSUNMUVpjMU1ZK3lTVVFXVHJaUmxnU2JjTmNTdFIrbm1QckZ1b1ZXUkhBdWRnTVlzYWMwOWtwZVpISDFxSkJVSzM5bFZKYlRDdzhlbW5SRmxGQlBPVEdHNDVHaDVTbkJUTVdzVUxTblgxUGRQVFlHZS9oZlR4ZmpiY1k5ZmpCcDlPS25tMmZIY0NLNTliOG1Bb1hVOFRhcCt1OXR3K0pDWTJOa2kwVkRaVnlESlJQYlhRL2ZqUUs1dDRTakdETWtDdEZ5ZUh3RWkvYVo1aXRweXpkZ3ZjVzd6Rmp3WndGZGJvaW0zVDNOdEdGR2tsMUJGdlpzWFFlZzY4NzhPZEN5dndUejRHbFJ1dDRkSU56MFNrQkUrKzcxb0VsRU1lb05BeG5RU05wWkRzcUw1RUhqVFNCNEtNTXlLaFUzRWUwN2dvOVJqWkl6T2lCNml5eDJxYkVTZ21OcmZFRGpjODgwMlpKamFNbU5vZCtDTUM2Tm5sZ0lvQk80NkhYWUoxbHpZSjVNOFBxSnZyUlNzQkxuNDgyNmZ0YllKK0tpcFhIS2JBcTdudnRQY29IVEJDMEZVeUFjVjZ5eTVBbGl5YzQreGZ4YnhrWFFQYnpIRUVvOHJJemVxL3JHdStpYmtxSndUYWUwdVRwdFVSZjFnQUIxNlhoZE9yaW8xUXM0bXExb2tvWmpJbEZXays0a1JSRmhtUU9iZUFIUC93WDNuejdCemlXaERSNm5qdFpmRUxzV0Z2SVpxM0ZPWWZKRk1QaEVPY2NkVFBoM1ErK3ovZCs4UGQ4NS9YdjhLQjVnS0FveDBPS0pyQ3VabmdVVFpjRXQ5UTB1TG9Cc1JTampIcnRVU295MHdyTmM4ODh5N0FjNEJ0UDZza1lkemZFOUcvc1Q5NlhjM2dlUlF1MUJ2ZldPUjZjSEZPeGpHYmdZVk5QRXhtNXZ1c0NzVWlEK0VjWHdJakhCOGRrZVVydGF1cDZqWFlGMlVkMjhVMU1iUGNkMGJZc05BNlZhNXAxelhQUFBJZjZ0c0tyMkhyMG9UUGZBcUNXUVkzOUpaOG9LN0JkbU9OQnhicmxYamY1Q0dZL1lVbkxKeHM5Nk5udVoySWxJMmJ3dkgvN0pudFA3K0ZNbEl1RWMweDh6K3FzKzNHMnBXM3I3NmthejhGd2p5SEY1a29LYkYzU2dtYkltRUUrUUtySVlocGxzRDRhNDMvVTZEY3k4YzdST012N3h4L0V0RFdPenQvUGR6eEFaUEc4Unllb3VIWTFsV3B3cWtBNjFQL3h3K1FGVGJENEtrTElVaHQyR2VMeUE2eHYrUExPSzB5YU9mZFhKeHl2Snp6d1UwNlpNVTFWK280MUR0dEpCelE2bmpzZDhDb1ErajdUMjNKekhEQjNGVkFodElXelB0VkhSTGFVUU9kMm9BUGtTU2xja0hPMGN3UTJFS3lMRGk1aVVodm5DR0o5WW1OOVdyMG8zejlXOFhWYWdOQVFSR05EamVnQmxUaW0xU0pxWCtrNVdiUWI3aU53MGVuZkxodWxZdkdXQlZhc1diaDU4cU8xRVZDams5ZXU5TEpDcmF3Z1pybThzamlsYUpTSDRCSG5LVVFqSG56anlaV2hhaW9PeXozdXJPOTl2b2VGejFCY0FOblBSZlRBVE5MMnRHR3R4eVhMbk1na0dvckNZUFNBM1owQzhRa3NobGczUzJyUHFSSkw1WnlObGVHMlRwTytRbWxCaVVjcHdUMlJLYlJIWlFveHdudytZekk1NXYvK2YvNFRXZ1ZxWDdQRkxueEtLVjNuM0taUHZBaDVIb0gvN2R1M2VlUHQxL25QMy9yZnFabDBYcU1PejNwK3lxWTBKQ2ZQU25CeHNoVHgwV2xBUWJXT2xjbVppWnBFQmJ6NDRvdUF3dGxBcmpUaU5peldCaWowOWJHUEQwbStaZmNmM01NVFVDckVPVnQ2bjUyYVVBWmE5bGRIK1VJTGVIVWdXTStTQmRaYmF0c3cwQ1hCbncrbHorclF6bWFmVlFJeW9qTEFZV3ZINVlQTERQSUI4M3BLbVpWVXpUcTkrZUg5RVMvSmtlRUpjcnRFQ1lQM0tYdmMreDZSMW5Ucnc2N3ZKL3ZlbjVVNHQyQ3R4OHo2RUN2cTN6NStteGV2dklndkxEN1p6dWxIV090dGQyODY4L0VKbDJnUFlnTzd3ekZETTBUUzZmU3dZUUZSWkdqMnNyMVVoS3BTTyt5UytpUFkrL1hkVElEa05PSngxcktpNHJhOUZ6WENFc0NtUmd3QmxJR1FFaVk2U0ZwVWVkYStwbFlPS3lraklZL1NxRDg2dElmY0t3cXZjRTBzdENWSWFqcFJScTltbFhIQW1PSGdnQ3VETlJVVkZUV1ZyMW5vSmQrOS85OVpzS2JDNG9salp2QStkVC8wWUhvTDN4REhEZWt0RkZTV1pNRGVvNEpCbk1mN09oVXh4Uk5saUdvMEErUnBuQ2dwT0J6dVlaYTZPNjZ0MzdjanVoU0lJakd5U2FrcjIwb0ZSVHd0emplSXFGYTRTKzFxSm1HR2F5K0IvcjNwVStjdFZHcXJiR0oyaUNheXpUcCtUeE5xS3VvRVpDUExxankwUXR2WUFJRk9haEViU2lRcGtZck1yTWNqaldlUUZZaTFZRDNsS09Oa1hYRjBjSWk2L2JGTyswWDhGT0lDeUg2R28rMVdzazFmOUZUdzBGWDRabGxHVVJSNEgxUGs2MVdOcUVDbXBHTlhBbkdRRXlFVmRjUU9saTFycFNSQ014OEMzbm9hVzZYT1R1MkdoRFN3aDBlMlIyeW5UaThla3h0dTMzK2I4Vmp6dDkvK2E5NjYrMk5nVFpHWHJPdjVoNmNwQXgyN3Q3WE9iMU5uZlBoRStzZ0lLbHBaZFYvajBWcWhUY0I3aThWek1ubkEzLy96WC9HWDMvMWpQTXMwZ1FUQWJzQ214QmFhalZ2am13cUk2YmFRVW1BNkI1ZXkrMXBIZlpwQ2MrM29Hc3BGQmlBekJ0dkViZGt3c1drL3ZZbytpRUhoSlRHMklSN2JJQnUveDBCSUN4TkZOYS9JR0pDNUhBaGtTaE1pWFVKMDc0MkZXTTdGZldrVmQ0cEFLUU1DQ3FIQXVBd3RrQ3VKVFppNjZ6RHVkMy9SRVlpNnVzaUlKQ1kxSlVORkxFVWUvU3FWelJnTzk5Z3JkMW5VVTdKU1dGdTdZWEI3MG9SWWZleFNPbEI5dlBOTU9sYXB6YTlLeks0RWoxYXRKckozYmZYM2tjZng0Qjh6SG9lSGV0ZjJtYWNlK1pFUHZhYkx0dmVFRysydzRYdHZFcWhEZzhad3lpbXJzS1NXQmhFd0trZUw3bVEzc0Zsc0tkZ3F3anA3ZmtKL294eU15Z0ZEVlpDak5wWGdDUjhhRkFXR2NUN0VPSVdJaGhDYktkVExWWWVNdkNUbXZIYzl0RTByUXBLeWlBWW5qa1lzRlNzV0xGbXlKaHZrc0ZvbFY0QzRUU3FIMnFaVXZLaVVxWUxHT3hxcENXSUpLdUF4YkR4UTA3MTY3bG5aRkRqMk8ydlpkWVhXUXFFelJHdENzcFFEUUdjc1oydDBwaWl5QVlVcThDYW02eHR2V2NxS0t5OWY0ZFF2bWM0bkhNOG5QRmhPbUtZOXMxaXNkY21iMWhHSTltcGQ4WlZBMHliVUFuaHFvbzkxdkJBR1pVNjlyakU5dFVlVHVOOFN4WjRweWJSRzZ3eTh4R1dmZC9nUTczU2xWQnBQKzQ0RjdmbEtjNEFTdkZkb1VTaVZvWUtCS2w0Z0kwb1VnZzBsd1RZSURnT1lXSzJCUW1NbzhYZ1d4T1lMdW81c2NFbkpqaDlRTkRtWmE3Y2hzdGFSWFZZZHk5eDZ4NnBnb3R6RnBmME5rSGxIcmp5aUc1eU4vdUZoN1RuY082U2dvR1oxVWZEMU14QVhRUGJUam5iRTk0RXUzOXMrOWp4a284YUxOSm1uS1ZZVUlScHBBaTNnOUQwZjJSaWlvaExKdXNTb0tsQjVtaW04UTNVem8rb21PWjhtQlgrR2NZM0RyNkFVYUJVd3BzYmE2T3RuZEk3M1VOY05tb3dzaTFyYzhYaU10WmI1ZkVvSWppelhHS014ZWNEbkMxd3g1WnZmK2t2KzdHLytKQUlVWWhGVEM4YTZDUDJ0aUtIVHdOcTlwTFBYMlVRN3NiVVRUR1JvWWdXeUZ3OXBkUjY4eEFJa242Z0I4ZFMySmk4MDA5V1UwVzdHeXMzNDV0LzhKLzdyZC84S2pVK0ZVMjZqNVd5L09yVHA2WkFtZ1NRTlNLZlRyZHVOZ3lZVlBBM1k0Y2JSczJocktNbW9GK3ZZdWxlQXhQZENRRnhpZ2xML2Q1MDYwemhjMUM2MmdyYmdrL2R1b0pTUzMvbWwvNGx2Zk8zZkVXZ0lZdU5WWk9QRTZub2RnRGFXTXJGVjYyWUNWb2hQZG1CZXg1bSs1OGthMmowTzJ6eW1hbzg3RVl5SGhFZ0RpbHg3YkxQR3J6WEZjTXoxL1J2Y25iN1BiRGxMSU1XRE0yaFJhUUlEMjZ3SkJyd05hQWxkOTZMemZHTGI1MW9XTUIzeTduZXRBOHRxeFdpNHg3SmUwVlFyc25Fc0pzc3dWRVREcGE2Z1l3c0Vxbk1oeThlSy9rWTlMSFBldkN4c0YyNTNqRlVDbmc4eDM1eHpIL1ZUekFsa0NFbXE0YmYvamhFcVc2RUlmUHRIZjgvbFh6dENYSTZ4Z00rM2dHei8rUGVQZGNmT3B6Vk8xeWdFd2FpQzlhTG10UnV2OE9aYmIwUkUycTZOUFJRb05JNVhyeitQWFZhRXJFQ1pqR2JWa0dGd1B2cWh4bnZMcHk4Sm1OUnhUeHprcHNEaldUWUwxRmhZdXlYbDVZSi8vc2Qvb3FKaHZscWhpYWtGcWVKWFYrdTA4VnBSNnd5cURJdmkxcjMzZWZIWnk1UzVwbDRzeVlzOW1zWmluU09vZ0RJNjZhdmpPS1NVU1hwUWhRb2E3VTNjcmlDeE81cDJOTXJqUWtNbi9EU1NEcGZDREhRNnBoRmRpWXNGaWdXYVhEUXk4MXdLQTZ3L0lPeUNPeENtMVlMYnAzZTRhKzl6aTl1c2FSS1RDOTRvbk5rMHNPa3EvZUw2QUNVT0k0WUd6M3Bka3dHWlYwbFlvWkRSa0xDd1hET0hETllPck1LbEFqQkg2RTYyQTdBQkxXYUxoWlVnY2N4VkZvL0NTWTRYcUJzd01zWXVQSWR5eUI4OTlZYzQ1ZkZpWTJZSWo4WnRkZDZLOTcxSzE3ZVB1dDRFa0xYWEdHZklGaG5hRzVUM0tLbVRYTVFqTHQ1a202NklTYnRyTTBxZ1RBc09RME1tQzZ5cU1RT1lyYVljN0I0U21wdzk5bG5SSk11MGkvZzA0d0xJZnE3Q2J6OUs3LytoblIzb1dOczQ1ampPdDA3aXpHYzgvQTBLajdVTnJta2dhRlNtMFdMSVZFWUlrYTNaM2Rubm5YZmZJc3MwMTY0OWhTaFAzU3p4M2pKYm5sQ3RadnpGWDMrVHYvelduMUg1Uld6SWtDbXFlaDYzOWd3VHRwbmxWWmZLYW5lcHd3RjlOcWozcmhCZ1M2YVZJaWdQdmgzWVZHSVI0K1NmcVRneG1Rd3FPK2Y3Yjc3T3pUdHZZbG5RMENTbTQ5SHlpckIxNUhwUHRxRElDeHBOcVlZWU1SZ2Y0Ym4wam5iYnVsSFNQbWdmMWEycWUwVjZsQzZMdW5YY2xFOGRrb0lRUXRFZHN4WUVTMmo1TEhBaGRBQ28vL3hEajYwZFdGKy9kazVzZHh6YTJGbEo4bklFandrRjRnS0ZIcVRpT0RiZ3prc3NWRXljYmdnT0p3NXQ5Qk0zMW9tcWtjZ2s0VnRaRFlqZjJOT2Z1Mi85NC93azMzL09Sei91UlhINmZsZ1MwQWV4WjdId2xqU2xkKzIxNTdJRHZDMnpueklITnNRRmowYVl1VG4zcG5kNWZ1OVptcmxGbjlOWjdlenRwWHBEVG44LzQ1VVRqMitHWnFBS0RDYXF5YnQwZ21BUVJwU1VLcWNJZWZjTnJmTkF0K1NTK1BuOVRtTVNGRVlwYUZ2cWFxaDlUU2pnenV3dUU2WTBXTm9PYlRwOXVpY3hzWXE0WUZSeDdIUjRac3c0bmg1emFaeFI1bm5VdGt0T2xxWEZaSWlNWkpzSmVWd0VrVjRHNWN3NFRYUW1hUmN2N1Q1dDhLSWd0Y2Y0V0dDbGl3eFZhQTd5SFE0UGQzaW11Y3FyNmlYdXJPN3g3dkpkUHVBT1ZWUGhtN2lqYWdDK1R5ZEt1dDlEazBCaE9tKytkVVJRMFVvUVJVRkc3aFE2WlhUT0cxYzNMUFRENFNWOXByU1pwZmk4Y1NwQ3lpNzcwSHJmK3RpZGpOQzVYOFF4VVQ3U1lqSktCYmEzRGVucDhJUGdSVy81N0FvQlV0Rm5veHVhTFBwcUl4b1ZDaklLUGk4U284OTZYQURaejNOc3BmZjdBMlFiSGxUOW1EYVRqd1pwU2dZNHNxU3ZMRUF5bEluYVVnL2NlM0NQbDE5OWtmbDh5cDNqbTR4M0JnUXE1dk1aNVVqem4vLzR2L0IzMy9tdlZHNEJPSlJXcktvRllDbkxrdlY2L2NqdmY3SklRT3loYU1HWlIybXd0c1prR1pQVktkLzV6cmU1ZGZ2OTlONzI1OG1pWmJKR28xRXNyTnNxbTM1OHRHbTZQckpTYVRmYS8wbGFGY1NKTVA1QkJSQ2RJRXphNWJOc21uZXRPcEJ6SCtOODJqS3UyNDhQN2VkRGY1ZlVHbGFqbFNHSVoxRHVvRERncTdRVE1UMFprTzdkMWp0cWF5bU5SSzN2RXdMS1ZqY1pRc0NvTEVJVzc4bkppY3EvelRINnQ0d0lTT005R3BNd0VUd20vTEs5UUFpY3VaOGhzbFNjNjZWNjN1V3pCU3A2dnoveVV1djZ5Y01pekxsNSt5WXZYWDRKNTIxYys1M0RBdjlFRVZUUzdRL1lZNWNQbUNXcU9jVEZNWXBkeHVUYWtKUEYxc0E5UDloMjYxVWcraE96dVg2QnJsVTJSaUZHVTlzVjJhN2gxbHUzV2JCTTEyOUtnUFczcTFzOCtJVDJJdHhmc3VEdTVDNlg4eEUzUnRld0p6NUtJb3lPMitWanUyMHRrcnFFOVlBMUhxOXMzTmJlVWtTU3QybE1uandlL0VLN09GUVlFeTN0UWdnMERsUU5hTU5BRFZHRG5OM0NNUjZQMlYyTnVUUTk0SVAxQnp6Z0FUWTAyR1hzN2VjVVlFd2FGM3BsamhKUGcyVnpqWGp2TVFpbGpocmVKd3BwZlczVFF1S2M2NmdGdEVFOHJyM1cwaUdLN2dMaG94NnlEdzNmTFNEU2R4TDF0Q3FBOGdFeFVJZUF5NGsrQlRtc2pNSW15N0tMK1BUakFzaCtwcU92bTl4TzVqNzgzSG52OVdud2VzenJQaVFrS0pBU284SDdFTnQzT3Q4Qk14SFAvOC9lbXoxSmttWG5mYis3dUh0RTVKNjFUayt2TTlNem1BVVFBSktDQ0lJaVJkRmtKcGxJMDVQK0JabnByOUtiWkhxUVVUSktYR0NpQkJBUVFBQWtod0NHczNUM3pQUlNWVjFaVmJuSDRuNlhvNGR6M2NNeks2dTZxcXZCSG83bGFhdU96SWhJMzkzdmQ4LzV6dmZ0N0c3eDhPQSt6Y1N3c2VWWnJKNnd2VE5oZWZpWS8vVi8vMGY4MFYvOE1abUFSWERPMEFZRnRLQ3lVYy9tRFQ2ckR2dnlZVXJuazhFd21BNlVRY3dZNkdLSHErRDA3SWdQUG5pUFZwYUFhc3UyOGRYTFN2M3gydHJhVWlldXE5TWJULy9kcFFmd01LZ1ArM1h4MlBUTHRTS01IYmw2am0wMmVlQW8ydks3VU42WHAxOWZGY1NMQVpLbW81eFRIdUxtZEtOMEkxUEFtM1ltWjBrRGVFNDUwWVlXNmxmZmhqNTZ2V0RubkFyZFo4UFViWENVanI2UTVWOGRwZkdFU3huUnl6U1ZTeit2NzlqaTFqVDZXbjc2NjhERnU4VU1QMlUrNis3WFplbVJEeVFlUEg1QUozSFVJU012REw0dWh4YUdWQ2UycVNwMnAzdVk1YjNSRG1wVDJmWmtCMjhyS3VOb1UwRjhvK2ZNMVJ0ZEtnM0dFTE1hZ2xodmlTbmpyT1BoeVNOQ2FjNkVOYU9pTDRNNzBVc1R5UkFEbUlva2tZamhzUnp5Sk81enU3NUR3bEtKa0tPQ1BDT1cybXIzdnBSckNoZzQ3cm5vMElvSjlHZERYZnVVdnpuY2w4ODBHUm1mRnhEbndhb1VXa3FKdHRWbnAzSGd2S2VicjlpWVRkamNmSk92N3Q3bXllSjE3aC9lNC83aUhzZWNNaWV3eXBIUWxmMm1hRktYaXpMSk9KdWVJUXNHeDlUUGxIVHozRjZJNTRjUnBUS3NwMHFYSjBYcjYycklVUnRUdU1pbVNJUzllZ3lUaUNzaVlWQWxMcUYzZGN0WmNGaHFxdXQ4N0M5SVhBUFpYNHA0MW0xNDFXMTJNWVhWbDV5ZkZlWjVnNVI0MmpianJKYXFZMUZITUVid2xjRTdlSEwwa0oyOUNhdjJGRjhsZG0vVy9ORWYvNy84NC8vemYrUGc2QUFoMEFQR21McGl6R0NKRVVMOER6SGZIUS85NDF3am1qRXdRazRSVXVUKy9VODR6MmVGTGFiT05WOUU5SVBkNXVibWtHbGFaNXcrSTB3Y1plN01rSGMzOG5RVGxDblduSDBLVDNBcS9DOTZuZ1Z0REJTaldTWDltaTFINWVsWHpjYWxOWkRwMS9lczhlV0t6M3NsRElNanhjakdkQk9MVXlEUnA4dlVVNG4rWExXMHpGZHpibTdtNTF5NUx4YktZN1NGa203d09FTHVNRGgyTm5mNTlPUytRczBoL2Z6RlJpbVVEOWxaTFo3YVo2NUxDb081Qjc5OTR2WnB6R3N2L2QyNmRGN2dFNkR5UnBlM1VWM2poQUFBSUFCSlJFRlVSOFovWklwWlI5SjFuM0RDMGNsanR0d08yV3E2N3NVRnNLN1luMklmNjYxblozTUh1N1JLOHluSlZvTmxkMk1ibXdyL05IV0lXSEtPaUdSTTBRT1YwVDB3YnRic3VhQ1poRGlkcUM2NkJXZUQwb2dla0xHYTJKQU03eTg1azhCN2JJQkk0SkJqUGpsN3dHYTl6V3ZUMXpGUk5ZMVZqTVJTbXdhVElVWXpaSTJsZE05YmswZzJGaEJtY0VuTDA3Mmw5THE1OFdxSU5IYkp5bGdXS1dHdHgxa0h4dUpLODZXekpTc3NCbGFSbkJKTnRjSFVWdXh1YnZCYXZzbWpjTVJQMHM5NXdqbHFDSjF3UkRDV3prZWR6MXVJd3RDZlFVd1lHcVorV3VoTnJ4TGxTVktxUWIxUkEvU3ZkbERLeXFXblFmc2E5QjR4WkpwNGtVcjJVbUhrd25wNnR2aGF5VUJVdU1VS3RaaWhlUzFaZzdlT1RlcFh1dmF2NDR1TGF5RDdTeHRYNVdueU91TkkvMkpMMXVzWjhWeXdadFVVd1Nyb2NoaXNOVmdIemd1WXdHdXYzK0QwN0JGVkUvbjVoei9tbi96VGY4U1AzL3RMTWkySmp0clh0REdRSkFOSkFXMVVjT1k5eEwvQ2xsRE5DQUNsdENYR01OU3ErNUhNcU01clRCMGYvUFFuOUNhUWlVQk9WNWcxdlBSR1VMSWNodGxzZGtFdXlOb1hFVnhmcjcvM2dEZXk1cWJaMFVSRUNzVmdYZHJQQmJnNkVNalNmKzZRTEloeG8remRGYStpL3hzQTg3ckQ2dXBOdmZTNUFoQTdBSzhjaGFhWjBnTTdUWWpwQUwxV3FCQmFPaFlybFFIenBqVG1mYzdvZ2F3eE9wSVpZN1NKckhMczc5N0FuQ2hUMWx6ZXJTOEkxQ3FjdWJoZ002SlJYSXc4VUY3NjZydS8rR2twV1ROQ3VPdHpsZW1QbE9wbVBzM3RIckZsUnhsQmF5MDVKUVJQUzhmUDduL0lkOS80RG9GQVpSeWYvL2dYTGVFTUZzZk81Zzd1MFJySTZyVENzTGU1Qzltb2FVZ3FSZ1NTbjFKTVFQb3IwdzVIcjRzUjZ4M1JxT21CZUhodzlDa0xsc1NCSWFuNzJ0TUxlckEvWkdYcDdVdWh5N0FrODFGNGdIeHEyTHl6aDZzcXZLdDA4aGNMNzFoUXZ4T3Ywd2RkVDZmMnRnTFdaQkE5YnJZNDhRMVA3QXRnTmorRGY5b0R2RFVmMStJd1ZyQko1N2NTaEUwL280c3RjYlZDcWtUVFRObXdFL2EydHJoaGJyRjZGUEZ5eUdPT2lPcHZoaERYVExUeVNEUUdpQmxTeVViYUdwdGNxU0M4WWd5VnBUd0N0SDF6YkZGbE1SVDdoLzU4NmZHeG90elpwekxaTC9qYWMyMTd0UjRHb3dadENnTmJxZzdhckZjbGg0bVdaRlBSMEg3VnFmUjFmQkZ4RFdUL280K2VwemtHR1NWRmNTRWwxNFBZdlA1WkhNamtGWUJzeGxVWjNBb0JyTTA0YnpBbXMyclBPWjhmY2JhRUowZjMrWU0vL0wvNWt6LzlmVlp5Z2lFaXFHdFFHc0JneGptanY1ZG5ROVBVeE5oOXp1UHlvbkhwK0prOHl1aW9CcSt2REt1dTVmMzNmMEkvcUgxaHJrOURNbE9vNjFwTDNCUWdhOHhuTkJRVmFva3BIRUY2RHF4K3VzNXc5QVBqbW5RcFJZZlc5czFjWlJEdnkyeEcxZ1B5czE3QkZaRnpQUTdqcnZXcjR2TG5SdlRuM3ZZaXBFaHQ2OEp5TEtCYXRMbGt2VVMxQ1QxdjUzU3B3elA1N0dQOHZDT1lNOWIybXBSbEFFMUNYVmZzNyt5eGJ2bjY0cTBvaS9udEZVU2dwN213UFlDOVFHQ1dBaktHNVVIZnBOWGJidzdsNmNJaWtrdHI2di91ZWNPeGFrd3pBUHIzUC8yQWI3ejFMbFZ1OGN4ZWJHZWZFZFo0cFpiZzJKeHVxaE9lVVFPUEdzZVVocTNaRmphYUFtWU56dHVDTW9zZVNBKzRybGgrU0pGNjJ0RG1vSTFlTlh6MDhHTTZRcCtQSFhaK0RmVFg4d0JyME1tZWRFUnhDSmFXVE9LTXpEMjJILytFTjdmZTRNYm12aDZmd2xlZFNJTnhkbjMvaWVDeTE2TnRsRHVyOTVFdDRPbFNGbjdJdkNyQXpSY3lzZXVmbkZNajc1d0xHRTVHd1cxVTBPK2t3b3ZIMFdBektLTkJxTVNSbmVNYk45NmxXVDNFbjljODVvbXEwVW9vRDRPeW1qNmRYeDdWRmxPeXptWjRUbnllRUdQSTVUcDFvd2xYYjVaaFNrVkdzNlVXWTNSU1pZM1Z5bERoemVaK3d2WjVYbGtmZG0wWTFHdGMxUkZzTVlOUU9vaTNGU0ZIT2hHaWRRajE1OXp6Ni9paTR4ckkvakxIR015YXJQVXpvL3FncXJSZjZiOFgwSHk5Y3ZFMmdNeEpkS1FVTkN0Z0twSUVqczgrNWVEZ1B2L2kvL2xuL1BpRFB5ZXdvRFl3OFk1VlhBQ1pTZE53M3JhRGRXUktDV05WdXpaR21NK2ZCMkw3NGZjVndNVWxvTjl6MVlhTXBjbkUyRkZQTFdrVk9BcUgyRkYydTZvTm9YdkYxTnlJUHVDY0tqMklJcmlYbU93ckhCcVhtZnV1NXN2ZjY3VmwrMHlQbW4vcWU2NzhpUzNyN3QvdlMzZVhYNDNrUzBENTVUS3l1ZzJ4bEFzak9VZndaWjJVVFBFUVprVDZFTHJZMFVsZzlvcEFkcDJSZFVPVG5TVHd4ak9iYkF3dzF2VDZSTU1oL1dMWWNUMVZvSTgxVHJVWFFhZGMrUERsRTBFRkNPZExsOVZWZDQvcGVaTERkMVFTenhoREZzTWhSN1IwVkZJek5XUDQ5L0xocmNWbGk4dkN4TlhVVkV5TjVVeVdPRHdORTJiVkZOdUNkNlU3M3hXakVCT0hPZnV6SXVlTXF6dzVDSzEwUkpjNGlJK0wzV3NlUFIvMXNoenZqUVdHcEs5b0hRYXJWWVNZTW1jcytFSDZJYkxNMkcxMVVhU3p4Qnl4M2xLN21oektQU0lHak1wdXVXeVZaakM2aGk3a0hTNXhZL3NNNFRnekt3WEFTUTZhRU1oZzhUaGZVZUV4dm1RU3kwU05EQ2xIMGtydHJaMTNUTndHWDkyYUlNN1RkcEhRQlU1b3RUTS9BaE9HNjA0TlEvcGN0ZDRmZWpHOTJuMGdoVHFrMldXblJpU1hIaC85L2t2L3VDL2JJd1dNcHVGK3NDLzVldWw0anBOQjVYTm5CVWs2Sm1ScnlWWjFwOWY1bld1VzdDOUNYQVBaTHpsMDBMYUVFQVozbEs3cmNIYW1UbHl1MU13UTdXb1dVMHJQcFlobTBucEpSYVJVU3FNRVpOcDJ4V3hXMDNZckJWNXhpYS9BV2lHMkxjYUR5YysrREZJSXhhTFdEcHhOZFVQS1pKWVlmMDVpU1J0YkRwOGM4dUdIUCtOSFAvNGg3Ny8vRTQ2WGo5RW5qMm9rcmlTcWUwNFpKQmR0cTF2ZWw5UExZUEl5ZElMZWYybGNraGU1K0R2ajc1VDFEWUt1b2lrQTAydVA5c3RnRFhLc3RmenN3NTlTNDFtU2lLWDA5Z3p6M0pjTFdTT1VDMTd3SlJUWXFrYWk5R25UQzMrZVJ2dWt5elBEZmtCTWllbDBTa2lxK1JxekFzZlpiS0thdi9QVjAxemE4Zkx6Y3lZeVpiMGpMRkJlMTB1NFVQNjkvTGtScUdEUzFIeDZkTWJXblEyNm81WmVlVGVuZ0tFaFM4SmpnVUJId0ZQeDQ1LytpTi80OW0rUjV1bUM5V1dmN1hYV2FUTmV1Y2JHbjQyVkdmcHRqQkp4emhGanBIWTFYZGZ5OWh0dlkvOUVPZVNhazlXbU0xZDVhdCt3V2k1ZjdRb3dZQnFEaFA3YzZXbXpHTHl2Q0xGdkNPb3ozcXhuS3YzcnhjV041TFBXQTJ5OU1hR2JMekRXZ3FqalVvckY3S1RIeWJJdXFWOCs0OTU3UWd3c1pUbUErbi8xL1QvaEgvN24vd0IzN0pFZ2crTlcxM1hVZFUxZDE2eFdxL1c1bHFjejhsYUVtSlFlc2xvc21HNVBlVzM3TlQ0NC9Sak5JZGE4cy9NV3krTUZ1MXRmUlRxOTF0cTJWWms2N3duanlkR3dmSWJuUURhUVJGMzNGbUhKK2VLY09YUGFZa3piYjFzZk12cTFyMHlNSnc1UkVyRTRGdFFrYWp3L2FuL0V3VWNQZVdQM0RkN1lld3R2WjZ4T2w1eWVuTEJUN1ZBWmxSV1RvbnNxV1RCNHJQTms1NVNMbm9zdVIxYWFnSmE2cFZDdVJqRmtFbk9aY0FxT2pMRmFacGZjRVVWVkZ0YlpZTFFOSHdQT1lZd2E3cWFZeWVmQ1RLYThlL2NiYk01bi9NV1RNd0l0VGdKOXNheHFJQ3lnbWt3SWM5ME01NXllajFlcHJJdE9JRk1acTZaMVRWd3R5VGxTTlhwLzFhNGZtekpqTjY0TW1wRzFlWlJjK0J4UkpnM3J5YVFleC83K01zYXlhbHRtbTFPOXZsY3RzOTFOT2hPdkdiSy9RSEVOWkg4Wll1QVlXUzdhNXFpelY5MTRmTjF3ZlBJSTV6TXBKK3FKSjZkTzdRanRpQnQzNmRWT0hDa0ZWaUd4V2kxWUxGYk01MmNzbHkwaG52T2o5LzZVMDdOSEhCdzg1dkhqQTlyY0E0ZE1aVHhCV3RibGUrSEtITkNYUlRNcWJrN2p6UmlPbnNsRnpTQVA5cjZSeURnTC9FWG9pSTRIMFJqak1KbnBHNzZlRjFkZ0diME9SbDdpMCttVW1DTXBSVnp0c01COE5XZDVkb1prbVBuSjh6dVBQNk16T0lzcVMvUU5ONWRmUWE1OFgxOFR4K2VQMlRDYlpCY0plRUt4SmpiR1VGZWV0dFBXcGo0N3FjU1p6TEk3SjZTV2h1cEs4QjlqTExTVnp3N2JjNHBGQzduSkZERjlzZHkwdDdpZkZWamhMVjFzeVRFUjh4Y2pnaTQ5c1ZQQWVVdHVkVktWWTZRcUVGcHo1Y1dBSWFPWnhIeFIreFI4dWJ2S3NTck5Rd0tZVG4rWHBEUEUvbTQwRnk3NFB2cDhyR2FlWUQxWnlvVlNZNEI1WHZEazdJZzdlUitmMXphbHZXM3RpeDU3STFxeWRjYmhjR3hQdDdDbkJvL0hrTm53TTJwVFlaTXBoaVhGQlVwVXRjREtXbTFaUnN2c3Iya1JJVW9tRm43czRka2hzVXhHSStuaTlXMFlwTXllK1VnYWdkb3VSMDQ1WWNXY00rWXNqbHZPdzVLdmJyM0d6ZWt0dG1aYnRPY3RJa20zUDJXeTZEbXdWZ0hwc2x1Q2RUaWo5QlpuSUNkTkZFaktWTTN6eTlkRzFrRE9rT21kRlJHMVpSMW5ETXYwb2RBVXRNSEpCc2ZNVHJBNXN1dTN1Y01kbGl4d3VWWDc4YXpGdS9GRUJJcSs4Q0IvOXZrQm5YT044cS9GME1Xc3dOMElMWUhnTXFZcTE1R014eVV6QUhwajBuTk8xbWRGNFlvYnZlOTd1cFdnU2dVNHBaWVlxNjVveGhpYXl1TXNwSzRqc01TOENvaStqaThzcm9Ic0wyV3NIMTVOMDNCMmRzelBQL294Ly9QLzhqOXhjdnFRNDlWRE51cWFlWGZDWmpYbEtnRGJ2NGFnS2dSOVk1Y09nckdVaERvMDJ4b3VyTE9QN2twKzdSWHZYY1pLVnlLMHE1Yno2bVVkVzlaL1diQjlBRnpHRUdOTDJ5NkpCRXpQYkxTanN1TVhFRU1tM2pubG5obnpBc2RBOTBDNXNIM0c1Mkowc1dPNW1wT3RNSnRPcUNhZVNlM3BjcUJ5bnJUc250dXdrWit6azBZZ093VjBmZFBFNVZkajVNcjNyVUMyQ2I4cHVHMm9tcHBnVytidENSMHRVVkt4OEhWWWE1QWNNYWdhUmdpSjAva0o4L2FNR1ZPa2NMejdqTGExRmtrS1pyMS9tVWVjWnJHTTlKSklodGRmZTRNSG45d0RMSlhWSzExS0p0RlpSM3pWaTJCZFVJR2d3TXpqY0hoY3lRTXpmRVVML21tQW9tclhXWXE5Z0E3Ti9iNElFSW00enVHbzZZQzZkb1FjY0M1ckUxVDcyWUF6b2VuYUpKbEVCSVN6TU9mZXdTZmMzTnZEaVhMZG5kTXN1SWhvdytabmhrV3l3VmNWWGh4ZUhEZTI5NUdITWxpUTdzeTJhVnl0elV0UjlTdU1VYm1wbk5PRnpQUFFnYjZHdElnUllsYWhMZkh3NlpPSEpDS2gxeXpvdnpwS3psN0pXMTRYVHRhdkR0cXNvSzdqbkVEZ2VIN0s0L2tUM3RoNmc5dXoyK3hOZDJqeWhBcUhFMHNPbGh5VlJwT2k0SnVtTEw2dkFobU1zOVJpUzFWcHpaVzlmT3dnNDZUL0pKZHBYbWtPTXlCWWVodUFub3FBb0FZdzVabm5JbXpVRThpQm5YcVgxL2RlNStUb2lITmFVbW9WMlBkQU5nRW1rMFZZcFNYR2JhdXl5T2VlMEZzSUdZb3lRTXdaMDFUNHloTnN4RXdyRnJGUGhEQ1NFK3lmZVQwLytoWHVRZEYrRVRFV2pLVnZscFFDVWJOeDREcTEzVFVXVjBXTTdRanBuRFJZazEvSGx4M1hRUGFYSVo0RlJJdytDRFVMRVBudzREMWdBYXl3WHFoelpCRVBCc2VvS3pObkpibG5NV2k2b0FoUVowRkVNeHBXd0Z4Nm1Ed2xNSDVGckRtUGwvZm5KZmYvVldJbzFZMHltYVBTckRHR0xrV1dYYUZCYUw2VS9JV2tZeW5yMHV6cllyRVlzb3M2V0k5SHoyZHMrekFDMndMQXhoeGZZV056aG1zRWNabXoxU2xkMTJFYlF5dXRPaW01NXlkZDgzTUdDVE1NSXMraEh6em5PR1dUYUdVT1lsZ0t0S3VXSlVzbVZjMkNGdXNncklvRUdoRkR4TG1LTGdUTzR3bUhoNCs1dVh0cldFL08ydnppbkVQNDdJejI1VmgzTUd1RndvcmxqZGRlNTg4K3NXUUVxM3BnTHpISmVJSG9nVUFHeEhGanNzZnVkSWM2TjFUR3N6cGZEdG5GaklJUU1WZm9EUlIrTjR3SGZNQWxscUdsM25TY3RtZllpZVhnOUlBTWRQRmlOcXZrdW9hZkI5ZXNRcXdWZ1dUMHZqL25uSThQN3ZPOTNlL2dYRDBZU2pqbkNDR1FVcUtxcW5XSzgxbVJNNDVLcjlzazdHenM0VEJVTkhneTI3TXRtbFJqb2lqZjA3aWhuQzBpS3RjbkYvbWpWdXlhSzI0dFNZUnNJZWJBcC9GVElxS0EzUEgwUTZpYzJ0VGZldVBQTHQrT0JxaDAzU25DS2dXRWN6NG1jSFIyd3M3Wk5tOXR2czFXdGNIZWRKZFpzMEU5cVNCQkNobEo0R3FCQkYwSW1KUngyVkliaDNmcWtLalVtS3VmQVQxdzd5Zmh5cVB0Z1ZqZnZGUnFHY1ZCak9Lb2hjazRzWGhSSytZdUNkTnF4dDN0Tzl3N3VjZURmS2phdEFSVitCUFdqYmdpckxvbE1zMEtSRDluUmxZZFpUTW1KWXkxZEhtRjg1N29JNGZ6SjFnUGJtSXZQR042ODRpZVp2QktQUkpRTXJKQ01xYm9CdnRoUFU2Z3RvNWdPN3hQNmd4SHhEUXQ1M21GcVR3eFhHZGtmeEhpR3NqKzBrYVppUk9ZVER5M2J1L2lTVlNWWVJsYWxxc0ZNUzlmV01zOEQ0UHQ2RTBEM3BibTRTdkdLK2VHeHVJWGlLc3p3bGQyY0Y5Y3k0dXU0Sm5SbDVGSFZkNnlGZ3ZXa3lQbGdWVU9sbjJobFBFTGg3VVdFcHlkbmEyMzZRV3RGM3ZRcFlOWkFjRmxKaUltOCtUNENlSWk1KzBaZi9pbi81SVBQbm1mWnROejNwNGpCaWErZWk2UWZUNFkvR3dkMStmL2ZhVHRGbFQxaENnVFRBMUg4NDg1RDJkYUZzMEFTU1hlU3RrM1NsOGVUeng0K0lCZjJmK09BbGVSQVVEMW1ka1gwdUVkUW1HY0ZiQ2tOYlZnL3hhYmJCQm9pU2tvUjlRWWtpUlMvZ0owamhONDN5QXAwekRoM2E5K2srOTk3YnRzMlUxb2hZMTZOcHpqNFo0Mm1uVkxSblZnTXpyb2F0TVVJOGsxb1dvc0Q0OFBxSGRyRnJMZzRPd3h2L2VudjgraW15TTFMTHZWTXlzZ2hoRlRxUkJvZzBRTWpvN0F3ZmxEVnFzVnU5VVdLU1ZDQ0RpN0x1bHI4K0x6TTdPU0RTbnByRmtTVEpxR0RUWm95VXlaTUtzbVZNa3BpczRXWEkrbExtNndPbnYxZXoxNjM3dGlmSkE0bnAvU0VWU3ZvT2RsNUZFMVpweHhIVjg2ejc4RjZKT1dPQ0drUkdLcHlob3NlSHorbUcxMnVYRzJ6LzdtTGp2VFhUYWFLZlZHUTIwcThpcGhqYU9vN2l1Tkl3ZFNkcmk4eE51R3AvUEV2Y0tCTFg4emZnYU91QkVqNnRRRjBmL3lubExVTFRaYkNJTDNsbGt6WTdmZW9WbE5FQVJEUUZLWjJHVGQ0VXhpM3MyUnpZekV6MlFmUFRNc21jWTZmQmF5ejh5WEs5cVlPZW5PK01IUkR3aEVWaXhLVzk3d1JCNG9OUUtFVjJMSXJtWG9FclpNM0FxUVhiZDRZbEdqaUVTa0l5TVlXcFJXMHZGWHFBOTVIUzhjMTBEMmx5NUdXVG95WjJlbitEcXdYSjBSYWJHNUJWcXNGMnp1U2ZQUDRUZ21oaVpPc2VETFUwUkxmSTdWUEdLd1ZMNHFaVnd0NllZWVhoREUya3MvMnl2ZS82dUxJWHZWajlpRGhhc1MvbFVzZjkwb1psQTcwK0dKK2dWZzJoNXduWjZlRG8xMDNyem9ndGZIckMrM2pTMWlKNU1hTzIzSWJlVHc3REgzbGgvaGxtcTFLYVMrZ1BZS1cvLzVkMTVkcVRJc1BKa0pCa3UyNXhnSHZvaHBwR1VtNTREekJvblFCU2tzNWN3bjl6NGlmVE1OallneFJuSnhPTEtvQ3NiTFVRdjZYZEpzckJYTGREcmxuVGUreHZISDZ2RGxqQ04rQmpoN21mV0FvMkZHSkRCbHl0M3RyL0Q2N3B0TVlxUGdwbFdBT3I3UWVpQWJMYXdLM2NCblE1WFZxOTVKbnkxUEdDeGJZVVlkSjlSVnc4Zkg5Mmk3UU1ZUjJ1NlpDZjhMYjY4cjlhU2NjV1g0bjNQT3daTURidCsrZ1hPTzVYS0pkMDRuWmk4UVJ2VCtpbDNBMWxwTnNCajJOMjV3Zi82QVhYTUxUK21PNzRYK2pSbXViMjgrRzhRNDUraU1ObWdkUEhxRW9LQ2t2MytOckpXbEJqRGJiMzZmTFMrSHZpUWoxd2RvZE9tTG9JS0NUcHNQbzdSWU9sbzhDMVljeGlkTWoyZHNIMit3T2QxaFo3Yk5WclhCVFhlREtRMzFwS1l4bFo3ckxwUGJvQzVrcGhwbDJETkdmTm51L3JsVmowZ0YraDFodmQwS012V1R5eGF3VlliS1dGSk1xdjJkRERrWXRwc2RkbGU3UEdTRm8xby9KN0tBVjFySGVYZEdzdm1WT0tKR3dLVk9PVnJXZ3Vrd3RhR05LeDV5d0pLV1NDWVM2ZDNsK2tkdUQyUWo1aFZzWXVVcElGdTBXMUNDano2amFpb01pWTVZdEljdHlVS1M3cVdyUHRmeFZ4UFhRUFkvK3JpcXo3aVB6TjJ2M0NibGM4NFc5NEJJbDVaQW9BdmdLdVdkS2YrVm9YdzRmalhPSzM4cjZZTXNsdmRqdVgvcmFvc1VoUzRHdXRpN2NtdWh5OXBMSE12TGcrYndEQmdQZlAxSVlpNjkveCtpaE5PRHdqVDhiZ3dZM0FBMlpkaXUvTnlxLzh0RXYrejVmRTVLYVEyVVgyaDdDeDFDbDFSZSsrWWM2RnB0U0lpMkk5bElLbnptUktEMmxpNjNGOXlDWGo1ZWNTRExDcVNGU2swbWNxdjRMcFYvRGtpQ2RVVnNQc1BFUVU1dzcvQWVKeWNuMU5PR3lXUXlkTTYvU2hneGVzNmxCem1PZDk5OWx4OSsvQU1DUVV2bk1lQ2RKNlpYQTdTYTlmRVFESjZhRy9VdGJzeHV3VG1jSDUremFXYTQ2SERaTUtZTDlFQVdLMWdyWUN3MnFhdFQxUU8rY205MUV0bXltMGlyM09LamV5YzBUTWgwR0F4TG5tY0RQWW9CUzJWRVZNa2hBNTg4L0lSM2Q3N0d4c2JHUUMvdzNxL2w5RDVqc2Q3VkxFTW9mR0NIUk9IV2pkdmNuMy9LL3U2ZVd0RW1JQnRNYVdReWhhNWdyVlh1SWlPc0xWd0FtTWJveERQRXdQMTBYL05wMWc1QXRMZHpHTEtxd3diYi9pU05MdkZTZ1pEUjgxR0thWWtJbUV4Q0NxZFlNNnlWU1VReHRLeFlzT0NZWS96eUliUGxsRTAyK1hyOURwc3lZMVpObWRVTk05ZlFHRFZZY01acHh2ZVpjMXBMTDErbFRzRXkydGg4d2ZGcW9JejBDZHVTd2JmRzBVWXQ2UXNaZ3JBMTJXU3YzZWZ4NmpHNlJ4WkxLRHVzbTdKaVFTWmd6T1J6MThRTUdkTWxuQ1FNTmNaRy9FejV4TXRITFMySmMrYWE5VFNKZ1F0YjdzMHhGZVpWNHVLNTd5Y0l1bGNlTldJb1oxVzFMb3pSN2JGR09TalhXUFpMajJzZyt3c1hNbm9kUDRrS1FaOWNickkrZGJyK2loV2dkUFAyOVo2VHd5T3NYeGF1VmFaeUR1Y25yTHJWaUJKZzE2dTg5Q3F4ZnpDV3ViQXAvNngyVkhlaEg4d3ZBbW96dEVSZkFoYWpETWRuNzM4ZlY0T1Q4VGQ2TERmTTJMTU81dXZIT2hkb0ZMMkkrbWZGdUV6OTFHWi9VVURXQ2hsaHlad29rVXdvNExKMzZGSTVmdkxGOHJMKzBMc0RnUXlmclpjOTNaaXhTbk9zOTB3M0pwcDlzSkdVVzZKeDYrNTdBeGZBK2JvNnZZN3g1VGd1eDM3ZTQxQjJZVDE5Q0FpWlpnS2hnRmFMV3VVNmNhWE5DS2d0ZElaRm12UG85Q0VUTThYVkNwNmM4ZFJHZnhZdncrQ2VERVVxck1nU0RUektpeGVpak9xa1Jpd21XZDY4L1RZN3pUN0xkb1hMSGtlZ3NqVXhqYSt1enpnT1YxenZGa3BMRjNncXZyTC9HcS92djA0VGExS1gyTnpaSnAwbnJGbTNmT1Z5bnNSazdhZ3VaOTFhcSsxUnh1QXpPQkdNZUZKN3hzNzJGaDBkeDh0akRvNFBTR1QwS29zWHRtM2RzNzIrbHE0OC8wWWQvRUlLL0p5UE9EUkhUS29Hak9ERk1hRWhKRDNteHBtU2VSZVZpNkl2bEZ2RVdGeGx5WXVPeXFwcVFkVTY3dFEzbWRDdzMrd2pTVzE3VTdHTE5xS2xiY28rMjJKam5Zd2xHNFZjaUNtOFdTRkxJSmdsYytZc1dORVNTWXBPaHZucUdQNWRxQW9OajY5TC9QLytNOUdqOWRSMTFGOEhIa0pVdWJPcVZISWlpWTZPRlN2T1dIRFdMYW1vYUlKbll6RmhqMjMycHp2c3piYlpiRGFvVElYTFRzMFV4R0Z5S1pGaHNObWpuRTd6VElwWUx4ODJCckRqMTJRektXZThxVEJZUW5KczFCdnNORnY0bFNOZzBQU0UwTXNYQ0lrNUhhdEtxRHV0N0syZEJOZlo0MXhRLzNqYlRKRWdzK1Vlek42U3BWUFFuakpJd2twQ3pZQlhxaFJUaFRWcUxTZExNbVBGdFJlS0FkaVB0dWZ5dUxDK2wvdjh0aVhhUkN6am9Lc3MyWUpvMStlTHIvdzYva3JqR3NoK3FaR0x5SGpDKzVKTmtvajNNMklibFc4Mjd2eVhFV0FaMitmMUF2cTVmRWxFdGZCSWVHZXcxaFUvYTZjRFRDbVRyekhqUzJTeDVQS1BWMmROUmZMVDkvbFZHUFdGTW5yUC9rNHZOMlNNRGw0dWd4ZklTYk5WcWlXcGdLYlhEelZaaHFlZ2xBZHRQM2ozdXJTOUR1VnExVkxYTll2RkNvTlRlZ1lPTWZtQ1Avdm5EZ2NoZEd4dmJMT2F0N3ozMFkvNDlwdS9Sa1dMdDQxS0RtVVFvenpRWklWczBpQ2hZeVJoeEJlcHNORkRXVlJlNS9SOHlXUnJncGpNN3Y0TkVvbVk1MHhuaGphc2dFWTNRclJRcDJZWjhRS2duVzVVck03VTdXZm1EREhwY2F6c2hQTWNSK2Y1NGlEd1dhR21taFVxUEpRd1JHYlRodVdpVlkzVHBGUU9qeUYyRVlzbkVUbHZNN0RBSVB6ZXYva1gvQS8vL2Y5SVhDMloyZzE4VlJQYXlHSTVaM3QvazdOd1JuYnFiMDgyQlJSVStPeXcyYW9oQTZEYXRhYnNSWUlNTm5rYU15TjFrZC81OWIvTHYveXozK054ZXNTRURTU0FWUVhQa3FISkdLY1dvVG5uaTAxT28rdGVyVVIxTUsvRXNjMG1HV0dYWGI3N3RXK3pQZDNtL0pHS2RZYWNFWnVIUllrbzcxbEk1QUxRbmZTTm1wYk9XTEFXZ3luM1FVYTgwTlNPZytNRFduZEtZTW1DT2UzRVFGcU5hdXA2L2EvUFhMNzRqT2pucXdLWnlDcEZISTRISlA2aS9mZE1xZGpmMm9HanpPYldGZ2RIWit5OWNaUHpjQVltVWt0SDcyNlZ4Sk90SjR0bG1lWk1keHBPRjZjMDlaVHR1STN0SERmWTVNMzZxN2pVa0swbFZnSmwwbVZ5SWd1RWxIRWlDblN0SWVISW91WUtWaEtZanRQdWpQcHV4Wi8vK1Y5d3dobE1IYXZWcWQ1Nm9yc2ZoM1NsQjFOWWtmMStPNEhZNGIwKzUyTFNNcml0YW5MWGxmdHZORGNmUDl0NjR6QlIyb0V0VjVveXRpemFHcGFoU0kwNU1qWGdsMEsxdE5SWVhyTmZZYmZhNXVic0JudlRtMno3YldwcGtBNVNwN1F1SzBXQ3p1UzFSbS9Sdis2ZEUvdG11SUUxWWZSdWJVbmtXaXNqZVpudzFsSTdSeE04SHN1Q1JHNE1NZW80NDV4QTZQaVVFeDc3am4yYnFMMGxCNVVZODc0aWhVaElpV1phMDBsSE5yblExVFRyYnJMRlpJK0k0ekFsTm5mMm1MZW5XTCtCN3pLc09sNW5uM3M4SkZ1WTkwbUh3Z0Z4UVo5YVBkMnR2VEJFdXY0SnJoenQxRStiMWh6Ym5pYVN5aWVJM3NrOWxhQS9kUW5JcnR4L3haUXRKU0JJZVNxWmtxbTlidmo2c3VNYXlQNUN4S1hNRGhRdzBHZmc4aWpqVmpnOG90OGZNcEhsYysxYXowTkgrZVdaK0lXQ3pKRDAvWEpLeTEvRU1zYUoxVjZPeFpXZkRldU1CR2cyNnpKUGJMMyt6MWtnZTlWSmVWbjFjam5IVVBISmc0LzR6dGQvRlZJbTVZQ1RDaXNlcFBnclNVL3U2Lys0bDl5NVdFcnNNMHRibXpzRU9wYUxsbmUvOFMzKzJiK3lWTTZ4WEMwdW1JYzlhemRNQmN1emdNbXdPYW53eVVNS3lwSE9ocHJKaUtQV1ovSDZKb3FpZG5GaERldjBoOFhqOGZST1l4Wm9sNm9Pa1ZMZlpMSCs5b1gxdUl6a3lHazg1c09IUCtYcmQ5NWxjVEpuMDJsbVozTzZTZXkweXpvYlBUNWFKUmo1Mnc4N0tWckpNR1owbjVUdTl3NW16UVp2M0hpZGQxLy9GbWNmbnRHV1RORk9zOHRSZTFnbVJRYVJ1SjVJZUxDMUl5OHZ6bmFHNjFIMHhFY0NPK3p5amJ0Zlo2dmVJTFdKMmxWVTAxS2VMeGx2SzVCSzkzWkdBYTBoWTNMR0dTazRVNHJrbVNtM2VjSVp3M2w3eW1TejV1TVBQaVQyV1M0Smw4aWgvVm02NGw1ODZ1TFFjeHROSmtyaTQ5VTl2c2MzMkFnMWU5VStZUkdZTlJ1azJIZktNM0ExQnNrazhXU0Raa3hGZWM0VkZWWHIyTEhiM09FV0cyWTJsTzR6WUV4ZVp4Ukh4OU1hQmZMcWxXVVJrOHJqTTJGYzRzbjVNY2Y1bUpaQUVqVXpjV2t0V3JDK0pBMXJQZTV5bmZVMnVGbXp2U0pna3NPWmlpNExsVEVNYlpuUG1yZy9JNUl4U3ZXeEFVd2lTcWJOaFpLQS9qdkxjeVp0dzI2N3c5YlJObnZzY1hOMmcxdmJkOWpidmdIbjRMSVVweXZJV1FZd0t6M1hmM3ptUnRsSE1aclUwRjhzM2lnUWRPS294SXlQYVJueEFBQWdBRWxFUVZSNHFISGdYN2d5WVY2U09BcHpOdGdnNVpJZXhTbFFOYWpjV2I4ZHBuY1J0RnBkd1dMRWtmR1l4dEdLSlJsOUZsUTVzMTNOMkRZelBwRlVsRnRHdTFGdXA3NEphNWt2WjlQN2lhSzZ2elg0VWpUSzVXOXlPZFBheXRiaDBTY1JCY3pxUGFiS3NiQktlZFRPWmNya0cycVVpcUVPY2RmeFpjYzFrTDJPNi9pU3cxV09HQUliWnNyUGZ2WUIrYmRWNmlXbWhEWFZrQ2RiajR1V0YwSFFSdFJLOHZqOEJGYzVidDI0dzkzdHU5dy8vZmt3UlZMbmVCaG9CWmVveVZQdldheWlyckgxZEpKeE5HeXp6Um5Mb25uYXgzcWJlaUQ3dkdxN01rUXJFaEdQWldNMjQ4bEMzZUNjVTJwQnZxcGFNRXpBaEFVTGZ2Q1R2K1N0dTI5clIzcnFNR0pwbW9iVCtTbXU5a2d1RXp3UlRDNmlQV1p0U05sUEJ5NTNocXNGcjFZOWRyZjMrT2JYdjhuUjJTRS9PZnd4RllVbWh5VmJvV2theEFvaHR1U1FJRUZlSmphMlpvUVFpRzFFQ3AvT1NqL2dXaHlXTjdiZjRKdnZ2TXZVVDFtY3pLbWxvWEkxb2UxS3h1M1pSM0E5a2JYWVVsS1hFZUF3M2pGUEMySmorTW5EbjdFaTRJelZEdlF2eUpqbzRPQ0FzMXR6dHZNV2ZscXplTEtnbVUzcFVscXZveEE5KzB5Z0taUHpuSFZDMHZOcVk0ek10amI1cXYwcWRWWDFyZkxQaVI1OFhnd3hTcjh3M25EdytJQUY1L3BCb1VMMXdpTU9pc2tFWlphUjErbFZVVTVzaGFYSmhwcUtnR0J3bU9ocHFFaVNQMzlHVHRSaVFsS3BnSmcxTno0SXhLd2dNZ0Fyampoa3dRT2VzTHM0NURVV3ZMa1plTjNmeGNiMS92ZEdLaS9TaE5RYlI2aWJIRHFSSzlReDQ5YVcxem1QS1VkOXhqSnlkSHJFYS9XdE5UaVc0a3BXbWkvWFhQK25sV2VrVE1vcTcwbXh3eU00NHpBeE01dHVzTGQxQTNmNm9WNCswbk1KOUsrVGcyVUM3NkRUMmJMT1JWTXVuR2RYRERWTWdkYTJjTERIM1JlYWUrMDFJUlQ2eW1oTGxjQXlSZTlVTUlSU3RmRjRJcEdPcm54Mm5aSDlzdU1heUY3SGRYekpJUVZWaUFpZkhoNXdkSExJM3QzYmhIbFhlSDk5UnIwMHU0ankwcUF2VkdyMFJnTkc3QUFwVjhzbHNZM2MyTC9CNGVJaC84bTNmNU9ILytvVG9HTGFWSnkzQzMwVW14RXRRWkVHQ0N6T0k0MzFOR1pLakpsdDl2aWJmKzF2OGZhYjcvRGt5UW16alUzRy9PakxVang5ODlWVllNeWdzbWFydkNJNjlVZjYzZC8vcDZ6eW91UkZLRm5kTWNETUYwaU5nUlh2ZmZ3VERrNGVjbnZqTG1FZW1Qa05wU0tJMVIyTE5jbkc0Z1ExR3FyTTFkT0J2cEVrR2Foc1JiZHFRUXkzZDI3eDNXOTlqL3pEekUrUFA2Q0xnUWtOclhTMHk3WXNhMTFudHM0d1Axa01iMmxQZmc4UURBME4rOXppbmRmZTRlN2VWeUFJYlJ0b3ZNRWFRd2g1Wk5GNWRXUlVYY0VWQU5zRGRvQnNNOEZsWk9LNWQzeVBKNXpRRm9laTRSeS9TZ2hnRFBNODUrR1RBMTY3Y1ljMkI0TE5lQ2ZrSE1kK0JaZkppSHFzalNIR2hLOXJwYzZrUkdVZGQyL2RYbjlIMWxPM25wczlQbStxL2J2T3R1VmlYUnBjSmxkd2NQeW93QktsYm9FQ2ZFSzZBTEhTdURwVkpnSU93UU0zcWgzMk52WXdDNHNFdlI4RWkxU1hXZFl2SHAzditHaitJWE9pQ2pOb1VuT1FoeFlMbmRYOGQ0ckNLcmZVWkJZODVtelJjclE0NWZidGZlcmtCbldWbHd1TEU0T1VxektSMUFiYmlmS1J5MytTOGpBaFVYcVdJQVNPVHAvQUhiREdrSk5Cb2hTK3JjTmFwVXRra2VJK2RqbjZLa3dreFJhVkhIWjA3Wko2T3VYbTVtMTJUdmRaY0lJUm5lemdFdjJETDBwcEdRQ2R5eGhWc2JCUnVlSXphbTdWdDNqbnRhK3Bra2QyS2s4blNpWG9uMU5pNHdXdDdQNzVZSXFUMkhLNXhGV1dhREtkQktReVJCYzVPRDdray9uSHRIUXZlY3l2NDY4aXJvSHNkVnpIbHhrQ09hZ01US0REMHZLemozN0dPMS81SnFaU2tKdEw5aTZMbHY0WVFDMXdvYkJWMm5YNmdWME1LV2QyTjNadzJXR2o1emUrODV2ODVWLzhXeDR1UHNSMGFRQnM0N3hDUDU3M0FHTG1OMm5iakdQQ2IzNzN0L250di81MzJkMjZTZnRheDNMWlh1eU9MZ1BCd01WTFZ3UGNQcXJHRTEzZ1hNNzQyYVAzc05hUkV5cDZYNVRRa29EcC9lUDc3ZXVwTldRT2VjeVBQL29oZDM3OWp1cHllc1A1NFRuVHFmcWo5OW5LTkFMYmZiUGNJQmgvZVJ2TFlHY3QyT1FJcTRCdkt0NjU4emFWcmFoL1dQR2p3eC9SRWpVVFdncVhWZTIxRVNvRVFneERRckp4amRKRjZLMWxIUk5tL05iM2ZvdTNicjdOek0wSUlZTHpPRlJ5eVp1MU9QdFZ5aEs2dVk2TXBSSXdTWENpRG56Skt1TzFOWUU4dGZ6ZzM3MVBoMG9WNVp5eDNwQ2p2REkxeGpvZ1p1NC9lc0N2M2ZrZTUvTno2bVpHSndGc1QzZlJreWttalNZUHVUQmtORzltakNObjNkZWNZV05qQzBreWtwbUNOUmw3ZmM2dVBDNEdnc2xFS3l4aXl6R25aRExPbU1Ib29KOWc5ZWZIbFNVbUxFVW1BUWMwT0NaNGJtN2U0TjNiWDJjemIrSGFtcWxzVWVISXNYMWhUdmpsV05RdFlYN0NRMW82SWgyV0tGbTNjZFJ6RmlVUmZZSlUwU2JCa1ZnUTZBZ3Mwb3BKck5RUnNHUmp4dzJxendPM091bDFhbTVsMTdQWWJGU1FLcFdwWkI1bDcwTU9lQnhDNGpTZkVDV1JuY0Y0Uis2U2FnS2JYT1FaUFZrU0lyYlFZaWdVa3p5Y3Q1eFVRTXNaTllySUllTTZ5MDY5eDF2VGR6aGMvcGdhYUZNTE5oWWcyMmw3U0o5ZXpVQ0FwcXFSbUpoUXNjTUczOWgvbTl2MnBwbytTSTAxRGl2RkM2OG9EMWhhc29tazN0Vkw5RDcyUlpONXN1bkFKRG9KQkIrSUczQ2NGNXlmcmNweitUcCtFZUlheUY3SGRYeVpVWkNaZDU2Y3RKSG4vWisreDEvNzd0K2c4ZHVhaWNDT3FJeGpXa0ZHbTdyaWtQVzdzR2hSd0RTZFRIbjA2SURwNXBUTnpidjh6ZC84SGY3eEgzeEtrcEtOTFl0emwzQ053VEkxR3dYRU50eHlkL24yMTM4Vkx4czgrUGxqS2xNeGFScDZCUUFZWnpUMEhaUGxxVTdwUHNRS3g4ZEgrQTNIYVhmS2grOS9PS2hnbUxyZ2lUNlJKdXRHRE5OekZkR3NZNWRiZnZpemY4ODMzL29XTjZyYkpKdG9ROHYyeGpZeDlwN3cwSVArdnV1OVZ3THBKd0Rackp0QkFHeTJpQkZxMjJDd3hCQ1kxRFBldXYwV3RWVHNIOXprKysvL0crYWNFMmdCd1haRnhnamxmSHJxa3RXS0NJNEd4NmJkNW8ydnZzbWIrMi95N212dk1va1Q0anhCaEVvcTNheVVDNjIwUDU0TW1mTXhjSkxDOFRNWm5DUmNWcDZycWxNa2xxYmx5ZGtaNzUzOG5Jd3JCZ3BSdFdCZnhIN3ZNMEpFc0RnZWhRT09WcWRZcVhEMWxCeFZyc24wR2ZSeTNhNkx0ekpjSTJQWnRLclNaaUZuTENFR2xjb3FjVlVDdVQ4U3ZidVhVSnlhckJCYzV1RHNNV2VjbHduTG1qb1Frd3lEWHo4NU1xeTUzWDFaM1pVcG5ndUdUVFBqaHQzSEpzKzAyOENMSjhRRmZFNldwRStXTjZkM3ljdVdRNDZWSTU2TkdtMTQxblh3SHF3Vk8raWloS2kwZzd3MkFYbFIvZDRMMjRBcmU5eFBEbFFWSWhDTEhmR2xLSjYwR1dIQm5OUFZDVHVUYlJvM0lUc2hpNnBUWkRFamNMSE9nRjZzekdSUzZxaWM2dW1aREM1WHNJTGFOcnkrK3lZZkxaOFFPRUt3ZENHVXJLd0JvdktYeTdFeEdXeHJxZkJNcWJuTGJkNlkzR0VqYlZERkJwY3FWWDRZVXQ0V1E4U3hRQ1FTalNkWXpiK2I3S2lUeFdldzg1WWNXNXhOMUpzMUN4Tll0Z3VPVDAvSGhhSHIrSkxqR3NoZXgzVjhtVkUwVTJNT2VDeVJ5TWYzUCtTVGg1L3c5YTkraytUQTVLaUppSkhYK0ZBYWUrcFJta2NMdGpoaldaNjEyT3lRRm5DV2I3MzFIYzZlL0pkOC8wZC96SUcwMktjR0xJdWh3dURKVXVHcDJPVW1mL3R2L0YzZS9zclg4V2FDbWRUVXZpWjFZV1FYU2VHZzJoR1FMYTh5NXFHV0xaZk0vdXdHYnROdzh2aVFCL2NPeWtMV0Fod0RaN2VNdGVObFpESnRYdEhZQ1IrZC9aeC8vY00vNCsvOXh0OW5GWmZZUmt1bGFqVlp3Q0JHbTc1S3N4UkcxbzJSb3hnTVFRQ1ROTFBsOFNwRmx4Tk4xZkQ2L3V2czdleXp2Ny9QZzBlZjhOTVBmODV4UGl6bkkxTlJVMVBSb2MxcmZRYjIxc1l0M256emJiN3h6dGY0NnY0YmRBOERObGpOamlhZ0IvNGltR3l3NW1LRHp1WHpwSzVlMnJha0ZJTklNa0kya1d3am5ZMTgvMGQvemlrTEFxRUFGYkF4MDZ0UXZRcVdsVnljbm1qNStQRW43TjdkWnhFV05OVk1sVFJHUk9tTTFjYXNZWVV5T0lDbGxFQmdZeklsaEtCeVltYXRIakJrNGkrdjM5amh2dWdiNlpMSlJKdHBmZWJqd3dlMFJCeFcrZFlHZXYxUGMyRmJSc3MzNndTd0dFT1d6T0o4U1hlZUZLZ2RHZkpDcyt2VnpvWXFZbnlPcU1UeXp1N2J4TmlSZzNER0FrTkVDTFJSN2IrcGJRR3pSb216UlhHbFFodVp2TEdEUXNHZ2RmM0NIRmx0ampPaURVdGloR2hTeWZXR3RaOVdmL0RMVFo1THBqWVMrZlQ0VTNiMmR0bWRlR3hseUVsSVpSdGxjQjFNNjBsWVdjSXdHVE1aNHkyNWFETFBtaGxkQ09SNTRzYldEWDVsKzF0TXorL3pZYjdIT1V0eUN1Umt5YlRJUURxeU5IZ3FIRHRzOGhxMytkcjJtK3lrTGV6Q1VrZUxTMzBUWHhHRE0wcXI4RUMyaG16QldLc05hT0l3d2VNVGJMa0pLYzFKcmlhN3pESWRNNStmbFJ4NmZ0VjU0SFY4UVhFTlpLL2pPcjZzNkxsL0ZpUUtkVjBSdThoUmZNVERKL2Q0NjQyM01CYWNXTElwNWd5eUhyZ1ZJUFJJTDE4aG5KN3h2dWI0MFNGdnZQVTZIei80T1pObXluYTl5My96OS84aHJqTDg4ei8vSjJSYStsR3FsNFl5cWtxS28yR1BHL3p0My9vNy9NYjMvZ1pobmxpMWN6YW5tK1JPOEZMcHBvekFvaTVISHkyNXBIdlhEa045cjdqQkdLRnJPNHlENCtNVDdoM2QwKzB3aHFhcGFPUEllV3EwYjBQMkY2VkZ1SWtsTGdJL2VQOHYrVnQvL1hjZ0dEWTNkdFRoeTZqVnJNdGVDK3NXc3VrenMyV3hvMmFWY1JnVUZNUlZJdHVNdHc3Smxod1QzbnAyNngxbXIzMmJkKzY4elc5OC9UYzVYNXh4ZG43Q3lka1o4OFVaYmRlcDVlcGt5djd1RGZaMzk5amUyTVphVDJnRFR6NTh3aXh2TW5HTzJsbnQvZ2FjVlZwQmJ6QmdKWk50SHJpR0lsYkxzOE5Xcm9raEtuVVV5VGJSK1Vqbk8zNzQ2Q2QwSkNLQnliUm10V3kxaWNsWWxpOGp2ZmVNaUNXRGQrL2tBZC83K3E4eFA1d3ptVTJnQlpGY3N2UjlKcS9YUE8yVldEUWpHMExBR0VOZDEzUmR0N2E0Zlk0OW9KaFNUVERsS0lpUURDUWJ5NzVISHVYSEJFWVNhNkt1aE1rSTRqdzV4dUhTeXYyMTBBTnYwZTU3dGVSTjVHU28vWlJwUFdNcmJlR3Q1eVROK2J3c1dSTTlkM2Z1Y25KeXhGbVlvNUFzSUxRWUVsMFFiUncwYWpJaFFYMm5QSllKRmR0TThGWnBCVDJRSFZ3SXk3L1BzbW5XVExaQjl6UVFUVUQvNndxUTdWT3BySjh0UlJJbTVzQWpIbk0zbnJGaHQ2aThKNVBLdmE1ODJhZHI3ejNmdlZSWG5HQzlKWVlXYXl5emVrSzNUTWc4TUowMWZPZnVOL0VIRmVHNDR3bFA2RmdOMG1XYUYvWlVORVhsd2JQUEhsL2IraHB2Ym42RmV1bXBRNDNMVGgzUnhKT01vUmRDTThaVGl5KzNmWTFJaGJFVlJtcWNLZmEwQ1hKeVdBa2tFZWJMTXc3T0huSEljVGxDMTFEMkZ5R3VnZXlYSFAzTXVYL2dhSWt0a2JQQjJMN2tJMXpVTjJVWWRITnhsREc1TEV0Z0xMK1ZUY1lNRnF0eVlaMi9IRkdPelBnQmZ2bDNXUisvNGRqSnhXUGI2OFlPcjJVWnhpclBWRVJ3T0VML0YxOUVzd3lRSTJ4dVRUay9YYkxxbG14Vk8zUWg4VWQvK2dkODg5MWZ3WWNKZDIrL1RuZWVtSjh1Mk4yNlFlcGdjYjVrWTJ1R1NBUlRtakpBczR3NTZZZ3NqcTdyMk43ZTV1VG9sTTNwRnJFTk9CcTY4NDYvL1Z0L24yOSs3MWQ1LzZNUGVPKzk5L2owNFVNNldpb2FkbWQ3N0c3dDhyMXZmWTg3dCs1eWUvY3VsWGhDVGpoblNVRjVjRkt1UHoyMkJpT0ZwOWVuWHpKTUp4Tldxd1dTQWszVHNGd3VpVEd3ZjJ1ZjBIWXMwNXcvK0tNL0pCSFpxS2QwWVU1NzNxM0I2N3J5ZWZIWVVjNUJwZWZwS0IveWYvenVQK0lmL0ozL2psdTd0em44OEpBNzIxOWhkZFlTZ3E3Yld0MzI2QUoxNDhtaFQyMnZ6NzBNMTRlR2Q5b0xMVGtWYnArRHJHNTMzbFpNaldQcVoreHU3OE4yUC9qM05BZ05JMVpwRnEzU0FCcVpZSnpGaTlVcUtWbVBtVkcxaGloeHZKY1hiSkw3NnhXZ0M1SEdLaTg2RnFQTjdCS2Q3MmhkeHovN2wvOGNaNjNhNnByTXFwMXJCaTluNGhjQVl2dm5qY1B6WWZjSlAzMzRjMzdsN3JkWW5hK1l1aHBpSGpLYklwckpFeEZjWGl0N2RrbHdya0pFV001WHlqZk9aUkowUVM5cW5TbnRiUUZTVnU1cjE3VnNiRzV5MXA2eVNpM1ZiczNIRDMvS0VlY0VNaTN0Y0N4VEViZVBLVDc3SHJibEZxb3NjU1djc2VMSi9KU3ZiRVlhRVVJWHRXSE1hYWI1ODRRVlJ6cnBlR2YzYTl6WXVNdEh4L2Y0YWZnWXd6azFFY0hRMGxHSnd3VTFTZlZBamVNMWY0ZTNOdDlnWXV1MVFzQW9QZ3ZBOWlHaVNoR21nVlZxYVc3VW5PYkVoMmNmbzdyWjVUNFl6U2V5UUNzdERqamlrQ2Z0WS9iY0hqQWxkNG1KbVRCdGFpUmRuR3pab2dKUmxxSlVFQWVydE1RN0QySll0aDJWYWRodUd1SThReGQ0YTNLYkczYzNlYlI4eE1PVCt4enhoSTY1OHBtWk1XV1RHOVUydDJiNzNHejIyREV6cHFGbWtpcE16N01lZUxvV1RDSmJzRVN0S0JqS0JHZ05zL3ZmTzBra0g0a3VjSllXUE82T09PRk1yVFZjZWdGVmpldjREeEhYUVBZNnJ1TkxqbFN5UXFEYXNZbk1rL05IZlA4SC81ci8rci80Yi9uMDNpZk02aDEyYit3eVB6ckZVck8zdDhkeU5jZFlTNi9EYXFSa0dZc3VLcVBTTFBTbFJJZmdJSHNrd1Z0M3Y4Mys3aHY4K3JkK0IyL2R3RmMwb3JxWjgrTlRObWRiVE53VUlsanZDaWdyZytlb1JJaVlVdXFsQUQ1TGtrZzBBZkdaTmdXY2NjeDJaaXlYY3g0ZVBXQmpwK0VILy83ZmNkb2RJaVRtM1hMTkMrempNK1pkaThVU3NycGpQVHovbEwvODRNOHhieGx1N3QvaDBlRUIyODBPMjlOdHV0alNoWUR4NEwxWGViUHhhb3doa3dkYUJGems5SW4weDFPUHR4anRoTzdkdG5xWnRJR0RTMjlwV3BRS3N1bDdYZFpOVEFXb2FYWlNpdUtFREg4L0hOdFIyTUk1elVCbG9Lb2M2b0MySXBsQThvR2pjTUw5MDhjY3gyTVd6QUhWS3RYOVpHVC84SXBoSUV0bXpvSUpVKzZkUE9EdHI3eERKVkFsVXlUQmJLRTY5N0JHN1VZSGQ3Z3JnT0NhT3ZQczBBeXFBMk9VODV1Q3JzVm56c0tDeC9ORE9sSXBrcWQrYzR1OXJCMWR1NnduUytPRFlxQ05hc1F4cCtONGRjYjVkTVgyZEE4YkhHM2JLUSs5TjZmaDVWNGxXOXJqaU51b3ViR3h3ZFpydTl4dVgrZlIyV09lckU1WXBnV1BlSXpIMGVCcHNHd3laVyt5eGMyZGZXNDBOL0R6Vnp5TDFtSzhZeEhPU1UwbW1jaFJlMXF5N0dGMGZpNWVnNExtY0ZzQ24zWVAyVjVzOC9yVzYxUk02ZVlkSmdtenVpR0hrdlZsVlBrWU5OTDFMR2FqRG1NMnVlRUlXYkg0cEp6cEtUVmJWY05lMWZENnhoNGRLOFFsOEJYemxjR2Foa24yVEtpWUpFL2RHVXcwNUJpcFRGTzJWMmtsWW92TG40Rk1KSXh1UXlrVDh1UlU4U1NZaktRT040TXdnVk01NTFIN21NY2NLbVhJaTg0NmY1bnlRditSeGpXUXZZN3IrREpEb0YwVnh5SU1VZFNtZGNrWmYvYjlQK1kvL2V1L1JTdUJtZDhreUlvMkxkbXNLNXdYUWdoVWpmSlJEZW9IRG1XWUxPQktSb09HaUMwQXlnSU9reDBuRDVkMEdheWQ0T3VLcXFwQU1qRkdKRVZ1Yk4zQkFHRVprWmh3eHVPdFpuMWppcXIzV2lnT1VySkF2Y3NRWk56RTBLYVZsaENubG1VNko1c0tPeE9pckhpOFBPYVAvK0lQT2VFSmxiR2NTMUF3MFJNNE5ZbDNZYkRvZnhTanFnSzVvTElraWNQMk1kOS8vOTh3YldiYyt1NXRtQXZSUk5xOElrbTZhRUZyRk1FTUpoTjl3MHZSbUgxYWFhRU02d1ZJSW1qSnNrUVBsdEpBOVhCcmJuQ1JBbE9ackxYeFF1Wmk2YndmVERYYi9IUzJ4NHlPaFRWUU9ZL2tTSnRXUk5OUnpTd3JtN2ovNENIZi8vZ0huSEJDMjROWVV6S2krWXZ6SXVvVGY1MUVLdUREdzAvNDFYREtudDBnZFMxZUppTlRFbHYyVHkxMG43bE1XY09jOGJkazlEcmVmbXNkR0VzT0VldlU5dlpvZWNqOTg4ZTA1TkxnbGdjU3huREV4MkMyMzhaTFlGYXY0a3hMNGtIM2lOZFdUN2l4YzRObW8yRzFPcWVod2cvWjBKZDloVm0xcWU1VEMwdGRPMjVYTlR2NzIzd2xMRm5HSlR1N1c2UVVWQ3BNQ2k4V3F3WU5TMCtWbjU0RXZHZ29OU05oS3NjeXJEQVROV0I0Y0h5ZnRwQUxpaDNFNkkvVzJ4NUxwdnRUUG1WNk1tVnZlNC9aZEVaWUpsWmRwTDRFTHo0TGNxZGVvRUl5THV0OUZ1WXJ4R2FNU3pUT1VQbUc3Q29na2FYaVpyTkR5aDRiTXlaa2ZBY3VpYW9Pc0w1bWtzM2xIeVFyUmFrbEt4QkZzN1haR0xLSit2enpGcEhJeXF5b040U2xYM0QvOURIM3U0ZXNXSUdQNEEybFJIY2RYM0pjQTlucnVJNHZPWlJLWnBRckZrUHBxM0E4bkQvZ2QzL3YvK0x2L2ZaL3hXVFRjL3pwRXpabnUweXFpdFBUWTZ5VURONVRjZ1ZsMkpaZTluc0VaZzJGbEtzTlk3ZDJidE9HVEFnQlVzWmt3ZUpWbk53Mm1KU0lNWktDTmpvWkI5bDdrSUZwaHZJZG5aYnV4QTcydVFDVFNjUEoyVEZONC9DTjVlUmt5V0o1enRiV2xNbHV4ZmUvLzZjOFNCL1RVYkpwdll0UVlKMEl5cllJa0VHZitlejNXZVc2dEh2WjE1YTJiZmxrL2hFL3Z2ZERidCs4elRmdWZKUDI4WkxGWXM3RVRUSGVrRk1tcHFDZy9abGw0Vnl5TmhjTkNTNGNhckVYc3JlOUdNK2c0aXVYcUFVRndQYmU5RklhdVhwWHRteWtyS3UzVGI3SUo3eThGVVlzbGJQTWwrZTBlWVhmTk1nRUhzMlArZURKaC94ODhTR1JvR0RabExhdXB5dkZyeHhLYWNuTVpRVWM4K25wQVh1YmJ5T3JwRW9BWlFJbHBzODE5ek9VcXpPeGN1bjNDK3NacjlkWXNxemR6RklNMk1wZ0s4Zkp5VG1ISEJIS0VSZ0xBRnpnUlk5NTVlTUowM2p6S3RYMFBlU1lUMDd2YzNmekZuWHQ2WnFBYzJiMEJ5Ly9Pdk5idEtGak9WOFM1aEVhUTkwMFRIeU5ORHVZRG5KTUdFbDRESldwY0JseWpLUk9NT1pWaHZCTWx3TDF4Q3Q0bkZwT3d6bjM1dy9wQ01TaElnQnJHMnY5dTBLQUk1TlpzdURUY0ovYnB6ZVo3V3hRTnc2SmhsVllVUm03dmg5S3FPeVhUc1RXamFKV2JaZHRIalJjamNDa3JzazVrcEp5clkzVXBKUkpFc2xKRUorVXNwT05QcnV5VnBXY3RYaHZ0WkhPYUJZMlc3MnZ4S3l0bjlNZ2ROemY1M25JM2tZYm9NbWN1Z1VIcXdNK092dUV4eHdSQ0R4anBuc2RYMUpjQTlucnVJNHZNYXoyMEErQzVoSDFzSGZlRUdQZ1Q3Ny8vL0cxTjk1aDkxZDIyZGl1cWNVU3dwSVVJbld0WlRNamRpZ2JyeVdscExnYktkQXM3K2hYQUl4eTFrNE9qN0JXTlNoVisxRkptbGtTSVVZbVZZMFhnM01lNnlybHcyYkJXbkN1SXVVNFBOTjc2YW9lSkFrUVVqY28zblN4QlJlWlREeWRMUG5rMFVmODJZLy9tSllGaVVRbnFnOUpaYUJUQnlYSnl2KzE0NUxzQ05pbHNPNk1ENklndUVzdDd4MzhpUHh2TTV2LzJSWmJ6UTR6djRsMHd2L2YzcHMreVhHazZaMC9QeUl5c3c2Y0JFRTJqK1p3dWpVejNUdXpra1ltalRReWpVWW03WWY5c0xiLzNuNWZzLzBEMXRaa2trd215U1NadW52VXpXbE9zNXMzUVJCSEFZVkNYWGxGaEx1Lys4SGRJeUt6c2dBUUFBbXlFUStzRUhsR1JuaDR1RC8rSHMvcnZFT1pXSWZkT1VjaHBpT2p2WGtwU25GRjIyaHZHZEFMTGVqYkRQdnBRclRienJLYmp6MEZrS2dvUUIrVXBPU3NuQWN1N1JZeUlVNnh0dGtLdXhxK0M2NUJLMCt4VlNEYmNIZHhuNy83NmtNK2ZuQ0RKVTBzZ1VyQTZGNDRueUpaSTNVTTBuN1crVmdCaFVZcWg4ZHplLzhPZjNMaGh6RUJ5V1ZKdG56dVhiaUdJdUJWbGtQS2JabTJhUkdnRWxFbFBZN04zNjBRUW9vZE5scmp2TVNGRFo2anhVazZlMms5RlNzUVRWdFZKUDJreWJ1VktMZ1B4TXRzTmNFSHFsQ3pKM2U1UGIvR1pMZGdkR25FdFBIb0RZVWVuZ1E2YUlLck1hTFpIdS9HVXNvMCtNWVRHa0VrVU5XTFZsb3JLSjJTbFJSS2pUQmFyZWNuZmkwRUJkN1hHS1V4V3hadkd4NGVQdVNFazdUOGtXaHlWeW90ZnVtdEFLSXZvYkUxNGhSSEhISGp3VTEyOUM1dmJiOUJTWUU3ZFZpclczay9XSmZmQWhOMHU2QUQ4Q3BxYXFPN1JEU1J1RUEyZ05FRnBZMVZEdzJDa21pTjF4cEVTZExERlpvUWFGS3ltYVJRQXQrN1RHM29Ta29HMVpKL0w4dTNCYnhwTUR1YWgvTmp2ank2elZkK0wya1ZFRHZLVUF2aE80T0J5QTRZOEFLaHRZNjZrYVRrRTJMc21RdHhDcTZwK0UvLzVUK3lVMTdrei8rWGY4ejBRY1Y4V25OeCt5S0VPRW5rcEptTVRpUSt1L3N6VVpOa3JhWDl4c2lBMW9JV1JRaHhVbzU2bENhNjJvSkhLNFZPZ3VzK05Eam5DRUZocmU2MFRpVlpKQ1htWHVlSmFiRllNSm9VZUdtWUxVNFpUd3EyTHNWU3ZQL3Q1LytadmNWdHhNU0lQQkdnQklnbnBYVFVaTldwWG5wdW03NGtWNVQ3eW5KYXhCRk53WEZ6eEcvdmZzREZYMTdpTDM3eXozamwxV3RVeHhYTDZZSkpPVUdzTUoxT0tleW1PcTBweEFEUVN0cnMrRlVEVElxNWE5czh1a1NEaW9tQmttYnNtRlh2TVVFUmRFeHlpb1RWdG1VNnN3VVd5UllqSHkzYjZWaTZvZ0lyUFFjbDRGM05lRExDN3lyMjZnZDhjUE1qZm5Yejc1Z3lSWmxJQWt3aWp5SFFaZVVyWWx5RzMyVHhmWEpJNXZIS2c0a0xqM3VIZTB6bkoyeXJxOUg2MW11anZGWDk1VUZhQi9USmV2OXNNL2xwSTQ5Nyt3a0tYUENNZFN3bUlFcFJWUldIcDBjMDJicW1BeUdRU2xhaytNNjFHT3lvdWJ4cUkyN0pyRzhRWlhEQU1hZmNPYm5GeGZHWUgwemVTRnJIeFZPM24vZUNNZkdlMDREM0ZvSmdWVlQxMk4zYVNpUVd2UGU0SmtRMURxM1JOaWZRUGNQMXM1cWxyNUFDSHM1TzJEdTZoME9vYVpKbHN0TmQ3WDJydFZvdXhhZmJydUV1ZDdsOGNJa3I1UlZHNVNqS2FpbkJDT2VHeVJoNmlYdVowQ29mbDRjQ3Zxa1JEK0lET3NUa1NPVmppV1Vud3RnU3E1RHAyS2xEQ3QwSmhGUWlOeDU3dk5keUtGSFN6TTdTYlJJVkNscTFCUjFBTlRTNlpoRThEK1l4cEdCR0ZSTXFOWGpYN203QWR3QURrUjB3NElVaXV2OWQ2S3hHQ25DaEpsWUlGKzZjM09MbnYvanZYTm0rek9XdFY3RkZjcjBwbTRoalIyWmI2NU1LU0R1QTkrVzZla1lWQ1V4R0ZxMEU1enhOczhUNVFHRkxyTFVZcldOV3J3Y0pBWk9JaW9qZ0phQURtSmFkYUtRTlowakgxR04rUGpSeG4wWngrL1pYL1ByWDcvSFp3YWM0S3ZRNDRKYnBTNXJXMGhGcVQ5U3o3VStpdmlOaXhCS3lQdmlZZ2ErQWdoellpQXMxNzkvOE5hTXd3Znk0NE9yMks1UmxTUk1jb2ZZWVkraFljWjVvKzNFRXlScWI0MW1WU2tSSVZxcURSU3NPMFhxYmlHeVhxTlZkNXhVMWpOYU5LV2VxalBVdHpsMFQ5dHRBSjNkOXdCTExpZTRmSC9EQjdkL3l3ZTJQbUxMQTRVQzVPR21IU0RnTmRJckJTc2Q0eDJlY2pCVmd4dUJjZEF0WHZ1R1lFKzQ5dU1mMXE1ZDdzUUk2RW5YdG45Z2ptMFZiSG1YdzdGZXpBbkRPTWExUE9aWWpGQ2xXVzlPSmxLd2p2WjVKYk5IYTNtT0ZyZFlBcnp3ZWphTml6OS9sNHVHWWkyckNSWCtWY2FNMzdQaUp6aEJ0RFNMUU5BM0JOY202RE5ZYXJMR2NuSnhHeTdiUkJLMVF5aURHSXJZZ2FKQ3dmS2FrdmZHNDVMQTZvaW9xOWg3dXNSZjJjYmhZMWFzenBIY1cyVDVwVnJUZUZ0YzBCQnIyL1Q1Mzd0K211R0RZTmhNSWVlRnlGcm42SUpway9VMXUvM1RmS1dCU2xPQkJ0elcwbzNheUdJVUtqc1l2NDZKSXBjcG15c1RGdTlZRVkxWVVlblE2YUJNeXVZV0FhVXM4NnhEUXFhS1o2Smp3ZXV2ZUxlNU03M0hNbEJBRGpTQ0VOalo4NExIZkRReEU5Z1dqclZiVVdyWjBISUJ6cWMvVzRsUEZOeTBBQUNBQVNVUkJWTkVQSHNzenZrSlJwNEUyZENPK3JCRVk0bHNydHBlODMrODkxdDI1dVJtNmM4OVpzK2JNOXpvU2tWZnFIVmJTUW5vdXNVUlNWZ0x1bnY3b2Zhc3VFRFZPUjZNUzE5UUVCMFpIclVhTjRqZGZ2Yy9PejNmNTMvLzEvOG1GeTVjNWZ2Q1FuY2tWUWhpUjNlMlNrcmlFTHB3QW9NMFFWL0hZVlNyQmlSSk9wNGRNUm1Pc3RZekhzZDY5MWhaeFF0VXNLVXhKNDJ2RUs1U09FNjlWSXp3K1N1YlVycGY4Rk4yZTdlOHJtRXhHTE55TVNpcTJMNWRVN3BSZmZmZ0xmbm5yNTNnYXRCVmNhbVpkcHR3TGdYSXlvcDUxdWU2eG1kZFVHNFdvdFpwZC9xNTMyaXFlNzBKbS9PTFd6NWpOWnZ6TGYvelh2SGIxZFE0UERxbGR6WlhkcTZpRmJpZTJuSGdsa3NUb2sxVTBod2dJTWRZdW1tZno3MlEvZVdLTDVPdzB5S0VRT3BQZWJISHRuWVVBUWVrMk5sYjEzTGNLVnR6V1duSklRK3kzWG52Q3BPWlVwdngyN3lOK2VmdC9jc2dVdE1JVUJ0OVVyVlJWN3Z2SjhQczErK3c1UkMwUitHSXl4azJYb0JYU05IZ3M5NC8zcWE3OUlZVXUwVW1yVGt1eXRQZGlMYk03dHh1ZFVnSldpclZXYldoTTk3N09sQ0pBRVFvSURpa1VsZllzVmMxRGQ4S2NXYklhZHZkQmIza1JIL1VpR1hxdnJwNjExVkd1UzhDV0JsYzNuSERLemVWTkxpeDIyUzR1RUZ5SkZwV1VLWFFiVHBKalFmTWx6QXNlQ0cycFhxOTh2UDlOb0N5S0ZOb2poQkJZMWhVN096dDRDWGlSV0V4Q0did0VhdWZ3b1dKY0FMZ1V2cUU3Y29nK3MyRG91bEpXQ3ZEb2k1NmpnNGRVcXVMdThpNE5EUVlUdlFLWjVRdDBTVjRickw4RmFDeDEwL0NRaDl5b3Y2QllHSDV3NFRWR29jQjZqUWtHRzdLbXMwcnRvL0ZKSHpsS0NPWXhXTGRqVnRXa3hSaHAwWm42aFJESnZUR3hCR0FJNENWYXFJT2tFQ25KdHQ3Y0FEbTVMOTFmRW90U3hMazNnUEk0N1doTXc2S3NXSllWbjAwLzV5NzNxYWpqNkdNVStHalJMVXBZMWdPWi9TNWdJTEl2RU5rV3BCQkdoY0dvNktRcHpCaWM0SnM0MGJkK3pUUURxYUNSRUMrZEtFSGpRQ3haakQ0Ty9vYWdCYVVMWEtod0x0L1VBY251b0FLYTczbWNUMkVMZ2hPS29xQnFhcmJOTHFlbkN3b21hR1hqSkplc1ZwRkUrRGJVSzVJMmtGeDlTcGxPLzVSQXdMQ1lUeW0yVTR4YU12VVpyWkJSY2k4OXZWY1BvR2N4aUJheXFrb1hSRUVkZk93YnhPemdYM3owTTd5Q2YvbVgvNHBYcmwxamYvOCtGOGR2eEdzZm9neVJoQnd2bXhkSWd0QkFpaU5VV2xEQkU4VGh2Y2VPSnpSQTR6MlNaanB4ZGRTRHRacUZyOEFxbE5KNEl4aER0Q0o1YUp6RE9pSDRTRE56SEcxUVVJVWE1eXE4bGFqaE9mSHNML1o0NzhPZjhWOS85NStvbUZLT0xNdEs0bndEaEVYWEx2VThGbW1RUkZyeU5Za0hTRnVTS3JUbnFSRWZ1bEJVQVIrTGVESm55dnVINzdIODFaeC8rTk0vNTUwMy9vQ3RNT2I0NklnM1IyL1JuSGlXeXlYS0tDWmJJMHhwcU9zbHMrVU10Q0FhakZVb0U0OUJMTkdsRzBBM3VuT0ZTeFNzYnkrcG9yMG5hVitQOTNIc2h5a0VRMmxRQmhNUzZ3bnhIbGFpSUpVZjlkNFR4Rk9VbW1JOHdybWFCLzZJKytVZXY3cnh0L3oyNWtkUjJ4SVhLeXRWbmJVMU4xZDdESXEwWXVpMWFYZklYWC9zUGQ0NFdhdm9yMThzbHVsSFBGdmpMV1RaY0dONWsvOVYvUmxlS1NaV1lScURWWXJDS3VyYVUvdUt5V1NDcXh3RWpVanlKa2hhMUVra3JLaE1ZQ1V1TU5KV0VjTTBDbCtnZGNIUjhpSFZ0dEJjVWJ4MzYzMFdMR0svNjVYaFhaRWN5K2ZmOXBXOEZzclc4ZlNyVmRjK2pWOFNiWGFCRzl6bjRIREcrTnBWcmhXS3NTNHhUakdXZ3JHTXNGNGh5d2FDaW01dkE4b29HaDBycnpYaVlxa0ZsV3ZSZ3BOWXNLRTFYbGhZaGpyMWtYVDlra2ZDR3RBV3ZGM0dveGFMQ1FZakJTWm9iSWllREtWaTFiVG9abyttWjFFQkNRMXpOY1Z0Tjl3NCtaVFA5NzdnbUZNYUFrdWFsc1BHMyszVmlxWXp2a2hlUERwWVNvMVNKVk01NFVzV1RHY25ISmsvNE4xclAyUmNsWXpyRWFvWk1aSVMwMWgwcmFOVzhyYkZxeGhXcEwxcUxaMHFXMWhiQWgxL1ZiVHJHU3RpM0hjbThhaGUxRXd5QkhuZllJeHBpMGFFRUdoQ2JBL2xBOXVBbGtDbEdocFQ0N1lEcDJiTzdlbGR2dGkveVZmY1Rnb09EUTVIZHB4cG9QNmV6NTIvVHhpSTdBdEdvZzVVaTVwNjJhQjhqU21Gd3BSTVJtUG15d05RTHJtTUE0aEJzbEI0Q293UEtvQTR3S1pCT3lhU0VBSktSOG1TcmNrT0V6T2hDaFdDaS9xZXZ3YzNvbk1ObWxFY3NFV2hqR1d5UFVhN2t1QmpYRmtVN2d5SWlwVlkydVFhRVl4UDF1OVVHbFNManNSV0NVRThseTVjaExHakxNdVdsUGpna2VmU2R0MEF2RUxTZWhPWFV1QlNRdFdDSmU5OStEY0VQSC94NS8rVWQzLzRKeHplUHFYVTJ4VEdvbzBDTVhndkJPZklvNjVXMFU0YVhKTDUwckZxa3JVamF1ZDdsbnhwajBIUzVGcU9Ta0tJY1huMTJzaHRVVmhicEJLamdXVlZzYXhQRUtNWjdZelp1VERoY1A2UUM5ZDJ1SDEwZy8vOHMzL1BlNS8rSE1jU000S1pkeHVxa2ZXUlNjWGFhaUViUWRjdGhmM0pOMDkwSmhKMklmQzcvUTg0K3NVaGYvVHVIL09USC8rVWQ5OThsenUvdWN2VjBWVXVYNzJFQ3czVDZSUTNheGh0amJoNjlXcE13QXNOamF1cGZZMzNPYzBsQm9WbzZTYk52Q2hwRnlleVdqYTBKYlU5ZCtkOHZzRGFrcEhWc2FwUThyNUkraDBmUEVWaE1JV2w5bzY1VkZEUHFYM05pVDdtMy83cVAzQnpkak9HRWhDVDJIUktnTkk2bFg1ZGIrSjFGL0Vqc1U1aVZjL00yUFB4Sk9hblE2U0VDNWJjUHJyUE83dnZNQUswbDdTK2lsckdBWTNyUjEva0pFV1ZMZkNkS2krUXJMcmRjeVV4dTEyN0FJWENhWEFqMkp2dk0yZU9vMG1rcng4Ukh2dFM4b2luTWFBNy9JMUtEbXQ5TXlyUzVrQ2VocC92LzVJLzNmNHBmL2o2TzFoR1RBK1h6T1p6ZGhpenU3V0ZxcVBlY3UxcXZQYzB4aUdGeGhhV3doWTB0WXVFUFZzTE4yeFgzZy9kNnlwbDNvUEdrSkkxZ3lJMFF1MWRDamgxV0J2N1R4V1dMSnNGeWlpS3JaTHR5eE4rY2U5OWJweCt3UUVQRTEzdC9BVUtrN3dUcWQxVjU0RFFKUHVLVVlRUXYxTVI5YkE5SHNjKzRRU0tMY3MxK3dwWEp3V0Zodmx5aWEwTGRzd09PNU50RHYxcFhLZ0tiYktvRXJyN1JzVXJGWlJHcTNpK2ZjK2lEaDJGaVFTV0ZmazJyZUlDdDNZdWVXOUFXWU10QzhyU0VCWkxnaEtjcWFuSGdVV3g1SUU3NHRPVEczenBiN0ZNSk5ibjBoRFp1dDdyTndOZVBBWWkrNEpoYllGM2xxSWNNOW5hSWpRam5HdW9saFhXYW9yU2d2YnBoZ2tnTmxwamcwbnp0VTFXQlExWXN0Q01UakZIMDhXVW9uVE1aak1Xdm9wMlJxVmo2VTR0T1AvOXZoVTFGa09CVmhidm8vNXA4QUt1d1M4ckpxTXlza0dpWEpSU3ZYaFNCVWlxcUdTU1JGQlF5VUlXUDNOd2VJU1plS2JUZWJMbHhtZzZyYUo3N2xrdHNnQzltV1AxT2RGMXJ0SjVDcDRsQy83bXc1K3hXQ3lZVGhmODBkdi9BT005RWhxYXhoT2FTR2pLb3FBb3h0VExKdFpqVHp1UCtyQkNjQXBsK29MKzlHYjE3Z0NDaTlYUU5NbmltK0lSalRFVUNwYnpKWVcxMkxGbFBCNWhncVdSSm1yZVZsUDBPUERCaCsveFAzLzdOM3g0NSsvSW1ma2hHWDIrNlpuQWU0L1ZCVHFvV0J0K2ZwZjViK1lzbDB0bWIwejUwZXQvVEwxWU1xK25hRFJtMjFDb0F1Y2FEbzhYMFRnb0VpVitsSWtWM2MwNFdubTB4dmxsUzVZMk5COEt0VUppVndtdDVyVXJyK0dhd0hLNVpMbGNrRXV6RmtXQktUVUd5OG5paE1WeVRqR3hqSGRLVHBkVFB2cmtkL3o2enZ2YzRYWkxZcTIxYUszYkJjZDZ0YWNud2RuTHNiNlBSQ055c1EwUFZpbWNpd3RCbFlwbGVZU2J0Mi95MWsvZWpqSloyaEM4WUVRaEdGQWxQcGhuVmpCeXVjaURGblNwMmJ1OVI5TkZBcCtMNTNIYmVoekhIUERSN0hmTTdweHdmZmRWcm14ZlpuZDdqSy9nYUQ3Rm9PTWlzekJZWlRHNmpOSlBRWkRLVTdZNnNGOS9LMkpvbkVIcEl1bzdLNE1XaXlSSk1LY0Nwb2pKWEV0WG9VcUZ1V0R4Mm5QYVBPVGc0UUdmN2Q5Z240ZEpTZ3NFZzdSVS9mRlExa0FkTDdvblZqOTBBZ3JQQXc3NDlWN0YyL1l0L3ZDcThOcmtOVVpxak15RjQzcU9kbFh5Y2lUUHBGTGt4RTZUN3BIZ1ExSVE2V1FHVzVXRHRTUzBWZzFET3FzeE9vN2xScG0yNklFWHdibWFScUpDOFBqQ0dFWWx4OHVIZkxIM0JWOVd0OWdqYWhEWFJCM2kvdUlZdnAyeGE4Q1RZeUN5THhBQ05DbEFjTGxjUnRLaW9odmNHQ2pMZ3NaUGszdThCZ0lTVWl5ZVJCYWxwWTZ1WkVrcjF6WitOb0J5N081dVl3dlBaREloQnpNb1pmQWhwMTUrdjZHMXhRZWhydXM0RUZxTFJsSG9BanN1V2M1bnlTVVpyVE5CZkJ0akZiMjhLWFNES0VjVlI3dG85UWc0UmxzajlEZ3cycG93WWd1aEptQUpJVmtubjl0Z3RqbDdQQTNuQ0lHdDBZUzY4bmc4NzMvNWErN2UzdVAvK0RlS1N6dFh1WHJwTWxzN094QXNybXJ3cnNJdmE1U1laRDBvTUVwVDZJSVFZaGEzOTRLeUtYYVJ6bzNYVDVDb3F4cHJOZFphbEkzSkUwRmkzRnBRUXJGVHNsak9xT2MxcGlqWTJwbFFHRVcxckRsZVBPVEc1NS96UDk3N2IreFZkeEE4MjVOZGpoWU5JZ0Z0ZWg3dVoyNDlmWGI2elZaWmNSaHQwRUhqY1p4eXd2dWYvcHJQUHYyTWYvNW5VNjVmZW8xclYxK2hLTVpVaXlYVm9xTEFNaDZOVUdLd1lyQlNvRWtWelp5SEdrSndxYkphamoyVjFTMzV2MGhkUXlLeDhYVkJVRXlQcDJobEtHd2tyNklDamErWk5hZlUxUkk5QW52Qk1pNUhITTBPK2VER0RiNjQ5VGwzWjN1Y2NocVBxVmVPdEdtYTl2RnpLMFhkdHhEbVNUM0ZtS29BTnRqa0VSSmNjRmdNZ3JBZkRwZzNDM1pHdTJBczBnZ21LRkJsREF2eFlKNkJVb3FDb0ZOSjRBSWFhdTRkM1V0aEcrbFkrN0d3enhuUjhsaHpuenM4bk85emZYNmRQM3J0eDVoTGIxTGFnSGVlVVZIZ0JHeUtDVlVDNG4xY01BZkI2alRlQUYrZnpGcFFKdVUveGlTbklEcU9GaXBXcUFvalMrVTl0ZkhvaWFJYU5Sek5Ecmo1NEN0dStwc2NjdHlTMkJ4ZjMxbGxaWVc4OWRHdWZWTlo1ZmhpVEVaelRjaUJBRXhaOHJuN0VuZFBXRnh1ZUgzM2RiWXViU1BMbXJEd2xPbit5cEowY2RIY0ZReFJnSkhrRlVqdEZJa3RaNzA1S2E0Mkl0bnp4Y2NGdUlwZkVwMDlDdEJJZzU4RVp1YUUwL2twTng3YzVKTndnd1VMRmppVUxYQnV1WnIwUnU4M0grbE5HdkJ0WWlDeUx4U2E3Y2t1MVVKUkZBVStOSWlMdGNadFlTaEt3ZGN4S2FkMXIyb1NtWTJoQnJxVlZOTGs1QWxJU1FWS09EazlaRFNHeWpVSVVZL1RtcEltNURUeDU4UWtYaER5SkY1N2h5a01vZ0xIMDRldzFFeEcyMnlOU3lCNVBoWEVZcDRxT2hoVnNqYUtpZ25jb2hEcGlKMVNpaVk0dkcrbzZwcUdKdVcwS2xyajdETTIzOHI0S0dmZk1BYThCMGZEYVhWS1FVR2MvZ1A3Ym8vLys5LytYL3pwRC82TXYvcXJ2Mlp5NlMycXVXTzJtRk9ZTVJlMkx1T1dnZEFFbkt0UldFcFRZdXhXRkZVUFBoSnk1ZElrMGZlWHhjZWpJZzBSUWFKdElnUkNjSURHYTQvWGprYlg2RzB3STZHMkN4NGVQZURUTHovaDF0MmIvTzNOWDZhbWl0R3VwNHVUZHV3WCtSYjZud1lKUWgzcXFNK0xRV05ZTUdmSmtuLzMvdi9IV3hmZTVrZnYvcGczWDMrREM1T0xHR3RSWG5BU0NQT0dFRW9rZ0JXTENSb1ZMT0pUSElQMnZZSUduTHRWUWRybnZnM2NTSkpLNGdndW9LMUNGUm9wQlROV1dEUzFxbmpZSEhEL3dUMit2SGVERzN0ZmNDb25lQnphbUNneGxid3F6cTB1VEhOTTRLUFFoV2Qwc2FIeGpkRC9FQjJCcGNkaXdHQXh6cVJ3QzVYc1Y5SDZQV2ZPZytsRHR1d0ZkazFKVUVJallGVzB1b2x2b3NYc0tmdEFVTEhOblBhRUluQTZQK1dFazdTZ0NXaGpVaG5scDlyOVkrRnhUTk5pb3FEQTRabnR6Ymg5ZEpmWGQ5L2cyczVWbENseGxVTXRBbFF4U2NocXc5aVdXRzN4dGUrc2gxOFRncWJRNDNpMkllQjlpT0VvU1FmVm1ZWW16TkU3bWpCU1BLZ1B1SFgzSm5lbWR6amlpSm9LUjVPQzFwSVZ0NzhjakhXVEg0bVF5L01tK1RzbmNTSFZwUFFzRDh4cCtJd3ZPVGc4WnUvMEFhOWR2czdWM2F2czdHNVRINGVvU3BBV2VPSVZQZ2hlZ0NDVUpvNC9mZldPVmtXazkzOXNrQnlyRXJWZ1l5bG1qL00rS3BXb2dDNHR1ckF4azdaUUhQb1RiaDdjNHN2WlY1eHdtdUpoUXl4dDdPZFI4a09GbFQ0ZnR4dFVIQWE4TUF4RTlnWGpkREZETThLSEN1Zm5LTEZvWTJucVFETTdvU2cxcUlaWTZnaklWWHFTU3kxSUZXT29jaXBEVzZrRVVJR0xsN1p3Zm9IekN3U0g0S2liNTFuWDU4WEMrd1l3YkcyWGJPK00yRElGcnZaUWFpYUZvYXFtZ0UrbE1WT2JLUWc5WWUvMlJhTFZKRnV5QWdGVmVKeHFhR1NCbzJvdFBVcHJ5c0pTUFVPZ2NZNHl6TWhEWWw5dVNDVFA5VEcrcTBHd2pEQVlQQldXQ2UvZitSdmUvMzkreWJ1di9vaC8vay8rQlgvMG81K2dwZVRvNkFHdlhINGR2L1EwUzhFMWpnYndBa2JiU1BKY1NMNjQwSjUzWDhMTFdoMWorMXlNT2RSYVk0dVlPTkhvQUlWQm1SSWZhaDVNSDNENzNrMCsvZndqUHYvaVk0NDV4dU9pbTFDcldDWVdZanZyZ2hENjVidWVJOVlKVndybzh4SnRUWUpFQW9abHlpa2ZudnlPVC8vMlkxNy8vQWY4dlhmK21MZXZ2ODJPM1VFM2hoMjdDeTZTOXlZWWltQXhxcVN3Rm95aEVVZlF2bzI1N204QmZGNmRtTlhuOFhPTzNWZDJjYTZoOWk0V0JkV09ob2FGbjdHUWludEhkL2prMXNkOC9QQ1RGUGNaTUdOTjVScThiODV3dENncFJscHdQR1c3cnJkZmZyem1YbzB2WjB0NGx3d1o0MXM5RFEyM0QyNXhhWEtaeVdRYnBWVWJ1cU14MFVJdGZwVTBmdzFJcXRqVVdJY3pubnNQN2xGVHRlRXJrY2pUeFU2VGlmdno2VzhDMUFxMENvaXFjTjZ6cE9KZ2VjeUQ1VEd2Nzd6TzllM3I3S2dKMitOdGRyYkhqQ2pCQlJwWDAzalFScVdDR1Uveit5Rm02aFBscUNnaXZ3cUZBcXVoTU16ckdTZk5DUWNuKzl3OXZzT2U3Rkd4d0tYMHRpYkZma29LS0FocHYzRndNbTJjL2JtRTFoTkpvVExnbXpaR1BRZ3NWVU10RG92RnAxQ0RJM2ZDM2YzN1hLK3VjMzN5Q20rTXI0T1AzaUtOd1lpZ1BlQUZIUlIxYUZZVUdkWVhYREVzS2wvYzlKNktlU05lUjh0eUdBdFlqYmF4cjU1VUo1d2VuM0RranZseWNZZDk3ck9nanNsY0tCcmxhSWpGV3pZdWdwN3llZzM0NWpBUTJSZUtlT05acTVuc2xxakNvYVJtc2dXbGo5bTlQc3dSaVpxUUFJS0s2YXBpRWdtcTI0bWtTOHpvbG85ZUNZdm1tTWJOMGJnNCtGSFR6MEw5UGlQUUpKNVNjVy8vTm1NenBkUVR0aWM3aUY0Uy9LSjFpVW9XcXlkS1JjWFNscW5GVW5pQjlJZ3NLckJ3TTdUMUZHUEY3bWhNSlo1WlhTRWhVQzJmYjdaY2F4dnJ4OGhLdE1ycUlycmR4SGthRmpRcDZ2V0VtZ0tEUXZQaC9RLzQ3UC85bExldXZzTS8rTk4veUkvLzhDZDhkdmQzVE93TzIrT0xXRnZpbmFmeDBlcXZ0VVZzbGw3UVhWWjRKejFQMEFvWEhONjRHRzVtTFk2R3VxNlp1UVZxcCtEZXdUMXVmUGtabjkvNGhMMkRyMWd5aDBTNnRpWmJuQ3lPWXlnRE9pWWdKVzNhVGc3OUc0WUdVOFpGaXFzOVRRaXhzQUlWdVdwWXdIRGo1SE8rZXY4cnJwZ3J2UHVEZDNqejJ0djg4TFYzS05XSWNibEZnWXJsTWYyQ3FnNjQ0S0FNblE3c2VyTFhZeDhMOTJhbk1iekRHc1I0WnNzNXR3L3VjT1B1bDl3N3VzdCt1STlMR2ROZUJXcHBvczZ1SmhhUGNGR2FLT3VwNW4xL25iQ0N4MUs3VFc3Vi9McW9WRHNzZTQ3QVM1T0NLUlIzbHJkNXUzcWJWN1pmd1dxTGVBL0J0a2s1ejRLZ0lDU1BRTVdDTzBkM3lJUTZLcFdjZjFiUHhTT3NRSThndUNnU2dYSllpVUZndDduSHdmU1lPOVA3WExHWGVIWDdDdGUyTHJGcmR5aDBiSy9nSGR2bHpsTVRJMUd4REN4R2c0N21mcWM4bFcrb3dvSkZYWE5VSGJKM2NwZTdzc2VDUlNSb1FLMGRMalRrV1NUei9YeGVjZlg4NkRsQ0F6NmtjQmtsTVJFdGYxNkZGR0dxVTZpSHhlSFExSkhzbnh4dzgyU0wyZTRmc3hYR2pJcVN5V2pFeEk0cHk1SVJHaU9hMElRazJaWGJLSFpHbFNRbUpSSFprTDBHMEVyVGlRbzQ1Vk9aWWtmdFBNdDZ3Y1BUWSs0djkzbkFBVE1XVkRSb0RHSVZjemVQM2dVVFZxME1lVEdVSTFZMm1pQUd2Q2dNVVI0dkdPTnlSRlY3WU14Zi9lWC94dDNiUjJ4TkxzVUpvbWtvUjhsL3JVS0tZWXd4VlNMUjhxS2tpUnA0SzBRVzh2UTByNmRNdGl6amllRm52L3l2akpLRnQ2b1dHS1B3My90a0wwVlJUSENONGkvLzBWOXplUCtVUWs4WUYyTVdzem1semZIQ1BsbktrdUJaVUZHb1d3bEJ4OVYvRktydlphQ3JnSmVHUzY5YzRJT1AzdWRvdVkvUmdwTzhlT0NaN3A1SW9YUzZDZHNSRW5xUHRPN2lTSFVhTzNPcDBjSkVZbUJVc2lTVHlsZGlrd3ZkOGlkdi9aUTNYLzhEZnZUREgzSHQ4dlZZd3RORjBsNllFbkU1M3JvN2hsYlFYNFZrMVlyZUFHMUF4SE42ZXNyOSszdnNIeDN3M2llLzQrSDhrRms0Sms1OERZYUFvOGJqMitZUkJVb2J2TTltUFl2V2loQ1dQTzFFa05zdnRsZm93bTgyV1E5NzEwbWpXN0puc3Z0WlV0aE5TaDQwS0N5V0xiWjRwWHlWTjYrL3ladlgzK2JhNWF0TXlnbEtvcVU2eXJyRjJMeUFyR3hqR0h0MGNXNStYNmlsWXYvaFByZnUzbUx2L2wyT3d4RkxLcHIwenljUk1ZZEhGd3F2UTB4bXpPZm1PTGNQOXNudDV2WmpyZjE2YjZ4Ylk5ZmFNRDlYYWhSRG5iU0hVb0h6RUNJUEdETmlteDMrNHJWL3lrOWYreW5GdktDb0NrYVVLVExLZ2ZHSVByc1FXQ2U1c1RUdjZ2dk9CSmJHc1RBTHBuYkJ2Ly9rUDdCZ3dURlRsdFN4Ykc0T3Q1RGtvczU5L054VytScFF4QUljUFl1dlVaYlFLQXlXa2hFV1RZbGhSTWtGSmx4aGw2dVRpMXpldWNUMmFJdFNiUk9WQ2ZKeThzbTNYb0UzSm01RERIODZucC93OFBTQXczRElDYWVKcHRYVXFlaHNveDFPTlowVlBLaWs3S2pTYTdxTENRMW54N2krYWtHRUpjNUtxWitiT0U0NUNlQ0Z5U1FtbkFidmlUYlhna0lWZUFrVVdDWk0yR0xDRHR0Y0tuZTV0SDJSM2NrT1c4V0VRaGtzR2gzaStLYVR6bnJYK0xuRU03VGhkQVNDem1WbUhVdFhjVEE5NHQ3RCt4ektFVXVXdUtSQkVNTXFoQm16U09UN3E2dDhiYk11VzJiNklSZDhNZkgzKytQT2dCZUdnY2krWUhUelJVRTBzY1FZeUo1OWp1NU95dWlpejdPb3pMb1BKTFJEbmdBT29TSE9lbG1PaXBVQitIdUxSQkppdHV1SVdKc25XaWpqZ0pPdENpMDFKTGRmYkozY3RqcnRicFg5U0xKaTAxWWZqMHFUY3Q3ay9yVU92U05pcThmWVlWTzR3Ym1RUGprMmlaZ1ZpZHFXalBTWWl6c1h1SExwTXBjdlgyVjdmSUZMRjY5Um1qRkZZYkRXZ29yS0QwMVQ0VnpEZkQ1bnNUemw2T2lJdzhNRGprOE9tVGZ6SkVvVHFNbmFtNmx2MFNBcGE3elZlK3kza1doaS83YnA3SnFONS8wa2VDeVJCZFl1NStyMkVlMW4ydll6cVI5Wk5Kb3hZN2IxaE1sa20xRXg1czNyYjBUNXJLS2tISThvakVVWm5XS0toYWFxbzZCOTQxaFVTMmFuVTA2bXA4eW5NK1oreGhFSCtGVEpJWjlCZnBURTRwTExONUd2VFFUOUtmdGdQN1RsakVVdWIyMWFTYVdtTlVyRjRJeFd0YzNHeTZsY3ZLU2EyQlVxR0ZPd3l6Wi8vK0xmNTgvZS9GTXVoZ3ZvT1l5bHhFcVVCbXQwZUdvaTIxalB2S3h3dTRIZmZ2VTdmblg0YXhaRWRaRXA4M2c4cllEdU4wQmtZZFV3QjZrUkxVaGVVTWFScVVSamdUSlJvSGdYR0s3eUdwWVJJMTFTamthTXloSmpMZFpFbFJCcllnaUdoSUR6bnVCanpLZUVRS004OTAvM2UxUzFhVXZMaG5iVWlvc2duN1lvUjY0dEFIUkVEYm81NFR3TFBLdEVObjRzTzNWREdrbDdydi8xTWF2SEVVbjNXTWtJZzBXbGRza0x5SklDaStJSDQ5Y3BkVUdaN2pGclM0eUpZbU1RQ2J4UG10aFZYYk9zRnN5cU9YUG0xQ3laTW04bDAxd2F3WDA2Vms4cWpiMCtYdlFmdHpFTThjK3dTbVFiQmlMN1hjQVFXdkNkUVVNbW5SM1pnbTZTWDc5WjFrZlFUZTZwUEtoa3M0MDcvMGI5SGtNVUJIRTlTaE1kWnRKR3krWHp6MU4zSmxQMElzUGl0L1ZhdThmM2NvV3BORXcvcCtRUmFYKzVuNDM4aElQaU9SWXprYVJ6bVJJZkdxcEViR2NzZ3VMNFpJK2JKMURjdEZpOVJSMGdEd01wbjc0WFdpQ01LQWhwd0EvMHd3QkNhdG5zQlhEcGZkZE5ET2RNWk04TDYrMFhSZWQ2VmlTMXRzM1lHUGNXWDQ5eGg2R2RrQ01sNzM1aHppbUhRV0ZubG9LU2o0OCtSS1gyaSsyc1VxOExLNi9sUGVUM0l0VndPS29VNXRBUmdmN2NtUSt0TzA2OTlzSTNQSW02YUcvTEZhZFVtc3dEQVM4YUp1UFlYNEtQd2RkcHdyZEdNZkVsVjdqSXhlMGRSa1pqdkU4RXlLR1Nzb0JHUFZGd3lTYkxjbEFCWnh4SDFZekQ2aVE1a0tOYmVhVlp2c0dZUnRYcmJyRmZwZDlTZ29ocmwzZEo1WnNLRW1FRGhXWEc3VWpLQXFpRlFpKzZmcEszY3M2TjQ5SXlKeExWRlArZitrOE1sNUdVdkpYR1FSWE9UaFByOThLakZ1aG5Yb3UvMG4wbHRMZmF1UXNqeWE4SG5BUmlhWXVtSllnZDhUY1lMRWZMajFPZmljUTMxZi9xdFV0b2Q1NDlXN2xOOG9pOVRtSlhrcmNlZGU2eStwZjVmOXhLWnhuZnNLc0IzeTRHSXZ1Q3NXSnBrMVFtQmRoTVRLRS9RbmMyV2IzaDNYNVFmT2gvNGZjSGZiSWtFRnJhNFZMcVc2cDZkZ2JSR2hnSDI5VTRzTE9EMGxsM2YvN3BibEIrZXZTdEdMQjVlUkx5QjlzZlh2dEFIMjE3eEgwYXEwQWNJdEhybS9tQW80R3d3TEtEMFBSSVAyMkFna0k0WlphUElBN2l5c1RxWUVyRmNBWmZ0ejFOK2d1bGRhTGRXbnBDSWhhYkxkQlBnM0RlZnVTY3g0K0RvbTJMWkZ0dVgrOVFRNWd6WnBTcy92bG56aWNlM2U3anY0Q2pvdXJHZ0VjUi81NjFtRVNOcGUzRDN3U1o3UWl6MWdhck5GNGFZb2EreGFKWTRxa1dUWW9uMUpBcVV4SEFwTkNuZDY2L3piV2RTNHhWaVE0Q0lXQjBXa1JLTHA3N2FLS1o1Y3p5NC9aMUJVM2hlWEQ2Z0lQNVBqN1JsWUJmN1ljcmxzQWVubkVobjBNemttbzNvVDhlS01nSnVkR0VFSEE5TWhTdllnekRVUlRkT1QzaEFTa1VIa2ZGY2tWd3BIMC9TMDNsMExIMUJWMy8rZnBQbnJmUTZ5RzBQWEVWK2M3T0ZlN0MyYTkydjZGQWJBMmk4S2xtcnd1YUNxaVRYeTBlcG03OUl0SU5KR2NPTE44WklkSFhXTk13NlRCMGpyalZmdEczU0cvdzJLeGJvSWMwcis4bUJpTDdvdEcvTDFkR2hiRDZHYzUrSmc2ZUFmMGtFOWtqM0VXL1graEprYTNaRUNFM1EwNmNpK1Qza2MyaE9KdVU4dHd0aTkyeGRiYmhEdjBna1pVdktkYXNUYjEra0s2M2krcmtrUWlaN3IxQU5FeFVmazZXSDQvS3BublgwYkpqVW5pQVJoRlVJRWlEOStzVDJBWkw4aVA3VzJCMVZuM09XSGVWNXRmV0xiVHI3YWMyRVZhNlNUQi90QmVOVXZrYUxlZmJaS3hPcGFSVFRHNmY2QWJDdXFiN1dad3h5Nm8wc1NmeTlBejJvSE1KUnZ1QmVHQkdiTEtYaFJSZ0VaM21aYWJ3M3FDMUlNRWh3Vk9ndWNBV2w5amxoNWQreUpYaUNxVXJrY2JGcEVvZFFLc1UzMmcySEVUdkVCNlJMT2Z4TkNwd3NEamttSk11RTEvT2RORDBOSk1oZUQ2THFENDdBdHI3Si9UNllLOVA2WTVYcG8rakpZYVZHTlNLUEZ1MitCVkp5TCtWYlJPNjU5cDFrVHByKzQyNWhBSWJTRzc3L0x3bXlPVDJDVzdSL2xoeDNpN2JlUEgxTDdaOXY4ZW1VNFczUnFBUmpWRWFwUUpCNHRZTEsvZFJ2QnY2VjZBTHhtbXQ1T3NFZG1NNFNQZTRmNmpySDgzamMxNUVucnVJSHZDdFlpQ3lMeHpaOG5HT3V3TTJEeWk5MXpiZFNzOGpodk03ajk2NWRiR1lHNnpUMjA0VmdRQUFEUlZKUkVGVXZYYlYwcjNZa3NQSFdLclBXVWM4TzdLRnN2YzdTblNQeks2bmR5UnJaazdLMkdSTjJYU1EyU2dqRzU3cjFBb3JCSzk3bmhQTHd0cUNLKy9LcEw1N0p1UmkwM0gxTFIxa2E5V3pUUVRyMysrWHJSVUowVnAyN3ZiY25lYWRSV1Rqc1Y1N1hZRXBOQVM5UXJLVVVxMitjZFU4UXRtaVRiaFozZWZhQ1oxekR6OC9pL1pHdEZaTTFmNk14V0tUZFV3QkJZcUNVU1NRVGJRc0drYnNzczI3Rjk3bUJ6dXY4NHE1eHJhZllCcUxyMEt5bUduUUhyRlBQanl0azlqY0xBczM1Mmh4eUpJcU9wUjFRTTRoWVY4amNPZkpqb25jTFZaN1lYY0pOeHpMbXBzOWhGaXNKWC9mdCsvSEI3VzRsZlBJNzdlZnl5YmVmbDlkUDBnNSszamxWbFVkMld5M3JOcFl1dDJ0ajYvbnQraEttL1FNd3l1VzROejMxZm9YNGg0ODRleTZ0OGN1SmVnTmJiOFdBNzNleWZxTHd3MXRvbnYvOTVHRE4vcEx4OS9uNmZYN2hJSEl2bEIwc1pvQVVaVi93OGVlNW03WlNDUTByYzVzSHJXKzZRbngyNEpBN003ZGNDUnI4anN4WXp5K2R6WlBtUFBiZnNWeXQrNVFlMFlac3pYeXR6cDVkTCtaS3E2VEs1SjFBM3MvcGpkZjI2NGZGYVZ0TlVXbGIybnBuMSsyRVFwbnRxYUloRGYvUWZRaUs2VXhta1JPVWl0bXk4dWpTR3hldEgwTHlLUlc5ZG92YitQci9ZazU5SzV4TC9DeGI5SHF6MkFxY2cyWGlNaTUwS3VkS3BOY2xhc2cxWjFtNzdsa05yMldLNitSYkZIUEkyWHAzRGpjTmpMUnR0Yk1iYmJhbU9tQXAwajNtNkpFSVJTVVhHQ1g2N3V2OHZibHQzaDE2MVZHOVloU1JxaGFwU2IyZUswUTdRbDVUZllJWkFLcjFwN0hZL1ljbkJ4d1BEOGhSbHNhUE0ycTYvZ2JSVTRhb2ozRzNMdjZQeDlERG5UM29mWnhpRU9XOUJwQnJWMzh4OTBxVGUveEp1UEYydUsxYjZCY3Q2SXE2ZTdqdkgwVTVESCtnSE85TnYxalN2TG5tenNpR04zMTg0MkhZL29qZnVxcEV1WG9ZdUpxYnpIUkoveTVBWUx1ZmZPOFRKTmVtTjQ1Um9JQkx4WURrWDJoMEVTbEFvamlrSndsczV2Y1FtY0c2VzRDUG5OZlpSSW1hZmhxSnlrTmtqVkV2OGRveVZ4ZUZQVGpMOU5qMWZ0bytuelVOK3hQTG4zMDIyVFZmU2prZ2EvdjhIL0dOdHc0NmVxMXQvcFRVRGZjeGhpNzd2UDl5UlBBVmZHOXZpV2wrNjNVVHVycy9KbjVRbkNjc1Z4R1ZaN1F4c0t0ZnBHdXo2Mjc3citKUmRNNW5nZTlOaVhsaEt0KzR0V3FSVW4zUHR1aHBJenV5bllWMFAyZUVOQmxzVkZIdGkycTRWZW4rdWdXelU4ME9UNVNKTVNHVm9FenlTaTl4em1VeUs4c1lMNDU1TGFhTU9IdDE5L2g2czRsbXVrQ3Q2elpNbVBLcG1Cc1NyYTJ0dGllN0xCZDdyQmxKa3hraTVHZjRLdEFFUXBVVURnTVhqdUNjalJLNFRVVXd0blFuWE93YnBVVkJmc0hEempsSkJydHRJNnUrendVZk5NVnVCVXJURnhDRngvYTlhWXNyNmZ4b3NBblk0Sk9YOGhNdEwxdlpOVWMrcWd0Z0JTczJwcmplTlNXTFpaY2dxUTc1UDV6VDk5TGRkNG9jMDR2NjVQRE5jS002TFZiY2dORjdLOENBSFZtcVVtVW1zdTdYU2VqQWxvckNDb3UxbnVqWEZRTER4VDUyTk5DZkpVdjUzRzhmN090bm5WclBJRHV2bHdmY3dZeSs4SXhFTmtYamsxUmtadXd0cUxkWkxYWjVEdzdOMlAzZTA1Z1d6eDJ1RDJYOUxkdnRtVDRMS2s1Ky8wK25sTWJ5dG1uTWRLM1B4bXNqWnBuTEp1cng5NVpJRUZRNkdRRkZPS2dMOG5jcUZSYy9KeHhzMHNrdDVLMkhkSFZLMFR0M0s0SVovdmV0empnNS9icmZscFd0dmxUNjQrNzBJVDRiUmRjZWoyLzJwMnRvS2pyK3ZGbXhZeGV5RUg4U1pWSVJMYTIrOGUyVWJkczZsbUp2aEZrU2lab05MdDJtejk0N1czZWVlVXQ2dE1hdjZpNVlIZXdGZGdrVnErMXhrcUJXaXBVTFZUMWdoSGphSlJXQ3EwMFFhWEZ0QWNWWWpsb0hVS1Vha08xbmw1RkpGZ21MWnF5L3E1WDRGVEFGMUJaejM2elQ1M0VwWXl4clVCSjdydjlCbnFPb2x1cldDT1krUnF0ajd3dDMrdXZmYlh1TExKbnlHRGt2TEoray9YSW9sV1JOaXZSUkkwRWxaNUhNNmVzTGR2NjJCaVN0clk5NzNOUGo5VTVhcFZDNmpPZk9UY2NKRm0yZy9kcFFaaGZqc0tMU2tVdFg1ZlViSEowd3VObWkyNFV6U1IyWUtuZkJ3eEU5b1dpdHlMdlc2czIzanZyQkxXL2VkUlFzLzZlWjVYTWZkOEo3YWJ6NjcxM3BpMHpBUWhuUC9kRWhDUzIzK1BiL1Fud2lPdTh5YzU3OXVQbnBScXM3cU9kUERmODNxTUtRT1gzK21FRi9hTmFQMGJwUDFEbnQvM0taNThWWnhZQlBXdk9ZNzk2OWhQOTY3cnAreHRWTFo3MFpPU3Nva0VXUytxTzVSRmpnSnovMXRNZ1R1eVo1b1NlYkZwb0Q4V2dLZEE0VjNHWmk5aER6YVRhWnVRdVVTd055b2N1L2pFVkZGRkJSU0psTkJKaVhTVlJ5WW9hQXRRK2xyb1hUZWxqeDZ4TlBDK25hVHViRGJDakM2clpERk1hdkZVY2h5Vmh5M0lrRmIrNTl4SDNlUmlWSHdqVVRlZG5sNnJmWnVzVTlsSGo3TmZBQnVMWnZ5ZHlUT1hxeDlQNG14ZWk0ZEg5NXhGNWhFREFTZlRrclR0MXZuNC9mc1F4clAzbW1UZWZaTDVhZVczek9IRGUvU3JyRC9wajBkcjFiUU45bnVEYWJ2NUlkOVUyamJkbnpuZmd1ZDhKREVUMmhlTGJKSktickhlL1Q5aHdUazlxU2MyVHloTmJYcDlqK3oxcUVudUMzOWs0MlBhMjMvUTRlKzcrejFpTXYzMDhYU0paMTM3ZnhoeTFYdEV0dmZndFFhTTIyYWhhVmhTU0oxV2l2bWRRRkZJd3JndEdycUFJQlNHNGx2aWVLZEdyQWtGM2x2djJkUUdUck5FcWhRaEFUR0NLUlRSMFNpS0VwcTRwalNYNGhpWTBxTEhDbFo0SEp3KzVNN3RMblNUL1YvREV4T281WU5QaWNPTUh6eGwvbi9sYVAvNCsvOGE2MDlmYThWa1MrMVM3ZXdLUHhkZkQ1dVBadUorQnRINW5NUkRaQVFNR0RCaXdFWThrU0Nua1UxSUM2YWJLWEgwTGREKzhRd3Q0RlFnbWhoUFVHanhKMFVEbENNZEEzZFNVNDVMR04xVEJvVVlsUzFseS8yaVBBeDQ4NVdKbHdJQUJ2MDhZaU95QUFRTUdET2h3YnRCelJMYWdCcUlGTmZTVEtkTlc5eDczYzJNeXdRMjk3UDJnd0t0WUl5b29oWkpZODB1SU5jREVHSnhBS0RSaEpPd2Y3M05yY1R1R0xBeEVkc0NBbHg0RGtSMHdZTUNBbHhTUDlKWStSc0pLRkFSMHEybWFMYTJDOU1pdHRGbnhteEx1Uk1XUUFrbEtJcVFZMnhpTEVGREZpRm9GWEtGUlk4MXhtSExqOENZSEhOQ2tTdmNEQmd4NHVURVEyUUVEQmd3WWNDNDI1cDBwMnJvWjByUEk1aVFaTFdjTnU5a2EyNFlkcVB3OHlxS1pMQTBvcXExZ1pheGhJUlYxNFRtUkJWOGUzZWJXOGk1TEtwVFJlRDlZWkFjTWVOa3hFTmtCQXdZTWVNa2hzS3FSbWJDdVNuR20xQ2k2MDRHVlpKSHR4Y2pxM3VPc1JxQjZTVitRQ0t1Q0lFa21LV1N5RzNBcTBHaFBwUjEzcC90OHN2OFpCeHl6cENFb0dVSUxCZ3dZTUJEWkFRTUdEQml3aGtjUTJxQTZuZFJjRFFvaVQxVkpucWpWUWtpdjZTVGgxbzlXMExKcW5mV1NLMlZGRGRTZ0hYV29hR3pOVEMrNE05L25EZ2NzYVZBN0JyK2NmMHNWdkFZTUdQQmR4a0JrQnd3WU1PQWx4cmsyVFFWV1cvRGc4VGpuYUl6SEJrTUlBYVVWTkhXTWVRM1NWaTJMNVhjMVNxbFVrQ095V0FtQmZ0MVRKZUFYRmVOeWhCbVZZQXlMcHNGN2g5ZUN0NEd0eTF0OGN2ODJmN2YvQVYveEZVc2FuQWtFVjhWNkRac0ZQd2NNR1BBU1lTQ3lBd1lNR1BBU29pL2VmeDVDQ0NnMEJRV2owWWhTbHhobmtGcHdkVU5oTElKSGxDSldKdE9nQWdhTlVvTDRxRU1yU21FMW9FejdPWU53OGZJdW9YRlVia2t0SHErQlVvRU4rTUx6OGIwditlcjBEb2Njc2FDaEpwYTRIY2pyZ0FFRE1nWWlPMkRBZ0FFdk1WWTRZWTZUelFVSnhHRW9xYWxaTmpXTmJqQWV0RVNyTENxZ2drZEVJUkszdVVDd1VvSlMwV3dxb2tBOEVpTGhsYUJ3VWZPQXVsN1NCQStGUW8wTllvV3BuM0hVelBuTmc5OXd4REVISEZQUjRQQmRsdGxqWk1JR0RCandjbUFnc2dNR0RCZ3dZQ09NTWloUkZKUW9wYUtGMW1oc1dWQVVCb0lIcFpBQVF0eWlkQ3Ryb0pWQmxFNWxqcU9zbHFSd0FDOXdYTS9BZWlnTWVxendSYzNCOG9pdkR1OXlaM3FQVzl4aVRrTkZRNU5KTEt4S0pBd1lNT0NseGtCa0J3d1lNT0JseHdiRkFrZ0tCQ2cwR2hIQkJVL1ROS2hhY0Y1aERGRm1JSVVVQkZGSThBU2xrV3lwVlFISmxsbWxFZVVSRkVFMVRLNXQwVkRUK0NVek4rWEI4UUczaisvdzFldzJSNXdrQWh0d1NDeDNLNEFEaFlyRVdnYlZnZ0VEWG5ZTVJIYkFnQUVEQm14RUlPQlRKSzB4QnFzdEpTVWxGdXFBbHdhRkVKUkhLWVhvVkpWTGhJQ0taV3UxUmxKOExJQW5oaVY0QlNmTkthZnVoS09UQjl3L3ZzZTlabzhUanFpb3FIRFVpbTZXU2haWUkyQ0kxdDJHd1NnN1lNRExqb0hJRGhnd1lNQ0FqUWlBd2FEUk5ONVJ1eG92SlVvVmFHdHh2a2EwSUZxaGRMU1NhZ1UrcXM3aVEwZ1Z3QUl1aEtoODBEUTAzckdnNGVQOXp6anhVNlp5eEpRakhFdHFLaXJsWUVRWEN5dmRBVm1nUk1jU3VZQWJ0R1FIREhpcE1SRFpBUU1HREhqWmtmUmYxNTlycGFpbDRaQWozci94RzRxWlppSVRkc3dPUmltS3NVRXBVTWFndFVKcFExQzVUSUV3V3k3eDRtbWNwNjRyWm43SmdqbExLbW9jY3h3MURaTC9WQ0JvT21rdHZYcE1zZlpYL0NlRExYYkFnQUVNY3RJREJnd1k4QklqTThXd1dRVkFOQWFOU1pHeU5wRkloZXBOSG4yenFVb0VzM3NlMXA3bnJVY0k2WitrdUlIMmNZN1p6Y2NrM1o4QlZEcHVuL1krWU1DQWx4Y0RrUjB3WU1DQUFRTUdEQmp3dllSKy9FY0dEQmd3WU1DQUFRTUdEUGp1WVNDeUF3WU1HREJnd0lBQkE3NlgrUDhCOUlLaFZRTFZPQW9BQUFBQVNVVk9SSzVDWUlJPVwiXHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSwwLDAsLTEsMCwxKVwiXHJcbiAgICAgICAgICAgICAgICBwcmVzZXJ2ZUFzcGVjdFJhdGlvPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ9ezF9XHJcbiAgICAgICAgICAgICAgICB3aWR0aD17MX1cclxuICAgICAgICAgICAgICAvPlxyXG4gICAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICA8L2c+XHJcbiAgICAgICAgPC9nPiAqL31cclxuICAgICAgICA8Z1xyXG4gICAgICAgICAgaWQ9XCJnNVwiXHJcbiAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBcImlubGluZVwiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICA+XHJcbiAgICAgICAgICA8Z1xyXG4gICAgICAgICAgICBpZD1cImczNjhcIlxyXG4gICAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICAgIGRpc3BsYXk6IFwiaW5saW5lXCIsXHJcbiAgICAgICAgICAgIH19XHJcbiAgICAgICAgICA+XHJcbiAgICAgICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDM3NClcIiBpZD1cImczNzBcIj5cclxuICAgICAgICAgICAgICA8dGV4dFxyXG4gICAgICAgICAgICAgICAgaWQ9XCJ0ZXh0Mzc4XCJcclxuICAgICAgICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgICAgICAgIGZvbnRWYXJpYW50OiBcIm5vcm1hbFwiLFxyXG4gICAgICAgICAgICAgICAgICBmb250V2VpZ2h0OiBcIm5vcm1hbFwiLFxyXG4gICAgICAgICAgICAgICAgICBmb250U2l6ZTogXCIyMHB4XCIsXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRGYW1pbHk6IFwiQXJpYWxNVFwiLFxyXG4gICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxyXG4gICAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcclxuICAgICAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwibm9uemVyb1wiLFxyXG4gICAgICAgICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxyXG4gICAgICAgICAgICAgICAgfX1cclxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxLDAsMCwtMSwxMDM1LjkxLDg0MS4xMylcIlxyXG4gICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgIDx0c3BhblxyXG4gICAgICAgICAgICAgICAgICBpZD1cInRzcGFuMzc2XCJcclxuICAgICAgICAgICAgICAgICAgeT17MH1cclxuICAgICAgICAgICAgICAgICAgeD1cIjAgMTEuMTQyMjQgMjIuMjg0NDc5IDMyLjM4NDY0IDQyLjQwNDY0IDQ5LjE1ODExOSA1My42MDY5OTggNjQuNzQ5MjM3IDY5LjE5ODEyIDgwLjM0MDM2MyA5MS40ODI1OTcgOTYuNjcyOTU4IDEwNy44MTUyIDExOC45NTc0NCAxMzAuMDk5NjkgMTM1LjU1MDU3IDE0Ni42OTI3OSAxNTcuODM1MDQgMTY4Ljk3NzI4IDE3My40MjYxNiAxODMuNDQ2MTcgMTkzLjQ2NjE2IDE5Ny45MTUwNCAyMDkuMDU3MjggMjIwLjI1OTY0IDIyNS42NTA0MSAyMzEuMjIxNTMgMjQyLjM2Mzc1IDI1My41MDZcIlxyXG4gICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICB7XCJkZXNjcmliaW5nIGFuZCBhbmFseXppbmcgdGhlIFwifVxyXG4gICAgICAgICAgICAgICAgPC90c3Bhbj5cclxuICAgICAgICAgICAgICA8L3RleHQ+XHJcbiAgICAgICAgICAgIDwvZz5cclxuICAgICAgICAgIDwvZz5cclxuICAgICAgICAgIDxnXHJcbiAgICAgICAgICAgIGlkPVwiZzM4MFwiXHJcbiAgICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgICAgZGlzcGxheTogXCJpbmxpbmVcIixcclxuICAgICAgICAgICAgfX1cclxuICAgICAgICAgID5cclxuICAgICAgICAgICAgPGcgY2xpcFBhdGg9XCJ1cmwoI2NsaXBQYXRoMzg2KVwiIGlkPVwiZzM4MlwiPlxyXG4gICAgICAgICAgICAgIDx0ZXh0XHJcbiAgICAgICAgICAgICAgICBpZD1cInRleHQzOTBcIlxyXG4gICAgICAgICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgICAgICAgZm9udFZhcmlhbnQ6IFwibm9ybWFsXCIsXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRXZWlnaHQ6IFwibm9ybWFsXCIsXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRTaXplOiBcIjIwcHhcIixcclxuICAgICAgICAgICAgICAgICAgZm9udEZhbWlseTogXCJBcmlhbE1UXCIsXHJcbiAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXHJcbiAgICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgICAgICAgICBmaWxsUnVsZTogXCJub256ZXJvXCIsXHJcbiAgICAgICAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXHJcbiAgICAgICAgICAgICAgICB9fVxyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEsMCwwLC0xLDEwNDMuNzEsODE3LjEzKVwiXHJcbiAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgPHRzcGFuXHJcbiAgICAgICAgICAgICAgICAgIGlkPVwidHNwYW4zODhcIlxyXG4gICAgICAgICAgICAgICAgICB5PXswfVxyXG4gICAgICAgICAgICAgICAgICB4PVwiMCAxMS4xNDIyNCAyMi4yODQ0NzkgMjcuODU1NiAzOC45OTc4NDEgNTAuMTQwMDc5IDU1LjcxMTIwMSA2MC4xNjAwOCA3MS4zMDIzMjIgNzUuNzUxMTk4IDgxLjEyMTkxOCA4NS41NzA4MDEgMTAyLjI2NDEyIDExMy40MDYzNiAxMjQuNTQ4NiAxMzQuNjI4NzIgMTQwLjE5OTg0IDE1MC4yMTk4MyAxNTUuNzkwOTUgMTYxLjAyMTM5IDE2NS40NzAyOCAxNzYuNjEyNTIgMTgyLjE4MzY0IDE5My4zMjU4OCAyMDQuNDY4MTIgMjE1LjYxMDM3IDIyNi43NTI1OSAyMzcuODk0ODRcIlxyXG4gICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICB7XCJwb3RlbnRpYWwgaW1wYWN0cywgaW50ZW5kZWQgXCJ9XHJcbiAgICAgICAgICAgICAgICA8L3RzcGFuPlxyXG4gICAgICAgICAgICAgIDwvdGV4dD5cclxuICAgICAgICAgICAgPC9nPlxyXG4gICAgICAgICAgPC9nPlxyXG4gICAgICAgICAgPGdcclxuICAgICAgICAgICAgaWQ9XCJnMzkyXCJcclxuICAgICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgICBkaXNwbGF5OiBcImlubGluZVwiLFxyXG4gICAgICAgICAgICB9fVxyXG4gICAgICAgICAgPlxyXG4gICAgICAgICAgICA8ZyBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGgzOTgpXCIgaWQ9XCJnMzk0XCI+XHJcbiAgICAgICAgICAgICAgPHRleHRcclxuICAgICAgICAgICAgICAgIGlkPVwidGV4dDQwMlwiXHJcbiAgICAgICAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICAgICAgICBmb250VmFyaWFudDogXCJub3JtYWxcIixcclxuICAgICAgICAgICAgICAgICAgZm9udFdlaWdodDogXCJub3JtYWxcIixcclxuICAgICAgICAgICAgICAgICAgZm9udFNpemU6IFwiMjBweFwiLFxyXG4gICAgICAgICAgICAgICAgICBmb250RmFtaWx5OiBcIkFyaWFsTVRcIixcclxuICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcclxuICAgICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXHJcbiAgICAgICAgICAgICAgICAgIGZpbGxSdWxlOiBcIm5vbnplcm9cIixcclxuICAgICAgICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcclxuICAgICAgICAgICAgICAgIH19XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSwwLDAsLTEsMTA0NS45OSw3OTMuMTMpXCJcclxuICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICA8dHNwYW5cclxuICAgICAgICAgICAgICAgICAgaWQ9XCJ0c3BhbjQwMFwiXHJcbiAgICAgICAgICAgICAgICAgIHk9ezB9XHJcbiAgICAgICAgICAgICAgICAgIHg9XCIwIDExLjE0MjI0IDE3Ljg1NTY0IDIzLjI0NjQwMSAzNC4zODg2NDEgNDUuNTMwODggNDkuOTc5NzU5IDYxLjEyMjAwMiA2Ni42OTMxMjMgNzcuODM1MzU4IDg4Ljk3NzYgMTAwLjExOTg0IDExMS4zMDIxNiAxMjIuNDQ0NCAxMjguMDE1NTIgMTMzLjE0NTc3IDE0NC4yODc5OSAxNTUuNDMwMjQgMTYxLjAwMTM2IDE3Mi4xNDM2IDE3Ni41OTI0OCAxODIuMTYzNiAxODcuNjM0NTIgMTk4Ljc3Njc2IDIwNS40OTAxNiAyMTYuNjMyNCAyMjcuNzc0NjQgMjMzLjM0NTc2XCJcclxuICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAge1wib3IgdW5pbnRlbmRlZCwgb24gZGlmZmVyZW50IFwifVxyXG4gICAgICAgICAgICAgICAgPC90c3Bhbj5cclxuICAgICAgICAgICAgICA8L3RleHQ+XHJcbiAgICAgICAgICAgIDwvZz5cclxuICAgICAgICAgIDwvZz5cclxuICAgICAgICAgIDxnXHJcbiAgICAgICAgICAgIGlkPVwiZzQwNFwiXHJcbiAgICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgICAgZGlzcGxheTogXCJpbmxpbmVcIixcclxuICAgICAgICAgICAgfX1cclxuICAgICAgICAgID5cclxuICAgICAgICAgICAgPGcgY2xpcFBhdGg9XCJ1cmwoI2NsaXBQYXRoNDEwKVwiIGlkPVwiZzQwNlwiPlxyXG4gICAgICAgICAgICAgIDx0ZXh0XHJcbiAgICAgICAgICAgICAgICBpZD1cInRleHQ0MTRcIlxyXG4gICAgICAgICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgICAgICAgZm9udFZhcmlhbnQ6IFwibm9ybWFsXCIsXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRXZWlnaHQ6IFwibm9ybWFsXCIsXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRTaXplOiBcIjIwLjA2NHB4XCIsXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRGYW1pbHk6IFwiQXJpYWxNVFwiLFxyXG4gICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxyXG4gICAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcclxuICAgICAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwibm9uemVyb1wiLFxyXG4gICAgICAgICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxyXG4gICAgICAgICAgICAgICAgfX1cclxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxLDAsMCwtMSwxMTM3LjA3LDc2OS4xMylcIlxyXG4gICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgIDx0c3BhblxyXG4gICAgICAgICAgICAgICAgICBpZD1cInRzcGFuNDEyXCJcclxuICAgICAgICAgICAgICAgICAgeT17MH1cclxuICAgICAgICAgICAgICAgICAgeD1cIjAgNC40NTQyMDc5IDE1LjYwOTc5MiAyNS41NjE1MzcgMzYuNzE3MTIxIDQxLjE3MTMyOVwiXHJcbiAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgIHtcImxldmVsc1wifVxyXG4gICAgICAgICAgICAgICAgPC90c3Bhbj5cclxuICAgICAgICAgICAgICA8L3RleHQ+XHJcbiAgICAgICAgICAgIDwvZz5cclxuICAgICAgICAgIDwvZz5cclxuICAgICAgICAgIDxnXHJcbiAgICAgICAgICAgIGlkPVwiZzQxNlwiXHJcbiAgICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgICAgZGlzcGxheTogXCJpbmxpbmVcIixcclxuICAgICAgICAgICAgfX1cclxuICAgICAgICAgID5cclxuICAgICAgICAgICAgPGcgY2xpcFBhdGg9XCJ1cmwoI2NsaXBQYXRoNDIyKVwiIGlkPVwiZzQxOFwiPlxyXG4gICAgICAgICAgICAgIDx0ZXh0XHJcbiAgICAgICAgICAgICAgICBpZD1cInRleHQ0MjZcIlxyXG4gICAgICAgICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgICAgICAgZm9udFZhcmlhbnQ6IFwibm9ybWFsXCIsXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRXZWlnaHQ6IFwibm9ybWFsXCIsXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRTaXplOiBcIjIwcHhcIixcclxuICAgICAgICAgICAgICAgICAgZm9udEZhbWlseTogXCJBcmlhbE1UXCIsXHJcbiAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXHJcbiAgICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgICAgICAgICBmaWxsUnVsZTogXCJub256ZXJvXCIsXHJcbiAgICAgICAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXHJcbiAgICAgICAgICAgICAgICB9fVxyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEsMCwwLC0xLDEwNDUuOTksNzIxLjEpXCJcclxuICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICA8dHNwYW5cclxuICAgICAgICAgICAgICAgICAgaWQ9XCJ0c3BhbjQyNFwiXHJcbiAgICAgICAgICAgICAgICAgIHk9ezB9XHJcbiAgICAgICAgICAgICAgICAgIHg9XCIwIDE2LjY5MzMxOSAyNy44MzU1NiAzOC45Nzc3OTggNDQuNTQ4OTIgNDguOTk3Nzk5IDYwLjE0MDA0MSA3MS4yODIyOCA4MS4zMDIyNzcgODYuNjMyOTE5IDEwMS4xMDE4IDEwNS41NTA2OCAxMTEuMTIxOCAxMjIuMjY0MDQgMTI3LjgzNTE2IDEzNy44NTUxNiAxNDcuOTM1MjkgMTUyLjM4NDE2IDE2My41MjY0IDE3NC42Njg2NCAxODAuMjM5NzYgMTg0LjY4ODY0IDE5NC43MDg2MyAyMDAuMjc5NzUgMjEwLjI5OTc2IDIxNS40OTAxMyAyMjYuNjMyMzUgMjMzLjM0NTc2XCJcclxuICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAge1wibWVldGluZ3Mgd2l0aCBzY2llbnRpc3RzIG9yIFwifVxyXG4gICAgICAgICAgICAgICAgPC90c3Bhbj5cclxuICAgICAgICAgICAgICA8L3RleHQ+XHJcbiAgICAgICAgICAgIDwvZz5cclxuICAgICAgICAgIDwvZz5cclxuICAgICAgICAgIDxnXHJcbiAgICAgICAgICAgIGlkPVwiZzQyOFwiXHJcbiAgICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgICAgZGlzcGxheTogXCJpbmxpbmVcIixcclxuICAgICAgICAgICAgfX1cclxuICAgICAgICAgID5cclxuICAgICAgICAgICAgPGcgY2xpcFBhdGg9XCJ1cmwoI2NsaXBQYXRoNDM0KVwiIGlkPVwiZzQzMFwiPlxyXG4gICAgICAgICAgICAgIDx0ZXh0XHJcbiAgICAgICAgICAgICAgICBpZD1cInRleHQ0MzhcIlxyXG4gICAgICAgICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgICAgICAgZm9udFZhcmlhbnQ6IFwibm9ybWFsXCIsXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRXZWlnaHQ6IFwibm9ybWFsXCIsXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRTaXplOiBcIjIwcHhcIixcclxuICAgICAgICAgICAgICAgICAgZm9udEZhbWlseTogXCJBcmlhbE1UXCIsXHJcbiAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXHJcbiAgICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgICAgICAgICBmaWxsUnVsZTogXCJub256ZXJvXCIsXHJcbiAgICAgICAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXHJcbiAgICAgICAgICAgICAgICB9fVxyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEsMCwwLC0xLDEwNDguNzUsNjk3LjEpXCJcclxuICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICA8dHNwYW5cclxuICAgICAgICAgICAgICAgICAgaWQ9XCJ0c3BhbjQzNlwiXHJcbiAgICAgICAgICAgICAgICAgIHk9ezB9XHJcbiAgICAgICAgICAgICAgICAgIHg9XCIwIDExLjE0MjI0IDIyLjI4NDQ3OSAzMy40MjY3MiA0NC42MjkwODIgNDkuMDc3OTYxIDYwLjIyMDIgNjUuNjMwOTk3IDgwLjA5OTg3NiA4NC41NDg3NTkgOTAuMTE5ODgxIDEwMS4yNjIxMiAxMTIuNDA0MzYgMTIzLjU0NjYgMTI5LjExNzcyIDEzNC41MDg0OCAxNDUuNjUwNzMgMTUxLjA2MTUyIDE2MS4wODE1MSAxNzEuMjAxNzIgMTc1LjY1MDYgMTg2Ljc5Mjg1IDE5Ny45MzUwNyAyMDMuNTA2MiAyMDcuOTU1MDggMjEzLjQ0NjA0IDIxNy44OTQ5MSAyMjcuOTE0OTJcIlxyXG4gICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICB7XCJwZW9wbGUgd2l0aG91dCBhIHNjaWVudGlmaWMgXCJ9XHJcbiAgICAgICAgICAgICAgICA8L3RzcGFuPlxyXG4gICAgICAgICAgICAgIDwvdGV4dD5cclxuICAgICAgICAgICAgPC9nPlxyXG4gICAgICAgICAgPC9nPlxyXG4gICAgICAgICAgPGdcclxuICAgICAgICAgICAgaWQ9XCJnNDQwXCJcclxuICAgICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgICBkaXNwbGF5OiBcImlubGluZVwiLFxyXG4gICAgICAgICAgICB9fVxyXG4gICAgICAgICAgPlxyXG4gICAgICAgICAgICA8ZyBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGg0NDYpXCIgaWQ9XCJnNDQyXCI+XHJcbiAgICAgICAgICAgICAgPHRleHRcclxuICAgICAgICAgICAgICAgIGlkPVwidGV4dDQ1MFwiXHJcbiAgICAgICAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICAgICAgICBmb250VmFyaWFudDogXCJub3JtYWxcIixcclxuICAgICAgICAgICAgICAgICAgZm9udFdlaWdodDogXCJub3JtYWxcIixcclxuICAgICAgICAgICAgICAgICAgZm9udFNpemU6IFwiMjBweFwiLFxyXG4gICAgICAgICAgICAgICAgICBmb250RmFtaWx5OiBcIkFyaWFsTVRcIixcclxuICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcclxuICAgICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXHJcbiAgICAgICAgICAgICAgICAgIGZpbGxSdWxlOiBcIm5vbnplcm9cIixcclxuICAgICAgICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcclxuICAgICAgICAgICAgICAgIH19XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSwwLDAsLTEsMTExMC4zMSw2NzMuMSlcIlxyXG4gICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgIDx0c3BhblxyXG4gICAgICAgICAgICAgICAgICBpZD1cInRzcGFuNDQ4XCJcclxuICAgICAgICAgICAgICAgICAgeT17MH1cclxuICAgICAgICAgICAgICAgICAgeD1cIjAgMTEuMTQyMjQgMjIuMjg0NDc5IDMyLjM4NDY0IDQyLjQwNDY0IDUzLjYwNjk5OCA2MC4yODAzMTkgNzEuNDYyNjM5IDgyLjUwNDY3NyA5My42NDY5MTlcIlxyXG4gICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICB7XCJiYWNrZ3JvdW5kXCJ9XHJcbiAgICAgICAgICAgICAgICA8L3RzcGFuPlxyXG4gICAgICAgICAgICAgIDwvdGV4dD5cclxuICAgICAgICAgICAgPC9nPlxyXG4gICAgICAgICAgPC9nPlxyXG4gICAgICAgICAgPGdcclxuICAgICAgICAgICAgaWQ9XCJnNDUyXCJcclxuICAgICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgICBkaXNwbGF5OiBcImlubGluZVwiLFxyXG4gICAgICAgICAgICB9fVxyXG4gICAgICAgICAgPlxyXG4gICAgICAgICAgICA8ZyBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGg0NTgpXCIgaWQ9XCJnNDU0XCI+XHJcbiAgICAgICAgICAgICAgPHRleHRcclxuICAgICAgICAgICAgICAgIGlkPVwidGV4dDQ2MlwiXHJcbiAgICAgICAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICAgICAgICBmb250VmFyaWFudDogXCJub3JtYWxcIixcclxuICAgICAgICAgICAgICAgICAgZm9udFdlaWdodDogXCJub3JtYWxcIixcclxuICAgICAgICAgICAgICAgICAgZm9udFNpemU6IFwiMjBweFwiLFxyXG4gICAgICAgICAgICAgICAgICBmb250RmFtaWx5OiBcIkFyaWFsTVRcIixcclxuICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcclxuICAgICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXHJcbiAgICAgICAgICAgICAgICAgIGZpbGxSdWxlOiBcIm5vbnplcm9cIixcclxuICAgICAgICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcclxuICAgICAgICAgICAgICAgIH19XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSwwLDAsLTEsMTA5MC4zOSw2MjUuMSlcIlxyXG4gICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgIDx0c3BhblxyXG4gICAgICAgICAgICAgICAgICBpZD1cInRzcGFuNDYwXCJcclxuICAgICAgICAgICAgICAgICAgeT17MH1cclxuICAgICAgICAgICAgICAgICAgeD1cIjAgMTAuMDIgMjEuMjIyMzYxIDM3LjkxNTY4IDQ5LjA1NzkxOSA1NS43MzEyMzkgNjYuOTEzNTU5IDc4LjA1NTgwMSA4OS4xMTc4ODIgMTAwLjI2MDEyIDExMC4yODAxMiAxMTQuNzI5IDEyNC42Mjg3NiAxMzUuNzcxIDE0MC4yMTk4OCAxNTAuMjM5ODhcIlxyXG4gICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICB7XCJjb21wcmVoZW5zaXZlbHkgXCJ9XHJcbiAgICAgICAgICAgICAgICA8L3RzcGFuPlxyXG4gICAgICAgICAgICAgIDwvdGV4dD5cclxuICAgICAgICAgICAgPC9nPlxyXG4gICAgICAgICAgPC9nPlxyXG4gICAgICAgICAgPGdcclxuICAgICAgICAgICAgaWQ9XCJnNDY0XCJcclxuICAgICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgICBkaXNwbGF5OiBcImlubGluZVwiLFxyXG4gICAgICAgICAgICB9fVxyXG4gICAgICAgICAgPlxyXG4gICAgICAgICAgICA8ZyBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGg0NzApXCIgaWQ9XCJnNDY2XCI+XHJcbiAgICAgICAgICAgICAgPHRleHRcclxuICAgICAgICAgICAgICAgIGlkPVwidGV4dDQ3NFwiXHJcbiAgICAgICAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICAgICAgICBmb250VmFyaWFudDogXCJub3JtYWxcIixcclxuICAgICAgICAgICAgICAgICAgZm9udFdlaWdodDogXCJub3JtYWxcIixcclxuICAgICAgICAgICAgICAgICAgZm9udFNpemU6IFwiMjBweFwiLFxyXG4gICAgICAgICAgICAgICAgICBmb250RmFtaWx5OiBcIkFyaWFsTVRcIixcclxuICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcclxuICAgICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXHJcbiAgICAgICAgICAgICAgICAgIGZpbGxSdWxlOiBcIm5vbnplcm9cIixcclxuICAgICAgICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcclxuICAgICAgICAgICAgICAgIH19XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSwwLDAsLTEsMTA4MC40Myw2MDEuMSlcIlxyXG4gICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgIDx0c3BhblxyXG4gICAgICAgICAgICAgICAgICBpZD1cInRzcGFuNDcyXCJcclxuICAgICAgICAgICAgICAgICAgeT17MH1cclxuICAgICAgICAgICAgICAgICAgeD1cIjAgMTAuMDIgMjEuMjIyMzYxIDMyLjM2NDYwMSA0Mi40NDQ3MjEgNDYuODkzNiA1OC4wMzU4MzkgNjkuMTc4MDc4IDc1LjkxMTUyMiA4Ny4wNTM3NTcgOTIuNjI0ODc4IDk3LjA3Mzc2MSAxMDguMjE2IDExOS4zNTgyNCAxMjQuNTA4NTIgMTMwLjA3OTY0IDEzNi43NTI5NiAxNDcuODk1MiAxNjQuNTg4NTJcIlxyXG4gICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICB7XCJjb25zaWRlcmF0aW9uIGZyb20gXCJ9XHJcbiAgICAgICAgICAgICAgICA8L3RzcGFuPlxyXG4gICAgICAgICAgICAgIDwvdGV4dD5cclxuICAgICAgICAgICAgPC9nPlxyXG4gICAgICAgICAgPC9nPlxyXG4gICAgICAgICAgPGdcclxuICAgICAgICAgICAgaWQ9XCJnNDc2XCJcclxuICAgICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgICBkaXNwbGF5OiBcImlubGluZVwiLFxyXG4gICAgICAgICAgICB9fVxyXG4gICAgICAgICAgPlxyXG4gICAgICAgICAgICA8ZyBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGg0ODIpXCIgaWQ9XCJnNDc4XCI+XHJcbiAgICAgICAgICAgICAgPHRleHRcclxuICAgICAgICAgICAgICAgIGlkPVwidGV4dDQ4NlwiXHJcbiAgICAgICAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICAgICAgICBmb250VmFyaWFudDogXCJub3JtYWxcIixcclxuICAgICAgICAgICAgICAgICAgZm9udFdlaWdodDogXCJub3JtYWxcIixcclxuICAgICAgICAgICAgICAgICAgZm9udFNpemU6IFwiMjBweFwiLFxyXG4gICAgICAgICAgICAgICAgICBmb250RmFtaWx5OiBcIkFyaWFsTVRcIixcclxuICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcclxuICAgICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXHJcbiAgICAgICAgICAgICAgICAgIGZpbGxSdWxlOiBcIm5vbnplcm9cIixcclxuICAgICAgICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcclxuICAgICAgICAgICAgICAgIH19XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSwwLDAsLTEsMTA1Ny41MSw1NzcuMSlcIlxyXG4gICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgIDx0c3BhblxyXG4gICAgICAgICAgICAgICAgICBpZD1cInRzcGFuNDg0XCJcclxuICAgICAgICAgICAgICAgICAgeT17MH1cclxuICAgICAgICAgICAgICAgICAgeD1cIjAgMTEuMTQyMjQgMTUuNTkxMTIgMjEuMTYyMjM5IDMyLjMwNDQ4MiAzOC45Nzc3OTggNTAuMTIwMDQxIDYxLjI2MjI4IDY2LjgzMzM5NyA3MS4yODIyOCA4MS4yNDIxNTcgOTIuMzg0Mzk5IDk3Ljc5NTE5NyAxMDguOTM3NDQgMTIwLjA3OTY4IDEyNi44MTMxMiAxMzYuODMzMTEgMTQ4LjAzNTQ4IDE1OS4xNzc3MiAxNjkuMTk3NzIgMTc0LjY2ODY0IDE3OS4xMTc1MiAxODkuMDc3MzkgMjAwLjIxOTY0IDIxMC4yOTk3NlwiXHJcbiAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgIHtcImFsdGVybmF0aXZlIHBlcnNwZWN0aXZlcyBcIn1cclxuICAgICAgICAgICAgICAgIDwvdHNwYW4+XHJcbiAgICAgICAgICAgICAgPC90ZXh0PlxyXG4gICAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICA8L2c+XHJcbiAgICAgICAgPC9nPlxyXG4gICAgICA8L2c+XHJcbiAgICAgIDxnXHJcbiAgICAgICAgaWQ9XCJlbmdhZ2VcIlxyXG4gICAgICAgIGNsYXNzTmFtZT1cImhwMyBlbmdhZ2UtdmVyc2lvblwiXHJcbiAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgIGRpc3BsYXk6IFwiaW5saW5lXCIsXHJcbiAgICAgICAgfX1cclxuICAgICAgICB0cmFuc2Zvcm09XCJyb3RhdGUoLTE3OS4wNTY4Nyw3MDguODM5NDYsNzA1LjgwMDc5KVwiXHJcbiAgICAgICBcclxuICAgICAgPlxyXG4gICAgICAgIDxhIG9uQ2xpY2s9e29wZW5DbGFzc2VzKHtjbGFzc05hbWU6IFwiaHAzIGFudGljaXBhdGUtdmVyc2lvblwiLCBjbGFzc3RvSGlkZTogXCJocDNcIn0pfT5cclxuICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgaWQ9XCJlbmdhZ2UtYW50aWNpcGF0ZVwiXHJcbiAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICBmaWxsOiBcIiNiODViZDFcIixcclxuICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXHJcbiAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcclxuICAgICAgICAgIH19XHJcbiAgICAgICAgICBkPVwibSA4OTQuNSw4OTAuMDMgLTYuNDgsLTUxLjggLTQ5LjU3LC02LjE5IGMgMzEuNjMsLTMyLjU3IDUxLjEyLC03Ny4wMSA1MS4xMiwtMTI2LjAxIDAsLTQwLjE3IC0xMy4xLC03Ny4yNyAtMzUuMjQsLTEwNy4yOCBsIDYuNSwtNTIuMTEgNTAuMiwtNi4yOCBjIDM2Ljk3LDQ1LjExIDU5LjE3LDEwMi44IDU5LjE3LDE2NS42NyAwLDcxLjc2IC0yOC45MSwxMzYuNzYgLTc1LjcsMTg0IHpcIlxyXG4gICAgICAgIC8+PC9hPlxyXG4gICAgICAgIDxhIG9uQ2xpY2s9e29wZW5DbGFzc2VzKHtjbGFzc05hbWU6IFwiaHAzIGFjdC12ZXJzaW9uXCIsIGNsYXNzdG9IaWRlOiBcImhwM1wifSl9PlxyXG4gICAgICAgIDxwYXRoXHJcbiAgICAgICAgICBpZD1cImFudGljaXBhdGUtYWN0XCJcclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIGZpbGw6IFwiIzg1MGU3OFwiLFxyXG4gICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcclxuICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAgIGQ9XCJtIDcwOC43LDk2Ny40MyBjIC03MS43MywwIC0xMzYuNzEsLTI4LjkgLTE4My45NCwtNzUuNjkgbCA1MS43OCwtNi40OCA2LjE5LC00OS41OCBjIDMyLjU3LDMxLjY0IDc3LDUxLjEzIDEyNS45Nyw1MS4xMyA0MC4xNiwwIDc3LjI1LC0xMy4xIDEwNy4yNSwtMzUuMjUgbCA1Mi4xLDYuNTEgNi4yNyw1MC4yMSBjIC00NS4wOSwzNi45NiAtMTAyLjc2LDU5LjE1IC0xNjUuNjIsNTkuMTUgelwiXHJcbiAgICAgICAgLz4gPC9hPlxyXG4gICAgICAgIDxhIG9uQ2xpY2s9e29wZW5DbGFzc2VzKHtjbGFzc05hbWU6IFwiaHAzIGVuZ2FnZS12ZXJzaW9uXCIsIGNsYXNzdG9IaWRlOiBcImhwM1wifSl9PlxyXG4gICAgICAgIDxwYXRoXHJcbiAgICAgICAgICBpZD1cImFudGljaXBhdGUtZW5nYWdlXCJcclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIGZpbGw6IFwiI2NlOWZjOVwiLFxyXG4gICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcclxuICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAgIGQ9XCJtIDUwNi40MSw4NzEuNjcgYyAtMzYuOTcsLTQ1LjEgLTU5LjE2LC0xMDIuNzkgLTU5LjE2LC0xNjUuNjYgMCwtNzEuNzYgMjguOSwtMTM2Ljc2IDc1LjcsLTE4NCBsIDYuNDYsNTEuNzkgNDkuNTksNi4yIGMgLTMxLjY0LDMyLjU3IC01MS4xMyw3Ny4wMSAtNTEuMTMsMTI2LjAxIDAsNDAuMTYgMTMuMSw3Ny4yNiAzNS4yNSwxMDcuMjggbCAtNi41MSw1Mi4xMSB6XCJcclxuICAgICAgICAvPiA8L2E+XHJcbiAgICAgICAgPGEgb25DbGljaz17b3BlbkNsYXNzZXMoe2NsYXNzTmFtZTogXCJocDMgcmVmbGVjdC12ZXJzaW9uXCIsIGNsYXNzdG9IaWRlOiBcImhwM1wifSl9PlxyXG4gICAgICAgIDxwYXRoXHJcbiAgICAgICAgICBpZD1cInBhdGg2MC0zXCJcclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIGZpbGw6IFwiI2EwYTdmM1wiLFxyXG4gICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcclxuICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAgIGQ9XCJtIDgzNC42OCw1NzYuMjMgYyAtMzIuNTcsLTMxLjYzIC03Ny4wMSwtNTEuMTIgLTEyNi4wMSwtNTEuMTIgLTQwLjE2LDAgLTc3LjI2LDEzLjEgLTEwNy4yNywzNS4yNCBsIC01Mi4xMiwtNi41IC02LjI3LC01MC4yIGMgNDUuMSwtMzYuOTggMTAyLjc4LC01OS4xNyAxNjUuNjYsLTU5LjE3IDcxLjc2LDAgMTM2Ljc1LDI4LjkxIDE4NC4wMSw3NS43IGwgLTUxLjgxLDYuNDggelwiXHJcbiAgICAgICAgLz4gPC9hPlxyXG4gICAgICAgIDxwYXRoXHJcbiAgICAgICAgICBpZD1cInBhdGg2NC00NFwiXHJcbiAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxyXG4gICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcclxuICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAgIGQ9XCJtIDY4Ni4xNyw5MjYuNiAtMS4zMywtNy43OSA1LjM3LDAuOTggeiBtIC0yLjksNC4yMiA0LjIxLDAuNzcgMTEuNDgsLTE4LjI1IC00LjMzLC0wLjc5IC0yLjUzLDQuMTYgLTcuODcsLTEuNDQgLTAuODEsLTQuNzcgLTQuMjIsLTAuNzcgelwiXHJcbiAgICAgICAgLz5cclxuICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgaWQ9XCJwYXRoNjYtNFwiXHJcbiAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxyXG4gICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcclxuICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAgIGQ9XCJtIDcxNi43OSw5MzQuMTggYyAyLjQ1LC0wLjAyIDQuNDMsLTAuNzcgNS45NCwtMi4yMyAwLjksLTAuODcgMS41NywtMi4xIDIuMDEsLTMuNzEgbCAtNC4wMSwtMC45MSBjIC0wLjIzLDEuMDQgLTAuNzEsMS44NiAtMS40NiwyLjQ3IC0wLjc0LDAuNjEgLTEuNjUsMC45MiAtMi43MiwwLjkzIC0xLjQ5LDAuMDIgLTIuNywtMC41IC0zLjYzLC0xLjU2IC0wLjk0LC0xLjA2IC0xLjQyLC0yLjc3IC0xLjQ0LC01LjE2IC0wLjAzLC0yLjUzIDAuNDEsLTQuMzQgMS4zMSwtNS40MiAwLjksLTEuMDggMi4wNywtMS42MyAzLjUzLC0xLjY1IDEuMDcsLTAuMDEgMiwwLjMyIDIuNzgsMSAwLjc4LDAuNjcgMS4zNSwxLjc0IDEuNywzLjIgbCAzLjkxLC0xLjI4IGMgLTAuNjMsLTIuMTggLTEuNjQsLTMuNzkgLTMuMDUsLTQuODQgLTEuNDEsLTEuMDQgLTMuMTksLTEuNTUgLTUuMzQsLTEuNTMgLTIuNjUsMC4wMyAtNC44MywwLjk2IC02LjUyLDIuNzkgLTEuNjksMS44MyAtMi41Miw0LjMyIC0yLjQ5LDcuNDcgMC4wNCwzLjMzIDAuOTIsNS45MSAyLjY2LDcuNzQgMS43NCwxLjgyIDQuMDEsMi43MiA2LjgyLDIuNjkgelwiXHJcbiAgICAgICAgLz5cclxuICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgaWQ9XCJwYXRoNjgtNFwiXHJcbiAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxyXG4gICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcclxuICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAgIGQ9XCJtIDczNy4zOSw5MzIuNDIgMTUuNjIsLTMuMDEgLTAuNjQsLTMuMzMgLTUuODIsMS4xMyAtMy4xNSwtMTYuMzMgLTMuOTcsMC43NyAzLjE1LDE2LjMyIC01LjgzLDEuMTMgelwiXHJcbiAgICAgICAgLz5cclxuICAgICAgICA8ZyBpZD1cImc3MC03XCI+XHJcbiAgICAgICAgICA8ZyBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGg3Ni0xKVwiIGlkPVwiZzcyLTYzXCI+XHJcbiAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgaWQ9XCJwYXRoNzgtMTdcIlxyXG4gICAgICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxyXG4gICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXHJcbiAgICAgICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxyXG4gICAgICAgICAgICAgIH19XHJcbiAgICAgICAgICAgICAgZD1cIm0gNDk0LjM4LDYyNS4zNyAtMy45NywxNC4zIDMuMjYsMC45MSAyLjg5LC0xMC40MSA0LjI3LDEuMTkgLTIuNjksOS42OCAzLjI1LDAuOSAyLjY5LC05LjY4IDUuMjUsMS40NiAtMi45OSwxMC43NyAzLjI1LDAuOTEgNC4wNywtMTQuNjcgelwiXHJcbiAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICA8L2c+XHJcbiAgICAgICAgPC9nPlxyXG4gICAgICAgIDxnIGlkPVwiZzgwLTVcIj5cclxuICAgICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDg2LTkpXCIgaWQ9XCJnODItOVwiPlxyXG4gICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgIGlkPVwicGF0aDg4LTZcIlxyXG4gICAgICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxyXG4gICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXHJcbiAgICAgICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxyXG4gICAgICAgICAgICAgIH19XHJcbiAgICAgICAgICAgICAgZD1cIm0gNDg3LjUzLDY1Mi41IC0wLjY1LDMuODggMTEuODMsMTAuMjkgLTEzLjE4LC0yLjIxIC0wLjYzLDMuNyAxOS43NCwzLjMxIDAuNjcsLTQgLTExLjU0LC0xMC4xMSAxMi44OCwyLjE1IDAuNjIsLTMuNyB6XCJcclxuICAgICAgICAgICAgLz5cclxuICAgICAgICAgIDwvZz5cclxuICAgICAgICA8L2c+XHJcbiAgICAgICAgPGcgaWQ9XCJnOTAtMjFcIj5cclxuICAgICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDk2LTkpXCIgaWQ9XCJnOTItN1wiPlxyXG4gICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgIGlkPVwicGF0aDk4LThcIlxyXG4gICAgICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxyXG4gICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXHJcbiAgICAgICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxyXG4gICAgICAgICAgICAgIH19XHJcbiAgICAgICAgICAgICAgZD1cIm0gNDgyLjQ4LDY5MC45MiBjIC0wLjE0LDIuNDggMC4yNyw0LjQ1IDEuMjMsNS45IDAuOTYsMS40NSAyLjM1LDIuNDMgNC4xNiwyLjkzIGwgMC45OCwtMy45NiBjIC0wLjk3LC0wLjM0IC0xLjcxLC0wLjkxIC0yLjI0LC0xLjcyIC0wLjUyLC0wLjgxIC0wLjc1LC0xLjc5IC0wLjY5LC0yLjk2IDAuMSwtMS43NiAwLjc0LC0zLjEzIDEuOTIsLTQuMTEgMS4xNywtMC45OCAyLjg2LC0xLjQgNS4wNiwtMS4yOCAyLjM3LDAuMTMgNC4xMiwwLjc2IDUuMjUsMS44OCAxLjEyLDEuMTIgMS42NCwyLjU0IDEuNTQsNC4yNSAtMC4wNCwwLjg0IC0wLjI2LDEuNjggLTAuNjQsMi41MSAtMC4zOCwwLjgzIC0wLjgyLDEuNTQgLTEuMzMsMi4xMiBsIC0yLjUzLC0wLjE0IDAuMjYsLTQuNjIgLTMuMzcsLTAuMTkgLTAuNDksOC42OSA3Ljk2LDAuNDUgYyAwLjg3LC0wLjggMS42NiwtMS45OCAyLjM3LC0zLjU1IDAuNzEsLTEuNTcgMS4xMiwtMy4xOCAxLjIxLC00LjgyIDAuMTIsLTIuMDkgLTAuMjIsLTMuOTQgLTEuMDEsLTUuNTQgLTAuNzksLTEuNjEgLTEuOTgsLTIuODQgLTMuNTcsLTMuNzIgLTEuNTgsLTAuODcgLTMuMzMsLTEuMzYgLTUuMjUsLTEuNDcgLTIuMDgsLTAuMTIgLTMuOTYsMC4yMiAtNS42MiwxIC0xLjY3LDAuNzggLTIuOTgsMS45OSAtMy45NCwzLjYyIC0wLjc0LDEuMjQgLTEuMTYsMi44MiAtMS4yNiw0LjczIHpcIlxyXG4gICAgICAgICAgICAvPlxyXG4gICAgICAgICAgPC9nPlxyXG4gICAgICAgIDwvZz5cclxuICAgICAgICA8ZyBpZD1cImcxMDAtNVwiPlxyXG4gICAgICAgICAgPGcgY2xpcFBhdGg9XCJ1cmwoI2NsaXBQYXRoMTA2LTkpXCIgaWQ9XCJnMTAyLTdcIj5cclxuICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICBpZD1cInBhdGgxMDgtNFwiXHJcbiAgICAgICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXHJcbiAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcclxuICAgICAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXHJcbiAgICAgICAgICAgICAgfX1cclxuICAgICAgICAgICAgICBkPVwibSA0ODcuNDMsNzIwLjU2IDcuMjgsLTMuMDkgMC4yOSw1LjQ1IHogbSAtNC43NywtMS44NCAwLjIzLDQuMjcgMjAuNDEsNi45NSAtMC4yNCwtNC4zOSAtNC42MywtMS41MSAtMC40MiwtNy45OSA0LjQ1LC0xLjg5IC0wLjIzLC00LjI4IHpcIlxyXG4gICAgICAgICAgICAvPlxyXG4gICAgICAgICAgPC9nPlxyXG4gICAgICAgIDwvZz5cclxuICAgICAgICA8ZyBpZD1cImcxMTAtMVwiPlxyXG4gICAgICAgICAgPGcgY2xpcFBhdGg9XCJ1cmwoI2NsaXBQYXRoMTE2LTcpXCIgaWQ9XCJnMTEyLThcIj5cclxuICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICBpZD1cInBhdGgxMTgtNVwiXHJcbiAgICAgICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXHJcbiAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcclxuICAgICAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXHJcbiAgICAgICAgICAgICAgfX1cclxuICAgICAgICAgICAgICBkPVwibSA0ODUuNzYsNzUxLjYxIGMgMC40LDIuNDUgMS4yMyw0LjI4IDIuNDgsNS40OSAxLjI2LDEuMjEgMi44MywxLjg3IDQuNzEsMS45NyBsIDAuMDksLTQuMDkgYyAtMS4wMiwtMC4xMiAtMS44NywtMC41MSAtMi41NiwtMS4xOSAtMC42OSwtMC42OCAtMS4xMiwtMS41OSAtMS4zMSwtMi43NCAtMC4yOSwtMS43NCAwLjA0LC0zLjIyIDAuOTcsLTQuNDMgMC45NCwtMS4yMSAyLjQ5LC0xLjk5IDQuNjcsLTIuMzUgMi4zNCwtMC4zOCA0LjE4LC0wLjE1IDUuNTMsMC43IDEuMzQsMC44NSAyLjE1LDIuMTIgMi40MywzLjgxIDAuMTMsMC44MyAwLjExLDEuNyAtMC4wOCwyLjU5IC0wLjE5LDAuODkgLTAuNDcsMS42OCAtMC44NCwyLjM2IGwgLTIuNTEsMC40MSAtMC43NCwtNC41NyAtMy4zMywwLjU1IDEuNDEsOC42IDcuODcsLTEuMyBjIDAuNjcsLTAuOTYgMS4xOCwtMi4yOSAxLjU0LC0zLjk4IDAuMzUsLTEuNjggMC4zOSwtMy4zNCAwLjEzLC00Ljk3IC0wLjM0LC0yLjA2IC0xLjA3LC0zLjc5IC0yLjE5LC01LjE4IC0xLjEyLC0xLjQgLTIuNTUsLTIuMzUgLTQuMjksLTIuODYgLTEuNzMsLTAuNSAtMy41NSwtMC42IC01LjQ1LC0wLjI5IC0yLjA1LDAuMzQgLTMuODEsMS4wNyAtNS4yNywyLjE5IC0xLjQ1LDEuMTMgLTIuNDcsMi41OSAtMy4wNSw0LjM5IC0wLjQ1LDEuMzggLTAuNTIsMy4wMSAtMC4yMSw0Ljg5IHpcIlxyXG4gICAgICAgICAgICAvPlxyXG4gICAgICAgICAgPC9nPlxyXG4gICAgICAgIDwvZz5cclxuICAgICAgICA8ZyBpZD1cImcxMjAtOVwiPlxyXG4gICAgICAgICAgPGcgY2xpcFBhdGg9XCJ1cmwoI2NsaXBQYXRoMTI2LTEpXCIgaWQ9XCJnMTIyLTdcIj5cclxuICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICBpZD1cInBhdGgxMjgtNVwiXHJcbiAgICAgICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXHJcbiAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcclxuICAgICAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXHJcbiAgICAgICAgICAgICAgfX1cclxuICAgICAgICAgICAgICBkPVwibSA0OTAuNDIsNzcyLjk5IDMuOTcsMTQuMyAzLjI2LC0wLjkgLTIuODksLTEwLjQxIDQuMjgsLTEuMTkgMi42OSw5LjY5IDMuMjQsLTAuOTEgLTIuNjgsLTkuNjggNS4yNSwtMS40NSAyLjk5LDEwLjc3IDMuMjUsLTAuOSAtNC4wNywtMTQuNjcgelwiXHJcbiAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICA8L2c+XHJcbiAgICAgICAgPC9nPlxyXG4gICAgICAgIDxnIGlkPVwiZzEzMC0zOFwiPlxyXG4gICAgICAgICAgPGcgY2xpcFBhdGg9XCJ1cmwoI2NsaXBQYXRoMTM2LTUpXCIgaWQ9XCJnMTMyLThcIj5cclxuICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICBpZD1cInBhdGgxMzgtM1wiXHJcbiAgICAgICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXHJcbiAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcclxuICAgICAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXHJcbiAgICAgICAgICAgICAgfX1cclxuICAgICAgICAgICAgICBkPVwibSA5MTIuNzcsODEwLjIgLTcuODksLTAuNSAyLjE5LC01IHogbSAzLjQ0LDMuNzkgMS43MSwtMy45MiAtMTUuMTIsLTE1LjM2IC0xLjc2LDQuMDIgMy40NiwzLjQzIC0zLjIsNy4zMiAtNC44MywtMC4zIC0xLjcyLDMuOTIgelwiXHJcbiAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICA8L2c+XHJcbiAgICAgICAgPC9nPlxyXG4gICAgICAgIDxnIGlkPVwiZzE0MC0xXCI+XHJcbiAgICAgICAgICA8ZyBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGgxNDYtNylcIiBpZD1cImcxNDItOFwiPlxyXG4gICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgIGlkPVwicGF0aDE0OC05XCJcclxuICAgICAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcclxuICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcclxuICAgICAgICAgICAgICB9fVxyXG4gICAgICAgICAgICAgIGQ9XCJtIDkyNC45MSw3OTIuMzggMS4xNywtMy43NSAtMTAuMzEsLTExLjgxIDEyLjc2LDMuOTkgMS4xMiwtMy41OCAtMTkuMTEsLTUuOTcgLTEuMjEsMy44NyAxMC4wNSwxMS41OSAtMTIuNDUsLTMuODkgLTEuMTIsMy41OCB6XCJcclxuICAgICAgICAgICAgLz5cclxuICAgICAgICAgIDwvZz5cclxuICAgICAgICA8L2c+XHJcbiAgICAgICAgPGcgaWQ9XCJnMTUwLTZcIj5cclxuICAgICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDE1Ni0zKVwiIGlkPVwiZzE1Mi00XCI+XHJcbiAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgaWQ9XCJwYXRoMTU4LTNcIlxyXG4gICAgICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxyXG4gICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXHJcbiAgICAgICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxyXG4gICAgICAgICAgICAgIH19XHJcbiAgICAgICAgICAgICAgZD1cIm0gOTMyLjU3LDc2NS44OCAzLjE1LC0xNS41OSAtMy4zMiwtMC42NyAtMS4xNyw1LjgxIC0xNi4zLC0zLjI5IC0wLjgsMy45NiAxNi4zLDMuMjkgLTEuMTgsNS44MiB6XCJcclxuICAgICAgICAgICAgLz5cclxuICAgICAgICAgIDwvZz5cclxuICAgICAgICA8L2c+XHJcbiAgICAgICAgPGcgaWQ9XCJnMTYwLTNcIj5cclxuICAgICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDE2Ni02KVwiIGlkPVwiZzE2Mi0zOFwiPlxyXG4gICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgIGlkPVwicGF0aDE2OC02XCJcclxuICAgICAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcclxuICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcclxuICAgICAgICAgICAgICB9fVxyXG4gICAgICAgICAgICAgIGQ9XCJtIDkzNy4yNiw3MzkuMjcgMC40OCwtNC4wMSAtMTkuODcsLTIuMzkgLTAuNDgsNC4wMSB6XCJcclxuICAgICAgICAgICAgLz5cclxuICAgICAgICAgIDwvZz5cclxuICAgICAgICA8L2c+XHJcbiAgICAgICAgPGcgaWQ9XCJnMTcwLTBcIj5cclxuICAgICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDE3Ni05KVwiIGlkPVwiZzE3Mi00XCI+XHJcbiAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgaWQ9XCJwYXRoMTc4LThcIlxyXG4gICAgICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxyXG4gICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXHJcbiAgICAgICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxyXG4gICAgICAgICAgICAgIH19XHJcbiAgICAgICAgICAgICAgZD1cIm0gOTM5LjU4LDcxNC4yOSBjIDAuMDgsLTIuNDQgLTAuNTcsLTQuNDYgLTEuOTcsLTYuMDMgLTAuODIsLTAuOTQgLTIuMDMsLTEuNjYgLTMuNjIsLTIuMTcgbCAtMS4wOCwzLjk3IGMgMS4wMywwLjI3IDEuODMsMC43OSAyLjQsMS41NiAwLjU4LDAuNzcgMC44NSwxLjY5IDAuODEsMi43NiAtMC4wNSwxLjQ5IC0wLjYyLDIuNjcgLTEuNzEsMy41NiAtMS4xLDAuODkgLTIuODQsMS4yOSAtNS4yMiwxLjIxIC0yLjUzLC0wLjA4IC00LjMyLC0wLjYgLTUuMzYsLTEuNTQgLTEuMDQsLTAuOTUgLTEuNTQsLTIuMTUgLTEuNDksLTMuNiAwLjAzLC0xLjA4IDAuNDEsLTEuOTkgMS4xMSwtMi43NCAwLjcxLC0wLjc1IDEuOCwtMS4yNyAzLjI4LC0xLjU2IGwgLTEuMTEsLTMuOTUgYyAtMi4yMSwwLjUyIC0zLjg2LDEuNDcgLTQuOTcsMi44MyAtMS4xLDEuMzYgLTEuNjksMy4xMSAtMS43Niw1LjI2IC0wLjA5LDIuNjYgMC43NCw0Ljg3IDIuNSw2LjY0IDEuNzYsMS43NyA0LjIxLDIuNzEgNy4zNiwyLjgxIDMuMzMsMC4xMSA1Ljk0LC0wLjY2IDcuODQsLTIuMzIgMS45LC0xLjY1IDIuOSwtMy44OCAyLjk5LC02LjY5IHpcIlxyXG4gICAgICAgICAgICAvPlxyXG4gICAgICAgICAgPC9nPlxyXG4gICAgICAgIDwvZz5cclxuICAgICAgICA8ZyBpZD1cImcxODAtODhcIj5cclxuICAgICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDE4Ni04KVwiIGlkPVwiZzE4Mi05XCI+XHJcbiAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgaWQ9XCJwYXRoMTg4LTdcIlxyXG4gICAgICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxyXG4gICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXHJcbiAgICAgICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxyXG4gICAgICAgICAgICAgIH19XHJcbiAgICAgICAgICAgICAgZD1cIm0gOTM5LjEsNjk0LjI3IC0wLjIyLC00LjAzIC0xOS45OCwxLjA5IDAuMjEsNC4wMyB6XCJcclxuICAgICAgICAgICAgLz5cclxuICAgICAgICAgIDwvZz5cclxuICAgICAgICA8L2c+XHJcbiAgICAgICAgPGcgaWQ9XCJnMTkwLTdcIj5cclxuICAgICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDE5Ni0yOSlcIiBpZD1cImcxOTItNlwiPlxyXG4gICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgIGlkPVwicGF0aDE5OC00M1wiXHJcbiAgICAgICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXHJcbiAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcclxuICAgICAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXHJcbiAgICAgICAgICAgICAgfX1cclxuICAgICAgICAgICAgICBkPVwibSA5MzMuOTgsNjc0LjI1IC01LjYyLDAuNzkgLTAuMzEsLTIuMTkgYyAtMC4yMiwtMS41OCAtMC4yNiwtMi42NSAtMC4xMywtMy4yMSAwLjEzLC0wLjU2IDAuNCwtMS4wMiAwLjgsLTEuMzggMC40LC0wLjM3IDAuODksLTAuNTkgMS40OCwtMC42NyAwLjcyLC0wLjEgMS4zNCwwLjAyIDEuODcsMC4zOCAwLjUzLDAuMzYgMC45LDAuODYgMS4xMSwxLjQ5IDAuMTUsMC40NiAwLjMzLDEuNDIgMC41MywyLjg2IHogbSAzLjkyLDMuNTMgLTAuOSwtNi40MiBjIC0wLjM0LC0yLjQzIC0wLjY2LC00IC0wLjk2LC00LjcxIC0wLjQ2LC0xLjEgLTEuMjQsLTEuOTYgLTIuMzQsLTIuNTkgLTEuMTEsLTAuNjIgLTIuNDUsLTAuODMgLTQuMDMsLTAuNiAtMS4yMSwwLjE3IC0yLjIsMC41MyAtMi45NywxLjA5IC0wLjc3LDAuNTYgLTEuMzQsMS4yMSAtMS43MiwxLjk1IC0wLjM4LDAuNzUgLTAuNTksMS40OSAtMC42NSwyLjIxIC0wLjA1LDAuOTggMC4wNCwyLjM4IDAuMyw0LjE5IGwgMC4zNiwyLjYxIC03LjQ3LDEuMDUgMC41Niw0IHpcIlxyXG4gICAgICAgICAgICAvPlxyXG4gICAgICAgICAgPC9nPlxyXG4gICAgICAgIDwvZz5cclxuICAgICAgICA8ZyBpZD1cImcyMDAtMFwiPlxyXG4gICAgICAgICAgPGcgY2xpcFBhdGg9XCJ1cmwoI2NsaXBQYXRoMjA2LTkpXCIgaWQ9XCJnMjAyLTNcIj5cclxuICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICBpZD1cInBhdGgyMDgtMDlcIlxyXG4gICAgICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxyXG4gICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXHJcbiAgICAgICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxyXG4gICAgICAgICAgICAgIH19XHJcbiAgICAgICAgICAgICAgZD1cIm0gOTI3LjAxLDY0NC4zNyAtNi41Myw0LjQ1IC0xLjM1LC01LjI5IHogbSA1LjA0LDAuODggLTEuMDUsLTQuMTUgLTIxLjM4LC0yLjgzIDEuMDksNC4yNiA0LjgzLDAuNTcgMS45Nyw3Ljc2IC00LDIuNzIgMS4wNiw0LjE1IHpcIlxyXG4gICAgICAgICAgICAvPlxyXG4gICAgICAgICAgPC9nPlxyXG4gICAgICAgIDwvZz5cclxuICAgICAgICA8ZyBpZD1cImcyMTAtMlwiPlxyXG4gICAgICAgICAgPGcgY2xpcFBhdGg9XCJ1cmwoI2NsaXBQYXRoMjE2LTgpXCIgaWQ9XCJnMjEyLTVcIj5cclxuICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICBpZD1cInBhdGgyMTgtNFwiXHJcbiAgICAgICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXHJcbiAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcclxuICAgICAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXHJcbiAgICAgICAgICAgICAgfX1cclxuICAgICAgICAgICAgICBkPVwibSA5MjYuMDcsNjI0LjE5IC01LjUyLC0xNC45MiAtMy4xOCwxLjE4IDIuMDYsNS41NiAtMTUuNTksNS43NyAxLjQsMy43OSAxNS41OSwtNS43NyAyLjA2LDUuNTcgelwiXHJcbiAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICA8L2c+XHJcbiAgICAgICAgPC9nPlxyXG4gICAgICAgIDxnIGlkPVwiZzIyMC0wXCI+XHJcbiAgICAgICAgICA8ZyBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGgyMjYtNSlcIiBpZD1cImcyMjItNVwiPlxyXG4gICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgIGlkPVwicGF0aDIyOC05XCJcclxuICAgICAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcclxuICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcclxuICAgICAgICAgICAgICB9fVxyXG4gICAgICAgICAgICAgIGQ9XCJtIDkxNi4wNiw1OTguODggLTYuNTMsLTEzLjMzIC0zLjA0LDEuNDkgNC43NSw5LjcgLTMuOTgsMS45NSAtNC40MiwtOS4wMyAtMy4wMywxLjQ5IDQuNDIsOS4wMiAtNC45LDIuNCAtNC45MSwtMTAuMDUgLTMuMDMsMS40OSA2LjY5LDEzLjY3IHpcIlxyXG4gICAgICAgICAgICAvPlxyXG4gICAgICAgICAgPC9nPlxyXG4gICAgICAgIHsvKiAgIDxnIGlkPVwiZzc0NC0wXCIgdHJhbnNmb3JtPVwicm90YXRlKDE4MClcIiA+XHJcbiAgICAgICAgICA8ZyBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGg3NTApXCIgaWQ9XCJnNzQ2XCI+XHJcbiAgICAgICAgICAgIDxnIHRyYW5zZm9ybT1cIm1hdHJpeCgyNDguNjQsMCwwLDIxNC41Niw1OTIuNTYsNjA4LjA0KVwiIGlkPVwiZzc1MlwiPlxyXG4gICAgICAgICAgICAgIDxpbWFnZVxyXG4gICAgICAgICAgICAgICAgaWQ9XCJpbWFnZTc1OFwiXHJcbiAgICAgICAgICAgICAgICBtYXNrPVwidXJsKCNtYXNrNzU0KVwiXHJcbiAgICAgICAgICAgICAgICB4bGlua0hyZWY9XCJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQXJJQUFBSlVDQVlBQUFEcFpNVWZBQUFBQkhOQ1NWUUlDQWdJZkFoa2lBQUFJQUJKUkVGVWVKenMzVm1RTE5kOTUvZnZPU2N6YStudTIzY0hMdmFOSkFnUUlFQVNBRW1Bd25DVHFDRWxjYlJOYUt3WmV5THNONy80eVM5K2NJUWZ4dlBnQ01jNFloeXlyQmc1cE5EWTBnUkZDdUlHaWlDeDd5QUlFTHpFUnV6QUJlN2UzYlhrY3M3ZkQ1bFpsVlZkM1gwWEFQZld2ZjhQSXBIZGxiVmtWZGV0K3RXL1R2NlBBUVNsbEZKS0thWG1qRDNUTzZDVVVrb3BwZFNwMENDcmxGSktLYVhta2daWnBaUlNTaWsxbHpUSUtxV1VVa3FwdWFSQlZpbWxsRkpLelNVTnNrb3BwWlJTYWk1cGtGVktLYVdVVW5OSmc2eFNTaW1sbEpwTEdtU1ZVa29wcGRSYzBpQ3JsRkpLS2FYbWtnWlpwWlJTU2lrMWx6VElLcVdVVWtxcHVhUkJWaW1sbEZKS3pTVU5za29wcFpSU2FpNXBrRlZLS2FXVVVuTkpnNnhTU2ltbGxKcExHbVNWVWtvcHBkUmMwaUNybEZKS0thWG1rZ1pacFpSU1NpazFselRJS3FXVVVrcXB1YVJCVmltbGxGSkt6U1VOc2tvcHBaUlNhaTVwa0ZWS0thV1VVbk5KZzZ4U1NpbWxsSnBMR21TVlVrb3BwZFJjMGlDcmxGSktLYVhta2daWnBaUlNTaWsxbHpUSUtxV1VVa3FwdWFSQlZpbWxsRkpLelNVTnNrb3BwWlJTYWk1cGtGVktLYVdVVW5OSmc2eFNTaW1sbEpwTEdtU1ZVa29wcGRSYzBpQ3JsRkpLS2FYbWtnWlpwWlJTU2lrMWx6VElLcVdVVWtxcHVhUkJWaW1sbEZKS3pTVU5za29wcFpSU2FpNXBrRlZLS2FXVVVuTkpnNnhTU2ltbGxKcExHbVNWVWtvcHBkUmMwaUNybEZKS0thWG1rZ1pacFpSU1NpazFselRJS3FXVVVrcXB1YVJCVmltbGxGSkt6U1VOc2tvcHBaUlNhaTVGWjNvSGxEb2RadFBQWW1IR2FiWTZYZGZ2eDFwTzYvSmpCcEFQZlQzcithR1VVbXFlYUpCVmM4dGdpVTJDRjZFT3JXVkFFUUM2N1M3OVlYL3FVbGJYNytNNm5QYjFtTkZ2cHhhSFpkUHRFWlpnd0dFSUJxelFXQWU4NUdCQUF1T1VPNE56cnJ5L0lTQWlHT053emhGQ0lJVEpRR3lNd1Jnek92L0dORWdycGRUcDJ1U2xXNm16V3hsa1kwU2tDaFVGUVFKbHBWQncxakVPQ3pxSzVvUGdSUkFEUnBpNXRwZ050NWNzWUtjQzVvbXVBeWJJcHVkRHdpWkJOMkFzU0xVdk11T1YwTGs2a0lKTW5NRmlqQmtGM0luSHhPZFQ1MzAvYkJUVmxWTHEvS1pCVnMwMVU2L041QlBabU5uQlJMMS94R3g5bnMydllQempSa0g0aE5mTUhrSmd6ZXpUa2ZHNnlWcUx0WFpVVlMyS1lyU3RXVjIxMXVLY0k4L3owZS9HR0VSa2RoVjJvOGRxSXRCdlpxTWdxMkZXS1hWKzB5Q3I1bHJjc2hRK0lBR2lHSW9DcklWdU4yRnROY091TDVpcDk1SEk2UVhhcmVMYmlYNFkyYmdpdlA3MHdMZ2lIRWNkSkZoRVpCUkNSY0pvZUVvcFlJekIydkg1Sml1dTY4T2tpOEE1UzVadEVtcWxXalo5RkxaNmhEVE1LcVhPYnhwazFmd3lnSXZMdEJOQ1dZWUZFTUVsQ1Q0YmNxWVBoanFuMStaMHI0Y1RDSEtiYVFTNFV6bmlDd3ZFUVBQVFR2bHlhTEVZSTNqeGs3Y3pGUnFkclI4SEVQR2prR3RzK1hTY0tNNU9CLzVOZyt4R2owbnpTdXF4NFJwa2xWTG5MdzJ5YW81RlFKdW91NDJpMzRjb3drVXQvSEJRbHNSOGdaWmtQMkFpRzM5dFhtL2YxQlloVmpZTGFYVXEzZVRhNDNoVVBSV1J5UUd4QXBGTnltcXRDUFYvNVJqcjhuWmo1OGg5ampBT3RNNDRvaWpDV3NNZzdZMU90Nlk4S0V3azRFT09pQzl2YTNvWFQ3b2l1NzdMdzVnR1dhWFUrVTJEckpwakhhNjc0Y3Q4ODV2L0N1OEY3ejN0ZHBlVmxSVTY3UVdLb2lDS3BocHptS2szZmRHRHdFNlZtT2tEb0dhY1o2c2dHMDd2OHRXaFdCdHV6L044SXNnMkYwdWczenVPenpLR3d5RzkvaXE5WG85ZWI1WEJvRWRSRkx6OXpsdmtlVTZlcHhRaHF3SnVmWHVCZGh5VDVVTkNkYnJGNHB3bGhLTHNpRUJnWGVWMHVxaTZxUk1Kc2tvcGRmN1M5bHRxamptS29zdEhQdlpaRnJwTHJLNzJXRnhjb3Q4YjB1bDBTTk44NnFqeU9raFU2NGtRZXhaOFZUK0hheEdEbUlBUk8zTk4ySGg3ZVhuWnRCNjVlZnNxcWlDODhYbXNMYTk5T3NTS0NBYkJoQUdXb21xWEZhcTFZT3o0ZXIzUFNiTUJnMEdmMWRWVkRoODV5TUdEQjFsZFBjN3JyLzJhSTBjT2NmRGdRWHJaYW5rSkQrVkxhOFE0d0RiQzdLakt2TkcrenhyS29JRlZLYVZtMFNDcjVsaEVDQWx4dElNME5TVEpEdkxNNFZ5TEVCSU1IZ2xUMytzYW1mcTZ1aDZyZVRxSHpKL2ZhMEV3WWdnU3NHTHdsT3RnQklmZGNEdEdSZ2RmYldTclBxek5FRHd4aEdCMCtVMjJTMEZFZ3FXb3VoaUVjaTBlOGFINndDTVlXclNUTHExNE85dTN3U1VYZmFSNkxnV01CSXdWaXFKZ2JXMkZkOTg5d0d1dnY4THJyNy9La1NPSGVQR2xYK0ZEanBlY1FNRmtlQzJBbkNyNVRyRFcwbXExeUxKaEZiekRxSkk3VWFUZW9LSmJEbjJ3WkZtMnllT25sRkx6VDRPc21tdkJRREMyZW5PM0dHTUpHQUtPZ01Hc0c2QVltRHpxcDRwQ296NWV1ajZWZGRtejFVeXVnVkJQRExEQmRndVlUYVBzWm1OZzNXUVByYzBhd3M3Y0hvRTR5Z08rR0gvQUVWK0dXR2tPQjVEeTlIbzdnQW5rV2RrWkk0b1cyTFZqTzd0MlhNSzFIN3NaNzNOQ0tHaTFZOTU3N3dBdnYvd1NMLy82UmQ1ODgzVU9ISGliUThjT0VVaUJGTWlyY2JmbGM5R0huTUpuREFZWkU2Ty9CSXdGNXhySE5ZYkdjeGd3eGhCQ21HZ2JwcFJTNXpJTnNtcU9CVEE1WWdkbEN5aUpnQml4Z2hpRDJEQit4eCtkdi9sVmJ4VUNkSnpzS1p1TW1USzFadXJ4bjk0ZXBzKzlqa3lQYVo2NDdlbHRNMjUvcyswQ1FreVFxUHJWVjJ0Ym5TV00rM1JKR0IyOFZWZDByUVE2N1FWRXl0bTlDdStyamdXQ05TMmNnLzVhbjI1N0R6ZCtZamVmL3RRZEdHUG85OWM0ZE9nUXg0Ni94eU9QL1pTMzMzbVYxOTU0alRRdks3YU9Ob25yNEVOR3F4VlQrSXdzSHdBQkNRRS9jYmVGdXFKYlQ5Qmd6R2JoWHltbHppMGFaTlVjQzJBeXNDa0V5K2d3Y0dQQjVHVUltUTZ5U0NQTVVvWmZzLzZyWFhVcVRqYkl3cFpqUHpjSnN1c3ZmNUpCbG1qeXJLTVBOUFdKdGpFTXhUUzJoNnFxTE9TWng1aHlMS3lJUThSVDVMNmN1bFlLZHUzYVZ4NG81c3V2K0syRnhXNlg1TUpsZHUvYXg3VWYrd1RHZWxaWFYzaitoZjA4OGNSanZQRGlmbFlIUnpFNCtzTzh2RzNhZ01jZ1dBcytGTlJqZXBzQnUxbUpkYzdodlQ2M2xWTG5OZzJ5YW83VjFhZ0NURDBkYlhuUURxWSswS1lSVGtZQk5rd0ZKSzNJbmpLWjlVdnp4QzBxc2xzRjFjMjJDOVU0MWMxdWYrUDlNMUIrNkJtOURJNnJyK3ZaeG5haERybEZMamhuY1M3R3VYSldNRXlvSmxid0hEbTh5dmdnc25KL3kxbkJGbGpzTHRIdVJCdzdkaGhIekMyZitpcGYrZUkzV1YwN3hpLzNQOFB6TC95Q3h4OS9tR0hhb3o5WUlmZER5cXBzZ1NGQ3lISFdFRVJtemtTbWxGTG5BdzJ5Nmh4U2pyZ2NEeGVvQWdkUVZ0SHNPRmRKNHpJNnRPQjljckpCOW5STnQ2VTYyWXBzL1hPeHlmYnB5MDkydW1oM0ZzcXYrMzFPbm1lamc5UHEzQnE4cGQxcDAya3ZZQjBVUlVHV1pYanY4WVd3dXRLbjFkck85bTE3Q0NIajhNRStRU0krZXMzTmZPSzZUL05IZi9DbnZQalNmaDU3L0VHZWVmWm5IRGo0SmdGSGJCeEpXK2dOamxCWHBlTTRKb3FpVVpqZHN1T0RVa3FkQXpUSXFqbG1LQS80aVNHNDhtZVM4b2g2aWN0aEExSzEzNnFPUUVmQytxRUY2clRZVWFGeWZkZUE1bmpObWR1M2FPaHZ0Z3BqcDNPd1YxWFJsV3FHc3NtSkU5Wi91QmxQbGxDdWpaUUhaaEdxZGw3VkdGWG5ITmFXMWRsMlc4anpqR1BIanBObEtTRUVraVNoMCttVUlkaW40QjBlTUtaRjdGb0lHU0lwZWVyeFljaFZWMXpQZFIrL2tTQVpiNy96Qms4KytTZ1BQSGcvYnh4NGdVNTdnY0h3R0ZEMnpHMjJteXVISGJ4Zkh4cVVVdXJzcE8vaWFyNkpwYXlTdVNxVXV1bzBWNFhXNlF2WThYRmVvOHVxVTJVbmN0SXBWR1NiZndzVFRuaHRwZTVuU3pVVXdGYmRCQnJyNmI2M2plMm11cDVBM2NlMlBnQ3c3bUl4RmFDcllHdXFHR3VRY3Rpc0NMWUtzQ0NFSUJSRmp2ZUJFRHp0ZGdlQUpFbG90MXRZVzg3OFZSU2VsWlVWNHFpTEx3eDVWaUI0akFtNHlCRkZYYXp4NUxrbDdmZnByL1Z4a2JCOThTSytkT2MzK055dFgyU1lIdWUvL1AxZjh1WmJ2K2JBZSsrVWUrYkJVSTZmSllEQlRrN2lNUDN2b2VyMnNibnhZOUhzOXlHTmhncEtLWFdtYUpCVjgyMmlDNEZ0TE5VMkE1UGRDbXFOSVFmcWxNMnErRFdQN3dwaHM0T05RaG1HVE4yOXdBT0MxRUZUeXBteXhtMnh4dXV5aFcwNUZuWFVHOWdJSnNqazc5S2NqR0M4dHBRaFZzVGdxM1FuQWxiTVZKL1d5UTRMOWZHRFZzcVdZaUtDcHd6SVVnZGxLMFNtN0pFVlF0bkt5MkFKdmlCNFB6cGY1QUFaNGx6WlVxdWVGbGZFNC9OUVBhTWRpVjBBMXkycnZrVTVpY1JpdkkzRmVDLy93My8zdjNENHlEczg4K3pQZWVpaEIvalZHOC9oS01yeHMzaUVnbUJ5TUZrOUsyOFp3S3NRNnF6QiszcElEclNTVGpuc3dSZU54Mng4L3kzbC9iWXl1VlVwcGM0VURiSnF6bTBRUkp0SG1KdXFFWDFkMFd1V3BiWThLbDV0YnFzb2M0SUhjNWt3K3FwLzFQcUs5V3NqNDkrTk1HNlB0ZEY2cWdwc1JhcHNLcU13T25GQTRBYWFsZWY2Wnl2Z3EvMjNNclcvWm1vOWRUL3E4NHR0QkgwWjcydTlSNmIrMWtESzdWYWFIeDRDcTBmWDJMTjhOYi81eFd1NDlWTjM4c3JyTC9MY0w1L21zU2NmNHIyVk4waE1UQ3JsOHo1T3lyQ2NWME9DZCs1czBWc05PQnVYbFdSZmtHWUR3R0tBSkVySWlwVG1JelQ5V0NpbDFKbW1RVllwcGVhVU5URnBDcmJ3dEpJbFBuck5EVng2eWVWODhzYWJlUHU5Ti9qTC8veG5MQ1M3eVlzZVdkWWprSk1rRnU4TGpoNUt5NnF2OWNSeERLWnUzMlVSSUMzeTZpTmZxT1pRbXg1dThTSGZXYVdVbWtHRHJGSkt6U1ZMSzFuQWU4OXdtQ0lTU0RveHk5c3VaSEZ4bVVzdXVZSlAzWHdyMy8vQmQ3anZ3WHVRTktiZGlWZ2JyT0VwY0VZb1pJaElJTXRTUkNDS3dUbERsdm9aeDh3MXg1VFhBMlEzUDFoUEthVSthQnBrbFZKcUxsa01DVWxzU1pJdVVCRHdaTU9NWVJvWXBvSk5Zdjd0Zi8zZjgvdi80ays0Njd2ZjRVZi85SDBFaURFWVUyQWpnekFrenowWUtBb29Dbzl6RUVJMTJtRTAxS002bUhJVWFBT1FvMEZXS1hVbWFaQlZTcWs1SldMSWN5R0VncUxJRU91SklzdENkenZMMjNhUWhTR3Z2M1lRS1BqNjEvNkkyei83UlI1NjVFRWV1UDkrRHZiZUlBU0RWTDJYcllGUWpkMzFIbG90U0ZQR3hWY0M0eURyWnUrUVVrcDl5RFRJS3FYVW5DcW5vQzE3MXJaYUxieDRnaFFNK2ptWWdpaHk3Rnk2Z01JUHlZY1plM1pjeHU5Ky9WS3V1K1pUUFBuemgzajgyWHM0dHZJT2VSZ1NHUU5SUVpZTlI5WFp5WFpkb2VvY1VZeC9WMHFwTTB5RHJGSkt6U2xqQk84TFJIdzVFWU96R0J6R2xOMFo4cXdjNitwY205aEZEUHNGSVFRdXVmaEtMcnZzTWo3NjhhdTUvK0VmODdObkh5WDNPZFlickJHQ3BHVWJ0YnBwN09qbnZPclhQTjJOUVNtbHpnd05za3FwRXpKclppN2JLTm5OMnI2Vms1bEdWYXBHcUJQWGJ6ZmZQcjEvTXJWOXNtWHMrdTFtYW50elBYMzdHKzV6ZFVQTnk0OG5HWk4xNXhXUmNkT3dNUGxZVGo2MEFVOEFWKzVub01ENDhuUkRPYk9YcVFhNyt1REx5UnR3R0dPclNlNE1IN255WnE2NStqcHUvY1VYK01mdmY0dTNEdjBhSkdMYndqTDk0Y3FvejIwY080WkRYejBnQmFadTc2dWRDNVJTWjVnR1dhV1VtbHZGNUsvclpyS0Q4WUZaNDQxR2dCQVRtd2lremFkdnZJUExML3NJRHo3MFQvejRwOStuMXpzR0pHeGI2TExhTzhMUWU0eUJKSUdzcUVLc3p1eWxsRG9MYUpCVlNxbTVGTlpQNkRFVkxFMnpoTnVZRzhLS0pRRHRlSUgrc0VlZVpWeTQ0M0orLyt2L0ZkZDk3SHJ1L3RGZFBQUHlrL1I3S1pZT1FWS1FRSlpXczRLTmJtRDliU3FsMUlkSmc2eFNTczIxalpMayt2S3NGVHNhd21ERmN1VGdFWGJzMklIUVl1WFlNYm9MQ1RkOTR2TXNMV3pub3NjdTQvNEg3bVlnSzVSVjNaUWd4ZWhhWFF4Ri9rSGNINldVT25FYVpKVlNhcTdOSEU5QUdUN3IwRnFPdlRWaUd3TnRMZHNYRnpDK3dEakxVbnVSUEUwNU5sampnbDFYOE1lL2Z3VlhYSG9WOXovOEkvYS84alFCdzBMTGttWXJCS21HQjJzMVZpbDFobW1RVlVxcHVXUkJOam5hVE1aQnRsUUgzbkc0WGQ2MnlPSERoeGtPaHl4dVcyTGJ3amI2dzRRMDdUUDBnZHMrY3llN2R1MWg5ME43ZU96Sit4aWs1ZGhaWjNOOEpqcXlRQ2wxeG1tUVZVcXBPUlZNR1dSdFkvd3JWSkZWN0dpTXJCRWFnMXVsT24vZ3dEdHYwTzEyNk81WUlpOENhOGQ3WUEzT3RDbXlsQXk0OXBxYldGNWVwcnV3d0JOUDNjdXh0WU9FTUFBeXRQMldVdXBNMjZKNWpGSkt6V1lFd2tiZmFuK0krM0NpN0l6eldwbGNZTncyMWN5NG5KSHgwcno4cWJLTmRYT3BiMnQ2UDVuYXR2NzJxMHZQck5TdUQ1M2JkKzdBV2t1YVozanZpYUtJS0lwb1JUSGQ5Z0tXaUVQdkhtVjdkeS8vOHZmL0cvNzRYL3hiZG5RdkJaWllUaTdFenFxRm1CbkxCcHVWVXVwMGFVVldxZlBZVmtGd29tZnF1UGxwdVFKRS9QcDRaTlovUWpaVGZWUWJaNTJwRG1maTE0ZXY1aGZrZGUvWTBYNUpZeitucjM5cS82bjJmNlBibnQ3WDZlczNNbmtFLzhUOVc5YzlZS0w1MWVqbjRNdmVyRExqOFRFQzFwanhiVTF0RjhBMHVoYVV0eXVJZUlUMWxkcnljbVUvMmZwZTk3T3lqNVkxRHF3aDRNZTlhMzNBR0dFaFdTUU1DM3d3M0hMZGw5aTNmQlYzMy8wREhubmhKeGhpbGhZVFZ0ZjZBSFFXMmd5R1F3aGc0NWlRMTBlRDJlcWVsei9WUXhJQ1FZY21LS1ZPaTFaa2xWSWZ1dE90Wk1MSlZmUzJPdTlXVmRsbUZiWStmMzM2NlpwVmVXMWVmM1A3eEQ3TnZMYm1qRnVOeGN4ZUJJdGdDZGlKUzlUL0Z4RWtnSGlEenh4VzJseTQreXJ1dVBXMytKM2IvNGcyWGZwclF3eVdKR2t6NkpjaHRydTBSQWkrc2JNYmZ5QlJTcW5Ub1JWWnBaUlNNMWxyc2RiaWdhSW9TRk5Ja29TcnI3NmFQUmQzR2NZSCtQRUQvOGl3R09KOEJPSUJUNzgvQkI4bXA3ZHQxTzVGYXloS3FmZUp2cG9vcFpTYUtZU0FNUWJuSE5aYWlxSWd5ekpFaEZheXdKZS84TnY4OFRmL05UczZlOG05WVNIZVJydTFBTVdNVXJXcGh4T01GeDFXb0pRNlhScGtsVkpLelZRVUJVVlJJQ0k0NTRqakdHdHRHVzVOVE9LMmNlZG5mNHV2LytZZjBtR1pQUGZFdElsTVZJMG5ucnBDTXo1WlE2eFM2djJnUVZZcHBkUk1jUnhqakNHRVFBaWhIRE5iTFdDeHZzTndMZUwyVzcvTXYvbVQvNWJ0cmIya2FZNFZSeXZ1amhQcjlPRGVHV05tbFZMcVZHaVFWVW9wTlpOekRsTjFUaENSMGRDQ29pakFPenJKTXIyakdSMjN6Rzk4OWl0ODR6ZS95ZmJXYnNEZ2dzRlI5N0N0cm5BaTBBWTk0a3NwZGRyMFlDK2xsRkl6WlZrR2dMTVc1eHdpWldYV1luQXVvcmVTc21mSHBmU09IWVhWakM5OC9zc3NiZXZ5bmUvK0hXOGZleFZEakNYSE40TnN2ZGF4QlVxcDk0RUdXYVhPWXhOOVVqOEFJWlJmSVo5SW02cFpmVmpOUnR2cjB4cFhYRjl1WXZzV2w5L285a2Q1eTd4L0pjT0o2NThPZGh1b0g3K3RyblAwOC9UOW45RVRkL0x4cVh2clRtNnZUMjlXWTh0OUtZY1ZCQkdDOTNTU0JmQ1dickxNc0ZnbDd3MzQySlhYODlVN2UvendKM2R4WU9VTnlrNjFRcWVUMEIrVS9XYUpJOGlMemUrOFVrcWRBQjFhb0pSUzZwU0VJbEJrQmI0d0dPOXdwczMycGIzY2VOMm4rZnBYZjQrRVJYWXVYSUFqWnREUGFiVVd3VnJJQzF5U25PbmRWMHFkQXpUSUtxV1VPaVhHVkZYaklCZ1Q0Vk1vVXN1T2JSZHc0M1czOE9YUC8zTzZ5VTRzTFN3SjZUQXY1elUyQnA5blozcjNsVkxuQUIxYW9KUlM2dVNaQU5ZamhjZVltTVMxNkE4eitpczVOaEdRRHQvNDdUK2szeDl5L1BncWVlZ3hvRWNRSVduSHBNT2hqcE5WU3AwMkRiSktLYVZPZ1dDc3A1QVVpeEJIWGRySkFsbVI0Z1NNaVZoTUVyNzIxVzlTU09EaG45OUxUQXRQSUIya0dLTTVWaWwxK25Sb2dWSktxVk9TdEJ3dUNvUlE0RU5POE9CSWNMWkxSSWZENzYxeTRlNUx1ZlAycjNEdDVkY1RDQWdRV2NjSGZKeWhVdW84b1VGV0thWFVLUWlJOWVBQzFwVTladk04eDNzSUJSUzV4ZExoK0pFZWwxOXlEYi8xNWE5eDZaN0xBZWdrTFcwaHE1UjZYMmlRVldxZWlkMWtpVFpZN0hqTjZTMVdvcGxMZlZzbWxNdTZmYUJjckVTajZ4bGZuNjIyejFoUDdiOEpEc1JncW1YY2NYOXFrUTBXd0o1Q1pUQk1wYkM2blphUjhjOVd4a3R6MjRtMElwdGxWdkJyWHRmMDlaN0kvWnJlbi9vdnUvVmVsT3QrdjEvMmxiV1dLTExZeU9HaWlDaUtzTmJTN1M0U3VUYlpJT2ZxS3o3RzcveldOOW1lN0NZYmVuWXM3TVJnVDJGU2hPWnpVQ2wxdnRNeHNrck5LN0VZcWQvTTZ6UmdKN2JQWkVLNXpRUk04T096YjlGbjFWUzMwY3dkcG5FYnN5NXZ4VzE2RjBJSVlBd2l0dXhaS3JZTU4xZ2dJR0tBQUZoRURGS3R3V0lrWUd3WnhLek12djJ3eWZmWGhnSzhSeWltVG9mNmNXejJjUzM3dE5yUlYrS0dVTzF6S0M5VDk1K3R6ekRWMDlXRSt2VEdhYzArdFhYLzNPYjI1bjZGeWZ0WGh1bEd6OTBaMXorNmJQTjZKN2FQLy82emJyL2VnNG1MUS9rM01PVUhDbWNqaWdCRnlNRkZCRHk1OTRnTkRBWXBpMHR0anEvMWlJTGp4bzkraHE5ODdnRGZ1L2N1QnIwQkVOUHF4cVQ5TlZ4azhVWDVlQzhzSlBSNmphNEdvMTJxbnh2TkdSVjB1bHVsem1jYVpKV2FWeVpRaHp5Z0NxNTFNREhWOXVrd0d4cVhwVW80OWZuODFEcHNzUzZ2ejQ0Q2preXM2OTNZOUM0UXFvVGtxOHBndmYvMU9qUitsOG0xQVN2U21PcTB2dDJKYVJBMnZuR3BINytUWU1wSkFSQ0xHSENOeXpjZjZXWlZ0cmtuRTlPMXdnbFhJNjJzdnlkV3hwWGg2ZTBuV3VRMEovaFFUWmo0Z0ZRL0g1cTNHQ1lxMWxsV2tFUUp2aGdTck9OVE4zeU9ZNGZXdVArNWU3QVU1SGtHbENFMmFUbXl6TlByWlNRSlpKdDI2TkxCQ1VvcERiSkt6YkZxak9Jb1RKMUFOYmJKQkNTTWc2eUluMWh2RldTdFVCWEc2aUM5Y1VWd28vMHZ3K1FtSnFlbW1qcXRESlhqT0hPU1FiWXU2czA4UzcxZnM2NUxxZ3cxSGVEVVdQazhTWktFZm4rVjdrS0NkVUtXOWJuc3NpdjQvT2Urd1A1ZlA4ZWJnMVZDTnY1Z1pNUmk4QWlRSkMyeUxOM2tOdlJvTWFXVUJsbWw1cGdBeGJpNk91RUV4dytlYmtXMkRyT2pYNXJyRTduOXJhWXAzU0JJVHR6MmRPZzgwWXFzcmNiVmpvY3lqTmRiMGErenQyWkprcGpWdGVOSU1DU3REb1BCZ0xYVmxBdjJYc3cvLyszZjVTKys5Ui94ZUxZdExiS3llcFEwOVNSSlJKWVhEQWFORUZ0LzZEQ2grcE51UG1SRktYWCswTkh5U3MydEtvVE5PdEJyUzNaODJWTmVsOElwTHFON0lhZTJqR3g2d05zbUM0MFFPMzMvMWkxcUk1YkpBOXVhUzVFV0xMU1d3QnQ4SnJSY203VG5vWEI4K3BPM2N0dE5uOGNRay9ZTDJ2RWlCb3Q0VzM2Y21QNk1vOFZ2cGRRTVdwRlZhbTVaa0xqeCsraW9uODB2TmhGMDZ3TjhET0NtMXJMcE9oakIxVld5NXUyZmFFVlc2bjNaYkg4M3JzaGFvYXlvMWdldjRTZlhKcFQ3MnppNHJibTJnRFFQbHF2RGJmUHhxY2ZnbHVmZVpKL09UNlBoSlhWNWZQUzNLQi9EZnIvSDh2SXkvY0VLZzlVQnk4dmJTSktNd2FCSEpCRy8vWnUvdzh1dnZzaDd4OTRoQ2dhTG8vQWVaeDFlL01ZM2ZKNC83a3FwTVEyeVNzMHJzVUE4RGw1MW9Kd1lvenBqL0d5enRGVWY2WTZGZW16c2FCMjJYdGRIdWpkdjl5VEd5Sm9RTm0wVDFUenFmMlpYQldPd1llTXh2czJ1QjdQWFlZUFRtenV4MlJoZzJmcUR3M25NMm9paUtKRGdjTFlGT0p4dFk0MG5IUTY0ZU05bDNQbjVML0c5Ny8wREErblJNZ3VrMGlPRWdMTlFiQnBtbFZKS3Z6TlRhcjVWMVM5VGZWMWVmdVZ1cW5VWWQvMnNpN1ZWNzlUeDEvUGw1VzMxODhtc1Q2WC82dnA5UDNVR1J2dFRPdFUxak1QclJzRi8xbkorMjd3ZmJ0MUdhNEZlYjBBSWdZV0ZKZkxNczdyYXc1aUlkcnpJc1lOcjNIN0xuVnova1U5aWlESGlNRVRqRm1pemJzTk0vNjJVVXVjenJjZ3FOY2Y2dlJWMjc5NkZ6d3VHZVVvb2NuQVFXVU1VTzRvMFEwekFpSzNhUDlYcktvaU5xcHhRdHpTMXBncUpwdHd3MlFKL01zTDU0TmQ5R2o2WmlHZU5MMXR3YlVBYVhRM3EvV3UyWGkzN3VsYjNvZEgrcXo3TldsdGRqekM3UCs3NHlvd3hXRnRlbi9lZUVNcWo3b3VpS0t1S0lsZ2JZVXg5bm9KT3AwV2FEZkRlWTR3WlhkWVpTNnZWd3Z0OC9TMDI3b0FQMDlYZjZmcy8vdnZNcWtpUDd2TUcyOGZYczhIbHcrYWZSamF2aUpmUGpmSkRsS2xPbC9KdlZuMlF5bjJnbmJRQXlOT3lsMWJzRWhBb2hqbE9FdnhneUovODRaL3k5TDk3bW9LVUJiZkltajlXVmRhVlVtcHpHbVNWbWxPR2dpc3UzOFc3Qnc3Z25DR0p3TVJDbkJnR2d6NitDTGpZam83dmRsVUYxSTBPY3FxYjZHLzgxYnZZemIrYUZ5bEx1MFlNTW1NZGlqRHpkRk9OdFRWVnY5aTZKK3IwMmhtWmVmcW9kNjJZbVFHN05ncGZvUndHTVRGQmdiR0lsTUhVR0lNeGhoRE0rRDVaUTYvZko0b1M0aVRDNEFnaElCSnd6dEZxZFVpSEE0dzF0TnR0NGpqR2U4OWdNTURuQldtYUVwbHorRXV2MGZqbTZUQWNHbTNaTm1nTlp3SkdERGJFN055MW5UZmZmcFd2My80TnZ2dmdkMGg5RGtRVEgyTFcwNnFzVXFxa1FWYXBlV1Z5bm4vaENmNzgvL3JmeWZJaFJURkVDR3piMW1WMTdSaEpFazFWNTVvSE0xVkJkc014b2ljNnhoUmc0eUJMWU9NZ2E0VElsMEhhVk1lUm5jd2FvSndZckJvdVVZWFI1dSs3ZHUwaVNSSVdGeGZadm4wN08zYnNZTWVPSFN3dExkRnVMZEdLZHlMQlVuaWhLQXA4SVRnWDBXcTFhQ1Z0Z25pc3pURzI2aGtyVUJRNTJhQ3MwcmFqOG1BN2F5M091V3FmQW5FY0UwVVJQbHRma1QzbnlLeVBFR0h5azhYTWd3SXQxanZhZHBGSUVyNzh4ZC9pNlY4OHhldkhYeUVtSnFQeDJKbXBpeXFsVkVXRHJGTHp5aFJjZlBFaUw3endDRVdlZ2g4QWdtazVKT3VYLzdxTHVvZFJZMXlvR01xTmRZaXREejAvbGZWVys3akpRQU9CaVNsU1oxMThpNEVLemVrUXhsUG9qazhMTXlwMnB2b1BZblpzdTRRTDkxN08xVmRmelJWWFhNbmV2UmV5YldrN0xsN0ErSlNsNVM2OVhvKzFmZ3BpYWJjN2RCYzdkTVRpaTVpbDlqSjU3c256SE84OUlsSU9NUWhDbG1WVjlmdDgxWGpzVFQyRDIvaURVRGtiV2NMYWtRSGJ1N3RvZFdQdXZQMkwvUFgzWGlOeUNha2ZNUG1CU1NtbDF0TWdxOVNjc2dqV1poVER3K0FzcmdVKzd4TkhDVm5lSzROaXMyOThkU0JZR1daZGRVS3hlZG16bnJ4cW93eTdXVkNGelRzWW5FQVdQcGtDM0lrMi95b2ZCb01oNXVqS3F4eGVlWjNuWG5xUStyRnBSMTB1Mm5jSnUzZGR3UFhYZjVMTEw3dVNLNis4aG5hcncrcHFqOE5IRHhISE1RdmQ3UnhmT1lLRXN2THRuQ09LSW93eEZGbGVCbGwzYnIvRUdyR05ZUjVsQndmWjRDOGdWYXMzb1J4RGE0Q1dhVE5jSGREZDNxVjM3QmczM25nelZ6NTFQeThkMlAvaDNRbWwxRnc3dDE5bGxUcW5CUWpWRkxXK0tQdHVob0tzbWhISk9KQ2N5Y0FvUXRsbmRhcHQxSFJycVJOcG9XVzJQcDh4RzlkellldlF1VlZPWm90ZDZIUmlSSVFRUXJYVTV4ZEN5SUFNWXh4eDFNSVlpL2RDVnZSNTVZMGp2UHBHekdOUDM0c2hadGZ5SG02ODRXWnV1KzF6WEhYVk5VUU8xbnFIV1lqMllxb1dVMW1Xa2VjNWNSempyS1hkYmhQeXJXWXVPNWROLzJGa1hKbXQrczNHTGtFY1pJT05HVnFyQUFBZ0FFbEVRVlFVYjRUTzRpSjNmTzRPM3Z6Mnk2eEovNHpzdFZKcXZtaVFWV3B1V2RweEYwaUlEQlJoU0JsdUlZNE5JZVQ0NlRLbFFQblB2aDRyV3dZdEkxWEFQSm0xYkQzd3dHSTNIZU1xVzN4dHZGV09EV0l3VTMwVG11T0NCLzNtMElYeCtheTFXT2NSSTRoNE10OGZQejZqNEI4REVaRnJzN0wyTHZjODhJL2M4OEQzYVVkZGJ2bk1iZHh3L1cxODRwcmIyYmEwd01MQ0FtbWEwdXYxeW9POHJNTzU4MkZnUWYyWVR2OGRteUcyT1RhMk9jWWF3SkM0bUtGUFNWb0phZHJqWXgrOWxtdXZ2WTRuOWo5U24wVXBwVGFrUVZhcGVTV0dvMGRXQUl1eEZ1TWo0dGlRNVFPTU1maXNQbDk5Z2ZWSDBCdGpNTlgzdkFiV3JldlF5cXgxZlIyakE4ZW1UNi9tVzZqQzc3cjFpZHpGTFljZWpDUHpPQ0FKQmdjbUVMa0V3Uk04QkNsRzV5dTdYc25vK0xlYWRZMXFjY2l4Qm5LL1J2bFNhYkU0ZkFnODlNaVBlZUNSKzlpMzR5NXV1dkUyYnIzMXMxeDg4YVc0bHNONU1FYXcxVmpaMlgxcnE4ZG80djVOaGNIUnVOS3lVNE5nMW5Wdk9CM21KUDRPcHZvN0FsTVhDaE5kSkRaV3piZzJJUkFrcC9DQlZydkZRSEtRbU1YdWJtNjYvaGFlM3Y4MEJRRUpxYmJ1VlVwdFNJT3NVbk1zV2VnQWtQc2hHRStXRDZvd20wMjk3OXRHL2dpallRVnlFbUZtWTJmeVlKd3c0K2RRQmVaQVhxU3M3N0xRSEZMQnhBTVFQRk1QU0U1emV0b0FoRkdDdEx4OTlBbmV2dmNwN3I3M0w3bnBwcy93aGR1L3dyVWYrUVRkWkR2NU1FT0NKYy9BbVlTRmhTVWlHekVjWkdSWmhqRUdGN25SZFkvR21JclV0elRSRUVES2p4eVVvMUR0NkZQQktFUTJob1dzbTZ4QUpyZlhKeldIbHpUN3hJNHE1dFZwUm1iM0VRNk1yMnMwQnJieDZhUDVFVWVrbXFpanVsTkN3THVVdGRYakxIZDIwazZXNkI4djJOYmR4bFVYM3NDMUY5N0lDd2QranJXT1llalRhanVHcWNmR2pwRExCc0ZhS1hXKzBTQ3IxSndLWnVvOTNBU1F1bS9yOUxrYlh3R2JSbXVrY3lZRVRJZlVFMXlmMFAydnV6dk1ZTXJ4eUlYMGVlTHBuL0xjTDUvbW1xdXU1L1pidnNnTm4vZ00yN3A3V1ZycTRuUEQydW9xUmVacEpWMDZyVlkxZHJlZ3JuMExFR1JXNWJJZTd4QVFZeWNxMnU0VS8zNmpvTHBGbFhPNjBqcjl2QnBseVhvczlNejkyWGhLRGVlRXFHWHhFdkFEVDhnTXBrall1WFFCbjc3eE5sNDU4Q3Z5a0JKaHlESS8zaWxUVmVLRGRqVlE2bnluUVZZcHBVNlRkWTdnQTROc2xXZC85U1R2dm5tQWh4OSttRC8rZ3orbEUyOWpxYnVEVG5lSmFMRk5DSkNsR1VWUkVFWGpsK0NOaDFIVUUxZzB6bUJPSm9pZnZiejNKRWt5bmhITkdYeFIwR20xdU9INkczbjRpVXQ0OWNpdlNPSTIvWHhRRHUwKzNURVZTcWx6eWprODdZeFNTbjJ3MnAwTzFzWUVYNDVKS0NlWXlEbTQ5aGEvZU9seC91ZC8vei95Mk0vdUpkZ2VnL1FJeDFiZXdVVUZuYTVoTUZ4bFhiVzMyVWtDMjFqV20xMzluQzlwbW82bUVYYk8wZWwweVBPY1hxOUh0N1BJVFovOERJNFlKMlhnZDlZZ2hSK25mcVBWV0tYT2R4cGtsVkxxRkEwSEdjRlhYM1diZ0pBQ0tUQ2tIWG1FRmY3TGQvK1NmL2Z2L3llZWYvbG50THB3NE9EckhEajRPdnN1MlFXbXFNSlltQmxpamRoeWZPcTZaWlBoRG5Na1lCQmpDVlVidVZhU1lJS1FEakpDSVZ4LzdYWHMzWFloYVZGZ2llaTB1dFhkRGhpbmIxOUtLUTJ5U2lsMWl1eG9rS2t4aGlSeEpJbWpQRUJzUUw4NFN1d0tMQVBlUHZvOC8rSC8vbC81ejMvM0Y4U3Rna3N1MjgyNzc3MEpwdW9EYkFvMkRxYlRWZG41RDdDMUpFa0FLSXB5eWwvdlBjNVlraVFoY1FrN3QrL2hxc3MvaWlIRzREQ21uQklZWVZUSlZVcWQzL1NWUUNtbFR0R09uYnR3VVl5RWdpd2RrT1hEY1lXVm5Nd2ZwOTN4ZE51V1FJOTdIdjArLytlZi8yL2M5OURkZEpjc1lqTEU1b2p4aUFubFF0MEZ3SmE5ZnFYUi8xYTJHbkF3WjR6Qmh6QUtwWGs2QktBVHRTQ0FsWVJQWHY4cFduU3h4SVRjang0UFgyUWJYcTFTNnZ5aEIzc3BwZFFwT25ya3lPaG41d3pHQ2tWMWNMMng1VENBM21BVldLVWJiMmVRRDlqLzJ0T2tQeHBTRkFXZnZ2a0xtRkIzSlRBZ1VYbkJVWGl0MW5VRDNvbkpCUmpOa0RXZkRONEhSQ0NPSWtJUThqVERPb01SU3pId21NVHkwYXV2WjBkM0w4UCtFSi81c3NkRDJjUmg3ZzkyVTBxZHZubDlCVlJLcWJPSzkwSlJ6MGhyeXVPUlBHV2J0QUQwOHhXRUZDSGw1YmYyODJkLy9SLzR5VSsvaDJlQXVKUmdNbXdzOUFhckdDdTAyMjFFcE9ycktwZ2dvOThKNVZMLy9rRXRUZlZwNCtsK3cvdHkvY1lZdlBlRTRJbGlCejdnTTA5a0UyeUlTVXlicjM3cGF4aGlBZ0dMSlk0TU9rR0NVZ28weUNxbDFQdGpvMkJWRlZzRGdZQW5rRU1WYUg5NHoxMzg5ZC84T2EwMmRMcVc0eXVIdVBTeWZZUlE4TzY3N3pBNUh2YWNHVkF3azZIWnQ5Wml4WUtQS0ZMWXMzTWZpMndyWjJ4RHg4Y3FwY2IwMVVBcHBVNVpQYUkxekR4MVlqRWdGT1dVdVJRRVVvNzAzdUtSbi8yRXYvbmIvOFRhOENpN2RpL3l6b0hYaWVPSWJjdUxqU3VzNXNpcXVoYWNPeS9jay9PRVFSaDNaZ2dSQkVjeGhJdjNYc1psKzY3QWttQXdpUGM2ckVBcEJaeExyNGRLS2ZXaENrejBnVzFPbVRycjU1RXl6QW9ac2ZNRWV2enczbS96NDU5OER5RmxNRnlsUDFoaDI3YkY2UXV1TTgrOVpNV01vdXZVREdNQkt3WXJCaE1zUm1JV085djV5RFVmUnhBY01Ybk9xTkt0bERxL2FaQlZTcWxUWkFqVkpBaVZtYVhZaVF0VVMwSFoxV0FWVHc5THdiZS8rM2Q4Nys2N3VPU1NmUlErNWVEQjl4b2RFTWFWV0N2anRsL3piL0l0eUJDdzFBSGRZa0pFYkZ2a21YRE5WUjhsSnFZZEoxZ2cwbmN2cFJRYVpKVlM2bjNVYUk0bGxySXh6UG8yV3NCbzNLdzFPYTJXeFRQa0J6LzhMbzgrK1RCNzl1ekNoNXhSaUswdjAyekYxZmovdWNoSU9VNDJ0akZwUCtPQ3ZSZXpiOWZGWjNxM2xGSm5tWFAzVlZBcHBUNVVkWWgxUUR5MU9NYmhsbEZsTm9vaDdsajY2WEU2U2NScWRwUy8rcXUvNUtXWGY4WHk4dEtHdDNTdTFHTTNWc1YwR3lGaUtQTEFRbWVSajMvME9ySTh4MW9JNTg2OEVFcXAwNkJCVmltbFBtelZrSU84Z0VFL2tMUWpCdGx4aEFGSGgyL3lOMy83RnhTc0lUWUZreUdONld2TjZNQ3ZhbGF4eHRWYWFSNzUvOEU3bVRHNm01MTN0RzJxY20yTUlZU0FNeEdSY1Z4eHhkVUlobmJjUWNKOGp4RldTcjAvTk1ncU5jZnlQSWVvbk5mRXVMSTFVWkVMMnAzb3d6RTVCTFlleitvcHA2bHRMbjY4dlRGMk5vNWFDSmJCTU1QRmdjQUtuaU1jNmIvTVgvM2QvNEZwOTBsbGxXRytScURxdlNvV0s2NGNNK3ZML3JMMXdnYkxkUC9XUUxtSUQ2T2xQcStSUmlDZXVoNGo0Mlc2cCszMGRpTWI3OC9vL0kxOU04RWdZaWIyMHpraHoxTVdsN29jUFhLY0t5NjZtb3VXcnlSTExSRXgraGFtbE5KWEFhV1VldCtFcWFXWStyM0psa2ZmVjcxUkE3NXMwV1Z5M2ozNkdzODkveFMvK09YamRMcU9xR1hKODVTbyt0QmlyUjMxVWgyMXEvcVFxNU1uOCtheDJiNVY5MkxkNldMS0NSZnFxcXdCbkl1NFlQY2xHRnBFZEU1eUw1UlM1eUo5RlZCS3FUUEVOT3E1VXhOcGNlalllOXgzMzA5Wlcxc2xpaXcrcEFRVEVEekZhQXF4YzUrMUZ1ODlpQ1dLRXE2ODhrb3NCcXR2WDBvcE5NZ3FwZFFaNDV3amNxNEthK1ZweG9DcEtwUy9lUDRYUFA3VW93Z0ZjVHNoelhvWUI4TjhRRGdIam5hcTY3Qkd5cWw4b1Z6WFk0S0RhUVJad0dLNC9KTExBRnROVjZ1VU90L3A2NEJTU3AwaGhjOEpvZndLdlNZQ3hsb01Ra0hHZmZmZnc5Rmo3OUxwT3ZJOEk0NGQzdnR6cDVYc2hQWGgzQmlEZUhBNDhMQnJ4MjZXN0xhcWxuMU9QZ2hLcVpPZ1FWWXBwYzZnSUFIbkhMYk9aQUkrNUFRQ2dZSTNEci9DL3VlZlk1RDJzTEVnTGhDM1lveVo3eEJYajVzMVV2K3ZEckdCZXRwZkVUKzZuOFpZUW9CVzNPWGlDeTdGRW4zNE82MlVPdXRva0ZWS3FUTWlqR1lHRXhHaUtDS09EZU44R29nUUlPZVJ4KzdsemJkZUlXNWJodG1BcEpPUW44UGpaSU9wbHFwYWJiQTQ1OEJiVElBckxyMGNXNDJVVlVxZDMvUlZRQ21senBBNGNrREFlMCtXRlJTNWpBNzZzaWJnU2JFRWZ2WEdMM2pqN1plSVdvYTF3U3B4a3BENWZLSy83UHdMaUEwVDAvS0dFRVpqZ1oySnF1RUZqZ3QyN2FORjZ3enVxMUxxYktGQlZxazVNZW9CV3IyNW53c0grNXp2OGlJSFJoTjlqVHNYbUVBUWo1QVRTSW53L1BEdWYyU3RkNVJPcDhWcWY1V2szWnA0TG96NnVqWk05NCtkWG1hZGQ5WjFmbUNMTDVEZ0NhRVluemFlanhlc0diWGZLb3FBRVV2SUExZGRlaFU1QmZvV3BwVFNWd0dsbERvYm1RTHdDQms1QS9yWktpKzh0QitjeDlqMVFmVGNVRlZqRzVYbXNwZXN3NGpGNG9oZGl5VHFzTjN1MGpjd3BaUytEaWlsMUpsa04vbXRyTWhtQkhKNitURWVmK0lSQWdVWWcrZmNDYkpXSnUrNTFDMjRxa2tSSFBXa0NCR1JhZEdLdXV6YmV5SDZGcWFVMGxjQnBaUTZRMmEvQURkT05XQ01CeklDS2MvdWY1citZQTBjNTJCRnR1NVdNTzVnWUswZHplNkZGNnhZUkF3T3k5NDlGNTNKblZWS25TVTB5Q3FsMU5uS0FFYXdSakJBUDZ6eTVqdXZFMEk5OWUxOHM1VFZXQm9USURRWFl3d2lnclVSd1VNSUlFVWdGTUtlM2J2UDZMNHJwYzRPR21TVlV1cXNNVm1OaGJJK2FWekFSV1dsOHJuOXp6SElCbUROYURhc2M4UHNDbk1aWkt2S3JJQlVnWGJYOGk2ZERrRXBwVUZXS2FYT1d0VXJ0QTloVklWOTVwbG42UGY3V0h1dXYzeUhVUmNGWnl4R0xBNkx3MkRGc3J5OEhaM1pTeW1sVTZNb2RZNHdiRlRUbXJIOVhCdGVPYWZXRHc0SUU2Zldmek1SS01RVDRYaHY1VTJHK1FwaTkySk84Q1hjMUVOUFlmSnZQeU1IMnBONGJsaE9kNEJEYzBZdjA3aHRDMklKVXJVQk13R2NSMkpmdGVrcWFDMjJFUHpXVC93WkppNHltbEZ0cXc4Rzh6K1VRNmx6a1FaWnBjNGdzOFViOEt4ZXNmWDdyZ1UybTZWMCttMDVNTjJyOUlSMlVYMkFaT0t2VkxlZUdtMHNmeFVRc1JqajhKSUJnY2QrOWxNdS9aMkxJRzJES1NjR3FBLytxcitDYjU1bVpIeTF6VCs3aE1ZVHNINWlORTZiZUlxSWpGTTFWUDFlWlh5ZXFlMU5wbmw2WTN1b0pqK3dnQVFIMkltOG1DUXhxUm1TaFI2dEpjdWgxWGRvTFVSNE1sNTYvWGs4K2JnSmIvMllOZGV6N2dmakFEN3VXV3ZCMk1ZSjlkK2wzcGw2UHQycGY0LzZnVkNwTSs1Yy8yNUtxZlBTcktwYS9ZOWQ4K3Zad2s0dE13Z1lNOTRlS0JBODd4MStnOHl2YmZsSnlNcmtjOEhJNURKdHF3OVdwM3JlMlJyVlp5bnZveEVEWXJGU1ZtVGZmZmRkZHUvWmppZm4zU052c2VPaVpaSnRqZ2NldjVlLysvYi9kMW8xVXFrRDhMcC9FSGFEbjVWU1p5T3R5Q3FsMUZtcVdYRTN4cFNUWFdGNTQ4M1hTZE4wemlkcHRhT1FiY1JXMVZ3TFNCbFFUV0RYbmgzMGhtdjBoNnNzTG5kSTh3RlAvT3hoSG56MFBucGhEVENUVmRFTmhnZVVaeG5IM2xDZk9CcGpVRzB6RmtTSEVDZzFUL1RqcGxKS25hVkVxZ0JMdlJhY014dzZlb2grZjQzNUg3ZFpWNXViaVQyQThZanhkSlphdkh2NEhaTEZpTzV5bS9zZS9ESGYrZjYzT0Y0Y29XV1Q4cklTalpmUjlUbldWN3d0WmUzR0l0VjZGR1lOaklkMjFBT0ttK01VNXYxeFZ1cmNwVUZXS2FYT1VpTDFPTmVBTWRYYWx1dmp4NCtkNGIwN2ZVYk1hRGdCWWhFYkVDT0lDUVJiOE03Qk4xbmEwY1hFQlk4OGZqOC92dmR1ZXF4aWdYN29NUTZ0emNVd0RzZU54ZGlwZGJVVHpjeEtBT29ldmZVRURScGlsVHFiYVpCVlNxa3pyaEdXdGhoN1doUTVFSGp2NElFUGRJOCtlT01BVy81YUJzZFFoZGhnYzVLdUkxbTBQUExFQTN6ciszL0xLa2VKakRCa0RSa0Z6bGxqakJ1UFp6MGd1RDZRUzh6a3VOaFpnOFpIQjNWcGlGWHFiS2RCVmltbHptTDEwSUlRQXRhQWw1eFdIUEhPTzI5eExnU3Q4WnRRM2FhaERMSEI1bmlYOHNnVEQvRERuM3lYQWF0RVJzZ1k0TW5wZEpOcU5PMzBVcGRZUFJoZlhXZlkrQ2kzNlpOR0ZkcjZjbzFGS1hYVzBZTzlsRkxxaktpRGtXMnM2NlA0S2IvOWJsUUxRL0JWQndOb3RXS09IRG4wSWUzbkI2cytzRXVvS3JGbUhHS2ZlZTRwdnZ1ajczRGNINllUeHd4RG45d1BFV0N0djByNUZsYUgxL3Jhd3ZxSzY4U0JYWTJ4c1l4RDdLaGxXYlBKYk9OOFNxbXprd1pacGM0U3pUNmc2bnl5UWFWUHdGaUw5eDVqSE00NkNsOEFoalRyY2ZEUXUrV3NWNVRQbWZKOEJ1Y2NCS0VvQ2lMVHFIZFdmVjZienk5cGhMU1oyOWxxdTJ5K2ZkUTdkdllkTkZibzkvdDBGOXRFc2VYWTJpcEoxNUV6NE1XWDkvUC9mdit2OGFRSU9hdDV2MncvTnRFSXQ4QTBQZ0FJVEFSUDU4Q1BIdDRBT0hBR2luSmY2OUcwY1dRSXhwTG5maHhvbXcvQ3JCWmR6VzRIU3FrelJvY1dLS1hVV2FvZVZpQWk1U3hXVmZVeEJFK1dwUWgrcmovNHJLeXRjTUZGdTBqOWdOZmUralVMeTIyaUxqejIxRVBjOWNPL0g0VllUMUgxMEsxTUJNdm1lTmpKNnc4ZW5JWEZ4VGF4Yy9VVWFWamphRVVkT25FSGdMd1FmTzdMdmdZdXdqbXpkU0ZXSzdWS25SVzBJcXVVVW1mTWlWYjBRdFdLU3hBSitKQXpHUFFtWm41cmhsN1QrUDNzRmVnc3hSenJIV0ZZOU5pMWJ3Y2tCWTgvOVRBL2VmQkhITTBQamtJcytQSWkwek40Vlcxa1RUMFVZK29XWWx1RzJjSHFFTEFreEhUYjI4aHpUMXFrZUFLR21FN1NCaUROQm5nZkNEcGxsMUp6UXl1eVNpbDFscHIrbXI0TXA0RVFDZ2JwZ0JCQzQvVDVFa3dnYmpuZU9mUVc3VzBSeTdzWGVPaXgrL2lISDN5TG8vbEJMQUZQVGlBbm5NUlgrUFZzWms3S0VJdEFRa3hFaENGaU1Fd3BQRGhpdHJkMms5QWx6UW9HV1ViQWtOZ1dzWW1CRXlpNnp0L0RydFE1Unl1eVNpbDFsbG9mWk1lL2UzSzg5NGdyVHpQR2pJTHRYQlFVVFdCbHNNS09DN1pSbUl3Zi8vUmU3cnI3Mi9SWm9lVWNQZDhmRHllWUdCZTd2akE3cXNyV1YwMDkvWUhEWXhBaUxsamV4ODdsdmZSV1VvNGNXeUZsd0ZvNlJEQTRXa1JBUVU0ZUNnQ3NpUWhTYkxEdnpNZGpyTlI1UUlPc1VrcWRwYWJIdjA3K0dnakJJN2FzeUU0T0xUQ2pLVzNQVmdKRUxVUFN0VHp3MEFQYzlhTnZNNkJIWkF3OXY3Yit3Szc2UWlQTkx4VEx3UUNUMHlGWVd0RUNhWkVETVIrLzVnWnV2L1dMV0NLZTMvOFNMLzc2Ulg3NStqTjRNa0R3NUtOTEMySGM0YUQrV2F1dlNwMlZOTWdxcGRSWlkzWmpmMlBxV2I1b2xDTmxYSUdkUjBaSWk1UW5IMzJTSDk5N055bDlGcEkyZzJLVklKNG9kdVNGbjZoKzFuZmRFdFdQek9pVVVyT2xtU010UFB1Mlg4cHRuN3FEYXo5NkF6dVc5aUloNHVaUDdPYjY2MjdpbjZWZjVHZlBQc1pqVHp4S1B4U0FaYUhWSmZkRDBxSy95YzVydHdLbHpoWWFaSldhVS9WYnVLbStTYll5Zm5zTkJvSnNQQWhldnhtZEgyVzFWU1pDckRIZ1pQWmZ0K3h3Y0lMWDNaanc2a1RPTzNWTGpDWU5FRnRPTlF2VjJsYjdVaDZrRmFycGRjWFVreGFBdHlrdi9mbzVmbkR2UDNJME8wU0U0WGgyRktIQUdvdjN4ZmhtWnQ0K2xKTWUwS2llT2l3V1M0VEQ0WWo1eE5XZjVwUFhmb1pPc2tUdlVJcXpRaXRaSUlvU0lQRFYyNy9HNXo5MUJ5KzhzSi9Ibm5xRXQ0NjlSZ0JhTEZBd3hPTUpCRVEyNms5ckovYVRxYk9VeHNGWC85MHA5ZjdTSUt2VUdSUkN3RTVWbXlhR0EyNVNiUk1yNDlrM3A3ZVpjZ21idkd2T3VwdzYreGhqc05aTWRDZ1l0V2NWS2YvSXpZVkcwWGJxQ1dBYTIwSjkrZEZBMDdMYndjVDRoZWJGdytoR3k1WDFDT1YwdVVZY1ZJc0pEcVI4YTJsMUZqaDQrRDEyN2xyQ3RTM3Z2UGNHbmFXRU9ESDg3TGxIK1gvKzRUL2lTUUhJNjlaaWdKV0FpSzMyZFgzMWN6VHNvQnBMa0NRUklRVUthTkZtZ2Uxa0ZQekJuZitTeXk2OGdwM3VRaWdpblBPQWhjemloNEhsWkNmNXlnQW5NYmQ4NVBOODhzcWJlZlgxWC9QRU00L3lxM2QvaVNIQ2toTElpU0lEMWpQTTgvS2hxRzhmVzMwYU1DQU95N2g4YnZDTkJ6R3N1emY2NzArcDA2ZEJWcWt6eUo3bU85bFdsMjkwS1pxOEhPVWJxbFptejM0aVFoaUZTRVovekkyTzVEZkdZREJiRGptd2pKcGFiV25XaDU2eTVWVUFDUmhjOWEyQUxRT29HTVRBOGVPclhIekpQbzZzSHVMZzYrK3c1K0lkMkRqbi9vZCt3ajBQL1pDY0ZERXBWTlhsOGZQVXpoaGtNWFYvNjhLdmhXeFlZRHpzU0hhVFp3R1A4STFiZjQrckx2b0l5OTBkMkN3bXl3cUNOeVJKakxFT0d3eFJKdGlpaFpnWTV5SVdXOXRJTHV1eVkyazNONjNjd21OUFA4emg0d2M0bkwrTEwzSUVYNDIvQlNMd05pbC9DNVF6TDBpbzhyN0ZJSTNKR3NaREh4cnp0eW1sM2djYVpKVlM2cXl4UHVLSXlPUkJYbzFaQWF5MVo3RDFsaTByc2JncWlOWUxTRFVPb05WMkRMTSt3NnpIOHE0RmtyYmhrU2NlNVVmM2ZKL2o0WEI1TlRPR1NHeldicXM1NDFhbkV6Tll5ekVlT3E3TE1CdlNZWkU3YnJpZFd6OTlDMjI3aEpXRUl2UGtlWTZ4U2ZWNGxlT0xmUURFSVJpS1FqQWl0Sk1sTHQzWDVxS0xMK1dpaXk1bS84dlA4dk5ubitUTmxkY0pPQUlGRUNoeUFZcXA4VHYxUjRNeTducGtJcHl2SDh1cmtWYXAwNlZCVmltbHpsTEdURlpXNjRPK1NoWnIzZWc4OWZucWJnWDF4QWdmS0tuZlF1eFVJQTBFRzNDeGNQRG9PeXhzNzlCYWpIbmtpZnY1aHg5OGk1VndtTmhBSmxzSE9TSE0vdVpBd0E4RTQ2Rmwyb2lIRGd2Yytaa3Y4UnUzZmhFVElySXN4d3FJTnpnYlk2TXkrQmZlVXhRRmhuSW9nQ1VpRklFOEx3akRIRzhESVNyWXNiQ1h6Mzd5RGo1MjljZDUvdVg5L1B6WkozbHI1WFVDZ2lGSEdPSkRQdjVBWWNyK0NTSyttc0hXVlB0ZFY1enJNckpEdzZ4Uzd3OE5za29wZFpacUJ0bHg1Ylg4UGFhRmM0NTZNdFY2WW9SeWFNR0hRQXkyVVkwVkVZSUJzZVVCWFdJOHh3Y3I3Tnk5amI0L3hqLzk5RDcrNmI0ZmNMdzRoS0dvUXV4azJKWlpvYTRPN3pOYWNZVU10c2U3U1BPVWhBNWZ2ZU5yM0hiajUzREJZWUtoeUR5eGpiRTJ3bUFJSWhSRlJrQ3d0andrREd3MURsbUlUWUpIS0VKQjVsUDh3T05hSGZZc1hjSzI2M2R5NlFWWDh1S0xML0NMWHo3TFFmOFdob0pBd0FUQVdZSVR2SGdLWCsydmJRd0pFWXRnTVVTTUIvV2thSkJWNnZSb2tGVktxVGxRVDNnQUZ1Y2NuYVJUVmdKbDYvR3dINHlxQ2x0WFlrWEFCTVFVWUR6ZUZpUVJtSGJPby9jL3lGMzMvRDBacThUT012UXBZYXNSdXRNZEF0WnRqdWl5alNJWEVqcjhzMDk5bVZ0ditDemRaSWwwdGNCaGFTY3RySWtSTVJRKzRJTkhSSEJ4UkpKRU9POFE3OGtManpFTzU4ckZPSU1ORGhkWlZsYU8way83ZEpmYWZQeXlHN25xZ285dzhhNHIrT1VMVC9IODIwL1M0d2dlai9lQzkwWDVjSmpHQWhDcWpnZkJUYlNrMVRIcVNwMCtEYkpLS1hYR3pPNGJXeHNIVklzeGJ2Uno1Qks2blVXc3RhTmhtYzJLTE5WUWd3KzhOaXRSZFdDWFVPNUlxRUpzanRpTW5BRS9lZUJlZm56L0Q4bFlwWjNFRE1NYW5oem5ETUViTEhiMmdWeFRzM21OZnk0Zk00ZGp3UzVSQk9IMlQzeWVPMi83RXBGRXBLc0ZTKzBsaHYwY0Z5WGxib2xaTjJsRTJhYXNITzlxRVlMUEtYeU9HSU14RGpIUVcrdXh2TGlkWGN0N0dBeDZISDM3T0dJQzExMXhQVGQ5L0hxKzk5TTJCNDY4eHF2dnZrYVBOY0NRaHh6akpvWXlWMGRYQmliSDBHb2xWcW4zZ3daWnBaUTZ5NVhEQlJ4MTJ3SnJIVW5Td3VEV2phUDlzTlY5YUlNdGh4TjRXeUEydzd1VWwxOTVudS85MHord0dvN1FhU1dzcE1jUUNscGRSem9vSjQ5ZEYrWTNDckdqQThwTTFma3FaaGdLdm5ITDczTHJwMi9CU293SmhzZzRodjJjZHF0TE5zaXJnTytJb2dqbkhGNENSVkdRK3hRUVl1dG94VEVTRE42WEI0RVpBMWhMcTd1QUVmRDlGRnNJaTYwRm9pZ2l5NFljWHozTzczM2xEOWoveWkvby92d0pubjlqUDhjNGltREpmQTUyUnQ5WlU0Q011eGpNSEVxaGxEb3BHbVNWK3BEVVlhTVpPcUxHRWVlenRtOTJlVU1vcXovVmRSUkYxVURlVk1VZk5TYzJxTTRaUmhNaHROdHRCb09VZHF2RE1NMHd4T3pkZXlIQXFMOXM4M2xnWlh6UVY2MmVLS0g1L0pvb2RNN1lQZzZSczU2ZkFnNzYvUUVMaXkxaVp6amFXNkhWTldUUzU0V1hmc2wvK3RhZkVjZ0pwS3lrYTJVRjFFSTY5Q2YydlhxMXZSVXZFSXBBQ0lISUpDUlJDNThMZi95bGY4WGxlNitrYlpjSVFjanpvcHdRd2NSa2cvSWdySG9JaEMrRVlIeDVvSll4V0dNeGtoTWtFSEpmam93UVcxYXpneTJYeHY0WkFZcEFrYWRZREl1dFJWWVA1MXkxNzNvdTNITUZWNzcwREEvKzdBSGVXSHNWWVVEY2l1bWxLK09XYVlheVVsdTE2WW9pUzE3b1AxU2xUcGNHV2FXVU9pT2E3WmhnSXN4T2pRZ293NnFwUHFCWTh0eXpjOGZ1RDN3UHQ3S3lkcHlMTDluSG9TUHY4ZTY3YjNIeHBSY2dTY3A5OXovSUE0LzlkQlJpUFVVWlltY09EaTN2OTdycTVHaEdyNWdzeTdCRWJFdTIwODhHaE56d2pUdCtoMHYzWGNITzdtNWkyNkVJQmRnSTV5S3NXREtmTVd0dXU5RU1ZYWFlbFN4VXMzTlZPMVVGVHpNUllwc2ZOcXExV0dJNlNHcG9SNDZQWDMwejI1WjM4dHl2bitIcEY1N2cyT0F3aVdranRzQlRFRHhZQjFFYlFnR0ZobGlsM2hjYVpKVlM2aXhWVndUcnFxc3ZCR2RpY2gvWXQrOWlOcDZFK0VQWU54UG9MclU0MWp2QzBQZllkZUVPSkVsNTlLa0grY21EUCtKbzlsNGp4UHJHZEdPTlpjTXJMMWZ0WkpFMFRYRWt0T2t3eUhJU092ekd6WGR5KzJkK2d5UmRJSkV1ZWVyTFZsczJ3amxMQ09DOVlNM2s0Mk9iTjFzRjFtREttY1RBSU5qeGxMMG1qTUpzdWJ2andHMnFTUStpcU1WZ21DSldXRnhjNXVOWDNjQ081ZTBzdEx2ODh1Vm5lZVA0SzlWK0dJd0xaTjZUK1hJNFJoUkRrVy94T0NpbHRuVG1YZ1dWVWtwVkdpL0ZqV3JzdWlBckhtdkxsbEgxMElJelI0aGFoZ01IMzZTOTVGamUzZWJCeC81Lzl0N3MyWkxydXRQNzlwQ1paN3BEemFncUZJWXFGRUFBeER3U0FBR0NrNEpVSzZ6b2FFWExWcnZiRVIwZFlUOG9XbmFFSC94a2gvOEFQMWlPYUEveTFHMjN1eVZSSWlrMko1RWl3QmtnQUlJRUNRRUVRSXlGbXF2dWRJYk0zSHN2UCt6TU05eWhDcWdDVlZWUWZoV244dDZUNStSODd2bmwybXY5MXBOODZXdGY0R3h4RElYRFU4WTJ0bXF6NkdPTVNNZENyMnIrVEc2c3hoVU9qYVZGRzFDa3RIanN6ay95cVVjK1Mwb0g1Uk9jQ3hSNXdKWGd5a0R3NEt2Q3QzTXpjVndJYW4xMHZON0RTdGlxVUFuY1NzeHFBUUxlZTBRVXZnemthem41c21NdTNjNDlOOTNINzM3NkgzSGo5bHZvc0lDUkZPMFNXaVlkaTNqZFdCWTBOSHdnTkJIWmhvYUdoc3NZYXkzZVFTMzh2QmRTMDJLdU4zOXBOMHdGVmdjckxPN3U0ZFdJYnozeGJiNzhqYjlnd0ZrU294bjR3V3c2UVkzVVBxcXdaWlBjS3VJcElzeW5Dd3lMa2paZFB2UEFaN24zOXZ1eExzT0lqYWtXeW1CVGl6SjFWekZRV21OVk9yNEJxRXVyNmh6WThXcTBKbjRONm5IamdobG4yeXFpcTFWc1BhdW4wbzZERm9wOGpTVEp5R3lMRUJ6RmNFU1FRTWZPTXplM3lPY2UrUWM4KzR0bmVQYlhQMkZFSDNHZVRwb3lkR3NVeFFVYzg0YUdoZzAwUXJhaG9hSGhNc1lZZzNPMTRGTUVZTy9ldmFScEM4S2xUUzB3R2FRZCtONFB2OCtYdi9rWGpGakJhc1hBVHdxNzRvdnJxWVdxQ1VIRXo4eWVvRkVvRWxJR3haQTJQUjY5NXpIdXYvTkI1dElGeWtHSnNoWUpDbVVOeG1pMDFuaGY0cjJmc1RlRWdpWUFBQ0FBU1VSQlZOcmFHZzExaTEzcTFnd2FRU3BMc1pnbkswb1RJRG95b0tmU0pBTEtDcUpqd1pnU0ljRmlNZWlna1ZJNHNPTVFjdzhzc20xeEY5Ly82Wk9jbGxPVVJZNDJYVUtvbXlFMHViSU5EUmRESTJRYkdob2FMbU9tQlpuVkZoZmd1bXV2SjBtUzJCanFraEhJeXdIUFBQVXMzMzdpRzR4WW81dGxETndLZ3NPa3hFanl6QkI2Rkl1S2hDaGl6KzJubW1WdFhDNDhmTmNqUFBiUUowaDhpM0pRTXA4dE1od1VvQk9jRDZncThob1FRclJZUUtGaWJ1b213L2RhVkxYV1pQS2tSQ3V3Z0tCVjNDcXRJS2lBbHZnOEtzenNpc2tDemhXNEFrelFXTlVpTXhsS0dVS0F3ZW9hTzdmdDVaN2J1K2dzNFVjdi9JaDMxdDdDK1JKajJuZy9QT2YrTnpRMG5KOUd5RFkwWENJMis0SnQrUHZFZXhBd2RlU1BBQmdTa3lMQnMzZkhOVmphYU5rWWRkVHYrYnFTbUtHcVFNc2tFam51MURYOVNoV1FTc2lGcXZHQk56bXZ2UFpMdnZIa1Z6aFRuQ1JSc0p3dkVTaFJLbGJtVjZzWnB3cE04TEY0U3JtSjBLMGVDb3NoUVdNb2M4L25IL29IZk96dVI3Q2hSVUtHTmduRFFVR2F0aWdGblBlRUlORVJ3TnFKUFoyQTkrdFRGd0xqRmFyeEFkNlVLbnQyZkR3bmtudnlrMGowb1ZXcHdrcUNDcHJnQTY0b2NjR1RwQm5MSjFleFBjc0RkenpDamgwNytjNlBuK0MxVTY4UmZFNWdGSE52MzhNNTIyeExtejhoRFEyTmtHMW91Q2pPSjBablBUbGxabHFWaTJ5eTBDMlh0c1cwNFlxbExvSWFuOHJaQ0tVMmtPZEYxUVlnb0Vxd3RMbjEwRDNvb28wNFBUWU5IaGZiejloR3JiditoTW4xcHp5b01vcGtNZkVSREloR2gvalZvQk5OZjdoR3U1ZUNnZVcxc3lSdFRlbEgvT3JYditCUC92S1A4VlZZdUpBdzJSSFJJR0dUUzlrempzUXFCeDJnakJ0dnhTQ0ZJcVVkVzg4Q3YvZllQK2JBM3V2b3NSMnRNbHhlNGpGZ05JTWlkZ2ZUbFVlckJEOXVRYnYrZUl6OWNZVlluRlVkOCtuN0FLRituMHgybzFwVzlPVU5VMUpjVjN1amdJQVNqUk5CU1NYUVV6Qm9CRWNydFpTRmgxWDR5SzZQc09PaDdmendxUi94N1BHbldHTklvVW9BYkJLanVNRjdFT2gydXd6NnczVnJaTHh2OGU5SGFQNEtOUHk5cDNFdGFHaG9hTGhzbUZUUzExNm1XdUlmYW9QQzQ3bDY4WHJhWmc1OFd2bWJUbmcvVWY2by93S3FFcHh4WFJvZGRJek1vbGhkN1hQVjN0M2tic1JiUjk2Z3M5Z2k2UWhQL2ZSN2ZQbWJYOENUSXlwSEtHUHU2RGhtcWRIWTZoSC9UZkpCQTlSRllKV0l4VU53d283dUxqUUpEdmpjUGIvTjRXcyt3bFVMKzhqb0lMa2dJY0dhbEtUVndtUnB0U2NiODB4cmZicDVkRHBzK1ZBU0gvWHZ1bnFveW5KcjlxSFJvdEJpeGtkVFZCVzlyaDdhS3F5MXBNcGluU1oxQ1h1NmU3ai9wdnQ0L01iSDBSaXNUdEhLNGdvaE9FRXJpMUtLZnI5ZldYNXQzRGVOL2swM0gyNW91R0pvSXJJTkRRME5sNXBwajlVcHBCb0IxMHBoSk1HanVlMjIyMmkxV3VCanVzRUZJN1U4TmxQdFgrdksvN2doM1Y3R3l0b1NlVGxnNTFXTEtPTjQrcmtmOCtUM3Y4Mlo4c1RVY21ZSjUwaWJtUFp4MVJaQ0FYaklUSXZsL2lwZGVqeDgrOGU1NzU3N1dHanR3RWhLV1pUa2VZSFNVYnlHNEhIT1hmSXZzSmtiaDAwR1NseFJZcTFGU2V5NFZnUWh5ekt1dWZvQTgzczdIQTl2ODlLUkYxZ2FycUFKV0dQSWZWRVZuc25VNHVJUnJYMXdBeHN1bFlhR3Y3YzBFZG1HaG9hR3k0WXBBU2hWMHlsQXF1cDZoZWFXbTI0bXRka0hzallsdG5JU3NGVUYvMlE3Z25Za21lTG95YmRwejZVczdPand3OW9udGp5Qm5vckFub3M2cXJpaEI0SUFoVUo1UmR0MDhFNndwRHh5OXlmNDlDZC9pMWJhSmM4TGlxS0liWGUxeGRqb1J1QzlweXpycXYvTEYrY2NJWVN4aTRKempqelA4ZDZUNkl6SEgvd1V0eCs4aXpubXNDUW9ieXUvaHBqdlc3ZTJSVTBFTERRaXRxRmhta3Q5UTl2UTBORFFzQjZaL2JFYTNLYXJGOWl6ZXo5S21kbjgxd3RDZ1JoMEZZMFZFWUlDMFpYd1ZKN2w0VExiZDg3alZaOXZQL2xEdnZpMVAyZkFNaTFqNlBzUnRXblZaRnMzRVphcVNzdmQ0Q2NMeWhtMnQzZXdPdXlUa1BMNDNaL2lrUWNleFliWVpsYThRaHVEVFJMRUttTEptVWNwSVUzVHFQUXZZOUkwUld1TlVncGpERW9wUkNRS1hEd0x2VzA4ZXNmakxHWTcrTjV6VDlDblQwWUgweEpXUnlzYkVtTWxWRzRLbDdtQWIyajR1NlFSc2cwTkRRMlhpbHFMVG9zOEZkYUYzQ3lhbElRT3Q5OXlGKzJzZzdpNit2N0NNeVZqanVkVVRxNVU5bExLZ2ZKNDdiQW1rSFFWVC83dyt6UE5EdnArWmZOQ3haa1ZiUEh6K0NtTHBjVndXTktseDZQM2ZwSkhIbmlVK2RZaW85VVNIendkMjBWcmk0VG9RT0NxWWk1bFRIUW9LQy92cmdMR0dFSUlsR1dKaUtCMTlMc0ZhS2tPZzVVVmRpN3M0YTRiN3Fic2wvems1YWRaWVlsOE5FS2hLMmVIYW1IVnpZQklFNWx0YUppbUViSU5EUTBObDRyMUFtOURLMWRMOURwTjZMVzJjZjg5RDZLQ3hqdVBKbmtmVmx0YklMWXkveGVvVXdXVXgrc1MwUVVqdjhiVFQvK1ViMzMzNnd3NFM3ZmRZdUJXOEw3RVdvMTNzZkJvUTA3c2VvMDlrMHNhaFp6Qk1NY2lIdUhoano3Q3B4LzVMRmFsRkgxUE8rdFNySldJMGZoeDI5bEFrRERqQkhJUkdjSWZDT2ZMa1EzT3h6YTJZU0k5UlVJVXRHZzZNa2R4SnFmWG11ZGpkenhFcTlYaWlaLzlEYXM0TW1NWWhVRzFJalp0WGR6UTBOQUkyWWFHaG9iTEVvVkZZNnIrVmgzYXJYa09INzRaeVEzaVFSbnpnWVRrYWd1cW9HTTZnZGNPMFVYMGlmMzEzL0xOSjc3S3FlRlJFcU5aSHA0bFVJSUJQeFpuNjBvdHRoS3g0NEl5VlZYZUo1UUluNy9udDduN3pydWhURkRhUnRPcWdXZGhZUnRySzRNWWdjV1EyZ1Mwd2t2QU9ZZDRIenNXWE1iVVVWaHJMVnJyY1ZxQjl4NHRtaFl0VExBUVBHa3I1ZERWTjNDMmY1YWYvL3A1bHZ3cEZEWjJTSnRtaThMQWhvYS9yelJDdHFIaEE2S09GRTFIak03WEpsUE9FMW81My95R0s1eXFDTWhhUzFsVXcrUUswcVFWdlVkSlNHamgwUHhIdi8wUEdhemtMUFRtS0ljNVNXSndZVEs4UC9GSm5Wd3oweEp6L1h4QlVGb1lEa2YwNWxwWWExZ2FMSkZtTUFwRFhucmxGL3dmWC9pZkNaUUVjZ2ErbkxTZGxmRkk5N21wTmlXMUhYd1p0OVdxbEhiV29SZzVmdSt4Zjh5MVZ4MWtvYjBUcFRSdTVLS2RsVEtzTEszRnZOS3FwYTMzZ2dTUEtNYkQ4N0orLzVuZC8xa2IzWTNIWnlhZ3VzbDh0WDcrdXVVVDNsdXVhZ2hoM0p4aDByQkJJNldpYmRxTWlpRkZtYk5uY1Q4ZnY2OUwya3A0OGhkL0EwQ1dkV0srcklLczI0cEN1SEFiZDZDaDRlOHBqV3RCUTBORHc2VWlLTVJIb1pObUNVcURycUtNUm1Wa3FvUEhjTnZCZTlpK3NKZDIxcVBNUFlreE9PZk9zL0R6czlwZlljKys3WXhjbnpmZWZZM3VYSVpwQzA4OTl3Tys4czB2amtXc3gwVVJPKzR5TUxNVHdDYUZYdU9PV0NsbFdhSXdiR3Z2QUZHTVJpVy85Y0RuT0hUdGpleGV2SXBFdGFJTlZ6QlltOUZLMjFVeDE4YXZxR2t2MXlzZEVVRkVvY1dTcXBRMHBIUjBoMnQyWDgrOU56eEFRa1l4OHJSMUJ5V2F2RC9DRnc2ZHFJdE5rVzVvK05EUVJHUWJHaG9hTGdrYXBTMGlBZThjUWVuWWZDc0loU3RRR0pSS1VXZ2VmdUFUN0ZqWVRTdnAwVi9wMDg0NjVLTUNiUzhtU3pUUTdxVXM5Yzh3OG4yMjcxbEUwcHlubnYwQmYvUDliM0o2ZEd4S3hQclpJZTBOWGxycnFPYTEwaDU1bm1OSTZab2VhOE1SQ1MwZXZ1MFJIcnJuNHl6YTNTU2hSVm1VbExtUCs1d1lKQ2k4RTliSFdxYkY2eWJkZVM4SjU0b0duU2VGbHFDaU1abFNDa3VLSzB0UzIrS2FuZGV5YldHUnN5Zk84UHJLYTdoUTBrdm1XU3ZYRUJ4SmtwQmY1b1Z1RFExL1Z6UVIyWWFHaG9aTGhMVVduU1FBbFJOQlJGVzltM0x4WEx2ckJxNjk1aURXWmlDV1VJSlZKbWFiWGtSVVVwU1F0RFRIVHgyaE5XZFkyTm5pZXovK0RsLzg2cDl6ZXZRdUdvK25SQ2czS1VLRHVvRkNtTzQrTlRNV3J5R0F4cExSb3ZTT2hJeVAzL1lKUHZ2WTUraWxpNVE1RkxuRE80VldLZGFtZ0tiMGpySXN6N245bDBORTlxSytRRlZBVzhHcHNuTFpWVkFxWkFodHVselZ1NHBQUGZoWnJtbGRSMEtLbEpDWjJCQWlIeFJOTkxhaG9hS0p5RFkwTkRSY0lzcWl4TGJTOGFDOHNaQW1LWGsvUmlQYnVzdW5QdmxidE5JNXhGbUNlTFMyaFBlWW0zbHVBbXZEVlJaMzkzQU0rZXZ2ZklzdmZlMEw5RGxEYWcxOXR6cWJUbEFqbHNtVFcxaHdDWUNtTEV2bWtnVkdaUlN4bjdubnM5eC81NE5rMGlHalJlNER5bG9TYTZzV3QxWHVyZEVrV1lwVVByRVQwUnFsb3hZSW00cnJLd2NCUWlLNEt0ODF3V0F3T0tmQmd3cWFRM3NPOCtEdEt3eWZIbktTNDlpUW9KVWxxQ3BYK2NvK0JBME5Id2hOUkxhaG9hSGhFcUxRVUJVRkdnTkZVU0RWQVBSSGI3Mk5lKzUrSUZhdkM3Z1NNcHRSNXU2OGhZVG5YM0hBdGhSWkI1NTY5dnRWczRNbHJGWVRFUnROQmlhSUpacGVWZDNBNnFjM0xEejJwMUpvaHVXSWpJeFAzL2NaUHY3QVkrem83VUxsQ2pjUTByU0QwUWxLS1lLUCsxNFVCU0VFVEhMdU9Jc1dqZG9raC9aS0lhaEFTWUV6QlFGUFVHQ1VJVlVwU1VoUlEwMitWSExINGJ0NDRJNEhTVWdweFUzMitWSjdqelUwWENaY3VYOEZHaG9hR3E1NGRJeXVqaXZpd1ZjMVhOZnRQOGlqRHorSzFiWnFDbUJ3THBBa0dkNTdqTHE0UDk5QkJRbzM1SWRQZlk5dlAvRU5ocXpTU1ZPQ0toQWMxU2oydW9oc05NNVNKRkdBbitjckpOVXROQWtmdi90UlB2SHc0N1JzQnpkMHpHZUxoRHdnUVZHR1FPNUt5dUR4SXJnUUtMMm5jRzVESHF5VytGQ1hTNExzeGFDRWtoS3hndGlBYzBVOHY2U2tLc09FbERBSWRFeVhXdy9meGwySDdxWkRoekR1VzN5cGQ2Q2g0ZktnU1Mxb2FMZ0MyQ3dmVUU5Tno5TmphUU5OWjZBUEdyMXV1cDZ3YmhwL1ZvbmdRejRXSmxabE9QSHM2Tzdqc1k5OWhsc1AzY21wNDhzc2RuYmhneU1FQVFNaUhtMFQvTmgrU2xYWGlFWnZadGxXRGNPTGlpMWVnd0pSSmErODlRSi8vZDIvNHVUb0NJa3lyQlpuOFpRb0RhRTJSWmlwVWhJVWdYakZ1UzJjQ2pRS2d5SEZCK0YzSHZ0dDdyLzlZYVNNYmxVSkthTmhUcmM3eDZBb0NSS0xuWklrUWFtVUVBTE9lVUlRRERwR3AxVThYblhqQmEzaWtkenErcTJ0d1lMaW5FMGpsRng0MFppU3VsM3NoYVBFWTAwS1hsWGV1QUZ0TXF4T01DZ1c1aFpaV1ZwbFlkczI3cjN0UG80dkhXVndla0RoUU9vN25pMGFUMnkxVzgxbnZ1SERSaU5rR3hvdUFoR1pmRkhXQW1KR1NHejBwSndOY0UxK20vYXBySVZyUFZjTEczMHNWUUExZWEydUpNYlk5a2hEclhNMi9mSnFvam9YVFR3L0U2UC8rQ2RWVDgwVk5HQ013dmtjSVdBTUtBMmxCNUdKZHl6QlVnd1R0dHQ5ZlBTNiszajB6czlSbkJZVzlDSXlFbEp0UUVPZUR6R3RoRExVUlVLVko2bG90Q2dJazBpcDl4NnR3U1FhcngwQmgwcGdiZTBzNzV4OGhmLzEzLzhQZUFaQXdGZmVzQm9JNjY2L3lYWGkwRGdnSndBbUFlL2pmSVVDTVdnTWhvUnQyUzRlZStoeGJycjJGdWJiaTFBWUtEVloyc0VYd3BtbEpiYnYzRkdsRXppS1lZN1dGcTBzU2tVM0I5RWFFWTlSSG1zVGxQWTRWMUNVTWYxQW0zUzhyM0VUd3pndFF3a29RdlZ4MUJBazdvL0kyTmJMcjdzRjNPQm9WUjhJWWNQbnV6NGs0NXZDcWMvbmVuR3JObm0vUnRCS0V3cUhDWWJVeHZhMVhod1NYSFEwY0E3RTBWOGFjdFhDSGo3MzhPZVI3OERicTIvaUpkQ25EN3JxeUZhcGQyczBpQ0IrOHc5M2RTdFE3VU9UWk50dzVkTUkyWWFHaStDaVc0Uyt6K1dyYWR1ajgwU2JHaTRsazlzV2hjYjdjaXl3dkFjVDRrdE1DL3dJQ0pDYURqMjlnNTF6Vi9QN3YvdlBrS0hCQklzS1VSeUxDZ1FWRURYbEVEQytpUnJmOHNSMWh2aTdpR0JUU3hseVZvWkxwRzFOeTFwZWZlc2wvdktyL3haUHZxbVllYS9YbGZlVDdiQTJSWXRGT1Uwdm0yZStPOGNkSDcyRHhlNE9qREwwUnlPS2tTTzBBNTNXSE51elJVNmZPazZhdE1peU5rcGJ2QWRYQm56d1NGQTRWMkFRZ2dvNEY5MFRsUEpZYTdIV01zckRsTmVzWitQNFJLeUlVako3ejNZeGtkaHA2bVc4WHdlRldLd0dKdWpxZk1ZUHRxaTQwQmd4RHhpalNGU0NOZ3FjTUpmTWMvT0JtOGxmekRuT2NjQ0M4c1F3ZmR4djc4TUdRZDdjc3paOG1HbUViRU5EUThNRlVrY0JJeHB3TUpVN0dvZkd5OWpXdFk2RjZmRW9QWDVZdlZTaWlPdDI1L21qUC95dktBZUJ1VjZMb3R5WUoxb1RvQ3I4bVgyQnFGQ3RQbUJNUUNXQjBkb0tXVWZSVzhqNDRVKyt4NWYrd3hkWktrOGc2QXVPeWEzZnJsQ25QcURvNTJzbzBmeFAvK3AvNU5wOTEzSG91cHU0ZXM4QkZ1Y1dLSldoWHpwME1DenVXaVNVZ1NJZjRmSkFDR0IwUW1vempOR1VoY0ZVK3hKQ0lQaDRmSlZBRUYzZDJFMkxlTVlSVHpWelh0WnR1NjdtWGVicUxvUXdEZ2FYVW1KVnd1RkROekljRGpuNStta01HaDgwYUkxU0NnbGhmR09pOUtUeDJHWUdCNWY1cmpjMHZHY2FJZHZRME5Cd01TaEFwbVdDVUVjRnc5VC9FTkJLWTR5S0haMUNJSGhvMlI1QlcxcDZqbi82Qi84WjRoUjdkbDNGa1RkUHNOalpQbDVxak5KQlVESzF6Rmg4TlZsdmpPNkpDakY2YVdGcGNJcFd6NkJiZ2FlZi96NWYvdm9YV0NwUGtsb2JjeTNSNDRqZCs1a2lJVmJPVjlGbEx4NGs1cldXakZncFBJYVVGOTVhNHBkdi9SeUZaWkVGcnQ1L2dNT0hidVNhZmRleGUvdCtpdHdUUWlDekdaMVdGNjB0K1dqSWFGQ1EyZ3hVZ2xFYWl5RlV1Y0RlZTRwUmdjNlNxY05lQ2RvcVFqdVJyNWZ2OExtY3cwSk1TVXdSQ0s1RUpURXBXRm5GcnZuZDNIRHRZZDQ0K2lhdmpGN0Zpd0VmVU1vQWFueHpGVjB0Wk9xcWFDS3pEUjlPR2lIYjBORFFjS0hNSkQ1dkxPaXFJNjhLMEVxanRjVzdRQkJGak5jbWxEbnNuTnZGZi8xSC93MjZiSkhZTmt0blYrbDI1cGcwSFpobFBLVE50QVdWajZrSGVGQWVVUTV0RmE3c0kwbkdzeTg4dy8vMVozK0NvMkRIL0J3blZrNVUwVHU5b2V2VWU1MHk1V2VyRkNnZEk2ZTYyanBmcVZ5RndtSTV6WkN6UjA3d2l5UFBrdEpsVjNzL045OTBLN2ZkZGh2ZHhUME1pclBrL1lMVXBIUVg1eGl1cm9GTENVRkRNQmlka3RvTUxYNHFJbDF0VXpXMEx0WEJVVE9SMk9xV1FrMXlhR2NPNUdXR0ZrMVFnZFJPSENxTU51UmhoSldFL1R1djVyN2I3K2ZvMDhkWXhzY2lPQkdNTW5nUmhJQ2d4eDNacEZLeDBxalpoZzhoalpCdGFHaG91QkRXSnlGdVJpVWNGS0NVd3ZsQURHTnFOQVpGeW1LMmpmL2luLzlMVkptd1ovdGVWcGR5aW43QnptMkxESWZsV0hTTUkydFZaRFpHN0txSG1vaG8wZEZSd0pzU2pLZTNyY1VQbm42Q3YvcmFGM0Nza1JqRjZiVmpzV1BYdXNLMDl4bVRuZDNWNm1sdEZFb0VWUFE4OVVHcXBJc1NFSHoxWGtmQnlhSGl5UFB2OE9UemY4UEJ2ZGR4MSsxM2NNTzFCMUdwc0RRWU1OK2J4d2FGTDZFWWpCQXZHR1BReEtJd0pGVEhnaW9TRzZaRVdwU3lRVTJFL3VWSVVBR3ppUit1bG1qTnBrUVRuS0NOUmdkRHVlcElrcFFicnIyQlErOGU1TlhqcjlFdlZ3a0lWcGtZR1VmSDRyUE5rbVViR2o1a05FSzJvYUdoNFdMWVVPbytOYXZTZlhHMnJXUmpBbWk2ZG9HRjlrNys1Ui8rbC9nY2V1a2lLMmRIcUpDd01EOUh2ejlFNitwUGRKVXFzTDVWYkoxWU1LNmNWMEpRRHRFbG9uUE9ycDdoeU1rMytmcTN2OFNLTzgydTNZc3NyWnpHNVRtOStUWnJxOE5LQU5aTGVUOVQwTHBPazZqV0wrQ3IxQXBmMTZTcEtDRlZkUnlNVWdRUkhDVUZBaGhhSkx4dzlGbGVQUG9zdTFvN3VmK3UrN25qbGpzNXRiTEtZbmNuV2RiQmlNSVhKWVVVR0JYd09tQUFOVTdyRUxUb0dWY1BKUnNUTCtyamRMbEdZNmZ4aFk5T0J0N2p2U2V4Q1hsUlVPUWxyWVVPZDk1OE40V1V2SHprRlJUeHhrR2ppWm15ZnFOVnlsU2hhQk9WYmZpdzBBalpob2FHaHQ4RUVvV2RFbEE2d1lqRm9WQ2tkSk41dHMvdjVnLy94Ui9oUm5Ed3dDSFdWZ2Fzclkzb3Rsb29VZU1oY2xUWW9EbW1xK1FuNGl3UXRFT1VSM1NKTnpudm5ucUgvKy9QL3pWTG81TjB1Z25IVGh3QkRWbFBzZFlmanBlL01TM2l2VTFGMXJuTkFkcEVuMWVSNkdvd25sMHBTcFhFWjF3UlNCS1BjNDYxTUJ5bjI1NFlIZVZyUC9vcnZ2bWpyL0daKzMrTDYvWWQ0dW85MTJGTWgyQXRvZ3BFRkpKRXk3Q0ovVjIxTDZJbUVkcEt6SXFxM0F4a3l0VkFiUjVaL3J0R1Y5SFlvQVFqMVhtc25sZEswYzdhRFBJQmVPaTAydWhDMCsvM1VTVWNQbkFqYjczN051OGNlWnNSSXhEUW1DclZvTnJYUzcrTERRMi9VUm9oMjlEd0h0bmc0d3BWbWN5RnYzOTloRzJyOTB4VHR5WlZTalZSbFV1Tk1kR3N0dzRDVnQxbUpVeEVyRlVhUXdaaVVSaGE5UGpZdlovZ2R6NzN1eVN1aFVvTXk2Y0hLQStkckljNFJZbkhtTmtlcENLQ0lMR3pVMlVwRlVPK3NTdFVVQVhhQXNweFp2VWt4OCs4elovOHYvOEtUdzU0K3YwUlNzZEFaRDZjRER1ck9uZHlLbHBYMnh2WHdjNTZkRjdXWGE2eXlXaDk4TEV3RFpnMURLaWVLK3YzR0NqTmFHejI0RU5NdVRVR25GY0VITjk0K3F0MDJjWkQ5M3ljR3cvZXlueDNPNTMySXNOOGhEVUphZEI0RnhzcVpHa0dRUkVLRjF2Y0dnTkJxaVlRc2V4cE1wWHBUWm82dnVzK2M1V1A3RmIyV3VQWHl1em5lOFBMMTg4WHBobzliRTVRQVJVVXcrRXdaaGtyeGJBL0loQm9wVzFjV2JKODlBeWYvdGduT1h2eURDK2ZlSkZVWlRncDBHaVVOcmphU0xvK0QrZnFJdEhRY0lYU3RLaHRhR2hvdUZDOEI2V3hXWUsxQ3ZHeEk1WUUwS0xRV0N3OUpDUUVFcllsdS9sUGYvK2Y4M3UvKzU4d1dndW9rS0ZDaGc0SlNJb0tNWDkybGpDT211bzZ3bHRGOFZiWGxzbXloS3lkTUNvSGFCUG9MclE1ZXV3dC91S0xmMGEwQTRzRlRrcEpMTWhTekdSRDFLbVUwK215V3NYSXFsS2dxZ2lyMGxGa2FodW4xdFp2c3JQdGFxZks1R2NFNElhd01qRTRLa0FLcXEwUkJTTWZjMmw3N1FWYXBzTWFxM3pyMmIvbVQ3LzhwL3o4NVo5Um1pRzJKeFJxeUdxK2pHMHAwcFpsYmJqQ2FuOEpZeUJ0cFhnZlJaeWFqdEJPYmNhbDlqTFFvbWFLMWJTb0RTNEdZZXIzT25LckpCYjRHZEVzWnZPNGxZTGJEdDNDSG5NVnVReEpxdlBoNnM1ZjY1a3BUR3hvdVBKcElySU5EUTBORjBJOU1oMENibFFuaWNZaUxxTXRWcWVVWHZDU29FaDU4UFpIK054bmY0ZE9lNUd6SjljNHNQOGdxeWZYMEdLbU9qOXBOcE5hMDQwd3BtWHU0dndjbzd4UElLY3psN0s4ZHBvWGYvcHp2di9VZHpqVlAwN0FJYmhxcUprNHVnNWpGV3R0ak96SHJuQ0NEMElJTVJCWkYxR0pyUHRkVGJwL3Fhb0JReHpPcnJldVRqdVlkSnVhb2M3UDFFQUNxbTFSSGtMZlZVUGpHbzltZWRpdnVvUlpNdHFjekkveGxSLzlGVDk3NldmY2NjZGQzUEhSdTVucjlDaUtFVDRQNkVTUlpTM1FDbkVlcmErTUVRdFZkV1NyNDdqVFlsYW0ybFdzai9NcVViUjFpelBMZlc2NS9oWk9uenpGcVZkUElDZ2NEbytiZmNkMENvWkFJMlliUGl3MFFyYWhvYUhoSXRER29KVkZmQ3hpVWxoQ01KUll0bVc3NkhVV2VmelJ6L0RndlE5QnNHaVZrclZiSEhuOUtQTzlSV2JMa1RaanVxbG9GREQxYTQyRlVUa2s3U1FvQzcvK3hhLzQ2dGUrekhJNFJkdTBHUG9TUWFQSHJYT25MQkFJaE5MaEs2T202S2NRMVdxOWh0VEdWcmhVWXRZcURRWlVpRG04V21YVURRcGtPdEtucHNld3d5U3lPQ1hTZ2dMdkFyTHFZc3BDc0pWc1RXalJwcFYwdVBuUXpTUkpocldXTjk1NGk3Zk92c09iWjkvZytCUEhPWG5tQlBkODlGNjI5Yll4MTV0SE9ZMGZsZEhaUU13NHpLeW1pcnFpclpYRWtQbGxrRHVxdHlnNEc0dlpxU2p0V09oT1hTY3lFbEtmMGpNZER1NC95S3R2dnNxNzVUdFZzMlJOT1g3aDFIUXFvK0VLMFBrTkRlZWxFYklORFEwTkYwaXYyMk13R09HQ1I1RmdhZEV5UFhSSUVUSGNkK2ZIK2V3blA4L09iVmV4dExUR1hIc2UwS3d1RFZpYzN3NXVNdHd0eUZRM3FtbnhXb3ZQMmd3MGlsbFJ3c2xUUjFuWU5zY29YK05uenozSDkzNzBCTXRoQ1NFdzhvTVlpUjJqeDlPcXZJaGVOczhnWDBNUURKRG9oRUNZNUhNNk5SWTlHb2xGVms1UWxWK0NsN2g5R3FuVFNhdHRuZlpTaUo2NWs1OG5kRHR6OUFlRDJDeWh0WjJReDNYY2R1Z09IbnY0RTh6UEx6SWF4UjYraHcrZTRxMGpiL0RjejU3ajFQQTRULy84Qjd6ejFoczgvT0JqM0g3ekhZZ1hSc1dJbHU2UW1UYXVjR1M2RlIwS3JrQ0NpdWtnTmV1RnJCYWdET3pvYkdQbHhESTc1eGE1NDliYk9QbjhNVWFjTzMrL1NabHQrRERSQ05tR2hvYUdDMlJ0YlEyRnB0dGFvQmg1QkVNblhlU1JqMzJTZSs5NmlFUFgzc2hiYnh5aHYreTRhdnNCVHAwOFF6N3NNeisvaUVIaFpvVG11c29wSlpNaXNxbUlXbDJsSHdqczM3K1A1ZUVaWHZqbFQzbml5Vzl4Wk8wdERBcER3b2lTaVF5dHJiLzBWRDVyWUpTWHhGNWNta0RBQjBXb1VnV2tFczZHR0NtdFJiSER4V0tpcXMxQnplWUZGLzZjYnJUbHdOR21oNkRJUnc1RHdsM1gzOGREZHovQ3Ric1AwdS8zNlhibWFIVmJiTisray9tRk9VNHZuZVRVUzhkd2xCeFplb2UvZnVJYkhEMTZoUHZ1dkorOXUvYmgrb0ZSZjBpV1pFamx3N3Joc0tvcHQ0Tkx5RXhEaDdvYjNKUjREU3AyYVZPaU54R3lpZ1JETCtsdzR1UzdaTHZhM0hEdElYNyt5dk9zOVZmajhtcVA0YW5ycDg2UHZneDJ2NkhoQTZFUnNnME5EUTBYeUs0ZE8xaytzOHBvTk9McVBZZDQ0TjZQYytkSEgyRFg5Z01vbjdHeW5MTm4xN1gwbHdhOCsvWkpGaGUyMDhzV1dGMWRSbXROa21UTWRBS3IwanBuZzRoVHZxMVFoVzgxV250T256bk9DeS85ako4ODl4U24xazZpQVlOQkdlaW9EcjRhWE5aU2R3QXpWVTZtQlFJRkk1U09WZkRhS3ZwckEzSkdLRFJ0a3pIeU9RWk55N1pCQzc0TUdDbWp1RjNucWpCTEpkQ0N6T1RXVGs4QmNobXh1N3NITnhUNlljaUI3aUVldnZNeER1Ni9pWldUeTFqYklzOUxWcGZQNE0ySTNUdDNjL2NkZC9MR202OXhjbmlLVHRybHhPZ29ULzdzTkFURmczYytTQytaUjJ1RFRReFNoT3A0WG5sMXpWSjFJUXNxVkVraDYxTUxOS2xLS1BzRnJhU05EcHE1Ym9jYkRoN2krQXRIV1NZL3AyQzlERElyR2hvK0VCb2gyOUJ3Z2J5ZkVjdHpOWDY2Y0VJVnNZbWRuRVNGamY1STQyUTR0L256SHdRWDBoVHFnNWoreHFnSFphZTdYdW1aK2ZGL3pmTHBnanR2ZVppSEgzcVVRd2R2SmpVOWlpRVVhNEhVS0h6aEVZWjBXbDA2bVNZZkRsRkswVzEzRUJHOHpLWVNJQnBWZFdiUzQxTVpCYVBnNC9uV0hvaGVzVm1TY3VOSERuUE53YXZCQ2lhSkhiU2NLL0JTa0NUSmVBK29CV3hWTFM4cXZsYVoyRmIyeElsai9Pem5QK1dGRjM3T1NFWjRELy9pbi83bmROczlPdTFlYks5YmxMRmxxa2xJRWtOZURHZU9YTDNKZFlYOVp2WnhOVXJBQmswb0JYR2ExR1FrdW9zTkdmbFNTZGNzVWd4emRpd3NrdnMrUzhPVFpKS3lmV0U3TzNZdWNQTHRZeXdWSitpa1BTZ0NUNzd3TGQ0NThoYWYvOFRuT2Jqdk1LUFZJVllubURvZ0tkUHIxalBiT2Q3V0toOVZWVG5Fc3VVSEpVYTBMeVpyNFh3ZndYRk4zTlEyanQ5VFBlYzFMQzh2MGR1MnlNZ1A4TGx3ZU85aFhudjlWZnByQXp3NUxvUU5EZHhrYWg4YUdxNTBHaUhiOFBlYTgzMFJ6WHdSanowajY4Z0lzWHZPaG9WdVhLNFdOdldSbmY0YW1aNC9QWlM4NWJiaGdSekhpQ3d6NUVYMDVOUW1KRUJ0WmdBQUlBQkpSRUZVUGx3NThmOGNiOXBVOVRzd1NWM2NBbldlYjlzUXVDaEJLdWVacjlUR1NONTBSRys5Ym84YnpkaG1LcHlySytuVXNQM1lTN1VhZHRmVU5sZ0dTd3VGcWRJQU5CbHRicjc1Vmc1ZmZ5T1BmK3l6S0VsQU5GSkV3WnY1dUF6bGRQVUhOdUNLQVFDMk90NCtPRVRWQSsrTUkyNUtkTFRna21qNEttSW9YTTc4Zkk4aUREbDE5bDNtNWx0MEYxSk9uRHBEcWxza1dYekVHNXU0UHBJNHJTMm9Ka3dFWEZDUXRGc004bFdzVmJTdm1lUDR5UlA4L0lVWEFKanZMYkI5WVJmdHBFY3JuU05SS2NFb3hNZmpZSFVnVDRhZ1pDejQ2dHFsTUpPRnlmaUUxY1A1aWpoY25vbGhOTWlSRk5xdExrakNhTTBSaWtCaU15UUhzNXF5cTlkak5GeEY1NXBlMXFZc1I0aktjYXBreFExUnltREU4dHFaWC9DWDMxemo0M2MveW9OM1BjeVpZMHYwc25tc1dQSlJBYUxwdE5vb3Bjanpza3F6cUsrSEFFckZzamNKc2VoTkp2dFZONmlReWlTMy9sK1BiMEttL2o2TWY1VEo3ay9ObjN3TUo4MHVaTjNmRnhTWXFXS3cycGQ0WWwwcjVOb1IyaVk2U0lTTXNDeGN2WEE5RDkvNkdFZWZPZ1lFMnUyVTFYd0FCa3lpOGFPQUlzTUhQOTZHaG9Zcm1VYklOalQ4QmxtZmh6Y3RKT3M4dmFBMnZPMjlJWnJTbFlnUGxFcURHRkJDOEo0UVFPdDFRbTY5aUlWb2FIK3gwZG4xb3Z2OVROVzU1MC81elcrY0NtaFRLNmZLcHFnUzFsSUozalN4MFVYVkI3ekllRDRUcllEUkNhbEpDVUZ3UGlBWVRGVzRWZUFSTER2bnJ1TG1qOXpHWFhmZHczWFhYaytXZENoSGduR2RLR1RaL0VaRWpXOWF0aEFMYXJLRFNpVGU4S0RHZWF3aXd2WnRPMW51bjJYb1Z0bDd6UjdXUnFkNDVoZlBzclJ5R3F0anU5dXRDR0Zya1NJbzh0SkhBMzNqR0pVcnZQN0dyOGhsQlNHd3RIYVM1My8yREludDBqWnpHQ3ppTk9MQktNRW9DQ3I2MUFZMUViRUNoT29PU3RaRk9Pc2lzN3BkclZzcjZiUjc1SzZrUHh5d2JYRW5OMTUzQy9NTDh3elByckI3MjI3V1Z2b3NuZTNqaTRDSVpUREtHYm9DcklvM1lnTGlQZDdGUklxamErL3c4MS85bEtJb3VQZTJCM0JGZ1hNT1phTWpndmVDZUE4QnRKb0licWt2bittN28vRWRwWXB6eFZKZlBJTEdYS1Q3d1RtSC9Xdi8yNmtYNjZuUFJGRGdqYUpVQVNlZ2d5VUpLYW0wMk5IZXlmWGRRN3pjZjVGaU9LenZ6L0RGVk4vZ0pybWc0VU5DSTJRYkdxNVlOTjNPZHFCTmNBRnRNb0lmQVE2bEFscUQwclVwdks2K3QwdzFmRjE5Z1orbjR1VmNRZ2dWeGwzR0xwUzZDOUpXUVZtdDFKYnpVYkg1UUxXa09pWTROdmdYZ2JLWWVuMDFWYUl4T3JiLzlONGpRVkdFdWdBcVJsejNYN1dmblR1dTR1Njc3bVBQcm4zczJiMFBhMVA2L1NHclN5T0dtamlrclM4ODkxSkpkQUtZZWFLSzhBc0JsQ2FJc0RvcVdDdVdzVmxndWIvS1V6OTlraWUrLzllc3JwMWhGTll1ZVAwQmpSRDlTeTJCZ2lGUUFnRUZGUFQ1K25mL0hFZ3hwRldVdW5hT0RkVXhyYTJocGxybHNyNGFQb3lQdjU3NlhWY1I3M216UU9rZGE0ellrZTZpQ0gxdVAzdzM3ZDRjZlpZWTBLZmRhdEdaNitEMGlMZU92Y1B4TTJmSWc1dHhGRk5hRTBLZ0lPZmxZeTl6NnRRWmR1ell4YTc1M1N5MHQwTUpSVEVpa1JTajdPd1dxb2xBZkQ5SDhGS2ppVGRBM3Z0b09VWTBBVjZjWCtDak45L0thOC84aWhHUUpRbUZLdU0rR2tVSWsrNW1EUTFYT28yUWJXaTRVaEdEY3lsVzc4Q0ZFY0Y3NGtmYVlaVENsUVh4eTdZdUZvb1NKT2FBeG1LZjJHTDBBcitRNVNMZXU0NnRoS3hzOGZ4RVB1dHhQRExHbURiK2szWC9JSTRjQzNEOTNrUHMzckdUQXdldVpkKysvZXpZdm92NTNnS2R6aHhwMG1KMWRZZ1dReWdOUmFGSjlUemQ3VHRwSlMwU203RjZkdVhpOW51Y0p4Rmk5SGJzdnhxSC9ydTlEa2RQSFdQYnpqbVNqdUxKSHp6QkV6LzhKc2RXWGtjb01XUFpxQzlnT3BIL0JmbFkxaWdiUFdOREFKR3k4cGoxVlRCYjhJUXE4VUxqcDFKcjZpMmZGcldUc3hUR3I2blBWWjNDY2NvUEVRS0M1bmd4NENjdmZwZDJMK0dlbSsvbDNiZFBrTnFVZEc0YmE2TTFYbi85Vnp6enkrZnBoenptei9nd1hyRTJzZEF0aEpJY3pYRjNuSzkvOTJzOGN1K2ozSDdUUENLYXZKOWpFa1dhcE5WR1Q4bHZGU1piK0I2U1h5OTlQRlBOamdLbzJNYTJLQXJTVHNxQnZRZllPN2VQWDYrK1J2QU9helNsQkxUV2hQSmNPVGNORFZjV2paQnRhTGhTRWN2eUdjZEhibm9RNXdxMENaVEZrQ3d6MkVTeHZIeVdMSWxKbWVNSXJGUmlWaXdUYy9vTEY2T3lhWkxxOVB4ekM0SnhwSzVLc1ZnL3hZZE5uNjhEeVpvWVdkVmFiM2dvcFppYm15Tk5VenFkRGdzTEN5d3VMckt3c0VDdjE2T2RablM3QzVSNVFaNlhsRVhNc3pDUzRuTkxYaGgyYmJ1R3RlVTExbFlIV0p2UzdmVXd4akpZSGJLeWNvYkZ1ZDRGSDd1NC9Zekg1R1VzcEFKQmUwUUZSaUdRdGdOcnhSbGVmZlZGbnZqUjF6bXk5R3MwT1FHM1dZYjIrNktWcFlUZ1VCSmp3VUZOQ1ZGZFBSY2NJbTVjOGxZTnNzOWtoWVIxUDAvdEZqRFJoWk5icWZoS20ycTh6eEVkM1EzS1FuamwrQXZJc3dVci9SUGNlOXZIU0RTc2xHZjQ1VnN2OHBOZlBzUExSMTZxbGxwRklDVzJLd3NoWUV3QWJSQVhqODJicTYvVGVhbE51OWZtd0s3cmFNKzNVQ1U0eVZIYXpucmZub01OdWVXemQxT1hEUEVCcSsxWXhBS1VaUWxGb04xcWMvaTZ3N3o1d2hzNFYxWjUxNkVLK2dlME1RUi82YVBLRFEwWHkyKzgvcmVoNFRkSGo0TzNmSXIvOXIvL1l5UWtJQm1LbE9BMTFtUTRYNkJVQU9VWVIxeGs2cXRVWW1QT2N6RXR4RFlyMXRKYnZILzh4VDMxNmFweko4ZkxxZE03MVdSK1BSMFh4YXpQc1ozZE9yWXRkSG5qalYrenVHMmVFRW9HL1dXUzFHS000SHhCWm0yMW5PbkJYVTFkOVl3NjkvNXZMQmFhSnB3NzlZQnpweWFvS2kvMFhNR3Y4d25oY3BUSEwzSFJvQ1g2bjZvd25ocGxZMEZlVUJNL3ptbyt3TnJhQUkwbVNSSmFXWWZNWm5qdkdReEc1TU1SSXRCdWQybGxIWlFJdzBGT1VSUVlrNUNtRmduRitCaHVtaU83VGlsTjc2c0c4S1o2djBjb0VlWHhxb3hpVWdkY2NMVG1Fbjd3aysveHBhLzhlNWJkY1lRUkFZZk5ZdXJFaFJMek1DZS9TSjAyV1gwcjZLektzWllZb28yaTI2T3FMQldsaUsxbG1jcVBIUmQ3TWZQdG9xZjJYY25rYzFISTFEcnI3Ukd3UXVWZm05RmhIcTBUVmtLL2FyanJJRE5ZQzVMM0VWZE9TcWJxRFFzS2hjR1FZa200NWFwYmVmeUJUM0xEL2h2eGZTajZuclp0VjM4RHFsV0xoN29aeFBxTFVsUlY3Qlh6bG10L1ZpM2huT2UvZm01OXNlZjA3bzVYc2NuODZjMm8veTdVcndzS3ZIaVVpcEZ0TFJDY3A1QUNaM05DeDNOeWVJeS9ldkxMdkp1L1MwR0pueW91TTliaTNVVmNRQTBObHdsTlJMYWg0WXBGY2Z6WUdlWjZPMm1sSFh3b3NhYU4wb0l2UytaNkdjTmhINWkyOEluVjhHcEdQRzh0RnVWOE1iL2d6eTJHenhHeHJiOTR6eVZrOVRseWNCVmcwMDYxSFJPaEd2Q1ZnWHpBcWlRT2k0dmdnOE03bVFoYkVYWXQ3Q01mbFl4R0kxWUhCWDFLa2lRaFNkcDA1dVlwaWdMdmhINCtSQWtZWTJsblhaUlN5SGxFL0htUnl0MGdhRVRQTHF1T3lKWVV2UEdyVjNucUp6OW0xYTBnQ0VtYU1DcGRkR2U0S0h0VVRXYmFRRUJVd0lVU0g4SllUSWE4S2lDVU9uNGFCZmVHeUdSdHVnK3p5Y2pUK3lONjh0cnhDNnJZcjZtci9pRnJxZGdXZDFqZ1NvZkNNOFJETUNobDhGSkdvZXBLWEJFanlSYUQ0S2FFdUlBUlJBTGFKTGd5NTZWamY4dmNMK2JSR1BZdTdFTm5DYVV2U1pSQnhta1drM3pmNmJhMjliRUNtU3EyQ3VmNjJQeWRvQ1ZtVnRqRWdJODNuZFlZTXBVZ1VpTE9NOWRhNEticlBzTHBsODlNdGJQd1VjVDZSc1EyZkRob2hHeER3eFZNdXpXSFVvcWxwVlc4TCtsMk94QUNxeXVyYUozZ1hmeUl5MHhxd1ZRQVRNNmRZeWwxQWNsV3VaWXlOVldiVEFPYlAxKzl6NUxHcVBrVzd3OSs2L2VMQ29nUFUxSGJXaVNaU21NWUNxbUtwd1RBb2hVWWxhSk1qTmN0bnhsZ3JhV1Z6cUV5UlFpQlVEcktrYWNraW15dE5UYko0cUtESUZXaFRHME5kbkhvYWhrYVFST1VIMWY2aTRKMzMzMlhmLzF2L3grVzNDbkFZc25JaTFVQXlueXlqQXRDTkNQdktrbFozYkFvb2tlWVNzQjVJR1VTb2lVcVoxWEUzd1BFNFgwekNlOHFOdDdZVEkrQ1VKZUx4Wit0c1pRdUJ4d0t3UTBjam1JcU1DemtqT0plcWlvcUtxQk1oZ1NoSGxNeE9obEhzcWR6SUFvM0lIWTEwenovMm5PMGJNYkNmWXZzWHRqTjRPd1FVZG5FV2VKQ2lyM09NNkx4bTBaRVlzNnJENFRnTUluRm1BVG5raGpaOWlVSGRsL0wvTXQvaStOVWxlMHNKS25CaitxRlhOSmRhR2k0YUF6dzMxM3FqV2hvdURCU3R1MDZ5Q2NlLzN5TUhHRlJHRVFVV2x1QytOaXJmQnd0bWg3SHJCNFhrT05aNTZNcEZVdUoxcjgyRGozS3pGUTIrN0pjTnh6THhsa3pnYTNwNWRjUEg4Q0hnRFlhbTZUVitpQk5Xd1FCalltNWM4b2dxSEhsK2FRMFNsZjdVUm1jMXEwd3A0V3ZtbjFlUkpBUWk2Z21MVkNySVZkMEZIcWl4cjl2TlI4UmROQlYvbUUxUDhSSXAxUVJVOVlKOFBWVExRcGQvVk1TaTd1UUdGR3JmNDk3T1RXL1NrVU5JV0JOYkwrS1JJc3VxbUZoclRSYWFZelM4Um9Ta0JEci9KRlk2eDhsd1NRN2RQYjhiM0grWkhMK0VNMW9VTEpqK3c2V2w1Znc0bWgxVWtyeE9POTQvZTAzK0wvL3piOWhHSVlrcEN4MDUwbXpoT0E4aUNkTlczaFJKRWxLSFZoWDJsQ3J1U1ROcWh4SWRZNkh3ZGJwRndqWXlyT3R6ZzJ3YVN5SVVncU1CbCtBQkxTdFBqcmppTzFVZVo1TTVSU0lSdGtFWEx3R3V1MFlGZlZCU0doaHBNM2VoV3ZRTGtHTEpTRWpOcjQxMUM2NzlTTm1NRmZEL3Q2aGlDa2lDb1VYSDYvUDZVVGUrZ1JJdlBFU2hOVXpLNlFtWWZ1MjdWaGp5SWM1N1ZhYm9zenhJVEEvUDBmcFN2cURBWFB6YzdneXJsVUw0L05lN1hqY3ZTMC8vOHl3L2lNK2V5TzV5ZnZIVDg1ZVA5T3BTUUJHV2NUSG0xR2xGRDRFbkhmajY5TDd3SjQ5dTNuMzZGRk9EMDloc0hnY2hlUWJsdC9RY0tYU1JHUWJHcTVvcGowdjF3MTMxdEhTY1FTc0Z2TGpGMHk5N2dLbUh3SjBQVXc4MWFscHhwWklWZk5yTndHQjZZTmNOMmk0RUlJSzJOUnkrdXhwMnQwV1dFOS91SUpKRmErLytUci8rNy83UHpGWUhyNzNNZTY5L3g1MjdkNkdOaVduemg3ajJlZCt6RlBQL0lDOE9FWlpqTWpTTm5reHJPN0xBZ3BEV1l6WU1wSmVYUStxS3R0S2pJbXBBOHJqRlNBTzIycmhoZ09pWlJ0Vk1uZTh4a0xKUkdFQ2RRTUI2cHpSNnJLMFdZWUtpcUFWQk0xbzJFZWgySmJPYzh0TmQzTG5SeDloei9hOTRCMUZzY2Fycjc3RWozL3lYVTROanhBSU1XKzRYcldhbkpLSlZsMS9UYTk3cXJxWE1rb1RYTW15bk9YbnJ6elBqcDNidWZQbXV5aThJcytIYUszd0VsaGVQa3VyRlFzRFYxWldTRzEyWVNmM1VsR2RBeTBhQXJSVWhveGcvL2I5L09yMHl6aHlCSW1GWHE1eExtajRjTkJFWkJ1dVlENkFpT3hGaGlUVUZ1L2ZJbFZ3OXZmM0daSGQ3SGVwSWxTcUtxdVdhcmhiUWR6dmFqY1Y5ZnpLamtwTjFkaW9Tb1RVMGE1NnV2NnhmajVVVWJGUUxldDlUaVdnSmY0K0VZenZiNnJHT2I0WDhsQXh3anFwekJvZnA3alB2aEo2ay9lb3FmMlB4NzdlbGdzNWY0cE9yMFBoQzNJM0FPc3htZUxwWjUvaXExLzlLbFluL01lLy93ZmNlL2NEN05xK2g4SHFDSEdhcTNkZnphRnJidVRRd1VPODg5WnJERWZMT0ZlUzZCamx0Z282clRiQkZTVGFZalZZcFRkT2xhcGNKendpQlFHWkRGQW9DTTZSdHFKcmdVWklreGovSk1UemxscGlSRjBwdEJJMEFhMENTbFczVGdwQzZjQ1hLQWtZQkl0aTMvYTlmUG9Uai9QNEk1OGhjNHYwN0hiU2tMRnpiaGRYYmQvSFhIY2VTc1hKbFJORXM2OUEwUFYxWFBkYnF6KzlFeS9jalFWYTFZdFVIWW1QNzFncjFpQUU5dTdaeDJKM2tlV3pxMmlqU1ZzWncrRUlZeXl0ck1YcTZtcGwwNlZqWEgrcXBaeXViMkMyU1BBKzMrZDJXbWVmNi8zblhZNVVZeUxqYXpndU5SYlVxWmdqN0J4Wmx2THUyMGRZWWhtUHg1dHljay9UMEhDRjB3alpoaXVZUnNoSzFTSnB3K3ZXNWU2cFRYNFN0Ylhyd25zalZBa0pNNkc1OXp5Tm9tVFN5T0Q5dmgrMjFCSHZrZW9tb0I2U1prckkxc3V2Ulg0bFlLZm5pNUl0bzdIdjVmeUpFa3FYbzJ6QVpNTGE0QXh2dlAwYVgvN3FsemlSSCtlZi9ONC9ZZisrYTFCWWNJcVdhWk9xakdMZzhRTlBabFAyWDd1TDExNzlGYU44Rk52YkVoTXBncXVjRytvV1o4SW1VMmlwTGtMc3pxV0JMSU81TGxnTFpSblBqNDBqMTRnUHFLQXdWWUpLSmhsaGZCNnJMTitxc3I1K0xHUmRVcDFpSlVHaGFOUGlZM2M5eEQyMzNVdmlXeVIramt4NjlNLzJ5ZnVPK2U0YzErdzdnREthbDE1NWtZSWl1aFJNUldSbmhXeDkxcWF2UVdZdUV5VzZhcXNycENyQlU3SzJ1b0lySFlldlBreStWbUN0b2QxdWd3aDVYaEo4SUVreUZEcmViTlhMRzkvQVRVV0V6L0g1UGQvdkZ5TmtsV2gwZGM1andWNTFOSVRxZVkwUmpmZUJUcmZOOG5DRmQxYmVSdkNVVXNieDJDWW8yL0Fob0VrdGFHaTRZcWtVQmhNeFhIL2gxczFBYTV1alNucHQ5cDE3U1JHWUNIcG1wKy9wL1ZPQ2ZkenNZSXNsckordnE1V043YytxbzdiWis4ZkhWWDJBYVlYS3N6SmNJdXRvRnVibmVlNlh2K0FyLytGTG5NN1BjT1ArajdCejEzYjJYYldicGROOWlvSEgyaFFsUWprb1NaTXVWKzFZUkhUT25vVnJXRjRlMGJNOUNsZFFVS0RSQk1KVXU0aU5CRUJKaWtLUjRYSDA4WG1nbjROU2tFd3VMOXEwQ1dnU01qd2VSUlN5cG1xVUFJRkp2dkNrc1VDZXgyMVFHRkl5RGl3YzVPQ2VtOWllN1dibDdJaVdTcGh2dFdrdEdBYURBYVBsa3U1Q3lvRTkxM1BiNFh2NDRTdFBJSlNnM1BnNkNUSUp0c3JZVG1yaWZEQjlnaFFhYXl5aEV1czJNL2pjc2VLWGVQNmxuL0tSUGJkeWNNOWhXbW1iNFhCSVloT0NEeFJGUWJjN2h5dG1sVjd0V3FDbWJLd3VQNnA4Y05HRUFGWmJFTXYxKzYvbngrLzhnTXlrREdSd3FUZXlvZUVEb3hHeURRMVhPbU1YZ0pycG4rdTQxUmJSNTJucnBQZTdXcGtlbTlURThNNzBkSDFPNWpubVMvWDg5UFFjYmdhVDdiN3c4ZEZBSFA2T0l2VTlMbVA5OWwwVWdlMjdldlRMc3p6MTdKTjgvVysrd3FuOFhWcTAyTGQvTjNOemJVNmVQRW1xdWl4MEZraFZoZ21XT2VVbzg0TCt5VlgyN0wyV2YvUTcvNHhCZndRcWtJOUtiS0t4Sm1XdHYwS1d0cmM4ZmtGQmZ6QkNwNUNsanRmZWZKRWZQZlVkVm9abjZLUUozZ1d1TzNBRGQ5MytBTHUzN2NjWGhsYmFRMHJGYUpCakV3MUtFYlNyYmtpaUQrdDBoNnlGdWUwTVZnZFFRR0phdEV5SGJtdWVjaVVsOHdtallaOThaVVJLaTE2bngzQTRaSFY1UU5idGNlTk50L0g5VjM1QWRFVndtOTd3eEpxMFNXNTRYZnBYbzFDa0tzRnBqUXNGYTZQVnlrWU1WdndTenp6M0ZOZDg5bHBhN1FYT25sMmluYmJwZFJjWkRVYmtlVTV5Qlg5RmFvbUZsUWFMY3lXN3R1MWtwOTNGY1RrMmVkSEZEMG8xTkZ4eXJ0eFBhVU5EUTBRbWRrYXhZSHppSlJDb2pkdXJZcS9waU5YWXRiMHU0cExaNlliMXJKOGZCWkVhTDBObXA0clo2V2J6cWZ4RjBkVnlwNmZyNTI4MnJVVXhVenUyMVRmekp2T25vbnNnVmNSVlppTFprNWNLS0YwWjFsZnJ2d2d4RzFRZzk2djg3YXZQODRVdi9obG5SaWV4YUhMNkZHV2ZiZHZuV1RsVllORzRvbURRTDBpOG9aTjJhSnNPU2hSbjNqM0Z0dDRoZHZZc1JabURLTnFkRmdyTktCK2lsV0Zja2JadUtnckVhREFCclVlc0xoY285d3lhbkZIdVVGamFhaWNIZG4yRXEvZmV3R0NscEpYTWs2Z1d3LzRvMmo3aENOcFZlK1FyUDl5QXFwSnR4U2w2OHhBS0lWRVpuYVNITDRUUVY3VGJsdDYya3Y3cU10bzdXcWtsbEFsQkFxVUVYQ2w0TENnTHFwd1JyR0Y4dlU5eWxKVlU3aFdWbklVb1pKM3phQjJmYzVYZnJEWWd6dlBhMHE5NStlV1hTVC9hSW0ybGxNN2puQ05OVS9yOUlZbTV2TDhpeHgzN1pvWmFBa29TQUJJTWhYZFlNU1FtNWNZYkR2UG1TMjlNN2ljYkdqNEVYTjZmMG9hR0R6RmJWYnpyclhUWXBzdFlINUZVRzVjeFNmR2NyQU8yMW52bld0OW1UMTZBNjRHZS9wMzNQbzNIVEkvVG5jKzNDN09kMVdhbjU5eW5qVXRpc3JicGlQZEVEYWpha1YrbUcxRFV4R0YzMGJYdmJVQjB6azlmZkpxdmZldUxuQjRkbzVkMldDdldVRmdXdGk5dzdOaTdMSGF1UW9xQVZ0RHR0akVoUVVwaDVEd3FNWUNtUDF4amRYV1Zzc3hKMDVSd09sQ1dPVW1TRUVMWTVCclQ0eTN5R3ZKOGdESTVSNDYvUzc4YzRWRjA3VHdETitDZDQwYzV1WFFLbTNRNGNYU0oxSFJwdDN1RUltQ3R4WWVDTU9WN08yNnpxMkloM21nMFlzZkNOdkxWZ3J6djJMdmpBSXVkblhnSHhjQlIwc2VZQkp1MEdPUkR6cTR0a2MxblpHMUxHY3FvdDBReGJxOHE5Vkd2aisvbU54SjFXa1ZxVW9aK2lBOUNtaVM0TW9wdVpSWE9PVVlNZWVhbEg3TzRieHMzWFg4enE2Y0dySzMxbVdzdmtPbDB2RHhSQVVFSTR3TEQ5M3JkYlB3OHEzVS9yNytHMzIvNlQrMURQRDA2VWp1Z0tXdndvNXhFSi9neWNOMys2N0V2YVZLZFVmaThpY1kyZkNob2hHekRGYzlZcEZWMUYycDZ1dG5JdXF4N2IvMzBKajZPNS8xU2VSL2ZPdE0rb3VQbnRFd05pMjVjNVBydVVmVyt6VzZBbWRwdW1WMStpTVZLU3VwQ3BzbXhnYXFGN1BxbzRxUTRlNTJuWmRWNmMzcjVNTTVUbmM1QjNheEY3NHlTbkJMeGs5T3kwU2R6dXJOWDdhTVo2cW1hdkZ0UGI5ZDdqaWhYdXl1YnpGKy9DUEV6OHhWVXpRdEd4QWlZamNWV1lwR2cwWlcvcW5NT20xbVVkWWhXREVacnBDM0R5dG9TSjViZTRWLy82ZjlHc0FXZWt1VmloWVFXQWVIbGwxL2ovcnMvanFoQUVVWVlFWFNTSUVHUmx5VkthV3hhSXNrYS8rNVAveGQrK2RvTHRIVkNIb2JJMk44MmpNOUtMTStLcFhXaEtzL3llR0lqaE9oY1FPVkFBY0t5aXptVVJ3ZHY4U2RmK0dNbUZtNFRnYTZCdWFTTEt6MXhENkMrRnRFT3BUM0tPeENQeFpMUTVtRHZSdjdoNS82QW02Ni9uU052bnlKTk80eHlSektma3Z1Y2tSM1JtVTlaR3A3Z3JUZGZ3aEo5dnJ4VE1USzdMaWVjK2hJUUtwazV3ZU1wZlRuK2ZWZ080MmtWOEhsOFU1OFYvalova1IxdjdHTG5ybDEwMDBWMG9kQmVJOTRTVENBb2gyaVBpTWNFSFk5aU1PTzFqSy9qVFZyVTFwczNQWi8vbjczM2ZMSWtTKy96bm5OT21tdktkVlY3TzY1bmRzek9ZT3d1Qm9zRkYwSUFDd1hGQ0RLZ1VJUWlGUHhIRk5JSFVXQVFBRU5CQmNqRkF1UUN5NFVSQ0NrRWtRaFJ3SUp3aS9YamRteDN6N1IzMWQzbHI4M01ZL1RoWkY1WFZkMDkzYk5UM2R2bm1iaVQ5NmJQdkhlbWZ2bWU5LzI5WmR2aVRROFlFOHNuMzFjLzk5SE5mTmM2NlFzUExmNS9lSlhITkE1bmM2SmFqRlFDcFJVejZTd1BUejNLMmZaWkFBb0szRFlQQTRIQS9VSVFzb0hBUGNTZFZ1RlAvazBjRG8yN01pSzd6WTV2YzJoODJKcXozR3lRbGZEeC9naU9Sb1kvamdmcjZQSGx5TlJ1cy8xVzkrTldPdmZqSXJGWTU3MVhxd2lzUDQ0c1crU0NVZ3FISVZLU3k5Y3VzckIvaHNMMU9ILzFJLzdELy9NTkREMnMwMlV4VXVRTG0xQmN2WGFKMTk5Nm5TKzg4a1hpV2gyVEY2eDJiaUJ0UXExV0oxSTErcUxMeVFzLzR1cmFhVFFiZEt4dmFxQ2tvMTVMNk9jK0VpbVVyK3pQaXdrVnBHSVlFWG9BWnN0SThxaFg4Y2pVd1ZyUjhROUdLa0xLaE53WUh6a1ZCUU03QXdjUkJZWE51TmcrelEvZit4WnhvOGI4L0g1aTFTUmIyNkNkZFZGMXg5eithYWdWbkR0emlyZFAvUkJCamlxUGI5eklzYXZmN2NSSXcyMkxzdkxoVm9zQ2JRMGZuSHVQRjU1OGlTU3BVNCtta1U1dWlqUTdiUGw3SzN1VFdZbVJqdTJpd3FPM2EvQjU1QmxwcTkvLzZQTGJ3Wlp1RzVzdVQxUWxlQkp0Y25BeGtZeVFWckZ2N2dDWDJwZThyUmtHSFlSczREN25KOGZaUEJBSUJENU5uRVM2Q0dsamZNN3VpRTIvOEpGdXFTeFRVelV1WDd2SS9rTzdzYkxnekxsVC9NRWYveDdMM1VXMDYrTnNqbytJRmtoaGdKeFdzY0lQWC84N3psNDhRU2RiSVcwNGFsT09aRnFUVGpuNmVwbnpsei9nLy92bWYyUngrUklXVGExV3cySW9yS1hWN1ZKb2g3WGVSaXN2SENxVzFLY2JwTk9wRDJIWUFsd01MaDIraUxkNHBlVXJMdGVQd2ZvWVNKeEtSQVNGMGVSRjMzY0JLKy9Ob091dGdMaVdFRWNKUGJxOGQrNWRUbDU4aDVaYjVmTHlXVXpVUmRVTGN0b3N0Njd5OXZzLzVPMzNYaU9qamFQQVVnQUZvTDJBcmRJWGJ0R1Y3M1lRRVlCbHRiZk1pWk1mVUZoTllUTlFqbUxZQTVoaEhucjVIWmZGY2p2TnJkS1FoUEFwRk1ZWWxGSUk0TkNCUTZUVWIrcG9FUWpjVHdRZjJjQjl6QzE4WkczcEl6c3cwSzl5RElhdmJTT1Z0OHN0RE5GdjVTYzVPV1BUOHNsaDhPMU80Mk4rSHV4K20yak1iZS92eDN6OW9rd3QyUGI4UjN3OWI3cWZiYmJmanR2Zm4yL1RLd2EvdjJIaXJoV0dPRkZjWGI3TW9hUDdXT3NzYzJYeFBML3plLytHdGwxQllUQjBRUGloWUlsRktvRnhHZ0cwZXh0OGRPb1VoZTdSbUs3Um1FNlEwbkI5K1RMZmZlM3YrSXUvL2pPdWJweEQwMGZnMjVOYUIxSkd6RTd0SWszcUpIRU5oOFJZZzNNV1hSU1lZcVRLeHltR3JxdzNlMDMrdCtORHJkclprZEZ2QlNKQ3hTbHhuSkltQ1VXZUl5d1VoYUd3M3QyZ1ZYUllYVjNseHZJTjl1eWRaM2F1Z1l0ekZsZk9jL0wwTy96Z2piL24xTlVQc09RNE5LNnkrS29PZmFkZjZpUUMwbnFNeVMwUkNhMGJMUjQ3Y3B4NjNDQ1dFYjA4UjhhU2dZOXdXVVRwL1hwOWExd243T0EzT0xIckxVL3hZLy8rYjVyUDdaczArT1ltVllPTzh1Zm5CRUk0SWhtVDVYMkVCSlVJK3FaUE9wVnk1dHdaMnJhRlJrOGtaQVFDOXg4aHRTQVFDQVR1Q0ltd3NlOE9oc0E1NzBUcmhZM0dDVWRYZDJuT3hLeTNyM0Z0K1R5Lzhkdi9IRXRHUFVscDUydFlJRkpscVk0RmJiTFNBN1lIS0paN1Yvam10LytNdi83Mk4wdkpMRkZFR0J3NVhZejBPYnJPZ2JVQ1NVd3NFalphUFNyWFlJdEF5Um9XalNNZm5IMVVVK2lPRjdWYkZSM2RqTW4xMDFvTm95VzZFTmpjbFlQV0ZrV0VRQTh5QUFvTWtIRm03VFRuMXk3eHZmZS96YTVvRjFyM0tlaFRxMFZzOUZjdzlLbW5DZTJzS0syOTd1d2J1aFhhK0JTSVdwU3lYcXp4OWdkdjgrVXZIS2JWYnBIVzZ5TSt4YUpNaTVGVnJzR1dBbmFuOFEySHgxRktZWTFER084dDI2ZzFtWitaWjNIbDZrNmNZaUR3aVJQR0ZnS0JRT0FPOEIyVW9uSzRQYUp5WVhEQzRxVEJ5aHlWR0VScU9IbjJQZjdWVjM4ZGhjYVNVYmlXSHpJdlZZZXNEQjBBZzBVSWk2WHc2OUtqendZeXpWRkpUcDgxTWxheGRERTJReW1vcHpWOEExbUZNUUpGa3hvenpDWDdhY281cEUwUU5pSVNOU0lsUUlMdW03TDB5dy9kaS9MRlRWNmo2d2dzMDlNTmhJQ3NwekdGb3lHYUxDUzdtV1dPbURveERXck1FT0ZidlNacFROeUljQ3BIMHdGeSttS0RkWmJvc0VwYnI1SFR4V0ZwWjMzdkZTdTJLb3dhZWQwRnBteiswQ3ZhZ09QTjg2L1JOVzNheFFacE02SEtFUlpqcVFXeWJJNG03b24wZ2dHRExvWlZnYWR2TDV6R3ZwR0cxUTRsSW9TR2czc1BJVkZCQUFSK0lnZ1IyVUFnRUxnanZLZ1JUcGFST3grSlJSaXNMSEFpWjdXend0THFGZjdvVDM2UGpCWXpVM1VVQ1J2dFZXYm5tclEyT3RpQ1FVakJWclpKMGhzbFNPRUx5Z3pReXZJdHp5QnlFcDFwSkFtN0dJUFFBQUFnQUVsRVFWUjdwdzV4L09HbmVlcko1M2pvMkNNWVk3bHc4U3p2ZlBBR3AwNi95M0x2R3M0SXFyYThFZ2JoMVVxVUNiWXVRb0xOT1ptOVZnWTJKaUxoeU1JeG5qcitMRWYySE1VWjZIVTZmSERxZlRyWk9tZFdQa0tRa1dVRlNPdXpHU0pETjJ0UkZGMThra3VPMGRsQW4wWVJEQnBydVcybW53QlJKTEM1UWVESTZQSEd1Ni94N09QUDA3ZWRzbitFS3UrQmJ3bnJrNVUraVlZWW55UmJuNHZXbW5xOVNkNHRzTnBScTZlczlic2MzWCtZeG9rYVhkcWY4bmtHQXA4OFFjZ0dBb0hBblZJS0cvQU5EcHh3M3E1SjVCaVZzYksreU5mLzZOK3htaStTeGhITDdSczROTTJabFBYMXpzQk96VnBRQ3F6eEFrNUtRVzVjVlZma2N6TzlzNUtYTEQ3bzVzMnVqRVFSODlpQkovbUZMLzdYUFBIWWM5aEMwZXZtQ0dONDlyR1hlT2I0MDd6LzBZLzQxbmUveVltTGJ3TVpTU1RJQ2pQSWNSMDRzMDdtb3BicHNaV0lIZE80TnVMUTNCRmVmdjd6UFAzb00reWUya2RzRTRUMmUvdkNDMS9rblEvZnhuM3JQM04yL1F4eFVxTm4xNGY1cmtwam5jUFlZZDV1RlBrNnJsd3pucDQ3Smw1djdpTjdXM2hmTW96eCtjbDkrdXhpaXUrOCt5MCs5N25Qc2JheXduUXloeFFTYWIwYlJXWFE2dk5TN3pXR2xtc2VoVEdHUkVYK1FjUkFvbUpjRjNiUDdhRkJFOEhTenAxdUlQQUpFWXE5QXZjeEg2L1l5M21qUlp4MTNpcDBHMXNxSWNUZ05jcW9UK1RnaFIyOEg5dkh4SFJ5L2xZelJuMW1CL3ZjenZOMFpKdHF2Y250bkhOanhWSmJuZi9vRHNkOGRDZXVhZFRmdFRwUFlDeFBjS3ZsbTN4NlIvYmpWNWdzWDltYVRjZXY5bGw1NDI2ei9GYmJqN0xWK1k4Y2FOd25GTUFKckhaRVVZU1FGcW1ncDF2RU5VYzdYK1A2OGlYKzVXLy9LdDFpRlV0QlpudjRpSzB2ZnFxdVYxQktrS3BJeklJMkRBcDNxdE1abkZZVk9YVXdIVStERlR3MC94ai8rQi8rZHh3LzhqU2lIMU1UczhTbVJrTk5ZVEpIcWhJU0VmSDRZNDl4K2V4Rk9yMFdxVXpKYlVaVVJtYVY4aUpTajdnTjFHdWdTN09BWmozeEoxbGV2eVJGMGVTLy9lWC9uaGVmZklXa1NFbnlPbEdSRXVzVTI0ZEVOYWpIRFo1NDhpbVdyeTl6YmUyS04zaElER2gvNGRhTzMydzdlcDJieEtzdlRoTlZZVjMxNWR3RlVnTFc3MDFUa0pDaU04MW5qbitHdkZlUVJuV3N0cGpjb0ZTRVVqSFcraHhvTVNZY2h3eCt4Nk8vMWExOHBFZTIyV3E1MkdhNWYrR0x2UUR3OW1EZWJxOHNUSE9nWklUVkZxUkVTSWRRaWlSTnVIWmpFVmR6bkZzOWgwd2t4dmd2dldxaUVRamNUNFFVbVVBZ0VMZ0RmTzJQbzNBWktNdmxHeGRKNnBLY1B1Y3ZmY2pYZnYrM3NXUllpckpkZ043R04xZmlCOGZHR3c2TXE1eXQzL2VMbkRyVFBQL1pseml3NnpBMTBjUjBRYmNka1U0UldRUWRnZXNvNXB2N09MeHdqT2VmZklXRUpsb0xVcHBZRitPSXNjYTNpSzFGQ1JHcVRBOEFZU1dTbUY1UFlHMktvRW5FTEROcUw4OGVlb0Y5MDRkSVRZUEUxSWx5aGNvbE5kR2t4alNtNVppTzU2bUxHWjUrL0tlSXFaUElGUG9qMXpGcGtMRHAzbFQzcDNKWTJOeWM0WTRSWUhUWkNVd29OSVkyNnl4dkxOSHFyK09rUTVzY0tTVnhIUHRHQTZiQWlqSUNmL2RuY05kTXBudllLaytXRWRjUDYzTmtuWFlvSjJna0RlYW41d0VHSWhZbVJMVFk3ckV5RUxpM0NFSTJFQWdFN2dSaGNWSlRiOFpjdW42QkE0ZjM0R1RHbWZNbitNWWZmWTBiN1l2Ymk5aUJYcEErMzdLTWNicnl0ZVgvbXJjb2NKTEVUQ2U3ZVBhcDU2a25EWlNOa0ZvaEM0blNrdWxraW5yY2hBSkVvV2l0OXRnOXU1ZjVlQytPQkdpaW1DRmhBY2tzeGpYUlJZTm1mUitTT1dDRzJlWVJwdEtEd0J5Q09RUzdnRm42SnVhbm4vOTU1bXQ3RVZsRVF6V0pYSUxRaXBnRWFXSk1YOUNNWjRsZG5hZVBQOGYrbVlNKzdhQnFLRGJJZVpVVHI4aS9CbEZZZjMrODF2MkVSQ3lVYllYTExJTlU0YkFVRkN5dVh1WHEwbFZVREZyNzNPUTBUckRXVWxpRFVBNkx1VWZ5Wk1zOGs0bm1GVTc0VG0wRDl6QURMamNJSTJnbVUremV0WnVZZUNCa2hSQmowVmdwZ3p3STNCK0VITmxBSUJDNEl5d3FnVXVMNXpqNjhINVdXa3RjV3o3UHYvdkdWMmlaWllSdlQ4QjJrZGp4TkpHdFludlNKNHRPNW9rT2h0d2pKQWx4MG1CMlpvRk91NGRLcGtpU2hNakZDQ3ZwZERwSTVSQlNvWlFrS21KZWZ1Rno3RDJ3RnlNTm1mYXRjMVdzZVBma2UvemxYMytUSGwyNkhXK2V0Vy9oTUQvM2haOW43OEplOGs3TzNNd0NqYmhCdjV2UlVBMm1aSlBJUmRqTVVxdlhjWkZERnhxc0lNOXpsRXpLNjRpWWFjNnhlMjR2RnpkT2Uxa2FsWTNGeHJxSlZlOXZGZzM4NU1TamM4cnZUd2dLVjZDRlFUbkphbWVGRDgrZDR2SERUNUQzTGNKVitSWmxXb2x5T0dOOFZkNk9ZY3RDdy9MVElKL0orWTU3Um81RVdMMm5oZEVhb1NOaW1UQ1Z6akJWbTZMVjMvQ2JsVUpXQ0RHV2xoUUkzT3NFSVJzSUJBSjNnQlVPclh0TTdVcFo2eTV4ZmZrU3YvNWJ2NHFqVHoyTjJNamFUSXBZTVJLSnJkamNsR0xpczZ0eW5JZFR2d2NCS0VRY1FhelFvaUN6ZllSTGlDT05jQkZLU0tRQ2JTeTlyRWVyMnlFdElxSTRKYTFKNmdKa0hCRWxFWE5YcDRralJVOTc3OUhDYVBidjM4L0RqeHpqMEw0anRGZmJ4Q0xGRmc2ZEczQ0NXdEpBRlZEWUhHdkJDWU1XbG9LY0FrMlV4TFN5SGlxT3lJb3VzL083RUJjZ1VSR0YwYVVnMzBvTWJpWHN6VGJ2N3hTSlFLQlVpblk1Ulo2WGV4YjA2UEhSK1EvSmZ6cEhxUlNuSFhuZVJ3aUhVaExyTk1ZWjRoMFZzbHN3MWdQWFlxMUFZRkZJckloODI0VENRZ1Fxa3N6UHpYTjE4Y3JZTHFTVVkra0dnY0M5VGhDeWdVQWdjRWRZNHByQVNqaDE4Z1JmKy8ydkV1SG9rNU01Y0dWaDEyYWlVb1JTUm15M1o2dEdWbFZmTFlBY2c1SFF6WHMwWjJkeGZXOTdKV1ZFb2lEVFBaeXhpTWkzaVQwd2Z4QXRNbTZzcldCY1RoUTd0TTdKVE1hVnhiTklWWURPeUUwT09DNWZPY003Nzc3R3l0SWlwbTlKWkkxVXBBaXJhRVl6dEhXTmhjWnVyREwwaXo0WWl4R1dRbXBVVFpiemM1S1ppTFYrRDZCcytPQ0h1cmNOTmsvYzU2M2ZmeEpJcEl4OG9xenc0azBwYjF1MWxDMXhaZkV5UjJZZlFrcEIwYytKMHhTVW9LOExVTDdFU20yZCtMeURXRW8vaTdJZzFYdktSc0tuVG1ockVCcElISHYzN3VXOVJRYnJnbitJTWNac1d4UVpDTnhyQkNFYkNBUUNkMGlydGNhMTFVdjh3UjkvblI0YlREVnFLQkxXdTZ0TXpkWm90L3AreFpGSXJJOERSc05JckdTVGVwdDBwNWlNKzRreWw5WmdhV1U5VHB3OXhYT2ZlUjRWU1p6U09KbVRHMHV0R1pFVkJTaER1OXRDQ2NsM1gvdDcvdnp2L3B5TURTSjZXSG9ZREFaWHRpdjFyWElGc0xSNmhyLzRMeGVweDFPWXpIcmhSbFQyRjJ2eVR6Ny9UM25wNlZkUWNVU1I5MUNSOStrcVpJYU5CVTVKbkhVVWFOWmJhMXk0ZEJFbEZMblJBenN4VVdZSjIvSTZOMHZWMGJ6UGlVVjNwYlY4cnEzUnBYeVdRT3hGYklRWGZTZE9uT0RnUzBkSW9waWU3cEUyVW93ejVIbWZSclBHTFo1RFBrWEc4Mk1ycEpRNDR4ME92Ryt3S3ZPTUhRckZ3c0xDWU4xUklRdUVxR3pndmlFSTJVRGdOdGd1NW5LM01ZdXloWHZaL25KOGZyWC95YXJrNm53K3JYako1UEhGeEhsdVo1NS9PMnkxL2NjOXR6dnZyalJhSkNOSFdwQlNkbkthWE5mN3hEcG5NSUNUR1RmV0wvTjdmL1JWVm90RklpRlk2eTVoS2FqWDA2R0lyWERqYno5T2ovdEs1STN2eW1LeHJIZlhlTytEOXpoMjhDRVdtbnRKNmdtUml1bDNldVE5WC9TVDFCSjBvVkZ4ekxXMTY3UnBBUm1hTnI1VzN4dVpSVUo2K3l2amlDTkZIRWtLWGRETFdzZ3F5a2VCSXNZQzc1eCtrNGNmZTVTRitpeUZNOFJwRGJUQkdrdUJvNWFrR0N0b0Z5MVdXc3VjWFRwVDVnNURta3J5L3EzdXdZK3ptTXBiVmhtWGxZNEpFaVVVeGhTQUpTTGk3S1hUOUY5OEZkT1lJZHZva3NZeDJsbjZkR2pFQ2Rab0J0MituQmxNVFJsM2RsYjRnakFuY1JpZjAxcXVCeGJwaGhMZVlYRENMeGUrRXdPbW5HNjl2WGZOQU91OWkzRytxNXl3WmZxSlE4UUNXMFZoaFgvSWNPVkxSTkNNRzRPYzJJcFE1Qlc0M3doQ05uQmZNL0I3RldLUU83alpoOVcvbkt1bWpNL2Jvdks0RW1PVlJwTGIrSkNPYmpubU16bzRseTNPZVhRYjY0YXFkSGdCWThjZnVHVk83TjhMUURzNDM3Rmg2S29BcERLYUh4V2ZrOGNmWHNDbTQ0OXRXeTZ2dkhkdHRYQnkrZGcrUi9jemZsTzhWNmdkMzM3MFBqQWhpcmZhZm5TZDdjNi9XbmxpZXk5TWV5QXN3dm9XczlMR09LdkthbmFKdG9Za2liQkNnN0owc3paSlhkSHBibkJqNVRMLzRuZitaeHc5TEpiQytUSjhoNlhYMDJ5Rkc4aFhONHpJYnFIVnRub1dzQk9mdkx1Qm9XL2JuTGx3aXU5OGY1WlhmK3BuT2JidkVXd1BkRzZRVWpJN040T29DYTYxci9CWGYvWG52UHZSbStUMGNHUkUwbEpZWDhDVWlBVHJRS0ZRUk40amx4aFhDbDJMUldPQWdyZ3VLSHFHZDIrOFRmT05PWDd1Wjc3STRmMkhLVm9aNjJzZHBKSFVhalg2V1l1b3JyaCs1U0xmZisxdk1SUm9jbENDcktnSzJlekF3R0JyVjlaYjNKZzd4aklJcVRwOFdvUUdRWVJFa3RGanpheng3dFczZVg0aFFoNFVYRzlmSVk1amFuc1VhNTNyMUZRZElVdW5oVkp3VmxPSnhibktKWGd5NWl3Unp1SUtpM0NibDFjQzkyYmJ3MmpVMVA4NnJQUlQ2VUJMU1U0T2tTejNWMWx6K2Y5M2FKVVR4eEh6OC9Nc0x5K1RKQWxGVWREcGRJamptS0s0WjhMTmdjQk5DVUkyOEFCejYyalBsdEhJU2crSnU0MElqdXh6NUhoai9RSzJtRDhvOXJtTFkxZlhkYXZCdzYyR3VOM0krOGs3S04zdGE0Mjd6U3k4bTZpMHY2NXFPTllneW9oc1pTOHZuY1FLWHc1a1RJRks0Y3ExU3l3Y21FVzdMbWN2bitKUC92UWJHSG80ZWgvcjJHNmJZZUJiYnplSkphMEpzbjZQR3h1WGVmTnRpK24yV1QzK0hJZDNINlV4TlFWWXJxOWQ0dUtOODd6NzRZOTQ1L1RiTFBVV2NXVEU5ZGozWjVBU2RJUjJBa2xLZ3lienpYbEFzdGJaSU1IU3BrTWNSYVNwbzZjNzJCaklNcnAyalhmUHZZWkxlanoxNkZNYzNYZU11VDJ6U0JUT1dGYlhibkR5d3hOODc2MXZjM2I5SXh3WlNVT2lWWVR0RjlYejVQQlo1bVBmbGJ1a2VvZ3R6ME9WaVI4QUJvdFdPWmRXTHlJKzhqbTlSVllReHpHUmlNajdCU20xZ1VqY2lsdmxtUXBqYnpxQ2NhdnQ3Nlo1UVJabkxFWFg2WFE2L2x3bUlyT0J3UDFDRUxLQlFPQUJSU0pjVk5vL2xhOHl6MkVZdWRMVXAycWN2M1NhQTRmM2tOa09wOCtkNHZmLzZHdXM2ZXY4ZUllK2I0R3c1TG9OQXF6TFdPNW12UDd1T2xldm5lSGd3bUZtcCtldzFyTGVXdVBLOGlXdTNMaEVtM1VzZmlqZG1SeFRDTHpyYTQyakI0N3gxR1BQOHZEUlI1bHB6UGgydU02eHRMTEVHKysrenNsekoxanJyUG9raEtKeUhPaXcwajNMYXo5YVpQSGFoengyK0JGMnorMUZXRUcvMzJkeDhSSVhybDVnc1hzWlZ6V0h5QmoyTnRnNmNQM3BjUXZkMWpZZDNqenhCbStkZUJPZm1TeUppQkVJREFaVnBsdHN2L3Z0RDFCRm4zZEtPaG9LcG5iVjZQZjdtNVlGNjYzQS9VUVFzb0ZBNEFGRmdGUElNbzNBZTRyQ29LV3hzS2hJY0hueFBFY2ZPc2hLK3pxTFN4ZjUzWC8vVlRiME1ncUgyVWtoQzFTajBrcUFNeGtiZG9uMnRWVk9YL3VBcW5XQXhXSFFXQXJmd1NvQzQwQVhqb2lFYWJYQThZZU84L0tMbitlWng1NGpVVFd5WG9ZVUVkWmE5aXdjWk5mc0FvY1BIZVZISjkvZ282c2Y0aXcwcDFMNnZSYlc5T2k1SG1ldWJuRGg2Z2ZFcEQ0aWk2TWd3NkdSUXRKb1JwaThRSmNLVHNpZEUzRmJJWkQrL2d5bVVJL3FGTHJBWUJGbHJMWWdMOWYzMmI0T1d4YmZmYnlwd2FMTHFkeDA3RTlqYXVpdUxnSEJjaXR3ZnhPRWJDQVFlREJ4RXVsaW4wN2dmQW05RTdLTW91bUJUK3owWE1wYTl6clhWaTd3NjEvNVp6Z0s2cldFalg3N3BoRzNUNFV5aWRvSk1BS2swMWcwbWdMdmtGQVZsZmwycWtZTTg2ZUZBMFdkVjU3OVdWNTkrVlgyTE94SDVRbXJhMjEwcjJCcWFvWk92MDk5dXNaRCt4OWxZV0VQczdPekZIK3Z1YlI4SHQwM1h2d0lMMGlMOHRnNVdkbXJUQXd5Z1oyRFRxY01lSmVOekZ5K0V6ZHNhOFNFTDRRcmM0Sjd1a3RWdWdXVThuYUl3UmRaVmRmNmNhYW1mSWQwbUxMaTgxT2Q0c29uSVM5a3RkYUQ5eUhGSUhBL0VZUnNJQkI0SUpIZ1V3c0crSWlVVHlzd09LbUpZNGVSbGhNZnZzL1h2dkVWSW1ucDJ4NjV6WEQ0NnZZZG85SWFkcGpyYkVUcE15c0ZRZ21rVkdBdFd1ZFlSNWxTNE5lVlNQYldEdkRjRXkveTBQNG5XRnRheHhTV2hlWitWTjNmbDduR2JpL20raG5TeEJ6ZWM0VEhqanpPMWVVckdGME9TWXZ5THBUWkdVTGduUStjdzFvZmViV0dRVkowSFBrM1JmRXhFcW8vUlViZEpLb0hGWWNqU1JLY2NhWEhMaWlwaGk0QmcvVnZmK3BHdTF4c3g0OXppTjhCQm1JVmIycE5HNkt6Z2Z1SklHUURnY0NEaVpObFZGYVc0dFZIWXIySUxYQXlaNjI3eXZXVnkvekJmL2dhYmJ2R3pFd2RhUk5hblZXbVo2ZG9yYmQzOWhwTUdTRVVnRkJlcURxSHNUNU1xaXZWU2pRVVJjNzRvWDBhL1BRTFgrTFEvREg2YTRiV1VwOWQ5WG5pdEVHLzA2Y29DbThsSlRVaWRZaFljZXpnd3hUUFpadzk4eEdYTnM2Q2FxSnREL0R1RTdyS0Z4Z0lJNGx6QXBYV01GcUR0aFQ5S2llNWNnM1l1WWVCelpIWVNXOElQOC9Bb1BOWGhYWjNXZFZmcFZoOGVqWU5XKzdkU1RjUXJsVTA5bTZLeUFLQlQ1c2daQU9Cd0FPTUhEZy9PR0d4d3VHRWJ5aGdWTWJTMmxXKy9vZi9sdVhlVmVKWXNycHhBNFFtYmNhMFdqc3NZcEg0aWlrNVNJMFlpKzVWZnFEV0RxdUtIQ0FqdjVwTE9ITG9ZV0xSUUJTS1BiUDdtSzd2b3JQYW9kL0oyTHQzTDUxdWk2Z2VrYmtPTjliV3FEVWlwcHN6ek5TbmtSc3h1VEgrSEdUa2QyNmRkd0lRWldnMnFVRS94MlM2TEtxTDhWNFFFb0VwSmVLOUs1cFVKTDNiYkdVcDV3QTEzZ24ycHR3aW9CcTVZYWUyclV5MkZONlpwSElvbVp3S3Q3MDUxKzFNTlF4U0NzQVhlVlVpdHVyd0ZRamM2d1FoRzdpdkdmV01IZldKM2NwSHRzSlg1RmJxeFkzdHE1b092VWtuRDdqRjhTZFdFVUlNLzM1dHMvL2h2UEUvNHBPcGFjTnR0dDUrOUEvbDJQbXptYkh0eTEzWVcvdzVkaFBuNzI1eS9GdHRQOWhrWkxqVWpseC9kVjdqeDl6bS9LdDVXeHpMZi9lVEo3TDUrcDF6V0dQOGtMRndJQ1g5YklPa0RxMXNneHMzcnZBdmYrdC94WlRWOXYyaUFPSGJ6bWE5NHU3OXd6NVJKbjNTeWtSVVkwQXBoSlE0clNtdENGQktrWmlJd3djT2tuYzFRa2JFSXFXejNpV0thdXlhbmFLOTBhTTVQY05xYXdsWnN6VHJVMlQ5UHJHTU9YcjRHR2V2ZlVTZnZ1L3BLZ1hvOHA2SVV0UTZCN21HT1BhcXF4aCsxMkpRT3JXelRFWmdCNVNucHMxSW0rR0JvZlBtLzA1dmNvQ2JMM09iZHo4NmRkWHh0cGx1dDkzdFRMYzZ0VkhoR2tSczRINGhDTmxBSVBCQVlnVklCZHBtcUZTd2VPMFN1L2ZOa0xzdVp5K2U0ay8rOUE4eCtGeFlSeWxpNGVaSzRGUEZraVFKUnZ1SE5xRWtTaWtLWTcxb0JhSTBSV2ZaSU5PendqbEhKS0hYNnpDbEdpaXBmUFBTS01JVUJtY2NTWkxTYXJWSWtvUzREbm5XQmlFd3RpRExlbGcwU2dpRThsRnRVNllYWUN4UnZVWWN4L1EyT2w1TWw3Wm1TaWlFY0ZpYjNmUFJXT0RXS3ZNdS9iUEtOTlhCN2o3dGFTRHdrMEFRc29GQTRBSEZZakJNVGRVNWYra00rdy91Sm5NdFRwODl3VGYrajYreGxsL0hWaUtXRVJGN0R5bUF2Qmg2Z0FvTlZ2c2lwS1JXUTBwSnA5dnhROWNDb2xpUzU5bzdIRGhOWExQMGRZZjU2YjBJVTVEbmhubzZnMFNnclNWS0lseG1pSklZNC9wb1c5Q3NKL1F5UWIvb1lDaVFaT1JGTWVnc1Z6Ylp3M1M3dmcxdEVwSG5JMmF4b3NDVWVqZU9GVVZ4anduWjdZTEVtNFpkaHZNbjgyeHZGNGN2enR0WkZXdnZxZDl6SUhBbkJDRWJDQVFlVElRbFNnU1hGODl4NUtGOXJMYVh1YnAwanE5OTR5dXM1VXRJNlRCMkpCSUxFN2tNbi9vWmIwbWFRSkxFQ0NQSmVqbk9Pa3cvd3lKSVN6OVg1eXdtMTJQZDJEcTlOYTdmdU15Qm1jUFlTTkRlNkJLcm1Mald3T1k1bVJaRWpZakNabXkwVjhoY2o1bWtSbStqdy9MR01vWWM2d29VMEVoVEloSFI3MmRZNTMxU3A5SXAydGtHU1htOHBCWlRtSUtzRkZQdWxuM2w3a0ZHaFdBcFl1VWRDdG5CMVk5a09uMjZVM3ZQQjhRRGdkc2hDTmxBSVBCQTRvUWpOMzJhdTFMV3U4c3NMbDNrMS83MVB3TnlHbzJZVnJjOW5rNHdOb3hjaVplZFZRTENRWjZEeVFva0VCRXpHODNUckUyVFJDbHBtdEx1dHJqZVdxU2dqNmFnV1V2SWJJN05MSys5OVQwTzdUbkdvWDFIRWFtaGI3czRBWVVvMEVZakk0RTJmV1FNU1N4cFpXdWNQbmVDaTFmUDRMRE1OT2ZwZERya21jVmdVZFNJOFFLdnlDd3BEV3hwL2EvN0JwVW9oREE0QVhwMFRIM0hidUF0bHQ4c1IzNlFaMzRYdjRHZFR4TU9CTzU3Z3BBTkJBSVBLQmFWK0xxbzkwNSt3Ty8rKzY4U1MwSFA5aEZHREFxN05vdXRhRkNvNU1yOTdCUnBHbU55UXoxcWN1VEF3enozMkUveHhDTlBzbi9YQVpJbzVkeTVjL1R6SHVjWHovSHV5YmY1YVBsRCtyMGM3elVRODhHbDkzbm00a2wyNzVtblBwMWc4d0p0TTBRTVNrbUtJa1BXSERQVDA3U3lqSE1YUCtTOVUrL1J3NmNzdERzWmdwUTlqYjBjUDNhY0o0OC96WUU5KzNHNVlXTnRuUXVYTG5EdXltbE9YVHRKVG84aUw1REtsOTNieXZIc2ZtQkN3TjVwT3NFbUxFSE1CZ0ozU1JDeWdVRGdnYVhWWHVQYTZpWCs4SSsvVHNldE1UUFZRTnFVamU0S3pkazZuVlp2WWd1SlFDQ0p5a2ljWStlRXJDVExKUE5UKzNqcHM2L3cvSk12Y1hUM3c2U3VRZDRxV084V1BISDRGUXdGRHg5OWxtTkhudUxiYi80ZGI1ejZJWVllYVZUSDZJTFgzLzR1V21zZVBmSUVDOVA3a0NwQ0pwRjMxRWdjaGMwcHVnV25McHprelE5K3dJWEw1M0JZNHFpQk5ETjg0WFAvRmErKzhOTTBraWJkbFI2dVpabEtHdXplOHpDUEhuaVd5OHVYMlgvcVRkNDg4VU91Rjljd0prTW9pNGdzTHI5TEw5WlBnbEVodVkxYnlhUndyVnE5K2xYdjdQc1hlSHV0blJMejFTLzNmbm1XQ0FTMkl3alpRT0FPMmM1TFV0N2hYNGJKN1c1bjFGVTZTdDlPQnBYaHQwUGxuU3J0Wm4vS2o4UG8rczZWNXU2ajg4cnBkbWNtSmlKZGNndHJvKzJ2eXBZN3NIaVAwdXFjaGxzSU41SVZPbWg2NEh3M0pwbHhZLzB5WC8vRHI3TFV2MElhS1paYjEzRVUxSnMxT2hzVEluYmt2T3dXNys2YWp6SE03WE16WS9iT1BzUUx6M3llVjEvOEdRNHVIS0xZTUxSV00ycWl4dTdaM1dUdGdyVjJpN2loZU9xeG42STVPNHVRS1crY2VJMU1kMm1JR3Fldm4rYnk5YXQ4OGZNL3ozUFB2TWpjekFKb1FiK2ZVNi9YV1Y2N3dkTFY2L3pnOVcvendlVjNzUlFJRXRBMXZ2d1Bmb1ZIanp6SmRMUVgyek5NUlNsVEMwMmtqZWgwdXVpZTRhRURUek0vZjVCYWM0N3Z2L1AzWE82Y3crUWRuQ2kydis1UHU4VCtEdmQvcHlKMmxOSW83Vk92OTdvUE01UURnUzBKUWpad1h5TWRDT2R3MW9MeFBlV0Zrd2pydk1peXBicWE5Sk10MVpKZ09HdDBXZ20wVWFFMTZXUHFBQ2ZkNXM0OG85dE1kTWlwcXJ1SCs5ejhvZHIvMkxvajd3ZittOEppcldZb3B1VHdtc3IzWStjNk1HSHk0azg0WDJGZS9TRVZXL3E0amwrY0dSN0FpMDR6NGxtN2hjOXM1UmtyM2ViNzU4OXlpMk5OSEhQbzZUdSszQXFMRXhsV2FxU052Smgxa2I5WFpldFpaLzErcDZaclpGbVhidFptWnJiSjlldlhXZXRmNDllKzhqOVM0RHRUZGJVZDNKdGVwNytOZ0xJTTc2amxyb1dzMk9MOTZMeElRbUVSS2lwOVlDV3hpckRHRXBQeStjLzhMRTg5L0NKNzY0Y28xcURvV21icTAwUXlwcGQxTWNZd05kVkFKSUxWcFhWMk5SYjRoWi81UllxdTRlMExiMUM0SEkybXpRYi83L2YrSTk5KzcyL1l0VERQL1B3OFUxTlRYRnRjWW4xMWpaVWJxMmcwRFJwazVFZ2tQL2ZzTC9ISzR6K1BNblZjSjBmWkhJbWczKzBoWElRVUNRS0J5eHZvZnArbkhuMkozWHQyOGZYLzlLOHhwUVRNSFd3N1NyL1YvWmprYmdYdU5oSFl6YXR0M2ZIcmJnOXR5dGVkTmpTNDIybUl4Z1orRWdoQ05oQzRDNFFiRDRUZXZOM2tUZmJEK0IrVmp4L1ZsVnUvZDlKSElwMEV6SEJhcmVPRzV5eTJFcEszY0g0WHpnMk90cFZRSFRlOW4xUU4vcnhrK2FmVk9UTTIzZnluMTJ3eExhL1JtMHdobmNBaHdFa0VrT1VadTNmUHNiUjhqVXkzMmJOM2h1dkxsOWpvclBCYnYvZS9ZK2pobUV3Zm1Eak5UWHdDQW5iMEdKTkNiWFNlR2JtblRxSkVOSGg0Mk5WWTRETVBQODIrcVFNb25aQm5PUlFDaThCR3Z0Mm9FQUtwQkhtZU16TTFTMTkzYWNZelBQL1VpN3gzNFYxMEtVcDlPVmJHamRZaUs3M3JuTG5pMjVSYUl4Rk9vb2hSSkdWQlY4eERNNC95L0dkZUppbFNoRk9EeW4yQlFlRFZxUVZpbGVCc2hISTFHdEVNcy9WZFBMendNQmVXMy9ZaTlsYjNZWFQ2NCtJTzl2OUpSR0pIRDIxMmFCb0kvQ1FRaEd3Z2NML2lxcDcxc0VtOGJscFBURXhIRnBjQ1lqeGl5NmIzazFnSFVqaUczVHMzYno4cVpDZVh5M0xZMzVibjcwb0JWRTNIcjJ1TDVTNEdKOHFvdk1SWlVVWmtoekhUZXJQRzZzWUtxSUxwcVpTTi9ncWRZcFYvOGRYL0JVMlhIWGNkUUU0T0VwUUw3R0FOa0VqckJYb3FJN1FwQU1HaC9RYzRmUGdvaVdtaUM0dXpBaVZqbkFXci9XY2hKTTVZc201R2M3ckplaThIS1hqaThTZlorOWQ3dVo1bFNCUU9TNThPRm9uUm1rcFpLaVJOTllWdjh1VGo1d2twaC9jZDV0RCtRNWhXanBmT0dZSUNRZTRmSkJBb3A0QUVuV2NJNTBqVGxJYVk0cmxuWG1EeGIwK1JVL2dIT0QrMHdkaDNjWnZwSlNHaUdBZ0VncEFOQk81NzVHYnhPc2JXWnBLdSt0Y2dyRHd4RmJlWWpxNS9CMWw2VnZob3JuQ2JSZXR0VDIzTnYzV2lmRkVxSXdzWWpOSDA4emF6dTJyMGlqV3VMVjNrZi92Tlg4UFFSVkNVM2FWMmhuRVBVbEVtTFFndjFFZStUeVVWMWhwdnJ5VVVCcDliZXVUUVViQ09JdE5JNTZPZmtaU1l3bUp6bjR1aUlvVzJJRVZDbmh1MEJoVkxHclVHTHo3L0V0ZVc5bUJVUmhSTGpEU3NyaTl4OWRwVnV2MDJzaFN1eHg5K25KbjZIT1FDbHl2cXFzbG5IdnNNRVE1SGdjUWd5ZzVva3JLTGwvTkx0Y25SUmlLRUtidUhLUjQ1OWdpQ0JFbUV4RlpCNTAyLzRlclhLc2ZtRFNQMERvdTlaWlBsUUNEd2swNFFzb0hBL2N6TkJLeXc0M2tQVzQzVlZzYm9RdnFFMHRFcDFpZlJNdnBaanEzdnF1V2xzQmlkam0yL3hYTGh5cXB2TVg1VzJ3bVRUY3VkUkRpRmoxaEszNllWd0JWbDBxOGxOMTFtWnV1c2RXNncwcnJLUC8vTi93bEh4dXowRkN1dGRYWStJanVVYTFXS3hhUXZxWEtpak11Q3MzN29QaEVKYzlOVEZMbEJhazJpRXFSVVlCVFc1dDVYUVNWSUlWRVVURGVuNmZmNzFKSWFVVTJSWlJtZmYvbnp4UFZYeUUyWFJxTkcxRkI4ZVBvazMveXJiL0xCbWZjd1dGNTY2aVgrd1JlL3hNRzlSMUF1SmU5b1RNOHhsVTdUV2xtbm9hWlFGQWcwenBsU2pndHdGdUVzd2htazhORms2Y0FVbXFucEdSUUpaYzArbzkvQnFEdkFVT0l6TXErNkV3SjdqM2o1QmdLQm5TVUkyVURnZmtac2w2OVpWZXFQalZlWDArRThLK3hJUHU1V1VuTDdlSmNQem02MTdxaFFOdHN1ZDRKQldvSjNUWEFUVXlhbTQ4dTltSzRLMzhEbkFKZkhGQm9uTTJhbTZ0eFl2Y1J5K3pLLzhadSsyVUdhU0ZaYWl6NXd1TkVpaVRNQUFDQUFTVVJCVk1QaFBJZnpCVkdENzdCS3RQQVBBZ0tCY2JyODVpekdGamdzU2dsNlJZODRVU2dTcEpQWXdxSzF3VmxJVkV3Y0ovUjZQVVFFY1J4UjlBdWlSa1FVS1RiV04wanFnbDZuUTd1M1RxOFhVODhTT3EwMk92TjVzd0pCbWlSb2JWbGRXVUc2bEt4ZEVObUlabjJLb3NnUjBvNFZKY3BCaW9kUEdsRUNwSkk0b1gwS2d2RDV1b29FUllxbE81TERQY3c5SFQ3K3lMSDBXVXVWa3gzaXNJRkF3Qk9FYkNCd3Z5SXNPRDBoRmtldHB1eEU0VllWK2h3ZHVyWURLNjZ0aXJVbVhRdEdrYzcveTAyc083YU5HTW1SM2NLVndaVzVvTGFjUHphdDVtK3pIQmNoaFVZNGlYVVNoMEU2VzRvaGpaVVpWNjR2b1duekc3LzVxMmk2N0pxZjR2cktWWnlBZWoyaTF4MXBQL3NwNDBieWc4Zm5WNW5ERGlsOGRGTUtoWE9PSE4vQnE2REgxV3VYNFRtSGxCSU1HRlBnckNSU01VSUlpcUpBYTQyU2luNi9pNVNTb2lod1NxTjF6dmUvOVYxT25uMkhUTGNRMGlFaVNhZTN3WEp2R1lDWW1PKys5UjFPZjNRV25Sa2E2VFJXU3habWR2UGxYL2d5dTJmMlFTWVIxc2RSSGFLMFgzTlFGb0E1NlJES1lrMkJRNkFpeDFxN0RZQ3AwanFxVVlIUmUxRCtoTWI5T01ibnViRlBnVURnUVNVSTJVRGd2c1dDekJqVUlBK2lzM1lZaVoxMElLaHlXcXNVQWI4QXl1SGdzU2x1TkpGMjg5UU5rd1cyM1Y3SWJmZnZHRnFYdWZMOHhxYlYvRzJYQzdBaitjSE9sUExQbXhvNXFlbGtOL2czdi8ydjBIUVJXSzZ2WE1NSmlCTG85WGRPeEZhNHlZaTZHNDgzK3FpMUpZb2loRkRvWEdPQXpGb1dsNi9TeXp0Z2FtV2VzU0NLRkZHa01JV2gxK3NSeHpGeEttbDNjK3F6Q1d1ZER0WklWQ0w0bXpmL2hvejFnZE5BUVZIZU80dEVvc214V0RiNmEvUjFScVp6K3E3Z1d2ODZqeTgrVHJNNVF5VHFLQktmcStvTWtzckNUR0lGT09Gd2FBcmRRVmlGVW81MmR3T0RLZk5icXdldmlSc3orUG41NVZVZTdYYkdCb0ZBNE1FbENObkFBNE1ydldTZGM0Ty9nTldRN1haWWUvc1JuMnEvYmxJOHN1M0hMYU9menJuQmV1SW1FVTFrVGxxSHYvbmJ2MlRmdm4yc2I2eVNwakZKRXROcXI1T204ZGoyNVVibHp2elU2SnliT1UwYTQ3WmRMckVqRFFlMm5qb25ickljbkw3ellpdmh3Rm1OZEZ0OFI4SmhoZVYzZnZjcldISWNHa1BtaFpFQXJTbnphTms1TlRSTTkvU2FQL1lGYTY0d2czTkthaWxacHNsMERnSkU1RnZxR3VEczViTXNiMXhuVnhJeDNaaEZ4UkVtSytnV0d1a2tjVjFoVElFV1FPSllXbDlpZXE2T1ZZYTMzM3FEbkI2YUFrY0daZUVVQXlFNnBHYzdGRGkwV3lPbWhrYnp4c25YZWZMSno3SysxbUdoUGtPem5sSVVHYjF1RzJjTVVSS2g0Z2doSFQzZHhiaU16RURYdFBudzdBZjBhUUdsQi9KMmxnU2ptVEFUZWRTREQwSEpCZ0lQUEVISUJnTDNMWTRyVjgvekovL1g3N1BSWGtPVEE0WkVSdVMyVHl3VWhjdkxkVWRyd0VjTGFpcWhlbWRVT216NzVUZnZTVDg2ZFB4eERkMHBVd2lneWlFZGR6VndXQ0lraGdKTHZxTU9CZHVSemlSa25kdy9BR2tIbUtIQUZwSityemY4akg4UU11VmxHS0g1ejMveFovekRYL2dWRGg3WnorTGw2L1EyK2h3K2VKUkcydUQ2dFNXbTU1cXNicXhpeVpuYk80V2h6N3Nmdk1VYjczd1BUUjlEaGlHblNtallGQ0YxWUtJSWsydE1tZU9xbmVQSzZpWGVlTzkxdnZUMFB5SnZXZGFYYjJDdFpicGVvejdWcERBRjdYNEhtUW95MDZVeGx4Qk5DYzU4ZUptMzMzK1RnaHlGQW9xaEdKWDRWQlE3Zk5CRXNWbXNsZzhBd3ZtNnZpQm1BNEVIbXlCa0E0SDdGc3ZSWS92cDlkZlFkQUNOeEtGdER5Z29uRVVPQk1tb3lLdENnV0M1ODE3M1ZURHpaanJpMWhKNWFBWDJjVjgrTGxrZzBlVm5XVmE5RC9kcFNyTi95aUh6TFE2OW8yUnRIMmtsd2s5MStYSjRVZWU4ejJ4U2kzSE9VQmp0THlPQm1JUVRWOTVsNzV2N1NPcVMrZG5kUkhHZDFkWjFWdGFnS0F5MjJ5Y1hHZldwR0JQbG5EcjlQdDk1NDIrNXNuNkJScXBZemZLYnQ0b1ZvRVdCRS83KzJWaGg4b0xWN2cyKy84NzNlWFRmOHl3aysybk9ON0RXa21jRldiK05rQVpYYzNUNmF5VE5pRUxsblB6d0JOLzV3YmZZY0d1QUpVMXI1Sm4xdXRVNW5IV2xrQlpESDEwM1BJK0pxcStQMDVFNUVBajhCQk9FYkNCd0g3TzJ2a3hQcndPTzJha21yZllhdG96TWdzVzYwWmhuTmEyVWt5MjdNTjNFbWVDbXkwYWpvM2ZLaUtmdHg1NzZhNnppcktJY0doK1dzVWtzWmxBOE5iZ1NkOWNuL2NrUjRjK25paXc2Zk42dlVOVGlHbHBiWCtUVk53eERrUll5Nkx1Y2hJaS9lK2Uvc041YjVrdGYvRVdPSG5pSWJpc2pFZ2tIOWg1Z1pXV0ZxU2loM1Z2amc3ZmU0M3R2L0QxbkYwOWhNTVJHZUJFN0V2RWRZMkFWYkFZRldWWm9rTDZJOE9yeVJmNzBMLzVQbmp2K01zOCsvUXd6VTdQa0xpUFBlaVJSUksydTJMMHd5MHA3aVRNWFR2SHQ3LzhOWjI2Y3hxQ1pxamRZNzdWUkpNUXVRZ0FHalN0TDRLd3ovaHZUZW5EWnpxL0V5QmNjQ0FRQ1FjZ0dBdmN0d2xLdnBZQkQ0Y2lMM2tERTFtb1JlZDRmMkZ2NUVGWTVIU2lCS2dLMnZTSlFTbTI3RExobFM5NmJ1UjU0N2s1UlZvRm1VWTVHeTRFdWw0TTBoRTNjUTVFODZjQld3V0lIYWRSQUNrVmhMRHB6Z0NvZk95SXFMNGRJUlNnbHZIdERYbURwOGRaSFArRHFqVXNjUC9ZRVJ3NDh6T3pzUEplV3p0THI5VmhyclhMMndpaytQSGVTMWV3R2pneUxSVy9sak1ZVzgwWnlPb3d1Qm9XQzJtV2NYbjJIL0dTTGRYMkZZMGNlWXYvQ1hob3pkUXFYMGU1MWFOMVk0YTEzZnNoSDV6OWl2YnVNb2NCZzZSWVpFTkdnaVNCQ1U2REtGZ3NPUnlvanJJU3Uzc0E0aXpOZVRNdklSMnVOYzFpN3pYa0hBb0VIaWlCa0E0SDdIb3RCMDh2NmdFVUloN1hhdDVDZDFJbWo1ZkRDM2JLWXpaaWI1NVhldlNhODg3RGFRSmVQekxoWmhIaXNybXZjdzJsbmNHQXpuMEZRVCtyWVFtQUxoMFhRWUpvMHJpR3NvRGs5aTRvRXJYYWI5ZjRxVmx1MHRsZzBhU0xKVFI5ckNoYlhMM0x0N1VXYTc3NUpMVzVTRkFWS0tkWUxueVByODJFejRsU2dwUGZuMWYxYjNJTXlDaW9vQ3hXZEd6NjlpQnp0REJmVzMrZmlHeWRKMzZpek1MT2JtZVlNcHREMHV4dTB1aHQwYVdFeFdEUUNTUkluYUtwSGpaakR5UkdPUC80b3UvY3VvR0xGYW51RnN4Zk9jdUhLZVFUUXArdWp0YzVpQzRlU01VbzZ0TkNEcEpKQUlQRGdFb1JzSUhBZlV4UUZWUUZYUGExUjZBNVJMREMyQjhBbW5UcFFmeGFjTFNPdU4zTnR1RHVoc01rMFlSTjNFNUdWT0RIY1hyakt4eFNvbWlkTVJKeUZxS3k4N3VLd254QUNTRlZNSkdOMDMrQ1FSTVRzbnpuTUM4Kyt4S09QUE1HZWhUMUVTVXFlNTl4WXVjSGk5VVV1WGIzRTJiT251YkorbGw3ZXdrcmYwU3hORW9SVnRQVWFuYXlMUW1Lc3hhRng1TWdJdElIY3VIRWhYMGF3dC9vZFNGRkdqQUdFS3RXc0xML1lndnFzUUlnQ2wybTZ2UzdaeGhxTEcxSFpnY3NuZGRTaUdCbEZiUFF6SEk2c3NOVHJVOHczZHZNL2ZPbWZNaGZORWNjS2JRdEk0UEZqVC9EU1oxK21XM1Q1d1p2ZlpmSEdGYzVmT1VmYnRMMmd0UlpoZlQ2RXVHbnlTeUFRZUJBSVFqYndnSFBuRWNIUkNOOUFRSTErWm1TNCt5YmIzZzFDS0JRUkJvM1dHbTAwMnZpOHgxcE5rV1VqRWRXcWdHajQ0WllSMTd2bDFwMno3akxSVVpUL2NwU0QwdVZzNXpidGVTQjdLcHZiSFVmaWE3Y01ncGpkOVgyOCtObVhlZTZaRjlrM3Y5K0hUSjNDOWkycFV6eTA1MUUrODlEVHREcHQzbnJyTFg3NHpuZjVjT2t0Q3RvNEFaMjhqeUJIb3ZBWnAxN2tTK25kWFkzSnZGNnQvcTgvK09wOXZ2VFd5YWREbjRnNGp0RzZiQ3NzQlJqb2RZcmhqMW1DY1FZaHZYMmN0UmFwb0tWN3ZvQU5TVXlLQUk0ZmVJSi84b3UvUW0ydHhsdzBCd3F5SXNOYVM2UWpzQkVpSy9pbFYvOGJUcDcrZ01RMk9YWDVCRjNhR0FyZkplemUrQklEZ2NBT0U0UnM0UDdHT1cvWDQwdWY4ZU8xNWZDbmM1di8xRzFaMnpUdXp6cWExN2twb2ppNXJYVWo1ZnVWZWgwYS9ZL1cwWXp1MzNlMWdrbzBqTGI1SEQydXJjSmhveUo1NUZ5MGRnZ1VJREZtM0lzb3kzeTcwaUdqUXVYZXM2TDYrTmh0bndiYzVIcVVoV3VUVldNN2lrU1FBaEYxTWNQUGZlR1hlZUhwbDRsSlNFV1RQTXVJcFJvVzZ2Y2R1bTlKWEpOWG52Z2l6ejN6Q3IvemYvOG03NTkva3pqMkxRMTAwU2VkcVZQb2pLTGZBNkV3QWw5QXBoUTRNL3pxSFFnUklXU0VOZDdUVmFVSnBpZ0FnNGpqWWVxSmtCUzY4RDlhS1ltRThrSzUrb0VOVEFZY2hSMXhZZ0JxTXhIOURVMkVBaFMvL09LWGVlNzRDOHptczhRcXhobUxzeUNKRUU1aWVnN2hFcWFwMDd1YThmaWU1OWozTThkSXYvUG52SDdwT3o2elcyWm9hKzZOcnpFUUNPd285MHJ0YmlCdzN6SmE4Q1RkZUFSV1RNd2ZYYjVWcFBaMnFiWVZtenlJdGpPWWo5ajBuL3RQUkVETDNzYnIzc1dXZWFJdnYvQXpISC9rYVlTdFVZdm1rQ1pGRkRIS0ppampYNUZKVUNZZHZHSmQ0NWUvOUk4NHZQQUl1aERvd3Y4b3V1MFdSWlo3RDFhTUY2L09nU2s3b1ZVV1h3WS9UTzhjUWppRWdrZ0NxaFQrdXZEYitnL2xlNDNDK1YxWHRoV1QvWVFuNkhlcWpOaUV4K2FmNEpHOWo3TTNQY0EwdTFBMkt2Lzc4UjNhaEZNSTY2ODdNaWwxTVUxaUd0UmRnMGNQUDhiQjVtSEFZcXhCaGpCTUlCQWdSR1FEZ1VCZ2gvQytVcnRxdS9uOHk2L3kwT0ZIV0xxMGlrb2lwQk1vbVc1UjBRYVY2QVBKOGFNUDg5d1R6N0R5bmNzK0NGcExhUGZYRVFwaUZaRmJQK1l2eWx4aTZRUUlnWEMramJGemxsamthT3N3Qm16V0gwdUxVVEJ3dnBEVnFJRXBjS1lnUmlCRkRSQmxoN2NxRWNGM0I3Tk9ZNXdGSzRoSW1KUHp2UExNNXppNit4aXhyVkgwTktLc1JoUk9JZ2NqRnJMTWQ1WW9LZjFvaFpNOCt0Q2pyQlRYdVBENmFRU0NTUHFVbWtBZzhHQVRJcktCUUNDd0kwZ1NFcDU3OGpuMnpPM0JGUUpuSkwxT0RpNG1VU25DUmVBaWNCSTMwcFhObTA1SWluYkJaNDgvemVGZFIzd0RpTDRtSnFKbVUyemZvb3hBR1I5a1ZiWWNFYkFPNVJ6S1FvUWt0aWtLNldQMkZsSUhOU2VZU1JNaTQ5L0h6a2M5RWlRSmtvaUltQWhoRlZpRnhMOEVDdWtVd2lxa2lZbHRqWmdhTVNsTk5jT3gvWS9RVkZQUVY5Z01sSzNXRndQeEtzck1JT2tBWThFNmJLR1ptOW5GUTBjZThpa0lDR3hoZnpJR0ZRS0J3RjBSSXJLQlFDQ3dBL2k2cTVTWGYrcno1RDNIUnFmRDNOUUM3YlVPUkdvd1ZDK284cW5kMERnWC9GQjhFWE5zejZNOGR2QTROMWF2RGtxMkdySk95N1JReEl3MkVwWmxFd2xScnVtb2tiZzZ5cGNMQWxEZzJ4cnJIaWhxUkVTaytJS3htQmhOZ1FOaVlvb3lXbHkxSWg1R1pDMXVwSHRCU29QZGpUMU1SVE5FSmtYWWlDaHFvRzBQSzMxWm1xc3F4cHhBT29sdzBoZU1SUUlzNk55d2EzWVh1K0o1Tm95amJWcy9ycThtRUFqY1J3UWhHd2dFQWp1Q1JLRTR1UDh3M2JVY2JTMXpjN3ZJTmpUQ0t2SmNFMGRWeHdmQU9XOWtRR204NEJRbVM0bGxuV2NlZllWZHpUMFVya3VtTzZoRWtkUmk4a3dQamlVY0lDeHkyQU9YdkM5UktpbFRYUTJ0OWdZZm5mbVFsY0sza1oyTmR2SDQ0NDh6MVdpUTlRdHFjWW8xb1BPY1JxT0JGV2FZY2dCSTYvMkpqZFJZWVJGQzRKeEFtWmc5emIzVWtnWVVBcXNkVWtrRVhyUldzcnJxeTFhbE55Z0VPRWVTMU9qMU90Um02dXlhbTZPNzNvSTh0UGdLQkFKQnlBWUNnY0NPSUlCNjFLRElOTTM2RkVVUGluNUJMR3ZnRkdPZUYyNkxTaW9YWWZPVWJ1WTRldkFsamh4K0JwVWFDdHRsbzlOaVptYUtQTmQrSDg2M3RwWE9JZkFPQlFoTFVrc3h4bmhockFSWHIxNGx5eHdiNTk1RDRIamk4V2Q0OWRWWDJUTy9oMWFyUXkxT2ZPZXhMS05XUytubUczNmZUbmhCNnlST1dLdzBmaXJ3UXJWdmFVWnptSjd4M3JZT01sMGc0NXZkSVl1VWlxTElxRFZxdExxcjFJUWtqaEw2ZWY2SmZ4K0JRT0QrSkFqWlFDQVEyQ0hxOVRvYnEyc2NQYlNiVnEvSHlzcWFGN0pBSEtYZUxVQ01SeHl0R0xZV250azF4ZnJHR2pLRzljNHFRaGZVcG1KeTA2TFZyY1NlSEtRa0NEU3lqT2xhWWVtMU8vVHpEQ0VjYWIxR08xOWp2YmRNUVErd1hGKzVSSzlZSjdkVGRMSTF0RW1JcEtMZnora2JoU3ZURVpTVlkvbXFUdmlJYkZia0pGRUtWdEtNWVgxcGpZVkdRcFNtUkVKaUxBT1I3VS9RZ2hNNDRmTmZMWUlzejVpSm1saHJNUllLbzlIbzRDTWJDQVNBSUdRRDl6bk91YkVYdUlsNXR2d2pPZlNXSGZXZHNoK2pZYnR6M29mVWJlUHk3NCszOWZMUitXUEx4ZWc2SXo2ejJ4MS81RHlzc0tGYzh6NG55M3BJQ1d0cksxaWptSnZaUlgralFHdE5ta1RvM0xjSmRzTGdJZ2RTNEt5aE1CcmpjbnI5eSt3NldPY3YvdkkvOGZxUHZvZEtEUDJpaFJYRzU5VzZZWDZzcURxZVZSRlpKRXBNb2ExQVcwMXVORnJuRkRZdlc4b2F6bDl2ODIvLzREMWlWU09TQ3FYaU12THFIUmVNeGUvSERndTFBSnl3T09GdzBsR3ZOMWxiWGVlaHZZL3dqNy84SzZnYUxLOHRzVzl1SHpiemJaSmRLYXlyeGhaV0tpSVJrV2NaU1QxaGJXT050SjZ3ZVAzaXdEOVdTalhTZGl3UUNEeW9CQ0ViQ0FRQ080RERzcHJmNE1PekovajVMLzRTV1Vld3ZycktUR01PQ3N2S3lqTFQwMDNpTkFJRnVjbnA1MTJNZ0hxOVNUcmRZTDNmNXZMS1I1eTkrajZMM2JPb3JpSEhvS3Bhc1pFR0lLTk5Pb2F0NWRheEtHelpKY0V3M21TZ1p3dXdJSFVMS1JUS084aVd2VDhFamdoUXlMTGNTNHcwM1hCWU5JWmFVYWRQem1MckNwZFhMakoxWklaNFZ0QXk2OFFvWkJTaGxDS09JaXlXUE04cDhqNTk0NWhxVExQUlhxVTJtMUtianJoeGVZbkxTMWN3V0tKSTRVS0dRU0R3d0JPRWJDQVFDT3dJRmtQQlcrLzlrQmRmZW9XWnhqdzNGdGVabVpvaGtqRzFSb3doeDJnREpzY0lpNHA4eExMWGI3T1JGVFQyekhMbTFQdGN1THBCUVlPY0RFdEJZVndwU1gzWHQ2R3ZnRTh2R084ZGJBZk5mUWZqRTFWNmJybWFjU0NjS2RNU3ZHQjE1UlhnVGJjRy8xUmRFbXpwWDVBNWg4Wnd2WGVWZDgrOHc5emNITHNhdSttM09xaDRHcU16ZXYyQ3doWWdIVkVVa2RSU0VxWG85ZHIwVFo4MFNsamVXT2FEajk2blR3K0RManZhaFVLdlFPQkJKd2paUUNBUTJBRXNqa1JJemx3N3hmL1AzcHMxeVhGbGVYNi91N2g3Uk9RS0pJREVScEFFdUZWelo0SFZaSEVwN3RYVjY4eklURjlFRDNxUkhrWXltZWxGMGhmUUo5Q0xaR016WTVMYTFOUFRVOTNWWFZXc0tySzRneURCQlFDeEpKQmJSUGh5N3oxNnVPNFJrWkVKRUNSQUFpRDhSd3Q2SU1MRGwrdWVFWDgvZnM3Ly9PYXRYL0hUNHo5amZrK1BZYldKSlNYcEdMd3YwWFhkbHlaVytsdXQ0aDExOFZ4YXZjeUpUejVsdGRna3lreE53R0NNUm9Ldmk4YnFGc2ExeUl3Q01NN1piRWxBMVFLMkZvZUtjZDlrRlowRkdtc3NDUUZRVWFacUIwb0lQcTVqbkxkYTUvRnE4THJDMXlrQUgzenlEdnYzN3VQUkI3ck1MTXd4dUxSQmFqcVlHWXZSY2JzQXZIZms1UkJ0WUc1cGhvMWlsZCs5ODFzK09mc3hBVStTV2NwcXVFVnN0N1MwM0ptMFFyYWxwYVhscGhBWXlEcUdoRis5K1ovWnQyK1pIOTM3QlAzTE9YaFA1VUVIVDZJMVNubktxc0JYSHBzYTBxUkRtbWgrODh0LzRwMFAzc1F4eENoUEtTVkNoWk5HNFZsaTFMS1pqZ3ZGQWhwTk10b1dvSTdVaG0zaU1FekVjMk93VmdNZXFPcjMvUmJmMkNqVFl5UVg3MUVLdkhndTU1ZDQ5OFFmbVo5ZDRON2xvM1JuRnpDaXFYekZZRGhBOEZpcnNjb1NkQ0RyZEZGR09QSHhDWDcvN3B2azVDZ0ZSVFZrdEFrdExTMTNOSzJRYldscGFia3B4RHpTVHJmTEZ4Yy80Vy8vL3Y4aGxKbzlDd2M0c09jUUpsaENXZUJkVHVrS3JJV1pYZy92UFYrY1BzVkhYNTdnN1QvK2hyNjdDRlFvRGZnS2JTQklFMDExMGJwTG1sWUpjYjFqTjlxbUdLejVONHlUYXBsS1FXQnFHVzQ4WDVOUk1IR3JmL1JNZ1UwME9taWtjbng4NWlPc04xellmNUVuZi9RVGVza015b0RwYUxUUlpGbUtRVk9XSmFlKy9KUUxLeGY0NXpkL3hTVldNR2lHVW9JQjNkT0V6ZTJpdTZXbDVjNmlGYkl0TFMwdE40RkdPaFpoZ01meTRSZnY0djlPK05HeHg5bThlNVBsM2N0MDB3VEVFNExEK1pKOGZjRGx5NWY1dzF0djhmc1Bmc3NhRjRHQ3hJU1lZNm9neWFBb0p0Y1VJN0Rqcm1DVHJWMWpTTk1nQkNXb1dwUTJlYkpobkgwUU13MFVhRkVvRE1yNFJzcnVLQ1kxUkZFTk1ISVZpV3YrNU53bnJKeGI1L0s1RFE0ZnZKdkRSdzZ4dUhzZWt4cjZSWi96WDUzai9GZm5PSFh5RktmWHYyU1RUWVFRaTlGVUJUckdsRnRhV2xwYUlkdnlBNkQ1RlozNFlWTlgrNUhiL3F1N2s0dlZxTXE3bVgzaVkxb2dUSGxrNmFuRlhvdkw1YmY1ekNUeWc3SFMzSDRFcnJ4cjhkaks1RXpiRHVrb1JManpBbVV5c25pRCtRYkh4Q2FRbDU2NXpnekR2T0RqQysvejFZVXovT0dQLzh3RDl6M0k0dXdjKy9Zc2thU1cwNmRQODlHSkU1eTdjSTQrQXlweUhBT0VDcHRhOGp5dVcxMXAvYzNmaE1UekpwN1hZUlNQVmJYRFFaRHhjQm96NFZpbjZzQ3VFa1JjRkxtYUxXUGZ6RHI2aTR5MnNGU1ZvS1FpVXgyc2FCd1ZxMXprRDE5dDh1Rlg3NUgrSWNPTFEydXcxbEtWSlgzcG93RlhDL0hVcHF5NnpiamdCQmhlK3poZmxkRUFYR0Y2VmJhZXQzSG9kejZuWk90TThlbDBqNHZ0Qzd2S2dscGFXcUFWc2kyM05mR1hWOWMvZE0zZFZDUUtSQkVaZThnU1l2RUxnb2dhS1VBTjhjZC9oeDhISmRGbmRvdHRFZU9DN3RFNlJwc2pXNlpibGltVG4xY1RINW40MGF2OVliZmZ6bTFlSHZ2SWVyYlBwMVRzWDZwVTQxdTdmWjl1UGZTVzZYaGsxSlJFMkw0em9TNG1hdll6VFRXaFV2Z2dnTVlhUytYTFpuRmJSYS9TRTR2OTltSjJ0TWhKOGNNTzA4WkFBS2dML1NHQWQ1clVkc2hkaGFQQ1U3REtHcXY5enpuMTFsc3hpMVZaUkJTT1VJK0tRV0dpT3dFRm9nSWIrZGlIS3Q5SjRPMGdpcWFUQ3hvbUw2NkNZeHR1Y25rVDJRaVR5UW1qZFV5ZTNrQWhKUld4MjVpaVFET0llalRVbi9VQi9QYkxtZ0NJQ3lPYnNKR0l2ZDV6WExIMTNMamE4WlBwWVl6RmRZM2liVElzNGpUdWVHWVRocTZLSDlkZ2twVEtWZlhDTk1hRjBiVkFhUGF6M2g1bDYvR3J4MUFuaGxEVjMyZWl5VG9kaW54d25RUFEwbkw3MHdyWmx0dWE3UUkwWEdORUxPejQrZWwvTnovcU95MXlNbUF6SGJ5WmpyUmVpV214ZTJjeUtWdlV0bGZpcXdxcHhjS1dZUXFRWnVBZGxFVkFrMkMxUlVSdzNrMHVjbm9WMy8xNDF4WC9LcldvSUlUS2pkYlo2VmlzU3VsdlZsUkJHT2ViZXJKdWhnOFZSUkdMcE1yYUxMWGI3WktZbE9FZ0o0U2lOcmVha283ZlpKOG1CblB5UEk3dUEvRzFjZHg2SWdvK0tkaXZGbEhjQWFsYkxWd1hFOTY0TjR0eHZIOVM4VTVkV0JMYjhCcWxVRVpUZUU5Vmx1T2M0dm9LclBIZlZVb2pXdkFTcUlJZ1ZidzRFd05WR1FpVkI0SFp1VG5Ld2xIaytmZXpzeTB0dHppdGtHMXBhYm5KVEJZaWpmMU1KNG5DSVl5bUl3UmNRUjJOdHlnc0lXaEMzY0wweW5wbmNwMDNnTWtWYlluaUNaSlg5ZTE1aFZFV3BSUkZQOFpURFJrR1F6ZVp3NG1uZEFPS1FST3h0S1RXVWxaUnlGYUZvNVFOUXIwdXJYUk1BeEFZUzZ0dk90MDYxbHZIK1JyMzkzYm1Ha1Z4YzBqMXhQOUhDeGgxSkJ1Zm1aT0xUSzFCbEFFWFhSMk1zWWhXaE5LVG9FWitFZ2hvYnpFb05BR1JnQlR4VE9oYVMrNXlCTWlISlVxUDE5dlNjcWZUQ3RtV2xwWmJnRVlDakNYVU9FMHhiS216bnd3SUFtZ3hkWUtKcGR1Wm85dnRjZW55QlpUeUJQSHgvdXlPbXZWRzVNZnVJUGwyRWhlaXlVd1h2TVpMd0tDWTFYUDBPclBzM2IyWGhZVTVmSENzWEw3TTViVkxiQXpYS1NueGxkQlJzNkNGM09jME42QVZDcEdZb3pCT3d2ZzIwN0FsSGZScTQveERSRTFJMDYzeS9sb1hzRFhxM3h4NlgvOURLY2lkQTNIRWxzQ1dyc21vS29jQUNaWUVRNDh1TTcwNXNxd0xRRkdXNUZYSnBYSWxOZ3Qyd295ZW9aUXFYdGlvUUc5bWhzRm0vL29Hb0tYbEIwQXJaRnRhV200YWFrbzJiSW5IcW5HaDBZNVR3SkNnU1lIWVB2V1JoeDVuZVhtWmYvN3RQM0YrNWV5VlYzeERJbGxOam1Rc1NacllxZEU2RWdOYXBZalRlQmUzY25lNmg0Y2ZmSnhqOTk3SEEvY2NpMmtvUnFPMVJtbE5mempnOHpPbk9YUCtOUC80cTM5Z0dQbzRuNlBSR0dzUkNpcmZwTVlJK2x0K2pZZGF4S0xHdzdGdE9wMTZNN1dNMnprZ3FDWWE2NnFKYk5lZHJubkMxTFN4VHR1V0Z6MDFRT01VYkUyQ1JRdFVSWWxCMDZITFBQUHNYOXpMWFlmdVlmL2UvWFN6SG1WUjBlLzNHUlk1bHpaV09YSHFJODdMQlZ4d3BLUjRIRjRDZzBFcllsdGFvQld5TFMwdHR4UlRPYzdUNG1CTFNxS21heFlvZmNDUzhaT2ZQTU1ycjd6QzZiTmZzbnA1RTBZaTh3b3h0aHVpd2ladk9vOWRBU0RtUDR1TFQ1UVlMQm5IOWo3SUN6OTlpZnZ1ZllnRVM4L0dyK0RZTE11Z1RFSnZEcnBIZHJOLzl4R1dkeDNpWDM3L0swNmNmZ2NQV0NVTXF6QjJKeGdwcFcrVFduQ1ZYZHFhTkh0N0s5YXJFbmRRUnRQdDFISi94NlNYcHJoMFpJSXhYVlJZdjVhWWpGUVN2Sy9xQ0d5UFk4djM4c0RoQjFuc0xyQXd1NXVackljV2l4akJaMEpRZ1kzaEJnY1dEM0R5ekVsT252dTQ5dEkxOFNJazNJZzdDaTB0dHordGtHMXBhYm1wWEZGcVRsZU9UeU1HU3hjUFBQVW5QK2JGWjE3aG5pTVBjdUxqVTVUQmtlaUVNaFJiUHo4ZGNyd2gxSFhuRTVadlRXUlAxK3V5V0I2NzkwbGVlT1lOSHJydlViU3pyRjVhWStoTFpqcGRNcHVSVjQ2OHFCQmo2SFYyTWJkbkQzY2ZPc1pzZDQ3c3pZd1RwOTVtVUYwZXJVRHBtRFVSdHNVTHIyMHF6VVhEbFlyaHBwa1lNejJxeTc5OXhWVHRaVEwxNnZhWTgzaU9FSS94aEZCdGlqcjlaR1hjNUhuYlhLQ0lJbmhQUXNLU1h1U0J1Ky9udm9QM2NYVC9NVlNocVlwQWRjbERWV0dVSlRVcDJscVVXQmIzN1daNXp6SkxwM2Z4aDAvZjV1endDd0lhWlRTVjM4RldvcVhsRHFNVnNpMHRMVGVGNmR1NHpXMXVyalJ0Q25Pa3NlcEt5YjN3NG1PdjhKZC8vVGNvcTFnNXZ3WmVvN2NsTFV3dEIvZ1dHWkU3c0lQL3JZeHRtQkpTQk1POWU0L3lzK2RlNGNGN0htYjl3b0J5Q1B0MjdVUGNJSFphTFVENWhJN3VvSFJDS0lYaE1LZFNPUThlZlJTYkdZYjVHaCtmMlNCSkJOc1JOamFyaWYzNWRtSVcyQjU5blh3K1hjUzJSY3lPYzJsdlQ2WmxiTHdnMldLUE56SHZTTVJPV0JBM3h4cXB4ZXkwQjYweDRDM2VDUmJMSW9zOGR1eHhIanI2QVB0bTkxS3NGcWpLWXIwaFZUMDZTUWVDeHBXQmNsRFE2L1VZOUlmTXpNeng4TkZIVVNua2YreXo0aS9pZmJSajIrWmMwZEp5aDlFSzJaYmJHcTAxM251OFV4aVZvcFJDUkFnaElDTFJwMVdOSEJxNVdnbUwxRDZ1azk2d2V2cDl0cjR2VjNpL21VVk51TlB2OVBuSnV2b2RsLzgxWnJBaU1vb1pUYy9iK01uZWRreUlWNVVvcEpMNmJyaUZBRm9ac3F4TGxXdCs4ZXhmOGNRamYwbzNuU2ZnMGFyQ2x4NURIWTJkWmxTbGZxTWNDN1lLd2kxRmFJQW5NRzkyOGRkLzhXOVltanVBR3dabTAwVThobENBOG9hZ0hFb3NWbUxCV3FnVVNoR2JCeGlMRGNMdXVUMzhxei8vci9qZi92Y1BxYXFTcXFxYTdJcXJWMlI5emZGWGt0VG5UMEFiRlgxYUF6dmZJditob1VBbElLN09kVFVLbkNCb0VtUHgzbDk1MSt1eE1ZeDdRb2pFWmhKamc1Z1BJZ0FBSUFCSlJFRlV3YStnVlBRNlBieXJzRmdlUHZvb0R4OTltSzd1VUt4V0pDSERrR0F4S0orQVYrQTFxVmlzc21nUGpwS3FDTGpDOGNEaEIzQ2g0dS9lL3Y4b3FZaTl6bHBhN214dW9QOU1TMHRMeTdmalNsOUVVZ2xLVzhDaXNjek43RVlrb2N3RHJ6MzdCazgvK1J4SERoNmxhMmNJbGNaWDRMMmFpcXQ5bHpUS2VDeG94OXBTbzhsNDhJR0gyYnUwbjBSbjRBMEVUYUl6cWp3cVJpVVdKUW9sR2kwYUV4UTZHTFJZUWhFWXJnOVo3T3htYVg0dnp6M3hQQ2xkVWpweHpDYXZ6M1o2WEhYVExScU5KVVdSRUp3R3Q4T1IyR0VnZnlodUJ1THFLS3VCTkUxUk9ucm9CdS9ybDFWOUp1bDQxVEJwNlNDZ01TTWhha1NoZ3FyRmFJekVhaExjc0NJbDVXQjZnTHVXRGpOcjUwbGRoNjZaeFhpRHFZKzFDZU56UUlsQ2k4YVZIdTBOcWNxdzNwS0ZqTU5MZDNIUHpOMTB5Wmh1RzlMU2NpZlMvaFcwdExUY21nZ2dLaFpNaWFGajVoajBTMUk2dlB6MEc3ejgzTTg1dU84dU10TWo3enVxdklwQ0lzVFNuVVFuWEtsQlJndzRYcThjQzFPUFNUU0toQTR6UFA3d1V5ek9Ma1dIQlRGVVZZVXhoc283Z2hydFpyeFhJUEYrdFphQUR0QkxNM3poU0pSQk9jVmpELzJZRHJOWU9pVE1SQkVxVjM0Z3lSVWYwZWNoSTZQSHJKN0ZZRkVZVXR2QkpQWjJUbis5WnBTdGZ3SURpSXVSL3pndXR2NHZKUm45UDBHSmhhREJnNUY0R2FCSjBhUVlVaEt4MkdBeFFXT0RKWk9rL21UQ3NZUEh1SHYvUGZUTUxGSXFsSXNDZHJJcFNnemtCa1I3VUlFZ0RvS1FvTEZlUTZFNHRIaUFodzQvUkk4WnpBL21rcUtsNWR2VHBoYTB0TFRjT2t6bWEwcGRMaVVKcWU1UWxoNURsMWVmZVowL2YvMHY2Sm81UWc2NXp5bDlpYkVKdFFsQUxJQUtWN3ZwZW9NRVFGUGd0U1g2R2R2SWdtVm1ab0hEaDQ1U2xoN3ZBS3VwcWhLVkNkWnFSSG04Q2lqUmlBcDF2bVdzNU5LRWFOTmtNbnp1Q1NYc210bkxRcmFIaThXNTJqeks4RzBWWjVSaENhQndRYkNrZURSVldjYTh5NUZULzA3YzRJWVNOd09CUkJ2S0tvQm9wQXdrSkhVY1BTTWhvU1EybzRoQjJGQmJsbmxFQWhvOW1yOU9Dc0ZQRkljcEZBa0pDczB5KzlpL2VKRFpaQjZWSzFTVklGN3FIbXFSb0FTdEhYN2lOV3MwcmlvUkR3a0p3LzZBcEp0eGNQNGdjOHl4d3FYdmNjQmFXbTVOV2lIYjB0SnlFN2xDd2RXRWlGMlkyODNtUm80aDVkWGpiL0RLczYrVGhobkVHUkpKVU1hQ1VhZzBFR3hGY0I0SWVLcnhzaWZ5UGRWb3JUR0w5WWF3Slo4MGlsaEkyTE4wZ05uWkJkYlhjeXdkbERHRTRLTU5VMGZqcEFMbDBCTEZiNUNBQ3VNUytHRi95TXhjUnIvWVpLNHpSNGNPeHg5NWhsT2ZmMEpGU2JBT1VWY1dzbGZMc1ZhaTZkb2VnODArUVR0TVI3TTZ2TXlaeTE5R3F5OXRjS0c2eWs3Zi9pSGJLdmNZTEl2ZFJaYVhEdEFoQmFmSmRJWUtDcXNTSUY1YkJCVVFGZXBwalBwYkZ5T3FrNitQMjE5cnJGZ29ZTy84ZnBaNnV5azJLcXhQeU93c1JpQklHVCtMUTdSQ0JHU1VWeC9Jc295cUtzRWxwRFloNzBPMTdsaTBpeHlZMjgvbkcxL2NsSEZyYWJtVmFJVnNTMHZMVFVhenRlMnNycjJsREJyTCtzYVFoSVNmL2ZnVlhudnhEZmJ1T2tEWkw5SE9nQUp0RkZvVXZuSjRLb1FvWkkweXVHbEQvd25IZ2h0V2RiL05DYUdKeUJxV2RpOWpkSVozQTdwcFJzQmpFa3ZoaDFocjhUaWdMa3BFTUVFalN0QWlkZnBESUxNSmwxWUxkdlVXU0czSzh6OTVtU2NlT1U1bkxpTjNmYTRtS0s4bVpMVm94TU5ndUVrNms5Q2RTL25rekNmOHc2LytqdmMvZXg5WFZqdmJjM0VEeHV3V1FLRkpNSFRvOE5EZEQvSGtJMCt4WjI0SlNnTVZoRUpJYlRhYVA0cFpWNHZXT0FMZXcrZ3NVdU0wRTAyTXNxY3FvOXgwWkhSSXBVZlZEK0FEdlNRaGVEOHlvbzJwSlFHdnRoNnpTaFdJOWxSZTZIVTZaRHBGRllxNVpKYmx4UU9vamRzOEt0N1NjZ05vaFd4TFM4c3R3TlFQc2pSeFU0Tkc4ZXpqTC9DTFYvK0N4ZTRlUWc3em5VVUdtOUdoUU5rWU9TeFZnZElCYTIzZHEra0tQcWszQ2pVMnhLZWVqaHVleGdLMWdDRXZQVW5XUVJ0RFVaWWtuUlFwQTVVdkVDc3hvaHFpdzRXb2dGSjFSRllnVFMzZWxZZ1BCQ2VVVlNCVW1sNDJ6MHpXSTVWMGkzL3RORi9uZWxINkliWXpUM2UyUzlJMXpLUXpkTlBaK3JaNnZDRDRvYUpIeVJVSkZCbzFCSXlHU2pDVlJYdU5EQ2NOWWtOOWpCUktDVjZEcTNPYTR3R01GeVdhZ0VqQUJNRnJSN2xaa2lVZHNrNEdlRUxRQksveDNxRXNvK1BuNitXSUNLTGphMVVWTUIyTkt4emVlMUlkblZrU2xaR1Nia2xOYUdtNVUybUZiTXNQQWxYYjNqUVJ0OG1wcUoybk4yUzlmUHZvMURmNUNkSTdyT1JXa0Jqak8rcmZKRExVR1BMSFhOYXhqM3lNWmdvR1NGQllGQmsvZi80WHZQRDBTL1RTUlhSSThLVndlYVBQVEhjR0FKc2xCQWMrQkl5RnhIYWlqQlcvemRkVFJ1c0pOMlQ4ZGpvdWt3VmdnOEVtZVQ1Z0xsMUFlU2p5aXRtNWVjcXlwSElsMklEQ2dkSjE4VmxqNktSakJOQjVobmxPMXMwd0hjMXc3UksvZitkM1hGcGRZVkQwMFZwZmw1Qk5VMHZwQ3B4VWxDSG4zTm9Gemw3NkFrK0ZWblhUZ3dtaDNneGxHTDkwblV5WXNzTFgvMUhjMEZCd1hHZE95WHVmL3BITEYxY3d3ZUFMSWRNWm1lbmlTbDkvVjhRVFNIVDBubzFwQkNBbTVqYWpwQmF5RG9XZ0JFeFFwQ3FqR2ppT0hyaWZSKzk3a2t6UFlwWEdvR0pVdDA1SmlQczJZY3NYNGgyRHZDaVptNXZEbHo1R3lEVW9yZkNTMHk4MmIvU0F0TFRjbHJSQ3R1WDJKZ1NNaW9aSEV1cis1eUVxVmU4YzFoRHYrazBMM2ZyajBUdFdtbi9FOTNmNDhkL3llajBOQ3NiNWNGTis4cXJadkRvSGMyS1JXeHBON2VBWkt5SWpnVFN5VkJWMjhKa05xSnQ0WnpIR1RIVzlKWHJxSjNWS2tTalo0VGMzYm44UUp2YlhZT2loNkNBa3ZQSHNYL0w0UThjNXVIUWY0ZzNGWms2aU8vUm1Fa3BYb0pRSGhOSkRJQ05SR3BmSFJnU0JNTHB3R2F0V2kwQ2RQM3VkKzc4bDN6WVN6ZW1yMGZOVG4zOUltbml5UkxGMmFaWGR2V1ZjMzVOSkQ2c3RaYmlJWjRoUlhWTGJSVndTdTN0NWc3V1d6ZUVhaDQ3c3BkdzR4NWxMbjBHbjVIY2YvejJmclp6QTQvRDEvbHdmVFkrdVVCYzBOWkhCbmVlK2NkSkpqK3lqbW1yOUxSSDA2WTVza3l1V0tRSDhMUWdFS2lvY0ZRVUYvWTJQUmhkVFkvdTBodnBLS0V5djBkVEhYT28wa1JqRmprc3hwQ1NrcEtRYlBlNjNEektUek9MeW5PQTFpVlgwcFl6NXljRkVLNjlnSUNpTWdBVEZucGw1enAzN2lybkZXV3lxdUxCMmpzVzlDeFNoNHZ6d1RMM09scFk3bTFiSXR0ejJUSXE5a1ZoVlU2L3ZNTDFldERSaTl0dDlGcjYrMUdoNld4dnpkYmlWdWlwTnF1bHBBVnRQUitId3JXOTNPakFjeHVjTE00c00reDZQcGNNc1R6LzZQSC82NUFzczd6bElhbVlaNWdVU0xGNUZxUkdMWWh4QldVQ2psRUdDd3BweFhxT203cmdrRUwvdWFrRnlnODMrdDVhc0JlS1IxYUFxdmpqek9jY09kT2gwTTR4UzVHVkZtWHU2TXhxYmFKeURzaW9RYlZGaTBHUW9ZekhXc3JSbkgrZFdWc2lsejhMZU9VNSs4VWRXTnMvaTZkZXlxYmh0RGZISFRiSlV2QkFTeHRIbHF6WjVhQVR3OWdhejM0UjRRWE05UWpDNnlNYS93em9pMjVnSUN4QUNXWkpTbEJYbisxOXhidTBjaS90MllUc0pVbmkwTVNCTjl3bHFEMkdOOXJHbExVRVlyaFYwZEpkTzBxRmtTRERDd0ErNXRMSEN5c2FGVytLdVRFdkx6YWJORkc5cGFibE9KbjlPYTlXb21qRDR4RVBHdDl3VkFRVVVneWpxRlpvaUQzZ1VtcFRqVHp6RHozLytDdzRjT0lRMUtmMytrTElzVVVxaHRVWXBRUnMxNnVRMldyc0lXWmJkb01TQmE5Lzd5WXVLU2F1bXk4TkxmSHJxQkY0N3hBcjljb05PTHlIcEtMUlZXTlVsb1llaGk1WU1xek15bTVFYUc4VjZDT1NESVoyMFM1cDBlUC85RDlrcytpalM3MjMvdmx1YTJLZUs0alRvclFQYW1BQUVJT2pZUEFKZHgzTEhFZDFiRnFQeEJDN0pLbWZPbjJFWWh1aXVwbFE1dVM5UW9qSE9ZSUpGZVEyaEViRlI1aXVsNkhhN2xONVJsaFdkN2d4b3hhWFZ5Nnl4Y2JQM3JxWGxsdUFXL3hab2FXbTVWZGthRFp0c0NqRGRLTURGYUpXYW5HZjg1ZE5MNXpEMHFIekEwdVcxNTkvZ3RWZC96cDZsWmFySzArLzNLWVk1V21zNm5RN0dtTmlXT0phTWo0U3NVb29RQXQxdWQ4TE44N3RsVXFwUGo0RFVucU52dmZjV3A4OStBYWFDMUZPcElVTy9nVW9WbFJPMDZwS2xjeVMyZzFVV0VjRUhSK1Z5THEydXNMaHJubDR2NDdQUFB1TVBiNzFOUUdQb0Vvdkpidit2OEVhTWpzVHNaQWV0a2FBZFMxZURRZEhrRk4vYTlJZWJTSjEyOFBuNXo3bTRjUUZ2SFZYaUdMcCtuVWFrMFNGMjhwck11UllST3AwT29oV2IvVDVEVjVKa2x2NXd5TG56NS9GdFBMYWxCV2lGYkV0THkzVXhMVnJERmh1aW5UcHJqVzhwZzZXSFZBbUNSZFBsK0dQUDh0d3pMN0YvLzJIVzF6ZlJ5bUJ0U3BabGRMdGRyTFdFRUtpcUF1ZmliV0VSUVVTK2R5RWJ0WmJlRmtDTWo1aHJtaVVaWjFlLzVKZi8vUGRjWER0UDBsT1Vlc2ltdTR4VEJjT2lJbmlEQkUzbEE4TnlTT0dHZUNxVWNYUjdtcG41aERQbnZ1Q2YvdVcvc01FR21vUUNWOGUwZjZDSUhqMG1vN0NxOWhyUUk1dXptODNVZGt6bThpcndDSW0xT0R4bnl0T2NPUDB4SzhVRlpNYVR6TWZPY3lvSXFzblBKNTdQb2Jia3luMUpoVU1zcU15eVVRMzQ2TE9QK1dUMTg3cjVRaXRtVzFyYUhObVdscFlieUE0NWpsT0ZibU9YQW91bFN5a2FSY1pMejd6R1N5Kzh6cjdkQnlqNkpVYWxzUldvaWtMR09RY2V2UGNZWTlCR28zQ0VpWWlzaU5EdGR1dmxxKzljenNibDF4bXlVL3NzQkVvL1JOQjhkT29EZXIrZTVaa25udU5IOXozTXpHeks2c29xTnB0QmxNWkxvUElsRUxDcHhpWUdySkFtbGxOblB1SWZmL09mK04zSHY4YmpzVXJoSlpEWUZPK0czL0VlZm5mVXBZdTE2QisvOG5WRXA0dGJRY1NPdVpKN2lRQmVCendlaCtIRWx4OHdPei9EMFVQSFdPcnR3dWNCSTZHK0tLa0lhSlRXaUNpOER1VGxrSFF1b2R2dHNoazIrZkxNR1Q3ODRnUnJyQ0xmMjMySGxwWmJtMWJJdHJTMDNIZ21MSzhhbEl4cllTQ1d5amcwSFJaNThwSGpQUGVucjNMNDBESHl6UUpmQldZN3MvVDdRNnlPb3NXWEhrSVVzVFpKVURvUW5OdVNJeHRDN0liMHZhTjJlQzZCTWhUTXByUDB5elhlZlB0WDVIbU9wK0x1ZzNleldXMHlQOXZCVXhKQ1FGU0ZxWHNwREZ4QmYyT1ZyeTZkNGJkdi9acVRuMy9Ja0Uyc1VoU3F4RW1CTVFuaWJ1ZUlYTmk1VUczS1RxdzV2RTBuTm8zQ2o5d1ZiallUclhwRmJ5dFcweFlHNVlBRWk2UGlmTGpBNzAvOG5xRWJjR1QzRVpidGN2MXBoNVpvdmRhY3owNTV2SEVNZE1YbWNKTXZMM3pCaDZjKzREem5xS2h1b1RGb2FibTV0RUsycGFYbFc3Tk5SazFiSnpVbUFWdEVySzZmUjUvWTU1NTZtWmRmZnBXbDNmdFlXOW1FWUVoVVNsRlVwRFlqU3pLMGFFcGl6L2xSZWtHWmsrN3dEV2FNK1M1MjlRclUwZGhHeEV3SldtTTB5Z2lPaWlGOS92alI3L25veEh2ODdMbVhlZXpocHhqSVpaRFk1dFFrUWplekZEN24vS1d6bkRuL0pmL3ltMy9rMUtXVEtCU09JY0VZU2wrQWhpSVUxMmRrZkN0d0ZRL2M2WG1rSHVleCtMMVZSUHhPTFpicnFWR0lpem15ODcxNU5nZER6aFpuS1U3bWJHeHNzUGlqZWZBZUpiR3dDOUVqY2VxVXg2YUdDeHNyZkhMMkU5Nzk5SStzc29yRFlaVWxsMkdiSjl2U1FpdGtXMjV6dE5iakhNbjZ0ZWJmVWRDTTdYVWF6MWlac0x5SjBZL0pxdmV0eXcraE1Tdi8rbTJaOUhuZEtYdHhpdy9zS01wMDlRVlBWK1RMMUhKQ0NGZTh3ZmcxWHZqZkhSTTdyMnRmVVBIUTVCTmFUTDNGR1gvKy9OL3c4SU5QczJmWFFTUW9WQkF5bXdHYWZGQ1FKWmF5Y05GMnJNNkRiWEpqWTlGWGliWXBHSVBVamdaWmxxSFIrTzlMNGUza2Uxb0xUT2NkRzI2ajNwNUFEaFF5NE4vLzh0L3g3My81SHpoMjhFZnNXejdBOHI1OUdPVzVmT2s4Wjg1OHdibnpwMWtyTHhOd1NCTjdzMUFxTjNZUnV3MVNaSzJ0aTlmOFdINU8vczBDMi9kalVweFBqNm1hTW5LOTZSNTB6YTJIblFsVnRIcnpBcGNIcTZpNkhmT0Y2aUpycHk5ejl2U1g3SjFkNXVEeVFaYVhsK24xZWpqbjJCejAyU3dHZkhMcUpKY0hsN2xRWGFDZ3dOVWV4VU1aWGltZTNkSnl4OUVLMlphV2x1dG1SeTBoME9sMEdBNXlOSmFGbVFVRy9SeEJrZExoK0JQUGMvekpaOW0zK3dnZE84TndPSVJLNFFXTVVTUW1tVEMrMzRtdDcwMksvb1RrQnJROHVCYkMxSFNDcHB1WWdpQ2hqdDJXVU10YTBIeDg1ajArT3ZOT2JONUFRT05IdmMzQW81VW42RkIzZEdMY1ZtdXFZOW10U25QUjBkaW02VHBOcEJHM2dxQ1UzdEtZUkNtTk5qcGVwTWxVenJXdzliRGY1SUJrRXlzZUZWM3RkQ3pxYmZjU00ySDlLTWMzY0k0THJHNnU4Y1htWjZTZlpHaXQ4U0hneEZIaU1OYlNkNXNNR2VKd2VEektTdXdLTnUzNzF0SnloOUlLMlphV2xodkx4QS9yY0ZnUXYyWU14UkFDQ1JyTDAwKyt3Sis5OWpmc1c3Z0xIYnJrZzRxeThCQVVTbUp0ZXBJa1l5RTBDcHpIbGhEUnBzalhUUkhxMVlxZ3RBS0JicWZMSVA4ZTkzZGFVTzRRcEJ1MzR4MzN6L0lVb0JTSnNYam5ScVZQVGE4dEplQjlmRWhUS1ZmbjBiTDFoc010VHlOZVIzYzVpT2tsZURDVEErWWgrQW5GT3BsMzJqeWFjWWlOM1c0dHJoUk5ocEhnOWJXbnNrYmpxT2pUanhkdHZwazlPalNVcmtKcUFldUpGelNqYTd1dFhUaGFXdTVZV2lIYjB0THkzU0JSYmN5azg3Z3lVQVhCTXN1cno3M084OCsreUw2bHc3ZysrTElnaEJDZENOSWszbloyZ3BoclZ5aU45Wll5VWNqT3pjMng4bjBKMlN2bGVlNncrWk9OR3FRV0p1allZVXBVN082VW1nNnBzU2hSREtvQkZrV3ZreUlxVUlTYzBnY29yN3lPVzRrMFRTbkxjbXNxUVkzR1lERllNbEtUeFJ6UklIanhsRktPYnAwSEZRamF4WDlQZHAyNDZTTHVheEtEcGdYdGxMRDFFaWlrMk9LSnE5Q1lXc2FLRHJoUXhkU2hTWmV2d05XeUdWcGE3amhhSWR2UzBuSWRYQ0VzVkl0WW96cTRTbkFZTEIyT1Avb2NQMzNtVlE0czM4WDZ5aVl6eVV3VXNJbkdXb3YzbnFJb2NMNEFhNk80R2EwbmRnRVQyYnJlUmlDRkVMRDEvUFB6ODNEaHU5enZHalYxUzNuaUZ2aE9yWkRyTFIyL1VPOUdDRkkzQnREZ05ia1BkVGJ4VEx3Tm5XdEtjaUREMURGYm96Vk9LbTRCUlhkRkpxT3ZBRW1TRUVLSXgwb3NDUm1HaE9BQnBBNjRhbnJNRUFpVUZQamc0eGloUVB2NkpLZ1hlTk9GL05UWTc1Z0tNekhQbEtqMU5KM3VUTFNQQzRGcW5FQ1BWcUMwQmkyb0VPbzJ2bFBMYW1tNXcybUZiRXRMeTNVeUpXWmxmUDliSzBzVkZBb2JmV0tmZjRQbFBZZkkrdzZqTzRob2RDMCtuWE14YjdJdTFHdUU3YlhRZU1ncUZZWEU3T3pzamQzRmI4aE9JbmI3VEVDQVR0ZVNxaTdWd0JPQ0JsTG1XR0EybStQUXdjTW9wY2p6bkpYTEs2d1BWNm1JMGNvaTlGSDRXOW9VZnpJS2E0ekJUZG1sN1U4T2NQZnlmUnk5OTE3Mjd0dUh0WmExOWN0OGNmb0x6bHc0elpkbnYyU1REUXBpZU4wSFFBVmt1dWpyWmpHWnU3c2pldUlpWjByUUtzQm9DREtPV05lcE1jM2ZoQThocGh2NGlmU0tlbm5hUUxqcFFyNmw1ZWJUQ3RtV2xwWnZ6ZmgzVkUrOUVCTVpxeERvcUM1UFB2b3N6ejd6SW9jUEhhVVlPRndWbU8wc1VHekdIRkZvY2ljRGlUSGJMTFMyUm1LdjVOSWdvd2h1cjllN2NUdDVOYVlMN3h1Uk1UWGJGVzNLQklxK3d6RkVrOUZsbHZzUC9RbVBQM3ljZXc0ZlE0bW1rL1d3MXBJWG02eHVySERxOUNuKzhJZmY4dm5HU1R3Vi9oWlBsRzBLdlNiVEMrYm41N2wzN3pIKzhzZi9tcDZmanlrRjNxRkZjMmpYWWU3YWR6Y0J6Ky9lZlpNekYwN3o2WmxQdUZoZFFLTUpQaGJBQlhHM1FFUzJaa0pncWkxSFh5RlhTMllkK1FETHFCVXZBa3JGdXhHQ0d6WHdqVFp2elFjRDRkWSs3QzB0M3h1dGtHMXBxZEZUUDRyWFVoQSsvWmx2czg1d1BiY0lyeW4wOTAyNTFxNUowNG1LNDBpc3FvdTZGQm5QUGYweXI3NzBDNVlXRHJKK3VRL2VrdWd1WlZtUnBta1VyVUVvWFlWUk1STHJuR000SE83UTNLQXAwMjZFczBXTFJoU280T010V2lDMVhjQVNHdThDVlg5V3BnWEJkME16S2xldHh4R1k3ODR4R09ZWU12YjFEdkxUNHkveHhNTlBzNUR0WnJoWmtDVTlSQVNYT3pKbU9iSnZrUU5MUjlnM2Y0Z1BUdjJSdjMvM1A0NXlTV1ZTME80WUtkUmIzb3B2WDhGdDRRcmJlODN6MXZqZ1k4YW5hRlFBUzhKOHRvdW4vK1RIUFBQd1Q4azJadW1aR1pSVnNSQk1QS3BVVkVOUDVUeXYvdmcxUHZqMGZYU2xjV2M4NjZ6aWlLa1l0OGV0OVlsQms0bXpZWFNDVE9RSktFWmZCajVVeE5RY2pXcmNITkFvWlFqaWtKSHZRZHNTb2FXbEZiSXR0emRCd0FkVTBHaFZtKzRIUVNsQlFrQTFvVHpWaFBSa3g1UTFZR1QvMDBTTmxJQlJhalNmVEwwUE93c0JCVnY2cGpmTEdobTcxajZ5VXZ0aU5ySnhjdmtqaTgySmU0Y3FybkRjR1V1Z212Q1JqWWJxNDlVbzlmVmVzdHYxVGlOR3QrYW1qcG1JSUttQVV0RVdTbW9ORmN0M2VnUlNGQ2svZis2dmVQeVJwem00ZEIvaURNSGxXSjFpeEZKVkZjNUVxNkVvNk9PNHVMSUFJTW5TMFpqNHVyTjhqTWZXT3ltS0VBeldwRlNWSXpXQ0VVZSswZWV1QS9lZzZlSUlRREgySUpVd2tiK3FiOWh0K1NzTjh4WGRrYVJ1Q0ZGbFdCTDJaZ2Y0NnpmK0RZZjMzVU1XdXN5WWVZYkZ4WkhqcnNYaUVmeFFJMkk1ZXVBeDdycnJHS3ZsR20rZStDK2t4cEQ3RGF5TkJXVE9NODZuYkNKOXRjZ2Z0M2YxaUFvWUU4OUYzOVJTVFFsRW5jUnp5VGY5RityeE04bEVRSEZ5RUNaek9EVklKVWlBQmJNTDhZcFhIdnd6amg4NVRyS2FRRkI0UUVXallhd2s4VUpFVW1icHN2SHBKZy92ZllSZFQrNWk5OHdTLzNEaVA5RW5rSFVzdzZLNitmWmoyOVo5SldFNW5VdGJULzBPeWI0VFR4dkxydEV5Wk92Rll5dGlXMXF1UGZUUzB2S0RaanE0YzcyUjFtdGE1eTMvSzdUVDEwUHpXaHl4YnRmUTFQUHNudCtOcFlQSDBHR1daeDk5bVdlZWVwRWpCNCtScVJsQ3FaQlNJeTVXNTFzOWJ1blpSS1dEdXNZSWRmMDVwUXplQ3hxRjFSb2RoQ3hObWUwdEFBbnhXdDF1dFc2YTJBLzFIWDhGWHUwUWF4U0ZLMG5JZU9yUjR4emFleGN6eVJ5OWRKNThJNmRqWWtjekxmRjhOQUltYUV3d0dKOWdRc2JyUC9zNUR4NytFU1pvT2lSWUZLRUVBaGdWenpGVlgveEV4eTVkVjhiSDZuZ3RPdDZpYm1yR0JLeUZOTldqTEE1eFVjUWljWm1tTHFMSG01aS9HUUN2SVRTUGVzY0QwUjVNb2o5QjVSMVBIVDdPZlhzZllDSHNZcDVkbUpDTUxpcTA2S2g5UldPOXdmcUVHVDJES1EyemVvN0Rldzl4ZU9GdVFGT1dKZGhiTlNRYmRualV5RFU4cHBZam93Y1QwMWJFdHJRMHRCSFpscGFXSFdpVXlQUnJiSGw5T1BTb0VLTjhnMzZGUTZGSU9QN0VNN3p4K3AremYvZGhKRmcyTndlVVJZVlcwUlJmYWNGcVN4V3VyMjJCMWhybkhGbVNJbmljSytra0tZdHo4N1Z1VmJmOEQvNWR1dy94MUJOUHNtZjNFc1dteDZBWTVuMW11ck9FcWh4ZDhjVG9kRUNMQWh4YUF2dDM3K1BvZ2J2NDdNdjNZeTh6SjFHK2E3QXBESWZOV2xSdDhhUW1zallOWFRXRFRhT1RRTC9hSkVoQUNvbFJVaUJSQ2VLa2J0aWc2RWdIWDhlNVZUQWtNR0Z3VzErVWlDZEl3Qk13UnJPd01FKytWcUxSUFBYNFUreWQyY093UHlUQmc1WDRjY1krdXdFSUtsNWltRVJUdWhLVEd2WWYzTSs5K1QxODhMdjM0cTEzZTdQRHNTMHRMYmNDclpCdGFibFR1YUlHdU1ydGRyVTl1alNUelZFVWdjb0xpb3pYbm51ZEY1NTluZVU5QjNCRm9Nd0hpSXVkdWhLYmpqeGZSYTQvejFIcjJBRXFwcEJvcXJMQ2RBeTlYZytMSGRtdDNxb1lEQS9lL3dDN0YzWWozbFBtRlVINlpEWWowU1p1djBBMHo1ZGFUZ3BnTVFHNllaYmpQM3FScno0N3ovcGdoYTgyVDVIVW9uVXdISktSRWJCb0RHQkhFV2hkSDJNbmdieUllYXl6N01MaFJnNEJGb3VUaW83S3NEYkJWWjVFRXJSU2xPSnE5MU0xa2FwQWJRem1hN0hycVh4RnNSWU5wZVpaSURFcGFab2lBK2hrSGZxdVAvcmtKS0xxeGhBQ3Jxb0lXU0R0WkJ3NHNNeHNPa05SRHFieUdscGFXdTVVV2lIYjBuSUhJMTlmWDM5VkVucjR3dFo1dWdsUFAvSXN6ejN6RXZ2M0gyYjk4aVp6M1VXc2pTMUhVNXVpeFZDV0pjR1ZLS1ZRMW56dE9xNktHYmM4RlJIRUI4UkRZaE5ta2xueWFnTXZNWGY0VmlzT1VrQlBkWG53MkFOVWd4TFJHcXNTeW43QjNyMjc2VzlzWWlacmdRUVVVWFFHd0lTVUM1OE5PYkQzWVg3MmxKRDFGUDE4aGU1Y2d1Mm1iQTc2ZFFKejdLd1dwODNpQWdwUDFsR3NyVjFDYTAzYVNUanoxV2wrL2J0ZmMyNzlIQUxjdStjZW5uenlTZmJ0M2MvbTJqckJDWjIwaTRqQzV4V0x2WG4waEhkcWJGN2c4YnJFYTArRkkwMVRCbXNEZG1WTHpOZ2VWaXk1TDhqelBHWjlYQ1dvS3VKQlJkL1pzaXlabjE5a2NYNlIxVXVyc1N0YVMwdkxIVThyWkZ0YTduZ21Xd1pOY0JYaDErUTFHaklxTEJyTFM4Kzh5a3N2dk02K3BZTVVnd3BMaW5pd3lrYnhGUUt1OG5qdk1UbzJRSEJ5SFZFMUZhTzZvbFh0Tnh2UTJpSnVDRmF6dExTWFMxK2RHKy9mRG9tRk45dUROVFVaZTNidHd4Y2VhdzJ6dlRuV0I1dFkwNkVjcnRMclpLQWNzV3JLUjV0UkdkL0k3OXBaYk9oeVpQOVJzcDZpQ0h2WXpGZHg0dG0vZDRteWNyV0F0Uk5hdnM0dnhwRmFJZEdHYnJmTDdNSWN4aVNjUFBrcGw5WlhVUWhMQzNzNXVPOHdkeDA2ek9iaUFGOEZaam85TklwUUJmSzFITlBrQmlBRUJWNDdncTd3MmtFU2owMXZZWWI5dXc2dy9rVWYwZEN4SFpReUVJcjY4TVE5aWpteW9PcGxHZ3hLS3p5ZXFxam83dXJSVGJ0a1NjYWdMTnJNZ3BhV2xsYkl0clRjMlRRT0JWc1Z3WTRhZG1LVzVnYTF4OUpsa1NjZlBjNEx6NzdPa2J2dUorK1hoTkl6MDUxbE1NaEpkTXloOVU1QVBNWVlFcE5FbHdWL2ZVTFNleC96Wkt1QU5vRXNTUm02SEkxaC81NWxUbjcxSHVNRzlWdmJ3MzdYaFY1Zmo0NWxWenJGWmgxQ0x0ZzBvNXNKeGJBaXNSMUExNDRYRGxGNjZqQUZ1bDNOY0hpT3NsemoweTgvSTV1RlNuSktYN0tnZHJPMnZvbGdhSklKOUlTUGdpS2dST1BMQ21NVm5JY3ZUNS9tMHFXTGVDb0NnWTNCQmlkUG5XUjE5UkxCQ1ZxcGFIRVdGRVlaVW0xUWRVSGFhS3RHVVZrSEJ2Szh4RXBDVWlRc3BMc0pWVUJWaXVBQ09yTW9xUnNjMUdGbkpXb1U1ZFdZdW4yeHhRU04xUWsrRDZnQ2pFcHJEOTAyeGFDbDVVNm1GYkl0TFhjMFd3dDFSaS90RU9tYWxuMktCRVhHczhkZjV0V1hYMlBQMGpMcmx3ZmdORmFuRkVVVmN6MXRpc1pRcVFvSkNtTU13Y2RieFNaTnJtdnJRM0FvMWVUSktwTEVrbGNhaldMM3JsM2ozYmtGVXdzQWpFNG9DOGZjM0J3cmw5Y29USVUxSFFiOWtwbnVQRlVaODFYalR2Z0ovNnZhOGNIa2JHeWU1OVNaRS95ZnYvdy9FSEl5VWpaWVJ3Q1ByZE5IVkMxa3BTNnFpbEZlUzRJaHdSQ2puaVZ1RktXMldENCsreDRmbjQwWEF4a2RNcFZRU0lGSFNFaW9LRWFXWHBNWEJuV0dLNEtnVUN5eXdOMTdqdktYTC80TkN1aG1YVlJpS0Z5QktFVlE5VG5ZdUZHTWhLeEdmTFJMTUNvbElXR3dQc1FUU0hWRzdsMGJsRzFwdWNOcGhXekxiYzJrOTJxUVVOOXVudlo4alkvbStYWnZWZG0yckczemJGdG16WVE0bW54L091OXYyemI2MVQ2cUFBQWdBRWxFUVZUSjFzOU1mMzVieDZpSjEwZnoxYmZXRFNhNkhEV2V0YXBaMzdiaHVuYnFGZXR0dTZxeEtxMzlMVE5lZi9ZdmVPeVJaMWxlT293RUJTNWdkWUxXRmxjNGxGRzQwcU1rdHA3VlFLaWk2YXkxbG5DRi9SKzlQR212S1RFVGQrdVlnYldLSk10d1ZVR1Z4eVlMSzVkWE9ITG9DREYrbU9CRy9sS1JLS1p2dGdUU2JKWkQrdjBCUFp2VG5aM0ZKQjFXTDJ3d2szYkpzaDZEelNIYUtJelZLSzBJM3VORFFCbEJXY2pESnJzT3p2RDdFMS9oR05SNW96bU9uSmc4VUVBZGtmVUl1aGFZcVZKWWsrTGNZTlE3S215eGU0S1NTYk0xelpBaFE5R2o0cTdvOGxVU2lJME9kRzN1cFNZZERJQjVOY2VHYkhEaDRqbUtZc2p5cmdPc2ZybkdmSGVCekhUeG9jSUZoeWdGb2tkV2FzWVlmT1hKQndWYU5QT0xjM3o0OFFka3VvUEJFbnlkY3RGR1pGdGE3bWhhSWR2U2Noc1R4ZDFVV29CcTNydis1WGM2aWp3WEZEQS91MGgvc3lTSUltT1c0MCsreURQSG4yZnYwdDJrcHNld0hDSmVvekJvcFRIYTFyZjB2eHUyZVBIWHhWNGh4RnZUM2JUTC9Pd0NCanRSRkRRT05jdU5HSnpySnRiM2YvekpTZlljUHd3QjF2dHJMTzNkaDhzOXA4K2VZL2ZpSE03bnVPQmkxeXVqVWNiR2JsODRRdUw0OU93WGZINytGSTRTcWFXbHc2R2p3UlZHSzlBR0xSN25BNEpuS0FIdFNzeW9BY2Fra0IyUHJhK240eFladW42dThRU2NydDBQcUdKVGt0cWZGaHFQWGsybEs3ejNEQmx5L3ZJNTlzd3VZenFHSXBSUWxkR096U3EwTVlnRXFxb2d6d1BpUFhOemMzUzZYVXhYVVlTQ1MydXJySmFyUUl6NkUvTHY0MEMxdExUY3dyUkN0cVhsTmthcHhoK1VpUTVmNDZoczhGZjc5TmZUaUZpTnBkZ01DQ21hbEtlZmVvRS9lKzFmc2J4NEZDUWo3NWRVcGNkZ01Dbyt0TEVFRnplZzl0YmY4aXh5L2RFMGtYajd1aEd5aVVBbjdiREw3cWFuZXBUU0IySktnL2R1OUpucEM0RHZteGoxSFBMV2U3L25pYWVPTXoremg2OHVyTkRMNXNqU0RqT0xzMXhjVzhFbU1lcXNqRUx3ZFVjNGNIalN1UjZmdlBNRm41MC9TMk9JVlpEanNTaGxjQ0xScFdyVUlXNDgvbjdLc0QvQWFOa3dNWlZhMEFvb2lRMXhOUUd2aUw4Z1RkZmZFUEErNEtWSldJa0N1Y0RnZ1RVdTg5Rm5IN0o3Ym9ubDJZTllVU2huQ0I3S1VPS0xFclJnVTAyM2w2SzFadlhTWmJyelBZTHhuRHI5S1NjLy9ZaWlGdXpYMWRxNXBhWGxCME1yWkZ0YWJtTzAxcVBXdEkzRDZBMEpOc280Q3RkSmUxUWxWR2cwUFY3NTZjOTUvcm1YMmJ0MEJGOW9xbUZCOEo0a1NValRGR2dFOUhjdkZGMkl4VjdFRWlRSUFSR0YxcFp1Mm1IWC9HN1cxMWFpMjZsU2VIR2dRSUtnbExySmtWbVBwK0N6dFJPOC9mNmJQSHY4SlJiM3pMRlpybE9wZ2s3U1lYYlhERmxxUUh2eWFzQndtT09VeCtnRXNZNXpxMmY1NVBRSFhLNHVJRlNFMnI4Vm8xQldRK2xBRExIRkZxQ2l1NFBTMGJuTXVZbk5tZTUrMWdTd0o2YWpMcy9DK0FScEhyVkdqcTJpbzRqMVBqQUlnK2crQUx4Lyt0MFlaWDB3WmUvY1FkYk9yNUlrR2FZVEN3QlJEaEZQdnlweGVVVmxLbnFkRGhmV0x2TDJoMjl4Y3YxakFoNnRGSDIvZWROZEoxcGFXbTQrclpCdGFibU5VVXJGaDR6RFU5ODhQN2F1WkZmYlJZSEc0a3FGa0tEbzh2U2Z2TUR6ejd6QndiMzNzckU2WUw2YmdnbG9vMGpUMk95Z0xFdWNLMUJLWVpVZUxXbkxkb3V1SzlXdkR4R1BGNE1oZGd5VEVBZ3Vpcm1nQXN2THkzeTJkbUo2cDI2SnRNcEF3Q2lIbHdILzc5Ly9PM3E5RGs4LytqeFZYMUVOQjV4ZnU4akMzQ3hGNlNuTEFWVW9zTmFTZEZORVBNT3d5ai84K2oveTBXZS9JVkFpcWo2U0dyS3VNTXhMZEFZaUFSWHE4NEpvblNaY29aL0FkRkhjNVBQSlhoaU51RzN5RUpwV3RhR0o3QWJRb0JQd1ZhalRGb1FWTHZDSFQ5L0VkaTNIRHZSWlhqeUVWb29xREJsV0Exd29NRWFCMWdUcjZjMzNPRHM0eS91bjN1UGt5Z2x5Y2dLTzBoYUlyOXBlclMwdExhMlFiV201bmZIZXh5NVpSR3VrYi82anZuTTUvMGgrS2t1UTZGRHcwcCsrenNzdi9BVjdsNDZRRHhWRzlmQ2x4QnZhU28yMnBiSEVzdFlpN3VxNURWbzA0VG9FYll5cWVrUk0zSDhNRXFKWGJSRGgwS0c3VUIvRitPQ29HRTdyV3lTU0Y4aGx5R0p2am8zQkJmNzJQLzhIeE1QaGZVYzV1T2N3M2Q0OHcyR2ZJQjVKS21heWpONXNsOUtWbkR6MUtSK2Nlb2Zmdi8wN0Nva0ZWOFpDY0ZHdzVqa3hjbHJGYVhPVWpRRUpzWWd2TUg1dnhMUmp4UTVGajZQWEJIU28vK25HbG14QWJIVWJpT2tISm9wcnBZVWl6emxUZk1GdlBoTE9YenpIaTArK1NpZWRRWmxBbFZXZ0JaMGFFTUdWams4dm5PU1A3Ny9MaDJmZVo1TStqb0loUXlCQVNxdzRhNFZzUzhzZFRTdGtXMXB1WTRxaXdPRzJ2TmJreDE0elNxSzYyUUVubnE2YTQ4bkhudVA1NTE3bXlPSDdHUTVBS21HbU84TndiWTFFSzdTQnFvck9BTVlZakxIajNNb3RxOUkzS1BjaFlveEJSUERlbzRqcEF0UmVCVnByRHUwL0VGdXRRdDAwSWFaamVNSk5ML2hxSXFpVjNpQUFYMjE4enYvOXQvOFhEeDU5akQrNS94RU83anRNdDVPU2RRd293N0RZNU1MWk01dytlNFozM25tUDk3OTZseElOekdBUVZQQWcwUTdMYW92M1FtSjdPQmR3alY5dmlLMXV3V0VBd1l3ay9jZ3RROVdoMVMyaXR2SGlaWlNUclFIcnh1SHR4bjRyRURCb2dnazRGVWFwQjRWNGxJWWlCRTczUDJPOXY4N0ZpNWU1YS9rZUR0Mjl6Tnl1V1hRS3c5VUJGODZkNTl5NWM2eXNySEJtL1F3VkpTVVZUcnVvbmkyUUFOVjNkbmhhV2xwdUUxb2gyL0lEWWtzZCs1Vm5VNkhPRy95YStXNFFlbW9WSTJzdUZWQzFaUmlpNi91MVFCaFhrbThSRmdSRWdTZ1BDRUVYVkdXZitHdnVrRm8yYXFWcmE2N0p0ZTRnVk5YRTZ4TlIwYVpybHlKRDArWFpwMS9udFpmK2lqMUxoMWhmRzRJM0dKTlNGRU5Nb2trU2k5V2FvcXBRZGNNRDd6MWxXWTV5WnJkdVIweXdWTUtPNlFYVDQzVWxOS0NOeGpsSEVFY1FnMUVhcFN4YUp4aVRzVEMzZ0NWQm9aRlFSYzk5VE95V0piZEdqc0ZHSCtabk9nejdCUmZkVjJ4OHRNbGJILzJPNVYzN1dkcTF5UHpDTEJBNGUrNE1aODk5eGRBUHFhSVVKNDZsaVJGbUg3MWVaNUpaZHUvZXc2NjUzU1JKbC9XMVRTNWNXbUY5ZUltS0FuQ28yb3FySEpsdk5VZW0rZHZRRXhjM1l4T3VyYzRGOGJuQkVwTTdESmFFaEFSak5GaGh2VmlEQkRhTGpiaWxScEYxTzFSRndYcFlwUmhXbkQ1MUJudEs0U2dKQkJKanFIeVVyaEQ5YkxXMWVEZkVTUlVqc1Fvb2FLT3hMUzB0clpCdHVkMkpZbERWSGVoVmJjQWV4VmhBZ284RkxsSW44b2xFd1RpNnpSem4wMU0rcjZPQzdhYmFlMmZyMlBINzhZT2o2UllmV2RuNnZock41eEhLV3NoYWxCaWduc3I0VDFQclFCVktYQ2pwOVRLTTFYeDY2Z1F6QzRyLzhYLzZiK2xrbnFJb0NCSVRGZDNXQU8xb25IYkNaQnBmdXRGMkprWVRuTWJRUVRISEswLy9GVC81OGNzYzNQTUllVjVRRGdmTXpYUXcxckd4c1VISHpGQ0ZnUFBSdUVrQnpzVXdtVTRzSVlUUitodC8zVGpPdFlqVWFqeFd6YmpzTktiMTgway8zbmp2dk1RQVNtZW9vQWhpa0JDTnJRVE4wdncrZG5VV0tQSjFGQmF2QXE0bzZNd3VrbTl1MXNmbUpvbFpHVis3clBkem9rRE1xYWhRYUZZdm4wTmZIbS9mOUZhT3JvZnF4Z1o3a2owODk5U0xQSExmNDh4bTh4aHZDVUhvOURxc3JGL2szWk52OC82bjcvTDVoVS9wc3o2SzVLdDZ5V2JrQVJzZE1LSk1WblhhaWliTE1zbzhuMGpMMEtSMENRUTZ6UERZUFkvejhORkhXWnJaUXlmcDBPbDB1TFIra1RNcnAzbm54RnU4Zi9FOWNwOVREU3NrMFpTaHdCUFE5TGZ1NFpTL2J3N2dhbnN3cVYrWXpORnRhV201bzJtRmJNdHR6YmlFYVBKbi9ocUV5VGdzK3UzV1czLzg2OXl0cGhzalRKdFBxZWhiTkNGMjR5MWNxZmVzcWdwNmFjcWdMQ2lySEoxVStHTEF3dTR1Ly8zLzhOOVF1ZzFjR0NJVDZRV3FOcEs5bGx2bnZsYTlXa05pRFM0WEZBbHpkaS8zM2ZNRUx6My9DL1lzM29WVnN4aXhHQng1TWNCNFIySWdqclVaRmYrSUdoY1VYWjJkajFGVGlIUk5xRkQ3Tk1TT1ZmVmxBakVwMDZERW90SHMzM2VBQzUrZlJtUHd3WVBTVk1HUHhkRE5aTXQxVXFndHNYYThFdG1HcWwxYlo4MGM5eDk1aUIvLzZEZ1BIWG9ZVTJTRWRlaW1zNmdnRkNzRmk1MEZmdnJZVHpseStCQnZmdkJiM2pueEZwZXFGVEtyQ01TODVrcXFlcmxqTzdkR3RIcUJZVDV4anRXaXQ4THg0TDZIZU9LaEgzTnMrUmdMeVM1TW1hQUtoYzg5ZC9YdVpjL0IvU3gxOTdCODlnQWZubjJmVDFZL3Bxb0t0RldqaTU1dnhNMFBvcmUwdE54Q3RFSzJwZVdtb1NjaXI2b1dzS29XV1BIWE91Mm1YRnBiSWVzcWRzM05jSG45SEVHRy9DLy82Ly9NNnVBaWlpRmhXNDdzcElQQjF5ZzFzU0NCNEVDYkRJVkhrL0RZSTAveWx6Ly9yem04ZkpSOFU5aFlYVU1yUTVZa09POVFRZEhwZGltSE4zQTR2alZYdUJnUmhWYVdZOGZ1NSszUDN3UTBTaGtRaHkrcm15OWlyeE9OeHBKeTMxMFA4cFBILzVSakIrK25aK1lvQmlVYVE1cDAwTURHWUFPYkpNeDFaem04ZkFTbllwZTFmMzcvbHd6ZEpsNjVab0h4TkRURVptRE5WVnB6a2VMaUJaZXhkWGV2U25IZjN2dDQrdEZuZU9UK1IwaXFsSEsxd2dxa2FVcFpsbFJWUldlMnc4RURoOGwycFhSM1o2ejk5aElYaS9NWUREbjU3WDRZV2xwYWJqS3RrRzFwdWFuVXVicWkyZkxuV09mRmxsVkoyb0UwRThwcUEyMHEvdTIvL2U5WUhWNWdZYWJIV3YvU3RpVTJYYTYrRnRGMXZtc1g3MHZLUXVpcUdYN3kxSXU4OHZ5ZmNlVFFNWWJyRllQTkN1ODB2VjZQTE0yb2FwZUVtKzVqSlhyY3htejhJcE1LVlNuRGtjUDNvREZVVkJnMEhnM2VqM09QYjFNbHBWRE1zc0NQN24yRVl3ZnZ4K1hDNWMxVmVtYU9UdGJET1lmVkdtdFRESXJMSzJ1VWtuUFh2bnRRRHI0NC9UbWZiM3lDN2dsb1lWZ09DYUUyRUk1cDJKRXc4Ynh4UWtCWU1QTTg5K09mY2ZmU1BhakNzSFpwSFQ4STdPcGwvUC9zdlZtUUhkbDk1dmM3UzJiZXBWYWdzRFdBQmhwb29QZHVObGR4azBqdGtpWFpjc1NNdHhlUFgvenVDQ3ZHanZCb0pTbFJwRVROa0dPTng1NFlQNHpERVg2eXc5WjRyTkY0eHBJb2lrMnk5MFkzMEFBYU8xQjczYnBMTG1meHc4bTg5MWFoZ0c0QTNWMVY3UHdRRjFsMU0yL215Y3h6SzcvelA5Ly8rOHM0bEpqdGRqdEVNaUlqbzVFME9QWHdLVmJXbC9uYlYvNkd2dWtoeXdwaE5XclVxSEcvK09EcVI5YW9VZU5kVUVaa2ZZd25ZcVRNZFRoaGNiSWdOK3ZzMmRzbUxUb3NyRnpodDMvMzc3TTZ1SUhDMEIrc3NCVUxlKy9aK0lFOHQrSkpFaVlSTkhuaTFQUDg0cy85R3FkUFBzM05xd3M0QTYxR202bUpTU0tsd2ZtUVVPVUZhVDlsWi80SkdVOVNrdXlabmFNbEp3R0ZGQm9sRlVOVDFWME1pZWJFb1ZNY21YbVlxV1NXbG15VFJHMlNwQUZJQm9PVVFaWWpoYVlSdFdsRkUwUTBtSlRUSEo1OW1DZVBQbzMwa3F5WGs2N24rRXdFVlVQT0tCcGJrVmdMRGRHa1JadUVKdFBNOHZ5SlQzQnM5aGdOMzRhQnBLMG4yRE81aDBRbjJNS1I1emxKa3BEb0JJWEVGekNWVFBQNDBTZDRaTzlKWXBLUWVGZWpSbzBhRDRDZCtCU3FVZU9qQVMvRFBHNlZKVjU5SFlVRmtZTW9tTjNUNHViOE8rUm1qVy85eWUrejNMdEdva0Nwbk1MMWhockdZWVd2ZTRKQWtkQWZGRGcwWC83TUwvTHJ2L2Fmc0gvUFVmcWRqQ1JxZ3hYRVVZTW9paWlLZ3NGZ2dETU9pY0w3KzlNWHYrL3c0M24zRzZONzNrbVNwTTFEKzQ4ZzBPQUVRdXdNdDRJSGhVRHkvQlBQTTZHblNGY0xJdHVnSGJleG1TZlBjeHFOa0hCbHJTUFBEUTNacENtYTlGY3lJcFB3OGNjL1JaTkptclJwMG1KQ1RKTDRCc3BwaEpVMFZBTmhKY3BxWWhLVTFTUzBhREhCSHZaeGRQbzRjZDVBcGdwdElpYWlTUnFxaWNtRFk0VlNnYVJLS1drbUxhVFRGSDNMbnZaZWp1OTdCRTAwckFCV28wYU5HdmVMV2xwUW84WTJ3bGZGNmtzYkxpZDhzSVlTQllpQ2hlVWxCdGt5Zi95dDMyZTlOMDhTQ3diNUtxTlNTdHlSd0w1YkNkWXFXVWlROE55cGovRnpYL3BsVHA5NGd2bWJ5eFM5Z2dOelIxbGQ2U05kc0VIeTFpQzh4N2xRQkNGU2VvUEJ3SGJBSTZHcWFDWEtKRHdSWENpY2x3Z25rRHJpa2VPbmVmUG1XMlZpVTZVSjlidWF6d29FaCtlT01LR21jUU5JZlU0a0JOWjZKSklvaVJFK0ZLYkkweHh2SGM2REtRcWlLT0xRekdIKzNzLy9GNnlteTFoaGNNcHliZjRhcjU5N2pkVnNCWmQ2bm56b0tVNGRPMDByYmlOelJVdE1VUFFMcHBJWm5qajVGRGIxWUJXaUVHUlpnU3VMWWlpbDBGcVJaUVhkYnBlb3BZbUVacERtdE5wdERzNCtSRUtMUHYzdHZvdzFhdFRZNWFpSmJJMGEyNGFxUVAxSVVoQklyQTFFVmc0WVpNdjg2VC81RXhiWHJ3QVp5bm9xRi9nNGxtUjVhV3UxaWJRS0lWQktZYmIyNGhyQ0kvbnBULzg4UC8xVFA4dDBldzgzcmk3UlNpWnBUVFJZWEZpbGxVemdYZGgvbzlIQWU0V3hhU2hBSU1UOW1qNThRS2c4ZWNmZThocEZ4S0VEUjlERTVCU2xMclAwdTNYdnpTRmdweUliNUV6c2JSTkZNZDF1ZjJpVFpmSmdqK2FNcDlWcW9iVUppVmR4ZzJiY0pNOVRCcDJVby91T3NjZk9FcmNqbWxOTjNybDJrZlcxZFFaWFVpeVcyV1F2angxL25QMnpCekE5UzF0UFlQdWVRV2VBenlFaUJpVEdHYXkxYUtWb05oc1laeGtNdWt4UFR6Ty9NbzhzSkZFY1kyMUJJMnJRaWxwRG40a2FOV3JVZUJEVVJMYkdya2FWMkJRNFhEQU1HcjZIRHo2bXcwcEZ2dlFsM1p6VnY5R2Y5RTVSekEzcks4dlRkM2tZais4cnRHbnNQZStEMjZrVWVPOXd2cURWVkVqbE9QL09KZHFUa2ovNCt1K1FtelU4T1o0Y1p3T0o5UUt5WWhST0hQbTFqbzcxYmlRV0pKOS8vdk44K1NkL2huMzdEb0ZSNktpRkx5U21BRVdFOENKVUNoTWVZM0pHVWVCSzIvaGdUSGJ6OWNGdmZPL2Q5ajZVTnd3OVp1M1lmUko0NjVGUndwSERqNkJJU1BBTUNOV3Z2TjNkSkJaQUtJa1QwQjMwS2F4bGRtcUt3U0JqdmRkbGRuWVdXeGdjbGlpSzhONnozdXNSeHpGSkk4RVVCWVVvNkJjOXVtc08yWlBjdkhtVFRxZURMVVd5Q3dzTExDNHVFaEZUREF4ZDE2TVlHQkxaNE5CMGsvNXlnU0xJQndDMDF1Rm5GKzVEbG1Wb3JRTzVKc2NZRXdwWURCTUdhOVNvVWVQQlVCUFpHalcyRFI1alV0cnROdjFCUm00NnFGeFQySFdtWjJOKzg3ZitQcmxaSTNjOVBCbFZKTGFzd3ZxK1ZIcU5kY0xNekF6Q1Nvd1JPR09RUGthTG1FWkNJSWpDTTlTZkNqY3NTTHI5RWxreHBvK2xOSzkxb3lvRFh1QlJDQWVSYkhIc3dFbk8zWHFaeW0xaHUyVVJEd3FQNS9xdGF4eWVQVVpyb3NYeThpcHJ2Ulc4QzlQNkVNcnlEZ1lEcEJTQndEWmpwSUpCMFdPcHQ4Zy8vVCsvVGM0QVJiRFV5c2xKQ1o1cURzZjE3algrN0MvK0w2d0xSVWRhdE1rcE9EUjVpQzk5K3NzY25UbUZzc0d2RndtNXlja0tqMUtLaVlrcDByU1BjNDdjWkhocElSS2tSVW8zNjZMcVJLOGFOV3E4RDZpSmJJMGEyd1hoYUxVVDF0Ym5TUnFLMmFrV0s1MWJHTGZPTjc3NWU2d09icFNSMkVCaUszNG01Q2hTK2FCa2RxMnpRclBaSk9zVlNOSEcyVUFPUmFSRFhRRmJSbUdGd1lrUXBkdEovTThMTWFxVUZ0NHBJKzlsOHB4WGVPZUpkSU9ubm55V3M3ZGVLUW1Vd1ByZEhSUDBPTjY1Y1lFVFJ4OUZ4SFBrZm9DVWtxbUpDZkxVa3FZRG5ITzBKbHJFc1NZMWZRcFRFTWVLUWIvSGpiWExkRmpCVVNDRXdQcHdmN1hVQ0NGdzFwT1RzZXd5QUNJaWVxeGpzT1Q1Z0xYa2VRN0VmV0phZ0NLV0VWaUp5WU5PMWhoUG85RUFTeUN5c2FNeG1iRFdYK0hteW5VeSttTlZ3bXJVcUZIai9sQ25qTmFvc1cxd0ZLWkgwcEFrRGNpTGRZUksrWjNmL1crNXNYeUJ5Vlk4SXJGam4vSWVuQnZXVEhpZzQxKzZkSWx1cjRNeGhqaU9pYUlFSVJYV0JmdWtZQVVXU0t3ZnZxcnlwVHZqejRjWFl4cmp5aStxVFBoU0lnYXJrRExtc1VlZlFKWmo5ODNxNU4wSWgrUHRxMjl4ZWVFQ0E5OGptcFNJeUpIWmxNSU15UE1VNXd4eHJQSEswczA2NUdLQW5CU3NGVXU4ZVBZSFdBdzl1dlI5ajV3TVEwSG1VbktiWXpBMGRST0p4T093Mm1EaWdwUWVpL2t0Zm5UKysrUnhpbXRZYkdUb21TNEQwMGRxZ1JDQ05FMXh6aUdscExBNWhod1JlNVo3UzF4YWZJZUNIRmNUMlJvMWFqd2c2b2hzalJyYkJrZGgrc3dkbUdGNTVTYkxLemY0eGgvOUxtdnBMYUNnbHc2bzVBU2pFT3k0elBmQmJhUlcwMFVXRnVZNXNQZGhwQVNVd3BsU1krc0tsQlpqR3VPZ0NIWlZHVmhDNHYrMmtrRXZ5L2FOd3lHOHdpT1JRbU9kUlFyRm50bjl6Q1o3V2NxNnc5SzJ1eGtleTRLWjU2M3JyN1AveUJ6N1p3N2lVOE42WnhWcEkxcXRDU1N3MmwzR3VCd1hGK2pKaU5Wc2tUTlhYK09OVzY4aGxVZGFpVUF3TjdHUG93ZVBjbWp2UTh4TXpkSnNOb05HZG5tQnMxZk9zdHhmcEtBb0ZSMmVGOS82RWM4ZC94U1B6RDdLWkdPS2ZyK0g3VHVtRzRKbTNNUjZUYWZUb1RuYkpHNG1wTExML05vU1p5Ni93ZVhWZDhqSjhPOWE1TGxHalJvMTdvNmF5TmFvc1UxdzBqRTdQY0hOVzVmd1pIenJILzRCeTcwYkpFcGloU00zby9xdlVwWWUvaDdDbFBsNE5QVCt5YXhFY08zNkpRNGZPQjRpc0U1ampDT0pORnBySUVSZ0VTWWt6d0hlS3hDbEpIV25RWXhwWkljSU1nTXROYWNmUGMzZnZuNEZSN2ltYmhjSEJCMk9nb3pYTHJ3S1N2RDhFNS9ra1gwbm1kazdoU3BpY01GY0xTMEd0Q2FiSk5PVFhGdTh6QTllL3o2dnZQVXlCVG5lZWhxME9IN3dPRStlZUlvVEQ1MWtabUtXVnRRT3RsMzdjZ3B5cml4ZTRrZHYvWkEzTDcxQkorL2dJb09VbW4vejEzL0JGNTR6UFBmNGMwenRuY1JFRnUzVk1PRXVpcUxnbXFBa0s2c0x2SG41VFY0OSt6STkxbEZhNGN3dXZnRTFhdFRZRVZEQWIyMTNJMnJVdUQvRXpPMDV4ay8rNU0vam5FQ2dFU0xDT1pCQ0U5d0liTW00U3Uwa1l1eFZ3ZDhXVlh5dnY5K0p5dzIzOTNkNEgvRENzcloraTk1Z2xULzQrdSt5MWxrZzFvTFVybUZjaWhBZUwwcE43SVlHcUxIWGVDM1JlNE5Bb2tob042WjU1cG1QVTZRZUtTS0t3cFBFQ1Y2TTI0RlpTbytGVWxJZ3l6M2NmdTNHei9QZHJ1UG1OKzcxUHZqeVhvcFM3REJjbGtVbW5BK0ZJb1R5RkQ1RkpZYlgzM2dKUXcvWTFUYXlnQ2VLSTNwRm4xc0xOeW42R2RJcElwbmdEUXg2QTV3eHBDWWxKK1g2NGpXKys5SmY4OFBYWDJDNVdFQ2ppWWg0N3VESCtOeXpYK0RwSTgreUx6bEl1NWlDTlVrMm54UGxDVTNmNHVEc0lmWk83cVhmRzdDd05JODFGcHlnbncvb2Qzb0lKQTJka09nR1dJbk5MTlphNGppaW0zYTVjdk1kemx4Nmd6Y3ZuZUhtNEVhSTdFWWVhM2YzSGFoUm84YjJvNDdJMXRqVnVOZkhZRFVaTCsvQS9lNXBtbHc0cExjNEFkTExjcjlqRmJxQURRWHJSU2xzTFpPbUVDbTlkSW52L0EvZlpHSDlNbzZDeERrY0JuQTBHaEg5dE1EN1FHU0RKcmJhdDBCcHdZTTVTSGtjS1pldm5BZGhzQTRha1VLVlY5VmJqMURjTm5VdkFPODF3a3NvMjNxL0VINkxBT3BkdHIwVGhxdThSSlIyQk1JNzhEbFNDNlNBTk04NGZ2UTRzWXBKalFadjJYakg3M1FlbTdYQU80ZDhXUnNHTWdiRG1VdG51SHpwQ29mM1BNeXBoeDlqei9Rc3NZN29kRHRjbWIvQ21ZdG5XR0VSUzRGV0VkWWFqdWhqUFBud001dys5Q1NSalNqV0xKRlVURVJ0R28wV1NhdkJ0Y1VyUklYaStLR1RGQjh6cEduT205ZmVJQ2NuSWVIeTJpVnUvczFObm56b1NaNTY1R24yVE16UmpOcTBtZzNtT3l0Y3VQSTJyNTkvbFp2RmRmcDBzUmlFdkpkU3loOGt4cXJDYlJ6YkFxTzM1SmlNeDIzYzVNRWh5cDNkei9KQnNJVXNhQ2Zja1JvMTdoVTFrYTJ4NitGS0gxZ2h3c1BST1JmSW1IZklUWC84aFM5amlaVVA3TkJudHNTbVArNURUOUx4bjMxUTlra2ZDaGRJWElnR2V3bXVMRXpnUjE4dHBRU2VuS0xJU1JvU3JUMVhybDVrZWxiejFXLytCcGxaQlFaNERKa0xqZlFlK29OaWRJNURLV0hWMXJ3a3NROUNxaHhRY0dQeEhaYVc1MmxIQjBqaUpvVXNHUFJ5MnEyRXdtVERxbU1laC9BQzc4cHo5WlVGbDl0NHJid2ZJNTFqVjlPWDBkdHl1MkhML2Rick42d0RobjVaMVhFRXVETFRYbmhRWG9JUGc0bHdmSWNVbm01dmxYaENNOUhRcENMaXFWUFA4UEtaZ2g3ZFVpeFJEUzQyWFVzZllzN2phV0YrZkdDeXpSQklzQkpWa3JHTVBobDlWcGJuZVgzNUI3ZHREWlh2c2NSWlIwVENxYU5QOE5peHAvRzVJcmVPOXVRRXZXNGZsL2FSV3RPM0tjMTliVlo3cXhScmxyMTdEdkNaVDN5ZWk5Y3VZK21TTWNCakdWRHdvK3ZmNStYclAwQWdFS1dHMmxLVTZYY1dqeHNtZHdrbnNmbDJYME5aemltVUVHTmt0bXlhOHBUR1pDUENXNlVVRHVkQ0hwUlFicDYrdU5mbEEyQmM0MTZaN0czMTFSMXVzT250bXZqVzJBbW9pV3lOandUR28zbmpmNGdEY2JxL2ZUcEJTV0xkMkRFcS9XcDQ4Qm1Ua3pRU2V2MlVMTzhqdFdTUTk1aWFUdmpOMy9tdnlZb1ZDcmVPSllSV0ErY1c3MUplOXYwa0FCWkh6cVZMNTNuNjlBR0tva0FwaGJBdVpKd0RlSWtUTmtSUGtlVTFLMjI2NEw0ZnFQZVNxaWI4dTkwbVdZNDJ5bVdaa3VhY29SRkhTT2tvVEk3VWtsTW5uK1RGTXkramFBTHA3YTJvQmo5YnQrUTlidmRoWVVTd0xCYUgyWkpjU1FML2wraVNaQVlTZC9Ud2NScFJHMjg4dHJCa1BzYzVoNDVqaEpJVXRrQjRqNDRpcE5RNFk1bElwamc0OVJCWE81Zm9rNDMxWFU5V0ZoNnB5aVp2THRRaHhraWhSSmJFYVRzSnJkaDRHMGNoMkdCSlREV1lFV1ZGdUhMUVZtNWJxWmJ1RjM3NDMzMHVONnVrN3ZIZ2xYc0hCR0l1eStXV0dOUEZWOS9kSGZFVnFQR1JSMDFrYTlTNFgzZ0pRcGQveUFWZTNCNmxiTFlickt3dEVpY3dzN2ZOV21jZTYvcjg0VGUreWxMM0ZvNCtubzM2Z0E5enlqVUlDVHl2di80Nnp6M3hSZktpajVhVElNTzB0ZHp3a053MHhYNmJXOERPUWhWRmo2SVlMeXpPNUVpdGVmelVrMHpwV1ZiTUNvSjBSQ1kyQzU4RmVPL1lxUzZGSVlKbXl0YjVrWlhWRmhFN1Y1SVdoeHZHbUJXS0F3ZjJJYjBrTDNLVTBMZ0NsSXRwcTFaSS92T0E4TFJVRzJjdGVaN1NiazR3dDJjZnR6clhnaTBYZHRpQ1lkdXFQcnpwbW82MThyYlBmTmdJSkM0MHpJNjNZK3o2MlRLcFVwVC9XMlRRanBkZFFsbTJ0YXlEZTBBaXZUTjdkbzBhOTRhNkg5ZW84U0R3S3J6UUcrUUVnY2dhOHFKSEZIdWl4SkVYNnlodCtMMnYvbmRjWDc1SUVtbTJkNHE2MHVONkxsdzhUK0Z6akNrUTBwVWk0bkhKeFc1VTAwbVVDc2wvM2d1RTBIaW5tR3pOOFBoano1U3BhMVZzNlQ3dXc3WmZnbERtTmFUaEJlbkhIYWVGS1lrOUxteXJCRUo0VkNUSlRJYjNua2JVSUJZeHNZK0lmWUliZUNJWG8wMUU1RFRTU2x6aGlIVkVNMDRZa0FhcGhmQjQ2ZDV6ZE5BUDI3cjlBNkhRWkhmWFp0dVN3Qm9rSGhYc0xrSlFHeXRHdldjN1huRC9BZDBhTlg1Y1VFZGthOVM0YjR6SkNQeDR6ZGd3dllvSVJIYnYzQ1RMS3pkWVc3L0pILzN4MTFqcVhrWGlHUlFEcXNkS05SWDdZU2ZBQkRMbldPNHRzYkt5eE56a0JNRnFDNlNTRysycHZDaTFzVldyTjVIZGJjRzRablY4WEI0SXFsU2FQTXRBZUxST01EWm52VFBnazgvL0JIL3orbmUzSmpDM1dWSTR0amZ1ZGdjSWdDMnkvZTVtSXdHQXcwcUR3NUs1Z3Jad1JGR0VsQkx2UERpQnRtRjE0MUlBQUNBQVNVUkJWQkhLYUdJZFU3Z2NnVVZyaFJMaGtaSGJQRkJpNGZEYTM3a2JqRVczNzdodTIrQ3FZc1YzM2tTRTc3aW5ISFFLR0paQ0x1MlVkNFNEMlAwa2l3SGExOUdzR3JzZmRSK3VVZU8rSWNjaXNtTnVCY0tDeUVFVXpNdzJ1VFYvaWR5czhjZmYraG9MbmNzMHRFREpITWp4aE1wSFVzb2htZjN3ejBKaXlEaDcvZ3dPVXlib2pMc1JTRGFjSDNEZlVjejNFY0p2ZkxteWNJTVQxWE02dE5rTGhTdktpS3hYcEQzRHNjTW5PYjczVVdTcCthMTB6dTlIQXMySENySEZDNnJ3NitpMWFWdnZEYm5QV09yTUl4S1BUQVM1VFNsc2pyV2h4R3lzazVEYzUzMlFtVWlKaWlUZC9qb3IzUlVzQml1S2pmdm1Mc2ZmcXUzYmpBMGt0anFIOGZaNkFlaFNTYXZDckl1TndFWGd5bGtZOFQ2OHVJOWxOUXZreDM2KzUyVk5BV3JzZnRRUjJSbzFIZ0JPYUtycVVwN2dXZXN4SUFvUUJUY1dGa256RmY3NFc3OVBwM3VMT0lKK3NVSklxYWl5L2JlT3h0NDk0ZXY5Z2NjRm4xWHZlZVdWRi9uTXg3NklrQ1pvR2YzWWxLc3ZLeklNeWJwalkxR0diWVFvbzdGRCtVUDQzUU41bnROb05FUFZLUk95NlNlYjAvaGM4S25uUDgzWmYvMXlLUytRdUxHYXYzNERNYXZPVlpSdmpSS3N0ajJvT0U2K3h1ZU9OemRNakRHMDhyd3lsL0hhK1ZjNE1IT0kyZVlzTG9kSXgzZ2Ixb2xJNEwxRktCSGNJU1JreFlDcmkxZTR1bmk1VFBUenR4L1BqeCtxVlBENk1VZUFIYVJTR1Y2eXpXMXlsQVVsUWxHSlVOcFk0bkJZNzdCbXZPOXZMeU8vMzZOTExKS0M3UjZRMXFqeG9LaUpiSTBhOTRzeWMzLzBLQW02V0xBbGtSM1FHeXp5VC8vSGI3T3dkaG5Ja05aUWxaMXR0eE82dld5RGJkVTRwSlNsVCtnSDFQeXl4U2lQTjQ2TFY4NWhSUTdLWUVXdzJsSlNJbnlWMjd5SmNRaTN2ZFBEWW5nR3c5KzlkQWczSWhsRlVUQXpNOE5nTU1BVkRobEZ6RTVQYy8zNlZaNSs0bG5FdjlaRGl5MVpwcW03SFJBcGZNKzRqWURKTXI5ZURGZDd3RHZ3d3VIRnFEOTVMSytjZTRXbkgzK1dSaXRCYW9YV0d1c0xVdGRIQ29YVVFPeXd4bUNFcFdmV3VicjREcXQyQlNlTDI4bXpIemtUaUxIR2VTVFdtNDFrZHB0SEFWWHZHUTVheHR2a1FDUExvaEVhWGRKWmp5cE54SFRsVlRKMDhyalgyZjF4RFAydDcyRlpmZTUraDVPV0FvUFpTcHhTbzhhdVFrMWthK3hxU0NreHhxQlZneUkzU0dGUlNsUGtCVkdrTmdhS2ZIalNlajhpWU9LMjlYZldxZDYyM251VURJK1J3aFJZbHpJNUZhT2lpUE1YenRHYUVIemptMThoTjJ0SUNodzVqaUw0M1FLOVhuYmJ2c2Z4UVpMWTRYRUJuVVRrSm1kQWozTVh6dkRVWTIzaXVJVnc0SXpic2hDQnFLS1g3K0pjTUg1ZTN2dWhrOEQ0OGUrNmZsamNZSXZyTHp4Q2hseDhnUjlHdHAyd3cyMlNKS0hUNmFCVmpCTVdIS3l2OVpsc3oyQmtqeTg4KzBXKys4cWZZOHJFTnc5RUVlU0d1NUt0VW9ITHRrZXpQQkFMeUR3NFNVU0VKMFFTWXhJTVJZZ2k0dkRlWUwwSDZWQ3RDRkZJZW1tSGYvTzkvNGZQUFB0Wm5qMzFNWlFROVBJZVdUNWdvalhKMnZvNkRrTTBGZEgzNjd6ODlrdjh1NWYvTFlhQ3BCbFREQ0RTR2kwajhrRkJpSGxyRkhvNGJSOFRVNUNSQTFJTHJEYzQ1OS9GNituRHdYQlNZWk1zSWxFYVpRVUppcytlK2d4SDl4NGw3MlcwMjIyY2MzUUhYWnJOSnNLb1VBVEZsVlg0ZklqVFY0VStoZ1UvdGxpL0FmZjVlZVZEWHVibTc5azRLcWxJSldIeTN1TzlaeEFQV0ovdTgrY3YvRGtXU3hJblpIbUdVcUhFOFBnTVJZMGFPeGsxa2ExUjQzNGhQTDMrR2pNek0zZ2hLTktVYnE5TFZxd3hPYTM1eWxmL0FWbXhpckU5SENsVkpCWW9pemRzWDlQSDBVOTdPRFNTZ2pmUHZjcXpUMzJjZnEvTFJEeFZickZGaUhKSFdtK054YXEya0Q0SUZ5UWdzalJla2w3ejFPTlA4L0taRitnVWkrWEVjVUZSUUp4QVh2QWV5T3cyQnhZOVlDQ0ptaWdiRWJrSTd6d1JEUm82SVRNRlJUbUF5c2tCZzVBZU04akJRaVNieksvZDRrZG5mc0FnNi9QSS9oTk1KVE1rVWN4QTltanNqeWp3WEw1MWtSKysrWDNPM1RoSG81bVFla2UvdjA2a0Uxd1dIR3hEd2R1WUJnMkM2dGhoQ0RLVlVBNVpnUUVYREcxUldtNXZpZHJ4NlBCWVJGWUN5Z29pTkxOTThWRDdBSWZiKzdIQzBvZ1RuRGNNbUtEZGFzRkFJcnk4OTBGd2RXaC85L1YzSXFqZWgwTFJha3l4c2RXMjNudThLZ2VEWTk2KzNudlc0eDREZXlYTS9EZzc5UHdkRFJSMzBCK3BHalh1Z3BySTFxaHgzM0EwMndrcm5WdTBKeEptOXJaWVdMeEtianI4MGJlK3lxM1ZTMEFHNUVBeGZPTDQ2cjhkTUwyS0FHc0xRa29MdlBUU0QvbVZYL3AxdkkxQVRCQzBwbklVUVJvUzJQRU1vdTNEc0FqRkJsUVA0bEVxai9RRXF5aGZyUlZJSnpsMS9IRk9ISDJVbHkrc29SRGtXUENPU0d2eWZIelNkU3MvMmUyUHhrNU9USk9uQlRZTG11c1dEUjQ3L2pnbkgzNlVmYk56T0FkcnZWVXVYcjNBVysrOHlWSytnRFVGU2RTQzJKTm5CWjE4aGQ3MUhvdUw4OHdmdjhteGg0NHoyWmhDZU1ISzZpcnp5d3U4ZmVVc3Q5THJHQW9LQ3J3STEwWVVrTkJBb1RrOGZZUmpCNDh6MlpwRXVoRFZ1M3I5S3JlV2I3TGtGZ0V3dmdoVDlON2RWaXhocDBEYTBLc2pJaDZlZVpoOXJiM002Qm1zeWtsOGpMY0ZEUi9Sc0EwY0NvUXNFK2o4YUxrWmQxZy9ORUc0dzNxUHZ5dVoxZU02K3ZIUGxqODc3NGFKcEZYVncyQ1pCbFo2OGpRZkV0eHFCcWphaDVBZnZFYS9SbzMzQXpXUnJWSGp2dUZRMnFJalQyRzZGTDJNUnN2enRkLytDamVYTGhJcFIyRkxFcnNWZHNvem9pTFV5ck5XTEhIeG5YTTg5ZWp6T0N4ZXlJMWswVk9TMlhGSGcrMGtzM2ViM3Q5OGdRTmprTU1vbUVDSW1PZWYrVFN2WG5pTlJ0UWtMekxpU05QdjUzZmNZK1U3dXQyM1R5QXAram5lUWt6QzZVT1A4OHpwNTNqczJKTzA0elphSmhSRndkSDlsc1A3am5KZzdnQ3ZuWHVGdHhmTzRvcFFNcmJWREJLU1BDdFl5VmQ0NGV6MytkSFpIdzMxclMxYXJOUERZNEpzUUNnS1g0QVF0Sk5KL0FEbTFCeW5IMzZNUjQrZjR2RCtJN1FiYllTVkZFWEJrOGVmNHR3NzUzajl3cXRjN2w3QzRZa1JPRzBwaW1MN0wrS21KRFV0ZzFwYW9ZbHA4TWloNDB4RWs4aE00VklWTnZJS21Rc0s0eEJTbDNLWXFrZEl2SzlxWkkxVXJYZGFMN3hFNFBDdTBoSElrRFJhSnBBNkc5NFA2OTF3R2RZSE9ZM3dsYXpHRFplVnB0MWFnZFpoQnNMYUF1ZENvRldwQ0lkbWFXV1p3b2EvVDVXVVFBaUJjMjZEeHJsR2paMk1tc2pXcUhHL0VJN0NaTXp1YVhGci9ncnJ2VVcrL1owL1pISHBLa29ZQ2p1Z2lzUld6bG9iWldjN1FHTlpRVGlzeTRDWWwxNzVFUjkvOWlmSXU0YmdueHBSRWRrcUlTbzg0Nm82VVRzSlliSy95a0lmUlpJQmZQREJyV0t5WHRKYnp6bDE0Z2xPUC9Ra2IxNS9oWWdtZWRFUFcyeGxhYlhENEd5WTBuLzB3R2srOTRrdmNQcklrMHpGVTZ6ZDZwS2JJUFNOa2daN20zTTBILzA0clZhTHdmY0czT2hlUVltWWJKQUNRVnRiVUpScTQ0S0VCQWVzc2hKa3VFUmtwRGp2MENpTWcySlFzSmM1bmovMUNaNS80dU5NTnFlZ0VLaWV4aFVlTTNBY1BYeU1wbTdSYXJVUWJ3ck9yYjZGd1JFUkIwSzhuU2p2cHhReVJJYzlLSFI1eXlXemFvYkREeDBub2szZTl3aWpjQ3BHUzBta05abTNlS1dEM2Rzd1kweVdzL0Z5K0R1SUxkY0xTbC9tTzZ3SFFjaGIzTHcrRUdGWitUb0xVUkpjc1lrSUM3d1NlQjNXNTc3QUk0aVRDQzgwVG10dUxTeUZDTzBZcEpSRCtVR05HcnNCTyswcFZLUEdMb0tqMFZRc0xGMUZ4NVp2ZitlYjNGaDZCMFNCa0FVVmlaVXl2RVkyc1JLb1BCeTM4U3M0ZWphQzlGaGY0SEc4K2VZYnJIVld0cDc2SGVwT2R3QUJ2ODB6cVlSd3Q3K0c3UTAvQys5Q1pOWksycTFaUHZYOFo1Qm8ybzBwUUNDbEJsMW01VzE1bjdiLy9DV1NDVDJGSnVIMHNkUE1UZXlqdjl4bmZiNEhtV0p1OGdCN20vdEphT0g3Z2drOXdjbkRqM0x5eUVrMFNaaDJKa0lnTWRneUt6OFVrZTNUSTZWSEsya2lnWXgwZUV4UkV0OHc5WDZja3dkTzhkRHNFV0tUa0M4WmlsV0R5alN4U1ZpN3NVNUx0WG5pMFNkNC9PUVR4Q1FJWkVnaTNPYkhUM0NHbGNRaVF2aXlXSmNOYXQ2WWhJY09QVXl6MGNZYXlBdUhGUnBQQkNwQnhSTkkzYURxRzJGNnZpeG5LNnJpR1NOdmdTM1grOUY2TmRSdGgvWFNqOTRYUXQxeEtVUklyM3UzWlhVOEtTVlNhSnh6cEdsS3gzVEtGb3p1eFhiNVdkZW9jYitvSTdJMWFqd0FiczFmdzdvK2YvS1B2czdxMmdLUmxCU3VDellqVGlSNTdvYjVFcU1BUjZoMEx4QjR0cDdDL3RDZ0FBdFNnYldoVmF2cE1tZk92TUZ6VDN4NnROMldCSFlIa0xraDBTeXY4d1pMc0kzdEU3NmFMUFhEV0xpU0VjN0F3dzgvd3BFOXg3bXg4ZzZnY1M0clJ4NWJHWXp1SEdRbVk0YTluRHArbWtON0hxSy9tTkdRTFl6M3VMNmpzN3BPTWhFanZFSVp5YjdwL1R4eTVBVG5McHhqTWI4RlVDWmplU0tSWUwwTmtkZnlQRHRaUlhSQUV5TlJROE9tUFhJdmp4OS9ndG5tSGx6ZlF5cHBpQ1l0M2FJWk56R1JZYVc3UWtaT3M5bmc2TUdqSEd3ZjVGTHZZbkJQMkFFSXhhVUZob3FTS2tBd0ZjOXc3TmdqNU5ZaWNvaEVreWhLeUszRVdBZEtZaEJJWTRtR2Z0QjNkZzY0MDNwWmRxY3dsaHoxUytIOVVDQmdONzFmbFY4Wnd0M2RzVURyb0kwVk51aGxWV0hvOS91czVVdFUvVmxKUmJGcDRQcGgrRmpYcVBGK29DYXlOWDVNc0ZYRVRHejZmUnlCUm9JWnkzRDMzRGxLV2tiMWhHUG9HU1JUSEQyKzg2ZGY1OXJDZWFCQVN4djJpUXRSUGNhSXJOdllUaWxoTzVPMkFaVFNXR3VnYkt1akFCVG5MNXpobVNjK2hoS0dJQzJvc0xFTXJQUzMrNjdLZTNqMnZlL2lDai91NlhSN0VwaUgwajgwSEZsNWpjK2dvU2I0M0dkK2t2LzFYMTVncWpIRGFycUl0M2FzQzdteDVMd1B1QkRDZTVReVZKdE50dHBNdENad2hjUGtsb24ySklOQlNuOHRwUkUxbVc1UE1iK1dzaksvd295ZTVPU3hSL21WbjlWa0xnM0VUUXBrSk9ubmZjNWZQczhiYjcxRzEzU1JLT1ptOXZMTU04OXc3UEJSOG01Qm5ob21HeE1vcCtrdTlYamk4Sk0wWEJNM3NFZ2phTWtHeW1uU2JrNWhjdzd1TzhpVnhVdjBPaW5OcE1YYzNCeFhlNWNwaHU2bFcvU0F1d1VFNytIQ3Y1ZUlid0ZvS2NCV2tlWVlBZXlKOS9EUTdCR2lRWVJEa01STllwbVFEZ1lVeGlJUmVPZUlFTU0yQ1ViRUw4Z0d5aVlQeWFEWThETUVJbDI5cDh2MWFsUHI5YWJQYlU0V1F3aWM5d1IxUVZndmZhbHRONDVZaEw5cFJSbDJMbVJCMTNaWTdpMEVjWkRVeUVoRFZnekpjdGl0MkhpNS9VaFZ0RG5sczBhTjdVUk5aR3ZzY2dUN20zSjJmS2hNYzRSa0JXY3RpTEZ5cTk2SHFUWXZRZGd5SW1vQUhlSjB2dFNibFYrTjRMdG9NVGJIK1p6SnFRWTZrbHk0Y0pabTIvRjdYL3V2eU0wcVVneHczbUNjUndpUDk1QU9SbG52bzJmUGFJbzdrTmh0WkxKZVlyT1FueTJseHBJaWxNUFpBVDk0NlMvNWhWLzRKWXlEeVRqQlpBYU1vTlZ1a1JlZU5FMXBOR0tNR3cwWWhtNUc0MCszOFNpUEQ5ZGxhQTFVeXZyRTJQb3ljMmIwa2ZMendtOTBTeHF1dCtQUnFJMUxHRDFvM1ZpNy9Jak4wb3dhM0xwNW5jTW5EcUpQUGN0ZmYvY1JicTFkUlJMamhjRXBCNzRZeWpDVUZ3aXY4Tzc5TWtBZHN3dmJUT0RHTThyS2lMZ1k2eThTUTRTa01CbmVPNW9UVFhxTEdTc3JLNWllWjdhOWh6aU82WFg2UkVUTVR1M0Y1VGxld01HNVEyaXRFV2xFbGhVMEp4S2lpWmdtRXl4Y1hpSmZ2MEpFeEpHWm96ejk4TFBNVGV5bFovdE1UaytSa0pCMU11SkRFUk9OTnAyVkRvTXNaNm81Ulp3azVMMENaenlOUnNMcTZpcFJGTkdjYk5IdHJ6SElzNUJYcUNTRkhaM0o4QnBVNTczNS9EZkRiL3JNa0V5T0RSVGZoY2hhSERTaGJ3WlFsajZJMGNRa2ZQckVwMGc2aXJqUUNLOFFoU1h6UFpRSXN4Y09pNUloYmkzSHJiTTJ1dzc0VWNmMTNwZU9WcVAxWml6b1gxbHFiZjY4ODJQN0dsdEtMNUZsOFEralBRYVBsZUNkUUh1SW5LQ2xHdGgrams0aW5CRDBHTEJPai9oNGl4OSs3MlZTQ2pKbnlESXp2SXpHaEorZDJicVAxK1MxeGs1RFRXUnI3R3JJb1U1eUxMSXo3bkc2UVI4NS9ybXd0SEx6K2pJaVd6NG9lNzBlTXpNVFVFalNyS0RiRzVBWDYweE1SWHpsYS84TldiR0NjZXM0UDI3VkpONWxXbTRIVFUrckNLekZXaCt5cEFubXFYMjd4cHR2dmNyblB2RnpyQyt2TWhIdkF5UnBtaEpGRWFyU0JucTNRYXE2VmZHRU82R3lIWHIvc1RXQnFlS29sZjJROUJLYjVjeE43NlczMGdNRVgvcjhsL2tYZi9iUFVVUVlISmhpdERzZnBubnhscXB5MXVaRW1mdHI2M2gvSFZ0MWwxMVhUWXFVSWtvUyt1bUE1WlVsSERBN040dHBPTXpBc0RxL1NtTWlSaWFhM0dRNGFWQ1JaTFhiWldscGliMlRoMGpURk4venNPUzRmdk1hM2Y0NkRvK2hZSkFOV0ZpNFJicWVrYTROU0pPVWhBYW1aMmdsVFFiOW9LTnR4azFjYnVoblBmQ1NLSXB3ZUZxdEpwM3VHaklma0NRUnJZa21Eazl1QzRTVVk4bVBXMFJseDVVZDQ2dDlOV3R5NSsvUlpoSWI1bC84Y0RrOGhpc0hFRUtTK0FZU3hhbkdveHlhUEVERGFLUlR3U2QyZUR2Q2pJd2NpOUJYTXhMRE1RZWwzZHQ3c0xiWVpKb1FFc2ZHMjEzdTUwN2ZxK29xT0NSV1dxckt1VU5uRGh1U0dxVURMeTFXR0d6aXVMbCtuVDQ1NW9PZVhhaFI0ME5BVFdScmZIVGhCZmhLY1JZeWZrZnA3dUVoMldvMVdGMWJvajBSTWJ1bnpjTFNWUXJUNVp0LzlQdmNYTDZLcHcrYmlqenVKbDJaa2dKclI1NmUxbG9VR28vbmh6OThnYzkrOG1jd3BrQTFCYzRKaWp3bmloUmF4WGRPdHRwRmNBN2F6UWFMblM2cXBYbjI2ZWY0cTc4OXp2bWxjMmlSVUhnekprZ1lnL0JJb1hEdlcyUzJSRVh1MzZVTFZXNU5QZHVubWZicFozMW1taGFMcDlOZmcwS1J4QWw3RHM1aWZVN3VjeUt0NkpxTVMxY3Y4c05YWHVDdHBiZEt3bW9SZUxUUXBINVFGbEJ3U0NGNCtjWkxuSnQvQytVbHhobWF0TVBwSTJuVDVGYy85YXNjMmZjd09vNURaVDJ0bVd4Tmd2V3NycThSeFJvZEs3eHdySFhYNmF5dWxiTWxsSVQwTGtUcXZYeU43ckNOMjBSeVF3RmlOMXlPYlFoZUVzc1liY09rL3VPbkg2UGRibU02eFIxanV2Y3lZUHN3SWZ6R1MyS2RRMHBCNFVQZnNIaFVwTGw4K1NwK0p3Mm9hOVI0QU5TdUJUVSsydkFhVU9WeWZGem5BSU9PUEZIc01iWkh0NzlFb3huS3psNWZ1a2dzeDlWaXV4Tyt0S3NTNDNQMzVYdm4zM21iQ3hmZVptcDJBaTh0dVUxUlVmQUgxVHJHV3IvcnVheEVrT2VHUk1WRUtnSWorT1ZmK1BlSWlNRTVKQm9sRTdTT1FGV0RuREl1NXorZytxcWJ3M1REQ0tUYzhINVFSemlXaW1YT1gzNmJuSnptVEpQMW9zTktmd21qRFgyN3psSnZpVndPaUtkaWVyYkw2MmRmNCt6U1d4Z3lCcXpUWjQwdUhWYjlJcWxZeCtvTTBiVG9TWUZYQlZrOG9FdUhBWDI2ckxIT0t1dXNzc3d5WjY2K3lWSnZFZC93cUVsTnJqTzZabzBlWFd4VTBDM1dhYzgyOGRweDhkSjUzbG00QklBaUdtcEFSSGtuTmxSaWV6ZEpRZldadXp6Q0txSVdmQmpjaHVWb0l3VmVvWnlrd0hCSUgrVFFnWWZJc214WThuZ1VpZDE2ZG1jNzRiaDlQQ205UStCd290VE5hb0dWRHEvQUNvY1JsbXVyMTI0ait6VnE3RmJVUkxiR1J4aWxEWmFQd1VkalR3UUh3b0lvS0V5WFBYdmJwUGthQzR1WCtjM2YvZzBXbDYrZ3NlUnVuZW94SjRUWWZiWTF3dUZNRGppVThNZ3lNRjFOdjJZTStQNExmOFBrVkF2bmN3b3pvTkdJeVUwQlVnYzV3aTcvRTFJcUJXZ21MVndCZWEvZzlJbkgrZmhqbjBBUUJqbk9lS3dSSVlIbVBYQ3QrMnZJMkd2c2Q0RU1Oa3JsdjgzWHV4RTNzQmkrLy9JTHZQVFdTL1I5bDlaY2c4YWVtRlQzV2ZkcmlFbVBuSktzcEF1ODl2YXJ2SDd0RlF3RmsxTVRPSjNoR3daaUE5cUZzWndBWnh4WlB3TUJwaWh3d3VHMXd6WXR1YzdJeElCQ0dsNjk4VExuYnA1bDFTN2pXb1pVOTVsUGI3RHVPelRtRXZTa3BPczZYTHgrZ2ZPWDM4WlNBSjRrMXFqeTdPQU9DcE83WEdDeDRTV0hMMThTVlY5Ty9kOTFpUU1ud2NyU0gxZnlzV2VmcHhFMTZLNTFpYUpvd3pFM0p6WHVOSVFjQWJmaFdnb0Z2aVN5Tm5JWVpWanRyZEJoRGNvclZhUEdia2N0TGFqeEVZWXNwUVVWeWd3Z1VTV0lXUm90d2Z6aVpYUlU4TzEvL0ExdUxGMUFDdytpQUJkSTRIZ0p5TjBrS3dqUHNCQlZyS1NDRUtKOGlRZ1A5MWZQdk1UODBqVWFZZ2FreDBzL0tuZHBTN09EWFF4WE9OcU5Kcm5QeVFZNXJaa0plbXRkZnZhbmZwNno1OTlpeFN3Q0h1ZHluUE1JVlNiN2xGM2xnNEFvU1d5Z3JKWDBaYVFKcmY1M1FPWUtESlpWdTh4Zi91QXY2YXl2ODh6cFo5a3p1UmZoRmNsVVJPNHlydDY4eUJ0dnY4YnJaMStoendCTHdhMU9KMmpFeDh3NmhKSm9vWERPWVl2eUJLdUVPaVV4bzRhUjJnRVN6NHZuZmtqUHIzUDZrY2ZZTjdPZnFLM3hHSHFxUThkMXVIRDJQSys5L1NyWDE2K0g4d01HK1dDb1dWV29NbG9xUTZUWnV4RkwzUnlkZms4WGNOUFBtMzhmWHpxSklrS2ptV1dXa3crZnhIUU56bHFTS0daUW1QZnNJckVkOENLOHBDL3Q1Rnk0ZnFLOFRWNHFEQlluSFU2REVZN3JOMjloQ0ZLREdqVitITERMSDBNMWFqd2dmUGtWcUd5MWdtZE5JS3FpWUdGeEVlUFcrWk4vK0hYVzFtOFNTVXZoZXVBdGNhVEpDamVhZ3R4RVluZVREMk1sOVpReU9BRllEQjVCSjF2aGIxNzRLNzcwMlYrazBVN285ZGRwTlNld2hkOTlFZWd0SUlRSXJOUjdFaFVUaTRoZTV0azNzNTh2ZmU2bitWZi8zNzhrcFVjQk9ISndIcUY5NEZqdlFjdDZ6KzBaOGNReUlsd1Z6Z2oyL1NIUkNDb2lPekI5NHJoQm5tY3NGZk44Ny9YdmNtWGhNa2YySDJHaU5Za3BDanJyNjF5L2RZWHJuZXNZY2lLdGNkNEgyeldnREpJT3o4WGhFV2cwa0tpRXpHVWhnbWtVTmpkbGRZL3dmY25KdWVWdXNIaDJudXNyVjNuMHhDbG1wK2NvMHB4dXQ4dmEyaHJYYjkzZ1p2Y0dsbEJwekZBTUU2NVVlWDdCeXpZNFlGaGtJTE4zSFNtRWRYTEQxZGg4TVRjdGI5dEZLRVViRVRQTkJNOC84VHlSaTBqN2ZkcEp1NXh4R0tGS3hxcjBzVnRaejMyWWNHSmpmTDVxbC9DZ3FtUXY0YkRla0hxRGs1N001MXhadUlMRlVKRFhWTGJHandWcUlsdmpvd3UvZVZvODZHSURvUzFBRElKUDdELytJNjdjT2d0a1JNb1RudndnbFlQaWRsdWNDbEpLclAyQWRKVHZGendvSFlvaEFHZ3R5YTJqOEFhSlFFdDQ4ZVVYK05JWHZrelNiREcvM0dGbWVnK2R0Ri82NUpxNzduNm5JNG9VZzhHQXBKa3cwWnBrdmJQR3ZuMzdlZWZxZVg3cTh6L0RpeSsreUVxNlJLZFlDaG5lUGpqUWV2Rit4Yk5HQkt3aXNXV05KMEo1aW1EWlA2SXNKdGpFQVdDeDJtR1Z4WXRRWGpZWEE4N2RPc3Y1VytlSWlNc0JpU05VN0xJWURKa1pnSFFrazAyeTdtQjRiRjMrODVRRVQ4VGtOa2NSaGM4N0R5Z1FFaFVyYkRyQVVDQ0V4UGlDdHhiT2NtN2hIS3Ewc2lwYlNFeGNIanRVamdzSlY2REtmMEVTSUhBbG9aVTRMQUxuNVVnQzhCNndRZnU2bWNSdXNES3IzcEpFYUZva3pFUXpQSG55S2ZwcmZjZ3RyY1lVYVpvaVJUVCtrUjJIY1NKZGxZOE9ObDZsUGxnSUNtL0lwY1ZLUytvTUN5eVdXN3RhSjF2anh3STFrYTJ4cTFGTjUzdEdTNnFmTnhGTEgweE1RN1RIQ2ZBT3FUWGVPNHd0Y0Q1amNpcEd4NElMRnkvUWJNTlh2L2FiOU5NbElBTnlDbHNNdGFScGFqYnVleE4yUElrdE1kN01QQnN2NVdwUXNlZkN6VE5jbjcvRXZoblA1TXdrUzhzTHRKTlpzaXhqZ3pDajlJRWR2eGJ2cHFBZEw0UHJ2UTlaMTVzTjM4ZjN6K2I5UDFoSVRBaUIxaHBqRE5aWVl0V2d0NXF5WjJvZjJYckIzLzBQLzFQK3AvLzVUMUhFWmM2M3hoUlptTTZWNzRPNklCaUxqbjRGRXBrZ25BcVZvNGdSS0dhaU9mYnUzNE1RbnNXbFc2d05Gc2pKUUhtc3pVR0N3K0FqalVuem9LalZudHlFeW5IQmNzeFVMQmtFWklQQkJvSVhZcXcyK0MvanlIMktIN3ZEV21xc3MzanJzTGtiN3F1Z3FxWVdwclNORDlHK2NENHl0TE5FRlVHVnBlSjNnaW5hcWsxem9ray82N0tRTHVLeGFBUk9XQXBmREtVVW82U3IwZDd1Zm0xQnhnS1hoMzRaTlRSRmFwQkNvcFRDRjRISTdtVVBQL0hjWjJqSkpvWWNxUVZLYUlRRTQ4cS9KMVIvVHp5VkViSDM0TGFvMWxWOUQyQ2p1OEZXL1hmejU4V205Y1BpSW42cnoxZHRLNzhuUTMvWkt0NXRnMkkyVWZUVE5TYW5aamp6b3pjcE1HUmwrZXdkeTlCcjFMZ0gxRVMyeGtjWHd0SHRyVEU3T3cyRklNMVN1cjB1K1ZxSGlTbkZWNzc2RCtnTkZpbE1GOGlwSXJHd2dYdnNhb1FIWVBoNW94d3hhQlk3NlRLQ2hILzNWMy9CZi9aMy9oNVpwMGV6dFRkRU1hTUU5MEZsN245SWNNSnZtcDZWU0tlQUdKQk1OV2I0cFovN0ZmNjNQLzlmYU9wcDFzMHlzWXpKWGM0REt5c0VZNGFmRERtYWNjRUNMU0hoME5ReFB2T3B6M1Bpa1VjcGlnSXZISEdpdVBqT09mNzZ4Yi9pM1B4YlFYR2dKQmhQbHZVUk1nek9Nak1ZTzlhWTdyUTZYbVhDSUVFSkdXUVQ2SEl3WVV2MXRHVlk4a0tGY2dOV0FGSUVlZldtNzRFWGdWbzViOHZkVzJTWmlCV2pzZVdINWlibk9IM3NNVDcvOUJjWmRISlVwRUJaM3JsMmtUTnZuK0hLMG1WeWI4dUk3Y2loNFU1Zk80a3NXOHFHMFU5RllvVW1GUFVZU29KVldmcWd3YkY5RDdPM3RSZWZPbnpoaWRCNEw4cEJsaXpQS1h3bmd2ZXgyekVFc0tTdVZMWHFSRmwwQklLamlCR2V3anRFSytabVo0RzFmSjBDaDZXZzhNVk9PWTBhTlI0SUN2aXQ3VzVFalJyM2g1aDlleDdoODUvL2FaU0ljTllqUklRUUFtYzlTbzJtSmtmUHRoQkdFbVZKMmpqUnJIZVhpQk9ZbUl4WTd5MlNGMnY4NFRkK2wyc0xiMk5jRDBkS1JXS0hBYlFmZ3lmQVdIQnU0K2tNQ1UrdzRacG90SGpuNmpzOC8rd25tWnFjUlRpTnlTRlNHcitKeld4Vm5PcHV2Mjh1S0hDbjdlL0VHY1VEUkdURGFUcTg4UGhoNkt3czlGRHVPOUthdWJtOUxONmM1OGJLWlJRU1czcXlHdk9BOGRoeUZDR2lra1I2aU5HSVVybjV5TndwZnVtbmY1V2orNC9SMUpNSXE0aEVURk0zbVo2YzVlaVJ3OXhjbXFjNzZPTUtEMTRna0NSUlFyUFJKQzhLbEJBSUtSQ2l5dVlhWDQ3SXJmTkJnQkRFQndZalRERFBGd1pYdm96TDhjSXlia01sdkNpTGtveDhGUVNsaXdlQ1NFUUlKTG9rczVxSUE2MERmT3lKai9IeHh6OUpralpScWFZVnQ1aVozTVBVeERUdDlpUllXT21zNG9iOVM3RFo5MVRnR2EvazVUY1QyYkpqeTBnZ3JjTGJrRmltMFFndlNXaHdzdjBvejU1NGhnTXorME9aM1NLMEdWdnEyNFhjTU5vVDVYR1ZCOFNkeTJIY3FkL2Uzdi92dnY1dS9kOExnUk1xekE3Z1M5dXRZTDlGMmFlZGdsVG1pQW5GVzlmZTV2TGFGYnIweU1uSCtueU5HcnNidTlzN3AwYU5CNEpEYVllT1BJWHAwdTB2a1RRYzMvempyM0IxL2h5Smhpb1NLOFJ0czhBL05xZzBtV0pvUnlhSEt6d081ek04S2QvNzIzOUxxeFdUWmoyaVdKQmwyZDEydStQaGhNTUxoNWNHUDZ3R0p3STVjeHBsSTRUUlJDN2hsMy8yVjJreWlTZG9TWjJ4dzBIQWc4SzdVWVJQeXhpSlpFYnY1Zm1uUDhuREI0L2pCcExCYXM1MFBNdDBQRXU2a3VON2NHenVCTC82cGYrQUE0MkhTR2lTMENBbUNXWWFBMGpRS0srUUxyeVVVeWdibGVjVmdVbElvc1lvMFVzQ1dvSVdxRVRUbUdpQ2dxZ1pJMVVwTVhBU25FUTRoZllOR1JaUE5BQUFJQUJKUkVGVUl0OGdva1hzRzBRK1J2bW9mT21TTU1JRWJXSVNJaExteEQ0Kys5VG4rTlJqUDhHQitDQ3lxNWlPWjVsZ2lzRlNpc28wcHc0L3lwTW5ubVN1TVlkQ0lhdHkwWnVFSkhmOEttN1N3bnJqdzhBV3hWUXlSVXlqVFBGS09IMzBGQWRtRDZDTmd0elRVQWtLUlpFVld5WXpEdnVKcUtieDcrdVdmMkNRdnRSYWw1RmpvYURBNGpWY3VYV0ZEdXRZZkRpUDk2c0QxNml4emFpbEJUVSt1aENld2d6WU05Zm01cTNMckhjWCtVZmYrVG9MUzVmUndwS1pQc1BFTGhrc3FzWWhoY2I2M1ozc05EU2pIOHVWSHk3SzZlZlU5QUROaTYrOHdKZS84TXRNUkFlUVh1QSt1QnF6SHhxc0NoUG8wamtRcWlRQlZTYThRQlNPU0NYTVRlL243L3p5ZjhTLytMTi9ocEthbmpNa09xRTdQbjEvUHhBRTVsRmU3OG9YOWVEY2ZoNC84VGo5bFpUcDVpeVJhR0J6aS9lV3VZbERHSnZTWDFwbmYvd1FoMXRITWV1V2htclF0MTB5K2pSY0lHVGhQQ3FNTTVjeXNhcndlS3NBajQ0MHVja3hOc2NXRHBzTndFdVVqSWhsUW1aeVlwS1FFT1k5TVFtVkU2d2QrcmRXR29sSzJXcHBNUUZsN1A1QWZKQTVkWUM0RTlQcjl0blQzRWNqYW1JbzZLVTlVSkMwbSt5ZDJNdWh1VU1zWGwzQTQ1RUlOb2hZM3FPK1V5bUpMUndLR2Y0VkNvRkRvWGxrejBtT0h6eE80aVBTWG9ZMmlsYTdUVGJJY0lWQkpVMmNmMkFWOUFlSzBUY3d5QjZxcmxUSkxMd1VPQWZkd1RwTGZqVWtMQXJIQm5GN2pScTdIRFdScmZFUmhxUFJsTXd2WEVGSGxtOS81NXRjWDd5SUZoWWhDeWdUdTZyQXpDZ2FLemU5ZHZiRDd1Nm9wdExGcHZkR3hyTGhZV2xZNlM3eXdnKyt4ODkrOGQvSHBnWE5WcHVpMk1WUjJUSWlDK0NFR2sxUCtVRE9sQWVwRXdiOURxN0krZVRIUHMyVld4ZjVmMy80ZnhNUllZelpxTTI4NStOejI1eFk0UXd4Q1ZQdFdhWmJNNlM1SS9ZSkp2VjBWcnA0TERNemt5UnhFMnNON2NZa3YvYkZYOGNKaC9VNW5kNGFLcElrRFUxdjBFVXBGV3lhUE9GZ3ZqcW94QWt3TGlNektTTHllT1c0Tm4rVk0yKzl3YzJGNjNqdk9YYjBFWjUrL0NsbUoyZXdBOGRFTklseW1uUTlKVkl4RGRYQWk2QTF0dElFTndmaHFFbzhDdy9DU0pRSlUvbE4yV1pTVDlKV2t6VDJORmkrdGNwS3ZvS0lvTjFzNDVUQjlnMHhEVTRjT2NsclYxOHJKUXVTeXZONG85WTM2Rmkzekw0di9iS1UwR2l2a1doeVZ5QlJIRzRkNGZrblA4WmtjeHJiS1NDMVJIRXpkSHZuUzBlT0RidlpzV1ZwaDgwU1FWNHdQcngwV0l3M1hMdDVuWXdjaThOSlArcDdqdmMwSUtoUll5ZWpKckkxUHRLWVg3Z3g5SWxkWFZzZ2xvcmNkY0ZteExHa01HNExUV3l3Um5JL1ZnK0FjVVkxUmhqS1ZkNkNvK0RWMTE3azZWT2ZZbTdta1JDbTNzVUlCQ3dRSUNWQ1VzK1FyUGlnamRSZVlESkRwQVJwYjhCUGZ2YUxYTGowSm4zVDRmcnF0UWR2aEdMb1lLYktTZ3NDU1NOcVVHUUZTalRKdWpsYU5EaTA3ekRDZVFicE90a2dKNG9ick4vc01KRk1vV05ON2xJbTJwUG9SQ0swWXlhZURvVXJSQlZsRnFWdnNrUzQ4SHVzSTZ3enlCZ0tjdHl5NEZKNmpZaFZ3REVuOW5GaTZpUnpNd2N3VWNHa25rUVpUVzR6a3FSSmFvcFEvbFFZckxTQnpFbzd2SzRhZ1VzZFNpc2lHNk15amUxNUJpN0ZSNHJaNWo1NmRCR1JSeVdTQVFQNlJROXZJZGJKVVBBQ1c4ZitBNDI5TTZ5MVFVWWdFcHdQeG1KVFRQUDR5U2ZZUDNzQWtYcUVnU1JxRUVsTlBrZ1JYdEpzTnNtTndldWQzY2Y5RmdSYmxCWnhFTTdmZWNPbEc1Y1lsdW10Q2s3czdGT3JVZU05b3lheU5YWTUvRkFQRmpEK2FDc3Jkd25LeUkybE1uSjNVb0xNc0w3RGQvNzdyM05sL2h4UUVNbktTOVlocFE3NnhURUkxQmluM2MyUjJBQmZUZzF2UEtleHllaVFFNGNzNndZc3JpNXg5dUtiekgzNktLbnRoZUtwZml4MFczMXVpeVBkSmw0a1BJU3JqOS8yUUw3dnM3b3pwQjlGMXQxUVJqRGVkOVNHdm1TTVpYWnFtb0hwa1hmN05OcFQvT2YvOFgvSlAvdm4vNFNJWlJ4Wm1aQzB5UjdxRGxrOUc1S1R5aTZKRHhwWkljTVV2OENqdEtDZkRtaUxGbElwWE83cHJ3OUNWanFDU0dqQU1UbmRabUY5bnFWYml6Z3NTVk16S1Bya2VVcWpsV0JNUGtaa1phbC9Gc0dkd2N0UWZ0Y1c2R2FFMTU2clZ5K3p0TDRVdkhKUlhMMTZsV3NQWGFPMzFtZDl1VXRMdFltc3hxU1dpWWtKMGlMSFNoOFN3cFRCaVpMTWlwRldzNkdheUV3aUNzRnNZeThIWmc0U0VaTjFCdENEV0VWWWIxaGZYYWRQajJnMklsSVIrU0FycjVjY0xvZTJBK1UxbGVQZmRiWWdhR1VHUDk2amtNVEVQSDdvY1U3c1A0SG9DV3h1VVVoYWpRYmVXdnFEQWMxbWswYVNNRmpQa0NvTWFDb3Q3SHVKeXQ2TGJ2YkJITEFjZ21DcEpoMUlGKzZyeDJNRldHSElSVVlxTW01eG8zUWlLVHRkMmRWcjFQaHhRRTFrYSt4dWVBdStDSkVtWDA0L2VvVjNBdThVZUltVUR1dHlDcFBTYkdsMEJKZXZuR2RxUnZHMWIvd0czZjQ4bmg3Z3lKMUhhNGx6a2tGNnUvNDFLUDAyazUvZGlUSEhKeGdXckN5SmJNVTdQVGd2Y0Y0VHF6YkxlWWYvL1MvK0Q1Nzl6Q2RKS0pnVWs3alVZNXlsMVdxaHRXWmxiUlZuTEhQNzk5SHRyZ09sTzRBUHR2ekJMOVBoSzNMaVN1WlJNY3h5dVlFMCtOdlhoOVp1OU9Hc2xsdVJpYzBaNE1wSnZCdnBnNzN6ZUcvS2xvWHFWVXFIcWZsWU4zQTV5SUZuSW1yeGl6L3hkL21MNy80cjN1Ni9UbE5Eei9TQytYK1NrT1hCbjFYRUF2Ly9zL2RtVDVOYzU1bmY3ejBubDZwdjcwWTNsZ1lhYUFCTmdBc1draEsxVXRKSVpNeklZOHNSaWhqZk9oemhtN254SCtBYlg5aWVtTEEwZHRpVzU5WVhFK0Z3S0J3T2UyWWNJMnZHSEk2b0lTV1JFRW1BQUFFQ2FEUjYzL3RicXlxWHMvamlaR1psMVZkZk45QUEyZmk2ejlOUm5WVjFjam01ZkpWUFB1ZDluN2YyKzRoWEdDZ1BsdldtVnFoVTQyeUJzNFpjY21wZjg4R0Y5L255UzcvQzBuQ0R5dGRvU2NpekhPVWNWVEhHK1JweXcyWjJnei85cTMvR2hWc1hTTkFoc1FkTFRrN0pwRHQwMDFqb0ZxbzVldFByT0l3eXp4NjRpZHZsLy96ci82TlpRam9pM3Y2dm1nZTdjR1pOUTVhbTNxWUt6WkFCSGs5Q3h0UHAwL3ptci80MlR6MTJrcnFxV2EyRVpiVkVOc3pRb3JHbFFUdWhLQ1pjdW5xbDE5ZDJXK0hLbVQ0WXRHek1Ua2xzbjl2V2tLa0VqQ1VqNVhUK1BDK2ZmSWtuOU9QVW94cnRCQkdvcWlyRS9TN25HRy9aTGZiUWFSaUs4RDV3UHQ5N0FwcGVpcjZuNHZlZWtCYWhuYmVaejBsdm5RdmF1NVBYbnIrNTY5L2hLZXN4eThNbGJHbnd0V0o1YVkzU2pObWRiT1BXUFhWZTh0b2IzNk5rRjRORnBkTFVmRWxJa2hUalNnN3piMWhFQkVRaUcvRkFZZjhQOG1ReVlYMWpHZXNLakswb3lvSnFiNWVWVmMxLzg0LytTMGFURzFSbW0zWTR2UzByZStmU3NnL0tENzg2VUlrRmdwQ0Y0TDBtMVVNcWEvRUl0WlI4NzRkL3lUZC8vZTh5dnJYSGtlRXhqREdNOTBha2VjYkswbkwzZVJhejVIOUtadmNyVTU5Mk52ZytXNk9PZkNROUJkWTM3MzAzTkc2TVFXeFkybHNCRWxhWDFuanhtWmZ4Q0Z2ZnZzazFjd2xOZ2taVGxSV2lGZmxLUmpFcVpqZnNBMTNVSGZscTFFYlhFcE5taU41N3JtNWY1c2Z2L0MxZmUybUZwY0VqU0czWUtUYlJEZ2E1UW9tdzQ3ZDU3YjIvNXZ6ZUIweVlrT3FVMm9ia1JKZlVYVEdFZytHYitONzJmT3pYMGRXQytGUGZtMTgzYVZRdGZYVXo1RmlSb1BGTk5iS1VtcXYxRmQ2OS9qT1NWY1VUeDU3QTM2N1pMWGFvZHl2SVBVZFBITVhsTmUrK2U1TVBMcjJIRFZHZGN3OWRRdENscGJ0bWxOS1FFY3JnMnE2amFBWFdHRkl5VHVnbitmeXBGM2g4NVhHeUtzTVVCcFhNeHJpM0lhUHpsRjk2QXdwM3VqVEYzN2w5NXRoNitDUXV6QUxrV1lJekZjb3JraVNqTW9aeFZlTlRqUnJBcGMzTGJOc3REQVZXaDcvbnNCUENJYzlUallqb0VIMWtJdzR4TW80ZmVZNnYvK1kzVVpMZ3JFSWsrSEE2R3pLV3MxeXp2WDBiblRqVzFnZU14cHRZTitHLysrUC9ta3MzemxLYkhieWZGanBvTFhmdVRHUWZGTXc3NVB2WnBoNkd3eVdxdW9aR1RieDArUkpmKy9MWHlPMkFwWHdGNXgxbFZhS1VKazFUSEI1anpkUXlxYzhFMnR1cGJ6UHA5cnZCM3UzelI5bXp1MysrKzNoeCsyRFRUdXM2WEN0NW5yTzBsak5jejdoNDhTS1ZxOGdrdytHdzNtT01vYk1obU1GVTgzUU5pZlRhaDFFRmdTUlhHR013T0xZMmQzbmsrS01NbDBQbEs2Y3NrbHV5RldGVWIzSDI1dnQ4KzhmZjR0YjRWckFGU3hPTU5VRU5WU3BVNFlJRFgrMzJwNWZCb3JsYTR0cjdyamQvUzM1blNHeG5KdXVENE80ZHJjZHNSUWdoU0xSbWRXMFY1eHpaY29KYnNvelZtTTNxRmo4NSt5WS9lT3R2dUdHdVk2aXcxSmpHeHQvaFFkb1FvZDRWcXkzT05rUG16ZmJGZ3JJaG5PQlI5U2hmZnVFcnZIRHk4d3owRUR1eFlWZGtaaTEzdVY0Ty9ueXZ5ODF2K2VQNHlBcVFwUnBUR0RMSlNKT0VzcW9vZllrc2ErcTg1a2RuZjh4VmU1V0NHb2ZCZXRjOEJPaW00TU8rQklDSWlFT0hTR1FqRGpIeVFHUi80NXNveVhDT1VCQUJ3VG1EMW9KU1lOMEVWSW14STlMTThZLys4WC9GeGV0blNNUTB4UTRhaGVranFiRVBFdnBFVnBoUlpGc3kwTjdvbXlGUER5alJqTXNSajY0ZjUvbW5Qb2Z5Q21NdE9rbkowcFN5cnFucm1pekw4TTR2MkE3VHVOclBPSkZWU2dXeWxXV2thWEFxS01zeUpORTR3Nk1uanJOeGRJTXI1NjZ3Wjhka3BDZ2xHR2NoNmNsei9RNUlvSkdleHN0VE5ZUkNRS2NlWjBPQmdva3RlUFBNMjJ4dWJ1SzFwMUlGbzNxYjg5ZlA4dDIvL1hmOCtSdC94bGE1aVpVS3BSU1NnRFVXeENKS2hmQURDSXh1NGRUTjlZc0ZwOHJQZnA0N2tHMk02bjRTRzE1dE9Ja1czVGs4Rkw1Z2IyZVh2V0lYbFlKZUVrYXl4OVhkUzd4LzlUM2VPUE02bHllWFNGUE54STB4MkJDSDNBYmR6aEJsQjlvMTExblRKeEZTbjVKWVRVYkdFWTd5eXZOZjV2UFBmSjRWdmNKa3Q4Ulhqa0dlOThqY0xBNERrUVZJUkdFclM2b3pFR0ZjVHRCTENXYm91Yng3bFRkdnZzVXVZMnBxREUxSWhCQks5UHJldzBsRXhDRkdEQzJJT056d1NaZUozUVhtU1VzTUxKTnlsNlBIVnJoNTZ4STcyOWY0bi8va2o3bDI0enlhQ3VNTDJoL3hsc1Qyc2VpN2h3MUtnelZRbTVMaFlJVkpVZUlhbjlYdmZQZmJ2UExNTDNGOE5TUEpVK3JLWWoxNDczckhyaDI2RmJwQ0MvMGJwOTgvblAxWmdtL1UxVFJOeVJ2aVU1WWxXbXVRbEdJODVxdGYraHJWcU9MLy9vdC9qcUZrcUZjUkVTYjFhRXE4Z0NhRHFsbHZ1NFhaNUxDeTl1Rlh1WFpZWHpKUUtXOWZmSjIzTHJ6UnhUQ25DSmtBMm1Cc0ZRNnRPS282SlA2Z2FTeXdtdlVmTk8zaklNbHYwWlRwZnJSaEJ6TWtkajdaeW9QVk5kWll4QXNleTdYcUtyZk9YdWVOc3o4aUoyUFNrQzJGcHFURVloblhEajlQcnVlN09GQWhJYk1LMnhFUG1jOFFLeVFrckxMR0Y1NzZFaTgrK1NKcjZRWm16K0FyaDhqaHYvV0pGM3pseUZXS0ZzWEVsTmpFb2xjRzdMbGQzcjk2bGgwbWpaYmRuTEltaGtmdEN3T0ppRGk4T1B4L3pSRVBNZnBlcnUyZHJpRk5Vb0ZvQmtQaHhzM3paQVBQUC8yamY4S2xHKzhqVkdqbHdKVm9IZTc4RDVjU2V4Y3Nrb1c4UTJrUFdLd3ZXVmxhNDlyV1JWNTcvUWY4NWkvOUhSNC8vamk3bzEyOEVkYldOaEFuN083dU1jaUdUSmxOeStJKzIrUzFqMWE1cXVzYXBSVFdXa1FrS0tDU01wQWxkbStNK09McFYwaVNqRC8vdDMvR1puMkxrQnFWNGwzZEtLNHNFcWIzaHlaM1FaK0FkeFJ1anpCd2xwRHFGRkdldmJwQXZNWGJhWFVtNzJjSnNjWE81aVFlUkVwN2lXajcxTmxGMDMzb3Bkc2R0THdHYTZZN3FwVmdYVWlxcTVpdzF5V2FPYkpCaG5jR2F6elpNS0dhTEFqazdLbmMzcmh1SDVVU0VwdUFwYW5ibGZLMVo3L0cwOGRQc1pFZnhVOGNZaFFyd3dIaU5VVlJrSHpHN2JYdUJQSGdLMHVXcERqdnFYMk5Id2lscnJpeWRaMXo0OHROUUlIRHE1N2pRL093cjdyakhoRnh1QkdKYk1RRGdIYVkyb0UwcXBUVUlJYmJtMWN4YnNRLy9xTS80dGJtSlJKVlk5d1k0MnJ5UEtXdTdZRWtOaExibm5Jb1VKWWp0QmFzcmJHdXdPUDVtOWUreTRuSG5tSnRZN1VaNG9WcG9HSzdraVpPdHBkMTdRK0lUZndzUW11TmlHQ01vYXBDQWxVZ3RZYTExU05zWDlwbTdkZ2F2L2JWcjFOWGxtOTk5MTl6Mjkwa0phWEdCY1d3VldNWERNMDdHd2JkVWI1TGVCY1ZEcGRvQWhuR1VrdXdoVVBiR1hWdFpwMmR5WDJqN043cEVNKzM5ZGQxMEJqNC9QUk82SlBsbGk4NnFGVW8rV3l0UnlkZ1BlUzVSaVJoVWxUZHNoMkpuUnNCRDZ0VlFYWHVQUVFvRnl6Rk1uS09jWXhUUjAveDRwT2ZaeTFkSjY5VGJPRVExenlFZE9samg1ZklRbkNGVUY1Um1CS25IV29wNGRya0poL2VQTThXMjFSTmRMSEhJa2tJeFFhUStUS0ZFUkdIR0pISVJqd0FhTzl5elFDYTJJYkllbFJTODAvL3gvK0JDOWZlQlVyU3hJQ3JHN0pybXhpNUtVUUVFZG4zL1lPUDN2NzJDRTNMUGROVXFHdkhjSkF6bVpSTWlsMkdlcDBiNVJYT25IK1hrNmVlWkdQMUtMNVNUS29SV01WZ2tNK05ZTGNzcXhkdThCa25zMlZaNHIwblNSS1VDb2xZU2ltU0pQeDBidC9jNXNTakp4bFhJL1p1VHZpbFY3NUdudWY4MisvOUd5NlBMNUlTRE50c2U4MzEzZjBkYUplUWtnS09URktNQzlXWHhDdHFYNk5WZ2hVVHJzZnV1bTNXMGJqTmlWS2QzN0hXQ2RhYXBsbmovRjN5NHZ1SHYwK00rNlIyQVludDIzQzFyZ0lMbDJuZks1QVVmQVhPaGRoaGxZSjE3WEcyNkd3NmY1WXE2dEkxZ3JQcXRpYk5RUlFVeHRkNGJiSEdnNFBVSnlTazVLU2NmdlEwdi9yeXJ6RzBTd3pJMFM3QnVCQzdYWm9DclRWWmxoMzZ2M090VXl5TzBsYXdKRENFRzl1M3VEeTYzS1RJbVpCZTZEMWFhNHl4WGNoN1JNU0RncGpzRlhHSWtiSysvQlMvL1Z1L1J6N1FESVladHpldlVadUNJMGVYdUhqNURILzB4Lzh0bTl0WHFlMElxSEJ1Z2s0YTJtc1gvNkkvUEVwc254WE5KWDNNS1hMdC9kNllLVEd5M3BFeTVJUExaM24yNldjNXVyR0JFb1dJWXBBTnFJb0tKYTFIckhUSkpTRUJxSTFOWHJpNW4wdXlWOTluRnUveGZ0YmJkdUY2bWpBQzUxeXc0bXBpZjYyMWlCTlNuYU1reFh0dzFwSWtDWThjZTRTVjFSVnNVYk8zdTRQRHRTbHVlTy9SR3J5RHBTUW5zUmtaQXdZc2tma2NUMElJY29WY2xqQzJEcjZrTFZQc2Q3TWRGMjdiUFNIY29JRzNkN21PZmJEUHlsVFdyVGROa3k1dU1zazF6bmlTUFBRbkZJU2ErdUJPUFhGcENLYWZtbFAwTDZkVy9EUzl6Mzc2a0pTa3plNVVZVkFsUlpIYUJJVWlKV2RWMWtsSTBTU3NzWUZHU0VuSlNER3VSdW5nVHBDU3Nzd3F2L3pVMTNqcDJaZFpVK3RvazZCcWhkU2duQ2JSR3FYYUxyaVo0OW0vUHFUMzNmUjY4ZnMrenh4Tzc1djk4alBmTFZxdWU4MHRMM1BMOTFYb21ldVhOclRBb1ZOaFRFV1ZHcmJWTG05ZmVvZnoxU1U4bm9LaUdhbnl1Tjd2WFp2ZitMRDgwa1U4MklpS2JNU2h4dEZIVnBnVVc0ekdqdUV3WjdpVXNIRmtpWFBuenZBbi84cy9ZWHYzT3BYWkJXb2dER21LZ05aZ0xZZEJGUHc1WXVyM09aMDIzeTBZQnUvUXFiV1dpakhyZytQOHEzLzl6M255eVNkWUd4d2xFZGdiNzVIcDdJRS90czc2NEhYcUhONkMxTUxTNmdvdlB2TWlLeXNyWksrbHZIWHVKMVFJaVdoMEx1d1ZPOEZKdHRJOG5wemdoYWUvd09uVHAxbmRPRUpsS3k1ZXU4enJQL2toNTdjL0pDZHJ2RlRyanErRzhJUGdSVHN0VVhCdlVBamUrYzRQTmlYRk9BUGVZNHJ3MEdJckMxYVJrRERNaHBqS1lMRWs2S21GRitBYkNoemlkVjNvNTd3amhHOERBMml1TVlVdExRcklKUTNrMkNzMGlweVVVOGVlNDNPbm51ZnhSNStnTGcwM0xsL253dy9QYzJOeWpURmpFcGRocTVxRWxDZnlFM3poNUpmNDNHTXZjSFR3Q0xuTndBcmFKYUg0aGJjNENWMVNjdmpUbkx4QXRwU0g0ZzByR2xteVhMaHhrVXU3bDZncEthbm9xaG5PL1QzM25KTWpJZzQ5b2lJYmNZaVJNc3cyK0lQLzZEOUdLY2RnS0t5czVuejNlOS9tZi8vVGY4YkZ5eDlRdVQwOEZTR3R1VTFZT3JqNHpzT0hlU2EvNE1BY1NQYUZVRkRWc3ozZUlwV1VyN3o2RlNhN0U3Q3dsQy9oYkovTDlCWGZvSW0xdnIyL0NFVjIvK2M1ZWVwamIwUFFrcUFsUkZ4Nlp6SFc0cHduelRLT3JLL3p6TWxuR0NSRGJsNitSVWtOQm80dUg2ZXFhNVpZNFI5ODR6L2hxMS84WlU0KzlpeTVHcktTSGVHeFIwNnd2clNPR3ptMlI3Y1FmRU16ZFZOaUlDUFF5clFqb0tIdDQ3MDBTZmN2bEJjUWxCTWNMcXhSYVpSb3ZBUGQvTXZWZ05wWk5Mb0ppZkRkK2dSQmR5cXQ3dnFtWi82cHJzZUtoTnpuVFZwY3hqSXJUWi9TWUpsMThsVis3ZVZmNWNUUnB6aTI4aWhIQmtmWnlOWTV2bnFjck1qWW5HeDJCU1pPWkNkNDVmU1grZUxUWCtUbzBqR1NXcU9NUmx1RmRtMEJDbzl2SldOcEwrdkZWOWFuWmI5MXQzWXZkMjYvWTY2ZGdNNHlkc285MUpwbVYrM3hvN00vNUlxOVN0MzgyLzhnMFZ2aHgvMmppb2o0akNJcXNoR0hHQVpVU1ZGdE1pbkhsRFZjdmI3RGQvL3EvK1BkczYrVEttbXlHNEk1dlloblgwaGNKTFIzeDRISHlKRVBORVd4eHpCZDVtOSs4Ty81OGl0ZjRkUmp6elBhcXRGYVlTU1VESjVOQUh1QWNxVWxTRjFKa3FDU0pZcDZURFVxa05LaEI1cGx2Y2J2L01vM2VPcXhwL25XdC84TmwwWVgyQnROV0dXZHYvZjEvNEFuanozTlduWVVWd3JsdGtOMHl0cVJkWjU5NGdYRUN4OWVmeDhOR0V5WFplN2E4QU1JU1dLZkFDc3M0M0NNR1dFeERlME1NUUI1a2pPcEpnMEJUUkFVWlYyU2tuYkJCZUVHTW8xN1huUldQUTVwREovMmgrRUdXaTROZ1hWNE5BbFByNTNpSzUvN0pVNGNmWnpOVzF0czNkNGlrWVJCTnVUNUU4Y1ltQ0hYYmw4SFBJOHVQY29Mejc3QXljZWZac2d5WnEvR1Y2SFgwbDE3TGJwNGpPYjhxZjFzOHBEQUFYdkZDRmxPR2JreDUyNmQ0MW9WaWtoNFplYWVUMVh2ZVhTL1Foc1JjWmdSaVd6RUlZWmpiVDNuNXUwTG5EcDFpdlBuUCtSLytwUC9ubk1YendLVzJvWEFQQ1hTV0JRUmY4RDNZWjdacTdtMitRU3QzbFFjWmJrSG9walVEb3ZsWC93Ly94Zi84RC83TDBnelRlVUtRSU1vbEJkODZ6cmFxRVJlSE5LVmF6Mk1jQmhqcWIyUUpJb3N5OUI2bWFSVVdERWthTWJqRVdqUDZST2ZZK1B2SCtIMW43ek85OTc1TGprWlgzem1aVkk3b0I3WG9Rd3dPVUtLTFJSRHZjb3pqejdINzczOERZd3FjRkkyVmNNVW5nUWh3UWtoQWV3T2crUjNTbVlTRDZQUkNLVVVOUldpaGRJWFhMeDJrVnU3dDZncnc5R2xSM2p1dWVmWVdONWd2RGRCMjRRc3lWQldnM01vQmYzcy82a0FxTHJ0ZXduSmEyRWFlR003OVVyQU9wUlAwVjdoU2tkS3pqT1BuK1R4OVJQczNSaVIrd0hyeSt0NEMwVlI0SlJuZmJERzZVZE84NlEvd2NsblQvTGtZeWNSSjFTN0pjb3BVcFUyejA0dUhDZENLTXlEQkM4d05oVkx4NWE1ZE9zUzcxeDhsd2xqRUV2dC9OUXB3MDhmZXdLTlY4SGRCUjd5MEtxSUJ3WHhNbzQ0eEVpQW5QWm5lblY1bWQzUkZtbWlHUTV6ZG5hM2tiYUswb0ppQjYwdmFFUWZCMFZjemhOWlF1eWRnbXdwbzlwMUNEbXJzc0h2LzUwLzRBKysrWWZzM0J5VHNZVDRCT1ZWU0lnU2ovTWV4RFhKN0cyczUyd3lpNXI3VmVvbndSeVVtSFhINWVmYUErRnFyZ3M1bU96TkorN3MyNzUxT0JNK0owbUMxazExT0hGQjdGT2V6YzFiNkZReFdCcFFtNUtmdmZjZU4yOWQ1OVV2dnNKVFI1L0FscDZxQnVjMXprcUlQODBoV3hKRzlVMnNGRGlxRUN2ck5SNE5QZ3Q3NWFzNzl2OXVXZmxhRkdtZW9sT0ZUeHczdG03d2c5ZS96K3MvK1RFbEpjODkrUnhmKzlyWGVQS0pweWgyU3NRSXk5a0t0bllVNHdtRGJGWUxFVCsxWlZDZTN0OVgzOVMyNlZ2ajRtQ3R4UnNoUVpPNEJPMFNmT0h4dFNWVEE1WUhRd2FESmFwaXdtUXlJVTFUUklUdDNSMnNjcXl2cjZPMVpyUTdodHF6TWx4Q29SanZqY2pUZEpyWTVOdFlYaHVzdTd6QzlSVFptZXRuN3B6UFgzL3oxMWY3L2Y1a3JkbnJSODIxTytHTzdXM2ZGZnV2UHlzd29vWjF4UTgvK0Q2dmJYNmZnZ2sycXhrWjF6bGppQWROQW8zcG1BVlFsazZaalF3ZzRwQWpLcklSaHhpT0xGV2tTY1pvTW1KdnRFbVdhcXE2b040ZE14aGtGRVV4dDR3S2NabGVOVGY1L1RmWUNOaFBhRnZ2cUw2SFZMaFpWa1ZGTXNpeGhVR1U0N3ZmK3c1ZmV1NWxqcTA5MFRDQTlqZy9lSGRNcFJTU2VyeDFHRlBoYmZPQTFGUUU4MWpXbDQ2d3VyN0s1dlkyOWFUa2hXZSt3SE5QUHMvYThncDdlM3RveWNpek5aSnNnTE9LVVRGaE10bGxkN0xIMHFvT1pyS2RwcVp4UHFXdFp0Y1dpRDBJN2k3WGRsbE1NS1hCaVlQRU05NGRVKzNWalR1QlluMTFnNEVha3JpVXJBbWpFS3RJdkdJcFhVSjM1N1JSWkZGTitIUG9tMjFWMEZhRzdmZk5oLzVwc1loTzBLNkpyWldVNFhKS3JvY1Vvd0x4aXExYlc5aTZZamdja2ljNXpoa2VXVHVLY3g1ZkNsVlZvWXdpVFJJVUNiNnhJSE9FeEM2Z2MyTjRVRXhKbkhqU1ljWjdsei9nd3VZbEhJNmFpcnIyM1o5b1U0OENUVkJpcDQvdHZubTZpNzk5RVljZlVaR05PTVFJVmIyeU5NZDdSNVpsak1hN0RJYzVJc0o0UEVaazlzWWxvc0VycHNZMzg2V1ZIbmFvQTk0dmdCZ2FDMVR3a01rUWpHYkFPaTg4K1VYKzgvLzBIeUoxaW5JWnltbThEeVI0Um5HU1djV3FQKzE2NFp1K05CbDZNcGVwNXlUTVk5bXZhSFhibVZ2L3ZDS3IvSFE5L2FrNHYyLzk3UlNncnNzUVVpQko4SmdsRkZCd05ualFycTR0YytQR0RRYURBU3BKUUJ4SmtqQ1pUTkJha1NrTkZtb0R4bmljMHVoVTRWUkp6WmovN1UvL1Y1eWFVRk1RZ2pja0RBMzdvTEJKUDk1ejBTbmFsOVU0ZTA3VFZGUFVGWlVyMEVrQ3luRzd1b1hEa2FDcHFWblBObGpLbHBpTUNzUzNpVndwd3l5bnJDWXp4emo0SUxSYjZ2K2Q3WWZGWVRFSW1seGxpSU1Td3dyTGZPbUpsM24xeFpkeHRXTmx1RUpkMUZocldWMWVwaXhMUnFNOWhzTWxVcDFocWxEVUpFMDFTaVhVZFluM0ZxMDExaldldXI0TkxWQnpJUWFxaWVBRjJ5aXhpMVRZL3JHODA0akFuUlRaUmN1SGtJdjJUeWdVdW1qdHY1UUg3WHRXV2MxeXpndE9vRWhyNnFQd1ozLzkvM0xCblFVYzIyeFNDNmpHazllVmdjU3FScEcxS0d3cjA0b0xSRFl5Z0loRGpraGtJdzQ1NXNuV1J5R2w4M0dnRVl0eE4yTW4xMG85Z2NqcUlkYUFKdVhKbzgvejBndXY4QWUvLzRkczNSanp5T3B4ek1RRmd5ZkoyTHE5emFPUEhtTTgyUTVoQmhLSVJGanJYQmlJQitVRGtWVStsTHlTTmtGSFRjT2VYVU1BUGtyb1FWaXY2eFJOOFdHNy9Xay9sdk9nOXZuMXp4TVpOZGMrdTMxUVZralRIQy9DdUJoUlVaS3Q1R3hQYnZIT2gyL3hyNzcvTDdBVU9Nb21YYzVobGNmaGNjNmhKWGk4N2xkZVZVTWtYZmVwT1dOaDIyMmYrdjNyV2hldExmemZNODhDQWhtVnp2TkF1cVU5MCtINTREZnJHM3N1MTF2V2QvODBLVXNNbStTdkFjOW16L0NOWC9zbXE5a2EyaVVvcHhFbk04ZFhCZGJYSTNwVG9ycHZQTUczb1FVeUxlZmJISW41ODl0Zi84eTE5RkdJN0Z6N3pJUEUzUExLcXk0VXd5aW9WYkFIYzk2amZhaHNuQmpITU1rb1IyTzhDRXZycTl6YzJXR3ZLbGc5dmNHM3puMkw5MjYveTYzSnphWXNzY2YwaWJwbjN6bnJlaVNSeEVZOEdJajJXeEdISEg3dTlYR1hpVGdZODhkMi83SGZuV2tBQUFBZ0FFbEVRVlFXbVg1VVdtTmRJQk03a3gxMk5uYzVldlFSbm4zMkdmYTI5OEFKeThObHlrbk4rdklHeFdTQ1VoYWhOZlIxZUdtTEpVeGZIVW55ZEdSSis0YUF3RDBuNzBsanZpUmQ2VnhtcHZ1c2p4YTFmMVQ3cEdaM2hPbFV2TUlid2RRRzd5eG9oODZFeWsxNCsvMDMrY3NmL0R0czQ3aFJZekNVVkpSVW1GRHRTeXdHZ3hHREZRdXBSMUlnOFlnR3B5eVZLM0ZpY2RwaXBNWjVpNlVPTWJ3SjFLN0VZSENZeHE4Mi9COG81M1RxdWhiYnpXOHdPS2x4S3ZUSFNvMlZHaWNHcHl5MmVSa1YrbWpFWXNWaEV3Y1prSGxVN2tONGdMT2tLbVdKUWRoVFc3TjNkWS9Uenp5UDhocnhDdVdrSVg4dGFRNXF0TXo4TGZzN25vY1dxbGxIZHczMXp5OTBpcnUwNTJyK2ZDNVk1OEx0K3RucDdMelM5QU9jQ252aW1qOG81UlVhVDRxQ3lwQW9qV2hGWVd2VUlNVVBVeTVPTHZIRHE2OXh0YjVDN1dwbUtxd1JSZ2FtcEhyeDMyOUV4SU9BU0dRaklpTHVIYjM3b1locVNGb2duMFU5WWJ3NzRmUnpuMk9RRGJER2thZ1ViejFKa21HTkNhRUY0aHQ3cG1hdzNMZlVkYXJ5elJOWjFTcWxJb3NaeFVkQVIyUS95VTM5RS9pQUNrS2VaZmhHTGJSWVJJTk9GR1U1WVc5dnhMWHhWU3dHamFhbFQ0S1FTc0p3TUVCcGpRcldBVmpqY0RhOHJHM0tMemRoelo1K1JiV21taG1odXRtVVpYLzhxUjZrK0dRQjIrdS9HbWhOU05UQ1l5dVByejFTd2NDbHBBVFhBb1d3eWhxdkhIK0pYMy8xVnhpb25NUWxKQzZRUHVWOWVQQ1F1WWVRTzUrV0F6OGY1THkxaU53dVdzOWR0K3NYZnc4aHJFWUFMeUZVd0V1ek9SOEl1L2FndmFJc0N2STh4U2FlM1dwTXVqNmcxQlUvL09CSG5DbmVwM1FoRDZBdG05eVNWNjMxb1MvQkd4SHhVUkNKYkVSRXhDZEFtd0RtdXlIYlZDVWt6VEQwemUwYlNPWDV3b3RmUkN0Tk9ha1o1RU4ydG5kWlhWM0IxYWJoTzlOU3RpMVo4eUtkY2pZbEJIT1VRTjI3bDlwbmdjZ0tRcUlVU2Fwd3psS2JtbXlnZWVUWUl6ejU1Sk84K3NJckRQU1EyOWMzcWFuSUdiS2FyVklaaTZrTnh0aVE5ZStuNjlPaVNYU0NUcnBhck5QajFpT1lmanJ1Zkc5VEFlOWNzR2x1N1ZuN0w5ZUVOTGhteU40cE1CNXNjQ2pJU1VsSlNFbkpHWEJ5OEJSZi84SnY4ZHN2ZjUxVGp6M0xraHFTMkhSS1lwMDA1TFZWVE84UUcvd1JQOTlYSXR0c3dNdVV6TGFLczI1ZXpnUkYzaVdlV21wTTVpaVRpbk0zTHZERzF1dnNzWWZCb0xVbVNaSnBLZHkyK3c5S1psdEV4QjBRaVd4RVJNUTlJaVRiSlRvTnBNYUhZVjd2dzlBeldBUzRldVVLang5L25FZVBQNGFnMERvUDFhSkVJODZpL1ZTNlUwZ1QvOW9TMkZhVmJiNFRGeEpvV2lWWDdyMUE2LzBuc3A1eVBBRThXWjZEUUZsTjhOYWp0VVlwVFpibG5IN21lVjU5NlZXZVBIWVNYOEwyMWg0S0Zjei9zV2lrcTlPbEczY0Q1eDFCYkczM1RoQUJKYXFycHRZRkYzOFN0SWRPbWhJSkttbjZrcUlsQVI5SWEwcEsxcFErYUN0K0RjaDVoQ1A4K3ZPL3l1OSsrWGQ1OWZTWGVXejFNVEtUa2RRSnkzb1piVUlZU2VLREc0SnFsR1RCaDBUT0E3cDFHSWlzQjBTQyswRDQrOUVobWM2SHNCUGx3VmxIdHBSUjJJSTZNYWoxaEF0Ymwzbjl3aHZjNGphR0dpTm1oc0RlemFZdUl1SkJRN1RmaW9pSStBUVFqTFVrT21TOGUrY2F0MW5YWkw0ckNuYjVzMy96TDFsZlBjSXpUN3hJVVl3NDl0Z1RYTHR3bGJWczJHVENRMXN1TkJDV3Z0NDJlME5lNE9SMGFMSGNaT0VYa3hFZU9wTG5TazlWVlVpaUtDWWxLa241NGpNdjhkTHBWOW5lM3VURDgrZTRjTzBjNzUzL0thTjZqNEtpUzlZU1BCa2FBV3JxTHM0VjN5WWt0VnFnL2NTbG1uT2RONkVSdm5tUWtVNWRGeFRyeVRMV1dHcnE1cUVoWXlQZDRMbm5udVBVWXljNXVYNlNnY3NwOXdyc2ptTjVaWlhoWUVpMVYxRHNGZ3l5WVVQcytsZkJBM0x5QWR1N2tEdHZXcS9RVFNFODBhQXlqUlZIb1dwS04rR0RXeDl3bWN2QmFnc3o5WlZ0UEh1VlV2dVUyWWlJQnhsdHhIeEVSRVRFeDBUUTEwRGhzU1FKaURJNEcwVFRSQUFMdVZyQ3VvUlhudjhWdnZIMS81QkhOcDVrWStVNDQ4MFJLMzZBZG9JWHRjKzFZS3FXaFhIcjFpcXJiNStrbXUzRDNaV29nMXdMcERYSy81akx6L2FSTzdvV0xDcm9JQjVXbDViWjJkN0dXb3ZTR3NTaDB4U2RhYXFxSWg5bUZIVkJXUmRVeG9BS2NhWkpra0JtS2RqbCt1WlZMbDY4eUtWTGw3aCs4eHBieFJZbEpSN1BrZ3dwZkVGRk9YdHM5NVZ0dlJjRXI5a1FSTkwrSDZZSktSa3BGVFVyTFBIOHlkTTgvZFF6SEZrN1FwYUVnZ2FKMWVnOTRaSFZSMGhVaWlrc1lzQ1dEbkhDMG5DSUxadHpMY0Vxellucm5BK2NNR09EdXFpZ1FZdURDaHJNRnlTWWIrOHovVVd1QlAwcjVVNnVCWXZPdjIvVldFQjVqWGVDZG5yYUtYSGhRU1F6bEduSnB0M2l6SzBQZU9QYVcyeXpqY0ZSVWdZN3JmNitOb3A3SkxJUkR3c2lrWTJJaUxoSEtBYnBDbVZkNHJHQTZXSW51NHBFSHBZSFMxUUZLQWI4L3RmL2tLLy8ydSt5ZlhQQ0N5Yy9UM2w3UW1MRGNManRWVmhxQ1dLZnpJYkVwSmJJQnQzM3NCTlpXOVdZdW1ZNEhESVlEQ2pLRW1NckJFMXBTcHh6SkZsS2xxZDR3QmhEN1JweXB5eEdqZkhLaG9RdkRjYlZqRVlqYm03ZVpHZHZodzgrUE1QZVpJK2R2UjNHaktpcFovZUplNjlzMXlleG1vUWhPV3ZaT2tlUEhPSG8yaU1zTHkzeHVWT25FYStRNENzVllwNUZreWhOSmpsU0NNcHF5dkVFOGNMcThocktLOHBKZ1loTXd5QWsrQ2FFUjVwUTloWUEyN09WT29SRTFxcTJQUnlIWURQWDdKcDRTaWJzdWgyU0l5bFhpcXQ4NTZmZjRTYTNxQ2d4elJFUkZjSkZuTnRmd1RBaTRtRkFKTElSRVJIM0NJV1FBdXdqc2pBbHM5cERTbzRqSldlZHYvczdmOEJ2L3Nwdmtkb2hnMm9BSldpZGtnK0dHT01Zajhjb2xiQ3lzc0prTWdycmwxa2k2OFQxZkRnUEpySjN1ckdMZDRqMzk1WElLdCtMMSt5M04wYjVpL2JGZGovWkRxOXFFQk5zeXhyRnNpMlI2OFNoRWduV1dkWXlxU2FNSm51TVJpTjJ4N3RVVmNXdFd6ZHgzZ1NDWE5jWVk2YU9CNFJoYXFVVVNaS1FaUmw1bnBObEdWbVdrVWpDc1NPUE1rZ0hETEpBeEZPZGh0aE9JMkFkaVNRbzExaG1lUjhzeDVxcDhncHhEWG1ESmlsTXpSQlIyNnJ3elhuM1RTeTJhNHBZS0pKOUJRUDZ5eThxYnRBbnFwYjl4N2ZmM2c5aFdVUlUzZHo1bVcvdnIyY1JrZldKSUZvaEZteGhjTFZEUkpObENlU2FtOFZ0MGlNcGw4ZVgrZjdQdnM5NWU0NktDcXNzbFl2bHRTTWlJTWJJUmtSRWZDSzA1V2Yzd3d0a0dkUUZRRTFDUXNtSXYzN3RMOG15aEYvLzZ0Y1pqV3JXOGpYQXNibHpDNjB5VmxaV2NjNnh1Ym5KWUpBZHZHVUpKUG1CUWxQd0FlaEt2VTdid3ZmYWUyZ0g4aDIwNVd2YklXWkhJUHBlT1V4aG1zU3hoRXdQV0Z0ZHh5N1o0RHZxSEt1dkxJY0hCQnVNOU1XRjRXN2xCYS9BbEhWUS9WeFl2L0xTdFlzSTFCSVN2Q1JCZTRVMlRYeW1KUlF3YUlwWWhHSUdmcnAvelg3NW1XUTlqNWVRbkdiYnowd2ZGbXhqV2RCKzUxQWRVVHkwU3FTRUdHaHhubUV5SU0wMHhsWk1YRUZ0YWdaSEJsemF1OHk3Vjk3bm1yMUJqUTF4c2FxUmJhTzdWa1JFSkxJUkVSR2ZGQWZmVFZ2U1liMURLNGQxTmRkSGwvaXJILzRGUnpZMmVPWFpYMll5S3NGQ3RweWhTU25yQ2Q0cmhzc0R2RzBTbVB4MGZiUGJ2WGZYZ3M4R1ZNL0szNFBNbFhXZEkyaWgybFQ3U1ZBK21hcCtEZjFyNjVWNWNhUSthN3hKUFNLQ2J5VmdEVjViSnB2Qk5VRWN3ZTRNaFlnUFZjRVVIQm1zQllKc2ZUZHRpU3lBcENxVThUV2gwbGhyaUtwOUNEaG9NL0NGUUd3YlNiWFozekMwYmxzRlg5cWowRk9jQ1Nwek96K2RVOEgra0lMNTk0Y0IzanE4ZFdnRXBRQ3hWTDdDcWdxVE9XcXBPSFA5QTk3ZWZwY0o0eTZjd0Z2UUNkaElaQ01pSXBHTmlJaTRWL1NKNU9JN2FsMUJrbXBNNWFsY2pTYkI0Ymh3Nnl4Ly91MS95ZkgxSjFoSk5saGJYaVhSQ1ZWUlVkV0dSR1dzNUN1VXJueGdIQXJtRVZURmdEQzh2bjlIZzBORGU1eGQ0SWxONWFld1hKZ3ZPRDgwQkxZMTNQSUtuUWFGMUxwcHlFQ3J2Q0tlOWFXTm1kS3A4OFBmazYxaXBqOGhibFZCRzcvcVBOWjVzQjd2UExnd2p5SzBCd3MxMWJoUytDNldUZmxwZkNqU0tza3R3ZlcwUjZiL3Zyc09ldkhYN1hCK3Y4L3o3ei9McUd2TFlMQkVLbURxaW5FMXhpcUxYd1paZ25mT3Y4MjUyK2VZTkdsZE90VjRHeDRHckxuZnZZK0krR3dnK3NoR1JFVGNNd1RIMUEyZldjTk1DY1VTUkdkNEc5cXpQRU1uQ21zTGRzZTdiRjdmNWZFblRuRGl4QWwyZHJmWjJkbGxkWFdWUVQ3ZzFxM2I1Rm53ViszS2tEWlZwYng0UURYSzRMMlpvZDV2SDFtNitONjJGNzNpdkRJdDF5dTRSb2wwemRENk5HNVVQSGdKbGxxdVdhWmJmWnZwNzRLbkxJMG5yOWFLUktVa2lRNEtxM1Y0NTZkVndZekZHb3V6anVGZ1NLS1RVR0JCNmVCRDIvL25mUEN1RUJYYWxhQ1VvRldicURVTkVtMzlYMzFUaXRpSmJmYXpUZDdydjhLUlVLMW5iSE9FbEEvRk1iUnJQWWFiZlYwUXEvcFJ6c3RCWi82Zzh6Yi9lWDc1ajNYK1JXR3RaNUFQVVNJVXhSNWVHZEpseFVRS0x1OWQ1YlZ6UDJTVGJjYlVvVGl3OHVEY1BxVStJdUpoUmxSa0l5SWlQaDBJZ1p4SlZ4Y1ZsTUxXcnJtVEM4NGJxcXBvUnJjdFA3MzRKdXMvT2s2YUp6eXk5aGdyNjB1Z2hjcFU2RlIzU1YwZHZDSkVVRTdqSXc4L3BDbFBLZ3RLcnJvbXM5NEVKUmE2UkNjUW5IS0lWMWlaWnF4N2ZKZlYzeVlqQ2FwekFSQVJwQ0dhcHE2N2VOZTIzRytiT0FaZ0s5c3B0Zk1xcHpTa1dWUllQeEpDRkp4ejFEWXNsNm9ra0c1YXhUY2thNFY5bmxWa3U2Q0JtZTJFZU5xUVJOVW8wRDN4MzgwWmllMGp0SEp2RHptL0NJaUhUR2U0MmxHYkFpOHdXTTd3QTh2MUcxZDQ0OXliYkxISkJBZmFoeXBxcnZVS2J0WDNHRnNRRVJHSmJFUkV4S2VEVm1IMFUwc3NVU25lbE9DRlpKQlFsWlBPMlNEUllHckQ5My82TjR3bkU3NzVPOS9rMUZPbm1Xd1gyTUp5WlAwb1ZkSFdQNTNGZzBSaUEvbHZodExucWxXRlVOUkdpZldoZ0lIdjB4Y0ZYV3BVenhXZ1czdGJ3dGROeWFodjNndmdqRzNpTTlVTTZadUdHRXdKc2dnZDRWVXFuTi9TVk9CZGNGbkFJdTEybW45VytmM3J4QVp5Mm9ZSXRPMjlhT0hlUWwyY2JaL0lTdVBxNEpUdHpYcjRRZ3VTSktVc1M3d3o1TU1VUjhIbDZ4YzVjK0Y5cm5FVjB5UjNXZkhRSm5qNVVEaERLMDNscWtobUl4NTZSQ0liRVJIeEthTlhrOHVZRUJHUTZpNHpSV2tZNUNuajBZUmNEeWpzRG0rYy9RRkhIMTFqTU16WUdCNGxzWnBKTVNMMVdWT3lsakEwTGg1OHduUUl1cis5QlVSbzRlQnhQMEhNZmFKS1lXRm8vOTZXRGZBTmlXMkRDdnBoR2c1eGJtYldkcHN0V2gvVUxudGZYRU1JMVl6bGsxSk5xZCtXNkxZS3EvSWgzcldKYVczSmJ1dEptbVZaOTduOXpqbUhNU0ZBVSt1UVloYUtWWUJYSVlZMmFRYlRuWnNMNUpSUVlhd2w3cTNhTHUzdU41Tk9yTzJwOFl2UytzU3piOXgrUHJSZy90ejJINEtVbi9XU25XKy9HeGFmK21tbm5EU3h2QUsrSDhQY3VqWW9xQ25SQTQ5YkVxN3RidkdUUysveHZqL1BHRXVGdzdhaEYxbUtpTUpQRENGQkx4TFlpQWlJUHJJUkVSR2ZLdWJwUnIvWTdOeU50d3R2VmVCU0VnYjh4c3UvemQvN3JiL1BpZldUN053WXNUWTRpaTFkVUtDMHhoakRwQ3hKVXNYU3lsTGpNOXY2eS9wdUNIc2VuWDhwNEh2TVJUVkQ5NnBIK21ZVXpSbHhNRkNSdG4yZVJzeTNoNW5heEt2RjYyOUo4T0oyTjNNMGZjL3Z0dStkdXBpSXk4dys5ZjFOTzc5YllYYTZvSDlxYnY5bjVtdDlicHVWdE1wZ3YzLzk5ZHpwK003M3I3L05zTHdzN0g4ZjgrM3orOUN0MTgzMW44WHRiYi82N2YzOUFGQ2Q1WUpyUEc4OXJsR2NuWURXR2hDY0JXTWMxbnFVYUpJa1E3Um5ZbmR4V1UyZFdHNU1idkdUYzIveVhuR0dNU1VxVHhpYm5Sa2x0cm5VQ2FaMHFuRXhpSWg0dUJHVHZTSWlJajVGK0xsWFgyMmNneUtNQ1NVZVhCZzIzOXZlcFp5VXJBeFdPUEhZQ2NhN0kwSnNiVWhHRWhFR2VZNTFudEhlSG1taUF4dHE0elg3VytySmRkSklmdExNb1pwM2JZblFka2ovb3lZSjdkdldBZk12eW9HYlhjQTEvWm85Ym9vRnFxS25VVlVEc1pObUtlbWVDS1l2MWR2dW92VjAvZTlsSTkzNy9yZUtPVUU5OTlNdGQ2bGh6ZmR0LzZYM2ZkZi9kcm5lOHUzNythdnFvUE0xMzg5NWRiVlBjQmVldi9uNTc3RC9ZZjdwazBqWGJUODlJMm1XVVpZVnByWmtXYzV3dUFRaTFNWlEyQUkzcUhCRHc4M0piZDYrOURNK0hGOWtMNVE4b0dJQ3lzNXUxTkd2WmRmWDd5TWlIbHJFMElLSWlJajdnNWFWV0pvRU1jZDJ1YzFmdmY3djBTNGx6NFk4ZnVSSkpqc2wzc0RLMGpxSjBoUkZpWFdHd1dBQStHbmhnS1lLbFBRVXpYWUlWNEIrcHJlVE9Dd2I4Y25nSkZUSURZcTJhcEx4M015RGdoaVBHRWdRVWdGeEZtY3I4QWFWT2VyTWMzTzB5UWRYenZMaDdvZU1tUUFHNldlMXpiUDQ2U1JHeDBaRUVCWFppSWlJKzRWV0V2T0FDS25PUXlJU251MWJXOXk2ZllQSG4zaU1MTThaTEErd3RxWW9Da1FnU3pQU05NVWIxK2grcllhcGFMUGNRNXlvZE5uMUg3VkxIK2Z6SjFkay9jTDJUOHMrNnE3Znk1M2JmNjcyVTNmNC9xUGlidXY5dFBxLzZMTVhNRXB3QXRNOE9kMlYzMVZlVVplR1BFMUlrNVNxTHBrVUk2eXZTWE9OV2hLdWxqZDQ1L0s3dkw5MWhqRkZzTmpDWUx5WnJYN1JJN0xUNUxpb3hrWkVRQ1N5RVJFUjl3c3pyRUNoa3dRdEd1Y2NoUjl6ZGVzcTIxdTdiQnhiNS9qeDQweUtNVVZSc0xxOFFwcG1iRzF1a1NVNTRuV3dJL0pxMzNDMThvMUxyUFExck1hSFZ0cFFnOFZkK2lpZkk1SDlhUE0vaUVUV0NkVEs0MVFUNE9IREE1VTRhZnh1QlZNYmh2a0FVWTVKVmVDMFliaVM0aExEOWVJR3IxOTZpN1BiRjloaEQ0dkI0bkVoeFF2cHFic3o0U0JkUCthcXdFVkVQS1NJb1FVUkVSSDNCeDVBb1NUQmk2T3VpdWF6QmpUV1czNTg5alZLVjFCVUU3N3czQmRaV3p0S3NWdGdSeVBTUEd0Q0N0ck05K2EyM21UUUt6K2JHVzlibXlycE5zNkRVZVkyNHJNQzFjWXYrL0ErVDFJc2hzcFcrTVF3V0UyUjNIUHR4aFYrY3VFZDNpcC9Sb1hnc1JocVBJWTBUUkJucWRydzJBVmN0U3REL0F2ZHU0aUl6eVlpa1kySWlMaFBVSTJTU2k5OTMrQXdPS1ZJOVlDNkh2UG11Ujh4R3UraUZIeisyUzlST1ljREhsbFpweHE1WG1sV0dyc20yNUhiMWw0ckl1TG5BZTFEdlRMZDVCdTIwL0R3NU5DWlptSW1WRkxpbDJCWHhseS9jWlgzTHB6aC9mSWNZMG9xUEVxRHRRYXd6UU9ZUS9lMnN5Z21OcExZaUlpQUdGb1FFUkZ4WHlBSUNRazA1dms2RlNRSlJVd1JqL00xWGh6T2UzYkdPMXk2ZUpsTTU1eDY1aFJyYSt2Y3VyVkptbVI0VWQwNlpzdk45cDBLMmhDRGtPdmRWcmFWdVJLM01iVGc0MzErbUVNTGtIQlZLU2NrUG9RVHFPRHBoUUJXZVZ6aUdia3hKamZZb2VQUzdtVitlT1oxenByejdESEJaQXBEZ2FNR0hlemdqUFhnSVZQZDRFSTNaakFOSzcvYkZSQVI4ZkFnRXRtSWlJajdna0F3ZzgrbXgrTzg2WXoxdXhjZWxTaWNkVXpLRVpmT1hjSURLMnZMcksydU1SNVBVRnFUcGdwcmF5YmxHSzBVV1pvMHB2Mk52UlllMThiSDRycmJ2M1NlU2V6elNXMFduTDV0ZldqNzNxUGN1ZjF1Uk03M010Tm5mRkQzejdqUUo3V3ZOcy80c0M0b0tSdStuKzJmNjVXZjdTLzNVVC9QNy8vOCtydnV6ZlcvKzlyTnJXOStlL1ByNTREMTc5di9iZ2MvVWYvMzlXZnUvV1J2ai9XbFpRWkpTalV1cUt1Q1BNdEpCb3JTbDJ6VnUrUkhCaFNEbW5ldXZzZmZmdkE2bC93Vnh0Uk1NTlFVamNWV3UrNHBjZTMvS1RTSE1PelN6SjVISWhzUkVZbHNSRVRFZlVGSXlRb0RxRUdGZGJQeVV3TnZIWG1Xa2FxTXNSbHovdng1SnVNSksrdHJIRDF5RkdNcnR2YTJ5QVlKeDQ4ZnB5d0t0cmUyV0ZsZXdyWFZqeHIxekl0dnR0VjgvWE5XWk85T1pEK2hJbnZBaW44aGl1U0NMejd1L245U0huWlhSZFl2L3Y2Z0wrNm1FUGZieGNQRzBqS1QzVDFHdTd0a3FXYTROS1NtWXJmY1pjK05TRFl5YnRhM2VmL0dCN3gzL1F4WDdIWEcxQlFZblBhZ3pQNCtOTTRFTXJlOTJid3ZPVGlBTmlMaUlVTWtzaEVSRWZjSjdaQi9heVkvSlowZE5PREFHa09TcEJocnNSaXUzTGpNOXM0dWo1OTRuTEl1T0hwOGd5UlZYTHQyaFVHZThlaGp4OW5lM2dxVmxYcXlZRWRrbTIzTEhHdU9SUGJqZlg2WWlheG1XcThnVFZKMG5tQ29HSmt4SnJPbzlZU2I5U2J2My9pQXR5Njl6V1Y3blFrVk5RYTBDNFZBL0g2djJKYkF6cWNnOW9zeXoxUzJpSWg0eUJHSmJFUkV4SDFDUDRiQXpiS081ajZkcFUzRlVCZVNZUVFoMFJtVkw3bStkWTF6WnovZ21WTW5XVnJOMmRuZFltVmxDYTJFbmUxZGxwZUdvUnBZUjF4OUw3WXcrTXYrdk8yM0lwRTlZTG1ET3ZBeGNUK0pyQUxHdTNzc3I2eVFMS2VNNmozR3ZrQ3RhVXp1dUdVM2VmUGNXNXk1K1FHMzJLVENZTVJCMmpMV0VFNEF6SmpDem9jVDlDbXIreWlkakloNHlCQ0piRVJFeEgzQzdHQnBsL2pVM09NRmNEVmtpU0pMVTR3eE9JUWswNkNGeXBic2xqdjgrSzBmb2JYdzlLbW5zTWJnbldWbGVZWGQ3UjEwb2p0aU1DVUVYWVRzUFJQSStUMjQyL3lSeUI2QVEweGtBWlJPcWNXeFYwOFlVU0pyZ3NrdFoyNS95TisrOTdlY0haMWpoMTBxYXJ3Q3lUVE9tbVpsQ3F3Tng2Q3BOZHNuc08zN3RnenRWSTI5U3ljakloNHlSQ0liRVJGeGZ5RDBXS3Z2YnVTcWVTWE5MTjU2dkxVNEFjUmhiSVhGZ0JhY3F3SEhtUXZ2Y3VuOFJVNDhjWUlqRzBjb0p5WHJxMnZZeXZXSWJDQ3UzZ3VoRk5QK3BLcElaRC9lNTRlYXlBcW9QS2YwTlNaMXFGWE5ydDNqN1lzLzQ0MXpyM1BGWHFXZ3BLWU9aV3hUb2JhbUdXSVFSR25FbWhDaTBMeG1rcytZSzBIYmwyb2pJaUk2UkNJYkVSRnhmeUJ6THg5K2tQbzM5cVFKRFBEUWtJRjJmZy9Lc3I2eHdYaXlCOERXM2lZWHo1d25rWVRISG5tVXNqQWtLaUg0MVRZYjhVMHAyNmFtcU13eHFVaGtQOTduaDVuSU9vRVNoMHVGT3JWYzM3M0JXK2QveXBzMzMyU0xiUXcxRlJVb2o5T2UydFFkaVZXa2lIV2tlUFJNd0F2NEp0WEw5Lzg0UGthWjVZaUlodzJSeUVaRVJOd2Z6QWNETWlXdy9hOFZDcDFxSEI3bmVzc2xRcmszb1EwYVNKVm10OXJqdlhNL1kvUDJGcytjT2ttU3B5QWVMNjB6Z2llVXNnMkJCY3FyVUZxMGZYV2xiaFV5MDhuZ3FqQ2wxYTBKa3ZUcHhuVFgvTnpuN2wycnV6WFRPYXN0eFdJeTlmTWlzak5qMkhlWmZ4R1htdG4zWHZ2OGZ2dzhpS3dDUXVHTDVpejQ2UlFFNWZldnZOOFBMOEhydGF2RjBVdTAwbDZGY2gydTV3L2JkTlpKZUZXSlpUY2RNeHBNdUxCMWtlKy85d1BPbGg4d1lZTEJVR05EeVZrRjFrM0RhUEk4UjZQd3poSWVxL29CTDJvbUpuYmE2VWhrSXlJT3d2U3ZNeUlpSXVJWGpUa2kyMzdzWjJ5Ny9peXowdFhzcW54WVVxSFJKQWc1Zi9pTmY4REp4NTdoaWFOUGtaZ0JaZ0twemNoMERrN3d4dUs5SUNKb3JWRktZYTNGV292M0ZxWERscDBZUEFad2VDemdRdlVtbTRBUEJSTHY1QU9yT245U2hmZTIyY01tRDcxeGExamtZenZ2cGJydjhMbjk4L2EzUDVNLzUzMnZINEdNOVRIZkhtYWF2cGNGUHE3enkvZjM0MDd0L2ZXck83WGZhZm5tNFFOVXI5K3VhNWZlKy83M3dhdllZd1ZxN1VCRGdrWWJRUm1Qc2tKaVE3MDRVOVdvUkdPY28vQVZUbnZTUVk1UGhPMWttL2ZNV1g1NjVTM09YejFQVFkxQ2NCaHFUT1BHNFErNHdiWVBTcTY3RXJyOW5KODEzcVVqSXU2SXFNaEdSRVI4NWpDZnJiMXdCbnBxWUNjTmVydzRMQTZINDUyemIrT2Q1K2pHVVVRRktXMlE1eVNpbVl3bkxBK1gwVHBCUkhBV3FxckdHb2RTUXBwbWVCZGtPZ0c4dUtDZ2VZdDBGUWwwMHk1NGNRdW5RS01JMDloL2hhblF4dS82ZXhiZERocHgvaWlLckxCZjBWMm8yTExmQ3FxLy9iNGkrM0gzUTMwaWdqYlZ3NlgzWFJ2NzdKdTQ2M0FlNWpvTmVPVW9UUjNVVWl1SUErVVVpUWZ4WVoyMU1hU0RsR1E1eFdkQ1FjR2VIYkZUNzNMRDN1QTc3MytIRDdZL29QUUZCb05QUExVM09EeWkxQjBlUlBhbkhrWkVSTndiNHJOZVJFVEVvY1dCUSt3ZWhKUWx2WXF4am93aHYvUHE3L0ViWC8wNkc4T2oySWxIYk5CdXZSZThFMFJVcDVONUx6am4wQjFUdEhnczRsMm56SUxDT3hWaWQ3M0NZV2VtWGx5akdFNFYxLzYwTTc1dk9mR2l5bGMvUjBVV1psWFpPeW15Nm9EK3phLy9UbjFlMUs0TzZQOUhYWjVHa1EyYzFjN3NoeE9IT0k4VFA5ZC8yMjZkMmpWcXZGTW9FYlJyMXVNOERrdVNwNHlyUGNhdVFBYUNHaXB1ampiNTJabTNlWFAwTmx2c1VGQUNrQ1JCbVE4VjVVQXBOUzNJRVJFUjhYTkRWR1FqSWlJT0xXYVV4d1dCbU01Yk1qSXNqZ3ZYem5QMloyZndXRmJYVjBoU1Jab2xHQXlsTGJHK1JxV2FOTmQ0YjZuS0V0WGFkN1dTcW9DNGFVeHRGKzdRTXJxWnFaKzJDVmdKQk5PS0RScWlnUEw3TGNBKzF2NS9Ba1VXUHJvaWU3ZWtxbnZGSjg1aEVqOE56ZWhpbUYyelg5T0IvVmIvbEpsQmZHR29sdEV1QVJlSXJzUGh4Rk1wUTZscjl0d0l0K0t4UzRacnhUWGVPUGNUZnZqaGE1eXZ6d2NDSzJDVlE1cmtRV3R0dDNhdGRTU3lFUkcvQUVSRk5pSWk0dEJpSm5sbndSZUpTdkZPb1VuWlNEWW9USVdnT2JWMml0Lzk3Vy93MkxFbkdHVExhSjNpYW9jempvUU1oY1laU1B3MElheU4vWlJlM0tXUk9neGgweEFoNlN1R1FiVnRGVmxIV0w1VmJCV1FXTldVeVkySzdEMHBzdUViUVBDK1ZiNTdNY2h6eDdLL2YrSTBtY2x4VGxHN0d0ZkV5OXJNVW10RHJTcXF0R1NyM09MSzVrWE9YRDdEcGNrRkhBYUxKYzhHN0ZSakxJdVJwaWwxWFIvUUdoRVI4V2toS3JJUkVSR0hGcHE1cC9HNUlGRG5IWW5XZUc4b1hZbkRzcUtYR0JVNy9PRGR2MkhuOWc3RzE2eHNMRE5ZeWtCNVBBNFVhRkU0NzZZVndKcXMrQ0N3Q29oMFRnaml3L3ZRM2hvbnlUUldFelVsVlg3cWg2RGFUUHQ3eE1PdXlFNWpkSVdwQTBRNEg5STRWTFJPRlczc2JBdmxGV0liQXB5QTVPQUhRcDBieG1yQ3JocHpZZnNpcjMvNE9qKys4bU51bWRzNGFtUWdsRmpHcHA1UmdkcUVRUkVKRHpWUmpZMkkrSVVnS3JJUkVSR0hGcnBSM3RycVIvTU1iakJJS1NZMTRtR1lEaEVEeGpzRVJVYU9SZkg0OGhPOGNQcEZubmpzQk1mV2ozRjAvUmk1V3NKWGtQZ0U3UkxFYTVUUklhVEFoWmhZeE9Fd09ESDAzUWpjdkVZbkhydzB2ZXdwZ29CMkVtTms3M0Y1OGYxa3NmYjRFeDVFUXVBeTN0RWRmejkvL0QzTkF3ZzREU2ExakNpNVZkN20wdTQxYmhZM2VmUEtUNmdvRVR3K04xU21uSGxva2tiMVYwMWlsN1VXNTl4ZHoxdEVSTVNuaDBoa0l5SWlEaTEwazAvZmtVVG9wZEVIcUZEUkZsTTFQcldpMEtKQ2doYzV3YkpMa1RQZ2xSZGU0YXN2L3hLUEh6MEJScEhKQUcwVHRFdkJLYlJOb1BFV0ZjQjFpVi96Ukd2V1ZLa2ZjdEJPbForTjJZeEU5dU1UV2UxYUN5NjZCNGgrYUlmcjNkNXNFeW5idFl2RHFob3Jsa29zRXdwdWpEZjU4TVlGM3J0eGhpMTJjTGdtRnJZR2JXWk9xMmp3VlZDRFc5dTJGbHBya2lTaExNdUYreElSRWZIcElSTFppSWlJUTR1N0V0bitMMXp2bDY1ekRDQkJvWnRYZ2dCRGx2bmMwNS9uODg5L2daZGZmQlZmQ2NmakFUWUFBQ0FBU1VSQlZGUWE1VFFwR1pvRWI4QTdoMGJ3Tm14YmE0M1dHZ0JqWE1oZXQxTjFybTBYRWF4MVdHc2dhYnhrdVVjaWVBQ1I3UGpwSEZIOHVFUzJKYXIzU21RWHZlOS9wejhHRWU0cm5TS0NsZ1JmV05KR0VYWGlPZzlnNDRJUGNKb25HR09vblVHMElrbVN4azNBVUZLZzF1SDYzalV1WHJ2RXVXc1h1VnpkWUVSQmlXa2lZUjJJQVh3ejdjRVQ3NTRSRVo4QlJDSWJFUkZ4YUNHb1huREJndkNDdVlJTEhWcUM1Z1ZCa3dSTGZDeXVLYWVROGtoMmpFeUd2UFQ1Vi9ucUs3L01vMGNlcHh6VmpIWW5KQ3BsYmJpS05BYjYxbHJxdXNaVUZoRWhUVlB5SkNkTlUyd2Qya0tSaGNhNXdIaXNOeVI1c0ltQ1NHUVh0VHNYSEFIYVY3ZC9JaUZocmxaZ3cwT0Q4UVl2a0tRcCtTQkZwWXFkdlIwa0VieEFaVXJLc3NSaXliSU10UXgvOFpOdnNXMjMyUjd2c09QM0dGTlR0OXB1cHJCMTFZUW1FTndSUElEclZHQlBqSU9OaUxqZmlFUTJJaUxpMEVJNnEvNERpT3lkMENocTdUcUc2UkJuSEw2Sm9kVm9WbG1qeHJQRUNwOTcra1ZlZWVrclBQM1Uwd2lhWXJmRTdKWU05SkJoUGlETE1oS1Y0cXpIR1lNem5ycW84VTdBQlYvUlJLVWtvaERSV0tteFVrVWllNGYyZzRpczl4NmNVSStyOE5DUTUraFU0UVRLdW1CVVRxaE1TVGJNTUw2R0ZQSmhoZ051M3JyT3o5NTlsL2VLZDloaGl3a2pMSzFUTUpoMnh4SUZ6amJYaWVvdUxpR01CQVN6TGh2SmJFVEVmVVlrc2hFUkVZY1dDK29nSE53NC81MXZmZ0NiYWFJVEVrbXdKdmlSSnVqR2gwQXpaTG1Kd05ROHZ2b0VyN3p5RlY0Ni9RVTI4cU9ZU1ZCaUUwbklzZ3p4UWwzVWxKT0t0ZUVhQ28yZ0d4c3Z3VHVIcnoyMXJ5R3hrY2plb2IxMUFPaklhOVBlaGhrc0Q1ZW9URTFkMTlUTzRKVkhwUXJKQlRUc2xTTWs5VXlxZ3NzM0xuSDIvRm11bVd0WUxEVVZJL2FvcUVNMU9PK2JDbXh0REczYk1lZ0tMelJqQUVJQ1RmQkJLSkFSRVJGeHZ4Q0piRVJFeEFPRFJkelZjL0FQWFpJa1dPdngzbmJMcW1iK1JDVW9yN0JkOGxaQ1JrYWVEbkZXNFozbHk4OTlsZWRPbnVMWlo1NWphYkRNWkc5Q1hkYXNEdFpZWDkxZ2IzT3ZzWG5Td2JmZkJWOWFMUWtvajNNbUV0azd0Q2RKaUhIdHdqSjZ5cXdsK0w3V3ZzVDZVTWdBRFZZWmpETFUzckJYN3ZMQnBiUDg3UEk3akJuanNLZ214YTZrb3FEQ1lydWlDdTJCYXphQmI4Vldyem9LMjE0TFlCcEZOaExaaUlqN2lVaGtJeUlpSGhqTUVsbTFjSjc1SHp3UlFhbG15SHJPKzdOZGd4S0ZvSEZlR3BWMjZuUWdDR3Q2blJkT3Y4aXJMNzNLazhlZnhGU1d2YzBSRzhzYllCUmlCRzg4WWpXcFNzaWErTm1pR0UvN0ZZbnMvdjFyM0FCYVI0QTJXUXVncHFiVUZTNXhhSzJwcFdKdk11THFyU3RjdUhhQjYxdlh1Y2tOTElaVWNtcHFSbjRQM3dRRjhQK3o5eWF4bGlYbm5kOHZoblB1OE1hY3h4cXlxbGdUaThWWm9rUlNKRVZLbE5TMjdJWGgzbm5oYmFNTkdJWVhCcnl3allhWGhsZGUyWVpoTCt4Tm93MGJhTUdHbXBKYUl6V1FJcWt5QjNFb1ZsWXhxeXFuOS9LOU81eHpJdUx6SXVLY2UrNTk5NzJzeWlLWlRGYjhFemZqM1h2bU9ESDg0eHUxd1lVa2ppZDBkckNLU0dTVmhyREVVVFV4Y3JHbURWOGdOSkJOQ3pJeUhpb3lrYzNJeUhoMHNlTE10WkNxdG1SamdYVjBROUlXcFNRRzBHOGxjWkpNRG1LYy9TTWpaV0VIRE1zUnMwbkZXSTBaREFiTTVuTUUyR1RNeTg5OWxCZWVmb0ZUVzJjWTZBRWpPNDRtQm9uUUJpY28wVmhsVG93anUzU3Y3ME1pR3lNOHhOaXNXbXVNTVlnSWRWMHo4M1AwS2MzdDZXMXUzbnFMdCsvYzVPN2tMdmY4UFE3WXA2YkdFNmlwY0FnZWh5NUFEUlN1RWFLdHlBQkNLNk1WVklpV3NxdExvRTR3MjdXcnRrRUVNcEhOeUhpNHlFUTJJeVBqMGNVeFJMYVZtclZoUDVlanVpNWdqQ1dJSTdTaU41WEk2N3ByYWJCYTRRVGlmMURvSWNISFJBaXRFNUNoU0hheGlsMTlpZ3RuTDNEdDZsTmN2WHlWMDF0bnNLYU03TGlHQVNOTWlDRzdPZ0lYV2xPR2xxanEzdStxMjYvZHRvNElxN1JkUkphMkw0aHFpdldnUUZSSUtYampjL1JUdk9xVStHSDk5dVdrQkNKSFUvUktzanRkdnIvMXhDL3VHOUo1a3JtRkRvUVFMVkcxMW9nSzFIWE5aRExob043bm02Kzl3cjFxbnozMmNEVEpZU3VxL0QwT1FmQUVHaFVqR25RY3RHMG9qUVV4a0lpc1JsQnJrczUyQ1RmYWhxQjZXL0lNbXBIeFVKR0piRVpHeGk4cGREZkFuVHpRdlVPSjJ0cVQ2ZVcwcHkzQlM3OFdGSGg4WjRwd2V1c01WNjVjNGNxVks1emZPcy9semNjWnFqR0ZOb1FndUxvaE9LSFFCWVVwVVNuaWdUaWlCREdKVUEweDhvRU9LUXhVajZRcWlNY1JNMWVwOXZjZ3libE5rS0FRRmNCS1IyU1hLWDhzblF0cmZ4ZFJhSW5QUjFnNFkzbUp0cXcrVVVwakxVRzFoRlk2c3RyZXM5ZXgva1VyVk5MYVYySE9ySjR4YTZac25kcmdzRHBrNzk1ZDNyNTdrOXQzYjNGbi93Nkhjc2ljR1ZWSFdDUGFDQUloR1JERXY4UHgwU3pDVWRucmNYYldSOXJDMmcwWkdSay9iMlFpbTVHUmtmRXpncldXRUFJaEhDWExCU1ZudWNERlU1ZDQ0dW9UWExwMGlaMk5YWXFpd0VxQndTQmVNTW95MEVPc3NpaUpxblpmQjhSSkpKTDBDR3dybVU2cGI3VXNKS2RSWW15NjZ3Y1ZhSnFxSTViclVCVEZVdFNBZnZRQWdrSTVqWlpveTRvQlpYUTAwVWlrOUhBNklVcCtRNVN1cHB0UktoTHBPZ2d1TklUZ2FIQTQ1WENoWWU1blZLSGlxMS8vQ3hxcG1mc1pjMnJtekZLVTF5aHBkVWNUQW1ka1pMelBrSWxzUmtaR3hzOFlyWDBueE5pbzNuc01sZzAyTVJSSmFpaU1HTEU5Mk9iYzdubDJ0blo1OXBsbktYVEJvQmd5c0FPTU1WSHFHNktKUWFrR2FORWR3V3lscjRTazhrODJzaXJxL0JGUGo0d0dyTFVuM3ZkOFB1K2lCS3lXQUlVdVl1U0ZFQWppcUowamlNZUhnQmZIOXFudFNEbEZZcTZzRUFnU2JWNERuc1Bwbk1OcXd0N2VIVzdmdmNXdC9UdnNjWnVhcGd0dDVaUFUxYWM2QWtGcEJWcW9uTThUV0ViRyt4eVp5R1prWkdUOGpOQjYyTU5SSnk0bG1wSUJyWjY2TlZKUWFDeVdBVU1xcW1TVW9OblJ1NXpaUGNPcFU2ZlkyZGxoTkJoemR1Y3NSbW0wdGhoaktIUk1nMnUweG1DcDZ4cmRuVHVhQTBRaUdtMXJuWE5KaXJ2ZXRFQnJ1MlFiSzZLV3ZydmcwMzRhOUVJeWkxWkE0TzY5dTlSTnhlRjB3dDY5dSt6dDdiRjNzTWVrbWxCVE02WHFITzRrMGZtQW9BZ29WTEo3OVYzWnVsZEpWdTFuWkdRa1pDS2JrWkdSOFROQ1VSU2QxLzA2R0tKRXROUmxKeDBOVGNDSkF4U2JnODJZSWN3M09OeVNSYTVPcVhRdGhvS1NRVEZnTkJnd0xHTm9yMElYWExseUJZM0NHRU5wQjVUR1lxM0ZtQUtqTkp1anJlNXM2NGhzMDNoQ2NIZ3ZORTFGMDNpY3EvRSt4c0NkVmhOcVZ6R3JLNmJUUXc0UEQ1bk1ENW43aW9hYUtvV25pZ1EwSkVxK3NDRU8zY2NUa3B1VzlFaXQ0QmJFdFIvb3QwVzBNc2pJeUhnZkl4UFpqSXlNako4eFlxeGEzWDNhd1A1YWE1cW1vYTdyNWYzYnFBWEh4TUtOK3loTVQ5NEtZTEdKTEtwT29objNYVDR2dFBheVhhUmMxaEhaZ2dHUmdyWldxWFRiV3l2VlJZcFdoU2JHMlcxZDNoeDFPalpHRTRpUTN2LzkwRlowMXlLRlF3dXRjNTN1ZlZwU0s4Q2NQSU5sWkx6UGtZbHNSa1pHeHM4SXJWMXNtMnExRGV6Zm9lZEpiNHp1VEJIYU5LeXJ4N2VPWTIwRXE5SVVxS0NTeldsWUlxb0FRejJJSmczU3lqZ1hpSFMzZGY1YURja1F5d1hsak45MWpKZUFRaU5BeFpTV2lyYjdMdUlHdEZqUVg1VklhRXZrdlE4eG1sV2JpamIwNm1TbGZvNzhKbVNKYkVaR1JpYXlHUmtaR1Q4djlLV3hTaW1hcGxubWpuMjBrc2pRKzk3YnBqUkl3OUlJcmxGTFRsblNTNGpRV3VMR3YrTTM2Y2pxZWlJYmlmRlJRcnZZdnBESHNvYkNhazB2aml6TEpMUzliUHRadGI0d0svdTFrTjVuT2NCclJrYkcreENaeUdaa1pHUThaRVFKWjFqOWNibGNoOVhSZStYN2NvemJ4Zi9RY3NCdzh2bnZoM1d6eHpwQ2Z0dytEenI3eUVxWmtaSHh2c1hKc1ZjeU1qSXlNbjVtNk52Q3Jnb2tqOHVBZFN6dVErckNpdG1CRUJZMnB3K0NQcG04M3ptT0NuT1BubWZ0Y2NmYkNFZms5TEFaR2U5M1pDS2JrWkdSOFJEUVp2dUtmNnNqamwwZFJXdFR3QjVEMm83bmtLc2tjQjBwZkE4UzJWNTJzMlV5ZXRScDdFUUphajhON3dwV2JYNTdWK3c1aVdVeW01SHhma1ltc2hrWkdSbS9nTkJMWmdCSEhibmFMY2NkdmZwOVZTamFRVmd2TWIxZmVjS2RMNVd0VlBVRU10c1BLbmJTVS9SdllvMHhSa1pHeHZzUTJVWTJJeU1qNHlGaDJiVGcvclJzV1dvYnVtUHVQNGl2azg0R09DRTk3VHZDTVJjK0t1UzluNG5BTzhXeXBEZFQyWXlNakV4a016SXlNbjVCc1NxRlhaWFNRbGhrdVlMakphamRkbjFrMUg5d3k0S1RTZVQ2OHg0blZlNGJDNnhlNXdHRXdoa1pHZThiNVBFZ0l5TWo0MkZnWFZTQyswWWhXSmJJTG1XOGF2Yy9rY2oyZmhlOXhqTDNuYU5OS0hzc0V6N1JoT0RZWGRZZmRKeERXWjY5TWpMZTk4ZzJzaGtaR1JrUEMrdENWY21hN1dzSW14enorN3U2M3M4U0R5b21XVWRjZjU3M25aR1I4VWdoUzJRek1qSXlIaForRmxMR2t5U3lSNjZqZjJhbUJSa1pHUmsvRDJRaW01R1JrWkdSa1pHUjhVamlwK1ZLbXBHUmtaR1JrWkdSa2ZGelJTYXlHUmtaR1JrWkdSa1pqeVF5a2MzSXlNakl5TWpJeUhna2tZbHNSa1pHUmtaR1JrYkdJNGxNWkRNeU1qSXlNakl5TWg1SlpDS2JrWkdSa1pHUmtaSHhTQ0lUMll5TWpJeU1qSXlNakVjU21jaG1aR1JrWkdSa1pHUThrc2hFTmlNakl5TWpJeU1qNDVGRUpySVpHUmtaR1JrWkdSbVBKREtSemNqSXlNakl5TWpJZUNTUmlXeEdSa1pHUmtaR1JzWWppVXhrTXpJeU1qSXlNakl5SGtuWWgzMEQ3M2VvM3QvUy9iVzZ2Z2hyanhFZUJXaFc3ejhqNDZlSGQ3TVdmNC90VUsxOEYxRHZRUllRKzI4NGV0N2xIZDd4N2F3L3ROZi9WTnFnZUZRR2o0eU1qSXo3SWhQWmh3Z0ZEQWRRMTRERTZjYllFdWZpTERNY2phaXFPU2lIU3BPUmtqUjFDd1FGb2s2ZWs5UUpzNTBDUW9qblBPbDRrZmc1Q1ZxRFVnb0o3UVUxU2lsQzZFM1k2WHhhTDI3SytkVVRIMGNNTWhuT1dJVUcxV3N2NzRhY3FiQkVSQlVLNloxQWdLSW9DSGk4YzczakZwZldHSlJUcURXVVVxVi80Y2dpVkhXbFY0S25qazFlcDR2MmRsY2F5bkpJTlorRHhQczA2WGxGQklWZ2VnZUVkR1B0YWFTOTBlT2VIektoemNqSWVPU1IxK1lQRVFwb09aMVdnTElFS1FsaWtJNDVlc0NsTXNSamlCT3dwRi9qcEt6ZmZjbkpVcDJqOTZ2UU9oTFU5aE9DUS9ENGpwQzI1elVZWXdnaEVLZlZRSkNqWkhSOTQxczMrYTRjbTF0dVJrZGs3N09hNnphR1Jaa2FmbGtNY1hXRElCaHRHQXdHaUFpemViVjBCbXNzeGhnUWhmY2VIendLaGNXbVBxa0l5SkhTcE41cTBBUUVCVFE0TkFxUEorQnh5dmY2KzNwc2JHd0FNSmxNRnIrTmhqU3o2WktHSm5SRVZpOVhpVnJ0ZTVuSVptUmsvSElnMDRHSENBVU1TMmdhRU5IQUNFK0JVU09zS2FsY0V0VXFqOGFoOENpSjA1WkdkMUlYVVlHRkN2SGRsR0R1UTJXZHVCTzJlaFFOSUtna2dZVW9MV29sVVZvcElLQ1VJSkYyZzRvU1hLMmhTbytZa2ZIdXNTS1JoV1BhMGxFQzIwSVZHaFdFNEtVbm9kV1V1bUE4MktDYVZaM1VOa3BzZGZlOXBPRHk3a1dzdFl3SFl3YmpBYU55aEM0MGhTNElLb0FuRXRZbU1LdG5WTk9LZTVON3pDZHpaczJNQSs0dCtnb0toY0hqY2RSNEFwdWpNZnV6QXlBZ2dDME5RUVZDNDBIQUNDdEVkbzBrZHIzOTBrcmRaR1JrWkR5YXlFVDJJYU8wQlkwVFlNREY4MDl5Y09CeDNxQjFRZDAwRE1vQ1ZKVElhZ0pLUUVtU1FnRkJCTkVQL2dyMWZlYXh3V0FRcnhNQzNudWFwcUYyTlE0SE9CUnpJcUZ0Sjg0RmlXMGxzUXVwY2tLYVdJMEI1OGt0TU9NOW9FOW1XMDNETWRKSE9LcUM2TEZBaFdKUWpGRk84RUhRR0F3V2cyRmI3WEJ1OXp6blQxL2c0dmxMWExwd21kM2RYYWFIOTFBcWFpcGFiWVdJZEoraUtEcnRCU3o2a1hPT0VBTHo2WXlidDkvbXg2Ky94cHR2MytDZU84QlI0YUtzbGpsekFnNVBRTFFReE5HcVpiUlJTQ1gwbmo1MnBlNFoxMmcyTXBITnlNajRKVU1tc2c4VkdpaXdlc1FMejMyTWYvYlAvak0ydHk0Z0RCaVVHNkF0OCtsaElyS0NJcUJiSXBza3MxNzhnMTllQlhCaGpkcHhnYXFxRUpGdThxM3Jtdmw4VGwzWE9EZm5sVy8vSFRkdjNlREhQLzRSYjc3MUpvNG9ZdDBZakJpT1N1N2R1NHZRSURpRUt0cmI5czUvMzhhWFcyZkdpZWhMSG51bU04ZWgzNTVVK2hqRlFBOXBLb2RHWTdCc3NzWHVlSmVQdlBBeGRqZDJPYnQxbnUzaE5nVWxoRWh4bFJLR28yaUtFRUlnaE5EOURWRXpNWi9QNDZWNjVqZ3Q2ZFVvZk9NcHRJWkM0WFhnM215ZjE5Kzh6dmRlK3g2djMzeWRQYmxMUllXandlUHcrUGg4N1ZyV3JYbWVrNTViVG5Za3pjakl5SGpVa0oyOUhpbzBpaElYREZXbDJEMTFCV08yMkx0WDRScUZLRUg4QUZSSnRIb0xLTkZFQVd6cjlIRXlrVDNaOWk2QWQ5SGJTOVRhY2xoc2RkK0RlSUlYL0piRHUwQ1FpcWVmZmc1VWcvZWVlL2YyZVBYVkgvS05iMzZkcjMzdGI3aTl0OGRpeHRXQVpUQlFHQU0rTkRRTitQdk5vNDlXaUlhTWg0RStjWDBISkZiMXY0dkZCSTBuWUNrcEtYankzRFUrL1B4SCtNRGp6OUljZXNaMnpJYmRvbFFseW1uRUN5RTVaTTRPcGdRbGFGR0loa0pickxVVTJvSlJuTmsrU3hNY3ZuYlV2aUUwMFRKV1MzVDcyalFiK01iajV3NmxQYWVMVSt3OHRzTUhIbitHbWFyNThadXY4cDNYdnNOM3JuK2JHZE5vZVN0UnFydlFlTEJNWXU5RFprKzBOTWpJeU1oNHhKQWxzZzhWQldXeFM5MFVQSDcxT2Y3RnYvanZhVnhCVlJrMk4wN2pnK0NiUkRTVFdZRm1JWkhWUUFqdGhQYUFDRFVuMmRKNkx5Z2xTNzh2dm5za3pCQnhLS1V3VnFHMTRIek5iSFpBVlIveXYvNXYvek8zYnQvZ3JWdXY0WmtETmRFVUliQmtWZkJPdk02V1dtcGZvWnJ4dnNjSkpnTnR1UWc0c0hCSUxCa0JtaEZqbm4vbU9UN3hvVS93eE9VbkNaVmlldmVRMCtPejBLUnUwb0FKbGdLTDFjbjVTMGNiV0h5MEp4Y25OS0hwYkdQeEVGVEFZQkF0VVpKckZWYlpLSkdkMVJnaUNSYmo4Y1pUVTFPcGhsclZxQ0VjMVB1OHRmYzJQM2pqKzN6LzFSK3dIL1lJQkliRmlQMW1yMmQ3SHRZVFd1bC9kRnBXeHY0Y2t1MXRSa1pHeHFNS0EveFhEL3NtM3I4dytLQkFsWnc2Zllrdi9kYS9ndzhsMW13d0dHNHlPYXpScGdTbFVkaGtDMmhRV0JRRllGR2lvcU1WeGRvU3NiUW1ET3RLclF4S0daUXExcGZFRWl5SVJzUWdvaEF4Z0lGZ2tXQ1JZRkNVYURWQUtRc1M3L0ZMWC93eWx5OWZRV0U1M0o4eXJ4dmFlRU45dTlvT0p4RmF0ZTVMbm9ZeldFOWtWMGlzVG9ZREJvM0dVbEF5Wm91UFBmWUpmdmR6LzRSUHZ2eHI3SlM3VkhzTnpHRzczRVVxUVRVS0xhWWpzQ3BBMHpUUnhLYXE4WTFIZ3FCRm81WEdhb3RXOFVxRkxTaE1nVFcyK3gwUDNubEM0eWhWRWRWaUFrRUNJYWtvQ2wwd0tFcENIUW5ydWQxelhMMzRHQmZQWEtLc0MrYUhEVldZSTBpS2h0REc4T285OE5xK3BMb29DOUY5TGNzeU1qSXlIbTFrSXZ0UUVkWHRZTm5aT2NkbmYrT0xHRDNDTzRYM0dxMXR0S3REcFhpd2JXektORVBKSWk3bFloSTd2b3htQmpvNW9rU25GTldhSHFUdkVwSURXVWhtQ2FLNjdmRU85T0s3S0xRVUdJWm9TZ2lHNEF5aGllVFk2aUZONVRsejZod2YvZkFuK01pSFAwcWhCMXgvOVNjRUZJWUJTbW5LUVluejBRNjRLQXpXcWlRSlBxbnVNcEhOV0VZYmlhdVAwWENBZHg2RHhXS3dGSmhrUkhCNTR3bitvOS85ajNuMnlnYzVQVHlOYlFwTVUxS0dra0lHYUs5UlhxTkVSZE1Ca2cyczhtQUViUTNXV0xUUm9CSVJsWUFQUGtZNFVKRXF0ditDaE81dnBSVktLNUNBS0UvUUVxT1BhSWt4bTBVSUxtQkVvNFBHendQR0djNXVudWVKQzA5eXBqaERtTUplY3dlTDdSNjhMSWY0a09JWFdCc0RSUy9YMGdxUmhkeUhNakl5SG1Wa0l2dFFrVHl1bFdWMzl5eWYvL3lYVVdwQUNDcEpOUmRpRlpVbW14VGdpallNdStwVTYvSkFwZTUwcnF0cGY5VGk5K08ybzlFaFNvWmJpUzJZUlltS0U2c1h2QmMyeHR0Y3ZmSWtseTg5eHVGZXhhMTd0d2tFbkc4WURUZXdwcUN1YTBJSWpFWUZUWE9TMlVBbXNoa0xxRFhDZlFTOEV3b0tOb3R0aWpBQU5KdHM4U3N2Zm9vdmYvYjMyQXFuMlpKdGhtcEVLUU9NTjJodlVFR2p4YVJNSUdtNUdFT0dJQ29nNlcrVXBCQjRpYUwyeTlYUHluYVZJa0VIN2VNNWthNDNxM1RWNEVFSGd6U2dhc1ZBRGRrdWR6ZzEydVhzcVRPTWhnTnUzSGtUQ0JTVU5MNEJFY1liV3pUejZacWFpbVBIZ3NobTA1eU1qSXhIRzluWjY2R2lkZFpJQ1ErVUErWHA3RkdWNmlVd1NHR3NGR2hKcWtRRjkwMjV0VFpHUU92MTBZK3ZxZU0xK2lVcjVlcjJMc0ZCajBWSS96S2FhdFpnN0JpTlJZbm53cmxUbk5xOXlNN1dKYjcyemIvZ3o3NzYveklQOTVqTkhUdGJtOHlyT1NMUmZoR2FCNm5ValBjUlZHODlJKzM2S24xWHlaQmdvRWE0SnFEUVhDd3U4K2xmK1F3dlBQZEJ0dlF1eWcwby9SQXRJQzZHdC9LU0VoUm9TVnFNUUZBdDZVdFNWWlVjTDBQUnU2UXNsYXRZM2U1MXdLdlFSVnNRaWFHMFJBUVZGRXFnd0dCMFFlRU5WZE1nenFNOTdKZ2R5dDJDWXNzd0hBNzUraXRmNDY3Y1pVQUJES2dPcDhUaFBZVTFXSkpVWi9LYWtaSHh5NE1za1gyb1VHa21OcHphUGNkdmZ2NjNVV29RelFvb0VmVEMwWXVBUWxMRWd1U0FwV0pJcmlnWm91ZnMwU3VSeFhkV1MrbmwvM24zcGU3a3d1bWNMWXRWQzBiUk5DN0dvaFhENUhES2ZGNVRGbVBPbmJ2QXRXdFBnZks4OXRxcnVCQnd0VXZIQlVJUUpKeVFoMzVKT3B6eGZrVk1qZHo3SVRVSmxleGhTd1lJQ29QbDZ2aEpQdmVydjhuSFgvd2tBemE0KzhZK08rVXBUTEFvMFVnSUJHbmJjTlNDU09vL0hRVlZQU21tV2lqcFVlMitpM0wxczNaN2Q2NzBlNUxUNm1US1l6QllZeWgwZ1JJd1FTTXU0S3FHMlh5R0tSWFhubnlTb1M2NStkYXRtRklYUjBBWUZDVk5HNVZFTFZkUjIyK1BJOTBaR1JrWmp3cXlSUGFob3hWaEprTGFRZ2txTERKd2RaUk5CWlMwaExZL0VSMlh3VXNkOC92cTl2WmUrdVc2ZTEzWnJobzBEZTIwdjdERmpSZ1BoNGp6ZU9jWkZtTzBqaDdnZ3FFMEczeitjNytGS1JYLzVpdi9Ed2V6dTVGeTZDSE96N0hXNHB3N2djeG15VkpHUk93YjdSK3RNMkcwSFRVVXZIRGhRM3p4MDcvTnRRdFBzZmYyUGR6VWNXYmpmRXhRSUZXeUc0L2UvOUhXTmkweVZ6TWpKOC8vRnV1U0tiL3ptMjdEMGkwOXhSS2NyeEU4Rmt0UkdFelJMaEFiQ3FjWW1TME9ieC95MHVNZlpGeU8rY08vK1FxZVc1U01PV3dPTVdqOG10VFFiZEtTVEdNek1qSWVkV1NKN0VPRjZpSVNuTjQ5enhjKy96dG9SbmhuMEtwRU1HbS9hRStuOFNpSmtzOVdJdHM1WTcwWEc5a0h2WHNsS0ZXamxLTXprMUN0am5keEhlY2NXbXVHZ3hIR0dLcXF3ZnVBTFN6bHlITDV5a1dDRjM3NGd4OFM4QVJwQTNNSklpZEpaVFBlNzFEcXFIVk5UUFFhWGJvMGhnOC84VkYrNDVPZjUvRnpUK0FtZ1RDQmtkbGdYSTZvWElOVEhpZU9vRlA3MVlxZ0hJS2svaGFkTFpVazIzUkpEcGlZWHY5N2dIdHZ5M1MrbG8zcm5nRFZhRVVJQWVlYTJDK1VCeDJpYVlPR1Fodm1reGxLTkRzN080eEdRKzdldk1NOXVjZkN0UXk2U0FZcjE4N0l5TWg0MUpFbHNnOFpxblhvNnRMT3RtRjBWRXBGRzZGNzhSN2JWTFh2allZdXpyekF1NVhJT2xBTm5RMXRhSE5uUWh2MnkzbVBVZ2F0TmQ3N2xCSE1NUndPR1c4VzNKbmNZMmY3TkovNjFHZTRkN0RQbi8vbEgrRlRXdHNZSTVlRkZVRkd4Z3JDa2FiYVNtTU5Hc09MVDc3RXh6NzBDUzVkdU1MKzdRbHFvamkvYzRraFkrN3MzMGJHUXFOcThBR2x3QnFEaUk5Uk83ekhLSjJ5NlNrUWs5WnBVU01TVkRTdzZkQkZBRG1tLzZ6WmJuemI1Mk5FaEdndnU5RFFLS01RNXhIeE9QSFVYaEFuS0MwWU1UQ3huQm1mNWM3a0ZvandvV2MvUkJVcS91MC8vRnNNY3lZY0pwZXlCSFhrRmpJeU1qSWVhV1FpK3dzRERkS0crdEZvMFhpSUpnVEoxbFZKNnhnQ2NpUy8vQW5uN2RBbm9pcUcza3JtREZyQW8xTXA2S0FJaW03QzFrajhYV0tnZDMyRVhMYk9hZTAxbytweU9DeHhMdEEwVVgxclRVbFJqbkYxdysyMzl4bnRiREk1Mk9QS3hXdDg0Yk8vdzFzMzN1SjdyMzRMZ3hCVVdPU1diM0dzV2V6NjFKdHJkMWNzNmt6MTYyOWRQZmF5SjYyOURiMnlMOHYzZThTVWQ4MytTMWhzVnlmdWQ5ejFsMDFIMXNXYStHbGFGeCtOSGJHbURsT2JYVDFtK2JnSHZQaFMwSCtkSkxFRkJXTktTdjdKYi95N1dEOGdITURPOEJSS2ErYVRLUTdIeHRhWUtaUEZ5VklLV1JTSWp5bG5qYkhkK1Z1VG5oaVdUcWUrc2VpSEN6T2ZYb0lDV1pnR0FlaWdVOWk3bEptUFJVSVRMVG81ZmZtNEpzUlR1d2JSb0sxQktZMTJIdThidE5ZVXVrU2o4ZFdjMDF0bnFLall2MzJQRDF4NW5zWTcvczIzL3dpTnhTL1p5ZE0xZ0RiQlN2dC82UDNmeDdIdmFOM2lVbGEycnhtYlZPOGFmWk9RKzUxdTNhV2wvK1hkb2h1cjd0Y2YxdlMvQjdqbk5ZZS9wektpSHovNHVIRWlPanF1Ny8vdjFUenJ1REV6NGtISG5XUDNPKzVkcjlsNWRkZmxYZHJ4OFRpVHUrVnk2ZGlmMmdDVzhkTkNOaTE0cUdoN2hHVjc1eEpmK1B6dm9SZ1RYSUdXUVJvb1BkSHoyQ0hKRmpXSVFvZ09LcWpvQktZUVNHcFFrVTVjaEdzOHdZTjNnZEtPcU9ZTmlHWTQyS1J4VGN6ekhnTGlpWUhkSFNBR1RZR2lnR0FvaXlGVzJ4akVQWmtKS0JHOGN5QW1KczhWZzZCUndiQ1FMSU52SEJJQ1dvRk9YamtTUEZxQnRaWkJNV0s2UDBkUmNQN01CUzZkdjhTZmYvWFBHTnFTT3N4UnVPaFQwLzkwVmFkUlJzV0VEZEs2c0N4YzBMb2hmdTN4SmhKdm85TGZCU2dMbFBIdkxnRkZRR3V3UmR5MUhiaWl6TnlnOVJDRlFTbUZ0aDVUeE5OSjc3cXFJSTN0R21OTEpNU29FMXJySkJsYjNOemkvdnQvMGYwVjMzWDdHSHBwci9pN1hpcDFPcE1sRXFHV1JGaWxNVlpGNTZiVnVua0hpTyt1SkhpM3VCY1ZKYUV0S2V3K1FPdHd0S3h6ZUk5UW9NWjBmb1pETThSSXdZQXhtK3p3ei8vcGY4cTJuR0xrdHloOGdUU1N1S1VndXFFSkZSNlBRbUZFb1FKb3B4QW42R0JpOWkyeHVNWWpIb3dwTUxZa2lOQzRFUHVVSGlFdTlqTWYwb1NubzhRVTNkcXdCMEx0a2NwVFVySmh4eGh2cUtkek1EV21VRmhsRUI5QUZJVXQwY3JRQkVjd0NwK3lod1VSQklNV2d3a0RKQWcrVkpoQzQrZU8yYVJoWEd5ek9kakJCY0FyM2p4OGkrRjRRQlhtRkZ1VzROSUNzOVFvTHhoc1NoU2hhTitlU1cycy80Nk9Oby9rWmFmYmR5enJkMVltZXVSMXNXNFZodEI5QzcyVHhyUXJHaE43VkdydGN1U2NpamE0WDJ2Wm9WbHV4TDJQMHNkL3VxZU9DVExvcnR4ZWZUR1c5UHRkV3V2RXgxOXpkWTY1bStVZTJmYlM1ZVZvYTU1dDBrbldsZEs3WmtHQm9VaXVqZkhjYmNvUG8xclR0RGFUMityb2NIUVordTdRaGxsczMrYlIram9helR4cEc5TS9hdzFLU1d4R3ZiclR2Yjk3RmJqOFdXMlU2WFZiclRCR1UyaWR4dHIyaVJjZjZkNkdUcWVMWld4L3BMb2s5WXoySnVUb1M4MzRoVUNXeVA2aVFSSXBVNjNFdExVOWJWV083WDZSa2hpQnhjcnhLTWJqTWQ0TElRU1VqZHFacndBQUlBQkpSRUZVVWhSRkVaTXNLS0cwQnUrcVJHNFUxaXdHbWJialZrMUZWYzhKd2FHVVVKUUdvM1FNN2g3U1JIYWlSSGdaZldtTUVzM2szcHhodVlrS1VLaVMwOXNYK0xVUGZZYS8rZGFmb05ISHl3djYxMVFCclhXcU8ra0crazVtMmZMNnRTdnBaSGNvc1U2UjltanA2anVFa0FnK25mMmlBclF4aEtBUkNRaU9wWnk3dllGT1dnR2RYblEzd2JQc2c3TmNoNnMxR3QvR1FzSWFzUzY5YUN1SmpxV3hCZDU3bklUT1FWQVRnL2VMVStqRlhOYzFyM1dKS0ZTYUZFVWsyV3c2bkhNc0RnK0w4RmRLOTA3V2U4Z2p0cXp2SFZMSEUxbWpDYzZ4eTJrYzhQdS8vdTlUVmtQS1lyQ0lTaUErclhjY3Zvc1lZRklBZ1hqUGJhbFQrd28rc0RIZVJFUTRuQnpnbkdNd0tDZ0dGdThGMFdETG1MM0xhMDhUNWxUTzB6UXpQSTVxV25ONmQ1ZnR6VzNjckthNk44ZFZOY055ZzUyZExXNVBidUNwTVpTSTB5Z3hlTkdZMGpBY2pKbTRTVm9VUlVtdWtkYnN5S0JFMFhpUE1ncE5TYWxLckM4eHZ1RDA4RHhQWDNxRzc3LzVmZDZldmdrV21xbnI2cTJ1UTZJaGxwaGtwYzBSNWpzemhMYUdsbDdkQ25Ib2ExK09mNm1wTmV0SUlRd0tHNFJnaUlTNzE2alhIcjZHYzNYeU1sRUVIU1hrblFSOHFWVEgvSjZvbkVwRUpVbW5GMk5FZXYvaWo5eVQ3clhqUHZsYTdZdjk4YWJkSHRkMkNxTXNXZ1dFRU1scFVvNjFwakx0bTJxSi9tcnBpZnQ3MnNnem9mZXUwcmdnbmF5LzJ4YVdudWFuSVU3c1U5WDdTM2NYZTJpRWtCTGhMTkMvdS9aOXRBdVdkWm8xWlJVRVdVU29ESXM2Q1VCaEN3QzhDQ0VrdlVueTRWaVdTSytXNy9TSk1uNFJrSW5zSTQvK1FOSWZZV01YbkV3TzhkNWpyYVZtRWlNQmVJK2JIeEI4UTJrVGFUWlJUaEF6ZmpsQ21DRkJZVW9vaW9MQllCc0l6R1l6WnZNcFNndkZvSWhTcFBlQXVuYWNQcjNMdllNOWdoTTJON2Y1OHBkL2wrLys4RnZjbmh3UUV5MGNIN2xBVXVZaVNhTllsRXRJdDN0TDFKUmFESVlCdFJnaDI1Vjk4UEVQMFNuYldWUTZlZGVlUDU2bmk1eXJZbnBmTHhVZ2FDdm9KSWtWV1FpcnJDbVpUV3NRaTBqQWh4aEtyU3dzSVFRYXYzNFJzcXJtWFZWNFFUdFJyampEcGZ0czc3ZDJGUURHR0FwalVjcEVFdXFqZzU2a3gxNnEwMzR6MGpFc0ZUMlAvbUtRaG8wZ2hNYjNkb1p1WWJBcTdKRkZjZnl5NndFZ1lBYmdKb0V0czhuTXovbms0Ny9LU3krOFJKaXFCU040UUNpanFKSlpqTGFLamRFdzlxVjZ6bUUxd1JZRG5QS0VKdUNvUVFkVUNjWElNQ3hMUmpKa05wMXc5ODVOVktQWkhHd3lLa2RNcW52TUQ2WnNiQTBKNHJEQm9JeEJuTUg3Z0RReDk1Mk9jMjVjYXJhTHFMQ3dueGVsQ1Q3S2w5cjB1YjcyYkpWakhyL3dPQjk4NW9Qcy9lTk5Dak5tMWt6QnBIV0dpKzlpbm1JMVMvZG1UaUt0L2UvaDZOL3JlSkZLVEZVQkV1UDAxaVJDdGtKaTR5bkMrcTdlTFpKaSsyemJrTzdZV2xxTXZvdlNBNzV0cTBmYTY2S0Y5dTlwVlpQUWw2ZTJmWGJKM0tGZEU2ZTlKWDN4M2VxMlZ3ZDl5U01xTWR1VjdiMlZoUWk0MEtCeEtLV1MvQ05ldUkwY0kyRzF0N1gzcXRhK3JuZVA1Zk92bmpNcFM3cHllZEVUd0tiblRFS0M5cmxDN3ptN1F2V2FTL3Q3TFl2NlRmMURhNkxXVUNscTE4VEZ3U3BEVHJmcy9lSzRvL2ZmdnRHVk9VNk8rVHZqb1NFVDJWOXFCQVpEZ3doc2JBNDVPTGpINXVhQU91V0oxem9TM0Ric2tFak12UjRrUk5LbmhhM05IZTdldmMydE8zT0dneEZiVzF0c2JZK29hMGRkMTlpK1NPOEJVQlFGWlRuRU9VYzFqeFQwaWNlZjVzTXZmNFEvK3NzM2FKWGhYWUNHMVlHak53S3BaUE8wVUxSSGZ0b09nb3ZCVkNJeFUyRXhCa3VJNGowSkhRMzJTTlNLOWdmQmRzNFdnL01lOENtV2FWcnh0eGVSS0RWeDRsQVVqSWViS0tXWXp3NHdSdU9ibXBZdUh5ZFZiY2RmU1VOcE55R2tzWCtKaU12SzRlazNZelhlQmJ6M01lMXZrcmNaWGFDMXBuYk5tc0Y0TVhCYlhlREZFMEpraE9LSnNVa1Rqcno5VmJYYm90SlpVSTkrUHJxRmplaURRQnZ3VTdBWThJWnR2Y1BuUHZ0NW1zWXpzaHVFNXFTWlprVUt2bVpYclRYemFrcFFnZUd3QkF1elprSWdNTndaVUZ0UHdOR0Vpc2JYVE9vSis3ZnZzSDl2ajhsa3duZzQ0dlR1S1M2Y09jZldjQnNWaENyTTBBUExhSHVJdUVDb0lxMGEyZ0ZXbDFSVkU4bHpjR2dMSWxIdDJVcUsrM2RkRmtPODkwaFFhR1ZRRGlvM3h3OGN3NDJTRjU5NGx1Lys2QlZ1VjIvSDVwSUlqemJndk1SRlJ4OTkwc1RLMy8xOSt2VVg2RGZXbFgxNjdMUDMrMG5yaS83YTV3aXBUdGZveWROWExyNWMzcGRucktxSXUrZGVKdWNpQzNPR2hVV3FKcXpydnkyeFgrMlhxK0xiN3FOWEhyd3Z5azJyYjZVVzRscEpiQzlGZEFsSVJ3YlhqNC90c3l5V3d6L2QrTUY5MXRuektlaEpVV1cxSGJVYi9PSStRcnIvZmgxM2h5UU5CQ1R0V21wUHhoUnhyU0M5VVRLRW1HbzlXb2N2MEY5YzlNZE5XVFRQeGUwY2xkQXUzWGZHTHhReWtYM1VJVHAxeUtUTzdXZnJJdEM0Q3FVQ3pnZmV1UEY5enAwN1JWRmFsQWtNQndWdVBvL09KY0VSMGpKWUtZVTJVZUo0T0pzeEhCZHNiRzRpb3FpcVE1cEdLT3lRalkwUjFheCtUN2RmR0V0VDFhaGt3eG1jMERTQlQzM3FNL3psVi8rWVdaZ1JwU2lyS3VvNEtKdjAyTXZqUzV2Q04xclp0ZW80M1pIWlpMT24zQm9KMFBJczNrbDhWVnpwSzYyUzFGb2hFaGdNQ3FxbVdwcVpyUWF0QzVBQzhTbVZSYVdvcEVLakVkOUV0YTVWMUc1NXFGeEtHYW9XNnZxdVpMbGMrclNWc0tJVE05cEFNQ2gwcHpLWG9BaEJzQXk3ZWxwZ0ViZ3BOTkdHZEtDSEdHTUl3ZUc5aitZcFdoYXF3ZFZKNnNoTUJJdlV4VkhCdkxERmVFQWlLOUV1ZGlaekJtcUFGODhYdi9BbE5rYWJxSXE0MEtKZ2xiQjJoNnRGZDlHcmJTaHRxTDFqdURFRUxVeXJDYlBwRkcxZ09CNmlocG8zOTkvZ2gyLzhnRmUrOHdwdlRtOGdLUm1CUlZORUZ0cTk5elBtRk05ZmU1NG5IM3VTclkxdGltQTVWWnhDbkVEalFNTkFnOWFLZ1Mxd0t1QWtZTVF2dUtJUU00cWxQcUJzaVpNYTUyQ2dGVVpyakZmNEtoQ1U1OExPZVY1KzZpWCs3ZmYraUUyMXdkUlhCQUtEMFFnM254dzFoQldkSnZkMmRqZUxpbGtsZkVFblNab0M1ZEZoc1UrUTJBc2xPYkRGTnVxUEV1WDBIbHYwdFE2aHZjN3F3cWpINmJ6U3lER21BOUYvd0t6OVBaWnV5WXhHVnZzUkxKc0w5VVI1VVgrMVFzaFZ2K0gzand0Z0ROckVzVFZLRHoxYUxNcFpWSWkyd0Vja2Z5Y2dMdFE5eWpZTEdpbTkxN2JZc1ljVkV4Qkp2NzBuY3RaZlBJUVZTVDNMNy9ySVFrZjNGZ3hSZ3FxVndxSXcwaTVSVXJZN0Z2YlNvUnYvQWQ5YXNhWnRYY3NKQ0JxRGpSbjBkQ0RnRStsbnNkaGZYY2pJZmNwamRzOTR1TWhFOXBjV2NWQVpqVW9tMHoxKzhNTWY4ai8rVC84RGRYUEl2RHBnTm90bUJ1UGhCa29rU2R5aWV0eGFqYlVXWXdxZWUvWkZucnIyTEI5NDVrVjJ0cytodE1GWVVEcmdmUXE5OVI0VXhkNEwwK21jb2hoUUZBVSt6SmxORDNqcThhZTVmT2x4ZnZER1hUU0dRT2lFRG4yMGFxaTRpbS9kVlZvTFdRTUVsTGh1WDRWTkVsY0xBcGE2TjhBcUZrUXJmdmRwZ0ZicE9scWx5VDJocXF2dTd4aUNWS05EaVlodDZRd0dqWlVDVDVRY2pvY2JITXp2TUI0TU85Vi85ODdnNkdTd1RtSzBLaVhyRDdnOXFYQm8yb0crclplMnBwYmNTM29uU0l1WlZCWXhmZ1F1T0h4U1UrcDBIUnRNdXB4SGl5d0xYOWVvalNPQmFPOWp4UlRtQWFDQWFsb3pWbU84S0Y2ODhnTFBQLzBDTktDVnhibUFWVWZiWmdBV1l1M2pFVlRBK1pxQk1UaHhORkl4M0M0WmpFcmVlUE1OdnZsMzMrVHJyMzZOaVJ4U1VhR0F3aFFZbzZpYk9aTVEzNjNGTWxBRDN2SnZjdXY3Yi9HMTcvOHRuL2p3Si9qNGl4L0gxNDdCZUlDcU5VM2xDZldNZ1JtaXRVYTNZYjZDU282QkhpMktmZ2pwRU9JZktubEVhcTBaVXFCRm1EbVBxWVZuTHovRHQ3NzM5MHhsUm9Vam9HaGNJRG85OVNTUEhYdHNIWkowcjVucFpMNnpMSUR0bGdrUzJVRzdqK24xczBCMGFvek9hdW1hNjBoajcvMGNrY2IyU1ZGWXRGMkpxcVAwREVmTEpMZEwrNitXRm92cmlIUFhkVmI3VnJyV1FnTGNmZzhzWlUzckU5NTBFcFd1cDUyc1pBdU9JOVVneGRsb25hK2lrMUdzK1Q1RmpFdmNTSGZiWlkzRDRWek00N2FvS2dWS280eEdsS0pPbXArbGNhUXZNWDV2bG1HOUIxOURZbGZMYm94YXZML1NEQk9SRDExVjlwMnQwdkliblp3U0Y5cTJPRzdWSExXeGpUWFY0SWprbGFDU0xVdnJGaDJpVktPejFWbnpTS3NDL3ZTWUMybHhhNkt4ems4aDQrZU5UR1IvR2RCM2ZCSU5QWGVOMmZ5QUlEWE9UM2p0emU4U3FORFVDSTZoR2ZMMi90dkVUdG1xZUNPaGJiMTJmL2lUYjhNZkczYkhGM24rdVEvejJVOS9pWmMvOUhFVWhyZHZ2TTNPNXBuM2RPdEtLWnh6RklXaGFSb1FTMWtPZ1lZUHYvd3hmdkRHdDlPOTlWWFFQWnNzM3c1K0JxT0dHQVpvc1pBa2lvNDVVTks2T1N5SWJzeERyeEdVZU9LVWJCUDUxVWsrRWhnWEkrcFE0Znk4YzhaUXZUU2xNWElCeVprSWxKUkFnV2FBWmNUWnpVdWNQbjJHSng5N0RHVnFMbHphNXUyYlArWVB2dkovY2ppWm9iREhPeFVjUjFxN2h6LytvNUwvN1pBUnJTOTZKQjVEZGpaM3VIanVJcnM3cHpsLy9rSVg1MWZGdEZWUlRTY09FV0UybTNCd3NNK2R1N2ZZMzk5ak9wMHlxeWJNbVJNa1VGRFMwQkJ3YUJxUUVLVnhxNUlZaU5LWHppdmp1SWQ2TjRqaHRnYU1hUEQ4MmljL2czYWF3Z3lvSnpVanU5RUxvUHJ1RU5La2JFdk53ZlNBWUJxS0RZTXE0ZldiMS9ucU4vNktiN3oxVGFaTWNEUmRlNW41S2ZpZWVoWHdOSGhwR0pvWWFXQlA5dmpLTjc3Q1Y3L3hsL3dIdi80Zjh2anU0NXpaUEl0VGdwdWtoQ0NCR0JIQ2FMUUtDN1dyTEp0QVZJMEhyVkZhRTN4Y2NCZ0ZwVGFJV0dhVGhuT2JaM254Nm92ODlldC9pNlVnNEhDTmkwUzJXNzlFdi9jaXhkK05TNDJZMnJldDY3NkpTOXVmSXIySXp4dFZ1ZTF6eHlnQThUaWRFdWNxQW9GR291cTNXOHNzT1lzdXlQS1N4R3hwbjliMzNhQW9XR1BnOG81Z0NjU1lJeTFCZERpaVkxQ1MzU1g1K2dJdDJlMldZZHIxbmdNSUZrUjF0ZGd1R1EyTFpONG10ZHNoSlJjNFEwbUJ4V0NVcGJRRnByQlliVkJHUjhkYWhPQThMbmhjM1VTN1R6eHo1dHpnVGVZMEhhRUtSQzJPT1BBRVNnbzhncGZvV0xaY3B5d1R0WGVORTRqcktycHhLYmFzOXYxWnJ4T1JqNy9HRnFNb0tTZ3huR0kzMW9zcHNkWlNtQUpyTFZyWnBCVXFFUkZxWDFNM2MrYnpLZE13WmNxRWhocU5wcVpoenB5R0pnbllVd3AwcmFuQ2ZMbjVyQW9OMWtoa1Qzck1qSWVEVEdSL3lhRzFZalFvMmRnc0NWVEFqRUFOVk16cVF3eWpOTVFLVWRYdUlvbEpxaGxOZ2RFajlxWTMrS3V2MytGSFAvb1J2L21GMS9qa0ozNmRNK2N2NDJaaFpaSjVkeWdLMDlrN1RROW4yRkt4dmJuTjdmMmY4TklMTC9Pdi91RC9RTkxRSDFqMTJvOFVVQ3ZOZUxqRnVOeGxhTGN3cWdTeFNBaFlDMjNraDJoamE1T3l5cUR3YUptbnRLTUdJU1p4aUJFT0FxSnFLajlsM2h3eW5lMHphMmJ4K2d2M2ZFUU00cVAxbk1Jd1lwdW5ubmllajczMEt6eno5RXVNQjV1VTVaRENDRGR2dmM2NXl4dTgrdG8yZi9MSGY4Zzh6Tk1FQ3AyVENEMXB5V3E1YmxEdHBEeHRFS1VZYktzTnByUTdPTU5qbDU3Z3VRKzh5R09YbjJCbmN5ZlpsV20wc2pSTlRGaGhsUWFqMFJKdzRpQTRQSUZDRytvd1J3dm9RcU1rY0h2dkx0ZGYvUkd2dlhXRHYvM3UxNGtXbm5WcVh3MktCbWtKYlgvQ1ZJQTBTUkxhRXRyM1lCK0xac1BzMEhqSFoxNytITnZsRnNOeWcvckFnVGVZZ1NIMGlLeW94WkxoeElSY3F0MG5VQTVMRHZiM01hV2lHQS80eDllK3h4Lyt5Ui95ZHZOV1M4c0l5bU9NaWRFclFzOHgwY0J3T0tDYVZqUStPdGkxZ2E0MG5vcUNQLy9iUDZWNTRkY1pQaldtTElkSXRmQ3FEaUYwRG9TNlV4a0xRYlhSQzJLcTJuSTRRQm1OYXh5K0RoVEdZbXhhdWpoaE9CN3cvQlBQODNldi96MUROTm9HRHQwaG5YVUhtbEtYalBXSWtScFFTa2taTERwWXRDd2liZmFWdDZLaUJLMUlXeU9SQ29ST3lxM1FZakU2RWlrWEdpb3E1a3lZTXFHbWlvNk9QVksxVnJlenp1d2hqVmdXeTNsem5pSWNQNDJKSE0vU0xKcVNkaG52Y0RocVBMVjJPT054MnJGZkhYU2tOclphU2Z1SDZDN1dKNFVDU01CaUtJa2g3d3dsRnNXQWdqRmp0dlFXcDdaMzJOcmFZc2R1c05XTUdJVG9XYTlTSE9QV1lVc3BkZVQrWXlybDJEWXEzVEFiMUJ6NktmY21oOXc3T09DZ09tRENoRGtWTlEwMUhrZERnNk9SK042VzZ2V25BWFZNSDE2U1pMYkV2ZzArRm5WVlEwYVVsQXdaTUdiRTdtQ2IzWTBkZHNmYmJKUkRkSWlaOUl3WXRFclo5Q0JLNG9uMi8rZ29USWdCUFFKZTZ2akVxdUhXL20ybTlZUzdoM2U0eXo1VDV1bDlCdXJnOGRobDg2aDE1Z2J0TmxuOGVhendJZU9oSUJQWmg0MmtFbFE5WTYxMnNJcWZKTVZTZllYYjhyNnR6VmZucWRwZmFpc0l3VEdiVDlBNEFqV0tHa25leXJFenBtNHBQYW1uSWtyWGFNTnpXU0J3ZSs5MS92ZC85Yi93eGh2WCtVLysrWC9PM3JSbU9wbXd0YlVWdmJsbjgrN2VqVm1XbEhUM3R4Ukd6R0UxQkZFTUIyTkVPdzRQNTVURmlFc1hyM0ptOHh5M0RsOUhZd2w0cklrRGo5RUdIenhheGJpZVd4dG4rUy8vaS84R0hVYTRTbEdhWVp4d2ZQdE0wcG4rUjlXeVJRblkwQ1NUaFVoaUVVMVFBZEdPb0N1Q21uUHp6aHY4dC8vZGY4M1dhSnVEMlNFS0dKWWo1clhEVUFLV3N4dG4rZmhIZjRXUHZ2eXJYRGg5bFVJMkNMNkk0WlFxanpld3ZYR2VVTmRvTldJV0FuNXBGbHpYTm81K1Z4Q2pKWGpwSm9OWUR0Q3BPMjhOZG5qeDJaZDQ4ZmtQY2UzcU5WU3dhREdvRklaS3U5YnJYVk1tVmIrV2dHK2trNTlwQ1FRZFVJMWdWS0lySWFBbGNHRTg0dEtMRi9ub1MvQjd2L2RQK2NIMUgvUEsvL2YzZlAvVjc3STNmUlBIbENqTGltbFZkYklrY0tFbGtERXVjcGRmOWo0U0lXTmluRjd2L1ZMYlVTaThiN0NVUFBmRTg0enNKaVlZMEpiOXd3Tk9qVTh6ODNYTEFCT0JscVY2RlVtNXVaSnhvUklQSWlrTWMrRHUvaDFHVzBOQzRYamoxdXY4MzMvNGZ5SEdVVE5MZE5RUkpNWlhYa282QU9CaFBxbVduaThRT3YxSFRjVlA2cmY0ODIvOEJkZXVQUTJpcWIyanF1WnNEcmRwTStDMkVUbUNJcWJKVlFwUjhYdFJGSVFRbzJGb3E2TTlkREx6YU1NOE5WUEhwVE5YT01WcDdyQlA3ZTVGWWF6M0tGRU1HSUFYZnVQam4rYXhNMWNaTWFaMEJhb0dLNmFMa0JDSURwSU9RVlEwSERBaHR0L1dCdEhyMENWODBNRml0WTFSTWxSQVNzL2Q1aTcvOGsvL0pXZkhPN3c5dVJXZGExUTgrNktPT3I0YVlTMDB5Wll6U1RzTExKZUs4L3orUjcvTXNDNjdkOWt2VjdHNjNRVERwdDVpT3AweWw0cnh1UTF1em00eUt4dWFRY08vL290L1RVbEpSUjNWK2NsbVBTaTFHSmZid0s2QU5iRStMSm9CQlNVRk8reHlzVGpIMWROWDJkM2N3WW9CRHpwb2hyN0FWZ3JySDB3UTRFeGdJd2liMm5GaEtKZ3RqZGVCdmNsZDNyanpObS9WYjNLWE8xUlloZ1JxMVRBTmswNUpZVVlhZnhoREYwYlRGVW5qNVR1SEtUUWgwUGtTS0JVZEpFTnl1R3BOSlV5S2JtdlNlS1ZTSFYzbUVwZnNCYzZmUGNmdTVoWW1hRUlkS0lMR1ZCcmxZbHN5b2xOb3ZJVnBCNUNXRlhIK2luMGlJTHFJeVhTMFo3TWNJeHRDT0Jlb3dweTl3MzNldW5PVFczS1RleHlpME15bEppQVliYWlsaVdaMnJZM0RDZWpyUGpNZUxqS1IvV1ZFNjlBQUxHYURWdnJsaVdsbDIzMGJXalY3aHhWcG9OSU5CQ0dHTXA4QmhoOWYvdzUvOWRVLzRhVm5QMFBacUM2MktOQU5paUVFOUJFMnRvcStlMGRTMGFPNzh1eXA4OXcrL0VsVTRSTUhYRHpKcGxlQlJCcUhMMUIrZ0pJQnlodTBHa0pRcUpDZVd3VjBtc0JVV3MwcmlVSGhZNjU3M1EyS1dqbUNOR2l4QkFVWHpqNkdwbUE2cXhqb0lVMm9xT3NhVGNHR1BzVkhYLzVWZnYxVG4rYmFZMDloL0pENUpORFVHc1F5TUVQd0hrUEF5eHdWRkRvVVFKbVV0VFYwNUdhTnRLUWRMUlZZVStCcVR3ck14Tzd3RktXTU9LeW1LRFRuUmhmNCtFYy93UXZQdnNpcDdiT3h4cG9ZMUY4RkU4dGtVOWdTV1MwTCtZSnBKL2gya3ZZaFJyVG9ZcTZ5S0ZXMHNieXpQK1dweXkvdzRsTWY0dWFkRzN6cmxiL21XOS8rR20vdXZVYkRIRTBGd1VkYlRxSTJlekRTMUQ0UTZ2dnJOUHR0cVU5UXROYllFRzJRbnovN0ltZDJ6bEl5d004REJRTkc1UkRYSEpXWlJNZS9SWHM3bmtMRWRqUGVHRktGT1UybytiTy8rVk84YmJqdGJnSlEwOURUemNmaWhFZnFURHdKU1NFZnFLaTV5ZHY4NmQvOUtiL3l3cWM0dlhXYXpkMU4zQ3c2cWxYVkRGRkNVREVoUWl0NUQwUmk1d0VrRXF6T0oxMlJKdjNZdDhyUzBvand6R01mNEcrdmY1MENTeDNtb0FVdDBZNjh4SExyalp0YzI3NUdLU1ZEVjZLckdIQmZod1dSRlpWY1p0TDRZa0xVWUhnZDhDcFpiN2JSRlVSalJlT2x3Qk53cW1IRGo5bGdSSmdHRElhRkd4dWQ2UUt3M0FkQ2lBd3BLS3dxTUdrdGNtSHpERnZ6QVJ2Vk1CNy9ib21zTHhqcmJleTBaR0JxMUlGbUpKdUlUTGk3ZnllTkNXM0NqM1JuT2h6VmpxUUFLRVppcng0eDRMSyt4T1h0SzF6Y3ZNaW0zbUNzUjVoS0V5cUJKbUNVcGxRRjJoczZHK1BXOFBrZGxzWkQ0UlNGZUx4NHRGWG9nV0dqMkdUMzNHbWVDSSt4NSs3eDQ5cy81bnA0RFMyT01VT2M4c3hkZ3orTWJTaEk2Qng5WWIwaytOZzJuUlpXcE9ZbUFid1BuUVRXb2lnWlVHQVJvby9Ba0FFWGh4ZTR2SDJaOC9vY1cycURZVkdpS2syb1BEaFBLU2FheDNoaVd3bzlyOFFVdVNPazhicTdVeFVRNVFoS0lxblZqcElDUkpBZ0JEMW1hN2pKcVRPN1RHYVgySmNKUDVpK3hsdmNpaEo1TDR3WklpVlVvY2I1MUwvWGFjV3lQUFlYQ3BuSVB1bzRvdGJwcjFoYmtyTHd0bzFZNkVqaWVMWGllYTZXZDQzeFZ4MVFvMVMwQmIxKzQzdDg1WS8rZ0JlZStTUmx1UkdsUW40UlBGeHIvUzVXOXlGSnQvcUk5M3pseWxYKzhmby9JRFFvRkZicFpNUVBLbVcwQ1pqa0hWMkFSTE1DRlVaUjhpRXRDUXNwUGl4UkVwb0dRK1ZiVC80VVNrZkZPdFZVQkRSTk5XSDMzQTRiYXBlcDdHSEY0aElsZWZ6YzAzenBjLzhlMTY0K3k0VnpGM0dWNStCZ1RzR1lyY0V1cFJreG16WVFHcFNFYUxzckFtSWgyU3JlRnkzNzhkRXh6bEF3b01RVG1NMXJIQVhYdHA3ajA3LzZhWjU1NWdOc2JXd24wd3FOQ2xBM0hoMmlWRTJKVGNTVkJaRU51bmVwTmd5YmgrVHRMY25lZUowaldsQ2FTNmZPY0c4MjRlQmd6dW1OOC96MnAzK2ZEei8vRWI3K3JiL21sZTk4blJ1SDF3bk1nWWFDZ0E5UVRjTjZEL0UxYU52UmtpUTJxVitqVFozbDVSYyt3dlp3bDFBSjFiUmhPTjVpTkZENEpuVFB1NzV1VDc2Qm9FQWJoUmZIajMveUtxL2MrQWNVNEdqWTNCcHo1K0FRdXFWYW02VU4xazF5N1Q3OVBWUXk0SEVFdm5IOUcxeDc3R2syejJ3eGRWUDI3dTR4TEFlTVJxUDRIb2lCNkdLMjM0Q1NPSFNiSU5BM21XaE5FS0lCSjdON2M2eXh6SHpEMWN1UDhWZlh2MHBoTFBoQU1TaVJtVWNEQTRiY2VPTk4zT01OdzJGQjRTekdXd1krU2ZFSmVMR0k5ampsZTBUV0VvalNRWWRQRW1UQkJJME5HdTNqKzJxa0ptaUwweFZQN3p6TksvdmZvV0JBVGNXSmNpMGgyaHpyQWdRS1paTk1UN2gwK2hMV0RTbWFCeVN5b1dRZ1kwSmxHSXlHSEJ3ZU1oNk5xZHljdDkrNG1VYlFmdHRuNGNlVkNHemhJcmUxd0lnaHB6bk5oWTBMUExiOU9CYzJMN0FobTVTMVJjMUJSY3NibEZlVTFxS01ZUzZCUnFlMm9jSzdLbzNBTUpTVVR2Qyt3ZGNCR29VdFlUQVlzRlZ1Y1dxMHkxWXg0c3pCRG05TjN1Sm11TW1oUDBCaGNlSUkydURDMGZwL3AyUTJlQitiWDZmVlc1Z1JEQmlnRTVtMUdNYU1PTTg1THA2K3dLbk5YYmIxTnFmQ0tZckdJdk1RdFJxTndvaWwxQVZsTUlRbWRCcUJ0cVFkcDRFbEd5R2xvMll0U1dhOU5sanhCTzhSQzhIQVFJL1lLcmNKcFdkV05Hek10N20rZjRNYjh4dE1tRkRUNEd1aHpaRW15aTNhNGVxejM3ZDJNbjVleUVUMmx3S3RsS0FscnUxc1pvbWhxMHd5SUdvSGdoV0RuOVZPdXZLOVc2eXJCbHNVK05yaGFmamU5Ny9GclZzM09YOTZzeU1jaXFqT0w4c3lydkx2T3hZdWhvTTJHNHVTNUxFcm1vc1hMcU5SSGVXVDNxUm5qRUw1bEljc2VhWXFpVjdBeWx1Q2I2UFF0dGVJeDJwWlEvWWxFcU1nT2pwd2hBS05nMkNaSHpac2pVNHhtODVveEdNWThOU1ZwL2o4WjMrSER6NzlDU3dqNm9NWUZIK294d3p0QnFIeTdNL3VNaHhzUmltWlFHdExITlJxN01rVnA0bWVaVWdya1ZYSjRpNmFXQ2dzQlFVanZ2RFNiL0hzdFpkNDZxbW5HQTVIdU1yaFhFaCtlNEpXUlNLeEMrbHJOeUdzMmpaTGI3SWtYWDgxM1ZmdkdJMmltVGlvQlhHQnVXdlFydURNeGtVKzg5RXY4SkhuUDh5Zi9mVlgrTTRQLzRHNzdqYWVDbkJkbXlnSE1KdXZhUklyV0NXeEVOdFlRTmhrbXljdVBJbk1CVXNSN2QyOHhQaTNicEVZWTkwektsay9GWVhPakNkUXVScW5ISC8vemE4bENlb1VSOE5Cdlo4SVRadXZ2Yi8rTzFsVnZGaWJCS2JNMmJZRER0Mk0xKys4d2RXTGo2RnF6WGhueE5ad2s0UHBoRTV0U2tpQkZsVFhLVldTZEFmbEVMVjRWeWIxOTkwTFoybW9FZFZ3Wm5pT0FTVjMvQjFRS1RSZmtvcDZISWZjNDlhdFcxeDU4Z3IrMEROU0ZoTXNKclF4REh3S0xpOHBjSURHZXBNa1l3RlJpV0NFQlpHMVRleW4ybnU4OVF3S3krTVhydktkL2U4dWFxd25KVDhTYnpUMUE2M2k2S0JGa2dXNDVzejJXZFRjcElVaGk3WjZIQUZiMmE2RGlRdFpyMUhLSUUzQWpEWE9PVzdPM29yMVNzOUpxbjE1NldNRWhxSXAwSXdZYzJWMG1TZk9QTUg1OFVWR2ZvU2RHc0xjNFoyaURCYUxwZEFXbzJNMk9TY2d5aVV6aXRSbTNrVXBBbEpESVpwU0RhTkRuUk84ZHpSMXZFRnRGUmUyTG5CdTV3eHZUYzd4anpmK2tldk42elRNY1FRcVBFRkxKMWx0emNKaU0zcG5aRFoybzRCV2NhSGVwc3UxRkJpZ3BPQU1wN202Y1puSFQxOWxaN0NOVkI2Lzd3bmlDRUU2ZTJ1amJOVG9leFVUZlNoTlA4ckI4b1ZWNzdlUU5HdlIzTUFJMFVaYmFaeVBqcEFrellIU01iVGt3R3V1YlQ3SjZkRnBMaDljNVBydDY3ek9UNWhUSXdnV1N5WGdWeEx5OVBWVEdiOFl5RVQya1VkTDFGWW5UNU4rYndmNk5pZDI2N1h2RjROeWk5VXhxK1V1YVhLSkNSTXFpa0pvR3M5aGRadnJyLytJTXp1UHA4UUtnZ3FDYzQ2eUxDUHBPSEVnakNwc0pXMkV3SjR0WXlLYlcxdGJQWVhqd29aTEEwWkpJcllwL1dnM1VlazQ0QWVGU2l2MCtIdVNSaDd4bHRLZ0xHMkE4UVUwbTZOTlp0VTl0amRPYzJ0NkcvQmN1M0NOTDMzeGQzamhtWmNKMDVMZ0ZRTTlZRGlPYVVibjB3cXBZV2dIYUZ3TS82VkN2RlpTMHk4VXFtdlF1d2VyREU2RWdwTGRqVk1jVGlZWURKYzJMdkhGei80dUgzL3BzeFF5b3E1cjltNU5VQUtqMFFhbHRUZ0MzclUxcXdnZEtWaElWMFB2SnBadHJPUDdPUm80ZlprYWhxWm1kenltS0hhbzZ6blRnd21Ocnhsc2JIRGx6QzVmL28wdGRyZk84dFd2L3lsNzRTYWVoa0k3ZlBEVXMvc0xaZnNxenpaYlQ5c0dCTVhUVjU1aFo3ekw5SEJHTVI0eExDeStDWWpUTWJwNWwyLysrS21ualFTdzJsUkZSWFg2amJkdjhQMjdQNkJRbHBtSGU1bjFBQUFnQUVsRVFWUTRkS0dvdmUrY3BhUkhpRmZKN09LVXk0dVZucjhnYzF1QlUzenJCNi93M0pQUHMrRkdiQmZiSE13UDBUYUdVWW9hNVZoS2lPbXJqVVNKWjV2WXd5dUo5NnlFR09OVnNUODdZRmJQR0d3UENkcHhkdWMwZC9iZlR1YkpnaWlIRThPRU9VT0cvUGpONjd6NDVBY0pDTm9hUWhQWE1GcFUwbGlFZEkzRjRreWpreVJ1MFg1TTBQRWpRaEZNVEJiaUExb0x1OXM3eENYcGZUUVM3VUl1Z0hMUnVhOE5vTFRORnVOaWlLK2dzcW11MzZWRVZnRFR6QWsydmt1bkdocmoySi9zTTJHS0pJb2YraSsyUjJRdGxoRkR6ckRMNWZFVkhqdHpsWE9iRnhqSkNLYmdwZzFiWml2YW9LS3hTc2VFRkNJNDc2a2FSeWgxRitmNmlQbk9mVXFsb0FvelJGbXNzWmdVc3MxaktiQjRWVEFJbG5wUzAxU0JNK1lVdzRzdmNlbmdQTmYzcm5PREcweERUTzZodGNZWXM2VDlNTVowNW1MSFFiVVdMR25SMjBZZ3NNa05zS1RnTVhXVlp5ODl6Zm54ZVlyS29PNEdyQzhwVlVGaGh2OC9lKy8xWmRseG5Ybitka1FjYzAzYXlpcVVnVGNFYUVRWnlsQ0dVcytTNWtFYXRicm5INXg1bktlZU5UUGRzOFFsc3lSS2FvMWFGQ1VSWWxOa2d5QmNvUXBsc2pLdnYrZWNNUE1RY2M0OU55dFJCYUpFZ01ES3ZWYld6YnA1emJFUlgzejcyOS91RnNtdGVqWTRIenZBT1V1WjVkMng5MndJMk00YnZML0lQWnNSRVZBNlN6cmRlTjBRUXFvdkFIRUIzVGd1RFE3WkhZOFpNQ0IvVUhBcjNHYktQSlhJMWZHNlQzTkRFUERoY1V2VmkvaWs0d0xJZnBaREF0dVdSbW5TN2xhd1BlL1FqcEZOSzl5ekhYMkFoMWU4MFZQV1d0dE51blZqTVliWWNjaFczTDc5UGwvOTRyYSt5bnZmcmVZZnA1Q1Z0bGl0MWJzR2NKSUFUbEFVUmJIMWV1Y3NXc1Zzby9jMk5oN3dzYUZEQ0RGTjJnNk1FU3dJMjVyaGRzQlRnRVhhbHFyZFlzQWdpWVdSRUZ2TVZwV2gwRU9FbkN2RkliLzltNy9IMTM3dTE1aWRyTmtmSDdDY1ZGVExGYjUycVZqQlVwb2hPenNqWm90Vi9IeHBMY1FzN2VJanNIRWgzSm9zZThmZjFvN2NEQkFMMDhXTWpJd3ZYSDJOYjN6OXQvblNTei9QZkxKbVp6QmtVTzZTbVNIcjlacW1kamdscVNob2s5U08yTWx2SlhLbDU2VjZIaEI0SENNekd1VFlwbUsxWEtLMVpuY3dCc1lzcXdVbkg4elpPN3JFci8vaWIzTjRlTVRmL3VPM2VPdjRoNmxOYjcrLzE0ZkhXVjFzSDlnYU5GOTU5ZWNvVkVGRmcvYUdMTk5VSzR2eTRMeC9xT0R3bzRRS2FhS1VlQjMvOEkwZkVMQ3NRbXdtWUwyRGtuaEExMndoOGZaWDZjNXNyNzY1TDkxcGZ5K2dsdWhtY0srNXg3eGFzTHU3aHhMRGJERWh5N0lvUUJEYjYyZ1U3MkVkSUhQeE9EYmEwdWlXUDVTa2g4NVFKa09DSVNzTXltdWVmdllaZnZRdlA2QW9OR3Zyd0lEVEhyKzJhQnp2ejI1ejkvUStWL0xMTkFTMFJGYk1TUVRzVG56U3c1NS83dnBYaXdRd1FTSE9JajZnZlFTN2VXRVlVREJuOWVnVGtTUTFnb0IzbUE0a0thN3ZYazVzOU1lSEZFRTh0YXBBK1dnaFYzZ1diczZkeVIwc0ZhMW5hK2pKTTlzVmFNczBIbktaVi9LWGVlN0tjK3prTzhnYzdOcFR1SUtoSGxQb1BPb3p2YVh4VFdmckZwSWVRZUhaZE56aUozcFVnQm9FUXJCUkp1QkppM2VOMXBvOFJIOWF0N2JVM2xPVU9lUHhrUDI5TVlNcUo2emdsTGVCWm12TWJrT3B4eDlicFZUbkw5MTZ0QXA1a2hia2ZQbndpMXd1TG5HUUhWRFdCclBTbUZvb3lERTZ4d2RveE9KdHdBWVhzMDRTa0V6UVdVYmpmZGZ3b2kxd1BHOXByVHI1UVhvdUxTNGJhNk5iaVJLQ0tKU1NqcFRKTWRoRlJlWVUyV0RBOWVFMXlySmtaekhtUjZkdmNwZjdxSlNKNkkrWkxaaUZqNUJ3dkloUEpDNkE3R2M5ZW1uUUNOcjZFM2RmSDl0blkyV1QzK3hleCtadnZRZytBajRDS0IxdllPdmFESmRsdVZ4MExKbHpEcTFOcDJGMHpqMitoVzBhMkNNSjJ3N3FtMmlCU0xRdXJ5S0xZZ1JYQjV3UEtOVlhHL2FzbmZEUm9rVlM0cmZIdUcyS3FqeFJ1T2JqY1pOTjBadVFDZ1o4VEZrWmxURmd5TmQvOWJmNDhxdS9nQTRsNjhXY3Rhc0l0Y09Jb1ZDR1lWbEUvZFd5NXU2ZDl4bnNqRkUwYWQ4c1FWbUNjb2xKL2lqRG9NS0l4aEZOeUY1NTZoWCt3eC84UjE2NDhRSVA3aTA1T0hpYSthem1aRHJER0VOWmxtUTZ3emxIWTIxMy9NNHRva21NK0VaZjJRZXlpZVh5SDc0VTBRRW1rN3VVT2lNek9jRkJOYlVFZ2J3b0dlL3RjTy9lSGZhdkhQRUxYL3BsbEJINGU4OWJ4Mi9nYUNoRXNReFZmK3NlRyswMktxWFlLWGE1ZnUwR1RlVXA4eEcyc3VTNVFYeEkxZnk5UFgzY2lpckYyYVliay9tRU4yKy9RZVFaSGI3dFRtV0FoczBLNGFIdEpCM3JNN0tSczQvZUUyU05seElkTXU3Y3Y4T1Y4V1VteTFPMFZwR1JKZUNVUnJXcDk5NmlMeFkrQ1Y0THpvQlhBVVR3UVZCZUVWd2dNd1duOHhsVE4rM1k0N3FLSURiZThnMUJLeXBubUREanpkdHZjL1ZMMTFuTzFwUTY3OWpYZ01lcGdFMWdObmd3UGF1eUZtaElrRzRoZ0tTMGJ2QWdxZVV6bHFOTGg5dzdQdUdSNTc1TjRhdkkrSTUwR2IxMWdhZXYza0Eza0R0UFljKzdmczg3SncvL3ZkR1drQWNXZmtZWUJDYXJFMjdOM3NVbSs2YmtUcGJPVlh5UEJnckoyUWs3dkRwOGplZkhMM0RKSENKcldNOHJkQ05rcHFSUUpkV3lBcDhnc1ZnY0R0RVJDU3NOdWhaTStIaTE3MDU1cERUVW9ZNDF1MDFBUzlURGUydTYwb2ZTWk9UYTBEUU5ibUlwZE03MXdUWDBUczc5Nll4MWM3c2J2OXZpU3VBajFUaTRYb3RaMHlsTFlZY3hUKzlkNThWblhrVFBnSm5ITjQ2U0lTTmRvQ3VocWkyVmFhaFVMTndWQXBhQUVVSHJDTVlyR3d1VGd6UWRJOXRtQkFCME81U25ibmVkYUN4UnQwM1RJT2lVellqell4QUJVV1FlOXJOZGZPTlloNHA4WURnYzdlTXp6OVF1T0ozUGFIQUlycmN3VGZFUjlQMFg4Y25GQlpEOURNZDV2ZUVmSGVkTXFoM1EzWHF5QzVjS0FiUVdUQ2JVVlV3dGRoeENDSjArMWptSHl2TE96c1Y3SDBmckQvbjAxa2c5UnJMNUNRb1ZORDZ4QVRxaFVHUGk2aHBhcHFCTkw1L0hHdlJaaXg2VmtpWmRGVDRzdWI4dDBaQkFiSUdvY2diRkRpOWQreUsvL3F1L3c5NzRpTW1EQmJ1alErcVZaVHdZb3BTd1hpMDRYVXdvVEVsV1pISG9FMCswZGRwOGY4c3F0UDZ4RDAzbFBjbEhvUXBzRTZVRnYvVFNyL0Fidi9MYlhEbDRtbW9wNUdvVWk4bUNaanphb2N5emFMVzJXaUVpREljbFZkV2MvWFMycm9OV1h5ZzJibEZyVVlWTGViejIvS2x6M3U4WkR3YnhDSWRvS3E5Tll2d2RWRlhEYUxETHliMVR6STdpSzEvNEJiVFcxSC9oK0dCeEU0SW53OGJhLzc1MVZkb0U2ZmlRZU93OFNjdUhZcWgyT0JnY01qQkRWcE9LbmVFTzAycUtrYmcvUlpuSEJodHBXMXY5ZGFyMzd4aWJEMnZ1RmNUamxPUGV5VjNtTEhCWXlyeGdWYStRREI2THZ4OEZuUHVMeVBTN3FNRGF6Zm56Zi9rVHZ2K3YvNTJwUGVXQWZkWXMwOHZhSzNZakZZbXNZR1IvbzE5b1pCRGpWVzlpc1FyQ2lCRlRUc25SV0xXT1lFcEFGZURiUTVRcG5MTllHdDYvZnhNelVzeE81NWlXMGZaUjF4MnYzWjdFUUNYZGJudHZwZXRDRVM4ZlMyeExZaFVFRVVRTXhoVmNIVi9uN2VQYnJKbHREbVJJbXZhTnNxaWwyd2hwY1ZLNzZIWndkZjhhWm1XaXZLSjNLUHVQNXg3Mi9vSldZcEdhNklDekRaa3hMT3lDQjV4UzBlRHdVYURsZXZ5QWdBb0Z1MkhFWmZaNTZlZ2xEdHcrTWhkODR4aUVrcndzMEY1UlZSWGVlN1FXc3N3UWxNYjZPdmFjOGpVMGl0eGw2TkRMVFVnNnczSm1YT2lOWGYwZHFxb3FLVEEwZVZGMExoUEJ4a1l6SVVUdHVQY2VYRUFwUVd0RGFRYjR6UER5K0VYc3hIUHNUckRFQmh4ZU5lQjdQcm5wM0xTbm85MittRm1JRzVRcFErRnlGRkJTOHN6Z0JsKzgvQnB5RWhpNkFTTlRVb1FNcVVKc0hlME1Zb1NnUEZrdUdKTkhweG9iaTRhdGRkVFdJVnJTRmRVZG5pZ0Y2blRaWis3aHNQMzZyQ2k2Y2NNVENONGxUYlNBVnhUS1lFTmdWVUVUSEVHRTNlRStMKzQ5eHpBcitlZVQ3NktCRllJTnpTYWJFalp6NEFXZS9mVGpBc2grMnBGS2pDWHBTeVZzZmllRTdWN2dpVllNeWVmRUV4RHgzZUFmclpVOElwdWgzWWU0b2lRMFhUcFhTUi9HS1RaZ1phTkY3WFJZZUVhakFjNDUxdXM2M3J6cHo2TnNuNzNkUTZybGl2MzlmVTVQVC9IV01Sb01XY3ptRkZuZStRc0NYV0ZLTzVNRUNVaG9FQkV5UGFCcWhPV2l3ZVFLTThoWlZpZk1GeE9nWW0wWEdBUFdnZ3VLMkJwQll6MG9NdXJLSVdUUklGNFBXUytXRk5tUTBMSUtZcmNZR1VtNlB0aElGMEpvSlEzdDBCUW5iUEVaNCtJUy8vR1BmZyt4d3VueG5OM2RmV2FuRTRwc3lOclYwYXBLQytpY3RYZHh3TTJpajJ6d251QUR3U3VDQng4VURvMGpMaEJhaWFYVzRCS1cxSWs5TDhJQUM3eHcrQ3EvK1N1L3h3czN2Z0F1eDduVUI4Y1pqQURCVXEyV0lKWk14UTkwNndYYWEwUTBtaXd1T0lMRnV0UmVPR2pHZzBPczlkaXdCR253WVlXek5VRkFxenhha0RsQnlDSzdHeHpXcldqNzFHOXNZT09rNUZ1OU1pNzZTNHBuWjJlSFpiMGdhTTFYWC93Rm1xbmxMLy9xTDdqUEJ4U0FaNEVWdnpVYUdXOElWdEtrcGFNdlpDclNVbVFFYS9qYUY3Nk9xNFU4SzZqcm1xSW9zTUVTbERDZm56NEVKbHZYQ3VsVmFVdGFoR1VtV3B2WnBJRzEwa0RoK1lmdmZ4dE43QTYwcUtzb3ZVNWRoY1VRclpjL3preld2c2ZIQzgrSEJIQm9lTnUrZ2FDWWNOeTkvT0hsVHRzZEtmNDEwQlltYmY3ZU9pcWMwSzROYkxReHcrTWNzR2hmcHFJbEZCcFB3OTMxKy96Z3g5L2pwY3N2bzlhaGE2eW5wQVhIbGhDa1M3MHJRaXp3NnV6dDR2OGRJTG1pYVR3MkJKVEs4SlZqZjNTVlYzZHpYdWRmV1RDamJzZXZWQ0FFMGVXZ1hXUGJCT0lXMVpLU2twd2hCOFZWbXNrYUZ4U051SVF0V3BBZk9uQnpWaVlUdGRDSmNVVGhSRVBqdUdUR1BIaHduK1BKTVJVT3RWdFN6WmZzcHN2eXBBV3orWkJtWmJqQkVmL3pjOTlnVUpVb0Z6OVhJWWdDNjlaeGpOU0FSQ2xQWTl1VERVcWlpNnJ4Z2w4cGNsV1NGeHBFc043U1VNZnpyVVBYYUtOcHF0Z0IwU1M1bGZOVTY1clNESW5sYjBCMFNVekRhNGpqZzJ4MDVscGlIN1pReFVYRnlJMzVVdlpsTHUwL3hkL2MrenRtTEpnMUM5Z3ZZYjJNelE3WFJMMjFhNXZGZXRxMjNTaGdDQ3doV0k5QkdEUG01NG92OCtWclgwSW1uakprblY0Nm9qL0JGUUh2SFVFNVJNZm1LYUZ5U01oUlhxTkQwUzJXbkhXWVBEcW9ORldOV0tLMk5rUzNCWnQ1ckVSTnRpU0x0Z0NvVEpCTXNYYnI1QzBiN3dsRFpHKzExeGdQZFpqRk1iNVVaS2FrY1pEUFBkZTV6dVhoQWRsTWVOMStIOGNDeVhNYXY0QUFoUUp2TDRxK2ZsYmlBc2greGtPMkpBTG4vTEVyUlBHOW4vUGlMSWlOL3krS2pNVmloUUwyZDhaTVovTlVhSld4YWhxdVhYbUtQTSs3MVgrL00wMC9WSGg0dnBkQWxDQTBEZ2tlUTBsUkdIU21FTFZHYTgxNnZkeWF4T084SHdoZDhab25LbkZiTHVpY2d5SDlmZXMvbm1WeiszK1BrZ1ZCVTJqRDg4Kzl6S2pZU3dETm80SkM2Mnp6VHRtWUNJbmFwTHdJTGNtNXJlSGE3TThtSCtaOUMyS0ZqQXlQeGdiUGN3ZXY4STNmK0YyZWYvcFZNaGxTclFPR0FtTnk2dHAyZXgyWm1jaU10b1U0UXF6K3RhNk9qSmdLS0JGMHBpRmtUQ1l6Z2hkVVhwTVhnU3pUYUtOQkNVYVgyRW9oSnFkZU9SYkxKVVdtR1kySEJGK3hXRTRwVEw0NUw2UVVNNXRHcFZwQjhKNE1RelZiNFN2RkYxLzRNc3ZKbWovNzdqZHgxT3ptT3p5d0Q3WlM5dEdET05ZK2h6WkhtdExtRWd3bEl3NUhsenR0M05taitqQ0k3Wi9mYzdJWlBlMkJKeHIrVjAzRmREVmh4UnlmVE4rVUpJRmNpQ1QyUjdUYmpISGVhN3ZuSXNDMHFVM3FKeEtCQ0ZKUVhlcWY0Rm16NU43a0RpOWNlWjUxRXloOVNhWktKUFFLN1RRb3BhUEhiY3FMdEl4blN0VUEwT0J3Qm9LWCtDcVhZWnFjb1I5endBR24zS2VXSnQzQktnSHVFRjBFK3AyekJIeHFiWHpFRVZKck1xTHQxa2I2c05tdDl2eTN6N1gzWFpzTmFjKy9DN0VUV3JCcmZIQ2NURTZ4UUZVdEkvdmFmbFFBTU9BTlE5bmxocjdHdmgwUW5FVEhsTzQxOFU1b24vTHk4SGdyaVRVTUdJWTdzWTN5Mmxxc2IzQ1M3bWZqRVlUMWFrMldhWlRSWkRwbXVoeUNEUUdIU3JJTDFlMm9hNXZuOUw0M0pJbExweStWdU9EVUhnN3NQcmJ4UE1jenZNRmJWTXBUcnlhYld1RmU1azZuUitsYXl3QlYzTzkyekhxQjU3a3h1RVl4Vll6Wmdkb2wyVmdxUkd4UGhrN2FWL0ZFNDBPTjhpUTd3QTFSNFVQTTlMWDdrMmxEcVRLMGpYMzFSQVN0SWRNWkNrM3dndk1OenNYRm9Xd1NnaWtMbytPaUk2U01vRFJwa1J4YmxHdHZVQUV5cjNBT25oMDl6ZWxrd3B5M1dkYXJsQ0wwV0x0Vk5uMFJuM0pjQU5uUGZKd3A1T3JpVWFDMUgrMjA2YmNlKzlONkc5UGttd21nbE1FNXhUUFBQRWVldDJsY09vM1ZSelhVVnBKUnVUaDRGNW5DbUtpVThzRWhJa3dtazRmZUUzcmVzRC90Q0VrNjhZVXZmQUZqREtJMFZSWFpFUzFxTXlIS0JrcUhCQ3NsUkgxdEhLeGRHcDU5cDdtQ0NQSmFGQnFCcUtERUVJSWdDVWgvOVNzL3o4OS81YXNNc2lIcnFZMXNXckNjMVJOdmVRcW5DcFcySzlaR0JnS29nQ2h3dnFFWWphS1ZsWEo0WTdGaFJkMnNjVGFnMUpKUUc0YURBOHJSQUpNcGZGTlRWUldFNkNuYzRiOHpwN3ROdTRrSXEvV0tQTS9RU2xIWERaZXZIUExWTDMrRnQ5Ly9FZi85L2orUmFSMHZ3MEJrZ2VvK2tEM3JMeHpqb056bjhQRHdZNTNUZnJUWGFWdnNRZ2Q0UEpQNWhLazl4U1ZWdFpKdFFleEhsTjMrYkVjQVFrRG5PYjZ5dE9XWjc5KzZSZlg4bWl5VXFZdFhQRFp4RVJtNkZPKzVIOWxMOXpybkVLMDJiVmVKeHpyTE1nN05JZS9ZVmhyUWdydTBrQUF3Q1dBbjFqdmkyY0RUVjU3R054YWpEVnUyR3g4amxQZG9pUVYzcCtzRjk3aFBMb2FxaVp1VUJEZDBXb2xhY1hsNHlMWHhVeGd4MkNkb3o5MG96d08xeENVamY0WEhhTWkwb0NXNnNvaUtXUnNYd05yb2RvQUl5aFI0RTFoaENkSjg2TGxvMCsvZC96cmRkaHk3U2luWU1RT2UyM3VhZHlmdk1TS2pyalhrZG92VGlDWnJLWjJQangzWjB1bzF3NUNUTTJiRWk5ZWY1MUFmVXA4MDZJRStVeVoxVHJSelYxZFJ0OGttaHRTZHk0cVBxOFlNT2lHc2VGYlVXRzFCQ1JrVzhUcldaTWhHNTl2YUtyYTNyYlNMRGJIUmF4YVNiVnlTdFFIS3gwWWZpT0xTemdIUG1XZjU0SGpDbkJycmRNZFNiUEtXRi9GcHg0V0x4T2N5enQ1ZTU5eHVvVGNSeTZhUy9teFVsZVBnWUkrMllHeHY1d0RRTk03em03LzhEZmIzOStNM3BNa0oyR0puSHhVQmhWSUdNSEVsaldDZG8ybWE1SlRndVhkOHY5M2NqdjNxVjY3L3RDT0VRTk0wWExseWhicXV1K2V0dFlsQmxmU2owdVN1TnBPOEJOcU9ZaEtTQkFTUDlqN1YrUG8yNXd2cDVTYUIySkNPOTFkZi9pVmVlZmsxakM2Wm5reHBtaVpXc3FmdGltL2NWbXIxSnpWckxVb0pXYTdSV2FyOHBjSDZtdHF2a0tLaE1RdldZY3JjbnJCbWdaU2UwYVdTdzZmMktYZHphcjlpWFM5UUpxQnpqYldSOFNqTDhwSEhUaEhQbGJkeE1odVB4eFJaenVSMGhqRTUzL2lOYjNDb0x6RmJ6VGVVYnMxV2E4Z3RxelMxdVo3MmQzY1psb04vSXpDcHRncGRRbHBFblp5YzBDU1ZaemV4ZGtLS3oxSDRnTzVWb0hrOHQrdmJIRThlb0RPRk1vSVZSK01hYlBEYkd2akhSSHRjb2Jkb3NJNWNHeTVmT29wTE93Y2hMZHM2Z1VBN2ZxUkZub2JFMFNtdUhsMkphZWJ3Y2VvRU5pRjRjaVY0MzJEendLM0pIU3pSZHF4ak9JbVhaRno1R1NSb3JwWUhITzFjU216MkU0UTRaczBwYTdYQWp5eCt6N01lMWp6SXBud2d4N3pyN25JdlgzQlh6empSSzFhWnhlY2FSTWRDMXVTbko5ZzRodmQvRWxoRDJzVnovTkhCcHlKQkg1dVVOWTZ4SG5CcHVNZFZqakJlMEVHRDNRajVZNVlvcE04SUhVbE9BSEdRTzhPSUVUZEd6N0EvM0NjanRzUnUxZzNSYlFET3YyTmE4Sm9BYkc5UjBIYm1zbEpqVFVWVE5OUkZ3ekt2bUdZclpvT2E5WTZsR2x2cWtXV1pyMWlhSlN0VlliWEY2NUNZZDRYdXh1aFUrSnRrU2w3RlhJS1RUYlpNUlVWSHpEcDZoYkhDMGM0UlQ0MHVVeEE3Q2FwVVZ5QVg2T2xuSmk0WTJjOThKTzdydzFLc0QrVXplOHp0MlV4N2Y2d0ptMWN2cDJ0QVU1Z0JnM3lQS1JYRGJNenYvZTRmb0pUQk5oWVI2YnhrVzREMU9DQUw0SjFFMDM2ZEV3RkZUY0JGMngrbHVIdjNMcklOWjNDK1JYL2J4VmsvalJDUjJJNVdLZGJyTlhsaHp1eVhTcG15emd1aEE5eHRDcXVUSElSQTJ3aTM1UjRjQ2xFK2FpMVJpSmkweU5Ec3FIMSs2K3UvdzlYTFQ5TlVscnEyak1vUnVTbG9uSXVUeEZsVC84NGtQRDQyVFlPSVJuU1VGM2dhSkFPMEErK1p1L3RZNDFDRnhaaFltTE9xS21hektSSWVjT1hnQmtFRmxyTTVpOFdjSXM4WkR3WW9DVWxuKytqajc1eGpNQmhnbTRaR2V3YURBUThlSE5NMERTOCsveksvK291L3huLzVodytpRGxhN2FMVmJRRmlERW8xTFJScWIvWXVzOWU1NEw4b0tub0FSUzJjSmtlaFAzQzdFWEFKVHh5ZjNlektKeEJqMkR2ZkdldWd6SEVtWWJWMDBnWThBTmFwZmI5Njl5VE92UGtPb3dUWVc3eU1vTmNiZ0NEamZiQlZ6OXFObEFkdU1CdEFCWnA5czBRNzNMNkh2dE0wV2tnd0dhSHUraHBaSkN5Ui9VczJJSVh2RFhaaDYxSWZUa0I4cFZBQnRZT0VyMXJyaDNlWURIRkdQMm1LdldrZXJQNEpHMEZ4aWg2Zk1BU01aNFNxWFZLTWY5L3M5KzdraTVKN2FOSnk2T2JlWEQ3aTdPbVhxRmpSNGNsTXdrSklEdmM5VHhTRkhabzloQTZaU1VGbXlRV0lUSC83MFhpZXM4NzQ3bmlEWE9MSThvM1NLcDNldWNYUDJIZ1dHeXJrb0J3aXh2WGF2eGduVjNwRWh0akEyR0s2WDEzbmg4bk93Rm56dDJTbDNzUE1xMWttY21RYTJDN1JhRUhrbW01aUtMVVBtc2FhbTFwWTZOS3hzblJydnhJVzVrNFpjRzNKVllJeEpyS3FCeXVFcVM1bVZpRSt5aU9UUUVtVU9Makd5cXN0Q3RDT25EbUFjZUNWVVM4dnVhTVMxM1N2Y1h0emptUHNzZlp6ZnRESlJLSHNSbjNwY0FOblBkQ1Jad1hsNDhkeEJ2azNqZklnbFZqam50UWlOVTBCR1pSVjNqay9aSDE3akQvK1hQK0w2MVJkd0ZseXllZEphNDVwWVVOSzNjZm53VURRdW9DUkg2OGd5aWdyb3pDQ21ZbGt0T0Q2KzE3M2F5MmFDRklsRmIxSDE5Tk1MclRWS3hRcmtOaVRad3dRSDRsVnlRVWdEZmFyNlB4L0NTOGZXeG9taEhiemJSNDE0UTBESUtIbjE1YTl3N2NxelpLb2dlTTJnaURxd3VxNEpYakRhUEdTUjAxVVZwOGl5RE5FcVZlMDZNQUZWQ000NzFzMk1OOTkvaTNkdnZjMGJQL29CNzAvZlNjTzZjRzMvT2s4ZFBjMk55OC94Mml0ZjVjYmw1MWhOSytyRm1zWWJNcTFacjJ1TWVSU1E5SVRnR0E1M09UMDlZWHE2NE5LbEEwYWpNYlBKbEhwVjg2Vlh2c0tmLzhPZlVyT21zbEVUR1R1N0pRdTNGamtxb0E1STZ1dDBzTFBQeDNRdDJvcTJBTWg2aitoVzArZ1JGVGc5UFNXVzFFVlZZUDl5YmhzS2ZLWWpMYlI4QU45ZVJ3cWN0emd5M3J0OWs1OS9hUWxCWVZTV25BcWlURURheWY4eGgwQkUwRzJxTndTMHFHaWhsY0ZPT2Faa3hKSjRiM2tFVVFMQnRYUitCMlFWc1NIMWtZcXNvUWxDOEp0V3ZSOHZQRm9FcnhydXJrNDRaZ29vTEExR3dIcHc3VERvRlRrWmw5VWVSM3FNcm5WOHdTT3YvOGVFZUV3aHpOeU11NU1UM3BuZDR1MXdqM3ZNaU40U0FXMHpCR0ZNd2VYNUFVOXpoUnZtQ2xmTEl3NFBkdkhyQmdsNjQzMThCcnoyTmVUU1BVZTdVNFJRRTZ4REs4WGx2VVBHczJGeXY3Q3hNUUd1azB4dGpscjh5WUNDbkNFRHJvK3VjbFFlRWU1YnhHb0daY2xhOVhXNmNVRzQxVkUyQ0tHRklLRlZuSkxheTFxY3F0RkRZZVlxanF0akhxd25uTXltVE1NeUZzb1MvVHAyeklEOThvRGRiSmVqOG9qRDhoSlp5UEJWU0t5OTZtcEpRdHUrdG1zS2s0b2lVeHRtSGVXNzZLQWlBUFlLWXpPZUdsemgyZjBUNnRNMWRlcjgxYmpQK0NMMmN4UVhRUFl6SDYzKzUzRURhdXRPMEJaSlphVHlES0NQaFpNR3RnT3lHa1ZPb1FaVTNyRS91TVMvLzhQL2xXLzgxdS9nYkk0UzB6R08zdnZrSmF1N0xqR1A1bVFUYzZpaUViZjNEVXBCbGd2ejlZSmJ0MjV5dW56UVRacDlOa3cwQlB2SkFJa3N5MWl2MTVSbGlVaTB0ZEZhWTBTamZHSStsTzlYdW15MGxsdGd0VldPUnY0cGNsQ2I1elFhSXhsTkVLN3MzT0JYZnZIcmFDbW9sbzVDbDJUR1VLMHM0c0hva3JwWkkwYWpQcVRWS29ESk0wQmhmWU1ZUVpXS3RWMXc4OWFidlBIZUcvekp0NytaZEd3eEhabThNSGpuOUMzZU8zMmYxMy8wWGU2ZjNPYzNmdm5mY2YzU0RaUVVMT2NMVE1nd3ByMkcrdCsvblFYSWxLWlpWMlJhRTdTaFh0V1lQR05udU1OeXVtUjN0TXR2ZnZXMytKUFgvNWpLclNFRHY0N1haYXl3QjJsYitvYVllTTR3SE81ZlNzZnd5YUpOVGZjTjRWTlRVaWJ6Q1M0Mi9reXdndlp5UlFLYzA2TCtNeGMrYVM0aGdzN0dWNm5veW5QSDMrSE95UjJ1bExDWEhhS0NSbXlJNTBWQ2QvUWZkUTdhNHM4T3lHb05UUURuS2JLTW8vS1FkVjJ4OWl1YTl0cnBXN0dKRUxsUWc4Snc1ZkFJdDdhTTFBQnArdnFvanhFU0NMNUc1L0RXclp1cCtYQmkyMEswQ1VZQWswRmxNQlE4UGJqQ0piMkhXZ3RLOHRTeTkrTjl2Uk5ZNjRZN3F3ay9ucjdMTzl4aXhvcUdoaHBMTUdCRGJNTWR5R2hZY2NvSmQreGRYbFd2d082QXpJT3hlVGVLbkQwYi9YYmNuUlJERWdNcUZsM0N2SjZpZHpQS3JPUkFIekZ4U3pRS0cyTFhSSjlHc1o0c05yR3Fob0tDNTNpT28vd1NwbExvVUdLY3hpNGRXVmJndmUyMmJLUGg3NCtKUHJHeExZaWxzNzZ6MnJHd2MyN05idkhPOUNiSDRTUWRuNVlxQ0FnMTl5d1U4enZzc2NPTjRnYitNSENrTDVIbHNkT2llTFZaY0xVYVlYR3BRTmVrQWpONklEYkpLWUlpa3h5N2d0MmRFZGRIVjdrN3ZjL01UNmpRcWZod2MrUXY0dE9MQ3lEN3VRclZvMGo4OXZQZFlCR2RKemZpekw3QVByMjJsNXJXRkRnQzNnLzR6YS85T24vdyszL0V0V3ZQVUsxck1qT0tsZTFOMCtubHZQY1lZekRHc0Y2dk56NlVIN2JGRXRWWElRaU5xMEVIREo3Wi9JU2I3NytEUzlxdVdEakV3MHFKbjNLMHdIeTVYRElhalFqQlJSOUVZeEF2Nkw1UW9HTS8zRllyUXk4OXdCVlVvaVZpZWI2U2pUd2djcUVaQWh6c1grRUxMMzhKM2VTc1ZsWDhtMUxnUEZsZVVPUTUwK2tVWXpSZTR1QzdpYzMyT0JmdzFOaGdJWXY2Mk9QSlhmN3BlOS9oNy83SDM2RHdOTFRPRUp2UlBpYm9EQlVyL3ZZSGY4MzlPL2Y1L2QvOTk3enk3R3Y0MnRHc0hIdWpQVmJMK1NPUG45YWE2WFRLenU2WThYak15Y2tKMGpRTWgwTWFXMkZYanEvOS9LL3laNi8vS1JJVTVUQm5OWXVPRmQ0bDBLODI2VnNCQ2lrWUQzZklWUFp2Tm9kMHhWN0VpUlFWV05kcmZCSWF0TlpPU3FYcWVnK0JqVnZFWnpjVVdrV0czdVNhcHJJWUFsb1pyTGZjbTl4alpNYnNEdzR3WkRRdXBuYVZCcE5hb2o0cStrQldBenJkQytLaXZHQnZkTUNKbjFEVkZaMjFVOCtwUUlJbU5wcldsT1RzRC9ieGxjTVVtbEEvN0U3eGs0WEhoZ3FLd1B2TDJ6aUVPcmxUQ0d3NlpTc05RY2RPWHNXWVBSbWdMR2l5YmRuTFQvcnRBdVNHbFRRSm9ObmtCdHlnc3NoSzRpRVl3YXVZaWJHdW9XSkZXQXB1RW5qWnZJaDJzV2hweXp3aFJadXlWOEYzZG5tZDc2ODR6RkNZVHhjTUIvczRQSHU3Ky9pVGQ5QmtXUDRsTUJ3QUFDQUFTVVJCVkd6M1dSMVpRUzhyaHFhazVMbjlaOW5WTy9pNVo5ZnNFQ3JQWWpGbmQzY1hGN1lCOENaNmtvS2VSQ2lrWmh0V1d4clRjUFAwRm0vTzMrSVdkMWpUMEJCUVJFOWVrUURleDVhL3pHbW9zSlZqTUI5UWpBdDIxQTRtNnFqUUlkWmt0UHNSTytWRlFxRTliakZUMWdmYmlsd0ttc1dLb2l3NFVMdU1HVEpnaUtCWk1PZkNzK0JuSXk2QTdLY2NvaFRCaDg3Q3l2dUdMQ3RwcW42WGxWUnNFc3VHay9Wc095eHNWcmZibld0U0FrakFXYzkwdXVDcnIzMk5OMy84ZlFaRFF6bFVMQllMaW53VWl5M1M2SlFwalRFWmVWNmlWY1pYdnZSVnJsOTdsdWVmZTRXRGc4dm9ZR2hXRHVVeklLZXl6Vll4aDlZYTczMm5LOTFzRTJlMmo3aFBRUkRSdUdBcHk0TEo0aDZEY2Nsb25QTzMvOSszYUZsQ1lMdFRrM08wakhFZ2JKd1N3dWIzeVBLMlZqVG42WVczMDhQYjJ4ZC9yK3VLc2l3Wmo4ZHBJcWtaREFiZEJPMTl3T2dNWmFJMzY4ckducVZsVVZEbUJZdkpuRUdSczY3V0RIYkd6T3NIOUhYS1BrMHdJT1JTVUFkTHpvZy8vUDMvd0hKV1VhTEoxSURnd0ZsSGx1WGdBOVY2U1Y1RXNCRlpqVGhEblUxM1cydEJCV3hveUl3Z0dmenB0NzdKT3pmZndGRmhxWENKQzZOM2hJVFlpQ0JuZ0tQaXpaTWY4dC8rNlpDanc2ZlkzVGxBaStWME5pVTNtMzJKMWV3cEhaellGMmNEdzhFQTF6Z1c5WUxjNUlUZ3FkY05tU3BwN0lxRHZVdDg4Ymt2OGZyTmYySTFYWUtKYkxzbXlUcGN0Zkc2OFZHZXNUTVl4dzVTanVRTzhkQ3AzVDYvWjY2Lzlta1JzTlpUbGlXTHhRSmw0bVJuUThOcGZVTGI5TFZsWTcxTDV3ejRQTEF4UXVyZ0pOQTBzUlcxQzU2NW4xRXc0Qi9mL1VlKzh2TFBzVmpNR2FrZHRJbFNtcXFxR0JRbDNqWWQ0SXVPQmwyNVZ2eDhyVml1VjlIaUtnUnMzVVNwZ2ZNb0o3enk5RXQ4Lzd2ZlR4NjJBUmNjWkFseGFhRDJhREkwVVhKejdlZ3FhaG9ZbUp6VDlZU2lOS2wxNzNuakM1MGVWNmV4S0k2eDZSbzFVWS85L3NrdDduUEtnaXFPV2Q1VGFvMTFEbWRNTkhkT3l0Qzl3UTVoN1ZDK1JLT3BmTDBCa0kvcExIWmV1TFhEcmVOaVNWS09JVHAxTkhFYkIwQVRhUHljeGdCT1JUYlFXc3pNOGRLbEt5Z2NMb1ROZVpCZWZVTGZmMm96ckVYdHZ2SThjRFhOQ0U3Y2xEQXltRkZCZmpKZ1NVVkFFWlJqcXhPd2I3UHhCdFVZcnZJVVExZXlwM2ZJOHd6bW5sd3l5bEVaYXlWU3BpcWNhUkhleWh1TWlSM0hsc3NsK3dlN3JLb2xTN2RpNThvT2QwN3Y4UHI4ZXl4WVVGTlR0dzY3cXFMTFJJYUdURUFIVGNBelpjTC9tUDBJVlNsKzZkbGZKQnluY1Q5RUlZSjR0Y1hiUk9zMkZZdmZFbW1DdEFWcUNydjI3QjBlY09mQk1icFEvT3BydjhqdDc3L1BuUE1helZ6RXB4VVhRUFp6SGlLSzBXaVhYLzdhMS9uaUYxK2pzUXZ5UWpCWkJEbENnWGNCNTFMWEpCOVF5c1FmTVV4T1poVEZnQ0lmSXlISE5lQnRaTXBpd3VuSlZxUWl3bXcrNTZtcmw3aDE5eDJPcm95bzdKUWZ2ZlY5YnQ1L201QVlrazhyaXFMbzVBUStyZjZkYzZsVGpxTFFnV1c5d05ZMStTamo4T0FBTDQ3WlpNcnhuYnRjM2ovQ2lXVmxWMUEzMUtGQmRKeXNqT1RVWVJtMWZ1Z0VyaFRYOW00d3lNZmtVaUpPSThHZ2d2VEFXcnRRYVpQQU1WVHlrNVQwdXljV0pJbU9hVEtQNCsyM2Y4amRCN2VaK2xNY1RRZGlIeXJJd09PQ0p6WjR6SEFvamlkMytlRGVlK1JYY2lCUGRsV0tMZHN2ZVBqL1p5UG9sbzloWU1hNHB1SFo2eS93dlhkZVJ4bU50dzR0Qm8vclBEZmIzVlpBcGpJeVpkQnBFZk5rRVl1OVdyTXpINkxKdncydWt4UDR1S25udlBPekRtUGJzOUJiNHFrbzRYRnAvMnNxUGppK3cvWFJkWnkzU0pveXRLalV3T1VuLzliMlBUckFRSlhzc01PVXlZYi8wMnpzMkVMc1VxYlFISENBQ1FhdEJlOUowcGJIUndnQkgveldBaGVFSUI2ckhjZkwrNGtOZGJoUWI4QjlmSE5YVXhCaHBrYWRkekY4ak5CZVVYak52dXh3d0M0ejVsUTBRSVB5Qmw4MjhUajBRQ1RhNDV5bmxobUxjTW9rZTRBdHlwZzFDeUUrdGd0N2lBVlFST1pUOEoxN2xVNzZYelhNV0xtS1dtQzFycGxVODI3RTdhUWVmVldVUk5KRCtkaGs1WEoreEs0ZWtqdU4xRUwwNVlwZm9wVENTU3lDYmYxMFZiTFo2bng5clVNaG1DeUNSNi9qUHB4V1UyNVA3N0dtWWszRG1wb0t1MGtzOXVZZEM5amdPblpjTWVYVW5uSzhQR0ZQNzVIYldFblJMN3hGMnE1Zy9ZUGJraDB1YXFPRFFvd0JweWw5UVFpT2RkMXd4Q1dtekZIb1dIZHdFWjk2WEFEWnoyM0VHN1JwYXU3Zlc2QzBweHdVbEhsT1ZTMXBha3VXalZBaGp5T2E5ejJnRnZCcHdMbCs3UVhxeXRPc2E1ckdRekFvbGFFbE5pT3dEMmtrZjdJSUFzTlJ5WFIyd3Q3K2tPVnF3bkFYL3U2L2ZRdFBSV2NpQ1gxSjd5Y1dyUXRENjhxUUtkMU5ja3ByNnRXQ2ZKQ1JaNXFsblhOeTl3NWVQRHVqRVRkZWVJcjFiRVVRUVJVQlZTckV3ckpaVWxQandwcjIyT2xrWjZSUXZQYkthK3dNeHFpbUlBUVZRYXh2QVdNNjNwM3BlU3R0T0M4VVNnbEJSM04xSjViWC8vVzczSnZmb1dZVldSL092UDNNUjBWbUtBSzl1dzl1OGZaN2IzRjUvem9EbmNkV3dpRk5UdWVDMTlCTFBVc0gxRU1IeWhXRnlWaXNLMTU5OFRYKy9OdC9Rc2c4cS9VaUZ2MEE3c3kxSllCUkJpTlpBaFJQQm1RVm04SXlRcHh3V3dzdVM1TVkyWmErN2IzdnM2MG5BRGFpSXQraWxKNFRrbk50Y3diSGo5OTlrNnRmdVVaakk1dEswSmpFcW5hZmxmQkx1KzdvUzBHMnZqUDBnS3dYUnZtSVMrYVFoVjBnTkpzUDZrNXR2TDRWaGl1anErQ0ZYR2U0T3JwTWZCUWIyUWhrTnlDMkxWWnpPbEJKelR1bnQ3RzQ2T1JCMVBVM2JYZFc3N3EwdDBhaXJsS1JDaEdmN0NMUUFjYTJJR1I3dU94cFFnT1dEMkl6TFZkQkZXREhnRjEzQmkyeDdCWjBzTnl2MytmL2V1Zi9SWkgzSUZnN1FyUnlKWWhsZElxMnpVQy8raUYyVWpOQWJMU3d4ckdLdmRiSThvekdOajI5Y3Z2aE9oV2s1ankxZDRWZDJVRmJqYThkd1NyUUN0Rng4ZURGYjdHeEVPK2RGa0E2VzVObEdWbW1zY0hpak9BVkhLOU91Rm5kVGt2dHVOenVRR3hmR1Vka2lEM1FlSS9RWUZoeDZoOXdmM1dQWVRiQ3FRd2prWVZYUVoxNzc3Yisza0VsYjlrUXh3T1RGemdIQlVXOExsWVRuajU0aW5kUDNrTWpuMXp6a290NFpGd0EyYzkxS0E3Mkx6R2JUNmpyTmQ2cGFJanZvejVLTWNBMU1iV3ZCRlJyOUJ4QzdIc2RBdFBKQ3R0NGdvMURsekhKK3pVa0g4a25CSmJPTlpSbHdkMEhkN202dDh0OE11UG1tKy93NWx2ZlIrTlRuNk5OYXBmMjhSTUNFczQ1UWdpZDdqZmdPcDljclVGbERTcy94MXVQTG9UOXZSSWJMSXZGS2NlM2J6TTlucEJwUTFPdm8vNHp6TGw3Y2h1am9YWU5Tbmw4aUZyUzRDT2tlT21GbDhsMWlhMklCVFkrbWNhbmxMMVAralk2ZlZmaVpUdkZSdEtjcFhTdjk4bFkzRGY4K0owZlJZMGRGcVVDVzRXM1o4K2xvbk9TQ0s1aDZrOTQvNE8zK2RyUC9SbzZpNEFtMkQ0ajBmK3c4MDVRTEx4bzBZNEVRV3hVUUY2OWNwWExsNjd5OW9NMzR5ZjV6YlhZZ1N3Zk9laE1HM0tsVVYzN29ZOGJhcXNUWFVqZzJlTndvWlcwaFBqWWdyelBBWUE5RzF0NWxUWk5MaTByNjNudjVGMXF1OFlFalNoQkJFUVpYQlBsUXgrVmxqM3IrNnE5WWlRbGw4YUgzRG05VFhYMkRSNkNEeW5aYnJoeStCVGlkUFFvYlJveW5lSGRvNy83ckh0S2U3NFZBaUtjTm5OdWNZZUdKR1h3RVRCMWpoZ1d1bUk0Qkl2REMxaHhLTzhmWDJQN3FHMUxHdmJTakxtNmI5Qk5TYm5ZNFdaemw3czhZR0ZYckU3V09Jb0VNejBGRW9Gc3lwU3NPbW1RVDBCVzZMaEo4WkZSN01yQWZHY0pLQ0cyZ2M3STBHZ2NwaXY1YkJJbjY1dDYyeElta0x4WTR6Mjd6eTQ3K1lpaU1VZ2RvbjB0c1pGRGxIcEVFOW9Xeko2MUE0dU9HU0gydlZEQzJsZUV6Qk55eGVsa3dqR25WSGhxa3N0QWY4MitVZHhGaUo3YTBEcnZxYW1Zc2VDME91WDZvTUUxeFprNmduWjhiRE1TcWMyeWVNRGhSTEFxUVBBb1VmaktZNEpCQmMrc2hxdTdWOUFuS2kwSzFFT0w3WXY0NU9NQ3lINHU0cHpSTkpuMUhSOVBBSTlJQVY2aHRLSXNZbS82eGF3bTEyVTN1RXNTdjhlS2dBUWtHbzhSaFNwTTlDTU4wVDdIK1RoUXlSTmVRYzQ1VnVzRkI0ZGo3aC9mWXJBai9KLy8yLzlCM2N4eHJJaFQ3Sm1CWWtQeS9kU0JSWlpsSGFocW1nYm5tOVJrUU9HMFF4VU5tZFFjejQvNXdiLytnSC84M2ovejQzZCt6RHFzTVJoTXRBZW5vU0pnMFFncUR5emRGR2k2TktyNHlQdnRaUWRjdm53Rjc4RmJ3WGoxRU9PcFFndG00ZUZ6Zi9iL1VidHJRODJzbW5GL2RoK0ZkTlhad1BZeEZOVlNVZDN4RFNwMkU5TTAzSHR3Rnk4TmptaGQ5RkdqVDdTMXF4SVZGSFhsTUxuQmt2SENzeS93eHAwZkFnb1hIQnIxa0t4RWlOSUNMUVpjMU1ZK3lTVVFXVHJaUmxnU2JjTmNTdFIrbm1QckZ1b1ZXUkhBdWRnTVlzYWMwOWtwZVpISDFxSkJVSzM5bFZKYlRDdzhlbW5SRmxGQlBPVEdHNDVHaDVTbkJUTVdzVUxTblgxUGRQVFlHZS9oZlR4ZmpiY1k5ZmpCcDlPS25tMmZIY0NLNTliOG1Bb1hVOFRhcCt1OXR3K0pDWTJOa2kwVkRaVnlESlJQYlhRL2ZqUUs1dDRTakdETWtDdEZ5ZUh3RWkvYVo1aXRweXpkZ3ZjVzd6Rmp3WndGZGJvaW0zVDNOdEdGR2tsMUJGdlpzWFFlZzY4NzhPZEN5dndUejRHbFJ1dDRkSU56MFNrQkUrKzcxb0VsRU1lb05BeG5RU05wWkRzcUw1RUhqVFNCNEtNTXlLaFUzRWUwN2dvOVJqWkl6T2lCNml5eDJxYkVTZ21OcmZFRGpjODgwMlpKamFNbU5vZCtDTUM2Tm5sZ0lvQk80NkhYWUoxbHpZSjVNOFBxSnZyUlNzQkxuNDgyNmZ0YllKK0tpcFhIS2JBcTdudnRQY29IVEJDMEZVeUFjVjZ5eTVBbGl5YzQreGZ4YnhrWFFQYnpIRUVvOHJJemVxL3JHdStpYmtxSndUYWUwdVRwdFVSZjFnQUIxNlhoZE9yaW8xUXM0bXExb2tvWmpJbEZXays0a1JSRmhtUU9iZUFIUC93WDNuejdCemlXaERSNm5qdFpmRUxzV0Z2SVpxM0ZPWWZKRk1QaEVPY2NkVFBoM1ErK3ovZCs4UGQ4NS9YdjhLQjVnS0FveDBPS0pyQ3VabmdVVFpjRXQ5UTB1TG9Cc1JTampIcnRVU295MHdyTmM4ODh5N0FjNEJ0UDZza1lkemZFOUcvc1Q5NlhjM2dlUlF1MUJ2ZldPUjZjSEZPeGpHYmdZVk5QRXhtNXZ1c0NzVWlEK0VjWHdJakhCOGRrZVVydGF1cDZqWFlGMlVkMjhVMU1iUGNkMGJZc05BNlZhNXAxelhQUFBJZjZ0c0tyMkhyMG9UUGZBcUNXUVkzOUpaOG9LN0JkbU9OQnhicmxYamY1Q0dZL1lVbkxKeHM5Nk5udVoySWxJMmJ3dkgvN0pudFA3K0ZNbEl1RWMweDh6K3FzKzNHMnBXM3I3NmthejhGd2p5SEY1a29LYkYzU2dtYkltRUUrUUtySVlocGxzRDRhNDMvVTZEY3k4YzdST012N3h4L0V0RFdPenQvUGR6eEFaUEc4Unllb3VIWTFsV3B3cWtBNjFQL3h3K1FGVGJENEtrTElVaHQyR2VMeUE2eHYrUExPSzB5YU9mZFhKeHl2Snp6d1UwNlpNVTFWK280MUR0dEpCelE2bmpzZDhDb1ErajdUMjNKekhEQjNGVkFodElXelB0VkhSTGFVUU9kMm9BUGtTU2xja0hPMGN3UTJFS3lMRGk1aVVodm5DR0o5WW1OOVdyMG8zejlXOFhWYWdOQVFSR05EamVnQmxUaW0xU0pxWCtrNVdiUWI3aU53MGVuZkxodWxZdkdXQlZhc1diaDU4cU8xRVZDams5ZXU5TEpDcmF3Z1pybThzamlsYUpTSDRCSG5LVVFqSG56anlaV2hhaW9PeXozdXJPOTl2b2VGejFCY0FOblBSZlRBVE5MMnRHR3R4eVhMbk1na0dvckNZUFNBM1owQzhRa3NobGczUzJyUHFSSkw1WnlObGVHMlRwTytRbWxCaVVjcHdUMlJLYlJIWlFveHdudytZekk1NXYvK2YvNFRXZ1ZxWDdQRkxueEtLVjNuM0taUHZBaDVIb0gvN2R1M2VlUHQxL25QMy9yZnFabDBYcU1PejNwK3lxWTBKQ2ZQU25CeHNoVHgwV2xBUWJXT2xjbVppWnBFQmJ6NDRvdUF3dGxBcmpUaU5peldCaWowOWJHUEQwbStaZmNmM01NVFVDckVPVnQ2bjUyYVVBWmE5bGRIK1VJTGVIVWdXTStTQmRaYmF0c3cwQ1hCbncrbHorclF6bWFmVlFJeW9qTEFZV3ZINVlQTERQSUI4M3BLbVpWVXpUcTkrZUg5RVMvSmtlRUpjcnRFQ1lQM0tYdmMreDZSMW5Ucnc2N3ZKL3ZlbjVVNHQyQ3R4OHo2RUN2cTN6NStteGV2dklndkxEN1p6dWxIV090dGQyODY4L0VKbDJnUFlnTzd3ekZETTBUUzZmU3dZUUZSWkdqMnNyMVVoS3BTTyt5UytpUFkrL1hkVElEa05PSngxcktpNHJhOUZ6WENFc0NtUmd3QmxJR1FFaVk2U0ZwVWVkYStwbFlPS3lraklZL1NxRDg2dElmY0t3cXZjRTBzdENWSWFqcFJScTltbFhIQW1PSGdnQ3VETlJVVkZUV1ZyMW5vSmQrOS85OVpzS2JDNG9salp2QStkVC8wWUhvTDN4REhEZWt0RkZTV1pNRGVvNEpCbk1mN09oVXh4Uk5saUdvMEErUnBuQ2dwT0J6dVlaYTZPNjZ0MzdjanVoU0lJakd5U2FrcjIwb0ZSVHd0emplSXFGYTRTKzFxSm1HR2F5K0IvcjNwVStjdFZHcXJiR0oyaUNheXpUcCtUeE5xS3VvRVpDUExxankwUXR2WUFJRk9haEViU2lRcGtZck1yTWNqaldlUUZZaTFZRDNsS09Oa1hYRjBjSWk2L2JGTyswWDhGT0lDeUg2R28rMVdzazFmOUZUdzBGWDRabGxHVVJSNEgxUGs2MVdOcUVDbXBHTlhBbkdRRXlFVmRjUU9saTFycFNSQ014OEMzbm9hVzZYT1R1MkdoRFN3aDBlMlIyeW5UaThla3h0dTMzK2I4Vmp6dDkvK2E5NjYrMk5nVFpHWHJPdjVoNmNwQXgyN3Q3WE9iMU5uZlBoRStzZ0lLbHBaZFYvajBWcWhUY0I3aThWek1ubkEzLy96WC9HWDMvMWpQTXMwZ1FUQWJzQ214QmFhalZ2am13cUk2YmFRVW1BNkI1ZXkrMXBIZlpwQ2MrM29Hc3BGQmlBekJ0dkViZGt3c1drL3ZZbytpRUhoSlRHMklSN2JJQnUveDBCSUN4TkZOYS9JR0pDNUhBaGtTaE1pWFVKMDc0MkZXTTdGZldrVmQ0cEFLUU1DQ3FIQXVBd3RrQ3VKVFppNjZ6RHVkMy9SRVlpNnVzaUlKQ1kxSlVORkxFVWUvU3FWelJnTzk5Z3JkMW5VVTdKU1dGdTdZWEI3MG9SWWZleFNPbEI5dlBOTU9sYXB6YTlLeks0RWoxYXRKckozYmZYM2tjZng0Qjh6SG9lSGV0ZjJtYWNlK1pFUHZhYkx0dmVFRysydzRYdHZFcWhEZzhad3lpbXJzS1NXQmhFd0trZUw3bVEzc0Zsc0tkZ3F3anA3ZmtKL294eU15Z0ZEVlpDak5wWGdDUjhhRkFXR2NUN0VPSVdJaGhDYktkVExWWWVNdkNUbXZIYzl0RTByUXBLeWlBWW5qa1lzRlNzV0xGbXlKaHZrc0ZvbFY0QzRUU3FIMnFaVXZLaVVxWUxHT3hxcENXSUpLdUF4YkR4UTA3MTY3bG5aRkRqMk8ydlpkWVhXUXFFelJHdENzcFFEUUdjc1oydDBwaWl5QVlVcThDYW02eHR2V2NxS0t5OWY0ZFF2bWM0bkhNOG5QRmhPbUtZOXMxaXNkY21iMWhHSTltcGQ4WlZBMHliVUFuaHFvbzkxdkJBR1pVNjlyakU5dFVlVHVOOFN4WjRweWJSRzZ3eTh4R1dmZC9nUTczU2xWQnBQKzQ0RjdmbEtjNEFTdkZkb1VTaVZvWUtCS2w0Z0kwb1VnZzBsd1RZSURnT1lXSzJCUW1NbzhYZ1d4T1lMdW81c2NFbkpqaDlRTkRtWmE3Y2hzdGFSWFZZZHk5eDZ4NnBnb3R6RnBmME5rSGxIcmp5aUc1eU4vdUZoN1RuY082U2dvR1oxVWZEMU14QVhRUGJUam5iRTk0RXUzOXMrOWp4a284YUxOSm1uS1ZZVUlScHBBaTNnOUQwZjJSaWlvaExKdXNTb0tsQjVtaW04UTNVem8rb21PWjhtQlgrR2NZM0RyNkFVYUJVd3BzYmE2T3RuZEk3M1VOY05tb3dzaTFyYzhYaU10WmI1ZkVvSWppelhHS014ZWNEbkMxd3g1WnZmK2t2KzdHLytKQUlVWWhGVEM4YTZDUDJ0aUtIVHdOcTlwTFBYMlVRN3NiVVRUR1JvWWdXeUZ3OXBkUjY4eEFJa242Z0I4ZFMySmk4MDA5V1UwVzdHeXMzNDV0LzhKLzdyZC84S2pVK0ZVMjZqNVd5L09yVHA2WkFtZ1NRTlNLZlRyZHVOZ3lZVlBBM1k0Y2JSczJocktNbW9GK3ZZdWxlQXhQZENRRnhpZ2xML2Q1MDYwemhjMUM2MmdyYmdrL2R1b0pTUzMvbWwvNGx2Zk8zZkVXZ0lZdU5WWk9QRTZub2RnRGFXTXJGVjYyWUNWb2hQZG1CZXg1bSs1OGthMmowTzJ6eW1hbzg3RVl5SGhFZ0RpbHg3YkxQR3J6WEZjTXoxL1J2Y25iN1BiRGxMSU1XRE0yaFJhUUlEMjZ3SkJyd05hQWxkOTZMemZHTGI1MW9XTUIzeTduZXRBOHRxeFdpNHg3SmUwVlFyc25Fc0pzc3dWRVREcGE2Z1l3c0Vxbk1oeThlSy9rWTlMSFBldkN4c0YyNTNqRlVDbmc4eDM1eHpIL1ZUekFsa0NFbXE0YmYvamhFcVc2RUlmUHRIZjgvbFh6dENYSTZ4Z00rM2dHei8rUGVQZGNmT3B6Vk8xeWdFd2FpQzlhTG10UnV2OE9aYmIwUkUycTZOUFJRb05JNVhyeitQWFZhRXJFQ1pqR2JWa0dGd1B2cWh4bnZMcHk4Sm1OUnhUeHprcHNEaldUWUwxRmhZdXlYbDVZSi8vc2Qvb3FKaHZscWhpYWtGcWVKWFYrdTA4VnBSNnd5cURJdmkxcjMzZWZIWnk1UzVwbDRzeVlzOW1zWmluU09vZ0RJNjZhdmpPS1NVU1hwUWhRb2E3VTNjcmlDeE81cDJOTXJqUWtNbi9EU1NEcGZDREhRNnBoRmRpWXNGaWdXYVhEUXk4MXdLQTZ3L0lPeUNPeENtMVlMYnAzZTRhKzl6aTl1c2FSS1RDOTRvbk5rMHNPa3EvZUw2QUNVT0k0WUd6M3Bka3dHWlYwbFlvWkRSa0xDd1hET0hETllPck1LbEFqQkg2RTYyQTdBQkxXYUxoWlVnY2N4VkZvL0NTWTRYcUJzd01zWXVQSWR5eUI4OTlZYzQ1ZkZpWTJZSWo4WnRkZDZLOTcxSzE3ZVB1dDRFa0xYWEdHZklGaG5hRzVUM0tLbVRYTVFqTHQ1a202NklTYnRyTTBxZ1RBc09RME1tQzZ5cU1RT1lyYVljN0I0U21wdzk5bG5SSk11MGkvZzA0d0xJZnE3Q2J6OUs3LytoblIzb1dOczQ1ampPdDA3aXpHYzgvQTBLajdVTnJta2dhRlNtMFdMSVZFWUlrYTNaM2Rubm5YZmZJc3MwMTY0OWhTaFAzU3p4M2pKYm5sQ3RadnpGWDMrVHYvelduMUg1Uld6SWtDbXFlaDYzOWd3VHRwbmxWWmZLYW5lcHd3RjlOcWozcmhCZ1M2YVZJaWdQdmgzWVZHSVI0K1NmcVRneG1Rd3FPK2Y3Yjc3T3pUdHZZbG5RMENTbTQ5SHlpckIxNUhwUHRxRElDeHBOcVlZWU1SZ2Y0Ym4wam5iYnVsSFNQbWdmMWEycWUwVjZsQzZMdW5YY2xFOGRrb0lRUXRFZHN4WUVTMmo1TEhBaGRBQ28vL3hEajYwZFdGKy9kazVzZHh6YTJGbEo4bklFandrRjRnS0ZIcVRpT0RiZ3prc3NWRXljYmdnT0p3NXQ5Qk0zMW9tcWtjZ2s0VnRaRFlqZjJOT2Z1Mi85NC93azMzL09Sei91UlhINmZsZ1MwQWV4WjdId2xqU2xkKzIxNTdJRHZDMnpueklITnNRRmowYVl1VG4zcG5kNWZ1OVptcmxGbjlOWjdlenRwWHBEVG44LzQ1VVRqMitHWnFBS0RDYXF5YnQwZ21BUVJwU1VLcWNJZWZjTnJmTkF0K1NTK1BuOVRtTVNGRVlwYUZ2cWFxaDlUU2pnenV3dUU2WTBXTm9PYlRwOXVpY3hzWXE0WUZSeDdIUjRac3c0bmg1emFaeFI1bm5VdGt0T2xxWEZaSWlNWkpzSmVWd0VrVjRHNWN3NFRYUW1hUmN2N1Q1dDhLSWd0Y2Y0V0dDbGl3eFZhQTd5SFE0UGQzaW11Y3FyNmlYdXJPN3g3dkpkUHVBT1ZWUGhtN2lqYWdDK1R5ZEt1dDlEazBCaE9tKytkVVJRMFVvUVJVRkc3aFE2WlhUT0cxYzNMUFRENFNWOXByU1pwZmk4Y1NwQ3lpNzcwSHJmK3RpZGpOQzVYOFF4VVQ3U1lqSktCYmEzRGVucDhJUGdSVy81N0FvQlV0Rm5veHVhTFBwcUl4b1ZDaklLUGk4U284OTZYQURaejNOc3BmZjdBMlFiSGxUOW1EYVRqd1pwU2dZNHNxU3ZMRUF5bEluYVVnL2NlM0NQbDE5OWtmbDh5cDNqbTR4M0JnUXE1dk1aNVVqem4vLzR2L0IzMy9tdlZHNEJPSlJXcktvRllDbkxrdlY2L2NqdmY3SklRT3loYU1HWlIybXd0c1prR1pQVktkLzV6cmU1ZGZ2OTlONzI1OG1pWmJKR28xRXNyTnNxbTM1OHRHbTZQckpTYVRmYS8wbGFGY1NKTVA1QkJSQ2RJRXphNWJOc21uZXRPcEJ6SCtOODJqS3UyNDhQN2VkRGY1ZlVHbGFqbFNHSVoxRHVvRERncTdRVE1UMFprTzdkMWp0cWF5bU5SSzN2RXdMS1ZqY1pRc0NvTEVJVzc4bkppY3EvelRINnQ0d0lTT005R3BNd0VUd20vTEs5UUFpY3VaOGhzbFNjNjZWNjN1V3pCU3A2dnoveVV1djZ5Y01pekxsNSt5WXZYWDRKNTIxYys1M0RBdjlFRVZUUzdRL1lZNWNQbUNXcU9jVEZNWXBkeHVUYWtKUEYxc0E5UDloMjYxVWcraE96dVg2QnJsVTJSaUZHVTlzVjJhN2gxbHUzV2JCTTEyOUtnUFczcTFzOCtJVDJJdHhmc3VEdTVDNlg4eEUzUnRld0p6NUtJb3lPMitWanUyMHRrcnFFOVlBMUhxOXMzTmJlVWtTU3QybE1uandlL0VLN09GUVlFeTN0UWdnMERsUU5hTU5BRFZHRG5OM0NNUjZQMlYyTnVUUTk0SVAxQnp6Z0FUWTAyR1hzN2VjVVlFd2FGM3BsamhKUGcyVnpqWGp2TVFpbGpocmVKd3BwZlczVFF1S2M2NmdGdEVFOHJyM1cwaUdLN2dMaG94NnlEdzNmTFNEU2R4TDF0Q3FBOGdFeFVJZUF5NGsrQlRtc2pNSW15N0tMK1BUakFzaCtwcU92bTl4TzVqNzgzSG52OVdud2VzenJQaVFrS0pBU284SDdFTnQzT3Q4Qk14SFAvOC9lbXoxSmttWG5mYis3dUh0RTVKNjFUayt2TTlNem1BVVFBSktDQ0lJaVJkRmtKcGxJMDVQK0JabnByOUtiWkhxUVVUSktYR0NpQkJBUVFBQWtod0NHczNUM3pQUlNWVjFaVmJuSDRuNlhvNGR6M2NNeks2dTZxcXZCSG83bGFhdU96SWhJMzkzdmQ4LzV6dmZ0N0c3eDhPQSt6Y1N3c2VWWnJKNnd2VE5oZWZpWS8vVi8vMGY4MFYvOE1abUFSWERPMEFZRnRLQ3lVYy9tRFQ2ckR2dnlZVXJuazhFd21BNlVRY3dZNkdLSHErRDA3SWdQUG5pUFZwYUFhc3UyOGRYTFN2M3gydHJhVWlldXE5TWJULy9kcFFmd01LZ1ArM1h4MlBUTHRTS01IYmw2am0wMmVlQW8ydks3VU42WHAxOWZGY1NMQVpLbW81eFRIdUxtZEtOMEkxUEFtM1ltWjBrRGVFNDUwWVlXNmxmZmhqNTZ2V0RubkFyZFo4UFViWENVanI2UTVWOGRwZkdFU3huUnl6U1ZTeit2NzlqaTFqVDZXbjc2NjhERnU4VU1QMlUrNis3WFplbVJEeVFlUEg1QUozSFVJU012REw0dWh4YUdWQ2UycVNwMnAzdVk1YjNSRG1wVDJmWmtCMjhyS3VOb1UwRjhvK2ZNMVJ0ZEtnM0dFTE1hZ2xodmlTbmpyT1BoeVNOQ2FjNkVOYU9pTDRNNzBVc1R5UkFEbUlva2tZamhzUnp5Sk81enU3NUR3bEtKa0tPQ1BDT1cybXIzdnBSckNoZzQ3cm5vMElvSjlHZERYZnVVdnpuY2w4ODBHUm1mRnhEbndhb1VXa3FKdHRWbnAzSGd2S2VicjlpWVRkamNmSk92N3Q3bXllSjE3aC9lNC83aUhzZWNNaWV3eXBIUWxmMm1hRktYaXpMSk9KdWVJUXNHeDlUUGxIVHozRjZJNTRjUnBUS3NwMHFYSjBYcjYycklVUnRUdU1pbVNJUzllZ3lUaUNzaVlWQWxMcUYzZGN0WmNGaHFxdXQ4N0M5SVhBUFpYNHA0MW0xNDFXMTJNWVhWbDV5ZkZlWjVnNVI0MmpianJKYXFZMUZITUVid2xjRTdlSEwwa0oyOUNhdjJGRjhsZG0vVy9ORWYvNy84NC8vemYrUGc2QUFoMEFQR21McGl6R0NKRVVMOER6SGZIUS85NDF3am1qRXdRazRSVXVUKy9VODR6MmVGTGFiT05WOUU5SVBkNXVibWtHbGFaNXcrSTB3Y1plN01rSGMzOG5RVGxDblduSDBLVDNBcS9DOTZuZ1Z0REJTaldTWDltaTFINWVsWHpjYWxOWkRwMS9lczhlV0t6M3NsRElNanhjakdkQk9MVXlEUnA4dlVVNG4rWExXMHpGZHpibTdtNTF5NUx4YktZN1NGa203d09FTHVNRGgyTm5mNTlPUytRczBoL2Z6RlJpbVVEOWxaTFo3YVo2NUxDb081Qjc5OTR2WnB6R3N2L2QyNmRGN2dFNkR5UnBlM1VWM2poQUFBSUFCSlJFRlVSOFovWklwWlI5SjFuM0RDMGNsanR0d08yV3E2N3NVRnNLN1luMklmNjYxblozTUh1N1JLOHluSlZvTmxkMk1ibXdyL05IV0lXSEtPaUdSTTBRT1YwVDB3YnRic3VhQ1poRGlkcUM2NkJXZUQwb2dla0xHYTJKQU03eTg1azhCN2JJQkk0SkJqUGpsN3dHYTl6V3ZUMXpGUk5ZMVZqTVJTbXdhVElVWXpaSTJsZE05YmswZzJGaEJtY0VuTDA3Mmw5THE1OFdxSU5IYkp5bGdXS1dHdHgxa0h4dUpLODZXekpTc3NCbGFSbkJKTnRjSFVWdXh1YnZCYXZzbWpjTVJQMHM5NXdqbHFDSjF3UkRDV3prZWR6MXVJd3RDZlFVd1lHcVorV3VoTnJ4TGxTVktxUWIxUkEvU3ZkbERLeXFXblFmc2E5QjR4WkpwNGtVcjJVbUhrd25wNnR2aGF5VUJVdU1VS3RaaWhlUzFaZzdlT1RlcFh1dmF2NDR1TGF5RDdTeHRYNVdueU91TkkvMkpMMXVzWjhWeXdadFVVd1Nyb2NoaXNOVmdIemd1WXdHdXYzK0QwN0JGVkUvbjVoei9tbi96VGY4U1AzL3RMTWkySmp0clh0REdRSkFOSkFXMVVjT1k5eEwvQ2xsRE5DQUNsdENYR01OU3ErNUhNcU01clRCMGYvUFFuOUNhUWlVQk9WNWcxdlBSR1VMSWNodGxzZGtFdXlOb1hFVnhmcjcvM2dEZXk1cWJaMFVSRUNzVmdYZHJQQmJnNkVNalNmKzZRTEloeG8remRGYStpL3hzQTg3ckQ2dXBOdmZTNUFoQTdBSzhjaGFhWjBnTTdUWWpwQUwxV3FCQmFPaFlybFFIenBqVG1mYzdvZ2F3eE9wSVpZN1NKckhMczc5N0FuQ2hUMWx6ZXJTOEkxQ3FjdWJoZ002SlJYSXc4VUY3NjZydS8rR2twV1ROQ3VPdHpsZW1QbE9wbVBzM3RIckZsUnhsQmF5MDVKUVJQUzhmUDduL0lkOS80RG9GQVpSeWYvL2dYTGVFTUZzZk81Zzd1MFJySTZyVENzTGU1Qzltb2FVZ3FSZ1NTbjFKTVFQb3IwdzVIcjRzUjZ4M1JxT21CZUhodzlDa0xsc1NCSWFuNzJ0TUxlckEvWkdYcDdVdWh5N0FrODFGNGdIeHEyTHl6aDZzcXZLdDA4aGNMNzFoUXZ4T3Ywd2RkVDZmMnRnTFdaQkE5YnJZNDhRMVA3QXRnTmorRGY5b0R2RFVmMStJd1ZyQko1N2NTaEUwL280c3RjYlZDcWtUVFRObXdFL2EydHJoaGJyRjZGUEZ5eUdPT2lPcHZoaERYVExUeVNEUUdpQmxTeVViYUdwdGNxU0M4WWd5VnBUd0N0SDF6YkZGbE1SVDdoLzU4NmZHeG90elpwekxaTC9qYWMyMTd0UjRHb3dadENnTmJxZzdhckZjbGg0bVdaRlBSMEg3VnFmUjFmQkZ4RFdUL280K2VwemtHR1NWRmNTRWwxNFBZdlA1WkhNamtGWUJzeGxVWjNBb0JyTTA0YnpBbXMyclBPWjhmY2JhRUowZjMrWU0vL0wvNWt6LzlmVlp5Z2lFaXFHdFFHc0JneGptanY1ZG5ROVBVeE5oOXp1UHlvbkhwK0prOHl1aW9CcSt2REt1dTVmMzNmMEkvcUgxaHJrOURNbE9vNjFwTDNCUWdhOHhuTkJRVmFva3BIRUY2RHF4K3VzNXc5QVBqbW5RcFJZZlc5czFjWlJEdnkyeEcxZ1B5czE3QkZaRnpQUTdqcnZXcjR2TG5SdlRuM3ZZaXBFaHQ2OEp5TEtCYXRMbGt2VVMxQ1QxdjUzU3B3elA1N0dQOHZDT1lNOWIybXBSbEFFMUNYVmZzNyt5eGJ2bjY0cTBvaS9udEZVU2dwN213UFlDOVFHQ1dBaktHNVVIZnBOWGJidzdsNmNJaWtrdHI2di91ZWNPeGFrd3pBUHIzUC8yQWI3ejFMbFZ1OGN4ZWJHZWZFZFo0cFpiZzJKeHVxaE9lVVFPUEdzZVVocTNaRmphYUFtWU56dHVDTW9zZVNBKzRybGgrU0pGNjJ0RG1vSTFlTlh6MDhHTTZRcCtQSFhaK0RmVFg4d0JyME1tZWRFUnhDSmFXVE9LTXpEMjJILytFTjdmZTRNYm12aDZmd2xlZFNJTnhkbjMvaWVDeTE2TnRsRHVyOTVFdDRPbFNGbjdJdkNyQXpSY3lzZXVmbkZNajc1d0xHRTVHd1cxVTBPK2t3b3ZIMFdBektLTkJxTVNSbmVNYk45NmxXVDNFbjljODVvbXEwVW9vRDRPeW1qNmRYeDdWRmxPeXptWjRUbnllRUdQSTVUcDFvd2xYYjVaaFNrVkdzNlVXWTNSU1pZM1Z5bERoemVaK3d2WjVYbGtmZG0wWTFHdGMxUkZzTVlOUU9vaTNGU0ZIT2hHaWRRajE1OXp6Ni9paTR4ckkvakxIR015YXJQVXpvL3FncXJSZjZiOFgwSHk5Y3ZFMmdNeEpkS1FVTkN0Z0twSUVqczgrNWVEZ1B2L2kvL2xuL1BpRFB5ZXdvRFl3OFk1VlhBQ1pTZE53M3JhRGRXUktDV05WdXpaR21NK2ZCMkw3NGZjVndNVWxvTjl6MVlhTXBjbkUyRkZQTFdrVk9BcUgyRkYydTZvTm9YdkYxTnlJUHVDY0tqMklJcmlYbU93ckhCcVhtZnV1NXN2ZjY3VmwrMHlQbW4vcWU2NzhpUzNyN3QvdlMzZVhYNDNrUzBENTVUS3l1ZzJ4bEFzak9VZndaWjJVVFBFUVprVDZFTHJZMFVsZzlvcEFkcDJSZFVPVG5TVHd4ak9iYkF3dzF2VDZSTU1oL1dMWWNUMVZvSTgxVHJVWFFhZGMrUERsRTBFRkNPZExsOVZWZDQvcGVaTERkMVFTenhoREZzTWhSN1IwVkZJek5XUDQ5L0xocmNWbGk4dkN4TlhVVkV5TjVVeVdPRHdORTJiVkZOdUNkNlU3M3hXakVCT0hPZnV6SXVlTXF6dzVDSzEwUkpjNGlJK0wzV3NlUFIvMXNoenZqUVdHcEs5b0hRYXJWWVNZTW1jcytFSDZJYkxNMkcxMVVhU3p4Qnl4M2xLN21oektQU0lHak1wdXVXeVZaakM2aGk3a0hTNXhZL3NNNFRnekt3WEFTUTZhRU1oZzhUaGZVZUV4dm1RU3kwU05EQ2xIMGtydHJaMTNUTndHWDkyYUlNN1RkcEhRQlU1b3RUTS9BaE9HNjA0TlEvcGN0ZDRmZWpHOTJuMGdoVHFrMldXblJpU1hIaC85L2t2L3VDL2JJd1dNcHVGK3NDLzVldWw0anBOQjVYTm5CVWs2Sm1ScnlWWjFwOWY1bld1VzdDOUNYQVBaTHpsMDBMYUVFQVozbEs3cmNIYW1UbHl1MU13UTdXb1dVMHJQcFlobTBucEpSYVJVU3FNRVpOcDJ4V3hXMDNZckJWNXhpYS9BV2lHMkxjYUR5YysrREZJSXhhTFdEcHhOZFVQS1pKWVlmMDVpU1J0YkRwOGM4dUdIUCtOSFAvNGg3Ny8vRTQ2WGo5RW5qMm9rcmlTcWUwNFpKQmR0cTF2ZWw5UExZUEl5ZElMZWYybGNraGU1K0R2ajc1VDFEWUt1b2lrQTAydVA5c3RnRFhLc3RmenN3NTlTNDFtU2lLWDA5Z3p6M0pjTFdTT1VDMTd3SlJUWXFrYWk5R25UQzMrZVJ2dWt5elBEZmtCTWllbDBTa2lxK1JxekFzZlpiS0thdi9QVjAxemE4Zkx6Y3lZeVpiMGpMRkJlMTB1NFVQNjkvTGtScUdEUzFIeDZkTWJXblEyNm81WmVlVGVuZ0tFaFM4SmpnVUJId0ZQeDQ1LytpTi80OW0rUjV1bUM5V1dmN1hYV2FUTmV1Y2JHbjQyVkdmcHRqQkp4emhGanBIWTFYZGZ5OWh0dlkvOUVPZVNhazlXbU0xZDVhdCt3V2k1ZjdRb3dZQnFEaFA3YzZXbXpHTHl2Q0xGdkNPb3ozcXhuS3YzcnhjV041TFBXQTJ5OU1hR2JMekRXZ3FqalVvckY3S1RIeWJJdXFWOCs0OTU3UWd3c1pUbUErbi8xL1QvaEgvN24vd0IzN0pFZ2crTlcxM1hVZFUxZDE2eFdxL1c1bHFjejhsYUVtSlFlc2xvc21HNVBlVzM3TlQ0NC9Sak5JZGE4cy9NV3krTUZ1MXRmUlRxOTF0cTJWWms2N3duanlkR3dmSWJuUURhUVJGMzNGbUhKK2VLY09YUGFZa3piYjFzZk12cTFyMHlNSnc1UkVyRTRGdFFrYWp3L2FuL0V3VWNQZVdQM0RkN1lld3R2WjZ4T2w1eWVuTEJUN1ZBWmxSV1RvbnNxV1RCNHJQTms1NVNMbm9zdVIxYWFnSmE2cFZDdVJqRmtFbk9aY0FxT2pMRmFacGZjRVVWVkZ0YlpZTFFOSHdQT1lZd2E3cWFZeWVmQ1RLYThlL2NiYk01bi9NV1RNd0l0VGdKOXNheHFJQ3lnbWt3SWM5ME01NXllajFlcHJJdE9JRk1acTZaMVRWd3R5VGxTTlhwLzFhNGZtekpqTjY0TW1wRzFlWlJjK0J4UkpnM3J5YVFleC83K01zYXlhbHRtbTFPOXZsY3RzOTFOT2hPdkdiSy9RSEVOWkg4Wll1QVlXUzdhNXFpelY5MTRmTjF3ZlBJSTV6TXBKK3FKSjZkTzdRanRpQnQzNmRWT0hDa0ZWaUd4V2kxWUxGYk01MmNzbHkwaG52T2o5LzZVMDdOSEhCdzg1dkhqQTlyY0E0ZE1aVHhCV3RibGUrSEtITkNYUlRNcWJrN2p6UmlPbnNsRnpTQVA5cjZSeURnTC9FWG9pSTRIMFJqak1KbnBHNzZlRjFkZ0diME9SbDdpMCttVW1DTXBSVnp0c01COE5XZDVkb1prbVBuSjh6dVBQNk16T0lzcVMvUU5ONWRmUWE1OFgxOFR4K2VQMlRDYlpCY0plRUt4SmpiR1VGZWV0dFBXcGo0N3FjU1p6TEk3SjZTV2h1cEs4QjlqTExTVnp3N2JjNHBGQzduSkZERjlzZHkwdDdpZkZWamhMVjFzeVRFUjh4Y2pnaTQ5c1ZQQWVVdHVkVktWWTZRcUVGcHo1Y1dBSWFPWnhIeFIreFI4dWJ2S3NTck5Rd0tZVG4rWHBEUEUvbTQwRnk3NFB2cDhyR2FlWUQxWnlvVlNZNEI1WHZEazdJZzdlUitmMXphbHZXM3RpeDU3STFxeWRjYmhjR3hQdDdDbkJvL0hrTm53TTJwVFlaTXBoaVhGQlVwVXRjREtXbTFaUnN2c3Iya1JJVW9tRm43czRka2hzVXhHSStuaTlXMFlwTXllK1VnYWdkb3VSMDQ1WWNXY00rWXNqbHZPdzVLdmJyM0d6ZWt0dG1aYnRPY3RJa20zUDJXeTZEbXdWZ0hwc2x1Q2RUaWo5QlpuSUNkTkZFaktWTTN6eTlkRzFrRE9rT21kRlJHMVpSMW5ETXYwb2RBVXRNSEpCc2ZNVHJBNXN1dTN1Y01kbGl4d3VWWDc4YXpGdS9GRUJJcSs4Q0IvOXZrQm5YT044cS9GME1Xc3dOMElMWUhnTXFZcTE1R014eVV6QUhwajBuTk8xbWRGNFlvYnZlOTd1cFdnU2dVNHBaWVlxNjVveGhpYXl1TXNwSzRqc01TOENvaStqaThzcm9Ic0wyV3NIMTVOMDNCMmRzelBQL294Ly9QLzhqOXhjdnFRNDlWRE51cWFlWGZDWmpYbEtnRGJ2NGFnS2dSOVk1Y09nckdVaERvMDJ4b3VyTE9QN2twKzdSWHZYY1pLVnlLMHE1Yno2bVVkVzlaL1diQjlBRnpHRUdOTDJ5NkpCRXpQYkxTanN1TVhFRU1tM2pubG5obnpBc2RBOTBDNXNIM0c1Mkowc1dPNW1wT3RNSnRPcUNhZVNlM3BjcUJ5bnJUc250dXdrWit6azBZZ093VjBmZFBFNVZkajVNcjNyVUMyQ2I4cHVHMm9tcHBnVytidENSMHRVVkt4OEhWWWE1QWNNYWdhUmdpSjAva0o4L2FNR1ZPa2NMejdqTGExRmtrS1pyMS9tVWVjWnJHTTlKSklodGRmZTRNSG45d0RMSlhWSzExS0p0RlpSM3pWaTJCZFVJR2d3TXpqY0hoY3lRTXpmRVVML21tQW9tclhXWXE5Z0E3Ti9iNElFSW00enVHbzZZQzZkb1FjY0M1ckUxVDcyWUF6b2VuYUpKbEVCSVN6TU9mZXdTZmMzTnZEaVhMZG5kTXN1SWhvdytabmhrV3l3VmNWWGh4ZUhEZTI5NUdITWxpUTdzeTJhVnl0elV0UjlTdU1VYm1wbk5PRnpQUFFnYjZHdElnUllsYWhMZkh3NlpPSEpDS2gxeXpvdnpwS3psN0pXMTRYVHRhdkR0cXNvSzdqbkVEZ2VIN0s0L2tUM3RoNmc5dXoyK3hOZDJqeWhBcUhFMHNPbGh5VlJwT2k0SnVtTEw2dkFobU1zOVJpUzFWcHpaVzlmT3dnNDZUL0pKZHBYbWtPTXlCWWVodUFub3FBb0FZdzVabm5JbXpVRThpQm5YcVgxL2RlNStUb2lITmFVbW9WMlBkQU5nRW1rMFZZcFNYR2JhdXl5T2VlMEZzSUdZb3lRTXdaMDFUNHloTnN4RXdyRnJGUGhEQ1NFK3lmZVQwLytoWHVRZEYrRVRFV2pLVnZscFFDVWJOeDREcTEzVFVXVjBXTTdRanBuRFJZazEvSGx4M1hRUGFYSVo0RlJJdytDRFVMRVBudzREMWdBYXl3WHFoelpCRVBCc2VvS3pObkpibG5NV2k2b0FoUVowRkVNeHBXd0Z4Nm1Ed2xNSDVGckRtUGwvZm5KZmYvVldJbzFZMHltYVBTckRHR0xrV1dYYUZCYUw2VS9JV2tZeW5yMHV6cllyRVlzb3M2V0k5SHoyZHMrekFDMndMQXhoeGZZV056aG1zRWNabXoxU2xkMTJFYlF5dXRPaW01NXlkZDgzTUdDVE1NSXMraEh6em5PR1dUYUdVT1lsZ0t0S3VXSlVzbVZjMkNGdXNncklvRUdoRkR4TG1LTGdUTzR3bUhoNCs1dVh0cldFL08ydnppbkVQNDdJejI1VmgzTUd1RndvcmxqZGRlNTg4K3NXUUVxM3BnTHpISmVJSG9nVUFHeEhGanNzZnVkSWM2TjFUR3N6cGZEdG5GaklJUU1WZm9EUlIrTjR3SGZNQWxscUdsM25TY3RtZllpZVhnOUlBTWRQRmlOcXZrdW9hZkI5ZXNRcXdWZ1dUMHZqL25uSThQN3ZPOTNlL2dYRDBZU2pqbkNDR1FVcUtxcW5XSzgxbVJNNDVLcjlzazdHenM0VEJVTkhneTI3TXRtbFJqb2lqZjA3aWhuQzBpS3RjbkYvbWpWdXlhSzI0dFNZUnNJZWJBcC9GVElxS0EzUEgwUTZpYzJ0VGZldVBQTHQrT0JxaDAzU25DS2dXRWN6NG1jSFIyd3M3Wk5tOXR2czFXdGNIZWRKZFpzMEU5cVNCQkNobEo0R3FCQkYwSW1KUngyVkliaDNmcWtLalVtS3VmQVQxdzd5Zmh5cVB0Z1ZqZnZGUnFHY1ZCak9Lb2hjazRzWGhSSytZdUNkTnF4dDN0Tzl3N3VjZURmS2phdEFSVitCUFdqYmdpckxvbE1zMEtSRDluUmxZZFpUTW1KWXkxZEhtRjg1N29JNGZ6SjFnUGJtSXZQR042ODRpZVp2QktQUkpRTXJKQ01xYm9CdnRoUFU2Z3RvNWdPN3hQNmd4SHhEUXQ1M21GcVR3eFhHZGtmeEhpR3NqKzBrYVppUk9ZVER5M2J1L2lTVlNWWVJsYWxxc0ZNUzlmV01zOEQ0UHQ2RTBEM3BibTRTdkdLK2VHeHVJWGlLc3p3bGQyY0Y5Y3k0dXU0Sm5SbDVGSFZkNnlGZ3ZXa3lQbGdWVU9sbjJobFBFTGg3VVdFcHlkbmEyMzZRV3RGM3ZRcFlOWkFjRmxKaUltOCtUNENlSWk1KzBaZi9pbi81SVBQbm1mWnROejNwNGpCaWErZWk2UWZUNFkvR3dkMStmL2ZhVHRGbFQxaENnVFRBMUg4NDg1RDJkYUZzMEFTU1hlU3RrM1NsOGVUeng0K0lCZjJmK09BbGVSQVVEMW1ka1gwdUVkUW1HY0ZiQ2tOYlZnL3hhYmJCQm9pU2tvUjlRWWtpUlMvZ0owamhONDN5QXAwekRoM2E5K2srOTk3YnRzMlUxb2hZMTZOcHpqNFo0Mm1uVkxSblZnTXpyb2F0TVVJOGsxb1dvc0Q0OFBxSGRyRnJMZzRPd3h2L2VudjgraW15TTFMTHZWTXlzZ2hoRlRxUkJvZzBRTWpvN0F3ZmxEVnFzVnU5VVdLU1ZDQ0RpN0x1bHI4K0x6TTdPU0RTbnByRmtTVEpxR0RUWm95VXlaTUtzbVZNa3BpczRXWEkrbExtNndPbnYxZXoxNjM3dGlmSkE0bnAvU0VWU3ZvT2RsNUZFMVpweHhIVjg2ejc4RjZKT1dPQ0drUkdLcHlob3NlSHorbUcxMnVYRzJ6LzdtTGp2VFhUYWFLZlZHUTIwcThpcGhqYU9vN2l1Tkl3ZFNkcmk4eE51R3AvUEV2Y0tCTFg4emZnYU91QkVqNnRRRjBmL3lubExVTFRaYkNJTDNsbGt6WTdmZW9WbE5FQVJEUUZLWjJHVGQ0VXhpM3MyUnpZekV6MlFmUFRNc21jWTZmQmF5ejh5WEs5cVlPZW5PK01IUkR3aEVWaXhLVzk3d1JCNG9OUUtFVjJMSXJtWG9FclpNM0FxUVhiZDRZbEdqaUVTa0l5TVlXcFJXMHZGWHFBOTVIUzhjMTBEMmx5NUdXVG95WjJlbitEcXdYSjBSYWJHNUJWcXNGMnp1U2ZQUDRUZ21oaVpPc2VETFUwUkxmSTdWUEdLd1ZMNHFaVnd0NllZWVhoREUya3MvMnl2ZS82dUxJWHZWajlpRGhhc1MvbFVzZjkwb1psQTcwK0dKK2dWZzJoNXduWjZlRG8xMDNyem9ndGZIckMrM2pTMWlKNU1hTzIzSWJlVHc3REgzbGgvaGxtcTFLYVMrZ1BZS1cvLzVkMTVkcVRJc1BKa0pCa3UyNXhnSHZvaHBwR1VtNTREekJvblFCU2tzNWN3bjl6NGlmVE1OallneFJuSnhPTEtvQ3NiTFVRdjZYZEpzckJYTGREcmxuVGUreHZISDZ2RGxqQ04rQmpoN21mV0FvMkZHSkRCbHl0M3RyL0Q2N3B0TVlxUGdwbFdBT3I3UWVpQWJMYXdLM2NCblE1WFZxOTVKbnkxUEdDeGJZVVlkSjlSVnc4Zkg5Mmk3UU1ZUjJ1NlpDZjhMYjY4cjlhU2NjV1g0bjNQT3daTURidCsrZ1hPTzVYS0pkMDRuWmk4UVJ2VCtpbDNBMWxwTnNCajJOMjV3Zi82QVhYTUxUK21PNzRYK2pSbXViMjgrRzhRNDUraU1ObWdkUEhxRW9LQ2t2MytOckpXbEJqRGJiMzZmTFMrSHZpUWoxd2RvZE9tTG9JS0NUcHNQbzdSWU9sbzhDMVljeGlkTWoyZHNIMit3T2QxaFo3Yk5WclhCVFhlREtRMzFwS1l4bFo3ckxwUGJvQzVrcGhwbDJETkdmTm51L3JsVmowZ0YraDFodmQwS012V1R5eGF3VlliS1dGSk1xdjJkRERrWXRwc2RkbGU3UEdTRm8xby9KN0tBVjFySGVYZEdzdm1WT0tKR3dLVk9PVnJXZ3Vrd3RhR05LeDV5d0pLV1NDWVM2ZDNsK2tkdUQyUWo1aFZzWXVVcElGdTBXMUNDano2amFpb01pWTVZdEljdHlVS1M3cVdyUHRmeFZ4UFhRUFkvK3JpcXo3aVB6TjJ2M0NibGM4NFc5NEJJbDVaQW9BdmdLdVdkS2YrVm9YdzRmalhPSzM4cjZZTXNsdmRqdVgvcmFvc1VoUzRHdXRpN2NtdWh5OXBMSE12TGcrYndEQmdQZlAxSVlpNjkveCtpaE5PRHdqVDhiZ3dZM0FBMlpkaXUvTnlxLzh0RXYrejVmRTVLYVEyVVgyaDdDeDFDbDFSZSsrWWM2RnB0U0lpMkk5bElLbnptUktEMmxpNjNGOXlDWGo1ZWNTRExDcVNGU2swbWNxdjRMcFYvRGtpQ2RVVnNQc1BFUVU1dzcvQWVKeWNuMU5PR3lXUXlkTTYvU2hneGVzNmxCem1PZDk5OWx4OSsvQU1DUVV2bk1lQ2RKNlpYQTdTYTlmRVFESjZhRy9VdGJzeHV3VG1jSDUremFXYTQ2SERaTUtZTDlFQVdLMWdyWUN3MnFhdFQxUU8rY205MUV0bXltMGlyM09LamV5YzBUTWgwR0F4TG5tY0RQWW9CUzJWRVZNa2hBNTg4L0lSM2Q3N0d4c2JHUUMvdzNxL2w5RDVqc2Q3VkxFTW9mR0NIUk9IV2pkdmNuMy9LL3U2ZVd0RW1JQnRNYVdReWhhNWdyVlh1SWlPc0xWd0FtTWJveERQRXdQMTBYL05wMWc1QXRMZHpHTEtxd3diYi9pU05MdkZTZ1pEUjgxR0thWWtJbUV4Q0NxZFlNNnlWU1VReHRLeFlzT0NZWS96eUliUGxsRTAyK1hyOURwc3lZMVpObWRVTk05ZlFHRFZZY01acHh2ZVpjMXBMTDErbFRzRXkydGg4d2ZGcW9JejBDZHVTd2JmRzBVWXQ2UXNaZ3JBMTJXU3YzZWZ4NmpHNlJ4WkxLRHVzbTdKaVFTWmd6T1J6MThRTUdkTWxuQ1FNTmNaRy9FejV4TXRITFMySmMrYWE5VFNKZ1F0YjdzMHhGZVpWNHVLNTd5Y0l1bGNlTldJb1oxVzFMb3pSN2JGR09TalhXUFpMajJzZyt3c1hNbm9kUDRrS1FaOWNickkrZGJyK2loV2dkUFAyOVo2VHd5T3NYeGF1VmFaeUR1Y25yTHJWaUJKZzE2dTg5Q3F4ZnpDV3ViQXAvNngyVkhlaEg4d3ZBbW96dEVSZkFoYWpETWRuNzM4ZlY0T1Q4VGQ2TERmTTJMTU81dXZIT2hkb0ZMMkkrbWZGdUV6OTFHWi9VVURXQ2hsaHlad29rVXdvNExKMzZGSTVmdkxGOHJMKzBMc0RnUXlmclpjOTNaaXhTbk9zOTB3M0pwcDlzSkdVVzZKeDYrNTdBeGZBK2JvNnZZN3g1VGd1eDM3ZTQxQjJZVDE5Q0FpWlpnS2hnRmFMV3VVNmNhWE5DS2d0ZElaRm12UG85Q0VUTThYVkNwNmM4ZFJHZnhZdncrQ2VERVVxck1nU0RUektpeGVpak9xa1Jpd21XZDY4L1RZN3pUN0xkb1hMSGtlZ3NqVXhqYSt1enpnT1YxenZGa3BMRjNncXZyTC9HcS92djA0VGExS1gyTnpaSnAwbnJGbTNmT1Z5bnNSazdhZ3VaOTFhcSsxUnh1QXpPQkdNZUZKN3hzNzJGaDBkeDh0akRvNFBTR1QwS29zWHRtM2RzNzIrbHE0OC8wWWQvRUlLL0p5UE9EUkhUS29Hak9ERk1hRWhKRDNteHBtU2VSZVZpNkl2bEZ2RVdGeGx5WXVPeXFwcVFkVTY3dFEzbWRDdzMrd2pTVzE3VTdHTE5xS2xiY28rMjJKam5Zd2xHNFZjaUNtOFdTRkxJSmdsYytZc1dORVNTWXBPaHZucUdQNWRxQW9OajY5TC9QLytNOUdqOWRSMTFGOEhIa0pVdWJPcVZISWlpWTZPRlN2T1dIRFdMYW1vYUlKbll6RmhqMjMycHp2c3piYlpiRGFvVElYTFRzMFV4R0Z5S1pGaHNObWpuRTd6VElwWUx4ODJCckRqMTJRektXZThxVEJZUW5KczFCdnNORnY0bFNOZzBQU0UwTXNYQ0lrNUhhdEtxRHV0N0syZEJOZlo0MXhRLzNqYlRKRWdzK1Vlek42U3BWUFFuakpJd2twQ3pZQlhxaFJUaFRWcUxTZExNbVBGdFJlS0FkaVB0dWZ5dUxDK2wvdjh0aVhhUkN6am9Lc3MyWUpvMStlTHIvdzYva3JqR3NoK3FaR0x5SGpDKzVKTmtvajNNMklibFc4Mjd2eVhFV0FaMitmMUF2cTVmRWxFdGZCSWVHZXcxaFUvYTZjRFRDbVRyekhqUzJTeDVQS1BWMmROUmZMVDkvbFZHUFdGTW5yUC9rNHZOMlNNRGw0dWd4ZklTYk5WcWlXcGdLYlhEelZaaHFlZ2xBZHRQM2ozdXJTOUR1VnExVkxYTll2RkNvTlRlZ1lPTWZtQ1Avdm5EZ2NoZEd4dmJMT2F0N3ozMFkvNDlwdS9Sa1dMdDQxS0RtVVFvenpRWklWczBpQ2hZeVJoeEJlcHNORkRXVlJlNS9SOHlXUnJncGpNN3Y0TkVvbVk1MHhuaGphc2dFWTNRclJRcDJZWjhRS2duVzVVck03VTdXZm1EREhwY2F6c2hQTWNSK2Y1NGlEd1dhR21taFVxUEpRd1JHYlRodVdpVlkzVHBGUU9qeUYyRVlzbkVUbHZNN0RBSVB6ZXYva1gvQS8vL2Y5SVhDMloyZzE4VlJQYXlHSTVaM3QvazdOd1JuYnFiMDgyQlJSVStPeXcyYW9oQTZEYXRhYnNSWUlNTm5rYU15TjFrZC81OWIvTHYveXozK054ZXNTRURTU0FWUVhQa3FISkdLY1dvVG5uaTAxT28rdGVyVVIxTUsvRXNjMG1HV0dYWGI3N3RXK3pQZDNtL0pHS2RZYWNFWnVIUllrbzcxbEk1QUxRbmZTTm1wYk9XTEFXZ3luM1FVYTgwTlNPZytNRFduZEtZTW1DT2UzRVFGcU5hdXA2L2EvUFhMNzRqT2pucXdLWnlDcEZISTRISlA2aS9mZE1xZGpmMm9HanpPYldGZ2RIWit5OWNaUHpjQVltVWt0SDcyNlZ4Sk90SjR0bG1lWk1keHBPRjZjMDlaVHR1STN0SERmWTVNMzZxN2pVa0swbFZnSmwwbVZ5SWd1RWxIRWlDblN0SWVISW91WUtWaEtZanRQdWpQcHV4Wi8vK1Y5d3dobE1IYXZWcWQ1Nm9yc2ZoM1NsQjFOWWtmMStPNEhZNGIwKzUyTFNNcml0YW5MWGxmdHZORGNmUDl0NjR6QlIyb0V0VjVveXRpemFHcGFoU0kwNU1qWGdsMEsxdE5SWVhyTmZZYmZhNXVic0JudlRtMno3YldwcGtBNVNwN1F1SzBXQ3p1UzFSbS9Sdis2ZEUvdG11SUUxWWZSdWJVbmtXaXNqZVpudzFsSTdSeE04SHN1Q1JHNE1NZW80NDV4QTZQaVVFeDc3am4yYnFMMGxCNVVZODc0aWhVaElpV1phMDBsSE5yblExVFRyYnJMRlpJK0k0ekFsTm5mMm1MZW5XTCtCN3pLc09sNW5uM3M4SkZ1WTkwbUh3Z0Z4UVo5YVBkMnR2VEJFdXY0SnJoenQxRStiMWh6Ym5pYVN5aWVJM3NrOWxhQS9kUW5JcnR4L3haUXRKU0JJZVNxWmtxbTlidmo2c3VNYXlQNUN4S1hNRGhRdzBHZmc4aWpqVmpnOG90OGZNcEhsYysxYXowTkgrZVdaK0lXQ3pKRDAvWEpLeTEvRU1zYUoxVjZPeFpXZkRldU1CR2cyNnpKUGJMMyt6MWtnZTlWSmVWbjFjam5IVVBISmc0LzR6dGQvRlZJbTVZQ1RDaXNlcFBnclNVL3U2Lys0bDl5NVdFcnNNMHRibXpzRU9wYUxsbmUvOFMzKzJiK3lWTTZ4WEMwdW1JYzlhemRNQmN1emdNbXdPYW53eVVNS3lwSE9ocHJKaUtQV1ovSDZKb3FpZG5GaERldjBoOFhqOGZST1l4Wm9sNm9Pa1ZMZlpMSCs5b1gxdUl6a3lHazg1c09IUCtYcmQ5NWxjVEpuMDJsbVozTzZTZXkweXpvYlBUNWFKUmo1Mnc4N0tWckpNR1owbjVUdTl3NW16UVp2M0hpZGQxLy9GbWNmbnRHV1RORk9zOHRSZTFnbVJRYVJ1SjVJZUxDMUl5OHZ6bmFHNjFIMHhFY0NPK3p5amJ0Zlo2dmVJTFdKMmxWVTAxS2VMeGx2SzVCSzkzWkdBYTBoWTNMR0dTazRVNHJrbVNtM2VjSVp3M2w3eW1TejV1TVBQaVQyV1M0Smw4aWgvVm02NGw1ODZ1TFFjeHROSmtyaTQ5VTl2c2MzMkFnMWU5VStZUkdZTlJ1azJIZktNM0ExQnNrazhXU0Raa3hGZWM0VkZWWHIyTEhiM09FV0cyWTJsTzR6WUV4ZVp4Ukh4OU1hQmZMcWxXVVJrOHJqTTJGYzRzbjVNY2Y1bUpaQUVqVXpjV2t0V3JDK0pBMXJQZTV5bmZVMnVGbXp2U0pna3NPWmlpNExsVEVNYlpuUG1yZy9JNUl4U3ZXeEFVd2lTcWJOaFpLQS9qdkxjeVp0dzI2N3c5YlJObnZzY1hOMmcxdmJkOWpidmdIbjRMSVVweXZJV1FZd0t6M1hmM3ptUnRsSE1aclUwRjhzM2lnUWRPS294SXlQYVJueEFBQWdBRWxFUVZSNHFISGdYN2d5WVY2U09BcHpOdGdnNVpJZXhTbFFOYWpjV2I4ZHBuY1J0RnBkd1dMRWtmR1l4dEdLSlJsOUZsUTVzMTNOMkRZelBwRlVsRnRHdTFGdXA3NEphNWt2WjlQN2lhSzZ2elg0VWpUSzVXOXlPZFBheXRiaDBTY1JCY3pxUGFiS3NiQktlZFRPWmNya0cycVVpcUVPY2RmeFpjYzFrTDJPNi9pU3cxV09HQUliWnNyUGZ2WUIrYmRWNmlXbWhEWFZrQ2RiajR1V0YwSFFSdFJLOHZqOEJGYzVidDI0dzkzdHU5dy8vZmt3UlZMbmVCaG9CWmVveVZQdldheWlyckgxZEpKeE5HeXp6Um5Mb25uYXgzcWJlaUQ3dkdxN01rUXJFaEdQWldNMjQ4bEMzZUNjVTJwQnZxcGFNRXpBaEFVTGZ2Q1R2K1N0dTI5clIzcnFNR0pwbW9iVCtTbXU5a2d1RXp3UlRDNmlQV1p0U05sUEJ5NTNocXNGcjFZOWRyZjMrT2JYdjhuUjJTRS9PZnd4RllVbWh5VmJvV2theEFvaHR1U1FJRUZlSmphMlpvUVFpRzFFQ3AvT1NqL2dXaHlXTjdiZjRKdnZ2TXZVVDFtY3pLbWxvWEkxb2UxS3h1M1pSM0E5a2JYWVVsS1hFZUF3M2pGUEMySmorTW5EbjdFaTRJelZEdlF2eUpqbzRPQ0FzMXR6dHZNV2ZscXplTEtnbVUzcFVscXZveEE5KzB5Z0taUHpuSFZDMHZOcVk0ek10amI1cXYwcWRWWDFyZkxQaVI1OFhnd3hTcjh3M25EdytJQUY1L3BCb1VMMXdpTU9pc2tFWlphUjErbFZVVTVzaGFYSmhwcUtnR0J3bU9ocHFFaVNQMzlHVHRSaVFsS3BnSmcxTno0SXhLd2dNZ0Fyampoa3dRT2VzTHM0NURVV3ZMa1plTjNmeGNiMS92ZEdLaS9TaE5RYlI2aWJIRHFSSzlReDQ5YVcxem1QS1VkOXhqSnlkSHJFYS9XdE5UaVc0a3BXbWkvWFhQK25sV2VrVE1vcTcwbXh3eU00NHpBeE01dHVzTGQxQTNmNm9WNCswbk1KOUsrVGcyVUM3NkRUMmJMT1JWTXVuR2RYRERWTWdkYTJjTERIM1JlYWUrMDFJUlQ2eW1oTGxjQXlSZTlVTUlSU3RmRjRJcEdPcm54Mm5aSDlzdU1heUY3SGRYekpJUVZWaUFpZkhoNXdkSExJM3QzYmhIbFhlSDk5UnIwMHU0ankwcUF2VkdyMFJnTkc3QUFwVjhzbHNZM2MyTC9CNGVJaC84bTNmNU9ILytvVG9HTGFWSnkzQzMwVW14RXRRWkVHQ0N6T0k0MzFOR1pLakpsdDl2aWJmKzF2OGZhYjcvRGt5UW16alUzRy9PakxVang5ODlWVllNeWdzbWFydkNJNjlVZjYzZC8vcDZ6eW91UkZLRm5kTWNETUYwaU5nUlh2ZmZ3VERrNGVjbnZqTG1FZW1Qa05wU0tJMVIyTE5jbkc0Z1ExR3FyTTFkT0J2cEVrR2Foc1JiZHFRUXkzZDI3eDNXOTlqL3pEekUrUFA2Q0xnUWtOclhTMHk3WXNhMTFudHM0d1Axa01iMmxQZmc4UURBME4rOXppbmRmZTRlN2VWeUFJYlJ0b3ZNRWFRd2g1Wk5GNWRXUlVYY0VWQU5zRGRvQnNNOEZsWk9LNWQzeVBKNXpRRm9laTRSeS9TZ2hnRFBNODUrR1RBMTY3Y1ljMkI0TE5lQ2ZrSE1kK0JaZkppSHFzalNIR2hLOXJwYzZrUkdVZGQyL2RYbjlIMWxPM25wczlQbStxL2J2T3R1VmlYUnBjSmxkd2NQeW93QktsYm9FQ2ZFSzZBTEhTdURwVkpnSU93UU0zcWgzMk52WXdDNHNFdlI4RWkxU1hXZFl2SHAzditHaitJWE9pQ2pOb1VuT1FoeFlMbmRYOGQ0ckNLcmZVWkJZODVtelJjclE0NWZidGZlcmtCbldWbHd1TEU0T1VxektSMUFiYmlmS1J5MytTOGpBaFVYcVdJQVNPVHAvQUhiREdrSk5Cb2hTK3JjTmFwVXRra2VJK2RqbjZLa3dreFJhVkhIWjA3Wko2T3VYbTVtMTJUdmRaY0lJUm5lemdFdjJETDBwcEdRQ2R5eGhWc2JCUnVlSXphbTdWdDNqbnRhK3Bra2QyS2s4blNpWG9uMU5pNHdXdDdQNzVZSXFUMkhLNXhGV1dhREtkQktReVJCYzVPRDdray9uSHRIUXZlY3l2NDY4aXJvSHNkVnpIbHhrQ09hZ01US0REMHZLemozN0dPMS81SnFaU2tKdEw5aTZMbHY0WVFDMXdvYkJWMm5YNmdWME1LV2QyTjNadzJXR2o1emUrODV2ODVWLzhXeDR1UHNSMGFRQnM0N3hDUDU3M0FHTG1OMm5iakdQQ2IzNzN0L250di81MzJkMjZTZnRheDNMWlh1eU9MZ1BCd01WTFZ3UGNQcXJHRTEzZ1hNNzQyYVAzc05hUkV5cDZYNVRRa29EcC9lUDc3ZXVwTldRT2VjeVBQL29oZDM3OWp1cHllc1A1NFRuVHFmcWo5OW5LTkFMYmZiUGNJQmgvZVJ2TFlHY3QyT1FJcTRCdkt0NjU4emFWcmFoL1dQR2p3eC9SRWpVVFdncVhWZTIxRVNvRVFneERRckp4amRKRjZLMWxIUk5tL05iM2ZvdTNicjdOek0wSUlZTHpPRlJ5eVp1MU9QdFZ5aEs2dVk2TXBSSXdTWENpRG56Skt1TzFOWUU4dGZ6ZzM3MVBoMG9WNVp5eDNwQ2p2REkxeGpvZ1p1NC9lc0N2M2ZrZTUvTno2bVpHSndGc1QzZlJreWttalNZUHVUQmtORzltakNObjNkZWNZV05qQzBreWtwbUNOUmw3ZmM2dVBDNEdnc2xFS3l4aXl6R25aRExPbU1Ib29KOWc5ZWZIbFNVbUxFVW1BUWMwT0NaNGJtN2U0TjNiWDJjemIrSGFtcWxzVWVISXNYMWhUdmpsV05RdFlYN0NRMW82SWgyV0tGbTNjZFJ6RmlVUmZZSlUwU2JCa1ZnUTZBZ3Mwb3BKck5RUnNHUmp4dzJxendPM091bDFhbTVsMTdQWWJGU1FLcFdwWkI1bDcwTU9lQnhDNGpTZkVDV1JuY0Y0Uis2U2FnS2JYT1FaUFZrU0lyYlFZaWdVa3p5Y3Q1eFVRTXNaTllySUllTTZ5MDY5eDF2VGR6aGMvcGdhYUZNTE5oWWcyMmw3U0o5ZXpVQ0FwcXFSbUpoUXNjTUczOWgvbTl2MnBwbytTSTAxRGl2RkM2OG9EMWhhc29tazN0Vkw5RDcyUlpONXN1bkFKRG9KQkIrSUczQ2NGNXlmcmNweitUcCtFZUlheUY3SGRYeVpVWkNaZDU2Y3RKSG4vWisreDEvNzd0K2c4ZHVhaWNDT3FJeGpXa0ZHbTdyaWtQVzdzR2hSd0RTZFRIbjA2SURwNXBUTnpidjh6ZC84SGY3eEgzeEtrcEtOTFl0emwzQ053VEkxR3dYRU50eHlkL24yMTM4Vkx4czgrUGxqS2xNeGFScDZCUUFZWnpUMEhaUGxxVTdwUHNRS3g4ZEgrQTNIYVhmS2grOS9PS2hnbUxyZ2lUNlJKdXRHRE5OekZkR3NZNWRiZnZpemY4ODMzL29XTjZyYkpKdG9ROHYyeGpZeDlwN3cwSVArdnV1OVZ3THBKd0Rackp0QkFHeTJpQkZxMjJDd3hCQ1kxRFBldXYwV3RWVHNIOXprKysvL0crYWNFMmdCd1haRnhnamxmSHJxa3RXS0NJNEd4NmJkNW8ydnZzbWIrMi95N212dk1va1Q0anhCaEVvcTNheVVDNjIwUDU0TW1mTXhjSkxDOFRNWm5DUmNWcDZycWxNa2xxYmx5ZGtaNzUzOG5Jd3JCZ3BSdFdCZnhIN3ZNMEpFc0RnZWhRT09WcWRZcVhEMWxCeFZyc24wR2ZSeTNhNkx0ekpjSTJQWnRLclNaaUZuTENFR2xjb3FjVlVDdVQ4U3ZidVhVSnlhckJCYzV1RHNNV2VjbHduTG1qb1Frd3lEWHo4NU1xeTUzWDFaM1pVcG5ndUdUVFBqaHQzSEpzKzAyOENMSjhRRmZFNldwRStXTjZkM3ljdVdRNDZWSTU2TkdtMTQxblh3SHF3Vk8raWloS2kwZzd3MkFYbFIvZDRMMjRBcmU5eFBEbFFWSWhDTEhmR2xLSjYwR1dIQm5OUFZDVHVUYlJvM0lUc2hpNnBUWkRFamNMSE9nRjZzekdSUzZxaWM2dW1aREM1WHNJTGFOcnkrK3lZZkxaOFFPRUt3ZENHVXJLd0JvdktYeTdFeEdXeHJxZkJNcWJuTGJkNlkzR0VqYlZERkJwY3FWWDRZVXQ0V1E4U3hRQ1FTalNkWXpiK2I3S2lUeFdldzg1WWNXNXhOMUpzMUN4Tll0Z3VPVDAvSGhhSHIrSkxqR3NoZXgzVjhtVkUwVTJNT2VDeVJ5TWYzUCtTVGg1L3c5YTkraytUQTVLaUppSkhYK0ZBYWUrcFJta2NMdGpoaldaNjEyT3lRRm5DV2I3MzFIYzZlL0pkOC8wZC96SUcwMktjR0xJdWh3dURKVXVHcDJPVW1mL3R2L0YzZS9zclg4V2FDbWRUVXZpWjFZV1FYU2VHZzJoR1FMYTh5NXFHV0xaZk0vdXdHYnROdzh2aVFCL2NPeWtMV0Fod0RaN2VNdGVObFpESnRYdEhZQ1IrZC9aeC8vY00vNCsvOXh0OW5GWmZZUmt1bGFqVlp3Q0JHbTc1S3N4UkcxbzJSb3hnTVFRQ1ROTFBsOFNwRmx4Tk4xZkQ2L3V2czdleXp2Ny9QZzBlZjhOTVBmODV4UGl6bkkxTlJVMVBSb2MxcmZRYjIxc1l0M256emJiN3h6dGY0NnY0YmRBOERObGpOamlhZ0IvNGltR3l3NW1LRHp1WHpwSzVlMnJha0ZJTklNa0kya1d3am5ZMTgvMGQvemlrTEFxRUFGYkF4MDZ0UXZRcVdsVnljbm1qNStQRW43TjdkWnhFV05OVk1sVFJHUk9tTTFjYXNZWVV5T0lDbGxFQmdZeklsaEtCeVltYXRIakJrNGkrdjM5amh2dWdiNlpMSlJKdHBmZWJqd3dlMFJCeFcrZFlHZXYxUGMyRmJSc3MzNndTd0dFT1d6T0o4U1hlZUZLZ2RHZkpDcyt2VnpvWXFZbnlPcU1UeXp1N2J4TmlSZzNER0FrTkVDTFJSN2IrcGJRR3pSb216UlhHbFFodVp2TEdEUXNHZ2RmM0NIRmx0ampPaURVdGloR2hTeWZXR3RaOVdmL0RMVFo1THBqWVMrZlQ0VTNiMmR0bWRlR3hseUVsSVpSdGxjQjFNNjBsWVdjSXdHVE1aNHkyNWFETFBtaGxkQ09SNTRzYldEWDVsKzF0TXorL3pZYjdIT1V0eUN1Umt5YlRJUURxeU5IZ3FIRHRzOGhxMytkcjJtK3lrTGV6Q1VrZUxTMzBUWHhHRE0wcXI4RUMyaG16QldLc05hT0l3d2VNVGJMa0pLYzFKcmlhN3pESWRNNStmbFJ4NmZ0VjU0SFY4UVhFTlpLL2pPcjZzNkxsL0ZpUUtkVjBSdThoUmZNVERKL2Q0NjQyM01CYWNXTElwNWd5eUhyZ1ZJUFJJTDE4aG5KN3h2dWI0MFNGdnZQVTZIei80T1pObXluYTl5My96OS84aHJqTDg4ei8vSjJSYStsR3FsNFl5cWtxS28yR1BHL3p0My9vNy9NYjMvZ1pobmxpMWN6YW5tK1JPOEZMcHBvekFvaTVISHkyNXBIdlhEa045cjdqQkdLRnJPNHlENCtNVDdoM2QwKzB3aHFhcGFPUEllV3EwYjBQMkY2VkZ1SWtsTGdJL2VQOHYrVnQvL1hjZ0dEWTNkdFRoeTZqVnJNdGVDK3NXc3VrenMyV3hvMmFWY1JnVUZNUlZJdHVNdHc3Smxod1QzbnAyNngxbXIzMmJkKzY4elc5OC9UYzVYNXh4ZG43Q3lka1o4OFVaYmRlcDVlcGt5djd1RGZaMzk5amUyTVphVDJnRFR6NTh3aXh2TW5HTzJsbnQvZ2FjVlZwQmJ6QmdKWk50SHJpR0lsYkxzOE5Xcm9raEtuVVV5VGJSK1Vqbk8zNzQ2Q2QwSkNLQnliUm10V3kxaWNsWWxpOGp2ZmVNaUNXRGQrL2tBZC83K3E4eFA1d3ptVTJnQlpGY3N2UjlKcS9YUE8yVldEUWpHMExBR0VOZDEzUmR0N2E0Zlk0OW9KaFNUVERsS0lpUURDUWJ5NzVISHVYSEJFWVNhNkt1aE1rSTRqdzV4dUhTeXYyMTBBTnYwZTU3dGVSTjVHU28vWlJwUFdNcmJlR3Q1eVROK2J3c1dSTTlkM2Z1Y25KeXhGbVlvNUFzSUxRWUVsMFFiUncwYWpJaFFYMm5QSllKRmR0TThGWnBCVDJRSFZ3SXk3L1BzbW5XVExaQjl6UVFUVUQvNndxUTdWT3BySjh0UlJJbTVzQWpIbk0zbnJGaHQ2aThKNVBLdmE1ODJhZHI3ejNmdlZSWG5HQzlKWVlXYXl5emVrSzNUTWc4TUowMWZPZnVOL0VIRmVHNDR3bFA2RmdOMG1XYUYvWlVORVhsd2JQUEhsL2IraHB2Ym42RmV1bXBRNDNMVGgzUnhKT01vUmRDTThaVGl5KzNmWTFJaGJFVlJtcWNLZmEwQ1hKeVdBa2tFZWJMTXc3T0huSEljVGxDMTFEMkZ5R3VnZXlYSFAzTXVYL2dhSWt0a2JQQjJMN2tJMXpVTjJVWWRITnhsREc1TEV0Z0xMK1ZUY1lNRnF0eVlaMi9IRkdPelBnQmZ2bDNXUisvNGRqSnhXUGI2OFlPcjJVWnhpclBWRVJ3T0VML0YxOUVzd3lRSTJ4dVRUay9YYkxxbG14Vk8zUWg4VWQvK2dkODg5MWZ3WWNKZDIrL1RuZWVtSjh1Mk4yNlFlcGdjYjVrWTJ1R1NBUlRtakpBczR3NTZZZ3NqcTdyMk43ZTV1VG9sTTNwRnJFTk9CcTY4NDYvL1Z0L24yOSs3MWQ1LzZNUGVPKzk5L2owNFVNNldpb2FkbWQ3N0c3dDhyMXZmWTg3dCs1eWUvY3VsWGhDVGpoblNVRjVjRkt1UHoyMkJpT0ZwOWVuWHpKTUp4Tldxd1dTQWszVHNGd3VpVEd3ZjJ1ZjBIWXMwNXcvK0tNL0pCSFpxS2QwWVU1NzNxM0I2N3J5ZWZIWVVjNUJwZWZwS0IveWYvenVQK0lmL0ozL2psdTd0em44OEpBNzIxOWhkZFlTZ3E3Yld0MzI2QUoxNDhtaFQyMnZ6NzBNMTRlR2Q5b0xMVGtWYnArRHJHNTMzbFpNaldQcVoreHU3OE4yUC9qM05BZ05JMVpwRnEzU0FCcVpZSnpGaTlVcUtWbVBtVkcxaGloeHZKY1hiSkw3NnhXZ0M1SEdLaTg2RnFQTjdCS2Q3MmhkeHovN2wvOGNaNjNhNnByTXFwMXJCaTluNGhjQVl2dm5qY1B6WWZjSlAzMzRjMzdsN3JkWW5hK1l1aHBpSGpLYklwckpFeEZjWGl0N2RrbHdya0pFV001WHlqZk9aUkowUVM5cW5TbnRiUUZTVnU1cjE3VnNiRzV5MXA2eVNpM1ZiczNIRDMvS0VlY0VNaTN0Y0N4VEViZVBLVDc3SHJibEZxb3NjU1djc2VMSi9KU3ZiRVlhRVVJWHRXSE1hYWI1ODRRVlJ6cnBlR2YzYTl6WXVNdEh4L2Y0YWZnWXd6azFFY0hRMGxHSnd3VTFTZlZBamVNMWY0ZTNOdDlnWXV1MVFzQW9QZ3ZBOWlHaVNoR21nVlZxYVc3VW5PYkVoMmNmbzdyWjVUNFl6U2V5UUNzdERqamlrQ2Z0WS9iY0hqQWxkNG1KbVRCdGFpUmRuR3pab2dKUmxxSlVFQWVydE1RN0QySll0aDJWYWRodUd1SThReGQ0YTNLYkczYzNlYlI4eE1PVCt4enhoSTY1OHBtWk1XV1RHOVUydDJiNzNHejIyREV6cHFGbWtpcE16N01lZUxvV1RDSmJzRVN0S0JqS0JHZ05zL3ZmTzBra0g0a3VjSllXUE82T09PRk1yVFZjZWdGVmpldjREeEhYUVBZNnJ1TkxqbFN5UXFEYXNZbk1rL05IZlA4SC81ci8rci80Yi9uMDNpZk02aDEyYit3eVB6ckZVck8zdDhkeU5jZFlTNi9EYXFSa0dZc3VLcVBTTFBTbFJJZmdJSHNrd1Z0M3Y4Mys3aHY4K3JkK0IyL2R3RmMwb3JxWjgrTlRObWRiVE53VUlsanZDaWdyZytlb1JJaVlVdXFsQUQ1TGtrZzBBZkdaTmdXY2NjeDJaaXlYY3g0ZVBXQmpwK0VILy83ZmNkb2RJaVRtM1hMTkMrempNK1pkaThVU3NycGpQVHovbEwvODRNOHhieGx1N3QvaDBlRUIyODBPMjlOdHV0alNoWUR4NEwxWGViUHhhb3doa3dkYUJGems5SW4weDFPUHR4anRoTzdkdG5xWnRJR0RTMjlwV3BRS3N1bDdYZFpOVEFXb2FYWlNpdUtFREg4L0hOdFIyTUk1elVCbG9Lb2M2b0MySXBsQThvR2pjTUw5MDhjY3gyTVd6QUhWS3RYOVpHVC84SXBoSUV0bXpvSUpVKzZkUE9EdHI3eERKVkFsVXlUQmJLRTY5N0JHN1VZSGQ3Z3JnT0NhT3ZQczBBeXFBMk9VODV1Q3JzVm56c0tDeC9ORE9sSXBrcWQrYzR1OXJCMWR1NnduUytPRFlxQ05hc1F4cCtONGRjYjVkTVgyZEE4YkhHM2JLUSs5TjZmaDVWNGxXOXJqaU51b3ViR3h3ZFpydTl4dVgrZlIyV09lckU1WXBnV1BlSXpIMGVCcHNHd3laVyt5eGMyZGZXNDBOL0R6Vnp5TDFtSzhZeEhPU1UwbW1jaFJlMXF5N0dGMGZpNWVnNExtY0ZzQ24zWVAyVjVzOC9yVzYxUk02ZVlkSmdtenVpR0hrdlZsVlBrWU5OTDFMR2FqRG1NMnVlRUlXYkg0cEp6cEtUVmJWY05lMWZENnhoNGRLOFFsOEJYemxjR2Foa24yVEtpWUpFL2RHVXcwNUJpcFRGTzJWMmtsWW92TG40Rk1KSXh1UXlrVDh1UlU4U1NZaktRT040TXdnVk01NTFIN21NY2NLbVhJaTg0NmY1bnlRditSeGpXUXZZN3IrREpEb0YwVnh5SU1VZFNtZGNrWmYvYjlQK1kvL2V1L1JTdUJtZDhreUlvMkxkbXNLNXdYUWdoVWpmSlJEZW9IRG1XWUxPQktSb09HaUMwQXlnSU9reDBuRDVkMEdheWQ0T3VLcXFwQU1qRkdKRVZ1Yk4zQkFHRVprWmh3eHVPdFpuMWppcXIzV2lnT1VySkF2Y3NRWk56RTBLYVZsaENubG1VNko1c0tPeE9pckhpOFBPYVAvK0lQT2VFSmxiR2NTMUF3MFJNNE5ZbDNZYkRvZnhTanFnSzVvTElraWNQMk1kOS8vOTh3YldiYyt1NXRtQXZSUk5xOElrbTZhRUZyRk1FTUpoTjl3MHZSbUgxYWFhRU02d1ZJSW1qSnNrUVBsdEpBOVhCcmJuQ1JBbE9ackxYeFF1Wmk2YndmVERYYi9IUzJ4NHlPaFRWUU9ZL2tTSnRXUk5OUnpTd3JtN2ovNENIZi8vZ0huSEJDMjROWVV6S2krWXZ6SXVvVGY1MUVLdUREdzAvNDFYREtudDBnZFMxZUppTlRFbHYyVHkxMG43bE1XY09jOGJkazlEcmVmbXNkR0VzT0VldlU5dlpvZWNqOTg4ZTA1TkxnbGdjU3huREV4MkMyMzhaTFlGYXY0a3hMNGtIM2lOZFdUN2l4YzRObW8yRzFPcWVod2cvWjBKZDloVm0xcWU1VEMwdGRPMjVYTlR2NzIzd2xMRm5HSlR1N1c2UVVWQ3BNQ2k4V3F3WU5TMCtWbjU0RXZHZ29OU05oS3NjeXJEQVROV0I0Y0h5ZnRwQUxpaDNFNkkvVzJ4NUxwdnRUUG1WNk1tVnZlNC9aZEVaWUpsWmRwTDRFTHo0TGNxZGVvRUl5THV0OUZ1WXJ4R2FNU3pUT1VQbUc3Q29na2FYaVpyTkR5aDRiTXlaa2ZBY3VpYW9Pc0w1bWtzM2xIeVFyUmFrbEt4QkZzN1haR0xLSit2enpGcEhJeXF5b040U2xYM0QvOURIM3U0ZXNXSUdQNEEybFJIY2RYM0pjQTlucnVJNHZPWlJLWnBRckZrUHBxM0E4bkQvZ2QzL3YvK0x2L2ZaL3hXVFRjL3pwRXpabnUweXFpdFBUWTZ5VURONVRjZ1ZsMkpaZTluc0VaZzJGbEtzTlk3ZDJidE9HVEFnQlVzWmt3ZUpWbk53Mm1KU0lNWktDTmpvWkI5bDdrSUZwaHZJZG5aYnV4QTcydVFDVFNjUEoyVEZONC9DTjVlUmt5V0o1enRiV2xNbHV4ZmUvLzZjOFNCL1RVYkpwdll0UVlKMEl5cllJa0VHZitlejNXZVc2dEh2WjE1YTJiZmxrL2hFL3Z2ZERidCs4elRmdWZKUDI4WkxGWXM3RVRUSGVrRk1tcHFDZy9abGw0Vnl5TmhjTkNTNGNhckVYc3JlOUdNK2c0aXVYcUFVRndQYmU5RklhdVhwWHRteWtyS3UzVGI3SUo3eThGVVlzbGJQTWwrZTBlWVhmTk1nRUhzMlArZURKaC94ODhTR1JvR0RabExhdXB5dkZyeHhLYWNuTVpRVWM4K25wQVh1YmJ5T3JwRW9BWlFJbHBzODE5ek9VcXpPeGN1bjNDK3NacjlkWXNxemR6RklNMk1wZ0s4Zkp5VG1ISEJIS0VSZ0xBRnpnUlk5NTVlTUowM2p6S3RYMFBlU1lUMDd2YzNmekZuWHQ2WnFBYzJiMEJ5Ly9Pdk5idEtGak9WOFM1aEVhUTkwMFRIeU5ORHVZRG5KTUdFbDRESldwY0JseWpLUk9NT1pWaHZCTWx3TDF4Q3Q0bkZwT3d6bjM1dy9wQ01TaElnQnJHMnY5dTBLQUk1TlpzdURUY0ovYnB6ZVo3V3hRTnc2SmhsVllVUm03dmg5S3FPeVhUc1RXamFKV2JaZHRIalJjamNDa3JzazVrcEp5clkzVXBKUkpFc2xKRUorVXNwT05QcnV5VnBXY3RYaHZ0WkhPYUJZMlc3MnZ4S3l0bjlNZ2ROemY1M25JM2tZYm9NbWN1Z1VIcXdNK092dUV4eHdSQ0R4anBuc2RYMUpjQTlucnVJNHZNYXoyMEErQzVoSDFzSGZlRUdQZ1Q3Ny8vL0cxTjk1aDkxZDIyZGl1cWNVU3dwSVVJbld0WlRNamRpZ2JyeVdscExnYktkQXM3K2hYQUl4eTFrNE9qN0JXTlNoVisxRkptbGtTSVVZbVZZMFhnM01lNnlybHcyYkJXbkN1SXVVNFBOTjc2YW9lSkFrUVVqY28zblN4QlJlWlREeWRMUG5rMFVmODJZLy9tSllGaVVRbnFnOUpaYUJUQnlYSnl2KzE0NUxzQ05pbHNPNk1ENklndUVzdDd4MzhpUHh2TTV2LzJSWmJ6UTR6djRsMHd2L2YzcHMreVhHazZaMC9QeUl5c3c2Y0JFRTJqK1p3dWpVejNUdXpra1ltalRReWpVWW03WWY5c0xiLzNuNWZzLzBEMXRaa2trd215U1NadW52VXpXbE9zNXMzUVJCSEFZVkNYWGxGaEx1Lys4SGRJeUt6c2dBUUFBbXlFUStzRUhsR1JuaDR1RC8rSHMvcnZFT1pXSWZkT1VjaHBpT2p2WGtwU25GRjIyaHZHZEFMTGVqYkRQdnBRclRienJLYmp6MEZrS2dvUUIrVXBPU3NuQWN1N1JZeUlVNnh0dGtLdXhxK0M2NUJLMCt4VlNEYmNIZHhuNy83NmtNK2ZuQ0RKVTBzZ1VyQTZGNDRueUpaSTNVTTBuN1crVmdCaFVZcWg4ZHplLzhPZjNMaGh6RUJ5V1ZKdG56dVhiaUdJdUJWbGtQS2JabTJhUkdnRWxFbFBZN04zNjBRUW9vZE5scmp2TVNGRFo2anhVazZlMms5RlNzUVRWdFZKUDJreWJ1VktMZ1B4TXRzTmNFSHFsQ3pKM2U1UGIvR1pMZGdkR25FdFBIb0RZVWVuZ1E2YUlLck1hTFpIdS9HVXNvMCtNWVRHa0VrVU5XTFZsb3JLSjJTbFJSS2pUQmFyZWNuZmkwRUJkN1hHS1V4V3hadkd4NGVQdVNFazdUOGtXaHlWeW90ZnVtdEFLSXZvYkUxNGhSSEhISGp3VTEyOUM1dmJiOUJTWUU3ZFZpclczay9XSmZmQWhOMHU2QUQ4Q3BxYXFPN1JEU1J1RUEyZ05FRnBZMVZEdzJDa21pTjF4cEVTZExERlpvUWFGS3ltYVJRQXQrN1RHM29Ta29HMVpKL0w4dTNCYnhwTUR1YWgvTmp2ank2elZkK0wya1ZFRHZLVUF2aE80T0J5QTRZOEFLaHRZNjZrYVRrRTJMc21RdHhDcTZwK0UvLzVUK3lVMTdrei8rWGY4ejBRY1Y4V25OeCt5S0VPRW5rcEptTVRpUSt1L3N6VVpOa3JhWDl4c2lBMW9JV1JRaHhVbzU2bENhNjJvSkhLNFZPZ3VzK05Eam5DRUZocmU2MFRpVlpKQ1htWHVlSmFiRllNSm9VZUdtWUxVNFpUd3EyTHNWU3ZQL3Q1LytadmNWdHhNU0lQQkdnQklnbnBYVFVaTldwWG5wdW03NGtWNVQ3eW5KYXhCRk53WEZ6eEcvdmZzREZYMTdpTDM3eXozamwxV3RVeHhYTDZZSkpPVUdzTUoxT0tleW1PcTBweEFEUVN0cnMrRlVEVElxNWE5czh1a1NEaW9tQmttYnNtRlh2TVVFUmRFeHlpb1RWdG1VNnN3VVd5UllqSHkzYjZWaTZvZ0lyUFFjbDRGM05lRExDN3lyMjZnZDhjUE1qZm5Yejc1Z3lSWmxJQWt3aWp5SFFaZVVyWWx5RzMyVHhmWEpJNXZIS2c0a0xqM3VIZTB6bkoyeXJxOUg2MW11anZGWDk1VUZhQi9USmV2OXNNL2xwSTQ5Nyt3a0tYUENNZFN3bUlFcFJWUldIcDBjMDJicW1BeUdRU2xhaytNNjFHT3lvdWJ4cUkyN0pyRzhRWlhEQU1hZmNPYm5GeGZHWUgwemVTRnJIeFZPM24vZUNNZkdlMDREM0ZvSmdWVlQxMk4zYVNpUVd2UGU0SmtRMURxM1JOaWZRUGNQMXM1cWxyNUFDSHM1TzJEdTZoME9vYVpKbHN0TmQ3WDJydFZvdXhhZmJydUV1ZDdsOGNJa3I1UlZHNVNqS2FpbkJDT2VHeVJoNmlYdVowQ29mbDRjQ3Zxa1JEK0lET3NUa1NPVmppV1Vud3RnU3E1RHAyS2xEQ3QwSmhGUWlOeDU3dk5keUtGSFN6TTdTYlJJVkNscTFCUjFBTlRTNlpoRThEK1l4cEdCR0ZSTXFOWGpYN203QWR3QURrUjB3NElVaXV2OWQ2S3hHQ25DaEpsWUlGKzZjM09MbnYvanZYTm0rek9XdFY3RkZjcjBwbTRoalIyWmI2NU1LU0R1QTkrVzZla1lWQ1V4R0ZxMEU1enhOczhUNVFHRkxyTFVZcldOV3J3Y0pBWk9JaW9qZ0phQURtSmFkYUtRTlowakgxR04rUGpSeG4wWngrL1pYL1ByWDcvSFp3YWM0S3ZRNDRKYnBTNXJXMGhGcVQ5U3o3VStpdmlOaXhCS3lQdmlZZ2ErQWdoellpQXMxNzkvOE5hTXd3Znk0NE9yMks1UmxTUk1jb2ZZWVkraFljWjVvKzNFRXlScWI0MW1WU2tSSVZxcURSU3NPMFhxYmlHeVhxTlZkNXhVMWpOYU5LV2VxalBVdHpsMFQ5dHRBSjNkOXdCTExpZTRmSC9EQjdkL3l3ZTJQbUxMQTRVQzVPR21IU0RnTmRJckJTc2Q0eDJlY2pCVmd4dUJjZEF0WHZ1R1lFKzQ5dU1mMXE1ZDdzUUk2RW5YdG45Z2ptMFZiSG1YdzdGZXpBbkRPTWExUE9aWWpGQ2xXVzlPSmxLd2p2WjVKYk5IYTNtT0ZyZFlBcnp3ZWphTml6OS9sNHVHWWkyckNSWCtWY2FNMzdQaUp6aEJ0RFNMUU5BM0JOY202RE5ZYXJMR2NuSnhHeTdiUkJLMVF5aURHSXJZZ2FKQ3dmS2FrdmZHNDVMQTZvaW9xOWg3dXNSZjJjYmhZMWFzenBIY1cyVDVwVnJUZUZ0YzBCQnIyL1Q1Mzd0K211R0RZTmhNSWVlRnlGcm42SUpway9VMXUvM1RmS1dCU2xPQkJ0elcwbzNheUdJVUtqc1l2NDZKSXBjcG15c1RGdTlZRVkxWVVlblE2YUJNeXVZV0FhVXM4NnhEUXFhS1o2Smp3ZXV2ZUxlNU03M0hNbEJBRGpTQ0VOalo4NExIZkRReEU5Z1dqclZiVVdyWjBISUJ6cWMvVzRsUEZOeTBBQUNBQVNVUkJWTkVQSHNzenZrSlJwNEUyZENPK3JCRVk0bHNydHBlODMrODkxdDI1dVJtNmM4OVpzK2JNOXpvU2tWZnFIVmJTUW5vdXNVUlNWZ0x1bnY3b2Zhc3VFRFZPUjZNUzE5UUVCMFpIclVhTjRqZGZ2Yy9PejNmNTMvLzEvOG1GeTVjNWZ2Q1FuY2tWUWhpUjNlMlNrcmlFTHB3QW9NMFFWL0hZVlNyQmlSSk9wNGRNUm1Pc3RZekhzZDY5MWhaeFF0VXNLVXhKNDJ2RUs1U09FNjlWSXp3K1N1YlVycGY4Rk4yZTdlOHJtRXhHTE55TVNpcTJMNWRVN3BSZmZmZ0xmbm5yNTNnYXRCVmNhbVpkcHR3TGdYSXlvcDUxdWU2eG1kZFVHNFdvdFpwZC9xNTMyaXFlNzBKbS9PTFd6NWpOWnZ6TGYvelh2SGIxZFE0UERxbGR6WlhkcTZpRmJpZTJuSGdsa3NUb2sxVTBod2dJTWRZdW1tZno3MlEvZVdLTDVPdzB5S0VRT3BQZWJISHRuWVVBUWVrMk5sYjEzTGNLVnR6V1duSklRK3kzWG52Q3BPWlVwdngyN3lOK2VmdC9jc2dVdE1JVUJ0OVVyVlJWN3Z2SjhQczErK3c1UkMwUitHSXl4azJYb0JYU05IZ3M5NC8zcWE3OUlZVXUwVW1yVGt1eXRQZGlMYk03dHh1ZFVnSldpclZXYldoTTk3N09sQ0pBRVFvSURpa1VsZllzVmMxRGQ4S2NXYklhZHZkQmIza1JIL1VpR1hxdnJwNjExVkd1UzhDV0JsYzNuSERLemVWTkxpeDIyUzR1RUZ5SkZwV1VLWFFiVHBKalFmTWx6QXNlQ0cycFhxOTh2UDlOb0N5S0ZOb2poQkJZMWhVN096dDRDWGlSV0V4Q0did0VhdWZ3b1dKY0FMZ1V2cUU3Y29nK3MyRG91bEpXQ3ZEb2k1NmpnNGRVcXVMdThpNE5EUVlUdlFLWjVRdDBTVjRickw4RmFDeDEwL0NRaDl5b3Y2QllHSDV3NFRWR29jQjZqUWtHRzdLbXMwcnRvL0ZKSHpsS0NPWXhXTGRqVnRXa3hSaHAwWm42aFJESnZUR3hCR0FJNENWYXFJT2tFQ25KdHQ3Y0FEbTVMOTFmRW90U3hMazNnUEk0N1doTXc2S3NXSllWbjAwLzV5NzNxYWpqNkdNVStHalJMVXBZMWdPWi9TNWdJTEl2RU5rV3BCQkdoY0dvNktRcHpCaWM0SnM0MGJkK3pUUURxYUNSRUMrZEtFSGpRQ3haakQ0Ty9vYWdCYVVMWEtod0x0L1VBY251b0FLYTczbWNUMkVMZ2hPS29xQnFhcmJOTHFlbkN3b21hR1hqSkplc1ZwRkUrRGJVSzVJMmtGeDlTcGxPLzVSQXdMQ1lUeW0yVTR4YU12VVpyWkJSY2k4OXZWY1BvR2N4aUJheXFrb1hSRUVkZk93YnhPemdYM3owTTd5Q2YvbVgvNHBYcmwxamYvOCtGOGR2eEdzZm9neVJoQnd2bXhkSWd0QkFpaU5VV2xEQkU4VGh2Y2VPSnpSQTR6MlNaanB4ZGRTRHRacUZyOEFxbE5KNEl4aER0Q0o1YUp6RE9pSDRTRE56SEcxUVVJVWE1eXE4bGFqaE9mSHNML1o0NzhPZjhWOS85NStvbUZLT0xNdEs0bndEaEVYWEx2VThGbW1RUkZyeU5Za0hTRnVTS3JUbnFSRWZ1bEJVQVIrTGVESm55dnVINzdIODFaeC8rTk0vNTUwMy9vQ3RNT2I0NklnM1IyL1JuSGlXeXlYS0tDWmJJMHhwcU9zbHMrVU10Q0FhakZVb0U0OUJMTkdsRzBBM3VuT0ZTeFNzYnkrcG9yMG5hVitQOTNIc2h5a0VRMmxRQmhNUzZ3bnhIbGFpSUpVZjlkNFR4Rk9VbW1JOHdybWFCLzZJKytVZXY3cnh0L3oyNWtkUjJ4SVhLeXRWbmJVMU4xZDdESXEwWXVpMWFYZklYWC9zUGQ0NFdhdm9yMThzbHVsSFBGdmpMV1RaY0dONWsvOVYvUmxlS1NaV1lScURWWXJDS3VyYVUvdUt5V1NDcXh3RWpVanlKa2hhMUVra3JLaE1ZQ1V1TU5KV0VjTTBDbCtnZGNIUjhpSFZ0dEJjVWJ4MzYzMFdMR0svNjVYaFhaRWN5K2ZmOXBXOEZzclc4ZlNyVmRjK2pWOFNiWGFCRzl6bjRIREcrTnBWcmhXS3NTNHhUakdXZ3JHTXNGNGh5d2FDaW01dkE4b29HaDBycnpYaVlxa0ZsV3ZSZ3BOWXNLRTFYbGhZaGpyMWtYVDlra2ZDR3RBV3ZGM0dveGFMQ1FZakJTWm9iSWllREtWaTFiVG9abyttWjFFQkNRMXpOY1Z0Tjl3NCtaVFA5NzdnbUZNYUFrdWFsc1BHMyszVmlxWXp2a2hlUERwWVNvMVNKVk01NFVzV1RHY25ISmsvNE4xclAyUmNsWXpyRWFvWk1aSVMwMWgwcmFOVzhyYkZxeGhXcEwxcUxaMHFXMWhiQWgxL1ZiVHJHU3RpM0hjbThhaGUxRXd5QkhuZllJeHBpMGFFRUdoQ2JBL2xBOXVBbGtDbEdocFQ0N1lEcDJiTzdlbGR2dGkveVZmY1Rnb09EUTVIZHB4cG9QNmV6NTIvVHhpSTdBdEdvZzVVaTVwNjJhQjhqU21Gd3BSTVJtUG15d05RTHJtTUE0aEJzbEI0Q293UEtvQTR3S1pCT3lhU0VBSktSOG1TcmNrT0V6T2hDaFdDaS9xZXZ3YzNvbk1ObWxFY3NFV2hqR1d5UFVhN2t1QmpYRmtVN2d5SWlwVlkydVFhRVl4UDF1OVVHbFNManNSV0NVRThseTVjaExHakxNdVdsUGpna2VmU2R0MEF2RUxTZWhPWFV1QlNRdFdDSmU5OStEY0VQSC94NS8rVWQzLzRKeHplUHFYVTJ4VEdvbzBDTVhndkJPZklvNjVXMFU0YVhKTDUwckZxa3JVamF1ZDdsbnhwajBIUzVGcU9Ta0tJY1huMTJzaHRVVmhicEJLamdXVlZzYXhQRUtNWjdZelp1VERoY1A2UUM5ZDJ1SDEwZy8vOHMzL1BlNS8rSE1jU000S1pkeHVxa2ZXUlNjWGFhaUViUWRjdGhmM0pOMDkwSmhKMklmQzcvUTg0K3NVaGYvVHVIL09USC8rVWQ5OThsenUvdWN2VjBWVXVYNzJFQ3czVDZSUTNheGh0amJoNjlXcE13QXNOamF1cGZZMzNPYzBsQm9WbzZTYk52Q2hwRnlleVdqYTBKYlU5ZCtkOHZzRGFrcEhWc2FwUThyNUkraDBmUEVWaE1JV2w5bzY1VkZEUHFYM05pVDdtMy83cVAzQnpkak9HRWhDVDJIUktnTkk2bFg1ZGIrSjFGL0Vqc1U1aVZjL00yUFB4Sk9hblE2U0VDNWJjUHJyUE83dnZNQUswbDdTK2lsckdBWTNyUjEva0pFV1ZMZkNkS2krUXJMcmRjeVV4dTEyN0FJWENhWEFqMkp2dk0yZU9vMG1rcng4Ukh2dFM4b2luTWFBNy9JMUtEbXQ5TXlyUzVrQ2VocC92LzVJLzNmNHBmL2o2TzFoR1RBK1h6T1p6ZGhpenU3V0ZxcVBlY3UxcXZQYzB4aUdGeGhhV3doWTB0WXVFUFZzTE4yeFgzZy9kNnlwbDNvUEdrSkkxZ3lJMFF1MWRDamgxV0J2N1R4V1dMSnNGeWlpS3JaTHR5eE4rY2U5OWJweCt3UUVQRTEzdC9BVUtrN3dUcWQxVjU0RFFKUHVLVVlRUXYxTVI5YkE5SHNjKzRRU0tMY3MxK3dwWEp3V0Zodmx5aWEwTGRzd09PNU50RHYxcFhLZ0tiYktvRXJyN1JzVXJGWlJHcTNpK2ZjK2lEaDJGaVFTV0ZmazJyZUlDdDNZdWVXOUFXWU10QzhyU0VCWkxnaEtjcWFuSGdVV3g1SUU3NHRPVEczenBiN0ZNSk5ibjBoRFp1dDdyTndOZVBBWWkrNEpoYllGM2xxSWNNOW5hSWpRam5HdW9saFhXYW9yU2d2YnBoZ2tnTmxwamcwbnp0VTFXQlExWXN0Q01UakZIMDhXVW9uVE1aak1Xdm9wMlJxVmo2VTR0T1AvOXZoVTFGa09CVmhidm8vNXA4QUt1d1M4ckpxTXlza0dpWEpSU3ZYaFNCVWlxcUdTU1JGQlF5VUlXUDNOd2VJU1plS2JUZWJMbHhtZzZyYUo3N2xrdHNnQzltV1AxT2RGMXJ0SjVDcDRsQy83bXc1K3hXQ3lZVGhmODBkdi9BT005RWhxYXhoT2FTR2pLb3FBb3h0VExKdFpqVHp1UCtyQkNjQXBsK29MKzlHYjE3Z0NDaTlYUU5NbmltK0lSalRFVUNwYnpKWVcxMkxGbFBCNWhncVdSSm1yZVZsUDBPUERCaCsveFAzLzdOM3g0NSsvSW1ma2hHWDIrNlpuQWU0L1ZCVHFvV0J0K2ZwZjViK1lzbDB0bWIwejUwZXQvVEwxWU1xK25hRFJtMjFDb0F1Y2FEbzhYMFRnb0VpVitsSWtWM2MwNFdubTB4dmxsUzVZMk5COEt0VUppVndtdDVyVXJyK0dhd0hLNVpMbGNrRXV6RmtXQktUVUd5OG5paE1WeVRqR3hqSGRLVHBkVFB2cmtkL3o2enZ2YzRYWkxZcTIxYUszYkJjZDZ0YWNud2RuTHNiNlBSQ055c1EwUFZpbWNpd3RCbFlwbGVZU2J0Mi95MWsvZWpqSloyaEM4WUVRaEdGQWxQcGhuVmpCeXVjaURGblNwMmJ1OVI5TkZBcCtMNTNIYmVoekhIUERSN0hmTTdweHdmZmRWcm14ZlpuZDdqSy9nYUQ3Rm9PTWlzekJZWlRHNmpOSlBRWkRLVTdZNnNGOS9LMkpvbkVIcEl1bzdLNE1XaXlSSk1LY0Nwb2pKWEV0WG9VcUZ1V0R4Mm5QYVBPVGc0UUdmN2Q5Z240ZEpTZ3NFZzdSVS9mRlExa0FkTDdvblZqOTBBZ3JQQXc3NDlWN0YyL1l0L3ZDcThOcmtOVVpxak15RjQzcU9kbFh5Y2lUUHBGTGt4RTZUN3BIZ1ExSVE2V1FHVzVXRHRTUzBWZzFET3FzeE9vN2xScG0yNklFWHdibWFScUpDOFBqQ0dFWWx4OHVIZkxIM0JWOVd0OWdqYWhEWFJCM2kvdUlZdnAyeGE4Q1RZeUN5THhBQ05DbEFjTGxjUnRLaW9odmNHQ2pMZ3NaUGszdThCZ0lTVWl5ZVJCYWxwWTZ1WkVrcjF6WitOb0J5N081dVl3dlBaREloQnpNb1pmQWhwMTUrdjZHMXhRZWhydXM0RUZxTFJsSG9BanN1V2M1bnlTVVpyVE5CZkJ0akZiMjhLWFNES0VjVlI3dG85UWc0UmxzajlEZ3cycG93WWd1aEptQUpJVmtubjl0Z3RqbDdQQTNuQ0lHdDBZUzY4bmc4NzMvNWErN2UzdVAvK0RlS1N6dFh1WHJwTWxzN094QXNybXJ3cnNJdmE1U1laRDBvTUVwVDZJSVFZaGEzOTRLeUtYYVJ6bzNYVDVDb3F4cHJOZFphbEkzSkUwRmkzRnBRUXJGVHNsak9xT2MxcGlqWTJwbFFHRVcxckRsZVBPVEc1NS96UDk3N2IreFZkeEE4MjVOZGpoWU5JZ0Z0ZWg3dVoyNDlmWGI2elZaWmNSaHQwRUhqY1p4eXd2dWYvcHJQUHYyTWYvNW5VNjVmZW8xclYxK2hLTVpVaXlYVm9xTEFNaDZOVUdLd1lyQlNvRWtWelp5SEdrSndxYkphamoyVjFTMzV2MGhkUXlLeDhYVkJVRXlQcDJobEtHd2tyNklDamErWk5hZlUxUkk5QW52Qk1pNUhITTBPK2VER0RiNjQ5VGwzWjN1Y2NocVBxVmVPdEdtYTl2RnpLMFhkdHhEbVNUM0ZtS29BTnRqa0VSSmNjRmdNZ3JBZkRwZzNDM1pHdTJBczBnZ21LRkJsREF2eFlKNkJVb3FDb0ZOSjRBSWFhdTRkM1V0aEcrbFkrN0d3enhuUjhsaHpuenM4bk85emZYNmRQM3J0eDVoTGIxTGFnSGVlVVZIZ0JHeUtDVlVDNG4xY01BZkI2alRlQUYrZnpGcFFKdVUveGlTbklEcU9GaXBXcUFvalMrVTl0ZkhvaWFJYU5Sek5Ecmo1NEN0dStwc2NjdHlTMkJ4ZjMxbGxaWVc4OWRHdWZWTlo1ZmhpVEVaelRjaUJBRXhaOHJuN0VuZFBXRnh1ZUgzM2RiWXViU1BMbXJEd2xPbit5cEowY2RIY0ZReFJnSkhrRlVqdEZJa3RaNzA1S2E0Mkl0bnp4Y2NGdUlwZkVwMDlDdEJJZzU4RVp1YUUwL2twTng3YzVKTndnd1VMRmppVUxYQnV1WnIwUnU4M0grbE5HdkJ0WWlDeUx4U2E3Y2t1MVVKUkZBVStOSWlMdGNadFlTaEt3ZGN4S2FkMXIyb1NtWTJoQnJxVlZOTGs1QWxJU1FWS09EazlaRFNHeWpVSVVZL1RtcEltNURUeDU4UWtYaER5SkY1N2h5a01vZ0xIMDRldzFFeEcyMnlOU3lCNVBoWEVZcDRxT2hoVnNqYUtpZ25jb2hEcGlKMVNpaVk0dkcrbzZwcUdKdVcwS2xyajdETTIzOHI0S0dmZk1BYThCMGZEYVhWS1FVR2MvZ1A3Ym8vLys5LytYL3pwRC82TXYvcXJ2Mlp5NlMycXVXTzJtRk9ZTVJlMkx1T1dnZEFFbkt0UldFcFRZdXhXRkZVUFBoSnk1ZElrMGZlWHhjZWpJZzBSUWFKdElnUkNjSURHYTQvWGprYlg2RzB3STZHMkN4NGVQZURUTHovaDF0MmIvTzNOWDZhbWl0R3VwNHVUZHV3WCtSYjZud1lKUWgzcXFNK0xRV05ZTUdmSmtuLzMvdi9IV3hmZTVrZnYvcGczWDMrREM1T0xHR3RSWG5BU0NQT0dFRW9rZ0JXTENSb1ZMT0pUSElQMnZZSUduTHRWUWRybnZnM2NTSkpLNGdndW9LMUNGUm9wQlROV1dEUzFxbmpZSEhEL3dUMit2SGVERzN0ZmNDb25lQnphbUNneGxid3F6cTB1VEhOTTRLUFFoV2Qwc2FIeGpkRC9FQjJCcGNkaXdHQXh6cVJ3QzVYc1Y5SDZQV2ZPZytsRHR1d0ZkazFKVUVJallGVzB1b2x2b3NYc0tmdEFVTEhOblBhRUluQTZQK1dFazdTZ0NXaGpVaG5scDlyOVkrRnhUTk5pb3FEQTRabnR6Ymg5ZEpmWGQ5L2cyczVWbENseGxVTXRBbFF4U2NocXc5aVdXRzN4dGUrc2gxOFRncWJRNDNpMkllQjlpT0VvU1FmVm1ZWW16TkU3bWpCU1BLZ1B1SFgzSm5lbWR6amlpSm9LUjVPQzFwSVZ0NzhjakhXVEg0bVF5L01tK1RzbmNTSFZwUFFzRDh4cCtJd3ZPVGc4WnUvMEFhOWR2czdWM2F2czdHNVRINGVvU3BBV2VPSVZQZ2hlZ0NDVUpvNC9mZldPVmtXazkzOXNrQnlyRXJWZ1l5bG1qL00rS3BXb2dDNHR1ckF4azdaUUhQb1RiaDdjNHN2WlY1eHdtdUpoUXl4dDdPZFI4a09GbFQ0ZnR4dFVIQWE4TUF4RTlnWGpkREZETThLSEN1Zm5LTEZvWTJucVFETTdvU2cxcUlaWTZnaklWWHFTU3kxSUZXT29jaXBEVzZrRVVJR0xsN1p3Zm9IekN3U0g0S2liNTFuWDU4WEMrd1l3YkcyWGJPK00yRElGcnZaUWFpYUZvYXFtZ0UrbE1WT2JLUWc5WWUvMlJhTFZKRnV5QWdGVmVKeHFhR1NCbzJvdFBVcHJ5c0pTUFVPZ2NZNHl6TWhEWWw5dVNDVFA5VEcrcTBHd2pEQVlQQldXQ2UvZitSdmUvMzkreWJ1di9vaC8vay8rQlgvMG81K2dwZVRvNkFHdlhINGR2L1EwUzhFMWpnYndBa2JiU1BKY1NMNjQwSjUzWDhMTFdoMWorMXlNT2RSYVk0dVlPTkhvQUlWQm1SSWZhaDVNSDNENzNrMCsvZndqUHYvaVk0NDV4dU9pbTFDcldDWVdZanZyZ2hENjVidWVJOVlKVndybzh4SnRUWUpFQW9abHlpa2ZudnlPVC8vMlkxNy8vQWY4dlhmK21MZXZ2ODJPM1VFM2hoMjdDeTZTOXlZWWltQXhxcVN3Rm95aEVVZlF2bzI1N204QmZGNmRtTlhuOFhPTzNWZDJjYTZoOWk0V0JkV09ob2FGbjdHUWludEhkL2prMXNkOC9QQ1RGUGNaTUdOTjVScThiODV3dENncFJscHdQR1c3cnJkZmZyem1YbzB2WjB0NGx3d1o0MXM5RFEyM0QyNXhhWEtaeVdRYnBWVWJ1cU14MFVJdGZwVTBmdzFJcXRqVVdJY3pubnNQN2xGVHRlRXJrY2pUeFU2VGlmdno2VzhDMUFxMENvaXFjTjZ6cE9KZ2VjeUQ1VEd2Nzd6TzllM3I3S2dKMitOdGRyYkhqQ2pCQlJwWDAzalFScVdDR1Uveit5Rm02aFBscUNnaXZ3cUZBcXVoTU16ckdTZk5DUWNuKzl3OXZzT2U3Rkd4d0tYMHRpYkZma29LS0FocHYzRndNbTJjL2JtRTFoTkpvVExnbXpaR1BRZ3NWVU10RG92RnAxQ0RJM2ZDM2YzN1hLK3VjMzN5Q20rTXI0T1AzaUtOd1lpZ1BlQUZIUlIxYUZZVUdkWVhYREVzS2wvYzlKNktlU05lUjh0eUdBdFlqYmF4cjU1VUo1d2VuM0RranZseWNZZDk3ck9nanNsY0tCcmxhSWpGV3pZdWdwN3llZzM0NWpBUTJSZUtlT05acTVuc2xxakNvYVJtc2dXbGo5bTlQc3dSaVpxUUFJS0s2YXBpRWdtcTI0bWtTOHpvbG85ZUNZdm1tTWJOMGJnNCtGSFR6MEw5UGlQUUpKNVNjVy8vTm1NenBkUVR0aWM3aUY0Uy9LSjFpVW9XcXlkS1JjWFNscW5GVW5pQjlJZ3NLckJ3TTdUMUZHUEY3bWhNSlo1WlhTRWhVQzJmYjdaY2F4dnJ4OGhLdE1ycUlycmR4SGthRmpRcDZ2V0VtZ0tEUXZQaC9RLzQ3UC85bExldXZzTS8rTk4veUkvLzhDZDhkdmQzVE93TzIrT0xXRnZpbmFmeDBlcXZ0VVZzbGw3UVhWWjRKejFQMEFvWEhONjRHRzVtTFk2R3VxNlp1UVZxcCtEZXdUMXVmUGtabjkvNGhMMkRyMWd5aDBTNnRpWmJuQ3lPWXlnRE9pWWdKVzNhVGc3OUc0WUdVOFpGaXFzOVRRaXhzQUlWdVdwWXdIRGo1SE8rZXY4cnJwZ3J2UHVEZDNqejJ0djg4TFYzS05XSWNibEZnWXJsTWYyQ3FnNjQ0S0FNblE3c2VyTFhZeDhMOTJhbk1iekRHc1I0WnNzNXR3L3VjT1B1bDl3N3VzdCt1STlMR2ROZUJXcHBvczZ1SmhhUGNGR2FLT3VwNW4xL25iQ0N4MUs3VFc3Vi9McW9WRHNzZTQ3QVM1T0NLUlIzbHJkNXUzcWJWN1pmd1dxTGVBL0J0a2s1ejRLZ0lDU1BRTVdDTzBkM3lJUTZLcFdjZjFiUHhTT3NRSThndUNnU2dYSllpVUZndDduSHdmU1lPOVA3WExHWGVIWDdDdGUyTHJGcmR5aDBiSy9nSGR2bHpsTVRJMUd4REN4R2c0N21mcWM4bFcrb3dvSkZYWE5VSGJKM2NwZTdzc2VDUlNSb1FLMGRMalRrV1NUei9YeGVjZlg4NkRsQ0F6NmtjQmtsTVJFdGYxNkZGR0dxVTZpSHhlSFExSkhzbnh4dzgyU0wyZTRmc3hYR2pJcVN5V2pFeEk0cHk1SVJHaU9hMElRazJaWGJLSFpHbFNRbUpSSFprTDBHMEVyVGlRbzQ1Vk9aWWtmdFBNdDZ3Y1BUWSs0djkzbkFBVE1XVkRSb0RHSVZjemVQM2dVVFZxME1lVEdVSTFZMm1pQUd2Q2dNVVI0dkdPTnlSRlY3WU14Zi9lWC94dDNiUjJ4TkxzVUpvbWtvUjhsL3JVS0tZWXd4VlNMUjhxS2tpUnA0SzBRVzh2UTByNmRNdGl6amllRm52L3l2akpLRnQ2b1dHS1B3My90a0wwVlJUSENONGkvLzBWOXplUCtVUWs4WUYyTVdzem1semZIQ1BsbktrdUJaVUZHb1d3bEJ4OVYvRktydlphQ3JnSmVHUzY5YzRJT1AzdWRvdVkvUmdwTzhlT0NaN3A1SW9YUzZDZHNSRW5xUHRPN2lTSFVhTzNPcDBjSkVZbUJVc2lTVHlsZGlrd3ZkOGlkdi9aUTNYLzhEZnZUREgzSHQ4dlZZd3RORjBsNllFbkU1M3JvN2hsYlFYNFZrMVlyZUFHMUF4SE42ZXNyOSszdnNIeDN3M2llLzQrSDhrRms0Sms1OERZYUFvOGJqMitZUkJVb2J2TTltUFl2V2loQ1dQTzFFa05zdnRsZm93bTgyV1E5NzEwbWpXN0puc3Z0WlV0aE5TaDQwS0N5V0xiWjRwWHlWTjYrL3ladlgzK2JhNWF0TXlnbEtvcVU2eXJyRjJMeUFyR3hqR0h0MGNXNStYNmlsWXYvaFByZnUzbUx2L2wyT3d4RkxLcHIwenljUk1ZZEhGd3F2UTB4bXpPZm1PTGNQOXNudDV2WmpyZjE2YjZ4Ylk5ZmFNRDlYYWhSRG5iU0hVb0h6RUNJUEdETmlteDMrNHJWL3lrOWYreW5GdktDb0NrYVVLVExLZ2ZHSVByc1FXQ2U1c1RUdjZ2dk9CSmJHc1RBTHBuYkJ2Ly9rUDdCZ3dURlRsdFN4Ykc0T3Q1RGtvczU5L054VytScFF4QUljUFl1dlVaYlFLQXlXa2hFV1RZbGhSTWtGSmx4aGw2dVRpMXpldWNUMmFJdFNiUk9WQ2ZKeThzbTNYb0UzSm01RERIODZucC93OFBTQXczRElDYWVKcHRYVXFlaHNveDFPTlowVlBLaWs3S2pTYTdxTENRMW54N2krYWtHRUpjNUtxWitiT0U0NUNlQ0Z5U1FtbkFidmlUYlhna0lWZUFrVVdDWk0yR0xDRHR0Y0tuZTV0SDJSM2NrT1c4V0VRaGtzR2gzaStLYVR6bnJYK0xuRU03VGhkQVNDem1WbUhVdFhjVEE5NHQ3RCt4ektFVXVXdUtSQkVNTXFoQm16U09UN3E2dDhiYk11VzJiNklSZDhNZkgzKytQT2dCZUdnY2krWUhUelJVRTBzY1FZeUo1OWp1NU95dWlpejdPb3pMb1BKTFJEbmdBT29TSE9lbG1PaXBVQitIdUxSQkppdHV1SVdKc25XaWpqZ0pPdENpMDFKTGRmYkozY3RqcnRicFg5U0xKaTAxWWZqMHFUY3Q3ay9yVU92U05pcThmWVlWTzR3Ym1RUGprMmlaZ1ZpZHFXalBTWWl6c1h1SExwTXBjdlgyVjdmSUZMRjY5Um1qRkZZYkRXZ29yS0QwMVQ0VnpEZkQ1bnNUemw2T2lJdzhNRGprOE9tVGZ6SkVvVHFNbmFtNmx2MFNBcGE3elZlK3kza1doaS83YnA3SnFONS8wa2VDeVJCZFl1NStyMkVlMW4ydll6cVI5Wk5Kb3hZN2IxaE1sa20xRXg1czNyYjBUNXJLS2tISThvakVVWm5XS0toYWFxbzZCOTQxaFVTMmFuVTA2bXA4eW5NK1oreGhFSCtGVEpJWjlCZnBURTRwTExONUd2VFFUOUtmdGdQN1RsakVVdWIyMWFTYVdtTlVyRjRJeFd0YzNHeTZsY3ZLU2EyQlVxR0ZPd3l6Wi8vK0xmNTgvZS9GTXVoZ3ZvT1l5bHhFcVVCbXQwZUdvaTIxalB2S3h3dTRIZmZ2VTdmblg0YXhaRWRaRXA4M2c4cllEdU4wQmtZZFV3QjZrUkxVaGVVTWFScVVSamdUSlJvSGdYR0s3eUdwWVJJMTFTamthTXloSmpMZFpFbFJCcllnaUdoSUR6bnVCanpLZUVRS004OTAvM2UxUzFhVXZMaG5iVWlvc2duN1lvUjY0dEFIUkVEYm81NFR3TFBLdEVObjRzTzNWREdrbDdydi8xTWF2SEVVbjNXTWtJZzBXbGRza0x5SklDaStJSDQ5Y3BkVUdaN2pGclM0eUpZbU1RQ2J4UG10aFZYYk9zRnN5cU9YUG0xQ3laTW04bDAxd2F3WDA2Vms4cWpiMCtYdlFmdHpFTThjK3dTbVFiQmlMN1hjQVFXdkNkUVVNbW5SM1pnbTZTWDc5WjFrZlFUZTZwUEtoa3M0MDcvMGI5SGtNVUJIRTlTaE1kWnRKR3krWHp6MU4zSmxQMElzUGl0L1ZhdThmM2NvV3BORXcvcCtRUmFYKzVuNDM4aElQaU9SWXprYVJ6bVJJZkdxcEViR2NzZ3VMNFpJK2JKMURjdEZpOVJSMGdEd01wbjc0WFdpQ01LQWhwd0EvMHd3QkNhdG5zQlhEcGZkZE5ET2RNWk04TDYrMFhSZWQ2VmlTMXRzM1lHUGNXWDQ5eGg2R2RrQ01sNzM1aHppbUhRV0ZubG9LU2o0OCtSS1gyaSsyc1VxOExLNi9sUGVUM0l0VndPS29VNXRBUmdmN2NtUSt0TzA2OTlzSTNQSW02YUcvTEZhZFVtc3dEQVM4YUp1UFlYNEtQd2RkcHdyZEdNZkVsVjdqSXhlMGRSa1pqdkU4RXlLR1Nzb0JHUFZGd3lTYkxjbEFCWnh4SDFZekQ2aVE1a0tOYmVhVlp2c0dZUnRYcmJyRmZwZDlTZ29ocmwzZEo1WnNLRW1FRGhXWEc3VWpLQXFpRlFpKzZmcEszY3M2TjQ5SXlKeExWRlArZitrOE1sNUdVdkpYR1FSWE9UaFByOThLakZ1aG5Yb3UvMG4wbHRMZmF1UXNqeWE4SG5BUmlhWXVtSllnZDhUY1lMRWZMajFPZmljUTMxZi9xdFV0b2Q1NDlXN2xOOG9pOVRtSlhrcmNlZGU2eStwZjVmOXhLWnhuZnNLc0IzeTRHSXZ1Q3NXSnBrMVFtQmRoTVRLRS9RbmMyV2IzaDNYNVFmT2gvNGZjSGZiSWtFRnJhNFZMcVc2cDZkZ2JSR2hnSDI5VTRzTE9EMGxsM2YvN3BibEIrZXZTdEdMQjVlUkx5QjlzZlh2dEFIMjE3eEgwYXEwQWNJdEhybS9tQW80R3d3TEtEMFBSSVAyMkFna0k0WlphUElBN2l5c1RxWUVyRmNBWmZ0ejFOK2d1bGRhTGRXbnBDSWhhYkxkQlBnM0RlZnVTY3g0K0RvbTJMWkZ0dVgrOVFRNWd6WnBTcy92bG56aWNlM2U3anY0Q2pvdXJHZ0VjUi81NjFtRVNOcGUzRDN3U1o3UWl6MWdhck5GNGFZb2EreGFKWTRxa1dUWW9uMUpBcVV4SEFwTkNuZDY2L3piV2RTNHhWaVE0Q0lXQjBXa1JLTHA3N2FLS1o1Y3p5NC9aMUJVM2hlWEQ2Z0lQNVBqN1JsWUJmN1ljcmxzQWVubkVobjBNemttbzNvVDhlS01nSnVkR0VFSEE5TWhTdllnekRVUlRkT1QzaEFTa1VIa2ZGY2tWd3BIMC9TMDNsMExIMUJWMy8rZnBQbnJmUTZ5RzBQWEVWK2M3T0ZlN0MyYTkydjZGQWJBMmk4S2xtcnd1YUNxaVRYeTBlcG03OUl0SU5KR2NPTE44WklkSFhXTk13NlRCMGpyalZmdEczU0cvdzJLeGJvSWMwcis4bUJpTDdvdEcvTDFkR2hiRDZHYzUrSmc2ZUFmMGtFOWtqM0VXL1graEprYTNaRUNFM1EwNmNpK1Qza2MyaE9KdVU4dHd0aTkyeGRiYmhEdjBna1pVdktkYXNUYjEra0s2M2krcmtrUWlaN3IxQU5FeFVmazZXSDQvS3BublgwYkpqVW5pQVJoRlVJRWlEOStzVDJBWkw4aVA3VzJCMVZuM09XSGVWNXRmV0xiVHI3YWMyRVZhNlNUQi90QmVOVXZrYUxlZmJaS3hPcGFSVFRHNmY2QWJDdXFiN1dad3h5Nm8wc1NmeTlBejJvSE1KUnZ1QmVHQkdiTEtYaFJSZ0VaM21aYWJ3M3FDMUlNRWh3Vk9ndWNBV2w5amxoNWQreUpYaUNxVXJrY2JGcEVvZFFLc1UzMmcySEVUdkVCNlJMT2Z4TkNwd3NEamttSk11RTEvT2RORDBOSk1oZUQ2THFENDdBdHI3Si9UNllLOVA2WTVYcG8rakpZYVZHTlNLUEZ1MitCVkp5TCtWYlJPNjU5cDFrVHByKzQyNWhBSWJTRzc3L0x3bXlPVDJDVzdSL2xoeDNpN2JlUEgxTDdaOXY4ZW1VNFczUnFBUmpWRWFwUUpCNHRZTEsvZFJ2QnY2VjZBTHhtbXQ1T3NFZG1NNFNQZTRmNmpySDgzamMxNUVucnVJSHZDdFlpQ3lMeHpaOG5HT3V3TTJEeWk5MXpiZFNzOGpodk03ajk2NWRiR1lHNnpUMjA0VmdRQUFEUlZKUkVGVXZYYlYwcjNZa3NQSFdLclBXVWM4TzdLRnN2YzdTblNQeks2bmR5UnJaazdLMkdSTjJYU1EyU2dqRzU3cjFBb3JCSzk3bmhQTHd0cUNLKy9LcEw1N0p1UmkwM0gxTFIxa2E5V3pUUVRyMysrWHJSVUowVnAyN3ZiY25lYWRSV1Rqc1Y1N1hZRXBOQVM5UXJLVVVxMitjZFU4UXRtaVRiaFozZWZhQ1oxekR6OC9pL1pHdEZaTTFmNk14V0tUZFV3QkJZcUNVU1NRVGJRc0drYnNzczI3Rjk3bUJ6dXY4NHE1eHJhZllCcUxyMEt5bUduUUhyRlBQanl0azlqY0xBczM1Mmh4eUpJcU9wUjFRTTRoWVY4amNPZkpqb25jTFZaN1lYY0pOeHpMbXBzOWhGaXNKWC9mdCsvSEI3VzRsZlBJNzdlZnl5YmVmbDlkUDBnNSszamxWbFVkMld5M3JOcFl1dDJ0ajYvbnQraEttL1FNd3l1VzROejMxZm9YNGg0ODRleTZ0OGN1SmVnTmJiOFdBNzNleWZxTHd3MXRvbnYvOTVHRE4vcEx4OS9uNmZYN2hJSEl2bEIwc1pvQVVaVi93OGVlNW03WlNDUTByYzVzSHJXKzZRbngyNEpBN003ZGNDUnI4anN4WXp5K2R6WlBtUFBiZnNWeXQrNVFlMFlac3pYeXR6cDVkTCtaS3E2VEs1SjFBM3MvcGpkZjI2NGZGYVZ0TlVXbGIybnBuMSsyRVFwbnRxYUloRGYvUWZRaUs2VXhta1JPVWl0bXk4dWpTR3hldEgwTHlLUlc5ZG92YitQci9ZazU5SzV4TC9DeGI5SHF6MkFxY2cyWGlNaTUwS3VkS3BOY2xhc2cxWjFtNzdsa05yMldLNitSYkZIUEkyWHAzRGpjTmpMUnR0Yk1iYmJhbU9tQXAwajNtNkpFSVJTVVhHQ1g2N3V2OHZibHQzaDE2MVZHOVloU1JxaGFwU2IyZUswUTdRbDVUZllJWkFLcjFwN0hZL1ljbkJ4d1BEOGhSbHNhUE0ycTYvZ2JSVTRhb2ozRzNMdjZQeDlERG5UM29mWnhpRU9XOUJwQnJWMzh4OTBxVGUveEp1UEYydUsxYjZCY3Q2SXE2ZTdqdkgwVTVESCtnSE85TnYxalN2TG5tenNpR04zMTg0MkhZL29qZnVxcEV1WG9ZdUpxYnpIUkoveTVBWUx1ZmZPOFRKTmVtTjQ1Um9JQkx4WURrWDJoMEVTbEFvamlrSndsczV2Y1FtY0c2VzRDUG5OZlpSSW1hZmhxSnlrTmtqVkV2OGRveVZ4ZUZQVGpMOU5qMWZ0bytuelVOK3hQTG4zMDIyVFZmU2prZ2EvdjhIL0dOdHc0NmVxMXQvcFRVRGZjeGhpNzd2UDl5UlBBVmZHOXZpV2wrNjNVVHVycy9KbjVRbkNjc1Z4R1ZaN1F4c0t0ZnBHdXo2Mjc3citKUmRNNW5nZTlOaVhsaEt0KzR0V3FSVW4zUHR1aHBJenV5bllWMFAyZUVOQmxzVkZIdGkycTRWZW4rdWdXelU4ME9UNVNKTVNHVm9FenlTaTl4em1VeUs4c1lMNDU1TGFhTU9IdDE5L2g2czRsbXVrQ3Q2elpNbVBLcG1Cc1NyYTJ0dGllN0xCZDdyQmxKa3hraTVHZjRLdEFFUXBVVURnTVhqdUNjalJLNFRVVXd0blFuWE93YnBVVkJmc0hEempsSkJydHRJNnUrendVZk5NVnVCVXJURnhDRngvYTlhWXNyNmZ4b3NBblk0Sk9YOGhNdEwxdlpOVWMrcWd0Z0JTczJwcmplTlNXTFpaY2dxUTc1UDV6VDk5TGRkNG9jMDR2NjVQRE5jS002TFZiY2dORjdLOENBSFZtcVVtVW1zdTdYU2VqQWxvckNDb3UxbnVqWEZRTER4VDUyTk5DZkpVdjUzRzhmN090bm5WclBJRHV2bHdmY3dZeSs4SXhFTmtYamsxUmtadXd0cUxkWkxYWjVEdzdOMlAzZTA1Z1d6eDJ1RDJYOUxkdnRtVDRMS2s1Ky8wK25sTWJ5dG1uTWRLM1B4bXNqWnBuTEp1cng5NVpJRUZRNkdRRkZPS2dMOG5jcUZSYy9KeHhzMHNrdDVLMkhkSFZLMFR0M0s0SVovdmV0empnNS9icmZscFd0dmxUNjQrNzBJVDRiUmRjZWoyLzJwMnRvS2pyK3ZGbXhZeGV5RUg4U1pWSVJMYTIrOGUyVWJkczZsbUp2aEZrU2lab05MdDJtejk0N1czZWVlVXQ2dE1hdjZpNVlIZXdGZGdrVnErMXhrcUJXaXBVTFZUMWdoSGphSlJXQ3EwMFFhWEZ0QWNWWWpsb0hVS1Vha08xbmw1RkpGZ21MWnF5L3E1WDRGVEFGMUJaejM2elQ1M0VwWXl4clVCSjdydjlCbnFPb2x1cldDT1krUnF0ajd3dDMrdXZmYlh1TExKbnlHRGt2TEoray9YSW9sV1JOaXZSUkkwRWxaNUhNNmVzTGR2NjJCaVN0clk5NzNOUGo5VTVhcFZDNmpPZk9UY2NKRm0yZy9kcFFaaGZqc0tMU2tVdFg1ZlViSEowd3VObWkyNFV6U1IyWUtuZkJ3eEU5b1dpdHlMdlc2czIzanZyQkxXL2VkUlFzLzZlWjVYTWZkOEo3YWJ6NjcxM3BpMHpBUWhuUC9kRWhDUzIzK1BiL1Fud2lPdTh5YzU3OXVQbnBScXM3cU9kUERmODNxTUtRT1gzK21FRi9hTmFQMGJwUDFEbnQvM0taNThWWnhZQlBXdk9ZNzk2OWhQOTY3cnAreHRWTFo3MFpPU3Nva0VXUytxTzVSRmpnSnovMXRNZ1R1eVo1b1NlYkZwb0Q4V2dLZEE0VjNHWmk5aER6YVRhWnVRdVVTd055b2N1L2pFVkZGRkJSU0psTkJKaVhTVlJ5WW9hQXRRK2xyb1hUZWxqeDZ4TlBDK25hVHViRGJDakM2clpERk1hdkZVY2h5Vmh5M0lrRmIrNTl4SDNlUmlWSHdqVVRlZG5sNnJmWnVzVTlsSGo3TmZBQnVMWnZ5ZHlUT1hxeDlQNG14ZWk0ZEg5NXhGNWhFREFTZlRrclR0MXZuNC9mc1F4clAzbW1UZWZaTDVhZVczek9IRGUvU3JyRC9wajBkcjFiUU45bnVEYWJ2NUlkOVUyamJkbnpuZmd1ZDhKREVUMmhlTGJKSktickhlL1Q5aHdUazlxU2MyVHloTmJYcDlqK3oxcUVudUMzOWs0MlBhMjMvUTRlKzcrejFpTXYzMDhYU0paMTM3ZnhoeTFYdEV0dmZndFFhTTIyYWhhVmhTU0oxV2l2bWRRRkZJd3JndEdycUFJQlNHNGx2aWVLZEdyQWtGM2x2djJkUUdUck5FcWhRaEFUR0NLUlRSMFNpS0VwcTRwalNYNGhpWTBxTEhDbFo0SEp3KzVNN3RMblNUL1YvREV4T281WU5QaWNPTUh6eGwvbi9sYVAvNCsvOGE2MDlmYThWa1MrMVM3ZXdLUHhkZkQ1dVBadUorQnRINW5NUkRaQVFNR0RCaXdFWThrU0Nua1UxSUM2YWJLWEgwTGREKzhRd3Q0RlFnbWhoUFVHanhKMFVEbENNZEEzZFNVNDVMR04xVEJvVVlsUzFseS8yaVBBeDQ4NVdKbHdJQUJ2MDhZaU95QUFRTUdET2h3YnRCelJMYWdCcUlGTmZTVEtkTlc5eDczYzJNeXdRMjk3UDJnd0t0WUl5b29oWkpZODB1SU5jREVHSnhBS0RSaEpPd2Y3M05yY1R1R0xBeEVkc0NBbHg0RGtSMHdZTUNBbHhTUDlKWStSc0pLRkFSMHEybWFMYTJDOU1pdHRGbnhteEx1Uk1XUUFrbEtJcVFZMnhpTEVGREZpRm9GWEtGUlk4MXhtSExqOENZSEhOQ2tTdmNEQmd4NHVURVEyUUVEQmd3WWNDNDI1cDBwMnJvWjByUEk1aVFaTFdjTnU5a2EyNFlkcVB3OHlxS1pMQTBvcXExZ1pheGhJUlYxNFRtUkJWOGUzZWJXOGk1TEtwVFJlRDlZWkFjTWVOa3hFTmtCQXdZTWVNa2hzS3FSbWJDdVNuR20xQ2k2MDRHVlpKSHR4Y2pxM3VPc1JxQjZTVitRQ0t1Q0lFa21LV1N5RzNBcTBHaFBwUjEzcC90OHN2OFpCeHl6cENFb0dVSUxCZ3dZTUJEWkFRTUdEQml3aGtjUTJxQTZuZFJjRFFvaVQxVkpucWpWUWtpdjZTVGgxbzlXMExKcW5mV1NLMlZGRGRTZ0hYV29hR3pOVEMrNE05L25EZ2NzYVZBN0JyK2NmMHNWdkFZTUdQQmR4a0JrQnd3WU1PQWx4cmsyVFFWV1cvRGc4VGpuYUl6SEJrTUlBYVVWTkhXTWVRM1NWaTJMNVhjMVNxbFVrQ095V0FtQmZ0MVRKZUFYRmVOeWhCbVZZQXlMcHNGN2g5ZUN0NEd0eTF0OGN2ODJmN2YvQVYveEZVc2FuQWtFVjhWNkRac0ZQd2NNR1BBU1lTQ3lBd1lNR1BBU29pL2VmeDVDQ0NnMEJRV2owWWhTbHhobmtGcHdkVU5oTElKSGxDSldKdE9nQWdhTlVvTDRxRU1yU21FMW9FejdPWU53OGZJdW9YRlVia2t0SHErQlVvRU4rTUx6OGIwditlcjBEb2Njc2FDaEpwYTRIY2pyZ0FFRE1nWWlPMkRBZ0FFdk1WWTRZWTZUelFVSnhHRW9xYWxaTmpXTmJqQWV0RVNyTENxZ2drZEVJUkszdVVDd1VvSlMwV3dxb2tBOEVpTGhsYUJ3VWZPQXVsN1NCQStGUW8wTllvV3BuM0hVelBuTmc5OXd4REVISEZQUjRQQmRsdGxqWk1JR0RCandjbUFnc2dNR0RCZ3dZQ09NTWloUkZKUW9wYUtGMW1oc1dWQVVCb0lIcFpBQVF0eWlkQ3Ryb0pWQmxFNWxqcU9zbHFSd0FDOXdYTS9BZWlnTWVxendSYzNCOG9pdkR1OXlaM3FQVzl4aVRrTkZRNU5KTEt4S0pBd1lNT0NseGtCa0J3d1lNT0JseHdiRkFrZ0tCQ2cwR2hIQkJVL1ROS2hhY0Y1aERGRm1JSVVVQkZGSThBU2xrV3lwVlFISmxsbWxFZVVSRkVFMVRLNXQwVkRUK0NVek4rWEI4UUczaisvdzFldzJSNXdrQWh0d1NDeDNLNEFEaFlyRVdnYlZnZ0VEWG5ZTVJIYkFnQUVEQm14RUlPQlRKSzB4QnFzdEpTVWxGdXFBbHdhRkVKUkhLWVhvVkpWTGhJQ0taV3UxUmxKOExJQW5oaVY0QlNmTkthZnVoS09UQjl3L3ZzZTlabzhUanFpb3FIRFVpbTZXU2haWUkyQ0kxdDJHd1NnN1lNRExqb0hJRGhnd1lNQ0FqUWlBd2FEUk5ONVJ1eG92SlVvVmFHdHh2a2EwSUZxaGRMU1NhZ1UrcXM3aVEwZ1Z3QUl1aEtoODBEUTAzckdnNGVQOXp6anhVNlp5eEpRakhFdHFLaXJsWUVRWEN5dmRBVm1nUk1jU3VZQWJ0R1FIREhpcE1SRFpBUU1HREhqWmtmUmYxNTlycGFpbDRaQWozci94RzRxWlppSVRkc3dPUmltS3NVRXBVTWFndFVKcFExQzVUSUV3V3k3eDRtbWNwNjRyWm43SmdqbExLbW9jY3h3MURaTC9WQ0JvT21rdHZYcE1zZlpYL0NlRExYYkFnQUVNY3RJREJnd1k4QklqTThXd1dRVkFOQWFOU1pHeU5wRkloZXBOSG4yenFVb0VzM3NlMXA3bnJVY0k2WitrdUlIMmNZN1p6Y2NrM1o4QlZEcHVuL1krWU1DQWx4Y0RrUjB3WU1DQUFRTUdEQmp3dllSKy9FY0dEQmd3WU1DQUFRTUdEUGp1WVNDeUF3WU1HREJnd0lBQkE3NlgrUDhCOUlLaFZRTFZPQW9BQUFBQVNVVk9SSzVDWUlJPVwiXHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSwwLDAsLTEsMCwxKVwiXHJcbiAgICAgICAgICAgICAgICBwcmVzZXJ2ZUFzcGVjdFJhdGlvPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ9ezF9XHJcbiAgICAgICAgICAgICAgICB3aWR0aD17MX1cclxuICAgICAgICAgICAgICAvPlxyXG4gICAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICA8L2c+XHJcbiAgICAgICAgPC9nPiAqL31cclxuICAgICAgICA8L2c+XHJcbiAgICAgICAgPHBhdGhcclxuICAgICAgICAgIGlkPVwicGF0aDM1NC0yXCJcclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXHJcbiAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXHJcbiAgICAgICAgICB9fVxyXG4gICAgICAgICAgZD1cIm0gNzkyLjUyLDQ5NC44MiAtMS41NSw0Ljg0IC0yLjg1LC0wLjkxIGMgLTEuODUsLTAuNTkgLTIuOTcsLTEuMDQgLTMuMzgsLTEuMzQgLTAuNDEsLTAuMzEgLTAuNjksLTAuNjkgLTAuODMsLTEuMTUgLTAuMTMsLTAuNDcgLTAuMTEsLTAuOTkgMC4wNywtMS41NiAwLjIxLC0wLjY0IDAuNTQsLTEuMSAxLjAxLC0xLjM5IDAuNDcsLTAuMjggMS4wMywtMC4zOCAxLjY5LC0wLjI4IDAuMzMsMC4wNSAxLjI3LDAuMzMgMi44MywwLjgzIHogbSA0Ljg4LC0xLjk5IC04LjExLC0yLjU5IGMgLTIuMDMsLTAuNjYgLTMuNTcsLTAuOTYgLTQuNiwtMC45MSAtMS4wMywwLjA1IC0xLjk3LDAuNDIgLTIuOCwxLjEyIC0wLjg0LDAuNyAtMS40MywxLjYxIC0xLjgsMi43NCAtMC40NSwxLjQzIC0wLjQxLDIuNzQgMC4xMywzLjk0IDAuNTUsMS4yIDEuNjIsMi4xOSAzLjIxLDIuOTcgLTAuOTksMC4yMiAtMS44NCwwLjUzIC0yLjU3LDAuOTQgLTAuNzMsMC40MSAtMS43OSwxLjIxIC0zLjE4LDIuNCBsIC0zLjUyLDIuOTcgNC42MSwxLjQ3IDQuMSwtMy4yNiBjIDEuNDcsLTEuMTYgMi40NCwtMS44OCAyLjkzLC0yLjE1IDAuNDksLTAuMjcgMC45NiwtMC40MSAxLjQxLC0wLjQyIDAuNDUsLTAuMDIgMS4xMiwwLjEyIDIuMDEsMC40IGwgMC43OCwwLjI1IC0yLjU1LDcuOTYgMy44NSwxLjIzIHpcIlxyXG4gICAgICAgIC8+XHJcbiAgICAgICAgPHBhdGhcclxuICAgICAgICAgIGlkPVwicGF0aDM1Ni00XCJcclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXHJcbiAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXHJcbiAgICAgICAgICB9fVxyXG4gICAgICAgICAgZD1cIm0gNzY5LjA2LDQ4NC41NyAtMTQuNTQsLTIuOTYgLTAuNjgsMy4zMiAxMC41OCwyLjE1IC0wLjg4LDQuMzUgLTkuODUsLTIuMDEgLTAuNjcsMy4zMSA5Ljg0LDIgLTEuMDgsNS4zNCAtMTAuOTYsLTIuMjMgLTAuNjcsMy4zMSAxNC45MSwzLjAzIHpcIlxyXG4gICAgICAgIC8+XHJcbiAgICAgICAgPHBhdGhcclxuICAgICAgICAgIGlkPVwicGF0aDM1OC03N1wiXHJcbiAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxyXG4gICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcclxuICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAgIGQ9XCJtIDc0MS41NSw0NzkuNzEgLTEzLjY1LC0xLjM1IC0wLjM0LDMuMzcgOS42NCwwLjk1IC0wLjQ3LDQuNzEgLTguMzEsLTAuODIgLTAuMzQsMy4zNyA4LjMyLDAuODIgLTAuODQsOC40NyA0LjAyLDAuMzkgelwiXHJcbiAgICAgICAgLz5cclxuICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgaWQ9XCJwYXRoMzYwLTVcIlxyXG4gICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcclxuICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXHJcbiAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcclxuICAgICAgICAgIH19XHJcbiAgICAgICAgICBkPVwibSA3MTUuMjEsNDc3LjkzIGggLTQuMDQgbCAtMC4wMSwxNi40OCBoIC0xMC4wNSB2IDMuMzcgaCAxNC4wOSB6XCJcclxuICAgICAgICAvPlxyXG4gICAgICAgIDxwYXRoXHJcbiAgICAgICAgICBpZD1cInBhdGgzNjItNFwiXHJcbiAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxyXG4gICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcclxuICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAgIGQ9XCJtIDY4OC44Myw0NzguNCAtMTQuNzcsMS41IDAuMzQsMy4zNyAxMC43NSwtMS4wOSAwLjQ1LDQuNDEgLTEwLDEuMDIgMC4zNCwzLjM1IDEwLC0xLjAxIDAuNTUsNS40MiAtMTEuMTMsMS4xMyAwLjM0LDMuMzUgMTUuMTUsLTEuNTQgelwiXHJcbiAgICAgICAgLz5cclxuICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgaWQ9XCJwYXRoMzY0LThcIlxyXG4gICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcclxuICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXHJcbiAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcclxuICAgICAgICAgIH19XHJcbiAgICAgICAgICBkPVwibSA2NTIuNSw0ODMuMzkgYyAtMi4zOSwwLjUxIC00LjE4LDEuNjMgLTUuMzgsMy4zNiAtMC43MSwxLjAzIC0xLjEyLDIuMzcgLTEuMjMsNC4wMyBsIDQuMTEsMC4xIGMgMC4wMSwtMS4wNiAwLjMyLC0xLjk2IDAuOTMsLTIuNzEgMC42MSwtMC43NCAxLjQ0LC0xLjIyIDIuNDksLTEuNDUgMS40NSwtMC4zMSAyLjc0LC0wLjA0IDMuODcsMC44MSAxLjEyLDAuODUgMS45MywyLjQ0IDIuNDMsNC43NyAwLjUzLDIuNDggMC40Niw0LjM0IC0wLjIxLDUuNTggLTAuNjcsMS4yNCAtMS43MSwyLjAxIC0zLjEzLDIuMzEgLTEuMDYsMC4yMiAtMi4wMywwLjA4IC0yLjkzLC0wLjQyIC0wLjksLTAuNTEgLTEuNjYsLTEuNDQgLTIuMywtMi44MSBsIC0zLjU3LDIuMDMgYyAxLjA0LDIuMDEgMi4zNSwzLjM5IDMuOTQsNC4xNCAxLjU5LDAuNzUgMy40MywwLjkgNS41MywwLjQ1IDIuNiwtMC41NiA0LjU1LC0xLjkgNS44NSwtNC4wMyAxLjI5LC0yLjEzIDEuNjEsLTQuNzQgMC45NiwtNy44MiAtMC43LC0zLjI2IC0yLjA4LC01LjYxIC00LjE0LC03LjA1IC0yLjA3LC0xLjQ1IC00LjQ3LC0xLjg4IC03LjIyLC0xLjI5IHpcIlxyXG4gICAgICAgIC8+XHJcbiAgICAgICAgPHBhdGhcclxuICAgICAgICAgIGlkPVwicGF0aDM2Ni0xXCJcclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXHJcbiAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXHJcbiAgICAgICAgICB9fVxyXG4gICAgICAgICAgZD1cIm0gNjMzLjc0LDQ4OC4zOCAtMTUuMTIsNC45MyAxLjA1LDMuMjIgNS42MywtMS44MyA1LjE2LDE1LjggMy44NCwtMS4yNSAtNS4xNiwtMTUuODEgNS42NSwtMS44NCB6XCJcclxuICAgICAgICAvPlxyXG4gICAgICAgIDxnIGlkPVwiZzc0NC05XCI+XHJcbiAgICAgICAgICA8ZyBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGg3NTAtNSlcIiBpZD1cImc3NDYtM1wiPlxyXG4gICAgICAgICAgICA8Z1xyXG4gICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgyNDguNjQsMCwwLDIxNC41Niw1OTIuNTYsNjA4LjA0KVwiXHJcbiAgICAgICAgICAgICAgaWQ9XCJnNzUyLTZcIlxyXG4gICAgICAgICAgICAvPlxyXG4gICAgICAgICAgPC9nPlxyXG4gICAgICAgIDwvZz5cclxuICAgICAgICA8Z1xyXG4gICAgICAgICAgaWQ9XCJnN1wiXHJcbiAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBcImlubGluZVwiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAgIHRyYW5zZm9ybT1cInJvdGF0ZSgxNzkuMDU2ODcsNzA4LjgzOTQ2LDcwNS44MDA3OSlcIlxyXG4gICAgICAgID5cclxuICAgICAgICAgIDxnXHJcbiAgICAgICAgICAgIGlkPVwiZzYyMFwiXHJcbiAgICAgICAgICAgIHRyYW5zZm9ybT1cInRyYW5zbGF0ZSg5MjUuMTM2NDcsMTcuMDc5NTI5KVwiXHJcbiAgICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgICAgZGlzcGxheTogXCJpbmxpbmVcIixcclxuICAgICAgICAgICAgfX1cclxuICAgICAgICAgID5cclxuICAgICAgICAgICAgPGcgY2xpcFBhdGg9XCJ1cmwoI2NsaXBQYXRoNjI2KVwiIGlkPVwiZzYyMlwiPlxyXG4gICAgICAgICAgICAgIDx0ZXh0XHJcbiAgICAgICAgICAgICAgICBpZD1cInRleHQ2MzBcIlxyXG4gICAgICAgICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgICAgICAgZm9udFZhcmlhbnQ6IFwibm9ybWFsXCIsXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRXZWlnaHQ6IFwibm9ybWFsXCIsXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRTaXplOiBcIjIwcHhcIixcclxuICAgICAgICAgICAgICAgICAgZm9udEZhbWlseTogXCJBcmlhbE1UXCIsXHJcbiAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXHJcbiAgICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgICAgICAgICBmaWxsUnVsZTogXCJub256ZXJvXCIsXHJcbiAgICAgICAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXHJcbiAgICAgICAgICAgICAgICB9fVxyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEsMCwwLC0xLDEwOC40OCw4MTEuNTQpXCJcclxuICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICA8dHNwYW5cclxuICAgICAgICAgICAgICAgICAgaWQ9XCJ0c3BhbjYyOFwiXHJcbiAgICAgICAgICAgICAgICAgIHk9ezB9XHJcbiAgICAgICAgICAgICAgICAgIHg9XCIwXCJcclxuICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAge1widG8gaW5jbHVkZSB2YXJpZXR5IG9mIGRpZmZlcmVudCBcIn1cclxuICAgICAgICAgICAgICAgIDwvdHNwYW4+XHJcbiAgICAgICAgICAgICAgPC90ZXh0PlxyXG4gICAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICA8Z1xyXG4gICAgICAgICAgICBpZD1cImc2MzJcIlxyXG4gICAgICAgICAgICB0cmFuc2Zvcm09XCJ0cmFuc2xhdGUoOTI1LjEzNjQ3LDE3LjA3OTUyOSlcIlxyXG4gICAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICAgIGRpc3BsYXk6IFwiaW5saW5lXCIsXHJcbiAgICAgICAgICAgIH19XHJcbiAgICAgICAgICA+XHJcbiAgICAgICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDYzOClcIiBpZD1cImc2MzRcIj5cclxuICAgICAgICAgICAgICA8dGV4dFxyXG4gICAgICAgICAgICAgICAgaWQ9XCJ0ZXh0NjQyXCJcclxuICAgICAgICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgICAgICAgIGZvbnRWYXJpYW50OiBcIm5vcm1hbFwiLFxyXG4gICAgICAgICAgICAgICAgICBmb250V2VpZ2h0OiBcIm5vcm1hbFwiLFxyXG4gICAgICAgICAgICAgICAgICBmb250U2l6ZTogXCIyMHB4XCIsXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRGYW1pbHk6IFwiQXJpYWxNVFwiLFxyXG4gICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxyXG4gICAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcclxuICAgICAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwibm9uemVyb1wiLFxyXG4gICAgICAgICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxyXG4gICAgICAgICAgICAgICAgfX1cclxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxLDAsMCwtMSw5MS4yLDc4Ny41NClcIlxyXG4gICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgIDx0c3BhblxyXG4gICAgICAgICAgICAgICAgICBpZD1cInRzcGFuNjQwXCJcclxuICAgICAgICAgICAgICAgICAgeT17MH1cclxuICAgICAgICAgICAgICAgICAgeD1cIjAgMTAuMDIgMTQuNDA4NzYgMjUuNTUxMDAxIDQwLjA1OTk1OSA1MS4yMDIyMDIgNjIuMzQ0NDQgNjYuNzkzMzIgNzcuOTM1NTYyIDgzLjUwNjY4MyA5My41MjY2OCA5OC45Nzc1NjIgMTEwLjExOTggMTE1LjY5MDkyIDEyMS4wNjE2NCAxMzEuMDgxNjMgMTM2LjY1Mjc2IDE0Ny43OTUgMTU3Ljg3NTEyIDE2OS4wMTczNiAxODAuMTU5NjEgMTkxLjMwMTgzIDE5NS43NTA3MiAyMDYuOTMzMDQgMjE4LjA3NTI5IDIyNC43ODg2OCAyMzQuODA4NjkgMjM5Ljg5ODgzIDI1MS4wNDEwOCAyNjIuMTgzMzIgMjczLjMyNTU2XCJcclxuICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAge1widmlld3BvaW50cyBvZiBzdGFrZWhvbGRlcnMgYW5kIFwifVxyXG4gICAgICAgICAgICAgICAgPC90c3Bhbj5cclxuICAgICAgICAgICAgICA8L3RleHQ+XHJcbiAgICAgICAgICAgIDwvZz5cclxuICAgICAgICAgIDwvZz5cclxuICAgICAgICAgIDxnXHJcbiAgICAgICAgICAgIGlkPVwiZzY0NFwiXHJcbiAgICAgICAgICAgIHRyYW5zZm9ybT1cInRyYW5zbGF0ZSg5MjUuMTM2NDcsMTcuMDc5NTI5KVwiXHJcbiAgICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgICAgZGlzcGxheTogXCJpbmxpbmVcIixcclxuICAgICAgICAgICAgfX1cclxuICAgICAgICAgID5cclxuICAgICAgICAgICAgPGcgY2xpcFBhdGg9XCJ1cmwoI2NsaXBQYXRoNjUwKVwiIGlkPVwiZzY0NlwiPlxyXG4gICAgICAgICAgICAgIDx0ZXh0XHJcbiAgICAgICAgICAgICAgICBpZD1cInRleHQ2NTRcIlxyXG4gICAgICAgICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgICAgICAgZm9udFZhcmlhbnQ6IFwibm9ybWFsXCIsXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRXZWlnaHQ6IFwibm9ybWFsXCIsXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRTaXplOiBcIjIwcHhcIixcclxuICAgICAgICAgICAgICAgICAgZm9udEZhbWlseTogXCJBcmlhbE1UXCIsXHJcbiAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXHJcbiAgICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgICAgICAgICBmaWxsUnVsZTogXCJub256ZXJvXCIsXHJcbiAgICAgICAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXHJcbiAgICAgICAgICAgICAgICB9fVxyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEsMCwwLC0xLDg1LjY4LDc2My41NClcIlxyXG4gICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgIDx0c3BhblxyXG4gICAgICAgICAgICAgICAgICBpZD1cInRzcGFuNjUyXCJcclxuICAgICAgICAgICAgICAgICAgeT17MH1cclxuICAgICAgICAgICAgICAgICAgeD1cIjAgNS41NzExMTk4IDE2LjcxMzM2IDI3Ljg1NTYgMzMuMjQ2MzYxIDQ0LjM4ODU5OSA1NS41MzA4NDIgNjYuNjczMDggNzEuMTIxOTY0IDc1LjU3MDgzOSA4NS42NzA5OTggOTEuMDYxNzYgMTAyLjIwNCAxMTMuMzQ2MjQgMTE4LjkxNzM2IDEzMC4wNTk2IDE0MS4yMDE4NCAxNDYuNzcyOTYgMTUxLjIyMTg1IDE2Mi4zNjQwNyAxNjYuODEyOTYgMTcxLjI2MTg0IDE4MS4xODE2NCAxODYuNzUyNzYgMTk3Ljg5NSAyMDMuMzg1OTYgMjA4Ljk1NzA4IDIyMC4wOTkzMiAyMzAuMTE5MzIgMjM1LjY5MDQ0IDI0Ni44MzI2OSAyNTcuOTc0OTEgMjYzLjI2NTQ3IDI3NC40MDc3MSAyODQuNDI3NzNcIlxyXG4gICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICB7XCJ0aGUgcHVibGljIHBvdGVudGlhbGx5IGVmZmVjdGVkIGJ5IFwifVxyXG4gICAgICAgICAgICAgICAgPC90c3Bhbj5cclxuICAgICAgICAgICAgICA8L3RleHQ+XHJcbiAgICAgICAgICAgIDwvZz5cclxuICAgICAgICAgIDwvZz5cclxuICAgICAgICAgIDxnXHJcbiAgICAgICAgICAgIGlkPVwiZzY1NlwiXHJcbiAgICAgICAgICAgIHRyYW5zZm9ybT1cInRyYW5zbGF0ZSg5MjUuMTM2NDcsMTcuMDc5NTI5KVwiXHJcbiAgICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgICAgZGlzcGxheTogXCJpbmxpbmVcIixcclxuICAgICAgICAgICAgfX1cclxuICAgICAgICAgID5cclxuICAgICAgICAgICAgPGcgY2xpcFBhdGg9XCJ1cmwoI2NsaXBQYXRoNjYyKVwiIGlkPVwiZzY1OFwiPlxyXG4gICAgICAgICAgICAgIDx0ZXh0XHJcbiAgICAgICAgICAgICAgICBpZD1cInRleHQ2NjZcIlxyXG4gICAgICAgICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgICAgICAgZm9udFZhcmlhbnQ6IFwibm9ybWFsXCIsXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRXZWlnaHQ6IFwibm9ybWFsXCIsXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRTaXplOiBcIjIwcHhcIixcclxuICAgICAgICAgICAgICAgICAgZm9udEZhbWlseTogXCJBcmlhbE1UXCIsXHJcbiAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXHJcbiAgICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgICAgICAgICBmaWxsUnVsZTogXCJub256ZXJvXCIsXHJcbiAgICAgICAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXHJcbiAgICAgICAgICAgICAgICB9fVxyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEsMCwwLC0xLDE4MC42LDczOS41NClcIlxyXG4gICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgIDx0c3BhblxyXG4gICAgICAgICAgICAgICAgICBpZD1cInRzcGFuNjY0XCJcclxuICAgICAgICAgICAgICAgICAgeT17MH1cclxuICAgICAgICAgICAgICAgICAgeD1cIjAgMTEuMTQyMjQgMjIuMjg0NDc5IDI5LjAxNzkyIDM0LjI4ODQ0MSA0NS40MzA2NzkgNTIuMTQ0MDgxIDYzLjI4NjMyIDY3LjczNTE5OSA3OC44Nzc0NDEgODguOTU3NTU4XCJcclxuICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAge1wib3VyIHByb2plY3RcIn1cclxuICAgICAgICAgICAgICAgIDwvdHNwYW4+XHJcbiAgICAgICAgICAgICAgPC90ZXh0PlxyXG4gICAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICA8Z1xyXG4gICAgICAgICAgICBpZD1cImc2NjhcIlxyXG4gICAgICAgICAgICB0cmFuc2Zvcm09XCJ0cmFuc2xhdGUoOTI1LjEzNjQ3LDE3LjA3OTUyOSlcIlxyXG4gICAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICAgIGRpc3BsYXk6IFwiaW5saW5lXCIsXHJcbiAgICAgICAgICAgIH19XHJcbiAgICAgICAgICA+XHJcbiAgICAgICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDY3NClcIiBpZD1cImc2NzBcIj5cclxuICAgICAgICAgICAgICA8dGV4dFxyXG4gICAgICAgICAgICAgICAgaWQ9XCJ0ZXh0Njc4XCJcclxuICAgICAgICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgICAgICAgIGZvbnRWYXJpYW50OiBcIm5vcm1hbFwiLFxyXG4gICAgICAgICAgICAgICAgICBmb250V2VpZ2h0OiBcIm5vcm1hbFwiLFxyXG4gICAgICAgICAgICAgICAgICBmb250U2l6ZTogXCIyMHB4XCIsXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRGYW1pbHk6IFwiQXJpYWxNVFwiLFxyXG4gICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxyXG4gICAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcclxuICAgICAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwibm9uemVyb1wiLFxyXG4gICAgICAgICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxyXG4gICAgICAgICAgICAgICAgfX1cclxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxLDAsMCwtMSw4OS40LDY5MS41NClcIlxyXG4gICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgIDx0c3BhblxyXG4gICAgICAgICAgICAgICAgICBpZD1cInRzcGFuNjc2XCJcclxuICAgICAgICAgICAgICAgICAgeT17MH1cclxuICAgICAgICAgICAgICAgICAgeD1cIjAgNS41NzExMTk4IDE2LjcxMzM2IDIyLjA4NDA4IDMzLjIyNjMxOCA0NC4zNjg1NjEgNDguODE3NDQgNTkuOTU5Njc5IDY1LjUzMDggNzYuNjczMDQyIDgyLjA4MzgzOSA5My4yMjYwODIgMTA0LjM2ODMyIDExNS41MTA1NiAxMjYuNzEyOTIgMTM3Ljg1NTE2IDE0NC41Njg1NiAxNDkuODM5MDggMTYwLjk4MTMyIDE3Mi4xMjM1NyAxODMuMjY1NzkgMTk0LjQ2ODE1IDIwMS4xNDE0OCAyMTEuMjQxNjQgMjE2LjgxMjc2IDIyNy45NTUgMjM5LjA5NzI0IDI1MC4xMTkyNSAyNTQuNTY4MTIgMjY1LjcxMDM2IDI3Ni44NTI2XCJcclxuICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAge1widG8gZ2FpbiBhIGRlZXBlciB1bmRlcnN0YW5kaW5nIFwifVxyXG4gICAgICAgICAgICAgICAgPC90c3Bhbj5cclxuICAgICAgICAgICAgICA8L3RleHQ+XHJcbiAgICAgICAgICAgIDwvZz5cclxuICAgICAgICAgIDwvZz5cclxuICAgICAgICAgIDxnXHJcbiAgICAgICAgICAgIGlkPVwiZzY4MFwiXHJcbiAgICAgICAgICAgIHRyYW5zZm9ybT1cInRyYW5zbGF0ZSg5MjUuMTM2NDcsMTcuMDc5NTI5KVwiXHJcbiAgICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgICAgZGlzcGxheTogXCJpbmxpbmVcIixcclxuICAgICAgICAgICAgfX1cclxuICAgICAgICAgID5cclxuICAgICAgICAgICAgPGcgY2xpcFBhdGg9XCJ1cmwoI2NsaXBQYXRoNjg2KVwiIGlkPVwiZzY4MlwiPlxyXG4gICAgICAgICAgICAgIDx0ZXh0XHJcbiAgICAgICAgICAgICAgICBpZD1cInRleHQ2OTBcIlxyXG4gICAgICAgICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgICAgICAgZm9udFZhcmlhbnQ6IFwibm9ybWFsXCIsXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRXZWlnaHQ6IFwibm9ybWFsXCIsXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRTaXplOiBcIjIwcHhcIixcclxuICAgICAgICAgICAgICAgICAgZm9udEZhbWlseTogXCJBcmlhbE1UXCIsXHJcbiAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXHJcbiAgICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgICAgICAgICBmaWxsUnVsZTogXCJub256ZXJvXCIsXHJcbiAgICAgICAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXHJcbiAgICAgICAgICAgICAgICB9fVxyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEsMCwwLC0xLDE4MS4yLDY2Ny41NClcIlxyXG4gICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgIDx0c3BhblxyXG4gICAgICAgICAgICAgICAgICBpZD1cInRzcGFuNjg4XCJcclxuICAgICAgICAgICAgICAgICAgeT17MH1cclxuICAgICAgICAgICAgICAgICAgeD1cIjAgMTEuMTQyMjQgMjIuMjg0NDc5IDI5LjAxNzkyIDM0LjI4ODQ0MSAzOC43MzczMiA1NS40MzA2NDEgNjYuNTcyODg0IDc3LjcxNTExOCA4Ny43OTUyNDJcIlxyXG4gICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICB7XCJvdXIgaW1wYWN0XCJ9XHJcbiAgICAgICAgICAgICAgICA8L3RzcGFuPlxyXG4gICAgICAgICAgICAgIDwvdGV4dD5cclxuICAgICAgICAgICAgPC9nPlxyXG4gICAgICAgICAgPC9nPlxyXG4gICAgICAgICAgPGdcclxuICAgICAgICAgICAgaWQ9XCJnNjkyXCJcclxuICAgICAgICAgICAgdHJhbnNmb3JtPVwidHJhbnNsYXRlKDkyNS4xMzY0NywxNy4wNzk1MjkpXCJcclxuICAgICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgICBkaXNwbGF5OiBcImlubGluZVwiLFxyXG4gICAgICAgICAgICB9fVxyXG4gICAgICAgICAgPlxyXG4gICAgICAgICAgICA8ZyBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGg2OTgpXCIgaWQ9XCJnNjk0XCI+XHJcbiAgICAgICAgICAgICAgPHRleHRcclxuICAgICAgICAgICAgICAgIGlkPVwidGV4dDcwMlwiXHJcbiAgICAgICAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICAgICAgICBmb250VmFyaWFudDogXCJub3JtYWxcIixcclxuICAgICAgICAgICAgICAgICAgZm9udFdlaWdodDogXCJub3JtYWxcIixcclxuICAgICAgICAgICAgICAgICAgZm9udFNpemU6IFwiMjBweFwiLFxyXG4gICAgICAgICAgICAgICAgICBmb250RmFtaWx5OiBcIkFyaWFsTVRcIixcclxuICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcclxuICAgICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXHJcbiAgICAgICAgICAgICAgICAgIGZpbGxSdWxlOiBcIm5vbnplcm9cIixcclxuICAgICAgICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcclxuICAgICAgICAgICAgICAgIH19XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSwwLDAsLTEsMTA4Ljk2LDYxOS41NClcIlxyXG4gICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgIDx0c3BhbiBpZD1cInRzcGFuNzAwXCIgeT17MH0geD17MH0+XHJcbiAgICAgICAgICAgICAgICAgIHtcInRcIn1cclxuICAgICAgICAgICAgICAgIDwvdHNwYW4+XHJcbiAgICAgICAgICAgICAgPC90ZXh0PlxyXG4gICAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICA8Z1xyXG4gICAgICAgICAgICBpZD1cImc3MDRcIlxyXG4gICAgICAgICAgICB0cmFuc2Zvcm09XCJ0cmFuc2xhdGUoOTI1LjEzNjQ3LDE3LjA3OTUyOSlcIlxyXG4gICAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICAgIGRpc3BsYXk6IFwiaW5saW5lXCIsXHJcbiAgICAgICAgICAgIH19XHJcbiAgICAgICAgICA+XHJcbiAgICAgICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDcxMClcIiBpZD1cImc3MDZcIj5cclxuICAgICAgICAgICAgICA8dGV4dFxyXG4gICAgICAgICAgICAgICAgaWQ9XCJ0ZXh0NzE0XCJcclxuICAgICAgICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgICAgICAgIGZvbnRWYXJpYW50OiBcIm5vcm1hbFwiLFxyXG4gICAgICAgICAgICAgICAgICBmb250V2VpZ2h0OiBcIm5vcm1hbFwiLFxyXG4gICAgICAgICAgICAgICAgICBmb250U2l6ZTogXCIyMHB4XCIsXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRGYW1pbHk6IFwiQXJpYWxNVFwiLFxyXG4gICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxyXG4gICAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcclxuICAgICAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwibm9uemVyb1wiLFxyXG4gICAgICAgICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxyXG4gICAgICAgICAgICAgICAgfX1cclxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxLDAsMCwtMSwxMTQuNDgsNjE5LjU0KVwiXHJcbiAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgPHRzcGFuXHJcbiAgICAgICAgICAgICAgICAgIGlkPVwidHNwYW43MTJcIlxyXG4gICAgICAgICAgICAgICAgICB5PXswfVxyXG4gICAgICAgICAgICAgICAgICB4PVwiMCAxMS4xNDIyNCAxNi41NTMwNCAyNy42OTUyOCAzOC44Mzc1MjEgNDguOTM3Njc5IDYwLjA3OTkyMiA2Ni43OTMzMiA3Ny45MzU1NjIgODMuMjI2MTIgOTQuMzY4MzYyIDk5LjkzOTQ4NCAxMDQuMzg4MzYgMTA4LjgzNzI0IDExMy4yODYxMiAxMjMuMzA2MTIgMTM0LjQ0ODM2IDE0MC4wMTk0OSAxNDQuNDY4MzUgMTU1LjYxMDYgMTY2Ljc1Mjg0IDE3Mi4xNDM2IDE4My4yODU4NCAxODguODU2OTYgMTk0LjM0NzkyIDIwNS40OTAxNiAyMTYuNjMyNCAyMjYuNzMyNTYgMjMyLjMwMzY4XCJcclxuICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAge1wibyBlbnN1cmUgdXRpbGl6YXRpb24gb2YgcGFzdCBcIn1cclxuICAgICAgICAgICAgICAgIDwvdHNwYW4+XHJcbiAgICAgICAgICAgICAgPC90ZXh0PlxyXG4gICAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICA8Z1xyXG4gICAgICAgICAgICBpZD1cImc3MTZcIlxyXG4gICAgICAgICAgICB0cmFuc2Zvcm09XCJ0cmFuc2xhdGUoOTI1LjEzNjQ3LDE3LjA3OTUyNSlcIlxyXG4gICAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICAgIGRpc3BsYXk6IFwiaW5saW5lXCIsXHJcbiAgICAgICAgICAgIH19XHJcbiAgICAgICAgICA+XHJcbiAgICAgICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDcyMilcIiBpZD1cImc3MThcIj5cclxuICAgICAgICAgICAgICA8dGV4dFxyXG4gICAgICAgICAgICAgICAgaWQ9XCJ0ZXh0NzI2XCJcclxuICAgICAgICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgICAgICAgIGZvbnRWYXJpYW50OiBcIm5vcm1hbFwiLFxyXG4gICAgICAgICAgICAgICAgICBmb250V2VpZ2h0OiBcIm5vcm1hbFwiLFxyXG4gICAgICAgICAgICAgICAgICBmb250U2l6ZTogXCIyMHB4XCIsXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRGYW1pbHk6IFwiQXJpYWxNVFwiLFxyXG4gICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxyXG4gICAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcclxuICAgICAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwibm9uemVyb1wiLFxyXG4gICAgICAgICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxyXG4gICAgICAgICAgICAgICAgfX1cclxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxLDAsMCwtMSwxMDUuNiw1OTUuNTQpXCJcclxuICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICA8dHNwYW5cclxuICAgICAgICAgICAgICAgICAgaWQ9XCJ0c3BhbjcyNFwiXHJcbiAgICAgICAgICAgICAgICAgIHk9ezB9XHJcbiAgICAgICAgICAgICAgICAgIHg9XCIwIDExLjE0MjI0IDIxLjE2MjIzOSAzMi4zMDQ0ODIgNDMuNDQ2NzIgNTAuMTIwMDQxIDU0LjU2ODkyIDY1LjcxMTE1OSA3Ni44OTM0NzggODYuOTEzNDgzIDk4LjExNTgzNyAxMDguMTM1ODQgMTEzLjM0NjI0IDEyNC40ODg0OCAxMzAuMDU5NiAxMzUuNDMwMzEgMTM5Ljg3OTIgMTUxLjAyMTQ0IDE2Mi4xNjM2OCAxNzMuMzA1OTIgMTgzLjQwNjA4IDE4OC45NzcyIDE5NS42NTA1MSAyMDAuMDk5NCAyMTEuMjQxNjQgMjIxLjMwMTczIDIyNi41NzIyNCAyMzcuNzE0NDggMjQ0LjQyNzg5XCJcclxuICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAge1wiZXhwZXJpZW5jZXMgb2YgaW5kdXN0cmllcyBvciBcIn1cclxuICAgICAgICAgICAgICAgIDwvdHNwYW4+XHJcbiAgICAgICAgICAgICAgPC90ZXh0PlxyXG4gICAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICA8Z1xyXG4gICAgICAgICAgICBpZD1cImc3MjhcIlxyXG4gICAgICAgICAgICB0cmFuc2Zvcm09XCJ0cmFuc2xhdGUoOTI1LjEzNjQ3LDE3LjA3OTUyOSlcIlxyXG4gICAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICAgIGRpc3BsYXk6IFwiaW5saW5lXCIsXHJcbiAgICAgICAgICAgIH19XHJcbiAgICAgICAgICA+XHJcbiAgICAgICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDczNClcIiBpZD1cImc3MzBcIj5cclxuICAgICAgICAgICAgICA8dGV4dFxyXG4gICAgICAgICAgICAgICAgaWQ9XCJ0ZXh0NzM4XCJcclxuICAgICAgICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgICAgICAgIGZvbnRWYXJpYW50OiBcIm5vcm1hbFwiLFxyXG4gICAgICAgICAgICAgICAgICBmb250V2VpZ2h0OiBcIm5vcm1hbFwiLFxyXG4gICAgICAgICAgICAgICAgICBmb250U2l6ZTogXCIyMHB4XCIsXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRGYW1pbHk6IFwiQXJpYWxNVFwiLFxyXG4gICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxyXG4gICAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcclxuICAgICAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwibm9uemVyb1wiLFxyXG4gICAgICAgICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxyXG4gICAgICAgICAgICAgICAgfX1cclxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxLDAsMCwtMSwxODEuMDgsNTcxLjU0KVwiXHJcbiAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgPHRzcGFuXHJcbiAgICAgICAgICAgICAgICAgIGlkPVwidHNwYW43MzZcIlxyXG4gICAgICAgICAgICAgICAgICB5PXswfVxyXG4gICAgICAgICAgICAgICAgICB4PVwiMCA0LjQ0ODg4MDIgMTUuNTkxMTIgMjYuNzMzMzYgMzEuMTgyMjQgNDEuMjAyMjQgNDUuNjUxMTE5IDU2Ljc5MzM2MiA2Ny45MzU2IDc5LjA3Nzg0MyA4My41MjY3MThcIlxyXG4gICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICB7XCJpbmRpdmlkdWFsc1wifVxyXG4gICAgICAgICAgICAgICAgPC90c3Bhbj5cclxuICAgICAgICAgICAgICA8L3RleHQ+XHJcbiAgICAgICAgICAgIDwvZz5cclxuICAgICAgICAgIDwvZz5cclxuICAgICAgICA8L2c+XHJcbiAgICAgIDwvZz5cclxuICAgICAgPGdcclxuICAgICAgICBpZD1cInJlZmxlY3RcIlxyXG4gICAgICAgIGNsYXNzTmFtZT1cImhwMyByZWZsZWN0LXZlcnNpb25cIlxyXG4gICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICBkaXNwbGF5OiBcImlubGluZVwiLFxyXG4gICAgICAgIH19XHJcbiAgICAgICAgdHJhbnNmb3JtPVwicm90YXRlKDg5Ljg1ODA5Nyw3MDcuODM2NTUsNzA2Ljk2MzIzKVwiXHJcbiAgICAgID5cclxuICAgICAgICA8YSBvbkNsaWNrPXtvcGVuQ2xhc3Nlcyh7Y2xhc3NOYW1lOiBcImhwMyBhbnRpY2lwYXRlLXZlcnNpb25cIiwgY2xhc3N0b0hpZGU6IFwiaHAzXCJ9KX0+XHJcbiAgICAgICAgPHBhdGhcclxuICAgICAgICAgIGlkPVwicmVmbGVjdC1hbnRpY2lwYXRlXCJcclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIGZpbGw6IFwiI2I4NWJkMVwiLFxyXG4gICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcclxuICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAgIGQ9XCJtIDg5NC41LDg5MC4wMyAtNi40OCwtNTEuOCAtNDkuNTcsLTYuMTkgYyAzMS42MywtMzIuNTcgNTEuMTIsLTc3LjAxIDUxLjEyLC0xMjYuMDEgMCwtNDAuMTcgLTEzLjEsLTc3LjI3IC0zNS4yNCwtMTA3LjI4IGwgNi41LC01Mi4xMSA1MC4yLC02LjI4IGMgMzYuOTcsNDUuMTEgNTkuMTcsMTAyLjggNTkuMTcsMTY1LjY3IDAsNzEuNzYgLTI4LjkxLDEzNi43NiAtNzUuNywxODQgelwiXHJcbiAgICAgICAgLz4gPC9hPlxyXG4gICAgICAgIDxhIG9uQ2xpY2s9e29wZW5DbGFzc2VzKHtjbGFzc05hbWU6IFwiaHAzIGFjdC12ZXJzaW9uXCIsIGNsYXNzdG9IaWRlOiBcImhwM1wifSl9PlxyXG4gICAgICAgIDxwYXRoXHJcbiAgICAgICAgICBpZD1cInJlZmxlY3QtYWN0XCJcclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIGZpbGw6IFwiIzg1MGU3OFwiLFxyXG4gICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcclxuICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAgIGQ9XCJtIDcwOC43LDk2Ny40MyBjIC03MS43MywwIC0xMzYuNzEsLTI4LjkgLTE4My45NCwtNzUuNjkgbCA1MS43OCwtNi40OCA2LjE5LC00OS41OCBjIDMyLjU3LDMxLjY0IDc3LDUxLjEzIDEyNS45Nyw1MS4xMyA0MC4xNiwwIDc3LjI1LC0xMy4xIDEwNy4yNSwtMzUuMjUgbCA1Mi4xLDYuNTEgNi4yNyw1MC4yMSBjIC00NS4wOSwzNi45NiAtMTAyLjc2LDU5LjE1IC0xNjUuNjIsNTkuMTUgelwiXHJcbiAgICAgICAgLz4gPC9hPlxyXG4gICAgICAgIDxhIG9uQ2xpY2s9e29wZW5DbGFzc2VzKHtjbGFzc05hbWU6IFwiaHAzIGVuZ2FnZS12ZXJzaW9uXCIsIGNsYXNzdG9IaWRlOiBcImhwM1wifSl9PlxyXG4gICAgICAgIDxwYXRoXHJcbiAgICAgICAgICBpZD1cInJlZmxlY3QtZW5nYWdlXCJcclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIGZpbGw6IFwiI2NlOWZjOVwiLFxyXG4gICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcclxuICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAgIGQ9XCJtIDUwNi40MSw4NzEuNjcgYyAtMzYuOTcsLTQ1LjEgLTU5LjE2LC0xMDIuNzkgLTU5LjE2LC0xNjUuNjYgMCwtNzEuNzYgMjguOSwtMTM2Ljc2IDc1LjcsLTE4NCBsIDYuNDYsNTEuNzkgNDkuNTksNi4yIGMgLTMxLjY0LDMyLjU3IC01MS4xMyw3Ny4wMSAtNTEuMTMsMTI2LjAxIDAsNDAuMTYgMTMuMSw3Ny4yNiAzNS4yNSwxMDcuMjggbCAtNi41MSw1Mi4xMSB6XCJcclxuICAgICAgICAvPiA8L2E+XHJcbiAgICAgICAgPGEgb25DbGljaz17b3BlbkNsYXNzZXMoe2NsYXNzTmFtZTogXCJocDMgcmVmbGVjdC12ZXJzaW9uXCIsIGNsYXNzdG9IaWRlOiBcImhwM1wifSl9PlxyXG4gICAgICAgIDxwYXRoXHJcbiAgICAgICAgICBpZD1cInJlZmxlY3QtcmVmbGVjdFwiXHJcbiAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICBmaWxsOiBcIiNhMGE3ZjNcIixcclxuICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXHJcbiAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcclxuICAgICAgICAgIH19XHJcbiAgICAgICAgICBkPVwibSA4MzQuNjgsNTc2LjIzIGMgLTMyLjU3LC0zMS42MyAtNzcuMDEsLTUxLjEyIC0xMjYuMDEsLTUxLjEyIC00MC4xNiwwIC03Ny4yNiwxMy4xIC0xMDcuMjcsMzUuMjQgbCAtNTIuMTIsLTYuNSAtNi4yNywtNTAuMiBjIDQ1LjEsLTM2Ljk4IDEwMi43OCwtNTkuMTcgMTY1LjY2LC01OS4xNyA3MS43NiwwIDEzNi43NSwyOC45MSAxODQuMDEsNzUuNyBsIC01MS44MSw2LjQ4IHpcIlxyXG4gICAgICAgIC8+PC9hPlxyXG4gICAgICAgIDxwYXRoXHJcbiAgICAgICAgICBpZD1cInBhdGg2NC00NC0xXCJcclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXHJcbiAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXHJcbiAgICAgICAgICB9fVxyXG4gICAgICAgICAgZD1cIm0gNjg2LjE3LDkyNi42IC0xLjMzLC03Ljc5IDUuMzcsMC45OCB6IG0gLTIuOSw0LjIyIDQuMjEsMC43NyAxMS40OCwtMTguMjUgLTQuMzMsLTAuNzkgLTIuNTMsNC4xNiAtNy44NywtMS40NCAtMC44MSwtNC43NyAtNC4yMiwtMC43NyB6XCJcclxuICAgICAgICAvPlxyXG4gICAgICAgIDxwYXRoXHJcbiAgICAgICAgICBpZD1cInBhdGg2Ni00LTlcIlxyXG4gICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcclxuICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXHJcbiAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcclxuICAgICAgICAgIH19XHJcbiAgICAgICAgICBkPVwibSA3MTYuNzksOTM0LjE4IGMgMi40NSwtMC4wMiA0LjQzLC0wLjc3IDUuOTQsLTIuMjMgMC45LC0wLjg3IDEuNTcsLTIuMSAyLjAxLC0zLjcxIGwgLTQuMDEsLTAuOTEgYyAtMC4yMywxLjA0IC0wLjcxLDEuODYgLTEuNDYsMi40NyAtMC43NCwwLjYxIC0xLjY1LDAuOTIgLTIuNzIsMC45MyAtMS40OSwwLjAyIC0yLjcsLTAuNSAtMy42MywtMS41NiAtMC45NCwtMS4wNiAtMS40MiwtMi43NyAtMS40NCwtNS4xNiAtMC4wMywtMi41MyAwLjQxLC00LjM0IDEuMzEsLTUuNDIgMC45LC0xLjA4IDIuMDcsLTEuNjMgMy41MywtMS42NSAxLjA3LC0wLjAxIDIsMC4zMiAyLjc4LDEgMC43OCwwLjY3IDEuMzUsMS43NCAxLjcsMy4yIGwgMy45MSwtMS4yOCBjIC0wLjYzLC0yLjE4IC0xLjY0LC0zLjc5IC0zLjA1LC00Ljg0IC0xLjQxLC0xLjA0IC0zLjE5LC0xLjU1IC01LjM0LC0xLjUzIC0yLjY1LDAuMDMgLTQuODMsMC45NiAtNi41MiwyLjc5IC0xLjY5LDEuODMgLTIuNTIsNC4zMiAtMi40OSw3LjQ3IDAuMDQsMy4zMyAwLjkyLDUuOTEgMi42Niw3Ljc0IDEuNzQsMS44MiA0LjAxLDIuNzIgNi44MiwyLjY5IHpcIlxyXG4gICAgICAgIC8+XHJcbiAgICAgICAgPHBhdGhcclxuICAgICAgICAgIGlkPVwicGF0aDY4LTQtNlwiXHJcbiAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxyXG4gICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcclxuICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAgIGQ9XCJtIDczNy4zOSw5MzIuNDIgMTUuNjIsLTMuMDEgLTAuNjQsLTMuMzMgLTUuODIsMS4xMyAtMy4xNSwtMTYuMzMgLTMuOTcsMC43NyAzLjE1LDE2LjMyIC01LjgzLDEuMTMgelwiXHJcbiAgICAgICAgLz5cclxuICAgICAgICA8ZyBpZD1cImc3MC03LTlcIj5cclxuICAgICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDc2LTEtMClcIiBpZD1cImc3Mi02My0zXCI+XHJcbiAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgaWQ9XCJwYXRoNzgtMTctM1wiXHJcbiAgICAgICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXHJcbiAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcclxuICAgICAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXHJcbiAgICAgICAgICAgICAgfX1cclxuICAgICAgICAgICAgICBkPVwibSA0OTQuMzgsNjI1LjM3IC0zLjk3LDE0LjMgMy4yNiwwLjkxIDIuODksLTEwLjQxIDQuMjcsMS4xOSAtMi42OSw5LjY4IDMuMjUsMC45IDIuNjksLTkuNjggNS4yNSwxLjQ2IC0yLjk5LDEwLjc3IDMuMjUsMC45MSA0LjA3LC0xNC42NyB6XCJcclxuICAgICAgICAgICAgLz5cclxuICAgICAgICAgIDwvZz5cclxuICAgICAgICA8L2c+XHJcbiAgICAgICAgPGcgaWQ9XCJnODAtNS04XCI+XHJcbiAgICAgICAgICA8ZyBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGg4Ni05LTEpXCIgaWQ9XCJnODItOS0wXCI+XHJcbiAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgaWQ9XCJwYXRoODgtNi01XCJcclxuICAgICAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcclxuICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcclxuICAgICAgICAgICAgICB9fVxyXG4gICAgICAgICAgICAgIGQ9XCJtIDQ4Ny41Myw2NTIuNSAtMC42NSwzLjg4IDExLjgzLDEwLjI5IC0xMy4xOCwtMi4yMSAtMC42MywzLjcgMTkuNzQsMy4zMSAwLjY3LC00IC0xMS41NCwtMTAuMTEgMTIuODgsMi4xNSAwLjYyLC0zLjcgelwiXHJcbiAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICA8L2c+XHJcbiAgICAgICAgPC9nPlxyXG4gICAgICAgIDxnIGlkPVwiZzkwLTIxLTZcIj5cclxuICAgICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDk2LTktNSlcIiBpZD1cImc5Mi03LTZcIj5cclxuICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICBpZD1cInBhdGg5OC04LTRcIlxyXG4gICAgICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxyXG4gICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXHJcbiAgICAgICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxyXG4gICAgICAgICAgICAgIH19XHJcbiAgICAgICAgICAgICAgZD1cIm0gNDgyLjQ4LDY5MC45MiBjIC0wLjE0LDIuNDggMC4yNyw0LjQ1IDEuMjMsNS45IDAuOTYsMS40NSAyLjM1LDIuNDMgNC4xNiwyLjkzIGwgMC45OCwtMy45NiBjIC0wLjk3LC0wLjM0IC0xLjcxLC0wLjkxIC0yLjI0LC0xLjcyIC0wLjUyLC0wLjgxIC0wLjc1LC0xLjc5IC0wLjY5LC0yLjk2IDAuMSwtMS43NiAwLjc0LC0zLjEzIDEuOTIsLTQuMTEgMS4xNywtMC45OCAyLjg2LC0xLjQgNS4wNiwtMS4yOCAyLjM3LDAuMTMgNC4xMiwwLjc2IDUuMjUsMS44OCAxLjEyLDEuMTIgMS42NCwyLjU0IDEuNTQsNC4yNSAtMC4wNCwwLjg0IC0wLjI2LDEuNjggLTAuNjQsMi41MSAtMC4zOCwwLjgzIC0wLjgyLDEuNTQgLTEuMzMsMi4xMiBsIC0yLjUzLC0wLjE0IDAuMjYsLTQuNjIgLTMuMzcsLTAuMTkgLTAuNDksOC42OSA3Ljk2LDAuNDUgYyAwLjg3LC0wLjggMS42NiwtMS45OCAyLjM3LC0zLjU1IDAuNzEsLTEuNTcgMS4xMiwtMy4xOCAxLjIxLC00LjgyIDAuMTIsLTIuMDkgLTAuMjIsLTMuOTQgLTEuMDEsLTUuNTQgLTAuNzksLTEuNjEgLTEuOTgsLTIuODQgLTMuNTcsLTMuNzIgLTEuNTgsLTAuODcgLTMuMzMsLTEuMzYgLTUuMjUsLTEuNDcgLTIuMDgsLTAuMTIgLTMuOTYsMC4yMiAtNS42MiwxIC0xLjY3LDAuNzggLTIuOTgsMS45OSAtMy45NCwzLjYyIC0wLjc0LDEuMjQgLTEuMTYsMi44MiAtMS4yNiw0LjczIHpcIlxyXG4gICAgICAgICAgICAvPlxyXG4gICAgICAgICAgPC9nPlxyXG4gICAgICAgIDwvZz5cclxuICAgICAgICA8ZyBpZD1cImcxMDAtNS0wXCI+XHJcbiAgICAgICAgICA8ZyBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGgxMDYtOS0xKVwiIGlkPVwiZzEwMi03LTBcIj5cclxuICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICBpZD1cInBhdGgxMDgtNC00XCJcclxuICAgICAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcclxuICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcclxuICAgICAgICAgICAgICB9fVxyXG4gICAgICAgICAgICAgIGQ9XCJtIDQ4Ny40Myw3MjAuNTYgNy4yOCwtMy4wOSAwLjI5LDUuNDUgeiBtIC00Ljc3LC0xLjg0IDAuMjMsNC4yNyAyMC40MSw2Ljk1IC0wLjI0LC00LjM5IC00LjYzLC0xLjUxIC0wLjQyLC03Ljk5IDQuNDUsLTEuODkgLTAuMjMsLTQuMjggelwiXHJcbiAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICA8L2c+XHJcbiAgICAgICAgPC9nPlxyXG4gICAgICAgIDxnIGlkPVwiZzExMC0xLTZcIj5cclxuICAgICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDExNi03LTgpXCIgaWQ9XCJnMTEyLTgtMlwiPlxyXG4gICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgIGlkPVwicGF0aDExOC01LTZcIlxyXG4gICAgICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxyXG4gICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXHJcbiAgICAgICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxyXG4gICAgICAgICAgICAgIH19XHJcbiAgICAgICAgICAgICAgZD1cIm0gNDg1Ljc2LDc1MS42MSBjIDAuNCwyLjQ1IDEuMjMsNC4yOCAyLjQ4LDUuNDkgMS4yNiwxLjIxIDIuODMsMS44NyA0LjcxLDEuOTcgbCAwLjA5LC00LjA5IGMgLTEuMDIsLTAuMTIgLTEuODcsLTAuNTEgLTIuNTYsLTEuMTkgLTAuNjksLTAuNjggLTEuMTIsLTEuNTkgLTEuMzEsLTIuNzQgLTAuMjksLTEuNzQgMC4wNCwtMy4yMiAwLjk3LC00LjQzIDAuOTQsLTEuMjEgMi40OSwtMS45OSA0LjY3LC0yLjM1IDIuMzQsLTAuMzggNC4xOCwtMC4xNSA1LjUzLDAuNyAxLjM0LDAuODUgMi4xNSwyLjEyIDIuNDMsMy44MSAwLjEzLDAuODMgMC4xMSwxLjcgLTAuMDgsMi41OSAtMC4xOSwwLjg5IC0wLjQ3LDEuNjggLTAuODQsMi4zNiBsIC0yLjUxLDAuNDEgLTAuNzQsLTQuNTcgLTMuMzMsMC41NSAxLjQxLDguNiA3Ljg3LC0xLjMgYyAwLjY3LC0wLjk2IDEuMTgsLTIuMjkgMS41NCwtMy45OCAwLjM1LC0xLjY4IDAuMzksLTMuMzQgMC4xMywtNC45NyAtMC4zNCwtMi4wNiAtMS4wNywtMy43OSAtMi4xOSwtNS4xOCAtMS4xMiwtMS40IC0yLjU1LC0yLjM1IC00LjI5LC0yLjg2IC0xLjczLC0wLjUgLTMuNTUsLTAuNiAtNS40NSwtMC4yOSAtMi4wNSwwLjM0IC0zLjgxLDEuMDcgLTUuMjcsMi4xOSAtMS40NSwxLjEzIC0yLjQ3LDIuNTkgLTMuMDUsNC4zOSAtMC40NSwxLjM4IC0wLjUyLDMuMDEgLTAuMjEsNC44OSB6XCJcclxuICAgICAgICAgICAgLz5cclxuICAgICAgICAgIDwvZz5cclxuICAgICAgICA8L2c+XHJcbiAgICAgICAgPGcgaWQ9XCJnMTIwLTktN1wiPlxyXG4gICAgICAgICAgPGcgY2xpcFBhdGg9XCJ1cmwoI2NsaXBQYXRoMTI2LTEtMClcIiBpZD1cImcxMjItNy01XCI+XHJcbiAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgaWQ9XCJwYXRoMTI4LTUtNlwiXHJcbiAgICAgICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXHJcbiAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcclxuICAgICAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXHJcbiAgICAgICAgICAgICAgfX1cclxuICAgICAgICAgICAgICBkPVwibSA0OTAuNDIsNzcyLjk5IDMuOTcsMTQuMyAzLjI2LC0wLjkgLTIuODksLTEwLjQxIDQuMjgsLTEuMTkgMi42OSw5LjY5IDMuMjQsLTAuOTEgLTIuNjgsLTkuNjggNS4yNSwtMS40NSAyLjk5LDEwLjc3IDMuMjUsLTAuOSAtNC4wNywtMTQuNjcgelwiXHJcbiAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICA8L2c+XHJcbiAgICAgICAgPC9nPlxyXG4gICAgICAgIDxnIGlkPVwiZzEzMC0zOC05XCI+XHJcbiAgICAgICAgICA8ZyBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGgxMzYtNS00KVwiIGlkPVwiZzEzMi04LThcIj5cclxuICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICBpZD1cInBhdGgxMzgtMy03XCJcclxuICAgICAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcclxuICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcclxuICAgICAgICAgICAgICB9fVxyXG4gICAgICAgICAgICAgIGQ9XCJtIDkxMi43Nyw4MTAuMiAtNy44OSwtMC41IDIuMTksLTUgeiBtIDMuNDQsMy43OSAxLjcxLC0zLjkyIC0xNS4xMiwtMTUuMzYgLTEuNzYsNC4wMiAzLjQ2LDMuNDMgLTMuMiw3LjMyIC00LjgzLC0wLjMgLTEuNzIsMy45MiB6XCJcclxuICAgICAgICAgICAgLz5cclxuICAgICAgICAgIDwvZz5cclxuICAgICAgICA8L2c+XHJcbiAgICAgICAgPGcgaWQ9XCJnMTQwLTEtMlwiPlxyXG4gICAgICAgICAgPGcgY2xpcFBhdGg9XCJ1cmwoI2NsaXBQYXRoMTQ2LTctMilcIiBpZD1cImcxNDItOC04XCI+XHJcbiAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgaWQ9XCJwYXRoMTQ4LTktMlwiXHJcbiAgICAgICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXHJcbiAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcclxuICAgICAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXHJcbiAgICAgICAgICAgICAgfX1cclxuICAgICAgICAgICAgICBkPVwibSA5MjQuOTEsNzkyLjM4IDEuMTcsLTMuNzUgLTEwLjMxLC0xMS44MSAxMi43NiwzLjk5IDEuMTIsLTMuNTggLTE5LjExLC01Ljk3IC0xLjIxLDMuODcgMTAuMDUsMTEuNTkgLTEyLjQ1LC0zLjg5IC0xLjEyLDMuNTggelwiXHJcbiAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICA8L2c+XHJcbiAgICAgICAgPC9nPlxyXG4gICAgICAgIDxnIGlkPVwiZzE1MC02LTlcIj5cclxuICAgICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDE1Ni0zLTgpXCIgaWQ9XCJnMTUyLTQtOVwiPlxyXG4gICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgIGlkPVwicGF0aDE1OC0zLTZcIlxyXG4gICAgICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxyXG4gICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXHJcbiAgICAgICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxyXG4gICAgICAgICAgICAgIH19XHJcbiAgICAgICAgICAgICAgZD1cIm0gOTMyLjU3LDc2NS44OCAzLjE1LC0xNS41OSAtMy4zMiwtMC42NyAtMS4xNyw1LjgxIC0xNi4zLC0zLjI5IC0wLjgsMy45NiAxNi4zLDMuMjkgLTEuMTgsNS44MiB6XCJcclxuICAgICAgICAgICAgLz5cclxuICAgICAgICAgIDwvZz5cclxuICAgICAgICA8L2c+XHJcbiAgICAgICAgPGcgaWQ9XCJnMTYwLTMtMFwiPlxyXG4gICAgICAgICAgPGcgY2xpcFBhdGg9XCJ1cmwoI2NsaXBQYXRoMTY2LTYtMilcIiBpZD1cImcxNjItMzgtMlwiPlxyXG4gICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgIGlkPVwicGF0aDE2OC02LTdcIlxyXG4gICAgICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxyXG4gICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXHJcbiAgICAgICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxyXG4gICAgICAgICAgICAgIH19XHJcbiAgICAgICAgICAgICAgZD1cIm0gOTM3LjI2LDczOS4yNyAwLjQ4LC00LjAxIC0xOS44NywtMi4zOSAtMC40OCw0LjAxIHpcIlxyXG4gICAgICAgICAgICAvPlxyXG4gICAgICAgICAgPC9nPlxyXG4gICAgICAgIDwvZz5cclxuICAgICAgICA8ZyBpZD1cImcxNzAtMC02XCI+XHJcbiAgICAgICAgICA8ZyBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGgxNzYtOS00KVwiIGlkPVwiZzE3Mi00LTFcIj5cclxuICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICBpZD1cInBhdGgxNzgtOC0zXCJcclxuICAgICAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcclxuICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcclxuICAgICAgICAgICAgICB9fVxyXG4gICAgICAgICAgICAgIGQ9XCJtIDkzOS41OCw3MTQuMjkgYyAwLjA4LC0yLjQ0IC0wLjU3LC00LjQ2IC0xLjk3LC02LjAzIC0wLjgyLC0wLjk0IC0yLjAzLC0xLjY2IC0zLjYyLC0yLjE3IGwgLTEuMDgsMy45NyBjIDEuMDMsMC4yNyAxLjgzLDAuNzkgMi40LDEuNTYgMC41OCwwLjc3IDAuODUsMS42OSAwLjgxLDIuNzYgLTAuMDUsMS40OSAtMC42MiwyLjY3IC0xLjcxLDMuNTYgLTEuMSwwLjg5IC0yLjg0LDEuMjkgLTUuMjIsMS4yMSAtMi41MywtMC4wOCAtNC4zMiwtMC42IC01LjM2LC0xLjU0IC0xLjA0LC0wLjk1IC0xLjU0LC0yLjE1IC0xLjQ5LC0zLjYgMC4wMywtMS4wOCAwLjQxLC0xLjk5IDEuMTEsLTIuNzQgMC43MSwtMC43NSAxLjgsLTEuMjcgMy4yOCwtMS41NiBsIC0xLjExLC0zLjk1IGMgLTIuMjEsMC41MiAtMy44NiwxLjQ3IC00Ljk3LDIuODMgLTEuMSwxLjM2IC0xLjY5LDMuMTEgLTEuNzYsNS4yNiAtMC4wOSwyLjY2IDAuNzQsNC44NyAyLjUsNi42NCAxLjc2LDEuNzcgNC4yMSwyLjcxIDcuMzYsMi44MSAzLjMzLDAuMTEgNS45NCwtMC42NiA3Ljg0LC0yLjMyIDEuOSwtMS42NSAyLjksLTMuODggMi45OSwtNi42OSB6XCJcclxuICAgICAgICAgICAgLz5cclxuICAgICAgICAgIDwvZz5cclxuICAgICAgICA8L2c+XHJcbiAgICAgICAgPGcgaWQ9XCJnMTgwLTg4LTJcIj5cclxuICAgICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDE4Ni04LTIpXCIgaWQ9XCJnMTgyLTktMVwiPlxyXG4gICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgIGlkPVwicGF0aDE4OC03LTVcIlxyXG4gICAgICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxyXG4gICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXHJcbiAgICAgICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxyXG4gICAgICAgICAgICAgIH19XHJcbiAgICAgICAgICAgICAgZD1cIm0gOTM5LjEsNjk0LjI3IC0wLjIyLC00LjAzIC0xOS45OCwxLjA5IDAuMjEsNC4wMyB6XCJcclxuICAgICAgICAgICAgLz5cclxuICAgICAgICAgIDwvZz5cclxuICAgICAgICA8L2c+XHJcbiAgICAgICAgPGcgaWQ9XCJnMTkwLTctOVwiPlxyXG4gICAgICAgICAgPGcgY2xpcFBhdGg9XCJ1cmwoI2NsaXBQYXRoMTk2LTI5LTApXCIgaWQ9XCJnMTkyLTYtOVwiPlxyXG4gICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgIGlkPVwicGF0aDE5OC00My0xXCJcclxuICAgICAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcclxuICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcclxuICAgICAgICAgICAgICB9fVxyXG4gICAgICAgICAgICAgIGQ9XCJtIDkzMy45OCw2NzQuMjUgLTUuNjIsMC43OSAtMC4zMSwtMi4xOSBjIC0wLjIyLC0xLjU4IC0wLjI2LC0yLjY1IC0wLjEzLC0zLjIxIDAuMTMsLTAuNTYgMC40LC0xLjAyIDAuOCwtMS4zOCAwLjQsLTAuMzcgMC44OSwtMC41OSAxLjQ4LC0wLjY3IDAuNzIsLTAuMSAxLjM0LDAuMDIgMS44NywwLjM4IDAuNTMsMC4zNiAwLjksMC44NiAxLjExLDEuNDkgMC4xNSwwLjQ2IDAuMzMsMS40MiAwLjUzLDIuODYgeiBtIDMuOTIsMy41MyAtMC45LC02LjQyIGMgLTAuMzQsLTIuNDMgLTAuNjYsLTQgLTAuOTYsLTQuNzEgLTAuNDYsLTEuMSAtMS4yNCwtMS45NiAtMi4zNCwtMi41OSAtMS4xMSwtMC42MiAtMi40NSwtMC44MyAtNC4wMywtMC42IC0xLjIxLDAuMTcgLTIuMiwwLjUzIC0yLjk3LDEuMDkgLTAuNzcsMC41NiAtMS4zNCwxLjIxIC0xLjcyLDEuOTUgLTAuMzgsMC43NSAtMC41OSwxLjQ5IC0wLjY1LDIuMjEgLTAuMDUsMC45OCAwLjA0LDIuMzggMC4zLDQuMTkgbCAwLjM2LDIuNjEgLTcuNDcsMS4wNSAwLjU2LDQgelwiXHJcbiAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICA8L2c+XHJcbiAgICAgICAgPC9nPlxyXG4gICAgICAgIDxnIGlkPVwiZzIwMC0wLTRcIj5cclxuICAgICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDIwNi05LTIpXCIgaWQ9XCJnMjAyLTMtOVwiPlxyXG4gICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgIGlkPVwicGF0aDIwOC0wOS0xXCJcclxuICAgICAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcclxuICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcclxuICAgICAgICAgICAgICB9fVxyXG4gICAgICAgICAgICAgIGQ9XCJtIDkyNy4wMSw2NDQuMzcgLTYuNTMsNC40NSAtMS4zNSwtNS4yOSB6IG0gNS4wNCwwLjg4IC0xLjA1LC00LjE1IC0yMS4zOCwtMi44MyAxLjA5LDQuMjYgNC44MywwLjU3IDEuOTcsNy43NiAtNCwyLjcyIDEuMDYsNC4xNSB6XCJcclxuICAgICAgICAgICAgLz5cclxuICAgICAgICAgIDwvZz5cclxuICAgICAgICA8L2c+XHJcbiAgICAgICAgPGcgaWQ9XCJnMjEwLTItMFwiPlxyXG4gICAgICAgICAgPGcgY2xpcFBhdGg9XCJ1cmwoI2NsaXBQYXRoMjE2LTgtOSlcIiBpZD1cImcyMTItNS03XCI+XHJcbiAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgaWQ9XCJwYXRoMjE4LTQtNVwiXHJcbiAgICAgICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXHJcbiAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcclxuICAgICAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXHJcbiAgICAgICAgICAgICAgfX1cclxuICAgICAgICAgICAgICBkPVwibSA5MjYuMDcsNjI0LjE5IC01LjUyLC0xNC45MiAtMy4xOCwxLjE4IDIuMDYsNS41NiAtMTUuNTksNS43NyAxLjQsMy43OSAxNS41OSwtNS43NyAyLjA2LDUuNTcgelwiXHJcbiAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICA8L2c+XHJcbiAgICAgICAgPC9nPlxyXG4gICAgICAgIDxnIGlkPVwiZzIyMC0wLThcIj5cclxuICAgICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDIyNi01LTgpXCIgaWQ9XCJnMjIyLTUtN1wiPlxyXG4gICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgIGlkPVwicGF0aDIyOC05LTBcIlxyXG4gICAgICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxyXG4gICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXHJcbiAgICAgICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxyXG4gICAgICAgICAgICAgIH19XHJcbiAgICAgICAgICAgICAgZD1cIm0gOTE2LjA2LDU5OC44OCAtNi41MywtMTMuMzMgLTMuMDQsMS40OSA0Ljc1LDkuNyAtMy45OCwxLjk1IC00LjQyLC05LjAzIC0zLjAzLDEuNDkgNC40Miw5LjAyIC00LjksMi40IC00LjkxLC0xMC4wNSAtMy4wMywxLjQ5IDYuNjksMTMuNjcgelwiXHJcbiAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICA8L2c+XHJcbiAgICAgICAgPC9nPlxyXG4gICAgICAgIDxwYXRoXHJcbiAgICAgICAgICBpZD1cInBhdGgzNTQtMi00XCJcclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXHJcbiAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXHJcbiAgICAgICAgICB9fVxyXG4gICAgICAgICAgZD1cIm0gNzkyLjUyLDQ5NC44MiAtMS41NSw0Ljg0IC0yLjg1LC0wLjkxIGMgLTEuODUsLTAuNTkgLTIuOTcsLTEuMDQgLTMuMzgsLTEuMzQgLTAuNDEsLTAuMzEgLTAuNjksLTAuNjkgLTAuODMsLTEuMTUgLTAuMTMsLTAuNDcgLTAuMTEsLTAuOTkgMC4wNywtMS41NiAwLjIxLC0wLjY0IDAuNTQsLTEuMSAxLjAxLC0xLjM5IDAuNDcsLTAuMjggMS4wMywtMC4zOCAxLjY5LC0wLjI4IDAuMzMsMC4wNSAxLjI3LDAuMzMgMi44MywwLjgzIHogbSA0Ljg4LC0xLjk5IC04LjExLC0yLjU5IGMgLTIuMDMsLTAuNjYgLTMuNTcsLTAuOTYgLTQuNiwtMC45MSAtMS4wMywwLjA1IC0xLjk3LDAuNDIgLTIuOCwxLjEyIC0wLjg0LDAuNyAtMS40MywxLjYxIC0xLjgsMi43NCAtMC40NSwxLjQzIC0wLjQxLDIuNzQgMC4xMywzLjk0IDAuNTUsMS4yIDEuNjIsMi4xOSAzLjIxLDIuOTcgLTAuOTksMC4yMiAtMS44NCwwLjUzIC0yLjU3LDAuOTQgLTAuNzMsMC40MSAtMS43OSwxLjIxIC0zLjE4LDIuNCBsIC0zLjUyLDIuOTcgNC42MSwxLjQ3IDQuMSwtMy4yNiBjIDEuNDcsLTEuMTYgMi40NCwtMS44OCAyLjkzLC0yLjE1IDAuNDksLTAuMjcgMC45NiwtMC40MSAxLjQxLC0wLjQyIDAuNDUsLTAuMDIgMS4xMiwwLjEyIDIuMDEsMC40IGwgMC43OCwwLjI1IC0yLjU1LDcuOTYgMy44NSwxLjIzIHpcIlxyXG4gICAgICAgIC8+XHJcbiAgICAgICAgPHBhdGhcclxuICAgICAgICAgIGlkPVwicGF0aDM1Ni00LThcIlxyXG4gICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcclxuICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXHJcbiAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcclxuICAgICAgICAgIH19XHJcbiAgICAgICAgICBkPVwibSA3NjkuMDYsNDg0LjU3IC0xNC41NCwtMi45NiAtMC42OCwzLjMyIDEwLjU4LDIuMTUgLTAuODgsNC4zNSAtOS44NSwtMi4wMSAtMC42NywzLjMxIDkuODQsMiAtMS4wOCw1LjM0IC0xMC45NiwtMi4yMyAtMC42NywzLjMxIDE0LjkxLDMuMDMgelwiXHJcbiAgICAgICAgLz5cclxuICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgaWQ9XCJwYXRoMzU4LTc3LTBcIlxyXG4gICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcclxuICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXHJcbiAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcclxuICAgICAgICAgIH19XHJcbiAgICAgICAgICBkPVwibSA3NDEuNTUsNDc5LjcxIC0xMy42NSwtMS4zNSAtMC4zNCwzLjM3IDkuNjQsMC45NSAtMC40Nyw0LjcxIC04LjMxLC0wLjgyIC0wLjM0LDMuMzcgOC4zMiwwLjgyIC0wLjg0LDguNDcgNC4wMiwwLjM5IHpcIlxyXG4gICAgICAgIC8+XHJcbiAgICAgICAgPHBhdGhcclxuICAgICAgICAgIGlkPVwicGF0aDM2MC01LTRcIlxyXG4gICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcclxuICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXHJcbiAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcclxuICAgICAgICAgIH19XHJcbiAgICAgICAgICBkPVwibSA3MTUuMjEsNDc3LjkzIGggLTQuMDQgbCAtMC4wMSwxNi40OCBoIC0xMC4wNSB2IDMuMzcgaCAxNC4wOSB6XCJcclxuICAgICAgICAvPlxyXG4gICAgICAgIDxwYXRoXHJcbiAgICAgICAgICBpZD1cInBhdGgzNjItNC0yXCJcclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXHJcbiAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXHJcbiAgICAgICAgICB9fVxyXG4gICAgICAgICAgZD1cIm0gNjg4LjgzLDQ3OC40IC0xNC43NywxLjUgMC4zNCwzLjM3IDEwLjc1LC0xLjA5IDAuNDUsNC40MSAtMTAsMS4wMiAwLjM0LDMuMzUgMTAsLTEuMDEgMC41NSw1LjQyIC0xMS4xMywxLjEzIDAuMzQsMy4zNSAxNS4xNSwtMS41NCB6XCJcclxuICAgICAgICAvPlxyXG4gICAgICAgIDxwYXRoXHJcbiAgICAgICAgICBpZD1cInBhdGgzNjQtOC05XCJcclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXHJcbiAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXHJcbiAgICAgICAgICB9fVxyXG4gICAgICAgICAgZD1cIm0gNjUyLjUsNDgzLjM5IGMgLTIuMzksMC41MSAtNC4xOCwxLjYzIC01LjM4LDMuMzYgLTAuNzEsMS4wMyAtMS4xMiwyLjM3IC0xLjIzLDQuMDMgbCA0LjExLDAuMSBjIDAuMDEsLTEuMDYgMC4zMiwtMS45NiAwLjkzLC0yLjcxIDAuNjEsLTAuNzQgMS40NCwtMS4yMiAyLjQ5LC0xLjQ1IDEuNDUsLTAuMzEgMi43NCwtMC4wNCAzLjg3LDAuODEgMS4xMiwwLjg1IDEuOTMsMi40NCAyLjQzLDQuNzcgMC41MywyLjQ4IDAuNDYsNC4zNCAtMC4yMSw1LjU4IC0wLjY3LDEuMjQgLTEuNzEsMi4wMSAtMy4xMywyLjMxIC0xLjA2LDAuMjIgLTIuMDMsMC4wOCAtMi45MywtMC40MiAtMC45LC0wLjUxIC0xLjY2LC0xLjQ0IC0yLjMsLTIuODEgbCAtMy41NywyLjAzIGMgMS4wNCwyLjAxIDIuMzUsMy4zOSAzLjk0LDQuMTQgMS41OSwwLjc1IDMuNDMsMC45IDUuNTMsMC40NSAyLjYsLTAuNTYgNC41NSwtMS45IDUuODUsLTQuMDMgMS4yOSwtMi4xMyAxLjYxLC00Ljc0IDAuOTYsLTcuODIgLTAuNywtMy4yNiAtMi4wOCwtNS42MSAtNC4xNCwtNy4wNSAtMi4wNywtMS40NSAtNC40NywtMS44OCAtNy4yMiwtMS4yOSB6XCJcclxuICAgICAgICAvPlxyXG4gICAgICAgIDxwYXRoXHJcbiAgICAgICAgICBpZD1cInBhdGgzNjYtMS02XCJcclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXHJcbiAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXHJcbiAgICAgICAgICB9fVxyXG4gICAgICAgICAgZD1cIm0gNjMzLjc0LDQ4OC4zOCAtMTUuMTIsNC45MyAxLjA1LDMuMjIgNS42MywtMS44MyA1LjE2LDE1LjggMy44NCwtMS4yNSAtNS4xNiwtMTUuODEgNS42NSwtMS44NCB6XCJcclxuICAgICAgICAvPlxyXG4gICAgICAgIDxnIGlkPVwiZzc0NC05LTFcIj5cclxuICAgICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDc1MC01LTMpXCIgaWQ9XCJnNzQ2LTMtMFwiPlxyXG4gICAgICAgICAgICA8Z1xyXG4gICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgyNDguNjQsMCwwLDIxNC41Niw1OTIuNTYsNjA4LjA0KVwiXHJcbiAgICAgICAgICAgICAgaWQ9XCJnNzUyLTYtNFwiXHJcbiAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICA8L2c+XHJcbiAgICAgICAgPC9nPlxyXG4gICAgICAgIDxnXHJcbiAgICAgICAgICBpZD1cImc2XCJcclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IFwiaW5saW5lXCIsXHJcbiAgICAgICAgICB9fVxyXG4gICAgICAgICAgdHJhbnNmb3JtPVwicm90YXRlKC04OS44NTgwOTcsNzA3LjgzNjU1LDcwNi45NjMyMylcIlxyXG4gICAgICAgID5cclxuICAgICAgICAgIDxnXHJcbiAgICAgICAgICAgIGlkPVwiZzQ4OFwiXHJcbiAgICAgICAgICAgIHRyYW5zZm9ybT1cInRyYW5zbGF0ZSg0MzMuNjY4MjgsNDY4LjY1MDc3KVwiXHJcbiAgICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgICAgZGlzcGxheTogXCJpbmxpbmVcIixcclxuICAgICAgICAgICAgfX1cclxuICAgICAgICAgID5cclxuICAgICAgICAgICAgPGcgY2xpcFBhdGg9XCJ1cmwoI2NsaXBQYXRoNDk0KVwiIGlkPVwiZzQ5MFwiPlxyXG4gICAgICAgICAgICAgIDx0ZXh0XHJcbiAgICAgICAgICAgICAgICBpZD1cInRleHQ0OThcIlxyXG4gICAgICAgICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgICAgICAgZm9udFZhcmlhbnQ6IFwibm9ybWFsXCIsXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRXZWlnaHQ6IFwibm9ybWFsXCIsXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRTaXplOiBcIjIwcHhcIixcclxuICAgICAgICAgICAgICAgICAgZm9udEZhbWlseTogXCJBcmlhbE1UXCIsXHJcbiAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXHJcbiAgICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgICAgICAgICBmaWxsUnVsZTogXCJub256ZXJvXCIsXHJcbiAgICAgICAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXHJcbiAgICAgICAgICAgICAgICB9fVxyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEsMCwwLC0xLDYwMC4wNSwzNjMuMjYpXCJcclxuICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICA8dHNwYW5cclxuICAgICAgICAgICAgICAgICAgaWQ9XCJ0c3BhbjQ5NlwiXHJcbiAgICAgICAgICAgICAgICAgIHk9ezB9XHJcbiAgICAgICAgICAgICAgICAgIHg9XCIwIDYuNjczMzE5OCAxNy44NzU2ODEgMjMuNDQ2OCAyNy44OTU2NzkgMzkuMDM3OTIyIDQ5LjA5OCA1NC42NjkxMjEgNTkuMTE4IDcwLjI2MDIzOSA4MS40MDI0ODEgODYuNzEzMDgxIDk3Ljg1NTMyNCAxMDkuMDU3NjggMTE0LjQ0ODQ0IDEyMC4wMTk1NiAxMzEuMTYxOCAxNDIuMzA0MDUgMTQ3LjczNDg4IDE1OC44NzcxMiAxNzAuMDc5NDggMTc2Ljc1MjgxIDE4Ny45NTUxNSAxOTkuMDk3NCAyMDkuMjE3NjEgMjIwLjM1OTgzIDIzMC40ODAwNCAyMzUuODcwOFwiXHJcbiAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgIHtcInJlZmxlY3Rpbmcgb24gdGhlIHB1cnBvc2VzLCBcIn1cclxuICAgICAgICAgICAgICAgIDwvdHNwYW4+XHJcbiAgICAgICAgICAgICAgPC90ZXh0PlxyXG4gICAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICA8Z1xyXG4gICAgICAgICAgICBpZD1cImc1MDBcIlxyXG4gICAgICAgICAgICB0cmFuc2Zvcm09XCJ0cmFuc2xhdGUoNDMzLjY2ODI4LDQ2OC42NTA3NylcIlxyXG4gICAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICAgIGRpc3BsYXk6IFwiaW5saW5lXCIsXHJcbiAgICAgICAgICAgIH19XHJcbiAgICAgICAgICA+XHJcbiAgICAgICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDUwNilcIiBpZD1cImc1MDJcIj5cclxuICAgICAgICAgICAgICA8dGV4dFxyXG4gICAgICAgICAgICAgICAgaWQ9XCJ0ZXh0NTEwXCJcclxuICAgICAgICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgICAgICAgIGZvbnRWYXJpYW50OiBcIm5vcm1hbFwiLFxyXG4gICAgICAgICAgICAgICAgICBmb250V2VpZ2h0OiBcIm5vcm1hbFwiLFxyXG4gICAgICAgICAgICAgICAgICBmb250U2l6ZTogXCIyMHB4XCIsXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRGYW1pbHk6IFwiQXJpYWxNVFwiLFxyXG4gICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxyXG4gICAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcclxuICAgICAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwibm9uemVyb1wiLFxyXG4gICAgICAgICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxyXG4gICAgICAgICAgICAgICAgfX1cclxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxLDAsMCwtMSw2MDcuMjUsMzM5LjI2KVwiXHJcbiAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgPHRzcGFuXHJcbiAgICAgICAgICAgICAgICAgIGlkPVwidHNwYW41MDhcIlxyXG4gICAgICAgICAgICAgICAgICB5PXswfVxyXG4gICAgICAgICAgICAgICAgICB4PVwiMCAxNi42OTMzMTkgMjcuODM1NTYgMzMuNDA2NjgxIDM3Ljg1NTU2IDQ3Ljg3NTU2MSA1OS4wMTc3OTkgNjQuNTg4OTIxIDY4Ljk3NzY3NiA4MC4xMTk5MTkgOTEuMzIyMjgxIDEwMS40MDI0IDEwNi43OTMxNiAxMTcuOTM1NCAxMjkuMTM3NzYgMTQwLjI4IDE0NS43MzA4OCAxNTYuODczMTIgMTY4LjA3NTQ5IDE3My42NDY2MSAxODQuNzg4ODMgMTk1LjkzMTA4IDIwMS41MDIyIDIwNS45NTEwOCAyMTcuMDkzMzIgMjIxLjU0MjIxXCJcclxuICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAge1wibW90aXZhdGlvbnMgYW5kIHBvdGVudGlhbCBcIn1cclxuICAgICAgICAgICAgICAgIDwvdHNwYW4+XHJcbiAgICAgICAgICAgICAgPC90ZXh0PlxyXG4gICAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICA8Z1xyXG4gICAgICAgICAgICBpZD1cImc1MTJcIlxyXG4gICAgICAgICAgICB0cmFuc2Zvcm09XCJ0cmFuc2xhdGUoNDMzLjY2ODI4LDQ2OC42NTA3NylcIlxyXG4gICAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICAgIGRpc3BsYXk6IFwiaW5saW5lXCIsXHJcbiAgICAgICAgICAgIH19XHJcbiAgICAgICAgICA+XHJcbiAgICAgICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDUxOClcIiBpZD1cImc1MTRcIj5cclxuICAgICAgICAgICAgICA8dGV4dFxyXG4gICAgICAgICAgICAgICAgaWQ9XCJ0ZXh0NTIyXCJcclxuICAgICAgICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgICAgICAgIGZvbnRWYXJpYW50OiBcIm5vcm1hbFwiLFxyXG4gICAgICAgICAgICAgICAgICBmb250V2VpZ2h0OiBcIm5vcm1hbFwiLFxyXG4gICAgICAgICAgICAgICAgICBmb250U2l6ZTogXCIyMHB4XCIsXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRGYW1pbHk6IFwiQXJpYWxNVFwiLFxyXG4gICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxyXG4gICAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcclxuICAgICAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwibm9uemVyb1wiLFxyXG4gICAgICAgICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxyXG4gICAgICAgICAgICAgICAgfX1cclxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxLDAsMCwtMSw2NjUuNDcsMzE1LjI2KVwiXHJcbiAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgPHRzcGFuXHJcbiAgICAgICAgICAgICAgICAgIGlkPVwidHNwYW41MjBcIlxyXG4gICAgICAgICAgICAgICAgICB5PXswfVxyXG4gICAgICAgICAgICAgICAgICB4PVwiMCA0LjQ0ODg4MDIgMjEuMTQyMiAzMi4yODQ0MzkgMzYuNzMzMzE4IDQxLjE4MjIwMSA1MS4yMDIyMDIgNjIuMzQ0NDQgNjcuOTE1NTU4IDcyLjM2NDQ0MSA4My41MDY2ODMgOTQuNjQ4OTE4IDEwNC43NDkwOFwiXHJcbiAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgIHtcImltcGxpY2F0aW9ucyBcIn1cclxuICAgICAgICAgICAgICAgIDwvdHNwYW4+XHJcbiAgICAgICAgICAgICAgPC90ZXh0PlxyXG4gICAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICA8Z1xyXG4gICAgICAgICAgICBpZD1cImc1MjRcIlxyXG4gICAgICAgICAgICB0cmFuc2Zvcm09XCJ0cmFuc2xhdGUoNDMzLjY2ODI4LDQ2OC42NTA3NylcIlxyXG4gICAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICAgIGRpc3BsYXk6IFwiaW5saW5lXCIsXHJcbiAgICAgICAgICAgIH19XHJcbiAgICAgICAgICA+XHJcbiAgICAgICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDUzMClcIiBpZD1cImc1MjZcIj5cclxuICAgICAgICAgICAgICA8dGV4dFxyXG4gICAgICAgICAgICAgICAgaWQ9XCJ0ZXh0NTM0XCJcclxuICAgICAgICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgICAgICAgIGZvbnRWYXJpYW50OiBcIm5vcm1hbFwiLFxyXG4gICAgICAgICAgICAgICAgICBmb250V2VpZ2h0OiBcIm5vcm1hbFwiLFxyXG4gICAgICAgICAgICAgICAgICBmb250U2l6ZTogXCIyMHB4XCIsXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRGYW1pbHk6IFwiQXJpYWxNVFwiLFxyXG4gICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxyXG4gICAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcclxuICAgICAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwibm9uemVyb1wiLFxyXG4gICAgICAgICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxyXG4gICAgICAgICAgICAgICAgfX1cclxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxLDAsMCwtMSw1ODYuNzMsMjY3LjI2KVwiXHJcbiAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgPHRzcGFuIGlkPVwidHNwYW41MzJcIiB5PXswfSB4PVwiMCA1LjU3MTExOTggMTYuNzEzMzZcIj5cclxuICAgICAgICAgICAgICAgICAge1widG8gXCJ9XHJcbiAgICAgICAgICAgICAgICA8L3RzcGFuPlxyXG4gICAgICAgICAgICAgIDwvdGV4dD5cclxuICAgICAgICAgICAgPC9nPlxyXG4gICAgICAgICAgPC9nPlxyXG4gICAgICAgICAgPGdcclxuICAgICAgICAgICAgaWQ9XCJnNTM2XCJcclxuICAgICAgICAgICAgdHJhbnNmb3JtPVwidHJhbnNsYXRlKDQzMy42NjgyOCw0NjguNjUwNzcpXCJcclxuICAgICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgICBkaXNwbGF5OiBcImlubGluZVwiLFxyXG4gICAgICAgICAgICB9fVxyXG4gICAgICAgICAgPlxyXG4gICAgICAgICAgICA8ZyBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGg1NDIpXCIgaWQ9XCJnNTM4XCI+XHJcbiAgICAgICAgICAgICAgPHRleHRcclxuICAgICAgICAgICAgICAgIGlkPVwidGV4dDU0NlwiXHJcbiAgICAgICAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICAgICAgICBmb250VmFyaWFudDogXCJub3JtYWxcIixcclxuICAgICAgICAgICAgICAgICAgZm9udFdlaWdodDogXCJub3JtYWxcIixcclxuICAgICAgICAgICAgICAgICAgZm9udFNpemU6IFwiMjBweFwiLFxyXG4gICAgICAgICAgICAgICAgICBmb250RmFtaWx5OiBcIkFyaWFsTVRcIixcclxuICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcclxuICAgICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXHJcbiAgICAgICAgICAgICAgICAgIGZpbGxSdWxlOiBcIm5vbnplcm9cIixcclxuICAgICAgICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcclxuICAgICAgICAgICAgICAgIH19XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSwwLDAsLTEsNjA4LjgxLDI2Ny4yNilcIlxyXG4gICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgIDx0c3BhblxyXG4gICAgICAgICAgICAgICAgICBpZD1cInRzcGFuNTQ0XCJcclxuICAgICAgICAgICAgICAgICAgeT17MH1cclxuICAgICAgICAgICAgICAgICAgeD1cIjAgNC40NDg4ODAyIDE1LjU5MTEyIDI2Ljc5MzQ4IDM3LjkzNTcxOSA0My41MDY4NCA0Ny45NTU3MTkgNTMuNDY2NzIxIDYzLjQ4NjcyMSA2OC45Nzc2NzYgODAuMTE5OTE5IDg2Ljg1MzM2MyA5Ny45OTU1OTggMTA5LjE5Nzk2IDExOS4yNzgwOCAxMjQuNTQ4NiAxMzUuNjkwODQgMTQxLjI2MTk2IDE0Ni42NTI3MyAxNTEuMTAxNTkgMTYyLjI0Mzg0IDE3My40NDYyIDE4NC41ODg0NCAxOTEuMzIxODggMjAyLjQ2NDEzIDIxMy42NjY0NyAyMjMuNzQ2NiAyMzQuODg4ODQgMjQwLjQ1OTk2XCJcclxuICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAge1wiaWRlbnRpZnkgYXJlYXMgb2YgaWdub3JhbmNlLCBcIn1cclxuICAgICAgICAgICAgICAgIDwvdHNwYW4+XHJcbiAgICAgICAgICAgICAgPC90ZXh0PlxyXG4gICAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICA8Z1xyXG4gICAgICAgICAgICBpZD1cImc1NDhcIlxyXG4gICAgICAgICAgICB0cmFuc2Zvcm09XCJ0cmFuc2xhdGUoNDMzLjY2ODI4LDQ2OC42NTA3NylcIlxyXG4gICAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICAgIGRpc3BsYXk6IFwiaW5saW5lXCIsXHJcbiAgICAgICAgICAgIH19XHJcbiAgICAgICAgICA+XHJcbiAgICAgICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDU1NClcIiBpZD1cImc1NTBcIj5cclxuICAgICAgICAgICAgICA8dGV4dFxyXG4gICAgICAgICAgICAgICAgaWQ9XCJ0ZXh0NTU4XCJcclxuICAgICAgICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgICAgICAgIGZvbnRWYXJpYW50OiBcIm5vcm1hbFwiLFxyXG4gICAgICAgICAgICAgICAgICBmb250V2VpZ2h0OiBcIm5vcm1hbFwiLFxyXG4gICAgICAgICAgICAgICAgICBmb250U2l6ZTogXCIyMC4wNjRweFwiLFxyXG4gICAgICAgICAgICAgICAgICBmb250RmFtaWx5OiBcIkFyaWFsTVRcIixcclxuICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcclxuICAgICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXHJcbiAgICAgICAgICAgICAgICAgIGZpbGxSdWxlOiBcIm5vbnplcm9cIixcclxuICAgICAgICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcclxuICAgICAgICAgICAgICAgIH19XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSwwLDAsLTEsNjEwLjQ5LDI0My4yNilcIlxyXG4gICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgIDx0c3BhblxyXG4gICAgICAgICAgICAgICAgICBpZD1cInRzcGFuNTU2XCJcclxuICAgICAgICAgICAgICAgICAgeT17MH1cclxuICAgICAgICAgICAgICAgICAgeD1cIjAgMTEuMTU1NTg0IDIxLjI2NzgzOSAzMS4zNjAwMzEgNDIuNTE1NjE3IDU5LjIyODkyOCA3MC4zODQ1MTQgNzUuOTYyMzAzIDgwLjQxNjUxMiA5MS41NzIwOTggMTAyLjcyNzY4IDExMi43NTk2OCAxMTguMjU3MjIgMTIzLjQxMzY3IDEzNC41NjkyNCAxNDUuNzI0ODQgMTU2Ljk0MDYxIDE2Ny4wMzI4MSAxNzIuNjEwNiAxNzYuOTg0NTQgMTg4LjE0MDEyIDE5OS4yOTU3MiAyMDkuNDI4MDQgMjE1LjAwNTgzXCJcclxuICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAge1wiYXNzdW1wdGlvbnMsIHF1ZXN0aW9ucywgXCJ9XHJcbiAgICAgICAgICAgICAgICA8L3RzcGFuPlxyXG4gICAgICAgICAgICAgIDwvdGV4dD5cclxuICAgICAgICAgICAgPC9nPlxyXG4gICAgICAgICAgPC9nPlxyXG4gICAgICAgICAgPGdcclxuICAgICAgICAgICAgaWQ9XCJnNTYwXCJcclxuICAgICAgICAgICAgdHJhbnNmb3JtPVwidHJhbnNsYXRlKDQzMy42NjgyOCw0NjguNjUwNzcpXCJcclxuICAgICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgICBkaXNwbGF5OiBcImlubGluZVwiLFxyXG4gICAgICAgICAgICB9fVxyXG4gICAgICAgICAgPlxyXG4gICAgICAgICAgICA8ZyBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGg1NjYpXCIgaWQ9XCJnNTYyXCI+XHJcbiAgICAgICAgICAgICAgPHRleHRcclxuICAgICAgICAgICAgICAgIGlkPVwidGV4dDU3MFwiXHJcbiAgICAgICAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICAgICAgICBmb250VmFyaWFudDogXCJub3JtYWxcIixcclxuICAgICAgICAgICAgICAgICAgZm9udFdlaWdodDogXCJub3JtYWxcIixcclxuICAgICAgICAgICAgICAgICAgZm9udFNpemU6IFwiMjBweFwiLFxyXG4gICAgICAgICAgICAgICAgICBmb250RmFtaWx5OiBcIkFyaWFsTVRcIixcclxuICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcclxuICAgICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXHJcbiAgICAgICAgICAgICAgICAgIGZpbGxSdWxlOiBcIm5vbnplcm9cIixcclxuICAgICAgICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcclxuICAgICAgICAgICAgICAgIH19XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSwwLDAsLTEsNjI3LjE5LDIxOS4yNClcIlxyXG4gICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgIDx0c3BhblxyXG4gICAgICAgICAgICAgICAgICBpZD1cInRzcGFuNTY4XCJcclxuICAgICAgICAgICAgICAgICAgeT17MH1cclxuICAgICAgICAgICAgICAgICAgeD1cIjAgMTEuMTQyMjQgMTUuNTkxMTIgMjAuMDQwMDAxIDMxLjE4MjI0IDQ3Ljg3NTU2MSA2NC41Njg4NzggNzUuNzExMTIxIDg1Ljc3MTIwMiA5MS4wNDE3MTggMTAyLjE4Mzk2IDExMy4zMjYyIDEyNC40Njg0NCAxMjkuOTE5MzMgMTM5LjkzOTMyIDE1MS4xNDE2OCAxNjEuMTYxNjggMTY1LjYxMDU3IDE3Ni43OTI4OCAxODEuMjQxNzZcIlxyXG4gICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICB7XCJkaWxlbW1hcyBhbmQgc29jaWFsIFwifVxyXG4gICAgICAgICAgICAgICAgPC90c3Bhbj5cclxuICAgICAgICAgICAgICA8L3RleHQ+XHJcbiAgICAgICAgICAgIDwvZz5cclxuICAgICAgICAgIDwvZz5cclxuICAgICAgICAgIDxnXHJcbiAgICAgICAgICAgIGlkPVwiZzU3MlwiXHJcbiAgICAgICAgICAgIHRyYW5zZm9ybT1cInRyYW5zbGF0ZSg0MzMuNjY4MjgsNDY4LjY1MDc3KVwiXHJcbiAgICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgICAgZGlzcGxheTogXCJpbmxpbmVcIixcclxuICAgICAgICAgICAgfX1cclxuICAgICAgICAgID5cclxuICAgICAgICAgICAgPGcgY2xpcFBhdGg9XCJ1cmwoI2NsaXBQYXRoNTc4KVwiIGlkPVwiZzU3NFwiPlxyXG4gICAgICAgICAgICAgIDx0ZXh0XHJcbiAgICAgICAgICAgICAgICBpZD1cInRleHQ1ODJcIlxyXG4gICAgICAgICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgICAgICAgZm9udFZhcmlhbnQ6IFwibm9ybWFsXCIsXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRXZWlnaHQ6IFwibm9ybWFsXCIsXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRTaXplOiBcIjIwcHhcIixcclxuICAgICAgICAgICAgICAgICAgZm9udEZhbWlseTogXCJBcmlhbE1UXCIsXHJcbiAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXHJcbiAgICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgICAgICAgICBmaWxsUnVsZTogXCJub256ZXJvXCIsXHJcbiAgICAgICAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXHJcbiAgICAgICAgICAgICAgICB9fVxyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEsMCwwLC0xLDY0OC45MSwxOTUuMjQpXCJcclxuICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICA8dHNwYW5cclxuICAgICAgICAgICAgICAgICAgaWQ9XCJ0c3BhbjU4MFwiXHJcbiAgICAgICAgICAgICAgICAgIHk9ezB9XHJcbiAgICAgICAgICAgICAgICAgIHg9XCIwIDUuNTcxMTE5OCAxMi4yNDQ0NCAyMy4zODY2ODEgMzQuNTI4OTE5IDQ0LjYyOTA4MiA1MC4yMDAxOTkgNjEuMzQyNDQyIDY4LjAxNTc2MiA4NC41ODg4MzcgOTUuNzMxMDc5IDEwMS4zMDIyIDEwNS43NTEwOCAxMTYuODkzMzIgMTI4LjAzNTU1IDEzNy45OTU0NFwiXHJcbiAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgIHtcInRyYW5zZm9ybWF0aW9ucyBcIn1cclxuICAgICAgICAgICAgICAgIDwvdHNwYW4+XHJcbiAgICAgICAgICAgICAgPC90ZXh0PlxyXG4gICAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICA8Z1xyXG4gICAgICAgICAgICBpZD1cImc1ODRcIlxyXG4gICAgICAgICAgICB0cmFuc2Zvcm09XCJ0cmFuc2xhdGUoNDMzLjY2ODI4LDQ2OC42NTA3NylcIlxyXG4gICAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICAgIGRpc3BsYXk6IFwiaW5saW5lXCIsXHJcbiAgICAgICAgICAgIH19XHJcbiAgICAgICAgICA+XHJcbiAgICAgICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDU5MClcIiBpZD1cImc1ODZcIj5cclxuICAgICAgICAgICAgICA8dGV4dFxyXG4gICAgICAgICAgICAgICAgaWQ9XCJ0ZXh0NTk0XCJcclxuICAgICAgICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgICAgICAgIGZvbnRWYXJpYW50OiBcIm5vcm1hbFwiLFxyXG4gICAgICAgICAgICAgICAgICBmb250V2VpZ2h0OiBcIm5vcm1hbFwiLFxyXG4gICAgICAgICAgICAgICAgICBmb250U2l6ZTogXCIyMHB4XCIsXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRGYW1pbHk6IFwiQXJpYWxNVFwiLFxyXG4gICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxyXG4gICAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcclxuICAgICAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwibm9uemVyb1wiLFxyXG4gICAgICAgICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxyXG4gICAgICAgICAgICAgICAgfX1cclxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxLDAsMCwtMSw1NzguOTMsMTQ3LjI0KVwiXHJcbiAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgPHRzcGFuXHJcbiAgICAgICAgICAgICAgICAgIGlkPVwidHNwYW41OTJcIlxyXG4gICAgICAgICAgICAgICAgICB5PXswfVxyXG4gICAgICAgICAgICAgICAgICB4PVwiMCAxMS4xNDIyNCAyMi4yODQ0NzkgMzIuMzg0NjQgNDMuNTI2ODc4IDUwLjI0MDI4IDU0LjY4OTE1OSA2NS44MzEzOTggNzYuOTczNjQgODIuMTY0MDAxIDg3LjczNTEyMyA5OC44NzczNTcgMTA4Ljg5NzM2IDEyMC4wMzk2IDEzMC4xMzk3NiAxMzUuNDEwMjggMTQ5Ljg3OTE3IDE1NC4zMjgwMyAxNTkuODk5MTUgMTcxLjA0MTQgMTc2LjYxMjUyIDE4Mi4wODM0NCAxOTMuMjI1NjggMjA0LjM2NzkyIDIwOS43OTg3NyAyMTkuODE4NzYgMjMxLjAyMTEyIDI0MS4wNDExMiAyNDUuNDkwMDEgMjU2LjY3MjMzIDI2Mi4yNDM0NCAyNzMuMzg1NjggMjc3LjgzNDU2XCJcclxuICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAge1wiZW5zdXJpbmcgZm9jdXMgd2l0aCB0aGUgc29jaWV0YWwgXCJ9XHJcbiAgICAgICAgICAgICAgICA8L3RzcGFuPlxyXG4gICAgICAgICAgICAgIDwvdGV4dD5cclxuICAgICAgICAgICAgPC9nPlxyXG4gICAgICAgICAgPC9nPlxyXG4gICAgICAgICAgPGdcclxuICAgICAgICAgICAgaWQ9XCJnNTk2XCJcclxuICAgICAgICAgICAgdHJhbnNmb3JtPVwidHJhbnNsYXRlKDQzMy42NjgyOCw0NjguNjUwNzcpXCJcclxuICAgICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgICBkaXNwbGF5OiBcImlubGluZVwiLFxyXG4gICAgICAgICAgICB9fVxyXG4gICAgICAgICAgPlxyXG4gICAgICAgICAgICA8ZyBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGg2MDIpXCIgaWQ9XCJnNTk4XCI+XHJcbiAgICAgICAgICAgICAgPHRleHRcclxuICAgICAgICAgICAgICAgIGlkPVwidGV4dDYwNlwiXHJcbiAgICAgICAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICAgICAgICBmb250VmFyaWFudDogXCJub3JtYWxcIixcclxuICAgICAgICAgICAgICAgICAgZm9udFdlaWdodDogXCJub3JtYWxcIixcclxuICAgICAgICAgICAgICAgICAgZm9udFNpemU6IFwiMjBweFwiLFxyXG4gICAgICAgICAgICAgICAgICBmb250RmFtaWx5OiBcIkFyaWFsTVRcIixcclxuICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcclxuICAgICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXHJcbiAgICAgICAgICAgICAgICAgIGZpbGxSdWxlOiBcIm5vbnplcm9cIixcclxuICAgICAgICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcclxuICAgICAgICAgICAgICAgIH19XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSwwLDAsLTEsNjA0LjM3LDEyMy4yNClcIlxyXG4gICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgIDx0c3BhblxyXG4gICAgICAgICAgICAgICAgICBpZD1cInRzcGFuNjA0XCJcclxuICAgICAgICAgICAgICAgICAgeT17MH1cclxuICAgICAgICAgICAgICAgICAgeD1cIjAgMTEuMTQyMjQgMjIuMzQ0NjAxIDMzLjQ4NjgzOSAzOC45Mzc3MjEgNTAuMDc5OTYgNjEuMjgyMzE4IDcxLjMwMjMyMiA3NS43NTExOTggODIuNDI0NTIyIDkzLjU2Njc1NyAxMDQuNzY5MTIgMTIxLjQ2MjQ0IDEzMi42MDQ2OCAxNDMuODI3MDkgMTQ5LjM5ODE5IDE2MC41NDA0NCAxNjQuOTg5MzIgMTcwLjI1OTg0IDE3NC43MDg3MiAxODQuNzg4ODMgMTk0Ljg2ODk2IDIwNi4wMTEyIDIxNy4yMTM1NlwiXHJcbiAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgIHtcImFuZCBlbnZpcm9ubWVudGFsIGlzc3Vlc1wifVxyXG4gICAgICAgICAgICAgICAgPC90c3Bhbj5cclxuICAgICAgICAgICAgICA8L3RleHQ+XHJcbiAgICAgICAgICAgIDwvZz5cclxuICAgICAgICAgIDwvZz5cclxuICAgICAgICAgIDxnXHJcbiAgICAgICAgICAgIGlkPVwiZzYwOFwiXHJcbiAgICAgICAgICAgIHRyYW5zZm9ybT1cInRyYW5zbGF0ZSg5MjUuMTM2NDcsMTcuMDc5NTI5KVwiXHJcbiAgICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgICAgZGlzcGxheTogXCJpbmxpbmVcIixcclxuICAgICAgICAgICAgfX1cclxuICAgICAgICAgID5cclxuXHJcbiAgICAgICAgICA8L2c+XHJcbiAgICAgICAgPC9nPlxyXG4gICAgICA8L2c+XHJcbiAgICAgIDxnXHJcbiAgICAgICAgaWQ9XCJhY3RcIlxyXG4gICAgICAgIGNsYXNzTmFtZT1cImhwMyBhY3QtdmVyc2lvblwiXHJcbiAgICAgICAgdHJhbnNmb3JtPVwicm90YXRlKC04OS41Nzg2MzIsNzA5LjI2OTA3LDcwNi40MDU3NSlcIlxyXG4gICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICBkaXNwbGF5OiBcImlubGluZVwiLFxyXG4gICAgICAgIH19XHJcbiAgICAgID4gPGEgb25DbGljaz17b3BlbkNsYXNzZXMoe2NsYXNzTmFtZTogXCJocDMgYW50aWNpcGF0ZS12ZXJzaW9uXCIsIGNsYXNzdG9IaWRlOiBcImhwM1wifSl9PlxyXG4gICAgICAgIDxwYXRoXHJcbiAgICAgICAgICBpZD1cImFjdC1hbnRpY2lwYXRlXCJcclxuICAgICAgICAgIFxyXG4gICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgZmlsbDogXCIjYjg1YmQxXCIsXHJcbiAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXHJcbiAgICAgICAgICB9fVxyXG4gICAgICAgICAgZD1cIm0gODk0LjUsODkwLjAzIC02LjQ4LC01MS44IC00OS41NywtNi4xOSBjIDMxLjYzLC0zMi41NyA1MS4xMiwtNzcuMDEgNTEuMTIsLTEyNi4wMSAwLC00MC4xNyAtMTMuMSwtNzcuMjcgLTM1LjI0LC0xMDcuMjggbCA2LjUsLTUyLjExIDUwLjIsLTYuMjggYyAzNi45Nyw0NS4xMSA1OS4xNywxMDIuOCA1OS4xNywxNjUuNjcgMCw3MS43NiAtMjguOTEsMTM2Ljc2IC03NS43LDE4NCB6XCJcclxuICAgICAgICAvPjwvYT5cclxuICAgICAgICA8YSBvbkNsaWNrPXtvcGVuQ2xhc3Nlcyh7Y2xhc3NOYW1lOiBcImhwMyBhY3QtdmVyc2lvblwiLCBjbGFzc3RvSGlkZTogXCJocDNcIn0pfT5cclxuICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgaWQ9XCJhY3QtYWN0XCJcclxuICAgICAgICAgIFxyXG4gICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgZmlsbDogXCIjODUwZTc4XCIsXHJcbiAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXHJcbiAgICAgICAgICB9fVxyXG4gICAgICAgICAgZD1cIm0gNzA4LjcsOTY3LjQzIGMgLTcxLjczLDAgLTEzNi43MSwtMjguOSAtMTgzLjk0LC03NS42OSBsIDUxLjc4LC02LjQ4IDYuMTksLTQ5LjU4IGMgMzIuNTcsMzEuNjQgNzcsNTEuMTMgMTI1Ljk3LDUxLjEzIDQwLjE2LDAgNzcuMjUsLTEzLjEgMTA3LjI1LC0zNS4yNSBsIDUyLjEsNi41MSA2LjI3LDUwLjIxIGMgLTQ1LjA5LDM2Ljk2IC0xMDIuNzYsNTkuMTUgLTE2NS42Miw1OS4xNSB6XCJcclxuICAgICAgICAvPiA8L2E+XHJcbiAgICAgICAgPGEgb25DbGljaz17b3BlbkNsYXNzZXMoe2NsYXNzTmFtZTogXCJocDMgZW5nYWdlLXZlcnNpb25cIiwgY2xhc3N0b0hpZGU6IFwiaHAzXCJ9KX0+XHJcbiAgICAgICAgPHBhdGhcclxuICAgICAgICAgIGlkPVwiYWN0LWVuZ2FnZVwiXHJcblxyXG4gICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgZmlsbDogXCIjY2U5ZmM5XCIsXHJcbiAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXHJcbiAgICAgICAgICB9fVxyXG4gICAgICAgICAgZD1cIm0gNTA2LjQxLDg3MS42NyBjIC0zNi45NywtNDUuMSAtNTkuMTYsLTEwMi43OSAtNTkuMTYsLTE2NS42NiAwLC03MS43NiAyOC45LC0xMzYuNzYgNzUuNywtMTg0IGwgNi40Niw1MS43OSA0OS41OSw2LjIgYyAtMzEuNjQsMzIuNTcgLTUxLjEzLDc3LjAxIC01MS4xMywxMjYuMDEgMCw0MC4xNiAxMy4xLDc3LjI2IDM1LjI1LDEwNy4yOCBsIC02LjUxLDUyLjExIHpcIlxyXG4gICAgICAgIC8+IDwvYT5cclxuICAgICAgICA8YSBvbkNsaWNrPXtvcGVuQ2xhc3Nlcyh7Y2xhc3NOYW1lOiBcImhwMyByZWZsZWN0LXZlcnNpb25cIiwgY2xhc3N0b0hpZGU6IFwiaHAzXCJ9KX0+XHJcbiAgICAgICAgPHBhdGhcclxuICAgICAgICAgIGlkPVwiYWN0LXJlZmxlY3RcIlxyXG4gICAgICAgICAgXHJcbiAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICBmaWxsOiBcIiNhMGE3ZjNcIixcclxuICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXHJcbiAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcclxuICAgICAgICAgIH19XHJcbiAgICAgICAgICBkPVwibSA4MzQuNjgsNTc2LjIzIGMgLTMyLjU3LC0zMS42MyAtNzcuMDEsLTUxLjEyIC0xMjYuMDEsLTUxLjEyIC00MC4xNiwwIC03Ny4yNiwxMy4xIC0xMDcuMjcsMzUuMjQgbCAtNTIuMTIsLTYuNSAtNi4yNywtNTAuMiBjIDQ1LjEsLTM2Ljk4IDEwMi43OCwtNTkuMTcgMTY1LjY2LC01OS4xNyA3MS43NiwwIDEzNi43NSwyOC45MSAxODQuMDEsNzUuNyBsIC01MS44MSw2LjQ4IHpcIlxyXG4gICAgICAgIC8+IDwvYT5cclxuICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgaWQ9XCJwYXRoNjItOFwiXHJcbiAgICAgICAgICBcclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb3VyYmVpZ2UpXCIsXHJcbiAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXHJcbiAgICAgICAgICB9fVxyXG4gICAgICAgICAgZD1cIm0gNzA4LjczLDgzNC41OSBjIC04Ljc5LDAgLTE3LjQ0LC0xLjQxIC0yNS42OSwtNC4yMSAtMi44MSwtMC45NSAtNC4zMiwtNCAtMy4zNSwtNi43OSAwLjc2LC0yLjIyIDIuODQsLTMuNjIgNS4wOSwtMy42MiAwLjU3LDAgMS4xNiwwLjA5IDEuNzQsMC4yOSA3LjE0LDIuNDEgMTQuNiwzLjYzIDIyLjIxLDMuNjMgMi45OCwwIDUuMzksMi40IDUuMzksNS4zNiAwLDIuOTYgLTIuNDEsNS4zNCAtNS4zOSw1LjM0IHpcIlxyXG4gICAgICAgIC8+XHJcbiAgICAgICAgPHBhdGhcclxuICAgICAgICAgIGlkPVwicGF0aDY0LTRcIlxyXG4gICAgICAgICAgXHJcbiAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxyXG4gICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcclxuICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAgIGQ9XCJtIDY4Ni4xNyw5MjYuNiAtMS4zMywtNy43OSA1LjM3LDAuOTggeiBtIC0yLjksNC4yMiA0LjIxLDAuNzcgMTEuNDgsLTE4LjI1IC00LjMzLC0wLjc5IC0yLjUzLDQuMTYgLTcuODcsLTEuNDQgLTAuODEsLTQuNzcgLTQuMjIsLTAuNzcgelwiXHJcbiAgICAgICAgLz5cclxuICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgaWQ9XCJwYXRoNjYtNVwiXHJcbiAgICAgICAgICBcclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXHJcbiAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXHJcbiAgICAgICAgICB9fVxyXG4gICAgICAgICAgZD1cIm0gNzE2Ljc5LDkzNC4xOCBjIDIuNDUsLTAuMDIgNC40MywtMC43NyA1Ljk0LC0yLjIzIDAuOSwtMC44NyAxLjU3LC0yLjEgMi4wMSwtMy43MSBsIC00LjAxLC0wLjkxIGMgLTAuMjMsMS4wNCAtMC43MSwxLjg2IC0xLjQ2LDIuNDcgLTAuNzQsMC42MSAtMS42NSwwLjkyIC0yLjcyLDAuOTMgLTEuNDksMC4wMiAtMi43LC0wLjUgLTMuNjMsLTEuNTYgLTAuOTQsLTEuMDYgLTEuNDIsLTIuNzcgLTEuNDQsLTUuMTYgLTAuMDMsLTIuNTMgMC40MSwtNC4zNCAxLjMxLC01LjQyIDAuOSwtMS4wOCAyLjA3LC0xLjYzIDMuNTMsLTEuNjUgMS4wNywtMC4wMSAyLDAuMzIgMi43OCwxIDAuNzgsMC42NyAxLjM1LDEuNzQgMS43LDMuMiBsIDMuOTEsLTEuMjggYyAtMC42MywtMi4xOCAtMS42NCwtMy43OSAtMy4wNSwtNC44NCAtMS40MSwtMS4wNCAtMy4xOSwtMS41NSAtNS4zNCwtMS41MyAtMi42NSwwLjAzIC00LjgzLDAuOTYgLTYuNTIsMi43OSAtMS42OSwxLjgzIC0yLjUyLDQuMzIgLTIuNDksNy40NyAwLjA0LDMuMzMgMC45Miw1LjkxIDIuNjYsNy43NCAxLjc0LDEuODIgNC4wMSwyLjcyIDYuODIsMi42OSB6XCJcclxuICAgICAgICAvPlxyXG4gICAgICAgIDxwYXRoXHJcbiAgICAgICAgICBpZD1cInBhdGg2OC0wXCJcclxuICAgICAgICAgIFxyXG4gICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcclxuICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXHJcbiAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcclxuICAgICAgICAgIH19XHJcbiAgICAgICAgICBkPVwibSA3MzcuMzksOTMyLjQyIDE1LjYyLC0zLjAxIC0wLjY0LC0zLjMzIC01LjgyLDEuMTMgLTMuMTUsLTE2LjMzIC0zLjk3LDAuNzcgMy4xNSwxNi4zMiAtNS44MywxLjEzIHpcIlxyXG4gICAgICAgIC8+XHJcbiAgICAgICAgPGcgaWQ9XCJnNzAtM1wiPlxyXG4gICAgICAgICAgPGcgY2xpcFBhdGg9XCJ1cmwoI2NsaXBQYXRoNzYtMylcIiBpZD1cImc3Mi02XCI+XHJcbiAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgIGlkPVwicGF0aDc4LTFcIlxyXG4gICAgICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxyXG4gICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXHJcbiAgICAgICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxyXG4gICAgICAgICAgICAgIH19XHJcbiAgICAgICAgICAgICAgZD1cIm0gNDk0LjM4LDYyNS4zNyAtMy45NywxNC4zIDMuMjYsMC45MSAyLjg5LC0xMC40MSA0LjI3LDEuMTkgLTIuNjksOS42OCAzLjI1LDAuOSAyLjY5LC05LjY4IDUuMjUsMS40NiAtMi45OSwxMC43NyAzLjI1LDAuOTEgNC4wNywtMTQuNjcgelwiXHJcbiAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICA8L2c+XHJcbiAgICAgICAgPC9nPlxyXG4gICAgICAgIDxnIGlkPVwiZzgwLTBcIj5cclxuICAgICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDg2LTcpXCIgaWQ9XCJnODItNlwiPlxyXG4gICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICBcclxuICAgICAgICAgICAgICBpZD1cInBhdGg4OC0zXCJcclxuICAgICAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcclxuICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcclxuICAgICAgICAgICAgICB9fVxyXG4gICAgICAgICAgICAgIGQ9XCJtIDQ4Ny41Myw2NTIuNSAtMC42NSwzLjg4IDExLjgzLDEwLjI5IC0xMy4xOCwtMi4yMSAtMC42MywzLjcgMTkuNzQsMy4zMSAwLjY3LC00IC0xMS41NCwtMTAuMTEgMTIuODgsMi4xNSAwLjYyLC0zLjcgelwiXHJcbiAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICA8L2c+XHJcbiAgICAgICAgPC9nPlxyXG4gICAgICAgIDxnIGlkPVwiZzkwLTJcIj5cclxuICAgICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDk2LTMpXCIgaWQ9XCJnOTItMFwiPlxyXG4gICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICBcclxuICAgICAgICAgICAgICBpZD1cInBhdGg5OC02XCJcclxuICAgICAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcclxuICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcclxuICAgICAgICAgICAgICB9fVxyXG4gICAgICAgICAgICAgIGQ9XCJtIDQ4Mi40OCw2OTAuOTIgYyAtMC4xNCwyLjQ4IDAuMjcsNC40NSAxLjIzLDUuOSAwLjk2LDEuNDUgMi4zNSwyLjQzIDQuMTYsMi45MyBsIDAuOTgsLTMuOTYgYyAtMC45NywtMC4zNCAtMS43MSwtMC45MSAtMi4yNCwtMS43MiAtMC41MiwtMC44MSAtMC43NSwtMS43OSAtMC42OSwtMi45NiAwLjEsLTEuNzYgMC43NCwtMy4xMyAxLjkyLC00LjExIDEuMTcsLTAuOTggMi44NiwtMS40IDUuMDYsLTEuMjggMi4zNywwLjEzIDQuMTIsMC43NiA1LjI1LDEuODggMS4xMiwxLjEyIDEuNjQsMi41NCAxLjU0LDQuMjUgLTAuMDQsMC44NCAtMC4yNiwxLjY4IC0wLjY0LDIuNTEgLTAuMzgsMC44MyAtMC44MiwxLjU0IC0xLjMzLDIuMTIgbCAtMi41MywtMC4xNCAwLjI2LC00LjYyIC0zLjM3LC0wLjE5IC0wLjQ5LDguNjkgNy45NiwwLjQ1IGMgMC44NywtMC44IDEuNjYsLTEuOTggMi4zNywtMy41NSAwLjcxLC0xLjU3IDEuMTIsLTMuMTggMS4yMSwtNC44MiAwLjEyLC0yLjA5IC0wLjIyLC0zLjk0IC0xLjAxLC01LjU0IC0wLjc5LC0xLjYxIC0xLjk4LC0yLjg0IC0zLjU3LC0zLjcyIC0xLjU4LC0wLjg3IC0zLjMzLC0xLjM2IC01LjI1LC0xLjQ3IC0yLjA4LC0wLjEyIC0zLjk2LDAuMjIgLTUuNjIsMSAtMS42NywwLjc4IC0yLjk4LDEuOTkgLTMuOTQsMy42MiAtMC43NCwxLjI0IC0xLjE2LDIuODIgLTEuMjYsNC43MyB6XCJcclxuICAgICAgICAgICAgLz5cclxuICAgICAgICAgIDwvZz5cclxuICAgICAgICA8L2c+XHJcbiAgICAgICAgPGcgaWQ9XCJnMTAwLTFcIj5cclxuICAgICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDEwNi02KVwiIGlkPVwiZzEwMi01XCI+XHJcbiAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgaWQ9XCJwYXRoMTA4LTVcIlxyXG4gICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxyXG4gICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXHJcbiAgICAgICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxyXG4gICAgICAgICAgICAgIH19XHJcbiAgICAgICAgICAgICAgZD1cIm0gNDg3LjQzLDcyMC41NiA3LjI4LC0zLjA5IDAuMjksNS40NSB6IG0gLTQuNzcsLTEuODQgMC4yMyw0LjI3IDIwLjQxLDYuOTUgLTAuMjQsLTQuMzkgLTQuNjMsLTEuNTEgLTAuNDIsLTcuOTkgNC40NSwtMS44OSAtMC4yMywtNC4yOCB6XCJcclxuICAgICAgICAgICAgLz5cclxuICAgICAgICAgIDwvZz5cclxuICAgICAgICA8L2c+XHJcbiAgICAgICAgPGcgaWQ9XCJnMTEwLTRcIj5cclxuICAgICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDExNi05KVwiIGlkPVwiZzExMi03XCI+XHJcbiAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgaWQ9XCJwYXRoMTE4LTZcIlxyXG4gICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxyXG4gICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXHJcbiAgICAgICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxyXG4gICAgICAgICAgICAgIH19XHJcbiAgICAgICAgICAgICAgZD1cIm0gNDg1Ljc2LDc1MS42MSBjIDAuNCwyLjQ1IDEuMjMsNC4yOCAyLjQ4LDUuNDkgMS4yNiwxLjIxIDIuODMsMS44NyA0LjcxLDEuOTcgbCAwLjA5LC00LjA5IGMgLTEuMDIsLTAuMTIgLTEuODcsLTAuNTEgLTIuNTYsLTEuMTkgLTAuNjksLTAuNjggLTEuMTIsLTEuNTkgLTEuMzEsLTIuNzQgLTAuMjksLTEuNzQgMC4wNCwtMy4yMiAwLjk3LC00LjQzIDAuOTQsLTEuMjEgMi40OSwtMS45OSA0LjY3LC0yLjM1IDIuMzQsLTAuMzggNC4xOCwtMC4xNSA1LjUzLDAuNyAxLjM0LDAuODUgMi4xNSwyLjEyIDIuNDMsMy44MSAwLjEzLDAuODMgMC4xMSwxLjcgLTAuMDgsMi41OSAtMC4xOSwwLjg5IC0wLjQ3LDEuNjggLTAuODQsMi4zNiBsIC0yLjUxLDAuNDEgLTAuNzQsLTQuNTcgLTMuMzMsMC41NSAxLjQxLDguNiA3Ljg3LC0xLjMgYyAwLjY3LC0wLjk2IDEuMTgsLTIuMjkgMS41NCwtMy45OCAwLjM1LC0xLjY4IDAuMzksLTMuMzQgMC4xMywtNC45NyAtMC4zNCwtMi4wNiAtMS4wNywtMy43OSAtMi4xOSwtNS4xOCAtMS4xMiwtMS40IC0yLjU1LC0yLjM1IC00LjI5LC0yLjg2IC0xLjczLC0wLjUgLTMuNTUsLTAuNiAtNS40NSwtMC4yOSAtMi4wNSwwLjM0IC0zLjgxLDEuMDcgLTUuMjcsMi4xOSAtMS40NSwxLjEzIC0yLjQ3LDIuNTkgLTMuMDUsNC4zOSAtMC40NSwxLjM4IC0wLjUyLDMuMDEgLTAuMjEsNC44OSB6XCJcclxuICAgICAgICAgICAgLz5cclxuICAgICAgICAgIDwvZz5cclxuICAgICAgICA8L2c+XHJcbiAgICAgICAgPGcgaWQ9XCJnMTIwLTVcIj5cclxuICAgICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDEyNi0yKVwiIGlkPVwiZzEyMi02XCI+XHJcbiAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgaWQ9XCJwYXRoMTI4LTlcIlxyXG4gICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxyXG4gICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXHJcbiAgICAgICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxyXG4gICAgICAgICAgICAgIH19XHJcbiAgICAgICAgICAgICAgZD1cIm0gNDkwLjQyLDc3Mi45OSAzLjk3LDE0LjMgMy4yNiwtMC45IC0yLjg5LC0xMC40MSA0LjI4LC0xLjE5IDIuNjksOS42OSAzLjI0LC0wLjkxIC0yLjY4LC05LjY4IDUuMjUsLTEuNDUgMi45OSwxMC43NyAzLjI1LC0wLjkgLTQuMDcsLTE0LjY3IHpcIlxyXG4gICAgICAgICAgICAvPlxyXG4gICAgICAgICAgPC9nPlxyXG4gICAgICAgIDwvZz5cclxuICAgICAgICA8ZyBpZD1cImcxMzAtM1wiPlxyXG4gICAgICAgICAgPGcgY2xpcFBhdGg9XCJ1cmwoI2NsaXBQYXRoMTM2LTApXCIgaWQ9XCJnMTMyLTdcIj5cclxuICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICBpZD1cInBhdGgxMzgtNFwiXHJcbiAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXHJcbiAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcclxuICAgICAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXHJcbiAgICAgICAgICAgICAgfX1cclxuICAgICAgICAgICAgICBkPVwibSA5MTIuNzcsODEwLjIgLTcuODksLTAuNSAyLjE5LC01IHogbSAzLjQ0LDMuNzkgMS43MSwtMy45MiAtMTUuMTIsLTE1LjM2IC0xLjc2LDQuMDIgMy40NiwzLjQzIC0zLjIsNy4zMiAtNC44MywtMC4zIC0xLjcyLDMuOTIgelwiXHJcbiAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICA8L2c+XHJcbiAgICAgICAgPC9nPlxyXG4gICAgICAgIDxnIGlkPVwiZzE0MC01XCI+XHJcbiAgICAgICAgICA8ZyBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGgxNDYtMylcIiBpZD1cImcxNDItMlwiPlxyXG4gICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgIGlkPVwicGF0aDE0OC01XCJcclxuICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcclxuICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcclxuICAgICAgICAgICAgICB9fVxyXG4gICAgICAgICAgICAgIGQ9XCJtIDkyNC45MSw3OTIuMzggMS4xNywtMy43NSAtMTAuMzEsLTExLjgxIDEyLjc2LDMuOTkgMS4xMiwtMy41OCAtMTkuMTEsLTUuOTcgLTEuMjEsMy44NyAxMC4wNSwxMS41OSAtMTIuNDUsLTMuODkgLTEuMTIsMy41OCB6XCJcclxuICAgICAgICAgICAgLz5cclxuICAgICAgICAgIDwvZz5cclxuICAgICAgICA8L2c+XHJcbiAgICAgICAgPGcgaWQ9XCJnMTUwLTRcIj5cclxuICAgICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDE1Ni0wKVwiIGlkPVwiZzE1Mi03XCI+XHJcbiAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgaWQ9XCJwYXRoMTU4LTRcIlxyXG4gICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxyXG4gICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXHJcbiAgICAgICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxyXG4gICAgICAgICAgICAgIH19XHJcbiAgICAgICAgICAgICAgZD1cIm0gOTMyLjU3LDc2NS44OCAzLjE1LC0xNS41OSAtMy4zMiwtMC42NyAtMS4xNyw1LjgxIC0xNi4zLC0zLjI5IC0wLjgsMy45NiAxNi4zLDMuMjkgLTEuMTgsNS44MiB6XCJcclxuICAgICAgICAgICAgLz5cclxuICAgICAgICAgIDwvZz5cclxuICAgICAgICA8L2c+XHJcbiAgICAgICAgPGcgaWQ9XCJnMTYwLTRcIj5cclxuICAgICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDE2Ni0yKVwiIGlkPVwiZzE2Mi0zXCI+XHJcbiAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgaWQ9XCJwYXRoMTY4LTBcIlxyXG4gICAgICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxyXG4gICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXHJcbiAgICAgICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxyXG4gICAgICAgICAgICAgIH19XHJcbiAgICAgICAgICAgICAgZD1cIm0gOTM3LjI2LDczOS4yNyAwLjQ4LC00LjAxIC0xOS44NywtMi4zOSAtMC40OCw0LjAxIHpcIlxyXG4gICAgICAgICAgICAvPlxyXG4gICAgICAgICAgPC9nPlxyXG4gICAgICAgIDwvZz5cclxuICAgICAgICA8ZyBpZD1cImcxNzAtN1wiPlxyXG4gICAgICAgICAgPGcgY2xpcFBhdGg9XCJ1cmwoI2NsaXBQYXRoMTc2LTEpXCIgaWQ9XCJnMTcyLThcIj5cclxuICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICBpZD1cInBhdGgxNzgtNlwiXHJcbiAgICAgICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXHJcbiAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcclxuICAgICAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXHJcbiAgICAgICAgICAgICAgfX1cclxuICAgICAgICAgICAgICBkPVwibSA5MzkuNTgsNzE0LjI5IGMgMC4wOCwtMi40NCAtMC41NywtNC40NiAtMS45NywtNi4wMyAtMC44MiwtMC45NCAtMi4wMywtMS42NiAtMy42MiwtMi4xNyBsIC0xLjA4LDMuOTcgYyAxLjAzLDAuMjcgMS44MywwLjc5IDIuNCwxLjU2IDAuNTgsMC43NyAwLjg1LDEuNjkgMC44MSwyLjc2IC0wLjA1LDEuNDkgLTAuNjIsMi42NyAtMS43MSwzLjU2IC0xLjEsMC44OSAtMi44NCwxLjI5IC01LjIyLDEuMjEgLTIuNTMsLTAuMDggLTQuMzIsLTAuNiAtNS4zNiwtMS41NCAtMS4wNCwtMC45NSAtMS41NCwtMi4xNSAtMS40OSwtMy42IDAuMDMsLTEuMDggMC40MSwtMS45OSAxLjExLC0yLjc0IDAuNzEsLTAuNzUgMS44LC0xLjI3IDMuMjgsLTEuNTYgbCAtMS4xMSwtMy45NSBjIC0yLjIxLDAuNTIgLTMuODYsMS40NyAtNC45NywyLjgzIC0xLjEsMS4zNiAtMS42OSwzLjExIC0xLjc2LDUuMjYgLTAuMDksMi42NiAwLjc0LDQuODcgMi41LDYuNjQgMS43NiwxLjc3IDQuMjEsMi43MSA3LjM2LDIuODEgMy4zMywwLjExIDUuOTQsLTAuNjYgNy44NCwtMi4zMiAxLjksLTEuNjUgMi45LC0zLjg4IDIuOTksLTYuNjkgelwiXHJcbiAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICA8L2c+XHJcbiAgICAgICAgPC9nPlxyXG4gICAgICAgIDxnIGlkPVwiZzE4MC04XCI+XHJcbiAgICAgICAgICA8ZyBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGgxODYtNylcIiBpZD1cImcxODItOFwiPlxyXG4gICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgIGlkPVwicGF0aDE4OC00XCJcclxuICAgICAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcclxuICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcclxuICAgICAgICAgICAgICB9fVxyXG4gICAgICAgICAgICAgIGQ9XCJtIDkzOS4xLDY5NC4yNyAtMC4yMiwtNC4wMyAtMTkuOTgsMS4wOSAwLjIxLDQuMDMgelwiXHJcbiAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICA8L2c+XHJcbiAgICAgICAgPC9nPlxyXG4gICAgICAgIDxnIGlkPVwiZzE5MC0zXCI+XHJcbiAgICAgICAgICA8ZyBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGgxOTYtMilcIiBpZD1cImcxOTItMVwiPlxyXG4gICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgIGlkPVwicGF0aDE5OC00XCJcclxuICAgICAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcclxuICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcclxuICAgICAgICAgICAgICB9fVxyXG4gICAgICAgICAgICAgIGQ9XCJtIDkzMy45OCw2NzQuMjUgLTUuNjIsMC43OSAtMC4zMSwtMi4xOSBjIC0wLjIyLC0xLjU4IC0wLjI2LC0yLjY1IC0wLjEzLC0zLjIxIDAuMTMsLTAuNTYgMC40LC0xLjAyIDAuOCwtMS4zOCAwLjQsLTAuMzcgMC44OSwtMC41OSAxLjQ4LC0wLjY3IDAuNzIsLTAuMSAxLjM0LDAuMDIgMS44NywwLjM4IDAuNTMsMC4zNiAwLjksMC44NiAxLjExLDEuNDkgMC4xNSwwLjQ2IDAuMzMsMS40MiAwLjUzLDIuODYgeiBtIDMuOTIsMy41MyAtMC45LC02LjQyIGMgLTAuMzQsLTIuNDMgLTAuNjYsLTQgLTAuOTYsLTQuNzEgLTAuNDYsLTEuMSAtMS4yNCwtMS45NiAtMi4zNCwtMi41OSAtMS4xMSwtMC42MiAtMi40NSwtMC44MyAtNC4wMywtMC42IC0xLjIxLDAuMTcgLTIuMiwwLjUzIC0yLjk3LDEuMDkgLTAuNzcsMC41NiAtMS4zNCwxLjIxIC0xLjcyLDEuOTUgLTAuMzgsMC43NSAtMC41OSwxLjQ5IC0wLjY1LDIuMjEgLTAuMDUsMC45OCAwLjA0LDIuMzggMC4zLDQuMTkgbCAwLjM2LDIuNjEgLTcuNDcsMS4wNSAwLjU2LDQgelwiXHJcbiAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICA8L2c+XHJcbiAgICAgICAgPC9nPlxyXG4gICAgICAgIDxnIGlkPVwiZzIwMC05XCI+XHJcbiAgICAgICAgICA8ZyBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGgyMDYtMilcIiBpZD1cImcyMDItMlwiPlxyXG4gICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgIGlkPVwicGF0aDIwOC0wXCJcclxuICAgICAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcclxuICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcclxuICAgICAgICAgICAgICB9fVxyXG4gICAgICAgICAgICAgIGQ9XCJtIDkyNy4wMSw2NDQuMzcgLTYuNTMsNC40NSAtMS4zNSwtNS4yOSB6IG0gNS4wNCwwLjg4IC0xLjA1LC00LjE1IC0yMS4zOCwtMi44MyAxLjA5LDQuMjYgNC44MywwLjU3IDEuOTcsNy43NiAtNCwyLjcyIDEuMDYsNC4xNSB6XCJcclxuICAgICAgICAgICAgLz5cclxuICAgICAgICAgIDwvZz5cclxuICAgICAgICA8L2c+XHJcbiAgICAgICAgPGcgaWQ9XCJnMjEwLTZcIj5cclxuICAgICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDIxNi03KVwiIGlkPVwiZzIxMi04XCI+XHJcbiAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgaWQ9XCJwYXRoMjE4LTlcIlxyXG4gICAgICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxyXG4gICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXHJcbiAgICAgICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxyXG4gICAgICAgICAgICAgIH19XHJcbiAgICAgICAgICAgICAgZD1cIm0gOTI2LjA3LDYyNC4xOSAtNS41MiwtMTQuOTIgLTMuMTgsMS4xOCAyLjA2LDUuNTYgLTE1LjU5LDUuNzcgMS40LDMuNzkgMTUuNTksLTUuNzcgMi4wNiw1LjU3IHpcIlxyXG4gICAgICAgICAgICAvPlxyXG4gICAgICAgICAgPC9nPlxyXG4gICAgICAgIDwvZz5cclxuICAgICAgICA8ZyBpZD1cImcyMjAtMlwiPlxyXG4gICAgICAgICAgPGcgY2xpcFBhdGg9XCJ1cmwoI2NsaXBQYXRoMjI2LTkpXCIgaWQ9XCJnMjIyLTZcIj5cclxuICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICBpZD1cInBhdGgyMjgtNlwiXHJcbiAgICAgICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXHJcbiAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcclxuICAgICAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXHJcbiAgICAgICAgICAgICAgfX1cclxuICAgICAgICAgICAgICBkPVwibSA5MTYuMDYsNTk4Ljg4IC02LjUzLC0xMy4zMyAtMy4wNCwxLjQ5IDQuNzUsOS43IC0zLjk4LDEuOTUgLTQuNDIsLTkuMDMgLTMuMDMsMS40OSA0LjQyLDkuMDIgLTQuOSwyLjQgLTQuOTEsLTEwLjA1IC0zLjAzLDEuNDkgNi42OSwxMy42NyB6XCJcclxuICAgICAgICAgICAgLz5cclxuICAgICAgICAgIDwvZz5cclxuICAgICAgICA8L2c+XHJcbiAgICAgICAgPHBhdGhcclxuICAgICAgICAgIGlkPVwicGF0aDM1NC00XCJcclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXHJcbiAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXHJcbiAgICAgICAgICB9fVxyXG4gICAgICAgICAgZD1cIm0gNzkyLjUyLDQ5NC44MiAtMS41NSw0Ljg0IC0yLjg1LC0wLjkxIGMgLTEuODUsLTAuNTkgLTIuOTcsLTEuMDQgLTMuMzgsLTEuMzQgLTAuNDEsLTAuMzEgLTAuNjksLTAuNjkgLTAuODMsLTEuMTUgLTAuMTMsLTAuNDcgLTAuMTEsLTAuOTkgMC4wNywtMS41NiAwLjIxLC0wLjY0IDAuNTQsLTEuMSAxLjAxLC0xLjM5IDAuNDcsLTAuMjggMS4wMywtMC4zOCAxLjY5LC0wLjI4IDAuMzMsMC4wNSAxLjI3LDAuMzMgMi44MywwLjgzIHogbSA0Ljg4LC0xLjk5IC04LjExLC0yLjU5IGMgLTIuMDMsLTAuNjYgLTMuNTcsLTAuOTYgLTQuNiwtMC45MSAtMS4wMywwLjA1IC0xLjk3LDAuNDIgLTIuOCwxLjEyIC0wLjg0LDAuNyAtMS40MywxLjYxIC0xLjgsMi43NCAtMC40NSwxLjQzIC0wLjQxLDIuNzQgMC4xMywzLjk0IDAuNTUsMS4yIDEuNjIsMi4xOSAzLjIxLDIuOTcgLTAuOTksMC4yMiAtMS44NCwwLjUzIC0yLjU3LDAuOTQgLTAuNzMsMC40MSAtMS43OSwxLjIxIC0zLjE4LDIuNCBsIC0zLjUyLDIuOTcgNC42MSwxLjQ3IDQuMSwtMy4yNiBjIDEuNDcsLTEuMTYgMi40NCwtMS44OCAyLjkzLC0yLjE1IDAuNDksLTAuMjcgMC45NiwtMC40MSAxLjQxLC0wLjQyIDAuNDUsLTAuMDIgMS4xMiwwLjEyIDIuMDEsMC40IGwgMC43OCwwLjI1IC0yLjU1LDcuOTYgMy44NSwxLjIzIHpcIlxyXG4gICAgICAgIC8+XHJcbiAgICAgICAgPHBhdGhcclxuICAgICAgICAgIGlkPVwicGF0aDM1Ni04XCJcclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXHJcbiAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXHJcbiAgICAgICAgICB9fVxyXG4gICAgICAgICAgZD1cIm0gNzY5LjA2LDQ4NC41NyAtMTQuNTQsLTIuOTYgLTAuNjgsMy4zMiAxMC41OCwyLjE1IC0wLjg4LDQuMzUgLTkuODUsLTIuMDEgLTAuNjcsMy4zMSA5Ljg0LDIgLTEuMDgsNS4zNCAtMTAuOTYsLTIuMjMgLTAuNjcsMy4zMSAxNC45MSwzLjAzIHpcIlxyXG4gICAgICAgIC8+XHJcbiAgICAgICAgPHBhdGhcclxuICAgICAgICAgIGlkPVwicGF0aDM1OC03XCJcclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXHJcbiAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXHJcbiAgICAgICAgICB9fVxyXG4gICAgICAgICAgZD1cIm0gNzQxLjU1LDQ3OS43MSAtMTMuNjUsLTEuMzUgLTAuMzQsMy4zNyA5LjY0LDAuOTUgLTAuNDcsNC43MSAtOC4zMSwtMC44MiAtMC4zNCwzLjM3IDguMzIsMC44MiAtMC44NCw4LjQ3IDQuMDIsMC4zOSB6XCJcclxuICAgICAgICAvPlxyXG4gICAgICAgIDxwYXRoXHJcbiAgICAgICAgICBpZD1cInBhdGgzNjAtMVwiXHJcbiAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxyXG4gICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcclxuICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAgIGQ9XCJtIDcxNS4yMSw0NzcuOTMgaCAtNC4wNCBsIC0wLjAxLDE2LjQ4IGggLTEwLjA1IHYgMy4zNyBoIDE0LjA5IHpcIlxyXG4gICAgICAgIC8+XHJcbiAgICAgICAgPHBhdGhcclxuICAgICAgICAgIGlkPVwicGF0aDM2Mi03XCJcclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb2ZmYmxhY2spXCIsXHJcbiAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXHJcbiAgICAgICAgICB9fVxyXG4gICAgICAgICAgZD1cIm0gNjg4LjgzLDQ3OC40IC0xNC43NywxLjUgMC4zNCwzLjM3IDEwLjc1LC0xLjA5IDAuNDUsNC40MSAtMTAsMS4wMiAwLjM0LDMuMzUgMTAsLTEuMDEgMC41NSw1LjQyIC0xMS4xMywxLjEzIDAuMzQsMy4zNSAxNS4xNSwtMS41NCB6XCJcclxuICAgICAgICAvPlxyXG4gICAgICAgIDxwYXRoXHJcbiAgICAgICAgICBpZD1cInBhdGgzNjQtMlwiXHJcbiAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICBmaWxsOiBcInZhcigtLW9mZmJsYWNrKVwiLFxyXG4gICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcclxuICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAgIGQ9XCJtIDY1Mi41LDQ4My4zOSBjIC0yLjM5LDAuNTEgLTQuMTgsMS42MyAtNS4zOCwzLjM2IC0wLjcxLDEuMDMgLTEuMTIsMi4zNyAtMS4yMyw0LjAzIGwgNC4xMSwwLjEgYyAwLjAxLC0xLjA2IDAuMzIsLTEuOTYgMC45MywtMi43MSAwLjYxLC0wLjc0IDEuNDQsLTEuMjIgMi40OSwtMS40NSAxLjQ1LC0wLjMxIDIuNzQsLTAuMDQgMy44NywwLjgxIDEuMTIsMC44NSAxLjkzLDIuNDQgMi40Myw0Ljc3IDAuNTMsMi40OCAwLjQ2LDQuMzQgLTAuMjEsNS41OCAtMC42NywxLjI0IC0xLjcxLDIuMDEgLTMuMTMsMi4zMSAtMS4wNiwwLjIyIC0yLjAzLDAuMDggLTIuOTMsLTAuNDIgLTAuOSwtMC41MSAtMS42NiwtMS40NCAtMi4zLC0yLjgxIGwgLTMuNTcsMi4wMyBjIDEuMDQsMi4wMSAyLjM1LDMuMzkgMy45NCw0LjE0IDEuNTksMC43NSAzLjQzLDAuOSA1LjUzLDAuNDUgMi42LC0wLjU2IDQuNTUsLTEuOSA1Ljg1LC00LjAzIDEuMjksLTIuMTMgMS42MSwtNC43NCAwLjk2LC03LjgyIC0wLjcsLTMuMjYgLTIuMDgsLTUuNjEgLTQuMTQsLTcuMDUgLTIuMDcsLTEuNDUgLTQuNDcsLTEuODggLTcuMjIsLTEuMjkgelwiXHJcbiAgICAgICAgLz5cclxuICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgaWQ9XCJwYXRoMzY2LTdcIlxyXG4gICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgZmlsbDogXCJ2YXIoLS1vZmZibGFjaylcIixcclxuICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXHJcbiAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcclxuICAgICAgICAgIH19XHJcbiAgICAgICAgICBkPVwibSA2MzMuNzQsNDg4LjM4IC0xNS4xMiw0LjkzIDEuMDUsMy4yMiA1LjYzLC0xLjgzIDUuMTYsMTUuOCAzLjg0LC0xLjI1IC01LjE2LC0xNS44MSA1LjY1LC0xLjg0IHpcIlxyXG4gICAgICAgIC8+XHJcbiAgICAgICAgPHBhdGhcclxuICAgICAgICAgIGlkPVwicGF0aDc0Mi0yXCJcclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIGZpbGw6IFwibm9uZVwiLFxyXG4gICAgICAgICAgICBzdHJva2U6IFwidmFyKC0tb3VyYmVpZ2UpXCIsXHJcbiAgICAgICAgICAgIHN0cm9rZVdpZHRoOiAyLjA0LFxyXG4gICAgICAgICAgICBzdHJva2VMaW5lY2FwOiBcImJ1dHRcIixcclxuICAgICAgICAgICAgc3Ryb2tlTGluZWpvaW46IFwicm91bmRcIixcclxuICAgICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdDogMTAsXHJcbiAgICAgICAgICAgIHN0cm9rZURhc2hhcnJheTogXCJub25lXCIsXHJcbiAgICAgICAgICAgIHN0cm9rZU9wYWNpdHk6IDEsXHJcbiAgICAgICAgICB9fVxyXG4gICAgICAgICAgZD1cIm0gNTc5LjA2LDcwOC42IGMgMCw2Ny4zIDU4LjA4LDEyMS44NiAxMjkuNzIsMTIxLjg2IDcxLjY0LDAgMTI5LjcyLC01NC41NiAxMjkuNzIsLTEyMS44NiAwLC02Ny4zIC01OC4wOCwtMTIxLjg2IC0xMjkuNzIsLTEyMS44NiAtNzEuNjQsMCAtMTI5LjcyLDU0LjU2IC0xMjkuNzIsMTIxLjg2IHpcIlxyXG4gICAgICAgIC8+XHJcbiAgICAgICAgPGdcclxuICAgICAgICAgIGlkPVwiYWN0LXRleHRcIlxyXG4gICAgICAgICAgY2xhc3NOYW1lPVwiaHAzIGFjdC12ZXJzaW9uXCJcclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IFwiaW5saW5lXCIsXHJcbiAgICAgICAgICB9fVxyXG4gICAgICAgICAgdHJhbnNmb3JtPVwicm90YXRlKDg5LjU3ODYzMiw3MDkuMjY5MDcsNzA2LjQwNTc1KVwiXHJcbiAgICAgICAgPlxyXG4gICAgICAgICAgPGcgaWQ9XCJnMjQ2XCIgdHJhbnNmb3JtPVwidHJhbnNsYXRlKDQ1Mi4wMzIyMSwtNDUxLjM4OTE5KVwiPlxyXG4gICAgICAgICAgICA8ZyBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGgyNTIpXCIgaWQ9XCJnMjQ4XCI+XHJcbiAgICAgICAgICAgICAgPHRleHRcclxuICAgICAgICAgICAgICAgIGlkPVwidGV4dDI1NlwiXHJcbiAgICAgICAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICAgICAgICBmb250VmFyaWFudDogXCJub3JtYWxcIixcclxuICAgICAgICAgICAgICAgICAgZm9udFdlaWdodDogXCJub3JtYWxcIixcclxuICAgICAgICAgICAgICAgICAgZm9udFNpemU6IFwiMjBweFwiLFxyXG4gICAgICAgICAgICAgICAgICBmb250RmFtaWx5OiBcIkFyaWFsTVRcIixcclxuICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgZmlsbDogXCIjMzIyMzJjXCIsXHJcbiAgICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgICAgICAgICBmaWxsUnVsZTogXCJub256ZXJvXCIsXHJcbiAgICAgICAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXHJcbiAgICAgICAgICAgICAgICB9fVxyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEsMCwwLC0xLDU4MC44NywxMjc1Ljk2KVwiXHJcbiAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgPHRzcGFuXHJcbiAgICAgICAgICAgICAgICAgIGlkPVwidHNwYW4yNTRcIlxyXG4gICAgICAgICAgICAgICAgICB5PXswfVxyXG4gICAgICAgICAgICAgICAgICB4PVwiMCA1LjU3MTExOTggMTYuNzEzMzYgMjIuMTA0MTIgMjYuNTUyOTk5IDM3LjY5NTI0IDQzLjI2NjM2MSA0Ny43MTUyNCA1OC44NTc0NzkgNjkuOTk5NzE4IDgxLjIyMjEyMiA5MS4zMDIyMzggMTAyLjQ0NDQ4IDEwNy44OTUzNiAxMTMuNDY2NDggMTI0LjYwODcyIDEzNS43NTA5NiAxNDEuMTgxNzkgMTUyLjMyNDA0IDE1Ni43NzI5MiAxNjMuNTA2MzYgMTc0LjY0ODYxIDE4NC43Njg4IDE5MC4zMzk5MiAxOTQuNzg4OCAyMDUuOTMxMDUgMjE3LjA3MzI3IDIyMi4zODM4OCAyMzMuNTI2MTIgMjQ0LjcyODQ5IDI1NS44NzA3M1wiXHJcbiAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgIHtcInRvIGluZmx1ZW5jZSB0aGUgZGlyZWN0aW9uIGFuZCBcIn1cclxuICAgICAgICAgICAgICAgIDwvdHNwYW4+XHJcbiAgICAgICAgICAgICAgPC90ZXh0PlxyXG4gICAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICA8ZyBpZD1cImcyNThcIiB0cmFuc2Zvcm09XCJ0cmFuc2xhdGUoNDUyLjAzMjIxLC00NTEuMzg5MTkpXCI+XHJcbiAgICAgICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDI2NClcIiBpZD1cImcyNjBcIj5cclxuICAgICAgICAgICAgICA8dGV4dFxyXG4gICAgICAgICAgICAgICAgaWQ9XCJ0ZXh0MjY4XCJcclxuICAgICAgICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgICAgICAgIGZvbnRWYXJpYW50OiBcIm5vcm1hbFwiLFxyXG4gICAgICAgICAgICAgICAgICBmb250V2VpZ2h0OiBcIm5vcm1hbFwiLFxyXG4gICAgICAgICAgICAgICAgICBmb250U2l6ZTogXCIyMHB4XCIsXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRGYW1pbHk6IFwiQXJpYWxNVFwiLFxyXG4gICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICBmaWxsOiBcIiMzMjIzMmNcIixcclxuICAgICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXHJcbiAgICAgICAgICAgICAgICAgIGZpbGxSdWxlOiBcIm5vbnplcm9cIixcclxuICAgICAgICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcclxuICAgICAgICAgICAgICAgIH19XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSwwLDAsLTEsNTc4LjgzLDEyNTEuOTYpXCJcclxuICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICA8dHNwYW5cclxuICAgICAgICAgICAgICAgICAgaWQ9XCJ0c3BhbjI2NlwiXHJcbiAgICAgICAgICAgICAgICAgIHk9ezB9XHJcbiAgICAgICAgICAgICAgICAgIHg9XCIwIDUuNTcxMTE5OCAxMi4yNDQ0NCAyMy4zODY2ODEgMjcuODM1NTYgMzkuMDM3OTIyIDQ5LjExODAzOCA1NC42ODkxNTkgNjUuODMxMzk4IDcyLjUwNDcyMyA4Mi41MjQ3MTkgODcuNjk1MDM4IDk4LjgzNzI4IDEwNC40MDg0IDEwOS45MTk0IDExNS40OTA1MiAxMjYuNjMyNzYgMTM3Ljc3NDk5IDE0My4yMDU4NCAxNDkuODc5MTcgMTYxLjA4MTUxIDE3MS4xNjE2NCAxODIuMzAzODggMTkzLjUwNjI0IDIwMC4xNzk1NyAyMTAuMTk5NTUgMjIxLjM0MTggMjI2LjQzMTk2IDIzNy41NzQyIDI0OC43NzY1NyAyNTkuOTE4NzlcIlxyXG4gICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICB7XCJ0cmFqZWN0b3J5IG9mIHRoZSByZXNlYXJjaCBhbmQgXCJ9XHJcbiAgICAgICAgICAgICAgICA8L3RzcGFuPlxyXG4gICAgICAgICAgICAgIDwvdGV4dD5cclxuICAgICAgICAgICAgPC9nPlxyXG4gICAgICAgICAgPC9nPlxyXG4gICAgICAgICAgPGcgaWQ9XCJnMjcwXCIgdHJhbnNmb3JtPVwidHJhbnNsYXRlKDQ1Mi4wMzIyMSwtNDUxLjM4OTE5KVwiPlxyXG4gICAgICAgICAgICA8ZyBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGgyNzYpXCIgaWQ9XCJnMjcyXCI+XHJcbiAgICAgICAgICAgICAgPHRleHRcclxuICAgICAgICAgICAgICAgIGlkPVwidGV4dDI4MFwiXHJcbiAgICAgICAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICAgICAgICBmb250VmFyaWFudDogXCJub3JtYWxcIixcclxuICAgICAgICAgICAgICAgICAgZm9udFdlaWdodDogXCJub3JtYWxcIixcclxuICAgICAgICAgICAgICAgICAgZm9udFNpemU6IFwiMjBweFwiLFxyXG4gICAgICAgICAgICAgICAgICBmb250RmFtaWx5OiBcIkFyaWFsTVRcIixcclxuICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgZmlsbDogXCIjMzIyMzJjXCIsXHJcbiAgICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgICAgICAgICBmaWxsUnVsZTogXCJub256ZXJvXCIsXHJcbiAgICAgICAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXHJcbiAgICAgICAgICAgICAgICB9fVxyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEsMCwwLC0xLDYwMi4wMiwxMjI3Ljk2KVwiXHJcbiAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgPHRzcGFuXHJcbiAgICAgICAgICAgICAgICAgIGlkPVwidHNwYW4yNzhcIlxyXG4gICAgICAgICAgICAgICAgICB5PXswfVxyXG4gICAgICAgICAgICAgICAgICB4PVwiMCA0LjQ0ODg4MDIgMTUuNTkxMTIgMjYuNzMzMzYgMzcuODc1NTk5IDQ3Ljg5NTU5OSA1OS4wMzc4NDIgNjQuNjA4OTYzIDY5LjA1NzgzOCA4MC4yMDAwODEgOTEuMzQyMzIzIDk2LjcxMzA0MyAxMDcuODU1MjggMTE0LjU2ODY4IDEyNS43MTA5MiAxMzUuNzkxMDUgMTQ2LjkzMzI3IDE1Ny4wMTM0IDE2Ny4wMzM0IDE3Mi4xMjM1NyAxNzYuNTcyNDMgMTgyLjE0MzU1IDE5Mi4xNjM1NiAyMDMuMzA1OCAyMDcuNzU0NjhcIlxyXG4gICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICB7XCJpbm5vdmF0aW9uIHByb2Nlc3MgaXRzZWxmXCJ9XHJcbiAgICAgICAgICAgICAgICA8L3RzcGFuPlxyXG4gICAgICAgICAgICAgIDwvdGV4dD5cclxuICAgICAgICAgICAgPC9nPlxyXG4gICAgICAgICAgPC9nPlxyXG4gICAgICAgICAgPGcgaWQ9XCJnMjgyXCIgdHJhbnNmb3JtPVwidHJhbnNsYXRlKDQ1Mi4wMzIyMSwtNDUxLjM4OTE5KVwiPlxyXG4gICAgICAgICAgICA8ZyBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGgyODgpXCIgaWQ9XCJnMjg0XCI+XHJcbiAgICAgICAgICAgICAgPHRleHRcclxuICAgICAgICAgICAgICAgIGlkPVwidGV4dDI5MlwiXHJcbiAgICAgICAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICAgICAgICBmb250VmFyaWFudDogXCJub3JtYWxcIixcclxuICAgICAgICAgICAgICAgICAgZm9udFdlaWdodDogXCJub3JtYWxcIixcclxuICAgICAgICAgICAgICAgICAgZm9udFNpemU6IFwiMjBweFwiLFxyXG4gICAgICAgICAgICAgICAgICBmb250RmFtaWx5OiBcIkFyaWFsTVRcIixcclxuICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgZmlsbDogXCIjMzIyMzJjXCIsXHJcbiAgICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgICAgICAgICBmaWxsUnVsZTogXCJub256ZXJvXCIsXHJcbiAgICAgICAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXHJcbiAgICAgICAgICAgICAgICB9fVxyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEsMCwwLC0xLDU1Ny45NSwxMTc5Ljk2KVwiXHJcbiAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgPHRzcGFuXHJcbiAgICAgICAgICAgICAgICAgIGlkPVwidHNwYW4yOTBcIlxyXG4gICAgICAgICAgICAgICAgICB5PXswfVxyXG4gICAgICAgICAgICAgICAgICB4PVwiMCAxMS4xNDIyNCAyMi4yODQ0NzkgMzMuNDI2NzIgNDQuNjI5MDgyIDUwLjIwMDE5OSA2MS4zNDI0NDIgNzIuNDg0NjggNzcuNzU1MjAzIDg4Ljg5NzQzOCAxMDAuMDM5NjggMTExLjE4MTkyIDExNi42MzI4IDEyNy43NzUwNCAxMzguOTE3MjggMTUwLjA1OTUyIDE1NC41MDg0MSAxNTguOTU3MjggMTcwLjA5OTUyIDE4MS4zMDE4OCAxODYuNjkyNjQgMTkyLjI2Mzc2IDIwMy40MDYwMSAyMTQuNTQ4MjMgMjE5LjkzOSAyMjUuNTEwMTIgMjM2LjY1MjM2IDI0Ny43OTQ2IDI1OC45MzY4MyAyNzAuMDc5MDcgMjgxLjIyMTMxIDI5MS4zMjE0NyAzMDEuMzQxNDlcIlxyXG4gICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICB7XCJhZGFwdGVkIGFuZCBhcHBsaWVkIHRoZSBmZWVkYmFjayBcIn1cclxuICAgICAgICAgICAgICAgIDwvdHNwYW4+XHJcbiAgICAgICAgICAgICAgPC90ZXh0PlxyXG4gICAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICA8ZyBpZD1cImcyOTRcIiB0cmFuc2Zvcm09XCJ0cmFuc2xhdGUoNDUyLjAzMjIxLC00NTEuMzg5MTkpXCI+XHJcbiAgICAgICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDMwMClcIiBpZD1cImcyOTZcIj5cclxuICAgICAgICAgICAgICA8dGV4dFxyXG4gICAgICAgICAgICAgICAgaWQ9XCJ0ZXh0MzA0XCJcclxuICAgICAgICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgICAgICAgIGZvbnRWYXJpYW50OiBcIm5vcm1hbFwiLFxyXG4gICAgICAgICAgICAgICAgICBmb250V2VpZ2h0OiBcIm5vcm1hbFwiLFxyXG4gICAgICAgICAgICAgICAgICBmb250U2l6ZTogXCIyMHB4XCIsXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRGYW1pbHk6IFwiQXJpYWxNVFwiLFxyXG4gICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICBmaWxsOiBcIiMzMjIzMmNcIixcclxuICAgICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXHJcbiAgICAgICAgICAgICAgICAgIGZpbGxSdWxlOiBcIm5vbnplcm9cIixcclxuICAgICAgICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcclxuICAgICAgICAgICAgICAgIH19XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSwwLDAsLTEsNTc0LjE1LDExNTUuOTYpXCJcclxuICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICA8dHNwYW5cclxuICAgICAgICAgICAgICAgICAgaWQ9XCJ0c3BhbjMwMlwiXHJcbiAgICAgICAgICAgICAgICAgIHk9ezB9XHJcbiAgICAgICAgICAgICAgICAgIHg9XCIwIDUuNTcxMTE5OCAxMi4yNDQ0NCAyMy4zODY2ODEgNDAuMDgwMDAyIDQ1LjM1MDUyMSA1Ni40OTI3NiA2Ni41MTI3NTYgNzcuNjU0OTk5IDg4Ljc5NzI0MSA5NS40NzA1NTggMTAxLjA0MTY4IDExMS4wNjE2OCAxMTYuMzkyMzIgMTI3LjUzNDU2IDEzOC42NzY4IDE0OS44MTkwNSAxNTUuMjY5OTEgMTY1LjI4OTkyIDE3MC44NjEwNCAxODIuMDAzMjggMTkyLjA4MzQgMjAzLjIyNTY1IDIxNC4zNjc4NyAyMjUuNTEwMTIgMjI5Ljk1OSAyNDEuMTQxMzMgMjUyLjI4MzU1IDI1OC45NTY4OFwiXHJcbiAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgIHtcImZyb20gZXhwZXJ0cyBhbmQgc3Rha2Vob2xkZXJzXCJ9XHJcbiAgICAgICAgICAgICAgICA8L3RzcGFuPlxyXG4gICAgICAgICAgICAgIDwvdGV4dD5cclxuICAgICAgICAgICAgPC9nPlxyXG4gICAgICAgICAgPC9nPlxyXG4gICAgICAgICAgPGcgaWQ9XCJnMzA2XCIgdHJhbnNmb3JtPVwidHJhbnNsYXRlKDQ1Mi4wMzIyMSwtNDUxLjM4OTE5KVwiPlxyXG4gICAgICAgICAgICA8ZyBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGgzMTIpXCIgaWQ9XCJnMzA4XCI+XHJcbiAgICAgICAgICAgICAgPHRleHRcclxuICAgICAgICAgICAgICAgIGlkPVwidGV4dDMxNlwiXHJcbiAgICAgICAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICAgICAgICBmb250VmFyaWFudDogXCJub3JtYWxcIixcclxuICAgICAgICAgICAgICAgICAgZm9udFdlaWdodDogXCJub3JtYWxcIixcclxuICAgICAgICAgICAgICAgICAgZm9udFNpemU6IFwiMjBweFwiLFxyXG4gICAgICAgICAgICAgICAgICBmb250RmFtaWx5OiBcIkFyaWFsTVRcIixcclxuICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgZmlsbDogXCIjMzIyMzJjXCIsXHJcbiAgICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgICAgICAgICBmaWxsUnVsZTogXCJub256ZXJvXCIsXHJcbiAgICAgICAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXHJcbiAgICAgICAgICAgICAgICB9fVxyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEsMCwwLC0xLDU4Ni4zOSwxMTA3Ljk0KVwiXHJcbiAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgPHRzcGFuXHJcbiAgICAgICAgICAgICAgICAgIGlkPVwidHNwYW4zMTRcIlxyXG4gICAgICAgICAgICAgICAgICB5PXswfVxyXG4gICAgICAgICAgICAgICAgICB4PVwiMCAxMC4wODAxMiAyMS4yMjIzNjEgMzEuMjQyMzU5IDM2LjY1MzE2IDQ3Ljc5NTM5OSA1Mi4yNDQyODIgNjMuNDQ2NjQgNzQuNTg4ODgyIDc5LjAzNzc1OCA4My40ODY2NDEgOTQuNjY4OTYxIDEwNS44MTEyIDExMS4zODIzMiAxMjEuNDYyNDQgMTI2Ljg1MzIgMTM2LjkzMzMyIDE0OC4wNzU1NiAxNTkuMjc3OTIgMTY5LjM1ODA1IDE3My44MDY5MiAxODQuOTQ5MTYgMTk2LjE1MTUyIDIwMS40MjIwNCAyMTIuNTY0MjkgMjIyLjY4NDQ4IDIyOC4wNzUyNCAyMzMuNjQ2MzYgMjQ0Ljc4ODZcIlxyXG4gICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICB7XCJrZXkgaGlnaGxpZ2h0cyBjYXVzaW5nIHVzIHRvIFwifVxyXG4gICAgICAgICAgICAgICAgPC90c3Bhbj5cclxuICAgICAgICAgICAgICA8L3RleHQ+XHJcbiAgICAgICAgICAgIDwvZz5cclxuICAgICAgICAgIDwvZz5cclxuICAgICAgICAgIDxnIGlkPVwiZzMxOFwiIHRyYW5zZm9ybT1cInRyYW5zbGF0ZSg0NTIuMDMyMjEsLTQ1MS4zODkxOSlcIj5cclxuICAgICAgICAgICAgPGcgY2xpcFBhdGg9XCJ1cmwoI2NsaXBQYXRoMzI0KVwiIGlkPVwiZzMyMFwiPlxyXG4gICAgICAgICAgICAgIDx0ZXh0XHJcbiAgICAgICAgICAgICAgICBpZD1cInRleHQzMjhcIlxyXG4gICAgICAgICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgICAgICAgZm9udFZhcmlhbnQ6IFwibm9ybWFsXCIsXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRXZWlnaHQ6IFwibm9ybWFsXCIsXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRTaXplOiBcIjIwcHhcIixcclxuICAgICAgICAgICAgICAgICAgZm9udEZhbWlseTogXCJBcmlhbE1UXCIsXHJcbiAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgIGZpbGw6IFwiIzMyMjMyY1wiLFxyXG4gICAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcclxuICAgICAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwibm9uemVyb1wiLFxyXG4gICAgICAgICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxyXG4gICAgICAgICAgICAgICAgfX1cclxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxLDAsMCwtMSw1NTIuNTUsMTA4My45NClcIlxyXG4gICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgIDx0c3BhblxyXG4gICAgICAgICAgICAgICAgICBpZD1cInRzcGFuMzI2XCJcclxuICAgICAgICAgICAgICAgICAgeT17MH1cclxuICAgICAgICAgICAgICAgICAgeD1cIjAgNi42NzMzMTk4IDE3Ljg1NTY0IDI3Ljg3NTY0MSAzOS4wNzc5OTkgNTAuMjIwMjQyIDYwLjMwMDM2MiA2NC43NDkyMzcgNzUuODkxNDc5IDg3LjAzMzcyMiA5My43MDcwMzkgOTkuMTc3OTYzIDEwNC4zMjgyNCAxMTUuNDcwNDggMTI2LjYxMjcyIDEzNi42MzI3MiAxNDcuNzc0OTYgMTUyLjIyMzg1IDE2My4zNjYwNyAxNzQuNTA4MzIgMTc5LjkxOTExIDE5MS4wNjEzNiAyMDIuMjAzNiAyMTMuMzQ1ODQgMjE4Ljc5NjcyIDIyOS45Mzg5NiAyMzQuMzg3ODMgMjM5Ljk1ODk1IDI1MS4xMDEyIDI1Ny43NzQ1MSAyNjMuMjA1MzUgMjczLjIyNTM3IDI4NC40Mjc3MyAzMDEuMTIxMDMgMzEyLjI2MzI4XCJcclxuICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAge1wicmVjb25zaWRlciwgZGV2ZWxvcCBhbmQgYWx0ZXIgc29tZSBcIn1cclxuICAgICAgICAgICAgICAgIDwvdHNwYW4+XHJcbiAgICAgICAgICAgICAgPC90ZXh0PlxyXG4gICAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICA8ZyBpZD1cImczMzBcIiB0cmFuc2Zvcm09XCJ0cmFuc2xhdGUoNDUyLjAzMjIxLC00NTEuMzg5MTkpXCI+XHJcbiAgICAgICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDMzNilcIiBpZD1cImczMzJcIj5cclxuICAgICAgICAgICAgICA8dGV4dFxyXG4gICAgICAgICAgICAgICAgaWQ9XCJ0ZXh0MzQwXCJcclxuICAgICAgICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgICAgICAgIGZvbnRWYXJpYW50OiBcIm5vcm1hbFwiLFxyXG4gICAgICAgICAgICAgICAgICBmb250V2VpZ2h0OiBcIm5vcm1hbFwiLFxyXG4gICAgICAgICAgICAgICAgICBmb250U2l6ZTogXCIyMHB4XCIsXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRGYW1pbHk6IFwiQXJpYWxNVFwiLFxyXG4gICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICBmaWxsOiBcIiMzMjIzMmNcIixcclxuICAgICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXHJcbiAgICAgICAgICAgICAgICAgIGZpbGxSdWxlOiBcIm5vbnplcm9cIixcclxuICAgICAgICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcclxuICAgICAgICAgICAgICAgIH19XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSwwLDAsLTEsNTY2LjExLDEwNTkuOTQpXCJcclxuICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICA8dHNwYW5cclxuICAgICAgICAgICAgICAgICAgaWQ9XCJ0c3BhbjMzOFwiXHJcbiAgICAgICAgICAgICAgICAgIHk9ezB9XHJcbiAgICAgICAgICAgICAgICAgIHg9XCIwIDExLjE0MjI0IDE2LjcxMzM2IDIyLjA4NDA4IDI3LjY1NTE5OSAzOC43OTc0NCA0OS45Mzk2NzggNTUuMzMwNDQxIDY2LjQ3MjY3OSA3Ni41NTI4MDMgODcuNjk1MDM4IDk4LjgzNzI4IDEwOC45Mzc0NCAxMTQuNTA4NTYgMTI0LjUyODU2IDEyOS42OTg4OCAxNDAuODQxMTMgMTQ2LjQxMjI1IDE1MS45MDMyIDE2My4wNDU0NCAxNzQuMTg3NjggMTgwLjkyMTEzIDE4Ni4xOTE2NCAxOTcuMzMzODggMjA0LjA0NzI5IDIxNS4xODk1MSAyMTkuNjM4NCAyMzAuNzgwNjQgMjQwLjg2MDc2IDI0Ni40MzE4OCAyNTEuNjYyMzIgMjYyLjgwNDU3IDI3My45NDY4MSAyODUuMDg5MDVcIlxyXG4gICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICB7XCJvZiB0aGUgYXNwZWN0cyBvZiBvdXIgcHJvamVjdCBhbmQgXCJ9XHJcbiAgICAgICAgICAgICAgICA8L3RzcGFuPlxyXG4gICAgICAgICAgICAgIDwvdGV4dD5cclxuICAgICAgICAgICAgPC9nPlxyXG4gICAgICAgICAgPC9nPlxyXG4gICAgICAgICAgPGcgaWQ9XCJnMzQyXCIgdHJhbnNmb3JtPVwidHJhbnNsYXRlKDQ1Mi4wMzIyMSwtNDUxLjM4OTE5KVwiPlxyXG4gICAgICAgICAgICA8ZyBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGgzNDgpXCIgaWQ9XCJnMzQ0XCI+XHJcbiAgICAgICAgICAgICAgPHRleHRcclxuICAgICAgICAgICAgICAgIGlkPVwidGV4dDM1MlwiXHJcbiAgICAgICAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICAgICAgICBmb250VmFyaWFudDogXCJub3JtYWxcIixcclxuICAgICAgICAgICAgICAgICAgZm9udFdlaWdodDogXCJub3JtYWxcIixcclxuICAgICAgICAgICAgICAgICAgZm9udFNpemU6IFwiMjBweFwiLFxyXG4gICAgICAgICAgICAgICAgICBmb250RmFtaWx5OiBcIkFyaWFsTVRcIixcclxuICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgZmlsbDogXCIjMzIyMzJjXCIsXHJcbiAgICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgICAgICAgICBmaWxsUnVsZTogXCJub256ZXJvXCIsXHJcbiAgICAgICAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXHJcbiAgICAgICAgICAgICAgICB9fVxyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEsMCwwLC0xLDY2OS43LDEwMzUuOTQpXCJcclxuICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICA8dHNwYW5cclxuICAgICAgICAgICAgICAgICAgaWQ9XCJ0c3BhbjM1MFwiXHJcbiAgICAgICAgICAgICAgICAgIHk9ezB9XHJcbiAgICAgICAgICAgICAgICAgIHg9XCIwIDYuNjczMzE5OCAxNy44NTU2NCAyNy44NzU2NDEgMzkuMDc3OTk5IDUwLjIyMDI0MiA1Ni45MzM2NCA2Ni45NTM2NDRcIlxyXG4gICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICB7XCJyZXNlYXJjaFwifVxyXG4gICAgICAgICAgICAgICAgPC90c3Bhbj5cclxuICAgICAgICAgICAgICA8L3RleHQ+XHJcbiAgICAgICAgICAgIDwvZz5cclxuICAgICAgICAgIDwvZz5cclxuICAgICAgICA8L2c+XHJcbiAgICAgIDwvZz5cclxuICAgIDwvZz5cclxuICA8L3N2Zz5cclxuKTtcclxuXHJcbiIsICJleHBvcnQgY29uc3QgV2hvbGVNZW5kZWxvdyA9ICgpID0+IChcclxuICA8c3ZnXHJcbiAgdmlld0JveD1cIi0xNTAwIDAgOTAwMCA2MDAwXCJcclxuICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxyXG4gICAgeG1sbnNYbGluaz1cImh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmtcIlxyXG4gICAgeG1sU3BhY2U9XCJwcmVzZXJ2ZVwiXHJcbiAgICBvdmVyZmxvdz1cImhpZGRlblwiXHJcbiAgPlxyXG4gICAgPGcgdHJhbnNmb3JtPVwidHJhbnNsYXRlKC0zMzkgLTgyOSlcIj5cclxuICAgICAgPGc+XHJcbiAgICAgICAgPHBhdGhcclxuICAgICAgICAgIGQ9XCJNMjguNjQ1OC0yLjk2MThlLTA2IDI4LjY0NjIgMzM0Ny4yNC0yOC42NDU1IDMzNDcuMjQtMjguNjQ1OCAyLjk2MThlLTA2Wk04NS45Mzc4IDMzMTguNTkgMC4wMDAzNjA4OTIgMzQ5MC40Ny04NS45MzcyIDMzMTguNTlaXCJcclxuICAgICAgICAgIGZpbGw9XCIjMzIyMzJDXCJcclxuICAgICAgICAgIGZpbGxSdWxlPVwibm9uemVyb1wiXHJcbiAgICAgICAgICBmaWxsT3BhY2l0eT17MX1cclxuICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxIDAgMCAtMSA4NzEuNSA1MDQ5Ljk3KVwiXHJcbiAgICAgICAgLz5cclxuICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgZD1cIk0xMjg2IDE2MjMuODRDMTI4NiAxNDQ0LjQ0IDE0MzEuNDQgMTI5OSAxNjEwLjg0IDEyOTlMMjkxMC4xNiAxMjk5QzMwODkuNTYgMTI5OSAzMjM1IDE0NDQuNDQgMzIzNSAxNjIzLjg0TDMyMzUgMjkyMy4xNkMzMjM1IDMxMDIuNTYgMzA4OS41NiAzMjQ4IDI5MTAuMTYgMzI0OEwxNjEwLjg0IDMyNDhDMTQzMS40NCAzMjQ4IDEyODYgMzEwMi41NiAxMjg2IDI5MjMuMTZaXCJcclxuICAgICAgICAgIGZpbGw9XCIjQjg1QkQxXCJcclxuICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICBmaWxsT3BhY2l0eT17MX1cclxuICAgICAgICAvPlxyXG4gICAgICAgIDx0ZXh0XHJcbiAgICAgICAgICBmaWxsPVwidmFyKC0tb3VyYmVpZ2UpXCJcclxuICAgICAgICAgIGZpbGxPcGFjaXR5PXsxfVxyXG4gICAgICAgICAgZm9udEZhbWlseT1cIkFyaWFsLEFyaWFsX01TRm9udFNlcnZpY2Usc2Fucy1zZXJpZlwiXHJcbiAgICAgICAgICBmb250U3R5bGU9XCJub3JtYWxcIlxyXG4gICAgICAgICAgZm9udFZhcmlhbnQ9XCJub3JtYWxcIlxyXG4gICAgICAgICAgZm9udFdlaWdodD17NDAwfVxyXG4gICAgICAgICAgZm9udFN0cmV0Y2g9XCJub3JtYWxcIlxyXG4gICAgICAgICAgZm9udFNpemU9ezE0N31cclxuICAgICAgICAgIHRleHRBbmNob3I9XCJzdGFydFwiXHJcbiAgICAgICAgICBkaXJlY3Rpb249XCJsdHJcIlxyXG4gICAgICAgICAgd3JpdGluZ01vZGU9XCJsci10YlwiXHJcbiAgICAgICAgICB1bmljb2RlQmlkaT1cIm5vcm1hbFwiXHJcbiAgICAgICAgICB0ZXh0RGVjb3JhdGlvbj1cIm5vbmVcIlxyXG4gICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEgMCAwIDEgMTQ0Mi4zNCAyMDg5KVwiXHJcbiAgICAgICAgPlxyXG4gICAgICAgICAge1wiSGlnaCBQb3dlciwgTG93IEludGVyZXN0XCJ9XHJcbiAgICAgICAgPC90ZXh0PlxyXG4gICAgICAgIDx0ZXh0XHJcbiAgICAgICAgICBmaWxsPVwidmFyKC0tb3VyYmVpZ2UpXCJcclxuICAgICAgICAgIGZpbGxPcGFjaXR5PXsxfVxyXG4gICAgICAgICAgZm9udEZhbWlseT1cIkFyaWFsLEFyaWFsX01TRm9udFNlcnZpY2Usc2Fucy1zZXJpZlwiXHJcbiAgICAgICAgICBmb250U3R5bGU9XCJub3JtYWxcIlxyXG4gICAgICAgICAgZm9udFZhcmlhbnQ9XCJub3JtYWxcIlxyXG4gICAgICAgICAgZm9udFdlaWdodD17NzAwfVxyXG4gICAgICAgICAgZm9udFN0cmV0Y2g9XCJub3JtYWxcIlxyXG4gICAgICAgICAgZm9udFNpemU9ezIzOH1cclxuICAgICAgICAgIHRleHRBbmNob3I9XCJzdGFydFwiXHJcbiAgICAgICAgICBkaXJlY3Rpb249XCJsdHJcIlxyXG4gICAgICAgICAgd3JpdGluZ01vZGU9XCJsci10YlwiXHJcbiAgICAgICAgICB1bmljb2RlQmlkaT1cIm5vcm1hbFwiXHJcbiAgICAgICAgICB0ZXh0RGVjb3JhdGlvbj1cIm5vbmVcIlxyXG4gICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEgMCAwIDEgMTQzOS40OCAyNTQ4KVwiXHJcbiAgICAgICAgPlxyXG4gICAgICAgICAge1wiS2VlcCBcIn1cclxuICAgICAgICA8L3RleHQ+XHJcbiAgICAgICAgPHRleHRcclxuICAgICAgICAgIGZpbGw9XCJ2YXIoLS1vdXJiZWlnZSlcIlxyXG4gICAgICAgICAgZmlsbE9wYWNpdHk9ezF9XHJcbiAgICAgICAgICBmb250RmFtaWx5PVwiQXJpYWwsQXJpYWxfTVNGb250U2VydmljZSxzYW5zLXNlcmlmXCJcclxuICAgICAgICAgIGZvbnRTdHlsZT1cIm5vcm1hbFwiXHJcbiAgICAgICAgICBmb250VmFyaWFudD1cIm5vcm1hbFwiXHJcbiAgICAgICAgICBmb250V2VpZ2h0PXs3MDB9XHJcbiAgICAgICAgICBmb250U3RyZXRjaD1cIm5vcm1hbFwiXHJcbiAgICAgICAgICBmb250U2l6ZT17MjM4fVxyXG4gICAgICAgICAgdGV4dEFuY2hvcj1cInN0YXJ0XCJcclxuICAgICAgICAgIGRpcmVjdGlvbj1cImx0clwiXHJcbiAgICAgICAgICB3cml0aW5nTW9kZT1cImxyLXRiXCJcclxuICAgICAgICAgIHVuaWNvZGVCaWRpPVwibm9ybWFsXCJcclxuICAgICAgICAgIHRleHREZWNvcmF0aW9uPVwibm9uZVwiXHJcbiAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSAwIDAgMSAyMDg4LjAyIDI1NDgpXCJcclxuICAgICAgICA+XHJcbiAgICAgICAgICB7XCJTYXRpc2ZpZWRcIn1cclxuICAgICAgICA8L3RleHQ+XHJcbiAgICAgICAgPHBhdGhcclxuICAgICAgICAgIGQ9XCJNMzM4NiAxNjIzLjg0QzMzODYgMTQ0NC40NCAzNTMxLjQ0IDEyOTkgMzcxMC44NCAxMjk5TDUwMTAuMTYgMTI5OUM1MTg5LjU2IDEyOTkgNTMzNSAxNDQ0LjQ0IDUzMzUgMTYyMy44NEw1MzM1IDI5MjMuMTZDNTMzNSAzMTAyLjU2IDUxODkuNTYgMzI0OCA1MDEwLjE2IDMyNDhMMzcxMC44NCAzMjQ4QzM1MzEuNDQgMzI0OCAzMzg2IDMxMDIuNTYgMzM4NiAyOTIzLjE2WlwiXHJcbiAgICAgICAgICBmaWxsPVwiIzg1MEU3OFwiXHJcbiAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgZmlsbE9wYWNpdHk9ezF9XHJcbiAgICAgICAgLz5cclxuICAgICAgICA8dGV4dFxyXG4gICAgICAgICAgZmlsbD1cInZhcigtLW91cmJlaWdlKVwiXHJcbiAgICAgICAgICBmaWxsT3BhY2l0eT17MX1cclxuICAgICAgICAgIGZvbnRGYW1pbHk9XCJBcmlhbCxBcmlhbF9NU0ZvbnRTZXJ2aWNlLHNhbnMtc2VyaWZcIlxyXG4gICAgICAgICAgZm9udFN0eWxlPVwibm9ybWFsXCJcclxuICAgICAgICAgIGZvbnRWYXJpYW50PVwibm9ybWFsXCJcclxuICAgICAgICAgIGZvbnRXZWlnaHQ9ezQwMH1cclxuICAgICAgICAgIGZvbnRTdHJldGNoPVwibm9ybWFsXCJcclxuICAgICAgICAgIGZvbnRTaXplPXsxNDd9XHJcbiAgICAgICAgICB0ZXh0QW5jaG9yPVwic3RhcnRcIlxyXG4gICAgICAgICAgZGlyZWN0aW9uPVwibHRyXCJcclxuICAgICAgICAgIHdyaXRpbmdNb2RlPVwibHItdGJcIlxyXG4gICAgICAgICAgdW5pY29kZUJpZGk9XCJub3JtYWxcIlxyXG4gICAgICAgICAgdGV4dERlY29yYXRpb249XCJub25lXCJcclxuICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxIDAgMCAxIDM1MjUuODMgMjA4OSlcIlxyXG4gICAgICAgID5cclxuICAgICAgICAgIHtcIkhpZ2ggUG93ZXIsIEhpZ2ggSW50ZXJlc3RcIn1cclxuICAgICAgICA8L3RleHQ+XHJcbiAgICAgICAgPHRleHRcclxuICAgICAgICAgIGZpbGw9XCJ2YXIoLS1vdXJiZWlnZSlcIlxyXG4gICAgICAgICAgZmlsbE9wYWNpdHk9ezF9XHJcbiAgICAgICAgICBmb250RmFtaWx5PVwiQXJpYWwsQXJpYWxfTVNGb250U2VydmljZSxzYW5zLXNlcmlmXCJcclxuICAgICAgICAgIGZvbnRTdHlsZT1cIm5vcm1hbFwiXHJcbiAgICAgICAgICBmb250VmFyaWFudD1cIm5vcm1hbFwiXHJcbiAgICAgICAgICBmb250V2VpZ2h0PXs3MDB9XHJcbiAgICAgICAgICBmb250U3RyZXRjaD1cIm5vcm1hbFwiXHJcbiAgICAgICAgICBmb250U2l6ZT17MjM4fVxyXG4gICAgICAgICAgdGV4dEFuY2hvcj1cInN0YXJ0XCJcclxuICAgICAgICAgIGRpcmVjdGlvbj1cImx0clwiXHJcbiAgICAgICAgICB3cml0aW5nTW9kZT1cImxyLXRiXCJcclxuICAgICAgICAgIHVuaWNvZGVCaWRpPVwibm9ybWFsXCJcclxuICAgICAgICAgIHRleHREZWNvcmF0aW9uPVwibm9uZVwiXHJcbiAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSAwIDAgMSAzNzExLjc1IDI1NDgpXCJcclxuICAgICAgICA+XHJcbiAgICAgICAgICB7XCJLZWVwIENsb3NlXCJ9XHJcbiAgICAgICAgPC90ZXh0PlxyXG4gICAgICAgIDxwYXRoXHJcbiAgICAgICAgICBkPVwiTTEyODYgMzc0My44NEMxMjg2IDM1NjQuNDQgMTQzMS40NCAzNDE5IDE2MTAuODQgMzQxOUwyOTEwLjE2IDM0MTlDMzA4OS41NiAzNDE5IDMyMzUgMzU2NC40NCAzMjM1IDM3NDMuODRMMzIzNSA1MDQzLjE2QzMyMzUgNTIyMi41NiAzMDg5LjU2IDUzNjggMjkxMC4xNiA1MzY4TDE2MTAuODQgNTM2OEMxNDMxLjQ0IDUzNjggMTI4NiA1MjIyLjU2IDEyODYgNTA0My4xNlpcIlxyXG4gICAgICAgICAgZmlsbD1cInZhcigtLWRhcmtlcmJlaWdlKVwiXHJcbiAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgZmlsbE9wYWNpdHk9ezF9XHJcbiAgICAgICAgLz5cclxuICAgICAgICA8dGV4dFxyXG4gICAgICAgICAgZmlsbD1cIiMzMjIzMkNcIlxyXG4gICAgICAgICAgZmlsbE9wYWNpdHk9ezF9XHJcbiAgICAgICAgICBmb250RmFtaWx5PVwiQXJpYWwsQXJpYWxfTVNGb250U2VydmljZSxzYW5zLXNlcmlmXCJcclxuICAgICAgICAgIGZvbnRTdHlsZT1cIm5vcm1hbFwiXHJcbiAgICAgICAgICBmb250VmFyaWFudD1cIm5vcm1hbFwiXHJcbiAgICAgICAgICBmb250V2VpZ2h0PXs0MDB9XHJcbiAgICAgICAgICBmb250U3RyZXRjaD1cIm5vcm1hbFwiXHJcbiAgICAgICAgICBmb250U2l6ZT17MTQ3fVxyXG4gICAgICAgICAgdGV4dEFuY2hvcj1cInN0YXJ0XCJcclxuICAgICAgICAgIGRpcmVjdGlvbj1cImx0clwiXHJcbiAgICAgICAgICB3cml0aW5nTW9kZT1cImxyLXRiXCJcclxuICAgICAgICAgIHVuaWNvZGVCaWRpPVwibm9ybWFsXCJcclxuICAgICAgICAgIHRleHREZWNvcmF0aW9uPVwibm9uZVwiXHJcbiAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSAwIDAgMSAxNDU4LjY3IDQyMDgpXCJcclxuICAgICAgICA+XHJcbiAgICAgICAgICB7XCJMb3cgUG93ZXIsIExvdyBJbnRlcmVzdFwifVxyXG4gICAgICAgIDwvdGV4dD5cclxuICAgICAgICA8dGV4dFxyXG4gICAgICAgICAgZmlsbD1cIiMzMjIzMkNcIlxyXG4gICAgICAgICAgZmlsbE9wYWNpdHk9ezF9XHJcbiAgICAgICAgICBmb250RmFtaWx5PVwiQXJpYWwsQXJpYWxfTVNGb250U2VydmljZSxzYW5zLXNlcmlmXCJcclxuICAgICAgICAgIGZvbnRTdHlsZT1cIm5vcm1hbFwiXHJcbiAgICAgICAgICBmb250VmFyaWFudD1cIm5vcm1hbFwiXHJcbiAgICAgICAgICBmb250V2VpZ2h0PXs3MDB9XHJcbiAgICAgICAgICBmb250U3RyZXRjaD1cIm5vcm1hbFwiXHJcbiAgICAgICAgICBmb250U2l6ZT17MjM4fVxyXG4gICAgICAgICAgdGV4dEFuY2hvcj1cInN0YXJ0XCJcclxuICAgICAgICAgIGRpcmVjdGlvbj1cImx0clwiXHJcbiAgICAgICAgICB3cml0aW5nTW9kZT1cImxyLXRiXCJcclxuICAgICAgICAgIHVuaWNvZGVCaWRpPVwibm9ybWFsXCJcclxuICAgICAgICAgIHRleHREZWNvcmF0aW9uPVwibm9uZVwiXHJcbiAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSAwIDAgMSAxNDkyLjIgNDY2NylcIlxyXG4gICAgICAgID5cclxuICAgICAgICAgIHtcIktlZXAgTWluaW1hbFwifVxyXG4gICAgICAgIDwvdGV4dD5cclxuICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgZD1cIk0zMzg2IDM3NDMuODRDMzM4NiAzNTY0LjQ0IDM1MzEuNDQgMzQxOSAzNzEwLjg0IDM0MTlMNTAxMC4xNiAzNDE5QzUxODkuNTYgMzQxOSA1MzM1IDM1NjQuNDQgNTMzNSAzNzQzLjg0TDUzMzUgNTA0My4xNkM1MzM1IDUyMjIuNTYgNTE4OS41NiA1MzY4IDUwMTAuMTYgNTM2OEwzNzEwLjg0IDUzNjhDMzUzMS40NCA1MzY4IDMzODYgNTIyMi41NiAzMzg2IDUwNDMuMTZaXCJcclxuICAgICAgICAgIGZpbGw9XCIjQTBBN0YzXCJcclxuICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICBmaWxsT3BhY2l0eT17MX1cclxuICAgICAgICAvPlxyXG4gICAgICAgIDx0ZXh0XHJcbiAgICAgICAgICBmaWxsPVwidmFyKC0tb3VyYmVpZ2UpXCJcclxuICAgICAgICAgIGZpbGxPcGFjaXR5PXsxfVxyXG4gICAgICAgICAgZm9udEZhbWlseT1cIkFyaWFsLEFyaWFsX01TRm9udFNlcnZpY2Usc2Fucy1zZXJpZlwiXHJcbiAgICAgICAgICBmb250U3R5bGU9XCJub3JtYWxcIlxyXG4gICAgICAgICAgZm9udFZhcmlhbnQ9XCJub3JtYWxcIlxyXG4gICAgICAgICAgZm9udFdlaWdodD17NDAwfVxyXG4gICAgICAgICAgZm9udFN0cmV0Y2g9XCJub3JtYWxcIlxyXG4gICAgICAgICAgZm9udFNpemU9ezE0N31cclxuICAgICAgICAgIHRleHRBbmNob3I9XCJzdGFydFwiXHJcbiAgICAgICAgICBkaXJlY3Rpb249XCJsdHJcIlxyXG4gICAgICAgICAgd3JpdGluZ01vZGU9XCJsci10YlwiXHJcbiAgICAgICAgICB1bmljb2RlQmlkaT1cIm5vcm1hbFwiXHJcbiAgICAgICAgICB0ZXh0RGVjb3JhdGlvbj1cIm5vbmVcIlxyXG4gICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEgMCAwIDEgMzU0Mi4xNiA0MjA4KVwiXHJcbiAgICAgICAgPlxyXG4gICAgICAgICAge1wiSGlnaCBQb3dlciwgTG93IEludGVyZXN0XCJ9XHJcbiAgICAgICAgPC90ZXh0PlxyXG4gICAgICAgIDx0ZXh0XHJcbiAgICAgICAgICBmaWxsPVwidmFyKC0tb3VyYmVpZ2UpXCJcclxuICAgICAgICAgIGZpbGxPcGFjaXR5PXsxfVxyXG4gICAgICAgICAgZm9udEZhbWlseT1cIkFyaWFsLEFyaWFsX01TRm9udFNlcnZpY2Usc2Fucy1zZXJpZlwiXHJcbiAgICAgICAgICBmb250U3R5bGU9XCJub3JtYWxcIlxyXG4gICAgICAgICAgZm9udFZhcmlhbnQ9XCJub3JtYWxcIlxyXG4gICAgICAgICAgZm9udFdlaWdodD17NzAwfVxyXG4gICAgICAgICAgZm9udFN0cmV0Y2g9XCJub3JtYWxcIlxyXG4gICAgICAgICAgZm9udFNpemU9ezIzOH1cclxuICAgICAgICAgIHRleHRBbmNob3I9XCJzdGFydFwiXHJcbiAgICAgICAgICBkaXJlY3Rpb249XCJsdHJcIlxyXG4gICAgICAgICAgd3JpdGluZ01vZGU9XCJsci10YlwiXHJcbiAgICAgICAgICB1bmljb2RlQmlkaT1cIm5vcm1hbFwiXHJcbiAgICAgICAgICB0ZXh0RGVjb3JhdGlvbj1cIm5vbmVcIlxyXG4gICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEgMCAwIDEgMzUyNi4xMiA0NjY3KVwiXHJcbiAgICAgICAgPlxyXG4gICAgICAgICAge1wiS2VlcCBcIn1cclxuICAgICAgICA8L3RleHQ+XHJcbiAgICAgICAgPHRleHRcclxuICAgICAgICAgIGZpbGw9XCJ2YXIoLS1vdXJiZWlnZSlcIlxyXG4gICAgICAgICAgZmlsbE9wYWNpdHk9ezF9XHJcbiAgICAgICAgICBmb250RmFtaWx5PVwiQXJpYWwsQXJpYWxfTVNGb250U2VydmljZSxzYW5zLXNlcmlmXCJcclxuICAgICAgICAgIGZvbnRTdHlsZT1cIm5vcm1hbFwiXHJcbiAgICAgICAgICBmb250VmFyaWFudD1cIm5vcm1hbFwiXHJcbiAgICAgICAgICBmb250V2VpZ2h0PXs3MDB9XHJcbiAgICAgICAgICBmb250U3RyZXRjaD1cIm5vcm1hbFwiXHJcbiAgICAgICAgICBmb250U2l6ZT17MjM4fVxyXG4gICAgICAgICAgdGV4dEFuY2hvcj1cInN0YXJ0XCJcclxuICAgICAgICAgIGRpcmVjdGlvbj1cImx0clwiXHJcbiAgICAgICAgICB3cml0aW5nTW9kZT1cImxyLXRiXCJcclxuICAgICAgICAgIHVuaWNvZGVCaWRpPVwibm9ybWFsXCJcclxuICAgICAgICAgIHRleHREZWNvcmF0aW9uPVwibm9uZVwiXHJcbiAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSAwIDAgMSA0MTc0LjY2IDQ2NjcpXCJcclxuICAgICAgICA+XHJcbiAgICAgICAgICB7XCJJbmZvcm1lZFwifVxyXG4gICAgICAgIDwvdGV4dD5cclxuICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgZD1cIk0yOC42NDU4LTIuOTYxOGUtMDYgMjguNjQ2MiAzMzQ3LjI0LTI4LjY0NTUgMzM0Ny4yNC0yOC42NDU4IDIuOTYxOGUtMDZaTTg1LjkzNzggMzMxOC41OSAwLjAwMDM2MDg5MiAzNDkwLjQ3LTg1LjkzNzIgMzMxOC41OVpcIlxyXG4gICAgICAgICAgZmlsbD1cIiMzMjIzMkNcIlxyXG4gICAgICAgICAgZmlsbFJ1bGU9XCJub256ZXJvXCJcclxuICAgICAgICAgIGZpbGxPcGFjaXR5PXsxfVxyXG4gICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDYuMTIzMjNlLTE3IDEgMSAtNi4xMjMyM2UtMTcgMTY0MS41IDU4MDQuNSlcIlxyXG4gICAgICAgIC8+XHJcbiAgICAgICAgPHRleHRcclxuICAgICAgICAgIGZpbGw9XCIjMzIyMzJDXCJcclxuICAgICAgICAgIGZpbGxPcGFjaXR5PXsxfVxyXG4gICAgICAgICAgZm9udEZhbWlseT1cIkFyaWFsLEFyaWFsX01TRm9udFNlcnZpY2Usc2Fucy1zZXJpZlwiXHJcbiAgICAgICAgICBmb250U3R5bGU9XCJub3JtYWxcIlxyXG4gICAgICAgICAgZm9udFZhcmlhbnQ9XCJub3JtYWxcIlxyXG4gICAgICAgICAgZm9udFdlaWdodD17NzAwfVxyXG4gICAgICAgICAgZm9udFN0cmV0Y2g9XCJub3JtYWxcIlxyXG4gICAgICAgICAgZm9udFNpemU9ezE2NX1cclxuICAgICAgICAgIHRleHRBbmNob3I9XCJzdGFydFwiXHJcbiAgICAgICAgICBkaXJlY3Rpb249XCJsdHJcIlxyXG4gICAgICAgICAgd3JpdGluZ01vZGU9XCJsci10YlwiXHJcbiAgICAgICAgICB1bmljb2RlQmlkaT1cIm5vcm1hbFwiXHJcbiAgICAgICAgICB0ZXh0RGVjb3JhdGlvbj1cIm5vbmVcIlxyXG4gICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KC0xLjgzNjk3ZS0xNiAtMSAxIC0xLjgzNjk3ZS0xNiA2NjUuMTUzIDQwOTIpXCJcclxuICAgICAgICA+XHJcbiAgICAgICAgICB7XCJQT1dFUiBcIn1cclxuICAgICAgICA8L3RleHQ+XHJcbiAgICAgICAgPHRleHRcclxuICAgICAgICAgIGZpbGw9XCIjMzIyMzJDXCJcclxuICAgICAgICAgIGZpbGxPcGFjaXR5PXsxfVxyXG4gICAgICAgICAgZm9udEZhbWlseT1cIkFyaWFsLEFyaWFsX01TRm9udFNlcnZpY2Usc2Fucy1zZXJpZlwiXHJcbiAgICAgICAgICBmb250U3R5bGU9XCJub3JtYWxcIlxyXG4gICAgICAgICAgZm9udFZhcmlhbnQ9XCJub3JtYWxcIlxyXG4gICAgICAgICAgZm9udFdlaWdodD17NzAwfVxyXG4gICAgICAgICAgZm9udFN0cmV0Y2g9XCJub3JtYWxcIlxyXG4gICAgICAgICAgZm9udFNpemU9ezE2NX1cclxuICAgICAgICAgIHRleHRBbmNob3I9XCJzdGFydFwiXHJcbiAgICAgICAgICBkaXJlY3Rpb249XCJsdHJcIlxyXG4gICAgICAgICAgd3JpdGluZ01vZGU9XCJsci10YlwiXHJcbiAgICAgICAgICB1bmljb2RlQmlkaT1cIm5vcm1hbFwiXHJcbiAgICAgICAgICB0ZXh0RGVjb3JhdGlvbj1cIm5vbmVcIlxyXG4gICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KC0xLjgzNjk3ZS0xNiAtMSAxIC0xLjgzNjk3ZS0xNiA2NjUuMTUzIDM0MjMpXCJcclxuICAgICAgICA+XHJcbiAgICAgICAgICB7XCJPRiBJTVBBQ1RcIn1cclxuICAgICAgICA8L3RleHQ+XHJcbiAgICAgICAgPHRleHRcclxuICAgICAgICAgIGZpbGw9XCIjMzIyMzJDXCJcclxuICAgICAgICAgIGZpbGxPcGFjaXR5PXsxfVxyXG4gICAgICAgICAgZm9udEZhbWlseT1cIkFyaWFsLEFyaWFsX01TRm9udFNlcnZpY2Usc2Fucy1zZXJpZlwiXHJcbiAgICAgICAgICBmb250U3R5bGU9XCJub3JtYWxcIlxyXG4gICAgICAgICAgZm9udFZhcmlhbnQ9XCJub3JtYWxcIlxyXG4gICAgICAgICAgZm9udFdlaWdodD17NzAwfVxyXG4gICAgICAgICAgZm9udFN0cmV0Y2g9XCJub3JtYWxcIlxyXG4gICAgICAgICAgZm9udFNpemU9ezE2NX1cclxuICAgICAgICAgIHRleHRBbmNob3I9XCJzdGFydFwiXHJcbiAgICAgICAgICBkaXJlY3Rpb249XCJsdHJcIlxyXG4gICAgICAgICAgd3JpdGluZ01vZGU9XCJsci10YlwiXHJcbiAgICAgICAgICB1bmljb2RlQmlkaT1cIm5vcm1hbFwiXHJcbiAgICAgICAgICB0ZXh0RGVjb3JhdGlvbj1cIm5vbmVcIlxyXG4gICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEgMCAwIDEgMjM2OC4zOCA2MTEzKVwiXHJcbiAgICAgICAgPlxyXG4gICAgICAgICAge1wiSU5URVJFU1QgXCJ9XHJcbiAgICAgICAgPC90ZXh0PlxyXG4gICAgICAgIDx0ZXh0XHJcbiAgICAgICAgICBmaWxsPVwiIzMyMjMyQ1wiXHJcbiAgICAgICAgICBmaWxsT3BhY2l0eT17MX1cclxuICAgICAgICAgIGZvbnRGYW1pbHk9XCJBcmlhbCxBcmlhbF9NU0ZvbnRTZXJ2aWNlLHNhbnMtc2VyaWZcIlxyXG4gICAgICAgICAgZm9udFN0eWxlPVwibm9ybWFsXCJcclxuICAgICAgICAgIGZvbnRWYXJpYW50PVwibm9ybWFsXCJcclxuICAgICAgICAgIGZvbnRXZWlnaHQ9ezcwMH1cclxuICAgICAgICAgIGZvbnRTdHJldGNoPVwibm9ybWFsXCJcclxuICAgICAgICAgIGZvbnRTaXplPXsxNjV9XHJcbiAgICAgICAgICB0ZXh0QW5jaG9yPVwic3RhcnRcIlxyXG4gICAgICAgICAgZGlyZWN0aW9uPVwibHRyXCJcclxuICAgICAgICAgIHdyaXRpbmdNb2RlPVwibHItdGJcIlxyXG4gICAgICAgICAgdW5pY29kZUJpZGk9XCJub3JtYWxcIlxyXG4gICAgICAgICAgdGV4dERlY29yYXRpb249XCJub25lXCJcclxuICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxIDAgMCAxIDMyMzAuMDQgNjExMylcIlxyXG4gICAgICAgID5cclxuICAgICAgICAgIHtcIkZPUiBQUk9KRUNUXCJ9XHJcbiAgICAgICAgPC90ZXh0PlxyXG4gICAgICAgIDx0ZXh0XHJcbiAgICAgICAgICBmaWxsPVwiIzMyMjMyQ1wiXHJcbiAgICAgICAgICBmaWxsT3BhY2l0eT17MX1cclxuICAgICAgICAgIGZvbnRGYW1pbHk9XCJBcmlhbCxBcmlhbF9NU0ZvbnRTZXJ2aWNlLHNhbnMtc2VyaWZcIlxyXG4gICAgICAgICAgZm9udFN0eWxlPVwiaXRhbGljXCJcclxuICAgICAgICAgIGZvbnRWYXJpYW50PVwibm9ybWFsXCJcclxuICAgICAgICAgIGZvbnRXZWlnaHQ9ezcwMH1cclxuICAgICAgICAgIGZvbnRTdHJldGNoPVwibm9ybWFsXCJcclxuICAgICAgICAgIGZvbnRTaXplPXsxODN9XHJcbiAgICAgICAgICB0ZXh0QW5jaG9yPVwic3RhcnRcIlxyXG4gICAgICAgICAgZGlyZWN0aW9uPVwibHRyXCJcclxuICAgICAgICAgIHdyaXRpbmdNb2RlPVwibHItdGJcIlxyXG4gICAgICAgICAgdW5pY29kZUJpZGk9XCJub3JtYWxcIlxyXG4gICAgICAgICAgdGV4dERlY29yYXRpb249XCJub25lXCJcclxuICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxIDAgMCAxIDY1NC41ODcgNTg3MSlcIlxyXG4gICAgICAgID5cclxuICAgICAgICAgIHtcIkxPV1wifVxyXG4gICAgICAgIDwvdGV4dD5cclxuICAgICAgICA8dGV4dFxyXG4gICAgICAgICAgZmlsbD1cIiMzMjIzMkNcIlxyXG4gICAgICAgICAgZmlsbE9wYWNpdHk9ezF9XHJcbiAgICAgICAgICBmb250RmFtaWx5PVwiQXJpYWwsQXJpYWxfTVNGb250U2VydmljZSxzYW5zLXNlcmlmXCJcclxuICAgICAgICAgIGZvbnRTdHlsZT1cIml0YWxpY1wiXHJcbiAgICAgICAgICBmb250VmFyaWFudD1cIm5vcm1hbFwiXHJcbiAgICAgICAgICBmb250V2VpZ2h0PXs3MDB9XHJcbiAgICAgICAgICBmb250U3RyZXRjaD1cIm5vcm1hbFwiXHJcbiAgICAgICAgICBmb250U2l6ZT17MTgzfVxyXG4gICAgICAgICAgdGV4dEFuY2hvcj1cInN0YXJ0XCJcclxuICAgICAgICAgIGRpcmVjdGlvbj1cImx0clwiXHJcbiAgICAgICAgICB3cml0aW5nTW9kZT1cImxyLXRiXCJcclxuICAgICAgICAgIHVuaWNvZGVCaWRpPVwibm9ybWFsXCJcclxuICAgICAgICAgIHRleHREZWNvcmF0aW9uPVwibm9uZVwiXHJcbiAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSAwIDAgMSA1Njg0Ljk1IDU4NTYpXCJcclxuICAgICAgICA+XHJcbiAgICAgICAgICB7XCJISUdIXCJ9XHJcbiAgICAgICAgPC90ZXh0PlxyXG4gICAgICAgIDx0ZXh0XHJcbiAgICAgICAgICBmaWxsPVwiIzMyMjMyQ1wiXHJcbiAgICAgICAgICBmaWxsT3BhY2l0eT17MX1cclxuICAgICAgICAgIGZvbnRGYW1pbHk9XCJBcmlhbCxBcmlhbF9NU0ZvbnRTZXJ2aWNlLHNhbnMtc2VyaWZcIlxyXG4gICAgICAgICAgZm9udFN0eWxlPVwiaXRhbGljXCJcclxuICAgICAgICAgIGZvbnRWYXJpYW50PVwibm9ybWFsXCJcclxuICAgICAgICAgIGZvbnRXZWlnaHQ9ezcwMH1cclxuICAgICAgICAgIGZvbnRTdHJldGNoPVwibm9ybWFsXCJcclxuICAgICAgICAgIGZvbnRTaXplPXsxODN9XHJcbiAgICAgICAgICB0ZXh0QW5jaG9yPVwic3RhcnRcIlxyXG4gICAgICAgICAgZGlyZWN0aW9uPVwibHRyXCJcclxuICAgICAgICAgIHdyaXRpbmdNb2RlPVwibHItdGJcIlxyXG4gICAgICAgICAgdW5pY29kZUJpZGk9XCJub3JtYWxcIlxyXG4gICAgICAgICAgdGV4dERlY29yYXRpb249XCJub25lXCJcclxuICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxIDAgMCAxIDYzOC4yNzcgMTA2NylcIlxyXG4gICAgICAgID5cclxuICAgICAgICAgIHtcIkhJR0hcIn1cclxuICAgICAgICA8L3RleHQ+XHJcbiAgICAgIDwvZz5cclxuICAgIDwvZz5cclxuICA8L3N2Zz5cclxuKTtcclxuXHJcblxyXG4iLCAiZXhwb3J0IGZ1bmN0aW9uIFN0YWtlaG9sZGVyTWFuYWdlbWVudCgpe1xyXG5cclxuICAgIHJldHVybihcclxuICA8c3ZnXHJcbiAgICB2aWV3Qm94PVwiMCAwIDQ3MDAgMjUwMFwiXHJcbiAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcclxuICAgIHhtbG5zWGxpbms9XCJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rXCJcclxuICAgIHhtbFNwYWNlPVwicHJlc2VydmVcIlxyXG4gICAgb3ZlcmZsb3c9XCJoaWRkZW5cIlxyXG5cclxuICA+XHJcbiAgICA8ZyB0cmFuc2Zvcm09XCJ0cmFuc2xhdGUoLTEwNDAgLTIwMjEpXCI+XHJcbiAgICAgIDxnPlxyXG4gICAgICAgIDxwYXRoXHJcbiAgICAgICAgICBkPVwiTTAgMC4wNDI3MjkgMCA3MTcuMDc4IDQzMC45NTcgMTE0OCA0MzAuOTU3IDAuMDQyNzI5WlwiXHJcbiAgICAgICAgICBmaWxsPVwiIzdFODRDMVwiXHJcbiAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgZmlsbE9wYWNpdHk9ezF9XHJcbiAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoLTEgMCAwIDEgNDE1MyAzMTA4KVwiXHJcbiAgICAgICAgLz5cclxuICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgZD1cIk00MzAuOTY1IDAgMCA0MzEgMTE0Ny45NiA0MzEgMTE0Ny45NiAwWlwiXHJcbiAgICAgICAgICBmaWxsPVwiIzhGNDdBMlwiXHJcbiAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgZmlsbE9wYWNpdHk9ezF9XHJcbiAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoLTEgMCAwIDEgNDE1NCAyMTg5KVwiXHJcbiAgICAgICAgLz5cclxuICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgZD1cIk0wLjA0MjczMjUgMCAwLjA0MjczMjUgMTE0Ny45NiA0MzEgMTE0Ny45NiA0MzEgNDMwLjk2NSAwLjA0MjczMjUgMFpcIlxyXG4gICAgICAgICAgZmlsbD1cIiM1RTBBNTRcIlxyXG4gICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgIGZpbGxPcGFjaXR5PXsxfVxyXG4gICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KC0xIDAgMCAxIDI1MTggMjE4OSlcIlxyXG4gICAgICAgIC8+XHJcbiAgICAgICAgPHBhdGhcclxuICAgICAgICAgIGQ9XCJNMC4wNDI3MjkgMC4wNDI3MzI1IDAuMDQyNzI5IDQzMSA3MTcuMDc4IDQzMSAxMTQ4IDAuMDQyNzMyNVpcIlxyXG4gICAgICAgICAgZmlsbD1cIiMwODA2MDdcIlxyXG4gICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgIGZpbGxPcGFjaXR5PXsxfVxyXG4gICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KC0xIDAgMCAxIDMyMzUgMzgyNSlcIlxyXG4gICAgICAgIC8+XHJcbiAgICAgICAgPHBhdGhcclxuICAgICAgICAgIGQ9XCJNNTk1LjQ4OSAwIDE2NC41MTEgNDMwLjg1OCAxNjQuNTExIDkxOC44NzMgMCA5MTguODczIDM4MCAxMzgwLjk2IDc2MCA5MTguODczIDU5NS40ODkgOTE4Ljg3MyA1OTUuNDg5IDBaXCJcclxuICAgICAgICAgIHN0cm9rZT1cIiNCODVCRDFcIlxyXG4gICAgICAgICAgc3Ryb2tlV2lkdGg9ezMuNDM3NX1cclxuICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJidXR0XCJcclxuICAgICAgICAgIHN0cm9rZUxpbmVqb2luPVwicm91bmRcIlxyXG4gICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD17MTB9XHJcbiAgICAgICAgICBzdHJva2VPcGFjaXR5PXsxfVxyXG4gICAgICAgICAgZmlsbD1cIiNCODVCRDFcIlxyXG4gICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgIGZpbGxPcGFjaXR5PXsxfVxyXG4gICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KC0xIDAgMCAxIDQzMTguNSAyMTg5LjUpXCJcclxuICAgICAgICAvPlxyXG4gICAgICAgIDxwYXRoXHJcbiAgICAgICAgICBkPVwiTTQ2Mi4xMjcgMCAwLjA0MjcxODQgMzgwIDQ2Mi4xMjcgNzYwIDQ2Mi4xMjcgNTk1LjQ4OSAxMzgxIDU5NS40ODkgOTUwLjE4NSAxNjQuNTExIDQ2Mi4xMjcgMTY0LjUxMSA0NjIuMTI3IDBaXCJcclxuICAgICAgICAgIHN0cm9rZT1cIiM4NTBFNzhcIlxyXG4gICAgICAgICAgc3Ryb2tlV2lkdGg9ezMuNDM3NX1cclxuICAgICAgICAgIHN0cm9rZUxpbmVjYXA9XCJidXR0XCJcclxuICAgICAgICAgIHN0cm9rZUxpbmVqb2luPVwicm91bmRcIlxyXG4gICAgICAgICAgc3Ryb2tlTWl0ZXJsaW1pdD17MTB9XHJcbiAgICAgICAgICBzdHJva2VPcGFjaXR5PXsxfVxyXG4gICAgICAgICAgZmlsbD1cIiM4NTBFNzhcIlxyXG4gICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgIGZpbGxPcGFjaXR5PXsxfVxyXG4gICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KC0xIDAgMCAxIDM0NjguNSAyMDI1LjUpXCJcclxuICAgICAgICAvPlxyXG4gICAgICAgIDxwYXRoXHJcbiAgICAgICAgICBkPVwiTTM4MCAwLjA0MjcxODQgMC4wNDI3MzAyIDQ2Mi4xMjcgMTY0LjU1NCA0NjIuMTI3IDE2NC41NTQgMTM4MSA1OTUuNDg5IDk1MC4xODUgNTk1LjQ4OSA0NjIuMTI3IDc2MCA0NjIuMTI3IDM4MCAwLjA0MjcxODRaXCJcclxuICAgICAgICAgIGZpbGw9XCIjMzIyMzJDXCJcclxuICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICBmaWxsT3BhY2l0eT17MX1cclxuICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgtMSAwIDAgMSAyNjgyIDI4NzUpXCJcclxuICAgICAgICAvPlxyXG4gICAgICAgIDxwYXRoXHJcbiAgICAgICAgICBkPVwiTTkxOC44NzIgMC4wNDI3MzAyIDkxOC44NzIgMTY0LjU1NCAwIDE2NC41NTQgNDMwLjgxNSA1OTUuNDg5IDkxOC44NzIgNTk1LjQ4OSA5MTguODcyIDc2MCAxMzgwLjk2IDM4MCA5MTguODcyIDAuMDQyNzMwMlpcIlxyXG4gICAgICAgICAgZmlsbD1cIiNBMEE3RjNcIlxyXG4gICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgIGZpbGxPcGFjaXR5PXsxfVxyXG4gICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KC0xIDAgMCAxIDQxNTMgMzY2MSlcIlxyXG4gICAgICAgIC8+XHJcbiAgICAgICAgPHRleHRcclxuICAgICAgICAgIGZpbGw9XCIjQTBBN0YzXCJcclxuICAgICAgICAgIGZpbGxPcGFjaXR5PXsxfVxyXG4gICAgICAgICAgZm9udEZhbWlseT1cIkZpcmEgU2FucyxGaXJhIFNhbnNfTVNGb250U2VydmljZSxzYW5zLXNlcmlmXCJcclxuICAgICAgICAgIGZvbnRTdHlsZT1cIm5vcm1hbFwiXHJcbiAgICAgICAgICBmb250VmFyaWFudD1cIm5vcm1hbFwiXHJcbiAgICAgICAgICBmb250V2VpZ2h0PXs3MDB9XHJcbiAgICAgICAgICBmb250U3RyZXRjaD1cIm5vcm1hbFwiXHJcbiAgICAgICAgICBmb250U2l6ZT17MTQ3fVxyXG4gICAgICAgICAgdGV4dEFuY2hvcj1cInN0YXJ0XCJcclxuICAgICAgICAgIGRpcmVjdGlvbj1cImx0clwiXHJcbiAgICAgICAgICB3cml0aW5nTW9kZT1cImxyLXRiXCJcclxuICAgICAgICAgIHVuaWNvZGVCaWRpPVwibm9ybWFsXCJcclxuICAgICAgICAgIHRleHREZWNvcmF0aW9uPVwibm9uZVwiXHJcbiAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSAwIDAgMSA0MTkwLjE1IDQyMjQpXCJcclxuICAgICAgICA+XHJcbiAgICAgICAgICB7XCJJTVBMRU1FTlRBVElPTlwifVxyXG4gICAgICAgIDwvdGV4dD5cclxuICAgICAgICA8dGV4dFxyXG4gICAgICAgICAgZmlsbD1cIiNCODVCRDFcIlxyXG4gICAgICAgICAgZmlsbE9wYWNpdHk9ezF9XHJcbiAgICAgICAgICBmb250RmFtaWx5PVwiRmlyYSBTYW5zLEZpcmEgU2Fuc19NU0ZvbnRTZXJ2aWNlLHNhbnMtc2VyaWZcIlxyXG4gICAgICAgICAgZm9udFN0eWxlPVwibm9ybWFsXCJcclxuICAgICAgICAgIGZvbnRWYXJpYW50PVwibm9ybWFsXCJcclxuICAgICAgICAgIGZvbnRXZWlnaHQ9ezcwMH1cclxuICAgICAgICAgIGZvbnRTdHJldGNoPVwibm9ybWFsXCJcclxuICAgICAgICAgIGZvbnRTaXplPXsxNDd9XHJcbiAgICAgICAgICB0ZXh0QW5jaG9yPVwic3RhcnRcIlxyXG4gICAgICAgICAgZGlyZWN0aW9uPVwibHRyXCJcclxuICAgICAgICAgIHdyaXRpbmdNb2RlPVwibHItdGJcIlxyXG4gICAgICAgICAgdW5pY29kZUJpZGk9XCJub3JtYWxcIlxyXG4gICAgICAgICAgdGV4dERlY29yYXRpb249XCJub25lXCJcclxuICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxIDAgMCAxIDQzNzguMjUgMjMyNylcIlxyXG4gICAgICAgID5cclxuICAgICAgICAgIHtcIlJFR1VMQVRJT04gJiBcIn1cclxuICAgICAgICA8L3RleHQ+XHJcbiAgICAgICAgPHRleHRcclxuICAgICAgICAgIGZpbGw9XCIjQjg1QkQxXCJcclxuICAgICAgICAgIGZpbGxPcGFjaXR5PXsxfVxyXG4gICAgICAgICAgZm9udEZhbWlseT1cIkZpcmEgU2FucyxGaXJhIFNhbnNfTVNGb250U2VydmljZSxzYW5zLXNlcmlmXCJcclxuICAgICAgICAgIGZvbnRTdHlsZT1cIm5vcm1hbFwiXHJcbiAgICAgICAgICBmb250VmFyaWFudD1cIm5vcm1hbFwiXHJcbiAgICAgICAgICBmb250V2VpZ2h0PXs3MDB9XHJcbiAgICAgICAgICBmb250U3RyZXRjaD1cIm5vcm1hbFwiXHJcbiAgICAgICAgICBmb250U2l6ZT17MTQ3fVxyXG4gICAgICAgICAgdGV4dEFuY2hvcj1cInN0YXJ0XCJcclxuICAgICAgICAgIGRpcmVjdGlvbj1cImx0clwiXHJcbiAgICAgICAgICB3cml0aW5nTW9kZT1cImxyLXRiXCJcclxuICAgICAgICAgIHVuaWNvZGVCaWRpPVwibm9ybWFsXCJcclxuICAgICAgICAgIHRleHREZWNvcmF0aW9uPVwibm9uZVwiXHJcbiAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSAwIDAgMSA0ODgwLjEzIDI1MDMpXCJcclxuICAgICAgICA+XHJcbiAgICAgICAgICB7XCJTQUZFVFlcIn1cclxuICAgICAgICA8L3RleHQ+XHJcbiAgICAgICAgPHRleHRcclxuICAgICAgICAgIGZpbGw9XCIjNUUwQTU0XCJcclxuICAgICAgICAgIGZpbGxPcGFjaXR5PXsxfVxyXG4gICAgICAgICAgZm9udEZhbWlseT1cIkZpcmEgU2FucyxGaXJhIFNhbnNfTVNGb250U2VydmljZSxzYW5zLXNlcmlmXCJcclxuICAgICAgICAgIGZvbnRTdHlsZT1cIm5vcm1hbFwiXHJcbiAgICAgICAgICBmb250VmFyaWFudD1cIm5vcm1hbFwiXHJcbiAgICAgICAgICBmb250V2VpZ2h0PXs3MDB9XHJcbiAgICAgICAgICBmb250U3RyZXRjaD1cIm5vcm1hbFwiXHJcbiAgICAgICAgICBmb250U2l6ZT17MTQ3fVxyXG4gICAgICAgICAgdGV4dEFuY2hvcj1cInN0YXJ0XCJcclxuICAgICAgICAgIGRpcmVjdGlvbj1cImx0clwiXHJcbiAgICAgICAgICB3cml0aW5nTW9kZT1cImxyLXRiXCJcclxuICAgICAgICAgIHVuaWNvZGVCaWRpPVwibm9ybWFsXCJcclxuICAgICAgICAgIHRleHREZWNvcmF0aW9uPVwibm9uZVwiXHJcbiAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSAwIDAgMSAxMTMwLjgyIDIzNDIpXCJcclxuICAgICAgICA+XHJcbiAgICAgICAgICB7XCJQRVJDRVBUSU9OXCJ9XHJcbiAgICAgICAgPC90ZXh0PlxyXG4gICAgICAgIDx0ZXh0XHJcbiAgICAgICAgICBmaWxsPVwiIzMyMjMyQ1wiXHJcbiAgICAgICAgICBmaWxsT3BhY2l0eT17MX1cclxuICAgICAgICAgIGZvbnRGYW1pbHk9XCJGaXJhIFNhbnMsRmlyYSBTYW5zX01TRm9udFNlcnZpY2Usc2Fucy1zZXJpZlwiXHJcbiAgICAgICAgICBmb250U3R5bGU9XCJub3JtYWxcIlxyXG4gICAgICAgICAgZm9udFZhcmlhbnQ9XCJub3JtYWxcIlxyXG4gICAgICAgICAgZm9udFdlaWdodD17NzAwfVxyXG4gICAgICAgICAgZm9udFN0cmV0Y2g9XCJub3JtYWxcIlxyXG4gICAgICAgICAgZm9udFNpemU9ezE0N31cclxuICAgICAgICAgIHRleHRBbmNob3I9XCJzdGFydFwiXHJcbiAgICAgICAgICBkaXJlY3Rpb249XCJsdHJcIlxyXG4gICAgICAgICAgd3JpdGluZ01vZGU9XCJsci10YlwiXHJcbiAgICAgICAgICB1bmljb2RlQmlkaT1cIm5vcm1hbFwiXHJcbiAgICAgICAgICB0ZXh0RGVjb3JhdGlvbj1cIm5vbmVcIlxyXG4gICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEgMCAwIDEgMTEzMC44MiA0MjAyKVwiXHJcbiAgICAgICAgPlxyXG4gICAgICAgICAge1wiSU1QQUNUXCJ9XHJcbiAgICAgICAgPC90ZXh0PlxyXG4gICAgICA8L2c+XHJcbiAgICA8L2c+XHJcbiAgPC9zdmc+XHJcbik7XHJcblxyXG59IiwgIlxyXG5leHBvcnQgZnVuY3Rpb24gU1dPVG9uZSgpe1xyXG5cclxuICAgIHJldHVybihcclxuICAgICAgICAgIDxzdmdcclxuICAgICAgICAgICB2aWV3Qm94PVwiMCAwIDU1MDAgMjUwMFwiXHJcbiAgICAgICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxyXG4gICAgICAgICAgICB4bWxuc1hsaW5rPVwiaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGlua1wiXHJcbiAgICAgICAgICAgIHhtbFNwYWNlPVwicHJlc2VydmVcIlxyXG4gICAgICAgICAgICBvdmVyZmxvdz1cImhpZGRlblwiXHJcbiAgICAgICAgICA+XHJcbiAgICAgICAgICAgIDxnIHRyYW5zZm9ybT1cInRyYW5zbGF0ZSgtNDM1IC0zNTc1KVwiPlxyXG4gICAgICAgICAgICAgIDxnPlxyXG4gICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgZD1cIk0zMjIyIDUzMDUuMyAzMzUxLjkxIDUzMDUuMyAzMzUxLjkxIDU2MzIuOTIgMzIzNi4yMiA1NjMyLjkyIDMyMjYuNDQgNTYwMS40M0MzMjIzLjUzIDU1ODcuMTkgMzIyMiA1NTcyLjQ2IDMyMjIgNTU1Ny4zNlpNMzU1NC45NiA1MjIzLjM1IDM3MDguNTIgNTIyMy4zNSAzNzA4LjUyIDU2MzIuOTIgMzU1NC45NiA1NjMyLjkyWk0zOTEwLjE2IDUwNDMuNjIgNDA2My44NCA1MDQzLjYyIDQwNjMuODQgNTYzMi45MiAzOTEwLjE2IDU2MzIuOTJaTTQzODMuNTEgMzcwNC4zMkM0NDM0Ljg4IDM3MDQuMzIgNDQ3OC44MiAzNzE0LjU1IDQ1MTUuODQgMzczMy4xOEw0NTIyLjgzIDM3MzcuOSA0NTI5LjU2IDM3NTkuNTdDNDUzMi40NyAzNzczLjgxIDQ1MzQgMzc4OC41NCA0NTM0IDM4MDMuNjRMNDUzNCA0NDE1LjQyIDQ1MjEuOTQgNDQyMi45M0M0NDg0Ljg0IDQ0NDIuNzEgNDQ0MC4xIDQ0NTMuODUgNDM4Ni43MiA0NDUzLjg1IDQxOTAuODggNDQ1My44NSA0MDk2LjE3IDQyOTAuMTQgNDA5Ni4xNyA0MDczLjQ2IDQwOTYuMTcgMzg1OC40IDQxODIuODUgMzcwNC4zMiA0MzgzLjUxIDM3MDQuMzJaTTM0NDAuNjcgMzU4NSA0MTAyLjMxIDM1ODUgNDA3MCAzNjA1LjI1QzM5MjcuMzQgMzcwNS44NyAzODQ4Ljk2IDM4NzcuNjYgMzg0OC45NiA0MDc4LjI4IDM4NDguOTYgNDM5Ni4wNyA0MDMwLjM1IDQ2NDguMDUgNDM3OC42OSA0NjQ4LjA1IDQ0MjMuNjQgNDY0OC4wNSA0NDY1Ljg1IDQ2NDMuOTEgNDUwNS4zMSA0NjM2LjA3TDQ1MzQgNDYyOC43OSA0NTM0IDU1NTcuMzZDNDUzNCA1Njc4LjExIDQ0MzYuMSA1Nzc2IDQzMTUuMzMgNTc3NkwzNDQwLjY3IDU3NzZDMzM2NS4xOSA1Nzc2IDMyOTguNjQgNTczNy43NiAzMjU5LjM1IDU2NzkuNjFMMzI1MC42MiA1NjYzLjUzIDQyMTMuMjYgNTY2My41M0M0MjI0LjUxIDU2NjMuNTMgNDIzMS42MSA1NjU3LjQ3IDQyMzEuNjEgNTY0Ny42MSA0MjMxLjYxIDU2NDAuMzIgNDIyMy4wOSA1NjMyLjkyIDQyMTMuMjYgNTYzMi45Mkw0MDk5LjAxIDU2MzIuOTIgNDA5OS4wMSA1MDI4Ljk0QzQwOTkuMDEgNTAxOS4xOCA0MDkyLjAyIDUwMTMuMDIgNDA4Mi4xOSA1MDEzLjAyTDM4OTQuNjUgNTAxMy4wMkMzODg0LjgyIDUwMTMuMDIgMzg3Ny43MiA1MDE5LjE4IDM4NzcuNzIgNTAyOC45NEwzODc3LjcyIDU2MzIuOTIgMzc0My44MSA1NjMyLjkyIDM3NDMuODEgNTIwNy40M0MzNzQzLjgxIDUxOTguOTEgMzczNi43IDUxOTIuNzQgMzcyNS40NiA1MTkyLjc0TDM1MzkuNDUgNTE5Mi43NEMzNTI4LjA4IDUxOTIuNzQgMzUyMS4xIDUxOTguOTEgMzUyMS4xIDUyMDcuNDNMMzUyMS4xIDU2MzIuOTIgMzM4Ny4xOSA1NjMyLjkyIDMzODcuMTkgNTI5MC42MkMzMzg3LjE5IDUyODAuNzYgMzM4MC4wOSA1Mjc0LjcgMzM3MC4yNiA1Mjc0LjdMMzIyMiA1Mjc0LjcgMzIyMiA1MjExLjUgMzI3My40NSA1MjAzLjQ3QzMzMzIuNTkgNTE5My4xNCAzNDA0LjIxIDUxNzcuMTUgMzQ4Mi45NyA1MTUyLjM4IDM2MDAuMDcgNTExNS43MiAzNzExLjM3IDUwNjYuODMgMzgxMS41MyA1MDA4LjA5IDM4MjEuMzYgNTAwNC40OSAzODIyLjc4IDQ5OTQuNjMgMzgxNy4xIDQ5ODcuMzQgMzgxMy40MyA0OTgyLjYyIDM4MDguMSA0OTc5Ljk1IDM4MDIuNDIgNDk3OS45NSAzNzk5LjM0IDQ5NzkuOTUgMzc5Ni4xNCA0OTgwLjY3IDM3OTMuMTggNDk4Mi40MSAzNjk0LjQ0IDUwNDEuMTYgMzU4NS45OCA1MDg3LjU4IDM0NzAuMzEgNTEyMy4xMSAzMzkzLjY3IDUxNDYuOTUgMzMyNC4xNiA1MTYyLjM2IDMyNjYuODQgNTE3Mi4zN0wzMjIyIDUxNzkuNCAzMjIyIDUxNDQuOTkgMzI2MS40MiA1MTM4LjcyQzMzMTguMDggNTEyOC43MiAzMzg2LjgyIDUxMTMuNDIgMzQ2MS45IDUwOTAuMDQgMzYyOC4yNSA1MDM3LjQ2IDM4NjcuODkgNDkzMi4yOSA0MDYzLjg0IDQ3MjAuNzMgNDA3NC42MSA0NzExLjM4IDQwNjQuNTUgNDY5Ni4yOSA0MDQ5Ljk5IDQ2OTYuMjkgNDA0OS40IDQ2OTYuMjkgNDA0OC45MiA0Njk2LjI5IDQwNDguMzMgNDY5Ni4yOUwzOTkxLjk3IDQ3MDIuNDVDMzk5MC4yIDQ3MDIuNzYgMzk4OC41NCA0NzAyLjk2IDM5ODcgNDcwMi45NiAzOTc4LjI0IDQ3MDIuOTYgMzk3MS45NiA0Njk3LjQyIDM5NzAuNzggNDY5MC4yMyAzOTY2LjUyIDQ2ODAuMzcgMzk3Ni40NiA0NjcwLjYxIDM5ODcuNzEgNDY2OS4zOEw0MTM4LjU1IDQ2NTIuMzNDNDEzOS4yNiA0NjUyLjIzIDQxMzkuOTcgNDY1Mi4yMyA0MTQwLjY4IDQ2NTIuMjMgNDE1MS4yMiA0NjUyLjIzIDQxNjEuMDUgNDY2MC4yNCA0MTYxLjA1IDQ2NjkuMzhMNDE2MS4wNSA0Nzk4Ljk5QzQxNjEuMDUgNDgwOC44NSA0MTUyLjY0IDQ4MTYuMTQgNDE0MS4zOSA0ODE2LjE0IDQxMzAuMDMgNDgxNi4xNCA0MTIxLjYyIDQ4MDguODUgNDEyMS42MiA0Nzk4Ljk5TDQxMjEuNjIgNDc1OS44NkM0MTIxLjYyIDQ3NTMuOCA0MTE3LjM2IDQ3NDcuNjQgNDExMS43OSA0NzQ1LjI4IDQxMTAuMDIgNDc0NC45NyA0MTA4LjI0IDQ3NDQuNzYgNDEwNi4zNSA0NzQ0Ljc2IDQxMDAuNDMgNDc0NC43NiA0MDk0LjE1IDQ3NDYuNDEgNDA5Mi4wMiA0NzUwLjEgNDAyNy4xNCA0ODIxLjA3IDM5NTEuMDEgNDg4My40MSAzODY5LjMxIDQ5MzguNDYgMzg2Mi4yMSA0OTQzLjI4IDM4NjAuNzkgNDk1My4xNCAzODY2LjQ3IDQ5NTkuMiAzODcwLjAyIDQ5NjMuMSAzODc1LjgyIDQ5NjUuNDcgMzg4MS4zOSA0OTY1LjQ3IDM4ODQuNyA0OTY1LjQ3IDM4ODcuNzggNDk2NC42NSAzODkwLjM5IDQ5NjIuOSAzOTYwLjk1IDQ5MTUuMTQgNDAyOC41NiA0ODYwLjIgNDA4Ny43NiA0ODAyLjY5IDQwOTAuNiA0ODI4LjM2IDQxMTMuMDkgNDg0Ny45OCA0MTQyLjY5IDQ4NDcuOTggNDE3Mi40MSA0ODQ3Ljk4IDQxOTcuNzUgNDgyNy4xMyA0MTk3Ljc1IDQ4MDAuMjJMNDE5Ny43NSA0NjcwLjYxQzQxOTQuOTEgNDY1Ny4xNiA0MTg3LjggNDY0NC45NCA0MTc1LjE0IDQ2MzYuNDEgNDE2NC43MiA0NjI4LjMgNDE1Mi4xNyA0NjIzLjU4IDQxMzkuNSA0NjIzLjU4IDQxMzYuNzcgNDYyMy41OCA0MTM0LjE3IDQ2MjMuNzggNDEzMS40NSA0NjI0LjE5TDM5ODAuNjEgNDY0MC4xMUMzOTUxLjAxIDQ2NDMuNyAzOTI5LjkzIDQ2NjguMTUgMzkzNC4wNyA0NjkzLjgyIDM5MzYuOCA0NzE3Ljk2IDM5NjEuNzggNDczNS42MiAzOTg5LjM3IDQ3MzUuNjIgMzk5MS4xNCA0NzM1LjYyIDM5OTIuOTIgNDczNS42MiAzOTk0LjY5IDQ3MzUuNDJMNDAwNy4zNiA0NzMyLjk1QzM4MjIuNzggNDkxOC44NCAzNjA0LjIyIDUwMTQuMjUgMzQ0OS4yMyA1MDYxLjkgMzM3Ni4yOCA1MDg0LjM5IDMzMDkuNjYgNTA5OS4zIDMyNTQuODEgNTEwOS4xNUwzMjIyIDUxMTQuNSAzMjIyIDM4MDMuNjRDMzIyMiAzNjgyLjg5IDMzMTkuOSAzNTg1IDM0NDAuNjcgMzU4NVpcIlxyXG4gICAgICAgICAgICAgICAgICBmaWxsPVwiI0M4Q0JGMVwiXHJcbiAgICAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5PXsxfVxyXG4gICAgICAgICAgICAgICAgLz5cclxuICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgIGQ9XCJNNTQxMC41NSA1MzY0LjgzQzU0MDUuNjYgNTM2NC44MyA1NDAwLjI5IDUzNjYuNCA1Mzk1LjI3IDUzNjkuNDEgNTM4OC4yMyA1Mzc1LjY1IDUzODguMjMgNTM4NS41MiA1Mzk1LjI3IDUzOTQuMjVMNTQyMC45MyA1NDE1LjI1IDUzOTUuMjcgNTQzNy41QzUzODguMjMgNTQ0My43MyA1Mzg4LjIzIDU0NTMuNjEgNTM5NS4yNyA1NDYyLjI0IDUzOTkuNTcgNTQ2NC43MyA1NDA1LjMgNTQ2NS45OCA1NDA5LjQ4IDU0NjUuOTggNTQxNS4yIDU0NjUuOTggNTQyMC45MyA1NDY0LjczIDU0MjMuNjggNTQ2Mi4yNEw1NDQ5LjM0IDU0MzkuOTkgNTQ3My40NCA1NDYyLjI0QzU0NzcuNzQgNTQ2NC43MyA1NDgzLjM1IDU0NjUuOTggNTQ4Ny42NCA1NDY1Ljk4IDU0OTMuMzcgNTQ2NS45OCA1NDk4Ljk4IDU0NjQuNzMgNTUwMS44NSA1NDYyLjI0IDU1MDkuMDEgNTQ1Ni4xIDU1MDkuMDEgNTQ0NC45OCA1NTAxLjg1IDU0MzcuNUw1NDc3Ljc0IDU0MTUuMjUgNTUwMS44NSA1Mzk0LjI1QzU1MDkuMDEgNTM4OC4wMiA1NTA5LjAxIDUzNzYuODkgNTUwMS44NSA1MzY5LjQxIDU0OTguMjcgNTM2Ni40IDU0OTMuNzMgNTM2NC44MyA1NDg4LjcyIDUzNjQuODMgNTQ4My43MSA1MzY0LjgzIDU0NzguNDYgNTM2Ni40IDU0NzMuNDQgNTM2OS40MUw1NDQ5LjM0IDUzOTAuNTEgNTQyMy42OCA1MzY5LjQxQzU0MjAuMjIgNTM2Ni40IDU0MTUuNTYgNTM2NC44MyA1NDEwLjU1IDUzNjQuODNaTTQ4ODguMDggNTMyOS44QzQ5MTkuMzQgNTMyOS44IDQ5NDYuMzEgNTM1My40IDQ5NDYuMzEgNTM4MS44OCA0OTQ2LjMxIDU0MDkuMDEgNDkxOS4zNCA1NDMyLjYxIDQ4ODguMDggNTQzMi42MSA0ODU1LjM4IDU0MzIuNjEgNDgyOS44NCA1NDA5LjAxIDQ4MjkuODQgNTM4MS44OCA0ODI5Ljg0IDUzNTMuNCA0ODU1LjM4IDUzMjkuOCA0ODg4LjA4IDUzMjkuOFpNNTA3MS44NiA1MTM3LjA4QzUwNjYuNzMgNTEzNy4wOCA1MDYxLjM2IDUxMzguNjQgNTA1Ny4xOCA1MTQxLjc2IDUwNTAuMDIgNTE0Ny44OSA1MDUwLjAyIDUxNTkuMDEgNTA1Ny4xOCA1MTY2LjVMNTA4MS4yOSA1MTg3LjQ5IDUwNTcuMTggNTIwOS44NEM1MDUwLjAyIDUyMTUuOTggNTA1MC4wMiA1MjI3LjEgNTA1Ny4xOCA1MjM0LjU4IDUwNTkuOTMgNTIzNy4wOCA1MDY1LjY1IDUyMzkuNDcgNTA3MS4zOCA1MjM5LjQ3IDUwNzUuNTYgNTIzOS40NyA1MDgxLjI5IDUyMzcuMDggNTA4NS41OCA1MjM0LjU4TDUxMDkuNjkgNTIxMi4yMyA1MTM1LjIzIDUyMzQuNThDNTEzOC4wOSA1MjM3LjA4IDUxNDMuODIgNTIzOS40NyA1MTQ5LjQzIDUyMzkuNDcgNTE1My43MyA1MjM5LjQ3IDUxNTkuNDYgNTIzNy4wOCA1MTYzLjYzIDUyMzQuNTggNTE3MC43OSA1MjI4LjM1IDUxNzAuNzkgNTIxNy4yMiA1MTYzLjYzIDUyMDkuODRMNTEzOC4wOSA1MTg3LjQ5IDUxNjMuNjMgNTE2Ni41QzUxNzAuNzkgNTE2MC4yNiA1MTcwLjc5IDUxNDkuMTQgNTE2My42MyA1MTQxLjc2IDUxNjAuMTcgNTEzOC42NCA1MTU1LjE2IDUxMzcuMDggNTE1MC4wMyA1MTM3LjA4IDUxNDQuOSA1MTM3LjA4IDUxMzkuNTMgNTEzOC42NCA1MTM1LjIzIDUxNDEuNzZMNTEwOS42OSA1MTYyLjc1IDUwODUuNTggNTE0MS43NkM1MDgyIDUxMzguNjQgNTA3Ni45OSA1MTM3LjA4IDUwNzEuODYgNTEzNy4wOFpNNTM4My45NCA1MTE1Ljc3QzUzODMuOTQgNTExNS43NyA1MzgxLjA3IDUxMTUuNzcgNTM4MS4wNyA1MTE3LjAyTDUzMjkuOTkgNTE0MC41MUM1MzIxLjQgNTE0NC4yNSA1MzE1LjY3IDUxNTQuMTMgNTMyMS40IDUxNjIuNzYgNTMyNS41OCA1MTY5LjIgNTMzMi4xNCA1MTcyLjg0IDUzMzkuNzggNTE3Mi44NCA1MzQyLjUzIDUxNzIuODQgNTM0NS4zOSA1MTcyLjQyIDUzNDguMzcgNTE3MS4zOEw1MzYyLjU3IDUxNjUuMjVDNTMzNy4wMyA1MjM5LjQ3IDUyOTEuNTcgNTI5NS4xOSA1MjI5LjAzIDUzMjkuOCA1MTY2Ljc0IDUzNjQuOTQgNTA5Ny4yOCA1MzcyLjQyIDUwNDYuOTIgNTM3Mi40MiA1MDIyLjY5IDUzNzIuNDIgNTAwMi43NiA1MzcwLjY2IDQ5OTAuMzUgNTM2OS40MSA0OTgzLjE5IDUzMjguNjYgNDk0My40NSA1Mjk3LjY4IDQ4OTUuMTIgNTI5Ny42OCA0ODQxLjE4IDUyOTcuNjggNDc5Ny4xNCA1MzM2LjA0IDQ3OTcuMTQgNTM4My4wMyA0Nzk3LjE0IDU0MjguODcgNDg0MS4xOCA1NDY4LjQ3IDQ4OTUuMTIgNTQ2OC40NyA0OTQwLjU5IDU0NjguNDcgNDk4MC40NSA1NDM5Ljk5IDQ5OTAuMzUgNTQwMi44OCA1MDA0LjU1IDU0MDQuMTMgNTAyNC40OCA1NDA2LjYyIDUwNTAuMDIgNTQwNi42MiA1MTAzLjk2IDU0MDYuNjIgNTE4MC43IDUzOTYuNjQgNTI1MC4zOSA1MzU4LjI5IDUzMTkuOTcgNTMxOS45MyA1MzY5LjczIDUyNjAuNTcgNTM5OC4xNCA1MTgwLjEyTDU0MDEgNTE4NUM1NDA1LjMgNTE5MS4yNCA1NDEyLjM0IDUxOTMuNzMgNTQxOS41IDUxOTMuNzMgNTQyMi4yNCA1MTkzLjczIDU0MjMuNjggNTE5My43MyA1NDI3Ljk3IDUxOTIuNDkgNTQyOS40IDUxODcuNSA1NDMzLjcgNTE3Ny42MiA1NDI3Ljk3IDUxNjcuNzVMNTQwMSA1MTIzLjE1QzU0MDEgNTEyMy4xNSA1NDAxIDUxMjEuOSA1Mzk5LjU3IDUxMjEuOUw1Mzk1LjI3IDUxMTguMjcgNTM5My44NCA1MTE3LjAyQzUzOTMuODQgNTExNy4wMiA1MzkyLjQxIDUxMTcuMDIgNTM5Mi40MSA1MTE1Ljc3Wk00NzMwLjkgNTA5MC4wOUM0NzI1LjY1IDUwOTAuMDkgNDcyMC40IDUwOTEuNjUgNDcxNi4xIDUwOTQuNjcgNDcwOC45NCA1MTAwLjkgNDcwOC45NCA1MTEyLjAzIDQ3MTYuMSA1MTE5LjQxTDQ3NDAuMjEgNTE0MS43NiA0NzE2LjEgNTE2Mi43NUM0NzA4Ljk0IDUxNjguOTkgNDcwOC45NCA1MTgwLjExIDQ3MTYuMSA1MTg3LjQ5IDQ3MTguOTcgNTE5MS4yNCA0NzI0LjU4IDUxOTIuNDggNDczMC4zMSA1MTkyLjQ4IDQ3MzQuNiA1MTkyLjQ4IDQ3NDAuMjEgNTE5MS4yNCA0NzQ0LjUxIDUxODcuNDlMNDc2OC43MyA1MTY2LjUgNDc5NC4yNyA1MTg3LjQ5QzQ3OTcuMTQgNTE5MS4yNCA0ODAyLjc1IDUxOTIuNDggNDgwOC40NyA1MTkyLjQ4IDQ4MTIuNzcgNTE5Mi40OCA0ODE4LjM4IDUxOTEuMjQgNDgyMi42OCA1MTg3LjQ5IDQ4MjkuODQgNTE4MS4zNiA0ODI5Ljg0IDUxNzEuMzggNDgyMi42OCA1MTYyLjc1TDQ3OTcuMTQgNTE0MS43NiA0ODIyLjY4IDUxMTkuNDFDNDgyOS44NCA1MTEzLjI3IDQ4MjkuODQgNTEwMy40IDQ4MjIuNjggNTA5NC42NyA0ODE5LjEgNTA5MS42NSA0ODE0LjIgNTA5MC4wOSA0ODA4Ljk1IDUwOTAuMDkgNDgwMy44MiA1MDkwLjA5IDQ3OTguNTcgNTA5MS42NSA0Nzk0LjI3IDUwOTQuNjdMNDc2OC43MyA1MTE3LjAyIDQ3NDQuNTEgNTA5NC42N0M0NzQwLjkzIDUwOTEuNjUgNDczNi4wMyA1MDkwLjA5IDQ3MzAuOSA1MDkwLjA5Wk01MzU2Ljk2IDQ4OTYuNjQgNTYxNC4xNCA0ODk2LjY0QzU2NTMuODggNDg5Ni42NCA1NjgzLjcyIDQ5MjUuMTMgNTY4My43MiA0OTU3LjM1TDU2ODMuNzIgNTU3Ni4xNiA1Njc5LjQyIDU1NzYuMTZDNTY3OS40MiA1NjEwLjc4IDU2NDguMjcgNTYzNi43NyA1NjExLjI4IDU2MzYuNzdMNDYyOS40MSA1NjM2Ljc3IDQ2MTguNDQgNTYwMS40MyA0NjE2LjM5IDU1ODEuMDUgNTI2NC41OSA1NTgxLjA1QzUyNzQuNSA1NTgxLjA1IDUyODQuNTIgNTU3My42NyA1Mjg0LjUyIDU1NjMuNzkgNTI4NC41MiA1NTU1LjA2IDUyNzQuNSA1NTQ2LjQzIDUyNjQuNTkgNTU0Ni40M0w0NjIwLjg3IDU1NDYuNDMgNDYyMC44NyA0OTg4LjIyIDQ4NDUuMzUgNDk4OC4yMkM0ODQ5LjY1IDUwMTQuMjEgNDg3NS4zMSA1MDMyLjgyIDQ5MDcuODkgNTAzMi44Mkw1MjkzIDUwMzIuODJDNTMyMi44MyA1MDMyLjgyIDUzNDkuOCA1MDEyLjk2IDUzNTUuNTMgNDk4OC4yMkw1NTc4LjU4IDQ5ODguMjIgNTU3OC41OCA1NTQ2LjQzIDUzNjEuMTQgNTU0Ni40M0M1MzUxLjI0IDU1NDYuNDMgNTM0Mi43NiA1NTU1LjA2IDUzNDIuNzYgNTU2My43OSA1MzQyLjc2IDU1NzMuNjcgNTM1MS4yNCA1NTgxLjA1IDUzNjEuMTQgNTU4MS4wNUw1NTk4LjUxIDU1ODEuMDVDNTYwOC40MSA1NTgxLjA1IDU2MTcuMDEgNTU3My42NyA1NjE3LjAxIDU1NjMuNzlMNTYxNy4wMSA0OTcwLjk3QzU2MTcuMDEgNDk2Mi4yNCA1NjA4LjQxIDQ5NTQuODYgNTU5OC41MSA0OTU0Ljg2TDUzNTYuOTYgNDk1NC44NlpNNDYxNCA0ODk2LjY0IDQ4NDQuMDQgNDg5Ni42NCA0ODQ0LjA0IDQ5NTQuODYgNDYxNCA0OTU0Ljg2Wk01MDk2LjkyIDQ4NzUuNjVDNTExNS40MiA0ODc1LjY1IDUxMjkuNjIgNDg4OC4wMiA1MTI5LjYyIDQ5MDIuODggNTEyOS42MiA0OTE4Ljk5IDUxMTUuNDIgNDkzMS4zNiA1MDk2LjkyIDQ5MzEuMzYgNTA3OS44NiA0OTMxLjM2IDUwNjUuNjYgNDkxOC45OSA1MDY1LjY2IDQ5MDIuODggNTA2NS42NiA0ODg4LjAyIDUwNzkuODYgNDg3NS42NSA1MDk2LjkyIDQ4NzUuNjVaTTUwOTYuOTIgNDgzOS43OUM1MDU4LjUgNDgzOS43OSA1MDI0LjQ4IDQ4NjguMTYgNTAyNC40OCA0OTAyLjg4IDUwMjQuNDggNDkzNy41IDUwNTcuMTggNDk2Ny4yMyA1MDk2LjkyIDQ5NjcuMjMgNTEzNi42NiA0OTY3LjIzIDUxNjkuMzYgNDkzOC43NSA1MTY5LjM2IDQ5MDIuODggNTE2Ny45MyA0ODY4LjE2IDUxMzYuNjYgNDgzOS43OSA1MDk2LjkyIDQ4MzkuNzlaTTUwNTguNDkgNDY5NC45OCA1MTI5LjYyIDQ2OTQuOThDNTE3MC43OSA0Njk0Ljk4IDUyMDMuNDkgNDcyMy4zNiA1MjAzLjQ5IDQ3NTkuMzNMNTIwMy40OSA0Nzk3LjY4QzUyMDMuNDkgNDgyNy40MSA1MjMxLjkgNDg1Mi4xNSA1MjY2LjAzIDQ4NTIuMTVMNTI4NC41MiA0ODUyLjE1QzUyOTUuODYgNDg1Mi4xNSA1MzA3LjIgNDg2Mi4wMyA1MzA3LjIgNDg3MS45TDUzMDcuMiA0OTc5LjZDNTMwNy4yIDQ5ODkuNDcgNTI5NS44NiA0OTk5LjQ1IDUyODQuNTIgNDk5OS40NUw0ODk3Ljk4IDQ5OTkuNDVDNDg4Ni42NCA0OTk5LjQ1IDQ4NzUuMzEgNDk4OS40NyA0ODc1LjMxIDQ5NzkuNkw0ODgwLjkxIDQ4NzEuOUM0ODgwLjkxIDQ4NjIuMDMgNDg5MC44MiA0ODUyLjE1IDQ5MDMuNzEgNDg1Mi4xNUw0OTIyLjA5IDQ4NTIuMTVDNDk1NC43OSA0ODUyLjE1IDQ5ODMuMTkgNDgyNy40MSA0OTgzLjE5IDQ3OTcuNjhMNDk4My4xOSA0NzU5LjMzQzQ5ODMuMTkgNDcyMy4zNiA1MDE3LjMyIDQ2OTQuOTggNTA1OC40OSA0Njk0Ljk4Wk00ODMyLjY3IDM1ODUgNTEyMi42MyAzNTg1IDUxMjIuNjMgMzcyMS45NyA1NDU5LjczIDM3MjEuOTcgNTQ1OS43MyA0NjMyIDU2OTguOTIgNDYzMiA1Njk4LjkyIDM3MjEuOTcgNTkwOS44OCAzNzIxLjk3IDU5MjEuNTYgMzc1OS41N0M1OTI0LjQ3IDM3NzMuODEgNTkyNiAzNzg4LjU0IDU5MjYgMzgwMy42NEw1OTI2IDU1NTcuMzZDNTkyNiA1Njc4LjExIDU4MjguMSA1Nzc2IDU3MDcuMzMgNTc3Nkw0ODMyLjY3IDU3NzZDNDc1Ny4xOSA1Nzc2IDQ2OTAuNjQgNTczNy43NiA0NjUxLjM1IDU2NzkuNjFMNDY0OC4yMyA1NjczLjg4IDU2MTEuMjggNTY3My44OEM1NjcwLjk1IDU2NzMuODggNTcyMC43MSA1NjMwLjYzIDU3MjAuNzEgNTU3Ny40MUw1NzIwLjcxIDQ5NTguNkM1NzE5LjI4IDQ5MDUuMzggNTY2OS41MiA0ODYzLjI4IDU2MDguNDEgNDg2My4yOEw1MzUxLjI0IDQ4NjMuMjhDNTM0NS41MSA0ODM3LjI5IDUzMjEuNCA0ODE4LjY4IDUyODguNyA0ODE4LjY4TDUyNzEuNjQgNDgxOC42OEM1MjU4Ljg3IDQ4MTguNjggNTI0OC45NiA0ODA4LjgxIDUyNDguOTYgNDc5Ny42OEw1MjQ4Ljk2IDQ3NTkuMzNDNTI0OC45NiA0NzAzLjYxIDUxOTYuMzMgNDY1OS4wMiA1MTMyLjQ4IDQ2NTkuMDJMNTA2MS4zNiA0NjU5LjAyQzQ5OTcuMzkgNDY1OS4wMiA0OTQ2LjMxIDQ3MDMuNjEgNDk0Ni4zMSA0NzU5LjMzTDQ5NDYuMzEgNDc5Ny42OEM0OTQ2LjMxIDQ4MDguODEgNDkzNi4yOSA0ODE4LjY4IDQ5MjMuNTIgNDgxOC42OEw0OTA1LjE0IDQ4MTguNjhDNDg3NS4zMSA0ODE4LjY4IDQ4NDguMjEgNDgzOC41NCA0ODQ0LjA0IDQ4NjMuMjhMNDYxNCA0ODYzLjI4IDQ2MTQgMzgwMy42NEM0NjE0IDM2ODIuODkgNDcxMS45IDM1ODUgNDgzMi42NyAzNTg1WlwiXHJcbiAgICAgICAgICAgICAgICAgIGZpbGw9XCIjRUVGOUZGXCJcclxuICAgICAgICAgICAgICAgICAgZmlsbFJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk9ezF9XHJcbiAgICAgICAgICAgICAgICAvPlxyXG4gICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgZD1cIk03MzEuMDk0IDU2NjYuMjMgODc5LjgwNSA1Nzc2IDY1Ny42NzEgNTc3NkM2NDIuNTc1IDU3NzYgNjI3LjgzNiA1Nzc0LjQ3IDYxMy42MDEgNTc3MS41Nkw1OTUuMDkgNTc2NS44MVpNNDYxLjg5NCA1NjUyLjk4IDU0MS41MzkgNTY1Mi45OCA1MjYuNDI1IDU3MjYuNjMgNTI2LjcyMSA1NzMxLjQ5IDUwMy4wNDcgNTcxMS45NkM0OTMuMTU1IDU3MDIuMDcgNDg0LjIwNSA1NjkxLjI0IDQ3Ni4zNDUgNTY3OS42MVpNNDM5IDU1MjEuNzkgNTY4Ljk5NyA1NTIxLjc5IDU0OS43MzEgNTYxMS42NSA0NDYuNjE1IDU2MTEuNjUgNDQzLjQ0MyA1NjAxLjQzQzQ0MC41MjkgNTU4Ny4xOSA0MzkgNTU3Mi40NiA0MzkgNTU1Ny4zNlpNMTA0NC4yMSA1MzAzLjcxQzEwMzQuNjQgNTMwMy43MSAxMDI2LjQ0IDUzMTIuNSAxMDI2LjQ0IDUzMjQuMzggMTAyNi40NCA1MzM0LjY2IDEwMzQuNjQgNTM0NC45MyAxMDQ0LjIxIDUzNDQuOTNMMTE2Ny44OSA1MzQ0LjkzQzExNzguODUgNTM0NC45MyAxMTg3LjE2IDUzMzQuNjYgMTE4Ny4xNiA1MzI0LjM4IDExODcuMTYgNTMxMi41IDExNzguODUgNTMwMy43MSAxMTY3Ljg5IDUzMDMuNzFaTTc1OC41NTMgNTE5NC42OEM3NDcuNTkyIDUxOTQuNjggNzM5LjI4NSA1MjAzLjQ2IDczOS4yODUgNTIxNS4yMiA3MzkuMjg1IDUyMjcuMSA3NDcuNTkyIDUyMzUuODkgNzU4LjU1MyA1MjM1Ljg5TDExNjcuODkgNTIzNS44OUMxMTc4Ljg1IDUyMzUuODkgMTE4Ny4xNiA1MjI3LjEgMTE4Ny4xNiA1MjE1LjIyIDExODcuMTYgNTIwMy40NiAxMTc4Ljg1IDUxOTQuNjggMTE2Ny44OSA1MTk0LjY4Wk05NjEuODM0IDQ5NzMuNjJDOTUyLjI1OCA0OTczLjYyIDk0My45NTIgNDk4Mi40MSA5NDMuOTUyIDQ5OTQuMjkgOTQzLjk1MiA1MDA2LjA1IDk1Mi4yNTggNTAxNC44NCA5NjEuODM0IDUwMTQuODRMMTE2Ny44OSA1MDE0Ljg0QzExNzguODUgNTAxNC44NCAxMTg3LjE1IDUwMDYuMDUgMTE4Ny4xNSA0OTk0LjI5IDExODcuMTUgNDk4Mi40MSAxMTc4Ljg1IDQ5NzMuNjIgMTE2Ny44OSA0OTczLjYyWk01NTIuNDk4IDQ4NjMuMUM1NDEuNTM4IDQ4NjMuMSA1MzMuMjMxIDQ4NzEuODkgNTMzLjIzMSA0ODgzLjc3IDUzMy4yMzEgNDg5NS41MyA1NDEuNTM4IDQ5MDQuMzIgNTUyLjQ5OCA0OTA0LjMyTDExNjcuODkgNDkwNC4zMkMxMTc4Ljg0IDQ5MDQuMzIgMTE4Ny4xNSA0ODk1LjUzIDExODcuMTUgNDg4My43NyAxMTg3LjE1IDQ4NzEuODkgMTE3OC44NCA0ODYzLjEgMTE2Ny44OSA0ODYzLjFaTTEzNTMuMjkgNDg2MC4xMyAxMzc1LjMzIDQ4NjAuMTNDMTQwOS43MSA0ODYwLjEzIDE0MzkuODIgNDg4OS41OSAxNDM5LjgyIDQ5MjcuOTZMMTQzOS44MiA1NTQ1LjMxQzE0MzguNTUgNTU4Mi4xOSAxNDA4LjMyIDU2MTMuMTMgMTM3My45NCA1NjEzLjEzTDEwNDYuOTggNTYxMy4xM0MxMDQxLjU2IDU2MTMuMTMgMTAzNC42NCA1NjE3LjU5IDEwMzAuNDggNTYyMC41NiAxMDI3LjgzIDU2MjYuMzcgMTAyNi40NCA1NjMyLjMyIDEwMjcuODMgNTYzNi43N0wxMDU3LjM2IDU3NzYgOTQ2LjY5NSA1Nzc2IDc2NS40NzUgNTY0Mi41OSA5MzAuMjI0IDU1MjEuNzkgMTI1MS42NSA1NTIxLjc5QzEzMDkuMzMgNTUyMS43OSAxMzUzLjI5IDU0NzMuMTUgMTM1My4yOSA1NDEyLjc1Wk00MzkgNDcyNy40NSAxMjUxLjY1IDQ3MjcuNDVDMTI4Ni4wMyA0NzI3LjQ1IDEzMTYuMjYgNDc1Ny4wNCAxMzE2LjI2IDQ3OTUuMjhMMTMxNi4yNiA1NDEyLjc1QzEzMTYuMjYgNTQ0OS42NCAxMjg4LjggNTQ4MC41OCAxMjUxLjY1IDU0ODAuNThMOTI0LjgwMiA1NDgwLjU4QzkyMC42NDkgNTQ4MC41OCA5MTcuODggNTQ4MS45NCA5MTMuNzI2IDU0ODMuNDJMNTY2LjIyOSA1NzM4LjM4QzU2My40NiA1NzM4LjM4IDU2My40NiA1NzM2LjkgNTYzLjQ2IDU3MzYuOUw2MTQuMzM5IDU1MDQuMDlDNjE1LjcyMyA1NDk4LjE1IDYxNC4zMzkgNTQ5MC44NSA2MTAuMTg1IDU0ODcuODggNjA2LjAzMSA1NDgxLjk0IDYwMS45OTQgNTQ4MC41OCA1OTUuMDcxIDU0ODAuNThMNDM5IDU0ODAuNTggNDM5IDUzNDQuOTMgOTY0LjYwNiA1MzQ0LjkzQzk3NC4xODIgNTM0NC45MyA5ODIuNDg5IDUzMzQuNjYgOTgyLjQ4OSA1MzI0LjM4IDk4Mi40ODkgNTMxMi41IDk3NC4xODIgNTMwMy43MSA5NjQuNjA2IDUzMDMuNzFMNDM5IDUzMDMuNzEgNDM5IDUyMzUuODkgNjM0Ljg3NCA1MjM1Ljg5QzY0NC41NjUgNTIzNS44OSA2NTIuNzU2IDUyMjcuMSA2NTIuNzU2IDUyMTUuMjIgNjU1LjUyNSA1MjAzLjQ2IDY0NS45NDkgNTE5NC42OCA2MzQuODc0IDUxOTQuNjhMNDM5IDUxOTQuNjggNDM5IDUxMjUuMzcgMTE2Ny44OSA1MTI1LjM3QzExNzguODUgNTEyNS4zNyAxMTg3LjE2IDUxMTYuNTggMTE4Ny4xNiA1MTA0LjcgMTE4Ny4xNiA1MDkyLjk0IDExNzguODUgNTA4NC4xNSAxMTY3Ljg5IDUwODQuMTVMNDM5IDUwODQuMTUgNDM5IDUwMTQuODQgODgyLjIzIDUwMTQuODRDODkxLjgwNSA1MDE0Ljg0IDg5OS45OTcgNTAwNi4wNSA4OTkuOTk3IDQ5OTQuMjkgODk5Ljk5NyA0OTgyLjQxIDg5MS44MDUgNDk3My42MiA4ODIuMjMgNDk3My42Mkw0MzkgNDk3My42MiA0MzkgNDkwNC4zMiA0NzEuNTA5IDQ5MDQuMzJDNDgxLjA4NSA0OTA0LjMyIDQ5MC42NiA0ODk1LjUzIDQ5MC42NiA0ODgzLjc3IDQ5MC42NiA0ODcxLjg5IDQ4MS4wODUgNDg2My4xIDQ3MS41MDkgNDg2My4xTDQzOSA0ODYzLjFaTTE1NzcuMTYgMzY4Ni42NkMxNjY2LjQ1IDM2ODYuNjYgMTcxNC4zNiAzNzE1LjUgMTc0MC44NyAzNzUzLjk4TDE3NDcuMTIgMzc2NS4xNCAxNzUxIDM4MDMuNjQgMTc1MSAzOTgzLjc1IDE3MDUuMSAzOTY5LjYzQzE2ODYuOTQgMzk2NC40OSAxNjY3Ljg2IDM5NTkuNTEgMTY0Ny43OSAzOTU0LjY5IDE0NjggMzkxNC41NyAxNDIxLjQ1IDM4ODIuNDcgMTQyMS40NSAzODA1LjQzIDE0MjEuNDUgMzcyNi43OSAxNDc5LjI0IDM2ODYuNjYgMTU3Ny4xNiAzNjg2LjY2Wk02NTcuNjcxIDM1ODUgMTMwMS43MiAzNTg1IDEyODIuMzkgMzU5OS4xOUMxMjEzLjU3IDM2NTUuNzcgMTE3Ny40NSAzNzM2LjQyIDExNzcuNDUgMzgzMi43MiAxMTc3LjQ1IDM5ODEuOTggMTI1MS4yOSA0MDkyLjcyIDE1NTMuMDggNDE2My4zNCAxNjQ3Ljc5IDQxODUuMDEgMTcwOC4zOSA0MjA1LjQ4IDE3NDUuMzEgNDIzMS45NkwxNzUxIDQyMzcuMDkgMTc1MSA0NDMzLjI2IDE3MjYuODEgNDQ0Ny44MUMxNjk4LjQxIDQ0NjEuMDcgMTY2MC42MyA0NDY4LjI5IDE2MTIuNDcgNDQ2OC4yOSAxNDg0LjA1IDQ0NjguMjkgMTQwNS40IDQ0MTguNTQgMTM3OS43MSA0MzA3Ljc5TDExMzguOTIgNDMwNy43OUMxMTY0LjYxIDQ1MTAuMDIgMTMxMy45IDQ2NDguMDUgMTU5NC44MiA0NjQ4LjA1IDE2NDkuNiA0NjQ4LjA1IDE2OTkuNDcgNDY0My4xNCAxNzQ0LjM0IDQ2MzMuODRMMTc1MSA0NjMyLjE5IDE3NTEgNTU1Ny4zNkMxNzUxIDU2NzguMTEgMTY1My4xIDU3NzYgMTUzMi4zMyA1Nzc2TDEwOTYuNjIgNTc3NiAxMDcwLjQgNTY1Mi45OCAxMzczLjk0IDU2NTIuOThDMTQzMC4yNCA1NjUyLjk4IDE0NzUuNTggNTYwNS44MyAxNDc1LjU4IDU1NDUuMzFMMTQ3NS41OCA0OTI3Ljk2QzE0NzUuNTggNDg2OC45MiAxNDI4Ljg2IDQ4MTguOTIgMTM3My45NCA0ODE4LjkyTDEzNTEuOTEgNDgxOC45MiAxMzUxLjkxIDQ3OTUuMjhDMTM1MS45MSA0NzM0Ljg4IDEzMDcuOTUgNDY4Ni4yNCAxMjUwLjI2IDQ2ODYuMjRMNDM5IDQ2ODYuMjQgNDM5IDM4MDMuNjRDNDM5IDM2ODIuODkgNTM2LjkwMiAzNTg1IDY1Ny42NzEgMzU4NVpcIlxyXG4gICAgICAgICAgICAgICAgICBmaWxsPVwiI0JGNjNCN1wiXHJcbiAgICAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5PXsxfVxyXG4gICAgICAgICAgICAgICAgLz5cclxuICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgIGQ9XCJNMjYxMi42OCA1NDgzLjMxQzI2MDMuMDIgNTQ4My4zMSAyNTk0LjU4IDU0OTAuNSAyNTk0LjU4IDU1MDEuMTkgMjU5NC41OCA1NTEwLjY4IDI2MDEuOCA1NTE3Ljg4IDI2MTIuNjggNTUxNy44OEwyNzI0LjEyIDU1MTcuODhDMjczMy43OCA1NTE3Ljg4IDI3NDIuMjIgNTUxMC42OCAyNzQyLjIyIDU1MDEuMTkgMjc0Mi4yMiA1NDkwLjUgMjczMy43OCA1NDgzLjMxIDI3MjQuMTIgNTQ4My4zMVpNMjM1MC4wMyA1NDgzLjMxQzIzNDEuNDkgNTQ4My4zMSAyMzMxLjgzIDU0OTAuNSAyMzMxLjgzIDU1MDEuMTkgMjMzMS44MyA1NTEwLjY4IDIzNDAuMjYgNTUxNy44OCAyMzUwLjAzIDU1MTcuODhMMjQ2Mi41OSA1NTE3Ljg4QzI0NzEuMDMgNTUxNy44OCAyNDgwLjY5IDU1MTAuNjggMjQ4MC42OSA1NTAxLjE5IDI0ODAuNjkgNTQ5MC41IDI0NzMuNDcgNTQ4My4zMSAyNDYyLjU5IDU0ODMuMzFaTTIwODkuNzIgNTQ4My4zMUMyMDgxLjE3IDU0ODMuMzEgMjA3MS41MSA1NDkwLjUgMjA3MS41MSA1NTAxLjE5IDIwNzEuNTEgNTUxMC42OCAyMDc5Ljk1IDU1MTcuODggMjA4OS43MiA1NTE3Ljg4TDIyMDIuMjggNTUxNy44OEMyMjEwLjcyIDU1MTcuODggMjIyMC40OCA1NTEwLjY4IDIyMjAuNDggNTUwMS4xOSAyMjIwLjQ4IDU0OTAuNSAyMjExLjk0IDU0ODMuMzEgMjIwMi4yOCA1NDgzLjMxWk0yNjEyLjY4IDUzMzUuODRDMjYwMy4wMiA1MzM1Ljg0IDI1OTQuNTggNTM0Mi45NCAyNTk0LjU4IDUzNTMuNjMgMjU5NC41OCA1MzY0LjQyIDI2MDEuOCA1MzcxLjUxIDI2MTIuNjggNTM3MS41MUwyNzI0LjEyIDUzNzEuNTFDMjczMy43OCA1MzcxLjUxIDI3NDIuMjIgNTM2NC40MiAyNzQyLjIyIDUzNTMuNjMgMjc0Mi4yMiA1MzQyLjk0IDI3MzMuNzggNTMzNS44NCAyNzI0LjEyIDUzMzUuODRaTTIwODkuNzIgNTMzNS44NEMyMDgxLjE3IDUzMzUuODQgMjA3MS41MSA1MzQyLjk0IDIwNzEuNTEgNTM1My42MyAyMDcxLjUxIDUzNjQuNDIgMjA3OS45NSA1MzcxLjUxIDIwODkuNzIgNTM3MS41MUwyMjAyLjI4IDUzNzEuNTFDMjIxMC43MiA1MzcxLjUxIDIyMjAuNDggNTM2NC40MiAyMjIwLjQ4IDUzNTMuNjMgMjIyMC40OCA1MzQyLjk0IDIyMTEuOTQgNTMzNS44NCAyMjAyLjI4IDUzMzUuODRaTTI0NjIuMDggNTI5OC42OEMyNDU3LjcxIDUyOTguNjggMjQ1My40NCA1MzAwLjc4IDI0NTAuNDkgNTMwNC44N0wyMzg4Ljc3IDUzNjUuNjIgMjM2My4yNSA1MzQwLjY0QzIzNTkuMDggNTMzNi40NCAyMzU0LjUgNTMzNC4zNSAyMzUwLjIzIDUzMzQuMzUgMjM0Ni4wNiA1MzM0LjM1IDIzNDIuMSA1MzM2LjQ0IDIzMzkuMDUgNTM0MC42NCAyMzMwLjYxIDUzNDcuNzMgMjMzMC42MSA1MzU4LjQyIDIzMzkuMDUgNTM2NC40MkwyMzc2LjU3IDU0MDEuMjhDMjM3OS4wMSA1NDAzLjY4IDIzODMuODkgNTQwNS45OCAyMzg4Ljc3IDU0MDUuOTggMjM5My41NSA1NDA1Ljk4IDIzOTcuMjEgNTQwMy42OCAyNDAwLjg3IDU0MDEuMjhMMjQ3NC42OSA1MzI4LjY1QzI0ODEuOTEgNTMyMi43NiAyNDgxLjkxIDUzMTAuODcgMjQ3NC42OSA1MzA0Ljg3IDI0NzEuMDMgNTMwMC43OCAyNDY2LjQ2IDUyOTguNjggMjQ2Mi4wOCA1Mjk4LjY4Wk0yMzUwLjAzIDUxODkuNDhDMjM0MS40OSA1MTg5LjQ4IDIzMzEuODMgNTE5Ny44NyAyMzMxLjgzIDUyMDcuMzYgMjMzMS44MyA1MjE4LjA1IDIzNDAuMjYgNTIyNS4yNSAyMzUwLjAzIDUyMjUuMjVMMjQ2Mi41OSA1MjI1LjI1QzI0NzEuMDMgNTIyNS4yNSAyNDgwLjY5IDUyMTguMDUgMjQ4MC42OSA1MjA3LjM2IDI0ODAuNjkgNTE5Ny44NyAyNDczLjQ3IDUxODkuNDggMjQ2Mi41OSA1MTg5LjQ4Wk0yNzIzLjYxIDUxNTIuMDFDMjcxOS4yNCA1MTUyLjAxIDI3MTQuOTcgNTE1My44MSAyNzExLjkyIDUxNTcuNDFMMjY1MC4yIDUyMTguMDUgMjYyNC43OCA1MTkzLjA3QzI2MjEuMjIgNTE4OS40OCAyNjE2LjY0IDUxODcuNzggMjYxMi4yNyA1MTg3Ljc4IDI2MDcuOSA1MTg3Ljc4IDI2MDMuNjMgNTE4OS40OCAyNjAwLjU4IDUxOTMuMDcgMjU5My4zNiA1MjAwLjI3IDI1OTMuMzYgNTIxMC45NiAyNjAwLjU4IDUyMTYuODVMMjYzOC4xIDUyNTMuNzJDMjY0MS43NiA1MjU3LjMyIDI2NDUuNDIgNTI1OC41MSAyNjUwLjIgNTI1OC41MSAyNjU1LjA4IDUyNTguNTEgMjY1OS45NiA1MjU3LjMyIDI2NjIuMyA1MjUzLjcyTDI3MzYuMjIgNTE4MS4xOEMyNzQ0LjY2IDUxNzUuMjkgMjc0NC42NiA1MTY0LjUgMjczNi4yMiA1MTU3LjQxIDI3MzIuNTYgNTE1My44MSAyNzI3Ljk5IDUxNTIuMDEgMjcyMy42MSA1MTUyLjAxWk0yMjAxLjc3IDUxNTIuMDFDMjE5Ny40IDUxNTIuMDEgMjE5My4yMyA1MTUzLjgxIDIxOTAuMTggNTE1Ny40MUwyMTI4LjQ2IDUyMTguMDUgMjEwMy4wNCA1MTkzLjA3QzIwOTguNzYgNTE4OS40OCAyMDk0LjE5IDUxODcuNzggMjA5MC4wMiA1MTg3Ljc4IDIwODUuNzUgNTE4Ny43OCAyMDgxLjc4IDUxODkuNDggMjA3OC44MyA1MTkzLjA3IDIwNzAuMjkgNTIwMC4yNyAyMDcwLjI5IDUyMTAuOTYgMjA3OC44MyA1MjE2Ljg1TDIxMTYuMzYgNTI1My43MkMyMTE4LjcgNTI1Ny4zMiAyMTIzLjU4IDUyNTguNTEgMjEyOC40NiA1MjU4LjUxIDIxMzMuMjQgNTI1OC41MSAyMTM2LjkgNTI1Ny4zMiAyMTQwLjU2IDUyNTMuNzJMMjIxNC4zOCA1MTgxLjE4QzIyMjAuNDggNTE3NS4yOSAyMjIwLjQ4IDUxNjQuNSAyMjE0LjM4IDUxNTcuNDEgMjIxMC43MiA1MTUzLjgxIDIyMDYuMjUgNTE1Mi4wMSAyMjAxLjc3IDUxNTIuMDFaTTI2MTIuNjggNTA0My4yMUMyNjAzLjAyIDUwNDMuMjEgMjU5NC41OCA1MDUwLjMgMjU5NC41OCA1MDYxLjA5IDI1OTQuNTggNTA3MC41OCAyNjAxLjggNTA3OC44OCAyNjEyLjY4IDUwNzguODhMMjcyNC4xMiA1MDc4Ljg4QzI3MzMuNzggNTA3OC44OCAyNzQyLjIyIDUwNzAuNTggMjc0Mi4yMiA1MDYxLjA5IDI3NDIuMjIgNTA1MC4zIDI3MzMuNzggNTA0My4yMSAyNzI0LjEyIDUwNDMuMjFaTTIwODkuNzIgNTA0My4yMUMyMDgxLjE3IDUwNDMuMjEgMjA3MS41MSA1MDUwLjMgMjA3MS41MSA1MDYxLjA5IDIwNzEuNTEgNTA3MC41OCAyMDc5Ljk1IDUwNzguODggMjA4OS43MiA1MDc4Ljg4TDIyMDIuMjggNTA3OC44OEMyMjEwLjcyIDUwNzguODggMjIyMC40OCA1MDcwLjU4IDIyMjAuNDggNTA2MS4wOSAyMjIwLjQ4IDUwNTAuMyAyMjExLjk0IDUwNDMuMjEgMjIwMi4yOCA1MDQzLjIxWk0yNDYyLjA4IDUwMDUuNzVDMjQ1Ny43MSA1MDA1Ljc1IDI0NTMuNDQgNTAwNy41NCAyNDUwLjQ5IDUwMTEuMDRMMjM4OC43NyA1MDcyLjk4IDIzNjMuMjUgNTA0Ni44MUMyMzU5LjA4IDUwNDMuMjEgMjM1NC41IDUwNDEuNDEgMjM1MC4yMyA1MDQxLjQxIDIzNDYuMDYgNTA0MS40MSAyMzQyLjEgNTA0My4yMSAyMzM5LjA1IDUwNDYuODEgMjMzMC42MSA1MDU1LjEgMjMzMC42MSA1MDY0LjU5IDIzMzkuMDUgNTA3MC41OUwyMzc2LjU3IDUxMDguNjVDMjM3OS4wMSA1MTExLjA1IDIzODMuODkgNTExMi4yNSAyMzg4Ljc3IDUxMTIuMjUgMjM5My41NSA1MTEyLjI1IDIzOTcuMjEgNTExMS4wNSAyNDAwLjg3IDUxMDguNjVMMjQ3NC42OSA1MDM0LjkyQzI0ODEuOTEgNTAyNy43MyAyNDgxLjkxIDUwMTcuMDMgMjQ3NC42OSA1MDExLjA0IDI0NzEuMDMgNTAwNy41NCAyNDY2LjQ2IDUwMDUuNzUgMjQ2Mi4wOCA1MDA1Ljc1Wk0xOTAzLjIzIDQ4MjMuMTEgMjY1MS40MiA0ODIzLjExIDI2NTEuNDIgNDgyNC4zMUMyNjUxLjQyIDQ4NDMuMzkgMjY2OC40IDQ4NTkuOTcgMjY4Ny43MiA0ODU5Ljk3TDI3MjYuNDcgNDg1OS45N0MyNzQ1Ljg5IDQ4NTkuOTcgMjc2Mi44NyA0ODQzLjM5IDI3NjIuODcgNDgyNC4zMUwyNzYyLjg3IDQ4MjMuMTEgMjgwMC4zOSA0ODIzLjExQzI4MjAuOTMgNDgyMy4xMSAyODM3LjkxIDQ4MzguNTkgMjgzNy45MSA0ODU5Ljk3TDI4MzcuOTEgNTU5Mi44MUMyODM3LjkxIDU2MTEuNzkgMjgxOS43MSA1NjI5LjY4IDI3OTkuMTcgNTYyOS42OEwxODQzLjIxIDU2MjkuNjggMTgzNC40NCA1NjAxLjQzQzE4MzEuNTMgNTU4Ny4xOSAxODMwIDU1NzIuNDYgMTgzMCA1NTU3LjM2TDE4MzAgNTUyNC4zNiAxODU0LjgzIDU1NDguNzVDMTg1Ny4yNyA1NTUxLjE1IDE4NjIuMDUgNTU1Mi4zNSAxODY2LjkzIDU1NTIuMzUgMTg3MC41OSA1NTUyLjM1IDE4NzUuMzcgNTU1MS4xNSAxODc5LjAzIDU1NDguNzVMMTk1Mi44NSA1NDc1LjAyQzE5NjAuMTcgNTQ2Ny44MyAxOTYwLjE3IDU0NTcuMTMgMTk1Mi44NSA1NDUxLjI0IDE5NDguNjggNTQ0Ny42NCAxOTQ0LjExIDU0NDUuODQgMTkzOS44NCA1NDQ1Ljg0IDE5MzUuNjcgNTQ0NS44NCAxOTMxLjcgNTQ0Ny42NCAxOTI4LjY1IDU0NTEuMjRMMTg2Ni45MyA1NTEzLjA4IDE4NDAuMjkgNTQ4Ni45MSAxODMwIDU0ODIuNTEgMTgzMCA1MzcxLjUxIDE5NDAuNzUgNTM3MS41MUMxOTQ5LjI5IDUzNzEuNTEgMTk1OC45NSA1MzY0LjQyIDE5NTguOTUgNTM1My42MyAxOTU4Ljk1IDUzNDIuOTQgMTk0OS4yOSA1MzM1Ljg0IDE5NDAuNzUgNTMzNS44NEwxODMwIDUzMzUuODQgMTgzMCA1MjI1LjI1IDE5NDAuNzUgNTIyNS4yNUMxOTQ5LjI5IDUyMjUuMjUgMTk1OC45NSA1MjE4LjA1IDE5NTguOTUgNTIwNy4zNiAxOTU4Ljk1IDUxOTcuODcgMTk0OS4yOSA1MTg5LjQ4IDE5NDAuNzUgNTE4OS40OEwxODMwIDUxODkuNDggMTgzMCA1MDc4Ljg4IDE5NDAuNzUgNTA3OC44OEMxOTQ5LjI5IDUwNzguODggMTk1OC45NSA1MDcwLjU4IDE5NTguOTUgNTA2MS4wOSAxOTU4Ljk1IDUwNTAuMyAxOTQ5LjI5IDUwNDMuMjEgMTk0MC43NSA1MDQzLjIxTDE4MzAgNTA0My4yMSAxODMwIDQ5MzEuNDEgMjc4MC45NyA0OTMxLjQxQzI3ODkuNCA0OTMxLjQxIDI3OTkuMTcgNDkyMy4wMiAyNzk5LjE3IDQ5MTMuNTIgMjc5OS4xNyA0OTAyLjgzIDI3ODkuNCA0ODk1Ljc0IDI3ODAuOTcgNDg5NS43NEwxODMwIDQ4OTUuNzQgMTgzMCA0ODU5Ljk3IDE4NjYuOTMgNDg1OS45N0MxODg2LjI1IDQ4NTkuOTcgMTkwMy4yMyA0ODQzLjM5IDE5MDMuMjMgNDgyNC4zMVpNMjcyMi45MSA0NzQ2Ljk4QzI3MjIuOTEgNDc0Ni45OCAyNzI0LjEzIDQ3NDYuOTggMjcyNC4xMyA0NzQ4LjE3TDI3MjQuMTMgNDgyMC43MUMyNzI0LjEzIDQ4MjAuNzEgMjcyNC4xMyA0ODIzLjExIDI3MjIuOTEgNDgyMy4xMUwyNjg1LjM5IDQ4MjMuMTFDMjY4NS4zOSA0ODIzLjExIDI2ODQuMTYgNDgyMy4xMSAyNjg0LjE2IDQ4MjAuNzFMMjY4NC4xNiA0NzQ4LjE3IDI2ODUuMzkgNDc0OC4xN1pNMTg2NC40OSA0NzQ2Ljk4QzE4NjQuNDkgNDc0Ni45OCAxODY1LjcxIDQ3NDYuOTggMTg2NS43MSA0NzQ4LjE3TDE4NjUuNzEgNDgyMC43MUMxODY1LjcxIDQ4MjAuNzEgMTg2NS43MSA0ODIzLjExIDE4NjQuNDkgNDgyMy4xMUwxODMwIDQ4MjMuMTEgMTgzMCA0NzQ4LjA4Wk0zMTExLjA4IDM2OTMuMjIgMzEyNC44MiAzNzE4LjUzQzMxMzUuODggMzc0NC42OSAzMTQyIDM3NzMuNDUgMzE0MiAzODAzLjY0TDMxNDIgMzgxMi44NyAzMTEzLjk2IDM3MDQuMjJaTTI0ODMuODIgMzU4NSAyODI5LjQ0IDM1ODUgMjgyMS42NyAzNjE2LjQ5QzI3NTcuNDkgMzg3MS40OSAyNjcwLjU5IDQxODguNyAyNjM0LjA3IDQzNjcuMDZMMjYzMi40NiA0MzY3LjA2QzI2MjAuNDIgNDI1Mi43IDI1NzguNzUgNDA0Ni42NiAyNDg3LjYyIDM2MDMuNDVaTTIwNDguNjcgMzU4NSAyMjMyLjI0IDM1ODUgMjQ5Ni4wMSA0NjE3LjQ0IDI3NDMuMjIgNDYxNy40NEMyODAyLjYyIDQzOTQuMzQgMjkwMi4xNCA0MDIxLjk5IDI5NDIuMjcgMzgyNC41N0wyOTQzLjg4IDM4MjQuNTdDMjk4Mi40MSA0MDEzLjk2IDMwODAuMzMgNDM3MS44NyAzMTM4LjEyIDQ2MTcuNDRMMzE0MiA0NjE3LjQ0IDMxNDIgNTU1Ny4zNkMzMTQyIDU2NzguMTEgMzA0NC4xIDU3NzYgMjkyMy4zMyA1Nzc2TDIwNDguNjcgNTc3NkMxOTczLjE5IDU3NzYgMTkwNi42NCA1NzM3Ljc2IDE4NjcuMzUgNTY3OS42MUwxODU4Ljk1IDU2NjQuMTUgMjc5Ny45NSA1NjY0LjE1QzI4MzkuMTMgNTY2NC4xNSAyODcyLjk5IDU2MzIuMDcgMjg3Mi45OSA1NTkxLjYxTDI4NzIuOTkgNDg1OC43N0MyODcyLjk5IDQ4MTguNDEgMjgzOS4xMyA0Nzg1LjA0IDI3OTkuMTcgNDc4NS4wNEwyNzYwLjQzIDQ3ODUuMDQgMjc2MC40MyA0NzQ4LjE3QzI3NjAuNDMgNDcyOS4xOSAyNzQ0LjY3IDQ3MTIuNTEgMjcyNC4xMyA0NzEyLjUxTDI2ODYuNSA0NzEyLjUxQzI2NjcuMTggNDcxMi41MSAyNjUwLjIgNDcyOS4xOSAyNjUwLjIgNDc0OC4xN0wyNjUwLjIgNDc4NS4wNCAxOTAwLjc5IDQ3ODUuMDQgMTkwMC43OSA0NzQ4LjE3QzE5MDAuNzkgNDcyOS4xOSAxODgzLjkxIDQ3MTIuNTEgMTg2NC40OSA0NzEyLjUxTDE4MzAgNDcxMi41MSAxODMwIDM4MDMuNjRDMTgzMCAzNjgyLjg5IDE5MjcuOSAzNTg1IDIwNDguNjcgMzU4NVpcIlxyXG4gICAgICAgICAgICAgICAgICBmaWxsPVwiI0M3QTBDRVwiXHJcbiAgICAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5PXsxfVxyXG4gICAgICAgICAgICAgICAgLz5cclxuICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgIGQ9XCJNMTU3Ny4xNSAzNjg2LjYzQzE2NjYuNDQgMzY4Ni42MyAxNzE0LjM1IDM3MTUuNTQgMTc0MC44NiAzNzU0LjEyTDE3NTEgMzc3Mi4yNyAxNzUxIDM3ODMuODlDMTc1MSAzODQ5LjEyIDE2OTguMjUgMzkwMiAxNjMzLjE3IDM5MDJMMTQ4MS4xNSAzOTAyIDE0NjcuMTkgMzg5NC40MUMxNDMzLjA4IDM4NzEuNjggMTQyMS40NCAzODQ0LjMzIDE0MjEuNDQgMzgwNS43MSAxNDIxLjQ0IDM3MjYuODYgMTQ3OS4yMyAzNjg2LjYzIDE1NzcuMTUgMzY4Ni42M1pNNTU2LjgyNyAzNTc5IDEzMTIuNzQgMzU3OSAxMjgyLjM5IDM1OTguOTNDMTIxMy41NiAzNjU1LjY1IDExNzcuNDQgMzczNi41MSAxMTc3LjQ0IDM4MzMuMDYgMTE3Ny40NCAzODUxLjc3IDExNzguNiAzODY5Ljg3IDExODEuMiAzODg3LjM3TDExODQuODEgMzkwMiA1NTYuODI3IDM5MDJDNDkxLjc1MyAzOTAyIDQzOSAzODQ5LjEyIDQzOSAzNzgzLjg5TDQzOSAzNjk3LjExQzQzOSAzNjMxLjg4IDQ5MS43NTMgMzU3OSA1NTYuODI3IDM1NzlaXCJcclxuICAgICAgICAgICAgICAgICAgZmlsbD1cIiNCRjYzQjdcIlxyXG4gICAgICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eT17MX1cclxuICAgICAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICAgICAgICA8dGV4dFxyXG4gICAgICAgICAgICAgICAgICBmaWxsPVwiIzMyMjMyQ1wiXHJcbiAgICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5PXsxfVxyXG4gICAgICAgICAgICAgICAgICBmb250RmFtaWx5PVwiQWN1bWluIFBybyxBY3VtaW4gUHJvX01TRm9udFNlcnZpY2Usc2Fucy1zZXJpZlwiXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRTdHlsZT1cIm5vcm1hbFwiXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRWYXJpYW50PVwibm9ybWFsXCJcclxuICAgICAgICAgICAgICAgICAgZm9udFdlaWdodD17NzAwfVxyXG4gICAgICAgICAgICAgICAgICBmb250U3RyZXRjaD1cIm5vcm1hbFwiXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRTaXplPXsxMjh9XHJcbiAgICAgICAgICAgICAgICAgIHRleHRBbmNob3I9XCJzdGFydFwiXHJcbiAgICAgICAgICAgICAgICAgIGRpcmVjdGlvbj1cImx0clwiXHJcbiAgICAgICAgICAgICAgICAgIHdyaXRpbmdNb2RlPVwibHItdGJcIlxyXG4gICAgICAgICAgICAgICAgICB1bmljb2RlQmlkaT1cIm5vcm1hbFwiXHJcbiAgICAgICAgICAgICAgICAgIHRleHREZWNvcmF0aW9uPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxIDAgMCAxIDcxMS43NDggMzc3NilcIlxyXG4gICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICB7XCJTVFJFTkdUSFNcIn1cclxuICAgICAgICAgICAgICAgIDwvdGV4dD5cclxuICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgIGQ9XCJNMjk0Mi4yNyAzODQyLjUxIDI5NDMuODggMzg0Mi41MUMyOTQ2LjI5IDM4NTQuMzYgMjk0OC45MyAzODY2Ljg3IDI5NTEuNzggMzg3OS45NkwyOTU2LjI0IDM5MDAgMjkyOS45OSAzOTAwIDI5MzQuMDggMzg4MS41M0MyOTM3LjAzIDM4NjcuODkgMjkzOS43NyAzODU0Ljg2IDI5NDIuMjcgMzg0Mi41MVpNMzA3OC4yIDM1ODYuODMgMzA3OS4wOCAzNTg3LjFDMzExNi4wNiAzNjAyLjc1IDMxNDIgMzYzOS4zOCAzMTQyIDM2ODIuMDhMMzE0MiAzNzk2LjkyIDMxMzguMTYgMzgxNS45MyAzMTEzLjk2IDM3MjIuMDdDMzEwNC40MiAzNjg1LjQ2IDMwOTUuMjEgMzY1MC41MiAzMDg2LjU4IDM2MTguMVpNMjQ3OC45NCAzNTc5IDI4MzUuNDQgMzU3OSAyODM1LjA0IDM1ODAuNjFDMjgxMy40MiAzNjY4LjIxIDI3ODguMjMgMzc2NS41OCAyNzYyLjggMzg2My41N0wyNzUzLjM1IDM5MDAgMjU0NC42MyAzOTAwIDI1MzYuNTIgMzg2MC4wM0MyNTIyLjA5IDM3ODkuMTQgMjUwNS44NSAzNzA5LjkyIDI0ODcuNjIgMzYyMS4yMVpNMTkzMy4wMiAzNTc5IDIyMjYuMTggMzU3OSAyMzA4LjEyIDM5MDAgMTkzMy4wMiAzOTAwQzE4NzYuMTIgMzkwMCAxODMwIDM4NTMuODUgMTgzMCAzNzk2LjkyTDE4MzAgMzY4Mi4wOEMxODMwIDM2MjUuMTUgMTg3Ni4xMiAzNTc5IDE5MzMuMDIgMzU3OVpcIlxyXG4gICAgICAgICAgICAgICAgICBmaWxsPVwiI0M3QTBDRVwiXHJcbiAgICAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5PXsxfVxyXG4gICAgICAgICAgICAgICAgLz5cclxuICAgICAgICAgICAgICAgIDx0ZXh0XHJcbiAgICAgICAgICAgICAgICAgIGZpbGw9XCIjMzIyMzJDXCJcclxuICAgICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk9ezF9XHJcbiAgICAgICAgICAgICAgICAgIGZvbnRGYW1pbHk9XCJBY3VtaW4gUHJvLEFjdW1pbiBQcm9fTVNGb250U2VydmljZSxzYW5zLXNlcmlmXCJcclxuICAgICAgICAgICAgICAgICAgZm9udFN0eWxlPVwibm9ybWFsXCJcclxuICAgICAgICAgICAgICAgICAgZm9udFZhcmlhbnQ9XCJub3JtYWxcIlxyXG4gICAgICAgICAgICAgICAgICBmb250V2VpZ2h0PXs3MDB9XHJcbiAgICAgICAgICAgICAgICAgIGZvbnRTdHJldGNoPVwibm9ybWFsXCJcclxuICAgICAgICAgICAgICAgICAgZm9udFNpemU9ezEyOH1cclxuICAgICAgICAgICAgICAgICAgdGV4dEFuY2hvcj1cInN0YXJ0XCJcclxuICAgICAgICAgICAgICAgICAgZGlyZWN0aW9uPVwibHRyXCJcclxuICAgICAgICAgICAgICAgICAgd3JpdGluZ01vZGU9XCJsci10YlwiXHJcbiAgICAgICAgICAgICAgICAgIHVuaWNvZGVCaWRpPVwibm9ybWFsXCJcclxuICAgICAgICAgICAgICAgICAgdGV4dERlY29yYXRpb249XCJub25lXCJcclxuICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEgMCAwIDEgMjEyOS4yMSAzNzc2KVwiXHJcbiAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgIHtcIldFQUtORVNTXCJ9XHJcbiAgICAgICAgICAgICAgICA8L3RleHQ+XHJcbiAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICBkPVwiTTQzODMuNTEgMzcwNy40N0M0NDM0Ljg4IDM3MDcuNDcgNDQ3OC44MiAzNzE3LjY4IDQ1MTUuODQgMzczNi4yOEw0NTM0IDM3NDYuOTEgNDUzNCAzODE5LjY0QzQ1MzQgMzg3Ny44MyA0NDg2LjczIDM5MjUgNDQyOC40MiAzOTI1TDQxMTMuOCAzOTI1IDQxMzQuMTggMzg2NS4wMUM0MTc3LjIxIDM3NjcuNTUgNDI1OC4xIDM3MDcuNDcgNDM4My41MSAzNzA3LjQ3Wk0zMzI3LjU4IDM1ODEgNDExNC4xMiAzNTgxIDQwNzAgMzYwOC41OUMzOTcwLjE0IDM2NzguODkgMzkwMS43NyAzNzg0IDM4NjkuNzQgMzkwOS40MkwzODY2LjQ5IDM5MjUgMzMyNy41OCAzOTI1QzMyNjkuMjcgMzkyNSAzMjIyIDM4NzcuODMgMzIyMiAzODE5LjY0TDMyMjIgMzY4Ni4zNkMzMjIyIDM2MjguMTcgMzI2OS4yNyAzNTgxIDMzMjcuNTggMzU4MVpcIlxyXG4gICAgICAgICAgICAgICAgICBmaWxsPVwiI0M4Q0JGMVwiXHJcbiAgICAgICAgICAgICAgICAgIGZpbGxSdWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5PXsxfVxyXG4gICAgICAgICAgICAgICAgLz5cclxuICAgICAgICAgICAgICAgIDx0ZXh0XHJcbiAgICAgICAgICAgICAgICAgIGZpbGw9XCIjMzIyMzJDXCJcclxuICAgICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk9ezF9XHJcbiAgICAgICAgICAgICAgICAgIGZvbnRGYW1pbHk9XCJBY3VtaW4gUHJvLEFjdW1pbiBQcm9fTVNGb250U2VydmljZSxzYW5zLXNlcmlmXCJcclxuICAgICAgICAgICAgICAgICAgZm9udFN0eWxlPVwibm9ybWFsXCJcclxuICAgICAgICAgICAgICAgICAgZm9udFZhcmlhbnQ9XCJub3JtYWxcIlxyXG4gICAgICAgICAgICAgICAgICBmb250V2VpZ2h0PXs3MDB9XHJcbiAgICAgICAgICAgICAgICAgIGZvbnRTdHJldGNoPVwibm9ybWFsXCJcclxuICAgICAgICAgICAgICAgICAgZm9udFNpemU9ezEyOH1cclxuICAgICAgICAgICAgICAgICAgdGV4dEFuY2hvcj1cInN0YXJ0XCJcclxuICAgICAgICAgICAgICAgICAgZGlyZWN0aW9uPVwibHRyXCJcclxuICAgICAgICAgICAgICAgICAgd3JpdGluZ01vZGU9XCJsci10YlwiXHJcbiAgICAgICAgICAgICAgICAgIHVuaWNvZGVCaWRpPVwibm9ybWFsXCJcclxuICAgICAgICAgICAgICAgICAgdGV4dERlY29yYXRpb249XCJub25lXCJcclxuICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEgMCAwIDEgMzM2My4zMyAzNzg5KVwiXHJcbiAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgIHtcIk9QUE9SVFVOSVRJRVNcIn1cclxuICAgICAgICAgICAgICAgIDwvdGV4dD5cclxuICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgIGQ9XCJNNTY5OC45MiAzNzIxLjk4IDU5MjYgMzcyMS45OCA1OTI2IDM4MzQuOTdDNTkyNiAzODg0LjY5IDU4ODUuNjEgMzkyNSA1ODM1Ljc4IDM5MjVMNTY5OC45MiAzOTI1Wk00NzA0LjIyIDM1ODEgNTEyMi42MyAzNTgxIDUxMjIuNjMgMzcyMS45OCA1NDU5LjczIDM3MjEuOTggNTQ1OS43MyAzOTI1IDQ3MDQuMjIgMzkyNUM0NjU0LjM5IDM5MjUgNDYxNCAzODg0LjY5IDQ2MTQgMzgzNC45N0w0NjE0IDM2NzEuMDNDNDYxNCAzNjIxLjMxIDQ2NTQuMzkgMzU4MSA0NzA0LjIyIDM1ODFaXCJcclxuICAgICAgICAgICAgICAgICAgZmlsbD1cIiNFRUY5RkZcIlxyXG4gICAgICAgICAgICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eT17MX1cclxuICAgICAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICAgICAgICA8dGV4dFxyXG4gICAgICAgICAgICAgICAgICBmaWxsPVwiIzMyMjMyQ1wiXHJcbiAgICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5PXsxfVxyXG4gICAgICAgICAgICAgICAgICBmb250RmFtaWx5PVwiQWN1bWluIFBybyxBY3VtaW4gUHJvX01TRm9udFNlcnZpY2Usc2Fucy1zZXJpZlwiXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRTdHlsZT1cIm5vcm1hbFwiXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRWYXJpYW50PVwibm9ybWFsXCJcclxuICAgICAgICAgICAgICAgICAgZm9udFdlaWdodD17NzAwfVxyXG4gICAgICAgICAgICAgICAgICBmb250U3RyZXRjaD1cIm5vcm1hbFwiXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRTaXplPXsxMjh9XHJcbiAgICAgICAgICAgICAgICAgIHRleHRBbmNob3I9XCJzdGFydFwiXHJcbiAgICAgICAgICAgICAgICAgIGRpcmVjdGlvbj1cImx0clwiXHJcbiAgICAgICAgICAgICAgICAgIHdyaXRpbmdNb2RlPVwibHItdGJcIlxyXG4gICAgICAgICAgICAgICAgICB1bmljb2RlQmlkaT1cIm5vcm1hbFwiXHJcbiAgICAgICAgICAgICAgICAgIHRleHREZWNvcmF0aW9uPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxIDAgMCAxIDQ5NzkuODggMzc4OSlcIlxyXG4gICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICB7XCJUSFJFQVRTXCJ9XHJcbiAgICAgICAgICAgICAgICA8L3RleHQ+XHJcbiAgICAgICAgICAgICAgICA8dGV4dFxyXG4gICAgICAgICAgICAgICAgICBmaWxsPVwiIzAwMDAwMFwiXHJcbiAgICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5PXsxfVxyXG4gICAgICAgICAgICAgICAgICBmb250RmFtaWx5PVwiQWN1bWluIFBybyxBY3VtaW4gUHJvX01TRm9udFNlcnZpY2Usc2Fucy1zZXJpZlwiXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRTdHlsZT1cIm5vcm1hbFwiXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRWYXJpYW50PVwibm9ybWFsXCJcclxuICAgICAgICAgICAgICAgICAgZm9udFdlaWdodD17NzAwfVxyXG4gICAgICAgICAgICAgICAgICBmb250U3RyZXRjaD1cIm5vcm1hbFwiXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRTaXplPXsxMTl9XHJcbiAgICAgICAgICAgICAgICAgIHRleHRBbmNob3I9XCJzdGFydFwiXHJcbiAgICAgICAgICAgICAgICAgIGRpcmVjdGlvbj1cImx0clwiXHJcbiAgICAgICAgICAgICAgICAgIHdyaXRpbmdNb2RlPVwibHItdGJcIlxyXG4gICAgICAgICAgICAgICAgICB1bmljb2RlQmlkaT1cIm5vcm1hbFwiXHJcbiAgICAgICAgICAgICAgICAgIHRleHREZWNvcmF0aW9uPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxIDAgMCAxIDY0OS41NTQgNDk1OSlcIlxyXG4gICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICB7XCJQcmVDeXNlXCJ9XHJcbiAgICAgICAgICAgICAgICA8L3RleHQ+XHJcbiAgICAgICAgICAgICAgICA8dGV4dFxyXG4gICAgICAgICAgICAgICAgICBmaWxsPVwiIzAwMDAwMFwiXHJcbiAgICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5PXsxfVxyXG4gICAgICAgICAgICAgICAgICBmb250RmFtaWx5PVwiQWN1bWluIFBybyxBY3VtaW4gUHJvX01TRm9udFNlcnZpY2Usc2Fucy1zZXJpZlwiXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRTdHlsZT1cIm5vcm1hbFwiXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRWYXJpYW50PVwibm9ybWFsXCJcclxuICAgICAgICAgICAgICAgICAgZm9udFdlaWdodD17NzAwfVxyXG4gICAgICAgICAgICAgICAgICBmb250U3RyZXRjaD1cIm5vcm1hbFwiXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRTaXplPXsxMTl9XHJcbiAgICAgICAgICAgICAgICAgIHRleHRBbmNob3I9XCJzdGFydFwiXHJcbiAgICAgICAgICAgICAgICAgIGRpcmVjdGlvbj1cImx0clwiXHJcbiAgICAgICAgICAgICAgICAgIHdyaXRpbmdNb2RlPVwibHItdGJcIlxyXG4gICAgICAgICAgICAgICAgICB1bmljb2RlQmlkaT1cIm5vcm1hbFwiXHJcbiAgICAgICAgICAgICAgICAgIHRleHREZWNvcmF0aW9uPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxIDAgMCAxIDExNDIuODMgNDk1OSlcIlxyXG4gICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICB7XCJ1dFwifVxyXG4gICAgICAgICAgICAgICAgPC90ZXh0PlxyXG4gICAgICAgICAgICAgICAgPHRleHRcclxuICAgICAgICAgICAgICAgICAgZmlsbD1cIiMwMDAwMDBcIlxyXG4gICAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eT17MX1cclxuICAgICAgICAgICAgICAgICAgZm9udEZhbWlseT1cIkFjdW1pbiBQcm8sQWN1bWluIFByb19NU0ZvbnRTZXJ2aWNlLHNhbnMtc2VyaWZcIlxyXG4gICAgICAgICAgICAgICAgICBmb250U3R5bGU9XCJub3JtYWxcIlxyXG4gICAgICAgICAgICAgICAgICBmb250VmFyaWFudD1cIm5vcm1hbFwiXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRXZWlnaHQ9ezcwMH1cclxuICAgICAgICAgICAgICAgICAgZm9udFN0cmV0Y2g9XCJub3JtYWxcIlxyXG4gICAgICAgICAgICAgICAgICBmb250U2l6ZT17MTE5fVxyXG4gICAgICAgICAgICAgICAgICB0ZXh0QW5jaG9yPVwic3RhcnRcIlxyXG4gICAgICAgICAgICAgICAgICBkaXJlY3Rpb249XCJsdHJcIlxyXG4gICAgICAgICAgICAgICAgICB3cml0aW5nTW9kZT1cImxyLXRiXCJcclxuICAgICAgICAgICAgICAgICAgdW5pY29kZUJpZGk9XCJub3JtYWxcIlxyXG4gICAgICAgICAgICAgICAgICB0ZXh0RGVjb3JhdGlvbj1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSAwIDAgMSAxMjU2LjI3IDQ5NTkpXCJcclxuICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAge1wiaVwifVxyXG4gICAgICAgICAgICAgICAgPC90ZXh0PlxyXG4gICAgICAgICAgICAgICAgPHRleHRcclxuICAgICAgICAgICAgICAgICAgZmlsbD1cIiMwMDAwMDBcIlxyXG4gICAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eT17MX1cclxuICAgICAgICAgICAgICAgICAgZm9udEZhbWlseT1cIkFjdW1pbiBQcm8sQWN1bWluIFByb19NU0ZvbnRTZXJ2aWNlLHNhbnMtc2VyaWZcIlxyXG4gICAgICAgICAgICAgICAgICBmb250U3R5bGU9XCJub3JtYWxcIlxyXG4gICAgICAgICAgICAgICAgICBmb250VmFyaWFudD1cIm5vcm1hbFwiXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRXZWlnaHQ9ezcwMH1cclxuICAgICAgICAgICAgICAgICAgZm9udFN0cmV0Y2g9XCJub3JtYWxcIlxyXG4gICAgICAgICAgICAgICAgICBmb250U2l6ZT17MTE5fVxyXG4gICAgICAgICAgICAgICAgICB0ZXh0QW5jaG9yPVwic3RhcnRcIlxyXG4gICAgICAgICAgICAgICAgICBkaXJlY3Rpb249XCJsdHJcIlxyXG4gICAgICAgICAgICAgICAgICB3cml0aW5nTW9kZT1cImxyLXRiXCJcclxuICAgICAgICAgICAgICAgICAgdW5pY29kZUJpZGk9XCJub3JtYWxcIlxyXG4gICAgICAgICAgICAgICAgICB0ZXh0RGVjb3JhdGlvbj1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSAwIDAgMSAxMjg4LjkzIDQ5NTkpXCJcclxuICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAge1wibGl6ZXNcIn1cclxuICAgICAgICAgICAgICAgIDwvdGV4dD5cclxuICAgICAgICAgICAgICAgIDx0ZXh0XHJcbiAgICAgICAgICAgICAgICAgIGZpbGw9XCIjMDAwMDAwXCJcclxuICAgICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk9ezF9XHJcbiAgICAgICAgICAgICAgICAgIGZvbnRGYW1pbHk9XCJBY3VtaW4gUHJvLEFjdW1pbiBQcm9fTVNGb250U2VydmljZSxzYW5zLXNlcmlmXCJcclxuICAgICAgICAgICAgICAgICAgZm9udFN0eWxlPVwibm9ybWFsXCJcclxuICAgICAgICAgICAgICAgICAgZm9udFZhcmlhbnQ9XCJub3JtYWxcIlxyXG4gICAgICAgICAgICAgICAgICBmb250V2VpZ2h0PXs3MDB9XHJcbiAgICAgICAgICAgICAgICAgIGZvbnRTdHJldGNoPVwibm9ybWFsXCJcclxuICAgICAgICAgICAgICAgICAgZm9udFNpemU9ezExOX1cclxuICAgICAgICAgICAgICAgICAgdGV4dEFuY2hvcj1cInN0YXJ0XCJcclxuICAgICAgICAgICAgICAgICAgZGlyZWN0aW9uPVwibHRyXCJcclxuICAgICAgICAgICAgICAgICAgd3JpdGluZ01vZGU9XCJsci10YlwiXHJcbiAgICAgICAgICAgICAgICAgIHVuaWNvZGVCaWRpPVwibm9ybWFsXCJcclxuICAgICAgICAgICAgICAgICAgdGV4dERlY29yYXRpb249XCJub25lXCJcclxuICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEgMCAwIDEgNTQ5Ljg2NiA1MTAyKVwiXHJcbiAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgIHtcIm5vdmVsIHRlY2hub2xvZ3kgdG8gXCJ9XHJcbiAgICAgICAgICAgICAgICA8L3RleHQ+XHJcbiAgICAgICAgICAgICAgICA8dGV4dFxyXG4gICAgICAgICAgICAgICAgICBmaWxsPVwiIzAwMDAwMFwiXHJcbiAgICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5PXsxfVxyXG4gICAgICAgICAgICAgICAgICBmb250RmFtaWx5PVwiQWN1bWluIFBybyxBY3VtaW4gUHJvX01TRm9udFNlcnZpY2Usc2Fucy1zZXJpZlwiXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRTdHlsZT1cIm5vcm1hbFwiXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRWYXJpYW50PVwibm9ybWFsXCJcclxuICAgICAgICAgICAgICAgICAgZm9udFdlaWdodD17NzAwfVxyXG4gICAgICAgICAgICAgICAgICBmb250U3RyZXRjaD1cIm5vcm1hbFwiXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRTaXplPXsxMTl9XHJcbiAgICAgICAgICAgICAgICAgIHRleHRBbmNob3I9XCJzdGFydFwiXHJcbiAgICAgICAgICAgICAgICAgIGRpcmVjdGlvbj1cImx0clwiXHJcbiAgICAgICAgICAgICAgICAgIHdyaXRpbmdNb2RlPVwibHItdGJcIlxyXG4gICAgICAgICAgICAgICAgICB1bmljb2RlQmlkaT1cIm5vcm1hbFwiXHJcbiAgICAgICAgICAgICAgICAgIHRleHREZWNvcmF0aW9uPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxIDAgMCAxIDU1Ni4xNjggNTI0NSlcIlxyXG4gICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICB7XCJjdXJlIGdlbmUgbXV0YXRpb24gXCJ9XHJcbiAgICAgICAgICAgICAgICA8L3RleHQ+XHJcbiAgICAgICAgICAgICAgICA8dGV4dFxyXG4gICAgICAgICAgICAgICAgICBmaWxsPVwiIzAwMDAwMFwiXHJcbiAgICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5PXsxfVxyXG4gICAgICAgICAgICAgICAgICBmb250RmFtaWx5PVwiQWN1bWluIFBybyxBY3VtaW4gUHJvX01TRm9udFNlcnZpY2Usc2Fucy1zZXJpZlwiXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRTdHlsZT1cIm5vcm1hbFwiXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRWYXJpYW50PVwibm9ybWFsXCJcclxuICAgICAgICAgICAgICAgICAgZm9udFdlaWdodD17NzAwfVxyXG4gICAgICAgICAgICAgICAgICBmb250U3RyZXRjaD1cIm5vcm1hbFwiXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRTaXplPXsxMTl9XHJcbiAgICAgICAgICAgICAgICAgIHRleHRBbmNob3I9XCJzdGFydFwiXHJcbiAgICAgICAgICAgICAgICAgIGRpcmVjdGlvbj1cImx0clwiXHJcbiAgICAgICAgICAgICAgICAgIHdyaXRpbmdNb2RlPVwibHItdGJcIlxyXG4gICAgICAgICAgICAgICAgICB1bmljb2RlQmlkaT1cIm5vcm1hbFwiXHJcbiAgICAgICAgICAgICAgICAgIHRleHREZWNvcmF0aW9uPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxIDAgMCAxIDY0MC42ODUgNTM4OClcIlxyXG4gICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICB7XCJvZiAgQ3lzdGljIEZpYnJvc2lzXCJ9XHJcbiAgICAgICAgICAgICAgICA8L3RleHQ+XHJcbiAgICAgICAgICAgICAgICA8dGV4dFxyXG4gICAgICAgICAgICAgICAgICBmaWxsPVwiIzAwMDAwMFwiXHJcbiAgICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5PXsxfVxyXG4gICAgICAgICAgICAgICAgICBmb250RmFtaWx5PVwiQWN1bWluIFBybyxBY3VtaW4gUHJvX01TRm9udFNlcnZpY2Usc2Fucy1zZXJpZlwiXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRTdHlsZT1cIm5vcm1hbFwiXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRWYXJpYW50PVwibm9ybWFsXCJcclxuICAgICAgICAgICAgICAgICAgZm9udFdlaWdodD17NzAwfVxyXG4gICAgICAgICAgICAgICAgICBmb250U3RyZXRjaD1cIm5vcm1hbFwiXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRTaXplPXsxMTl9XHJcbiAgICAgICAgICAgICAgICAgIHRleHRBbmNob3I9XCJzdGFydFwiXHJcbiAgICAgICAgICAgICAgICAgIGRpcmVjdGlvbj1cImx0clwiXHJcbiAgICAgICAgICAgICAgICAgIHdyaXRpbmdNb2RlPVwibHItdGJcIlxyXG4gICAgICAgICAgICAgICAgICB1bmljb2RlQmlkaT1cIm5vcm1hbFwiXHJcbiAgICAgICAgICAgICAgICAgIHRleHREZWNvcmF0aW9uPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxIDAgMCAxIDE5ODEuMDYgNDk1MylcIlxyXG4gICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICB7XCJHZW5lIFwifVxyXG4gICAgICAgICAgICAgICAgPC90ZXh0PlxyXG4gICAgICAgICAgICAgICAgPHRleHRcclxuICAgICAgICAgICAgICAgICAgZmlsbD1cIiMwMDAwMDBcIlxyXG4gICAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eT17MX1cclxuICAgICAgICAgICAgICAgICAgZm9udEZhbWlseT1cIkFjdW1pbiBQcm8sQWN1bWluIFByb19NU0ZvbnRTZXJ2aWNlLHNhbnMtc2VyaWZcIlxyXG4gICAgICAgICAgICAgICAgICBmb250U3R5bGU9XCJub3JtYWxcIlxyXG4gICAgICAgICAgICAgICAgICBmb250VmFyaWFudD1cIm5vcm1hbFwiXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRXZWlnaHQ9ezcwMH1cclxuICAgICAgICAgICAgICAgICAgZm9udFN0cmV0Y2g9XCJub3JtYWxcIlxyXG4gICAgICAgICAgICAgICAgICBmb250U2l6ZT17MTE5fVxyXG4gICAgICAgICAgICAgICAgICB0ZXh0QW5jaG9yPVwic3RhcnRcIlxyXG4gICAgICAgICAgICAgICAgICBkaXJlY3Rpb249XCJsdHJcIlxyXG4gICAgICAgICAgICAgICAgICB3cml0aW5nTW9kZT1cImxyLXRiXCJcclxuICAgICAgICAgICAgICAgICAgdW5pY29kZUJpZGk9XCJub3JtYWxcIlxyXG4gICAgICAgICAgICAgICAgICB0ZXh0RGVjb3JhdGlvbj1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSAwIDAgMSAyMzAxLjMyIDQ5NTMpXCJcclxuICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAge1wiZWRpdGluZ1wifVxyXG4gICAgICAgICAgICAgICAgPC90ZXh0PlxyXG4gICAgICAgICAgICAgICAgPHRleHRcclxuICAgICAgICAgICAgICAgICAgZmlsbD1cIiMwMDAwMDBcIlxyXG4gICAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eT17MX1cclxuICAgICAgICAgICAgICAgICAgZm9udEZhbWlseT1cIkFjdW1pbiBQcm8sQWN1bWluIFByb19NU0ZvbnRTZXJ2aWNlLHNhbnMtc2VyaWZcIlxyXG4gICAgICAgICAgICAgICAgICBmb250U3R5bGU9XCJub3JtYWxcIlxyXG4gICAgICAgICAgICAgICAgICBmb250VmFyaWFudD1cIm5vcm1hbFwiXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRXZWlnaHQ9ezcwMH1cclxuICAgICAgICAgICAgICAgICAgZm9udFN0cmV0Y2g9XCJub3JtYWxcIlxyXG4gICAgICAgICAgICAgICAgICBmb250U2l6ZT17MTE5fVxyXG4gICAgICAgICAgICAgICAgICB0ZXh0QW5jaG9yPVwic3RhcnRcIlxyXG4gICAgICAgICAgICAgICAgICBkaXJlY3Rpb249XCJsdHJcIlxyXG4gICAgICAgICAgICAgICAgICB3cml0aW5nTW9kZT1cImxyLXRiXCJcclxuICAgICAgICAgICAgICAgICAgdW5pY29kZUJpZGk9XCJub3JtYWxcIlxyXG4gICAgICAgICAgICAgICAgICB0ZXh0RGVjb3JhdGlvbj1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSAwIDAgMSAyNzE3LjgzIDQ5NTMpXCJcclxuICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAge1wibmVlZFwifVxyXG4gICAgICAgICAgICAgICAgPC90ZXh0PlxyXG4gICAgICAgICAgICAgICAgPHRleHRcclxuICAgICAgICAgICAgICAgICAgZmlsbD1cIiMwMDAwMDBcIlxyXG4gICAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eT17MX1cclxuICAgICAgICAgICAgICAgICAgZm9udEZhbWlseT1cIkFjdW1pbiBQcm8sQWN1bWluIFByb19NU0ZvbnRTZXJ2aWNlLHNhbnMtc2VyaWZcIlxyXG4gICAgICAgICAgICAgICAgICBmb250U3R5bGU9XCJub3JtYWxcIlxyXG4gICAgICAgICAgICAgICAgICBmb250VmFyaWFudD1cIm5vcm1hbFwiXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRXZWlnaHQ9ezcwMH1cclxuICAgICAgICAgICAgICAgICAgZm9udFN0cmV0Y2g9XCJub3JtYWxcIlxyXG4gICAgICAgICAgICAgICAgICBmb250U2l6ZT17MTE5fVxyXG4gICAgICAgICAgICAgICAgICB0ZXh0QW5jaG9yPVwic3RhcnRcIlxyXG4gICAgICAgICAgICAgICAgICBkaXJlY3Rpb249XCJsdHJcIlxyXG4gICAgICAgICAgICAgICAgICB3cml0aW5nTW9kZT1cImxyLXRiXCJcclxuICAgICAgICAgICAgICAgICAgdW5pY29kZUJpZGk9XCJub3JtYWxcIlxyXG4gICAgICAgICAgICAgICAgICB0ZXh0RGVjb3JhdGlvbj1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSAwIDAgMSAxOTM5LjU0IDUwOTYpXCJcclxuICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAge1wiY29udGVyYWN0XCJ9XHJcbiAgICAgICAgICAgICAgICA8L3RleHQ+XHJcbiAgICAgICAgICAgICAgICA8dGV4dFxyXG4gICAgICAgICAgICAgICAgICBmaWxsPVwiIzAwMDAwMFwiXHJcbiAgICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5PXsxfVxyXG4gICAgICAgICAgICAgICAgICBmb250RmFtaWx5PVwiQWN1bWluIFBybyxBY3VtaW4gUHJvX01TRm9udFNlcnZpY2Usc2Fucy1zZXJpZlwiXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRTdHlsZT1cIm5vcm1hbFwiXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRWYXJpYW50PVwibm9ybWFsXCJcclxuICAgICAgICAgICAgICAgICAgZm9udFdlaWdodD17NzAwfVxyXG4gICAgICAgICAgICAgICAgICBmb250U3RyZXRjaD1cIm5vcm1hbFwiXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRTaXplPXsxMTl9XHJcbiAgICAgICAgICAgICAgICAgIHRleHRBbmNob3I9XCJzdGFydFwiXHJcbiAgICAgICAgICAgICAgICAgIGRpcmVjdGlvbj1cImx0clwiXHJcbiAgICAgICAgICAgICAgICAgIHdyaXRpbmdNb2RlPVwibHItdGJcIlxyXG4gICAgICAgICAgICAgICAgICB1bmljb2RlQmlkaT1cIm5vcm1hbFwiXHJcbiAgICAgICAgICAgICAgICAgIHRleHREZWNvcmF0aW9uPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxIDAgMCAxIDI1MDIuNzEgNTA5NilcIlxyXG4gICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICB7XCJvZmZcIn1cclxuICAgICAgICAgICAgICAgIDwvdGV4dD5cclxuICAgICAgICAgICAgICAgIDx0ZXh0XHJcbiAgICAgICAgICAgICAgICAgIGZpbGw9XCIjMDAwMDAwXCJcclxuICAgICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk9ezF9XHJcbiAgICAgICAgICAgICAgICAgIGZvbnRGYW1pbHk9XCJBY3VtaW4gUHJvLEFjdW1pbiBQcm9fTVNGb250U2VydmljZSxzYW5zLXNlcmlmXCJcclxuICAgICAgICAgICAgICAgICAgZm9udFN0eWxlPVwibm9ybWFsXCJcclxuICAgICAgICAgICAgICAgICAgZm9udFZhcmlhbnQ9XCJub3JtYWxcIlxyXG4gICAgICAgICAgICAgICAgICBmb250V2VpZ2h0PXs3MDB9XHJcbiAgICAgICAgICAgICAgICAgIGZvbnRTdHJldGNoPVwibm9ybWFsXCJcclxuICAgICAgICAgICAgICAgICAgZm9udFNpemU9ezExOX1cclxuICAgICAgICAgICAgICAgICAgdGV4dEFuY2hvcj1cInN0YXJ0XCJcclxuICAgICAgICAgICAgICAgICAgZGlyZWN0aW9uPVwibHRyXCJcclxuICAgICAgICAgICAgICAgICAgd3JpdGluZ01vZGU9XCJsci10YlwiXHJcbiAgICAgICAgICAgICAgICAgIHVuaWNvZGVCaWRpPVwibm9ybWFsXCJcclxuICAgICAgICAgICAgICAgICAgdGV4dERlY29yYXRpb249XCJub25lXCJcclxuICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEgMCAwIDEgMjY0OS45NSA1MDk2KVwiXHJcbiAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgIHtcIi1cIn1cclxuICAgICAgICAgICAgICAgIDwvdGV4dD5cclxuICAgICAgICAgICAgICAgIDx0ZXh0XHJcbiAgICAgICAgICAgICAgICAgIGZpbGw9XCIjMDAwMDAwXCJcclxuICAgICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk9ezF9XHJcbiAgICAgICAgICAgICAgICAgIGZvbnRGYW1pbHk9XCJBY3VtaW4gUHJvLEFjdW1pbiBQcm9fTVNGb250U2VydmljZSxzYW5zLXNlcmlmXCJcclxuICAgICAgICAgICAgICAgICAgZm9udFN0eWxlPVwibm9ybWFsXCJcclxuICAgICAgICAgICAgICAgICAgZm9udFZhcmlhbnQ9XCJub3JtYWxcIlxyXG4gICAgICAgICAgICAgICAgICBmb250V2VpZ2h0PXs3MDB9XHJcbiAgICAgICAgICAgICAgICAgIGZvbnRTdHJldGNoPVwibm9ybWFsXCJcclxuICAgICAgICAgICAgICAgICAgZm9udFNpemU9ezExOX1cclxuICAgICAgICAgICAgICAgICAgdGV4dEFuY2hvcj1cInN0YXJ0XCJcclxuICAgICAgICAgICAgICAgICAgZGlyZWN0aW9uPVwibHRyXCJcclxuICAgICAgICAgICAgICAgICAgd3JpdGluZ01vZGU9XCJsci10YlwiXHJcbiAgICAgICAgICAgICAgICAgIHVuaWNvZGVCaWRpPVwibm9ybWFsXCJcclxuICAgICAgICAgICAgICAgICAgdGV4dERlY29yYXRpb249XCJub25lXCJcclxuICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEgMCAwIDEgMjY5NS43OSA1MDk2KVwiXHJcbiAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgIHtcInRhcmdldCBcIn1cclxuICAgICAgICAgICAgICAgIDwvdGV4dD5cclxuICAgICAgICAgICAgICAgIDx0ZXh0XHJcbiAgICAgICAgICAgICAgICAgIGZpbGw9XCIjMDAwMDAwXCJcclxuICAgICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk9ezF9XHJcbiAgICAgICAgICAgICAgICAgIGZvbnRGYW1pbHk9XCJBY3VtaW4gUHJvLEFjdW1pbiBQcm9fTVNGb250U2VydmljZSxzYW5zLXNlcmlmXCJcclxuICAgICAgICAgICAgICAgICAgZm9udFN0eWxlPVwibm9ybWFsXCJcclxuICAgICAgICAgICAgICAgICAgZm9udFZhcmlhbnQ9XCJub3JtYWxcIlxyXG4gICAgICAgICAgICAgICAgICBmb250V2VpZ2h0PXs3MDB9XHJcbiAgICAgICAgICAgICAgICAgIGZvbnRTdHJldGNoPVwibm9ybWFsXCJcclxuICAgICAgICAgICAgICAgICAgZm9udFNpemU9ezExOX1cclxuICAgICAgICAgICAgICAgICAgdGV4dEFuY2hvcj1cInN0YXJ0XCJcclxuICAgICAgICAgICAgICAgICAgZGlyZWN0aW9uPVwibHRyXCJcclxuICAgICAgICAgICAgICAgICAgd3JpdGluZ01vZGU9XCJsci10YlwiXHJcbiAgICAgICAgICAgICAgICAgIHVuaWNvZGVCaWRpPVwibm9ybWFsXCJcclxuICAgICAgICAgICAgICAgICAgdGV4dERlY29yYXRpb249XCJub25lXCJcclxuICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEgMCAwIDEgMjAyMS43NCA1MjM5KVwiXHJcbiAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgIHtcImVmZmVjdHNcIn1cclxuICAgICAgICAgICAgICAgIDwvdGV4dD5cclxuICAgICAgICAgICAgICAgIDx0ZXh0XHJcbiAgICAgICAgICAgICAgICAgIGZpbGw9XCIjMDAwMDAwXCJcclxuICAgICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk9ezF9XHJcbiAgICAgICAgICAgICAgICAgIGZvbnRGYW1pbHk9XCJBY3VtaW4gUHJvLEFjdW1pbiBQcm9fTVNGb250U2VydmljZSxzYW5zLXNlcmlmXCJcclxuICAgICAgICAgICAgICAgICAgZm9udFN0eWxlPVwibm9ybWFsXCJcclxuICAgICAgICAgICAgICAgICAgZm9udFZhcmlhbnQ9XCJub3JtYWxcIlxyXG4gICAgICAgICAgICAgICAgICBmb250V2VpZ2h0PXs3MDB9XHJcbiAgICAgICAgICAgICAgICAgIGZvbnRTdHJldGNoPVwibm9ybWFsXCJcclxuICAgICAgICAgICAgICAgICAgZm9udFNpemU9ezExOX1cclxuICAgICAgICAgICAgICAgICAgdGV4dEFuY2hvcj1cInN0YXJ0XCJcclxuICAgICAgICAgICAgICAgICAgZGlyZWN0aW9uPVwibHRyXCJcclxuICAgICAgICAgICAgICAgICAgd3JpdGluZ01vZGU9XCJsci10YlwiXHJcbiAgICAgICAgICAgICAgICAgIHVuaWNvZGVCaWRpPVwibm9ybWFsXCJcclxuICAgICAgICAgICAgICAgICAgdGV4dERlY29yYXRpb249XCJub25lXCJcclxuICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEgMCAwIDEgMjQyOS4wOCA1MjM5KVwiXHJcbiAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgIHtcIiYgXCJ9XHJcbiAgICAgICAgICAgICAgICA8L3RleHQ+XHJcbiAgICAgICAgICAgICAgICA8dGV4dFxyXG4gICAgICAgICAgICAgICAgICBmaWxsPVwiIzAwMDAwMFwiXHJcbiAgICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5PXsxfVxyXG4gICAgICAgICAgICAgICAgICBmb250RmFtaWx5PVwiQWN1bWluIFBybyxBY3VtaW4gUHJvX01TRm9udFNlcnZpY2Usc2Fucy1zZXJpZlwiXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRTdHlsZT1cIm5vcm1hbFwiXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRWYXJpYW50PVwibm9ybWFsXCJcclxuICAgICAgICAgICAgICAgICAgZm9udFdlaWdodD17NzAwfVxyXG4gICAgICAgICAgICAgICAgICBmb250U3RyZXRjaD1cIm5vcm1hbFwiXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRTaXplPXsxMTl9XHJcbiAgICAgICAgICAgICAgICAgIHRleHRBbmNob3I9XCJzdGFydFwiXHJcbiAgICAgICAgICAgICAgICAgIGRpcmVjdGlvbj1cImx0clwiXHJcbiAgICAgICAgICAgICAgICAgIHdyaXRpbmdNb2RlPVwibHItdGJcIlxyXG4gICAgICAgICAgICAgICAgICB1bmljb2RlQmlkaT1cIm5vcm1hbFwiXHJcbiAgICAgICAgICAgICAgICAgIHRleHREZWNvcmF0aW9uPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxIDAgMCAxIDI1NTEuMTEgNTIzOSlcIlxyXG4gICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICB7XCJyZXF1aXJlXCJ9XHJcbiAgICAgICAgICAgICAgICA8L3RleHQ+XHJcbiAgICAgICAgICAgICAgICA8dGV4dFxyXG4gICAgICAgICAgICAgICAgICBmaWxsPVwiIzAwMDAwMFwiXHJcbiAgICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5PXsxfVxyXG4gICAgICAgICAgICAgICAgICBmb250RmFtaWx5PVwiQWN1bWluIFBybyxBY3VtaW4gUHJvX01TRm9udFNlcnZpY2Usc2Fucy1zZXJpZlwiXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRTdHlsZT1cIm5vcm1hbFwiXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRWYXJpYW50PVwibm9ybWFsXCJcclxuICAgICAgICAgICAgICAgICAgZm9udFdlaWdodD17NzAwfVxyXG4gICAgICAgICAgICAgICAgICBmb250U3RyZXRjaD1cIm5vcm1hbFwiXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRTaXplPXsxMTl9XHJcbiAgICAgICAgICAgICAgICAgIHRleHRBbmNob3I9XCJzdGFydFwiXHJcbiAgICAgICAgICAgICAgICAgIGRpcmVjdGlvbj1cImx0clwiXHJcbiAgICAgICAgICAgICAgICAgIHdyaXRpbmdNb2RlPVwibHItdGJcIlxyXG4gICAgICAgICAgICAgICAgICB1bmljb2RlQmlkaT1cIm5vcm1hbFwiXHJcbiAgICAgICAgICAgICAgICAgIHRleHREZWNvcmF0aW9uPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxIDAgMCAxIDIwMTMuNDQgNTM4MilcIlxyXG4gICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICB7XCJzYWZldHlcIn1cclxuICAgICAgICAgICAgICAgIDwvdGV4dD5cclxuICAgICAgICAgICAgICAgIDx0ZXh0XHJcbiAgICAgICAgICAgICAgICAgIGZpbGw9XCIjMDAwMDAwXCJcclxuICAgICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk9ezF9XHJcbiAgICAgICAgICAgICAgICAgIGZvbnRGYW1pbHk9XCJBY3VtaW4gUHJvLEFjdW1pbiBQcm9fTVNGb250U2VydmljZSxzYW5zLXNlcmlmXCJcclxuICAgICAgICAgICAgICAgICAgZm9udFN0eWxlPVwibm9ybWFsXCJcclxuICAgICAgICAgICAgICAgICAgZm9udFZhcmlhbnQ9XCJub3JtYWxcIlxyXG4gICAgICAgICAgICAgICAgICBmb250V2VpZ2h0PXs3MDB9XHJcbiAgICAgICAgICAgICAgICAgIGZvbnRTdHJldGNoPVwibm9ybWFsXCJcclxuICAgICAgICAgICAgICAgICAgZm9udFNpemU9ezExOX1cclxuICAgICAgICAgICAgICAgICAgdGV4dEFuY2hvcj1cInN0YXJ0XCJcclxuICAgICAgICAgICAgICAgICAgZGlyZWN0aW9uPVwibHRyXCJcclxuICAgICAgICAgICAgICAgICAgd3JpdGluZ01vZGU9XCJsci10YlwiXHJcbiAgICAgICAgICAgICAgICAgIHVuaWNvZGVCaWRpPVwibm9ybWFsXCJcclxuICAgICAgICAgICAgICAgICAgdGV4dERlY29yYXRpb249XCJub25lXCJcclxuICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEgMCAwIDEgMjM4MC4xMSA1MzgyKVwiXHJcbiAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgIHtcImV2YWx1YXRpb25cIn1cclxuICAgICAgICAgICAgICAgIDwvdGV4dD5cclxuICAgICAgICAgICAgICAgIDx0ZXh0XHJcbiAgICAgICAgICAgICAgICAgIGZpbGw9XCIjMDAwMDAwXCJcclxuICAgICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk9ezF9XHJcbiAgICAgICAgICAgICAgICAgIGZvbnRGYW1pbHk9XCJBY3VtaW4gUHJvLEFjdW1pbiBQcm9fTVNGb250U2VydmljZSxzYW5zLXNlcmlmXCJcclxuICAgICAgICAgICAgICAgICAgZm9udFN0eWxlPVwibm9ybWFsXCJcclxuICAgICAgICAgICAgICAgICAgZm9udFZhcmlhbnQ9XCJub3JtYWxcIlxyXG4gICAgICAgICAgICAgICAgICBmb250V2VpZ2h0PXs3MDB9XHJcbiAgICAgICAgICAgICAgICAgIGZvbnRTdHJldGNoPVwibm9ybWFsXCJcclxuICAgICAgICAgICAgICAgICAgZm9udFNpemU9ezExOX1cclxuICAgICAgICAgICAgICAgICAgdGV4dEFuY2hvcj1cInN0YXJ0XCJcclxuICAgICAgICAgICAgICAgICAgZGlyZWN0aW9uPVwibHRyXCJcclxuICAgICAgICAgICAgICAgICAgd3JpdGluZ01vZGU9XCJsci10YlwiXHJcbiAgICAgICAgICAgICAgICAgIHVuaWNvZGVCaWRpPVwibm9ybWFsXCJcclxuICAgICAgICAgICAgICAgICAgdGV4dERlY29yYXRpb249XCJub25lXCJcclxuICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEgMCAwIDEgMzM3OS45IDQ5NDkpXCJcclxuICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAge1wiVGVjaG5vbG9neSBcIn1cclxuICAgICAgICAgICAgICAgIDwvdGV4dD5cclxuICAgICAgICAgICAgICAgIDx0ZXh0XHJcbiAgICAgICAgICAgICAgICAgIGZpbGw9XCIjMDAwMDAwXCJcclxuICAgICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk9ezF9XHJcbiAgICAgICAgICAgICAgICAgIGZvbnRGYW1pbHk9XCJBY3VtaW4gUHJvLEFjdW1pbiBQcm9fTVNGb250U2VydmljZSxzYW5zLXNlcmlmXCJcclxuICAgICAgICAgICAgICAgICAgZm9udFN0eWxlPVwibm9ybWFsXCJcclxuICAgICAgICAgICAgICAgICAgZm9udFZhcmlhbnQ9XCJub3JtYWxcIlxyXG4gICAgICAgICAgICAgICAgICBmb250V2VpZ2h0PXs3MDB9XHJcbiAgICAgICAgICAgICAgICAgIGZvbnRTdHJldGNoPVwibm9ybWFsXCJcclxuICAgICAgICAgICAgICAgICAgZm9udFNpemU9ezExOX1cclxuICAgICAgICAgICAgICAgICAgdGV4dEFuY2hvcj1cInN0YXJ0XCJcclxuICAgICAgICAgICAgICAgICAgZGlyZWN0aW9uPVwibHRyXCJcclxuICAgICAgICAgICAgICAgICAgd3JpdGluZ01vZGU9XCJsci10YlwiXHJcbiAgICAgICAgICAgICAgICAgIHVuaWNvZGVCaWRpPVwibm9ybWFsXCJcclxuICAgICAgICAgICAgICAgICAgdGV4dERlY29yYXRpb249XCJub25lXCJcclxuICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEgMCAwIDEgNDA1NC4yMyA0OTQ5KVwiXHJcbiAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgIHtcIm1pZ2h0XCJ9XHJcbiAgICAgICAgICAgICAgICA8L3RleHQ+XHJcbiAgICAgICAgICAgICAgICA8dGV4dFxyXG4gICAgICAgICAgICAgICAgICBmaWxsPVwiIzAwMDAwMFwiXHJcbiAgICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5PXsxfVxyXG4gICAgICAgICAgICAgICAgICBmb250RmFtaWx5PVwiQWN1bWluIFBybyxBY3VtaW4gUHJvX01TRm9udFNlcnZpY2Usc2Fucy1zZXJpZlwiXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRTdHlsZT1cIm5vcm1hbFwiXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRWYXJpYW50PVwibm9ybWFsXCJcclxuICAgICAgICAgICAgICAgICAgZm9udFdlaWdodD17NzAwfVxyXG4gICAgICAgICAgICAgICAgICBmb250U3RyZXRjaD1cIm5vcm1hbFwiXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRTaXplPXsxMTl9XHJcbiAgICAgICAgICAgICAgICAgIHRleHRBbmNob3I9XCJzdGFydFwiXHJcbiAgICAgICAgICAgICAgICAgIGRpcmVjdGlvbj1cImx0clwiXHJcbiAgICAgICAgICAgICAgICAgIHdyaXRpbmdNb2RlPVwibHItdGJcIlxyXG4gICAgICAgICAgICAgICAgICB1bmljb2RlQmlkaT1cIm5vcm1hbFwiXHJcbiAgICAgICAgICAgICAgICAgIHRleHREZWNvcmF0aW9uPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxIDAgMCAxIDMzMDYgNTA5MilcIlxyXG4gICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICB7XCJlbmFibGVcIn1cclxuICAgICAgICAgICAgICAgIDwvdGV4dD5cclxuICAgICAgICAgICAgICAgIDx0ZXh0XHJcbiAgICAgICAgICAgICAgICAgIGZpbGw9XCIjMDAwMDAwXCJcclxuICAgICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk9ezF9XHJcbiAgICAgICAgICAgICAgICAgIGZvbnRGYW1pbHk9XCJBY3VtaW4gUHJvLEFjdW1pbiBQcm9fTVNGb250U2VydmljZSxzYW5zLXNlcmlmXCJcclxuICAgICAgICAgICAgICAgICAgZm9udFN0eWxlPVwibm9ybWFsXCJcclxuICAgICAgICAgICAgICAgICAgZm9udFZhcmlhbnQ9XCJub3JtYWxcIlxyXG4gICAgICAgICAgICAgICAgICBmb250V2VpZ2h0PXs3MDB9XHJcbiAgICAgICAgICAgICAgICAgIGZvbnRTdHJldGNoPVwibm9ybWFsXCJcclxuICAgICAgICAgICAgICAgICAgZm9udFNpemU9ezExOX1cclxuICAgICAgICAgICAgICAgICAgdGV4dEFuY2hvcj1cInN0YXJ0XCJcclxuICAgICAgICAgICAgICAgICAgZGlyZWN0aW9uPVwibHRyXCJcclxuICAgICAgICAgICAgICAgICAgd3JpdGluZ01vZGU9XCJsci10YlwiXHJcbiAgICAgICAgICAgICAgICAgIHVuaWNvZGVCaWRpPVwibm9ybWFsXCJcclxuICAgICAgICAgICAgICAgICAgdGV4dERlY29yYXRpb249XCJub25lXCJcclxuICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEgMCAwIDEgMzcwNy42MSA1MDkyKVwiXHJcbiAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgIHtcImRpcmVjdGlvbnNcIn1cclxuICAgICAgICAgICAgICAgIDwvdGV4dD5cclxuICAgICAgICAgICAgICAgIDx0ZXh0XHJcbiAgICAgICAgICAgICAgICAgIGZpbGw9XCIjMDAwMDAwXCJcclxuICAgICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk9ezF9XHJcbiAgICAgICAgICAgICAgICAgIGZvbnRGYW1pbHk9XCJBY3VtaW4gUHJvLEFjdW1pbiBQcm9fTVNGb250U2VydmljZSxzYW5zLXNlcmlmXCJcclxuICAgICAgICAgICAgICAgICAgZm9udFN0eWxlPVwibm9ybWFsXCJcclxuICAgICAgICAgICAgICAgICAgZm9udFZhcmlhbnQ9XCJub3JtYWxcIlxyXG4gICAgICAgICAgICAgICAgICBmb250V2VpZ2h0PXs3MDB9XHJcbiAgICAgICAgICAgICAgICAgIGZvbnRTdHJldGNoPVwibm9ybWFsXCJcclxuICAgICAgICAgICAgICAgICAgZm9udFNpemU9ezExOX1cclxuICAgICAgICAgICAgICAgICAgdGV4dEFuY2hvcj1cInN0YXJ0XCJcclxuICAgICAgICAgICAgICAgICAgZGlyZWN0aW9uPVwibHRyXCJcclxuICAgICAgICAgICAgICAgICAgd3JpdGluZ01vZGU9XCJsci10YlwiXHJcbiAgICAgICAgICAgICAgICAgIHVuaWNvZGVCaWRpPVwibm9ybWFsXCJcclxuICAgICAgICAgICAgICAgICAgdGV4dERlY29yYXRpb249XCJub25lXCJcclxuICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEgMCAwIDEgNDI5NC44NSA1MDkyKVwiXHJcbiAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgIHtcImZvclwifVxyXG4gICAgICAgICAgICAgICAgPC90ZXh0PlxyXG4gICAgICAgICAgICAgICAgPHRleHRcclxuICAgICAgICAgICAgICAgICAgZmlsbD1cIiMwMDAwMDBcIlxyXG4gICAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eT17MX1cclxuICAgICAgICAgICAgICAgICAgZm9udEZhbWlseT1cIkFjdW1pbiBQcm8sQWN1bWluIFByb19NU0ZvbnRTZXJ2aWNlLHNhbnMtc2VyaWZcIlxyXG4gICAgICAgICAgICAgICAgICBmb250U3R5bGU9XCJub3JtYWxcIlxyXG4gICAgICAgICAgICAgICAgICBmb250VmFyaWFudD1cIm5vcm1hbFwiXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRXZWlnaHQ9ezcwMH1cclxuICAgICAgICAgICAgICAgICAgZm9udFN0cmV0Y2g9XCJub3JtYWxcIlxyXG4gICAgICAgICAgICAgICAgICBmb250U2l6ZT17MTE5fVxyXG4gICAgICAgICAgICAgICAgICB0ZXh0QW5jaG9yPVwic3RhcnRcIlxyXG4gICAgICAgICAgICAgICAgICBkaXJlY3Rpb249XCJsdHJcIlxyXG4gICAgICAgICAgICAgICAgICB3cml0aW5nTW9kZT1cImxyLXRiXCJcclxuICAgICAgICAgICAgICAgICAgdW5pY29kZUJpZGk9XCJub3JtYWxcIlxyXG4gICAgICAgICAgICAgICAgICB0ZXh0RGVjb3JhdGlvbj1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSAwIDAgMSAzMzQxLjIyIDUyMzUpXCJcclxuICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAge1widHJlYXRtZW50c1wifVxyXG4gICAgICAgICAgICAgICAgPC90ZXh0PlxyXG4gICAgICAgICAgICAgICAgPHRleHRcclxuICAgICAgICAgICAgICAgICAgZmlsbD1cIiMwMDAwMDBcIlxyXG4gICAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eT17MX1cclxuICAgICAgICAgICAgICAgICAgZm9udEZhbWlseT1cIkFjdW1pbiBQcm8sQWN1bWluIFByb19NU0ZvbnRTZXJ2aWNlLHNhbnMtc2VyaWZcIlxyXG4gICAgICAgICAgICAgICAgICBmb250U3R5bGU9XCJub3JtYWxcIlxyXG4gICAgICAgICAgICAgICAgICBmb250VmFyaWFudD1cIm5vcm1hbFwiXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRXZWlnaHQ9ezcwMH1cclxuICAgICAgICAgICAgICAgICAgZm9udFN0cmV0Y2g9XCJub3JtYWxcIlxyXG4gICAgICAgICAgICAgICAgICBmb250U2l6ZT17MTE5fVxyXG4gICAgICAgICAgICAgICAgICB0ZXh0QW5jaG9yPVwic3RhcnRcIlxyXG4gICAgICAgICAgICAgICAgICBkaXJlY3Rpb249XCJsdHJcIlxyXG4gICAgICAgICAgICAgICAgICB3cml0aW5nTW9kZT1cImxyLXRiXCJcclxuICAgICAgICAgICAgICAgICAgdW5pY29kZUJpZGk9XCJub3JtYWxcIlxyXG4gICAgICAgICAgICAgICAgICB0ZXh0RGVjb3JhdGlvbj1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSAwIDAgMSAzOTgxLjE3IDUyMzUpXCJcclxuICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAge1wib2ZcIn1cclxuICAgICAgICAgICAgICAgIDwvdGV4dD5cclxuICAgICAgICAgICAgICAgIDx0ZXh0XHJcbiAgICAgICAgICAgICAgICAgIGZpbGw9XCIjMDAwMDAwXCJcclxuICAgICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk9ezF9XHJcbiAgICAgICAgICAgICAgICAgIGZvbnRGYW1pbHk9XCJBY3VtaW4gUHJvLEFjdW1pbiBQcm9fTVNGb250U2VydmljZSxzYW5zLXNlcmlmXCJcclxuICAgICAgICAgICAgICAgICAgZm9udFN0eWxlPVwibm9ybWFsXCJcclxuICAgICAgICAgICAgICAgICAgZm9udFZhcmlhbnQ9XCJub3JtYWxcIlxyXG4gICAgICAgICAgICAgICAgICBmb250V2VpZ2h0PXs3MDB9XHJcbiAgICAgICAgICAgICAgICAgIGZvbnRTdHJldGNoPVwibm9ybWFsXCJcclxuICAgICAgICAgICAgICAgICAgZm9udFNpemU9ezExOX1cclxuICAgICAgICAgICAgICAgICAgdGV4dEFuY2hvcj1cInN0YXJ0XCJcclxuICAgICAgICAgICAgICAgICAgZGlyZWN0aW9uPVwibHRyXCJcclxuICAgICAgICAgICAgICAgICAgd3JpdGluZ01vZGU9XCJsci10YlwiXHJcbiAgICAgICAgICAgICAgICAgIHVuaWNvZGVCaWRpPVwibm9ybWFsXCJcclxuICAgICAgICAgICAgICAgICAgdGV4dERlY29yYXRpb249XCJub25lXCJcclxuICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEgMCAwIDEgNDExOC4xIDUyMzUpXCJcclxuICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAge1wib3RoZXJcIn1cclxuICAgICAgICAgICAgICAgIDwvdGV4dD5cclxuICAgICAgICAgICAgICAgIDx0ZXh0XHJcbiAgICAgICAgICAgICAgICAgIGZpbGw9XCIjMDAwMDAwXCJcclxuICAgICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk9ezF9XHJcbiAgICAgICAgICAgICAgICAgIGZvbnRGYW1pbHk9XCJBY3VtaW4gUHJvLEFjdW1pbiBQcm9fTVNGb250U2VydmljZSxzYW5zLXNlcmlmXCJcclxuICAgICAgICAgICAgICAgICAgZm9udFN0eWxlPVwibm9ybWFsXCJcclxuICAgICAgICAgICAgICAgICAgZm9udFZhcmlhbnQ9XCJub3JtYWxcIlxyXG4gICAgICAgICAgICAgICAgICBmb250V2VpZ2h0PXs3MDB9XHJcbiAgICAgICAgICAgICAgICAgIGZvbnRTdHJldGNoPVwibm9ybWFsXCJcclxuICAgICAgICAgICAgICAgICAgZm9udFNpemU9ezExOX1cclxuICAgICAgICAgICAgICAgICAgdGV4dEFuY2hvcj1cInN0YXJ0XCJcclxuICAgICAgICAgICAgICAgICAgZGlyZWN0aW9uPVwibHRyXCJcclxuICAgICAgICAgICAgICAgICAgd3JpdGluZ01vZGU9XCJsci10YlwiXHJcbiAgICAgICAgICAgICAgICAgIHVuaWNvZGVCaWRpPVwibm9ybWFsXCJcclxuICAgICAgICAgICAgICAgICAgdGV4dERlY29yYXRpb249XCJub25lXCJcclxuICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEgMCAwIDEgMzQxMy43MSA1Mzc4KVwiXHJcbiAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgIHtcImdlbmV0aWNcIn1cclxuICAgICAgICAgICAgICAgIDwvdGV4dD5cclxuICAgICAgICAgICAgICAgIDx0ZXh0XHJcbiAgICAgICAgICAgICAgICAgIGZpbGw9XCIjMDAwMDAwXCJcclxuICAgICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk9ezF9XHJcbiAgICAgICAgICAgICAgICAgIGZvbnRGYW1pbHk9XCJBY3VtaW4gUHJvLEFjdW1pbiBQcm9fTVNGb250U2VydmljZSxzYW5zLXNlcmlmXCJcclxuICAgICAgICAgICAgICAgICAgZm9udFN0eWxlPVwibm9ybWFsXCJcclxuICAgICAgICAgICAgICAgICAgZm9udFZhcmlhbnQ9XCJub3JtYWxcIlxyXG4gICAgICAgICAgICAgICAgICBmb250V2VpZ2h0PXs3MDB9XHJcbiAgICAgICAgICAgICAgICAgIGZvbnRTdHJldGNoPVwibm9ybWFsXCJcclxuICAgICAgICAgICAgICAgICAgZm9udFNpemU9ezExOX1cclxuICAgICAgICAgICAgICAgICAgdGV4dEFuY2hvcj1cInN0YXJ0XCJcclxuICAgICAgICAgICAgICAgICAgZGlyZWN0aW9uPVwibHRyXCJcclxuICAgICAgICAgICAgICAgICAgd3JpdGluZ01vZGU9XCJsci10YlwiXHJcbiAgICAgICAgICAgICAgICAgIHVuaWNvZGVCaWRpPVwibm9ybWFsXCJcclxuICAgICAgICAgICAgICAgICAgdGV4dERlY29yYXRpb249XCJub25lXCJcclxuICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEgMCAwIDEgMzg1NiA1Mzc4KVwiXHJcbiAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgIHtcImRpc2Vhc2VzXCJ9XHJcbiAgICAgICAgICAgICAgICA8L3RleHQ+XHJcbiAgICAgICAgICAgICAgICA8dGV4dFxyXG4gICAgICAgICAgICAgICAgICBmaWxsPVwiIzAwMDAwMFwiXHJcbiAgICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5PXsxfVxyXG4gICAgICAgICAgICAgICAgICBmb250RmFtaWx5PVwiQWN1bWluIFBybyxBY3VtaW4gUHJvX01TRm9udFNlcnZpY2Usc2Fucy1zZXJpZlwiXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRTdHlsZT1cIm5vcm1hbFwiXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRWYXJpYW50PVwibm9ybWFsXCJcclxuICAgICAgICAgICAgICAgICAgZm9udFdlaWdodD17NzAwfVxyXG4gICAgICAgICAgICAgICAgICBmb250U3RyZXRjaD1cIm5vcm1hbFwiXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRTaXplPXsxMTl9XHJcbiAgICAgICAgICAgICAgICAgIHRleHRBbmNob3I9XCJzdGFydFwiXHJcbiAgICAgICAgICAgICAgICAgIGRpcmVjdGlvbj1cImx0clwiXHJcbiAgICAgICAgICAgICAgICAgIHdyaXRpbmdNb2RlPVwibHItdGJcIlxyXG4gICAgICAgICAgICAgICAgICB1bmljb2RlQmlkaT1cIm5vcm1hbFwiXHJcbiAgICAgICAgICAgICAgICAgIHRleHREZWNvcmF0aW9uPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxIDAgMCAxIDQ4MzAgNDk0OSlcIlxyXG4gICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICB7XCJSZXF1aXJtZW50c1wifVxyXG4gICAgICAgICAgICAgICAgPC90ZXh0PlxyXG4gICAgICAgICAgICAgICAgPHRleHRcclxuICAgICAgICAgICAgICAgICAgZmlsbD1cIiMwMDAwMDBcIlxyXG4gICAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eT17MX1cclxuICAgICAgICAgICAgICAgICAgZm9udEZhbWlseT1cIkFjdW1pbiBQcm8sQWN1bWluIFByb19NU0ZvbnRTZXJ2aWNlLHNhbnMtc2VyaWZcIlxyXG4gICAgICAgICAgICAgICAgICBmb250U3R5bGU9XCJub3JtYWxcIlxyXG4gICAgICAgICAgICAgICAgICBmb250VmFyaWFudD1cIm5vcm1hbFwiXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRXZWlnaHQ9ezcwMH1cclxuICAgICAgICAgICAgICAgICAgZm9udFN0cmV0Y2g9XCJub3JtYWxcIlxyXG4gICAgICAgICAgICAgICAgICBmb250U2l6ZT17MTE5fVxyXG4gICAgICAgICAgICAgICAgICB0ZXh0QW5jaG9yPVwic3RhcnRcIlxyXG4gICAgICAgICAgICAgICAgICBkaXJlY3Rpb249XCJsdHJcIlxyXG4gICAgICAgICAgICAgICAgICB3cml0aW5nTW9kZT1cImxyLXRiXCJcclxuICAgICAgICAgICAgICAgICAgdW5pY29kZUJpZGk9XCJub3JtYWxcIlxyXG4gICAgICAgICAgICAgICAgICB0ZXh0RGVjb3JhdGlvbj1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSAwIDAgMSA1NTY5LjY0IDQ5NDkpXCJcclxuICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAge1wib24gXCJ9XHJcbiAgICAgICAgICAgICAgICA8L3RleHQ+XHJcbiAgICAgICAgICAgICAgICA8dGV4dFxyXG4gICAgICAgICAgICAgICAgICBmaWxsPVwiIzAwMDAwMFwiXHJcbiAgICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5PXsxfVxyXG4gICAgICAgICAgICAgICAgICBmb250RmFtaWx5PVwiQWN1bWluIFBybyxBY3VtaW4gUHJvX01TRm9udFNlcnZpY2Usc2Fucy1zZXJpZlwiXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRTdHlsZT1cIm5vcm1hbFwiXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRWYXJpYW50PVwibm9ybWFsXCJcclxuICAgICAgICAgICAgICAgICAgZm9udFdlaWdodD17NzAwfVxyXG4gICAgICAgICAgICAgICAgICBmb250U3RyZXRjaD1cIm5vcm1hbFwiXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRTaXplPXsxMTl9XHJcbiAgICAgICAgICAgICAgICAgIHRleHRBbmNob3I9XCJzdGFydFwiXHJcbiAgICAgICAgICAgICAgICAgIGRpcmVjdGlvbj1cImx0clwiXHJcbiAgICAgICAgICAgICAgICAgIHdyaXRpbmdNb2RlPVwibHItdGJcIlxyXG4gICAgICAgICAgICAgICAgICB1bmljb2RlQmlkaT1cIm5vcm1hbFwiXHJcbiAgICAgICAgICAgICAgICAgIHRleHREZWNvcmF0aW9uPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxIDAgMCAxIDQ3MDIuODIgNTA5MilcIlxyXG4gICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICB7XCJyZWd1bGF0b3J5XCJ9XHJcbiAgICAgICAgICAgICAgICA8L3RleHQ+XHJcbiAgICAgICAgICAgICAgICA8dGV4dFxyXG4gICAgICAgICAgICAgICAgICBmaWxsPVwiIzAwMDAwMFwiXHJcbiAgICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5PXsxfVxyXG4gICAgICAgICAgICAgICAgICBmb250RmFtaWx5PVwiQWN1bWluIFBybyxBY3VtaW4gUHJvX01TRm9udFNlcnZpY2Usc2Fucy1zZXJpZlwiXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRTdHlsZT1cIm5vcm1hbFwiXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRWYXJpYW50PVwibm9ybWFsXCJcclxuICAgICAgICAgICAgICAgICAgZm9udFdlaWdodD17NzAwfVxyXG4gICAgICAgICAgICAgICAgICBmb250U3RyZXRjaD1cIm5vcm1hbFwiXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRTaXplPXsxMTl9XHJcbiAgICAgICAgICAgICAgICAgIHRleHRBbmNob3I9XCJzdGFydFwiXHJcbiAgICAgICAgICAgICAgICAgIGRpcmVjdGlvbj1cImx0clwiXHJcbiAgICAgICAgICAgICAgICAgIHdyaXRpbmdNb2RlPVwibHItdGJcIlxyXG4gICAgICAgICAgICAgICAgICB1bmljb2RlQmlkaT1cIm5vcm1hbFwiXHJcbiAgICAgICAgICAgICAgICAgIHRleHREZWNvcmF0aW9uPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxIDAgMCAxIDUyNzcuNDUgNTA5MilcIlxyXG4gICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICB7XCIsIFwifVxyXG4gICAgICAgICAgICAgICAgPC90ZXh0PlxyXG4gICAgICAgICAgICAgICAgPHRleHRcclxuICAgICAgICAgICAgICAgICAgZmlsbD1cIiMwMDAwMDBcIlxyXG4gICAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eT17MX1cclxuICAgICAgICAgICAgICAgICAgZm9udEZhbWlseT1cIkFjdW1pbiBQcm8sQWN1bWluIFByb19NU0ZvbnRTZXJ2aWNlLHNhbnMtc2VyaWZcIlxyXG4gICAgICAgICAgICAgICAgICBmb250U3R5bGU9XCJub3JtYWxcIlxyXG4gICAgICAgICAgICAgICAgICBmb250VmFyaWFudD1cIm5vcm1hbFwiXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRXZWlnaHQ9ezcwMH1cclxuICAgICAgICAgICAgICAgICAgZm9udFN0cmV0Y2g9XCJub3JtYWxcIlxyXG4gICAgICAgICAgICAgICAgICBmb250U2l6ZT17MTE5fVxyXG4gICAgICAgICAgICAgICAgICB0ZXh0QW5jaG9yPVwic3RhcnRcIlxyXG4gICAgICAgICAgICAgICAgICBkaXJlY3Rpb249XCJsdHJcIlxyXG4gICAgICAgICAgICAgICAgICB3cml0aW5nTW9kZT1cImxyLXRiXCJcclxuICAgICAgICAgICAgICAgICAgdW5pY29kZUJpZGk9XCJub3JtYWxcIlxyXG4gICAgICAgICAgICAgICAgICB0ZXh0RGVjb3JhdGlvbj1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSAwIDAgMSA1MzM4LjE4IDUwOTIpXCJcclxuICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAge1wiZXRoaWNhbFwifVxyXG4gICAgICAgICAgICAgICAgPC90ZXh0PlxyXG4gICAgICAgICAgICAgICAgPHRleHRcclxuICAgICAgICAgICAgICAgICAgZmlsbD1cIiMwMDAwMDBcIlxyXG4gICAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eT17MX1cclxuICAgICAgICAgICAgICAgICAgZm9udEZhbWlseT1cIkFjdW1pbiBQcm8sQWN1bWluIFByb19NU0ZvbnRTZXJ2aWNlLHNhbnMtc2VyaWZcIlxyXG4gICAgICAgICAgICAgICAgICBmb250U3R5bGU9XCJub3JtYWxcIlxyXG4gICAgICAgICAgICAgICAgICBmb250VmFyaWFudD1cIm5vcm1hbFwiXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRXZWlnaHQ9ezcwMH1cclxuICAgICAgICAgICAgICAgICAgZm9udFN0cmV0Y2g9XCJub3JtYWxcIlxyXG4gICAgICAgICAgICAgICAgICBmb250U2l6ZT17MTE5fVxyXG4gICAgICAgICAgICAgICAgICB0ZXh0QW5jaG9yPVwic3RhcnRcIlxyXG4gICAgICAgICAgICAgICAgICBkaXJlY3Rpb249XCJsdHJcIlxyXG4gICAgICAgICAgICAgICAgICB3cml0aW5nTW9kZT1cImxyLXRiXCJcclxuICAgICAgICAgICAgICAgICAgdW5pY29kZUJpZGk9XCJub3JtYWxcIlxyXG4gICAgICAgICAgICAgICAgICB0ZXh0RGVjb3JhdGlvbj1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSAwIDAgMSA1NzQzLjIzIDUwOTIpXCJcclxuICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAge1wiJiBcIn1cclxuICAgICAgICAgICAgICAgIDwvdGV4dD5cclxuICAgICAgICAgICAgICAgIDx0ZXh0XHJcbiAgICAgICAgICAgICAgICAgIGZpbGw9XCIjMDAwMDAwXCJcclxuICAgICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk9ezF9XHJcbiAgICAgICAgICAgICAgICAgIGZvbnRGYW1pbHk9XCJBY3VtaW4gUHJvLEFjdW1pbiBQcm9fTVNGb250U2VydmljZSxzYW5zLXNlcmlmXCJcclxuICAgICAgICAgICAgICAgICAgZm9udFN0eWxlPVwibm9ybWFsXCJcclxuICAgICAgICAgICAgICAgICAgZm9udFZhcmlhbnQ9XCJub3JtYWxcIlxyXG4gICAgICAgICAgICAgICAgICBmb250V2VpZ2h0PXs3MDB9XHJcbiAgICAgICAgICAgICAgICAgIGZvbnRTdHJldGNoPVwibm9ybWFsXCJcclxuICAgICAgICAgICAgICAgICAgZm9udFNpemU9ezExOX1cclxuICAgICAgICAgICAgICAgICAgdGV4dEFuY2hvcj1cInN0YXJ0XCJcclxuICAgICAgICAgICAgICAgICAgZGlyZWN0aW9uPVwibHRyXCJcclxuICAgICAgICAgICAgICAgICAgd3JpdGluZ01vZGU9XCJsci10YlwiXHJcbiAgICAgICAgICAgICAgICAgIHVuaWNvZGVCaWRpPVwibm9ybWFsXCJcclxuICAgICAgICAgICAgICAgICAgdGV4dERlY29yYXRpb249XCJub25lXCJcclxuICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEgMCAwIDEgNDc0OC42NSA1MjM1KVwiXHJcbiAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgIHtcImxlZ2FsIFwifVxyXG4gICAgICAgICAgICAgICAgPC90ZXh0PlxyXG4gICAgICAgICAgICAgICAgPHRleHRcclxuICAgICAgICAgICAgICAgICAgZmlsbD1cIiMwMDAwMDBcIlxyXG4gICAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eT17MX1cclxuICAgICAgICAgICAgICAgICAgZm9udEZhbWlseT1cIkFjdW1pbiBQcm8sQWN1bWluIFByb19NU0ZvbnRTZXJ2aWNlLHNhbnMtc2VyaWZcIlxyXG4gICAgICAgICAgICAgICAgICBmb250U3R5bGU9XCJub3JtYWxcIlxyXG4gICAgICAgICAgICAgICAgICBmb250VmFyaWFudD1cIm5vcm1hbFwiXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRXZWlnaHQ9ezcwMH1cclxuICAgICAgICAgICAgICAgICAgZm9udFN0cmV0Y2g9XCJub3JtYWxcIlxyXG4gICAgICAgICAgICAgICAgICBmb250U2l6ZT17MTE5fVxyXG4gICAgICAgICAgICAgICAgICB0ZXh0QW5jaG9yPVwic3RhcnRcIlxyXG4gICAgICAgICAgICAgICAgICBkaXJlY3Rpb249XCJsdHJcIlxyXG4gICAgICAgICAgICAgICAgICB3cml0aW5nTW9kZT1cImxyLXRiXCJcclxuICAgICAgICAgICAgICAgICAgdW5pY29kZUJpZGk9XCJub3JtYWxcIlxyXG4gICAgICAgICAgICAgICAgICB0ZXh0RGVjb3JhdGlvbj1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSAwIDAgMSA1MDQ1Ljk5IDUyMzUpXCJcclxuICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAge1wicmVxdWlyZW1lbnRzXCJ9XHJcbiAgICAgICAgICAgICAgICA8L3RleHQ+XHJcbiAgICAgICAgICAgICAgICA8dGV4dFxyXG4gICAgICAgICAgICAgICAgICBmaWxsPVwiIzAwMDAwMFwiXHJcbiAgICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5PXsxfVxyXG4gICAgICAgICAgICAgICAgICBmb250RmFtaWx5PVwiQWN1bWluIFBybyxBY3VtaW4gUHJvX01TRm9udFNlcnZpY2Usc2Fucy1zZXJpZlwiXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRTdHlsZT1cIm5vcm1hbFwiXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRWYXJpYW50PVwibm9ybWFsXCJcclxuICAgICAgICAgICAgICAgICAgZm9udFdlaWdodD17NzAwfVxyXG4gICAgICAgICAgICAgICAgICBmb250U3RyZXRjaD1cIm5vcm1hbFwiXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRTaXplPXsxMTl9XHJcbiAgICAgICAgICAgICAgICAgIHRleHRBbmNob3I9XCJzdGFydFwiXHJcbiAgICAgICAgICAgICAgICAgIGRpcmVjdGlvbj1cImx0clwiXHJcbiAgICAgICAgICAgICAgICAgIHdyaXRpbmdNb2RlPVwibHItdGJcIlxyXG4gICAgICAgICAgICAgICAgICB1bmljb2RlQmlkaT1cIm5vcm1hbFwiXHJcbiAgICAgICAgICAgICAgICAgIHRleHREZWNvcmF0aW9uPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxIDAgMCAxIDQ4MzAuODUgNTM3OClcIlxyXG4gICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICB7XCJvZmZlclwifVxyXG4gICAgICAgICAgICAgICAgPC90ZXh0PlxyXG4gICAgICAgICAgICAgICAgPHRleHRcclxuICAgICAgICAgICAgICAgICAgZmlsbD1cIiMwMDAwMDBcIlxyXG4gICAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eT17MX1cclxuICAgICAgICAgICAgICAgICAgZm9udEZhbWlseT1cIkFjdW1pbiBQcm8sQWN1bWluIFByb19NU0ZvbnRTZXJ2aWNlLHNhbnMtc2VyaWZcIlxyXG4gICAgICAgICAgICAgICAgICBmb250U3R5bGU9XCJub3JtYWxcIlxyXG4gICAgICAgICAgICAgICAgICBmb250VmFyaWFudD1cIm5vcm1hbFwiXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRXZWlnaHQ9ezcwMH1cclxuICAgICAgICAgICAgICAgICAgZm9udFN0cmV0Y2g9XCJub3JtYWxcIlxyXG4gICAgICAgICAgICAgICAgICBmb250U2l6ZT17MTE5fVxyXG4gICAgICAgICAgICAgICAgICB0ZXh0QW5jaG9yPVwic3RhcnRcIlxyXG4gICAgICAgICAgICAgICAgICBkaXJlY3Rpb249XCJsdHJcIlxyXG4gICAgICAgICAgICAgICAgICB3cml0aW5nTW9kZT1cImxyLXRiXCJcclxuICAgICAgICAgICAgICAgICAgdW5pY29kZUJpZGk9XCJub3JtYWxcIlxyXG4gICAgICAgICAgICAgICAgICB0ZXh0RGVjb3JhdGlvbj1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSAwIDAgMSA1MTE5LjYgNTM3OClcIlxyXG4gICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICB7XCJsaW1pdGF0aW9uc1wifVxyXG4gICAgICAgICAgICAgICAgPC90ZXh0PlxyXG4gICAgICAgICAgICAgICAgPHRleHRcclxuICAgICAgICAgICAgICAgICAgZmlsbD1cIiMzMjIzMkNcIlxyXG4gICAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eT17MX1cclxuICAgICAgICAgICAgICAgICAgZm9udEZhbWlseT1cIkFjdW1pbiBQcm8sQWN1bWluIFByb19NU0ZvbnRTZXJ2aWNlLHNhbnMtc2VyaWZcIlxyXG4gICAgICAgICAgICAgICAgICBmb250U3R5bGU9XCJub3JtYWxcIlxyXG4gICAgICAgICAgICAgICAgICBmb250VmFyaWFudD1cIm5vcm1hbFwiXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRXZWlnaHQ9ezQwMH1cclxuICAgICAgICAgICAgICAgICAgZm9udFN0cmV0Y2g9XCJub3JtYWxcIlxyXG4gICAgICAgICAgICAgICAgICBmb250U2l6ZT17OTJ9XHJcbiAgICAgICAgICAgICAgICAgIHRleHRBbmNob3I9XCJzdGFydFwiXHJcbiAgICAgICAgICAgICAgICAgIGRpcmVjdGlvbj1cImx0clwiXHJcbiAgICAgICAgICAgICAgICAgIHdyaXRpbmdNb2RlPVwibHItdGJcIlxyXG4gICAgICAgICAgICAgICAgICB1bmljb2RlQmlkaT1cIm5vcm1hbFwiXHJcbiAgICAgICAgICAgICAgICAgIHRleHREZWNvcmF0aW9uPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxIDAgMCAxIDYyMy40NTcgNDM2MSlcIlxyXG4gICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICB7XCJJbnRlcm5hbCBwb3NpdGl2ZSBmYWN0b3JzIFwifVxyXG4gICAgICAgICAgICAgICAgPC90ZXh0PlxyXG4gICAgICAgICAgICAgICAgPHRleHRcclxuICAgICAgICAgICAgICAgICAgZmlsbD1cIiMzMjIzMkNcIlxyXG4gICAgICAgICAgICAgICAgICBmaWxsT3BhY2l0eT17MX1cclxuICAgICAgICAgICAgICAgICAgZm9udEZhbWlseT1cIkFjdW1pbiBQcm8sQWN1bWluIFByb19NU0ZvbnRTZXJ2aWNlLHNhbnMtc2VyaWZcIlxyXG4gICAgICAgICAgICAgICAgICBmb250U3R5bGU9XCJub3JtYWxcIlxyXG4gICAgICAgICAgICAgICAgICBmb250VmFyaWFudD1cIm5vcm1hbFwiXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRXZWlnaHQ9ezQwMH1cclxuICAgICAgICAgICAgICAgICAgZm9udFN0cmV0Y2g9XCJub3JtYWxcIlxyXG4gICAgICAgICAgICAgICAgICBmb250U2l6ZT17OTJ9XHJcbiAgICAgICAgICAgICAgICAgIHRleHRBbmNob3I9XCJzdGFydFwiXHJcbiAgICAgICAgICAgICAgICAgIGRpcmVjdGlvbj1cImx0clwiXHJcbiAgICAgICAgICAgICAgICAgIHdyaXRpbmdNb2RlPVwibHItdGJcIlxyXG4gICAgICAgICAgICAgICAgICB1bmljb2RlQmlkaT1cIm5vcm1hbFwiXHJcbiAgICAgICAgICAgICAgICAgIHRleHREZWNvcmF0aW9uPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxIDAgMCAxIDY5OS4wODIgNDQ3MSlcIlxyXG4gICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICB7XCJwcm92aWRlIGFkdmFudGFnZXNcIn1cclxuICAgICAgICAgICAgICAgIDwvdGV4dD5cclxuICAgICAgICAgICAgICAgIDx0ZXh0XHJcbiAgICAgICAgICAgICAgICAgIGZpbGw9XCIjMzIyMzJDXCJcclxuICAgICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk9ezF9XHJcbiAgICAgICAgICAgICAgICAgIGZvbnRGYW1pbHk9XCJBY3VtaW4gUHJvLEFjdW1pbiBQcm9fTVNGb250U2VydmljZSxzYW5zLXNlcmlmXCJcclxuICAgICAgICAgICAgICAgICAgZm9udFN0eWxlPVwibm9ybWFsXCJcclxuICAgICAgICAgICAgICAgICAgZm9udFZhcmlhbnQ9XCJub3JtYWxcIlxyXG4gICAgICAgICAgICAgICAgICBmb250V2VpZ2h0PXs0MDB9XHJcbiAgICAgICAgICAgICAgICAgIGZvbnRTdHJldGNoPVwibm9ybWFsXCJcclxuICAgICAgICAgICAgICAgICAgZm9udFNpemU9ezkyfVxyXG4gICAgICAgICAgICAgICAgICB0ZXh0QW5jaG9yPVwic3RhcnRcIlxyXG4gICAgICAgICAgICAgICAgICBkaXJlY3Rpb249XCJsdHJcIlxyXG4gICAgICAgICAgICAgICAgICB3cml0aW5nTW9kZT1cImxyLXRiXCJcclxuICAgICAgICAgICAgICAgICAgdW5pY29kZUJpZGk9XCJub3JtYWxcIlxyXG4gICAgICAgICAgICAgICAgICB0ZXh0RGVjb3JhdGlvbj1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSAwIDAgMSAxOTk4LjUyIDQzNjApXCJcclxuICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAge1wiSW50ZXJuYWwgbmVnYXRpdmUgZmFjdG9ycyBcIn1cclxuICAgICAgICAgICAgICAgIDwvdGV4dD5cclxuICAgICAgICAgICAgICAgIDx0ZXh0XHJcbiAgICAgICAgICAgICAgICAgIGZpbGw9XCIjMzIyMzJDXCJcclxuICAgICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk9ezF9XHJcbiAgICAgICAgICAgICAgICAgIGZvbnRGYW1pbHk9XCJBY3VtaW4gUHJvLEFjdW1pbiBQcm9fTVNGb250U2VydmljZSxzYW5zLXNlcmlmXCJcclxuICAgICAgICAgICAgICAgICAgZm9udFN0eWxlPVwibm9ybWFsXCJcclxuICAgICAgICAgICAgICAgICAgZm9udFZhcmlhbnQ9XCJub3JtYWxcIlxyXG4gICAgICAgICAgICAgICAgICBmb250V2VpZ2h0PXs0MDB9XHJcbiAgICAgICAgICAgICAgICAgIGZvbnRTdHJldGNoPVwibm9ybWFsXCJcclxuICAgICAgICAgICAgICAgICAgZm9udFNpemU9ezkyfVxyXG4gICAgICAgICAgICAgICAgICB0ZXh0QW5jaG9yPVwic3RhcnRcIlxyXG4gICAgICAgICAgICAgICAgICBkaXJlY3Rpb249XCJsdHJcIlxyXG4gICAgICAgICAgICAgICAgICB3cml0aW5nTW9kZT1cImxyLXRiXCJcclxuICAgICAgICAgICAgICAgICAgdW5pY29kZUJpZGk9XCJub3JtYWxcIlxyXG4gICAgICAgICAgICAgICAgICB0ZXh0RGVjb3JhdGlvbj1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSAwIDAgMSAyMDUzLjc5IDQ0NzApXCJcclxuICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAge1wicHJvdmlkZSBkaXNhZHZhbnRhZ2VcIn1cclxuICAgICAgICAgICAgICAgIDwvdGV4dD5cclxuICAgICAgICAgICAgICAgIDx0ZXh0XHJcbiAgICAgICAgICAgICAgICAgIGZpbGw9XCIjMzIyMzJDXCJcclxuICAgICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk9ezF9XHJcbiAgICAgICAgICAgICAgICAgIGZvbnRGYW1pbHk9XCJBY3VtaW4gUHJvLEFjdW1pbiBQcm9fTVNGb250U2VydmljZSxzYW5zLXNlcmlmXCJcclxuICAgICAgICAgICAgICAgICAgZm9udFN0eWxlPVwibm9ybWFsXCJcclxuICAgICAgICAgICAgICAgICAgZm9udFZhcmlhbnQ9XCJub3JtYWxcIlxyXG4gICAgICAgICAgICAgICAgICBmb250V2VpZ2h0PXs0MDB9XHJcbiAgICAgICAgICAgICAgICAgIGZvbnRTdHJldGNoPVwibm9ybWFsXCJcclxuICAgICAgICAgICAgICAgICAgZm9udFNpemU9ezkyfVxyXG4gICAgICAgICAgICAgICAgICB0ZXh0QW5jaG9yPVwic3RhcnRcIlxyXG4gICAgICAgICAgICAgICAgICBkaXJlY3Rpb249XCJsdHJcIlxyXG4gICAgICAgICAgICAgICAgICB3cml0aW5nTW9kZT1cImxyLXRiXCJcclxuICAgICAgICAgICAgICAgICAgdW5pY29kZUJpZGk9XCJub3JtYWxcIlxyXG4gICAgICAgICAgICAgICAgICB0ZXh0RGVjb3JhdGlvbj1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSAwIDAgMSAzMzk3LjM1IDQzNjApXCJcclxuICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAge1wiRXh0ZXJuYWwgcG9zaXRpdmUgZmFjdG9ycyBcIn1cclxuICAgICAgICAgICAgICAgIDwvdGV4dD5cclxuICAgICAgICAgICAgICAgIDx0ZXh0XHJcbiAgICAgICAgICAgICAgICAgIGZpbGw9XCIjMzIyMzJDXCJcclxuICAgICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk9ezF9XHJcbiAgICAgICAgICAgICAgICAgIGZvbnRGYW1pbHk9XCJBY3VtaW4gUHJvLEFjdW1pbiBQcm9fTVNGb250U2VydmljZSxzYW5zLXNlcmlmXCJcclxuICAgICAgICAgICAgICAgICAgZm9udFN0eWxlPVwibm9ybWFsXCJcclxuICAgICAgICAgICAgICAgICAgZm9udFZhcmlhbnQ9XCJub3JtYWxcIlxyXG4gICAgICAgICAgICAgICAgICBmb250V2VpZ2h0PXs0MDB9XHJcbiAgICAgICAgICAgICAgICAgIGZvbnRTdHJldGNoPVwibm9ybWFsXCJcclxuICAgICAgICAgICAgICAgICAgZm9udFNpemU9ezkyfVxyXG4gICAgICAgICAgICAgICAgICB0ZXh0QW5jaG9yPVwic3RhcnRcIlxyXG4gICAgICAgICAgICAgICAgICBkaXJlY3Rpb249XCJsdHJcIlxyXG4gICAgICAgICAgICAgICAgICB3cml0aW5nTW9kZT1cImxyLXRiXCJcclxuICAgICAgICAgICAgICAgICAgdW5pY29kZUJpZGk9XCJub3JtYWxcIlxyXG4gICAgICAgICAgICAgICAgICB0ZXh0RGVjb3JhdGlvbj1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSAwIDAgMSAzNDM1LjQ2IDQ0NzApXCJcclxuICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAge1wiZW5hYmxlIG5ldyBkaXJlY3Rpb25zXCJ9XHJcbiAgICAgICAgICAgICAgICA8L3RleHQ+XHJcbiAgICAgICAgICAgICAgICA8dGV4dFxyXG4gICAgICAgICAgICAgICAgICBmaWxsPVwiIzMyMjMyQ1wiXHJcbiAgICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5PXsxfVxyXG4gICAgICAgICAgICAgICAgICBmb250RmFtaWx5PVwiQWN1bWluIFBybyxBY3VtaW4gUHJvX01TRm9udFNlcnZpY2Usc2Fucy1zZXJpZlwiXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRTdHlsZT1cIm5vcm1hbFwiXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRWYXJpYW50PVwibm9ybWFsXCJcclxuICAgICAgICAgICAgICAgICAgZm9udFdlaWdodD17NDAwfVxyXG4gICAgICAgICAgICAgICAgICBmb250U3RyZXRjaD1cIm5vcm1hbFwiXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRTaXplPXs5Mn1cclxuICAgICAgICAgICAgICAgICAgdGV4dEFuY2hvcj1cInN0YXJ0XCJcclxuICAgICAgICAgICAgICAgICAgZGlyZWN0aW9uPVwibHRyXCJcclxuICAgICAgICAgICAgICAgICAgd3JpdGluZ01vZGU9XCJsci10YlwiXHJcbiAgICAgICAgICAgICAgICAgIHVuaWNvZGVCaWRpPVwibm9ybWFsXCJcclxuICAgICAgICAgICAgICAgICAgdGV4dERlY29yYXRpb249XCJub25lXCJcclxuICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEgMCAwIDEgNDc3Mi40MiA0MzYwKVwiXHJcbiAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgIHtcIkV4dGVybmFsIG5lZ2F0aXZlIGZhY3RvcnMgXCJ9XHJcbiAgICAgICAgICAgICAgICA8L3RleHQ+XHJcbiAgICAgICAgICAgICAgICA8dGV4dFxyXG4gICAgICAgICAgICAgICAgICBmaWxsPVwiIzMyMjMyQ1wiXHJcbiAgICAgICAgICAgICAgICAgIGZpbGxPcGFjaXR5PXsxfVxyXG4gICAgICAgICAgICAgICAgICBmb250RmFtaWx5PVwiQWN1bWluIFBybyxBY3VtaW4gUHJvX01TRm9udFNlcnZpY2Usc2Fucy1zZXJpZlwiXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRTdHlsZT1cIm5vcm1hbFwiXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRWYXJpYW50PVwibm9ybWFsXCJcclxuICAgICAgICAgICAgICAgICAgZm9udFdlaWdodD17NDAwfVxyXG4gICAgICAgICAgICAgICAgICBmb250U3RyZXRjaD1cIm5vcm1hbFwiXHJcbiAgICAgICAgICAgICAgICAgIGZvbnRTaXplPXs5Mn1cclxuICAgICAgICAgICAgICAgICAgdGV4dEFuY2hvcj1cInN0YXJ0XCJcclxuICAgICAgICAgICAgICAgICAgZGlyZWN0aW9uPVwibHRyXCJcclxuICAgICAgICAgICAgICAgICAgd3JpdGluZ01vZGU9XCJsci10YlwiXHJcbiAgICAgICAgICAgICAgICAgIHVuaWNvZGVCaWRpPVwibm9ybWFsXCJcclxuICAgICAgICAgICAgICAgICAgdGV4dERlY29yYXRpb249XCJub25lXCJcclxuICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEgMCAwIDEgNDc3Ni4xNiA0NDcwKVwiXHJcbiAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgIHtcImltcGFjdCBlbmRhbmdlciBwcm9qZWN0XCJ9XHJcbiAgICAgICAgICAgICAgICA8L3RleHQ+XHJcbiAgICAgICAgICAgICAgPC9nPlxyXG4gICAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICApO1xyXG4gICAgICAgXHJcbn07XHJcblxyXG5cclxuIiwgImltcG9ydCB7IG9wZW5FbGVtZW50IH0gZnJvbSBcIi4uLy4uLy4uL3V0aWxzL29wZW5FbGVtZW50XCI7XHJcblxyXG5leHBvcnQgY29uc3QgSFBVbmRlcnN0YW5kaW5nID0gKCkgPT4gKFxyXG4gIDxzdmdcclxuICAgIHZpZXdCb3g9XCIwIDAgODUzLjA1NjQ1IDU1Ni4wMDg0OFwiXHJcbiAgICBoZWlnaHQ9ezIwMC4wMDg0OH1cclxuICAgIHdpZHRoPXs4NTMuMDU2NDZ9XHJcbiAgICB4bWxTcGFjZT1cInByZXNlcnZlXCJcclxuICAgIGlkPVwic3ZnMlwiXHJcbiAgICB4bWxuc1hsaW5rPVwiaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGlua1wiXHJcbiAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcclxuICA+XHJcbiAgICA8bWV0YWRhdGEgaWQ9XCJtZXRhZGF0YThcIj5cclxuICAgIDwvbWV0YWRhdGE+XHJcbiAgICA8ZGVmcyBpZD1cImRlZnM2XCI+XHJcbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoMzBcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cclxuICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAgIGlkPVwicGF0aDI4XCJcclxuICAgICAgICAgIGQ9XCJNIDIuMTEyZS01LC0xLjIyMDdlLTQgSCAxNDE3LjMyIFYgMTQxNy4zMTk5IEggMi4xMTJlLTUgWlwiXHJcbiAgICAgICAgLz5cclxuICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGg0NlwiIGNsaXBQYXRoVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPlxyXG4gICAgICAgIDxwYXRoXHJcbiAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICBjbGlwUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICB9fVxyXG4gICAgICAgICAgaWQ9XCJwYXRoNDRcIlxyXG4gICAgICAgICAgZD1cIk0gMi4xMTJlLTUsLTEuMjIwN2UtNCBIIDE0MTcuMzIgViAxNDE3LjMxOTkgSCAyLjExMmUtNSBaXCJcclxuICAgICAgICAvPlxyXG4gICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwUGF0aDY2XCIgY2xpcFBhdGhVbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XHJcbiAgICAgICAgPHBhdGhcclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgIH19XHJcbiAgICAgICAgICBpZD1cInBhdGg2NFwiXHJcbiAgICAgICAgICBkPVwiTSAyLjExMmUtNSwtMS4yMjA3ZS00IEggMTQxNy4zMiBWIDE0MTcuMzE5OSBIIDIuMTEyZS01IFpcIlxyXG4gICAgICAgIC8+XHJcbiAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoOTBcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cclxuICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAgIGlkPVwicGF0aDg4XCJcclxuICAgICAgICAgIGQ9XCJNIDU5OS40LDgzMC41MiBIIDY3MiBWIDkwMyBoIC03Mi42IHpcIlxyXG4gICAgICAgIC8+XHJcbiAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgIDxtYXNrXHJcbiAgICAgICAgaWQ9XCJtYXNrOTRcIlxyXG4gICAgICAgIGhlaWdodD17MX1cclxuICAgICAgICB3aWR0aD17MX1cclxuICAgICAgICB5PXswfVxyXG4gICAgICAgIHg9ezB9XHJcbiAgICAgICAgbWFza1VuaXRzPVwidXNlclNwYWNlT25Vc2VcIlxyXG4gICAgICA+XHJcbiAgICAgICAgPGltYWdlXHJcbiAgICAgICAgICBpZD1cImltYWdlOTZcIlxyXG4gICAgICAgICAgeGxpbmtIcmVmPVwiZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFNa0FBQURKQ0FBQUFBQ3NyVW5aQUFBQUFYTkNTVlFJNWdwYm1RQUFDRzlKUkVGVWVKenRuWGxzVkVVY3grZHR0OTFDVjNwdzJISklCYXVGUnNHS1d0RXFod0dCYUR3YkNCQXZrTVFyWHNRRVJSTVJ3WVBESS9FR0xTVDExcENxb0hJRUJLeUdhb0JTYlQwd0xkaFNXbHBLMisxZTR4OWRvTHZ2TjIvbjkyYmZtOWRrUG4vT3pIdjcvYjU1TTIvdUpVU2hVQ2dVQ29WQ29WQW9GQXFGUXFGUU9BL04rcC9JdXVIU1VSbitFOVcvN1BCWi8yUFdNZVd6dzJFYW9mdlFPd1d5OVpoRVczaVFSaFBhT2NPR3R5RGhYTGVmQW13ZUpWc1hGbTFwRURKQ2FlQnVsMnh0S05LK2czMVFTdW1ySGd0K1VPaXRUY3JLVEV2UmdwMXRUZjdZcUhNcXhoaGNXSGFYN2dLSmVFYS8xSEw2SVljM1hUMGdPcktTblNPVVVyck9PZVUrK2I1QWpMZ04zck94MnZ2R1JpaGRMRTk2TkNYZFFFbis4RXowN0hoR2FHQ0VSUFZuR1h3SWx0YzRMaExmRWRjSi9VMnVoUjZ1YjJZKzZhY0lJWVM4RmQ4SURaZElka0VJbWR0cElQQTFqWkE4NE5YVGMxaTJEM0tyejFEZ01rTGU0REZDUTVFMm1LdDQ1YmRWTGI2d3I2SHlrd2R6YlRReS9tUWNoYk9UR3JtYzBLMkVFREoyOWRFb2U3c1cyZFVBU0syTkp6RDRCSjhSZXNwRjhqYm9XelJOOTdwdGNiS09VeVlIUWM5amNJSGFsMitEa2FGY2habVRvNnlJY0ltSkprQVNMdm0yUkg3UXptRkZhSGY0OXRBRS9oQkFraitCV1dMSWMzaHRxTlJySnFKL3dDVFh0bFlncjBDOWtPNzJWT1R0emVNdnJNSmRnS3E5UFNtNG00dVE4am55QXBTVElqdTdyUmV0eEtWSGFic0ZkMjlCa0Y5N1ZPcXJVTGNXSmVORlZISlVpVzlOUjkxYmxPWkJtTlNvUFBIR1Q1SklzbENmWVpTVERwd1NVYlFscU5TWXhKV1g0cVNJNGtzTDh5ZEc1Y2xPckJSQjNNbUl4Q2dubnlLVmlPTEM5RlRpcCszMzZJSXNUN0tMaFAyK1p2T2lUS0VoVytxRzk3cW5sakZPYlF1WVd0ODRUK1krbnl2MElPekV5RW5PaHFtMjZRQ2hpS3JMcU1SUDJ5ZlpDQW1IRUluWlRrcSt5aEhYSWtZNGdFak0vRExPL05MR3pnaUR0aFVUQzNKU2ZZMDFGYnNQL0dmMkpxTzdKRlpaQU9GdkpzZVpDR1BraWFjNXpld3pzSXpqODdZWnZXMXdPZEUrY3A0Uk1taHpSYlpCTkp3bkl3OWJva1VZZXZNbVpoellIdEFxQmxvbVJnaXRKSGs3TXc0S3pLKzJUb3dnNGRjZlljU0FlYkw4TWd1MWlLRmQ3dHZOaUFIQzBwc3cvUUs3NlM0OEJJWkRkZGVGVGpaQ1BMdmd0ajdrNUhKcnBZaVN0UUlNaHB4Y2E2MFNZUmFETlN2azVHS0xsUWp6REJRSWxmaTJBVUNnbzhoczFZZEJlV0x6QUowSm9MY0djaEswV29nd2k0QXc2TzJxRzI2MUVsR0MvZld0WWloUGFxeVhJb2diZU5hUUUrd01ud1FHNjRNZ0p6dXMxaUVPVUx0Q1RuNjNYSWd3UUU4WWNsSzMzM0lsRmdBNW9VdHRsNEdsV3g4RTl1T2R2NVMvVFI4RU9qbko2cGM1aGlaOUVEd2k0V25wYjdFVU1meGV2aThqSWQwWFljYVc3ZWRqWU9DTE1kZHkwbjJkdFZyRWVLQk9IOFljRjk0eXpVb3BnbVR3bG5oQ0NKbkZIRmlTenl1QUVZTlo3T1QxYzYzVElzYkFGaUNRUFg4U21QK1FrN1pXOUdJNVpNUjRaY0c0dFpNc2tTTEc4V3h3cXN0d25yaXh0Q3AzbURWeXpPTzdBdmdzOGpDK3JFYm1QTGFPQUt2OXdiTnV4VHY5eXJ5c1N6TE1QWWtFRTFyMXBPZ3RQcENkR1pSU1NnUHNaanIzeWhCNFdObG0vTGQ4dzR6amRsS1pFQ2xpN0pzRzFyODljSy92eWpTNGlUMDAzYjdIYUNTT2UxWFVpYzhTSUFiRDJGVzlkZE5OUmNOM0dnNHA4cSs1bTdiRnJDWnphQ1Nsb0hESytQUDZkelZVNzk3eis3SDQ2WGxKL2RQV2oyUUl1NStHZjgyZDd3SGtyY1hvd2w2QVdEMzRMWExKdmhqbzlYMElKLzRiN093UzEyTXZ3S3pvckwvYjRvMDZ2VUcvQUtpMXFhV2w5bGxoZjh3WklMZDJmWEs3VGR2Qk96S3c4MUhJSFNVbHVQMEg1dm5DK29tMXlhZmdWbXJyc3dsdDlPSTNpS0IzK1d3L2Z5TVV2Q3EzQWYzYkJtemVtOGk3TVJsWEZ2c0UzNzZRRU41TnNsell0aFVoZCtIVzBPa2Y5WlhQSDBJSUlROG4wTWdMSmpTWnJvbzhCYU9HcEpHTy8vNnBpb3pSemkvbHZmVHJXWEVTL0ZwczgwNlhhQ1p4UC9IQ2pjYnh4eVdmTVpITjdTVEh2Y1VvdWoxUHJoRkNxamlOMUJQaUxqZklrYUd5alpEbG5FNldFRUxJS3NZZ1d2aUFBdzR0dW9MVHlRV0VFRUlLMjZHNDdtY2xtK2loanN0SVE2UzZkRDJ1anl1MzR1Z2xFOHprY2pMaFRQcTBtNDcwanVoNFBGUGsxeFBadFBYOHpWRllHNGYzYWh0cTJTT25YNU0vMk4zNjE4L2wxUTBPbXVTWUVEOUhncm15UlhMaFdoUFh5VXV5TlhLU1VoUEhpRDFOM0VTUWVzVFFTTFY5cHpjSWsvVzNnWkVxZTNlbEMrTDVpV2xrcXpOelpHRHh1MzkwbmpyNGVwRnVydXNOK0RDcEx2d1JLbmFRc2Y2TXd0RHEyTlU2bzJwQ09oK2hBODVjOEhwenRNd0pzZkg1c1EyWFdzZE5JZmV3T2h5dE02eWJ4WFJsM0hYMnlOUjljOUtkYzJoaUZDdjBoZUJCSUpsM1dGN0J4V011eUhiZ05yd0lKZnBTUUlQWHlGWmxndjcxVU0xVTY1RDJPSVpuSUNPVTNpbGJGNTVxMk1rZTJiclE1TUpHS0pXOUJ4M2QvNytSRldIYklXVU0wRTdHc1NKa2oxS2huVEIzQk12ZTNJVjIwc21LQUphNjJ3cmF5VitzaUNOaVFvUkJPMkdlVGVTSUE0TXh1RS9BbFhCakFrL2VNUVU2VDRJL3dPRWZZczVHY1FhWGdHUFRnVDczendDRWtEY2hKMC9MVm1VRzd3RzlrYjNPSEd5SXg4aC9ZNDM4NGRBVE5PSXlKQ1pYZm5GdXR6QWUycEplcDNHZmdQWVQ5eDIwUmUyQk1LV2h3TEU1c3FYdzRsNndvL0hmTXFESnJxVjYwd2Q0UFE0ZE5kR1J0VE55WmxUTE10bFN4SmpSY3JZNFZEci9LQU0yTTZJTzhhcDE5REVzaHB3YjgyY0EzOHNXWkpyM1lyNS93Ykd5Rlpta1gxdnNwN3pQZFVFaTNLWnJYWFhaODQ4TDVqRG9uK2lIZXBNZHNLYUVpWUUyL2FGeVNVNytEQm80MGEvUnQzRUpOeDRESi9yVEpJTE8zbXZPWklTdXhKOTA4dHRseEkreFR1NlhyY2dzVTJPTUhPdXJXVUxJMmlnanZpTFplc3lUWE5yTFNPYzgyWEpFY0MwKzA4dXRLcFl0UnBEMGx5dGJndjZqTys3c3UyVkVvVkFvRkFxRlFxRlFLQlFLaFVLaFVFamtmL0xkM0loYnVwbzdBQUFBQUVsRlRrU3VRbUNDXCJcclxuICAgICAgICAgIHByZXNlcnZlQXNwZWN0UmF0aW89XCJub25lXCJcclxuICAgICAgICAgIC8qIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIGltYWdlUmVuZGVyaW5nOiBcIm9wdGltaXplU3BlZWRcIixcclxuICAgICAgICAgIH19Ki9cclxuICAgICAgICAgIGhlaWdodD17MX1cclxuICAgICAgICAgIHdpZHRoPXsxfVxyXG4gICAgICAgIC8+XHJcbiAgICAgIDwvbWFzaz5cclxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGgxMDZcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cclxuICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAgIGlkPVwicGF0aDEwNFwiXHJcbiAgICAgICAgICBkPVwibSA3MTEuODQsNzE0LjYgaCA2OC4wNCB2IDY4LjA0IGggLTY4LjA0IHpcIlxyXG4gICAgICAgIC8+XHJcbiAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgIDxtYXNrXHJcbiAgICAgICAgaWQ9XCJtYXNrMTEwXCJcclxuICAgICAgICBoZWlnaHQ9ezF9XHJcbiAgICAgICAgd2lkdGg9ezF9XHJcbiAgICAgICAgeT17MH1cclxuICAgICAgICB4PXswfVxyXG4gICAgICAgIG1hc2tVbml0cz1cInVzZXJTcGFjZU9uVXNlXCJcclxuICAgICAgPlxyXG4gICAgICAgIDxpbWFnZVxyXG4gICAgICAgICAgaWQ9XCJpbWFnZTExMlwiXHJcbiAgICAgICAgICB4bGlua0hyZWY9XCJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUx3QUFBQzhDQUFBQUFEbklwdDNBQUFBQVhOQ1NWUUk1Z3BibVFBQUJGZEpSRUZVZUp6dDJsdG9GRmNjeC9IWnBNYnRyalhhTnF2eEZrU3NDQzI5MlZpclJLbEtEVlNvb0tqMFJSUXFCVnRxc1JlMnBaQVdvV1JwQzRGVTFCZEZud29WRVUzUnZ0UW1GWVBZZ3RlbVNkUzBsallwMlFkejNlenUvUHVRM1Z4bXpwd3paODdwbmszNWZWN0U1TXlaNzA0T3N6T3phMWtBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFEZ1E4bTJNOTNwM2d1N3c2WkRBbGo5TTQyNnQ5cDBpcXpIVDlHWVZLM3BHaW1oTHpJMFFWK1Y2U0FKdTN0b3NwT21pM3hiOFFzNVpTdE1SL2xUM3BSeHRST3RNNTNseTVjRGpIU2lyYWE3Zk5qaFhPeDVyNWt1RTFyV1pudTAwd3JUYlFLUjg2ekZQcXJ2SWROMWZIVWpudWxFYjV1dTQ2cmhwZFB2SmFiN09Dcis0cVZUYW9IcFFHL1IwOXgwYXBzNVBqYWtaNWZoTXRtL3BUMlVadnkwYkc4RGQ2dHN3N3VTK3hHSUxHL3M1eDh0cHV5aG1IT21VSFdXdjAxeWxkNzBPZlhlNXpRQmU5L2t2L3ZpRHNINDVqS3Q2WlVKejNjU1Arb25UQlU3SmhpY2ltdE5yMnBVU2llaVYvSlRoZmR4VDQ5RTFMVmNaL3F5NDRybFJIUXpQOWs5d1VEN2xLWlRpMlZabHZYMHQrcnBSUFJNYnJvNy9HR3BQZnJLUTZ1KzA1Sk85RUZ1eG12Y1VUZm1Nak9Ddk5XRzF2OXdhVlBnRno3Wnd0eS9JN3hCalUvK3pmeTUvQVZhYVBQSEwwaHY1R2xBM0RHNC9heXV2ZTI4cm1uQmpNcmZGUDNxT2VMaW83clMzK2pVbWs1OUQrY203dllhOFdHcG52TFFnZnQ2MDRtK3prMDl5K050dW51bG52VFNPcTlieXVBNjhnZitIZmJ2dnluWGtsNzJWVko3T25WVjVxZDNQNXdoSW51WGx0dU82TkVIK3RPemlXaCsvcFdzcThuT3BhSXNQMis2NVljM1I2UmU2L2RYaFVPb3Q2VTlPZmEvSzR6bkFVZjJEMHJ0bE9teGM4T3l4L1F0eVYyODc1NWlwRmJEdFV5c1JYUzFweDcvb25zWHR6V2MzT2RlRDNTbklSZi94S0JyZ25wL2IveThVZk5iNSttOER2WHcwa1ZudzFEMURYK2JlcCtNRnZYZm4xK0E5czkvY3JiZml2aHM5MUx5VklDbExyOXNTbXVHbk50bTMxTXJ0NmE5ckpMdU4zNTZSWjM3TGpMcGVxVEF3VmdZNFZkUFRwZVlnZUhxYjhJaDRkanpyQThsZjF5cnRPTVplMXgveVlJWjNxbVVQbnQveWxnNjNYbEVKVDMyU2RwY09oMVR1UXhia0JBOGJQdFBKVGNxcEM4NVpMQ2M2TkpzaFhZcmJqSTk4Mm1nSlROMmg5aWNYcS95MnBYOFVYdUNnbXczZm50cnJ2NzBwZzcxU2N5c25PRTNBd2RQZkxCZzVOaTNiV2dLdk8ya3B5SUc2bzl1K1ZQYlhBVmVPZjFxSDhRN25rY1Y5dGhmVzlPcWQ4TENIZnZNQWYwZnd4ZW1QblZsN3h6bFZNYjFmUHlnOUN3RGx5KzNkZzBPcGRJakdadHM1U2dWVXNlK08vRnM1UXlqdVE1KzZ4OGNySW9VNEI1ZDBrYyt5bnRlanhaZnVHVlo0dnJNWjlOTUozTHc2dTJlNTB6bkNYaXVlN3Q5bHVrMk1ZOWpmMWY5OUZ3SXJHUC96NVQ1RHJXclBwMG8wdk1MaTZPK2ZaN3BJQ2tUNisyR1l2NVdIY3Q0ZmErNSsvUEE4dlUzMmQrN0tIS2o5VTFSOGNoaUZDZWl3MU50dVkrSjAxUTZRenJWbUE0QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFJRC9zWDhCN3pzUUFtZkdLRlFBQUFBQVNVVk9SSzVDWUlJPVwiXHJcbiAgICAgICAgICBwcmVzZXJ2ZUFzcGVjdFJhdGlvPVwibm9uZVwiXHJcbiAgICAgICAgICAvKiBzdHlsZT17e1xyXG4gICAgICAgICAgICBpbWFnZVJlbmRlcmluZzogXCJvcHRpbWl6ZVNwZWVkXCIsXHJcbiAgICAgICAgICB9fSovXHJcbiAgICAgICAgICBoZWlnaHQ9ezF9XHJcbiAgICAgICAgICB3aWR0aD17MX1cclxuICAgICAgICAvPlxyXG4gICAgICA8L21hc2s+XHJcbiAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXBQYXRoMTIyXCIgY2xpcFBhdGhVbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XHJcbiAgICAgICAgPHBhdGhcclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIGNsaXBSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgIH19XHJcbiAgICAgICAgICBpZD1cInBhdGgxMjBcIlxyXG4gICAgICAgICAgZD1cIm0gNTk2LjQsNjAyLjE2IGggNzMuNjggdiA3My42OCBIIDU5Ni40IFpcIlxyXG4gICAgICAgIC8+XHJcbiAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgIDxtYXNrXHJcbiAgICAgICAgaWQ9XCJtYXNrMTI2XCJcclxuICAgICAgICBoZWlnaHQ9ezF9XHJcbiAgICAgICAgd2lkdGg9ezF9XHJcbiAgICAgICAgeT17MH1cclxuICAgICAgICB4PXswfVxyXG4gICAgICAgIG1hc2tVbml0cz1cInVzZXJTcGFjZU9uVXNlXCJcclxuICAgICAgPlxyXG4gICAgICAgIDxpbWFnZVxyXG4gICAgICAgICAgaWQ9XCJpbWFnZTEyOFwiXHJcbiAgICAgICAgICB4bGlua0hyZWY9XCJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQU13QUFBRE1DQUFBQUFBYVNSTXVBQUFBQVhOQ1NWUUk1Z3BibVFBQUNpbEpSRUZVZUp6dG5YOXdGZFVWeCsrKy9EQ0JpQ0lTZm96WVRHT1pUcVdGa2Y2UWNTeFNPa1V5b3REU1VVY3hESFdtV2hScWY5QXBhQ0VtcHNrUWJIQWdZeHhuQ2hITDFOb1VEVTZoMEdxUjFGS0NEWXhKcTBCcUllandTS0NFRUpLWDk5N3BIeS9KTy9lZXU3dDNuOW05MituOS9FVjJ6MTIrMyt6ZGUzZnZuck5oekdBd0dBd0dnOEZnTUJnTUJvUEJZREFZREFiRENGWm16Y2JPK3Z4TkV3dnlXT3h5MThuMmxvdWpxeWxqTWpDVE0vOXI4MmJtb0EzUS90YitQMTRhTlVuQlljMnE3Z1VKVityblJIUnI4MGprUzIvTG5LUm91ejFMdHo0dlREbHNid1VBNFBTbk1yd0VnOGZhN0d3RkFHRDcvOGpKbVhUVzNRdEFkSVp1blNvc3VhVGlCYUQzRWQxSzNWbVRVUE1DRUsvU3JkV05jbFVyQUpDczBhM1dtWFVldkFBa3EzWHJkZUwrcEV6eXBhNnVIcHZPVng3ZVFhMm9UeFE3ME5HdzhCckdHQnN6Ny9ualZ5UnUxb2ZWVGFSYlVOcGZQd2J2ejYwZ1pnRTJoUFRtNWcxQjU5WThNU0ozTGUxdWxUcWt1dkpaWHVTSHhiS2dxY2RFTThtTlFRdFY0S3BUbk1iR2ErUmhZK3FKbTAzQkNsWGhiazdoaTFmWnhXVlZoTjlOSG5kaUdtMjlNR1k5SGZxZXRwQzdYbXo2V0FxcmtyaXBETmVZdGh1THU4azUxcW9oazJ0Wm1PYWJhVmpaVnRmd3pXU0lEdFBzK1NqUzFVL21GMHF0YUFiSy9SZXB5bXRJVnIxS2cycmlKalIzblpHZXRLaUJNZTd4akZuaEhhRm5JMUVkYWswa0kvU3ovb3BVQlY4eURZcHRKRzdDOGJTMkJVbTZVN1dScEtldDhWT2tLcjlEZ2h3blRBNkxqQUtKSlQ2S1ZPVkFXbytudGVSYU10OUk3N1dENWQyMG1pNVBEVGVMOXdKWHJ2WkpvanB0bVpwaE5lS3ArYVUvQ2ozd1hscE1qN2VXOUs3ekRsOFVlZ0IxczZUU25KbUdqTkR2NTdnMzhwVS9Jekh6UExhMXlnUTNEL3NpVVoxR3BPVjVyNDB0WVJuMGcydy9KS3FESjgzam5sdEg2bmczRC9pZzBBT1BJQ2xYY2owM3p6M0ttWG5UQjRVZXVBVnJxZkRlUHA5YkhreE9ISDJGWGtDUEFORG4vZFN3WmR5cDBid3d1QXRyV1p2QkFiakZuY09qcnM4VCtLS0J4RlR2QjFpQkQ2QTUrZUVHcnBzY2M1czRDNmVMNndRUjdrM29GLzNTcVVZVDU2YmVhYTJsb093a3dPQ0JiL0pidWJXcVozelY2c29Demd4VTJML29uelk4RHRkeEszL0xjZk9EdnV0MUpMZVRkL08wblp2OHY0M0U3TUF4aGZoaHdQdkVPN29zNU0xQXBZMmJKMURNS3pnbWluWjBCaUxabmh6eHZabk42c1RmY1V3VDZtbjRMdUJjTUpydCtZeGdKcmxaRmhXSmMwR042WFBUakRhZkQweTFEZGFyZ3B0RXJTUnFuQkMwYzhUTlFiVDFRb0M2NVdSM0NVS2htbDQzbHBpTjBqRGMwMXJReHU1Z2xjdVllVmwwSXhtaDk0b3gyNGJjZEtCdFp3TldMdVBSdUtpVWp0Q0x4SkFoTnprRGFOT3A0TFZUcXNoYkpPcW1UZ3lCQm9zeDlsVzg1WDBOMmltYmlCdlMweUk3aUp1ZEZ2K3dDbnUwaUNjb3ZIZXhYaUV4alJHODlBYndoQTdwRW1pU0ZobWhyU1lTMDFUTS9YaUREdVVTc3RhTFFoTms5b3cwaWpIQTVRMS9wRU80bEt3Tm90QmtqWGpkV0R1Skc4eWZ0QWlYRXFra293QzU2N1Fhbk15czBLTGJobzN1STNSa203Mlg4dzc1SFJxZ0kzU1pCemN2YWRGc0QzVlRMbWFVUk94NldtSzJGc2tPMEo1V0p5Nm4yWTBDcjJzUjdNalBpY2lqK1VLSVJVZG9BRWplcWtXdkl4SHhUUVZBM3pJeGhzNmVBQzhJTWZOKzltcEx4Ny9iOXRjdHoyQTViclNnOHczQXFSWDhsVk5NYTJ4aWs5SzdyNi80WnhlK0VlODl0V2RCd0M2R3laS2xuNS9kdmJ3d3RUdG43cFkyU1VEeXNhSG1lZXVPRFVyMm45djlGVDEycW1WSjI1Q01IbTArMk5JeElOc0hBTWxWakRFMmZzc0ZtLzBBZi8yMkZqZDBoRllndVlybHIrdDNER20rWFllYlp6TnlVL0V2dDVERWMyTTF1S0VaaktQRWhjOXBjRlBobHh0WXBDRkw5VHQrbVlFZkIyL0crckpmWnBJNmFxT21ISElYTnBqUlNLRWpFOUphWmo5cHBGUnRtL3hZUm02MFpFSk9yT3B4a1BUbVhNYllxdURPelNjdWVaMzAvZnVLcER2Njk5V21udmxYLzBMNm41eHNiVDl4TnBZM2Nmck5zeVFIZ0kwLythVEtNaUp5MTU1TzhiZmZlNlJzd2tnQXlka0U2RzY0R1IzaEN5OUZhWWkrdXJXaXRjMGQwWjcrZUR6V2Q3NnpmWHNKRnBKM2dpbzlJYnlWenEyaU5hMWh5cndmNFVleWk2SkxmS0pqNzlIMWhYRFZlRERHV0w2OGp2aTBtRk5nMFdMUThOV3QwZWZzRkcwa0JYV3BtSE1idW1vaTZ5TWJNOUJDTXFVWEV6Y2h5YndmWm9YVUNBQUF2SE90R0x3azVHNmFwVDZHM0NpY216RDF0RnpIendpMGtPdG1FWEVUb3JxMUI1eThBTFNUUEtsdmtOV084TlN0dllWbDlkRzd6azR5Mzh5UGlURWJ3dUtHeXdUY3l4NGs1NmFMVkxMTnArdlpPcFJMNEc2cUZ6Q3JsQ2c5VVNDMktTRTFIdUdvV3h1THRaK0xNTWErUzl5MGtqSHRIaklLaEtKdTdRNHM2UStNTWNib2RYTklZYjU1S25EcGxKVlkwWE9wYmZScFRXSDJqQzBOV2pxRlN4OVlQYlNSdWpsRXJodlMweTVvZkZjd0JQZVZnSHVIdDlLZTludlNrb3dDdWxNaUdYc0J5MWs4c3BtTUFvbHBwQ21aYjFZR0tWd0dWNjExZjNyN2NrRW92RXpiZmwyOEY1aEFZM2g4dnZIaGNqTFE2NmJ0RHdJZktGbiszMzlYa3Q5UU4xcXFNcVFFLzJhMzREMFA4ejN0dEt5MWVOZXB1VDV5QXRheW45djFQYzdORzlMbXdnaXQrOVRnak1odXZrOC9qdHpZdllvdTVjekVKd2VnMklFeldFd0p2MjkxMnMwUnUvYjh1KzJIL0pickRQY1Z3YjNDenNlSGU5RVoyeGt4cnhVZjRJRFBhbDNnRnMwdWk3ZVU5NXdCQUlqL1pZcjlBWXE0VStNUUdBQUZYT0p0azdqYnVuUEh2cG9peHlPOGpBOXduMTg2MWVBKzRqUjRuZmNEak1WenB6UjFmd1RmVnd0ZXd6OWtaMUFUM0llbklNMkpVZVA0ajU4MWVmL3Q0ZlR2Ly9pZzBBdS80c3dBeWV0MHhjSy9qa0kvSktvelE4aTlML2ZzQmkrS2FDN0JZMktlSThtRWRBT1BJU1h1NGI1U0xCWjVlRDAzdjBGdDczVUtER0R0OCtSUGhRMVBQdVBORFM3dTByNGVtUFVQNGRUWTFhM1pnSi93SExPNGdsaVZUc3dYdC96QWVmSVR1Qjc5MitPblBQeGdqbmhxcEhWcmR1Q3ZkOC8wVGFNeVZpbGRjVlcvYm82alp1cmZKZklSbXRIbFVGa3NnQXI0d2xDMHhtVFpkcmFWeFFLRjZLenU4MWVrTWpRVFV0SE5pNmhKYUY2bUs5U3R5Y2pCYys3ZHZxdFVKYlB2QmQ2RzR1T2h1UDVUS05TdEVYSng4dkN1QUVTcW9sSzNKbEtLd3hlN1JRZEpGcW1Lb0hWclBOTnhBbnRzWEVBNjFWQ3BXOE9NNDVZUU12bFdqSy9RYWlLSEo0TGMxN2xJL2UrYlJPZ0l2Y2x1bGFPQSs0WVBoUEd2SjFBM3Y1Vi94T25UUjdpb0FmMmZGWlJBZTFyME50clZzci9Gcitza3d6TmhjcER2QlFLMFQrS2ZyTEpuaWpuR3JackV1aEdSVkhvbGU5YWtFMC9HMTVJNnI2akM4cUdlUCtXVDlkUjZ5ZFo0OThVekgxOGNmMlBodGRlUkIrREJXOThOUUZkbVNPdlduQ2pWcmRnUmVkMmFIVC9VTGRjRkw3VlJZZmZDMkpNa1M4NkdXTGo3V0lxbExnVXJRMFJ2MFMxVWlha2Z1RnRKdHVyK3pLc3lLOTI4RElSMDNwY3k0ZGVPWHFwQ2VUOW1UL0ZXOHZHa0lXSnJ3M2ZQNzhya2h3NVFKL0ZkaXowL1Y0YmtMeE5PbVR0bjlveVJwWmZvc2NQdnZKM0I2OHVRbUdHTU1WWjRZK0hWa2NIZWp6OE15MTlPTlJnTUJvUEJZREFZREFhRHdXQXdHQXdHdy84Zi93VmxXMG93R1JTN1dRQUFBQUJKUlU1RXJrSmdnZz09XCJcclxuICAgICAgICAgIHByZXNlcnZlQXNwZWN0UmF0aW89XCJub25lXCJcclxuICAgICAgICAgIC8qIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIGltYWdlUmVuZGVyaW5nOiBcIm9wdGltaXplU3BlZWRcIixcclxuICAgICAgICAgIH19Ki9cclxuICAgICAgICAgIGhlaWdodD17MX1cclxuICAgICAgICAgIHdpZHRoPXsxfVxyXG4gICAgICAgIC8+XHJcbiAgICAgIDwvbWFzaz5cclxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGgxMzhcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cclxuICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAgIGlkPVwicGF0aDEzNlwiXHJcbiAgICAgICAgICBkPVwiTSAwLDE0MTcuMzIgSCAxNDE3LjMyIFYgMy42NjIxZS00IEwgMCwyLjQ0MTRlLTRcIlxyXG4gICAgICAgIC8+XHJcbiAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgIDxsaW5lYXJHcmFkaWVudFxyXG4gICAgICAgIGlkPVwibGluZWFyR3JhZGllbnQxNjZcIlxyXG4gICAgICAgIHNwcmVhZE1ldGhvZD1cInBhZFwiXHJcbiAgICAgICAgZ3JhZGllbnRVbml0cz1cInVzZXJTcGFjZU9uVXNlXCJcclxuICAgICAgICB5Mj17ODYwLjAzOTk4fVxyXG4gICAgICAgIHgyPXs5ODYuMzQ5OTh9XHJcbiAgICAgICAgeTE9ezQwNC40N31cclxuICAgICAgICB4MT17OTQ4LjYzfVxyXG4gICAgICA+XHJcbiAgICAgICAgPHN0b3BcclxuICAgICAgICAgIGlkPVwic3RvcDE0MFwiXHJcbiAgICAgICAgICBvZmZzZXQ9ezB9XHJcbiAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICBzdG9wT3BhY2l0eTogMSxcclxuICAgICAgICAgICAgc3RvcENvbG9yOiBcIiM4NTBlNzhcIixcclxuICAgICAgICAgIH19XHJcbiAgICAgICAgLz5cclxuICAgICAgICA8c3RvcFxyXG4gICAgICAgICAgaWQ9XCJzdG9wMTQyXCJcclxuICAgICAgICAgIG9mZnNldD17MC4wMzMzMzN9XHJcbiAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICBzdG9wT3BhY2l0eTogMSxcclxuICAgICAgICAgICAgc3RvcENvbG9yOiBcIiM4NTBlNzhcIixcclxuICAgICAgICAgIH19XHJcbiAgICAgICAgLz5cclxuICAgICAgICA8c3RvcFxyXG4gICAgICAgICAgaWQ9XCJzdG9wMTQ0XCJcclxuICAgICAgICAgIG9mZnNldD17MC4wN31cclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIHN0b3BPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgICBzdG9wQ29sb3I6IFwiIzg1MGU3OFwiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAvPlxyXG4gICAgICAgIDxzdG9wXHJcbiAgICAgICAgICBpZD1cInN0b3AxNDZcIlxyXG4gICAgICAgICAgb2Zmc2V0PXswLjI3NjY3fVxyXG4gICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgc3RvcE9wYWNpdHk6IDEsXHJcbiAgICAgICAgICAgIHN0b3BDb2xvcjogXCIjMzIyMzJjXCIsXHJcbiAgICAgICAgICB9fVxyXG4gICAgICAgIC8+XHJcbiAgICAgICAgPHN0b3BcclxuICAgICAgICAgIGlkPVwic3RvcDE0OFwiXHJcbiAgICAgICAgICBvZmZzZXQ9ezAuMzMzMzN9XHJcbiAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICBzdG9wT3BhY2l0eTogMSxcclxuICAgICAgICAgICAgc3RvcENvbG9yOiBcIiMzMjIzMmNcIixcclxuICAgICAgICAgIH19XHJcbiAgICAgICAgLz5cclxuICAgICAgICA8c3RvcFxyXG4gICAgICAgICAgaWQ9XCJzdG9wMTUwXCJcclxuICAgICAgICAgIG9mZnNldD17MC4zOX1cclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIHN0b3BPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgICBzdG9wQ29sb3I6IFwiIzMyMjMyY1wiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAvPlxyXG4gICAgICAgIDxzdG9wXHJcbiAgICAgICAgICBpZD1cInN0b3AxNTJcIlxyXG4gICAgICAgICAgb2Zmc2V0PXswLjU5NjY3fVxyXG4gICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgc3RvcE9wYWNpdHk6IDEsXHJcbiAgICAgICAgICAgIHN0b3BDb2xvcjogXCIjODUwZTc4XCIsXHJcbiAgICAgICAgICB9fVxyXG4gICAgICAgIC8+XHJcbiAgICAgICAgPHN0b3BcclxuICAgICAgICAgIGlkPVwic3RvcDE1NFwiXHJcbiAgICAgICAgICBvZmZzZXQ9ezAuNjMzMzN9XHJcbiAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICBzdG9wT3BhY2l0eTogMSxcclxuICAgICAgICAgICAgc3RvcENvbG9yOiBcIiM4NTBlNzhcIixcclxuICAgICAgICAgIH19XHJcbiAgICAgICAgLz5cclxuICAgICAgICA8c3RvcFxyXG4gICAgICAgICAgaWQ9XCJzdG9wMTU2XCJcclxuICAgICAgICAgIG9mZnNldD17MC42NjY2N31cclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIHN0b3BPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgICBzdG9wQ29sb3I6IFwiIzg1MGU3OFwiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAvPlxyXG4gICAgICAgIDxzdG9wXHJcbiAgICAgICAgICBpZD1cInN0b3AxNThcIlxyXG4gICAgICAgICAgb2Zmc2V0PXswLjd9XHJcbiAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICBzdG9wT3BhY2l0eTogMSxcclxuICAgICAgICAgICAgc3RvcENvbG9yOiBcIiM4NTBlNzhcIixcclxuICAgICAgICAgIH19XHJcbiAgICAgICAgLz5cclxuICAgICAgICA8c3RvcFxyXG4gICAgICAgICAgaWQ9XCJzdG9wMTYwXCJcclxuICAgICAgICAgIG9mZnNldD17MC43MzY2N31cclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIHN0b3BPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgICBzdG9wQ29sb3I6IFwiIzg1MGU3OFwiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAvPlxyXG4gICAgICAgIDxzdG9wXHJcbiAgICAgICAgICBpZD1cInN0b3AxNjJcIlxyXG4gICAgICAgICAgb2Zmc2V0PXswLjk0MzMzfVxyXG4gICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgc3RvcE9wYWNpdHk6IDEsXHJcbiAgICAgICAgICAgIHN0b3BDb2xvcjogXCIjMzIyMzJjXCIsXHJcbiAgICAgICAgICB9fVxyXG4gICAgICAgIC8+XHJcbiAgICAgICAgPHN0b3BcclxuICAgICAgICAgIGlkPVwic3RvcDE2NFwiXHJcbiAgICAgICAgICBvZmZzZXQ9ezF9XHJcbiAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICBzdG9wT3BhY2l0eTogMSxcclxuICAgICAgICAgICAgc3RvcENvbG9yOiBcIiMzMjIzMmNcIixcclxuICAgICAgICAgIH19XHJcbiAgICAgICAgLz5cclxuICAgICAgPC9saW5lYXJHcmFkaWVudD5cclxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGgxNzZcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cclxuICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAgIGlkPVwicGF0aDE3NFwiXHJcbiAgICAgICAgICBkPVwiTSAtNi4xMDM1ZS01LDE0MTcuMzIgSCAxNDE3LjMyIFYgMi40NDE0ZS00IEwgLTkuMTU1M2UtNSwxLjIyMDdlLTRcIlxyXG4gICAgICAgIC8+XHJcbiAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgIDxsaW5lYXJHcmFkaWVudFxyXG4gICAgICAgIGlkPVwibGluZWFyR3JhZGllbnQyMDRcIlxyXG4gICAgICAgIHNwcmVhZE1ldGhvZD1cInBhZFwiXHJcbiAgICAgICAgZ3JhZGllbnRVbml0cz1cInVzZXJTcGFjZU9uVXNlXCJcclxuICAgICAgICB5Mj17OTcwLjkyOTk5fVxyXG4gICAgICAgIHgyPXszODguNDI5OTl9XHJcbiAgICAgICAgeTE9ezUxNy44NDAwM31cclxuICAgICAgICB4MT17NDI1Ljk1MDAxfVxyXG4gICAgICA+XHJcbiAgICAgICAgPHN0b3BcclxuICAgICAgICAgIGlkPVwic3RvcDE3OFwiXHJcbiAgICAgICAgICBvZmZzZXQ9ezB9XHJcbiAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICBzdG9wT3BhY2l0eTogMSxcclxuICAgICAgICAgICAgc3RvcENvbG9yOiBcIiNiODViZDFcIixcclxuICAgICAgICAgIH19XHJcbiAgICAgICAgLz5cclxuICAgICAgICA8c3RvcFxyXG4gICAgICAgICAgaWQ9XCJzdG9wMTgwXCJcclxuICAgICAgICAgIG9mZnNldD17MC4wMzMzMzN9XHJcbiAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICBzdG9wT3BhY2l0eTogMSxcclxuICAgICAgICAgICAgc3RvcENvbG9yOiBcIiNiODViZDFcIixcclxuICAgICAgICAgIH19XHJcbiAgICAgICAgLz5cclxuICAgICAgICA8c3RvcFxyXG4gICAgICAgICAgaWQ9XCJzdG9wMTgyXCJcclxuICAgICAgICAgIG9mZnNldD17MC4wN31cclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIHN0b3BPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgICBzdG9wQ29sb3I6IFwiI2I4NWJkMVwiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAvPlxyXG4gICAgICAgIDxzdG9wXHJcbiAgICAgICAgICBpZD1cInN0b3AxODRcIlxyXG4gICAgICAgICAgb2Zmc2V0PXswLjI3NjY3fVxyXG4gICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgc3RvcE9wYWNpdHk6IDEsXHJcbiAgICAgICAgICAgIHN0b3BDb2xvcjogXCIjMzIyMzJjXCIsXHJcbiAgICAgICAgICB9fVxyXG4gICAgICAgIC8+XHJcbiAgICAgICAgPHN0b3BcclxuICAgICAgICAgIGlkPVwic3RvcDE4NlwiXHJcbiAgICAgICAgICBvZmZzZXQ9ezAuMzMzMzN9XHJcbiAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICBzdG9wT3BhY2l0eTogMSxcclxuICAgICAgICAgICAgc3RvcENvbG9yOiBcIiMzMjIzMmNcIixcclxuICAgICAgICAgIH19XHJcbiAgICAgICAgLz5cclxuICAgICAgICA8c3RvcFxyXG4gICAgICAgICAgaWQ9XCJzdG9wMTg4XCJcclxuICAgICAgICAgIG9mZnNldD17MC4zOX1cclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIHN0b3BPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgICBzdG9wQ29sb3I6IFwiIzMyMjMyY1wiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAvPlxyXG4gICAgICAgIDxzdG9wXHJcbiAgICAgICAgICBpZD1cInN0b3AxOTBcIlxyXG4gICAgICAgICAgb2Zmc2V0PXswLjU5NjY3fVxyXG4gICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgc3RvcE9wYWNpdHk6IDEsXHJcbiAgICAgICAgICAgIHN0b3BDb2xvcjogXCIjYjg1YmQxXCIsXHJcbiAgICAgICAgICB9fVxyXG4gICAgICAgIC8+XHJcbiAgICAgICAgPHN0b3BcclxuICAgICAgICAgIGlkPVwic3RvcDE5MlwiXHJcbiAgICAgICAgICBvZmZzZXQ9ezAuNjMzMzN9XHJcbiAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICBzdG9wT3BhY2l0eTogMSxcclxuICAgICAgICAgICAgc3RvcENvbG9yOiBcIiNiODViZDFcIixcclxuICAgICAgICAgIH19XHJcbiAgICAgICAgLz5cclxuICAgICAgICA8c3RvcFxyXG4gICAgICAgICAgaWQ9XCJzdG9wMTk0XCJcclxuICAgICAgICAgIG9mZnNldD17MC42NjY2N31cclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIHN0b3BPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgICBzdG9wQ29sb3I6IFwiI2I4NWJkMVwiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAvPlxyXG4gICAgICAgIDxzdG9wXHJcbiAgICAgICAgICBpZD1cInN0b3AxOTZcIlxyXG4gICAgICAgICAgb2Zmc2V0PXswLjd9XHJcbiAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICBzdG9wT3BhY2l0eTogMSxcclxuICAgICAgICAgICAgc3RvcENvbG9yOiBcIiNiODViZDFcIixcclxuICAgICAgICAgIH19XHJcbiAgICAgICAgLz5cclxuICAgICAgICA8c3RvcFxyXG4gICAgICAgICAgaWQ9XCJzdG9wMTk4XCJcclxuICAgICAgICAgIG9mZnNldD17MC43MzY2N31cclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIHN0b3BPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgICBzdG9wQ29sb3I6IFwiI2I4NWJkMVwiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAvPlxyXG4gICAgICAgIDxzdG9wXHJcbiAgICAgICAgICBpZD1cInN0b3AyMDBcIlxyXG4gICAgICAgICAgb2Zmc2V0PXswLjk0MzMzfVxyXG4gICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgc3RvcE9wYWNpdHk6IDEsXHJcbiAgICAgICAgICAgIHN0b3BDb2xvcjogXCIjMzIyMzJjXCIsXHJcbiAgICAgICAgICB9fVxyXG4gICAgICAgIC8+XHJcbiAgICAgICAgPHN0b3BcclxuICAgICAgICAgIGlkPVwic3RvcDIwMlwiXHJcbiAgICAgICAgICBvZmZzZXQ9ezF9XHJcbiAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICBzdG9wT3BhY2l0eTogMSxcclxuICAgICAgICAgICAgc3RvcENvbG9yOiBcIiMzMjIzMmNcIixcclxuICAgICAgICAgIH19XHJcbiAgICAgICAgLz5cclxuICAgICAgPC9saW5lYXJHcmFkaWVudD5cclxuICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcFBhdGgyMTRcIiBjbGlwUGF0aFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj5cclxuICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAgIGlkPVwicGF0aDIxMlwiXHJcbiAgICAgICAgICBkPVwiTSAwLDE0MTcuMzIgSCAxNDE3LjMyIFYgMy42NjIxZS00IEwgMS4yMjA3ZS00LDIuNDQxNGUtNFwiXHJcbiAgICAgICAgLz5cclxuICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgPGxpbmVhckdyYWRpZW50XHJcbiAgICAgICAgaWQ9XCJsaW5lYXJHcmFkaWVudDI0MlwiXHJcbiAgICAgICAgc3ByZWFkTWV0aG9kPVwicGFkXCJcclxuICAgICAgICBncmFkaWVudFVuaXRzPVwidXNlclNwYWNlT25Vc2VcIlxyXG4gICAgICAgIHkyPXsxMDgyLjczfVxyXG4gICAgICAgIHgyPXs5ODcuNzE5OTd9XHJcbiAgICAgICAgeTE9ezYyNy4xNTAwMn1cclxuICAgICAgICB4MT17OTUwfVxyXG4gICAgICA+XHJcbiAgICAgICAgPHN0b3BcclxuICAgICAgICAgIGlkPVwic3RvcDIxNlwiXHJcbiAgICAgICAgICBvZmZzZXQ9ezB9XHJcbiAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICBzdG9wT3BhY2l0eTogMSxcclxuICAgICAgICAgICAgc3RvcENvbG9yOiBcIiNhMGE3ZjNcIixcclxuICAgICAgICAgIH19XHJcbiAgICAgICAgLz5cclxuICAgICAgICA8c3RvcFxyXG4gICAgICAgICAgaWQ9XCJzdG9wMjE4XCJcclxuICAgICAgICAgIG9mZnNldD17MC4wMzMzMzN9XHJcbiAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICBzdG9wT3BhY2l0eTogMSxcclxuICAgICAgICAgICAgc3RvcENvbG9yOiBcIiNhMGE3ZjNcIixcclxuICAgICAgICAgIH19XHJcbiAgICAgICAgLz5cclxuICAgICAgICA8c3RvcFxyXG4gICAgICAgICAgaWQ9XCJzdG9wMjIwXCJcclxuICAgICAgICAgIG9mZnNldD17MC4wN31cclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIHN0b3BPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgICBzdG9wQ29sb3I6IFwiI2EwYTdmM1wiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAvPlxyXG4gICAgICAgIDxzdG9wXHJcbiAgICAgICAgICBpZD1cInN0b3AyMjJcIlxyXG4gICAgICAgICAgb2Zmc2V0PXswLjI3NjY3fVxyXG4gICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgc3RvcE9wYWNpdHk6IDEsXHJcbiAgICAgICAgICAgIHN0b3BDb2xvcjogXCIjMzIyMzJjXCIsXHJcbiAgICAgICAgICB9fVxyXG4gICAgICAgIC8+XHJcbiAgICAgICAgPHN0b3BcclxuICAgICAgICAgIGlkPVwic3RvcDIyNFwiXHJcbiAgICAgICAgICBvZmZzZXQ9ezAuMzMzMzN9XHJcbiAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICBzdG9wT3BhY2l0eTogMSxcclxuICAgICAgICAgICAgc3RvcENvbG9yOiBcIiMzMjIzMmNcIixcclxuICAgICAgICAgIH19XHJcbiAgICAgICAgLz5cclxuICAgICAgICA8c3RvcFxyXG4gICAgICAgICAgaWQ9XCJzdG9wMjI2XCJcclxuICAgICAgICAgIG9mZnNldD17MC4zOX1cclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIHN0b3BPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgICBzdG9wQ29sb3I6IFwiIzMyMjMyY1wiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAvPlxyXG4gICAgICAgIDxzdG9wXHJcbiAgICAgICAgICBpZD1cInN0b3AyMjhcIlxyXG4gICAgICAgICAgb2Zmc2V0PXswLjU5NjY3fVxyXG4gICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgc3RvcE9wYWNpdHk6IDEsXHJcbiAgICAgICAgICAgIHN0b3BDb2xvcjogXCIjYTBhN2YzXCIsXHJcbiAgICAgICAgICB9fVxyXG4gICAgICAgIC8+XHJcbiAgICAgICAgPHN0b3BcclxuICAgICAgICAgIGlkPVwic3RvcDIzMFwiXHJcbiAgICAgICAgICBvZmZzZXQ9ezAuNjMzMzN9XHJcbiAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICBzdG9wT3BhY2l0eTogMSxcclxuICAgICAgICAgICAgc3RvcENvbG9yOiBcIiNhMGE3ZjNcIixcclxuICAgICAgICAgIH19XHJcbiAgICAgICAgLz5cclxuICAgICAgICA8c3RvcFxyXG4gICAgICAgICAgaWQ9XCJzdG9wMjMyXCJcclxuICAgICAgICAgIG9mZnNldD17MC42NjY2N31cclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIHN0b3BPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgICBzdG9wQ29sb3I6IFwiI2EwYTdmM1wiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAvPlxyXG4gICAgICAgIDxzdG9wXHJcbiAgICAgICAgICBpZD1cInN0b3AyMzRcIlxyXG4gICAgICAgICAgb2Zmc2V0PXswLjd9XHJcbiAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICBzdG9wT3BhY2l0eTogMSxcclxuICAgICAgICAgICAgc3RvcENvbG9yOiBcIiNhMGE3ZjNcIixcclxuICAgICAgICAgIH19XHJcbiAgICAgICAgLz5cclxuICAgICAgICA8c3RvcFxyXG4gICAgICAgICAgaWQ9XCJzdG9wMjM2XCJcclxuICAgICAgICAgIG9mZnNldD17MC43MzY2N31cclxuICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgIHN0b3BPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgICBzdG9wQ29sb3I6IFwiI2EwYTdmM1wiLFxyXG4gICAgICAgICAgfX1cclxuICAgICAgICAvPlxyXG4gICAgICAgIDxzdG9wXHJcbiAgICAgICAgICBpZD1cInN0b3AyMzhcIlxyXG4gICAgICAgICAgb2Zmc2V0PXswLjk0MzMzfVxyXG4gICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgc3RvcE9wYWNpdHk6IDEsXHJcbiAgICAgICAgICAgIHN0b3BDb2xvcjogXCIjMzIyMzJjXCIsXHJcbiAgICAgICAgICB9fVxyXG4gICAgICAgIC8+XHJcbiAgICAgICAgPHN0b3BcclxuICAgICAgICAgIGlkPVwic3RvcDI0MFwiXHJcbiAgICAgICAgICBvZmZzZXQ9ezF9XHJcbiAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICBzdG9wT3BhY2l0eTogMSxcclxuICAgICAgICAgICAgc3RvcENvbG9yOiBcIiMzMjIzMmNcIixcclxuICAgICAgICAgIH19XHJcbiAgICAgICAgLz5cclxuICAgICAgPC9saW5lYXJHcmFkaWVudD5cclxuICAgIDwvZGVmcz5cclxuICAgIDxnIHRyYW5zZm9ybT1cIm1hdHJpeCgxLjMzMzMzMzMsMCwwLC0xLjMzMzMzMzMsLTQ5MC44NTE3MiwxMjQ1LjQ0KVwiIGlkPVwiZzEwXCI+XHJcbiAgICA8YSBvbkNsaWNrPXtvcGVuRWxlbWVudCh7ZWxlbWVudFRvT3BlbjogXCJ1bmRlci1yZXNwb25zaXZlXCIsIGNsYXNzVG9IaWRlOiBcInVuZGVyc3RhbmRpbmd0YWJcIn0pfT5cclxuICAgICAgPHBhdGhcclxuICAgICAgICBpZD1cInBhdGgyMlwiXHJcbiAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgIGZpbGw6IFwiIzg1MGU3OFwiLFxyXG4gICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXHJcbiAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxyXG4gICAgICAgIH19XHJcbiAgICAgICAgZD1cIm0gNjI4LjIsNzExLjM2IGMgMzYuOSwwIDY2LjgsLTMxLjU4IDY2LjgsLTcwLjU0IDAsLTM4Ljk2IC0yOS45LC03MC41OCAtNjYuOCwtNzAuNTggaCAzMDguNDQgYyAzNi45LDAgNjYuOCwzMS42MiA2Ni44LDcwLjU4IDAsMzguOTYgLTI5LjksNzAuNTQgLTY2LjgsNzAuNTQgelwiXHJcbiAgICAgIC8+XHJcbiAgICAgIDwvYT5cclxuICAgICAgPGcgaWQ9XCJnMjRcIj5cclxuICAgICAgICA8ZyBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGgzMClcIiBpZD1cImcyNlwiPlxyXG4gICAgICAgICAgPHRleHRcclxuICAgICAgICAgICAgaWQ9XCJ0ZXh0MzRcIlxyXG4gICAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICAgIGZvbnRWYXJpYW50OiBcIm5vcm1hbFwiLFxyXG4gICAgICAgICAgICAgIGZvbnRXZWlnaHQ6IFwiYm9sZFwiLFxyXG4gICAgICAgICAgICAgIGZvbnRTaXplOiBcIjIxLjk2cHhcIixcclxuICAgICAgICAgICAgICBmb250RmFtaWx5OiBcIkFyaWFsXCIsXHJcbiAgICAgICAgICAgICAgLyogd3JpdGluZ01vZGU6IFwibHItdGJcIiwqL1xyXG4gICAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb3VyYmVpZ2UpXCIsXHJcbiAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXHJcbiAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwibm9uemVyb1wiLFxyXG4gICAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXHJcbiAgICAgICAgICAgIH19XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxLDAsMCwtMSw3NjUuODQsNjMyLjU3KVwiXHJcbiAgICAgICAgICA+XHJcbiAgICAgICAgICAgIDxhIG9uQ2xpY2s9e29wZW5FbGVtZW50KHtlbGVtZW50VG9PcGVuOiBcInVuZGVyLXJlc3BvbnNpdmVcIiwgY2xhc3NUb0hpZGU6IFwidW5kZXJzdGFuZGluZ3RhYlwifSl9PlxyXG4gICAgICAgICAgICA8dHNwYW5cclxuICAgICAgICAgICAgICBpZD1cInRzcGFuMzJcIlxyXG4gICAgICAgICAgICAgIHk9ezB9XHJcbiAgICAgICAgICAgICAgeD1cIjAgMTUuODU1MTIgMzAuNTAyNDM5IDQ1LjE0OTc2MSA1OS43OTcwODEgNzYuNzk0MTIxIDkyLjY0OTIzOSAxMDcuMjk2NTYgMTEzLjQwMTQ0IDEyOC4wNDg3N1wiXHJcbiAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICB7XCJSRVNQT05TSVZFXCJ9XHJcbiAgICAgICAgICAgIDwvdHNwYW4+XHJcbiAgICAgICAgICAgIDwvYT5cclxuICAgICAgICAgIDwvdGV4dD5cclxuICAgICAgICA8L2c+XHJcbiAgICAgIDwvZz5cclxuICAgICAgPHBhdGhcclxuICAgICAgICBpZD1cInBhdGgzNlwiXHJcbiAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgIGZpbGw6IFwiIzg1MGU3OFwiLFxyXG4gICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXHJcbiAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxyXG4gICAgICAgIH19XHJcbiAgICAgICAgZD1cIm0gNjI4Ljc4LDcxMS4zNiBjIC0zNi45MSwwIC02Ni44MiwtMzEuNTggLTY2LjgyLC03MC41NCAwLC0zOC45NiAyOS45MSwtNzAuNTggNjYuODIsLTcwLjU4IDM2LjksMCA2Ni44NiwzMS42MiA2Ni44Niw3MC41OCAwLDM4Ljk2IC0yOS45Niw3MC41NCAtNjYuODYsNzAuNTQgelwiXHJcbiAgICAgIC8+XHJcbiAgICAgIDxhIG9uQ2xpY2s9e29wZW5FbGVtZW50KHtlbGVtZW50VG9PcGVuOiBcInVuZGVyLXJlZmxlY3Rpb25cIiwgY2xhc3NUb0hpZGU6IFwidW5kZXJzdGFuZGluZ3RhYlwifSl9PlxyXG4gICAgICA8cGF0aFxyXG4gICAgICAgIGlkPVwicGF0aDM4XCJcclxuICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgZmlsbDogXCIjYTBhN2YzXCIsXHJcbiAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcclxuICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXHJcbiAgICAgICAgfX1cclxuICAgICAgICBkPVwibSA2MjguMiw5MzQuMDggYyAzNi45LDAgNjYuOCwtMzEuNTUgNjYuOCwtNzAuNDggMCwtMzguOTIgLTI5LjksLTcwLjUyIC02Ni44LC03MC41MiBoIDMwOC40NCBjIDM2LjksMCA2Ni44LDMxLjYgNjYuOCw3MC41MiAwLDM4LjkzIC0yOS45LDcwLjQ4IC02Ni44LDcwLjQ4IHpcIlxyXG4gICAgICAvPlxyXG4gICAgICA8L2E+XHJcbiAgICAgIDxnIGlkPVwiZzQwXCI+XHJcbiAgICAgICAgPGcgY2xpcFBhdGg9XCJ1cmwoI2NsaXBQYXRoNDYpXCIgaWQ9XCJnNDJcIj5cclxuICAgICAgICAgIDx0ZXh0XHJcbiAgICAgICAgICAgIGlkPVwidGV4dDUwXCJcclxuICAgICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgICBmb250VmFyaWFudDogXCJub3JtYWxcIixcclxuICAgICAgICAgICAgICBmb250V2VpZ2h0OiBcImJvbGRcIixcclxuICAgICAgICAgICAgICBmb250U2l6ZTogXCIyMS45NnB4XCIsXHJcbiAgICAgICAgICAgICAgZm9udEZhbWlseTogXCJBcmlhbFwiLFxyXG4gICAgICAgICAgICAgIC8qIHdyaXRpbmdNb2RlOiBcImxyLXRiXCIsKi9cclxuICAgICAgICAgICAgICBmaWxsOiBcInZhcigtLW91cmJlaWdlKVwiLFxyXG4gICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgICAgIGZpbGxSdWxlOiBcIm5vbnplcm9cIixcclxuICAgICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxyXG4gICAgICAgICAgICB9fVxyXG4gICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSwwLDAsLTEsNzY3LjA0LDg1NS4zOClcIlxyXG4gICAgICAgICAgPlxyXG4gICAgICAgICAgICA8YSBvbkNsaWNrPXtvcGVuRWxlbWVudCh7ZWxlbWVudFRvT3BlbjogXCJ1bmRlci1yZWZsZWN0aW9uXCIsIGNsYXNzVG9IaWRlOiBcInVuZGVyc3RhbmRpbmd0YWJcIn0pfT5cclxuICAgICAgICAgICAgPHRzcGFuXHJcbiAgICAgICAgICAgICAgaWQ9XCJ0c3BhbjQ4XCJcclxuICAgICAgICAgICAgICB5PXswfVxyXG4gICAgICAgICAgICAgIHg9XCIwIDE1Ljg1NTEyIDMwLjUwMjQzOSA0My45MTk5OTggNTcuMzM3NTU5IDcxLjk4NDg3OSA4Ny44Mzk5OTYgMTAxLjI1NzU2IDEwNy4zNjI0NCAxMjQuNDQ3MzJcIlxyXG4gICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAge1wiUkVGTEVDVElPTlwifVxyXG4gICAgICAgICAgICA8L3RzcGFuPlxyXG4gICAgICAgICAgICA8L2E+XHJcbiAgICAgICAgICA8L3RleHQ+XHJcbiAgICAgICAgPC9nPlxyXG4gICAgICA8L2c+XHJcbiAgICAgIDxwYXRoXHJcbiAgICAgICAgaWQ9XCJwYXRoNTJcIlxyXG4gICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICBmaWxsOiBcIiNhMGE3ZjNcIixcclxuICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcclxuICAgICAgICB9fVxyXG4gICAgICAgIGQ9XCJtIDYyOC43OCw5MzQuMDggYyAtMzYuOTEsMCAtNjYuODIsLTMxLjU1IC02Ni44MiwtNzAuNDggMCwtMzguOTIgMjkuOTEsLTcwLjUyIDY2LjgyLC03MC41MiAzNi45LDAgNjYuODYsMzEuNiA2Ni44Niw3MC41MiAwLDM4LjkzIC0yOS45Niw3MC40OCAtNjYuODYsNzAuNDggelwiXHJcbiAgICAgIC8+XHJcbiAgICAgIDxwYXRoXHJcbiAgICAgICAgaWQ9XCJwYXRoNTRcIlxyXG4gICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICBmaWxsOiBcIiNhMGE3ZjNcIixcclxuICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcclxuICAgICAgICB9fVxyXG4gICAgICAgIGQ9XCJtIDU2MS45Niw4NjMuMSBjIDAsMzguOTQgMzEuNTYsNzAuNSA3MC41LDcwLjUgMzguOTQsMCA3MC41LC0zMS41NiA3MC41LC03MC41IDAsLTM4Ljk0IC0zMS41NiwtNzAuNSAtNzAuNSwtNzAuNSAtMzguOTQsMCAtNzAuNSwzMS41NiAtNzAuNSw3MC41IHpcIlxyXG4gICAgICAvPlxyXG4gICAgICA8cGF0aFxyXG4gICAgICAgIGlkPVwicGF0aDU2XCJcclxuICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgZmlsbDogXCIjODUwZTc4XCIsXHJcbiAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcclxuICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXHJcbiAgICAgICAgfX1cclxuICAgICAgICBkPVwibSA1NjEuOTYsNjQwLjk4IGMgMCwzOC45NCAzMS41Niw3MC41IDcwLjUsNzAuNSAzOC45NCwwIDcwLjUsLTMxLjU2IDcwLjUsLTcwLjUgMCwtMzguOTQgLTMxLjU2LC03MC41IC03MC41LC03MC41IC0zOC45NCwwIC03MC41LDMxLjU2IC03MC41LDcwLjUgelwiXHJcbiAgICAgIC8+XHJcbiAgICAgIDxhIG9uQ2xpY2s9e29wZW5FbGVtZW50KHtlbGVtZW50VG9PcGVuOiBcInVuZGVyLXJlc3BvbnNpYmlsaXR5XCIsIGNsYXNzVG9IaWRlOiBcInVuZGVyc3RhbmRpbmd0YWJcIn0pfT5cclxuICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgaWQ9XCJwYXRoNThcIlxyXG4gICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgZmlsbDogXCIjYjg1YmQxXCIsXHJcbiAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXHJcbiAgICAgICAgICB9fVxyXG4gICAgICAgICAgZD1cIm0gNDM5LjMzLDgyMy4wOCBjIC0zNi45MiwwIC02Ni44NSwtMzEuNTggLTY2Ljg1LC03MC41NCAwLC0zOC45NiAyOS45MywtNzAuNTggNjYuODUsLTcwLjU4IGggMzA4LjYzIGMgLTM2LjkzLDAgLTY2Ljg1LDMxLjYyIC02Ni44NSw3MC41OCAwLDM4Ljk2IDI5LjkyLDcwLjU0IDY2Ljg1LDcwLjU0IHpcIlxyXG4gICAgICAgIC8+XHJcbiAgICAgIDwvYT5cclxuICAgICAgPGcgaWQ9XCJnNjBcIj5cclxuICAgICAgICA8ZyBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGg2NilcIiBpZD1cImc2MlwiPlxyXG4gICAgICAgICAgPHRleHRcclxuICAgICAgICAgICAgaWQ9XCJ0ZXh0NzBcIlxyXG4gICAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICAgIGZvbnRWYXJpYW50OiBcIm5vcm1hbFwiLFxyXG4gICAgICAgICAgICAgIGZvbnRXZWlnaHQ6IFwiYm9sZFwiLFxyXG4gICAgICAgICAgICAgIGZvbnRTaXplOiBcIjIxLjk2cHhcIixcclxuICAgICAgICAgICAgICBmb250RmFtaWx5OiBcIkFyaWFsXCIsXHJcbiAgICAgICAgICAgICAgLyogd3JpdGluZ01vZGU6IFwibHItdGJcIiwqL1xyXG4gICAgICAgICAgICAgIGZpbGw6IFwidmFyKC0tb3VyYmVpZ2UpXCIsXHJcbiAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXHJcbiAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwibm9uemVyb1wiLFxyXG4gICAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXHJcbiAgICAgICAgICAgIH19XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCgxLDAsMCwtMSw0NDcuNSw3NDQuMzEpXCJcclxuICAgICAgICAgID5cclxuICAgICAgICAgICAgPGEgb25DbGljaz17b3BlbkVsZW1lbnQoe2VsZW1lbnRUb09wZW46IFwidW5kZXItcmVzcG9uc2liaWxpdHlcIiwgY2xhc3NUb0hpZGU6IFwidW5kZXJzdGFuZGluZ3RhYlwifSl9PlxyXG4gICAgICAgICAgICA8dHNwYW5cclxuICAgICAgICAgICAgICBpZD1cInRzcGFuNjhcIlxyXG4gICAgICAgICAgICAgIHk9ezB9XHJcbiAgICAgICAgICAgICAgeD1cIjAgMTUuODU1MTIgMzAuNTAyNDM5IDQ1LjE0OTc2MSA1OS43OTcwODEgNzYuNzk0MTIxIDkyLjY0OTIzOSAxMDcuMjk2NTYgMTEzLjQwMTQ0IDEyOS4yNTY1NiAxMzUuMzYxNDMgMTQ4Ljc3OTAxIDE1NC44ODM4OCAxNjguMzAxNDRcIlxyXG4gICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAge1wiUkVTUE9OU0lCSUxJVFlcIn1cclxuICAgICAgICAgICAgPC90c3Bhbj5cclxuICAgICAgICAgICAgPC9hPiAgXHJcbiAgICAgICAgICA8L3RleHQ+XHJcbiAgICAgICAgPC9nPlxyXG4gICAgICA8L2c+XHJcbiAgICAgIDxwYXRoXHJcbiAgICAgICAgaWQ9XCJwYXRoNzJcIlxyXG4gICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICBmaWxsOiBcIiNiODViZDFcIixcclxuICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcclxuICAgICAgICB9fVxyXG4gICAgICAgIGQ9XCJtIDc0Ny4zNCw4MjMuMDggYyAtMzYuOTEsMCAtNjYuODIsLTMxLjU4IC02Ni44MiwtNzAuNTQgMCwtMzguOTYgMjkuOTEsLTcwLjU4IDY2LjgyLC03MC41OCAzNi45NSwwIDY2Ljg2LDMxLjYyIDY2Ljg2LDcwLjU4IDAsMzguOTYgLTI5LjkxLDcwLjU0IC02Ni44Niw3MC41NCB6XCJcclxuICAgICAgLz5cclxuICAgICAgPHBhdGhcclxuICAgICAgICBpZD1cInBhdGg3NFwiXHJcbiAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgIGZpbGw6IFwiI2I4NWJkMVwiLFxyXG4gICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXHJcbiAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxyXG4gICAgICAgIH19XHJcbiAgICAgICAgZD1cIm0gNjczLjIsNzUyLjcgYyAwLDM4Ljk0IDMxLjU2LDcwLjUgNzAuNSw3MC41IDM4Ljk0LDAgNzAuNSwtMzEuNTYgNzAuNSwtNzAuNSAwLC0zOC45NCAtMzEuNTYsLTcwLjUgLTcwLjUsLTcwLjUgLTM4Ljk0LDAgLTcwLjUsMzEuNTYgLTcwLjUsNzAuNSB6XCJcclxuICAgICAgLz5cclxuICAgICAgPHBhdGhcclxuICAgICAgICBpZD1cInBhdGg3NlwiXHJcbiAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgIGZpbGw6IFwidmFyKC0tb3VyYmVpZ2UpXCIsXHJcbiAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcclxuICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXHJcbiAgICAgICAgfX1cclxuICAgICAgICBkPVwibSA2MzIuNTMsOTA5Ljg0IGMgLTI1LjU1LDAgLTQ2LjI2LC0yMC43MSAtNDYuMywtNDYuMjMgMCwtMjQuNzMgMjAuMiwtNDUuNTggNDQuOTIsLTQ2LjMyIGggMC42IGMgMTcuODQsLTAuMjcgMzQuOTUsLTYuOTIgNDcuNTksLTE5LjU2IGwgMC42LC0wLjYgYyAxMS42NiwtMTEuNjcgMTcuNjEsLTI3LjYzIDE3LjQ3LC00NC4xNSB2IC0wLjQ2IC0wLjIzIGMgMC4wNSwtMTcuMTEgLTUuOTksLTMzLjYzIC0xOC4wNywtNDUuNjcgbCAtMS41MywtMS41MiBjIC0xMS4yNSwtMTEuMzEgLTI2LjQ4LC0xOC4xMSAtNDIuMzgsLTE4LjExIC0wLjUyLDAgLTEuMDQsMC4wMSAtMS41NiwwLjAyIC0wLjQ2LDAuMDIgLTAuOTIsMC4wMyAtMS4zOSwwLjAzIC0wLjQ2LDAgLTAuOTIsLTAuMDEgLTEuMzgsLTAuMDMgLTIzLjg5LC0wLjY5IC00My43NiwtMjAuMjUgLTQ0LjgzLC00NC4xNSAtMS4xNSwtMjYuNDggMTkuOTcsLTQ4LjM1IDQ2LjIxLC00OC4zNSBoIDAuMjMgMC4zOCBjIDE0LjQ0LDAgMjguNDQsLTUuMjEgMzguNjksLTE1LjQ1IGwgNS43NiwtNS43NyBjIDEyLjc3LC0xMi43OCAxOS4zNiwtMzAuMTcgMTkuODcsLTQ4LjI2IDAuMDUsLTIuMDMgMC4yMywtNC4xIDAuNTYsLTYuMTggMy4xMywtMjAuMDcgLTQzLjYxNjc5LDEzOC43Nzc5NSAtMC4zNDY3MSwzMi42NzQxNyAtNDYuNzA3MjYsOTMuOTE3NjQgMTEuNDY2NTUsLTIuMTkyMTkgMTMuNDM2NTUsLTIuMTkyMTkgMjcuNTMsMCAxOC42MDcyMiwtMTAuMzY4MDkgMTUuMDI3MjIsMTcuODgxOTEgLTIuNTgsMjAuMjEgMTEuNjU4MTUsMzkuMjk2MzYgMjQuNjgyOTQsNC43ODYxMSAtMi4wOCwwLjMyIC00LjExLDAuNDYgLTYuMTQsMC41IC0xOC4yNSwwLjQyIC0zNS44Nyw2Ljk3IC00OC43OCwxOS45NCBsIC0yLjA4LDIuMDMgYyAtMTEuMTIsMTEuMTYgLTE2LjUxLDI2LjcgLTE1LjE3LDQyLjM5IDAuMDksMS4yOSAwLjE0LDIuNTggMC4xNCwzLjkyIHYgMC4yMyBjIC0wLjA5LDE3LjAzIDUuOTksMzMuNTQgMTguMDMsNDUuNTggbCAxLjU3LDEuNTcgYyAxMS4zLDExLjMxIDI2LjUzLDE4LjExIDQyLjQzLDE4LjExIDAuNTIsMCAxLjA0LC0wLjAxIDEuNTYsLTAuMDIgaCAyLjcyIGMgMjMuODksMC43NCA0My43NywyMC4zIDQ0Ljc4LDQ0LjIgMS4xNSwyNi40OCAtMTkuOTcsNDguMzQgLTQ2LjIxLDQ4LjM0IC0wLjM3LDAgLTAuNzgsMCAtMS4xNSwtMC4wNCAtMC41MiwtMC4wMiAtMS4wNCwtMC4wMiAtMS41NSwtMC4wMiAtMTUuOTYsMCAtMzEuMzMsNi4yIC00Mi42MywxNy41IC0xMi43MywxMi42OSAtMTkuMzIsMjkuOTQgLTE5LjU1LDQ3Ljg5IHYgMC42IGMgLTAuNiwyNC43NyAtMjEuNDUsNDUuMDcgLTQ2LjIxLDQ1LjEyIHpcIlxyXG4gICAgICAvPlxyXG4gICAgICA8YSBvbkNsaWNrPXtvcGVuRWxlbWVudCh7ZWxlbWVudFRvT3BlbjogXCJ1bmRlci1yZXNwb25zaXZlXCIsIGNsYXNzVG9IaWRlOiBcInVuZGVyc3RhbmRpbmd0YWJcIn0pfT5cclxuICAgICAgPHBhdGhcclxuICAgICAgICBpZD1cInBhdGg3OFwiXHJcbiAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgIGZpbGw6IFwiIzg1MGU3OFwiLFxyXG4gICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXHJcbiAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxyXG4gICAgICAgIH19XHJcbiAgICAgICAgZD1cIm0gNjMzLjI0LDU4MS4xIGMgMCwzMS4xOCAyOC44LDU2LjQ2IDY0LjMyLDU2LjQ2IDM1LjUyLDAgNjQuMzIsLTI1LjI4IDY0LjMyLC01Ni40NiAwLC0zMS4xOCAtMjguOCwtNTYuNDYgLTY0LjMyLC01Ni40NiAtMzUuNTIsMCAtNjQuMzIsMjUuMjggLTY0LjMyLDU2LjQ2IHpcIlxyXG4gICAgICAvPlxyXG4gICAgICA8L2E+ICBcclxuICAgICAgPHBhdGhcclxuICAgICAgICBpZD1cInBhdGg4MFwiXHJcbiAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgIGZpbGw6IFwidmFyKC0tb3VyYmVpZ2UpXCIsXHJcbiAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcclxuICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXHJcbiAgICAgICAgfX1cclxuICAgICAgICBkPVwibSA1ODcuMDQsNjM5LjY2IGMgMCwyNS4yOCAyMC44Nyw0NS43OCA0Ni42Miw0NS43OCAyNS43NSwwIDQ2LjYyLC0yMC41IDQ2LjYyLC00NS43OCAwLC0yNS4yOCAtMjAuODcsLTQ1Ljc4IC00Ni42MiwtNDUuNzggLTI1Ljc1LDAgLTQ2LjYyLDIwLjUgLTQ2LjYyLDQ1Ljc4IHpcIlxyXG4gICAgICAvPlxyXG4gICAgICA8ZyBpZD1cImc4NFwiPlxyXG4gICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDkwKVwiIGlkPVwiZzg2XCI+XHJcbiAgICAgICAgICA8ZyB0cmFuc2Zvcm09XCJtYXRyaXgoNzIuNiwwLDAsNzIuNDgsNTk5LjQsODMwLjUyKVwiIGlkPVwiZzkyXCI+XHJcbiAgICAgICAgICAgIDxpbWFnZVxyXG4gICAgICAgICAgICAgIGlkPVwiaW1hZ2U5OFwiXHJcbiAgICAgICAgICAgICAgbWFzaz1cInVybCgjbWFzazk0KVwiXHJcbiAgICAgICAgICAgICAgeGxpbmtIcmVmPVwiZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFNa0FBQURKQ0FZQUFBQ0p4aFlGQUFBQUJITkNTVlFJQ0FnSWZBaGtpQUFBRkMxSlJFRlVlSnp0M1hsY1ZHWGJCL0RmbVRNek1DQW9pS2lJNEw1Q212dVNHcHFXcWJrdnVhU3B1V1RxazB0cEZwYXBtVm91VDJuYVlwdjduZ3N1bGFsa2FxYUlZWWlveUNKSUlKdkFNTXVaOXc4ZlcxNlZ3OHpjNTV3NXcvWDlMeDJ1NitvalA0WTU1ejczelFHd2dSRHlTQnFsQnlERTFWRklDQkZCSVNGRUJJV0VFQkVVRWtKRVVFZ0lFVUVoSVVRRWhZUVFFUlFTUWtSUVNBZ1JRU0VoUkFTRmhCQVJGQkpDUkZCSUNCRkJJU0ZFQklXRUVCRVVFa0pFVUVnSUVVRWhJVVFFaFlRUUVSUVNRa1JRU0FnUlFTRWhSQVNGaEJBUldxVUhJUGQ0ZVZWQ2VQUHVDSzMxR0FJRGE4UGdWUkZXaXdtRmhibTRsUmFQNjlmT0kvNlBrN0JhVEVxUFd1NVFTQlRVcUVrbmRPditFbXJYYlFuL3lzSFFhRXAvWXplYlM1QjUrd1lTNGsvaHlLRTFTRSs3SXRPazVSc0gydVpVZHAwalhrQ1BubE1RWExPSnd6VUV3WXFFSzc5Zy81NFA4SHZzRDZCL1J1bFFTR1RVb0ZGSGpCeXpEQ0doNFV6cnhzWWN4ZGNiWmlBck00bHBYWElQaFVRR0hNZWhkOS9aNkRkb0xuaGVtdDl3TFJZenZ2eDBLcUpQYkFZZ1NOS2p2S0tRU0V5bk4yRDZ6TTBJZTZ5YkxQMk9SSzNCMW8xdndtbzF5OUt2UENoM0lkRm9OUER5OW9PM2R5VjRlSGhEcTlVREhHQzFXbUFxS1VaeFVSN3UzcjBEQzRPclNCNGUzb2hjZUF3MWdoc3ptTHpzZm9uZWhzL1hUWVRGWXBHMXI3c3FGMWUzZUY0SFAvOGdSRHcxRGwwaVJxT0NqMytwcnhjRUFUSG5vM0R3dXhWSVRZbUQwWGpYZ1o1NnpKMS9TUGFBQUVEN0o0YkFiRFppdzZldndHWXJWejhESmVIVzd5UThyME9uTGlNdzhzVVBvZFhxSEs0VGZXSXp2djc4UHpDWmlzcjBlbzdqTU9hbC82Skx4R2lIZTdLdzVkdDVPSFJndGFJenVBTzNEVW1yTnYwdzhaWFBvTk41TUtsbnRWcHdLbm9yUHY5a2t1aHJXN2NiZ0NuVHYyTFMxeGtXaXhtenA0Y2o1MDZhMHFPb210dUZwRUlGZjh5ZGZ4ZzFnaHRKVWo4dkx4UExGdlZGYXNydkQrL3ZVeG5MVjhmQjA5TmJrdjcyU2s2S1JlVGNqa3FQb1dvOGdMZVZIb0tWeG1GUFltNWtGQUtxaEVqV3c5UFRHNTBqUnYvdlp0NnBCLzUrMktqM1VMOUJXOG42Mjh2SHR3clNVdU54S3kxZTZWRlV5MjBXT0xick1Cai9tYlVWUGo2VkplK2wxZW93YU5oOERIOWhLVGlPKyt2UEE2dldRYWN1SXlYdmJ3K05Sb09oSXhZcVBZYXF1Y1hWclJhdCttRHN4RFhRNnoxbDdkdWo1MlFVRitWaDk0NUYvL3Z2bDVsOUJtS3Bja0F3Z21vMEt1WGRSSVA2RGRxZ1dZdG5FQklhanNvQk5WR3hVbFhvOVY3UWF2V3dXRXdvS3NwRGJrNEdNak91SS82UGs3aDQ0VEN5czVKbC9mOVFpdW8vazlRTUNjTWI4dy9ENE9XcjJBeHJWbzNCdWJON3NPTGpCRlNzRktqWUhLV0p1L1FUbGkzdTg2OC9xeDdVRUYyNmprYmI5b1BnNTEvZHJucFdxeFdKQ2FkeEtub3Jqdis0Z2VXb0xrZlZJZEZxOVZpNDlDeXFWYStyNkJ3V2l3WGJOMGZpK1ZHTEZaMmpORWJqWFV4NjhWNFFBcXZXUWQ4QmM5Q3U0MkFteTJUeTg3T3diVk1rVHAzY0RFRnd2eHVZcWc3SjJJbHIwUG5KVVVxUG9RcFdxd1VUUmdlaVc0OEpHUHo4QXVoMGV1WTlibHkvZ0hVZmpVTkcrbFhtdFpXazJwQlVyRmdWeS84YjU1S2ZBVnhWVGs0Ni9QenMrN1hLWG9JZ1lNMnEwZmp0MTcxdWM3ZGZ0WmVBWDN2ckFBSUNhaW85aHFvWURENlM5K0E0RG0zYUQ0Q3BwQmhYRTg1Q3BUK0QvMFdWbDRBMUdoNmhvWThwUFFZcHhaRGhDOUJ2MEJ5bHgyQkNsU0VaTW55aFUydXhpRHo2RG5nZFR6MDlXZWt4bkthNmtIQ2NGbDI3ajFkNkRGSUdIS2ZCMEJIdklxaEdRNlZIY1lycVFxTFQ2ZWxkUkVWME9nKzg4dW9tcGNkd2l1cENVcmRlSzJnMHZOSmpFRHNFMVdpQWdjUGVWbm9NaDZrdUpDMWE5eEYvRVhFNVhidU5oUXEvM1FDb2NPcDZMclRDbHBTZGR3VS9EQm4ranRKak9FUjFJUW1zV2x2cEVZaURPcWwwZFlUcVF1THBXVUhwRVlpRHZMMzk0T2NYcFBRWWRsTmRTRXBLQ3BVZWdUaElvOUdnVC8vWlNvOWhOOVdGNUhiR0RhVkhJRTdvMkhrRTFQWnRwNjVwQVNURS82ejBDTVFKV2w0TFhxdXVaLzFVRjVLelozWXJQUUp4QXFmUmdOZW9LeVF1TWExVzY0R25lNzJDTGhGajRGMmhFblE2RC9DOERocU5CalliWUxNSnNGak1NSnVOdUZ1UXJmUzR4QWtjeDRrZU1lRnFGQXNKeDNIbzJIa0VldmVkaFNxQm9ZOThRdTdlUGdzYThMd1dIaDRHVktqZ0ordWNoQzJPMDRDamtJaHIyMkV3QmcyTlJKWEFXa3EwSjhRdXNvYWtZc1dxZUduS2VvU0ZkNVd6TFhFaGdpQkFFS3hLajJFWDJVTFNKQ3dDTDcyOFR2TEhSNGxyczlrRTJDZ2tEMnJkdGovR1QvNEVIaDVlY3JRakxzeG1FMkMxVWtqK0pieFpkMHlZOGlsdDJFQUFBQ1VsUmVqeDdCVFViOUFPTllJYm9XS2xhdERwUEdFeEc1R1hsNG1NOUVSY1R6eUhxd21ua1pJY2gveTgyMHFQTE8xdUtRRlZhbUh4OGw5bDMxbVJ1QWViVFVEc2hhTTR1SDhWRWhOT0szWjZsMlFoNGJVNmZMdytCWjRHMTloZG5haGJmdjZmV1BmUmVNUmZQZ0dyVmQ0TjhDUUtDWWVwTXphaUpUMGdSUmhMdWhHREQ1Y01RSDcrbjdMMWxPU3VqcjkvRFFvSWtVU3QyczJ4Y20waW1qMytqR3c5SmRpY2prUGt3cDlrT1FLQmxFOGN4NkZOdTRIZ05WckVYejRoZVQvbTd5VFZxdGREOWFENnJNc1M4aTg4ejZOUC8xbDRmdFFTeVhzeEQwbVBubE5ZbHlUa29UUWFIazg5UFJFOWUwK1h0Zy9MWWdhREx6cEhxUE01WnFKT1BLL0ZnTUZ2b25wUUE4bDZNQTFKMVdwMW9kV3kzOUtma05MbzlKNTQ0KzJqa3UzSHhqUWt0ZXUyWUZtT2tETHo4ZkhId0tIekphbk5OQ1FOR3ovQnNod2hkdW4xM0t2dzltYi92QkhUa0FTSE5HVlpqaEM3OVIzQS9yZ0hwaUh4OTYvQnNod2hkdXZ4N01zd0dOZ2VNc3MwSko2ZXRFNkxLSS8xYnpSTVF5TDN3ak5DSGlhaTIxaW05WmlHUk01Rlo0UThTcHYyQThIejdNNndZUnFTalBSRWx1VUljWWhXcTBNbGhvK0pNdzNKOWF1L3NpeEhpTU44ZlFPWTFXSWFrdmcvb2xtV0k4UmhubDdzcm5BeERVbDZlZ0xMY29RNFRNZHdlUlRUa09Sa3B5RTVLWlpsU1VJVXh6UWtOcHNOTzdjdlpGbVNFSWVZTFNabXRaZy9UM0xsY2pSS1NvcFpseVhFTHNWRitjeHFNUStKMFZpQVRWKy96cm9zSVhZcFlIalBUcEtOSUtKUGJJVFJTTWUyRVdXWVRTWEl6VWxuVmsrU2tGZ3RKc3laK2JqcU5rWW03dUhNNloxTWwwaEpkbEJFN3AxMDdOdTlWS3J5aER6U1Q5OS96clNlcEtlcDdONnhHSmRpdnBleUJTRVBTRXVMWjFwUDhpT0hWaXdiak11Ly95UjFHMElBQUFmM3JXUjZaUXVRZU1QcyszaGVoM0VUMTZCRHAyRlN0eUxsM012amE2S29NSmRwVFZrT3I3TmF6VmkvWmdLKy9tSUd6T1lTT1ZxU2NtanZydmVaQndTUTZaM2tuNEpEd2pEaWhmZlJ1R2xuT2RzU04xZVFuNFhwayt0SmNrVlY5cEFBOS9aeWJkV21INTdwUFExMTY3V1N1ejF4TXlhVEVXKzkzaDYzTTZSNW5rbVJrUHhUY0VnWWVqMzNLbXJYZVJ4VkFtcy84cWhxUWg3R2FqRmp5OFo1T0hwb3JXUTlGQS9KUCtuMVhnaHYxZzExNnJWR3RXcDE0VjNCSHpWRHcrRHRYVW5wMFlnTHNsb3RPSFJnTmJadmxtWlR1dnRjS2lRUE0yN1NXblRxTWxMcE1ZaUxzVnJNMkxOekNmYnRrZjZHdGN2L2JuTXJsZTJOSWFKK1pyTUpxejhZaGtzWGo4clN6K1ZEY2pQcG90SWpFQmVTZE8wOGxpNStEa1ZGZWJMMWRQbVFKTjJJVVhvRTRnTHk4akx4OFlwUnVKcHdHamFiSUd0dkNZNkRZOHRzTmlJb3VERnFCRGRXZWhUaW9Ma3pXOEprTXFKMjNaWjJIWTlnc3dtNGNPNEExcStkZ0swYjMwUlcxazBvOFJIYTVUKzRBMERUOEs2WS9jWmVwY2NnRGhyenZBOEFRS3ZWSTZoR1E0VFdibzdHVFRzak5MUVovQU9Db2RkN3dXdzJJamMzQStscFYzRDF5bWtrSnB4QitxMEVGQlJrS1R5OVNrS2kxZXF4ZEdVcy9DdlRodHhxWTdWYU1HNGsrK01RNUNUTDJpMW5XU3dtZkxOaGh0SmpFQWVZVE9yZjcwQVZJUUdBaXhlUElEWGxzdEpqRUR2ZHZYdEg2UkdjcHBxUUNCWUxQbml2SHowU3JESTUyV2xLaitBMDFZUUVBSEp5MHZIWjJrbXlYd0lramt0emc1dkJxZ29KQUp5SzNvTG9FNXNnQ0JRVU5iZ1ljMWpwRVp5bXVwQUF3T2VmVE1hNU03dnBIY1hGR1kyRnVIaitrTkpqT0UyVklRR0FOYXZIWVAvZUQ1VWVnNVRpM05tOWJ2R0RUTFVoQVlDZFc5L0JrZ1U5SmQwSXI2Z3dEN3UyTDVLc3ZqczdkdlF6cFVkZ1F0VWhBZTZkaVRKcldsUDhmR0lUODlvSDk2M0N6R2xoeU0rOXpieTJ1NHVOT1lwcmllNXhxSlBMTDNBc2k3c0YyZmgwN1VSRTdWK05YbjFub0gzSElVN1ZPL2I5RjRnNnNCcVpHZGNBQUo0R0h4WmpsaXRTUHdnbEo3Y0l5WDJwS1hGWTk5RTQ3Tmp5RHBxR1I2QnRoMEZvMUxnVGVMNzBSWFZtY3duaUxoM0RtVk03OEh2c0R3K3NGN0l3M01hL1BOaTNaemxTa2k4cFBRWXpiaFdTKzdLemtuSGkyRmM0Y2V3cjhMd093VFdiSUNDd0ZueDlxOEREd3dzQVVGSlNpTnpjMjhqS1RNS3R0UGhTOTQ0dExNeVJhM1NueEp5UFF2TVdQUldkSWVsNkRQYnRYcWJvREt5NVpVait5V28xNDJiU1JhY2UzcnFqa3J2R3U3WXZRbEZobm1LYkFCYmtaMlBWQjBOaE1oVXAwbDhxcXYvZ0xnZTFuQVdabDVPQlQ5ZE9ST3hGK2ZkZkxpNHV3THVSWFpGejU1YnN2YVZHSVNtRC9OeE1wS2I4b2ZRWXBicVRuWXE4dk51dzJRU3NXRG9ZRjM2TGtxMTNRVUUyNXN4b2djemIxMlhyS1NjS1NSbWRQN2RQNlJGSzljT1J2KzlKMkFRTFZpMGZncWo5cTVtZTAvSC8yV3dDVXBMak1IVkNIZVRsWmtqV1Iya1Vrakk2Zis2QTBpT1U2dGN6dXg3NHM2MGI1K0dkZVYxUVhGekF2Si9aWElMZE85N0RXNiszQTZEK3UrcWxvWkNVVWRMMTg4ak9TbEY2aklmS3pjbkFuNWxKRC8yNzVKdXhtRHcyR0p1L2VZTlp2d3Zub3pEcHhlcjRidGNTWmpWZG1Tb2UzM1VWNGMyNlkrYWNCMzlpSzIzKzNFNjRtU1MrcTR4ZWIwQ1RwbDN3d3JpVmRqOEtYV0lzeEs3dEMzSHkrTGVTN056dXlpZ2tkdUI1UFphdHVnVC95a0ZLai9LWDNOemJlUFhsUnJEWnl2N1pnK000K1BnR0lxQktDTUxDdTZKQm93Nm9IdFFBUHI0QjRIa3RpZ3J6Y0R2ek9tNGtua1BNK2NOSVQ3K0MvTnpNY250VGxVSmlwOURhemZITzRwTktqd0hnM2lZTHM2ZUg0MDUycXRLanVEWDZUR0tubXpkaWNmakFSMHFQQVFBNHRIODFCVVFHRkJLN0NkaStaVDR5MHFVNUM2T3NyaWFjd2ZZdDdyT0kwSlhScjFzTzBtbzlzV3pWUmZqNXkvLzU1RmJhRlVUT2VRSVdpMUgyM3VVUnZaTTR5R0l4WXQ3c3RzaThmVVBXdnFrcGwvRnVaRmNLaUl6b25jUkpQSy9IM1BsUnFGZS9qZVM5NG43L0NTdmVIMWh1cnpJcHhlMUQ0dTN0aDZEZ2h1allhVGdhTnU0SS84ckJzTmtFWkdVbTQzTGNjWncrdFEzcHR4SlJYT1RjdGY4Um81Zmh5YTVqb05ON01wcjhieVpUTVE3dVc0azlPeFl6cjAzRXVXMUlEQVpmREg5aENUbzlPVXIwdFlKZ3haR29OZGkxYmFGVHk3d0RBbXRoNXV1N1VMVmFIYnQyVHk5dHJyVFVlSHl3cEQ5eWM5S2Rya2NjNDVZaGVieGxMMHlmdGNXaHIzMzdqVTVPbjRsU3JWbzl6SjYzRDVVRGdoMnVrWkdlaUNVTGVpTFhqUmNPcW9YYmhXVFl5TVhvMFhNS05Cckhya2tJZ29EdG0rY2phdjlLcDJjeGVQbWlSY3ZlNk5sN0dvSkRtb3ErL3NiMUM0amF2eHFYWW83QWFDeUF6ZVpXL3pTcTVWWWhHVGgwUHZyMG04V2sxamNiWnVLSEkrdVoxQUlBVDA4dmVCb3FRcTgzUUt2VmcrTTBFQVFMckJZempLWkNHSXNLM0dJSGRuZmtOaUZwM2JZZkprLzdrc2xuQWVEZWtvLzNGdlJFWXNKcEp2V0llcm5GZlJLOTNoUFBqMXJDTENBQXdQTmFqSiswRnJ4V3o2d21VU2UzQ01uVHZhWkpjZ3BXdGVyMTBMYjlRT1oxaWJxNFJVamFkeGdzV2UySWJtTWxxMDNVUWZVaHFSeFFFMEhCalNTclg3OWhPL2hXREpTc1BuRjlxZytKSEp1eDFXL1FUdklleEhXcFBpUWhvZUdTOTZoYXJZN2tQWWpyVW4xSXZDdjRTOTdENE9VcmVRL2l1bFFmRXJNTU4rRE01aExKZXhEWHBmcVEzSmJoZVk2Y083UzRzRHhUZlVpdXhQOHNlWS9rcEZqSmV4RFhwZnFReE1kRm8xRENmYUR5Y2pQZDZxd05Zai9WaDhSbXN5QXU5cGhrOWFOUGJJUWdXQ1dyVDF5ZjZrTUNBTi90ZmwrU2phRXRGak9PL2ZBRjg3cEVYZHdpSktrcGNUais0NWZNNis3WnVSaFpqOWhqbDVRZmJoRVNBTml5YVI1U2t1T1kxVXRNT0lORCsxMWpFenFpTExjSmljbFloQlZMQnlIcnoyU25hNlhmdW9vVlN3ZlR0ajBFZ0JzOWRIV2ZqMDhBWG50ekgycUdoRG4wOWRldi9ZWWxDNTUxdTNQL2lPUGNMaVRBdlYzVG4rMHpBNzM3ellTaGpHZXdGeGJtWXR1bVNCei9jWVBFMHhHMWNjdVEzTWR4SERwSGpNR3drWXVnMXh2QWNacS9Ob2dRQkFFMndZckN3bHg4KzlWc25QMWxwOExURWxlbGVFZzBHaTJlNkRJQzdUc09SVkNOQmpDYmpVaE1PSXVqaHovQnRhdG5tZlRnT0E0ODd3R3RWZ3RPbzRGTnNBR3d3bUt4d0dvMTA2NGtwRlNLaGNUTHV4S216ZGlNT3ZWYVFmK0lYUS92M3MzQjk0ZlhZYytPUlRKUFI4amZGQWxKMkdOUFlmTFVMK0Jkd2E5TXIwKzZFWU1sQzNyQ2FMd3I4V1NFUEVqMmtJUTM2NDZwTXpZOTh0M2pVVExTRXpGdmRtdEpqMXdtNUdGa3ZVL2k0MXNGNHlkL1luZEFnSHM3bDd6NjJnNEpwaUtrZExLR1pPQ1FTRlIwWWxPRnhrMjdvSHBRQTRZVEVTSk90cERvZEo1bzA3Ni9VelY0WG90SlUraytCcEdYYkNGNXJIa1BlSGxWZExwTzlhQUc0RGkzV1UxRFZFQzI3N2I2RGRzenFjUHpPdkM4bGtrdFFzcEN0cEJVcWxTVlNSMmVaN2ZmTHlGbElWdElXQjBySUFpQys2NmpJUzVKdHBDd2V0WkRFQ3dBTFNNaE1wSXRKT2ZPN21WU3gyd3V1UmNVUW1RaVcwaHk3cVRoU3Z3cHArdHMyL1FXTFVna3NwTDFXdXJ1N2M0dFZNelAreFBIdnFlTkdZaThaQTFKL09VVE9IendZNGUrMW1ReVl1WHlJWERqeDErSWkrSUJ2QzFud3ovaWpxTnlRRTI3ZG9NM2xSVGppL1d2NE5MRm94Sk9Sc2pEeVI0U20wM0ErWE1IWVRUZVJkMTZyYUhUZVpUNit0U1V5MWl6ZWd4aVl3N0xOQ0VoLzZib2s0a0dneS82OUorTkptRVJDS2dTQW9QQkJ6WkJRRUZCTmpMU0UzSHkrRGM0ZFhLTGtpTVNvdnpqdTRTNE9sb3BTSWdJQ2draElpZ2toSWlna0JBaWdrSkNpQWdLQ1NFaUtDU0VpS0NRRUNLQ1FrS0lDQW9KSVNJb0pJU0lvSkFRSW9KQ1FvZ0lDZ2toSWlna2hJaWdrQkFpZ2tKQ2lBZ0tDU0VpS0NTRWlLQ1FFQ0tDUWtLSUNBb0pJU0lvSklTSW9KQVFJdUwvQUpDOUlUcS9mbUZHQUFBQUFFbEZUa1N1UW1DQ1wiXHJcbiAgICAgICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEsMCwwLC0xLDAsMSlcIlxyXG4gICAgICAgICAgICAgIHByZXNlcnZlQXNwZWN0UmF0aW89XCJub25lXCJcclxuICAgICAgICAgICAgICAvKiBzdHlsZT17e1xyXG4gICAgICAgICAgICAgICAgaW1hZ2VSZW5kZXJpbmc6IFwib3B0aW1pemVTcGVlZFwiLFxyXG4gICAgICAgICAgICAgIH19ICovXHJcbiAgICAgICAgICAgICAgaGVpZ2h0PXsxfVxyXG4gICAgICAgICAgICAgIHdpZHRoPXsxfVxyXG4gICAgICAgICAgICAvPlxyXG4gICAgICAgICAgPC9nPlxyXG4gICAgICAgIDwvZz5cclxuICAgICAgPC9nPlxyXG4gICAgICA8ZyBpZD1cImcxMDBcIj5cclxuICAgICAgICA8ZyBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGgxMDYpXCIgaWQ9XCJnMTAyXCI+XHJcbiAgICAgICAgICA8ZyB0cmFuc2Zvcm09XCJtYXRyaXgoNjguMDQsMCwwLDY4LjA0LDcxMS44NCw3MTQuNilcIiBpZD1cImcxMDhcIj5cclxuICAgICAgICAgICAgPGltYWdlXHJcbiAgICAgICAgICAgICAgaWQ9XCJpbWFnZTExNFwiXHJcbiAgICAgICAgICAgICAgbWFzaz1cInVybCgjbWFzazExMClcIlxyXG4gICAgICAgICAgICAgIHhsaW5rSHJlZj1cImRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBTHdBQUFDOENBWUFBQURDU2NTckFBQUFCSE5DU1ZRSUNBZ0lmQWhraUFBQUMrSkpSRUZVZUp6dDNXbDBVM1VleHZFblNaT1dBcVdsUmFyMXRFS2hVS0JxUjVZWlZKaURpQXNLeXFLeUNESTRGRVJaWEFFVnhUTU1NcU00akI2QlVjRVJENmlJNGxKRUhJb1ZSVlN3Q0JSS1dRdWxaYkdRN20yU2V6TXY5QVhqUUpvMGQwbnllejduK0NyLzN2dDc4U1dtTi9mK2F3SGdCWkVRVnJNSElESVNneWRSR0R5Snd1QkpGQVpQb2pCNEVvWEJreWdNbmtSaDhDUUtneWRSR0R5Snd1QkpGQVpQb2pCNEVvWEJreWdNbmtSaDhDUUtneWRSR0R5Snd1QkpGQVpQb2pCNEVvWEJreWdNbmtSaDhDUUtneWRSR0R5Snd1QkpGQVpQb2pCNEVvWEJreWdNbmtSaDhDUUtneWRSR0R5Snd1QkpGQVpQb2pCNEVvWEJreWdNbmtSaDhDUUtneWRSR0R5Snd1QkpGQVpQb2pCNEVvWEJreWdNbmtSaDhDUUtneWRSR0R5Snd1QkpGQVpQb2pCNEVvWEJreWdNbmtSaDhDUktsTmtERVBsaWhSWFhwZzdFZ0NzR28wdFNEOFE1NGxIbnJzR0JzM3VSWDdJQm00K3VoMXQxKzMwOEN3Q3ZmdU1TTlY5bTBsVjRvT2RzZEU3TXZPaWFVelZsV1BqTkxPejkrU2UvanNuZ0tlUzBkc1JqZXArbmNWM3FRTC9XdXhRWDV1VlB4NDd5clUydVpmQVVNaXl3WUdMMlROelpkU3hzVmx0QVAxdm5yc1BrVCsvRTZicVRQdGZ4bDFZS0NUZDJHSXBWd3paaFJMZnhBY2NPQUxIMldJeS82cUVtMS9FZG5relZLU0VUTTM3L0xEcTE3UnIwc1JSVndhaTFBMURsY2w1MERhL1NrQ2xpN2EwdzY5cm5jYzJsZlp2MWpuNGhOcXNOYWZIcDJIMTZ4MFhYTUhneTNKOS85d2dHZHhxSkdIc0x6WThkRjUzZzgzVUdUNGJwbHpvSUQvU2NqZmdXYlhVN2g2b3FQbDluOEtTN2xGYXBlUGFQTCtQeXVGUllMUHBlSnpuVHhGVWFCays2Y1Zoak1MZi9JbVFuOTRITnFuOXFkZTVhSEhidTk3bUd3Wk11eG1aTnh0M2Q3NGZkWmpmc25HL3VmQm1xVi9XNWhzR1RwbnEweThhQ0cxNHpOSFFBT0YxVGpvK0wzMjF5SFlNblRjUkZ4MlBKcmU4ak1iYWQ0ZWQyS1M3TTNEZ09nTzkzZDREQlU1Q2liVEY0b3U4QzlFMGRZTXI1ajFjZXhiUU5vMUR2cWZOclBZTy9DTHZWamlpckhSYUxGUmF6aHdtQzZsWGhVbDFRVkkrbXg0MnlSdUdXOUJHWTJudTJwc2YxbDZKNnNLNW9GVjRyZURHZ24yUHd2M0pFeGVDUzJHUU02VHdLQTlOdlI2eTlwZGtqYVVaUkZYeDJjQzFXN25vVmxZM25nanlhQlJsdHUrR2xRU3RoczJuekRXbWdxaG9yTVhmelZCUlY3QTc0WjhYZlN4TWYzUmJETXUvRjhNeHhobHc2TTVPcXFsaXlmU0UrT2ZCT3MzNitmY3ZMc0dEQU1sd1dsNnJ4WlA3eGVsWHNPVjJBMlhtVDRHbm0vN0hFQnA4UWs0aGhtZU13dk9zNFdLMnliaHA5cjNBNWx1OWM3UGY2TnRFSm1KZzlFNFBTaCtvNGxXOXV4WVdWdTViZ3ZiM0xnenFPdU9EYnhTWmpaTGNKdUszelhlSkNQOStjVFRuNDhlUTJuMnZzVmdkdVRyOFRrNjU1elBETGpPYzdWVk9HSi9PbW9MVDZhTkRIRWhOOFN1czAzTlA5ZnR5WVBzVHNVVUpDaWZNUWNuS0grVnp6NXBEMVNHNmRZdEJFLzAvMXF0aDZQQS96dHp3S3IwYVpSdmFIVmdBZDRqTXdwa2NPcmt2ejczRXhLZExpMDlFaFBnTkhuTVVYWGFOVlpNM2g4cmp3eWcvenNmSHdPazJQRzVIQlcyQkJsOFFzak1uS1FhK1U2OHdlSjJUMXZMU3Z6K0Q5dmJhdHRhUG5EbUpXM2lRNEd5bzBQM1pFQlcrQkJWZTI3NFV4V1RtNHNuMVBzOGNKZVVteHlUNWY5d1N3L1lWV1BpcGFqU1U3bnRmdCtCRVJ2QVVXOUU3cGgxRTlKcUZyVWcrenh3a2JEVXE5ejlkdEZ1T3VzOWU3NjdEZzZ5ZndmZGxYdXA0bjdJUHZuM1l6Um5XL0gxY2tkRFo3bExCem9LTFE1K3NPVzdRaGMrdzZ0UjNQNWM5RWpidEs5M09GYmZDM2RocUdFZDBtNExMVzVud0pFdTdxM0xYNC9zUVduMnRhT2VKMG4yTjV3VC93L3I2M29IcDlQNm1rbGJBTGZualhjYmlqNjFpMGE5bmU3RkhDMnFiRG44S2xObDcwOVZoN0s4UkZ4K3QyL25QMUZYam15MmtvUHJ0SHQzTmNTRmdFYjdWWU1icEhEZ1ozSG9tRUZvbG1qeFAyeXFxTzRWOC92dUJ6emFDT1F6WGJUZUMzdmlyNUhJdS9ldzYxN2hwZGp1OUxTQWNmWlkzQ2hLdG5ZRkRISVdnZDNjYnNjU0xDcVpveVBQTEZmWENyTHAvckJuYThYZk56cTZxS1Jkdm1JdTlJTGxRLzdsM1hRMGdHSDIyTndlU2VqNk5mMmsxbzZXaGw5amdSUVZFVmZMRHZMYnk5ZXlrYWxRYWZhelBhOWtESCtDNmFucitzK2ppZXlwdUNzcHJqbWg0M1VDRVZmRXQ3S3p6VSt5bjBTZW1QRnZaWXM4ZHBsaDFsVzNIZzdGNnp4d0R3eXowajFRMU9GSjRwd0lucVkzNWZCWG13MXh4Tjd6UEtMVjZEWlR0ZWdFdjEvUS9OQ0NFUmZHdEhHeno2aDc4Z083a1BIRkhHWEFyVHk3WVQrZmlrdUhtMzM0YUNFWm5qa1pIVVhaTmp1UlVYNXVYUHdJN3lyYWJlcG5BK1U0T1BpMDdBM09zWG9VdFNscWwzNDlFdnVpUm0rYlVocVQrT09RL2o0WTNqRGJtMkhnaFRnbytQU2NTQ0FVdVIyaVpkdHlzQkZKaVUxcWxZZU1Qcm1yenhyQ2xjZ1JVNy8ybmFMNmErR0JwODI1aDJXSHp6MjBpTXZRUlduWGVnSXY5MVRid1NMOXk0QWxHMjRISm85RFRnb2M5RzQxalZJWTBtMDU0aHdTZkZKdU8xMno0TTIxOUVJOW1FcTZmaDd1NFRnejVPaWZNZ2NuS0hhekNSdm5RTlBxMU5KN3h5eTJyWWJRNDlUME1Cc2xxc3lFeTZDbjhkc0JUUlVURkJIVXRWVmJ4UjhCTFdGcjJsMFhUNjBqeDRtelVLM1pPeU1YL0Fxd3c5aEVSWjdZaTF0OFNRenZkZ2RGYU9KcGNkcXhzck1mSGpvYWh5QmJzVGduRTBlOFRQYm5XZ2Q4cjFlS0x2Z3JDL3RCaU00b3BDbEZhVm1EMEdBTUJoczZOTmRDSXlFcnNGL1U3K1c3dE9ic2ZqbTRML0tHUzBvSU9QaVdxQmZxazNZV3F2T1lnV0hMb1VMcVVSTDM3N05QSkxQamQ3bEdacDlrZWFWbzQ0RE93d0JIL0tuZzRIUDdxSVVGNWRpaW01STVwOGNDU1VCUng4bStnRURPNDBFcU96SmlHS1h4YUpzZkhRT2l6YU5nLytiRmdheXZ3T1BySEZKYmlqeXhnTXk3eVhYeFlKVXQxWWlmbGJIc1BPVTkrWlBZb21tZ3crdWVYbEdORnRQRzdMdU11SWVTaUU3RDI5RTNQekgwU05xOXJzVVRUVFpQRDkwMjVpN01Jb3FnZXI5N3lPdDNjdlE3aC9oUGt0RzRCbmZTMG9QRk1BdCtKRzlxVjlqSm1JVEhXNnRoeFBiNTZLdktPNWlNUk42Wm9NSG1EMFVueHpMQTlQYnA2QzhwcFNzMGZSalYvQkE0dytrcms4alhqMWgrZngrczVGVFQ3NkYrNzhEaDVnOUpIb2VPVVJ6Tm8wQ2R2THZ6WjdGRU1FRkR6QTZDUEorZ1B2NDdrdEQrTnMvUm16UnpGTXdNRURqRDdjMWJ2ck1IL0xZMWhiOUcvTi8vWlRxR3RXOEFDakQxZUh6dTdIbzEvY2gvMEdiNEFVS29LNlBmamR2VzhBQUNaa1Q5TmtHTktQb25xd3ZHQXhQaXhhQlJXeTN0WFBGL1Q5OEl3K2RMazhMaHh4Rm1QRG9RK3c5ZmhtVkRhZU5Yc2swMm55QUVpa1JWL3Zya1BSejd1dzc5Zi96dFNXbzFGcGhFdHBnRXR4US9WNjRGYmNVS0ZBOVhvTjJ3aVVncWZaRTAvaEd2MjUrZ3I4NS9BbnlEdTZIczZHQ3RSN2F0RGdNWC9ESU5LSHBvLzRoVVAwZGE0YXJOdS9DcDhkWEl0S2x4TXVUeU1pOFN0MHVqRE5uMmtOeGVqUDFWZGcyWTYvNDl2U3pYQXBqU0d6Q3hZWlQ1ZGRDMEloZWtYMTRKMDliMkRWbm1WUStCbWJmcVhiTmgxbVJPLzFlbEhaY0E1UDVrM0dJZWQrdzg1TDRVUFhmV21NaWw3MXFpaXJPbzdwRzBhajFtUDhKdnNVUG5UZmVVenY2RTlXbDJMNmhyR29ES085VWNnOGhteTFwMGYwem9hem1QZmxET3lyK0VtelkxTGthL2E5TklIUzZ0NGJqK0xHMnFLVmVDcHZDczdVbjlSb09wTENzT0NCNEtNL1VWV0NCOWJmaGEybG16U2VqS1F3TkhpZ2VkR3JYaFVmN1YrTnVWOU9RNzJuVnNmcEtOSVpIandRV1BSVkRVNDhrejhOdVFmZUE3OFJwV0NaRWp6Z1gvUWx6b09ZL3ZrWWxGUWVOSEF5aW1TbUJRLzRqdjc3RTFzd0oyOHlhdDJSc3drUW1jL1U0SUVMUjU5YnZBWUx0ODZCNG5XYk9CbEZJdE9EQi80MytqV0ZLN0QweDcrQm45ZEpENXI5UVFRdGRHK1hqY0l6QldhUFFSRXNwSUluMGh2L2RpU0p3dUJKRkFaUG9qQjRFb1hCa3lnTW5rUmg4Q1FLZ3lkUkdEeUp3dUJKRkFaUG9qQjRFb1hCa3lnTW5rUmg4Q1FLZ3lkUkdEeUp3dUJKRkFaUG9qQjRFb1hCa3lnTW5rUmg4Q1FLZ3lkUkdEeUp3dUJKRkFaUG9qQjRFb1hCa3lnTW5rUmg4Q1FLZ3lkUkdEeUp3dUJKRkFaUG9qQjRFb1hCa3lnTW5rUmg4Q1FLZ3lkUkdEeUp3dUJKRkFaUG9qQjRFb1hCa3lnTW5rUmg4Q1FLZ3lkUkdEeUp3dUJKRkFaUG9qQjRFb1hCa3lnTW5rUmg4Q1FLZ3lkUi9ndU50YXIyTWFDNnhRQUFBQUJKUlU1RXJrSmdnZz09XCJcclxuICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSwwLDAsLTEsMCwxKVwiXHJcbiAgICAgICAgICAgICAgcHJlc2VydmVBc3BlY3RSYXRpbz1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgIC8qIHN0eWxlPXt7XHJcbiAgICAgICAgICAgICAgICBpbWFnZVJlbmRlcmluZzogXCJvcHRpbWl6ZVNwZWVkXCIsXHJcbiAgICAgICAgICAgICAgfX0gKi9cclxuICAgICAgICAgICAgICBoZWlnaHQ9ezF9XHJcbiAgICAgICAgICAgICAgd2lkdGg9ezF9XHJcbiAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICA8L2c+XHJcbiAgICAgICAgPC9nPlxyXG4gICAgICA8L2c+XHJcbiAgICAgIDxnIGlkPVwiZzExNlwiPlxyXG4gICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDEyMilcIiBpZD1cImcxMThcIj5cclxuICAgICAgICAgIDxnIHRyYW5zZm9ybT1cIm1hdHJpeCg3My42OCwwLDAsNzMuNjgsNTk2LjQsNjAyLjE2KVwiIGlkPVwiZzEyNFwiPlxyXG4gICAgICAgICAgICA8aW1hZ2VcclxuICAgICAgICAgICAgICBpZD1cImltYWdlMTMwXCJcclxuICAgICAgICAgICAgICBtYXNrPVwidXJsKCNtYXNrMTI2KVwiXHJcbiAgICAgICAgICAgICAgeGxpbmtIcmVmPVwiZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFNd0FBQURNQ0FZQUFBQS9Ja3p5QUFBQUJITkNTVlFJQ0FnSWZBaGtpQUFBR2xoSlJFRlVlSnp0M1Z0d0ZOZVpCL0QvT1gyWm5wRzRnNFRRQlFUR1FXREEyRmdZUzRDUkNMYkozUlhIdVZhODYzVzJhcmVTcXVSaEgvWnBYemVQVytYTmJxcThpVm5IV2NlT0hkc3gyTmdTeG9EQllDNEdiSUVSUWtKY3hSMUpjK251MDJjZkZCTEFYT1owOTB6M2pMN2ZXK3c1UFYvdy9PbnVjMlVBSkFnaGVlRlJGMEJJS2FIQUVLS0FBa09JQWdvTUlRb29NSVFvb01BUW9vQUNRNGdDQ2d3aENpZ3doQ2lnd0JDaWdBSkRpQUlLRENFS0tEQ0VLS0RBRUtLQUFrT0lBZ29NSVFvb01JUW9vTUFRb29BQ1E0Z0NDZ3doQ2lnd2hDaWd3QkNpZ0FKRGlBSUtEQ0VLS0RDRUtLREFFS0tBQWtPSUFnb01JUXIwcUFzb0ZBTTZwdklxVE9WVm1NUW5vSUluWWNLRXprYitMd3NwWU1OQjJrdmpnbmNKQTk0NW5KUm5rSlc1aUNzbmNWWTJnZEhBMGFnMVlKWTJBelAxQmt6VnFxRXpUZWthbnZRd0lNN2hxT2pIRWJjWFIwUXZiRGdGcXBpVUlvWVNQdTZDQWFqbVZWaW9OMkdKZVI4U1BCSHE5VzNQd1Y3bkFIWTcrOUh2blF6MTJxUTBsV3hncHJGcWZNVmFoUmxHZlZHKzc0eDdGbi9Ldm8xKzd5UmthZjZSa1JDVVhHQXFrY0tQa3Q5R25URXRrdSsvSkM3ajEra1hjRVVPbHRZZkhBbEZTUVZtVGFJZExZa0hvaTREQUxBN3R3K3Y1dGJUM1dhVUtZbkFWQ0NGbjFiOFBjWm9sVkdYY3AwaE1Zem4waTlpUUo2UHVoUlNKTEVQVEpNMkcwOGt2eHI2QzMxWWNwNk45ZGxPN0hUM1JsMEtLWUpZQjZiVmFNWWoxc1BnTE43anEwSjYySkxiZ1EzMisxR1hRZ29zdG9GcE41ZWh6V3FKdW95OFNTbXhKYmNEYjlzYm95NkZGRkFzLytwZVlUeFlVbUVCQU1ZWVdoUE5XRzJ1aUxvVVVrQ3hHK21mcnpkaGxiVTgxR3Q2MG9NakhiZ1FBQUFOR2t4bWhQNm94eGpEQ21zcEJBUTY3YTNVZzFhR1loV1ljUmlMeDYwMWdYL0lyblJ4eFJ0RXJ6aU9mZlpuNkpjbnZ6QkhUSWVPZWw2RCtVWVRadWt6TUk2TmdjR05RTjk3Vlp2VkNrOUtiSEsyd1lNWHlqVkpQTVRxSGVaZkszK0dDcDd5M2Q2UkxuYmIrN0V1MXdFWHJsSmJEbzZWeGtOb1RTeUJHVkp3T3JLYjBXbHZEZVZhSkI1aUU1Z2ZXZC9HSFBNdTMrMjM1WFpoZmE0VDRpK1BYWDV4Y0xTYXpmaHlZbmtvajJ6dlp6L0V1L1lIZ2E5RDRpRVdnWm5FSnVBWFkvN1JWOXVMNGhLZVMvOGVGK1hsVUd1cVJBV2VTajJKR3IwcTBIV2tsTmljK3dqdlVKZHpXZEFBL0Z1MEJYRDhVOFZUc0xpbDNQYUFmUWhyc3k5alNBNkhYcGNOQjd1ZC9VakJRcDFlNC9zNmpERTBhTFZJd0VTMzZBMnZRQktKeUFOenR6WVRTeEwzS2JmYm1kdUxWM1ByNENpK3E2anc0T0Z6MFFOSWhrYTl3ZmQxR0dPbzA2YkJvdENVdkVnRG80SGpxZFNUeW5lWEEvWWh2SnBiVjdRZXFLUGlHQ0NCbVFGRFU2L1Z3b0NCSXhTYWtoVnBZR1pwTTdBMGNiOVNtNHZpRXRabVh5N29uZVZtam9wajRDSGNhUnEwV21qUTBDUDZRcXlPRkV1a2dmbUsxWTdKMmlTbE5zOE8vNllnN3l6NTZCSEhZRWdkOWRvME1NWjhYWU14aGhsNlBTQWwrc1FKR3R3c01aRk5qUm1MTVpoanpGWnFzeTIzSy9UZU1GWHYyTzlqVzI0WFBCbnNjYkRkV29ZVnhsSXcrQXNlaVVaa2dabGp6Rkw2dkNOZHJNOTFGcWdhTmV2c0RueVkremp3ZFZZbGw2SE5MSzA1YzZOZFpJR1pyYzlVK3Z4dWUzL2dRY2t3cmJjN3NTbTdMZkIxMnF4V21yQlpRaUlMekV4dGV0NmZkYVdMZGJtT0FsYmp6d1o3RXpxendhZStMRTg4aUVmTmxTRlVSQW90a3NEVThxbXdGRlpRWHZFR2xlZUdGVXVIdlJrZDJjMkJybkYxYWNCakZKcllpeVl3MmxTbHovZUs0d1dxSkJ5ZDl0WlFRdE9TYUtZN1RjeEZFcGdxUGxucDgvdnN6d3BVU1hnNjdhMkJIODlHUXZNQVdvM21rS29pWVlza01HUFptTHcvNjBrUC9iSTBkcDNzc0RjSDdnamdqT01SNjJFMGFmNW5icFBDaVNRd0taYk0rN09PZEVwcWcvQU45aVpzeWU0SU5FN0RHY2NQSzc2TkNXeDhpSldSTUVRU0dKT1plWC9XalZGWGNyN1cyNTJoREc3K3JPSnBHQWhuTVJzSlJ5U0JVZDFWdnhTdHN6dXdKYmNqMERWTWJ1Q3JpVlVoVlVUQ0VFbGdWR1pQYVNqZGNMMWp2NCtOQVRzQ0ZpY1dZZ2F2QzZraUVsUWtnUkV5L3pFVmt4blE0N1ZYaDVMMzdNM295RzRKZEkxdldvK0J4M05IckZFbmt2OEt0c3ova0NMT09PcTUveFdQY2RCcGJ3azBUak5GbjRSRityd1FLeUorUlJLWXRNd29mWDYrMFZTZ1NvcG5aSnpHLzUxbWVlSkJtdGtjQTVFRTVvb2NWUHI4TEgxR1lRb3BzZzU3QzdibmR2bHFPMW1iaFBsNjZmL0ZVZW9pQ2N3WmNVN3A4K1BZbUxKNWhuOHIxNEdUN2hsZmJSY2JDME91aHFpSzVGZDRYUEc4U0lNYldHazhWS0JxaXN1RGgvOU9yNFh0cVI4MjI2alhJNFg4QjMxSitDSUp6Q2x2QUZsUGJmUytOYkdrYk80eUxnVCtsRjJ2M0k0empvZk14UVdvaU9RcnNsL2dFYmRYNmZNbU45QnFscytreEUvY3ozQkpxQyszbnEwM0ZxQWFrcS9JQW5OWUhGVnU4K1hFY2xTaW9nRFZSS01qcDk3VlBJbFBMRUFsSkYrUkJlYVEwNjNjaHJPUmZjeWlIc2hNSVltSmJIemdXUWk3M1FNWTlJYVUyaVM1aFdsTWJUMFJDVTlrdjd3ckdFS1hmUmhOcHRyT01UVjZGZFlrMnZCbTd0MmlibEZrUU1jeWN3bnVOZTdCSkcwQ0FFQklnV1B1Q1d5MWQ2SkxIUFoxM1JQaUZPWnd0VCtEdWNac25MUlArL28rRWt5ays1S2xaUWFMekh1VTI5WHBOWUJrSXp0U0ZzRllWb21uVTkvREFuTXVVdnh2dlZTY2NVelF4bUdCT1JjVlNJNXNLNnRJZzRhNXh0MUtiWmhrMk8zdVYvNHVFbHlrM1U0OTRoZ3VpeXUrMnJaWkxXZ3pXME91Nkl0MGFQaCs4bHVvMGF0dis3a0hFL2ZqMjlaWGxVZmpEN2xIbEpjQlZQTHllWThyTlpFR3hvT0gxekxxM2F0WHRWdXRXR1V1QzdHaUwybzJGcUZlcjgzcnM0dk1lL0NrOVRXbDY2ZVJVWjRxWkpUd1pOUlNGL25BUm8vWGgyRXY3YnY5U3FzRmo1Z1BoMWZRRFJZWmFvK004ODI1K0tIMXVGSWIxUmQvYlJTc0o0cXJ5QU1qNE9HL2h0Y0d1a1pyb2hscnpQYVFLcnBlTlZjL1VLbkp2QnZmczc2WjkrZHRxSTM2bDhzQWJpbUt4Wi84UlhrWisrMHUzKzA1NDFpYXVCK1BtVzBoVmdXWU1LQnhmMzlFOTVoejhCM3JhM205MDZqMjl0R2M1ZWpFSWpBU0VpOWwzOEN3OEw4clAyY2NyVlp6cU51dTJuQ1VwL0JjYTZFNUQ0OWJhKzc0T1YxeDNUN3Q5eCtkV0FRR0dBbk5jK25mdy9ic1FOZFpZUzFGZTRnZEFjZkVpVUR0N3pQbjQvSEU3VU9UWXZudkFncUFqaktQVUd3Q0F3Qm41RG1zeTNWQ0JOeHRaYVRMT1p4ZDhiZmIvdGF2WE92K3hJSmJob2FEWXl6UGY1ODJZR1N2YVJLTnlNKzR2TkZKN3pRTUdKaXUxZm8rdEFnQVp1clRBU2x4VlBRSHF1ZTh2SWdLSkZHblR3dDBuV2w2TlNhd2NUam9YajhscUlIWDRvSEV2VXJYR3BURDJPN3NEbFFQOFNkMmdRR0FJNklYSmt3MGhCQWFGc0tNZ005RkR5YXk4YWpSZ2gxQlhxTlZZeEtiZ0UvZHovLzZ6NWFaemFoWERPTnhjUXFmdVBIZlByY2N4VEl3QU5BdGVxRkRIem5lTG9CR3ZRRzYxSEFrNEptU1hlNWhUR0VUVWExTkNYU2RxVm9WcXRsa0hIQVBBZ0FldFZZcWo5eHZ6KzFXWG9SSHdoSGJ3QURBRWRFSEpoSG9JRllBbUtIWEl5Rk5kUHRZVW5DdEErNGhUR05WbUtKNEx1ZU5xclRKbU1hcTBDOU9ZcldsM3F2M2FtWWRiQVRySENIK3hEb3dBTkFyK3VGNUVqT04vQTlndXBrNnJRWkpXTDdXNFZ4cm45dUZhallaVlpyYUNRUTNtcUpOd3YzR1F1VmRRSytJUVhRNndROXhJdjdFUGpBQWNNdzdBU205a1JkNW54aGpxTk5xWU1MQUVkRWJxSjREN2tGTVloTXdOZUE3alo4dGM0K0xVOWpqSGdqMHZjUy9rZ2lNeEVodmx5WTVwbXQxZ1k3OG5xN1hnVXVPbmhEZWFjYXpjYWpSYmorTE9Xd2JjMXR4eWhzbzZuZVN2eW1Kd0Z6VkkvcGd3QWpjZTlhbzF3TVNnWHZQdXR6REdJK3htSGFIcWY5aFNYc1ovREg3NTZJdW5DUFhLNm5BQUgvcmNxN1hwZ1hzY200SVpaeW1TeFF2TlB1ZGc5ZDFTWlBpSzduQUFDTmR6b25ReG1sQ3VOT0l3NWhRNE1jelQzcjRVL1p0REVxMXBRQWtYQ1VaR0dBa05PRThualdnQWlsMGk2T0JIblVPdXQyWUdFSkh3TzJ1djlYWldaQnJrL3lWYkdDQWtjY3pEVnJnd2MwNnZRWnp0THV3eDlrUEwwQm9Qbk0vRDZYTCtVYWU5UERIekZ1NFFuZVh5REdVd1d6eE5yTUY3VmJ3R2NxMjUrQlAyZldCcDUzOHdIb2NjMDIxalMxdVowZHVEMTdQdmVPNy9ReGVqMGE5SHRXOENoUDRlQ1JaQWh3TXRuUXc2QTNockx5QTQrSVV1dDJqR0lML0pSYWpRVmtFaG9OamhiRVVxNUxoVE91L0pDNmpJN2NadTMyT2QweGc0L0RUaXFlUjRQbWY1WGtycnVmaWwwUFBZaGo1cmZ0UHdrS0wrUUR1TWVZZ3haSklNZ3VjNVQ4cFBlZlp5TWdNQnJ4ejJHcnZSSGZBTWF0eVV4YUJBUUFHaGphekJXMVdlRHZKREhwRE9DRk80NEJ6RUlmY0kwamY0a2ZMd1ZIUHAyRytNUWN6OWVtQjU1dGR5NU1lL3B4NUZ4KzVlMjc1R1EwYVdvMW16RGVhVUtWTkNuWE4vNUEzak9QdVNYVG10dUtFcEwzUXlpWXdWNjAyVjR3Y1BoU2dJK0JtUE9raExUTVk5SVpndzRHRWhBNERLWmJBV0Q0R09pdmNUaTZlOVBCV3RnUGJuZXZYNWxqTXdpcWpGUXZOZWRmdGwxWW9JNXNXN3NBQjkxREJ2eXV1eWk0d0FQQ291Ukt0aWViUVF4T2xhME56OVk2eU12RVFERjc4WThsNzNYNXN5TDZQUGkvWWF0UlNWSmFCQVlESHpKVm9LY1BRYk1wdHcwSmpIaVpxNHlPdlpidTlDeHR5bStCZzlLd0FMZHZBQUNOM21wWkVNM2daaFNadTBsNEd2eDUrQVdmbCthaExLWXFTSG9lNWsyN1JDdzNCSm15UzJ6T1lnUWNUOStPRWV3cm41Y1dveXltNHNnNE04SmY5bTcwcnlodCtFelVMelhuSWVUYjZ5L3k5cHV3REE0d2NFWGpRNlVhenFiYlpCRkZ6bHo0REdnejBsUEhZemFnSURBQU15aUhzeU8zQkRLME80L2pZcU1zQk1ESW9DYUJzSGhjWlk1aXUxY0tFV2JZRG5xTW1NTURJVHBZZk8vdHdYbHpBVEswQkJpdCtseXdBU0NteDI5NlB0Wm1YY2NtN2pObjZ6TElLVFlOV2kwU1pobVpVQmVhcU05NVpmR3p2ZzVUQVZENmxvSU9PMTVKU29zZnR3eDh6YjJHYnV3c09ISnp3VGlNanM1aXRONVpWYU9yTDlFNVQxdDNLK2FoQUNnK1ppN0hBbUZ1d3NRM0hjM0RZN2NXSDlrNGM5VzYrOXVaQjQzNTh4V3BYbXZlVnIvUGlBazZKQVF4NDUzRGV1NGdoT1F4WENoaE1SNHFsTUlWUFJKVTJHVFc4T3RRL0F5a2xQc2h0eHdaN1UyalhqTnFvRDh5MXZxVE53aExqUGt6VnBtQU1yd3owNDgxNU5zNTU1M0hRN2NZMmV4Y3l5TjZ4VGJ1NURHMVdPRnZjcHIwTURqcmQrTURlcmpSR1VzMG1ZMWxpQ1dick0wTTc2YXd6dXdXZDl0YXlXRnBOZ2JtRjhSaURCZVk4ZkVtYmhiRzhFaVl6b1VPSER1MHZqMDRNRWhLZUZIQWg0RWdIV2VSd1FwekdQcnNMM1o3YWdqUU5IRCtyK0FkTTFzSTVWdnljZXdIL2tYNE9Bc0pYZXc2T1ZlWnlQR2d1UW9LcmJaWitNKzlsTm1PVHM2M2tOMUtud01SRWkvRUExaVREUFJScVdLVHh5K0ZuNGZvTXpWVS9UVDJOYW0xeTRIZXNqdXhtZE5xbHZhZmFxSHpwanhzTkduNmNlaUwwemdlVEcxaWt6OGNPWjArZ3Y5bDNPbnNoNEdLV1BpTlFQVFAxNmRCQzJPSXFTaFNZR0ZobExzTmRSbU5Ccm0zeEJPWnFzN0hIT1FBUklEUjk0ampPaUFITTA3OFU2RTR6WGF1REVjSm1pbEdod01UQUU5WlhRM2xQdUpWS1hvRzd0Sms0NEhZRmVqdzc2NTNIYVRHQWU0dzVnVFpUTE9WeEdncE14TzdUNTJOUlF1Mmtaai9HOGtvMDhub2NjQS82N2dnQWdIUHlRaWlocWRPbXdTckIwRkJnSXZhMXhHcU0xNG96VldlY05oYU52QjZmaWtPQjdqUmhoYVplcXkyNXh6TUtUSVE0T05aWWJVV2JhUUNNaEdhVzFvaDl6cWVCM21uT3lRczRLVTVqdnRFVStQRk1nMVl5SFFFVW1Bak4xK2Rnb1RtdjZOODdsbGVpU1p1TlhjNytRTDFuNStWRjlJc1RXR0EwK1I3a1pZeU43Q3NuSmZyRWlkZ1Bic2JxVU5qUjVnRkRmYm1CN1RsNEkvTU9wQXoydzZyV3ArRG5GVCtCam1BN3pIU0xYdngyK0E5d1piQ3hublpyR1ZZWVM4RVE3L2wwRkpnSVRlVHE4N1o2M1g1ODVPekJIekp2QnY3KzhkcFkvRXZGUDBNTEdKb2Vydy9QRDc4RUwrRHAxNnVTeTBJNy9icFE2SkVzUXUySlpjcnZMNjluM3NGRmVRbG52TE80S0M2aFNaOGRhRnpFNUFibWEwM1k1WHdTNlBIc29yeU00K0lVRmdSNHB3SENPNU8wVUNnd0VkR2hvejJ4VE9uSE5lUU40NDNjaHIvKzc5UGVBSzU0US9pU1BpdlFqelRGazdoYm00VjlibGVnTHVjTDhpSk9pVE9ZSDZEM0RCZ1ozSXpyMGdBS1RFUWFlQzBXSnhZb3RlbHpqMk92KytsMS8reWtkd1pwTHgxNEVkb1lYb2xHM2hDYmNacDZiUm84ZU9nVHgzM1hVZ2owRGhPUmFxNit3LzlaNzhKTi8vbEg3aDY4bGUwSS9BN1JZTlRpeDhudklJRmdlMEozaWNONE1mMWFvSG80NDJoTHRHS2VGcS9OU3lnd0VmR3pyOEI1NzliYkdHMTNkb1VTbXVsR0haNUtQZ2tEd2NhR3VzUmgvQzc5YXFCNmRLYmhXOG5IVUlsdzF1V0VnUUlURVl0WnltMkc1TzJQb3RqdTdNS2ZNKytHY3FmNVh2SmJnYTRCQUFkRk45YW1Yd2xVVDVJbjhVekZEd0xYRWhZS1RFVDhQTjI3OHM1YnNuN2s3c0hySVl6VHpOWWJNUlpqQWwwREFBNkxIdnhtK1A4Q2pkTk0xaVppaWI0b2NDMWhvTUJFSkNkdDVUWkdubDNRSDd1ZjRKWE1XOHJYdnhabkhLdXRGWUd1Y1ZXUGR3elBENzhFRVNBMFgwODlnaVRVNzhwaG84QkU1SW9jVkc1VHlmSi9sdC9ySHNCTDZUY0MzV2thdFdCSElWNnJ4enVHdGVtWEF6MmVmZDFhSFZvOWZsRmdJbkxXVTkrOGV4S2ZvUFQ1ZmU1bmVDMnpQc0NQTk54cEt0MmlGeStrLytpN25nWG1YRXhnNDBLdFNSVUZKaUw5NHBSeW15bDhrbktiWGU0K3ZKblo0T3RIZXRvYlVHNXpKNGZFa1VCZHppMW1jOGdWcWFIQVJDU0xMR3hQN1QybVJxdjI5VjA3M0wxNEsvdWUwby9Va3g0MjVncXpZVVdYT0l4WGZiNWpOWnYzb2hLcGtDdktId1VtUWxua2xENWZ3Vk9ZcmZsYis3L2QyYTAwVG5OU25NRnhULzB1bUs4OTdxZm95RzVXYnFjeERYZnBoZG4vSUI4VW1BaGQ4WWFVMnp4a0x2YjlmU09EbTNlKzAxd1dWL0MvNlZkOGYwKytOdG5iY2RJOW85eHVzYkd3QU5Ya2h3SVRvWDNPWjhwdFptajFzSmovRFRPMk83dnh1L1NydUN5dWZPSGZDZW1oenoyTy94eCtIa080L1NCcEdBUUVYc2lvQjdQUmFJaHM5SjhtWDBib3REZUFaZVlTcGRXS0d0TlF4U1pqbjl2bCszdlB5UXZZNnV6RU1YZGtZdU9RTjRUUDNFUDRRL29OZk9oOERCdU83MnVyeXNIR1JEWWVOVnFWVXJzVDdpa015SE1GcXVyV2lyZVluSHlCQXhjRDRqeHFkTFVmeTkzR1RDU3lDZVFVMzRGdTFDMTZZekdGL3ZYczIxaGdORUZqK1M5a2E5QnJzVjhjTEdCVk4wZVBaQkhyY2o5WGJxTXhEYitvL0FsNG1mem5jK0Rpa3ZmRlI4VGJtYVpOTFZBMXQxY2VmK0lsYkxQOWtYTDNNakN5T2QvM3JlQVRKT1BpcmV4N1NwK3Y1bE1LVk1udFVXQWlac1BCWis1aFgyMmJ6Tmw0eEh3NDNJSWlja2djVWZxTEk4a3RWQ0Jad0lwdWpnSVRBKy9uUG9Ud09mSzkzSG9RN1dacnlCVkZJeTB6U3ArUDRxeFNDa3dNbkpYbnNkYys0THQ5bTlVYSs5MVc4cEdSaWdPNUNwTlJ3MEtCaVltTjlsWmY3ekpYdFZ2TFN2NU9jMDV4UW1xQ0JWdEs3UWNGSmlZdXlzdDRKL3Qrb0d1MFdhMVlaUzRQcDZBSURDcytrdkVJTnYyandNVElSKzRlRExqQkJ1TldXZy9oMFJMdENIQ2syb0JwRk1mL1VXQmlSRUxpZjlLL0QzeWRsa1F6MXBqaEh2OVhEQ21tMXV1VlZYem5DUU1GSm1ZR01ZeGZEVDBmNkJxY2NTeE4zSTgxWmx0SVZSWEhSTVVGY29OZTRlZTczWWdDRTBQSHZWTjRPZjFtNEgyOVdxeG1yRGJEV1pkZkRHTVVqem0vSk5WbUI0U0JBaE5UZTkxUHNTbTNMZkR1THl1c3BXZzNsNFZVVldFbEZiYWVHaFJEZ2VmUytVR0JpYkgzN00zWWt0c1JPRFJ0Vmt2c3gybFNTQ29GNXJSM3RvRFYzQm9GSnViZXRqZGlhd2loYWJmaWZaVEU2c1FLcFdVT3gzM3NpUkFHQ2t3SldHOXZET1ZPTXpLNEdiL0hNdzZPaGNaY3BUYjk0a1NCcXJrOUNreUplTnZlaUE5eTJ3TmZwODFxaVYxSFFDMnJnY256SDdVWDBrT2ZGODJ1L3JUaXNvUWNFWDFnY3VUUW9TQm02UFd3cEluRDRtaElsZm5Id2ZIenltZVVGbzkxT1lleHgvVS85eTRJdXNPVW1FNTdLOTdMcU8rMmNxT2xpY1d4R054Y29EZkI0SVpTbTkzT3ZnSlZjMmNVbUJJakliSEoyZVpyaTZKclhSM2NqSElhelNRMkFkOUtQcWJVeHZWRXBFZVUweU5aQ1pLUU9DcjZvVW1PNlZwZG9KTytwdXQxNEpJWC9VZG93c1JUcVNjeFRsTTdJZURkN0FmbzhZNFZxS283bzhDVXNCN1JCd01HR3JUYWdBZXgxb05KNEtnb3pnK1JnK083MWpmUWFLaS9pNzJTZWJPb3U5cmNpQUpUNG82SVhwZ3dVYTlOQzN4NnNTa045SWhqa0FqV2ZYMDdCZ3g4MS9vRzVwcnFSL0Z0eW01SGwvQzNuRHNzRkpneTBDMTZrWUFaK0U0elhhOURGWnVFSHJjUER1NThlSk9xaVh3OGZweDhBck9NR2NwdFhjL0YvMlplaG9oZ1N2KzFLREJsb2x2MGh2SjRWcVZOeG4zR2ZQUzVKekFvMWJleXZSa0docm5hYlB4ZDZudVlvS2tmVitGSkR5OW1Yc1daQ0RidXV4RURDbmovSlVYM1pYTTVIclllQ3VWYVo5eXplQzc5SW9haHRoTHlLZ2FHS2pZWnoxVDhBRW51Ly9Td2srNXBQSnYrcmUvMllhTEFsS0Uyc3dYdFZqaFRZRHpwd2Zac2JMUS94RFpuRndUdWZPeWV4U3kwR1MxWWJDNUVRbUVFLzJhR3ZHSDgrOUN6a2F5dXZCa0tUQm5pNEZoaExNV3FaTGp6eG9RVVNNc01zaktIeTk0Z2h1UVFzbDRPU1o3RWVEWUdGYndDU1dZaHlTeWxpWlMzNGtvWHZ4cGFpOU15L0lPZC9LTEFsQ2tHaGphekJXMVc2ZTRrODNMNlRleDFQNDI2ak92UVNIK1prcERvc0xkZ1V6YjRJclFvck10MHhDNHNBQVdtN0cyd04yRkxia2VnNWM3RnRpN1RnYTNPenFqTHVDbDZKQnNsVnBoTDBaWm9oYTR3SzdqWVhPbml0Y3o2V041WnJxTEFqQ0x6dEx2eHplUmpTUEhpYitKOUowUGVNSDQ3L0JKT3hlZ0YvMllvTUtOTUpTcndUT29IbUt4UGpMb1VBQ1BkMXFmRkFINlZYaHVicnVQYm9jQ01VczM2SW53ajlVaWtOYmllaXhjenIrR1FPQkpwSFNvb01LTllFaGErYnEzR0FsTnRQWDBZM3M5dXh5WjdhNlF6ai8yZ3dCQk1ZT1BRWWphajJieFhhYW13S3RjVDZNaHR4bTVuZjFGT2FTNEVDZ3o1cXdxa2NKZmVpQWVNaGI3V3F0eU1rQjRPT2QzWTVleERqK2dydVR2S2pTZ3c1S1lxVVlGR3JSNzFlaTFxdGFtbzVsUHlta0E1S0ladzJqdUw0K0lrK3NWSjlJcCs1T0QvM0p1NG9jQ1F2RlVnaVhGOExDcFlDZ21XQUFPREp3VnlzREhvRGVPU3ZCTEo5cTNGUklFaFJBRk5qU0ZFQVFXR0VBVVVHRUlVVUdBSVVVQ0JJVVFCQllZUUJSUVlRaFJRWUFoUlFJRWhSQUVGaGhBRkZCaENGRkJnQ0ZGQWdTRkVBUVdHRUFVVUdFSVVVR0FJVVVDQklVUUJCWVlRQlJRWVFoUlFZQWhSUUlFaFJBRUZoaEFGRkJoQ0ZGQmdDRkZBZ1NGRUFRV0dFQVVVR0VJVS9EOWh1U0E2Q2xQWlFnQUFBQUJKUlU1RXJrSmdnZz09XCJcclxuICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMSwwLDAsLTEsMCwxKVwiXHJcbiAgICAgICAgICAgICAgcHJlc2VydmVBc3BlY3RSYXRpbz1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgIC8qIHN0eWxlPXt7XHJcbiAgICAgICAgICAgICAgICBpbWFnZVJlbmRlcmluZzogXCJvcHRpbWl6ZVNwZWVkXCIsXHJcbiAgICAgICAgICAgICAgfX0gKi9cclxuICAgICAgICAgICAgICBoZWlnaHQ9ezF9XHJcbiAgICAgICAgICAgICAgd2lkdGg9ezF9XHJcbiAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICA8L2c+XHJcbiAgICAgICAgPC9nPlxyXG4gICAgICA8L2c+XHJcbiAgICAgIDxnIGlkPVwiZzEzMlwiPlxyXG4gICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjbGlwUGF0aDEzOClcIiBpZD1cImcxMzRcIj5cclxuICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgIGlkPVwicGF0aDE2OFwiXHJcbiAgICAgICAgICAgIHN0eWxlPXt7XHJcbiAgICAgICAgICAgICAgZmlsbDogXCJ1cmwoI2xpbmVhckdyYWRpZW50MTY2KVwiLFxyXG4gICAgICAgICAgICAgIGZpbGxPcGFjaXR5OiAxLFxyXG4gICAgICAgICAgICAgIGZpbGxSdWxlOiBcImV2ZW5vZGRcIixcclxuICAgICAgICAgICAgICBzdHJva2U6IFwibm9uZVwiLFxyXG4gICAgICAgICAgICB9fVxyXG4gICAgICAgICAgICBkPVwibSA5MzUuMjYsNzExLjA3IGMgMzkuMTUsMC4zNiA3MS4wNywtMzEuNjcgNzEuMjksLTcxLjUyIDAuMiwtMzMuNDUgLTIyLjIxLC02Mi43MSAtNTQuMTMsLTcwLjcxIGwgLTAuODQsLTExLjcyIC0yMC43NiwxMy42NiAyMy4wMiwxNy45MiAtMC44NCwtMTEuNjkgYyAzMy41NCw5Ljg4IDUyLjk3LDQ1LjYgNDMuNCw3OS43OSAtNy43OCwyNy43OCAtMzIuNzYsNDYuODEgLTYxLjEsNDYuNTQgelwiXHJcbiAgICAgICAgICAvPlxyXG4gICAgICAgIDwvZz5cclxuICAgICAgPC9nPlxyXG4gICAgICA8ZyBpZD1cImcxNzBcIj5cclxuICAgICAgICA8ZyBjbGlwUGF0aD1cInVybCgjY2xpcFBhdGgxNzYpXCIgaWQ9XCJnMTcyXCI+XHJcbiAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICBpZD1cInBhdGgyMDZcIlxyXG4gICAgICAgICAgICBzdHlsZT17e1xyXG4gICAgICAgICAgICAgIGZpbGw6IFwidXJsKCNsaW5lYXJHcmFkaWVudDIwNClcIixcclxuICAgICAgICAgICAgICBmaWxsT3BhY2l0eTogMSxcclxuICAgICAgICAgICAgICBmaWxsUnVsZTogXCJldmVub2RkXCIsXHJcbiAgICAgICAgICAgICAgc3Ryb2tlOiBcIm5vbmVcIixcclxuICAgICAgICAgICAgfX1cclxuICAgICAgICAgICAgZD1cIm0gNDM5LjQzLDgyMi44IGMgLTM5LjE0LDAuMyAtNzEuMDYsLTMxLjU2IC03MS4yOSwtNzEuMTYgLTAuMTksLTMzLjI4IDIyLjI3LC02Mi4zNiA1NC4yMywtNzAuMjMgbCAwLjg0LC0xMS43MyAyMC42NCwxMy43MiAtMjIuODksMTcuODYgMC44MywtMTEuNyBjIC0zMy41NSw5LjcyIC01My4wNCw0NS4xNCAtNDMuNTIsNzkuMTEgNy43NCwyNy42NSAzMi43NCw0Ni42MyA2MS4xMiw0Ni40IHpcIlxyXG4gICAgICAgICAgLz5cclxuICAgICAgICA8L2c+XHJcbiAgICAgIDwvZz5cclxuICAgICAgPGcgaWQ9XCJnMjA4XCI+XHJcbiAgICAgICAgPGcgY2xpcFBhdGg9XCJ1cmwoI2NsaXBQYXRoMjE0KVwiIGlkPVwiZzIxMFwiPlxyXG4gICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgaWQ9XCJwYXRoMjQ0XCJcclxuICAgICAgICAgICAgc3R5bGU9e3tcclxuICAgICAgICAgICAgICBmaWxsOiBcInVybCgjbGluZWFyR3JhZGllbnQyNDIpXCIsXHJcbiAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IDEsXHJcbiAgICAgICAgICAgICAgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLFxyXG4gICAgICAgICAgICAgIHN0cm9rZTogXCJub25lXCIsXHJcbiAgICAgICAgICAgIH19XHJcbiAgICAgICAgICAgIGQ9XCJtIDkzNi42NCw5MzMuNzYgYyAzOS4xNCwwLjM1IDcxLjA2LC0zMS42NyA3MS4yOSwtNzEuNTIgMC4xOSwtMzMuNDUgLTIyLjIxLC02Mi43MSAtNTQuMTMsLTcwLjcxIGwgLTAuODQsLTExLjcyIC0yMC43NywxMy42NSAyMy4wMiwxNy45MyAtMC44MywtMTEuNjkgYyAzMy41NCw5Ljg4IDUyLjk3LDQ1LjYgNDMuNCw3OS43OSAtNy43OCwyNy43OCAtMzIuNzYsNDYuODEgLTYxLjEsNDYuNTQgelwiXHJcbiAgICAgICAgICAvPlxyXG4gICAgICAgIDwvZz5cclxuICAgICAgPC9nPlxyXG4gICAgPC9nPlxyXG4gIDwvc3ZnPlxyXG4pO1xyXG5cclxuIiwgImltcG9ydCB7IEJ1dHRvbk9uZSwgQnV0dG9uT25lV2l0aFNjcm9sbCB9IGZyb20gXCIuLi8uLi9jb21wb25lbnRzL0J1dHRvbnNcIjtcclxuaW1wb3J0IHsgSDQsIEg1IH0gZnJvbSBcIi4uLy4uL2NvbXBvbmVudHMvSGVhZGluZ3NcIjtcclxuaW1wb3J0IHsgSFBUaW1lbGluZSB9IGZyb20gXCIuLi8uLi9jb21wb25lbnRzL0hQLXRpbWVsaW5lXCI7XHJcbmltcG9ydCBQcmVDeXNlIGZyb20gXCIuLi8uLi9jb21wb25lbnRzL3ByZWN5c2VcIjtcclxuaW1wb3J0IHsgU2VjdGlvbiwgU3ViZXNjdGlvbiB9IGZyb20gXCIuLi8uLi9jb21wb25lbnRzL3NlY3Rpb25zXCI7XHJcbmltcG9ydCB7IHVzZU5hdmlnYXRpb24gfSBmcm9tIFwiLi4vLi4vdXRpbHNcIjtcclxuaW1wb3J0IHsgdXNlVGFiTmF2aWdhdGlvbiB9IGZyb20gXCIuLi8uLi91dGlscy9UYWJOYXZpZ2F0aW9uXCI7XHJcbmltcG9ydCB7IEhQY29uY2x1c2lvbiB9IGZyb20gXCIuL0NvbmNsaXN1aW5cIjtcclxuaW1wb3J0IHsgSFBGZWVkYmFjayB9IGZyb20gXCIuL0ZlZWRiYWNrXCI7ICAgIFxyXG5pbXBvcnQgIHsgSFAzbmV3IH0gZnJvbSBcIi4vSFAgc3Zncy9ocDNcIjtcclxuaW1wb3J0IHtXaG9sZU1lbmRlbG93fSBmcm9tIFwiLi9IUCBzdmdzL21lbmRlbG93c1wiO1xyXG5pbXBvcnQgeyBTdGFrZWhvbGRlck1hbmFnZW1lbnQgfSBmcm9tIFwiLi9IUCBzdmdzL3N0YWtlaG9sZGVyLW1hbmFnZW1lbnRcIjtcclxuaW1wb3J0IHsgU1dPVG9uZSB9IGZyb20gXCIuL0hQIHN2Z3Mvc3dvdHNcIjtcclxuaW1wb3J0IHsgSFBVbmRlcnN0YW5kaW5nIH0gZnJvbSBcIi4vSFAgc3Zncy91bmRlcnN0YW5kaW5nXCI7XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gSFBJbnRlZ3JhdGVkKCl7XHJcbiAgICBjb25zdCB7IGdvVG9QYWdlV2l0aFRhYkFuZFNjcm9sbH0gPSB1c2VOYXZpZ2F0aW9uKCk7XHJcbiAgICB1c2VUYWJOYXZpZ2F0aW9uKCk7XHJcbiAgICByZXR1cm4oXHJcbiAgICAgICAgPFNlY3Rpb24gdGl0bGU9XCJJbnRlZ3JhdGVkIEh1bWFuIFByYWN0aWNlc1wiIGlkPVwiSW50ZWdyYXRlZCBIdW1hbiBQcmFjdGljZXNcIj5cclxuICAgICAgICAgICAgPFN1YmVzY3Rpb24gdGl0bGU9XCJGcmFtZXdvcmtcIiBpZD1cIkludGVncmF0ZWQgSHVtYW4gUHJhY3RpY2VzMVwiPlxyXG4gICAgICAgICAgICAgICAgPHA+T3VyIHRlYW0gaGFzIGRlZmluZWQgYSBmcmFtZXdvcmsgZm9yIG1hbmFnaW5nIGludGVyYWN0aW9ucyB3aXRoIHN0YWtlaG9sZGVycyBkdXJpbmcgZWFjaCBzdGVwIG9mIHRoZSBwcm9qZWN0OlxyXG4gICAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICAgICAgPG9sPlxyXG4gIDxsaT4gPGI+U3Rha2Vob2xkZXIgTWFuYWdlbWVudCBGcmFtZXdvcmsgPC9iPi0gVG8gaWRlbnRpZnkgc3Rha2Vob2xkZXJzIGFuZCBkZWZpbmUgaG93IHBvdGVudGlhbCBzdGFrZWhvbGRlcnMgZml0IG91ciBwcm9qZWN0LjwvbGk+XHJcbiAgPGxpPjxiPlBvd2VyLUludGVyZXN0IE1hdHJpeCA8L2I+LSBBY2NvcmRpbmcgdG8gTWVuZGVsb3cgdG8gaWRlbnRpZnkgYW5kIGV2YWx1YXRlIHRoZSBwcmlvcml0aWVzIG9mIHBvdGVudGlhbCBzdGFrZWhvbGRlcnMuPC9saT5cclxuICA8bGk+PGI+U1dPVCBhbmFseXNpczwvYj4gLSBBc3Nlc3NtZW50IG9mIHRoZSBzdHJlbmd0aHMsIHdlYWtuZXNzZXMsIG9wcG9ydHVuaXRpZXMgYW5kIHRocmVhdHMgb2YgdGhlIHZhcmlvdXMgZ3JvdXBzIHByZXZpb3VzbHkgaWRlbnRpZmllZCBhcyBwb3RlbnRpYWwgc3Rha2Vob2xkZXJzLjwvbGk+XHJcbiAgPGxpPjxiPkFSRUEgRnJhbWV3b3JrPC9iPiAtIFRvIHN0cnVjdHVyZSBhbmQgb3B0aW1pemUgcHJvamVjdC1yZWxhdGVkIGRlY2lzaW9ucy48L2xpPlxyXG4gIDxsaT48Yj5GZWVkYmFjay1DeWNsZTwvYj4gLSBUbyBzdHJ1Y3R1cmUgaW50ZXJhY3Rpb25zIHdpdGggc3Rha2Vob2xkZXJzIGZvciBlZmZpY2llbnQgYW5kIGluZm9ybWF0aXZlIGRlc2lnbiBhbmQgbWF4aW1pemF0aW9uIG9mIHBvdGVudGlhbC48L2xpPlxyXG4gIDxsaT48Yj5UaGlyZC1QYXJ0eSBGZWVkYmFjayBUZW1wbGF0ZXMgPC9iPi0gVG8gaW50cm9kdWNlIHRoZSBzdGFrZWhvbGRlcnMsIHN1bW1hcml6ZSB0aGUgaW50ZXJhY3Rpb25zIGFuZCBpbXBsZW1lbnQgdGhlIG91dHB1dCBpbiBvdXIgcHJvamVjdC48L2xpPlxyXG4gIDxsaT48Yj5DeWNsZSBvZiBSZWZsZWN0aW9uPC9iPiAtIEFjY29yZGluZyB0byBHaWJicyBkZW1vbnN0cmF0ZSB0aGUgcmVzcG9uc2UgYW5kIGltcGxlbWVudGF0aW9uIGFzIGEgcGFydCBvZiBvdXIgZmVlZGJhY2sgY3ljbGUuPC9saT5cclxuPC9vbD5cclxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3cgYWxpZ24taXRlbXMtY2VudGVyXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxCdXR0b25PbmVXaXRoU2Nyb2xsIHRleHQ9XCJTdGFrZWhvbGRlciBNYW5hZ2VtZW50XCIgc2Nyb2xsSWQ9XCJzdGFrZUhcIiBvcGVuPVwic3Rha2VtYW1hbmdlXCIgb3BlbmNsYXNzPVwiZnJhbWVjeWNsZXRhYlwiPjwvQnV0dG9uT25lV2l0aFNjcm9sbD5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgICAgICAgICAgICA8QnV0dG9uT25lV2l0aFNjcm9sbCB0ZXh0PVwiTWVuZGVsb3cgQW5hbHlzaXNcIiBvcGVuPVwibWVuZGVsb3dcIiAgc2Nyb2xsSWQ9XCJtZW5kZWxvd0hcIiBvcGVuY2xhc3M9XCJmcmFtZWN5Y2xldGFiXCI+PC9CdXR0b25PbmVXaXRoU2Nyb2xsPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxCdXR0b25PbmVXaXRoU2Nyb2xsIHRleHQ9XCJTV09UIGFuYWx5c2lzXCIgc2Nyb2xsSWQ9XCJzd290SFwiIG9wZW49XCJzd290XCIgb3BlbmNsYXNzPVwiZnJhbWVjeWNsZXRhYlwiPjwvQnV0dG9uT25lV2l0aFNjcm9sbD5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3cgYWxpZ24taXRlbXMtY2VudGVyXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxCdXR0b25PbmVXaXRoU2Nyb2xsIHNjcm9sbElkPVwiYXJlYUhcIiB0ZXh0PVwiRmVlZGJhY2sgQ3ljbGVcIiBvcGVuPVwiYXJlYVwiIG9wZW5jbGFzcz1cImZyYW1lY3ljbGV0YWJcIj48L0J1dHRvbk9uZVdpdGhTY3JvbGw+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPEJ1dHRvbk9uZVdpdGhTY3JvbGwgc2Nyb2xsSWQ9XCJ0aGlyZEhcIiB0ZXh0PVwiVGhpcmQgUGFydHkgRmVlZGJhY2tcIiBvcGVuPVwidGhpcmRwYXJ0eVwiIG9wZW5jbGFzcz1cImZyYW1lY3ljbGV0YWJcIj48L0J1dHRvbk9uZVdpdGhTY3JvbGw+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPEJ1dHRvbk9uZVdpdGhTY3JvbGwgc2Nyb2xsSWQ9XCJmZWVkSFwiIHRleHQ9XCJDeWNsZSBvZiBSZWZsZWN0aW9uXCIgb3Blbj1cImZlZWRjeWNsZVwiIG9wZW5jbGFzcz1cImZyYW1lY3ljbGV0YWJcIj48L0J1dHRvbk9uZVdpdGhTY3JvbGw+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPEJ1dHRvbk9uZVdpdGhTY3JvbGwgc2Nyb2xsSWQ9XCJnaWJzb25IXCIgdGV4dD1cIkdpYmJzJyBDeWNsZVwiIG9wZW49XCJnaWJzb25cIiBvcGVuY2xhc3M9XCJmcmFtZWN5Y2xldGFiXCI+PC9CdXR0b25PbmVXaXRoU2Nyb2xsPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbCBmcmFtZWN5Y2xldGFiXCIgaWQ9XCJzdGFrZW1hbWFuZ2VcIiBzdHlsZT17e2Rpc3BsYXk6IFwiYmxvY2tcIn19PlxyXG4gICAgICAgICAgICAgICAgPGJyLz5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiYWxpZ24taXRlbXMtY2VudGVyXCI+XHJcbiAgICAgICAgICAgICAgICA8U3Rha2Vob2xkZXJNYW5hZ2VtZW50Lz5cclxuICAgICAgICAgICAgICAgIDwvZGl2PiAgXHJcbiAgICAgICAgICAgICAgICA8SDQgdGV4dD1cIlN0YWtlaG9sZGVyIE1hbmFnZW1lbnQgRnJhbWV3b3JrXCIgaWQ9XCJzdGFrZUhcIi8+XHJcbiAgICAgICAgICAgICAgICA8cD5UbyBjbGVhcmx5IGNvbW11bmljYXRlIHRvIG91ciBzdGFrZWhvbGRlcnMgaG93IHRoZXkgY2FuIHN1cHBvcnQgdGhlIDxQcmVDeXNlLz4gcHJvamVjdCBhbmQgdGhlIHNwZWNpZmljIGFyZWFzIHJlcXVpcmluZyBcclxuICAgICAgICAgICAgICAgICAgICB0aGVpciBpbnB1dCwgd2UgZGV2ZWxvcGVkIGEgc3Rha2Vob2xkZXIgbWFuYWdlbWVudCBmcmFtZXdvcmsgaGlnaGxpZ2h0aW5nIGZvdXIga2V5IGFyZWFzLiBTdGFydGluZyBhdCB0aGUgYm90dG9tIHJpZ2h0IG9mIHRoZSBcclxuICAgICAgICAgICAgICAgICAgICBmaWd1cmUgYW5kIG1vdmluZyBjbG9ja3dpc2UsIHRoZSBmaXJzdCBhcmVhIG5lZWRpbmcgZmVlZGJhY2sgaXMgPGI+aW1wbGVtZW50YXRpb248L2I+LiBJdCBpcyBjcnVjaWFsIGZvciBvdXIgdGVhbSB0byBlbnN1cmUgdGhhdCB0aGUgcHJvamVjdCBcclxuICAgICAgICAgICAgICAgICAgICBoYXMgYWxsIG5lY2Vzc2FyeSBjb21wb25lbnRzIGZvciByZWFsaXN0aWMgYXBwbGljYXRpb24gaW4gaGVhbHRoY2FyZSBzZXR0aW5ncywgZm9jdXNpbmcgb24gdGhlIGdlbmUgdGhlcmFweSB0cmVhdG1lbnQgZm9yICBDeXN0aWMgRmlicm9zaXMuXHJcbiAgICAgICAgICAgICAgICAgICAgIFRoaXMgaW5jbHVkZXMgYm90aCB0aGUgdGVjaG5pY2FsIGRlc2lnbiBhbmQgdGhlIGFwcHJvcHJpYXRlIGJ1c2luZXNzIG1vZGVsIHRvIGVuc3VyZSBzdWNjZXNzZnVsIGltcGxlbWVudGF0aW9uLlxyXG4gICAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICAgICAgPHA+VGhlIHNlY29uZCBrZXkgYXJlYSBpcyA8Yj5zdXN0YWluYWJpbGl0eSBhbmQgc29jaWFsIGltcGFjdC48L2I+IFdlIHNlZWsgdG8gdW5kZXJzdGFuZCBob3cgb3VyIHByb2plY3QgYWxpZ25zIHdpdGggY3VycmVudCBoZWFsdGhjYXJlIGluaXRpYXRpdmVzIGFuZCBmYWNpbGl0aWVzIGluIEdlcm1hbnkgYW5kIEV1cm9wZSwgYnV0IGFsc28gaW4gdGhlIGdsb2JhbGx5LCBhbmQgaG93IGl0IGludGVyYWN0cyB3aXRoIHNvY2lhbCBlZmZvcnRzIHJlbGF0ZWQgdG8gQ0YgYXdhcmVuZXNzIGFuZCBnZW5lIHRoZXJhcHkgc3RyYXRlZ2llcy5cclxuICAgICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICAgIDxwPk5leHQsIHdlIHdhbnQgdG8gc2hhcGUgdGhlIDxiPnB1YmxpYyBwZXJjZXB0aW9uPC9iPiBvZiBvdXIgcHJvamVjdCwgd2hpY2ggaXMgYmFzZWQgb24gc3ludGhldGljIGJpb2xvZ3kgdG8gdGFja2xlIGEgbWFqb3IgaGVhbHRoY2FyZSBjaGFsbGVuZ2UuIFdlIGFzayBzdGFrZWhvbGRlcnMgYWJvdXQgdGhlaXIga25vd2xlZGdlIGFuZCBvcGluaW9ucyBvbiBvdXIgZ2VuZSB0aGVyYXBldXRpYyBhcHByb2FjaCBhbmQgaXRzIHBvdGVudGlhbCBhcHBsaWNhdGlvbiB0byBpbXByb3ZlIENGIHRyZWF0bWVudHMuXHJcbiAgICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgICA8cD5UaGUgZmluYWwgYXJlYSBpbnZvbHZlcyA8Yj5yZWd1bGF0b3J5IGFuZCBzYWZldHkgY29uc2lkZXJhdGlvbnM8L2I+LiBHaXZlbiB0aGUgc3RyaW5nZW50IHJlZ3VsYXRpb25zIGdvdmVybmluZyBoZWFsdGhjYXJlIGluIEdlcm1hbnksIHdoaWNoIHZhcnkgYnkgbXVuaWNpcGFsaXR5LCBpdCBpcyBlc3NlbnRpYWwgdG8gY29uc3VsdCB3aXRoIHN0YWtlaG9sZGVycyBmYW1pbGlhciB3aXRoIHRoZXNlIHJlZ3VsYXRpb25zIHRvIGVuc3VyZSBvdXIgcHJvamVjdCBjb21wbGllcyB3aXRoIGFsbCBuZWNlc3Nhcnkgc2FmZXR5IHN0YW5kYXJkcy5cclxuICAgICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sIGZyYW1lY3ljbGV0YWJcIiBpZD1cIm1lbmRlbG93XCIgc3R5bGU9e3tkaXNwbGF5OiBcIm5vbmVcIn19PlxyXG4gICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJQb3dlci1JbnRlcmVzdCBNYXRyaXggYWNjb3JkaW5nIHRvIE1lbmRlbG93XCIgaWQ9XCJtZW5kZWxvd0hcIi8+XHJcbiAgICAgICAgICAgICAgICA8cD5Vc2luZyB0aGUgTWVuZGVsb3cgUG93ZXItSW50ZXJlc3QgTWF0cml4LCB3ZSBjbGFzc2lmaWVkIHRoZSBwb3RlbnRpYWwgc3Rha2Vob2xkZXJzIGFzc29jaWF0ZWQgd2l0aCBvdXIgcHJvamVjdCBpbiB0ZXJtcyBvZiB0aGVpciBwb3dlciAodGhlIGFiaWxpdHkgdG8gcHJvdmlkZSBpbXBvcnRhbnQgZmVlZGJhY2sgb24gb3VyIHByb2plY3QgZGVzaWduIGFuZCBpbmZsdWVuY2Ugb3VyIHByb2plY3QgZGV2ZWxvcG1lbnQpIGFuZCBpbnRlcmVzdCBpbiBvdXIgcHJvamVjdC4gVGhlIG1hdHJpeCBjb25zaXN0cyBvZiBmb3VyIHF1YWRyYW50cyBhcnJhbmdlZCBpbiBkZXNjZW5kaW5nIG9yZGVyIGFjY29yZGluZyB0byB0aGVpciBwcmlvcml0eSBsZXZlbCBpbiB0aGUgcHJvamVjdDpcclxuICAgICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICAgIDx1bD5cclxuICAgICAgICAgICAgICAgIDxsaT5IaWdoIFBvd2VyLCBIaWdoIEludGVyZXN0IChLZXkgUGxheWVycyk8L2xpPlxyXG4gICAgICAgICAgICAgICAgPGxpPkhpZ2ggUG93ZXIsIExvdyBJbnRlcmVzdCAoS2VlcCBTYXRpc2ZpZWQpPC9saT5cclxuICAgICAgICAgICAgICAgIDxsaT5Mb3cgUG93ZXIsIEhpZ2ggSW50ZXJlc3QgKEtlZXAgSW5mb3JtZWQpPC9saT5cclxuICAgICAgICAgICAgICAgIDxsaT5Mb3cgUG93ZXIsIExvdyBJbnRlcmVzdCAoTWluaW1hbCBFZmZvcnQpPC9saT5cclxuICAgICAgICAgICAgICAgIDwvdWw+XHJcbiAgICAgICAgICAgICAgICA8cD5UaGlzIGNhdGVnb3JpemF0aW9uIGhlbHBzIHRvIGRldmVsb3AgYXBwcm9wcmlhdGUgY29tbXVuaWNhdGlvbiBhbmQgbWFuYWdlbWVudCBzdHJhdGVnaWVzIGZvciB0aGUgZGlmZmVyZW50IHN0YWtlaG9sZGVyIGdyb3VwcyBhbmQgdG8gZW5zdXJlIHRoYXQgdGhlaXIgbmVlZHMgYW5kIGluZmx1ZW5jZXMgYXJlIGNvbnNpZGVyZWQgZHVyaW5nIHRoZSBwcm9qZWN0LlxyXG4gICAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICAgICAgPFdob2xlTWVuZGVsb3cvPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3dcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZVdpdGhUYWJBbmRTY3JvbGwoe3BhdGg6IFwiXCIsIHRhYklkOiBcIm1lbmRlbG93LW9uZVwiLCBzY3JvbGxUb0lkOiBcImtleXBsYXllcnNIXCIgfSl9PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9zY2llbnRpZmljLWZpZ3VyZXMvbWVuZGVsb3ctMS1ha3R1ZWxsLnN2Z1wiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9hPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlV2l0aFRhYkFuZFNjcm9sbCh7cGF0aDogXCJcIiwgdGFiSWQ6IFwibWVuZGVsb3ctdHdvXCIsIHNjcm9sbFRvSWQ6IFwia2VlcEhcIiB9KX0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3NjaWVudGlmaWMtZmlndXJlcy9tZW5kZWxvdy0yLnN2Z1wiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9hPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VXaXRoVGFiQW5kU2Nyb2xsKHtwYXRoOiBcIlwiLCB0YWJJZDogXCJtZW5kZWxvdy10aHJlZVwiLCBzY3JvbGxUb0lkOiBcImluZm9ybWVkSFwiIH0pfT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvc2NpZW50aWZpYy1maWd1cmVzL21lbmRlbG93LTMtMS5zdmdcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvYT5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlV2l0aFRhYkFuZFNjcm9sbCh7cGF0aDogXCJcIiwgdGFiSWQ6IFwibWVuZGVsb3ctZm91clwiLCBzY3JvbGxUb0lkOiBcIm1pbmltYWxIXCIgfSl9PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9zY2llbnRpZmljLWZpZ3VyZXMvbWVuZGVsb3ctNC5zdmdcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvYT5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgey8qIFRBQlMgKi99XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cIm1lbmRlbG93dGFiXCIgaWQ9XCJtZW5kZWxvdy1vbmVcIiBzdHlsZT17e2Rpc3BsYXk6IFwibm9uZVwifX0+XHJcbiAgICAgICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJLZXkgUGxheWVyc1wiIGlkPVwia2V5cGxheWVyc0hcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgPEg1IHRleHQ9XCJIaWdoIFBvd2VyLCBIaWdoIEludGVyZXN0IC0gUHJpb3JpdHkgTGV2ZWwgNFwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIENsb3NlIHN1cHBvcnQgYW5kIGV4dGVuc2l2ZSBmZWVkYmFjayBhcmUgbmVjZXNzYXJ5IHRvIHN1Y2Nlc3NmdWxseSBpbXBsZW1lbnQgPFByZUN5c2UvPi4gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFRhcmdldCBncm91cHMgaW5jbHVkZSBleHBlcnRzIGFuZCBwaHlzaWNpYW5zIHdpdGggZXhwZXJ0aXNlIGluIGdlbmUgdGhlcmFweSBhbmQgdHJlYXRtZW50IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBzdHJhdGVnaWVzIGZvciAgQ3lzdGljIEZpYnJvc2lzLiBUaGUgcHJvamVjdCBoYXMgYSByZWFzb25hYmxlLCByZXNwb25zaWJsZSwgYW5kIGZ1dHVyZS1vcmllbnRlZCBcclxuICAgICAgICAgICAgICAgICAgICAgICAgc2lnbmlmaWNhbmNlIGZvciB0aGUgd29ybGQuIEZ1cnRoZXJtb3JlLCBzY2llbnRpZmljLXRlY2hub2xvZ2ljYWwga25vd2xlZGdlIGFuZCBiaW9zYWZldHkgYXJlIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBjcnVjaWFsLiBDb2xsYWJvcmF0aW9uIHdpdGggc3BlY2lhbGlzdHMgaW4gdGhlIGZpZWxkIG9mIGdlbmUgdGhlcmFweSwgIEN5c3RpYyBGaWJyb3NpcywgYW5kIGRpZmZlcmVudCBcclxuICAgICAgICAgICAgICAgICAgICAgICAgdHJlYXRtZW50IHN0cmF0ZWdpZXMgZW5zdXJlcyB0aGUgcXVhbGl0eSBhbmQgZWZmZWN0aXZlbmVzcyBvZiB0aGUgc29sdXRpb25zIGRldmVsb3BlZC5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+PGI+U2NpZW50aWZpYyBjb21tdW5pdHkgYW5kIHJlc2VhcmNoIGluc3RpdHV0aW9uczwvYj48L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBUaGlzIGdyb3VwIGluY2x1ZGVzIHJlc2VhcmNoZXJzLCBzY2llbnRpc3RzLCBhbmQgcmVzZWFyY2ggaW5zdGl0dXRpb25zIHNwZWNpYWxpemluZyBpbiBnZW5lIGVkaXRpbmcgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGFuZCBnZW5lIHRoZXJhcHkuIFRoZXkgaGF2ZSBhIGhpZ2ggaW50ZXJlc3QgaW4gdGhlIHN1Y2Nlc3Mgb2YgcHJpbWUgZWRpdGluZyB0ZWNobm9sb2d5IGFuZCBoYXZlIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGUgcG93ZXIgdG8gc2lnbmlmaWNhbnRseSBpbmZsdWVuY2UgdGhlIHByb2plY3QsIGJlIGl0IHRocm91Z2ggY29sbGFib3JhdGlvbnMsIHNjaWVudGlmaWMgc3VwcG9ydCwgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG9yIGNyaXRpY2FsIHJldmlld3Mgb2YgdGhlIHJlc2VhcmNoIHJlc3VsdHMuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPjxiPlJlZ3VsYXRvcnkgYXV0aG9yaXRpZXMgKGUuZy4gRkRBLCBFTUEpPC9iPjwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFJlZ3VsYXRvcnkgYWdlbmNpZXMgaGF2ZSBib3RoIHRoZSBwb3dlciBhbmQgdGhlIGludGVyZXN0IHRvIGVuc3VyZSB0aGF0IGdlbmUgdGhlcmFweSBpcyBzYWZlIGFuZCBcclxuICAgICAgICAgICAgICAgICAgICAgICAgZWZmZWN0aXZlLiBUaGV5IGFyZSBjcnVjaWFsIGZvciB0aGUgYXBwcm92YWwgYW5kIGF1dGhvcml6YXRpb24gb2YgdGhlIHRoZXJhcHkgZm9yIGNsaW5pY2FsIHVzZS5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxyXG5cclxuXHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwibWVuZGVsb3d0YWJcIiBpZD1cIm1lbmRlbG93LXR3b1wiIHN0eWxlPXt7ZGlzcGxheTogXCJub25lXCJ9fT5cclxuICAgICAgICAgICAgICAgICAgICA8SDQgdGV4dD1cIiBLZWVwIFNhdGlzZmllZFwiIGlkPVwia2VlcEhcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgPEg1IHRleHQ9XCJIaWdoIFBvd2VyLCBMb3cgSW50ZXJlc3QgLSBQcmlvcml0eSBMZXZlbCAzXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgICAgICAgICAgIEluIG9yZGVyIHRvIHN1Y2Nlc3NmdWxseSBpbXBsZW1lbnQgPFByZUN5c2UvPiwgYWxsIGNvbmNlcm5zIG11c3QgYmUgZnVsbHkgY29uc2lkZXJlZCwgZXZlbiBpZiB0aGV5IFxyXG4gICAgICAgICAgICAgICAgICAgIG1heSBkaWZmZXIgZnJvbSB0aGUgcHJvamVjdCBpbnRlcmVzdHMuIENGIHNwZWNpYWxpc3RzLCBiaW9ldGhpY3Mgc3BlY2lhbGlzdHMsIGFuZCByZWd1bGF0b3J5IGV4cGVydHMgXHJcbiAgICAgICAgICAgICAgICAgICAgcHJvdmlkZSBpbXBvcnRhbnQgaW5mb3JtYXRpb24uIFRoZWlyIGlucHV0IGlzIGJlbmVmaWNpYWwgdG8gdGhlIGltcGxlbWVudGF0aW9uIG9mIG91ciBwcm9qZWN0LiBcclxuICAgICAgICAgICAgICAgICAgICBUaGVzZSBjYXRlZ29yaWVzIG9mIGV4cGVydHMgaGVscCB0byBlbnN1cmUgdGhhdCB0aGUgcHJvamVjdCBpcyBldGhpY2FsIGFuZCBjb21wbGlhbnQgd2l0aCB0aGUgbGF3LiBcclxuICAgICAgICAgICAgICAgICAgICBUaGVpciBleHBlcnRpc2UgZW5zdXJlcyB0aGF0IGFsbCByZWxldmFudCBhc3BlY3RzIGFyZSBjb3ZlcmVkLlxyXG4gICAgICAgICAgICAgICAgICAgIDwvcD5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgPHA+PGI+R292ZXJubWVudCBhbmQgcHVibGljIGhlYWx0aCBhdXRob3JpdGllczwvYj48L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgICAgICAgICAgQWx0aG91Z2ggdGhlc2Ugc3Rha2Vob2xkZXJzIGhhdmUgc29tZSBpbnRlcmVzdCBpbiBuZXcgdGhlcmFwaWVzIHRoYXQgaW1wcm92ZSBwb3B1bGF0aW9uIGhlYWx0aCwgXHJcbiAgICAgICAgICAgICAgICAgICAgdGhlaXIgZGF5LXRvLWRheSBpbnRlcmVzdCBtYXkgbm90IGJlIHNwZWNpZmljYWxseSBmb2N1c2VkIG9uIHRoZSBpR0VNIHByb2plY3QuIEhvd2V2ZXIsIHRoZXkgaGF2ZSBcclxuICAgICAgICAgICAgICAgICAgICB0aGUgcG93ZXIgdG8gaW5mbHVlbmNlIHRoZSBwcm9qZWN0IHRocm91Z2ggZnVuZGluZywgcG9saXRpY2FsIHN1cHBvcnQsIG9yIHJlZ3VsYXRvcnkgYWN0aW9uLlxyXG4gICAgICAgICAgICAgICAgICAgIDwvcD5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgPHA+PGI+UGhhcm1hY2V1dGljYWwgY29tcGFuaWVzIGFuZCBpbmR1c3RyaWVzPC9iPjwvcD5cclxuICAgICAgICAgICAgICAgICAgICA8cD5cclxuICAgICAgICAgICAgICAgICAgICBMYXJnZSBwaGFybWFjZXV0aWNhbCBjb21wYW5pZXMgaGF2ZSB0aGUgcG93ZXIgdG8gc2lnbmlmaWNhbnRseSBzdXBwb3J0IHRoZSBwcm9qZWN0IHRocm91Z2ggXHJcbiAgICAgICAgICAgICAgICAgICAgaW52ZXN0bWVudCBvciBzdHJhdGVnaWMgcGFydG5lcnNoaXBzLiBIb3dldmVyLCB0aGVpciBpbnRlcmVzdCBtYXkgYmUgbG93IGZvciB0aGUgdGltZSBiZWluZyB1bnRpbCBcclxuICAgICAgICAgICAgICAgICAgICB0aGUgcHJvamVjdCBoYXMgcHJvdmVuIHRoYXQgaXQgaXMgY29tbWVyY2lhbGx5IHByb21pc2luZy5cclxuICAgICAgICAgICAgICAgICAgICA8L3A+XHJcblxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cIm1lbmRlbG93dGFiXCIgaWQ9XCJtZW5kZWxvdy10aHJlZVwiIHN0eWxlPXt7ZGlzcGxheTogXCJub25lXCJ9fT5cclxuICAgICAgICAgICAgICAgICAgICA8SDQgdGV4dD1cIktlZXAgSW5mb3JtZWRcIiBpZD1cImluZm9ybWVkSFwiLz5cclxuICAgICAgICAgICAgICAgICAgICA8SDUgdGV4dD1cIktFRVAgSU5GT1JNRUQgLSBMb3cgUG93ZXIsIEhpZ2ggSW50ZXJlc3QgLSBQcmlvcml0eSBMZXZlbCAyXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgIDxwPiA8Yj5Qb3RlbnRpYWwgdXNlcnMgb2YgPFByZUN5c2UvPjwvYj4gPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgICAgICAgICAgIGFyZSBpbXBvcnRhbnQgZm9yIHVuZGVyc3RhbmRpbmcgdGhlIG5lZWRzLCBldmVuIGlmIHRoZWlyIGV4cGVydGlzZSBcclxuICAgICAgICAgICAgICAgICAgICBtYXkgbm90IGJlIHN1ZmZpY2llbnQgdG8gc29sdmUgYWxsIHRoZSBwcm9ibGVtcyB0aGF0IGFyaXNlIGluIHRoZSBwcm9qZWN0LiBJdCBpcyB0aGVyZWZvcmUgaW1wb3J0YW50IHRvIFxyXG4gICAgICAgICAgICAgICAgICAgIGtlZXAgdGhlbSBpbmZvcm1lZC4gVGhlc2UgdXNlcnMgaW5jbHVkZSBzdGFrZWhvbGRlcnMgYXMgdGhlaXIgbmVlZHMgY29pbmNpZGUgd2l0aCB0aGUgcHJvamVjdC4gXHJcbiAgICAgICAgICAgICAgICAgICAgVGhlaXIgZmVlZGJhY2sgY2FuIHByb3ZpZGUgdmFsdWFibGUgaW5zaWdodHMuIFRoaXMgY29sbGFib3JhdGlvbiBoZWxwcyB0byBiZXR0ZXIgdGFpbG9yIHRoZSBwcm9qZWN0IFxyXG4gICAgICAgICAgICAgICAgICAgIHRvIHVzZXIgbmVlZHMuXHJcbiAgICAgICAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgIDxwPjxiPlBhdGllbnRzIGFuZCBwYXRpZW50IG9yZ2FuaXphdGlvbnM8L2I+PC9wPlxyXG4gICAgICAgICAgICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgIFBhdGllbnRzIHN1ZmZlcmluZyBmcm9tICBDeXN0aWMgRmlicm9zaXMgYW5kIHRoZSBvcmdhbml6YXRpb25zIHRoYXQgc3VwcG9ydCB0aGVtIGhhdmUgYSBoaWdoIGludGVyZXN0IGluIFxyXG4gICAgICAgICAgICAgICAgICAgIG5ldyB0aGVyYXBpZXMgdGhhdCBjb3VsZCBpbXByb3ZlIHRoZWlyIHF1YWxpdHkgb2YgbGlmZS4gSG93ZXZlciwgdGhlaXIgcG93ZXIgdG8gaW5mbHVlbmNlIHRoZSBwcm9qZWN0IFxyXG4gICAgICAgICAgICAgICAgICAgIGlzIGxpbWl0ZWQuXHJcbiAgICAgICAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgIDxwPiA8Yj5BY2FkZW1pYyBjb21tdW5pdHkgYW5kIHN0dWRlbnRzPC9iPjwvcD5cclxuICAgICAgICAgICAgICAgICAgICA8cD5cclxuICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICBUaGlzIGdyb3VwIGluY2x1ZGVzIHVuaXZlcnNpdGllcywgcHJvZmVzc29ycywgYW5kIHN0dWRlbnRzIHdobyBhcmUgaW50ZXJlc3RlZCBpbiB0aGUgbGF0ZXN0IHJlc2VhcmNoIFxyXG4gICAgICAgICAgICAgICAgICAgIGluIGdlbmUgdGhlcmFweS4gQWx0aG91Z2ggdGhleSBkbyBub3QgaGF2ZSB0aGUgZGlyZWN0IHBvd2VyIHRvIGluZmx1ZW5jZSB0aGUgcHJvamVjdCwgdGhleSBjYW4gXHJcbiAgICAgICAgICAgICAgICAgICAgc3VwcG9ydCBhbmQgcHJvbW90ZSB0aGUgcHJvamVjdCB0aHJvdWdoIHJlc2VhcmNoIGFuZCBhY2FkZW1pYyBwdWJsaWNhdGlvbnMuXHJcbiAgICAgICAgICAgICAgICAgICAgPC9wPlxyXG5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJtZW5kZWxvd3RhYlwiIGlkPVwibWVuZGVsb3ctZm91clwiIHN0eWxlPXt7ZGlzcGxheTogXCJub25lXCJ9fT5cclxuICAgICAgICAgICAgICAgICAgICA8SDQgdGV4dD1cIk1pbmltYWwgRWZmb3J0XCIgaWQ9XCJtaW5pbWFsSFwiLz5cclxuICAgICAgICAgICAgICAgICAgICA8SDUgdGV4dD1cIkxvdyBQb3dlciwgTG93IEludGVyZXN0IC0gUHJpb3JpdHkgTGV2ZWwgMVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPjxiPlN0YWtlaG9sZGVycyB3aG8gYXJlIHJlZ3VsYXJseSBtb25pdG9yZWQ8L2I+PC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgbWF5IG5vdCBiZSBpbnRlcmVzdGVkIGluIHRoZSBwcm9qZWN0IGFuZCBkbyBub3QgcHJvdmlkZSBmZWVkYmFjay4gSG93ZXZlciwgdGhpcyBjYW4gY2hhbmdlIG92ZXIgdGltZS4gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFN0YWtlaG9sZGVycyBpbiB0aGlzIGNhdGVnb3J5IGFyZSBpbnZvbHZlZCBpbiB0aGUgcmlnaHQgc2l0dWF0aW9uLiBGb3IgZXhhbXBsZSwgdGhlIHB1YmxpYyBvZiBCaWVsZWZlbGQgaXMgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGVzc2VudGlhbCBmb3IgdW5kZXJzdGFuZGluZyB0aGUgYmFja2dyb3VuZCBpbmZvcm1hdGlvbiBhYm91dCB0aGUgYXdhcmVuZXNzIG9mIGdlbmUgdGhlcmFweSBvciBDeXN0aWMgRmlicm9zaXMuIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBUaGVpciBpbnZvbHZlbWVudCBvY2N1cnMgd2hlbiBpdCBpcyByZWxldmFudCBhbmQgb3RoZXIgZ3JvdXBzIG9mIHBlb3BsZSBjYW5ub3QgbWVldCB0aGVpciBuZWVkcy5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+PGI+R2VuZXJhbCBwdWJsaWMgb2YgQmllbGVmZWxkPC9iPjwvcD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFRoZSBwdWJsaWMgbWF5IGhhdmUgbGl0dGxlIGludGVyZXN0IGFuZCBwb3dlciBpbiByZWxhdGlvbiB0byB0aGUgc3BlY2lmaWMgaUdFTSBwcm9qZWN0LiBXaGlsZSBhIGNlcnRhaW4gbGV2ZWwgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG9mIGVkdWNhdGlvbiBhbmQgYXdhcmVuZXNzIG9mIHRoZSB0b3BpYyBpcyBpbXBvcnRhbnQsIGludGVuc2l2ZSBpbnZvbHZlbWVudCBvZiB0aGlzIGdyb3VwIGlzIGdlbmVyYWxseSBub3QgbmVjZXNzYXJ5LlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD48Yj5NZWRpYTwvYj48L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBUaGUgbWVkaWEgbWF5IGhhdmUgYW4gaW50ZXJlc3QgaW4gc2NpZW50aWZpYyBicmVha3Rocm91Z2hzIGFuZCBuZXcgdGVjaG5vbG9naWVzLCBidXQgdGhleSB0ZW5kIHRvIGhhdmUgbGl0dGxlIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBwb3dlciBpbiB0ZXJtcyBvZiBkaXJlY3RseSBpbmZsdWVuY2luZyB0aGUgcHJvamVjdC4gTmV2ZXJ0aGVsZXNzLCBzdHJhdGVnaWMgY29tbXVuaWNhdGlvbiB3aXRoIHRoZSBtZWRpYSBjYW4gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJlIGltcG9ydGFudCB0byBtYW5hZ2UgcHVibGljIHBlcmNlcHRpb24uXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wgZnJhbWVjeWNsZXRhYlwiIGlkPVwic3dvdFwiIHN0eWxlPXt7ZGlzcGxheTogXCJub25lXCJ9fT5cclxuICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiU1dPVCBBbmFseXNlc1wiIGlkPVwic3dvdEhcIi8+XHJcbiAgICAgICAgICAgICAgICA8cD5BIDxiPlNXT1Q8L2I+IGFuYWx5c2lzIGlzIGEgc3RyYXRlZ2ljIHRvb2wgdXNlZCB0byBldmFsdWF0ZSB0aGUgPGI+UzwvYj50cmVuZ3RocywgPGI+VzwvYj5lYWtuZXNzZXMsIDxiPk88L2I+cHBvcnR1bml0aWVzLCBhbmQgPGI+VDwvYj5ocmVhdHMgb2YgYW4gXHJcbiAgICAgICAgICAgICAgICBvcmdhbml6YXRpb24uIEluIHRoZSBjb250ZXh0IG9mIG91ciBIdW1hbiBQcmFjdGljZSBhcHByb2FjaCwgdGhpcyBhbmFseXNpcyBoZWxwcyB1cyBpZGVudGlmeSBpbnRlcm5hbCBzdHJlbmd0aHMgYW5kIHdlYWtuZXNzZXMgb2Ygb3VyIHByb2plY3QsIHN1Y2ggYXMgXHJcbiAgICAgICAgICAgICAgICB0ZWNobmljYWwgY2FwYWJpbGl0aWVzIGFuZCByZXNvdXJjZSBsaW1pdGF0aW9ucywgd2hpbGUgYWxzbyBleGFtaW5pbmcgZXh0ZXJuYWwgb3Bwb3J0dW5pdGllcywgbGlrZSBwb3RlbnRpYWwgY29sbGFib3JhdGlvbnMsIGFuZCB0aHJlYXRzLCBzdWNoIGFzIHJlZ3VsYXRvcnkgXHJcbiAgICAgICAgICAgICAgICBjaGFsbGVuZ2VzIG9yIHB1YmxpYyBwZXJjZXB0aW9uLiBcclxuICAgICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICAgIDxTV09Ub25lLz5cclxuXHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wgXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPEJ1dHRvbk9uZSB0ZXh0PVwiUGF0aWVudHNcIiBvcGVuPVwicGF0c1wiIG9wZW5jbGFzcz1cInN1YmN5Y2xldGFiXCI+PC9CdXR0b25PbmU+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sIFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxCdXR0b25PbmUgdGV4dD1cIkluZHVzdHJ5XCIgb3Blbj1cImluZHNcIiBvcGVuY2xhc3M9XCJzdWJjeWNsZXRhYlwiPjwvQnV0dG9uT25lPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbCBcIj5cclxuICAgICAgICAgICAgICAgICAgICA8QnV0dG9uT25lIHRleHQ9XCJBY2FkZW1pYVwiIG9wZW49XCJhY3NcIiBvcGVuY2xhc3M9XCJzdWJjeWNsZXRhYlwiPjwvQnV0dG9uT25lPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbCBcIj5cclxuICAgICAgICAgICAgICAgICAgICA8QnV0dG9uT25lIHRleHQ9XCJIZWFsdGhjYXJlXCIgb3Blbj1cImhlYWx0aHNcIiBvcGVuY2xhc3M9XCJzdWJjeWNsZXRhYlwiPjwvQnV0dG9uT25lPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgPCAgIGRpdiBjbGFzc05hbWU9XCJjb2wgXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPEJ1dHRvbk9uZSB0ZXh0PVwiR292ZXJubWVudFwiIG9wZW49XCJnb3ZzXCIgb3BlbmNsYXNzPVwic3ViY3ljbGV0YWJcIj48L0J1dHRvbk9uZT5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbCBcIj5cclxuICAgICAgICAgICAgICAgICAgICA8QnV0dG9uT25lIHRleHQ9XCJDb21tdW5pdHlcIiBvcGVuPVwiY29tbXNcIiBvcGVuY2xhc3M9XCJzdWJjeWNsZXRhYlwiPjwvQnV0dG9uT25lPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sIFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxCdXR0b25PbmUgdGV4dD1cIlRoZSBQdWJsaWNcIiBvcGVuPVwicHVic1wiIG9wZW5jbGFzcz1cInN1YmN5Y2xldGFiXCI+PC9CdXR0b25PbmU+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wgXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPEJ1dHRvbk9uZSB0ZXh0PVwiQnVzaW5lc3NcIiBvcGVuPVwiYnVzaVwiIG9wZW5jbGFzcz1cInN1YmN5Y2xldGFiXCI+PC9CdXR0b25PbmU+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wgc3ViY3ljbGV0YWJcIiBpZD1cInBhdHNcIiBzdHlsZT17e2Rpc3BsYXk6IFwiYmxvY2tcIn19PiBcclxuICAgICAgICAgICAgICAgIDxINSB0ZXh0PVwiUGF0aWVudCBBZHZvY2FjeSBhbmQgU3VwcG9ydCBHcm91cHNcIi8+XHJcbiAgICAgICAgICAgICAgICA8dGFibGUgY2VsbFBhZGRpbmc9ezEwfSBjZWxsU3BhY2luZz17MH0gPlxyXG4gICAgICAgICAgICAgICAgICAgIDx0aGVhZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPlN0cmVuZ3RoczwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGg+V2Vha25lc3NlczwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGg+T3Bwb3J0dW5pdGllczwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGg+VGhyZWF0czwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgICAgICAgICAgICAgPC90aGVhZD5cclxuICAgICAgICAgICAgICAgICAgICA8dGJvZHk+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0cj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5TdHJvbmcgc3VwcG9ydCBuZXR3b3JrIGZvciBwYXRpZW50cyA8L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPkluZmx1ZW50aWFsIGluIHBvbGljeSBhZHZvY2FjeSA8L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPlBlcnNvbmFsIGNvbm5lY3Rpb24gdG8gcGF0aWVudCBjb21tdW5pdGllcyA8L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dHI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+TGltaXRlZCBmdW5kaW5nIGFuZCByZXNvdXJjZXMgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5Qb3RlbnRpYWwgcmVzaXN0YW5jZSB0byBuZXcgdGVjaG5vbG9naWVzIDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+RGVwZW5kZW5jZSBvbiBkb25hdGlvbnMgYW5kIGdyYW50cyA8L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dHI+IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPkluY3JlYXNlZCBwYXRpZW50IGVuZ2FnZW1lbnQgYW5kIHN1cHBvcnQgZm9yIG5ldyB0aGVyYXBpZXMgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5BZHZvY2FjeSBjYW4gZHJpdmUgcG9saWN5IGNoYW5nZXMgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5FbmhhbmNpbmcgYXdhcmVuZXNzIGFuZCBlZHVjYXRpb24gPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRyPiBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5Qb3RlbnRpYWwgb3Bwb3NpdGlvbiBmcm9tIGdyb3VwcyBza2VwdGljYWwgb2YgbmV3IHRyZWF0bWVudHMgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5NaXNpbmZvcm1hdGlvbiBvciBtaXNjb21tdW5pY2F0aW9uIGFib3V0IG5ldyB0aGVyYXBpZXMgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5Db21wZXRpbmcgcHJpb3JpdGllcyBhbW9uZyBhZHZvY2FjeSBncm91cHMgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cclxuICAgICAgICAgICAgICAgICAgICA8L3Rib2R5PlxyXG4gICAgICAgICAgICAgICAgPC90YWJsZT5cclxuXHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sIHN1YmN5Y2xldGFiXCIgaWQ9XCJpbmRzXCIgc3R5bGU9e3tkaXNwbGF5OiBcIm5vbmVcIn19PlxyXG4gICAgICAgICAgICAgICAgPEg1IHRleHQ9XCJQaGFybWFjZXV0aWNhbCBDb21wYW5pZXNcIiAvPlxyXG4gICAgICAgICAgICAgICAgPHRhYmxlIGNlbGxQYWRkaW5nPXsxMH0gY2VsbFNwYWNpbmc9ezB9ID5cclxuICAgICAgICAgICAgICAgICAgICA8dGhlYWQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0cj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aD5TdHJlbmd0aHM8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPldlYWtuZXNzZXM8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPk9wcG9ydHVuaXRpZXM8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPlRocmVhdHM8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvdGhlYWQ+XHJcbiAgICAgICAgICAgICAgICAgICAgPHRib2R5PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dHI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+UmVzb3VyY2VzIGZvciBsYXJnZS1zY2FsZSBwcm9kdWN0aW9uIGFuZCBkaXN0cmlidXRpb24gPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5FeHBlcmllbmNlIHdpdGggcmVndWxhdG9yeSBwcm9jZXNzZXMgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5TdHJvbmcgcmVzZWFyY2ggYW5kIGRldmVsb3BtZW50IGNhcGFiaWxpdGllcyA8L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dHI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+Rm9jdXMgb24gcHJvZml0YWJpbGl0eSBtYXkgY29uZmxpY3Qgd2l0aCBwYXRpZW50IGFmZm9yZGFiaWxpdHkgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5Mb25nIGRldmVsb3BtZW50IHRpbWVsaW5lcyA8L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPlBvdGVudGlhbCBmb3IgaGlnaCBwcmljaW5nIDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+UG90ZW50aWFsIGZvciBkZXZlbG9waW5nIG5ldyB0cmVhdG1lbnQgbW9kYWxpdGllcyA8L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPk1hcmtldCBleHBhbnNpb24gYW5kIGNvbXBldGl0aXZlIGFkdmFudGFnZSA8L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPlBhcnRuZXJzaGlwcyB3aXRoIHJlc2VhcmNoIGluc3RpdHV0aW9ucyA8L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dHI+IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPkhpZ2ggY29zdCBhbmQgcmlzayBhc3NvY2lhdGVkIHdpdGggbmV3IHRoZXJhcHkgZGV2ZWxvcG1lbnQgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5TdHJpbmdlbnQgcmVndWxhdG9yeSBhbmQgY29tcGxpYW5jZSByZXF1aXJlbWVudHMgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5Qb3RlbnRpYWwgcHVibGljIGJhY2tsYXNoIG92ZXIgaGlnaCB0cmVhdG1lbnQgY29zdHMgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cclxuICAgICAgICAgICAgICAgICAgICA8L3Rib2R5PlxyXG4gICAgICAgICAgICAgICAgPC90YWJsZT5cclxuICAgICAgICAgICAgICAgIDxINSB0ZXh0PVwiQmlvZW5naW5lZXJpbmcgYW5kIEJpb3RlY2hub2xvZ3kgRGVwYXJ0bWVudHMgXCIvPlxyXG4gICAgICAgICAgICAgICAgPHRhYmxlIGNlbGxQYWRkaW5nPXsxMH0gY2VsbFNwYWNpbmc9ezB9ID5cclxuICAgICAgICAgICAgICAgICAgICA8dGhlYWQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0cj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aD5TdHJlbmd0aHM8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPldlYWtuZXNzZXM8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPk9wcG9ydHVuaXRpZXM8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPlRocmVhdHM8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvdGhlYWQ+XHJcbiAgICAgICAgICAgICAgICAgICAgPHRib2R5PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dHI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+QWdpbGUgYW5kIGlubm92YXRpdmUsIGNhbiBxdWlja2x5IGFkYXB0IHRvIG5ldyB0ZWNobm9sb2dpZXMgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5Gb2N1c2VkIG9uIG5pY2hlIG1hcmtldHMgYW5kIGN1dHRpbmctZWRnZSBzb2x1dGlvbnMgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5TdHJvbmcgZW50cmVwcmVuZXVyaWFsIHNwaXJpdCA8L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dHI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+T3Bwb3J0dW5pdHkgZm9yIHJhcGlkIGdyb3d0aCBhbmQgcGFydG5lcnNoaXAgd2l0aCBsYXJnZXIgZmlybXMgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5Qb3RlbnRpYWwgdG8gZGlzcnVwdCBleGlzdGluZyBtYXJrZXRzIHdpdGggaW5ub3ZhdGl2ZSBzb2x1dGlvbnMgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5PcHBvcnR1bml0aWVzIGZvciBjb2xsYWJvcmF0aW9uIGFuZCBhY3F1aXNpdGlvbiA8L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dHI+IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPkhpZ2ggcmlzayBvZiBmYWlsdXJlIGFuZCBtYXJrZXQgdm9sYXRpbGl0eSA8L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPkludGVuc2UgY29tcGV0aXRpb24gYW5kIGZhc3QtcGFjZWQgaW5kdXN0cnkgY2hhbmdlcyA8L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPlJlZ3VsYXRvcnkgYW5kIG1hcmtldCBlbnRyeSBiYXJyaWVycyA8L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvdGJvZHk+XHJcbiAgICAgICAgICAgICAgICA8L3RhYmxlPlxyXG4gICAgXHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sIHN1YmN5Y2xldGFiXCIgaWQ9XCJhY3NcIiBzdHlsZT17e2Rpc3BsYXk6IFwibm9uZVwifX0+XHJcbiAgICAgICAgICAgICAgICA8SDUgdGV4dD1cIkdlbmV0aWMgUmVzZWFyY2ggSW5zdGl0dXRpb25zIFwiLz5cclxuICAgICAgICAgICAgICAgIDx0YWJsZSBjZWxsUGFkZGluZz17MTB9IGNlbGxTcGFjaW5nPXswfSA+XHJcbiAgICAgICAgICAgICAgICAgICAgPHRoZWFkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dHI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGg+U3RyZW5ndGhzPC90aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aD5XZWFrbmVzc2VzPC90aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aD5PcHBvcnR1bml0aWVzPC90aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aD5UaHJlYXRzPC90aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cclxuICAgICAgICAgICAgICAgICAgICA8L3RoZWFkPlxyXG4gICAgICAgICAgICAgICAgICAgIDx0Ym9keT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPkV4cGVydGlzZSBpbiBnZW5ldGljIGRpc29yZGVycyBhbmQgYWR2YW5jZWQgcmVzZWFyY2ggY2FwYWJpbGl0aWVzIDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+QWNjZXNzIHRvIHN0YXRlLW9mLXRoZS1hcnQgcmVzZWFyY2ggZmFjaWxpdGllcyA8L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPlN0cm9uZyB0cmFjayByZWNvcmQgb2YgaW5ub3ZhdGlvbiA8L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dHI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+TWF5IGhhdmUgbGltaXRlZCBwcmFjdGljYWwgZXhwZXJpZW5jZSB3aXRoIHRoZXJhcHkgZGVsaXZlcnkgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5Qb3RlbnRpYWwgZGlzY29ubmVjdCBiZXR3ZWVuIHJlc2VhcmNoIGFuZCBjbGluaWNhbCBhcHBsaWNhdGlvbiA8L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPkhpZ2ggb3BlcmF0aW9uYWwgY29zdHMgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRyPiBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5Db2xsYWJvcmF0aW9uIGNhbiBsZWFkIHRvIGJyZWFrdGhyb3VnaHMgaW4gZ2VuZSBlZGl0aW5nIDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+UG90ZW50aWFsIGZvciBncm91bmRicmVha2luZyByZXNlYXJjaCBhbmQgbmV3IGRpc2NvdmVyaWVzIDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+Q29sbGFib3JhdGl2ZSByZXNlYXJjaCBvcHBvcnR1bml0aWVzIDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+SGlnaCBjb21wZXRpdGlvbiBmb3IgZnVuZGluZyBhbmQgcmVzZWFyY2ggZ3JhbnRzIDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+UmFwaWQgdGVjaG5vbG9naWNhbCBjaGFuZ2VzIHJlcXVpcmluZyBjb25zdGFudCBhZGFwdGF0aW9uIDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+RXRoaWNhbCBhbmQgcmVndWxhdG9yeSBjaGFsbGVuZ2VzIDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgICAgICAgICAgICAgPC90Ym9keT5cclxuICAgICAgICAgICAgICAgIDwvdGFibGU+XHJcbiAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgIDxINSB0ZXh0PVwiVW5pdmVyc2l0aWVzIGFuZCBBY2FkZW1pYyBSZXNlYXJjaGVycyBcIi8+XHJcbiAgICAgICAgICAgICAgICA8dGFibGUgY2VsbFBhZGRpbmc9ezEwfSBjZWxsU3BhY2luZz17MH0gPlxyXG4gICAgICAgICAgICAgICAgICAgIDx0aGVhZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPlN0cmVuZ3RoczwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGg+V2Vha25lc3NlczwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGg+T3Bwb3J0dW5pdGllczwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGg+VGhyZWF0czwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgICAgICAgICAgICAgPC90aGVhZD5cclxuICAgICAgICAgICAgICAgICAgICA8dGJvZHk+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0cj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5TdHJvbmcgcmVzZWFyY2ggZm91bmRhdGlvbiBhbmQgaW5ub3ZhdGlvbiBjYXBhYmlsaXRpZXMgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5BY2Nlc3MgdG8gYSBkaXZlcnNlIHBvb2wgb2YgYWNhZGVtaWMgdGFsZW50IDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+RXN0YWJsaXNoZWQgcmVzZWFyY2ggaW5mcmFzdHJ1Y3R1cmUgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPk1heSBoYXZlIGxpbWl0ZWQgcmVzb3VyY2VzIGZvciBjb21tZXJjaWFsaXphdGlvbiA8L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPkxpbWl0ZWQgaW5kdXN0cnkgY29ubmVjdGlvbnMgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5IaWdoIGNvbXBldGl0aW9uIGZvciBhY2FkZW1pYyBncmFudHMgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRyPiBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5Qb3RlbnRpYWwgZm9yIGdyb3VuZGJyZWFraW5nIHJlc2VhcmNoIGFuZCBuZXcgZGlzY292ZXJpZXMgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5Db2xsYWJvcmF0aW9uIHdpdGggaW5kdXN0cnkgZm9yIGFwcGxpZWQgcmVzZWFyY2ggPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5PcHBvcnR1bml0aWVzIGZvciBpbnRlcmRpc2NpcGxpbmFyeSByZXNlYXJjaCA8L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dHI+IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPkZ1bmRpbmcgbGltaXRhdGlvbnMgYW5kIGJ1cmVhdWNyYXRpYyBjaGFsbGVuZ2VzIDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+SW50ZWxsZWN0dWFsIHByb3BlcnR5IGFuZCB0ZWNobm9sb2d5IHRyYW5zZmVyIGlzc3VlcyA8L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPkJhbGFuY2luZyBhY2FkZW1pYyByZXNlYXJjaCB3aXRoIHByYWN0aWNhbCBhcHBsaWNhdGlvbnMgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cclxuICAgICAgICAgICAgICAgICAgICA8L3Rib2R5PlxyXG4gICAgICAgICAgICAgICAgPC90YWJsZT5cclxuICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbCBzdWJjeWNsZXRhYlwiIGlkPVwiaGVhbHRoc1wiIHN0eWxlPXt7ZGlzcGxheTogXCJub25lXCJ9fT5cclxuICAgICAgICAgICAgICAgIDxINSB0ZXh0PVwiUHVsbW9ub2xvZ2lzdHMgYW5kIFJlc3BpcmF0b3J5IFNwZWNpYWxpc3RzXCIvPlxyXG4gICAgICAgICAgICAgICAgPHRhYmxlIGNlbGxQYWRkaW5nPXsxMH0gY2VsbFNwYWNpbmc9ezB9ID5cclxuICAgICAgICAgICAgICAgICAgICA8dGhlYWQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0cj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aD5TdHJlbmd0aHM8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPldlYWtuZXNzZXM8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPk9wcG9ydHVuaXRpZXM8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPlRocmVhdHM8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvdGhlYWQ+XHJcbiAgICAgICAgICAgICAgICAgICAgPHRib2R5PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dHI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+RGVlcCB1bmRlcnN0YW5kaW5nIG9mIENGIGFuZCBpdHMgY29tcGxpY2F0aW9ucyA8L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPkRpcmVjdCBwYXRpZW50IGNhcmUgZXhwZXJpZW5jZSA8L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPkVzdGFibGlzaGVkIHBhdGllbnQgdHJ1c3QgYW5kIHJhcHBvcnQgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPk1heSBsYWNrIGV4cGVydGlzZSBpbiBnZW5lIGVkaXRpbmcgYW5kIG5ldyBkZWxpdmVyeSBzeXN0ZW1zIDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+TGltaXRlZCB0aW1lIGFuZCByZXNvdXJjZXMgZm9yIHJlc2VhcmNoIGludm9sdmVtZW50IDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+UmlzayBvZiBzbG93IGFkb3B0aW9uIG9mIG5ldyB0ZWNobm9sb2dpZXMgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRyPiBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5DYW4gcHJvdmlkZSB2YWx1YWJsZSBpbnNpZ2h0cyBmb3IgdGhlcmFweSBvcHRpbWl6YXRpb24gPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5PcHBvcnR1bml0aWVzIGZvciBjbGluaWNhbCB0cmlhbHMgYW5kIHBhdGllbnQgZmVlZGJhY2sgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5FbmhhbmNlZCB0cmVhdG1lbnQgcHJvdG9jb2xzIHRocm91Z2ggY29sbGFib3JhdGlvbiA8L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dHI+IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPlJlc2lzdGFuY2UgdG8gYWRvcHQgbmV3IGFuZCB1bnByb3ZlbiB0aGVyYXBpZXMgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5Qb3RlbnRpYWwgbGlhYmlsaXR5IGlzc3VlcyB3aXRoIG5ldyB0cmVhdG1lbnRzIDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+Q29tcGV0aXRpb24gZnJvbSBhbHRlcm5hdGl2ZSB0aGVyYXBpZXMgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cclxuICAgICAgICAgICAgICAgICAgICA8L3Rib2R5PlxyXG4gICAgICAgICAgICAgICAgPC90YWJsZT5cclxuICAgICAgICAgICAgICAgIDxINSB0ZXh0PVwiU3BlY2lhbGl6ZWQgQ2xpbmljcyBhbmQgSG9zcGl0YWxzXCIvPlxyXG4gICAgICAgICAgICAgICAgPHRhYmxlIGNlbGxQYWRkaW5nPXsxMH0gY2VsbFNwYWNpbmc9ezB9ID5cclxuICAgICAgICAgICAgICAgICAgICA8dGhlYWQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0cj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aD5TdHJlbmd0aHM8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPldlYWtuZXNzZXM8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPk9wcG9ydHVuaXRpZXM8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPlRocmVhdHM8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvdGhlYWQ+XHJcbiAgICAgICAgICAgICAgICAgICAgPHRib2R5PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dHI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+RGlyZWN0IGFjY2VzcyB0byBwYXRpZW50IHBvcHVsYXRpb24gPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5BYmlsaXR5IHRvIGNvbmR1Y3QgY2xpbmljYWwgdHJpYWxzIDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+RXhwZXJpZW5jZWQgbWVkaWNhbCBzdGFmZiBhbmQgaW5mcmFzdHJ1Y3R1cmUgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPk1heSBsYWNrIGV4cGVydGlzZSBpbiBnZW5lIHRoZXJhcHkgYW5kIG5ldyBkZWxpdmVyeSBzeXN0ZW1zIDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+SGlnaCBvcGVyYXRpb25hbCBjb3N0cyA8L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPlBvdGVudGlhbCBsaWFiaWxpdHkgYW5kIGV0aGljYWwgY29uY2VybnMgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRyPiBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5DbGluaWNhbCB0cmlhbHMgYW5kIHJlYWwtd29ybGQgYXBwbGljYXRpb24gb2YgbmV3IHRoZXJhcGllcyA8L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPk9wcG9ydHVuaXRpZXMgZm9yIGltcHJvdmluZyBwYXRpZW50IGNhcmUgYW5kIG91dGNvbWVzIDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+Q29sbGFib3JhdGlvbiB3aXRoIHJlc2VhcmNoIGluc3RpdHV0aW9ucyBmb3IgdGhlcmFweSBkZXZlbG9wbWVudCA8L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dHI+IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPkhpZ2ggY29zdCBhbmQgY29tcGxleGl0eSBvZiBpbnRlZ3JhdGluZyBuZXcgdGhlcmFwaWVzIDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+UmVzaXN0YW5jZSBmcm9tIGNsaW5pY2FsIHN0YWZmIHRvIGFkb3B0IG5ldyB0ZWNobm9sb2dpZXMgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5Db21wZXRpdGlvbiBmb3IgcGF0aWVudHMgYW5kIGNsaW5pY2FsIHRyaWFsIHBhcnRpY2lwYXRpb24gPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cclxuICAgICAgICAgICAgICAgICAgICA8L3Rib2R5PlxyXG4gICAgICAgICAgICAgICAgPC90YWJsZT5cclxuICAgICAgICAgICAgICAgIDxINSB0ZXh0PVwiSGVhbHRoY2FyZSBOZXR3b3Jrc1wiLz5cclxuICAgICAgICAgICAgICAgIDx0YWJsZSBjZWxsUGFkZGluZz17MTB9IGNlbGxTcGFjaW5nPXswfSA+XHJcbiAgICAgICAgICAgICAgICAgICAgPHRoZWFkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dHI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGg+U3RyZW5ndGhzPC90aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aD5XZWFrbmVzc2VzPC90aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aD5PcHBvcnR1bml0aWVzPC90aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aD5UaHJlYXRzPC90aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cclxuICAgICAgICAgICAgICAgICAgICA8L3RoZWFkPlxyXG4gICAgICAgICAgICAgICAgICAgIDx0Ym9keT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPkJyb2FkIHJlYWNoIGFuZCBpbmZsdWVuY2UgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5BYmlsaXR5IHRvIGltcGxlbWVudCBuZXcgdGhlcmFwaWVzIHdpZGVseSA8L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPkVzdGFibGlzaGVkIHJlbGF0aW9uc2hpcHMgd2l0aCBwYXRpZW50IGNvbW11bml0aWVzIDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0cj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5WYXJpYWJpbGl0eSBpbiBuZXR3b3JrIGNhcGFiaWxpdGllcyBhbmQgcmVzb3VyY2VzIDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+Q29tcGxleCBjb29yZGluYXRpb24gcmVxdWlyZWQgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5Qb3RlbnRpYWwgZGlzcGFyaXRpZXMgaW4gY2FyZSBxdWFsaXR5IDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+UG90ZW50aWFsIGZvciBsYXJnZS1zY2FsZSBpbXBhY3Qgb24gcGF0aWVudCBjYXJlIDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+TGV2ZXJhZ2luZyBuZXR3b3JrIGZvciBsYXJnZS1zY2FsZSBjbGluaWNhbCB0cmlhbHMgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5TdGFuZGFyZGl6aW5nIGNhcmUgYWNyb3NzIG11bHRpcGxlIGZhY2lsaXRpZXMgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRyPiBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5Pcmdhbml6YXRpb25hbCByZXNpc3RhbmNlIHRvIGNoYW5nZSA8L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPkVjb25vbWljIHByZXNzdXJlcyBhbmQgYnVkZ2V0IGNvbnN0cmFpbnRzIDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+VmFyaWFiaWxpdHkgaW4gcmVndWxhdG9yeSBjb21wbGlhbmNlIGFjcm9zcyByZWdpb25zIDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgICAgICAgICAgICAgPC90Ym9keT5cclxuICAgICAgICAgICAgICAgIDwvdGFibGU+XHJcbiAgICAgICAgICAgICAgICA8SDUgdGV4dD1cIlwiLz5cclxuICAgICAgICAgICAgICAgIDx0YWJsZSBjZWxsUGFkZGluZz17MTB9IGNlbGxTcGFjaW5nPXswfSA+XHJcbiAgICAgICAgICAgICAgICAgICAgPHRoZWFkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dHI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGg+U3RyZW5ndGhzPC90aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aD5XZWFrbmVzc2VzPC90aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aD5PcHBvcnR1bml0aWVzPC90aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aD5UaHJlYXRzPC90aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cclxuICAgICAgICAgICAgICAgICAgICA8L3RoZWFkPlxyXG4gICAgICAgICAgICAgICAgICAgIDx0Ym9keT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dHI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgICAgICAgICAgICAgPC90Ym9keT5cclxuICAgICAgICAgICAgICAgIDwvdGFibGU+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sIHN1YmN5Y2xldGFiXCIgaWQ9XCJnb3ZzXCIgc3R5bGU9e3tkaXNwbGF5OiBcIm5vbmVcIn19PlxyXG4gICAgICAgICAgICAgICAgPEg1IHRleHQ9XCJCaW9ldGhpY3MgQ29tbWl0dGVlcyBcIi8+XHJcbiAgICAgICAgICAgICAgICA8dGFibGUgY2VsbFBhZGRpbmc9ezEwfSBjZWxsU3BhY2luZz17MH0gPlxyXG4gICAgICAgICAgICAgICAgICAgIDx0aGVhZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPlN0cmVuZ3RoczwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGg+V2Vha25lc3NlczwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGg+T3Bwb3J0dW5pdGllczwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGg+VGhyZWF0czwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgICAgICAgICAgICAgPC90aGVhZD5cclxuICAgICAgICAgICAgICAgICAgICA8dGJvZHk+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0cj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5FbnN1cmUgZXRoaWNhbCBzdGFuZGFyZHMgYXJlIG1ldCA8L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPlByb3ZpZGUgZ3VpZGFuY2Ugb24gY29tcGxleCBpc3N1ZXMgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5FbmhhbmNlIGNyZWRpYmlsaXR5IGFuZCBhY2NlcHRhbmNlIG9mIG5ldyB0aGVyYXBpZXMgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPk1heSBiZSBjb25zZXJ2YXRpdmUgYW5kIHNsb3cgdG8gYXBwcm92ZSBuZXcgdGVjaG5vbG9naWVzIDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+UG90ZW50aWFsIGZvciBjb25mbGljdGluZyBvcGluaW9ucyB3aXRoaW4gdGhlIGNvbW1pdHRlZSA8L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPkxpbWl0ZWQgYXV0aG9yaXR5IHRvIGVuZm9yY2UgZGVjaXNpb25zIDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+RXN0YWJsaXNoaW5nIGV0aGljYWwgZnJhbWV3b3JrcyBmb3IgbmV3IHRoZXJhcGllcyA8L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPkVuaGFuY2luZyBwdWJsaWMgdHJ1c3QgdGhyb3VnaCBldGhpY2FsIG92ZXJzaWdodCA8L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPkNvbGxhYm9yYXRpb24gd2l0aCByZWd1bGF0b3J5IGFnZW5jaWVzIGZvciBjb21wcmVoZW5zaXZlIG92ZXJzaWdodCA8L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dHI+IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPkV0aGljYWwgZGlsZW1tYXMgYW5kIHB1YmxpYyBwZXJjZXB0aW9uIGlzc3VlcyA8L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPlJhcGlkIGFkdmFuY2VtZW50cyBvdXRwYWNpbmcgZXRoaWNhbCBndWlkZWxpbmVzIDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+TWlzYWxpZ25tZW50IHdpdGggZmFzdC1wYWNlZCB0ZWNobm9sb2dpY2FsIGFkdmFuY2VtZW50cyA8L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvdGJvZHk+XHJcbiAgICAgICAgICAgICAgICA8L3RhYmxlPlxyXG4gICAgICAgICAgICAgICAgPEg1IHRleHQ9XCJMZWdhbCBFeHBlcnRzXCIvPlxyXG4gICAgICAgICAgICAgICAgPHRhYmxlIGNlbGxQYWRkaW5nPXsxMH0gY2VsbFNwYWNpbmc9ezB9ID5cclxuICAgICAgICAgICAgICAgICAgICA8dGhlYWQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0cj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aD5TdHJlbmd0aHM8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPldlYWtuZXNzZXM8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPk9wcG9ydHVuaXRpZXM8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPlRocmVhdHM8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvdGhlYWQ+XHJcbiAgICAgICAgICAgICAgICAgICAgPHRib2R5PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dHI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+TmF2aWdhdGUgY29tcGxleCBsZWdhbCBsYW5kc2NhcGVzIDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+RW5zdXJlIGNvbXBsaWFuY2Ugd2l0aCByZWd1bGF0aW9ucyA8L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPkV4cGVydGlzZSBpbiBoZWFsdGhjYXJlIGxhdyBhbmQgZ2VuZXRpYyByZXNlYXJjaCByZWd1bGF0aW9ucyA8L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dHI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+SGlnaCBjb3N0cyBmb3IgbGVnYWwgc2VydmljZXMgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5Qb3RlbnRpYWwgZm9yIGxlbmd0aHkgbGVnYWwgcHJvY2Vzc2VzIDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+UmlzayBvZiBzdGlmbGluZyBpbm5vdmF0aW9uIHdpdGggb3Zlcmx5IGNhdXRpb3VzIGFkdmljZSA8L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dHI+IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPkRldmVsb3BtZW50IG9mIGNvbXByZWhlbnNpdmUgbGVnYWwgZnJhbWV3b3JrcyBmb3IgbmV3IHRoZXJhcGllcyA8L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPlByb3RlY3RpbmcgaW50ZWxsZWN0dWFsIHByb3BlcnR5IGFuZCBlbnN1cmluZyByZWd1bGF0b3J5IGNvbXBsaWFuY2UgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5BZHZpc2luZyBvbiBiZXN0IHByYWN0aWNlcyBmb3IgZXRoaWNhbCBhbmQgbGVnYWwgc3RhbmRhcmRzIDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+TGVnYWwgY2hhbGxlbmdlcyBhbmQgbGlhYmlsaXR5IGlzc3VlcyA8L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPlJhcGlkbHkgY2hhbmdpbmcgbGVnYWwgZW52aXJvbm1lbnRzIGFuZCByZWd1bGF0aW9ucyA8L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPlBvdGVudGlhbCBmb3IgbGl0aWdhdGlvbiBhbmQgbGVnYWwgZGlzcHV0ZXMgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cclxuICAgICAgICAgICAgICAgICAgICA8L3Rib2R5PlxyXG4gICAgICAgICAgICAgICAgPC90YWJsZT4gICAgXHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sIHN1YmN5Y2xldGFiXCIgaWQ9XCJjb21tc1wiIHN0eWxlPXt7ZGlzcGxheTogXCJub25lXCJ9fT5cclxuICAgICAgICAgICAgICAgIDxINSB0ZXh0PVwiUGF0aWVudCBhbmQgQ29tbXVuaXR5IE91dHJlYWNoIFByb2dyYW1zXCIvPlxyXG4gICAgICAgICAgICAgICAgPHRhYmxlIGNlbGxQYWRkaW5nPXsxMH0gY2VsbFNwYWNpbmc9ezB9ID5cclxuICAgICAgICAgICAgICAgICAgICA8dGhlYWQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0cj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aD5TdHJlbmd0aHM8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPldlYWtuZXNzZXM8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPk9wcG9ydHVuaXRpZXM8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPlRocmVhdHM8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvdGhlYWQ+XHJcbiAgICAgICAgICAgICAgICAgICAgPHRib2R5PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dHI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+SW5jcmVhc2UgYXdhcmVuZXNzIGFuZCBlZHVjYXRpb24gPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5CdWlsZCBwdWJsaWMgc3VwcG9ydCA8L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPkZvc3RlciBjb25uZWN0aW9ucyBiZXR3ZWVuIHBhdGllbnRzLCByZXNlYXJjaGVycywgYW5kIGhlYWx0aGNhcmUgcHJvdmlkZXJzIDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0cj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5MaW1pdGVkIHJlYWNoIGFuZCByZXNvdXJjZXMgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5Qb3RlbnRpYWwgbWlzaW5mb3JtYXRpb24gPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5EZXBlbmRlbmNlIG9uIHZvbHVudGVlciBlZmZvcnRzIDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+RW5oYW5jZWQgcHVibGljIGVuZ2FnZW1lbnQgYW5kIHN1cHBvcnQgZm9yIG5ldyB0aGVyYXBpZXMgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5PcHBvcnR1bml0aWVzIGZvciBjb21tdW5pdHktZHJpdmVuIGFkdm9jYWN5IDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+UmFpc2luZyBmdW5kcyBhbmQgcmVzb3VyY2VzIHRocm91Z2ggcHVibGljIGVuZ2FnZW1lbnQgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRyPiBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5QdWJsaWMgc2tlcHRpY2lzbSBhbmQgcmVzaXN0YW5jZSB0byBuZXcgdGVjaG5vbG9naWVzIDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+Q29tcGV0aW5nIG1lc3NhZ2VzIGFuZCBwcmlvcml0aWVzIGFtb25nIHZhcmlvdXMgY29tbXVuaXR5IGdyb3VwcyA8L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPk1pc2NvbW11bmljYXRpb24gbGVhZGluZyB0byBtaXNpbmZvcm1hdGlvbiA8L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvdGJvZHk+XHJcbiAgICAgICAgICAgICAgICA8L3RhYmxlPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbCBzdWJjeWNsZXRhYlwiIGlkPVwicHVic1wiIHN0eWxlPXt7ZGlzcGxheTogXCJub25lXCJ9fT5cclxuICAgICAgICAgICAgICAgIDxINSB0ZXh0PVwiRWR1Y2F0aW9uYWwgSW5zdGl0dXRpb25zXCIvPlxyXG4gICAgICAgICAgICAgICAgPHRhYmxlIGNlbGxQYWRkaW5nPXsxMH0gY2VsbFNwYWNpbmc9ezB9ID5cclxuICAgICAgICAgICAgICAgICAgICA8dGhlYWQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0cj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aD5TdHJlbmd0aHM8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPldlYWtuZXNzZXM8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPk9wcG9ydHVuaXRpZXM8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPlRocmVhdHM8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvdGhlYWQ+XHJcbiAgICAgICAgICAgICAgICAgICAgPHRib2R5PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dHI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+RWR1Y2F0ZSBmdXR1cmUgc2NpZW50aXN0cyBhbmQgaGVhbHRoY2FyZSBwcm9mZXNzaW9uYWxzIDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+UHJvbW90ZSByZXNlYXJjaCBhbmQgaW5ub3ZhdGlvbiA8L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPkVzdGFibGlzaGVkIGluZnJhc3RydWN0dXJlIGZvciBlZHVjYXRpb24gYW5kIHJlc2VhcmNoIDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0cj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5MaW1pdGVkIGZ1bmRpbmcgYW5kIHJlc291cmNlcyBmb3IgbGFyZ2Utc2NhbGUgcHJvamVjdHMgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5Qb3RlbnRpYWwgZm9yIGFjYWRlbWljIGJ1cmVhdWNyYWN5IDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+SGlnaCBjb21wZXRpdGlvbiBmb3IgcmVzZWFyY2ggZ3JhbnRzIDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+T3Bwb3J0dW5pdHkgdG8gZm9zdGVyIG5ldyB0YWxlbnQgYW5kIGlubm92YXRpb24gPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5Db2xsYWJvcmF0aW9uIHdpdGggaW5kdXN0cnkgYW5kIHJlc2VhcmNoIGluc3RpdHV0aW9ucyA8L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPk9wcG9ydHVuaXRpZXMgZm9yIGludGVyZGlzY2lwbGluYXJ5IGVkdWNhdGlvbiBhbmQgcmVzZWFyY2ggPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRyPiBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5GdW5kaW5nIGNvbnN0cmFpbnRzIGFuZCBhY2FkZW1pYyBwcmVzc3VyZXMgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5CYWxhbmNpbmcgYWNhZGVtaWMgb2JqZWN0aXZlcyB3aXRoIHByYWN0aWNhbCBhcHBsaWNhdGlvbnMgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5SaXNrIG9mIGJyYWluIGRyYWluIHRvIG1vcmUgbHVjcmF0aXZlIGluZHVzdHJpZXMgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cclxuICAgICAgICAgICAgICAgICAgICA8L3Rib2R5PlxyXG4gICAgICAgICAgICAgICAgPC90YWJsZT5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wgc3ViY3ljbGV0YWJcIiBpZD1cImJ1c2lcIiBzdHlsZT17e2Rpc3BsYXk6IFwibm9uZVwifX0+XHJcbiAgICAgICAgICAgICAgICA8SDUgdGV4dD1cIkZ1bmRpbmcgQWdlbmNpZXMgYW5kIFZlbnR1cmUgQ2FwaXRhbGlzdHNcIi8+XHJcbiAgICAgICAgICAgICAgICA8dGFibGUgY2VsbFBhZGRpbmc9ezEwfSBjZWxsU3BhY2luZz17MH0gPlxyXG4gICAgICAgICAgICAgICAgICAgIDx0aGVhZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPlN0cmVuZ3RoczwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGg+V2Vha25lc3NlczwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGg+T3Bwb3J0dW5pdGllczwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGg+VGhyZWF0czwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgICAgICAgICAgICAgPC90aGVhZD5cclxuICAgICAgICAgICAgICAgICAgICA8dGJvZHk+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0cj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5Qcm92aWRlIGNydWNpYWwgZmluYW5jaWFsIHN1cHBvcnQgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5Ecml2ZSBpbm5vdmF0aW9uIHRocm91Z2ggaW52ZXN0bWVudCA8L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPkV4dGVuc2l2ZSBuZXR3b3JrcyBhbmQgaW5kdXN0cnkgY29ubmVjdGlvbnMgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPkZvY3VzIG9uIFJPSSBtYXkgbGltaXQgZnVuZGluZyBmb3IgaGlnaC1yaXNrIHByb2plY3RzIDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+SGlnaCBjb21wZXRpdGlvbiBmb3IgZnVuZGluZyA8L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPlJpc2sgYXZlcnNpb24gbWF5IGxpbWl0IGlubm92YXRpdmUgYnV0IHVuY2VydGFpbiBwcm9qZWN0cyA8L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dHI+IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPlBvdGVudGlhbCBmb3IgaGlnaCByZXR1cm5zIGFuZCBpbXBhY3Qgb24gaGVhbHRoY2FyZSA8L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPlN1cHBvcnRpbmcgdHJhbnNmb3JtYXRpdmUgdGVjaG5vbG9naWVzIDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+SWRlbnRpZnlpbmcgYW5kIG51cnR1cmluZyBicmVha3Rocm91Z2ggdGVjaG5vbG9naWVzIDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+RWNvbm9taWMgZG93bnR1cm5zIGFmZmVjdGluZyBpbnZlc3RtZW50IGNhcGFjaXR5IDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+UG90ZW50aWFsIGZvciBoaWdoIGZpbmFuY2lhbCBsb3NzZXMgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5DaGFuZ2VzIGluIGVjb25vbWljIGFuZCBwb2xpY3kgZW52aXJvbm1lbnRzIDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgICAgICAgICAgICAgPC90Ym9keT5cclxuICAgICAgICAgICAgICAgIDwvdGFibGU+ICAgIFxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbCBmcmFtZWN5Y2xldGFiXCIgaWQ9XCJ0aGlyZHBhcnR5XCIgc3R5bGU9e3tkaXNwbGF5OiBcIm5vbmVcIn19PlxyXG4gICAgICAgICAgICAgICA8SDQgdGV4dD1cIlRoZSBUaGlyZC1QYXJ0eSBGZWVkYmFjayBUZW1wbGF0ZVwiIGlkPVwidGhpcmRIXCIvPlxyXG4gICAgICAgICAgICAgICAgPHA+VG8gZHJpdmUgc3Rha2Vob2xkZXIgaW50ZXJhY3Rpb25zIGZvciB0aGUgPFByZUN5c2UvPiBwcm9qZWN0LCBvdXIgdGVhbSBpbXBsZW1lbnRlZCB0aGUgXHUyMDFDVGhpcmQtUGFydHkgRmVlZGJhY2sgVGVtcGxhdGVcdTIwMUQuIFRoaXMgdGVtcGxhdGUgaGVscHMgdXMgaW50cm9kdWNlIGluZGl2aWR1YWxzIHRvIG91ciBzdGFrZWhvbGRlcnMgYW5kIGRlbW9uc3RyYXRlIHRoZWlyIHNpZ25pZmljYW5jZSB0byBvdXIgcHJvamVjdC4gVGhlcmUgYXJlIHRocmVlIG1haW4gc2VjdGlvbnMgaW4gdGhpcyB0ZW1wbGF0ZS4gRmlyc3QsIHdlIGFkZHJlc3MgdGhlIGltcG9ydGFudCBxdWVzdGlvbiBvZiB3aG8gb3VyIHN0YWtlaG9sZGVycyBhcmUsIGludHJvZHVjaW5nIHRoZWlyIGJhY2tncm91bmRzIGFuZCBleHBsYWluaW5nIHdoeSB3ZSByZWFjaGVkIG91dCB0byB0aGVtLiBOZXh0LCB3ZSBzdW1tYXJpemUgdGhlIGNvbnZlcnNhdGlvbnMgYW5kIGtub3dsZWRnZSBleGNoYW5nZWQgZHVyaW5nIG91ciBpbnRlcmFjdGlvbnMuIEZpbmFsbHksIHdlIHNoYXJlIG91ciByZWZsZWN0aW9ucyBmcm9tIHRoZXNlIHN0YWtlaG9sZGVyIGNvbnZlcnNhdGlvbnMgYW5kIGhvdyB0aGVzZSBpbnRlcmFjdGlvbnMgaGF2ZSBndWlkZWQgdGhlIG5leHQgc3RlcHMgb2Ygb3VyIHByb2plY3QuICA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wtNFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cIlwiID5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxIUFVuZGVyc3RhbmRpbmcvPiBcclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+IFxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sIHVuZGVyc3RhbmRpbmd0YWJcIiBpZD1cInVuZGVyLXJlZmxlY3Rpb25cIiBzdHlsZT17e2Rpc3BsYXk6IFwiYmxvY2tcIn19PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj48cD5UaGUgcmVmbGVjdGlvbiBjb21wb25lbnQgb2YgdGhlIHRlbXBsYXRlIGlzIGVzc2VudGlhbCBpbiBldmFsdWF0aW5nIGhvdyBzdGFrZWhvbGRlciBpbnRlcmFjdGlvbnMgaGF2ZSBzaGFwZWQgdGhlIDxQcmVDeXNlLz4gcHJvamVjdC4gQWZ0ZXIgc3VtbWFyaXppbmcgY29udmVyc2F0aW9ucyB3aXRoIHN0YWtlaG9sZGVycywgd2UgYW5hbHl6ZSB0aGUgZmVlZGJhY2sgdGhleSBwcm92aWRlZC4gVGhpcyByZWZsZWN0aW9uIHByb2Nlc3MgYWxsb3dzIG91ciB0ZWFtIHRvIGNhcmVmdWxseSBjb25zaWRlciB0aGUgaW5zaWdodHMgc2hhcmVkIGFuZCBhc3Nlc3MgdGhlaXIgcmVsZXZhbmNlIHRvIG91ciBwcm9qZWN0J3MgZ29hbHMuIEJ5IHJlZmxlY3Rpbmcgb24gdGhpcyBpbnB1dCwgd2UgZ2FpbiBhIGNsZWFyZXIgdW5kZXJzdGFuZGluZyBvZiBob3cgZXh0ZXJuYWwgcGVyc3BlY3RpdmVzIGFsaWduIG9yIGRpZmZlciBmcm9tIG91ciBpbml0aWFsIGFzc3VtcHRpb25zLCBmb3N0ZXJpbmcgYW4gZW52aXJvbm1lbnQgb2YgY29udGludW91cyBsZWFybmluZyBhbmQgaW1wcm92ZW1lbnQuIFRoaXMgc3RhZ2UgZW5zdXJlcyB0aGF0IHdlIGFwcHJvYWNoIHRoZSBuZXh0IHN0ZXBzIHdpdGggYSBkZWVwZXIgYXdhcmVuZXNzIG9mIGJvdGggb3VyIHByb2plY3RcdTIwMTlzIGltcGFjdCBhbmQgdGhlIGV4cGVjdGF0aW9ucyBvZiBvdXIgc3Rha2Vob2xkZXJzLjwvcD48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sIHVuZGVyc3RhbmRpbmd0YWJcIiBpZD1cInVuZGVyLXJlc3BvbnNpYmlsaXR5XCIgc3R5bGU9e3tkaXNwbGF5OiBcIm5vbmVcIn19PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj48cD5SZXNwb25zaWJpbGl0eSBpcyBlbWJlZGRlZCBpbiBob3cgd2UgZW5nYWdlIHdpdGggc3Rha2Vob2xkZXJzIGFuZCByZXNwb25kIHRvIHRoZSB0cnVzdCB0aGV5IHBsYWNlIGluIG91ciB0ZWFtLiBCeSB0aG91Z2h0ZnVsbHkgc2VsZWN0aW5nIHdobyB3ZSByZWFjaCBvdXQgdG8sIHdlIGRlbW9uc3RyYXRlIHJlc3BvbnNpYmlsaXR5IGluIGNob29zaW5nIHRoZSBtb3N0IHJlbGV2YW50IGFuZCBpbXBhY3RmdWwgaW5kaXZpZHVhbHMgZm9yIG91ciBwcm9qZWN0LiBBZGRpdGlvbmFsbHksIGl0IGlzIG91ciBkdXR5IHRvIGhvbm9yIHRoZSBjb250cmlidXRpb25zIG9mIHN0YWtlaG9sZGVycyBieSBlZmZlY3RpdmVseSBpbnRlZ3JhdGluZyB0aGVpciBmZWVkYmFjayBpbnRvIG91ciBkZWNpc2lvbi1tYWtpbmcgcHJvY2Vzcy4gVGhlIHRlbXBsYXRlIGFsbG93cyB1cyB0byBkb2N1bWVudCB0aGVzZSBjb250cmlidXRpb25zLCBlbXBoYXNpemluZyBvdXIgY29tbWl0bWVudCB0byBub3Qgb25seSBsaXN0ZW4gYnV0IGFsc28gYWN0IHJlc3BvbnNpYmx5IGJhc2VkIG9uIHRoZWlyIGlucHV0LiBPdXIgcmVzcG9uc2liaWxpdHkgZXh0ZW5kcyB0byBlbnN1cmluZyB0aGF0IHN0YWtlaG9sZGVyIGludGVyZXN0cyBhcmUgcmVzcGVjdGVkIGFuZCB0aGF0IHRoZWlyIGlucHV0IGlzIGFjdGl2ZWx5IGNvbnRyaWJ1dGluZyB0byB0aGUgZXRoaWNhbCBhbmQgc3VzdGFpbmFibGUgZGV2ZWxvcG1lbnQgb2YgdGhlIDxQcmVDeXNlLz4gcHJvamVjdC48L3A+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbCB1bmRlcnN0YW5kaW5ndGFiXCIgaWQ9XCJ1bmRlci1yZXNwb25zaXZlXCIgc3R5bGU9e3tkaXNwbGF5OiBcIm5vbmVcIn19PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj48cD5SZXNwb25zaXZlbmVzcyBpcyBhYm91dCBob3cgd2UgYWRhcHQgYW5kIG1vdmUgZm9yd2FyZCBiYXNlZCBvbiB0aGUga25vd2xlZGdlIGFuZCBwZXJzcGVjdGl2ZXMgc2hhcmVkIGJ5IG91ciBzdGFrZWhvbGRlcnMuIEFmdGVyIGdhdGhlcmluZyBmZWVkYmFjaywgd2UgYXNzZXNzIGhvdyBpdCBhbGlnbnMgd2l0aCBvdXIgcHJvamVjdFx1MjAxOXMgb2JqZWN0aXZlcyBhbmQgYWRqdXN0IG91ciBzdHJhdGVnaWVzIGFjY29yZGluZ2x5LiBUaGlzIGVuc3VyZXMgdGhhdCBzdGFrZWhvbGRlciBjb250cmlidXRpb25zIGFyZSBub3Qgb25seSBoZWFyZCBidXQgYWxzbyBhY3RlZCB1cG9uIGluIGEgdGltZWx5IGFuZCBjb25zdHJ1Y3RpdmUgbWFubmVyLiBUaGUgZmluYWwgc2VjdGlvbiBvZiB0aGUgdGVtcGxhdGUgZW1waGFzaXplcyBob3cgdGhlc2UgaW50ZXJhY3Rpb25zIGhhdmUgZ3VpZGVkIHRoZSBmdXR1cmUgc3RlcHMgb2YgdGhlIHByb2plY3QuIEJlaW5nIHJlc3BvbnNpdmUgaXMgY3J1Y2lhbCBmb3IgbWFpbnRhaW5pbmcgZHluYW1pYyBhbmQgZXZvbHZpbmcgcmVsYXRpb25zaGlwcyB3aXRoIG91ciBzdGFrZWhvbGRlcnMsIGRlbW9uc3RyYXRpbmcgdGhhdCB3ZSB2YWx1ZSB0aGVpciBpbnB1dCBhbmQgYXJlIHdpbGxpbmcgdG8gaW5jb3Jwb3JhdGUgaXQgaW50byBvdXIgb25nb2luZyBkZXZlbG9wbWVudC48L3A+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wgZnJhbWVjeWNsZXRhYlwiIGlkPVwiYXJlYVwiIHN0eWxlPXt7ZGlzcGxheTogXCJub25lXCJ9fT5cclxuICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiQVJFQSBGcmFtZXdvcmtcIiBpZD1cImFyZWFIXCIvPlxyXG4gICAgICAgICAgICAgICAgPHA+VGhlIEFSRUEgRnJhbWV3b3JrIEFuYWx5c2lzIGlzIGEgbW9kZWwgdGhhdCBoZWxwcyBzdHJ1Y3R1cmUgYW5kIG9wdGltaXplIGRlY2lzaW9uLW1ha2luZyBpbiBjb21wbGV4IHByb2plY3RzLCBlc3BlY2lhbGx5IHdoZW4gbXVsdGlwbGUgc3Rha2Vob2xkZXJzIGFyZSBpbnZvbHZlZC5cclxuICAgICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICAgIDxkaXYgaWQ9XCJocDMtd3JhcHBlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPEhQM25ldy8+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxINSB0ZXh0PVwiQWdlbmRhXCIvPlxyXG4gICAgICAgICAgICAgICAgPHA+XHJcbiAgICBUaGUgY2VudHJhbCBnb2FsIG9mIHRoZSA8UHJlQ3lzZS8+IHByb2plY3QgaXMgdG8gZGV2ZWxvcCBhbiBpbm5vdmF0aXZlIGdlbmUgdGhlcmFweSBzb2x1dGlvbiBmb3IgIEN5c3RpYyBGaWJyb3NpcyAoQ0YpIHRoYXQgaXMgbm90IG9ubHkgdGVjaG5pY2FsbHkgZWZmZWN0aXZlIGJ1dCBhbHNvIHNvY2lhbGx5IGFjY2VwdGFibGUgYW5kIGV0aGljYWxseSBqdXN0aWZpYWJsZS4gVGhlIHByaW1hcnkgcXVlc3Rpb25zIGluY2x1ZGU6XHJcbjwvcD5cclxuPHVsPlxyXG4gICAgPGxpPkhvdyBjYW4gdGhlIHByb2plY3QgaW1wcm92ZSB0aGUgbGl2ZXMgb2YgQ0YgcGF0aWVudHM/PC9saT5cclxuICAgIDxsaT5Ib3cgY2FuIHRoZSBwcm9qZWN0IGVuc3VyZSB0aGF0IHRoZSBwcm9wb3NlZCB0aGVyYXB5IG1lZXRzIGV0aGljYWwgYW5kIHJlZ3VsYXRvcnkgc3RhbmRhcmRzPzwvbGk+XHJcbiAgICA8bGk+SG93IGNhbiB0aGUgc29sdXRpb24gYmUgaW50ZWdyYXRlZCBpbnRvIGN1cnJlbnQgaGVhbHRoY2FyZSBpbml0aWF0aXZlcz88L2xpPlxyXG4gICAgPGxpPkhvdyBkb2VzIHRoZSBwcm9qZWN0IGluZmx1ZW5jZSwgYW5kIGhvdyBpcyBpdCBpbmZsdWVuY2VkIGJ5LCB0aGUgcGVyY2VwdGlvbnMgb2Ygc3Rha2Vob2xkZXJzLCBwYXJ0aWN1bGFybHkgcGF0aWVudHMsIHJlZ3VsYXRvcnkgYXV0aG9yaXRpZXMsIGFuZCB0aGUgc2NpZW50aWZpYyBjb21tdW5pdHk/PC9saT5cclxuPC91bD5cclxuPHA+XHJcbiAgICBIZXJlLCB0aGUgbmVlZCBpcyBkZWZpbmVkIHRvIGRldmVsb3AgYSBob2xpc3RpYyB1bmRlcnN0YW5kaW5nIG9mIHRoZSBwcm9qZWN0XHUyMDE5cyBpbXBhY3RzLCBjb25zaWRlcmluZyBib3RoIHRlY2hub2xvZ2ljYWwgYXNwZWN0cyBhbmQgaHVtYW4gcGVyc3BlY3RpdmVzLlxyXG48L3A+XHJcblxyXG4gICAgICAgICAgICAgICAgPEg1IHRleHQ9XCJSZXNlYXJjaFwiLz5cclxuICAgICAgICAgICAgICAgIDxwPlxyXG4gICAgVG8gZ2FpbiBhIGNvbXByZWhlbnNpdmUgdW5kZXJzdGFuZGluZyBvZiB0aGUgbmVlZHMgYW5kIGV4cGVjdGF0aW9ucywgdGhlIDxQcmVDeXNlLz4gdGVhbSBlbXBsb3llZCB2YXJpb3VzIG1ldGhvZHMgdG8gY29sbGVjdCBkYXRhIGZyb20gcmVsZXZhbnQgc3Rha2Vob2xkZXJzLCBpbmNsdWRpbmc6XHJcbjwvcD5cclxuPHA+XHJcbiAgICA8Yj5TdXJ2ZXlzIG9mIENGIHBhdGllbnRzIGFuZCB0aGVpciBmYW1pbGllczo8L2I+IFRoZXNlIHByb3ZpZGVkIGluc2lnaHRzIGludG8gdGhlIHNwZWNpZmljIGNoYWxsZW5nZXMgYW5kIG5lZWRzIHRoYXQgQ0YgcGF0aWVudHMgZmFjZSBpbiBkYWlseSBsaWZlLiBDcml0aWNhbCBxdWVzdGlvbnMgcmVnYXJkaW5nIHNhZmV0eSwgYWNjZXNzaWJpbGl0eSwgYW5kIHRoZSBsb25nLXRlcm0gYXBwbGljYXRpb24gb2YgZ2VuZSB0ZWNobm9sb2d5IHdlcmUgYWRkcmVzc2VkLlxyXG48L3A+XHJcbjxwPlxyXG4gICAgPGI+RXhwZXJ0IGNvbnN1bHRhdGlvbnMgd2l0aCByZXNlYXJjaGVycyBhbmQgcGh5c2ljaWFuczo8L2I+IFNjaWVudGlzdHMgYW5kIGRvY3RvcnMgd29ya2luZyBpbiBnZW5lIHRoZXJhcHkgcHJvdmlkZWQgZXNzZW50aWFsIHRlY2huaWNhbCBmZWVkYmFjayBhbmQgaGVscGVkIGFzc2VzcyB0aGUgZmVhc2liaWxpdHkgYW5kIGVmZmVjdGl2ZW5lc3Mgb2YgdGhlIHByb3Bvc2VkIHRoZXJhcHkuXHJcbjwvcD5cclxuPHA+XHJcbiAgICA8Yj5SZWd1bGF0b3J5IGF1dGhvcml0aWVzOjwvYj4gRmVlZGJhY2sgZnJvbSBhZ2VuY2llcyBsaWtlIHRoZSBGREEgYW5kIEVNQSBwbGF5ZWQgYSBjZW50cmFsIHJvbGUgaW4gYXNzZXNzaW5nIHNhZmV0eSByZXF1aXJlbWVudHMgYW5kIHJlZ3VsYXRvcnkgY2hhbGxlbmdlcyB0aGF0IG5lZWQgdG8gYmUgYWRkcmVzc2VkIGJlZm9yZSBjbGluaWNhbCBhcHBsaWNhdGlvbi4gVGhpcyByZXNlYXJjaCBwaGFzZSB3YXMgY3JpdGljYWwgdG8gZW5zdXJpbmcgdGhhdCB0aGUgdGVjaG5pY2FsIHNvbHV0aW9uIGFsaWduZWQgd2l0aCBwYXRpZW50IG5lZWRzIGFuZCByZWd1bGF0b3J5IHN0YW5kYXJkcy5cclxuPC9wPlxyXG5cclxuICAgICAgICAgICAgICAgIDxINSB0ZXh0PVwiRXZhbHVhdGlvblwiLz5cclxuICAgICAgICAgICAgICAgIDxwPkJhc2VkIG9uIHRoZSByZXNlYXJjaCBwaGFzZSByZXN1bHRzLCBhIGRldGFpbGVkIGFzc2Vzc21lbnQgb2YgdGhlIHN0cmVuZ3Rocywgd2Vha25lc3Nlcywgb3Bwb3J0dW5pdGllcywgYW5kIHRocmVhdHMgKFNXT1QgYW5hbHlzaXMpIHdhcyBjb25kdWN0ZWQgKHNlZSBhYm92ZSkuIFRoZSBldmFsdWF0aW9uIGhlbHBlZCB0aGUgdGVhbSByZWZsZWN0IG9uIHRoZSBnYXRoZXJlZCBpbnNpZ2h0cyBhbmQgZm9jdXMgb24ga2V5IGNoYWxsZW5nZXMgdG8gZW5zdXJlIGxvbmctdGVybSBmZWFzaWJpbGl0eSBhbmQgYWNjZXB0YW5jZS5cclxuICAgICAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgICAgIDxINSB0ZXh0PVwiQWdlbmRhXCIvPlxyXG4gICAgICAgICAgICAgICAgPHA+XHJcbiAgICBCYXNlZCBvbiB0aGUgYW5hbHlzaXMsIHNldmVyYWwgbWVhc3VyZXMgd2VyZSB0YWtlbiB0byBlbnN1cmUgdGhhdCB0aGUgPFByZUN5c2UvPiBwcm9qZWN0IGlzIG5vdCBvbmx5IHNjaWVudGlmaWNhbGx5IGFkdmFuY2VkIGJ1dCBhbHNvIHNvY2lhbGx5IGFuZCByZWd1bGF0b3JpbHkgYWNjZXB0YWJsZTpcclxuPC9wPlxyXG48cD5cclxuICAgIDxiPkludGVncmF0ZWQgZmVlZGJhY2sgbG9vcHM6PC9iPiBTdGFrZWhvbGRlcnMgd2VyZSBjb250aW51b3VzbHkgaW52b2x2ZWQsIGFuZCB0aGVpciBmZWVkYmFjayB3YXMgZGlyZWN0bHkgaW5jb3Jwb3JhdGVkIGludG8gdGhlIGFkYXB0YXRpb24gYW5kIGltcHJvdmVtZW50IG9mIHRoZSBwcm9qZWN0IGRlc2lnbi4gQW4gZXhhbXBsZSBvZiB0aGlzIGlzIHRoZSBhcHBsaWNhdGlvbiBvZiBHaWJicycgUmVmbGVjdGlvbiBDeWNsZSB0byBlbnN1cmUgdGhhdCBhbGwgZmVlZGJhY2sgaXMgdGhvcm91Z2hseSBhbmFseXplZCBhbmQgaW5jb3Jwb3JhdGVkIGludG8gZnV0dXJlIGRlY2lzaW9ucy5cclxuPC9wPlxyXG48cD5cclxuICAgIDxiPlJlZ3VsYXRvcnkgYW5kIGV0aGljYWwgYWRqdXN0bWVudHM6PC9iPiBCeSB3b3JraW5nIGNsb3NlbHkgd2l0aCByZWd1bGF0b3J5IGF1dGhvcml0aWVzIGFuZCBldGhpY3MgY29tbWl0dGVlcywgbWVhc3VyZXMgd2VyZSB0YWtlbiB0byBlbnN1cmUgdGhhdCB0aGUgcHJvamVjdCBjb21wbGllcyB3aXRoIHJlZ3VsYXRvcnkgcmVxdWlyZW1lbnRzIGFuZCByZW1haW5zIGV0aGljYWxseSBqdXN0aWZpYWJsZS5cclxuPC9wPlxyXG48cD5cclxuICAgIDxiPlNhZmV0eSBjb25zaWRlcmF0aW9uczo8L2I+IFRoZSBzYWZldHkgb2YgdGhlIHRoZXJhcHkgd2FzIGEga2V5IGNvbmNlcm4gaW4gc3Rha2Vob2xkZXIgaW50ZXJhY3Rpb25zLiBTcGVjaWZpYyBzYWZldHkgcHJvdG9jb2xzIHdlcmUgZGV2ZWxvcGVkIHRvIG1pbmltaXplIHJpc2tzIGZvciBwYXRpZW50cy5cclxuPC9wPlxyXG48cD5cclxuICAgIDxiPlB1YmxpYyBhd2FyZW5lc3M6PC9iPiBUbyBpbmNyZWFzZSBwdWJsaWMgYXdhcmVuZXNzIG9mIHRoZSBwb3RlbnRpYWwgYW5kIHNhZmV0eSBvZiBnZW5lIHRlY2hub2xvZ2llcywgdGFyZ2V0ZWQgY29tbXVuaWNhdGlvbiBtZWFzdXJlcyB3ZXJlIHRha2VuIHRvIGFkZHJlc3MgbWlzdW5kZXJzdGFuZGluZ3MgYW5kIGltcHJvdmUgYWNjZXB0YW5jZSBvZiB0aGUgdGVjaG5vbG9neS5cclxuPC9wPlxyXG5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sIGZyYW1lY3ljbGV0YWJcIiBpZD1cImZlZWRjeWNsZVwiIHN0eWxlPXt7ZGlzcGxheTogXCJub25lXCJ9fT4gXHJcbiAgICAgICAgICAgICAgICA8SDQgdGV4dD1cIlRoZSBGZWVkYmFjayBDeWNsZSBvZiBvdXIgSUhQIEFwcHJvYWNoXCIgaWQ9XCJmZWVkSFwiLz5cclxuICAgICAgICAgICAgICAgIDxwPlRvIGZvc3RlciBwcm9kdWN0aXZlIGNvbnZlcnNhdGlvbnMgYW5kIGVuc3VyZSBvdXIgdGVhbSBtYXhpbWl6ZXMgZWFjaCBzdGFrZWhvbGRlciBpbnRlcmFjdGlvbiBmb3IgdGhlIDxQcmVDeXNlLz4gcHJvamVjdCwgd2UgZGV2ZWxvcGVkIGEgZmVlZGJhY2sgY3ljbGUgdGhhdCBvdXRsaW5lcyBhIHN0cnVjdHVyZWQgYXBwcm9hY2ggZm9yIG91ciBtZWV0aW5ncy4gVGhlIGZpcnN0IHN0ZXAgaW4gb3VyIGN5Y2xlIGludm9sdmVzIGxpc3RlbmluZyB0byBlYWNoIHN0YWtlaG9sZGVyJ3MgZXhwZXJpZW5jZXMsIHBlcnNvbmFsIHN0b3JpZXMsIG9yIGluc2lnaHRzLiBPdXIgdGVhbSB0aGVuIGZvbGxvd3MgdXAgYnkgYXNraW5nIHJlbGV2YW50IHF1ZXN0aW9ucyB0byBkaXZlIGRlZXBlciBpbnRvIHRoZSBzaGFyZWQgaW5mb3JtYXRpb24gb3IgdG8gaW50cm9kdWNlIG5ldyB0b3BpY3Mgb3IgZGlyZWN0aW9ucyBpbiB0aGUgY29udmVyc2F0aW9uLiBUb3dhcmRzIHRoZSBlbmQgb2YgdGhlIG1lZXRpbmcsIHdlIGFzayBjbGFyaWZ5aW5nIHF1ZXN0aW9ucyBhbmQgcmVpdGVyYXRlIGtleSBwb2ludHMgdG8gZW5zdXJlIG91ciB1bmRlcnN0YW5kaW5nIGlzIGFjY3VyYXRlIGFuZCB0aGF0IHRoZSBzdGFrZWhvbGRlciBoYXMgbm8gYWRkaXRpb25hbCBpbnB1dC4gRmluYWxseSwgd2UgZXhwbG9yZSBuZXcgZGlyZWN0aW9ucyBhbmQgaWRlYXMgaW5zcGlyZWQgYnkgdGhlIHN0YWtlaG9sZGVyIGludGVyYWN0aW9uLCBlbmNvdXJhZ2luZyBvdXIgdGVhbSB0byBwdXJzdWUgaW5ub3ZhdGl2ZSBhbmQgbm92ZWwgY29uY2VwdHMuXHJcbiAgICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgICA8ZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2hwL2N5Y2xlMi5zdmdcIi8+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbCBmcmFtZWN5Y2xldGFiXCIgaWQ9XCJnaWJzb25cIiBzdHlsZT17e2Rpc3BsYXk6IFwibm9uZVwifX0+IFxyXG4gICAgICAgICAgICAgICAgPEg0IHRleHQ9XCJDeWNsZSBvZiBSZWZsZWN0aW9ucyBhY2NvcmRpbmcgdG8gR2liYnNcIiBpZD1cImdpYnNvbkhcIi8+XHJcbiAgICAgICAgICAgICAgICA8cD5Gb3IgdGhlIDxQcmVDeXNlLz4gcHJvamVjdCB0byBpbXBhY3QgdGhlIHdvcmxkLCBpdCBuZWVkcyB0byB3b3JrIHdpdGggYWxsIHR5cGVzIG9mIHN0YWtlaG9sZGVycy4gVGhlcmVmb3JlLCB3ZSBhcmUgb3B0aW1pemluZyBHaWJicycgUmVmbGVjdGlvbiBDeWNsZSB0byBkZW1vbnN0cmF0ZSBvdXIgaW5jbHVzaXZlIHJlc3BvbnNlIHRvIHRoZSBjaGFsbGVuZ2VzIHdlIGVuY291bnRlcmVkIGR1cmluZyBvdXIgaUdFTSBqb3VybmV5LiBUaGUgY3ljbGUgaW5jbHVkZXMgdGhlIGltcGV0dXMgZm9yIG91ciBlbmdhZ2VtZW50LCB0aGUgdW5iaWFzZWQgdHdvLXdheSBjb21tdW5pY2F0aW9uIHdpdGggc3Rha2Vob2xkZXJzLCBvdXIgdGhvcm91Z2ggYW5hbHlzaXMgb2YgdGhlIGZlZWRiYWNrIGFuZCBvdXIgYWN0aW9ucyB0byBpbXBsZW1lbnQgdGhlIHN0YWtlaG9sZGVyIGlucHV0cyBpbnRvIG91ciBwcm9qZWN0LlxyXG4gICAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBzdHlsZT17e2hlaWdodDogXCIyMCVcIn19PlxyXG4gICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvc2NpZW50aWZpYy1maWd1cmVzL2dpYmJzcmVmbGVjdGlvbi5zdmdcIiBzdHlsZT17e2hlaWdodDogXCIyMCVcIn19Lz5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPHA+XHJcbiAgICA8Yj5JbXBldHVzOjwvYj4gV2hlbiBkZXZlbG9waW5nIGEgc3lzdGVtYXRpYyBhcHByb2FjaCB0byBhIHJlY3VycmluZyBwcm9ibGVtLCBpdCdzIGVhc3kgdG8gZ2V0IGRpc3RyYWN0ZWQgYnkgbXVsdGlwbGUgcG9pbnRzIG9mIHZpZXcuIFdlIG5lZWQgdG8gcHJpb3JpdGl6ZSBxdWFsaXR5IG92ZXIgcXVhbnRpdHkuIFRoaXMgc2VjdGlvbiBwcmVzZW50cyB0aGUgc3VjY2Vzc2l2ZSBpbXBldHVzIHRoYXQgZHJpdmVzIHRoZSBjb250aW51b3VzIGltcGxlbWVudGF0aW9uIG9mIEh1bWFuIFByYWN0aWNlcyBhY3Rpdml0aWVzLlxyXG48L3A+XHJcbjxwPlxyXG4gICAgPGI+VHdvLXdheSBjb21tdW5pY2F0aW9uOjwvYj4gRm9yIG91ciBzb2x1dGlvbiB0byBiZSBodW1hbi1jZW50ZXJlZCwgdGhlIHR3by13YXkgY29tbXVuaWNhdGlvbiBtZXRob2QgaXMgdG8gY29tbXVuaWNhdGUgdG8gc3Rha2Vob2xkZXJzIHRoZSB2YWx1ZXMgd2UgYXJlIGluY29ycG9yYXRpbmcgaW50byBvdXIgcHJvamVjdCBkZXNpZ24uIFdlIG1ha2Ugc3VyZSB0aGV5IHVuZGVyc3RhbmQgdGhlIHByb2plY3QgY2xlYXJseSBzbyB0aGF0IHRoZXkgY2FuIGFydGljdWxhdGUgdGhlaXIgY29uY2VybnMgYW5kIHN1Z2dlc3Rpb25zIHByZWNpc2VseS5cclxuPC9wPlxyXG48cD5cclxuICAgIDxiPkFuYWx5c2lzOjwvYj4gVGhlIHR3by13YXkgY29tbXVuaWNhdGlvbiB3aXRoIG91ciBzdGFrZWhvbGRlcnMgaXMgY2FyZWZ1bGx5IGFuYWx5emVkLiBJbiB0aGlzIHNlY3Rpb24sIHN0YWtlaG9sZGVyIGZlZWRiYWNrIGlzIHByb2Nlc3NlZCBhbmQgdHVybmVkIGludG8gY29uc3RydWN0aXZlIGd1aWRhbmNlIGZvciBwcm9qZWN0IGltcGxlbWVudGF0aW9uLCBhbGxvd2luZyB1cyB0byBjb25zaWRlciB3aGF0IHdvcmsgc2hvdWxkIGJlIHByaW9yaXRpemVkIHRvIGJlc3QgYWRkcmVzcyBzdGFrZWhvbGRlciBjb25jZXJucy5cclxuPC9wPlxyXG48cD5cclxuICAgIDxiPkltcGxlbWVudGF0aW9uOjwvYj4gSW1wbGVtZW50YXRpb24gc2hvd3Mgb3VyIG1lYXN1cmVzIGZvciBldmFsdWF0aW5nIGFuZCByZWZpbmluZyB0aGUgcHJvamVjdC4gVGhlc2UgYWN0aW9ucyBhcmUgZnVsbHkgaW50ZWdyYXRlZCBpbnRvIHRoZSBwcm9qZWN0IGRlc2lnbnMgYW5kIG90aGVyIHBhcnRzIG9mIG91ciBwcm9qZWN0IHRvIGVuc3VyZSB0aGF0IG91ciBwcm9qZWN0IGFuZCBhY3Rpdml0aWVzIGFyZSBnb29kLCByZXNwb25zaWJsZSBhbmQgZW5nYWdpbmcgZm9yIHRoZSB3b3JsZC5cclxuPC9wPlxyXG48cD5cclxuICAgIEluIHRoZSBhcmVhcyBvZiA8Yj5Db21tdW5pY2F0aW9uICYgSW1wbGVtZW50YXRpb248L2I+LCA8Yj5OZWNlc3NpdHkgJiBSZWxldmFuY2U8L2I+LCA8Yj5TY2llbmNlICYgVGVjaG5vbG9neTwvYj4sIDxiPkV0aGljcyAmIFJlZ3VsYXRpb248L2I+LCBvdXIgSHVtYW4gUHJhY3RpY2UgYWN0aXZpdGllcyBhcmUgY29uZHVjdGVkIHdpdGggWCBncm91cHMgb2Ygc3Rha2Vob2xkZXJzIHRocm91Z2hvdXQgb3VyIGlHRU0gam91cm5leS4gSW4gZG9pbmcgc28sIHdlIGV4cGxvcmUgdGhlIGNvbnRleHRzIHRoYXQgZGVmaW5lIHByb2plY3RzLCBpZGVhbGl6ZSBzb2x1dGlvbnMgYW5kIGV2YWx1YXRlIG91dGNvbWVzIGZvciBvdXIgaHVtYW4gcHJhY3RpY2UgYXBwcm9hY2guXHJcbjwvcD5cclxuXHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L1N1YmVzY3Rpb24+XHJcbiAgICAgICAgICAgIDxTdWJlc2N0aW9uIHRpdGxlPVwiVGltZWxpbmVcIiBpZD1cIkludGVncmF0ZWQgSHVtYW4gUHJhY3RpY2VzMlwiPlxyXG4gICAgICAgICAgICAgICAgPEhQVGltZWxpbmUvPlxyXG4gICAgICAgICAgICA8L1N1YmVzY3Rpb24+XHJcbiAgICAgICAgICAgIDxTdWJlc2N0aW9uIHRpdGxlPVwiSW1wbGVtZW50YXRpb24gJiBGZWVkYmFja1wiIGlkPVwiSW50ZWdyYXRlZCBIdW1hbiBQcmFjdGljZXMzXCI+XHJcbiAgICAgICAgICAgICAgICA8SFBGZWVkYmFjay8+XHJcbiAgICAgICAgICAgIDwvU3ViZXNjdGlvbj5cclxuXHJcbiAgICAgICAgICAgIDxTdWJlc2N0aW9uIHRpdGxlPVwiQ29uY2x1c2lvblwiIGlkPVwiSW50ZWdyYXRlZCBIdW1hbiBQcmFjdGljZXM0XCI+XHJcbiAgICAgICAgICAgICAgPEhQY29uY2x1c2lvbi8+XHJcbiAgICAgICAgICAgIDwvU3ViZXNjdGlvbj5cclxuICAgICAgICA8L1NlY3Rpb24+XHJcbiAgICApXHJcbn0iLCAiXHJcbmltcG9ydCB7IEg1LCBINCB9IGZyb20gXCIuLi8uLi8uLi9jb21wb25lbnRzL0hlYWRpbmdzXCI7XHJcbmltcG9ydCB7IFBERiB9IGZyb20gXCIuLi8uLi8uLi9jb21wb25lbnRzL1BkZnNcIjsgXHJcbmltcG9ydCB7IHVzZVRhYk5hdmlnYXRpb24gfSBmcm9tIFwiLi4vLi4vLi4vdXRpbHMvVGFiTmF2aWdhdGlvblwiO1xyXG5pbXBvcnQgeyAgQnV0dG9uT25lV2l0aFNjcm9sbCB9IGZyb20gXCIuLi8uLi8uLi9jb21wb25lbnRzL0J1dHRvbnNcIjtcclxuXHJcblxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIEhQQ29sbGFicygpe1xyXG4gICAgdXNlVGFiTmF2aWdhdGlvbigpO1xyXG4gICAgcmV0dXJuKCBcclxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93IGFsaWduLWl0ZW1zLWNlbnRlclwiID5cclxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wgXCI+XHJcbiAgICAgICAgICAgICAgICA8QnV0dG9uT25lV2l0aFNjcm9sbCBvcGVuY2xhc3M9XCJjb2xsLWN5Y2xldGFiXCIgdGV4dD1cIk92ZXJ2aWV3XCIgb3Blbj1cImNvbGwtb3ZlcnZpZXdcIiBzY3JvbGxJZD1cImNvbGwtaGVhZGluZ1wiLz5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sIFwiPlxyXG4gICAgICAgICAgICAgICAgPEJ1dHRvbk9uZVdpdGhTY3JvbGwgb3BlbmNsYXNzPVwiY29sbC1jeWNsZXRhYlwiIHRleHQ9XCJDb2xsYWJzIGluIDIwMjRcIiBvcGVuPVwiY29sbHMyMDI0XCIgc2Nyb2xsSWQ9XCJjb2xsczIwMjQtaGVhZGluZ1wiLz5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sIFwiPlxyXG4gICAgICAgICAgICAgICAgPEJ1dHRvbk9uZVdpdGhTY3JvbGwgb3BlbmNsYXNzPVwiY29sbC1jeWNsZXRhYlwiIHRleHQ9XCJMTlAgSGFuZGJvb2tcIiBvcGVuPVwiSGFuZGJvb2tcIiBzY3JvbGxJZD1cIkhhbmRib29rLWhlYWRpbmdcIi8+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG5cclxuXHJcbiAgICBcclxuXHJcbiAgICAgICAgICAgIDxkaXYgaWQ9XCJjb2xsLW92ZXJ2aWV3XCIgY2xhc3NOYW1lPVwiY29sbC1jeWNsZXRhYlwiIHN0eWxlPXt7ZGlzcGxheTogXCJibG9ja1wifX0+XHJcbiAgICAgICAgICAgIDxINCBpZD1cImNvbGwtaGVhZGluZ1wiIHRleHQ9XCJDb2xsYWJvcmF0aW9ucyBhcyBwYXJ0IG9mIGEgaW50ZWdyYXRlZCBodW1hbiBwcmFjdGljZSAtIGJ1dCB3aHk/XCIvPlxyXG4gICAgICAgICAgICA8cD5Db2xsYWJvcmF0aW9uIGlzIGF0IHRoZSBoZWFydCBvZiBpbm5vdmF0aXZlIHNjaWVuY2UsIGVzcGVjaWFsbHkgaW4gcHJvamVjdHMgd2l0aCBzaWduaWZpY2FudCBzb2NpZXRhbCBhbmQgY2xpbmljYWwgaW1wbGljYXRpb25zIHN1Y2ggYXMgb3Vycy4gQnkgYWN0aXZlbHkgZW5nYWdpbmcgd2l0aCBzdGFrZWhvbGRlcnMgYWNyb3NzIGRpc2NpcGxpbmVzLCB3ZSBlbnN1cmVkIHRoYXQgb3VyIHdvcmsgYWRkcmVzc2VkIHJlYWwtd29ybGQgbmVlZHMgYW5kIHRvb2sgZXRoaWNhbCBhbmQgcHJhY3RpY2FsIGNvbnNpZGVyYXRpb25zIGludG8gYWNjb3VudC48L3A+XHJcbiAgICAgICAgICAgIDxwPkZvciBleGFtcGxlLCBwYXJ0bmVyc2hpcHMgd2l0aCBwYXRpZW50cyBhbmQgYWR2b2NhY3kgZ3JvdXBzIHByb3ZpZGVkIGEgZGVlcGVyIHVuZGVyc3RhbmRpbmcgb2YgbGl2aW5nIHdpdGggQ0YgYW5kIHNoYXBlZCBvdXIgcGF0aWVudC1jZW50ZXJlZCBhcHByb2FjaC4gRGlzY3Vzc2lvbnMgd2l0aCBtZWRpY2FsIHByb2Zlc3Npb25hbHMgaGlnaGxpZ2h0ZWQgdGhlIGNsaW5pY2FsIGNoYWxsZW5nZXMgYW5kIHJlZ3VsYXRvcnkgcmVxdWlyZW1lbnRzIHdlIG5lZWRlZCB0byBhZGRyZXNzLiBDb2xsYWJvcmF0aW5nIHdpdGggb3RoZXIgaUdFTSB0ZWFtcyBhbGxvd2VkIHVzIHRvIHNoYXJlIG1ldGhvZG9sb2dpZXMsIHJlZmluZSBwcm90b2NvbHMsIGFuZCBpbnRlZ3JhdGUgZGl2ZXJzZSBleHBlcnRpc2UgaW50byBvdXIgcHJvamVjdC48L3A+XHJcbiAgICAgICAgICAgIDxwPlRoZXNlIGludGVyYWN0aW9ucyBkaWRuJ3QganVzdCBndWlkZSB0aGUgc2NpZW50aWZpYyBkaXJlY3Rpb24gb2Ygb3VyIHdvcmsgLSB0aGV5IGVtcGhhc2lzZWQgdGhlIHdpZGVyIGltcGFjdCBvZiBzeW50aGV0aWMgYmlvbG9neS4gQnkgY29tYmluaW5nIG91ciB0ZWNobmljYWwgZWZmb3J0cyB3aXRoIHN0YWtlaG9sZGVyIGlucHV0LCB3ZSBlbnN1cmVkIHRoYXQgb3VyIHNvbHV0aW9ucyB3ZXJlIG5vdCBvbmx5IGlubm92YXRpdmUsIGJ1dCBhbHNvIGZlYXNpYmxlLCBldGhpY2FsIGFuZCBpbXBhY3RmdWwuIENvbGxhYm9yYXRpb24gdGh1cyBiZWNhbWUgdGhlIGZvdW5kYXRpb24gb2YgYSB0cnVseSBpbnRlZ3JhdGVkIGh1bWFuIHByYWN0aWNlLCBicmlkZ2luZyB0aGUgZ2FwIGJldHdlZW4gc2NpZW5jZSwgc29jaWV0eSBhbmQgYXBwbGljYXRpb24uPC9wPlxyXG4gICAgICAgICAgICA8SDQgaWQ9XCJjb2xsLW91ci1oZWFkaW5nXCIgdGV4dD1cIk91ciBDb2xsYWJvcmF0aW9uc1wiLz5cclxuICAgICAgICAgICAgPHA+Q29sbGFib3JhdGlvbiB3YXMga2V5IHRvIHRoZSBzdWNjZXNzIG9mIG91ciBwcm9qZWN0LiBCeSBlbmdhZ2luZyB3aXRoIHBhdGllbnRzLCBhZHZvY2FjeSBncm91cHMsIG1lZGljYWwgcHJvZmVzc2lvbmFscywgYW5kIG90aGVyIGlHRU0gdGVhbXMsIHdlIGdhaW5lZCB2YWx1YWJsZSBpbnNpZ2h0cyBpbnRvIHRoZSBjbGluaWNhbCwgZXRoaWNhbCwgYW5kIHByYWN0aWNhbCBjaGFsbGVuZ2VzIG9mIGFkZHJlc3NpbmcgQ3lzdGljIEZpYnJvc2lzLiBUaGVzZSBwYXJ0bmVyc2hpcHMgc2hhcGVkIG91ciBwYXRpZW50LWNlbnRlcmVkIGFwcHJvYWNoLCByZWZpbmVkIG91ciBtZXRob2RvbG9naWVzLCBhbmQgZW5zdXJlZCBvdXIgc29sdXRpb25zIGFyZSBpbXBhY3RmdWwgYW5kIGZlYXNpYmxlLiBUaHJvdWdoIGNvbGxhYm9yYXRpb24sIHdlIGJyaWRnZWQgdGhlIGdhcCBiZXR3ZWVuIHNjaWVuY2UgYW5kIHNvY2lldHksIGNyZWF0aW5nIGEgdHJ1bHkgaW50ZWdyYXRlZCBodW1hbiBwcmFjdGljZS5cclxuICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICBcclxuICAgICAgICAgICAgPGRpdiBpZD1cImNvbGxzMjAyNFwiIGNsYXNzTmFtZT1cImNvbGwtY3ljbGV0YWJcIiBzdHlsZT17e2Rpc3BsYXk6IFwibm9uZVwifX0+XHJcbiAgICAgICAgICAgICAgICA8SDQgaWQ9XCJjb2xsczIwMjQtaGVhZGluZ1wiIHRleHQ9XCJIb21lIFVuaXZlcnNpdHkgb2YgTGlua1x1MDBGNnBpbmdcIi8+XHJcbiAgICAgICAgICAgICAgICA8cD5UaGUgVW5pdmVyc2l0eSBvZiBMaW5rXHUwMEY2cGluZyBpcyBvbmUgb2YgdGhlIGJpZ2dlciB1bml2ZXJzaXRpZXMgbG9jYXRlZCBpbiBTd2VkZW4uIFNpbmNlIGl0cyBpbmNlcHRpb24gaW4gMTk3NSwgaXQgaGFzIGJlY29tZSBhIHZlcnkgaW5ub3ZhdGl2ZSBhbmQgaGlnaGx5IHJlbm93bmVkIGluc3RpdHV0aW9uLiAgPC9wPlxyXG4gICAgICAgICAgICAgICAgPHA+VGhlIHByb2plY3Qgb2YgTGlua1x1MDBGNnBpbmdzIGlHRU0gMjAyNCB0ZWFtOiAoZGVzY3JpcHRpb24gdGFrZW4gZnJvbSB0aGVpciB3ZWJzaXRlKTwvcD5cclxuICAgICAgICAgICAgICAgIDxwPlx1MjAxQ1RoZSBwcm9kdWN0IGNvbXBvc2l0aW9uIHdpbGwgZGVwZW5kIG9uIHRoZSBlbnp5bWUgbWlzc2luZyBvciBtYWxmdW5jdGlvbmluZyBpbiBlYWNoIG9mIHRoZSBkaXNlYXNlIHR5cGVzLiBXZVx1MjAxOXJlIGdvaW5nIHRvIHRhcmdldCBhdXRvc29tYWwgcmVjZXNzaXZlIGNvbmdlbml0YWwgaWNodGh5b3NpcywgYXMgdGhpcyBpcyB0aGUgb25lIG91ciBmcmllbmQgaXMgc3RydWdnbGluZyB3aXRoLiBXZSB3aWxsIGZvY3VzIG9uIHRoZSBjb25zZXF1ZW5jZXMgb2YgbXV0YXRpb25zIGluIHRocmVlIGRpZmZlcmVudCBnZW5lcyAoVEdNMSwgQUxPWEUzLCBBTE9YMTJCKSB0aGF0IGNhbiB1bmRlcmxpZSB0aGlzIGNvbmRpdGlvbiBbNV0uIEhvd2V2ZXIsIGlmIG91ciBhcHByb2FjaCB0dXJucyBvdXQgdG8gYmUgc3VjY2Vzc2Z1bCwgYWZ0ZXIgc29tZSBhZGp1c3RtZW50cywgdGhlIHByb3RvY29sIGNvdWxkIGJlIGFwcGxpZWQgZm9yIHRoZSByZW1haW5pbmcgdHlwZXMgb2YgdGhlIGRpc2Vhc2UgYXMgd2VsbC4gRmlyc3Qgb2YgYWxsLCB3ZVx1MjAxOWxsIGVuZ2luZWVyIEUuIGNvbGkgdG8gcHJvZHVjZSB0aGUgY2hvc2VuIGVuenltZXMgZW5jb2RlZCBieSB0aGUgY29ycmVzcG9uZGluZyBnZW5lcyB3ZSBjaG9zZTogdHJhbnNnbHV0YW1pbmFzZSAxLCBFcGlkZXJtaXMtdHlwZSBsaXBveHlnZW5hc2UgMywgQXJhY2hpZG9uYXRlIDEyLWxpcG94eWdlbmFzZSBhbmQgdGhlbiB3ZSB3aWxsIHB1cmlmeSB0aGVtIGZyb20gdGhlIGJhY3RlcmlhLiBPbmNlIHRoaXMgc3lzdGVtIGlzIGVzdGFibGlzaGVkIGFuZCBvcHRpbWl6ZWQsIHdlXHUyMDE5bGwgcHJvY2VlZCB0byBkZXNpZ24gYSBmdW5jdGlvbmluZyBkZWxpdmVyeSBzeXN0ZW0gdGhhdCB3ZSB3aWxsIGVuY2Fwc3VsYXRlIHRoZSBlbnp5bWVzIGluLiBXZSBoYXZlIGRlY2lkZWQgdG8gcHJvZHVjZSBtb2R1bGF0ZWQgbGlwb3NvbWVzIHRoYXQgd2lsbCBiZSBhYmxlIHRvIGtlZXAgdGhlIGVuenltZXMgYWN0aXZlIHdoaWxlIHRyYW5zcG9ydGluZyB0aGVtLiBPbmNlIHRoZSB0YXJnZXQgc2tpbiBsYXllciBpcyByZWFjaGVkLCB0aGUgbGlwb3NvbWVzIHdpbGwgZnVzZSB3aXRoIHRoZSBtZW1icmFuZXMgb2YgdGhlIGNlbGxzIG9mIGludGVyZXN0LCBkZWxpdmVyaW5nIHRoZSBwcm9kdWN0IHRvIGl0cyBmaW5hbCBkZXN0aW5hdGlvbi4gRnVuY3Rpb25pbmcgbGlwb3NvbWVzIHBhY2tlZCB3aXRoIHRoZSBwcm9kdWNlZCBlbnp5bWVzIHdpbGwgdGhlbiBiZSBpbmNvcnBvcmF0ZWQgaW50byBhIHN1aXRhYmxlIG1lZGl1bSB0byBmYWNpbGl0YXRlIHRoZSB0b3BpY2FsIGFwcGxpY2F0aW9uIGZvciB0aGUgcGF0aWVudHNcdTIwMUQuIDwvcD5cclxuICAgICAgICAgICAgICAgIDxINCB0ZXh0PVwiaUdFTSB0ZWFtIExpdSBwcm9qZWN0IG91ciBpZGVhXCIvPlxyXG4gICAgICAgICAgICAgICAgPHA+V2UgZmlyc3QgbWFkZSBjb250YWN0IHdpdGggdGhlIHRlYW0gb2YgTElVIHZpYSBlbWFpbCwgZHVlIHRvIGJvdGggb3VyIHRlYW1zXHUyMDE5IGludGVyZXN0IGluIHdvcmtpbmcgd2l0aCBMTlAgYmFzZWQgZGVsaXZlcnkgc3lzdGVtcy4gSXQgcmFwaWRseSBiZWNhbWUgYXBwYXJlbnQgdGhhdCBvdXIgdHdvIHRlYW1zIGNvdWxkIGJlbmVmaXQgZnJvbSBhIGNvcnBvcmF0aW9uIGVzcGVjaWFsbHkgc2luY2UgdGhlIHRlYW0gb2YgTGlVIHdhcyB3b3JraW5nIG9uIGFuIExOUCBoYW5kYm9vayBhdCB0aGUgdGltZS48L3A+XHJcbiAgICAgICAgICAgICAgICA8SDUgdGV4dD1cIkJpb3NhZmV0eSBhbmQgU2VjdXJpdHlcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgPHA+RWFybHkgaW4gb3VyIHByb2plY3QsIHdlIGZhY2VkIGNoYWxsZW5nZXMgd29ya2luZyB3aXRoIGh1bWFuIGJpb21hdGVyaWFscywgcGFydGljdWxhcmx5IGN1bHRpdmF0aW5nIHByaW1hcnkgaHVtYW4gbmFzYWwgZXBpdGhlbGlhbCBjZWxscyBmcm9tIGJvdGggQ0YgcGF0aWVudHMgYW5kIGNvbnRyb2xzLiBUbyBhZGRyZXNzIHRoZXNlLCB3ZSBtYWRlIHRocmVlIGtleSBjb250cmlidXRpb25zOjwvcD5cclxuICAgICAgICAgICAgICAgICAgICA8b2w+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxsaT5BIGd1aWRlbGluZSBmb3IgaGFuZGxpbmcgYmlvbWF0ZXJpYWxzIGluIGNvbXBsaWFuY2Ugd2l0aCBCU0wyIHN0YW5kYXJkcy57LyogW0xpbmsgZ3VpZGVsaW5lXSAqL308L2xpPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8bGk+QSBjbGluaWNhbCB0cmlhbC1zdHlsZSBxdWVzdGlvbm5haXJlIHRvIGFzc2VzcyBkb25vciBtZWRpY2FsIGhpc3Rvcnkuey8qIFtMaW5rIExpbmsgcXVlc3Rpb25haXJlXSAqL308L2xpPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8bGk+QSBoeWdpZW5lIHByb3RvY29sIHRvIGltcHJvdmUgc2FmZXR5IGFuZCBjbGVhbmxpbmVzcyBpbiByZXNlYXJjaCBmYWNpbGl0aWVzLnsvKiBbTGluayBoeWdpZW5lIHByb3RvY29sbF0gKi99PC9saT5cclxuICAgICAgICAgICAgICAgICAgICA8L29sPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICA8cD5cclxuICAgICAgICAgICAgICAgICAgICBUaGVzZSBmcmFtZXdvcmtzIGVuc3VyZSB0aGF0IGZ1dHVyZSBpR0VNIHRlYW1zIGNhbiBvdmVyY29tZSBzaW1pbGFyIGNoYWxsZW5nZXMsIGVuc3VyaW5nIHNhZmV0eSBhbmQgcmVndWxhdG9yeSBjb21wbGlhbmNlIHdoaWxlIHN0cmVhbWxpbmluZyB0aGVpciB3b3JrZmxvdy5cclxuICAgICAgICAgICAgICAgICAgICAgV2UgY29udHJpYnV0ZWQgYW4gZXh0ZW5zaXZlIGNvbGxlY3Rpb24gb2Ygb3B0aW1pemVkIHByb3RvY29scyBmb3IgZnV0dXJlIGlHRU0gdGVhbXMsIGludGVncmF0aW5nIG91ciBleHBlcmllbmNlcyB0byBtYWtlIHN5bnRoZXRpYyBiaW9sb2d5IG1vcmUgYWNjZXNzaWJsZS4gQnkgZW1iZWRkaW5nIHNhZmV0eSBzdGFuZGFyZHMsIHdlIGVuYWJsZSB0ZWFtcyB0byBjb25maWRlbnRseSB3b3JrIHdpdGggaHVtYW4gYmlvbWF0ZXJpYWxzLCBlbnN1cmluZyByZWd1bGF0b3J5IGNvbXBsaWFuY2UgYW5kIGVmZmljaWVudCBwcm9ncmVzcy5cclxuICAgICAgICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgICA8SDUgdGV4dD1cIlByZUNMIFJlcG9ydGVyIFN5c3RlbSBcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgPHA+VG8gdGVzdCBQcmltZSBFZGl0aW5nIHN5c3RlbXMgdGFyZ2V0aW5nIHRoZSBDRi1zcGVjaWZpYyBkZWxGNTA4IG11dGF0aW9uLCB3ZSBkZXZlbG9wZWQgdGhlIFByZUNMIHJlcG9ydGVyIHN5c3RlbSBbTGluayBlbmdpbmVlcmluZyBvZiBQcmVDTF0sIHdoaWNoIG9mZmVycyBoaWdoIHNlbnNpdGl2aXR5LCBtaW5pbWFsIG5vaXNlLCBhbmQgcHJlY2lzZSBmbHVvcmVzY2VuY2UgZGV0ZWN0aW9uLiBUaGlzIHZlcnNhdGlsZSB0b29sLCBhZGFwdGFibGUgZm9yIENSSVNQUiBhbmQgYmFzZSBlZGl0aW5nLCBlbmhhbmNlcyB0aGUgcHJlY2lzaW9uIG9mIGdlbmV0aWMgcmVzZWFyY2gsIHBhcnRpY3VsYXJseSBpbiBDRiBzdHVkaWVzLiBcclxuICAgICAgICAgICAgICAgICAgICAgICAgV2Ugb3B0aW1pemVkIHBlZ1JOQSBkZXNpZ257LyogW2xpbmtwZWdybmFdICovfSBieSBpbmNvcnBvcmF0aW5nIHRoZSBUZXZvUHJlUTEgUk5BIG1vdGlmLCBpbXByb3Zpbmcgc3RhYmlsaXR5IGFuZCBQcmltZSBFZGl0aW5nIGVmZmljaWVuY3kuIE91ciBpbm5vdmF0aW9ucywgaW5jbHVkaW5nIHNpbGVudCBlZGl0cyBhbmQgZmluZS10dW5lZCBzZXF1ZW5jZXMsIGJvb3N0IGVkaXRpbmcgYWNjdXJhY3ksIHByb3ZpZGluZyBhIHJvYnVzdCB0b29sIGZvciBnZW5ldGljIHJlc2VhcmNoLiA8L3A+XHJcbiAgICAgICAgICAgICAgICA8SDUgdGV4dD1cIlByaW1lIEVkaXRpbmcgVGVjaG5vbG9neSBQcmltZUd1aWRlICYgTGlwaWQgTmFub3BhcnRpY2xlIFN5c3RlbSBBaXJCdWRkeSBcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgPHA+T3VyIFByaW1lR3VpZGV7LyogW2xpbmtdICAqL31zeXN0ZW0gaW50cm9kdWNlcyBhIG5vdmVsIGV1a2FyeW90aWMgUk5BLWJpbmRpbmcgRE5BLW5pY2thc2UsIGEgc21hbGxlciBhbHRlcm5hdGl2ZSB0byBDYXM5LiBFbmhhbmNlZCB3aXRoIGEgbW9yZSBlZmZpY2llbnQgUmV2ZXJzZSBUcmFuc2NyaXB0YXNlIGFuZCBvcHRpbWl6ZWQgUk5BLWJpbmRpbmcgcHJvdGVpbnMsIHRoaXMgYWR2YW5jZW1lbnQgaW1wcm92ZXMgUHJpbWUgRWRpdGluZyBhY2N1cmFjeSBhbmQgc2FmZXR5IGZvciBnZW5ldGljIG11dGF0aW9uIGNvcnJlY3Rpb24uIFxyXG4gICAgICAgICAgICAgICAgICAgIFdlIGRldmVsb3BlZCBBaXJCdWRkeXsvKiBbbGlua10gKi99LCBhIGx1bmctc3BlY2lmaWMgUk5BL0ROQSBkZWxpdmVyeSBzeXN0ZW0gb3B0aW1pemVkIGZvciBnZW5lIHRoZXJhcGllcyB0YXJnZXRpbmcgbHVuZyBkaXNlYXNlcy4gV2l0aCBsb3cgY3l0b3RveGljaXR5LCBlZmZpY2llbnQgY2VsbHVsYXIgdXB0YWtlLCBhbmQgY29zdC1lZmZlY3RpdmUgc3RvcmFnZSwgQWlyQnVkZHkgcmV2b2x1dGlvbml6ZXMgbHVuZyBkaXNlYXNlIHRyZWF0bWVudHMgYnkgcHJvdmlkaW5nIGEgc2FmZXIgYW5kIG1vcmUgZWZmZWN0aXZlIGRlbGl2ZXJ5IG1ldGhvZC4gIDwvcD5cclxuICAgICAgICAgICAgICAgIDxINSB0ZXh0PVwiV2lraSBEZXZlbG9wbWVudFwiLz5cclxuICAgICAgICAgICAgICAgICAgICA8cD5UbyBzdXBwb3J0IGZ1dHVyZSBpR0VNIHRlYW1zLCB3ZSBkZXZlbG9wZWQgdHJvdWJsZXNob290aW5nIGd1aWRlcyBmb3IgSFRNTCBhbmQgQ1NTey8qIFtsaW5rXSAqL30sIG1ha2luZyB3aWtpIGRldmVsb3BtZW50IG1vcmUgYWNjZXNzaWJsZSBhbmQgZWFzaWVyIHRvIG1hbmFnZS4gXHJcbiAgICAgICAgICAgICAgICAgICAgVGhyb3VnaCB0aGVzZSBjb250cmlidXRpb25zLCB3ZSBwcm92aWRlIHZhbHVhYmxlIHRvb2xzIGFuZCBmcmFtZXdvcmtzIHRvIGFkdmFuY2Ugc3ludGhldGljIGJpb2xvZ3ksIGVuc3VyaW5nIHNhZmVyLCBtb3JlIGVmZmljaWVudCByZXNlYXJjaCBhbmQgdGhlcmFwZXV0aWMgZGV2ZWxvcG1lbnQgZm9yIHRoZSBpR0VNIGNvbW11bml0eS4gPC9wPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBpZD1cIkhhbmRib29rXCIgY2xhc3NOYW1lPVwiY29sbC1jeWNsZXRhYlwiIHN0eWxlPXt7ZGlzcGxheTogXCJub25lXCJ9fT5cclxuICAgICAgICAgICAgICAgIDxINCBpZD1cIkhhbmRib29rLWhlYWRpbmdcIiB0ZXh0PVwiSGFuYm9vayBmb3IgZG93bmxvYWRcIi8+XHJcbiAgICAgICAgICAgICAgICA8UERGIGxpbms9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9wZGZzL2xpcG9zb21lcy1oYW5kYm9vay5wZGZcIiBuYW1lPVwibGlwb3NvbWVzLWhhbmRib29rLnBkZlwiLz5cclxuICAgICAgICAgICAgPC9kaXY+XHJcblxyXG5cclxuICAgICAgICAgICAgXHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICApXHJcbn0iLCAiaW1wb3J0IEJpYnRleFBhcnNlciBmcm9tIFwiLi4vY29tcG9uZW50cy9tYWtlU291cmNlc1wiO1xyXG5cclxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gRWR1U291cmNlcygpe1xyXG4gICAgcmV0dXJuIChcclxuICAgICAgICA8ZGl2PlxyXG4gICAgICAgICAgPEJpYnRleFBhcnNlciBiaWJ0ZXhTb3VyY2VzPXtiaWJ0ZXhTb3VyY2VzfSBzcGVjaWFsPVwiZWR1XCIgLz5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgKTtcclxufVxyXG5cclxuXHJcbmNvbnN0IGJpYnRleFNvdXJjZXMgPSBbXHJcbmBAYXJ0aWNsZXthcnRpY2xlLFxyXG5hdXRob3IgPSB7QXN3ZWdlbiwgRWxsaWUgYW5kIFBlbmRlcmdhc3QsIERvbm5hfSxcclxueWVhciA9IHsyMDIzfSxcclxubW9udGggPSB7MDh9LFxyXG5wYWdlcyA9IHsxLTE1fSxcclxudGl0bGUgPSB7VGhlIGltcGFjdCBvZiBpbnRlcmVzdDogYW4gZW1lcmdlbnQgbW9kZWwgb2YgaW50ZXJlc3QgZGV2ZWxvcG1lbnQgaW4gdGhlIGVhcmx5IHllYXJzfSxcclxudm9sdW1lID0gezE5M30sXHJcbmpvdXJuYWwgPSB7RWFybHkgQ2hpbGQgRGV2ZWxvcG1lbnQgYW5kIENhcmV9LFxyXG5kb2kgPSB7MTAuMTA4MC8wMzAwNDQzMC4yMDIzLjIyNDU1NzV9XHJcbn1gXHJcbl0iLCAiaW1wb3J0IHsgQnV0dG9uT25lV2l0aFNjcm9sbCB9IGZyb20gXCIuLi8uLi8uLi9jb21wb25lbnRzL0J1dHRvbnNcIjtcclxuaW1wb3J0IHsgIEg0IH0gZnJvbSBcIi4uLy4uLy4uL2NvbXBvbmVudHMvSGVhZGluZ3NcIjtcclxuaW1wb3J0IHsgIEg1IH0gZnJvbSBcIi4uLy4uLy4uL2NvbXBvbmVudHMvSGVhZGluZ3NcIlxyXG5pbXBvcnQgeyBUYWJTY3JvbGxMaW5rIH0gZnJvbSBcIi4uLy4uLy4uL2NvbXBvbmVudHMvTGlua1wiO1xyXG5pbXBvcnQgUHJlQ3lzZSBmcm9tIFwiLi4vLi4vLi4vY29tcG9uZW50cy9wcmVjeXNlXCI7XHJcbmltcG9ydCBFZHVTb3VyY2VzIGZyb20gXCIuLi8uLi8uLi9zb3VyY2VzL2VkdWNhdGlvbi1zb3VjZXNcIjtcclxuaW1wb3J0IHsgdXNlTmF2aWdhdGlvbiB9IGZyb20gXCIuLi8uLi8uLi91dGlsc1wiO1xyXG5pbXBvcnQgeyB1c2VUYWJOYXZpZ2F0aW9uIH0gZnJvbSBcIi4uLy4uLy4uL3V0aWxzL1RhYk5hdmlnYXRpb25cIjtcclxuXHJcblxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIEhQRWR1Y2F0aW9uKCl7XHJcbiAgICBjb25zdCB7Z29Ub1BhZ2VBbmRTY3JvbGx9ID0gdXNlTmF2aWdhdGlvbigpO1xyXG4gICAgdXNlVGFiTmF2aWdhdGlvbigpO1xyXG4gICAgcmV0dXJuKFxyXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93IGFsaWduLWl0ZW1zLWNlbnRlclwiID5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPEJ1dHRvbk9uZVdpdGhTY3JvbGwgb3BlbmNsYXNzPVwiZWR1LWN5Y2xldGFiXCIgdGV4dD1cIk92ZXJ2aWV3XCIgb3Blbj1cImVkdS1vdmVydmlld1wiIHNjcm9sbElkPVwiZWR1LWhlYWRpbmdcIi8+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPEJ1dHRvbk9uZVdpdGhTY3JvbGwgb3BlbmNsYXNzPVwiZWR1LWN5Y2xldGFiXCIgdGV4dD1cIlRldXRvIHJ1ZnQhXCIgb3Blbj1cInRldXRvcnVmdFwiIHNjcm9sbElkPVwidGV1cm9ydWZ0LWhlYWRpbmdcIi8+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPEJ1dHRvbk9uZVdpdGhTY3JvbGwgb3BlbmNsYXNzPVwiZWR1LWN5Y2xldGFiXCIgdGV4dD1cIlNjaFx1MDBGQ2xlcippbm5lbiBBa2FkZW1pZVwiIG9wZW49XCJha2FkZW1pZVwiIHNjcm9sbElkPVwic3R1ZGVudC1hY2FkZW15LWhlYWRpbmdcIi8+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPEJ1dHRvbk9uZVdpdGhTY3JvbGwgb3BlbmNsYXNzPVwiZWR1LWN5Y2xldGFiXCIgdGV4dD1cIk1JTlQgU29tbWVyXCIgb3Blbj1cIm1pbnRcIiBzY3JvbGxJZD1cIm1pbnQtaGVhZGluZ1wiLz5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuXHJcblxyXG5cclxuXHJcblxyXG4gICAgICAgICAgICA8ZGl2IGlkPVwiZWR1LW92ZXJ2aWV3XCIgY2xhc3NOYW1lPVwiZWR1LWN5Y2xldGFiXCIgc3R5bGU9e3tkaXNwbGF5OiBcImJsb2NrXCJ9fT5cclxuICAgICAgICAgICAgPEg0IGlkPVwiZWR1LWhlYWRpbmdcIiB0ZXh0PVwiRWR1Y2F0aW9uIGFzIHBhcnQgb2YgYSBpbnRlZ3JhdGVkIGh1bWFuIHByYWN0aWNlIC0gYnV0IHdoeT9cIi8+XHJcbiAgICAgICAgICAgIDxwPldoaWxlIGVkdWNhdGlvbiBpcyBub3QgZGlyZWN0bHkgY29uc2lkZXJlZCBwYXJ0IG9mIEh1bWFuIFByYWN0aWNlcyBpbiBpR0VNLCBpdCByZW1haW5zIGEgdml0YWwgY29tcG9uZW50IG9mIHN5bnRoZXRpYyBiaW9sb2d5IGFuZCBzY2llbnRpZmljIGFkdmFuY2VtZW50IFxyXG4gICAgICAgICAgICAgICAgZm9yIHNldmVyYWwgaW1wb3J0YW50IHJlYXNvbnM6PC9wPlxyXG4gICAgICAgICAgICA8dWw+XHJcbiAgICAgICAgICAgICAgICA8bGk+VG8gaGVscCBwZW9wbGUgbWFrZSA8Yj5pbmZvcm1lZCBjaG9pY2VzPC9iPiBhbmQgZW5jb3VyYWdlIDxiPmVtYW5jaXBhdGlvbiB0aHJvdWdoIGVkdWNhdGlvbjwvYj4uPC9saT5cclxuICAgICAgICAgICAgICAgIDxsaT5Pbmx5IGluZm9ybWVkIHBhcnRpY2lwYW50cyBhbGxvdyBmb3IgPGI+ZXRoaWNhbCBlbmdhZ2VtZW50PC9iPi48L2xpPlxyXG4gICAgICAgICAgICAgICAgPGxpPlRvIGVuc3VyZSA8Yj5jb250aW51b3VzIGxlYXJuaW5nPC9iPiBpbiBvcmRlciB0byBzZWN1cmUgdGhlIGZ1dHVyZSBvZiBzeW50aGV0aWMgYmlvbG9neSBhbmQgIEN5c3RpYyBGaWJyb3NpcyByZXNlYXJjaC48L2xpPlxyXG4gICAgICAgICAgICAgICAgPGxpPk9ubHkgYXdhcmVuZXNzIGFuZCBrbm93bGVkZ2UgY2FuIDxiPnByZXZlbnQgbWlzdXNlIGFuZCBtaXNpbmZvcm1hdGlvbjwvYj4uPC9saT5cclxuICAgICAgICAgICAgPC91bD5cclxuICAgICAgICAgICAgPHA+VGhpcyBpcyBhcHBsaWNhYmxlIHRvIGJvdGggIEN5c3RpYyBGaWJyb3NpcyBhbmQgc3ludGhldGljIGJpb2xvZ3kgaW4gZ2VuZXJhbC48L3A+XHJcbiAgICAgICAgICAgIDxwPk1hbnkgcGVvcGxlIGdyYXZpdGF0ZSB0b3dhcmRzIGZpZWxkcyB0aGV5IGFyZSBpbnRlcmVzdGVkIGluLiBBd2FyZW5lc3MsIGV4cGxvcmF0aW9uLCBhbmQgcmVjZWl2aW5nIG5ldyBrbm93bGVkZ2UgYXJlIG5lY2Vzc2FyeSB0byBjdWx0aXZhdGUgYW4gYXV0aGVudGljIFxyXG4gICAgICAgICAgICAgICAgaW50ZXJlc3QsIHdoaWNoLCB0b2dldGhlciB3aXRoIHBvc2l0aXZlIHNvY2lhbCBpbnRlcmFjdGlvbiwgZm9ybXMgYSBwcm9taXNpbmcgZm91bmRhdGlvbiBmb3IgYSBsYXN0aW5nIGludGVyZXN0PFRhYlNjcm9sbExpbmsgdGFiPVwiZWR1LW92ZXJ2aWV3XCIgbnVtPVwiMVwiIHNjcm9sbElkPVwiZGVzYy1lZHVcIi8+LiBBcyBmdXR1cmUgcmVzZWFyY2hlcnMgYW5kIHBhcnQgb2YgYSBcclxuICAgICAgICAgICAgICAgIGNvbXBldGl0aW9uIGFpbWluZyBmb3IgY29udGludW91cyBpbm5vdmF0aW9uLCB3ZSBmZWVsIGVkdWNhdGlvbiBpcyBhbiBpbXBvcnRhbnQgYXNjcGVjdCB0aGF0IHNob3VsZCBub3QgYmUgc2hydWdnZWQgb2ZmIHVuZGVyIHRoZSBndWlzZSBvZiBmb2N1c2luZyBvbiBIdW1hbiBQcmFjdGljZXMuPC9wPlxyXG5cclxuICAgICAgICAgICAgPEg0IGlkPVwiZWR1LXdoeS1oZWFkaW5nXCIgdGV4dD1cIk91ciBlZHVjYXRpb25hbCBhY3Rpdml0aWVzXCIvPlxyXG4gICAgICAgICAgICA8cD5JbiBib3RoIFwiRGVyIFRldXRvIHJ1ZnQhXCIgYW5kIHRoZSBDZUJpVGVjIFN0dWRlbnQgQWNhZGVteSwgb3VyIHRlYW0gZm9jdXNlZCBvbiBlZHVjYXRpb24gdGhyb3VnaCBwZXJzb25hbCBjb250YWN0IG5vdCBvbmx5IGFzIHdheSB0byBzcHJlYWQgXHJcbiAgICAgICAgICAgICAgICBhd2FyZW5lc3MgYWJvdXQgIEN5c3RpYyBGaWJyb3NpcywgYnV0IHRvIHNwcmVhZCB0aGUgbG92ZSB3ZSBoYXZlIGZvciB3aGF0IHdlIGRvLiA8L3A+XHJcbiAgICAgICAgICAgIDxwPldlIGFyZSBnbGFkIHRvIGhhdmUgaGFkIHRoZSBwb3NzaWJpbGl0eSB0byB3b3JrIHdpdGggc3VjaCBkaWZmZXJlbnQgYXVkaWVuY2VzLiBXaGlsZSBcIkRlciBUZXV0byBydWZ0IVwiIGhhZCBhIGZvY3VzIG9uIGZhbWlsaWVzIGFuZCByZXF1aXJlZCBhIGNyZWF0aXZlXHJcbiAgICAgICAgICAgICAgICBhcHByb2FjaCwgdGhlIFwiU2NoXHUwMEZDbGVyKmlubmVuIEFrYWRlbWllXCIgYW5kIFwiTUlOVCBTb21tZXJcIiBhbGxvd2VkIHVzIHRvIGludGVyYWN0IHdpdGggYXNwaXJpbmcgcmVzZWFyY2hlcnMgd2hvIG1heSB2ZXJ5IHdlbGwgYmUgb3VyIGZ1dHVyZSBjbGFzc21hdGVzIGF0IFxyXG4gICAgICAgICAgICAgICAgQmllbGVmZWxkIFVuaXZlcnNpdHkuIFxyXG4gICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgIDxwPkhvd2V2ZXIsIHdlIGNhbWUgdG8gcmVhbGl6ZSB0aGF0IFwiRGVyIFRldXRvIHJ1ZnQhXCIgbWF5IGhhdmUgYmVlbiB0aGUgbW9yZSBpbXBhY3RmdWwgZXZlbnQgZm9yIG91ciBwZXJzb25hbCBncm93dGguIEl0IHRvb2sgdXMgb3V0IG9mIHRoZSBmYW1pbGlhciBcclxuICAgICAgICAgICAgICAgIFwic2NpZW5jZSBidWJibGVcIiBhbmQgaW50byBhIHNwYWNlIHdoZXJlIHdlIGNvdWxkIGludGVyYWN0IHdpdGggdGhlIGdlbmVyYWwgcHVibGljXHUyMDE0cGVvcGxlIHdobyBkb25cdTIwMTl0IG5lY2Vzc2FyaWx5IGhhdmUgYSBzY2llbnRpZmljIGJhY2tncm91bmQuIFRoaXMgXHJcbiAgICAgICAgICAgICAgICBleHBlcmllbmNlIHJlbWluZGVkIHVzIGhvdyBub24tc2NpZW50aXN0cyBwZXJjZWl2ZSBjb21wbGV4IHRvcGljcyBsaWtlIGdlbmUgdGhlcmFweSBhbmQgIEN5c3RpYyBGaWJyb3Npcy4gSXQgYWxzbyBoaWdobGlnaHRlZCB0aGUgaW1wb3J0YW5jZSBvZiBub3Qgb25seSBcclxuICAgICAgICAgICAgICAgIGV0aGljYWwgcmVzcG9uc2liaWxpdHkgYnV0IGFsc28gc29jaWFsIHJlc3BvbnNpYmlsaXR5IGluIGNvbW11bmljYXRpbmcgc2NpZW5jZS4gV2UgZ2FpbmVkIGFuZCByZWdhaW5lZCBpbnNpZ2h0IGludG8gdGhlIGNvbmNlcm5zLCBtaXNjb25jZXB0aW9ucywgYW5kIFxyXG4gICAgICAgICAgICAgICAgaG9wZXMgdGhhdCB0aGUgcHVibGljIGhhcyByZWdhcmRpbmcgc3ludGhldGljIGJpb2xvZ3ksIGFsbG93aW5nIHVzIHRvIGJldHRlciB1bmRlcnN0YW5kIHdoYXQgaXMgbm90IG9ubHkgc2NpZW50aWZpY2FsbHkgc291bmQgYnV0IGFsc28gc29jaWFsbHkgXHJcbiAgICAgICAgICAgICAgICBhY2NlcHRhYmxlLiBXZSBhcmUgY29uZmlkZW50IHRoYXQgcGFydGljaXBhdGluZyBpbiBcIkRlciBUZXV0byBydWZ0IVwiIHZlcnkgcG9zaXRpdmVseSBpbmZsdWVuY2VkIG91ciBhcHByb2FjaCB0byBmdXJ0aGVyIGNvbW11bmljYXRpb24uIDwvcD5cclxuICAgICAgICAgICAgPEg0IHRleHQ9XCJSZWZlcmVuY2VzXCI+PC9IND5cclxuICAgICAgICAgICAgPEVkdVNvdXJjZXMvPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgIDxkaXYgaWQ9XCJha2FkZW1pZVwiIGNsYXNzTmFtZT1cImVkdS1jeWNsZXRhYlwiIHN0eWxlPXt7ZGlzcGxheTogXCJub25lXCJ9fT5cclxuICAgICAgICAgICAgICAgIDxINCBpZD1cInN0dWRlbnQtYWNhZGVteS1oZWFkaW5nXCIgdGV4dD1cIlN0dWRlbnQgYWNhZGVteSBvbiB0aGUgdG9waWMgb2Ygc3ludGhldGljIGJpb2xvZ3lcIi8+XHJcbiAgICAgICAgICAgICAgICA8SDUgaWQ9XCJTY2hcdTAwRkNsZXIqaW5uZW4gQWthZGVtaWVcIiB0ZXh0PVwiVGVhY2hpbmcgdGhlIE5leHQgR2VuZXJhdGlvbiBvZiBTeW5CaW8gUGlvbmVlcnMgXCIvPlxyXG4gICAgICAgICAgICAgICAgPHA+IFRoZSBDZW50ZXIgZm9yIEJpb3RlY2hub2xvZ3kgKENlQmlUZWMpIGF0IEJpZWxlZmVsZCBVbml2ZXJzaXR5IG9yZ2FuaXplcyB0aGUgYW5udWFsLiA8YSBocmVmPVwiaHR0cHM6Ly93d3cuY2ViaXRlYy51bmktYmllbGVmZWxkLmRlL2V2ZW50cy9mdXRoZXItZXZlbnRzLzY0OC0xMS1zY2h1ZWxlcmFrYWRlbWllXCIgdGl0bGU9XCJDZUJpVGVjIFN0dWRlbnQgQWNhZGVteSBmb3IgXHUyMDFDQmlvdGVjaG5vbG9neSBhbmQgQmlvbWVkaWNpbmVcIiA+IENlQmlUZWMgU3R1ZGVudCBBY2FkZW15IGZvciBcdTIwMUNCaW90ZWNobm9sb2d5IGFuZCBCaW9tZWRpY2luZSA8L2E+IFN1cHBvcnRlZCBieSA8YSBocmVmPVwiaHR0cHM6Ly93d3cub3N0aHVzaGVucmljaC1zdGlmdHVuZy5kZVwiIHRpdGxlPVwiT3N0aHVzaGVucmljaCBGb3VuZGF0aW9uXCIgPiBPc3RodXNoZW5yaWNoIEZvdW5kYXRpb24gPC9hPiBhbmQgdGhlIDxhIGhyZWY9XCJodHRwczovL3d3dy5iZXpyZWctZGV0bW9sZC5ucncuZGUvXCIgdGl0bGU9XCJEZXRtb2xkIGRpc3RyaWN0IGdvdmVybm1lbnRcIiA+IERldG1vbGQgZGlzdHJpY3QgZ292ZXJubWVudCA8L2E+LCB0aGUgYWNhZGVteSBvZmZlcnMgc3R1ZGVudHMgYSB1bmlxdWUgb3Bwb3J0dW5pdHkgdG8gZGVlcGVuIHRoZWlyIHVuZGVyc3RhbmRpbmcgb2YgYmlvbG9neSwgZ2VuZXRpY3MsIGFuZCBtb2xlY3VsYXIgYmlvbG9neSB0aHJvdWdoIGhhbmRzLW9uIGV4cGVyaW1lbnRzIGFuZCBleHBlcnQgbGVjdHVyZXMuIEtleSB0b3BpY3MgaW5jbHVkZSBuYW5vcG9yZSBzZXF1ZW5jaW5nLCB0dW1vciBkaWFnbm9zdGljcywgYW5kIHRoZSBldm9sdXRpb24gb2YgU0FSUy1Db1YtMi4gVGhlIHByb2dyYW0gaXMgZXNwZWNpYWxseSB2YWx1YWJsZSBmb3Igc3R1ZGVudHMgdHJhbnNpdGlvbmluZyBmcm9tIHNjaG9vbCB0byBwb3RlbnRpYWwgc3R1ZGllcyBpbiB0aGUgbmF0dXJhbCBzY2llbmNlcy4gXHJcbkR1ZSB0byBvdXIgY29sbGFib3JhdGlvbiB3aXRoIHRoZSBTdHVkZW50IEFjYWRlbXksIHdlIGNvbmR1Y3RlZCB0aGUgbmFub3BvcmUgc2VxdWVuY2luZyBleHBlcmltZW50IGFuZCBzZXJ2ZWQgYXMgdGVhY2hlcnMsIGFzc2lzdGluZyBpbiBleHBlcmltZW50IHByZXBhcmF0aW9uLCBleGVjdXRpb24sIG9mZmVyaW5nIGd1aWRhbmNlLCBhbmQgYW5zd2VyaW5nIHF1ZXN0aW9ucy4gVGhpcyByb2xlIGFsbG93ZWQgdXMgdG8gdGVhY2ggdGhlIHN0dWRlbnRzIGFib3V0IGxhYm9yYXRvcnkgd29yaywgdGhlIGNyaXRpY2FsIGFzcGVjdHMgb2YgY29uZHVjdGluZyBleHBlcmltZW50cywgYW5kIGVzc2VudGlhbCBzYWZldHkgY29uc2lkZXJhdGlvbnMuIFRoZSBleHBlcmltZW50IGludm9sdmVkIGlzb2xhdGluZyBiYWN0ZXJpYWwgRE5BLCBwcmVwYXJpbmcgc2FtcGxlcyBmb3Igc2VxdWVuY2luZywgYW5kIHBlcmZvcm1pbmcgYm90aCBzZXF1ZW5jaW5nIGFuZCBkYXRhIGFuYWx5c2lzLjwvcD5cclxuPGRpdiBjbGFzc05hbWU9XCJyb3cgYWxpZ24taXRlbXMtY2VudGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvZWRjYXRpb24tYW5kLW91dHJlYWNoL3NjaGllbGVyYWthZGVtaWUtdm9ydHJhZy1qb2Vybi5qcGdcIj48L2ltZz5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2VkY2F0aW9uLWFuZC1vdXRyZWFjaC9zY2hpZWxlcmFrYWRlbWllLWxpc2EtZ3J1cHBlMi5qcGdcIj48L2ltZz5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICBcclxuPHA+PC9wPlxyXG48cD48L3A+XHJcbiAgICAgICAgPHA+U2luY2Ugd2UgcHJlc2VudGVkIG91ciBpR0VNIHByb2plY3QgPFByZUN5c2UvPiB0byB0aGVtIGFzIHdlbGwsIHRoZSBzdHVkZW50cyB3ZXJlIGludHJvZHVjZWQgdG8gc3R1ZHktcmVsYXRlZCBwcm9qZWN0cyBsaWtlIGlHRU0uIFRoZXkgbGVhcm5lZCBhYm91dCB0aGUgZGFpbHkgdGFza3MsIGNoYWxsZW5nZXMsIGFuZCByZXNwb25zaWJpbGl0aWVzIGludm9sdmVkIGluIGlHRU0gdGhyb3VnaCBwcm9qZWN0IGRpc2N1c3Npb25zLiBNYW55IHN0dWRlbnRzIHdlcmUgY2FwdGl2YXRlZCBieSB0aGUgaUdFTSBjb25jZXB0IGFuZCBleHByZXNzZWQgaW50ZXJlc3QgaW4gcGFydGljaXBhdGluZyBkdXJpbmcgdGhlaXIgZnV0dXJlIHN0dWRpZXMuIFRoZXkgd2VyZSBwYXJ0aWN1bGFybHkgZmFzY2luYXRlZCBieSB0aGUgb3Bwb3J0dW5pdHkgdG8gZGV2ZWxvcCByZWFsIHJlc2VhcmNoIHByb2plY3RzLCB3b3JrIGluZGVwZW5kZW50bHkgaW4gdGhlIGxhYiwgbGVhcm4gZXh0ZW5zaXZlbHkgYWJvdXQgc3ludGhldGljIGJpb2xvZ3ksIGFuZCBpbXBsZW1lbnQgY3JlYXRpdmUgaWRlYXMgd2hpbGUgY29sbGFib3JhdGluZyB3aXRoIGFuIGludGVybmF0aW9uYWwgdGVhbS48L3A+ICAgICAgIFxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgPGRpdiBpZD1cInRldXRvcnVmdFwiIGNsYXNzTmFtZT1cImVkdS1jeWNsZXRhYlwiIHN0eWxlPXt7ZGlzcGxheTogXCJub25lXCJ9fT5cclxuICAgICAgICAgICAgICAgICAgICA8SDQgaWQ9XCJ0ZXVyb3J1ZnQtaGVhZGluZ1wiIHRleHQ9XCJFZHVjYXRpb25hbCBjaXR5IHRvdXIgZm9yIHlvdW5nIGFuZCBvbGRcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgPEg1IGlkPVwiRGVyIFRldXRvIHJ1ZnQhXCIgdGV4dD1cIiBXaGF0IGlzIFx1MjAxQ0RlciBUZXV0byBydWZ0IVx1MjAxRCBhbmQgd2h5IHdlIHBhcnRpY2lwYXRlXCIvPiAgICAgICAgICAgICAgIFxyXG48cD5cIkRlciBUZXV0byBydWZ0IVwiIGlzIGFuIG91dHJlYWNoIGV2ZW50IGxvY2F0ZWQgYWxsIG92ZXIgdGhlIGNpdHkgb2YgQmllbGVmZWxkIHdoZXJlIHZhcmlvdXMgbG9jYWwgY29tcGFuaWVzIGFuZCBpbnN0aXR1dGlvbnMgZW5nYWdlIHdpdGggdGhlIHB1YmxpYyB0byBpbmZvcm0gdGhlbSBhYm91dCB0aGVpciB3b3JrLiBTaW5jZSB3ZSB3YW50ZWQgdG8gcmFpc2UgYXdhcmVuZXNzIGZvciAgQ3lzdGljIEZpYnJvc2lzIGFuZCBwcmVzZW50IG91ciBhcHByb2FjaCB0byBkZXZlbG9waW5nIGFuIG9wdGltaXplZCBnZW5lIHRoZXJhcHkgdG8gY29tYmF0IHRoaXMgZGlzZWFzZSwgb3VyIHBhcnRpY2lwYXRpb24gaW4gdGhlIFwiRGVyIFRldXRvIHJ1ZnQhXCIgZXZlbnQgaW4gQmllbGVmZWxkIHdhcyB0aGUgcGVyZmVjdCBvcHBvcnR1bml0eSB0byBkbyBzby48L3A+ICAgICAgICAgICAgICAgXHJcbjxINSBpZD1cIldoYXQgd2FzIG91ciBzdHJhdGVneT9cIiB0ZXh0PVwiV2hhdCBpcyBvdXIgc3RyYXRlZ3k/XCIvPlxyXG48cD5PdXIgZ29hbCB3YXMgdG8gZWR1Y2F0ZSBjaGlsZHJlbiBhYm91dCB0aGUgY2hhbGxlbmdlcyBmYWNlZCBieSBDRiBwYXRpZW50cywgZXNwZWNpYWxseSB0aGUgb25lcyB3aXRoIGx1bmcgcHJvYmxlbXMuIFRoZSBrbm93bGVkZ2Ugd2hpY2ggd2UgZ2FpbmVkIGF0IHRoZSA8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZUFuZFNjcm9sbCAoJ2NvbW13b3Jrc2hvcCcsICcvY29udHJpYnV0aW9uJyl9PiBTY2llbmNlIENvbW11bmljYXRpb24gV29ya3Nob3AgPC9hPiBhcyBwYXJ0IG9mIHRoZSA8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZUFuZFNjcm9sbCAoJ2JmaC1ldXJvcGVhbi1tZWV0dXAnLCAnL2NvbnRyaWJ1dGlvbicpfT4gQkZIIE1lZXR1cCA8L2E+IHdhcyB0aGUgb3B0aW1hbCBiYXNpcyB0byBwbGFuIG91ciBvdXRyZWFjaCB0byB0aGUgcHVibGljLiBXZSBlbmdhZ2VkIHRoZSBjaGlsZHJlbiB3aXRoIGFjdGl2aXRpZXMgbGlrZSBjb2xvcmluZyBsdW5nIGltYWdlcyBhbmQgY29uZHVjdGluZyBleHBlcmltZW50cyB0byBleHBlcmllbmNlIGFuZCB1bmRlcnN0YW5kIGx1bmcgcmVsYXRlZCBzeW1wdG9tcy4gIFxyXG5PbmUgc3VjaCBleHBlcmltZW50IGludm9sdmVkIGNyZWF0aW5nIGEgbHVuZyBtb2RlbCBmcm9tIGJhbGxvb25zIGFuZCBzdHJhd3MsIGRlbW9uc3RyYXRpbmcgdGhlIGRpZmZpY3VsdHkgcGF0aWVudHMgaGF2ZSBpbiBicmVhdGhpbmcgYnkgaGF2aW5nIHRoZSBjaGlsZHJlbiBibG93IGludG8gdGhlIHN0cmF3cy4gQWRkaXRpb25hbGx5LCB3ZSBzZXQgdXAgYSB0YW5rIHdpdGggYSBtaXh0dXJlIG9mIHN0YXJjaCBhbmQgd2F0ZXIgdG8gc2ltdWxhdGUgbXVjdXMgYW5kIHBsYWNlZCBhIGJhbGwgb24gdG9wLiBUaGUgY2hpbGRyZW4gdHJpZWQgdG8gYmxvdyB0aGUgYmFsbCBhY3Jvc3MgdGhlIHN1cmZhY2UsIGlsbHVzdHJhdGluZyBob3cgaGFyZCBpdCBpcyBmb3IgYWlyIHRvIG1vdmUgdGhyb3VnaCBtdWN1cyBjb21wYXJlZCB0byB3YXRlciwgd2hlcmUgdGhlIGJhbGwgbW92ZWQgbXVjaCBtb3JlIGVhc2lseS4gXHJcblRoZSB2ZXJ5IGxpdHRsZSBvbmVzIGNvdWxkIHBhaW50IGNvbG9yaW5nIHBhZ2VzIHdoaWNoIHdlIGRlc2lnbmVkIGFuZCBwcmludGVkIGZvciB0aGVtLiBGb3IgdGhlIGFkdWx0cywgd2UgcHJvdmlkZWQgaW5mb3JtYXRpb24gYWJvdXQgb3VyIHByb2plY3QgYW5kIGRpc2N1c3NlZCB0aGUgaW1wbGljYXRpb25zIGFuZCBwb3RlbnRpYWwgb2YgZ2VuZSB0aGVyYXB5IGZvciAgQ3lzdGljIEZpYnJvc2lzLiBUaGVzZSBjb252ZXJzYXRpb25zIGFzIHdlbGwgYXMgdGhlIHJlc3VsdHMgb2Ygb3VyIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlQW5kU2Nyb2xsICgnb3VyLXN1cnZleXMtb24tLUN5c3RpYyBGaWJyb3Npcy1hbmQtZ2VuZS10aGVyYXB5JywgJy9odW1hbi1wcmFjdGljZXMnKX0+IHN1cnZleSBvbiBDRiBhbmQgZ2VuZSB0aGVyYXB5IDwvYT4gd2hpY2ggd2FzIGNvbmR1Y3RlZCBldmVudHMgbGlrZSB0aGVzZSBtYWRlIGl0IGFidW5kYW50bHkgY2xlYXIgdGhhdCBkZWdyZWVzIG9mIGtub3dsZWRnZSBvbiB0aGlzIHRvcGljIHdpZGVseSB2YXJ5IHRocm91Z2hvdXQgdGhlIHB1YmxpYyBhbmQgd2Ugd2VyZSBoYXBweSB0byBmaWxsIGluIHRoZSBleGlzdGluZyBnYXBzIGluIHBlb3BsZSdzIGtub3dsZWRnZSBhbmQgZXhjaGFuZ2UgcG9pbnRzIG9mIHZpZXcgb24gZ2VuZSB0aGVyYXB5LiAgXHJcbk1vcmVvdmVyLCB3ZSBjb25uZWN0ZWQgd2l0aCBvdGhlciBpbnN0aXR1dGlvbnMgYW5kIHBhcnRpY2lwYW50cyBhdCB0aGUgZXZlbnQuIFdlIHNoYXJlZCBvdXIgYm9vdGggYXQgQmllbGVmZWxkXHUyMDE5cyBcdTIwMUNTa3VscHR1cmVucGFya1x1MjAxRCBvbiB0aGUgb3V0c2lkZSB3aXRoIDxhIGhyZWY9XCJodHRwczovL2J0cy1ldi5kZS9iaWVsZWZlbGQvXCIgdGl0bGU9XCJidFNcIiA+IGJ0UyA8L2E+LCB0aGUgbGlmZSBzY2llbmNlIHN0dWRlbnQgaW5pdGlhdGl2ZSBmcm9tIEJpZWxlZmVsZCBVbml2ZXJzaXR5LCB3aXRoIHdob3NlIG1lbWJlcnMgd2UgaGFkIHN0aW11bGF0aW5nIGRpc2N1c3Npb25zIGFzIHdlbGwuIFdlIHdlcmUgbW9yZSB0aGFuIGRlbGlnaHRlZCB3aGVuIHRoZSBjaXR5IG9mIEJpZWxlZmVsZCBmZWF0dXJlZCB1cyBvbiB0aGVpciBJbnN0YWdyYW0sIGhpZ2hsaWdodGluZyBvdXIgcHJlc2VuY2UgZHVyaW5nIFwiRGVyIFRldXRvIHJ1ZnQhXCIuIFRoaXMgY29sbGFib3JhdGlvbiBoZWxwZWQgdXMgcmVhY2ggYSB3aWRlciBhdWRpZW5jZSBhbmQgcmFpc2UgYXdhcmVuZXNzIGFib3V0IG91ciByZXNlYXJjaCBlZmZvcnRzLjwvcD5cclxuPGJyLz5cclxuey8qIDxhIGhyZWY9XCJodHRwczovL3VuaWJpZWxlZmVsZGRlLnNoYXJlcG9pbnQuY29tL3NpdGVzL2lHRU0yMDI0dGVhbXMvX2xheW91dHMvMTUvc3RyZWFtLmFzcHg/aWQ9JTJGc2l0ZXMlMkZpR0VNMjAyNHRlYW1zJTJGRnJlaWdlZ2ViZW5lJTIwRG9rdW1lbnRlJTJGR2VuZXJhbCUyRkZvdG9zJTJDJTIwVmlkZW9zJTIwdW5kJTIwQ28lMkZUZXV0byUyMHJ1ZnQlMkZWaWRlbyUyMEluc3RhJTIwVGV1dG8lMjBSdWZ0JTJFbW92JmdhPTEmcmVmZXJyZXI9U3RyZWFtV2ViQXBwJTJFV2ViJnJlZmVycmVyU2NlbmFyaW89QWRkcmVzc0JhckNvcGllZCUyRXZpZXclMkVlNGE0M2E1NSUyRGZmZjMlMkQ0YjQ0JTJEYjA4MSUyRGFkMjYzMDZmOTNlMFwiIHRpdGxlPVwidmlkZW8gVGV1dG8gcnVmdFwiID4gd2F0Y2ggbWU8L2E+IFxyXG4gKi99XHJcbiA8YnIvPlxyXG48ZGl2IGNsYXNzTmFtZT1cInJvdyBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cclxuICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgPEg1IGlkPVwiY29uY2x1c2lvblwiIHRleHQ9XCJXaGF0IGlzIG91ciBjb25jbHVzaW9uXCIvPlxyXG4gICAgICAgIDxwPkRlc3BpdGUgdGhlIGNoYW5nZWFibGUgd2VhdGhlciwgd2UgY291bGQgZWR1Y2F0ZSBtYW55IHBlb3BsZSBvZiBCaWVsZWZlbGQncyBjb21tdW5pdHkgYWJvdXQgIEN5c3RpYyBGaWJyb3Npcywgb3VyIHRoZXJhcGV1dGljIGFwcHJvYWNoIGFuZCBnZW5lIHRoZXJhcHkgaW4gZ2VuZXJhbCBhbmQgaGFkIHRoZSBvcHBvcnR1bml0eSB0byBpbXByb3ZlIG91ciBzY2llbmNlIGNvbW11bmljYXRpb24gZm9yIHRoZSBmdXR1cmUgYXMgd2VsbCBzbyBpdCB3YXMgYSBzdWNjZXNzZnVsIGV2ZW50ISA8L3A+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICA8ZmlndXJlPlxyXG4gICAgICAgIDxpZnJhbWUgdGl0bGU9XCJCaWVsZWZlbGQtQ2VCaVRlYzogVGV1dG8gcnVmdCEgKDIwMjQpIFtHZXJtYW5dXCIgd2lkdGg9XCI1NjBcIiBoZWlnaHQ9XCIzMTVcIiBzcmM9XCJodHRwczovL3ZpZGVvLmlnZW0ub3JnL3ZpZGVvcy9lbWJlZC83MDQ5OWNhZS00OGFlLTQ1MWEtYTg4OS0xMDJlZjVlNmNjZWFcIiBmcmFtZUJvcmRlcj1cIjBcIiBhbGxvd0Z1bGxTY3JlZW49e3RydWV9IHNhbmRib3g9XCJhbGxvdy1zYW1lLW9yaWdpbiBhbGxvdy1zY3JpcHRzIGFsbG93LXBvcHVwcyBhbGxvdy1mb3Jtc1wiPjwvaWZyYW1lPlxyXG4gICAgICAgIDxmaWdjYXB0aW9uPiA8Yj5GaWd1cmUgMS4gPC9iPiBJbnN0YWdyYW0tU3RvcnkgcG9zdGVkIGJ5IDxhIGhyZWY9XCJodHRwczovL3d3dy5pbnN0YWdyYW0uY29tL2JpZWxlZmVsZGpldHp0L1wiPjxpPkBiaWVsZWZlbGRqZXR6dDwvaT48L2E+IDwvZmlnY2FwdGlvbj5cclxuICAgIDwvZmlndXJlPlxyXG4gICAgPC9kaXY+XHJcbjwvZGl2PlxyXG4gICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3cgYWxpZ24taXRlbXMtY2VudGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvZWRjYXRpb24tYW5kLW91dHJlYWNoL3RldXRvcnVmdC1leHBlcm1pbmV0LmpwZWdcIj48L2ltZz5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2VkY2F0aW9uLWFuZC1vdXRyZWFjaC90ZXV0b3J1ZnQtZ3J1cHBlLmpwZWdcIj48L2ltZz5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICBcclxuICAgICAgICA8L2Rpdj5cclxuXHJcblxyXG5cclxuXHJcbiAgICAgICAgPGRpdiBpZD1cIm1pbnRcIiBjbGFzc05hbWU9XCJlZHUtY3ljbGV0YWJcIiBzdHlsZT17e2Rpc3BsYXk6IFwibm9uZVwifX0+XHJcbiAgICAgICAgICAgIDxINCBpZD1cIm1pbnQtaGVhZGluZ1wiIHRleHQ9XCJNSU5UIFNvbW1lclwiLz5cclxuICAgICAgICAgICAgICAgIDxINSBpZD1cIndoYXQgYW5kIHdoeSBtaW50IHN1bW1lclwiIHRleHQ9XCJXaGF0IGlzIE1JTlQgU3VtbWVyIGFuZCB3aHkgd2VyZSB3ZSBwYXJ0aWNpcGF0aW5nP1wiLz5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvaHAvbWludHNvbW1lcmxvZ28ucG5nXCIgc3R5bGU9e3t3aWR0aDpcIjMwJVwiLCBoZWlnaHQ6XCIyMCVcIn19Lz5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cD5cdTIwMUNNSU5UIFN1bW1lciAyMDI0XHUyMDFEIGlzIGEgY29tcHJlaGVuc2l2ZSBwcm9ncmFtIGRlc2lnbmVkIHByaW1hcmlseSBmb3IgaGlnaCBzY2hvb2wgZ3JhZHVhdGVzIG9mIHRoZSBjbGFzcyBvZiAyMDI0LCB3aG8gYXJlIGNvbnNpZGVyaW5nIHB1cnN1aW5nIHN0dWRpZXMgaW4gU1RFTSBmaWVsZHMgKFNjaWVuY2UsIFRlY2hub2xvZ3ksIEVuZ2luZWVyaW5nLCBhbmQgTWF0aGVtYXRpY3MsIGluY2x1ZGluZyB0ZWFjaGluZyBkZWdyZWVzKS4gVGhlIHByb2dyYW0gaXMgcGVyZmVjdCBmb3IgdGhvc2Ugd2hvIGFyZSBzdGlsbCB1bmNlcnRhaW4gaWYgdGhleSB3YW50IHRvIHN0dWR5IGluIFNURU0gb3Igd2hpY2ggc3BlY2lmaWMgZGlzY2lwbGluZSBhbGlnbnMgYmVzdCB3aXRoIHRoZWlyIGludGVyZXN0cy48L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwPk91ciBwYXJ0aWNpcGF0aW9uIGluIDxhIGhyZWY9XCJodHRwczovL3d3dy51bmktYmllbGVmZWxkLmRlL3N0dWRpdW0vc3R1ZGllbmludGVyZXNzaWVydGUvbWludC1zb21tZXIvXCIgdGl0bGU9XCJNaW50IFN1bW1lclwiID5NSU5UIFN1bW1lciA8L2E+IG9mZmVyZWQgdXMgdGhlIGNoYW5jZSB0byByYWlzZSBhd2FyZW5lc3Mgb2YgIEN5c3RpYyBGaWJyb3NpcyBhbmQgc2hvd2Nhc2Ugb3VyIGN1dHRpbmctZWRnZSBhcHByb2FjaCB0byBkZXZlbG9wIGFuIG9wdGltaXplZCBnZW5lIHRoZXJhcHkgdG8gY29tYmF0IHRoaXMgZGlzZWFzZS4gVGhyb3VnaCB0aGUgZXZlbnQgd2UgZW5nYWdlZCB3aXRoIHBvdGVudGlhbCBmdXR1cmUgc2NpZW50aXN0cyBhbmQgcmVzZWFyY2hlcnMsIGluZm9ybWluZyB0aGVtIGFib3V0IG91ciBwcm9qZWN0LCBpR0VNIGFuZCB0aGUgaW1wb3J0YW5jZSBvZiBzY2llbnRpZmljIHJlc2VhcmNoIGluIGFkdmFuY2luZyBtZWRpY2FsIHRyZWF0bWVudHMuIFRoaXMgcHJvZ3JhbSBub3Qgb25seSBhbGxvd3MgdXMgdG8gc2hhcmUgb3VyIG1pc3Npb24gYnV0IGFsc28gdG8gaW5zcGlyZSB0aGUgbmV4dCBnZW5lcmF0aW9uIG9mIFNURU0gc3R1ZGVudHMgYnkgaGlnaGxpZ2h0aW5nIHRoZSByZWFsLXdvcmxkIGltcGFjdCBvZiB0aGVpciBzdHVkaWVzLiA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8SDUgaWQ9XCJzdHJhdGVneSBzdW1tZXJcIiB0ZXh0PVwiV2hhdCB3YXMgb3VyIHN0cmF0ZWd5P1wiLz5cclxuICAgICAgICAgICAgICAgICAgICA8cD5PdXIgb2JqZWN0aXZlIGF0IE1JTlQgU3VtbWVyIHdhcyB0byBpbmZvcm0gYXR0ZW5kZWVzLCBlc3BlY2lhbGx5IGFzcGlyaW5nIFNURU0gc3R1ZGVudHMsIGFib3V0IHRoZSB1bmlxdWUgY2hhbGxlbmdlcyBmYWNlZCBieSAgQ3lzdGljIEZpYnJvc2lzIChDRikgcGF0aWVudHMsIHdpdGggYSBwYXJ0aWN1bGFyIGZvY3VzIG9uIGx1bmctcmVsYXRlZCBjb21wbGljYXRpb25zLiBXZSBkcmV3IGhlYXZpbHkgb24gdGhlIGluc2lnaHRzIGdhaW5lZCBmcm9tIHRoZSBTY2llbmNlIENvbW11bmljYXRpb24gV29ya3Nob3AgYXQgdGhlIEJGSCBNZWV0dXAsIHdoaWNoIHByb3ZpZGVkIHVzIHdpdGggdGhlIHBlcmZlY3QgZnJhbWV3b3JrIHRvIG1ldGljdWxvdXNseSBwbGFuIG91ciBvdXRyZWFjaCBmb3IgdGhpcyBldmVudC4gVGhpcyBmb3VuZGF0aW9uIGFsbG93ZWQgdXMgdG8gY3JhZnQgZW5nYWdpbmcgYW5kIGVkdWNhdGlvbmFsIGFjdGl2aXRpZXMgdGhhdCBlZmZlY3RpdmVseSBjb252ZXllZCB0aGUgY29tcGxleGl0aWVzIG9mIENGIHRvIG91ciBhdWRpZW5jZSwgZW5zdXJpbmcgb3VyIG1lc3NhZ2Ugd2FzIGJvdGggaW1wYWN0ZnVsIGFuZCBhY2Nlc3NpYmxlLiA8L3A+XHJcbiAgICAgICAgICAgICAgICAgICAgPHA+V2UgdG9vayB0aGUgb3Bwb3J0dW5pdHkgdG8gZXhwbGFpbiB0aGUgaUdFTSBjb21wZXRpdGlvbiBhbmQgb3VyIHByb2plY3QgdG8gcGFydGljaXBhbnRzLiBXZSBzaGFyZWQgaG93IGlHRU0gaXMgYSBnbG9iYWwgY29tcGV0aXRpb24gdGhhdCBicmluZ3MgdG9nZXRoZXIgc3R1ZGVudCB0ZWFtcyB0byBzb2x2ZSByZWFsLXdvcmxkIHByb2JsZW1zIHVzaW5nIHN5bnRoZXRpYyBiaW9sb2d5LiBXZSBkaXNjdXNzZWQgaG93IG91ciBhcHByb2FjaCBhaW1zIHRvIGNvcnJlY3QgdGhlIGdlbmV0aWMgbXV0YXRpb24gcmVzcG9uc2libGUgZm9yIENGLCBwb3RlbnRpYWxseSBvZmZlcmluZyBhIG1vcmUgZWZmZWN0aXZlIHRyZWF0bWVudC4gQnkgZW5nYWdpbmcgd2l0aCBhdHRlbmRlZXMsIHdlIHdlcmUgYWJsZSB0byBoaWdobGlnaHQgdGhlIHNpZ25pZmljYW5jZSBvZiBvdXIgcmVzZWFyY2ggYW5kIHRoZSBpbXBhY3QgaXQgY291bGQgaGF2ZSBvbiBpbXByb3ZpbmcgdGhlIGxpdmVzIG9mIHRob3NlIGFmZmVjdGVkIGJ5IHRoaXMgY2hhbGxlbmdpbmcgY29uZGl0aW9uLiBUaGV5IGdvdCB0aGUgb3Bwb3J0dW5pdHkgdG8gY29udHJpYnV0ZSB0byBvdXIgcHJvamVjdCBieSBwYXJ0aWNpcGF0aW5nIGluIG91ciBzdXJ2ZXkuIDwvcD5cclxuICAgICAgICAgICAgICAgICAgICA8cD5PdmVyIHRoZSB0aW1lIG9mIHR3byB3ZWVrcywgd2UgZXN0YWJsaXNoZWQgbWVhbmluZ2Z1bCBjb25uZWN0aW9ucyB3aXRoIHByb2Zlc3NvcnMsIHN0dWRlbnRzLCBhbmQgcGFydGljaXBhbnRzIGFjcm9zcyB2YXJpb3VzIFNURU0gZmllbGRzIGR1cmluZyB0aGUgZXZlbnQsIGxpa2UgdGhlIHN0dWRlbnQgaW5pdGlhdGl2ZSBidFMgYW5kIHRoZSBDYW1wdXNicmF1ZXJlaSBCaWVsZWZlbGQuIFNoYXJpbmcgb3VyIHByb2plY3Qgd2l0aCB0aGUgbGlmZSBzY2llbmNlIHN0dWRlbnRzIHdhcyBoZWxwZnVsLCBtb3RpdmF0aW5nIGFuZCBvcGVuZWQgdGhlIGRvb3IgdG8gZW5nYWdpbmcgZGlzY3Vzc2lvbnMgdGhhdCBlbnJpY2hlZCBvdXIgcGVyc3BlY3RpdmUgYW5kIGZvc3RlcmVkIGNvbGxhYm9yYXRpb24uIFRoZXNlIGludGVyYWN0aW9ucyBhbGxvd2VkIHVzIHRvIGNvbm5lY3Qgd2l0aCBleHBlcnRzIGFuZCBzdHVkZW50cyBmcm9tIGRpZmZlcmVudCBkaXNjaXBsaW5lcywgZW5oYW5jaW5nIG91ciB1bmRlcnN0YW5kaW5nIG9mIGhvdyBvdXIgZ2VuZSB0aGVyYXB5IHJlc2VhcmNoIGZvciAgQ3lzdGljIEZpYnJvc2lzIGZpdHMgd2l0aGluIHRoZSBicm9hZGVyIHNjaWVudGlmaWMgbGFuZHNjYXBlLjwvcD5cclxuICAgICAgICAgICAgICAgIDxINSBpZD1cImNvbmNsdXNpb24gc3VtbWVyXCIgdGV4dD1cIldoYXQgaXMgb3VyIGNvbmNsdXNpb24/XCIvPlxyXG4gICAgICAgICAgICAgICAgICAgIDxwPlRoZSBleHBlcmllbmNlIGFsbG93ZWQgdXMgdG8gcmVmaW5lIG91ciBzY2llbmNlIGNvbW11bmljYXRpb24gc2tpbGxzIGFuZCBjb25uZWN0IHdpdGggYSBicm9hZCByYW5nZSBvZiBTVEVNIHByb2Zlc3Npb25hbHMgYW5kIHN0dWRlbnRzLiBPdmVyYWxsLCB0aGUgZXZlbnQgd2FzIGEgdmFsdWFibGUgb3Bwb3J0dW5pdHkgZm9yIGJvdGggZWR1Y2F0aW9uIGFuZCBwcm9mZXNzaW9uYWwgZ3Jvd3RoLCBtYWtpbmcgaXQgYSByZXdhcmRpbmcgYW5kIGltcGFjdGZ1bCBleHBlcmllbmNlIGZvciBvdXIgdGVhbS4gPC9wPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICApO1xyXG59IiwgImltcG9ydCB7ICBCdXR0b25PbmVXaXRoU2Nyb2xsIH0gZnJvbSBcIi4uLy4uLy4uL2NvbXBvbmVudHMvQnV0dG9uc1wiO1xyXG5pbXBvcnQgeyBINCwgSDUgfSBmcm9tIFwiLi4vLi4vLi4vY29tcG9uZW50cy9IZWFkaW5nc1wiO1xyXG5pbXBvcnQgeyB1c2VUYWJOYXZpZ2F0aW9uIH0gZnJvbSBcIi4uLy4uLy4uL3V0aWxzL1RhYk5hdmlnYXRpb25cIjtcclxuXHJcblxyXG5leHBvcnQgZnVuY3Rpb24gSFBFbnRyZXByZW5ldXIoKXtcclxuICAgIHVzZVRhYk5hdmlnYXRpb24oKTtcclxuICAgIHJldHVybiggXHJcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvdyBhbGlnbi1pdGVtcy1jZW50ZXJcIiA+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sIFwiPlxyXG4gICAgICAgICAgICAgICAgPEJ1dHRvbk9uZVdpdGhTY3JvbGwgb3BlbmNsYXNzPVwiZW50LWN5Y2xldGFiXCIgdGV4dD1cIk92ZXJ2aWV3XCIgb3Blbj1cImVudC1vdmVydmlld1wiIHNjcm9sbElkPVwiZW50LWhlYWRpbmdcIi8+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbCBcIj5cclxuICAgICAgICAgICAgICAgIDxCdXR0b25PbmVXaXRoU2Nyb2xsIG9wZW5jbGFzcz1cImVudC1pbnRlcnZpZXdcIiB0ZXh0PVwiSW50ZXJ2aWV3cyB3aXRoIEZvdW5kZXJzXCIgb3Blbj1cImVudC1pbnRlcnZpZXdcIiBzY3JvbGxJZD1cImVudC1pbnRlci1oZWFkaW5nXCIvPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wgXCI+XHJcbiAgICAgICAgICAgICAgICA8QnV0dG9uT25lV2l0aFNjcm9sbCBvcGVuY2xhc3M9XCJlbnQtaW50ZXJ2aWV3XCIgdGV4dD1cIk5leHQgU3RlcHNcIiBvcGVuPVwiZW50LW5leHRcIiBzY3JvbGxJZD1cImVudC1jb3Vyc2UtaGVhZGluZ1wiLz5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICBcclxuXHJcbiAgICAgICAgPGRpdiBpZD1cImVudC1vdmVydmlld1wiIGNsYXNzTmFtZT1cImVudC1pbnRlcnZpZXdcIiBzdHlsZT17e2Rpc3BsYXk6IFwiYmxvY2tcIn19PlxyXG4gICAgICAgICAgICA8SDQgaWQ9XCJlbnQtaGVhZGluZ1wiIHRleHQ9XCJFbnRyZXByZW5ldXJzaGlwIGFzIHBhcnQgb2YgYSBpbnRlZ3JhdGVkIGh1bWFuIHByYWN0aWNlIC0gYnV0IHdoeT9cIi8+XHJcbiAgICAgICAgICAgIDxwPkVudHJlcHJlbmV1cnNoaXAgaXMgbm90IG9ubHkgYW4gaW50ZXJlc3RpbmcgcG9zc2liaWxpdHkgYnV0IG5lY2Vzc2FyeSB0byB0dXJuIG91ciBpZGVhcyBhbmQgcmVzdWx0cyBpbnRvIGEgcmVhbCBwcm9kdWN0IHRoYXQgY2FuIGhlbHAgcGVvcGxlLiA8L3A+XHJcbiAgICAgICAgICAgIDxwPlRoYXQgaXMgd2h5IGluIHRoaXMgc2VjdGlvbiB3ZSBmb2N1cyBvbiB0aGUgYXNwZWN0cyBvZiBlbnRyZXByZW5ldXJzaGlwIHRoYXQgYXJlIGNydWNpYWwgZm9yIHRoZSBwb3RlbnRpYWwgc3VjY2Vzc2Z1bCByZWFsaXNhdGlvbiBvZiBvdXIgcHJvamVjdCB0byBkZXZlbG9wIG5ldyB0aGVyYXBpZXMgZm9yICBDeXN0aWMgRmlicm9zaXMuIEEgcGl2b3RhbCBtb21lbnQgd2FzIG91ciBpbnRlcnZpZXcgd2l0aCBOaWNvbGUgRnJpZWRsZWluLCB3aGljaCBnYXZlIHVzIHZhbHVhYmxlIGluc2lnaHRzIGludG8gdGhlIGNoYWxsZW5nZXMgYW5kIG9wcG9ydHVuaXRpZXMgaW4gdGhlIGZpZWxkIG9mIGJpb21lZGljYWwgaW5ub3ZhdGlvbi4gVGhlIGRpc2N1c3Npb25zIGluIHRoZSBpbnRlcnZpZXcgZW5jb3VyYWdlZCB1cyB0byBsb29rIG1vcmUgY2xvc2VseSBhdCB0aGUgcmVndWxhdG9yeSByZXF1aXJlbWVudHMsIHdoaWNoIGlzIHdoeSBvbmUgdGVhbSBtZW1iZXIgY29tcGxldGVkIGEgR3hQIGNvdXJzZSBhbmQgc3Vic2VxdWVudGx5IHRyYWluZWQgdGhlIHRlYW0gaW4gdGhpcyBhcmVhLiBJbiBhZGRpdGlvbiwgd2UgY29uZHVjdGVkIGZ1cnRoZXIgaW50ZXJ2aWV3cyBpbiB0aGUgYXJlYSBvZiBlbnRyZXByZW5ldXJzaGlwIHRvIGdhaW4gYSBiZXR0ZXIgdW5kZXJzdGFuZGluZyBvZiB0aGUgcHJhY3RpY2FsIGFzcGVjdHMgb2YgYnVzaW5lc3MgZGV2ZWxvcG1lbnQuIFRoZXNlIGV4cGVyaWVuY2VzIG5vdCBvbmx5IGVucmljaGVkIHRoZSBzY2llbnRpZmljIGRlcHRoIG9mIG91ciBwcm9qZWN0LCBidXQgYWxzbyBzaGFycGVuZWQgb3VyIHBlcnNwZWN0aXZlIG9uIHRoZSBwcmFjdGljYWwgaW1wbGVtZW50YXRpb24gYW5kIG1hcmtldCBsYXVuY2ggb2YgbmV3IHRoZXJhcGllcy4gXHJcbiAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgPEg0IGlkPVwiZW50LWhlYWRpbmdcIiB0ZXh0PVwiT3VyIEVudHJlcHJlbmV1cnNoaXBcIi8+XHJcbiAgICAgICAgICAgIDxwPkluIGNvbmNsdXNpb24sIHRoZSBlbnRyZXByZW5ldXJpYWwgam91cm5leSBvZiBkZXZlbG9waW5nIFJOQS1iYXNlZCBnZW5lIHRoZXJhcHkgZm9yICBDeXN0aWMgRmlicm9zaXMsIGFzIG91dGxpbmVkIGluIG91ciBleHBlcmllbmNlcyBhbmQgaW50ZXJ2aWV3cyB3aXRoIGluZHVzdHJ5IGZvdW5kZXJzLCBkZW1vbnN0cmF0ZXMgdGhhdCBlbnRyZXByZW5ldXJzaGlwIGlzIG5vdCBvbmx5IGFuIGludGVyZXN0aW5nIHBvc3NpYmlsaXR5IGJ1dCBhIG5lY2Vzc2FyeSBhdmVudWUgdG8gdHJhbnNmb3JtIHNjaWVudGlmaWMgaW5ub3ZhdGlvbiBpbnRvIHJlYWwtd29ybGQgc29sdXRpb25zLiBPdXIgYXBwcm9hY2ggaGFzIGJlZW4gc2hhcGVkIGJ5IHRoZSBjaGFsbGVuZ2VzIGFuZCBvcHBvcnR1bml0aWVzIGluIHRoZSBiaW90ZWNoIGZpZWxkLCBmcm9tIHVuZGVyc3RhbmRpbmcgcmVndWxhdG9yeSBmcmFtZXdvcmtzIGxpa2UgR3hQIHRvIG5hdmlnYXRpbmcgY29tcGxleCBtYXJrZXQgZHluYW1pY3MgYW5kIGZ1bmRpbmcgY2hhbGxlbmdlcy4gPC9wPlxyXG4gICAgICAgICAgICA8cD5UaHJvdWdoIGtleSBpbnRlcnZpZXdzLCBzdWNoIGFzIHRoZSBvbmUgd2l0aCBOaWNvbGUgRnJpZWRsZWluLCB3ZSBoYXZlIGdhaW5lZCBpbnNpZ2h0cyBpbnRvIHRoZSBwaXZvdGFsIHJvbGUgb2YgcmVndWxhdG9yeSBzdGFuZGFyZHMgaW4gc2NhbGluZyBvdXIgcHJvamVjdC4gVGhlIGNvbXBsZXRpb24gb2YgR3hQIHRyYWluaW5nIGJ5IG9uZSB0ZWFtIG1lbWJlciByZWZsZWN0cyBvdXIgY29tbWl0bWVudCB0byBlbnN1cmluZyBjb21wbGlhbmNlIHdpdGggR29vZCBMYWJvcmF0b3J5IFByYWN0aWNlIChHTFApIGFuZCBHb29kIE1hbnVmYWN0dXJpbmcgUHJhY3RpY2UgKEdNUCksIGJvdGggb2Ygd2hpY2ggYXJlIGVzc2VudGlhbCBmb3IgYWR2YW5jaW5nIGZyb20gcHJvb2Ytb2YtY29uY2VwdCB0byBjbGluaWNhbCB0cmlhbHMuIFRoaXMgZm91bmRhdGlvbiBpcyBjcnVjaWFsIGZvciBidWlsZGluZyBpbnZlc3RvciBjb25maWRlbmNlIGFuZCBtZWV0aW5nIHJlZ3VsYXRvcnkgcmVxdWlyZW1lbnRzLjwvcD4gXHJcblxyXG4gICAgICAgICAgICA8cD5BZGRpdGlvbmFsbHksIG1hcmtldCBldmFsdWF0aW9ucyByZXZlYWwgYSBzaWduaWZpY2FudCBvcHBvcnR1bml0eSBmb3Igb3VyIHRoZXJhcHksIHBhcnRpY3VsYXJseSB0YXJnZXRpbmcgdGhlIHVubWV0IG5lZWRzIG9mICBDeXN0aWMgRmlicm9zaXMgcGF0aWVudHMgd2hvIGRvIG5vdCByZXNwb25kIHRvIGN1cnJlbnQgdHJlYXRtZW50cyBsaWtlIENGVFIgbW9kdWxhdG9ycy4gVGhlIGdyb3dpbmcgZ2VuZSB0aGVyYXB5IG1hcmtldCBwcmVzZW50cyBhIHN0cm9uZyBjYXNlIGZvciBvdXIgaW5ub3ZhdGlvbiwgYWx0aG91Z2ggd2UgYXJlIGF3YXJlIG9mIHRoZSBjb21wZXRpdGl2ZSBsYW5kc2NhcGUgZG9taW5hdGVkIGJ5IGNvbXBhbmllcyBsaWtlIFZlcnRleCBQaGFybWFjZXV0aWNhbHMuIE91ciB1bmlxdWUgdmFsdWUgbGllcyBpbiBwcm92aWRpbmcgYSBtb3JlIHBlcm1hbmVudCBzb2x1dGlvbiBmb3IgcGF0aWVudHMgbm90IHNlcnZlZCBieSBleGlzdGluZyB0cmVhdG1lbnRzLiA8L3A+XHJcblxyXG4gICAgICAgICAgICA8cD5JbnRlcnZpZXdzIHdpdGggZm91bmRlcnMgZnJvbSBjb21wYW5pZXMgc3VjaCBhcyBQbGFzbWlkRmFjdG9yeSBhbmQgUk5oYWxlIGhhdmUgcHJvdmlkZWQgdmFsdWFibGUgbGVzc29ucyBvbiB0cmFuc2l0aW9uaW5nIGZyb20gcmVzZWFyY2ggdG8gY29tbWVyY2lhbGl6YXRpb24uIFRoZSBpbXBvcnRhbmNlIG9mIGJ1aWxkaW5nIG5ldHdvcmtzLCBzZWN1cmluZyBkaXZlcnNlIGZ1bmRpbmcgc291cmNlcywgYW5kIG1haW50YWluaW5nIGZsZXhpYmlsaXR5IHRvIGFkYXB0IHRvIG1hcmtldCBmZWVkYmFjayBhcmUga2V5IHRha2Vhd2F5cyB0aGF0IHdpbGwgZ3VpZGUgb3VyIG5leHQgc3RlcHMuIEVzdGFibGlzaGluZyBzdHJhdGVnaWMgcGFydG5lcnNoaXBzIGFuZCBzZWVraW5nIGVhcmx5IGVuZ2FnZW1lbnQgd2l0aCByZWd1bGF0b3J5IGJvZGllcyB3aWxsIGJlIGVzc2VudGlhbCBhcyB3ZSBwcmVwYXJlIGZvciBjbGluaWNhbCB0cmlhbHMgYW5kIGV2ZW50dWFsIG1hcmtldCBlbnRyeS48L3A+IFxyXG5cclxuICAgICAgICAgICAgPHA+VG8gYWxpZ24gb3VyIGxvbmctdGVybSB2aXNpb24gb2YgcmV2b2x1dGlvbml6aW5nICBDeXN0aWMgRmlicm9zaXMgdHJlYXRtZW50IHdpdGggaW1tZWRpYXRlIG1pbGVzdG9uZXMsIHdlIHdpbGwgY29udGludWUgb3B0aW1pemluZyBvdXIgbGlwaWQgbmFub3BhcnRpY2xlIGRlbGl2ZXJ5IHN5c3RlbSwgcHVyc3VpbmcgcmVndWxhdG9yeSBjb21wbGlhbmNlLCBhbmQgZW5nYWdpbmcgd2l0aCB0aGUgIEN5c3RpYyBGaWJyb3NpcyBjb21tdW5pdHkgdG8gcmVmaW5lIG91ciBwcm9kdWN0LiBPdXIgZm9jdXMgb24gYm90aCB0aGUgc2NpZW50aWZpYyBhbmQgYnVzaW5lc3MgYXNwZWN0cyBlbnN1cmVzIHRoYXQgd2UgYXJlIGJ1aWxkaW5nIGEgc3Ryb25nIGZvdW5kYXRpb24gZm9yIHN1Y2Nlc3MgaW4gYnJpbmdpbmcgdGhpcyBpbm5vdmF0aXZlIHRoZXJhcHkgdG8gbWFya2V0LCBpbXByb3ZpbmcgdGhlIGxpdmVzIG9mIHBhdGllbnRzIHdpdGggIEN5c3RpYyBGaWJyb3Npcy4gPC9wPlxyXG4gICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICA8ZGl2IGlkPVwiZW50LWludGVydmlld1wiIGNsYXNzTmFtZT1cImVudC1pbnRlcnZpZXdcIiBzdHlsZT17e2Rpc3BsYXk6IFwibm9uZVwifX0+XHJcbiAgICAgICAgICAgIDxINCBpZD1cImVudC1pbnRlci1oZWFkaW5nXCIgdGV4dD1cIlF1ZXN0aW9uIDE6IElkZWEgVmFsaWRhdGlvblwiLz5cclxuICAgICAgICAgICAgPEg1IHRleHQ9XCJXaGF0IHdlIGFza2VkIHRoZSBGb3VuZGVyc1wiLz5cclxuICAgICAgICAgICAgPHAgY2xhc3NOYW1lPVwiYXNrLXBcIj5Ib3cgZGlkIHlvdSB0ZXN0IHRoZSBtYXJrZXRhYmlsaXR5IG9mIHlvdXIgc2NpZW50aWZpYyBpZGVhIC0gaG93IGRpZCB5b3UgZ2V0IGEgZmlyc3QgaW1wcmVzc2lvbiB0aGF0IHRoZXJlIGlzIGEgbmVlZCBmb3IgeW91ciBwcm9kdWN0IG9yIHNlcnZpY2U/IDwvcD5cclxuICAgICAgICAgICAgPEg1IHRleHQ9XCJXaGF0IHRoZSBGb3VuZGVycyBoYWQgdG8gc2F5IFwiLz5cclxuICAgICAgICAgICAgPHA+PGI+UGxhc21pZEZhY3RvcnkgKE1hcnRpbiBTY2hsZWVmKTwvYj48L3A+XHJcbiAgICAgICAgICAgIDxwPlBsYXNtaWRGYWN0b3J5IHRlc3RlZCB0aGUgbWFya2V0YWJpbGl0eSBvZiB0aGVpciBpZGVhIHRocm91Z2ggcGFydGljaXBhdGlvbiBpbiBzY2llbnRpZmljIGNvbmZlcmVuY2VzLiBFbmdhZ2luZyB3aXRoIG90aGVyIHNjaWVudGlzdHMgYW5kIHByZXNlbnRpbmcgdGhlaXIgb3duIHJlc2VhcmNoIGFsbG93ZWQgdGhlbSB0byBnYXVnZSB0aGUgaW50ZXJlc3QgYW5kIG5lZWRzIHdpdGhpbiB0aGUgZmllbGQuIERpcmVjdCBmZWVkYmFjayBmcm9tIHRoZXNlIGV2ZW50cyBoZWxwZWQgdGhlbSBhc3Nlc3Mgd2hldGhlciB0aGVpciBwcm9kdWN0IHdhcyBhbGlnbmVkIHdpdGggbWFya2V0IGRlbWFuZCBhbmQgaWYgdGhleSBuZWVkZWQgdG8gbW9kaWZ5IG9yIGFjY2VsZXJhdGUgY2VydGFpbiBhc3BlY3RzIG9mIGRldmVsb3BtZW50LiAgICAgXHJcbiAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgICAgPHA+PGI+Uk5oYWxlIChCZW5qYW1pbiBXaW5rZWxqYW5uKTwvYj48L3A+XHJcbiAgICAgICAgICAgIDxwPlJOaGFsZSB2YWxpZGF0ZWQgdGhlaXIgaWRlYSBieSBzZWVraW5nIGZlZWRiYWNrIGZyb20gYm90aCB0aGUgc2NpZW50aWZpYyBjb21tdW5pdHkgYW5kIGluZHVzdHJ5IHByb2Zlc3Npb25hbHMgYXQgY29uZmVyZW5jZXMgYW5kIG5ldHdvcmtpbmcgZXZlbnRzLiBUaGV5IG5vdGljZWQgZ3Jvd2luZyBpbnRlcmVzdCBpbiBSTkEgdGhlcmFwZXV0aWNzLCBwYXJ0aWN1bGFybHkgZm9yIGx1bmcgZGVsaXZlcnkuIFRoZSBjaGFsbGVuZ2VzIHN1cnJvdW5kaW5nIGRlbGl2ZXJ5IHN5c3RlbXMsIGVzcGVjaWFsbHkgaGlnaGxpZ2h0ZWQgZHVyaW5nIHRoZSBDT1ZJRC0xOSBwYW5kZW1pYywgY29uZmlybWVkIHRoYXQgdGhlcmUgd2FzIGEgc3Ryb25nIG1hcmtldCBkZW1hbmQgZm9yIHRoZWlyIHRlY2hub2xvZ3ksIHdoaWNoIG1vdGl2YXRlZCB0aGVtIHRvIG1vdmUgZm9yd2FyZCB3aXRoIGNvbW1lcmNpYWxpemF0aW9uLjwvcD5cclxuICAgICAgICAgICAgPEg1IHRleHQ9XCJMZWFybmluZ3MgYW5kIEltcGxpY2F0aW9ucyBmb3Igb3VyIHByb2plY3QgXCIvPlxyXG4gICAgICAgICAgICA8cD5Gb3Igb3VyIHByb2plY3QsIGEgY29uY3JldGUgbmV4dCBzdGVwIHdvdWxkIGJlIHRvIGFjdGl2ZWx5IHNlZWsgZmVlZGJhY2sgZnJvbSAgQ3lzdGljIEZpYnJvc2lzIHJlc2VhcmNoIGNvbW11bml0aWVzIGFuZCBiaW90ZWNoIGNvbmZlcmVuY2VzLiBXZSBzaG91bGQgY29udGludWUgdG8gcHJlc2VudCBvdXIgUk5BLWJhc2VkIGdlbmUgdGhlcmFweSBhcHByb2FjaCB0byBleHBlcnRzIGluIGdlbmUgZWRpdGluZyBhbmQgZGVsaXZlcnkgc3lzdGVtcywgc3BlY2lmaWNhbGx5IGFza2luZyBmb3IgaW5wdXQgb24gb3VyIGRlbGl2ZXJ5IG1lY2hhbmlzbSB1c2luZyBsaXBpZCBuYW5vcGFydGljbGVzIChMTlBzKS4gVGhpcyBlYXJseSBlbmdhZ2VtZW50IGNvdWxkIGhlbHAgaWRlbnRpZnkgd2hldGhlciBvdXIgYXBwcm9hY2ggYWRkcmVzc2VzIGEgcmVhbCB1bm1ldCBuZWVkIGluICBDeXN0aWMgRmlicm9zaXMgdHJlYXRtZW50IGFuZCByZWZpbmUgb3VyIHByb2R1Y3QgdG8gYmV0dGVyIG1lZXQgY2xpbmljYWwgYW5kIHBhdGllbnQgbmVlZHMuIFxyXG4gICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgIDxINCBpZD1cImVudC1leHBlcnQtaGVhZGluZ1wiIHRleHQ9XCJRdWVzdGlvbiAyOiBQcm9vZi1vZi1Db25jZXB0XCIvPlxyXG4gICAgICAgICAgICA8SDUgdGV4dD1cIldoYXQgd2UgYXNrZWQgdGhlIEZvdW5kZXJzXCIvPlxyXG4gICAgICAgICAgICA8cCBjbGFzc05hbWU9XCJhc2stcFwiPkhvdyBkaWQgeW91IGRldmVsb3AgdGhlIGZpcnN0IHByb29mLW9mLWNvbmNlcHQgYmVmb3JlIHlvdSBoYWQgaW52ZXN0b3JzPyBEaWQgeW91IHdvcmsgd2l0aCB1bml2ZXJzaXRpZXMgb3IgcmVzZWFyY2ggaW5zdGl0dXRpb25zIHRvIGdldCBhY2Nlc3MgdG8gbGFib3JhdG9yaWVzIGFuZCBlcXVpcG1lbnQ/IDwvcD5cclxuICAgICAgICAgICAgPEg1IHRleHQ9XCJXaGF0IHRoZSBGb3VuZGVycyBoYWQgdG8gc2F5IFwiLz5cclxuICAgICAgICAgICAgPHA+PGI+UGxhc21pZEZhY3RvcnkgKE1hcnRpbiBTY2hsZWVmKTwvYj48L3A+XHJcbiAgICAgICAgICAgIDxwPlBsYXNtaWRGYWN0b3J5IHdhcyBhd2FyZSBvZiB0aGUgZGVtYW5kIGZvciBETkEgZWFybHkgb24sIGFzIHRoZSBmb3VuZGVycyBoYWQgYWxyZWFkeSBwcm9kdWNlZCBETkEgZm9yIGN1c3RvbWVycyBkdXJpbmcgdGhlaXIgcHJldmlvdXMgd29yay4gSW5pdGlhbGx5LCB0aGV5IGNvbGxhYm9yYXRlZCB3aXRoIGFjYWRlbWljIHBhcnRuZXJzIGFuZCBjdXN0b21lcnMgdG8gbWVldCB0aGUgZGVtYW5kIGZvciBwbGFzbWlkIEROQSwgd2hpY2ggaGVscGVkIHRoZW0gZXN0YWJsaXNoIGEgcHJvb2Ytb2YtY29uY2VwdC4gT3ZlciB0aW1lLCB0aGV5IHNoaWZ0ZWQgZnJvbSBwcmltYXJpbHkgd29ya2luZyB3aXRoIGFjYWRlbWljIGluc3RpdHV0aW9ucyB0byBjb2xsYWJvcmF0aW5nIG1vcmUgd2l0aCB0aGUgcmVzZWFyY2gtYmFzZWQgcGhhcm1hY2V1dGljYWwgaW5kdXN0cnksIHdoaWxlIG1haW50YWluaW5nIHRoZWlyIGNvbm5lY3Rpb25zIHdpdGggdW5pdmVyc2l0aWVzLiA8L3A+XHJcbiAgICAgICAgICAgIDxwPjxiPlJOaGFsZSAoQmVuamFtaW4gV2lua2VsamFubik8L2I+PC9wPlxyXG4gICAgICAgICAgICA8cD5STmhhbGUgZGV2ZWxvcGVkIHRoZWlyIHByb29mLW9mLWNvbmNlcHQgdGhyb3VnaCBjb2xsYWJvcmF0aW9ucyB3aXRoIHVuaXZlcnNpdGllcy4gVGhleSBzdGFydGVkIHdpdGggaW4gdml0cm8gY2VsbCBjdWx0dXJlIG1vZGVscyBhbmQgbGF0ZXIgYWR2YW5jZWQgdG8gbW9yZSBjb21wbGV4IHN5c3RlbXMsIHN1Y2ggYXMgYWlyLWxpcXVpZCBpbnRlcmZhY2UgbW9kZWxzIGFuZCBwcmVjaXNpb24tY3V0IGx1bmcgc2xpY2VzLiBBZGRpdGlvbmFsbHksIHRoZXkgcGVyZm9ybWVkIGFuIGluIHZpdm8gc3R1ZHkgYW5kIGhhZCBhY2Nlc3MgdG8gaHVtYW4gbHVuZyB0aXNzdWUgc2FtcGxlcywgd2hpY2ggaGVscGVkIHRoZW0gdmFsaWRhdGUgdGhlaXIgdGVjaG5vbG9neSBpbiBhIHJlbGV2YW50IGNsaW5pY2FsIGNvbnRleHQgYmVmb3JlIHNlZWtpbmcgaW52ZXN0b3JzLiA8L3A+XHJcbiAgICAgICAgICAgIDxINSB0ZXh0PVwiTGVhcm5pbmdzIGFuZCBJbXBsaWNhdGlvbnMgZm9yIG91ciBwcm9qZWN0IFwiLz5cclxuICAgICAgICAgICAgPHA+QXMgdGhlIGlHRU0gVGVhbSBvZiBCaWVsZWZlbGQgVW5pdmVyc2l0eSwgd2UgaGF2ZSBhY2Nlc3MgdG8gZXhjZWxsZW50IHJlc2VhcmNoIGluZnJhc3RydWN0dXJlLiBBIGNvbmNyZXRlIG5leHQgc3RlcCBmb3IgdXMgY291bGQgYmUgbGV2ZXJhZ2luZyB0aGUgdW5pdmVyc2l0eSdzIGNlbGwgY3VsdHVyZSBhbmQgZ2VuZSBlZGl0aW5nIGZhY2lsaXRpZXMgdG8gZGV2ZWxvcCBhbiBhZHZhbmNlZCBwcm9vZi1vZi1jb25jZXB0LiBBZGRpdGlvbmFsbHksIGNvbGxhYm9yYXRpbmcgd2l0aCBvdGhlciBkZXBhcnRtZW50cyB3aXRoaW4gQmllbGVmZWxkIG9yIHBhcnRuZXIgaW5zdGl0dXRpb25zIGNvdWxkIGhlbHAgdXMgcGVyZm9ybSBpbiB2aXZvIHN0dWRpZXMuIFRoaXMgd291bGQgYWxsb3cgdXMgdG8gdmFsaWRhdGUgb3VyIGxpcGlkIG5hbm9wYXJ0aWNsZSBkZWxpdmVyeSBzeXN0ZW0gYW5kIHByZXNlbnQgc3Ryb25nIHByZWxpbWluYXJ5IGRhdGEgZm9yIGZ1dHVyZSBpbnZlc3RvcnMgb3IgcGFydG5lcnMuIDwvcD5cclxuXHJcbiAgICAgICAgICAgIDxINCB0ZXh0PVwiUXVlc3Rpb24gMzogVHJhbnNpdGlvbiBmcm9tIFJlc2VhcmNoIHRvIENvbW1lcmNpYWxpemF0aW9uIFwiLz5cclxuICAgICAgICAgICAgPEg1IHRleHQ9XCJXaGF0IHdlIGFza2VkIHRoZSBGb3VuZGVyc1wiLz5cclxuICAgICAgICAgICAgPHAgY2xhc3NOYW1lPVwiYXNrLXBcIj5XaGF0IHdlcmUgdGhlIGJpZ2dlc3QgY2hhbGxlbmdlcyBpbiB0aGUgdHJhbnNpdGlvbiBmcm9tIGV4cGxvcmluZyBhIHNjaWVudGlmaWMgaWRlYSB0byBhIGNvbW1lcmNpYWwgc3RhcnQtdXA/IExvb2tpbmcgYmFjaywgYXJlIHRoZXJlIGNlcnRhaW4gc3RlcHMgeW91IHdvdWxkIGhhdmUgdGFrZW4gZWFybGllciBvciBkaWZmZXJlbnRseT8gPC9wPlxyXG4gICAgICAgICAgICA8SDUgdGV4dD1cIldoYXQgdGhlIEZvdW5kZXJzIGhhZCB0byBzYXkgXCIvPlxyXG4gICAgICAgICAgICA8cD48Yj5QbGFzbWlkRmFjdG9yeSAoTWFydGluIFNjaGxlZWYpPC9iPjwvcD5cclxuICAgICAgICAgICAgPHA+T25lIG9mIHRoZSBtYWpvciBjaGFsbGVuZ2VzIHdhcyBlbnN1cmluZyB0aGF0IHRoZWlyIGlkZWEgd2FzIG1hcmtldGFibGUsIHdoaWNoIGlzIG5ldmVyIGVudGlyZWx5IGNsZWFyIGF0IHRoZSBiZWdpbm5pbmcuIEFub3RoZXIgc2lnbmlmaWNhbnQgY2hhbGxlbmdlIHdhcyBzZWN1cmluZyBjYXBpdGFsIGZvciBkZXZlbG9wbWVudC4gVGhleSBlbXBoYXNpemVkIHRoZSBpbXBvcnRhbmNlIG9mIHNwZW5kaW5nIG9ubHkgd2hhdCB3YXMgYXZhaWxhYmxlIGFuZCBoaWdobGlnaHRlZCB0aGUgcm9sZSBvZiByZXNlYXJjaCBmdW5kaW5nIHByb2dyYW1zIChFVSBvciBuYXRpb25hbCkgaW4gc3VwcG9ydGluZyBlYXJseS1zdGFnZSBiaW90ZWNoIGNvbXBhbmllcy4gTG9va2luZyBiYWNrLCB0aGV5IG1pZ2h0IG5vdCBoYXZlIGRvbmUgdGhpbmdzIGRpZmZlcmVudGx5IGJ1dCBlbXBoYXNpemVkIHRoZSBpbXBvcnRhbmNlIG9mIGNhcmVmdWwgZmluYW5jaWFsIHBsYW5uaW5nIGFuZCBtYWtpbmcgc3VyZSB0aGUgcHJvZHVjdCBoYXMgYSBwb3RlbnRpYWwgbWFya2V0LjwvcD5cclxuICAgICAgICAgICAgPHA+PGI+Uk5oYWxlIChCZW5qYW1pbiBXaW5rZWxqYW5uKTwvYj48L3A+XHJcbiAgICAgICAgICAgIDxwPkZvciBSTmhhbGUsIHRoZSBiaWdnZXN0IGNoYWxsZW5nZSB3YXMgc2VjdXJpbmcgc3VmZmljaWVudCBmdW5kaW5nLCBhcyB0cmFuc2l0aW9uaW5nIGZyb20gdW5pdmVyc2l0eS1iYXNlZCByZXNlYXJjaCB0byB0aGUgcHJpdmF0ZSBzZWN0b3IgcmVxdWlyZXMgYSBzdHJhdGVnaWMgYXBwcm9hY2ggdG8gYnJpZGdpbmcgdGhpcyBnYXAuIFRoZXkgYWxzbyBtZW50aW9uZWQgdGhhdCBkZXZlbG9waW5nIGEgY2xlYXIgYnVzaW5lc3MgbW9kZWwgZWFybGllciBvbiBjb3VsZCBoYXZlIHNwZWQgdXAgdGhlIHByb2Nlc3MuIEFub3RoZXIgY2hhbGxlbmdlIHdhcyBmb3JtaW5nIHBhcnRuZXJzaGlwcyB3aXRoIGluZHVzdHJ5IGF0IGFuIGVhcmxpZXIgc3RhZ2UsIHdoaWNoIG1pZ2h0IGhhdmUgZWFzZWQgYm90aCB0aGUgZnVuZGluZyBwcm9jZXNzIGFuZCBjb21tZXJjaWFsaXphdGlvbiBlZmZvcnRzLjwvcD5cclxuICAgICAgICAgICAgPEg1IHRleHQ9XCJMZWFybmluZ3MgYW5kIEltcGxpY2F0aW9ucyBmb3Igb3VyIHByb2plY3QgXCIvPlxyXG4gICAgICAgICAgICA8cD5Cb3RoIGZvdW5kZXJzIGVtcGhhc2l6ZWQgdGhlIGNoYWxsZW5nZSBvZiBzZWN1cmluZyBmdW5kaW5nIGFuZCBidWlsZGluZyBhIGNsZWFyIGJ1c2luZXNzIG1vZGVsLiBBdCBCaWVsZWZlbGQgVW5pdmVyc2l0eSwgd2Ugc2hvdWxkIGNvbnNpZGVyIGV4cGxvcmluZyBwYXJ0bmVyc2hpcHMgd2l0aCBpbmR1c3RyeSBlYXJseSwgc3VjaCBhcyBiaW90ZWNoIGZpcm1zIG9yIHBoYXJtYWNldXRpY2FsIGNvbXBhbmllcy4gQSBjb25jcmV0ZSBuZXh0IHN0ZXAgY291bGQgYmUgaWRlbnRpZnlpbmcgcmVsZXZhbnQgZnVuZGluZyBwcm9ncmFtcyBsaWtlIEVYSVNUIG9yIEVVIGdyYW50cywgd2hpY2ggY291bGQgaGVscCBicmlkZ2UgdGhlIGdhcCBiZXR3ZWVuIG91ciB1bml2ZXJzaXR5IHJlc2VhcmNoIGFuZCBjb21tZXJjaWFsaXphdGlvbi4gRGV2ZWxvcGluZyBhIGJ1c2luZXNzIG1vZGVsIHRhaWxvcmVkIHRvIFJOQS1iYXNlZCB0aGVyYXBldXRpY3MgZm9yICBDeXN0aWMgRmlicm9zaXMgd2lsbCBhbHNvIGJlIGNyaXRpY2FsIHRvIGF0dHJhY3QgaW52ZXN0b3JzLiA8L3A+XHJcblxyXG5cclxuICAgICAgICAgICAgPEg0IHRleHQ9XCJRdWVzdGlvbiA0OiBGdW5kaW5nIFwiLz5cclxuICAgICAgICAgICAgPEg1IHRleHQ9XCJXaGF0IHdlIGFza2VkIHRoZSBGb3VuZGVyc1wiLz5cclxuICAgICAgICAgICAgPHAgY2xhc3NOYW1lPVwiYXNrLXBcIj5XaGF0IHNvdXJjZXMgb2YgZnVuZGluZyBkaWQgeW91IHVzZSBpbiB0aGUgZWFybHkgc3RhZ2VzIG9mIHlvdXIgY29tcGFueT8gV2VyZSB0aGVyZSBhbnkgc3BlY2lhbCBmdW5kaW5nIHByb2dyYW1zIG9yIGludmVzdG9ycyB0aGF0IHNwZWNpYWxpemVkIGluIGJpb3RlY2hub2xvZ3kgc3RhcnQtdXBzPyA8L3A+XHJcbiAgICAgICAgICAgIDxINSB0ZXh0PVwiV2hhdCB0aGUgRm91bmRlcnMgaGFkIHRvIHNheSBcIi8+XHJcbiAgICAgICAgICAgIDxwPjxiPlBsYXNtaWRGYWN0b3J5IChNYXJ0aW4gU2NobGVlZik8L2I+PC9wPlxyXG4gICAgICAgICAgICA8cD5JbiB0aGUgZWFybHkgc3RhZ2VzLCBmdW5kaW5nIHByb2dyYW1zIGZvciBzdGFydC11cHMgZGlkIG5vdCBleGlzdCBhcyB0aGV5IGRvIHRvZGF5LiBQbGFzbWlkRmFjdG9yeSByZWxpZWQgb24gdHJhZGl0aW9uYWwgc291cmNlcyBsaWtlIHRoZWlyIGxvY2FsIGJhbmsgYW5kIGNyZWF0aXZlIHNvbHV0aW9ucyBsaWtlIHB1cmNoYXNpbmcgc2Vjb25kLWhhbmQgZXF1aXBtZW50IHRocm91Z2ggcGxhdGZvcm1zIGxpa2UgZUJheS4gVGhlaXIgZmlyc3QgY3VzdG9tZXJzIGFsc28gcGxheWVkIGEga2V5IHJvbGUsIGFzIHRoZSByZXZlbnVlIGZyb20gaW5pdGlhbCBzYWxlcyBhbGxvd2VkIHRoZW0gdG8gcmVpbnZlc3QgaW4gdGhlIGJ1c2luZXNzIGFuZCBmdXJ0aGVyIGl0cyBncm93dGguPC9wPlxyXG4gICAgICAgICAgICA8cD48Yj5STmhhbGUgKEJlbmphbWluIFdpbmtlbGphbm4pPC9iPjwvcD5cclxuICAgICAgICAgICAgPHA+Uk5oYWxlIGluaXRpYWxseSByZWxpZWQgb24gcHVibGljIGZ1bmRpbmcgZnJvbSB1bml2ZXJzaXR5IGdyYW50cyBhbmQgZ292ZXJubWVudCBwcm9ncmFtcyBzdWNoIGFzIEdyb3dCaW8gYW5kIEVYSVNULCB3aGljaCBwcm92aWRlZCBjcnVjaWFsIHByZS1zZWVkIHN1cHBvcnQuIEFzIHRoZXkgdHJhbnNpdGlvbmVkIGludG8gYSBwcml2YXRlIGNvbXBhbnksIHRoZXkgc2VjdXJlZCBhZGRpdGlvbmFsIGZ1bmRpbmcgdGhyb3VnaCB0aGUgRXVyb3BlYW4gVW5pb25cdTIwMTlzIEVJQyBUcmFuc2l0aW9uIGdyYW50LiBUaGV5IGFsc28gYXR0cmFjdGVkIHZlbnR1cmUgY2FwaXRhbCBmcm9tIGZpcm1zIHNwZWNpYWxpemluZyBpbiBiaW90ZWNoLCBzdWNoIGFzIHRoZSBIaWdodGVjaC1Hclx1MDBGQ25kZXJmb25kcyBhbmQgaW50ZXJuYXRpb25hbCBpbnZlc3RvcnMgbGlrZSBLYXJtYSBGdW5kIGFuZCBXZWxsaW5ndG9uLCB3aG8gdW5kZXJzdG9vZCB0aGUgbG9uZyB0aW1lbGluZXMgYW5kIGhpZ2ggY29zdHMgYXNzb2NpYXRlZCB3aXRoIGJpb3RlY2ggZGV2ZWxvcG1lbnQuPC9wPlxyXG4gICAgICAgICAgICA8SDUgdGV4dD1cIkxlYXJuaW5ncyBhbmQgSW1wbGljYXRpb25zIGZvciBvdXIgcHJvamVjdCBcIi8+XHJcbiAgICAgICAgICAgIDxwPkJvdGggZm91bmRlcnMgaGlnaGxpZ2h0ZWQgdGhlIGltcG9ydGFuY2Ugb2Ygc2VjdXJpbmcgZGl2ZXJzZSBmdW5kaW5nIHNvdXJjZXMgZWFybHkgb24uIEEgY29uY3JldGUgbmV4dCBzdGVwIGNvdWxkIGJlIGNvbGxhYm9yYXRpbmcgd2l0aCB0aGUgdW5pdmVyc2l0eVx1MjAxOXMgc3RhcnR1cCBzdXBwb3J0IHNlcnZpY2VzIHRvIGlkZW50aWZ5IHBvdGVudGlhbCBpbnZlc3RvcnMsIGVzcGVjaWFsbHkgdGhvc2Ugd2l0aCBiaW90ZWNoIGV4cGVyaWVuY2UuIEFkZGl0aW9uYWxseSwgZXhwbG9yaW5nIG5vbi10cmFkaXRpb25hbCBzb3VyY2VzIHN1Y2ggYXMgaW5kdXN0cnktc3BvbnNvcmVkIHJlc2VhcmNoIGNvbGxhYm9yYXRpb25zIGNvdWxkIHByb3ZpZGUgY3J1Y2lhbCBpbml0aWFsIGZ1bmRpbmcgdG8gc3VwcG9ydCB0aGUgZGV2ZWxvcG1lbnQgb2Ygb3VyICBDeXN0aWMgRmlicm9zaXMgZ2VuZSB0aGVyYXB5LiA8L3A+XHJcblxyXG4gICAgICAgICAgICA8SDQgdGV4dD1cIlF1ZXN0aW9uIDU6IFRlYW0gQnVpbGRpbmcgXCIvPlxyXG4gICAgICAgICAgICA8SDUgdGV4dD1cIldoYXQgd2UgYXNrZWQgdGhlIEZvdW5kZXJzXCIvPlxyXG4gICAgICAgICAgICA8cCBjbGFzc05hbWU9XCJhc2stcFwiPldoYXQgcXVhbGlmaWNhdGlvbnMgYW5kIHNraWxscyB3ZXJlIHBhcnRpY3VsYXJseSBpbXBvcnRhbnQgd2hlbiBidWlsZGluZyB5b3VyIHRlYW0/IERpZCB5b3UgYnJpbmcgaW4gZXhwZXJ0cyBmcm9tIGluZHVzdHJ5IG9yIG90aGVyIGFyZWFzPyA8L3A+XHJcbiAgICAgICAgICAgIDxINSB0ZXh0PVwiV2hhdCB0aGUgRm91bmRlcnMgaGFkIHRvIHNheSBcIi8+XHJcbiAgICAgICAgICAgIDxwPjxiPlBsYXNtaWRGYWN0b3J5IChNYXJ0aW4gU2NobGVlZik8L2I+PC9wPlxyXG4gICAgICAgICAgICA8cD5Gb3IgUGxhc21pZEZhY3RvcnksIGhvbmVzdHksIGNvbW1pdG1lbnQsIGFuZCBoYXJkIHdvcmsgd2VyZSBjcnVjaWFsLiBUaGUgaW5pdGlhbCB0ZWFtIGNvbnNpc3RlZCBvZiBsYWIgdGVjaG5pY2lhbnMsIGJpb2NoZW1pc3RzLCBhbmQgYmlvbG9naXN0cy4gT3ZlciB0aW1lLCB0aGV5IGV4cGFuZGVkIHRvIGluY2x1ZGUgZW1wbG95ZWVzIGZyb20gdmFyaW91cyBmaWVsZHMsIHN1Y2ggYXMgYmlvdGVjaG5vbG9neSBhbmQgZXZlbiBub24tc2NpZW50aWZpYyBhcmVhcyBsaWtlIGJ1c2luZXNzIGFkbWluaXN0cmF0aW9uIGFuZCBtYXJrZXRpbmcuIEJyaW5naW5nIGluIHNvbWVvbmUgd2l0aCBpbmR1c3RyeSBleHBlcmllbmNlIHdhcyBzZWVuIGFzIHBhcnRpY3VsYXJseSB2YWx1YWJsZSwgYXMgaW5kdXN0cnkgb3BlcmF0ZXMgZGlmZmVyZW50bHkgZnJvbSBhY2FkZW1pYyBlbnZpcm9ubWVudHMuIDwvcD5cclxuICAgICAgICAgICAgPHA+PGI+Uk5oYWxlIChCZW5qYW1pbiBXaW5rZWxqYW5uKTwvYj48L3A+XHJcbiAgICAgICAgICAgIDxwPlJOaGFsZSBlbXBoYXNpemVkIHRoZSBuZWVkIGZvciBhIGJhbGFuY2UgYmV0d2VlbiB0ZWNobmljYWwgZXhwZXJ0aXNlIGFuZCBidXNpbmVzcyBhY3VtZW4gd2hlbiBidWlsZGluZyB0aGVpciB0ZWFtLiBUaGV5IHByaW9yaXRpemVkIG9wZXJhdGlvbmFsIGFsaWdubWVudCBhbmQgcmVjcnVpdGVkIGluZGl2aWR1YWxzIHNraWxsZWQgaW4gYmlvbG9naWNzIG1hbnVmYWN0dXJpbmcsIGluIHZpdHJvIGFuZCBpbiB2aXZvIHBlcmZvcm1hbmNlLCBhbmQgYnVzaW5lc3MgZGV2ZWxvcG1lbnQuIFRoZXkgYWxzbyBicm91Z2h0IGluIGV4dGVybmFsIGV4cGVydHMsIHN1Y2ggYXMgYSBwYXRlbnQgYXR0b3JuZXksIHJlZ3VsYXRvcnkgYWR2aXNvcnMsIGFuZCBwcmVjbGluaWNhbCBzcGVjaWFsaXN0cy4gTWFueSBvZiB0aGVzZSBjb25uZWN0aW9ucyBjYW1lIGZyb20gbmV0d29ya2luZyBhbmQgc3RhcnR1cCBib290Y2FtcHMsIHdoaWNoIHByb3ZpZGVkIHZhbHVhYmxlIHJlc291cmNlcyBmb3IgYnVpbGRpbmcgYSB3ZWxsLXJvdW5kZWQgdGVhbS4gPC9wPlxyXG4gICAgICAgICAgICA8SDUgdGV4dD1cIkxlYXJuaW5ncyBhbmQgSW1wbGljYXRpb25zIGZvciBvdXIgcHJvamVjdCBcIi8+XHJcbiAgICAgICAgICAgIDxwPkJvdGggZm91bmRlcnMgc3RyZXNzZWQgdGhlIGltcG9ydGFuY2Ugb2YgY29tYmluaW5nIHRlY2huaWNhbCBleHBlcnRpc2Ugd2l0aCBidXNpbmVzcyBhY3VtZW4uIEF0IEJpZWxlZmVsZCBVbml2ZXJzaXR5LCB3ZSBzaG91bGQgZm9jdXMgb24gYnVpbGRpbmcgYSBkaXZlcnNlIHRlYW0gdGhhdCBpbmNsdWRlcyBub3Qgb25seSBzY2llbnRpc3RzIHNraWxsZWQgaW4gUk5BIHRoZXJhcGV1dGljcyBhbmQgZ2VuZSBlZGl0aW5nIGJ1dCBhbHNvIGluZGl2aWR1YWxzIHdpdGggZXhwZXJpZW5jZSBpbiBidXNpbmVzcyBkZXZlbG9wbWVudCBhbmQgcmVndWxhdG9yeSBhZmZhaXJzLiBBIGNvbmNyZXRlIG5leHQgc3RlcCBjb3VsZCBiZSByZWFjaGluZyBvdXQgdG8gdGhlIHVuaXZlcnNpdHlcdTIwMTlzIGJ1c2luZXNzIGFuZCBsZWdhbCBmYWN1bHRpZXMgdG8gYnJpbmcgaW4gZXhwZXJ0cyB3aG8gY2FuIGhlbHAgdXMgbmF2aWdhdGUgY29tbWVyY2lhbGl6YXRpb24gYW5kIHJlZ3VsYXRvcnkgcHJvY2Vzc2VzLiA8L3A+XHJcblxyXG5cclxuICAgICAgICAgICAgPEg0IHRleHQ9XCJRdWVzdGlvbiA2OiBSZWd1bGF0b3J5IENoYWxsZW5nZXMgXCIvPlxyXG4gICAgICAgICAgICA8SDUgdGV4dD1cIldoYXQgd2UgYXNrZWQgdGhlIEZvdW5kZXJzXCIvPlxyXG4gICAgICAgICAgICA8cCBjbGFzc05hbWU9XCJhc2stcFwiPldoYXQgcmVndWxhdG9yeSBjaGFsbGVuZ2VzIGRpZCB5b3UgZmFjZSBpbiB5b3VyIHN0YXJ0LXVwIHByb2Nlc3MsIGFuZCBob3cgZGlkIHlvdSBvdmVyY29tZSB0aGVtPyBXaGF0IGFkdmljZSB3b3VsZCB5b3UgZ2l2ZSB0byBvdGhlciBzdGFydC11cHMgaW4gdGVybXMgb2YgY29tcGxpYW5jZSB3aXRoIHJlZ3VsYXRpb25zIGFuZCBsYXdzPyA8L3A+XHJcbiAgICAgICAgICAgIDxINSB0ZXh0PVwiV2hhdCB0aGUgRm91bmRlcnMgaGFkIHRvIHNheSBcIi8+XHJcbiAgICAgICAgICAgIDxwPjxiPlBsYXNtaWRGYWN0b3J5IChNYXJ0aW4gU2NobGVlZik8L2I+PC9wPlxyXG4gICAgICAgICAgICA8cD5QbGFzbWlkRmFjdG9yeSBlbXBoYXNpemVkIHRoZSBzdHJpY3QgcmVndWxhdGlvbnMgaW4gdGhlIGJpb3RlY2ggYW5kIHBoYXJtYWNldXRpY2FsIGluZHVzdHJpZXMsIHBhcnRpY3VsYXJseSBpbiB0aGUgZmllbGQgb2YgZ2VuZXRpYyBlbmdpbmVlcmluZy4gVGhleSBoaWdobGlnaHRlZCB0aGUgaW1wb3J0YW5jZSBvZiBhZGhlcmluZyB0byBsYXdzIGZyb20gdGhlIHN0YXJ0LiBTaW5jZSB0aGUgZm91bmRlcnMgZGlkblx1MjAxOXQgaGF2ZSBleHRlbnNpdmUgZXhwZXJ0aXNlIGluIHJlZ3VsYXRvcnkgY29tcGxpYW5jZSwgdGhleSBvdmVyY2FtZSB0aGlzIGNoYWxsZW5nZSBieSBjb2xsYWJvcmF0aW5nIHdpdGggaW5zdGl0dXRpb25zIGxpa2UgdW5pdmVyc2l0aWVzIGFuZCByZXNlYXJjaCBjZW50ZXJzLCB3aGljaCBwcm92aWRlZCB0aGUgbmVjZXNzYXJ5IHJlZ3VsYXRvcnkga25vd2xlZGdlLjwvcD5cclxuICAgICAgICAgICAgPHA+PGI+Uk5oYWxlIChCZW5qYW1pbiBXaW5rZWxqYW5uKTwvYj48L3A+XHJcbiAgICAgICAgICAgIDxwPlJOaGFsZSBmYWNlZCBzaWduaWZpY2FudCByZWd1bGF0b3J5IGNoYWxsZW5nZXMsIHBhcnRpY3VsYXJseSBpbiBtZWV0aW5nIHRoZSBzdHJpY3QgcmVxdWlyZW1lbnRzIGZvciBjbGluaWNhbCB0ZXN0aW5nLiBUaGV5IG5lZWRlZCB0byBjb25kdWN0IHByZWNsaW5pY2FsIHN0dWRpZXMgdW5kZXIgR29vZCBMYWJvcmF0b3J5IFByYWN0aWNlIChHTFApIGNvbmRpdGlvbnMgYW5kIGVuc3VyZSB0aGVpciBwcm9kdWN0IHdhcyBtYW51ZmFjdHVyZWQgdW5kZXIgR29vZCBNYW51ZmFjdHVyaW5nIFByYWN0aWNlIChHTVApLiBUbyBuYXZpZ2F0ZSB0aGVzZSByZWd1bGF0aW9ucywgdGhleSB3b3JrZWQgd2l0aCBleHRlcm5hbCBhZHZpc29ycyBhbmQgY29udHJhY3QgcmVzZWFyY2gvbWFudWZhY3R1cmluZyBvcmdhbml6YXRpb25zIChDUk9zIGFuZCBDTU9zKS4gVGhleSByZWNvbW1lbmRlZCBpbnRlZ3JhdGluZyByZWd1bGF0b3J5IGNvbnNpZGVyYXRpb25zIGVhcmx5IGluIHRoZSBkZXZlbG9wbWVudCBwcm9jZXNzIGFuZCBtYWludGFpbmluZyBjbG9zZSBjb250YWN0IHdpdGggcmVndWxhdG9yeSBleHBlcnRzIGFuZCBhdXRob3JpdGllcyB0byBwcmV2ZW50IGRlbGF5cyBhbmQgZW5zdXJlIGNvbXBsaWFuY2UuPC9wPlxyXG4gICAgICAgICAgICA8SDUgdGV4dD1cIkxlYXJuaW5ncyBhbmQgSW1wbGljYXRpb25zIGZvciBvdXIgcHJvamVjdCBcIi8+XHJcbiAgICAgICAgICAgIDxwPkJvdGggZm91bmRlcnMgaGlnaGxpZ2h0ZWQgdGhlIGNvbXBsZXhpdHkgb2YgcmVndWxhdG9yeSBjb21wbGlhbmNlLCBwYXJ0aWN1bGFybHkgaW4gYmlvdGVjaC4gRm9yIG91ciBwcm9qZWN0LCB3ZSBuZWVkIHRvIGludGVncmF0ZSByZWd1bGF0b3J5IGNvbnNpZGVyYXRpb25zIGVhcmx5LCBlc3BlY2lhbGx5IHJlZ2FyZGluZyBjbGluaWNhbCB0cmlhbHMgYW5kIHNhZmV0eSBzdGFuZGFyZHMgZm9yIGdlbmUgdGhlcmFwaWVzLiBBIGNvbmNyZXRlIHN0ZXAgd291bGQgYmUgdG8gY29uc3VsdCB3aXRoIGV4cGVydHMgaW4gR29vZCBNYW51ZmFjdHVyaW5nIFByYWN0aWNlIChHTVApIGFuZCBHb29kIExhYm9yYXRvcnkgUHJhY3RpY2UgKEdMUCksIGVuc3VyaW5nIHRoYXQgb3VyIGxpcGlkIG5hbm9wYXJ0aWNsZSBzeXN0ZW0gbWVldHMgdGhlIG5lY2Vzc2FyeSByZWd1bGF0aW9ucy4gQWRkaXRpb25hbGx5LCBlYXJseSBlbmdhZ2VtZW50IHdpdGggcmVndWxhdG9yeSBib2RpZXMgY291bGQgc21vb3RoIHRoZSBwYXRoIHRvIGV2ZW50dWFsIGNsaW5pY2FsIHRyaWFscy4gPC9wPlxyXG5cclxuICAgICAgICAgICAgPEg0IHRleHQ9XCJRdWVzdGlvbiA3OiBNYXJrZXQgRW50cnkgYW5kIE5ldHdvcmtpbmcgXCIvPlxyXG4gICAgICAgICAgICA8SDUgdGV4dD1cIldoYXQgd2UgYXNrZWQgdGhlIEZvdW5kZXJzXCIvPlxyXG4gICAgICAgICAgICA8cCBjbGFzc05hbWU9XCJhc2stcFwiPldoYXQgcm9sZSBkaWQgbmV0d29ya3MgYW5kIHBhcnRuZXJzaGlwcyBwbGF5IHdoZW4geW91IGVudGVyZWQgdGhlIG1hcmtldD8gSG93IGRpZCB5b3UgYWNxdWlyZSB5b3VyIGZpcnN0IGN1c3RvbWVycyBvciBwYXJ0bmVycywgYW5kIHdoaWNoIHN0cmF0ZWdpZXMgd2VyZSBwYXJ0aWN1bGFybHkgc3VjY2Vzc2Z1bD8gPC9wPlxyXG4gICAgICAgICAgICA8SDUgdGV4dD1cIldoYXQgdGhlIEZvdW5kZXJzIGhhZCB0byBzYXkgXCIvPlxyXG4gICAgICAgICAgICA8cD48Yj5QbGFzbWlkRmFjdG9yeSAoTWFydGluIFNjaGxlZWYpPC9iPjwvcD5cclxuICAgICAgICAgICAgPHA+UGxhc21pZEZhY3RvcnkncyBzdHJhdGVneSB3YXMgc2ltcGxlOiBkZW1vbnN0cmF0ZSBzY2llbnRpZmljIGV4cGVydGlzZSB0byBidWlsZCB0cnVzdC4gVGhpcyBhcHByb2FjaCBoZWxwZWQgdGhlbSBnYWluIGNyZWRpYmlsaXR5IGFuZCBhdHRyYWN0IGN1c3RvbWVycy4gVGhleSBlbXBoYXNpemVkIHBhdGllbmNlLCBub3RpbmcgdGhhdCBzdWNjZXNzIGNhbiB0YWtlIGEgbG9uZyB0aW1lXHUyMDE0c29tZXRpbWVzIHVwIHRvIDEwIHllYXJzXHUyMDE0YnV0IHBlcnNldmVyYW5jZSBhbmQgbWFpbnRhaW5pbmcgc3Ryb25nIHJlbGF0aW9uc2hpcHMgd2l0aCBwYXJ0bmVycyBhbmQgY3VzdG9tZXJzIHdlcmUga2V5IHRvIHRoZWlyIHN1Y2Nlc3MuPC9wPlxyXG4gICAgICAgICAgICA8cD48Yj5STmhhbGUgKEJlbmphbWluIFdpbmtlbGphbm4pPC9iPjwvcD5cclxuICAgICAgICAgICAgPHA+TmV0d29ya3MgYW5kIHBhcnRuZXJzaGlwcyB3ZXJlIGNyaXRpY2FsIGZvciBSTmhhbGUncyBtYXJrZXQgZW50cnkuIFRoZXkgbGV2ZXJhZ2VkIGNvbm5lY3Rpb25zIGZyb20gdGhlaXIgdW5pdmVyc2l0eSBhZmZpbGlhdGlvbnMsIHN0YXJ0dXAgYm9vdGNhbXBzLCBhbmQgY29uZmVyZW5jZXMgdG8gYnVpbGQgcmVsYXRpb25zaGlwcyB3aXRoIGluZHVzdHJ5IGV4cGVydHMuIFRoZWlyIGZpcnN0IGN1c3RvbWVycyBhbmQgcGFydG5lcnMgd2VyZSBhY3F1aXJlZCB0aHJvdWdoIHRoZXNlIG5ldHdvcmtzLiBQYXJ0aWNpcGF0aW5nIGluIHN0YXJ0dXAgYWNjZWxlcmF0b3JzIGFuZCBwaXRjaCBldmVudHMgYWxsb3dlZCB0aGVtIHRvIHNob3djYXNlIHRoZWlyIGJ1c2luZXNzIG1vZGVsIGFuZCB0ZWNobm9sb2d5LCB3aGljaCBoZWxwZWQgc2VjdXJlIHBhcnRuZXJzaGlwcyBhbmQgYnVpbGQgY3JlZGliaWxpdHkgaW4gdGhlIFJOQSB0aGVyYXBldXRpY3MgZmllbGQuPC9wPlxyXG4gICAgICAgICAgICA8SDUgdGV4dD1cIkxlYXJuaW5ncyBhbmQgSW1wbGljYXRpb25zIGZvciBvdXIgcHJvamVjdCBcIi8+XHJcbiAgICAgICAgICAgIDxwPkJvdGggZm91bmRlcnMgc3RyZXNzZWQgdGhlIGltcG9ydGFuY2Ugb2YgYnVpbGRpbmcgbmV0d29ya3MgYW5kIHBhcnRuZXJzaGlwcyBlYXJseS4gRm9yIG91ciBwcm9qZWN0LCB3ZSBzaG91bGQgZm9jdXMgb24gZGV2ZWxvcGluZyByZWxhdGlvbnNoaXBzIHdpdGggaW5kdXN0cnkgZXhwZXJ0cyBhbmQgcG90ZW50aWFsIHBhcnRuZXJzIHRocm91Z2ggY29uZmVyZW5jZXMsIHBpdGNoIGV2ZW50cywgYW5kIGJpb3RlY2ggc3RhcnR1cCBwcm9ncmFtcy4gQSBjb25jcmV0ZSBuZXh0IHN0ZXAgY291bGQgYmUgdG8gcGFydGljaXBhdGUgaW4gbmV0d29ya2luZyBldmVudHMgd2hlcmUgd2UgY2FuIHByZXNlbnQgb3VyIFJOQS1iYXNlZCB0aGVyYXB5IGFuZCBnYWluIHZhbHVhYmxlIGNvbnRhY3RzIGluIHRoZSBwaGFybWFjZXV0aWNhbCBpbmR1c3RyeS4gVGhpcyBjb3VsZCBhbHNvIGhlbHAgdXMgaWRlbnRpZnkgZWFybHkgY3VzdG9tZXJzIG9yIHN0cmF0ZWdpYyBwYXJ0bmVycyB0byBhY2NlbGVyYXRlIG1hcmtldCBlbnRyeS4gPC9wPlxyXG5cclxuXHJcbiAgICAgICAgICAgIDxINCB0ZXh0PVwiUXVlc3Rpb24gODogSW50ZWxsZWN0dWFsIFByb3BlcnR5IChJUCkgXCIvPlxyXG4gICAgICAgICAgICA8SDUgdGV4dD1cIldoYXQgd2UgYXNrZWQgdGhlIEZvdW5kZXJzXCIvPlxyXG4gICAgICAgICAgICA8cCBjbGFzc05hbWU9XCJhc2stcFwiPkhvdyBkaWQgeW91IHNlY3VyZSB5b3VyIGludGVsbGVjdHVhbCBwcm9wZXJ0eSByaWdodHM/IFdoYXQgc3RlcHMgd2VyZSBuZWNlc3NhcnkgdG8gb2J0YWluIHBhdGVudHMgb3IgbGljZW5zZXM/IDwvcD5cclxuICAgICAgICAgICAgPEg1IHRleHQ9XCJXaGF0IHRoZSBGb3VuZGVycyBoYWQgdG8gc2F5IFwiLz5cclxuICAgICAgICAgICAgPHA+PGI+UGxhc21pZEZhY3RvcnkgKE1hcnRpbiBTY2hsZWVmKTwvYj48L3A+XHJcbiAgICAgICAgICAgIDxwPlBsYXNtaWRGYWN0b3J5IGhpZ2hsaWdodGVkIHRoZSBpbXBvcnRhbmNlIG9mIGtlZXBpbmcgaWRlYXMgY29uZmlkZW50aWFsIGluIHRoZSBlYXJseSBzdGFnZXMgdG8gcHJldmVudCBvdGhlcnMgZnJvbSB0YWtpbmcgdGhlbS4gVGhleSBkaXNjdXNzZWQgdGhyZWUgc3RyYXRlZ2llczogcmVjb3JkaW5nIHRoZSBpZGVhIGFzIGEgZGVlZCB3aXRoIGEgbm90YXJ5LCByZWdpc3RlcmluZyBpdCBhcyBhIHV0aWxpdHkgbW9kZWwgZm9yIGxvd2VyLWNvc3QgcHJvdGVjdGlvbiwgYW5kIGV2ZW50dWFsbHkgcHVyc3VpbmcgYSBmdWxsIHBhdGVudCwgaW5pdGlhbGx5IGZvY3VzaW5nIG9uIEdlcm1hbnkgYW5kIHBvc3NpYmx5IGEgZmV3IG90aGVyIGNvdW50cmllcy4gSW4gbGljZW5zaW5nIGFncmVlbWVudHMsIHRoZXkgZW5zdXJlZCB0aGF0IGZlZXMgd2VyZSBvbmx5IGR1ZSB0byB0aGUgdGVjaG5vbG9neSBvd25lciBvbmNlIHRoZSBzdGFydHVwIGVhcm5lZCBtb25leSBmcm9tIGl0LjwvcD5cclxuICAgICAgICAgICAgPHA+PGI+Uk5oYWxlIChCZW5qYW1pbiBXaW5rZWxqYW5uKTwvYj48L3A+XHJcbiAgICAgICAgICAgIDxwPlJOaGFsZSBzZWN1cmVkIHRoZWlyIGludGVsbGVjdHVhbCBwcm9wZXJ0eSB0aHJvdWdoIHVuaXZlcnNpdHkgbGljZW5zaW5nIGFuZCBzdHJhdGVnaWMgcGF0ZW50IGZpbGluZ3MuIEVhcmx5IHdvcmsgd2FzIHBhdGVudGVkIGJ5IHRoZSB1bml2ZXJzaXR5LCBhbmQgdGhleSBzZWN1cmVkIGV4Y2x1c2l2ZSByaWdodHMgdG8gdXNlIHRoZSB0ZWNobm9sb2d5IGZvciBjb21tZXJjaWFsaXphdGlvbiB0aHJvdWdoIGEgbGljZW5zaW5nIGFncmVlbWVudC4gRm9yIGxhdGVyIGRldmVsb3BtZW50cywgdGhleSB0b29rIGEgc3RyYXRlZ2ljIGFwcHJvYWNoLCBmaWxpbmcgcHJpb3JpdHkgcGF0ZW50cyB0byBwcm90ZWN0IG5vdmVsdHkgYW5kIGV4cGFuZGluZyBwYXRlbnQgY2xhaW1zIHdpdGhpbiB0aGUgMTItbW9udGggd2luZG93IHRvIGNvdmVyIGNvbW1lcmNpYWxseSByZWxldmFudCBhc3BlY3RzLiBUaGV5IGVtcGhhc2l6ZWQgdGhlIGltcG9ydGFuY2Ugb2YgbmVnb3RpYXRpbmcgSVAgYWdyZWVtZW50cyBlYXJseSwgZXNwZWNpYWxseSB3aGVuIHdvcmtpbmcgd2l0aCB1bml2ZXJzaXRpZXMsIGFuZCBwbGFubmluZyBhIHJvYnVzdCBwYXRlbnQgc3RyYXRlZ3kuPC9wPlxyXG4gICAgICAgICAgICA8SDUgdGV4dD1cIkxlYXJuaW5ncyBhbmQgSW1wbGljYXRpb25zIGZvciBvdXIgcHJvamVjdCBcIi8+XHJcbiAgICAgICAgICAgIDxwPkJvdGggZm91bmRlcnMgZW1waGFzaXplZCB0aGUgaW1wb3J0YW5jZSBvZiBzZWN1cmluZyBJUCBlYXJseSwgZXNwZWNpYWxseSB3aGVuIHdvcmtpbmcgd2l0aCB1bml2ZXJzaXRpZXMgb3IgZXh0ZXJuYWwgcGFydG5lcnMuIEZvciBvdXIgcHJvamVjdCwgd2Ugc2hvdWxkIGRldmVsb3AgYSBjbGVhciBwYXRlbnQgc3RyYXRlZ3kgZm9yIG91ciBSTkEtYmFzZWQgIEN5c3RpYyBGaWJyb3NpcyB0aGVyYXB5LiBBIGNvbmNyZXRlIG5leHQgc3RlcCB3b3VsZCBiZSB0byBjb25zdWx0IHdpdGggSVAgZXhwZXJ0cyB0byBlbnN1cmUgb3VyIHRlY2hub2xvZ3kgaXMgd2VsbCBwcm90ZWN0ZWQuIE5lZ290aWF0aW5nIGVhcmx5IElQIGFncmVlbWVudHMgd2l0aCB0aGUgdW5pdmVyc2l0eSBvciBleHRlcm5hbCBjb2xsYWJvcmF0b3JzIGlzIGNydWNpYWwgdG8gc2FmZWd1YXJkIG91ciBpbm5vdmF0aW9ucyB3aGlsZSBhbGxvd2luZyByb29tIGZvciBmdXR1cmUgZGV2ZWxvcG1lbnRzLiA8L3A+XHJcblxyXG4gICAgICAgICAgICA8SDQgdGV4dD1cIlF1ZXN0aW9uIDk6IFBpdm90aW5nIFwiLz5cclxuICAgICAgICAgICAgPEg1IHRleHQ9XCJXaGF0IHdlIGFza2VkIHRoZSBGb3VuZGVyc1wiLz5cclxuICAgICAgICAgICAgPHAgY2xhc3NOYW1lPVwiYXNrLXBcIj5XZXJlIHRoZXJlIG1vbWVudHMgd2hlbiB5b3UgaGFkIHRvIGFkYXB0IG9yIGNvbXBsZXRlbHkgY2hhbmdlIHlvdXIgb3JpZ2luYWwgaWRlYT8gV2hhdCB3ZXJlIHRoZSB0cmlnZ2VycywgYW5kIGhvdyBkaWQgeW91IGRlYWwgd2l0aCB0aGVtPyA8L3A+XHJcbiAgICAgICAgICAgIDxINSB0ZXh0PVwiV2hhdCB0aGUgRm91bmRlcnMgaGFkIHRvIHNheSBcIi8+XHJcbiAgICAgICAgICAgIDxwPjxiPlBsYXNtaWRGYWN0b3J5IChNYXJ0aW4gU2NobGVlZik8L2I+PC9wPlxyXG4gICAgICAgICAgICA8cD5QbGFzbWlkRmFjdG9yeSBkaWQgbm90IGV4cGVyaWVuY2UgYSBtYWpvciBwaXZvdCBpbiB0aGVpciBidXNpbmVzcyBtb2RlbCBidXQgZW1waGFzaXplZCB0aGUgaW1wb3J0YW5jZSBvZiBjb25zdGFudCBkaWFsb2d1ZSB3aXRoIGN1c3RvbWVycy4gSW4gc29tZSBjYXNlcywgY3VzdG9tZXJzIGRpZCBub3QgaW5pdGlhbGx5IGFjY2VwdCB0aGVpciBpZGVhcywgYnV0IHJhdGhlciB0aGFuIGdpdmluZyB1cCwgdGhleSByZW1haW5lZCBwYXRpZW50IGFuZCByZXZpc2l0ZWQgdGhlIGRpc2N1c3Npb24gd2l0aCByZWZlcmVuY2VzIGZyb20gb3RoZXIgc2F0aXNmaWVkIGNsaWVudHMgdG8gYnVpbGQgY3JlZGliaWxpdHkuIDwvcD5cclxuICAgICAgICAgICAgPHA+PGI+Uk5oYWxlIChCZW5qYW1pbiBXaW5rZWxqYW5uKTwvYj48L3A+XHJcbiAgICAgICAgICAgIDxwPlJOaGFsZSBoYWQgdG8gYWRhcHQgdGhlaXIgb3JpZ2luYWwgaWRlYSBzZXZlcmFsIHRpbWVzLiBPbmUgc2lnbmlmaWNhbnQgcGl2b3Qgd2FzIHNoaWZ0aW5nIGZyb20gcHJvdmlkaW5nIGEgc2VydmljZSBmb3IgbGlwaWQgbmFub3BhcnRpY2xlIGZvcm11bGF0aW9uIHRvIGRldmVsb3BpbmcgdGhlaXIgb3duIHByb3ByaWV0YXJ5IHRoZXJhcGV1dGljIHByb2R1Y3QgZm9yIHNldmVyZSBhc3RobWEuIEZlZWRiYWNrIGZyb20gaW52ZXN0b3JzIGFuZCBwYXJ0aWNpcGF0aW9uIGluIHN0YXJ0dXAgYm9vdGNhbXBzIHJldmVhbGVkIGEgc3Ryb25nZXIgbWFya2V0IGRlbWFuZCBmb3IgYSBwcm9kdWN0LWRyaXZlbiBhcHByb2FjaCB3aXRoIGEgY2xlYXIgZXhpdCBzdHJhdGVneS4gVGhpcyBsZWQgdGhlbSB0byByZXZpc2UgdGhlaXIgYnVzaW5lc3MgbW9kZWwgd2hpbGUgc3RpbGwgbGV2ZXJhZ2luZyB0aGVpciBjb3JlIHRlY2hub2xvZ3kuPC9wPlxyXG4gICAgICAgICAgICA8SDUgdGV4dD1cIkxlYXJuaW5ncyBhbmQgSW1wbGljYXRpb25zIGZvciBvdXIgcHJvamVjdCBcIi8+XHJcbiAgICAgICAgICAgIDxwPkJvdGggZm91bmRlcnMgZGlzY3Vzc2VkIHRoZSBpbXBvcnRhbmNlIG9mIHJlbWFpbmluZyBhZGFwdGFibGUgdG8gZmVlZGJhY2sgYW5kIG1hcmtldCBuZWVkcy4gRm9yIG91ciBwcm9qZWN0LCB3ZSBtdXN0IGJlIG9wZW4gdG8gbWFraW5nIHN0cmF0ZWdpYyBhZGp1c3RtZW50cyBiYXNlZCBvbiB0aGUgZmVlZGJhY2sgd2UgcmVjZWl2ZSBmcm9tIGNsaW5pY2FsIHRyaWFscywgaW52ZXN0b3JzLCBvciBwYXJ0bmVycy4gQSBjb25jcmV0ZSBuZXh0IHN0ZXAgd291bGQgYmUgdG8gZXN0YWJsaXNoIGEgZmxleGlibGUgYnVzaW5lc3MgcGxhbiB0aGF0IGFsbG93cyBmb3IgcGl2b3RzLCBzdWNoIGFzIGZvY3VzaW5nIG9uIHNwZWNpZmljIHN1YnR5cGVzIG9mICBDeXN0aWMgRmlicm9zaXMgcGF0aWVudHMgb3IgYWRqdXN0aW5nIG91ciBsaXBpZCBuYW5vcGFydGljbGUgZGVsaXZlcnkgc3lzdGVtIHRvIG1lZXQgZXZvbHZpbmcgdGVjaG5vbG9naWNhbCBvciByZWd1bGF0b3J5IHJlcXVpcmVtZW50cy4gPC9wPlxyXG5cclxuICAgICAgICAgICAgPEg0IHRleHQ9XCJRdWVzdGlvbiAxMDogTG9uZy10ZXJtIFZpc2lvbiBcIi8+XHJcbiAgICAgICAgICAgIDxINSB0ZXh0PVwiV2hhdCB3ZSBhc2tlZCB0aGUgRm91bmRlcnNcIi8+XHJcbiAgICAgICAgICAgIDxwIGNsYXNzTmFtZT1cImFzay1wXCI+RGlkIHlvdSBoYXZlIHNvbWV0aGluZyBsaWtlIGEgbG9uZy10ZXJtIHZpc2lvbiBmb3IgeW91ciBjb21wYW55IGFuZCwgaWYgc28sIGhvdyBkaWQgeW91IHJlY29uY2lsZSB0aGlzIHZpc2lvbiB3aXRoIHRoZSBzaG9ydC10ZXJtIGdvYWxzPyA8L3A+XHJcbiAgICAgICAgICAgIDxINSB0ZXh0PVwiV2hhdCB0aGUgRm91bmRlcnMgaGFkIHRvIHNheSBcIi8+XHJcbiAgICAgICAgICAgIDxwPjxiPlBsYXNtaWRGYWN0b3J5IChNYXJ0aW4gU2NobGVlZik8L2I+PC9wPlxyXG4gICAgICAgICAgICA8cD5QbGFzbWlkRmFjdG9yeSBoYWQgYSBsb25nLXRlcm0gdmlzaW9uIGZyb20gdGhlIGJlZ2lubmluZywgd2hpY2ggd2FzIHRvIHByb2R1Y2UgcGhhcm1hY2V1dGljYWwtZ3JhZGUgcGxhc21pZCBETkEgKEdNUCkuIEhvd2V2ZXIsIHRoZSBwcm9jZXNzIG9mIGJ1aWxkaW5nIGFuZCBjZXJ0aWZ5aW5nIGEgR01QIGZhY2lsaXR5IHdhcyBjb3N0bHkgYW5kIHRpbWUtY29uc3VtaW5nLiBUbyBtYW5hZ2Ugc2hvcnQtdGVybSBnb2FscywgdGhleSBkZXZlbG9wZWQgYW4gaW50ZXJtZWRpYXRlIHF1YWxpdHkgc3RhbmRhcmQgY2FsbGVkIFx1MjAxQ2hpZ2ggcXVhbGl0eSxcdTIwMUQgd2hpY2ggYWxsb3dlZCB0aGVtIHRvIHN1cHBseSBzdGFydGluZyBtYXRlcmlhbHMgZm9yIHBoYXJtYWNldXRpY2FsIHZlY3RvciBwcm9kdWN0aW9uLiBJdCB0b29rIHRoZW0gMjUgeWVhcnMgdG8gb3BlbiB0aGVpciBmaXJzdCBHTVAgZmFjaWxpdHksIGRlbW9uc3RyYXRpbmcgdGhlaXIgZm9jdXMgb24gbG9uZy10ZXJtIHBsYW5uaW5nIHdoaWxlIGJhbGFuY2luZyBpbW1lZGlhdGUgbWlsZXN0b25lcy48L3A+XHJcbiAgICAgICAgICAgIDxwPjxiPlJOaGFsZSAoQmVuamFtaW4gV2lua2VsamFubik8L2I+PC9wPlxyXG4gICAgICAgICAgICA8cD5STmhhbGVcdTIwMTlzIGxvbmctdGVybSB2aXNpb24gd2FzIHRvIGRldmVsb3AgUk5BLWJhc2VkIHRoZXJhcGV1dGljcywgcGFydGljdWxhcmx5IGZvciByZXNwaXJhdG9yeSBkaXNlYXNlcy4gVGhleSByZWNvbmNpbGVkIHRoaXMgdmlzaW9uIHdpdGggc2hvcnQtdGVybSBnb2FscyBieSBicmVha2luZyB0aGVpciB2aXNpb24gaW50byBhY3Rpb25hYmxlIG1pbGVzdG9uZXMsIHN1Y2ggYXMgZGV2ZWxvcGluZyBhIGxlYWQgY2FuZGlkYXRlIGZvciBzZXZlcmUgYXN0aG1hLiBBbG9uZ3NpZGUgdGhlaXIgY29yZSB0aGVyYXBldXRpYyBmb2N1cywgdGhleSBvZmZlcmVkIHNtYWxsLXNjYWxlIG1hbnVmYWN0dXJpbmcgc2VydmljZXMgdG8gZ2VuZXJhdGUgcmV2ZW51ZSBhbmQgYnVpbGQgY3JlZGliaWxpdHkuIFRoaXMgZHVhbCBhcHByb2FjaCBoZWxwZWQgdGhlbSBtYWludGFpbiBtb21lbnR1bSB3aGlsZSB3b3JraW5nIHRvd2FyZHMgdGhlaXIgbGFyZ2VyIGdvYWwgb2YgZXN0YWJsaXNoaW5nIGEgcGlwZWxpbmUgb2YgUk5BIHRoZXJhcGV1dGljcy4gPC9wPlxyXG4gICAgICAgICAgICA8SDUgdGV4dD1cIkxlYXJuaW5ncyBhbmQgSW1wbGljYXRpb25zIGZvciBvdXIgcHJvamVjdCBcIi8+XHJcbiAgICAgICAgICAgIDxwPkJvdGggZm91bmRlcnMgaGlnaGxpZ2h0ZWQgdGhlIGltcG9ydGFuY2Ugb2YgYWxpZ25pbmcgc2hvcnQtdGVybSBnb2FscyB3aXRoIGEgbG9uZy10ZXJtIHZpc2lvbi4gRm9yIG91ciBwcm9qZWN0LCB3ZSBtdXN0IGVuc3VyZSB0aGF0IHdoaWxlIGZvY3VzaW5nIG9uIGltbWVkaWF0ZSBtaWxlc3RvbmVzLCBzdWNoIGFzIGRlbW9uc3RyYXRpbmcgdGhlIGVmZmljYWN5IG9mIG91ciBSTkEtYmFzZWQgdGhlcmFweSwgd2UgbWFpbnRhaW4gc2lnaHQgb2Ygb3VyIGJyb2FkZXIgZ29hbDogcmV2b2x1dGlvbml6aW5nICBDeXN0aWMgRmlicm9zaXMgdHJlYXRtZW50LiBBIGNvbmNyZXRlIG5leHQgc3RlcCB3b3VsZCBiZSB0byBicmVhayBkb3duIG91ciBsb25nLXRlcm0gdmlzaW9uIGludG8gYWN0aW9uYWJsZSBzaG9ydC10ZXJtIGdvYWxzLCBzdWNoIGFzIG9wdGltaXppbmcgb3VyIGRlbGl2ZXJ5IHN5c3RlbSBhbmQgc2VjdXJpbmcgcmVndWxhdG9yeSBhcHByb3ZhbHMsIHdoaWxlIGJ1aWxkaW5nIGEgc3VzdGFpbmFibGUgcGlwZWxpbmUgZm9yIGZ1dHVyZSBSTkEgdGhlcmFwZXV0aWNzLiA8L3A+ICAgXHJcbiAgICAgICAgPC9kaXY+XHJcblxyXG5cclxuXHJcbiAgICAgICAgPGRpdiBpZD1cImVudC1uZXh0XCIgY2xhc3NOYW1lPVwiZW50LWludGVydmlld1wiIHN0eWxlPXt7ZGlzcGxheTogXCJub25lXCJ9fT5cclxuICAgICAgICAgICAgPEg0IGlkPVwiZW50LWNvdXJzZS1oZWFkaW5nXCIgdGV4dD1cIkdYUCBpbiB0aGUgY29udGV4dCBvZiBjbGluaWNhbCB0cmlhbHMgXCIvPlxyXG4gICAgICAgICAgICA8SDUgdGV4dD1cIlJvbGUgb2YgR1hQIGluIFNjYWxpbmcgYW5kIFByb29mLW9mLUNvbmNlcHRcIi8+XHJcbiAgICAgICAgICAgIDxwPlRvIHRha2Ugb3VyIFJOQS1iYXNlZCBnZW5lIHRoZXJhcHkgZm9yICBDeXN0aWMgRmlicm9zaXMgY2xvc2VyIHRvIGNsaW5pY2FsIHRyaWFscyBhbmQgcG90ZW50aWFsIG1hcmtldCBlbnRyeSwgaW52ZXN0b3JzIGFuZCByZWd1bGF0b3J5IGF1dGhvcml0aWVzIG5lZWQgXHJcbiAgICAgICAgICAgICAgICBjb25maWRlbmNlIGluIHRoZSBxdWFsaXR5IGFuZCByZWxpYWJpbGl0eSBvZiBvdXIgd29yay4gV2hpbGUgdGhlIGN1cnJlbnQgaUdFTSBwcm9vZi1vZi1jb25jZXB0IGRlbW9uc3RyYXRlcyBmZWFzaWJpbGl0eSwgaW52ZXN0b3JzIHR5cGljYWxseSBleHBlY3QgYSBcclxuICAgICAgICAgICAgICAgIG1vcmUgc29waGlzdGljYXRlZCB2YWxpZGF0aW9uLCBlc3BlY2lhbGx5IGluIDxiPkluLVZpdm8gbW9kZWxzPC9iPi4gR1hQIHdvdWxkIGJlIGZ1bmRhbWVudGFsIGluIGFjaGlldmluZyB0aGlzIG5leHQgc3RlcDogPC9wPlxyXG4gICAgICAgICAgICAgICAgPHVsPlxyXG4gICAgICAgICAgICAgICAgICAgIDxsaT48Yj5Hb29kIExhYm9yYXRvcnkgUHJhY3RpY2UgKEdMUCk8L2I+IHdvdWxkIGd1aWRlIHRoZSBleHBlcmltZW50YWwgc2V0dXAgaW4gYW5pbWFsIG1vZGVscywgZW5zdXJpbmcgdGhhdCB0aGUgcmVzdWx0cyB3ZSBnZW5lcmF0ZSBhcmUgcmVwcm9kdWNpYmxlIGFuZCBtZWV0IHJlZ3VsYXRvcnkgc3RhbmRhcmRzIGZvciBkYXRhIGludGVncml0eSBhbmQgc2FmZXR5LiBUaGlzIGlzIGNyaXRpY2FsIGZvciBwcm9ncmVzc2luZyB0byBwcmVjbGluaWNhbCB0cmlhbHMuIDwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgPGxpPjxiPkdvb2QgTWFudWZhY3R1cmluZyBQcmFjdGljZSAoR01QKSA8L2I+IHdvdWxkIHBsYXkgYSBrZXkgcm9sZSBhcyB3ZSBsb29rIHRvIHNjYWxlIG91ciBwcm9kdWN0aW9uLiBOb3Qgb25seSB3b3VsZCB3ZSBuZWVkIHRvIHByb2R1Y2Ugb3VyIFJOQSBjb25zdHJ1Y3RzIGNvbnNpc3RlbnRseSwgYnV0IHdlIHdvdWxkIGFsc28gaGF2ZSB0byBkZW1vbnN0cmF0ZSB0aGF0IG91ciBtYW51ZmFjdHVyaW5nIHByb2Nlc3MgY2FuIGJlIHNjYWxlZCB3aGlsZSBtYWludGFpbmluZyBxdWFsaXR5IGFuZCBzYWZldHksIHdoaWNoIGlzIGVzc2VudGlhbCBmb3IgYXR0cmFjdGluZyBpbnZlc3RtZW50LiA8L2xpPlxyXG4gICAgICAgICAgICAgICAgPC91bD5cclxuICAgICAgICAgICAgPEg1IHRleHQ9XCJJbnNpZ2h0cyBmcm9tIEdYUCBUcmFpbmluZ1wiLz5cclxuICAgICAgICAgICAgPHA+T25lIG9mIG91ciB0ZWFtIG1lbWJlcnMgcmVjZW50bHkgY29tcGxldGVkIGFuIGludGVuc2l2ZSBHWFAgY291cnNlLCB3aGljaCByZWluZm9yY2VkIHRoZSBpbXBvcnRhbmNlIG9mIHN0YW5kYXJkIG9wZXJhdGluZyBwcm9jZWR1cmVzIChTT1BzKSBhbmQgcmlnb3JvdXMgZG9jdW1lbnRhdGlvbiB0aHJvdWdob3V0IHRoZSBkZXZlbG9wbWVudCBwcm9jZXNzXHUyMDBCKEhQX0dYUCBjb3Vyc2UpLiBUaGlzIHRyYWluaW5nIGhhcyBwcmVwYXJlZCB1cyB0byBpbXBsZW1lbnQgcHJhY3RpY2VzIHN1Y2ggYXMgRmFpbHVyZSBNb2RlIGFuZCBFZmZlY3RzIEFuYWx5c2lzIChGTUVBKSwgYSByaXNrIGFzc2Vzc21lbnQgdGVjaG5pcXVlIHRoYXQgd2lsbCBoZWxwIGlkZW50aWZ5IHBvdGVudGlhbCBpc3N1ZXMgZWFybHkgaW4gdGhlIGRldmVsb3BtZW50IHBoYXNlLCBlbnN1cmluZyB3ZSBjYW4gcHJlZW1wdGl2ZWx5IG1pdGlnYXRlIHJpc2tzLiA8L3A+XHJcbiAgICAgICAgICAgIDxwPkFzIHdlIGFpbSB0byBtb3ZlIHRvd2FyZHMgY2xpbmljYWwgdHJpYWxzLCBHWFAgZW5zdXJlcyB0aGF0IG91ciBwcm9kdWN0IGRldmVsb3BtZW50IHBpcGVsaW5lIGlzIGJvdGggZXRoaWNhbCBhbmQgY29tcGxpYW50IHdpdGggaW50ZXJuYXRpb25hbCBzYWZldHkgc3RhbmRhcmRzLCB3aGljaCB3aWxsIGJlIGtleSBpbiBkaXNjdXNzaW9ucyB3aXRoIGludmVzdG9ycyBhbmQgcmVndWxhdG9yeSBib2RpZXMuIEJ5IGVtYmVkZGluZyB0aGVzZSBwcmluY2lwbGVzIGVhcmx5LCB3ZSBub3Qgb25seSBlbmhhbmNlIHRoZSBxdWFsaXR5IGFuZCByZWxpYWJpbGl0eSBvZiBvdXIgZGF0YSBidXQgYWxzbyBsYXkgYSBmb3VuZGF0aW9uIGZvciBmdXR1cmUgY2xpbmljYWwgYXBwbGljYXRpb25zLiA8L3A+XHJcbiAgICAgICAgICAgIDxINSB0ZXh0PVwiTmV4dCBTdGVwc1wiLz5cclxuICAgICAgICAgICAgPHA+QXMgd2UgbW92ZSBmb3J3YXJkLCBvdXIgdGVhbSBwbGFucyB0byBncmFkdWFsbHkgaW50ZWdyYXRlIEdYUCBzdGFuZGFyZHMgaW50byBvdXIgZGV2ZWxvcG1lbnQgcGlwZWxpbmUuIFRoZSBrbm93bGVkZ2UgZ2FpbmVkIGZyb20gdGhlIEdYUCBjb3Vyc2UsIGFsb25nIHdpdGggZXhwZXJ0IGNvbnN1bHRhdGlvbnMsIHByb3ZpZGVzIHVzIHdpdGggYSBiZXR0ZXIgdW5kZXJzdGFuZGluZyBvZiB0aGUgcmVndWxhdG9yeSBleHBlY3RhdGlvbnMgaW4gdGhlIGJpb3RlY2hub2xvZ3kgZmllbGQuIFdoaWxlIHdlIGFyZSBzdGlsbCBpbiB0aGUgZWFybHkgc3RhZ2VzIG9mIGFwcGx5aW5nIHRoZXNlIHN0YW5kYXJkcywgd2UgYWltIHRvIGFsaWduIG91ciBwcm9jZXNzZXMgd2l0aCBpbmR1c3RyeSByZXF1aXJlbWVudHMuIFRoaXMgd2lsbCBlbnN1cmUgdGhhdCwgYXMgd2UgcHJvZ3Jlc3MsIHdlIG1haW50YWluIGEgaGlnaCBsZXZlbCBvZiBxdWFsaXR5IGFuZCBjb21wbGlhbmNlLCBwYXJ0aWN1bGFybHkgYXMgd2Ugc2NhbGUgdXAgcHJvZHVjdGlvbiBhbmQgbW92ZSBjbG9zZXIgdG8gcG90ZW50aWFsIGNsaW5pY2FsIGFwcGxpY2F0aW9ucy4gPC9wPlxyXG4gICAgICAgICAgICA8SDQgdGV4dD1cIk1hcmtldCBFdmFsdWF0aW9uXCIvPiBcclxuICAgICAgICAgICAgPEg1IHRleHQ9XCIxLiBUYXJnZXQgTWFya2V0IERlZmluaXRpb24gXCIvPlxyXG4gICAgICAgICAgICA8cD48Yj5QYXRpZW50IFBvcHVsYXRpb246PC9iPiBDeXN0aWMgRmlicm9zaXMgKENGKSBpcyBhIHJhcmUgZ2VuZXRpYyBkaXNvcmRlciBhZmZlY3Rpbmcgb3ZlciA4MCwwMDAgaW5kaXZpZHVhbHMgd29ybGR3aWRlLCB3aXRoIGEgc2lnbmlmaWNhbnQgXHJcbiAgICAgICAgICAgIGNvbmNlbnRyYXRpb24gaW4gTm9ydGggQW1lcmljYSBhbmQgRXVyb3BlLiBBYm91dCA5MCUgb2YgQ0YgcGF0aWVudHMgaGF2ZSBhdCBsZWFzdCBvbmUgY29weSBvZiB0aGUgRjUwOGRlbCBtdXRhdGlvbiwgd2hpY2ggbWFrZXMgdGhlbSBwb3RlbnRpYWwgXHJcbiAgICAgICAgICAgIGNhbmRpZGF0ZXMgZm9yIHRoZXJhcGllcyB0YXJnZXRpbmcgdGhpcyBtdXRhdGlvbiBbMV0gWzJdLiA8L3A+XHJcbiAgICAgICAgICAgIDxwPjxiPkdlb2dyYXBoaWNhbCBGb2N1czo8L2I+VGhlIGxhcmdlc3QgbWFya2V0cyBhcmUgaW4gTm9ydGggQW1lcmljYSBhbmQgRXVyb3BlLCB3aGVyZSBDRiBwcmV2YWxlbmNlIGlzIGhpZ2hlc3QsIGFuZCBhY2Nlc3MgdG8gYWR2YW5jZWQgdGhlcmFwaWVzIFxyXG4gICAgICAgICAgICBsaWtlIFJOQS1iYXNlZCB0cmVhdG1lbnRzIGlzIHdlbGwtc3VwcG9ydGVkLiBUaGlzIHdvdWxkIGJlIHRoZSBwcmltYXJ5IGZvY3VzIGZvciBvdXIgdGhlcmFweSwgcGFydGljdWxhcmx5IGluIGNvdW50cmllcyB3aXRoIGVzdGFibGlzaGVkIENGIFxyXG4gICAgICAgICAgICB0cmVhdG1lbnQgaW5mcmFzdHJ1Y3R1cmVzIHN1Y2ggYXMgdGhlIFUuUy4sIEdlcm1hbnksIGFuZCB0aGUgVS5LLiBbM10uPC9wPlxyXG4gICAgICAgICAgICA8cD48Yj5Vbm1ldCBOZWVkczogPC9iPkRlc3BpdGUgYWR2YW5jZW1lbnRzIGxpa2UgQ0ZUUiBtb2R1bGF0b3JzIChlLmcuLCBLYWZ0cmlvKSwgYXJvdW5kIDEwJSBvZiBwYXRpZW50cyBkbyBub3QgcmVzcG9uZCB0byBjdXJyZW50IHRyZWF0bWVudHMgYW5kIHJlbHkgb24gXHJcbiAgICAgICAgICAgIHN5bXB0b21hdGljIGNhcmUgWzRdLiBPdXIgUk5BLWJhc2VkIGdlbmUgdGhlcmFweSBjb3VsZCBhZGRyZXNzIHRoaXMgdW5tZXQgbmVlZCwgc3BlY2lmaWNhbGx5IHRhcmdldGluZyB0aGUgRGVsdGEgRjUwOCBtdXRhdGlvbiBmb3Igd2hpY2ggbWFueSBwYXRpZW50cyBoYXZlIFxyXG4gICAgICAgICAgICBsaW1pdGVkIG9wdGlvbnMuIDwvcD5cclxuICAgICAgICAgICAgPEg1IHRleHQ9XCJNYXJrZXQgU2l6ZSBhbmQgR3Jvd3RoIFBvdGVudGlhbFwiLz5cclxuICAgICAgICAgICAgPHA+PGI+TWFya2V0IFNpemU6IDwvYj4gVGhlIGdsb2JhbCAgQ3lzdGljIEZpYnJvc2lzIHRyZWF0bWVudCBtYXJrZXQgd2FzIHZhbHVlZCBhdCBVU0QgOS40MSBiaWxsaW9uIGluIDIwMjMgYW5kIGlzIGV4cGVjdGVkIHRvIGdyb3cgdG8gVVNEIDI5LjE5IGJpbGxpb24gYnkgXHJcbiAgICAgICAgICAgIDIwMzIsIHdpdGggYSBjb21wb3VuZCBhbm51YWwgZ3Jvd3RoIHJhdGUgKENBR1IpIG9mIDEzLjQlIFs1XS4gVGhpcyBncm93dGggaXMgZHJpdmVuIGJ5IGFkdmFuY2VtZW50cyBpbiBnZW5lIHRoZXJhcHkgYW5kIGluY3JlYXNlZCByZXNlYXJjaCBmdW5kaW5nLiBHZW5lIFxyXG4gICAgICAgICAgICB0aGVyYXB5IHRhcmdldGluZyB0aGUgRjUwOGRlbCBtdXRhdGlvbiwgdGhlIG1vc3QgY29tbW9uIENGIG11dGF0aW9uLCBwcmVzZW50cyBhIHNpZ25pZmljYW50IG1hcmtldCBvcHBvcnR1bml0eSB3aXRoaW4gdGhpcyBsYXJnZXIgQ0YgdHJlYXRtZW50IG1hcmtldFs2XS4gIDwvcD5cclxuICAgICAgICAgICAgPHA+PGI+R3Jvd3RoIERyaXZlcnM6PC9iPiBUaGUgaW5jcmVhc2UgaW4gQ0YgcGF0aWVudCBsaWZlc3BhbiBkdWUgdG8gaW1wcm92ZWQgdHJlYXRtZW50cywgYWxvbmdzaWRlIG9uZ29pbmcgaW5ub3ZhdGlvbiBpbiBSTkEtYmFzZWQgdGhlcmFwaWVzLCBvZmZlcnMgXHJcbiAgICAgICAgICAgIHNpZ25pZmljYW50IGdyb3d0aCBwb3RlbnRpYWwuIFRoZSByaXNlIGluIGdvdmVybm1lbnQtYmFja2VkIGluaXRpYXRpdmVzIGFuZCBub24tcHJvZml0IGZ1bmRpbmcgZnVydGhlciBzdXBwb3J0cyBtYXJrZXQgZXhwYW5zaW9uIFs3XVs4XS4gPC9wPlxyXG4gICAgICAgICAgICA8cD48Yj5PcHBvcnR1bml0eSBmb3IgUk5BLUJhc2VkIFRoZXJhcGllczo8L2I+IFdoaWxlIGN1cnJlbnQgdHJlYXRtZW50cyBsaWtlIENGVFIgbW9kdWxhdG9ycyBwcm92aWRlIHJlbGllZiBmb3IgbWFueSBwYXRpZW50cywgYXBwcm94aW1hdGVseSAxMCUgb2YgQ0YgXHJcbiAgICAgICAgICAgIHBhdGllbnRzIGRvIG5vdCBiZW5lZml0IGZyb20gdGhlc2UgdGhlcmFwaWVzIFs5XS4gT3VyIFJOQS1iYXNlZCB0aGVyYXB5IGhhcyB0aGUgcG90ZW50aWFsIHRvIGNhcHR1cmUgdGhpcyBzZWdtZW50IG9mIHRoZSBtYXJrZXQsIGFkZHJlc3NpbmcgYW4gdW5tZXQgXHJcbiAgICAgICAgICAgIGNsaW5pY2FsIG5lZWQuPC9wPlxyXG4gICAgICAgICAgICA8SDUgdGV4dD1cIjMuIENvbXBldGl0aXZlIExhbmRzY2FwZSBcIi8+XHJcbiAgICAgICAgICAgIDxwPjxiPkN1cnJlbnQgQ29tcGV0aXRvcnM6PC9iPlRoZSAgQ3lzdGljIEZpYnJvc2lzIHRyZWF0bWVudCBzcGFjZSBpcyBkb21pbmF0ZWQgYnkgcGhhcm1hY2V1dGljYWwgZ2lhbnRzIHN1Y2ggYXMgVmVydGV4IFBoYXJtYWNldXRpY2Fscywgd2hpY2ggaGFzIGRldmVsb3BlZCBcclxuICAgICAgICAgICAgQ0ZUUiBtb2R1bGF0b3JzIGxpa2UgS2FmdHJpby9UcmlrYWZ0YS4gVGhlc2UgbW9kdWxhdG9ycyBhcmUgY3VycmVudGx5IHRoZSBnb2xkIHN0YW5kYXJkIGZvciB0cmVhdGluZyBDRiBwYXRpZW50cyB3aXRoIHRoZSBGNTA4ZGVsIG11dGF0aW9uIFsxMF0uIFxyXG4gICAgICAgICAgICBPdGhlciBrZXkgcGxheWVycyBpbiB0aGUgbWFya2V0IGluY2x1ZGUgTm92YXJ0aXMsIEdpbGVhZCBTY2llbmNlcywgYW5kIEFiYlZpZSwgYWxsIG9mIHdob20gYXJlIGFjdGl2ZSBpbiBDRiBkcnVnIGRldmVsb3BtZW50WzExXS48L3A+XHJcbiAgICAgICAgICAgIDxwPjxiPkdlbmUgVGhlcmFweSBDb21wZXRpdG9yczo8L2I+V2hpbGUgQ0ZUUiBtb2R1bGF0b3JzIGhhdmUgYmVlbiBoaWdobHkgc3VjY2Vzc2Z1bCwgc2V2ZXJhbCBjb21wYW5pZXMgYXJlIGV4cGxvcmluZyBnZW5lIHRoZXJhcGllcyBhaW1lZCBhdCBhZGRyZXNzaW5nIHRoZSBcclxuICAgICAgICAgICAgcm9vdCBjYXVzZSBvZiBDRiBieSBjb3JyZWN0aW5nIG9yIHJlcGxhY2luZyBkZWZlY3RpdmUgQ0ZUUiBnZW5lcy4gRWFybHktc3RhZ2UgZ2VuZSB0aGVyYXB5IHRyaWFscyBoYXZlIGZhY2VkIGNoYWxsZW5nZXMsIGJ1dCBhZHZhbmNlbWVudHMgaW4gZGVsaXZlcnkgXHJcbiAgICAgICAgICAgIHRlY2hub2xvZ2llcyBhbmQgQ1JJU1BSLWJhc2VkIHRoZXJhcGllcyBhcmUgb3BlbmluZyBuZXcgcGF0aHdheXNbMTJdLjwvcD5cclxuICAgICAgICAgICAgPHA+PGI+T3VyIERpZmZlcmVudGlhdGlvbjogPC9iPiBVbmxpa2UgZXhpc3RpbmcgQ0ZUUiBtb2R1bGF0b3JzIHRoYXQgcmVxdWlyZSBsaWZlbG9uZyBhZG1pbmlzdHJhdGlvbiwgb3VyIFJOQS1iYXNlZCB0aGVyYXB5IGFpbXMgdG8gcHJvdmlkZSBhIG1vcmUgXHJcbiAgICAgICAgICAgIHBlcm1hbmVudCBzb2x1dGlvbiBieSBkaXJlY3RseSBhZGRyZXNzaW5nIHRoZSBnZW5ldGljIGNhdXNlIG9mIENGLCBzcGVjaWZpY2FsbHkgdGFyZ2V0aW5nIHBhdGllbnRzIHdobyBkbyBub3QgcmVzcG9uZCB0byBjdXJyZW50IENGVFIgbW9kdWxhdG9ycy4gXHJcbiAgICAgICAgICAgIFRoaXMgY291bGQgcG9zaXRpb24gdXMgYXMgYSB1bmlxdWUgcGxheWVyIGluIHRoZSBtYXJrZXQsIHRhcmdldGluZyBhbiB1bmRlcnNlcnZlZCBwYXRpZW50IGdyb3VwLjwvcD5cclxuICAgICAgICAgICAgPEg1IHRleHQ9XCI0LiBCYXJyaWVycyB0byBFbnRyeSBcIi8+XHJcbiAgICAgICAgICAgIDxwPjxiPlJlZ3VsYXRvcnkgSHVyZGxlczo8L2I+T25lIG9mIHRoZSBiaWdnZXN0IGNoYWxsZW5nZXMgaW4gYnJpbmdpbmcgYSBnZW5lIHRoZXJhcHkgdG8gbWFya2V0IGlzIG5hdmlnYXRpbmcgdGhlIGNvbXBsZXggcmVndWxhdG9yeSBlbnZpcm9ubWVudC4gXHJcbiAgICAgICAgICAgIENvbXBsaWFuY2Ugd2l0aCBHb29kIE1hbnVmYWN0dXJpbmcgUHJhY3RpY2UgKEdNUCkgYW5kIEdvb2QgTGFib3JhdG9yeSBQcmFjdGljZSAoR0xQKSBpcyBlc3NlbnRpYWwgZm9yIG9idGFpbmluZyBhcHByb3ZhbHMgZnJvbSBib2RpZXMgbGlrZSB0aGUgRkRBIGFuZCBFTUEuIFxyXG4gICAgICAgICAgICBTZWN1cmluZyBhcHByb3ZhbCBmb3IgUk5BLWJhc2VkIGdlbmUgdGhlcmFwaWVzLCBwYXJ0aWN1bGFybHkgdGhvc2UgdGFyZ2V0aW5nIHJhcmUgZGlzZWFzZXMgbGlrZSAgQ3lzdGljIEZpYnJvc2lzLCBjYW4gaW52b2x2ZSBsZW5ndGh5IGFuZCBleHBlbnNpdmUgY2xpbmljYWwgXHJcbiAgICAgICAgICAgIHRyaWFsc1sxM11bMTRdLjwvcD5cclxuICAgICAgICAgICAgPHA+PGI+SGlnaCBSJkQgQ29zdHM6PC9iPiBEZXZlbG9waW5nIGdlbmUgdGhlcmFwaWVzIGludm9sdmVzIHNpZ25pZmljYW50IHVwZnJvbnQgY29zdHMsIGZyb20gcmVzZWFyY2ggYW5kIGRldmVsb3BtZW50IHRvIGNsaW5pY2FsIHRyaWFscy4gRm9yIGEgc21hbGwgXHJcbiAgICAgICAgICAgIGJpb3RlY2ggc3RhcnR1cCwgc2VjdXJpbmcgdGhlIG5lY2Vzc2FyeSBmdW5kaW5nIGNhbiBiZSBhIGJhcnJpZXIsIGVzcGVjaWFsbHkgd2hlbiBjb21wZXRpbmcgYWdhaW5zdCBlc3RhYmxpc2hlZCBwaGFybWFjZXV0aWNhbCBjb21wYW5pZXMgd2l0aCBsYXJnZXIgUiZEIFxyXG4gICAgICAgICAgICBidWRnZXRzWzE1XS48L3A+XHJcbiAgICAgICAgICAgIDxwPjxiPkRlbGl2ZXJ5IENoYWxsZW5nZXM6PC9iPiBFZmZlY3RpdmUgZGVsaXZlcnkgb2YgUk5BLWJhc2VkIHRoZXJhcGllcyB0byB0aGUgbHVuZ3MgcmVtYWlucyBhIHRlY2huaWNhbCBiYXJyaWVyLiBXaGlsZSBsaXBpZCBuYW5vcGFydGljbGVzIChMTlBzKSBzaG93IFxyXG4gICAgICAgICAgICBwcm9taXNlLCBvcHRpbWl6aW5nIHRoZSBkZWxpdmVyeSBtZXRob2QgdG8gZW5zdXJlIGNvbnNpc3RlbnQsIHNhZmUsIGFuZCBlZmZlY3RpdmUgZGlzdHJpYnV0aW9uIG9mIHRoZSB0aGVyYXB5IGluIGx1bmcgdGlzc3VlcyBpcyBhIGNoYWxsZW5nZSB0aGF0IHN0aWxsIFxyXG4gICAgICAgICAgICBuZWVkcyB0byBiZSBmdWxseSBhZGRyZXNzZWQgWzE2XS48L3A+XHJcbiAgICAgICAgICAgIDxwPjxiPk1hcmtldCBTYXR1cmF0aW9uIGFuZCBFbnRyZW5jaGVkIENvbXBldGl0b3JzOjwvYj4gVGhlIENGIHRyZWF0bWVudCBtYXJrZXQgaXMgYWxyZWFkeSBkb21pbmF0ZWQgYnkgZXN0YWJsaXNoZWQgcGxheWVycyBsaWtlIFZlcnRleCBQaGFybWFjZXV0aWNhbHMuIFxyXG4gICAgICAgICAgICBHYWluaW5nIGEgZm9vdGhvbGQgaW4gYSBtYXJrZXQgd2hlcmUgQ0ZUUiBtb2R1bGF0b3JzIGFyZSB0aGUgc3RhbmRhcmQgb2YgY2FyZSB3aWxsIHJlcXVpcmUgZGVtb25zdHJhdGluZyBzaWduaWZpY2FudCBjbGluaWNhbCBhZHZhbnRhZ2VzLCBwYXJ0aWN1bGFybHkgZm9yIFxyXG4gICAgICAgICAgICBwYXRpZW50cyBub3Qgc2VydmVkIGJ5IGV4aXN0aW5nIHRyZWF0bWVudHNbMTddLjwvcD5cclxuICAgICAgICAgICAgPEg1IHRleHQ9XCI1LiBHby10by1NYXJrZXQgU3RyYXRlZ3lcIi8+XHJcbiAgICAgICAgICAgIDxwPjxiPkluaXRpYWwgRm9jdXMgb24gQ2xpbmljYWwgUGFydG5lcnNoaXBzOjwvYj4gVGhlIGZpcnN0IHN0ZXAgaW4gYnJpbmdpbmcgb3VyIFJOQS1iYXNlZCBnZW5lIHRoZXJhcHkgdG8gbWFya2V0IHdpbGwgYmUgcGFydG5lcmluZyB3aXRoIGFjYWRlbWljIFxyXG4gICAgICAgICAgICBpbnN0aXR1dGlvbnMgYW5kIGNsaW5pY2FsIHJlc2VhcmNoIGNlbnRlcnMgdG8gY29uZHVjdCBpbml0aWFsIGNsaW5pY2FsIHRyaWFscy4gRXN0YWJsaXNoaW5nIGNyZWRpYmlsaXR5IHRocm91Z2ggY29sbGFib3JhdGlvbnMgd2l0aCBrZXkgb3BpbmlvbiBsZWFkZXJzIFxyXG4gICAgICAgICAgICBpbiAgQ3lzdGljIEZpYnJvc2lzIHRyZWF0bWVudCB3aWxsIGhlbHAgYnVpbGQgdHJ1c3QgYW5kIHZhbGlkYXRlIHRoZSBlZmZpY2FjeSBvZiBvdXIgdGhlcmFweSBbMThdWzE5XS48L3A+XHJcbiAgICAgICAgICAgIDxwPjxiPkVhcmx5IEFkb3B0ZXJzOiA8L2I+T3VyIGZvY3VzIHdpbGwgYmUgb24gdGFyZ2V0aW5nIGVhcmx5IGFkb3B0ZXJzLCBzdWNoIGFzIHNwZWNpYWxpemVkICBDeXN0aWMgRmlicm9zaXMgY2xpbmljcyBhbmQgaG9zcGl0YWxzIHRoYXQgYXJlIGZhbWlsaWFyIFxyXG4gICAgICAgICAgICB3aXRoIGN1dHRpbmctZWRnZSBnZW5lIHRoZXJhcGllcy4gVGhlc2UgaW5zdGl0dXRpb25zIGFyZSBtb3JlIGxpa2VseSB0byBhZG9wdCBub3ZlbCB0cmVhdG1lbnRzIGFuZCBwcm92aWRlIHVzIHdpdGggcmVhbC13b3JsZCBkYXRhIHRvIGZ1cnRoZXIgcmVmaW5lIG91ciBcclxuICAgICAgICAgICAgdGhlcmFweVsyMF0uPC9wPlxyXG4gICAgICAgICAgICA8cD48Yj5QYXJ0bmVyc2hpcHMgd2l0aCBCaW90ZWNoIGFuZCBQaGFybWFjZXV0aWNhbCBDb21wYW5pZXM6PC9iPiBQYXJ0bmVyaW5nIHdpdGggZXN0YWJsaXNoZWQgYmlvdGVjaCBvciBwaGFybWFjZXV0aWNhbCBjb21wYW5pZXMgY291bGQgaGVscCBhY2NlbGVyYXRlIFxyXG4gICAgICAgICAgICBjb21tZXJjaWFsaXphdGlvbiBieSBwcm92aWRpbmcgYWNjZXNzIHRvIGRpc3RyaWJ1dGlvbiBjaGFubmVscywgcmVndWxhdG9yeSBleHBlcnRpc2UsIGFuZCBhZGRpdGlvbmFsIGZ1bmRpbmcuIExpY2Vuc2luZyBhZ3JlZW1lbnRzIG9yIGNvLWRldmVsb3BtZW50IFxyXG4gICAgICAgICAgICBkZWFscyB3aXRoIGNvbXBhbmllcyBzcGVjaWFsaXppbmcgaW4gZ2VuZSB0aGVyYXB5IGNvdWxkIGJlIGtleSB0byBzY2FsaW5nIHByb2R1Y3Rpb25bMjFdLjwvcD5cclxuICAgICAgICAgICAgPHA+PGI+UmVndWxhdG9yeSBTdHJhdGVneTo8L2I+TmF2aWdhdGluZyB0aGUgcmVndWxhdG9yeSBlbnZpcm9ubWVudCB3aWxsIGJlIGEgcHJpb3JpdHksIGFuZCBlYXJseSBlbmdhZ2VtZW50IHdpdGggdGhlIEZEQSwgRU1BLCBhbmQgb3RoZXIgcmVndWxhdG9yeSBcclxuICAgICAgICAgICAgYm9kaWVzIHdpbGwgaGVscCBlbnN1cmUgYSBzbW9vdGhlciBhcHByb3ZhbCBwcm9jZXNzLiBGb2N1c2luZyBvbiBvcnBoYW4gZHJ1ZyBkZXNpZ25hdGlvbiBvciBmYXN0LXRyYWNrIGFwcHJvdmFscyBmb3IgcmFyZSBkaXNlYXNlcyBsaWtlICBDeXN0aWMgRmlicm9zaXMgXHJcbiAgICAgICAgICAgIGNvdWxkIGV4cGVkaXRlIHRoZSByZWd1bGF0b3J5IHRpbWVsaW5lWzIyXS48L3A+XHJcbiAgICAgICAgICAgIDxwPjxiPkxvbmctVGVybSBWaXNpb246PC9iPiBBZnRlciBpbml0aWFsIHN1Y2Nlc3MgaW4gdHJlYXRpbmcgIEN5c3RpYyBGaWJyb3Npcywgb3VyIFJOQS1iYXNlZCB0aGVyYXB5IGNvdWxkIGJlIGV4cGFuZGVkIHRvIHRyZWF0IG90aGVyIGdlbmV0aWMgZGlzb3JkZXJzLiBcclxuICAgICAgICAgICAgVGhlIG1vZHVsYXIgbmF0dXJlIG9mIG91ciB0ZWNobm9sb2d5IGFsbG93cyB1cyB0byBhZGFwdCB0aGUgdGhlcmFweSBmb3Igb3RoZXIgcmFyZSBkaXNlYXNlcywgcHJvdmlkaW5nIGEgYnJvYWRlciBtYXJrZXQgcG90ZW50aWFsIGluIHRoZSBmdXR1cmVbMjNdLjwvcD5cclxuICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICA8L2Rpdj5cclxuICAgIClcclxufSIsICJpbXBvcnQgeyBCdXR0b25PbmUgfSBmcm9tIFwiLi4vLi4vLi4vY29tcG9uZW50cy9CdXR0b25zXCI7XHJcbmltcG9ydCB7ICBINCB9IGZyb20gXCIuLi8uLi8uLi9jb21wb25lbnRzL0hlYWRpbmdzXCI7XHJcbmltcG9ydCB7IHVzZVRhYk5hdmlnYXRpb24gfSBmcm9tIFwiLi4vLi4vLi4vdXRpbHMvVGFiTmF2aWdhdGlvblwiO1xyXG5pbXBvcnQgeyB1c2VOYXZpZ2F0aW9uIH0gZnJvbSBcIi4uLy4uLy4uL3V0aWxzL3VzZU5hdmlnYXRpb25cIjtcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBIUE91dHJlYWNoKCl7XHJcbiAgICBjb25zdCB7IGdvVG9QYWdlc0FuZE9wZW5UYWIgfSA9IHVzZU5hdmlnYXRpb24oKTtcclxuICAgIHVzZVRhYk5hdmlnYXRpb24oKTtcclxuICAgIHJldHVybihcclxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93IGFsaWduLWl0ZW1zLWNlbnRlclwiID5cclxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wgXCI+XHJcbiAgICAgICAgICAgIDxCdXR0b25PbmUgb3BlbmNsYXNzPVwib3V0LWN5Y2xldGFiXCIgdGV4dD1cIk92ZXJ2aWV3XCIgb3Blbj1cIm91dC1vdmVydmlld1wiPjwvQnV0dG9uT25lPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbCBcIj5cclxuICAgICAgICAgICAgPEJ1dHRvbk9uZSBvcGVuY2xhc3M9XCJvdXQtY3ljbGV0YWJcIiB0ZXh0PVwiTVVLT21vdmVcIiBvcGVuPVwibXVrb21vdmVcIj48L0J1dHRvbk9uZT5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wgXCI+XHJcbiAgICAgICAgICAgIDxCdXR0b25PbmUgb3BlbmNsYXNzPVwib3V0LWN5Y2xldGFiXCIgdGV4dD1cIldhZmZsZSBTYWxlXCIgb3Blbj1cIldhZmZsZSBzYWxlXCI+PC9CdXR0b25PbmU+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICBcclxuXHJcbiAgICAgICAgPGRpdiBpZD1cIm91dC1vdmVydmlld1wiIGNsYXNzTmFtZT1cIm91dC1jeWNsZXRhYlwiIHN0eWxlPXt7ZGlzcGxheTogXCJibG9ja1wifX0+XHJcbiAgICAgICAgICA8SDQgaWQ9XCJvdXQtd2h5LWhlYWRpbmdcIiB0ZXh0PVwiUHVibGljIGVuZ2FtZW50IGFzIHBhcnQgb2YgYSBpbnRlZ3JhdGVkIGh1bWFuIHByYWN0aWNlIC0gYnV0IHdoeT9cIi8+XHJcbiAgICAgICAgICA8cD5XaGlsZSBtYW55IG9mIG91ciBlZmZvcnRzIGluIHNjaWVuY2UgY29tbXVuaWNhdGlvbiB3ZXJlIGVkdWNhdGlvbmFsLCB3ZSBhbHNvIHJlY29nbml6ZWQgdGhlIGltcG9ydGFuY2Ugb2YgcHVibGljIGVuZ2FnZW1lbnQgdGhyb3VnaCBhY3Rpdml0aWVzIFxyXG4gICAgICAgICAgICB0aGF0IHdlcmUgbm90IGZvY3VzZWQgb24gZm9ybWFsIGVkdWNhdGlvbiBidXQgcmF0aGVyIG9uIHJhaXNpbmcgYXdhcmVuZXNzLiBJbml0aWF0aXZlcyBsaWtlIE1VS09tb3ZlIGFuZCBvdXIgd2FmZmxlIHNhbGUgd2VyZSBlc3NlbnRpYWwgaW4gYnJpbmdpbmcgXHJcbiAgICAgICAgICAgICBDeXN0aWMgRmlicm9zaXMgKENGKSBpbnRvIHB1YmxpYyBmb2N1cyBhbmQgc2hvd2luZyBhIHZpc2libGUgY29tbWl0bWVudCB0byB0aGUgY2F1c2UuPC9wPlxyXG4gICAgICAgICAgPHA+UHVibGljIGVuZ2FuZWdtZW50IGFuZCBvdXRyZWFjaCBzZXJ2ZXMgYXMgYSByZW1pbmRlciB0aGF0IHNjaWVuY2UgZG9lcyBub3QgaGFwcGVuIGluIGlzb2xhdGlvbiAtIGl0IGlzIHJvb3RlZCBcclxuICAgICAgICAgICAgaW4gcmVhbC13b3JsZCBwcm9ibGVtcyB0aGF0IGltcGFjdCBpbmRpdmlkdWFscyBhbmQgY29tbXVuaXRpZXMuIEVzdGFibGlzaGluZyBwcmVzZW5jZSBhbGxvd3MgZGl2ZXJ0aW5nIGludGVyZXN0IHRvIG91ciBwcm9qZWN0IGFuZCBvdXIgY2F1c2Ugd2hpY2ggaW4gdHVybiBcclxuICAgICAgICAgICAgcGF2ZXMgdGhlIHdheSB0byBlZGN1YXRlIGludGVyZXN0ZWQgcGVvcGxlIGFuZCB0byBsYXkgdGhlIGdyb3VuZHdvcmsgZm9yIGEgZGVlcGVyIGNvbm5lY3Rpb24gYmV0d2VlbiB1cyBhbmQgb3VyIHByb2plY3QgYW5kIHRoZSBnZW5lcmFsIHB1YmxpYy4gPC9wPlxyXG4gICAgICAgICAgICA8SDQgaWQ9XCJvdXQtaGVhZGluZ1wiIHRleHQ9XCJPdXIgcHVibGljIGVuZ2FnZW1lbnRcIi8+XHJcbiAgICAgICAgICAgIDxwPk91ciBwdWJsaWMgZW5nYWdlbWVudCBzZXJ2ZWQgYm90aCBhcyBhIGZvcm0gb2Ygc3ByZWFkaW5nIGF3YXJlbmVzcyBhbmQgdG8gZXN0YWJsaXNoIGZpcnN0IGNvbnRhY3RzLiBCeSBpbnZpdGluZyBvdGhlciBwZW9wbGUgaW4gQmllbGVmZWxkIHRvIGpvaW4gb3VyIHRlYW0gXHJcbiAgICAgICAgICAgIGZvciBNVUtPbW92ZSwgd2Ugd2VyZSBhYmxlIHRvIHJlYWNoIGEgd2lkZXIgYXVkaWVuY2UgYW5kIGZvc3RlciBjb25uZWN0aW9ucyB0aGF0IGV4dGVuZGVkIGJleW9uZCBvdXIgdW5pdmVyc2l0eS48L3A+XHJcbiAgICAgICAgICAgIDxwPkluIGFkZGl0aW9uIHRvIG91ciBpbi1wZXJzb24gZXZlbnRzLCB3ZSB1c2VkIHNvY2lhbCBtZWRpYSBhcyBhIHRvb2wgdG8ga2VlcCB0aGUgY29tbXVuaXR5IGVuZ2FnZWQgYW5kIHVwZGF0ZWQuIFdlIHNoYXJlZCBvdXIgcHJvZ3Jlc3MgaW4gXHJcbiAgICAgICAgICAgICAgTVVLT21vdmUsIHByb21vdGVkIG91ciBldmVudHMsIGFuZCBwb3N0ZWQgZWR1Y2F0aW9uYWwgY29udGVudCBhYm91dCAgQ3lzdGljIEZpYnJvc2lzIGFuZCBnZW5lIHRoZXJhcHkuIE91ciBzb2NpYWwgbWVkaWEgcHJlc2VuY2UgaGVscGVkIHVzIFxyXG4gICAgICAgICAgICAgIHN0YXkgY29ubmVjdGVkIHdpdGggYSBicm9hZGVyIGF1ZGllbmNlLCBlbnN1cmluZyB0aGF0IGV2ZW4gdGhvc2Ugd2hvIGNvdWxkIG5vdCBhdHRlbmQgb3VyIGV2ZW50cyBjb3VsZCBzdGlsbCBmb2xsb3cgYWxvbmcgYW5kIHN1cHBvcnQgb3VyIG1pc3Npb24uPC9wPlxyXG4gICAgICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgICAgIFRocm91Z2ggdGhlc2UgZWZmb3J0cywgd2UgYWxzbyBtYWRlIHZhbHVhYmxlIGNvbm5lY3Rpb25zLCByZXN1bHRpbmcgaW4gYW4gaW50ZXJ2aWV3IHdpdGggdGhlIFwiTXVrbyBEaW5vXCIgPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VzQW5kT3BlblRhYignZGlubycsICcvaHVtYW4tcHJhY3RpY2VzJyl9PlRob21hcyBNYWxlbmtlPC9hPi4gVGhpcyBoaWdobGlnaHRlZCB0aGUgcG93ZXIgXHJcbiAgICAgICAgICAgICAgb2Ygb25saW5lIHBsYXRmb3JtcyBpbiBleHBhbmRpbmcgb3VyIHJlYWNoIGFuZCBmb3N0ZXJpbmcgY29sbGFib3JhdGlvbiBiZXlvbmQgb3VyIGltbWVkaWF0ZSBjb21tdW5pdHkuPC9wPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIFxyXG4gICAgICAgIDxkaXYgaWQ9XCJXYWZmbGUgc2FsZVwiIGNsYXNzTmFtZT1cIm91dC1jeWNsZXRhYlwiIHN0eWxlPXt7ZGlzcGxheTogXCJub25lXCJ9fT5cclxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICA8SDQgdGV4dD1cIldhZmZsZSBTYWxlXCI+PC9IND5cclxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93XCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICAgIDxwPlRvIHN1cHBvcnQgb3VyIHJlc2VhcmNoIHByb2plY3QgYW5kIHJhaXNlIGZ1bmRzIGZvciBvdXIgaUdFTSB0ZWFtIGF0IEJpZWxlZmVsZCBVbml2ZXJzaXR5LCB3ZSBkZWNpZGVkIHRvIG9yZ2FuaXplIGEgd2FmZmxlIHNhbGUgaW4gdGhlIG1haW4gaGFsbCBvZiB0aGUgdW5pdmVyc2l0eS4gVGhpcyBpbml0aWF0aXZlIHdhcyBhaW1lZCBhdCByYWlzaW5nIGF3YXJlbmVzcyBhYm91dCBvdXIgcHJvamVjdCBhbmQgY29sbGVjdGluZyBmdW5kcyBmb3Igb3VyIHJlc2VhcmNoIGludG8gIEN5c3RpYyBGaWJyb3Npcy4gPC9wPlxyXG4gICAgICAgICAgICA8cD5UaGUgc2FsZSB0b29rIHBsYWNlIGluICBDeXN0aWMgRmlicm9zaXMgYXdhcmVuZXNzIG1vbnRoIE1heSBpbiB0aGUgR3JlYXQgSGFsbCBvZiBvdXIgVW5pdmVyc2l0eS4gQXMgcGVvcGxlIHBhc3NlZCBieSwgd2UgZW5nYWdlZCB0aGVtIGJ5IGludHJvZHVjaW5nIG91ciByZXNlYXJjaCBncm91cCBhbmQgZXhwbGFpbmluZyBvdXIgcHJvamVjdFx1MjAxOXMgb2JqZWN0aXZlcy4gV2Ugc2hhcmVkIGluZm9ybWF0aW9uIGFib3V0ICBDeXN0aWMgRmlicm9zaXMgYW5kIHdoeSB3ZSBhcmUgcmFpc2luZyBtb25leS4gT3VyIGdvYWwgd2FzIHRvIG5vdCBvbmx5IGp1c3QgdG8gc2VsbCB3YWZmbGVzLCBidXQgYWxzbyB0byBlZHVjYXRlIHRoZSB1bml2ZXJzaXR5IGNvbW11bml0eSBhYm91dCBvdXIgcmVzZWFyY2ggYW5kIGl0c1x1MjAxOSBwb3RlbnRpYWwgaW1wYWN0LiBUaGUgcmVzcG9uc2UgaGFzIGJlZW4gb3ZlcndoZWxtaW5nbHkgcG9zaXRpdmUuIE1hbnkgd2VyZSBnZW51aW5lbHkgaW50ZXJlc3RlZCBpbiBvdXIgd29yayBhbmQgYXNrZWQgZm9yIG1vcmUgZGV0YWlscyBhYm91dCBvdXIgcmVzZWFyY2ggYW5kIHRoZSBnb2FscyBvZiBvdXIgcHJvamVjdC4gVGhpcyBlbnRodXNpYXNtIHN0cmVuZ3RoZW5lZCBvdXIgY29tbWl0bWVudCB0byB0aGUgcHJvamVjdCBhbmQgaGlnaGxpZ2h0ZWQgdGhlIGltcG9ydGFuY2Ugb2YgY29tbXVuaXR5IGludm9sdmVtZW50IGluIHNjaWVudGlmaWMgcmVzZWFyY2guIDwvcD5cclxuICAgICAgICAgICAgPHA+VGhlIHdhZmZsZSBzYWxlIHdhcyBhIGdyZWF0IHN1Y2Nlc3MsIGJvdGggaW4gdGVybXMgb2YgcmFpc2luZyBmdW5kcyBhbmQgaW5jcmVhc2luZyBhd2FyZW5lc3MgYWJvdXQgb3VyIHdvcmsgd2l0aGluIHRoZSB1bml2ZXJzaXR5LiBJdCB3YXMgYSBjb2xsYWJvcmF0aXZlIGVmZm9ydCB0aGF0IGJyb3VnaHQgb3VyIHRlYW0gY2xvc2VyIHRvZ2V0aGVyIGFuZCBkZW1vbnN0cmF0ZWQgdGhlIHBvd2VyIG9mIGNvbW11bml0eSBzdXBwb3J0IGluIGFkdmFuY2luZyBzY2llbnRpZmljIHJlc2VhcmNoLiA8L3A+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbC00XCI+IFxyXG4gICAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2VkY2F0aW9uLWFuZC1vdXRyZWFjaC9zY3JlZW5zaG90LTIwMjQtMDktMjUtMjAyMDA4LnBuZ1wiIHN0eWxlPXt7b2JqZWN0Rml0OiBcImNvdmVyXCIsIG1heEhlaWdodDogXCI1MCVcIiwgd2lkdGg6IFwiMTAwJVwifX0vPiBcclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICBcclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICBcclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGlkPVwibXVrb21vdmVcIiBjbGFzc05hbWU9XCJvdXQtY3ljbGV0YWJcIiBzdHlsZT17e2Rpc3BsYXk6IFwibm9uZVwifX0+XHJcbiAgICAgICAgPEg0IGlkPVwiY2YtbW9udGhcIiB0ZXh0PVwiQ3lzdGljICBGaWJyb3NpcyBhd2FyZW5lc3MgbW9udGhcIi8+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvd1wiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImZ1bGwtc21hbGwgY29sLTNcIj5cclxuICAgICAgICAgICAgICAgIDxpbWcgY2xhc3NOYW1lPVwibWF4NDAwXCIgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2Zvci13aWtpLXRleHRzL3BvLW11a29tb3ZlL3dpci1wbGFrYXQtbXVrb21vdmUuanBlZ1wiPjwvaW1nPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgICAgPGgzPldoYXQgaXMgTVVLT21vdmU/PC9oMz5cclxuICAgICAgICAgICAgPHA+QXMgcGFydCBvZiB0aGUgIEN5c3RpYyBGaWJyb3NpcyBhd2FyZW5lc3MgbW9udGggTWF5LCB3ZSB0b29rIHBhcnQgaW4gdGhpcyB5ZWFyJ3MgPGEgaHJlZj1cImh0dHBzOi8vd3d3Lm11a28uaW5mby9tdWtvbW92ZVwiPk1VS09tb3ZlPC9hPiBmcm9tIE1heSA4dGggdG8gTWF5XHJcbiAgICAgICAgICAgICAgMTJ0aCB1bmRlciB0aGUgdGVhbSBuYW1lIGlHRU0gQmllbGVmZWxkLiBNVUtPbW92ZSBpcyBhIHBhcnRpY2lwYXRvcnkgc3BvcnRzIGluaXRpYXRpdmUgb3JnYW5pemVkIGJ5IFxyXG4gICAgICAgICAgICAgIDxhIGhyZWY9XCJodHRwczovL3d3dy5tdWtvLmluZm8vXCI+IE11a292aXN6aWRvc2UgZS5WLjwvYT4sIHRoZSBHZXJtYW4gQ3lzdGljIEZpYnJvc2lzIEFzc29jaWF0aW9uLCBhaW1lZCBhdCByYWlzaW5nIGF3YXJlbmVzcyBhbmQgZnVuZHMgXHJcbiAgICAgICAgICAgICAgZm9yICBDeXN0aWMgRmlicm9zaXMgcmVzZWFyY2ggYW5kIHN1cHBvcnQuIFRoaXMgYW5udWFsIGV2ZW50IGVuY291cmFnZXMgaW5kaXZpZHVhbHMgYW5kIHRlYW1zIHRvIFxyXG4gICAgICAgICAgICAgIGVuZ2FnZSBpbiB2YXJpb3VzIHBoeXNpY2FsIGFjdGl2aXRpZXMsIHRyYWNrIHRoZWlyIG1vdmVtZW50LCBhbmQgc2hhcmUgdGhlaXIgZXhwZXJpZW5jZXMgb25saW5lLiAgPC9wPlxyXG4gICAgICAgICAgICAgIDxidXR0b24+U3BlbmRlbjwvYnV0dG9uPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPGJyLz4gXHJcbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvd1wiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICA8aDM+V2h5IGFuZCBpbiB3aGljaCB3YXlzIHdlcmUgd2UgaW52ZXN0ZWQgaW4gTVVLT21vdmU/IDwvaDM+XHJcbiAgICAgICAgICAgIDxwPldoaWxlIE1VS09tb3ZlIHdhcyBub3QgYSBzY2llbnRpZmljIG9yIGVkdWNhdGlvbmFsIGV2ZW50LCBpdCBwbGF5ZWQgYW4gaW1wb3J0YW50IHJvbGUgaW4gZGVtb25zdHJhdGluZyBvdXIgcHJlc2VuY2UgaW4gdGhlIGJyb2FkZXIgQ0YgXHJcbiAgICAgICAgICAgICAgY29tbXVuaXR5LjwvcD5cclxuICAgICAgICAgIDxwPldlIGRpZCBub3Qgc3RvcCBhdCBvdXIgcGFydGljaXBhdGlvbiBpdHNlbGYgLSB3ZSB3YW50ZWQgdG8gbWFrZSBvdGhlciBwZW9wbGUgZnJvbSBvdXIgdW5pdmVyc2l0eSBhbmQgY2l0eSBcclxuICAgICAgICAgICAgYXdhcmUgb2YgdGhlIGV2ZW50IGFuZCBjb2xsZWN0IHNwb3J0IGhvdXJzIGZvciAgQ3lzdGljIEZpYnJvc2lzIHdpdGggdGhlbSBieSBpbnZpdGluZyB0aGVtIHRvIGpvaW4gb3VyIHRlYW0uIFxyXG4gICAgICAgICAgICBPdXIgc3VydmV5IGFib3V0ICBDeXN0aWMgRmlicm9zaXMgYXdhcmVuZXNzIGFuZCBvdXIgZGlzY3Vzc2lvbnMgd2l0aCA8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZXNBbmRPcGVuVGFiKCdJbnZXZXN0aG9mZicsICcvaHVtYW4tcHJhY3RpY2VzP3RhYj0nKX0+S2F0aHJpbiBXZXN0aG9mZjwvYT4sIHRoZSBoZWFkIG9mIGEgXHJcbiAgICAgICAgICAgIHByYWN0aWNlIGZvciBwaHlzaW90aGVyYXB5IGluIEdcdTAwRkN0ZXJzbG9oIHdobyBpcyBhbHNvIHRyZWF0aW5nIHlvdW5nIENGIHBhdGllbnRzLCBzaG93ZWQgdXMgaG93IGxpdHRsZSBrbm93biBcclxuICAgICAgICAgICAgdGhpcyBpbGxuZXNzIHN0aWxsIGlzLiBFc3BlY2lhbGx5IHRoZSBpbnRlcnZpZXcgd2l0aCB0aGUgcGh5c2lvdGhlcmFwaXN0IG1hZGUgdXMgcmVhbGl6ZSBob3cgaW1wb3J0YW50IFxyXG4gICAgICAgICAgICBleGVyY2lzZSBpcyBmb3IgZXZlcnlvbmUgYW5kIGhvdyBpdCBicmluZ3MgYSBjb21tdW5pdHkgdG9nZXRoZXIgLSB3ZSB3YW50ZWQgdG8gZXN0YWJsaXNoIE1VS09tb3ZlIGluIFxyXG4gICAgICAgICAgICBCaWVsZWZlbGQuIFRoYXQgaXMgd2h5IHdlIHJlYWxseSBnb3QgdGhlIHB1YmxpY2l0eSBnb2luZyBieSBwdXR0aW5nIHVwIHBvc3RlcnMgYW5kIGRpc3RyaWJ1dGluZyBmbHllcnMgXHJcbiAgICAgICAgICAgIGF0IHRoZSB1bml2ZXJzaXR5IGFuZCBpbiBvdXIgY2l0eSBhcyB5b3UgY2FuIHNlZSBpbiB0aGUgZm9sbG93aW5nIHBpY3R1cmUuIDwvcD5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZnVsbC1zbWFsbCBjb2wtNFwiPlxyXG4gICAgICAgICAgICAgICAgPGltZyBjbGFzc05hbWU9XCJtYXg0MDBcIiBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvZm9yLXdpa2ktdGV4dHMvcG8tbXVrb21vdmUvaW1nLTc4MjguanBlZ1wiPjwvaW1nPlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxici8+IFxyXG4gICAgICAgICAgPHA+V2UgYWxzbyBjYWxsZWQgZm9yIE1VS09tb3ZlIG9uIG91ciBzb2NpYWxzIGFuZCBzZXQgb3VyIHRlYW0gYSBnb2FsIG9mIGNvbGxlY3RpbmcgMjQwIGhvdXJzIGRvaW5nIHNwb3J0cyB0b2dldGhlciwgXHJcbiAgICAgICAgICAgIHdoaWxlIHRoZSBlbnRpcmUgTVVLT21vdmUgaGFkIGEgZ29hbCBvZiBjb2xsZWN0aW5nIDI0LDAwMCBzcG9ydCBob3Vycy4gSW4gY29vcGVyYXRpb24gd2l0aCBvdXIgdW5pdmVyc2l0eSdzIFxyXG4gICAgICAgICAgICBzcG9ydHMgZmFjaWxpdGllcywgdXNpbmcgdGhlaXIgPGEgaHJlZj1cImh0dHBzOi8vd3d3LnVuaS1iaWVsZWZlbGQuZGUvZWlucmljaHR1bmdlbi9ob2Noc2NodWxzcG9ydC96dXNhdHphbmdlYm90ZS9ob3ViaS9cIj5cdTIwMUNIT1VCSS1Ba3Rpdm1vYmlsXCI8L2E+IGFuZCBvdGhlciBlcXVpcG1lbnQsIHdlIG9yZ2FuaXplZCBhIHRlYW0gZXZlbnQgYXQgdGhlIHNwb3J0cyBcclxuICAgICAgICAgICAgZ3JvdW5kIG9mIG91ciB1bml2ZXJzaXR5IGF0IHRoZSBiZWdpbiBvZiBNVUtPbW92ZS4gRXZlcnlvbmUgd2FzIHdhcm1seSBpbnZpdGVkIHRvIG91ciBldmVudCBvbiBNYXkgOHRoLCBhbmQgXHJcbiAgICAgICAgICAgIGl0IHdhcyBhIGxvdCBvZiBmdW4gdG8gcGxheSB2YXJpb3VzIHNwb3J0IGdhbWVzIHRvZ2V0aGVyIG91dHNpZGUgaW4gdGhlIHN1biAtIGNoZWNrIG91dCBpbiB0aGUgZm9sbG93aW5nIFxyXG4gICAgICAgICAgICB2aWRlbyEgPC9wPlxyXG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3cgYWxpZ24taXRlbXMtY2VudGVyXCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICAgIDxpZnJhbWUgdGl0bGU9XCJCaWVsZWZlbGQtQ2VCaVRlYzogTVVLT21vdmUgKDIwMjQpIFtFbmdsaXNoXVwiIHdpZHRoPVwiNTYwXCIgaGVpZ2h0PVwiMzE1XCIgc3JjPVwiaHR0cHM6Ly92aWRlby5pZ2VtLm9yZy92aWRlb3MvZW1iZWQvZGQzZTZlZmYtOTVmNS00N2Y0LWEwZmMtZjQxNmRiODhkZmU0P2F1dG9wbGF5PTFcIiBmcmFtZUJvcmRlcj1cIjBcIiBhbGxvd0Z1bGxTY3JlZW49e3RydWV9IHNhbmRib3g9XCJhbGxvdy1zYW1lLW9yaWdpbiBhbGxvdy1zY3JpcHRzIGFsbG93LXBvcHVwcyBhbGxvdy1mb3Jtc1wiPjwvaWZyYW1lPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPGJyLz5cclxuICAgICAgICAgIDxoMz5XaGF0IGRpZCB3ZSBhY2hpZXZlPzwvaDM+XHJcbiAgICAgICAgICA8cD5XZSBhcmUgaGFwcHkgdG8gYW5ub3VuY2UgdGhhdCBib3RoIG1vdmVtZW50IGdvYWxzIHdlcmUgc3VycGFzc2VkOiBUZWFtIGlHRU0gQmllbGVmZWxkIHdhcyBhYmxlIHRvIGNvbGxlY3QgMzU4IHNwb3J0IGhvdXJzLCBhbmQgZXZlcnlvbmUgd2hvIHRvb2sgcGFydCBpbiBNVUtPbW92ZSB0b2dldGhlciBjb2xsZWN0ZWQgMzYsNTQyIHNwb3J0IGhvdXJzISAgPC9wPlxyXG4gICAgICAgICAgPHA+VGhlIE1VS09tb3ZlIHdhcyB0aGVyZWZvcmUgYSBjb21wbGV0ZSBzdWNjZXNzLCBhbmQgd2UgdGFrZSBwcmlkZSBpbiBoYXZpbmcgY29udHJpYnV0ZWQgdG8gdGhlIGdvYWwgd2hpbGUgcmFpc2luZyBtb3JlIGF3YXJlbmVzcyBmb3IgIEN5c3RpYyBGaWJyb3NpcyBpbiBvdXIgcmVnaW9uIGFuZCBHZXJtYW55IGFzIGEgd2hvbGUuPC9wPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICApO1xyXG59IiwgImltcG9ydCB7IEg0IH0gZnJvbSBcIi4uLy4uLy4uL2NvbXBvbmVudHMvSGVhZGluZ3NcIjtcclxuaW1wb3J0IHsgdXNlVGFiTmF2aWdhdGlvbiB9IGZyb20gXCIuLi8uLi8uLi91dGlscy9UYWJOYXZpZ2F0aW9uXCI7XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gSFBQYXJ0bmVyc2hpcHMoKXtcclxuICAgIHVzZVRhYk5hdmlnYXRpb24oKTtcclxuICAgIHJldHVybihcclxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICA8SDQgdGV4dD1cIkNGIFZlc3RzXCI+PC9IND5cclxuICAgICAgICAgICAgPHA+Q0YgVmVzdHMgV29ybGR3aWRlIGlzIGEgZGVkaWNhdGVkIGNoYXJpdHkgb3JnYW5pemF0aW9uIGNvbW1pdHRlZCB0byBwcm92aWRpbmcgbGlmZS1zYXZpbmcgdmVzdCBlcXVpcG1lbnQgdG8gdGhvc2UgaW4gbmVlZCwgcmVnYXJkbGVzcyBvZiB0aGVpciBmaW5hbmNpYWwgc2l0dWF0aW9uLiBCdXQgdGhleSBjYW4ndCBkbyBpdCBhbG9uZSBcdTIwMTQgdGhleSBuZWVkIHlvdXIgc3VwcG9ydC4gSGVscCB1cyBtYWtlIGEgZGlmZmVyZW5jZSEgQnkgZG9uYXRpbmcgdG8gQ0ZWV1csIHlvdSBjYW4gZGlyZWN0bHkgaW1wYWN0IHRoZSBsaXZlcyBvZiAgQ3lzdGljIEZpYnJvc2lzIHBhdGllbnRzLCBnaXZpbmcgdGhlbSB0aGUgY2hhbmNlIHRvIGJyZWF0aGUgZWFzaWVyIGFuZCBsaXZlIGZ1bGxlciBsaXZlcy4gRXZlcnkgY29udHJpYnV0aW9uIGNvdW50cy48L3A+XHJcbiAgICAgICAgICAgIDxwPjxzdHJvbmc+Sm9pbiB1cyBpbiB0aGUgZmlnaHQgYWdhaW5zdCAgQ3lzdGljIEZpYnJvc2lzLjwvc3Ryb25nPiA8YSBocmVmPVwiaHR0cHM6Ly9kb25vcmJveC5vcmcvaWdlbVwiPiBEb25hdGUgdG9kYXk8L2E+IGFuZCBoZWxwIHVzIGJyaW5nIGhvcGUsIG9uZSB2ZXN0IGF0IGEgdGltZSEgVG9nZXRoZXIsIHdlIGNhbiBjaGFuZ2UgbGl2ZXMuPC9wPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgKVxyXG59IiwgImltcG9ydCB7IFNlY3Rpb24sIFN1YmVzY3Rpb24gfSBmcm9tIFwiLi4vLi4vLi4vY29tcG9uZW50cy9zZWN0aW9uc1wiO1xyXG5pbXBvcnQgeyB1c2VUYWJOYXZpZ2F0aW9uIH0gZnJvbSBcIi4uLy4uLy4uL3V0aWxzL1RhYk5hdmlnYXRpb25cIjtcclxuaW1wb3J0IHsgSFBDb2xsYWJzIH0gZnJvbSBcIi4vQ29sbGFib3JhdGlvbnNcIjtcclxuaW1wb3J0IHsgSFBFZHVjYXRpb24gfSBmcm9tIFwiLi9FZHVjYXRpb25cIjtcclxuaW1wb3J0IHsgSFBFbnRyZXByZW5ldXIgfSBmcm9tIFwiLi9FbnRyZXByZW5ldXJzaGlwXCI7XHJcbmltcG9ydCB7IEhQT3V0cmVhY2ggfSBmcm9tIFwiLi9PdXRyZWFjaFwiO1xyXG5pbXBvcnQgeyBIUFBhcnRuZXJzaGlwcyB9IGZyb20gXCIuL1BhcnRuZXJzaGlwc1wiO1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIEhQRnVydGhlckVuZ2FnZW1lbnQoKXtcclxuICAgIHVzZVRhYk5hdmlnYXRpb24oKTtcclxuICAgIHJldHVybihcclxuICAgICAgICA8U2VjdGlvbiB0aXRsZT1cIkZ1cnRoZXIgRW5nYWdlbWVudFwiIGlkPVwiRnVydGhlciBFbmdhZ2VtZW50XCI+XHJcbiAgICAgICAgICAgIDxTdWJlc2N0aW9uIHRpdGxlPVwiRWR1Y2F0aW9uXCIgaWQ9XCJGdXJ0aGVyIEVuZ2FnZW1lbnQxXCI+XHJcbiAgICAgICAgICAgICAgICA8SFBFZHVjYXRpb24vPlxyXG4gICAgICAgICAgICA8L1N1YmVzY3Rpb24+XHJcbiAgICAgICAgICAgIDxTdWJlc2N0aW9uIHRpdGxlPVwiUHVibGljIEVuZ2FnZW1lbnRcIiBpZD1cIkZ1cnRoZXIgRW5nYWdlbWVudDJcIj5cclxuICAgICAgICAgICAgICAgIDxIUE91dHJlYWNoLz5cclxuICAgICAgICAgICAgPC9TdWJlc2N0aW9uPlxyXG4gICAgICAgICAgICA8U3ViZXNjdGlvbiB0aXRsZT1cIkVudHJlcHJlbmV1cnNoaXBcIiBpZD1cIkZ1cnRoZXIgRW5nYWdlbWVudDNcIj5cclxuICAgICAgICAgICAgICAgIDxIUEVudHJlcHJlbmV1ci8+XHJcbiAgICAgICAgICAgIDwvU3ViZXNjdGlvbj5cclxuICAgICAgICAgICAgPFN1YmVzY3Rpb24gdGl0bGU9XCJDb2xsYWJvcmF0aW9uc1wiIGlkPVwiRnVydGhlciBFbmdhZ2VtZW50NFwiPlxyXG4gICAgICAgICAgICAgICAgPEhQQ29sbGFicy8+XHJcbiAgICAgICAgICAgIDwvU3ViZXNjdGlvbj5cclxuICAgICAgICAgICAgPFN1YmVzY3Rpb24gdGl0bGU9XCJQYXJ0bmVyc2hpcHNcIiBpZD1cIkZ1cnRoZXIgRW5nYWdlbWVudDVcIj5cclxuICAgICAgICAgICAgICAgIDxIUFBhcnRuZXJzaGlwcy8+XHJcbiAgICAgICAgICAgIDwvU3ViZXNjdGlvbj5cclxuICAgICAgICA8L1NlY3Rpb24+XHJcbiAgICApXHJcbn0iLCAiaW1wb3J0IHsgRG93bmxvYWRMaW5rIH0gZnJvbSBcIi4uLy4uLy4uL2NvbXBvbmVudHMvQnV0dG9uc1wiO1xyXG5pbXBvcnQgeyBTZWN0aW9uIH0gZnJvbSBcIi4uLy4uLy4uL2NvbXBvbmVudHMvc2VjdGlvbnNcIjtcclxuaW1wb3J0IHsgdXNlVGFiTmF2aWdhdGlvbiB9IGZyb20gXCIuLi8uLi8uLi91dGlscy9UYWJOYXZpZ2F0aW9uXCI7XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gSFBTdXBwbGVtZW50KCl7XHJcbiAgICB1c2VUYWJOYXZpZ2F0aW9uKCk7XHJcbiAgICByZXR1cm4oXHJcbiAgICAgICAgPFNlY3Rpb24gdGl0bGU9XCJTdXBwbGVtZW50YXJ5IE1hdGVyaWFsXCIgaWQ9XCJTdXBwbGVtZW50YXJ5IE1hdGVyaWFsXCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93XCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgICAgPHA+Q2xpY2sgaGVyZSB0byBzZWUgb3VyIHJhdyBkYXRhIG9mIG91ciBzdXJ2ZXJ5czwvcD5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgICAgICAgIDxEb3dubG9hZExpbmsgdXJsPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGRmcy9yYXctZGF0YS1zdXJ2ZXkucGRmXCIgIGZpbGVOYW1lPVwicmF3LWRhdGEtc3VydmV5LnBkZlwiPjwvRG93bmxvYWRMaW5rPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvU2VjdGlvbj5cclxuICAgIClcclxufSIsICJpbXBvcnQgeyBTZWN0aW9uIH0gZnJvbSBcIi4uLy4uL2NvbXBvbmVudHMvc2VjdGlvbnNcIlxyXG5pbXBvcnQgeyB1c2VUYWJOYXZpZ2F0aW9uIH0gZnJvbSBcIi4uLy4uL3V0aWxzL1RhYk5hdmlnYXRpb25cIjtcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBIUEFic3RyYWN0KCl7XHJcbiAgICB1c2VUYWJOYXZpZ2F0aW9uKCk7XHJcbiAgICByZXR1cm4oXHJcbiAgICAgICAgPFNlY3Rpb24gdGl0bGU9XCJBYnN0cmFjdFwiIGlkPVwiQWJzdHJhY3RcIj5cclxuICAgICAgICAgICAgPHA+QXMgdGhlIGlHRU0gQmllbGVmZWxkLUNlQmlUZWMgdGVhbSwgd2UgYWRvcHRlZCBhIGh1bWFuLWNlbnRlcmVkIGFwcHJvYWNoIGFuZCAgcHJvdmlkZWQgYSBjb21wcmVoZW5zaXZlIGZyYW1ld29yayBvZiA8c3Ryb25nPnNldmVuIHJlZ2xlbWVudGF0aW9uczwvc3Ryb25nPiBmb3IgZnV0dXJlIGlHRU0gdGVhbXMsIGVzdGFibGlzaGluZyA8c3Ryb25nPnNldmVuIGZyYW1ld29ya3M8L3N0cm9uZz4gdGhhdCB3ZXJlIHZhbGlkYXRlZCB0aHJvdWdoIG91ciBwcm9qZWN0LiBPdXIgbWV0aG9kb2xvZ3kgd2FzIHNoYXBlZCBieSBvdmVyIDxzdHJvbmc+ODAgaW50ZXJ2aWV3cyB3aXRoIHN0YWtlaG9sZGVycyBhbmQgaW5zdGl0dXRpb25zPC9zdHJvbmc+ICwgY3JlYXRpbmcgYSBjb21wcmVoZW5zaXZlIGFuZCBtdWx0aWRpbWVuc2lvbmFsIHBlcnNwZWN0aXZlIG9uIHRoZSBjb21wbGV4IGNoYWxsZW5nZSBvZiBnZW5lIHRoZXJhcHkgZm9yICBDeXN0aWMgRmlicm9zaXMgKENGKS4gVGhyb3VnaCA8c3Ryb25nPjMzIGtleSBpbnRlcnZpZXdzPC9zdHJvbmc+ICwgd2UgbmF2aWdhdGVkIDxzdHJvbmc+c2V2ZW4gdGhlbWF0aWMgYXJlYXM8L3N0cm9uZz4gIHNpbXVsdGFuZW91c2x5LCBpbmNvcnBvcmF0aW5nIDxzdHJvbmc+Zml2ZSBpdGVyYXRpdmUgZmVlZGJhY2sgbG9vcHM8L3N0cm9uZz4gIHRvIGVuc3VyZSB0aGUgcHJvamVjdFx1MjAxOXMgcmVmaW5lbWVudCBhdCBldmVyeSBzdGFnZS5cclxuICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICA8cD4gT3VyIGFwcHJvYWNoIG9mZmVycyBmdXR1cmUgaUdFTSB0ZWFtcyBhbmQgdGhlIHN5bnRoZXRpYyBiaW9sb2d5IGNvbW11bml0eSBhIHZhbHVhYmxlIGJsdWVwcmludCBmb3IgcmVzcG9uc2libGUgYW5kIGV0aGljYWwgcHJvamVjdCBkZXZlbG9wbWVudC4gQnkgYWN0aXZlbHkgZW5nYWdpbmcgd2l0aCBDRiBwYXRpZW50cywgY2xpbmljaWFucywgcmVzZWFyY2hlcnMsIGFuZCByZWd1bGF0b3J5IGJvZGllcywgd2UgZW5zdXJlZCB0aGF0IHJlYWwtd29ybGQgbmVlZHMgYW5kIHNvY2lldGFsIHZhbHVlcyB3ZXJlIGNlbnRyYWwgdG8gb3VyIHByb2plY3QncyBldm9sdXRpb24uIE91ciBlZmZvcnRzIGN1bG1pbmF0ZWQgaW4gYSB0aG91Z2h0ZnVsLCBzY2llbnRpZmljYWxseSBzb3VuZCBzb2x1dGlvbiwgc2V0dGluZyBuZXcgc3RhbmRhcmRzIGZvciBhY2Nlc3NpYmlsaXR5LCBwYXRpZW50IGZvY3VzLCBhbmQgcmVndWxhdG9yeSBjb21wbGlhbmNlLiBGdXR1cmUgdGVhbXMgY2FuIGxldmVyYWdlIG91ciBkb2N1bWVudGVkIG1ldGhvZG9sb2dpZXMgdG8gZnVydGhlciB0aGVpciBvd24gaW1wYWN0LCBlbnN1cmluZyB0aGF0IGlubm92YXRpb24gcmVtYWlucyBhbGlnbmVkIHdpdGggdGhlIG5lZWRzIG9mIHRob3NlIGl0IHNlcnZlcy5cclxuICAgICAgICAgICAgPC9wPlxyXG5cclxuICAgICAgICA8L1NlY3Rpb24+XHJcbiAgICApXHJcbn0iLCAiLyogXHJcbi0gc2VpdHdcdTAwRTRydHMgXHJcbi0gbWl0IEZhcmJlbiB1bmQgVGV4dCBhbnplaWdlbiB3b3p1IGRpZSBnZWhcdTAwRjZyZW4gXHJcbi0gYmVpIHNob3cgbW9yZSB1bnRlbiBkcnVudGVyIFRhYnMgXHUwMEY2ZmZuZW5cclxuLSB3ZW5uIG1hbiBhdWYgZGllIFBlcnNvbiBrbGlja3Qgc29sbCBlcyBJbmZvcyBcdTAwRkNiZXIgZGllIFBlcnNvbiBhbnplaWdlbiBcclxuLSBrYW5uIG1uIGRpZSBLYXJ0ZW4gbmFjaCBMaW5rcyB1bmQgbmFjaCByZWNodHMgYXVzd2VpdGVuIHpiIGZcdTAwRkNyIE1laHIgaW5mb3MgZlx1MDBGQ3IgZGllIFBlcnNvbj8gXHJcbi0gRmlsdGVyIG1pdCBIYWxia3JlaXNEaW5nIGFscyBUYWJzdGV1ZXJ1bmcgfCBFaW50ZWlsdW5nIG5hY2ggQmVyZWljaCAoQWNhZGVtaWEsIEluc3VzdHJ5LCAuLi4sIHVuZCBhdWNoIG5hY2ggRGVsaXZlcnkgdW5kIE1lY2hhbmlzbSkgXHJcbi0gRE5BIFN0cmFuZyBhbHMgVGltZWxpbmU/IFxyXG4qL1xyXG5cclxuXHJcbi8qICAgICAgICAgIDxici8+XHJcbiAgICAgICAgICAgIDxoMz5OYW1lPC9oMz5cclxuICAgICAgICAgICAgPGhyLz5cclxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3dcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wtMlwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInQtdGFnIFRhZ1wiPlxyXG4gICAgICAgICAgICAgICAgQmVydWZcclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPk9yaWdpbmFsIGxhbmd1YWdlOiBHZXJtYW48L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93XCI+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgICAgICAgIDxCbG9ja1F1b3RlQiB0ZXh0PVwiUXVvdGVcIiBjaXRlPVwiLlwiPjwvQmxvY2tRdW90ZUI+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wtM1wiPlxyXG4gICAgICAgICAgICAgICAgPGltZyBjbGFzc05hbWU9XCJtaWRkbGUgc2VjaHByb1wiIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3BsYWNlaG9sZGVycy9wbGFjZWhpbGRlcnBlcnNvbi5qcGVnXCIvPlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGg0PkFpbSBvZiBjb250YWN0PC9oND5cclxuICAgICAgICAgICAgPHA+PC9wPlxyXG4gICAgICAgICAgICA8aDQ+SW5zaWdodHM8L2g0PlxyXG4gICAgICAgICAgICA8cD48L3A+XHJcbiAgICAgICAgICAgIDxoND5DbGFyaWZpY2F0aW9uPC9oND5cclxuICAgICAgICAgICAgPHA+PC9wPlxyXG4gICAgICAgICAgICA8aDQ+SW1wbGVtZW50YXRpb248L2g0PlxyXG4gICAgICAgICAgICA8cD48L3A+ICovXHJcblxyXG5cclxuLypcclxuICA8aDQ+QWltIG9mIGNvbnRhY3Q8L2g0PlxyXG4gIDxwPjwvcD5cclxuICA8aDQ+SW5zaWdodHM8L2g0PlxyXG4gIDxwPjwvcD5cclxuICA8aDQ+Q2xhcmlmaWNhdGlvbjwvaDQ+XHJcbiAgPHA+PC9wPlxyXG4gIDxoND5JbXBsZW1lbnRhdGlvbjwvaDQ+XHJcbiAgPHA+PC9wPiBcclxuICAgICAgICAgICAgKi9cclxuaW1wb3J0IHsgb3BlbkVsZW1lbnQgfSBmcm9tIFwiLi4vLi4vdXRpbHMvb3BlbkVsZW1lbnRcIjtcclxuaW1wb3J0IHsgSFBPdmVydmlldyB9IGZyb20gXCIuL092ZXJ3aWV2XCI7XHJcbmltcG9ydCB7IEhQSW50cm9kdWN0aW9uIH0gZnJvbSBcIi4vSW50cm9kdWN0aW9uXCI7XHJcbmltcG9ydCB7IEhQSW50ZWdyYXRlZCB9IGZyb20gXCIuL0lIUFwiO1xyXG5pbXBvcnQgeyBIUEZ1cnRoZXJFbmdhZ2VtZW50IH0gZnJvbSBcIi4vRnVydGhlciBFbmdhZ2VtZW50L0Z1cnRoZXJFbmdhZ2VtZW50XCI7XHJcbmltcG9ydCB7IEhQU3VwcGxlbWVudCB9IGZyb20gXCIuL0Z1cnRoZXIgRW5nYWdlbWVudC9TdXBNYXRlcmlhbFwiO1xyXG5pbXBvcnQgeyB1c2VUYWJOYXZpZ2F0aW9uIH0gZnJvbSBcIi4uLy4uL3V0aWxzL1RhYk5hdmlnYXRpb25cIjtcclxuaW1wb3J0IHsgSFBBYnN0cmFjdCB9IGZyb20gXCIuL0hQLWFic3RyYWN0XCI7XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gSHVtYW5QcmFjdGljZXMoKSB7XHJcbiAgdXNlVGFiTmF2aWdhdGlvbigpO1xyXG4gIFxyXG4gIFxyXG4gIG9wZW5FbGVtZW50KHtidXR0b25DbGFzczogXCJ0YWJidXR0b25cIiwgZWxlbWVudFRvT3BlbjogXCJBbGxcIiwgY2xhc3NUb0hpZGU6IFwidGltZWxpbmVjYXJkdGFic1wiLCB9KTsgXHJcblxyXG4gIHJldHVybiAoICBcclxuICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgIDxIUEFic3RyYWN0Lz5cclxuICAgICAgPEhQT3ZlcnZpZXcvPlxyXG4gICAgICA8SFBJbnRyb2R1Y3Rpb24vPlxyXG4gICAgICA8SFBJbnRlZ3JhdGVkLz5cclxuICAgICAgPEhQRnVydGhlckVuZ2FnZW1lbnQvPlxyXG4gICAgICA8SFBTdXBwbGVtZW50Lz5cclxuICAgIDwvZGl2PlxyXG4gICAgXHJcbiAgXHJcbiAgKTsgIFxyXG59XHJcblxyXG5cclxuIiwgImltcG9ydCB7IGNyZWF0ZVNpZGViYXIgfSBmcm9tIFwiLi4vdXRpbHMvY3JlYXRlU2lkZWJhclwiO1xyXG5cclxuXHJcblxyXG5leHBvcnQgZnVuY3Rpb24gSHBTaWRlYmFyKCl7XHJcbiAgICBsZXQgc2lkZWJhciA9IGNyZWF0ZVNpZGViYXIodGFicyk7IFxyXG4gICAgcmV0dXJuKFxyXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sLTIgZC1ub25lIGQtbGctYmxvY2tcIj5cclxuICAgICAgICAgICB7c2lkZWJhcn1cclxuICAgICAgICA8L2Rpdj5cclxuICAgIClcclxufVxyXG5cclxuY29uc3QgdGFicyA9IFtcclxuICAgIHt0YWI6IFwiQWJzdHJhY3RcIn0sIFxyXG4gICAgeyB0YWI6IFwiT3ZlcnZpZXdcIiB9LFxyXG4gICAge3RhYjogXCJJbnRyb2R1Y3Rpb25cIn0sXHJcbiAgICB7dGFiOiBcIkludGVncmF0ZWQgSHVtYW4gUHJhY3RpY2VzXCIsIHN1YnRhYnM6IFtcIkZyYW1ld29ya1wiLCBcIlRpbWVsaW5lXCIsIFwiRmVlZGJhY2sgJiBJbXBsZW1lbnRhdGlvblwiLCBcIkNvbmNsdXNpb25cIl19LFxyXG4gICAge3RhYjogXCJGdXJ0aGVyIEVuZ2FnZW1lbnRcIiwgc3VidGFiczogWyBcIkVkdWNhdGlvblwiLCBcIlB1YmxpYyBFbmdhZ2VtZW50XCIsIFwiRW50cmVwcmVuZXVyc2hpcFwiLCBcIkNvbGxhYm9yYXRpb25zXCIsIFwiUGFydG5lcnNoaXBzXCJdfSxcclxuICAgIHt0YWI6IFwiU3VwcGxlbWVudGFyeSBNYXRlcmlhbFwifSxcclxuICAgIC8vIHt0YWI6IFwiXCJ9LFxyXG4gIF07IiwgIlxyXG5pbXBvcnQgeyBIMiB9IGZyb20gXCIuLi9jb21wb25lbnRzL0hlYWRpbmdzXCI7XHJcbmltcG9ydCB7IHVzZVRhYk5hdmlnYXRpb24gfSBmcm9tIFwiLi4vdXRpbHMvVGFiTmF2aWdhdGlvblwiO1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIEltcHJlc3N1bSgpIHtcclxuICB1c2VUYWJOYXZpZ2F0aW9uKCk7XHJcbiAgcmV0dXJuIChcclxuICAgIDw+XHJcbiAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93XCI+XHJcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICA8SDIgaWQ9XCJpbXByZXNzdW1cIiB0ZXh0PVwiSW1wcmVzc3VtXCIvPlxyXG4gICAgICAgICAgPGhyIC8+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvd1wiPlxyXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICA8cD5cclxuICAgICAgICAgICAgPGgzPjxiPmlHRU0gVGVhbSBCaWVsZWZlbGQgQ2VCaVRlYyAyMDI0PC9iPjwvaDM+XHJcbiAgICAgICAgICAgIDxiPlJlc3BvbnNpYmxlIGZvciB0aGUgY29udGVudCBhY2NvcmRpbmcgdG8gXHUwMEE3IDUgVE1HIGFuZCBhY2NvcmRpbmcgdG8gXHUwMEE3IDU1IEFicy4gMiBSU3RWIEdlcm1hbnk6PC9iPjxiciAvPlxyXG4gICAgICAgICAgICBKXHUwMEY2cm4gS2FsaW5vd3NraTxiciAvPlxyXG4gICAgICAgICAgICBVbml2ZXJzaXRcdTAwRTR0c3N0cmFcdTAwREZlIDI1PGJyIC8+XHJcbiAgICAgICAgICAgIDMzNjE1IEJpZWxlZmVsZDxiciAvPlxyXG4gICAgICAgICAgICA8YnIgLz5cclxuICAgICAgICAgICAgPGI+Q29udGFjdDwvYj48YnIgLz5cclxuICAgICAgICAgICAgRS1tYWlsOiB0ZWFtMjAyNEBpZ2VtLWJpZWxlZmVsZC5kZTxiciAvPlxyXG4gICAgICAgICAgICA8YnIgLz5cclxuICAgICAgICAgICAgPGI+U3VwZXJ2aXNvcnkgQXV0aG9yaXR5PC9iPjxiciAvPlxyXG4gICAgICAgICAgICBCaWVsZWZlbGQgVW5pdmVyc2l0eSAtIENlbnRlciBmb3IgQmlvdGVjaG5vbG9neSAoQ2VCaVRlYylcclxuICAgICAgICAgIDwvcD5cclxuICAgICAgICA8L2Rpdj4gIFxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvPlxyXG4gICk7XHJcbn1cclxuICAiLCAiaW1wb3J0IHsgQmFja1VwIH0gZnJvbSBcIi4uL2NvbXBvbmVudHMvQnV0dG9uc1wiO1xyXG5pbXBvcnQgSDEsIHsgSDIgfSBmcm9tIFwiLi4vY29tcG9uZW50cy9IZWFkaW5nc1wiO1xyXG5pbXBvcnQgeyB1c2VUYWJOYXZpZ2F0aW9uIH0gZnJvbSBcIi4uL3V0aWxzL1RhYk5hdmlnYXRpb25cIjtcclxuXHJcblxyXG5leHBvcnQgZnVuY3Rpb24gUGFydG5lcnMoKSB7XHJcbiAgdXNlVGFiTmF2aWdhdGlvbigpO1xyXG4gICAgcmV0dXJuIChcclxuICAgICAgPD5cclxuICAgICAgPGRpdiBpZD1cInNpZGViYXJib3hcIiBjbGFzc05hbWU9XCJjb2wtMSAgZC1sZy1ibG9ja1wiPiA8L2Rpdj5cclxuICAgICAgICA8YnIvPiBcclxuICAgICAgICA8SDEgIHRleHQ9XCJBIGJpZyB0aGFuayB5b3UgdG8gYWxsIG91ciBzcG9uc29ycyBhbmQgcGFydG5lcnMhXCI+PC9IMT5cclxuICAgICAgICA8YnIvPlxyXG4gICAgICAgIDxici8+XHJcblxyXG4gICAgICAgIDxici8+IFxyXG4gICAgICAgIHsvKiBHT0xEICovfVxyXG4gICAgICAgIDxIMiBpZD1cImdvbGRcIiB0ZXh0PVwiU3BvbnNvciBjYXRlZ29yeSBHb2xkXCIvPlxyXG4gICAgICAgIDxici8+IFxyXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3cgYWxpZ24taXRlbXMtY2VudGVyXCI+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj4gXHJcbiAgICAgICAgICAgICAgICA8YSBjbGFzc05hbWU9XCJzcG9uc29yLWNvbnRhaW5lciBzcC1hXCIgaHJlZj1cImh0dHBzOi8vd3d3LnVuaS1iaWVsZWZlbGQuZGUvXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3NOYW1lPVwiaW1nLXNwb25zb3ItYVwiIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2xvZ29zLXRlYW0vdW5pLWJpZWxlZmVsZC1kdW5rZWwucG5nXCIvPlxyXG4gICAgICAgICAgICAgICAgPC9hPlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sLTFcIj48L2Rpdj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgICAgPGEgY2xhc3NOYW1lPVwic3BvbnNvci1jb250YWluZXIgc3AtYVwiIGhyZWY9XCJodHRwczovL3d3dy5jZWJpdGVjLnVuaS1iaWVsZWZlbGQuZGUvXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3NOYW1lPVwiaW1nLXNwb25zb3ItYVwiIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Nwb25zb3JzL2NlYml0ZWMtZmFyYmUucG5nXCIvPlxyXG4gICAgICAgICAgICAgICAgPC9hPlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgPGJyLz4gXHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGJyLz4gXHJcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3cgYWxpZ24taXRlbXMtY2VudGVyXCI+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbC01IHNwb25zb3ItcG9ydHJhaXRcIj5cclxuICAgICAgICAgICAgPGEgaHJlZj1cImh0dHA6Ly93d3cuemVpc3MuZGUvbmF0dXJ3aXNzZW5zY2hhZnRlblwiPlxyXG4gICAgICAgICAgICA8ZGl2IGlkPVwiemVpc3MtcG9ydHJhaXRcIiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgICAgICA8aW1nIGlkPVwiemVpc3MtcG9ydHJhaXQtbG9nb1wiIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Nwb25zb3JzL3plaXNzLnBuZ1wiPjwvaW1nPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9hPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8ZGl2IGlkPVwiemVpc3MtdGV4dFwiIGNsYXNzTmFtZT1cImNvbCBzcG9uc29yLXRleHQtcmlnaHRcIj5cclxuICAgICAgICAgICAgPGg0PlpFSVNTIGlzdCBUZWNobm9sb2dpZS4gWkVJU1MgaXN0IE9wdGlrIHVuZCBJbm5vdmF0aW9uLjwvaDQ+XHJcbiAgICAgICAgICAgIDxici8+XHJcbiAgICAgICAgICAgIDxwPldlIGRldmVsb3AsIG1hbnVmYWN0dXJlIGFuZCBzZWxsIGhpZ2hseSBpbm5vdmF0aXZlIHByb2R1Y3RzIGFuZCBzb2x1dGlvbnMgZm9yIG91ciBjdXN0b21lcnMgaW4gYSB3aWRlIHJhbmdlIG9mIGJ1c2luZXNzIGFyZWFzIC0gYW5kIGluIGRvaW5nIHNvLCB3ZSBwdXNoIHRoZSBib3VuZGFyaWVzIG9mIHdoYXQgaXMgcG9zc2libGUuIEFzIGEgbGVhZGluZyBnbG9iYWwgdGVjaG5vbG9neSBjb21wYW55IHdpdGggYSBzdHJvbmcgYnJhbmQgYW5kIGEgcG9ydGZvbGlvIHRoYXQgaXMgZ2VhcmVkIHRvd2FyZHMgZnV0dXJlIGdyb3d0aCBhcmVhcyBzdWNoIGFzIGRpZ2l0YWxpemF0aW9uLCBoZWFsdGhjYXJlIGFuZCBJbmR1c3RyeSA0LjAsIHdlIGFyZSBzaGFwaW5nIHRoZSBmdXR1cmUgZmFyIGJleW9uZCB0aGUgb3B0aWNhbCBhbmQgb3B0b2VsZWN0cm9uaWMgc2VjdG9yLiBaRUlTUycgc3VjY2VzcyBhbmQgdGhlIGNvbnRpbnVlZCBleHBhbnNpb24gb2YgaXRzIHRlY2hub2xvZ3kgYW5kIG1hcmtldCBsZWFkZXJzaGlwIGFyZSBiYXNlZCBvbiBpdHMgc3VzdGFpbmVkIGhpZ2ggbGV2ZWwgb2YgaW52ZXN0bWVudCBpbiByZXNlYXJjaCBhbmQgZGV2ZWxvcG1lbnQuIEZvdW5kZWQgaW4gSmVuYSBpbiAxODQ2LCB0aGUgY29tcGFueSBpcyBoZWFkcXVhcnRlcmVkIGluIE9iZXJrb2NoZW4sIEdlcm1hbnkuIFRoZSBzb2xlIG93bmVyIG9mIHRoZSBwYXJlbnQgY29tcGFueSwgQ2FybCBaZWlzcyBBRywgaXMgdGhlIENhcmwgWmVpc3MgRm91bmRhdGlvbiwgb25lIG9mIHRoZSBsYXJnZXN0IEdlcm1hbiBmb3VuZGF0aW9ucyBmb3IgdGhlIHByb21vdGlvbiBvZiBzY2llbmNlLjwvcD5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICBcclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8YnIvPiA8YnIvPiBcclxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvdyBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cclxuICAgICAgICAgIDxkaXYgaWQ9XCJpZHQtdGV4dFwiIGNsYXNzTmFtZT1cImNvbCBzcG9uc29yLXRleHQtbGVmdFwiPlxyXG4gICAgICAgICAgICAgIDxoND5BY2NlbGVyYXRlIHRoZSBwYWNlIG9mIGdlbm9taWNzLiBXZSdsbCBoZWxwLjwvaDQ+XHJcbiAgICAgICAgICAgICAgPGJyLz5cclxuICAgICAgICAgICAgICA8cD4gRm9yIG1vcmUgdGhhbiAzNSB5ZWFycywgSW50ZWdyYXRlZCBETkEgVGVjaG5vbG9naWVzIChJRFQpICBoYXMgZW1wb3dlcmVkIGdlbm9taWNzIGxhYm9yYXRvcmllcyB3aXRoIGFuIG9saWdvbnVjbGVvdGlkZSBtYW51ZmFjdHVyaW5nIHByb2Nlc3MgdW5saWtlIGFueW9uZSBlbHNlIGluIHRoZSBpbmR1c3RyeSwgZmVhdHVyaW5nIHRoZSBtb3N0IGFkdmFuY2VkIHN5bnRoZXNpcywgbW9kaWZpY2F0aW9uLCBwdXJpZmljYXRpb24sIGFuZCBxdWFsaXR5IGNvbnRyb2wgY2FwYWJpbGl0aWVzIGF2YWlsYWJsZS4gSURUIGhhcyBzdXBwb3J0ZWQgaUdFTSB0ZWFtIGZvciBvdmVyIGEgZGVjYWRlIHdpdGggMjBrYiBvZiBmcmVlIEROQSB0byBoZWxwIGFjY2VsZXJhdGUgdGhlaXIgaW5zcGlyaW5nIHByb2plY3RzIGZvciB0aGUgR3JhbmQgSmFtYm9yZWUuIFNpbmNlIGl0cyBmb3VuZGluZyBpbiAxOTg3LCBJRFQgaGFzIHByb2dyZXNzZWQgZnJvbSBhIGxlYWRpbmcgb2xpZ28gbWFudWZhY3R1cmVyIHRvIGEgZ2Vub21pY3Mgc29sdXRpb25zIHByb3ZpZGVyIHN1cHBvcnRpbmcga2V5IGFwcGxpY2F0aW9uIGFyZWFzIHN1Y2ggYXMgbmV4dCBnZW5lcmF0aW9uIHNlcXVlbmNpbmcsIENSSVNQUiBnZW5vbWUgZWRpdGluZywgc3ludGhldGljIGJpb2xvZ3ksIGRpZ2l0YWwgUENSLCBhbmQgUk5BIGludGVyZmVyZW5jZS4gSURUIG1hbnVmYWN0dXJlcyBwcm9kdWN0cyB1c2VkIGJ5IHNjaWVudGlzdHMgcmVzZWFyY2hpbmcgdGhlIHRvdWdoZXN0IGNoYWxsZW5nZXMgZmFjaW5nIG91ciBwbGFuZXQgdG9kYXkgYXMgd2VsbCBhcyBtYW55IGZvcm1zIG9mIGNhbmNlciBhbmQgbW9zdCBpbmhlcml0ZWQgYW5kIGluZmVjdGlvdXMgZGlzZWFzZXMuIDwvcD5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPGEgaHJlZj1cImh0dHBzOi8vd3d3LmlkdGRuYS5jb20vXCIgaWQ9XCJpZHQtcG9ydHJhaXRcIiBjbGFzc05hbWU9XCJjb2wtNSBzcG9uc29yLXBvcnRyYWl0XCI+XHJcbiAgICAgICAgICA8L2E+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGJyLz4gPGJyLz4gXHJcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3cgYWxpZ24taXRlbXMtY2VudGVyXCI+XHJcbiAgICAgICAgICA8ZGl2IGlkPVwiaW50ZWdyYS1wb3J0cmFpdFwiIGNsYXNzTmFtZT1cImNvbC01IHNwb25zb3ItcG9ydHJhaXRcIj5cclxuICAgICAgICAgIDxhIGhyZWY9XCJodHRwczovL3d3dy5pbnRlZ3JhLWJpb3NjaWVuY2VzLmNvbVwiPlxyXG4gICAgICAgICAgICA8aW1nIGlkPVwiaW50ZWdyYS1wb3J0cmFpdC1sb2dvXCIgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvc3BvbnNvcnMvaW50ZWdyYS1oaW50ZXJsZWd0LmpwZWdcIj48L2ltZz5cclxuICAgICAgICAgIDwvYT5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPGRpdiBpZD1cImludGVncmEtdGV4dFwiIGNsYXNzTmFtZT1cImNvbCBzcG9uc29yLXRleHQtcmlnaHRcIj5cclxuICAgICAgICAgICAgPGg0PiBZb3VyIFJlbGlhYmxlIFBhcnRuZXIgRm9yIFByb2R1Y3RpdmUgUGlwZXR0ZXMgPC9oND5cclxuICAgICAgICAgICAgPGJyLz5cclxuICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgIElOVEVHUkEgQmlvc2NpZW5jZXMgaXMgYVxyXG4gICAgICAgICAgICBsZWFkaW5nIHByb3ZpZGVyIG9mIGhpZ2gtcXVhbGl0eSBsYWJvcmF0b3J5IHRvb2xzIGFuZCBjb25zdW1hYmxlcyBmb3JcclxuICAgICAgICAgICAgbGlxdWlkIGhhbmRsaW5nLiBUaGUgY29tcGFueSBpcyBjb21taXR0ZWQgdG8gY3JlYXRpbmcgaW5ub3ZhdGl2ZVxyXG4gICAgICAgICAgICBzb2x1dGlvbnMgd2hpY2ggZnVsZmlsIHRoZSBuZWVkcyBvZiBpdHMgY3VzdG9tZXJzIGluIHJlc2VhcmNoLCBkaWFnbm9zdGljc1xyXG4gICAgICAgICAgICBhbmQgcXVhbGl0eSBjb250cm9sIHdpdGhpbiB0aGUgbGlmZSBzY2llbmNlcyBtYXJrZXRzIGFuZCBtZWRpY2FsIHNlY3Rvci5cclxuICAgICAgICAgICAgSU5URUdSQVx1MjAxOXMgZW5naW5lZXJpbmcgYW5kIHByb2R1Y3Rpb24gdGVhbXMgaW4gWml6ZXJzLCBTd2l0emVybGFuZCBhbmRcclxuICAgICAgICAgICAgSHVkc29uLCBOSCwgVVNBLCBzdHJpdmUgdG8gZGV2ZWxvcCBhbmQgbWFudWZhY3R1cmUgaW5zdHJ1bWVudHMgYW5kXHJcbiAgICAgICAgICAgIGNvbnN1bWFibGVzIG9mIG91dHN0YW5kaW5nIHF1YWxpdHkuIFRvZGF5LCBJTlRFR1JBXHUyMDE5cyBpbm5vdmF0aXZlXHJcbiAgICAgICAgICAgIGxhYm9yYXRvcnkgcHJvZHVjdHMgYXJlIHdpZGVseSB1c2VkIGFsbCBhcm91bmQgdGhlIHdvcmxkIHdoZXJlIHRoZXkgaGVscFxyXG4gICAgICAgICAgICBzY2llbnRpc3RzIGFjY2VsZXJhdGUgc2NpZW50aWZpYyBkaXNjb3ZlcnkuIE91ciByZXZvbHV0aW9uYXJ5IGNvbmNlcHRcclxuICAgICAgICAgICAgY29tYmluZXMgaW5ub3ZhdGl2ZSBwaXBldHRpbmcgd2l0aCB0aGUgbW9zdCBtb2Rlcm4gcm9ib3RpY3MuXHJcbiAgICAgICAgICAgIDwvcD5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxici8+IDxici8+IFxyXG4gICAgICAgIHsvKiBTSUxWRVIgKi99XHJcbiAgICAgICAgPEgyIHRleHQ9XCJTcG9uc29yIGNhdGVnb3J5IHNpbHZlclwiIGlkPVwic2lsdmVyXCIvPlxyXG4gICAgICAgIDxici8+IDxici8+XHJcbiAgICAgICAgPGRpdiBpZD1cInByb2plY3QtcG9ydHJhaXRcIiBjbGFzc05hbWU9XCJzcG9uc29yLXBvcnRyYWl0XCIgc3R5bGU9e3twYWRkaW5nOiBcIjIwcHhcIn19PlxyXG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3cgYWxpZ24taXRlbXMtY2VudGVyXCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICAgICAgPGEgY2xhc3NOYW1lPVwic3BvbnNvci1jb250YWluZXJcIiBocmVmPVwiaHR0cHM6Ly93d3cuenltb3Jlc2VhcmNoLmNvbS9cIj5cclxuICAgICAgICAgICAgICAgICAgPGltZyBjbGFzc05hbWU9XCJpbWctc3BvbnNvci1wYXJ0bmVyLXBhZ2Ugc2lkZS1tYXJnaW5zLWF1dG9cIiBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9zcG9uc29ycy96eW1vLnBuZ1wiLz5cclxuICAgICAgICAgICAgICAgIDwvYT5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICAgIDxhIGNsYXNzTmFtZT1cInNwb25zb3ItY29udGFpbmVyXCIgaHJlZj1cImh0dHBzOi8vd3d3LnN0ZW1jZWxsLmNvbS9cIj5cclxuICAgICAgICAgICAgICAgICAgPGltZyBjbGFzc05hbWU9XCJpbWctc3BvbnNvci1wYXJ0bmVyLXBhZ2Ugc2lkZS1tYXJnaW5zLWF1dG9cIiBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9zcG9uc29ycy9zdGVtY2VsbC1sb2dvLnBuZ1wiLz5cclxuICAgICAgICAgICAgICAgIDwvYT5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICAgICAgICA8YSBjbGFzc05hbWU9XCJzcG9uc29yLWNvbnRhaW5lclwiIGhyZWY9XCJodHRwczovL3d3dy5wbGFzbWlkZmFjdG9yeS5jb20vXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3NOYW1lPVwiaW1nLXNwb25zb3ItcGFydG5lci1wYWdlIHNpZGUtbWFyZ2lucy1hdXRvXCIgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvc3BvbnNvcnMvcGxhc21pZGZhY3RvcnkucG5nXCIvPlxyXG4gICAgICAgICAgICAgICAgPC9hPlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvdyBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj4gXHJcbiAgICAgICAgICAgICAgPGEgY2xhc3NOYW1lPVwic3BvbnNvci1jb250YWluZXJcIiBocmVmPVwiaHR0cHM6Ly93d3cuZHJ3b2xmZmdyb3VwLmNvbS9lbi9cIj5cclxuICAgICAgICAgICAgICAgICAgPGltZyBjbGFzc05hbWU9XCJpbWctc3BvbnNvci1wYXJ0bmVyLXBhZ2Ugc2lkZS1tYXJnaW5zLWF1dG9cIiBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9zcG9uc29ycy9sb2dvLXdvbGZmLnBuZ1wiLz5cclxuICAgICAgICAgICAgICAgIDwvYT5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICAgICAgICA8YSBjbGFzc05hbWU9XCJzcG9uc29yLWNvbnRhaW5lclwiIGhyZWY9XCJodHRwczovL3NuYXBnZW5lLmNvbVwiPlxyXG4gICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzTmFtZT1cImltZy1zcG9uc29yLXBhcnRuZXItcGFnZSBzaWRlLW1hcmdpbnMtYXV0b1wiIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Nwb25zb3JzL3NuYXBnZW5lLnBuZ1wiLz5cclxuICAgICAgICAgICAgICAgIDwvYT5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgICAgICA8YSBjbGFzc05hbWU9XCJzcG9uc29yLWNvbnRhaW5lclwiIGhyZWY9XCJodHRwczovL2Jpby5ucncuZGUvXCI+XHJcbiAgICAgICAgICAgICAgICA8aW1nIGNsYXNzTmFtZT1cImltZy1zcG9uc29yLXBhcnRuZXItcGFnZSBzaWRlLW1hcmdpbnMtYXV0b1wiIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Nwb25zb3JzL2Jpb25ydy1sb2dvLnBuZ1wiLz5cclxuICAgICAgICAgICAgICA8L2E+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGJyLz4gPGJyLz4gXHJcbiAgICAgICAgey8qIEJST05aRSAqL31cclxuICAgICAgICA8SDIgdGV4dD1cIlNwb25zb3IgY2F0ZWdvcnkgYnJvbnplXCIgaWQ9XCJicm9uemVcIj48L0gyPlxyXG4gICAgICAgIDxici8+IDxici8+XHJcbiAgICAgICAgPGRpdiBpZD1cInByb2plY3QtcG9ydHJhaXRcIiBjbGFzc05hbWU9XCJzcG9uc29yLXBvcnRyYWl0XCIgc3R5bGU9e3twYWRkaW5nOiBcIjIwcHhcIn19PlxyXG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3cgYWxpZ24taXRlbXMtY2VudGVyXCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICAgICAgPGEgY2xhc3NOYW1lPVwic3BvbnNvci1jb250YWluZXJcIiBocmVmPVwiaHR0cHM6Ly93d3cucHJvbWVnYS5jb21cIj5cclxuICAgICAgICAgICAgICAgIDxpbWcgY2xhc3NOYW1lPVwiaW1nLXNwb25zb3ItcGFydG5lci1wYWdlIHNpZGUtbWFyZ2lucy1hdXRvXCIgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvc3BvbnNvcnMvcHJvbWVnYS1nZWxiLnBuZ1wiLz5cclxuICAgICAgICAgICAgICA8L2E+XHJcbiAgICAgICAgICAgIDwvZGl2PiAgXHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICAgICAgPGEgY2xhc3NOYW1lPVwic3BvbnNvci1jb250YWluZXJcIiBocmVmPVwiaHR0cHM6Ly93d3cubWljcm9zeW50aC5jb21cIj5cclxuICAgICAgICAgICAgICAgIDxpbWcgY2xhc3NOYW1lPVwiaW1nLXNwb25zb3ItcGFydG5lci1wYWdlIHNpZGUtbWFyZ2lucy1hdXRvXCIgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvc3BvbnNvcnMvbWljcm9zeW50aC1sb2dvLnBuZ1wiLz5cclxuICAgICAgICAgICAgICA8L2E+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgIDxhIGNsYXNzTmFtZT1cInNwb25zb3ItY29udGFpbmVyXCIgaHJlZj1cImh0dHBzOi8vd3d3Lm5lYi5jb20vZW4vXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3NOYW1lPVwiaW1nLXNwb25zb3ItcGFydG5lci1wYWdlIHNpZGUtbWFyZ2lucy1hdXRvXCIgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvc3BvbnNvcnMvbmViLWxvZ28ucG5nXCIvPlxyXG4gICAgICAgICAgICAgIDwvYT5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8YnIvPiA8YnIvPlxyXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG4gICAgICAgICAgPGRpdiBpZD1cInByb2plY3QtdGV4dFwiIGNsYXNzTmFtZT1cImNvbCBzcG9uc29yLXRleHQtbGVmdFwiPlxyXG4gICAgICAgICAgICAgIDxIMiB0ZXh0PVwiQkZIIE1lZXRVcCBzcG9uc29yc1wiIGlkPVwiYmZoLXNwb25zb3JzXCIvPlxyXG4gICAgICAgICAgICAgIDxici8+XHJcbiAgICAgICAgICAgICAgPHA+PC9wPiBcclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPGRpdiBpZD1cInByb2plY3QtcG9ydHJhaXRcIiBjbGFzc05hbWU9XCJjb2wtNSBzcG9uc29yLXBvcnRyYWl0XCIgc3R5bGU9e3twYWRkaW5nOiBcIjIwcHhcIn19PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvdyBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cclxuICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICAgICAgICA8YSBjbGFzc05hbWU9XCJzcG9uc29yLWNvbnRhaW5lclwiIGhyZWY9XCJodHRwczovL3d3dy5naXAuY29tL2hvbWUvXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3NOYW1lPVwiaW1nLXNwb25zb3ItcGFydG5lci1wYWdlIHNpZGUtbWFyZ2lucy1hdXRvXCIgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvc3BvbnNvcnMvZ2lwLnBuZ1wiIC8+XHJcbiAgICAgICAgICAgICAgICA8L2E+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgICAgICAgIDxhIGNsYXNzTmFtZT1cInNwb25zb3ItY29udGFpbmVyXCIgaHJlZj1cImh0dHBzOi8vd3d3LmplbmFiaW9zY2llbmNlLmNvbS9cIj5cclxuICAgICAgICAgICAgICAgICAgPGltZyBjbGFzc05hbWU9XCJpbWctc3BvbnNvci1wYXJ0bmVyLXBhZ2Ugc2lkZS1tYXJnaW5zLWF1dG9cIiBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9zcG9uc29ycy9qYnMtZHVua2VsZ3J1ZW4tdGV4dC5wbmdcIi8+XHJcbiAgICAgICAgICAgICAgICA8L2E+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvdyBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgIDxhIGNsYXNzTmFtZT1cInNwb25zb3ItY29udGFpbmVyXCIgaHJlZj1cImh0dHBzOi8vdi1iaW8udmVudHVyZXMvXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3NOYW1lPVwiaW1nLXNwb25zb3ItcGFydG5lci1wYWdlIHNpZGUtbWFyZ2lucy1hdXRvXCIgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvc3BvbnNvcnMvdmJpby1sb2dvLnBuZ1wiLz5cclxuICAgICAgICAgICAgICAgIDwvYT5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPiBcclxuICAgICAgICAgICAgICA8YSBjbGFzc05hbWU9XCJzcG9uc29yLWNvbnRhaW5lclwiIGhyZWY9XCJodHRwczovL3d3dy5tbi1uZXQuY29tL1wiPlxyXG4gICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzTmFtZT1cImltZy1zcG9uc29yLXBhcnRuZXItcGFnZSBzaWRlLW1hcmdpbnMtYXV0b1wiIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Nwb25zb3JzL21uLWxvZ28ucG5nXCIvPlxyXG4gICAgICAgICAgICAgICAgPC9hPlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3cgYWxpZ24taXRlbXMtY2VudGVyXCI+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgICAgICA8YSBjbGFzc05hbWU9XCJzcG9uc29yLWNvbnRhaW5lclwiIGhyZWY9XCJodHRwczovL3d3dy5maXotYmlvdGVjaC5kZS9cIj5cclxuICAgICAgICAgICAgICAgICAgPGltZyBjbGFzc05hbWU9XCJpbWctc3BvbnNvci1wYXJ0bmVyLXBhZ2Ugc2lkZS1tYXJnaW5zLWF1dG9cIiBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9zcG9uc29ycy9maXotbG9nby5wbmdcIi8+XHJcbiAgICAgICAgICAgICAgICA8L2E+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj4gXHJcbiAgICAgICAgICAgICAgPGEgY2xhc3NOYW1lPVwic3BvbnNvci1jb250YWluZXJcIiBocmVmPVwiaHR0cHM6Ly93d3cuY2VsbHNpZ25hbC5jb20vXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3NOYW1lPVwiaW1nLXNwb25zb3ItcGFydG5lci1wYWdlIHNpZGUtbWFyZ2lucy1hdXRvXCIgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvc3BvbnNvcnMvY2VsbC1zaWduYWxpbmctdGVjaG5vbG9neS1sb2dvLnBuZ1wiLz5cclxuICAgICAgICAgICAgICAgIDwvYT5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICAgICAgPGEgY2xhc3NOYW1lPVwic3BvbnNvci1jb250YWluZXJcIiBocmVmPVwiaHR0cHM6Ly9nYXNiLmRlL1wiPlxyXG4gICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzTmFtZT1cImltZy1zcG9uc29yLXBhcnRuZXItcGFnZSBzaWRlLW1hcmdpbnMtYXV0b1wiIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Nwb25zb3JzL2dhc2ItbG9nby5qcGdcIi8+XHJcbiAgICAgICAgICAgICAgICA8L2E+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICBcclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxici8+IDxici8+IFxyXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG4gICAgICAgICAgPGRpdiBpZD1cIm1lZXR1cC1wb3J0cmFpdFwiIGNsYXNzTmFtZT1cImNvbC01IHNwb25zb3ItcG9ydHJhaXRcIiBzdHlsZT17e3BhZGRpbmc6IFwiMjBweFwifX0+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvdyBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgICAgPGEgY2xhc3NOYW1lPVwic3BvbnNvci1jb250YWluZXJcIiBocmVmPVwiaHR0cHM6Ly93d3cuYXNpbW92LmNvbS9cIj5cclxuICAgICAgICAgICAgICAgICAgPGltZyBjbGFzc05hbWU9XCJpbWctc3BvbnNvci1wYXJ0bmVyLXBhZ2Ugc2lkZS1tYXJnaW5zLWF1dG9cIiBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9zcG9uc29ycy9hc2ltb3YtY29sb3JmdWwucG5nXCIvPlxyXG4gICAgICAgICAgICAgICAgPC9hPlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICAgICAgPGEgY2xhc3NOYW1lPVwic3BvbnNvci1jb250YWluZXJcIiBocmVmPVwiaHR0cHM6Ly93d3cudW5pLWJpZWxlZmVsZC5kZS9mYWt1bHRhZXRlbi90ZWNobmlzY2hlLWZha3VsdGFldC9hcmJlaXRzZ3J1cHBlbi9tdWx0aXNjYWxlLWJpb2VuZ2luZWVyaW5nL2NhbXB1c2JyYXVlcmVpL1wiPlxyXG4gICAgICAgICAgICAgICAgPGltZyBjbGFzc05hbWU9XCJpbWctc3BvbnNvci1wYXJ0bmVyLXBhZ2Ugc2lkZS1tYXJnaW5zLWF1dG9cIiBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9zcG9uc29ycy9jYW1wdXMtYnJhdWVyZWkucG5nXCIvPlxyXG4gICAgICAgICAgICAgIDwvYT5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgICAgPGEgY2xhc3NOYW1lPVwic3BvbnNvci1jb250YWluZXJcIiBocmVmPVwiaHR0cHM6Ly9hbGdlbml1bS5kZS9hbGdlbml1bS9cIj5cclxuICAgICAgICAgICAgICAgICAgPGltZyBjbGFzc05hbWU9XCJpbWctc3BvbnNvci1wYXJ0bmVyLXBhZ2Ugc2lkZS1tYXJnaW5zLWF1dG9cIiBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9zcG9uc29ycy9hbGdlbml1bS5wbmdcIi8+XHJcbiAgICAgICAgICAgICAgICA8L2E+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvdyBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgICAgPGEgY2xhc3NOYW1lPVwic3BvbnNvci1jb250YWluZXJcIiBocmVmPVwiaHR0cHM6Ly8yMDI0LmlnZW0ud2lraS9ndS1mcmFua2Z1cnQvXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3NOYW1lPVwiaW1nLXNwb25zb3ItcGFydG5lci1wYWdlIHNpZGUtbWFyZ2lucy1hdXRvXCIgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvbG9nb3MtdGVhbS9vdGhlci10ZWFtcy9ndS1mcmFua2Z1cnQtbG9nby5wbmdcIi8+XHJcbiAgICAgICAgICAgICAgICA8L2E+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgICAgICAgIDxhIGNsYXNzTmFtZT1cInNwb25zb3ItY29udGFpbmVyXCIgaHJlZj1cImh0dHBzOi8vYnRzLWV2LmRlL1wiPlxyXG4gICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzTmFtZT1cImltZy1zcG9uc29yIHNpZGUtbWFyZ2lucy1hdXRvXCIgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvc3BvbnNvcnMvYnRzLnBuZ1wiLz5cclxuICAgICAgICAgICAgICAgIDwvYT4gXHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgICAgICAgIDxhIGNsYXNzTmFtZT1cInNwb25zb3ItY29udGFpbmVyXCIgaHJlZj1cImh0dHBzOi8vMjAyNC5pZ2VtLndpa2kvaGFtYnVyZy9cIj5cclxuICAgICAgICAgICAgICAgICAgPGltZyBjbGFzc05hbWU9XCJpbWctc3BvbnNvci1wYXJ0bmVyLXBhZ2Ugc2lkZS1tYXJnaW5zLWF1dG9cIiBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9sb2dvcy10ZWFtL290aGVyLXRlYW1zL2lnZW0taGFtYnVyZy1sb2dvLnBuZ1wiLz5cclxuICAgICAgICAgICAgICAgIDwvYT5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvdyBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgICAgPGEgY2xhc3NOYW1lPVwic3BvbnNvci1jb250YWluZXJcIiBocmVmPVwiaHR0cHM6Ly93d3cuc3R1ZC1zY2ljb20uZGUvXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3NOYW1lPVwiaW1nLXNwb25zb3ItcGFydG5lci1wYWdlIHNpZGUtbWFyZ2lucy1hdXRvXCIgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvc3BvbnNvcnMvc3R1ZHNjaWNvbS1sb2dvLnBuZ1wiLz5cclxuICAgICAgICAgICAgICAgIDwvYT5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIFxyXG4gICAgICAgICAgPGRpdiBpZD1cIm1lZXR1cC10ZXh0XCIgY2xhc3NOYW1lPVwiY29sIHNwb25zb3ItdGV4dC1yaWdodFwiIHN0eWxlPXt7dGV4dEFsaWduOiBcInJpZ2h0XCJ9fT5cclxuICAgICAgICAgICAgPEgyIHRleHQ9XCJhbmQgY29sbGFib3JhdG9ycyBcIiBpZD1cImJmaC1jb2xsYWJzXCIvPlxyXG4gICAgICAgICAgICA8YnIvPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGJyLz4gPGJyLz5cclxuICAgICAgICA8SDIgdGV4dD1cIk90aGVyIGNvbGxhYm9yYXRvcnNcIiBpZD1cIm90ZWhyc1wiLz5cclxuICAgICAgICA8YnIvPiA8YnIvPlxyXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG4gICAgICAgICAgPGRpdiBpZD1cImlkdC10ZXh0XCIgY2xhc3NOYW1lPVwiY29sIHNwb25zb3ItdGV4dC1sZWZ0XCI+XHJcbiAgICAgICAgICAgICAgPGg0PkNoYW5naW5nIENGIGxpdmVzIGFyb3VuZCB0aGUgd29ybGQsIG9uZSB2ZXN0IGF0IGEgdGltZS48L2g0PlxyXG4gICAgICAgICAgICAgIDxici8+XHJcbiAgICAgICAgICAgICAgPHA+QWZ0ZXIgYmVpbmcgY29udGFjdGVkIHVuZXhwZWN0ZWRseSBieSB0d28gcHJldmlvdXNseSB1bmtub3duIEN5c3RpYyBGaWJyb3NpcyBwYXRpZW50cyBpbiBDaGlsZSBhbmQgTGViYW5vbiBtb250aHMgYXBhcnQgaW4gZWFybHkgMjAyMCB0byByZXF1ZXN0IHRoZXJhcHkgdmVzdHMsIHRoZSBncmVhdCBuZWVkIGZvciB0aGlzIGVxdWlwbWVudCB0byBDRiBwYXRpZW50cyBhcm91bmQgdGhlIHdvcmxkIGJlY2FtZSBxdWlja2x5IGV2aWRlbnQuICBDRiBWZXN0cyBXb3JsZHdpZGUgd2FzIGVzdGFibGlzaGVkIGluIEp1bmUgMjAyMCB0byBtZWV0IHRoaXMgbmVlZC4gIFRoZSBtaXNzaW9uIG9mIENGIFZlc3RzIFdvcmxkd2lkZSBpcyB0byBkb25hdGUgbGlmZXNhdmluZyB0aGVyYXB5IHZlc3RzLCB3aXRoIGEgY29zdCBvZiBuZWFybHkgJDIwLDAwMCwgZm9yIHRob3NlIHdpdGggQ3lzdGljIEZpYnJvc2lzIG91dHNpZGUgb2YgdGhlIFVuaXRlZCBTdGF0ZXMuICBUaGUgbGlmZSBleHBlY3RhbmN5IG9mIENGIHBhdGllbnRzIG91dHNpZGUgdGhlIFUuUy4gY2FuIGJlIGFzIGxpbWl0ZWQgYXMgYXBwcm94aW1hdGVseSAyNCB5ZWFycyBvZiBhZ2UuICBUaGVzZSB0aGVyYXB5IHZlc3RzIG1lYW4gZXZlcnl0aGluZyB0byB0aGUgQ0YgcGF0aWVudCBhbmQgdGhlaXIgZmFtaWx5LiAgRnVydGhlciwgaW4gbW9zdCBDRiBjb21tdW5pdGllcyBpbiB0aGUgNTkgY291bnRyaWVzIHdoZXJlIENGIFZlc3RzIFdvcmxkd2lkZSBoYXMgZG9uYXRlZCBvdmVyIDMzMCB0aGVyYXB5IHZlc3RzLCBhY2Nlc3MgdG8gdGhlIG1vc3QgYmFzaWMgQ3lzdGljIEZpYnJvc2lzIG1lZGljYXRpb24gaXMgZWl0aGVyIGxpbWl0ZWQgb3Igbm9uLWV4aXN0ZW50LiAgSW4gdGhlc2UgY2FzZXMsIGEgdGhlcmFweSB2ZXN0IGRvbmF0ZWQgYnkgQ0YgVmVzdHMgV29ybGR3aWRlIGlzIHRoZSBvbmx5IGhvcGUgZm9yIGNvbWZvcnQgYW5kIGFuIGV4dGVuZGVkIGxpZmUuPC9wPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8ZGl2IGlkPVwiXCIgY2xhc3NOYW1lPVwiY29sLTUgc3BvbnNvci1wb3J0cmFpdFwiPlxyXG4gICAgICAgICAgICA8YSBocmVmPVwiaHR0cHM6Ly93d3cuY2Z2d3cub3JnL1wiPlxyXG4gICAgICAgICAgICAgIDxpbWcgaWQ9XCJ2ZXN0cy1wb3J0cmFpdC1sb2dvXCIgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvc3BvbnNvcnMvY2Z2ZXN0c2xvZ28ucG5nXCI+PC9pbWc+XHJcbiAgICAgICAgICAgIDwvYT5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxici8+IDxici8+XHJcbiAgICAgICAgPGRpdiBpZD1cIm1lZXR1cC1wb3J0cmFpdFwiIGNsYXNzTmFtZT1cInNwb25zb3ItcG9ydHJhaXRcIiBzdHlsZT17e3BhZGRpbmc6IFwiMjBweFwifX0+XHJcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3cgYWxpZ24taXRlbXMtY2VudGVyXCI+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgIDxhIGNsYXNzTmFtZT1cInNwb25zb3ItY29udGFpbmVyXCIgaHJlZj1cImh0dHBzOi8vd3d3LmNhcmxyb3RoLmRlL1wiPlxyXG4gICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzTmFtZT1cImltZy1zcG9uc29yLXBhcnRuZXItcGFnZSBzaWRlLW1hcmdpbnMtYXV0b1wiIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Nwb25zb3JzL3JvdGguanBnXCIvPlxyXG4gICAgICAgICAgICAgIDwvYT4gXHJcbiAgICAgICAgICA8L2Rpdj4gXHJcbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgIDxhIGNsYXNzTmFtZT1cInNwb25zb3ItY29udGFpbmVyXCIgaHJlZj1cImh0dHBzOi8vd3d3LnVuaS1iaWVsZWZlbGQuZGUvZmFrdWx0YWV0ZW4vdGVjaG5pc2NoZS1mYWt1bHRhZXQvXCI+XHJcbiAgICAgICAgICAgICAgICA8aW1nIGNsYXNzTmFtZT1cImltZy1zcG9uc29yLXBhcnRuZXItcGFnZSBzaWRlLW1hcmdpbnMtYXV0b1wiIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Nwb25zb3JzL3RlY2hmYWsuanBnXCIvPlxyXG4gICAgICAgICAgICAgIDwvYT5cclxuICAgICAgICAgIDwvZGl2PiAgXHJcbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgPGEgY2xhc3NOYW1lPVwic3BvbnNvci1jb250YWluZXJcIiBocmVmPVwiaHR0cHM6Ly93d3cuc2Fyc3RlZHQuY29tL2VuL1wiPlxyXG4gICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzTmFtZT1cImltZy1zcG9uc29yLXBhcnRuZXItcGFnZSBzaWRlLW1hcmdpbnMtYXV0b1wiIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Nwb25zb3JzL3NhcnN0ZWR0LWxvZ28ucG5nXCIvPlxyXG4gICAgICAgICAgICAgICAgPC9hPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICA8YSBjbGFzc05hbWU9XCJzcG9uc29yLWNvbnRhaW5lclwiIGhyZWY9XCJodHRwczovL2NvcmRlbnBoYXJtYS5jb20vXCI+XHJcbiAgICAgICAgICAgICAgPGltZyBjbGFzc05hbWU9XCJpbWctc3BvbnNvci1wYXJ0bmVyLXBhZ2Ugc2lkZS1tYXJnaW5zLWF1dG9cIiBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9zcG9uc29ycy9jb3JkZW4tcGhhcm1hLWxvZ28ucG5nXCIvPlxyXG4gICAgICAgICAgICA8L2E+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvdyBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cclxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICAgIHsvKiBsZWVyICovfVxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICA8YSBjbGFzc05hbWU9XCJzcG9uc29yLWNvbnRhaW5lclwiIGhyZWY9XCJodHRwczovL3d3dy5jYXByaWNvcm4tc2NpZW50aWZpYy5jb20vZW5cIj5cclxuICAgICAgICAgICAgICA8aW1nIGNsYXNzTmFtZT1cImltZy1zcG9uc29yLXBhcnRuZXItcGFnZSBzaWRlLW1hcmdpbnMtYXV0b1wiIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Nwb25zb3JzL2NhcHJpY29ybi1sb2dvLnBuZ1wiLz5cclxuICAgICAgICAgICAgPC9hPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICA8YSBjbGFzc05hbWU9XCJzcG9uc29yLWNvbnRhaW5lclwiIGhyZWY9XCJodHRwczovL3d3dy50d2lzdGJpb3NjaWVuY2UuY29tL1wiPlxyXG4gICAgICAgICAgICAgIDxpbWcgY2xhc3NOYW1lPVwiaW1nLXNwb25zb3ItcGFydG5lci1wYWdlIHNpZGUtbWFyZ2lucy1hdXRvXCIgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvc3BvbnNvcnMvdHdpc3QtYmlvc2NpZW5jZS1sb2dvLnBuZ1wiLz5cclxuICAgICAgICAgICAgPC9hPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICB7LyogbGVlciAqL31cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxCYWNrVXAvPiBcclxuICAgICAgICBcclxuICAgICAgICBcclxuICAgICAgICBcclxuICAgICAgPC8+XHJcbiAgICApO1xyXG4gIH1cclxuICAiLCAiaW1wb3J0IHsgdXNlVGFiTmF2aWdhdGlvbiB9IGZyb20gXCIuLi91dGlscy9UYWJOYXZpZ2F0aW9uXCI7XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gU3VwcGxlbWVudGFyeSgpIHtcclxuICB1c2VUYWJOYXZpZ2F0aW9uKCk7XHJcbiAgICByZXR1cm4gKFxyXG4gICAgICA8PlxyXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93XCI+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgIFxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3dcIj5cclxuICAgICAgXHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvPlxyXG4gICAgKTtcclxuICB9XHJcbiAgIiwgImltcG9ydCB7IEJ1dHRvbk9uZSB9IGZyb20gXCIuLi9jb21wb25lbnRzL0J1dHRvbnNcIjtcclxuaW1wb3J0IHsgUWFCb3gsIFNwZWNpYWxRYUJveCB9IGZyb20gXCIuLi9jb21wb25lbnRzL0JveGVzXCI7XHJcbmltcG9ydCB7IHVzZUVmZmVjdCB9IGZyb20gXCJyZWFjdFwiO1xyXG5pbXBvcnQgeyB1c2VMb2NhdGlvbiB9IGZyb20gXCJyZWFjdC1yb3V0ZXItZG9tXCI7XHJcbmltcG9ydCB7ICBIMyB9IGZyb20gXCIuLi9jb21wb25lbnRzL0hlYWRpbmdzXCI7XHJcbmltcG9ydCB7IG9wZW5Gcm9tT3RoZXJQYWdlIH0gZnJvbSBcIi4uL3V0aWxzL29wZW5Gcm9tT3RoZXJwQWdlXCI7XHJcbmV4cG9ydCBmdW5jdGlvbiBJbnRzKCkge1xyXG4gIGNvbnN0IGxvY2F0aW9uID0gdXNlTG9jYXRpb24oKTtcclxuICAgIHVzZUVmZmVjdCgoKSA9PiB7XHJcbiAgICAgICAgY29uc3QgcGFyYW1zID0gbmV3IFVSTFNlYXJjaFBhcmFtcyhsb2NhdGlvbi5zZWFyY2gpO1xyXG4gICAgICAgIGNvbnN0IGNvbGxhcHNlSWQgPSBwYXJhbXMuZ2V0KCdjb2xsYXBzZUlkJyk7XHJcbiAgICAgICAgY29uc3QgdGFiSWQgPSBwYXJhbXMuZ2V0KCd0YWInKTtcclxuXHJcbiAgICAgICAgLy8gU2Nyb2xsIHRvIHRoZSBzZWN0aW9uIHNwZWNpZmllZCBieSBjb2xsYXBzZUlkXHJcbiAgICAgICAgaWYgKGNvbGxhcHNlSWQpIHtcclxuICAgICAgICAgICAgY29uc3QgY29sbGFwc2VFbGVtZW50ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoY29sbGFwc2VJZCk7XHJcbiAgICAgICAgICAgIGlmIChjb2xsYXBzZUVsZW1lbnQpIHtcclxuICAgICAgICAgICAgICAgIGNvbnN0IGVsZW1lbnRUb3AgPSBjb2xsYXBzZUVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkudG9wICsgd2luZG93LnBhZ2VZT2Zmc2V0O1xyXG4gICAgICAgICAgICAgICAgY29uc3Qgb2Zmc2V0ID0gd2luZG93LmlubmVySGVpZ2h0IC8gMiAtIGNvbGxhcHNlRWxlbWVudC5vZmZzZXRIZWlnaHQgLyAyO1xyXG4gICAgICAgICAgICAgICAgY29uc3Qgc2Nyb2xsUG9zaXRpb24gPSBlbGVtZW50VG9wIC0gb2Zmc2V0O1xyXG5cclxuICAgICAgICAgICAgICAgIHdpbmRvdy5zY3JvbGxUbyh7XHJcbiAgICAgICAgICAgICAgICAgICAgdG9wOiBzY3JvbGxQb3NpdGlvbixcclxuICAgICAgICAgICAgICAgICAgICBiZWhhdmlvcjogJ3Ntb290aCcsXHJcbiAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLy8gT3BlbiB0aGUgdGFiIHNwZWNpZmllZCBieSB0YWJJZFxyXG4gICAgICAgIGlmICh0YWJJZCkge1xyXG4gICAgICAgICAgICBvcGVuRnJvbU90aGVyUGFnZSh0YWJJZCkoeyBjdXJyZW50VGFyZ2V0OiBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCh0YWJJZCkhIH0pO1xyXG4gICAgICAgIH1cclxuICAgIH0sIFtsb2NhdGlvbi5zZWFyY2hdKTtcclxuXHJcbiAgICByZXR1cm4gKFxyXG4gICAgICA8PlxyXG5cclxuXHJcbiAgICAgICAgPGJyLz5cclxuICAgICAgICA8c2VjdGlvbiBjbGFzc05hbWU9XCJjb2xcIiBpZD1cImp1bGlhSFwiPlxyXG4gICAgICAgICAgPGgzIGlkPVwianVsaWFcIj5KdWxpYTwvaDM+XHJcbiAgICAgICAgICAgICAgPGhyLz5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvd1wiPlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sLTJcIj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInQtdGFnIFBhdGllbnRcIj5cclxuICAgICAgICAgICAgICAgIFBhcmVudFxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+T3JpZ2luYWwgbGFuZ3VhZ2U6IEdlcm1hbjwvZGl2PlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDxici8+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3dcIj5cclxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wtM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3NOYW1lPVwiaW50ZXJ2aWV3LWltZ1wiIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9ocC9qdWxpYS5qcGdcIi8+XHJcbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgIDxIMyBpZD1cImp1bGlhbm90ZXNcIiB0ZXh0PVwiTm90ZXMgZnJvbSB0aGUgaW50ZXJ2aWV3XCIvPlxyXG4gICAgICAgICAgICAgICAgPGJyLz5cclxuICAgICAgICAgICAgICAgIDxRYUJveFxyXG4gICAgICAgICAgICAgICAgICBxPVwiUXVlc3Rpb25cIlxyXG4gICAgICAgICAgICAgICAgICBhPVwiQW5zd2VyXCJcclxuICAgICAgICAgICAgICAgICAgLz5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L3NlY3Rpb24+XHJcbiAgICAgICAgPGJyLz5cclxuICAgICAgICA8c2VjdGlvbiBjbGFzc05hbWU9XCJjb2xcIiBpZD1cIm5pY29sZUhcIj5cclxuICAgICAgICA8aDMgaWQ9XCJuaWNvbGVcIj5OaWNvbGUgRnJpZWRsZWluPC9oMz5cclxuICAgICAgICAgICAgICA8aHIvPlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93XCI+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wtMlwiPlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwidC10YWcgQWNhZGVtaWFcIj5cclxuICAgICAgICAgICAgICAgIEFjYWRlbWlhXHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5PcmlnaW5hbCBsYW5ndWFnZTogR2VybWFuPC9kaXY+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPGJyLz5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvd1wiPlxyXG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbC0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGltZyBjbGFzc05hbWU9XCJpbnRlcnZpZXctaW1nXCIgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGxhY2Vob2xkZXJzL3BsYWNlaGlsZGVycGVyc29uLmpwZWdcIi8+XHJcbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICAgICAgPEgzIGlkPVwibmljb2xlbm90ZXNcIiB0ZXh0PVwiTm90ZXMgZnJvbSB0aGUgaW50ZXJ2aWV3XCIvPlxyXG4gICAgICAgICAgICAgICAgPGJyLz5cclxuICAgICAgICAgICAgICAgIDxRYUJveFxyXG4gICAgICAgICAgICAgICAgICBxPVwiUXVlc3Rpb25cIlxyXG4gICAgICAgICAgICAgICAgICBhPVwiQW5zd2VyXCJcclxuICAgICAgICAgICAgICAgICAgLz5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L3NlY3Rpb24+XHJcbiAgICAgICAgPGJyLz5cclxuICAgICAgICA8c2VjdGlvbiBjbGFzc05hbWU9XCJjb2xcIiBpZD1cIm1hdHRpanNIXCI+XHJcbiAgICAgICAgICA8aDMgaWQ9XCJtYXR0aWpzXCI+TWF0dGlqcyBCdWxjZWFuPC9oMz5cclxuICAgICAgICAgICAgICA8aHIvPlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93XCI+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wtMlwiPlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwidC10YWcgQWNhZGVtaWFcIj5cclxuICAgICAgICAgICAgICAgICAgQWNhZGVtaWFcclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPk9yaWdpbmFsIGxhbmd1YWdlOiBFbmdsaXNoPC9kaXY+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPGJyLz5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvd1wiPlxyXG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbC0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGltZyBjbGFzc05hbWU9XCJpbnRlcnZpZXctaW1nXCIgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2hwL21hdHRpanMuanBnXCIvPlxyXG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wgXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8QnV0dG9uT25lIHRleHQ9XCJFcnN0ZXMgSW50ZXJ2aWV3XCIgb3Blbj1cIm1hdHRpanNpbnYxXCI+PC9CdXR0b25PbmU+XHJcbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICA8YnIvPlxyXG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbCBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgIDxCdXR0b25PbmUgdGV4dD1cIlp3ZWl0ZXMgSW50ZXJ2aWV3XCIgb3Blbj1cIm1hdHRpanNpbnYyXCI+PC9CdXR0b25PbmU+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sIGN5Y2xldGFiXCIgaWQ9XCJtYXR0aWpzaW52MVwiIHN0eWxlPXt7ZGlzcGxheTogXCJibG9ja1wifX0+XHJcbiAgICAgICAgICAgICAgPEgzIGlkPVwibWF0dGlqc25vdGVzMVwiIHRleHQ9XCJOb3RlcyBmcm9tIHRoZSBmaXJzdCBpbnRlcnZpZXdcIi8+XHJcbiAgICAgICAgICAgICAgICA8YnIvPlxyXG4gICAgICAgICAgICAgICAgPFFhQm94XHJcbiAgICAgICAgICAgICAgICAgIHE9XCJRdWVzdGlvblwiXHJcbiAgICAgICAgICAgICAgICAgIGE9XCJBbnN3ZXJcIlxyXG4gICAgICAgICAgICAgICAgICAvPlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sIGN5Y2xldGFiXCIgaWQ9XCJtYXR0aWpzaW52MlwiIHN0eWxlPXt7ZGlzcGxheTogXCJub25lXCJ9fT5cclxuICAgICAgICAgICAgICA8SDMgaWQ9XCJtYXR0aWpzbm90ZXMyXCIgIHRleHQ9XCJOb3RlcyBmcm9tIHRoZSBzZWNvbmQgaW50ZXJ2aWV3XCIvPlxyXG4gICAgICAgICAgICAgICAgPGJyLz5cclxuICAgICAgICAgICAgICAgIDxRYUJveFxyXG4gICAgICAgICAgICAgICAgICBxPVwiUXVlc3Rpb25cIlxyXG4gICAgICAgICAgICAgICAgICBhPVwiQW5zd2VyXCJcclxuICAgICAgICAgICAgICAgICAgLz5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L3NlY3Rpb24+XHJcbiAgICAgICAgPGJyLz5cclxuICAgICAgICA8c2VjdGlvbiBjbGFzc05hbWU9XCJjb2xcIiBpZD1cIndlc3Rob2ZmSFwiPlxyXG4gICAgICAgICAgPGgzIGlkPVwid2VzdGhvZmZcIj5LYXRyaW4gV2VzdGhvZmY8L2gzPlxyXG4gICAgICAgICAgICAgIDxoci8+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3dcIj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbC0yXCI+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJ0LXRhZyBNZWRpY2FsXCI+XHJcbiAgICAgICAgICAgICAgICBQaHlzaW90aGVyYXBpc3RcclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPk9yaWdpbmFsIGxhbmd1YWdlOiBHZXJtYW48L2Rpdj5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8YnIvPlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93XCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbC0zXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3NOYW1lPVwiaW50ZXJ2aWV3LWltZ1wiIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9ocC9ocC1rYXRyaW4tcG9ydHJhaXQuanBnXCIvPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgICAgICAgIDxoMz5Ob3RlcyBmcm9tIHRoZSBpbnRlcnZpZXc8L2gzPlxyXG4gICAgICAgICAgICAgICAgPGJyLz5cclxuICAgICAgICAgICAgICAgICAgey8qIDxRYUJveFxyXG4gICAgICAgICAgICAgICAgICBxPVwiUXVlc3Rpb25cIlxyXG4gICAgICAgICAgICAgICAgICBhPVwiQW5zd2VyXCJcclxuICAgICAgICAgICAgICAgICAgLz4gKi99XHJcbiAgICAgICAgICAgICAgICAgIDxRYUJveFxyXG4gICAgICAgICAgICAgICAgICBxPVwiRnJvbSB3aGF0IGFnZSBkbyB0aGUgcGF0aWVudHMgY29tZSB0byB5b3U/XCJcclxuICAgICAgICAgICAgICAgICAgYT1cIlRoZSBwYXRpZW50cyBjb21lIHRvIHVzIGF0IGEgdmVyeSBlYXJseSBhZ2UuIEl0IGlzIGFsd2F5cyB2ZXJ5IGRpZmZpY3VsdCwgZm9yIHRoZSBwYXJlbnRzIGluIHBhcnRpY3VsYXIsIHRvIGRlYWwgd2l0aCB0aGUgbmV3IHNpdHVhdGlvbi4gQSBkZWZpbml0ZSBkaWFnbm9zaXMgaXMgbWFkZSBhZnRlciA2IHdlZWtzIGF0IHRoZSBsYXRlc3QuIE9uY2UgdGhlIGRpYWdub3NpcyBoYXMgYmVlbiBtYWRlLCB0aGUgd2hvbGUgZmFtaWx5IGlzIGdlbmV0aWNhbGx5IHRlc3RlZCwgaS5lLiB0aGUgcGFyZW50cyBhbmQgc2libGluZ3MuXCJcclxuICAgICAgICAgICAgICAgICAgLz5cclxuICAgICAgICAgICAgICAgICAgPFFhQm94XHJcbiAgICAgICAgICAgICAgICAgIHE9XCJIb3cgbG9uZyBkbyB0aGV5IHN0YXk/XCJcclxuICAgICAgICAgICAgICAgICAgYT1cIldoZW4gdGhlIGNoaWxkcmVuIGFyZSBkaXNjaGFyZ2VkIGZyb20gaG9zcGl0YWwsIHRoZXkgYXJlIGltbWVkaWF0ZWx5IHNlbnQgZm9yIHBoeXNpb3RoZXJhcHkuIEhvd2V2ZXIsIHRoZXJhcHkgb2Z0ZW4gc3RhcnRzIGluIGhvc3BpdGFsLiBUaGVzZSBvZnRlbiBhbHNvIGhhdmUgQ0Ygb3V0cGF0aWVudCBjbGluaWNzLCBzdWNoIGFzIHRoZSBCZXRoZWwgQ2xpbmljIGluIEJpZWxlZmVsZC5cIlxyXG4gICAgICAgICAgICAgICAgICAvPlxyXG4gICAgICAgICAgICAgICAgICA8UWFCb3hcclxuICAgICAgICAgICAgICAgICAgcT1cIkhvdyBtYW55IHBhdGllbnRzIGRvIHlvdSB0cmVhdD9cIlxyXG4gICAgICAgICAgICAgICAgICBhPVwiV2UgY3VycmVudGx5IGhhdmUgOCBjaGlsZHJlbiB3aXRoIEN5c3RpYyBGaWJyb3NpcyBpbiBvdXIgbWVkaWNhbCBwcmFjdGljZSwgd2hpY2ggaXMgcXVpdGUgYSBsb3QuIEhvd2V2ZXIsIGlmIHlvdSBjb21wYXJlIHRoaXMgbnVtYmVyIHdpdGggb3RoZXIgZGlzZWFzZXMsIGl0IGlzIHJhdGhlciBhIHNtYWxsIG51bWJlci4gV2UgaGF2ZSBzbGlnaHRseSBtb3JlIGNoaWxkcmVuIHdpdGggQ3lzdGljIEZpYnJvc2lzIGluIG91ciBwcmFjdGljZSBiZWNhdXNlIHdlIHNwZWNpYWxpemUgaW4gaXQsIGFtb25nIG90aGVyIGRpc2Vhc2VzLlwiXHJcbiAgICAgICAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICAgICAgICAgIDxTcGVjaWFsUWFCb3hcclxuICAgICAgICAgICAgICAgICAgcT1cIldoYXQga2luZCBvZiBleGVyY2lzZXMgZG8geW91IGRvP1wiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxwPldlIGRvIGEgbG90IG9mIGJyZWF0aGluZyB0aGVyYXB5LiBJbiBhbnkgY2FzZSwgaXQgaXMgaW1wb3J0YW50IHRvIHNheSB0aGF0IHdlIGhhdmUgYXR0ZW5kZWQgc3BlY2lhbCB0cmFpbmluZyBjb3Vyc2VzIGZvciBDRiB0aGF0IGhhdmUgc2hvd24gdXMgbmV3IHRlY2huaXF1ZXMuIEluIGdlbmVyYWwsIHRoZSBzYW1lIHRoaW5ncyBhcmUgdGF1Z2h0IGluIHRyYWluaW5nIGFzIDI1IHllYXJzIGFnbywgYnV0IHVuZm9ydHVuYXRlbHkgdGhpcyBkb2Vzbid0IGhlbHAgQ0YgcGF0aWVudHMgYXMgd2VsbCBhcyB0aGUgbmV3IHRlY2huaXF1ZXMuIFRoZSBjdXJyZW50IGdvbGQgc3RhbmRhcmQgaXMgYXV0b2dlbm91cyBkcmFpbmFnZSBhY2NvcmRpbmcgdG8gQ2hldmFsbGllci4gVGhpcyB3b3JrcyB2ZXJ5IHdlbGwhIEluIGdlbmVyYWwsIHRoZSBtYWluIHByb2JsZW0gaXMgdGhlIG11Y3VzIHRoYXQgY2Fubm90IGJlIHJlbW92ZWQuIFdpdGggYXV0b2dlbm91cyBkcmFpbmFnZSwgdGhlIGNoZXN0IGlzIGNvbXByZXNzZWQsIHdoaWNoIGZvcmNlcyB0aGUgbXVjdXMgb3V0LiBJdCdzIGxpa2UgY2xlYW5pbmcgdGhlIGx1bmdzIGZyb20gdGhlIGluc2lkZSwgd2hpY2ggd29ya3MgcmVhbGx5IHdlbGwuIEl0IGlzIGFsc28gdmVyeSBpbXBvcnRhbnQgdG8gaW5oYWxlLCB3aGVyZWJ5IHRoZXJlIGFyZSAzIGRpZmZlcmVudCBsZXZlbHMgb2Ygc2FsdCBjb250ZW50ICgwLjklLCAzJSBvciA2JSkuIENoaWxkcmVuIHdpdGggQ0YgYWx3YXlzIHVzZSBhdCBsZWFzdCAzJSBzYWx0IGNvbnRlbnQuPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgIDxwPk91ciBnZW5lcmFsIHJvdXRpbmUgaXMgYXMgZm9sbG93czogPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPG9sPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8bGk+d2V0IGluaGFsYXRpb24sIGFzIG1vaXN0dXJlIGJpbmRzIG11Y3VzPC9saT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGxpPmRyYWluYWdlIHRvIGdldCBtdWN1cyBvdXQgb2YgdGhlIGx1bmdzPC9saT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGxpPmFudGliaW90aWNzLCBub3cgdGhlIG1lZGljYXRpb24gY2FuIHdvcmsgYmVzdCBhcyB0aGUgbHVuZ3MgYXJlIGNsZWFuIGFuZCBkaWxhdGVkPC9saT5cclxuICAgICAgICAgICAgICAgICAgICAgIDwvb2w+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgIDxwPlRoZXJlIGFyZSBhbHNvIHNvLWNhbGxlZCBcdTIwMUNtYWdpYyBwb2ludHNcdTIwMUQuIENvbXByZXNzaW9uIG9mIHRoZXNlIHBvaW50cyBsZWFkcyB0byB0aGUgYmVzdCBwb3NzaWJsZSB2ZW50aWxhdGlvbiBvZiB0aGUgbHVuZ3MuIFRoZXJlIGFyZSBzcGVjaWFsIGJlbHRzIGZvciBjb21wcmVzc2luZyB0aGVzZSBwb2ludHMgdGhhdCBwYXRpZW50cyBjYW4gd2VhciBhdCBob21lIHRvIGhlbHAgdGhlbSBicmVhdGhlIGJldHRlci4gT2xkZXIgcGF0aWVudHMgd2VhciB0aGVzZSBiZWx0cyBkdXJpbmcgc3BvcnQuPC9wPlxyXG4gICAgICAgICAgICAgICAgICA8L1NwZWNpYWxRYUJveD5cclxuICAgICAgICAgICAgICAgICAgPFFhQm94XHJcbiAgICAgICAgICAgICAgICAgIHE9XCJXaGVuIGRvZXMgZHJhaW5hZ2Ugc3RhcnQ/IFwiXHJcbiAgICAgICAgICAgICAgICAgIGE9XCJXZSBzdGFydCBkcmFpbmFnZSBpbiBuZXdib3JucyBzbyB0aGF0IHRoZSBtdWN1cyBjYW5ub3Qgc2V0dGxlIGFzIG11Y2guIFwiXHJcbiAgICAgICAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICAgICAgICAgICA8UWFCb3hcclxuICAgICAgICAgICAgICAgICAgcT1cIkFyZSB0aGVyZSBzcGVjaWFsIGV4ZXJjaXNlcyB0aGF0IGNhbiBhbHNvIGJlIGRvbmUgYXQgaG9tZT8gXCJcclxuICAgICAgICAgICAgICAgICAgYT1cIlllcywgdGhlIHBhcmVudHMgYXJlIGluc3RydWN0ZWQgdG8gZG8gdGhlIGV4ZXJjaXNlcyB3aGljaCB3ZSBhbHNvIGRvIGluIG91ciBwcmFjdGljZS5cIlxyXG4gICAgICAgICAgICAgICAgICAvPlxyXG4gICAgICAgICAgICAgICAgICA8UWFCb3hcclxuICAgICAgICAgICAgICAgICAgcT1cIkhvdyBvZnRlbiBkb2VzIHRoZSB0aGVyYXB5IHRha2UgcGxhY2U/IFwiXHJcbiAgICAgICAgICAgICAgICAgIGE9XCJUaGVyYXB5IHVzdWFsbHkgdGFrZXMgcGxhY2Ugb25jZSBhIHdlZWsgb3IgZXZlcnkgdHdvIHdlZWtzLiBUaGFua3MgdG8gaW1wcm92ZWQgbWVkaWNhdGlvbiwgdGhlIGNoaWxkcmVuIGFmZmVjdGVkIGFyZSBub3cgaW4gYSBtdWNoIGJldHRlciBwb3NpdGlvbi4gVGhlIHRoZXJhcHkgaGFzIGNoYW5nZWQgY29uc2lkZXJhYmx5IG92ZXIgdGltZSBhbmQgaGFzIGltcHJvdmVkIHNpZ25pZmljYW50bHkuIExlc3MgYW5kIG1vcmUgZmx1aWQgbXVjdXMgbWFrZXMgaXQgZWFzaWVyIHRvIGNvdWdoIHVwLCB3aGljaCBpbiB0dXJuIGluY3JlYXNlcyB0aGUgY2hpbGRyZW4ncyBsaWZlIGV4cGVjdGFuY3kuIFNwb3J0IGFuZCBleGVyY2lzZSBwbGF5IGEgY2VudHJhbCByb2xlIGluIHRoZXJhcHkgYW5kIHNob3VsZCBiZSBmdW4sIGFzIHRoZXkgbXVzdCBiZSBjYXJyaWVkIG91dCBmb3IgbGlmZS4gRnJvbSB0aGUgYWdlIG9mIDggb3IgOSwgZXhlcmNpc2Ugc3VjaCBhcyBjeWNsaW5nIHRvIHNjaG9vbCBzaG91bGQgYmUgdGhlIG5vcm0uIFwiXHJcbiAgICAgICAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICAgICAgICAgIDxRYUJveFxyXG4gICAgICAgICAgICAgICAgICBxPVwiV2hhdCB3b3VsZCBoYXBwZW4gaWYgbm8gcGh5c2lvdGhlcmFweSB3YXMgcGVyZm9ybWVkPyBcIlxyXG4gICAgICAgICAgICAgICAgICBhPVwiSXQgaXMgZGlmZmljdWx0IHRvIHByZWRpY3QgZXhhY3RseSB3aGF0IHdvdWxkIGhhcHBlbiBpZiBwaHlzaW90aGVyYXB5IHdhcyBub3QgY2FycmllZCBvdXQsIGFzIHRoZXJlIGlzIG5vIGNvbXBhcmlzb24gZ3JvdXAuIFRoZXJlIGlzIG5vIHJlYXNvbiBub3QgdG8gZG8gdGhlIHRoZXJhcHkuIElmIGNoaWxkcmVuIGRvIG5vdCByZWNlaXZlIHBoeXNpb3RoZXJhcHkgb3ZlciBhIGxvbmdlciBwZXJpb2Qgb2YgdGltZSwgdGhleSBvZnRlbiBiZWNvbWUgbW9yZSBtdWNvdXN5IGFuZCB0aGVpciB2ZW50aWxhdGlvbiB3b3JzZW5zLiBTcGVjaWZpYyB0aGVyYXB5IGlzIGFic29sdXRlbHkgbmVjZXNzYXJ5IGF0IHRoZSBsYXRlc3QgaW4gdGhlIGV2ZW50IG9mIGFuIGluZmVjdGlvbi4gIFwiXHJcbiAgICAgICAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICAgICAgICAgICA8UWFCb3hcclxuICAgICAgICAgICAgICAgICAgcT1cIkhvdyBkbyB5b3UgbWVhc3VyZSBzdWNjZXNzIChpbiB0ZXJtcyBvZiBsdW5nIGZ1bmN0aW9uIHRlc3QsIGV4ZXJjaXNlLCBldGMuKT8gXCJcclxuICAgICAgICAgICAgICAgICAgYT1cIlRoZSBzdWNjZXNzIG9mIHRoZSB0aGVyYXB5IGlzIG1lYXN1cmVkIHN1YmplY3RpdmVseSBieSBsaXN0ZW5pbmcgdG8gYW5kIGZlZWxpbmcgdGhlIGJyZWF0aGluZyBhbmQgYnkgb2JzZXJ2aW5nIHRoZSBjaGlsZHJlbidzIHNraW4uIEFuIGV4YWN0IGFuc3dlciB0byB0aGUgc3VjY2VzcyBtZWFzdXJlbWVudCBpcyBkaWZmaWN1bHQuIEEgd2VsbC12ZW50aWxhdGVkIGx1bmcgdm9sdW1lIGlzIGluZGljYXRlZCBieSBhIFx1MjAxQ2Z1bGwgYmFycmVsXHUyMDFELCB3aGlsZSB3aGVlemluZyBhbmQgdmlicmF0aW5nIGluZGljYXRlIHBvb3IgdmVudGlsYXRpb24uIFZlZ2V0YXRpdmUgc2lnbnMgc3VjaCBhcyBhIHdoaXRlIG1vdXRoLW5vc2UgdHJpYW5nbGUgaW5kaWNhdGUgYSBoaWdoIGxldmVsIG9mIHN0cmVzcy4gSW4gdGhlIGNsaW5pYywgbHVuZyBmdW5jdGlvbiB0ZXN0cywgQ08yIG1lYXN1cmVtZW50cyBhbmQgXHUyMDFDZmluZ2VyIGNsaXBcdTIwMUQgdGVzdHMgYXJlIHBlcmZvcm1lZC4gSG93ZXZlciwgY2hpbGRyZW4gY2FuIHNvbWV0aW1lcyB0cnkgdG8gaW5mbHVlbmNlIHRoZSB0ZXN0cywgc28gdGhlIHJlc3VsdHMgYXJlIG5vdCBhbHdheXMgcmVsaWFibGUuICBcIlxyXG4gICAgICAgICAgICAgICAgICAvPlxyXG4gICAgICAgICAgICAgICAgICA8UWFCb3hcclxuICAgICAgICAgICAgICAgICAgcT1cIkRvIHRoZSBleGVyY2lzZXMgYnJpbmcgcmVsaWVmIG9yIGFyZSB0aGV5IHByZXZlbnRhdGl2ZSBmb3IgZnVydGhlciBjb21wbGFpbnRzPyBcIlxyXG4gICAgICAgICAgICAgICAgICBhPVwiVGhlIGV4ZXJjaXNlcyBzZXJ2ZSBib3RoIHRvIHJlbGlldmUgYWN1dGUgaW5mZWN0aW9ucyBhbmQgdG8gcHJldmVudCBmdXJ0aGVyIGNvbXBsYWludHMuIFRoZSBmZXdlciBsdW5nIGluZmVjdGlvbnMgdGhlcmUgYXJlLCB0aGUgbG93ZXIgdGhlIGxpa2VsaWhvb2Qgb2YgYWRoZXNpb25zIG9mIG11Y3VzLiAgXCJcclxuICAgICAgICAgICAgICAgICAgLz5cclxuICAgICAgICAgICAgICAgICAgPFFhQm94XHJcbiAgICAgICAgICAgICAgICAgIHE9XCJBcmUgdGhlcmUgYW55IHRvb2xzIHRvIHBlcmZvcm0gdGhlcmFweT8gXCJcclxuICAgICAgICAgICAgICAgICAgYT1cIkRldmljZXMgc3VjaCBhcyB0aGUgXHUyMDFDZmx1dHRlclx1MjAxRCBvciBcdTIwMUNjb3JuZXRcdTIwMUQgYXJlIHVzZWQgdG8gc3VwcG9ydCBleGhhbGF0aW9uLiBUaGVzZSBkZXZpY2VzIGxvb2sgbGlrZSBhIHdoaXN0bGUgd2l0aCBhIG1ldGFsIGJhbGwgaW5zaWRlLiBXaGVuIGV4aGFsaW5nLCB0aGUgYmFsbCBtb3ZlcyBhbmQgY3JlYXRlcyB2aWJyYXRpb25zIHRoYXQgbG9vc2VuIHRoZSBtdWN1cyBpbiB0aGUgbHVuZ3MuIFN1Y2ggZGV2aWNlcyBzaG91bGQgYmUgdXNlZCBieSBhbGwgY2hpbGRyZW4gd2l0aCBsdW5nIGRpc2Vhc2VzLiBcIlxyXG4gICAgICAgICAgICAgICAgICAvPlxyXG4gICAgICAgICAgICAgICAgICA8UWFCb3hcclxuICAgICAgICAgICAgICAgICAgcT1cIldoYXQgY29tcGxhaW50cyBkbyBwYXRpZW50cyBicmluZyB3aXRoIHRoZW0/IFwiXHJcbiAgICAgICAgICAgICAgICAgIGE9XCJQYXRpZW50cyBvZnRlbiBoYXZlIGx1bmcgcHJvYmxlbXMsIGRyeSBsdW5nIG11Y29zYSBhbmQgcHJvYmxlbXMgd2l0aCB0aGUgcGFuY3JlYXMuIFRoZSBsYXR0ZXIgbGVhZHMgdG8gcG9vciBtZXRhYm9saXNtLCB3aGljaCBpcyB3aHkgdGhvc2UgYWZmZWN0ZWQgaGF2ZSB0byB0YWtlIGVuenltZSB0aGVyYXBldXRpY3MgYmVmb3JlIGVhdGluZy4gQ2hpbGRyZW4gb2Z0ZW4gaGF2ZSBncm93dGggZGlzb3JkZXJzIGR1ZSB0byBhIGxhY2sgb2YgZm9vZCwgd2hpY2ggaXMgd2h5IG51dHJpdGlvbmFsIGFkdmljZSBpcyBlc3NlbnRpYWwuIFNvbWUgY2hpbGRyZW4gYWxzbyBoYXZlIHByb2JsZW1zIHdpdGggZXhjZXNzaXZlIHBlcnNwaXJhdGlvbiwgYWx0aG91Z2ggdGhpcyBpcyBsZXNzIGNvbW1vbi4gIFwiXHJcbiAgICAgICAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICAgICAgICAgIDxRYUJveFxyXG4gICAgICAgICAgICAgICAgICBxPVwiQXJlIHBhbmNyZWF0aWMgY29tcGxhaW50cyBhbHNvIHRyZWF0ZWQgYnkgcGh5c2lvdGhlcmFwaXN0cz8gXCJcclxuICAgICAgICAgICAgICAgICAgYT1cIlBhbmNyZWF0aWMgY29tcGxhaW50cyBhcmUgcmFyZWx5IHRyZWF0ZWQgd2l0aCBwaHlzaW90aGVyYXB5LCB1bmxlc3MgaXQgaXMgYW4gaW5mbGFtbWF0aW9uLiBJbiBzdWNoIGNhc2VzLCB0aGUgcGF0aWVudCBpcyBhZG1pdHRlZCB0byBhIGhvc3BpdGFsLiBNYXNzYWdlIG9yIHRhcGluZyB0aGUgaW50ZXN0aW5lcyB3aXRoIGtpbmVzaW9sb2d5IHRhcGUgaGVscHMgd2l0aCBjb25zdGlwYXRpb24gYW5kIHdvcmtzIHZlcnkgd2VsbC4gXCJcclxuICAgICAgICAgICAgICAgICAgLz5cclxuICAgICAgICAgICAgICAgICAgPFFhQm94XHJcbiAgICAgICAgICAgICAgICAgIHE9XCJBcmUgdGhlcmUgYW55IHNwZWNpYWwgaHlnaWVuZSBndWlkZWxpbmVzIGZvciB5b3Ugd2hlbiB3b3JraW5nIHdpdGggQ3lzdGljIEZpYnJvc2lzIHBhdGllbnRzPyBcIlxyXG4gICAgICAgICAgICAgICAgICBhPVwiSHlnaWVuZSBndWlkZWxpbmVzIGFyZSB2ZXJ5IGltcG9ydGFudCB3aGVuIHdvcmtpbmcgd2l0aCBDeXN0aWMgRmlicm9zaXMgcGF0aWVudHMuIEEgZGlzdGluY3Rpb24gaXMgbWFkZSBiZXR3ZWVuIGNoaWxkcmVuIHdpdGggYW5kIHdpdGhvdXQgaW5mZWN0aW9ucyAoUHNldWRvbW9uYXMpLiBSZWd1bGFyIG5hc2FsIHN3YWJzIGFyZSB0YWtlbiBhbmQgb25seSBjaGlsZHJlbiB3aXRoIG9yIHdpdGhvdXQgaW5mZWN0aW9ucyBhcmUgdHJlYXRlZCBpbiB0aGUgcHJhY3RpY2Ugb24gYW55IGdpdmVuIGRheS4gVmVudGlsYXRpb24sIHBhdGllbnRzIHdlYXJpbmcgbWFza3Mgd2hpbGUgaW5mZWN0ZWQgYW5kIGRpc2luZmVjdGlvbiBvZiB0aGUgZmFjaWxpdGllcyBhcmUgZXNzZW50aWFsLiBDaGlsZHJlbiBpbmZlY3RlZCB3aXRoIG11bHRpLXJlc2lzdGFudCBnZXJtcyBhcmUgbm90IGFsbG93ZWQgdG8gZW50ZXIgdGhlIHByYWN0aWNlOyBpbiBzdWNoIGNhc2VzLCBwaHlzaW90aGVyYXBpc3RzIHZpc2l0IHRoZSBwYXRpZW50cycgaG9tZXMuIFwiXHJcbiAgICAgICAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICAgICAgICAgIDxRYUJveFxyXG4gICAgICAgICAgICAgICAgICBxPVwiQXJlIHRoZSBzcGVjaWZpYyBleGVyY2lzZXMgY3VzdG9taXplZD8gQW5kIGlmIHNvLCBob3cgZG8geW91IGtub3cgd2hpY2ggdGhlcmFweSBpcyB0aGUgcmlnaHQgb25lIGZvciB3aGljaCBwYXRpZW50IChiYXNlZCBvbiBsYWJvcmF0b3J5IHZhbHVlcywgdGVzdHMsIGRpZmZlcmVudCBtdXRhdGlvbiBwYXR0ZXJucy4uLik/IFwiXHJcbiAgICAgICAgICAgICAgICAgIGE9XCJUaGUgZXhlcmNpc2VzIGFyZSBpbmRpdmlkdWFsbHkgYWRhcHRlZCB0byB0aGUgcGF0aWVudCdzIGN1cnJlbnQgc2l0dWF0aW9uLiBJbXBvcnRhbnQgY3JpdGVyaWEgYXJlIHRoZSByZW1vdmFsIG9mIG11Y3VzIGFuZCB2ZW50aWxhdGlvbiBvZiB0aGUgbHVuZ3MuIEVhY2ggdGhlcmFwaXN0IGhhcyB0aGVpciBvd24gYXBwcm9hY2ggYW5kIHByZWZlcnJlZCBleGVyY2lzZXMgYW5kIHRlY2huaXF1ZXMuIFwiXHJcbiAgICAgICAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICAgICAgICAgIDxRYUJveFxyXG4gICAgICAgICAgICAgICAgICBxPVwiRG8gcGF0aWVudHMgYWx3YXlzIGdvIHRvIHRoZSBzYW1lIHBoeXNpb3RoZXJhcGlzdD8gXCJcclxuICAgICAgICAgICAgICAgICAgYT1cIklmIHRoZXJhcHkgZ29lcyB3ZWxsLCBwYXRpZW50cyBzdGF5IHdpdGggdGhlIHNhbWUgcGh5c2lvdGhlcmFwaXN0LlwiXHJcbiAgICAgICAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICAgICAgICAgIDxRYUJveFxyXG4gICAgICAgICAgICAgICAgICBxPVwiSG93IG1hbnkgcGh5c2lvdGhlcmFwaXN0cyBvZmZlciBtdWNvLXRoZXJhcHk/IFwiXHJcbiAgICAgICAgICAgICAgICAgIGE9XCJUaGUgZXhhY3QgbnVtYmVyIG9mIHBoeXNpb3RoZXJhcGlzdHMgb2ZmZXJpbmcgQ3lzdGljIEZpYnJvc2lzIHRoZXJhcHkgaXMgdW5rbm93bi4gSG93ZXZlciwgdGhlcmUgYXJlIHNldmVyYWwgY2hpbGQgdGhlcmFwaXN0cyBpbiB0aGUgcmVnaW9uIHByb3ZpZGluZyB0aGlzIHRoZXJhcHkuIFwiXHJcbiAgICAgICAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICAgICAgICAgIDxRYUJveFxyXG4gICAgICAgICAgICAgICAgICBxPVwiSG93IGFyZSB0aGUgcmVsYXRpdmVzIGVkdWNhdGVkPyBcIlxyXG4gICAgICAgICAgICAgICAgICBhPVwiRWR1Y2F0aW5nIHJlbGF0aXZlcyBvZnRlbiBiZWdpbnMgaW4gdGhlIG1hdGVybml0eSB3YXJkIHdpdGggYSBzd2VhdCB0ZXN0LiBBZmZlY3RlZCBjaGlsZHJlbiBhcmUgb2Z0ZW4gcmVjb2duaXphYmxlIGR1ZSB0byBwb29yIGZvb2QgaW50YWtlLiBJbiBHXHUwMEZDdGVyc2xvaCwgd2hlcmUgb3VyIG9mZmljZSBpcyBsb2NhdGVkLCBhbGwgY2hpbGRyZW4gYXJlIHNlbnQgdG8gQmV0aGVsLCB3aGVyZSB0aGV5IGltbWVkaWF0ZWx5IHJlY2VpdmUgQ0YgY2FyZS4gUGFyZW50cyBhcmUgb2Z0ZW4gdHJhdW1hdGl6ZWQsIGFzIHRoZSBjaGlsZHJlbiBhcmUgc2V2ZXJlbHkgaWxsIGRlc3BpdGUgb2Z0ZW4gYXBwZWFyaW5nIGhlYWx0aHkuXCJcclxuICAgICAgICAgICAgICAgICAgLz5cclxuICAgICAgICAgICAgICAgICAgPFFhQm94XHJcbiAgICAgICAgICAgICAgICAgIHE9XCJXaGF0IGFyZSB0aGUgbGltaXRhdGlvbnMgb2YgaW5kaXZpZHVhbCBtZWRpY2luZT8gXCJcclxuICAgICAgICAgICAgICAgICAgYT1cIlRoZSBlZmZlY3RpdmVuZXNzIG9mIGRydWdzIGNhbiB2YXJ5LCBhbmQgc29tZSBhcmUgb25seSBhcHByb3ZlZCBmcm9tIGEgY2VydGFpbiBhZ2UuIEJldHRlciBtZWRpY2F0aW9ucyBjYW4gc2lnbmlmaWNhbnRseSBlbmhhbmNlIHRoZSBxdWFsaXR5IG9mIGxpZmUgYW5kIGxpZmUgZXhwZWN0YW5jeS4gXCJcclxuICAgICAgICAgICAgICAgICAgLz5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgXHJcbiAgICAgICAgPC9zZWN0aW9uPlxyXG4gICAgICAgIDxici8+XHJcbiAgICAgICAgPHNlY3Rpb24gY2xhc3NOYW1lPVwiY29sXCIgIGlkPVwiYmVyZW5zSFwiPlxyXG4gICAgICAgICAgPGgzIGlkPVwiYmVyZW5zXCI+RHIuIEV2YS1NYXJpYSBCZXJlbnM8L2gzPlxyXG4gICAgICAgICAgICAgIDxoci8+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3dcIj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbC00XCI+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJ0LXRhZyBBY2FkZW1pYVwiPlxyXG4gICAgICAgICAgICAgICAgRXRoaWNzIENvbW1pdHRlZSBvZiBCaWVsZWZlbGQgVW5pdmVyc2l0eSBcclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPk9yaWdpbmFsIGxhbmd1YWdlOiBHZXJtYW48L2Rpdj5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8YnIvPlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93XCI+XHJcbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sLTNcIj5cclxuICAgICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzTmFtZT1cImludGVydmlldy1pbWdcIiBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvaHAvYmVyZW5zLmpwZ1wiLz5cclxuICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICAgICAgPGgzPk5vdGVzIGZyb20gdGhlIGludGVydmlldzwvaDM+XHJcbiAgICAgICAgICAgICAgICA8YnIvPlxyXG4gICAgICAgICAgICAgICAgPFFhQm94XHJcbiAgICAgICAgICAgICAgICAgIHE9XCJRdWVzdGlvblwiXHJcbiAgICAgICAgICAgICAgICAgIGE9XCJBbnN3ZXJcIlxyXG4gICAgICAgICAgICAgICAgICAvPlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvc2VjdGlvbj4gIFxyXG4gICAgICAgIDxici8+XHJcbiAgICAgICAgPHNlY3Rpb24gY2xhc3NOYW1lPVwiY29sXCIgaWQ9XCJ3aXNjaG1leWVySFwiPlxyXG4gICAgICAgIDxoMyBpZD1cIndpc2NobWV5ZXJcIj5Qcm9mLiBEci4gRXJoYXJkIFdpc2NobWV5ZXI8L2gzPlxyXG4gICAgICAgICAgICAgIDxoci8+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3dcIj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbC02XCI+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJ0LXRhZyBBY2FkZW1pYVwiPlxyXG4gICAgICAgICAgICAgIFJlc2VhcmNoIEdyb3VwIENlbGx1bGFyIE5ldXJvcGh5c2lvbG9neSwgQmllbGVmZWxkIFVuaXZlcnNpdHlcclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPk9yaWdpbmFsIGxhbmd1YWdlOiBHZXJtYW48L2Rpdj5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8YnIvPlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93XCI+XHJcbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sLTNcIj5cclxuICAgICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzTmFtZT1cImludGVydmlldy1pbWdcIiBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9wbGFjZWhvbGRlcnMvcGxhY2VoaWxkZXJwZXJzb24uanBlZ1wiLz5cclxuICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgICAgICA8aDM+Tm90ZXMgZnJvbSB0aGUgaW50ZXJ2aWV3PC9oMz5cclxuICAgICAgICAgICAgICAgIDxici8+XHJcbiAgICAgICAgICAgICAgICA8UWFCb3hcclxuICAgICAgICAgICAgICAgICAgcT1cIkNhbiB5b3UgZWR1Y2F0ZSB1cyBhYm91dCB5b3VyIGFjYWRlbWljIGNhcmVlcj8gXCJcclxuICAgICAgICAgICAgICAgICAgYT1cIkkgZGlkIG15IGRvY3RvcmF0ZSAzMCB5ZWFycyBhZ28gYXQgQmllbGVmZWxkIFVuaXZlcnNpdHkgYW5kIHRoZW4gd29ya2VkIGF0IHRoZSBNYXggUGxhbmNrIEluc3RpdHV0ZSBpbiBHXHUwMEY2dHRpbmdlbiBhIGxvdCB3aXRoIHRoZSBQYXRjaC1DbGFtcCBwIHRlY2huaXF1ZS4gVG9kYXksIElcdTIwMTltIGhlYWQgb2YgdGhlIHdvcmtpbmcgZ3JvdXAgQ2VsbHVsYXIgTmV1cm9waHlzaW9sb2d5IG9mIHRoZSBtZWRpY2luZSBmYWN1bHR5IG9mIEJpZWxlZmVsZCBVbml2ZXJzaXR5LiBcIlxyXG4gICAgICAgICAgICAgICAgICAvPlxyXG4gICAgICAgICAgICAgICAgICA8UWFCb3hcclxuICAgICAgICAgICAgICAgICAgcT1cIldoYXQgbmV3IG1ldGhvZHMgYXJlIGN1cnJlbnRseSBhdmFpbGFibGUgaW4gZWxlY3Ryb3BoeXNpb2xvZ2ljYWwgcmVzZWFyY2g/IFwiXHJcbiAgICAgICAgICAgICAgICAgIGE9XCJPbmUgb2YgdGhlIGxhdGVzdCBtZXRob2RzIGlzIEUtY2lzIG1lYXN1cmVtZW50cy4gVGhlc2UgbWFrZSBpdCBwb3NzaWJsZSB0byBleGFtaW5lIGEgbW9ub2xheWVyIG9mIGNvbmZsdWVudCBjZWxscyBhbmQgdG8gbWVhc3VyZSB0aGUgbWVtYnJhbmUgcG90ZW50aWFsIGJvdGggYWJvdmUgYW5kIGJlbG93LiBUaGUgY2hhbmdlIGluIGNvbmR1Y3Rpdml0eSBjYW4gYmUgYW5hbHl6ZWQgZm9yIGluc3RhbmNlIGFzIGEgZnVuY3Rpb24gb2YgQ0ZUUiBleHByZXNzaW9uLiBcIlxyXG4gICAgICAgICAgICAgICAgICAvPlxyXG4gICAgICAgICAgICAgICAgICA8UWFCb3hcclxuICAgICAgICAgICAgICAgICAgcT1cIkhvdyBjYW4gd2UgcHJvY2VlZCB3aXRoIHRoZSBpbnZlc3RpZ2F0aW9uIG9mIENGVFIgaW4gZGlmZmVyZW50IGNlbGwgY3VsdHVyZXMgYnkgUGF0Y2gtQ2xhbXA/IFwiXHJcbiAgICAgICAgICAgICAgICAgIGE9XCJZb3UgY2FuIHN0dWR5IENGVFIgZXhwcmVzc2lvbiBpbiBIRUsgY2VsbHMsIHdoaWNoIGFsbG93cyBmb3IgYSBtZWFzdXJhYmxlIGNoYW5nZSBpbiBjaGxvcmlkZSBjb25kdWN0YW5jZS4gSSBhbSBub3Qgc3VyZSB3aGV0aGVyIHdlIHdpbGwgYmUgYWJsZSB0byBpbnZlc3RpZ2F0ZSBDRlRSIHN1ZmZpY2llbnRseSBpbiBlcGl0aGVsaWFsIGNlbGxzIHdoaWNoIHlvdSB3YW50IHRvIGNvbGxlY3QgZnJvbSB5b3VyIENGIHBhdGllbnQgZnJpZW5kIGFuZCB5b3VyIHRlYW0gbWVtYmVycy4gVGhhdCBpcyBzb21ldGhpbmcgd2UgaGF2ZSB0byB0cnkgb3V0LiBcIlxyXG4gICAgICAgICAgICAgICAgICAvPlxyXG4gICAgICAgICAgICAgICAgICA8UWFCb3hcclxuICAgICAgICAgICAgICAgICAgcT1cIkhvdyBjaGFsbGVuZ2luZyBpcyB0aGUgbWVhc3VyZW1lbnQgb2YgQ0ZUUiBjb25kdWN0YW5jZSBpbiBlcGl0aGVsaWFsIGNlbGxzPyBcIlxyXG4gICAgICAgICAgICAgICAgICBhPVwiQ0ZUUiBpbiBlcGl0aGVsaWFsIGNlbGxzIGhhcyB2ZXJ5IGxvdyBjb25kdWN0aXZpdHkgaW4gdGhlIGZlbXRvYW1wZXJlIHJhbmdlLiBUaGVyZWZvcmUsIGV4dHJlbWVseSBzZW5zaXRpdmUgdGVzdGluZyBpcyBuZWNlc3NhcnkgdG8gb2J0YWluIG1lYW5pbmdmdWwgcmVzdWx0cy4gIFwiXHJcbiAgICAgICAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICAgICAgICAgIDxRYUJveFxyXG4gICAgICAgICAgICAgICAgICBxPVwiSG93IGNoYWxsZW5naW5nIGlzIHRoZSBQYXRjaC1DbGFtcCBtZWFzdXJlbWVudCBvZiBDRlRSIGNvbmR1Y3RhbmNlIGluIGVwaXRoZWxpYWwgY2VsbHM/IFwiXHJcbiAgICAgICAgICAgICAgICAgIGE9XCJUaGUgcHJvamVjdCB3aWxsIGNvdWxkIHRha2UgYXQgbGVhc3Qgb25lIHllYXIsIGV2ZW4gZm9yIGV4cGVyaWVuY2VkIHJlc2VhcmNoZXJzLiBcIlxyXG4gICAgICAgICAgICAgICAgICAvPlxyXG4gICAgICAgICAgICAgICAgICA8UWFCb3hcclxuICAgICAgICAgICAgICAgICAgcT1cIldoYXQgdGVjaG5pY2FsIGNoYWxsZW5nZXMgZG8gd2UgZmFjZSBpbiBpbXBsZW1lbnRpbmcgdGhlIFBhdGNoLUNsYW1wIG1lYXN1cmVtZW50cz8gXCJcclxuICAgICAgICAgICAgICAgICAgYT1cIk9uZSBvZiB0aGUgYmlnZ2VzdCBjaGFsbGVuZ2VzIGlzIG1lYXN1cmluZyB0aGUgY3VycmVudCBhY3Jvc3MgdGhlIGVudGlyZSBjZWxsLCBhcyB3ZSBkbyBub3Qgd2FudCB0byBjYXJyeSBvdXQgc2luZ2xlLWNoYW5uZWwgbWVhc3VyZW1lbnRzLCBidXQgcmF0aGVyIHJlY29yZCB0aGUgY3VycmVudCBhY3Jvc3MgY2VsbHMgd2l0aCBhIHN0cm9uZ2x5IGV4cHJlc3NpbmcgdmVjdG9yIGNhcnJ5aW5nIHRoZSBnZW5lIGZvciB0aGUgaW9uIGNoYW5uZWwuIFwiXHJcbiAgICAgICAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICAgICAgICAgIDxRYUJveFxyXG4gICAgICAgICAgICAgICAgICBxPVwiV2hhdCByZXF1aXJlbWVudHMgbXVzdCBiZSBtZXQgZm9yIGN1bHRpdmF0aW9uIGFuZCB0cmFuc2ZlY3Rpb24gYmVmb3JlIHRoZSBQYXRjaC1DbGFtcCBtZWFzdXJlbWVudD8gXCJcclxuICAgICAgICAgICAgICAgICAgYT1cIllvdSBoYXZlIHRvIGN1bHRpdmF0ZSB0aGUgY2VsbHMgb24gcG9seS1seXNpbmUgYW5kIGxhbWluaW4gYW5kIHVzZSByb3VuZCBjb3ZlcnNsaXBzIG9mIDEwIG1tIGRpYW1ldGVyIHRvIHByZXBhcmUgdGhlbSBmb3IgbWVhc3VyZW1lbnQuIEZvciBpZGVudGlmaWNhdGlvbiBvZiBwb3NpdGl2ZSB0cmFuc2ZlY3RhbnRzLCB3ZSB1c2UgR0ZQIGNvLXRyYW5zZmVjdGVkIGNlbGxzIGluIG91ciB3b3JraW5nIGdyb3VwLCB5b3Ugc2hvdWxkIHRoaW5rIG9mIHNvbWV0aGluZyBsaWtlIHRoYXQgYXMgd2VsbC4gQSB0cmFuc2ZlY3Rpb24gcmF0ZSBvZiAxMCAlIGlzIHN1ZmZpY2llbnQgdG8gZ2FpbiBlbm91Z2ggY2VsbHMgZm9yIHRoZSBtZWFzdXJlbWVudC4gWW91IGNhbiB0aGluayBvZiBvcHRpbWl6aW5nIHlvdXIgdHJhbnNmZWN0aW9uIGJ5IHVzaW5nIExpcG9mZWN0YW1pbjIwMDAgdGhhbiBMaXBvZmVjdGFtaW5lMjAwMCwgd2hpY2ggd29ya3MgZ29vZCBmb3Igb3VyIHdvcmtpbmcgZ3JvdXAuIFwiXHJcbiAgICAgICAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICAgICAgICAgIDxRYUJveFxyXG4gICAgICAgICAgICAgICAgICBxPVwiV2hvIGNvdWxkIGhlbHAgdXMgd2l0aCB0aGUgUGF0Y2gtQ2xhbXAgbWVhc3VyZW1lbnRzPyBcIlxyXG4gICAgICAgICAgICAgICAgICBhPVwiVGhlIFBhdGNoLUNsYW1wIGRldmljZXMgYXJlIGhlYXZpbHkgdXRpbGl6ZWQgaW4gb3VyIHdvcmtpbmcgZ3JvdXAsIHNvIHlvdSBwcm9iYWJseSBjYW5ub3QgcGVyZm9ybSBtZWFzdXJlbWVudHMgb24geW91ciBvd24uIEhvd2V2ZXIsIHBvc3Rkb2NzIGNvdWxkIHN1cHBvcnQgeW91IGZvciBzb21lIG1lYXN1cmVtZW50cy4gRHIuIE9saXZlciBEclx1MDBFNGdlciBpcyBhdmFpbGFibGUgYXMgYSBjb250YWN0IHBlcnNvbiBvZiBteSB3b3JraW5nIGdyb3VwLiBcIlxyXG4gICAgICAgICAgICAgICAgICAvPlxyXG4gICAgICAgICAgICAgIDxwPiBUZXN0IGF1cyBkZW0gV2lraSA8L3A+IDwvZGl2PlxyXG4gICAgICAgIDwvc2VjdGlvbj5cclxuICAgICAgICA8YnIvPlxyXG4gICAgICA8Lz5cclxuICAgICk7XHJcbiAgfVxyXG4gICAgIiwgImltcG9ydCB7IEh3YXZlIH0gZnJvbSBcIi4vSGVhZGluZ3NcIjtcclxuXHJcbmludGVyZmFjZSBQcm9wc3tcclxuICAgIHRpdGxlOiBzdHJpbmcgLFxyXG4gICAgdGl0bGUyPzogc3RyaW5nLFxyXG4gICAgY2hpbGRyZW4/OiBSZWFjdC5SZWFjdE5vZGUsXHJcbiAgICBpZDogc3RyaW5nXHJcbn1cclxuXHJcbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIEhlYWRlckJveCh7Y2hpbGRyZW4sIHRpdGxlLCB0aXRsZTIsIGlkfTogUHJvcHMgKXtcclxuICB2YXIgdGk6IHN0cmluZyA9IFwiXCI7XHJcbiAgaWYgKHRpdGxlMikge1xyXG4gICAgdGkgPSB0aXRsZTI7XHJcbiAgfVxyXG4gICAgcmV0dXJuKFxyXG4gICAgICAgIDw+XHJcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sIGhlYWRlci1jb250YWluZXJcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3cgaGVhZGVyLXRpdGxlXCIgaWQ9e2lkfT5cclxuICAgICAgICAgICAgICA8SHdhdmUgdGV4dD17dGl0bGV9PjwvSHdhdmU+XHJcbiAgICAgICAgICAgICAgPEh3YXZlIHRleHQ9e3RpfT48L0h3YXZlPlxyXG5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIHtjaGlsZHJlbn1cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJiYXNlXCI+XHJcbiAgICAgICAgICAgIFxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3dcIj5cclxuICAgICAgXHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvPlxyXG4gICAgKVxyXG59IiwgImltcG9ydCBIZWFkZXJCb3ggZnJvbSBcIi4uL2NvbXBvbmVudHMvSGVhZGVyQm94XCI7XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gQVRUSCgpIHtcclxuXHJcbiAgICByZXR1cm4gKFxyXG4gICAgICA8SGVhZGVyQm94IHRpdGxlPVwiQXR0cmlidXRpb25zXCIgaWQ9XCJhdHRoZWFkXCI+XHJcbiAgICAgIDwvSGVhZGVyQm94PlxyXG4gICAgKTtcclxuICB9IiwgImltcG9ydCBIZWFkZXJCb3ggZnJvbSBcIi4uL2NvbXBvbmVudHMvSGVhZGVyQm94XCI7XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gQ09OVEgoKSB7XHJcblxyXG4gICAgcmV0dXJuIChcclxuICAgICAgPEhlYWRlckJveCB0aXRsZT1cIkNvbnRyaWJ1dGlvblwiIGlkPVwiY29uaGVhZFwiPlxyXG4gICAgICAgIFxyXG4gICAgICA8L0hlYWRlckJveD5cclxuICAgICk7XHJcbiAgfSIsICJleHBvcnQgZnVuY3Rpb24gREVTQ0goKSB7XHJcblxyXG4gIHJldHVybiAoXHJcbiAgICA8SGVhZGVyQm94ICB0aXRsZT1cIkRlc2NyaXB0aW9uXCIgaWQ9XCJkZXNjaGVhZFwiPlxyXG4gICAgICBcclxuICAgIDwvSGVhZGVyQm94PlxyXG4gICk7XHJcbn1cclxuXHJcbmltcG9ydCBIZWFkZXJCb3ggZnJvbSBcIi4uL2NvbXBvbmVudHMvSGVhZGVyQm94XCI7IiwgIlxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIEhPTUVIKCkgeyBcclxuXHJcbiAgXHJcbiAgcmV0dXJuIChcclxuICAgPD48Lz5cclxuICAgICAgICBcclxuICAgIFxyXG4gICk7XHJcbn1cclxuIiwgImV4cG9ydCBmdW5jdGlvbiBIUEgoKSB7XHJcblxyXG4gIHJldHVybiAoXHJcbiAgICA8SGVhZGVyQm94IHRpdGxlPVwiSHVtYW5cIiB0aXRsZTI9XCJQcmFjdGljZXNcIiBpZD1cImhwaGVhZFwiPlxyXG4gICAgICBcclxuICAgIDwvSGVhZGVyQm94PlxyXG4gICk7XHJcbn1cclxuXHJcbmltcG9ydCBIZWFkZXJCb3ggZnJvbSBcIi4uL2NvbXBvbmVudHMvSGVhZGVyQm94XCI7IiwgImV4cG9ydCBmdW5jdGlvbiBJTVBIKCkge1xyXG5cclxuICByZXR1cm4gKFxyXG4gICAgPEhlYWRlckJveCB0aXRsZT1cIlwiIGlkPVwiaW1waGVhZFwiPlxyXG4gICAgICBcclxuICAgIDwvSGVhZGVyQm94PlxyXG4gICk7XHJcbn1cclxuXHJcbmltcG9ydCBIZWFkZXJCb3ggZnJvbSBcIi4uL2NvbXBvbmVudHMvSGVhZGVyQm94XCI7IiwgImV4cG9ydCBmdW5jdGlvbiBOT1RFSCgpIHtcclxuXHJcbiAgcmV0dXJuIChcclxuICAgIDxIZWFkZXJCb3ggdGl0bGU9XCJOb3RlYm9va1wiIGlkPVwibm90aGVhZFwiPlxyXG4gICAgICBcclxuICAgIDwvSGVhZGVyQm94PlxyXG4gICk7XHJcbn1cclxuXHJcbmltcG9ydCBIZWFkZXJCb3ggZnJvbSBcIi4uL2NvbXBvbmVudHMvSGVhZGVyQm94XCI7IiwgImV4cG9ydCBmdW5jdGlvbiBSRVNIKCkge1xyXG5cclxuICByZXR1cm4gKFxyXG4gICAgPEhlYWRlckJveCB0aXRsZT1cIlJlc3VsdHNcIiBpZD1cInJlc2hlYWRcIj5cclxuICAgICAgXHJcbiAgICA8L0hlYWRlckJveD5cclxuICApO1xyXG59XHJcblxyXG5pbXBvcnQgSGVhZGVyQm94IGZyb20gXCIuLi9jb21wb25lbnRzL0hlYWRlckJveFwiOyIsICJleHBvcnQgZnVuY3Rpb24gU0FGRUgoKSB7XHJcblxyXG4gIHJldHVybiAoXHJcbiAgICA8SGVhZGVyQm94IHRpdGxlPVwiQmlvc2FmZXR5XCIgaWQ9XCJzYWZlaGVhZFwiPlxyXG4gICAgICBcclxuICAgIDwvSGVhZGVyQm94PlxyXG4gICk7XHJcbn1cclxuXHJcbmltcG9ydCBIZWFkZXJCb3ggZnJvbSBcIi4uL2NvbXBvbmVudHMvSGVhZGVyQm94XCI7IiwgImV4cG9ydCBmdW5jdGlvbiBURUFNSCgpIHtcclxuXHJcbiAgcmV0dXJuIChcclxuICAgIDxIZWFkZXJCb3ggdGl0bGU9XCJPdXIgVGVhbVwiIGlkPVwidGVhbWhlYWRcIj5cclxuICAgICAgXHJcbiAgICA8L0hlYWRlckJveD5cclxuICApO1xyXG59XHJcblxyXG5pbXBvcnQgSGVhZGVyQm94IGZyb20gXCIuLi9jb21wb25lbnRzL0hlYWRlckJveFwiOyIsICJleHBvcnQgZnVuY3Rpb24gU1BPTkgoKSB7XHJcblxyXG4gIHJldHVybiAoXHJcbiAgICA8SGVhZGVyQm94IHRpdGxlPVwiU3BvbnNvcnNcIiB0aXRsZTI9XCImIFBhcnRuZXJzXCIgaWQ9XCJzcGhlYWRcIj5cclxuICAgICAgXHJcbiAgICA8L0hlYWRlckJveD5cclxuICApO1xyXG59XHJcblxyXG5pbXBvcnQgSGVhZGVyQm94IGZyb20gXCIuLi9jb21wb25lbnRzL0hlYWRlckJveFwiOyIsICJleHBvcnQgZnVuY3Rpb24gRU5HSCgpIHtcclxuXHJcbiAgcmV0dXJuIChcclxuICAgIDxIZWFkZXJCb3ggdGl0bGU9XCJFbmdpbmVlcmluZ1wiIGlkPVwiZW5naGVhZFwiPlxyXG4gICAgICBcclxuICAgIDwvSGVhZGVyQm94PlxyXG4gICk7XHJcbn1cclxuXHJcbmltcG9ydCBIZWFkZXJCb3ggZnJvbSBcIi4uL2NvbXBvbmVudHMvSGVhZGVyQm94XCI7IiwgImV4cG9ydCBmdW5jdGlvbiBTVVBIKCkge1xyXG5cclxuICByZXR1cm4gKFxyXG4gICAgPEhlYWRlckJveCB0aXRsZT1cIlN1cHBsZW1lbnRhcnlcIiB0aXRsZTI9XCJNYXRlcmlhbFwiIGlkPVwic3VwaGVhZFwiPlxyXG4gICAgICBcclxuICAgIDwvSGVhZGVyQm94PlxyXG4gICk7XHJcbn1cclxuXHJcbmltcG9ydCBIZWFkZXJCb3ggZnJvbSBcIi4uL2NvbXBvbmVudHMvSGVhZGVyQm94XCI7IiwgImltcG9ydCBCaWJ0ZXhQYXJzZXIgZnJvbSBcIi4uL2NvbXBvbmVudHMvbWFrZVNvdXJjZXNcIjtcclxuXHJcbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIFBhcnRTb3VyY2VzKCl7XHJcbiAgICByZXR1cm4gKFxyXG4gICAgICAgIDxkaXY+XHJcbiAgICAgICAgICA8QmlidGV4UGFyc2VyIGJpYnRleFNvdXJjZXM9e2JpYnRleFNvdXJjZXN9IC8+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICk7XHJcbn1cclxuXHJcblxyXG5jb25zdCBiaWJ0ZXhTb3VyY2VzID0gW1xyXG5gXHJcbkBhcnRpY2xlIHsxMC43NTU0L2VMaWZlLjY5NTA0LCBcclxuXHJcbmFydGljbGVfdHlwZSA9IHtqb3VybmFsfSwgXHJcblxyXG50aXRsZSA9IHtQRUFSLCBhIGZsZXhpYmxlIGZsdW9yZXNjZW50IHJlcG9ydGVyIGZvciB0aGUgaWRlbnRpZmljYXRpb24gYW5kIGVucmljaG1lbnQgb2Ygc3VjY2Vzc2Z1bGx5IHByaW1lIGVkaXRlZCBjZWxsc30sIFxyXG5cclxuYXV0aG9yID0ge1NpbW9uLCBEb3JvdHR5YSBBbm5hIGFuZCBUXHUwMEUxbGFzLCBBbmRyXHUwMEUxcyBhbmQgS3VsY3NcdTAwRTFyLCBQXHUwMEU5dGVyIElzdHZcdTAwRTFuIGFuZCBCaWN6XHUwMEYzaywgWnN1enNhbm5hIGFuZCBLcmF1c3osIFNhcmFoIExhdXJhIGFuZCBWXHUwMEUxcmFkeSwgR3lcdTAwRjZyZ3kgYW5kIFdlbGtlciwgRXJ2aW59LCBcclxuXHJcbmVkaXRvciA9IHtMYXBpbmFpdGUsIEF1ZHJvbmUgYW5kIFN0YWluaWVyLCBEaWRpZXIgWVIgYW5kIEhhbWlsdG9uLCBKZW5uaWZlciBSfSwgXHJcblxyXG52b2x1bWUgPSAxMSwgXHJcblxyXG55ZWFyID0gMjAyMiwgXHJcblxyXG5tb250aCA9IHtmZWJ9LCBcclxuXHJcbnB1Yl9kYXRlID0gezIwMjItMDItMjN9LCBcclxuXHJcbnBhZ2VzID0ge2U2OTUwNH0sIFxyXG5cclxuY2l0YXRpb24gPSB7ZUxpZmUgMjAyMjsxMTplNjk1MDR9LCBcclxuXHJcbmRvaSA9IHsxMC43NTU0L2VMaWZlLjY5NTA0fSwgXHJcblxyXG51cmwgPSB7aHR0cHM6Ly9kb2kub3JnLzEwLjc1NTQvZUxpZmUuNjk1MDR9LCBcclxuXHJcbmFic3RyYWN0ID0ge1ByaW1lIGVkaXRpbmcgaXMgYSByZWNlbnRseSBkZXZlbG9wZWQgQ1JJU1BSL0NhczkgYmFzZWQgZ2VuZSBlbmdpbmVlcmluZyB0b29sIHRoYXQgYWxsb3dzIHRoZSBpbnRyb2R1Y3Rpb24gb2Ygc2hvcnQgaW5zZXJ0aW9ucywgZGVsZXRpb25zLCBhbmQgc3Vic3RpdHV0aW9ucyBpbnRvIHRoZSBnZW5vbWUuIEhvd2V2ZXIsIHRoZSBlZmZpY2llbmN5IG9mIHByaW1lIGVkaXRpbmcsIHdoaWNoIHR5cGljYWxseSBhY2hpZXZlcyBlZGl0aW5nIHJhdGVzIG9mIGFyb3VuZCAxMFxcJVx1MjAxMzMwXFwlLCBoYXMgbm90IG1hdGNoZWQgaXRzIHZlcnNhdGlsaXR5LiBIZXJlLCB3ZSBpbnRyb2R1Y2UgdGhlIHByaW1lIGVkaXRvciBhY3Rpdml0eSByZXBvcnRlciAoUEVBUiksIGEgc2Vuc2l0aXZlIGZsdW9yZXNjZW50IHRvb2wgZm9yIGlkZW50aWZ5aW5nIHNpbmdsZSBjZWxscyB3aXRoIHByaW1lIGVkaXRpbmcgYWN0aXZpdHkuIFBFQVIgaGFzIG5vIGJhY2tncm91bmQgZmx1b3Jlc2NlbmNlIGFuZCBzcGVjaWZpY2FsbHkgaW5kaWNhdGVzIHByaW1lIGVkaXRpbmcgZXZlbnRzLiBJdHMgZGVzaWduIHByb3ZpZGVzIGFwcGFyZW50bHkgdW5saW1pdGVkIGZsZXhpYmlsaXR5IGZvciBzZXF1ZW5jZSB2YXJpYXRpb24gYWxvbmcgdGhlIGVudGlyZSBsZW5ndGggb2YgdGhlIHNwYWNlciBzZXF1ZW5jZSwgbWFraW5nIGl0IHVuaXF1ZWx5IHN1aXRlZCBmb3Igc3lzdGVtYXRpYyBpbnZlc3RpZ2F0aW9uIG9mIHNlcXVlbmNlIGZlYXR1cmVzIHRoYXQgaW5mbHVlbmNlIHByaW1lIGVkaXRpbmcgYWN0aXZpdHkuIFRoZSB1c2Ugb2YgUEVBUiBhcyBhbiBlbnJpY2htZW50IG1hcmtlciBmb3IgcHJpbWUgZWRpdGluZyBjYW4gaW5jcmVhc2UgdGhlIGVkaXRlZCBwb3B1bGF0aW9uIGJ5IHVwIHRvIDg0XFwlLCB0aHVzIHNpZ25pZmljYW50bHkgaW1wcm92aW5nIHRoZSBhcHBsaWNhYmlsaXR5IG9mIHByaW1lIGVkaXRpbmcgZm9yIGJhc2ljIHJlc2VhcmNoIGFuZCBiaW90ZWNobm9sb2dpY2FsIGFwcGxpY2F0aW9ucy59LCBcclxuXHJcbmtleXdvcmRzID0ge0NSSVNQUiwgQ2FzOSwgcHJpbWUgZWRpdGluZywgZmx1b3Jlc2NlbnQsIGZsdW9yZXNjZW50IHJlcG9ydGVyLCByZXBvcnRlciwgZW5yaWNobWVudCwgZ2Vub21lIGVuZ2luZWVyaW5nfSwgXHJcblxyXG5qb3VybmFsID0ge2VMaWZlfSwgXHJcblxyXG5pc3NuID0gezIwNTAtMDg0WH0sIFxyXG5cclxucHVibGlzaGVyID0ge2VMaWZlIFNjaWVuY2VzIFB1YmxpY2F0aW9ucywgTHRkfSwgXHJcblxyXG59IFxyXG5gLFxyXG5gXHJcbkBtaXNje25pY2thc2Vhc3NheTIwMjRpbnRlcm5ldCwgXHJcbiBhdXRob3IgPSB7S2ltIGV0IGFsLn0sIFxyXG4gdGl0bGUgPSB7IFV0aWxpemF0aW9uIG9mIG5pY2tpbmcgcHJvcGVydGllcyBvZiBDUklTUFItQ2FzMTJhIGVmZmVjdG9yIGZvciBnZW5vbWUgZWRpdGluZ30sIFxyXG4geWVhciA9IHsyMDI0fSwgXHJcbiB1cmwgPSB7IGh0dHBzOi8vZG9pLm9yZy8xMC4xMDM4L3M0MTU5OC0wMjQtNTM2NDgtMn0sIFxyXG4gbm90ZSA9IHtadWdyaWZmIGFtIDE2LiBBdWd1c3QgMjAyNH0gXHJcbn0gXHJcbmBcclxuXSIsICJpbXBvcnQgeyBTZWN0aW9uLCBTdWJlc2N0aW9uIH0gZnJvbSBcIi4uL2NvbXBvbmVudHMvc2VjdGlvbnNcIjtcclxuaW1wb3J0IHsgUGFydFRhYmxlIH0gZnJvbSBcIi4uL2NvbXBvbmVudHMvVGFibGVcIjtcclxuaW1wb3J0IHsgdXNlVGFiTmF2aWdhdGlvbiB9IGZyb20gXCIuLi91dGlscy9UYWJOYXZpZ2F0aW9uXCI7XHJcbmltcG9ydCB7IEJhc2ljUGFydHMgIH0gZnJvbSBcIi4uL2RhdGEvcGFydHNcIjtcclxuaW1wb3J0IHsgSDQgfSBmcm9tIFwiLi4vY29tcG9uZW50cy9IZWFkaW5nc1wiO1xyXG5pbXBvcnQgUGFydFNvdXJjZXMgZnJvbSBcIi4uL3NvdXJjZXMvcGFydC1zb3VyY2VzXCI7XHJcbmltcG9ydCB7IFN1cFNjcm9sbExpbmsgfSBmcm9tIFwiLi4vY29tcG9uZW50cy9TY3JvbGxMaW5rXCI7XHJcbmltcG9ydCB7IE9uZUZpZ3VyZSwgVHdvVmVydGljYWwgfSBmcm9tIFwiLi4vY29tcG9uZW50cy9GaWd1cmVzXCI7XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gUGFydHMoKSB7XHJcbiAgdXNlVGFiTmF2aWdhdGlvbigpO1xyXG4gIGxldCBoZWFkY29scyA9IFtcIlBhcnQgTmFtZVwiLCBcIlJlZ2lzdHJ5IENvZGVcIiwgXCJQYXJ0IERlc2NyaXB0aW9uXCIsIFwibGVuZ3RoIFticF1cIiwgXCJ0eXBlXCJdXHJcbiAgICByZXR1cm4gKCBcclxuICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICA8U2VjdGlvbiB0aXRsZT1cIkRlc2NyaXB0aW9uXCIgaWQ9XCJEZXNjcmlwdGlvblwiPlxyXG4gICAgICAgICAgPFN1YmVzY3Rpb24gdGl0bGU9XCJJbnRyb2R1Y3Rpb25cIiBpZD1cIkRlc2NyaXB0aW9uMVwiPlxyXG4gICAgICAgICAgICA8cD5JbiB0aGUgY29udGV4dCBvZiBDeXN0aWMgRmlicm9zaXMsIHRoZSBGNTA4ZGVsIG11dGF0aW9uIHJlcHJlc2VudHMgYSBzaWduaWZpY2FudCBjaGFsbGVuZ2UgZm9yIGNvcnJlY3Rpb24uIFRoZSBlZmZpY2FjeSBvZiBjdXJyZW50IGdlbmUgZWRpdGluZyB0ZWNobm9sb2dpZXMgaGluZ2VzIG9uIHRoZSBhdmFpbGFiaWxpdHkgb2YgcHJlY2lzZSB0b29scyB0byBlbnN1cmUgdGhlIHN1Y2Nlc3Mgb2YgdHJlYXRtZW50IHN0cmF0ZWdpZXMuIEluIHZpZXcgb2YgdGhlIGFib3ZlLCB3ZSBoYXZlIGRldmVsb3BlZCBhIG5vdmVsIHJlcG9ydGVyIHN5c3RlbSB0aGF0IGlzIHNwZWNpZmljYWxseSB0YWlsb3JlZCB0byB0aGUgRjUwOGRlbCBtdXRhdGlvbiBpbiB0aGUgQ0ZUUiBnZW5lLiBUaGUgb2JqZWN0aXZlIGlzIHRvIHByb3ZpZGUgYSBoaWdoIGRlZ3JlZSBvZiBjb21wYXJhYmlsaXR5IHRvIHRoZSBnZW5vbWljIGNvbnRleHQgb2YgdGhpcyBtdXRhdGlvbiwgd2hpbGUgbWFpbnRhaW5pbmcgZWFzZSBvZiB1c2UuIFRoaXMgc3lzdGVtIGFsbG93cyByZXNlYXJjaGVycyB0byB0ZXN0IGFuZCBzY3JlZW4gUHJpbWUgRWRpdG9ycyBhbmQgdmFyaW91cyBwZWdSTkFzIChwcmltZSBlZGl0aW5nIGd1aWRlUk5BcyksIHBhcnRpY3VsYXJseSBpbiB0aGUgY29udGV4dCBvZiB0aGUgRjUwOGRlbCBtdXRhdGlvbi4gQnkgY2xvc2VseSBtaW1pY2tpbmcgdGhlIGdlbm9taWMgZW52aXJvbm1lbnQsIGl0IGlzIGJlbGlldmVkIHRoYXQgdGhpcyB0b29sIHdpbGwgb2ZmZXIgZW5oYW5jZWQgdXRpbGl0eSBpbiB0aGUgc2VsZWN0aW9uIG9mIG9wdGltYWwgUHJpbWUgRWRpdGluZyBzdHJhdGVnaWVzLiA8L3A+XHJcbiAgICAgICAgICA8L1N1YmVzY3Rpb24+XHJcbiAgICAgICAgICA8U3ViZXNjdGlvbiB0aXRsZT1cIlByaW1lIEVkaXRvciBhbmQgcGVnUk5BIFRlc3RpbmdcIiBpZD1cIkRlc2NyaXB0aW9uMlwiPlxyXG4gICAgICAgICAgICA8cD5UaGUgcHJpbmNpcGFsIGZlYXR1cmUgb2YgdGhlIHJlcG9ydGVyIHN5c3RlbSBpcyBpdHMgY2FwYWNpdHkgdG8gYXNzZXNzIGFuZCBxdWFudGlmeSB0aGUgZWZmaWNhY3kgb2YgZGl2ZXJzZSBQcmltZSBFZGl0b3JzLCB3aXRoIGEgcGFydGljdWxhciBmb2N1cyBvbiBwZWdSTkFzLiBJbiBpdHMgZGVmYXVsdCBzdGF0ZSwgdGhlIHN5c3RlbSBleHByZXNzZXMgYSBub24tZnVuY3Rpb25hbCBHRlAgZHVlIHRvIHRoZSBkaXNydXB0aW9uIG9mIHRoZSBzcGxpY2Ugc2l0ZS4gSG93ZXZlciwgaWYgYSBQcmltZSBFZGl0b3Igc3VjY2Vzc2Z1bGx5IHJlc3RvcmVzIHRoZSBtdXRhdGlvbiB0byBpdHMgY29ycmVjdCBmb3JtLCB0aGUgc3BsaWNlIHNpdGUgaXMgcmVwYWlyZWQgYW5kIGZ1bmN0aW9uYWwgR0ZQIGlzIGV4cHJlc3NlZCwgdGhlcmVieSBhbGxvd2luZyBmb3IgZmx1b3Jlc2NlbnQgZGV0ZWN0aW9uLiBUaGlzIGZsdW9yZXNjZW5jZSBzZXJ2ZXMgYXMgYSByZWxpYWJsZSBpbmRpY2F0b3Igb2Ygc3VjY2Vzc2Z1bCBwcmltZSBlZGl0aW5nLiA8L3A+XHJcbiAgICAgICAgICAgIDxwPlRoZSBtb2RpZmllZCBHRlAgc2VxdWVuY2Ugd2FzIGNsb25lZCBpbnRvIHRoZSBwREFTMTIxMjRfUEVBUi1HRlAtcHJlZWRpdGVkXHUyMDJGcGxhc21pZCwgd2hpY2ggd2FzIHRoZW4gdHJhbnNmZWN0ZWQgaW50byBIRUsgY2VsbHMgdG8gaW5pdGlhdGUgdGhlIHBlZ1JOQSBzY3JlZW5pbmcgcHJvY2Vzcy4gVGhlIGNhcGFjaXR5IHRvIG9ic2VydmUgdGhlIHJlc3RvcmF0aW9uIG9mIGZ1bmN0aW9uYWwgR0ZQIHByb3ZpZGVzIGEgZGVmaW5pdGl2ZSBpbmRpY2F0aW9uIG9mIHRoZSBlZmZpY2FjeSBvZiBib3RoIHRoZSBQcmltZSBFZGl0b3IgYW5kIHRoZSBzcGVjaWZpYyBwZWdSTkEgdmFyaWFudCB1bmRlciBleGFtaW5hdGlvbi4gRnVydGhlcm1vcmUsIHRoZSBjb25zaWRlcmFibGUgZGVncmVlIG9mIHNpbWlsYXJpdHkgYmV0d2VlbiB0aGUgcmVwb3J0ZXIgc3lzdGVtIGFuZCB0aGUgYWN0dWFsIGdlbm9taWMgY29udGV4dCBvZiB0aGUgQ0ZUUiBtdXRhdGlvbiByZW5kZXJzIHRoZSBzY3JlZW5pbmcgcHJvY2VzcyBoaWdobHkgcGVydGluZW50IHRvIHRoZSBvcHRpbWlzYXRpb24gb2Ygc3BlY2lmaWMgYXBwbGljYXRpb25zLiA8L3A+XHJcbiAgICAgICAgICA8L1N1YmVzY3Rpb24+XHJcbiAgICAgICAgICA8U3ViZXNjdGlvbiB0aXRsZT1cIkNvbmNsdXNpb25cIiBpZD1cIkRlc2NyaXB0aW9uM1wiPlxyXG4gICAgICAgICAgICA8cD5UaGlzIHJlcG9ydGVyIHN5c3RlbSByZXByZXNlbnRzIGEgc3Vic3RhbnRpYWwgYWR2YW5jZW1lbnQgaW4gdGhlIHN0dWR5IGFuZCBjb3JyZWN0aW9uIG9mIHRoZSBDRlRSIEY1MDhkZWwgbXV0YXRpb24uIFRoZSBkZXNpZ24gb2YgdGhlIHN5c3RlbSBhbGxvd3MgZm9yIHRoZSBzdHJhaWdodGZvcndhcmQgc2NyZWVuaW5nIG9mIGFuIGFycmF5IG9mIFByaW1lIEVkaXRvciBhbmQgcGVnUk5BIGNvbnN0cnVjdHMsIHdoaWxlIG1haW50YWluaW5nIGEgaGlnaCBkZWdyZWUgb2YgY29tcGFyYWJpbGl0eSB0byB0aGUgZ2Vub21pYyBjb250ZXh0LiBCeSBjbG9zZWx5IGVtdWxhdGluZyB0aGUgQ0ZUUiBnZW5lIGVudmlyb25tZW50LCBwYXJ0aWN1bGFybHkgaW4gdGhlIGNvbnRleHQgb2YgdGhlIEY1MDhkZWwgbXV0YXRpb24sIHJlc2VhcmNoZXJzIGFyZSBhYmxlIHRvIGlkZW50aWZ5IHRoZSBtb3N0IGVmZmljaWVudCBwZWdSTkFzIGFuZCBQcmltZSBFZGl0b3JzLCBvZmZlcmluZyBhIHByb21pc2luZyBhcHByb2FjaCBmb3IgZGV2ZWxvcGluZyBtb3JlIGVmZmVjdGl2ZSBnZW5lLWVkaXRpbmcgdHJlYXRtZW50cyBmb3IgQ3lzdGljIEZpYnJvc2lzLjxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiMVwiLz4gIDwvcD5cclxuICAgICAgICAgIDwvU3ViZXNjdGlvbj5cclxuICAgICAgICA8L1NlY3Rpb24+XHJcblxyXG4gICAgICAgIDxTZWN0aW9uIHRpdGxlPVwiQ2hhcmFjdGVyaXphdGlvblwiIGlkPVwiQ2hhcmFjdGVyaXphdGlvblwiPlxyXG4gICAgICAgICAgPFN1YmVzY3Rpb24gdGl0bGU9XCJEZXNpZ24gYW5kIEZ1bmN0aW9uYWxpdHlcIiBpZD1cIkNoYXJhY3Rlcml6YXRpb24xXCI+XHJcbiAgICAgICAgICAgIDxwPlRoZSByZXBvcnRlciBzeXN0ZW0gaGFzIGJlZW4gZGVzaWduZWQgd2l0aCB0aGUgc3BlY2lmaWMgaW50ZW50aW9uIG9mIGZhY2lsaXRhdGluZyBhIG1vcmUgY29tcGFyYWJsZSBnZW5vbWljIGNvbnRleHQgZm9yIHRoZSBGNTA4ZGVsIG11dGF0aW9uLCBwYXJ0aWN1bGFybHkgZm9yIHRoZSBwdXJwb3NlIG9mIHRlc3RpbmcgdGhlIGVmZmljYWN5IG9mIGRpZmZlcmVudCBwZWdSTkEgdmFyaWFudHMgYW5kIHByaW1lIGVkaXRvcnMuIFRoZSBzeXN0ZW0gcHJvdmlkZXMgYSBoaWdobHkgcmVsaWFibGUgcGxhdGZvcm0gZm9yIHNjcmVlbmluZyBhIHZhcmlldHkgb2YgcGVnUk5BcywgdGhlcmVieSBmYWNpbGl0YXRpbmcgdGhlIGlkZW50aWZpY2F0aW9uIG9mIHRoZSBtb3N0IGVmZmVjdGl2ZSB2YXJpYW50IGZvciBjb3JyZWN0aW5nIHRoZSBGNTA4ZGVsIG11dGF0aW9uPC9wPlxyXG4gICAgICAgICAgICA8cD5UaGUgc3lzdGVtIGlzIGNvbnN0cnVjdGVkIGFyb3VuZCBhIHBsYXNtaWQgc3RydWN0dXJlLCBzcGVjaWZpY2FsbHkgcERBUzEyMTI0X1BFQVItR0ZQX0dHVGRlbF9lZGl0ZWQsIGZyb20gd2hpY2ggYSBtb2RpZmllZCB2ZXJzaW9uIG9mIEdGUCAoR3JlZW4gRmx1b3Jlc2NlbnQgUHJvdGVpbikgaGFzIGJlZW4gZGVyaXZlZC4gVGhlIGdyZWVuIGZsdW9yZXNjZW50IHByb3RlaW4gKEdGUCkgaXMgY29tcG9zZWQgb2YgdHdvIGV4b25zLCBzZXBhcmF0ZWQgYnkgYSBWaW0gZ2VuZSBpbnRyb24gaW4gaXRzIG5hdHVyYWwgc3RhdGUuIEluIHRoZSBhYnNlbmNlIG9mIHRoZSBpbnRyb24sIHRoZSBHRlAgaXMgZXhwcmVzc2VkIGFuZCBmbHVvcmVzY2VzLiBIb3dldmVyLCB0aGUgR0ZQIHNlcXVlbmNlIHdhcyBtb2RpZmllZCB0byBpbnRyb2R1Y2UgYSB0aHJlZS1iYXNlLXBhaXIgZGVsZXRpb24sIHNwZWNpZmljYWxseSBpbiB0aGUganVuY3Rpb24gYmV0d2VlbiBFeG9uIDEgYW5kIHRoZSBWaW0gZ2VuZSBpbnRyb24uIFRoaXMgZGVsZXRpb24gYWZmZWN0cyB0aGUgbGFzdCBiYXNlIG9mIEV4b24gMSBhbmQgdGhlIGZpcnN0IHR3byBiYXNlcyBvZiB0aGUgaW50cm9uLCBlZmZlY3RpdmVseSBkaXNydXB0aW5nIHRoZSBzcGxpY2Ugc2l0ZS4gQXMgYSByZXN1bHQsIHRoZSBpbnRyb24gaXMgbm8gbG9uZ2VyIGNvcnJlY3RseSBzcGxpY2VkIG91dCwgbGVhZGluZyB0byB0aGUgZXhwcmVzc2lvbiBvZiBhIG5vbi1mdW5jdGlvbmFsIEdGUCB0aGF0IGRvZXMgbm90IGZsdW9yZXNjZS4gPC9wPlxyXG4gICAgICAgICAgPC9TdWJlc2N0aW9uPlxyXG4gICAgICAgICAgPFN1YmVzY3Rpb24gdGl0bGU9XCJBZGFwdGlvbnMgZm9yIENGVFIgRjUwOGRlbCBtdXRhdGlvbiBjb21wYXJpYmlsaXR5XCIgaWQ9XCJDaGFyYWN0ZXJpemF0aW9uMlwiPlxyXG4gICAgICAgICAgICA8cD5JbiBhZGRpdGlvbiB0byB0aGUgaW50cm9kdWN0aW9uIG9mIHRoZSB0aHJlZS1iYXNlLXBhaXIgZGVsZXRpb24sIHRoZSBpbnRyb24gc2VxdWVuY2Ugd2FzIGZ1cnRoZXIgYWx0ZXJlZCB3aXRoIHRoZSBvYmplY3RpdmUgb2YgZW5oYW5jaW5nIHRoZSBjb21wYXJhYmlsaXR5IG9mIHRoZSBzeXN0ZW0gdG8gdGhlIENGVFIgZ2Vub21pYyBjb250ZXh0LiBTcGVjaWZpY2FsbHksIDI3IGJhc2UgcGFpcnMgd2VyZSByZXBsYWNlZCBkb3duc3RyZWFtIG9mIHRoZSBzcGxpY2Ugc2l0ZSB3aXRoIGEgc2VxdWVuY2UgZGVyaXZlZCBmcm9tIHRoZSBDRlRSIGdlbmUgaW4gdGhlIHJlZ2lvbiBvZiB0aGUgRjUwOGRlbCBtdXRhdGlvbi4gVGhpcyBtb2RpZmljYXRpb24gZ3VhcmFudGVlcyB0aGF0IHRoZSBnUk5BIHNwYWNlciBlbXBsb3llZCBpbiBvdXIgc3lzdGVtIGlzIGlkZW50aWNhbCB0byB0aGUgb25lIGZvdW5kIGluIHRoZSBhY3R1YWwgZ2Vub21pYyBjb250ZXh0IG9mIHRoZSBDRlRSIG11dGF0aW9uLiA8L3A+XHJcbiAgICAgICAgICAgIDxwPlRoZSBvbmx5IG5vdGFibGUgZGlmZmVyZW5jZXMgYmV0d2VlbiB0aGUgc3lzdGVtIGFuZCB0aGUgZ2Vub21pYyBzZXF1ZW5jZSBhcmUgb2JzZXJ2ZWQgaW4gdGhlIFJUVCAoUmV2ZXJzZSBUcmFuc2NyaXB0IFRlbXBsYXRlKSBhbmQgUEJTIChQcmltZXIgQmluZGluZyBTaXRlKSwgd2hpY2ggaGF2ZSBiZWVuIGNhbGlicmF0ZWQgd2l0aCBzaWxlbnQgbXV0YXRpb25zIHRvIG1haW50YWluIGNvbXBhcmFiaWxpdHkgaW4gR0MgY29udGVudCB3aXRoIHRoZSBuYXRpdmUgQ0ZUUiBnZW5lLiBUaGVzZSBzaWxlbnQgbXV0YXRpb25zIGRvIG5vdCBhZmZlY3QgdGhlIGVuY29kZWQgcHJvdGVpbiBidXQgb3B0aW1pc2UgdGhlIHN5c3RlbSdzIG1pbWljcnkgb2YgdGhlIENGVFIgZ2VuZS4gPC9wPlxyXG4gICAgICAgICAgICA8T25lRmlndXJlXHJcbiAgICAgICAgICAgIHBpYzE9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9uZXctYmFzaWMtcGFydC9yZXBvcnRlci1mcmFnbWVudC5zdmdcIlxyXG4gICAgICAgICAgICBhbHQxPVwiXCJcclxuICAgICAgICAgICAgZGVzY3JpcHRpb249XCJLYXRobGVlZWVuLCBDaHJpc3RpYWFhYW5cIlxyXG4gICAgICAgICAgICBudW09ezF9XHJcbiAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICA8L1N1YmVzY3Rpb24+XHJcbiAgICAgICAgPC9TZWN0aW9uPlxyXG5cclxuICAgICAgICA8U2VjdGlvbiB0aXRsZT1cIkV4cGVyaW1lbnRzXCIgaWQ9XCJFeHBlcmltZW50c1wiPlxyXG4gICAgICAgICAgPFN1YmVzY3Rpb24gdGl0bGU9XCJDbG9uaW5nXCIgaWQ9XCJFeHBlcmltZW50czFcIj5cclxuICAgICAgICAgICAgPHA+VGhlIHN5bnRoZXNpc2VkIGZyYWdtZW50IHdhcyBjbG9uZWQgaW50byBwREFTMTIxMjRfUEVBUi1HRlAtcHJlZWRpdGVkXHUyMDJGcGxhc21pZCB1c2luZyBHaWJzb24gYXNzZW1ibHksIHRodXMgcHJvdmlkaW5nIGEgdmVjdG9yIHdpdGggd2hpY2ggdGhlIGRlc2lyZWQgdGVzdHMgY291bGQgYmUgcGVyZm9ybWVkIGluIEhFSzI5MyBjZWxscy4gVGhlIGNvcnJlY3RuZXNzIG9mIHRoZSBjbG9uaW5nIHdhcyBkZXRlcm1pbmVkIGJ5IHR3byBtZXRob2RzOiB0aGUgY29ycmVjdCBzaXplIG9mIHRoZSBjbG9uZWQgcGxhc21pZCB3YXMgY29uZmlybWVkIGJ5IGdlbCBlbGVjdHJvcGhvcmVzaXMsIHdoaWxlIHRoZSBjb3JyZWN0IG9yaWVudGF0aW9uIGFuZCBjb21wbGV0ZSBjbG9uaW5nIHdlcmUgY29uZmlybWVkIGJ5IFNhbmdlciBzZXF1ZW5jaW5nLiA8L3A+XHJcbiAgICAgICAgICAgIDxINCB0ZXh0PVwiV29ya2Zsb3cgXCIvPlxyXG4gICAgICAgICAgICA8cD5UaGUgY3JlYXRpb24gYW5kIHZhbGlkYXRpb24gb2YgdGhlIENGLXNwZWNpZmljIHJlcG9ydGVyIHN5c3RlbSBjb21tZW5jZWQgd2l0aCB0aGUgc2VsZWN0aW9uIGFuZCBzdWJzZXF1ZW50IG91dGdyb3d0aCBvZiBFLiBjb2xpIERINVx1MDNCMSBzdHJhaW5zIHRoYXQgY29udGFpbiB0aGUgcERBUzEyMTI0IHBsYXNtaWQuIFRoZSBpbml0aWFsIHN0YWdlIG9mIHRoZSBwcm9jZXNzIGVudGFpbHMgdGhlIGlzb2xhdGlvbiBhbmQgcHVyaWZpY2F0aW9uIG9mIHRoZSBwREFTMTIxMjQgcGxhc21pZCB0aHJvdWdoIHRoZSB1dGlsaXNhdGlvbiBvZiBjb252ZW50aW9uYWwgcGxhc21pZCBwcmVwYXJhdGlvbiBtZXRob2RvbG9naWVzLCB0aGVyZWJ5IGVuc3VyaW5nIGl0cyBzdGVyaWxpdHkgYW5kIGZhY2lsaXRhdGluZyBzZWFtbGVzcyBkb3duc3RyZWFtIGFwcGxpY2F0aW9ucy4gU3Vic2VxdWVudCB0byB0aGUgZGVzaWduIG9mIHRoZSBDRi1zcGVjaWZpYyByZXBvcnRlciBzeXN0ZW0sIHRoZSBzZXF1ZW5jZSB3YXMgb2J0YWluZWQgZnJvbSBJRFQuIFVwb24gaXRzIHJlY2VpcHQsIHRoZSBmcmFnbWVudCB3YXMgYW1wbGlmaWVkIHRocm91Z2ggcG9seW1lcmFzZSBjaGFpbiByZWFjdGlvbiAoUENSKSB0byBwcm9kdWNlIGEgc3VmZmljaWVudCBxdWFudGl0eSBvZiBtYXRlcmlhbCBmb3IgdGhlIHN1YnNlcXVlbnQgY2xvbmluZyBwaGFzZXMuIFdpdGggdGhlIHJlcG9ydGVyIHN5c3RlbSBmcmFnbWVudCByZWFkeSwgdGhlIHBEQVMxMjEyNF9QRUFSLUdGUC1wcmVlZGl0ZWQgcGxhc21pZCB3YXMgZGlnZXN0ZWQgdXNpbmcgTmhlSSBhbmQgWGhvSSByZXN0cmljdGlvbiBlbnp5bWVzLiBUaGlzIGN1dHMgb3V0IHRoZSBHRlAgY2Fzc2V0dGUsIGNyZWF0aW5nIHRoZSByZXF1aXJlZCBlbnRyeSBwb2ludCBmb3IgdGhlIGludGVncmF0aW9uIG9mIHRoZSBETkEgZnJhZ21lbnQgb2YgdGhlIHJlcG9ydGVyIHN5c3RlbS4gVG8gcHJldmVudCB0aGUgYmFja2JvbmUgZnJvbSByZS1saWdhdGluZywgdGhlIHNhbXBsZSBpcyB0cmVhdGVkIHdpdGggcGhvc3BoYXRhc2UsIGVuc3VyaW5nIHRoZSBwbGFzbWlkIHJlbWFpbnMgb3BlbiBmb3IgdGhlIHVwY29taW5nIEdpYnNvbiBhc3NlbWJseS4gPC9wPlxyXG4gICAgICAgICAgICA8cD5TdWJzZXF1ZW50bHksIGEgcHVyaWZpY2F0aW9uIHByb2Nlc3MgaXMgY29uZHVjdGVkIHRvIGV4dHJhY3QgdGhlIHBsYXNtaWQgYmFja2JvbmUgYW5kIGNvbmNlbnRyYXRlIHRoZSBzYW1wbGVzLiBUaGlzIGZhY2lsaXRhdGVzIHRoZSBpbnRlZ3JhdGlvbiBvZiB0aGUgYW1wbGlmaWVkIHJlcG9ydGVyIHN5c3RlbSBpbnRvIHRoZSBwcmVwYXJlZCBwREFTMTIxMjRfUEVBUi1HRlAtcHJlZWRpdGVkIGJhY2tib25lLCB3aGljaCBpcyB0aGVuIHN1YmplY3RlZCB0byB0aGUgR2lic29uIGFzc2VtYmx5IHByb2Nlc3MuIFRoaXMgYXNzZW1ibHkgcHJvY2VzcyByZXN1bHRzIGluIHRoZSBjcmVhdGlvbiBvZiB0aGUgbm92ZWwgcERBUzEyMTI0X1BFQVItR0ZQX0dHVGRlbF9lZGl0ZWQgcGxhc21pZCwgd2hpY2ggaW5jb3Jwb3JhdGVzIHRoZSBDRi1zcGVjaWZpYyByZXBvcnRlciBzeXN0ZW0uIDwvcD5cclxuICAgICAgICAgICAgPHA+U3Vic2VxdWVudGx5LCB0aGUgcERBUzEyMTI0X1BFQVItR0ZQX0dHVGRlbF9lZGl0ZWQgcGxhc21pZCBpcyB0cmFuc2Zvcm1lZCBpbnRvIEUuIGNvbGkgREg1XHUwM0IxIGNlbGxzIGZvciBwcm9wYWdhdGlvbi4gVG8gY29uZmlybSB0aGUgc3VjY2Vzc2Z1bCBpbnRlZ3JhdGlvbiBvZiB0aGUgcmVwb3J0ZXIgZnJhZ21lbnQsIGNvbG9ueSBQQ1IgKGNQQ1IpIGlzIHBlcmZvcm1lZCBvbiB0aGUgdHJhbnNmb3JtZWQgY29sb25pZXMuIFRoZSBwb3NpdGl2ZSBjb2xvbmllcywgaWRlbnRpZmllZCBieSBjUENSLCBhcmUgc2VsZWN0ZWQgYW5kIGdyb3duIGluIExCQ201MCBtZWRpdW0gZm9yIGZ1cnRoZXIgYW5hbHlzaXMuICA8L3A+XHJcbiAgICAgICAgICAgIDxwPlRoZSBmaW5hbCB2YWxpZGF0aW9uIHN0ZXAgaW52b2x2ZXMgcHJlcGFyaW5nIHRoZSBwREFTMTIxMjRfUEVBUi1HRlBfR0dUZGVsX2VkaXRlZCBwbGFzbWlkIGZyb20gdGhlIHBvc2l0aXZlIGNvbG9uaWVzIGFuZCB2ZXJpZnlpbmcgdGhlIGNvcnJlY3QgaW5zZXJ0aW9uIG9mIHRoZSByZXBvcnRlciBmcmFnbWVudCB1c2luZyBTYW5nZXIgc2VxdWVuY2luZy4gVGhpcyBlbnN1cmVzIHRoZSBmcmFnbWVudCBpcyBpbnNlcnRlZCBpbiB0aGUgY29ycmVjdCBvcmllbnRhdGlvbiBhbmQgdGhhdCB0aGUgQ0Ytc3BlY2lmaWMgcmVwb3J0ZXIgc3lzdGVtIGhhcyBiZWVuIHN1Y2Nlc3NmdWxseSBjb25zdHJ1Y3RlZCB3aXRob3V0IGFueSBlcnJvcnMuICA8L3A+XHJcbiAgICAgICAgICAgIDxPbmVGaWd1cmVcclxuICAgICAgICAgICAgcGljMT1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L25ldy1iYXNpYy1wYXJ0L2Nsb25pbmctb2YtcGRhczEyMTI0LXBlYXItZ2ZwLWdndGRlbC1lZGl0ZWQuc3ZnXCJcclxuICAgICAgICAgICAgYWx0MT1cIlwiXHJcbiAgICAgICAgICAgIGRlc2NyaXB0aW9uPVwiS2F0aGxlZWVlbiwgQ2hyaXN0aWFhYWFuXCJcclxuICAgICAgICAgICAgbnVtPXsyfVxyXG4gICAgICAgICAgICAvPlxyXG4gICAgICAgICAgPC9TdWJlc2N0aW9uPlxyXG4gICAgICAgICAgPFN1YmVzY3Rpb24gdGl0bGU9XCJwZWdSTkEgU2NyZWVuaW5nXCIgaWQ9XCJFeHBlcmltZW50czJcIj5cclxuICAgICAgICAgICAgPHA+SW4gY29ubmVjdGlvbiB3aXRoIHRoZSBvcHRpbWlzYXRpb24gb2YgcHJpbWUgZWRpdGluZyB3aXRoIHJlZ2FyZCB0byB0aGUgRjUwOGRlbCBtdXRhdGlvbiwgaXQgd2FzIG5lY2Vzc2FyeSB0byBjb21wYXJlIGRpZmZlcmVudCBwZWdSTkFzLCBhcyB0aGVpciBvcHRpbWFsIHN0cnVjdHVyZSBhbHdheXMgZGVwZW5kcyBvbiB0aGUgYXBwbGljYXRpb24gY29udGV4dC4gV2UgdGhlcmVmb3JlIGRlc2lnbmVkIGFuZCBjbG9uZWQgMTQgdmFyaWFudHMgb2YgcGVnUk5BcyBmb3IgdGhlIHRhcmdldCBvZiB0aGUgcmVwb3J0ZXIgc3lzdGVtIGFuZCB0aGVuIHRlc3RlZCB0aGVtIG9uIHRoZSByZXBvcnRlciBzeXN0ZW0gdXNpbmcgdGhlIFBFMiBzeXN0ZW0uIDwvcD5cclxuICAgICAgICAgICAgPHA+Rm9yIHBlZ1JOQSBzY3JlZW5pbmcsIHdlIGNvLXRyYW5zZmVjdGVkIHRoZSBIRUsyOTMgY2VsbHMgd2l0aCBvdXIgbW9kaWZpZWQgcmVwb3J0ZXIgcGxhc21pZCwgdGhlIHBlZ1JOQSBleHByZXNzaW5nIHBsYXNtaWQgYW5kIHBDTVYtUEUyLiBXZSB3ZXJlIHRoZW4gYWJsZSB0byBtZWFzdXJlIHRoZSBmbHVvcmVzY2VuY2UgYWZ0ZXIgNzIgaG91cnMgdXNpbmcgRkFDUyBhbmQgZXZhbHVhdGUgd2hpY2ggcGVnUk5BIHNob3dlZCB0aGUgaGlnaGVzdCBlZmZpY2llbmN5LiAgPC9wPlxyXG4gICAgICAgICAgICA8T25lRmlndXJlXHJcbiAgICAgICAgICAgIHBpYzE9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvZmFjcy1yZXN1bHRzLW1lY2hhbmlzbS9iaWxkOS5wbmdcIlxyXG4gICAgICAgICAgICBhbHQxPVwiXCJcclxuICAgICAgICAgICAgZGVzY3JpcHRpb249XCJQZXJjZW50YWdlIG9mIGZsdW9yZXNjZW50IEhFSzI5MyBjZWxscyA3MiBoIGFmdGVyIHRyYW5zZmVjdGlvbiB3aXRoIHZhcmlvdXMgcGVnUk5BcyAocGVnUk5BMS0xNCkgbm9ybWFsaXplZCB0byBwREFTMTIxMjQgcHJlLWVkaXRlZCBhcyBpbnRlcm5hbCBwb3NpdGl2ZSBjb250cm9sIGFzIHJlc3VsdCBvZiBmbG93IGN5dG9tZXRyeSBhbmFseXNpc1wiXHJcbiAgICAgICAgICAgIG51bT17M31cclxuICAgICAgICAgICAgLz5cclxuICAgICAgICAgICAgPHA+V2UgYWxzbyBjby10cmFuc2ZlY3RlZCB0aGUgQ0ZCRTQxby0gd2l0aCBvdXIgbW9kaWZpZWQgcmVwb3J0ZXIgcGxhc21pZCwgdGhlIHBsYXNtaWQgZXhwcmVzc2luZyBwZWdSTkEwNCBhcyB3ZWxsIGFzIHBDTVYtUEU2Yy4gQXMgYSByZXN1bHQsIHdlIG9ic2VydmVkIGZsdW9yZXNjZW5jZSwgaW5kaWNhdGluZyBzdWNjZXNzZnVsIGVkaXRpbmcgb2YgdGhlIHJlcG9ydGVyIHBsYXNtaWQuIFRoZSBuZWdhdGl2ZSBjb250cm9scyB0cmFuc2ZlY3RlZCB3aXRoIG9ubHkgb25lIG9mIHRoZSBwbGFzbWlkcyBlYWNoIHNob3dlZCBubyBmbHVvcmVzY2VuY2UsIHJvdXRpbmcgb3V0IG90aGVyIGZhY3RvcnMuXHUyMDJGVGhpcyBnYXZlIHVzIHZhbGlkYXRpb24sIHRoYXQgb3VyIHBlZ1JOQXMgd29yayBub3Qgb25seSBpbiBIRUssIGJ1dCBhbHNvIGluIGVwaXRoZWxpYWwgY2VsbHMgdGhhdCBleHByZXNzIENGVFIgRjUwOGRlbC5cdTIwMkYgPC9wPlxyXG4gICAgICAgICAgICA8VHdvVmVydGljYWxcclxuICAgICAgICAgICBkZXNjcmlwdGlvbj1cIk1pY3Jvc2NvcHkgcmVzdWx0cyBhZnRlciAyNGggb3IgNDhoLiBUcmFuc2ZlY3Rpb24gb2YgcERBUzEyMTI0LXByZWVkaXRlZCB3aXRoIGxpcG9mZWN0YW1pbmUgMzAwMCB3YXMgc3VjY2Vzc2Z1bGx5IGRvbmUgaW4gQ0ZCRTQxby0gY2VsbCBsaW5lIGFuZCB2aXNpYmxlIGFmdGVyIDQ4aC4gQ0ZCRTQxby0gY2VsbCBsaW5lIHdhcyB0cmFuc2ZlY3RlZCB3aXRoIHBEQVMtSURUIHdpdGggTGlwb2ZlY3RhbWluZSAzMDAwIGFuZCBhZnRlcndhcmRzIHdpdGggTE5QcyBpbmNsdWRpbmcgUEU2YyBhbmQgcGVnUk5BNCBhbmQgd2FzIGFmdGVyIDI0aCBmbHVvcmVzY2VuY2UgdmlzaWJsZS5cIlxyXG4gICAgICAgICAgIG51bT17NH1cclxuICAgICAgICAgICBiZz1cIndoaXRlXCJcclxuICAgICAgICAgICBhbHQxPVwiXCJcclxuICAgICAgICAgICBwaWMxPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2ZhY3MtcmVzdWx0cy1tZWNoYW5pc20vYmlsZDEwLTEucG5nXCJcclxuICAgICAgICAgICBwaWMyPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2ZhY3MtcmVzdWx0cy1tZWNoYW5pc20vYmlsZDEwLTIucG5nXCJcclxuICAgICAgICAgICAvPlxyXG4gICAgICAgICAgICA8cD5CYXNlZCBvbiB0aGUgcmVzdWx0cywgd2Ugd2VyZSBhYmxlIHRvIHNlbGVjdCA0IHBvc3NpYmxlIGNhbmRpZGF0ZXMgYW5kIG9uZSBuZWdhdGl2ZSBleGFtcGxlLCB3aG9zZSBhdHRyaWJ1dGVzIHdlIHRoZW4gdXNlZCB0byBjcmVhdGUgcGVnUk5BcyBmb3IgdGhlIENGVFIgdGFyZ2V0LiBUaGUgbmV4dCBzdGVwIGlzIHRvIHRlc3QgdGhlc2UgcGVnUk5BcyB1c2luZyBDRkJFNDFvLSBjZWxscyBieSBhZ2FpbiBjby10cmFuc2ZlY3RpbmcgdGhlc2Ugd2l0aCB0aHJlZSBwbGFzbWlkczogcmVwb3J0ZXIgcGxhc21pZCwgcGVnUk5BIGV4cHJlc3NpbmcgcGxhc21pZCBhbmQgcENNVi1QRTZjLCBhbmQgbWVhc3VyaW5nIGZsdW9yZXNjZW5jZSBhZnRlciA3MiBob3Vycy4gPC9wPlxyXG5cclxuICAgICAgICAgIDwvU3ViZXNjdGlvbj5cclxuICAgICAgICAgIDxTdWJlc2N0aW9uIHRpdGxlPVwiRnV0dXJlIEV4cGVyaW1lbnQ6IE5pY2thc2UgQXNzYXlcIiBpZD1cIkV4cGVyaW1lbnRzM1wiPlxyXG4gICAgICAgICAgIDxwPkluIHRoZSBuZXh0IHNlcmllcyBvZiBleHBlcmltZW50cywgd2Ugd291bGQgbGlrZSB0byBpbnZlc3RpZ2F0ZSB2YXJpb3VzIG11dGF0aW9uIGNhbmRpZGF0ZXMsIGluIHBhcnRpY3VsYXIgdGhlIHBvc3NpYmxlIFNwdUZ6MSBuaWNrYXNlcyAoQkJhX0s1MjQ3MTAxLSBCQmFfSzUyNDcxMDQpIGFuZCB2YXJpb3VzIFBsbUNhc3ggbmlja2FzZSB2YXJpYW50cyAoQkJhX0s1MjQ3MTA1LSBCQmFfSzUyNDcxMDcpLCBpbiBtb3JlIGRldGFpbCB1c2luZyB0aGUgUEU2YyBzeXN0ZW0uIDwvcD5cclxuICAgICAgICAgICB7LyogQmlsZCBOaWthc2UgKi99XHJcbiAgICAgICAgICAgPEg0IHRleHQ9XCJuU3B1RnoxIFwiLz5cclxuICAgICAgICAgICA8cD5UaGUgblNwdUZ6MSB2YXJpYW50cyBhcmUgZXhwcmVzc2VkIGluIHllYXN0IHN0cmFpbiBQaWNoaWEgcGFzdG9yaXNcdTIwMkYoU01EMTE2MyksIHdoaWNoIHdlIG9idGFpbmVkIGZyb20gTmlscyBCZXJlbHNtYW5uey8qIFtsaW5rIHp1IEhQLVRpbWVsaW5lXS4gKi99IEluIGFkdmFuY2UsIHRoZSBjb3JyZXNwb25kaW5nIGdlbmVzIHdlcmUgY2xvbmVkIGludG8gYSBzdWl0YWJsZSBleHByZXNzaW9uIHZlY3RvciwgcFBJQzlLLCB2aWEgR2lic29uIEFzc2VtYmx5IHRvIGVuc3VyZSBlZmZpY2llbnQgZXhwcmVzc2lvbiBvZiB0aGUgbmlja2FzZXMuIFRoZSBjbG9uaW5nIGFzIHdlbGwgYXMgdGhlIHN1YnNlcXVlbnQgZXhwcmVzc2lvbiBhbmQgcHVyaWZpY2F0aW9uIG9mIHRoZSBuaWNrYXNlcyB3ZXJlIGNhcnJpZWQgb3V0IGFjY29yZGluZyB0byBhIGRldGFpbGVkIHByb3RvY29sPFN1cFNjcm9sbExpbmsgbGFiZWw9XCIyXCIvPiAgdW5kZXIgdGhlIGV4cGVydCBndWlkYW5jZSBvZiBIYWthbiBTb3l0XHUwMEZDcmtbbGluayB6dSBIUCB0aW1lbGluZV0uIDwvcD5cclxuICAgICAgICAgICA8SDQgdGV4dD1cIm5QbG1DYXNYIFwiLz5cclxuICAgICAgICAgICA8cD5UaGUgblBsbUNhc1ggdmFyaWFudHMgYXJlIGV4cHJlc3NlZCBpbiBFLiBjb2xpIHN0cmFpbiBCTDIxRDMsIHdoaWNoIHdlIG9idGFpbmVkIGZyb20gQUcgTVx1MDBGQ2xsZXJ7LyogW2xpbmsgenUgSFAtVGltZWxpbmVdICovfS4gSW4gYWR2YW5jZSwgdGhlIGNvcnJlc3BvbmRpbmcgZ2VuZXMgd2VyZSBjbG9uZWQgaW50byBhIHN1aXRhYmxlIGV4cHJlc3Npb24gdmVjdG9yLCBwWk1CMTAyOSwgdmlhIEdpYnNvbiBBc3NlbWJseSB0byBlbnN1cmUgZWZmaWNpZW50IGV4cHJlc3Npb24gb2YgdGhlIG5pY2thc2VzLiBUaGUgY2xvbmluZyBhcyB3ZWxsIGFzIHRoZSBzdWJzZXF1ZW50IGV4cHJlc3Npb24gYW5kIHB1cmlmaWNhdGlvbiBvZiB0aGUgbmlja2FzZXMgd2VyZSBjYXJyaWVkIG91dCBhY2NvcmRpbmcgdG8gYSBkZXRhaWxlZCBwcm90b2NvbDxTdXBTY3JvbGxMaW5rIGxhYmVsPVwiMlwiLz4gLiA8L3A+XHJcbiAgICAgICAgICAgey8qIEJpbGQgYmVpZGUgICovfVxyXG4gICAgICAgICAgIDxwPkFmdGVyIHN1Y2Nlc3NmdWwgcHVyaWZpY2F0aW9uLCB0aGUgaXNvbGF0ZWQgbmlja2FzZXMgYXJlIGNvbXByZWhlbnNpdmVseSBhbmFseXplZCBhY2NvcmRpbmcgdG8gdmVyaWZ5IHRoZWlyIGFjdGl2aXR5IGFuZCBlZmZpY2llbmN5LiBUaGVzZSBhbmFseXNlcyB3aWxsIHNlcnZlIHRvIGV2YWx1YXRlIHRoZSBmdW5jdGlvbmFsaXR5IGFuZCBzdWl0YWJpbGl0eSBvZiB0aGUgbmlja2FzZXMgZm9yIHNwZWNpZmljIGFwcGxpY2F0aW9ucyBpbiBwcmltZSBlZGl0aW5nLiBTdWJzZXF1ZW50bHksIGRldGFpbGVkIGNoYXJhY3Rlcml6YXRpb24gZXhwZXJpbWVudHMgYXJlIHBsYW5uZWQgdG8gZGV0ZXJtaW5lIHRoZSBwcm9wZXJ0aWVzIG9mIHRoZSBuaWNrYXNlcywgaWYgZnVuY3Rpb25hbCwgaW5jbHVkaW5nIHRoZWlyIHNwZWNpZmljaXR5LCBlZGl0aW5nIGFjdGl2aXR5IGFuZCBwb3RlbnRpYWwgZm9yIHVzZSBpbiBwcmVjaXNlIGdlbmUgZWRpdGluZyBwcm9jZWR1cmVzLiA8L3A+XHJcbiAgICAgICAgICAgPHA+VmFsaWRhdGlvbiBvZiB0aGUgbmlja2FzZXMgd2lsbCBiZSBwZXJmb3JtZWQgaW4gZGlmZmVyZW50IGNlbGwgbGluZXMgdG8gY29uZmlybSB0aGVpciBlZmZpY2llbmN5IGFuZCByZWxpYWJpbGl0eSBpbiBhIGNlbGx1bGFyIGNvbnRleHQuIFRoZXNlIHZhbGlkYXRpb24gc3RlcHMgYXJlIGNydWNpYWwgdG8gZnVydGhlciBpbnZlc3RpZ2F0ZSB0aGUgcG90ZW50aWFsIG9mIFByaW1lIEd1aWRlIGZvciB0aGVyYXBldXRpYyBhcHBsaWNhdGlvbnMuIDwvcD5cclxuICAgICAgICAgIDwvU3ViZXNjdGlvbj5cclxuICAgICAgICAgIFxyXG4gICAgICAgIDwvU2VjdGlvbj5cclxuICAgICAgICA8U2VjdGlvbiB0aXRsZT1cIlBhcnRzIENvbGxlY3Rpb25cIiBpZD1cIlBhcnRzIENvbGxlY3Rpb25cIj5cclxuICAgICAgICAgIDxTdWJlc2N0aW9uIHRpdGxlPVwiQmFzaWMgUGFydHNcIiBpZD1cIlBhcnRzIENvbGxlY3Rpb24xXCI+XHJcbiAgICAgICAgICAgIDxQYXJ0VGFibGUgY29scz17aGVhZGNvbHN9IGRhdGE9e0Jhc2ljUGFydHN9Lz5cclxuICAgICAgICAgIDwvU3ViZXNjdGlvbj5cclxuICAgICAgICA8L1NlY3Rpb24+XHJcbiAgICAgICAgPFNlY3Rpb24gdGl0bGU9XCJSZWZlcmVuY2VzXCIgaWQ9XCJSZWZlcmVuY2VzXCI+XHJcbiAgICAgICAgICA8b2w+XHJcbiAgICAgICAgICA8UGFydFNvdXJjZXMvPlxyXG4gICAgICAgICAgPC9vbD5cclxuICAgICAgICA8L1NlY3Rpb24+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgKTtcclxuICB9XHJcbiAgIiwgImV4cG9ydCBmdW5jdGlvbiBQQVJUSCgpIHtcclxuXHJcbiAgcmV0dXJuIChcclxuICAgIDxIZWFkZXJCb3ggdGl0bGU9XCJQYXJ0c1wiIGlkPVwicGFyaGVhZFwiPlxyXG4gICAgICBcclxuICAgIDwvSGVhZGVyQm94PlxyXG4gICk7XHJcbn1cclxuXHJcbmltcG9ydCBIZWFkZXJCb3ggZnJvbSBcIi4uL2NvbXBvbmVudHMvSGVhZGVyQm94XCI7IiwgImltcG9ydCB7IEg1IH0gZnJvbSBcIi4uL0hlYWRpbmdzXCI7XHJcbmltcG9ydCBQcmVDeXNlIGZyb20gXCIuLi9wcmVjeXNlXCI7XHJcblxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIENhbFRhYnMoKXtcclxuXHJcbiAgICBsZXQgdGFibGlzdDogSlNYLkVsZW1lbnRbXSA9IFtdOyBcclxuICAgIGZvciAobGV0IGluZGV4ID0gMDsgaW5kZXggPCB0YWJzLmxlbmd0aDsgaW5kZXgrKykge1xyXG4gICAgICAgIHRhYmxpc3QucHVzaChcclxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjYWwtZW50cnlcIiBpZD17dGFic1tpbmRleF0uY3NzbmFtZX0gc3R5bGU9e3tkaXNwbGF5OiBcIm5vbmVcIn19PlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJlbnRyeS1oZWFkZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICA8SDUgdGV4dD17cGFyc2VEYXRlRnJvbUNvZGUodGFic1tpbmRleF0uY3NzbmFtZSl9Lz5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJlbnRyeS1ib2R5XCI+XHJcbiAgICAgICAgICAgICAgICAgICAge3RhYnNbaW5kZXhdLm5vZGV9XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICApXHJcbiAgICAgICAgXHJcbiAgICB9XHJcbiAgICByZXR1cm4gdGFibGlzdDsgXHJcbn1cclxuXHJcbmxldCB0YWJzID0gW1xyXG4gICAgeyAgIFxyXG4gICAgICAgIGNzc25hbWU6IFwiZmVicnVhcnkyN1wiLCBcclxuICAgICAgICBub2RlOiA8PjxoMT5UZWFtIE1lZXRpbmc8L2gxPlxyXG5cclxuICAgICAgICA8aDI+T3JnYW5pc2F0aW9uPC9oMj5cclxuICAgICAgICA8cD5UaGUgdGVhbSBkaXNjdXNzZWQgaW1wb3J0YW50IGRlYWRsaW5lcywgaW5jbHVkaW5nIHRoZSBUZWFtIE1lbWJlciBUaWNrZXQgZHVlIG9uIEFwcmlsIDV0aCwgdGhlIFRlYW0gR3JhbmQgSmFtYm9yZWUgRmVlIG9uIEp1bHkgMzFzdCwgdGhlIFdpa2kgRnJlZXplIG9uIE9jdG9iZXIgMm5kLCBhbmQgdGhlIHByZXNlbnRhdGlvbiB2aWRlbyBzdWJtaXNzaW9uIG9uIE9jdG9iZXIgOXRoLiBEZWxpdmVyYWJsZXMgd2VyZSBvdXRsaW5lZCwgd2l0aCBlYWNoIG1lbWJlciBhc3NpZ25pbmcgdGhlbXNlbHZlcyB0byB0aHJlZSBzdWJqZWN0IGFyZWFzLCB3aGljaCBpbmNsdWRlIGEgdmlsbGFnZSBwcmVzZW50YXRpb24gKDE1IG1pbnV0ZXMpLCBhIGp1ZGdpbmcgc2Vzc2lvbiAoMzAgbWludXRlcyksIGFuZCBhIHRlYW0gYm9vdGguIEVzc2VudGlhbCBmb3JtcyBzdWNoIGFzIHRoZSBwcm9qZWN0IHNhZmV0eSBmb3JtLCBqdWRnaW5nIGZvcm0sIGFuZCBhdHRyaWJ1dGlvbiBmb3JtIHdlcmUgaGlnaGxpZ2h0ZWQsIGFsb25nIHdpdGggdmlkZW8gcmVxdWlyZW1lbnRzIGZvciBib3RoIHByZXNlbnRhdGlvbiBhbmQgcHJvbW90aW9uLjwvcD5cclxuICAgICAgICBcclxuICAgICAgICA8aDI+UHVibGljIE91dHJlYWNoPC9oMj5cclxuICAgICAgICA8cD5UZWFtcyBhcmUgdG8gYmUgZXN0YWJsaXNoZWQgZm9yIHZhcmlvdXMgcmVzcG9uc2liaWxpdGllcywgaW5jbHVkaW5nIGEgcHVibGljIG91dHJlYWNoIHRlYW0gd2l0aCBhIG1pbmltdW0gb2YgZml2ZSBtZW1iZXJzIGZvY3VzaW5nIG9uIHNvY2lhbCBtZWRpYSBhbmQgbmV0d29ya2luZyB3aXRoIG90aGVyIGlHRU0gdGVhbXMuIFNwZWNpZmljIHBvc2l0aW9ucyB0byBmaWxsIGluY2x1ZGUgYSBkZWFkbGluZSBtYW5hZ2VyIGFuZCB0ZWFtcyBmb3Igc3BvbnNvcmluZywgdGhlbWUgYXJlYXMsIGFuZCB0aGUgR3JhbmQgSmFtYm9yZWUgcHJlc2VudGF0aW9ucy4gQWRkaXRpb25hbCByZXNwb25zaWJpbGl0aWVzIGluY2x1ZGUgb3JnYW5pemluZyB0aGUgdmlsbGFnZSBib290aCwgZGVzaWduIHRlYW0gdGFza3MsIGFuZCBlbnN1cmluZyB0aGUgY29tcGxldGlvbiBvZiBzYWZldHksIGp1ZGdpbmcsIGFuZCBhdHRyaWJ1dGlvbiBmb3Jtcy48L3A+XHJcbiAgICAgICAgXHRcclxuICAgICAgICA8aDI+SmFtYm9yZWUgJiBNZWV0VXBzPC9oMj5cclxuICAgICAgICA8cD5UaGUgdGVhbSBwbGFucyBhIHRyaXAgdG8gUGFyaXMgdmlhIHRyYWluLCB3aGljaCB0YWtlcyBhcHByb3hpbWF0ZWx5IDYgaG91cnMgYW5kIDE1IG1pbnV0ZXMuIFRyYXZlbCBjb3N0cyB3aWxsIGJlIGNvdmVyZWQsIHdpdGggdGVhbSBtZW1iZXJzIG9ubHkgbmVlZGluZyB0byBwYXkgZm9yIG1lYWxzLiBTdWdnZXN0ZWQgdHJhdmVsIGRhdGVzIGFyZSBmcm9tIE9jdG9iZXIgMjFzdCB0byAzMXN0LCBjb2luY2lkaW5nIHdpdGggdGhlIGlHRU0gSmFtYm9yZWUgZnJvbSBPY3RvYmVyIDIzcmQgdG8gMjZ0aCwgd2l0aCBhY2NvbW1vZGF0aW9uIHRvIGJlIGRldGVybWluZWQgYmFzZWQgb24gdGVhbSBwcmVmZXJlbmNlcy48L3A+XHJcbiAgICAgICAgXHJcbiAgICAgICAgPGgyPkxpbmtzICYgQ288L2gyPlxyXG4gICAgICAgIDxwPkEgcHJlc2VudGF0aW9uIHJlZ2FyZGluZyBpR0VNIGd1aWRlbGluZXMgd2lsbCBiZSBwcm92aWRlZCBieSBTaW5hbi48L3A+XHJcbiAgICAgICAgPC8+XHJcbiAgICB9LCBcclxuICAgIHtcclxuICAgICAgICBjc3NuYW1lOiBcImZlYnJ1YXJ5MjlcIixcclxuICAgICAgICBub2RlOiA8PjxoMT5UZWFtIE1lZXRpbmc8L2gxPlxyXG5cclxuICAgICAgICA8aDI+VXJnZW50PC9oMj5cclxuICAgICAgICA8cD5UaGUgdGVhbSBkaXNjdXNzZWQgdGhlIHN0cnVjdHVyZSBmb3IgdG9waWMgaWRlbnRpZmljYXRpb24sIGNvbnNpZGVyaW5nIHdoZXRoZXIgdG8gc3RhcnQgd2l0aCBnZW5lcmFsIG9yIHNwZWNpZmljIGFyZWFzLiBBbiBpZGVhIHdhcyBwcm9wb3NlZCB0byBjcmVhdGUgdGhyZWUgb3IgbW9yZSB0b3BpYyBhcmVhcyBmb3IgZ3JvdXAgZm9ybWF0aW9uIGJhc2VkIG9uIHBlcnNvbmFsIGludGVyZXN0cywgd2l0aCBlYWNoIG1lbWJlciBwcmVwYXJpbmcgYSBzbGlkZSB0byBmYWNpbGl0YXRlIGNsdXN0ZXJpbmcgaWRlYXMuIFNpbmFuIHdpbGwgY3JlYXRlIGEgcHJlc2VudGF0aW9uIHRvIGJlIGNvbXBsZXRlZCBieSBUaHVyc2RheSwgTWFyY2ggN3RoLjwvcD5cclxuICAgICAgICBcclxuICAgICAgICA8aDI+T3JnYW5pc2F0aW9uPC9oMj5cclxuICAgICAgICA8cD5Gb3IgZnV0dXJlIGNvbW11bmljYXRpb24sIHRlYW1zIHdpbGwgdXNlIGEgZGVkaWNhdGVkIHBsYXRmb3JtIHN0YXJ0aW5nIE1hcmNoIDV0aCwgd2hpbGUgU2xhY2sgd2lsbCBzZXJ2ZSBmb3IgaW5mb3JtYWwgbmV0d29ya2luZy4gVGhlIG5lZWQgZm9yIGludGVybmFsIGRlYWRsaW5lcyB3YXMgZW1waGFzaXplZCwgc3VnZ2VzdGluZyBvbmUgd2VlayBwcmlvciB0byBvZmZpY2lhbCBkZWFkbGluZXMsIGFuZCBldmVyeW9uZSBpcyBlbmNvdXJhZ2VkIHRvIG1vbml0b3IgdGhlIGlHRU0gd2Vic2l0ZSBmb3IgdXBkYXRlcy4gUG9zc2libGUgaW5pdGlhdGl2ZXMgaW5jbHVkZSBvcmdhbml6aW5nIGEgc3RpY2tlciBhbGJ1bSwgbmV3c2xldHRlciwgcG9zdGNhcmQgY2FtcGFpZ24sIGFuZCBldmVuIGEgTWluaSBKYW1ib3JlZSBvciBKdW5pb3IgSmFtIGluIEJpZWxlZmVsZC48L3A+XHJcbiAgICAgICAgXHJcbiAgICAgICAgPGgyPkRvY3VtZW50YXRpb248L2gyPlxyXG4gICAgICAgIDxwPlV0aWxpemluZyBab3Rlcm8gYXMgYSBsaXRlcmF0dXJlIHBsYXRmb3JtIHdhcyBhZ3JlZWQgdXBvbiwgd2l0aCBhdHRlbnRpb24gbmVlZGVkIG9uIHRoZSBhY2N1cmFjeSBvZiBjaXRhdGlvbnMsIGVzcGVjaWFsbHkgZm9yIG9sZGVyIHB1YmxpY2F0aW9ucy4gVGhlIHByb2plY3QgZGVzY3JpcHRpb24gc2hvdWxkIGJlIGNvbmNpc2UsIGluY29ycG9yYXRpbmcgcmVsZXZhbnQgbGl0ZXJhdHVyZSBhbmQgZW5nYWdpbmcgY29udGVudCBmb3IganVkZ2VzLCB3aXRoIGEgZmluYWwgdmVyc2lvbiBkdWUgYnkgdGhlIFdpa2kgRnJlZXplIGFuZCBhIHByZWxpbWluYXJ5IHZlcnNpb24gYnkgSnVuZSAyMXN0LiBBZGRpdGlvbmFsbHksIG5ldyBwYXJ0cyBtdXN0IGJlIGNyZWF0ZWQgaWYgdW5hdmFpbGFibGUgaW4gdGhlIFJlZ2lzdHJ5LCBlbnN1cmluZyBjb21wYXRpYmlsaXR5IHdpdGggc3BlY2lmaWMgcmVzdHJpY3Rpb24gZW56eW1lcy48L3A+XHJcbiAgICAgICAgXHJcbiAgICAgICAgPGgyPlByb2plY3QgU29mdHdhcmU8L2gyPlxyXG4gICAgICAgIDxwPkRpc2N1c3Npb24gaGlnaGxpZ2h0ZWQgdGhlIHBvdGVudGlhbCByZWxldmFuY2Ugb2YgcHJvamVjdCBzb2Z0d2FyZSBkZXBlbmRpbmcgb24gdGhlIGZvY3VzLCB3aXRoIGZ1cnRoZXIgZGV0YWlscyBhdmFpbGFibGUgaW4gdGhlIHVwY29taW5nIHByZXNlbnRhdGlvbi4gQXdhcmRzIHdlcmUgb3V0bGluZWQsIGVtcGhhc2l6aW5nIHRoYXQgbWVkYWxzIGRvIG5vdCByZXF1aXJlIHNwZWNpYWwgYXdhcmRzIGFuZCBkZXBlbmQgb24gcHJvamVjdCBzdWNjZXNzIGFuZCBodW1hbiBwcmFjdGljZXMuIFRoZSB0ZWFtIGFpbXMgZm9yIHRoZSBHb2xkIG1lZGFsLCB3aGljaCBuZWNlc3NpdGF0ZXMgdGhyZWUgbWFqb3IgYWNoaWV2ZW1lbnRzIGFjcm9zcyB2YXJpb3VzIGNhdGVnb3JpZXMuPC9wPlxyXG4gICAgICAgIFxyXG4gICAgICAgIDxoMj5UZWFtPC9oMj5cclxuICAgICAgICA8cD5BIHRlYW0tYnVpbGRpbmcgd2Vla2VuZCB3YXMgcHJvcG9zZWQsIHdpdGggZGV0YWlscyBvbiBwcmljaW5nIGFuZCBhIGZpbmFsIHZvdGUgdG8gYmUgY2xhcmlmaWVkIGJ5IEthdGhsZWVuIGFuZCBLaW0uIFRoZSB0ZWFtIGFsc28gYWdyZWVkIHRvIGEgYm93bGluZyBhY3Rpdml0eSBpbnN0ZWFkIG9mIHRoZSBtZWV0aW5nIG9uIE1hcmNoIDV0aCwgd2l0aCBmdXJ0aGVyIGluZm9ybWF0aW9uIHRvIGJlIHNoYXJlZCB2aWEgV2hhdHNBcHAuPC9wPlxyXG4gICAgICAgIFxyXG4gICAgICAgIDxoMj5UYXNrczwvaDI+XHJcbiAgICAgICAgPHA+U2luYW4gaXMgdGFza2VkIHdpdGggY3JlYXRpbmcgYSBwcmVzZW50YXRpb24gdG8gb3V0bGluZSB2YXJpb3VzIHRvcGljcyBmb3IgdGhlIHRlYW0uPC9wPlxyXG4gICAgICAgIFxyXG4gICAgICAgIDxoMj5XaWtpPC9oMj5cclxuICAgICAgICA8cD5UaGUgd2lraSB3aWxsIGJlIGVzc2VudGlhbCBmb3IgZG9jdW1lbnRpbmcgdGhlIHByb2plY3QgYW5kIHByZXNlbnRpbmcgcmVzZWFyY2guIEl0IHdpbGwgaW5jbHVkZSBzZWN0aW9ucyBmb3IgY29udHJpYnV0aW9ucyBhbmQgbXVzdCBub3QgYWx0ZXIgaUdFTSBsaW5rcy4gQSBiYXNpYyB3aWtpIHdpbGwgYmUgZXN0YWJsaXNoZWQsIHdpdGggYSBcdTIwMUNDb2xkIFdlZG5lc2RheVx1MjAxRCBwbGFubmVkIGZvciByZXZpZXdpbmcgdmlkZW9zIGFuZCBvdGhlciBtYXRlcmlhbHMgYmVmb3JlIHRoZSBXaWtpIEZyZWV6ZS48L3A+XHJcbiAgICAgICAgXHJcbiAgICAgICAgPGgyPkxpbmtzICYgQ288L2gyPlxyXG4gICAgICAgIDxwPlNpbmFuIHdpbGwgYWxzbyBwcm92aWRlIGEgcHJlc2VudGF0aW9uIHJlZ2FyZGluZyBpR0VNIGd1aWRlbGluZXMuPC9wPlxyXG4gICAgICAgIDwvPlxyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgICBjc3NuYW1lOiBcIm1hcmNoN1wiLCBcclxuICAgICAgICBub2RlOiA8PjxoMT5UZWFtIE1lZXRpbmc8L2gxPlxyXG5cclxuICAgICAgICA8aDI+T3JnYW5pc2F0aW9uPC9oMj5cclxuICAgICAgICA8cD5UaGUgdGVhbSBkaXNjdXNzZWQgdGhlIGZvcm1hdGlvbiBvZiBzdWJ0ZWFtcywgZW1waGFzaXppbmcgdGhhdCBtb2RlcmF0aW9uIGFuZCBtYWluIHJlc3BvbnNpYmlsaXRpZXMgYXJlIHNoYXJlZCwgcmF0aGVyIHRoYW4gdW5pbGF0ZXJhbCBkZWNpc2lvbi1tYWtpbmcuIEEgZGVzaWduYXRlZCBwZXJzb24gd2lsbCBvdmVyc2VlIGFsbCBkZWFkbGluZXMgYW5kIGNoZWNrIHRoZW0gdHdvIHdlZWtzIGluIGFkdmFuY2UsIHdpdGggaW50ZXJuYWwgZGVhZGxpbmVzIG1hbmFnZWQgdGhyb3VnaCBhIGNhbGVuZGFyIG9uIE1pY3Jvc29mdCBUZWFtcywgd2hpY2ggd2lsbCBhbHNvIGluY2x1ZGUgYmlydGhkYXlzLiBTbWFsbCBncm91cCBicmFpbnN0b3JtaW5nIHNlc3Npb25zIGFpbWVkIHRvIGdlbmVyYXRlIDEtMyBjb25jcmV0ZSBwcm9qZWN0IGlkZWFzLCB3aXRoIHN1bW1hcmllcyByZWNvcmRlZCBmb3IgcmVmZXJlbmNlLjwvcD5cclxuICAgICAgICBcclxuICAgICAgICA8cD5Gb3IgbGl0ZXJhdHVyZSBtYW5hZ2VtZW50LCBab3Rlcm8gd2lsbCBiZSB1dGlsaXplZCBmb3Igb3JnYW5pemluZyBwdWJsaWNhdGlvbnMgaW50byBzdWJmb2xkZXJzLCByZXF1aXJpbmcgdGhlIHVzZSBvZiBET0kgb3IgSVNCTiBmb3IgYXR0YWNobWVudHMuIFRoaXMgd2lsbCBlbnN1cmUgZWFzeSBhY2Nlc3MgYW5kIHByZXZlbnQgZHVwbGljYXRlIGVudHJpZXMuIE1pY3Jvc29mdCBUZWFtcyB3aWxsIGJlIHNldCB1cCBmb3IgY29tbXVuaWNhdGlvbiwgdHJhbnNmZXJyaW5nIGluZm9ybWF0aW9uIGZyb20gTm90aW9uIHRvIGZhY2lsaXRhdGUgY2FsZW5kYXIgbWFuYWdlbWVudCwgY2hhdCwgYW5kIGRvY3VtZW50IHVwbG9hZHMuPC9wPlxyXG4gICAgICAgIFxyXG4gICAgICAgIDxoMj5UZWFtPC9oMj5cclxuICAgICAgICA8cD5UaGUgYm93bGluZyBldmVudCB3YXMgYSBzdWNjZXNzLCBhbmQgcGhvdG9zIHdlcmUgdGFrZW4gZm9yIHBvdGVudGlhbCBpbmNsdXNpb24gaW4gYSBcIlBob3RvIEJvb2suXCIgVGhlcmUgaXMgYSBzdWdnZXN0aW9uIHRvIG1ha2UgdGhpcyBhIG1vbnRobHkgdGVhbSBldmVudCwgd2l0aCBhbiB1cGNvbWluZyBleGN1cnNpb24gd2hlcmUgdGhlIHRlYW0gd2lsbCB2b3RlIGJldHdlZW4gVGhlIEhhZ3VlIG9yIEhhbWJ1cmcsIGNvb3JkaW5hdGVkIGJ5IEtpbSBhbmQgS2F0aGxlZW4uPC9wPlxyXG4gICAgICAgIFxyXG4gICAgICAgIDxoMj5KYW1ib3JlZSAmIE1lZXRVcHM8L2gyPlxyXG4gICAgICAgIDxwPlRoZSB0ZWFtIGlkZW50aWZpZWQgbWVtYmVycyByZXNwb25zaWJsZSBmb3IgcGxhbm5pbmcgdGhlIFBhcmlzIGV4Y3Vyc2lvbiBhbmQgZGlzY3Vzc2VkIHByZXBhcmluZyBhIGRldGFpbGVkIGRvY3VtZW50IGNvdmVyaW5nIGFjY29tbW9kYXRpb24gYW5kIHRyYWluIHRyYXZlbC4gRW1waGFzaXMgd2FzIHBsYWNlZCBvbiBtYWludGFpbmluZyB0ZWFtIGR5bmFtaWNzIGR1cmluZyB0aGlzIHBsYW5uaW5nIHBoYXNlLjwvcD5cclxuICAgICAgICBcclxuICAgICAgICA8aDI+UHVibGljIE91dHJlYWNoPC9oMj5cclxuICAgICAgICA8cD5UaGUgcHVibGljIG91dHJlYWNoIHRlYW0sIGNvbnNpc3Rpbmcgb2YgTHlkaWEsIEFzYWwsIFBoaWxpcCwgS2F5YSwgYW5kIFZlcmEsIHdpbGwgZm9jdXMgb24gc29jaWFsIG1lZGlhIGFuZCBuZXR3b3JraW5nIGluaXRpYXRpdmVzLiBUaGV5IGFyZSBwbGFubmluZyBhY3Rpdml0aWVzIHN1Y2ggYXMgcG9zdGNhcmQgYW5kIHN0aWNrZXIgY2FtcGFpZ25zIGFuZCBhaW0gdG8gb3JnYW5pemUgYSBNaW5pIEphbWJvcmVlIGludm9sdmluZyBhcHByb3hpbWF0ZWx5IDI1IHRlYW1zIGZyb20gYWNyb3NzIEV1cm9wZSwgYWxvbmcgd2l0aCBjb250cmlidXRpb25zIHRvIGxvY2FsIHJhZGlvL25ld3NwYXBlciBlZmZvcnRzLjwvcD5cclxuICAgICAgICBcclxuICAgICAgICA8aDI+U3BvbnNvcmluZzwvaDI+XHJcbiAgICAgICAgPHA+VGhlIHNwb25zb3JpbmcgdGVhbSwgbWFkZSB1cCBvZiBWaW5jZW50LCBMeWRpYSwgQW5uYSwgTmFuZSwgRGF5YW4sIGFuZCBJc2FiZWxsLCB3aWxsIGRldmVsb3AgYW4gYXBwbGljYXRpb24gYm9va2xldCBvdXRsaW5pbmcgd2hhdCBpR0VNIGVudGFpbHMgZm9yIHBvdGVudGlhbCBzcG9uc29ycy4gVGhlaXIgdGFza3MgaW5jbHVkZSBuZWdvdGlhdGluZyBjb250cmFjdCB0ZXJtcyBhbmQgcHJpY2luZyBjYXRlZ29yaWVzLCB3aXRoIGFuIGVtcGhhc2lzIG9uIHN0YXJ0aW5nIHRvIGNvbnRhY3Qgc3BvbnNvcnMgaW1tZWRpYXRlbHkuPC9wPlxyXG4gICAgICAgIDwvPlxyXG4gICAgfSwgXHJcbiAgICB7XHJcbiAgICAgICAgY3NzbmFtZTogXCJtYXJjaDEyXCIsIFxyXG4gICAgICAgIG5vZGU6IDw+PGgxPlRlYW0gTWVldGluZzwvaDE+XHJcblxyXG4gICAgICAgIDxoMj5PcmdhbmlzYXRpb248L2gyPlxyXG4gICAgICAgIDxwPkJyYWluc3Rvcm1pbmcgd2lsbCBjb250aW51ZSBpbiB0aGUgc2FtZSBncm91cHMsIHdpdGggZWFjaCBncm91cCBzZWxlY3RpbmcgdHdvIHRvcGljcyB0byBwcmVzZW50IGF0IHRoZSBuZXh0IG1lZXRpbmcuIEFueW9uZSB3aXRob3V0IGFjY2VzcyB0byB0aGUgbWVldGluZyByb29tIHNob3VsZCBlbWFpbCBMdXR6IFdvYmJlLCB3aXRoIEpcdTAwRjZybiBjb3BpZWQsIGZvciBhc3Npc3RhbmNlLiBEZXZpY2UgYm9ycm93aW5nIGNhcmRzIGhhdmUgYmVlbiBkaXN0cmlidXRlZCwgZ3JhbnRpbmcgYWNjZXNzIHRvIHRoZSBEaWdpdGFsIExlYXJuaW5nIExhYiwgYW5kIHJlcXVlc3RzIHRvIHVzZSBmYWNpbGl0aWVzIGxpa2UgdGhlIDNEIHByaW50ZXIgc2hvdWxkIGJlIHNlbnQgdmlhIGVtYWlsLjwvcD5cclxuICAgICAgICBcclxuICAgICAgICA8aDI+VGVhbTwvaDI+XHJcbiAgICAgICAgPHA+VGhlIHRlYW0gaXMgcGxhbm5pbmcgYSB3ZWVrZW5kIGluIFRoZSBIYWd1ZSwgZm9jdXNpbmcgb24gd29ya3Nob3AgY29udGVudCBhbmQgdGhlIHBvc3NpYmlsaXR5IG9mIGhvc3RpbmcgYSB3b3Jrc2hvcCB0aGVtc2VsdmVzLiBDb29yZGluYXRpb24gd2l0aCB0aGUgTGVpZGVuIGFuZCBEZWxmdCB0ZWFtcyBmb3IgYSBtZWV0LXVwIGFuZCBhIHZpc2l0IHRvIHRoZSByZXNlYXJjaCBjZW50ZXIgaXMgdW5kZXJ3YXksIHdpdGggZGlzY3Vzc2lvbnMgbmVlZGVkIG9uIHBhcnRpY2lwYW50IG51bWJlcnMsIGluY2x1ZGluZyBzdXBlcnZpc29ycyBhbmQgUElzLiBBZGRpdGlvbmFsbHksIGEgbWVtZSBjaGFubmVsIHdpbGwgYmUgY3JlYXRlZCB0byBzaGFyZSBsYWItcmVsYXRlZCBodW1vci48L3A+XHJcbiAgICAgICAgXHJcbiAgICAgICAgPGgyPkphbWJvcmVlICYgTWVldFVwczwvaDI+XHJcbiAgICAgICAgPHA+QSBwb2xsIHdpbGwgYmUgZGlzdHJpYnV0ZWQgdG8gYXNzZXNzIHRoZSBmZWFzaWJpbGl0eSBvZiB0aGUgcGxhbm5lZCB0cmlwIHRvIFBhcmlzIGZyb20gT2N0b2JlciAyMSB0byBPY3RvYmVyIDMxLCBhc2tpbmcgZm9yIHBhcnRpY2lwYXRpb24gaW4gdGhlIGZ1bGwgdHJpcCBvciBwYXJ0IG9mIGl0LiBUaGUgc3VpdGFiaWxpdHkgb2YgQmllbGVmZWxkIGZvciBhIG1lZXQtdXAgd2lsbCBiZSBldmFsdWF0ZWQsIHdpdGggYXNzaXN0YW5jZSBmcm9tIHRoZSBIYW1idXJnL0ZyYW5rZnVydCB0ZWFtcyBmb3IgcHJvZ3JhbSBhbmQgc3BlYWtlciBvcmdhbml6YXRpb24uIEpcdTAwRjZybiBoYXMgY29udGFjdHMgZm9yIHBvdGVudGlhbCBzcGVha2VycywgYW5kIHRoZSBtZWV0LXVwIHBsYW4gaXMgaW4gZGV2ZWxvcG1lbnQsIHBlbmRpbmcgb2ZmaWNpYWwgYXBwcm92YWwuPC9wPlxyXG4gICAgICAgIFxyXG4gICAgICAgIDxoMj5UYXNrczwvaDI+XHJcbiAgICAgICAgPHA+QWxsIG1lZXRpbmcgbWludXRlcyB3aWxsIGJlIG1lcmdlZCBpbnRvIGEgc2luZ2xlIFdvcmQgZG9jdW1lbnQgZm9yIGNsYXJpdHkuIEEgdGVhbSBvZiBhdCBsZWFzdCB0aHJlZSAoQ2hyaXN0aWFuLCBOYW5lLCBhbmQgTGlzYSkgaXMgdGFza2VkIHdpdGggc2V0dGluZyB1cCB0aGUgQXR0cmlidXRpb24gRm9ybSB0byBkb2N1bWVudCBjb250cmlidXRpb25zIGFuZCBkZWxpdmVyYWJsZXMuIEFsbCBtZW1iZXJzIGFyZSBlbmNvdXJhZ2VkIHRvIG1vbml0b3IgdGhlIGNhbGVuZGFyIGNyZWF0ZWQgYnkgS2FpIGFuZCBhZGQgYW55IGltcG9ydGFudCBkYXRlcyBhbmQgZGVhZGxpbmVzLjwvcD5cclxuICAgICAgICBcclxuICAgICAgICA8aDI+UHVibGljIE91dHJlYWNoPC9oMj5cclxuICAgICAgICA8cD5BIHRvdXIgb2YgdGhlIE1ha2luZyBNZWRpYSBMYWIgaXMgc2NoZWR1bGVkIGZvciBUaHVyc2RheSwgTWFyY2ggMTQsIGF0IDE3OjMwLCB3aXRoIHBvdGVudGlhbCBjb2xsYWJvcmF0aW9uIHdpdGggdGhlIEhhbWJ1cmcgYW5kIEZyYW5rZnVydCB0ZWFtcyBmb3IgYSByb3RhdGluZy1sb2NhdGlvbiBtZWV0LXVwLiBBIHZvdGUgd2lsbCBiZSBoZWxkIHJlZ2FyZGluZyB0aGUgb3JnYW5pemF0aW9uIG9mIHRoaXMgeWVhcidzIG1lZXQtdXAgaW4gQmllbGVmZWxkLCBhbmQgYSBwcm9mZXNzaW9uYWwgdGVhbSBwaG90byBpcyBwbGFubmVkLCB3aXRoIGNvbnNlbnQgYWxyZWFkeSBvYnRhaW5lZCBmcm9tIGFsbCBwcmVzZW50IG1lbWJlcnMuPC9wPlxyXG4gICAgICAgIFxyXG4gICAgICAgIDxoMj5TcG9uc29yaW5nPC9oMj5cclxuICAgICAgICA8cD5VcGNvbWluZyBldmVudHMgaW5jbHVkZSB0aGUgTGFiU3VwcGx5IEZhaXIgb24gQXByaWwgMjQgYW5kIEZhbWVMYWIsIHdpdGggcHJlbGltaW5hcnkgcm91bmRzIG9uIEFwcmlsIDExIGFuZCB0aGUgZmluYWxzIG9uIEp1bmUgMTIgaW4gQmllbGVmZWxkLiBUaGUgSnVuaW9ySmFtIGluIE1cdTAwRkNuc3RlciBpcyBoaWdobGlnaHRlZCBhcyBhIFwibWFuZGF0b3J5IGV2ZW50XCIgZnJvbSBBdWd1c3QgMTYgdG8gMTgsIGFuZCBwbGFubmluZyBmb3IgYXR0ZW5kYW5jZSBhbmQgb3JnYW5pemF0aW9uIGlzIG5lZWRlZC4gVGhlIHNwb25zb3JpbmcgdGVhbSB3aWxsIG1lZXQgdHdpY2UgYSB3ZWVrIGFzIHBsYW5uaW5nIGlzIGp1c3QgYmVnaW5uaW5nLjwvcD5cclxuICAgICAgICBcclxuICAgICAgICA8aDI+V2lraTwvaDI+XHJcbiAgICAgICAgPHA+TWF4aW1pbGlhbiBlbXBoYXNpemVkIHRoZSBuZWVkIGZvciBleHBlcmllbmNlIHdpdGggSFRNTCwgQ1NTLCBhbmQgSmF2YVNjcmlwdCBmb3IgYnVpbGRpbmcgdGhlIFdpa2kgcGFnZSwgYW5kIGhlIHdpbGwgb3JnYW5pemUgYW4gaW50cm9kdWN0b3J5IGNvdXJzZSB0byBlbnN1cmUgZXZlcnlvbmUgbGVhcm5zIHRoZSBiYXNpY3MgYmVmb3JlIHRoZSBXaWtpIEZyZWV6ZS4gSGUgd2lsbCBhbHNvIGNvbmZpZ3VyZSBzb2Z0d2FyZSBmb3IgZXJyb3IgZGV0ZWN0aW9uIGFuZCBhdXRvY29tcGxldGUgZnVuY3Rpb25hbGl0eSwgYW5kIHdpbGwgYWRkcmVzcyB0aGUgdGltZSBkZWxheSBmb3IgV2lraSB1cGRhdGVzLiBJbnNwaXJhdGlvbiBjYW4gYmUgZHJhd24gZnJvbSBwcmV2aW91cyBXaWtpIGRlc2lnbnMsIHdpdGggYSBnb2FsIHRvIGVuaGFuY2UgY29tcGV0aXRpdmVuZXNzIGluIHRoZSBpR0VNIGNvbnRlc3QuPC9wPlxyXG4gICAgICAgIDwvPlxyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgICBjc3NuYW1lOiBcIm1hcmNoMTRcIiwgXHJcbiAgICAgICAgbm9kZTogPD48aDE+VGVhbSBNZWV0aW5nPC9oMT5cclxuXHJcbiAgICAgICAgPGgyPk9yZ2FuaXNhdGlvbjwvaDI+XHJcbiAgICAgICAgPHA+VGhlIHRlYW0gYnJhaW5zdG9ybWVkIHZhcmlvdXMgdG9waWNzIGZvciBwb3RlbnRpYWwgcHJvamVjdHMsIGluY2x1ZGluZyBDeXN0aWMgRmlicm9zaXMsIER1Y2hlbm5lIE11c2N1bGFyIER5c3Ryb3BoeSwgUmFwaWQgQW50aWdlbiBUZXN0LCBIdW50aW5ndG9uXHUyMDE5cyBEaXNlYXNlLCBQaGFnZSBUaGVyYXB5IGZvciB0aGUgR3V0LCBNYWduZXRpYyBNaWNyb3N3aW1tZXJzLCBhbmQgVG94aWMgQ3lhbm9iYWN0ZXJpYWwgQmxvb21zLiBFYWNoIHRlYW0gd2lsbCBwcmVwYXJlIGEgYnJpZWYgaW50cm9kdWN0aW9uIG9mIHRoZWlyIGFzc2lnbmVkIHRvcGljLCB3aXRoIGd1aWRlbGluZXMgZm9yIGEgMTAtMTUgbWludXRlIHByZXNlbnRhdGlvbiBjb3ZlcmluZyB0aGUgcHJvYmxlbSwgcHJvcG9zZWQgc29sdXRpb24sIGV4aXN0aW5nIHN0dWRpZXMsIGFuZCBwcm9qZWN0IGNoYWxsZW5nZXMuIFRoZSBnb2FsIGlzIHRvIGNvbXBsZXRlIHRoZSBwcm9qZWN0IG91dGxpbmUgYnkgTWFyY2ggMjEsIDIwMjQsIGluY29ycG9yYXRpbmcgdW5pdmVyc2l0eSByZXNvdXJjZXMgYW5kIG91dGxpbmluZyBwb3NzaWJsZSBzdWJwcm9qZWN0cy48L3A+XHJcbiAgICAgICAgXHJcbiAgICAgICAgPGgyPlRlYW08L2gyPlxyXG4gICAgICAgIDxwPlRoZSBhdmFpbGFiaWxpdHkgb2YgbGFiIGNvYXRzIHdhcyBjb25maXJtZWQgZm9yIGEgdW5pZm9ybSB0ZWFtIHBob3RvLCBlbnN1cmluZyBldmVyeW9uZSBpcyBwcmVwYXJlZCBmb3IgdGhlIG9jY2FzaW9uLjwvcD5cclxuICAgICAgICBcclxuICAgICAgICA8aDI+SmFtYm9yZWUgJiBNZWV0VXBzPC9oMj5cclxuICAgICAgICA8cD5UaGUgcGxhbm5pbmcgZm9yIHRoZSBQYXJpcyB0cmlwIGlzIHVuZGVyd2F5LCB3aXRoIHRoZSB0ZWFtIG5hcnJvd2luZyBkb3duIGFjY29tbW9kYXRpb24gb3B0aW9ucy4gVGhyZWUgdG8gZm91ciBob3RlbCBjaG9pY2VzIHdpbGwgYmUgcHJlc2VudGVkIGluIHRoZSB1cGNvbWluZyBtZWV0aW5nIG9uIFR1ZXNkYXkuPC9wPlxyXG4gICAgICAgIDwvPlxyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgICBjc3NuYW1lOiBcIm1hcmNoMTlcIiwgXHJcbiAgICAgICAgbm9kZTogPD48aDE+VGVhbSBNZWV0aW5nPC9oMT5cclxuXHJcbiAgICAgICAgPGgyPk9yZ2FuaXNhdGlvbjwvaDI+XHJcbiAgICAgICAgPHA+VGhlIHRlYW0gZGlzY3Vzc2VkIHRoZSBpbXBsZW1lbnRhdGlvbiBvZiBhIHByb3RvY29sIHN0cnVjdHVyZSwgZW1waGFzaXppbmcgdGhlIG5lZWQgZm9yIGFuIGFnZW5kYSB0byBiZSBpbnRyb2R1Y2VkIGFoZWFkIG9mIHRpbWUuIFBhcnRpY2lwYW50cyBjYW4gYWRkIHRvcGljcyB0byBiZSBkaXNjdXNzZWQgaW4gdGhlIHVwY29taW5nIG1lZXRpbmdzIGRpcmVjdGx5IGluIHRoZSBtaW51dGVzLiBBZGRpdGlvbmFsbHksIHRvcGljIHByZXNlbnRhdGlvbnMgYXJlIHNjaGVkdWxlZCBmb3IgTWFyY2ggMjYsIGFpbWluZyB0byBmb2xsb3cgdGhlIGlHRU0gcHJlc2VudGF0aW9uIHN0eWxlIHRvIGVmZmVjdGl2ZWx5IHBpdGNoIGlkZWFzIGFuZCBwcmFjdGljZSBmb3IgZnV0dXJlIHByZXNlbnRhdGlvbnMuPC9wPlxyXG4gICAgICAgIFxyXG4gICAgICAgIDxoMj5KYW1ib3JlZSAmIE1lZXRVcHM8L2gyPlxyXG4gICAgICAgIDxwPkthdGhsZWVuIHByZXNlbnRlZCBmb3VyIGFjY29tbW9kYXRpb24gb3B0aW9ucyBmb3IgdGhlIFBhcmlzIHRyaXAsIHdoaWNoIGhhdmUgYmVlbiB1cGxvYWRlZCB0byBUZWFtcyBmb3IgcmV2aWV3LiBPcHRpb25zIHJhbmdlIGZyb20gc2VsZi1jYXRlcmluZyBhcGFydG1lbnRzIHRvIGEgaG9zdGVsLCBlYWNoIHZhcnlpbmcgaW4gY29zdCwgYXRtb3NwaGVyZSwgYW5kIHByb3hpbWl0eSB0byB0aGUgZXZlbnQgdmVudWUuIEEgcG9sbCBmb3IgYWNjb21tb2RhdGlvbiBwcmVmZXJlbmNlcyB3aWxsIGNsb3NlIG9uIE1hcmNoIDIxLCAyMDI0LCBhdCA2IHAubS4gb24gV2hhdHNBcHAsIGFmdGVyIHdoaWNoIGFkZGl0aW9uYWwgYm9va2luZyBkZXRhaWxzIHdpbGwgYmUgcHJvdmlkZWQuPC9wPlxyXG4gICAgICAgIFxyXG4gICAgICAgIDxoMj5TcG9uc29yaW5nPC9oMj5cclxuICAgICAgICA8cD5UaGUgdGVhbSBpcyBjb29yZGluYXRpbmcgYXR0ZW5kYW5jZSBhbmQgb3JnYW5pemF0aW9uIGZvciB0aGUgTGFiLVN1cHBseSBGYWlyIGFuZCBvdGhlciByZWxhdGVkIGV2ZW50cy4gVGhpcyBpbnRlcm5hbCBjb29yZGluYXRpb24gYWltcyB0byBlbnN1cmUgZWZmZWN0aXZlIHBhcnRpY2lwYXRpb24gYW1vbmcgaW50ZXJlc3RlZCBtZW1iZXJzLjwvcD5cclxuICAgICAgICA8Lz5cclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgICAgY3NzbmFtZTogXCJtYXJjaDIxXCIsIFxyXG4gICAgICAgIG5vZGU6IDw+PGgxPlRlYW0gTWVldGluZzwvaDE+XHJcblxyXG4gICAgICAgIDxoMj5UZWFtPC9oMj5cclxuICAgICAgICA8cD5UaGUgSGFtYnVyZyBpR0VNIHRlYW0gaXMgc2NoZWR1bGVkIGZvciBhIHJldHJlYXQgYnV0IGlzIGV4cGVjdGVkIHRvIGhhdmUgdGltZSBhdmFpbGFibGUgZm9yIGEgbWVldC11cCBvbiBGcmlkYXkuPC9wPlxyXG4gICAgICAgIFxyXG4gICAgICAgIDxoMj5KYW1ib3JlZSAmIE1lZXRVcHM8L2gyPlxyXG4gICAgICAgIDxwPkR1cmluZyB0aGUgbWVldGluZywgdGhlIHRlYW0gY29uZmlybWVkIHRoYXQgdGhlIEFwYXJ0aG90ZWwgd2FzIHRoZSBwcmVmZXJyZWQgYWNjb21tb2RhdGlvbiBvcHRpb24gZm9yIHRoZSBQYXJpcyB0cmlwLiBIb3dldmVyLCB0aGVyZSBhcmUgY2hhbGxlbmdlcyB3aXRoIGJvb2tpbmcsIGFzIGFjY29tbW9kYXRpb25zIGNhbm5vdCBiZSByZXNlcnZlZCB2aWEgQm9va2luZy5jb20sIGFuZCB0aGUgaW5kaXZpZHVhbCBib29raW5nIHNpdGVzIHNob3cgaW5zdWZmaWNpZW50IGF2YWlsYWJpbGl0eS48L3A+XHJcbiAgICAgICAgPC8+XHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICAgIGNzc25hbWU6IFwibWFyY2gyN1wiLCBcclxuICAgICAgICBub2RlOiA8PjxoMT5UZWFtIE1lZXRpbmc8L2gxPlxyXG5cclxuICAgICAgICA8aDI+T3JnYW5pc2F0aW9uPC9oMj5cclxuICAgICAgICA8aDM+Rmlyc3QgUHJlc2VudGF0aW9uOiBSZWQgQmlvdGVjaG5vbG9neSAtIER1Y2hlbm5lIE11c2N1bGFyIER5c3Ryb3BoeTwvaDM+XHJcbiAgICAgICAgPHA+RHVjaGVubmUgbXVzY3VsYXIgZHlzdHJvcGh5IGlzIGEgZ2VuZXRpYyBkaXNlYXNlIGNoYXJhY3Rlcml6ZWQgYnkgbXVzY2xlIHRpc3N1ZSByZXBsYWNlbWVudC4gU2V2ZXJhbCBjdXJlIGFwcHJvYWNoZXMgd2VyZSBkaXNjdXNzZWQsIGluY2x1ZGluZyBleG9uIHNraXBwaW5nIGFuZCB1c2luZyBBQVYgdmVjdG9ycywgYnV0IGN1cnJlbnQgdHJlYXRtZW50cyBhcmUgbGltaXRlZC4gUXVlc3Rpb25zIHJhaXNlZCBpbmNsdWRlZCB0aGUgaW50ZWdyYXRpb24gb2YgbG9uZyBETkEgaW50byBjZWxscyBhbmQgcG90ZW50aWFsIGNvbW11bml0eSBlbmdhZ2VtZW50IHN0cmF0ZWdpZXMuPC9wPlxyXG4gICAgICAgIFxyXG4gICAgICAgIDxoMz5TZWNvbmQgUHJlc2VudGF0aW9uOiBNYWduZXRpYyBNaWNyb3N3aW1tZXJzIGZvciBUYXJnZXRlZCBDYW5jZXIgVGhlcmFweTwvaDM+XHJcbiAgICAgICAgPHA+VGhpcyBwcmVzZW50YXRpb24gZm9jdXNlZCBvbiB1c2luZyBiaW9kZWdyYWRhYmxlIGFsZ2FlIGFzIGNhcnJpZXJzIGZvciBub24taW52YXNpdmUgZHJ1ZyBkZWxpdmVyeSB0YXJnZXRpbmcgb3ZhcmlhbiBjYW5jZXIuIFRoZSBtZXRob2QgaW52b2x2ZXMgbWFnbmV0aXppbmcgbWljcm9zd2ltbWVycyB0byBlbmhhbmNlIG1vYmlsaXR5IGFuZCBkZWxpdmVyIGRydWdzIHRvIGNhbmNlciBjZWxscywgZW5zdXJpbmcgbWluaW1hbCBkYW1hZ2UgdG8gaGVhbHRoeSB0aXNzdWUuIFF1ZXN0aW9ucyBpbmNsdWRlZCBjb25jZXJucyBhYm91dCBiaW9kZWdyYWRhYmlsaXR5IHdpdGggbWFnbmV0aWMgcGFydGljbGVzIGFuZCB0aGUgY2hhbGxlbmdlcyBvZiB0YXJnZXRpbmcgc3BlY2lmaWMgYXJlYXMuPC9wPlxyXG4gICAgICAgIFxyXG4gICAgICAgIDxoMz5UaGlyZCBQcmVzZW50YXRpb246IEN5YW5vYmFjdGVyaWEgQmxvb20gUHJldmVudGlvbiB3aXRoIEFsZ2FlPC9oMz5cclxuICAgICAgICA8cD5DeWFub2JhY3RlcmlhIGJsb29tcyBwb3NlIHNpZ25pZmljYW50IGVjb2xvZ2ljYWwgdGhyZWF0cywgYW5kIGN1cnJlbnQgY29udHJvbCBtZXRob2RzIGFyZSBpbmFkZXF1YXRlLiBUaGUgcHJvcG9zZWQgc29sdXRpb24gaW52b2x2ZXMgdXNpbmcgcGVwdGlkZXMgZnJvbSBhbGdhZSB0byBwcmV2ZW50IGJsb29tcyB3aGlsZSBwcmVzZXJ2aW5nIGVjb3N5c3RlbXMuIEtleSBwYXRod2F5cyBhbmQgdGFyZ2V0cyB3ZXJlIGlkZW50aWZpZWQsIGVtcGhhc2l6aW5nIHRoZSBuZWVkIGZvciBjb25zZXJ2YXRpb24gYW5kIGJpb2RpdmVyc2l0eS48L3A+XHJcbiAgICAgICAgXHJcbiAgICAgICAgPGgzPkZvdXJ0aCBQcmVzZW50YXRpb246IEN5c3RpYyBGaWJyb3NpczwvaDM+XHJcbiAgICAgICAgPHA+Q3lzdGljICBGaWJyb3NpcyBhZmZlY3RzIGEgc2lnbmlmaWNhbnQgbnVtYmVyIG9mIGluZGl2aWR1YWxzIGFuZCBpcyBkaWFnbm9zZWQgdGhyb3VnaCBzd2VhdCB0ZXN0cyBhbmQgZ2VuZXRpYyBzY3JlZW5pbmcuIEN1cnJlbnQgdHJlYXRtZW50cyBmb2N1cyBvbiBtYW5hZ2luZyBzeW1wdG9tcywgYnV0IHRoZSBnb2FsIGlzIHRvIGRldmVsb3AgbG9uZy10ZXJtIGN1cmVzIGJ5IHRhcmdldGluZyB0aGUgZ2VuZXRpYyBiYXNpcyBvZiB0aGUgZGlzb3JkZXIuIFRoZSB0ZWFtIGlzIGNvbGxhYm9yYXRpbmcgd2l0aCB2YXJpb3VzIHNwZWNpYWxpc3RzIGFuZCBvcmdhbml6YXRpb25zIHRvIGRldmVsb3AgZWR1Y2F0aW9uYWwgbWF0ZXJpYWxzIGFuZCBvcHRpbWl6ZSB0cmVhdG1lbnQgc3RyYXRlZ2llcy48L3A+XHJcbiAgICAgICAgXHJcbiAgICAgICAgPGgzPkZ1cnRoZXIgUHJlc2VudGF0aW9uczwvaDM+XHJcbiAgICAgICAgPHA+RGlzY3Vzc2lvbnMgaW5jbHVkZWQgdGhlIHBvdGVudGlhbCBvZiBwaGFnZXMgYXMgYW4gYWx0ZXJuYXRpdmUgdG8gYW50aWJpb3RpY3MgYW5kIGZ1dHVyZSBwcmVzZW50YXRpb25zIG9uIHJlbGF0ZWQgdG9waWNzLjwvcD5cclxuICAgICAgICA8Lz5cclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgICAgY3NzbmFtZTogXCJtYXJjaDI5XCIsIFxyXG4gICAgICAgIG5vZGU6IDw+PGgxPlRlYW0gTWVldGluZzwvaDE+XHJcblxyXG4gICAgICAgIDxoMj5PcmdhbmlzYXRpb248L2gyPlxyXG4gICAgICAgIDxoMz5Wb3RlIGZvciBUb3BpYzwvaDM+XHJcbiAgICAgICAgPHA+RWFjaCBtZW1iZXIgd2FzIGFsbG93ZWQgb25lIHZvdGUgZm9yIGEgcHJvamVjdCB0b3BpYywgd2l0aCB0aGUgZmlyc3Qgdm90ZSBkdWUgYnkgbWlkbmlnaHQuIFRoZSB0b3AgdGhyZWUgcmVzdWx0cyB3ZXJlOiBNaWNyb3N3aW1tZXJzIHdpdGggNSB2b3RlcywgRHVjaGVubmUgTXVzY3VsYXIgRHlzdHJvcGh5IChETUQpIHdpdGggNCB2b3RlcywgYW5kIEN5c3RpYyBGaWJyb3NpcyAoQ0YpIGFsc28gd2l0aCA0IHZvdGVzLjwvcD5cclxuICAgICAgICBcclxuICAgICAgICA8aDM+VG9waWMgUHJlc2VudGF0aW9uczwvaDM+XHJcbiAgICAgICAgPHA+VGhlIHByZXNlbnRhdGlvbnMgd2VyZSBnZW5lcmFsbHkgd2VsbC1yZWNlaXZlZCwgdGhvdWdoIGltcHJvdmVtZW50cyBhcmUgc3RpbGwgbmVlZGVkLiBBIHNlbWluYXIgd2lsbCBwcm92aWRlIGEgYnJpZWYgb3ZlcnZpZXcgYW5kIGRpc2N1c3MgbGltaXRhdGlvbnMsIGNoYWxsZW5nZXMsIGFuZCB0aGUgcHJvcyBhbmQgY29ucyBvZiBlYWNoIHRvcGljLCB3aXRoIG1vcmUgZGV0YWlscyBhdmFpbGFibGUgaW4gdGhlIHByZXNlbnRhdGlvbnMgYW5kIG1lZXRpbmcgbWludXRlcyBmcm9tIE1hcmNoIDI2LjwvcD5cclxuICAgICAgICBcclxuICAgICAgICA8aDI+VGVhbTwvaDI+XHJcbiAgICAgICAgPHA+QSByZW1pbmRlciBmb3IgdGhlIEhhbWJ1cmcgdGVhbTogRG9uJ3QgZm9yZ2V0IHlvdXIgdG93ZWwhPC9wPlxyXG4gICAgICAgIDwvPlxyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgICBjc3NuYW1lOiBcImFwcmlsMlwiLCBcclxuICAgICAgICBub2RlOiA8PjxoMT5UZWFtIE1lZXRpbmc8L2gxPlxyXG5cclxuICAgICAgICA8aDI+T3JnYW5pc2F0aW9uPC9oMj5cclxuICAgICAgICA8aDM+Vm90ZSBmb3IgVG9waWM8L2gzPlxyXG4gICAgICAgIDxwPkVhY2ggbWVtYmVyIGhhcyBvbmUgdm90ZSBmb3IgYSBwcm9qZWN0IHRvcGljLCB3aXRoIHRoZSBmaXJzdCB2b3RlIGR1ZSBieSBtaWRuaWdodC4gVGhlIHRvcCB0aHJlZSByZXN1bHRzIGZyb20gdGhlIHZvdGluZyB3ZXJlOiBNaWNyb3N3aW1tZXJzIHdpdGggNSB2b3RlcywgRHVjaGVubmUgTXVzY3VsYXIgRHlzdHJvcGh5IChETUQpIHdpdGggNCB2b3RlcywgYW5kIEN5c3RpYyBGaWJyb3NpcyAoQ0YpIGFsc28gd2l0aCA0IHZvdGVzLjwvcD5cclxuICAgICAgICBcclxuICAgICAgICA8aDM+VG9waWMgUHJlc2VudGF0aW9uczwvaDM+XHJcbiAgICAgICAgPHA+VGhlIHByZXNlbnRhdGlvbnMgd2VyZSBnZW5lcmFsbHkgd2VsbC1yZWNlaXZlZCwgdGhvdWdoIHRoZXJlIGlzIHN0aWxsIHJvb20gZm9yIGltcHJvdmVtZW50LiBBIHByZXNlbnRhdGlvbiBzZW1pbmFyIGlzIHBsYW5uZWQgdG8gcHJvdmlkZSBhbiBvdmVydmlldyBhbmQgZmFjaWxpdGF0ZSBkaXNjdXNzaW9ucyBvbiB0aGUgbGltaXRhdGlvbnMsIGNoYWxsZW5nZXMsIGFuZCBwcm9zIGFuZCBjb25zIG9mIGVhY2ggdG9waWMsIHdpdGggbW9yZSBkZXRhaWxzIGF2YWlsYWJsZSBpbiB0aGUgbWVldGluZyBtaW51dGVzIGZyb20gTWFyY2ggMjYuPC9wPlxyXG4gICAgICAgIFxyXG4gICAgICAgIDxoMj5UZWFtPC9oMj5cclxuICAgICAgICA8cD5SZW1pbmRlciBmb3IgdGhlIEhhbWJ1cmcgdGVhbTogRG9uXHUyMDE5dCBmb3JnZXQgeW91ciB0b3dlbCE8L3A+XHJcbiAgICAgICAgXHJcbiAgICAgICAgPC8+XHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICAgIGNzc25hbWU6IFwiYXByaWw0XCIsIFxyXG4gICAgICAgIG5vZGU6IDw+PGgxPlRlYW0gTWVldGluZzwvaDE+XHJcblxyXG4gICAgICAgIDxoMj5VcmdlbnQ8L2gyPlxyXG4gICAgICAgIDxwPlRoZSB0ZWFtIGhhcyBkZWNpZGVkIHRvIHB1cnN1ZSBhIHRoZXJhcHkgdG9waWMgaW5zdGVhZCBvZiBmb2N1c2luZyBvbiBjeWFub2JhY3RlcmlhLiBBbW9uZyB0aGUgb3B0aW9ucywgQ3lzdGljIEZpYnJvc2lzIChDRikgd2FzIHNlbGVjdGVkIG92ZXIgRHVjaGVubmUgTXVzY3VsYXIgRHlzdHJvcGh5IChETUQpLjwvcD5cclxuICAgICAgICBcclxuICAgICAgICA8aDI+VGVhbTwvaDI+XHJcbiAgICAgICAgPHA+QSByZW1pbmRlciBmb3IgdGhlIEhhbWJ1cmcgdHJpcDogRGVwYXJ0dXJlIGlzIHNjaGVkdWxlZCBmb3IgRnJpZGF5IGF0IDggQU0uPC9wPlxyXG4gICAgICAgIFxyXG4gICAgICAgIDxoMj5UYXNrczwvaDI+XHJcbiAgICAgICAgPHA+QWxsIG1lbWJlcnMgYXJlIHJlcXVpcmVkIHRvIHNhdmUgdGhlIHBhcGVycyB0aGV5IGhhdmUgcmVhZCBpbiBab3Rlcm8gZHVyaW5nIHRoZWlyIHNlbGYtc3R1ZHkgdGltZS48L3A+XHJcbiAgICAgICAgPC8+XHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICAgIGNzc25hbWU6IFwiYXByaWw2XCIsIFxyXG4gICAgICAgIG5vZGU6IDw+PGgxPlRlYW0gTWVldGluZzwvaDE+XHJcblxyXG4gICAgICAgIDxoMj5PcmdhbmlzYXRpb248L2gyPlxyXG4gICAgICAgIDxwPlRoZSB0ZWFtIGlzIHRhc2tlZCB3aXRoIHNlYXJjaGluZyBQdWJNZWQgZm9yIHJldmlld3Mgb24gQ3lzdGljIEZpYnJvc2lzIChDRikgZnJvbSB0aGUgbGFzdCB0d28geWVhcnMgdG8gaWRlbnRpZnkgdW5leHBsb3JlZCB0aGVyYXBldXRpYyBuaWNoZXMgYW5kIGZvcm11bGF0ZSBjbGVhciBnb2Fscy4gQSBzeXN0ZW1pYyBhcHByb2FjaCB1c2luZyBBQVYtYmFzZWQgc3RyYXRlZ2llcyBhbmQgb3JnYW4tc3BlY2lmaWMgYXBwcm9hY2hlcyBpcyBiZWluZyBjb25zaWRlcmVkLiBBZGRpdGlvbmFsbHksIHN0cmF0ZWdpZXMgZm9yIHJlYWRpbmcgcGFwZXJzIGluY2x1ZGUgc3RhcnRpbmcgd2l0aCB0aGUgcmVzdWx0cyBzZWN0aW9uIHRvIGRldGVybWluZSB0aGVpciB2YWx1ZSBiZWZvcmUgZGVsdmluZyBpbnRvIHRoZSBkaXNjdXNzaW9uLjwvcD5cclxuICAgICAgICA8cD5Qcm9qZWN0IGNvbmNlcHQgaWRlYXMgZGlzY3Vzc2VkIGluY2x1ZGUgZXBpZ2Vub21lIGVkaXRpbmcgd2l0aCBhIG1vZHVsYXIgdG9vbGtpdCBhbmQgdGhlIGFwcGxpY2F0aW9uIG9mIHNtYWxsZXIgQ2FzIHZhcmlhbnRzIHRvIGVuaGFuY2UgZGVsaXZlcnkgYW5kIGZhY2lsaXRhdGUgbnVjbGVhciBlbnRyeS48L3A+XHJcbiAgICAgICAgXHJcbiAgICAgICAgPGgyPlB1YmxpYyBPdXRyZWFjaDwvaDI+XHJcbiAgICAgICAgPHA+QSBzY3JlZW5pbmcgZXZlbnQgZm9yIHRoZSBtb3ZpZSBcIkZpdmUgRmVldCBBcGFydCxcIiB3aGljaCBmb2N1c2VzIG9uIEN5c3RpYyBGaWJyb3Npcywgd2lsbCBiZSBvcmdhbml6ZWQsIGFsb25nIHdpdGggcHJvdmlkaW5nIGFkZGl0aW9uYWwgaW5mb3JtYXRpb24gdG8gdGhlIGF1ZGllbmNlLiBQaGlsbGlwIHdpbGwgY29vcmRpbmF0ZSB3aXRoIHRoZSB1bml2ZXJzaXR5IGNpbmVtYSB0byBhcnJhbmdlIHRoZSBldmVudC48L3A+XHJcbiAgICAgICAgPHA+VGhlIHRlYW0gaXMgZW5jb3VyYWdlZCB0byBwYXJ0aWNpcGF0ZSBpbiBNVUtPbW92ZSwgYSBDeXN0aWMgRmlicm9zaXMgYXdhcmVuZXNzIGluaXRpYXRpdmUgaW4gTWF5LCBpbnZvbHZpbmcgYSBzcG9ydCBldmVudC4gSXNhYmVsbCB3aWxsIHJlZ2lzdGVyIHRoZSB0ZWFtLCBhbmQgcHJvbW90aW9uYWwgYWN0aXZpdGllcyBvbiBzb2NpYWwgbWVkaWEsIGluY2x1ZGluZyBhIHVuaXF1ZSBoYXNodGFnLCB3aWxsIGJlIGltcGxlbWVudGVkIHRvIGluY3JlYXNlIGF3YXJlbmVzcyBhbmQgcGFydGljaXBhdGlvbi48L3A+XHJcbiAgICAgICAgXHJcbiAgICAgICAgPGgyPldldCBMYWI8L2gyPlxyXG4gICAgICAgIDxwPlN1Yi10ZWFtcyBhcmUgZXhwZWN0ZWQgdG8gcHJvdmlkZSB1cGRhdGVzIGV2ZXJ5IDMtNCB3ZWVrcyByZWdhcmRpbmcgY2VsbCBhY3F1aXNpdGlvbiBmb3IgdGhlIHByb2plY3QsIHdpdGggYSBmb2N1cyBvbiBvYnRhaW5pbmcgaGVhbHRoeSBhbmQgcGF0aWVudC1kZXJpdmVkIGNlbGwgbGluZXMuIFZlcmEgY29uZmlybWVkIHRoYXQgd2l0aCBhIHNhZmV0eSBmb3JtLCB0aGUgdXNlIG9mIHRoZWlyIG93biBjZWxscyBpcyBwb3NzaWJsZS4gUHJlcGFyYXRpb25zIGZvciB0aGUgbmV3IGxhYiBpbmNsdWRlIGFzc2Vzc2luZyBlcXVpcG1lbnQgYW5kIGNyZWF0aW5nIGEgc3RhZmZpbmcgcGxhbiB0byBlbnN1cmUgZGFpbHkgY292ZXJhZ2UuPC9wPlxyXG4gICAgICAgIDxwPkVmZmVjdGl2ZSBjb21tdW5pY2F0aW9uIGFuZCBvcmdhbml6YXRpb24gYXJlIGVtcGhhc2l6ZWQgZm9yIGxhYiB3b3JrLCB3aXRoIHBsYW5zIHRvIGVzdGFibGlzaCBhIHNoaWZ0IHNjaGVkdWxlIGZvciB0ZWFtIG1lbWJlcnMuPC9wPlxyXG4gICAgICAgIFxyXG4gICAgICAgIDxoMj5DcmVhdGl2aXR5PC9oMj5cclxuICAgICAgICA8cD5UaGUgdGVhbSBtZW1iZXJzIGFzc2lnbmVkIHRvIHByb21vdGlvbmFsIHRhc2tzIGluY2x1ZGUgUGhpbGlwLCBNaWNoYWVsLCBWZXJhLCBMaXNhLCBMaWxpYW5hLCBJc2FiZWxsLCBhbmQgQXNhbC4gVGhleSB3aWxsIGZvY3VzIG9uIGRldmVsb3BpbmcgcHJvbW90aW9uYWwgbWF0ZXJpYWxzLCBpbmNsdWRpbmcgZmx5ZXJzIGFuZCBsb2dvIGRlc2lnbiwgdG8gZW5oYW5jZSB0ZWFtIHZpc2liaWxpdHkuPC9wPlxyXG4gICAgICAgIDwvPlxyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgICBjc3NuYW1lOiBcImFwcmlsMTFcIiwgXHJcbiAgICAgICAgbm9kZTogPD48aDE+VGVhbSBNZWV0aW5nPC9oMT5cclxuXHJcbiAgICAgICAgPGgyPk9yZ2FuaXNhdGlvbjwvaDI+XHJcbiAgICAgICAgPHA+VGhlIHRlYW0gZGlzY3Vzc2VkIHZhcmlvdXMgcHJvamVjdCBpZGVhcyByZWxhdGVkIHRvIGFjY2VzcyB0byBvb2N5dGVzLCBlbXBoYXNpemluZyBnZW5lIGNvcnJlY3Rpb24gYW5kIHBvdGVudGlhbCBzdHJhdGVnaWVzIHN1Y2ggYXMgdXNpbmcgdHJhbnNwb3Nhc2UgZm9yIGdlbm9taWMgaW50ZWdyYXRpb24gd2l0aG91dCBjdXR0aW5nLiBLZXkgY29uc2lkZXJhdGlvbnMgaW5jbHVkZSBleHBsb3JpbmcgbGlwaWQgbmFub3BhcnRpY2xlcyAoTE5QcykgZm9yIGx1bmcgZGVsaXZlcnkgYW5kIGFkZHJlc3NpbmcgdGhlIHBhY2thZ2luZyBsaW1pdGF0aW9ucyBvZiBBQVYuIFRoZSB0ZWFtIGFpbXMgdG8gcmVhZCBtb3JlIGFib3V0IENSSVNQUiBhbmQgcmVsZXZhbnQgbGl0ZXJhdHVyZSwgYW5kIHBvc3NpYmx5IGNvbnN1bHQgYSBnZW5ldGljIGNvdW5zZWxpbmcgY2VudGVyIGZvciBndWlkYW5jZSBvbiBpbnRlcnZlbnRpb24gc3RyYXRlZ2llcy48L3A+XHJcbiAgICAgICAgPHA+QSBwcm9vZiBvZiBjb25jZXB0IGV4cGVyaW1lbnQgaXMgZXNzZW50aWFsIHRvIHZhbGlkYXRlIHRoZSBwcm9wb3NlZCBpZGVhcywgaW5jbHVkaW5nIHRoZSBwb3RlbnRpYWwgdXNlIG9mIGEgbXVsdGktb3JnYW4gY2hpcCBpbiBjb2xsYWJvcmF0aW9uIHdpdGggYSByZXNlYXJjaCBlbnRpdHkuPC9wPlxyXG4gICAgICAgIFxyXG4gICAgICAgIDxoMj5IdW1hbiBQcmFjdGljZXM8L2gyPlxyXG4gICAgICAgIDxwPk1heCBzaGFyZWQgaW5zaWdodHMgYWJvdXQgZXNzZW50aWFsIG1lZGljYXRpb25zIGZvciBDeXN0aWMgRmlicm9zaXMgKENGKSwgaW5jbHVkaW5nIGluZGl2aWR1YWxpemVkIHRyZWF0bWVudHMgbGlrZSBLcmVvbiBhbmQgT3JrYW1iaS4gS3Jlb24gYWlkcyBkaWdlc3Rpb24gYW5kIGlzIGFkYXB0ZWQgYmFzZWQgb24gZmF0IGNvbnRlbnQgaW4gbWVhbHMsIHdoaWxlIE9ya2FtYmkgaXMgYSBzaWduaWZpY2FudCBtZWRpY2F0aW9uIHNwZWNpZmljIHRvIGNlcnRhaW4gbXV0YXRpb25zLCBhbHRob3VnaCBpdCBjb21lcyB3aXRoIGEgaGlnaCBjb3N0LiBUaGUgZGlzY3Vzc2lvbiBoaWdobGlnaHRlZCB0aGUgaW1wb3J0YW5jZSBvZiBkaWFnbm9zaXMgYWdlIGFuZCB0YXJnZXRlZCB0cmVhdG1lbnRzLCBhbmQgc3VnZ2VzdGVkIGNyZWF0aW5nIGluZm9ybWF0aW9uYWwgbWF0ZXJpYWxzIGZvciBoZWFsdGhjYXJlIHByb2Zlc3Npb25hbHMuPC9wPlxyXG4gICAgICAgIFxyXG4gICAgICAgIDxoMj5DcmVhdGl2aXR5PC9oMj5cclxuICAgICAgICA8cD5UaGUgdGVhbSByZXZpZXdlZCB0aGUgcHJlc2VudGF0aW9uIG9mIHRoZSBjb2xvciBzY2hlbWUgYW5kIGRpc2N1c3NlZCB0ZWFtIHBob3RvcyBhcyBwYXJ0IG9mIHRoZWlyIHByb21vdGlvbmFsIGVmZm9ydHMuPC9wPlxyXG4gICAgICAgIDwvPlxyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgICBjc3NuYW1lOiBcImFwcmlsMTZcIiwgXHJcbiAgICAgICAgbm9kZTogPD48aDE+VGVhbSBNZWV0aW5nPC9oMT5cclxuXHJcbiAgICAgICAgPGgyPkphbWJvcmVlICYgTWVldFVwczwvaDI+XHJcbiAgICAgICAgPHA+VGhlIEJGSCBNZWV0LVVwIHdlYnNpdGUgaXMgbm93IGxpdmUsIGZlYXR1cmluZyBkZXRhaWxzIG9uIHRoZSBsb2NhdGlvbiwgcHJvZ3JhbSwgcmVnaXN0cmF0aW9uLCBhbmQgcHJpY2luZy4gUmVnaXN0cmF0aW9uIGlzIGN1cnJlbnRseSBvcGVuLCBhbmQgYWxsIHRlYW0gbWVtYmVycyBhcmUgZW5jb3VyYWdlZCB0byBzdXBwb3J0IHRoZSBJbnN0YWdyYW0gY2hhbm5lbC48L3A+XHJcbiAgICAgICAgXHJcbiAgICAgICAgPGgyPk1lY2hhbmlzbTwvaDI+XHJcbiAgICAgICAgPHA+VGhlIHRlYW0gaXMgZm9jdXNpbmcgb24gUHJpbWUgRWRpdGluZyBhcyB0aGUgbWFpbiBpZGVhLCBidXQgZnVydGhlciBkZXRhaWxzIG5lZWQgdG8gYmUgZGV2ZWxvcGVkIHRvIHJlZmluZSB0aGlzIGFwcHJvYWNoLjwvcD5cclxuICAgICAgICBcclxuICAgICAgICA8aDI+RGVsaXZlcnk8L2gyPlxyXG4gICAgICAgIDxwPlZhcmlvdXMgZGVsaXZlcnkgbWV0aG9kcyB3ZXJlIGJyYWluc3Rvcm1lZCwgaW5jbHVkaW5nIGxpcGlkIG5hbm9wYXJ0aWNsZXMgKExOUHMpLCB3aGljaCBhcmUgY29uc2lkZXJlZCBhIHZpYWJsZSBvcHRpb24sIGFsdGhvdWdoIHRoZXkgcmVxdWlyZSBtb3JlIGVsYWJvcmF0aW9uLiBBZGVuby1Bc3NvY2lhdGVkIFZpcnVzIChBQVYpIGRlbGl2ZXJ5IGhhcyBtb3JlIGF2YWlsYWJsZSBsaXRlcmF0dXJlLCBlc3BlY2lhbGx5IGZvciBvb2N5dGVzLCBidXQgcmVtYWlucyB1bmRlcmV4cGxvcmVkLiBFbnVjbGVhdGVkIHNwZXJtIGNlbGxzIHdlcmUgYWxzbyBkaXNjdXNzZWQgYXMgYSBub24taW52YXNpdmUgYXBwcm9hY2gsIHdpdGggcG90ZW50aWFsIGZvciB0YXJnZXRpbmcgb29jeXRlcy48L3A+XHJcbiAgICAgICAgXHJcbiAgICAgICAgPGgyPlB1YmxpYyBPdXRyZWFjaDwvaDI+XHJcbiAgICAgICAgPHA+Rm9yIE11a29NT1ZFLCBwb3N0ZXJzIGhhdmUgYmVlbiBwcmVwYXJlZCBhbmQgcGhvdG9zIHRha2VuOyBJc2FiZWxsIGlzIGFwcGx5aW5nIGZvciBwZXJtaXNzaW9uIHRvIGRpc3BsYXkgdGhlIHBvc3RlcnMgaW4gdGhlIGNpdHkgZm9yIGEgZmVlIG9mIFx1MjBBQzEyLCB3aGlsZSBhZGRpdGlvbmFsIHBvc3RlcnMgd2lsbCBiZSBvcmRlcmVkLiBIb3dldmVyLCBoYW5naW5nIHBvc3RlcnMgaW4gdHJhaW5zIHdhcyBkZWVtZWQgdG9vIGV4cGVuc2l2ZS48L3A+XHJcbiAgICAgICAgPC8+XHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICAgIGNzc25hbWU6IFwiYXByaWwxOFwiLCBcclxuICAgICAgICBub2RlOiA8PjxoMT5UZWFtIE1lZXRpbmc8L2gxPlxyXG5cclxuICAgICAgICA8aDI+VGVhbTwvaDI+XHJcbiAgICAgICAgPHA+QSByZW1pbmRlciB3YXMgaXNzdWVkIGZvciBldmVyeW9uZSB0byBjb21wbGV0ZSB0aGUgQXR0cmlidXRpb24gRm9ybSwgd2hpY2ggdHJhY2tzIGNvbnRyaWJ1dGlvbnMgYW5kIHBhcnRpY2lwYXRpb24uIFRoZSBkb2N1bWVudCBpcyBhdmFpbGFibGUgb24gVGVhbXMgdW5kZXIgR2VuZXJhbCAmZ3Q7IERvY3VtZW50cyAmZ3Q7IEV2ZXJ5dGhpbmcgaUdFTSAmZ3Q7IEF0dHJpYnV0aW9uLiBBZGRpdGlvbmFsbHksIHRoZSBpR0VNIERpc3RyaWJ1dGlvbiBLaXQgd2FzIG9wZW5lZCB0byBjaGVjayBhdmFpbGFibGUgbWF0ZXJpYWxzLjwvcD5cclxuICAgICAgICBcclxuICAgICAgICA8aDI+SmFtYm9yZWUgJiBNZWV0VXBzPC9oMj5cclxuICAgICAgICA8cD5QbGFucyBmb3IgdGhlIEV1cm9wZWFuIE1lZXQtVXAgaW5jbHVkZSBjcmVhdGluZyBhIGxpc3Qgb2Ygc25hY2tzIHdpdGggbmFtZXMsIGRhdGVzLCB0eXBlcywgYW5kIHF1YW50aXRpZXMgdG8gZW5zdXJlIGFkZXF1YXRlIHByZXBhcmF0aW9uLjwvcD5cclxuICAgICAgICBcclxuICAgICAgICA8aDI+TWVjaGFuaXNtPC9oMj5cclxuICAgICAgICA8cD5GaW5kaW5ncyB3ZXJlIHByZXNlbnRlZCwgaGlnaGxpZ2h0aW5nIGEgcHJvb2Ygb2YgY29uY2VwdCB1c2luZyBhbiBleGlzdGluZyBwcmltZSBlZGl0aW5nIHN5c3RlbSB0byB0YXJnZXQgdGhlIGZpdmUgbW9zdCBjb21tb24gbXV0YXRpb25zIGluIEN5c3RpYyBGaWJyb3NpcyAoQ0YpLiBPcHRpbWl6YXRpb24gZWZmb3J0cyBpbnZvbHZlIGEgbW9kaWZpZWQgQ2FzMTJhIGZvciBoaWdoZXIgc3BlY2lmaWNpdHkgYW5kIGEgbmV3IGVuenltZSBjYWxsZWQgRmFuem9yLCB3aGljaCByZXF1aXJlcyBlbmdpbmVlcmluZyBmb3IgcHJlY2lzZSBjdXRzLiBBIGRlYmF0ZSBvbiB0YXJnZXRpbmcgb29jeXRlcyB2ZXJzdXMgbHVuZ3Mgd2FzIGhlbGQsIHdpdGggcGxhbnMgZm9yIHBhcmFsbGVsIHdvcmsgb24gYm90aCBhcHByb2FjaGVzIGFuZCBzdWdnZXN0aW9ucyBmb3IgZWZmaWNpZW50IGxhYiBjb25jZXB0IGRlc2lnbnMuPC9wPlxyXG4gICAgICAgIFxyXG4gICAgICAgIDxoMj5EZWxpdmVyeTwvaDI+XHJcbiAgICAgICAgPHA+VHdvIG1haW4gZGVsaXZlcnkgcG9zc2liaWxpdGllcyB3ZXJlIGRpc2N1c3NlZDogYWVyb3NvbGl6aW5nIGxpcGlkIG5hbm9wYXJ0aWNsZXMgKExOUHMpLCB3aGljaCBmYWNlIHN0YWJpbGl0eSBpc3N1ZXMgYW5kIGx1bmcgZGVmZW5zZSBtZWNoYW5pc21zLCBhbmQgaW50cmF2ZW5vdXMgZGVsaXZlcnksIHdoaWNoIG5lY2Vzc2l0YXRlcyByZWd1bGFyIGRvY3RvciB2aXNpdHMgZHVlIHRvIHRoZSBsaXZlciBhY3RpbmcgYXMgYSBmaWx0ZXIuIFJlc2VhcmNoIG9uIExOUCBwcm9kdWN0aW9uIGFuZCBjZWxsdWxhciB0YXJnZXRpbmcsIHBhcnRpY3VsYXJseSBvZiBiYXNhbCBjZWxscyBvciBlcnl0aHJvY3l0ZXMsIHdhcyBhbHNvIGhpZ2hsaWdodGVkLiBUaGUgZmVhc2liaWxpdHkgb2YgYSBtb2RlbCBzeXN0ZW0gdG8gZW5zdXJlIHRoZSBkcnVnJ3MgZWZmaWNhY3kgaW4gcmVhY2hpbmcgdGhlIHRhcmdldCBjZWxscyB3YXMgY29uc2lkZXJlZCBhZHZhbnRhZ2VvdXMuPC9wPlxyXG4gICAgICAgIFxyXG4gICAgICAgIDxoMj5QdWJsaWMgT3V0cmVhY2g8L2gyPlxyXG4gICAgICAgIDxwPkZvciB0aGUgTXVrb01PVkUgaW5pdGlhdGl2ZSwgcGxhbnMgdG8gaGFuZyBwb3N0ZXJzIGluIEJpZWxlZmVsZCBpbmNsdWRlIGNyZWF0aW5nIGEgbWFwIGZvciBkZXNpZ25hdGVkIHJlc3BvbnNpYmlsaXRpZXMgYW5kIGVuc3VyaW5nIHRoZXkgYXJlIHJlbW92ZWQgdGhlIGRheSBhZnRlciB0aGUgZXZlbnQuIEFkZGl0aW9uYWxseSwgYSBmbHllciBkaXN0cmlidXRpb24gcGxhbiB3YXMgcHJvcG9zZWQsIGludm9sdmluZyB0aHJlZSB0ZWFtIG1lbWJlcnMgcGVyIGRheSB0byBkaXN0cmlidXRlIGZseWVycyBpbiB0aGUgY2FmZXRlcmlhLjwvcD5cclxuICAgICAgICBcclxuICAgICAgICA8aDI+U3BvbnNvcmluZzwvaDI+XHJcbiAgICAgICAgPHA+QSB0YWJsZSB3YXMgY3JlYXRlZCB0byBvcmdhbml6ZSBwYXJ0aWNpcGF0aW9uIGZvciBib3RoIHRoZSBIYW5ub3ZlciBGYWlyIGFuZCB0aGUgTGFiLVN1cHBseSBGYWlyLCBlbnN1cmluZyBlZmZlY3RpdmUgcGxhbm5pbmcgYW5kIHJlc291cmNlIGFsbG9jYXRpb24uPC9wPlxyXG4gICAgICAgIDwvPlxyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgICBjc3NuYW1lOiBcImFwcmlsMjNcIiwgXHJcbiAgICAgICAgbm9kZTogPD48aDE+VGVhbSBNZWV0aW5nPC9oMT5cclxuXHJcbiAgICAgICAgPGgyPk1lY2hhbmlzbTwvaDI+XHJcbiAgICAgICAgPHA+VGhlIGZvY3VzIGlzIG9uIHByaW1lIGVkaXRpbmcgdXNpbmcgYSBmdXNpb24gcHJvdGVpbiB0aGF0IGNvbWJpbmVzIENhcyBhbmQgUk5BIG1vbGVjdWxlcywgd2l0aCBwbGFucyB0byByZXBsYWNlIHRoZSBDYXMgcHJvdGVpbiB3aXRoIHRoZSBGYW56b3IgcHJvdGVpbi4gSXQgaXMgZXNzZW50aWFsIHRvIGRldGVybWluZSB0aGUgZXhhY3QgdGFyZ2V0IGFuZCBvcmdhbml6ZSB0aGUgbmVjZXNzYXJ5IHNlcXVlbmNlcywgcG90ZW50aWFsbHkgcmVxdWlyaW5nIGNsb25pbmcuIEF0dGVudGlvbiBtdXN0IGJlIHBhaWQgdG8gdGhlIGRldmVsb3BtZW50IGN5Y2xlLCBhcyB0aGlzIHdpbGwgYmUgc2NydXRpbml6ZWQgYnkganVkZ2VzLCBwYXJ0aWN1bGFybHkgcmVnYXJkaW5nIHRoZSBXaWtpIHByZXNlbnRhdGlvbi48L3A+XHJcbiAgICAgICAgXHJcbiAgICAgICAgPGgyPkRlbGl2ZXJ5PC9oMj5cclxuICAgICAgICA8cD5EaXNjdXNzaW9ucyBoaWdobGlnaHRlZCBSTkEgYXMgdGhlIGNhcmdvLCB3aXRoIHBvdGVudGlhbCBjZWxsIHRhcmdldHMgaW5jbHVkaW5nIGlvbm9jeXRlcyBhbmQgY2x1YiBjZWxscywgYXMgYmFzYWwgY2VsbHMgYXJlIHRvbyBkZWVwLXNlYXRlZC4gTkxEMSwgd2hpY2ggY29udGFpbnMgUEVHIGZvciBzdGFiaWxpdHksIGZhY2VzIHRyYW5zcG9ydGF0aW9uIGNoYWxsZW5nZXMgZHVlIHRvIGl0cyBsaW1pdGVkIHNoZWxmIGxpZmUuIEFsdGVybmF0aXZlIGRlbGl2ZXJ5IG1ldGhvZHMsIHN1Y2ggYXMgQ2hpdG9zYW4gTE5QIGFuZCBBdG9taWMgRm9yY2UgTWljcm9zY29weSwgYXJlIGJlaW5nIGV4cGxvcmVkLCB3aXRoIHRoZSBjb21wYW55IEFJUmluaGFsZSBtZW50aW9uZWQgZm9yIGNvbGxhYm9yYXRpb24uPC9wPlxyXG4gICAgICAgIFxyXG4gICAgICAgIDxoMj5IdW1hbiBQcmFjdGljZXM8L2gyPlxyXG4gICAgICAgIDxwPkp1ZGdpbmcgaW4gaHVtYW4gcHJhY3RpY2VzIHdpbGwgYmUgcmlnb3JvdXM7IHRyYW5zcGFyZW5jeSBhbmQgZGV0YWlsZWQgZG9jdW1lbnRhdGlvbiBhcmUgY3J1Y2lhbCB0byB3aW4gb3ZlciBqdWRnZXMuIEludGVydmlld3Mgc2hvdWxkIGluY2x1ZGUgYSBkaXZlcnNlIHJhbmdlIG9mIGV4cGVydHMsIGFuZCB2aXN1YWwgZG9jdW1lbnRhdGlvbiwgaW5jbHVkaW5nIHBob3RvcywgaXMgZXNzZW50aWFsIHRvIHN1cHBvcnQgdGhlIG5hcnJhdGl2ZS4gQWRkaXRpb25hbGx5LCB0aGVyZSBpcyBhIG5lZWQgdG8gZ2F0aGVyIHJlc2VhcmNoIG9uIGhvdyBvdGhlciB0ZWFtcyBhcHByb2FjaCB2YXJpb3VzIHN1Yi1hc3BlY3RzIG9mIHRoZWlyIHByb2plY3RzLjwvcD5cclxuICAgICAgICBcclxuICAgICAgICA8aDI+UHVibGljIE91dHJlYWNoPC9oMj5cclxuICAgICAgICA8cD5SZXN0cmljdGlvbnMgZm9yIE1VS09Nb3ZlIHBvc3RlcnMgaGF2ZSBiZWVuIGVtcGhhc2l6ZWQsIHdpdGggZ3VpZGVsaW5lcyB1cGxvYWRlZCBieSBJc2EgZm9yIGFkaGVyZW5jZS4gUG9zdGVycyBtdXN0IGluY2x1ZGUgNDAgc3RpY2tlcnMgaW4gdGhlIHRvcCByaWdodCBjb3JuZXIsIGFuZCB0aGV5IGNhbm5vdCBiZSBkaXNwbGF5ZWQgd2l0aG91dCB0aGVtLjwvcD5cclxuICAgICAgICBcclxuICAgICAgICA8aDI+VXJnZW50PC9oMj5cclxuICAgICAgICA8cD5MaWxpYW5hIGlzIHRhc2tlZCB3aXRoIHJlYWNoaW5nIG91dCB0byBpbmRpdmlkdWFscyBmb3IgdmlkZW8gY29udHJpYnV0aW9ucyByZWdhcmRpbmcgZ2VuZSB0aGVyYXB5IGZvciB0aGUgdXBjb21pbmcgRXVyb3BlYW4gQ29uZmVyZW5jZSBvZiBDeXN0aWMgRmlicm9zaXMsIHNjaGVkdWxlZCBmb3IgSnVuZSA1dGggdG8gOHRoIGluIEdsYXNnb3cuIFRoZXJlIHdpbGwgYmUgYSBzcGVjaWFsIHByaXplIGZvciBlZmZvcnRzIGluIGh1bWFuIHByYWN0aWNlcywgb3V0cmVhY2gsIGFuZCBlZHVjYXRpb24sIGluY2x1ZGluZyBvcHBvcnR1bml0aWVzIGZvciBcImVwb3N0ZXJzXCIgYW5kIGNvbm5lY3Rpbmcgd2l0aCBleHBlcnRzLjwvcD5cclxuICAgICAgICA8Lz5cclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgICAgY3NzbmFtZTogXCJhcHJpbDI1XCIsIFxyXG4gICAgICAgIG5vZGU6IDw+PGgxPlRlYW0gTWVldGluZzwvaDE+XHJcblxyXG4gICAgICAgIDxoMj5VcmdlbnQ8L2gyPlxyXG4gICAgICAgIDxwPlRoZSBwcm9qZWN0IGRlc2NyaXB0aW9uIGZvciB0aGUgUHJvbWVnYSBwcm9qZWN0IG5lZWRzIHRvIGJlIGNvbXBsZXRlZCBpbW1lZGlhdGVseS4gS2FpIHdpbGwgZHJhZnQgdGhlIGRlc2NyaXB0aW9uIGFuZCBzaGFyZSBpdCBvbiBUZWFtcyBmb3IgdGVhbSBtZW1iZXJzIHRvIHJldmlldyBhbmQgcHJvdmlkZSBmZWVkYmFjay48L3A+XHJcbiAgICAgICAgXHJcbiAgICAgICAgPGgyPk9yZ2FuaXNhdGlvbjwvaDI+XHJcbiAgICAgICAgPHA+VGhlIHByZXNlbnRhdGlvbiBvbiBNb25kYXkgd2lsbCBiZSBwcmVwYXJlZCBieSBLaW0sIEthaSwgUGhpbGxpcCwgYW5kIEFzYWwuPC9wPlxyXG4gICAgICAgIFxyXG4gICAgICAgIDxoMj5NZWNoYW5pc208L2gyPlxyXG4gICAgICAgIDxwPlBsYXNtaWQgYW5kIGNvbnN0cnVjdCBwbGFubmluZyBpcyBhbiBpbW1lZGlhdGUgcHJpb3JpdHksIHdpdGggdGhlIHRlYW0gcHVyc3VpbmcgdGhyZWUgYXBwcm9hY2hlczogQ2FzOSwgQ2FzMTIsIGFuZCBGYW56b3IuIEtleSBjb21wb25lbnRzIGluY2x1ZGUgUmV2ZXJzZSBUcmFuc2NyaXB0YXNlLCB0ZW1wbGF0ZSBETkEsIGFuZCBwZWdSTkEsIHdoaWNoIG11c3QgYmUgY2FyZWZ1bGx5IGRlc2lnbmVkIHRvIGVuc3VyZSBjb21wYXRpYmlsaXR5IHdpdGggdGhlIGNvbnN0cnVjdHMuIFRoZSBGYW56b3IgcmVxdWlyZXMgbW9kaWZpY2F0aW9uIHRvIGFjdCBhcyBhIG5pY2thc2UsIGFuZCB0aGUgdGVhbSB3aWxsIHdvcmsgdG8gb3B0aW1pemUgdGhlIGNvbnN0cnVjdHMgdG8gY3JlYXRlIHNtYWxsZXIsIG1vcmUgZWZmZWN0aXZlIGRlc2lnbnMuPC9wPlxyXG4gICAgICAgIFxyXG4gICAgICAgIDxoMz5Qcm9vZiBvZiBDb25jZXB0PC9oMz5cclxuICAgICAgICA8cD5BIHBsYXNtaWQgd2l0aCBhIENNViBwcm9tb3RlciB3aWxsIGJlIG9yZGVyZWQgYWNjb3JkaW5nIHRvIGd1aWRlbGluZXMgaW4gYSByZWxldmFudCBwYXBlciwgYW5kIGEgVDcgcHJvbW90ZXIgd2lsbCBiZSB1c2VkIGZvciBtUk5BIHByb2R1Y3Rpb24uIFRlc3Rpbmcgd2lsbCBpbnZvbHZlIEhFQy9IRUxBIGNlbGwgbGluZXMgdG8gZXZhbHVhdGUgZXhwcmVzc2lvbiwgd2l0aCBhIGZvY3VzIG9uIGEgY29udHJvbCBjZWxsIGxpbmUgbGFja2luZyB0aGUgQ0ZUUiBnZW5lLiBUaGUgY29uc3RydWN0cyB3aWxsIGJlIGNoYXJhY3Rlcml6ZWQgb3ZlciB0aW1lLCBhbmQgYSB0cmFuc2ZlY3Rpb24gbWFya2VyIHdpbGwgYmUgaW5jbHVkZWQgdG8gYXNzZXNzIHJlcGFpciBmdW5jdGlvbmFsaXR5LjwvcD5cclxuICAgICAgICBcclxuICAgICAgICA8aDM+VGFzayBEaXN0cmlidXRpb248L2gzPlxyXG4gICAgICAgIDxwPlRlYW0gbWVtYmVycyBhcmUgYXNzaWduZWQgdG8gdmFyaW91cyB0YXNrczogZXZlcnlvbmUgd2lsbCByZXZpZXcgdGhlIFJGQzEwIHN0YW5kYXJkLCB3aGlsZSB0aGUgZXhwZXJpbWVudGFsIHdvcmtmbG93IHRlYW0gd2lsbCBpbmNsdWRlIEthaSwgQ2hyaXN0aWFuLCBhbmQgTGlsaWFuYS4gT3RoZXIgdGFza3Mgd2lsbCBmb2N1cyBvbiBzZXF1ZW5jaW5nLCBsaW5rZXJzLCBhbmQgcmV2ZXJzZSB0cmFuc2NyaXB0YXNlLCB3aXRoIGxhYm9yYXRvcnkgdGFza3Mgc3VjaCBhcyBwb3VyaW5nIHBsYXRlcyBhbmQgbWFraW5nIEUuIGNvbGkgY29tcGV0ZW50IGFsc28gcHJpb3JpdGl6ZWQuPC9wPlxyXG4gICAgICAgIFxyXG4gICAgICAgIDxoMj5QdWJsaWMgT3V0cmVhY2g8L2gyPlxyXG4gICAgICAgIDxwPlRoZSBNdWtvTU9WRSBpbml0aWF0aXZlIGlzIHByb2dyZXNzaW5nLCB3aXRoIHRoZSBjYWZldGVyaWEgY292ZXJlZCBhbmQgMjEgcG9zdGVycyBodW5nIGFyb3VuZCB0aGUgT2xkIFRvd24uIFJlbWFpbmluZyBwb3N0ZXJzIHdpbGwgYmUgZGlzdHJpYnV0ZWQgc29vbi48L3A+XHJcbiAgICAgICAgXHJcbiAgICAgICAgPGgyPkJpb3NhZmV0eTwvaDI+XHJcbiAgICAgICAgPHA+U2FmZXR5IG1lY2hhbmlzbXMgZGlzY3Vzc2VkIGluY2x1ZGUgYSBwcm90ZWluIHRoYXQgZGVncmFkZXMgdGhlIGxpbmtlciB1c2luZyBhIHJlcG9ydGVyIHN5c3RlbSAoVG9laG9sZCBTd2l0Y2gpLCB3aGljaCBhY3RpdmF0ZXMgb25seSBpbiB0aGUgcHJlc2VuY2Ugb2YgdGhlIG1STkEgdHJhbnNjcmlwdC4gQWRkaXRpb25hbGx5LCBhIE5hKyByaWJvc3dpdGNoIHdpbGwgbWFzayB0aGUgZ3VpZGUgc2VxdWVuY2UgdW5kZXIgbG93IGlvbiBjb25kaXRpb25zLCB1bmZvbGRpbmcgb25seSB3aGVuIHN1ZmZpY2llbnQgaW9ucyBhcmUgcHJlc2VudC48L3A+XHJcbiAgICAgICAgPC8+XHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICAgIGNzc25hbWU6IFwiYXByaWwzMFwiLCBcclxuICAgICAgICBub2RlOiA8PjxoMT5UZWFtIE1lZXRpbmc8L2gxPlxyXG5cclxuICAgICAgICA8aDI+T3JnYW5pc2F0aW9uPC9oMj5cclxuICAgICAgICA8cD5UaGUgU3RlZXJpbmcgQ29tbWl0dGVlIHByb3ZpZGVkIHBvc2l0aXZlIGZlZWRiYWNrIG9uIHRoZSBwcm9qZWN0LCBlbXBoYXNpemluZyBzaW1wbGljaXR5IGFuZCB0aGUgaW1wb3J0YW5jZSBvZiBzbWFsbCBzdWNjZXNzZXMuIFRoZXJlIHdhcyBkaXNjdXNzaW9uIGFib3V0IHRoZSB1c2Ugb2YgdGhlIFVzc2luZyBjaGFtYmVyIGFuZCBhIHByZWZlcmVuY2UgZm9yIHRoZSBwYXRjaC1jbGFtcCBtZXRob2QgZm9yIG1lYXN1cmluZyBpb24gY2hhbm5lbHMuIFRoZSBjb21taXR0ZWUgZW5jb3VyYWdlZCBtb3JlIGNvbGxhYm9yYXRpb24gd2l0aCB0aGUgbWVkaWNhbCBmYWN1bHR5IGFuZCBhY2tub3dsZWRnZWQgY29udHJpYnV0aW9ucyBmcm9tIFBoaWxpcCwgS2ltLCBhbmQgQ2hyaXN0aWFuLjwvcD5cclxuICAgICAgICBcclxuICAgICAgICA8aDI+VGVhbTwvaDI+XHJcbiAgICAgICAgPHA+S2F5YSBleHByZXNzZWQgY29uY2VybnMgYWJvdXQgbWlzc2luZyBtZWV0aW5ncyBhbmQgcHJvcG9zZWQgY2hhbmdlcyB0byB0aGUgbWVldGluZyBzdHJ1Y3R1cmUgdG8gaW1wcm92ZSBhdHRlbmRhbmNlLiBLYXRobGVlbiBoaWdobGlnaHRlZCB0aGUgbmVlZCBmb3IgcGVyc29uYWwgYWNjb3VudGFiaWxpdHksIHVyZ2luZyBldmVyeW9uZSB0byB0YWtlIG1vcmUgaW5pdGlhdGl2ZS4gVGhlIE1pcm8gYm9hcmQgd2FzIGRlbW9uc3RyYXRlZCBmb3IgdGFzayBhc3NpZ25tZW50cywgYW5kIGl0IHdhcyBzdWdnZXN0ZWQgdGhhdCBvbmUgcGVyc29uIGJlIHJlc3BvbnNpYmxlIGZvciBzdWItdGVhbXMgd2hpbGUgS2F5YSB3aWxsIGNvbXBpbGUgbWVldGluZyBtaW51dGVzLjwvcD5cclxuICAgICAgICBcclxuICAgICAgICA8aDI+SmFtYm9yZWUgJiBNZWV0VXBzPC9oMj5cclxuICAgICAgICA8cD5DdXJyZW50bHksIGFyb3VuZCA3MCBwZW9wbGUgYXJlIHJlZ2lzdGVyZWQgZm9yIHRoZSBCRkggbWVldHVwIHdpdGggYWJvdXQgMTAgdGVhbXMgcGFydGljaXBhdGluZywgd2hpY2ggd2lsbCBhbHNvIGJlIHByb21vdGVkIG9uIExpbmtlZEluLiBBZGRpdGlvbmFsbHksIHRoZSBpR0VNIEVpbmRob3ZlbiBNZWV0dXAgaXMgc2NoZWR1bGVkIGZvciBPY3RvYmVyLjwvcD5cclxuICAgICAgICBcclxuICAgICAgICA8aDI+TWVjaGFuaXNtPC9oMj5cclxuICAgICAgICA8cD5UaGUgY3VycmVudCBmb2N1cyBpbmNsdWRlcyBkaXNjdXNzaW9ucyBvbiBSTkEsIHBhcnRpY3VsYXJseSByaWJvc3dpdGNoZXMsIHdoaWxlIGNpcmN1bGFyIFJOQSB0b3BpY3MgYXJlIHBvc3Rwb25lZC4gVGhlcmUgaXMgYSBuZWVkIGZvciBhIGNvbXByZWhlbnNpdmUgY29uY2VwdCB0aGF0IG91dGxpbmVzIFByaW1lIEVkaXRpbmcgaW1wcm92ZW1lbnRzIGFuZCBleHBsb3JlcyB0aGUgYmluZGluZyBjYXBhYmlsaXRpZXMgb2YgdG9laG9sZCBzd2l0Y2hlcy4gVGhlIHRlYW0gcGxhbnMgdG8gcHJvZHVjZSBtUk5BIGZvciBkZWxpdmVyeSwgcGFja2FnaW5nIGl0IGludG8gTE5Qcywgd2l0aCBhIGRldGFpbGVkIG1STkEgcGF0aHdheSBlc3RhYmxpc2hlZCBmb3IgZWZmZWN0aXZlIGNlbGx1bGFyIGVudHJ5LjwvcD5cclxuICAgICAgICBcclxuICAgICAgICA8aDM+U3BlY2lmaWNzIG9uIENvbnN0cnVjdHM8L2gzPlxyXG4gICAgICAgIDxwPlBsYW5zIGludm9sdmUgdXNpbmcgNjAwIEZhbnpvciBhbmQgMTYwMCBSZXZlcnNlIFRyYW5zY3JpcHRhc2UgKFJUKSBmb3IgY29uc3RydWN0IG9wdGltaXphdGlvbi4gVGhlIENoaW1lcmEgc29mdHdhcmUgd2lsbCBiZSB1dGlsaXplZCB0byBhbmFseXplIGFtaW5vIGFjaWQgc2VxdWVuY2VzIGFuZCByZXZpZXcgbGlua2Vycywgd2hpbGUgUEFNIGFuZCBUQU0gc2VxdWVuY2VzIHdpbGwgYmUgcmVzZWFyY2hlZCBieSBLYXRobGVlbiBmb3IgZWZmZWN0aXZlIGN1dCBzaXRlcy4gVGVzdGluZyBmb3IgQ2FzIHByb3RlaW5zIHdpbGwgaW5jbHVkZSBkZXRlcm1pbmluZyB3aGljaCBDYXMxMiB0byB1c2UsIG11dGF0aW9uIGludGVncmF0aW9uLCBhbmQgY29uZHVjdGluZyBQQ1IgZm9yIG11dGF0aW9uIHRlc3RpbmcuPC9wPlxyXG4gICAgICAgIFxyXG4gICAgICAgIDxoMj5IdW1hbiBQcmFjdGljZXM8L2gyPlxyXG4gICAgICAgIDxwPkxpbGlhbmEgcmVwb3J0ZWQgdGhhdCBtb3JlIGluZGl2aWR1YWxzIGFyZSBhdmFpbGFibGUgZm9yIGludGVydmlld3MsIHdpdGggc29tZSBwcmVmZXJyaW5nIFpvb20gZm9yIHZpZGVvIGludGVyYWN0aW9ucy4gVGhlIHRlYW0gaXMgZW5jb3VyYWdlZCB0byBtYWludGFpbiBmbGV4aWJpbGl0eSBpbiBjb25kdWN0aW5nIGludGVydmlld3MuPC9wPlxyXG4gICAgICAgIDwvPlxyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgICBjc3NuYW1lOiBcIm1heTJcIiwgXHJcbiAgICAgICAgbm9kZTogPD48aDE+VGVhbSBNZWV0aW5nPC9oMT5cclxuXHJcbiAgICAgICAgPGgyPlVyZ2VudDwvaDI+XHJcbiAgICAgICAgPHA+VGhlIHByb2plY3QgbmFtZSBtdXN0IGJlIGZpbmFsaXplZCBieSBNYXkgNnRoLjwvcD5cclxuICAgICAgICBcclxuICAgICAgICA8aDI+VGVhbTwvaDI+XHJcbiAgICAgICAgPHA+VGVhbSBvcmdhbml6YXRpb24gaXMgY3J1Y2lhbDsgYWxsIG1lbWJlcnMgc2hvdWxkIGJlbG9uZyB0byBhdCBsZWFzdCB0d28gb3IgdGhyZWUgdGVhbXMsIHdpdGggYSBjbGVhciBkZWZpbml0aW9uIG9mIHNwZWNpYWwgcHJpemUgY2F0ZWdvcmllcy4gUHVibGljIE91dHJlYWNoIGFuZCBIdW1hbiBQcmFjdGljZXMgd2lsbCBoYXZlIHNlcGFyYXRlIHRlYW1zLCBhbmQgaW5kaXZpZHVhbCB0ZWFtIG1lZXRpbmdzIHNob3VsZCBiZSBvcmdhbml6ZWQgYnkgTWF5IDd0aCB0byBkaXNjdXNzIHByb2dyZXNzLiBNb250aGx5IFN0ZWVyaW5nIENvbW1pdHRlZSBtZWV0aW5ncyB3aWxsIG9jY3VyLCByZXF1aXJpbmcgZWFjaCB0ZWFtIHRvIHJlcG9ydCB1cGRhdGVzIG9uIGEgc2luZ2xlIHNsaWRlLjwvcD5cclxuICAgICAgICBcclxuICAgICAgICA8cD5UaGUgY3VycmVudCBwcm9qZWN0IGRpcmVjdGlvbiBpcyBwcm9taXNpbmcsIGJ1dCB0aGVyZSdzIGEgcmlzayBvZiBiZWNvbWluZyBvdmVybHkgdGhlb3JldGljYWwsIGRlbGF5aW5nIHByYWN0aWNhbCBsYWIgd29yay4gVGhlIGdvYWwgaXMgdG8gdHJhbnNpdGlvbiBmcm9tIHRoZW9yeSB0byBwcmFjdGljZSBxdWlja2x5LCBmb2N1c2luZyBvbiBnZW5lcmF0aW5nIGEgUHJpbWUgRWRpdGluZyBDb21wbGV4IChQRUMpIGFuZCBkZW1vbnN0cmF0aW5nIGl0cyBmdW5jdGlvbmFsaXR5IGluIGEgc3VpdGFibGUgbW9kZWwgc3lzdGVtLiBCeSBicmVha2luZyBkb3duIGdvYWxzIGludG8gbWFuYWdlYWJsZSBzdGFnZXMsIHRoZSB0ZWFtIGNhbiBhaW0gZm9yIGdvbGQgd2hpbGUgYWxzbyBleHBsb3Jpbmcgb3Bwb3J0dW5pdGllcyBmb3Igc3BlY2lhbCBwcml6ZXMuPC9wPlxyXG4gICAgICAgIFxyXG4gICAgICAgIDxoMj5NZWNoYW5pc208L2gyPlxyXG4gICAgICAgIDxwPlBoaWxpcCB3aWxsIHByZXBhcmUgYSBzdW1tYXJ5IG9mIHRoZSBjb25zdHJ1Y3RzIGFuZCByZXNvdXJjZXMsIGluY2x1ZGluZyBhIFlvdVR1YmUgdmlkZW8gb24gUHJpbWUgRWRpdGluZyBleHBlcmltZW50cyBhbmQgQ2hpbWVyYVggZXhwbG9yYXRpb24uIFF1ZXN0aW9ucyByZWdhcmRpbmcgdGhlIGV4cG9ydGFiaWxpdHkgb2YgQ2hpbWVyYVggaW50byAzRCBmb3JtYXRzIHdpbGwgYmUgYWRkcmVzc2VkLiBGaW5hbGl6YXRpb24gb2YgdGhlIEJpb2RpdmVyc2l0eSBQcmUtRGVsaXZlcmFibGUgYW5kIHByb2NlZWRpbmcgd2l0aCBwbGFzbWlkIG9yZGVycyBhcmUgbmV4dCBzdGVwcy48L3A+XHJcbiAgICAgICAgXHJcbiAgICAgICAgPGgyPkRlbGl2ZXJ5PC9oMj5cclxuICAgICAgICA8cD5UaGUgdGVhbSBpcyBpbiB0aGUgZmluYWwgc3RhZ2VzIG9mIGNvbXBsZXRpbmcgdGhlIGxvZ28uPC9wPlxyXG4gICAgICAgIFxyXG4gICAgICAgIDxoMj5IdW1hbiBQcmFjdGljZXM8L2gyPlxyXG4gICAgICAgIDxwPkFsbCBleHRlcm5hbCBjb250YWN0cyBzaG91bGQgYmUgZG9jdW1lbnRlZCBpbiBhIFdvcmQgZmlsZSB1bmRlciBIdW1hbiBQcmFjdGljZXMuPC9wPlxyXG4gICAgICAgIFxyXG4gICAgICAgIDxoMj5QdWJsaWMgT3V0cmVhY2g8L2gyPlxyXG4gICAgICAgIDxwPlRoZSB1bml2ZXJzaXR5IHdpbGwgdXRpbGl6ZSBzcG9ydHMgc2V0cyBmb3IgTXVrb21vdmUsIGVuY291cmFnaW5nIGZhbWlseSBhbmQgZnJpZW5kcyB0byBwcm9tb3RlIHRoZSBpbml0aWF0aXZlLjwvcD5cclxuICAgICAgICBcclxuICAgICAgICA8aDI+U3BvbnNvcmluZzwvaDI+XHJcbiAgICAgICAgPHA+QXNzaXN0YW5jZSBpcyB1cmdlbnRseSBuZWVkZWQgZm9yIHNwb25zb3JzaGlwIGVmZm9ydHMuPC9wPlxyXG4gICAgICAgIDwvPlxyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgICBjc3NuYW1lOiBcIm1heTdcIiwgXHJcbiAgICAgICAgbm9kZTogPD48aDE+VGVhbSBNZWV0aW5nPC9oMT5cclxuXHJcbiAgICAgICAgPGgyPlVyZ2VudDwvaDI+XHJcbiAgICAgICAgPHA+VGhlIHRlYW0gaXMgY3VycmVudGx5IGJlaGluZCB0aGUgcGxhbm5lZCB0aW1lbGluZSBmb3IgdGhlIGxhYiBhY3Rpdml0aWVzLjwvcD5cclxuICAgICAgICBcclxuICAgICAgICA8aDI+T3JnYW5pc2F0aW9uPC9oMj5cclxuICAgICAgICA8cD5UaGUgTWljcm9zeW50aCBhY2NvdW50IGhhcyBiZWVuIGFwcHJvdmVkIGFuZCB3aWxsIGJlIGZvcndhcmRlZCB0byB0aGUgU3BvbnNvcmluZyB0ZWFtLiBUaGVyZSB3aWxsIGJlIG5vIG1lZXRpbmcgdGhpcyBUaHVyc2RheS48L3A+XHJcbiAgICAgICAgXHJcbiAgICAgICAgPGgyPlRlYW08L2gyPlxyXG4gICAgICAgIDxwPlRoZSBoZWFkcyBvZiB0ZWFtcyBoYXZlIGJlZW4gZXN0YWJsaXNoZWQgYXMgZm9sbG93czogS2F0aGxlZW4gZm9yIFB1YmxpYyBPdXRyZWFjaCwgTGlsaWFuYSBmb3IgV2lraSwgVmVyYSBmb3IgRGVsaXZlcnksIFBoaWxpcCBmb3IgTWVjaGFuaXNtLCBhbmQgTWljaGFlbCBmb3IgRGVzaWduLiBTcG9uc29yaW5nIHN0aWxsIG5lZWRzIGEgbGVhZCwgcG9zc2libHkgSXNhYmVsbC48L3A+XHJcbiAgICAgICAgXHJcbiAgICAgICAgPGgyPkphbWJvcmVlICYgTWVldFVwczwvaDI+XHJcbiAgICAgICAgPHA+Rm9yIHRoZSB1cGNvbWluZyBtZWV0LXVwLCBzZXZlcmFsIGl0ZW1zIGFyZSBzdGlsbCBuZWVkZWQ6IGEgc2NpZW50aWZpYyBwb3N0ZXIgKFBoaWxpcCwgS2ltLCBDaHJpc3RpYW4pLCBULXNoaXJ0cyAoRGVzaWduIHRlYW0pLCBhIHByZXNlbnRhdGlvbiAoUGhpbGlwLCBLYXlhKSwgc3RpY2tlcnMgKDMweDMwbW0sIERlc2lnbiB0ZWFtKSwgYSBwcm9qZWN0IHRpdGxlIChtYXggMTUgd29yZHMpLCBhbmQgYW4gYWJzdHJhY3QgKDE1MCB3b3JkcykuIEFkZGl0aW9uYWxseSwgYXNzaXN0YW5jZSBpcyByZXF1aXJlZCBmb3IgcGhvdG9ncmFwaHkgYXQgdGhlIEJGSCwgd2l0aCBNaWNoYWVsIGFjdGluZyBhcyB0aGUgY2FtZXJhbWFuIGFuZCBuZWVkaW5nIG1vcmUgc3VwcG9ydC48L3A+XHJcbiAgICAgICAgXHJcbiAgICAgICAgPGgyPldldCBMYWI8L2gyPlxyXG4gICAgICAgIDxwPkRpc2N1c3Npb24gb24gY2VsbCBjdWx0dXJlIHJlc3BvbnNpYmlsaXRpZXMgaGlnaGxpZ2h0ZWQgdGhhdCBMaXNhIGFuZCBLYXRobGVlbiBoYXZlIGhhbmRzLW9uIGV4cGVyaWVuY2UsIHdoaWxlIG90aGVycyB3aWxsIHJlcXVpcmUgZ3VpZGFuY2UuIFR3byBncm91cHMgd2lsbCB3b3JrIHdpdGggSEVDIGFuZCBIRUxBLCB3aXRoIHNjaGVkdWxlZCBzZXNzaW9ucyBuZXh0IHdlZWsgZm9yIGZhbWlsaWFyaXphdGlvbiB3aXRoIEJlbmNobGluZy4gVGhlIHBvc3NpYmlsaXR5IG9mIHRoYXdpbmcgSEVMQSAmIEhFSyBjZWxscyBmb3IgcHJhY3RpY2Ugd2FzIGRpc2N1c3NlZCwgYWxvbmcgd2l0aCBzb3VyY2luZyBjZWxscyBmcm9tIEx1a2FzIGFuZCBITk8gZm9yIHRyYWluaW5nIHB1cnBvc2VzLjwvcD5cclxuICAgICAgICBcclxuICAgICAgICA8aDI+TWVjaGFuaXNtPC9oMj5cclxuICAgICAgICA8cD5BbiB1cGRhdGUgb24gcHVyY2hhc2VkIHNlcXVlbmNlcyB3YXMgc2hhcmVkLCBpbmRpY2F0aW5nIGRpZmZpY3VsdGllcyB3aXRoIEZhbnpvciBhbmQgcGxhbnMgdG8gb3JkZXIgQ2FzLTkgZW5kb251Y2xlYXNlIGFzIGEgYmFja3VwLiBDbGFyaWZpY2F0aW9uIGlzIG5lZWRlZCBvbiB3aGV0aGVyIHRvIHB1cmNoYXNlIHBsYXNtaWRzIHdpdGggb3Igd2l0aG91dCBhIHJlcG9ydGVyIHN5c3RlbSwgYXMgd2VsbCBhcyB0aGUgcG90ZW50aWFsIG9yZGVyaW5nIG9mIHJldmVyc2UgdHJhbnNjcmlwdGFzZS48L3A+XHJcbiAgICAgICAgXHJcbiAgICAgICAgPGgyPkh1bWFuIFByYWN0aWNlczwvaDI+XHJcbiAgICAgICAgPHA+UXVlc3Rpb25zIGZvciBhbiB1cGNvbWluZyBpbnRlcnZpZXcgd2l0aCBQcm9mLiBXZWJlciBhcmUgcHJlcGFyZWQsIHdpdGggdGhlIHBvc3NpYmlsaXR5IG9mIGFkZGluZyBtb3JlLiBUaGUgTWVjaGFuaXNtIHRlYW0gd2lsbCBjcmVhdGUgYWRkaXRpb25hbCBzbGlkZXMsIGFuZCBMaXNhIHdpbGwgaW5xdWlyZSBhYm91dCBib3Jyb3dpbmcgYSBjYW1lcmEgYW5kIHJlY29yZGluZyBkZXZpY2UgZm9yIHRoZSBpbnRlcnZpZXcuPC9wPlxyXG4gICAgICAgIFxyXG4gICAgICAgIDxoMj5QdWJsaWMgT3V0cmVhY2g8L2gyPlxyXG4gICAgICAgIDxwPkZvciBNdWtvTW92ZSwgTGlsaWFuYSB3aWxsIHByaW50IHRoZSBzdGFydGluZyBudW1iZXJzLCB3aGlsZSBLYWphIHdpbGwgc2hhcmUgdGhpcyBpbmZvcm1hdGlvbiBvbiBUZWFtcywgYW5kIEtheWEgd2lsbCBvYnRhaW4gc2FmZXR5IHBpbnMgZm9yIGF0dGFjaG1lbnQuPC9wPlxyXG4gICAgICAgIFxyXG4gICAgICAgIDxoMj5TcG9uc29yaW5nPC9oMj5cclxuICAgICAgICA8cD5BIG1lZXRpbmcgd2l0aCBWZXJlbmEgS3JcdTAwRTR1dG5lciBpcyBzY2hlZHVsZWQgZm9yIE1vbmRheSwgd2hlcmUgYSBkcmF3IHdpbGwgZGV0ZXJtaW5lIHRoZSBzcG9uc29yc2hpcCB3aW5uZXIsIHdpdGggTHlkaWEgc3VnZ2VzdGluZyBhIHRpbWUgb2YgNTozMCBQTS4gQWRkaXRpb25hbGx5LCBhIG1lZXRpbmcgd2l0aCBTdGVtY2VsbCB3aWxsIGZvbGxvdyB1cCBvbiB0aGUgcHJvdmlzaW9uIG9mIG1lZGl1bS48L3A+XHJcbiAgICAgICAgXHJcbiAgICAgICAgPGgyPkNyZWF0aXZpdHk8L2gyPlxyXG4gICAgICAgIDxwPlRoZSB0ZWFtIGhhcyBjaG9zZW4gdGhlIG5hbWUgXCI8UHJlQ3lzZS8+XCIgYW5kIGlzIGRldmVsb3BpbmcgYSBsb2dvLCBlbXBoYXNpemluZyBzaW1wbGljaXR5IGFuZCBhdm9pZGluZyBvdmVybHkgZmluZSBkZXRhaWxzIG9yIHdoaW1zaWNhbCBpbWFnZXJ5LiBGZWVkYmFjayB3aWxsIGJlIGdhdGhlcmVkIG9uIHRoZSBwcm9wb3NlZCBsb2dvcyBhbmQgbmFtZS48L3A+XHJcbiAgICAgICAgXHJcbiAgICAgICAgPGgyPldpa2k8L2gyPlxyXG4gICAgICAgIDxwPlRoZXJlIGlzIGEgbmVlZCBmb3IgdGVhbSBtZW1iZXJzIHRvIHdyaXRlIHRleHRzIGZvciB0aGUgd2lraSwgZm9jdXNpbmcgb24gdGFza3Mgb3V0bGluZWQgaW4gdGhlIFdpa2ksIEh1bWFuIFByYWN0aWNlcywgYW5kIERlc2lnbiBjaGFubmVscy4gVGhlIHRlYW0gc2hvdWxkIGFsc28gYWdyZWUgb24gYSBjaXRhdGlvbiBzdHlsZS48L3A+XHJcbiAgICAgICAgPC8+XHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICAgIGNzc25hbWU6IFwibWF5MTRcIiwgXHJcbiAgICAgICAgbm9kZTogPD48aDE+VGVhbSBNZWV0aW5nPC9oMT5cclxuXHJcbiAgICAgICAgPGgyPk9yZ2FuaXNhdGlvbjwvaDI+XHJcbiAgICAgICAgPHA+VGhlcmUgd2FzIGEgcmVwb3J0IHJlZ2FyZGluZyBhIEZhY2Vib29rIHBhZ2UgYXR0cmlidXRlZCB0byBGcmllZGVyaWtlIExlaGxlLCBwcm9tcHRpbmcgYSBkaXNjdXNzaW9uIG9uIHdoZXRoZXIgaXQgaXMgZ2VudWluZSBvciBzcGFtLiBBZGRpdGlvbmFsbHksIHRoZSB0ZWFtIHJlY2VpdmVkIGNvbmdyYXR1bGF0aW9ucyBvbiB0aGUgc3BvbnNvcnNoaXAgZnJvbSBQcm9tZWdhIEdtYkgsIHdpdGggdGhlIG5leHQgc3RlcHMgb3V0bGluZWQgaW4gdGhlIGNvbW11bmljYXRpb24uPC9wPlxyXG4gICAgICAgIFxyXG4gICAgICAgIDxoMj5KYW1ib3JlZSAmIE1lZXRVcHM8L2gyPlxyXG4gICAgICAgIDxwPkRpc2N1c3Npb25zIGFib3V0IHRoZSB1cGNvbWluZyBtZWV0LXVwIGluY2x1ZGVkIHJlc3BvbnNpYmlsaXRpZXMgZm9yIGhhbmRsaW5nIG1pbGsgYWx0ZXJuYXRpdmVzIGFuZCBzdWdhci4gVGhlIHRlYW0gaXMgYWxzbyBlbmNvdXJhZ2VkIHRvIGFzayBmcmllbmRzIGZvciBhc3Npc3RhbmNlIHdpdGggZmlsbWluZyBkdXJpbmcgdGhlIGV2ZW50LjwvcD5cclxuICAgICAgICBcclxuICAgICAgICA8aDI+TWVjaGFuaXNtPC9oMj5cclxuICAgICAgICA8cD5UaGUgZmlyc3QgcGxhc21pZHMgaGF2ZSBiZWVuIG9yZGVyZWQsIGluY2x1ZGluZyBwTUozMjYgKEZhbnpvcikgYW5kIHBDTVYtUEUyIChTdGFuZGFyZCBQcmltZSBFZGl0aW5nKS4gUmVtYWluaW5nIHRhc2tzIGluY2x1ZGUgdGhlIG9yZGVyaW5nIG9mIGEgc2hvcnRlbmVkIFJUIHBsYXNtaWQsIHBlZ1JOQSBhY2NlcHRvciBwbGFzbWlkLCBhbmQgc2NyZWVuaW5nIHBsYXNtaWQuIE1hbHRlIGFuZCBLYXlhIGFyZSB3b3JraW5nIG9uIHBlZ1JOQSBkZXNpZ24sIGFuZCB0aGVyZSdzIGEgbmVlZCB0byBleHBsb3JlIHZhcmlvdXMgcGVnIGludGVncmF0aW9ucyBpbnRvIHRoZSBhY2NlcHRvciBwbGFzbWlkLjwvcD5cclxuICAgICAgICA8cD5QcmltZXIgZGVzaWduIGlzIGNoYWxsZW5naW5nIGR1ZSB0byBpbmV4cGVyaWVuY2UsIGJ1dCB0aGUgdGVhbSBhaW1zIHRvIG1lZXQgQmlvQnJpY2sgc3RhbmRhcmRzIG9uY2UgdGhlIHZlY3RvcnMgYXJlIGF2YWlsYWJsZS4gS2FpIGFuZCBDaHJpc3RpYW4gYXJlIHNlbGVjdGluZyBjYW5kaWRhdGVzIGZvciBGYW56b3IgbXV0YXRpb25zLCBhbmQgdGVzdGluZyBlZGl0aW5nIHZpYSBHRlAgaXMgcGxhbm5lZCwgcmVxdWlyaW5nIGFkYXB0YXRpb24gb2YgdGhlIHBsYXNtaWQgZm9yIHN0YWJsZSB0cmFuc2ZlY3Rpb24gaW50byBjZWxscy48L3A+XHJcbiAgICAgICAgXHJcbiAgICAgICAgPGgyPkh1bWFuIFByYWN0aWNlczwvaDI+XHJcbiAgICAgICAgPHA+RGV0YWlscyBmb3IgdGhlIGludGVydmlldyB3aXRoIFByb2YuIFdlYmVyIGFyZSB1bmRlciBkaXNjdXNzaW9uLCBpbmNsdWRpbmcgcHJlc2VudGF0aW9uIHJlc3BvbnNpYmlsaXRpZXMgYW5kIGxvZ2lzdGljYWwgYXJyYW5nZW1lbnRzLiBUaGVyZSBpcyBhbHNvIGEgbm90ZSBvbiBhIHBhdGllbnQgaW50ZXJ2aWV3IHJlcXVlc3QgaW52b2x2aW5nIGEgeW91bmcgY2hpbGQgd2l0aCBDeXN0aWMgRmlicm9zaXMuPC9wPlxyXG4gICAgICAgIFxyXG4gICAgICAgIDxoMj5TcG9uc29yaW5nPC9oMj5cclxuICAgICAgICA8cD5BIG1lZXRpbmcgd2l0aCBTdGVtY2VsbCBpcyBwbGFubmVkIHdoZXJlIHRoZSB0ZWFtIG11c3QgZGVjaWRlIG9uIHRoZSB0eXBlcyBhbmQgcXVhbnRpdGllcyBvZiBtZWRpYSBuZWVkZWQgYXMgc29vbiBhcyBwb3NzaWJsZS48L3A+XHJcbiAgICAgICAgXHJcbiAgICAgICAgPGgyPldpa2k8L2gyPlxyXG4gICAgICAgIDxwPlRoZSB3aWtpIGlzIGV4cGVjdGVkIHRvIGJlIG9ubGluZSBieSBNYXkgMjJuZC48L3A+XHJcbiAgICAgICAgPC8+XHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICAgIGNzc25hbWU6IFwiXCIsIFxyXG4gICAgICAgIG5vZGU6IDw+PC8+XHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICAgIGNzc25hbWU6IFwiXCIsIFxyXG4gICAgICAgIG5vZGU6IDw+PC8+XHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICAgIGNzc25hbWU6IFwiXCIsIFxyXG4gICAgICAgIG5vZGU6IDw+PC8+XHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICAgIGNzc25hbWU6IFwiXCIsIFxyXG4gICAgICAgIG5vZGU6IDw+PC8+XHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICAgIGNzc25hbWU6IFwiXCIsIFxyXG4gICAgICAgIG5vZGU6IDw+PC8+XHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICAgIGNzc25hbWU6IFwiXCIsIFxyXG4gICAgICAgIG5vZGU6IDw+PC8+XHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICAgIGNzc25hbWU6IFwiXCIsIFxyXG4gICAgICAgIG5vZGU6IDw+PC8+XHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICAgIGNzc25hbWU6IFwiXCIsIFxyXG4gICAgICAgIG5vZGU6IDw+PC8+XHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICAgIGNzc25hbWU6IFwiXCIsIFxyXG4gICAgICAgIG5vZGU6IDw+PC8+XHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICAgIGNzc25hbWU6IFwiXCIsIFxyXG4gICAgICAgIG5vZGU6IDw+PC8+XHJcbiAgICB9LFxyXG5cclxuICAgIFxyXG5dXHJcblxyXG5cclxuZnVuY3Rpb24gcGFyc2VEYXRlRnJvbUNvZGUoY29kZTogc3RyaW5nKTogc3RyaW5nICB7XHJcbiAgICBjb25zdCBtb250aHM6IHsgW2tleTogc3RyaW5nXTogbnVtYmVyIH0gPSB7XHJcbiAgICAgICAgamFudWFyeTogMSxcclxuICAgICAgICBmZWJydWFyeTogMixcclxuICAgICAgICBtYXJjaDogMyxcclxuICAgICAgICBhcHJpbDogNCxcclxuICAgICAgICBtYXk6IDUsXHJcbiAgICAgICAganVuZTogNixcclxuICAgICAgICBqdWx5OiA3LFxyXG4gICAgICAgIGF1Z3VzdDogOCxcclxuICAgICAgICBzZXB0ZW1iZXI6IDksXHJcbiAgICAgICAgb2N0b2JlcjogMTAsXHJcbiAgICAgICAgbm92ZW1iZXI6IDExLFxyXG4gICAgICAgIGRlY2VtYmVyOiAxMlxyXG4gICAgfTtcclxuXHJcbiAgICAvLyBSZWdleCB0byBtYXRjaCB0aGUgbW9udGggYW5kIGRheSAoZS5nLiwgZmVicnVhcnkyLCBtYXJjaDUsIGV0Yy4pXHJcbiAgICBjb25zdCByZWdleCA9IC9eKFthLXpBLVpdKykoXFxkezEsMn0pJC87XHJcbiAgICBjb25zdCBtYXRjaCA9IGNvZGUudG9Mb3dlckNhc2UoKS5tYXRjaChyZWdleCk7XHJcblxyXG4gICAgaWYgKG1hdGNoKSB7XHJcbiAgICAgICAgY29uc3QgbW9udGhTdHIgPSBtYXRjaFsxXTtcclxuICAgICAgICBjb25zdCBkYXkgPSBwYXJzZUludChtYXRjaFsyXSwgMTApO1xyXG5cclxuICAgICAgICBjb25zdCBtb250aCA9IG1vbnRoc1ttb250aFN0cl07XHJcbiAgICAgICAgaWYgKG1vbnRoICYmIGRheSA+IDAgJiYgZGF5IDw9IDMxKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IHllYXIgPSAyMDI0O1xyXG4gICAgICAgICAgICAvLyBGb3JtYXQgZGF5IGFuZCBtb250aCB3aXRoIGxlYWRpbmcgemVyb3NcclxuICAgICAgICAgICAgY29uc3QgZm9ybWF0dGVkRGF5ID0gZGF5LnRvU3RyaW5nKCkucGFkU3RhcnQoMiwgJzAnKTtcclxuICAgICAgICAgICAgY29uc3QgZm9ybWF0dGVkTW9udGggPSBtb250aC50b1N0cmluZygpLnBhZFN0YXJ0KDIsICcwJyk7XHJcbiAgICAgICAgICAgIHJldHVybiBgJHtmb3JtYXR0ZWREYXl9LiR7Zm9ybWF0dGVkTW9udGh9LiR7eWVhcn1gO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gXCJlcnJvclwiOyAvLyBSZXR1cm4gbnVsbCBpZiB0aGUgY29kZSBpcyBpbnZhbGlkXHJcbn1cclxuXHJcbiIsICJpbXBvcnQgeyBDYWxUYWJzIH0gZnJvbSBcIi4vY2FsLWNvbnRlbnRcIjtcclxuXHJcblxyXG5leHBvcnQgZnVuY3Rpb24gQ2FsZW5kYXIoKXtcclxubGV0IGFycm93czogSlNYLkVsZW1lbnRbXSA9IEFycm93cygpOyBcclxubGV0IHRhYnM6IEpTWC5FbGVtZW50W10gPSBDYWxUYWJzKCk7IFxyXG4gICAgcmV0dXJuKFxyXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY2FsXCI+XHJcblxyXG4gICAge2Fycm93c31cclxuIFxyXG5cclxuPHVsIGNsYXNzTmFtZT1cIndlZWtkYXlzXCI+XHJcbiAgPGxpPk1vPC9saT5cclxuICA8bGk+VHU8L2xpPlxyXG4gIDxsaT5XZTwvbGk+XHJcbiAgPGxpPlRoPC9saT5cclxuICA8bGk+RnI8L2xpPlxyXG4gIDxsaT5TYTwvbGk+XHJcbiAgPGxpPlN1PC9saT5cclxuPC91bD5cclxue0ZlYnJ1YXJ9XHJcbntNYXJjaH1cclxue0FwcmlsfVxyXG57TWF5fVxyXG57SnVuZX1cclxue0p1bHl9XHJcbntBdWd1c3R9XHJcbntTZXB0ZW1iZXJ9XHJcbntPY3RvYmVyfVxyXG48YnIvPlxyXG57dGFic31cclxuICAgICAgICA8L2Rpdj5cclxuICAgIClcclxufVxyXG5cclxuXHJcblxyXG5mdW5jdGlvbiBBcnJvd3MoKXtcclxuICAgIGNvbnN0IG1vbnRocyA9IFtcIkZlYnJ1YXJ5XCIsIFwiTWFyY2hcIiwgXCJBcHJpbFwiLCBcIk1heVwiLCBcIkp1bmVcIiwgXCJKdWx5XCIsIFwiQXVndXN0XCIsIFwiU2VwdGVtYmVyXCIsIFwiT2N0b2JlclwiXVxyXG4gICAgbGV0IGFycm93czogSlNYLkVsZW1lbnRbXSA9IFtdO1xyXG4gICAgZm9yIChsZXQgaW5kZXggPSAwOyBpbmRleCA8IG1vbnRocy5sZW5ndGg7IGluZGV4KyspIHtcclxuICAgICAgICBpZiAoaW5kZXggPT0gMCkge1xyXG4gICAgICAgICAgICBjb25zb2xlLmxvZyhgbW9udGhzW2luZGV4XSA9ICR7bW9udGhzW2luZGV4XX1gIClcclxuICAgICAgICAgICAgYXJyb3dzLnB1c2goXHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cIm1vbnRoIGhpZGVhYmxlXCIgaWQ9e2Ake21vbnRoc1tpbmRleF19LWhlYWRgfSBzdHlsZT17e2Rpc3BsYXk6IFwiYmxvY2tcIn19PiAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgIDx1bD5cclxuICAgICAgICAgICAgICAgICAgICA8c3BhbiA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzc05hbWU9XCJuZXh0XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBvbkNsaWNrPXtzd2l0Y2hUbyhtb250aHNbaW5kZXgrMV0pfT48ZGl2PiYjMTAwOTU7PC9kaXY+PC9hPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2xpPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGxpPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge21vbnRoc1tpbmRleF19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnIvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBzdHlsZT17e2ZvbnRTaXplOlwiMThweFwifX0+MjAyNDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9saT5cclxuICAgICAgICAgICAgICAgICAgICA8L3VsPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICApXHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmIChpbmRleCA9PSAobW9udGhzLmxlbmd0aCAtIDEpKSB7XHJcbiAgICAgICAgICAgIGFycm93cy5wdXNoKFxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJtb250aCBoaWRlYWJsZVwiIGlkPXtgJHttb250aHNbaW5kZXhdfS1oZWFkYH0gc3R5bGU9e3tkaXNwbGF5OiBcIm5vbmVcIn19PiAgICAgIFxyXG4gICAgICAgICAgICAgICAgPHVsPlxyXG4gICAgICAgICAgICAgICAgPHNwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzTmFtZT1cInByZXZcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGEgb25DbGljaz17c3dpdGNoVG8obW9udGhzW2luZGV4LTFdKX0+PGRpdj4mIzEwMDk0OzwvZGl2PjwvYT5cclxuICAgICAgICAgICAgICAgICAgICA8L2xpPlxyXG4gICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgIDxsaT5cclxuICAgICAgICAgICAgICAgICAgICAgICAge21vbnRoc1tpbmRleF19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxici8+XHJcbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gc3R5bGU9e3tmb250U2l6ZTpcIjE4cHhcIn19PjIwMjQ8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9saT5cclxuICAgICAgICAgICAgICAgIDwvdWw+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgKVxyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNle1xyXG4gICAgICAgICAgICBhcnJvd3MucHVzaChcclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwibW9udGggaGlkZWFibGVcIiBpZD17YCR7bW9udGhzW2luZGV4XX0taGVhZGB9ICBzdHlsZT17e2Rpc3BsYXk6IFwibm9uZVwifX0+ICAgICAgXHJcbiAgICAgICAgICAgICAgICA8dWw+XHJcbiAgICAgICAgICAgICAgICA8c3BhbiA+XHJcbiAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzTmFtZT1cInByZXZcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGEgb25DbGljaz17c3dpdGNoVG8obW9udGhzW2luZGV4LTFdKX0+PGRpdj4mIzEwMDk0OzwvZGl2PjwvYT5cclxuICAgICAgICAgICAgICAgICAgICA8L2xpPlxyXG4gICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzc05hbWU9XCJuZXh0XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxhIG9uQ2xpY2s9e3N3aXRjaFRvKG1vbnRoc1tpbmRleCsxXSl9PjxkaXY+JiMxMDA5NTs8L2Rpdj48L2E+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9saT5cclxuICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICA8bGk+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHttb250aHNbaW5kZXhdfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8YnIvPlxyXG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIHN0eWxlPXt7Zm9udFNpemU6XCIxOHB4XCJ9fT4yMDI0PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvbGk+XHJcbiAgICAgICAgICAgICAgICA8L3VsPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIClcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICByZXR1cm4gYXJyb3dzOyBcclxufVxyXG5cclxuZnVuY3Rpb24gc3dpdGNoVG8obW9udGg6IHN0cmluZyl7XHJcbiAgICBjb25zb2xlLmxvZyhgQ2FsbGVkIE5leHQgRGF0ZSB3aXRoICR7bW9udGh9YClcclxuICAgIGNvbnN0IG5leHRkYXRlID0gKF9ldmVudDogUmVhY3QuTW91c2VFdmVudDxIVE1MRWxlbWVudCwgTW91c2VFdmVudD4pID0+IHtcclxuICAgICAgICBjb25zb2xlLmxvZyhcIm5leHREYXRlIG9wZW5cIilcclxuICAgICAgICBsZXQgZWxlbWVudHNUb0hpZGUgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKFwiaGlkZWFibGVcIik7IFxyXG4gICAgICAgIGNvbnNvbGUubG9nKGVsZW1lbnRzVG9IaWRlKVxyXG4gICAgICAgIGZvciAobGV0IGluZGV4ID0gMDsgaW5kZXggPCBlbGVtZW50c1RvSGlkZS5sZW5ndGg7IGluZGV4KyspIHtcclxuICAgICAgICAgICBcclxuICAgICAgICAgICAgKGVsZW1lbnRzVG9IaWRlW2luZGV4XSBhcyBIVE1MRWxlbWVudCkuc3R5bGUuZGlzcGxheSA9IFwibm9uZVwiOyAgXHJcbiAgICAgICAgfSBcclxuICAgICAgICBcclxuICAgICAgICBjb25zb2xlLmxvZyhcIm5ldyBtb250aCBpczogXCIgKyBtb250aCArIFwiIGFuZCB3ZSBhcmUgY2FsbGluZyBcIiArICBgJHttb250aH0tbmFtZWApXHJcbiAgICAgICAgaWYgKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGAke21vbnRofS1kYXRlc2ApKSB7XHJcbiAgICAgICAgICAgIGxldCBuZXdkYXRlcyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGAke21vbnRofS1kYXRlc2ApO1xyXG4gICAgICAgICAgICAobmV3ZGF0ZXMgYXMgSFRNTEVsZW1lbnQpLnN0eWxlLmRpc3BsYXkgPSBcImJsb2NrXCI7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2V7XHJcbiAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoYEVsZW1lbnQgd2l0aCBpZCAke21vbnRofS1kYXRlcyBkb2VzIG5vdCBleGlzdGApXHJcbiAgICAgICAgfVxyXG4gICAgICAgIGxldCBuZXdBcnJvd3MgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChgJHttb250aH0taGVhZGApO1xyXG4gICAgICAgIChuZXdBcnJvd3MgYXMgSFRNTEVsZW1lbnQpLnN0eWxlLmRpc3BsYXkgPSBcImJsb2NrXCI7XHJcbiAgICAgICAgY29uc29sZS5sb2cobmV3QXJyb3dzKVxyXG4gICAgICB9XHJcbiAgICAgIHJldHVybiBuZXh0ZGF0ZTsgIFxyXG59XHJcblxyXG5mdW5jdGlvbiBzaG93RW50cnkoZW50cnk6c3RyaW5nKXtcclxuICAgIGNvbnN0IHNob3dlbnRyeSA9IChfZXZlbnQ6IFJlYWN0Lk1vdXNlRXZlbnQ8SFRNTEVsZW1lbnQsIE1vdXNlRXZlbnQ+KSA9PiB7XHJcbiAgICAgICAgbGV0IGVsZW1lbnRzVG9IaWRlID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZShcImNhbC1lbnRyeVwiKTsgXHJcbiAgICAgICAgZm9yIChsZXQgaW5kZXggPSAwOyBpbmRleCA8IGVsZW1lbnRzVG9IaWRlLmxlbmd0aDsgaW5kZXgrKykge1xyXG4gICAgICAgICAgIFxyXG4gICAgICAgICAgICAoZWxlbWVudHNUb0hpZGVbaW5kZXhdIGFzIEhUTUxFbGVtZW50KS5zdHlsZS5kaXNwbGF5ID0gXCJub25lXCI7ICBcclxuICAgICAgICB9IFxyXG4gICAgICAgIGxldCBlbnRyeUJsb2NrID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoZW50cnkpO1xyXG4gICAgICAgIChlbnRyeUJsb2NrIGFzIEhUTUxFbGVtZW50KS5zdHlsZS5kaXNwbGF5ID0gXCJibG9ja1wiO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHNob3dlbnRyeTsgXHJcbn1cclxuXHJcbmNvbnN0IEZlYnJ1YXIgPSA8dWwgaWQ9XCJGZWJydWFyeS1kYXRlc1wiIGNsYXNzTmFtZT1cImRheXMgaGlkZWFibGVcIj4gIFxyXG48bGk+PC9saT5cclxuPGxpPjwvbGk+XHJcbjxsaT48L2xpPlxyXG4gIDxsaT4xPC9saT5cclxuICA8bGk+MjwvbGk+XHJcbiAgPGxpPjM8L2xpPlxyXG4gIDxsaT40PC9saT5cclxuICA8bGk+NTwvbGk+XHJcbiAgPGxpPjY8L2xpPlxyXG4gIDxsaT43PC9saT5cclxuICA8bGk+ODwvbGk+XHJcbiAgPGxpPjk8L2xpPlxyXG4gIDxsaT4xMDwvbGk+XHJcbiAgPGxpPjExPC9saT5cclxuICA8bGk+MTI8L2xpPlxyXG4gIDxsaT4xMzwvbGk+XHJcbiAgPGxpPjE0PC9saT5cclxuICA8bGk+MTU8L2xpPlxyXG4gIDxsaT4xNjwvbGk+XHJcbiAgPGxpPjE3PC9saT5cclxuICA8bGk+MTg8L2xpPlxyXG4gIDxsaT4xOTwvbGk+XHJcbiAgPGxpPjIwPC9saT5cclxuICA8bGk+MjE8L2xpPlxyXG4gIDxsaT4yMjwvbGk+XHJcbiAgPGxpPjIzPC9saT5cclxuICA8bGk+MjQ8L2xpPlxyXG4gIDxsaT4yNTwvbGk+XHJcbiAgPGxpPjI2PC9saT5cclxuICA8bGk+PGEgb25DbGljaz17c2hvd0VudHJ5KFwiZmVicnVhcnkyN1wiKX0+PHNwYW4gY2xhc3NOYW1lPVwiYWN0aXZlXCI+Mjc8L3NwYW4+PC9hPjwvbGk+XHJcbiAgPGxpPjI4PC9saT5cclxuICA8bGk+PGEgb25DbGljaz17c2hvd0VudHJ5KFwiZmVicnVhcnkyOVwiKX0+PHNwYW4gY2xhc3NOYW1lPVwiYWN0aXZlXCI+Mjk8L3NwYW4+PC9hPjwvbGk+XHJcblxyXG48L3VsPlxyXG5jb25zdCBNYXJjaCA9IDx1bCBpZD1cIk1hcmNoLWRhdGVzXCIgY2xhc3NOYW1lPVwiZGF5cyBoaWRlYWJsZVwiIHN0eWxlPXt7ZGlzcGxheTogXCJub25lXCJ9fT4gIFxyXG48bGk+PC9saT5cclxuPGxpPjwvbGk+XHJcbjxsaT48L2xpPlxyXG48bGk+PC9saT5cclxuICA8bGk+MTwvbGk+XHJcbiAgPGxpPjI8L2xpPlxyXG4gIDxsaT4zPC9saT5cclxuICA8bGk+NDwvbGk+XHJcbiAgPGxpPjU8L2xpPlxyXG4gIDxsaT42PC9saT5cclxuICA8bGk+PGEgb25DbGljaz17c2hvd0VudHJ5KFwibWFyY2g3XCIpfT48c3BhbiBjbGFzc05hbWU9XCJhY3RpdmVcIj43PC9zcGFuPjwvYT48L2xpPlxyXG4gIDxsaT44PC9saT5cclxuICA8bGk+OTwvbGk+XHJcbiAgPGxpPjEwPC9saT5cclxuICA8bGk+MTE8L2xpPlxyXG4gIDxsaT48YSBvbkNsaWNrPXtzaG93RW50cnkoXCJtYXJjaDEyXCIpfT48c3BhbiBjbGFzc05hbWU9XCJhY3RpdmVcIj4xMjwvc3Bhbj48L2E+PC9saT5cclxuICA8bGk+MTM8L2xpPlxyXG4gIDxsaT48YSBvbkNsaWNrPXtzaG93RW50cnkoXCJtYXJjaDE0XCIpfT48c3BhbiBjbGFzc05hbWU9XCJhY3RpdmVcIj4xNDwvc3Bhbj48L2E+PC9saT5cclxuICA8bGk+MTU8L2xpPlxyXG4gIDxsaT4xNjwvbGk+XHJcbiAgPGxpPjE3PC9saT5cclxuICA8bGk+MTg8L2xpPlxyXG4gIDxsaT48YSBvbkNsaWNrPXtzaG93RW50cnkoXCJtYXJjaDE5XCIpfT48c3BhbiBjbGFzc05hbWU9XCJhY3RpdmVcIj4xOTwvc3Bhbj48L2E+PC9saT5cclxuICA8bGk+MjA8L2xpPlxyXG4gIDxsaT48YSBvbkNsaWNrPXtzaG93RW50cnkoXCJtYXJjaDIxXCIpfT48c3BhbiBjbGFzc05hbWU9XCJhY3RpdmVcIj4yMTwvc3Bhbj48L2E+PC9saT5cclxuICA8bGk+MjI8L2xpPlxyXG4gIDxsaT4yMzwvbGk+XHJcbiAgPGxpPjI0PC9saT5cclxuICA8bGk+MjU8L2xpPlxyXG4gIDxsaT4yNjwvbGk+XHJcbiAgPGxpPjxhIG9uQ2xpY2s9e3Nob3dFbnRyeShcIm1hcmNoMjdcIil9PjxzcGFuIGNsYXNzTmFtZT1cImFjdGl2ZVwiPjI3PC9zcGFuPjwvYT48L2xpPlxyXG4gIDxsaT4yODwvbGk+XHJcbiAgPGxpPjxhIG9uQ2xpY2s9e3Nob3dFbnRyeShcIm1hcmNoMjlcIil9PjxzcGFuIGNsYXNzTmFtZT1cImFjdGl2ZVwiPjI5PC9zcGFuPjwvYT48L2xpPlxyXG4gIDxsaT4zMDwvbGk+XHJcbiAgPGxpPjMxPC9saT5cclxuPC91bD5cclxuY29uc3QgQXByaWwgPSA8dWwgaWQ9XCJBcHJpbC1kYXRlc1wiIGNsYXNzTmFtZT1cImRheXMgaGlkZWFibGVcIiBzdHlsZT17e2Rpc3BsYXk6IFwibm9uZVwifX0+ICBcclxuICA8bGk+MTwvbGk+XHJcbiAgPGxpPjxhIG9uQ2xpY2s9e3Nob3dFbnRyeShcImFwcmlsMlwiKX0+PHNwYW4gY2xhc3NOYW1lPVwiYWN0aXZlXCI+Mjwvc3Bhbj48L2E+PC9saT5cclxuICA8bGk+MzwvbGk+XHJcbiAgPGxpPjxhIG9uQ2xpY2s9e3Nob3dFbnRyeShcImFwcmlsNFwiKX0+PHNwYW4gY2xhc3NOYW1lPVwiYWN0aXZlXCI+NDwvc3Bhbj48L2E+PC9saT5cclxuICA8bGk+NTwvbGk+XHJcbiAgPGxpPjxhIG9uQ2xpY2s9e3Nob3dFbnRyeShcImFwcmlsNlwiKX0+PHNwYW4gY2xhc3NOYW1lPVwiYWN0aXZlXCI+Njwvc3Bhbj48L2E+PC9saT5cclxuICA8bGk+NzwvbGk+XHJcbiAgPGxpPjg8L2xpPlxyXG4gIDxsaT45PC9saT5cclxuICA8bGk+MTA8L2xpPlxyXG4gIDxsaT48YSBvbkNsaWNrPXtzaG93RW50cnkoXCJhcHJpbDExXCIpfT48c3BhbiBjbGFzc05hbWU9XCJhY3RpdmVcIj4xMTwvc3Bhbj48L2E+PC9saT5cclxuICA8bGk+MTI8L2xpPlxyXG4gIDxsaT4xMzwvbGk+XHJcbiAgPGxpPjE0PC9saT5cclxuICA8bGk+MTU8L2xpPlxyXG4gIDxsaT48YSBvbkNsaWNrPXtzaG93RW50cnkoXCJhcHJpbDE2XCIpfT48c3BhbiBjbGFzc05hbWU9XCJhY3RpdmVcIj4xNjwvc3Bhbj48L2E+PC9saT5cclxuICA8bGk+MTc8L2xpPlxyXG4gIDxsaT48YSBvbkNsaWNrPXtzaG93RW50cnkoXCJhcHJpbDE4XCIpfT48c3BhbiBjbGFzc05hbWU9XCJhY3RpdmVcIj4xODwvc3Bhbj48L2E+PC9saT5cclxuICA8bGk+MTk8L2xpPlxyXG4gIDxsaT4yMDwvbGk+XHJcbiAgPGxpPjIxPC9saT5cclxuICA8bGk+MjI8L2xpPlxyXG4gIDxsaT48YSBvbkNsaWNrPXtzaG93RW50cnkoXCJhcHJpbDIzXCIpfT48c3BhbiBjbGFzc05hbWU9XCJhY3RpdmVcIj4yMzwvc3Bhbj48L2E+PC9saT5cclxuICA8bGk+MjQ8L2xpPlxyXG4gIDxsaT48YSBvbkNsaWNrPXtzaG93RW50cnkoXCJhcHJpbDI1XCIpfT48c3BhbiBjbGFzc05hbWU9XCJhY3RpdmVcIj4yNTwvc3Bhbj48L2E+PC9saT5cclxuICA8bGk+MjY8L2xpPlxyXG4gIDxsaT4yNzwvbGk+XHJcbiAgPGxpPjI4PC9saT5cclxuICA8bGk+Mjk8L2xpPlxyXG4gIDxsaT48YSBvbkNsaWNrPXtzaG93RW50cnkoXCJhcHJpbDMwXCIpfT48c3BhbiBjbGFzc05hbWU9XCJhY3RpdmVcIj4zMDwvc3Bhbj48L2E+PC9saT5cclxuPC91bD5cclxuY29uc3QgTWF5ID0gPHVsIGlkPVwiTWF5LWRhdGVzXCIgY2xhc3NOYW1lPVwiZGF5cyBoaWRlYWJsZVwiIHN0eWxlPXt7ZGlzcGxheTogXCJub25lXCJ9fT4gIFxyXG48bGk+PC9saT5cclxuPGxpPjwvbGk+XHJcbiAgPGxpPjE8L2xpPlxyXG4gIDxsaT48YSBvbkNsaWNrPXtzaG93RW50cnkoXCJtYXkyXCIpfT48c3BhbiBjbGFzc05hbWU9XCJhY3RpdmVcIj4yPC9zcGFuPjwvYT48L2xpPlxyXG4gIDxsaT4zPC9saT5cclxuICA8bGk+NDwvbGk+XHJcbiAgPGxpPjU8L2xpPlxyXG4gIDxsaT42PC9saT5cclxuICA8bGk+PGEgb25DbGljaz17c2hvd0VudHJ5KFwibWF5N1wiKX0+PHNwYW4gY2xhc3NOYW1lPVwiYWN0aXZlXCI+Nzwvc3Bhbj48L2E+PC9saT5cclxuICA8bGk+ODwvbGk+XHJcbiAgPGxpPjk8L2xpPlxyXG4gIDxsaT4xMDwvbGk+XHJcbiAgPGxpPjExPC9saT5cclxuICA8bGk+MTI8L2xpPlxyXG4gIDxsaT4xMzwvbGk+XHJcbiAgPGxpPjxhIG9uQ2xpY2s9e3Nob3dFbnRyeShcIm1heTE0XCIpfT48c3BhbiBjbGFzc05hbWU9XCJhY3RpdmVcIj4xNDwvc3Bhbj48L2E+PC9saT5cclxuICA8bGk+MTU8L2xpPlxyXG4gIDxsaT4xNjwvbGk+XHJcbiAgPGxpPjE3PC9saT5cclxuICA8bGk+MTg8L2xpPlxyXG4gIDxsaT4xOTwvbGk+XHJcbiAgPGxpPjIwPC9saT5cclxuICA8bGk+MjE8L2xpPlxyXG4gIDxsaT48YSBvbkNsaWNrPXtzaG93RW50cnkoXCJtYXkyMlwiKX0+PHNwYW4gY2xhc3NOYW1lPVwiYWN0aXZlXCI+MjI8L3NwYW4+PC9hPjwvbGk+XHJcbiAgPGxpPjIzPC9saT5cclxuICA8bGk+MjQ8L2xpPlxyXG4gIDxsaT4yNTwvbGk+XHJcbiAgPGxpPjI2PC9saT5cclxuICA8bGk+Mjc8L2xpPlxyXG4gIDxsaT4yODwvbGk+XHJcbiAgPGxpPjI5PC9saT5cclxuICA8bGk+MzA8L2xpPlxyXG4gIDxsaT4zMTwvbGk+XHJcbjwvdWw+XHJcbmNvbnN0IEp1bmUgPSA8dWwgaWQ9XCJKdW5lLWRhdGVzXCIgY2xhc3NOYW1lPVwiZGF5cyBoaWRlYWJsZVwiIHN0eWxlPXt7ZGlzcGxheTogXCJub25lXCJ9fT4gIFxyXG48bGk+PC9saT5cclxuPGxpPjwvbGk+XHJcbjxsaT48L2xpPlxyXG48bGk+PC9saT5cclxuPGxpPjwvbGk+XHJcbiAgPGxpPjE8L2xpPlxyXG4gIDxsaT4yPC9saT5cclxuICA8bGk+MzwvbGk+XHJcbiAgPGxpPjQ8L2xpPlxyXG4gIDxsaT41PC9saT5cclxuICA8bGk+NjwvbGk+XHJcbiAgPGxpPjc8L2xpPlxyXG4gIDxsaT44PC9saT5cclxuICA8bGk+OTwvbGk+XHJcbiAgPGxpPjxzcGFuIGNsYXNzTmFtZT1cImFjdGl2ZVwiPjEwPC9zcGFuPjwvbGk+XHJcbiAgPGxpPjExPC9saT5cclxuICA8bGk+MTI8L2xpPlxyXG4gIDxsaT4xMzwvbGk+XHJcbiAgPGxpPjE0PC9saT5cclxuICA8bGk+MTU8L2xpPlxyXG4gIDxsaT4xNjwvbGk+XHJcbiAgPGxpPjE3PC9saT5cclxuICA8bGk+MTg8L2xpPlxyXG4gIDxsaT4xOTwvbGk+XHJcbiAgPGxpPjIwPC9saT5cclxuICA8bGk+MjE8L2xpPlxyXG4gIDxsaT4yMjwvbGk+XHJcbiAgPGxpPjIzPC9saT5cclxuICA8bGk+MjQ8L2xpPlxyXG4gIDxsaT4yNTwvbGk+XHJcbiAgPGxpPjI2PC9saT5cclxuICA8bGk+Mjc8L2xpPlxyXG4gIDxsaT4yODwvbGk+XHJcbiAgPGxpPjI5PC9saT5cclxuICA8bGk+MzA8L2xpPlxyXG48L3VsPlxyXG5jb25zdCBKdWx5ID0gPHVsIGlkPVwiSnVseS1kYXRlc1wiIGNsYXNzTmFtZT1cImRheXMgaGlkZWFibGVcIiBzdHlsZT17e2Rpc3BsYXk6IFwibm9uZVwifX0+ICBcclxuICA8bGk+MTwvbGk+XHJcbiAgPGxpPjI8L2xpPlxyXG4gIDxsaT4zPC9saT5cclxuICA8bGk+NDwvbGk+XHJcbiAgPGxpPjU8L2xpPlxyXG4gIDxsaT42PC9saT5cclxuICA8bGk+NzwvbGk+XHJcbiAgPGxpPjg8L2xpPlxyXG4gIDxsaT45PC9saT5cclxuICA8bGk+PHNwYW4gY2xhc3NOYW1lPVwiYWN0aXZlXCI+MTA8L3NwYW4+PC9saT5cclxuICA8bGk+MTE8L2xpPlxyXG4gIDxsaT4xMjwvbGk+XHJcbiAgPGxpPjEzPC9saT5cclxuICA8bGk+MTQ8L2xpPlxyXG4gIDxsaT4xNTwvbGk+XHJcbiAgPGxpPjE2PC9saT5cclxuICA8bGk+MTc8L2xpPlxyXG4gIDxsaT4xODwvbGk+XHJcbiAgPGxpPjE5PC9saT5cclxuICA8bGk+MjA8L2xpPlxyXG4gIDxsaT4yMTwvbGk+XHJcbiAgPGxpPjIyPC9saT5cclxuICA8bGk+MjM8L2xpPlxyXG4gIDxsaT4yNDwvbGk+XHJcbiAgPGxpPjI1PC9saT5cclxuICA8bGk+MjY8L2xpPlxyXG4gIDxsaT4yNzwvbGk+XHJcbiAgPGxpPjI4PC9saT5cclxuICA8bGk+Mjk8L2xpPlxyXG4gIDxsaT4zMDwvbGk+XHJcbiAgPGxpPjMxPC9saT5cclxuPC91bD5cclxuY29uc3QgQXVndXN0ID0gPHVsIGlkPVwiQXVndXN0LWRhdGVzXCIgY2xhc3NOYW1lPVwiZGF5cyBoaWRlYWJsZVwiIHN0eWxlPXt7ZGlzcGxheTogXCJub25lXCJ9fT4gIFxyXG48bGk+PC9saT5cclxuPGxpPjwvbGk+XHJcbjxsaT48L2xpPlxyXG4gIDxsaT4xPC9saT5cclxuICA8bGk+MjwvbGk+XHJcbiAgPGxpPjM8L2xpPlxyXG4gIDxsaT40PC9saT5cclxuICA8bGk+NTwvbGk+XHJcbiAgPGxpPjY8L2xpPlxyXG4gIDxsaT43PC9saT5cclxuICA8bGk+ODwvbGk+XHJcbiAgPGxpPjk8L2xpPlxyXG4gIDxsaT48c3BhbiBjbGFzc05hbWU9XCJhY3RpdmVcIj4xMDwvc3Bhbj48L2xpPlxyXG4gIDxsaT4xMTwvbGk+XHJcbiAgPGxpPjEyPC9saT5cclxuICA8bGk+MTM8L2xpPlxyXG4gIDxsaT4xNDwvbGk+XHJcbiAgPGxpPjE1PC9saT5cclxuICA8bGk+MTY8L2xpPlxyXG4gIDxsaT4xNzwvbGk+XHJcbiAgPGxpPjE4PC9saT5cclxuICA8bGk+MTk8L2xpPlxyXG4gIDxsaT4yMDwvbGk+XHJcbiAgPGxpPjIxPC9saT5cclxuICA8bGk+MjI8L2xpPlxyXG4gIDxsaT4yMzwvbGk+XHJcbiAgPGxpPjI0PC9saT5cclxuICA8bGk+MjU8L2xpPlxyXG4gIDxsaT4yNjwvbGk+XHJcbiAgPGxpPjI3PC9saT5cclxuICA8bGk+Mjg8L2xpPlxyXG4gIDxsaT4yOTwvbGk+XHJcbiAgPGxpPjMwPC9saT5cclxuICA8bGk+MzE8L2xpPlxyXG48L3VsPlxyXG5cclxuY29uc3QgU2VwdGVtYmVyID0gPHVsIGlkPVwiU2VwdGVtYmVyLWRhdGVzXCIgY2xhc3NOYW1lPVwiZGF5cyBoaWRlYWJsZVwiIHN0eWxlPXt7ZGlzcGxheTogXCJub25lXCJ9fT4gIFxyXG48bGk+PC9saT5cclxuPGxpPjwvbGk+XHJcbjxsaT48L2xpPlxyXG48bGk+PC9saT5cclxuPGxpPjwvbGk+XHJcbjxsaT48L2xpPlxyXG4gIDxsaT4xPC9saT5cclxuICA8bGk+MjwvbGk+XHJcbiAgPGxpPjM8L2xpPlxyXG4gIDxsaT40PC9saT5cclxuICA8bGk+NTwvbGk+XHJcbiAgPGxpPjY8L2xpPlxyXG4gIDxsaT43PC9saT5cclxuICA8bGk+ODwvbGk+XHJcbiAgPGxpPjk8L2xpPlxyXG4gIDxsaT48c3BhbiBjbGFzc05hbWU9XCJhY3RpdmVcIj4xMDwvc3Bhbj48L2xpPlxyXG4gIDxsaT4xMTwvbGk+XHJcbiAgPGxpPjEyPC9saT5cclxuICA8bGk+MTM8L2xpPlxyXG4gIDxsaT4xNDwvbGk+XHJcbiAgPGxpPjE1PC9saT5cclxuICA8bGk+MTY8L2xpPlxyXG4gIDxsaT4xNzwvbGk+XHJcbiAgPGxpPjE4PC9saT5cclxuICA8bGk+MTk8L2xpPlxyXG4gIDxsaT4yMDwvbGk+XHJcbiAgPGxpPjIxPC9saT5cclxuICA8bGk+MjI8L2xpPlxyXG4gIDxsaT4yMzwvbGk+XHJcbiAgPGxpPjI0PC9saT5cclxuICA8bGk+MjU8L2xpPlxyXG4gIDxsaT4yNjwvbGk+XHJcbiAgPGxpPjI3PC9saT5cclxuICA8bGk+Mjg8L2xpPlxyXG4gIDxsaT4yOTwvbGk+XHJcbiAgPGxpPjMwPC9saT5cclxuPC91bD5cclxuXHJcbmNvbnN0IE9jdG9iZXIgPSA8dWwgaWQ9XCJPY3RvYmVyLWRhdGVzXCIgY2xhc3NOYW1lPVwiZGF5cyBoaWRlYWJsZVwiIHN0eWxlPXt7ZGlzcGxheTogXCJub25lXCJ9fT4gIFxyXG48bGk+PC9saT5cclxuICA8bGk+MTwvbGk+XHJcbiAgPGxpPjI8L2xpPlxyXG4gIDxsaT4zPC9saT5cclxuICA8bGk+NDwvbGk+XHJcbiAgPGxpPjU8L2xpPlxyXG4gIDxsaT42PC9saT5cclxuICA8bGk+NzwvbGk+XHJcbiAgPGxpPjg8L2xpPlxyXG4gIDxsaT45PC9saT5cclxuICA8bGk+PHNwYW4gY2xhc3NOYW1lPVwiYWN0aXZlXCI+MTA8L3NwYW4+PC9saT5cclxuICA8bGk+MTE8L2xpPlxyXG4gIDxsaT4xMjwvbGk+XHJcbiAgPGxpPjEzPC9saT5cclxuICA8bGk+MTQ8L2xpPlxyXG4gIDxsaT4xNTwvbGk+XHJcbiAgPGxpPjE2PC9saT5cclxuICA8bGk+MTc8L2xpPlxyXG4gIDxsaT4xODwvbGk+XHJcbiAgPGxpPjE5PC9saT5cclxuICA8bGk+MjA8L2xpPlxyXG4gIDxsaT4yMTwvbGk+XHJcbiAgPGxpPjIyPC9saT5cclxuICA8bGk+MjM8L2xpPlxyXG4gIDxsaT4yNDwvbGk+XHJcbiAgPGxpPjI1PC9saT5cclxuICA8bGk+MjY8L2xpPlxyXG4gIDxsaT4yNzwvbGk+XHJcbiAgPGxpPjI4PC9saT5cclxuICA8bGk+Mjk8L2xpPlxyXG4gIDxsaT4zMDwvbGk+XHJcbiAgPGxpPjMxPC9saT5cclxuPC91bD5cclxuXHJcblxyXG4iLCAiaW1wb3J0IHsgQ2FsZW5kYXIgfSBmcm9tIFwiLi4vY29tcG9uZW50cy9DYWxlbmRhci9DYWxlbmRhclwiO1xyXG5pbXBvcnQgeyBIMiB9IGZyb20gXCIuLi9jb21wb25lbnRzL0hlYWRpbmdzXCI7XHJcbmltcG9ydCB7IFBERiB9IGZyb20gXCIuLi9jb21wb25lbnRzL1BkZnNcIjtcclxuaW1wb3J0IHsgdXNlVGFiTmF2aWdhdGlvbiB9IGZyb20gXCIuLi91dGlscy9UYWJOYXZpZ2F0aW9uXCI7XHJcblxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIFByb0Rlc2MoKSB7XHJcbiAgdXNlVGFiTmF2aWdhdGlvbigpO1xyXG4gICAgcmV0dXJuIChcclxuICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICA8SDIgdGV4dD1cIk91ciBNZWV0aW5nIFByb3RvY29sc1wiLz5cclxuICAgICAgICA8UERGIGxpbms9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9wZGZzL21lZXRpbmdzLnBkZlwiIG5hbWU9XCJtZWV0aW5ncy5wZGZcIi8+XHJcbiAgICAgICAgPENhbGVuZGFyLz5cclxuICAgICAgPC9kaXY+XHJcbiAgICApO1xyXG4gIH1cclxuICAiLCAiZXhwb3J0IGZ1bmN0aW9uIFBST0RFU0MoKSB7XHJcblxyXG4gIHJldHVybiAoXHJcbiAgICA8SGVhZGVyQm94IHRpdGxlPVwiUHJvamVjdFwiIHRpdGxlMj1cIkRvY3VtZW50YXRpb25cIiBpZD1cImRvY2hlYWRcIj5cclxuICAgICAgXHJcbiAgICA8L0hlYWRlckJveD5cclxuICApO1xyXG59XHJcblxyXG5pbXBvcnQgSGVhZGVyQm94IGZyb20gXCIuLi9jb21wb25lbnRzL0hlYWRlckJveFwiOyIsICJpbXBvcnQgeyBCbG9ja1F1b3RlQiB9IGZyb20gXCIuLi9jb21wb25lbnRzL1F1b3Rlc1wiO1xyXG5pbXBvcnQgeyBTZWN0aW9uIH0gZnJvbSBcIi4uL2NvbXBvbmVudHMvc2VjdGlvbnNcIjtcclxuaW1wb3J0IHsgdXNlTmF2aWdhdGlvbiB9IGZyb20gXCIuLi91dGlsc1wiO1xyXG5pbXBvcnQgeyB1c2VUYWJOYXZpZ2F0aW9uIH0gZnJvbSBcIi4uL3V0aWxzL1RhYk5hdmlnYXRpb25cIjtcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBKdWRnaW5nKCkge1xyXG4gIHVzZVRhYk5hdmlnYXRpb24oKTtcclxuICBjb25zdCB7Z29Ub1BhZ2VzQW5kT3BlblRhYn0gPSB1c2VOYXZpZ2F0aW9uKCk7IFxyXG4gICAgcmV0dXJuIChcclxuICAgICAgPD5cclxuICAgICAgICA8U2VjdGlvbiB0aXRsZT1cIk92ZXJ2aWV3XCIgaWQ9XCJPdmVydmlld1wiPlxyXG4gICAgICAgICAgPEJsb2NrUXVvdGVCIHRleHQ9XCJKdWRnaW5nIGZvciBpR0VNIGlzIG9uZSBvZiB0aGUgaGlnaGxpZ2h0cyBvbiBteSBwcm9mZXNzaW9uYWwgY2FsZW5kYXJcdTIwMjZcIiBjaXRlPVwiRHIuIE5hbmN5IEJ1cmdlc3MsIERpcmVjdG9yIG9mIEp1ZGdpbmcgYXQgaUdFTSBIUVwiLz5cclxuICAgICAgICAgIDxwPlRoZSBpR0VNIGNvbXBldGl0aW9uIGNlbGVicmF0ZXMgaW5ub3ZhdGlvbiBpbiBzeW50aGV0aWMgYmlvbG9neSwgb2ZmZXJpbmcgdGVhbXMgdGhlIGNoYW5jZSB0byBjb21wZXRlIGZvciBhIHJhbmdlIG9mIGF3YXJkcyBiYXNlZCBvbiB0aGVpciBhY2hpZXZlbWVudHMgaW4gXHJcbiAgICAgICAgICAgIHZhcmlvdXMgY2F0ZWdvcmllcy4gSnVkZ2luZyBpcyBiYXNlZCBvbiBob3cgd2VsbCB0ZWFtcyBpbnRlZ3JhdGUgc2NpZW50aWZpYyByaWdvciB3aXRoIHNvY2lldGFsIGltcGFjdCwgc2FmZXR5LCBhbmQgY3JlYXRpdml0eS4gV2UgYWltIHRvIGNvbXBldGUgZm9yIFxyXG4gICAgICAgICAgICBzZXZlcmFsIHByZXN0aWdpb3VzIGF3YXJkcywgaW5jbHVkaW5nIDxiPkJlc3QgSW50ZWdyYXRlZCBIdW1hbiBQcmFjdGljZXM8L2I+LCA8Yj5TYWZldHkgYW5kIFNlY3VyaXR5IEF3YXJkPC9iPiwgYW5kIDxiPkJlc3QgTmV3IEJhc2ljIFBhcnQ8L2I+LiBBZGRpdGlvbmFsbHksIHdlIHNlZWsgcmVjb2duaXRpb24gZm9yIG91ciA8Yj50aGVyYXBldXRpYyBwcm9qZWN0PC9iPiBhbmQgd2lsbCBzdHJpdmUgZm9yIGV4Y2VsbGVuY2UgaW4gPGI+QmVzdCBXaWtpPC9iPiwgPGI+QmVzdCBQcmVzZW50YXRpb248L2I+LCBhbmQgdGhlIDxiPmlHRU1lcnMgcHJpemU8L2I+LiA8L3A+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICAgICAgICA8aW1nIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9vdGhlci90aGVyYXBldXRpYy1hd2FyZC5zdmdcIiAvPlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICAgICAgICA8aW1nIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9vdGhlci9paHAtYXdhcmQuc3ZnXCIgLz5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3Mvb3RoZXIvc2FmZXR5LWF3YXJkLnN2Z1wiIC8+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL290aGVyL2Jhc2ljLXBhcnQtYXdhcmQuc3ZnXCIgLz5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3Mvb3RoZXIvd2lraS1hd2FyZC5zdmdcIiAvPlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L1NlY3Rpb24+XHJcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3cgYWxpZ24taXRlbXMtY2VudGVyXCI+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgPGlmcmFtZSB0aXRsZT1cIkJpZWxlZmVsZC1DZUJpVGVjOiBJbnRyb2R1Y3Rpb24gKDIwMjQpIFtFbmdsaXNoXVwiIHdpZHRoPVwiMTAwJVwiIGhlaWdodD1cIjYwMHB4XCIgc3JjPVwiaHR0cHM6Ly92aWRlby5pZ2VtLm9yZy92aWRlb3MvZW1iZWQvOWZmYzU5MTQtZGY4Ni00YmE3LWEwZWItZjMyNDY5NDk4OGVlXCIgZnJhbWVCb3JkZXI9XCIwXCIgYWxsb3dGdWxsU2NyZWVuPXt0cnVlfSBzYW5kYm94PVwiYWxsb3ctc2FtZS1vcmlnaW4gYWxsb3ctc2NyaXB0cyBhbGxvdy1wb3B1cHMgYWxsb3ctZm9ybXNcIj48L2lmcmFtZT5cclxuICAgICAgIFxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPFNlY3Rpb24gdGl0bGU9XCJCZXN0IFRoZXJhcGV1dGljIFByb2plY3RcIiBpZD1cIkJlc3QgVGhlcmFwZXV0aWMgUHJvamVjdFwiPlxyXG4gICAgICAgICAgPHA+T3VyIHByb2plY3QgaXMgYSBkdWFsIHRoZXJhcGV1dGljIGFwcHJvYWNoIHRhcmdldGluZyBDeXN0aWMgRmlicm9zaXMgKENGKSwgc3BlY2lmaWNhbGx5IHRoZSBtb3N0IGNvbW1vbiBtdXRhdGlvbiwgRjUwOGRlbC4gV2UgYWltIHRvIGRldmVsb3AgYSBjdXJhdGl2ZSBzb2x1dGlvbiBieSBjb3JyZWN0aW5nIHRoZSBnZW5ldGljIGRlZmVjdCB1c2luZyBQcmltZSBFZGl0aW5nIFRlY2hub2xvZ3kgd2hpbGUgZW5oYW5jaW5nIHRoZSBmb2xkaW5nIG9mIHRoZSBDRlRSIHByb3RlaW4uIEFkZGl0aW9uYWxseSwgd2UgZGV2ZWxvcGVkIGEgTGlwaWQgTmFub3BhcnRpY2xlIGZvciB0aGUgY2VsbC1zcGVjaWZpYyB0YXJnZXRpbmcgb2YgbHVuZyBlcGl0aGVsaWFsIGNlbGxzLiBUaGlzIHByb2plY3QgZGlyZWN0bHkgYWRkcmVzc2VzIHRoZSB1bm1ldCB0aGVyYXBldXRpYyBuZWVkcyBvZiBDRiBwYXRpZW50cywgcHJvdmlkaW5nIGEgbG9uZy10ZXJtIGFuZCBwb3RlbnRpYWxseSBjdXJhdGl2ZSBzb2x1dGlvbi4gPC9wPlxyXG4gICAgICAgICAgPGg0PkhhcyB0aGUgdGVhbSBjbGVhcmx5IGRlZmluZWQgdGhlIHRoZXJhcGV1dGljIHByb2JsZW0gdGhleSBhcmUgYWRkcmVzc2luZz8gPC9oND5cclxuICAgICAgICAgIDxwPldlIGFyZSBhZGRyZXNzaW5nIEN5c3RpYyBGaWJyb3NpcyAoQ0YpLCBhIHNldmVyZSBnZW5ldGljIGRpc29yZGVyIGNhdXNlZCBieSBtdXRhdGlvbnMgaW4gdGhlIENGVFIgZ2VuZSwgcGFydGljdWxhcmx5IHRoZSBGNTA4ZGVsIG11dGF0aW9uLiBUaGlzIG11dGF0aW9uIGxlYWRzIHRvIHRoaWNrIG11Y3VzIGFjY3VtdWxhdGlvbiBpbiB2aXRhbCBvcmdhbnMsIGNhdXNpbmcgY2hyb25pYyBpbmZlY3Rpb25zIGFuZCBkYW1hZ2UsIHBhcnRpY3VsYXJseSBpbiB0aGUgbHVuZ3MuIE91ciBmb2N1cyBvbiB0aGUgRjUwOGRlbCBtdXRhdGlvbiwgd2hpY2ggYWZmZWN0cyBhcm91bmQgOTAgJSBvZiBDRiBwYXRpZW50cyBpbiBFdXJvcGUgYW5kIGJleW9uZCwgZW5zdXJlcyBvdXIgcHJvamVjdCB0YXJnZXRzIGEgd2VsbC1kZWZpbmVkIGFuZCB3aWRlc3ByZWFkIHRoZXJhcGV1dGljIG5lZWQuIDwvcD5cclxuICAgICAgICAgIDxoND5Ib3cgd2VsbCBpcyB0aGUgdGhlcmFwZXV0aWMgbWVjaGFuaXNtIG9mIGFjdGlvbiB1bmRlcnN0b29kIGFuZCBkZW1vbnN0cmF0ZWQ/IDwvaDQ+XHJcbiAgICAgICAgICA8cD5PdXIgcHJvamVjdCBlbXBsb3lzIGEgZHVhbCBhcHByb2FjaDogPC9wPlxyXG4gICAgICAgICAgPG9sPlxyXG4gICAgICAgICAgICA8bGk+b3JyZWN0aW5nIHRoZSBGNTA4ZGVsIG11dGF0aW9uIHVzaW5nIG91ciBQcmltZSBFZGl0aW5nIFRlY2hub2xvZ3lcdFByaW1lR3VpZGUsIGEgd2VsbCB1bmRlcnN0b29kIGdlbmUgZWRpdGluZyB0b29sIGRlc2lnbmVkIHRvIHJlcGFpciBkZWZlY3RpdmUgZ2VuZXM8L2xpPlxyXG4gICAgICAgICAgICA8bGk+ZGVsaXZlcmluZyBvZiBvdXIgbVJOQSB0aGVyYXBldXRpYyB2aWEgc3BlY2lhbGl6ZWQgTGlwaWQgTmFub3BhcnRpY2xlcyBBaXJCdWRkeSwgZW5zdXJpbmcgZGlyZWN0IGFwcGxpY2F0aW9uIGluIGx1bmcgZXBpdGhlbGlhbCBjZWxsczwvbGk+XHJcbiAgICAgICAgICA8L29sPlxyXG4gICAgICAgICAgPGg0PkhhcyB0aGUgdGVhbSB2YWxpZGF0ZWQgdGhlIGVmZmVjdGl2ZW5lc3Mgb2YgdGhlaXIgdGhlcmFwZXV0aWMgYXBwcm9hY2g/IDwvaDQ+XHJcbiAgICAgICAgICA8cD5XZSB0ZXN0ZWQgdGhlIHRoZXJhcGV1dGljIGVmZmljYWN5IDxpPmluIHZpdHJvPC9pPiB1c2luZyBwYXRpZW50LWRlcml2ZWQgcHJpbWFyeSBlcGl0aGVsaWFsIGNlbGxzIGluIEFpciBMaXF1aWQgQ3VsdHVyZSAoQUxJKSBhbmQgQXBpY2FsLU91dCBPcmdhbm9pZHMgY2FycnlpbmcgdGhlIEY1MDhkZWwgbXV0YXRpb24uIFRoZXNlIGNlbGxzIHdlcmUgdHJlYXRlZCB3aXRoIFByZUN5c2UgdG8gYXNzZXNzIHRoZSBnZW5ldGljIGNvcnJlY3Rpb24sIHdoaWxlIGRvd25zdHJlYW0gYXBwbGljYXRpb25zIHdpbGwgdmFsaWRhdGUgdGhlIGltcHJvdmVkIGZvbGRpbmcgYW5kIGZ1bmN0aW9uIG9mIHRoZSBDRlRSIHByb3RlaW4uIE91ciBleHBlcmltZW50YWwgZGVzaWduIGFsbG93cyB1cyB0byBnYXRoZXIgcHJvb2Ytb2YtY29uY2VwdCBkYXRhLCBkZW1vbnN0cmF0aW5nIHRoZSB2aWFiaWxpdHkgb2YgYm90aCBnZW5lIGNvcnJlY3Rpb24gYW5kIGVmZmljaWVudCBkZWxpdmVyeS4gPC9wPlxyXG4gICAgICAgICAgPGg0PkRvZXMgdGhlIHByb2plY3QgY29uc2lkZXIgb2ZmLXRhcmdldCBlZmZlY3RzIG9yIHVuaW50ZW5kZWQgY29uc2VxdWVuY2VzPzwvaDQ+XHJcbiAgICAgICAgICA8cD5CeSBpbmNvcnBvcmF0aW5nIEZBTlpPUiwgYSBuZXcgZXVrYXJ5b3RpYyBSTkEtYmluZGluZyBETkEtZW5kb251Y2xlYXNlcywgd2UgZW5oYW5jZSB0aGUgcHJlY2lzaW9uIG9mIFByaW1lIEVkaXRpbmcuIFNpdGUtZGlyZWN0ZWQgbXV0YWdlbmVzaXMgZW5hYmxlIG5pY2thc2lmaWNhdGlvbiBvZiBvdXIgQ2FzWCBhbmQgRkFOWk9SIGNhbmRpZGF0ZXMuIFRoaXMgZW5hYmxlcyB0aGUgdXNhZ2UgYXMgUHJpbWUgRWRpdG9yLCB3aGlsZSBlbmhhbmNpbmcgZWZmaWNpZW5jeSBhbmQgZGVjcmVhc2luZyBQRSBjb21wbGV4IHNpemUuIFdlIGhhdmUgZGVzaWduZWQgb3VyIHN5c3RlbSB0byBtaW5pbWl6ZSB1bmludGVuZGVkIGNvbnNlcXVlbmNlcywgZW5zdXJpbmcgdGhhdCBvdXIgdGhlcmFwZXV0aWMgaW50ZXJ2ZW50aW9uIGlzIHNhZmUgZm9yIGNsaW5pY2FsIGFwcGxpY2F0aW9uLiA8L3A+XHJcbiAgICAgICAgICA8aDQ+V2hhdCBwb3RlbnRpYWwgZG9lcyB0aGUgcHJvamVjdCBoYXZlIGZvciByZWFsLXdvcmxkIHRoZXJhcGV1dGljIGFwcGxpY2F0aW9ucz8gPC9oND5cclxuICAgICAgICAgIDxwPk91ciBkdWFsIGFwcHJvYWNoIGhhcyBzaWduaWZpY2FudCBwb3RlbnRpYWwgZm9yIHJlYWwtd29ybGQgdGhlcmFwZXV0aWMgYXBwbGljYXRpb25zLiBQcmVDeXNlIHByb3ZpZGVzIGEgY3VyYXRpdmUgZ2VuZXRpYyBzb2x1dGlvbiwgaW1wcm92ZSBpbW1lZGlhdGUgcGh5c2lvbG9naWNhbCBmdW5jdGlvbnMuIFRoZSBwcm9qZWN0IGFkZHJlc3NlcyBhIGNydWNpYWwgbmVlZCBpbiBDRiB0aGVyYXB5IGJ5IHRhcmdldGluZyBib3RoIHRoZSByb290IGdlbmV0aWMgY2F1c2UgYW5kIHRoZSByZXN1bHRpbmcgcHJvdGVpbiBkeXNmdW5jdGlvbiwgb2ZmZXJpbmcgYSBtb3JlIGNvbXByZWhlbnNpdmUgc29sdXRpb24gdGhhbiBjdXJyZW50IHRyZWF0bWVudHMuIDwvcD5cclxuICAgICAgICAgIDxoND5Ib3cgd2VsbCBkaWQgdGhlIHRlYW0gaW50ZWdyYXRlIHNhZmV0eSBpbnRvIHRoZWlyIHRoZXJhcGV1dGljIGRlc2lnbj8gPC9oND5cclxuICAgICAgICAgIDxwPlNhZmV0eSBpcyBhIHByaW9yaXR5IGluIG91ciBwcm9qZWN0LiBUaGUgdXNlIG9mIEZBTlpPUiBlbmhhbmNlcyB0aGUgc3BlY2lmaWNpdHkgb2Ygb3VyIGdlbmUtZWRpdGluZyBhcHByb2FjaCwgcmVkdWNpbmcgdGhlIGxpa2VsaWhvb2Qgb2Ygb2ZmLXRhcmdldCBnZW5lIG1vZGlmaWNhdGlvbnMuIEFkZGl0aW9uYWxseSwgd2UgYXJlIGNvbW1pdHRlZCB0byByaWdvcm91cyA8aT5pbiB2aXRybzwvaT4gdGVzdGluZyBiZWZvcmUgYWR2YW5jaW5nIHRvIDxpPmluIHZpdm88L2k+IG1vZGVscywgZW5zdXJpbmcgdGhhdCBvdXIgdGhlcmFwZXV0aWMgaW50ZXJ2ZW50aW9ucyBkbyBub3QgcG9zZSByaXNrcyB0byBwYXRpZW50cy4gRm9yIHRoaXMsIHdlIGRldmVsb3BlZCBhbiBDRi1zcGVjaWZpYyBmbHVvcmVzY2VuY2UtYmFzZWQgUmVwb3J0ZXIgU3lzdGVtIG1pbWlja2luZyB0aGUgQ0Ytc3BlY2lmaWMgZ2Vub21pYyBhbHRlcmF0aW9uLiA8L3A+XHJcbiAgICAgICAgICA8aDQ+VG8gd2hhdCBleHRlbnQgaGFzIHRoZSB0ZWFtIGNvbnNpZGVyZWQgcGF0aWVudCBpbXBhY3Q/IDwvaDQ+XHJcbiAgICAgICAgICA8cD5XZSBoYXZlIGNsb3NlbHkgYWxpZ25lZCBvdXIgcHJvamVjdCB3aXRoIHBhdGllbnQgbmVlZHMgYnkgdGFyZ2V0aW5nIHRoZSBGNTA4ZGVsIG11dGF0aW9uLCB3aGljaCBhZmZlY3RzIGEgc2lnbmlmaWNhbnQgcG9ydGlvbiBvZiBDRiBwYXRpZW50cyB3b3JsZHdpZGUuIE91ciB0aGVyYXBldXRpYyBzb2x1dGlvbiBhaW1zIHRvIGltcHJvdmUgcXVhbGl0eSBvZiBsaWZlIGJ5IGFkZHJlc3NpbmcgdGhlIHJvb3QgY2F1c2Ugb2YgQ0YgYW5kIHJlZHVjaW5nIHRoZSBidXJkZW4gb2YgbGlmZWxvbmcgdHJlYXRtZW50cy4gV2UgYXJlIGFsc28gaW4gY29udGFjdCB3aXRoIENGIHBhdGllbnRzIGFuZCBoYXZlIGdhdGhlcmVkIGluc2lnaHRzIGZyb20gaGVhbHRoY2FyZSBwcm92aWRlcnMgdG8gZW5zdXJlIG91ciB0aGVyYXB5IGlzIHBhdGllbnQtY2VudHJpYy4gUHJlQ3lzZSBvZmZlcnMgYSBsb25nLXRpbWUgc29sdXRpb24sIHdoaWxlIGJlaW5nIGNvc3QtZWZmaWNpZW50IGFuZCBlYXN5LXRvLXVzZS4gPC9wPlxyXG4gICAgICAgICAgPHA+T3VyIGlubm92YXRpdmUgdGhlcmFwZXV0aWMgcHJvamVjdCBsZXZlcmFnZXMgdGhlIHBvd2VyIG9mIGdlbmUgZWRpdGluZyBhbmQgcHJvdGVpbiBtb2R1bGF0aW9uIHRvIG9mZmVyIGEgcG90ZW50aWFsbHkgY3VyYXRpdmUgc29sdXRpb24gZm9yIEN5c3RpYyBGaWJyb3NpcywgcGFydGljdWxhcmx5IGZvciB0aGUgcHJldmFsZW50IEY1MDhkZWwgbXV0YXRpb24uIFdpdGggYSB3ZWxsLXZhbGlkYXRlZCBzY2llbnRpZmljIGZvdW5kYXRpb24sIGNvbXByZWhlbnNpdmUgc2FmZXR5IG1lYXN1cmVzLCBhbmQgYSBzdHJvbmcgZm9jdXMgb24gcGF0aWVudCBuZWVkcywgd2UgYmVsaWV2ZSBvdXIgcHJvamVjdCBleGVtcGxpZmllcyB0aGUgcXVhbGl0aWVzIGRlc2VydmluZyBvZiB0aGUgPGI+QmVzdCBUaGVyYXBldXRpYyBQcm9qZWN0IEF3YXJkPC9iPi4gT3VyIGR1YWwgYXBwcm9hY2ggcHJvdmlkZXMgYSB0ZW1wbGF0ZSBmb3IgZnV0dXJlIGdlbmV0aWMgZGlzZWFzZSB0cmVhdG1lbnRzLCBwYXZpbmcgdGhlIHdheSBmb3IgbW9yZSBlZmZlY3RpdmUgYW5kIHBlcnNvbmFsaXplZCBtZWRpY2FsIHNvbHV0aW9ucy4gPC9wPlxyXG4gICAgICAgIDwvU2VjdGlvbj5cclxuICAgICAgICA8U2VjdGlvbiB0aXRsZT1cIkJlc3QgSW50ZWdyYXRlZCBIdW1hbiBQcmFjdGljZVwiIGlkPVwiQmVzdCBJbnRlZ3JhdGVkIEh1bWFuIFByYWN0aWNlXCI+XHJcbiAgICAgICAgICA8cD5PdXIgdGVhbVx1MjAxOXMgcHJvamVjdCBhdCBCaWVsZWZlbGQtQ2VCaVRlYyBpbnRlZ3JhdGVzIEh1bWFuIFByYWN0aWNlcyBpbnRvIGV2ZXJ5IGFzcGVjdCBvZiBvdXIgd29yaywgZW5zdXJpbmcgdGhhdCBvdXIgc3ludGhldGljIGJpb2xvZ3kgaW5ub3ZhdGlvbiBhbGlnbnMgd2l0aCBzb2NpZXRhbCBuZWVkcywgZXRoaWNhbCBjb25zaWRlcmF0aW9ucywgYW5kIGVudmlyb25tZW50YWwgc3VzdGFpbmFiaWxpdHkuIEJ5IHByb2FjdGl2ZWx5IGVuZ2FnaW5nIHdpdGggYSBicm9hZCByYW5nZSBvZiBzdGFrZWhvbGRlcnMsIGluY2x1ZGluZyBzY2llbnRpc3RzLCByZWd1bGF0b3J5IGJvZGllcywgYW5kIGNvbW11bml0eSBncm91cHMsIHdlIHNoYXBlZCBvdXIgcHJvamVjdCB0byBoYXZlIG1lYW5pbmdmdWwgYW5kIHJlc3BvbnNpYmxlIGltcGFjdHMuIE91ciBjb21taXRtZW50IHRvIHVuZGVyc3RhbmRpbmcgdGhlIGJyb2FkZXIgaW1wbGljYXRpb25zIG9mIG91ciB3b3JrIHBvc2l0aW9ucyB1cyBhcyBhIHN0cm9uZyBjYW5kaWRhdGUgZm9yIHRoZSA8Yj5CZXN0IEludGVncmF0ZWQgSHVtYW4gUHJhY3RpY2VzIEF3YXJkPC9iPi4gPC9wPlxyXG4gICAgICAgICAgPGg0PkludGVncmF0aW9uIG9mIEh1bWFuIFByYWN0aWNlcyA8L2g0PlxyXG4gICAgICAgICAgPHA+V2UgYWN0aXZlbHkgZW5nYWdlZCB3aXRoIGEgZGl2ZXJzZSBhcnJheSBvZiBzdGFrZWhvbGRlcnMgdGhyb3VnaG91dCBvdXIgcHJvamVjdCwgZnJvbSBDRiBwYXRpZW50cyBsaWtlIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlc0FuZE9wZW5UYWIoJ21heGZpcnN0JywgJy9odW1hbi1wcmFjdGljZXMnKX0+TWF4IEJlY2ttYW5uPC9hPiAgdG8gY2xpbmljaWFucyBzdWNoIGFzIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlc0FuZE9wZW5UYWIoJ29sYXJpdScsICcvaHVtYW4tcHJhY3RpY2VzJyl9PkRyLiBPbGFyaXU8L2E+ICwgcGh5c2lvdGhlcmFwaXN0cyBsaWtlIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlc0FuZE9wZW5UYWIoJ3dlc3Rob2ZmaW52JywgJy9odW1hbi1wcmFjdGljZXMnKX0+S2F0cmluIFdlc3Rob2ZmPC9hPiwgYW5kIGluZHVzdHJ5IGV4cGVydHMgaW5jbHVkaW5nIDxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlc0FuZE9wZW5UYWIoJ3JuaGFsZScsICcvaHVtYW4tcHJhY3RpY2VzJyl9PkRyLiBCZW5qYW1pbiBXaW5rZWxqYW5uPC9hPiBhbmQgPGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VzQW5kT3BlblRhYigna29sb25rb2ZpcnN0JywgJy9odW1hbi1wcmFjdGljZXMnKX0+RHIuIEthdGhhcmluYSBLb2xvbmtvPC9hPi4gRWFjaCBvZiB0aGVzZSBjb2xsYWJvcmF0aW9ucyBkaXJlY3RseSBpbmZvcm1lZCBhbmQgc2hhcGVkIG91ciB0aGVyYXBldXRpYyBzb2x1dGlvbi4gTWF4IEJlY2ttYW5uXHUyMDE5cyBmaXJzdGhhbmQgZXhwZXJpZW5jZSBwcm92aWRlZCB1cyB3aXRoIGludmFsdWFibGUgaW5zaWdodHMgaW50byB0aGUgZGFpbHkgY2hhbGxlbmdlcyBvZiBsaXZpbmcgd2l0aCBDRiwgaGVscGluZyB1cyBhbGlnbiBvdXIgZ2VuZSB0aGVyYXB5IHdpdGggcGF0aWVudCBuZWVkcy4gQWRkaXRpb25hbGx5LCBjbGluaWNpYW5zIGFuZCBwaHlzaW90aGVyYXBpc3RzIGd1aWRlZCB1cyB0b3dhcmQgYSB0cmVhdG1lbnQgc3RyYXRlZ3kgdGhhdCBpcyBwcmFjdGljYWwsIGFjY2Vzc2libGUsIGFuZCBlZmZlY3RpdmUgZm9yIGRpZmZlcmVudCBwYXRpZW50IGRlbW9ncmFwaGljcy4gPC9wPlxyXG4gICAgICAgICAgPGg0Pkluc3BpcmF0aW9uIHRvIE90aGVycyA8L2g0PlxyXG4gICAgICAgICAgPHA+T3VyIHByb2plY3Qgc2VydmVzIGFzIGEgbW9kZWwgZm9yIGhvdyBzeW50aGV0aWMgYmlvbG9neSBjYW4gYmUgbGV2ZXJhZ2VkIHRvIG1lZXQgcmVhbC13b3JsZCBuZWVkcyB3aGlsZSBtYWludGFpbmluZyBhIHBhdGllbnQtY2VudGVyZWQgZm9jdXMuIEJ5IGludGVncmF0aW5nIGZlZWRiYWNrIGZyb20gcGF0aWVudHMgYW5kIG1lZGljYWwgcHJvZmVzc2lvbmFscywgd2UgZGVtb25zdHJhdGUgdGhhdCBjdXR0aW5nLWVkZ2Ugc2NpZW5jZSBjYW4gY29leGlzdCB3aXRoIGVtcGF0aHkgYW5kIHJlc3BvbnNpYmlsaXR5LiBPdXIgZm9jdXMgb24gaW5jbHVzaXZpdHksIHNjYWxhYmlsaXR5LCBhbmQgYWRkcmVzc2luZyBnbG9iYWwgZGlzcGFyaXRpZXMgaW4gQ0YgdHJlYXRtZW50IHNldHMgYSBwcmVjZWRlbnQgZm9yIGZ1dHVyZSBpR0VNIHRlYW1zIGxvb2tpbmcgdG8gbWFrZSBhIG1lYW5pbmdmdWwgaW1wYWN0IG9uIGhlYWx0aCBjaGFsbGVuZ2VzLiA8L3A+XHJcbiAgICAgICAgICA8aDQ+RG9jdW1lbnRhdGlvbiBmb3IgRnV0dXJlIFRlYW1zIDwvaDQ+XHJcbiAgICAgICAgICA8cD5XZSBoYXZlIG1ldGljdWxvdXNseSBkb2N1bWVudGVkIGV2ZXJ5IGFzcGVjdCBvZiBvdXIgSHVtYW4gUHJhY3RpY2VzIGludGVncmF0aW9uLCBwcm92aWRpbmcgZnV0dXJlIHRlYW1zIHdpdGggYSBjbGVhciByb2FkbWFwIGZvciBob3cgdG8gaW5jb3Jwb3JhdGUgc3Rha2Vob2xkZXIgZmVlZGJhY2sgaW50byBhIHRoZXJhcGV1dGljIHByb2plY3QuIFRoaXMgaW5jbHVkZXMgZGV0YWlsZWQgY2FzZSBzdHVkaWVzIG9uIG91ciBpbnRlcmFjdGlvbnMgd2l0aCBDRiBwYXRpZW50cywgbWVkaWNhbCBwcm9mZXNzaW9uYWxzLCBhbmQgaW5kdXN0cnkgZXhwZXJ0cywgYWxvbmcgd2l0aCB0aGUgYWRqdXN0bWVudHMgbWFkZSB0byBvdXIgcHJvamVjdCBiYXNlZCBvbiB0aGVpciBpbnB1dC4gT3VyIHRob3JvdWdoIGRvY3VtZW50YXRpb24gZW5zdXJlcyB0aGF0IG90aGVycyBjYW4gbGVhcm4gZnJvbSBvdXIgYXBwcm9hY2ggYW5kIGJ1aWxkIHVwb24gb3VyIGZpbmRpbmdzLiA8L3A+XHJcbiAgICAgICAgICA8aDQ+VGhvdWdodGZ1bCBJbXBsZW1lbnRhdGlvbiA8L2g0PlxyXG4gICAgICAgICAgPHA+T3VyIHByb2plY3QgaGFzIGJlZW4gZGVlcGx5IGluZm9ybWVkIGJ5IGV0aGljYWwsIGVudmlyb25tZW50YWwsIGFuZCBzb2NpZXRhbCBjb25zaWRlcmF0aW9ucy4gRm9yIGV4YW1wbGUsIG91ciBjb25zdWx0YXRpb24gd2l0aCBQcm9mLiBEci4gT2xhcml1IGVtcGhhc2l6ZWQgdGhlIGltcG9ydGFuY2Ugb2YgbWVudGFsIGhlYWx0aCBpbiBDRiBjYXJlLCBsZWFkaW5nIHVzIHRvIGluY29ycG9yYXRlIHBzeWNob3NvY2lhbCBlbGVtZW50cyBpbnRvIG91ciB0aGVyYXB5IGRlc2lnbi4gQWRkaXRpb25hbGx5LCB3ZSBhbGlnbmVkIG91ciBzb2x1dGlvbiB3aXRoIGdsb2JhbCBoZWFsdGhjYXJlIGRpc3Bhcml0aWVzLCBlbnN1cmluZyBvdXIgZ2VuZSB0aGVyYXB5IGNhbiBiZW5lZml0IHVuZGVycmVwcmVzZW50ZWQgcG9wdWxhdGlvbnMuIFRocm91Z2ggZW5nYWdlbWVudCB3aXRoIHJlZ3VsYXRvcnkgYm9kaWVzLCB3ZSBlbnN1cmVkIHRoYXQgb3VyIHByb2plY3QgY29tcGxpZXMgd2l0aCBhbGwgcmVsZXZhbnQgYmlvc2FmZXR5IGFuZCBsZWdhbCBzdGFuZGFyZHMuIDwvcD5cclxuICAgICAgICAgIDxoND5JbmNvcnBvcmF0aW9uIG9mIERpdmVyc2UgU3Rha2Vob2xkZXIgVmlld3MgPC9oND5cclxuICAgICAgICAgIDxwPldlIGVuZ2FnZWQgd2l0aCBhIGJyb2FkIHJhbmdlIG9mIHN0YWtlaG9sZGVycywgaW5jbHVkaW5nIHBhdGllbnRzLCBoZWFsdGhjYXJlIHByb3ZpZGVycywgcmVzZWFyY2hlcnMsIGFuZCByZWd1bGF0b3J5IGV4cGVydHMsIGVuc3VyaW5nIHRoYXQgZWFjaCBwZXJzcGVjdGl2ZSBwbGF5ZWQgYSByb2xlIGluIHNoYXBpbmcgdGhlIGZpbmFsIHRoZXJhcGV1dGljIHNvbHV0aW9uLiBGb3IgaW5zdGFuY2UsIGZlZWRiYWNrIGZyb20gcGh5c2lvdGhlcmFwaXN0IEthdHJpbiBXZXN0aG9mZiBjb25maXJtZWQgdGhlIG5lY2Vzc2l0eSBvZiBhbiBpbmhhbGF0aW9uLWJhc2VkIHRoZXJhcHkgdGhhdCBpcyBlYXN5IGZvciB5b3VuZ2VyIHBhdGllbnRzIHRvIHVzZS4gQ29sbGFib3JhdGlvbnMgd2l0aCBpbmR1c3RyeSBleHBlcnRzIGxpa2UgRHIuIEJlbmphbWluIFdpbmtlbGphbm4gZW5hYmxlZCB1cyB0byBvcHRpbWl6ZSB0aGUgdGVjaG5pY2FsIGFzcGVjdHMgb2Ygb3VyIHRyZWF0bWVudCBmb3Igc2NhbGFiaWxpdHkgYW5kIGVudmlyb25tZW50YWwgc3VzdGFpbmFiaWxpdHkuIDwvcD5cclxuICAgICAgICAgIDxoND5DcmVhdGluZyBhIFJlc3BvbnNpYmxlIGFuZCBCZW5lZmljaWFsIFByb2plY3QgPC9oND5cclxuICAgICAgICAgIDxwPk91ciBnZW5lIHRoZXJhcHkgZm9yIENGIGFkZHJlc3NlcyBub3Qgb25seSB0aGUgc2NpZW50aWZpYyBjaGFsbGVuZ2VzIGJ1dCBhbHNvIHRoZSBzb2NpZXRhbCBuZWVkIGZvciBhY2Nlc3NpYmxlLCBwYXRpZW50LWNlbnRlcmVkIGhlYWx0aGNhcmUgc29sdXRpb25zLiBCeSBpbmNvcnBvcmF0aW5nIGh1bWFuIHByYWN0aWNlcyBhdCBldmVyeSBzdGFnZSwgd2UgZW5zdXJlZCB0aGF0IG91ciBwcm9qZWN0IGlzIGV0aGljYWxseSByZXNwb25zaWJsZSBhbmQgYmVuZWZpY2lhbCB0byBzb2NpZXR5LiBUaGUgZmVlZGJhY2sgZnJvbSBkaXZlcnNlIHN0YWtlaG9sZGVycyBoZWxwZWQgdXMgcmVmaW5lIG91ciBhcHByb2FjaCwgZW5zdXJpbmcgdGhhdCB0aGUgc29sdXRpb24gaXMgc3VzdGFpbmFibGUsIGluY2x1c2l2ZSwgYW5kIGFkZHJlc3NlcyB0aGUgZ2xvYmFsIGRpc3Bhcml0aWVzIGluIENGIGNhcmUuIFRoZSBsb25nLXRlcm0gcG9zaXRpdmUgaW1wYWN0IG9uIHRoZSBDRiBjb21tdW5pdHlcdTIwMTRib3RoIGluIHRlcm1zIG9mIGhlYWx0aCBvdXRjb21lcyBhbmQgYWNjZXNzaWJpbGl0eVx1MjAxNGRlbW9uc3RyYXRlcyBvdXIgcHJvamVjdFx1MjAxOXMgY29tbWl0bWVudCB0byByZXNwb25zaWJsZSBpbm5vdmF0aW9uLiA8L3A+XHJcbiAgICAgICAgICA8cD5PdXIgcHJvamVjdCBleGVtcGxpZmllcyB0aGUgc2VhbWxlc3MgaW50ZWdyYXRpb24gb2YgSHVtYW4gUHJhY3RpY2VzIGludG8gZXZlcnkgYXNwZWN0IG9mIHN5bnRoZXRpYyBiaW9sb2d5IHJlc2VhcmNoLiBUaHJvdWdoIGNvbGxhYm9yYXRpb25zIHdpdGggcGF0aWVudHMsIGhlYWx0aGNhcmUgcHJvZmVzc2lvbmFscywgYW5kIGV4cGVydHMgYWNyb3NzIGRpZmZlcmVudCBmaWVsZHMsIHdlIGhhdmUgZGV2ZWxvcGVkIGEgZ2VuZSB0aGVyYXB5IGZvciBDeXN0aWMgRmlicm9zaXMgdGhhdCBpcyBzY2llbnRpZmljYWxseSBpbm5vdmF0aXZlLCBldGhpY2FsbHkgc291bmQsIGFuZCBkZWVwbHkgYWxpZ25lZCB3aXRoIHRoZSBuZWVkcyBvZiB0aGUgZ2xvYmFsIENGIGNvbW11bml0eS4gT3VyIGNvbW1pdG1lbnQgdG8gaW5jbHVzaXZpdHksIGV0aGljYWwgcmVmbGVjdGlvbiwgYW5kIGVudmlyb25tZW50YWwgc3VzdGFpbmFiaWxpdHkgbWFrZXMgdXMgYSBzdHJvbmcgY2FuZGlkYXRlIGZvciB0aGUgPGI+QmVzdCBJbnRlZ3JhdGVkIEh1bWFuIFByYWN0aWNlcyBBd2FyZDwvYj4sIHNob3djYXNpbmcgb3VyIGRlZGljYXRpb24gdG8gcmVzcG9uc2libGUgYW5kIGltcGFjdGZ1bCBzeW50aGV0aWMgYmlvbG9neS4gPC9wPlxyXG4gICAgICAgIDwvU2VjdGlvbj5cclxuICAgICAgICA8U2VjdGlvbiB0aXRsZT1cIlNhZmV0eSAmIFNlY3VyaXR5XCIgaWQ9XCJTYWZldHkgJiBTZWN1cml0eVwiPlxyXG4gICAgICAgICAgPHA+T3VyIHByb2plY3QgZm9jdXNlcyBvbiBhZHZhbmNpbmcgYmlvc2FmZXR5IGFuZCBiaW9zZWN1cml0eSBpbiBzeW50aGV0aWMgYmlvbG9neSB0aHJvdWdoIHRoZSBkZXZlbG9wbWVudCBhbmQgaW1wbGVtZW50YXRpb24gb2Ygcm9idXN0IHNhZmV0eSBtZWNoYW5pc21zLiBBcyBwYXJ0IG9mIG91ciBQcmVDeXNlIHByb2plY3QsIGFpbWVkIGF0IGRldmVsb3BpbmcgYSBwcmltZS1lZGl0aW5nIGNvbXBsZXggdG8gY29ycmVjdCB0aGUgRjUwOGRlbCBtdXRhdGlvbiBpbiBDeXN0aWMgRmlicm9zaXMgKENGKSwgd2UgcGxhY2UgZ3JlYXQgZW1waGFzaXMgb24gc2FmZXR5IGF0IGV2ZXJ5IHN0YWdlIG9mIHJlc2VhcmNoLiBXaXRoIGEgY29tbWl0bWVudCB0byByZXNwb25zaWJsZSBpbm5vdmF0aW9uLCB3ZSBoYXZlIGVuc3VyZWQgdGhhdCBhbGwgcGhhc2VzIG9mIG91ciB3b3JrIGFkaGVyZSB0byB0aGUgaGlnaGVzdCBzYWZldHkgc3RhbmRhcmRzLCBhaW1pbmcgdG8gbWluaW1pemUgYm90aCBlbnZpcm9ubWVudGFsIGFuZCBodW1hbiBoZWFsdGggcmlza3MuIE91ciBhcHByb2FjaCBpbmNvcnBvcmF0ZXMgbm92ZWwgY29udGFpbm1lbnQgc3lzdGVtcywgcmlnb3JvdXMgdmFsaWRhdGlvbiBwcm9jZXNzZXMsIGFuZCBjYXJlZnVsbHkgcGxhbm5lZCBjaGVja3BvaW50cyBkdXJpbmcgZXhwZXJpbWVudHMgdG8gcHVzaCB0aGUgYm91bmRhcmllcyBvZiBiaW9zYWZldHkgaW4gc3ludGhldGljIGJpb2xvZ3kuIDwvcD5cclxuICAgICAgICAgIDxoND5Db250cmlidXRpb24gdG8gQmlvc2FmZXR5IGFuZCBCaW9zZWN1cml0eSA8L2g0PlxyXG4gICAgICAgICAgPHA+V2UgZGV2ZWxvcGVkIGEgY29tcHJlaGVuc2l2ZSBiaW9zYWZldHkgcGxhbiB0byBtaW5pbWl6ZSByaXNrcyBhc3NvY2lhdGVkIHdpdGggb3VyIHN5bnRoZXRpYyBiaW9sb2d5IHByb2plY3QuIFRoaXMgaW5jbHVkZXMgYmlvY29udGFpbm1lbnQgbWVhc3VyZXMgYW5kIHByb3RvY29scyB0byBwcmV2ZW50IHRoZSBhY2NpZGVudGFsIHJlbGVhc2Ugb2YgZ2VuZXRpY2FsbHkgbW9kaWZpZWQgb3JnYW5pc21zIChHTU9zKSBpbnRvIHRoZSBlbnZpcm9ubWVudC4gQnkgaW50ZWdyYXRpbmcgYm90aCBwaHlzaWNhbCBhbmQgZ2VuZXRpYyBzYWZlZ3VhcmRzLCB3ZSBoYXZlIGVuc3VyZWQgdGhhdCBvdXIgcHJvamVjdCBjb250cmlidXRlcyB0byBzYWZlciBzeW50aGV0aWMgYmlvbG9neSBhcHBsaWNhdGlvbnMuIEZvciBleGFtcGxlLCBvdXIgZmluYWwgY29uc3RydWN0IHdpbGwgYmUgdGVzdGVkIGluIHByaW1hcnkgY3VsdHVyZXMgb2YgbmFzYWwgZXBpdGhlbGlhbCBjZWxscyBmcm9tIENGIHBhdGllbnRzIGFuZCBoZWFsdGh5IGluZGl2aWR1YWxzLCB3aXRoIGNhcmVmdWxseSBwbGFubmVkIGNoZWNrcG9pbnRzIGZvciBjb250aW51b3VzIG1vbml0b3JpbmcgYW5kIHRpbWVseSBhZGp1c3RtZW50cy4gPC9wPlxyXG4gICAgICAgICAgPHA+QXMgcGFydCBvZiBvdXIgY29tbWl0bWVudCB0byBhZHZhbmNpbmcgc2FmZSBhbmQgZXRoaWNhbCBwcmFjdGljZXMgaW4gc3ludGhldGljIGJpb2xvZ3kgYW5kIHBhdGllbnQgY2FyZSwgd2UgaGF2ZSBtYWRlIHNldmVyYWwga2V5IGNvbnRyaWJ1dGlvbnMgdG8gc3VwcG9ydCBvdXIgcHJvamVjdCBhbmQgdGhlIHdpZGVyIGNvbW11bml0eS4gRmlyc3RseSwgd2UgZGV2ZWxvcGVkIGEgPGI+cXVlc3Rpb25uYWlyZSB0byBldmFsdWF0ZSB0aGUgbWVkaWNhbCBoaXN0b3J5IG9mIEN5c3RpYyBGaWJyb3NpcyAoQ0YpIHBhdGllbnRzPC9iPiwgd2hpY2ggaGFzIGJlZW4gc3BlY2lmaWNhbGx5IGFkYXB0ZWQgZm9yIHRoZSBjb2xsZWN0aW9uIG9mIHByaW1hcnkgaHVtYW4gbmFzYWwgZXBpdGhlbGlhbCBjZWxscyAoaE5FQ3MpLiBUaGlzIHRvb2wgZW5zdXJlcyB0aGF0IGVzc2VudGlhbCBoZWFsdGggaW5mb3JtYXRpb24gaXMgZ2F0aGVyZWQgaW4gYSBzeXN0ZW1hdGljIGFuZCBldGhpY2FsIG1hbm5lciwgYWlkaW5nIHRoZSBhY2N1cmF0ZSBjb2xsZWN0aW9uIG9mIHNhbXBsZXMgd2hpbGUgc2FmZWd1YXJkaW5nIHBhdGllbnQgd2VsbC1iZWluZy4gIDwvcD5cclxuICAgICAgICAgIDxwPlNlY29uZGx5LCB3ZSBjcmVhdGVkIDxiPkJlc3QgUHJhY3RpY2VzIGZvciBzYWZlIHByaW1hcnkgY3VsdHVyZSBoYW5kbGluZzwvYj4uIFRoaXMgZ3VpZGUgb3V0bGluZXMgdGhlIG5lY2Vzc2FyeSBzYWZldHkgcHJvdG9jb2xzIGZvciB3b3JraW5nIHdpdGggcHJpbWFyeSBjZWxsIGN1bHR1cmVzLCBlbnN1cmluZyB0aGF0IGFsbCBwcm9jZWR1cmVzIGFyZSBjb25kdWN0ZWQgd2l0aCBtaW5pbWFsIHJpc2sgb2YgY29udGFtaW5hdGlvbiBhbmQgZXhwb3N1cmUgdG8gaGFybWZ1bCBwYXRob2dlbnMuIFRoZXNlIHByYWN0aWNlcyBwcm9tb3RlIHNhZmV0eSBmb3IgYm90aCBsYWJvcmF0b3J5IHBlcnNvbm5lbCBhbmQgdGhlIGludGVncml0eSBvZiB0aGUgYmlvbG9naWNhbCBtYXRlcmlhbHMuPC9wPlxyXG4gICAgICAgICAgPHA+QWRkaXRpb25hbGx5LCB3ZSBkZXZlbG9wZWQgYSA8Yj5IeWdpZW5lIENvbmNlcHQgZm9yIEltbXVub2NvbXByb21pc2VkIEluZGl2aWR1YWxzPC9iPiBpbiBjb25zdWx0YXRpb24gd2l0aCBhIENGIHBhdGllbnQuIFRoaXMgY29uY2VwdCBhZGRyZXNzZXMgdGhlIHNwZWNpZmljIG5lZWRzIG9mIGluZGl2aWR1YWxzIHdpdGggd2Vha2VuZWQgaW1tdW5lIHN5c3RlbXMsIHN1Y2ggYXMgdGhvc2Ugd2l0aCBDRiwgSElWLCBvciBjZXJ0YWluIGNhbmNlcnMuIEl0IGZvY3VzZXMgb24gcmVkdWNpbmcgaGVhbHRoIHJpc2tzIGluIGhpZ2gtZm9vdC10cmFmZmljIHB1YmxpYyBzcGFjZXMsIGVzcGVjaWFsbHkgcHVibGljIHJlc3Ryb29tcywgYnkgaW1wbGVtZW50aW5nIHRhaWxvcmVkIGh5Z2llbmUgbWVhc3VyZXMuIFRoZXNlIGd1aWRlbGluZXMgYWltIHRvIHByb3RlY3QgaW1tdW5vY29tcHJvbWlzZWQgaW5kaXZpZHVhbHMgYnkgY3JlYXRpbmcgc2FmZXIgZW52aXJvbm1lbnRzIHdpdGhpbiB1bml2ZXJzaXR5IHNldHRpbmdzIGFuZCBiZXlvbmQsIGNvbnRyaWJ1dGluZyB0byBicm9hZGVyIHB1YmxpYyBoZWFsdGggaW5pdGlhdGl2ZXMuIDwvcD5cclxuICAgICAgICAgIDxoND5DaGFyYWN0ZXJpemF0aW9uIGFuZCBWYWxpZGF0aW9uIDwvaDQ+XHJcbiAgICAgICAgICA8cD5XZSByaWdvcm91c2x5IHRlc3RlZCB0aGUgc2FmZXR5IG1lY2hhbmlzbXMgYnVpbHQgaW50byBvdXIgcHJvamVjdCBsaWtlIHRoZSBkaXNydXB0aW9uIG9mIHRoZSBQQU0gc2VxdWVuY2UgYW5kIHBlZ1JOQSBkZXNpZ24uIFRoZXNlIG1lY2hhbmlzbXMgd2VyZSB2YWxpZGF0ZWQgdGhyb3VnaCBjb250cm9sbGVkIGV4cGVyaW1lbnRzLCBlbnN1cmluZyByZWxpYWJsZSBwZXJmb3JtYW5jZSB1bmRlciB2YXJpb3VzIGNvbmRpdGlvbnMuIEZ1cnRoZXJtb3JlLCB0byBlbnN1cmUgdGhlIHNhZmV0eSBhbmQgcHJlY2lzaW9uIG9mIG91ciByZXN1bHRzLCB3ZSBpbnRyb2R1Y2VkIGEgc2VyaWVzIG9mIGNhcmVmdWxseSBwbGFubmVkIGV4cGVyaW1lbnRhbCBtaWxlc3RvbmVzLiBUaGVzZSBhbGxvdyBmb3IgdGhlIGNvbnRpbnVvdXMgdmFsaWRhdGlvbiBvZiB0aGUgUHJpbWUgRWRpdGluZyBjb21wbGV4LCBhZGRyZXNzaW5nIHBvdGVudGlhbCBpc3N1ZXMgaW1tZWRpYXRlbHksIHdoaWNoIG1pbmltaXplcyByaXNrIGFuZCBpbXByb3ZlcyB0aGUgb3ZlcmFsbCBxdWFsaXR5IG9mIG91ciB3b3JrLiA8L3A+XHJcbiAgICAgICAgICA8aDQ+QnVpbGRpbmcgb24gRXhpc3RpbmcgS25vd2xlZGdlIDwvaDQ+XHJcbiAgICAgICAgICA8cD5PdXIgd29yayBidWlsZHMgdXBvbiBlc3RhYmxpc2hlZCBiaW9zYWZldHkgZnJhbWV3b3Jrcywgc3BlY2lmaWNhbGx5IGltcHJvdmluZyBrbm93biBnZW5ldGljIGNvbnRhaW5tZW50IHN5c3RlbXMuIFdlIGluY29ycG9yYXRlZCBsZXNzb25zIGZyb20gcHJldmlvdXMgaUdFTSB0ZWFtcyBhbmQgYWNhZGVtaWMgcmVzZWFyY2ggdG8gcmVmaW5lIHRoZXNlIHRvb2xzLCBtYWtpbmcgdGhlbSBtb3JlIGVmZmVjdGl2ZSBpbiBjb250cm9sbGluZyBnZW5lIGZsb3cgYW5kIHJlZHVjaW5nIHVuaW50ZW5kZWQgY29uc2VxdWVuY2VzLiBCeSBkcmF3aW5nIGZyb20gdGhlIGV4aXN0aW5nIGtub3dsZWRnZSBiYXNlLCB3ZSBlbnN1cmVkIG91ciBiaW9zYWZldHkgbWVjaGFuaXNtcywgc3VjaCBhcyByaWJvc3dpdGNoIGFuZCBQQU0gZGlzcnVwdGlvbiwgYXJlIGJvdGggc2NhbGFibGUgYW5kIHJlbGlhYmxlLCBzaWduaWZpY2FudGx5IGFkdmFuY2luZyBiaW9zYWZldHkgdGVjaG5vbG9naWVzLiA8L3A+XHJcbiAgICAgICAgICA8aDQ+UmlzayBNYW5hZ2VtZW50IDwvaDQ+XHJcbiAgICAgICAgICA8cD5Gcm9tIHRoZSBvdXRzZXQsIHdlIGNvbmR1Y3RlZCBhIHRob3JvdWdoIHJpc2sgYXNzZXNzbWVudCB0byBpZGVudGlmeSBwb3RlbnRpYWwgaGF6YXJkcywgaW5jbHVkaW5nIHRob3NlIGFzc29jaWF0ZWQgd2l0aCBoYW5kbGluZyBHTU9zIGFuZCBnZW5lIHRyYW5zZmVyLiBJbiByZXNwb25zZSwgd2UgaW1wbGVtZW50ZWQgc3RyaW5nZW50IGxhYiBwcm90b2NvbHMgYW5kIGJpb2NvbnRhaW5tZW50IHN5c3RlbXMgdG8gZW5zdXJlIHRoZSBzYWZldHkgb2Ygb3VyIHRlYW0gYW5kIHRoZSBzdXJyb3VuZGluZyBlbnZpcm9ubWVudC4gVGhpcyByaXNrIG1hbmFnZW1lbnQgYXBwcm9hY2ggZXh0ZW5kcyB0aHJvdWdob3V0IHRoZSBsaWZlY3ljbGUgb2YgdGhlIHByb2plY3QsIGZyb20gdGhlIGRlc2lnbiB0byB0aGUgZmluYWwgdmFsaWRhdGlvbiBzdGFnZXMuIFdlIGFsc28gYWRoZXJlZCB0byBnb29kIGxhYm9yYXRvcnkgcHJhY3RpY2VzLCBzdWNoIGFzIHN0ZXJpbGl6YXRpb24gYW5kIGNvbnRyb2xsZWQgYWNjZXNzLCB3aGljaCBlbnN1cmVzIGNvbXBsaWFuY2Ugd2l0aCBhbGwgcmVsZXZhbnQgYmlvc2FmZXR5IHJlZ3VsYXRpb25zLiA8L3A+XHJcbiAgICAgICAgICA8aDQ+UmVhbC1Xb3JsZCBBcHBsaWNhdGlvbnMgPC9oND5cclxuICAgICAgICAgIDxwPldlIGRlc2lnbmVkIG91ciBwcm9qZWN0IHdpdGggcmVhbC13b3JsZCBiaW9zYWZldHkgY29uY2VybnMgaW4gbWluZCwgcGFydGljdWxhcmx5IHRoZSBwb3RlbnRpYWwgZW52aXJvbm1lbnRhbCBpbXBhY3Qgb2YgR01Pcy4gT3VyIGFwcHJvYWNoIGVuc3VyZXMgdGhhdCBvdXIgdGVjaG5vbG9neSBjYW4gYmUgc2FmZWx5IGFwcGxpZWQgb3V0c2lkZSB0aGUgbGFiLCB3aXRoIGJpb2NvbnRhaW5tZW50IHN0cmF0ZWdpZXMgdGhhdCBwcmV2ZW50IHVuaW50ZW5kZWQgcmVsZWFzZS4gRm9yIGluc3RhbmNlLCBieSBkZXNpZ25pbmcgbGlwaWQgbmFub3BhcnRpY2xlcyAoTE5QcykgdGhhdCBzZWxlY3RpdmVseSBmdXNlIHdpdGggbHVuZyBlcGl0aGVsaWFsIGNlbGxzLCB3ZSByZWR1Y2UgdGhlIHJpc2sgb2YgdW53YW50ZWQgb2ZmLXRhcmdldCBpbnRlcmFjdGlvbnMuIEFkZGl0aW9uYWxseSwgd2UgY29uc2lkZXJlZCBkdWFsLXVzZSBjb25jZXJucywgZW5zdXJpbmcgb3VyIHRlY2hub2xvZ3kgY2Fubm90IGJlIGVhc2lseSBtaXNhcHByb3ByaWF0ZWQgZm9yIGhhcm1mdWwgcHVycG9zZXMsIG1ha2luZyBvdXIgcHJvamVjdCBhIG1vZGVsIGZvciByZXNwb25zaWJsZSBzeW50aGV0aWMgYmlvbG9neS4gPC9wPlxyXG4gICAgICAgICAgPGg0PkNoZWNrLUlucyBhbmQgaUdFTSBDb21wbGlhbmNlIDwvaDQ+XHJcbiAgICAgICAgICA8cD5JbiBhbGlnbm1lbnQgd2l0aCBpR0VNXHUyMDE5cyBlbXBoYXNpcyBvbiBiaW9zYWZldHksIHdlIHN1Ym1pdHRlZCBDaGVjay1JbnMgZm9yIHRoZSBjb21wb25lbnRzIGFuZCBvcmdhbmlzbXMgbm90IGNvdmVyZWQgYnkgdGhlIGlHRU0gV2hpdGUgbGlzdC4gVGhlc2UgZm9ybWFsIGV2YWx1YXRpb25zIGVuc3VyZWQgdGhhdCBhbGwgYXNwZWN0cyBvZiBvdXIgcHJvamVjdCB3ZXJlIHRob3JvdWdobHkgYXNzZXNzZWQgYW5kIGFwcHJvdmVkIGJ5IHRoZSBpR0VNIFNhZmV0eSBDb21taXR0ZWUuIFdlIG1haW50YWluZWQgYWN0aXZlIGNvbW11bmljYXRpb24gd2l0aCB0aGUgY29tbWl0dGVlIHRvIGVuc3VyZSBjb21wbGlhbmNlIHdpdGggYWxsIGlHRU0gc3RhbmRhcmRzLCByZWZsZWN0aW5nIG91ciBkZWRpY2F0aW9uIHRvIGJpb3NhZmV0eSBhbmQgYmlvc2VjdXJpdHkuIDwvcD5cclxuICAgICAgICAgIDxoND5MYWJvcmF0b3J5IGFuZCBTYWZldHkgUHJhY3RpY2VzIDwvaDQ+XHJcbiAgICAgICAgICA8cD5BbGwgZXhwZXJpbWVudHMgd2VyZSBjb25kdWN0ZWQgYXQgQmllbGVmZWxkIFVuaXZlcnNpdHkgaW4gUHJvZi4gRHIuIEtyaXN0aWFuIE1cdTAwRkNsbGVyJ3MgbGFib3JhdG9yeSwgZm9sbG93aW5nIEJTTC0xIChhbmQgQlNMLTIgaWYgbmVlZGVkKSBzdGFuZGFyZCBvcGVyYXRpbmcgcHJvY2VkdXJlcy4gVGhlIHRlYW0gcGFydGljaXBhdGVkIGluIG1hbmRhdG9yeSBzYWZldHkgYnJpZWZpbmdzIGFuZCBhZGhlcmVkIHRvIHJpZ29yb3VzIHNhZmV0eSBtZWFzdXJlcywgaW5jbHVkaW5nIHJlZ3VsYXRpb25zIGNvbmNlcm5pbmcgaGF6YXJkb3VzIHN1YnN0YW5jZXMsIGdlbmV0aWMgZW5naW5lZXJpbmcsIGFuZCB0aGUgaGFuZGxpbmcgb2YgYmlvbG9naWNhbCBtYXRlcmlhbHMuIE91ciBsYWIgYWN0aXZpdGllcyB3ZXJlIG1ldGljdWxvdXNseSBwbGFubmVkIHRvIG1pbmltaXplIHJpc2sgYW5kIGVuc3VyZSBkYXRhIGludGVncml0eS4gPC9wPlxyXG4gICAgICAgICAgPHA+QnkgYnVpbGRpbmcgb24gZXhpc3Rpbmcga25vd2xlZGdlLCByaWdvcm91c2x5IHRlc3Rpbmcgb3VyIGJpb3NhZmV0eSBtZWFzdXJlcywgYW5kIHByb2FjdGl2ZWx5IG1hbmFnaW5nIHJpc2tzLCB3ZSBoYXZlIGRldmVsb3BlZCBhIHByb2plY3QgdGhhdCBzaWduaWZpY2FudGx5IGNvbnRyaWJ1dGVzIHRvIHRoZSBmaWVsZCBvZiBiaW9zYWZldHkgYW5kIGJpb3NlY3VyaXR5LiBPdXIgY29tcHJlaGVuc2l2ZSBhcHByb2FjaCBlbnN1cmVzIHRoYXQgb3VyIHRlY2hub2xvZ3kgY2FuIGJlIHNhZmVseSBhcHBsaWVkIGluIHJlYWwtd29ybGQgc2NlbmFyaW9zLCBhbmQgd2UgYmVsaWV2ZSB0aGlzIHNldHMgYSBuZXcgc3RhbmRhcmQgZm9yIHJlc3BvbnNpYmxlIHN5bnRoZXRpYyBiaW9sb2d5LiBPdXIgZWZmb3J0cywgcGFydGljdWxhcmx5IGluIHRoZSBkZXZlbG9wbWVudCBvZiB0aGUgUHJpbWUgRWRpdGluZyBjb21wbGV4IGZvciBDRiBhbmQgdGhlIGFzc29jaWF0ZWQgYmlvc2FmZXR5IHByb3RvY29scywgbWVyaXQgcmVjb2duaXRpb24gZm9yIHRoZSA8Yj5TYWZldHkgYW5kIFNlY3VyaXR5IEF3YXJkPC9iPi4gPC9wPlxyXG4gICAgICAgIDwvU2VjdGlvbj5cclxuICAgICAgICA8U2VjdGlvbiB0aXRsZT1cIkJlc3QgTmV3IEJhc2ljIFBhcnRcIiBpZD1cIkJlc3QgTmV3IEJhc2ljIFBhcnRcIj5cclxuICAgICAgICAgIDxwPk91ciBwcm9qZWN0IGZvY3VzZXMgb24gb3B0aW1pemluZyBwcmltZSBlZGl0aW5nIGZvciB0aGUgQ3lzdGljIEZpYnJvc2lzLWNhdXNpbmcgQ0ZUUiBGNTA4ZGVsIG11dGF0aW9uLCB3aGljaCByZXByZXNlbnRzIG9uZSBvZiB0aGUgbW9zdCBzaWduaWZpY2FudCBhcHBsaWNhdGlvbnMgZm9yIHByaW1lIGVkaXRpbmcuIFByaW1lIGVkaXRpbmcgaXMgYSBwcmVjaXNlIGFuZCBzYWZlIGdlbmUgZWRpdGluZyB0ZWNobmlxdWUsIGJ1dCBpdHMgZWZmaWNpZW5jeSB2YXJpZXMgZ3JlYXRseSBkZXBlbmRpbmcgb24gdGhlIGdlbm9taWMgbG9jdXMuIFRocm91Z2ggb3VyIGRldmVsb3BtZW50IG9mIGEgY29udGV4dC1zcGVjaWZpYyBQcmltZSBFZGl0b3IgQWN0aXZpdHkgUmVwb3J0ZXIgKFBFQVIpIHN5c3RlbSwgd2UgaGF2ZSBzdWNjZXNzZnVsbHkgb3B0aW1pemVkIHRoaXMgYWR2YW5jZWQgdGVjaG5vbG9neSwgcGF2aW5nIHRoZSB3YXkgZm9yIG1vcmUgZWZmZWN0aXZlIGdlbm9taWMgdGFyZ2V0aW5nLCBub3QganVzdCBmb3IgQ3lzdGljIEZpYnJvc2lzIGJ1dCBmb3IgZnV0dXJlIHN5bnRoZXRpYyBiaW9sb2d5IGFwcGxpY2F0aW9ucyBhcyB3ZWxsLiA8L3A+XHJcbiAgICAgICAgICA8aDQ+IEVuZ2luZWVyaW5nIGFuZCBUZXN0aW5nIGZvciBDb250ZXh0dWFsIFByZWNpc2lvbiA8L2g0PlxyXG4gICAgICAgICAgPHA+VGhlIGNoYWxsZW5nZXMgcG9zZWQgYnkgbG93IGVkaXRpbmcgZWZmaWNpZW5jeSBhbmQgdGhlIGRpZmZpY3VsdHkgaW4gZGlzdGluZ3Vpc2hpbmcgc3VjY2Vzc2Z1bCBlZGl0cyBmcm9tIGJhY2tncm91bmQgbm9pc2UgbGVkIHVzIHRvIGRlc2lnbiBhIGhpZ2hseSBzZW5zaXRpdmUgcmVwb3J0ZXIgc3lzdGVtLiBBZnRlciBhbiBpbml0aWFsIHVuc3VjY2Vzc2Z1bCBhdHRlbXB0IHVzaW5nIGEgZmx1b3Jlc2NlbnQgcmVwb3J0ZXIsIHdlIHNoaWZ0ZWQgdG8gdGhlIFBFQVIgc3lzdGVtIHByb3ZlZCB0byBiZSBtdWNoIG1vcmUgYWRhcHRhYmxlIGFuZCByZWxldmFudCB0byBvdXIgbmVlZHMuIDwvcD5cclxuICAgICAgICAgIDxoND5JdGVyYXRpdmUgRGV2ZWxvcG1lbnQgPC9oND5cclxuICAgICAgICAgIDxwPkluIG91ciBmaXJzdCBhdHRlbXB0LCB3ZSBleHBsb3JlZCBhIGZsdW9yZXNjZW5jZS1iYXNlZCByZXBvcnRlciB0aGF0IHRhcmdldGVkIEdGUC4gV2hpbGUgdGhpcyBoZWxwZWQgdXMgdmlzdWFsaXplIHByaW1lIGVkaXRpbmcgaW4gYWN0aW9uLCB3ZSBxdWlja2x5IHJlYWxpemVkIHRoYXQgdGhlIGRpc3RhbmNlIG9mIHRoZSBtdXRhdGlvbiBzaXRlIGZyb20gdGhlIFBBTSBzZXF1ZW5jZSBpbiB0aGUgQ0ZUUiBnZW5lIG1lYW50IHRoYXQgdGhpcyBzeXN0ZW0gd2Fzblx1MjAxOXQgc3VpdGFibGUgZm9yIG91ciBzcGVjaWZpYyBnZW5vbWljIHRhcmdldC4gV2UgdGhlbiBtb3ZlZCB0byB0aGUgUEVBUiBzeXN0ZW0sIHdoaWNoIHdhcyBtb3JlIGZsZXhpYmxlIGFuZCBzZW5zaXRpdmUsIGFzIGl0cyBlZGl0aW5nIGZhY3RvcnMgYWxpZ25lZCB3aXRoIHRob3NlIHJlcXVpcmVkIGZvciBnZW5vbWljIGNvbnRleHRzLiA8L3A+XHJcbiAgICAgICAgICA8cD5UaHJvdWdoIG11bHRpcGxlIGl0ZXJhdGlvbnMsIGluY2x1ZGluZyB0ZXN0cyBpbiBIRUsyOTMgY2VsbHMsIGVwaXRoZWxpYWwgY2VsbHMsIGFuZCBodW1hbi1kZXJpdmVkIHByaW1hcnkgY2VsbHMsIHdlIHJlZmluZWQgb3VyIHN5c3RlbS4gT3VyIGV4cGVyaW1lbnRzIHByb3ZlZCB0aGUgc3VjY2Vzc2Z1bCB1c2Ugb2YgdGhlIFBFQVIgcmVwb3J0ZXIgaW4gZGV0ZWN0aW5nIHByaW1lIGVkaXRpbmcgYWN0aXZpdHkgZm9yIENGVFIgRjUwOGRlbCB3aXRoIG1pbmltYWwgbm9pc2UsIG1ha2luZyBpdCBpZGVhbCBmb3IgZGV0ZWN0aW5nIGVkaXRzIGluIHNwZWNpZmljIGdlbm9taWMgbG9jaSB3aXRoIGhpZ2ggc2Vuc2l0aXZpdHkuIDwvcD5cclxuICAgICAgICAgIDxoND5Nb2R1bGFyaXR5IGFuZCBCcm9hZGVyIEFwcGxpY2F0aW9ucyA8L2g0PlxyXG4gICAgICAgICAgPHA+UmVjb2duaXppbmcgdGhlIGxpbWl0YXRpb25zIG9mIHRoZSBvcmlnaW5hbCBQRUFSIHBsYXNtaWQsIGVzcGVjaWFsbHkgaW4gdGVybXMgb2YgbW9kaWZpY2F0aW9uIGZsZXhpYmlsaXR5IGFuZCBjb21wYXRpYmlsaXR5IHdpdGggQmlvQnJpY2sgc3RhbmRhcmRzLCB3ZSBjcmVhdGVkIGEgbW9yZSBtb2R1bGFyIGFuZCBhY2Nlc3NpYmxlIHN5c3RlbS4gT3VyIG5ldyB2ZXJzaW9uIGluY2x1ZGVzIGFuIG9saWdvbnVjbGVvdGlkZS1iYXNlZCBnb2xkZW4gZ2F0ZSBjbG9uaW5nIHNpdGUsIGVuYWJsaW5nIHF1aWNrIG1vZGlmaWNhdGlvbiBhbmQgYnJvYWRlciBhcHBsaWNhdGlvbnMgdG8gb3RoZXIgZ2Vub21pYyB0YXJnZXRzIGFuZCBwcmltZSBlZGl0b3IgdmFyaWFudHMuIDwvcD5cclxuICAgICAgICAgIDxwPk91ciB1cGRhdGVkIFBFQVIgc3lzdGVtIGlzIG5vdyBjb21wYXRpYmxlIHdpdGggUkZDWzEwMDBdIHN0YW5kYXJkcywgb2ZmZXJpbmcgZnV0dXJlIGlHRU0gdGVhbXMgYSB2ZXJzYXRpbGUgdG9vbCB0aGF0IGNhbiBiZSBhcHBsaWVkIHRvIGEgd2lkZSByYW5nZSBvZiBlZGl0aW5nIHNjZW5hcmlvcy4gVGhpcyBpcyBub3Qgb25seSBhIHNpZ25pZmljYW50IGFkdmFuY2VtZW50IGZvciBDRlRSLXJlbGF0ZWQgcmVzZWFyY2ggYnV0IGFsc28gZm9yIGFueSBnZW5lIGVkaXRpbmcgcHJvamVjdCByZXF1aXJpbmcgaGlnaCBwcmVjaXNpb24gYW5kIHNlbnNpdGl2aXR5LiA8L3A+XHJcbiAgICAgICAgICA8aDQ+Q29udHJpYnV0aW9uIHRvIHRoZSBTeW50aGV0aWMgQmlvbG9neSBDb21tdW5pdHkgPC9oND5cclxuICAgICAgICAgIDxwPldlIGJlbGlldmUgb3VyIHBhcnQgY29udHJpYnV0ZXMgc2lnbmlmaWNhbnRseSB0byB0aGUgc3ludGhldGljIGJpb2xvZ3kgY29tbXVuaXR5IGJ5IHByb3ZpZGluZyBhbiBvcHRpbWl6ZWQgc3lzdGVtIHRoYXQgY2FuIGJlIGVhc2lseSBhZGFwdGVkIHRvIHZhcmlvdXMgZ2VuZSBlZGl0aW5nIGNvbnRleHRzLiBCeSBpbXByb3ZpbmcgdGhlIG1vZHVsYXJpdHkgYW5kIGVhc2Ugb2YgdXNlLCB3ZSBhcmUgY29uZmlkZW50IHRoYXQgdGhpcyBwYXJ0IHdpbGwgYmUgYSB2YWx1YWJsZSB0b29sIGZvciBmdXR1cmUgdGVhbXMgbG9va2luZyB0byBvcHRpbWl6ZSB0aGVpciBvd24gcHJpbWUgZWRpdGluZyBhcHByb2FjaGVzLiA8L3A+XHJcbiAgICAgICAgICA8cD5PdXIgd29yayBoYXMgZGVtb25zdHJhdGVkIHRoYXQgcHJpbWUgZWRpdGluZyBjYW4gYmUgbWFkZSBtb3JlIGVmZmljaWVudCBhbmQgcmVsaWFibGUsIGVzcGVjaWFsbHkgaW4gZGlmZmljdWx0LXRvLWVkaXQgcmVnaW9ucyBsaWtlIENGVFIuIFRocm91Z2ggcmlnb3JvdXMgdGVzdGluZyBhbmQgdmFsaWRhdGlvbiwgd2UgZW5zdXJlZCB0aGF0IG91ciBwYXJ0IG1lZXRzIGhpZ2ggc3RhbmRhcmRzIGZvciBib3RoIGV4cGVyaW1lbnRhbCByZWxpYWJpbGl0eSBhbmQgY29tbXVuaXR5IHV0aWxpdHkuIEFzIGEgcmVzdWx0LCB3ZSBwb3NpdGlvbiBvdXJzZWx2ZXMgYXMgc3Ryb25nIGNhbmRpZGF0ZXMgZm9yIHRoZSA8Yj5CZXN0IE5ldyBCYXNpYyBQYXJ0IEF3YXJkPC9iPi48L3A+XHJcbiAgICAgICAgPC9TZWN0aW9uPlxyXG4gICAgICAgIDxTZWN0aW9uIHRpdGxlPVwiQ29uY2x1c2lvblwiIGlkPVwiQ29uY2x1c2lvblwiPlxyXG4gICAgICAgICAgPHA+SW4gY29uY2x1c2lvbiwgb3VyIHByb2plY3QgZXhlbXBsaWZpZXMgdGhlIGJlc3Qgb2Ygc3ludGhldGljIGJpb2xvZ3ksIGNvbWJpbmluZyBjdXR0aW5nLWVkZ2Ugc2NpZW5jZSB3aXRoIGV0aGljYWwgcmVzcG9uc2liaWxpdHkgYW5kIGEgZGVlcCBcclxuICAgICAgICAgICAgY29tbWl0bWVudCB0byBzb2NpZXRhbCBpbXBhY3QuIEJ5IGludGVncmF0aW5nIGh1bWFuIHByYWN0aWNlcyBpbnRvIGV2ZXJ5IHN0YWdlIG9mIG91ciB3b3JrLCBlbnN1cmluZyB0aGUgaGlnaGVzdCBzdGFuZGFyZHMgb2YgYmlvc2FmZXR5LCBhbmQgY29udHJpYnV0aW5nIFxyXG4gICAgICAgICAgICB2YWx1YWJsZSB0b29scyB0byB0aGUgY29tbXVuaXR5LCB3ZSBoYXZlIHNldCBhIG5ldyBzdGFuZGFyZCBmb3IgaW5ub3ZhdGlvbiBpbiB0aGUgZmllbGQuIE91ciB0aGVyYXBldXRpYyBhcHByb2FjaCBmb3IgQ3lzdGljIEZpYnJvc2lzIGhhcyB0aGUgcG90ZW50aWFsIFxyXG4gICAgICAgICAgICB0byByZXZvbHV0aW9uaXplIHRyZWF0bWVudCBmb3IgdGhpcyBsaWZlLXRocmVhdGVuaW5nIGNvbmRpdGlvbiwgd2hpbGUgb3VyIGNvbnRyaWJ1dGlvbnMgdG8gYmlvc2FmZXR5IGFuZCBwYXJ0IGRldmVsb3BtZW50IHdpbGwgYmVuZWZpdCB0aGUgYnJvYWRlciBcclxuICAgICAgICAgICAgc3ludGhldGljIGJpb2xvZ3kgZWNvc3lzdGVtLiBXZSBhcmUgY29uZmlkZW50IHRoYXQgb3VyIHByb2plY3QgaXMgZGVzZXJ2aW5nIG9mIHJlY29nbml0aW9uIGluIG11bHRpcGxlIGF3YXJkIGNhdGVnb3JpZXMsIGluY2x1ZGluZyA8Yj5CZXN0IFRoZXJhcGV1dGljIFByb2plY3Q8L2I+LCA8Yj5CZXN0IEludGVncmF0ZWQgSHVtYW4gUHJhY3RpY2VzPC9iPiwgPGI+U2FmZXR5IGFuZCBTZWN1cml0eSBBd2FyZDwvYj4sIGFuZCA8Yj5CZXN0IE5ldyBCYXNpYyBQYXJ0PC9iPi4gVGhyb3VnaCBvdXIgd29yaywgd2UgaG9wZSB0byBpbnNwaXJlIGZ1dHVyZSBpR0VNIHRlYW1zIHRvIHB1cnN1ZSBzb2x1dGlvbnMgdGhhdCBhcmUgYm90aCBzY2llbnRpZmljYWxseSBleGNlbGxlbnQgYW5kIHNvY2lhbGx5IHJlc3BvbnNpYmxlLiA8L3A+XHJcbiAgICAgICAgPC9TZWN0aW9uPlxyXG5cclxuICAgICAgPC8+XHJcbiAgICApO1xyXG4gIH1cclxuICAiLCAiaW1wb3J0IEhlYWRlckJveCBmcm9tIFwiLi4vY29tcG9uZW50cy9IZWFkZXJCb3hcIjtcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBKVURHRUgoKSB7XHJcblxyXG4gICAgcmV0dXJuIChcclxuICAgICAgXHJcbiAgICAgIDxIZWFkZXJCb3ggdGl0bGU9XCJKdWRnaW5nXCIgaWQ9XCJqdWdoZWFkXCI+XHJcbiAgICAgICAgXHJcbiAgICAgIDwvSGVhZGVyQm94PlxyXG4gICAgKTtcclxuICB9IiwgImV4cG9ydCBmdW5jdGlvbiBMb3JlbU1lZGl1bSgpe1xyXG4gICAgcmV0dXJuKFxyXG4gICAgICAgIDxwIGNsYXNzTmFtZT1cImxvcmVtXCI+XHJcbiAgICAgICAgICAgIExvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0LCBjb25zZXRldHVyIHNhZGlwc2NpbmcgZWxpdHIsIHNlZCBkaWFtIG5vbnVteSBlaXJtb2QgdGVtcG9yIGludmlkdW50IHV0IGxhYm9yZSBldCBkb2xvcmUgbWFnbmEgYWxpcXV5YW0gZXJhdCwgc2VkIGRpYW0gdm9sdXB0dWEuIEF0IHZlcm8gZW9zIGV0IGFjY3VzYW0gZXQganVzdG8gZHVvIGRvbG9yZXMgZXQgZWEgcmVidW0uIFN0ZXQgY2xpdGEga2FzZCBndWJlcmdyZW4sIG5vIHNlYSB0YWtpbWF0YSBzYW5jdHVzIGVzdCBMb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4gTG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQsIGNvbnNldGV0dXIgc2FkaXBzY2luZyBlbGl0ciwgc2VkIGRpYW0gbm9udW15IGVpcm1vZCB0ZW1wb3IgaW52aWR1bnQgdXQgbGFib3JlIGV0IGRvbG9yZSBtYWduYSBhbGlxdXlhbSBlcmF0LCBzZWQgZGlhbSB2b2x1cHR1YS4gQXQgdmVybyBlb3MgZXQgYWNjdXNhbSBldCBqdXN0byBkdW8gZG9sb3JlcyBldCBlYSByZWJ1bS4gU3RldCBjbGl0YSBrYXNkIGd1YmVyZ3Jlbiwgbm8gc2VhIHRha2ltYXRhIHNhbmN0dXMgZXN0IExvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0LiBMb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldCwgY29uc2V0ZXR1ciBzYWRpcHNjaW5nIGVsaXRyLCBzZWQgZGlhbSBub251bXkgZWlybW9kIHRlbXBvciBpbnZpZHVudCB1dCBsYWJvcmUgZXQgZG9sb3JlIG1hZ25hIGFsaXF1eWFtIGVyYXQsIHNlZCBkaWFtIHZvbHVwdHVhLiBBdCB2ZXJvIGVvcyBldCBhY2N1c2FtIGV0IGp1c3RvIGR1byBkb2xvcmVzIGV0IGVhIHJlYnVtLiBTdGV0IGNsaXRhIGthc2QgZ3ViZXJncmVuLCBubyBzZWEgdGFraW1hdGEgc2FuY3R1cyBlc3QgTG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQuICAgXHJcblxyXG5EdWlzIGF1dGVtIHZlbCBldW0gaXJpdXJlIGRvbG9yIGluIGhlbmRyZXJpdCBpbiB2dWxwdXRhdGUgdmVsaXQgZXNzZSBtb2xlc3RpZSBjb25zZXF1YXQsIHZlbCBpbGx1bSBkb2xvcmUgZXUgZmV1Z2lhdCBudWxsYSBmYWNpbGlzaXMgYXQgdmVybyBlcm9zIGV0IGFjY3Vtc2FuIGV0IGl1c3RvIG9kaW8gZGlnbmlzc2ltIHF1aSBibGFuZGl0IHByYWVzZW50IGx1cHRhdHVtIHp6cmlsIGRlbGVuaXQgYXVndWUgZHVpcyBkb2xvcmUgdGUgZmV1Z2FpdCBudWxsYSBmYWNpbGlzaS4gTG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQsIGNvbnNlY3RldHVlciBhZGlwaXNjaW5nIGVsaXQsIHNlZCBkaWFtIG5vbnVtbXkgbmliaCBldWlzbW9kIHRpbmNpZHVudCB1dCBsYW9yZWV0IGRvbG9yZSBtYWduYSBhbGlxdWFtIGVyYXQgdm9sdXRwYXQuICAgXHJcblxyXG5VdCB3aXNpIGVuaW0gYWQgbWluaW0gdmVuaWFtLCBxdWlzIG5vc3RydWQgZXhlcmNpIHRhdGlvbiB1bGxhbWNvcnBlciBzdXNjaXBpdCBsb2JvcnRpcyBuaXNsIHV0IGFsaXF1aXAgZXggZWEgY29tbW9kbyBjb25zZXF1YXQuIER1aXMgYXV0ZW0gdmVsIGV1bSBpcml1cmUgZG9sb3IgaW4gaGVuZHJlcml0IGluIHZ1bHB1dGF0ZSB2ZWxpdCBlc3NlIG1vbGVzdGllIGNvbnNlcXVhdCwgdmVsIGlsbHVtIGRvbG9yZSBldSBmZXVnaWF0IG51bGxhIGZhY2lsaXNpcyBhdCB2ZXJvIGVyb3MgZXQgYWNjdW1zYW4gZXQgaXVzdG8gb2RpbyBkaWduaXNzaW0gcXVpIGJsYW5kaXQgcHJhZXNlbnQgbHVwdGF0dW0genpyaWwgZGVsZW5pdCBhdWd1ZSBkdWlzIGRvbG9yZSB0ZSBmZXVnYWl0IG51bGxhIGZhY2lsaXNpLiAgIFxyXG5cclxuTmFtIGxpYmVyIHRlbXBvciBjdW0gc29sdXRhIG5vYmlzIGVsZWlmZW5kIG9wdGlvbiBjb25ndWUgbmloaWwgaW1wZXJkaWV0IGRvbWluZyBpZCBxdW9kIG1hemltIHBsYWNlcmF0IGZhY2VyXHJcbjwvcD5cclxuICAgIClcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIExvcmVtU2hvcnQoKXtcclxuICAgIHJldHVybihcclxuICAgICAgICA8cCBjbGFzc05hbWU9XCJsb3JlbVwiPlxyXG4gICAgICAgIExvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0LCBjb25zZXRldHVyIHNhZGlwc2NpbmcgZWxpdHIsIHNlZCBkaWFtIG5vbnVteSBlaXJtb2QgdGVtcG9yIGludmlkdW50IHV0IGxhYm9yZSBldCBkb2xvcmUgbWFnbmEgYWxpcXV5YW0gZXJhdCwgc2VkIGRpYW0gdm9sdXB0dWEuIEF0IHZlcm8gZW9zIGV0IGFjY3VzYW0gZXQganVzdG8gZHVvIGRvbG9yZXMgZXQgZWEgcmVidW0uIFN0ZXQgY2xpdGEga2FzZCBndWJlcmdyZW4sIG5vIHNlYSB0YWtpbWF0YSBzYW5jdHVzIGVzdCBMb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC4gTG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQsIGNvbnNldGV0dXIgc2FkaXBzY2luZyBlbGl0ciwgc2VkIGRpYW0gbm9udW15IGVpcm1vZCB0ZW1wb3IgaW52aWR1bnQgdXQgbGFib3JlIGV0IGRvbG9yZSBtYWduYSBhbGlxdXlhbSBlcmF0LCBzZWQgZGlhbSB2b2x1cHR1YS4gQXQgdmVybyBlb3MgZXQgYWNjdXNhbSBldCBqdXN0byBkdW8gZG9sb3JlcyBldCBlYSByZWJ1bS4gU3RldCBjbGl0YSBrYXNkIGd1YmVyZ3Jlbiwgbm8gc2VhIHRha2ltYXRhIHNhbmN0dXMgZXN0IExvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0LlxyXG4gICAgICAgIDwvcD5cclxuICAgIClcclxufSIsICJcclxuaW1wb3J0IHsgQmx1ZUluZm9Cb3gsIEJ1bGJCb3gsIEluZm9Cb3gsIE5vdGVCb3gsIFFhQm94LCBXYXJuQm94IH0gZnJvbSBcIi4uL2NvbXBvbmVudHMvQm94ZXNcIjtcclxuaW1wb3J0IHsgQkZITW9yZUJ1dHRvbiwgQnV0dG9uT25lIH0gZnJvbSBcIi4uL2NvbXBvbmVudHMvQnV0dG9uc1wiO1xyXG5pbXBvcnQgQ29sbGFwc2libGUgZnJvbSBcIi4uL2NvbXBvbmVudHMvQ29sbGFwc2libGVcIjtcclxuaW1wb3J0IFBpZUNoYXJ0LCB7IEhvd09mdGVuVHJlYXRtZW50YXRpZW50cywgTW9yZUluZm9PblRoZXJhcHlCb3RoLCBPcGVuVG9HZW5lVGhlcmFweWF0aWVudHMgfSBmcm9tIFwiLi4vY29tcG9uZW50cy9HcmFwaFwiO1xyXG5pbXBvcnQgSDEsIHsgSDIsIEgzLCBIaGlnaGxpZ2h0LCBIaG9wcCwgSHNtb2tlLCBIc3BvaWxlciwgSHdhdmUgfSBmcm9tIFwiLi4vY29tcG9uZW50cy9IZWFkaW5nc1wiO1xyXG5pbXBvcnQgeyBMb3JlbU1lZGl1bSwgTG9yZW1TaG9ydCB9IGZyb20gXCIuLi9jb21wb25lbnRzL0xvcmVtaXBzdW1cIjtcclxuaW1wb3J0IFNpbXBsZVNsaWRlciBmcm9tIFwiLi4vY29tcG9uZW50cy9TbGlkZXJcIjtcclxuaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcclxuaW1wb3J0IHsgQmFyLCBEb3VnaG51dCwgUG9sYXJBcmVhIH0gZnJvbSAncmVhY3QtY2hhcnRqcy0yJztcclxuaW1wb3J0IHsgQ2hhcnQgYXMgQ2hhcnRKUywgVG9vbHRpcCwgTGVnZW5kLCBCYXJFbGVtZW50LCBDYXRlZ29yeVNjYWxlLCBMaW5lYXJTY2FsZSwgVGl0bGUsIFJhZGlhbExpbmVhclNjYWxlIH0gZnJvbSAnY2hhcnQuanMnO1xyXG4vKiBpbXBvcnQgUHJvdGVpblZpZXdlciBmcm9tICcuLi9jb21wb25lbnRzL0ZhbnpvcnZpZXdlci50c3gnOyAqL1xyXG5pbXBvcnQgeyB1c2VUYWJOYXZpZ2F0aW9uIH0gZnJvbSBcIi4uL3V0aWxzL1RhYk5hdmlnYXRpb25cIjtcclxuXHJcblxyXG5DaGFydEpTLnJlZ2lzdGVyKFxyXG4gICAgQ2F0ZWdvcnlTY2FsZSxcclxuICAgIFJhZGlhbExpbmVhclNjYWxlLFxyXG4gICAgTGluZWFyU2NhbGUsXHJcbiAgICBCYXJFbGVtZW50LFxyXG4gICAgVGl0bGUsXHJcbiAgICBUb29sdGlwLFxyXG4gICAgTGVnZW5kXHJcbiAgKTtcclxuICBcclxuZXhwb3J0IGZ1bmN0aW9uIEV4YW1wbGUoKSB7XHJcbiAgdXNlVGFiTmF2aWdhdGlvbigpO1xyXG4gICAgcmV0dXJuIChcclxuICAgICAgPD5cclxuXHJcbiAgICBcclxuey8qICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29udGFpbmVyXCI+XHJcbiAgICAgICAgICAgIDxoMT5Qcm90ZWluIFN0cnVjdHVyZSBWaWV3ZXI8L2gxPlxyXG4gICAgICAgICAgICA8UHJvdGVpblZpZXdlci8+XHJcbiAgICAgICAgICA8L2Rpdj4gKi99XHJcbiAgICAgICBcclxuICAgICAgPGgxPiBIZXJlIHlvdSBjYW4gc2VlIHdoYXQgd2UgY2FuIHVzZTwvaDE+XHJcbiAgICAgIDxoMj5Db2xsYXBpc2JsZXM8L2gyPlxyXG4gICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvd1wiPlxyXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICAgIDxkZXRhaWxzPlxyXG4gICAgICAgICAgICAgICAgPHN1bW1hcnk+RXhwYW5kIG1lPC9zdW1tYXJ5PlxyXG4gICAgICAgICAgICAgICAgPExvcmVtTWVkaXVtPjwvTG9yZW1NZWRpdW0+XHJcbiAgICAgICAgICAgIDwvZGV0YWlscz5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICA8Q29sbGFwc2libGUgdGl0bGU9XCJUaXRsZVwiIGlkPVwiY29sbGFwc2libGVcIj4gPExvcmVtTWVkaXVtPjwvTG9yZW1NZWRpdW0+PC9Db2xsYXBzaWJsZT5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8SG93T2Z0ZW5UcmVhdG1lbnRhdGllbnRzLz5cclxuICAgICAgICA8T3BlblRvR2VuZVRoZXJhcHlhdGllbnRzLz5cclxuICAgICAgICA8TW9yZUluZm9PblRoZXJhcHlCb3RoLz5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8aDI+Qm94ZXM8L2gyPlxyXG4gICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvd1wiPlxyXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICAgIDxJbmZvQm94IHRpdGxlPVwiSW5mb0JveFwiIGlkPVwiYm94aWRcIj48TG9yZW1TaG9ydD48L0xvcmVtU2hvcnQ+PC9JbmZvQm94PlxyXG4gICAgICAgICAgICA8Qmx1ZUluZm9Cb3ggdGl0bGU9XCJCbHVlSW5mb0JveFwiPjxMb3JlbVNob3J0PjwvTG9yZW1TaG9ydD48L0JsdWVJbmZvQm94PlxyXG4gICAgICAgICAgICA8Tm90ZUJveCB0aXRsZT1cIk5vdGVCb3hcIiBpZD1cIm5vdGVib3hcIj48TG9yZW1TaG9ydD48L0xvcmVtU2hvcnQ+PC9Ob3RlQm94PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICAgIDxXYXJuQm94IHRpdGxlPVwiV2FybkJveFwiPjxMb3JlbVNob3J0PjwvTG9yZW1TaG9ydD48L1dhcm5Cb3g+XHJcbiAgICAgICAgICAgIDxCdWxiQm94IHRpdGxlPVwiQnVsYkJveFwiPjxMb3JlbVNob3J0PjwvTG9yZW1TaG9ydD48L0J1bGJCb3g+XHJcbiAgICAgICAgICAgIDxRYUJveCBcclxuICAgICAgICAgICAgcT1cIkEgcXVlc3Rpb24gb3Igc2VudGVuY2UuXCIgXHJcbiAgICAgICAgICAgIGE9XCJBbiBhbnN3ZXIgb3Igc2VudGVuY2VcIi8+IFxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPGgyPkhlYWRpbmdzPC9oMj5cclxuICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3dcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgIDxIMSB0ZXh0PVwiSDFcIiBpZD1cInRleHRcIiAvPiBcclxuICAgICAgICA8SDIgdGV4dD1cIkgyXCIgaWQ9XCJ0ZXh0XCIgLz5cclxuICAgICAgICA8SDMgdGV4dD1cIkgzXCIgaWQ9XCJ0ZXh0XCIgLz5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgIDxIc21va2UgdGV4dD1cIkhzbW9rZVwiIGlkPVwidGV4dFwiIC8+IFxyXG4gICAgICAgIDxIaG9wcCB0ZXh0PVwiSGhvcHBcIiBpZD1cInRleHRcIiAvPiBcclxuICAgICAgICA8SGhpZ2hsaWdodD4gSGlnaGxpZ2h0PC9IaGlnaGxpZ2h0PiAgICAgICAgICAgICAgXHJcbiAgICAgICAgPEhzcG9pbGVyPiAgSHNwb2lsZXIgPC9Ic3BvaWxlcj5cclxuICAgICAgICA8SHdhdmUgdGV4dD1cIkh3YXZlXCIgaWQ9XCJ0ZXh0XCIgLz4gXHJcbiAgICAgICAgPGEgaHJlZj1cIiNcIiBjbGFzc05hbWU9XCJ1bmRlcmxpbmUtLW1hZ2ljYWxcIj5QcmVDeXNlPC9hPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPGgyPkJ1dHRvbnM8L2gyPlxyXG4gICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvd1wiPlxyXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICAgICAgPEJ1dHRvbk9uZSB0ZXh0PVwiVGhlIFB1YmxpY1wiIG9wZW49XCJwdWJzXCIgb3BlbmNsYXNzPVwic3ViY3ljbGV0YWJcIj48L0J1dHRvbk9uZT5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgICAgPEJGSE1vcmVCdXR0b24gaXQ9XCJpZCBvZiBwYXJ0IHRvIGJlIG9wZW5lZFwiIC8+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICA8YnV0dG9uIGNsYXNzTmFtZT1cInRhYmxpbmtzIFBhdGllbnQgaHAtbW9yZS1idXR0b25cIiA+IFNvbWV0aGluZyA8L2J1dHRvbj5cclxuIFxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPGgyPkdyYXBoczwvaDI+XHJcbiAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93XCI+XHJcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgICAgPFBpZUNoYXJ0PjwvUGllQ2hhcnQ+XHJcbiAgICAgICAgICAgIDxEb3VnaG51dENoYXJ0PjwvRG91Z2hudXRDaGFydD5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICA8QmFyQ2hhcnRUd29TZXRzPjwvQmFyQ2hhcnRUd29TZXRzPlxyXG4gICAgICAgICAgICA8QmFyQ2hhcnQ+PC9CYXJDaGFydD5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICA8QmFyQ2hhcnRWZXJ0aWNhbD48L0JhckNoYXJ0VmVydGljYWw+XHJcbiAgICAgICAgICAgIDxQb2xhckNoYXJ0PjwvUG9sYXJDaGFydD5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxoMj5Cb3hlczwvaDI+XHJcbiAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93XCI+XHJcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgICAgXHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgICAgXHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgPGgzIGNsYXNzTmFtZT1cImV4YW1wbGVcIj5FeGVyY2lzZXM8L2gzPlxyXG4gICAgICAgICAgICA8aT48aDY+QnkgWW91ciBuYW1lPC9oNj48L2k+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZXhhbXBsZS1leGVyY2lzZVwiPlxyXG4gICAgICAgICAgICAgICAgPHA+IEFsbCBjb21wb25lbnRzIHNob3VsZCBiZSBpbiB0aGlzIGZpbGUuIFRoZSBleHRyYSBjc3MgaGFzIHRvIGJlIHB1dCBpbnRvIGV4YXBtbGUuY3NzLiBUdXJuIHRvIExpbGlhbmEgaWYgeW91IG5lZWQgb3Igd2FudCBhIHNjc3MgZmlsZSwgdG9vLjwvcD5cclxuICAgICAgICAgICAgICAgIDxwPlRoZSBjb2RlIHlvdSBjcmVhdGUgc2hvdWxkIGJlIGluIHRoZSByZXNwZWN0aXZlIGNvbHVtbnMgd2hlcmUgdGhlIGFzc2lnbm1lbnRzIGFyZSwgaWYgbm90IHN0YXRlZCBvdGhlcndpc2UuIDwvcD5cclxuICAgICAgICAgICAgICAgIDxwPldyaXRlIGRvd24gaG93IHlvdSBkaWQgaXQgaW4gdGhlIGRvY3VtZW50YXRpb24tYm94IGFzIGEgZG9jdW1lbnRhdGlvbiBmb3IgdGhlIG90aGVycy4gVXNlIHRoZSBEb2N1LUJvYyBjb21wb25lbnQgZm9yIHRoYXQuWW91IGhhdmUgdG8gYWRkIGl0IHRvIHlvdXIgYXhlcmNpc2UgYmxvY2sgbWFudWFsbHkuIDwvcD5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxEb2N1Qm94PlxyXG4gICAgICAgICAgICAgICAgPHA+SSB3cm90ZSBhIHRleHQuPC9wPlxyXG4gICAgICAgICAgICA8L0RvY3VCb3g+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGhyLz5cclxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj48aDQ+TGlzdHM8L2g0PjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wtMVwiPiA8ZGl2IGNsYXNzTmFtZT1cImV4YW1wbGUtZWFzeS10YWdcIj5FYXN5PC9kaXY+PC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8aT48aDY+QnkgPC9oNj48L2k+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZXhhbXBsZS1leGVyY2lzZVwiPlxyXG4gICAgICAgICAgICAgICAgPHA+YS4gQ3JlYXRlIGEgbnVtYmVyZWQgbGlzdCBvZiBmcnVpdHMuIEZpdmUgaXRlbXMgYXJlIGVub3VnaC4gVXNlIHRoZSBIVE1MIGxpc3QgZWxlbWVudC48L3A+IFxyXG4gICAgICAgICAgICAgICAgPHA+Yi4gQ3JlYXRlIGEgc2Vjb25kIGNvbHVtbiBuZXh0IHRvIHRoZSBvbmUgd2l0aCB0aGUgZnJ1aXQgbGlzdCB0aGF0IGNvbnRhaW5zIGEgYnV0dG9uLiA8L3A+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxoci8+XHJcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvdyBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+PGg0PlBpY3R1cmU8L2g0PjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wtMVwiPjxkaXYgY2xhc3NOYW1lPVwiZXhhbXBsZS1lYXN5LXRhZ1wiPkVhc3k8L2Rpdj48L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxpPjxoNj5CeSA8L2g2PjwvaT5cclxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJleGFtcGxlLWV4ZXJjaXNlXCI+XHJcbiAgICAgICAgICAgICAgICA8cD5hLiBJbnNlcnQgYSBjZW50ZXJlZCBwaWN0dXJlIG9mIFNpbmFuIGhlcmUuIEl0IHNob3VsZCBiZSBoYWxmIGFzIHdpZGUgYXMgdGhlIGNvbHVtbiBhbmQgaGF2ZSBhIGRvdHRldCBmcmFtZSBpbiBvdXIgcHVycGxlLjwvcD5cclxuICAgICAgICAgICAgICAgIDxwPmIuIFdoZW4gaG92ZXJpbmcgb3ZlciB0aGUgcGljdHVyZSwgaXQgc2hvdWxkIHR1cm4gYmxhY2sgYW5kIHdoaXRlLiA8L3A+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxoci8+XHJcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvdyBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+PGg0PlBpY3R1cmUgU2xpZGVyPC9oND48L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sLTFcIj48ZGl2IGNsYXNzTmFtZT1cImV4YW1wbGUtZWFzeS10YWdcIj5FYXN5PC9kaXY+PC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8aT48aDY+QnkgPC9oNj48L2k+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZXhhbXBsZS1leGVyY2lzZVwiPjwvZGl2PlxyXG4gICAgICAgICAgICA8cD4gQWRkIGEgZHVtbXkgc3BvbnNvciB0byB0aGlzIHNsaWRlci48L3A+XHJcbiAgICAgICAgICAgIDxTaW1wbGVTbGlkZXI+XHJcbiAgICAgICAgICAgIDxhIGNsYXNzTmFtZT1cInNwb25zb3ItY29udGFpbmVyXCIgaHJlZj1cImh0dHBzOi8vYnRzLWV2LmRlL1wiPlxyXG4gICAgICAgICAgICAgIDxpbWcgY2xhc3NOYW1lPVwiaW1nLXNwb25zb3Igc2lkZS1tYXJnaW5zLWF1dG9cIiBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9zcG9uc29ycy9idHMucG5nXCIvPlxyXG4gICAgICAgICAgICA8L2E+IFxyXG4gICAgICAgICAgICA8YSBjbGFzc05hbWU9XCJzcG9uc29yLWNvbnRhaW5lclwiIGhyZWY9XCJodHRwczovL3d3dy51bmktYmllbGVmZWxkLmRlL2Zha3VsdGFldGVuL3RlY2huaXNjaGUtZmFrdWx0YWV0L2FyYmVpdHNncnVwcGVuL211bHRpc2NhbGUtYmlvZW5naW5lZXJpbmcvY2FtcHVzYnJhdWVyZWkvXCI+XHJcbiAgICAgICAgICAgICAgPGltZyBjbGFzc05hbWU9XCJpbWctc3BvbnNvciBzaWRlLW1hcmdpbnMtYXV0b1wiIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Nwb25zb3JzL2NhbXB1cy1icmF1ZXJlaS1oaW50ZXJsZWd0LmpwZWdcIi8+XHJcbiAgICAgICAgICAgIDwvYT5cclxuICAgICAgICAgICAgPGEgY2xhc3NOYW1lPVwic3BvbnNvci1jb250YWluZXJcIiBocmVmPVwid3d3LmlkdGRuYS5jb21cIj5cclxuICAgICAgICAgICAgICA8aW1nIGNsYXNzTmFtZT1cImltZy1zcG9uc29yIHNpZGUtbWFyZ2lucy1hdXRvXCIgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvc3BvbnNvcnMvaWR0LWxvZ28ucG5nXCI+PC9pbWc+XHJcbiAgICAgICAgICAgIDwvYT5cclxuICAgICAgICAgICAgPGEgY2xhc3NOYW1lPVwic3BvbnNvci1jb250YWluZXJcIiBocmVmPVwiaHR0cHM6Ly93d3cuY2ViaXRlYy51bmktYmllbGVmZWxkLmRlL1wiPlxyXG4gICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzTmFtZT1cImltZy1zcG9uc29yIHNpZGUtbWFyZ2lucy1hdXRvXCIgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvc3BvbnNvcnMvY2ViaXRlYy1mYXJiZS5wbmdcIi8+XHJcbiAgICAgICAgICAgIDwvYT5cclxuICAgICAgICAgIDwvU2ltcGxlU2xpZGVyPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxoci8+XHJcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvdyBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+PGg0PkV4ZXJjaXNlIGJveDwvaDQ+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbC0xXCI+PGRpdiBjbGFzc05hbWU9XCJleGFtcGxlLW1lZGl1bS10YWdcIj5NZWRpdW08L2Rpdj48L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxpPjxoNj5CeSA8L2g2PjwvaT5cclxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJleGFtcGxlLWV4ZXJjaXNlXCI+XHJcbiAgICAgICAgICAgICAgICA8cD5DcmVhdGUgYSBib3ggdGhhdCBkaWZmZXJzIGluIGxvb2tzIGZyb20gdGhlIHJlc3Qgb2YgdGhlIHNpdGUgYW5kIGVtcGhhemlzZXMgaXQgY29udGFpbnMgYW4gYXNzaWdubWVudC4gPC9wPlxyXG4gICAgICAgICAgICAgICAgPHA+QXJjaGlldmUgdGhpcyBlZmZlY3QgYnkgdXNpbmcgYmFja2dyb3VuZCwgc2hhZG93LCBib3JkZXIgYW5kL29yIG90aGVyIGNzcyBlZmZlY3RzIG9uIHRoZSBjbGFzcyBcImV4YW1wbGUtZXhlcmNpc2VcIi4gVGhlIGJveCBzaG91bGQgYmUgYWVzdGV0aWNhbGx5IHBsZWFzaW5nIHVubGlrZSB0aGUgZG9jdW1lbnRhdGlvbiBib3guIDwvcD5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGhyLz5cclxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj48aDQ+UERGPC9oND48L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sLTFcIj48ZGl2IGNsYXNzTmFtZT1cImV4YW1wbGUtbWVkaXVtLXRhZ1wiPk1lZGl1bTwvZGl2PjwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGk+PGg2PkJ5IDwvaDY+PC9pPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImV4YW1wbGUtZXhlcmNpc2VcIj48L2Rpdj5cclxuICAgICAgICAgICAgPHA+YS4gSW5zZXJ0IGEgcGRmIHVzaW5nIG91ciBQREYgY29tcG9uZW50LjwvcD5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8aHIvPlxyXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sIGV4ZXJjaXNlXCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj48aDQ+IFNtYXJ0cGhvbmUgY29tcGF0aWJpbGl0eTwvaDQ+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbC0xIFwiPjxkaXYgY2xhc3NOYW1lPVwiZXhhbXBsZS1tZWRpdW0tdGFnXCI+TWVkaXVtPC9kaXY+PC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8aT48aDY+QnkgPC9oNj48L2k+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZXhhbXBsZS1leGVyY2lzZVwiPlxyXG4gICAgICAgICAgICA8cD4gQ3JlYXRlIGEgc2ltcGxlIGJveCB0aGF0IGhhcyBhIGRpZmZlcmVudCBiYWNrZ3JvdW5kIGNvbG9yIHdoZW4gdGhlIHdlYnNpdGUgaXMgdXNlZCBvbiBhIHNtYXJ0cGhvbmUgKHNjcmVlbiB3aWR0aCA3NjhweCBvciBzbWFsbGVyKS4gIDwvcD5cclxuICAgICAgICAgICAgPHA+IFVzZSBAbWVkaWEgcnVsZXMgZm9yIHRoYXQuPC9wPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8aHIvPiBcclxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbCBleGVyY2lzZVwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvdyBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+PGg0PkNvbGxhcHNpYmxlPC9oND48L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sLTEgXCI+PGRpdiBjbGFzc05hbWU9XCJleGFtcGxlLW1lZGl1bS10YWdcIj5NZWRpdW08L2Rpdj48L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxpPjxoNj5CeSA8L2g2PjwvaT5cclxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJleGFtcGxlLWV4ZXJjaXNlXCI+XHJcbiAgICAgICAgICAgIDxwPiBhLiBVc2Ugb3VyIENvbGxhcHNpYmxlIGNvbXBvbmVudCB0byBjcmVhdGUgYSBjb2xsYXBzaWJsZS48L3A+XHJcbiAgICAgICAgICAgIDxwPiBiLiBUaGUgY29sbGFwc2libGUgc2hvdWxkIGNvbnRhaW4gdGhyZWUgY2lyY2xlcyB3aXRoIGEgZmV3IHdvcmRzIGluIGEgcm93IChvdXIgQ2lyY2xlIGNvbXBvbmVudCkgPC9wPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8aHIvPiBcclxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvdyBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+PGg0PkhlYWRlcjwvaDQ+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbC0xXCI+PGRpdiBjbGFzc05hbWU9XCJleGFtcGxlLWFkdmFuY2VkLXRhZ1wiPkFkdmFuY2VkPC9kaXY+PC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8aT48aDY+QnkgPC9oNj48L2k+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZXhhbXBsZS1leGVyY2lzZVwiPlxyXG4gICAgICAgICAgICA8cD5hLiBDcmVhdGUgYSBoZWFkZXIgZmlsZSBmb3IgdGhpcyBwYWdlLiBJdCBoYXMgdG8gYmUgdmlzaWJsZSBhbmQgdGhlcmVmb3JlIGJlIGFkZGVkIHRvIHBhZ2VzLnRzPC9wPlxyXG4gICAgICAgICAgICA8cD5iLiBBZGQgdGhpcyBwYWdlIHRvIHRoZSBuYXZiYXIgdW5kZXIgXCJDb250cnVidXRpb25cIi4gPC9wPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8aHIvPlxyXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sIGV4ZXJjaXNlXCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj48aDQ+Q2hhcnQgd2l0aCBWaWN0b3J5PC9oND48L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sLTEgXCI+PGRpdiBjbGFzc05hbWU9XCJleGFtcGxlLWFkdmFuY2VkLXRhZ1wiPkFkdmFuY2VkPC9kaXY+PC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8aT48aDY+QnkgPC9oNj48L2k+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZXhhbXBsZS1leGVyY2lzZVwiPlxyXG4gICAgICAgICAgICA8cD5DcmVhdGUgYSBzaW1wbGUgYmFyIENoYXJ0IHdpdGggUmVhY3QtQ2hhcnRzLCB1c2luZyB0aGVpciA8YSBocmVmPVwiaHR0cHM6Ly9tdWkuY29tL3gvcmVhY3QtY2hhcnRzL1wiPiBkb2N1bWVudGF0aW9uPC9hPiAgYW5kIGR1bW15IGRhdGEgb2YgeW91ciBjaG9pY2UuIDwvcD5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGhyLz5cclxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbCBleGVyY2lzZVwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvdyBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+PGg0PiBTaW1wbGUgUmVhY3QgQ29tcG9uZW50PC9oND48L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sLTEgXCI+PGRpdiBjbGFzc05hbWU9XCJleGFtcGxlLWFkdmFuY2VkLXRhZ1wiPkFkdmFuY2VkPC9kaXY+PC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8aT48aDY+QnkgPC9oNj48L2k+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZXhhbXBsZS1leGVyY2lzZVwiPlxyXG4gICAgICAgICAgICA8cD4gQ3JlYXRlIGEgcmVhY3QgY29tcG9uZW50IHRoYXQgdGFrZXMgSFRNTCwgYSBsaW5rIHRvIGEgcGljdHVyZSwgYSBudW1iZXIgYW5kIGEgd29yZCBhcyBpbnB1dCBhbmQgcmV0dXJuIHRoZSBjb2RlIGluIGEgYm94IHdpdGggdGhlIHdvcmQgYXMgYSBoZWFkZXIuIFRoZSBwaWN0dXJlIGFuZCBvdGhlciBjb2RlIHNob3VsZCBiZSBpbiB0d28gY29sdW1ucyBuZXh0IHRvIGVhY2ggb3RoZXIsIHVuZGVyIHRoZSBoZWFkZXIuIFRoZSBudW1iZXIgc2hvdWxkIGJlIG11bHRpcGxpZWQgYnkgMiBhbmQgdGhlbiBzaG93biBzb21ld2hlcmUgd2l0aCB0aGUgb3RoZXIgcGFydHMuPC9wPlxyXG4gICAgICAgICAgICA8cD4gU2VlIERvY3VCb3ggY29tcG9uZW50LiAgPC9wPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8aHIvPiAgXHJcbiAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sIGV4ZXJjaXNlXCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicm93IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj48aDQ+IDwvaDQ+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbC0xIFwiPjxkaXYgY2xhc3NOYW1lPVwiZXhhbXBsZS1lYXN5LXRhZ1wiPjwvZGl2PjwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGk+PGg2PkJ5IDwvaDY+PC9pPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImV4YW1wbGUtZXhlcmNpc2VcIj5cclxuICAgICAgICAgICAgPHA+IDwvcD5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGhyLz4gXHJcblxyXG4gICAgICAgIFxyXG5cclxuXHJcbiAgICAgIDwvPlxyXG4gICAgKTtcclxuICB9XHJcblxyXG5cclxuICBleHBvcnQgZnVuY3Rpb24gRG9jdUJveCh7Y2hpbGRyZW59OiB7Y2hpbGRyZW46IFJlYWN0LlJlYWN0Tm9kZX0pe1xyXG4gICAgcmV0dXJuKFxyXG4gICAgICAgIDw+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZXhhbXBsZS1kb2N1XCI+XHJcbiAgICAgICAgICAgIDxoNT5Eb2N1bWVudGF0aW9uOiA8L2g1PlxyXG4gICAgICAgICAgICA8ZGl2PlxyXG4gICAgICAgICAgICAgICAge2NoaWxkcmVufVxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC8+XHJcbiAgICApXHJcbiAgfVxyXG4gIFxyXG5cclxuICBjb25zdCBCYXJDaGFydFR3b1NldHM6IFJlYWN0LkZDID0gKCkgPT4ge1xyXG4gICAgY29uc3QgbGFiZWxzID0gWydKYW51YXJ5JywgJ0ZlYnJ1YXJ5JywgJ01hcmNoJywgJ0FwcmlsJywgJ01heScsICdKdW5lJywgJ0p1bHknXTtcclxuXHJcbiAgICBjb25zdCBkYXRhID0ge1xyXG4gICAgICAgIGxhYmVscyxcclxuICAgICAgICBkYXRhc2V0czogW1xyXG4gICAgICAgICAge1xyXG4gICAgICAgICAgICBsYWJlbDogJ0RhdGFzZXQgMScsXHJcbiAgICAgICAgICAgIGRhdGE6IFtcclxuICAgICAgICAgICAgICAgIDAuMDA0ODU4MDAwMDAwMDAwMDAxLFxyXG4gICAgICAgICAgICAgICAgMC4wMDA4ODU5OTk5OTk5OTk5OTk3LFxyXG4gICAgICAgICAgICAgICAgMC43MjY0MTc5OTk5OTk5OTcyLFxyXG4gICAgICAgICAgICAgICAgMC4yMzg0MTU5OTk5OTk5OTk1LFxyXG4gICAgICAgICAgICAgICAgMC4wMDM3MDMsXHJcbiAgICAgICAgICAgICAgICAwLjIzODQxNTk5OTk5OTk5OTUsXHJcbiAgICAgICAgICAgICAgICAwLjAwMzcwM1xyXG4gICAgICAgICAgICAgIF0sXHJcbiAgICAgICAgICAgIGJhY2tncm91bmRDb2xvcjogJ3JnYmEoMjU1LCA5OSwgMTMyLCAwLjUpJyxcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICB7XHJcbiAgICAgICAgICAgIGxhYmVsOiAnRGF0YXNldCAyJyxcclxuICAgICAgICAgICAgZGF0YTogW1xyXG4gICAgICAgICAgICAgICAgMC4wMDQ4NTgwMDAwMDAwMDAwMDEsXHJcbiAgICAgICAgICAgICAgICAwLjAwMDg4NTk5OTk5OTk5OTk5OTcsXHJcbiAgICAgICAgICAgICAgICAwLjcyNjQxNzk5OTk5OTk5NzIsXHJcbiAgICAgICAgICAgICAgICAwLjIzODQxNTk5OTk5OTk5OTUsXHJcbiAgICAgICAgICAgICAgICAwLjAwMzcwMyxcclxuICAgICAgICAgICAgICAgIDAuMjM4NDE1OTk5OTk5OTk5NSxcclxuICAgICAgICAgICAgICAgIDAuMDAzNzAzXHJcbiAgICAgICAgICAgICAgXSxcclxuICAgICAgICAgICAgYmFja2dyb3VuZENvbG9yOiAncmdiYSg1MywgMTYyLCAyMzUsIDAuNSknLFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICBdLFxyXG4gICAgICB9O1xyXG4gICAgY29uc3Qgb3B0aW9ucyA9IHtcclxuICAgICAgICByZXNwb25zaXZlOiB0cnVlLFxyXG4gICAgICAgIHBsdWdpbnM6IHtcclxuICAgICAgICAgIGxlZ2VuZDoge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogJ3RvcCcgYXMgY29uc3QsXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgICAgdGl0bGU6IHtcclxuICAgICAgICAgICAgZGlzcGxheTogdHJ1ZSxcclxuICAgICAgICAgICAgdGV4dDogJ0JhckNoYXJ0VHdvU2V0cycsXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgIH0sXHJcbiAgICAgIH07XHJcbiAgXHJcbiAgICByZXR1cm4gKFxyXG4gICAgICA8ZGl2IGNsYXNzTmFtZT1cImJhci1jaGFydC1jb250YWluZXJcIj5cclxuICAgICAgICA8QmFyIG9wdGlvbnM9e29wdGlvbnN9IGRhdGE9e2RhdGF9IC8+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICApO1xyXG4gIH07XHJcblxyXG4gIGNvbnN0IEJhckNoYXJ0OiBSZWFjdC5GQyA9ICgpID0+IHtcclxuICAgIGNvbnN0IGxhYmVscyA9IFsnSmFudWFyeScsICdGZWJydWFyeScsICdNYXJjaCcsICdBcHJpbCcsICdNYXknLCAnSnVuZScsICdKdWx5J107XHJcblxyXG4gICAgY29uc3QgZGF0YSA9IHtcclxuICAgICAgICBsYWJlbHMsXHJcbiAgICAgICAgZGF0YXNldHM6IFtcclxuICAgICAgICAgIHtcclxuICAgICAgICAgICAgbGFiZWw6ICdEYXRhc2V0IDEnLFxyXG4gICAgICAgICAgICBkYXRhOiBbXHJcbiAgICAgICAgICAgICAgICAwLjAwNDg1ODAwMDAwMDAwMDAwMSxcclxuICAgICAgICAgICAgICAgIDAuMDAwODg1OTk5OTk5OTk5OTk5NyxcclxuICAgICAgICAgICAgICAgIDAuNzI2NDE3OTk5OTk5OTk3MixcclxuICAgICAgICAgICAgICAgIDAuMjM4NDE1OTk5OTk5OTk5NSxcclxuICAgICAgICAgICAgICAgIDAuMDAzNzAzLFxyXG4gICAgICAgICAgICAgICAgMC4yMzg0MTU5OTk5OTk5OTk1LFxyXG4gICAgICAgICAgICAgICAgMC4wMDM3MDNcclxuICAgICAgICAgICAgICBdLFxyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kQ29sb3I6ICdyZ2JhKDI1NSwgOTksIDEzMiwgMC41KScsXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgIF0sXHJcbiAgICAgIH07XHJcbiAgICBjb25zdCBvcHRpb25zID0ge1xyXG4gICAgICAgIHJlc3BvbnNpdmU6IHRydWUsXHJcbiAgICAgICAgcGx1Z2luczoge1xyXG4gICAgICAgICAgbGVnZW5kOiB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiAndG9wJyBhcyBjb25zdCxcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICB0aXRsZToge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiB0cnVlLFxyXG4gICAgICAgICAgICB0ZXh0OiAnQmFyQ2hhcnRPbmVTZXQnLFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICB9LFxyXG4gICAgICB9O1xyXG4gIFxyXG4gICAgcmV0dXJuIChcclxuICAgICAgPGRpdiBjbGFzc05hbWU9XCJiYXItY2hhcnQtY29udGFpbmVyXCI+XHJcbiAgICAgICAgPEJhciBvcHRpb25zPXtvcHRpb25zfSBkYXRhPXtkYXRhfSAvPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgKTtcclxuICB9O1xyXG5cclxuICBjb25zdCBCYXJDaGFydFZlcnRpY2FsOiBSZWFjdC5GQyA9ICgpID0+IHtcclxuICAgIGNvbnN0IGxhYmVscyA9IFsnSmFudWFyeScsICdGZWJydWFyeScsICdNYXJjaCcsICdBcHJpbCcsICdNYXknLCAnSnVuZScsICdKdWx5J107XHJcblxyXG4gICAgY29uc3QgZGF0YSA9IHtcclxuICAgICAgICBsYWJlbHMsXHJcbiAgICAgICAgZGF0YXNldHM6IFt7XHJcbiAgICAgICAgICAgIGF4aXM6ICd5JyxcclxuICAgICAgICAgICAgbGFiZWw6ICdNeSBGaXJzdCBEYXRhc2V0JyxcclxuICAgICAgICAgICAgZGF0YTogWzY1LCA1OSwgODAsIDgxLCA1NiwgNTUsIDQwXSxcclxuICAgICAgICAgICAgZmlsbDogZmFsc2UsXHJcbiAgICAgICAgICAgIGJhY2tncm91bmRDb2xvcjogW1xyXG4gICAgICAgICAgICAgICdyZ2JhKDI1NSwgOTksIDEzMiwgMC4yKScsXHJcbiAgICAgICAgICAgICAgJ3JnYmEoMjU1LCAxNTksIDY0LCAwLjIpJyxcclxuICAgICAgICAgICAgICAncmdiYSgyNTUsIDIwNSwgODYsIDAuMiknLFxyXG4gICAgICAgICAgICAgICdyZ2JhKDc1LCAxOTIsIDE5MiwgMC4yKScsXHJcbiAgICAgICAgICAgICAgJ3JnYmEoNTQsIDE2MiwgMjM1LCAwLjIpJyxcclxuICAgICAgICAgICAgICAncmdiYSgxNTMsIDEwMiwgMjU1LCAwLjIpJyxcclxuICAgICAgICAgICAgICAncmdiYSgyMDEsIDIwMywgMjA3LCAwLjIpJ1xyXG4gICAgICAgICAgICBdLFxyXG4gICAgICAgICAgICBib3JkZXJDb2xvcjogW1xyXG4gICAgICAgICAgICAgICAgJ3JnYigyNTUsIDk5LCAxMzIpJyxcclxuICAgICAgICAgICAgICAgICdyZ2IoMjU1LCAxNTksIDY0KScsXHJcbiAgICAgICAgICAgICAgICAncmdiKDI1NSwgMjA1LCA4NiknLFxyXG4gICAgICAgICAgICAgICAgJ3JnYig3NSwgMTkyLCAxOTIpJyxcclxuICAgICAgICAgICAgICAgICdyZ2IoNTQsIDE2MiwgMjM1KScsXHJcbiAgICAgICAgICAgICAgICAncmdiKDE1MywgMTAyLCAyNTUpJyxcclxuICAgICAgICAgICAgICAgICdyZ2IoMjAxLCAyMDMsIDIwNyknXHJcbiAgICAgICAgICAgICAgXSxcclxuICAgICAgICAgICAgICBib3JkZXJXaWR0aDogMVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgXSxcclxuICAgICAgfTtcclxuICAgIGNvbnN0IG9wdGlvbnMgPSB7XHJcbiAgICAgICAgaW5kZXhBeGlzOiAneScgYXMgY29uc3QsXHJcbiAgICAgICAgcmVzcG9uc2l2ZTogdHJ1ZSxcclxuICAgICAgICBwbHVnaW5zOiB7XHJcbiAgICAgICAgICBsZWdlbmQ6IHtcclxuICAgICAgICAgICAgcG9zaXRpb246ICd0b3AnIGFzIGNvbnN0LFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIHRpdGxlOiB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IHRydWUsXHJcbiAgICAgICAgICAgIHRleHQ6ICdWZXJ0aWNhbCBCYXIgQ2hhcnQnLFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICB9LFxyXG4gICAgICB9O1xyXG4gIFxyXG4gICAgcmV0dXJuIChcclxuICAgICAgPGRpdiBjbGFzc05hbWU9XCJiYXItY2hhcnQtY29udGFpbmVyXCI+XHJcbiAgICAgICAgPEJhciBvcHRpb25zPXtvcHRpb25zfSBkYXRhPXtkYXRhfSAvPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgKTtcclxuICB9O1xyXG5cclxuXHJcbiAgY29uc3QgRG91Z2hudXRDaGFydDogUmVhY3QuRkMgPSAoKSA9PiB7XHJcblxyXG4gICAgY29uc3QgZGF0YSA9IHtcclxuICAgICAgICBsYWJlbHM6IFsnUmVkJywgJ0JsdWUnLCAnWWVsbG93JywgJ0dyZWVuJywgJ1B1cnBsZScsICdPcmFuZ2UnXSxcclxuICBkYXRhc2V0czogW1xyXG4gICAge1xyXG4gICAgICBsYWJlbDogJyMgb2YgVm90ZXMnLFxyXG4gICAgICBkYXRhOiBbMTIsIDE5LCAzLCA1LCAyLCAzXSxcclxuICAgICAgYmFja2dyb3VuZENvbG9yOiBbXHJcbiAgICAgICAgJ3JnYmEoMjU1LCA5OSwgMTMyLCAwLjIpJyxcclxuICAgICAgICAncmdiYSg1NCwgMTYyLCAyMzUsIDAuMiknLFxyXG4gICAgICAgICdyZ2JhKDI1NSwgMjA2LCA4NiwgMC4yKScsXHJcbiAgICAgICAgJ3JnYmEoNzUsIDE5MiwgMTkyLCAwLjIpJyxcclxuICAgICAgICAncmdiYSgxNTMsIDEwMiwgMjU1LCAwLjIpJyxcclxuICAgICAgICAncmdiYSgyNTUsIDE1OSwgNjQsIDAuMiknLFxyXG4gICAgICBdLFxyXG4gICAgICBib3JkZXJDb2xvcjogW1xyXG4gICAgICAgICdyZ2JhKDI1NSwgOTksIDEzMiwgMSknLFxyXG4gICAgICAgICdyZ2JhKDU0LCAxNjIsIDIzNSwgMSknLFxyXG4gICAgICAgICdyZ2JhKDI1NSwgMjA2LCA4NiwgMSknLFxyXG4gICAgICAgICdyZ2JhKDc1LCAxOTIsIDE5MiwgMSknLFxyXG4gICAgICAgICdyZ2JhKDE1MywgMTAyLCAyNTUsIDEpJyxcclxuICAgICAgICAncmdiYSgyNTUsIDE1OSwgNjQsIDEpJyxcclxuICAgICAgXSxcclxuICAgICAgYm9yZGVyV2lkdGg6IDEsXHJcbiAgICB9LFxyXG4gIF0sXHJcbiAgICB9O1xyXG4gICAgcmV0dXJuIChcclxuICAgICAgPGRpdiBjbGFzc05hbWU9XCJiYXItY2hhcnQtY29udGFpbmVyXCI+XHJcbiAgICAgICAgPERvdWdobnV0IGRhdGE9e2RhdGF9IC8+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICApO1xyXG4gIH07XHJcblxyXG5cclxuICBjb25zdCBQb2xhckNoYXJ0OiBSZWFjdC5GQyA9ICgpID0+IHtcclxuICAgIGNvbnN0IGRhdGEgPSB7XHJcbiAgICAgICAgbGFiZWxzOiBbJ1JlZCcsICdCbHVlJywgJ1llbGxvdycsICdHcmVlbicsICdQdXJwbGUnLCAnT3JhbmdlJ10sXHJcbiAgICAgICAgZGF0YXNldHM6IFtcclxuICAgICAgICAgIHtcclxuICAgICAgICAgICAgbGFiZWw6ICcjIG9mIFZvdGVzJyxcclxuICAgICAgICAgICAgZGF0YTogWzEyLCAxOSwgMywgNSwgMiwgM10sXHJcbiAgICAgICAgICAgIGJhY2tncm91bmRDb2xvcjogW1xyXG4gICAgICAgICAgICAgICdyZ2JhKDI1NSwgOTksIDEzMiwgMC41KScsXHJcbiAgICAgICAgICAgICAgJ3JnYmEoNTQsIDE2MiwgMjM1LCAwLjUpJyxcclxuICAgICAgICAgICAgICAncmdiYSgyNTUsIDIwNiwgODYsIDAuNSknLFxyXG4gICAgICAgICAgICAgICdyZ2JhKDc1LCAxOTIsIDE5MiwgMC41KScsXHJcbiAgICAgICAgICAgICAgJ3JnYmEoMTUzLCAxMDIsIDI1NSwgMC41KScsXHJcbiAgICAgICAgICAgICAgJ3JnYmEoMjU1LCAxNTksIDY0LCAwLjUpJyxcclxuICAgICAgICAgICAgXSxcclxuICAgICAgICAgICAgYm9yZGVyV2lkdGg6IDEsXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgIF0sXHJcbiAgICAgIH07XHJcblxyXG5cclxuICAgIHJldHVybiAoXHJcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJiYXItY2hhcnQtY29udGFpbmVyXCI+XHJcbiAgICAgICAgICA8UG9sYXJBcmVhIGRhdGE9e2RhdGF9IC8+O1xyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICk7XHJcbiAgICB9OyIsICJpbXBvcnQgeyB1c2VFZmZlY3QgfSBmcm9tIFwicmVhY3RcIjtcclxuaW1wb3J0IHsgIE5ld0hpZ2hsaWdodCB9IGZyb20gXCIuLi91dGlscy9IaWdobGlnaHQtZnVuY3Rpb25zXCI7XHJcbmltcG9ydCB7IG9wZW5UaGVtIH0gZnJvbSBcIi4uL3V0aWxzL29wZW5UaGVtXCI7XHJcbmltcG9ydCB7IEJhY2tVcCB9IGZyb20gXCIuLi9jb21wb25lbnRzL0J1dHRvbnNcIjtcclxuaW1wb3J0IHsgdXNlTmF2aWdhdGlvbiB9IGZyb20gXCIuLi91dGlsc1wiO1xyXG5cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBFbmdTaWRlKCl7XHJcbiAgICBsZXQgbnVtcyA9IFtcInJlcDFcIiwgXCJyZXAyXCIsIFwicmVwM1wiLCBcInJlcDRcIiwgXCJyZXA1XCIsIFwicmVwNlwiLCBcInRyZjFcIiwgXCJ0cmYyXCIsIFwidHJmM1wiLCBcInRyZjRcIiwgXCJwZTFcIiwgXCJwZTJcIiwgXCJwZTNcIiwgXCJwZWcxXCIsIFwicGVnMlwiLCBcInBlZzNcIiwgXCJwZWc0XCIsIFwicGVnNVwiLFxyXG4gICAgICAgICBcIm5pYzFcIiwgXCJuaWMyXCIsIFwibmljM1wiLCBcIm5pYzRcIiwgXCJuaWM1XCIsIFwibmljNlwiLFwiZGVsMVwiLCBcImRlbDJcIiwgXCJkZWwzXCIsIFwiZGVsNFwiLCBcImRlbDVcIl1cclxuICAgIHVzZUVmZmVjdCgoKSA9PiB7XHJcbiAgICAgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoXCJzY3JvbGxcIiwgaGFuZGxlU2Nyb2xsKTtcclxuICAgICAgICByZXR1cm4gKCkgPT4gd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoXCJzY3JvbGxcIiwgaGFuZGxlU2Nyb2xsKTtcclxuICAgICAgfSwgW251bXNdKTtcclxuICAgICAgXHJcbiAgICAgIC8vIFJlc3RvcmUgYWN0aXZlIHRhYiBvbiByZWxvYWRcclxuICB1c2VFZmZlY3QoKCkgPT4ge1xyXG4gICAgY29uc3QgcGFyYW1zID0gbmV3IFVSTFNlYXJjaFBhcmFtcyh3aW5kb3cubG9jYXRpb24uc2VhcmNoKTtcclxuICAgIGNvbnN0IHRhYklkID0gcGFyYW1zLmdldChcInRhYlwiKTtcclxuICAgIGNvbnN0IHN1YlRhYklkID0gcGFyYW1zLmdldChcInN1YlRhYlwiKTtcclxuXHJcbiAgICBpZiAodGFiSWQpIHtcclxuICAgICAgLy8gRmluZCB0aGUgcGFyZW50IGVsZW1lbnQgYW5kIG1hcmsgaXQgYXMgYWN0aXZlXHJcbiAgICAgIGNvbnN0IHBhcmVudFRhYiA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoYCNwYXJlbnQtJHt0YWJJZH1gKTtcclxuICAgICAgaWYgKHBhcmVudFRhYikge1xyXG4gICAgICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoXCIuYWN0aXZlLXNpZGVpdGVtXCIpLmZvckVhY2goKGVsKSA9PiBlbC5jbGFzc0xpc3QucmVtb3ZlKFwiYWN0aXZlLXNpZGVpdGVtXCIpKTtcclxuICAgICAgICBwYXJlbnRUYWIuY2xhc3NMaXN0LmFkZChcImFjdGl2ZS1zaWRlaXRlbVwiKTtcclxuICAgICAgfVxyXG4gICAgICAvLyBPcHRpb25hbGx5IGV4cGFuZCB0aGUgc3VidGFiIGlmIGF2YWlsYWJsZVxyXG4gICAgICBpZiAoc3ViVGFiSWQpIHtcclxuICAgICAgICBjb25zdCBzdWJUYWIgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKGAjJHtzdWJUYWJJZH1gKTtcclxuICAgICAgICBpZiAoc3ViVGFiKSB7XHJcbiAgICAgICAgICBzdWJUYWIuY2xhc3NMaXN0LmFkZChcImhpZ2hsaWdodC1zdWJpdGVtXCIpOyAvLyBBZGQgYSBjdXN0b20gY2xhc3MgZm9yIGhpZ2hsaWdodGluZyBzdWJ0YWJzIGlmIG5lZWRlZFxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH0sIFtdKTtcclxuICAgICAgY29uc3QgaGFuZGxlU2Nyb2xsID0gKCkgPT4ge1xyXG4gICAgICAgICAgZm9yKGxldCBpZHggaW4gbnVtcyl7XHJcbiAgICAgICAgICAgIC8qIGNvbnNvbGUubG9nKFwiV2UgYXJlIGxvb2tpbmcgYXQgJ2l0ZW0nID0gXCIgKyBudW1zW2lkeF0pICovXHJcbiAgICAgICAgICAgICAgY29uc3QgaXRlbSA9IG51bXNbaWR4XTtcclxuICAgICAgICAgICAgICBsZXQgaW5kID0gbnVtcy5maW5kSW5kZXgoKGUpID0+IGUgPT0gaXRlbSlcclxuICAgICAgICAgICAgICAvKiBjb25zb2xlLmxvZyhcImluZCBpczogXCIgKyBpbmQpICovXHJcbiAgICAgICAgICAgICAgbGV0IHN1YmRpID0gXCJzdWJ0aXRsZVwiICsgaW5kIFxyXG4gICAgICAgICAgICAgLyogIGNvbnNvbGUubG9nKFwic3ViZGkgaXM6IFwiICsgc3ViZGkpXHJcbiAgICAgICAgICAgICAgY29uc29sZS5sb2coXCJ3ZSB1c2UgXCIgKyAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoaXRlbSk/LmlkICsgXCIgYW5kIFwiICsgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoc3ViZGkpPy5pZCkgKi9cclxuICAgICAgICAgICAgICBOZXdIaWdobGlnaHQoe2VsOiBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChpdGVtKSF9LCB7c3VidGl0bGU6IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHN1YmRpKSF9KTtcclxuICAgICAgICAgIH0gICAgICAgXHJcbiAgICAgICAgICBjb25zb2xlLmxvZyhcImZ1bmN0aW9uIEhpZ2hsaWdodENoZWNrXCIpXHJcbiAgICAgIH1cclxuICAgICAgY29uc29sZS5sb2cobnVtcylcclxuICAgIFxyXG4gICAgICBjb25zdCB7Z29Ub1BhZ2VXaXRoVGFiQW5kU2Nyb2xsfSA9IHVzZU5hdmlnYXRpb24oKTsgXHJcbiAgICByZXR1cm4oXHJcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wtMiBkLWxnLWJsb2NrXCIgPlxyXG4gICAgICAgICAgICA8YnIvPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInN0aWNreS10b3BcIj5cclxuICAgICAgICAgICAgPG5hdiBjbGFzc05hbWU9XCJzaWRlYmFyXCIgaWQ9XCJlbmctc2lkZWJhclwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdj4gXHJcbiAgICAgICAgICAgICAgICAgICAgPGEgb25DbGljaz17b3BlblRoZW0oe2l0OiBcIm91ci1jeWNsZVwiLCBzY3JvbGxUb0lkOiBcIm91ci1jeWNsZS1oZWFkZXJcIn0pfT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJkZXRhaWwtc2lkZWl0ZW1cIj4gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPVwicGFyZW50LW91ci1jeWNsZVwiIGNsYXNzTmFtZT1cInNpZGVpdGVtIGFjdGl2ZS1zaWRlaXRlbVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdW1tYXJ5Pk91ciBDeWNsZXM8L3N1bW1hcnk+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gaWQ9XCJvdXItY3ljbGVcIiBjbGFzc05hbWU9XCJzaWRlc3VidGFiXCIgc3R5bGU9e3tkaXNwbGF5OiBcImJsb2NrXCJ9fT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PiBcclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9hPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+IFxyXG4gICAgICAgICAgICAgICAgPGRpdj4gXHJcbiAgICAgICAgICAgICAgICAgICAgPGEgb25DbGljaz17b3BlblRoZW0oe2l0OiBcInJlcG9ydGVyXCIsIHNjcm9sbFRvSWQ6IFwicmVwb3J0ZXItaGVhZGVyXCJ9KX0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZGV0YWlsLXNpZGVpdGVtXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPVwicGFyZW50LXJlcG9ydGVyXCIgY2xhc3NOYW1lPVwic2lkZWl0ZW1cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3VtbWFyeT5SZXBvcnRlciBTeXN0ZW08L3N1bW1hcnk+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gaWQ9XCJyZXBvcnRlclwiIGNsYXNzTmFtZT1cInNpZGVzdWJ0YWJcIiBzdHlsZT17e2Rpc3BsYXk6IFwibm9uZVwifX0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dWw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VXaXRoVGFiQW5kU2Nyb2xsKHtwYXRoOiBcIlwiLCB0YWJJZDogXCJ0YWItcmVwb3J0ZXJcIiwgc2Nyb2xsVG9JZDogXCJyZXAxaGVhZFwifSl9PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBpZD1cInN1YnRpdGxlMFwiIGNsYXNzTmFtZT0nc2lkZWl0ZW0nPkl0ZXJhdGlvbiAxPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPjwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VXaXRoVGFiQW5kU2Nyb2xsKHtwYXRoOiBcIlwiLCB0YWJJZDogXCJ0YWItcmVwb3J0ZXJcIiwgc2Nyb2xsVG9JZDogXCJyZXAyaGVhZFwifSl9PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBpZD1cInN1YnRpdGxlMVwiIGNsYXNzTmFtZT0nc2lkZWl0ZW0nPkl0ZXJhdGlvbiAyPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPjwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VXaXRoVGFiQW5kU2Nyb2xsKHtwYXRoOiBcIlwiLCB0YWJJZDogXCJ0YWItcmVwb3J0ZXJcIiwgc2Nyb2xsVG9JZDogXCJyZXAzaGVhZFwifSl9PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBpZD1cInN1YnRpdGxlMlwiIGNsYXNzTmFtZT0nc2lkZWl0ZW0nPkl0ZXJhdGlvbiAzPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPjwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VXaXRoVGFiQW5kU2Nyb2xsKHtwYXRoOiBcIlwiLCB0YWJJZDogXCJ0YWItcmVwb3J0ZXJcIiwgc2Nyb2xsVG9JZDogXCJyZXA0aGVhZFwifSl9PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBpZD1cInN1YnRpdGxlM1wiIGNsYXNzTmFtZT0nc2lkZWl0ZW0nPkl0ZXJhdGlvbiA0PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPjwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VXaXRoVGFiQW5kU2Nyb2xsKHtwYXRoOiBcIlwiLCB0YWJJZDogXCJ0YWItcmVwb3J0ZXJcIiwgc2Nyb2xsVG9JZDogXCJyZXA1aGVhZFwifSl9PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBpZD1cInN1YnRpdGxlNFwiIGNsYXNzTmFtZT0nc2lkZWl0ZW0nPkl0ZXJhdGlvbiA1PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPjwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VXaXRoVGFiQW5kU2Nyb2xsKHtwYXRoOiBcIlwiLCB0YWJJZDogXCJ0YWItcmVwb3J0ZXJcIiwgc2Nyb2xsVG9JZDogXCJyZXA2aGVhZFwifSl9PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBpZD1cInN1YnRpdGxlNVwiIGNsYXNzTmFtZT0nc2lkZWl0ZW0nPk91dGxvb2s8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+PC9saT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC91bD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvYT4gXHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXY+IFxyXG4gICAgICAgICAgICAgICAgICAgIDxhIG9uQ2xpY2s9e29wZW5UaGVtKHtpdDogXCJ0cmFuc2ZlY3Rpb25cIiwgc2Nyb2xsVG9JZDogXCJ0cmFuc2ZlY3Rpb24taGVhZGVyXCJ9KX0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZGV0YWlsLXNpZGVpdGVtXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPVwicGFyZW50LXRyYW5zZmVjdGlvblwiIGNsYXNzTmFtZT1cInNpZGVpdGVtXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN1bW1hcnk+VHJhbnNmZWN0aW9uPC9zdW1tYXJ5PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGlkPVwidHJhbnNmZWN0aW9uXCIgY2xhc3NOYW1lPVwic2lkZXN1YnRhYlwiIHN0eWxlPXt7ZGlzcGxheTogXCJub25lXCJ9fT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx1bD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZVdpdGhUYWJBbmRTY3JvbGwoe3BhdGg6IFwiXCIsIHRhYklkOiBcInRhYi10cmFuc2ZlY3Rpb25cIiwgc2Nyb2xsVG9JZDogXCJ0cmYxaGVhZFwifSl9PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBpZD1cInN1YnRpdGxlNlwiIGNsYXNzTmFtZT0nc2lkZWl0ZW0nPkl0ZXJhdGlvbiAxPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPjwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VXaXRoVGFiQW5kU2Nyb2xsKHtwYXRoOiBcIlwiLCB0YWJJZDogXCJ0YWItdHJhbnNmZWN0aW9uXCIsIHNjcm9sbFRvSWQ6IFwidHJmMmhlYWRcIn0pfT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gaWQ9XCJzdWJ0aXRsZTdcIiBjbGFzc05hbWU9J3NpZGVpdGVtJz5JdGVyYXRpb24gMjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT48L2xpPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlV2l0aFRhYkFuZFNjcm9sbCh7cGF0aDogXCJcIiwgdGFiSWQ6IFwidGFiLXRyYW5zZmVjdGlvblwiLCBzY3JvbGxUb0lkOiBcInRyZjNoZWFkXCJ9KX0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGlkPVwic3VidGl0bGU4XCIgY2xhc3NOYW1lPSdzaWRlaXRlbSc+SXRlcmF0aW9uIDM8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+PC9saT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZVdpdGhUYWJBbmRTY3JvbGwoe3BhdGg6IFwiXCIsIHRhYklkOiBcInRhYi10cmFuc2ZlY3Rpb25cIiwgc2Nyb2xsVG9JZDogXCJ0cmY0aGVhZFwifSl9PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBpZD1cInN1YnRpdGxlOVwiIGNsYXNzTmFtZT0nc2lkZWl0ZW0nPkl0ZXJhdGlvbiA0PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPjwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdWw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2E+IFxyXG4gICAgICAgICAgICAgICAgPC9kaXY+IFxyXG4gICAgICAgICAgICAgICAgPGRpdj4gXHJcbiAgICAgICAgICAgICAgICAgICAgPGEgb25DbGljaz17b3BlblRoZW0oe2l0OiBcInBlLXN5c3RlbXNcIiwgc2Nyb2xsVG9JZDogXCJwZS1zeXN0ZW1zLWhlYWRlclwifSl9PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImRldGFpbC1zaWRlaXRlbVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD1cInBhcmVudC1wZS1zeXN0ZW1zXCIgY2xhc3NOYW1lPVwic2lkZWl0ZW1cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3VtbWFyeT5QRSBTeXN0ZW1zPC9zdW1tYXJ5PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGlkPVwicGUtc3lzdGVtc1wiIGNsYXNzTmFtZT1cInNpZGVzdWJ0YWJcIiBzdHlsZT17e2Rpc3BsYXk6IFwibm9uZVwifX0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dWw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VXaXRoVGFiQW5kU2Nyb2xsKHtwYXRoOiBcIlwiLCB0YWJJZDogXCJ0YWItcGUtc3lzdGVtc1wiLCBzY3JvbGxUb0lkOiBcInBlMWhlYWRcIn0pfT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gaWQ9XCJzdWJ0aXRsZTEwXCIgY2xhc3NOYW1lPSdzaWRlaXRlbSc+SXRlcmF0aW9uIDE8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+PC9saT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZVdpdGhUYWJBbmRTY3JvbGwoe3BhdGg6IFwiXCIsIHRhYklkOiBcInRhYi1wZS1zeXN0ZW1zXCIsIHNjcm9sbFRvSWQ6IFwicGUyaGVhZFwifSl9PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBpZD1cInN1YnRpdGxlMTFcIiBjbGFzc05hbWU9J3NpZGVpdGVtJz5JdGVyYXRpb24gMjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT48L2xpPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlV2l0aFRhYkFuZFNjcm9sbCh7cGF0aDogXCJcIiwgdGFiSWQ6IFwidGFiLXBlLXN5c3RlbXNcIiwgc2Nyb2xsVG9JZDogXCJwZTNoZWFkXCJ9KX0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGlkPVwic3VidGl0bGUxMlwiIGNsYXNzTmFtZT0nc2lkZWl0ZW0nPk91dGxvb2s8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+PC9saT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC91bD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvYT5cclxuICAgICAgICAgICAgICAgIDwvZGl2PiBcclxuICAgICAgICAgICAgICAgIDxkaXY+IFxyXG4gICAgICAgICAgICAgICAgICAgIDxhIG9uQ2xpY2s9e29wZW5UaGVtKHtpdDogXCJwZWdybmFcIiwgc2Nyb2xsVG9JZDogXCJwZWdybmEtaGVhZGVyXCJ9KX0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZGV0YWlsLXNpZGVpdGVtXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPVwicGFyZW50LXBlZ3JuYVwiIGNsYXNzTmFtZT1cInNpZGVpdGVtXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN1bW1hcnk+cGVnUk5BPC9zdW1tYXJ5PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGlkPVwicGVncm5hXCIgY2xhc3NOYW1lPVwic2lkZXN1YnRhYlwiIHN0eWxlPXt7ZGlzcGxheTogXCJub25lXCJ9fT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx1bD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZVdpdGhUYWJBbmRTY3JvbGwoe3BhdGg6IFwiXCIsIHRhYklkOiBcInRhYi1wZWdybmFcIiwgc2Nyb2xsVG9JZDogXCJwZWcxaGVhZFwifSl9PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBpZD1cInN1YnRpdGxlMTNcIiBjbGFzc05hbWU9J3NpZGVpdGVtJz5JdGVyYXRpb24gMTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT48L2xpPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlV2l0aFRhYkFuZFNjcm9sbCh7cGF0aDogXCJcIiwgdGFiSWQ6IFwidGFiLXBlZ3JuYVwiLCBzY3JvbGxUb0lkOiBcInBlZzJoZWFkXCJ9KX0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGlkPVwic3VidGl0bGUxNFwiIGNsYXNzTmFtZT0nc2lkZWl0ZW0nPkl0ZXJhdGlvbiAyPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPjwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VXaXRoVGFiQW5kU2Nyb2xsKHtwYXRoOiBcIlwiLCB0YWJJZDogXCJ0YWItcGVncm5hXCIsIHNjcm9sbFRvSWQ6IFwicGVnM2hlYWRcIn0pfT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gaWQ9XCJzdWJ0aXRsZTE1XCIgY2xhc3NOYW1lPSdzaWRlaXRlbSc+SXRlcmF0aW9uIDM8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+PC9saT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZVdpdGhUYWJBbmRTY3JvbGwoe3BhdGg6IFwiXCIsIHRhYklkOiBcInRhYi1wZWdybmFcIiwgc2Nyb2xsVG9JZDogXCJwZWc0aGVhZFwifSl9PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBpZD1cInN1YnRpdGxlMTZcIiBjbGFzc05hbWU9J3NpZGVpdGVtJz5JdGVyYXRpb24gNDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT48L2xpPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlV2l0aFRhYkFuZFNjcm9sbCh7cGF0aDogXCJcIiwgdGFiSWQ6IFwidGFiLXBlZ3JuYVwiLCBzY3JvbGxUb0lkOiBcInBlZzVoZWFkXCJ9KX0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGlkPVwic3VidGl0bGUxN1wiIGNsYXNzTmFtZT0nc2lkZWl0ZW0nPkl0ZXJhdGlvbiA1PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPjwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdWw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2E+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj4gXHJcbiAgICAgICAgICAgICAgICA8ZGl2PiBcclxuICAgICAgICAgICAgICAgICAgICA8YSBvbkNsaWNrPXtvcGVuVGhlbSh7aXQ6IFwibmlja2FzZVwiLCBzY3JvbGxUb0lkOiBcIm5pY2thc2UtaGVhZGVyXCJ9KX0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZGV0YWlsLXNpZGVpdGVtXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPVwicGFyZW50LW5pY2thc2VcIiBjbGFzc05hbWU9XCJzaWRlaXRlbVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdW1tYXJ5Pk5pY2thc2U8L3N1bW1hcnk+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gaWQ9XCJuaWNrYXNlXCIgY2xhc3NOYW1lPVwic2lkZXN1YnRhYlwiIHN0eWxlPXt7ZGlzcGxheTogXCJub25lXCJ9fT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx1bD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZVdpdGhUYWJBbmRTY3JvbGwoe3BhdGg6IFwiXCIsIHRhYklkOiBcInRhYi1uaWNrYXNlXCIsIHNjcm9sbFRvSWQ6IFwibmljMWhlYWRcIn0pfT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gaWQ9XCJzdWJ0aXRsZTE4XCIgY2xhc3NOYW1lPSdzaWRlaXRlbSc+SXRlcmF0aW9uIDE8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+PC9saT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZVdpdGhUYWJBbmRTY3JvbGwoe3BhdGg6IFwiXCIsIHRhYklkOiBcInRhYi1uaWNrYXNlXCIsIHNjcm9sbFRvSWQ6IFwibmljMmhlYWRcIn0pfT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gaWQ9XCJzdWJ0aXRsZTE5XCIgY2xhc3NOYW1lPSdzaWRlaXRlbSc+SXRlcmF0aW9uIDI8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+PC9saT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZVdpdGhUYWJBbmRTY3JvbGwoe3BhdGg6IFwiXCIsIHRhYklkOiBcInRhYi1uaWNrYXNlXCIsIHNjcm9sbFRvSWQ6IFwibmljM2hlYWRcIn0pfT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gaWQ9XCJzdWJ0aXRsZTIwXCIgY2xhc3NOYW1lPSdzaWRlaXRlbSc+SXRlcmF0aW9uIDM8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+PC9saT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZVdpdGhUYWJBbmRTY3JvbGwoe3BhdGg6IFwiXCIsIHRhYklkOiBcInRhYi1uaWNrYXNlXCIsIHNjcm9sbFRvSWQ6IFwibmljNGhlYWRcIn0pfT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gaWQ9XCJzdWJ0aXRsZTIxXCIgY2xhc3NOYW1lPSdzaWRlaXRlbSc+SXRlcmF0aW9uIDQ8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+PC9saT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZVdpdGhUYWJBbmRTY3JvbGwoe3BhdGg6IFwiXCIsIHRhYklkOiBcInRhYi1uaWNrYXNlXCIsIHNjcm9sbFRvSWQ6IFwibmljNWhlYWRcIn0pfT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gaWQ9XCJzdWJ0aXRsZTIyXCIgY2xhc3NOYW1lPSdzaWRlaXRlbSc+SXRlcmF0aW9uIDU8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+PC9saT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZVdpdGhUYWJBbmRTY3JvbGwoe3BhdGg6IFwiXCIsIHRhYklkOiBcInRhYi1uaWNrYXNlXCIsIHNjcm9sbFRvSWQ6IFwibmljNmhlYWRcIn0pfT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gaWQ9XCJzdWJ0aXRsZTIzXCIgY2xhc3NOYW1lPSdzaWRlaXRlbSc+SXRlcmF0aW9uIDY8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+PC9saT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC91bD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvYT5cclxuICAgICAgICAgICAgICAgIDwvZGl2PiBcclxuICAgICAgICAgICAgICAgIDxkaXY+IFxyXG4gICAgICAgICAgICAgICAgICAgIDxhIG9uQ2xpY2s9e29wZW5UaGVtKHtpdDogXCJkZWxpdmVyeVwiLCBzY3JvbGxUb0lkOiBcImRlbGl2ZXJ5LWhlYWRlclwifSl9PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImRldGFpbC1zaWRlaXRlbVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD1cInBhcmVudC1kZWxpdmVyeVwiIGNsYXNzTmFtZT1cInNpZGVpdGVtXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN1bW1hcnk+RGVsaXZlcnk8L3N1bW1hcnk+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gaWQ9XCJkZWxpdmVyeVwiIGNsYXNzTmFtZT1cInNpZGVzdWJ0YWJcIiBzdHlsZT17e2Rpc3BsYXk6IFwibm9uZVwifX0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dWw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VXaXRoVGFiQW5kU2Nyb2xsKHtwYXRoOiBcIlwiLCB0YWJJZDogXCJ0YWItZGVsaXZlcnlcIiwgc2Nyb2xsVG9JZDogXCJkZWwxaGVhZFwifSl9PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBpZD1cInN1YnRpdGxlMjRcIiBjbGFzc05hbWU9J3NpZGVpdGVtJz5JdGVyYXRpb24gMTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT48L2xpPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlV2l0aFRhYkFuZFNjcm9sbCh7cGF0aDogXCJcIiwgdGFiSWQ6IFwidGFiLWRlbGl2ZXJ5XCIsIHNjcm9sbFRvSWQ6IFwiZGVsMmhlYWRcIn0pfT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gaWQ9XCJzdWJ0aXRsZTI1XCIgY2xhc3NOYW1lPSdzaWRlaXRlbSc+SXRlcmF0aW9uIDI8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+PC9saT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZVdpdGhUYWJBbmRTY3JvbGwoe3BhdGg6IFwiXCIsIHRhYklkOiBcInRhYi1kZWxpdmVyeVwiLCBzY3JvbGxUb0lkOiBcImRlbDNoZWFkXCJ9KX0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGlkPVwic3VidGl0bGUyNlwiIGNsYXNzTmFtZT0nc2lkZWl0ZW0nPkl0ZXJhdGlvbiAzPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPjwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGEgb25DbGljaz17KCkgPT4gZ29Ub1BhZ2VXaXRoVGFiQW5kU2Nyb2xsKHtwYXRoOiBcIlwiLCB0YWJJZDogXCJ0YWItZGVsaXZlcnlcIiwgc2Nyb2xsVG9JZDogXCJkZWw0aGVhZFwifSl9PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBpZD1cInN1YnRpdGxlMjdcIiBjbGFzc05hbWU9J3NpZGVpdGVtJz5JdGVyYXRpb24gNDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT48L2xpPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIG9uQ2xpY2s9eygpID0+IGdvVG9QYWdlV2l0aFRhYkFuZFNjcm9sbCh7cGF0aDogXCJcIiwgdGFiSWQ6IFwidGFiLWRlbGl2ZXJ5XCIsIHNjcm9sbFRvSWQ6IFwiZGVsNWhlYWRcIn0pfT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gaWQ9XCJzdWJ0aXRsZTI4XCIgY2xhc3NOYW1lPSdzaWRlaXRlbSc+T3V0bG9vazwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT48L2xpPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3VsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PiBcclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9hPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvbmF2PiAgIFxyXG4gICAgICAgICAgICA8QmFja1VwPjwvQmFja1VwPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICBcclxuICAgIClcclxufVxyXG5cclxuXHJcblxyXG5cclxuXHJcbi8qIGZ1bmN0aW9uIFNpZGVJdGVtRW5nKHtoZXNoLCBudW19OntoZXNoOiBzdHJpbmc7IG51bTogbnVtYmVyfSl7XHJcbiAgICBsZXQgc3ViZGkgPSBcInN1YnRpdGxlXCIgKyBudW1cclxuICAgIGxldCBvcGVubW9yZSA9IHN0cmluZ1RvU2x1ZyhoZXNoKSBcclxuICAgIGNvbnNvbGUubG9nKFwib3Blbm1vcmU6IFwiICsgb3Blbm1vcmUpXHJcbiAgICByZXR1cm4oXHJcbiAgICAgICAgPGRpdj4gXHJcbiAgICAgICAgICAgIDxhIG9uQ2xpY2s9e29wZW5UaGVtKHtpdDogb3Blbm1vcmV9KX0+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImRldGFpbC1zaWRlaXRlbVwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBpZD17c3ViZGl9IGNsYXNzTmFtZT1cInNpZGVpdGVtXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPHN1bW1hcnk+e2hlc2h9PC9zdW1tYXJ5PlxyXG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGlkPXtvcGVubW9yZX0gY2xhc3NOYW1lPVwic2lkZXN1YnRhYlwiIHN0eWxlPXt7ZGlzcGxheTogXCJub25lXCJ9fT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHVsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPk90aGVyPC9saT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC91bD5cclxuICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj4gXHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9hPlxyXG4gICAgICAgIDwvZGl2PiAgIFxyXG4gICAgKVxyXG59XHJcbiAqL1xyXG5cclxuXHJcbiIsICJpbXBvcnQgeyB1c2VFZmZlY3QgfSBmcm9tIFwicmVhY3RcIjtcclxuaW1wb3J0IHsgSGlnaGxpZ2h0IH0gZnJvbSBcIi4uL3V0aWxzL0hpZ2hsaWdodC1mdW5jdGlvbnNcIjtcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBJbnRTaWRlYmFyKCl7XHJcbiAgICBsZXQgbnVtcyA9IFsgXCJtYXhIXCIsIFwib2xhcml1SFwiLCBcImpvc2h1YUhcIiwgXCJqdWxpYUhcIiwgXCJuaWNvbGVIXCIsIFwibWF0dGlqc0hcIiwgXCJ3ZXN0aG9mZkhcIiwgXCJiZXJlbnNIXCIsIFwid2lzY2htZXllckhcIl1cclxuICAgIHVzZUVmZmVjdCgoKSA9PiB7XHJcbiAgICAgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ3Njcm9sbCcsIGhhbmRsZVNjcm9sbCk7XHJcbiAgICAgICAgcmV0dXJuICgpID0+IHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCdzY3JvbGwnLCBoYW5kbGVTY3JvbGwpO1xyXG4gICAgICB9LCBbXSk7XHJcbiAgICAgIGNvbnN0IGhhbmRsZVNjcm9sbCA9ICgpID0+IHtcclxuICAgICAgICAgIGZvcihsZXQgaWR4IGluIG51bXMpe1xyXG4gICAgICAgICAgICAvKiBjb25zb2xlLmxvZyhcIldlIGFyZSBsb29raW5nIGF0ICdpdGVtJyA9IFwiICsgbnVtc1tpZHhdKSAqL1xyXG4gICAgICAgICAgICAgIGNvbnN0IGl0ZW0gPSBudW1zW2lkeF07XHJcbiAgICAgICAgICAgICAgbGV0IGluZCA9IG51bXMuZmluZEluZGV4KChlKSA9PiBlID09IGl0ZW0pXHJcbiAgICAgICAgICAgICAvKiAgY29uc29sZS5sb2coXCJpbmQgaXM6IFwiICsgaW5kKSAqL1xyXG4gICAgICAgICAgICAgIGxldCBzdWJkaSA9IFwic3VidGl0bGVcIiArIGluZCBcclxuICAgICAgICAgICAgICAvKiBjb25zb2xlLmxvZyhcInN1YmRpIGlzOiBcIiArIHN1YmRpKVxyXG4gICAgICAgICAgICAgIGNvbnNvbGUubG9nKFwid2UgdXNlIFwiICsgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGl0ZW0pPy5pZCArIFwiIGFuZCBcIiArIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHN1YmRpKT8uaWQpICovXHJcbiAgICAgICAgICAgICAgSGlnaGxpZ2h0KHtlbDogZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoaXRlbSkhfSwge3N1YnRpdGxlOiBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChzdWJkaSkhfSk7XHJcbiAgICAgICAgICB9ICAgICAgIFxyXG4gICAgICAgICAgLyogICAgICovXHJcbiAgICAgIH1cclxuICAgICAgLyogY29uc29sZS5sb2cobnVtcykgKi9cclxuICAgIHJldHVybihcclxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbC0yIGQtbm9uZSBkLWxnLWJsb2NrXCI+XHJcbiAgICAgICAgICAgIDxici8+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwic3RpY2t5LXRvcFwiPlxyXG4gICAgICAgICAgICA8bmF2IGNsYXNzTmFtZT1cInNpZGViYXJcIj5cclxuICAgICAgICAgICAgICAgIDxkaXY+IFxyXG4gICAgICAgICAgICAgICAgICAgIDxhIG9uQ2xpY2s9e29wZW5BbmRTY3JvbGwoeyBpdDogXCJ0YWItbWF4XCIsIHNjcm9sbFRhcmdldDogXCJtYXhcIiB9KX0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9XCJzdWJ0aXRsZTBcIiBjbGFzc05hbWU9XCJkZXRhaWwtc2lkZWl0ZW1cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9XCJwYXJlbnQtbWF4XCIgY2xhc3NOYW1lPVwic2lkZWl0ZW1cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3VtbWFyeT5NYXg8L3N1bW1hcnk+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9hPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2PiBcclxuICAgICAgICAgICAgICAgICAgICA8YSBvbkNsaWNrPXtvcGVuQW5kU2Nyb2xsKHsgaXQ6IFwidGFiLW9sYXJpdVwiLCBzY3JvbGxUYXJnZXQ6IFwib2xhcml1XCIgfSl9PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPVwic3VidGl0bGUxXCIgY2xhc3NOYW1lPVwiZGV0YWlsLXNpZGVpdGVtXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPVwicGFyZW50LW9sYXJpdVwiIGNsYXNzTmFtZT1cInNpZGVpdGVtXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN1bW1hcnk+T2xhcml1PC9zdW1tYXJ5PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvYT5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdj4gXHJcbiAgICAgICAgICAgICAgICAgICAgPGEgb25DbGljaz17b3BlbkFuZFNjcm9sbCh7IGl0OiBcInRhYi1qb3NodWFcIiwgc2Nyb2xsVGFyZ2V0OiBcImpvc2h1YVwiIH0pfT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD1cInN1YnRpdGxlMlwiIGNsYXNzTmFtZT1cImRldGFpbC1zaWRlaXRlbVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD1cInBhcmVudC1qb3NodWFcIiBjbGFzc05hbWU9XCJzaWRlaXRlbVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdW1tYXJ5Pkpvc2h1YTwvc3VtbWFyeT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2E+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXY+IFxyXG4gICAgICAgICAgICAgICAgICAgIDxhIG9uQ2xpY2s9e29wZW5BbmRTY3JvbGwoeyBpdDogXCJ0YWItanVsaWFcIiwgc2Nyb2xsVGFyZ2V0OiBcImp1bGlhXCIgfSl9PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPVwic3VidGl0bGUzXCIgY2xhc3NOYW1lPVwiZGV0YWlsLXNpZGVpdGVtXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPVwicGFyZW50LWp1bGlhXCIgY2xhc3NOYW1lPVwic2lkZWl0ZW1cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3VtbWFyeT5KdWxpYTwvc3VtbWFyeT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2E+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXY+IFxyXG4gICAgICAgICAgICAgICAgICAgIDxhIG9uQ2xpY2s9e29wZW5BbmRTY3JvbGwoeyBpdDogXCJ0YWItbmljb2xlXCIsIHNjcm9sbFRhcmdldDogXCJuaWNvbGVcIiB9KX0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9XCJzdWJ0aXRsZTRcIiBjbGFzc05hbWU9XCJkZXRhaWwtc2lkZWl0ZW1cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9XCJwYXJlbnQtbmljb2xlXCIgY2xhc3NOYW1lPVwic2lkZWl0ZW1cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3VtbWFyeSA+IE5pY29sZSA8L3N1bW1hcnk+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9hPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2PiBcclxuICAgICAgICAgICAgICAgICAgICA8YSBvbkNsaWNrPXtvcGVuQW5kU2Nyb2xsKHsgaXQ6IFwidGFiLW1hdHRpanNcIiwgc2Nyb2xsVGFyZ2V0OiBcIm1hdHRpanNcIiB9KX0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9XCJzdWJ0aXRsZTVcIiBjbGFzc05hbWU9XCJkZXRhaWwtc2lkZWl0ZW1cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9XCJwYXJlbnQtbWF0dGlqc1wiIGNsYXNzTmFtZT1cInNpZGVpdGVtXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN1bW1hcnk+bWF0dGlqczwvc3VtbWFyeT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2E+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXY+IFxyXG4gICAgICAgICAgICAgICAgICAgIDxhIG9uQ2xpY2s9e29wZW5BbmRTY3JvbGwoeyBpdDogXCJ0YWItd2VzdGhvZmZcIiwgc2Nyb2xsVGFyZ2V0OiBcIndlc3Rob2ZmXCIgfSl9PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPVwic3VidGl0bGU2XCIgY2xhc3NOYW1lPVwiZGV0YWlsLXNpZGVpdGVtXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPVwicGFyZW50LXdlc3Rob2ZmXCIgY2xhc3NOYW1lPVwic2lkZWl0ZW1cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3VtbWFyeT5LYXRyaW48L3N1bW1hcnk+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9hPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2PiBcclxuICAgICAgICAgICAgICAgICAgICA8YSBvbkNsaWNrPXtvcGVuQW5kU2Nyb2xsKHsgaXQ6IFwidGFiLWJlcmVuc1wiLCBzY3JvbGxUYXJnZXQ6IFwiYmVyZW5zXCIgfSl9PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPVwic3VidGl0bGU3XCIgY2xhc3NOYW1lPVwiZGV0YWlsLXNpZGVpdGVtXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPVwicGFyZW50LWJlcmVuc1wiIGNsYXNzTmFtZT1cInNpZGVpdGVtXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN1bW1hcnk+QmVyZW5zPC9zdW1tYXJ5PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvYT5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdj4gXHJcbiAgICAgICAgICAgICAgICAgICAgPGEgb25DbGljaz17b3BlbkFuZFNjcm9sbCh7IGl0OiBcInRhYi13aXNjaG1leWVyXCIsIHNjcm9sbFRhcmdldDogXCJ3aXNjaG1leWVyXCIgfSl9PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPVwic3VidGl0bGU4XCIgY2xhc3NOYW1lPVwiZGV0YWlsLXNpZGVpdGVtXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPVwicGFyZW50LXdpc2NobWV5ZXJcIiBjbGFzc05hbWU9XCJzaWRlaXRlbVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdW1tYXJ5Pldpc2NobWV5ZXI8L3N1bW1hcnk+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9hPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2PiBcclxuICAgICAgICAgICAgICAgICAgICA8YSBvbkNsaWNrPXtvcGVuQW5kU2Nyb2xsKHsgaXQ6IFwidGFiLW9sYXJpdVwiLCBzY3JvbGxUYXJnZXQ6IFwib2xhcml1XCIgfSl9PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPVwic3VidGl0bGU5XCIgY2xhc3NOYW1lPVwiZGV0YWlsLXNpZGVpdGVtXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPVwicGFyZW50LW9sYXJpdVwiIGNsYXNzTmFtZT1cInNpZGVpdGVtXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN1bW1hcnk+T2xhcml1PC9zdW1tYXJ5PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvYT5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L25hdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gICAgKVxyXG59XHJcblxyXG4gICBcclxuXHJcbiAgZXhwb3J0IGZ1bmN0aW9uIG9wZW5BbmRTY3JvbGwoeyBpdCwgc2Nyb2xsVGFyZ2V0IH06IHsgaXQ6IHN0cmluZywgc2Nyb2xsVGFyZ2V0Pzogc3RyaW5nIH0pIHtcclxuICAgIGNvbnN0IGdvdG9hbmRvcGVuID0gKF9ldmVudDogUmVhY3QuTW91c2VFdmVudDxIVE1MRWxlbWVudCwgTW91c2VFdmVudD4pID0+IHtcclxuICAgICAgICBfZXZlbnQucHJldmVudERlZmF1bHQoKTsgLy8gUHJldmVudCBkZWZhdWx0IGFuY2hvciBiZWhhdmlvclxyXG5cclxuICAgICAgICBjb25zb2xlLmxvZyhgb3BlbkFuZFNjcm9sbCBjYWxsZWQgd2l0aCBpdDogJHtpdH0gYW5kIHNjcm9sbFRhcmdldDogJHtzY3JvbGxUYXJnZXR9YCk7XHJcblxyXG4gICAgICAgIC8vIEF0dGVtcHQgdG8gZmluZCB0aGUgZWxlbWVudHNcclxuICAgICAgICBjb25zdCBzdWJ0YWJFbGVtZW50ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoaXQpO1xyXG4gICAgICAgIGNvbnN0IHBhcmVudEVsZW1lbnRJZCA9IFwicGFyZW50LVwiICsgaXQucmVwbGFjZShcInRhYi1cIiwgXCJcIik7XHJcbiAgICAgICAgY29uc3QgcGFyZW50RWxlbWVudCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHBhcmVudEVsZW1lbnRJZCk7XHJcblxyXG4gICAgICAgIGNvbnNvbGUubG9nKGBzdWJ0YWJFbGVtZW50IHdpdGggSUQgJHtpdH06IGAsIHN1YnRhYkVsZW1lbnQpO1xyXG4gICAgICAgIGNvbnNvbGUubG9nKGBwYXJlbnRFbGVtZW50IHdpdGggSUQgJHtwYXJlbnRFbGVtZW50SWR9OiBgLCBwYXJlbnRFbGVtZW50KTtcclxuXHJcbiAgICAgICAgaWYgKHN1YnRhYkVsZW1lbnQgJiYgcGFyZW50RWxlbWVudCkge1xyXG4gICAgICAgICAgICBjb25zb2xlLmxvZyhcIkZvdW5kIHN1YnRhYkVsZW1lbnQgYW5kIHBhcmVudEVsZW1lbnQuXCIpO1xyXG4gICAgICAgICAgICAvLyBTaG93IHRoZSBzZWxlY3RlZCB0YWIgaW4gdGhlIHNpZGViYXIgYW5kIGFkZCBhY3RpdmUgY2xhc3NcclxuICAgICAgICAgICAgc3VidGFiRWxlbWVudC5zdHlsZS5kaXNwbGF5ID0gXCJibG9ja1wiO1xyXG4gICAgICAgICAgICBwYXJlbnRFbGVtZW50LmNsYXNzTGlzdC5hZGQoXCJhY3RpdmUtc2lkZWl0ZW1cIik7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgY29uc29sZS5lcnJvcihgU3VidGFiIGVsZW1lbnQgb3IgcGFyZW50IGVsZW1lbnQgbm90IGZvdW5kIGZvciBJRDogJHtpdH1gKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC8vIElmIGEgc2Nyb2xsIHRhcmdldCBpcyBwcm92aWRlZCwgc2Nyb2xsIHRvIHRoYXQgZWxlbWVudCBvbiB0aGUgcGFnZVxyXG4gICAgICAgIGlmIChzY3JvbGxUYXJnZXQpIHtcclxuICAgICAgICAgICAgY29uc3QgdGFyZ2V0RWxlbWVudCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHNjcm9sbFRhcmdldCk7XHJcbiAgICAgICAgICAgIGlmICh0YXJnZXRFbGVtZW50KSB7XHJcbiAgICAgICAgICAgICAgICBjb25zb2xlLmxvZyhgU2Nyb2xsaW5nIHRvIGVsZW1lbnQgd2l0aCBJRDogJHtzY3JvbGxUYXJnZXR9YCk7XHJcbiAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgIC8vIEdldCB0aGUgcG9zaXRpb24gb2YgdGhlIGVsZW1lbnQgcmVsYXRpdmUgdG8gdGhlIGRvY3VtZW50XHJcbiAgICAgICAgICAgICAgICBjb25zdCBlbGVtZW50UmVjdCA9IHRhcmdldEVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XHJcbiAgICAgICAgICAgICAgICBjb25zdCBlbGVtZW50VG9wID0gZWxlbWVudFJlY3QudG9wICsgd2luZG93LnNjcm9sbFk7XHJcbiAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgIC8vIENhbGN1bGF0ZSB0aGUgbWlkZGxlIG9mIHRoZSB2aWV3cG9ydFxyXG4gICAgICAgICAgICAgICAgY29uc3Qgdmlld3BvcnRIZWlnaHQgPSB3aW5kb3cuaW5uZXJIZWlnaHQ7XHJcbiAgICAgICAgICAgICAgICBjb25zdCBzY3JvbGxPZmZzZXQgPSBlbGVtZW50VG9wIC0gKHZpZXdwb3J0SGVpZ2h0IC8gNSAtIHRhcmdldEVsZW1lbnQub2Zmc2V0SGVpZ2h0IC8gMik7XHJcbiAgICAgICAgICAgICAgIC8qICBcclxuICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKGBFbGVtZW50IFRvcDogJHtlbGVtZW50VG9wfWApO1xyXG4gICAgICAgICAgICAgICAgY29uc29sZS5sb2coYFZpZXdwb3J0IEhlaWdodDogJHt2aWV3cG9ydEhlaWdodH1gKTtcclxuICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKGBTY3JvbGwgT2Zmc2V0OiAke3Njcm9sbE9mZnNldH1gKTsgKi9cclxuICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgd2luZG93LnNjcm9sbFRvKHtcclxuICAgICAgICAgICAgICAgICAgICB0b3A6IHNjcm9sbE9mZnNldCxcclxuICAgICAgICAgICAgICAgICAgICBiZWhhdmlvcjogXCJzbW9vdGhcIlxyXG4gICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICBjb25zb2xlLmVycm9yKGBTY3JvbGwgdGFyZ2V0IGVsZW1lbnQgbm90IGZvdW5kIGZvciBJRDogJHtzY3JvbGxUYXJnZXR9YCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICByZXR1cm4gZ290b2FuZG9wZW47XHJcbn1cclxuXHJcbiIsICJcclxuaW1wb3J0IHsgY3JlYXRlU2lkZWJhciB9IGZyb20gXCIuLi91dGlscy9jcmVhdGVTaWRlYmFyXCI7XHJcblxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIFNhZmV0eVNpZGViYXIoKXtcclxuICAgIGxldCBzaWRlYmFyID0gY3JlYXRlU2lkZWJhcih0YWJzKTsgXHJcbiAgICByZXR1cm4oXHJcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wtMiAgZC1ub25lIGQtbGctYmxvY2tcIj5cclxuICAgICAgICAgICB7c2lkZWJhcn1cclxuICAgICAgICA8L2Rpdj5cclxuICAgICl9XHJcbmNvbnN0IHRhYnMgPSBbXHJcbiAgICB7IHRhYjogXCJSb2xlXCIgfSxcclxuICAgIHsgdGFiOiBcIkJpb3NhZmV0eVwiLCBzdWJ0YWJzOiBbXCJNZWNoYW5pc21cIiwgXCJEZWxpdmVyeVwiXSB9LFxyXG4gICAgeyB0YWI6IFwiQmlvc2VjdXJpdHlcIiwgc3VidGFiczogW1wiT3VyIFByb2plY3RcIiwgXCJSaXNrIEFzc2Vzc21lbnRcIiwgXCJNYW5hZ2luZyBSaXNrc1wiXSB9LFxyXG4gICAgeyB0YWI6IFwiQmlvZXRoaWNzXCIsIHN1YnRhYnM6IFtcIkdlbmUgVGhlcmFweVwiLCBcIlByaW1hcnkgQ2VsbHNcIiwgXCJDb25zZW50IGFuZCBHdWlkZWxpbmVzXCJdIH0sXHJcbiAgICB7IHRhYjogXCJDaGVjay1JbnNcIn0sXHJcbiAgICB7IHRhYjogXCJPdXIgTGFiXCIgfSxcclxuICAgXHJcbiAgXTsiLCAiZXhwb3J0IGZ1bmN0aW9uIE5vU2lkZWJhcigpe1xyXG4gICAgcmV0dXJuKFxyXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sLTIgZC1ub25lIGQtbGctYmxvY2tcIj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgIClcclxufSIsICJpbXBvcnQgeyBQREYgfSBmcm9tIFwiLi4vY29tcG9uZW50cy9QZGZzXCI7XHJcbmltcG9ydCB7IEJsb2NrUXVvdGVCIH0gZnJvbSBcIi4uL2NvbXBvbmVudHMvUXVvdGVzXCI7XHJcbmltcG9ydCB7IFNlY3Rpb24sIFN1YmVzY3Rpb24gfSBmcm9tIFwiLi4vY29tcG9uZW50cy9zZWN0aW9uc1wiO1xyXG5pbXBvcnQgeyB1c2VUYWJOYXZpZ2F0aW9uIH0gZnJvbSBcIi4uL3V0aWxzL1RhYk5hdmlnYXRpb25cIjtcclxuXHJcblxyXG5leHBvcnQgZnVuY3Rpb24gaWdlbUJpZWxlZmVsZCgpIHtcclxuICB1c2VUYWJOYXZpZ2F0aW9uKCk7XHJcbiAgICByZXR1cm4gKFxyXG4gICAgICA8PlxyXG4gICAgICA8U2VjdGlvbiB0aXRsZT1cIkJpZWxlZmVsZCBVbml2ZXJzaXR5XCIgaWQ9XCJCaWVsZWZlbGQgVW5pdmVyc2l0eVwiPiAgXHJcbiAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL3VuaXZlcnNpdHkvYmllbGVmZWxkLTMzODE4NzAuanBnXCIvPlxyXG4gICAgICAgICA8cD5cclxuICAgICAgICAgQmllbGVmZWxkIFVuaXZlcnNpdHksIGVzdGFibGlzaGVkIGluIDE5NjksIGlzIGRpc3Rpbmd1aXNoZWQgYnkgaXRzIGludGVyZGlzY2lwbGluYXJ5IGFwcHJvYWNoIHRvIHJlc2VhcmNoIGFuZCB0ZWFjaGluZyBhdCB0aGUgaGlnaGVzdCBhY2FkZW1pYyBsZXZlbC4gVGhlIHVuaXZlcnNpdHkgaXMgY29uc3RpdHV0ZWQgb2YgMTQgZmFjdWx0aWVzLCB3aGljaCBlbmNvbXBhc3MgYSBjb21wcmVoZW5zaXZlIHJhbmdlIG9mIHN1YmplY3QgYXJlYXMsIGluY2x1ZGluZyB0aGUgaHVtYW5pdGllcywgbmF0dXJhbCBhbmQgdGVjaG5pY2FsIHNjaWVuY2VzLCBzb2NpYWwgc2NpZW5jZXMsIGFuZCBlZHVjYXRpb24uIEluIHRoZSBmb3J0aGNvbWluZyB5ZWFycywgdGhlIHJlY2VudGx5IGVzdGFibGlzaGVkIGZhY3VsdHkgb2YgbWVkaWNpbmUgd2lsbCBzZXJ2ZSB0byBmdXJ0aGVyIGV4cGFuZCB0aGUgdW5pdmVyc2l0eSdzIGludGVyZGlzY2lwbGluYXJ5IHJlc2VhcmNoIG9wcG9ydHVuaXRpZXMuIFdpdGggYW4gZW5yb2xsbWVudCBvZiBhcHByb3hpbWF0ZWx5IDI1LDAwMCBzdHVkZW50cywgaW5jbHVkaW5nIDIsMDAwIGludGVybmF0aW9uYWwgc3R1ZGVudHMsIEJpZWxlZmVsZCBVbml2ZXJzaXR5IG9mZmVycyAxMjMgZGlmZmVyZW50IGRlZ3JlZSBwcm9ncmFtcy4gVGhlIGNhbXB1cyBpcyBjdXJyZW50bHkgdW5kZXJnb2luZyBhIHNpZ25pZmljYW50IGV4cGFuc2lvbiwgd2l0aCB0aGUgb2JqZWN0aXZlIG9mIGJlY29taW5nIG9uZSBvZiB0aGUgbW9zdCBtb2Rlcm4gaW4gRXVyb3BlLiBUaGUgbmV3IGZhY2lsaXRpZXMgd2lsbCBvZmZlciBzdHVkZW50cyBhbiBleGNlcHRpb25hbCBlbnZpcm9ubWVudC4gQmllbGVmZWxkIFVuaXZlcnNpdHkgYWN0aXZlbHkgY29sbGFib3JhdGVzIHdpdGggb3ZlciAzMDAgcGFydG5lciBpbnN0aXR1dGlvbnMgd29ybGR3aWRlLCBmb3N0ZXJpbmcgZ2xvYmFsIGFjYWRlbWljIGV4Y2hhbmdlLiBUaHJvdWdoIGl0cyBFcmFzbXVzKyBwcm9ncmFtLCB0aGUgdW5pdmVyc2l0eSBlbmFibGVzIHN0dWRlbnRzIGFuZCBmYWN1bHRpZXMgdG8gZW5nYWdlIGluIHJlc2VhcmNoIGFuZCBzdHVkeSBhYnJvYWQgcHJvZ3JhbXMgYWNyb3NzIEV1cm9wZSwgQXNpYSwgQW1lcmljYSBhbmQgYmV5b25kLiBXaGlsZSBCaWVsZWZlbGQgaGFzIHRyYWRpdGlvbmFsbHkgYmVlbiBrbm93biBmb3IgaXRzIHN0cm9uZyBzb2Npb2xvZ3kgZGVwYXJ0bWVudCwgcmVjZW50IGFkdmFuY2VzIGluIHJvYm90aWNzIGFuZCBiaW90ZWNobm9sb2d5IGhhdmUgYnJvdWdodCB0aGVzZSBmaWVsZHMgdG8gdGhlIGZvcmVmcm9udCBvZiB0aGUgdW5pdmVyc2l0eSdzIGN1dHRpbmctZWRnZSByZXNlYXJjaC4gQXMgYSByZXN1bHQsIHRoZSBDZW50cmUgZm9yIEJpb3RlY2hub2xvZ3kgKENlQmlUZWMpIGhhcyBiZWNvbWUgb25lIG9mIHRoZSB1bml2ZXJzaXR5J3MgbW9zdCBpbXBvcnRhbnQgaW5zdGl0dXRlcy4gXHJcbiAgICAgICAgIDwvcD5cclxuICAgICAgICAgPGltZyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvdW5pdmVyc2l0eS9pbWctMTk4OS5qcGVnXCIvPlxyXG4gICAgICAgICA8cD5cclxuICAgICAgICAgVGhlIENlbnRyZSBmb3IgQmlvdGVjaG5vbG9neSAoQ2VCaVRlYykgY29uc3RpdHV0ZXMgYSBjZW50cmFsIGluc3RpdHV0aW9uIGF0IEJpZWxlZmVsZCBVbml2ZXJzaXR5LCBkZWRpY2F0ZWQgdG8gaW50ZXJkaXNjaXBsaW5hcnkgcmVzZWFyY2ggaW4gdGhlIGZpZWxkIG9mIGxpZmUgc2NpZW5jZXMuIEl0IGlzIG9uZSBvZiB0aGUgbGFyZ2VzdCByZXNlYXJjaCBmYWNpbGl0aWVzIG9uIGNhbXB1cywgZmFjaWxpdGF0aW5nIGlubm92YXRpdmUgcHJvamVjdHMgdGhhdCBzcGFuIHNldmVyYWwgZGlzY2lwbGluZXMuIFRoZSByZXNlYXJjaCBhcmVhcyBvZiBmb2N1cyBpbmNsdWRlIGxhcmdlLXNjYWxlIGdlbm9taWNzLCBiaWcgZGF0YSBiaW9pbmZvcm1hdGljcyBhbmQgbWV0YWJvbGljIGVuZ2luZWVyaW5nIG9mIHNpbmdsZS1jZWxsIHN5c3RlbXMgZm9yIGJpb3Byb2R1Y3Rpb24uIENlQmlUZWMgdW5pdGVzIHJlc2VhcmNoIGZyb20gYSBtdWx0aXR1ZGUgb2YgZGlzY2lwbGluZXMsIGluY2x1ZGluZyBiaW90ZWNobm9sb2d5LCBtb2xlY3VsYXIgYmlvbG9neSwgZ2Vub21lIHJlc2VhcmNoLCBzeXN0ZW1zIGJpb2xvZ3ksIGJpb2NoZW1pc3RyeSwgYmlvaW5mb3JtYXRpY3MsIGFuZCBjb21wdXRlciBzY2llbmNlLiBBZGRpdGlvbmFsbHksIGl0IHBsYXlzIGEgc2lnbmlmaWNhbnQgcm9sZSBpbiBhY2FkZW1pYyB0cmFpbmluZyBhbmQgZG9jdG9yYWwgcHJvZ3JhbW1lcywgYXMgd2VsbCBhcyBzZXJ2aW5nIGFzIGEgaHViIGZvciBiaW90ZWNobm9sb2dpY2FsIGluaXRpYXRpdmVzLiBDZUJpVGVjIGlzIHNpdHVhdGVkIHdpdGhpbiB0aGUgc3RhdGUtb2YtdGhlLWFydCBMYWJvcmF0b3J5IEJ1aWxkaW5nIEcgb24gdGhlIGNhbXB1cyBvZiBCaWVsZWZlbGQgVW5pdmVyc2l0eSwgd2hpY2ggb3BlbmVkIGluIDIwMDcuIFRocm91Z2ggaXN0IGZvY3VzIG9uIENyb3NzLWRpc2NpcGxpbmFyeSBjb2xsYWJvcmF0aW9uLCBDZUJpVGVjIHNlcnZlcyBhcyBhIHZpcmFsIGxpbmsgYmV0d2VlbiBhY2FkZW1pYyBpbm5vdmF0aW9uIGFuZCByZWFsLXdvcmxkIGFwcGxpY2F0aW9ucywgc2hhcGluZyB0aGUgZnV0dXJlIG9mIGJpb3RlY2hub2xvZ3kgYXQgQmllbGVmZWxkIFVuaXZlcnNpdHkgYW5kIGJleW9uZC5cclxuICAgICAgICAgPC9wPlxyXG4gICAgICA8L1NlY3Rpb24+XHJcbiAgICAgICAgPFNlY3Rpb24gdGl0bGU9XCJIaXN0b3J5XCIgaWQ9XCJIaXN0b3J5XCI+XHJcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3dcIj5cclxuICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj4gXHJcbiAgICAgPGltZyBzcmM9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9zcG9uc29ycy91bmktYmllbGVmZWxkLWR1bmtlbC5wbmdcIiBzdHlsZT17eyBoZWlnaHQ6XCIxMDBweFwifX0vPiBcclxuICAgPC9kaXY+XHJcbiAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+IFxyXG4gICAgICA8aW1nIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Nwb25zb3JzL2NlYml0ZWMtbG9nby1oaW50ZXJsZWd0LnBuZ1wiIHN0eWxlPXt7aGVpZ2h0OlwiMTAwcHhcIn19Lz5cclxuICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcbiAgICAgICAgPGJyLz5cclxuICAgICAgICA8cD5UaGUgZ2xvcmlvdXMgaGlzdG9yeSBvZiB0aGUgaUdFTSB0ZWFtIEJpZWxlZmVsZCBiZWdhbiBpbiAyMDEwIGFuZCBtYXJrZWQgaXRzIGRlYnV0IG9uIHRoZSBnbG9iYWwgc3RhZ2UgXHJcbiAgICAgICAgICBvZiBzeW50aGV0aWMgYmlvbG9neS4gU2luY2UgdGhlbiwgdGhlIHRlYW1zIHdlcmUgY29tcG9zZWQgb2Ygb3ZlciAxNjAgZW50aHVzaWFzdGljIHN0dWRlbnRzIGZyb20gdmFyaW91cyBkaXNjaXBsaW5lcywgaW5jbHVkaW5nIGJpb2xvZ3ksIGNoZW1pc3RyeSwgYW5kIGVuZ2luZWVyaW5nLjwvcD5cclxuICAgICAgICA8cD5UaGVpciBpbml0aWFsIHByb2plY3QgZm9jdXNlZCBvbiB0aGUgZGV2ZWxvcG1lbnQgb2YgYSBiaW9zZW5zb3IgZm9yIHRoZSBtZWFzdXJlbWVudCBvZiBzcGljaW5lc3MgaW4gZm9vZCwgd2hpY2ggcmVzdWx0ZWQgaW4gdGhlIHRlYW0gYmVpbmcgYXdhcmRlZCBhIGdvbGQgbWVkYWwgYXQgdGhlIGNvbXBldGl0aW9uLiBGb2xsb3dpbmcgdGhpcyBzdWNjZXNzZnVsIGRlYnV0LCB0aGUgdGVhbXMgY29udGludWVkIHRvIGV2b2x2ZSwgYm90aCBpbiBzaXplIGFuZCBleHBlcnRpc2UuICBcclxuICAgICAgICBPdmVyIG1vcmUgdGhhbiB0ZW4geWVhcnMsIHRoZSBpR0VNIFRlYW0gQmllbGVmZWxkLUNlQmlUZWMgZW5nYWdlZCBpbiBhIG11bHRpdHVkZSBvZiBwcm9qZWN0cywgZWFjaCBwdXNoaW5nIHRoZSBib3VuZGFyaWVzIG9mIHN5bnRoZXRpYyBiaW9sb2d5LiBUaGUgdGVhbXMgZWFybmVkIDEzIGdvbGQgbWVkYWxzIGFuZCBoYXZlIGFjaGlldmVkIGEgcmFua2luZyB3aXRoaW4gdGhlIHRvcCAxNiB0ZWFtcyB0d2ljZSAoMjAxMSwgMjAxMikuIE9uZSBvZiB0aGUgbW9zdCBub3RhYmxlIGFjaGlldmVtZW50cyB3YXMgcmVhY2hlZCBpbiAyMDEzLCB3aGVuIHRoZSBpR0VNIFRlYW0gQmllbGVmZWxkIHdvbiB0aGUgRXVyb3BlYW4gSmFtYm9yZWUsIHdlcmUgdGhlIEZpcnN0IFJ1bm5lciBVcCBhdCB0aGUgR2lhbnQgSmFtYm9yZWUgYW5kIHNlY3VyZWQgc2V2ZXJhbCBUcmFjayBhbmQgU3BlY2lhbCBQcml6ZXMuIFRoZWlyIHByb2plY3QgXHUyMDFDRWNvbGVjdHJpY2l0eVx1MjAxRCBmb2N1c2VkIG9uIGNyZWF0aW5nIGEgbWljcm9iaWFsIGZ1ZWwgY2VsbCwgYnkgdHJhbnNmb3JtaW5nIEUuIGNvbGkgaW50byBhbiBlbGVjdHJvLWFjdGl2ZSBiYWN0ZXJpdW0gYW5kIGluY29ycG9yYXRpbmcgaXQgaW50byBhIGZ1ZWwgY2VsbCB0aGF0IHByb3ZpZGVzIGFuIGVudmlyb25tZW50YWxseSBmcmllbmRseSBhbHRlcm5hdGl2ZSBmb3IgZ2VuZXJhdGluZyBlbGVjdHJpY2l0eS4gVGhlaXIgaW5ub3ZhdGl2ZSBhcHByb2FjaCBhbmQgY2FyZWZ1bCBleGVjdXRpb24gaW1wcmVzc2VkIHRoZSBqdXJ5IGFuZCBzb2xpZGlmaWVkIHRoZSBCaWVsZWZlbGQgdGVhbSdzIHJlcHV0YXRpb24gaW4gdGhlIGlHRU0gY29tbXVuaXR5LiBJbiBhY2tub3dsZWRnbWVudCBvZiB0aGUgcGl2b3RhbCByb2xlIHBsYXllZCBieSB0aGUgQ2VudGVyIGZvciBCaW90ZWNobm9sb2d5IChDZUJpVGVjKSBpbiB0aGUgdGVhbVx1MjAxOXMgc3VjY2VzcyBzaW5jZSB0aGUgYmVnaW5uaW5nLCB0aGUgbmFtZSBvZiB0aGUgdGVhbSB3YXMgb2ZmaWNpYWxseSBjaGFuZ2VkIHRvIEJpZWxlZmVsZC1DZUJpVGVjIGluIDIwMTQuIFRoaXMgY2hhbmdlIGhpZ2hsaWdodGVkIHRoZSBjbG9zZSBjb2xsYWJvcmF0aW9uIGJldHdlZW4gdGhlIHRlYW0gYW5kIHRoZSByZXNlYXJjaCBjZW50ZXIsIHRoZXJlYnkgdW5kZXJzY29yaW5nIHRoZSBpbXBvcnRhbmNlIG9mIGluc3RpdHV0aW9uYWwgc3VwcG9ydCBpbiBhZHZhbmNpbmcgc2NpZW50aWZpYyByZXNlYXJjaCBhbmQgZWR1Y2F0aW9uIHJlbGF0ZWQgdG8gdGhlIGlHRU0gY29tcGV0aXRpb24uPC9wPlxyXG4gICAgICAgIDxwPkluIHJlY2VudCB5ZWFycywgdGhlIHRlYW1zIGNvbnRpbnVlZCB0byBwdXJzdWUgaW5ub3ZhdGl2ZSBhdmVudWVzIG9mIGVucXVpcnkuIFRoZWlyIHByb2plY3RzIHJhbmdlZCBmcm9tIGRldmVsb3BpbmcgYmlvbG9naWNhbCBzeXN0ZW1zIGZvciBtZWRpY2FsIGFwcGxpY2F0aW9ucyB0byBjcmVhdGluZyBzdXN0YWluYWJsZSBzb2x1dGlvbnMgZm9yIGluZHVzdHJpYWwgYW5kIGVudmlyb25tZW50YWwgY2hhbGxlbmdlcy4gRm9yIGluc3RhbmNlLCBpbiAyMDE4LCB0aGUgcHJvamVjdCBcIm5hbm9GYWN0b3J5XCIgYWltZWQgdG8gc2NhdmVuZ2UgaGVhdnkgbWV0YWwgaW9ucyB1c2luZyBvcHRpbWl6ZWQgRS4gY29saSBjZWxscyB0byBhY2N1bXVsYXRlIGhlYXZ5IG1ldGFsIGlvbnMgaW5zaWRlIHRoZSBjeXRvcGxhc20gYWRkcmVzc2luZyB0aGUgaXNzdWUgb2YgaW5jcmVhc2luZyBzY2FyY2l0eSBvZiBtZXRhbCByZXNvdXJjZXMgZHVlIHRvIGdsb2JhbCBjb25zdW1wdGlvbiBvZiBlbGVjdHJvbmljcy4gXHJcbiAgICAgICAgSW4gdGhlIHByZXZpb3VzIHllYXIsIHRoZSBpR0VNIHRlYW0gQmllbGVmZWxkLUNlQmlUZWMgZGV2ZWxvcGVkIGEgcGxhdGZvcm0gZm9yIGRpYWdub3NpcyBhbmQgdGhlcmFweSBvZiBicmFpbiB0dW1vcnMgY2FsbGVkIFwiQVNURVJJU0tcIi4gVGhlIHRlYW0gZm9jdXNpbmcgb24gYSBtb2R1bGFyIGdlbmV0aWMgc3lzdGVtIHRvIHRhcmdldCBnbGlvbWFzIGJ5IGRlc2lnbmluZyBtUk5BIG1vbGVjdWxlcyB0aGF0LCB1cG9uIGRldGVjdGlvbiBvZiBhIHR1bW9yLXNwZWNpZmljIG11dGF0aW9uIG9yIGFtcGxpZmljYXRpb24sIGxlYWQgdG8gdGhlIHRyYW5zbGF0aW9uIG9mIGEgdG94aWMgcHJvdGVpbiB0aGF0IHNlbGVjdGl2ZWx5IGtpbGxzIGNhbmNlciBjZWxscyB3aXRob3V0IGhhcm1pbmcgaGVhbHRoeSBjZWxscy4gVGhpcyBpbm5vdmF0aXZlIGFwcHJvYWNoIGlzIGEgcGVyZmVjdCBleGFtcGxlIG9mIGhvdyBzeW50aGV0aWMgYmlvbG9neSBjYW4gYmUgdXNlZCB0byBpbXByb3ZlIHRoZSBzcGVjaWZpY2l0eSBhbmQgZWZmaWNhY3kgb2YgbWVkaWNhbCB0cmVhdG1lbnRzLCBwcm92aWRpbmcgdmFsdWFibGUgdG9vbHMgdG8gdGhlIGlHRU0gY29tbXVuaXR5LjwvcD4gXHJcbiAgICAgICAgPHA+QSBzaWduaWZpY2FudCBhc3BlY3Qgb2YgaUdFTSBCaWVsZWZlbGQtQ2VCaVRlY1x1MjAxOXMgc3VjY2VzcyBoYXMgYmVlbiB0aGVpciBlbXBoYXNpcyBvbiBjb2xsYWJvcmF0aW9uIGFuZCBjb21tdW5pdHkgZW5nYWdlbWVudC4gVGhlIHRlYW0gcmVndWxhcmx5IGNvbGxhYm9yYXRlcyB3aXRoIG90aGVyIGlHRU0gdGVhbXMsIGluc3RpdHV0aW9ucywgY29tcGFuaWVzLCBhbmQgc2NpZW50aXN0cyBzaGFyaW5nIGtub3dsZWRnZSBhbmQgcmVzb3VyY2VzLiBUaGV5IGFsc28gZW5nYWdlIHdpdGggdGhlIGxvY2FsIGNvbW11bml0eSB0aHJvdWdoIG91dHJlYWNoIHByb2dyYW1zIGFuZCB3b3Jrc2hvcHMuIGhlIGhpc3Rvcnkgb2YgaUdFTSBCaWVsZWZlbGQgaXMgYSBzdG9yeSBvZiBtb3RpdmF0aW9uLCBkZWRpY2F0aW9uLCBhbmQgc2NpZW50aWZpYyBjdXJpb3NpdHkuIEZyb20gdGhlaXIgZWFybHkgYmVnaW5uaW5ncyB0byB0aGVpciBjdXJyZW50IGVuZGVhdm9ycywgdGhlIHRlYW0gaGFzIGNvbnNpc3RlbnRseSBkZW1vbnN0cmF0ZWQgdGhlIHBvd2VyIG9mIHN5bnRoZXRpYyBiaW9sb2d5IHRvIHRhY2tsZSBjb21wbGV4IGdsb2JhbCBjaGFsbGVuZ2VzLiBBcyB0aGV5IGNvbnRpbnVlIHRvIHBhcnRpY2lwYXRlIGluIHRoZSBpR0VNIGNvbXBldGl0aW9uLCB0aGV5IHJlbWFpbiB0byBkZW1vbnN0cmF0ZSBpbm5vdmF0aW9uIGFuZCBjb2xsYWJvcmF0aW9uIHdpdGhpbiB0aGUgc2NpZW50aWZpYyBjb21tdW5pdHkuPC9wPlxyXG4gICAgICAgIFxyXG4gICAgICAgIDwvU2VjdGlvbj5cclxuXHJcbiAgICAgICAgPFNlY3Rpb24gdGl0bGU9XCJTdGVlcmluZyBDb21taXR0ZWVcIiBpZD1cIlN0ZWVyaW5nIENvbW1pdHRlZVwiPlxyXG4gICAgICAgIDxCbG9ja1F1b3RlQiB0ZXh0PVwiaUdFTSBpcyB0aGUgYmlnZ2VzdCBvcHBvcnR1bml0eSBmb3IgeW91bmcgcmVzZWFyY2hlcnMgdG8gY3Jvc3MgdGhlaXIgb3duIGJvdW5kYXJpZXMuXCIgY2l0ZT1cIlByb2YuIERyLiBKXHUwMEY2cm4gS2FsaW5vd3NraSwgUHJpbmNpcGxlIEludmVzdGlnYXRvciBvZiBpR0VNIEJpZWxlZmVsZCBzaW5jZSAyMDEwXCIvPlxyXG4gICAgICAgICAgPFN1YmVzY3Rpb24gdGl0bGU9XCJXaGF0IGlzIGEgU3RlZXJpbmcgQ29tbWl0dGVlP1wiIGlkPVwiU3RlZXJpbmcgQ29tbWl0dGVlMVwiPlxyXG4gICAgICAgICAgICAgIDxwPlRoZSBTdGVlcmluZyBDb21taXR0ZWUgcGxheXMgYSBjZW50cmFsIHJvbGUgaW4gdGhlIHJlc3VtcHRpb24gYW5kIGZ1cnRoZXIgZGV2ZWxvcG1lbnQgb2YgaUdFTSBhY3Rpdml0aWVzIGF0IEJpZWxlZmVsZCBVbml2ZXJzaXR5LiBBZnRlciBhIHBhdXNlIGluIDIwMjIgZHVlIHRvIGZpbmFuY2lhbCBjb25zdHJhaW50cyBhbmQgY2hhbmdlcyBpbiBwYXJ0aWNpcGF0aW9uIGNvbmRpdGlvbnMsIHRoZSBTdGVlcmluZyBDb21taXR0ZWUgd2FzIGVzdGFibGlzaGVkIHRvIGVuc3VyZSBCaWVsZWZlbGQncyBzdXN0YWluYWJsZSBwYXJ0aWNpcGF0aW9uIGluIGZ1dHVyZSBpR0VNIGNvbXBldGl0aW9ucy48L3A+XHJcbiAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3dcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGRmcy9zdGVlcmluZy1jb21taXRlZS53ZWJwXCIgIC8+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICAgICAgICA8cD5UaGUgU3RlZXJpbmcgQ29tbWl0dGVlIGNvbnNpc3RzIG9mIGZpdmUgcmVub3duZWQgc2NpZW50aXN0cyBmcm9tIHRoZSBGYWN1bHRpZXMgb2YgQmlvbG9neSBhbmQgVGVjaG5vbG9neTogRHIuIFBldHJhIEx1dHRlciwgUHJvZi4gRHIuIEpcdTAwRjZybiBLYWxpbm93c2tpLCBQcm9mLiBEci4gS3Jpc3RpYW4gTVx1MDBGQ2xsZXIsIFByb2YuIERyLiBLYXJzdGVuIE5pZWhhdXMsIGFuZCBQcm9mLiBEci4gSmVucyBTdG95ZS4gRWFjaCBvZiB0aGVzZSBleHBlcnRzIGJyaW5ncyBzcGVjaWZpYyBleHBlcnRpc2UgY3J1Y2lhbCBmb3IgdGhlIHN1Y2Nlc3NmdWwgZXhlY3V0aW9uIG9mIGlHRU0gcHJvamVjdHMuIFBldHJhIEx1dHRlciBoYXMgY29udHJpYnV0ZWQgdG8gbW9kZWxpbmcgaW4gcHJldmlvdXMgaUdFTSBwcm9qZWN0cywgd2hpbGUgSlx1MDBGNnJuIEthbGlub3dza2kgaGFzIGJlZW4gc2lnbmlmaWNhbnRseSBpbnZvbHZlZCBpbiBhbGwgcGFzdCBpR0VNIHByb2plY3RzLiBLcmlzdGlhbiBNXHUwMEZDbGxlciBoYXMgYmVlbiBhbiBleHBlcmllbmNlZCBzdXBwb3J0ZXIgb2YgdGhlIGlHRU0gY29tcGV0aXRpb25zIHNpbmNlIHRoZWlyIGluY2VwdGlvbiwgYW5kIEthcnN0ZW4gTmllaGF1cywgZm9ybWVyIGhlYWQgb2YgdGhlIFwiR2Vub21lLWJhc2VkIFN5c3RlbXMgQmlvbG9neVwiIG1hc3Rlclx1MjAxOXMgcHJvZ3JhbSwgYnJpbmdzIGV4dGVuc2l2ZSBrbm93bGVkZ2Ugb2YgdGhlIHNjaWVudGlmaWMgZm91bmRhdGlvbnMgb2YgdGhlIHByb2plY3RzLiBKZW5zIFN0b3llLCByZXByZXNlbnRpbmcgYmlvaW5mb3JtYXRpY3MgYXQgQmllbGVmZWxkIFVuaXZlcnNpdHksIGNvbnRyaWJ1dGVzIGhpcyBleHBlcnRpc2UgaW4gdGhpcyBhcmVhLiA8L3A+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgPHA+VGhlIG1haW4gZ29hbCBvZiB0aGUgU3RlZXJpbmcgQ29tbWl0dGVlIGlzIHRvIGVuc3VyZSB0aGUgc3VjY2Vzc2Z1bCBpbXBsZW1lbnRhdGlvbiBvZiBmdXR1cmUgaUdFTSBwcm9qZWN0cy4gVGhpcyBpbmNsdWRlcyBub3Qgb25seSBhY2FkZW1pYyBzdXBwb3J0IGJ1dCBhbHNvIG9yZ2FuaXphdGlvbmFsIGxlYWRlcnNoaXAsIHNlY3VyaW5nIGZ1bmRpbmcsIGFuZCBwcm92aWRpbmcgdGhlIG5lY2Vzc2FyeSBpbmZyYXN0cnVjdHVyZS4gVGhlIGV4cGVydHMgaW4gdGhlIFN0ZWVyaW5nIENvbW1pdHRlZSBhcmUgc2lnbmlmaWNhbnRseSBpbnZvbHZlZCBpbiB0aGUgc3RyYXRlZ2ljIGRpcmVjdGlvbiBvZiB0aGUgcHJvamVjdHMgYW5kIG9mZmVyIGEgcGxhdGZvcm0gd2hlcmUgaWRlYXMsIHJlc291cmNlcywgYW5kIGtub3dsZWRnZSBhcmUgcG9vbGVkIHRvIGNvbnRpbnVlIEJpZWxlZmVsZCdzIHRyYWRpdGlvbiBvZiBzdWNjZXNzZnVsIGlHRU0gcGFydGljaXBhdGlvbi4gPC9wPlxyXG4gICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgICAgIDxkaXYgc3R5bGU9e3ttYXJnaW5Cb3R0b206IFwiMXJlbVwifX0+PFBERiBsaW5rPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGRmcy9pZ2VtLWJyb3NjaHVyZS5wZGZcIiBuYW1lPVwiaWdlbS1icm9zY2h1cmUucGRmXCIgLz48L2Rpdj5cclxuICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInJvd1wiPlxyXG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgICAgICA8aW1nIHNyYz1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3BkZnMvc3RlZXJpbmctY29tbWl0dGVlLTEud2VicFwiLz5cclxuICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxwPkluIGhlbHBpbmcgdGhlIG5ldyBpR0VNIEJpZWxlZmVsZCB0ZWFtIGFkdmFuY2UgdGhlaXIgcHJvamVjdCwgdGhlIFN0ZWVyaW5nIENvbW1pdHRlZSBwbGF5ZWQgYW4gaW5kaXNwZW5zYWJsZSByb2xlLCBwYXJ0aWN1bGFybHkgYnkgcHJvbW90aW5nIHRoZSBpR0VNIHByaW5jaXBsZSBvZiBcIkNvbnRyaWJ1dGlvblwiIGFuZCBmb3N0ZXJpbmcgdGhlIGludGVyZGlzY2lwbGluYXJ5IG5hdHVyZSBvZiB0aGUgcHJvamVjdC4gVGhlIGNvbW1pdHRlZSBlbXBoYXNpemVkIHRoZSBpbXBvcnRhbmNlIG9mIGNyZWF0aW5nIHRvb2xzLCBkYXRhLCBhbmQgbWV0aG9kcyB0aGF0IGNhbiBiZW5lZml0IHRoZSBnbG9iYWwgaUdFTSBjb21tdW5pdHkuIFRoaXMgbWluZHNldCB3YXMgcmVmbGVjdGVkIGluIHRoZSB0ZWFtXHUyMDE5cyBwcm9qZWN0IGRlc2lnbiwgZW5zdXJpbmcgdGhhdCB0aGVpciB3b3JrIG5vdCBvbmx5IG1ldCBsb2NhbCBnb2FscyBidXQgYWxzbyBwcm92aWRlZCBtZWFuaW5nZnVsIGNvbnRyaWJ1dGlvbnMgdG8gZnV0dXJlIHByb2plY3RzLiAgPC9wPlxyXG4gICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgIDxwPk1vcmVvdmVyLCB0aGUgaW50ZXJkaXNjaXBsaW5hcnkgbmF0dXJlIG9mIHRoZSBpR0VNIHByb2plY3Qgd2FzIHN0cm9uZ2x5IGVuY291cmFnZWQgYnkgdGhlIFN0ZWVyaW5nIENvbW1pdHRlZS4gV2l0aCBtZW1iZXJzIGZyb20gdmFyaW91cyBzY2llbnRpZmljIGZpZWxkcywgdGhlIGNvbW1pdHRlZSBmYWNpbGl0YXRlZCBjb2xsYWJvcmF0aW9uIGJldHdlZW4gZGlzY2lwbGluZXMgc3VjaCBhcyBiaW9sb2d5LCBiaW9pbmZvcm1hdGljcywgYW5kIGJpb3RlY2hub2xvZ3kuIFRoaXMgaW50ZXJkaXNjaXBsaW5hcnkgYXBwcm9hY2ggYWxsb3dlZCB0aGUgdGVhbSB0byB0YWNrbGUgY29tcGxleCBjaGFsbGVuZ2VzIGZyb20gbXVsdGlwbGUgcGVyc3BlY3RpdmVzLCBpbnRlZ3JhdGluZyBjb21wdXRhdGlvbmFsIG1vZGVscyB3aXRoIGV4cGVyaW1lbnRhbCBiaW9sb2d5IHRvIGRyaXZlIGlubm92YXRpb24uIFRoaXMgZ3VpZGFuY2UgaGVscGVkIHRoZSBpR0VNIEJpZWxlZmVsZCB0ZWFtIGRldmVsb3AgYSBtb3JlIHJvYnVzdCBhbmQgaW1wYWN0ZnVsIHByb2plY3QsIGFsaWduaW5nIHdpdGggYm90aCB0aGUgc2NpZW50aWZpYyBnb2FscyBvZiB0aGUgY29tcGV0aXRpb24gYW5kIHRoZSBjb2xsYWJvcmF0aXZlIHNwaXJpdCBvZiB0aGUgaUdFTSBjb21tdW5pdHkuIDwvcD5cclxuICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICAgIDwvU3ViZXNjdGlvbj5cclxuICAgICAgICA8L1NlY3Rpb24+XHJcblxyXG4gICAgIFxyXG5cclxuICAgICAgPC8+XHJcbiAgICApO1xyXG4gIH1cclxuICAiLCAiZXhwb3J0IGZ1bmN0aW9uIElCSUUoKSB7XHJcblxyXG4gICAgcmV0dXJuIChcclxuICAgICAgPEhlYWRlckJveCB0aXRsZT1cImlHRU1cIiB0aXRsZTI9XCJCaWVsZWZlbGRcIiBpZD1cImliaGVhZFwiPlxyXG4gICAgICAgIFxyXG4gICAgICA8L0hlYWRlckJveD5cclxuICAgICk7XHJcbiAgfVxyXG4gIFxyXG4gIGltcG9ydCBIZWFkZXJCb3ggZnJvbSBcIi4uL2NvbXBvbmVudHMvSGVhZGVyQm94XCI7IiwgImltcG9ydCBCaWJ0ZXhQYXJzZXIgZnJvbSBcIi4uL2NvbXBvbmVudHMvbWFrZVNvdXJjZXNcIjtcclxuXHJcbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIE1ldGhvZFNvdXJjZXMoKXtcclxuICAgIHJldHVybiAoXHJcbiAgICAgICAgPGRpdj5cclxuICAgICAgICAgIDxCaWJ0ZXhQYXJzZXIgYmlidGV4U291cmNlcz17YmlidGV4U291cmNlc30gLz5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgKTtcclxufVxyXG5cclxuXHJcbmNvbnN0IGJpYnRleFNvdXJjZXMgPSBbXHJcbmBcclxuQGFydGljbGV7YXJ0aWNsZSxcclxuXHR0aXRsZSAgICAgICAgPSB7RGllIEVudHdpY2tsdW5nIGRlciBQYXRjaC1DbGFtcC1UZWNobmlrfSxcclxuXHRhdXRob3IgICAgICAgPSB7Um90aCwgRi4gQy4sIE51bWJlcmdlciwgTS4sIGFuZCBEcmFndWhuLCBBLn0sXHJcblx0eWVhciAgICAgICAgID0gMjAyMyxcclxuXHRtb250aCAgICAgICAgPSB7e319LFxyXG5cdGpvdXJuYWwgICAgICA9IHtTcHJpbmdlciBlQm9va3N9LFxyXG5cdHZvbHVtZSAgICAgICA9IHt7fX0sXHJcblx0cGFnZXMgICAgICAgID0gezEtLTE0fSxcclxuXHRkb2kgICAgICAgICAgPSB7MTAuMTAwNy85NzgtMy02NjItNjYwNTMtOX1cclxufWAsXHJcblxyXG5gXHJcbkBib29re2RhbGxhc19wYXRjaF8yMDIxLFxyXG5cdHRpdGxlICAgICAgICA9IHtQYXRjaCBjbGFtcCBlbGVjdHJvcGh5c2lvbG9neTogbWV0aG9kcyBhbmQgcHJvdG9jb2xzfSxcclxuXHRzaG9ydHRpdGxlICAgPSB7UGF0Y2ggY2xhbXAgZWxlY3Ryb3BoeXNpb2xvZ3l9LFxyXG5cdHllYXIgICAgICAgICA9IDIwMjEsXHJcblx0cHVibGlzaGVyICAgID0ge0h1bWFuYSBQcmVzc30sXHJcblx0YWRkcmVzcyAgICAgID0ge05ldyBZb3JrfSxcclxuXHRzZXJpZXMgICAgICAgPSB7TWV0aG9kcyBpbiBtb2xlY3VsYXIgYmlvbG9neX0sXHJcblx0bnVtYmVyICAgICAgID0gMjE4OCxcclxuXHRpc2JuICAgICAgICAgPSB7OTc4LTEtMDctMTYwODE4LTB9LFxyXG5cdGxhbmd1YWdlICAgICA9IHtlbn0sXHJcblx0ZWRpdG9yICAgICAgID0ge0RhbGxhcywgTWFyayBhbmQgQmVsbCwgRGFtaWFufVxyXG59XHJcbiAgICBgLFxyXG4gICAgYFxyXG5AYXJ0aWNsZXtQUklFTDIwMDczODkzLFxyXG5cdHRpdGxlICAgICAgICA9IHtcclxuXHRcdElvbmljIFJlcXVpcmVtZW50cyBmb3IgTWVtYnJhbmUtR2xhc3MgQWRoZXNpb24gYW5kIEdpZ2EgU2VhbCBGb3JtYXRpb24gaW5cclxuXHRcdFBhdGNoLUNsYW1wIFJlY29yZGluZ1xyXG5cdH0sXHJcblx0YXV0aG9yICAgICAgID0ge1xyXG5cdFx0QXZpIFByaWVsIGFuZCBaaXYgR2lsIGFuZCBWaW5jZW50IFQuIE1veSBhbmQgS2FybCBMLiBNYWdsZWJ5IGFuZCBTaGFpIEQuXHJcblx0XHRTaWxiZXJiZXJnXHJcblx0fSxcclxuXHR5ZWFyICAgICAgICAgPSAyMDA3LFxyXG5cdGpvdXJuYWwgICAgICA9IHtCaW9waHlzaWNhbCBKb3VybmFsfSxcclxuXHR2b2x1bWUgICAgICAgPSA5MixcclxuXHRudW1iZXIgICAgICAgPSAxMSxcclxuXHRwYWdlcyAgICAgICAgPSB7Mzg5My0tMzkwMH0sXHJcblx0ZG9pICAgICAgICAgID0gezEwLjE1MjkvYmlvcGh5c2ouMTA2LjA5OTExOX0sXHJcblx0aXNzbiAgICAgICAgID0gezAwMDYtMzQ5NX0sXHJcblx0dXJsICAgICAgICAgID0ge2h0dHBzOi8vd3d3LnNjaWVuY2VkaXJlY3QuY29tL3NjaWVuY2UvYXJ0aWNsZS9waWkvUzAwMDYzNDk1MDc3MTE4OVh9LFxyXG5cdGFic3RyYWN0ICAgICA9IHtcclxuXHRcdFBhdGNoLWNsYW1wIHJlY29yZGluZyBoYXMgcmV2b2x1dGlvbml6ZWQgdGhlIHN0dWR5IG9mIGlvbiBjaGFubmVscyxcclxuXHRcdHRyYW5zcG9ydGVycywgYW5kIHRoZSBlbGVjdHJpY2FsIGFjdGl2aXR5IG9mIHNtYWxsIGNlbGxzLiBWaXRhbCB0byB0aGlzXHJcblx0XHRtZXRob2QgaXMgZm9ybWF0aW9uIG9mIGEgdGlnaHQgc2VhbCBiZXR3ZWVuIGdsYXNzIHJlY29yZGluZyBwaXBldHRlIGFuZCBjZWxsXHJcblx0XHRtZW1icmFuZS4gVG8gYmV0dGVyIHVuZGVyc3RhbmQgc2VhbCBmb3JtYXRpb24gYW5kIGltcHJvdmUgcHJhY3RpY2FsXHJcblx0XHRhcHBsaWNhdGlvbiBvZiB0aGlzIHRlY2huaXF1ZSwgd2UgZXhhbWluZSB0aGUgZWZmZWN0cyBvZiBkaXZhbGVudCBpb25zLFxyXG5cdFx0cHJvdG9ucywgaW9uaWMgc3RyZW5ndGgsIGFuZCBtZW1icmFuZSBwcm90ZWlucyBvbiBhZGhlc2lvbiBvZiBtZW1icmFuZSB0b1xyXG5cdFx0Z2xhc3MgYW5kIG9uIHNlYWwgcmVzaXN0YW5jZSB1c2luZyBib3RoIHBhdGNoLWNsYW1wIHJlY29yZGluZyBhbmQgYXRvbWljXHJcblx0XHRmb3JjZSBtaWNyb3Njb3B5LiBXZSBmaW5kIHRoYXQgSCssIENhMissIGFuZCBNZzIrIGluY3JlYXNlIGFkaGVzaW9uIGZvcmNlXHJcblx0XHRiZXR3ZWVuIGdsYXNzIGFuZCBtZW1icmFuZSAobGlwaWQgYW5kIGNlbGx1bGFyKSwgZGVjcmVhc2UgdGhlIHRpbWUgcmVxdWlyZWRcclxuXHRcdHRvIGZvcm0gYSB0aWdodCBzZWFsLCBhbmQgaW5jcmVhc2Ugc2VhbCByZXNpc3RhbmNlLiBJbiB0aGUgYWJzZW5jZSBvZiBIK1xyXG5cdFx0KDEwXHUyMjEyMTBNKSBhbmQgZGl2YWxlbnQgY2F0aW9ucyAoPDEwXHUyMjEyOE0pLCBhZGhlc2lvbiBmb3JjZXMgYXJlIGdyZWF0bHkgcmVkdWNlZFxyXG5cdFx0YW5kIHRpZ2h0IHNlYWxzIGFyZSBub3QgZm9ybWVkLiBIKyAoMTBcdTIyMTI3TSkgcHJvbW90ZXMgc2VhbCBmb3JtYXRpb24gaW4gdGhlXHJcblx0XHRhYnNlbmNlIG9mIGRpdmFsZW50IGNhdGlvbnMuIEEgcG9zaXRpdmUgY29ycmVsYXRpb24gYmV0d2VlbiBhZGhlc2lvbiBmb3JjZVxyXG5cdFx0YW5kIHNlYWwgZm9ybWF0aW9uIGluZGljYXRlcyB0aGF0IGhpZ2ggcmVzaXN0YW5jZSBzZWFscyBhcmUgYXNzb2NpYXRlZCB3aXRoXHJcblx0XHRpbmNyZWFzZWQgYWRoZXNpb24gYmV0d2VlbiBtZW1icmFuZSBhbmQgZ2xhc3MuIEEgc2ltaWxhciBpb25pYyBkZXBlbmRlbmNlIG9mXHJcblx0XHR0aGUgYWRoZXNpb24gb2YgbGlwaWQgbWVtYnJhbmVzIGFuZCBjZWxsIG1lbWJyYW5lcyB0byBnbGFzcyBpbmRpY2F0ZXMgdGhhdFxyXG5cdFx0bGlwaWQgbWVtYnJhbmVzIHdpdGhvdXQgcHJvdGVpbnMgYXJlIHN1ZmZpY2llbnQgZm9yIHRoZSBhY3Rpb24gb2YgaW9ucyBvblxyXG5cdFx0YWRoZXNpb24uXHJcblx0fVxyXG59XHJcbmAsXHJcbmBcclxuQGFydGljbGV7MTAuMzM4OS9mcGhhci4yMDE3LjAwMTk1LFxyXG5cdHRpdGxlICAgICAgICA9IHtcclxuXHRcdERldmVsb3BtZW50IG9mIEF1dG9tYXRlZCBQYXRjaCBDbGFtcCBUZWNobmlxdWUgdG8gSW52ZXN0aWdhdGUgQ0ZUUiBDaGxvcmlkZVxyXG5cdFx0Q2hhbm5lbCBGdW5jdGlvblxyXG5cdH0sXHJcblx0YXV0aG9yICAgICAgID0ge1xyXG5cdFx0QmlsbGV0LCBBcm5hdWQgIGFuZCBGcm91eCwgTGlvbmVsICBhbmQgSGFucmFoYW4sIEpvaG4gVy4gIGFuZCBCZWNxLCBGcmVkZXJpY1xyXG5cdH0sXHJcblx0eWVhciAgICAgICAgID0gMjAxNyxcclxuXHRqb3VybmFsICAgICAgPSB7RnJvbnRpZXJzIGluIFBoYXJtYWNvbG9neX0sXHJcblx0dm9sdW1lICAgICAgID0gOCxcclxuXHRkb2kgICAgICAgICAgPSB7MTAuMzM4OS9mcGhhci4yMDE3LjAwMTk1fSxcclxuXHRpc3NuICAgICAgICAgPSB7MTY2My05ODEyfSxcclxuXHR1cmwgICAgICAgICAgPSB7XHJcblx0XHRodHRwczovL3d3dy5mcm9udGllcnNpbi5vcmcvam91cm5hbHMvcGhhcm1hY29sb2d5L2FydGljbGVzLzEwLjMzODkvZnBoYXIuMjAxNy4wMDE5NVxyXG5cdH1cclxufVxyXG5gLFxyXG5gXHJcbkBhcnRpY2xle0R1QnJpZGdlX1RhbmdfSHNpYV9MZW9uZ19NaWxsZXJfQ2Fsb3NfMTk4NyxcclxuXHR0aXRsZSAgICAgICAgPSB7XHJcblx0XHRBbmFseXNpcyBvZiBtdXRhdGlvbiBpbiBodW1hbiBjZWxscyBieSB1c2luZyBhbiBFcHN0ZWluLUJhcnIgdmlydXMgc2h1dHRsZVxyXG5cdFx0c3lzdGVtLlxyXG5cdH0sXHJcblx0YXV0aG9yICAgICAgID0ge1xyXG5cdFx0RHVCcmlkZ2UsIFIgQiBhbmQgVGFuZywgUCBhbmQgSHNpYSwgSCBDIGFuZCBMZW9uZywgUCBNIGFuZCBNaWxsZXIsIEogSCBhbmRcclxuXHRcdENhbG9zLCBNIFBcclxuXHR9LFxyXG5cdHllYXIgICAgICAgICA9IDE5ODcsXHJcblx0bW9udGggICAgICAgID0gamFuLFxyXG5cdGpvdXJuYWwgICAgICA9IHtNb2xlY3VsYXIgYW5kIENlbGx1bGFyIEJpb2xvZ3l9LFxyXG5cdHZvbHVtZSAgICAgICA9IDcsXHJcblx0bnVtYmVyICAgICAgID0gMSxcclxuXHRwYWdlcyAgICAgICAgPSB7Mzc5XHUyMDEzMzg3fSxcclxuXHRpc3NuICAgICAgICAgPSB7MDI3MC03MzA2fSxcclxuXHRhYnN0cmFjdG5vdGUgPSB7XHJcblx0XHRXZSBkZXZlbG9wZWQgaGlnaGx5IHNlbnNpdGl2ZSBzaHV0dGxlIHZlY3RvciBzeXN0ZW1zIGZvciBkZXRlY3Rpb24gb2ZcclxuXHRcdG11dGF0aW9ucyBmb3JtZWQgaW4gaHVtYW4gY2VsbHMgdXNpbmcgYXV0b25vbW91c2x5IHJlcGxpY2F0aW5nIGRlcml2YXRpdmVzIG9mXHJcblx0XHRFcHN0ZWluLUJhcnIgdmlydXMgKEVCVikuIEVCViB2ZWN0b3JzIGNhcnJ5aW5nIHRoZSBiYWN0ZXJpYWwgbGFjSSBnZW5lIGFzIHRoZVxyXG5cdFx0dGFyZ2V0IGZvciBtdXRhdGlvbiB3ZXJlIGVzdGFibGlzaGVkIGluIGh1bWFuIGNlbGxzIGFuZCBsYXRlciByZXR1cm5lZCB0b1xyXG5cdFx0RXNjaGVyaWNoaWEgY29saSBmb3IgcmFwaWQgZGV0ZWN0aW9uIGFuZCBhbmFseXNpcyBvZiBsYWNJIG11dGF0aW9ucy4gVGhlXHJcblx0XHRtYWpvcml0eSBvZiB0aGUgY2xvbmFsIGNlbGwgbGluZXMgY3JlYXRlZCBieSBlc3RhYmxpc2htZW50IG9mIHRoZSBsYWNJLUVCVlxyXG5cdFx0dmVjdG9yIHNob3cgc3BvbnRhbmVvdXMgTGFjSS0gZnJlcXVlbmNpZXMgb2YgbGVzcyB0aGFuIDEwKC01KSBhbmQgYXJlXHJcblx0XHRzdWl0YWJsZSBmb3Igc3R1ZGllcyBvZiBpbmR1Y2VkIG11dGF0aW9uLiBUaGUgYWJpbGl0eSB0byBpc29sYXRlIGNsb25hbCBsaW5lc1xyXG5cdFx0cmVwcmVzZW50cyBhIG1ham9yIGFkdmFudGFnZSBvZiB0aGUgRUJWIHZlY3RvcnMgb3ZlciB0cmFuc2llbnRseSByZXBsaWNhdGluZ1xyXG5cdFx0c2h1dHRsZSB2ZWN0b3JzIChzdWNoIGFzIHRob3NlIGRlcml2ZWQgZnJvbSBzaW1pYW4gdmlydXMgNDApIGZvciB0aGUgc3R1ZHkgb2ZcclxuXHRcdG11dGF0aW9uLiBUaGUgRE5BIHNlcXVlbmNlIGNoYW5nZXMgd2VyZSBkZXRlcm1pbmVkIGZvciA2MSBsYWNJIG11dGF0aW9uc1xyXG5cdFx0aW5kdWNlZCBieSBleHBvc3VyZSBvZiBvbmUgb2YgdGhlIGNlbGwgbGluZXMgdG8gTi1uaXRyb3NvLU4tbWV0aHlsdXJlYS4gQVxyXG5cdFx0dG90YWwgb2YgMzMgb2YgMzQgbGFjSSBub25zZW5zZSBtdXRhdGlvbnMgYW5kIDI2IG9mIDI3IG1pc3NlbnNlIG11dGF0aW9uc1xyXG5cdFx0aW52b2x2ZSBHIFggQyB0byBBIFggVCB0cmFuc2l0aW9ucy4gVGhlc2UgZGF0YSBwcm92aWRlIHN1cHBvcnQgZm9yIHRoZVxyXG5cdFx0bXV0YXRpb25hbCB0aGVvcnkgb2YgY2FuY2VyLlxyXG5cdH1cclxufVxyXG5gLFxyXG5gXHJcbkBhcnRpY2xle1Fpbl9aaGFuZ19DbGlmdF9IdWx1cl9YaWFuZ19SZW5fTGFobl8yMDEwLFxyXG5cdHRpdGxlICAgICAgICA9IHtcclxuXHRcdFN5c3RlbWF0aWMgQ29tcGFyaXNvbiBvZiBDb25zdGl0dXRpdmUgUHJvbW90ZXJzIGFuZCB0aGUgRG94eWN5Y2xpbmUtSW5kdWNpYmxlXHJcblx0XHRQcm9tb3RlclxyXG5cdH0sXHJcblx0YXV0aG9yICAgICAgID0ge1xyXG5cdFx0UWluLCBKYW5lIFl1eGlhIGFuZCBaaGFuZywgTGkgYW5kIENsaWZ0LCBLYXlsYSBMLiBhbmQgSHVsdXIsIEltZ2UgYW5kIFhpYW5nLFxyXG5cdFx0QW5keSBQZW5nIGFuZCBSZW4sIEJpbmctWmhvbmcgYW5kIExhaG4sIEJydWNlIFQuXHJcblx0fSxcclxuXHR5ZWFyICAgICAgICAgPSAyMDEwLFxyXG5cdG1vbnRoICAgICAgICA9IG1heSxcclxuXHRqb3VybmFsICAgICAgPSB7UExPUyBPTkV9LFxyXG5cdHB1Ymxpc2hlciAgICA9IHtQdWJsaWMgTGlicmFyeSBvZiBTY2llbmNlfSxcclxuXHR2b2x1bWUgICAgICAgPSA1LFxyXG5cdG51bWJlciAgICAgICA9IDUsXHJcblx0cGFnZXMgICAgICAgID0ge2UxMDYxMX0sXHJcblx0ZG9pICAgICAgICAgID0gezEwLjEzNzEvam91cm5hbC5wb25lLjAwMTA2MTF9LFxyXG5cdGlzc24gICAgICAgICA9IHsxOTMyLTYyMDN9LFxyXG5cdGFic3RyYWN0bm90ZSA9IHtcclxuXHRcdENvbnN0aXR1dGl2ZSBwcm9tb3RlcnMgYXJlIHVzZWQgcm91dGluZWx5IHRvIGRyaXZlIGVjdG9waWMgZ2VuZSBleHByZXNzaW9uLlxyXG5cdFx0SGVyZSwgd2UgY2FycmllZCBvdXQgYSBzeXN0ZW1hdGljIGNvbXBhcmlzb24gb2YgZWlnaHQgY29tbW9ubHkgdXNlZFxyXG5cdFx0Y29uc3RpdHV0aXZlIHByb21vdGVycyAoU1Y0MCwgQ01WLCBVQkMsIEVGMUEsIFBHSyBhbmQgQ0FHRyBmb3IgbWFtbWFsaWFuXHJcblx0XHRzeXN0ZW1zLCBhbmQgQ09QSUEgYW5kIEFDVDVDIGZvciBEcm9zb3BoaWxhIHN5c3RlbXMpLiBXZSBhbHNvIGluY2x1ZGVkIGluIHRoZVxyXG5cdFx0Y29tcGFyaXNvbiB0aGUgVFJFIHByb21vdGVyLCB3aGljaCBjYW4gYmUgYWN0aXZhdGVkIGJ5IHRoZSBydFRBXHJcblx0XHR0cmFuc2NyaXB0aW9uYWwgYWN0aXZhdG9yIGluIGEgZG94eWN5Y2xpbmUtaW5kdWNpYmxlIG1hbm5lci4gVG8gbWFrZSBvdXJcclxuXHRcdGZpbmRpbmdzIHJlcHJlc2VudGF0aXZlLCB3ZSBjb25kdWN0ZWQgdGhlIGNvbXBhcmlzb24gaW4gYSB2YXJpZXR5IG9mIGNlbGxcclxuXHRcdHR5cGVzIGRlcml2ZWQgZnJvbSBzZXZlcmFsIHNwZWNpZXMuIFdlIGZvdW5kIHRoYXQgdGhlc2UgcHJvbW90ZXJzIHZhcnlcclxuXHRcdGNvbnNpZGVyYWJseSBmcm9tIG9uZSBhbm90aGVyIGluIHRoZWlyIHN0cmVuZ3RoLiBNb3N0IHByb21vdGVycyBoYXZlIGZhaXJseVxyXG5cdFx0Y29uc2lzdGVudCBzdHJlbmd0aHMgYWNyb3NzIGRpZmZlcmVudCBjZWxsIHR5cGVzLCBidXQgdGhlIENNViBwcm9tb3RlciBjYW5cclxuXHRcdHZhcnkgY29uc2lkZXJhYmx5IGZyb20gY2VsbCB0eXBlIHRvIGNlbGwgdHlwZS4gQXQgbWF4aW1hbCBpbmR1Y3Rpb24sIHRoZSBUUkVcclxuXHRcdHByb21vdGVyIGlzIGNvbXBhcmFibGUgdG8gYSBzdHJvbmcgY29uc3RpdHV0aXZlIHByb21vdGVyLiBUaGVzZSByZXN1bHRzXHJcblx0XHRzaG91bGQgZmFjaWxpdGF0ZSBtb3JlIHJhdGlvbmFsIGNob2ljZXMgb2YgcHJvbW90ZXJzIGluIGVjdG9waWMgZ2VuZVxyXG5cdFx0ZXhwcmVzc2lvbiBzdHVkaWVzLlxyXG5cdH0sXHJcblx0bGFuZ3VhZ2UgICAgID0ge2VufVxyXG59XHJcbmAsXHJcbmBcclxuQGFydGljbGV7QlVMQ0FFTjIwMjQxMDE1NDQsXHJcbnRpdGxlID0ge1ByaW1lIGVkaXRpbmcgZnVuY3Rpb25hbGx5IGNvcnJlY3RzICBDeXN0aWMgRmlicm9zaXMtY2F1c2luZyBDRlRSIG11dGF0aW9ucyBpbiBodW1hbiBvcmdhbm9pZHMgYW5kIGFpcndheSBlcGl0aGVsaWFsIGNlbGxzfSxcclxuam91cm5hbCA9IHtDZWxsIFJlcG9ydHMgTWVkaWNpbmV9LFxyXG52b2x1bWUgPSB7NX0sXHJcbm51bWJlciA9IHs1fSxcclxucGFnZXMgPSB7MTAxNTQ0fSxcclxueWVhciA9IHsyMDI0fSxcclxuaXNzbiA9IHsyNjY2LTM3OTF9LFxyXG5kb2kgPSB7aHR0cHM6Ly9kb2kub3JnLzEwLjEwMTYvai54Y3JtLjIwMjQuMTAxNTQ0fSxcclxudXJsID0ge2h0dHBzOi8vd3d3LnNjaWVuY2VkaXJlY3QuY29tL3NjaWVuY2UvYXJ0aWNsZS9waWkvUzI2NjYzNzkxMjQwMDIzNDl9LFxyXG5hdXRob3IgPSB7TWF0dGlqcyBCdWxjYWVuIGFuZCBQaFx1MDBFOWxpbmUgS29ydGxldmVuIGFuZCBSb25hbGQgQi4gTGl1IGFuZCBHaXVsaWEgTWF1bGUgYW5kIEVsaXNlIERyZWFubyBhbmQgTWFpcmVhZCBLZWxseSBhbmQgTWFyam9sZWluIE0uIEVuc2luY2sgYW5kIFNhbSBUaGllcmllIGFuZCBNYXhpbWUgU21pdHMgYW5kIE1hdHRlbyBDaWNpYW5pIGFuZCBBdXJlbGllIEhhdHRvbiBhbmQgQmVub2l0IENoZXZhbGllciBhbmQgQW5hYmVsYSBTLiBSYW1hbGhvIGFuZCBYYXZpZXIge0Nhc2FkZXZhbGwgaSBTb2x2YXN9IGFuZCBaZWdlciBEZWJ5c2VyIGFuZCBGcmFuXHUwMEU3b2lzIFZlcm1ldWxlbiBhbmQgUmlrIEdpanNiZXJzIGFuZCBJc2FiZWxsZSBTZXJtZXQtR2F1ZGVsdXMgYW5kIEFubmEgQ2VyZXNldG8gYW5kIE1hcmlhbm5lIFMuIENhcmxvbn0sXHJcbmtleXdvcmRzID0geyBDeXN0aWMgRmlicm9zaXMsIHByaW1lIGVkaXRpbmcsIHBhdGllbnQtZGVyaXZlZCBvcmdhbm9pZHMsIGh1bWFuIG5hc2FsIGVwaXRoZWxpYWwgY2VsbHMsIGdlbmUgZWRpdGluZywgbWFjaGluZSBsZWFybmluZywgREVURU9SLCBDUklTUFJ9LFxyXG5hYnN0cmFjdCA9IHtTdW1tYXJ5XHJcblByaW1lIGVkaXRpbmcgaXMgYSByZWNlbnQsIENSSVNQUi1kZXJpdmVkIGdlbm9tZSBlZGl0aW5nIHRlY2hub2xvZ3kgY2FwYWJsZSBvZiBpbnRyb2R1Y2luZyBwcmVjaXNlIG51Y2xlb3RpZGUgc3Vic3RpdHV0aW9ucywgaW5zZXJ0aW9ucywgYW5kIGRlbGV0aW9ucy4gSGVyZSwgd2UgcHJlc2VudCBwcmltZSBlZGl0aW5nIGFwcHJvYWNoZXMgdG8gY29ycmVjdCBMMjI3Ui0gYW5kIE4xMzAzSy1DRlRSLCB0d28gbXV0YXRpb25zIHRoYXQgY2F1c2UgIEN5c3RpYyBGaWJyb3NpcyBhbmQgYXJlIG5vdCBlbGlnaWJsZSBmb3IgY3VycmVudCBtYXJrZXQtYXBwcm92ZWQgbW9kdWxhdG9yIHRoZXJhcGllcy4gV2Ugc2hvdyB0aGF0LCB1cG9uIEROQSBjb3JyZWN0aW9uIG9mIHRoZSBDRlRSIGdlbmUsIHRoZSBjb21wbGV4IGdseWNvc3lsYXRpb24sIGxvY2FsaXphdGlvbiwgYW5kLCBtb3N0IGltcG9ydGFudGx5LCBmdW5jdGlvbiBvZiB0aGUgQ0ZUUiBwcm90ZWluIGFyZSByZXN0b3JlZCBpbiBIRUsyOTNUIGFuZCAxNkhCRSBjZWxsIGxpbmVzLiBUaGVzZSBmaW5kaW5ncyB3ZXJlIHN1YnNlcXVlbnRseSB2YWxpZGF0ZWQgaW4gcGF0aWVudC1kZXJpdmVkIHJlY3RhbCBvcmdhbm9pZHMgYW5kIGh1bWFuIG5hc2FsIGVwaXRoZWxpYWwgY2VsbHMuIFRocm91Z2ggYW5hbHlzaXMgb2YgcHJlZGljdGVkIGFuZCBleHBlcmltZW50YWxseSBpZGVudGlmaWVkIGNhbmRpZGF0ZSBvZmYtdGFyZ2V0IHNpdGVzIGluIHByaW1hcnkgc3RlbSBjZWxscywgd2UgY29uZmlybSBwcmV2aW91cyByZXBvcnRzIG9uIHRoZSBoaWdoIHByaW1lIGVkaXRvciAoUEUpIHNwZWNpZmljaXR5IGFuZCBpdHMgcG90ZW50aWFsIGZvciBhIGN1cmF0aXZlIENGIGdlbmUgZWRpdGluZyB0aGVyYXB5LiBUbyBmYWNpbGl0YXRlIGZ1dHVyZSBzY3JlZW5pbmcgb2YgZ2VuZXRpYyBzdHJhdGVnaWVzIGluIGEgdHJhbnNsYXRpb25hbCBDRiBtb2RlbCwgYSBtYWNoaW5lIGxlYXJuaW5nIGFsZ29yaXRobSB3YXMgZGV2ZWxvcGVkIGZvciBkeW5hbWljIHF1YW50aWZpY2F0aW9uIG9mIENGVFIgZnVuY3Rpb24gaW4gb3JnYW5vaWRzIChERVRFQ1RPUjogXHUyMDFDZGV0ZWN0aW9uIG9mIHRhcmdldGVkIGVkaXRpbmcgb2YgQ0ZUUiBpbiBvcmdhbm9pZHNcdTIwMUQpLn1cclxufVxyXG5uZXc4LlxyXG5AYXJ0aWNsZXtFbnNpbmNrX0RlZWVyc21hZWNrZXJfSGV5bGVuX1JhbWFsaG9fR2lqc2JlcnNfRmFyLFxyXG5cdHRpdGxlICAgICAgICA9IHtcclxuXHRcdFBoZW5vdHlwaW5nIG9mIFJhcmUgQ0ZUUiBNdXRhdGlvbnMgUmV2ZWFscyBEaXN0aW5jdCBUcmFmZmlja2luZyBhbmRcclxuXHRcdEZ1bmN0aW9uYWwgRGVmZWN0c1xyXG5cdH0sXHJcblx0YXV0aG9yICAgICAgID0ge1xyXG5cdFx0RW5zaW5jaywgTWFyam9sZWluIGFuZCBEZSBLZWVyc21hZWNrZXIsIExpZXNiZXRoIGFuZCBIZXlsZW4sIExpc2UgYW5kXHJcblx0XHRSYW1hbGhvLCBBbmFiZWxhIFMuIGFuZCBHaWpzYmVycywgUmlrIGFuZCBGYXJyXHUwMEU5LCBSaWNhcmQgYW5kIERlIEJvZWNrLCBLcmlzXHJcblx0XHRhbmQgQ2hyaXN0LCBGcmF1a2UgYW5kIERlYnlzZXIsIFplZ2VyIGFuZCBDYXJsb24sIE1hcmlhbm5lIFMuXHJcblx0fSxcclxuXHR5ZWFyICAgICAgICAgPSAyMDIwLFxyXG5cdG1vbnRoICAgICAgICA9IG1hcixcclxuXHRqb3VybmFsICAgICAgPSB7Q2VsbHN9LFxyXG5cdHZvbHVtZSAgICAgICA9IDksXHJcblx0bnVtYmVyICAgICAgID0gMyxcclxuXHRwYWdlcyAgICAgICAgPSA3NTQsXHJcblx0ZG9pICAgICAgICAgID0gezEwLjMzOTAvY2VsbHM5MDMwNzU0fSxcclxuXHRpc3NuICAgICAgICAgPSB7MjA3My00NDA5fSxcclxuXHRhYnN0cmFjdG5vdGUgPSB7XHJcblx0XHRCYWNrZ3JvdW5kLiBUaGUgbW9zdCBjb21tb24gQ0ZUUiBtdXRhdGlvbiwgRjUwOGRlbCwgcHJlc2VudHMgd2l0aCBtdWx0aXBsZVxyXG5cdFx0Y2VsbHVsYXIgZGVmZWN0cy4gSG93ZXZlciwgdGhlIHBvc3NpYmxlIG11bHRpcGxlIGRlZmVjdHMgY2F1c2VkIGJ5IG1hbnkgcmFyZXJcclxuXHRcdENGVFIgbXV0YXRpb25zIGFyZSBub3Qgd2VsbCBzdHVkaWVkLiBXZSBpbnZlc3RpZ2F0ZWQgZm91ciByYXJlIENGVFIgbXV0YXRpb25zXHJcblx0XHRFNjBLLCBHODVFLCBFOTJLIGFuZCBBNDU1RSBhZ2FpbnN0IHdlbGwtY2hhcmFjdGVyaXplZCBtdXRhdGlvbnMsIEY1MDhkZWwgYW5kXHJcblx0XHRHNTUxRCwgYW5kIHRoZWlyIHJlc3BvbnNlcyB0byBjb3JyZWN0b3IgVlgtODA5IGFuZC9vciBwb3RlbnRpYXRvciBWWC03NzAuXHJcblx0XHRNZXRob2RzLiBVc2luZyBjb21wbGVtZW50YXJ5IGFzc2F5cyBpbiBIRUsyOTNUIHN0YWJsZSBjZWxsIGxpbmVzLCB3ZVxyXG5cdFx0ZGV0ZXJtaW5lZCBtYXR1cmF0aW9uIGJ5IFdlc3Rlcm4gYmxvdHRpbmcsIHRyYWZmaWNraW5nIGJ5IGZsb3cgY3l0b21ldHJ5XHJcblx0XHR1c2luZyBleHRyYWNlbGx1bGFyIDNIQS10YWdnZWQgQ0ZUUiwgYW5kIGZ1bmN0aW9uIGJ5IGhhbGlkZS1zZW5zaXRpdmUgWUZQXHJcblx0XHRxdWVuY2hpbmcuIEluIHRoZSBmb3Jza29saW4taW5kdWNlZCBzd2VsbGluZyBhc3NheSBpbiBpbnRlc3RpbmFsIG9yZ2Fub2lkcyxcclxuXHRcdHdlIHZhbGlkYXRlZCB0aGUgZWZmZWN0IG9mIHRhZ2dlZCB2ZXJzdXMgZW5kb2dlbm91cyBDRlRSLiBSZXN1bHRzLiBUcmVhdG1lbnRcclxuXHRcdHdpdGggVlgtODA5IHNpZ25pZmljYW50bHkgcmVzdG9yZWQgbWF0dXJhdGlvbiwgUE0gbG9jYWxpemF0aW9uIGFuZCBmdW5jdGlvblxyXG5cdFx0b2YgYm90aCBFNjBLIGFuZCBFOTJLLiBNZWNoYW5pc3RpY2FsbHksIFZYLTgwOSBub3Qgb25seSByYWlzZWQgdGhlIHRvdGFsXHJcblx0XHRhbW91bnQgb2YgQ0ZUUiwgYnV0IHNpZ25pZmljYW50bHkgaW5jcmVhc2VkIHRoZSB0cmFmZmljIGVmZmljaWVuY3ksIHdoaWNoIHdhc1xyXG5cdFx0bm90IHRoZSBjYXNlIGZvciBBNDU1RS4gRzg1RSB3YXMgcmVmcmFjdG9yeSB0byBWWC04MDkgYW5kIFZYLTc3MCB0cmVhdG1lbnQuXHJcblx0XHRDb25jbHVzaW9ucy4gU2luY2Ugbm8gc2luZ2xlIG1vZGVsIG9yIGFzc2F5IGFsbG93cyBkZWNpcGhlcmluZyBhbGwgZGVmZWN0cyBhdFxyXG5cdFx0b25jZSwgd2UgcHJvcG9zZSBhIGNvbWJpbmF0aW9uIG9mIHBoZW5vdHlwaWMgYXNzYXlzIHRvIGNvbGxlY3QgcmFwaWQgYW5kXHJcblx0XHRlYXJseSBpbnNpZ2h0cyBpbnRvIHRoZSBtdWx0aXBsZSBkZWZlY3RzIG9mIENGVFIgdmFyaWFudHMuXHJcblx0fSxcclxuXHRsYW5ndWFnZSAgICAgPSB7ZW5nfVxyXG59XHJcbmAsXHJcbmBcclxuQG1pc2N7aWduYXRvdmEyMDIzLFxyXG4gIGF1dGhvciAgICAgICA9IHtab3lhIElnbmF0b3ZhfSxcclxuICB0aXRsZSAgICAgICAgPSB7UmVzZWFyY2ggR3JvdXAgSWduYXRvdmEgYXQgdGhlIEluc3RpdHV0ZSBvZiBCaW9jaGVtaXN0cnkgYW5kIE1vbGVjdWxhciBCaW9sb2d5fSxcclxuICB5ZWFyICAgICAgICAgPSB7MjAyM30sXHJcbiAgaG93cHVibGlzaGVkID0ge0hhbWJ1cmcgVW5pdmVyc2l0eX0sXHJcbiAgbm90ZSAgICAgICAgID0ge0FjY2Vzc2VkOiAyOCBTZXB0ZW1iZXIgMjAyNH0sXHJcbiAgaW5zdGl0dXRpb24gID0ge1VuaXZlcnNpdHkgb2YgSGFtYnVyZ30sXHJcbn1cclxuXHJcbmAsXHJcbmBAYXJ0aWNsZXtlaHJoYXJkdF90b3dhcmRzXzIwMDYsXHJcblx0dGl0bGUgICAgICAgID0ge1Rvd2FyZHMgYW4gaW4gdml0cm8gbW9kZWwgb2YgIEN5c3RpYyBGaWJyb3NpcyBzbWFsbCBhaXJ3YXkgZXBpdGhlbGl1bTogY2hhcmFjdGVyaXNhdGlvbiBvZiB0aGUgaHVtYW4gYnJvbmNoaWFsIGVwaXRoZWxpYWwgY2VsbCBsaW5lIHtDRkJFNDFvfS19LFxyXG5cdHNob3J0dGl0bGUgICA9IHtUb3dhcmRzIGFuIGluIHZpdHJvIG1vZGVsIG9mICBDeXN0aWMgRmlicm9zaXMgc21hbGwgYWlyd2F5IGVwaXRoZWxpdW19LFxyXG5cdGF1dGhvciAgICAgICA9IHtFaHJoYXJkdCwgQ2Fyc3RlbiBhbmQgQ29sbG5vdCwgRXZhLU1hcmlhIGFuZCBCYWxkZXMsIENocmlzdGlhbmUgYW5kIEJlY2tlciwgVWxyaWNoIGFuZCBMYXVlLCBNaWNoYWVsIGFuZCBLaW0sIEt3YW5nLUppbiBhbmQgTGVociwgQ2xhdXMtTWljaGFlbH0sXHJcblx0eWVhciAgICAgICAgID0gMjAwNixcclxuXHRtb250aCAgICAgICAgPSBtYXIsXHJcblx0am91cm5hbCAgICAgID0ge0NlbGwgYW5kIFRpc3N1ZSBSZXNlYXJjaH0sXHJcblx0dm9sdW1lICAgICAgID0gMzIzLFxyXG5cdG51bWJlciAgICAgICA9IDMsXHJcblx0cGFnZXMgICAgICAgID0gezQwNS0tNDE1fSxcclxuXHRkb2kgICAgICAgICAgPSB7MTAuMTAwNy9zMDA0NDEtMDA1LTAwNjItN30sXHJcblx0aXNzbiAgICAgICAgID0gezAzMDItNzY2WCwgMTQzMi0wODc4fSxcclxuXHR1cmwgICAgICAgICAgPSB7aHR0cDovL2xpbmsuc3ByaW5nZXIuY29tLzEwLjEwMDcvczAwNDQxLTAwNS0wMDYyLTd9LFxyXG5cdHVybGRhdGUgICAgICA9IHsyMDI0LTA5LTA5fSxcclxuXHRjb3B5cmlnaHQgICAgPSB7aHR0cDovL3d3dy5zcHJpbmdlci5jb20vdGRtfSxcclxuXHRsYW5ndWFnZSAgICAgPSB7ZW59LFxyXG5cdGZpbGUgICAgICAgICA9IHtFaHJoYXJkdCBldCBhbC4gLSAyMDA2IC0gVG93YXJkcyBhbiBpbiB2aXRybyBtb2RlbCBvZiAgQ3lzdGljIEZpYnJvc2lzIHNtYWxsLnBkZjpDXFw6XFxcXFVzZXJzXFxcXElzYWJlbGxcXFxcWm90ZXJvXFxcXHN0b3JhZ2VcXFxcUlhMTUNFM1ZcXFxcRWhyaGFyZHQgZXQgYWwuIC0gMjAwNiAtIFRvd2FyZHMgYW4gaW4gdml0cm8gbW9kZWwgb2YgIEN5c3RpYyBGaWJyb3NpcyBzbWFsbC5wZGY6YXBwbGljYXRpb24vcGRmfVxyXG59XHJcbmBcclxuLFxyXG5gXHJcbkBib29re01lbm5lbGxhXzIwMjQsXHJcblx0dGl0bGUgICAgICAgID0ge0NpbGlhOiBtZXRob2RzIGFuZCBwcm90b2NvbHN9LFxyXG5cdHllYXIgICAgICAgICA9IDIwMjQsXHJcbiAgICBhdXRob3IgICAgICAgPSB7TWVubmVsbGEsIFZpdG99LFxyXG5cdHB1Ymxpc2hlciAgICA9IHtIdW1hbmEgUHJlc3N9LFxyXG5cdGFkZHJlc3MgICAgICA9IHtOZXcgWW9yaywgTll9LFxyXG5cdGlzYm4gICAgICAgICA9IHs5NzgtMS0wNy0xNjM1MDctMH0sXHJcblx0YWJzdHJhY3Rub3RlID0ge1xyXG5cdFx0VGhpcyB2b2x1bWUgY292ZXJzIHRoZSBsYXRlc3QgYWR2YW5jZW1lbnRzIGluIHRoZSBzdHVkeSBvZiBjaWxpYXJ5XHJcblx0XHRjb21wbGV4aXR5LiBQcm90b2NvbHMgY292ZXIgZ2Vub21pYywgcHJvdGVvbWljLCBpbWFnaW5nLCBhbmQgZnVuY3Rpb25hbFxyXG5cdFx0YW5hbHlzaXMgb2YgZGlmZmVyZW50IGNpbGlhdGVkIHRpc3N1ZXMgYW5kIHRoZWlyIHdpZGUgYXBwbGljYWJpbGl0eSBpbiBjaWxpYVxyXG5cdFx0YmlvbG9neS4gQ2hhcHRlcnMgaW4gdGhpcyBib29rIHByaW1hcmlseSBmb2N1cyBvbiBtZXRob2RzIHRvIHN0dWR5XHJcblx0XHRtdWx0aWNpbGlhdGVkIGNlbGxzLCBhbmQgZGlzY3VzcyB0b3BpY3Mgc3VjaCBhcyBTQVJTLUNvVi0yIGluZmVjdGlvbnMgb2ZcclxuXHRcdGh1bWFuIHByaW1hcnkgbmFzYWwgbXVsdGljaWxpYXRlZCBlcGl0aGVsaWFsIGNlbGxzOyBleHBhbnNpb24gbWljcm9zY29weSBvZlxyXG5cdFx0Y2lsaWFyeSBwcm90ZWluczsgbGl2ZS1pbWFnaW5nIGNlbnRyaW9sZSBhbXBsaWZpY2F0aW9uIGluIG1vdXNlIGJyYWluXHJcblx0XHRtdWx0aWNpbGlhdGVkIGNlbGxzOyBiaW9waHlzaWNhbCBwcm9wZXJ0aWVzIG9mIGNpbGlhIG1vdGlsaXR5OyBhbmRcclxuXHRcdG11Y29jaWxpYXJ5IHRyYW5zcG9ydCBkZXZpY2UgY29uc3RydWN0aW9uLiBXcml0dGVuIGluIHRoZSBoaWdobHkgc3VjY2Vzc2Z1bFxyXG5cdFx0TWV0aG9kcyBpbiBNb2xlY3VsYXIgQmlvbG9neSBzZXJpZXMgZm9ybWF0LCBjaGFwdGVycyBpbmNsdWRlIGludHJvZHVjdGlvbnMgdG9cclxuXHRcdHRoZWlyIHJlc3BlY3RpdmUgdG9waWNzLCBsaXN0cyBvZiB0aGUgbmVjZXNzYXJ5IG1hdGVyaWFscyBhbmQgcmVhZ2VudHMsXHJcblx0XHRzdGVwLWJ5LXN0ZXAsIHJlYWRpbHkgcmVwcm9kdWNpYmxlIGxhYm9yYXRvcnkgcHJvdG9jb2xzLCBhbmQgdGlwcyBvblxyXG5cdFx0dHJvdWJsZXNob290aW5nIGFuZCBhdm9pZGluZyBrbm93biBwaXRmYWxscy4gQ3V0dGluZy1lZGdlIGFuZCB0aG9yb3VnaCxcclxuXHRcdENpbGlhOiBNZXRob2RzIGFuZCBQcm90b2NvbHMgaXMgYSB2YWx1YWJsZSByZXNvdXJjZSBmb3IgcmVzZWFyY2hlcnMgd2hvIGFyZVxyXG5cdFx0aW50ZXJlc3RlZCBpbiBsZWFybmluZyBtb3JlIGFib3V0IHRoaXMgZGV2ZWxvcGluZyBmaWVsZC5cclxuXHR9LFxyXG5cdGxhbmd1YWdlICAgICA9IHtlbmd9XHJcbn1cclxuYFxyXG5dIiwgImltcG9ydCB7IFNlY3Rpb24sIFN1YmVzY3Rpb24gfSBmcm9tIFwiLi4vY29tcG9uZW50cy9zZWN0aW9uc1wiO1xyXG5pbXBvcnQgeyB1c2VUYWJOYXZpZ2F0aW9uIH0gZnJvbSBcIi4uL3V0aWxzL1RhYk5hdmlnYXRpb25cIjtcclxuaW1wb3J0IHtINH0gZnJvbSBcIi4uL2NvbXBvbmVudHMvSGVhZGluZ3NcIjtcclxuaW1wb3J0IE1ldGhvZFNvdXJjZXMgZnJvbSBcIi4uL3NvdXJjZXMvbWV0aG9kcy1zb3VyY2VzXCI7XHJcbmltcG9ydCB7IHVzZU5hdmlnYXRpb24gfSBmcm9tIFwiLi4vdXRpbHNcIjtcclxuaW1wb3J0IHsgT25lRmlndXJlIH0gZnJvbSBcIi4uL2NvbXBvbmVudHMvRmlndXJlc1wiO1xyXG5cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBNZXRob2RzKCkge1xyXG4gIGNvbnN0IHtnb1RvUGFnZXNBbmRPcGVuVGFifSA9IHVzZU5hdmlnYXRpb24gKCk7XHJcbiAgdXNlVGFiTmF2aWdhdGlvbigpO1xyXG4gICAgcmV0dXJuIChcclxuICAgICAgPD5cclxuICAgICAgXHJcbiAgICAgICAgPFNlY3Rpb24gdGl0bGU9XCJJbnRyb2R1Y3Rpb25cIiBpZD1cIkludHJvZHVjdGlvblwiPlxyXG4gICAgICAgICAgPHA+VGhpcyBzZWN0aW9uIGhpZ2hsaWdodHMgdGhlIGtleSBtYXRlcmlhbHMgYW5kIG1ldGhvZHMgcGl2b3RhbCB0byBhZHZhbmNpbmcgb3VyIHByb2plY3Qgd2l0aCB0aGUgcHJpbWFyeSBnb2FsIHRvIGRldmVsb3AgYW4gZWZmaWNpZW50IHByaW1lIGVkaXRpbmcgdGVjaG5vbG9neSB0byBjb3JyZWN0IHRoZSBGNTA4ZGVsIG11dGF0aW9uIGluIHRoZSBDRlRSIGdlbmUgYnkgdGhlIGRlbGl2ZXJ5IHRvIGx1bmcgZXBpdGhlbGlhbCBjZWxscyB1c2luZyBvcHRpbWl6ZWQgbGlwaWQgbmFub3BhcnRpY2xlcyAoTE5QcykgdmlhIHB1bG1vbmFyeSBhZG1pbmlzdHJhdGlvbi4gV2UgdXRpbGl6ZWQgcGF0Y2ggY2xhbXAgZWxlY3Ryb3BoeXNpb2xvZ3kgdG8gcHJlY2lzZWx5IG1lYXN1cmUgaW9uIGNoYW5uZWwgYWN0aXZpdHksIHByb3ZpZGluZyBjcnVjaWFsIGluc2lnaHRzIGludG8gY2VsbHVsYXIgZnVuY3Rpb24gYW5kIHRoZSBpbXBhY3Qgb2YgZ2VuZXRpYyBtb2RpZmljYXRpb25zIG9uIENGVFIgcGVyZm9ybWFuY2UuIEFkZGl0aW9uYWxseSwgb3VyIGNlbGwgY3VsdHVyZSBtb2RlbHMgb2YgbHVuZyBlcGl0aGVsaWFsIGNlbGxzIGFsbG93ZWQgdXMgdG8gdGVzdCBib3RoIHRoZSBkZWxpdmVyeSBhbmQgZWZmaWNhY3kgb2Ygb3VyIGdlbmUtZWRpdGluZyBzeXN0ZW0gdW5kZXIgY29uZGl0aW9ucyB0aGF0IGNsb3NlbHkgbWltaWMgdGhlIDxpPmluIHZpdm88L2k+IGVudmlyb25tZW50LiBUbyBlbnN1cmUgdGhhdCBvdXIgTE5QcyB3ZXJlIGJvdGggZWZmZWN0aXZlIGFuZCBzYWZlLCB3ZSBwZXJmb3JtZWQgZXh0ZW5zaXZlIExOUCBjeXRvdG94aWNpdHkgYW5kIGNoYXJhY3Rlcml6YXRpb24gZXhwZXJpbWVudHMsIGV2YWx1YXRpbmcgdGhlaXIgYmlvY29tcGF0aWJpbGl0eSwgc3RhYmlsaXR5LCBhbmQgZWZmaWNpZW5jeSBpbiBkZWxpdmVyaW5nIHRoZSBlZGl0aW5nIHRlY2hub2xvZ3kuIEVhY2ggb2YgdGhlc2UgbWV0aG9kb2xvZ2llcyB3YXMgY2FyZWZ1bGx5IHNlbGVjdGVkIHRvIG9wdGltaXplIHRoZSBkZWxpdmVyeSBwcm9jZXNzIGFuZCBtYXhpbWl6ZSB0aGUgdGhlcmFwZXV0aWMgcG90ZW50aWFsIG9mIG91ciBhcHByb2FjaC48L3A+XHJcbiAgICAgICAgPC9TZWN0aW9uPlxyXG4gICAgICAgIDxTZWN0aW9uIHRpdGxlPVwiUGF0Y2ggQ2xhbXBcIiBpZD1cIlBhdGNoIENsYW1wXCI+XHJcbiAgICAgICAgICA8U3ViZXNjdGlvbiB0aXRsZT1cIlBhdGNoIENsYW1wOiBBIEtleSBUb29sIGluIEVsZWN0cm9waHlzaW9sb2d5XCIgaWQ9XCJQYXRjaCBDbGFtcDFcIj5cclxuICAgICAgICAgICAgPHA+VGhlIHBhdGNoIGNsYW1wIHRlY2huaXF1ZSBpcyBhIGhpZ2hseSBzZW5zaXRpdmUgbWV0aG9kIGZvciBtZWFzdXJpbmcgaW9uaWMgY3VycmVudHMgdGhyb3VnaCBpbmRpdmlkdWFsIGlvbiBjaGFubmVscyBpbiBjZWxscywgbWFraW5nIGl0IGEgY29ybmVyc3RvbmUgb2YgZWxlY3Ryb3BoeXNpb2xvZ2ljYWwgcmVzZWFyY2guIEluaXRpYWxseSBkZXZlbG9wZWQgYnkgRXJ3aW4gTmVoZXIgYW5kIEJlcnQgU2FrbWFubiBpbiB0aGUgMTk3MHMgWzFdLCB0aGlzIHRlY2huaXF1ZSBoYXMgZXZvbHZlZCBpbnRvIHZhcmlvdXMgY29uZmlndXJhdGlvbnMsIGluY2x1ZGluZyB0aGUgV2hvbGUtQ2VsbCBhbmQgU2luZ2xlLUNoYW5uZWwgcmVjb3JkaW5ncyBbMl0sIHdoaWNoIHByb3ZpZGUgY3JpdGljYWwgaW5zaWdodHMgaW50byB0aGUgZnVuY3Rpb25hbCBwcm9wZXJ0aWVzIG9mIGlvbiBjaGFubmVscy4gPC9wPlxyXG4gICAgICAgICAgPC9TdWJlc2N0aW9uPlxyXG4gICAgICAgICAgPFN1YmVzY3Rpb24gdGl0bGU9XCJQcmluY2lwbGVzIG9mIHRoZSBQYXRjaCBDbGFtcCBUZWNobmlxdWVcIiBpZD1cIlBhdGNoIENsYW1wMlwiPlxyXG4gICAgICAgICAgPHA+UGF0Y2ggY2xhbXAgcmVjb3JkaW5nIGludm9sdmVzIHRoZSB1c2Ugb2YgYSBnbGFzcyBtaWNyb3BpcGV0dGUgd2hpY2ggaXMgbWFudWZhY3R1cmVkIGZyb20gYSBnbGFzcyBjYXBpbGxhcnkgdGhyb3VnaCB0aGUgdXNlIG9mIGEgTWljcm9waXBldHRlIFB1bGxlci4gVGhlIG1pY3JvcGlwZXR0ZSBpcyB0aGVuIGZpbGxlZCB3aXRoIGFuIGVsZWN0cm9seXRlIHNvbHV0aW9uLCB3aGljaCBpcyBzdWJzZXF1ZW50bHkgYnJvdWdodCBpbnRvIGNvbnRhY3Qgd2l0aCB0aGUgY2VsbCBtZW1icmFuZS4gQnkgYXBwbHlpbmcgZ2VudGxlIHN1Y3Rpb24sIGEgaGlnaC1yZXNpc3RhbmNlIHNlYWwgY2FsbGVkIGdpZ2Egc2VhbCBpcyBmb3JtZWQgYmV0d2VlbiB0aGUgcGlwZXR0ZSB0aXAgYW5kIHRoZSBtZW1icmFuZSBwYXRjaC4gVGhpcyBlbmFibGVzIHRoZSBtZWFzdXJlbWVudCBvZiBpb25pYyBjdXJyZW50cyB3aXRoIG1pbmltYWwgbm9pc2UgaW50ZXJmZXJlbmNlIFszXS4gPHN0cm9uZz5XaG9sZS1DZWxsIENvbmZpZ3VyYXRpb248L3N0cm9uZz4gcmVjb3JkcyBjdXJyZW50cyBmcm9tIHRoZSBlbnRpcmUgY2VsbCBieSBydXB0dXJpbmcgdGhlIG1lbWJyYW5lIHBhdGNoLCBhY2Nlc3NpbmcgdGhlIGludHJhY2VsbHVsYXIgZW52aXJvbm1lbnQsIGFuZCBpcyB1c2VmdWwgZm9yIGFuYWx5c2luZyBvdmVyYWxsIGlvbiBjaGFubmVsIGFjdGl2aXR5IGFuZCBjZWxsdWxhciByZXNwb25zZXMuIDxzdHJvbmc+U2luZ2xlLUNoYW5uZWwgUmVjb3JkaW5nPC9zdHJvbmc+IG1lYXN1cmVzIGN1cnJlbnRzIHRocm91Z2ggaW5kaXZpZHVhbCBpb24gY2hhbm5lbHMgd2l0aG91dCBydXB0dXJpbmcgdGhlIG1lbWJyYW5lLCBlbmFibGluZyBoaWdoLXJlc29sdXRpb24gc3R1ZHkgb2YgY2hhbm5lbCBjb25kdWN0YW5jZSwgZ2F0aW5nLCBhbmQgc2VsZWN0aXZpdHkgWzJdLjwvcD5cclxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZmlndXJlLXdyYXBwZXJcIj5cclxuICAgICAgICAgIDxmaWd1cmU+XHJcbiAgICAgICAgICAgIDxpZnJhbWUgdGl0bGU9XCJCaWVsZWZlbGQtQ2VCaVRlYzogUGF0Y2ggQ2xhbXAgTWVhc3VyZW1lbnQgKDIwMjQpXCIgd2lkdGg9XCI1NjBcIiBoZWlnaHQ9XCIzMTVcIiBzcmM9XCJodHRwczovL3ZpZGVvLmlnZW0ub3JnL3ZpZGVvcy9lbWJlZC8wZDk0OGU1Ny01OTk3LTQzMGEtYTJkZi04MTViNzFhMmZjNjc/YXV0b3BsYXk9MVwiIGZyYW1lQm9yZGVyPVwiMFwiIGFsbG93RnVsbFNjcmVlbj17dHJ1ZX0gc2FuZGJveD1cImFsbG93LXNhbWUtb3JpZ2luIGFsbG93LXNjcmlwdHMgYWxsb3ctcG9wdXBzIGFsbG93LWZvcm1zXCI+PC9pZnJhbWU+XHJcbiAgICAgICAgICAgIDxmaWdjYXB0aW9uPiA8Yj5GaWd1cmUgMS4gPC9iPiBNaWNyb3Njb3BpYyByZWNvcmRpbmcgb2YgbWljcm9waXBldHRlIHNlYWxpbmcgb2YgYSBIRUsyOTMgY2VsbC4gPC9maWdjYXB0aW9uPlxyXG4gICAgICAgICAgPC9maWd1cmU+IFxyXG4gICAgICAgICAgPC9kaXY+XHJcblxyXG5cclxuICAgICAgICAgIDxwPlRoZSBzdWNjZXNzIG9mIHBhdGNoIGNsYW1wIGV4cGVyaW1lbnRzIGhlYXZpbHkgZGVwZW5kcyBvbiB0aGUgY29tcG9zaXRpb24gb2YgdGhlIHNvbHV0aW9ucyB1c2VkLiBUeXBpY2FsbHksIHR3byBtYWluIHR5cGVzIG9mIHNvbHV0aW9ucyBhcmUgZW1wbG95ZWQ6IFRoZSA8c3Ryb25nPlBpcGV0dGUgU29sdXRpb248L3N0cm9uZz4gaW4gdGhlIG1pY3JvcGlwZXR0ZSBtaW1pY3MgdGhlIGludHJhY2VsbHVsYXIgZW52aXJvbm1lbnRzLCB3aGlsZSB0aGUgPHN0cm9uZz5CYXRoIFNvbHV0aW9uPC9zdHJvbmc+IHN1cnJvdW5kcyB0aGUgY2VsbCBhbmQgdXN1YWxseSBjb250YWlucyBjb21wb25lbnRzIHRoYXQgcmVwbGljYXRlIHRoZSBleHRyYWNlbGx1bGFyIGVudmlyb25tZW50LiBCb3RoIHNvbHV0aW9ucyBhcmUgbWV0aWN1bG91c2x5IGRlc2lnbmVkIHRvIHJlZmxlY3QgdGhlIHBoeXNpb2xvZ2ljYWwgY29uZGl0aW9ucyB1bmRlciB3aGljaCB0aGUgY2VsbHMgb3BlcmF0ZSwgdGhlcmVieSBlbnN1cmluZyB0aGF0IHRoZSBtZWFzdXJlbWVudHMgYWNjdXJhdGVseSByZWZsZWN0IGlvbiBjaGFubmVsIGFjdGl2aXR5IGluIGEgbmF0dXJhbCBzZXR0aW5nIFsyXS48L3A+XHJcbiAgICAgICAgICA8T25lRmlndXJlXHJcbiAgICAgICAgICBwaWMxPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvcGhvdG9zL2Zvci13aWtpLXRleHRzL21ldGgtcGF0Y2gtY2xhbXAvYmlsZC1tZXRoLXBhdGNoLWNsYW1wLnBuZ1wiXHJcbiAgICAgICAgICBhbHQxPVwiUGF0Y2ggQ2xhbXAgU2V0dXAuXCJcclxuICAgICAgICAgIGRlc2NyaXB0aW9uPVwiUGF0Y2ggQ2xhbXAgc2V0dXAuXCJcclxuICAgICAgICAgIG51bT17Mn1cclxuICAgICAgICAgIC8+XHJcbiAgICAgICAgIFxyXG4gICAgICAgICAgPC9TdWJlc2N0aW9uPlxyXG4gICAgICAgICAgPFN1YmVzY3Rpb24gdGl0bGU9XCJBcHBsaWNhdGlvbiBpbiBDRlRSIGdlbmUgUHJpbWUgRWRpdGluZyB2YWxpZGF0aW9uXCIgaWQ9XCJQYXRjaCBDbGFtcDNcIj5cclxuICAgICAgICAgICAgPHA+SW4gb3VyIG9uZ29pbmcgcmVzZWFyY2ggcHJvamVjdCBmb2N1c2luZyBvbiB0aGUgdHJlYXRtZW50IG9mIEN5c3RpYyBGaWJyb3Npcywgb3VyIHBhdGNoIGNsYW1wIG1lYXN1cmVtZW50cywgcGVyZm9ybWVkIGluIGNvbGxhYm9yYXRpb24gd2l0aCBEci4gT2xpdmVyIERyXHUwMEU0Z2VyIGZyb20gdGhlIENlbGx1bGFyIE5ldXJvcGh5c2lvbG9neSB3b3JraW5nIGdyb3VwIGF0IEJpZWxlZmVsZCBVbml2ZXJzaXR5LCBzZXJ2ZSBhcyBhIHBvd2VyZnVsIHZhbGlkYXRpb24gdG9vbCBmb3IgdGhlIGFzc2Vzc21lbnQgb2YgdGhlIGZ1bmN0aW9uYWwgY29ycmVjdGlvbiBvZiB0aGUgQ0ZUUiBnZW5lLCBwYXJ0aWN1bGFybHkgdGhlIGNvbW1vbiBGNTA4ZGVsIG11dGF0aW9uLCB2aWEgcHJpbWUgZWRpdGluZy4gVGhlIHBhdGNoIGNsYW1wIHRlY2huaXF1ZSBjYW4gYmUgZW1wbG95ZWQgaW4gdGhpcyBjb250ZXh0IHRvIG1lYXN1cmUgdGhlIHJlc3VsdGluZyBjaGxvcmlkZSBpb24gY2hhbm5lbCBhY3Rpdml0eSB3aGljaCBpcyBhbHRlcmVkIGJ5IHRoZSBtdXRhdGlvbiBbNF0uIFdob2xlLUNlbGwgcmVjb3JkaW5ncyB3ZXJlIHBlcmZvcm1lZCB0byBhc3Nlc3Mgd2hldGhlciB0aGUgY29ycmVjdGVkIENGVFIgY2hhbm5lbHMgZnVuY3Rpb24gc2ltaWxhcmx5IHRvIHRob3NlIGluIGhlYWx0aHkgY2VsbHMuIElmIHRoZSBjaGxvcmlkZSBpb24gY3VycmVudHMgaW4gdGhlIGVkaXRlZCBjZWxscyBhcHByb2FjaCBsZXZlbHMgb2YgaGVhbHRoeSBjZWxscywgdGhpcyB3b3VsZCBzdHJvbmdseSBzdWdnZXN0IHN1Y2Nlc3NmdWwgZ2VuZSBlZGl0aW5nIGFuZCB2YWxpZGF0ZSB0aGUgZnVuY3Rpb25hbGl0eSBvZiBvdXIgdGhlcmFwZXV0aWMgYXBwcm9hY2guPC9wPlxyXG4gICAgICAgICAgPC9TdWJlc2N0aW9uPlxyXG4gICAgICAgIDwvU2VjdGlvbj5cclxuXHJcbiAgICAgICAgPFNlY3Rpb24gdGl0bGU9XCJDZWxsIEN1bHR1cmVcIiBpZD1cIkNlbGwgQ3VsdHVyZVwiPlxyXG4gICAgICAgICAgPFN1YmVzY3Rpb24gdGl0bGU9XCJIRUsyOTMgYW5kIEhFSzI5M1QgY2VsbCBsaW5lc1wiIGlkPVwiQ2VsbCBDdWx0dXJlMVwiPlxyXG4gICAgICAgICAgPHA+Rm9yIHRlc3Rpbmcgb3VyIHByaW1lIGVkaXRpbmcgYXBwcm9hY2gsIHdlIG5lZWRlZCBhbiBlYXN5LXRvLWhhbmRsZSBjZWxsIGxpbmUgd2l0aCBhIG1lYXN1cmFibGUgaGlnaCBleHByZXNzaW9uIG9mIENGVFIgYW5kIHRoZSBDRlRSIEY1MDhkZWwgbXV0YXRpb24uIFdoZW4gdGFsa2luZyB0byBNYXR0aWpzIEJ1bGNhZW4gZnJvbSB0aGUgTGFib3JhdG9yeSBvZiBNb2xlY3VsYXIgVmlyb2xvZ3kgYW5kIEdlbmUgVGhlcmFweSBhdCBLVSBMZXV2ZW4sIGhlIHJlY29tbWVuZGVkIHRvIHVzZSBIRUsyOTNUIGNlbGwgbGluZXMgb3ZlcmV4cHJlc3NpbmcgQ0ZUUiB0aGV5IGhhZCB1c2VkLiBIRUsyOTMgY2VsbHMgYXJlIGEgdmVyeSBjb21tb24gaW1tb3J0YWxpemVkIGh1bWFuIGNlbGwgbGluZSBkZXJpdmVkIGZyb20gdGhlIGtpZG5leXMgb2YgYSBmZW1hbGUgZW1icnlvLiBUaGV5IGFyZSBwYXJ0aWN1bGFybHkgc3VpdGVkIHRvIHJlc2VhcmNoIGR1ZSB0byB0aGVpciBjb252ZW5pZW50IGhhbmRsaW5nIGFuZCB0cmFuc2ZlY3Rpb24gcHJvcGVydGllcy4gQmFzaWMgSEVLMjkzIGNlbGxzIHdlcmUgcHJvdmlkZWQgdG8gdXMgYnkgdGhlIENlbGx1bGFyIGFuZCBNb2xlY3VsYXIgQmlvdGVjaG5vbG9neSB3b3JraW5nIGdyb3VwIGF0IEJpZWxlZmVsZCBVbml2ZXJzaXR5IGxlZCBieSBQcm9mLiBEci4gS3Jpc3RpYW4gTVx1MDBGQ2xsZXIsIHdobyBpcyBhbHNvIG9uZSBvZiB0aGUgUHJpbmNpcGFsIEludmVzdGlnYXRvcnMgb2Ygb3VyIHRlYW0uIEhFSzI5M1QgY2VsbHMgZXhwcmVzcyBhbiBhZGRpdGlvbmFsIHRzQTE2MDkgYWxsZWxlIG9mIHRoZSBTVjQwIGxhcmdlIFQtYW50aWdlbiwgYWxsb3dpbmcgZm9yIHJlcGxpY2F0aW9uIG9mIHZlY3RvcnMgY29udGFpbmluZyB0aGUgU1Y0MCBvcmlnaW4gb2YgcmVwbGljYXRpb25bNV0uIEJlc2lkZXMgdGhlIG5hdGl2ZSBDRlRSIGdlbmUsIHdoaWNoIGlzIG5vdCBleHByZXNzZWQgaW4gSEVLIGNlbGxzLCB0aGUgSEVLMjkzVCBjZWxsIGxpbmVzIHVzZWQgaW4gTGV1dmVuIGNhcnJ5IGFub3RoZXIgY29weSBvZiB0aGUgZ2VuZSBlbWJlZGRlZCBpbiBhbiBleHByZXNzaW9uIGNhc3NldHRlLiBUaGUgY2Fzc2V0dGUgaW5jbHVkZXMgYSBDTVYgcHJvbW90ZXIsIHdoaWNoIGlzIGEgc3RhbmRhcmQgcHJvbW90ZXIgdXNlZCBmb3IgZ2VuZSBvdmVyZXhwcmVzc2lvbiBpbiBodW1hbiBjZWxscyBkZXJpdmVkIGZyb20gdGhlIGh1bWFuIEN5dG9tZWdhbG92aXJ1c1s2XSwgYXMgd2VsbCBhcyBhIHB1cm9teWNpbiByZXNpc3RhbmNlIGNvLWV4cHJlc3NlZCB3aXRoIHRoZSBDRlRSIGFsbG93aW5nIGZvciBjb250aW51b3VzIHNlbGVjdGlvbiBvZiBDRlRSIGV4cHJlc3NpbmcgY2VsbHMuIFRoZSB3aG9sZSBjb25zdHJ1Y3Qgd2FzIHN0YWJseSBpbnNlcnRlZCBpbnRvIHRoZSBnZW5vbWUgdXNpbmcgbGVudGl2aXJhbCB0cmFuc2R1Y3Rpb25bN11bOF0uIDwvcD5cclxuICAgICAgICAgIDxPbmVGaWd1cmVcclxuICAgICAgICAgIHBpYzE9XCJodHRwczovL3N0YXRpYy5pZ2VtLndpa2kvdGVhbXMvNTI0Ny9waG90b3MvZm9yLXdpa2ktdGV4dHMvbWV0aC11c2VkLWNlbGxzL21pa3Jvc2tvcGllLWhlazI5M3QucG5nXCJcclxuICAgICAgICAgIGFsdDE9XCJQaGFzZSBjb250cmFzdCBpbWFnZSBvZiBIRUsyOTNUIGF0IDIweCBtYWduaWZpY2F0aW9uLlwiXHJcbiAgICAgICAgICBkZXNjcmlwdGlvbj1cIlBoYXNlIGNvbnRyYXN0IGltYWdlIG9mIEhFSzI5M1QgYXQgMjB4IG1hZ25pZmljYXRpb24uXCJcclxuICAgICAgICAgIG51bT17M31cclxuICAgICAgICAgIGJnPVwid2hpdGVcIlxyXG4gICAgICAgICAgLz5cclxuICAgICAgICAgIDwvU3ViZXNjdGlvbj5cclxuICAgICAgICAgIDxTdWJlc2N0aW9uIHRpdGxlPVwiQ0ZCRTQxby0gY2VsbCBsaW5lXCIgaWQ9XCJDZWxsIEN1bHR1cmUyXCI+XHJcbiAgICAgICAgICA8cD5UaGUgQ0ZCRTQxby0gY2VsbCBsaW5lLCBkZXJpdmVkIGZyb20gYnJvbmNoaWFsIGVwaXRoZWxpYWwgY2VsbHMgb2YgYSBvbmUteWVhci1vbGQgQ3lzdGljIEZpYnJvc2lzIHBhdGllbnQsIHNlcnZlcyBhcyBhIHZpdGFsIG1vZGVsIGZvciBzdHVkeWluZyBDeXN0aWMgRmlicm9zaXMuIFRoZXNlIGNlbGxzIGNsb3NlbHkgbWltaWMgdGhlIHBoeXNpb2xvZ2ljYWwgZW52aXJvbm1lbnQgb2YgdGhlIGFpcndheSBlcGl0aGVsaXVtLCBhbGxvd2luZyBmb3IgbW9yZSBhY2N1cmF0ZSBzdHVkaWVzIG9uIGhvdyBDRlRSIG11dGF0aW9ucyBhZmZlY3QgY2VsbCBmdW5jdGlvbiBhbmQgcmVzcG9uc2UgdG8gdHJlYXRtZW50cy4gVGhleSB3ZXJlIGltbW9ydGFsaXplZCB0aHJvdWdoIGNhbGNpdW0tcGhvc3BoYXRlLW1lZGlhdGVkIHRyYW5zZmVjdGlvbiB1c2luZyBhIHJlcGxpY2F0aW9uLWRlZmVjdGl2ZSBwU1ZvcmkgcGxhc21pZCB0aGF0IGNhcnJpZXMgdGhlIHNpbWlhbiB2aXJ1cyA0MCBsYXJnZSBULWFudGlnZW4gKFNWNDAtTFQpLiBUaGUgcGxhc21pZCdzIGRlZmVjdGl2ZSBvcmlnaW4gb2YgcmVwbGljYXRpb24gcHJldmVudHMgdmlyYWwgcHJvcGFnYXRpb24sIHRodXMgcHJlc2VydmluZyBlc3NlbnRpYWwgcGh5c2lvbG9naWNhbCBjaGFyYWN0ZXJpc3RpY3Mgb2YgdGhlIGNlbGxzIHdoaWxlIGVuYWJsaW5nIHRoZW0gdG8gZGV2ZWxvcCBkaWZmZXJlbnRpYXRlZCBtb3JwaG9sb2dpZXMuIENGQkU0MW8tIGNlbGxzIGFyZSBob21venlnb3VzIGZvciB0aGUgRjUwOGRlbCBDRlRSIG11dGF0aW9uIFs5XS4gV2UgYXJlIGhhcHB5IHdlIGdvdCB0aGlzIGNlbGwgbGluZSB3aXRoIHBlcm1pc3Npb24gZnJvbSA8YSBvbkNsaWNrPXsoKSA9PiBnb1RvUGFnZXNBbmRPcGVuVGFiKCdpZ25hdG92YScsICcvaHVtYW4tcHJhY3RpY2VzJyl9PlByb2YuIERyLiBJZ25hdG92YTwvYT4sIHdobyBpcyBsZWFkZXIgb2YgYSB3b3JraW5nIGdyb3VwIGF0IHRoZSBJbnN0aXR1dGUgZm9yIEJpb2NoZW1pc3RyeSBhbmQgTW9sZWN1bGFyIEJpb2xvZ3kgb2YgSGFtYnVyZyBVbml2ZXJzaXR5IGFuZCBhbiBpR0VNIHN1cHBvcnRlciBzaW5jZSBhIGxvbmcgdGltZSBbMTBdLiA8L3A+XHJcbiAgICAgICAgICA8L1N1YmVzY3Rpb24+XHJcbiAgICAgICAgICA8U3ViZXNjdGlvbiB0aXRsZT1cIkh1bWFuIG5hc2FsIGVwaXRoZWxpYWwgY2VsbHMgKGhORUNzKVwiIGlkPVwiQ2VsbCBDdWx0dXJlM1wiPlxyXG4gICAgICAgICAgPHA+SHVtYW4gbmFzYWwgZXBpdGhlbGlhbCBjZWxscyB3ZXJlIG9idGFpbmVkIGJ5IG5hc2FsIGJydXNoaW5nLCBhIG1pbmltYWxseSBpbnZhc2l2ZSBtZXRob2QuIFRoZXNlIGNlbGxzIGZ1bmN0aW9uL2FjdCBhcyBwcmltYXJ5IGN1bHR1cmVzLiBDdWx0aXZhdGVkIGluIGFpci1saXF1aWQgaW50ZXJmYWNlIChBTEkpIGN1bHR1cmVzIGFuZCBhcGljYWwtb3V0IGFpcndheSBvcmdhbm9pZHMgKEFPQU8pLCB0aGV5IHNlcnZlIGFzIGEgc3VpdGFibGUgbW9kZWwgdG8gdmlzdWFsaXNlIHRoZSBmdW5jdGlvbmFsIGVwaXRoZWxpdW0gb2YgdGhlIGFpcndheXMgaW4gYSBkaWZmZXJlbnRpYXRlZCBmb3JtLiBUaGUgPGk+aW4gdml2bzwvaT4gYXNwZWN0cyBvZiBhbiBhaXJ3YXkgZGlzZWFzZSwgc3VjaCBhcyBDRiwgY2FuIGJlIG1vZGVsbGVkIHVzaW5nIGRvbm9ycyB3aXRoIHRob3NlIGFpcndheSBkaXNlYXNlcyBbMTFdLiBUaGlzIG1vZGVsIGlzIHRoZXJlZm9yZSBwYXJ0aWN1bGFybHkgc3VpdGFibGUgZm9yIHRlc3Rpbmcgb3VyIHByaW1lIGVkaXRpbmcgY29tcGxleC4gPC9wPlxyXG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJmaWd1cmUtd3JhcHBlclwiPlxyXG4gICAgICAgICAgPGZpZ3VyZT5cclxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3cgYWxpZ24taXRlbXMtY2VudGVyXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgICAgPGlmcmFtZSB0aXRsZT1cIkJpZWxlZmVsZC1DZUJpVGVjOiBBTEkgY2VsbCBjdWx0dXJlICgyMDI0KSBbRW5nbGlzaF1cIiB3aWR0aD1cIjUwMFwiIGhlaWdodD1cIjMxNVwiIHNyYz1cImh0dHBzOi8vdmlkZW8uaWdlbS5vcmcvdmlkZW9zL2VtYmVkL2ZmNTU3ZjVhLTk0YmUtNDVlNi05MGNhLTBhZmZhMTQ0MjNlMz9hdXRvcGxheT0xJmFtcDttdXRlZD0xXCIgZnJhbWVCb3JkZXI9XCIwXCIgYWxsb3dGdWxsU2NyZWVuPXt0cnVlfSBzYW5kYm94PVwiYWxsb3ctc2FtZS1vcmlnaW4gYWxsb3ctc2NyaXB0cyBhbGxvdy1wb3B1cHMgYWxsb3ctZm9ybXNcIj48L2lmcmFtZT5cclxuICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgICAgICAgIDxpZnJhbWUgdGl0bGU9XCJCaWVsZWZlbGQtQ2VCaVRlYzogQU9BTyBjZWxsIGN1bHR1cmUgKDIwMjQpIFtFbmdsaXNoXVwiIHdpZHRoPVwiNTAwXCIgaGVpZ2h0PVwiMzE1XCIgc3JjPVwiaHR0cHM6Ly92aWRlby5pZ2VtLm9yZy92aWRlb3MvZW1iZWQvMDU4ZDgzY2YtYWIwOS00NzZlLTlhYjItMzBjZDExNGZiYzBjP2F1dG9wbGF5PTEmYW1wO211dGVkPTFcIiBmcmFtZUJvcmRlcj1cIjBcIiBhbGxvd0Z1bGxTY3JlZW49e3RydWV9IHNhbmRib3g9XCJhbGxvdy1zYW1lLW9yaWdpbiBhbGxvdy1zY3JpcHRzIGFsbG93LXBvcHVwcyBhbGxvdy1mb3Jtc1wiPjwvaWZyYW1lPlxyXG4gICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZmlnY2FwdGlvbj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyb3cgYWxpZ24taXRlbXMtY2VudGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2xcIj5cclxuICAgICAgICAgICAgICAgICAgICA8Yj5GaWd1cmUgNC48L2I+IEFMSSBjdWx0dXJlcyBvZiBoTkVDczogVGhlIGFjdGl2ZSBjaWxpYSBiZWF0IGZyZXF1ZW5jeSBvZiBkaWZmZXJlbnRpYXRlZCBodW1hbiBuYXNhbCBlcGl0aGVsaWFsIGNlbGxzIChoTkVDcykgaW4gYWlyLWxpcXVpZCBpbnRlcmZhY2UgKEFMSSkgY3VsdHVyZSBpcyB2aXNpYmxlLiBUaGlzIGNpbGlhcnkgbW92ZW1lbnQgaXMgY3J1Y2lhbCBmb3IgbXVjb2NpbGlhcnkgdHJhbnNwb3J0LCB3aGljaCBjb250cmlidXRlcyB0byB0aGUgY2xlYXJhbmNlIG9mIHBhcnRpY2xlcyBhbmQgcGF0aG9nZW5zIGluIHRoZSByZXNwaXJhdG9yeSB0cmFjdC5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxiPkZpZ3VyZSA1LjwvYj4gQXBpY2FsLU91dCBBaXJ3YXkgT3JnYW5vaWQgKEFPQU8pIGN1bHR1cmU6IFZpc2libGUgYXBpY2FsLW91dCBhaXJ3YXkgb3JnYW5vaWRzIGluIGFjdGlvbi4gVGhlc2UgM0Qgc3RydWN0dXJlcywgd2hpY2ggbWltaWMgdGhlIGFpcndheSBlcGl0aGVsaXVtLCBhbGxvdyBkZXRhaWxlZCBzdHVkeSBvZiBjZWxsdWxhciBwcm9jZXNzZXMgc3VjaCBhcyBtdWNvY2lsaWFyeSB0cmFuc3BvcnQgYW5kIHNlY3JldG9yeSBhY3Rpdml0aWVzLCBpbiB3aGljaCBjaWxpYSBhbmQgdmVzaWNsZXMgcGxheSBhIGtleSByb2xlLlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZmlnY2FwdGlvbj5cclxuICAgICAgICA8L2ZpZ3VyZT5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8L1N1YmVzY3Rpb24+XHJcbiAgICAgXHJcblxyXG4gICAgICAgIDwvU2VjdGlvbj5cclxuICAgICAgICA8U2VjdGlvbiB0aXRsZT1cIkxOUHNcIiBpZD1cIkxOUHNcIj5cclxuICAgICAgICAgIDxTdWJlc2N0aW9uIHRpdGxlPVwiQ3l0b3RveGljaXR5IFRlc3RzXCIgaWQ9XCJDeXRvdG94aWNpdHkgVGVzdHNcIj5cclxuICAgICAgICAgIDxINCB0ZXh0PVwiQXNzZXNzaW5nIHRoZSBTYWZldHkgb2YgT3VyIExOUHMgXCI+PC9IND5cclxuICAgICAgICAgICAgPHA+RW5zdXJpbmcgdGhlIHNhZmV0eSBhbmQgdGhvcm91Z2ggY2hhcmFjdGVyaXphdGlvbiBvZiBvdXIgTE5QcyB3YXMgYSBjZW50cmFsIHBhcnQgb2Ygb3VyIHByb2plY3QsIGFzIHRoZXNlIHBhcnRpY2xlcyBhcmUgaW50ZW5kZWQgZm9yIHVzZSBpbiBiaW9sb2dpY2FsIHN5c3RlbXMuIFdlIGltcGxlbWVudGVkIGEgY29tcHJlaGVuc2l2ZSByYW5nZSBvZiBhc3NheXMgYW5kIHRlY2huaXF1ZXMgdG8gYXNzZXNzIHRoZWlyIGJpb3NhZmV0eSBhbmQgcGh5c2ljYWwgcHJvcGVydGllcywgZW5zdXJpbmcgdGhlaXIgc3VpdGFiaWxpdHkgZm9yIGFwcGxpY2F0aW9ucyBzdWNoIGFzIGRydWcgZGVsaXZlcnkgYW5kIGdlbmUgdGhlcmFweS4gQmVsb3cgaXMgYW4gb3ZlcnZpZXcgb2YgdGhlIGtleSBzdGVwcyB3ZSB0b29rIGluIG91ciBhc3Nlc3NtZW50LjwvcD5cclxuICAgICAgICAgIDxINCB0ZXh0PVwiTVRUIEFzc2F5XCI+PC9IND5cclxuXHJcbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0ncm93IGFsaWduLWl0ZW1zLWNlbnRlcic+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J2NvbCc+XHJcbiAgICAgICAgICAgICAgICA8T25lRmlndXJlXHJcbiAgICAgICAgICAgICAgICBwaWMxPVwiaHR0cHM6Ly9zdGF0aWMuaWdlbS53aWtpL3RlYW1zLzUyNDcvaW50ZWdyYXRlZC1odW1hbi1wcmFjdGljZXMvbXR0YXNzYXkud2VicFwiXHJcbiAgICAgICAgICAgICAgICBhbHQxPVwiUEMxXCJcclxuICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uPVwiTVRUIEFzc2F5OiBGb3JtYXRpb24gb2YgcHVycGxlIGZvcm1hemFuIGNyeXN0YWxzIGJ5IGxpdmluZyBjZWxscy5cIlxyXG4gICAgICAgICAgICAgICAgbnVtPXs2fVxyXG4gICAgICAgICAgICAgICAgLz5cclxuICAgICAgICAgICAgICA8L2Rpdj4gXHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSdjb2wnPlxyXG4gICAgICAgICAgICA8cD5UbyBldmFsdWF0ZSB0aGUgY3l0b3RveGljaXR5IG9mIG91ciBMTlBzLCB3ZSBjb25kdWN0ZWQgYW4gTVRUIGFzc2F5LCB3aGljaCBtZWFzdXJlcyB0aGUgbWV0YWJvbGljIGFjdGl2aXR5IG9mIGNlbGxzLiBUaGlzIGFzc2F5IGlzIGJhc2VkIG9uIHRoZSBhYmlsaXR5IG9mIGxpdmluZyBjZWxscyB0byByZWR1Y2UgTVRULCBhIHllbGxvdyB0ZXRyYXpvbGl1bSBzYWx0LCBpbnRvIHB1cnBsZSBmb3JtYXphbiBjcnlzdGFscyB0aHJvdWdoIE5BRChQKUgtZGVwZW5kZW50IGVuenltZXMuIENlbGxzIHdlcmUgdHJlYXRlZCB3aXRoIHZhcmlvdXMgY29uY2VudHJhdGlvbnMgb2YgTE5QcywgYW5kIGFmdGVyIGRpc3NvbHZpbmcgdGhlIGZvcm1hemFuIGNyeXN0YWxzIHdpdGggRE1TTywgd2UgbWVhc3VyZWQgYWJzb3JiYW5jZS4gSGlnaGVyIGFic29yYmFuY2UgdmFsdWVzIGluZGljYXRlIGdyZWF0ZXIgY2VsbCB2aWFiaWxpdHkuIE91ciByZXN1bHRzIHNob3dlZCBubyBzaWduaWZpY2FudCByZWR1Y3Rpb24gaW4gY2VsbCB2aWFiaWxpdHkgYWNyb3NzIGFsbCBMTlAgY29uY2VudHJhdGlvbnMsIGRlbW9uc3RyYXRpbmcgdGhhdCB0aGUgTE5QcyBkaWQgbm90IGluZHVjZSBjeXRvdG94aWMgZWZmZWN0cy4gVGhpcyBmaW5kaW5nIGlzIGNydWNpYWwgZm9yIGVuc3VyaW5nIHRoYXQgdGhlIExOUHMgYXJlIHNhZmUgZm9yIGJpb2xvZ2ljYWwgdXNlLCBzdXBwb3J0aW5nIHRoZWlyIHBvdGVudGlhbCBpbiBjbGluaWNhbCBhcHBsaWNhdGlvbnMgc3VjaCBhcyBkcnVnIGRlbGl2ZXJ5IGFuZCBnZW5lIHRoZXJhcHkuIE92ZXJhbGwsIHRoZSBNVFQgYXNzYXkgcHJvdmlkZWQgc3Ryb25nIGV2aWRlbmNlIG9mIHRoZSBiaW9jb21wYXRpYmlsaXR5IG9mIG91ciBMTlBzLiA8L3A+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj4gXHJcbiAgICAgICAgICA8SDQgdGV4dD1cIlByb2xpZmVyYXRpb24gQXNzYXkgdG8gTW9uaXRvciBMb25nLVRlcm0gU2FmZXR5XCI+PC9IND5cclxuICAgICAgICAgICAgPHA+SW4gYWRkaXRpb24gdG8gYXNzZXNzaW5nIGltbWVkaWF0ZSBjeXRvdG94aWNpdHksIHdlIGFsc28gZXZhbHVhdGVkIHRoZSBsb25nLXRlcm0gc2FmZXR5IG9mIHRoZSBMTlBzIGJ5IGNvbmR1Y3RpbmcgYSBwcm9saWZlcmF0aW9uIGFzc2F5LiBUaGlzIGFzc2F5IHRyYWNrZWQgY2VsbCBkaXZpc2lvbiBhbmQgZ3Jvd3RoIG92ZXIgdGltZSB0byBkZXRlcm1pbmUgd2hldGhlciB0aGUgTE5QcyBpbXBhY3RlZCBjZWxsdWxhciBmdW5jdGlvbi4gT3VyIHJlc3VsdHMgc2hvd2VkIHRoYXQgTE5QLXRyZWF0ZWQgY2VsbHMgaGFkIHNpbWlsYXIgZ3Jvd3RoIHJhdGVzIHRvIHVudHJlYXRlZCBjb250cm9scywgaW5kaWNhdGluZyB0aGF0IHRoZSBMTlBzIGRvIG5vdCBpbnRlcmZlcmUgd2l0aCBub3JtYWwgY2VsbCBwcm9jZXNzZXMuIFRoaXMgZnVydGhlciBjb25maXJtcyB0aGVpciBiaW9jb21wYXRpYmlsaXR5IGFuZCBzdWl0YWJpbGl0eSBmb3IgdXNlIGluIGJpb2xvZ2ljYWwgc3lzdGVtcy48L3A+XHJcbiAgICAgICAgICA8L1N1YmVzY3Rpb24+XHJcbiAgICAgICAgICA8U3ViZXNjdGlvbiB0aXRsZT1cIkZsb3cgQ3l0b21ldHJ5XCIgaWQ9XCJmbG93IGN5dG9tZXRyeVwiPlxyXG4gICAgICAgICAgICA8cD5UbyBhc3Nlc3MgdGhlIHRyYW5zZmVjdGlvbiBlZmZpY2llbmN5IG9mIG91ciBMTlBzLCB3ZSB1c2VkIGZsb3cgY3l0b21ldHJ5LiBUaGlzIG1ldGhvZCBpbnZvbHZlZCB0YWdnaW5nIHRoZSBMTlBzIHdpdGggZmx1b3Jlc2NlbnQgbWFya2VycyBhbmQgbWVhc3VyaW5nIHRoZWlyIGFiaWxpdHkgdG8gZGVsaXZlciBnZW5ldGljIG1hdGVyaWFsIGludG8gdGFyZ2V0IGNlbGxzLiBUaGUgZmxvdyBjeXRvbWV0cnkgcmVzdWx0cyBwcm92aWRlZCBxdWFudGl0YXRpdmUgaW5zaWdodHMgaW50byBob3cgZWZmZWN0aXZlbHkgdGhlIExOUHMgdHJhbnNmZWN0ZWQgY2VsbHMsIGhlbHBpbmcgdXMgb3B0aW1pemUgdGhlaXIgZGVzaWduIGZvciBnZW5lIHRoZXJhcHkgYXBwbGljYXRpb25zLiA8L3A+XHJcbiAgICAgICAgICA8L1N1YmVzY3Rpb24+XHJcblxyXG4gICAgICAgICAgPFN1YmVzY3Rpb24gdGl0bGU9XCJJbi1EZXB0aCBDaGFyYWN0ZXJpemF0aW9uIG9mIExOUHNcIiBpZD1cIkluLURlcHRoIENoYXJhY3Rlcml6YXRpb24gb2YgTE5Qc1wiPlxyXG4gICAgICAgICAgICA8SDQgdGV4dD1cIkR5bmFtaWMgTGlnaHQgU2NhdHRlcmluZyAoRExTKSBhbmQgWmV0YSBQb3RlbnRpYWxcIi8+XHJcbiAgICAgICAgICAgICAgPHA+VGhlIGh5ZHJvZHluYW1pYyByYWRpdXMgKFx1RDgzNVx1REM0NVx1RDgzNVx1REMzQikgb2YgdGhlIHZlc2ljbGVzIGFuZCBMTlBzIHdhcyBkZXRlcm1pbmVkIHRocm91Z2ggYW5nbGUtZGVwZW5kZW50IHBob3RvbiBjb3JyZWxhdGlvbiBzcGVjdHJvc2NvcHkgKFBDUykgYXQgXHVEODM1XHVEQzQ3PTIwXHUwMEIwQy4gU2FtcGxlcyB3ZXJlIG1lYXN1cmVkIGluIE5NUiB0dWJlcyB1c2luZyBhIDNEIExTIFNwZWN0cm9tZXRlciBQcm8gKExTIEluc3RydW1lbnRzLCBGcmlib3VyZywgU3dpdHplcmxhbmQpLCB3aGljaCB3YXMgZXF1aXBwZWQgd2l0aCBhIEhlTmUgTGFzZXIgKDYzMi44IG5tLCAxMTQ1UDsgSkRTVSwgTWlscGl0YXMsIENBLCBVU0EpLCBhIGRlY2FsaW5lIGluZGV4LW1hdGNoaW5nIHZhdCwgYW4gYXV0b21hdGVkIGdvbmlvbWV0ZXIsIGFuZCB0d28gZGV0ZWN0b3JzLiBNZWFzdXJlbWVudHMgd2VyZSBwZXJmb3JtZWQgaW4gYSAzRCBjcm9zcy1tb2RlIHRvIGVsaW1pbmF0ZSBtdWx0aXBsZSBzY2F0dGVyaW5nIGVmZmVjdHMsIGNvdmVyaW5nIGEgc2NhdHRlcmluZyBhbmdsZSByYW5nZSBvZiAzMFx1MDBCMCB0byAxMjBcdTAwQjAgaW4gaW5jcmVtZW50cyBvZiAxMFx1MDBCMCwgd2l0aCBhIG1lYXN1cmluZyB0aW1lIG9mIHRocmVlIGludGVydmFscyBvZiAxMjAgcyBwZXIgYW5nbGUuIFRoZSBhdXRvY29ycmVsYXRpb24gZnVuY3Rpb24gb2YgdGhlIHNjYXR0ZXJlZCBsaWdodCBpbnRlbnNpdHkgd2FzIGdlbmVyYXRlZCB1c2luZyBhIG11bHRpcGxlLVx1MDNDNCBkaWdpdGFsIGNvcnJlbGF0b3IgYW5kIGFuYWx5emVkIHZpYSBpbnZlcnNlIExhcGxhY2UgdHJhbnNmb3JtYXRpb24gKENPTlRJTikgdG8gZGV0ZXJtaW5lIHRoZSBtZWFuIHJlbGF4YXRpb24gcmF0ZSAoXHUwMzkzKS4gRnJvbSB0aGVzZSBkYXRhLCB0aGUgaHlkcm9keW5hbWljIHJhZGl1cyAoXHVEODM1XHVEQzQ1XHVEODM1XHVEQzNCKSB3YXMgY2FsY3VsYXRlZCB1c2luZyB0aGUgU3Rva2VzXHUyMDEzRWluc3RlaW4gZXF1YXRpb246IFxyXG4gICAgICAgICAgICAgICAgXHVEODM1XHVEQzQ1XHVEODM1XHVEQzNCPVx1RDgzNVx1REM1OFx1RDgzNVx1REMzNVx1MjJDNVx1RDgzNVx1REM0Ny82XHVEODM1XHVERjBCXHVEODM1XHVERjAyXHVEODM1XHVEQzM3XHVEODM1XHVEQzQ3IHdoZXJlIFx1RDgzNVx1REM1OFx1RDgzNVx1REMzNSBpcyB0aGUgQm9sdHptYW5uIGNvbnN0YW50LCBUIGlzIHRoZSB0ZW1wZXJhdHVyZSwgXHUwM0I3IGlzIHRoZSBzb2x2ZW50IHZpc2Nvc2l0eSwgYW5kIERUXHJcbiAgICAgICAgICAgICAgICBpcyB0aGUgdHJhbnNsYXRpb25hbCBkaWZmdXNpb24gY29lZmZpY2llbnQuIFRoZSB2YWx1ZSBvZiBcdUQ4MzVcdURDMzdcdUQ4MzVcdURDNDcgd2FzIG9idGFpbmVkIGZyb20gdGhlIHNsb3BlIG9mIHRoZSBsaW5lYXIgcmVsYXRpb25zaGlwIGJldHdlZW4gdGhlIHJlbGF4YXRpb24gcmF0ZSAoXHUwMzkzKSBhbmQgXHJcbiAgICAgICAgICAgICAgICB0aGUgc3F1YXJlZCBtYWduaXR1ZGUgb2YgdGhlIHNjYXR0ZXJpbmcgdmVjdG9yIChcdUQ4MzVcdURDNUUyKSBhcyBkZWZpbmVkIGJ5Olx1MDM5MyA9XHVEODM1XHVEQzM3XHVEODM1XHVEQzQ3XHUyMkM1XHVEODM1XHVEQzVFMlx1MDM5My5cclxuICAgICAgICAgICAgICAgIFRoZSB2aXNjb3NpdHkgb2Ygd2F0ZXIgd2FzIGNhbGN1bGF0ZWQgYmFzZWQgb24gdGhlIHRlbXBlcmF0dXJlIHRvIHByb3ZpZGUgYWNjdXJhdGUgbWVhc3VyZW1lbnRzIGZvciB0aGUgZ2l2ZW4gY29uZGl0aW9ucy5cclxuICAgICAgICAgICAgICAgIFRvIGNvbXBsZW1lbnQgdGhlIFBDUyBhbmFseXNpcywgZHluYW1pYyBsaWdodCBzY2F0dGVyaW5nIChETFMpIHdhcyB1c2VkIHRvIGRldGVybWluZSB0aGUgc2l6ZSBkaXN0cmlidXRpb24gYW5kIHBvbHlkaXNwZXJzaXR5IGluZGV4IChQREkpIG9mIHRoZSBMTlBzLiBETFMgbWVhc3VyZW1lbnRzIGNvbmZpcm1lZCB0aGF0IHRoZSBMTlBzIGhhZCBhIGNvbnNpc3RlbnQgc2l6ZSBkaXN0cmlidXRpb24gd2l0aCBtaW5pbWFsIGFnZ3JlZ2F0aW9uLCB3aGljaCBpcyBjcnVjaWFsIGZvciB0aGVpciBzdGFiaWxpdHkgYW5kIGVmZmVjdGl2ZW5lc3MuIEZ1cnRoZXJtb3JlLCB3ZSBhc3Nlc3NlZCB0aGUgemV0YSBwb3RlbnRpYWwgb2YgdGhlIExOUHMgdG8gZXZhbHVhdGUgdGhlaXIgc3VyZmFjZSBjaGFyZ2UuIEEgaGlnaCB6ZXRhIHBvdGVudGlhbCB2YWx1ZSBpbmRpY2F0ZWQgdGhhdCB0aGUgTE5QcyB3ZXJlIHN0YWJsZSBpbiBzdXNwZW5zaW9uLCBhIG5lY2Vzc2FyeSBjb25kaXRpb24gZm9yIG1haW50YWluaW5nIHRoZWlyIGZ1bmN0aW9uYWxpdHkgaW4gYmlvbG9naWNhbCBlbnZpcm9ubWVudHMuXHJcbiAgICAgICAgICAgICAgICBPdmVyYWxsLCB0aGUgY29tYmluYXRpb24gb2YgUENTLCBETFMsIGFuZCB6ZXRhIHBvdGVudGlhbCBtZWFzdXJlbWVudHMgcHJvdmlkZWQgYSBjb21wcmVoZW5zaXZlIGNoYXJhY3Rlcml6YXRpb24gb2YgdGhlIExOUHMsIGNvbmZpcm1pbmcgdGhlaXIgaHlkcm9keW5hbWljIHByb3BlcnRpZXMsIHN0YWJpbGl0eSwgYW5kIHN1aXRhYmlsaXR5IGZvciBkcnVnIGRlbGl2ZXJ5IGFwcGxpY2F0aW9ucy4gPC9wPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0ncm93IGFsaWduLWl0ZW1zLWNlbnRlcic+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J2NvbCc+XHJcbiAgICAgICAgICAgICAgPE9uZUZpZ3VyZVxyXG4gICAgICAgICAgICAgICAgcGljMT1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L3Bob3Rvcy9sYWIvZGxzLW1ldGhvZHMud2VicFwiXHJcbiAgICAgICAgICAgICAgICBhbHQxPVwiRHluYW1pYyBMaWdodCBTY2F0dGVyaW5nIChETFMpIG1lYXN1cmVtZW50IHNldC11cC5cIlxyXG4gICAgICAgICAgICAgICAgZGVzY3JpcHRpb249XCJEeW5hbWljIExpZ2h0IFNjYXR0ZXJpbmcgKERMUykgbWVhc3VyZW1lbnQgc2V0dXAuXCJcclxuICAgICAgICAgICAgICAgIG51bT17N31cclxuICAgICAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxINCB0ZXh0PVwiU0VNIGFuZCBDcnlvLUVNIGZvciBTdHJ1Y3R1cmFsIEFuYWx5c2lzXCI+PC9IND5cclxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J3JvdyBhbGlnbi1pdGVtcy1jZW50ZXInPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0nY29sJz5cclxuICAgICAgICAgICAgPHA+Rm9yIHRoZSBjcnlvZ2VuaWMgZWxlY3Ryb24gbWljcm9zY29weSAoQ3J5by1FTSkgYW5hbHlzaXMsIHNhbXBsZXMgd2VyZSB2aXRyaWZpZWQgb24gaG9sZXkgY2FyYm9uIFRFTSBncmlkcyAoTGFjZXkgQ2FyYm9uIEZpbG0gY29hdGVkLCAyMDAgTWVzaDsgU2NpZW5jZSBTZXJ2aWNlcywgTVx1MDBGQ25jaGVuLCBHZXJtYW55KSB1c2luZyBhIExlaWNhIGJsb3R0aW5nIGFuZCBwbHVuZ2luZyBkZXZpY2UgKExlaWNhIEVNIEdQLCBMZWljYSBNaWtyb3N5c3RlbWUgVmVydHJpZWIgR21iSCwgV2V0emxhciwgR2VybWFueSkuIFRoZSBncmlkcyB3ZXJlIHJhcGlkbHkgcGx1bmdlZCBpbnRvIGxpcXVpZCBldGhhbmUgY29vbGVkIGJ5IGxpcXVpZCBuaXRyb2dlbiB0byBlbnN1cmUgc3VmZmljaWVudGx5IGZhc3QgY29vbGluZy4gQWZ0ZXIgdml0cmlmaWNhdGlvbiwgdGhlIGdyaWRzIHdlcmUgdHJhbnNmZXJyZWQgdG8gYSBjcnlvIHRyYW5zZmVyIGFuZCB0b21vZ3JhcGh5IGhvbGRlciAoRmlzY2hpb25lIE1vZGVsIDI1NTAsIEUuQS4gRmlzY2hpb25lIEluc3RydW1lbnRzLCBQaXR0c2J1cmdoLCBVU0EpLlxyXG4gICAgICAgICAgICBURU0gaW1hZ2VzIHdlcmUgYWNxdWlyZWQgdXNpbmcgYSBKRU9MIEpFTS0yMjAwRlMgZWxlY3Ryb24gbWljcm9zY29wZSAoSkVPTCwgRnJlaXNpbmcsIEdlcm1hbnkpIGVxdWlwcGVkIHdpdGggYSBjb2xkIGZpZWxkIGVtaXNzaW9uIGVsZWN0cm9uIGd1biwgb3BlcmF0ZWQgYXQgYW4gYWNjZWxlcmF0aW9uIHZvbHRhZ2Ugb2YgMjAwIGtWLiBBbGwgaW1hZ2VzIHdlcmUgY2FwdHVyZWQgZGlnaXRhbGx5IHVzaW5nIGEgYm90dG9tLW1vdW50ZWQgY2FtZXJhIChHYXRhbiBPbmVWaWV3LCBHYXRhbiwgUGxlYXNhbnRvbiwgVVNBKSBhbmQgcHJvY2Vzc2VkIHdpdGggYSBkaWdpdGFsIGltYWdpbmcgcHJvY2Vzc2luZyBzeXN0ZW0gKERpZ2l0YWwgTWljcm9ncmFwaCBHTVMgMywgR2F0YW4sIFBsZWFzYW50b24sIFVTQSkuXHJcbiAgICAgICAgICAgIEluIGFkZGl0aW9uIHRvIENyeW8tRU0sIHdlIGVtcGxveWVkIHNjYW5uaW5nIGVsZWN0cm9uIG1pY3Jvc2NvcHkgKFNFTSkgdG8gZnVydGhlciBjaGFyYWN0ZXJpemUgdGhlIG1vcnBob2xvZ3kgYW5kIHN1cmZhY2Ugc3RydWN0dXJlIG9mIHRoZSBMTlBzLiBTRU0gcHJvdmlkZWQgaGlnaC1yZXNvbHV0aW9uIGltYWdlcyB0aGF0IGNvbmZpcm1lZCB0aGUgc3BoZXJpY2FsIHNoYXBlIGFuZCB1bmlmb3JtaXR5IG9mIHRoZSBMTlBzLjwvcD5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J2NvbCc+XHJcbiAgICAgICAgICAgICAgPE9uZUZpZ3VyZVxyXG4gICAgICAgICAgICAgICAgcGljMT1cImh0dHBzOi8vc3RhdGljLmlnZW0ud2lraS90ZWFtcy81MjQ3L2RlbGl2ZXJ5L3BsYXNtYXRlbS53ZWJwXCJcclxuICAgICAgICAgICAgICAgIGFsdDE9XCJQQzFcIlxyXG4gICAgICAgICAgICAgICAgZGVzY3JpcHRpb249XCJTYW1wbGUgcHJlcGFyYXRpb24gZm9yIFNFTTogU3B1dHRlcmluZyBpbiBBcmdvbiBwbGFzbWEuXCJcclxuICAgICAgICAgICAgICAgIG51bT17OH1cclxuICAgICAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICAgICAgPC9kaXY+IFxyXG4gICAgICAgICAgICA8L2Rpdj4gXHJcbiAgICAgICAgICA8L1N1YmVzY3Rpb24+XHJcbiAgICAgICAgICBcclxuICAgICAgICAgIDxTdWJlc2N0aW9uIHRpdGxlPVwiQ29uY2x1c2lvblwiIGlkPVwiQ29uY2x1c2lvblwiPlxyXG4gICAgICAgICAgPEg0IHRleHQ9XCJJbXBvcnRhbmNlIG9mIFNhZmV0eSBpbiBMTlAgRGV2ZWxvcG1lbnRcIj48L0g0PlxyXG4gICAgICAgICAgICA8cD5UZXN0aW5nIHRoZSBzYWZldHkgb2Ygb3VyIExOUHMgd2FzIGEgY3JpdGljYWwgc3RlcCBpbiB0aGVpciBkZXZlbG9wbWVudC4gTE5QcyBhcmUgaW5jcmVhc2luZ2x5IGJlaW5nIHVzZWQgaW4gY3V0dGluZy1lZGdlIHRoZXJhcGllcywgc3VjaCBhcyBtUk5BIHZhY2NpbmVzIGFuZCB0YXJnZXRlZCBkcnVnIGRlbGl2ZXJ5IHN5c3RlbXMuIEZvciB0aGVzZSB0ZWNobm9sb2dpZXMgdG8gYmUgdmlhYmxlLCB0aGUgbmFub3BhcnRpY2xlcyBtdXN0IG5vdCBoYXJtIHRoZSBjZWxscyB0aGV5IGFyZSBpbnRlbmRlZCB0byBpbnRlcmFjdCB3aXRoLiBUaGUgTVRUIGFuZCBwcm9saWZlcmF0aW9uIGFzc2F5cyBwcm92aWRlZCByb2J1c3QgZGF0YSwgY29uZmlybWluZyB0aGUgYmlvY29tcGF0aWJpbGl0eSBvZiBvdXIgTE5QcyBhbmQgcmVpbmZvcmNpbmcgdGhlaXIgcG90ZW50aWFsIGZvciBzYWZlIHVzZSBpbiBmdXJ0aGVyIHJlc2VhcmNoIGFuZCBjbGluaWNhbCBhcHBsaWNhdGlvbnMuIDwvcD5cclxuICAgICAgICAgIDwvU3ViZXNjdGlvbj5cclxuICAgICBcclxuICAgICAgICA8L1NlY3Rpb24+XHJcbiAgICAgICAgPFNlY3Rpb24gdGl0bGU9XCJSZWZlcmVuY2VzXCIgaWQ9XCJSZWZlcmVuY2VzXCI+XHJcbiAgICAgICAgIDxNZXRob2RTb3VyY2VzLz5cclxuICAgICAgICA8L1NlY3Rpb24+XHJcblxyXG4gICAgICAgIFxyXG5cclxuICAgICAgICBcclxuICAgICAgPC8+XHJcbiAgICApO1xyXG59IiwgImV4cG9ydCBmdW5jdGlvbiBNRVRISCgpIHtcclxuXHJcbiAgICByZXR1cm4gKFxyXG4gICAgICA8SGVhZGVyQm94IHRpdGxlPVwiTWF0ZXJpYWxzXCIgdGl0bGUyPVwiJiBNZXRob2RzXCIgaWQ9XCJtbWhlYWRcIj5cclxuICAgICAgICBcclxuICAgICAgPC9IZWFkZXJCb3g+XHJcbiAgICApO1xyXG4gIH1cclxuICBcclxuICBpbXBvcnQgSGVhZGVyQm94IGZyb20gXCIuLi9jb21wb25lbnRzL0hlYWRlckJveFwiOyIsICJpbXBvcnQgeyBjcmVhdGVTaWRlYmFyIH0gZnJvbSBcIi4uL3V0aWxzL2NyZWF0ZVNpZGViYXJcIjtcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBDb25TaWRlYmFyKCl7XHJcbiAgICBsZXQgc2lkZWJhciA9IGNyZWF0ZVNpZGViYXIodGFicyk7IFxyXG4gICAgcmV0dXJuKFxyXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sLTIgIGQtbm9uZSBkLWxnLWJsb2NrXCI+XHJcbiAgICAgICAgICAge3NpZGViYXJ9XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICApXHJcbn1cclxuXHJcblxyXG5jb25zdCB0YWJzID0gW1xyXG4gICAge3RhYjogXCJBYnN0cmFjdFwifSxcclxuICAgIHsgdGFiOiBcIkJGSCBFdXJvcGVhbiBNZWV0VXBcIiwgc3VidGFiczogW1wiQWZ0ZXJ2aWRlb1wiLCBcIlRpbWVsaW5lXCIsIFwiQWJvdXRcIiwgXCJQb3N0ZXJzXCIsIFwiR2FsbGVyeVwiLCBcIkRvd25sb2Fkc1wiXX0sXHJcbiAgICB7dGFiOiBcIk91ciBDb2xsYWJvcmF0aW9uc1wiLCBzdWJ0YWJzOiBbXCJNZWV0VXAgR3VpZGVsaW5lXCIsIFwiTE5QIEhhbmRib29rXCJdfSxcclxuICAgIHt0YWI6IFwiT3VyIENvbnRyaWJ1dGlvbnNcIiwgc3VidGFiczogW1wiQmlvc2FmZXR5ICYgU2VjdXJpdHlcIiwgXCJXaWtpIERldmVsb3BlbWVudFwiXX0sXHJcbiAgICB7dGFiOiBcIkNvbmNsdXNpb25cIn1cclxuICBdO1xyXG4iLCAiaW1wb3J0IHsgY3JlYXRlU2lkZWJhciB9IGZyb20gXCIuLi91dGlscy9jcmVhdGVTaWRlYmFyXCI7XHJcblxyXG5cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBpR2VtQmllbGVmZWxkU2lkZWJhcigpe1xyXG4gICAgbGV0IHNpZGViYXIgPSBjcmVhdGVTaWRlYmFyKHRhYnMpOyBcclxuICAgIHJldHVybihcclxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbC0yIGQtbm9uZSBkLWxnLWJsb2NrXCI+XHJcbiAgICAgICAgICAge3NpZGViYXJ9XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICApXHJcbn1cclxuXHJcbmNvbnN0IHRhYnMgPSBbXHJcbiAgICB7dGFiOiBcIkJpZWxlZmVsZCBVbml2ZXJzaXR5XCJ9LFxyXG4gICAgeyB0YWI6IFwiSGlzdG9yeVwifSxcclxuICAgIHsgdGFiOiBcIlN0ZWVyaW5nIENvbW1pdHRlZVwifVxyXG4gIF07IiwgImltcG9ydCB7IGNyZWF0ZVNpZGViYXIgfSBmcm9tIFwiLi4vdXRpbHMvY3JlYXRlU2lkZWJhclwiO1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIEp1ZFNpZGViYXIoKXtcclxuICAgIGxldCBzaWRlYmFyID0gY3JlYXRlU2lkZWJhcih0YWJzKTsgXHJcbiAgICByZXR1cm4oXHJcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wtMiAgZC1ub25lIGQtbGctYmxvY2tcIj5cclxuICAgICAgICAgICB7c2lkZWJhcn1cclxuICAgICAgICA8L2Rpdj5cclxuICAgIClcclxufVxyXG5cclxuXHJcbmNvbnN0IHRhYnMgPSBbXHJcbiAgICB7dGFiOiBcIkJlc3QgVGhlcmFwZXV0aWMgUHJvamVjdFwifSxcclxuICAgIHt0YWI6IFwiQmVzdCBJbnRlZ3JhdGVkIEh1bWFuIFByYWN0aWNlXCJ9LFxyXG4gICAge3RhYjogXCJTYWZldHkgJiBTZWN1cml0eVwifSxcclxuICAgIHt0YWI6IFwiQmVzdCBOZXcgQmFzaWMgUGFydFwifSxcclxuICAgIHt0YWI6IFwiQ29uY2x1c2lvblwifVxyXG4gIF07XHJcbiIsICJpbXBvcnQgeyBjcmVhdGVTaWRlYmFyIH0gZnJvbSBcIi4uL3V0aWxzL2NyZWF0ZVNpZGViYXJcIjtcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBNZXRoU2lkZWJhcigpe1xyXG4gICAgbGV0IHNpZGViYXIgPSBjcmVhdGVTaWRlYmFyKHRhYnMpOyBcclxuICAgIHJldHVybihcclxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbC0yIGQtbm9uZSBkLWxnLWJsb2NrXCI+XHJcbiAgICAgICAgICAge3NpZGViYXJ9XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICApXHJcbn1cclxuXHJcblxyXG5jb25zdCB0YWJzID0gW1xyXG4gICAgeyB0YWI6IFwiSW50cm9kdWN0aW9uXCJ9LFxyXG4gICAgeyB0YWI6IFwiUGF0Y2ggQ2xhbXBcIiwgc3VidGFiczogW1wiQmFja2dyb3VuZFwiLCBcIlByaW5jaXBsZXNcIiwgXCJBcHBsaWNhdGlvblwiXX0sXHJcbiAgICB7dGFiOiBcIkNlbGwgQ3VsdHVyZVwiLCBzdWJ0YWJzOiBbXCJIRUsgQ2VsbHNcIiwgXCJDRkJFNDFvLVwiLCBcImhORUNzXCJdfSxcclxuICAgIHt0YWI6IFwiTE5Qc1wifVxyXG4gIF07XHJcbiIsICJpbXBvcnQgeyBjcmVhdGVTaWRlYmFyIH0gZnJvbSBcIi4uL3V0aWxzL2NyZWF0ZVNpZGViYXJcIjtcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBQYXJ0U2lkZWJhcigpe1xyXG4gICAgbGV0IHNpZGViYXIgPSBjcmVhdGVTaWRlYmFyKHRhYnMpOyBcclxuICAgIHJldHVybihcclxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbC0yIGQtbm9uZSBkLWxnLWJsb2NrXCI+XHJcbiAgICAgICAgICAge3NpZGViYXJ9XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICApXHJcbn1cclxuXHJcblxyXG5jb25zdCB0YWJzID0gW1xyXG4gICAgeyB0YWI6IFwiRGVzY3JpcHRpb25cIiwgc3VidGFiczogW1wiSW50cm9kdWN0aW9uXCIsIFwiUHJpbWUgRWRpdG9yICYgcGVnUk5BXCIsIFwiQ29uY2x1c2lvblwiXX0sXHJcbiAgICB7IHRhYjogXCJDaGFyYWN0ZXJpemF0aW9uXCIsIHN1YnRhYnM6IFtcIkRlc2lnbiAmIEZ1bmN0aW9uYWxpdHlcIiwgXCJBZGFwdGlvbnNcIl19LFxyXG4gICAge3RhYjogXCJFeHBlcmltZW50c1wiLCBzdWJ0YWJzOiBbXCJDbG9uaW5nXCIsIFwicGVnUk5BIFNjcmVlbmluZ1wiLCBcIk5pY2thc2UgQXNzYXlcIl19LFxyXG4gICAge3RhYjogXCJQYXJ0cyBDb2xsZWN0aW9uXCIsIHN1YnRhYnM6IFtcIkJhc2ljIFBhcnRzXCJdfSxcclxuICBdO1xyXG4iLCAiXHJcbmltcG9ydCB7IGNyZWF0ZVNpZGViYXIgfSBmcm9tIFwiLi4vdXRpbHMvY3JlYXRlU2lkZWJhclwiO1xyXG5cclxuXHJcblxyXG5leHBvcnQgZnVuY3Rpb24gUmVzdWx0U2lkZWJhcigpe1xyXG4gICAgbGV0IHNpZGViYXIgPSBjcmVhdGVTaWRlYmFyKHRhYnMpOyBcclxuICAgIHJldHVybihcclxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbC0yIGQtbm9uZSBkLWxnLWJsb2NrXCI+XHJcbiAgICAgICAgICAge3NpZGViYXJ9XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICApXHJcbn1cclxuXHJcbmNvbnN0IHRhYnMgPSBbXHJcbiAgICB7IHRhYjogXCJBYnN0cmFjdFwifSxcclxuICAgIHt0YWI6IFwiRXhwZXJpbWVudGFsIERlc2lnblwiLCBzdWJ0YWJzOiBbXCJQcm9vZiBvZiBDb25jZXB0XCIsIFwiUHJpbWVHdWlkZVwiLCBcIkxOUCBTeW50aGVzaXNcIiwgXCJQcmltYXJ5IENlbGwgQ3VsdHVyZVwiLCBcIkRvd25zdHJlYW0gQXBwbGljYXRpb25zXCJdfSxcclxuICAgIHt0YWI6IFwiU3VwcGxlbWVudGFyeSBNYXRlcmlhbFwifVxyXG4gIF07IiwgImNvbnN0IF9fdml0ZV9pbmplY3RlZF9vcmlnaW5hbF9kaXJuYW1lID0gXCJDOlxcXFxTdHVkaXVtXFxcXGlHRU1cXFxcQ29kZVxcXFxiaWVsZWZlbGQtY2ViaXRlY1xcXFxzcmNcXFxcdXRpbHNcIjtjb25zdCBfX3ZpdGVfaW5qZWN0ZWRfb3JpZ2luYWxfZmlsZW5hbWUgPSBcIkM6XFxcXFN0dWRpdW1cXFxcaUdFTVxcXFxDb2RlXFxcXGJpZWxlZmVsZC1jZWJpdGVjXFxcXHNyY1xcXFx1dGlsc1xcXFxzdHJpbmdUb1NsdWcudHNcIjtjb25zdCBfX3ZpdGVfaW5qZWN0ZWRfb3JpZ2luYWxfaW1wb3J0X21ldGFfdXJsID0gXCJmaWxlOi8vL0M6L1N0dWRpdW0vaUdFTS9Db2RlL2JpZWxlZmVsZC1jZWJpdGVjL3NyYy91dGlscy9zdHJpbmdUb1NsdWcudHNcIjtleHBvcnQgZnVuY3Rpb24gc3RyaW5nVG9TbHVnKHN0cmluZzogc3RyaW5nKTogc3RyaW5nIHtcclxuICBsZXQgc2x1ZyA9IFN0cmluZyhzdHJpbmcpLnRvTG93ZXJDYXNlKCk7XHJcbiAgc2x1ZyA9IHNsdWcucmVwbGFjZSgvW15hLXowLTktXS9nLCBcIi1cIik7XHJcbiAgc2x1ZyA9IHNsdWcucmVwbGFjZSgvLSsvZywgXCItXCIpO1xyXG4gIC8vIHJlbW92ZSBkYXNoZXMgYXQgc3RhcnQgYW5kIGVuZFxyXG4gIGNvbnN0IHN0YXJ0ID0gc2x1Zy5zZWFyY2goL1teLV0vKTsgLy8gZmluZCBpbmRleCBvZiBmaXJzdCBub24tZGFzaFxyXG4gIGNvbnN0IGVuZCA9IHNsdWcuc2VhcmNoKC8tKyQvKTsgLy8gZmluZCBpbmRleCBvZiBmaXJzdCBlbmQgZGFzaFxyXG4gIHJldHVybiBzbHVnLnN1YnN0cmluZyhzdGFydCwgZW5kID09PSAtMSA/IHVuZGVmaW5lZCA6IGVuZCk7XHJcbn1cclxuIiwgImNvbnN0IF9fdml0ZV9pbmplY3RlZF9vcmlnaW5hbF9kaXJuYW1lID0gXCJDOlxcXFxTdHVkaXVtXFxcXGlHRU1cXFxcQ29kZVxcXFxiaWVsZWZlbGQtY2ViaXRlY1xcXFxzcmNcXFxcdXRpbHNcIjtjb25zdCBfX3ZpdGVfaW5qZWN0ZWRfb3JpZ2luYWxfZmlsZW5hbWUgPSBcIkM6XFxcXFN0dWRpdW1cXFxcaUdFTVxcXFxDb2RlXFxcXGJpZWxlZmVsZC1jZWJpdGVjXFxcXHNyY1xcXFx1dGlsc1xcXFx1c2VTY3JpcHQudHNcIjtjb25zdCBfX3ZpdGVfaW5qZWN0ZWRfb3JpZ2luYWxfaW1wb3J0X21ldGFfdXJsID0gXCJmaWxlOi8vL0M6L1N0dWRpdW0vaUdFTS9Db2RlL2JpZWxlZmVsZC1jZWJpdGVjL3NyYy91dGlscy91c2VTY3JpcHQudHNcIjtpbXBvcnQgeyB1c2VFZmZlY3QgfSBmcm9tICdyZWFjdCc7XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gdXNlU2NyaXB0KHt1cmx9Ont1cmw6IHN0cmluZ30pIHtcclxuICB1c2VFZmZlY3QoKCkgPT4ge1xyXG4gICAgY29uc3Qgc2NyaXB0ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc2NyaXB0Jyk7XHJcblxyXG4gICAgc2NyaXB0LnNyYyA9IHVybDtcclxuICAgIHNjcmlwdC5hc3luYyA9IHRydWU7XHJcblxyXG4gICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChzY3JpcHQpO1xyXG5cclxuICAgIHJldHVybiAoKSA9PiB7XHJcbiAgICAgIGRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQoc2NyaXB0KTtcclxuICAgIH1cclxuICB9LCBbdXJsXSk7XHJcbn07XHJcblxyXG5leHBvcnQgZGVmYXVsdCB1c2VTY3JpcHQ7XHJcbiJdLAogICJtYXBwaW5ncyI6ICI7QUFBOFMsU0FBUyxjQUFjLGVBQWU7QUFDcFYsT0FBTyxXQUFXOzs7QUNEbEIsU0FBUyxXQUFXLFFBQVEsZ0JBQWdCO0FBYXBDLG1CQUtZLEtBSlIsWUFESjs7O0FDYlIsU0FBUyxhQUFBQSxZQUFXLFVBQUFDLFNBQVEsWUFBQUMsaUJBQWdCO0FBOEVwQyxxQkFBQUMsV0FNWSxPQUFBQyxNQWdCQSxRQUFBQyxhQXRCWjs7O0FDOUVSLFNBQVMsYUFBQUMsWUFBVyxVQUFBQyxTQUFRLFlBQUFDLGlCQUFnQjtBQThEcEMscUJBQUFDLFdBVVksT0FBQUMsTUFZUixRQUFBQyxhQXRCSjs7O0FDOUQ0VSxTQUFTLGFBQUFDLFlBQVcsWUFBQUMsaUJBQWdCO0FBQ3hYLFNBQVMsYUFBYSxtQkFBbUI7OztBQ1l4QixnQkFBQUMsTUE4RUwsUUFBQUMsYUE5RUs7QUEyRlYsU0FBUyxHQUFHLEVBQUMsTUFBTSxHQUFFLEdBQThCO0FBQ3RELE1BQUk7QUFDSixNQUFJLElBQUk7QUFDSixhQUFTO0FBQUEsRUFDYixPQUNJO0FBQ0EsYUFBUyxhQUFhLElBQUk7QUFBQSxFQUM5QjtBQUNBLFNBQ0ksZ0JBQUFDLEtBQUMsU0FDRywwQkFBQUMsTUFBQyxRQUFHLElBQUksUUFBUTtBQUFBO0FBQUEsSUFBRTtBQUFBLElBQUs7QUFBQSxLQUFDLEdBQzVCO0FBR1I7OztBQ3JIWSxnQkFBQUMsWUFBQTs7O0FDWVIscUJBQUFDLFdBS1UsT0FBQUMsTUFGRixRQUFBQyxhQUhSOzs7QUNiSixTQUFTLFlBQVk7OztBQzJCckIsU0FBUyxXQUFXLElBQVksWUFBcUI7QUFDbkQsTUFBSSxPQUFPLFdBQVcsWUFBYTtBQUVuQyxNQUFJLGVBQWUsU0FBUztBQUM1QixNQUFJLFNBQVMsWUFBWTtBQUV6QixVQUFRLElBQUksc0JBQXNCLEVBQUUsRUFBRTtBQUd0QyxRQUFNLFVBQVUsU0FBUyx1QkFBdUIsWUFBWTtBQUM1RCxRQUFNLGNBQWMsU0FBUyx1QkFBdUIsaUJBQWlCO0FBQ3JFLFFBQU0sWUFBWSxTQUFTLHVCQUF1QixVQUFVO0FBRTVELFdBQVMsSUFBSSxHQUFHLElBQUksUUFBUSxRQUFRLEtBQUs7QUFDdkMsSUFBQyxRQUFRLENBQUMsRUFBa0IsTUFBTSxVQUFVO0FBQzVDLFlBQVEsSUFBSSxrQkFBa0IsUUFBUSxDQUFDLEVBQUUsRUFBRSxFQUFFO0FBQUEsRUFDL0M7QUFDQSxXQUFTLElBQUksR0FBRyxJQUFJLFlBQVksUUFBUSxLQUFLO0FBQzNDLElBQUMsWUFBWSxDQUFDLEVBQWtCLE1BQU0sVUFBVTtBQUNoRCxZQUFRLElBQUksdUJBQXVCLFlBQVksQ0FBQyxFQUFFLEVBQUUsRUFBRTtBQUFBLEVBQ3hEO0FBQ0EsV0FBUyxJQUFJLEdBQUcsSUFBSSxVQUFVLFFBQVEsS0FBSztBQUN6QyxJQUFDLFVBQVUsQ0FBQyxFQUFtQixVQUFVLE9BQU8saUJBQWlCO0FBQ2pFLFlBQVEsSUFBSSx5Q0FBeUMsVUFBVSxDQUFDLEVBQUUsRUFBRSxFQUFFO0FBQUEsRUFDeEU7QUFHQSxXQUFTLGVBQWUsRUFBRSxFQUFHLE1BQU0sVUFBVTtBQUM3QyxVQUFRLElBQUksZ0JBQWdCLEVBQUUsRUFBRTtBQUNoQyxXQUFTLGVBQWUsTUFBTSxFQUFHLFVBQVUsSUFBSSxpQkFBaUI7QUFDaEUsVUFBUSxJQUFJLHlCQUF5QixNQUFNLEVBQUU7QUFDN0MsV0FBUyxlQUFlLFlBQVksRUFBRyxNQUFNLFVBQVU7QUFDdkQsVUFBUSxJQUFJLHdCQUF3QixZQUFZLEVBQUU7QUFHbEQsTUFBSSxZQUFZO0FBQ2QsVUFBTSxrQkFBa0IsU0FBUyxlQUFlLFVBQVU7QUFDMUQsUUFBSSxpQkFBaUI7QUFDakIsWUFBTSxhQUFhLGdCQUFnQixzQkFBc0IsRUFBRSxNQUFNLE9BQU87QUFDeEUsWUFBTSxTQUFTLE9BQU8sY0FBYyxJQUFJLGdCQUFnQixlQUFlO0FBQ3ZFLFlBQU0saUJBQWlCLGFBQWE7QUFFcEMsYUFBTyxTQUFTO0FBQUEsUUFDWixLQUFLO0FBQUEsUUFDTCxVQUFVO0FBQUEsTUFDZCxDQUFDO0FBQUEsSUFDTDtBQUFBLEVBQ0o7QUFRQTtBQUdBLElBQUksT0FBTyxXQUFXLGFBQWE7QUFDakMsU0FBTyxpQkFBaUIsWUFBWSxDQUFDLFVBQVU7QUFDN0MsWUFBUSxJQUFJLDBCQUEwQjtBQUN0QyxRQUFJLE1BQU0sT0FBTztBQUNmLFlBQU0sTUFBTSxNQUFNLE1BQU07QUFDeEIsY0FBUSxJQUFJLGtCQUFrQixHQUFHLEVBQUU7QUFDbkMsaUJBQVcsR0FBRztBQUdkLGNBQVEsSUFBSSxvQ0FBb0M7QUFDaEQsWUFBTSxvQkFBb0IsT0FBTyxjQUFjO0FBQy9DLGFBQU8sU0FBUyxFQUFFLEtBQUssbUJBQW1CLFVBQVUsU0FBUyxDQUFDO0FBQUEsSUFDaEUsT0FBTztBQUNMLGNBQVEsSUFBSSxtQ0FBbUM7QUFBQSxJQUNqRDtBQUFBLEVBQ0YsQ0FBQztBQUNIOzs7QUNyR29WLFNBQVMsZUFBQUMsb0JBQW1CO0FBRXpXLElBQU0sZ0JBQWdCLE1BQU07QUFDL0IsUUFBTSxXQUFXQyxhQUFZO0FBRTdCLFFBQU0sc0JBQXNCLENBQUMsT0FBZSxTQUFpQjtBQUd6RCxhQUFTLEdBQUcsSUFBSSxRQUFRLEtBQUssRUFBRTtBQUFBLEVBRW5DO0FBQ0EsUUFBTSw4QkFBOEIsQ0FBQyxZQUFvQixTQUFpQjtBQUV0RSxhQUFTLEdBQUcsSUFBSSxlQUFlLFVBQVUsRUFBRTtBQUFBLEVBQy9DO0FBQ0EsUUFBTSxnQ0FBZ0MsQ0FBQyxFQUFFLE1BQU0sT0FBTyxXQUFXLE1BQTREO0FBR3pILFFBQUksTUFBTSxHQUFHLElBQUksUUFBUSxLQUFLO0FBQzlCLFFBQUksWUFBWTtBQUNaLGFBQU8sZUFBZSxVQUFVO0FBQUEsSUFDcEM7QUFDQSxhQUFTLEdBQUc7QUFBQSxFQUNoQjtBQUNBLFFBQU0seUJBQXlCLENBQUMsRUFBRSxNQUFNLE9BQU8sVUFBVSxXQUFXLE1BQStFO0FBRy9JLFFBQUksTUFBTSxHQUFHLElBQUksUUFBUSxLQUFLO0FBQzlCLFFBQUksVUFBVTtBQUNWLGFBQU8sV0FBVyxRQUFRO0FBQUEsSUFDOUI7QUFDQSxRQUFJLFlBQVk7QUFDWixhQUFPLGVBQWUsVUFBVTtBQUFBLElBQ3BDO0FBQ0EsYUFBUyxHQUFHO0FBQUEsRUFDaEI7QUFJQSxRQUFNLDJCQUEyQixDQUFDLEVBQUUsTUFBTSxPQUFPLFdBQVcsTUFBMkQ7QUFDbkgsUUFBSSxNQUFNLEdBQUcsSUFBSSxRQUFRLEtBQUs7QUFDOUIsUUFBSSxZQUFZO0FBQ1osYUFBTyxhQUFhLFVBQVU7QUFBQSxJQUNsQztBQUNBLGFBQVMsR0FBRztBQUFBLEVBQ2hCO0FBRUEsUUFBTSxvQkFBb0IsQ0FBQyxZQUFvQixTQUFpQjtBQUU1RCxhQUFTLEdBQUcsSUFBSSxhQUFhLFVBQVUsRUFBRTtBQUFBLEVBQzdDO0FBSUEsUUFBTSxZQUFZLENBQUM7QUFBQSxJQUNmO0FBQUEsSUFDQTtBQUFBLElBQ0E7QUFBQSxJQUNBO0FBQUEsSUFDQTtBQUFBLElBQ0E7QUFBQSxFQUNKLE1BT007QUFFTixRQUFJLE1BQU0sSUFBSSxLQUFLLFdBQVcsR0FBRyxJQUFJLEtBQUssTUFBTSxDQUFDLElBQUksSUFBSTtBQUlyRCxRQUFJLGNBQWM7QUFDbEIsWUFBUSxJQUFJLGlCQUFpQixJQUFJO0FBRWpDLFFBQUksT0FBTztBQUNQLGNBQVEsSUFBSSxrQkFBa0IsS0FBSztBQUNuQyxhQUFPLFFBQVEsS0FBSztBQUNwQixvQkFBYztBQUNkLFVBQUksVUFBVTtBQUNWLGdCQUFRLElBQUkscUJBQXFCLFFBQVE7QUFDekMsZUFBTyxXQUFXLFFBQVE7QUFBQSxNQUM5QjtBQUFBLElBQ0o7QUFHQSxRQUFJLFlBQVk7QUFDWixjQUFRLElBQUksdUJBQXVCLFVBQVU7QUFDN0MsVUFBSSxDQUFDLE9BQU87QUFFUixlQUFPLElBQUksU0FBUyxHQUFHLElBQUksZUFBZSxVQUFVLEtBQUssZUFBZSxVQUFVO0FBQ2xGLHNCQUFjO0FBQUEsTUFDbEI7QUFDQSxVQUFJLFlBQVk7QUFDWixnQkFBUSxJQUFJLHVCQUF1QixVQUFVO0FBQzdDLGVBQU8sV0FBVyxVQUFVO0FBQUEsTUFDaEM7QUFBQSxJQUNKO0FBR0EsUUFBSSxZQUFZO0FBQ1osY0FBUSxJQUFJLHVCQUF1QixVQUFVO0FBQzdDLG9CQUFjO0FBRWQsWUFBTSxZQUFZLGNBQWMsTUFBTTtBQUN0QyxhQUFPLEdBQUcsU0FBUyxZQUFZLFVBQVU7QUFBQSxJQUM3QztBQUNBLFlBQVEsSUFBSSxjQUFjLEdBQUc7QUFHN0IsYUFBUyxHQUFHO0FBQUEsRUFDaEI7QUFHQSxTQUFPLEVBQUUsV0FBWSxtQkFBbUIscUJBQXFCLDBCQUEwQix3QkFBd0IsK0JBQStCLDRCQUE0QjtBQUM5Szs7O0FGaEdNLFNBdUhGLFlBQUFDLFdBdEhJLE9BQUFDLE1BREYsUUFBQUMsYUFBQTs7O0FHYk0sU0FDd0IsT0FBQUMsTUFEeEIsUUFBQUMsYUFBQTs7O0FDS1IscUJBQUFDLFdBQ0UsT0FBQUMsTUFERixRQUFBQyxhQUFBOzs7QUNiSixTQUFTLGFBQUFDLGtCQUFpQjs7O0FDS2QsU0FDSSxPQUFBQyxPQURKLFFBQUFDLGFBQUE7OztBRHNCUixxQkFBQUMsV0FHSyxPQUFBQyxPQURELFFBQUFDLGNBRko7OztBRXJCQSxTQTRCQSxZQUFBQyxXQXpCUSxPQUFBQyxPQUhSLFFBQUFDLGNBQUE7OztBQ2tDUSxnQkFBQUMsT0FXZ0IsUUFBQUMsY0FYaEI7OztBQ3ZDWixPQUFPLFlBQVk7QUFnQkoscUJBQUFDLFdBQUEsT0FBQUMsYUFBQTs7O0FDakIwVCxJQUFNLE9BQU8sQ0FBQyxPQUEwQjtBQUM3VyxRQUFNLGNBQWMsR0FBRyxzQkFBc0I7QUFDN0MsUUFBTSxhQUFhLFlBQVksTUFBTSxPQUFPO0FBQzVDLFFBQU0saUJBQWlCLE9BQU87QUFHOUIsUUFBTSxpQkFBaUIsY0FBYyxpQkFBaUIsSUFBSSxHQUFHLGVBQWU7QUFFNUUsU0FBTyxTQUFTO0FBQUEsSUFDWixLQUFLO0FBQUEsSUFDTCxVQUFVO0FBQUEsRUFDZCxDQUFDO0FBQ0w7OztBQzJCWSxnQkFBQUMsYUFBQTtBQU1MLElBQU0sZ0JBQStDLENBQUMsRUFBQyxNQUFNLE1BQU07QUFDdEUsTUFBSSxXQUFXLFVBQVU7QUFDekIsUUFBTSxjQUFjLE1BQU07QUFDdEIsVUFBTSxnQkFBZ0IsU0FBUyxlQUFlLFFBQVE7QUFDdEQsUUFBSSxlQUFlO0FBQ2YsV0FBSyxhQUFhO0FBQUEsSUFDdEI7QUFBQSxFQUNKO0FBRUEsU0FDRyxnQkFBQUMsTUFBQyxTQUFJLDBCQUFBQSxNQUFDLE9BQUUsU0FBUyxhQUNYLGlCQUNMLEdBQ0E7QUFFUjtBQWtDUSxJQUFNLHNCQUFpRCxDQUFDLEVBQUUsVUFBVSxTQUFTLE1BQU07QUFDdkYsUUFBTSxjQUFjLE1BQU07QUFDdEIsVUFBTSxnQkFBZ0IsU0FBUyxlQUFlLFFBQVE7QUFDdEQsUUFBSSxlQUFlO0FBQ2YsV0FBSyxhQUFhO0FBQUEsSUFDdEI7QUFBQSxFQUNKO0FBRUEsU0FDSSxnQkFBQUEsTUFBQyxPQUFFLFNBQVMsYUFDUCxVQUNMO0FBRVI7OztBQ25HUSxxQkFBQUMsWUFFUSxPQUFBQyxPQWVJLFFBQUFDLGNBakJaOzs7QUN3Q0EsZ0JBQUFDLGFBQUE7OztBQzdDRSxTQWdERixZQUFBQyxZQWhERSxPQUFBQyxPQWlERixRQUFBQyxjQWpERTs7O0FDQ0ksU0FBNkIsT0FBQUMsT0FBN0IsUUFBQUMsY0FBQTs7O0FDQ1IscUJBQUFDLFlBQ0EsT0FBQUMsT0FEQSxRQUFBQyxjQUFBOzs7QUNRTSxnQkFBQUMsT0FHSixRQUFBQyxjQUhJOzs7QUNGQSxTQUF3QyxPQUFBQyxPQUF4QyxRQUFBQyxjQUFBOzs7QUNITCxxQkFBQUMsWUFJYSxPQUFBQyxPQURKLFFBQUFDLGNBSFQ7OztBQ0NBLHFCQUFBQyxZQUVLLE9BQUFDLE9BRUEsUUFBQUMsY0FKTDs7O0FDVFAsU0FBUyxZQUFZLFNBQVMsZ0JBQWdCO0FBQzlDLFNBQVMsS0FBSyxXQUFXO0FBQ3pCLE9BQU9DLFlBQVc7OztBQ0NaLHFCQUFBQyxZQUNBLE9BQUFDLE9BSUksUUFBQUMsY0FMSjs7O0FDSE4sU0FBUyxhQUFBQyxZQUFXLFlBQUFDLGlCQUFnQjtBQUNwQyxTQUFTLGVBQUFDLG9CQUFtQjtBQTZCcEIscUJBQUFDLFlBSWdCLE9BQUFDLE9BREosUUFBQUMsY0FIWjs7O0FDckJJLFNBQUssT0FBQUMsT0FBTCxRQUFBQyxjQUFBOzs7QUNSWixPQUFPLFlBQVk7QUFDbkIsT0FBTyxXQUFXO0FBbUdaLGdCQUFBQyxhQUFBO0FBM0ZOLElBQU0sY0FBYTtBQUFBLEVBQ2pCLEVBQUMsT0FBTyxPQUFPLE9BQU8sV0FBVTtBQUFBLEVBQ2hDLEVBQUMsT0FBTyxTQUFTLE9BQU8sUUFBTztBQUFBLEVBQy9CLEVBQUMsT0FBTyxRQUFRLE9BQU8sUUFBTztBQUFBLEVBQzlCLEVBQUMsT0FBTyxZQUFZLE9BQU8sYUFBWTtBQUFBLEVBQ3ZDLEVBQUMsT0FBTyxZQUFZLE9BQU8sa0JBQWlCO0FBQUEsRUFDNUMsRUFBQyxPQUFPLFFBQVEsT0FBTyxPQUFNO0FBQUEsRUFDN0IsRUFBQyxPQUFPLE9BQU8sT0FBTyxNQUFLO0FBRTdCO0FBR08sU0FBUyxxQkFBcUIsS0FBbUI7QUFDdEQsUUFBTSxPQUFPLFNBQVMsZUFBZSxNQUFNO0FBQzNDLE1BQUksTUFBTTtBQUNSLFNBQUssWUFBWTtBQUFBLEVBQ25CO0FBRUEsUUFBTSxxQkFBcUIsU0FBUyx1QkFBdUIsWUFBWTtBQUd2RSxXQUFTLElBQUksR0FBRyxJQUFJLG1CQUFtQixRQUFRLEtBQUs7QUFDbEQsVUFBTSxLQUFLLG1CQUFtQixDQUFDO0FBQy9CLGtCQUFjLElBQUksTUFBTTtBQUFBLEVBQzFCO0FBRUEsVUFBUSxJQUFJLE9BQU87QUFHbkIsV0FBUyxJQUFJLEdBQUcsSUFBSSxtQkFBbUIsUUFBUSxLQUFLO0FBQ2xELFVBQU0sS0FBSyxtQkFBbUIsQ0FBQztBQUMvQixRQUFJLGFBQWE7QUFFakIsZUFBVyxTQUFTLEtBQUs7QUFDdkIsY0FBUSxJQUFJLFVBQVUsTUFBTSxLQUFLLEVBQUU7QUFDbkMsVUFBSSxDQUFDLEdBQUcsVUFBVSxTQUFTLE1BQU0sS0FBSyxHQUFHO0FBQ3ZDLHFCQUFhO0FBQ2I7QUFBQSxNQUNGO0FBQUEsSUFDRjtBQUVBLFlBQVEsSUFBSSxlQUFlLFVBQVUsRUFBRTtBQUN2QyxRQUFJLFlBQVk7QUFDZCxpQkFBVyxJQUFJLE1BQU07QUFBQSxJQUN2QjtBQUFBLEVBQ0Y7QUFHQSxRQUFNLGdCQUFnQixTQUFTLHVCQUF1QixNQUFNO0FBQzVELE1BQUksY0FBYyxTQUFTLEtBQUssTUFBTTtBQUNwQyxZQUFRLElBQUksY0FBYyxNQUFNO0FBQ2hDLFNBQUssWUFBWTtBQUFBLEVBQ25CO0FBQ0Y7QUFhQSxTQUFTLFdBQVcsU0FBa0IsTUFBYztBQUNsRCxNQUFJLEdBQUcsTUFBTTtBQUNiLFNBQU8sUUFBUSxVQUFVLE1BQU0sR0FBRztBQUNsQyxTQUFPLEtBQUssTUFBTSxHQUFHO0FBQ3JCLE9BQUssSUFBSSxHQUFHLElBQUksS0FBSyxRQUFRLEtBQUs7QUFDaEMsUUFBSSxLQUFLLFFBQVEsS0FBSyxDQUFDLENBQUMsS0FBSyxJQUFJO0FBQUMsY0FBUSxhQUFhLE1BQU0sS0FBSyxDQUFDO0FBQUEsSUFBRTtBQUFBLEVBQ3ZFO0FBQ0Y7QUFFQSxTQUFTLGNBQWMsU0FBa0IsTUFBYztBQUNyRCxNQUFJLEdBQUcsTUFBTTtBQUNiLFNBQU8sUUFBUSxVQUFVLE1BQU0sR0FBRztBQUNsQyxTQUFPLEtBQUssTUFBTSxHQUFHO0FBQ3JCLE9BQUssSUFBSSxHQUFHLElBQUksS0FBSyxRQUFRLEtBQUs7QUFDaEMsV0FBTyxLQUFLLFFBQVEsS0FBSyxDQUFDLENBQUMsSUFBSSxJQUFJO0FBQ2pDLFdBQUssT0FBTyxLQUFLLFFBQVEsS0FBSyxDQUFDLENBQUMsR0FBRyxDQUFDO0FBQUEsSUFDdEM7QUFBQSxFQUNGO0FBQ0EsVUFBUSxZQUFZLEtBQUssS0FBSyxHQUFHO0FBQ25DO0FBV0EsSUFBTSxhQUFOLGNBQXlCLE1BQU0sVUFBVTtBQUFBLEVBQ3ZDLFFBQVE7QUFBQSxJQUNOLGdCQUFnQjtBQUFBLEVBQ2xCO0FBQUEsRUFDQSxlQUFlLENBQUMsbUJBQXdCO0FBRXZDLFNBQUs7QUFBQSxNQUFTLEVBQUUsZUFBZTtBQUFBLE1BQUcsTUFDbEMsUUFBUSxJQUFJLG9CQUFvQixLQUFLLE1BQU0sY0FBYztBQUFBLElBRXhEO0FBQ0MseUJBQXFCLGNBQWM7QUFBQSxFQUN0QztBQUFBLEVBQ0EsU0FBUztBQUNQLFVBQU0sRUFBRSxlQUFlLElBQUksS0FBSztBQUVoQyxXQUNFLGdCQUFBQztBQUFBLE1BQUM7QUFBQTtBQUFBLFFBQ0MsT0FBTztBQUFBLFFBQ1AsVUFBVSxLQUFLO0FBQUEsUUFDZixTQUFPO0FBQUEsUUFDUCxTQUFTO0FBQUEsUUFDVCxjQUFjLENBQUMsWUFBWSxDQUFDLENBQUM7QUFBQSxRQUM3QixXQUFVO0FBQUEsUUFDVixpQkFBZ0I7QUFBQTtBQUFBLElBQ2xCO0FBQUEsRUFFSjtBQUNGOzs7QUN0SGdCLFNBRUksT0FBQUMsT0FGSixRQUFBQyxjQUFBOzs7QUNYSixnQkFBQUMsYUFBQTs7O0FDWWEscUJBQUFDLFlBQUEsT0FBQUMsT0FNWCxRQUFBQyxjQU5XOzs7QUNUckIsU0FFRSxPQUFBQyxPQUZGLFFBQUFDLGNBQUE7OztBQ0ZZLGdCQUFBQyxPQUVBLFFBQUFDLGNBRkE7OztBQ0NaLHFCQUFBQyxZQUdZLE9BQUFDLE9BSUEsUUFBQUMsY0FQWjs7O0FWY1EsU0FDRSxPQUFBQyxPQURGLFFBQUFDLGNBQUE7OztBV2RBLGdCQUFBQyxhQUFBOzs7QUNLUixxQkFBQUMsWUFFSSxPQUFBQyxPQUNBLFFBQUFDLGNBSEo7OztBQ1BJLFNBQ0UsT0FBQUMsT0FERixRQUFBQyxjQUFBO0FBYUQsU0FBUyxNQUFNLEVBQUMsR0FBRyxFQUFDLEdBQWtDO0FBQzNELFNBQ0csZ0JBQUFDLE9BQUMsU0FBSSxXQUFVLFNBQ2Q7QUFBQSxvQkFBQUMsTUFBQyxTQUFJLFdBQVUsbUJBQ2IsMEJBQUFBLE1BQUMsU0FBSSxXQUFVLE9BQ2QsYUFDRCxHQUNGO0FBQUEsSUFDQSxnQkFBQUEsTUFBQyxTQUFJLFdBQVUsbUJBQ2IsMEJBQUFBLE1BQUMsU0FBSSxXQUFVLE9BQ2QsYUFDRCxHQUNGO0FBQUEsS0FDRDtBQUVMOzs7QUMzQmtCLFNBdUVxQixZQUFBQyxZQXZFckIsT0FBQUMsT0FpR0EsUUFBQUMsY0FqR0E7OztBQ0xsQixTQUFTLFdBQVc7QUFFcEIsU0FBUyxXQUFXO0FBQ3BCLFNBQVMsU0FBUyxTQUFTLFNBQVMsUUFBTyxZQUFZLFlBQVksZUFBZSxhQUFhLE9BQU8seUJBQXlCO0FBeUV6SCxnQkFBQUMsYUFBQTtBQS9DTixRQUFRO0FBQUEsRUFBUztBQUFBLEVBQVk7QUFBQSxFQUFTO0FBQUEsRUFBUTtBQUFBLEVBQzVDO0FBQUEsRUFDQTtBQUFBLEVBQ0E7QUFBQSxFQUNBO0FBQUs7OztBQ25CZ0IscUJBQUFDLFlBQTBELE9BQUFDLE9BQTFELFFBQUFDLGNBQUE7QUFKaEIsSUFBTSxjQUEwQztBQUFBLEVBQ25EO0FBQUEsSUFDSSxNQUFNO0FBQUEsSUFDTixTQUFTO0FBQUEsSUFDVCxjQUFjLENBQUMsZ0JBQUFBLE9BQUFGLFlBQUEsRUFBRTtBQUFBO0FBQUEsTUFBd0QsZ0JBQUFDLE1BQUMsaUJBQWMsT0FBTSxNQUFJO0FBQUEsT0FBRSxHQUFJLGdCQUFBQyxPQUFBRixZQUFBLEVBQUU7QUFBQTtBQUFBLE1BQXVHLGdCQUFBQyxNQUFDLGlCQUFjLE9BQU0sTUFBSTtBQUFBLE9BQUUsR0FBSSxnQkFBQUMsT0FBQUYsWUFBQSxFQUFFO0FBQUE7QUFBQSxNQUF1RixnQkFBQUMsTUFBQyxpQkFBYyxPQUFNLE1BQUk7QUFBQSxPQUFFLEdBQUksZ0JBQUFDLE9BQUFGLFlBQUEsRUFBRTtBQUFBO0FBQUEsTUFBNEQsZ0JBQUFDLE1BQUMsaUJBQWMsT0FBTSxNQUFJO0FBQUEsTUFBRTtBQUFBLE1BQXdDLGdCQUFBQSxNQUFDLGlCQUFjLE9BQU0sTUFBSTtBQUFBLE1BQUU7QUFBQSxNQUF5QixnQkFBQUEsTUFBQyxpQkFBYyxPQUFNLE1BQUk7QUFBQSxPQUFFLEdBQUksZ0JBQUFDLE9BQUFGLFlBQUEsRUFBRTtBQUFBO0FBQUEsTUFBd0YsZ0JBQUFDLE1BQUMsaUJBQWMsT0FBTSxNQUFJO0FBQUEsT0FBRSxDQUFHO0FBQUEsRUFDeHJCO0FBQUEsRUFDQTtBQUFBLElBQ0ksTUFBTTtBQUFBLElBQ04sU0FBUztBQUFBLElBQ1QsY0FBYyxDQUFDLGdCQUFBQSxNQUFBRCxZQUFBLEVBQUUsc0ZBQXdFLEdBQUksZ0JBQUFFLE9BQUFGLFlBQUEsRUFBRTtBQUFBO0FBQUEsTUFBK0UsZ0JBQUFDLE1BQUMsaUJBQWMsT0FBTSxNQUFJO0FBQUEsT0FBRSxHQUFJLGdCQUFBQyxPQUFBRixZQUFBLEVBQUU7QUFBQTtBQUFBLE1BQTRHLGdCQUFBQyxNQUFDLGlCQUFjLE9BQU0sTUFBSTtBQUFBLE9BQUUsR0FBSSxnQkFBQUMsT0FBQUYsWUFBQSxFQUFFO0FBQUE7QUFBQSxNQUFnTCxnQkFBQUMsTUFBQyxpQkFBYyxPQUFNLE1BQUk7QUFBQSxPQUFFLEdBQUksZ0JBQUFDLE9BQUFGLFlBQUEsRUFBRTtBQUFBO0FBQUEsTUFBZ0ssZ0JBQUFDLE1BQUMsaUJBQWMsT0FBTSxNQUFJO0FBQUEsT0FBRSxDQUFHO0FBQUEsRUFDL3VCO0FBQUEsRUFDQTtBQUFBLElBQ0ksTUFBTTtBQUFBLElBQ04sU0FBUztBQUFBLElBQ1QsY0FBYyxDQUFDLGdCQUFBQyxPQUFBRixZQUFBLEVBQUU7QUFBQTtBQUFBLE1BQTJFLGdCQUFBQyxNQUFDLGlCQUFjLE9BQU0sTUFBSTtBQUFBLE9BQUUsR0FBSSxnQkFBQUMsT0FBQUYsWUFBQSxFQUFFO0FBQUE7QUFBQSxNQUF5SyxnQkFBQUMsTUFBQyxpQkFBYyxPQUFNLE1BQUk7QUFBQSxPQUFFLEdBQUksZ0JBQUFDLE9BQUFGLFlBQUEsRUFBRTtBQUFBO0FBQUEsTUFBMEUsZ0JBQUFDLE1BQUMsaUJBQWMsT0FBTSxNQUFJO0FBQUEsT0FBRSxHQUFJLGdCQUFBQyxPQUFBRixZQUFBLEVBQUU7QUFBQTtBQUFBLE1BQThJLGdCQUFBQyxNQUFDLGlCQUFjLE9BQU0sTUFBSTtBQUFBLE9BQUUsR0FBSSxnQkFBQUMsT0FBQUYsWUFBQSxFQUFFO0FBQUE7QUFBQSxNQUF1RixnQkFBQUMsTUFBQyxpQkFBYyxPQUFNLE1BQUk7QUFBQSxPQUFFLENBQUc7QUFBQSxFQUMxdEI7QUFBQSxFQUNBO0FBQUEsSUFDSSxNQUFNO0FBQUEsSUFDTixTQUFTO0FBQUEsSUFDVCxjQUFjLENBQUMsZ0JBQUFDLE9BQUFGLFlBQUEsRUFBRTtBQUFBO0FBQUEsTUFBdUIsZ0JBQUFDLE1BQUMsaUJBQWMsT0FBTSxNQUFJO0FBQUEsT0FBRSxHQUFJLGdCQUFBQyxPQUFBRixZQUFBLEVBQUU7QUFBQTtBQUFBLE1BQThHLGdCQUFBQyxNQUFDLGlCQUFjLE9BQU0sTUFBSTtBQUFBLE9BQUUsR0FBSSxnQkFBQUMsT0FBQUYsWUFBQSxFQUFFO0FBQUE7QUFBQSxNQUF5RixnQkFBQUMsTUFBQyxpQkFBYyxPQUFNLE1BQUk7QUFBQSxNQUFFO0FBQUEsTUFBcUMsZ0JBQUFBLE1BQUMsaUJBQWMsT0FBTSxNQUFJO0FBQUEsT0FBRSxHQUFJLGdCQUFBQyxPQUFBRixZQUFBLEVBQUU7QUFBQTtBQUFBLE1BQXdFLGdCQUFBQyxNQUFDLGlCQUFjLE9BQU0sTUFBSTtBQUFBLE1BQUUsZ0JBQUFBLE1BQUMsaUJBQWMsT0FBTSxNQUFJO0FBQUEsT0FBRSxHQUFJLGdCQUFBQyxPQUFBRixZQUFBLEVBQUU7QUFBQTtBQUFBLE1BQUMsZ0JBQUFDLE1BQUMsT0FBRSx3QkFBVTtBQUFBLE1BQUk7QUFBQSxNQUFnRCxnQkFBQUEsTUFBQyxpQkFBYyxPQUFNLE1BQUk7QUFBQSxNQUFFO0FBQUEsT0FBQyxDQUFHO0FBQUEsRUFDM25CO0FBQUEsRUFDQTtBQUFBLElBQ0ksTUFBTTtBQUFBLElBQ04sU0FBUztBQUFBLElBQ1QsY0FBYyxDQUFDLGdCQUFBQyxPQUFBRixZQUFBLEVBQUU7QUFBQTtBQUFBLE1BQXVCLGdCQUFBQyxNQUFDLGlCQUFjLE9BQU0sTUFBSTtBQUFBLE9BQUUsR0FBSSxnQkFBQUMsT0FBQUYsWUFBQSxFQUFFO0FBQUE7QUFBQSxNQUE2RixnQkFBQUMsTUFBQyxpQkFBYyxPQUFNLE1BQUk7QUFBQSxPQUFFLEdBQUksZ0JBQUFBLE1BQUFELFlBQUEsRUFBRSxrTkFBb00sR0FBSSxnQkFBQUUsT0FBQUYsWUFBQSxFQUFFO0FBQUE7QUFBQSxNQUE0RyxnQkFBQUMsTUFBQyxPQUFFLHNDQUF3QjtBQUFBLE1BQUk7QUFBQSxNQUFFLGdCQUFBQSxNQUFDLE9BQUUscUNBQXVCO0FBQUEsTUFBSTtBQUFBLE1BQUssZ0JBQUFBLE1BQUMsT0FBRSxvQ0FBc0I7QUFBQSxNQUFJO0FBQUEsT0FBNEIsR0FBSSxnQkFBQUEsTUFBQUQsWUFBQSxFQUFFLHVLQUF5SixDQUFHO0FBQUEsRUFDaHlCO0FBQUEsRUFDQTtBQUFBLElBQ0ksTUFBTTtBQUFBLElBQ04sU0FBUztBQUFBLElBQ1QsY0FBYyxDQUFDLGdCQUFBQyxNQUFBRCxZQUFBLEVBQUUsZ0RBQWtDLEdBQUksZ0JBQUFDLE1BQUFELFlBQUEsRUFBRSwwSEFBNEcsR0FBSSxnQkFBQUMsTUFBQUQsWUFBQSxFQUFFLGtGQUFvRSxHQUFJLGdCQUFBQyxNQUFBRCxZQUFBLEVBQUUsd0dBQTBGLEdBQUksZ0JBQUFDLE1BQUFELFlBQUEsRUFBRSxzS0FBd0osQ0FBRztBQUFBLEVBQ3BmO0FBQUEsRUFDQTtBQUFBLElBQ0ksTUFBTTtBQUFBLElBQ04sU0FBUztBQUFBLElBQ1QsY0FBYyxDQUFDLGdCQUFBQyxNQUFBRCxZQUFBLEVBQUUsdURBQXlDLEdBQUksZ0JBQUFDLE1BQUFELFlBQUEsRUFBRSx3SEFBMEcsR0FBSSxnQkFBQUMsTUFBQUQsWUFBQSxFQUFFLHFHQUF1RixHQUFJLGdCQUFBQyxNQUFBRCxZQUFBLEVBQUUseUZBQTJFLEdBQUksZ0JBQUFDLE1BQUFELFlBQUEsRUFBRSxpRkFBbUUsQ0FBRztBQUFBLEVBQ3hhO0FBQUEsRUFDQTtBQUFBLElBQ0ksTUFBTTtBQUFBLElBQ04sU0FBUztBQUFBLElBQ1QsY0FBYyxDQUFDLGdCQUFBQyxNQUFBRCxZQUFBLEVBQUUsR0FBSSxnQkFBQUMsTUFBQUQsWUFBQSxFQUFFLHlJQUEySCxHQUFJLGdCQUFBQyxNQUFBRCxZQUFBLEVBQUUsb0ZBQXNFLEdBQUksZ0JBQUFDLE1BQUFELFlBQUEsRUFBRSxrSUFBb0gsR0FBSSxnQkFBQUMsTUFBQUQsWUFBQSxFQUFFLHVGQUF5RSxDQUFHO0FBQUEsRUFDOWE7QUFBQSxFQUNBO0FBQUEsSUFDSSxNQUFNO0FBQUEsSUFDTixTQUFTO0FBQUEsSUFDVCxjQUFjLENBQUMsZ0JBQUFDLE1BQUFELFlBQUEsRUFBRSxzQ0FBd0IsR0FBSSxnQkFBQUMsTUFBQUQsWUFBQSxFQUFFLDZHQUErRixHQUFJLGdCQUFBQyxNQUFBRCxZQUFBLEVBQUUsNEZBQThFLEdBQUksZ0JBQUFDLE1BQUFELFlBQUEsRUFBRSw2R0FBK0YsR0FBSSxnQkFBQUMsTUFBQUQsWUFBQSxFQUFFLHNHQUF3RixDQUFHO0FBQUEsRUFDNWE7QUFDSjs7O0FDbkJzQixxQkFBQUcsWUFBMFUsT0FBQUMsT0FBMVUsUUFBQUMsY0FBQTtBQXBCZixJQUFNLFdBQW9DO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFnQjdDO0FBQUE7QUFBQSxJQUVJLE1BQU07QUFBQSxJQUNOLFNBQVM7QUFBQSxJQUNULGNBQWMsZ0JBQUFBLE9BQUFGLFlBQUEsRUFBRTtBQUFBO0FBQUEsTUFBd1UsZ0JBQUFDLE1BQUMsaUJBQWMsT0FBTSxNQUFJO0FBQUEsTUFBRTtBQUFBLE1BQWlQLGdCQUFBQSxNQUFDLGlCQUFjLE9BQU0sTUFBSTtBQUFBLE1BQUU7QUFBQSxNQUFxTixnQkFBQUEsTUFBQyxpQkFBYyxPQUFNLE1BQUk7QUFBQSxNQUFFO0FBQUEsTUFBMEQsZ0JBQUFBLE1BQUMsaUJBQWMsT0FBTSxNQUFJO0FBQUEsTUFBRTtBQUFBLE9BQUU7QUFBQSxJQUN0OEIsVUFBVTtBQUFBLE1BQ047QUFBQSxRQUNJLE9BQU87QUFBQTtBQUFBLFFBQ1AsTUFBTSxDQUFDLGdCQUFBQyxPQUFBRixZQUFBLEVBQUU7QUFBQTtBQUFBLFVBQWtmLGdCQUFBQyxNQUFDLGlCQUFjLE9BQU0sTUFBSTtBQUFBLFVBQUU7QUFBQSxXQUErQixHQUFJLHdDQUF3QztBQUFBLE1BQ3JtQjtBQUFBLE1BQ0E7QUFBQSxRQUNJLE9BQU87QUFBQTtBQUFBLFFBQ1AsTUFBTSxDQUFDLGlFQUFnRSxrSkFBa0osZ0JBQUFDLE9BQUFGLFlBQUEsRUFBRTtBQUFBO0FBQUEsVUFBNlMsZ0JBQUFDLE1BQUMsaUJBQWMsT0FBTSxNQUFJO0FBQUEsVUFBRTtBQUFBLFdBQUMsR0FBSyxnQ0FBZ0MsdUNBQXVDO0FBQUEsTUFDcG5CO0FBQUEsTUFDQTtBQUFBLFFBQ0ksT0FBTztBQUFBO0FBQUEsUUFDUCxNQUFNLENBQUMsaUVBQWlFLDhGQUE2RixnQkFBQUMsT0FBQUYsWUFBQSxFQUFFO0FBQUE7QUFBQSxVQUE0UyxnQkFBQUMsTUFBQyxpQkFBYyxPQUFNLE1BQUk7QUFBQSxXQUFFLEdBQUksZ0NBQStCLHVDQUF1QztBQUFBLE1BQzVqQjtBQUFBLE1BQ0E7QUFBQSxRQUNJLE9BQU87QUFBQTtBQUFBLFFBQ1AsTUFBTSxDQUFDLG1DQUFrQyxvSEFBbUgsZ0JBQUFDLE9BQUFGLFlBQUEsRUFBRTtBQUFBO0FBQUEsVUFBK0ksZ0JBQUFDLE1BQUMsaUJBQWMsT0FBTSxNQUFJO0FBQUEsV0FBRSxHQUFJLGdDQUErQiw0Q0FBNEM7QUFBQSxNQUMzWjtBQUFBLElBQ0o7QUFBQSxFQUNKO0FBQUEsRUFDQTtBQUFBLElBQ0ksTUFBTTtBQUFBO0FBQUEsSUFDTixTQUFTO0FBQUEsSUFDVCxjQUFjLGdCQUFBQyxPQUFBRixZQUFBLEVBQUU7QUFBQTtBQUFBLE1BQXFZLGdCQUFBQyxNQUFDLGlCQUFjLE9BQU0sTUFBSTtBQUFBLE1BQUU7QUFBQSxPQUFrRTtBQUFBLElBQ2xmLFVBQVU7QUFBQSxNQUNOO0FBQUEsUUFDSSxPQUFPO0FBQUE7QUFBQSxRQUNQLE1BQU0sQ0FBQywwREFBeUQsdURBQXNELDJEQUEwRCxpRUFBZ0UsMkNBQTJDO0FBQUEsTUFDL1I7QUFBQSxNQUNBO0FBQUEsUUFDSSxPQUFPO0FBQUE7QUFBQSxRQUNQLE1BQU0sQ0FBQyxzRUFBcUUsdURBQXNELHdGQUF1Riw4REFBNkQsb0dBQW1HLHNCQUFzQjtBQUFBLE1BQ25aO0FBQUEsSUFDSjtBQUFBLEVBQ0o7QUFBQSxFQUNBO0FBQUEsSUFDSSxNQUFNO0FBQUE7QUFBQSxJQUNOLFNBQVM7QUFBQSxJQUNULGNBQWM7QUFBQSxJQUNkLFVBQVU7QUFBQSxNQUNOO0FBQUEsUUFDSSxPQUFPO0FBQUE7QUFBQSxRQUNQLE1BQU0sQ0FBQyxvQ0FBbUMsZ0JBQUFDLE9BQUFGLFlBQUEsRUFBRTtBQUFBO0FBQUEsVUFBeUQsZ0JBQUFDLE1BQUMsT0FBRSxzQ0FBd0I7QUFBQSxVQUFJO0FBQUEsV0FBWSxHQUFJLG1IQUFrSCx3R0FBdUcsNENBQTRDO0FBQUEsTUFDN1o7QUFBQSxNQUNBO0FBQUEsUUFDSSxPQUFPO0FBQUE7QUFBQSxRQUNQLE1BQU0sQ0FBQyxtQ0FBa0MsZ0JBQUFDLE9BQUFGLFlBQUEsRUFBRTtBQUFBO0FBQUEsVUFBeUQsZ0JBQUFDLE1BQUMsT0FBRSxzQ0FBd0I7QUFBQSxVQUFJO0FBQUEsV0FBWSxHQUFJLGtIQUFpSCxzRkFBcUYsdUNBQXVDO0FBQUEsTUFDcFk7QUFBQSxJQUNKO0FBQUEsRUFDSjtBQUFBLEVBQ0E7QUFBQSxJQUNJLE1BQU07QUFBQTtBQUFBLElBQ04sU0FBUztBQUFBLElBQ1QsY0FBYyxnQkFBQUMsT0FBQUYsWUFBQSxFQUFFO0FBQUE7QUFBQSxNQUF1ZSxnQkFBQUMsTUFBQyxpQkFBYyxPQUFNLE1BQUk7QUFBQSxNQUFFO0FBQUEsT0FBaU07QUFBQSxJQUNudEIsVUFBVTtBQUFBLE1BQ047QUFBQSxRQUNJLE9BQU87QUFBQTtBQUFBLFFBQ1AsTUFBTSxDQUFDLHVHQUFzRyx1RUFBc0Usc0ZBQXFGLG1EQUFrRCx1Q0FBdUM7QUFBQSxNQUNyVztBQUFBLElBRUo7QUFBQSxFQUNKO0FBQ0o7OztBQ2xGMEIsZ0JBQUFFLE9BaXNDWCxRQUFBQyxjQWpzQ1c7OztBQ2pCMUIsU0FBZ0IsWUFBQUMsV0FBVSxhQUFBQyxrQkFBaUI7QUFDM0MsT0FBTyxpQkFBaUI7QUFpQ1IscUJBQUFDLFlBQ1csT0FBQUMsT0FEWCxRQUFBQyxjQUFBO0FBWmhCLFNBQVMsWUFBWSxPQUErQztBQUVoRSxNQUFJLFNBQVMsTUFBTSxTQUFTLEdBQUc7QUFFM0IsVUFBTSxpQkFBaUI7QUFDdkIsUUFBSSxlQUFlLEtBQUssS0FBSyxHQUFHO0FBQzVCLFlBQU0sTUFBTSxNQUFNLE1BQU0sY0FBYyxFQUFFLElBQUksT0FBSyxFQUFFLEtBQUssQ0FBQztBQUN6RCxZQUFNLFFBQVEsSUFBSSxDQUFDO0FBQ25CLFlBQU0sTUFBTSxJQUFJLENBQUM7QUFHakIsYUFDSSxnQkFBQUEsT0FBQUYsWUFBQSxFQUFFO0FBQUE7QUFBQSxRQUNTLGdCQUFBQyxNQUFDLFVBQUssVUFBUyxvQkFBb0IsaUJBQU07QUFBQSxRQUFPO0FBQUEsUUFBQyxnQkFBQUEsTUFBQyxVQUFLLFVBQVMsa0JBQWtCLGVBQUk7QUFBQSxTQUNqRztBQUFBLElBRVIsV0FBVyxlQUFlLEtBQUssS0FBSyxHQUFHO0FBRW5DLGFBQ0ksZ0JBQUFDLE9BQUFGLFlBQUEsRUFBRTtBQUFBO0FBQUEsUUFDSyxnQkFBQUMsTUFBQyxVQUFLLFVBQVMsb0JBQW9CLGlCQUFNO0FBQUEsU0FDaEQ7QUFBQSxJQUVSLE9BQU87QUFFSCxjQUFRLEtBQUssMkNBQTJDLEtBQUssMEJBQTBCO0FBQ3ZGLGFBQU87QUFBQSxJQUNYO0FBQUEsRUFDSixPQUFPO0FBQ0gsWUFBUSxLQUFLLDZCQUE2QjtBQUMxQyxXQUFPO0FBQUEsRUFDWDtBQUNKO0FBR08sSUFBTSxlQUE0QyxDQUFDLEVBQUUsZUFBQUUsZ0JBQWdCLFNBQVMsTUFBSyxNQUFNO0FBQzlGLFFBQU0sQ0FBQyxlQUFlLGdCQUFnQixJQUFJTCxVQUFxQixDQUFDLENBQUM7QUFHakUsRUFBQUMsV0FBVSxNQUFNO0FBR2QsUUFBSTtBQUNGLFlBQU0sYUFBeUIsQ0FBQztBQUNoQyxNQUFBSSxlQUFjLFFBQVEsQ0FBQyxXQUFXO0FBRWhDLGNBQU0sU0FBUyxZQUFZLE9BQU8sTUFBTTtBQUV4QyxtQkFBVyxLQUFLLEdBQUcsTUFBTTtBQUFBLE1BQzNCLENBQUM7QUFDRCx1QkFBaUIsVUFBVTtBQUFBLElBRTdCLFNBQVMsT0FBTztBQUNmLGNBQVEsTUFBTSwwQkFBMEIsS0FBSztBQUM1QyxZQUFNLGlGQUFpRkEsY0FBYTtBQUFBLElBQ3RHO0FBQUEsRUFDRixHQUFHLENBQUNBLGNBQWEsQ0FBQztBQUdsQixRQUFNLGdCQUFnQixDQUFDLFlBQTRCO0FBSWpELFVBQU0saUJBQWlCLFFBQ2xCLFFBQVEsY0FBYyxHQUFHLEVBQ3pCLFFBQVEsVUFBVSxFQUFFLEVBQ3BCLEtBQUs7QUFLVixVQUFNLGFBQWEsZUFBZSxNQUFNLEdBQUcsRUFBRSxJQUFJLFlBQVUsT0FBTyxLQUFLLENBQUM7QUFJeEUsVUFBTSxhQUFhO0FBR25CLFVBQU0sbUJBQW1CLFdBQVcsSUFBSSxDQUFDLFFBQVEsV0FBVztBQUl4RCxZQUFNLENBQUMsTUFBTSxVQUFVLElBQUksT0FBTyxTQUFTLEdBQUcsSUFDMUMsT0FBTyxNQUFNLEdBQUcsRUFBRSxJQUFJLFVBQVEsS0FBSyxLQUFLLENBQUMsSUFDekMsQ0FBQyxJQUFJLE1BQU07QUFLZixZQUFNLFdBQVcsV0FBVyxNQUFNLEdBQUcsRUFBRSxJQUFJLE9BQUssRUFBRSxDQUFDLElBQUksR0FBRyxFQUFFLEtBQUssR0FBRztBQUdwRSxZQUFNLGdCQUFnQixHQUFHLElBQUksS0FBSyxRQUFRLEdBQUcsS0FBSztBQUdsRCxhQUFPO0FBQUEsSUFDWCxDQUFDO0FBS0QsVUFBTSxTQUFTLGlCQUFpQixNQUFNLEdBQUcsVUFBVSxFQUFFLEtBQUssSUFBSSxLQUM5QyxpQkFBaUIsU0FBUyxhQUFhLFlBQVk7QUFHbkUsV0FBTztBQUFBLEVBQ1g7QUFFRSxNQUFJLGVBQWU7QUFFbkIsTUFBSSxTQUFTO0FBQ1gsbUJBQWUsSUFBSSxPQUFPO0FBQUEsRUFDNUI7QUFHQSxRQUFNLGlCQUFpQixDQUFDLE9BQWlCLFVBQWtCO0FBSXpELFFBQUksaUJBQWlCLFFBQU87QUFDNUIsUUFBRyxPQUFNO0FBQ1Asd0JBQWtCLFFBQU87QUFBQSxJQUMzQjtBQUNBLFVBQU0sWUFBWSxNQUFNLFVBQVUsWUFBWTtBQUM5QyxVQUFNLFlBQVksTUFBTTtBQUd4QixZQUFRLFdBQVc7QUFBQSxNQUNqQixLQUFLO0FBQ0gsZUFDRSxnQkFBQUQsT0FBQyxRQUFlLFFBQU8sMkJBQTBCLE1BQUssbUJBQWtCLFVBQVMsbUJBQWtCLElBQUksUUFBUSxjQUFjLEdBQUcsWUFBWSxJQUd6STtBQUFBLHdCQUFjLFVBQVUsVUFBVSxVQUFVLFVBQVUsRUFBRTtBQUFBLFVBQUU7QUFBQSxVQUNyRCxnQkFBQUEsT0FBQyxVQUFLLFVBQVMsZUFBZTtBQUFBLHNCQUFVLE1BQU0sUUFBUSxVQUFVLEVBQUUsRUFBRSxRQUFRLE9BQU8sR0FBRyxFQUFFLEtBQUs7QUFBQSxZQUFFO0FBQUEsYUFBQztBQUFBLFVBQU87QUFBQSxVQUN2RyxnQkFBQUQsTUFBQyxPQUFFLFVBQVMsb0JBQW1CLFFBQU8sdUJBQXVCLG9CQUFVLFNBQVE7QUFBQSxVQUFJO0FBQUEsVUFDbkYsZ0JBQUFBLE1BQUMsT0FBRSxVQUFTLGVBQWMsUUFBTyxvQkFBb0Isb0JBQVUsUUFBTztBQUFBLFVBQzNFLFlBQVksVUFBVSxLQUFLLEtBQUssZ0JBQUFBLE1BQUMsVUFBTSxzQkFBWSxVQUFVLEtBQUssR0FBRTtBQUFBLFVBQ3BFLFVBQVUsUUFDVCxnQkFBQUMsT0FBQyxVQUFLO0FBQUE7QUFBQSxZQUFPLGdCQUFBRCxNQUFDLFVBQUssVUFBUyx3QkFBdUIsVUFBUyxhQUFZLFVBQVUsVUFBVSxNQUFPLG9CQUFVLE1BQUs7QUFBQSxZQUFPO0FBQUEsYUFBRTtBQUFBLFVBRTVILFVBQVUsT0FDVCxnQkFBQUMsT0FBQyxVQUFLO0FBQUE7QUFBQSxZQUFNLGdCQUFBQSxPQUFDLE9BQUUsV0FBVSxPQUFNLE1BQU0sbUJBQW1CLFVBQVUsR0FBRyxJQUFJO0FBQUE7QUFBQSxjQUFNLFVBQVU7QUFBQSxlQUFJO0FBQUEsYUFBSTtBQUFBLGFBWjVGLEtBY1Q7QUFBQSxNQUdKLEtBQUs7QUFDSCxlQUNFLGdCQUFBQSxPQUFDLFFBQWUsUUFBTyxlQUFjLE1BQUssbUJBQWtCLFVBQVMsbUJBQWtCLElBQUksUUFBUSxjQUFjLElBRTlHO0FBQUEsd0JBQWMsVUFBVSxVQUFVLFVBQVUsVUFBVSxFQUFFO0FBQUEsVUFFeEQsVUFBVSxRQUNULGdCQUFBQSxPQUFDLFVBQUssVUFBUyxlQUFjO0FBQUE7QUFBQSxZQUFPLFVBQVUsTUFBTSxRQUFRLFVBQVUsRUFBRSxFQUFFLFFBQVEsT0FBTyxHQUFHLEVBQUUsS0FBSztBQUFBLFlBQUU7QUFBQSxhQUFDLElBQ3BHLFVBQVUsWUFDWixnQkFBQUEsT0FBQyxVQUFLLFVBQVMsZUFBYztBQUFBO0FBQUEsWUFBTyxVQUFVLFVBQVUsUUFBUSxVQUFVLEVBQUUsRUFBRSxRQUFRLE9BQU8sR0FBRyxFQUFFLEtBQUs7QUFBQSxZQUFFO0FBQUEsYUFBQyxJQUUxRyxRQUFRLEtBQUsseUNBQXlDLGNBQWMsRUFBRTtBQUFBLFVBR3ZFLFVBQVUsYUFDVCxnQkFBQUEsT0FBQyxPQUFFLFVBQVMsb0JBQW1CLFFBQU8sdUJBQXNCO0FBQUE7QUFBQSxZQUNuRCxVQUFVO0FBQUEsYUFDbkI7QUFBQSxVQUdELFVBQVUsUUFDVCxnQkFBQUEsT0FBQyxVQUFLO0FBQUE7QUFBQSxZQUNHLGdCQUFBRCxNQUFDLFVBQUssVUFBUyx3QkFBdUIsVUFBUyxhQUFZLFVBQVUsVUFBVSxNQUNuRixvQkFBVSxNQUNiO0FBQUEsWUFBTztBQUFBLGFBQ1Q7QUFBQSxVQUVELFVBQVUsUUFDVCxnQkFBQUMsT0FBQyxVQUFLLFVBQVMsUUFBTztBQUFBO0FBQUEsWUFBTyxVQUFVO0FBQUEsYUFBSztBQUFBLGFBMUJ2QyxLQTZCVDtBQUFBLE1BR0osS0FBSztBQUNILGVBQ0UsZ0JBQUFBLE9BQUMsUUFBZSxRQUFPLGtCQUFpQixNQUFLLG1CQUFrQixVQUFTLG1CQUFrQixJQUFJLFFBQVEsY0FBYyxJQUVoSDtBQUFBLG9CQUFVLFVBQVUsVUFBVSxVQUFVO0FBQUEsVUFFekMsVUFBVSxTQUNULGdCQUFBQSxPQUFDLFVBQUssVUFBUyxlQUFjO0FBQUE7QUFBQSxZQUFRLFVBQVUsTUFBTSxRQUFRLFVBQVUsRUFBRSxFQUFFLFFBQVEsT0FBTyxHQUFHLEVBQUUsS0FBSztBQUFBLFlBQUU7QUFBQSxhQUFDO0FBQUEsVUFHeEcsVUFBVSxnQkFDVCxnQkFBQUEsT0FBQyxPQUFFLFVBQVMsb0JBQW1CLFFBQU8sdUJBQXNCO0FBQUE7QUFBQSxZQUFPLFVBQVU7QUFBQSxhQUFhO0FBQUEsVUFHM0YsVUFBVSxRQUNULGdCQUFBQSxPQUFDLFVBQUs7QUFBQTtBQUFBLFlBQU8sZ0JBQUFELE1BQUMsVUFBSyxVQUFTLHdCQUF1QixVQUFTLGFBQVksVUFBVSxVQUFVLE1BQU8sb0JBQVUsTUFBSztBQUFBLFlBQU87QUFBQSxhQUFFO0FBQUEsYUFidEgsS0FlVDtBQUFBLE1BSUosS0FBSztBQUNILGVBQ0UsZ0JBQUFDLE9BQUMsUUFDQztBQUFBLDBCQUFBRCxNQUFDLFVBQU0sd0JBQWMsVUFBVSxVQUFVLEVBQUUsR0FBRTtBQUFBLFVBQU87QUFBQSxVQUNwRCxnQkFBQUEsTUFBQyxVQUFNLG9CQUFVLE9BQU07QUFBQSxVQUFPO0FBQUEsVUFBSyxnQkFBQUEsTUFBQyxPQUFHLG9CQUFVLFdBQVU7QUFBQSxVQUFJO0FBQUEsVUFDL0QsZ0JBQUFBLE1BQUMsT0FBRyxvQkFBVSxRQUFPO0FBQUEsVUFBSTtBQUFBLFVBQUcsVUFBVTtBQUFBLFVBQUs7QUFBQSxhQUhwQyxLQUlUO0FBQUEsTUFHSixLQUFLO0FBQ0gsZUFDRSxnQkFBQUMsT0FBQyxRQUNDO0FBQUEsMEJBQUFELE1BQUMsVUFBTSx3QkFBYyxVQUFVLFVBQVUsRUFBRSxHQUFFO0FBQUEsVUFBTztBQUFBLFVBQ3BELGdCQUFBQSxNQUFDLFVBQU0sb0JBQVUsT0FBTTtBQUFBLFVBQU87QUFBQSxVQUFlLFVBQVU7QUFBQSxVQUFPO0FBQUEsVUFBRyxVQUFVO0FBQUEsVUFBSztBQUFBLGFBRnpFLEtBR1Q7QUFBQSxNQUdKO0FBQ0UsZ0JBQVEsS0FBSyx1QkFBdUIsU0FBUyxFQUFFO0FBQy9DLGVBQU8sZ0JBQUFDLE9BQUMsUUFBZTtBQUFBO0FBQUEsVUFBcUI7QUFBQSxhQUE1QixLQUFzQztBQUFBLElBQzFEO0FBQUEsRUFDRjtBQUNBLE1BQUksY0FBYztBQUNsQixNQUFHLE9BQU87QUFDUixrQkFBYztBQUFBLEVBQ2hCO0FBQ0EsU0FDRSxnQkFBQUQsTUFBQyxTQUNFLHdCQUFjLFdBQVcsSUFDeEIsZ0JBQUFBLE1BQUMsT0FBRSxxQ0FBdUIsSUFFMUIsZ0JBQUFBLE1BQUMsUUFBRyxPQUFPLGFBQ1Isd0JBQWMsSUFBSSxDQUFDLE9BQU8sVUFBVSxlQUFlLE9BQU8sS0FBSyxDQUFDLEdBQ25FLEdBRUo7QUFFSjtBQUVBLElBQU8sc0JBQVE7OztBQ2xRTCxnQkFBQUcsYUFBQTs7O0FDbUJNLGdCQUFBQyxPQUdZLFFBQUFDLGNBSFo7OztBQ0dBLFNBQWtELE9BQUFDLE9BQWxELFFBQUFDLGNBQUE7QUE4VmYsSUFBSSxvQkFBbUI7QUFBQSxFQUNwQjtBQUFBLElBQ0ksTUFBTSxxQkFBcUIsU0FBUyxDQUFDLENBQUM7QUFBQSxJQUN0QyxZQUFZO0FBQUEsSUFDWixTQUFTO0FBQUEsSUFDVCxNQUFNO0FBQUEsRUFFVjtBQUFBLEVBQ0E7QUFBQSxJQUNJLE1BQU0scUJBQXFCLFNBQVMsQ0FBQyxDQUFFO0FBQUEsSUFDdkMsWUFBWTtBQUFBLElBQ1osU0FBUztBQUFBLEVBQ2I7QUFBQSxFQUNBO0FBQUEsSUFDSSxNQUFNLHFCQUFxQixTQUFTLENBQUMsQ0FBRTtBQUFBLElBQ3ZDLFlBQVk7QUFBQSxJQUNaLFNBQVM7QUFBQSxFQUNiO0FBQUEsRUFDQTtBQUFBLElBQ0ksTUFBTSxxQkFBcUIsU0FBUyxDQUFDLENBQUU7QUFBQSxJQUN2QyxZQUFZO0FBQUEsSUFDWixTQUFTO0FBQUEsRUFDYjtBQUNKO0FBSUEsSUFBSSx1QkFBdUI7QUFBQSxFQUN2QjtBQUFBLElBQ0ksTUFBTSx3QkFBd0IsWUFBWSxDQUFDLENBQUM7QUFBQSxJQUM1QyxZQUFZO0FBQUEsSUFDWixTQUFTO0FBQUEsSUFDVCxNQUFNO0FBQUEsRUFDVjtBQUFBLEVBQ0E7QUFBQSxJQUNJLE1BQU0sd0JBQXdCLFlBQVksQ0FBQyxDQUFDO0FBQUEsSUFDNUMsWUFBWTtBQUFBLElBQ1osU0FBUztBQUFBLEVBQ2I7QUFBQSxFQUNBO0FBQUEsSUFDSSxNQUFNLHdCQUF3QixZQUFZLENBQUMsQ0FBQztBQUFBLElBQzVDLFlBQVk7QUFBQSxJQUNaLFNBQVM7QUFBQSxFQUNiO0FBQUEsRUFDQTtBQUFBLElBQ0ksTUFBTSx3QkFBd0IsWUFBWSxDQUFDLENBQUM7QUFBQSxJQUM1QyxZQUFZO0FBQUEsSUFDWixTQUFTO0FBQUEsRUFDYjtBQUFBLEVBQ0E7QUFBQSxJQUNJLE1BQU0sd0JBQXdCLFlBQVksQ0FBQyxDQUFDO0FBQUEsSUFDNUMsWUFBWTtBQUFBLElBQ1osU0FBUztBQUFBLEVBQ2I7QUFBQSxFQUNBO0FBQUEsSUFDSSxNQUFNLHdCQUF3QixZQUFZLENBQUMsQ0FBQztBQUFBLElBQzVDLFlBQVk7QUFBQSxJQUNaLFNBQVM7QUFBQSxFQUNiO0FBQUEsRUFDQTtBQUFBLElBQ0ksTUFBTSx3QkFBd0IsWUFBWSxDQUFDLENBQUM7QUFBQSxJQUM1QyxZQUFZO0FBQUEsSUFDWixTQUFTO0FBQUEsRUFDYjtBQUFBLEVBQ0E7QUFBQSxJQUNJLE1BQU0sd0JBQXdCLFlBQVksQ0FBQyxDQUFFO0FBQUEsSUFDN0MsWUFBWTtBQUFBLElBQ1osU0FBUztBQUFBLEVBQ2I7QUFBQSxFQUNBO0FBQUEsSUFDSSxNQUFNLHdCQUF3QixZQUFZLENBQUMsQ0FBRTtBQUFBLElBQzdDLFlBQVk7QUFBQSxJQUNaLFNBQVM7QUFBQSxFQUNiO0FBRUo7QUFLQSxTQUFTLHdCQUF3QixNQUF1QjtBQUNwRCxNQUFJLGNBQTZCLENBQUM7QUFDbEMsV0FBUyxRQUFRLEdBQUcsUUFBUSxLQUFLLGFBQWEsUUFBUSxTQUFTO0FBQ3ZELGdCQUFZO0FBQUEsTUFDUixnQkFBQUMsTUFBQyxRQUFnQixlQUFLLGFBQWEsS0FBSyxLQUEvQixLQUFpQztBQUFBLElBQzlDO0FBQUEsRUFDUjtBQUNBLFNBQ0ksZ0JBQUFDLE9BQUMsU0FDRztBQUFBLG9CQUFBRCxNQUFDLE1BQUcsSUFBSSxHQUFHLEtBQUssSUFBSSxRQUFRLE1BQU0sS0FBSyxNQUFLO0FBQUEsSUFDNUMsZ0JBQUFDLE9BQUMsU0FBSSxXQUFVLE9BQ1g7QUFBQSxzQkFBQUQsTUFBQyxTQUFJLFdBQVUsU0FDWCwwQkFBQUEsTUFBQyxTQUFJLFdBQVUsdUJBQ1gsMEJBQUFBLE1BQUMsU0FBSSxLQUFLLEtBQUssU0FBUyxXQUFVLGVBQWEsR0FDbkQsR0FDSjtBQUFBLE1BQ0EsZ0JBQUFBLE1BQUMsU0FBSSxXQUFVLE9BQ1gsMEJBQUFBLE1BQUMsUUFBSSx1QkFBWSxHQUNyQjtBQUFBLE9BQ0o7QUFBQSxLQUdKO0FBRVI7QUFHQSxTQUFTLHFCQUFxQixNQUFvQjtBQUM5QyxNQUFJLGNBQThCLENBQUM7QUFDbkMsV0FBUyxRQUFRLEdBQUcsUUFBUSxLQUFLLFNBQVMsUUFBUSxTQUFTO0FBQ3ZELFFBQUksV0FBMkIsQ0FBQztBQUNoQyxhQUFTLElBQUksR0FBRyxJQUFJLEtBQUssU0FBUyxLQUFLLEVBQUUsS0FBSyxRQUFRLEtBQUs7QUFDdkQsZUFBUztBQUFBLFFBQ0wsZ0JBQUFBLE1BQUMsUUFBWSxlQUFLLFNBQVMsS0FBSyxFQUFFLEtBQUssQ0FBQyxLQUEvQixDQUFpQztBQUFBLE1BQzlDO0FBQUEsSUFFSjtBQUNBLGdCQUFZO0FBQUEsTUFDUixnQkFBQUMsT0FBQyxTQUFvQixXQUFVLFFBQzNCO0FBQUEsd0JBQUFELE1BQUMsTUFBRyxNQUFNLEtBQUssU0FBUyxLQUFLLEVBQUUsT0FBTTtBQUFBLFFBQ3JDLGdCQUFBQSxNQUFDLFFBQWdCLHNCQUFSLEtBQWlCO0FBQUEsV0FGcEIsUUFBTSxHQUdoQjtBQUFBLElBQ0o7QUFBQSxFQUVKO0FBQ0EsU0FDSSxnQkFBQUMsT0FBQyxTQUNHO0FBQUEsb0JBQUFELE1BQUMsTUFBRyxJQUFJLEdBQUcsS0FBSyxJQUFJLFFBQVEsTUFBTSxLQUFLLE1BQUs7QUFBQSxJQUM1QyxnQkFBQUMsT0FBQyxTQUFJLFdBQVUsT0FDWDtBQUFBLHNCQUFBRCxNQUFDLFNBQUksV0FBVSxTQUNYLDBCQUFBQSxNQUFDLFNBQUksV0FBVSx1QkFDWCwwQkFBQUEsTUFBQyxTQUFJLEtBQUssS0FBSyxTQUFTLFdBQVUsZUFBYSxHQUNuRCxHQUNKO0FBQUEsTUFDQSxnQkFBQUEsTUFBQyxTQUFJLFdBQVUsT0FDVixlQUFLLGNBQ1Y7QUFBQSxPQUNKO0FBQUEsSUFDQSxnQkFBQUEsTUFBQyxTQUFJLFdBQVUsT0FDZCx1QkFDRDtBQUFBLEtBQ0o7QUFFUjs7O0FDeGdCQSxTQUFTLGFBQUFFLFlBQVcsWUFBQUMsaUJBQWdCO0FBcUU5QixxQkFBQUMsWUFDRSxPQUFBQyxPQVljLFFBQUFDLGNBYmhCOzs7QUNoRUUsZ0JBQUFDLGFBQUE7OztBQ0NLLGdCQUFBQyxhQUFBO0FBSE4sU0FBUyxjQUFjLEVBQUMsS0FBSyxVQUFVLElBQUcsR0FBK0M7QUFDNUYsUUFBTSxFQUFDLHlCQUF3QixJQUFJLGNBQWM7QUFDakQsU0FDSSxnQkFBQUEsTUFBQyxTQUFJLDBCQUFBQSxNQUFDLE9BQUUsU0FBUyxNQUFNLHlCQUF5QixFQUFDLE1BQU0sSUFBSSxPQUFPLEtBQUssWUFBWSxTQUFRLENBQUMsR0FBSSxlQUFJLEdBQUk7QUFFaEg7QUFLTyxTQUFTLFFBQVEsRUFBQyxNQUFNLFlBQVksT0FBTyxVQUFVLFlBQVksTUFBTSxXQUFVLEdBQVU7QUFFOUYsUUFBTSxFQUFDLFVBQVMsSUFBSSxjQUFjO0FBRWxDLE1BQUcsU0FBUyxZQUFZLGNBQWMsY0FBYyxDQUFDLFlBQVk7QUFDN0QsV0FBTyxnQkFBQUEsTUFBQyxPQUFFLFNBQVMsTUFBTSxVQUFVLEVBQUMsTUFBWSxPQUFjLFVBQW9CLFlBQXVCLFdBQXFCLENBQUMsR0FBSSxnQkFBSztBQUFBLEVBQzVJO0FBRUEsTUFBRyxTQUFTLFlBQVksY0FBYyxjQUFjLFlBQVk7QUFDNUQsV0FBTyxnQkFBQUEsTUFBQyxPQUFFLFNBQVMsTUFBTSxVQUFVLEVBQUMsTUFBWSxPQUFjLFVBQW9CLFlBQXVCLFlBQXVCLFdBQXFCLENBQUMsR0FBSSxnQkFBSztBQUFBLEVBQ25LLFdBRVMsU0FBUyxZQUFZLGNBQWMsQ0FBQyxZQUFXO0FBQ3BELFdBQU8sZ0JBQUFBLE1BQUMsT0FBRSxTQUFTLE1BQU0sVUFBVSxFQUFDLE1BQVksT0FBYyxVQUFvQixXQUFxQixDQUFDLEdBQUksZ0JBQUs7QUFBQSxFQUNySCxXQUVTLFNBQVMsWUFBWSxDQUFDLGNBQWMsY0FBYyxDQUFDLFlBQVc7QUFDbkUsV0FBTyxnQkFBQUEsTUFBQyxPQUFFLFNBQVMsTUFBTSxVQUFVLEVBQUMsTUFBWSxPQUFjLFVBQW9CLFdBQXFCLENBQUMsR0FBSSxnQkFBSztBQUFBLEVBQ3JILFdBRVUsU0FBUyxZQUFZLENBQUMsY0FBYyxjQUFhLFlBQVc7QUFDbEUsV0FBTyxnQkFBQUEsTUFBQyxPQUFFLFNBQVMsTUFBTSxVQUFVLEVBQUMsTUFBWSxPQUFjLFVBQW9CLFlBQXVCLFdBQXFCLENBQUMsR0FBSSxnQkFBSztBQUFBLEVBQzVJLFdBRVMsU0FBUyxZQUFZLENBQUMsY0FBYyxDQUFDLFlBQVc7QUFDckQsV0FBTyxnQkFBQUEsTUFBQyxPQUFFLFNBQVMsTUFBTSxVQUFVLEVBQUMsTUFBWSxPQUFjLFNBQWtCLENBQUMsR0FBSSxnQkFBSztBQUFBLEVBQzlGLFdBRVMsU0FBUyxDQUFDLFlBQVksY0FBYyxjQUFjLENBQUMsWUFBVztBQUNuRSxXQUFPLGdCQUFBQSxNQUFDLE9BQUUsU0FBUyxNQUFNLFVBQVUsRUFBQyxNQUFZLE9BQWMsWUFBdUIsV0FBcUIsQ0FBQyxHQUFJLGdCQUFLO0FBQUEsRUFDeEgsV0FFUyxTQUFTLENBQUMsWUFBWSxjQUFjLGNBQWMsWUFBVztBQUNsRSxXQUFPLGdCQUFBQSxNQUFDLE9BQUUsU0FBUyxNQUFNLFVBQVUsRUFBQyxNQUFZLE9BQWMsWUFBdUIsWUFBdUIsV0FBcUIsQ0FBQyxHQUFJLGdCQUFLO0FBQUEsRUFDL0ksV0FFUyxTQUFTLENBQUMsWUFBWSxjQUFjLENBQUMsWUFBVztBQUNyRCxXQUFPLGdCQUFBQSxNQUFDLE9BQUUsU0FBUyxNQUFNLFVBQVUsRUFBQyxNQUFZLE9BQWMsV0FBcUIsQ0FBQyxHQUFJLGdCQUFLO0FBQUEsRUFDakcsV0FFUyxTQUFTLENBQUMsWUFBWSxDQUFDLGNBQWMsY0FBYyxDQUFDLFlBQVc7QUFDcEUsV0FBTyxnQkFBQUEsTUFBQyxPQUFFLFNBQVMsTUFBTSxVQUFVLEVBQUMsTUFBWSxPQUFjLFdBQXFCLENBQUMsR0FBSSxnQkFBSztBQUFBLEVBQ2pHLFdBRVMsU0FBUyxDQUFDLFlBQVksQ0FBQyxjQUFjLGNBQWMsWUFBVztBQUNuRSxXQUFPLGdCQUFBQSxNQUFDLE9BQUUsU0FBUyxNQUFNLFVBQVUsRUFBQyxNQUFZLE9BQWMsWUFBdUIsV0FBcUIsQ0FBQyxHQUFJLGdCQUFLO0FBQUEsRUFDeEgsV0FFUyxTQUFTLENBQUMsWUFBWSxDQUFDLGNBQWMsQ0FBQyxZQUFXO0FBQ3RELFdBQU8sZ0JBQUFBLE1BQUMsT0FBRSxTQUFTLE1BQU0sVUFBVSxFQUFDLE1BQVksTUFBVyxDQUFDLEdBQUksZ0JBQUs7QUFBQSxFQUN6RSxXQUVTLENBQUMsU0FBUyxjQUFjLGNBQWMsWUFBVztBQUN0RCxXQUFPLGdCQUFBQSxNQUFDLE9BQUUsU0FBUyxNQUFNLFVBQVUsRUFBQyxNQUFZLFlBQXVCLFlBQXVCLFdBQXFCLENBQUMsR0FBSSxnQkFBSztBQUFBLEVBQ2pJLFdBSVMsQ0FBQyxTQUFTLFlBQVksQ0FBQyxjQUFjLGNBQWMsQ0FBQyxZQUFXO0FBQ3BFLFdBQU8sZ0JBQUFBLE1BQUMsT0FBRSxTQUFTLE1BQU0sVUFBVSxFQUFDLE1BQVksWUFBdUIsU0FBaUIsQ0FBQyxHQUFJLGdCQUFLO0FBQUEsRUFDdEcsV0FFUyxDQUFDLFNBQVMsWUFBWSxDQUFDLGNBQWMsY0FBYyxZQUFXO0FBQ25FLFdBQU8sZ0JBQUFBLE1BQUMsT0FBRSxTQUFTLE1BQU0sVUFBVSxFQUFDLE1BQVksWUFBdUIsVUFBbUIsV0FBcUIsQ0FBQyxHQUFJLGdCQUFLO0FBQUEsRUFDN0gsV0FJUyxDQUFDLFNBQVMsQ0FBQyxZQUFZLGNBQWMsWUFBVztBQUNyRCxXQUFPLGdCQUFBQSxNQUFDLE9BQUUsU0FBUyxNQUFNLFVBQVUsRUFBQyxNQUFZLFlBQXVCLFdBQXFCLENBQUMsR0FBSSxnQkFBSztBQUFBLEVBQzFHLFdBRVMsQ0FBQyxTQUFTLENBQUMsWUFBWSxjQUFjLENBQUMsWUFBVztBQUN0RCxXQUFPLGdCQUFBQSxNQUFDLE9BQUUsU0FBUyxNQUFNLFVBQVUsRUFBQyxNQUFZLFdBQXFCLENBQUMsR0FBSSxnQkFBSztBQUFBLEVBQ25GLFdBRVMsQ0FBQyxTQUFTLENBQUMsWUFBWSxDQUFDLGNBQWMsWUFBVztBQUN0RCxXQUFPLGdCQUFBQSxNQUFDLE9BQUUsU0FBUyxNQUFNLFVBQVUsRUFBQyxNQUFZLFdBQXFCLENBQUMsR0FBSSxnQkFBSztBQUFBLEVBQ25GLE9BRUs7QUFDRCxXQUFPLGdCQUFBQSxNQUFDLE9BQUUsU0FBUyxNQUFNLFVBQVUsRUFBQyxLQUFVLENBQUMsR0FBSSxnQkFBSztBQUFBLEVBQzVEO0FBRUo7OztBQzVGVSxnQkFBQUMsYUFBQTs7O0FDQUEsZ0JBQUFDLGFBQUE7OztBQ0FBLGdCQUFBQyxhQUFBOzs7QUNBQSxnQkFBQUMsYUFBQTs7O0FDQUEsZ0JBQUFDLGFBQUE7OztBQ0FBLGdCQUFBQyxhQUFBOzs7QUNzQkoscUJBQUFDLFlBR0ksT0FBQUMsT0FTYyxRQUFBQyxjQVpsQjs7O0FDakJBLGdCQUFBQyxPQU1BLFFBQUFDLGNBTkE7OztBQ0hNLFNBQ0ksT0FBQUMsT0FESixRQUFBQyxjQUFBOzs7QUNZUixxQkFBQUMsWUFDNEIsT0FBQUMsT0FBNUIsUUFBQUMsY0FEQTs7O0FDQUEscUJBQUFDLFlBRzJCLE9BQUFDLE9BRHpCLFFBQUFDLGNBRkY7OztBQ1hZLGdCQUFBQyxPQVFBLFFBQUFDLGNBUkE7OztBQ01KLGdCQUFBQyxPQUVBLFFBQUFDLGNBRkE7OztBQ1RGLGdCQUFBQyxhQUFBO0FBSEssU0FBUix5QkFBeUM7QUFDNUMsU0FDSSxnQkFBQUEsTUFBQyxTQUNDLDBCQUFBQSxNQUFDLHVCQUFhLGVBQThCLEdBQzlDO0FBRVI7QUFHQSxJQUFNLGdCQUFnQjtBQUFBLEVBQ3RCO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUF3Qkc7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFpQkM7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFvQkE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBcUJKOzs7QUN6RlUsZ0JBQUFDLGFBQUE7QUFISyxTQUFSLDBCQUEwQztBQUM3QyxTQUNJLGdCQUFBQSxNQUFDLFNBQ0MsMEJBQUFBLE1BQUMsdUJBQWEsZUFBZUMsZ0JBQWUsR0FDOUM7QUFFUjtBQUdBLElBQU1BLGlCQUFnQjtBQUFBLEVBQ2xCO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUEwQ0o7OztBQ2pEVSxnQkFBQUMsYUFBQTtBQUhLLFNBQVIsc0JBQXNDO0FBQ3pDLFNBQ0ksZ0JBQUFBLE1BQUMsU0FDQywwQkFBQUEsTUFBQyx1QkFBYSxlQUFlQyxnQkFBZSxHQUM5QztBQUVSO0FBR0EsSUFBTUEsaUJBQWdCO0FBQUEsRUFDdEI7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBZ0JHO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFlQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQWlCQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFlSDs7O0FDdEVVLGdCQUFBQyxhQUFBO0FBSEssU0FBUixnQkFBZ0M7QUFDbkMsU0FDSSxnQkFBQUEsTUFBQyxTQUNDLDBCQUFBQSxNQUFDLHVCQUFhLGVBQWVDLGdCQUFlLEdBQzlDO0FBRVI7QUFHQSxJQUFNQSxpQkFBZ0I7QUFBQSxFQUN0QjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFzQkU7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBc0JBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBc0JGOzs7QUN6RVUsZ0JBQUFDLGFBQUE7QUFISyxTQUFSLG9CQUFvQztBQUN2QyxTQUNJLGdCQUFBQSxNQUFDLFNBQ0MsMEJBQUFBLE1BQUMsdUJBQWEsZUFBZUMsZ0JBQWUsR0FDOUM7QUFFUjtBQUdBLElBQU1BLGlCQUFnQjtBQUFBLEVBQ2xCO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQXNCRjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBcUJBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBc0JGOzs7QUNoRUksU0E4TlcsWUFBQUMsWUE1RWEsT0FBQUMsT0FsSnhCLFFBQUFDLGNBQUE7QUFISixTQUFTLG1CQUFtQixFQUFDLEtBQUssS0FBSSxHQUE4QjtBQUNsRSxRQUFNLEVBQUMsb0JBQW1CLElBQUksY0FBYztBQUM1QyxTQUNFLGdCQUFBQSxPQUFDLE9BQUUsU0FBUyxNQUFNLG9CQUFvQixLQUFLLEVBQUUsR0FBRztBQUFBO0FBQUEsSUFBRTtBQUFBLElBQUs7QUFBQSxLQUFDO0FBRTVEO0FBc0RBLElBQU0sT0FBa0M7QUFBQSxFQUN0QyxhQUFhO0FBQUEsRUFDYixLQUFLO0FBQUEsRUFDTCxVQUFVO0FBQUEsRUFDVixRQUFRO0FBQUEsRUFDUixVQUFVO0FBQUEsRUFDVixTQUFTO0FBQUEsRUFDVCxPQUFPO0FBQUEsRUFDUCxTQUFTO0FBQUEsRUFDVCxRQUFPO0FBQUEsRUFDUCxRQUFRO0FBQUEsRUFDUixTQUFTO0FBQUEsRUFDVCxZQUFZO0FBQUEsRUFDWixTQUFTO0FBQUEsRUFDVCxZQUFZO0FBQUEsRUFDWixRQUFRO0FBQUEsRUFDUixRQUFRO0FBQUEsRUFDUixRQUFRO0FBQUEsRUFDUixhQUFhO0FBQUEsRUFDYixhQUFRO0FBQUEsRUFDUixVQUFVO0FBQUEsRUFDVixRQUFRO0FBQUEsRUFDUixPQUFPO0FBQUEsRUFDUCxPQUFPO0FBQUEsRUFDUCxNQUFLO0FBQUEsRUFDTCxXQUFVO0FBQUEsRUFDVixVQUFTO0FBQUEsRUFDVCxXQUFVO0FBQUEsRUFDVixXQUFVO0FBQUEsRUFDVixnQkFBVTtBQUFBLEVBQ1YsU0FBUTtBQUFBLEVBQ1IsUUFBUTtBQUFBLEVBQ1IsT0FBTTtBQUFBLEVBQ04sUUFBTztBQUFBLEVBQ1AsZUFBZTtBQUFBLEVBQ2YsZ0JBQWdCO0FBQUEsRUFDaEIsT0FBTTtBQUFBLEVBQ04sT0FBTztBQUFBLEVBQ1AsTUFBTTtBQUFBLEVBQ04sVUFBVTtBQUFBLEVBQ1YsVUFBUztBQUFBLEVBQ1QsT0FBTTtBQUFBLEVBQ04sVUFBVTtBQUFBLEVBQ1YsVUFBVTtBQUFBLEVBQ1YsVUFBVTtBQUFBLEVBQ1YsT0FBTztBQUFBLEVBQ1AsV0FBVztBQUFBLEVBQ1gsU0FBUztBQUFBLEVBQ1QsUUFBUTtBQUFBLEVBQ1IsTUFBTTtBQUFBLEVBQ04sUUFBUTtBQUVWO0FBc0JPLElBQU0sZUFBMkM7QUFBQSxFQUN0RDtBQUFBLElBQ0UsU0FBUztBQUFBLElBQ1QsV0FBVztBQUFBLElBQ1gsWUFBWSxLQUFLLFVBQVU7QUFBQSxJQUMzQixLQUFLO0FBQUEsSUFDTCxhQUFhO0FBQUEsSUFDYixLQUFLO0FBQUEsSUFDTCxTQUFTO0FBQUEsSUFDVCxnQkFBZ0I7QUFBQSxJQUVoQixlQUFjO0FBQUEsSUFDZCxjQUFhO0FBQUEsSUFDYixPQUFPO0FBQUEsSUFDUCxNQUFNO0FBQUEsSUFDTixTQUFTO0FBQUEsTUFBQyxnQkFBQUEsT0FBQyxPQUFFO0FBQUE7QUFBQSxRQUNXLGdCQUFBRCxNQUFDLFdBQVEsTUFBSyxRQUFNLE1BQUssMEJBQXdCO0FBQUEsUUFBRTtBQUFBLFNBQStWO0FBQUEsTUFDeGEsZ0JBQUFBLE1BQUMsT0FBRSwwQkFBQUEsTUFBQyxPQUFFLHFRQUF1UCxHQUFJO0FBQUEsTUFBTSxnQkFBQUEsTUFBQyxPQUFFLDQxREFLMkc7QUFBQSxJQUFJO0FBQUEsSUFDM1gsUUFBUTtBQUFBLEVBQ1Y7QUFBQSxFQUNBO0FBQUEsSUFDRSxTQUFTO0FBQUEsSUFDVCxXQUFXO0FBQUEsSUFDWCxZQUFZLEtBQUssT0FBTztBQUFBLElBQ3hCLEtBQUs7QUFBQSxJQUNMLGFBQWE7QUFBQSxJQUNiLEtBQUs7QUFBQSxJQUNMLFNBQVM7QUFBQSxJQUNULGdCQUFnQjtBQUFBLElBRWhCLGVBQWU7QUFBQSxJQUNmLGNBQWM7QUFBQSxJQUNkLE9BQU87QUFBQSxJQUNQLE1BQU07QUFBQSxJQUNOLFNBQVM7QUFBQSxNQUFDLGdCQUFBQyxPQUFDLE9BQUU7QUFBQTtBQUFBLFFBQXNILGdCQUFBRCxNQUFDLE9BQUUsOEJBQWdCO0FBQUEsUUFBSTtBQUFBLFNBQTRFO0FBQUEsTUFDcE8sZ0JBQUFDLE9BQUMsT0FBRTtBQUFBO0FBQUEsUUFBcUMsZ0JBQUFELE1BQUMsT0FBRSxvQ0FBc0I7QUFBQSxRQUFJO0FBQUEsU0FBK2tCO0FBQUEsTUFDcHBCLGdCQUFBQyxPQUFDLE9BQUU7QUFBQTtBQUFBLFFBQTBDLGdCQUFBRCxNQUFDLE9BQUUsK0NBQWlDO0FBQUEsUUFBSTtBQUFBLFNBQWlrQjtBQUFBLE1BQ3RwQixnQkFBQUMsT0FBQyxPQUFFO0FBQUE7QUFBQSxRQUFpRCxnQkFBQUQsTUFBQyxPQUFFLGtDQUFvQjtBQUFBLFFBQUk7QUFBQSxTQUFxYjtBQUFBLE1BQ3BnQixnQkFBQUMsT0FBQyxPQUFFO0FBQUE7QUFBQSxRQUFpRixnQkFBQUQsTUFBQyxPQUFFLDhCQUFnQjtBQUFBLFFBQUk7QUFBQSxTQUEwYjtBQUFBLElBQ3JpQjtBQUFBLElBQ0YsUUFBUTtBQUFBLEVBQ1Y7QUFBQSxFQUNBO0FBQUEsSUFDRSxTQUFTO0FBQUEsSUFDVCxXQUFXO0FBQUEsSUFDWCxZQUFZLEtBQUssU0FBUztBQUFBLElBQzFCLEtBQUs7QUFBQSxJQUNMLGFBQWE7QUFBQSxJQUNiLEtBQUs7QUFBQSxJQUNMLFNBQVM7QUFBQSxJQUNULGdCQUFnQjtBQUFBLElBRWhCLE9BQU87QUFBQSxJQUNQLGNBQWE7QUFBQSxJQUNiLGVBQWU7QUFBQSxJQUNmLFNBQVM7QUFBQSxNQUFDLGdCQUFBQSxNQUFDLE9BQUUsNllBQytIO0FBQUEsTUFDMUksZ0JBQUFBLE1BQUMsT0FBRSxtekJBQ3lXO0FBQUEsTUFDNVcsZ0JBQUFBLE1BQUMsT0FBRSxrYkFBb2E7QUFBQSxJQUFJO0FBQUEsSUFDN2EsVUFBVSxDQUFDLGdCQUFBQyxPQUFDLFNBQUksV0FBVSxPQUN4QjtBQUFBLHNCQUFBRCxNQUFDLFNBQUksV0FBVSxPQUFNLDBCQUFBQSxNQUFDLFNBQUksS0FBSSwyRUFBMEUsR0FDeEc7QUFBQSxNQUNBLGdCQUFBQyxPQUFDLFNBQUksV0FBVSxPQUFNO0FBQUEsd0JBQUFBLE9BQUMsT0FBRTtBQUFBO0FBQUEsVUFBd0ssZ0JBQUFELE1BQUMsV0FBUSxNQUFLLGdCQUFjLE9BQU0sZ0JBQWUsWUFBVyx1QkFBc0IsTUFBSyxPQUFLO0FBQUEsVUFBRTtBQUFBLFVBQVc7QUFBQSxXQUEwUjtBQUFBLFFBQ25rQixnQkFBQUEsTUFBQyxRQUFFO0FBQUEsUUFDSCxnQkFBQUEsTUFBQyxPQUFFLG9nQ0FBcy9CO0FBQUEsUUFDei9CLGdCQUFBQSxNQUFDLFFBQUU7QUFBQSxRQUNILGdCQUFBQSxNQUFDLE9BQUUseWJBQXdhO0FBQUEsU0FBSTtBQUFBLE9BQ2piLENBQU07QUFBQSxJQUNOLFFBQVE7QUFBQSxFQUNWO0FBQUEsRUFDQTtBQUFBLElBQ0UsU0FBUztBQUFBLElBQ1QsV0FBVztBQUFBLElBQ1gsS0FBSztBQUFBLElBQ0wsYUFBYTtBQUFBLElBQ2IsWUFBWSxLQUFLLEtBQUs7QUFBQSxJQUN0QixLQUFLO0FBQUEsSUFDTCxTQUFTO0FBQUEsSUFDVCxnQkFBZ0I7QUFBQSxJQUNoQixVQUFVO0FBQUEsSUFDVixlQUFjO0FBQUEsSUFDZCxjQUFjO0FBQUEsSUFDZCxPQUFPO0FBQUEsSUFDUCxjQUFjLENBQUMsZ0JBQUFBLE1BQUMsT0FBRSxpbEJBRWdGLENBQUk7QUFBQSxJQUN0RyxVQUFVLENBQUMsZ0JBQUFDLE9BQUFGLFlBQUEsRUFBRTtBQUFBLHNCQUFBQyxNQUFDLE9BQUUsK1JBRWhCO0FBQUEsTUFDRSxnQkFBQUEsTUFBQyxPQUFFLDhYQUlzRDtBQUFBLE1BQ3pELGdCQUFBQSxNQUFDLE9BQUUsb1dBS3NEO0FBQUEsTUFDekQsZ0JBQUFBLE1BQUMsT0FBRSxtN0NBTXFQO0FBQUEsT0FDMVAsQ0FBRztBQUFBLElBQ0gsZ0JBQWdCLENBQUMsZ0JBQUFDLE9BQUFGLFlBQUEsRUFBRTtBQUFBO0FBQUEsTUFBQyxnQkFBQUMsTUFBQyxPQUFFLHVQQUF5TztBQUFBLE1BQzlQLGdCQUFBQyxPQUFDLE9BQUU7QUFBQTtBQUFBLFFBQTJHLGdCQUFBRCxNQUFDLFdBQVEsTUFBSyxXQUFVLE9BQU0sV0FBVSxZQUFXLGtDQUFpQyxNQUFLLDhCQUE0QjtBQUFBLFFBQUU7QUFBQSxRQUFXO0FBQUEsUUFBSyxnQkFBQUEsTUFBQyxXQUFRLE1BQUssV0FBVSxPQUFNLFdBQVUsWUFBVyxtQkFBa0IsTUFBSyxxQkFBbUI7QUFBQSxRQUFFO0FBQUEsUUFBVztBQUFBLFNBQWtYO0FBQUEsT0FBSSxDQUFHO0FBQUEsSUFDMXRCLDJCQUEyQjtBQUFBLElBQzNCLFdBQVcsZ0JBQUFDLE9BQUFGLFlBQUEsRUFBRTtBQUFBLHNCQUFBQyxNQUFDLFNBQU0sR0FBRSwyQ0FBMEMsR0FBRSxzUkFBcVI7QUFBQSxNQUNyVixnQkFBQUEsTUFBQyxTQUFNLEdBQUUsdURBQXNELEdBQUUseUxBQXdMO0FBQUEsTUFDelAsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLDhCQUE2QixHQUFFLHVOQUFzTjtBQUFBLE1BQzlQLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSxtSEFBa0gsR0FBRSx3QkFBdUI7QUFBQSxNQUNwSixnQkFBQUEsTUFBQyxTQUFNLEdBQUUsMkNBQTBDLEdBQUUsK0hBQThIO0FBQUEsTUFDbkwsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLHNDQUFxQyxHQUFFLDBRQUFvUTtBQUFBLE1BQ3BULGdCQUFBQSxNQUFDLFNBQU0sR0FBRSx5REFBd0QsR0FBRSx5SEFBd0g7QUFBQSxNQUMzTCxnQkFBQUEsTUFBQyxTQUFNLEdBQUUsMkNBQTBDLEdBQUUsd0ZBQWtGO0FBQUEsTUFDdkksZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLDZEQUE0RCxHQUFFLDZFQUE0RTtBQUFBLE1BQ25KLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSxtQ0FBa0MsR0FBRSwySUFBMEk7QUFBQSxNQUN2TCxnQkFBQUEsTUFBQyxTQUFNLEdBQUUscUhBQW9ILEdBQUUsc0ZBQXFGO0FBQUEsTUFDcE4sZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLG1FQUFrRSxHQUFFLHlCQUF3QjtBQUFBLE1BQ3JHLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSx3RkFBdUYsR0FBRSx1S0FBc0s7QUFBQSxNQUN4USxnQkFBQUEsTUFBQyxTQUFNLEdBQUUscURBQW9ELEdBQUUseVFBQXdRO0FBQUEsTUFDdlUsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLHlFQUF3RSxHQUFFLDJGQUEwRjtBQUFBLE1BQzdLLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSxpREFBZ0QsR0FBRSxzTkFBcU47QUFBQSxNQUNoUixnQkFBQUEsTUFBQyxTQUFNLEdBQUUsa0lBQWlJLEdBQUUsMlBBQWdQO0FBQUEsTUFDNVgsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLG1GQUFrRixHQUFFLHlXQUF3VztBQUFBLE1BQ3JjLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSw2REFBNEQsR0FBRSwyS0FBMEs7QUFBQSxNQUNqUCxnQkFBQUEsTUFBQyxTQUFNLEdBQUUsZ0dBQStGLEdBQUUsK0hBQThIO0FBQUEsTUFDeE8sZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLHFDQUFvQyxHQUFFLG9FQUFtRTtBQUFBLE1BQ2xILGdCQUFBQSxNQUFDLFNBQU0sR0FBRSw2REFBNEQsR0FBRSwyVkFBMFY7QUFBQSxNQUNqYSxnQkFBQUEsTUFBQyxTQUFNLEdBQUUsdUZBQWlGLEdBQUUscUZBQWlGO0FBQUEsTUFDN0ssZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLGdEQUErQyxHQUFFLDRFQUEyRTtBQUFBLE1BQ3JJLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSxxRUFBb0UsR0FBRSw0Q0FBMkM7QUFBQSxNQUMxSCxnQkFBQUEsTUFBQyxTQUFNLEdBQUUsK0RBQThELEdBQUUsaUdBQTJGO0FBQUEsTUFDcEssZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLDJGQUEwRixHQUFFLGtJQUFpSTtBQUFBLE1BQ3RPLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSw2REFBNEQsR0FBRSx3RUFBdUU7QUFBQSxNQUM5SSxnQkFBQUEsTUFBQyxTQUFNLEdBQUUsd0RBQXVELEdBQUUscUhBQW9IO0FBQUEsTUFDdEwsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLHNIQUFvSCxHQUFFLGlSQUFnUjtBQUFBLE1BQy9ZLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSw0RUFBMkUsR0FBRSxnRkFBK0U7QUFBQSxNQUNySyxnQkFBQUEsTUFBQyxTQUFNLEdBQUUsa0dBQWlHLEdBQUUsOEZBQTZGO0FBQUEsTUFDek0sZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLGdGQUErRSxHQUFFLDRQQUEyUDtBQUFBLE1BQ3JWLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSwwREFBeUQsR0FBRSw4RkFBNkY7QUFBQSxNQUNqSyxnQkFBQUEsTUFBQyxTQUFNLEdBQUUsNkZBQTRGLEdBQUUscUlBQW9JO0FBQUEsTUFDM08sZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLHNHQUEyRixHQUFFLDBFQUF5RTtBQUFBLE1BQy9LLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSxvRUFBbUUsR0FBRSxpREFBZ0Q7QUFBQSxNQUM5SCxnQkFBQUEsTUFBQyxTQUFNLEdBQUUsNEhBQTJILEdBQUUsdUJBQWlCO0FBQUEsTUFDdkosZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLG9FQUFtRSxHQUFFLDZGQUE0RjtBQUFBLE9BQzVLO0FBQUEsSUFDQSxTQUFTO0FBQUEsSUFDVCxRQUFRO0FBQUE7QUFBQSxFQUVWO0FBQUEsRUFDQTtBQUFBLElBQ0UsU0FBUztBQUFBLElBQ1QsV0FBVztBQUFBLElBQ1gsWUFBWSxLQUFLLGVBQWU7QUFBQSxJQUNoQyxLQUFLO0FBQUEsSUFDTCxhQUFhO0FBQUEsSUFDYixLQUFLO0FBQUEsSUFDTCxTQUFTO0FBQUEsSUFDVCxnQkFBZ0I7QUFBQSxJQUVoQixPQUFPO0FBQUEsSUFDUCxlQUFlO0FBQUEsSUFDZixjQUFjO0FBQUEsSUFDZCxTQUFTO0FBQUEsSUFDVCxRQUFRO0FBQUEsSUFDUiwyQkFBMkI7QUFBQSxFQUM3QjtBQUFBLEVBQ0E7QUFBQSxJQUNFLE9BQU87QUFBQSxJQUNQLFNBQVM7QUFBQSxJQUNULFdBQVc7QUFBQSxJQUNYLEtBQUs7QUFBQSxJQUNMLGFBQWE7QUFBQSxJQUNiLFlBQVksS0FBSyxVQUFVO0FBQUEsSUFDM0IsS0FBSztBQUFBLElBQ0wsU0FBUztBQUFBLElBQ1QsZ0JBQWdCO0FBQUEsSUFDaEIsVUFBVTtBQUFBLElBQ1YsZUFBZTtBQUFBLElBQ2YsY0FBYztBQUFBLElBQ2QsT0FBTztBQUFBLElBQ1AsY0FBYyxDQUFDLGdCQUFBQSxNQUFDLE9BQUUsK2pCQUFzaUIsQ0FBSTtBQUFBLElBQzVqQixVQUFVLENBQUMsZ0JBQUFBLE1BQUMsT0FBRSxxckVBR3VzQixDQUFJO0FBQUEsSUFDenRCLGdCQUFnQixDQUFDLGdCQUFBQyxPQUFDLE9BQUU7QUFBQTtBQUFBLE1BQXdNLGdCQUFBRCxNQUFDLFdBQVEsTUFBSyxlQUFhLE9BQU0sWUFBVyxZQUFXLFlBQVcsTUFBSyxrQkFBZ0I7QUFBQSxNQUFFO0FBQUEsT0FBNFcsQ0FBSTtBQUFBLElBQ3JxQixTQUFTLENBQUMsZ0JBQUFDLE9BQUMsT0FBRTtBQUFBO0FBQUEsTUFBMGIsZ0JBQUFELE1BQUMsV0FBUSxNQUFLLGVBQWEsT0FBTSxZQUFXLFlBQVcsWUFBVyxNQUFLLGdCQUFjO0FBQUEsTUFBRTtBQUFBLE9BQThSLENBQUk7QUFBQSxJQUNoMEIsUUFBUTtBQUFBLElBQ1IsV0FBVSxnQkFBQUMsT0FBQUYsWUFBQSxFQUFFO0FBQUEsc0JBQUFDLE1BQUMsWUFBTyxPQUFNLHNFQUFrRSxPQUFNLE9BQU0sUUFBTyxPQUFNLEtBQUksNEVBQTJFLGFBQVksS0FBSSxpQkFBaUIsTUFBTSxTQUFRLDREQUEyRDtBQUFBLE1BQVMsZ0JBQUFBLE1BQUMsT0FBRSxtRUFBcUQ7QUFBQSxPQUFJO0FBQUEsRUFDclg7QUFBQSxFQUNBO0FBQUEsSUFDRSxTQUFTO0FBQUEsSUFDVCxXQUFXO0FBQUEsSUFDWCxZQUFZLEtBQUssTUFBTTtBQUFBLElBQ3ZCLEtBQUs7QUFBQSxJQUNMLGFBQWE7QUFBQSxJQUNiLEtBQUs7QUFBQSxJQUNMLFNBQVM7QUFBQSxJQUNULGdCQUFnQjtBQUFBLElBRWhCLE9BQU87QUFBQSxJQUNQLGVBQWM7QUFBQSxJQUNkLGNBQWM7QUFBQSxJQUNkLE1BQU07QUFBQSxJQUNOLFNBQVM7QUFBQSxNQUFDLGdCQUFBQSxNQUFDLE9BQUUsd3lDQUU4YztBQUFBLE1BQ3pkLGdCQUFBQyxPQUFDLFFBQ0Q7QUFBQSx3QkFBQUEsT0FBQyxRQUNHO0FBQUEsMEJBQUFELE1BQUMsT0FBRSx3Q0FBMEI7QUFBQSxVQUFJO0FBQUEsV0FDckM7QUFBQSxRQUNBLGdCQUFBQyxPQUFDLFFBQ0c7QUFBQSwwQkFBQUQsTUFBQyxPQUFFLGdDQUFrQjtBQUFBLFVBQUk7QUFBQSxXQUM3QjtBQUFBLFFBQ0EsZ0JBQUFDLE9BQUMsUUFDRztBQUFBLDBCQUFBRCxNQUFDLE9BQUUsb0NBQXNCO0FBQUEsVUFBSTtBQUFBLFdBQ2pDO0FBQUEsUUFDQSxnQkFBQUMsT0FBQyxRQUNHO0FBQUEsMEJBQUFELE1BQUMsT0FBRSxrQ0FBb0I7QUFBQSxVQUFJO0FBQUEsV0FDL0I7QUFBQSxRQUNBLGdCQUFBQyxPQUFDLFFBQ0c7QUFBQSwwQkFBQUQsTUFBQyxPQUFFLDJDQUE2QjtBQUFBLFVBQUk7QUFBQSxXQUN4QztBQUFBLFNBQ0o7QUFBQSxJQUVFO0FBQUEsSUFFQSxRQUFRO0FBQUEsRUFDVjtBQUFBLEVBQ0E7QUFBQSxJQUNFLFNBQVM7QUFBQSxJQUNULFdBQVc7QUFBQSxJQUNYLFlBQVksS0FBSyxXQUFXO0FBQUEsSUFDNUIsS0FBSztBQUFBLElBQ0wsYUFBYTtBQUFBLElBQ2IsS0FBSztBQUFBLElBQ0wsU0FBUztBQUFBLElBQ1QsZ0JBQWdCO0FBQUEsSUFFaEIsT0FBTztBQUFBLElBQ1AsZUFBZTtBQUFBLElBQ2YsY0FBYztBQUFBLElBQ2QsU0FBUztBQUFBLElBQ1QsUUFBUTtBQUFBLElBQ1IsZ0JBQWdCO0FBQUEsRUFDbEI7QUFBQSxFQUNBO0FBQUEsSUFDRSxTQUFTO0FBQUEsSUFDVCxXQUFXO0FBQUEsSUFDWCxLQUFLO0FBQUEsSUFDTCxhQUFhO0FBQUEsSUFDYixZQUFZLEtBQUssT0FBTztBQUFBLElBQ3hCLEtBQUs7QUFBQSxJQUNMLFNBQVM7QUFBQSxJQUNULGdCQUFnQjtBQUFBLElBRWhCLFVBQVU7QUFBQSxJQUNWLGVBQWM7QUFBQSxJQUNkLGNBQWM7QUFBQSxJQUNkLE9BQU87QUFBQSxJQUNQLGNBQWMsQ0FBQyxnQkFBQUEsTUFBQyxPQUFFLG9ZQUN1TCxDQUFJO0FBQUEsSUFDN00sVUFBVTtBQUFBLE1BQUMsZ0JBQUFBLE1BQUMsT0FBRSw2dkJBR3dHO0FBQUEsTUFDdEgsZ0JBQUFBLE1BQUMsT0FBRSxvbUJBRStKO0FBQUEsSUFBSTtBQUFBLElBQ3RLLGdCQUFnQixDQUFDLGdCQUFBQyxPQUFDLE9BQUU7QUFBQTtBQUFBLE1BQ2xCLGdCQUFBQSxPQUFDLFFBQ0M7QUFBQSx3QkFBQUQsTUFBQyxRQUFHLG9PQUFzTjtBQUFBLFFBQzFOLGdCQUFBQSxNQUFDLFFBQUcsMk9BQTZOO0FBQUEsUUFDak8sZ0JBQUFBLE1BQUMsUUFBRyw4WUFBZ1k7QUFBQSxTQUN0WTtBQUFBLE1BQUs7QUFBQSxPQUNQLENBQUk7QUFBQSxJQUNKLFNBQVM7QUFBQSxJQUNULFFBQVE7QUFBQSxFQUNWO0FBQUEsRUFDQTtBQUFBLElBQ0UsT0FBTztBQUFBLElBQ1AsU0FBUztBQUFBLElBQ1QsV0FBVztBQUFBLElBQ1gsS0FBSztBQUFBLElBQ0wsYUFBYTtBQUFBLElBQ2IsWUFBWSxLQUFLLFFBQVE7QUFBQSxJQUN6QixLQUFLO0FBQUEsSUFDTCxTQUFTO0FBQUEsSUFDVCxnQkFBZ0I7QUFBQSxJQUVoQixVQUFVO0FBQUEsSUFDVixlQUFlO0FBQUEsSUFDZixjQUFjO0FBQUEsSUFDZCxPQUFPO0FBQUEsSUFDUCxjQUFjO0FBQUEsSUFDZCxVQUFVLENBQUMsZ0JBQUFDLE9BQUMsU0FBSSxXQUFVLE9BQ3hCO0FBQUEsc0JBQUFBLE9BQUMsU0FBSSxXQUFVLE9BQU07QUFBQSx3QkFBQUQsTUFBQyxTQUFJLEtBQUksdUVBQXNFO0FBQUEsUUFDcEcsZ0JBQUFBLE1BQUMsUUFBRTtBQUFBLFFBQ0gsZ0JBQUFBLE1BQUMsUUFBRTtBQUFBLFFBQ0gsZ0JBQUFBLE1BQUMsUUFBRTtBQUFBLFFBQ0gsZ0JBQUFBLE1BQUMsUUFBRTtBQUFBLFFBQ0gsZ0JBQUFBLE1BQUMsU0FBSSxLQUFJLG1FQUFrRTtBQUFBLFNBQzNFO0FBQUEsTUFDQSxnQkFBQUMsT0FBQyxTQUFJLFdBQVUsT0FBTTtBQUFBLHdCQUFBQSxPQUFDLE9BQUU7QUFBQTtBQUFBLFVBQXFMLGdCQUFBRCxNQUFDLE9BQUUsTUFBSyx5QkFBeUIsZ0NBQWtCO0FBQUEsVUFBSTtBQUFBLFdBQWtuQztBQUFBLFFBQ3QzQyxnQkFBQUEsTUFBQyxPQUFFLG1sREFBZ2tEO0FBQUEsU0FDbmtEO0FBQUEsT0FDRixDQUFNO0FBQUEsSUFDTixnQkFBZ0IsQ0FBQyxnQkFBQUMsT0FBQyxPQUFFO0FBQUE7QUFBQSxNQUFnWixnQkFBQUQsTUFBQyxPQUFFLDhCQUFnQjtBQUFBLE1BQUk7QUFBQSxPQUE4WixDQUFJO0FBQUEsSUFDNzFCLFdBQVcsZ0JBQUFDLE9BQUFGLFlBQUEsRUFDVDtBQUFBLHNCQUFBQyxNQUFDLFNBQU0sR0FBRSxtSkFBa0osR0FBRSwybEJBQTBsQjtBQUFBLE1BQ3Z2QixnQkFBQUEsTUFBQyxTQUFNLEdBQUUseUVBQXdFLEdBQUUsaWtCQUFzakI7QUFBQSxNQUN6b0IsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLG1FQUFrRSxHQUFFLDZvQkFBd25CO0FBQUEsTUFDcnNCLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSxxRUFBb0UsR0FBRSxzdEJBQTJzQjtBQUFBLE1BQzF4QixnQkFBQUEsTUFBQyxTQUFNLEdBQUUsbUhBQTZHLEdBQUUsK2NBQXljO0FBQUEsTUFDamtCLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSxzRUFBcUUsR0FBRSxta0JBQTZqQjtBQUFBLE1BQzdvQixnQkFBQUEsTUFBQyxTQUFNLEdBQUUscUdBQW9HLEdBQUUsaW5CQUFzbUI7QUFBQSxNQUNydEIsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLHVFQUFzRSxHQUFFLG9pQkFBeWhCO0FBQUEsTUFDMW1CLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSx3RUFBdUUsR0FBRSx3ZkFBNmU7QUFBQSxNQUMvakIsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLDRFQUEyRSxHQUFFLHFRQUFvUTtBQUFBLE1BQzFWLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSxvREFBbUQsR0FBRSw2VEFBNFQ7QUFBQSxNQUMxWCxnQkFBQUEsTUFBQyxTQUFNLEdBQUUscUVBQW9FLEdBQUUsbU9BQWtPO0FBQUEsTUFDalQsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLHNFQUFxRSxHQUFFLHNUQUEyUztBQUFBLE1BQzNYLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSw4RUFBNkUsR0FBRSwrYkFBb2I7QUFBQSxNQUM1Z0IsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLHNFQUFxRSxHQUFFLGthQUFrWjtBQUFBLE1BQ2xlLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSxrREFBaUQsR0FBRSw4ZUFBNmU7QUFBQSxPQUMzaUI7QUFBQSxJQUNBLGdCQUFnQjtBQUFBLElBQ2hCLFNBQVM7QUFBQSxJQUNULFFBQVE7QUFBQSxFQUNWO0FBQUEsRUFDQTtBQUFBLElBQ0UsU0FBUztBQUFBLElBQ1QsV0FBVztBQUFBLElBQ1gsWUFBWSxLQUFLLE1BQU07QUFBQSxJQUN2QixLQUFLO0FBQUEsSUFDTCxLQUFLO0FBQUEsSUFDTCxhQUFhO0FBQUEsSUFDYixTQUFTO0FBQUEsSUFDVCxnQkFBZ0I7QUFBQSxJQUVoQixPQUFPO0FBQUEsSUFDUCxlQUFjO0FBQUEsSUFDZCxjQUFjO0FBQUEsSUFDZCxNQUFNO0FBQUEsSUFDTixTQUFTO0FBQUEsTUFBQyxnQkFBQUEsTUFBQyxPQUFFLDBtQ0FHNmI7QUFBQSxNQUN4YyxnQkFBQUMsT0FBQyxRQUNHO0FBQUEsd0JBQUFBLE9BQUMsUUFDRztBQUFBLDBCQUFBRCxNQUFDLE9BQUUsMENBQTRCO0FBQUEsVUFBSTtBQUFBLFdBQ3ZDO0FBQUEsUUFDQSxnQkFBQUMsT0FBQyxRQUNHO0FBQUEsMEJBQUFELE1BQUMsT0FBRSxnREFBa0M7QUFBQSxVQUFJO0FBQUEsV0FDN0M7QUFBQSxRQUNBLGdCQUFBQyxPQUFDLFFBQ0c7QUFBQSwwQkFBQUQsTUFBQyxPQUFFLHdDQUEwQjtBQUFBLFVBQUk7QUFBQSxXQUNyQztBQUFBLFNBQ0o7QUFBQSxJQUNFO0FBQUEsSUFDSixRQUFRO0FBQUEsRUFDVjtBQUFBLEVBQ0E7QUFBQSxJQUNFLFNBQVM7QUFBQSxJQUNULFdBQVc7QUFBQSxJQUNYLEtBQUs7QUFBQSxJQUNMLGFBQWE7QUFBQSxJQUNiLFlBQVksS0FBSyxVQUFVO0FBQUEsSUFDM0IsS0FBSztBQUFBLElBQ0wsU0FBUztBQUFBLElBQ1QsZ0JBQWdCO0FBQUEsSUFFaEIsVUFBVTtBQUFBLElBQ1YsZUFBYztBQUFBLElBQ2QsY0FBYztBQUFBLElBQ2QsT0FBTztBQUFBLElBQ1AsY0FBYztBQUFBLElBQ2QsVUFBVTtBQUFBLElBQ1YsZ0JBQWdCO0FBQUEsSUFDaEIsc0JBQXNCO0FBQUEsSUFDdEIsU0FBUyxDQUFDLGdCQUFBQSxNQUFDLE9BQUUsMG5CQUFtb0IsQ0FBSTtBQUFBLElBQ3BwQixRQUFRO0FBQUEsSUFDUixXQUFVLGdCQUFBQyxPQUFBRixZQUFBLEVBQ1Y7QUFBQSxzQkFBQUMsTUFBQyxTQUFNLEdBQUUscUdBQW9HLEdBQUUsdVpBQXFaO0FBQUEsTUFDcGdCLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSxxQ0FBb0MsR0FBRSxzY0FBb2M7QUFBQSxNQUNuZixnQkFBQUEsTUFBQyxTQUFNLEdBQUUsNkJBQTRCLEdBQUUsaUVBQStEO0FBQUEsTUFDdEcsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLDhEQUE2RCxHQUFFLGdGQUE4RTtBQUFBLE1BQ3RKLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSwwQ0FBeUMsR0FBRSw2U0FBMlM7QUFBQSxNQUMvVixnQkFBQUEsTUFBQyxTQUFNLEdBQUUsd0RBQXVELEdBQUUsd0xBQWlMO0FBQUEsTUFDblAsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLGdGQUErRSxHQUFFLGdVQUE4VDtBQUFBLE1BQ3haLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSxrRkFBaUYsR0FBRSx1SkFBcUo7QUFBQSxNQUNqUCxnQkFBQUEsTUFBQyxTQUFNLEdBQUUsMkNBQTBDLEdBQUUsa0xBQWdMO0FBQUEsTUFDck8sZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLGdEQUErQyxHQUFFLHlPQUF1TztBQUFBLE1BQ2pTLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSwrREFBOEQsR0FBRSx5TkFBdU47QUFBQSxNQUNoUyxnQkFBQUEsTUFBQyxTQUFNLEdBQUUsbUZBQWtGLEdBQUUsNE9BQTBPO0FBQUEsTUFDdlUsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLHVIQUFzSCxHQUFFLDZLQUEySztBQUFBLE1BQzVTLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSxzREFBcUQsR0FBRSx3RkFBc0Y7QUFBQSxNQUN0SixnQkFBQUEsTUFBQyxTQUFNLEdBQUUsaURBQWdELEdBQUUsK0ZBQTZGO0FBQUEsTUFDeEosZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLG1DQUFrQyxHQUFFLDBPQUFxTztBQUFBLE1BQ2xSLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSxvREFBbUQsR0FBRSxtS0FBaUs7QUFBQSxPQUMvTjtBQUFBLEVBQ0Y7QUFBQSxFQUNBO0FBQUEsSUFDRSxPQUFPO0FBQUEsSUFDUCxTQUFTO0FBQUEsSUFDVCxXQUFXO0FBQUEsSUFDWCxLQUFLO0FBQUEsSUFDTCxhQUFhO0FBQUEsSUFDYixZQUFZLEtBQUssVUFBVTtBQUFBLElBQzNCLEtBQUs7QUFBQSxJQUNMLFNBQVM7QUFBQSxJQUNULGdCQUFnQjtBQUFBLElBRWhCLFVBQVU7QUFBQSxJQUNWLGVBQWM7QUFBQSxJQUNkLGNBQWM7QUFBQSxJQUNkLE9BQU87QUFBQSxJQUNQLGNBQWM7QUFBQSxJQUNkLFVBQVU7QUFBQSxJQUNWLGdCQUFnQjtBQUFBLElBQ2hCLFNBQVM7QUFBQSxJQUNULFFBQVE7QUFBQSxJQUNSLHNCQUFzQjtBQUFBLEVBQ3hCO0FBQUEsRUFDQTtBQUFBLElBQ0UsU0FBUztBQUFBLElBQ1QsV0FBVztBQUFBLElBQ1gsWUFBWSxLQUFLLE1BQU07QUFBQSxJQUN2QixLQUFLO0FBQUEsSUFDTCxLQUFLO0FBQUEsSUFDTCxhQUFhO0FBQUEsSUFDYixTQUFTO0FBQUEsSUFDVCxnQkFBZ0I7QUFBQSxJQUVoQixPQUFPO0FBQUEsSUFDUCxlQUFjO0FBQUEsSUFDZCxjQUFjO0FBQUEsSUFDZCxNQUFNO0FBQUEsSUFDTixTQUFTO0FBQUEsTUFBQyxnQkFBQUEsTUFBQyxPQUFFLDJpQ0FFVDtBQUFBLE1BRUEsZ0JBQUFDLE9BQUMsUUFDRztBQUFBLHdCQUFBQSxPQUFDLFFBQ0c7QUFBQSwwQkFBQUQsTUFBQyxPQUFFLG1EQUFxQztBQUFBLFVBQUk7QUFBQSxXQUNoRDtBQUFBLFFBQ0EsZ0JBQUFDLE9BQUMsUUFDRztBQUFBLDBCQUFBRCxNQUFDLE9BQUUsb0dBQXNGO0FBQUEsVUFBSTtBQUFBLFdBQ2pHO0FBQUEsUUFDQSxnQkFBQUMsT0FBQyxRQUNHO0FBQUEsMEJBQUFELE1BQUMsT0FBRSx1REFBeUM7QUFBQSxVQUFJO0FBQUEsV0FDcEQ7QUFBQSxRQUNBLGdCQUFBQyxPQUFDLFFBQ0c7QUFBQSwwQkFBQUQsTUFBQyxPQUFFLCtDQUFpQztBQUFBLFVBQUk7QUFBQSxXQUM1QztBQUFBLFFBQ0EsZ0JBQUFDLE9BQUMsUUFDRztBQUFBLDBCQUFBRCxNQUFDLE9BQUUsMkRBQTZDO0FBQUEsVUFBSTtBQUFBLFdBQ3hEO0FBQUEsU0FDSjtBQUFBLElBQ0E7QUFBQSxJQUNKLFFBQVE7QUFBQSxFQUNWO0FBQUEsRUFDQTtBQUFBLElBQ0UsU0FBUztBQUFBLElBQ1QsV0FBVztBQUFBLElBQ1gsWUFBWSxLQUFLLFVBQVU7QUFBQSxJQUMzQixLQUFLO0FBQUEsSUFDTCxLQUFLO0FBQUEsSUFDTCxhQUFhO0FBQUEsSUFDYixTQUFTO0FBQUEsSUFDVCxnQkFBZ0I7QUFBQSxJQUNoQixNQUFNO0FBQUEsSUFFTixlQUFlO0FBQUEsSUFDZixjQUFjO0FBQUEsSUFDZCxPQUFPO0FBQUEsSUFDUCxTQUFTLENBQUMsZ0JBQUFDLE9BQUMsT0FBRTtBQUFBO0FBQUEsTUFBcUM7QUFBQSxPQUFnckIsQ0FBSTtBQUFBLElBQ3R1QixRQUFRO0FBQUEsRUFDVjtBQUFBLEVBQ0E7QUFBQSxJQUNFLE9BQU87QUFBQSxJQUNQLFNBQVM7QUFBQSxJQUNULFdBQVc7QUFBQSxJQUNYLEtBQUs7QUFBQSxJQUNMLGFBQWE7QUFBQSxJQUNiLFlBQVk7QUFBQSxJQUNaLEtBQUs7QUFBQSxJQUNMLFNBQVM7QUFBQSxJQUNULGdCQUFnQjtBQUFBLElBRWhCLFVBQVU7QUFBQSxJQUNWLGVBQWU7QUFBQSxJQUNmLGNBQWM7QUFBQSxJQUNkLE9BQU87QUFBQSxJQUNQLGNBQWM7QUFBQSxJQUNkLFVBQVU7QUFBQSxJQUNWLGdCQUFnQjtBQUFBLElBQ2hCLFNBQVM7QUFBQSxJQUNULFFBQVE7QUFBQSxFQUNWO0FBQUEsRUFDQTtBQUFBLElBQ0UsU0FBUztBQUFBLElBQ1QsV0FBVztBQUFBLElBQ1gsS0FBSztBQUFBLElBQ0wsYUFBYTtBQUFBLElBQ2IsWUFBWSxLQUFLLFNBQVM7QUFBQSxJQUMxQixLQUFLO0FBQUEsSUFDTCxTQUFTO0FBQUEsSUFDVCxnQkFBZ0I7QUFBQSxJQUVoQixVQUFVO0FBQUEsSUFDVixlQUFlO0FBQUEsSUFDZixjQUFjO0FBQUEsSUFDZCxPQUFPO0FBQUEsSUFDUCxjQUFjLENBQUMsZ0JBQUFBLE9BQUMsT0FBRTtBQUFBO0FBQUEsTUFBMlAsZ0JBQUFELE1BQUMsaUJBQWMsS0FBSSxjQUFhLFVBQVMsVUFBUyxLQUFJLEtBQUk7QUFBQSxNQUFFO0FBQUEsT0FBaUosQ0FBSTtBQUFBLElBQzlkLFVBQVUsQ0FBQyxnQkFBQUMsT0FBQyxPQUFFO0FBQUE7QUFBQSxNQUF1WCxnQkFBQUQsTUFBQyxzQkFBbUIsS0FBSSxPQUFNLE1BQUssYUFBWTtBQUFBLE1BQUU7QUFBQSxPQUVILENBQUk7QUFBQSxJQUN2YixnQkFBZ0IsQ0FBQyxnQkFBQUEsTUFBQyxPQUFFLHlkQUFzYyxDQUFJO0FBQUEsSUFDOWQsV0FBVyxnQkFBQUMsT0FBQUYsWUFBQSxFQUNUO0FBQUEsc0JBQUFDO0FBQUEsUUFBQztBQUFBO0FBQUEsVUFBTSxHQUFFO0FBQUEsVUFDUCxHQUFFO0FBQUE7QUFBQSxNQU8wZDtBQUFBLE1BQzlkLGdCQUFBQTtBQUFBLFFBQUM7QUFBQTtBQUFBLFVBQU0sR0FBRTtBQUFBLFVBRVAsR0FBRTtBQUFBO0FBQUEsTUFLd2xCO0FBQUEsTUFDNWxCLGdCQUFBQTtBQUFBLFFBQUM7QUFBQTtBQUFBLFVBQU0sR0FBRTtBQUFBLFVBQ1AsR0FBRTtBQUFBO0FBQUEsTUFDeWI7QUFBQSxNQUM3YixnQkFBQUE7QUFBQSxRQUFDO0FBQUE7QUFBQSxVQUFNLEdBQUU7QUFBQSxVQUNQLEdBQUU7QUFBQTtBQUFBLE1BQXFYO0FBQUEsTUFDelgsZ0JBQUFBO0FBQUEsUUFBQztBQUFBO0FBQUEsVUFBTSxHQUFFO0FBQUEsVUFDUCxHQUFFO0FBQUE7QUFBQSxNQUFzYjtBQUFBLE1BQzFiLGdCQUFBQTtBQUFBLFFBQUM7QUFBQTtBQUFBLFVBQU0sR0FBRTtBQUFBLFVBQ1AsR0FBRTtBQUFBO0FBQUEsTUFBd1c7QUFBQSxNQUM1VyxnQkFBQUE7QUFBQSxRQUFDO0FBQUE7QUFBQSxVQUFNLEdBQUU7QUFBQSxVQUNQLEdBQUU7QUFBQTtBQUFBLE1BQW9lO0FBQUEsTUFDeGUsZ0JBQUFBO0FBQUEsUUFBQztBQUFBO0FBQUEsVUFBTSxHQUFFO0FBQUEsVUFDUCxHQUFFO0FBQUE7QUFBQSxNQUVrM0I7QUFBQSxNQUN0M0IsZ0JBQUFBO0FBQUEsUUFBQztBQUFBO0FBQUEsVUFBTSxHQUFFO0FBQUEsVUFDUCxHQUFFO0FBQUE7QUFBQSxNQUVxTDtBQUFBLE1BQ3pMLGdCQUFBQTtBQUFBLFFBQUM7QUFBQTtBQUFBLFVBQU0sR0FBRTtBQUFBLFVBQ1AsR0FBRTtBQUFBO0FBQUEsTUFBeUc7QUFBQSxNQUM3RyxnQkFBQUE7QUFBQSxRQUFDO0FBQUE7QUFBQSxVQUFNLEdBQUU7QUFBQSxVQUNQLEdBQUU7QUFBQTtBQUFBLE1BQW9HO0FBQUEsTUFDeEcsZ0JBQUFBO0FBQUEsUUFBQztBQUFBO0FBQUEsVUFBTSxHQUFFO0FBQUEsVUFDUCxHQUFFO0FBQUE7QUFBQSxNQUFzRTtBQUFBLE1BQzFFLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSw2TUFBd0wsR0FBRSxnSEFBeUc7QUFBQSxNQUM1UyxnQkFBQUEsTUFBQyxTQUFNLEdBQUUsZ0ZBQStFLEdBQUUsOGlFQUF3aEU7QUFBQSxNQUNsbkUsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLG1CQUFrQixHQUFFLG91REFBNnREO0FBQUEsTUFDMXZELGdCQUFBQSxNQUFDLFNBQU0sR0FBRSxvTEFBbUwsR0FBRSw0ckNBQTByQztBQUFBLE1BQ3gzQyxnQkFBQUEsTUFBQyxTQUFNLEdBQUUsdUVBQXFFLEdBQUUsZUFBYTtBQUFBLE1BQzdGLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSwyUUFBZ1EsR0FBRSxneENBRzNFO0FBQUEsTUFDaE0sZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLG9YQUE4VixHQUFFLHU2QkFDZ047QUFBQSxNQUN6akIsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLDhSQUFnUixHQUFFLHVpRkFBa2dGO0FBQUEsTUFDN3hGLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSw4U0FDbU0sR0FBRSwyeURBR2dDO0FBQUEsTUFDOU8sZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLDhGQUE2RixHQUFFLHVJQUFxSTtBQUFBLE1BQzdPLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSxpTEFBZ0wsR0FBRSw0QkFBMEI7QUFBQSxNQUNyTixnQkFBQUEsTUFBQyxTQUFNLEdBQUUsNEZBQTBGLEdBQUUscUJBQW1CO0FBQUEsT0FDdkg7QUFBQSxJQUNILFlBQVksZ0JBQUFBLE1BQUMsMkJBQXdCO0FBQUEsSUFDckMsU0FBUztBQUFBLElBQ1QsUUFBUTtBQUFBLEVBQ1Y7QUFBQSxFQUNBO0FBQUEsSUFDRSxTQUFTO0FBQUEsSUFDVCxXQUFXO0FBQUEsSUFDWCxZQUFZLEtBQUssTUFBTTtBQUFBLElBQ3ZCLEtBQUs7QUFBQSxJQUNMLGFBQWE7QUFBQSxJQUNiLEtBQUs7QUFBQSxJQUNMLFNBQVM7QUFBQSxJQUNULGdCQUFnQjtBQUFBLElBRWhCLGVBQWU7QUFBQSxJQUNmLGNBQWM7QUFBQSxJQUNkLE9BQU87QUFBQSxJQUNQLE1BQU07QUFBQSxJQUNOLFNBQVM7QUFBQSxNQUFDLGdCQUFBQSxNQUFDLE9BQUUsZ2tDQUVUO0FBQUEsTUFFQSxnQkFBQUMsT0FBQyxRQUNHO0FBQUEsd0JBQUFBLE9BQUMsUUFDRztBQUFBLDBCQUFBRCxNQUFDLE9BQUUsOEJBQWdCO0FBQUEsVUFBSTtBQUFBLFdBQzNCO0FBQUEsUUFDQSxnQkFBQUMsT0FBQyxRQUNHO0FBQUEsMEJBQUFELE1BQUMsT0FBRSxpQ0FBbUI7QUFBQSxVQUFJO0FBQUEsV0FDOUI7QUFBQSxRQUNBLGdCQUFBQyxPQUFDLFFBQ0c7QUFBQSwwQkFBQUQsTUFBQyxPQUFFLHNDQUF3QjtBQUFBLFVBQUk7QUFBQSxXQUNuQztBQUFBLFNBQ0o7QUFBQSxJQUFLO0FBQUEsSUFDVCxRQUFRO0FBQUEsRUFDVjtBQUFBLEVBQ0E7QUFBQSxJQUNFLFNBQVM7QUFBQSxJQUNULFdBQVc7QUFBQSxJQUNYLFlBQVksS0FBSyxPQUFPO0FBQUEsSUFDeEIsS0FBSztBQUFBLElBQ0wsYUFBYTtBQUFBLElBQ2IsS0FBSztBQUFBLElBQ0wsU0FBUztBQUFBLElBQ1QsZ0JBQWdCO0FBQUEsSUFDaEIsTUFBTTtBQUFBLElBRU4sZUFBZTtBQUFBLElBQ2YsY0FBYztBQUFBLElBQ2QsT0FBTztBQUFBLElBQ1AsU0FBUyxDQUFDLGdCQUFBQyxPQUFDLE9BQUU7QUFBQTtBQUFBLE1BQUMsZ0JBQUFELE1BQUMsV0FBUSxPQUFNLGFBQVksWUFBVyxxQkFBb0IsTUFBSyxtQkFBa0IsTUFBSyxtQkFBaUI7QUFBQSxNQUFFO0FBQUEsT0FBZ3BCLENBQUk7QUFBQSxJQUMzd0IsUUFBUTtBQUFBLEVBQ1Y7QUFBQSxFQUNBO0FBQUEsSUFDRSxTQUFTO0FBQUEsSUFDVCxXQUFXO0FBQUEsSUFDWCxLQUFLO0FBQUEsSUFDTCxhQUFhO0FBQUEsSUFDYixZQUFZLEtBQUssT0FBTztBQUFBLElBQ3hCLEtBQUs7QUFBQSxJQUNMLFNBQVM7QUFBQSxJQUNULGdCQUFnQjtBQUFBLElBRWhCLFVBQVU7QUFBQSxJQUNWLGVBQWU7QUFBQSxJQUNmLGNBQWM7QUFBQSxJQUNkLE9BQU87QUFBQSxJQUNQLGNBQWMsQ0FBQyxnQkFBQUMsT0FBQyxPQUFFO0FBQUE7QUFBQSxNQUFvQyxnQkFBQUQsTUFBQyxzQkFBbUIsS0FBSSxZQUFXLE1BQUssT0FBTTtBQUFBLE1BQUU7QUFBQSxNQUM3QixnQkFBQUEsTUFBQyxPQUFFLE1BQUssMkJBQTJCLGdDQUFrQjtBQUFBLE1BQUk7QUFBQSxPQUNMLENBQUk7QUFBQSxJQUNqSSxVQUFVLENBQUMsZ0JBQUFBLE1BQUMsT0FBRSxtMENBSThPLENBQUk7QUFBQSxJQUNoUSxnQkFBZ0IsQ0FBQyxnQkFBQUMsT0FBQyxPQUFFO0FBQUE7QUFBQSxNQUNrSCxnQkFBQUQsTUFBQyxzQkFBbUIsS0FBSSxVQUFTLE1BQUssY0FBYTtBQUFBLE1BQUU7QUFBQSxPQUFFLENBQUk7QUFBQSxJQUNqTSxXQUFXLGdCQUFBQyxPQUFBRixZQUFBLEVBQ1Q7QUFBQSxzQkFBQUMsTUFBQyxTQUFNLEdBQUUsc0ZBQXFGLEdBQUUsc0lBQTJIO0FBQUEsTUFDM04sZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLDZDQUE0QyxHQUFFLHdCQUFrQjtBQUFBLE1BQ3pFLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSwyREFBMEQsR0FBRSxrU0FBaVM7QUFBQSxNQUN0VyxnQkFBQUEsTUFBQyxTQUFNLEdBQUUsNkRBQTRELEdBQUUsbUlBQTZIO0FBQUEsTUFDcE0sZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLHdEQUF1RCxHQUFFLGlYQUFzVztBQUFBLE1BQ3hhLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSxzRUFBcUUsR0FBRSxxWUFBK1g7QUFBQSxNQUMvYyxnQkFBQUEsTUFBQyxTQUFNLEdBQUUsd0VBQXVFLEdBQUUsNFRBQWlUO0FBQUEsTUFDblksZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLHFEQUFvRCxHQUFFLGtWQUE2VDtBQUFBLE1BQzVYLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSxnSEFBMEcsR0FBRSx3UkFBOFA7QUFBQSxNQUNuWCxnQkFBQUEsTUFBQyxTQUFNLEdBQUUseUdBQW1HLEdBQUUsME5BQStNO0FBQUEsTUFDN1QsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLHFGQUFvRixHQUFFLDhMQUFtTDtBQUFBLE1BQ2xSLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSw2REFBNEQsR0FBRSw4T0FBbU87QUFBQSxNQUMxUyxnQkFBQUEsTUFBQyxTQUFNLEdBQUUseUVBQXdFLEdBQUUsbU5BQWtOO0FBQUEsTUFDclMsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLGlFQUFnRSxHQUFFLGdQQUErTztBQUFBLE1BQzFULGdCQUFBQSxNQUFDLFNBQU0sR0FBRSxtQ0FBa0MsR0FBRSxvU0FBb1I7QUFBQSxNQUNqVSxnQkFBQUEsTUFBQyxTQUFNLEdBQUUsd0NBQXVDLEdBQUUsa1BBQXVPO0FBQUEsTUFDelIsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLHVFQUFzRSxHQUFFLGlJQUEySDtBQUFBLE1BQzVNLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSxzREFBcUQsR0FBRSx3SkFBNkk7QUFBQSxPQUMvTTtBQUFBLElBQ0EsU0FBUztBQUFBLElBQ1QsUUFBUTtBQUFBLEVBQ1Y7QUFBQSxFQUNBO0FBQUEsSUFDRSxPQUFPO0FBQUEsSUFDUCxTQUFTO0FBQUEsSUFDVCxXQUFXO0FBQUEsSUFDWCxLQUFLO0FBQUEsSUFDTCxhQUFhO0FBQUEsSUFDYixZQUFZLEtBQUssT0FBTztBQUFBLElBQ3hCLEtBQUs7QUFBQSxJQUNMLFVBQVU7QUFBQSxJQUNWLFNBQVM7QUFBQSxJQUNULGdCQUFnQjtBQUFBLElBRWhCLE9BQU87QUFBQSxJQUNQLGNBQWMsQ0FBQyxnQkFBQUEsTUFBQyxPQUFFLHFPQUF1TixDQUFJO0FBQUEsSUFDN08sVUFBVTtBQUFBLE1BQUMsZ0JBQUFBLE1BQUMsT0FBRSx3VkFBMFU7QUFBQSxNQUN0VixnQkFBQUMsT0FBQyxPQUFFO0FBQUE7QUFBQSxRQUVILGdCQUFBRCxNQUFDLGlCQUFjLEtBQUksT0FBTSxVQUFTLFVBQVMsS0FBSSxLQUFJO0FBQUEsUUFBRTtBQUFBLFFBRXJELGdCQUFBQSxNQUFDLHNCQUFtQixLQUFJLHdCQUN0QixNQUFLLG1CQUFrQjtBQUFBLFFBQUU7QUFBQSxRQUM2RyxnQkFBQUEsTUFBQyxPQUFFLE1BQUssb0ZBQW9GLHlEQUEyQztBQUFBLFFBQUk7QUFBQSxRQUVuUixnQkFBQUEsTUFBQyxpQkFBYyxLQUFJLE9BQU0sVUFBUyxVQUFTLEtBQUksS0FBSTtBQUFBLFFBQUU7QUFBQSxRQUNnSCxnQkFBQUEsTUFBQyxpQkFBYyxLQUFJLE9BQU0sVUFBUyxVQUFTLEtBQUksS0FBSTtBQUFBLFFBQUU7QUFBQSxRQUFzYixnQkFBQUEsTUFBQyxpQkFBYyxLQUFJLE9BQU0sVUFBUyxVQUFTLEtBQUksS0FBSTtBQUFBLFFBQUU7QUFBQSxTQUF3WTtBQUFBLElBQy9rQztBQUFBLElBQ0EsZ0JBQWdCO0FBQUEsSUFDaEIsU0FBUztBQUFBLElBQ1QsUUFBUTtBQUFBLElBQ1IsWUFBWSxnQkFBQUEsTUFBQyx1QkFBbUI7QUFBQSxFQUNsQztBQUFBLEVBQ0E7QUFBQSxJQUNFLFNBQVM7QUFBQSxJQUNULFdBQVc7QUFBQSxJQUNYLEtBQUs7QUFBQSxJQUNMLGFBQWE7QUFBQSxJQUNiLFlBQVksS0FBSyxRQUFRO0FBQUEsSUFDekIsS0FBSztBQUFBLElBQ0wsU0FBUztBQUFBLElBQ1QsZ0JBQWdCO0FBQUEsSUFFaEIsVUFBVTtBQUFBLElBQ1YsT0FBTztBQUFBLElBQ1AsY0FBYztBQUFBLElBQ2QsVUFBVTtBQUFBLElBQ1YsZ0JBQWdCLENBQUMsZ0JBQUFDLE9BQUMsT0FBRTtBQUFBO0FBQUEsTUFBcVAsZ0JBQUFELE1BQUMsc0JBQW1CLEtBQUksYUFBWSxNQUFLLGNBQVk7QUFBQSxNQUFFO0FBQUEsTUFBK0ksZ0JBQUFBLE1BQUMsV0FBUSxPQUFNLHdCQUF3QixNQUFLLG1CQUFrQixNQUFLLHdCQUF1QjtBQUFBLE1BQUU7QUFBQSxPQUErWCxDQUFJO0FBQUEsSUFDOTZCLFdBQVcsZ0JBQUFDLE9BQUFGLFlBQUEsRUFDVDtBQUFBLHNCQUFBQztBQUFBLFFBQUM7QUFBQTtBQUFBLFVBQU0sR0FBRTtBQUFBLFVBQ1AsR0FBRTtBQUFBO0FBQUEsTUFBb0o7QUFBQSxNQUN4SixnQkFBQUE7QUFBQSxRQUFDO0FBQUE7QUFBQSxVQUFNLEdBQUU7QUFBQSxVQUNQLEdBQUU7QUFBQTtBQUFBLE1BQWtDO0FBQUEsTUFDdEMsZ0JBQUFBO0FBQUEsUUFBQztBQUFBO0FBQUEsVUFBTSxHQUFFO0FBQUEsVUFDUCxHQUFFO0FBQUE7QUFBQSxNQUErSDtBQUFBLE1BQ25JLGdCQUFBQTtBQUFBLFFBQUM7QUFBQTtBQUFBLFVBQU0sR0FBRTtBQUFBLFVBQ1AsR0FBRTtBQUFBO0FBQUEsTUFBc0Q7QUFBQSxNQUMxRCxnQkFBQUE7QUFBQSxRQUFDO0FBQUE7QUFBQSxVQUFNLEdBQUU7QUFBQSxVQUNQLEdBQUU7QUFBQTtBQUFBLE1BQTZVO0FBQUEsTUFDalYsZ0JBQUFBO0FBQUEsUUFBQztBQUFBO0FBQUEsVUFBTSxHQUFFO0FBQUEsVUFDUCxHQUFFO0FBQUE7QUFBQSxNQUF3aEI7QUFBQSxNQUM1aEIsZ0JBQUFBO0FBQUEsUUFBQztBQUFBO0FBQUEsVUFBTSxHQUFFO0FBQUEsVUFDUCxHQUFFO0FBQUE7QUFBQSxNQUFrVjtBQUFBLE1BQ3RWLGdCQUFBQTtBQUFBLFFBQUM7QUFBQTtBQUFBLFVBQU0sR0FBRTtBQUFBLFVBQ1AsR0FBRTtBQUFBO0FBQUEsTUFBaUo7QUFBQSxNQUNySixnQkFBQUE7QUFBQSxRQUFDO0FBQUE7QUFBQSxVQUFNLEdBQUU7QUFBQSxVQUNQLEdBQUU7QUFBQTtBQUFBLE1BQTJRO0FBQUEsTUFDL1EsZ0JBQUFBO0FBQUEsUUFBQztBQUFBO0FBQUEsVUFBTSxHQUFFO0FBQUEsVUFDUCxHQUFFO0FBQUE7QUFBQSxNQUErUjtBQUFBLE1BQ25TLGdCQUFBQTtBQUFBLFFBQUM7QUFBQTtBQUFBLFVBQU0sR0FBRTtBQUFBLFVBQ1AsR0FBRTtBQUFBO0FBQUEsTUFBME87QUFBQSxNQUM5TyxnQkFBQUE7QUFBQSxRQUFDO0FBQUE7QUFBQSxVQUFNLEdBQUU7QUFBQSxVQUNQLEdBQUU7QUFBQTtBQUFBLE1BQXFRO0FBQUEsTUFDelEsZ0JBQUFBO0FBQUEsUUFBQztBQUFBO0FBQUEsVUFBTSxHQUFFO0FBQUEsVUFDUCxHQUFFO0FBQUE7QUFBQSxNQUE4TztBQUFBLE1BQ2xQLGdCQUFBQTtBQUFBLFFBQUM7QUFBQTtBQUFBLFVBQU0sR0FBRTtBQUFBLFVBQ1AsR0FBRTtBQUFBO0FBQUEsTUFBK1E7QUFBQSxNQUNuUixnQkFBQUE7QUFBQSxRQUFDO0FBQUE7QUFBQSxVQUFNLEdBQUU7QUFBQSxVQUNQLEdBQUU7QUFBQTtBQUFBLE1BQXFnQjtBQUFBLE1BQ3pnQixnQkFBQUE7QUFBQSxRQUFDO0FBQUE7QUFBQSxVQUFNLEdBQUU7QUFBQSxVQUNQLEdBQUU7QUFBQTtBQUFBLE1BQWtLO0FBQUEsTUFDdEssZ0JBQUFBO0FBQUEsUUFBQztBQUFBO0FBQUEsVUFBTSxHQUFFO0FBQUEsVUFDUCxHQUFFO0FBQUE7QUFBQSxNQUEyVDtBQUFBLE1BQy9ULGdCQUFBQTtBQUFBLFFBQUM7QUFBQTtBQUFBLFVBQU0sR0FBRTtBQUFBLFVBQ1AsR0FBRTtBQUFBO0FBQUEsTUFBMlI7QUFBQSxNQUMvUixnQkFBQUE7QUFBQSxRQUFDO0FBQUE7QUFBQSxVQUFNLEdBQUU7QUFBQSxVQUNQLEdBQUU7QUFBQTtBQUFBLE1BQWlTO0FBQUEsTUFDclMsZ0JBQUFBO0FBQUEsUUFBQztBQUFBO0FBQUEsVUFBTSxHQUFFO0FBQUEsVUFDUCxHQUFFO0FBQUE7QUFBQSxNQUFtVztBQUFBLE9BQ3pXO0FBQUEsSUFDQSxTQUFTO0FBQUEsSUFDVCxRQUFRO0FBQUEsSUFDUixzQkFBc0I7QUFBQSxFQUN4QjtBQUFBLEVBQ0E7QUFBQSxJQUNFLFNBQVM7QUFBQSxJQUNULFdBQVc7QUFBQSxJQUNYLFlBQVksS0FBSyxnQkFBZ0I7QUFBQSxJQUNqQyxLQUFLO0FBQUEsSUFDTCxhQUFhO0FBQUEsSUFDYixLQUFLO0FBQUEsSUFDTCxTQUFTO0FBQUEsSUFDVCxnQkFBZ0I7QUFBQSxJQUVoQixPQUFPO0FBQUEsSUFDUCxlQUFjO0FBQUEsSUFDZCxjQUFjO0FBQUEsSUFDZCxjQUFjLENBQUMsZ0JBQUFBLE1BQUMsT0FBRSwwUkFBNFEsQ0FBSTtBQUFBLElBQ2xTLFVBQVU7QUFBQSxNQUFDLGdCQUFBQSxNQUFDLE9BQUUsNlhBQStXO0FBQUEsTUFDM1gsZ0JBQUFBLE1BQUMsT0FBRSxzU0FBd1I7QUFBQSxNQUMzUixnQkFBQUEsTUFBQyxPQUFFLDZZQUErWDtBQUFBLElBQUk7QUFBQSxJQUN4WSxnQkFBZ0IsQ0FBQyxnQkFBQUMsT0FBQyxPQUFFO0FBQUE7QUFBQSxNQUFzSDtBQUFBLE9BQW1ULENBQUk7QUFBQSxJQUNqYyxTQUFTLENBQUMsZ0JBQUFELE1BQUMsT0FBRSxxaUJBQXVoQixDQUFJO0FBQUEsSUFDeGlCLFFBQVE7QUFBQSxJQUNSLGdCQUFlO0FBQUEsSUFDZiwyQkFBMkI7QUFBQSxJQUMzQixzQkFBc0I7QUFBQSxJQUN0QixlQUFlLENBQUMsNkRBQTZEO0FBQUEsRUFDL0U7QUFBQSxFQUNBO0FBQUEsSUFDRSxTQUFTO0FBQUEsSUFDVCxXQUFXO0FBQUEsSUFDWCxLQUFLO0FBQUEsSUFDTCxhQUFhO0FBQUEsSUFDYixZQUFZLEtBQUssVUFBVTtBQUFBLElBQzNCLEtBQUs7QUFBQSxJQUNMLFNBQVM7QUFBQSxJQUNULGdCQUFnQjtBQUFBLElBRWhCLFVBQVU7QUFBQSxJQUNWLE9BQU87QUFBQSxJQUNQLGNBQWMsQ0FBQyxnQkFBQUMsT0FBQyxPQUFFO0FBQUE7QUFBQSxNQUErQixnQkFBQUQsTUFBQyxzQkFBbUIsS0FBSSxlQUFjLE1BQUssbUJBQWtCO0FBQUEsTUFBRTtBQUFBLE9BQWdRLENBQUk7QUFBQSxJQUNwWCxVQUFVO0FBQUEsSUFDVixnQkFBZ0I7QUFBQSxJQUNoQixNQUFNLENBQUMsZ0JBQUFDLE9BQUMsUUFDTjtBQUFBLHNCQUFBQSxPQUFDLFFBQ0M7QUFBQSx3QkFBQUQsTUFBQyxPQUFFLHlCQUFjO0FBQUEsUUFDakIsZ0JBQUFBLE1BQUMsT0FBRSxnNENBQTgxQztBQUFBLFNBQ24yQztBQUFBLE1BQ0EsZ0JBQUFDLE9BQUMsUUFDQztBQUFBLHdCQUFBRCxNQUFDLE9BQUUsb0NBQTRCO0FBQUEsUUFDL0IsZ0JBQUFBLE1BQUMsT0FBRSxvcEJBQTRuQjtBQUFBLFNBQ2pvQjtBQUFBLE1BQ0EsZ0JBQUFDLE9BQUMsUUFDQztBQUFBLHdCQUFBRCxNQUFDLE9BQUUsdUJBQVk7QUFBQSxRQUNmLGdCQUFBQSxNQUFDLE9BQUUsaWlCQUFtaEI7QUFBQSxTQUN4aEI7QUFBQSxNQUNBLGdCQUFBQyxPQUFDLFFBQ0M7QUFBQSx3QkFBQUQsTUFBQyxPQUFFLDJCQUFnQjtBQUFBLFFBQ25CLGdCQUFBQSxNQUFDLE9BQUUsdWlCQUFvaEI7QUFBQSxTQUN6aEI7QUFBQSxPQUNGLENBQU07QUFBQSxJQUNOLFNBQVM7QUFBQSxJQUNULHNCQUFxQjtBQUFBLElBQ3JCLFFBQVE7QUFBQSxFQUNWO0FBQUEsRUFDQTtBQUFBLElBQ0UsT0FBTztBQUFBLElBQ1AsU0FBUztBQUFBLElBQ1QsV0FBVztBQUFBLElBQ1gsS0FBSztBQUFBLElBQ0wsYUFBYTtBQUFBLElBQ2IsWUFBWSxLQUFLLE9BQU87QUFBQSxJQUN4QixLQUFLO0FBQUEsSUFDTCxTQUFTO0FBQUEsSUFDVCxnQkFBZ0I7QUFBQSxJQUNoQixVQUFTO0FBQUEsSUFFVCxPQUFPO0FBQUEsSUFDUCxlQUFlO0FBQUEsSUFDZixjQUFjO0FBQUEsSUFDZCxjQUFjLENBQUMsZ0JBQUFBLE1BQUMsT0FBRSxpY0FDNEwsQ0FBSTtBQUFBLElBQ2xOLFVBQVUsQ0FBQyxnQkFBQUEsTUFBQyxPQUFFLG1xQkFFNk8sQ0FBSTtBQUFBLElBQy9QLGdCQUFnQixDQUFDLGdCQUFBQSxNQUFDLE9BQUUsbXBCQUUwRyxDQUFJO0FBQUEsSUFDbEksU0FBUztBQUFBLElBQ1QsUUFBUTtBQUFBLEVBQ1Y7QUFBQSxFQUNBO0FBQUEsSUFDRSxPQUFPO0FBQUEsSUFDUCxTQUFTO0FBQUEsSUFDVCxXQUFXO0FBQUEsSUFDWCxLQUFLO0FBQUEsSUFDTCxhQUFhO0FBQUEsSUFDYixZQUFZLEtBQUssWUFBWTtBQUFBLElBQzdCLEtBQUs7QUFBQSxJQUNMLFNBQVM7QUFBQSxJQUNULGdCQUFnQjtBQUFBLElBRWhCLFVBQVU7QUFBQSxJQUNWLGVBQWU7QUFBQSxJQUNmLGNBQWM7QUFBQSxJQUNkLE9BQU87QUFBQSxJQUNQLGNBQWMsQ0FBQyxnQkFBQUMsT0FBQyxPQUFFO0FBQUE7QUFBQSxNQUsrQyxnQkFBQUQsTUFBQyx1QkFBb0IsVUFBUyxVQUFTLDBCQUFBQSxNQUFDLFNBQUksZUFBQyxHQUFNO0FBQUEsTUFBc0I7QUFBQSxPQUczSCxDQUFJO0FBQUEsSUFDbkIsZ0JBQWdCO0FBQUEsSUFDaEIsVUFBVSxDQUFDLGdCQUFBQyxPQUFBRixZQUFBLEVBQUU7QUFBQSxzQkFBQUUsT0FBQyxPQUFFO0FBQUE7QUFBQSxRQUc4QyxnQkFBQUQsTUFBQyx1QkFBb0IsVUFBUyxVQUFTLDBCQUFBQSxNQUFDLFNBQUksZUFBQyxHQUFNO0FBQUEsUUFBc0I7QUFBQSxTQUt2STtBQUFBLE1BQ0UsZ0JBQUFDLE9BQUMsT0FBRTtBQUFBO0FBQUEsUUFFdUYsZ0JBQUFELE1BQUMsdUJBQW9CLFVBQVMsVUFBUywwQkFBQUEsTUFBQyxTQUFJLGVBQUMsR0FBTTtBQUFBLFFBQXNCO0FBQUEsU0FDcEY7QUFBQSxPQUNqRixDQUFHO0FBQUEsSUFDSCxnQkFBZ0IsQ0FBQyxnQkFBQUMsT0FBQyxPQUFFO0FBQUE7QUFBQSxNQUFxQztBQUFBLE1BQ3FFO0FBQUEsT0FJekIsQ0FBSTtBQUFBLElBQ3pHLDJCQUEyQjtBQUFBLElBQzNCLHNCQUFxQjtBQUFBLElBQ3JCLFlBQVksZ0JBQUFELE1BQUMscUJBQWtCO0FBQUEsSUFDL0IsV0FBVyxnQkFBQUMsT0FBQUYsWUFBQSxFQUNUO0FBQUEsc0JBQUFDLE1BQUMsU0FBTSxHQUFFLGtEQUFpRCxHQUFFLGlSQUF3UTtBQUFBLE1BQ3BVLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSw4RUFBNkUsR0FBRSwyUUFBMFE7QUFBQSxNQUNsVyxnQkFBQUEsTUFBQyxTQUFNLEdBQUUsZ0dBQStGLEdBQUUsMlRBQTBUO0FBQUEsTUFDcGEsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLCtFQUE4RSxHQUFFLGtLQUFpSztBQUFBLE1BQzFQLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSwyRkFBMEYsR0FBRSwrRUFBOEU7QUFBQSxNQUNuTCxnQkFBQUEsTUFBQyxTQUFNLEdBQUUsc0ZBQXFGLEdBQUUsa1FBQWlRO0FBQUEsTUFDalcsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLHNHQUFxRyxHQUFFLHFlQUFvZTtBQUFBLE1BQ3BsQixnQkFBQUEsTUFBQyxTQUFNLEdBQUUsd0RBQXVELEdBQUUscVFBQWlRO0FBQUEsT0FFclU7QUFBQSxJQUNBLFNBQVM7QUFBQSxJQUNULFFBQVE7QUFBQSxFQUNWO0FBQUEsRUFDQTtBQUFBLElBQ0UsU0FBUztBQUFBLElBQ1QsV0FBVztBQUFBLElBQ1gsS0FBSztBQUFBLElBQ0wsYUFBYTtBQUFBLElBQ2IsWUFBWSxLQUFLLFFBQVE7QUFBQSxJQUN6QixLQUFLO0FBQUEsSUFDTCxTQUFTO0FBQUEsSUFDVCxnQkFBZ0I7QUFBQSxJQUVoQixVQUFVO0FBQUEsSUFDVixPQUFPO0FBQUEsSUFDUCxjQUFjO0FBQUEsTUFBQyxnQkFBQUMsT0FBQyxPQUFFO0FBQUE7QUFBQSxRQUE4QixnQkFBQUQsTUFBQyxPQUFFLE1BQUssMEJBQXlCLGdDQUFrQjtBQUFBLFFBQUk7QUFBQSxTQUdnQztBQUFBLE1BQ3ZJLGdCQUFBQyxPQUFDLE9BQUU7QUFBQTtBQUFBLFFBQW9FLGdCQUFBRCxNQUFDLE9BQUUsTUFBSyx3REFBdUQsOENBQ3BHO0FBQUEsUUFBSTtBQUFBLFNBQUM7QUFBQSxJQUFJO0FBQUEsSUFDM0MsVUFBVSxDQUFDLGdCQUFBQyxPQUFDLE9BQUU7QUFBQTtBQUFBLE1BRWlGLGdCQUFBRCxNQUFDLHNCQUFtQixLQUFJLFVBQVMsTUFBSyxvQkFBbUI7QUFBQSxNQUFFO0FBQUEsTUFBMkgsZ0JBQUFBLE1BQUMsc0JBQW1CLEtBQUksWUFBVyxNQUFLLE9BQU07QUFBQSxNQUFFO0FBQUEsT0FBOEosQ0FBSTtBQUFBLElBQ3ZlLGdCQUFnQixDQUFDLGdCQUFBQyxPQUFDLE9BQUU7QUFBQTtBQUFBLE1BR3VCLGdCQUFBRCxNQUFDLGlCQUFjLEtBQUksVUFBUyxVQUFTLFVBQVMsS0FBSSxLQUFJO0FBQUEsTUFBRTtBQUFBLE1BS04sZ0JBQUFBLE1BQUMsaUJBQWMsS0FBSSxVQUFTLFVBQVMsVUFBUyxLQUFJLEtBQUk7QUFBQSxNQUFFO0FBQUEsTUFFdkgsZ0JBQUFBLE1BQUMsaUJBQWMsS0FBSSxVQUFTLFVBQVMsVUFBUyxLQUFJLEtBQUk7QUFBQSxNQUFFO0FBQUEsTUFDcEUsZ0JBQUFBLE1BQUMsaUJBQWMsS0FBSSxVQUFTLFVBQVMsVUFBUyxLQUFJLEtBQUk7QUFBQSxNQUFFO0FBQUEsT0FRL0QsQ0FBSTtBQUFBLElBQ2Ysc0JBQXNCO0FBQUEsSUFDdEIsWUFBWSxnQkFBQUEsTUFBQywwQkFBdUI7QUFBQSxJQUNwQyxTQUFTO0FBQUEsSUFDVCxRQUFRO0FBQUEsRUFDVjtBQUFBLEVBQ0E7QUFBQSxJQUNFLFNBQVM7QUFBQSxJQUNULFdBQVc7QUFBQSxJQUNYLFlBQVksS0FBSyxNQUFNO0FBQUEsSUFDdkIsS0FBSztBQUFBLElBQ0wsYUFBYTtBQUFBLElBQ2IsS0FBSztBQUFBLElBQ0wsU0FBUztBQUFBLElBQ1QsZ0JBQWdCO0FBQUEsSUFFaEIsZUFBZTtBQUFBLElBQ2YsY0FBYztBQUFBLElBQ2QsT0FBTztBQUFBLElBQ1AsTUFBTTtBQUFBLElBQ04sU0FBUztBQUFBLE1BQ0QsZ0JBQUFBLE1BQUMsT0FBRSwwdERBRVQ7QUFBQSxNQUNBLGdCQUFBQyxPQUFDLFFBQ0c7QUFBQSx3QkFBQUEsT0FBQyxRQUNHO0FBQUEsMEJBQUFELE1BQUMsT0FBRSxpREFBbUM7QUFBQSxVQUFJO0FBQUEsV0FDOUM7QUFBQSxRQUNBLGdCQUFBQyxPQUFDLFFBQ0c7QUFBQSwwQkFBQUQsTUFBQyxPQUFFLCtCQUFpQjtBQUFBLFVBQUk7QUFBQSxXQUM1QjtBQUFBLFFBQ0EsZ0JBQUFDLE9BQUMsUUFDRztBQUFBLDBCQUFBRCxNQUFDLE9BQUUsdUVBQXlEO0FBQUEsVUFBSTtBQUFBLFdBQ3BFO0FBQUEsUUFDQSxnQkFBQUMsT0FBQyxRQUNHO0FBQUEsMEJBQUFELE1BQUMsT0FBRSxxQ0FBdUI7QUFBQSxVQUFJO0FBQUEsV0FDbEM7QUFBQSxRQUNBLGdCQUFBQyxPQUFDLFFBQ0c7QUFBQSwwQkFBQUQsTUFBQyxPQUFFLDhEQUFnRDtBQUFBLFVBQUk7QUFBQSxXQUMzRDtBQUFBLFNBQ0o7QUFBQSxJQUdGO0FBQUEsSUFDQSxRQUFRO0FBQUEsRUFDVjtBQUFBLEVBQ0E7QUFBQSxJQUNFLE9BQU87QUFBQSxJQUNQLFNBQVM7QUFBQSxJQUNULFdBQVc7QUFBQSxJQUNYLEtBQUs7QUFBQSxJQUNMLGFBQWE7QUFBQSxJQUNiLFlBQVksS0FBSyxRQUFRO0FBQUEsSUFDekIsS0FBSztBQUFBLElBQ0wsU0FBUztBQUFBLElBQ1QsZ0JBQWdCO0FBQUEsSUFFaEIsVUFBVTtBQUFBLElBQ1YsT0FBTztBQUFBLElBQ1AsZUFBZTtBQUFBLElBQ2YsY0FBYztBQUFBLElBQ2QsY0FBYyxDQUFDLGdCQUFBQSxNQUFDLE9BQUUsa1FBQW9QLENBQUk7QUFBQSxJQUMxUSxVQUFVO0FBQUEsTUFBQyxnQkFBQUEsTUFBQyxPQUFFLGdKQUFrSTtBQUFBLE1BQzlJLGdCQUFBQyxPQUFDLFFBQ0c7QUFBQSx3QkFBQUQsTUFBQyxRQUFHLDZCQUFlO0FBQUEsUUFDbkIsZ0JBQUFBLE1BQUMsUUFBRyw4QkFBZ0I7QUFBQSxRQUNwQixnQkFBQUEsTUFBQyxRQUFHLHdEQUEwQztBQUFBLFFBQzlDLGdCQUFBQSxNQUFDLFFBQUcsc0RBQXdDO0FBQUEsU0FDaEQ7QUFBQSxNQUNBLGdCQUFBQSxNQUFDLE9BQUUsbTdCQUFxNkI7QUFBQSxJQUFJO0FBQUEsSUFDOTZCLGdCQUFnQjtBQUFBLE1BQUMsZ0JBQUFBLE1BQUMsT0FBRSw2SEFBK0c7QUFBQSxNQUNqSSxnQkFBQUMsT0FBQyxRQUNHO0FBQUEsd0JBQUFELE1BQUMsUUFBRywyRkFBNkU7QUFBQSxRQUNqRixnQkFBQUEsTUFBQyxRQUFHLDRJQUE4SDtBQUFBLFFBQ2xJLGdCQUFBQSxNQUFDLFFBQUcseURBQTJDO0FBQUEsUUFDL0MsZ0JBQUFBLE1BQUMsUUFBRyw4RkFBZ0Y7QUFBQSxRQUNwRixnQkFBQUEsTUFBQyxRQUFHLCtDQUFpQztBQUFBLFFBQ3JDLGdCQUFBQSxNQUFDLFFBQUcsNENBQThCO0FBQUEsU0FDdEM7QUFBQSxNQUNGLGdCQUFBQSxNQUFDLE9BQUUsa0VBQTBGO0FBQUEsSUFDN0Y7QUFBQSxJQUNBLFNBQVM7QUFBQSxJQUNULFFBQVE7QUFBQSxFQUNWO0FBQUEsRUFDQTtBQUFBLElBQ0UsU0FBUztBQUFBLElBQ1QsV0FBVztBQUFBLElBQ1gsS0FBSztBQUFBLElBQ0wsYUFBYTtBQUFBLElBQ2IsWUFBWSxLQUFLLFFBQVE7QUFBQSxJQUN6QixLQUFLO0FBQUEsSUFDTCxTQUFTO0FBQUEsSUFDVCxnQkFBZ0I7QUFBQSxJQUVoQixVQUFVO0FBQUEsSUFDVixPQUFPO0FBQUEsSUFDUCxjQUFjLENBQUMsZ0JBQUFBLE1BQUMsT0FBRSx5Z0JBQW1mLENBQUk7QUFBQSxJQUN6Z0IsVUFBVTtBQUFBLE1BQUMsZ0JBQUFDLE9BQUMsT0FBRTtBQUFBO0FBQUEsUUFBb0IsZ0JBQUFELE1BQUMsT0FBRSxNQUFLLDZCQUE0QiwyQkFBYTtBQUFBLFFBQUk7QUFBQSxTQUdwQjtBQUFBLE1BQ2pFLGdCQUFBQyxPQUFDLFFBQ0M7QUFBQSx3QkFBQUEsT0FBQyxRQUFHO0FBQUEsMEJBQUFELE1BQUMsT0FBRSx1Q0FBeUI7QUFBQSxVQUFJO0FBQUEsV0FBb0o7QUFBQSxRQUN4TCxnQkFBQUMsT0FBQyxRQUFHO0FBQUEsMEJBQUFELE1BQUMsT0FBRSw0QkFBYztBQUFBLFVBQUk7QUFBQSxXQUE2SztBQUFBLFFBQ3RNLGdCQUFBQyxPQUFDLFFBQUc7QUFBQSwwQkFBQUQsTUFBQyxPQUFFLHNDQUF3QjtBQUFBLFVBQUk7QUFBQSxXQUE0SztBQUFBLFFBQy9NLGdCQUFBQyxPQUFDLFFBQUc7QUFBQSwwQkFBQUQsTUFBQyxPQUFFLGtDQUFvQjtBQUFBLFVBQUk7QUFBQSxXQUFxSTtBQUFBLFFBQ3BLLGdCQUFBQyxPQUFDLFFBQUc7QUFBQSwwQkFBQUQsTUFBQyxPQUFFLHFDQUF1QjtBQUFBLFVBQUk7QUFBQSxXQUErRztBQUFBLFFBQ2pKLGdCQUFBQyxPQUFDLFFBQUc7QUFBQSwwQkFBQUQsTUFBQyxPQUFFLG9DQUFzQjtBQUFBLFVBQUk7QUFBQSxXQUF1RztBQUFBLFFBQ3hJLGdCQUFBQyxPQUFDLFFBQUc7QUFBQSwwQkFBQUQsTUFBQyxPQUFFLDBDQUE0QjtBQUFBLFVBQUk7QUFBQSxXQUEwSDtBQUFBLFNBQ25LO0FBQUEsSUFDQTtBQUFBLElBQ0YsZ0JBQWdCLENBQUMsZ0JBQUFBLE1BQUMsT0FBRSwrNkJBQzRYLENBQUk7QUFBQSxJQUNwWixXQUFXLGdCQUFBQyxPQUFBRixZQUFBLEVBQ1g7QUFBQSxzQkFBQUMsTUFBQyxTQUFNLEdBQUUsMkZBQTBGLEdBQUUsd01BQXNNO0FBQUEsTUFDM1MsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLGlGQUFnRixHQUFFLGlRQUErUDtBQUFBLE1BQzFWLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSw2R0FBNEcsR0FBRSx5VUFBdVU7QUFBQSxNQUM5YixnQkFBQUEsTUFBQyxTQUFNLEdBQUUsa0ZBQWlGLEdBQUUsNE5BQTBOO0FBQUEsTUFDdFQsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLDZGQUE0RixHQUFFLHFVQUFtVTtBQUFBLE1BQzFhLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSx3RUFBdUUsR0FBRSwyVUFBeVU7QUFBQSxPQUM1WjtBQUFBLElBQ0MsU0FBUztBQUFBLElBQ1QsUUFBUTtBQUFBLElBQ1Isc0JBQXFCO0FBQUEsRUFDdkI7QUFBQSxFQUNBO0FBQUEsSUFDRSxTQUFTO0FBQUEsSUFDVCxXQUFXO0FBQUEsSUFDWCxZQUFZLEtBQUssTUFBTTtBQUFBLElBQ3ZCLEtBQUs7QUFBQSxJQUNMLFNBQVM7QUFBQSxJQUNULGdCQUFnQjtBQUFBLElBQ2hCLE1BQU07QUFBQSxJQUVOLGVBQWU7QUFBQSxJQUNmLGNBQWM7QUFBQSxJQUNkLE9BQU87QUFBQSxJQUNQLFNBQVMsQ0FBQyxnQkFBQUEsTUFBQyxPQUFFLDhyQkFBZ3JCLENBQUk7QUFBQSxJQUNqc0IsUUFBUTtBQUFBLEVBQ1Y7QUFBQSxFQUNBO0FBQUEsSUFDRSxPQUFPO0FBQUEsSUFDUCxTQUFTO0FBQUEsSUFDVCxXQUFXO0FBQUEsSUFDWCxLQUFLO0FBQUEsSUFDTCxhQUFhO0FBQUEsSUFDYixZQUFZLEtBQUssUUFBUTtBQUFBLElBQ3pCLEtBQUs7QUFBQSxJQUNMLFNBQVM7QUFBQSxJQUNULGdCQUFnQjtBQUFBLElBRWhCLFVBQVU7QUFBQSxJQUNWLE9BQU87QUFBQSxJQUNQLGVBQWU7QUFBQSxJQUNmLGNBQWM7QUFBQSxJQUNkLGNBQWMsQ0FBQyxnQkFBQUEsTUFBQyxPQUFFLG9sQkFDaU4sQ0FBSTtBQUFBLElBQ3ZPLFVBQVU7QUFBQSxNQUFDLGdCQUFBQSxNQUFDLE9BQUUsa0pBQW9JO0FBQUEsTUFDbEosZ0JBQUFDLE9BQUMsUUFDQztBQUFBLHdCQUFBRCxNQUFDLFFBQUcsd0ZBQTBFO0FBQUEsUUFDOUUsZ0JBQUFBLE1BQUMsUUFBRyxvRUFBc0Q7QUFBQSxRQUMxRCxnQkFBQUEsTUFBQyxRQUFHLGdKQUFrSTtBQUFBLFFBQ3RJLGdCQUFBQSxNQUFDLFFBQUcsaUlBQW1IO0FBQUEsU0FDekg7QUFBQSxJQUNBO0FBQUEsSUFDQSxnQkFBZ0IsQ0FBQyxnQkFBQUEsTUFBQyxPQUFFLCtIQUE0RyxDQUFJO0FBQUEsSUFDcEksU0FBUztBQUFBLElBQ1QsUUFBUTtBQUFBLEVBQ1Y7QUFBQSxFQUNBO0FBQUEsSUFDRSxPQUFPO0FBQUEsSUFDUCxTQUFTO0FBQUEsSUFDVCxXQUFXO0FBQUEsSUFDWCxLQUFLO0FBQUEsSUFDTCxhQUFhO0FBQUEsSUFDYixZQUFZLEtBQUssUUFBUTtBQUFBLElBQ3pCLEtBQUs7QUFBQSxJQUNMLFNBQVM7QUFBQTtBQUFBLElBQ1QsZ0JBQWdCO0FBQUEsSUFFaEIsVUFBVTtBQUFBLElBQ1YsT0FBTztBQUFBLElBQ1AsY0FBYztBQUFBLElBQ2QsVUFBVTtBQUFBLElBQ1YsZ0JBQWdCO0FBQUEsSUFDaEIsU0FBUztBQUFBLElBQ1QsUUFBUTtBQUFBLElBQ1Isc0JBQXFCO0FBQUEsRUFDdkI7QUFBQSxFQUNBO0FBQUEsSUFDRSxPQUFPO0FBQUEsSUFDUCxTQUFTO0FBQUEsSUFDVCxXQUFXO0FBQUEsSUFDWCxLQUFLO0FBQUEsSUFDTCxhQUFhO0FBQUEsSUFDYixZQUFZLEtBQUssU0FBUztBQUFBLElBQzFCLEtBQUs7QUFBQSxJQUNMLFNBQVM7QUFBQSxJQUNULGdCQUFnQjtBQUFBLElBRWhCLFVBQVU7QUFBQSxJQUNWLE9BQU87QUFBQSxJQUNQLGVBQWU7QUFBQSxJQUNmLGNBQWM7QUFBQSxJQUNkLGNBQWMsQ0FBQyxnQkFBQUEsTUFBQyxPQUFFLHNQQUF3TyxDQUFJO0FBQUEsSUFDOVAsVUFBVSxDQUFDLGdCQUFBQSxNQUFDLE9BQUUscTBDQUMyTCxDQUFJO0FBQUEsSUFDN00sZ0JBQWdCLENBQUMsZ0JBQUFBLE1BQUMsT0FBRSx3aUJBQTBoQixDQUFJO0FBQUEsSUFDbGpCLFNBQVM7QUFBQSxJQUNULFFBQVE7QUFBQSxFQUNWO0FBQUEsRUFDQTtBQUFBLElBQ0UsU0FBUztBQUFBLElBQ1QsV0FBVztBQUFBLElBQ1gsTUFBTTtBQUFBLElBQ04sWUFBWSxLQUFLLGNBQVc7QUFBQSxJQUM1QixLQUFLO0FBQUEsSUFDTCxTQUFTO0FBQUEsSUFDVCxnQkFBZ0I7QUFBQSxJQUNoQixLQUFLO0FBQUEsSUFDTCxhQUFhO0FBQUEsSUFFYixjQUFjO0FBQUEsSUFDZCxlQUFlO0FBQUEsSUFDZixPQUFPO0FBQUEsSUFDUCxjQUFjLENBQUMsZ0JBQUFBLE1BQUMsT0FBRSxrZkFBdWQsQ0FBSTtBQUFBLElBQzdlLFVBQVU7QUFBQSxNQUFDLGdCQUFBQSxNQUFDLE9BQUUsNmpDQUNBO0FBQUEsTUFDWixnQkFBQUMsT0FBQyxRQUNDO0FBQUEsd0JBQUFELE1BQUMsUUFBRyx3RkFBMEU7QUFBQSxRQUM5RSxnQkFBQUEsTUFBQyxRQUFHLHlEQUEyQztBQUFBLFFBQy9DLGdCQUFBQSxNQUFDLFFBQUcsZ0ZBQWtFO0FBQUEsUUFDdEUsZ0JBQUFBLE1BQUMsUUFBRyx3RkFBMEU7QUFBQSxRQUM5RSxnQkFBQUEsTUFBQyxRQUFHLHVFQUF5RDtBQUFBLFNBQy9EO0FBQUEsSUFDRjtBQUFBLElBQ0EsZ0JBQWdCLENBQUMsZ0JBQUFBLE1BQUMsT0FBRSxzcUJBQXdwQixDQUFJO0FBQUEsSUFDaHJCLFNBQVM7QUFBQSxJQUNULFFBQVE7QUFBQSxJQUNSLGdCQUFnQjtBQUFBLElBQ2hCLDJCQUEyQjtBQUFBLEVBQzdCO0FBQUEsRUFDQTtBQUFBLElBQ0UsT0FBTztBQUFBLElBQ1AsU0FBUztBQUFBLElBQ1QsV0FBVztBQUFBLElBQ1gsS0FBSztBQUFBLElBQ0wsYUFBYTtBQUFBLElBQ2IsWUFBWSxLQUFLLFdBQVc7QUFBQSxJQUM1QixLQUFLO0FBQUEsSUFDTCxTQUFTO0FBQUEsSUFDVCxnQkFBZ0I7QUFBQSxJQUNoQixVQUFVO0FBQUEsSUFFVixPQUFPO0FBQUEsSUFDUCxlQUFlO0FBQUEsSUFDZixjQUFjO0FBQUEsSUFDZCxjQUFjLENBQUMsZ0JBQUFDLE9BQUMsT0FBRTtBQUFBO0FBQUEsTUFBMlEsZ0JBQUFELE1BQUMsc0JBQW1CLEtBQUksVUFBUyxNQUFLLG9CQUFrQjtBQUFBLE1BQUU7QUFBQSxPQUFvRyxDQUFJO0FBQUEsSUFDL2IsVUFBVSxDQUFDLGdCQUFBQSxNQUFDLE9BQUUscW9CQUF1bkIsQ0FBSTtBQUFBLElBQ3pvQixnQkFBZ0IsQ0FBQyxnQkFBQUEsTUFBQyxPQUFFLHNiQUF3YSxDQUFJO0FBQUEsSUFDaGMsU0FBUztBQUFBLElBQ1QsUUFBUTtBQUFBLEVBQ1Y7QUFBQSxFQUNBO0FBQUEsSUFDRSxPQUFPO0FBQUEsSUFDUCxTQUFTO0FBQUEsSUFDVCxXQUFXO0FBQUEsSUFDWCxLQUFLO0FBQUEsSUFDTCxhQUFhO0FBQUEsSUFDYixZQUFZLEtBQUssVUFBVTtBQUFBLElBQzNCLFVBQVU7QUFBQSxJQUNWLEtBQUs7QUFBQSxJQUNMLFNBQVM7QUFBQSxJQUNULGdCQUFnQjtBQUFBLElBRWhCLE9BQU87QUFBQSxJQUNQLGVBQWM7QUFBQSxJQUNkLGNBQWM7QUFBQSxJQUNkLGNBQWMsQ0FBQyxnQkFBQUMsT0FBQyxPQUFFO0FBQUE7QUFBQSxNQUEwQixnQkFBQUQsTUFBQyxzQkFBbUIsS0FBSSxTQUFRLE1BQUssZ0JBQWM7QUFBQSxNQUFFO0FBQUEsT0FBbTJCLENBQUk7QUFBQSxJQUN4OEIsVUFBVSxDQUFDLGdCQUFBQSxNQUFDLE9BQUUsa1RBQW9TLENBQUk7QUFBQSxJQUN0VCxnQkFBZ0IsQ0FBQyxnQkFBQUEsTUFBQyxPQUFFLDJUQUE2UyxDQUFJO0FBQUEsSUFDclUsU0FBUztBQUFBLElBQ1QsUUFBUTtBQUFBLEVBQ1Y7QUFBQSxFQUNBO0FBQUEsSUFDRSxPQUFPO0FBQUEsSUFDUCxTQUFTO0FBQUEsSUFDVCxXQUFXO0FBQUEsSUFDWCxLQUFLO0FBQUEsSUFDTCxhQUFhO0FBQUEsSUFDYixZQUFZLEtBQUssU0FBUztBQUFBLElBQzFCLEtBQUs7QUFBQSxJQUNMLFNBQVM7QUFBQSxJQUNULGdCQUFnQjtBQUFBLElBRWhCLGNBQWE7QUFBQSxJQUNiLGVBQWU7QUFBQSxJQUNmLE9BQU87QUFBQSxJQUNQLGNBQWM7QUFBQSxJQUNkLFVBQVU7QUFBQSxJQUNWLGdCQUFnQjtBQUFBLElBQ2hCLFNBQVM7QUFBQSxJQUNULE1BQUssZ0JBQUFDLE9BQUFGLFlBQUEsRUFDTDtBQUFBLHNCQUFBQyxNQUFDLFNBQUksS0FBSSxzR0FBcUc7QUFBQSxNQUFNO0FBQUEsTUFDcEgsZ0JBQUFBLE1BQUMsT0FBRSw4S0FBNko7QUFBQSxNQUNoSyxnQkFBQUEsTUFBQyxTQUFJLEtBQUksMkdBQTBHO0FBQUEsTUFBTTtBQUFBLE1BQ3pILGdCQUFBQSxNQUFDLE9BQUUsd0lBQTBIO0FBQUEsTUFBSTtBQUFBLE1BQ2hJLGdCQUFBQSxNQUFDLFNBQUksS0FBSSwyR0FBMEc7QUFBQSxNQUFNO0FBQUEsTUFDMUgsZ0JBQUFBLE1BQUMsT0FBRSw4SEFBZ0g7QUFBQSxNQUFJO0FBQUEsTUFDdkgsZ0JBQUFBLE1BQUMsU0FBSSxLQUFJLDZGQUE0RjtBQUFBLE1BQU07QUFBQSxNQUMzRyxnQkFBQUEsTUFBQyxPQUFFLDBGQUE0RTtBQUFBLE9BQy9FO0FBQUEsSUFDQSxVQUFVO0FBQUEsSUFDVixXQUFXLGdCQUFBQyxPQUFBRixZQUFBLEVBQ1Q7QUFBQSxzQkFBQUM7QUFBQSxRQUFDO0FBQUE7QUFBQSxVQUFNLEdBQUU7QUFBQSxVQUNQLEdBQUU7QUFBQTtBQUFBLE1BQTJoQjtBQUFBLE1BQy9oQixnQkFBQUE7QUFBQSxRQUFDO0FBQUE7QUFBQSxVQUFNLEdBQUU7QUFBQSxVQUNQLEdBQUU7QUFBQTtBQUFBLE1BQXlYO0FBQUEsTUFDN1gsZ0JBQUFBO0FBQUEsUUFBQztBQUFBO0FBQUEsVUFBTSxHQUFFO0FBQUEsVUFDUCxHQUFFO0FBQUE7QUFBQSxNQUF5UjtBQUFBLE1BQzdSLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSwyRkFBMEYsR0FBRSwrSUFBOEk7QUFBQSxNQUNuUCxnQkFBQUE7QUFBQSxRQUFDO0FBQUE7QUFBQSxVQUFNLEdBQUU7QUFBQSxVQUNQLEdBQUU7QUFBQTtBQUFBLE1BQW1QO0FBQUEsTUFDdlAsZ0JBQUFBO0FBQUEsUUFBQztBQUFBO0FBQUEsVUFBTSxHQUFFO0FBQUEsVUFDUCxHQUFFO0FBQUE7QUFBQSxNQUFzSTtBQUFBLE1BQzFJLGdCQUFBQTtBQUFBLFFBQUM7QUFBQTtBQUFBLFVBQU0sR0FBRTtBQUFBLFVBQ1AsR0FBRTtBQUFBO0FBQUEsTUFBMEQ7QUFBQSxNQUM5RCxnQkFBQUE7QUFBQSxRQUFDO0FBQUE7QUFBQSxVQUFNLEdBQUU7QUFBQSxVQUNQLEdBQUU7QUFBQTtBQUFBLE1BQXdHO0FBQUEsTUFDNUcsZ0JBQUFBO0FBQUEsUUFBQztBQUFBO0FBQUEsVUFBTSxHQUFFO0FBQUEsVUFDUCxHQUFFO0FBQUE7QUFBQSxNQUEwTjtBQUFBLE9BQ2hPO0FBQUEsSUFDQSxRQUFRO0FBQUEsRUFDVjtBQUFBLEVBQ0E7QUFBQSxJQUNFLFNBQVM7QUFBQSxJQUNULFdBQVc7QUFBQSxJQUNYLFlBQVksS0FBSyxVQUFVO0FBQUEsSUFDM0IsS0FBSztBQUFBLElBQ0wsU0FBUztBQUFBLElBQ1QsZ0JBQWdCO0FBQUEsSUFDaEIsTUFBTTtBQUFBLElBRU4sY0FBYztBQUFBLElBQ2QsZUFBZTtBQUFBLElBQ2YsT0FBTztBQUFBLElBQ1AsU0FBUyxDQUFDLGdCQUFBQSxNQUFDLE9BQUUsK3VCQUFpdUIsQ0FBSTtBQUFBLElBQ2x2QixRQUFRO0FBQUEsRUFDVjtBQUFBLEVBQ0E7QUFBQSxJQUNFLFNBQVM7QUFBQSxJQUNULFdBQVc7QUFBQSxJQUNYLFlBQVksS0FBSyxNQUFNO0FBQUEsSUFDdkIsS0FBSztBQUFBLElBQ0wsYUFBYTtBQUFBLElBQ2IsS0FBSztBQUFBLElBQ0wsU0FBUztBQUFBLElBQ1QsZ0JBQWdCO0FBQUEsSUFFaEIsZUFBZTtBQUFBLElBQ2YsY0FBYztBQUFBLElBQ2QsT0FBTztBQUFBLElBQ1AsTUFBTTtBQUFBLElBQ04sU0FBUztBQUFBLE1BQUMsZ0JBQUFBLE1BQUMsT0FBRSw2dkRBS1g7QUFBQSxNQUNBLGdCQUFBQyxPQUFDLFFBQ0c7QUFBQSx3QkFBQUEsT0FBQyxRQUNHO0FBQUEsMEJBQUFELE1BQUMsT0FBRSxzREFBd0M7QUFBQSxVQUFJO0FBQUEsV0FDbkQ7QUFBQSxRQUNBLGdCQUFBQyxPQUFDLFFBQ0c7QUFBQSwwQkFBQUQsTUFBQyxPQUFFLHNEQUF3QztBQUFBLFVBQUk7QUFBQSxXQUNuRDtBQUFBLFFBQ0EsZ0JBQUFDLE9BQUMsUUFDRztBQUFBLDBCQUFBRCxNQUFDLE9BQUUsNkNBQStCO0FBQUEsVUFBSTtBQUFBLFdBQzFDO0FBQUEsUUFDQSxnQkFBQUMsT0FBQyxRQUNHO0FBQUEsMEJBQUFELE1BQUMsT0FBRSx3REFBMEM7QUFBQSxVQUFJO0FBQUEsV0FDckQ7QUFBQSxRQUNBLGdCQUFBQyxPQUFDLFFBQ0c7QUFBQSwwQkFBQUQsTUFBQyxPQUFFLHFDQUF1QjtBQUFBLFVBQUk7QUFBQSxXQUNsQztBQUFBLFNBQ0o7QUFBQSxJQUNBO0FBQUEsSUFDRixRQUFRO0FBQUEsRUFDVjtBQUFBLEVBQ0E7QUFBQSxJQUNFLFNBQVM7QUFBQSxJQUNULE9BQU87QUFBQSxJQUNQLFdBQVc7QUFBQSxJQUNYLEtBQUs7QUFBQSxJQUNMLGFBQWE7QUFBQSxJQUNiLFlBQVksS0FBSyxZQUFZO0FBQUEsSUFDN0IsS0FBSztBQUFBLElBQ0wsU0FBUztBQUFBLElBQ1QsZ0JBQWdCO0FBQUEsSUFFaEIsVUFBVTtBQUFBLElBQ1YsY0FBYztBQUFBLElBQ2QsZUFBZTtBQUFBLElBQ2YsT0FBTztBQUFBLElBQ1AsY0FBYyxDQUFDLGdCQUFBQyxPQUFDLE9BQUU7QUFBQTtBQUFBLE1BQ2lFLGdCQUFBRCxNQUFDLE9BQUUsTUFBSyx1QkFBc0Isb0JBQU07QUFBQSxNQUFJO0FBQUEsT0FNYyxDQUFJO0FBQUEsSUFDN0ksVUFBVTtBQUFBLE1BQUMsZ0JBQUFDLE9BQUMsT0FBRTtBQUFBO0FBQUEsUUFJNEYsZ0JBQUFELE1BQUMsaUJBQWMsS0FBSSxVQUFTLFVBQVMsVUFBUyxLQUFJLEtBQUk7QUFBQSxRQUFFO0FBQUEsU0FBRTtBQUFBLE1BQ3BLLGdCQUFBQyxPQUFDLE9BQUU7QUFBQTtBQUFBLFFBQ29JLGdCQUFBRCxNQUFDLGlCQUFjLEtBQUksVUFBUyxVQUFTLFVBQVMsS0FBSSxLQUFJO0FBQUEsUUFBRTtBQUFBLFNBRXRLO0FBQUEsSUFBSTtBQUFBLElBQzdCLGdCQUFnQjtBQUFBLE1BQ2QsZ0JBQUFBLE1BQUMsT0FBRSw2WkFFd0k7QUFBQSxJQUM3STtBQUFBLElBQ0EsZ0JBQWdCO0FBQUEsSUFDaEIsc0JBQXNCO0FBQUEsSUFDdEIsMkJBQTJCO0FBQUEsSUFDM0IsWUFBWSxnQkFBQUEsTUFBQyxpQkFBYztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxJQWUzQixTQUFTO0FBQUEsSUFDVCxRQUFRO0FBQUEsRUFDVjtBQUFBLEVBQ0E7QUFBQSxJQUNFLFNBQVM7QUFBQSxJQUNULFdBQVc7QUFBQSxJQUNYLEtBQUs7QUFBQSxJQUNMLGFBQWE7QUFBQSxJQUNiLFlBQVksS0FBSyxLQUFLO0FBQUEsSUFDdEIsS0FBSztBQUFBLElBQ0wsU0FBUztBQUFBLElBQ1QsZ0JBQWdCO0FBQUEsSUFFaEIsVUFBVTtBQUFBLElBQ1YsZUFBYztBQUFBLElBQ2QsY0FBYztBQUFBLElBQ2QsT0FBTztBQUFBLElBQ1AsU0FBUyxDQUFDLGdCQUFBQSxNQUFDLE9BQUUsNjlCQUkrVCxDQUFJO0FBQUEsSUFDaFYsUUFBUTtBQUFBLEVBQ1Y7QUFBQSxFQUNBO0FBQUEsSUFDRSxPQUFPO0FBQUEsSUFDUCxTQUFTO0FBQUEsSUFDVCxXQUFXO0FBQUEsSUFDWCxLQUFLO0FBQUEsSUFDTCxhQUFhO0FBQUEsSUFDYixZQUFZLEtBQUssU0FBUztBQUFBLElBQzFCLEtBQUs7QUFBQSxJQUNMLFNBQVM7QUFBQSxJQUNULGdCQUFnQjtBQUFBLElBRWhCLFVBQVU7QUFBQSxJQUNWLGNBQWE7QUFBQSxJQUNiLGVBQWU7QUFBQSxJQUNmLE9BQU87QUFBQSxJQUNQLGNBQWMsQ0FBQyxnQkFBQUEsTUFBQyxPQUFFLCtsQkFDbEIsQ0FBSTtBQUFBLElBQ0osVUFBVSxDQUFDLGdCQUFBQSxNQUFDLE9BQUUsK2pDQUM0YixDQUFJO0FBQUEsSUFDOWMsZ0JBQWU7QUFBQSxNQUFDLGdCQUFBQSxNQUFDLE9BQUUsK2tCQUN3QjtBQUFBLE1BQ3pDLGdCQUFBQyxPQUFDLFFBQ0M7QUFBQSx3QkFBQUEsT0FBQyxRQUFHO0FBQUEsMEJBQUFELE1BQUMsT0FBRSxrQ0FBb0I7QUFBQSxVQUFJO0FBQUEsV0FBNEc7QUFBQSxRQUMzSSxnQkFBQUMsT0FBQyxRQUFHO0FBQUEsMEJBQUFELE1BQUMsT0FBRSxxQ0FBdUI7QUFBQSxVQUFJO0FBQUEsV0FBNkk7QUFBQSxRQUMvSyxnQkFBQUMsT0FBQyxRQUFHO0FBQUEsMEJBQUFELE1BQUMsT0FBRSx1Q0FBeUI7QUFBQSxVQUFJO0FBQUEsV0FBeUc7QUFBQSxRQUM3SSxnQkFBQUMsT0FBQyxRQUFHO0FBQUEsMEJBQUFELE1BQUMsT0FBRSx3Q0FBMEI7QUFBQSxVQUFJO0FBQUEsV0FBZ0Y7QUFBQSxRQUNySCxnQkFBQUMsT0FBQyxRQUFHO0FBQUEsMEJBQUFELE1BQUMsT0FBRSxpREFBbUM7QUFBQSxVQUFJO0FBQUEsV0FBcUg7QUFBQSxRQUNuSyxnQkFBQUMsT0FBQyxRQUFHO0FBQUEsMEJBQUFELE1BQUMsT0FBRSxrQ0FBb0I7QUFBQSxVQUFJO0FBQUEsV0FBd0k7QUFBQSxTQUN6SztBQUFBLElBQ0Y7QUFBQSxJQUNBLFdBQVUsZ0JBQUFDLE9BQUFGLFlBQUEsRUFDVjtBQUFBLHNCQUFBQyxNQUFDLFNBQU0sR0FBRSx5TUFBd00sR0FBRSxnVUFBcVQ7QUFBQSxNQUN4Z0IsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLDhKQUF3SixHQUFFLDhSQUF3UjtBQUFBLE1BQzNiLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSx1RUFBc0UsR0FBRSx1SUFBc0k7QUFBQSxNQUN2TixnQkFBQUEsTUFBQyxTQUFNLEdBQUUsOEVBQTZFLEdBQUUsa1FBQWlRO0FBQUEsTUFDelYsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLHFKQUFvSixHQUFFLDRPQUFzTztBQUFBLE1BQ3JZLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSxrSEFBNEcsR0FBRSx1T0FBc087QUFBQSxNQUM3VixnQkFBQUEsTUFBQyxTQUFNLEdBQUUsb0dBQW1HLEdBQUUscVFBQW9RO0FBQUEsTUFDbFgsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLHNEQUFxRCxHQUFFLDRPQUE0TjtBQUFBLE1BQzVSLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSx3RUFBdUUsR0FBRSx1REFBc0Q7QUFBQSxNQUN4SSxnQkFBQUEsTUFBQyxTQUFNLEdBQUUsNEdBQTJHLEdBQUUsNkhBQTRIO0FBQUEsTUFDbFAsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLG9HQUFtRyxHQUFFLDZNQUE0TTtBQUFBLE1BQzFULGdCQUFBQSxNQUFDLFNBQU0sR0FBRSw0RUFBMkUsR0FBRSxvVEFBeVM7QUFBQSxNQUMvWCxnQkFBQUEsTUFBQyxTQUFNLEdBQUUsaURBQWdELEdBQUUsb0RBQXlDO0FBQUEsT0FDcEc7QUFBQSxJQUNBLFNBQVM7QUFBQSxJQUNULFFBQVE7QUFBQSxFQUNWO0FBQUEsRUFDQTtBQUFBLElBQ0UsT0FBTztBQUFBLElBQ1AsU0FBUztBQUFBLElBQ1QsV0FBVztBQUFBLElBQ1gsS0FBSztBQUFBLElBQ0wsYUFBYTtBQUFBLElBQ2IsWUFBWSxLQUFLLFNBQVM7QUFBQSxJQUMxQixLQUFLO0FBQUEsSUFDTCxTQUFTO0FBQUEsSUFDVCxnQkFBZ0I7QUFBQSxJQUVoQixVQUFVO0FBQUEsSUFDVixPQUFPO0FBQUEsSUFDUCxjQUFhLENBQUMsZ0JBQUFBLE1BQUMsT0FBRSxDQUFJO0FBQUEsSUFDckIsVUFBVSxDQUFDLGdCQUFBQSxNQUFDLE9BQUUsQ0FBSTtBQUFBLElBQ2xCLGdCQUFnQixDQUFDLGdCQUFBQSxNQUFDLE9BQUUsQ0FBSTtBQUFBLElBQ3hCLFNBQVM7QUFBQSxJQUNULFFBQVE7QUFBQSxFQUNWO0FBQUEsRUFDQTtBQUFBLElBQ0UsU0FBUztBQUFBLElBQ1QsV0FBVTtBQUFBLElBQ1YsWUFBWSxLQUFLLFdBQVc7QUFBQSxJQUM1QixLQUFLO0FBQUEsSUFDTCxTQUFTO0FBQUEsSUFDVCxnQkFBZ0I7QUFBQSxJQUVoQixPQUFPO0FBQUEsSUFDUCxjQUFhO0FBQUEsSUFDYixlQUFjO0FBQUEsSUFDZCxNQUFNO0FBQUEsSUFDTixNQUFNO0FBQUEsTUFBQyxnQkFBQUEsTUFBQyxPQUFFLHNRQUF3UDtBQUFBLE1BQ2hRLGdCQUFBQyxPQUFDLFFBQ0M7QUFBQSx3QkFBQUQsTUFBQyxRQUFHLDRDQUE4QjtBQUFBLFFBQ2xDLGdCQUFBQSxNQUFDLFFBQUcsMENBQTRCO0FBQUEsUUFDaEMsZ0JBQUFBLE1BQUMsUUFBRywrQ0FBaUM7QUFBQSxTQUN2QztBQUFBLE1BQ0EsZ0JBQUFDLE9BQUMsT0FBRTtBQUFBO0FBQUEsUUFPZ0QsZ0JBQUFELE1BQUMsc0JBQW1CLEtBQUksYUFBWSxNQUFLLHFCQUFvQjtBQUFBLFFBQUU7QUFBQSxTQUM2UTtBQUFBLElBQUk7QUFBQSxJQUNyWSxTQUFTO0FBQUEsSUFDVCxRQUFRO0FBQUEsSUFDUiwyQkFBMkI7QUFBQSxJQUMzQixzQkFBcUI7QUFBQSxFQUN2QjtBQUFBLEVBQ0E7QUFBQSxJQUNFLFNBQVM7QUFBQSxJQUNULFdBQVc7QUFBQSxJQUNYLFlBQVksS0FBSyxNQUFNO0FBQUEsSUFDdkIsS0FBSztBQUFBLElBQ0wsYUFBYTtBQUFBLElBQ2IsS0FBSztBQUFBLElBQ0wsU0FBUztBQUFBLElBQ1QsZ0JBQWdCO0FBQUEsSUFFaEIsT0FBTztBQUFBLElBQ1AsZUFBZTtBQUFBLElBQ2YsY0FBYztBQUFBLElBQ2QsTUFBTTtBQUFBLElBQ04sU0FBUztBQUFBLE1BQUMsZ0JBQUFBLE1BQUMsT0FBRSxzdkNBR1g7QUFBQSxNQUVBLGdCQUFBQyxPQUFDLFFBQ0c7QUFBQSx3QkFBQUEsT0FBQyxRQUNHO0FBQUEsMEJBQUFELE1BQUMsT0FBRSxtQ0FBcUI7QUFBQSxVQUFJO0FBQUEsV0FDaEM7QUFBQSxRQUNBLGdCQUFBQyxPQUFDLFFBQ0c7QUFBQSwwQkFBQUQsTUFBQyxPQUFFLG9DQUFzQjtBQUFBLFVBQUk7QUFBQSxXQUNqQztBQUFBLFFBQ0EsZ0JBQUFDLE9BQUMsUUFDRztBQUFBLDBCQUFBRCxNQUFDLE9BQUUsd0NBQTBCO0FBQUEsVUFBSTtBQUFBLFdBQ3JDO0FBQUEsUUFDQSxnQkFBQUMsT0FBQyxRQUNHO0FBQUEsMEJBQUFELE1BQUMsT0FBRSxtQ0FBcUI7QUFBQSxVQUFJO0FBQUEsV0FDaEM7QUFBQSxTQUNKO0FBQUEsSUFBSztBQUFBLElBQ1AsUUFBUTtBQUFBLEVBQ1Y7QUFBQSxFQUNBO0FBQUEsSUFDRSxPQUFPO0FBQUEsSUFDUCxTQUFTO0FBQUEsSUFDVCxXQUFXO0FBQUEsSUFDWCxLQUFLO0FBQUEsSUFDTCxhQUFhO0FBQUEsSUFDYixZQUFZLEtBQUssYUFBYTtBQUFBLElBQzlCLEtBQUs7QUFBQSxJQUNMLFNBQVM7QUFBQSxJQUNULGdCQUFnQjtBQUFBLElBRWhCLE9BQU87QUFBQSxJQUNQLGNBQWM7QUFBQSxJQUNkLGVBQWU7QUFBQSxJQUNmLGNBQWMsQ0FBQyxnQkFBQUMsT0FBQyxPQUFFO0FBQUE7QUFBQSxNQUFxVSxnQkFBQUQsTUFBQyxzQkFBbUIsS0FBSSxZQUFXLE1BQUssT0FBTTtBQUFBLE1BQUU7QUFBQSxPQUFpQixDQUFJO0FBQUEsSUFDNVosVUFBVSxDQUFDLGdCQUFBQSxNQUFDLE9BQUUscXFCQUF1cEIsQ0FBSTtBQUFBLElBQ3pxQixnQkFBZ0IsQ0FBQyxnQkFBQUEsTUFBQyxPQUFFLHc2QkFBMDVCLENBQUk7QUFBQSxJQUNsN0IsVUFBVTtBQUFBLElBQ1YsV0FBVyxnQkFBQUMsT0FBQUYsWUFBQSxFQUNUO0FBQUEsc0JBQUFDLE1BQUMsU0FBTSxHQUFFLDBEQUF5RCxHQUFFLGdYQUErVztBQUFBLE1BQ25iLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSxnRUFBK0QsR0FBRSxvV0FBbVc7QUFBQSxNQUM3YSxnQkFBQUEsTUFBQyxTQUFNLEdBQUUsb0RBQW1ELEdBQUUsa2pCQUFpakI7QUFBQSxNQUMvbUIsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLGdFQUErRCxHQUFFLGlYQUFnWDtBQUFBLE9BQzViO0FBQUEsSUFDQSxTQUFTO0FBQUEsSUFDVCxRQUFRO0FBQUEsRUFDVjtBQUFBLEVBQ0E7QUFBQSxJQUNFLE9BQU87QUFBQSxJQUNQLFNBQVM7QUFBQSxJQUNULFdBQVc7QUFBQSxJQUNYLEtBQUs7QUFBQSxJQUNMLGFBQWE7QUFBQSxJQUNiLFlBQVksS0FBSyxRQUFRO0FBQUEsSUFDekIsS0FBSztBQUFBLElBQ0wsU0FBUztBQUFBLElBQ1QsZ0JBQWdCO0FBQUEsSUFDaEIsVUFBVTtBQUFBLElBRVYsZUFBZTtBQUFBLElBQ2YsY0FBYztBQUFBLElBQ2QsT0FBTztBQUFBLElBQ1AsY0FBYyxDQUFDLGdCQUFBQSxNQUFDLE9BQUUsNFNBQThSLENBQUk7QUFBQSxJQUNwVCxVQUFVLENBQUMsZ0JBQUFBLE1BQUMsT0FBRSxzaENBQ29mLENBQUk7QUFBQSxJQUN0Z0IsZ0JBQWdCLENBQUMsZ0JBQUFBLE1BQUMsT0FBRSx1b0JBQ3BCLENBQUk7QUFBQSxJQUNKLFNBQVM7QUFBQSxJQUNULFFBQVE7QUFBQSxJQUNSLFdBQVUsZ0JBQUFDLE9BQUFGLFlBQUEsRUFDVjtBQUFBLHNCQUFBQyxNQUFDLFNBQU0sR0FBRSxnRUFBK0QsR0FBRSx3QkFBc0I7QUFBQSxNQUNoRyxnQkFBQUEsTUFBQyxTQUFNLEdBQUUsMC9CQUF5L0IsR0FBRSxnR0FBK0Y7QUFBQSxNQUNubUMsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLDREQUEyRCxHQUFFLGtHQUFpRztBQUFBLE1BQ3ZLLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSxrRUFBaUUsR0FBRSw2SkFBNEo7QUFBQSxNQUN4TyxnQkFBQUEsTUFBQyxTQUFNLEdBQUUsNEVBQWlFLEdBQUUsc0pBQXFKO0FBQUEsTUFDak8sZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLDRCQUEyQixHQUFFLHNDQUFxQztBQUFBLE1BQzNFLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSx5SkFBd0osR0FBRSwyZkFBMGY7QUFBQSxNQUM3cEIsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLCtHQUF5RyxHQUFFLGliQUFnYjtBQUFBLE1BQ3BpQixnQkFBQUEsTUFBQyxTQUFNLEdBQUUsc0RBQXFELEdBQUUsMmJBQTBiO0FBQUEsTUFDMWYsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLHVGQUFzRixHQUFFLG9vQkFBa29CO0FBQUEsTUFDbnVCLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSw4TkFBNk4sR0FBRSw2K0ZBQTIrRjtBQUFBLE1BQ250RyxnQkFBQUEsTUFBQyxTQUFNLEdBQUUsd0hBQXVILEdBQUUsdTFDQUFnMUM7QUFBQSxNQUNsOUMsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLDZMQUE0TCxHQUFFLGczQ0FBODJDO0FBQUEsTUFDcmpELGdCQUFBQSxNQUFDLFNBQU0sR0FBRSwwTEFBeUwsR0FBRSx5M0RBQXUzRDtBQUFBLE1BQzNqRSxnQkFBQUEsTUFBQyxTQUFNLEdBQUUseWZBQXdmLEdBQUUsZzZCQUE4NUI7QUFBQSxNQUNqNkMsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLGdyQkFBK3FCLEdBQUUsMkdBQXlHO0FBQUEsTUFDbnlCLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSxlQUFjLEdBQUUsNmxEQUEybEQ7QUFBQSxNQUNwbkQsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLG1KQUFrSixHQUFFLGdHQUE4RjtBQUFBLE9BQzNQO0FBQUEsSUFDQSxzQkFBc0I7QUFBQSxFQUN4QjtBQUFBLEVBQ0E7QUFBQSxJQUNFLE9BQU87QUFBQSxJQUNQLFNBQVM7QUFBQSxJQUNULFdBQVc7QUFBQSxJQUNYLEtBQUs7QUFBQSxJQUNMLGFBQWE7QUFBQSxJQUNiLFlBQVksS0FBSyxXQUFRO0FBQUEsSUFDekIsS0FBSztBQUFBLElBQ0wsU0FBUztBQUFBLElBQ1QsZ0JBQWdCO0FBQUEsSUFFaEIsT0FBTztBQUFBLElBQ1AsZUFBZTtBQUFBLElBQ2YsY0FBYztBQUFBLElBQ2QsY0FBYyxDQUFDLGdCQUFBQSxNQUFDLE9BQUUsMGFBQXlaLENBQUk7QUFBQSxJQUMvYSxVQUFVLENBQUMsZ0JBQUFBLE1BQUMsT0FBRSxrbkJBQW9tQixDQUFJO0FBQUEsSUFDdG5CLGdCQUFnQixDQUFDLGdCQUFBQSxNQUFDLE9BQUUsK1ZBQTRVLENBQUk7QUFBQSxJQUNwVyxVQUFVO0FBQUEsSUFDVixTQUFTO0FBQUEsSUFDVCxRQUFRO0FBQUEsRUFDVjtBQUFBLEVBQ0E7QUFBQSxJQUNFLE9BQU87QUFBQSxJQUNQLFNBQVM7QUFBQSxJQUNULFdBQVc7QUFBQSxJQUNYLEtBQUs7QUFBQSxJQUNMLGFBQWE7QUFBQSxJQUNiLFlBQVksS0FBSyxNQUFNO0FBQUEsSUFDdkIsS0FBSztBQUFBLElBQ0wsU0FBUztBQUFBLElBQ1QsZ0JBQWdCO0FBQUEsSUFFaEIsZUFBZTtBQUFBLElBQ2YsY0FBYztBQUFBLElBQ2QsT0FBTztBQUFBLElBQ1AsY0FBYztBQUFBLElBQ2QsVUFBVSxDQUFDLGdCQUFBQSxNQUFDLE9BQUUsNmxFQUFxa0UsQ0FBSTtBQUFBLElBQ3ZsRSxnQkFBZ0I7QUFBQSxJQUNoQixTQUFTO0FBQUEsSUFDVCxVQUFVO0FBQUEsSUFDVixXQUFXLGdCQUFBQyxPQUFBRixZQUFBLEVBQ1Q7QUFBQSxzQkFBQUMsTUFBQyxTQUFNLEdBQUUsZ0pBQStJLEdBQUUsc3pDQUFxekM7QUFBQSxNQUMvOEMsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLGtGQUFpRixHQUFFLGdoQkFBK2dCO0FBQUEsTUFDM21CLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSwyREFBMEQsR0FBRSwwMUJBQXMxQjtBQUFBLE1BQzM1QixnQkFBQUEsTUFBQyxTQUFNLEdBQUUsdUNBQXNDLEdBQUUscTJDQUErMUM7QUFBQSxNQUNoNUMsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLGdEQUErQyxHQUFFLHl1QkFBd3VCO0FBQUEsTUFDbHlCLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSwwREFBeUQsR0FBRSwrU0FBOFM7QUFBQSxNQUNsWCxnQkFBQUEsTUFBQyxTQUFNLEdBQUUsNERBQTJELEdBQUUsa2dDQUE0L0I7QUFBQSxNQUNsa0MsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLDZCQUE0QixHQUFFLGswQkFBNHpCO0FBQUEsTUFDbjJCLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSxxR0FBb0csR0FBRSx5dEJBQXd0QjtBQUFBLE1BQ3YwQixnQkFBQUEsTUFBQyxTQUFNLEdBQUUsbUVBQWtFLEdBQUUsaTdCQUFnN0I7QUFBQSxNQUM3L0IsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLCtHQUE4RyxHQUFFLHV5QkFBNHhCO0FBQUEsTUFDcjVCLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSw4RUFBNkUsR0FBRSxpaUNBQWdpQztBQUFBLE9BQzFuQztBQUFBLElBQ0EsUUFBUTtBQUFBLElBQ1Isc0JBQXNCO0FBQUEsRUFDeEI7QUFBQSxFQUNBO0FBQUEsSUFDRSxTQUFTO0FBQUEsSUFDVCxXQUFXO0FBQUEsSUFDWCxLQUFLO0FBQUEsSUFDTCxhQUFhO0FBQUEsSUFDYixZQUFZLEtBQUssVUFBVTtBQUFBLElBQzNCLEtBQUs7QUFBQSxJQUNMLFNBQVM7QUFBQSxJQUNULGdCQUFnQjtBQUFBLElBRWhCLE9BQU87QUFBQSxJQUNQLGNBQWMsQ0FBQyxnQkFBQUMsT0FBQyxPQUFFO0FBQUE7QUFBQSxNQUFzZSxnQkFBQUQsTUFBQyxPQUFFLE1BQUssNEdBQTRHLHNCQUFRO0FBQUEsTUFBSTtBQUFBLE9BQzFTLENBQUk7QUFBQSxJQUNsVixVQUFVLENBQUMsZ0JBQUFBLE1BQUMsT0FBRSxtbkVBT3NLLENBQUk7QUFBQSxJQUN4TCxnQkFBZ0IsQ0FBQyxnQkFBQUEsTUFBQyxPQUFFLHM5Q0FJd00sQ0FBSTtBQUFBLElBQ2hPLFNBQVM7QUFBQSxJQUNULFFBQVE7QUFBQSxJQUNSLFdBQVcsZ0JBQUFDLE9BQUFGLFlBQUEsRUFDWDtBQUFBLHNCQUFBQyxNQUFDLFNBQU0sR0FBRSw0REFBaUQsR0FBRSx1ZEFBa2M7QUFBQSxNQUM5ZixnQkFBQUEsTUFBQyxTQUFNLEdBQUUsa0RBQWlELEdBQUUsOE5BQTZOO0FBQUEsTUFDelIsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLHlFQUF3RSxHQUFFLDhZQUE2WTtBQUFBLE1BQ2hlLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSw4QkFBNkIsR0FBRSw0TkFBMk47QUFBQSxNQUNuUSxnQkFBQUEsTUFBQyxTQUFNLEdBQUUsa0RBQWlELEdBQUUsaWVBQWdlO0FBQUEsTUFDNWhCLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSw2Q0FBNEMsR0FBRSx1c0JBQXNzQjtBQUFBLE1BQzd2QixnQkFBQUEsTUFBQyxTQUFNLEdBQUUscUVBQW9FLEdBQUUsZ1dBQStWO0FBQUEsTUFDOWEsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLHFFQUFvRSxHQUFFLHNZQUFxWTtBQUFBLE1BQ3BkLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSxnRUFBK0QsR0FBRSwwYUFBeWE7QUFBQSxNQUNuZixnQkFBQUEsTUFBQyxTQUFNLEdBQUUsb0VBQW1FLEdBQUUsMjFCQUEwMUI7QUFBQSxNQUN4NkIsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLDJDQUEwQyxHQUFFLHFXQUFvVztBQUFBLE1BQ3paLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSwwREFBeUQsR0FBRSxvWEFBbVg7QUFBQSxNQUN2YixnQkFBQUEsTUFBQyxTQUFNLEdBQUUsc0NBQXFDLEdBQUUsNk9BQTRPO0FBQUEsTUFDNVIsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLDZCQUE0QixHQUFFLGtRQUFpUTtBQUFBLE1BQ3hTLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSwyREFBMEQsR0FBRSxtU0FBa1M7QUFBQSxNQUN2VyxnQkFBQUEsTUFBQyxTQUFNLEdBQUUsa0VBQWlFLEdBQUUsd0tBQXVLO0FBQUEsTUFDblAsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLGlGQUFnRixHQUFFLHlpQkFBd2lCO0FBQUEsTUFDbm9CLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSx1SUFBc0ksR0FBRSx3aEJBQXVoQjtBQUFBLE1BQ3hxQixnQkFBQUEsTUFBQyxTQUFNLEdBQUUsOEVBQTZFLEdBQUUsb1BBQW1QO0FBQUEsTUFDM1UsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLHFEQUFvRCxHQUFFLDRpQkFBMmlCO0FBQUEsT0FDMW1CO0FBQUEsSUFDQSxzQkFBcUI7QUFBQSxFQUN2QjtBQUFBLEVBQ0E7QUFBQSxJQUNFLE9BQU87QUFBQSxJQUNQLFNBQVM7QUFBQSxJQUNULFdBQVc7QUFBQSxJQUNYLEtBQUs7QUFBQSxJQUNMLGFBQWE7QUFBQSxJQUNiLFlBQVksS0FBSyxRQUFRO0FBQUEsSUFDekIsS0FBSztBQUFBLElBQ0wsU0FBUztBQUFBLElBQ1QsZ0JBQWdCO0FBQUEsSUFFaEIsVUFBUztBQUFBLElBQ1QsT0FBTztBQUFBLElBQ1AsY0FBYztBQUFBLElBQ2QsZUFBZTtBQUFBLElBQ2YsY0FBYyxDQUFDLGdCQUFBQyxPQUFDLE9BQUU7QUFBQTtBQUFBLE1BQXdCLGdCQUFBRCxNQUFDLHNCQUFtQixLQUFJLFlBQVcsTUFBSyxPQUFNO0FBQUEsTUFBRTtBQUFBLE1BQUssZ0JBQUFBLE1BQUMsc0JBQW1CLEtBQUksUUFBTyxNQUFLLFVBQVM7QUFBQSxNQUFFO0FBQUEsTUFBeUcsZ0JBQUFBLE1BQUMsc0JBQW1CLEtBQUksVUFBUyxNQUFLLFVBQVM7QUFBQSxNQUFFO0FBQUEsTUFBSyxnQkFBQUEsTUFBQyxzQkFBbUIsS0FBSSxTQUFRLE1BQUssU0FBUTtBQUFBLE1BQUU7QUFBQSxPQUNnYyxDQUFJO0FBQUEsSUFDaHlCLFVBQVUsQ0FBQyxnQkFBQUEsTUFBQyxPQUFFLHl1RUFLME0sQ0FBSTtBQUFBLElBQzVOLGdCQUFnQixDQUFDLGdCQUFBQSxNQUFDLE9BQUUsZ3FDQUNpTCxDQUFJO0FBQUEsSUFDek0sU0FBUztBQUFBLElBQ1QsUUFBUTtBQUFBLElBQ1IsV0FBVSxnQkFBQUMsT0FBQUYsWUFBQSxFQUNWO0FBQUEsc0JBQUFDLE1BQUMsU0FBTSxHQUFFLDJGQUEwRixHQUFFLHdmQUFzZjtBQUFBLE1BQzNsQixnQkFBQUEsTUFBQyxTQUFNLEdBQUUsOEVBQTZFLEdBQUUsc2hCQUEwZ0I7QUFBQSxNQUNsbUIsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLG1FQUFrRSxHQUFFLCtkQUE2ZDtBQUFBLE1BQzFpQixnQkFBQUEsTUFBQyxTQUFNLEdBQUUsK0VBQThFLEdBQUUsZ2VBQThkO0FBQUEsTUFDdmpCLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSxpSUFBZ0ksR0FBRSx1WEFBcVg7QUFBQSxNQUNoZ0IsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLCtGQUE4RixHQUFFLGdYQUE4VztBQUFBLE1BQ3ZkLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSwyRkFBMEYsR0FBRSxxVkFBbVY7QUFBQSxNQUN4YixnQkFBQUEsTUFBQyxTQUFNLEdBQUUsd0ZBQXVGLEdBQUUsa1dBQWdXO0FBQUEsTUFDbGMsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLDJHQUEwRyxHQUFFLHNUQUFvVDtBQUFBLE1BQ3phLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSx3R0FBdUcsR0FBRSw2V0FBMlc7QUFBQSxNQUM3ZCxnQkFBQUEsTUFBQyxTQUFNLEdBQUUsaUZBQWdGLEdBQUUsc1lBQW9ZO0FBQUEsTUFDL2QsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLHdGQUF1RixHQUFFLG1iQUFpYjtBQUFBLE1BQ25oQixnQkFBQUEsTUFBQyxTQUFNLEdBQUUsa0VBQWlFLEdBQUUseVlBQXVZO0FBQUEsTUFDbmQsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLDJHQUEwRyxHQUFFLGtaQUFnWjtBQUFBLE1BQ3JnQixnQkFBQUEsTUFBQyxTQUFNLEdBQUUsa0ZBQWlGLEdBQUUsbVpBQWlaO0FBQUEsTUFDN2UsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLCtDQUE4QyxHQUFFLGljQUErYjtBQUFBLE1BQ3hmLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSxrRkFBaUYsR0FBRSxrZkFBZ2Y7QUFBQSxNQUM1a0IsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLHlFQUF3RSxHQUFFLDhnQkFBNGdCO0FBQUEsTUFDL2xCLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSxnSUFBK0gsR0FBRSwraUJBQTZpQjtBQUFBLE1BQ3ZyQixnQkFBQUEsTUFBQyxTQUFNLEdBQUUsNkdBQTRHLEdBQUUsNGhCQUEwaEI7QUFBQSxNQUNqcEIsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLGdJQUErSCxHQUFFLDhHQUE0RztBQUFBLE1BQ3RQLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSw4SEFBNkgsR0FBRSxxYkFBbWI7QUFBQSxPQUMzakI7QUFBQSxJQUNBLGdCQUFlO0FBQUEsRUFDakI7QUFBQSxFQUNBO0FBQUEsSUFDRSxPQUFPO0FBQUEsSUFDUCxTQUFTO0FBQUEsSUFDVCxXQUFXO0FBQUEsSUFDWCxLQUFLO0FBQUEsSUFDTCxhQUFhO0FBQUEsSUFDYixZQUFZLEtBQUssT0FBTztBQUFBLElBQ3hCLEtBQUs7QUFBQSxJQUNMLFNBQVM7QUFBQSxJQUNULGdCQUFnQjtBQUFBLElBRWhCLFVBQVM7QUFBQSxJQUNULGVBQWU7QUFBQSxJQUNmLGNBQWM7QUFBQSxJQUNkLE9BQU87QUFBQSxJQUNQLGNBQWM7QUFBQSxJQUNkLFVBQVU7QUFBQSxJQUNWLGdCQUFnQjtBQUFBLElBQ2hCLFNBQVM7QUFBQSxJQUNULFFBQVE7QUFBQSxJQUNSLFdBQVUsZ0JBQUFDLE9BQUFGLFlBQUEsRUFDVjtBQUFBLHNCQUFBQyxNQUFDLFNBQU0sR0FBRSwyQ0FBMEMsR0FBRSx5QkFBdUI7QUFBQSxNQUM1RSxnQkFBQUEsTUFBQyxTQUFNLEdBQUUsK0NBQThDLEdBQUUsMEdBQXdHO0FBQUEsTUFDakssZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLDJNQUFxTSxHQUFFLG9DQUFrQztBQUFBLE1BQ2xQLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSx3MUJBQWsxQixHQUFFLGNBQVk7QUFBQSxNQUN6MkIsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLHdUQUF1VCxHQUFFLHFJQUFtSTtBQUFBLE1BQ3JjLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSx3SEFBa0gsR0FBRSxxQ0FBbUM7QUFBQSxNQUNoSyxnQkFBQUEsTUFBQyxTQUFNLEdBQUUscU9BQStOLEdBQUUsK0JBQTZCO0FBQUEsTUFDdlEsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLHNLQUFxSyxHQUFFLCtUQUE2VDtBQUFBLE1BQzdlLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSw2TkFBNE4sR0FBRSx3VUFBc1U7QUFBQSxNQUM3aUIsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLCtTQUFvUyxHQUFFLHFaQUFtWjtBQUFBLE1BQ2xzQixnQkFBQUEsTUFBQyxTQUFNLEdBQUUsc1FBQWdRLEdBQUUscU9BQThOO0FBQUEsTUFDemUsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLHNPQUFnTyxHQUFFLG1FQUFpRTtBQUFBLE1BQzVTLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSxtTUFBNkwsR0FBRSxpUUFBK1A7QUFBQSxNQUN2YyxnQkFBQUEsTUFBQyxTQUFNLEdBQUUsc0hBQWdILEdBQUUsK1BBQXdQO0FBQUEsTUFDblgsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLG9LQUFtSyxHQUFFLDJMQUFvTDtBQUFBLE1BQ2xXLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSx5SkFBOEksR0FBRSx3UEFBc1A7QUFBQSxNQUMvWSxnQkFBQUE7QUFBQSxRQUFDO0FBQUE7QUFBQSxVQUFNLEdBQUU7QUFBQSxVQUNGLEdBQUU7QUFBQTtBQUFBLE1BQXVMO0FBQUEsTUFDaE0sZ0JBQUFBO0FBQUEsUUFBQztBQUFBO0FBQUEsVUFBTSxHQUFFO0FBQUEsVUFDRixHQUFFO0FBQUE7QUFBQSxNQUFvUDtBQUFBLE1BQzdQLGdCQUFBQTtBQUFBLFFBQUM7QUFBQTtBQUFBLFVBQU0sR0FBRTtBQUFBLFVBQ0YsR0FBRTtBQUFBO0FBQUEsTUFBdU87QUFBQSxNQUNoUCxnQkFBQUE7QUFBQSxRQUFDO0FBQUE7QUFBQSxVQUFNLEdBQUU7QUFBQSxVQUNGLEdBQUU7QUFBQTtBQUFBLE1BQXVHO0FBQUEsT0FDaEg7QUFBQSxJQUNBLHNCQUFxQjtBQUFBLEVBQ3ZCO0FBQUEsRUFDQTtBQUFBLElBQ0UsT0FBTztBQUFBLElBQ1AsU0FBUztBQUFBLElBQ1QsV0FBVztBQUFBLElBQ1gsS0FBSztBQUFBLElBQ0wsYUFBYTtBQUFBLElBQ2IsWUFBWSxLQUFLLFdBQVc7QUFBQSxJQUM1QixLQUFLO0FBQUEsSUFDTCxVQUFVO0FBQUEsSUFDVixTQUFTO0FBQUEsSUFDVCxnQkFBZ0I7QUFBQSxJQUVoQixlQUFlO0FBQUEsSUFDZixjQUFjO0FBQUEsSUFDZCxPQUFPO0FBQUEsSUFDUCxjQUFjLENBQUMsZ0JBQUFDLE9BQUMsT0FBRTtBQUFBO0FBQUEsTUFBdUMsZ0JBQUFELE1BQUMsT0FBRSxNQUFLLHlCQUF3QiwrQkFBaUI7QUFBQSxNQUFJO0FBQUEsT0FBdWQsQ0FBSTtBQUFBLElBQ3prQixVQUFVLENBQUMsZ0JBQUFDLE9BQUMsT0FBRTtBQUFBO0FBQUEsTUFBbU4sZ0JBQUFELE1BQUMsT0FBRSxNQUFLLDhDQUE4QyxtQkFBSztBQUFBLE1BQUk7QUFBQSxPQUt0RyxDQUFJO0FBQUEsSUFDOUwsZ0JBQWdCLENBQUMsZ0JBQUFBLE1BQUMsT0FBRSx1ZkFBeWUsQ0FBSTtBQUFBLElBQ2pnQixTQUFTO0FBQUEsSUFDVCxRQUFRO0FBQUEsSUFDUixXQUFVLGdCQUFBQyxPQUFBRixZQUFBLEVBQ1Y7QUFBQSxzQkFBQUMsTUFBQyxTQUFNLEdBQUUsMEVBQXlFLEdBQUUsZ1BBQThPO0FBQUEsTUFDbFUsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLDRGQUEyRixHQUFFLHFhQUFtYTtBQUFBLE1BQ3pnQixnQkFBQUEsTUFBQyxTQUFNLEdBQUUsNkdBQTRHLEdBQUUsa1FBQWdRO0FBQUEsTUFDdlgsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLDRHQUEyRyxHQUFFLDJHQUF5RztBQUFBLE1BQy9OLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSwrRUFBOEUsR0FBRSx5S0FBdUs7QUFBQSxNQUNoUSxnQkFBQUEsTUFBQyxTQUFNLEdBQUUsZ0dBQStGLEdBQUUsNHNCQUEwc0I7QUFBQSxNQUNwekIsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLHlFQUF3RSxHQUFFLDJGQUF5RjtBQUFBLE1BQzVLLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSxzR0FBcUcsR0FBRSw2SkFBMko7QUFBQSxNQUMzUSxnQkFBQUEsTUFBQyxTQUFNLEdBQUUsZ0lBQStILEdBQUUseW5CQUF1bkI7QUFBQSxNQUNqd0IsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLGtGQUFpRixHQUFFLGlQQUErTztBQUFBLE1BQzNVLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSx1RkFBc0YsR0FBRSxpSUFBK0g7QUFBQSxNQUNoTyxnQkFBQUEsTUFBQyxTQUFNLEdBQUUsK0VBQThFLEdBQUUsNk5BQTJOO0FBQUEsTUFDcFQsZ0JBQUFBLE1BQUMsU0FBTSxHQUFFLDhGQUE2RixHQUFFLHVRQUFxUTtBQUFBLE1BQzdXLGdCQUFBQSxNQUFDLFNBQU0sR0FBRSx5RkFBd0YsR0FBRSx1UkFBcVI7QUFBQSxPQUN4WDtBQUFBLEVBQ0Y7QUFBQSxFQUNBO0FBQUEsSUFDRSxTQUFTO0FBQUEsSUFDVCxXQUFXO0FBQUEsSUFDWCxLQUFLO0FBQUEsSUFDTCxhQUFhO0FBQUEsSUFDYixVQUFVO0FBQUEsSUFDVixZQUFZLEtBQUssUUFBUTtBQUFBLElBQ3pCLEtBQUs7QUFBQSxJQUNMLFNBQVM7QUFBQSxJQUNULGdCQUFnQjtBQUFBLElBRWhCLE9BQU87QUFBQSxJQUNQLGVBQWU7QUFBQSxJQUNmLGNBQWM7QUFBQSxJQUNkLGNBQWMsQ0FBQyxnQkFBQUEsTUFBQyxPQUFFLDhjQUFnYyxDQUFJO0FBQUEsSUFDdGQsVUFBVSxDQUFDLGdCQUFBQSxNQUFDLE9BQUUsK2pCQUFpakIsQ0FBSTtBQUFBLElBQ25rQixnQkFBZ0IsQ0FBQyxnQkFBQUEsTUFBQyxPQUFFLG9iQUFpYSxDQUFJO0FBQUEsSUFDemIsU0FBUztBQUFBLElBQ1QsUUFBUTtBQUFBLElBQ1Isc0JBQXNCO0FBQUEsSUFDdEIsMkJBQTJCO0FBQUEsRUFDN0I7QUFBQSxFQUNBO0FBQUEsSUFDRSxPQUFPO0FBQUEsSUFDUCxTQUFTO0FBQUEsSUFDVCxXQUFXO0FBQUEsSUFDWCxLQUFLO0FBQUEsSUFDTCxhQUFhO0FBQUEsSUFDYixVQUFVO0FBQUEsSUFDVixZQUFZLEtBQUssT0FBTztBQUFBLElBQ3hCLEtBQUs7QUFBQSxJQUNMLFNBQVM7QUFBQSxJQUNULGdCQUFnQjtBQUFBLElBRWhCLE9BQU87QUFBQSxJQUNQLGNBQWMsQ0FBQyxnQkFBQUMsT0FBQyxPQUFFO0FBQUE7QUFBQSxNQUF5QixnQkFBQUQsTUFBQyxzQkFBbUIsS0FBSSxTQUFRLE1BQUssZ0JBQWU7QUFBQSxNQUFFO0FBQUEsT0FDb1EsQ0FBSTtBQUFBLElBQ3pXLFVBQVUsQ0FBQyxnQkFBQUEsTUFBQyxPQUFFLDROQUE4TSxDQUFJO0FBQUEsSUFDaE8sZ0JBQWdCLENBQUMsZ0JBQUFBLE1BQUMsT0FBRSw2UkFBK1EsQ0FBSTtBQUFBLElBQ3ZTLFNBQVM7QUFBQSxJQUNULFFBQVE7QUFBQSxFQUNWO0FBQUEsRUFDQTtBQUFBLElBQ0UsT0FBTztBQUFBLElBQ1AsU0FBUztBQUFBLElBQ1QsV0FBVztBQUFBLElBQ1gsS0FBSTtBQUFBLElBQ0osYUFBWTtBQUFBLElBQ1osWUFBWSxLQUFLLFVBQVU7QUFBQSxJQUMzQixLQUFLO0FBQUEsSUFDTCxTQUFTO0FBQUEsSUFDVCxnQkFBZ0I7QUFBQSxJQUVoQixVQUFVO0FBQUEsSUFDVixPQUFPO0FBQUEsSUFDUCxlQUFlO0FBQUEsSUFDZixjQUFjO0FBQUEsSUFDZCxjQUFjLENBQUMsZ0JBQUFBLE1BQUMsT0FBRSxpa0JBQThpQixDQUFJO0FBQUEsSUFDcGtCLFVBQVUsQ0FBQyxnQkFBQUEsTUFBQyxPQUFFLHdxREFFMHBCLENBQUk7QUFBQSxJQUM1cUIsZ0JBQWdCLENBQUMsZ0JBQUFBLE1BQUMsT0FBRSwydENBRXFiLENBQUk7QUFBQSxJQUM3YyxTQUFTO0FBQUEsSUFDVCxRQUFRO0FBQUEsRUFDVjtBQUFBLEVBQ0E7QUFBQSxJQUNFLE9BQU87QUFBQSxJQUNQLFNBQVM7QUFBQSxJQUNULFdBQVc7QUFBQSxJQUNYLFlBQVksS0FBSyxRQUFRO0FBQUEsSUFDekIsS0FBSztBQUFBLElBQ0wsYUFBYTtBQUFBLElBQ2IsS0FBSztBQUFBLElBQ0wsU0FBUztBQUFBLElBQ1QsZ0JBQWdCO0FBQUEsSUFDaEIsT0FBTztBQUFBLElBQ04sZUFBZTtBQUFBLElBQ2hCLGNBQWM7QUFBQSxJQUNkLGNBQWMsQ0FBQyxnQkFBQUEsTUFBQyxPQUFFLG9uQkFBc21CLENBQUk7QUFBQSxJQUM1bkIsVUFBVSxDQUFDLGdCQUFBQSxNQUFDLE9BQUUsd3RCQUEwc0IsQ0FBSTtBQUFBLElBQzV0QixnQkFBZ0IsQ0FBQyxnQkFBQUEsTUFBQyxPQUFFLG1rQkFBcWpCLENBQUk7QUFBQSxJQUM3a0IsU0FBUztBQUFBLElBQ1QsUUFBUTtBQUFBLEVBQ1Y7QUFBQSxFQUNBO0FBQUEsSUFDRSxTQUFTO0FBQUEsSUFDVCxXQUFXO0FBQUEsSUFDWCxZQUFZLEtBQUssTUFBTTtBQUFBLElBQ3ZCLEtBQUs7QUFBQSxJQUNMLGFBQWE7QUFBQSxJQUNiLEtBQUs7QUFBQSxJQUNMLFNBQVM7QUFBQSxJQUNULGdCQUFnQjtBQUFBLElBRWhCLE9BQU87QUFBQSxJQUNQLGVBQWU7QUFBQSxJQUNmLGNBQWM7QUFBQSxJQUNkLE1BQU07QUFBQSxJQUNOLFNBQVM7QUFBQSxJQUNULFFBQVE7QUFBQSxFQUNWO0FBQUEsRUFDQTtBQUFBLElBQ0UsU0FBUztBQUFBLElBQ1QsV0FBVztBQUFBLElBQ1gsWUFBWSxLQUFLLE1BQU07QUFBQSxJQUN2QixLQUFLO0FBQUEsSUFDTCxhQUFhO0FBQUEsSUFDYixLQUFLO0FBQUEsSUFDTCxTQUFTO0FBQUEsSUFDVCxnQkFBZ0I7QUFBQSxJQUVoQixPQUFPO0FBQUEsSUFDUCxlQUFlO0FBQUEsSUFDZixjQUFjO0FBQUEsSUFDZCxNQUFNO0FBQUEsSUFDTixTQUFTLENBQUMsZ0JBQUFBLE1BQUMsT0FBRSxvWkFFZ0ssQ0FBSTtBQUFBLElBQ2pMLFFBQVE7QUFBQSxFQUNWO0FBQUEsRUFDQTtBQUFBLElBQ0UsU0FBUztBQUFBLElBQ1QsV0FBVztBQUFBLElBQ1gsWUFBWSxLQUFLLE1BQU07QUFBQSxJQUN2QixLQUFLO0FBQUEsSUFDTCxhQUFhO0FBQUEsSUFDYixLQUFLO0FBQUEsSUFDTCxTQUFTO0FBQUEsSUFDVCxnQkFBZ0I7QUFBQSxJQUVoQixPQUFPO0FBQUEsSUFDUCxlQUFlO0FBQUEsSUFDZixjQUFjO0FBQUEsSUFDZCxNQUFNO0FBQUEsSUFDTixTQUFTLENBQUMsZ0JBQUFBLE1BQUMsT0FBRSxvWkFFZ0ssQ0FBSTtBQUFBLElBQ2pMLFFBQVE7QUFBQSxFQUNWO0FBQUEsRUFDQTtBQUFBLElBQ0UsU0FBUztBQUFBLElBQ1QsV0FBVztBQUFBLElBQ1gsWUFBWSxLQUFLLE1BQU07QUFBQSxJQUN2QixLQUFLO0FBQUEsSUFDTCxhQUFhO0FBQUEsSUFDYixLQUFLO0FBQUEsSUFDTCxTQUFTO0FBQUEsSUFDVCxnQkFBZ0I7QUFBQSxJQUVoQixPQUFPO0FBQUEsSUFDUCxlQUFlO0FBQUEsSUFDZixjQUFjO0FBQUEsSUFDZCxNQUFNO0FBQUEsSUFDTixTQUFTLENBQUMsZ0JBQUFBLE1BQUMsT0FBRSxvWkFFZ0ssQ0FBSTtBQUFBLElBQ2pMLFFBQVE7QUFBQSxFQUNWO0FBRUY7OztBQ3JwRVEsU0FDTSxPQUFBRSxPQUROLFFBQUFDLGNBQUE7OztBQ0ZGLFNBQ0UsT0FBQUMsT0FERixRQUFBQyxjQUFBOzs7QUNLRSxxQkFBQUMsWUFDbWEsT0FBQUMsT0FBamEsUUFBQUMsY0FERjs7O0FDR0ksU0F1RUosWUFBQUMsWUF2RUksT0FBQUMsT0FLQSxRQUFBQyxjQUxBOzs7QUNFUixTQUVJLE9BQUFDLE9BRkosUUFBQUMsY0FBQTs7O0FDUEUsU0FDRSxPQUFBQyxPQURGLFFBQUFDLGNBQUE7OztBQ0dBLFNBQ0UsT0FBQUMsT0FERixRQUFBQyxjQUFBOzs7QUNBUSxTQUNFLE9BQUFDLE9BREYsUUFBQUMsY0FBQTs7O0FDQVYsZ0JBQUFDLE9BMkhFLFFBQUFDLGNBM0hGOzs7QUNTWSxnQkFBQUMsT0FHZCxRQUFBQyxjQUhjOzs7QUNUUixTQUVRLE9BQUFDLE9BRlIsUUFBQUMsY0FBQTs7O0FDUEUsZ0JBQUFDLGFBQUE7OztBQ1dFLFNBRVEsT0FBQUMsT0FGUixRQUFBQyxjQUFBOzs7QUNQSixTQUVRLE9BQUFDLE9BRlIsUUFBQUMsY0FBQTs7O0FDQ0EsU0FFSSxPQUFBQyxPQUZKLFFBQUFDLGNBQUE7OztBQ0hJLGdCQUFBQyxPQUVBLFFBQUFDLGNBRkE7OztBQ0lKLFNBRVEsT0FBQUMsT0FGUixRQUFBQyxjQUFBOzs7QUNISSxTQUVJLE9BQUFDLE9BRkosUUFBQUMsY0FBQTs7O0FDREEsU0FBdUgsT0FBQUMsT0FBdkgsUUFBQUMsY0FBQTs7O0FDMkRSLFNBQ0UsT0FBQUMsT0FERixRQUFBQyxjQUFBOzs7QUMzREksZ0JBQUFDLGFBQUE7OztBQ0FKLHFCQUFBQyxZQUdJLE9BQUFDLE9BREEsUUFBQUMsY0FGSjs7O0FDQ0UscUJBQUFDLFlBQ0EsT0FBQUMsT0FXRSxRQUFBQyxjQVpGOzs7QUNIQSxxQkFBQUMsWUFFSSxPQUFBQyxPQUZKLFFBQUFDLGNBQUE7OztBQ0hOLFNBQVMsYUFBQUMsa0JBQWlCO0FBQzFCLFNBQVMsZUFBQUMsb0JBQW1CO0FBZ0N0QixxQkFBQUMsWUFHRSxPQUFBQyxPQUlNLFFBQUFDLGNBUFI7OztBQ3BCRSxxQkFBQUMsWUFJTSxPQUFBQyxPQURGLFFBQUFDLGNBSEo7OztBQ1ZGLGdCQUFBQyxhQUFBOzs7QUNBQSxnQkFBQUMsYUFBQTs7O0FDRkYsZ0JBQUFDLGFBQUE7OztBQ0dELHFCQUFBQyxZQUFBLE9BQUFDLGFBQUE7OztBQ0hDLGdCQUFBQyxjQUFBOzs7QUNBQSxnQkFBQUMsY0FBQTs7O0FDQUEsZ0JBQUFDLGNBQUE7OztBQ0FBLGdCQUFBQyxjQUFBOzs7QUNBQSxnQkFBQUMsY0FBQTs7O0FDQUEsZ0JBQUFDLGNBQUE7OztBQ0FBLGdCQUFBQyxjQUFBOzs7QUNBQSxnQkFBQUMsY0FBQTs7O0FDQUEsZ0JBQUFDLGNBQUE7OztBQ0VNLGdCQUFBQyxjQUFBOzs7QUNXRSxnQkFBQUMsUUFFRixRQUFBQyxjQUZFOzs7QUNiUixnQkFBQUMsY0FBQTs7O0FDTVEsU0FrQkUsWUFBQUMsWUFoQk0sT0FBQUMsUUFGUixRQUFBQyxjQUFBOzs7QUNHWixTQUNFLE9BQUFDLFFBREYsUUFBQUMsY0FBQTtBQXNIQSxTQUFTLFVBQVUsT0FBYTtBQUM1QixRQUFNLFlBQVksQ0FBQyxXQUFzRDtBQUNyRSxRQUFJLGlCQUFpQixTQUFTLHVCQUF1QixXQUFXO0FBQ2hFLGFBQVMsUUFBUSxHQUFHLFFBQVEsZUFBZSxRQUFRLFNBQVM7QUFFeEQsTUFBQyxlQUFlLEtBQUssRUFBa0IsTUFBTSxVQUFVO0FBQUEsSUFDM0Q7QUFDQSxRQUFJLGFBQWEsU0FBUyxlQUFlLEtBQUs7QUFDOUMsSUFBQyxXQUEyQixNQUFNLFVBQVU7QUFBQSxFQUNoRDtBQUNBLFNBQU87QUFDWDtBQUVBLElBQU0sVUFBVSxnQkFBQUMsT0FBQyxRQUFHLElBQUcsa0JBQWlCLFdBQVUsaUJBQ2xEO0FBQUEsa0JBQUFDLE9BQUMsUUFBRztBQUFBLEVBQ0osZ0JBQUFBLE9BQUMsUUFBRztBQUFBLEVBQ0osZ0JBQUFBLE9BQUMsUUFBRztBQUFBLEVBQ0YsZ0JBQUFBLE9BQUMsUUFBRyxlQUFDO0FBQUEsRUFDTCxnQkFBQUEsT0FBQyxRQUFHLGVBQUM7QUFBQSxFQUNMLGdCQUFBQSxPQUFDLFFBQUcsZUFBQztBQUFBLEVBQ0wsZ0JBQUFBLE9BQUMsUUFBRyxlQUFDO0FBQUEsRUFDTCxnQkFBQUEsT0FBQyxRQUFHLGVBQUM7QUFBQSxFQUNMLGdCQUFBQSxPQUFDLFFBQUcsZUFBQztBQUFBLEVBQ0wsZ0JBQUFBLE9BQUMsUUFBRyxlQUFDO0FBQUEsRUFDTCxnQkFBQUEsT0FBQyxRQUFHLGVBQUM7QUFBQSxFQUNMLGdCQUFBQSxPQUFDLFFBQUcsZUFBQztBQUFBLEVBQ0wsZ0JBQUFBLE9BQUMsUUFBRyxnQkFBRTtBQUFBLEVBQ04sZ0JBQUFBLE9BQUMsUUFBRyxnQkFBRTtBQUFBLEVBQ04sZ0JBQUFBLE9BQUMsUUFBRyxnQkFBRTtBQUFBLEVBQ04sZ0JBQUFBLE9BQUMsUUFBRyxnQkFBRTtBQUFBLEVBQ04sZ0JBQUFBLE9BQUMsUUFBRyxnQkFBRTtBQUFBLEVBQ04sZ0JBQUFBLE9BQUMsUUFBRyxnQkFBRTtBQUFBLEVBQ04sZ0JBQUFBLE9BQUMsUUFBRyxnQkFBRTtBQUFBLEVBQ04sZ0JBQUFBLE9BQUMsUUFBRyxnQkFBRTtBQUFBLEVBQ04sZ0JBQUFBLE9BQUMsUUFBRyxnQkFBRTtBQUFBLEVBQ04sZ0JBQUFBLE9BQUMsUUFBRyxnQkFBRTtBQUFBLEVBQ04sZ0JBQUFBLE9BQUMsUUFBRyxnQkFBRTtBQUFBLEVBQ04sZ0JBQUFBLE9BQUMsUUFBRyxnQkFBRTtBQUFBLEVBQ04sZ0JBQUFBLE9BQUMsUUFBRyxnQkFBRTtBQUFBLEVBQ04sZ0JBQUFBLE9BQUMsUUFBRyxnQkFBRTtBQUFBLEVBQ04sZ0JBQUFBLE9BQUMsUUFBRyxnQkFBRTtBQUFBLEVBQ04sZ0JBQUFBLE9BQUMsUUFBRyxnQkFBRTtBQUFBLEVBQ04sZ0JBQUFBLE9BQUMsUUFBRyxnQkFBRTtBQUFBLEVBQ04sZ0JBQUFBLE9BQUMsUUFBRywwQkFBQUEsT0FBQyxPQUFFLFNBQVMsVUFBVSxZQUFZLEdBQUcsMEJBQUFBLE9BQUMsVUFBSyxXQUFVLFVBQVMsZ0JBQUUsR0FBTyxHQUFJO0FBQUEsRUFDL0UsZ0JBQUFBLE9BQUMsUUFBRyxnQkFBRTtBQUFBLEVBQ04sZ0JBQUFBLE9BQUMsUUFBRywwQkFBQUEsT0FBQyxPQUFFLFNBQVMsVUFBVSxZQUFZLEdBQUcsMEJBQUFBLE9BQUMsVUFBSyxXQUFVLFVBQVMsZ0JBQUUsR0FBTyxHQUFJO0FBQUEsR0FFakY7QUFDQSxJQUFNLFFBQVEsZ0JBQUFELE9BQUMsUUFBRyxJQUFHLGVBQWMsV0FBVSxpQkFBZ0IsT0FBTyxFQUFDLFNBQVMsT0FBTSxHQUNwRjtBQUFBLGtCQUFBQyxPQUFDLFFBQUc7QUFBQSxFQUNKLGdCQUFBQSxPQUFDLFFBQUc7QUFBQSxFQUNKLGdCQUFBQSxPQUFDLFFBQUc7QUFBQSxFQUNKLGdCQUFBQSxPQUFDLFFBQUc7QUFBQSxFQUNGLGdCQUFBQSxPQUFDLFFBQUcsZUFBQztBQUFBLEVBQ0wsZ0JBQUFBLE9BQUMsUUFBRyxlQUFDO0FBQUEsRUFDTCxnQkFBQUEsT0FBQyxRQUFHLGVBQUM7QUFBQSxFQUNMLGdCQUFBQSxPQUFDLFFBQUcsZUFBQztBQUFBLEVBQ0wsZ0JBQUFBLE9BQUMsUUFBRyxlQUFDO0FBQUEsRUFDTCxnQkFBQUEsT0FBQyxRQUFHLGVBQUM7QUFBQSxFQUNMLGdCQUFBQSxPQUFDLFFBQUcsMEJBQUFBLE9BQUMsT0FBRSxTQUFTLFVBQVUsUUFBUSxHQUFHLDBCQUFBQSxPQUFDLFVBQUssV0FBVSxVQUFTLGVBQUMsR0FBTyxHQUFJO0FBQUEsRUFDMUUsZ0JBQUFBLE9BQUMsUUFBRyxlQUFDO0FBQUEsRUFDTCxnQkFBQUEsT0FBQyxRQUFHLGVBQUM7QUFBQSxFQUNMLGdCQUFBQSxPQUFDLFFBQUcsZ0JBQUU7QUFBQSxFQUNOLGdCQUFBQSxPQUFDLFFBQUcsZ0JBQUU7QUFBQSxFQUNOLGdCQUFBQSxPQUFDLFFBQUcsMEJBQUFBLE9BQUMsT0FBRSxTQUFTLFVBQVUsU0FBUyxHQUFHLDBCQUFBQSxPQUFDLFVBQUssV0FBVSxVQUFTLGdCQUFFLEdBQU8sR0FBSTtBQUFBLEVBQzVFLGdCQUFBQSxPQUFDLFFBQUcsZ0JBQUU7QUFBQSxFQUNOLGdCQUFBQSxPQUFDLFFBQUcsMEJBQUFBLE9BQUMsT0FBRSxTQUFTLFVBQVUsU0FBUyxHQUFHLDBCQUFBQSxPQUFDLFVBQUssV0FBVSxVQUFTLGdCQUFFLEdBQU8sR0FBSTtBQUFBLEVBQzVFLGdCQUFBQSxPQUFDLFFBQUcsZ0JBQUU7QUFBQSxFQUNOLGdCQUFBQSxPQUFDLFFBQUcsZ0JBQUU7QUFBQSxFQUNOLGdCQUFBQSxPQUFDLFFBQUcsZ0JBQUU7QUFBQSxFQUNOLGdCQUFBQSxPQUFDLFFBQUcsZ0JBQUU7QUFBQSxFQUNOLGdCQUFBQSxPQUFDLFFBQUcsMEJBQUFBLE9BQUMsT0FBRSxTQUFTLFVBQVUsU0FBUyxHQUFHLDBCQUFBQSxPQUFDLFVBQUssV0FBVSxVQUFTLGdCQUFFLEdBQU8sR0FBSTtBQUFBLEVBQzVFLGdCQUFBQSxPQUFDLFFBQUcsZ0JBQUU7QUFBQSxFQUNOLGdCQUFBQSxPQUFDLFFBQUcsMEJBQUFBLE9BQUMsT0FBRSxTQUFTLFVBQVUsU0FBUyxHQUFHLDBCQUFBQSxPQUFDLFVBQUssV0FBVSxVQUFTLGdCQUFFLEdBQU8sR0FBSTtBQUFBLEVBQzVFLGdCQUFBQSxPQUFDLFFBQUcsZ0JBQUU7QUFBQSxFQUNOLGdCQUFBQSxPQUFDLFFBQUcsZ0JBQUU7QUFBQSxFQUNOLGdCQUFBQSxPQUFDLFFBQUcsZ0JBQUU7QUFBQSxFQUNOLGdCQUFBQSxPQUFDLFFBQUcsZ0JBQUU7QUFBQSxFQUNOLGdCQUFBQSxPQUFDLFFBQUcsZ0JBQUU7QUFBQSxFQUNOLGdCQUFBQSxPQUFDLFFBQUcsMEJBQUFBLE9BQUMsT0FBRSxTQUFTLFVBQVUsU0FBUyxHQUFHLDBCQUFBQSxPQUFDLFVBQUssV0FBVSxVQUFTLGdCQUFFLEdBQU8sR0FBSTtBQUFBLEVBQzVFLGdCQUFBQSxPQUFDLFFBQUcsZ0JBQUU7QUFBQSxFQUNOLGdCQUFBQSxPQUFDLFFBQUcsMEJBQUFBLE9BQUMsT0FBRSxTQUFTLFVBQVUsU0FBUyxHQUFHLDBCQUFBQSxPQUFDLFVBQUssV0FBVSxVQUFTLGdCQUFFLEdBQU8sR0FBSTtBQUFBLEVBQzVFLGdCQUFBQSxPQUFDLFFBQUcsZ0JBQUU7QUFBQSxFQUNOLGdCQUFBQSxPQUFDLFFBQUcsZ0JBQUU7QUFBQSxHQUNSO0FBQ0EsSUFBTSxRQUFRLGdCQUFBRCxPQUFDLFFBQUcsSUFBRyxlQUFjLFdBQVUsaUJBQWdCLE9BQU8sRUFBQyxTQUFTLE9BQU0sR0FDbEY7QUFBQSxrQkFBQUMsT0FBQyxRQUFHLGVBQUM7QUFBQSxFQUNMLGdCQUFBQSxPQUFDLFFBQUcsMEJBQUFBLE9BQUMsT0FBRSxTQUFTLFVBQVUsUUFBUSxHQUFHLDBCQUFBQSxPQUFDLFVBQUssV0FBVSxVQUFTLGVBQUMsR0FBTyxHQUFJO0FBQUEsRUFDMUUsZ0JBQUFBLE9BQUMsUUFBRyxlQUFDO0FBQUEsRUFDTCxnQkFBQUEsT0FBQyxRQUFHLDBCQUFBQSxPQUFDLE9BQUUsU0FBUyxVQUFVLFFBQVEsR0FBRywwQkFBQUEsT0FBQyxVQUFLLFdBQVUsVUFBUyxlQUFDLEdBQU8sR0FBSTtBQUFBLEVBQzFFLGdCQUFBQSxPQUFDLFFBQUcsZUFBQztBQUFBLEVBQ0wsZ0JBQUFBLE9BQUMsUUFBRywwQkFBQUEsT0FBQyxPQUFFLFNBQVMsVUFBVSxRQUFRLEdBQUcsMEJBQUFBLE9BQUMsVUFBSyxXQUFVLFVBQVMsZUFBQyxHQUFPLEdBQUk7QUFBQSxFQUMxRSxnQkFBQUEsT0FBQyxRQUFHLGVBQUM7QUFBQSxFQUNMLGdCQUFBQSxPQUFDLFFBQUcsZUFBQztBQUFBLEVBQ0wsZ0JBQUFBLE9BQUMsUUFBRyxlQUFDO0FBQUEsRUFDTCxnQkFBQUEsT0FBQyxRQUFHLGdCQUFFO0FBQUEsRUFDTixnQkFBQUEsT0FBQyxRQUFHLDBCQUFBQSxPQUFDLE9BQUUsU0FBUyxVQUFVLFNBQVMsR0FBRywwQkFBQUEsT0FBQyxVQUFLLFdBQVUsVUFBUyxnQkFBRSxHQUFPLEdBQUk7QUFBQSxFQUM1RSxnQkFBQUEsT0FBQyxRQUFHLGdCQUFFO0FBQUEsRUFDTixnQkFBQUEsT0FBQyxRQUFHLGdCQUFFO0FBQUEsRUFDTixnQkFBQUEsT0FBQyxRQUFHLGdCQUFFO0FBQUEsRUFDTixnQkFBQUEsT0FBQyxRQUFHLGdCQUFFO0FBQUEsRUFDTixnQkFBQUEsT0FBQyxRQUFHLDBCQUFBQSxPQUFDLE9BQUUsU0FBUyxVQUFVLFNBQVMsR0FBRywwQkFBQUEsT0FBQyxVQUFLLFdBQVUsVUFBUyxnQkFBRSxHQUFPLEdBQUk7QUFBQSxFQUM1RSxnQkFBQUEsT0FBQyxRQUFHLGdCQUFFO0FBQUEsRUFDTixnQkFBQUEsT0FBQyxRQUFHLDBCQUFBQSxPQUFDLE9BQUUsU0FBUyxVQUFVLFNBQVMsR0FBRywwQkFBQUEsT0FBQyxVQUFLLFdBQVUsVUFBUyxnQkFBRSxHQUFPLEdBQUk7QUFBQSxFQUM1RSxnQkFBQUEsT0FBQyxRQUFHLGdCQUFFO0FBQUEsRUFDTixnQkFBQUEsT0FBQyxRQUFHLGdCQUFFO0FBQUEsRUFDTixnQkFBQUEsT0FBQyxRQUFHLGdCQUFFO0FBQUEsRUFDTixnQkFBQUEsT0FBQyxRQUFHLGdCQUFFO0FBQUEsRUFDTixnQkFBQUEsT0FBQyxRQUFHLDBCQUFBQSxPQUFDLE9BQUUsU0FBUyxVQUFVLFNBQVMsR0FBRywwQkFBQUEsT0FBQyxVQUFLLFdBQVUsVUFBUyxnQkFBRSxHQUFPLEdBQUk7QUFBQSxFQUM1RSxnQkFBQUEsT0FBQyxRQUFHLGdCQUFFO0FBQUEsRUFDTixnQkFBQUEsT0FBQyxRQUFHLDBCQUFBQSxPQUFDLE9BQUUsU0FBUyxVQUFVLFNBQVMsR0FBRywwQkFBQUEsT0FBQyxVQUFLLFdBQVUsVUFBUyxnQkFBRSxHQUFPLEdBQUk7QUFBQSxFQUM1RSxnQkFBQUEsT0FBQyxRQUFHLGdCQUFFO0FBQUEsRUFDTixnQkFBQUEsT0FBQyxRQUFHLGdCQUFFO0FBQUEsRUFDTixnQkFBQUEsT0FBQyxRQUFHLGdCQUFFO0FBQUEsRUFDTixnQkFBQUEsT0FBQyxRQUFHLGdCQUFFO0FBQUEsRUFDTixnQkFBQUEsT0FBQyxRQUFHLDBCQUFBQSxPQUFDLE9BQUUsU0FBUyxVQUFVLFNBQVMsR0FBRywwQkFBQUEsT0FBQyxVQUFLLFdBQVUsVUFBUyxnQkFBRSxHQUFPLEdBQUk7QUFBQSxHQUM5RTtBQUNBLElBQU0sTUFBTSxnQkFBQUQsT0FBQyxRQUFHLElBQUcsYUFBWSxXQUFVLGlCQUFnQixPQUFPLEVBQUMsU0FBUyxPQUFNLEdBQ2hGO0FBQUEsa0JBQUFDLE9BQUMsUUFBRztBQUFBLEVBQ0osZ0JBQUFBLE9BQUMsUUFBRztBQUFBLEVBQ0YsZ0JBQUFBLE9BQUMsUUFBRyxlQUFDO0FBQUEsRUFDTCxnQkFBQUEsT0FBQyxRQUFHLDBCQUFBQSxPQUFDLE9BQUUsU0FBUyxVQUFVLE1BQU0sR0FBRywwQkFBQUEsT0FBQyxVQUFLLFdBQVUsVUFBUyxlQUFDLEdBQU8sR0FBSTtBQUFBLEVBQ3hFLGdCQUFBQSxPQUFDLFFBQUcsZUFBQztBQUFBLEVBQ0wsZ0JBQUFBLE9BQUMsUUFBRyxlQUFDO0FBQUEsRUFDTCxnQkFBQUEsT0FBQyxRQUFHLGVBQUM7QUFBQSxFQUNMLGdCQUFBQSxPQUFDLFFBQUcsZUFBQztBQUFBLEVBQ0wsZ0JBQUFBLE9BQUMsUUFBRywwQkFBQUEsT0FBQyxPQUFFLFNBQVMsVUFBVSxNQUFNLEdBQUcsMEJBQUFBLE9BQUMsVUFBSyxXQUFVLFVBQVMsZUFBQyxHQUFPLEdBQUk7QUFBQSxFQUN4RSxnQkFBQUEsT0FBQyxRQUFHLGVBQUM7QUFBQSxFQUNMLGdCQUFBQSxPQUFDLFFBQUcsZUFBQztBQUFBLEVBQ0wsZ0JBQUFBLE9BQUMsUUFBRyxnQkFBRTtBQUFBLEVBQ04sZ0JBQUFBLE9BQUMsUUFBRyxnQkFBRTtBQUFBLEVBQ04sZ0JBQUFBLE9BQUMsUUFBRyxnQkFBRTtBQUFBLEVBQ04sZ0JBQUFBLE9BQUMsUUFBRyxnQkFBRTtBQUFBLEVBQ04sZ0JBQUFBLE9BQUMsUUFBRywwQkFBQUEsT0FBQyxPQUFFLFNBQVMsVUFBVSxPQUFPLEdBQUcsMEJBQUFBLE9BQUMsVUFBSyxXQUFVLFVBQVMsZ0JBQUUsR0FBTyxHQUFJO0FBQUEsRUFDMUUsZ0JBQUFBLE9BQUMsUUFBRyxnQkFBRTtBQUFBLEVBQ04sZ0JBQUFBLE9BQUMsUUFBRyxnQkFBRTtBQUFBLEVBQ04sZ0JBQUFBLE9BQUMsUUFBRyxnQkFBRTtBQUFBLEVBQ04sZ0JBQUFBLE9BQUMsUUFBRyxnQkFBRTtBQUFBLEVBQ04sZ0JBQUFBLE9BQUMsUUFBRyxnQkFBRTtBQUFBLEVBQ04sZ0JBQUFBLE9BQUMsUUFBRyxnQkFBRTtBQUFBLEVBQ04sZ0JBQUFBLE9BQUMsUUFBRyxnQkFBRTtBQUFBLEVBQ04sZ0JBQUFBLE9BQUMsUUFBRywwQkFBQUEsT0FBQyxPQUFFLFNBQVMsVUFBVSxPQUFPLEdBQUcsMEJBQUFBLE9BQUMsVUFBSyxXQUFVLFVBQVMsZ0JBQUUsR0FBTyxHQUFJO0FBQUEsRUFDMUUsZ0JBQUFBLE9BQUMsUUFBRyxnQkFBRTtBQUFBLEVBQ04sZ0JBQUFBLE9BQUMsUUFBRyxnQkFBRTtBQUFBLEVBQ04sZ0JBQUFBLE9BQUMsUUFBRyxnQkFBRTtBQUFBLEVBQ04sZ0JBQUFBLE9BQUMsUUFBRyxnQkFBRTtBQUFBLEVBQ04sZ0JBQUFBLE9BQUMsUUFBRyxnQkFBRTtBQUFBLEVBQ04sZ0JBQUFBLE9BQUMsUUFBRyxnQkFBRTtBQUFBLEVBQ04sZ0JBQUFBLE9BQUMsUUFBRyxnQkFBRTtBQUFBLEVBQ04sZ0JBQUFBLE9BQUMsUUFBRyxnQkFBRTtBQUFBLEVBQ04sZ0JBQUFBLE9BQUMsUUFBRyxnQkFBRTtBQUFBLEdBQ1I7OztBQ2hSTSxTQUNFLE9BQUFDLFFBREYsUUFBQUMsY0FBQTs7O0FDTkYsZ0JBQUFDLGNBQUE7OztBQ01FLHFCQUFBQyxZQUVJLE9BQUFDLFFBQ0EsUUFBQUMsY0FISjs7O0FDSEEsZ0JBQUFDLGNBQUE7OztBQ0pFLGdCQUFBQyxjQUFBOzs7QUNPUixTQUFTLE9BQUFDLE1BQUssVUFBVSxpQkFBaUI7QUFDekMsU0FBUyxTQUFTQyxVQUFTLFdBQUFDLFVBQVMsVUFBQUMsU0FBUSxjQUFBQyxhQUFZLGlCQUFBQyxnQkFBZSxlQUFBQyxjQUFhLFNBQUFDLFFBQU8scUJBQUFDLDBCQUF5QjtBQWtCOUcscUJBQUFDLFlBUUEsT0FBQUMsUUFJTSxRQUFBQyxjQVpOO0FBYk5DLFNBQVE7QUFBQSxFQUNKQztBQUFBLEVBQ0FDO0FBQUEsRUFDQUM7QUFBQSxFQUNBQztBQUFBLEVBQ0FDO0FBQUEsRUFDQUM7QUFBQSxFQUNBQztBQUNGOzs7QUN2QkYsU0FBUyxhQUFBQyxtQkFBaUI7QUF1RGQsZ0JBQUFDLFFBTWdCLFFBQUFDLGNBTmhCOzs7QUN2RFosU0FBUyxhQUFBQyxtQkFBaUI7QUF5QmQsZ0JBQUFDLFFBRUEsUUFBQUMsY0FGQTs7O0FDbEJKLGdCQUFBQyxjQUFBOzs7QUNMQSxnQkFBQUMsY0FBQTs7O0FDT0YscUJBQUFDLFlBRUcsT0FBQUMsUUFESCxRQUFBQyxjQURBOzs7QUNOQSxnQkFBQUMsY0FBQTs7O0FDRUksZ0JBQUFDLGNBQUE7OztBQ09KLHFCQUFBQyxZQUdnc0IsT0FBQUMsUUFBNXJCLFFBQUFDLGNBSEo7OztBQ1RBLGdCQUFBQyxjQUFBOzs7QUNFRSxnQkFBQUMsY0FBQTs7O0FDRUEsZ0JBQUFDLGNBQUE7OztBQ0ZBLGdCQUFBQyxjQUFBOzs7QUNBQSxnQkFBQUMsY0FBQTs7O0FDQUEsZ0JBQUFDLGNBQUE7OztBQ0dBLGdCQUFBQyxjQUFBOzs7QUNSaVYsU0FBUyxhQUFhLFFBQXdCO0FBQ3JZLE1BQUksT0FBTyxPQUFPLE1BQU0sRUFBRSxZQUFZO0FBQ3RDLFNBQU8sS0FBSyxRQUFRLGVBQWUsR0FBRztBQUN0QyxTQUFPLEtBQUssUUFBUSxPQUFPLEdBQUc7QUFFOUIsUUFBTSxRQUFRLEtBQUssT0FBTyxNQUFNO0FBQ2hDLFFBQU0sTUFBTSxLQUFLLE9BQU8sS0FBSztBQUM3QixTQUFPLEtBQUssVUFBVSxPQUFPLFFBQVEsS0FBSyxTQUFZLEdBQUc7QUFDM0Q7OztBQ1I0VSxTQUFTLGFBQUFDLG1CQUFpQjs7O0E1SUt0VyxJQUFPLHNCQUFRLE1BQU07QUFDbkIsUUFBTSxNQUFNLFFBQVEsT0FBTyxRQUFRLElBQUksQ0FBQztBQUV4QyxNQUFJLENBQUMsSUFBSSxnQkFBZ0I7QUFDdkIsVUFBTSxJQUFJLE1BQU0sb0RBQW9EO0FBQUEsRUFDdEU7QUFFQSxVQUFRLElBQUksbUJBQW1CLElBQUksY0FBYyxFQUFFO0FBR25ELFFBQU0sV0FBVyxhQUFhLElBQUksY0FBYztBQUVoRCxVQUFRLElBQUksbUJBQW1CLElBQUksY0FBYztBQUNqRCxVQUFRLElBQUksY0FBYyxRQUFRO0FBRWxDLFNBQU8sYUFBYTtBQUFBLElBQ2xCLE1BQU0sSUFBSSxhQUFhLElBQUksY0FBYyxDQUFDO0FBQUEsSUFDMUMsU0FBUyxDQUFDLE1BQU0sQ0FBQztBQUFBLElBQ2pCLE9BQU87QUFBQSxNQUNMLFFBQVE7QUFBQSxJQUNWO0FBQUEsSUFDQSxXQUFXO0FBQUEsRUFDYixDQUFDO0FBRUg7IiwKICAibmFtZXMiOiBbInVzZUVmZmVjdCIsICJ1c2VSZWYiLCAidXNlU3RhdGUiLCAiRnJhZ21lbnQiLCAianN4IiwgImpzeHMiLCAidXNlRWZmZWN0IiwgInVzZVJlZiIsICJ1c2VTdGF0ZSIsICJGcmFnbWVudCIsICJqc3giLCAianN4cyIsICJ1c2VFZmZlY3QiLCAidXNlU3RhdGUiLCAianN4IiwgImpzeHMiLCAianN4IiwgImpzeHMiLCAianN4IiwgIkZyYWdtZW50IiwgImpzeCIsICJqc3hzIiwgInVzZU5hdmlnYXRlIiwgInVzZU5hdmlnYXRlIiwgIkZyYWdtZW50IiwgImpzeCIsICJqc3hzIiwgImpzeCIsICJqc3hzIiwgIkZyYWdtZW50IiwgImpzeCIsICJqc3hzIiwgInVzZUVmZmVjdCIsICJqc3giLCAianN4cyIsICJGcmFnbWVudCIsICJqc3giLCAianN4cyIsICJGcmFnbWVudCIsICJqc3giLCAianN4cyIsICJqc3giLCAianN4cyIsICJGcmFnbWVudCIsICJqc3giLCAianN4IiwgImpzeCIsICJGcmFnbWVudCIsICJqc3giLCAianN4cyIsICJqc3giLCAiRnJhZ21lbnQiLCAianN4IiwgImpzeHMiLCAianN4IiwgImpzeHMiLCAiRnJhZ21lbnQiLCAianN4IiwgImpzeHMiLCAianN4IiwgImpzeHMiLCAianN4IiwgImpzeHMiLCAiRnJhZ21lbnQiLCAianN4IiwgImpzeHMiLCAiRnJhZ21lbnQiLCAianN4IiwgImpzeHMiLCAiUmVhY3QiLCAiRnJhZ21lbnQiLCAianN4IiwgImpzeHMiLCAidXNlRWZmZWN0IiwgInVzZVN0YXRlIiwgInVzZUxvY2F0aW9uIiwgIkZyYWdtZW50IiwgImpzeCIsICJqc3hzIiwgImpzeCIsICJqc3hzIiwgImpzeCIsICJqc3giLCAianN4IiwgImpzeHMiLCAianN4IiwgIkZyYWdtZW50IiwgImpzeCIsICJqc3hzIiwgImpzeCIsICJqc3hzIiwgImpzeCIsICJqc3hzIiwgIkZyYWdtZW50IiwgImpzeCIsICJqc3hzIiwgImpzeCIsICJqc3hzIiwgImpzeCIsICJGcmFnbWVudCIsICJqc3giLCAianN4cyIsICJqc3giLCAianN4cyIsICJqc3hzIiwgImpzeCIsICJGcmFnbWVudCIsICJqc3giLCAianN4cyIsICJqc3giLCAiRnJhZ21lbnQiLCAianN4IiwgImpzeHMiLCAiRnJhZ21lbnQiLCAianN4IiwgImpzeHMiLCAianN4IiwgImpzeHMiLCAidXNlU3RhdGUiLCAidXNlRWZmZWN0IiwgIkZyYWdtZW50IiwgImpzeCIsICJqc3hzIiwgImJpYnRleFNvdXJjZXMiLCAianN4IiwgImpzeCIsICJqc3hzIiwgImpzeCIsICJqc3hzIiwgImpzeCIsICJqc3hzIiwgInVzZUVmZmVjdCIsICJ1c2VTdGF0ZSIsICJGcmFnbWVudCIsICJqc3giLCAianN4cyIsICJqc3giLCAianN4IiwgImpzeCIsICJqc3giLCAianN4IiwgImpzeCIsICJqc3giLCAianN4IiwgIkZyYWdtZW50IiwgImpzeCIsICJqc3hzIiwgImpzeCIsICJqc3hzIiwgImpzeCIsICJqc3hzIiwgIkZyYWdtZW50IiwgImpzeCIsICJqc3hzIiwgIkZyYWdtZW50IiwgImpzeCIsICJqc3hzIiwgImpzeCIsICJqc3hzIiwgImpzeCIsICJqc3hzIiwgImpzeCIsICJqc3giLCAiYmlidGV4U291cmNlcyIsICJqc3giLCAiYmlidGV4U291cmNlcyIsICJqc3giLCAiYmlidGV4U291cmNlcyIsICJqc3giLCAiYmlidGV4U291cmNlcyIsICJGcmFnbWVudCIsICJqc3giLCAianN4cyIsICJqc3giLCAianN4cyIsICJqc3giLCAianN4cyIsICJGcmFnbWVudCIsICJqc3giLCAianN4cyIsICJGcmFnbWVudCIsICJqc3giLCAianN4cyIsICJqc3giLCAianN4cyIsICJqc3giLCAianN4cyIsICJqc3giLCAianN4cyIsICJqc3giLCAianN4cyIsICJqc3giLCAianN4cyIsICJqc3giLCAianN4cyIsICJqc3giLCAianN4cyIsICJqc3giLCAianN4IiwgImpzeHMiLCAianN4IiwgImpzeHMiLCAianN4IiwgImpzeHMiLCAianN4IiwgImpzeHMiLCAianN4IiwgImpzeHMiLCAianN4IiwgImpzeHMiLCAianN4IiwgImpzeHMiLCAianN4IiwgImpzeHMiLCAianN4IiwgIkZyYWdtZW50IiwgImpzeCIsICJqc3hzIiwgIkZyYWdtZW50IiwgImpzeCIsICJqc3hzIiwgIkZyYWdtZW50IiwgImpzeCIsICJqc3hzIiwgInVzZUVmZmVjdCIsICJ1c2VMb2NhdGlvbiIsICJGcmFnbWVudCIsICJqc3giLCAianN4cyIsICJGcmFnbWVudCIsICJqc3giLCAianN4cyIsICJqc3giLCAianN4IiwgImpzeCIsICJGcmFnbWVudCIsICJqc3giLCAianN4IiwgImpzeCIsICJqc3giLCAianN4IiwgImpzeCIsICJqc3giLCAianN4IiwgImpzeCIsICJqc3giLCAianN4IiwgImpzeCIsICJqc3hzIiwgImpzeCIsICJGcmFnbWVudCIsICJqc3giLCAianN4cyIsICJqc3giLCAianN4cyIsICJqc3hzIiwgImpzeCIsICJqc3giLCAianN4cyIsICJqc3giLCAiRnJhZ21lbnQiLCAianN4IiwgImpzeHMiLCAianN4IiwgImpzeCIsICJCYXIiLCAiQ2hhcnRKUyIsICJUb29sdGlwIiwgIkxlZ2VuZCIsICJCYXJFbGVtZW50IiwgIkNhdGVnb3J5U2NhbGUiLCAiTGluZWFyU2NhbGUiLCAiVGl0bGUiLCAiUmFkaWFsTGluZWFyU2NhbGUiLCAiRnJhZ21lbnQiLCAianN4IiwgImpzeHMiLCAiQ2hhcnRKUyIsICJDYXRlZ29yeVNjYWxlIiwgIlJhZGlhbExpbmVhclNjYWxlIiwgIkxpbmVhclNjYWxlIiwgIkJhckVsZW1lbnQiLCAiVGl0bGUiLCAiVG9vbHRpcCIsICJMZWdlbmQiLCAidXNlRWZmZWN0IiwgImpzeCIsICJqc3hzIiwgInVzZUVmZmVjdCIsICJqc3giLCAianN4cyIsICJqc3giLCAianN4IiwgIkZyYWdtZW50IiwgImpzeCIsICJqc3hzIiwgImpzeCIsICJqc3giLCAiRnJhZ21lbnQiLCAianN4IiwgImpzeHMiLCAianN4IiwgImpzeCIsICJqc3giLCAianN4IiwgImpzeCIsICJqc3giLCAianN4IiwgInVzZUVmZmVjdCJdCn0K
-- 
GitLab